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

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 (151) 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 +4570 -1641
  5. package/dist/api.tokens.json +34 -2
  6. package/dist/api.tokens.yaml +26 -2
  7. package/dist/chunks/{agent-C72JZNe6.js → agent-BF_R_HJk.js} +65 -61
  8. package/dist/chunks/{agent-C72JZNe6.js.map → agent-BF_R_HJk.js.map} +1 -1
  9. package/dist/chunks/{empty-state-5M3uR5CM.js → meter-Dju8ik6C.js} +1169 -934
  10. package/dist/chunks/meter-Dju8ik6C.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/code/code.d.ts +0 -0
  18. package/dist/components/color-area/color-area.d.ts +2 -1
  19. package/dist/components/color-picker/color-picker.d.ts +1 -0
  20. package/dist/components/color-picker/oklch-utils.d.ts +18 -0
  21. package/dist/components/color-slider/color-slider.d.ts +1 -1
  22. package/dist/components/color-swatch/color-swatch.d.ts +0 -0
  23. package/dist/components/content/content.d.ts +0 -0
  24. package/dist/components/description-list/description-list.d.ts +0 -0
  25. package/dist/components/divider/divider.d.ts +0 -0
  26. package/dist/components/editor.js +1 -1
  27. package/dist/components/fieldset/fieldset.d.ts +0 -0
  28. package/dist/components/footer/footer.d.ts +0 -0
  29. package/dist/components/graph.js +1 -1
  30. package/dist/components/grid/grid.d.ts +0 -0
  31. package/dist/components/header/header.d.ts +0 -0
  32. package/dist/components/heading/heading.d.ts +0 -0
  33. package/dist/components/input-group/input-group.d.ts +0 -0
  34. package/dist/components/inset/inset.d.ts +0 -0
  35. package/dist/components/kbd/kbd.d.ts +0 -0
  36. package/dist/components/stack/stack.d.ts +0 -0
  37. package/dist/components/stat/stat.d.ts +4 -0
  38. package/dist/components/text/text.d.ts +0 -0
  39. package/dist/components/time-field/time-field.d.ts +1 -0
  40. package/dist/components/wrap/wrap.d.ts +0 -0
  41. package/dist/components.js +114 -127
  42. package/dist/components.js.map +1 -1
  43. package/dist/docs/blocks/login-two-column.yaml +6 -6
  44. package/dist/docs/blocks/profile-card.yaml +5 -5
  45. package/dist/docs/components/accordion-item.yaml +13 -21
  46. package/dist/docs/components/accordion.yaml +23 -29
  47. package/dist/docs/components/agent-activity.yaml +27 -39
  48. package/dist/docs/components/agent-feed.yaml +15 -22
  49. package/dist/docs/components/agent-input.yaml +238 -0
  50. package/dist/docs/components/agent-message.yaml +29 -48
  51. package/dist/docs/components/agent-panel.yaml +21 -24
  52. package/dist/docs/components/agent-prompt.yaml +28 -46
  53. package/dist/docs/components/agent-seeds.yaml +15 -23
  54. package/dist/docs/components/agent-text.yaml +14 -24
  55. package/dist/docs/components/agent-thread.yaml +15 -24
  56. package/dist/docs/components/alert.yaml +41 -39
  57. package/dist/docs/components/avatar-group.yaml +72 -45
  58. package/dist/docs/components/avatar.yaml +99 -0
  59. package/dist/docs/components/badge.yaml +110 -0
  60. package/dist/docs/components/bar.yaml +84 -0
  61. package/dist/docs/components/breadcrumb-item.yaml +8 -17
  62. package/dist/docs/components/breadcrumb.yaml +60 -25
  63. package/dist/docs/components/button-group.yaml +93 -0
  64. package/dist/docs/components/button.yaml +177 -261
  65. package/dist/docs/components/calendar-picker.yaml +14 -34
  66. package/dist/docs/components/calendar-range-picker.yaml +11 -29
  67. package/dist/docs/components/calendar.yaml +11 -29
  68. package/dist/docs/components/canvas.yaml +44 -61
  69. package/dist/docs/components/checkbox.yaml +37 -49
  70. package/dist/docs/components/chip.yaml +88 -54
  71. package/dist/docs/components/code-block.yaml +54 -53
  72. package/dist/docs/components/code.yaml +37 -0
  73. package/dist/docs/components/color-area.yaml +119 -0
  74. package/dist/docs/components/color-field.yaml +121 -0
  75. package/dist/docs/components/color-picker.yaml +64 -38
  76. package/dist/docs/components/color-slider.yaml +153 -0
  77. package/dist/docs/components/color-swatch.yaml +98 -0
  78. package/dist/docs/components/command.yaml +13 -18
  79. package/dist/docs/components/container.yaml +83 -73
  80. package/dist/docs/components/content.yaml +100 -0
  81. package/dist/docs/components/context-menu.yaml +11 -20
  82. package/dist/docs/components/date-field.yaml +81 -33
  83. package/dist/docs/components/description-list.yaml +81 -0
  84. package/dist/docs/components/disclosure-group.yaml +61 -42
  85. package/dist/docs/components/disclosure.yaml +60 -46
  86. package/dist/docs/components/divider.yaml +63 -0
  87. package/dist/docs/components/dropdown-menu.yaml +16 -25
  88. package/dist/docs/components/feed.yaml +15 -24
  89. package/dist/docs/components/field.yaml +50 -71
  90. package/dist/docs/components/fieldset.yaml +92 -0
  91. package/dist/docs/components/footer.yaml +147 -0
  92. package/dist/docs/components/grid.yaml +87 -0
  93. package/dist/docs/components/gripper.yaml +11 -23
  94. package/dist/docs/components/header.yaml +168 -0
  95. package/dist/docs/components/heading.yaml +54 -0
  96. package/dist/docs/components/hover-card.yaml +17 -25
  97. package/dist/docs/components/icon.yaml +32 -65
  98. package/dist/docs/components/input-group.yaml +102 -0
  99. package/dist/docs/components/input-otp.yaml +20 -19
  100. package/dist/docs/components/input.yaml +92 -132
  101. package/dist/docs/components/inset.yaml +59 -0
  102. package/dist/docs/components/kbd.yaml +57 -0
  103. package/dist/docs/components/link.yaml +36 -45
  104. package/dist/docs/components/meter.yaml +27 -38
  105. package/dist/docs/components/nav-item.yaml +51 -40
  106. package/dist/docs/components/noodles.yaml +72 -104
  107. package/dist/docs/components/option.yaml +12 -23
  108. package/dist/docs/components/pagination.yaml +21 -18
  109. package/dist/docs/components/pane.yaml +18 -32
  110. package/dist/docs/components/panes.yaml +19 -27
  111. package/dist/docs/components/progress-circle.yaml +64 -55
  112. package/dist/docs/components/progress.yaml +35 -51
  113. package/dist/docs/components/radio-group.yaml +99 -40
  114. package/dist/docs/components/radio.yaml +40 -41
  115. package/dist/docs/components/range.yaml +24 -27
  116. package/dist/docs/components/segmented-control.yaml +58 -17
  117. package/dist/docs/components/select.yaml +80 -100
  118. package/dist/docs/components/skeleton.yaml +39 -39
  119. package/dist/docs/components/sparkline.yaml +28 -45
  120. package/dist/docs/components/spinner.yaml +32 -33
  121. package/dist/docs/components/stack.yaml +126 -0
  122. package/dist/docs/components/stepper.yaml +31 -38
  123. package/dist/docs/components/switch.yaml +36 -47
  124. package/dist/docs/components/tab-panel.yaml +27 -18
  125. package/dist/docs/components/tab.yaml +25 -22
  126. package/dist/docs/components/table-header.yaml +22 -12
  127. package/dist/docs/components/tabs.yaml +103 -20
  128. package/dist/docs/components/tag-group.yaml +63 -47
  129. package/dist/docs/components/text.yaml +67 -0
  130. package/dist/docs/components/textarea.yaml +43 -60
  131. package/dist/docs/components/time-field.yaml +74 -33
  132. package/dist/docs/components/toast.yaml +13 -30
  133. package/dist/docs/components/tooltip.yaml +56 -49
  134. package/dist/docs/components/tree-item.yaml +9 -10
  135. package/dist/docs/components/tree.yaml +127 -10
  136. package/dist/docs/components/wrap.yaml +60 -0
  137. package/dist/docs/traits/toggle-theme.yaml +34 -0
  138. package/dist/element.js +1 -1
  139. package/dist/icons.js +79 -59
  140. package/dist/icons.js.map +1 -1
  141. package/dist/reactivity.js +2 -2
  142. package/dist/register.d.ts +0 -1
  143. package/dist/register.js +258 -244
  144. package/dist/register.js.map +1 -1
  145. package/dist/store.js +1 -1
  146. package/dist/traits/toggle-theme/toggle-theme.d.ts +0 -0
  147. package/dist/traits/toggle-theme/toggle-theme.trait.d.ts +2 -0
  148. package/dist/traits.js +528 -485
  149. package/dist/traits.js.map +1 -1
  150. package/package.json +1 -1
  151. package/dist/chunks/empty-state-5M3uR5CM.js.map +0 -1
