Fix diagnostics version and status handling
This commit is contained in:
+144
-121
@@ -35,7 +35,7 @@
|
||||
"call": "A latency-tested group of proxy URLs for this section",
|
||||
"key": "A latency-tested group of proxy URLs for this section",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1879"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1907"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -49,15 +49,15 @@
|
||||
"call": "A manual group of proxy URLs for this section",
|
||||
"key": "A manual group of proxy URLs for this section",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1861"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1889"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Action",
|
||||
"key": "Action",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1631",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1663"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1659",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1691"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -78,14 +78,14 @@
|
||||
"call": "Add URLs or local paths to .lst lists",
|
||||
"key": "Add URLs or local paths to .lst lists",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2297"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2325"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Add URLs or local paths to .srs / .json lists",
|
||||
"key": "Add URLs or local paths to .srs / .json lists",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2282"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2310"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -114,21 +114,21 @@
|
||||
"key": "Applicable for SOCKS and Shadowsocks links",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:170",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1993"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2021"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "At least one valid domain must be specified.",
|
||||
"key": "At least one valid domain must be specified.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:916"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:944"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "At least one valid IP or subnet must be specified.",
|
||||
"key": "At least one valid IP or subnet must be specified.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:927"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:955"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -149,7 +149,7 @@
|
||||
"call": "Backend validation failed: %s",
|
||||
"key": "Backend validation failed: %s",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1018"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1046"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -191,7 +191,7 @@
|
||||
"call": "Built-in rule sets",
|
||||
"key": "Built-in rule sets",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2187"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2215"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -219,6 +219,13 @@
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:27"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Checking",
|
||||
"key": "Checking",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:472"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Checking, please wait",
|
||||
"key": "Checking, please wait",
|
||||
@@ -242,18 +249,18 @@
|
||||
"call": "Checks failed",
|
||||
"key": "Checks failed",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/helpers/getMeta.ts:26",
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:58",
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:61",
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:64",
|
||||
"src/podkop/tabs/diagnostic/helpers/getMeta.ts:26"
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:64"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Checks passed",
|
||||
"key": "Checks passed",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:54",
|
||||
"src/podkop/tabs/diagnostic/helpers/getMeta.ts:13"
|
||||
"src/podkop/tabs/diagnostic/helpers/getMeta.ts:13",
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:54"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -281,7 +288,7 @@
|
||||
"call": "Conditions",
|
||||
"key": "Conditions",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1619"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1647"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -302,14 +309,14 @@
|
||||
"call": "Connection",
|
||||
"key": "Connection",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1749"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1777"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Connection Type",
|
||||
"key": "Connection Type",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1731"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1759"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -317,7 +324,7 @@
|
||||
"key": "Connection URL",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:19",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1734"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1762"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -362,6 +369,14 @@
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:235"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Dev",
|
||||
"key": "Dev",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:483",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:534"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "DHCP has DNS server",
|
||||
"key": "DHCP has DNS server",
|
||||
@@ -424,7 +439,7 @@
|
||||
"key": "DNS over HTTPS (DoH)",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:227",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2058",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2086",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:21"
|
||||
]
|
||||
},
|
||||
@@ -433,7 +448,7 @@
|
||||
"key": "DNS over TLS (DoT)",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:228",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2059",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2087",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:22"
|
||||
]
|
||||
},
|
||||
@@ -441,7 +456,7 @@
|
||||
"call": "DNS protocol",
|
||||
"key": "DNS protocol",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2056"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2084"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -469,7 +484,7 @@
|
||||
"call": "DNS server",
|
||||
"key": "DNS server",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2074"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2102"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -498,28 +513,28 @@
|
||||
"call": "Domain and IP Lists",
|
||||
"key": "Domain and IP Lists",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2296"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2324"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Domain keyword",
|
||||
"key": "Domain keyword",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2157"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2185"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Domain regex",
|
||||
"key": "Domain regex",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2164"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2192"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Domains",
|
||||
"key": "Domains",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2129"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2157"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -608,7 +623,7 @@
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:8",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/ruleset.js:10",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1621"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1649"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -622,7 +637,7 @@
|
||||
"call": "Enable a dedicated DNS resolver when this section uses an interface",
|
||||
"key": "Enable a dedicated DNS resolver when this section uses an interface",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2045"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2073"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -636,7 +651,7 @@
|
||||
"call": "Enable Mixed Proxy",
|
||||
"key": "Enable Mixed Proxy",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2096"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2124"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -665,14 +680,14 @@
|
||||
"key": "Enter a complete sing-box outbound object",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:52",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1772"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1800"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Enter the subscription URL to fetch proxy configurations from your provider",
|
||||
"key": "Enter the subscription URL to fetch proxy configurations from your provider",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1794"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1822"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -707,7 +722,7 @@
|
||||
"call": "Exact full domain",
|
||||
"key": "Exact full domain",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2143"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2171"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -735,14 +750,14 @@
|
||||
"call": "Expose this section as a local HTTP+SOCKS proxy",
|
||||
"key": "Expose this section as a local HTTP+SOCKS proxy",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2097"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2125"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "External nfqws config files bypass Podkop Plus queue management and explicit validation.",
|
||||
"key": "External nfqws config files bypass Podkop Plus queue management and explicit validation.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1079"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1107"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -756,12 +771,12 @@
|
||||
"call": "Failed to execute!",
|
||||
"key": "Failed to execute!",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:256",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:260",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:306",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:310",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:347",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:351"
|
||||
"src/podkop/tabs/diagnostic/initController.ts:254",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:258",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:293",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:297",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:323",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:327"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -792,21 +807,21 @@
|
||||
"call": "Global check",
|
||||
"key": "Global check",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:251"
|
||||
"src/podkop/tabs/diagnostic/initController.ts:249"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Group subscription proxies by country",
|
||||
"key": "Group subscription proxies by country",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1848"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1876"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Group subscription proxies by the country flag at the beginning of the outbound tag",
|
||||
"key": "Group subscription proxies by the country flag at the beginning of the outbound tag",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1849"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1877"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -820,7 +835,7 @@
|
||||
"call": "How to configure the proxy connection for this section",
|
||||
"key": "How to configure the proxy connection for this section",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1732"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1760"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -836,8 +851,8 @@
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:23",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:179",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1739",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2004"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1767",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2032"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -999,7 +1014,7 @@
|
||||
"call": "Invalid port number. Must be between 1 and 65535",
|
||||
"key": "Invalid port number. Must be between 1 and 65535",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2124",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2152",
|
||||
"src/validators/validateShadowsocksUrl.ts:85"
|
||||
]
|
||||
},
|
||||
@@ -1162,7 +1177,7 @@
|
||||
"key": "Invalid URL format",
|
||||
"places": [
|
||||
"src/validators/validateUrl.ts:8",
|
||||
"src/validators/validateUrl.ts:31"
|
||||
"src/validators/validateUrl.ts:38"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1183,16 +1198,16 @@
|
||||
"call": "IPs",
|
||||
"key": "IPs",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2136"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2164"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Issues detected",
|
||||
"key": "Issues detected",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/helpers/getMeta.ts:20",
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:67",
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:70",
|
||||
"src/podkop/tabs/diagnostic/helpers/getMeta.ts:20"
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:70"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1206,14 +1221,14 @@
|
||||
"call": "Latest",
|
||||
"key": "Latest",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:524"
|
||||
"src/podkop/tabs/diagnostic/initController.ts:544"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "List must be a direct .lst URL or a local .lst path",
|
||||
"key": "List must be a direct .lst URL or a local .lst path",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1584"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1612"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1255,42 +1270,42 @@
|
||||
"call": "Match destination IPs or subnets",
|
||||
"key": "Match destination IPs or subnets",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2137"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2165"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Match domains containing a substring",
|
||||
"key": "Match domains containing a substring",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2158"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2186"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Match domains including all subdomains",
|
||||
"key": "Match domains including all subdomains",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2130"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2158"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Match domains using a regular expression",
|
||||
"key": "Match domains using a regular expression",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2165"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2193"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Match only one exact full domain name",
|
||||
"key": "Match only one exact full domain name",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2144"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2172"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Match source IPs or subnets",
|
||||
"key": "Match source IPs or subnets",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2172"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2200"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1298,7 +1313,7 @@
|
||||
"key": "Maximum response time delta in milliseconds",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:114",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1929"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1957"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1312,7 +1327,7 @@
|
||||
"call": "Mixed Proxy Port",
|
||||
"key": "Mixed Proxy Port",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2108"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2136"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1327,7 +1342,7 @@
|
||||
"key": "Must be a number in the range of 50 - 1000",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:136",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1952"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1980"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1348,14 +1363,14 @@
|
||||
"call": "NFQWS Strategy",
|
||||
"key": "NFQWS Strategy",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1697"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1725"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "NFQWS strategy cannot be empty",
|
||||
"key": "NFQWS strategy cannot be empty",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1209"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1237"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1390,7 +1405,7 @@
|
||||
"call": "not installed",
|
||||
"key": "not installed",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:547"
|
||||
"src/podkop/tabs/diagnostic/initController.ts:567"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1446,7 +1461,7 @@
|
||||
"call": "Optional values must be attached with '=' here; a separate token would be ignored by nfqws.",
|
||||
"key": "Optional values must be attached with '=' here; a separate token would be ignored by nfqws.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1287"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1315"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1455,15 +1470,15 @@
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:22",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:51",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1738",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1771"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1766",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1799"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Outdated",
|
||||
"key": "Outdated",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:514"
|
||||
"src/podkop/tabs/diagnostic/initController.ts:523"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1524,7 +1539,7 @@
|
||||
"call": "Podkop Plus manages the nfqws process lifecycle itself, so daemon mode is not allowed here.",
|
||||
"key": "Podkop Plus manages the nfqws process lifecycle itself, so daemon mode is not allowed here.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1097"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1125"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1566,14 +1581,14 @@
|
||||
"call": "Port cannot be empty",
|
||||
"key": "Port cannot be empty",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2116"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2144"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Port for the local mixed proxy of this section",
|
||||
"key": "Port for the local mixed proxy of this section",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2109"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2137"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1601,7 +1616,7 @@
|
||||
"call": "Regional options cannot be used together",
|
||||
"key": "Regional options cannot be used together",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2226"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2254"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1622,7 +1637,7 @@
|
||||
"call": "Resolver for interface outbound",
|
||||
"key": "Resolver for interface outbound",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2044"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2072"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1636,14 +1651,14 @@
|
||||
"call": "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE.",
|
||||
"key": "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1082"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1110"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Resource selection by IP or CIDR inside nfqws is not supported here; sing-box selects resources before NFQUEUE.",
|
||||
"key": "Resource selection by IP or CIDR inside nfqws is not supported here; sing-box selects resources before NFQUEUE.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1085"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1113"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1664,7 +1679,7 @@
|
||||
"call": "Rule set must be a direct .srs / .json URL or a local .srs / .json path",
|
||||
"key": "Rule set must be a direct .srs / .json URL or a local .srs / .json path",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1576"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1604"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1678,7 +1693,7 @@
|
||||
"call": "Rule sets",
|
||||
"key": "Rule sets",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2281"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2309"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1734,7 +1749,7 @@
|
||||
"call": "Russia inside restrictions",
|
||||
"key": "Russia inside restrictions",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2245"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2273"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1762,7 +1777,7 @@
|
||||
"call": "Section name",
|
||||
"key": "Section name",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1650"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1678"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1776,7 +1791,7 @@
|
||||
"call": "Select a predefined list for routing",
|
||||
"key": "Select a predefined list for routing",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2188"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2216"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1839,7 +1854,7 @@
|
||||
"call": "Selector connections",
|
||||
"key": "Selector connections",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1860"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1888"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1853,7 +1868,7 @@
|
||||
"call": "Service list",
|
||||
"key": "Service list",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2191"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2219"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1868,14 +1883,14 @@
|
||||
"key": "Settings",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/podkop.js:408",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1618"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1646"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Show sing-box config",
|
||||
"key": "Show sing-box config",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:335",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:311",
|
||||
"src/podkop/tabs/diagnostic/partials/renderAvailableActions.ts:116"
|
||||
]
|
||||
},
|
||||
@@ -1946,7 +1961,7 @@
|
||||
"call": "Source IPs",
|
||||
"key": "Source IPs",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2171"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2199"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2002,21 +2017,21 @@
|
||||
"call": "Subscription",
|
||||
"key": "Subscription",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1737"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1765"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Subscription update interval",
|
||||
"key": "Subscription update interval",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1813"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1841"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Subscription URL",
|
||||
"key": "Subscription URL",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1793"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1821"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2065,7 +2080,7 @@
|
||||
"call": "The desync fwmark is managed by Podkop Plus for loop prevention and must not be overridden here.",
|
||||
"key": "The desync fwmark is managed by Podkop Plus for loop prevention and must not be overridden here.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1094"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1122"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2079,7 +2094,7 @@
|
||||
"call": "The NFQUEUE number is assigned by Podkop Plus for each rule and must not be overridden here.",
|
||||
"key": "The NFQUEUE number is assigned by Podkop Plus for each rule and must not be overridden here.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1091"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1119"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2093,28 +2108,28 @@
|
||||
"call": "This field must start a working nfqws strategy; --dry-run exits immediately and is not allowed here.",
|
||||
"key": "This field must start a working nfqws strategy; --dry-run exits immediately and is not allowed here.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1100"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1128"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "This field must start a working nfqws strategy; --version exits immediately and is not allowed here.",
|
||||
"key": "This field must start a working nfqws strategy; --version exits immediately and is not allowed here.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1103"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1131"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "This flag does not accept a value.",
|
||||
"key": "This flag does not accept a value.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1272"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1300"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "This option requires a value.",
|
||||
"key": "This option requires a value.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1303"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1331"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2178,14 +2193,14 @@
|
||||
"key": "UDP over TCP",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:169",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1992"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2020"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Unable to validate the NFQWS strategy through the backend parser.",
|
||||
"key": "Unable to validate the NFQWS strategy through the backend parser.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1014"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1042"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2199,7 +2214,7 @@
|
||||
"call": "Unexpected standalone token. Use explicit flags such as --name or --name=value.",
|
||||
"key": "Unexpected standalone token. Use explicit flags such as --name or --name=value.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1252"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1280"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2213,14 +2228,14 @@
|
||||
"call": "unknown",
|
||||
"key": "unknown",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:26",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:27",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:28",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:29",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:30",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:31",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:32",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:33",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:486"
|
||||
"src/podkop/tabs/diagnostic/initController.ts:34",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:36",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:37",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:457"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2234,7 +2249,7 @@
|
||||
"call": "Unknown NFQWS flag.",
|
||||
"key": "Unknown NFQWS flag.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1263"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1291"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2270,14 +2285,14 @@
|
||||
"call": "URLTest connections",
|
||||
"key": "URLTest connections",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1878"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1906"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "URLTest interval",
|
||||
"key": "URLTest interval",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1896"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1924"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2298,7 +2313,7 @@
|
||||
"call": "URLTest tolerance",
|
||||
"key": "URLTest tolerance",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1928"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1956"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2313,7 +2328,7 @@
|
||||
"key": "URLTest URL",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:139",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1959"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1987"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2327,7 +2342,7 @@
|
||||
"call": "Use a network interface as the outbound for this section",
|
||||
"key": "Use a network interface as the outbound for this section",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2005"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2033"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2342,7 +2357,7 @@
|
||||
"call": "Use sing-box duration format. Leave empty to disable automatic updates.",
|
||||
"key": "Use sing-box duration format. Leave empty to disable automatic updates.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1814",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1842",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:283"
|
||||
]
|
||||
},
|
||||
@@ -2350,7 +2365,7 @@
|
||||
"call": "Use sing-box duration format. Leave empty to disable periodic URLTest checks.",
|
||||
"key": "Use sing-box duration format. Leave empty to disable periodic URLTest checks.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1897"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1925"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2369,7 +2384,7 @@
|
||||
"src/validators/validateSocksUrl.ts:80",
|
||||
"src/validators/validateSubnet.ts:38",
|
||||
"src/validators/validateTrojanUrl.ts:59",
|
||||
"src/validators/validateUrl.ts:28",
|
||||
"src/validators/validateUrl.ts:35",
|
||||
"src/validators/validateVlessUrl.ts:108"
|
||||
]
|
||||
},
|
||||
@@ -2382,11 +2397,19 @@
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:480"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Check unavailable",
|
||||
"key": "Check unavailable",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:494",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:507"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "View logs",
|
||||
"key": "View logs",
|
||||
"places": [
|
||||
"src/podkop/tabs/diagnostic/initController.ts:295",
|
||||
"src/podkop/tabs/diagnostic/initController.ts:282",
|
||||
"src/podkop/tabs/diagnostic/partials/renderAvailableActions.ts:107"
|
||||
]
|
||||
},
|
||||
@@ -2394,7 +2417,7 @@
|
||||
"call": "Visible name of this section",
|
||||
"key": "Visible name of this section",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1651"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1679"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2402,28 +2425,28 @@
|
||||
"key": "vless://, ss://, trojan://, socks4/5://, hy2/hysteria2:// links",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:32",
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1750"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1778"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Warning: %s cannot be used together with %s. Previous selections have been removed.",
|
||||
"key": "Warning: %s cannot be used together with %s. Previous selections have been removed.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2228"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2256"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "Warning: Russia inside can only be used with %s. %s already in Russia inside and have been removed from selection.",
|
||||
"key": "Warning: Russia inside can only be used with %s. %s already in Russia inside and have been removed from selection.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2247"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2275"
|
||||
]
|
||||
},
|
||||
{
|
||||
"call": "What Podkop Plus should do when this section matches",
|
||||
"key": "What Podkop Plus should do when this section matches",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1664"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1692"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2452,7 +2475,7 @@
|
||||
"call": "Zapret hostlist templates are not supported here because Podkop Plus does not expand them for per-rule NFQWS strategies.",
|
||||
"key": "Zapret hostlist templates are not supported here because Podkop Plus does not expand them for per-rule NFQWS strategies.",
|
||||
"places": [
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1088"
|
||||
"../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1116"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2483,4 +2506,4 @@
|
||||
"src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:82"
|
||||
]
|
||||
}
|
||||
]
|
||||
]
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) 2026 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PODKOP PLUS package.
|
||||
# Podkop Plus <noreply@podkop.plus>, 2026.
|
||||
# ushan0v <142658494+ushan0v@users.noreply.github.com>, 2026.
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PODKOP PLUS\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-05-07 09:30+0300\n"
|
||||
"PO-Revision-Date: 2026-05-07 09:30+0300\n"
|
||||
"Last-Translator: Podkop Plus <noreply@podkop.plus>\n"
|
||||
"POT-Creation-Date: 2026-05-07 12:24+0300\n"
|
||||
"PO-Revision-Date: 2026-05-07 12:24+0300\n"
|
||||
"Last-Translator: ushan0v <142658494+ushan0v@users.noreply.github.com>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -36,7 +36,7 @@ msgstr ""
|
||||
msgid "A latency-tested group of proxy URLs for this node"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1879
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1907
|
||||
msgid "A latency-tested group of proxy URLs for this section"
|
||||
msgstr ""
|
||||
|
||||
@@ -44,12 +44,12 @@ msgstr ""
|
||||
msgid "A manual group of proxy URLs for this node"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1861
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1889
|
||||
msgid "A manual group of proxy URLs for this section"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1631
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1663
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1659
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1691
|
||||
msgid "Action"
|
||||
msgstr ""
|
||||
|
||||
@@ -61,11 +61,11 @@ msgstr ""
|
||||
msgid "Add a section"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2297
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2325
|
||||
msgid "Add URLs or local paths to .lst lists"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2282
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2310
|
||||
msgid "Add URLs or local paths to .srs / .json lists"
|
||||
msgstr ""
|
||||
|
||||
@@ -82,15 +82,15 @@ msgid "An error occurred while saving the form:"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:170
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1993
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2021
|
||||
msgid "Applicable for SOCKS and Shadowsocks links"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:916
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:944
|
||||
msgid "At least one valid domain must be specified."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:927
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:955
|
||||
msgid "At least one valid IP or subnet must be specified."
|
||||
msgstr ""
|
||||
|
||||
@@ -102,7 +102,7 @@ msgstr ""
|
||||
msgid "Available actions"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1018
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1046
|
||||
msgid "Backend validation failed: %s"
|
||||
msgstr ""
|
||||
|
||||
@@ -126,7 +126,7 @@ msgstr ""
|
||||
msgid "Browser is using FakeIP correctly"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2187
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2215
|
||||
msgid "Built-in rule sets"
|
||||
msgstr ""
|
||||
|
||||
@@ -146,6 +146,10 @@ msgstr ""
|
||||
msgid "Cannot receive checks result"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:472
|
||||
msgid "Checking"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/checks/runDnsCheck.ts:15
|
||||
#: src/podkop/tabs/diagnostic/checks/runFakeIPCheck.ts:15
|
||||
#: src/podkop/tabs/diagnostic/checks/runNftCheck.ts:13
|
||||
@@ -159,15 +163,15 @@ msgstr ""
|
||||
msgid "checks"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:26
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:58
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:61
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:64
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:26
|
||||
msgid "Checks failed"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:54
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:13
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:54
|
||||
msgid "Checks passed"
|
||||
msgstr ""
|
||||
|
||||
@@ -183,7 +187,7 @@ msgstr ""
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1619
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1647
|
||||
msgid "Conditions"
|
||||
msgstr ""
|
||||
|
||||
@@ -195,16 +199,16 @@ msgstr ""
|
||||
msgid "Configuration for Podkop Plus service"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1749
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1777
|
||||
msgid "Connection"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1731
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1759
|
||||
msgid "Connection Type"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:19
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1734
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1762
|
||||
msgid "Connection URL"
|
||||
msgstr ""
|
||||
|
||||
@@ -232,6 +236,11 @@ msgstr ""
|
||||
msgid "Delay value cannot be empty"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:483
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:534
|
||||
msgid "Dev"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/checks/runDnsCheck.ts:82
|
||||
msgid "DHCP has DNS server"
|
||||
msgstr ""
|
||||
@@ -266,18 +275,18 @@ msgid "DNS on router"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:227
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2058
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2086
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:21
|
||||
msgid "DNS over HTTPS (DoH)"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:228
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2059
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2087
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:22
|
||||
msgid "DNS over TLS (DoT)"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2056
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2084
|
||||
msgid "DNS protocol"
|
||||
msgstr ""
|
||||
|
||||
@@ -293,7 +302,7 @@ msgstr ""
|
||||
msgid "DNS Rewrite TTL"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2074
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2102
|
||||
msgid "DNS server"
|
||||
msgstr ""
|
||||
|
||||
@@ -310,19 +319,19 @@ msgstr ""
|
||||
msgid "Do not panic, everything can be fixed, just..."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2296
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2324
|
||||
msgid "Domain and IP Lists"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2157
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2185
|
||||
msgid "Domain keyword"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2164
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2192
|
||||
msgid "Domain regex"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2129
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2157
|
||||
msgid "Domains"
|
||||
msgstr ""
|
||||
|
||||
@@ -375,7 +384,7 @@ msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:8
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/ruleset.js:10
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1621
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1649
|
||||
msgid "Enable"
|
||||
msgstr ""
|
||||
|
||||
@@ -383,7 +392,7 @@ msgstr ""
|
||||
msgid "Enable a dedicated DNS resolver when this node uses an interface"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2045
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2073
|
||||
msgid "Enable a dedicated DNS resolver when this section uses an interface"
|
||||
msgstr ""
|
||||
|
||||
@@ -391,7 +400,7 @@ msgstr ""
|
||||
msgid "Enable autostart"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2096
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2124
|
||||
msgid "Enable Mixed Proxy"
|
||||
msgstr ""
|
||||
|
||||
@@ -408,11 +417,11 @@ msgid "Enable YACD WAN Access"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:52
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1772
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1800
|
||||
msgid "Enter a complete sing-box outbound object"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1794
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1822
|
||||
msgid "Enter the subscription URL to fetch proxy configurations from your provider"
|
||||
msgstr ""
|
||||
|
||||
@@ -432,7 +441,7 @@ msgstr ""
|
||||
msgid "Every minute"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2143
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2171
|
||||
msgid "Exact full domain"
|
||||
msgstr ""
|
||||
|
||||
@@ -448,11 +457,11 @@ msgstr ""
|
||||
msgid "Expecting: %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2097
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2125
|
||||
msgid "Expose this section as a local HTTP+SOCKS proxy"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1079
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1107
|
||||
msgid "External nfqws config files bypass Podkop Plus queue management and explicit validation."
|
||||
msgstr ""
|
||||
|
||||
@@ -460,12 +469,12 @@ msgstr ""
|
||||
msgid "Failed to copy!"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:256
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:260
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:306
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:310
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:347
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:351
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:254
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:258
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:293
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:297
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:323
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:327
|
||||
msgid "Failed to execute!"
|
||||
msgstr ""
|
||||
|
||||
@@ -484,15 +493,15 @@ msgstr ""
|
||||
msgid "Get global check"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:251
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:249
|
||||
msgid "Global check"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1848
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1876
|
||||
msgid "Group subscription proxies by country"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1849
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1877
|
||||
msgid "Group subscription proxies by the country flag at the beginning of the outbound tag"
|
||||
msgstr ""
|
||||
|
||||
@@ -500,7 +509,7 @@ msgstr ""
|
||||
msgid "How often this remote rule set should be refreshed"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1732
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1760
|
||||
msgid "How to configure the proxy connection for this section"
|
||||
msgstr ""
|
||||
|
||||
@@ -510,8 +519,8 @@ msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:23
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:179
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1739
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2004
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1767
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2032
|
||||
msgid "Interface"
|
||||
msgstr ""
|
||||
|
||||
@@ -604,7 +613,7 @@ msgstr ""
|
||||
msgid "Invalid path format. Path must start with \"/\" and contain valid characters"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2124
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2152
|
||||
#: src/validators/validateShadowsocksUrl.ts:85
|
||||
msgid "Invalid port number. Must be between 1 and 65535"
|
||||
msgstr ""
|
||||
@@ -698,7 +707,7 @@ msgid "Invalid Trojan URL: parsing failed"
|
||||
msgstr ""
|
||||
|
||||
#: src/validators/validateUrl.ts:8
|
||||
#: src/validators/validateUrl.ts:31
|
||||
#: src/validators/validateUrl.ts:38
|
||||
msgid "Invalid URL format"
|
||||
msgstr ""
|
||||
|
||||
@@ -710,13 +719,13 @@ msgstr ""
|
||||
msgid "IP address 0.0.0.0 is not allowed"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2136
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2164
|
||||
msgid "IPs"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:20
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:67
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:70
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:20
|
||||
msgid "Issues detected"
|
||||
msgstr ""
|
||||
|
||||
@@ -724,11 +733,11 @@ msgstr ""
|
||||
msgid "Keyword must not contain spaces"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:524
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:544
|
||||
msgid "Latest"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1584
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1612
|
||||
msgid "List must be a direct .lst URL or a local .lst path"
|
||||
msgstr ""
|
||||
|
||||
@@ -752,32 +761,32 @@ msgstr ""
|
||||
msgid "Main DNS"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2137
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2165
|
||||
msgid "Match destination IPs or subnets"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2158
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2186
|
||||
msgid "Match domains containing a substring"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2130
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2158
|
||||
msgid "Match domains including all subdomains"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2165
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2193
|
||||
msgid "Match domains using a regular expression"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2144
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2172
|
||||
msgid "Match only one exact full domain name"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2172
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2200
|
||||
msgid "Match source IPs or subnets"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:114
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1929
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1957
|
||||
msgid "Maximum response time delta in milliseconds"
|
||||
msgstr ""
|
||||
|
||||
@@ -785,7 +794,7 @@ msgstr ""
|
||||
msgid "Memory Usage"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2108
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2136
|
||||
msgid "Mixed Proxy Port"
|
||||
msgstr ""
|
||||
|
||||
@@ -794,7 +803,7 @@ msgid "Monitored Interfaces"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:136
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1952
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1980
|
||||
msgid "Must be a number in the range of 50 - 1000"
|
||||
msgstr ""
|
||||
|
||||
@@ -806,11 +815,11 @@ msgstr ""
|
||||
msgid "NFQUEUE range overlaps with another rule"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1697
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1725
|
||||
msgid "NFQWS Strategy"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1209
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1237
|
||||
msgid "NFQWS strategy cannot be empty"
|
||||
msgstr ""
|
||||
|
||||
@@ -830,7 +839,7 @@ msgstr ""
|
||||
msgid "Not implement yet"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:547
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:567
|
||||
msgid "not installed"
|
||||
msgstr ""
|
||||
|
||||
@@ -865,18 +874,18 @@ msgstr ""
|
||||
msgid "Optional node used to download this remote rule set"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1287
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1315
|
||||
msgid "Optional values must be attached with '=' here; a separate token would be ignored by nfqws."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:22
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:51
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1738
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1771
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1766
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1799
|
||||
msgid "Outbound JSON"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:514
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:523
|
||||
msgid "Outdated"
|
||||
msgstr ""
|
||||
|
||||
@@ -913,7 +922,7 @@ msgstr ""
|
||||
msgid "Pending"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1097
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1125
|
||||
msgid "Podkop Plus manages the nfqws process lifecycle itself, so daemon mode is not allowed here."
|
||||
msgstr ""
|
||||
|
||||
@@ -937,11 +946,11 @@ msgstr ""
|
||||
msgid "Podkop-managed nfqws runtime is ready"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2116
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2144
|
||||
msgid "Port cannot be empty"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2109
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2137
|
||||
msgid "Port for the local mixed proxy of this section"
|
||||
msgstr ""
|
||||
|
||||
@@ -957,7 +966,7 @@ msgstr ""
|
||||
msgid "Proxy traffic is routed via FakeIP"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2226
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2254
|
||||
msgid "Regional options cannot be used together"
|
||||
msgstr ""
|
||||
|
||||
@@ -969,7 +978,7 @@ msgstr ""
|
||||
msgid "Remote URL to a sing-box rule set"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2044
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2072
|
||||
msgid "Resolver for interface outbound"
|
||||
msgstr ""
|
||||
|
||||
@@ -977,11 +986,11 @@ msgstr ""
|
||||
msgid "Resolver For Interface Outbound"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1082
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1110
|
||||
msgid "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1085
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1113
|
||||
msgid "Resource selection by IP or CIDR inside nfqws is not supported here; sing-box selects resources before NFQUEUE."
|
||||
msgstr ""
|
||||
|
||||
@@ -993,7 +1002,7 @@ msgstr ""
|
||||
msgid "Routing Excluded IPs"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1576
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1604
|
||||
msgid "Rule set must be a direct .srs / .json URL or a local .srs / .json path"
|
||||
msgstr ""
|
||||
|
||||
@@ -1001,7 +1010,7 @@ msgstr ""
|
||||
msgid "Rule set URL"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2281
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2309
|
||||
msgid "Rule sets"
|
||||
msgstr ""
|
||||
|
||||
@@ -1033,7 +1042,7 @@ msgstr ""
|
||||
msgid "Run Diagnostic"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2245
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2273
|
||||
msgid "Russia inside restrictions"
|
||||
msgstr ""
|
||||
|
||||
@@ -1049,7 +1058,7 @@ msgstr ""
|
||||
msgid "Section"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1650
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1678
|
||||
msgid "Section name"
|
||||
msgstr ""
|
||||
|
||||
@@ -1057,7 +1066,7 @@ msgstr ""
|
||||
msgid "Sections"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2188
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2216
|
||||
msgid "Select a predefined list for routing"
|
||||
msgstr ""
|
||||
|
||||
@@ -1093,7 +1102,7 @@ msgstr ""
|
||||
msgid "Select the WAN interfaces to be monitored"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1860
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1888
|
||||
msgid "Selector connections"
|
||||
msgstr ""
|
||||
|
||||
@@ -1101,7 +1110,7 @@ msgstr ""
|
||||
msgid "Selector Links"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2191
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2219
|
||||
msgid "Service list"
|
||||
msgstr ""
|
||||
|
||||
@@ -1110,11 +1119,11 @@ msgid "Services info"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/podkop.js:408
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1618
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1646
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:335
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:311
|
||||
#: src/podkop/tabs/diagnostic/partials/renderAvailableActions.ts:116
|
||||
msgid "Show sing-box config"
|
||||
msgstr ""
|
||||
@@ -1155,7 +1164,7 @@ msgstr ""
|
||||
msgid "Source file"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2171
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2199
|
||||
msgid "Source IPs"
|
||||
msgstr ""
|
||||
|
||||
@@ -1187,15 +1196,15 @@ msgstr ""
|
||||
msgid "Stop Podkop Plus"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1737
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1765
|
||||
msgid "Subscription"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1813
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1841
|
||||
msgid "Subscription update interval"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1793
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1821
|
||||
msgid "Subscription URL"
|
||||
msgstr ""
|
||||
|
||||
@@ -1223,7 +1232,7 @@ msgstr ""
|
||||
msgid "Test latency"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1094
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1122
|
||||
msgid "The desync fwmark is managed by Podkop Plus for loop prevention and must not be overridden here."
|
||||
msgstr ""
|
||||
|
||||
@@ -1231,7 +1240,7 @@ msgstr ""
|
||||
msgid "The DNS server used to look up the IP address of an upstream DNS server"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1091
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1119
|
||||
msgid "The NFQUEUE number is assigned by Podkop Plus for each rule and must not be overridden here."
|
||||
msgstr ""
|
||||
|
||||
@@ -1239,19 +1248,19 @@ msgstr ""
|
||||
msgid "There are rules using Zapret"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1100
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1128
|
||||
msgid "This field must start a working nfqws strategy; --dry-run exits immediately and is not allowed here."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1103
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1131
|
||||
msgid "This field must start a working nfqws strategy; --version exits immediately and is not allowed here."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1272
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1300
|
||||
msgid "This flag does not accept a value."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1303
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1331
|
||||
msgid "This option requires a value."
|
||||
msgstr ""
|
||||
|
||||
@@ -1288,11 +1297,11 @@ msgid "UDP (Unprotected DNS)"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:169
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1992
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2020
|
||||
msgid "UDP over TCP"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1014
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1042
|
||||
msgid "Unable to validate the NFQWS strategy through the backend parser."
|
||||
msgstr ""
|
||||
|
||||
@@ -1300,7 +1309,7 @@ msgstr ""
|
||||
msgid "Unexpected Podkop-managed nfqws runtime is running"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1252
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1280
|
||||
msgid "Unexpected standalone token. Use explicit flags such as --name or --name=value."
|
||||
msgstr ""
|
||||
|
||||
@@ -1308,14 +1317,14 @@ msgstr ""
|
||||
msgid "unique UCI identifier"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:26
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:27
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:28
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:29
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:30
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:31
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:32
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:33
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:486
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:34
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:36
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:37
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:457
|
||||
msgid "unknown"
|
||||
msgstr ""
|
||||
|
||||
@@ -1323,7 +1332,7 @@ msgstr ""
|
||||
msgid "Unknown error"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1263
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1291
|
||||
msgid "Unknown NFQWS flag."
|
||||
msgstr ""
|
||||
|
||||
@@ -1344,11 +1353,11 @@ msgstr ""
|
||||
msgid "URL must use one of the following protocols:"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1878
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1906
|
||||
msgid "URLTest connections"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1896
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1924
|
||||
msgid "URLTest interval"
|
||||
msgstr ""
|
||||
|
||||
@@ -1360,7 +1369,7 @@ msgstr ""
|
||||
msgid "URLTest Links"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1928
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1956
|
||||
msgid "URLTest tolerance"
|
||||
msgstr ""
|
||||
|
||||
@@ -1369,7 +1378,7 @@ msgid "URLTest Tolerance"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:139
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1959
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1987
|
||||
msgid "URLTest URL"
|
||||
msgstr ""
|
||||
|
||||
@@ -1377,7 +1386,7 @@ msgstr ""
|
||||
msgid "Use a network interface as the outbound for this node"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2005
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2033
|
||||
msgid "Use a network interface as the outbound for this section"
|
||||
msgstr ""
|
||||
|
||||
@@ -1386,12 +1395,12 @@ msgstr ""
|
||||
msgid "Use sing-box duration format like 1d, 12h or 30m"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1814
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1842
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:283
|
||||
msgid "Use sing-box duration format. Leave empty to disable automatic updates."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1897
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1925
|
||||
msgid "Use sing-box duration format. Leave empty to disable periodic URLTest checks."
|
||||
msgstr ""
|
||||
|
||||
@@ -1407,7 +1416,7 @@ msgstr ""
|
||||
#: src/validators/validateSocksUrl.ts:80
|
||||
#: src/validators/validateSubnet.ts:38
|
||||
#: src/validators/validateTrojanUrl.ts:59
|
||||
#: src/validators/validateUrl.ts:28
|
||||
#: src/validators/validateUrl.ts:35
|
||||
#: src/validators/validateVlessUrl.ts:108
|
||||
msgid "Valid"
|
||||
msgstr ""
|
||||
@@ -1418,29 +1427,34 @@ msgstr ""
|
||||
msgid "Validation errors:"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:295
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:494
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:507
|
||||
msgid "Check unavailable"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:282
|
||||
#: src/podkop/tabs/diagnostic/partials/renderAvailableActions.ts:107
|
||||
msgid "View logs"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1651
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1679
|
||||
msgid "Visible name of this section"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:32
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1750
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1778
|
||||
msgid "vless://, ss://, trojan://, socks4/5://, hy2/hysteria2:// links"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2228
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2256
|
||||
msgid "Warning: %s cannot be used together with %s. Previous selections have been removed."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2247
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2275
|
||||
msgid "Warning: Russia inside can only be used with %s. %s already in Russia inside and have been removed from selection."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1664
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1692
|
||||
msgid "What Podkop Plus should do when this section matches"
|
||||
msgstr ""
|
||||
|
||||
@@ -1457,7 +1471,7 @@ msgstr ""
|
||||
msgid "Zapret (provider not available)"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1088
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1116
|
||||
msgid "Zapret hostlist templates are not supported here because Podkop Plus does not expand them for per-rule NFQWS strategies."
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
# RU translations for PODKOP PLUS package.
|
||||
# Copyright (C) 2026 THE PODKOP PLUS COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PODKOP PLUS package.
|
||||
# Automatically generated, 2026.
|
||||
# ushan0v, 2026.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PODKOP PLUS\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-05-07 12:30+0300\n"
|
||||
"PO-Revision-Date: 2026-05-07 12:30+0300\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"POT-Creation-Date: 2026-05-07 15:24+0300\n"
|
||||
"PO-Revision-Date: 2026-05-07 15:24+0300\n"
|
||||
"Last-Translator: ushan0v\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: ru\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -107,6 +107,9 @@ msgstr "Путь к файлу кэша не может быть пустым"
|
||||
msgid "Cannot receive checks result"
|
||||
msgstr "Не удалось получить результаты проверки"
|
||||
|
||||
msgid "Checking"
|
||||
msgstr "Проверка"
|
||||
|
||||
msgid "Checking, please wait"
|
||||
msgstr "Проверяем, пожалуйста подождите"
|
||||
|
||||
@@ -164,6 +167,9 @@ msgstr "Задержка в миллисекундах перед перезап
|
||||
msgid "Delay value cannot be empty"
|
||||
msgstr "Значение задержки не может быть пустым"
|
||||
|
||||
msgid "Dev"
|
||||
msgstr "Dev"
|
||||
|
||||
msgid "DHCP has DNS server"
|
||||
msgstr "DHCP содержит DNS сервер"
|
||||
|
||||
@@ -998,6 +1004,9 @@ msgstr "Валидно"
|
||||
msgid "Validation errors:"
|
||||
msgstr "Ошибки валидации:"
|
||||
|
||||
msgid "Check unavailable"
|
||||
msgstr "Проверка недоступна"
|
||||
|
||||
msgid "View logs"
|
||||
msgstr "Посмотреть логи"
|
||||
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
export type ReleaseVersionCompareResult = -1 | 0 | 1 | null;
|
||||
|
||||
function normalizeReleaseVersion(version: string) {
|
||||
return version.trim().replace(/^v/i, '');
|
||||
}
|
||||
|
||||
function parseReleaseVersion(version: string): number[] | null {
|
||||
const normalized = normalizeReleaseVersion(version);
|
||||
const match = normalized.match(/^(\d+(?:\.\d+)*)(?:-(\d+))?$/);
|
||||
|
||||
if (!match) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const baseParts = match[1].split('.').map((part) => Number(part));
|
||||
const releasePart = match[2] ? Number(match[2]) : 0;
|
||||
const parts = [...baseParts, releasePart];
|
||||
|
||||
return parts.every((part) => Number.isSafeInteger(part)) ? parts : null;
|
||||
}
|
||||
|
||||
export function compareReleaseVersions(
|
||||
currentVersion: string,
|
||||
latestVersion: string,
|
||||
): ReleaseVersionCompareResult {
|
||||
const currentParts = parseReleaseVersion(currentVersion);
|
||||
const latestParts = parseReleaseVersion(latestVersion);
|
||||
|
||||
if (!currentParts || !latestParts) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const length = Math.max(currentParts.length, latestParts.length);
|
||||
|
||||
for (let index = 0; index < length; index += 1) {
|
||||
const currentPart = currentParts[index] ?? 0;
|
||||
const latestPart = latestParts[index] ?? 0;
|
||||
|
||||
if (currentPart < latestPart) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (currentPart > latestPart) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
export function isDevVersion(version: string): boolean {
|
||||
return (
|
||||
version === 'dev' ||
|
||||
/(?:^|[.+-])dev(?:$|[.+-])/i.test(version) ||
|
||||
version.includes('COMPILED')
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
import { describe, expect, it } from 'vitest';
|
||||
import {
|
||||
compareReleaseVersions,
|
||||
isDevVersion,
|
||||
} from '../compareReleaseVersions';
|
||||
|
||||
describe('compareReleaseVersions', () => {
|
||||
it('detects equal versions with and without v prefix', () => {
|
||||
expect(compareReleaseVersions('0.7.14-3', 'v0.7.14-3')).toBe(0);
|
||||
});
|
||||
|
||||
it('detects outdated versions', () => {
|
||||
expect(compareReleaseVersions('0.7.14-2', '0.7.14-3')).toBe(-1);
|
||||
});
|
||||
|
||||
it('detects versions newer than the latest release', () => {
|
||||
expect(compareReleaseVersions('0.7.14-4', '0.7.14-3')).toBe(1);
|
||||
});
|
||||
|
||||
it('compares base version before fork release', () => {
|
||||
expect(compareReleaseVersions('0.7.15-1', '0.7.14-3')).toBe(1);
|
||||
});
|
||||
|
||||
it('returns null for non-release versions', () => {
|
||||
expect(compareReleaseVersions('0.7.14-dev+abc123', '0.7.14-3')).toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
describe('isDevVersion', () => {
|
||||
it('detects placeholder and dev builds', () => {
|
||||
expect(isDevVersion('dev')).toBe(true);
|
||||
expect(isDevVersion('__COMPILED_VERSION_VARIABLE__')).toBe(true);
|
||||
expect(isDevVersion('0.7.14-dev+abc123')).toBe(true);
|
||||
});
|
||||
});
|
||||
@@ -3,6 +3,7 @@ import { logger, store } from '../services';
|
||||
import { Podkop } from '../types';
|
||||
|
||||
let latestServicesInfoRequestId = 0;
|
||||
let latestPodkopStatusRequestId = 0;
|
||||
|
||||
function getSettledMethodResponse<T>(
|
||||
scope: string,
|
||||
@@ -63,19 +64,31 @@ export async function fetchServicesInfo() {
|
||||
}
|
||||
|
||||
export async function fetchPodkopStatus() {
|
||||
const requestId = ++latestPodkopStatusRequestId;
|
||||
const podkop = await PodkopShellMethods.getStatus();
|
||||
|
||||
if (requestId !== latestPodkopStatusRequestId) {
|
||||
return podkop.success ? podkop.data : null;
|
||||
}
|
||||
|
||||
const previous = store.get().servicesInfoWidget;
|
||||
const previousData = previous.data;
|
||||
|
||||
store.set({
|
||||
servicesInfoWidget: {
|
||||
loading: false,
|
||||
failed: !podkop.success,
|
||||
data: {
|
||||
...previous.data,
|
||||
podkopRunning: podkop.success ? podkop.data.running : 0,
|
||||
podkopEnabled: podkop.success ? podkop.data.enabled : 0,
|
||||
podkopStatus: podkop.success ? podkop.data.status : '',
|
||||
...previousData,
|
||||
podkopRunning: podkop.success
|
||||
? podkop.data.running
|
||||
: previousData.podkopRunning,
|
||||
podkopEnabled: podkop.success
|
||||
? podkop.data.enabled
|
||||
: previousData.podkopEnabled,
|
||||
podkopStatus: podkop.success
|
||||
? podkop.data.status
|
||||
: previousData.podkopStatus || 'unknown',
|
||||
podkopLifecycleState: podkop.success
|
||||
? podkop.data.lifecycle_state || 'unknown'
|
||||
: 'unknown',
|
||||
|
||||
@@ -21,6 +21,10 @@ import { PODKOP_LUCI_APP_VERSION } from '../../../constants';
|
||||
import { showToast } from '../../../helpers/showToast';
|
||||
import { renderWikiDisclaimer } from './partials/renderWikiDisclaimer';
|
||||
import { runSectionsCheck } from './checks/runSectionsCheck';
|
||||
import {
|
||||
compareReleaseVersions,
|
||||
isDevVersion,
|
||||
} from '../../../helpers/compareReleaseVersions';
|
||||
|
||||
const UNKNOWN_DIAGNOSTICS_SYSTEM_INFO = {
|
||||
podkop_version: _('unknown'),
|
||||
@@ -235,13 +239,7 @@ async function handleDisable() {
|
||||
}
|
||||
|
||||
async function handleShowGlobalCheck() {
|
||||
const diagnosticsActions = store.get().diagnosticsActions;
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
globalCheck: { loading: true },
|
||||
},
|
||||
});
|
||||
setDiagnosticActionLoading('globalCheck', true);
|
||||
|
||||
try {
|
||||
const globalCheck = await PodkopShellMethods.globalCheck();
|
||||
@@ -259,23 +257,12 @@ async function handleShowGlobalCheck() {
|
||||
logger.error('[DIAGNOSTIC]', 'handleShowGlobalCheck - e', e);
|
||||
showToast(_('Failed to execute!'), 'error');
|
||||
} finally {
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
globalCheck: { loading: false },
|
||||
},
|
||||
});
|
||||
setDiagnosticActionLoading('globalCheck', false);
|
||||
}
|
||||
}
|
||||
|
||||
async function handleViewLogs() {
|
||||
const diagnosticsActions = store.get().diagnosticsActions;
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
viewLogs: { loading: true },
|
||||
},
|
||||
});
|
||||
setDiagnosticActionLoading('viewLogs', true);
|
||||
|
||||
try {
|
||||
const viewLogs = await PodkopShellMethods.checkLogs();
|
||||
@@ -309,23 +296,12 @@ async function handleViewLogs() {
|
||||
logger.error('[DIAGNOSTIC]', 'handleViewLogs - e', e);
|
||||
showToast(_('Failed to execute!'), 'error');
|
||||
} finally {
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
viewLogs: { loading: false },
|
||||
},
|
||||
});
|
||||
setDiagnosticActionLoading('viewLogs', false);
|
||||
}
|
||||
}
|
||||
|
||||
async function handleShowSingBoxConfig() {
|
||||
const diagnosticsActions = store.get().diagnosticsActions;
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
showSingBoxConfig: { loading: true },
|
||||
},
|
||||
});
|
||||
setDiagnosticActionLoading('showSingBoxConfig', true);
|
||||
|
||||
try {
|
||||
const showSingBoxConfig = await PodkopShellMethods.showSingBoxConfig();
|
||||
@@ -350,12 +326,7 @@ async function handleShowSingBoxConfig() {
|
||||
logger.error('[DIAGNOSTIC]', 'handleShowSingBoxConfig - e', e);
|
||||
showToast(_('Failed to execute!'), 'error');
|
||||
} finally {
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
showSingBoxConfig: { loading: false },
|
||||
},
|
||||
});
|
||||
setDiagnosticActionLoading('showSingBoxConfig', false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -407,7 +378,8 @@ function renderDiagnosticAvailableActionsWidget() {
|
||||
servicesInfoWidget.loading ||
|
||||
lifecycleBusy ||
|
||||
atLeastOneMutatingActionLoading;
|
||||
const utilityActionsDisabled = lifecycleBusy || atLeastOneMutatingActionLoading;
|
||||
const utilityActionsDisabled =
|
||||
lifecycleBusy || atLeastOneMutatingActionLoading;
|
||||
const startVisible =
|
||||
isStarting ||
|
||||
(!podkopRunning && !isStopping && !isRestarting && !isReloading);
|
||||
@@ -415,7 +387,8 @@ function renderDiagnosticAvailableActionsWidget() {
|
||||
isStopping ||
|
||||
(podkopRunning && !isStarting && !isRestarting && !isReloading);
|
||||
const frozenStartStop =
|
||||
restartLoading && (restartStartStopSnapshot || (podkopRunning ? 'stop' : 'start'));
|
||||
restartLoading &&
|
||||
(restartStartStopSnapshot || (podkopRunning ? 'stop' : 'start'));
|
||||
|
||||
const container = document.getElementById('pdk_diagnostic-page-actions');
|
||||
|
||||
@@ -427,13 +400,17 @@ function renderDiagnosticAvailableActionsWidget() {
|
||||
disabled: serviceControlsDisabled,
|
||||
},
|
||||
start: {
|
||||
loading: frozenStartStop ? false : diagnosticsActions.start.loading || isStarting,
|
||||
loading: frozenStartStop
|
||||
? false
|
||||
: diagnosticsActions.start.loading || isStarting,
|
||||
visible: frozenStartStop ? frozenStartStop === 'start' : startVisible,
|
||||
onClick: handleStart,
|
||||
disabled: serviceControlsDisabled,
|
||||
},
|
||||
stop: {
|
||||
loading: frozenStartStop ? false : diagnosticsActions.stop.loading || isStopping,
|
||||
loading: frozenStartStop
|
||||
? false
|
||||
: diagnosticsActions.stop.loading || isStopping,
|
||||
visible: frozenStartStop ? frozenStartStop === 'stop' : stopVisible,
|
||||
onClick: handleStop,
|
||||
disabled: serviceControlsDisabled,
|
||||
@@ -492,16 +469,54 @@ function renderDiagnosticSystemInfoWidget() {
|
||||
);
|
||||
const latestVersion =
|
||||
`${diagnosticsSystemInfo.podkop_latest_version || ''}`.replace(/^v/, '');
|
||||
const isDevVersion = version === 'dev';
|
||||
|
||||
if (loading || unknown || !hasActualVersion || isDevVersion) {
|
||||
if (loading) {
|
||||
return {
|
||||
key: 'Podkop Plus',
|
||||
value: version,
|
||||
tag: {
|
||||
label: _('Checking'),
|
||||
kind: 'neutral',
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
if (`${version}`.replace(/^v/, '') !== latestVersion) {
|
||||
if (isDevVersion(version)) {
|
||||
return {
|
||||
key: 'Podkop Plus',
|
||||
value: version,
|
||||
tag: {
|
||||
label: _('Dev'),
|
||||
kind: 'neutral',
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
if (unknown || !hasActualVersion) {
|
||||
return {
|
||||
key: 'Podkop Plus',
|
||||
value: version,
|
||||
tag: {
|
||||
label: _('Check unavailable'),
|
||||
kind: 'neutral',
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
const versionCompareResult = compareReleaseVersions(version, latestVersion);
|
||||
|
||||
if (versionCompareResult === null) {
|
||||
return {
|
||||
key: 'Podkop Plus',
|
||||
value: version,
|
||||
tag: {
|
||||
label: _('Check unavailable'),
|
||||
kind: 'neutral',
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
if (versionCompareResult < 0) {
|
||||
logger.debug(
|
||||
'[DIAGNOSTIC]',
|
||||
'diagnosticsSystemInfo',
|
||||
@@ -517,6 +532,17 @@ function renderDiagnosticSystemInfoWidget() {
|
||||
};
|
||||
}
|
||||
|
||||
if (versionCompareResult > 0) {
|
||||
return {
|
||||
key: 'Podkop Plus',
|
||||
value: version,
|
||||
tag: {
|
||||
label: _('Dev'),
|
||||
kind: 'neutral',
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
return {
|
||||
key: 'Podkop Plus',
|
||||
value: version,
|
||||
@@ -543,8 +569,8 @@ function renderDiagnosticSystemInfoWidget() {
|
||||
value: diagnosticsSystemInfo.loading
|
||||
? 'loading'
|
||||
: diagnosticsSystemInfo.zapret_installed
|
||||
? diagnosticsSystemInfo.zapret_version
|
||||
: _('not installed'),
|
||||
? diagnosticsSystemInfo.zapret_version
|
||||
: _('not installed'),
|
||||
},
|
||||
{
|
||||
key: 'OS',
|
||||
|
||||
@@ -5,7 +5,7 @@ export interface IRenderSystemInfoRow {
|
||||
value: string;
|
||||
tag?: {
|
||||
label: string;
|
||||
kind: 'warning' | 'success';
|
||||
kind: 'neutral' | 'warning' | 'success';
|
||||
};
|
||||
}
|
||||
|
||||
@@ -23,6 +23,9 @@ export function renderSystemInfo({ items }: IRenderSystemInfoProps) {
|
||||
...items.map((item) => {
|
||||
const tagClass = [
|
||||
'pdk_diagnostic-page__right-bar__system-info__row__tag',
|
||||
...insertIf(item.tag?.kind === 'neutral', [
|
||||
'pdk_diagnostic-page__right-bar__system-info__row__tag--neutral',
|
||||
]),
|
||||
...insertIf(item.tag?.kind === 'warning', [
|
||||
'pdk_diagnostic-page__right-bar__system-info__row__tag--warning',
|
||||
]),
|
||||
|
||||
@@ -93,6 +93,11 @@ export const styles = `
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.pdk_diagnostic-page__right-bar__system-info__row__tag--neutral {
|
||||
border: 1px var(--background-color-high, gray) solid;
|
||||
color: var(--text-color-medium, gray);
|
||||
}
|
||||
|
||||
.pdk_diagnostic-page__right-bar__system-info__row__tag--warning {
|
||||
border: 1px var(--warn-color-medium, orange) solid;
|
||||
color: var(--warn-color-medium, orange);
|
||||
|
||||
@@ -2129,6 +2129,7 @@ function prettyBytes(n) {
|
||||
|
||||
// src/podkop/fetchers/fetchServicesInfo.ts
|
||||
var latestServicesInfoRequestId = 0;
|
||||
var latestPodkopStatusRequestId = 0;
|
||||
function getSettledMethodResponse(scope, result) {
|
||||
if (result.status === "fulfilled") {
|
||||
return result.value;
|
||||
@@ -2171,17 +2172,22 @@ async function fetchServicesInfo() {
|
||||
});
|
||||
}
|
||||
async function fetchPodkopStatus() {
|
||||
const requestId = ++latestPodkopStatusRequestId;
|
||||
const podkop = await PodkopShellMethods.getStatus();
|
||||
if (requestId !== latestPodkopStatusRequestId) {
|
||||
return podkop.success ? podkop.data : null;
|
||||
}
|
||||
const previous = store.get().servicesInfoWidget;
|
||||
const previousData = previous.data;
|
||||
store.set({
|
||||
servicesInfoWidget: {
|
||||
loading: false,
|
||||
failed: !podkop.success,
|
||||
data: {
|
||||
...previous.data,
|
||||
podkopRunning: podkop.success ? podkop.data.running : 0,
|
||||
podkopEnabled: podkop.success ? podkop.data.enabled : 0,
|
||||
podkopStatus: podkop.success ? podkop.data.status : "",
|
||||
...previousData,
|
||||
podkopRunning: podkop.success ? podkop.data.running : previousData.podkopRunning,
|
||||
podkopEnabled: podkop.success ? podkop.data.enabled : previousData.podkopEnabled,
|
||||
podkopStatus: podkop.success ? podkop.data.status : previousData.podkopStatus || "unknown",
|
||||
podkopLifecycleState: podkop.success ? podkop.data.lifecycle_state || "unknown" : "unknown",
|
||||
podkopLifecycleAction: podkop.success ? podkop.data.lifecycle_action || "none" : "none",
|
||||
podkopLifecycleBusy: podkop.success ? podkop.data.lifecycle_busy || 0 : 0
|
||||
@@ -4266,6 +4272,9 @@ function renderSystemInfo({ items }) {
|
||||
...items.map((item) => {
|
||||
const tagClass = [
|
||||
"pdk_diagnostic-page__right-bar__system-info__row__tag",
|
||||
...insertIf(item.tag?.kind === "neutral", [
|
||||
"pdk_diagnostic-page__right-bar__system-info__row__tag--neutral"
|
||||
]),
|
||||
...insertIf(item.tag?.kind === "warning", [
|
||||
"pdk_diagnostic-page__right-bar__system-info__row__tag--warning"
|
||||
]),
|
||||
@@ -4430,6 +4439,44 @@ async function runSectionsCheck() {
|
||||
}
|
||||
}
|
||||
|
||||
// src/helpers/compareReleaseVersions.ts
|
||||
function normalizeReleaseVersion(version) {
|
||||
return version.trim().replace(/^v/i, "");
|
||||
}
|
||||
function parseReleaseVersion(version) {
|
||||
const normalized = normalizeReleaseVersion(version);
|
||||
const match = normalized.match(/^(\d+(?:\.\d+)*)(?:-(\d+))?$/);
|
||||
if (!match) {
|
||||
return null;
|
||||
}
|
||||
const baseParts = match[1].split(".").map((part) => Number(part));
|
||||
const releasePart = match[2] ? Number(match[2]) : 0;
|
||||
const parts = [...baseParts, releasePart];
|
||||
return parts.every((part) => Number.isSafeInteger(part)) ? parts : null;
|
||||
}
|
||||
function compareReleaseVersions(currentVersion, latestVersion) {
|
||||
const currentParts = parseReleaseVersion(currentVersion);
|
||||
const latestParts = parseReleaseVersion(latestVersion);
|
||||
if (!currentParts || !latestParts) {
|
||||
return null;
|
||||
}
|
||||
const length = Math.max(currentParts.length, latestParts.length);
|
||||
for (let index = 0; index < length; index += 1) {
|
||||
const currentPart = currentParts[index] ?? 0;
|
||||
const latestPart = latestParts[index] ?? 0;
|
||||
if (currentPart < latestPart) {
|
||||
return -1;
|
||||
}
|
||||
if (currentPart > latestPart) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
function isDevVersion(version) {
|
||||
return version === "dev" || /(?:^|[.+-])dev(?:$|[.+-])/i.test(version) || version.includes("COMPILED");
|
||||
}
|
||||
|
||||
// src/podkop/tabs/diagnostic/initController.ts
|
||||
var UNKNOWN_DIAGNOSTICS_SYSTEM_INFO = {
|
||||
podkop_version: _("unknown"),
|
||||
@@ -4598,13 +4645,7 @@ async function handleDisable() {
|
||||
}
|
||||
}
|
||||
async function handleShowGlobalCheck() {
|
||||
const diagnosticsActions = store.get().diagnosticsActions;
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
globalCheck: { loading: true }
|
||||
}
|
||||
});
|
||||
setDiagnosticActionLoading("globalCheck", true);
|
||||
try {
|
||||
const globalCheck = await PodkopShellMethods.globalCheck();
|
||||
if (globalCheck.success) {
|
||||
@@ -4620,22 +4661,11 @@ async function handleShowGlobalCheck() {
|
||||
logger.error("[DIAGNOSTIC]", "handleShowGlobalCheck - e", e);
|
||||
showToast(_("Failed to execute!"), "error");
|
||||
} finally {
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
globalCheck: { loading: false }
|
||||
}
|
||||
});
|
||||
setDiagnosticActionLoading("globalCheck", false);
|
||||
}
|
||||
}
|
||||
async function handleViewLogs() {
|
||||
const diagnosticsActions = store.get().diagnosticsActions;
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
viewLogs: { loading: true }
|
||||
}
|
||||
});
|
||||
setDiagnosticActionLoading("viewLogs", true);
|
||||
try {
|
||||
const viewLogs = await PodkopShellMethods.checkLogs();
|
||||
if (viewLogs.success) {
|
||||
@@ -4664,22 +4694,11 @@ async function handleViewLogs() {
|
||||
logger.error("[DIAGNOSTIC]", "handleViewLogs - e", e);
|
||||
showToast(_("Failed to execute!"), "error");
|
||||
} finally {
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
viewLogs: { loading: false }
|
||||
}
|
||||
});
|
||||
setDiagnosticActionLoading("viewLogs", false);
|
||||
}
|
||||
}
|
||||
async function handleShowSingBoxConfig() {
|
||||
const diagnosticsActions = store.get().diagnosticsActions;
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
showSingBoxConfig: { loading: true }
|
||||
}
|
||||
});
|
||||
setDiagnosticActionLoading("showSingBoxConfig", true);
|
||||
try {
|
||||
const showSingBoxConfig = await PodkopShellMethods.showSingBoxConfig();
|
||||
if (showSingBoxConfig.success) {
|
||||
@@ -4702,12 +4721,7 @@ async function handleShowSingBoxConfig() {
|
||||
logger.error("[DIAGNOSTIC]", "handleShowSingBoxConfig - e", e);
|
||||
showToast(_("Failed to execute!"), "error");
|
||||
} finally {
|
||||
store.set({
|
||||
diagnosticsActions: {
|
||||
...diagnosticsActions,
|
||||
showSingBoxConfig: { loading: false }
|
||||
}
|
||||
});
|
||||
setDiagnosticActionLoading("showSingBoxConfig", false);
|
||||
}
|
||||
}
|
||||
function renderWikiDisclaimerWidget() {
|
||||
@@ -4813,14 +4827,48 @@ function renderDiagnosticSystemInfoWidget() {
|
||||
diagnosticsSystemInfo.podkop_version
|
||||
);
|
||||
const latestVersion = `${diagnosticsSystemInfo.podkop_latest_version || ""}`.replace(/^v/, "");
|
||||
const isDevVersion = version === "dev";
|
||||
if (loading || unknown || !hasActualVersion || isDevVersion) {
|
||||
if (loading) {
|
||||
return {
|
||||
key: "Podkop Plus",
|
||||
value: version
|
||||
value: version,
|
||||
tag: {
|
||||
label: _("Checking"),
|
||||
kind: "neutral"
|
||||
}
|
||||
};
|
||||
}
|
||||
if (`${version}`.replace(/^v/, "") !== latestVersion) {
|
||||
if (isDevVersion(version)) {
|
||||
return {
|
||||
key: "Podkop Plus",
|
||||
value: version,
|
||||
tag: {
|
||||
label: _("Dev"),
|
||||
kind: "neutral"
|
||||
}
|
||||
};
|
||||
}
|
||||
if (unknown || !hasActualVersion) {
|
||||
return {
|
||||
key: "Podkop Plus",
|
||||
value: version,
|
||||
tag: {
|
||||
label: _("Check unavailable"),
|
||||
kind: "neutral"
|
||||
}
|
||||
};
|
||||
}
|
||||
const versionCompareResult = compareReleaseVersions(version, latestVersion);
|
||||
if (versionCompareResult === null) {
|
||||
return {
|
||||
key: "Podkop Plus",
|
||||
value: version,
|
||||
tag: {
|
||||
label: _("Check unavailable"),
|
||||
kind: "neutral"
|
||||
}
|
||||
};
|
||||
}
|
||||
if (versionCompareResult < 0) {
|
||||
logger.debug(
|
||||
"[DIAGNOSTIC]",
|
||||
"diagnosticsSystemInfo",
|
||||
@@ -4835,6 +4883,16 @@ function renderDiagnosticSystemInfoWidget() {
|
||||
}
|
||||
};
|
||||
}
|
||||
if (versionCompareResult > 0) {
|
||||
return {
|
||||
key: "Podkop Plus",
|
||||
value: version,
|
||||
tag: {
|
||||
label: _("Dev"),
|
||||
kind: "neutral"
|
||||
}
|
||||
};
|
||||
}
|
||||
return {
|
||||
key: "Podkop Plus",
|
||||
value: version,
|
||||
@@ -5092,6 +5150,11 @@ var styles4 = `
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.pdk_diagnostic-page__right-bar__system-info__row__tag--neutral {
|
||||
border: 1px var(--background-color-high, gray) solid;
|
||||
color: var(--text-color-medium, gray);
|
||||
}
|
||||
|
||||
.pdk_diagnostic-page__right-bar__system-info__row__tag--warning {
|
||||
border: 1px var(--warn-color-medium, orange) solid;
|
||||
color: var(--warn-color-medium, orange);
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
# RU translations for PODKOP PLUS package.
|
||||
# Copyright (C) 2026 THE PODKOP PLUS COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PODKOP PLUS package.
|
||||
# Automatically generated, 2026.
|
||||
# ushan0v, 2026.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PODKOP PLUS\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-05-07 12:30+0300\n"
|
||||
"PO-Revision-Date: 2026-05-07 12:30+0300\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"POT-Creation-Date: 2026-05-07 15:24+0300\n"
|
||||
"PO-Revision-Date: 2026-05-07 15:24+0300\n"
|
||||
"Last-Translator: ushan0v\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: ru\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -107,6 +107,9 @@ msgstr "Путь к файлу кэша не может быть пустым"
|
||||
msgid "Cannot receive checks result"
|
||||
msgstr "Не удалось получить результаты проверки"
|
||||
|
||||
msgid "Checking"
|
||||
msgstr "Проверка"
|
||||
|
||||
msgid "Checking, please wait"
|
||||
msgstr "Проверяем, пожалуйста подождите"
|
||||
|
||||
@@ -164,6 +167,9 @@ msgstr "Задержка в миллисекундах перед перезап
|
||||
msgid "Delay value cannot be empty"
|
||||
msgstr "Значение задержки не может быть пустым"
|
||||
|
||||
msgid "Dev"
|
||||
msgstr "Dev"
|
||||
|
||||
msgid "DHCP has DNS server"
|
||||
msgstr "DHCP содержит DNS сервер"
|
||||
|
||||
@@ -998,6 +1004,9 @@ msgstr "Валидно"
|
||||
msgid "Validation errors:"
|
||||
msgstr "Ошибки валидации:"
|
||||
|
||||
msgid "Check unavailable"
|
||||
msgstr "Проверка недоступна"
|
||||
|
||||
msgid "View logs"
|
||||
msgstr "Посмотреть логи"
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) 2026 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PODKOP PLUS package.
|
||||
# Podkop Plus <noreply@podkop.plus>, 2026.
|
||||
# ushan0v <142658494+ushan0v@users.noreply.github.com>, 2026.
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PODKOP PLUS\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-05-07 09:30+0300\n"
|
||||
"PO-Revision-Date: 2026-05-07 09:30+0300\n"
|
||||
"Last-Translator: Podkop Plus <noreply@podkop.plus>\n"
|
||||
"POT-Creation-Date: 2026-05-07 12:24+0300\n"
|
||||
"PO-Revision-Date: 2026-05-07 12:24+0300\n"
|
||||
"Last-Translator: ushan0v <142658494+ushan0v@users.noreply.github.com>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -36,7 +36,7 @@ msgstr ""
|
||||
msgid "A latency-tested group of proxy URLs for this node"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1879
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1907
|
||||
msgid "A latency-tested group of proxy URLs for this section"
|
||||
msgstr ""
|
||||
|
||||
@@ -44,12 +44,12 @@ msgstr ""
|
||||
msgid "A manual group of proxy URLs for this node"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1861
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1889
|
||||
msgid "A manual group of proxy URLs for this section"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1631
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1663
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1659
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1691
|
||||
msgid "Action"
|
||||
msgstr ""
|
||||
|
||||
@@ -61,11 +61,11 @@ msgstr ""
|
||||
msgid "Add a section"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2297
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2325
|
||||
msgid "Add URLs or local paths to .lst lists"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2282
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2310
|
||||
msgid "Add URLs or local paths to .srs / .json lists"
|
||||
msgstr ""
|
||||
|
||||
@@ -82,15 +82,15 @@ msgid "An error occurred while saving the form:"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:170
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1993
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2021
|
||||
msgid "Applicable for SOCKS and Shadowsocks links"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:916
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:944
|
||||
msgid "At least one valid domain must be specified."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:927
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:955
|
||||
msgid "At least one valid IP or subnet must be specified."
|
||||
msgstr ""
|
||||
|
||||
@@ -102,7 +102,7 @@ msgstr ""
|
||||
msgid "Available actions"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1018
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1046
|
||||
msgid "Backend validation failed: %s"
|
||||
msgstr ""
|
||||
|
||||
@@ -126,7 +126,7 @@ msgstr ""
|
||||
msgid "Browser is using FakeIP correctly"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2187
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2215
|
||||
msgid "Built-in rule sets"
|
||||
msgstr ""
|
||||
|
||||
@@ -146,6 +146,10 @@ msgstr ""
|
||||
msgid "Cannot receive checks result"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:472
|
||||
msgid "Checking"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/checks/runDnsCheck.ts:15
|
||||
#: src/podkop/tabs/diagnostic/checks/runFakeIPCheck.ts:15
|
||||
#: src/podkop/tabs/diagnostic/checks/runNftCheck.ts:13
|
||||
@@ -159,15 +163,15 @@ msgstr ""
|
||||
msgid "checks"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:26
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:58
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:61
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:64
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:26
|
||||
msgid "Checks failed"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:54
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:13
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:54
|
||||
msgid "Checks passed"
|
||||
msgstr ""
|
||||
|
||||
@@ -183,7 +187,7 @@ msgstr ""
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1619
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1647
|
||||
msgid "Conditions"
|
||||
msgstr ""
|
||||
|
||||
@@ -195,16 +199,16 @@ msgstr ""
|
||||
msgid "Configuration for Podkop Plus service"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1749
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1777
|
||||
msgid "Connection"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1731
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1759
|
||||
msgid "Connection Type"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:19
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1734
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1762
|
||||
msgid "Connection URL"
|
||||
msgstr ""
|
||||
|
||||
@@ -232,6 +236,11 @@ msgstr ""
|
||||
msgid "Delay value cannot be empty"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:483
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:534
|
||||
msgid "Dev"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/checks/runDnsCheck.ts:82
|
||||
msgid "DHCP has DNS server"
|
||||
msgstr ""
|
||||
@@ -266,18 +275,18 @@ msgid "DNS on router"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:227
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2058
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2086
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:21
|
||||
msgid "DNS over HTTPS (DoH)"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:228
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2059
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2087
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:22
|
||||
msgid "DNS over TLS (DoT)"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2056
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2084
|
||||
msgid "DNS protocol"
|
||||
msgstr ""
|
||||
|
||||
@@ -293,7 +302,7 @@ msgstr ""
|
||||
msgid "DNS Rewrite TTL"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2074
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2102
|
||||
msgid "DNS server"
|
||||
msgstr ""
|
||||
|
||||
@@ -310,19 +319,19 @@ msgstr ""
|
||||
msgid "Do not panic, everything can be fixed, just..."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2296
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2324
|
||||
msgid "Domain and IP Lists"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2157
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2185
|
||||
msgid "Domain keyword"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2164
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2192
|
||||
msgid "Domain regex"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2129
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2157
|
||||
msgid "Domains"
|
||||
msgstr ""
|
||||
|
||||
@@ -375,7 +384,7 @@ msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:8
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/ruleset.js:10
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1621
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1649
|
||||
msgid "Enable"
|
||||
msgstr ""
|
||||
|
||||
@@ -383,7 +392,7 @@ msgstr ""
|
||||
msgid "Enable a dedicated DNS resolver when this node uses an interface"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2045
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2073
|
||||
msgid "Enable a dedicated DNS resolver when this section uses an interface"
|
||||
msgstr ""
|
||||
|
||||
@@ -391,7 +400,7 @@ msgstr ""
|
||||
msgid "Enable autostart"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2096
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2124
|
||||
msgid "Enable Mixed Proxy"
|
||||
msgstr ""
|
||||
|
||||
@@ -408,11 +417,11 @@ msgid "Enable YACD WAN Access"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:52
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1772
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1800
|
||||
msgid "Enter a complete sing-box outbound object"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1794
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1822
|
||||
msgid "Enter the subscription URL to fetch proxy configurations from your provider"
|
||||
msgstr ""
|
||||
|
||||
@@ -432,7 +441,7 @@ msgstr ""
|
||||
msgid "Every minute"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2143
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2171
|
||||
msgid "Exact full domain"
|
||||
msgstr ""
|
||||
|
||||
@@ -448,11 +457,11 @@ msgstr ""
|
||||
msgid "Expecting: %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2097
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2125
|
||||
msgid "Expose this section as a local HTTP+SOCKS proxy"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1079
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1107
|
||||
msgid "External nfqws config files bypass Podkop Plus queue management and explicit validation."
|
||||
msgstr ""
|
||||
|
||||
@@ -460,12 +469,12 @@ msgstr ""
|
||||
msgid "Failed to copy!"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:256
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:260
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:306
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:310
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:347
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:351
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:254
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:258
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:293
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:297
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:323
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:327
|
||||
msgid "Failed to execute!"
|
||||
msgstr ""
|
||||
|
||||
@@ -484,15 +493,15 @@ msgstr ""
|
||||
msgid "Get global check"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:251
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:249
|
||||
msgid "Global check"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1848
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1876
|
||||
msgid "Group subscription proxies by country"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1849
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1877
|
||||
msgid "Group subscription proxies by the country flag at the beginning of the outbound tag"
|
||||
msgstr ""
|
||||
|
||||
@@ -500,7 +509,7 @@ msgstr ""
|
||||
msgid "How often this remote rule set should be refreshed"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1732
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1760
|
||||
msgid "How to configure the proxy connection for this section"
|
||||
msgstr ""
|
||||
|
||||
@@ -510,8 +519,8 @@ msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:23
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:179
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1739
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2004
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1767
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2032
|
||||
msgid "Interface"
|
||||
msgstr ""
|
||||
|
||||
@@ -604,7 +613,7 @@ msgstr ""
|
||||
msgid "Invalid path format. Path must start with \"/\" and contain valid characters"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2124
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2152
|
||||
#: src/validators/validateShadowsocksUrl.ts:85
|
||||
msgid "Invalid port number. Must be between 1 and 65535"
|
||||
msgstr ""
|
||||
@@ -698,7 +707,7 @@ msgid "Invalid Trojan URL: parsing failed"
|
||||
msgstr ""
|
||||
|
||||
#: src/validators/validateUrl.ts:8
|
||||
#: src/validators/validateUrl.ts:31
|
||||
#: src/validators/validateUrl.ts:38
|
||||
msgid "Invalid URL format"
|
||||
msgstr ""
|
||||
|
||||
@@ -710,13 +719,13 @@ msgstr ""
|
||||
msgid "IP address 0.0.0.0 is not allowed"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2136
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2164
|
||||
msgid "IPs"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:20
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:67
|
||||
#: src/podkop/tabs/diagnostic/checks/runZapretCheck.ts:70
|
||||
#: src/podkop/tabs/diagnostic/helpers/getMeta.ts:20
|
||||
msgid "Issues detected"
|
||||
msgstr ""
|
||||
|
||||
@@ -724,11 +733,11 @@ msgstr ""
|
||||
msgid "Keyword must not contain spaces"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:524
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:544
|
||||
msgid "Latest"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1584
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1612
|
||||
msgid "List must be a direct .lst URL or a local .lst path"
|
||||
msgstr ""
|
||||
|
||||
@@ -752,32 +761,32 @@ msgstr ""
|
||||
msgid "Main DNS"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2137
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2165
|
||||
msgid "Match destination IPs or subnets"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2158
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2186
|
||||
msgid "Match domains containing a substring"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2130
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2158
|
||||
msgid "Match domains including all subdomains"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2165
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2193
|
||||
msgid "Match domains using a regular expression"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2144
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2172
|
||||
msgid "Match only one exact full domain name"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2172
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2200
|
||||
msgid "Match source IPs or subnets"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:114
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1929
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1957
|
||||
msgid "Maximum response time delta in milliseconds"
|
||||
msgstr ""
|
||||
|
||||
@@ -785,7 +794,7 @@ msgstr ""
|
||||
msgid "Memory Usage"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2108
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2136
|
||||
msgid "Mixed Proxy Port"
|
||||
msgstr ""
|
||||
|
||||
@@ -794,7 +803,7 @@ msgid "Monitored Interfaces"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:136
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1952
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1980
|
||||
msgid "Must be a number in the range of 50 - 1000"
|
||||
msgstr ""
|
||||
|
||||
@@ -806,11 +815,11 @@ msgstr ""
|
||||
msgid "NFQUEUE range overlaps with another rule"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1697
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1725
|
||||
msgid "NFQWS Strategy"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1209
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1237
|
||||
msgid "NFQWS strategy cannot be empty"
|
||||
msgstr ""
|
||||
|
||||
@@ -830,7 +839,7 @@ msgstr ""
|
||||
msgid "Not implement yet"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:547
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:567
|
||||
msgid "not installed"
|
||||
msgstr ""
|
||||
|
||||
@@ -865,18 +874,18 @@ msgstr ""
|
||||
msgid "Optional node used to download this remote rule set"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1287
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1315
|
||||
msgid "Optional values must be attached with '=' here; a separate token would be ignored by nfqws."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:22
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:51
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1738
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1771
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1766
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1799
|
||||
msgid "Outbound JSON"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:514
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:523
|
||||
msgid "Outdated"
|
||||
msgstr ""
|
||||
|
||||
@@ -913,7 +922,7 @@ msgstr ""
|
||||
msgid "Pending"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1097
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1125
|
||||
msgid "Podkop Plus manages the nfqws process lifecycle itself, so daemon mode is not allowed here."
|
||||
msgstr ""
|
||||
|
||||
@@ -937,11 +946,11 @@ msgstr ""
|
||||
msgid "Podkop-managed nfqws runtime is ready"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2116
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2144
|
||||
msgid "Port cannot be empty"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2109
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2137
|
||||
msgid "Port for the local mixed proxy of this section"
|
||||
msgstr ""
|
||||
|
||||
@@ -957,7 +966,7 @@ msgstr ""
|
||||
msgid "Proxy traffic is routed via FakeIP"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2226
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2254
|
||||
msgid "Regional options cannot be used together"
|
||||
msgstr ""
|
||||
|
||||
@@ -969,7 +978,7 @@ msgstr ""
|
||||
msgid "Remote URL to a sing-box rule set"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2044
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2072
|
||||
msgid "Resolver for interface outbound"
|
||||
msgstr ""
|
||||
|
||||
@@ -977,11 +986,11 @@ msgstr ""
|
||||
msgid "Resolver For Interface Outbound"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1082
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1110
|
||||
msgid "Resource selection by hostname inside nfqws is not supported here; sing-box selects resources before NFQUEUE."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1085
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1113
|
||||
msgid "Resource selection by IP or CIDR inside nfqws is not supported here; sing-box selects resources before NFQUEUE."
|
||||
msgstr ""
|
||||
|
||||
@@ -993,7 +1002,7 @@ msgstr ""
|
||||
msgid "Routing Excluded IPs"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1576
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1604
|
||||
msgid "Rule set must be a direct .srs / .json URL or a local .srs / .json path"
|
||||
msgstr ""
|
||||
|
||||
@@ -1001,7 +1010,7 @@ msgstr ""
|
||||
msgid "Rule set URL"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2281
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2309
|
||||
msgid "Rule sets"
|
||||
msgstr ""
|
||||
|
||||
@@ -1033,7 +1042,7 @@ msgstr ""
|
||||
msgid "Run Diagnostic"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2245
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2273
|
||||
msgid "Russia inside restrictions"
|
||||
msgstr ""
|
||||
|
||||
@@ -1049,7 +1058,7 @@ msgstr ""
|
||||
msgid "Section"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1650
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1678
|
||||
msgid "Section name"
|
||||
msgstr ""
|
||||
|
||||
@@ -1057,7 +1066,7 @@ msgstr ""
|
||||
msgid "Sections"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2188
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2216
|
||||
msgid "Select a predefined list for routing"
|
||||
msgstr ""
|
||||
|
||||
@@ -1093,7 +1102,7 @@ msgstr ""
|
||||
msgid "Select the WAN interfaces to be monitored"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1860
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1888
|
||||
msgid "Selector connections"
|
||||
msgstr ""
|
||||
|
||||
@@ -1101,7 +1110,7 @@ msgstr ""
|
||||
msgid "Selector Links"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2191
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2219
|
||||
msgid "Service list"
|
||||
msgstr ""
|
||||
|
||||
@@ -1110,11 +1119,11 @@ msgid "Services info"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/podkop.js:408
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1618
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1646
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:335
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:311
|
||||
#: src/podkop/tabs/diagnostic/partials/renderAvailableActions.ts:116
|
||||
msgid "Show sing-box config"
|
||||
msgstr ""
|
||||
@@ -1155,7 +1164,7 @@ msgstr ""
|
||||
msgid "Source file"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2171
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2199
|
||||
msgid "Source IPs"
|
||||
msgstr ""
|
||||
|
||||
@@ -1187,15 +1196,15 @@ msgstr ""
|
||||
msgid "Stop Podkop Plus"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1737
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1765
|
||||
msgid "Subscription"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1813
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1841
|
||||
msgid "Subscription update interval"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1793
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1821
|
||||
msgid "Subscription URL"
|
||||
msgstr ""
|
||||
|
||||
@@ -1223,7 +1232,7 @@ msgstr ""
|
||||
msgid "Test latency"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1094
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1122
|
||||
msgid "The desync fwmark is managed by Podkop Plus for loop prevention and must not be overridden here."
|
||||
msgstr ""
|
||||
|
||||
@@ -1231,7 +1240,7 @@ msgstr ""
|
||||
msgid "The DNS server used to look up the IP address of an upstream DNS server"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1091
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1119
|
||||
msgid "The NFQUEUE number is assigned by Podkop Plus for each rule and must not be overridden here."
|
||||
msgstr ""
|
||||
|
||||
@@ -1239,19 +1248,19 @@ msgstr ""
|
||||
msgid "There are rules using Zapret"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1100
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1128
|
||||
msgid "This field must start a working nfqws strategy; --dry-run exits immediately and is not allowed here."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1103
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1131
|
||||
msgid "This field must start a working nfqws strategy; --version exits immediately and is not allowed here."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1272
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1300
|
||||
msgid "This flag does not accept a value."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1303
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1331
|
||||
msgid "This option requires a value."
|
||||
msgstr ""
|
||||
|
||||
@@ -1288,11 +1297,11 @@ msgid "UDP (Unprotected DNS)"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:169
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1992
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2020
|
||||
msgid "UDP over TCP"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1014
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1042
|
||||
msgid "Unable to validate the NFQWS strategy through the backend parser."
|
||||
msgstr ""
|
||||
|
||||
@@ -1300,7 +1309,7 @@ msgstr ""
|
||||
msgid "Unexpected Podkop-managed nfqws runtime is running"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1252
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1280
|
||||
msgid "Unexpected standalone token. Use explicit flags such as --name or --name=value."
|
||||
msgstr ""
|
||||
|
||||
@@ -1308,14 +1317,14 @@ msgstr ""
|
||||
msgid "unique UCI identifier"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:26
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:27
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:28
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:29
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:30
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:31
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:32
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:33
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:486
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:34
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:36
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:37
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:457
|
||||
msgid "unknown"
|
||||
msgstr ""
|
||||
|
||||
@@ -1323,7 +1332,7 @@ msgstr ""
|
||||
msgid "Unknown error"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1263
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1291
|
||||
msgid "Unknown NFQWS flag."
|
||||
msgstr ""
|
||||
|
||||
@@ -1344,11 +1353,11 @@ msgstr ""
|
||||
msgid "URL must use one of the following protocols:"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1878
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1906
|
||||
msgid "URLTest connections"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1896
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1924
|
||||
msgid "URLTest interval"
|
||||
msgstr ""
|
||||
|
||||
@@ -1360,7 +1369,7 @@ msgstr ""
|
||||
msgid "URLTest Links"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1928
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1956
|
||||
msgid "URLTest tolerance"
|
||||
msgstr ""
|
||||
|
||||
@@ -1369,7 +1378,7 @@ msgid "URLTest Tolerance"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:139
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1959
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1987
|
||||
msgid "URLTest URL"
|
||||
msgstr ""
|
||||
|
||||
@@ -1377,7 +1386,7 @@ msgstr ""
|
||||
msgid "Use a network interface as the outbound for this node"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2005
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2033
|
||||
msgid "Use a network interface as the outbound for this section"
|
||||
msgstr ""
|
||||
|
||||
@@ -1386,12 +1395,12 @@ msgstr ""
|
||||
msgid "Use sing-box duration format like 1d, 12h or 30m"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1814
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1842
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/settings.js:283
|
||||
msgid "Use sing-box duration format. Leave empty to disable automatic updates."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1897
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1925
|
||||
msgid "Use sing-box duration format. Leave empty to disable periodic URLTest checks."
|
||||
msgstr ""
|
||||
|
||||
@@ -1407,7 +1416,7 @@ msgstr ""
|
||||
#: src/validators/validateSocksUrl.ts:80
|
||||
#: src/validators/validateSubnet.ts:38
|
||||
#: src/validators/validateTrojanUrl.ts:59
|
||||
#: src/validators/validateUrl.ts:28
|
||||
#: src/validators/validateUrl.ts:35
|
||||
#: src/validators/validateVlessUrl.ts:108
|
||||
msgid "Valid"
|
||||
msgstr ""
|
||||
@@ -1418,29 +1427,34 @@ msgstr ""
|
||||
msgid "Validation errors:"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:295
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:494
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:507
|
||||
msgid "Check unavailable"
|
||||
msgstr ""
|
||||
|
||||
#: src/podkop/tabs/diagnostic/initController.ts:282
|
||||
#: src/podkop/tabs/diagnostic/partials/renderAvailableActions.ts:107
|
||||
msgid "View logs"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1651
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1679
|
||||
msgid "Visible name of this section"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/node.js:32
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1750
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1778
|
||||
msgid "vless://, ss://, trojan://, socks4/5://, hy2/hysteria2:// links"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2228
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2256
|
||||
msgid "Warning: %s cannot be used together with %s. Previous selections have been removed."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2247
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:2275
|
||||
msgid "Warning: Russia inside can only be used with %s. %s already in Russia inside and have been removed from selection."
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1664
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1692
|
||||
msgid "What Podkop Plus should do when this section matches"
|
||||
msgstr ""
|
||||
|
||||
@@ -1457,7 +1471,7 @@ msgstr ""
|
||||
msgid "Zapret (provider not available)"
|
||||
msgstr ""
|
||||
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1088
|
||||
#: ../luci-app-podkop-plus/htdocs/luci-static/resources/view/podkop/section.js:1116
|
||||
msgid "Zapret hostlist templates are not supported here because Podkop Plus does not expand them for per-rule NFQWS strategies."
|
||||
msgstr ""
|
||||
|
||||
|
||||
+19
-23
@@ -5134,7 +5134,7 @@ show_system_info() {
|
||||
fetch_latest_podkop_version() {
|
||||
command -v curl >/dev/null 2>&1 || return 1
|
||||
|
||||
curl --connect-timeout 1 -m 2 -fsSL "https://api.github.com/repos/$PODKOP_RELEASE_REPO/releases/latest" 2>/dev/null |
|
||||
curl --connect-timeout 2 -m 5 -fsSL "https://api.github.com/repos/$PODKOP_RELEASE_REPO/releases/latest" 2>/dev/null |
|
||||
sed -n 's/^[[:space:]]*"tag_name":[[:space:]]*"\([^"]*\)".*/\1/p' |
|
||||
head -n 1
|
||||
}
|
||||
@@ -5169,7 +5169,7 @@ refresh_podkop_latest_version_cache() {
|
||||
get_podkop_latest_version() {
|
||||
local cache_file="/tmp/podkop-plus.latest-version.cache"
|
||||
local cache_ttl=21600
|
||||
local now cache_value cache_timestamp cache_is_recent
|
||||
local now cache_value cache_timestamp cache_is_recent fetched_value
|
||||
|
||||
now="$(date +%s 2>/dev/null)"
|
||||
cache_value="$(sed -n '1p' "$cache_file" 2>/dev/null)"
|
||||
@@ -5189,16 +5189,20 @@ get_podkop_latest_version() {
|
||||
cache_is_recent=1
|
||||
fi
|
||||
|
||||
if [ "$cache_is_recent" -eq 1 ] &&
|
||||
is_min_package_version "$cache_value" "$PODKOP_VERSION"; then
|
||||
if [ "$cache_is_recent" -eq 1 ]; then
|
||||
echo "$cache_value"
|
||||
return 0
|
||||
fi
|
||||
|
||||
(refresh_podkop_latest_version_cache) >/dev/null 2>&1 &
|
||||
fetched_value="$(fetch_latest_podkop_version)"
|
||||
if [ -n "$fetched_value" ]; then
|
||||
now="$(date +%s 2>/dev/null)"
|
||||
case "$now" in
|
||||
'' | *[!0-9]*) now=0 ;;
|
||||
esac
|
||||
|
||||
if [ "$cache_is_recent" -eq 1 ] && [ -n "$cache_value" ]; then
|
||||
echo "$PODKOP_VERSION"
|
||||
write_podkop_latest_version_cache "$fetched_value" "$now"
|
||||
echo "$fetched_value"
|
||||
return 0
|
||||
fi
|
||||
|
||||
@@ -5220,7 +5224,7 @@ get_luci_app_version() {
|
||||
}
|
||||
|
||||
system_info_cache_is_valid() {
|
||||
local now cached_at cached_latest latest_cache_value luci_app_version
|
||||
local now cached_at cached_latest luci_app_version
|
||||
|
||||
[ -s "$PODKOP_SYSTEM_INFO_CACHE_FILE" ] || return 1
|
||||
jq -e . "$PODKOP_SYSTEM_INFO_CACHE_FILE" >/dev/null 2>&1 || return 1
|
||||
@@ -5248,11 +5252,7 @@ system_info_cache_is_valid() {
|
||||
"$PODKOP_SYSTEM_INFO_CACHE_FILE" >/dev/null 2>&1 || return 1
|
||||
|
||||
cached_latest="$(jq -r '.podkop_latest_version // "unknown"' "$PODKOP_SYSTEM_INFO_CACHE_FILE" 2>/dev/null)"
|
||||
latest_cache_value="$(sed -n '1p' /tmp/podkop-plus.latest-version.cache 2>/dev/null)"
|
||||
|
||||
if [ "$cached_latest" = "unknown" ] && [ -n "$latest_cache_value" ]; then
|
||||
return 1
|
||||
fi
|
||||
[ "$cached_latest" = "unknown" ] && return 1
|
||||
|
||||
return 0
|
||||
}
|
||||
@@ -5465,6 +5465,11 @@ get_status() {
|
||||
lifecycle_action="${stored_action:-none}"
|
||||
lifecycle_updated_at="$stored_updated_at"
|
||||
lifecycle_pid="$stored_pid"
|
||||
elif [ "$stored_state" = "running" ] && [ "$running" -eq 0 ]; then
|
||||
lifecycle_state="failed"
|
||||
lifecycle_action="${stored_action:-none}"
|
||||
lifecycle_updated_at="$stored_updated_at"
|
||||
lifecycle_pid="$stored_pid"
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -5747,17 +5752,8 @@ check_sing_box() {
|
||||
version=$(sing-box version 2> /dev/null | head -n 1 | awk '{print $3}')
|
||||
if [ -n "$version" ]; then
|
||||
version=$(echo "$version" | sed 's/^v//')
|
||||
local major
|
||||
local minor
|
||||
local patch
|
||||
major=$(echo "$version" | cut -d. -f1)
|
||||
minor=$(echo "$version" | cut -d. -f2)
|
||||
patch=$(echo "$version" | cut -d. -f3)
|
||||
|
||||
# Compare version: must be >= 1.12.4
|
||||
if [ "$major" -gt 1 ] ||
|
||||
[ "$major" -eq 1 ] && [ "$minor" -gt 12 ] ||
|
||||
[ "$major" -eq 1 ] && [ "$minor" -eq 12 ] && [ "$patch" -ge 4 ]; then
|
||||
if is_min_package_version "$version" "1.12.4"; then
|
||||
sing_box_version_ok=1
|
||||
fi
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user