Skip to content
NewService Map: 30 components for hosts, ports and routes
<sv-exposure>Custom elementOperateFree

Reachable from the Internet

What the edge firewall lets through from the Internet. Endpoints toggle open or blocked; open ports outside the reverse proxy are flagged.

View as Markdown
<sv-exposure>

Tryopen cache-01:6379.

Installation

pnpm dlx shadcn@latest add @lumesec/sv-exposure
First 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}.json

Or skip the setup and install by URL:

npx shadcn@latest add https://elements.lumesec.ai/r/sv-exposure.json

Usage

import { SvExposure } from "@/components/lumesec/sv-exposure";

export function Example() {
  return (
    <SvExposure />
  );
}

Behaviour

What the edge firewall lets through. Anything open outside the reverse proxy is marked as directly exposed.

API reference

Events

Events bubble and cross the shadow boundary unless the description says otherwise.

changeReact proponChangeDetail{ action: 'open-port' | 'close-port', host: string, port: number }

Fires when an endpoint is opened or blocked, with its host id and port.

Accessibility

  • Each endpoint is a button with aria-pressed for open and an aria-label that states host, port and current state.
  • The summary is a polite live region. The canvas is aria-hidden.
  • Reduced motion: no particles flow through open ports and blocked ports do not flash at the firewall.

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, --destructive, --foreground, --lumesec, --lumesec-success and --muted-foreground.

To restyle only LumeSec elements, set the matching --ui-* overrides: --ui-accent, --ui-border, --ui-danger, --ui-fg, --ui-mono, --ui-muted, --ui-ok and --ui-surface.

Notes

  • Built-in demo data: edge-01:443, edge-01:80, cache-01:6379, app-01:5005 and edge-01:22. No attribute selects a record.
  • edge-01:443 cannot be blocked; clicks on it are ignored. Any open port other than 443 and 80 counts as directly exposed.

Was this page helpful?