@@ -2,27 +2,22 @@ name: aui-tabs
2
2
  tag: aui-tabs
3
3
  type: component
4
4
  summary: Tabbed interface with roving keyboard navigation.
5
- description: >
6
- Coordinator for aui-tab triggers and aui-tab-panel content.
7
- Handles selection, ARIA wiring, and keyboard navigation
8
- (arrow keys, Home/End). Supports horizontal and vertical layout.
9
-
5
+ description: |
6
+ Coordinator for aui-tab triggers and aui-tab-panel content. Handles selection, ARIA wiring, and keyboard navigation (arrow keys, Home/End). Supports horizontal and vertical layout.
10
7
  base: AgentElement
11
-
12
8
  attributes:
13
9
  value:
14
10
  syntax: key-value
15
11
  type: string
16
12
  default: ""
17
13
  description: Currently selected tab value.
18
-
19
14
  orientation:
20
15
  syntax: key-value
21
16
  type: enum
22
- values: [vertical]
17
+ values:
18
+ - vertical
23
19
  default: ""
24
20
  description: Layout direction. Default is horizontal.
25
-
26
21
  a11y:
27
22
  role: tablist
28
23
  keyboard:
@@ -32,15 +27,15 @@ a11y:
32
27
  ArrowUp: Select previous tab (vertical).
