@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,36 +2,30 @@ name: aui-agent-seeds
2
2
  tag: aui-agent-seeds
3
3
  type: component
4
4
  summary: Suggestion chips for pre-seeded quick responses.
5
- description: >
6
- Renders a wrapped row of outline-styled chips from a JSON options array.
7
- Each chip fires aui:seed-select on click with the option's value and label.
8
-
5
+ description: |
6
+ Renders a wrapped row of outline-styled chips from a JSON options array. Each chip fires aui:seed-select on click with the option's value and label.
9
7
  base: AgentElement
10
-
11
8
  attributes:
12
9
  options:
13
10
  syntax: key-value
14
11
  type: string
15
12
  default: ""
16
- description: >
13
+ description: |
17
14
  JSON array of { value, label, icon? } objects.
18
-
19
15
  disabled:
20
16
  syntax: boolean
21
17
  type: boolean
22
18
  default: false
23
19
  description: Disables all chips.
24
-
25
20
  events:
26
21
  aui:seed-select:
27
- description: >
28
- Fired when a chip is clicked.
29
- detail contains value and label.
30
-
22
+ description: |
23
+ Fired when a chip is clicked. detail contains value and label.
31
24
  composition:
32
- parents: [aui-agent-message, aui-agent-feed]
25
+ parents:
26
+ - aui-agent-message
27
+ - aui-agent-feed
33
28
  children: []
34
-
35
29
  tokens:
36
30
  - name: --aui-agent-seeds-padding-block
37
31
  default: var(--aui-agent-seed-pad-block, var(--aui-space))
@@ -43,13 +37,13 @@ tokens:
43
37
  default: var(--aui-agent-seed-gap, var(--aui-space))
44
38
  description: Gap between chip rows.
45
39
  - name: --aui-agent-seeds-chip-gap
46
- default: "calc(var(--aui-space) * 0.5)"
40
+ default: calc(var(--aui-space) * 0.5)
47
41
  description: Gap between icon and label within a chip.
48
42
  - name: --aui-agent-seeds-chip-padding-block
49
- default: "calc(var(--aui-space) * 0.5)"
43
+ default: calc(var(--aui-space) * 0.5)
50
44
  description: Block padding of each chip.
51
45
  - name: --aui-agent-seeds-chip-padding-inline
52
- default: "calc(var(--aui-space) * 1.5)"
46
+ default: calc(var(--aui-space) * 1.5)
53
47
  description: Inline padding of each chip.
54
48
  - name: --aui-agent-seeds-chip-font-family
55
49
  default: var(--aui-font-family)
@@ -84,14 +78,12 @@ tokens:
84
78
  - name: --aui-agent-seeds-chip-background-active
85
79
  default: var(--aui-fill-active, var(--aui-action-active))
86
80
  description: Background of chips when active/pressed.
87
-
88
81
  examples:
89
- - html: |
82
+ - description: Quick action suggestions — common follow-up actions presented as selectable chips below the composer or a message
83
+ html: |-
90
84
  <aui-agent-seeds options='[{"value":"clarify","label":"Clarify user problem"},{"value":"context","label":"Define user context"},{"value":"deliverable","label":"Select deliverable"},{"value":"timeline","label":"Set timeline"}]'>
91
85
  </aui-agent-seeds>
92
- description: Quick action suggestionscommon follow-up actions presented as selectable chips below the composer or a message.
93
-
94
- - html: |
95
- <aui-agent-seeds options='[{"value":"write-email","label":"Draft an email","icon":"mail"},{"value":"summarize","label":"Summarize a document","icon":"file-text"},{"value":"brainstorm","label":"Brainstorm ideas","icon":"lightbulb"},{"value":"analyze-data","label":"Analyze data","icon":"chart-bar"}]'>
86
+ - description: Conversation starters with icons used on an empty chat state to help users begin a session with common tasks
87
+ html: |-
88
+ <aui-agent-seeds options='[{"value":"write-email","label":"Draft an email","icon":"envelope"},{"value":"summarize","label":"Summarize a document","icon":"file-text"},{"value":"brainstorm","label":"Brainstorm ideas","icon":"lightbulb"},{"value":"analyze-data","label":"Analyze data","icon":"chart-bar"}]'>
96
89
  </aui-agent-seeds>
