@agent-ui-kit/web-components 0.0.16 → 0.0.17

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 (99) 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 +1246 -220
  5. package/dist/api.tokens.json +2 -2
  6. package/dist/api.tokens.yaml +2 -2
  7. package/dist/blocks/action-toolbar/action-toolbar.d.ts +0 -0
  8. package/dist/blocks/agent-artifact-card/agent-artifact-card.d.ts +0 -0
  9. package/dist/blocks/agent-chat-response/agent-chat-response.d.ts +0 -0
  10. package/dist/blocks/agent-code-result/agent-code-result.d.ts +0 -0
  11. package/dist/blocks/agent-context-panel/agent-context-panel.d.ts +0 -0
  12. package/dist/blocks/agent-feedback-controls/agent-feedback-controls.d.ts +0 -0
  13. package/dist/blocks/agent-follow-up-chips/agent-follow-up-chips.d.ts +0 -0
  14. package/dist/blocks/agent-model-selector/agent-model-selector.d.ts +0 -0
  15. package/dist/blocks/agent-prompt-input/agent-prompt-input.d.ts +0 -0
  16. package/dist/blocks/agent-streaming-message/agent-streaming-message.d.ts +0 -0
  17. package/dist/blocks/agent-suggestion-card/agent-suggestion-card.d.ts +0 -0
  18. package/dist/blocks/agent-task-card/agent-task-card.d.ts +0 -0
  19. package/dist/blocks/agent-thinking-state/agent-thinking-state.d.ts +0 -0
  20. package/dist/blocks/agent-tool-use-card/agent-tool-use-card.d.ts +0 -0
  21. package/dist/blocks/auth-card/auth-card.d.ts +0 -0
  22. package/dist/blocks/commerce-pricing-table/commerce-pricing-table.d.ts +0 -0
  23. package/dist/blocks/comms-chat-thread/comms-chat-thread.d.ts +0 -0
  24. package/dist/blocks/comms-notification-list/comms-notification-list.d.ts +0 -0
  25. package/dist/blocks/content-article-card/content-article-card.d.ts +0 -0
  26. package/dist/blocks/dashboard-kpi-grid/dashboard-kpi-grid.d.ts +0 -0
  27. package/dist/blocks/data-activity-log/data-activity-log.d.ts +0 -0
  28. package/dist/blocks/data-metric-card/data-metric-card.d.ts +0 -0
  29. package/dist/blocks/data-table/data-table.d.ts +0 -0
  30. package/dist/blocks/data-timeline/data-timeline.d.ts +0 -0
  31. package/dist/blocks/feedback-alert-banner/feedback-alert-banner.d.ts +0 -0
  32. package/dist/blocks/feedback-empty-state/feedback-empty-state.d.ts +0 -0
  33. package/dist/blocks/feedback-progress-stepper/feedback-progress-stepper.d.ts +0 -0
  34. package/dist/blocks/form-settings-section/form-settings-section.d.ts +0 -0
  35. package/dist/blocks/game-battleship/game-battleship.d.ts +0 -0
  36. package/dist/blocks/game-chess/game-chess.d.ts +0 -0
  37. package/dist/blocks/game-connect-four/game-connect-four.d.ts +0 -0
  38. package/dist/blocks/game-tic-tac-toe/game-tic-tac-toe.d.ts +0 -0
  39. package/dist/blocks/list-kanban-board/list-kanban-board.d.ts +0 -0
  40. package/dist/blocks/media-image-gallery/media-image-gallery.d.ts +0 -0
  41. package/dist/blocks/nav-sidebar/nav-sidebar.d.ts +0 -0
  42. package/dist/blocks/onboard-stepper/onboard-stepper.d.ts +0 -0
  43. package/dist/blocks/overlay-confirmation-modal/overlay-confirmation-modal.d.ts +0 -0
  44. package/dist/blocks/overlay-dropdown-menu/overlay-dropdown-menu.d.ts +0 -0
  45. package/dist/blocks/user-profile-card/user-profile-card.d.ts +0 -0
  46. package/dist/blocks/user-team-list/user-team-list.d.ts +0 -0
  47. package/dist/docs/blocks/action-toolbar.yaml +73 -0
  48. package/dist/docs/blocks/agent-artifact-card.yaml +67 -0
  49. package/dist/docs/blocks/agent-chat-response.yaml +65 -0
  50. package/dist/docs/blocks/agent-code-result.yaml +41 -0
  51. package/dist/docs/blocks/agent-context-panel.yaml +96 -0
  52. package/dist/docs/blocks/agent-feedback-controls.yaml +101 -0
  53. package/dist/docs/blocks/agent-follow-up-chips.yaml +37 -0
  54. package/dist/docs/blocks/agent-model-selector.yaml +83 -0
  55. package/dist/docs/blocks/agent-prompt-input.yaml +49 -0
  56. package/dist/docs/blocks/agent-streaming-message.yaml +46 -0
  57. package/dist/docs/blocks/agent-suggestion-card.yaml +68 -0
  58. package/dist/docs/blocks/agent-task-card.yaml +112 -0
  59. package/dist/docs/blocks/agent-thinking-state.yaml +56 -0
  60. package/dist/docs/blocks/agent-tool-use-card.yaml +142 -0
  61. package/dist/docs/blocks/auth-card.yaml +74 -0
  62. package/dist/docs/blocks/chart-grouped.yaml +1 -1
  63. package/dist/docs/blocks/chart-interactive.yaml +1 -1
  64. package/dist/docs/blocks/chart-labeled.yaml +1 -1
  65. package/dist/docs/blocks/commerce-pricing-table.yaml +142 -0
  66. package/dist/docs/blocks/comms-chat-thread.yaml +88 -0
  67. package/dist/docs/blocks/comms-notification-list.yaml +88 -0
  68. package/dist/docs/blocks/content-article-card.yaml +47 -0
  69. package/dist/docs/blocks/dashboard-kpi-grid.yaml +72 -0
  70. package/dist/docs/blocks/dashboard-layout.yaml +0 -1
  71. package/dist/docs/blocks/data-activity-log.yaml +99 -0
  72. package/dist/docs/blocks/data-metric-card.yaml +50 -0
  73. package/dist/docs/blocks/data-table.yaml +106 -0
  74. package/dist/docs/blocks/data-timeline.yaml +103 -0
  75. package/dist/docs/blocks/feedback-alert-banner.yaml +42 -0
  76. package/dist/docs/blocks/feedback-empty-state.yaml +18 -0
  77. package/dist/docs/blocks/feedback-progress-stepper.yaml +82 -0
  78. package/dist/docs/blocks/form-settings-section.yaml +129 -0
  79. package/dist/docs/blocks/game-battleship.yaml +184 -0
  80. package/dist/docs/blocks/game-chess.yaml +83 -0
  81. package/dist/docs/blocks/game-connect-four.yaml +80 -0
  82. package/dist/docs/blocks/game-tic-tac-toe.yaml +51 -0
  83. package/dist/docs/blocks/issue-assign.yaml +2 -2
  84. package/dist/docs/blocks/list-kanban-board.yaml +158 -0
  85. package/dist/docs/blocks/media-image-gallery.yaml +39 -0
  86. package/dist/docs/blocks/nav-sidebar.yaml +84 -0
  87. package/dist/docs/blocks/onboard-stepper.yaml +111 -0
  88. package/dist/docs/blocks/overlay-confirmation-modal.yaml +60 -0
  89. package/dist/docs/blocks/overlay-dropdown-menu.yaml +72 -0
  90. package/dist/docs/blocks/profile-card.yaml +1 -3
  91. package/dist/docs/blocks/settings-panel.yaml +1 -2
  92. package/dist/docs/blocks/sidebar-nav.yaml +0 -2
  93. package/dist/docs/blocks/user-profile-card.yaml +52 -0
  94. package/dist/docs/blocks/user-team-list.yaml +116 -0
  95. package/dist/docs/components/agent-feed.yaml +2 -2
  96. package/dist/docs/components/button.yaml +3 -2
  97. package/dist/icons.js +137 -128
  98. package/dist/icons.js.map +1 -1
  99. package/package.json +1 -1