33
28
  Home: Select first tab.
34
29
  End: Select last tab.
35
-
36
30
  events:
37
31
  change:
38
32
  description: Fired when the active tab changes. detail.value is the new tab value.
39
-
40
33
  composition:
41
- parents: [any]
42
- children: [aui-tab, aui-tab-panel]
43
-
34
+ parents:
35
+ - any
36
+ children:
37
+ - aui-tab
38
+ - aui-tab-panel
44
39
  tokens:
45
40
  - name: --aui-tabs-separator-color
46
41
  default: var(--aui-border-muted)
@@ -54,22 +49,110 @@ tokens:
54
49
  - name: --aui-tabs-indicator-radius
55
50
  default: 1px
56
51
  description: Border radius of the indicator bar ends.
57
-
58
52
  examples:
59
- - html: |
53
+ - description: Basic tabbed interface
54
+ html: |-
60
55
  <aui-tabs value="general">
61
56
  <aui-tab value="general">General</aui-tab>
62
57
  <aui-tab value="advanced">Advanced</aui-tab>
63
58
  <aui-tab-panel value="general">General content</aui-tab-panel>
64
59
  <aui-tab-panel value="advanced">Advanced content</aui-tab-panel>
65
60
  </aui-tabs>
66
- description: Basic tabbed interface.
67
-
68
- - html: |
61
+ - description: Vertical tabs
62
+ html: |-
69
63
  <aui-tabs orientation="vertical" value="profile">
70
64
  <aui-tab value="profile">Profile</aui-tab>
71
65
  <aui-tab value="security">Security</aui-tab>
72
66
  <aui-tab-panel value="profile">Profile settings</aui-tab-panel>
73
67
  <aui-tab-panel value="security">Security settings</aui-tab-panel>
74
68
  </aui-tabs>