97
- description: Conversation starters with icons — used on an empty chat state to help users begin a session with common tasks.
@@ -2,25 +2,19 @@ name: aui-agent-text
2
2
  tag: aui-agent-text
3
3
  type: component
4
4
  summary: Markdown renderer for chat message content.
5
- description: >
6
- Renders a markdown subset (paragraphs, headings, lists, code fences,
7
- inline code, bold, italic, links, blockquotes) to sanitized HTML.
8
- Content can come from text content or the content property.
9
- Debounced rendering during streaming updates.
10
-
5
+ description: |
6
+ Renders a markdown subset (paragraphs, headings, lists, code fences, inline code, bold, italic, links, blockquotes) to sanitized HTML. Content can come from text content or the content property. Debounced rendering during streaming updates.
11
7
  base: AgentElement
12
-
13
8
  attributes:
14
9
  format:
15
10
  syntax: key-value
16
11
  type: string
17
12
  default: markdown
18
13
  description: Render format — markdown (default) or plain.
19
-
20
14
  composition:
21
- parents: [aui-agent-message]
15
+ parents:
16
+ - aui-agent-message
22
17
  children: []
23
-
24
18
  tokens:
25
19
  - name: --aui-agent-text-padding-block
26
20
  default: var(--aui-agent-bubble-pad-block, 0.625rem)
@@ -29,7 +23,7 @@ tokens:
29
23
  default: var(--aui-agent-bubble-pad-inline, 0.875rem)
30
24
  description: Inline padding of the text container.
31
25
  - name: --aui-agent-text-prose-gap
32
- default: "var(--aui-agent-prose-gap, calc(var(--aui-space) * 2))"
26
+ default: var(--aui-agent-prose-gap, calc(var(--aui-space) * 2))
33
27
  description: Vertical gap between prose elements (paragraphs, headings, etc.).
34
28
  - name: --aui-agent-text-heading-font-weight
35
29
  default: var(--aui-font-weight-bold, 600)
@@ -47,16 +41,16 @@ tokens:
47
41
  default: var(--aui-control, var(--aui-fill))
48
42
  description: Background of inline code spans.
49
43
  - name: --aui-agent-text-code-border-radius
50
- default: "calc(var(--aui-radius) * 0.5)"
44
+ default: calc(var(--aui-radius) * 0.5)
51
45
  description: Border radius of inline code spans.
52
46
  - name: --aui-agent-text-pre-background
53
47
  default: var(--aui-control, var(--aui-fill))
54
48
  description: Background of code blocks.
55
49
  - name: --aui-agent-text-pre-border-radius
56
- default: "calc(var(--aui-radius) * 0.5)"
50
+ default: calc(var(--aui-radius) * 0.5)
57
51
  description: Border radius of code blocks.
58
52
  - name: --aui-agent-text-pre-padding
59
- default: "calc(var(--aui-space) * 2)"
53
+ default: calc(var(--aui-space) * 2)
60
54
  description: Padding inside code blocks.
61
55
  - name: --aui-agent-text-link-color
62
56
  default: var(--aui-ink-accent, var(--aui-accent-solid))
@@ -67,9 +61,9 @@ tokens:
67
61
  - name: --aui-agent-text-hr-border
68
62
  default: var(--aui-border-muted)
69
63
  description: Border color of horizontal rules.
70
-
71
64
  examples:
72
- - html: |
65
+ - description: Rich markdown rendering with headings, code fences, bullet lists, blockquotes, bold text, and links
66
+ html: |-
73
67
  <aui-agent-text>## Getting Started
74
68
 
75
69
  To install the package, run:
@@ -87,13 +81,10 @@ examples:
87
81
  > Note: Requires a modern browser with custom element support.