@@ -0,0 +1,39 @@
1
+ name: media-image-gallery
2
+ type: block
3
+ summary: Asset gallery grid with image placeholders, file count badge, and upload button.
4
+ description: |
5
+ A panel (max-width="xl") for browsing uploaded assets. Header has title with spacer, file count badge, and scrim upload button. Content shows a 3-column flex-wrap layout of aui-button size="fill" icon-size="half" tiles with hide-label, icon-leading="image", --aui-button-background: var(--aui-control), and --aui-button-border: transparent. Tiles use width: calc(33.333% - 0.67rem) and aspect-ratio: 1 for the 3-column grid.
6
+ components:
7
+ - aui-container
8
+ - aui-header
9
+ - aui-content
10
+ - aui-inset
11
+ - aui-stack
12
+ - aui-heading
13
+ - aui-badge
14
+ - aui-button
15
+ kind: panel
16
+ examples:
17
+ - description: Asset gallery grid with image placeholders, file count badge, and upload button.
18
+ html: |-
19
+ <aui-container kind="panel" bordered max-width="xl">
20
+ <aui-header>
21
+ <aui-stack direction="row" gap="3" align-items="center">
22
+ <aui-heading size="lg" spacer>Assets</aui-heading>
23
+ <aui-badge>24 files</aui-badge>
24
+ <aui-button scrim size="sm" icon-leading="arrow-up">Upload</aui-button>
25
+ </aui-stack>
26
+ </aui-header>
27
+ <aui-content>
28
+ <aui-inset>
29
+ <aui-stack direction="row" gap="3" wrap>
30
+ <aui-button size="fill" icon-size="half" hide-label label="Asset 1" icon-leading="image" square style="width: calc(33.333% - 0.67rem); --aui-button-background: var(--aui-control); --aui-button-border: transparent;"></aui-button>
31
+ <aui-button size="fill" icon-size="half" hide-label label="Asset 2" icon-leading="image" square style="width: calc(33.333% - 0.67rem); --aui-button-background: var(--aui-control); --aui-button-border: transparent;"></aui-button>
32
+ <aui-button size="fill" icon-size="half" hide-label label="Asset 3" icon-leading="image" square style="width: calc(33.333% - 0.67rem); --aui-button-background: var(--aui-control); --aui-button-border: transparent;"></aui-button>
33
+ <aui-button size="fill" icon-size="half" hide-label label="Asset 4" icon-leading="image" square style="width: calc(33.333% - 0.67rem); --aui-button-background: var(--aui-control); --aui-button-border: transparent;"></aui-button>
34
+ <aui-button size="fill" icon-size="half" hide-label label="Asset 5" icon-leading="image" square style="width: calc(33.333% - 0.67rem); --aui-button-background: var(--aui-control); --aui-button-border: transparent;"></aui-button>
35
+ <aui-button size="fill" icon-size="half" hide-label label="Asset 6" icon-leading="image" square style="width: calc(33.333% - 0.67rem); --aui-button-background: var(--aui-control); --aui-button-border: transparent;"></aui-button>
36
+ </aui-stack>
37
+ </aui-inset>
38
+ </aui-content>
39
+ </aui-container>
@@ -0,0 +1,84 @@
1
+ name: nav-sidebar
2
+ type: block
3
+ summary: App sidebar with workspace header, nav items, favorites section, and user footer.
4
+ description: |
5
+ A fixed-width sidebar for application navigation without height constraint or aui-content wrapper — sections use aui-inset directly separated by aui-divider. Workspace header shows an accent avatar icon with solid background and org name. Main navigation section uses aui-nav-item elements with active state for the current page, and an activity item with a danger badge count. A Favorites section label uses aui-heading group for uppercase styling. Footer has a settings link and user row with avatar, name, and online status dot badge.
6
+ components:
7
+ - aui-container
8
+ - aui-inset
9
+ - aui-stack
10
+ - aui-heading
11
+ - aui-text
12
+ - aui-avatar
13
+ - aui-icon
14
+ - aui-badge
15
+ - aui-divider
16
+ - aui-nav-item
17
+ kind: card
18
+ examples:
19
+ - description: App sidebar with workspace header, nav items, favorites section, and user footer.
20
+ html: |-
21
+ <aui-container kind="card" bordered style="width: 15rem;">
22
+
23
+ <!-- Workspace header -->
24
+ <aui-inset>
25
+ <aui-stack direction="row" gap="2" align-items="center">
26
+ <aui-avatar size="sm" accent solid><aui-icon name="globe-simple" size="xs"></aui-icon></aui-avatar>
27
+ <aui-heading size="sm">Acme Inc</aui-heading>
28
+ </aui-stack>
29
+ </aui-inset>
30
+
31
+ <aui-divider></aui-divider>
32
+
33
+ <!-- Main navigation -->
34
+ <aui-inset>
35
+ <aui-stack gap="1">
36
+ <aui-nav-item active>
37
+ <aui-icon name="house"></aui-icon>
38
+ Dashboard
39
+ </aui-nav-item>
40
+ <aui-nav-item muted>
41
+ <aui-icon name="star"></aui-icon>
42
+ Projects
43
+ </aui-nav-item>
44
+ <aui-nav-item muted>
45
+ <aui-icon name="clock"></aui-icon>
46
+ Activity
47
+ <aui-badge danger>3</aui-badge>
48
+ </aui-nav-item>
49
+ <aui-nav-item muted>
50
+ <aui-icon name="users-three"></aui-icon>
51
+ Team
52
+ </aui-nav-item>
53
+
54
+ <aui-heading group style="padding-top: 0.75rem;">Favorites</aui-heading>
55
+
56
+ <aui-nav-item muted>
57
+ <aui-icon name="file-text"></aui-icon>
58
+ Design System
59
+ </aui-nav-item>
60
+ <aui-nav-item muted>
61
+ <aui-icon name="file-text"></aui-icon>
62
+ API Docs
63
+ </aui-nav-item>
64
+ </aui-stack>
65
+ </aui-inset>
66
+
67
+ <aui-divider></aui-divider>
68
+
69
+ <!-- Footer -->
70
+ <aui-inset>
71
+ <aui-stack gap="2">
72
+ <aui-nav-item muted>
73
+ <aui-icon name="gear"></aui-icon>
74
+ Settings
75
+ </aui-nav-item>
76
+ <aui-stack direction="row" gap="2" align-items="center">
77
+ <aui-avatar size="xs">SC</aui-avatar>
78
+ <aui-text size="sm" spacer>Sarah Chen</aui-text>
79
+ <aui-badge success dot></aui-badge>
80
+ </aui-stack>
81
+ </aui-stack>
82
+ </aui-inset>
83
+
84
+ </aui-container>
@@ -0,0 +1,111 @@
1
+ name: onboard-stepper
2
+ type: block
3
+ summary: Vertical onboarding wizard with progress bar, step timeline, inline form, and navigation.
4
+ description: |
5
+ An onboarding card with a header (title + subtitle), a progress bar (--aui-accent-500 fill on --aui-control track) showing completion, and aui-stepper with aui-step children for a vertical step timeline. Steps have state-driven avatars with solid backgrounds (done=success check, running=accent number, pending=--aui-neutral-highest with --aui-ink-muted text). The active step expands to show inline form fields wrapped in a bordered widget container. The Workspace URL field uses aui-input-group with a "yourteam.app/" prefix for connected border treatment. Footer has scrim Back and primary accent Continue buttons in an aui-button-group with equal sizing via grow="1" basis="0". Connector lines between steps are handled by the aui-stepper/aui-step elements.
6
+ components:
7
+ - aui-container
8
+ - aui-header
9
+ - aui-content
10
+ - aui-footer
11
+ - aui-inset
12
+ - aui-stepper
13
+ - aui-step
14
+ - aui-stack
15
+ - aui-heading
16
+ - aui-text
17
+ - aui-avatar
18
+ - aui-icon
19
+ - aui-field
20
+ - aui-input
21
+ - aui-input-group
22
+ - aui-button
23
+ - aui-button-group
24
+ kind: card
25
+ examples:
26
+ - description: Vertical onboarding wizard with progress bar, step timeline, inline form, and navigation.
27
+ html: |-
28
+ <aui-container kind="card" bordered max-width="lg">
29
+ <aui-header>
30
+ <span slot="leading">
31
+ <aui-stack gap="1">
32
+ <aui-heading size="lg">Set up your workspace</aui-heading>
33
+ <aui-text muted size="sm">Complete these steps to get your team up and running.</aui-text>
34
+ </aui-stack>
35
+ </span>
36
+ </aui-header>
37
+ <aui-content>
38
+ <aui-inset>
39
+ <aui-stack gap="4">
40
+
41
+ <!-- Progress bar -->
42
+ <aui-stack gap="2">
43
+ <aui-stack direction="row" gap="2" align-items="center">
44
+ <aui-text size="xs" spacer>Setup progress</aui-text>
45
+ <aui-text size="xs" muted>2 of 4 complete</aui-text>
46
+ </aui-stack>
47
+ <div style="height: 4px; border-radius: var(--aui-radius); background: var(--aui-control);">
48
+ <div style="width: 50%; height: 100%; border-radius: var(--aui-radius); background: var(--aui-accent-500);"></div>
49
+ </div>
50
+ </aui-stack>
51
+
52
+ <!-- Steps -->
53
+ <aui-stepper>
54
+
55
+ <!-- Step 1: Done -->
56
+ <aui-step state="done">
57
+ <aui-avatar size="xs" success shrink="0" solid><aui-icon name="check" size="xs"></aui-icon></aui-avatar>
58
+ <aui-stack gap="1" spacer>
59
+ <aui-heading size="sm">Create account</aui-heading>
60
+ <aui-text size="xs" muted>Email verified and profile created</aui-text>
61
+ </aui-stack>
62
+ </aui-step>
63
+
64
+ <!-- Step 2: Active -->
65
+ <aui-step state="running">
66
+ <aui-avatar size="xs" accent shrink="0" solid>2</aui-avatar>
67
+ <aui-stack gap="3" spacer min-width="0">
68
+ <aui-heading size="sm">Name your workspace</aui-heading>
69
+ <aui-container kind="widget" bordered>
70
+ <aui-inset>
71
+ <aui-stack>
72
+ <aui-field label="Workspace name" width="full">
73
+ <aui-input placeholder="Acme Engineering" width="full"></aui-input>
74
+ </aui-field>
75
+ <aui-field label="Workspace URL" width="full">
76
+ <aui-input placeholder="acme-eng" prefix="yourteam.app/" width="full"></aui-input>
77
+ </aui-field>
78
+ </aui-stack>
79
+ </aui-inset>
80
+ </aui-container>
81
+ </aui-stack>
82
+ </aui-step>
83
+
84
+ <!-- Step 3: Pending -->
85
+ <aui-step>
86
+ <aui-avatar size="xs" shrink="0" style="background: var(--aui-neutral-highest); color: var(--aui-ink-muted);">3</aui-avatar>
87
+ <aui-stack gap="1">
88
+ <aui-text size="sm" muted>Invite your team</aui-text>
89
+ </aui-stack>
90
+ </aui-step>
91
+
92
+ <!-- Step 4: Pending -->
93
+ <aui-step>
94
+ <aui-avatar size="xs" shrink="0" style="background: var(--aui-neutral-highest); color: var(--aui-ink-muted);">4</aui-avatar>
95
+ <aui-stack gap="1">
96
+ <aui-text size="sm" muted>Review and launch</aui-text>
97
+ </aui-stack>
98
+ </aui-step>
99
+
100
+ </aui-stepper>
101
+ </aui-stack>
102
+ </aui-inset>
103
+ </aui-content>
104
+
105
+ <aui-footer>
106
+ <aui-button-group>
107
+ <aui-button scrim grow="1" basis="0">Back</aui-button>
108
+ <aui-button primary accent icon-trailing="caret-right" grow="1" basis="0">Continue</aui-button>
109
+ </aui-button-group>
110
+ </aui-footer>
111
+ </aui-container>
@@ -0,0 +1,60 @@
1
+ name: overlay-confirmation-modal
2
+ type: block
3
+ summary: Confirmation dialog with danger icon, warning detail, and cancel/confirm actions.
4
+ description: |
5
+ A modal dialog for confirming destructive actions. Two variants shown: an enhanced version with a danger avatar icon (solid background), title, description with bold entity name "AgentUI Corp", a bordered danger aui-alert danger listing impact details, and a footer with scrim cancel and danger-primary confirm buttons using grow="1" basis="0" for equal sizing; and a minimal version with just title, description, and buttons. Uses aui-dialog with open attribute. The danger alert and button use the danger intent for semantic red coloring.
6
+ components:
7
+ - aui-dialog
8
+ - aui-container
9
+ - aui-inset
10
+ - aui-stack
11
+ - aui-heading
12
+ - aui-text
13
+ - aui-avatar
14
+ - aui-icon
15
+ - aui-footer
16
+ - aui-button
17
+ - aui-button-group
18
+ - aui-alert
19
+ kind: card
20
+ examples:
21
+ - description: Danger confirmation with warning detail
22
+ html: |-
23
+ <aui-dialog open max-width="sm">
24
+ <aui-container kind="card">
25
+ <aui-inset>
26
+ <aui-stack gap="4">
27
+ <aui-avatar size="lg" danger solid><aui-icon name="warning"></aui-icon></aui-avatar>
28
+ <aui-stack gap="2">
29
+ <aui-heading size="lg">Delete workspace?</aui-heading>
30
+ <aui-text muted size="sm">This will permanently delete <strong>AgentUI Corp</strong> and remove all associated data. This action cannot be undone.</aui-text>
31
+ </aui-stack>
32
+ <aui-alert danger>All 47 projects, 312 files, and 8 team members will be removed.</aui-alert>
33
+ </aui-stack>
34
+ </aui-inset>
35
+ <aui-footer>
36
+ <aui-button-group>
37
+ <aui-button scrim grow="1" basis="0">Cancel</aui-button>
38
+ <aui-button primary danger grow="1" basis="0">Delete Workspace</aui-button>
39
+ </aui-button-group>
40
+ </aui-footer>
41
+ </aui-container>
42
+ </aui-dialog>
43
+ - description: Simple confirmation without warning box
44
+ html: |-
45
+ <aui-dialog open max-width="sm">
46
+ <aui-container kind="card">
47
+ <aui-inset>
48
+ <aui-stack gap="4">
49
+ <aui-heading size="lg">Discard changes?</aui-heading>
50
+ <aui-text muted size="sm">You have unsaved changes that will be lost. Are you sure you want to leave this page?</aui-text>
51
+ </aui-stack>
52
+ </aui-inset>
53
+ <aui-footer>
54
+ <aui-button-group>
55
+ <aui-button scrim grow="1" basis="0">Keep editing</aui-button>
56
+ <aui-button primary danger grow="1" basis="0">Discard</aui-button>
57
+ </aui-button-group>
58
+ </aui-footer>
59
+ </aui-container>
60
+ </aui-dialog>
@@ -0,0 +1,72 @@
1
+ name: overlay-dropdown-menu
2
+ type: block
3
+ summary: Dropdown menus with action items, keyboard shortcuts, view selector, and danger delete.
4
+ description: |
5
+ Two dropdown menu variants side by side. The actions menu uses aui-dropdown-menu with ghost trigger, containing icon+label options with trailing keyboard shortcuts in mono font (font="mono"), a disabled Archive option, optgroup dividers between groups, and a danger-intent Delete option. The view selector menu uses aui-select mode="list" inside an aui-container with aui-optgroup label attributes for section headers (View, Sort by) and selected attribute for active items, since it tracks selection state rather than firing actions.
6
+ components:
7
+ - aui-dropdown-menu
8
+ - aui-container
9
+ - aui-select
10
+ - aui-option
11
+ - aui-optgroup
12
+ - aui-text
13
+ - aui-icon
14
+ kind: widget
15
+ examples:
16
+ - description: Dropdown menus with action items, keyboard shortcuts, view selector, and danger delete.
17
+ html: |-
18
+ <aui-stack direction="row">
19
+
20
+ <!-- Actions menu -->
21
+ <aui-dropdown-menu label="Actions" ghost>
22
+ <aui-option value="edit">
23
+ <aui-icon name="pencil" size="sm" muted></aui-icon>
24
+ <aui-text size="sm" spacer>Edit</aui-text>
25
+ <aui-text size="xs" muted font="mono">⌘E</aui-text>
26
+ </aui-option>
27
+ <aui-option value="duplicate">
28
+ <aui-icon name="copy" size="sm" muted></aui-icon>
29
+ <aui-text size="sm" spacer>Duplicate</aui-text>
30
+ <aui-text size="xs" muted font="mono">⌘D</aui-text>
31
+ </aui-option>
32
+ <aui-option value="share">
33
+ <aui-icon name="arrow-up" size="sm" muted></aui-icon>
34
+ <aui-text size="sm" spacer>Share</aui-text>
35
+ </aui-option>
36
+ <aui-optgroup>
37
+ <aui-option value="move">
38
+ <aui-icon name="star" size="sm" muted></aui-icon>
39
+ <aui-text size="sm" spacer>Move to</aui-text>
40
+ <aui-icon name="caret-right" size="sm" muted></aui-icon>
41
+ </aui-option>
42
+ <aui-option value="archive" disabled>
43
+ <aui-icon name="stop" size="sm" muted></aui-icon>
44
+ <aui-text size="sm" muted spacer>Archive</aui-text>
45
+ </aui-option>
46
+ </aui-optgroup>
47
+ <aui-optgroup>
48
+ <aui-option value="delete" danger>
49
+ <aui-icon name="trash" size="sm"></aui-icon>
50
+ <aui-text size="sm" spacer>Delete</aui-text>
51
+ <aui-text size="xs" muted font="mono">⌫</aui-text>
52
+ </aui-option>
53
+ </aui-optgroup>
54
+ </aui-dropdown-menu>
55
+
56
+ <!-- View selector menu -->
57
+ <aui-container kind="widget" bordered max-width="xs" shadow="2">
58
+ <aui-select mode="list">
59
+ <aui-optgroup label="View">
60
+ <aui-option value="board" selected>Board</aui-option>
61
+ <aui-option value="list">List</aui-option>
62
+ <aui-option value="table">Table</aui-option>
63
+ </aui-optgroup>
64
+ <aui-optgroup label="Sort by">
65
+ <aui-option value="name" selected>Name</aui-option>
66
+ <aui-option value="date-modified">Date modified</aui-option>
67
+ <aui-option value="date-created">Date created</aui-option>
68
+ </aui-optgroup>
69
+ </aui-select>
70
+ </aui-container>
71
+
72
+ </aui-stack>
@@ -5,10 +5,8 @@ description: |
5
5
  A card displaying a user's profile information at a glance. Centered layout with a large avatar, name, role, short bio, and an aui-stat row for key metrics. Footer provides edit and messaging actions. Useful for team directories, account pages, or social-style dashboards where you need to present identity alongside engagement metrics.
