Dependencies
One demo service in the centre with its consumers on the left and dependencies on the right. Moving pixels show live requests.
Playground
Change a prop and the component updates. Props marked live animate to the new value; the others rebuild the element.
<SvDeps svc="pgb" />
Installation
pnpm dlx shadcn@latest add @lumesec/sv-depsFirst timeRegister the @lumesec registry once, or install by URL+
Adds @lumesec to your components.json:
pnpm dlx shadcn@latest registry add @lumesec=https://elements.lumesec.ai/r/{name}.jsonOr skip the setup and install by URL:
npx shadcn@latest add https://elements.lumesec.ai/r/sv-deps.jsonUsage
import { SvDeps } from "@/components/lumesec/sv-deps";
export function Example() {
return (
<SvDeps />
);
}Behaviour
One service in the middle, what consumes it on the left and what it consumes on the right. The pixels are requests.
API reference
Attributes
svcReact propsvcTypestringDefaultpgbId of the service to centre, for example pgb or api-1. Exporters and the Internet clients are not in the menu; an id that is not in the menu falls back to the first entry (Reverse proxy on edge-01). Read once on first connect.
Events
Events bubble and cross the shadow boundary unless the description says otherwise.
selectReact proponSelectDetail{ service: string }Fires when a consumer or dependency is clicked; that service moves to the centre. service is its id. The Internet clients node is not in the menu, so clicking it centres the first entry (Reverse proxy). Choosing from the menu does not fire it.
Accessibility
- The service menu is labelled Service. Consumers and dependencies are buttons that show their host and request rate as text.
- The traffic canvas and the column headings are
aria-hidden. - Reduced motion: no request particles are drawn and the connecting lines are static.
Theming
The element reads your shadcn theme tokens through its shadow root, so light and dark follow your theme. The accent comes from --lumesec. See Theming.
This component reads --border, --card, --foreground, --input, --lumesec and --muted-foreground.
To restyle only LumeSec elements, set the matching --ui-* overrides: --ui-accent, --ui-border, --ui-border-strong, --ui-fg, --ui-mono, --ui-muted and --ui-surface.
Notes
- Reads the shared demo infrastructure
INFRA, without monitoring scrapes;svc="pgb"selects the record. - Rates are simulated around the demo values and update every second.
- Container query: under 480 px the icons and column headings are hidden.
Related
Was this page helpful?