feat(TrafficRoutes, InterfaceSpeedTest, Settings): implement MikroTik interface statistics route; update speed test duration settings to default to 5 seconds across UI components
Publish Fast Tabler Docker image / build-and-push-fast (push) Successful in 1m38s

This commit is contained in:
2026-02-17 23:18:21 +07:00
parent 31ed777334
commit 5c03ec7bd0
4 changed files with 125 additions and 7 deletions
+1 -1
View File
@@ -56,7 +56,7 @@ export default function InterfaceSpeedTest() {
1,
Math.min(
600,
parseInt(ui.interfaceSpeedTestDurationSeconds, 10) || 10
parseInt(ui.interfaceSpeedTestDurationSeconds, 10) || 5
)
);
const cacheMinutes = Math.max(
+3 -3
View File
@@ -240,7 +240,7 @@ export default function SettingsPage() {
setInterfaceSpeedTestDurationSeconds(
data?.interfaceSpeedTestDurationSeconds != null
? String(data.interfaceSpeedTestDurationSeconds)
: '10'
: '5'
);
setInterfaceSpeedTestCacheMinutes(
data?.interfaceSpeedTestCacheMinutes != null
@@ -343,7 +343,7 @@ export default function SettingsPage() {
interfaceSpeedTestProtocol === 'udp' ? 'udp' : 'tcp',
interfaceSpeedTestDurationSeconds: Math.max(
1,
parseInt(interfaceSpeedTestDurationSeconds, 10) || 10
parseInt(interfaceSpeedTestDurationSeconds, 10) || 5
),
interfaceSpeedTestCacheMinutes: Math.max(
0,
@@ -608,7 +608,7 @@ export default function SettingsPage() {
type="number"
value={interfaceSpeedTestDurationSeconds}
onChange={setInterfaceSpeedTestDurationSeconds}
placeholder="10"
placeholder="5"
helpText="Интервал, за который измеряется средняя скорость по интерфейсу."
disabled={saving}
min={1}
+3 -3
View File
@@ -78,7 +78,7 @@ export default function SettingsModal({ open, onClose }) {
setInterfaceSpeedTestDurationSeconds(
data?.interfaceSpeedTestDurationSeconds != null
? String(data.interfaceSpeedTestDurationSeconds)
: '10'
: '5'
);
setInterfaceSpeedTestCacheMinutes(
data?.interfaceSpeedTestCacheMinutes != null
@@ -161,7 +161,7 @@ export default function SettingsModal({ open, onClose }) {
interfaceSpeedTestProtocol === 'udp' ? 'udp' : 'tcp',
interfaceSpeedTestDurationSeconds: Math.max(
1,
parseInt(interfaceSpeedTestDurationSeconds, 10) || 10
parseInt(interfaceSpeedTestDurationSeconds, 10) || 5
),
interfaceSpeedTestCacheMinutes: Math.max(
0,
@@ -317,7 +317,7 @@ export default function SettingsModal({ open, onClose }) {
type="number"
value={interfaceSpeedTestDurationSeconds}
onChange={setInterfaceSpeedTestDurationSeconds}
placeholder="10"
placeholder="5"
helpText="Интервал, за который измеряется средняя скорость по интерфейсу."
disabled={loading || saving}
min={1}