@agent-ui-kit/web-components 0.0.14 → 0.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/dist/agent-ui.css +1 -1
  2. package/dist/api.colors.json +2 -2
  3. package/dist/api.colors.yaml +2 -2
  4. package/dist/api.components.json +3878 -636
  5. package/dist/api.tokens.json +35 -3
  6. package/dist/api.tokens.yaml +27 -3
  7. package/dist/chunks/{agent-C72JZNe6.js → agent-XMhz_6OA.js} +85 -76
  8. package/dist/chunks/{agent-C72JZNe6.js.map → agent-XMhz_6OA.js.map} +1 -1
  9. package/dist/chunks/{empty-state-5M3uR5CM.js → form-oekEhwja.js} +1409 -960
  10. package/dist/chunks/form-oekEhwja.js.map +1 -0
  11. package/dist/components/agent.js +6 -6
  12. package/dist/components/avatar/avatar.d.ts +0 -0
  13. package/dist/components/badge/badge.d.ts +0 -0
  14. package/dist/components/bar/bar.d.ts +0 -0
  15. package/dist/components/breadcrumb/breadcrumb.d.ts +2 -0
  16. package/dist/components/button-group/button-group.d.ts +0 -0
  17. package/dist/components/checkbox-group/checkbox-group.d.ts +14 -0
  18. package/dist/components/checkbox-group/index.d.ts +1 -0
  19. package/dist/components/code/code.d.ts +0 -0
  20. package/dist/components/color-area/color-area.d.ts +2 -1
  21. package/dist/components/color-picker/color-picker.d.ts +1 -0
  22. package/dist/components/color-picker/oklch-utils.d.ts +18 -0
  23. package/dist/components/color-slider/color-slider.d.ts +1 -1
  24. package/dist/components/color-swatch/color-swatch.d.ts +0 -0
  25. package/dist/components/content/content.d.ts +0 -0
  26. package/dist/components/description-list/description-list.d.ts +0 -0
  27. package/dist/components/divider/divider.d.ts +0 -0
  28. package/dist/components/editor.js +1 -1
  29. package/dist/components/fieldset/fieldset.d.ts +0 -0
  30. package/dist/components/footer/footer.d.ts +0 -0
  31. package/dist/components/form/form.d.ts +12 -0
  32. package/dist/components/form/index.d.ts +1 -0
  33. package/dist/components/graph.js +1 -1
  34. package/dist/components/grid/grid.d.ts +0 -0
  35. package/dist/components/header/header.d.ts +0 -0
  36. package/dist/components/heading/heading.d.ts +0 -0
  37. package/dist/components/index.d.ts +2 -0
  38. package/dist/components/input-group/input-group.d.ts +0 -0
  39. package/dist/components/inset/inset.d.ts +0 -0
  40. package/dist/components/kbd/kbd.d.ts +0 -0
  41. package/dist/components/noodles/noodle-controller.d.ts +1 -1
  42. package/dist/components/stack/stack.d.ts +0 -0
  43. package/dist/components/stat/stat.d.ts +4 -0
  44. package/dist/components/text/text.d.ts +0 -0
  45. package/dist/components/time-field/time-field.d.ts +1 -0
  46. package/dist/components/wrap/wrap.d.ts +0 -0
  47. package/dist/components.js +115 -126
  48. package/dist/components.js.map +1 -1
  49. package/dist/docs/blocks/agent-chat.yaml +33 -25
  50. package/dist/docs/blocks/announcement-card.yaml +14 -10
  51. package/dist/docs/blocks/bpm-process.yaml +216 -4
  52. package/dist/docs/blocks/chart-activity.yaml +12 -10
  53. package/dist/docs/blocks/chart-card.yaml +14 -11
  54. package/dist/docs/blocks/chart-donut.yaml +27 -23
  55. package/dist/docs/blocks/chart-grouped.yaml +14 -11
  56. package/dist/docs/blocks/chart-horizontal.yaml +13 -10
  57. package/dist/docs/blocks/chart-interactive.yaml +20 -17
  58. package/dist/docs/blocks/chart-labeled.yaml +14 -11
  59. package/dist/docs/blocks/checkout-form.yaml +26 -16
  60. package/dist/docs/blocks/clinical-trial.yaml +180 -4
  61. package/dist/docs/blocks/contributors.yaml +17 -11
  62. package/dist/docs/blocks/cyber-threat.yaml +158 -4
  63. package/dist/docs/blocks/dashboard-layout.yaml +25 -18
  64. package/dist/docs/blocks/data-eng-dag.yaml +222 -6
  65. package/dist/docs/blocks/date-picker.yaml +11 -10
  66. package/dist/docs/blocks/ddx-workflow.yaml +202 -6
  67. package/dist/docs/blocks/empty-state.yaml +8 -11
  68. package/dist/docs/blocks/env-variables.yaml +29 -20
  69. package/dist/docs/blocks/feature-upgrade.yaml +25 -18
  70. package/dist/docs/blocks/financial-risk.yaml +161 -4
  71. package/dist/docs/blocks/flow-editor.yaml +27 -18
  72. package/dist/docs/blocks/gen-ai-pipeline.yaml +232 -5
  73. package/dist/docs/blocks/issue-assign.yaml +25 -14
  74. package/dist/docs/blocks/keyboard-shortcuts.yaml +14 -9
  75. package/dist/docs/blocks/login-branded.yaml +62 -23
  76. package/dist/docs/blocks/login-email-only.yaml +14 -13
  77. package/dist/docs/blocks/login-form.yaml +17 -11
  78. package/dist/docs/blocks/login-simple.yaml +18 -12
  79. package/dist/docs/blocks/login-social.yaml +21 -14
  80. package/dist/docs/blocks/login-two-column.yaml +42 -22
  81. package/dist/docs/blocks/marketing-automation.yaml +209 -4
  82. package/dist/docs/blocks/member-list.yaml +23 -18
  83. package/dist/docs/blocks/ml-pipeline.yaml +163 -4
  84. package/dist/docs/blocks/nav-card.yaml +13 -11
  85. package/dist/docs/blocks/notification-list.yaml +18 -13
  86. package/dist/docs/blocks/oncology-pathway.yaml +227 -4
  87. package/dist/docs/blocks/pricing-card.yaml +20 -13
  88. package/dist/docs/blocks/processing-state.yaml +14 -11
  89. package/dist/docs/blocks/profile-card.yaml +22 -16
  90. package/dist/docs/blocks/saas-onboarding.yaml +222 -4
  91. package/dist/docs/blocks/settings-form.yaml +20 -11
  92. package/dist/docs/blocks/settings-panel.yaml +23 -22
  93. package/dist/docs/blocks/sidebar-nav.yaml +23 -15
  94. package/dist/docs/blocks/signup-form.yaml +17 -11
  95. package/dist/docs/blocks/stat-cards.yaml +12 -13
  96. package/dist/docs/blocks/status-card.yaml +20 -17
  97. package/dist/docs/blocks/suggested-labs.yaml +20 -13
  98. package/dist/docs/blocks/supply-chain.yaml +160 -4
  99. package/dist/docs/blocks/survey-card.yaml +21 -13
  100. package/dist/docs/blocks/tabbed-panel.yaml +21 -15
  101. package/dist/docs/blocks/team-empty.yaml +8 -9
  102. package/dist/docs/blocks/usage-billing.yaml +20 -16
  103. package/dist/docs/components/accordion-item.yaml +13 -21
  104. package/dist/docs/components/accordion.yaml +23 -29
  105. package/dist/docs/components/agent-activity.yaml +49 -41
  106. package/dist/docs/components/agent-feed.yaml +15 -22
  107. package/dist/docs/components/agent-input.yaml +238 -0
  108. package/dist/docs/components/agent-message.yaml +29 -48
  109. package/dist/docs/components/agent-panel.yaml +21 -24
  110. package/dist/docs/components/agent-prompt.yaml +29 -47
  111. package/dist/docs/components/agent-seeds.yaml +16 -24
  112. package/dist/docs/components/agent-text.yaml +14 -24
  113. package/dist/docs/components/agent-thread.yaml +15 -24
  114. package/dist/docs/components/alert.yaml +41 -39
  115. package/dist/docs/components/avatar-group.yaml +72 -45
  116. package/dist/docs/components/avatar.yaml +99 -0
  117. package/dist/docs/components/badge.yaml +110 -0
  118. package/dist/docs/components/bar.yaml +84 -0
  119. package/dist/docs/components/breadcrumb-item.yaml +8 -17
  120. package/dist/docs/components/breadcrumb.yaml +91 -29
  121. package/dist/docs/components/button-group.yaml +93 -0
  122. package/dist/docs/components/button.yaml +188 -261
  123. package/dist/docs/components/calendar-picker.yaml +16 -35
  124. package/dist/docs/components/calendar-range-picker.yaml +11 -29
  125. package/dist/docs/components/calendar.yaml +11 -29
  126. package/dist/docs/components/canvas.yaml +44 -61
  127. package/dist/docs/components/checkbox.yaml +37 -49
  128. package/dist/docs/components/chip.yaml +89 -55
  129. package/dist/docs/components/code-block.yaml +54 -53
  130. package/dist/docs/components/code.yaml +37 -0
  131. package/dist/docs/components/color-area.yaml +119 -0
  132. package/dist/docs/components/color-field.yaml +121 -0
  133. package/dist/docs/components/color-picker.yaml +87 -35
  134. package/dist/docs/components/color-slider.yaml +153 -0
  135. package/dist/docs/components/color-swatch.yaml +98 -0
  136. package/dist/docs/components/command.yaml +13 -18
  137. package/dist/docs/components/container.yaml +84 -73
  138. package/dist/docs/components/content.yaml +100 -0
  139. package/dist/docs/components/context-menu.yaml +11 -20
  140. package/dist/docs/components/date-field.yaml +81 -33
  141. package/dist/docs/components/description-list.yaml +81 -0
  142. package/dist/docs/components/disclosure-group.yaml +61 -42
  143. package/dist/docs/components/disclosure.yaml +60 -46
  144. package/dist/docs/components/divider.yaml +63 -0
  145. package/dist/docs/components/dropdown-menu.yaml +16 -25
  146. package/dist/docs/components/feed.yaml +15 -24
  147. package/dist/docs/components/field.yaml +50 -71
  148. package/dist/docs/components/fieldset.yaml +92 -0
  149. package/dist/docs/components/footer.yaml +147 -0
  150. package/dist/docs/components/grid.yaml +87 -0
  151. package/dist/docs/components/gripper.yaml +11 -23
  152. package/dist/docs/components/header.yaml +168 -0
  153. package/dist/docs/components/heading.yaml +58 -0
  154. package/dist/docs/components/hover-card.yaml +17 -25
  155. package/dist/docs/components/icon.yaml +32 -65
  156. package/dist/docs/components/index.yaml +11 -1
  157. package/dist/docs/components/input-group.yaml +102 -0
  158. package/dist/docs/components/input-otp.yaml +20 -19
  159. package/dist/docs/components/input.yaml +100 -139
  160. package/dist/docs/components/inset.yaml +59 -0
  161. package/dist/docs/components/kbd.yaml +57 -0
  162. package/dist/docs/components/link.yaml +36 -45
  163. package/dist/docs/components/meter.yaml +54 -42
  164. package/dist/docs/components/nav-item.yaml +54 -43
  165. package/dist/docs/components/noodles.yaml +72 -104
  166. package/dist/docs/components/option.yaml +12 -23
  167. package/dist/docs/components/pagination.yaml +21 -18
  168. package/dist/docs/components/pane.yaml +18 -32
  169. package/dist/docs/components/panes.yaml +19 -27
  170. package/dist/docs/components/progress-circle.yaml +64 -55
  171. package/dist/docs/components/progress.yaml +35 -51
  172. package/dist/docs/components/radio-group.yaml +99 -40
  173. package/dist/docs/components/radio.yaml +40 -41
  174. package/dist/docs/components/range.yaml +24 -27
  175. package/dist/docs/components/segmented-control.yaml +58 -17
  176. package/dist/docs/components/select.yaml +80 -100
  177. package/dist/docs/components/skeleton.yaml +39 -39
  178. package/dist/docs/components/sparkline.yaml +28 -45
  179. package/dist/docs/components/spinner.yaml +32 -33
  180. package/dist/docs/components/stack.yaml +126 -0
  181. package/dist/docs/components/stat.yaml +164 -0
  182. package/dist/docs/components/stepper.yaml +46 -53
  183. package/dist/docs/components/switch.yaml +36 -47
  184. package/dist/docs/components/tab-panel.yaml +27 -18
  185. package/dist/docs/components/tab.yaml +25 -22
  186. package/dist/docs/components/table-header.yaml +22 -12
  187. package/dist/docs/components/tabs.yaml +103 -20
  188. package/dist/docs/components/tag-group.yaml +63 -47
  189. package/dist/docs/components/text.yaml +67 -0
  190. package/dist/docs/components/textarea.yaml +43 -60
  191. package/dist/docs/components/time-field.yaml +108 -34
  192. package/dist/docs/components/toast.yaml +13 -30
  193. package/dist/docs/components/tooltip.yaml +56 -49
  194. package/dist/docs/components/tree-item.yaml +9 -10
  195. package/dist/docs/components/tree.yaml +127 -10
  196. package/dist/docs/components/wrap.yaml +60 -0
  197. package/dist/docs/traits/toggle-theme.yaml +34 -0
  198. package/dist/element.js +1 -1
  199. package/dist/icons.js +79 -59
  200. package/dist/icons.js.map +1 -1
  201. package/dist/reactivity.js +2 -2
  202. package/dist/register.d.ts +0 -1
  203. package/dist/register.js +368 -352
  204. package/dist/register.js.map +1 -1
  205. package/dist/store.js +1 -1
  206. package/dist/traits/toggle-theme/toggle-theme.d.ts +0 -0
  207. package/dist/traits/toggle-theme/toggle-theme.trait.d.ts +2 -0
  208. package/dist/traits.js +528 -485
  209. package/dist/traits.js.map +1 -1
  210. package/package.json +1 -1
  211. package/dist/chunks/empty-state-5M3uR5CM.js.map +0 -1
