@agent-ui-kit/web-components 0.0.15 → 0.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-ui.css +1 -1
- package/dist/api.colors.json +2 -2
- package/dist/api.colors.yaml +2 -2
- package/dist/api.components.json +463 -150
- package/dist/api.tokens.json +3 -3
- package/dist/api.tokens.yaml +3 -3
- package/dist/chunks/{agent-BF_R_HJk.js → agent-XMhz_6OA.js} +27 -22
- package/dist/chunks/{agent-BF_R_HJk.js.map → agent-XMhz_6OA.js.map} +1 -1
- package/dist/chunks/{meter-Dju8ik6C.js → form-oekEhwja.js} +402 -188
- package/dist/chunks/form-oekEhwja.js.map +1 -0
- package/dist/components/agent.js +1 -1
- package/dist/components/checkbox-group/checkbox-group.d.ts +14 -0
- package/dist/components/checkbox-group/index.d.ts +1 -0
- package/dist/components/editor.js +1 -1
- package/dist/components/form/form.d.ts +12 -0
- package/dist/components/form/index.d.ts +1 -0
- package/dist/components/graph.js +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/noodles/noodle-controller.d.ts +1 -1
- package/dist/components.js +89 -87
- package/dist/docs/blocks/agent-chat.yaml +33 -25
- package/dist/docs/blocks/announcement-card.yaml +14 -10
- package/dist/docs/blocks/bpm-process.yaml +216 -4
- package/dist/docs/blocks/chart-activity.yaml +12 -10
- package/dist/docs/blocks/chart-card.yaml +14 -11
- package/dist/docs/blocks/chart-donut.yaml +27 -23
- package/dist/docs/blocks/chart-grouped.yaml +14 -11
- package/dist/docs/blocks/chart-horizontal.yaml +13 -10
- package/dist/docs/blocks/chart-interactive.yaml +20 -17
- package/dist/docs/blocks/chart-labeled.yaml +14 -11
- package/dist/docs/blocks/checkout-form.yaml +26 -16
- package/dist/docs/blocks/clinical-trial.yaml +180 -4
- package/dist/docs/blocks/contributors.yaml +17 -11
- package/dist/docs/blocks/cyber-threat.yaml +158 -4
- package/dist/docs/blocks/dashboard-layout.yaml +25 -18
- package/dist/docs/blocks/data-eng-dag.yaml +222 -6
- package/dist/docs/blocks/date-picker.yaml +11 -10
- package/dist/docs/blocks/ddx-workflow.yaml +202 -6
- package/dist/docs/blocks/empty-state.yaml +8 -11
- package/dist/docs/blocks/env-variables.yaml +29 -20
- package/dist/docs/blocks/feature-upgrade.yaml +25 -18
- package/dist/docs/blocks/financial-risk.yaml +161 -4
- package/dist/docs/blocks/flow-editor.yaml +27 -18
- package/dist/docs/blocks/gen-ai-pipeline.yaml +232 -5
- package/dist/docs/blocks/issue-assign.yaml +25 -14
- package/dist/docs/blocks/keyboard-shortcuts.yaml +14 -9
- package/dist/docs/blocks/login-branded.yaml +62 -23
- package/dist/docs/blocks/login-email-only.yaml +14 -13
- package/dist/docs/blocks/login-form.yaml +17 -11
- package/dist/docs/blocks/login-simple.yaml +18 -12
- package/dist/docs/blocks/login-social.yaml +21 -14
- package/dist/docs/blocks/login-two-column.yaml +37 -17
- package/dist/docs/blocks/marketing-automation.yaml +209 -4
- package/dist/docs/blocks/member-list.yaml +23 -18
- package/dist/docs/blocks/ml-pipeline.yaml +163 -4
- package/dist/docs/blocks/nav-card.yaml +13 -11
- package/dist/docs/blocks/notification-list.yaml +18 -13
- package/dist/docs/blocks/oncology-pathway.yaml +227 -4
- package/dist/docs/blocks/pricing-card.yaml +20 -13
- package/dist/docs/blocks/processing-state.yaml +14 -11
- package/dist/docs/blocks/profile-card.yaml +18 -12
- package/dist/docs/blocks/saas-onboarding.yaml +222 -4
- package/dist/docs/blocks/settings-form.yaml +20 -11
- package/dist/docs/blocks/settings-panel.yaml +23 -22
- package/dist/docs/blocks/sidebar-nav.yaml +23 -15
- package/dist/docs/blocks/signup-form.yaml +17 -11
- package/dist/docs/blocks/stat-cards.yaml +12 -13
- package/dist/docs/blocks/status-card.yaml +20 -17
- package/dist/docs/blocks/suggested-labs.yaml +20 -13
- package/dist/docs/blocks/supply-chain.yaml +160 -4
- package/dist/docs/blocks/survey-card.yaml +21 -13
- package/dist/docs/blocks/tabbed-panel.yaml +21 -15
- package/dist/docs/blocks/team-empty.yaml +8 -9
- package/dist/docs/blocks/usage-billing.yaml +20 -16
- package/dist/docs/components/agent-activity.yaml +27 -7
- package/dist/docs/components/agent-prompt.yaml +1 -1
- package/dist/docs/components/agent-seeds.yaml +1 -1
- package/dist/docs/components/breadcrumb.yaml +35 -8
- package/dist/docs/components/button.yaml +13 -2
- package/dist/docs/components/calendar-picker.yaml +3 -2
- package/dist/docs/components/chip.yaml +1 -1
- package/dist/docs/components/color-picker.yaml +33 -7
- package/dist/docs/components/color-slider.yaml +7 -7
- package/dist/docs/components/container.yaml +2 -1
- package/dist/docs/components/heading.yaml +4 -0
- package/dist/docs/components/index.yaml +11 -1
- package/dist/docs/components/input.yaml +10 -9
- package/dist/docs/components/meter.yaml +37 -14
- package/dist/docs/components/nav-item.yaml +7 -7
- package/dist/docs/components/stat.yaml +164 -0
- package/dist/docs/components/stepper.yaml +23 -23
- package/dist/docs/components/time-field.yaml +35 -2
- package/dist/element.js +1 -1
- package/dist/reactivity.js +1 -1
- package/dist/register.js +299 -297
- package/dist/register.js.map +1 -1
- package/dist/store.js +1 -1
- package/dist/traits.js +2 -2
- package/package.json +1 -1
- package/dist/chunks/meter-Dju8ik6C.js.map +0 -1
|
@@ -17,8 +17,9 @@ presentational:
|
|
|
17
17
|
- md
|
|
18
18
|
- lg
|
|
19
19
|
- xl
|
|
20
|
+
- fill
|
|
20
21
|
description: |
|
|
21
|
-
Controls dimensions, typography, icon size, and spacing simultaneously. Swaps 7 tokens at once.
|
|
22
|
+
Controls dimensions, typography, icon size, and spacing simultaneously. Swaps 7 tokens at once. The special "fill" value stretches the button to 100% width and height of its parent cell with no minimum constraints.
|
|
22
23
|
radius:
|
|
23
24
|
syntax: boolean
|
|
24
25
|
exclusive: true
|
|
@@ -148,7 +149,17 @@ modifiers:
|
|
|
148
149
|
hide-label:
|
|
149
150
|
syntax: boolean
|
|
150
151
|
description: |
|
|
151
|
-
Hides the label text and collapses the button to icon-only. Square button sized to --aui-size
|
|
152
|
+
Hides the label text and collapses the button to icon-only. Square button sized to --aui-size with width/height = var(--aui-size) and padding: 0. Use with a slotted icon, icon-leading, or the icon attribute. Auto-detected when no label attribute and no child text nodes are present.
|
|
153
|
+
icon-size:
|
|
154
|
+
syntax: key-value
|
|
155
|
+
values:
|
|
156
|
+
- half
|
|
157
|
+
- sm
|
|
158
|
+
- md
|
|
159
|
+
- lg
|
|
160
|
+
- full
|
|
161
|
+
description: |
|
|
162
|
+
Percentage-based icon sizing within fill-mode buttons (size="fill"). Maps to 50%, 62.5%, 75%, 87.5%, 100% respectively.
|
|
152
163
|
text:
|
|
153
164
|
syntax: key-value
|
|
154
165
|
values:
|
|
@@ -29,8 +29,9 @@ attributes:
|
|
|
29
29
|
format:
|
|
30
30
|
syntax: key-value
|
|
31
31
|
type: string
|
|
32
|
-
default:
|
|
33
|
-
description:
|
|
32
|
+
default: medium
|
|
33
|
+
description: |
|
|
34
|
+
Display format for the selected date. Named presets use Intl.DateTimeFormat: "long" (March 21, 2026), "medium" (Mar 21, 2026), "short" (03/21/2026). Token-based formats also supported: YYYY-MM-DD, MM/DD/YYYY, etc.
|
|
34
35
|
modifiers:
|
|
35
36
|
disabled:
|
|
36
37
|
syntax: boolean
|
|
@@ -92,13 +92,39 @@ composition:
|
|
|
92
92
|
- any
|
|
93
93
|
children: []
|
|
94
94
|
examples:
|
|
95
|
-
- description: Basic color picker with
|
|
95
|
+
- description: Basic color picker with hex input (blue)
|
|
96
96
|
html: <aui-color-picker value="#3b82f6"></aui-color-picker>
|
|
97
97
|
- description: Color picker with OKLCH input
|
|
98
|
-
html:
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
98
|
+
html: |-
|
|
99
|
+
<aui-color-picker value="oklch(0.65 0.2 250)"></aui-color-picker>
|
|
100
|
+
|
|
101
|
+
<!-- ===============================================================
|
|
102
|
+
ALPHA
|
|
103
|
+
=============================================================== -->
|
|
104
|
+
- description: Color picker with alpha slider row visible
|
|
105
|
+
html: |-
|
|
106
|
+
<aui-color-picker value="oklch(0.65 0.2 15 / 0.8)" alpha></aui-color-picker>
|
|
107
|
+
|
|
108
|
+
<!-- ===============================================================
|
|
109
|
+
HEX OUTPUT FORMAT
|
|
110
|
+
=============================================================== -->
|
|
111
|
+
- description: Color picker serializing value as hex
|
|
112
|
+
html: |-
|
|
113
|
+
<aui-color-picker value="#10b981" format="hex"></aui-color-picker>
|
|
114
|
+
|
|
115
|
+
<!-- ===============================================================
|
|
116
|
+
DISABLED
|
|
117
|
+
=============================================================== -->
|
|
103
118
|
- description: Disabled color picker
|
|
104
|
-
html:
|
|
119
|
+
html: |-
|
|
120
|
+
<aui-color-picker value="#10b981" disabled></aui-color-picker>
|
|
121
|
+
|
|
122
|
+
<!-- ===============================================================
|
|
123
|
+
MULTIPLE PICKERS
|
|
124
|
+
=============================================================== -->
|
|
125
|
+
- description: Two pickers side by side for comparison
|
|
126
|
+
html: |-
|
|
127
|
+
<div style="display: flex; gap: 2rem;">
|
|
128
|
+
<aui-color-picker value="oklch(0.7 0.25 145)"></aui-color-picker>
|
|
129
|
+
<aui-color-picker value="oklch(0.55 0.22 300)" alpha></aui-color-picker>
|
|
130
|
+
</div>
|
|
@@ -131,7 +131,7 @@ examples:
|
|
|
131
131
|
=============================================================== -->
|
|
132
132
|
- description: Full-width hue slider
|
|
133
133
|
html: |-
|
|
134
|
-
<aui-color-slider channel="hue" value="200" lightness="0.65" chroma="0.15"
|
|
134
|
+
<aui-color-slider channel="hue" value="200" lightness="0.65" chroma="0.15" width="full"></aui-color-slider>
|
|
135
135
|
|
|
136
136
|
<!-- ===============================================================
|
|
137
137
|
DISABLED
|
|
@@ -143,11 +143,11 @@ examples:
|
|
|
143
143
|
<!-- ===============================================================
|
|
144
144
|
GROUP -- all channels together
|
|
145
145
|
=============================================================== -->
|
|
146
|
-
- description: All four channel sliders together
|
|
146
|
+
- description: All four OKLCH channel sliders together
|
|
147
147
|
html: |-
|
|
148
|
-
<aui-stack gap="3">
|
|
149
|
-
<aui-color-slider channel="hue" value="250" lightness="0.65" chroma="0.2"
|
|
150
|
-
<aui-color-slider channel="chroma" value="0.2" hue="250" lightness="0.65"
|
|
151
|
-
<aui-color-slider channel="lightness" value="0.65" hue="250" chroma="0.2"
|
|
152
|
-
<aui-color-slider channel="alpha" value="1" hue="250" chroma="0.2" lightness="0.65"
|
|
148
|
+
<aui-stack gap="3" style="min-width: 20rem;">
|
|
149
|
+
<aui-color-slider channel="hue" value="250" lightness="0.65" chroma="0.2" width="full"></aui-color-slider>
|
|
150
|
+
<aui-color-slider channel="chroma" value="0.2" hue="250" lightness="0.65" width="full"></aui-color-slider>
|
|
151
|
+
<aui-color-slider channel="lightness" value="0.65" hue="250" chroma="0.2" width="full"></aui-color-slider>
|
|
152
|
+
<aui-color-slider channel="alpha" value="1" hue="250" chroma="0.2" lightness="0.65" width="full"></aui-color-slider>
|
|
153
153
|
</aui-stack>
|
|
@@ -56,9 +56,10 @@ attributes:
|
|
|
56
56
|
- widget
|
|
57
57
|
- card
|
|
58
58
|
- panel
|
|
59
|
+
- popover
|
|
59
60
|
default: card
|
|
60
61
|
description: |
|
|
61
|
-
Sets the padding and gap scale for all children. widget: 0.75rem (compact
|
|
62
|
+
Sets the padding and gap scale for all children. widget: 0.75rem (compact). card: 1rem (default). panel: 1.25rem (spacious). popover: 0.75rem with modal background, shadow, border, and auto-computed border-radius (radius + padding) so inner content corners don't clip.
|
|
62
63
|
href:
|
|
63
64
|
syntax: key-value
|
|
64
65
|
type: string
|
|
@@ -34,6 +34,10 @@ examples:
|
|
|
34
34
|
- description: Full size scale
|
|
35
35
|
html: |-
|
|
36
36
|
<aui-stack gap="3">
|
|
37
|
+
<aui-heading size="6xl">Heading 6XL — Hero</aui-heading>
|
|
38
|
+
<aui-heading size="5xl">Heading 5XL — Display</aui-heading>
|
|
39
|
+
<aui-heading size="4xl">Heading 4XL — Landing</aui-heading>
|
|
40
|
+
<aui-heading size="3xl">Heading 3XL — Page hero</aui-heading>
|
|
37
41
|
<aui-heading size="2xl">Heading 2XL — Page title</aui-heading>
|
|
38
42
|
<aui-heading size="xl">Heading XL — Section title</aui-heading>
|
|
39
43
|
<aui-heading size="lg">Heading LG — Card title</aui-heading>
|
|
@@ -49,10 +49,20 @@ aui-radio-group:
|
|
|
49
49
|
uses: [plan selection in pricing, payment method chooser, frequency toggle in settings]
|
|
50
50
|
children: [aui-radio]
|
|
51
51
|
|
|
52
|
+
aui-checkbox-group:
|
|
53
|
+
summary: Container that coordinates checkbox multi-selection with min/max constraints.
|
|
54
|
+
uses: [multi-select form fields, feature toggles, preference checkboxes, filter groups]
|
|
55
|
+
children: [aui-checkbox]
|
|
56
|
+
|
|
52
57
|
aui-field:
|
|
53
58
|
summary: Form field wrapper with label, description, and error.
|
|
54
59
|
uses: [labeled login input, settings form row, registration field with validation, inline error display]
|
|
55
|
-
children: [aui-input, aui-textarea, aui-select, aui-checkbox, aui-switch, aui-radio-group]
|
|
60
|
+
children: [aui-input, aui-textarea, aui-select, aui-checkbox, aui-switch, aui-radio-group, aui-checkbox-group]
|
|
61
|
+
|
|
62
|
+
aui-form:
|
|
63
|
+
summary: Form coordinator with validation and structured submit events.
|
|
64
|
+
uses: [settings forms, registration pages, profile editors, search forms, inline data entry]
|
|
65
|
+
children: [aui-field, aui-button, aui-checkbox-group, aui-fieldset]
|
|
56
66
|
|
|
57
67
|
aui-tooltip:
|
|
58
68
|
summary: Hover/focus tooltip with popover-based positioning.
|
|
@@ -268,16 +268,9 @@ examples:
|
|
|
268
268
|
- description: Read-only input with dashed border
|
|
269
269
|
html: <aui-input value="Read only" readonly></aui-input>
|
|
270
270
|
- description: Input with leading icon
|
|
271
|
-
html:
|
|
272
|
-
<aui-input placeholder="Search">
|
|
273
|
-
<span slot="leading">🔍</span>
|
|
274
|
-
</aui-input>
|
|
271
|
+
html: <aui-input placeholder="Search" icon-leading="magnifying-glass"></aui-input>
|
|
275
272
|
- description: Input with leading and trailing icons
|
|
276
|
-
html:
|
|
277
|
-
<aui-input type="email" placeholder="Email">
|
|
278
|
-
<span slot="leading">✉</span>
|
|
279
|
-
<span slot="trailing">✓</span>
|
|
280
|
-
</aui-input>
|
|
273
|
+
html: <aui-input type="email" placeholder="Email" icon-leading="envelope" icon-trailing="check"></aui-input>
|
|
281
274
|
- description: Input inside a labeled field
|
|
282
275
|
html: |-
|
|
283
276
|
<aui-field label="Email" required>
|
|
@@ -299,3 +292,11 @@ examples:
|
|
|
299
292
|
<aui-field label="Filter">
|
|
300
293
|
<aui-input type="search" placeholder="Filter items..." width="full"></aui-input>
|
|
301
294
|
</aui-field>
|
|
295
|
+
- description: Input with text prefix (currency)
|
|
296
|
+
html: <aui-input placeholder="0.00" prefix="$"></aui-input>
|
|
297
|
+
- description: Input with text suffix (unit)
|
|
298
|
+
html: <aui-input placeholder="Weight" suffix="kg"></aui-input>
|
|
299
|
+
- description: Input with both prefix and suffix (URL)
|
|
300
|
+
html: <aui-input placeholder="example" prefix="https://" suffix=".com"></aui-input>
|
|
301
|
+
- description: Number input with stepper
|
|
302
|
+
html: <aui-input type="number" value="5" min="0" max="100" step="1"></aui-input>
|
|
@@ -56,23 +56,46 @@ tokens:
|
|
|
56
56
|
shape:
|
|
57
57
|
- --aui-meter-radius
|
|
58
58
|
examples:
|
|
59
|
-
- description:
|
|
60
|
-
html:
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
59
|
+
- description: Labeled meters with values
|
|
60
|
+
html: |-
|
|
61
|
+
<aui-stack gap="4">
|
|
62
|
+
<aui-stack gap="2">
|
|
63
|
+
<aui-stack direction="row" gap="2" align-items="center">
|
|
64
|
+
<aui-text size="sm" spacer>CPU Usage</aui-text>
|
|
65
|
+
<aui-text size="sm" strong>45%</aui-text>
|
|
66
|
+
</aui-stack>
|
|
67
|
+
<aui-meter value="45" size="lg"></aui-meter>
|
|
68
|
+
</aui-stack>
|
|
69
|
+
|
|
70
|
+
<aui-stack gap="2">
|
|
71
|
+
<aui-stack direction="row" gap="2" align-items="center">
|
|
72
|
+
<aui-text size="sm" spacer>Memory</aui-text>
|
|
73
|
+
<aui-text size="sm" strong>75%</aui-text>
|
|
74
|
+
</aui-stack>
|
|
75
|
+
<aui-meter value="75" size="lg" warning></aui-meter>
|
|
76
|
+
</aui-stack>
|
|
77
|
+
|
|
78
|
+
<aui-stack gap="2">
|
|
79
|
+
<aui-stack direction="row" gap="2" align-items="center">
|
|
80
|
+
<aui-text size="sm" spacer>Disk</aui-text>
|
|
81
|
+
<aui-text size="sm" strong>95%</aui-text>
|
|
82
|
+
</aui-stack>
|
|
83
|
+
<aui-meter value="95" size="lg" danger></aui-meter>
|
|
84
|
+
</aui-stack>
|
|
85
|
+
</aui-stack>
|
|
86
|
+
- description: Size comparison
|
|
66
87
|
html: |-
|
|
67
88
|
<aui-stack gap="3">
|
|
68
|
-
<aui-meter value="
|
|
89
|
+
<aui-meter value="60" size="sm" success></aui-meter>
|
|
69
90
|
<aui-meter value="60"></aui-meter>
|
|
70
|
-
<aui-meter value="
|
|
91
|
+
<aui-meter value="60" size="lg"></aui-meter>
|
|
71
92
|
</aui-stack>
|
|
72
|
-
- description:
|
|
93
|
+
- description: Custom range (min/max)
|
|
73
94
|
html: |-
|
|
74
|
-
<aui-stack
|
|
75
|
-
<aui-
|
|
76
|
-
|
|
77
|
-
|
|
95
|
+
<aui-stack gap="2">
|
|
96
|
+
<aui-stack direction="row" gap="2" align-items="center">
|
|
97
|
+
<aui-text size="sm" spacer>Temperature</aui-text>
|
|
98
|
+
<aui-text size="sm" strong>72°F</aui-text>
|
|
99
|
+
</aui-stack>
|
|
100
|
+
<aui-meter value="72" min="32" max="120" size="lg"></aui-meter>
|
|
78
101
|
</aui-stack>
|
|
@@ -62,20 +62,20 @@ examples:
|
|
|
62
62
|
- description: Nav item with leading icon
|
|
63
63
|
html: |-
|
|
64
64
|
<aui-nav-item>
|
|
65
|
-
<aui-icon name="
|
|
65
|
+
<aui-icon name="house"></aui-icon>
|
|
66
66
|
Dashboard
|
|
67
67
|
</aui-nav-item>
|
|
68
68
|
- description: Active nav item with icon
|
|
69
69
|
html: |-
|
|
70
70
|
<aui-nav-item active>
|
|
71
|
-
<aui-icon name="
|
|
71
|
+
<aui-icon name="gear"></aui-icon>
|
|
72
72
|
Settings
|
|
73
73
|
</aui-nav-item>
|
|
74
74
|
- description: Navigation list with mixed states
|
|
75
75
|
html: |-
|
|
76
76
|
<aui-stack gap="1">
|
|
77
77
|
<aui-nav-item active>
|
|
78
|
-
<aui-icon name="
|
|
78
|
+
<aui-icon name="house"></aui-icon>
|
|
79
79
|
Dashboard
|
|
80
80
|
</aui-nav-item>
|
|
81
81
|
<aui-nav-item>
|
|
@@ -83,22 +83,22 @@ examples:
|
|
|
83
83
|
Documents
|
|
84
84
|
</aui-nav-item>
|
|
85
85
|
<aui-nav-item>
|
|
86
|
-
<aui-icon name="users"></aui-icon>
|
|
86
|
+
<aui-icon name="users-three"></aui-icon>
|
|
87
87
|
Team
|
|
88
88
|
</aui-nav-item>
|
|
89
89
|
<aui-nav-item>
|
|
90
|
-
<aui-icon name="
|
|
90
|
+
<aui-icon name="gear"></aui-icon>
|
|
91
91
|
Settings
|
|
92
92
|
</aui-nav-item>
|
|
93
93
|
<aui-nav-item disabled>
|
|
94
|
-
<aui-icon name="
|
|
94
|
+
<aui-icon name="warning"></aui-icon>
|
|
95
95
|
Admin
|
|
96
96
|
</aui-nav-item>
|
|
97
97
|
</aui-stack>
|
|
98
98
|
- description: Nav item with trailing badge
|
|
99
99
|
html: |-
|
|
100
100
|
<aui-nav-item>
|
|
101
|
-
<aui-icon name="
|
|
101
|
+
<aui-icon name="envelope"></aui-icon>
|
|
102
102
|
Inbox
|
|
103
103
|
<aui-badge>12</aui-badge>
|
|
104
104
|
</aui-nav-item>
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
name: aui-stat
|
|
2
|
+
tag: aui-stat
|
|
3
|
+
type: component
|
|
4
|
+
summary: Stat display with label, value, trend indicator, and optional animation.
|
|
5
|
+
description: |
|
|
6
|
+
Displays a metric with label, formatted value, and optional trend arrow. Stamps three internal spans: [data-stat-label], [data-stat-value], [data-stat-change]. Supports count-up and character-scramble animations with configurable duration. Value formatting preserves prefixes, suffixes, commas, and decimals. Intent attributes (accent, success, warning, danger) color the value.
|
|
7
|
+
base: AgentElement
|
|
8
|
+
presentational:
|
|
9
|
+
intent:
|
|
10
|
+
syntax: boolean
|
|
11
|
+
exclusive: true
|
|
12
|
+
cascades: false
|
|
13
|
+
default: neutral
|
|
14
|
+
values:
|
|
15
|
+
- accent
|
|
16
|
+
- success
|
|
17
|
+
- warning
|
|
18
|
+
- danger
|
|
19
|
+
description: |
|
|
20
|
+
Colors the stat value text. Default is ink-strong (neutral).
|
|
21
|
+
attributes:
|
|
22
|
+
label:
|
|
23
|
+
syntax: key-value
|
|
24
|
+
type: string
|
|
25
|
+
default: ""
|
|
26
|
+
description: Stat label text shown above the value.
|
|
27
|
+
value:
|
|
28
|
+
syntax: key-value
|
|
29
|
+
type: string
|
|
30
|
+
default: ""
|
|
31
|
+
description: |
|
|
32
|
+
Formatted stat value (e.g. "$1,234.56", "89%", "12.4K"). Preserves prefix, suffix, commas, and decimals during animation.
|
|
33
|
+
trend:
|
|
34
|
+
syntax: key-value
|
|
35
|
+
type: enum
|
|
36
|
+
values:
|
|
37
|
+
- up
|
|
38
|
+
- down
|
|
39
|
+
- neutral
|
|
40
|
+
default: ""
|
|
41
|
+
description: |
|
|
42
|
+
Trend direction. "up" shows a green up-arrow, "down" shows a red down-arrow, "neutral" shows muted text with no arrow.
|
|
43
|
+
change:
|
|
44
|
+
syntax: key-value
|
|
45
|
+
type: string
|
|
46
|
+
default: ""
|
|
47
|
+
description: |
|
|
48
|
+
Change description text (e.g. "+12.5%", "-3 units"). Displayed next to the trend arrow.
|
|
49
|
+
animate-count:
|
|
50
|
+
syntax: boolean
|
|
51
|
+
type: boolean
|
|
52
|
+
default: false
|
|
53
|
+
description: |
|
|
54
|
+
Enables count-up animation from animate-count-start to the target value. Uses ease-out cubic easing.
|
|
55
|
+
animate-count-start:
|
|
56
|
+
syntax: key-value
|
|
57
|
+
type: string
|
|
58
|
+
default: "0"
|
|
59
|
+
description: |
|
|
60
|
+
Starting value for count-up animation. Can include prefix/suffix matching the value format.
|
|
61
|
+
animate-scramble:
|
|
62
|
+
syntax: boolean
|
|
63
|
+
type: boolean
|
|
64
|
+
default: false
|
|
65
|
+
description: |
|
|
66
|
+
Enables character-scramble animation. Digit characters randomize and resolve left-to-right. Non-digit characters pass through unchanged.
|
|
67
|
+
duration-ms:
|
|
68
|
+
syntax: key-value
|
|
69
|
+
type: string
|
|
70
|
+
default: "2000"
|
|
71
|
+
description: |
|
|
72
|
+
Animation duration in milliseconds for both animate-count and animate-scramble.
|
|
73
|
+
content:
|
|
74
|
+
model: block
|
|
75
|
+
accepts:
|
|
76
|
+
- aui-sparkline
|
|
77
|
+
required: false
|
|
78
|
+
description: |
|
|
79
|
+
Optional aui-sparkline child for inline chart below the stat value.
|
|
80
|
+
composition:
|
|
81
|
+
parents:
|
|
82
|
+
- aui-container
|
|
83
|
+
- aui-inset
|
|
84
|
+
- aui-stack
|
|
85
|
+
- aui-grid
|
|
86
|
+
- div
|
|
87
|
+
children:
|
|
88
|
+
- aui-sparkline
|
|
89
|
+
context: |
|
|
90
|
+
Typically placed inside aui-container kind="widget" for KPI cards. Multiple stats in a grid for dashboard layouts.
|
|
91
|
+
tokens:
|
|
92
|
+
- name: font-size (label)
|
|
93
|
+
default: var(--aui-font-xs)
|
|
94
|
+
description: Label font size.
|
|
95
|
+
- name: font-size (value)
|
|
96
|
+
default: var(--aui-font-2xl)
|
|
97
|
+
description: Value font size.
|
|
98
|
+
- name: font-size (change)
|
|
99
|
+
default: var(--aui-font-xs)
|
|
100
|
+
description: Change text font size.
|
|
101
|
+
examples:
|
|
102
|
+
- description: Basic stat with label and value
|
|
103
|
+
html: |-
|
|
104
|
+
<aui-stat label="Total Users" value="12,450"></aui-stat>
|
|
105
|
+
|
|
106
|
+
<!-- ===============================================================
|
|
107
|
+
TREND -- up/down/neutral
|
|
108
|
+
=============================================================== -->
|
|
109
|
+
- description: Upward trend stat
|
|
110
|
+
html: <aui-stat label="Revenue" value="$48,200" trend="up" change="+12.5%"></aui-stat>
|
|
111
|
+
- description: Downward trend stat
|
|
112
|
+
html: <aui-stat label="Churn Rate" value="3.2%" trend="down" change="-0.8%"></aui-stat>
|
|
113
|
+
- description: Neutral trend stat
|
|
114
|
+
html: |-
|
|
115
|
+
<aui-stat label="Active Sessions" value="1,234" trend="neutral" change="0%"></aui-stat>
|
|
116
|
+
|
|
117
|
+
<!-- ===============================================================
|
|
118
|
+
INTENT VARIANTS
|
|
119
|
+
=============================================================== -->
|
|
120
|
+
- description: Success intent stat
|
|
121
|
+
html: <aui-stat label="Uptime" value="99.9%" success trend="up" change="+0.1%"></aui-stat>
|
|
122
|
+
- description: Danger intent stat
|
|
123
|
+
html: |-
|
|
124
|
+
<aui-stat label="Error Rate" value="4.7%" danger trend="up" change="+2.1%"></aui-stat>
|
|
125
|
+
|
|
126
|
+
<!-- ===============================================================
|
|
127
|
+
WITH SPARKLINE
|
|
128
|
+
=============================================================== -->
|
|
129
|
+
- description: Stat with inline sparkline
|
|
130
|
+
html: |-
|
|
131
|
+
<aui-stat label="Weekly Revenue" value="$12,450" trend="up" change="+12%">
|
|
132
|
+
<aui-sparkline values="3,5,4,7,6,8,9,11" color="1"></aui-sparkline>
|
|
133
|
+
</aui-stat>
|
|
134
|
+
|
|
135
|
+
<!-- ===============================================================
|
|
136
|
+
GROUP -- row of stats
|
|
137
|
+
=============================================================== -->
|
|
138
|
+
- description: Row of KPI stats in a grid
|
|
139
|
+
html: |-
|
|
140
|
+
<aui-grid cols="4" gap="4">
|
|
141
|
+
<aui-stat label="Revenue" value="$48,200" trend="up" change="+12.5%"></aui-stat>
|
|
142
|
+
<aui-stat label="Users" value="12,450" trend="up" change="+8.2%"></aui-stat>
|
|
143
|
+
<aui-stat label="Orders" value="1,234" trend="down" change="-3.1%"></aui-stat>
|
|
144
|
+
<aui-stat label="Conversion" value="3.2%" trend="neutral" change="0%"></aui-stat>
|
|
145
|
+
</aui-grid>
|
|
146
|
+
|
|
147
|
+
<!-- ===============================================================
|
|
148
|
+
ANIMATE COUNT -- smooth count-up animation
|
|
149
|
+
=============================================================== -->
|
|
150
|
+
- description: Count-up from 0 to $48,200 over 2s
|
|
151
|
+
html: <aui-stat label="Revenue" value="$48,200" animate-count></aui-stat>
|
|
152
|
+
- description: Count-up from 5,000 to 12,450 over 3s
|
|
153
|
+
html: <aui-stat label="Users" value="12,450" animate-count animate-count-start="5000" duration-ms="3000" trend="up" change="+8.2%"></aui-stat>
|
|
154
|
+
- description: Count-up percentage
|
|
155
|
+
html: |-
|
|
156
|
+
<aui-stat label="Conversion" value="87.3%" animate-count duration-ms="1500"></aui-stat>
|
|
157
|
+
|
|
158
|
+
<!-- ===============================================================
|
|
159
|
+
ANIMATE SCRAMBLE -- character scramble reveal
|
|
160
|
+
=============================================================== -->
|
|
161
|
+
- description: Scramble reveal of a revenue figure
|
|
162
|
+
html: <aui-stat label="Total Sales" value="$2,847,200" animate-scramble duration-ms="2500"></aui-stat>
|
|
163
|
+
- description: Scramble reveal of a percentage
|
|
164
|
+
html: <aui-stat label="Accuracy" value="99.7%" animate-scramble></aui-stat>
|
|
@@ -29,23 +29,23 @@ examples:
|
|
|
29
29
|
html: |-
|
|
30
30
|
<aui-stepper>
|
|
31
31
|
<aui-step state="done">
|
|
32
|
-
<aui-
|
|
32
|
+
<aui-avatar size="xs" success solid><aui-icon name="check"></aui-icon></aui-avatar>
|
|
33
33
|
<aui-stack gap="1">
|
|
34
|
-
<aui-
|
|
34
|
+
<aui-heading size="sm">Account created</aui-heading>
|
|
35
35
|
<aui-text muted size="xs">Email verified</aui-text>
|
|
36
36
|
</aui-stack>
|
|
37
37
|
</aui-step>
|
|
38
38
|
<aui-step state="running">
|
|
39
|
-
<aui-
|
|
39
|
+
<aui-avatar size="xs" accent solid><aui-icon name="circle-notch"></aui-icon></aui-avatar>
|
|
40
40
|
<aui-stack gap="1">
|
|
41
|
-
<aui-
|
|
41
|
+
<aui-heading size="sm">Profile setup</aui-heading>
|
|
42
42
|
<aui-text muted size="xs">Add your details</aui-text>
|
|
43
43
|
</aui-stack>
|
|
44
44
|
</aui-step>
|
|
45
45
|
<aui-step>
|
|
46
|
-
<aui-
|
|
46
|
+
<aui-avatar size="xs" style="background: var(--aui-neutral-highest);">3</aui-avatar>
|
|
47
47
|
<aui-stack gap="1">
|
|
48
|
-
<aui-
|
|
48
|
+
<aui-heading size="sm">Complete</aui-heading>
|
|
49
49
|
<aui-text muted size="xs">Ready to go</aui-text>
|
|
50
50
|
</aui-stack>
|
|
51
51
|
</aui-step>
|
|
@@ -53,32 +53,32 @@ examples:
|
|
|
53
53
|
- description: All steps completed
|
|
54
54
|
html: |-
|
|
55
55
|
<aui-stepper>
|
|
56
|
-
<aui-step
|
|
57
|
-
<aui-
|
|
58
|
-
<aui-
|
|
56
|
+
<aui-step state="done">
|
|
57
|
+
<aui-avatar size="xs" success solid><aui-icon name="check"></aui-icon></aui-avatar>
|
|
58
|
+
<aui-heading size="sm">Order placed</aui-heading>
|
|
59
59
|
</aui-step>
|
|
60
|
-
<aui-step
|
|
61
|
-
<aui-
|
|
62
|
-
<aui-
|
|
60
|
+
<aui-step state="done">
|
|
61
|
+
<aui-avatar size="xs" success solid><aui-icon name="check"></aui-icon></aui-avatar>
|
|
62
|
+
<aui-heading size="sm">Payment confirmed</aui-heading>
|
|
63
63
|
</aui-step>
|
|
64
|
-
<aui-step
|
|
65
|
-
<aui-
|
|
66
|
-
<aui-
|
|
64
|
+
<aui-step state="done">
|
|
65
|
+
<aui-avatar size="xs" success solid><aui-icon name="check"></aui-icon></aui-avatar>
|
|
66
|
+
<aui-heading size="sm">Shipped</aui-heading>
|
|
67
67
|
</aui-step>
|
|
68
68
|
</aui-stepper>
|
|
69
69
|
- description: Stepper with error state
|
|
70
70
|
html: |-
|
|
71
71
|
<aui-stepper>
|
|
72
|
-
<aui-step
|
|
73
|
-
<aui-
|
|
74
|
-
<aui-
|
|
72
|
+
<aui-step state="done">
|
|
73
|
+
<aui-avatar size="xs" success solid><aui-icon name="check"></aui-icon></aui-avatar>
|
|
74
|
+
<aui-heading size="sm">Build</aui-heading>
|
|
75
75
|
</aui-step>
|
|
76
|
-
<aui-step
|
|
77
|
-
<aui-
|
|
78
|
-
<aui-
|
|
76
|
+
<aui-step state="running">
|
|
77
|
+
<aui-avatar size="xs" danger solid><aui-icon name="warning"></aui-icon></aui-avatar>
|
|
78
|
+
<aui-heading size="sm">Deploy</aui-heading>
|
|
79
79
|
</aui-step>
|
|
80
80
|
<aui-step>
|
|
81
|
-
<aui-
|
|
82
|
-
<aui-
|
|
81
|
+
<aui-avatar size="xs" style="background: var(--aui-neutral-highest);">3</aui-avatar>
|
|
82
|
+
<aui-heading size="sm">Verify</aui-heading>
|
|
83
83
|
</aui-step>
|
|
84
84
|
</aui-stepper>
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
name: aui-time-field
|
|
2
2
|
tag: aui-time-field
|
|
3
3
|
type: component
|
|
4
|
-
summary: Segmented time input with independently editable hour and
|
|
4
|
+
summary: Segmented time input with independently editable hour, minute, and optional seconds segments.
|
|
5
5
|
description: |
|
|
6
|
-
A time entry control where hour
|
|
6
|
+
A time entry control where hour, minute, and optional seconds (via show-seconds) 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.
|
|
7
7
|
base: AgentElement
|
|
8
8
|
attributes:
|
|
9
9
|
value:
|
|
@@ -31,6 +31,12 @@ attributes:
|
|
|
31
31
|
type: string
|
|
32
32
|
default: 24h
|
|
33
33
|
description: Display format (12h or 24h).
|
|
34
|
+
show-seconds:
|
|
35
|
+
syntax: boolean
|
|
36
|
+
type: boolean
|
|
37
|
+
default: false
|
|
38
|
+
description: |
|
|
39
|
+
Adds a seconds segment (HH:MM:SS). When enabled, value includes seconds and the committed format is HH:MM:SS.
|
|
34
40
|
placeholder:
|
|
35
41
|
syntax: key-value
|
|
36
42
|
type: string
|
|
@@ -159,3 +165,30 @@ examples:
|
|
|
159
165
|
<aui-time-field value="17:00"></aui-time-field>
|
|
160
166
|
</aui-field>
|
|
161
167
|
</aui-stack>
|
|
168
|
+
|
|
169
|
+
<!-- ===============================================================
|
|
170
|
+
WITH SECONDS
|
|
171
|
+
=============================================================== -->
|
|
172
|
+
- description: 24h time with seconds
|
|
173
|
+
html: <aui-time-field value="14:30:45" show-seconds></aui-time-field>
|
|
174
|
+
- description: 12h time with seconds
|
|
175
|
+
html: <aui-time-field value="09:15:30" format="12h" show-seconds></aui-time-field>
|
|
176
|
+
- description: Live clock — updates every second
|
|
177
|
+
html: |-
|
|
178
|
+
<aui-field label="Current time (live)">
|
|
179
|
+
<aui-time-field id="live-clock" show-seconds></aui-time-field>
|
|
180
|
+
</aui-field>
|
|
181
|
+
<script>
|
|
182
|
+
requestAnimationFrame(function tick() {
|
|
183
|
+
const el = document.getElementById('live-clock')
|
|
184
|
+
if (el) {
|
|
185
|
+
const now = new Date()
|
|
186
|
+
el.setAttribute('value',
|
|
187
|
+
String(now.getHours()).padStart(2,'0') + ':' +
|
|
188
|
+
String(now.getMinutes()).padStart(2,'0') + ':' +
|
|
189
|
+
String(now.getSeconds()).padStart(2,'0')
|
|
190
|
+
)
|
|
191
|
+
}
|
|
192
|
+
requestAnimationFrame(tick)
|
|
193
|
+
})
|
|
194
|
+
</script>
|
package/dist/element.js
CHANGED
package/dist/reactivity.js
CHANGED