4.2 KiB
Components
This file defines the spec components used across frontend/spec/pages/*.md.
-
page: Root container for a route-level screen. Carries route metadata like
path, auth requirements, and layout shell. -
nav: Top navigation area for primary brand and session-aware links.
-
header: Top content block for a page or section, usually containing a title.
-
section: Logical grouping of related content within a page.
-
hero: Prominent introductory content block for a page.
-
heading: Section heading wrapper that pairs a title with optional supporting copy.
-
title: Primary label text for a page, section, card, or control.
-
description: Supporting explanatory text under a title or heading.
-
text: Generic body text when no more specific semantic component applies.
-
help_text: Small informational guidance text, usually near forms or auth flows.
-
brand: Product identity block (name/logo).
-
badge: Small status/highlight label.
-
status: Current state indicator for an entity (for example relay status).
-
meta: Secondary metadata text (IDs, pubkeys, auxiliary attributes).
-
copyright: Footer legal ownership line.
-
link: Navigational text/action leading to another route or URL.
-
links: Group of related link components.
-
back_link: Explicit “go back” navigation link to a parent/list view.
-
back_button: Button-style backward navigation within a multi-step screen.
-
button: Generic clickable action control.
-
submit_button: Primary form submission control with optional loading label.
-
actions: Container for action controls associated with a section/card.
-
controls: Container for filters/search/sort controls.
-
tabs: Container for tabbed navigation controls.
-
tab: A selectable tab option within
tabs. -
screen: Named sub-view/state within a page (e.g., a login subflow).
-
modal: Overlay dialog for focused temporary interaction.
-
form: Form container for user input and submission behavior.
-
field: Structured form field abstraction (label + input type + validation intent).
-
input: Single input control for user-entered values.
-
select: Dropdown control for choosing one option from many.
-
option: A selectable value within
selector plan/method groups. -
copyable_input: Read-only input-like field designed for quick copy actions.
-
tooltip_error: Inline or anchored validation error shown near a specific field.
-
error_message: Message shown when an action fails.
-
error_state: Full-state error presentation for failed data loading.
-
loading_state: Full-state loading presentation while data is being fetched.
-
list: Repeating collection container.
-
item: Single element within a repeating collection.
-
grid: Multi-column layout container for repeated items/cards.
-
card: Bounded content block used in feature grids and summaries.
-
product: Specialized card describing an external ecosystem product/integration.
-
relay_detail_card: Composite card summarizing relay properties and management actions.
-
avatar: User/profile image representation.
-
bullets: Container for short point-form highlights.
-
toggle: On/off control for a boolean feature or policy.
-
toggles: Group of related boolean toggle controls.
-
plan_selector: Control used to switch between available relay plans.
-
pricing_table: Plan comparison and pricing presentation block.
-
member_count: Display of current member usage for a relay.
-
members: Plan capacity descriptor (member limits).
-
price: Plan pricing descriptor.
-
tenant: Tenant identity/value display in admin-oriented contexts.
-
created_at: Human-readable creation timestamp display.
-
bolt11: Lightning invoice string display.
-
qr_code: Visual QR representation of a connection URI.
-
camera_preview: Live camera viewport used for scanning QR codes.
Control directives used in specs
These appear in the Pug-like spec language but are flow directives rather than UI components:
- if / else: Conditional branch based on a boolean condition.
- when: Conditional rendering keyed off a selected tab/state/value.