@@ -2,87 +2,76 @@ name: aui-field
2
2
  tag: aui-field
3
3
  type: element
4
4
  summary: Form field wrapper with label, description, and error.
5
- description: >
6
- Wraps a form control with a label, optional description, and
7
- error message. All text is rendered CSS-first via content: attr()
8
- from HTML attributes — zero JavaScript stamping required. Uses
9
- display: flex with column direction, so child controls (aui-input,
10
- aui-textarea, aui-select) stretch to full width automatically —
11
- no width="full" needed on the child.
12
-
13
- # ── Component attributes ──────────────────────────────────
14
-
5
+ description: |
6
+ Wraps a form control with a label, optional description, and error message. All text is rendered CSS-first via content: attr() from HTML attributes — zero JavaScript stamping required. Uses display: flex with column direction, so child controls (aui-input, aui-textarea, aui-select) stretch to full width automatically — no width="full" needed on the child.
15
7
  attributes:
16
8
  label:
17
9
  syntax: key-value
18
10
  type: string
19
11
  default: ""
20
- description: >
21
- Field label text. Rendered via ::before { content: attr(label) }.
22
- No JS needed — CSS reads the attribute directly.
23
-
12
+ description: |
13
+ Field label text. Rendered via ::before { content: attr(label) }. No JS needed — CSS reads the attribute directly.
24
14
  description:
25
15
  syntax: key-value
26
16
  type: string
27
17
  default: ""
28
- description: >
29
- Help text below the control. Rendered via ::after.
30
- Replaced by error text when error attribute is set.
31
-
18
+ description: |
19
+ Help text below the control. Rendered via ::after. Replaced by error text when error attribute is set.
32
20
  error:
33
21
  syntax: key-value
34
22
  type: string
35
23
  default: ""
36
- description: >
37
- Error message. When set, replaces description text and
38
- cascades danger intent to child controls via CSS custom
39
- properties.
40
-
24
+ description: |
25
+ Error message. When set, replaces description text and cascades danger intent to child controls via CSS custom properties.
41
26
  required:
42
27
  syntax: boolean
43
28
  type: boolean
44
29
  default: false
45
- description: >
46
- Appends " *" to the label text via CSS content concatenation.
47
- Also sets the required constraint on the wrapped control.
48
-
30
+ description: |
31
+ Appends " *" to the label text via CSS content concatenation. Also sets the required constraint on the wrapped control.
49
32
  disabled:
50
33
  syntax: boolean
51
34
  type: boolean
52
35
  default: false
53
36
  description: Dims the field and disables pointer events.
54
-
55
- # ── Content model ─────────────────────────────────────────
56
-
57
37
  content:
58
38
  model: block
59
- accepts: [aui-input, aui-textarea, aui-checkbox, aui-switch, aui-select, aui-radio-group]
39
+ accepts:
40
+ - aui-input
41
+ - aui-textarea
42
+ - aui-checkbox
43
+ - aui-switch
44
+ - aui-select
45
+ - aui-radio-group
60
46
  required: true
61
- description: >
62
- Exactly one form control as the direct child. The field wrapper
63
- provides the label and messages; the control provides the input.
64
-
65
- # ── Slots ─────────────────────────────────────────────────
66
-
47
+ description: |
48
+ Exactly one form control as the direct child. The field wrapper provides the label and messages; the control provides the input.
67
49
  slots:
68
50
  default:
69
- accepts: [aui-input, aui-textarea, aui-checkbox, aui-switch, aui-select]
51
+ accepts:
52
+ - aui-input
53
+ - aui-textarea
54
+ - aui-checkbox
55
+ - aui-switch
56
+ - aui-select
70
57
  required: true
71
58
  description: The form control.
72
-
73
- # ── Composition ───────────────────────────────────────────
74
-
75
59
  composition:
76
- parents: [aui-stack, aui-grid, form, div, section]
77
- children: [aui-input, aui-textarea, aui-checkbox, aui-switch, aui-select, aui-radio-group]
78
- context: >
79
- Use inside forms, settings panels, registration/login pages.
80
- Stack multiple aui-field elements vertically in an aui-stack.
81
- The field handles layout (label above, description below);
82
- the control handles input behavior.
83
-
84
- # ── CSS implementation notes ──────────────────────────────
85
-
60
+ parents:
61
+ - aui-stack
62
+ - aui-grid
63
+ - form
64
+ - div
65
+ - section
66
+ children:
67
+ - aui-input
68
+ - aui-textarea
69
+ - aui-checkbox
70
+ - aui-switch
71
+ - aui-select
72
+ - aui-radio-group
73
+ context: |
74
+ Use inside forms, settings panels, registration/login pages. Stack multiple aui-field elements vertically in an aui-stack. The field handles layout (label above, description below); the control handles input behavior.
86
75
  css-notes:
