@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,58 +2,45 @@ name: aui-time-field
2
2
  tag: aui-time-field
3
3
  type: component
4
4
  summary: Segmented time input with independently editable hour and minute segments.
5
- description: >
6
- A time entry control where hour and minute (and optional AM/PM)
7
- are separate focusable segments. Each segment supports arrow-key
8
- increment/decrement, direct digit entry with auto-advance, and
9
- Tab/Arrow navigation between segments. Supports 12h and 24h
10
- formats with configurable minute step. No native form elements.
11
-
5
+ description: |
6
+ A time entry control where hour and minute (and optional AM/PM) are separate focusable segments. Each segment supports arrow-key increment/decrement, direct digit entry with auto-advance, and Tab/Arrow navigation between segments. Supports 12h and 24h formats with configurable minute step. No native form elements.
12
7
  base: AgentElement
13
-
14
8
  attributes:
15
9
  value:
16
10
  syntax: key-value
17
11
  type: string
18
12
  default: ""
19
13
  description: Time value in HH:MM (24h) format.
20
-
21
14
  min:
22
15
  syntax: key-value
23
16
  type: string
24
17
  default: ""
25
18
  description: Earliest allowed time (HH:MM).
26
-
27
19
  max:
28
20
  syntax: key-value
29
21
  type: string
30
22
  default: ""
31
23
  description: Latest allowed time (HH:MM).
32
-
33
24
  step:
34
25
  syntax: key-value
35
26
  type: string
36
27
  default: "1"
37
28
  description: Minute increment for arrow key navigation.
38
-
39
29
  format:
40
30
  syntax: key-value
41
31
  type: string
42
- default: "24h"
32
+ default: 24h
43
33
  description: Display format (12h or 24h).
44
-
45
34
  placeholder:
46
35
  syntax: key-value
47
36
  type: string
48
37
  default: ""
49
38
  description: Placeholder shown in empty segments.
50
-
51
39
  disabled:
52
40
  syntax: boolean
53
41
  type: boolean
54
42
  default: false
55
43
  description: Prevents interaction. Dims visually.
56
-
57
44
  a11y:
58
45
  role: spinbutton (on each segment)
59
46
  keyboard:
@@ -62,14 +49,13 @@ a11y:
62
49
  ArrowLeft: Move to previous segment.
63
50
  ArrowRight: Move to next segment.
64
51
  Tab: Move between segments.
65
- "0-9": Digit entry with auto-advance.
52
+ 0-9: Digit entry with auto-advance.
66
53
  Backspace: Clear segment.
67
- "a/p": Toggle AM/PM (12h format).
54
+ a/p: Toggle AM/PM (12h format).
68
55
  aria:
69
56
  aria-label: Segment name (Hour, Minute, AM/PM).
70
57
  aria-valuemin: Segment minimum.
71
58
  aria-valuemax: Segment maximum.
72
-
73
59
  tokens:
74
60
  - name: --aui-time-field-background
75
61
  default: var(--aui-control, var(--aui-fill))
@@ -98,23 +84,78 @@ tokens:
98
84
  - name: --aui-time-field-segment-color-focus
99
85
  default: var(--aui-accent-700)
100
86
  description: Focused segment text color.
101
-
102
87
  composition:
103
- parents: [aui-field, aui-stack, aui-container, div]
88
+ parents:
89
+ - aui-field
90
+ - aui-stack
91
+ - aui-container
92
+ - div
104
93
  children: []
105
- context: >
106
- Standalone time entry. Use inside aui-field for labeled forms.
107
- Not an aui-input variant -- separate segmented control.
108
-
94
+ context: |
95
+ Standalone time entry. Use inside aui-field for labeled forms. Not an aui-input variant -- separate segmented control.
109
96
  examples:
110
- - html: <aui-time-field value="14:30"></aui-time-field>
111
- description: 24h time field.
97
+ - description: Default 24h time field
98
+ html: <aui-time-field value="14:30"></aui-time-field>
99
+ - description: Morning time
100
+ html: |-
101
+ <aui-time-field value="09:00"></aui-time-field>
102
+
103
+ <!-- ===============================================================
104
+ 12H FORMAT
105
+ =============================================================== -->
106
+ - description: 12h format with AM/PM segment
107
+ html: <aui-time-field value="14:30" format="12h"></aui-time-field>
108
+ - description: 12h morning time
109
+ html: |-
110
+ <aui-time-field value="09:15" format="12h"></aui-time-field>
111
+
112
+ <!-- ===============================================================
113
+ EMPTY STATE
114
+ =============================================================== -->
115
+ - description: Empty time field (segments show --)
116
+ html: |-
117
+ <aui-time-field></aui-time-field>
118
+
119
+ <!-- ===============================================================
120
+ WITH STEP
121
+ =============================================================== -->
122
+ - description: 15-minute increment steps
123
+ html: <aui-time-field value="09:00" step="15"></aui-time-field>
124
+ - description: 5-minute increments
125
+ html: |-
126
+ <aui-time-field value="12:00" step="5"></aui-time-field>
112
127
 
113
- - html: <aui-time-field value="02:30" format="12h"></aui-time-field>
114
- description: 12h format with AM/PM.
128
+ <!-- ===============================================================
129
+ DISABLED
130
+ =============================================================== -->
131
+ - description: Disabled time field
132
+ html: |-
133
+ <aui-time-field value="14:30" disabled></aui-time-field>
115
134
 
116
- - html: <aui-time-field value="09:00" step="15"></aui-time-field>
117
- description: 15-minute increments.
135
+ <!-- ===============================================================
136
+ IN FORM FIELD
137
+ =============================================================== -->
138
+ - description: Time field inside aui-field with label
139
+ html: |-
140
+ <aui-field label="Meeting Time">
141
+ <aui-time-field value="10:00"></aui-time-field>
142
+ </aui-field>
143
+ - description: 12h time field in form
144
+ html: |-
145
+ <aui-field label="Alarm">
146
+ <aui-time-field value="07:30" format="12h"></aui-time-field>
147
+ </aui-field>
118
148
 
119
- - html: <aui-time-field value="14:30" disabled></aui-time-field>
120
- description: Disabled time field.
149
+ <!-- ===============================================================
150
+ ROW -- multiple time fields
151
+ =============================================================== -->
152
+ - description: Start and end time fields
153
+ html: |-
154
+ <aui-stack direction="row" gap="3">
155
+ <aui-field label="Start">
156
+ <aui-time-field value="09:00"></aui-time-field>
157
+ </aui-field>
158
+ <aui-field label="End">
159
+ <aui-time-field value="17:00"></aui-time-field>
160
+ </aui-field>
161
+ </aui-stack>
@@ -2,49 +2,37 @@ name: aui-toast
2
2
  tag: aui-toast
3
3
  type: component
4
4
  summary: Toast notification with auto-dismiss and stacking.
5
- description: >
6
- Ephemeral notification that auto-dismisses. Use the imperative
7
- AuiToast.show() API or declaratively with the open attribute.
8
- Multiple toasts stack inside aui-toast-container (auto-created
9
- on first use). Intent set via boolean attribute (info, success,
10
- warning, danger).
11
-
5
+ description: |
6
+ Ephemeral notification that auto-dismisses. Use the imperative AuiToast.show() API or declaratively with the open attribute. Multiple toasts stack inside aui-toast-container (auto-created on first use). Intent set via boolean attribute (info, success, warning, danger).
12
7
  base: AgentElement
13
-
14
8
  attributes:
15
9
  open:
16
10
  syntax: boolean
17
11
  type: boolean
18
12
  default: false
19
13
  description: Whether the toast is visible.
20
-
21
14
  message:
22
15
  syntax: key-value
23
16
  type: string
24
17
  default: ""
25
18
  description: Toast message text.
26
-
27
19
  duration:
28
20
  syntax: key-value
29
21
  type: string
30
22
  default: "4000"
31
23
  description: Auto-dismiss delay in ms. Set to 0 to disable.
32
-
33
24
  closeable:
34
25
  syntax: boolean
35
26
  type: boolean
36
27
  default: true
37
28
  description: Show a dismiss button.
38
-
39
29
  a11y:
40
30
  role: status
41
31
  aria:
42
32
  aria-live: polite
43
-
44
33
  events:
45
34
  dismiss:
46
35
  description: Fired when the toast is dismissed (auto or manual).
47
-
48
36
  tokens:
49
37
  - name: --aui-toast-font-family
50
38
  default: var(--aui-font-family)
