@agent-ui-kit/web-components 0.0.3 → 0.0.4

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 (186) hide show
  1. package/README.md +429 -0
  2. package/dist/agent-ui.css +1 -1
  3. package/dist/api.json +9519 -0
  4. package/dist/docs/blocks/agent-chat.yaml +111 -0
  5. package/dist/docs/blocks/announcement-card.yaml +30 -0
  6. package/dist/docs/blocks/bpm-process.yaml +7 -0
  7. package/dist/docs/blocks/chart-activity.yaml +73 -0
  8. package/dist/docs/blocks/chart-card.yaml +55 -0
  9. package/dist/docs/blocks/chart-donut.yaml +83 -0
  10. package/dist/docs/blocks/chart-grouped.yaml +75 -0
  11. package/dist/docs/blocks/chart-horizontal.yaml +59 -0
  12. package/dist/docs/blocks/chart-interactive.yaml +58 -0
  13. package/dist/docs/blocks/chart-labeled.yaml +66 -0
  14. package/dist/docs/blocks/checkout-form.yaml +57 -0
  15. package/dist/docs/blocks/clinical-trial.yaml +7 -0
  16. package/dist/docs/blocks/contributors.yaml +51 -0
  17. package/dist/docs/blocks/cyber-threat.yaml +7 -0
  18. package/dist/docs/blocks/dashboard-layout.yaml +121 -0
  19. package/dist/docs/blocks/data-eng-dag.yaml +9 -0
  20. package/dist/docs/blocks/date-picker.yaml +30 -0
  21. package/dist/docs/blocks/ddx-workflow.yaml +9 -0
  22. package/dist/docs/blocks/empty-state.yaml +26 -0
  23. package/dist/docs/blocks/env-variables.yaml +46 -0
  24. package/dist/docs/blocks/feature-upgrade.yaml +52 -0
  25. package/dist/docs/blocks/financial-risk.yaml +7 -0
  26. package/dist/docs/blocks/flow-editor.yaml +113 -0
  27. package/dist/docs/blocks/gen-ai-pipeline.yaml +8 -0
  28. package/dist/docs/blocks/index.yaml +245 -0
  29. package/dist/docs/blocks/issue-assign.yaml +34 -0
  30. package/dist/docs/blocks/keyboard-shortcuts.yaml +49 -0
  31. package/dist/docs/blocks/login-branded.yaml +81 -0
  32. package/dist/docs/blocks/login-email-only.yaml +39 -0
  33. package/dist/docs/blocks/login-form.yaml +42 -0
  34. package/dist/docs/blocks/login-simple.yaml +54 -0
  35. package/dist/docs/blocks/login-social.yaml +73 -0
  36. package/dist/docs/blocks/login-two-column.yaml +78 -0
  37. package/dist/docs/blocks/marketing-automation.yaml +7 -0
  38. package/dist/docs/blocks/member-list.yaml +58 -0
  39. package/dist/docs/blocks/ml-pipeline.yaml +7 -0
  40. package/dist/docs/blocks/nav-card.yaml +27 -0
  41. package/dist/docs/blocks/notification-list.yaml +58 -0
  42. package/dist/docs/blocks/oncology-pathway.yaml +7 -0
  43. package/dist/docs/blocks/pricing-card.yaml +53 -0
  44. package/dist/docs/blocks/processing-state.yaml +25 -0
  45. package/dist/docs/blocks/profile-card.yaml +48 -0
  46. package/dist/docs/blocks/saas-onboarding.yaml +7 -0
  47. package/dist/docs/blocks/settings-form.yaml +42 -0
  48. package/dist/docs/blocks/settings-panel.yaml +54 -0
  49. package/dist/docs/blocks/sidebar-nav.yaml +55 -0
  50. package/dist/docs/blocks/signup-form.yaml +47 -0
  51. package/dist/docs/blocks/stat-cards.yaml +49 -0
  52. package/dist/docs/blocks/status-card.yaml +40 -0
  53. package/dist/docs/blocks/suggested-labs.yaml +79 -0
  54. package/dist/docs/blocks/supply-chain.yaml +7 -0
  55. package/dist/docs/blocks/survey-card.yaml +52 -0
  56. package/dist/docs/blocks/tabbed-panel.yaml +53 -0
  57. package/dist/docs/blocks/team-empty.yaml +27 -0
  58. package/dist/docs/blocks/usage-billing.yaml +99 -0
  59. package/dist/docs/components/accordion-item.yaml +52 -0
  60. package/dist/docs/components/accordion.yaml +69 -0
  61. package/dist/docs/components/agent-activity.yaml +79 -0
  62. package/dist/docs/components/agent-feed.yaml +83 -0
  63. package/dist/docs/components/agent-message.yaml +120 -0
  64. package/dist/docs/components/agent-panel.yaml +91 -0
  65. package/dist/docs/components/agent-prompt.yaml +78 -0
  66. package/dist/docs/components/agent-seeds.yaml +44 -0
  67. package/dist/docs/components/agent-text.yaml +57 -0
  68. package/dist/docs/components/agent-thread.yaml +82 -0
  69. package/dist/docs/components/app-shell.yaml +64 -0
  70. package/dist/docs/components/breadcrumb-item.yaml +49 -0
  71. package/dist/docs/components/breadcrumb.yaml +59 -0
  72. package/dist/docs/components/button.yaml +439 -0
  73. package/dist/docs/components/calendar.yaml +74 -0
  74. package/dist/docs/components/canvas.yaml +161 -0
  75. package/dist/docs/components/checkbox.yaml +141 -0
  76. package/dist/docs/components/command-empty.yaml +13 -0
  77. package/dist/docs/components/command-group.yaml +23 -0
  78. package/dist/docs/components/command-input.yaml +19 -0
  79. package/dist/docs/components/command-item.yaml +37 -0
  80. package/dist/docs/components/command-list.yaml +17 -0
  81. package/dist/docs/components/command.yaml +64 -0
  82. package/dist/docs/components/container.yaml +298 -0
  83. package/dist/docs/components/dialog.yaml +133 -0
  84. package/dist/docs/components/drawer.yaml +124 -0
  85. package/dist/docs/components/editor-layer.yaml +59 -0
  86. package/dist/docs/components/editor.yaml +168 -0
  87. package/dist/docs/components/feed.yaml +72 -0
  88. package/dist/docs/components/field.yaml +145 -0
  89. package/dist/docs/components/graph-layer.yaml +41 -0
  90. package/dist/docs/components/graph-node.yaml +58 -0
  91. package/dist/docs/components/graph-noodle.yaml +103 -0
  92. package/dist/docs/components/graph-port.yaml +71 -0
  93. package/dist/docs/components/graph-ui.yaml +64 -0
  94. package/dist/docs/components/gripper.yaml +55 -0
  95. package/dist/docs/components/icon.yaml +133 -0
  96. package/dist/docs/components/index.yaml +320 -0
  97. package/dist/docs/components/input-otp.yaml +59 -0
  98. package/dist/docs/components/input.yaml +289 -0
  99. package/dist/docs/components/noodles.yaml +184 -0
  100. package/dist/docs/components/optgroup.yaml +38 -0
  101. package/dist/docs/components/option.yaml +56 -0
  102. package/dist/docs/components/page-context.yaml +55 -0
  103. package/dist/docs/components/page-main.yaml +39 -0
  104. package/dist/docs/components/page.yaml +36 -0
  105. package/dist/docs/components/pagination.yaml +46 -0
  106. package/dist/docs/components/pane.yaml +102 -0
  107. package/dist/docs/components/panes.yaml +82 -0
  108. package/dist/docs/components/preview-app.yaml +170 -0
  109. package/dist/docs/components/radio-group.yaml +108 -0
  110. package/dist/docs/components/radio.yaml +132 -0
  111. package/dist/docs/components/range.yaml +97 -0
  112. package/dist/docs/components/root.yaml +18 -0
  113. package/dist/docs/components/segment.yaml +41 -0
  114. package/dist/docs/components/segmented-control.yaml +52 -0
  115. package/dist/docs/components/select.yaml +241 -0
  116. package/dist/docs/components/sidebar-content.yaml +32 -0
  117. package/dist/docs/components/sidebar-footer.yaml +28 -0
  118. package/dist/docs/components/sidebar-header.yaml +28 -0
  119. package/dist/docs/components/sidebar.yaml +133 -0
  120. package/dist/docs/components/switch.yaml +131 -0
  121. package/dist/docs/components/tab-panel.yaml +41 -0
  122. package/dist/docs/components/tab.yaml +51 -0
  123. package/dist/docs/components/table-body.yaml +11 -0
  124. package/dist/docs/components/table-cell.yaml +11 -0
  125. package/dist/docs/components/table-column.yaml +76 -0
  126. package/dist/docs/components/table-head.yaml +11 -0
  127. package/dist/docs/components/table-header.yaml +11 -0
  128. package/dist/docs/components/table-row.yaml +11 -0
  129. package/dist/docs/components/table.yaml +219 -0
  130. package/dist/docs/components/tabs.yaml +61 -0
  131. package/dist/docs/components/textarea.yaml +196 -0
  132. package/dist/docs/components/toast.yaml +62 -0
  133. package/dist/docs/components/tooltip.yaml +98 -0
  134. package/dist/docs/components/tree-item.yaml +46 -0
  135. package/dist/docs/components/tree.yaml +27 -0
  136. package/dist/docs/traits/auto-dismiss.yaml +23 -0
  137. package/dist/docs/traits/backtick-wrap.yaml +22 -0
  138. package/dist/docs/traits/clipboard.yaml +31 -0
  139. package/dist/docs/traits/collapsible.yaml +23 -0
  140. package/dist/docs/traits/confetti.yaml +37 -0
  141. package/dist/docs/traits/copy.yaml +27 -0
  142. package/dist/docs/traits/css-inspect.yaml +46 -0
  143. package/dist/docs/traits/dismiss.yaml +23 -0
  144. package/dist/docs/traits/drag.yaml +88 -0
  145. package/dist/docs/traits/drop-zone.yaml +37 -0
  146. package/dist/docs/traits/edit.yaml +39 -0
  147. package/dist/docs/traits/flip.yaml +40 -0
  148. package/dist/docs/traits/gateway.yaml +33 -0
  149. package/dist/docs/traits/hover.yaml +39 -0
  150. package/dist/docs/traits/intersect.yaml +42 -0
  151. package/dist/docs/traits/link-paste.yaml +28 -0
  152. package/dist/docs/traits/linked-scroll.yaml +37 -0
  153. package/dist/docs/traits/list-navigate.yaml +46 -0
  154. package/dist/docs/traits/magnet.yaml +33 -0
  155. package/dist/docs/traits/mention.yaml +40 -0
  156. package/dist/docs/traits/modal.yaml +28 -0
  157. package/dist/docs/traits/noodle.yaml +45 -0
  158. package/dist/docs/traits/overlay.yaml +58 -0
  159. package/dist/docs/traits/pan-zoom.yaml +47 -0
  160. package/dist/docs/traits/parallax.yaml +36 -0
  161. package/dist/docs/traits/persist.yaml +42 -0
  162. package/dist/docs/traits/popover.yaml +28 -0
  163. package/dist/docs/traits/present.yaml +42 -0
  164. package/dist/docs/traits/press-hold.yaml +34 -0
  165. package/dist/docs/traits/range-select.yaml +42 -0
  166. package/dist/docs/traits/resize.yaml +39 -0
  167. package/dist/docs/traits/ripple.yaml +20 -0
  168. package/dist/docs/traits/roving-focus.yaml +30 -0
  169. package/dist/docs/traits/search.yaml +44 -0
  170. package/dist/docs/traits/selection.yaml +41 -0
  171. package/dist/docs/traits/shortcut.yaml +25 -0
  172. package/dist/docs/traits/slash-command.yaml +40 -0
  173. package/dist/docs/traits/snap-resize.yaml +39 -0
  174. package/dist/docs/traits/sort.yaml +47 -0
  175. package/dist/docs/traits/store.yaml +32 -0
  176. package/dist/docs/traits/swipe.yaml +38 -0
  177. package/dist/docs/traits/text-trigger.yaml +35 -0
  178. package/dist/docs/traits/toast.yaml +41 -0
  179. package/dist/docs/traits/toggle-scheme.yaml +40 -0
  180. package/dist/docs/traits/toggle-state.yaml +23 -0
  181. package/dist/docs/traits/tooltip.yaml +39 -0
  182. package/dist/docs/traits/toss.yaml +40 -0
  183. package/dist/docs/traits/trap-focus.yaml +20 -0
  184. package/dist/docs/traits/validate.yaml +52 -0
  185. package/dist/docs/traits/virtual-scroll.yaml +44 -0
  186. package/package.json +4 -2
