@artooi/ag-ui-web-component 0.17.0 → 0.18.0
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 +46 -1
- package/README.md +11 -3
- package/dist/ag-ui-web-component.bundle.js +92 -46
- package/dist/ag-ui-web-component.bundle.js.map +4 -4
- package/dist/core/ag_ui_chat.d.ts.map +1 -1
- package/dist/index.js +209 -53
- package/dist/index.js.map +4 -4
- package/dist/ui/attach_copy_buttons.d.ts +19 -0
- package/dist/ui/attach_copy_buttons.d.ts.map +1 -0
- package/dist/ui/checkpoint_menu.d.ts.map +1 -1
- package/dist/ui/styles.d.ts +1 -1
- package/dist/ui/styles.d.ts.map +1 -1
- package/dist/ui/ui_strings.d.ts +6 -0
- package/dist/ui/ui_strings.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/core/ag_ui_chat.ts +24 -2
- package/src/ui/attach_copy_buttons.ts +82 -0
- package/src/ui/checkpoint_menu.ts +57 -6
- package/src/ui/styles.ts +46 -0
- package/src/ui/ui_strings.ts +9 -0
- package/src/version.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,50 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.18.0] — 2026-08-10
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- **A copy button on code blocks in agent answers.** An agent answering with
|
|
15
|
+
code is answering with something the reader means to *use*, and selecting it
|
|
16
|
+
by hand out of a scrolling transcript — inside a shadow root, in a narrow
|
|
17
|
+
sidebar — was the one interaction the chat surface made harder than the page
|
|
18
|
+
around it.
|
|
19
|
+
|
|
20
|
+
Revealed on hover **and keyboard focus** (hidden-until-hover is invisible to a
|
|
21
|
+
keyboard user), styleable via the `code-copy` part, with `copyCode` /
|
|
22
|
+
`copied` / `copyFailed` in `UiStrings`.
|
|
23
|
+
|
|
24
|
+
⚠ **It reports failure rather than always claiming success.** The Clipboard
|
|
25
|
+
API needs a secure context and is simply absent in some embeddings; a button
|
|
26
|
+
that always says "Copied" sends the reader off to paste stale clipboard
|
|
27
|
+
content and find out somewhere else entirely.
|
|
28
|
+
|
|
29
|
+
### Fixed
|
|
30
|
+
|
|
31
|
+
- **A bare `data-prompt-chips` or `data-slash-commands` now enables the
|
|
32
|
+
feature**, instead of silently disabling it. Both were compared against the
|
|
33
|
+
string `"true"`, so writing the attribute bare — the spelling every native
|
|
34
|
+
boolean attribute uses, and the one a reader reaches for first — turned off
|
|
35
|
+
the thing it names, with nothing to indicate why the chips never appeared.
|
|
36
|
+
`="false"` still turns them off.
|
|
37
|
+
|
|
38
|
+
- **The checkpoint panel manages focus.** It declared `role="dialog"` and took
|
|
39
|
+
no focus at all, so a keyboard user was left behind an open dialog; the thread
|
|
40
|
+
drawer had done this correctly all along. Focus now moves in on open, is
|
|
41
|
+
restored on close, and Tab is trapped while it is open.
|
|
42
|
+
|
|
43
|
+
⚠ **With no continuable runs the panel holds no controls**, so the panel
|
|
44
|
+
itself is focusable as the fallback — otherwise "move focus to the first
|
|
45
|
+
control" silently does nothing in exactly the case where the user has least to
|
|
46
|
+
go on.
|
|
47
|
+
|
|
48
|
+
- **The README described a `dist/ag-ui-web-component.bundle.css` that the build
|
|
49
|
+
has never emitted.** The styles are a template literal injected into the
|
|
50
|
+
shadow root, so there is no sidecar to load — and a reader looking for the
|
|
51
|
+
file to override was looking for the wrong seam. Documented as CSS custom
|
|
52
|
+
properties and `part` attributes instead.
|
|
53
|
+
|
|
10
54
|
## [0.17.0] — 2026-08-10
|
|
11
55
|
|
|
12
56
|
### Added
|
|
@@ -833,7 +877,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
833
877
|
### Notes
|
|
834
878
|
- First release — exercising the automated npm OIDC publish pipeline end-to-end.
|
|
835
879
|
|
|
836
|
-
[Unreleased]: https://github.com/Artui/ag-ui-web-component/compare/v0.
|
|
880
|
+
[Unreleased]: https://github.com/Artui/ag-ui-web-component/compare/v0.18.0...HEAD
|
|
881
|
+
[0.18.0]: https://github.com/Artui/ag-ui-web-component/compare/v0.17.0...v0.18.0
|
|
837
882
|
[0.17.0]: https://github.com/Artui/ag-ui-web-component/compare/v0.16.0...v0.17.0
|
|
838
883
|
[0.16.0]: https://github.com/Artui/ag-ui-web-component/compare/v0.15.0...v0.16.0
|
|
839
884
|
[0.15.0]: https://github.com/Artui/ag-ui-web-component/compare/v0.14.1...v0.15.0
|
package/README.md
CHANGED
|
@@ -150,8 +150,8 @@ That's the whole integration: an `endpoint` attribute pointing at your AG-UI ser
|
|
|
150
150
|
| `title-text` | — | Header label; defaults to `"Assistant"`. The only **observed** attribute (live-updates the header). |
|
|
151
151
|
| `data-tool-display` | `toolDisplay` | Tool-call card detail: `inline` / `minimal` / `compact` / `full` (default `full`). |
|
|
152
152
|
| `data-text-animation` | — | Incoming-text reveal: `none` (default) / `fade` / `word`. |
|
|
153
|
-
| `data-prompt-chips` | — | `"
|
|
154
|
-
| `data-slash-commands` | — | `"
|
|
153
|
+
| `data-prompt-chips` | — | Present (bare, or any value but `"false"`) to surface skills as chips. |
|
|
154
|
+
| `data-slash-commands` | — | Present (bare, or any value but `"false"`) to enable the `/`-command palette. |
|
|
155
155
|
| `data-skills` | — | Inline JSON skill catalog. |
|
|
156
156
|
| `data-skills-url` | — | URL of a JSON skill catalog (fetched with `headers`). |
|
|
157
157
|
| `data-tools-url` | — | URL of a server tool-label catalog (`[{ name, summary, description? }]`), fetched with `headers`; labels tool-call cards for server-side tools. |
|
|
@@ -194,6 +194,10 @@ labels are fetched automatically — per card, `x-summary` → an explicit
|
|
|
194
194
|
|
|
195
195
|
**Properties** (selected): `sharedState` — AG-UI shared state (documented under Tools & state).
|
|
196
196
|
|
|
197
|
+
Code blocks in an agent's answer carry a **copy button**, revealed on hover or
|
|
198
|
+
keyboard focus and styleable via the `code-copy` part. Override its labels with
|
|
199
|
+
the `copyCode` / `copied` / `copyFailed` strings.
|
|
200
|
+
|
|
197
201
|
**Methods**: `registerTool`, `registerPageState`, `setSkills`, `sendMessage`, `attachFile`,
|
|
198
202
|
`appendMessage`, `newChat`, `setCollapsed`, `toggleCollapsed`.
|
|
199
203
|
|
|
@@ -1189,10 +1193,14 @@ This produces, into `dist/`:
|
|
|
1189
1193
|
them.
|
|
1190
1194
|
- `ag-ui-web-component.bundle.js` — the **vendored** ESM bundle, every dependency inlined and
|
|
1191
1195
|
minified, suitable for direct `<script type="module">` embedding.
|
|
1192
|
-
- `ag-ui-web-component.bundle.css` — the extracted CSS sidecar.
|
|
1193
1196
|
- `index.d.ts` (+ source maps) — type declarations; emitted `.js` import specifiers are preserved
|
|
1194
1197
|
so consumers resolve types without extra flags.
|
|
1195
1198
|
|
|
1199
|
+
There is **no CSS file to load**. The styles are a template literal injected into
|
|
1200
|
+
the shadow root at construction, so they ship inside the JS and cannot leak into
|
|
1201
|
+
the host page. Restyle through the [CSS custom properties](#theming-density-and-placement) and the
|
|
1202
|
+
`part` attributes, not a stylesheet override.
|
|
1203
|
+
|
|
1196
1204
|
Other workflow targets (all identical in name to the sibling Python packages):
|
|
1197
1205
|
|
|
1198
1206
|
| Target | What it does |
|