87
76
  attr-bindings:
88
77
  - "::before { content: attr(label) } — AB2: label from attribute"
@@ -93,9 +82,6 @@ css-notes:
93
82
  - "[error] cascades --aui-stroke to danger color"
94
83
  - "[disabled] dims with opacity"
95
84
  - "[required] appends asterisk to label"
96
-
97
- # ── CSS tokens consumed ──────────────────────────────────
98
-
99
85
  tokens:
100
86
  - name: --aui-field-gap
101
87
  default: calc(var(--aui-space) * 2)
@@ -121,36 +107,29 @@ tokens:
121
107
  - name: --aui-field-error-color
122
108
  default: var(--aui-danger, oklch(0.65 0.2 25))
123
109
  description: Error message text color.
124
-
125
- # ── Examples ──────────────────────────────────────────────
126
-
127
110
  examples:
128
- - html: |
111
+ - description: Basic field with label and input
112
+ html: |-
129
113
  <aui-field label="Email">
130
114
  <aui-input type="email" placeholder="you@example.com"></aui-input>
131
115
  </aui-field>
132
- description: Basic field with label and input.
133
-
134
- - html: |
116
+ - description: Field with description text
117
+ html: |-
135
118
  <aui-field label="Password" description="Must be at least 8 characters.">
136
119
  <aui-input type="password" placeholder="Enter password"></aui-input>
137
120
  </aui-field>
138
- description: Field with description text.
139
-
140
- - html: |
121
+ - description: Required field label shows asterisk
122
+ html: |-
141
123
  <aui-field label="Username" required>
142
124
  <aui-input placeholder="Choose a username"></aui-input>
143
125
  </aui-field>
144
- description: Required field label shows asterisk.
145
-
146
- - html: |
126
+ - description: Field with error state
127
+ html: |-
147
128
  <aui-field label="Email" error="This email is already registered.">
148
129
  <aui-input type="email" value="taken@example.com"></aui-input>
149
130
  </aui-field>
150
- description: Field with error state.
151
-
152
- - html: |
131
+ - description: Disabled field
132
+ html: |-
153
133
  <aui-field label="Name" disabled>
154
134
  <aui-input value="Read only" disabled></aui-input>
155
135
  </aui-field>