6
6
  components:
7
7
  - aui-container
8
- - aui-inset
9
- - aui-header
10
8
  - aui-content
11
- - aui-footer
9
+ - aui-inset
12
10
  - aui-stack
13
11
  - aui-heading
14
12
  - aui-text
@@ -13,9 +13,8 @@ components:
13
13
  - aui-text
14
14
  - aui-switch
15
15
  - aui-button
16
- - aui-badge
16
+ - aui-alert
17
17
  - aui-divider
18
- - aui-icon
19
18
  kind: card
20
19
  examples:
21
20
  - description: Settings card with toggles, descriptions, and grouped controls.
@@ -5,7 +5,6 @@ description: |
5
5
  A fixed-width sidebar for app-level navigation. Uses card kind for tighter padding than panel. Nav items use aui-nav-item elements — the active item uses the active attribute for visual distinction. Footer shows the signed-in user with avatar and email. Designed to sit at the left edge of a layout at 14-16rem width.
6
6
  components:
7
7
  - aui-container
8
- - aui-header
9
8
  - aui-content
10
9
  - aui-footer
11
10
  - aui-inset
@@ -14,7 +13,6 @@ components:
14
13
  - aui-text
15
14
  - aui-icon
16
15
  - aui-avatar
17
- - aui-divider
18
16
  - aui-nav-item