75
- description: Vertical tabs.
69
+ - description: Horizontal tabs with 5 tabs and rich panel content
70
+ html: |-
71
+ <aui-tabs value="overview">
72
+ <aui-tab value="overview">Overview</aui-tab>
73
+ <aui-tab value="activity">Activity</aui-tab>
74
+ <aui-tab value="settings">Settings</aui-tab>
75
+ <aui-tab value="members">Members</aui-tab>
76
+ <aui-tab value="billing">Billing</aui-tab>
77
+ <aui-tab-panel value="overview">
78
+ <aui-stack gap="sm">
79
+ <aui-text size="lg" weight="medium">Project Overview</aui-text>
80
+ <aui-text>Summary of recent project activity and key metrics.</aui-text>
81
+ </aui-stack>
82
+ </aui-tab-panel>
83
+ <aui-tab-panel value="activity">
84
+ <aui-text>Recent activity feed goes here.</aui-text>
85
+ </aui-tab-panel>
86
+ <aui-tab-panel value="settings">
87
+ <aui-text>Project configuration options.</aui-text>
88
+ </aui-tab-panel>
89
+ <aui-tab-panel value="members">
90
+ <aui-text>Team member list and roles.</aui-text>
91
+ </aui-tab-panel>
92
+ <aui-tab-panel value="billing">
93
+ <aui-text>Billing and subscription details.</aui-text>
94
+ </aui-tab-panel>
95
+ </aui-tabs>
96
+ - description: Tab with a disabled tab
97
+ html: |-
98
+ <aui-tabs value="edit">
99
+ <aui-tab value="edit">Edit</aui-tab>
100
+ <aui-tab value="preview">Preview</aui-tab>
101
+ <aui-tab value="publish" disabled>Publish</aui-tab>
102
+ <aui-tab value="history">History</aui-tab>
103
+ <aui-tab-panel value="edit">
104
+ <aui-text>Editor content area.</aui-text>
105
+ </aui-tab-panel>
106
+ <aui-tab-panel value="preview">
107
+ <aui-text>Preview of the document.</aui-text>
108
+ </aui-tab-panel>
109
+ <aui-tab-panel value="publish">
110
+ <aui-text>Publishing is not available yet.</aui-text>
111
+ </aui-tab-panel>
112
+ <aui-tab-panel value="history">
113
+ <aui-text>Version history for this document.</aui-text>
114
+ </aui-tab-panel>
115
+ </aui-tabs>
116
+ - description: Tabs with icons
117
+ html: |-
118
+ <aui-tabs value="home">
119
+ <aui-tab value="home"><aui-icon name="house"></aui-icon> Home</aui-tab>
120
+ <aui-tab value="messages"><aui-icon name="envelope"></aui-icon> Messages</aui-tab>
121
+ <aui-tab value="settings"><aui-icon name="gear"></aui-icon> Settings</aui-tab>
122
+ <aui-tab value="search"><aui-icon name="magnifying-glass"></aui-icon> Search</aui-tab>
123
+ <aui-tab-panel value="home">
124
+ <aui-text>Welcome home. Here is your dashboard.</aui-text>
125
+ </aui-tab-panel>
126
+ <aui-tab-panel value="messages">
127
+ <aui-text>Your recent messages appear here.</aui-text>
128
+ </aui-tab-panel>
129
+ <aui-tab-panel value="settings">
130
+ <aui-text>Manage your account settings.</aui-text>
131
+ </aui-tab-panel>
132
+ <aui-tab-panel value="search">
133
+ <aui-text>Search across all content.</aui-text>
134
+ </aui-tab-panel>
135
+ </aui-tabs>
136
+ - description: Vertical tabs with 4 sections and icons
137
+ html: |-
138
+ <aui-tabs orientation="vertical" value="account">
139
+ <aui-tab value="account"><aui-icon name="user"></aui-icon> Account</aui-tab>
140
+ <aui-tab value="notifications"><aui-icon name="chat-dots"></aui-icon> Notifications</aui-tab>
141
+ <aui-tab value="appearance"><aui-icon name="sun"></aui-icon> Appearance</aui-tab>
142
+ <aui-tab value="advanced"><aui-icon name="sliders"></aui-icon> Advanced</aui-tab>
143
+ <aui-tab-panel value="account">
144
+ <aui-stack gap="sm">
145
+ <aui-text size="lg" weight="medium">Account Settings</aui-text>
146
+ <aui-text>Manage your profile, email, and password.</aui-text>
147
+ </aui-stack>
148
+ </aui-tab-panel>
149
+ <aui-tab-panel value="notifications">
150
+ <aui-text>Configure how and when you receive notifications.</aui-text>
151
+ </aui-tab-panel>
152
+ <aui-tab-panel value="appearance">
153
+ <aui-text>Theme, colors, and display preferences.</aui-text>
154
+ </aui-tab-panel>
155
+ <aui-tab-panel value="advanced">
156
+ <aui-text>Developer options and experimental features.</aui-text>
157
+ </aui-tab-panel>
158
+ </aui-tabs>
@@ -2,86 +2,102 @@ name: aui-tag-group
2
2
  tag: aui-tag-group
