@webskill/chatbot 0.0.1 → 0.1.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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Chunhui Mo
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -129,12 +129,32 @@ implementation (OPFS storage, skills, demo/model providers, console embedding).
129
129
 
130
130
  ## Stability
131
131
 
132
- - **`@stable`** `Chatbot`, `ChatbotProps`, `ChatEngine` (public methods),
133
- `CompositeUiBridge`, the i18n dictionary. Covered by semver from 0.1.0.
134
- - **`@experimental`**A2UI/OpenUI/Vercel surface hosts and snapshot hosts,
135
- `VercelPayloadPreview`, `configureA2uiMarkdown`, the `probe*` availability
136
- helpers, `RendererKind` (renamed in 0.3.0), and the `RunSnapshot` format.
137
- These may change between 0.0.x releases.
132
+ Every public export carries a `@stable` or `@experimental` JSDoc tag. The tag is
133
+ part of the checked-in API snapshot (`api-snapshots/chatbot/index.d.ts.snap`),
134
+ so a symbol cannot be quietly downgraded the change shows up in the diff.
135
+
136
+ - **`@stable`** covered by the semver contract from 0.1.0: bug fixes ship in a
137
+ patch, backwards-compatible capabilities in a minor, breaking changes only in
138
+ a major with release notes. This covers the surface you wire a host against:
139
+ `Chatbot`, `ChatEngine`, `ChatbotHostAdapter`, the message/event/session data
140
+ types, `CompositeUiBridge`, the layout, theme and i18n exports, and the shell
141
+ components (`InteractionCard`, `ResultBlocksPro`, `SettingsDrawer`, …).
142
+ - **`@experimental`** — may change in a minor or patch release. Only three kinds
143
+ of symbol qualify, and each one is here for a stated reason:
144
+ - **Non-native renderer tiers** — the A2UI, OpenUI and Vercel surface hosts,
145
+ their snapshot variants, `VercelPayloadPreview`, `SpecInteraction`,
146
+ `configureA2uiMarkdown`, the `probe*` helpers, `RendererKind`,
147
+ `RendererCapability` and `DEFAULT_RENDERER_CAPABILITIES`. Their shape
148
+ tracks upstream ecosystems this package does not own.
149
+ - **Surfaces introduced in this release** — `ChatAttachmentInput` and
150
+ `ChatAttachmentMeta` (multimodal attachments), which no consumer has
151
+ exercised yet.
152
+ - **`RunSnapshot`** — the resume snapshot format, `@experimental` in
153
+ `@webskill/sdk` for the same reason.
154
+
155
+ Anything a README example or the published-`.d.ts` consumer probe imports is
156
+ `@stable` by rule: once we teach a call site, we stop calling it experimental.
157
+ `pnpm lint` enforces that rule against this file.
138
158
 
139
159
  ## License
140
160
 
package/dist/chatbot.css CHANGED
@@ -722,6 +722,9 @@
722
722
  border-color: color-mix(in oklab, var(--destructive) 25%, transparent);
723
723
  }
724
724
  }
725
+ .self-center {
726
+ align-self: center;
727
+ }
725
728
  .truncate {
726
729
  overflow: hidden;
727
730
  text-overflow: ellipsis;
@@ -1051,6 +1054,9 @@
1051
1054
  .pr-8 {
1052
1055
  padding-right: calc(var(--spacing) * 8);
1053
1056
  }
1057
+ .pb-1 {
1058
+ padding-bottom: var(--spacing);
1059
+ }
1054
1060
  .pb-3 {
1055
1061
  padding-bottom: calc(var(--spacing) * 3);
1056
1062
  }
@@ -1210,9 +1216,6 @@
1210
1216
  .underline-offset-4 {
1211
1217
  text-underline-offset: 4px;
1212
1218
  }
1213
- .accent-primary {
1214
- accent-color: var(--primary);
1215
- }
1216
1219
  .opacity-0 {
1217
1220
  opacity: 0%;
1218
1221
  }
@@ -1497,6 +1500,9 @@
1497
1500
  opacity: 85%;
1498
1501
  }
1499
1502
  }
1503
+ .focus\:border-ring:focus {
1504
+ border-color: var(--ring);
1505
+ }
1500
1506
  .focus-visible\:border-ring:focus-visible {
1501
1507
  border-color: var(--ring);
1502
1508
  }