19
17
  kind: card
20
18
  examples:
@@ -0,0 +1,52 @@
1
+ name: user-profile-card
2
+ type: block
3
+ summary: User profile card with avatar, name, role, stats grid, and action buttons.
4
+ description: |
5
+ A compact centered profile card. Top section has a large accent solid avatar with initials, name heading, and role/location text. A divider separates the identity from a 3-column stats row using aui-stat for Commits, PRs, and Reviews. Footer has Message (primary accent) and View Profile (outline) buttons with equal sizing via grow="1" basis="0".
6
+ components:
7
+ - aui-container
8
+ - aui-inset
9
+ - aui-stack
10
+ - aui-heading
11
+ - aui-text
12
+ - aui-stat
13
+ - aui-avatar
14
+ - aui-button
15
+ - aui-button-group
16
+ - aui-divider
17
+ - aui-footer
18
+ kind: card
19
+ examples:
20
+ - description: User profile card with avatar, name, role, stats grid, and action buttons.
21
+ html: |-
22
+ <aui-container kind="card" bordered max-width="sm">
23
+ <aui-inset>
24
+ <aui-stack gap="4">
25
+
26
+ <!-- Identity -->
27
+ <aui-stack gap="2" align-items="center" text="center">
28
+ <aui-avatar size="xl" accent solid>KG</aui-avatar>
29
+ <aui-stack gap="1">
30
+ <aui-heading size="lg">Kim Granlund</aui-heading>
31
+ <aui-text muted size="sm">Senior Engineer · San Francisco</aui-text>
32
+ </aui-stack>
33
+ </aui-stack>
34
+
35
+ <aui-divider></aui-divider>
36
+
37
+ <!-- Stats -->
38
+ <aui-stack direction="row" gap="3" text="center">
39
+ <aui-stat label="Commits" value="847" spacer></aui-stat>
40
+ <aui-stat label="PRs" value="132" spacer></aui-stat>
41
+ <aui-stat label="Reviews" value="56" spacer></aui-stat>
42
+ </aui-stack>
43
+
44
+ </aui-stack>
45
+ </aui-inset>
46
+ <aui-footer>
47
+ <aui-button-group>
48
+ <aui-button primary accent grow="1" basis="0">Message</aui-button>
49
+ <aui-button outline grow="1" basis="0">View Profile</aui-button>
50
+ </aui-button-group>
51
+ </aui-footer>
52
+ </aui-container>
@@ -0,0 +1,116 @@
1
+ name: user-team-list
2
+ type: block
3
+ summary: Team member panel with search, role badges, invite button, and per-row actions.
4
+ description: |
5
+ A full-featured team management panel. Header shows a title with member count, subtitle, and a trailing invite button. Content area includes a type="search" input (auto icon + clear) followed by repeating member rows separated by dividers. Each row has an avatar with initials, a name/email column using the spacer pattern, a color-coded role badge (Owner=accent, Admin=warning, Member=neutral), and a trailing aui-dropdown-menu with ghost hide-label for per-row actions (edit role, remove). Pending invites are visually dimmed with a small badge alongside the name and have revoke/resend invite options.
6
+ components:
7
+ - aui-container
8
+ - aui-header
9
+ - aui-content
10
+ - aui-inset
11
+ - aui-stack
12
+ - aui-heading
13
+ - aui-text
14
+ - aui-field
15
+ - aui-input
16
+ - aui-avatar
17
+ - aui-badge
18
+ - aui-button
19
+ - aui-dropdown-menu
20
+ - aui-option
21
+ - aui-divider
22
+ kind: panel
23
+ examples:
24
+ - description: Team member panel with search, role badges, invite button, and per-row actions.
25
+ html: |-
26
+ <aui-container kind="panel" bordered max-width="xl">
27
+ <aui-header>
28
+ <span slot="leading">
29
+ <aui-stack gap="1">
30
+ <aui-heading size="lg">Team Members</aui-heading>
31
+ <aui-text muted size="sm">5 members · 1 pending invite</aui-text>
32
+ </aui-stack>
33
+ </span>
34
+ <span slot="trailing">
35
+ <aui-button primary accent icon-leading="plus">Invite</aui-button>
36
+ </span>
37
+ </aui-header>
38
+ <aui-content>
39
+ <aui-inset>
40
+ <aui-stack gap="2">
41
+ <aui-field width="full">
42
+ <aui-input type="search" placeholder="Search members…" width="full"></aui-input>
43
+ </aui-field>
44
+ <aui-stack gap="3">
45
+ <aui-stack direction="row" gap="3" align-items="center">
46
+ <aui-avatar>AO</aui-avatar>
47
+ <aui-stack gap="1" spacer>
48
+ <aui-heading size="md">Amara Osei</aui-heading>
49
+ <aui-text muted size="sm">amara@acme.io</aui-text>
50
+ </aui-stack>
51
+ <aui-badge accent>Owner</aui-badge>
52
+ <aui-dropdown-menu label="Options" ghost hide-label shrink="0">
53
+ <aui-option value="edit-role">Edit role</aui-option>
54
+ <aui-option value="remove" danger>Remove</aui-option>
55
+ </aui-dropdown-menu>
56
+ </aui-stack>
57
+ <aui-divider></aui-divider>
58
+ <aui-stack direction="row" gap="3" align-items="center">
59
+ <aui-avatar>JC</aui-avatar>
60
+ <aui-stack gap="1" spacer>
61
+ <aui-heading size="md">James Chen</aui-heading>
62
+ <aui-text muted size="sm">james@acme.io</aui-text>
63
+ </aui-stack>
64
+ <aui-badge warning>Admin</aui-badge>
65
+ <aui-dropdown-menu label="Options" ghost hide-label shrink="0">
66
+ <aui-option value="edit-role">Edit role</aui-option>
67
+ <aui-option value="remove" danger>Remove</aui-option>
68
+ </aui-dropdown-menu>
69
+ </aui-stack>
70
+ <aui-divider></aui-divider>
71
+ <aui-stack direction="row" gap="3" align-items="center">
72
+ <aui-avatar>SP</aui-avatar>
73
+ <aui-stack gap="1" spacer>
74
+ <aui-heading size="md">Sara Petrov</aui-heading>
75
+ <aui-text muted size="sm">sara@acme.io</aui-text>
76
+ </aui-stack>
77
+ <aui-badge>Member</aui-badge>
78
+ <aui-dropdown-menu label="Options" ghost hide-label shrink="0">
79
+ <aui-option value="edit-role">Edit role</aui-option>
80
+ <aui-option value="remove" danger>Remove</aui-option>
81
+ </aui-dropdown-menu>
82
+ </aui-stack>
83
+ <aui-divider></aui-divider>
84
+ <aui-stack direction="row" gap="3" align-items="center">
85
+ <aui-avatar>LW</aui-avatar>
86
+ <aui-stack gap="1" spacer>
87
+ <aui-heading size="md">Liam Walker</aui-heading>
88
+ <aui-text muted size="sm">liam@acme.io</aui-text>
89
+ </aui-stack>
90
+ <aui-badge>Member</aui-badge>
91
+ <aui-dropdown-menu label="Options" ghost hide-label shrink="0">
92
+ <aui-option value="edit-role">Edit role</aui-option>
93
+ <aui-option value="remove" danger>Remove</aui-option>
94
+ </aui-dropdown-menu>
95
+ </aui-stack>
96
+ <aui-divider></aui-divider>
97
+ <aui-stack direction="row" gap="3" align-items="center" style="opacity: 0.6;">
98
+ <aui-avatar>NK</aui-avatar>
99
+ <aui-stack gap="1" spacer>
100
+ <aui-stack direction="row" gap="2" align-items="center">
101
+ <aui-heading size="md">Nadia Kim</aui-heading>
102
+ <aui-badge>Pending</aui-badge>
103
+ </aui-stack>
104
+ <aui-text muted size="sm">nadia@acme.io</aui-text>
105
+ </aui-stack>
106
+ <aui-badge>Member</aui-badge>
107
+ <aui-dropdown-menu label="Options" ghost hide-label shrink="0">
108
+ <aui-option value="revoke-invite">Revoke invite</aui-option>
109
+ <aui-option value="resend">Resend invite</aui-option>
110
+ </aui-dropdown-menu>
111
+ </aui-stack>
112
+ </aui-stack>
113
+ </aui-stack>
114
+ </aui-inset>
115
+ </aui-content>
116
+ </aui-container>
@@ -50,7 +50,7 @@ examples:
50
50
  <aui-agent-thread role="assistant" sender="Claude">
