Watch
0
0
Fork
You've already forked hyperhive
0

swarm-ui: test which entries the egress card lists and the swarm-wide add body

This commit is contained in:
iris 2026-11-04 21:19:39 +01:00
commit 7122a3a36d
2 changed files with 30 additions and 3 deletions

View file

@ -83,3 +83,12 @@ export function entryBody(
const name = domain.trim();
return forSwarm ? { domain: name } : { domain: name, agent };
}
/**
* The entries that hold for every agent, which the swarm page's egress card
* lists: not an agent's own, and not an automatic one (kept by the controller
* from an environment or account, so nothing to remove).
*/
export function swarmWideEntries(entries: AllowedDomain[]): AllowedDomain[] {
return entries.filter((e) => e.agent === undefined && e.derived !== true);
}

View file

@ -12,6 +12,7 @@ import { useState } from "preact/hooks";
import { ApiErrorPanel } from "@hive/shared/api-error-panel.js";
import { Badge } from "@hive/shared/badge.js";
import { AddForm } from "../../agent/detail/AllowedDomains.js";
import { swarmWideEntries } from "../../agent/detail/allowed-domains.js";
import { useAllowedDomains } from "../../agent/detail/useAllowedDomains.js";
import { Button } from "../../ui/button/Button.js";
import { LazyDisclosure } from "../../ui/disclosure/LazyDisclosure.js";
@ -44,9 +45,7 @@ function EgressBody() {
);
}
const swarmWide = entries.filter(
(e) => e.agent === undefined && e.derived !== true,
);
const swarmWide = swarmWideEntries(entries);
return (
<>
{errorPanel}