@@ -56,7 +44,7 @@ tokens:
56
44
  default: var(--aui-ink)
57
45
  description: Text color of the toast.
58
46
  - name: --aui-toast-background
59
- default: var(--aui-card, var(--aui-doc, #fff))
47
+ default: var(--aui-card, var(--aui-doc,
60
48
  description: Background color of the toast.
61
49
  - name: --aui-toast-border
62
50
  default: var(--aui-border-muted, oklch(0.8 0 0))
@@ -97,19 +85,14 @@ tokens:
97
85
  - name: --aui-toast-intent-danger
98
86
  default: var(--aui-danger, oklch(0.6 0.2 25))
99
87
  description: Accent color for danger intent toasts.
100
-
101
88
  examples:
102
- - html: <aui-toast open message="Item saved successfully" success duration="0"></aui-toast>
103
- description: Success toast.
104
-
105
- - html: <aui-toast open message="New version available" info duration="0"></aui-toast>
106
- description: Info toast.
107
-
108
- - html: <aui-toast open message="Storage almost full" warning duration="0"></aui-toast>
109
- description: Warning toast.
110
-
111
- - html: <aui-toast open message="Failed to delete item" danger duration="0" closeable></aui-toast>
112
- description: Danger toast with close button.
113
-
114
- - html: <aui-toast open message="Default toast with no intent" duration="0"></aui-toast>
115
- description: Default toast (no intent).
89
+ - description: Success toast
90
+ html: <aui-toast open message="Item saved successfully" success duration="0"></aui-toast>
91
+ - description: Info toast
92
+ html: <aui-toast open message="New version available" info duration="0"></aui-toast>
93
+ - description: Warning toast
94
+ html: <aui-toast open message="Storage almost full" warning duration="0"></aui-toast>
95
+ - description: Danger toast with close button
96
+ html: <aui-toast open message="Failed to delete item" danger duration="0" closeable></aui-toast>
97
+ - description: Default toast (no intent)
98
+ html: <aui-toast open message="Default toast with no intent" duration="0"></aui-toast>
@@ -2,55 +2,39 @@ name: aui-tooltip
2
2
  tag: aui-tooltip
3
3
  type: component
4
4
  summary: Hover/focus tooltip with popover-based positioning.
5
- description: >
6
- A lightweight tooltip that appears on hover or focus of its anchor
7
- element. Uses the Popover API for top-layer rendering and CSS
8
- anchor positioning for placement. The anchor is auto-discovered
9
- as the previous sibling element.
10
-
5
+ description: |
6
+ A lightweight tooltip that appears on hover or focus of its anchor element. Uses the Popover API for top-layer rendering and CSS anchor positioning for placement. The anchor is auto-discovered as the previous sibling element.
11
7
  base: AgentElement
12
-
13
- # ── Component attributes ──────────────────────────────────
14
-
15
8
  attributes:
16
9
  content:
17
10
  syntax: key-value
18
11
  type: string
19
12
  default: ""
20
- description: >
13
+ description: |
21
14
  The text content displayed inside the tooltip.
22
-
23
15
  position:
24
16
  syntax: key-value
25
17
  type: enum
26
- values: [top, bottom, left, right]
18
+ values:
19
+ - top
20
+ - bottom
21
+ - left
22
+ - right
27
23
  default: top
28
- description: >
29
- Preferred placement relative to the anchor element.
30
- Uses CSS anchor positioning for layout.
31
-
32
- # ── Content model ─────────────────────────────────────────
33
-
24
+ description: |
25
+ Preferred placement relative to the anchor element. Uses CSS anchor positioning for layout.
34
26
  content:
35
27
  model: empty
36
28
  accepts: []
37
29
  required: false
38
- description: >
39
- Content is set via the content attribute. The tooltip
40
- stamps its own popover surface internally.
41
-
42
- # ── Composition ───────────────────────────────────────────
43
-
30
+ description: |
31
+ Content is set via the content attribute. The tooltip stamps its own popover surface internally.
44
32
  composition:
45
- parents: [any]
33
+ parents:
34
+ - any
46
35
  children: null
47
- context: >
48
- Place as a sibling immediately after the element you want
49
- to annotate. The tooltip auto-discovers the previous sibling
50
- as its anchor. Works with any interactive element.
51
-
52
- # ── Accessibility ─────────────────────────────────────────
53
-
36
+ context: |
37
+ Place as a sibling immediately after the element you want to annotate. The tooltip auto-discovers the previous sibling as its anchor. Works with any interactive element.
54
38
  a11y:
55
39
  role: tooltip (on the popover surface)
56
40
  aria:
@@ -58,12 +42,8 @@ a11y:
58
42
  keyboard:
59
43
  Escape: Dismisses the tooltip.
60
44
  focus:
61
- description: >
62
- Tooltip appears on focusin and disappears on focusout
63
- of the anchor element.
64
-
65
- # ── CSS tokens consumed ──────────────────────────────────
66
-
45
+ description: |
46
+ Tooltip appears on focusin and disappears on focusout of the anchor element.
67
47
  tokens:
68
48
  - name: --aui-tooltip-padding
69
49
  default: 0.375rem 0.625rem
@@ -89,23 +69,50 @@ tokens:
89
69
  - name: --aui-tooltip-offset
90
70
  default: 0.375rem
91
71
  description: Distance between tooltip and its anchor element.
92
-
93
- # ── Examples ──────────────────────────────────────────────
94
-
95
72
  examples:
96
- - html: |
73
+ - description: Tooltip on an hide-label button
74
+ html: |-
97
75
  <aui-button hide-label ghost label="Settings">
98
76
  <aui-icon name="gear" slot="leading"></aui-icon>
99
77
  </aui-button>
100
78
  <aui-tooltip content="Settings" position="bottom"></aui-tooltip>
101
- description: Tooltip on an hide-label button.
102
-
103
- - html: |
79
+ - description: Tooltip with keyboard shortcut hint
80
+ html: |-
104
81
  <aui-button primary accent>Save</aui-button>
105
82
  <aui-tooltip content="Save your changes (⌘S)"></aui-tooltip>
106
- description: Tooltip with keyboard shortcut hint.
107
-
108
- - html: |
83
+ - description: Tooltip positioned to the right of an icon
84
+ html: |-
109
85
  <aui-icon name="info" label="Info"></aui-icon>
110
86
  <aui-tooltip content="More information" position="right"></aui-tooltip>
111
- description: Tooltip positioned to the right of an icon.
87
+ - description: Tooltip positioned to the top (default)
88
+ html: |-
89
+ <aui-button>Hover me</aui-button>
90
+ <aui-tooltip content="Top tooltip (default)" position="top"></aui-tooltip>
91
+ - description: Tooltip positioned to the bottom
92
+ html: |-
93
+ <aui-button>Hover me</aui-button>
94
+ <aui-tooltip content="Bottom tooltip" position="bottom"></aui-tooltip>
95
+ - description: Tooltip positioned to the left
96
+ html: |-
97
+ <aui-button>Hover me</aui-button>
98
+ <aui-tooltip content="Left tooltip" position="left"></aui-tooltip>
99
+ - description: Long text tooltip that wraps across multiple lines
100
+ html: |-
101
+ <aui-button>Terms</aui-button>
102
+ <aui-tooltip content="By continuing you agree to the Terms of Service, Privacy Policy, and acknowledge that your data may be processed in accordance with applicable regulations." position="top"></aui-tooltip>
103
+ - description: Tooltip on an icon-only button with ghost style
104
+ html: |-
105
+ <aui-button hide-label ghost label="Delete">
106
+ <aui-icon name="trash" slot="leading"></aui-icon>
107
+ </aui-button>
108
+ <aui-tooltip content="Delete item" position="bottom"></aui-tooltip>
109
+ - description: Tooltip on an icon-only button showing a keyboard shortcut
110
+ html: |-
111
+ <aui-button hide-label ghost label="Undo">
112
+ <aui-icon name="arrow-counter-clockwise" slot="leading"></aui-icon>
113
+ </aui-button>
114
+ <aui-tooltip content="Undo (⌘Z)" position="bottom"></aui-tooltip>
115
+ - description: Tooltip with keyboard shortcut hint on a text button
116
+ html: |-
117
+ <aui-button primary>New file</aui-button>
118
+ <aui-tooltip content="Create a new file (⌘N)" position="top"></aui-tooltip>
@@ -26,13 +26,13 @@ a11y:
26
26
  ArrowRight: Expand (if collapsed).
27
27
  ArrowLeft: Collapse (if expanded).
28
28
  composition:
29
- parents: [aui-tree, aui-tree-item]
30
- children: [aui-tree-item]
31
- description: >
32
- A tree node that supports expand/collapse and arbitrary nesting.
33
- The caret indicator uses aui-icon name="caret-right" (rotated when
34
- expanded) and is automatically stamped by the component.
35
-
29
+ parents:
30
+ - aui-tree
31
+ - aui-tree-item
32
+ children:
33
+ - aui-tree-item
34
+ description: |
35
+ A tree node that supports expand/collapse and arbitrary nesting. The caret indicator uses aui-icon name="caret-right" (rotated when expanded) and is automatically stamped by the component.
36
36
  tokens:
37
37
  - name: --aui-tree-item-gap
38
38
  default: var(--aui-pad-gap-control)
@@ -79,9 +79,9 @@ tokens:
79
79
  - name: --aui-tree-item-color-disabled
80
80
  default: var(--aui-ink-disabled, var(--aui-ink-muted))
81
81
  description: Text color when disabled.
82
-
83
82
  examples:
84
- - html: |
83
+ - description: Standalone tree-item usage within a tree
84
+ html: |-
85
85
  <aui-tree>
86
86
  <aui-tree-item expanded>
87
87
  <span data-trigger>Parent node</span>
@@ -90,4 +90,3 @@ examples:
90
90
  <aui-tree-item disabled><span data-trigger>Child C (disabled)</span></aui-tree-item>
91
91
  </aui-tree-item>
92
92
  </aui-tree>
93
- description: Tree with expanded parent and child items showing selected and disabled states.
@@ -9,8 +9,10 @@ a11y:
9
9
  ArrowDown: Focus next visible item.
10
10
  ArrowUp: Focus previous visible item.
11
11
  composition:
12
- parents: [any]
13
- children: [aui-tree-item]
12
+ parents:
13
+ - any
14
+ children:
15
+ - aui-tree-item
14
16
  tokens:
15
17
  - name: --aui-tree-font-family
16
18
  default: var(--aui-font-family)
@@ -18,18 +20,133 @@ tokens:
18
20
  - name: --aui-tree-font-size
19
21
  default: var(--aui-font-size)
20
22
  description: Font size for tree item text.
21
-
22
23
  examples:
23
- - html: |
24
+ - description: 3-level deep nested tree (project file structure)
25
+ html: |-
24
26
  <aui-tree>
25
27
  <aui-tree-item expanded>
26
- <span data-trigger>Documents</span>
27
- <aui-tree-item><span data-trigger>report.pdf</span></aui-tree-item>
28
- <aui-tree-item><span data-trigger>notes.txt</span></aui-tree-item>
28
+ <span data-trigger>src</span>
29
+ <aui-tree-item expanded>
30
+ <span data-trigger>components</span>
31
+ <aui-tree-item><span data-trigger>button.ts</span></aui-tree-item>
32
+ <aui-tree-item><span data-trigger>dialog.ts</span></aui-tree-item>
33
+ <aui-tree-item><span data-trigger>input.ts</span></aui-tree-item>
34
+ </aui-tree-item>
35
+ <aui-tree-item>
36
+ <span data-trigger>styles</span>
37
+ <aui-tree-item><span data-trigger>tokens.css</span></aui-tree-item>
38
+ <aui-tree-item><span data-trigger>reset.css</span></aui-tree-item>
39
+ </aui-tree-item>
40
+ <aui-tree-item><span data-trigger>index.ts</span></aui-tree-item>
29
41
  </aui-tree-item>
30
42
  <aui-tree-item>
31
- <span data-trigger>Images</span>
32
- <aui-tree-item><span data-trigger>photo.jpg</span></aui-tree-item>
43
+ <span data-trigger>tests</span>
44
+ <aui-tree-item><span data-trigger>button.test.ts</span></aui-tree-item>
45
+ <aui-tree-item><span data-trigger>dialog.test.ts</span></aui-tree-item>
46
+ </aui-tree-item>
47
+ <aui-tree-item><span data-trigger>package.json</span></aui-tree-item>
48
+ <aui-tree-item><span data-trigger>tsconfig.json</span></aui-tree-item>
49
+ </aui-tree>
50
+ - description: Tree with mixed expanded and collapsed states
51
+ html: |-
52
+ <aui-tree>
53
+ <aui-tree-item expanded>
54
+ <span data-trigger>Application</span>
55
+ <aui-tree-item expanded>
56
+ <span data-trigger>Pages</span>
57
+ <aui-tree-item><span data-trigger>Home</span></aui-tree-item>
58
+ <aui-tree-item selected><span data-trigger>Dashboard</span></aui-tree-item>
59
+ <aui-tree-item><span data-trigger>Settings</span></aui-tree-item>
60
+ </aui-tree-item>
61
+ <aui-tree-item>
62
+ <span data-trigger>API Routes</span>
63
+ <aui-tree-item><span data-trigger>auth.ts</span></aui-tree-item>
64
+ <aui-tree-item><span data-trigger>users.ts</span></aui-tree-item>
65
+ </aui-tree-item>
66
+ <aui-tree-item>
67
+ <span data-trigger>Middleware</span>
68
+ <aui-tree-item><span data-trigger>cors.ts</span></aui-tree-item>
69
+ </aui-tree-item>
70
+ </aui-tree-item>
71
+ </aui-tree>
72
+ - description: Tree with icons (folder and file icons)
73
+ html: |-
74
+ <aui-tree>
75
+ <aui-tree-item expanded>
76
+ <span data-trigger><aui-icon name="star"></aui-icon> Favorites</span>
77
+ <aui-tree-item>
78
+ <span data-trigger><aui-icon name="file-text"></aui-icon> README.md</span>
79
+ </aui-tree-item>
80
+ <aui-tree-item>
81
+ <span data-trigger><aui-icon name="file-text"></aui-icon> design-spec.md</span>
82
+ </aui-tree-item>
83
+ </aui-tree-item>
84
+ <aui-tree-item expanded>
85
+ <span data-trigger><aui-icon name="gear"></aui-icon> Config</span>
86
+ <aui-tree-item>
87
+ <span data-trigger><aui-icon name="file-text"></aui-icon> tsconfig.json</span>
88
+ </aui-tree-item>
89
+ <aui-tree-item>
90
+ <span data-trigger><aui-icon name="file-text"></aui-icon> vite.config.ts</span>
91
+ </aui-tree-item>
92
+ <aui-tree-item>
93
+ <span data-trigger><aui-icon name="file-text"></aui-icon> package.json</span>
94
+ </aui-tree-item>
95
+ </aui-tree-item>
96
+ <aui-tree-item>
97
+ <span data-trigger><aui-icon name="image"></aui-icon> Assets</span>
98
+ <aui-tree-item>
99
+ <span data-trigger><aui-icon name="image"></aui-icon> logo.svg</span>
100
+ </aui-tree-item>
101
+ <aui-tree-item>
102
+ <span data-trigger><aui-icon name="image"></aui-icon> banner.png</span>
103
+ </aui-tree-item>
104
+ </aui-tree-item>
105
+ </aui-tree>
106
+ - description: Selectable tree items with pre-selected node
107
+ html: |-
108
+ <aui-tree>
109
+ <aui-tree-item expanded>
110
+ <span data-trigger>Navigation</span>
111
+ <aui-tree-item selected><span data-trigger>Home</span></aui-tree-item>
112
+ <aui-tree-item><span data-trigger>About</span></aui-tree-item>
113
+ <aui-tree-item><span data-trigger>Contact</span></aui-tree-item>
114
+ </aui-tree-item>
115
+ <aui-tree-item expanded>
116
+ <span data-trigger>Account</span>
117
+ <aui-tree-item><span data-trigger>Profile</span></aui-tree-item>
118
+ <aui-tree-item><span data-trigger>Settings</span></aui-tree-item>
119
+ <aui-tree-item disabled><span data-trigger>Admin Panel</span></aui-tree-item>
120
+ </aui-tree-item>
121
+ </aui-tree>
122
+ - description: Deep 3-level tree with icons and selection
123
+ html: |-
124
+ <aui-tree>
125
+ <aui-tree-item expanded>
126
+ <span data-trigger><aui-icon name="house"></aui-icon> Workspace</span>
127
+ <aui-tree-item expanded>
128
+ <span data-trigger><aui-icon name="envelope"></aui-icon> Inbox</span>
129
+ <aui-tree-item selected>
130
+ <span data-trigger><aui-icon name="star"></aui-icon> Starred</span>
131
+ </aui-tree-item>
132
+ <aui-tree-item>
133
+ <span data-trigger><aui-icon name="clock"></aui-icon> Snoozed</span>
134
+ </aui-tree-item>
135
+ <aui-tree-item>
136
+ <span data-trigger><aui-icon name="check"></aui-icon> Done</span>
137
+ </aui-tree-item>
138
+ </aui-tree-item>
139
+ <aui-tree-item>
140
+ <span data-trigger><aui-icon name="pencil"></aui-icon> Drafts</span>
141
+ <aui-tree-item>
142
+ <span data-trigger><aui-icon name="file-text"></aui-icon> Weekly update</span>
143
+ </aui-tree-item>
144
+ <aui-tree-item>
145
+ <span data-trigger><aui-icon name="file-text"></aui-icon> Proposal v2</span>
146
+ </aui-tree-item>
147
+ </aui-tree-item>
148
+ <aui-tree-item>
149
+ <span data-trigger><aui-icon name="warning"></aui-icon> Spam</span>
150
+ </aui-tree-item>
33
151
  </aui-tree-item>
34
152
  </aui-tree>
35
- description: File tree with nested folders.
@@ -0,0 +1,60 @@
1
+ name: aui-wrap
2
+ tag: aui-wrap
3
+ type: element
4
+ summary: Inline flex container with wrapping for flowing layouts.
5
+ description: |
6
+ A CSS-only flex container that wraps children into multiple rows (or columns with direction="vertical"). Useful for tag lists, chip groups, button sets, and any flowing inline content. Gap and padding are controlled via global layout utility attributes from tokens.css. No JavaScript required.
7
+ presentational:
8
+ direction:
9
+ syntax: key-value
10
+ type: enum
11
+ values:
12
+ - vertical
13
+ default: null
14
+ description: |
15
+ Layout direction. Horizontal (row) is the default — no attribute needed. Set direction="vertical" for column wrapping.
16
+ tokens:
17
+ layout:
18
+ - gap (via layout utility attributes)
19
+ - padding (via layout utility attributes)
20
+ examples:
21
+ - description: Horizontal wrap with small gap
22
+ html: |-
23
+ <aui-wrap gap="2">
24
+ <aui-badge>Alpha</aui-badge>
25
+ <aui-badge>Bravo</aui-badge>
26
+ <aui-badge>Charlie</aui-badge>
27
+ <aui-badge>Delta</aui-badge>
28
+ <aui-badge>Echo</aui-badge>
29
+ <aui-badge>Foxtrot</aui-badge>
30
+ </aui-wrap>
31
+ - description: Medium gap with accent badges
32
+ html: |-
33
+ <aui-wrap gap="3">
34
+ <aui-badge accent>React</aui-badge>
35
+ <aui-badge accent>TypeScript</aui-badge>
36
+ <aui-badge accent>Node.js</aui-badge>
37
+ <aui-badge accent>CSS</aui-badge>
38
+ <aui-badge accent>GraphQL</aui-badge>
39
+ <aui-badge accent>Figma</aui-badge>
40
+ <aui-badge accent>Rust</aui-badge>
41
+ <aui-badge accent>Go</aui-badge>
42
+ </aui-wrap>
43
+ - description: Large gap with text items
44
+ html: |-
45
+ <aui-wrap gap="4">
46
+ <aui-text size="sm" muted>Design</aui-text>
47
+ <aui-text size="sm" muted>Develop</aui-text>
48
+ <aui-text size="sm" muted>Test</aui-text>
49
+ <aui-text size="sm" muted>Deploy</aui-text>
50
+ <aui-text size="sm" muted>Monitor</aui-text>
51
+ </aui-wrap>
52
+ - description: Vertical wrapping direction
53
+ html: |-
54
+ <aui-wrap gap="2" direction="vertical" style="height: 6rem;">
55
+ <aui-badge>Row 1</aui-badge>
56
+ <aui-badge>Row 2</aui-badge>
57
+ <aui-badge>Row 3</aui-badge>
58
+ <aui-badge>Row 4</aui-badge>
59
+ <aui-badge>Row 5</aui-badge>
60
+ </aui-wrap>