51
51
  <aui-avatar>C</aui-avatar>
52
52
  <aui-agent-message role="assistant">
53
- <aui-agent-text>Sure! Here's a script using `pandas` to group CSV rows by department:
53
+ <aui-agent-text><template>Sure! Here's a script using `pandas` to group CSV rows by department:
54
54
 
55
55
  ```python
56
56
  import pandas as pd
@@ -63,7 +63,7 @@ examples:
63
63
  print(group.to_string(index=False))
64
64
  ```
65
65
 
66
- This reads `data.csv`, groups by the **department** column, and prints each group. Want me to add export to separate files?</aui-agent-text>
66
+ This reads `data.csv`, groups by the **department** column, and prints each group. Want me to add export to separate files?</template></aui-agent-text>
67
67
  </aui-agent-message>
68
68
  </aui-agent-thread>
69
69
  </aui-agent-feed>
@@ -19,7 +19,7 @@ presentational:
19
19
  - xl
20
20
  - fill
21
21
  description: |
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
+ 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. Combine with hide-label and icon-size to create game board cells (e.g. aui-button size="fill" icon-size="half" hide-label label="X" icon-leading="x").
23
23
  radius:
24
24
  syntax: boolean
25
25
  exclusive: true
@@ -149,7 +149,7 @@ modifiers:
149
149
  hide-label:
150
150
  syntax: boolean
151
151
  description: |
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.
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. When combined with size="fill", the button stretches to fill its grid cell while hiding the label — used for game board cells (tic-tac-toe, battleship, connect-four) where the button fills a square grid cell and shows only an icon or nothing.
153
153
  icon-size:
154
154
  syntax: key-value
155
155
  values:
@@ -349,6 +349,7 @@ use-cases:
349
349
  - Form submit/reset triggers.
350
350
  - Buttons with text adornments (e.g. "AI" badge via text-leading).
351
351
  - Resize-responsive buttons that collapse adornments as space shrinks.
352
+ - Game board cells using size="fill" + hide-label inside aui-grid square (tic-tac-toe, battleship, connect-four).
352
353
  examples:
353
354
  - description: Text only
354
355
  html: <aui-button>Default</aui-button>