@bitbaum/chatkit 0.10.0 → 0.12.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/README.md CHANGED
@@ -15,7 +15,7 @@ interface that calls them.)
15
15
  ## Install
16
16
 
17
17
  ```sh
18
- pnpm add @bitbaum/chatkit@^0.9.0
18
+ pnpm add @bitbaum/chatkit@^0.11.0
19
19
  ```
20
20
 
21
21
  **Install releases from npm, never a commit or a branch.** A semver range is
@@ -312,3 +312,42 @@ pnpm run verify # everything CI runs
312
312
  ```
313
313
 
314
314
  MIT © Cato
315
+
316
+ ### Visual answers (0.11)
317
+
318
+ Append `RICH_ANSWERS_INSTRUCTION` from `@bitbaum/chatkit` to a conversational
319
+ system prompt, alongside `REPLIES_INSTRUCTION`. The model can place fenced
320
+ `chat_ui` JSON blocks inline in its answer: galleries with captions and a
321
+ full-size image sheet, dependency diagrams, recommendation callouts, and
322
+ single-choice follow-ups. Markdown tables and step lists remain available.
323
+ `Markdown` renders these automatically; pass `onReply={send}` for choice forms.
324
+ `ChatThread` wires that callback only on the latest answer and disables it
325
+ while another turn is running. Historical forms remain readable.
326
+
327
+ Products keep their own model routing, tools, evidence rules, auth and `--ck-*`
328
+ tokens. For a JSON-output assistant such as Heidi, ask for rich blocks only
329
+ inside its free-text explanation string, never outside the answer envelope.
330
+ Images must come from supplied context or tool results. No HTML or executable
331
+ SVG is accepted. Images suppress referrers and broken thumbnails retain their
332
+ text labels. Blocks are bounded and validated; incomplete/invalid blocks are
333
+ hidden, so always include the takeaway in ordinary prose too. Diagram edges
334
+ retain their direction and labels, including branches and cycles.
335
+
336
+ Release this package before updating consumer lockfiles to `^0.11.0`.
337
+ Run `pnpm run verify`; `demo/index.html` is the visual reference in light/dark
338
+ and at phone width. The diagram and gallery artwork in the demo is a fixture.
339
+
340
+ ### Audio in answers
341
+
342
+ A validated `chat_ui` block can attach a real audio asset:
343
+
344
+ ```json
345
+ {"type":"audio","title":"Morning sketch","src":"/provided.wav","creator":"Studio","caption":"An original instrumental draft"}
346
+ ```
347
+
348
+ The native player waits for explicit playback and does not preload the file.
349
+ Only attach URLs supplied by a person or a completed tool. Generation and
350
+ catalogue access belong to the app's media tools: this renderer does not
351
+ create a song or grant rights to redistribute it. Copy and speech preserve the
352
+ track's title, creator and caption. The demo WAV is an original synthesized
353
+ fixture; it is not a commercial track or a model-generated recording.
package/dist/index.d.ts CHANGED
@@ -11,4 +11,5 @@ export * from "./attachments.js";
11
11
  export * from "./image.js";
12
12
  export * from "./replies.js";
13
13
  export * from "./speech.js";
14
+ export * from "./rich.js";
14
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC"}
package/dist/index.js CHANGED
@@ -11,4 +11,5 @@ export * from "./attachments.js";
11
11
  export * from "./image.js";
12
12
  export * from "./replies.js";
13
13
  export * from "./speech.js";
14
+ export * from "./rich.js";
14
15
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AnswerActions.d.ts","sourceRoot":"","sources":["../../src/react/AnswerActions.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7D,OAAO,EAAsB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAOhE,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,mBAO3C,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,EAAE,SAAS,EACjB,QAAQ,GACT,EAAE;IACD,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,sFAAsF;IACtF,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,+BAoFA"}
1
+ {"version":3,"file":"AnswerActions.d.ts","sourceRoot":"","sources":["../../src/react/AnswerActions.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7D,OAAO,EAAsB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAOhE,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,mBAO3C,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,EAAE,SAAS,EACjB,QAAQ,GACT,EAAE;IACD,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,sFAAsF;IACtF,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,+BAoFA"}
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { richAnswerText } from "../rich.js";
3
4
  import { useSyncExternalStore } from "react";
4
5
  import { formatElapsed } from "../composer.js";
5
6
  import { plainTextForSpeech } from "../speech.js";
@@ -35,7 +36,7 @@ export function AnswerActions({ text, onRetry, speaker, share, labels: overrides
35
36
  if (speech.speaking) {
36
37
  return (_jsxs("div", { className: "ck-turn-actions ck-player", role: "status", "aria-live": "polite", children: [_jsxs("button", { type: "button", className: "ck-action ck-action-stop", onClick: speech.stop, "aria-label": labels.stop, children: [_jsx(IconStop, {}), _jsx("span", { children: labels.stop })] }), _jsx("span", { className: "ck-player-wave", "aria-hidden": true, children: Array.from({ length: 7 }).map((_, i) => (_jsx("span", {}, i))) }), _jsx("span", { className: "ck-player-time", children: formatElapsed(speech.elapsed) })] }));
37
38
  }
38
- return (_jsxs("div", { className: "ck-turn-actions", children: [_jsxs("button", { type: "button", className: "ck-action", onClick: () => copy(text), "aria-label": copied ? labels.copied : labels.copy, children: [copied ? _jsx(IconCheck, {}) : _jsx(IconCopy, {}), _jsx("span", { children: copied ? labels.copied : labels.copy })] }), speech.supported && (_jsxs("button", { type: "button", className: "ck-action", onClick: () => speech.speak(text), "aria-label": labels.listen, children: [_jsx(IconSpeaker, {}), _jsx("span", { children: labels.listen })] })), canShare && share !== false && (_jsxs("button", { type: "button", className: "ck-action",
39
+ return (_jsxs("div", { className: "ck-turn-actions", children: [_jsxs("button", { type: "button", className: "ck-action", onClick: () => copy(richAnswerText(text)), "aria-label": copied ? labels.copied : labels.copy, children: [copied ? _jsx(IconCheck, {}) : _jsx(IconCopy, {}), _jsx("span", { children: copied ? labels.copied : labels.copy })] }), speech.supported && (_jsxs("button", { type: "button", className: "ck-action", onClick: () => speech.speak(text), "aria-label": labels.listen, children: [_jsx(IconSpeaker, {}), _jsx("span", { children: labels.listen })] })), canShare && share !== false && (_jsxs("button", { type: "button", className: "ck-action",
39
40
  // A dismissed share sheet rejects; that is the person changing their
40
41
  // mind, not an error to report.
41
42
  onClick: () => void navigator
@@ -1 +1 @@
1
- {"version":3,"file":"AnswerActions.js","sourceRoot":"","sources":["../../src/react/AnswerActions.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnswerActions.js","sourceRoot":"","sources":["../../src/react/AnswerActions.tsx"],"names":[],"mappings":"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"}
@@ -61,8 +61,10 @@ export declare const defaultRenderCitation: RenderCitation;
61
61
  * instead of breaking the page; the sources an answer cites are listed once
62
62
  * under it as chips.
63
63
  */
64
- export declare function Markdown({ text, citations, renderLink, renderCitation, renderSources, sources, sourcesLabel, className, }: {
64
+ export declare function Markdown({ text, citations, renderLink, renderCitation, renderSources, sources, sourcesLabel, className, onReply, }: {
65
65
  text: string;
66
+ /** A visual choice sends a normal conversation message. Omit while streaming. */
67
+ onReply?: (text: string) => void;
66
68
  citations?: CitationMap;
67
69
  renderLink?: RenderLink;
68
70
  renderCitation?: RenderCitation;
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../src/react/Markdown.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAcjD;;2BAE2B;AAC3B,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE3F,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;CACrB,KAAK,SAAS,CAAC;AAEhB;;yBAEyB;AACzB,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE;IAClC,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB,KAAK,SAAS,CAAC;AAEhB;uEACuE;AACvE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE;IACpC,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACxE,KAAK,EAAE,MAAM,CAAC;CACf,KAAK,SAAS,CAAC;AAEhB,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,EAAE,UAS7B,CAAC;AAEJ;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,UAA8B,GAC/B,EAAE;IACD,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,sCA+EA;AAED,eAAO,MAAM,qBAAqB,EAAE,cASnC,CAAC;AAwEF;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CAAC,EACvB,IAAI,EACJ,SAAS,EACT,UAA8B,EAC9B,cAAsC,EACtC,aAAa,EACb,OAAc,EACd,YAAwB,EACxB,SAAS,GACV,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,gFAAgF;IAChF,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,+BAoIA"}
1
+ {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../../src/react/Markdown.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAgBjD;;2BAE2B;AAC3B,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE3F,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;CACrB,KAAK,SAAS,CAAC;AAEhB;;yBAEyB;AACzB,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE;IAClC,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB,KAAK,SAAS,CAAC;AAEhB;uEACuE;AACvE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE;IACpC,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACxE,KAAK,EAAE,MAAM,CAAC;CACf,KAAK,SAAS,CAAC;AAEhB,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,EAAE,UAS7B,CAAC;AAEJ;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,UAA8B,GAC/B,EAAE;IACD,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,sCA+EA;AAED,eAAO,MAAM,qBAAqB,EAAE,cASnC,CAAC;AAwEF;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CAAC,EACvB,IAAI,EACJ,SAAS,EACT,UAA8B,EAC9B,cAAsC,EACtC,aAAa,EACb,OAAc,EACd,YAAwB,EACxB,SAAS,EACT,OAAO,GACR,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,iFAAiF;IACjF,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,gFAAgF;IAChF,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,+BA2IA"}
@@ -1,6 +1,8 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useState } from "react";
4
+ import { parseRichBlock } from "../rich.js";
5
+ import { RichAnswerBlock } from "./RichBlock.js";
4
6
  import { IconBook } from "./icons.js";
5
7
  import { Sheet, prefersSheet } from "./Sheet.js";
6
8
  import { citedIds, isCardList, isInternalHref, listLead, parseBlocks, parseInline, } from "../markdown.js";
@@ -84,7 +86,7 @@ function Inline({ spans, citations, renderLink, renderCitation, }) {
84
86
  * instead of breaking the page; the sources an answer cites are listed once
85
87
  * under it as chips.
86
88
  */
87
- export function Markdown({ text, citations, renderLink = defaultRenderLink, renderCitation = defaultRenderCitation, renderSources, sources = true, sourcesLabel = "Sources", className, }) {
89
+ export function Markdown({ text, citations, renderLink = defaultRenderLink, renderCitation = defaultRenderCitation, renderSources, sources = true, sourcesLabel = "Sources", className, onReply, }) {
88
90
  const inline = (t) => (_jsx(Inline, { spans: parseInline(t), citations: citations, renderLink: renderLink, renderCitation: renderCitation }));
89
91
  const items = (list, ordered, start = 1) => {
90
92
  const List = ordered ? "ol" : "ul";
@@ -97,8 +99,16 @@ export function Markdown({ text, citations, renderLink = defaultRenderLink, rend
97
99
  const cited = citations ? citedIds(text).filter((id) => citations[id]) : [];
98
100
  return (_jsxs("div", { className: className ? `ck-md ${className}` : "ck-md", children: [parseBlocks(text).map((b, i) => {
99
101
  switch (b.kind) {
100
- case "code":
102
+ case "code": {
103
+ if (b.lang === "chat_ui") {
104
+ const block = parseRichBlock(b.code);
105
+ if (block)
106
+ return _jsx(RichAnswerBlock, { block: block, onReply: onReply }, i);
107
+ // A partial JSON block must not flash in the conversation.
108
+ return null;
109
+ }
101
110
  return (_jsx("pre", { className: "ck-pre", "data-lang": b.lang || undefined, children: _jsx("code", { children: b.code }) }, i));
111
+ }
102
112
  case "ul":
103
113
  return (_jsx("div", { children: isCardList(b.items) ? cards(b.items, false) : items(b.items, false) }, i));
104
114
  case "ol":
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.js","sourceRoot":"","sources":["../../src/react/Markdown.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Markdown.js","sourceRoot":"","sources":["../../src/react/Markdown.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { RichBlock } from "../rich.js";
2
+ export declare function RichAnswerBlock({ block, onReply, }: {
3
+ block: RichBlock;
4
+ onReply?: (text: string) => void;
5
+ }): import("react").JSX.Element;
6
+ //# sourceMappingURL=RichBlock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichBlock.d.ts","sourceRoot":"","sources":["../../src/react/RichBlock.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,OAAO,GACR,EAAE;IACD,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC,+BAuIA"}
@@ -0,0 +1,30 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId, useState } from "react";
4
+ import { Sheet } from "./Sheet.js";
5
+ export function RichAnswerBlock({ block, onReply, }) {
6
+ const id = useId();
7
+ const [selected, setSelected] = useState(null);
8
+ const [sent, setSent] = useState(false);
9
+ const [photo, setPhoto] = useState(null);
10
+ if (block.type === "audio")
11
+ return (_jsxs("figure", { className: "ck-rich ck-audio", children: [_jsx("figcaption", { className: "ck-rich-title", children: block.title }), block.creator && _jsx("p", { children: block.creator }), _jsx("audio", { controls: true, preload: "none", src: block.src, "aria-label": block.title }), block.caption && _jsx("p", { children: block.caption }), _jsxs("a", { href: block.src, target: "_blank", rel: "noopener noreferrer", children: [block.title, " \u2197"] })] }));
12
+ if (block.type === "gallery") {
13
+ const active = photo === null ? null : block.images[photo];
14
+ return (_jsxs("figure", { className: "ck-rich ck-gallery", children: [_jsx("figcaption", { className: "ck-rich-title", children: block.title }), _jsx("div", { className: "ck-gallery-grid", children: block.images.map((item, i) => (_jsxs("figure", { children: [_jsxs("button", { type: "button", className: "ck-photo", onClick: () => setPhoto(i), "aria-label": item.alt, "aria-haspopup": "dialog", children: [_jsx("img", { src: item.src, alt: item.alt, loading: "lazy", referrerPolicy: "no-referrer", onError: (e) => {
15
+ e.currentTarget.hidden = true;
16
+ } }), _jsx("span", { className: "ck-photo-label", children: item.alt })] }), item.caption && _jsx("figcaption", { children: item.caption })] }, i))) }), _jsxs(Sheet, { open: !!active, onClose: () => setPhoto(null), title: active?.alt ?? block.title, children: [active && (_jsx("img", { className: "ck-photo-full", src: active.src, alt: active.alt, referrerPolicy: "no-referrer" })), active?.caption && _jsx("p", { children: active.caption })] })] }));
17
+ }
18
+ if (block.type === "diagram")
19
+ return (_jsxs("figure", { className: "ck-rich ck-diagram", children: [_jsx("figcaption", { className: "ck-rich-title", children: block.title }), _jsx("ol", { className: "ck-diagram-nodes", children: block.nodes.map((n, i) => (_jsxs("li", { children: [_jsx("span", { className: "ck-diagram-number", "aria-hidden": true, children: i + 1 }), _jsxs("div", { children: [_jsx("strong", { children: n.label }), n.detail && _jsx("p", { children: n.detail })] })] }, n.id))) }), block.edges.length > 0 && (_jsx("ul", { className: "ck-diagram-edges", children: block.edges.map((e, i) => (_jsxs("li", { children: [_jsx("span", { children: block.nodes.find((n) => n.id === e.from).label }), _jsx("span", { className: "ck-diagram-arrow", "aria-hidden": true, children: "\u2192" }), _jsx("span", { children: block.nodes.find((n) => n.id === e.to).label }), e.label && _jsx("small", { children: e.label })] }, i))) }))] }));
20
+ if (block.type === "callout")
21
+ return (_jsxs("aside", { className: "ck-rich ck-callout", children: [_jsx("strong", { className: "ck-rich-title", children: block.title }), _jsx("p", { children: block.body })] }));
22
+ return (_jsx("form", { className: "ck-rich ck-choice", onSubmit: (e) => {
23
+ e.preventDefault();
24
+ if (selected !== null && onReply && !sent) {
25
+ setSent(true);
26
+ onReply(block.options[selected].reply);
27
+ }
28
+ }, children: _jsxs("fieldset", { disabled: !onReply || sent, children: [_jsx("legend", { className: "ck-rich-title", children: block.title }), block.options.map((option, i) => (_jsxs("label", { className: "ck-choice-option", children: [_jsx("input", { type: "radio", name: id, value: i, checked: selected === i, onChange: () => setSelected(i) }), _jsx("span", { children: option.label })] }, i))), onReply && (_jsxs("button", { type: "submit", className: "ck-choice-submit", disabled: selected === null || sent, children: [block.submit, _jsx("span", { "aria-hidden": true, children: "\u2192" })] }))] }) }));
29
+ }
30
+ //# sourceMappingURL=RichBlock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichBlock.js","sourceRoot":"","sources":["../../src/react/RichBlock.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Thread.d.ts","sourceRoot":"","sources":["../../src/react/Thread.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Thread.d.ts","sourceRoot":"","sources":["../../src/react/Thread.tsx"],"names":[],"mappings":"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"}
@@ -39,7 +39,7 @@ export function ChatMessage({ message, onRetry, renderLink = defaultRenderLink,
39
39
  // a phone must not stand between them.
40
40
  if (last || message.failed)
41
41
  cls.push("ck-turn-pinned");
42
- return (_jsxs("div", { className: cls.join(" "), children: [showSpeaker && message.speaker && _jsx("span", { className: "ck-speaker", children: message.speaker.name }), message.failed ? (_jsx("p", { className: "ck-failed", role: "status", children: message.content || labels.failed })) : (_jsx(Markdown, { text: parsed.text, citations: message.citations, renderLink: renderLink })), footer, message.failed ? (onRetry && (_jsx("div", { className: "ck-turn-actions", children: _jsxs("button", { type: "button", className: "ck-action", onClick: onRetry, children: [_jsx(IconRetry, {}), _jsx("span", { children: labels.retry })] }) }))) : (_jsx(AnswerActions, { text: parsed.text, onRetry: onRetry, speaker: speaker, share: share, labels: labels })), last && onReply && !message.failed && replies.length > 0 && (_jsx(ChatReplies, { replies: replies, onPick: onReply, label: labels.replies }))] }));
42
+ return (_jsxs("div", { className: cls.join(" "), children: [showSpeaker && message.speaker && _jsx("span", { className: "ck-speaker", children: message.speaker.name }), message.failed ? (_jsx("p", { className: "ck-failed", role: "status", children: message.content || labels.failed })) : (_jsx(Markdown, { text: parsed.text, citations: message.citations, renderLink: renderLink, onReply: last ? onReply : undefined })), footer, message.failed ? (onRetry && (_jsx("div", { className: "ck-turn-actions", children: _jsxs("button", { type: "button", className: "ck-action", onClick: onRetry, children: [_jsx(IconRetry, {}), _jsx("span", { children: labels.retry })] }) }))) : (_jsx(AnswerActions, { text: parsed.text, onRetry: onRetry, speaker: speaker, share: share, labels: labels })), last && onReply && !message.failed && replies.length > 0 && (_jsx(ChatReplies, { replies: replies, onPick: onReply, label: labels.replies }))] }));
43
43
  }
44
44
  /**
45
45
  * The replies under an answer. Exported for apps that render their own
@@ -1 +1 @@
1
- {"version":3,"file":"Thread.js","sourceRoot":"","sources":["../../src/react/Thread.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Thread.js","sourceRoot":"","sources":["../../src/react/Thread.tsx"],"names":[],"mappings":"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"}
@@ -26,4 +26,5 @@ export type { AttachMenuLabels } from "./AttachMenu.js";
26
26
  export { useAttachments } from "./use-attachments.js";
27
27
  export type { AttachmentsController } from "./use-attachments.js";
28
28
  export { useClipboard, useStickToBottom, useViewportHeight, useAutoGrow } from "./hooks.js";
29
+ export { RichAnswerBlock } from "./RichBlock.js";
29
30
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAClE,YAAY,EACV,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,aAAa,GACd,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,UAAU,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EAAE,aAAa,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAClF,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AACzE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAClE,YAAY,EACV,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,aAAa,GACd,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,UAAU,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EAAE,aAAa,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAClF,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AACzE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC"}
@@ -18,4 +18,5 @@ export { useDictation } from "./use-dictation.js";
18
18
  export { AttachMenu, DEFAULT_ATTACH_MENU_LABELS } from "./AttachMenu.js";
19
19
  export { useAttachments } from "./use-attachments.js";
20
20
  export { useClipboard, useStickToBottom, useViewportHeight, useAutoGrow } from "./hooks.js";
21
+ export { RichAnswerBlock } from "./RichBlock.js";
21
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAOlE,OAAO,EACL,UAAU,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EAAE,aAAa,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAElF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAEzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAOlE,OAAO,EACL,UAAU,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EAAE,aAAa,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAElF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAEzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC"}
package/dist/rich.d.ts ADDED
@@ -0,0 +1,49 @@
1
+ /** Declarative answer blocks. Model output is data, never HTML or executable SVG. */
2
+ export type RichBlock = {
3
+ type: "audio";
4
+ title: string;
5
+ src: string;
6
+ creator?: string;
7
+ caption?: string;
8
+ } | {
9
+ type: "gallery";
10
+ title: string;
11
+ images: {
12
+ src: string;
13
+ alt: string;
14
+ caption?: string;
15
+ }[];
16
+ } | {
17
+ type: "diagram";
18
+ title: string;
19
+ nodes: {
20
+ id: string;
21
+ label: string;
22
+ detail?: string;
23
+ }[];
24
+ edges: {
25
+ from: string;
26
+ to: string;
27
+ label?: string;
28
+ }[];
29
+ } | {
30
+ type: "callout";
31
+ title: string;
32
+ body: string;
33
+ } | {
34
+ type: "choices";
35
+ title: string;
36
+ options: {
37
+ label: string;
38
+ reply: string;
39
+ }[];
40
+ submit: string;
41
+ };
42
+ /** Web images or same-origin assets only; no embedded markup or protocol-relative URLs. */
43
+ export declare function safeImageSrc(value: unknown): string | null;
44
+ /** Invalid or oversized blocks are rejected without crashing the answer. */
45
+ export declare function parseRichBlock(raw: string): RichBlock | null;
46
+ export declare const RICH_ANSWERS_INSTRUCTION: string;
47
+ /** Copy, share and voice keep the content of a visual, never its wire JSON. */
48
+ export declare function richAnswerText(text: string): string;
49
+ //# sourceMappingURL=rich.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rich.d.ts","sourceRoot":"","sources":["../src/rich.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACjF;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,GAC5F;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACxD,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACvD,GACD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AASpG,2FAA2F;AAC3F,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAY1D;AAED,4EAA4E;AAC5E,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAsE5D;AAED,eAAO,MAAM,wBAAwB,QAUzB,CAAC;AAEb,+EAA+E;AAC/E,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAiBnD"}
package/dist/rich.js ADDED
@@ -0,0 +1,109 @@
1
+ const record = (v) => !!v && typeof v === "object" && !Array.isArray(v);
2
+ const str = (v, max = 2000) => typeof v === "string" && !!v.trim() && v.length <= max;
3
+ const list = (v, max) => Array.isArray(v) && v.length > 0 && v.length <= max;
4
+ /** Web images or same-origin assets only; no embedded markup or protocol-relative URLs. */
5
+ export function safeImageSrc(value) {
6
+ if (!str(value, 4096) || /[\s\\]/.test(value) || [...value].some((c) => c.charCodeAt(0) < 32))
7
+ return null;
8
+ if (/^\/(?!\/)/.test(value))
9
+ return value;
10
+ try {
11
+ const url = new URL(value);
12
+ return ["https:", "http:"].includes(url.protocol) && !url.username && !url.password
13
+ ? value
14
+ : null;
15
+ }
16
+ catch {
17
+ return null;
18
+ }
19
+ }
20
+ /** Invalid or oversized blocks are rejected without crashing the answer. */
21
+ export function parseRichBlock(raw) {
22
+ if (raw.length > 40000)
23
+ return null;
24
+ let b;
25
+ try {
26
+ b = JSON.parse(raw);
27
+ }
28
+ catch {
29
+ return null;
30
+ }
31
+ if (!record(b) || !str(b.title, 200))
32
+ return null;
33
+ switch (b.type) {
34
+ case "audio":
35
+ return safeImageSrc(b.src) &&
36
+ (b.creator === undefined || str(b.creator, 200)) &&
37
+ (b.caption === undefined || str(b.caption, 1000))
38
+ ? b
39
+ : null;
40
+ case "callout":
41
+ return str(b.body) ? { type: b.type, title: b.title, body: b.body } : null;
42
+ case "gallery":
43
+ if (!list(b.images, 6) ||
44
+ !b.images.every((i) => record(i) &&
45
+ safeImageSrc(i.src) &&
46
+ str(i.alt, 300) &&
47
+ (i.caption === undefined || str(i.caption, 500))))
48
+ return null;
49
+ return b;
50
+ case "diagram": {
51
+ if (!list(b.nodes, 8) ||
52
+ !b.nodes.every((n) => record(n) &&
53
+ str(n.id, 50) &&
54
+ str(n.label, 120) &&
55
+ (n.detail === undefined || str(n.detail, 300))))
56
+ return null;
57
+ const ids = new Set(b.nodes.map((n) => n.id));
58
+ if (ids.size !== b.nodes.length ||
59
+ !Array.isArray(b.edges) ||
60
+ b.edges.length > 16 ||
61
+ !b.edges.every((e) => record(e) &&
62
+ ids.has(e.from) &&
63
+ ids.has(e.to) &&
64
+ (e.label === undefined || str(e.label, 100))))
65
+ return null;
66
+ return b;
67
+ }
68
+ case "choices":
69
+ if (!str(b.submit, 80) ||
70
+ !list(b.options, 6) ||
71
+ !b.options.every((o) => record(o) && str(o.label, 200) && str(o.reply, 500)))
72
+ return null;
73
+ return b;
74
+ default:
75
+ return null;
76
+ }
77
+ }
78
+ export const RICH_ANSWERS_INSTRUCTION = [
79
+ "## Visual answers",
80
+ "Lead with the answer. Use headings, short paragraphs, markdown tables for comparisons, and numbered steps when they help. Keep simple answers simple.",
81
+ "When useful, insert a fenced chat_ui block containing ONE JSON object at the point it belongs. These are the supported shapes:",
82
+ '{"type":"audio","title":"Song sample","src":"/provided-sample.wav","creator":"Creator name","caption":"What to listen for"}',
83
+ '{"type":"gallery","title":"Reference photos","images":[{"src":"/provided-image.jpg","alt":"Describe the image","caption":"What to notice"}]}',
84
+ '{"type":"diagram","title":"How it connects","nodes":[{"id":"a","label":"Input","detail":"Optional explanation"},{"id":"b","label":"Result"}],"edges":[{"from":"a","to":"b","label":"leads to"}]}',
85
+ '{"type":"callout","title":"Recommendation","body":"The useful takeaway."}',
86
+ '{"type":"choices","title":"What would you like next?","options":[{"label":"Explain the first option","reply":"Explain the first option"},{"label":"Compare the alternatives","reply":"Compare the alternatives"}],"submit":"Continue"}',
87
+ "Use at most 6 images, 8 diagram nodes, 16 edges, or 6 choices per block. Translate titles, labels and submit into the reader's language. A choice sends its reply as a normal message; it never performs an action directly. Audio uses explicit playback, never autoplay. Include audio only for URLs actually provided by a person, context or a completed tool result; a track title or a planned generation is not a playable file. Preserve creator attribution and distinguish previews, generated drafts and finished recordings. Never invent media URLs, numbers, sources, tool results or product capabilities. Use only image URLs provided by the person, context or tools; otherwise use a diagram or plain text. Always explain the takeaway in prose too. No HTML, scripts, raw SVG, or decorative images. Preserve domain-specific evidence and authority rules. Put suggested replies last, outside chat_ui blocks.",
88
+ ].join("\n");
89
+ /** Copy, share and voice keep the content of a visual, never its wire JSON. */
90
+ export function richAnswerText(text) {
91
+ return text.replace(/```chat_ui\s*([\s\S]*?)(?:```|$)/g, (_, raw) => {
92
+ const b = parseRichBlock(raw);
93
+ if (!b)
94
+ return "";
95
+ switch (b.type) {
96
+ case "audio":
97
+ return `${b.title}${b.creator ? ` — ${b.creator}` : ""}${b.caption ? `\n${b.caption}` : ""}\n${b.src}`;
98
+ case "callout":
99
+ return `${b.title}\n${b.body}`;
100
+ case "gallery":
101
+ return `${b.title}\n${b.images.map((i) => `${i.alt}${i.caption ? ` — ${i.caption}` : ""}\n${i.src}`).join("\n")}`;
102
+ case "choices":
103
+ return `${b.title}\n${b.options.map((o) => `- ${o.label}`).join("\n")}`;
104
+ case "diagram":
105
+ return `${b.title}\n${b.nodes.map((n) => `${n.label}${n.detail ? `: ${n.detail}` : ""}`).join("\n")}\n${b.edges.map((e) => `${b.nodes.find((n) => n.id === e.from).label} → ${b.nodes.find((n) => n.id === e.to).label}${e.label ? ` (${e.label})` : ""}`).join("\n")}`;
106
+ }
107
+ });
108
+ }
109
+ //# sourceMappingURL=rich.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rich.js","sourceRoot":"","sources":["../src/rich.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"speech.d.ts","sourceRoot":"","sources":["../src/speech.ts"],"names":[],"mappings":"AAUA,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA8B3D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAO,GAAG,MAAM,CAWrE;AAED;0EAC0E;AAC1E,MAAM,MAAM,OAAO,GAAG;IACpB,uEAAuE;IACvE,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,IAAI,IAAI,CAAC;CAChB,CAAC;AAEF,kFAAkF;AAClF,wBAAgB,kBAAkB,IAAI,OAAO,GAAG,IAAI,CAuBnD"}
1
+ {"version":3,"file":"speech.d.ts","sourceRoot":"","sources":["../src/speech.ts"],"names":[],"mappings":"AAWA,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA8B3D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAO,GAAG,MAAM,CAWrE;AAED;0EAC0E;AAC1E,MAAM,MAAM,OAAO,GAAG;IACpB,uEAAuE;IACvE,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,IAAI,IAAI,CAAC;CAChB,CAAC;AAEF,kFAAkF;AAClF,wBAAgB,kBAAkB,IAAI,OAAO,GAAG,IAAI,CAuBnD"}
package/dist/speech.js CHANGED
@@ -6,11 +6,12 @@
6
6
  * From loki's `speech-text`, where the play button under every answer first
7
7
  * lived. Pure, so it is tested without a voice.
8
8
  */
9
+ import { richAnswerText } from "./rich.js";
9
10
  import { extractReplies } from "./replies.js";
10
11
  export function plainTextForSpeech(markdown) {
11
12
  // Suggested replies are buttons, never words: a quick_replies block is
12
13
  // dropped outright rather than announced as "(code)".
13
- const prose = extractReplies(markdown).text;
14
+ const prose = richAnswerText(extractReplies(markdown).text);
14
15
  return (prose
15
16
  // Fenced code is not prose; say that it is there rather than reading it.
16
17
  .replace(/```[\s\S]*?```/g, " (code) ")
@@ -1 +1 @@
1
- {"version":3,"file":"speech.js","sourceRoot":"","sources":["../src/speech.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"speech.js","sourceRoot":"","sources":["../src/speech.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitbaum/chatkit",
3
- "version": "0.10.0",
3
+ "version": "0.12.0",
4
4
  "description": "One chat for every product: a composer with a microphone that always works, a thread that does not fight the reader, messages with copy and retry, and LLM markdown \u2014 the fleet's chat standard as a package.",
5
5
  "license": "MIT",
6
6
  "author": "Cato",
package/styles.css CHANGED
@@ -1325,3 +1325,213 @@ a.ck-source-row:hover .ck-source-title {
1325
1325
  animation: none;
1326
1326
  }
1327
1327
  }
1328
+
1329
+ /* Visual answers share the app's palette, with a quiet editorial hierarchy. */
1330
+ .ck-rich {
1331
+ box-sizing: border-box;
1332
+ min-width: 0;
1333
+ margin: 1.5rem 0;
1334
+ color: var(--ck-fg);
1335
+ overflow-wrap: anywhere;
1336
+ }
1337
+ .ck-rich * {
1338
+ box-sizing: border-box;
1339
+ min-width: 0;
1340
+ }
1341
+ .ck-rich-title {
1342
+ display: block;
1343
+ font-size: 1.05em;
1344
+ font-weight: 650;
1345
+ line-height: 1.4;
1346
+ margin-bottom: 1rem;
1347
+ }
1348
+ .ck-gallery-grid {
1349
+ display: grid;
1350
+ grid-template-columns: repeat(3, minmax(0, 1fr));
1351
+ gap: 0.75rem;
1352
+ }
1353
+ .ck-gallery-grid figure {
1354
+ margin: 0;
1355
+ }
1356
+ .ck-photo {
1357
+ display: flex;
1358
+ flex-direction: column;
1359
+ width: 100%;
1360
+ min-height: var(--ck-target);
1361
+ padding: 0;
1362
+ overflow: hidden;
1363
+ border: 1px solid var(--ck-line);
1364
+ border-radius: var(--ck-radius);
1365
+ background: var(--ck-raised);
1366
+ color: var(--ck-fg);
1367
+ cursor: zoom-in;
1368
+ font: inherit;
1369
+ text-align: start;
1370
+ }
1371
+ .ck-photo img {
1372
+ display: block;
1373
+ width: 100%;
1374
+ aspect-ratio: 1;
1375
+ object-fit: cover;
1376
+ }
1377
+ .ck-photo-label {
1378
+ padding: 0.5rem 0.75rem;
1379
+ font-size: 0.875em;
1380
+ }
1381
+ .ck-gallery-grid figcaption {
1382
+ padding: 0.5rem 0;
1383
+ font-size: 0.875em;
1384
+ color: var(--ck-fg-2);
1385
+ }
1386
+ .ck-photo-full {
1387
+ display: block;
1388
+ max-width: 100%;
1389
+ max-height: 70dvh;
1390
+ object-fit: contain;
1391
+ margin: auto;
1392
+ }
1393
+ .ck-callout {
1394
+ padding: 1.25rem;
1395
+ border-inline-start: 3px solid var(--ck-fg);
1396
+ background: var(--ck-raised);
1397
+ border-radius: 0 var(--ck-radius-sm) var(--ck-radius-sm) 0;
1398
+ }
1399
+ .ck-callout .ck-rich-title {
1400
+ margin-bottom: 0.5rem;
1401
+ }
1402
+ .ck-rich p {
1403
+ margin: 0.25rem 0 0;
1404
+ }
1405
+ .ck-diagram {
1406
+ padding: 1.25rem;
1407
+ border: 1px solid var(--ck-line);
1408
+ border-radius: var(--ck-radius);
1409
+ background: var(--ck-raised);
1410
+ }
1411
+ .ck-md .ck-diagram-nodes {
1412
+ display: grid;
1413
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
1414
+ gap: 0.75rem;
1415
+ padding: 0;
1416
+ list-style: none;
1417
+ margin: 0;
1418
+ }
1419
+ .ck-diagram-nodes li {
1420
+ display: flex;
1421
+ align-items: start;
1422
+ gap: 0.75rem;
1423
+ padding: 1rem;
1424
+ background: var(--ck-bg);
1425
+ border: 1px solid var(--ck-line);
1426
+ border-radius: var(--ck-radius-sm);
1427
+ }
1428
+ .ck-diagram-number {
1429
+ display: grid;
1430
+ place-items: center;
1431
+ flex: 0 0 1.75rem;
1432
+ height: 1.75rem;
1433
+ border-radius: 50%;
1434
+ background: var(--ck-fg);
1435
+ color: var(--ck-bg);
1436
+ font-size: 0.875em;
1437
+ }
1438
+ .ck-diagram-nodes p {
1439
+ font-size: 0.875em;
1440
+ color: var(--ck-fg-2);
1441
+ }
1442
+ .ck-md .ck-diagram-edges {
1443
+ padding: 0.75rem 0 0;
1444
+ margin: 0;
1445
+ list-style: none;
1446
+ }
1447
+ .ck-diagram-edges li {
1448
+ display: flex;
1449
+ align-items: center;
1450
+ gap: 0.5rem;
1451
+ flex-wrap: wrap;
1452
+ border-top: 1px solid var(--ck-line);
1453
+ padding: 0.75rem 0;
1454
+ }
1455
+ .ck-diagram-arrow {
1456
+ color: var(--ck-fg-3);
1457
+ }
1458
+ .ck-diagram-edges small {
1459
+ flex-basis: 100%;
1460
+ color: var(--ck-fg-2);
1461
+ }
1462
+ .ck-choice fieldset {
1463
+ border: 0;
1464
+ margin: 0;
1465
+ padding: 0;
1466
+ }
1467
+ .ck-choice legend {
1468
+ padding: 0;
1469
+ }
1470
+ .ck-choice-option {
1471
+ display: flex;
1472
+ align-items: center;
1473
+ gap: 0.75rem;
1474
+ min-height: var(--ck-target);
1475
+ padding: 0.75rem;
1476
+ border: 1px solid var(--ck-line);
1477
+ border-radius: var(--ck-radius-sm);
1478
+ margin-bottom: 0.5rem;
1479
+ cursor: pointer;
1480
+ }
1481
+ .ck-choice-option:has(:checked) {
1482
+ border-color: var(--ck-fg);
1483
+ background: var(--ck-raised);
1484
+ }
1485
+ .ck-choice-option input {
1486
+ flex: 0 0 auto;
1487
+ width: 1.25rem;
1488
+ height: 1.25rem;
1489
+ accent-color: var(--ck-fg);
1490
+ }
1491
+ .ck-choice-submit {
1492
+ display: flex;
1493
+ justify-content: center;
1494
+ align-items: center;
1495
+ gap: 1rem;
1496
+ width: 100%;
1497
+ min-height: var(--ck-target);
1498
+ border: 0;
1499
+ border-radius: var(--ck-radius);
1500
+ background: var(--ck-fg);
1501
+ color: var(--ck-bg);
1502
+ padding: 0.75rem 1rem;
1503
+ font: inherit;
1504
+ font-weight: 600;
1505
+ cursor: pointer;
1506
+ }
1507
+ .ck-choice-submit:disabled {
1508
+ opacity: 0.45;
1509
+ cursor: default;
1510
+ }
1511
+ .ck-rich button:focus-visible,
1512
+ .ck-rich input:focus-visible {
1513
+ outline: 2px solid var(--ck-fg);
1514
+ outline-offset: 3px;
1515
+ }
1516
+ @media (max-width: 480px) {
1517
+ .ck-gallery-grid {
1518
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1519
+ }
1520
+ }
1521
+
1522
+ .ck-audio audio {
1523
+ display: block;
1524
+ width: 100%;
1525
+ max-width: 100%;
1526
+ margin: 12px 0;
1527
+ }
1528
+ .ck-audio p {
1529
+ margin: 6px 0;
1530
+ color: var(--ck-muted);
1531
+ }
1532
+ .ck-audio a {
1533
+ display: inline-flex;
1534
+ align-items: center;
1535
+ min-height: 44px;
1536
+ overflow-wrap: anywhere;
1537
+ }