@adia-ai/web-components 0.6.30 → 0.6.32
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/CHANGELOG.md +37 -0
- package/components/accordion/accordion-item.a2ui.json +1 -0
- package/components/accordion/accordion-item.yaml +1 -0
- package/components/accordion/accordion.a2ui.json +1 -0
- package/components/accordion/accordion.yaml +1 -0
- package/components/action-list/action-item.a2ui.json +1 -0
- package/components/action-list/action-item.yaml +1 -0
- package/components/action-list/action-list.a2ui.json +1 -0
- package/components/action-list/action-list.yaml +1 -0
- package/components/agent-artifact/agent-artifact.a2ui.json +1 -0
- package/components/agent-artifact/agent-artifact.yaml +1 -0
- package/components/agent-feedback-bar/agent-feedback-bar.a2ui.json +1 -0
- package/components/agent-feedback-bar/agent-feedback-bar.yaml +1 -0
- package/components/agent-questions/agent-questions.a2ui.json +1 -0
- package/components/agent-questions/agent-questions.yaml +1 -0
- package/components/agent-reasoning/agent-reasoning.a2ui.json +1 -0
- package/components/agent-reasoning/agent-reasoning.yaml +1 -0
- package/components/agent-suggestions/agent-suggestions.a2ui.json +1 -0
- package/components/agent-suggestions/agent-suggestions.yaml +1 -0
- package/components/agent-trace/agent-trace.a2ui.json +1 -0
- package/components/agent-trace/agent-trace.yaml +1 -0
- package/components/alert/alert.a2ui.json +1 -0
- package/components/alert/alert.yaml +1 -0
- package/components/aside/aside.a2ui.json +1 -0
- package/components/aside/aside.yaml +1 -0
- package/components/avatar/avatar-group.a2ui.json +1 -0
- package/components/avatar/avatar-group.yaml +1 -0
- package/components/avatar/avatar.a2ui.json +1 -0
- package/components/avatar/avatar.yaml +1 -0
- package/components/badge/badge.a2ui.json +3 -1
- package/components/badge/badge.css +6 -1
- package/components/badge/badge.yaml +2 -0
- package/components/block/block.a2ui.json +1 -0
- package/components/block/block.yaml +1 -0
- package/components/breadcrumb/breadcrumb.a2ui.json +1 -0
- package/components/breadcrumb/breadcrumb.yaml +1 -0
- package/components/button/button.a2ui.json +1 -0
- package/components/button/button.yaml +1 -0
- package/components/calendar-picker/calendar-picker.a2ui.json +1 -0
- package/components/calendar-picker/calendar-picker.yaml +1 -0
- package/components/canvas/canvas.a2ui.json +1 -0
- package/components/canvas/canvas.yaml +1 -0
- package/components/card/card.a2ui.json +1 -0
- package/components/card/card.yaml +1 -0
- package/components/chart/chart.a2ui.json +3 -1
- package/components/chart/chart.yaml +2 -0
- package/components/chart-legend/chart-legend.a2ui.json +1 -0
- package/components/chart-legend/chart-legend.yaml +1 -0
- package/components/chat-thread/chat-input.a2ui.json +1 -0
- package/components/chat-thread/chat-input.yaml +1 -0
- package/components/chat-thread/chat-thread.a2ui.json +1 -0
- package/components/chat-thread/chat-thread.yaml +1 -0
- package/components/check/check.a2ui.json +3 -1
- package/components/check/check.yaml +2 -0
- package/components/code/code.a2ui.json +1 -0
- package/components/code/code.css +1 -1
- package/components/code/code.yaml +1 -0
- package/components/col/col.a2ui.json +1 -0
- package/components/col/col.yaml +1 -0
- package/components/color-input/color-input.a2ui.json +1 -0
- package/components/color-input/color-input.yaml +1 -0
- package/components/color-picker/color-picker.a2ui.json +1 -0
- package/components/color-picker/color-picker.yaml +1 -0
- package/components/command/command.a2ui.json +1 -0
- package/components/command/command.yaml +1 -0
- package/components/demo-toggle/demo-toggle.a2ui.json +1 -0
- package/components/demo-toggle/demo-toggle.yaml +1 -0
- package/components/description-list/description-list.a2ui.json +1 -0
- package/components/description-list/description-list.yaml +1 -0
- package/components/divider/divider.a2ui.json +1 -0
- package/components/divider/divider.yaml +1 -0
- package/components/drawer/drawer.a2ui.json +1 -0
- package/components/drawer/drawer.yaml +1 -0
- package/components/embed/embed.a2ui.json +1 -0
- package/components/embed/embed.yaml +1 -0
- package/components/empty-state/empty-state.a2ui.json +1 -0
- package/components/empty-state/empty-state.yaml +1 -0
- package/components/feed/feed-item.a2ui.json +1 -0
- package/components/feed/feed-item.yaml +1 -0
- package/components/feed/feed.a2ui.json +1 -0
- package/components/feed/feed.yaml +1 -0
- package/components/field/field.a2ui.json +3 -1
- package/components/field/field.yaml +2 -0
- package/components/fields/fields.a2ui.json +1 -0
- package/components/fields/fields.yaml +1 -0
- package/components/footer/footer.a2ui.json +1 -0
- package/components/footer/footer.yaml +1 -0
- package/components/grid/grid.a2ui.json +1 -0
- package/components/grid/grid.yaml +1 -0
- package/components/header/header.a2ui.json +1 -0
- package/components/header/header.yaml +1 -0
- package/components/heatmap/heatmap.a2ui.json +1 -0
- package/components/heatmap/heatmap.yaml +1 -0
- package/components/icon/icon.a2ui.json +3 -1
- package/components/icon/icon.yaml +2 -0
- package/components/image/image.a2ui.json +1 -0
- package/components/image/image.yaml +1 -0
- package/components/input/input.a2ui.json +1 -0
- package/components/input/input.yaml +1 -0
- package/components/inspector/inspector.a2ui.json +1 -0
- package/components/inspector/inspector.yaml +1 -0
- package/components/kbd/kbd.a2ui.json +1 -0
- package/components/kbd/kbd.yaml +1 -0
- package/components/link/link.a2ui.json +1 -0
- package/components/link/link.yaml +1 -0
- package/components/list/list-item.a2ui.json +1 -0
- package/components/list/list-item.yaml +1 -0
- package/components/list/list.a2ui.json +1 -0
- package/components/list/list.yaml +1 -0
- package/components/menu/menu-divider.a2ui.json +1 -0
- package/components/menu/menu-divider.yaml +1 -0
- package/components/menu/menu-item.a2ui.json +1 -0
- package/components/menu/menu-item.yaml +1 -0
- package/components/menu/menu.a2ui.json +1 -0
- package/components/menu/menu.yaml +1 -0
- package/components/modal/modal.a2ui.json +1 -0
- package/components/modal/modal.yaml +1 -0
- package/components/nav/nav.a2ui.json +1 -0
- package/components/nav/nav.yaml +1 -0
- package/components/nav-group/nav-group.a2ui.json +1 -0
- package/components/nav-group/nav-group.yaml +1 -0
- package/components/nav-item/nav-item.a2ui.json +3 -1
- package/components/nav-item/nav-item.yaml +2 -0
- package/components/noodles/noodles.a2ui.json +1 -0
- package/components/noodles/noodles.yaml +1 -0
- package/components/option-card/option-card.a2ui.json +1 -0
- package/components/option-card/option-card.yaml +1 -0
- package/components/otp-input/otp-input.a2ui.json +1 -0
- package/components/otp-input/otp-input.yaml +1 -0
- package/components/page/page.a2ui.json +1 -0
- package/components/page/page.yaml +1 -0
- package/components/pagination/pagination.a2ui.json +1 -0
- package/components/pagination/pagination.yaml +1 -0
- package/components/pane/pane.a2ui.json +1 -0
- package/components/pane/pane.yaml +1 -0
- package/components/pipeline-status/pipeline-status.a2ui.json +1 -0
- package/components/pipeline-status/pipeline-status.yaml +1 -0
- package/components/popover/popover.a2ui.json +1 -0
- package/components/popover/popover.yaml +1 -0
- package/components/progress/progress.a2ui.json +1 -0
- package/components/progress/progress.yaml +1 -0
- package/components/progress-row/progress-row.a2ui.json +1 -0
- package/components/progress-row/progress-row.yaml +1 -0
- package/components/radio/radio.a2ui.json +1 -0
- package/components/radio/radio.yaml +1 -0
- package/components/range/range.a2ui.json +1 -0
- package/components/range/range.yaml +1 -0
- package/components/rating/rating.a2ui.json +3 -1
- package/components/rating/rating.yaml +2 -0
- package/components/richtext/richtext.a2ui.json +1 -0
- package/components/richtext/richtext.yaml +1 -0
- package/components/row/row.a2ui.json +1 -0
- package/components/row/row.yaml +1 -0
- package/components/search/search.a2ui.json +1 -0
- package/components/search/search.yaml +1 -0
- package/components/section/section.a2ui.json +1 -0
- package/components/section/section.yaml +1 -0
- package/components/segment/segment.a2ui.json +1 -0
- package/components/segment/segment.css +8 -2
- package/components/segment/segment.yaml +1 -0
- package/components/segmented/segmented.a2ui.json +1 -0
- package/components/segmented/segmented.yaml +1 -0
- package/components/select/select.a2ui.json +1 -0
- package/components/select/select.yaml +1 -0
- package/components/skeleton/skeleton.a2ui.json +1 -0
- package/components/skeleton/skeleton.yaml +1 -0
- package/components/slider/slider.a2ui.json +1 -0
- package/components/slider/slider.yaml +1 -0
- package/components/stack/stack.a2ui.json +1 -0
- package/components/stack/stack.yaml +1 -0
- package/components/stat/stat.a2ui.json +4 -1
- package/components/stat/stat.yaml +3 -0
- package/components/step-progress/step-progress.a2ui.json +1 -0
- package/components/step-progress/step-progress.yaml +1 -0
- package/components/stepper/stepper-item.a2ui.json +1 -0
- package/components/stepper/stepper-item.yaml +1 -0
- package/components/stepper/stepper.a2ui.json +1 -0
- package/components/stepper/stepper.yaml +1 -0
- package/components/stream/stream.a2ui.json +1 -0
- package/components/stream/stream.yaml +1 -0
- package/components/swatch/swatch.a2ui.json +1 -0
- package/components/swatch/swatch.yaml +1 -0
- package/components/swiper/swiper.a2ui.json +1 -0
- package/components/swiper/swiper.yaml +1 -0
- package/components/switch/switch.a2ui.json +1 -0
- package/components/switch/switch.yaml +1 -0
- package/components/table/table.a2ui.json +1 -0
- package/components/table/table.yaml +1 -0
- package/components/table-toolbar/table-toolbar.a2ui.json +1 -0
- package/components/table-toolbar/table-toolbar.yaml +1 -0
- package/components/tabs/tab.a2ui.json +1 -0
- package/components/tabs/tab.yaml +1 -0
- package/components/tabs/tabs.a2ui.json +3 -1
- package/components/tabs/tabs.yaml +2 -0
- package/components/tag/tag.a2ui.json +1 -0
- package/components/tag/tag.css +6 -1
- package/components/tag/tag.test.js +46 -0
- package/components/tag/tag.yaml +1 -0
- package/components/text/text.a2ui.json +1 -0
- package/components/text/text.yaml +1 -0
- package/components/textarea/textarea.a2ui.json +1 -0
- package/components/textarea/textarea.yaml +1 -0
- package/components/timeline/timeline-item.a2ui.json +1 -0
- package/components/timeline/timeline-item.yaml +1 -0
- package/components/timeline/timeline.a2ui.json +1 -0
- package/components/timeline/timeline.yaml +1 -0
- package/components/toast/toast.a2ui.json +1 -0
- package/components/toast/toast.yaml +1 -0
- package/components/toggle-group/toggle-group.a2ui.json +1 -0
- package/components/toggle-group/toggle-group.yaml +1 -0
- package/components/toggle-group/toggle-option.a2ui.json +1 -0
- package/components/toggle-group/toggle-option.yaml +1 -0
- package/components/toggle-scheme/toggle-scheme.a2ui.json +1 -0
- package/components/toggle-scheme/toggle-scheme.yaml +1 -0
- package/components/toolbar/toolbar-group.a2ui.json +1 -0
- package/components/toolbar/toolbar-group.yaml +1 -0
- package/components/toolbar/toolbar.a2ui.json +1 -0
- package/components/toolbar/toolbar.yaml +1 -0
- package/components/tooltip/tooltip.a2ui.json +1 -0
- package/components/tooltip/tooltip.yaml +1 -0
- package/components/tree/tree-item.a2ui.json +1 -0
- package/components/tree/tree-item.yaml +1 -0
- package/components/tree/tree.a2ui.json +1 -0
- package/components/tree/tree.yaml +1 -0
- package/components/upload/upload.a2ui.json +1 -0
- package/components/upload/upload.yaml +1 -0
- package/core/icons-phosphor.js +9 -3
- package/dist/icons-manifest.js +9091 -0
- package/dist/web-components.min.css +1 -1
- package/dist/web-components.min.js +1 -1
- package/package.json +1 -1
- package/styles/colors/semantics.css +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,42 @@
|
|
|
1
1
|
# Changelog — @adia-ai/web-components
|
|
2
2
|
|
|
3
|
+
## [0.6.32] — 2026-05-23
|
|
4
|
+
|
|
5
|
+
### Fixed (P0) — `everything.js` CDN bundle now includes all primitives (FB-51)
|
|
6
|
+
|
|
7
|
+
- **`packages/web-modules/everything.js` was shells-only in v0.6.29–v0.6.31** — it registered all four shells but did NOT register the 95+ primitives (`search-ui`, `select-ui`, `field-ui`, `stat-ui`, `row-ui`, etc.). Consumers using the CDN-first "just drop in `everything.min.js`" path hit a hard `TypeError: Cannot read properties of undefined (reading 'toLowerCase')` on any interaction with a primitive element. Root cause: `bundle-js.mjs` assembled the bundle from only the web-modules `index.js`, which re-exports shells but not primitives. Fix: bundle now explicitly includes `web-components/index.js` (all primitives) before web-modules. File: `packages/web-modules/everything.js`.
|
|
8
|
+
|
|
9
|
+
### Added — `dist/icons-manifest.js` CDN icons-manifest; `core/icons-phosphor.js` CDN prefix (FB-51)
|
|
10
|
+
|
|
11
|
+
- **`packages/web-components/dist/icons-manifest.js`** is now included in the npm tarball's `files:` field and exposed via the `./dist/icons-manifest` export path. Consumers loading via CDN received a 404 on the manifest fetch because the file was excluded from the published package. File: `packages/web-components/dist/icons-manifest.js`.
|
|
12
|
+
- **`core/icons-phosphor.js`** — the non-Vite fallback path now destructures `{ cdn: cdnBase, ...weights }` from the manifest. When `cdnBase` is present (as it is in the new generated manifest), SVG fetches use the CDN URL (`https://cdn.jsdelivr.net/npm/@phosphor-icons/core@X.Y.Z/assets/`) instead of `/node_modules/...` (localhost-only). File: `core/icons-phosphor.js`.
|
|
13
|
+
|
|
14
|
+
### Added — `site/llms.txt` + `scripts/build/llms.mjs` machine-readable docs
|
|
15
|
+
|
|
16
|
+
- **`site/llms.txt`** is an LLMs.txt-spec document generated by `scripts/build/llms.mjs` and included in every EXE site deploy. It exposes the full component API surface and usage patterns in a format suitable for LLM context injection. Build step wired into `build:site` as a pre-step.
|
|
17
|
+
|
|
18
|
+
### Added — `status: stable` field on all 141 component YAMLs
|
|
19
|
+
|
|
20
|
+
- Every component YAML now carries `status: stable`, making the stability signal machine-readable in A2UI catalog queries and corpus retrieval. The field is optional in the schema; previously it defaulted to absent (implicitly stable for all released components).
|
|
21
|
+
|
|
22
|
+
### Documentation — anatomy sections added to all `components/`, `styles/`, and `traits/` example pages
|
|
23
|
+
|
|
24
|
+
- **Canonical anatomy sections** (`data-property="slots|data-attrs|keyboard|css-vars|a2ui|related"`) added to all 124 component example pages, 56 trait example pages, and 10 token (`styles/`) example pages via `scripts/docs/anatomy-sweep.mjs`. The sweep generates slot tables, keyboard interaction tables, CSS custom property tables, A2UI composition rules, and related-component links directly from each component's `.a2ui.json` sidecar data. Existing `properties`, `events`, `CSS Tokens`, and `usage` sections were normalized to the canonical `data-property` vocabulary. Files: `components/**/*.examples.html`, `styles/**/*.examples.html`, `traits/**/*.examples.html`.
|
|
25
|
+
|
|
26
|
+
### Fixed — `<tag-ui>` / `<badge-ui>` / `<segment-ui>` phantom trailing gap when content is slotted (not `[text]`)
|
|
27
|
+
|
|
28
|
+
- **Three primitives in the same family rendered `::after { content: attr(text) }` unconditionally.** When consumers passed text via the default slot (`<tag-ui>Beta</tag-ui>`) instead of the `[text]` attribute, `attr(text)` resolved to `""` — an empty string IS generated content, so the pseudo-element existed as a flex item. Combined with the host's `display: inline-flex` + `gap`, gap was applied between the slotted text and the empty `::after`, adding a phantom `--{component}-gap`-wide trailing space (~4 px). Fix: gate the rule on `:scope[text]` so the pseudo-element is only generated when the attribute exists — matches the already-correct form in `button.css`. NEW `tag/tag.test.js` (3 cases) pins the contract via source-grep so the ungated form can't drift back. Files: `components/tag/tag.css`, `components/tag/tag.test.js`, `components/badge/badge.css`, `components/segment/segment.css`.
|
|
29
|
+
|
|
30
|
+
## [0.6.31] — 2026-05-23
|
|
31
|
+
|
|
32
|
+
### Documentation — 3 legacy `patterns/*` example files rewritten as canonical hubs
|
|
33
|
+
|
|
34
|
+
Three pre-v0.4.0 `patterns/*.examples.html` files used legacy markup retired by ADR-0024 (`<aside data-sidebar>`, `<main>`, `<dialog data-command>` for admin-shell; raw `<header data-chat-name>` + `<section data-chat-messages>` + `<chat-input-ui data-chat-input>` for chat-shell; raw `<header>` + `<div data-editor-body>` + `<pane-ui data-left|data-right>` + `<div data-canvas>` for editor-shell). All three rewritten as canonical-hierarchy pattern hubs — code-ui block with the bespoke vocabulary + part-by-part table linking to `/site/components/*` reference pages + authoring rules + "where to next" cross-links. Affects EXE-rendered docs only (`patterns/` is NOT in the npm tarball's `files:` field). Files: `patterns/admin-shell/admin-shell.examples.html`, `patterns/chat-shell/chat-shell.examples.html`, `patterns/editor-shell/editor-shell.examples.html`.
|
|
35
|
+
|
|
36
|
+
### Maintenance
|
|
37
|
+
|
|
38
|
+
- Lockstep version bump tied to docs surface scrub. No source changes in this package; bumped to maintain the 9-package version coherence enforced by `scripts/release/check-lockstep.mjs`.
|
|
39
|
+
|
|
3
40
|
## [0.6.30] — 2026-05-23
|
|
4
41
|
|
|
5
42
|
### Added — `dist/web-components.min.js` rolled-up CDN-ready JS bundle
|
|
@@ -72,7 +72,8 @@
|
|
|
72
72
|
}
|
|
73
73
|
},
|
|
74
74
|
"required": [
|
|
75
|
-
"component"
|
|
75
|
+
"component",
|
|
76
|
+
"text"
|
|
76
77
|
],
|
|
77
78
|
"unevaluatedProperties": false,
|
|
78
79
|
"x-adiaui": {
|
|
@@ -127,6 +128,7 @@
|
|
|
127
128
|
"name": "idle"
|
|
128
129
|
}
|
|
129
130
|
],
|
|
131
|
+
"status": "stable",
|
|
130
132
|
"synonyms": {
|
|
131
133
|
"badge": [
|
|
132
134
|
"badge",
|
|
@@ -31,7 +31,12 @@
|
|
|
31
31
|
vertical-align: middle;
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
/* `[text]` attribute selector gates the ::after so consumers using
|
|
35
|
+
slotted content (`<badge-ui>3</badge-ui>`) don't get an empty
|
|
36
|
+
pseudo-element flex item — which would otherwise inherit the
|
|
37
|
+
host's `gap` and add a phantom `--badge-gap`-wide trailing space
|
|
38
|
+
after the slotted content. Mirrors `button.css` / `tag.css`. */
|
|
39
|
+
:scope[text]::after {
|
|
35
40
|
content: attr(text);
|
|
36
41
|
}
|
|
37
42
|
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
$schema: ../../../../scripts/schemas/component.yaml.schema.json
|
|
4
4
|
name: UIBadge
|
|
5
5
|
tag: badge-ui
|
|
6
|
+
status: stable
|
|
6
7
|
component: Badge
|
|
7
8
|
category: display
|
|
8
9
|
version: 1
|
|
@@ -48,6 +49,7 @@ props:
|
|
|
48
49
|
- beta
|
|
49
50
|
text:
|
|
50
51
|
description: Badge text content. Falls back to existing textContent.
|
|
52
|
+
required: true
|
|
51
53
|
type: string
|
|
52
54
|
default: ""
|
|
53
55
|
textContent:
|
|
@@ -139,7 +139,8 @@
|
|
|
139
139
|
}
|
|
140
140
|
},
|
|
141
141
|
"required": [
|
|
142
|
-
"component"
|
|
142
|
+
"component",
|
|
143
|
+
"type"
|
|
143
144
|
],
|
|
144
145
|
"unevaluatedProperties": false,
|
|
145
146
|
"x-adiaui": {
|
|
@@ -219,6 +220,7 @@
|
|
|
219
220
|
"name": "empty"
|
|
220
221
|
}
|
|
221
222
|
],
|
|
223
|
+
"status": "stable",
|
|
222
224
|
"synonyms": {
|
|
223
225
|
"analytics": [
|
|
224
226
|
"chart",
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
$schema: ../../../../scripts/schemas/component.yaml.schema.json
|
|
4
4
|
name: UIChart
|
|
5
5
|
tag: chart-ui
|
|
6
|
+
status: stable
|
|
6
7
|
component: Chart
|
|
7
8
|
category: agent
|
|
8
9
|
version: 1
|
|
@@ -13,6 +14,7 @@ description: >-
|
|
|
13
14
|
props:
|
|
14
15
|
type:
|
|
15
16
|
description: Chart type. All 18 enum values have dedicated render paths in chart.js.
|
|
17
|
+
required: true
|
|
16
18
|
type: string
|
|
17
19
|
default: bar
|
|
18
20
|
enum:
|
|
@@ -58,7 +58,8 @@
|
|
|
58
58
|
}
|
|
59
59
|
},
|
|
60
60
|
"required": [
|
|
61
|
-
"component"
|
|
61
|
+
"component",
|
|
62
|
+
"label"
|
|
62
63
|
],
|
|
63
64
|
"unevaluatedProperties": false,
|
|
64
65
|
"x-adiaui": {
|
|
@@ -115,6 +116,7 @@
|
|
|
115
116
|
"name": "disabled"
|
|
116
117
|
}
|
|
117
118
|
],
|
|
119
|
+
"status": "stable",
|
|
118
120
|
"synonyms": {
|
|
119
121
|
"checkbox": [
|
|
120
122
|
"check",
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
$schema: ../../../../scripts/schemas/component.yaml.schema.json
|
|
4
4
|
name: UICheck
|
|
5
5
|
tag: check-ui
|
|
6
|
+
status: stable
|
|
6
7
|
component: Check
|
|
7
8
|
category: layout
|
|
8
9
|
version: 1
|
|
@@ -44,6 +45,7 @@ props:
|
|
|
44
45
|
default: false
|
|
45
46
|
label:
|
|
46
47
|
description: Label text beside the checkbox
|
|
48
|
+
required: true
|
|
47
49
|
type: string
|
|
48
50
|
default: ""
|
|
49
51
|
value:
|
package/components/code/code.css
CHANGED
package/components/col/col.yaml
CHANGED