156
- description: Disabled field.
@@ -0,0 +1,92 @@
1
+ name: aui-fieldset
2
+ tag: aui-fieldset
3
+ type: element
4
+ summary: Groups form fields under a legend heading with consistent spacing.
5
+ description: |
6
+ CSS-only fieldset element that provides consistent legend positioning, border treatment, and spacing. Avoids the cross-browser rendering quirks of the native fieldset element. Legend text is rendered via the legend attribute using ::before.
7
+ presentational:
8
+ legend:
9
+ syntax: key-value
10
+ attribute: legend
11
+ cascades: false
12
+ default: null
13
+ description: Heading text for the group, rendered via CSS attr().
14
+ description:
15
+ syntax: key-value
16
+ attribute: description
17
+ cascades: false
18
+ default: null
19
+ description: Optional description text below the legend.
20
+ modifiers:
21
+ borderless:
22
+ syntax: boolean
23
+ description: |
24
+ Removes the border, keeps the legend and spacing. Use for ungrouped form sections that still need a heading.
25
+ content:
26
+ model: flow
27
+ accepts:
28
+ - aui-field
29
+ - aui-input
30
+ - aui-select
31
+ - aui-stack
32
+ - aui-grid
33
+ - div
34
+ required: true
35
+ description: |
36
+ Form fields and layout containers. Typically aui-field elements with labels and controls.
37
+ slots:
38
+ default:
39
+ accepts:
40
+ - aui-field
41
+ - aui-stack
42
+ - aui-grid
43
+ - aui-divider
44
+ required: true
45
+ description: The grouped form fields.
46
+ composition:
47
+ parents:
48
+ - aui-stack
49
+ - aui-content
50
+ - aui-inset
51
+ - form
52
+ - div
53
+ children:
54
+ - aui-field
55
+ - aui-stack
56
+ - aui-grid
57
+ - aui-divider
58
+ context: |
59
+ Use for multi-section forms and settings pages. Nest inside aui-stack for vertical form layouts. Combine with aui-divider for additional section separation.
60
+ tokens:
61
+ spacing:
62
+ - --aui-space
63
+ color:
64
+ - --aui-border
65
+ - --aui-text
66
+ - --aui-text-muted
67
+ shape:
68
+ - --aui-radius
69
+ typography:
70
+ - --aui-font-sm
71
+ - --aui-font-xs
72
+ - --aui-font-weight-medium
73
+ examples:
74
+ - description: Basic fieldset with legend
75
+ html: |-
76
+ <aui-fieldset legend="Personal Information">
77
+ <aui-field label="Name"><aui-input></aui-input></aui-field>
78
+ <aui-field label="Email"><aui-input type="email"></aui-input></aui-field>
79
+ </aui-fieldset>
80
+ - description: Fieldset with description
81
+ html: |-
82
+ <aui-fieldset legend="Notifications">
83
+ <span data-fieldset-description>Choose how you want to be notified.</span>
84
+ <aui-field label="Email"><aui-switch></aui-switch></aui-field>
85
+ <aui-field label="SMS"><aui-switch></aui-switch></aui-field>
86
+ </aui-fieldset>
87
+ - description: Borderless fieldset
88
+ html: |-
89
+ <aui-fieldset legend="Billing Address" borderless>
90
+ <aui-field label="Street"><aui-input></aui-input></aui-field>
91
+ <aui-field label="City"><aui-input></aui-input></aui-field>
92
+ </aui-fieldset>
@@ -0,0 +1,147 @@
1
+ name: aui-footer
2
+ tag: aui-footer
3
+ type: element
4
+ summary: Float-based layout container for bottom bars.
5
+ description: |
6
+ Same float-based slot layout as aui-header. Leading floats left, trailing floats right, content slot centers absolutely. Text-align center is scoped to the content slot only. Use for page footers, card action bars, dialog button rows.
7
+ presentational:
8
+ size:
9
+ syntax: key-value
10
+ attribute: size
11
+ cascades: true
12
+ default: medium
13
+ values:
14
+ - xs
15
+ - sm
16
+ - md
17
+ - lg
18
+ - xl
19
+ description: Controls min-height and font-size.
20
+ density:
21
+ syntax: key-value
22
+ attribute: density
23
+ cascades: true
24
+ default: regular
25
+ values:
26
+ - compact
27
+ - spacious
28
+ description: Controls padding compression.
29
+ responsive:
30
+ syntax: boolean
31
+ attribute: responsive
32
+ cascades: false
33
+ default: false
34
+ description: |
35
+ Enables progressive collapse via container queries. Same behavior as aui-header: the footer becomes a container provider and slotted children hide progressively as the container shrinks (trailing < 8rem, leading < 5rem, icon-only < 3rem). Use aui-button in slots for best collapse behavior.
36
+ intent:
37
+ syntax: boolean
38
+ exclusive: true
39
+ cascades: true
40
+ default: neutral
41
+ values:
42
+ - accent
43
+ - info
44
+ - success
45
+ - warning
46
+ - danger
47
+ description: Color family — cascades to all children.
48
+ content:
49
+ model: mixed
50
+ accepts:
51
+ - text
52
+ - inline elements
53
+ - aui-button
54
+ - aui-badge
55
+ - span
56
+ - div
57
+ required: true
58
+ description: |
59
+ Action buttons, status text, or metadata in slots. At minimum, provide content in at least one slot.
60
+ slots:
61
+ default:
62
+ accepts:
63
+ - text
64
+ - span
65
+ - div
66
+ - aui-button
67
+ required: false
68
+ description: Center/main content.
69
+ content:
70
+ accepts:
71
+ - text
72
+ - span
73
+ - div
74
+ - aui-button
75
+ required: false
76
+ description: |
77
+ Centered content. Rendered with position: absolute, inset: 0 and flexbox centering. Text-align: center is scoped to this slot only — it does not cascade to leading/trailing.
78
+ leading:
79
+ accepts:
80
+ - text
81
+ - span
82
+ - aui-button
83
+ required: false
84
+ description: Leading element. Floats left with natural text alignment.
85
+ trailing:
86
+ accepts:
87
+ - text
88
+ - span
89
+ - aui-button
90
+ - div
91
+ required: false
92
+ description: Trailing element. Floats right with natural text alignment.
93
+ composition:
94
+ parents:
95
+ - aui-stack
96
+ - div
97
+ - section
98
+ - main
99
+ siblings:
100
+ typical:
101
+ - aui-content
102
+ - aui-header
103
+ pattern: |
104
+ aui-footer is typically the last child in a vertical container, after aui-content. Pair with aui-header at the top for a full page/card/dialog frame.
105
+ context: |
106
+ Use as the bottom bar of a page, section, card, or dialog. Common patterns: copyright line, pagination, confirm/cancel button pairs.
107
+ tokens:
108
+ sizing:
109
+ - --aui-size
110
+ - --aui-font-size
111
+ spacing:
112
+ - --aui-pad-control-block
113
+ - --aui-pad-control-inline
114
+ - --aui-pad-gap-container
115
+ examples:
116
+ - description: Simple copyright footer
117
+ html: |-
118
+ <aui-footer dividers>
119
+ <span slot="leading">© 2026 AgentUI</span>
120
+ <span slot="trailing">v0.0.1</span>
121
+ </aui-footer>
122
+ - description: Dialog action footer — cancel + save
123
+ html: |-
124
+ <aui-footer dividers>
125
+ <span slot="trailing">
126
+ <aui-button ghost label="Cancel"></aui-button>
127
+ <aui-button primary accent label="Save" icon-leading="check"></aui-button>
128
+ </span>
129
+ </aui-footer>
130
+ - description: Status footer with centered text
131
+ html: |-
132
+ <aui-footer dividers>
133
+ <aui-icon name="check-circle" slot="leading"></aui-icon>
134
+ <span slot="content">All changes saved</span>
135
+ <span slot="trailing">
136
+ <aui-button ghost label="Undo" icon-leading="arrow-up"></aui-button>
137
+ </span>
138
+ </aui-footer>
139
+ - description: Pagination footer
140
+ html: |-
141
+ <aui-footer dividers>
142
+ <span slot="leading">1–10 of 48</span>
143
+ <span slot="trailing">
144
+ <aui-button ghost icon-leading="caret-left" label="Previous" hide-label></aui-button>
145
+ <aui-button ghost icon-leading="caret-right" label="Next" hide-label></aui-button>
146
+ </span>
147
+ </aui-footer>
@@ -0,0 +1,87 @@
1
+ name: aui-grid
2
+ tag: aui-grid
3
+ type: element
4
+ summary: CSS grid container with column shorthand.
5
+ description: |
6
+ Grid layout container. Accepts cols attribute for equal-width columns. Default is a single column. Gap scales with density.
7
+ presentational:
8
+ density:
9
+ syntax: key-value
10
+ attribute: density
11
+ cascades: true
12
+ default: regular
13
+ values:
14
+ - compact
15
+ - spacious
16
+ description: Controls gap compression.
17
+ attributes:
18
+ cols:
19
+ syntax: key-value
20
+ type: enum
21
+ values:
22
+ - "2"
23
+ - "3"
24
+ - "4"
25
+ - "5"
26
+ - "6"
27
+ default: null
28
+ description: |
29
+ Number of equal-width grid columns via repeat(N, 1fr). Default is a single column when absent.
30
+ layout:
31
+ gap:
32
+ syntax: key-value
33
+ attribute: gap
34
+ values:
35
+ - "0"
36
+ - "1"
37
+ - "2"
38
+ - "3"
39
+ - "4"
40
+ - "5"
41
+ - "6"
42
+ - "7"
43
+ description: Explicit gap size (0–7 space units). Overrides density-driven gap.
44
+ content:
45
+ model: block
46
+ accepts: any
47
+ required: true
48
+ min-children: 1
49
+ description: |
50
+ Grid children become grid items. Each child occupies one cell by default. Use CSS grid-column/grid-row on children for spanning.
51
+ slots:
52
+ default:
53
+ accepts:
54
+ - any
55
+ required: true
56
+ description: Grid cell children.
57
+ composition:
58
+ parents:
59
+ - aui-stack
60
+ - aui-content
61
+ - aui-inset
62
+ - div
63
+ - section
64
+ - main
65
+ children: any
66
+ context: |
67
+ Use for card grids, form layouts with columns, dashboard panels. For simple vertical/horizontal stacking, prefer aui-stack.
68
+ tokens:
69
+ spacing:
70
+ - --aui-pad-gap-container
71
+ examples:
72
+ - description: Three-column grid
73
+ html: |-
74
+ <aui-grid cols="3">
75
+ <div>1</div>
76
+ <div>2</div>
77
+ <div>3</div>
78
+ <div>4</div>
79
+ <div>5</div>
80
+ <div>6</div>
81
+ </aui-grid>
82
+ - description: Two-column grid
83
+ html: |-
84
+ <aui-grid cols="2">
85
+ <div>Left</div>
86
+ <div>Right</div>
87
+ </aui-grid>
@@ -2,32 +2,24 @@ name: aui-gripper
2
2
  tag: aui-gripper