3
3
  type: component
4
4
  summary: Keyboard-navigable container for aui-chip elements with focus management.
5
- description: >
6
- Groups aui-chip children with arrow-key navigation between them.
7
- Roving tabindex moves focus with Left/Right/Home/End keys.
8
- Delete/Backspace on a removable chip removes it and shifts focus
9
- to the nearest neighbor. Optional max attribute limits the number
10
- of tags allowed.
11
-
5
+ description: |
6
+ Groups aui-chip children with arrow-key navigation between them. Roving tabindex moves focus with Left/Right/Home/End keys. Delete/Backspace on a removable chip removes it and shifts focus to the nearest neighbor. Optional max attribute limits the number of tags allowed.
12
7
  base: AgentElement
13
-
14
- # -- Component attributes ---------------------------------------------
15
-
16
8
  attributes:
17
9
  label:
18
10
  syntax: key-value
19
11
  type: string
20
12
  default: ""
21
- description: >
13
+ description: |
22
14
  Accessible label for the group. Set as aria-label.
23
-
24
15
  max:
25
16
  syntax: key-value
26
17
  type: string
27
18
  default: ""
28
- description: >
29
- Maximum number of tags allowed. Use the atMax property
30
- to check if the limit is reached.
31
-
32
- # -- Content model -----------------------------------------------------
33
-
19
+ description: |
20
+ Maximum number of tags allowed. Use the atMax property to check if the limit is reached.
34
21
  content:
35
22
  model: block
36
- accepts: [aui-chip]
23
+ accepts:
24
+ - aui-chip
37
25
  required: true
38
- description: >
39
- One or more aui-chip children. The group provides keyboard
40
- navigation and focus management across them.
41
-
42
- # -- Events ------------------------------------------------------------
43
-
26
+ description: |
27
+ One or more aui-chip children. The group provides keyboard navigation and focus management across them.
44
28
  events:
45
29
  - name: remove
46
30
  detail: "{ value: string, chip: HTMLElement }"
47
31
  description: Bubbles from child chip when removed.
48
-
49
- # -- Composition -------------------------------------------------------
50
-
51
32
  composition:
52
- parents: [aui-stack, aui-content, aui-inset, div, form]
53
- children: [aui-chip]
54
- context: >
55
- Inline or block-level element. Use inside forms, filter bars,
56
- or tag input fields. Wraps chips in a flex-wrap layout.
57
-
58
- # -- Examples ----------------------------------------------------------
59
-
33
+ parents:
34
+ - aui-stack
35
+ - aui-content
36
+ - aui-inset
37
+ - div
38
+ - form
39
+ children:
40
+ - aui-chip
41
+ context: |
42
+ Inline or block-level element. Use inside forms, filter bars, or tag input fields. Wraps chips in a flex-wrap layout.
60
43
  examples:
61
- - html: |
44
+ - description: Basic tag group with removable chips
45
+ html: |-
62
46
  <aui-tag-group label="Skills">
63
47
  <aui-chip removable>React</aui-chip>
64
48
  <aui-chip removable>Vue</aui-chip>
65
49
  <aui-chip removable>TypeScript</aui-chip>
66
50
  </aui-tag-group>
67
- description: Basic tag group with removable chips.
68
51
 
69
- - html: |
52
+ <!-- ===============================================================
53
+ READ-ONLY -- no removable chips
54
+ =============================================================== -->
55
+ - description: Read-only tag group
56
+ html: |-
57
+ <aui-tag-group label="Categories">
58
+ <aui-chip>Open Source</aui-chip>
59
+ <aui-chip>MIT License</aui-chip>
60
+ <aui-chip>Web Components</aui-chip>
61
+ </aui-tag-group>
62
+
63
+ <!-- ===============================================================
64
+ WITH MAX LIMIT
65
+ =============================================================== -->
66
+ - description: Tag group with max limit
67
+ html: |-
70
68
  <aui-tag-group label="Tags" max="5">
