fix(filters): восстановить связь рекурсивного шлюза после опроса
This commit is contained in:
1 parent
042407f03e
commit
0f0d3aa060
4 files changed
+74
-4
No files matched your search
@@ -1676,11 +1676,17 @@ function FiltersPage() {
|
||||
}
|
||||
const openEdit = (rule: FilterRule) => {
|
||||
if (mutationsLocked || applyLock.current) return
|
||||
// The observed catalog can have new DB IDs after refresh. Recover only an
|
||||
// explicit recursive reference, never reinterpret a named GRE interface.
|
||||
const routes = recRoutesByServer[selectedServerId] ?? []
|
||||
const recursive = isRecursiveGatewayRef(rule.gatewayTunnelId)
|
||||
? routes.find(r => r.id === rule.gatewayTunnelId.slice(4)) ?? pickRecursiveRouteByGatewayHop(routes, rule.gateway)
|
||||
: undefined
|
||||
setSheetInitial({
|
||||
action: rule.action ?? "route",
|
||||
community: rule.community,
|
||||
gateway: rule.gateway,
|
||||
gatewayTunnelId: rule.gatewayTunnelId,
|
||||
gatewayTunnelId: recursive ? `rec:${recursive.id}` : rule.gatewayTunnelId,
|
||||
gatewayKind: isRecursiveGatewayRef(rule.gatewayTunnelId) ? "recursive" : "gre",
|
||||
description: rule.description,
|
||||
})
|
||||
|
||||
Reference in new issue
Block a user