Skip to main content

Module component

Module component 

Source
Expand description

Component catalog for JSON-UI.

Defines the available UI components with typed props. Each component uses serde’s tagged enum representation so JSON includes "type": "Card".

Structs§

ActionCardProps
Props for a horizontal action card with variant-colored left border.
AlertProps
Props for Alert component.
AvatarProps
Props for Avatar component.
BadgeProps
Props for Badge component.
BreadcrumbItem
A single item in a breadcrumb trail.
BreadcrumbProps
Props for Breadcrumb component.
ButtonGroupProps
Props for ButtonGroup component – horizontal button row with consistent gap.
ButtonProps
Props for Button component.
CalendarCellProps
Props for a calendar day cell.
CardProps
Props for Card component.
CheckboxProps
Props for Checkbox component.
ChecklistItem
A single item in a checklist.
ChecklistProps
Props for Checklist component.
CollapsibleProps
Props for Collapsible section — expandable <details>/<summary>.
Column
Table column definition.
ComponentNode
A component node wrapping a component with shared fields.
DataTableProps
Props for the DataTable component — Stripe-style alternating rows with DropdownMenu per row, mobile card fallback, and empty state.
DescriptionItem
A single item in a description list.
DescriptionListProps
Props for DescriptionList component.
DetailField
A single field row within a DetailFormProps.
DetailFormProps
Props for crate::Component::DetailForm.
DropdownMenuAction
A single action item in a dropdown menu.
DropdownMenuProps
Props for DropdownMenu component — trigger button with absolutely-positioned action panel.
EmptyStateProps
Props for EmptyState component — standardized empty view.
FormProps
Props for Form component.
FormSectionProps
Props for FormSection component — visual grouping within forms.
GridProps
Props for Grid component — multi-column layout.
HeaderProps
Props for Header component.
ImageProps
Props for Image component.
InputProps
Props for Input component.
KanbanBoardProps
Props for KanbanBoard component — horizontal scrollable columns on desktop, tab-based on mobile.
KanbanColumnProps
Props for a single column in a KanbanBoard.
KeyValueEditorProps
Props for KeyValueEditor component.
ModalProps
Props for Modal component.
NotificationDropdownProps
Props for NotificationDropdown component.
NotificationItem
A single item in a notification dropdown.
PageHeaderProps
Props for PageHeader component – page title with optional breadcrumb and action buttons.
PaginationProps
Props for Pagination component.
PluginProps
Props for a plugin component.
ProductTileProps
Props for a touch-friendly product tile with quantity controls.
ProgressProps
Props for Progress component.
SelectOption
Select option (value + label pair).
SelectProps
Props for Select component.
SeparatorProps
Props for Separator component.
SidebarGroup
A collapsible group in the sidebar.
SidebarNavItem
A single navigation item in the sidebar.
SidebarProps
Props for Sidebar component.
SkeletonProps
Props for Skeleton loading placeholder.
StatCardProps
Props for StatCard component (live-updatable metric card).
SwitchProps
Props for Switch component.
Tab
A single tab within a Tabs component.
TableProps
Props for Table component.
TabsProps
Props for Tabs component.
TextProps
Props for Text component.
ToastProps
Props for Toast component (declarative notification intent).

Enums§

ActionCardVariant
Visual variant for action cards.
AlertVariant
Alert visual variants.
BadgeVariant
Badge visual variants (aligned to shadcn/ui).
ButtonType
HTML button type attribute.
ButtonVariant
Button visual variants (aligned to shadcn/ui).
ColumnFormat
Column display format for tables.
Component
Component catalog enum. Built-in types are deserialized by name, unknown types fall through to the Plugin variant.
EditMode
Which display mode the component uses.
FormMaxWidth
Maximum width constraint for form containers.
FormSectionLayout
Layout variant for form sections.
GapSize
Gap size for Grid layout.
IconPosition
Icon placement relative to button label.
InputType
Input field types.
Orientation
Separator orientation.
Size
Shared size enum for components (Button, Badge, Avatar, Input).
SortDirection
Sort direction for table columns.
TextElement
Text element types for semantic HTML rendering.
ToastVariant
Toast visual variants.