3
3
  type: component
4
4
  summary: Resize handle for panes and resizable containers.
5
- description: >
6
- A draggable separator that emits resize events with delta values.
7
- Supports both horizontal (col-resize) and vertical (row-resize)
8
- orientations. Keyboard resizing via arrow keys. Has a 10px hit area
9
- with a 2px feedback line at rest (border-muted) that expands to a
10
- 6px accent bar on click. Width/height transition is animated between
11
- rest and active states.
12
-
5
+ description: |
6
+ A draggable separator that emits resize events with delta values. Supports both horizontal (col-resize) and vertical (row-resize) orientations. Keyboard resizing via arrow keys. Has a 10px hit area with a 2px feedback line at rest (border-muted) that expands to a 6px accent bar on click. Width/height transition is animated between rest and active states.
13
7
  base: AgentElement
14
-
15
8
  attributes:
16
9
  orientation:
17
10
  syntax: key-value
18
11
  type: enum
19
- values: [horizontal, vertical]
12
+ values:
13
+ - horizontal
14
+ - vertical
20
15
  default: horizontal
21
- description: >
22
- Drag axis. Horizontal = vertical divider (drag left/right).
23
- Vertical = horizontal divider (drag up/down).
24
-
16
+ description: |
17
+ Drag axis. Horizontal = vertical divider (drag left/right). Vertical = horizontal divider (drag up/down).
25
18
  disabled:
26
19
  syntax: boolean
27
20
  type: boolean
28
21
  default: false
29
22
  description: Prevents drag interaction.
30
-
31
23
  a11y:
32
24
  role: separator
33
25
  keyboard:
@@ -38,7 +30,6 @@ a11y:
38
30
  Shift+Arrow: Resize by 10px instead of 1px.
39
31
  aria:
40
32
  aria-orientation: Set from orientation attribute.
41
-
42
33
  tokens:
43
34
  - name: --aui-gripper-color
44
35
  default: var(--aui-border-muted)
@@ -61,7 +52,6 @@ tokens:
61
52
  - name: --aui-gripper-border-radius-dragging
62
53
  default: 6px
63
54
  description: Border radius of the accent bar while dragging.
64
-
65
55
  events:
66
56
  aui:resize-start:
67
57
  description: Fired when drag begins.
@@ -69,10 +59,8 @@ events:
69
59
  description: Fired on drag movement. detail contains dx, dy, delta.
70
60
  aui:resize-end:
71
61
  description: Fired when drag ends. detail contains final dx, dy, delta.
72
-
73
62
  examples:
74
- - html: <aui-gripper></aui-gripper>
75
- description: Default horizontal gripper (drag left/right).
76
-
77
- - html: <aui-gripper orientation="vertical"></aui-gripper>
78
- description: Vertical gripper (drag up/down).
63
+ - description: Default horizontal gripper (drag left/right)
64
+ html: <aui-gripper></aui-gripper>
65
+ - description: Vertical gripper (drag up/down)
66
+ html: <aui-gripper orientation="vertical"></aui-gripper>