@talk2view/sdk 0.22.0 → 0.23.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.
Files changed (48) hide show
  1. package/README.md +24 -16
  2. package/dist/chat/views/settings.d.ts.map +1 -1
  3. package/dist/chat/views/settings.js +15 -13
  4. package/dist/chat/views/settings.js.map +1 -1
  5. package/dist/chat/voice-button.d.ts.map +1 -1
  6. package/dist/chat/voice-button.js +46 -7
  7. package/dist/chat/voice-button.js.map +1 -1
  8. package/dist/chat-css.js +1 -1
  9. package/dist/chat.css +1 -1
  10. package/dist/chat.isolated.css +21 -1
  11. package/dist/chat.raw.css +21 -1
  12. package/dist/constants.d.ts +10 -4
  13. package/dist/constants.d.ts.map +1 -1
  14. package/dist/constants.js +10 -4
  15. package/dist/constants.js.map +1 -1
  16. package/dist/index.d.ts +3 -1
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +4 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/sessions.d.ts +29 -6
  21. package/dist/sessions.d.ts.map +1 -1
  22. package/dist/sessions.js +27 -11
  23. package/dist/sessions.js.map +1 -1
  24. package/dist/types.d.ts +55 -5
  25. package/dist/types.d.ts.map +1 -1
  26. package/dist/version.d.ts +2 -2
  27. package/dist/version.js +1 -1
  28. package/dist/voice-elevenlabs.d.ts +197 -0
  29. package/dist/voice-elevenlabs.d.ts.map +1 -0
  30. package/dist/voice-elevenlabs.js +358 -0
  31. package/dist/voice-elevenlabs.js.map +1 -0
  32. package/dist/voice-facade.js +1 -1
  33. package/dist/voice-facade.js.map +1 -1
  34. package/dist/voice-fence.d.ts +37 -0
  35. package/dist/voice-fence.d.ts.map +1 -0
  36. package/dist/voice-fence.js +44 -0
  37. package/dist/voice-fence.js.map +1 -0
  38. package/dist/voice-turn.d.ts +119 -0
  39. package/dist/voice-turn.d.ts.map +1 -0
  40. package/dist/voice-turn.js +207 -0
  41. package/dist/voice-turn.js.map +1 -0
  42. package/dist/voice.d.ts +131 -8
  43. package/dist/voice.d.ts.map +1 -1
  44. package/dist/voice.js +492 -114
  45. package/dist/voice.js.map +1 -1
  46. package/docs/chat.md +13 -7
  47. package/docs/voice.md +157 -33
  48. package/package.json +2 -1
package/README.md CHANGED
@@ -62,15 +62,16 @@ your Talk2View engine — no fonts, no CDN — and uses your page's font unless
62
62
  pass `fontFamily`. Voice is the exception; see