@@ -0,0 +1,41 @@
1
+ name: aui-graph-layer
2
+ tag: aui-graph-layer
3
+ type: component
4
+ summary: Stacking layer for graph editors. Extends aui-editor-layer.
5
+ description: >
6
+ Named layer inside aui-graph-ui. Extends aui-editor-layer with
7
+ the same API. Supports graph-conventional names: "wires" (z:-1),
8
+ "content" (z:0), "chrome" (z:2), plus the standard editor names
9
+ (under, content, over, chrome). SVG layers stamp an SVG element
10
+ for noodle path rendering.
11
+
12
+ base: AuiEditorLayer
13
+
14
+ attributes:
15
+ name:
16
+ syntax: key-value
17
+ type: string
18
+ default: ""
19
+ description: >
20
+ Layer name. "wires" = z-index -1 (noodle paths).
21
+ "content" = z-index 0 (nodes). "over" = z-index 1.
22
+ "chrome" = z-index 2 (menus, handles).
23
+
24
+ type:
25
+ syntax: key-value
26
+ type: enum
27
+ values: [html, svg]
28
+ default: html
29
+ description: >
30
+ "svg" stamps an SVG element for noodle rendering.
31
+
32
+ composition:
33
+ parents: [aui-graph-ui]
34
+ children: [aui-graph-node, aui-graph-noodle, any]
35
+
36
+ examples:
37
+ - html: |
38
+ <aui-graph-layer name="wires" type="svg">
39
+ <aui-graph-noodle from="a:out" to="b:in" color="accent" weight="2"></aui-graph-noodle>
40
+ </aui-graph-layer>
41
+ description: SVG wire layer with a noodle connection.
@@ -0,0 +1,58 @@
1
+ name: aui-graph-node
2
+ tag: aui-graph-node
3
+ type: component
4
+ summary: Positioned draggable node inside a graph editor.
5
+ description: >
6
+ Renders at (x, y) in graph coordinates via CSS transform.
7
+ Draggable with pointer. Contains any content — typically
8
+ aui-container with aui-graph-port children for connections.
9
+
10
+ base: AgentElement
11
+
12
+ attributes:
13
+ x:
14
+ syntax: key-value
15
+ type: string
16
+ default: "0"
17
+ description: X position in graph coordinates.
18
+
19
+ y:
20
+ syntax: key-value
21
+ type: string
22
+ default: "0"
23
+ description: Y position in graph coordinates.
24
+
25
+ node-id:
26
+ syntax: key-value
27
+ type: string
28
+ default: ""
29
+ description: Unique node identifier. Used by noodle port selectors.
30
+
31
+ selected:
32
+ syntax: boolean
33
+ type: boolean
34
+ default: false
35
+ description: Whether the node is selected.
36
+
37
+ events:
38
+ aui:node-move:
39
+ description: Fired when node is dragged. Detail { id, x, y }.
40
+ bubbles: true
41
+
42
+ composition:
43
+ parents: [aui-graph-layer, aui-editor-layer]
44
+ children: [aui-container, aui-graph-port, any]
45
+ context: >
46
+ Place inside a content-type layer. The node-id is referenced
47
+ by aui-graph-noodle port selectors ("nodeId:portId").
48
+
49
+ examples:
50
+ - html: |
51
+ <aui-graph-node x="100" y="50" node-id="my-node">
52
+ <aui-container kind="card" bordered padding="3">
53
+ <aui-text weight="medium">My Node</aui-text>
54
+ <aui-graph-port port-id="in" side="left" type="input"></aui-graph-port>
55
+ <aui-graph-port port-id="out" side="right" type="output"></aui-graph-port>
56
+ </aui-container>
57
+ </aui-graph-node>
58
+ description: Draggable node with input and output ports.
@@ -0,0 +1,103 @@
1
+ name: aui-graph-noodle
2
+ tag: aui-graph-noodle
3
+ type: component
4
+ summary: SVG bezier connection between two points or ports.
5
+ description: >
6
+ Renders a cubic bezier path inside a parent SVG layer. Supports
7
+ port selectors ("nodeId:portId") for live tracking of port
8
+ positions, or literal "x,y" coordinates. Direction-aware control
9
+ points extend perpendicular to each port's side attribute.
10
+ Optional label at bezier midpoint, stream/blob animations.
11
+
12
+ base: AgentElement
13
+
14
+ attributes:
15
+ from:
16
+ syntax: key-value
17
+ type: string
18
+ default: ""
19
+ description: >
20
+ Start point. "nodeId:portId" resolves from live port position.
21
+ "x,y" uses literal coordinates.
22
+
23
+ to:
24
+ syntax: key-value
25
+ type: string
26
+ default: ""
27
+ description: >
28
+ End point. Same format as from.
29
+
30
+ color:
31
+ syntax: key-value
32
+ type: string
33
+ default: "var(--aui-border)"
34
+ description: >
35
+ Stroke color. Named presets: accent, success, warning, danger,
36
+ muted, scrim. Or any CSS color value.
37
+
38
+ weight:
39
+ syntax: key-value
40
+ type: string
41
+ default: "2"
42
+ description: Stroke width in pixels.
43
+
44
+ label:
45
+ syntax: key-value
46
+ type: string
47
+ default: ""
48
+ description: Text shown at the bezier midpoint (t=0.5).
49
+
50
+ label-bg:
51
+ syntax: key-value
52
+ type: string
53
+ default: "var(--aui-doc)"
54
+ description: Background fill for the label rect.
55
+
56
+ animation:
57
+ syntax: key-value
58
+ type: enum
59
+ values: [none, stream, blob]
60
+ default: none
61
+ description: >
62
+ "stream" animates a flowing dash pattern. "blob" sends a
63
+ circle traveling along the path.
64
+
65
+ animate-direction:
66
+ syntax: key-value
67
+ type: enum
68
+ values: [forward, reverse]
69
+ default: forward
70
+ description: Direction of stream/blob animation.
71
+
72
+ animate-speed:
73
+ syntax: key-value
74
+ type: string
75
+ default: "1500"
76
+ description: Animation duration in milliseconds.
77
+
78
+ dashed:
79
+ syntax: boolean
80
+ type: boolean
81
+ default: false
82
+ description: Render as dashed stroke.
83
+
84
+ events:
85
+ aui:noodle-click:
86
+ description: Fired when the noodle path is clicked. Detail { from, to }.
87
+ bubbles: true
88
+
89
+ composition:
90
+ parents: [aui-graph-layer, aui-editor-layer]
91
+ children: none
92
+ context: >
93
+ Place inside an SVG-type layer. Uses closest aui-graph-ui or
94
+ aui-editor for coordinate conversion when resolving port selectors.
95
+
96
+ examples:
97
+ - html: |
98
+ <aui-graph-noodle from="source:out" to="target:in" color="accent" weight="2" label="data"></aui-graph-noodle>
99
+ description: Labeled noodle connecting two ports by selector.
100
+
101
+ - html: |
102
+ <aui-graph-noodle from="100,50" to="400,150" color="success" weight="2" animation="stream"></aui-graph-noodle>
103
+ description: Animated stream noodle with literal coordinates.
@@ -0,0 +1,71 @@
1
+ name: aui-graph-port
2
+ tag: aui-graph-port
3
+ type: component
4
+ summary: Connection endpoint on a graph node edge.
5
+ description: >
6
+ Small dot positioned at a node's edge. Reports its center
7
+ position in editor coordinates via getPosition(). Used by
8
+ aui-graph-noodle port selectors to resolve connection endpoints.
9
+ Type coloring: input (green), output (accent), bidirectional (border).
10
+
11
+ base: AgentElement
12
+
13
+ attributes:
14
+ port-id:
15
+ syntax: key-value
16
+ type: string
17
+ default: ""
18
+ description: Unique identifier within the parent node.
19
+
20
+ side:
21
+ syntax: key-value
22
+ type: enum
23
+ values: [top, right, bottom, left]
24
+ default: right
25
+ description: Which edge of the parent node the port sits on.
26
+
27
+ type:
28
+ syntax: key-value
29
+ type: enum
30
+ values: [input, output, bidirectional]
31
+ default: bidirectional
32
+ description: Connection direction. Controls dot color.
33
+
34
+ data-type:
35
+ syntax: key-value
36
+ type: string
37
+ default: any
38
+ description: Data type for connection compatibility checking.
39
+
40
+ connected:
41
+ syntax: boolean
42
+ type: boolean
43
+ default: false
44
+ description: Whether a noodle is connected. Fills the dot.
45
+
46
+ api:
47
+ methods:
48
+ - name: getPosition
49
+ signature: "() => { x: number, y: number }"
50
+ description: >
51
+ Center position in editor coordinates. Uses nearest
52
+ aui-graph-ui or aui-editor's screenToEditor() for conversion.
53
+
54
+ events:
55
+ aui:port-drag-start:
56
+ description: >
57
+ Fired on pointerdown for drag-to-connect.
58
+ Detail { portId, side, type, dataType, position }.
59
+ bubbles: true
60
+
61
+ composition:
62
+ parents: [aui-graph-node, aui-container]
63
+ children: none
64
+ context: >
65
+ Place inside aui-graph-node. The port-id is referenced by
66
+ noodle selectors as "nodeId:portId".
67
+
68
+ examples:
69
+ - html: |
70
+ <aui-graph-port port-id="out" side="right" type="output"></aui-graph-port>
71
+ description: Output port on the right edge.
@@ -0,0 +1,64 @@
1
+ name: aui-graph-ui
2
+ tag: aui-graph-ui
3
+ type: component
4
+ summary: Graph editor canvas with dot grid and snap-to-grid.
5
+ description: >
6
+ Extends aui-editor with graph-specific features. Defaults to
7
+ background="dots". Adds snap-to-grid for node positioning.
8
+ All pan/zoom, coordinate conversion, context provision, and
9
+ layer stacking are inherited from aui-editor.
10
+
11
+ base: AuiEditor
12
+
13
+ attributes:
14
+ snap-to-grid:
15
+ syntax: boolean
16
+ type: boolean
17
+ default: false
18
+ description: Snap node positions to the grid when dragged.
19
+
20
+ connectable:
21
+ syntax: boolean
22
+ type: boolean
23
+ default: false
24
+ description: >
25
+ Enable interactive drag-to-connect between ports. Drag from
26
+ a port to create a rubber-band noodle, release near another
27
+ port to fire aui:noodle-connect with from/to selectors.
28
+
29
+ inherits:
30
+ from: aui-editor
31
+ attributes: [zoom, pan-x, pan-y, min-zoom, max-zoom, background, grid-size]
32
+ methods: [screenToEditor, editorToScreen, panTo, zoomTo, reset]
33
+ events: [aui:editor-pan, aui:editor-zoom]
34
+ context: editorContext
35
+
36
+ composition:
37
+ parents: [div, section, main, aui-stack, any]
38
+ children: [aui-graph-layer, aui-editor-layer]
39
+ context: >
40
+ Root canvas for node-graph editors. Place aui-graph-layer
41
+ children inside for wires and content separation.
42
+
43
+ examples:
44
+ - html: |
45
+ <aui-graph-ui style="width: 100%; height: 20rem;">
46
+ <aui-graph-layer name="wires" type="svg">
47
+ <aui-graph-noodle from="source:out" to="target:in" color="accent" weight="2"></aui-graph-noodle>
48
+ </aui-graph-layer>
49
+ <aui-graph-layer name="content">
50
+ <aui-graph-node x="50" y="50" node-id="source">
51
+ <aui-container kind="card" bordered padding="3">
52
+ <aui-text weight="medium">Source</aui-text>
53
+ <aui-graph-port port-id="out" side="right" type="output"></aui-graph-port>
54
+ </aui-container>
55
+ </aui-graph-node>
56
+ <aui-graph-node x="350" y="50" node-id="target">
57
+ <aui-container kind="card" bordered padding="3">
58
+ <aui-text weight="medium">Target</aui-text>
59
+ <aui-graph-port port-id="in" side="left" type="input"></aui-graph-port>
60
+ </aui-container>
61
+ </aui-graph-node>
62
+ </aui-graph-layer>
63
+ </aui-graph-ui>
64
+ description: Simple two-node graph with a noodle connection.
@@ -0,0 +1,55 @@
1
+ name: aui-gripper
2
+ tag: aui-gripper
3
+ type: component
4
+ summary: Resize handle for panes and resizable containers.
5
+ description: >
6
+ A draggable separator that emits resize events with delta values.
7
+ Supports both horizontal (col-resize) and vertical (row-resize)
8
+ orientations. Keyboard resizing via arrow keys. Has a 10px hit area
9
+ with a 2px feedback line at rest (border-muted) that expands to a
10
+ 6px accent bar on click. Width/height transition is animated between
11
+ rest and active states.
12
+
13
+ base: AgentElement
14
+
15
+ attributes:
16
+ orientation:
17
+ syntax: key-value
18
+ type: enum
19
+ values: [horizontal, vertical]
20
+ default: horizontal
21
+ description: >
22
+ Drag axis. Horizontal = vertical divider (drag left/right).
23
+ Vertical = horizontal divider (drag up/down).
24
+
25
+ disabled:
26
+ syntax: boolean
27
+ type: boolean
28
+ default: false
29
+ description: Prevents drag interaction.
30
+
31
+ a11y:
32
+ role: separator
33
+ keyboard:
34
+ ArrowLeft: Resize left (horizontal).
35
+ ArrowRight: Resize right (horizontal).
36
+ ArrowUp: Resize up (vertical).
37
+ ArrowDown: Resize down (vertical).
38
+ Shift+Arrow: Resize by 10px instead of 1px.
39
+ aria:
40
+ aria-orientation: Set from orientation attribute.
41
+
42
+ events:
43
+ aui:resize-start:
44
+ description: Fired when drag begins.
45
+ aui:resize-move:
46
+ description: Fired on drag movement. detail contains dx, dy, delta.
47
+ aui:resize-end:
48
+ description: Fired when drag ends. detail contains final dx, dy, delta.
49
+
50
+ examples:
51
+ - html: <aui-gripper></aui-gripper>
52
+ description: Default horizontal gripper (drag left/right).
53
+
54
+ - html: <aui-gripper orientation="vertical"></aui-gripper>
55
+ description: Vertical gripper (drag up/down).
@@ -0,0 +1,133 @@
1
+ name: aui-icon
2
+ tag: aui-icon
3
+ type: component
4
+ summary: SVG icon rendered from a global registry.
5
+ description: >
6
+ Displays an icon by name from the global icon registry. Icons are
7
+ registered via registerIcon() or registerIcons() — the component
8
+ itself is icon-set agnostic. Inherits color from its parent via
9
+ currentColor. Size follows --aui-icon-size or explicit size attribute.
10
+
11
+ base: AgentElement
12
+
13
+ # ── Presentational attributes ─────────────────────────────
14
+
15
+ presentational:
16
+ size:
17
+ syntax: key-value
18
+ cascades: false
19
+ default: medium
20
+ values: [xs, sm, lg, xl]
21
+ description: >
22
+ Overrides the inherited --aui-icon-size token.
23
+ Default (no attribute) uses the token value from context.
24
+
25
+ # ── Component attributes ──────────────────────────────────
26
+
27
+ attributes:
28
+ name:
29
+ syntax: key-value
30
+ type: string
31
+ default: ""
32
+ description: >
33
+ Icon name matching a key in the global registry.
34
+ When the name changes, the SVG is re-rendered.
35
+ Registered names: arrow-up, caret-down, caret-left, caret-right,
36
+ caret-up, chat-dots, check, check-circle, circle, clock, crosshair,
37
+ dots-three, envelope, file-text, flask, gear, globe-simple, house,
38
+ image, lightbulb, list-checks, magnifying-glass, microphone, minus,
39
+ paperclip, pencil, plus, robot, sliders, sparkle, star, stop, user,
40
+ warning, warning-circle, x, chart-bar, sun, moon, heart, trash,
41
+ info, copy, thumbs-up, thumbs-down, arrow-clockwise.
42
+
43
+ label:
44
+ syntax: key-value
45
+ type: string
46
+ default: ""
47
+ description: >
48
+ Accessible label for meaningful icons. When set, the element
49
+ gets role="img" and aria-label. When absent, it is treated
50
+ as decorative (role="presentation", aria-hidden="true").
51
+
52
+ # ── Content model ─────────────────────────────────────────
53
+
54
+ content:
55
+ model: empty
56
+ accepts: []
57
+ required: false
58
+ description: >
59
+ Content is auto-rendered from the registry. Do not place
60
+ children inside aui-icon.
61
+
62
+ # ── Composition ───────────────────────────────────────────
63
+
64
+ composition:
65
+ parents: [aui-button, aui-input, aui-select, aui-header, aui-footer, any]
66
+ children: null
67
+ context: >
68
+ Icons appear inside button slots, input leading/trailing,
69
+ toolbar items, or standalone. Inherits color and size from
70
+ the parent context.
71
+
72
+ # ── Accessibility ─────────────────────────────────────────
73
+
74
+ a11y:
75
+ role: img (when label set) / presentation (decorative)
76
+ aria:
77
+ aria-label: Set from label attribute when present.
78
+ aria-hidden: Set to "true" when no label (decorative icon).
79
+
80
+ # ── CSS tokens consumed ──────────────────────────────────
81
+
82
+ tokens:
83
+ sizing:
84
+ - --aui-icon-size
85
+
86
+ # ── Examples ──────────────────────────────────────────────
87
+
88
+ examples:
89
+ - html: |
90
+ <aui-stack direction="row" gap="2" align-items="center">
91
+ <aui-icon name="house"></aui-icon>
92
+ <aui-icon name="gear"></aui-icon>
93
+ <aui-icon name="magnifying-glass"></aui-icon>
94
+ <aui-icon name="heart"></aui-icon>
95
+ <aui-icon name="star"></aui-icon>
96
+ <aui-icon name="user"></aui-icon>
97
+ <aui-icon name="pencil"></aui-icon>
98
+ <aui-icon name="trash"></aui-icon>
99
+ <aui-icon name="plus"></aui-icon>
100
+ <aui-icon name="check"></aui-icon>
101
+ <aui-icon name="warning"></aui-icon>
102
+ <aui-icon name="info"></aui-icon>
103
+ </aui-stack>
104
+ description: Icon gallery from the Phosphor icon set.
105
+
106
+ - html: |
107
+ <aui-stack direction="row" gap="2" align-items="center">
108
+ <aui-icon name="star" size="xs"></aui-icon>
109
+ <aui-icon name="star" size="sm"></aui-icon>
110
+ <aui-icon name="star"></aui-icon>
111
+ <aui-icon name="star" size="lg"></aui-icon>
112
+ <aui-icon name="star" size="xl"></aui-icon>
113
+ </aui-stack>
114
+ description: Size scale from xs to xl.
115
+
116
+ - html: |
117
+ <aui-stack direction="row" gap="2" align-items="center">
118
+ <aui-button outline accent>
119
+ <aui-icon name="pencil" slot="leading"></aui-icon>
120
+ Edit
121
+ </aui-button>
122
+ <aui-button primary danger>
123
+ <aui-icon name="trash" slot="leading"></aui-icon>
124
+ Delete
125
+ </aui-button>
126
+ <aui-button ghost hide-label label="Search">
127
+ <aui-icon name="magnifying-glass" slot="leading"></aui-icon>
128
+ </aui-button>
129
+ </aui-stack>
130
+ description: Icons inside button slots.
131
+
132
+ - html: <aui-icon name="warning" label="Warning" size="xl"></aui-icon>
133
+ description: Meaningful icon with accessible label.