feat(firewall): Regeln nach Zone-Pair gruppieren — v1.2.65

- Regeln werden standardmäßig nach Zone-Pair (src→dst) gruppiert
- Jede Gruppe hat einen farbigen Header mit Zone-Badges + Regelanzahl
- Toggle-Button in der Filter-Bar: Gruppen-Ansicht ↔ flache Liste
- Move-up/down bleibt global korrekt (Priority über alle Gruppen)
- CSS: .fw-zone-section* mit nahtlosem Header → Tabelle Übergang
- i18n EN + DE

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Debian
2026-06-02 14:04:56 +02:00
parent 9580070a50
commit d425b696f1
5 changed files with 125 additions and 26 deletions

View File

@@ -113,7 +113,7 @@
"rule": {
"name": "Name",
"priority": "Priority",
"enabled": "Enabled",
"enabled": "Active",
"log": "Log",
"action": "Action",
"src": "Source",
@@ -154,7 +154,6 @@
"emptyDesc": "The system rules above keep SSH (rate-limited), HTTPS :443 and the mgmt UI :3443 open (anti-lockout). Add custom rules for app-specific inbound ports or cross-zone forwards.",
"logEnabled": "Logging active — matched packets are written to the firewall log",
"ruleDisabled": "Rule disabled",
"enabled": "Active",
"unnamed": "(unnamed)",
"zeroHitHint": "No hits since last restart — possibly unused or shadowed rule"
},
@@ -175,7 +174,10 @@
"allActions": "All actions",
"allZones": "All zones",
"noResults": "No rules match the filter",
"noResultsHint": "Clear the filter to see all rules."
"noResultsHint": "Clear the filter to see all rules.",
"groupView": "Group by zone",
"flatView": "Flat list",
"rules": "rules"
},
"nat": {
"name": "Name",
@@ -1758,4 +1760,4 @@
"confirmRemove": "Really remove collection {{name}}?"
}
}
}
}