71
69
  <aui-chip removable>Design</aui-chip>
72
70
  <aui-chip removable>Frontend</aui-chip>
71
+ <aui-chip removable>CSS</aui-chip>
73
72
  </aui-tag-group>
74
- description: Tag group with max limit.
75
73
 
76
- - html: |
77
- <aui-tag-group label="Categories">
78
- <aui-chip>Open Source</aui-chip>
79
- <aui-chip>MIT License</aui-chip>
74
+ <!-- ===============================================================
75
+ WITH INTENT COLORS
76
+ =============================================================== -->
77
+ - description: Tag group with intent-colored chips
78
+ html: |-
79
+ <aui-tag-group label="Statuses">
80
+ <aui-chip success>Active</aui-chip>
81
+ <aui-chip warning>Pending</aui-chip>
82
+ <aui-chip danger>Blocked</aui-chip>
83
+ <aui-chip accent>Review</aui-chip>
80
84
  </aui-tag-group>
81
- description: Read-only tag group (no removable chips).
82
-
83
- # -- Use cases ---------------------------------------------------------
84
85
 
86
+ <!-- ===============================================================
87
+ MANY CHIPS -- wrapping behavior
88
+ =============================================================== -->
89
+ - description: Many chips demonstrating wrap behavior
90
+ html: |-
91
+ <aui-tag-group label="Technologies">
92
+ <aui-chip removable>React</aui-chip>
93
+ <aui-chip removable>Vue</aui-chip>
94
+ <aui-chip removable>Angular</aui-chip>
95
+ <aui-chip removable>Svelte</aui-chip>
96
+ <aui-chip removable>TypeScript</aui-chip>
97
+ <aui-chip removable>Node.js</aui-chip>
98
+ <aui-chip removable>Python</aui-chip>
99
+ <aui-chip removable>Rust</aui-chip>
100
+ </aui-tag-group>
85
101
  use-cases:
86
102
  - Tag input fields (skills, interests, labels).
87
103
  - Filter bars with removable filter chips.
@@ -0,0 +1,67 @@
1
+ name: aui-text
2
+ tag: aui-text
3
+ type: element
4
+ summary: Block-level text element with muted, strong, and size attributes.
5
+ description: |
6
+ A CSS-only text element that replaces styled <span> tags for descriptions, labels, and body copy. The muted attribute sets --aui-ink-muted color. The strong attribute sets --aui-ink-strong color for emphasized text. No JavaScript required.
7
+ presentational:
8
+ size:
9
+ syntax: key-value
10
+ type: enum
11
+ default: md
12
+ values:
13
+ - xs
14
+ - sm
15
+ - md
16
+ - lg
17
+ - xl
18
+ description: Font size from the type scale.
19
+ weight:
20
+ syntax: key-value
21
+ type: enum
22
+ default: normal
23
+ values:
24
+ - medium
25
+ - semibold
26
+ - bold
27
+ description: Font weight override.
28
+ modifiers:
29
+ muted:
30
+ syntax: boolean
31
+ description: Sets color to --aui-ink-muted for secondary text.
32
+ strong:
33
+ syntax: boolean
34
+ description: Sets color to --aui-ink-strong for emphasized text.
35
+ examples:
36
+ - description: Full size scale
37
+ html: |-
38
+ <aui-stack gap="3">
39
+ <aui-text size="xl">Text XL — Large body text</aui-text>
40
+ <aui-text size="lg">Text LG — Container body text</aui-text>
41
+ <aui-text size="md">Text MD — Default reading size</aui-text>
42
+ <aui-text size="sm">Text SM — Secondary descriptions</aui-text>
43
+ <aui-text size="xs">Text XS — Fine print and captions</aui-text>
44
+ </aui-stack>
45
+ - description: Muted variants
46
+ html: |-
47
+ <aui-stack gap="3">
48
+ <aui-text size="lg" muted>Muted LG — Subdued large text</aui-text>
49
+ <aui-text size="md" muted>Muted MD — Subdued body text</aui-text>
50
+ <aui-text size="sm" muted>Muted SM — Subdued description</aui-text>
51
+ <aui-text size="xs" muted>Muted XS — Subdued caption</aui-text>
52
+ </aui-stack>
53
+ - description: Strong variants
54
+ html: |-
55
+ <aui-stack gap="3">
56
+ <aui-text size="lg" strong>Strong LG — Emphasized large text</aui-text>
57
+ <aui-text size="md" strong>Strong MD — Emphasized body text</aui-text>
58
+ <aui-text size="sm" strong>Strong SM — Emphasized description</aui-text>
59
+ <aui-text size="xs" strong>Strong XS — Emphasized caption</aui-text>
60
+ </aui-stack>
61
+ - description: Weight variants
62
+ html: |-
63
+ <aui-stack gap="3">
64
+ <aui-text size="md">Regular weight (default)</aui-text>
65
+ <aui-text size="md" weight="medium">Medium weight</aui-text>
66
+ <aui-text size="md" weight="semibold">Semibold weight</aui-text>
67
+ </aui-stack>
@@ -2,138 +2,129 @@ name: aui-textarea
2
2
  tag: aui-textarea