88
82
 
89
83
  See the [documentation](https://example.com/docs) for the full API reference.</aui-agent-text>
90
- description: Rich markdown rendering with headings, code fences, bullet lists, blockquotes, bold text, and links.
91
-
92
- - html: |
93
- <aui-agent-text format="plain">The deployment completed successfully. All 47 tests passed and the build artifact was uploaded to s3://releases/v2.1.0/bundle.tar.gz. No breaking changes detected.</aui-agent-text>
94
- description: Plain text mode — no markdown processing, rendered as-is.
95
-
96
- - html: |
84
+ - description: Plain text mode no markdown processing, rendered as-is
85
+ html: <aui-agent-text format="plain">The deployment completed successfully. All 47 tests passed and the build artifact was uploaded to s3://releases/v2.1.0/bundle.tar.gz. No breaking changes detected.</aui-agent-text>
86
+ - description: Streaming content — text cuts off mid-sentence while the response is still being generated. The renderer handles partial markdown gracefully
87
+ html: |-
97
88
  <aui-agent-text>Here are the three main approaches to state management:
98
89
 
99
90
  1. **Local component state** — simplest, works for isolated UI
@@ -101,4 +92,3 @@ examples:
101
92
  3. **External store** — best for complex, cross-cutting state
102
93
 
103
94
  For your use case, I'd recommend starting with option 2 and migrating to an external store only if you hit performance issues with deeply nested...</aui-agent-text>
104
- description: Streaming content — text cuts off mid-sentence while the response is still being generated. The renderer handles partial markdown gracefully.
@@ -2,44 +2,38 @@ name: aui-agent-thread
2
2
  tag: aui-agent-thread
3
3
  type: component
4
4
  summary: Message group with 2x2 grid layout for avatar, context, and bubbles.
5
- description: >
6
- Cluster of messages from the same sender. Provides a 2x2 grid layout:
7
- col 1 = avatar (bottom-aligned), col 2 row 1 = context area (metadata),
8
- col 2 row 2 = bubbles area (message flex column). A MutationObserver
9
- routes dynamically added children into the correct wrapper.
10
-
5
+ description: |
6
+ Cluster of messages from the same sender. Provides a 2x2 grid layout: col 1 = avatar (bottom-aligned), col 2 row 1 = context area (metadata), col 2 row 2 = bubbles area (message flex column). A MutationObserver routes dynamically added children into the correct wrapper.
11
7
  base: AgentElement
12
-
13
8
  attributes:
14
9
  role:
15
10
  syntax: key-value
16
11
  type: string
17
12
  default: ""
18
13
  description: Message role — user, assistant, or system.
19
-
20
14
  sender:
21
15
  syntax: key-value
22
16
  type: string
23
17
  default: ""
24
18
  description: Display name of the sender.
25
-
26
19
  avatar-align:
27
20
  syntax: key-value
28
21
  type: string
29
22
  default: ""
30
23
  description: Avatar vertical alignment — top, center, or bottom (default).
31
-
32
24
  a11y:
33
25
  role: group
34
26
  aria-label: Messages from {sender}
35
-
36
27
  composition:
37
- parents: [aui-agent-feed]
38
- children: [aui-avatar, aui-agent-message, any]
39
-
28
+ parents:
29
+ - aui-agent-feed
30
+ children:
31
+ - aui-avatar
32
+ - aui-agent-message
33
+ - any
40
34
  tokens:
41
35
  - name: --aui-agent-thread-column-gap
42
- default: "var(--aui-agent-message-gap, calc(var(--aui-space) * 2))"
36
+ default: var(--aui-agent-message-gap, calc(var(--aui-space) * 2))
43
37
  description: Gap between avatar column and message column.
44
38
  - name: --aui-agent-thread-max-width
45
39
  default: var(--aui-agent-bubble-max-width, 85%)
@@ -56,26 +50,24 @@ tokens:
56
50
  - name: --aui-agent-thread-user-avatar-color
57
51
  default: var(--aui-agent-bubble-user-ink)
58
52
  description: Text/icon color of the user avatar.
59
-
60
53
  examples:
61
- - html: |
54
+ - description: Assistant thread with avatar and a single message bubble
55
+ html: |-
62
56
  <aui-agent-thread role="assistant" sender="Claude">
63
57
  <aui-avatar>C</aui-avatar>
64
58
  <aui-agent-message role="assistant">
65
59
  <aui-agent-text>I've analyzed your codebase and found three potential performance bottlenecks in the data processing pipeline. Let me walk through each one.</aui-agent-text>
66
60
  </aui-agent-message>
67
61
  </aui-agent-thread>
68
- description: Assistant thread with avatar and a single message bubble.
69
-
70
- - html: |
62
+ - description: User thread right-aligned with no avatar
63
+ html: |-
71
64
  <aui-agent-thread role="user" sender="Sarah">
72
65
  <aui-agent-message role="user">
73
66
  <aui-agent-text format="plain">Can you refactor the authentication module to use JWT instead of session cookies?</aui-agent-text>
74
67
  </aui-agent-message>
75
68
  </aui-agent-thread>
76
- description: User thread right-aligned with no avatar.
77
-
78
- - html: |
69
+ - description: Multi-message thread with context metadata (model, latency, token count) and top-aligned avatar
70
+ html: |-
79
71
  <aui-agent-thread role="assistant" sender="Claude" avatar-align="top">
80
72
  <aui-avatar>C</aui-avatar>
81
73
  <div data-role="context">
@@ -99,4 +91,3 @@ examples:
99
91
  <aui-agent-text>I've split the token generation and verification into separate functions for better testability. The refresh token rotation is handled in the middleware layer.</aui-agent-text>
100
92
  </aui-agent-message>
101
93
  </aui-agent-thread>
102
- description: Multi-message thread with context metadata (model, latency, token count) and top-aligned avatar.
@@ -2,53 +2,48 @@ name: aui-alert
2
2
  tag: aui-alert
3
3
  type: component
4
4
  summary: Contextual banner for status messages.
5
- description: >
6
- Inline alert banner with intent-based coloring via boolean
7
- attributes (info, success, warning, danger). Left border accent
8
- stripe signals severity. Supports rich content including
9
- headings and paragraphs. Optional dismissable behavior via JS.
10
-
5
+ description: |
6
+ Inline alert banner with intent-based coloring via boolean attributes (info, success, warning, danger). Left border accent stripe signals severity. Supports rich content including headings and paragraphs. Optional dismissable behavior via JS.
11
7
  base: AgentElement
12
-
13
- # ── Presentational attributes ─────────────────────────────
14
-
15
8
  presentational:
16
9
  intent:
17
10
  syntax: boolean
18
11
  exclusive: true
19
12
  cascades: false
20
13
  default: info
21
- values: [accent, info, success, warning, danger]
14
+ values:
15
+ - accent
16
+ - info
17
+ - success
18
+ - warning
19
+ - danger
22
20
  description: Visual intent controlling background tint and border accent color.
23
-
24
- # ── Modifiers ─────────────────────────────────────────────
25
-
26
21
  modifiers:
27
22
  dismissable:
28
23
  syntax: boolean
29
- description: >
24
+ description: |
30
25
  Shows a close button area. JS removes the element on click.
31
-
32
- # ── Content model ─────────────────────────────────────────
33
-
34
26
  content:
35
27
  model: flow
36
- accepts: [text, strong, p, aui-text, aui-link]
28
+ accepts:
29
+ - text
30
+ - strong
31
+ - p
32
+ - aui-text
33
+ - aui-link
37
34
  required: true
38
- description: >
39
- Message content. Can be plain text or rich HTML with
40
- headings and paragraphs for multi-line alerts.
41
-
42
- # ── Slots ─────────────────────────────────────────────────
43
-
35
+ description: |
36
+ Message content. Can be plain text or rich HTML with headings and paragraphs for multi-line alerts.
44
37
  slots:
45
38
  default:
46
- accepts: [text, strong, p, aui-text, aui-link]
39
+ accepts:
40
+ - text
41
+ - strong
42
+ - p
43
+ - aui-text
44
+ - aui-link
47
45
  required: true
48
46
  description: Alert message content.
49
-
50
- # ── CSS tokens consumed ──────────────────────────────────
51
-
52
47
  tokens:
53
48
  spacing:
54
49
  - --aui-alert-gap
@@ -61,19 +56,26 @@ tokens:
61
56
  - --aui-alert-font-size
62
57
  shape:
63
58
  - --aui-alert-radius
64
-
65
- # ── Examples ──────────────────────────────────────────────
66
-
67
59
  examples:
68
- - html: <aui-alert>Your session will expire in 5 minutes.</aui-alert>
69
- description: Default info alert.
70
-
71
- - html: <aui-alert success>Operation completed successfully.</aui-alert>
72
- description: Success alert.
73
-
74
- - html: |
60
+ - description: Default info alert
61
+ html: <aui-alert>Your session will expire in 5 minutes.</aui-alert>
62
+ - description: Success alert
63
+ html: <aui-alert success>Operation completed successfully.</aui-alert>
64
+ - description: Warning alert
65
+ html: <aui-alert warning>This action cannot be undone.</aui-alert>
66
+ - description: Danger alert
67
+ html: <aui-alert danger>Failed to save changes. Please try again.</aui-alert>
68
+ - description: Rich content danger alert
69
+ html: |-
75
70
  <aui-alert danger>
76
71
  <strong>Deployment failed</strong>
77
72
  <p>Build step 3 returned exit code 1. Check logs for details.</p>
78
73
  </aui-alert>
79
- description: Rich content danger alert.
74
+ - description: All four intent variants stacked
75
+ html: |-
76
+ <aui-stack gap="3">
77
+ <aui-alert>Informational message.</aui-alert>
78
+ <aui-alert success>Success message.</aui-alert>
79
+ <aui-alert warning>Warning message.</aui-alert>
80
+ <aui-alert danger>Danger message.</aui-alert>
81
+ </aui-stack>
@@ -2,73 +2,64 @@ name: aui-avatar-group
2
2
  tag: aui-avatar-group
3
3
  type: component
4
4
  summary: Overlapping avatar stack with automatic overflow counter.
5
- description: >
6
- Displays child aui-avatar elements in an overlapping row with
7
- descending z-index. When the max attribute is set and children
8
- exceed that count, excess avatars are hidden and a +N counter
9
- is stamped. Size attribute propagates to child avatars.
10
-
5
+ description: |
6
+ Displays child aui-avatar elements in an overlapping row with descending z-index. When the max attribute is set and children exceed that count, excess avatars are hidden and a +N counter is stamped. Size attribute propagates to child avatars.
11
7
  base: AgentElement
12
-
13
- # -- Component attributes ------------------------------------------
14
-
15
8
  attributes:
16
9
  max:
17
10
  syntax: key-value
18
11
  type: string
19
12
  default: ""
20
- description: >
21
- Maximum visible avatars. Remaining are hidden and a +N
22
- overflow counter is shown.
23
-
13
+ description: |
14
+ Maximum visible avatars. Remaining are hidden and a +N overflow counter is shown.
24
15
  size:
25
16
  syntax: key-value
26
17
  type: string
27
18
  default: ""
28
- values: [xs, sm, lg]
29
- description: >
30
- Passed through to child aui-avatar elements for consistent
31
- sizing across the group.
32
-
33
- # -- Content model -------------------------------------------------
34
-
19
+ values:
20
+ - xs
21
+ - sm
22
+ - lg
23
+ description: |
24
+ Passed through to child aui-avatar elements for consistent sizing across the group.
35
25
  content:
36
26
  model: block
37
- accepts: [aui-avatar]
27
+ accepts:
28
+ - aui-avatar
38
29
  required: true
39
- description: >
40
- One or more aui-avatar children. Order determines stacking
41
- (first avatar on top, highest z-index).
42
-
43
- # -- Slots ---------------------------------------------------------
44
-
30
+ description: |
31
+ One or more aui-avatar children. Order determines stacking (first avatar on top, highest z-index).
45
32
  slots:
46
33
  default:
47
- accepts: [aui-avatar]
34
+ accepts:
35
+ - aui-avatar
48
36
  required: true
49
37
  description: Avatar children to display in the overlapping stack.
50
-
51
- # -- Composition ---------------------------------------------------
52
-
53
38
  composition:
54
- parents: [aui-stack, aui-header, aui-footer, div, span]
55
- children: [aui-avatar]
56
- context: >
57
- Inline-flex element. Use inside headers, cards, list items,
58
- or stacks. Commonly paired with team/contributor displays.
59
-
60
- # -- Examples ------------------------------------------------------
61
-
39
+ parents:
40
+ - aui-stack
41
+ - aui-header
42
+ - aui-footer
43
+ - div
44
+ - span
45
+ children:
46
+ - aui-avatar
47
+ context: |
48
+ Inline-flex element. Use inside headers, cards, list items, or stacks. Commonly paired with team/contributor displays.
62
49
  examples:
63
- - html: |
50
+ - description: Three overlapping avatars
51
+ html: |-
64
52
  <aui-avatar-group>
65
53
  <aui-avatar>A</aui-avatar>
66
54
  <aui-avatar>B</aui-avatar>
67
55
  <aui-avatar>C</aui-avatar>
68
56
  </aui-avatar-group>
69
- description: Basic avatar group showing all avatars.
70
57
 
71
- - html: |
58
+ <!-- ===============================================================
59
+ MAX OVERFLOW
60
+ =============================================================== -->
61
+ - description: Max 3, showing +2 overflow counter
62
+ html: |-
72
63
  <aui-avatar-group max="3">
73
64
  <aui-avatar>A</aui-avatar>
74
65
  <aui-avatar>B</aui-avatar>
@@ -76,11 +67,47 @@ examples:
76
67
  <aui-avatar>D</aui-avatar>
77
68
  <aui-avatar>E</aui-avatar>
78
69
  </aui-avatar-group>
79
- description: Avatar group with max=3 showing +2 overflow.
70
+ - description: Max 2, showing +4 overflow counter
71
+ html: |-
72
+ <aui-avatar-group max="2">
73
+ <aui-avatar>A</aui-avatar>
74
+ <aui-avatar>B</aui-avatar>
75
+ <aui-avatar>C</aui-avatar>
76
+ <aui-avatar>D</aui-avatar>
77
+ <aui-avatar>E</aui-avatar>
78
+ <aui-avatar>F</aui-avatar>
79
+ </aui-avatar-group>
80
80
 
81
- - html: |
81
+ <!-- ===============================================================
82
+ SIZE VARIANTS
83
+ =============================================================== -->
84
+ - description: Small size avatar group
85
+ html: |-
82
86
  <aui-avatar-group size="sm">
83
87
  <aui-avatar>A</aui-avatar>
84
88
  <aui-avatar>B</aui-avatar>
89
+ <aui-avatar>C</aui-avatar>
90
+ </aui-avatar-group>
91
+ - description: Large size avatar group
92
+ html: |-
93
+ <aui-avatar-group size="lg">
94
+ <aui-avatar>A</aui-avatar>
95
+ <aui-avatar>B</aui-avatar>
96
+ <aui-avatar>C</aui-avatar>
97
+ </aui-avatar-group>
98
+
99
+ <!-- ===============================================================
100
+ MANY AVATARS
101
+ =============================================================== -->
102
+ - description: Team display with max 4
103
+ html: |-
104
+ <aui-avatar-group max="4">
105
+ <aui-avatar>AL</aui-avatar>
106
+ <aui-avatar>BK</aui-avatar>
107
+ <aui-avatar>CJ</aui-avatar>
108
+ <aui-avatar>DM</aui-avatar>
109
+ <aui-avatar>EP</aui-avatar>
110
+ <aui-avatar>FR</aui-avatar>
111
+ <aui-avatar>GS</aui-avatar>
112
+ <aui-avatar>HT</aui-avatar>
85
113
  </aui-avatar-group>
86
- description: Small size avatars.
@@ -0,0 +1,99 @@
1
+ name: aui-avatar
2
+ tag: aui-avatar
3
+ type: element
4
+ summary: Avatar circle or square showing initials or image.
5
+ description: |
6
+ Displays user initials or a profile image. Circle by default, square with the square modifier. Sized by --aui-size token. Use for user profiles, contact lists, comment threads.
7
+ presentational:
8
+ size:
9
+ syntax: key-value
10
+ attribute: size
11
+ cascades: false
12
+ default: medium
13
+ values:
14
+ - xs
15
+ - sm
16
+ - md
17
+ - lg
18
+ - xl
19
+ description: Controls avatar dimensions.
20
+ intent:
21
+ syntax: boolean
22
+ exclusive: true
23
+ cascades: false
24
+ default: neutral
25
+ values:
26
+ - accent
27
+ - info
28
+ - success
29
+ - warning
30
+ - danger
31
+ description: Color family for the avatar background.
32
+ modifiers:
33
+ square:
34
+ syntax: boolean
35
+ description: |
36
+ Uses border-radius (from --aui-radius) instead of circle. Use for workspace/team/app icons rather than people.
37
+ content:
38
+ model: inline
39
+ accepts:
40
+ - text
41
+ - img
42
+ required: true
43
+ description: |
44
+ 1-2 character initials as text, or an img element for photos. When using img, the image fills the avatar and clips to the circle/square shape via object-fit: cover.
45
+ slots:
46
+ default:
47
+ accepts:
48
+ - text
49
+ - img
50
+ required: true
51
+ description: |
52
+ Initials text (1-2 uppercase letters) or an img element.
53
+ composition:
54
+ parents:
55
+ - aui-stack
56
+ - aui-header
57
+ - span
58
+ - div
59
+ - td
60
+ children: null
61
+ context: |
62
+ Inline element. Use in headers, comment threads, user lists. Group with aui-stack direction="row" for avatar stacks. Pair with text for "avatar + name" patterns.
63
+ constraints:
64
+ - when: img child
65
+ require: alt attribute on img
66
+ reason: |
67
+ Avatar images need alt text for screen readers. Set alt to the person's name or a descriptive label.
68
+ tokens:
69
+ sizing:
70
+ - --aui-size
71
+ - --aui-font-size
72
+ color:
73
+ - --aui-control
74
+ - --aui-ink-muted
75
+ shape:
76
+ - --aui-radius
77
+ examples:
78
+ - description: Default avatar with initials
79
+ html: <aui-avatar>KG</aui-avatar>
80
+ - description: Accent-colored avatar
81
+ html: <aui-avatar accent>AI</aui-avatar>
82
+ - description: Square avatar for non-person entities
83
+ html: <aui-avatar square>SQ</aui-avatar>
84
+ - description: Avatar size comparison
85
+ html: |-
86
+ <aui-stack direction="row" gap="2" align-items="center">
87
+ <aui-avatar size="sm">KG</aui-avatar>
88
+ <aui-avatar>KG</aui-avatar>
89
+ <aui-avatar size="lg">KG</aui-avatar>
90
+ </aui-stack>
91
+ - description: Avatars with intent colors
92
+ html: |-
93
+ <aui-stack direction="row" gap="2" align-items="center">
94
+ <aui-avatar accent>A</aui-avatar>
95
+ <aui-avatar info>B</aui-avatar>
96
+ <aui-avatar success>C</aui-avatar>
97
+ <aui-avatar warning>D</aui-avatar>
98
+ <aui-avatar danger>E</aui-avatar>
99
+ </aui-stack>