The Standard Catalog (standard_catalog_v1.json) provides the core set of UI components available to agents.
| Component | Key Properties | Description |
|---|
| Row | children, gap, justify, align | Arranges children horizontally. |
| Column | children, gap, justify, align | Arranges children vertically. |
| Spacer | width, height | An empty space component. Defaults to 16px. |
| Divider | axis | A visual separator line (horizontal or vertical). |
| GridLayout | headers, children | Displays tabular data with styled rows. |
| Component | Key Properties | Description |
|---|
| Text | text, variant | Renders text. Variants: h1-h5, caption, body. |
| Markdown | text | Renders rich markdown content. |
| Image | url, fit, variant | Displays an image. Fit options correspond to CSS object-fit. |
| Icon | name | Displays a Material Design icon (e.g., accountCircle, home). |
| Video | url, embed | Plays a video. embed: true for YouTube/Vimeo. |
| AudioPlayer | url, embed | Plays audio files or embeds (e.g., Spotify). |
| Component | Key Properties | Description |
|---|
| Card | child, padding, width | A styled container with shadow and rounded corners. |
| List | children, direction | A scrollable list of components. |
| Tabs | tabs | A tabbed container. Each tab object requires a title and child. |
| Modal | trigger, content | An overlay dialog. trigger is the ID of the component that opens it. |
| Component | Key Properties | Description |
|---|
| Button | action, label, variant | Triggers an action. Variants: primary, secondary, outline, borderless, danger. |
| TextField | value, label, variant | User text input. Variants: shortText, longText, number, obscured. |
| CheckBox | value, label | A boolean toggle. |
| Dropdown | value, options, label | Single-select dropdown list. |
| ChoicePicker | value, options | Multiple or single selection. variant: multipleSelection or mutuallyExclusive. |
| Slider | value, min, max | Numeric range selection. |
| DateTimeInput | value, enableDate, enableTime | Date and time selection (ISO 8601). |
Catalog Functions Reference
These functions can be used within component properties (e.g., in checks or formatString) to perform client-side logic.
- Validation: required, regex, length, numeric, email, isEmpty.
- Logic: and, or, not, eq (equal), neq (not equal), gt (greater than), gte (greater/equal), lt (less than), lte (less/equal).
- Formatting:
- formatString: Interpolates data model values (e.g., ${/path/to/data}).
- formatNumber: Options for decimal precision and grouping.
- formatCurrency: Formats using ISO 4217 currency codes.
- formatDate: Formats timestamps using Unicode TR35 patterns.
- Actions:
- openUrl: Opens a URL in a new browser tab/window.