3
3
  type: component
4
4
  summary: Multi-line text input with autogrow support.
5
- description: >
6
- Multi-line input. Same wrapper pattern as aui-input — the
7
- wrapper owns the visual chrome, a native <textarea> lives
8
- inside with browser chrome stripped. Supports autogrow
9
- modifier for auto-expanding height to content. Defaults to
10
- width: 20ch for standalone use. Automatically stretches to full
11
- width when placed inside aui-field. Use width="full" on the element
12
- to override the default width in other contexts.
13
-
5
+ description: |
6
+ Multi-line input. Same wrapper pattern as aui-input — the wrapper owns the visual chrome, a native <textarea> lives inside with browser chrome stripped. Supports autogrow modifier for auto-expanding height to content. Defaults to width: 20ch for standalone use. Automatically stretches to full width when placed inside aui-field. Use width="full" on the element to override the default width in other contexts.
14
7
  base: AgentElement
15
-
16
8
  presentational:
17
9
  size:
18
10
  syntax: key-value
19
11
  attribute: size
20
12
  cascades: true
21
13
  default: medium
22
- values: [xs, sm, md, lg, xl]
14
+ values:
15
+ - xs
16
+ - sm
17
+ - md
18
+ - lg
19
+ - xl
23
20
  description: Controls font size and padding.
24
-
25
21
  radius:
26
22
  syntax: boolean
27
23
  exclusive: true
28
24
  cascades: true
29
25
  default: medium
30
- values: [sharp, round]
26
+ values:
27
+ - sharp
28
+ - round
31
29
  description: Controls border radius.
32
-
33
30
  density:
34
31
  syntax: key-value
35
32
  attribute: density
36
33
  cascades: true
37
34
  default: regular
38
- values: [compact, spacious]
35
+ values:
36
+ - compact
37
+ - spacious
39
38
  description: Controls padding compression.
40
-
41
39
  intent:
42
40
  syntax: boolean
43
41
  exclusive: true
44
42
  cascades: true
45
43
  default: neutral
46
- values: [accent, info, success, warning, danger]
44
+ values:
45
+ - accent
46
+ - info
47
+ - success
48
+ - warning
49
+ - danger
47
50
  description: Color family for border and focus ring.
48
-
49
51
  attributes:
50
52
  disabled:
51
53
  syntax: boolean
52
54
  type: boolean
53
55
  default: false
54
56
  description: Prevents interaction.
55
-
56
57
  readonly:
57
58
  syntax: boolean
58
59
  type: boolean
59
60
  default: false
60
61
  description: Allows selection but prevents editing.
61
-
62
62
  required:
63
63
  syntax: boolean
64
64
  type: boolean
65
65
  default: false
66
66
  description: Marks as required for form validation.
67
-
68
67
  autogrow:
69
68
  syntax: boolean
70
69
  type: boolean
71
70
  default: false
72
- description: >
71
+ description: |
73
72
  Auto-expands height to fit content. Disables manual resize.
74
-
75
73
  autofocus:
76
74
  syntax: boolean
77
75
  type: boolean
78
76
  default: false
79
77
  description: Focuses the textarea on mount.
80
-
81
78
  placeholder:
82
79
  syntax: key-value
83
80
  type: string
84
81
  default: ""
85
82
  description: Placeholder text.
86
-
87
83
  value:
88
84
  syntax: key-value
89
85
  type: string
90
86
  default: ""