63
63
  [What loads at runtime](#what-loads-at-runtime).
64
64
 
65
- **It is large: 373.3 KB gzip, excluding React.** A consumer who never imports
65
+ **It is large: 373.9 KB gzip, excluding React.** A consumer who never imports
66
66
  `/chat` pays none of it.
67
67
 
68
68
  **Voice.** For partners with the realtime voice agent enabled, the launcher
69
69
  shows a microphone beside the mark: press to talk, press again to hang up. The
70
- agent uses the same tools, permissions and approval card as the chat. Standalone
71
- it is `<VoiceButton client={t2v} />`; without a UI it is `t2v.voice`. A call
72
- downloads Daily's call engine from `https://c.daily.co`, so a Content Security
73
- Policy has to allow it. See
70
+ agent uses the same tools, permissions and approval card as the chat. A voice
71
+ call runs on the voice model the end-user and the partner chose, Gemini Live or
72
+ ElevenLabs. Standalone it is `<VoiceButton client={t2v} />`; without a UI it is
73
+ `t2v.voice`. Each voice model reaches its own hosts, so a Content Security Policy
74
+ has to allow the ones you offer. See
74
75
  **[`docs/voice.md`](https://github.com/Talk2View/talk2view-typescript/blob/main/docs/voice.md)**.
75
76
 
76
77
  Everything else — the full prop table, theming tokens, the launcher in a hostile
@@ -125,7 +126,7 @@ function App() {
125
126
 
126
127
  That's it. `<Talk2View>` registers your tools and holds the chat state; `<ChatPanel>` is the UI — sign-in, streaming replies, tool calls and approvals. Both come from `@talk2view/sdk/ui`, and `<ChatPanel>` must be inside `<Talk2View>`.
127
128
 
128
- > `/ui` is smaller than the packaged chat (40.9 KB gzip against 373.3, plus
129
+ > `/ui` is smaller than the packaged chat (40.9 KB gzip against 373.9, plus
129
130
  > syntax highlighting loaded on demand) and has no assistant-ui in it, which is
130
131
  > why it is still here.
131
132
 
@@ -218,15 +219,22 @@ you set another.
218
219
  | `/react`, `/assistant-ui` | The engine only. |
219
220
  | `/chat` | The engine only: no fonts, no CDN, no images (an image in a reply becomes a link). Previews of the files an end-user attaches are `blob:` URLs, so a strict `img-src` needs `blob:`. |
220
221
  | `/ui` (deprecated) | The engine, the IBM Plex fonts from Google Fonts (`fonts.googleapis.com`, `fonts.gstatic.com`) and the Talk2View logo from `db.talk2view.com`. Code highlighting compiles WebAssembly, which a strict CSP allows with `'wasm-unsafe-eval'`. |
221
- | Voice: `t2v.voice`, `<VoiceButton>`, the launcher's microphone | The engine, and Daily's call engine from `https://c.daily.co`, which runs through `Function()`. |
222
-
223
- So voice needs `https://c.daily.co` in `connect-src` and `'unsafe-eval'` in
224
- `script-src`. Without either, no call starts. If that download fails, Daily's
225
- library tries to send an error report to Daily's own error tracking (Sentry);
226
- you can leave that blocked. The Pipecat libraries voice runs on come from your
227
- own bundle, loaded on the first press, so a chat that never starts a call never
228
- loads them. The call's audio travels over WebRTC, through the ICE servers the
229
- engine hands out for each call.
222
+ | Voice: `t2v.voice`, `<VoiceButton>`, the launcher's microphone | The engine, and on every call, whichever the voice model, Daily's call engine from `https://c.daily.co`, which runs through `Function()` and starts an audio worklet. Gemini Live adds nothing. ElevenLabs adds `wss://livekit.rtc.elevenlabs.io` and `https://livekit.rtc.elevenlabs.io` only (with a token the engine mints, the client never contacts `api.elevenlabs.io`), and one audio worklet from a `blob:` URL that the call works without. |
223
+
224
+ So every voice call needs `https://c.daily.co` in `connect-src`, and
225
+ `'unsafe-eval'` and `blob:` in `script-src`, an ElevenLabs call included: the
226
+ SDK opens the microphone through Daily's library before the engine has chosen
227
+ the voice model. Without `https://c.daily.co` or `'unsafe-eval'`, no voice call
228
+ starts. If Daily's download fails, its library tries to send an error report to
229
+ Daily's own error tracking (Sentry); you can leave that blocked. A Gemini Live
230
+ call needs nothing more. An ElevenLabs call adds the two ElevenLabs hosts to
231
+ `connect-src`; one that cannot reach them is retried on Gemini Live when the
232
+ app offers it. The voice libraries come from your own bundle, loaded on the
233
+ first call that uses them: a chat that never starts a call never loads them,
234
+ the first voice call loads the Pipecat libraries and Daily's call engine,
235
+ whichever the voice model, and only an ElevenLabs call loads ElevenLabs'. The
236
+ call's audio travels over WebRTC: for Gemini Live through the ICE servers the
237
+ engine hands out for each call, for ElevenLabs through its own LiveKit service.
230
238
  [`docs/voice.md`](https://github.com/Talk2View/talk2view-typescript/blob/main/docs/voice.md)
231
239
  has the rest.
232
240
 
@@ -276,7 +284,7 @@ Tools with `return_direct: true` skip the AI's post-processing step. The tool re
276
284
  There are four React entry points, and they do different jobs:
277
285
 
278
286
  - **`@talk2view/sdk/chat`** — the branded Talk2View chat, packaged: `<Talk2ViewChat>` and `<Talk2ViewChatLauncher>`, one stylesheet, nothing to configure. Start here. See [Chat UI](#chat-ui) above and [`docs/chat.md`](https://github.com/Talk2View/talk2view-typescript/blob/main/docs/chat.md).
279
- - **`@talk2view/sdk/ui`** — the previous chat panel, still supported: `<Talk2View>`, `<ChatPanel>`, `<ChatWidget>` and the components they are built from. 40.9 KB gzip against the packaged chat's 373.3, and no assistant-ui.
287
+ - **`@talk2view/sdk/ui`** — the previous chat panel, still supported: `<Talk2View>`, `<ChatPanel>`, `<ChatWidget>` and the components they are built from. 40.9 KB gzip against the packaged chat's 373.9, and no assistant-ui.
280
288
  - **`@talk2view/sdk/react`** — headless: `<T2VProvider>` and hooks, for building your own UI.
281
289
  - **`@talk2view/sdk/assistant-ui`** — a runtime for [assistant-ui](https://www.assistant-ui.com): render the stock `<Thread />` on Talk2View. See [assistant-ui](#assistant-ui) below.
282
290
 
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../src/chat/views/settings.tsx"],"names":[],"mappings":"AAoDA,wBAAgB,YAAY,4CAqG3B"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../src/chat/views/settings.tsx"],"names":[],"mappings":"AAqDA,wBAAgB,YAAY,4CAsG3B"}
@@ -1,19 +1,20 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  /**
4
- * The Settings view: which AI model answers, which voice model transcribes
5
- * dictation, and which language it should expect. Choices are stored with the
6
- * SDK's own preferences, so they carry between a partner's own UI and this chat,
7
- * and across visits.
4
+ * The Settings view: which AI model answers, which dictation model transcribes
5
+ * what the end-user says, and which language it should expect. (A voice call's
6
+ * voice model, Gemini Live or ElevenLabs, is not chosen here: the end-user sets
7
+ * it on their Profile page.) Choices are stored with the SDK's own preferences,
8
+ * so they carry between a partner's own UI and this chat, and across visits.
8
9
  */
9
10
  import { useEffect, useId, useState } from 'react';
10
11
  import { useUserPreferences } from '../../react/useUserPreferences.js';
11
12
  import { useChatContext } from '../provider.js';
12
13
  import { LAUNCHER_COLOURWAYS, LAUNCHER_COLOURWAY_LABELS, setLauncherColourway, useLauncherColourway, useLauncherOptions, } from '../lib/launcher-variant.js';
13
- /* Offered when the voice model does not restrict its languages (the API sends
14
- no `supported_languages`). */
14
+ /* Offered when the dictation model does not restrict its languages (the API
15
+ sends no `supported_languages`). */
15
16
  const COMMON_LANGUAGES = ['en', 'vi', 'zh', 'ja', 'ko', 'fr', 'de', 'es'];
16
- /* The engine's fallback voice model — DEFAULT_DICTATION_MODEL in the SDK. */
17
+ /* The engine's fallback dictation model — DEFAULT_DICTATION_MODEL in the SDK. */
17
18
  const FALLBACK_STT_MODEL = 'faster-whisper-base';
18
19
  const languageNames = typeof Intl !== 'undefined' && 'DisplayNames' in Intl
19
20
  ? new Intl.DisplayNames(['en'], { type: 'language' })
@@ -27,7 +28,7 @@ const languageName = (code) => {
27
28
  return code;
28
29
  }
29
30
  };
30
- /** The languages to offer for a voice model, A–Z by name. */
31
+ /** The languages to offer for a dictation model, A–Z by name. */
31
32
  const languagesFor = (model) => [...new Set(model?.supported_languages?.length ? model.supported_languages : COMMON_LANGUAGES)]
32
33
  .map((code) => [code, languageName(code)])
33
34
  .sort((x, y) => x[1].localeCompare(y[1]));
@@ -59,16 +60,17 @@ export function SettingsView() {
59
60
  live = false;
60
61
  };
61
62
  }, [client]);
62
- // The voice model actually in use: the visitor's choice, else the partner's
63
- // default, else the engine's. Its languages are the ones worth offering.
63
+ // The dictation model actually in use: the visitor's choice, else the
64
+ // partner's default, else the engine's. Its languages are the ones worth
65
+ // offering.
64
66
  const voiceItems = voices.state === 'ready' ? voices.items : [];
65
67
  const defaultSttId = partnerConfig?.default_stt_model || FALLBACK_STT_MODEL;
66
68
  const activeVoice = voiceItems.find((m) => m.id === (preferences.sttModel || defaultSttId));
67
69
  const languages = languagesFor(activeVoice);
68
70
  const language = preferences.sttLanguage ?? '';
69
71
  const languageOrphan = language !== '' && !languages.some(([code]) => code === language);
70
- const voiceName = activeVoice ? label(activeVoice) : 'the voice model';
71
- return (_jsxs("div", { className: "t2v-chat-settings aui-modal-settings bg-popover absolute inset-0 flex flex-col gap-6 overflow-y-auto p-4 text-sm", children: [_jsx(Picker, { title: "AI model", help: "Answers your next message. Switching keeps this conversation.", value: preferences.model ?? '', onChange: (model) => updatePreferences({ model: model || undefined }), load: models, defaultId: partnerConfig?.default_llm_model }), _jsx(Picker, { title: "Voice model", help: "Transcribes what you say when you use the mic.", value: preferences.sttModel ?? '', onChange: (sttModel) => {
72
+ const voiceName = activeVoice ? label(activeVoice) : 'the dictation model';
73
+ return (_jsxs("div", { className: "t2v-chat-settings aui-modal-settings bg-popover absolute inset-0 flex flex-col gap-6 overflow-y-auto p-4 text-sm", children: [_jsx(Picker, { title: "AI model", help: "Answers your next message. Switching keeps this conversation.", value: preferences.model ?? '', onChange: (model) => updatePreferences({ model: model || undefined }), load: models, defaultId: partnerConfig?.default_llm_model }), _jsx(Picker, { title: "Dictation model", help: "Transcribes what you say when you use the mic.", value: preferences.sttModel ?? '', onChange: (sttModel) => {
72
74
  // A language the new model cannot transcribe goes back to auto-detect.
73
75
  const next = voiceItems.find((m) => m.id === (sttModel || defaultSttId));
74
76
  const keep = !language || languagesFor(next).some(([code]) => code === language);
@@ -80,7 +82,7 @@ export function SettingsView() {
80
82
  ? languages.length === 1
81
83
  ? `${voiceName} transcribes ${languages[0][1]} only.`
82
84
  : `The ${languages.length} languages ${voiceName} can transcribe.`
83
- : 'A hint for the voice model.', children: (id) => (_jsxs("select", { id: id, className: selectClass, value: language, onChange: (e) => updatePreferences({ sttLanguage: e.target.value || undefined }), children: [_jsx("option", { value: "", children: "Detect automatically" }), languageOrphan ? (_jsxs("option", { value: language, children: [languageName(language), " (not supported by ", voiceName, ")"] })) : null, languages.map(([code, name]) => (_jsx("option", { value: code, children: name }, code)))] })) }), launcher.visitorColourway && _jsx(ColourwayField, { fallback: launcher.colourway })] }));
85
+ : 'A hint for the dictation model.', children: (id) => (_jsxs("select", { id: id, className: selectClass, value: language, onChange: (e) => updatePreferences({ sttLanguage: e.target.value || undefined }), children: [_jsx("option", { value: "", children: "Detect automatically" }), languageOrphan ? (_jsxs("option", { value: language, children: [languageName(language), " (not supported by ", voiceName, ")"] })) : null, languages.map(([code, name]) => (_jsx("option", { value: code, children: name }, code)))] })) }), launcher.visitorColourway && _jsx(ColourwayField, { fallback: launcher.colourway })] }));
84
86
  }
85
87
  /** The launcher's colour, when the integrator lets the visitor pick it. */
86
88
  function ColourwayField({ fallback }) {
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/chat/views/settings.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/chat/views/settings.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"voice-button.d.ts","sourceRoot":"","sources":["../../src/chat/voice-button.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAA4C,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AAE1F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,aAAa,EAEb,UAAU,EAGX,MAAM,aAAa,CAAC;AAIrB,OAAO,EAA0B,KAAK,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEnF,MAAM,WAAW,gBAAgB;IAC/B,mEAAmE;IACnE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,+FAA+F;AAC/F,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,IAAI,CAAC,qBAAqB,EAAE,OAAO,CAAC,EAC9C,MAAM,EAAE,aAAa,GAAG,IAAI,GAC3B,OAAO,CAET;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,IAAI,IAAI,CA0B1C;AA2BD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,MAAM,CAG9F;AAYD,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAS5C,CAAC"}
1
+ {"version":3,"file":"voice-button.d.ts","sourceRoot":"","sources":["../../src/chat/voice-button.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAA4C,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AAE1F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,aAAa,EAEb,UAAU,EAGX,MAAM,aAAa,CAAC;AAKrB,OAAO,EAA0B,KAAK,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEnF,MAAM,WAAW,gBAAgB;IAC/B,mEAAmE;IACnE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,+FAA+F;AAC/F,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,IAAI,CAAC,qBAAqB,EAAE,OAAO,CAAC,EAC9C,MAAM,EAAE,aAAa,GAAG,IAAI,GAC3B,OAAO,CAET;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,IAAI,IAAI,CA0B1C;AA6BD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,MAAM,CAG9F;AAcD,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAS5C,CAAC"}
@@ -16,6 +16,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
16
  */
17
17
  import { useCallback, useEffect, useRef, useState } from 'react';
18
18
  import { LoaderCircleIcon, XIcon } from 'lucide-react';
19
+ import { VOICE_PREFERENCE_URL } from '../constants.js';
19
20
  import { ApprovalCard } from '../ui/components/ApprovalCard.js';
20
21
  import { BrandWaveform } from './composer-extras.js';
21
22
  import { cn } from './lib/cn.js';
@@ -67,6 +68,8 @@ const ERROR_MESSAGES = {
67
68
  insufficient_credit: 'You’re out of credits. Upgrade your plan to keep going.',
68
69
  credit_check_unavailable: 'Couldn’t check your credit just now. Try again shortly.',
69
70
  service_unconfigured: 'Voice isn’t available right now.',
71
+ // No voice model this app allows can take the call (the engine's rule).
72
+ voice_model_unavailable: 'Voice isn’t available right now.',
70
73
  service_unavailable: 'Voice isn’t available right now. Try again shortly.',
71
74
  voice_at_capacity: 'Voice is busy right now. Try again shortly.',
72
75
  voice_ticket_invalid: 'The call took too long to connect. Try again.',
@@ -90,6 +93,8 @@ const ENDED_MESSAGES = {
90
93
  };
91
94
  /** How long the "call ended" note stays up. An error stays until it is dismissed or a new call starts. */
92
95
  const ENDED_NOTE_MS = 4000;
96
+ /** How long the engine's note on the voice model stays up once the call is live. */
97
+ const NOTE_MS = 6000;
93
98
  export const VoiceButton = (props) => {
94
99
  const ctx = useOptionalChatContext();
95
100
  const client = props.client ?? ctx?.client;
@@ -112,9 +117,15 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
112
117
  const [approval, setApproval] = useState(null);
113
118
  const [working, setWorking] = useState(false);
114
119
  const [endedNote, setEndedNote] = useState(null);
120
+ // The engine's note on the voice model the call runs on ("Using Gemini Live —
121
+ // …"), shown at the start of the call.
122
+ const [note, setNote] = useState(null);
123
+ // What an ElevenLabs agent opens the call with; null on a Gemini Live call.
124
+ const [greeting, setGreeting] = useState(null);
115
125
  // Whether the end-user has spoken on this call. Until they do, the popover
116
- // says "Say hello!": the bot does not greet, so a first-time user otherwise sits
117
- // in silence not knowing the call is waiting on them.
126
+ // says "Say hello!" (or shows the agent's greeting): a Gemini Live bot does
127
+ // not greet, so a first-time user otherwise sits in silence not knowing the
128
+ // call is waiting on them.
118
129
  const [heard, setHeard] = useState(false);
119
130
  // Read by the listeners, so changing the prop does not re-subscribe.
120
131
  const earconRef = useRef(earcon);
@@ -131,12 +142,23 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
131
142
  setError(null);
132
143
  setEndedNote(null);
133
144
  }
134
- if (next === 'connecting')
145
+ if (next === 'connecting') {
135
146
  setHeard(false);
147
+ setGreeting(null);
148
+ }
149
+ if (next === 'ended' || next === 'error')
150
+ setNote(null);
136
151
  if (next === 'listening' && earconRef.current)
137
152
  playListeningEarcon();
138
153
  }),
139
- voice.on('error', setError),
154
+ voice.on('error', (failure) => {
155
+ setError(failure);
156
+ // The note is sent before the token, the microphone and the connect, so
157
+ // a start that then fails must not go on showing it beside the error.
158
+ setNote(null);
159
+ }),
160
+ voice.on('note', setNote),
161
+ voice.on('callStarted', (call) => setGreeting(call.greeting)),
140
162
  voice.on('approvalChange', setApproval),
141
163
  voice.on('agentState', (agent) => {
142
164
  setWorking(agent === 'working');
@@ -163,7 +185,20 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
163
185
  const timer = setTimeout(() => setEndedNote(null), ENDED_NOTE_MS);
164
186
  return () => clearTimeout(timer);
165
187
  }, [endedNote]);
188
+ // The note is for the start of the call. It stays up through connecting (the
189
+ // microphone prompt and the connection can be slow), then goes NOTE_MS after
190
+ // the call is live.
191
+ useEffect(() => {
192
+ if (!note || state !== 'listening')
193
+ return;
194
+ const timer = setTimeout(() => setNote(null), NOTE_MS);
195
+ return () => clearTimeout(timer);
196
+ }, [note, state]);
166
197
  const on = state === 'connecting' || state === 'listening';
198
+ // While a voice call is on: an anonymous user has an account to make first,
199
+ // and a signed-out visitor has none, so only a signed-in end-user is sent to
200
+ // their Profile to change the voice.
201
+ const showChangeVoice = on && client.auth?.isAuthenticated?.() === true && client.auth?.isAnonymous?.() !== true;
167
202
  const toggle = useCallback(() => {
168
203
  if (voice.state === 'connecting' || voice.state === 'listening') {
169
204
  void voice.stop();
@@ -175,6 +210,8 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
175
210
  });
176
211
  }, [voice, chat]);
177
212
  const preload = useCallback(() => voice.preload(), [voice]);
213
+ // The call is live and waiting on the end-user to speak first.
214
+ const waiting = state === 'listening' && !working && !heard;
178
215
  const status = state === 'connecting'
179
216
  ? 'Connecting…'
180
217
  : state === 'listening'
@@ -182,7 +219,7 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
182
219
  ? 'Working…'
183
220
  : heard
184
221
  ? 'Listening'
185
- : 'Say hello!'
222
+ : greeting || 'Say hello!'
186
223
  : state === 'ended' && !error
187
224
  ? endedNote
188
225
  : null;
@@ -191,9 +228,11 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
191
228
  _jsx(BrandWaveform, { mode: working ? 'busy' : 'live', className: "h-[20px] w-[22px]" })) : (
192
229
  // The dictation mark at rest, the same face the composer's dictate button wears.
193
230
  _jsx(BrandWaveform, { mode: "rest", className: "h-[20px] w-[22px]" }));
194
- return (_jsxs("div", { className: cn('t2v-voice', standalone && 't2v-chat', className), "data-on": on ? '' : undefined, children: [error || approval || status ? (_jsxs("div", { className: "t2v-voice-popover", children: [error ? (_jsxs("div", { role: "alert", className: "t2v-voice-error", children: [_jsx("span", { children: voiceErrorMessage(error, { anonymous: client.auth?.isAnonymous?.() ?? false }) }), _jsx("button", { type: "button", className: "t2v-voice-dismiss", "aria-label": "Dismiss", onClick: () => setError(null), children: _jsx(XIcon, { className: "size-4", "aria-hidden": "true" }) })] })) : null, approval ? (_jsx("div", { className: "t2v-voice-approval", children: _jsx(ApprovalCard
231
+ return (_jsxs("div", { className: cn('t2v-voice', standalone && 't2v-chat', className), "data-on": on ? '' : undefined, children: [error || approval || status || note ? (_jsxs("div", { className: "t2v-voice-popover", children: [error ? (_jsxs("div", { role: "alert", className: "t2v-voice-error", children: [_jsx("span", { children: voiceErrorMessage(error, { anonymous: client.auth?.isAnonymous?.() ?? false }) }), _jsx("button", { type: "button", className: "t2v-voice-dismiss", "aria-label": "Dismiss", onClick: () => setError(null), children: _jsx(XIcon, { className: "size-4", "aria-hidden": "true" }) })] })) : null, approval ? (_jsx("div", { className: "t2v-voice-approval", children: _jsx(ApprovalCard
195
232
  // A new card per call: a half-edited argument must not carry over.
196
- , { toolName: approval.toolName, toolCallId: approval.toolCallId, args: approval.arguments, description: approval.description, onDecision: (decision) => approval.decide(decision) }, approval.toolCallId) })) : null, status && !error ? (_jsx("div", { "aria-hidden": "true", className: "t2v-voice-status", "data-hint": status === 'Say hello!' ? '' : undefined, children: status })) : null] })) : null, _jsx("span", { role: "status", className: "t2v-voice-sr", children: error ? '' : (status ?? '') }), _jsx("button", { type: "button", className: "t2v-voice-button", onClick: toggle,
233
+ , { toolName: approval.toolName, toolCallId: approval.toolCallId, args: approval.arguments, description: approval.description, onDecision: (decision) => approval.decide(decision) }, approval.toolCallId) })) : null, note ? (
234
+ // Hidden from screen readers, like the status: the note's live region below reads it out.
235
+ _jsx("div", { "aria-hidden": "true", className: "t2v-voice-note", children: note })) : null, status && !error ? (_jsx("div", { "aria-hidden": "true", className: "t2v-voice-status", "data-hint": waiting ? '' : undefined, "data-greeting": waiting && greeting ? '' : undefined, children: status })) : null, showChangeVoice ? (_jsx("a", { className: "t2v-voice-change", href: VOICE_PREFERENCE_URL, target: "_blank", rel: "noopener noreferrer", children: "Change voice" })) : null] })) : null, _jsx("span", { role: "status", className: "t2v-voice-sr", children: error ? '' : (status ?? '') }), _jsx("span", { role: "status", className: "t2v-voice-sr", children: note ?? '' }), _jsx("button", { type: "button", className: "t2v-voice-button", onClick: toggle,
197
236
  // Fetch the voice code while the pointer is on its way to a click.
198
237
  onPointerEnter: preload, onFocus: preload, "aria-label": label, title: on ? 'End the call' : label, "aria-pressed": on, "aria-busy": state === 'connecting' || undefined, "data-state": state, "data-busy": working ? 'true' : undefined, children: icon })] }));
199
238
  };
@@ -1 +1 @@
1
- {"version":3,"file":"voice-button.js","sourceRoot":"","sources":["../../src/chat/voice-button.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"voice-button.js","sourceRoot":"","sources":["../../src/chat/voice-button.tsx"],"names":[],"mappings":"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"}