91
87
  description: Current textarea value.
92
-
93
88
  name:
94
89
  syntax: key-value
95
90
  type: string
96
91
  default: ""
97
92
  description: Form submission name.
98
-
99
93
  rows:
100
94
  syntax: key-value
101
95
  type: string
102
96
  default: "3"
103
97
  description: Initial visible row count.
104
-
105
98
  minlength:
106
99
  syntax: key-value
107
100
  type: string
108
101
  default: ""
109
102
  description: Minimum character count.
110
-
111
103
  maxlength:
112
104
  syntax: key-value
113
105
  type: string
114
106
  default: ""
115
107
  description: Maximum character count.
116
-
117
108
  modifiers:
118
109
  autogrow:
119
110
  syntax: boolean
120
- description: >
121
- Auto-expands textarea height to fit content. Disables
122
- manual resize handle. Height adjusts on every input event.
123
-
111
+ description: |
112
+ Auto-expands textarea height to fit content. Disables manual resize handle. Height adjusts on every input event.
124
113
  content:
125
114
  model: mixed
126
- accepts: [textarea]
115
+ accepts:
116
+ - textarea
127
117
  required: false
128
118
  description: Auto-stamps a native textarea if none exists.
129
-
130
119
  composition:
131
- parents: [aui-field, aui-stack, form, div]
120
+ parents:
121
+ - aui-field
122
+ - aui-stack
123
+ - form
124
+ - div
132
125
  children: null
133
- context: >
134
- Use inside aui-field for labeled textareas. Standalone for
135
- chat inputs, comment boxes, code editors.
136
-
126
+ context: |
127
+ Use inside aui-field for labeled textareas. Standalone for chat inputs, comment boxes, code editors.
137
128
  a11y:
138
129
  role: implicit (native textarea)
139
130
  keyboard:
@@ -142,13 +133,11 @@ a11y:
142
133
  aria-disabled: Reflected from disabled.
143
134
  aria-readonly: Reflected from readonly.
144
135
  aria-required: Reflected from required.
145
-
146
136
  events:
147
137
  input:
148
138
  description: Fires on every keystroke.
149
139
  change:
150
140
  description: Fires on blur.
151
-
152
141
  tokens:
153
142
  - name: --aui-textarea-font-family
154
143
  default: var(--aui-font-family)
@@ -204,28 +193,22 @@ tokens:
204
193
  - name: --aui-textarea-border-disabled
205
194
  default: var(--aui-stroke-disabled, var(--aui-border-disabled))
206
195
  description: Border color when disabled.
207
-
208
196
  css-notes:
209
197
  attr-audit:
210
198
  - "AB1: [disabled], [readonly], [autogrow] — visual state via attributes"
211
199
  - "[autogrow] > textarea { resize: none; overflow: hidden } — CSS disables manual resize"
212
- - ":focus-within — focus ring on wrapper"
213
-
200
+ - :focus-within — focus ring on wrapper
214
201
  examples:
215
- - html: <aui-textarea placeholder="Write a message..."></aui-textarea>
216
- description: Basic textarea.
217
-
218
- - html: <aui-textarea placeholder="Auto-expanding..." autogrow></aui-textarea>
219
- description: Autogrow textarea.
220
-
221
- - html: <aui-textarea placeholder="Disabled" disabled></aui-textarea>
222
- description: Disabled textarea.
223
-
224
- - html: <aui-textarea value="Read only content" readonly></aui-textarea>
225
- description: Read-only textarea.
226
-
227
- - html: |
202
+ - description: Basic textarea
203
+ html: <aui-textarea placeholder="Write a message..."></aui-textarea>
204
+ - description: Autogrow textarea
205
+ html: <aui-textarea placeholder="Auto-expanding..." autogrow></aui-textarea>
206
+ - description: Disabled textarea
207
+ html: <aui-textarea placeholder="Disabled" disabled></aui-textarea>
208
+ - description: Read-only textarea
209
+ html: <aui-textarea value="Read only content" readonly></aui-textarea>
210
+ - description: Textarea inside a labeled field
211
+ html: |-
228
212
  <aui-field label="Bio" description="Tell us about yourself.">
229
213
  <aui-textarea placeholder="Write here..." rows="4"></aui-textarea>
230
214
  </aui-field>
231
- description: Textarea inside a labeled field.