@burdenoff/website-sdk 2026.1102.3 → 2026.1104.1

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.
@@ -1,4 +1,4 @@
1
1
  import 'react';
2
- export { a as EXPLORE_PREFILL_MAX_LENGTH, e as ExplorePage, f as ExplorePageProps, m as ExploreProvenance, n as ExploreReferenceKind, g as answerPlainText, h as answerSpeechText, i as exploreQuestionHref, j as inlineImageOrigins, k as isInlineImageAllowed, l as isInlineVideoAllowed, o as logoUrlOf, q as productNamesByOrigin, r as referenceKindOf, s as summariseReferences } from '../explore-DaSNdm4O.mjs';
2
+ export { a as EXPLORE_PREFILL_MAX_LENGTH, e as ExplorePage, f as ExplorePageProps, m as ExploreProvenance, n as ExploreReferenceKind, g as answerPlainText, h as answerSpeechText, i as exploreQuestionHref, j as inlineImageOrigins, k as isInlineImageAllowed, l as isInlineVideoAllowed, o as logoUrlOf, q as productNamesByOrigin, r as referenceKindOf, s as summariseReferences } from '../explore-BgEeGPvY.mjs';
3
3
  import '../explore-types-Ol1Mm3dW.mjs';
4
4
  import 'react-markdown';
@@ -1,4 +1,4 @@
1
1
  import 'react';
2
- export { a as EXPLORE_PREFILL_MAX_LENGTH, e as ExplorePage, f as ExplorePageProps, m as ExploreProvenance, n as ExploreReferenceKind, g as answerPlainText, h as answerSpeechText, i as exploreQuestionHref, j as inlineImageOrigins, k as isInlineImageAllowed, l as isInlineVideoAllowed, o as logoUrlOf, q as productNamesByOrigin, r as referenceKindOf, s as summariseReferences } from '../explore-DtSPdlEy.js';
2
+ export { a as EXPLORE_PREFILL_MAX_LENGTH, e as ExplorePage, f as ExplorePageProps, m as ExploreProvenance, n as ExploreReferenceKind, g as answerPlainText, h as answerSpeechText, i as exploreQuestionHref, j as inlineImageOrigins, k as isInlineImageAllowed, l as isInlineVideoAllowed, o as logoUrlOf, q as productNamesByOrigin, r as referenceKindOf, s as summariseReferences } from '../explore-BV4dRwoC.js';
3
3
  import '../explore-types-Ol1Mm3dW.js';
4
4
  import 'react-markdown';
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkDZLUZKOX_js = require('../chunk-DZLUZKOX.js');
3
+ var chunk22OT6E26_js = require('../chunk-22OT6E26.js');
4
4
  require('../chunk-O4GS3XPZ.js');
5
5
  require('../chunk-P5GMVPR6.js');
6
6
  require('../chunk-PHXAGQNB.js');
@@ -18,51 +18,51 @@ require('../chunk-ZSTFX7FV.js');
18
18
 
19
19
  Object.defineProperty(exports, "EXPLORE_PREFILL_MAX_LENGTH", {
20
20
  enumerable: true,
21
- get: function () { return chunkDZLUZKOX_js.EXPLORE_PREFILL_MAX_LENGTH; }
21
+ get: function () { return chunk22OT6E26_js.EXPLORE_PREFILL_MAX_LENGTH; }
22
22
  });
23
23
  Object.defineProperty(exports, "ExplorePage", {
24
24
  enumerable: true,
25
- get: function () { return chunkDZLUZKOX_js.ExplorePage; }
25
+ get: function () { return chunk22OT6E26_js.ExplorePage; }
26
26
  });
27
27
  Object.defineProperty(exports, "answerPlainText", {
28
28
  enumerable: true,
29
- get: function () { return chunkDZLUZKOX_js.answerPlainText; }
29
+ get: function () { return chunk22OT6E26_js.answerPlainText; }
30
30
  });
31
31
  Object.defineProperty(exports, "answerSpeechText", {
32
32
  enumerable: true,
33
- get: function () { return chunkDZLUZKOX_js.answerSpeechText; }
33
+ get: function () { return chunk22OT6E26_js.answerSpeechText; }
34
34
  });
35
35
  Object.defineProperty(exports, "exploreQuestionHref", {
36
36
  enumerable: true,
37
- get: function () { return chunkDZLUZKOX_js.exploreQuestionHref; }
37
+ get: function () { return chunk22OT6E26_js.exploreQuestionHref; }
38
38
  });
39
39
  Object.defineProperty(exports, "inlineImageOrigins", {
40
40
  enumerable: true,
41
- get: function () { return chunkDZLUZKOX_js.inlineImageOrigins; }
41
+ get: function () { return chunk22OT6E26_js.inlineImageOrigins; }
42
42
  });
43
43
  Object.defineProperty(exports, "isInlineImageAllowed", {
44
44
  enumerable: true,
45
- get: function () { return chunkDZLUZKOX_js.isInlineImageAllowed; }
45
+ get: function () { return chunk22OT6E26_js.isInlineImageAllowed; }
46
46
  });
47
47
  Object.defineProperty(exports, "isInlineVideoAllowed", {
48
48
  enumerable: true,
49
- get: function () { return chunkDZLUZKOX_js.isInlineVideoAllowed; }
49
+ get: function () { return chunk22OT6E26_js.isInlineVideoAllowed; }
50
50
  });
51
51
  Object.defineProperty(exports, "logoUrlOf", {
52
52
  enumerable: true,
53
- get: function () { return chunkDZLUZKOX_js.logoUrlOf; }
53
+ get: function () { return chunk22OT6E26_js.logoUrlOf; }
54
54
  });
55
55
  Object.defineProperty(exports, "productNamesByOrigin", {
56
56
  enumerable: true,
57
- get: function () { return chunkDZLUZKOX_js.productNamesByOrigin; }
57
+ get: function () { return chunk22OT6E26_js.productNamesByOrigin; }
58
58
  });
59
59
  Object.defineProperty(exports, "referenceKindOf", {
60
60
  enumerable: true,
61
- get: function () { return chunkDZLUZKOX_js.referenceKindOf; }
61
+ get: function () { return chunk22OT6E26_js.referenceKindOf; }
62
62
  });
63
63
  Object.defineProperty(exports, "summariseReferences", {
64
64
  enumerable: true,
65
- get: function () { return chunkDZLUZKOX_js.summariseReferences; }
65
+ get: function () { return chunk22OT6E26_js.summariseReferences; }
66
66
  });
67
67
  //# sourceMappingURL=explore.js.map
68
68
  //# sourceMappingURL=explore.js.map
@@ -1,4 +1,4 @@
1
- export { EXPLORE_PREFILL_MAX_LENGTH, ExplorePage, answerPlainText, answerSpeechText, exploreQuestionHref, inlineImageOrigins, isInlineImageAllowed, isInlineVideoAllowed, logoUrlOf, productNamesByOrigin, referenceKindOf, summariseReferences } from '../chunk-ZWEEBHXJ.mjs';
1
+ export { EXPLORE_PREFILL_MAX_LENGTH, ExplorePage, answerPlainText, answerSpeechText, exploreQuestionHref, inlineImageOrigins, isInlineImageAllowed, isInlineVideoAllowed, logoUrlOf, productNamesByOrigin, referenceKindOf, summariseReferences } from '../chunk-5JQGE3XI.mjs';
2
2
  import '../chunk-TT3MHN42.mjs';
3
3
  import '../chunk-SMD7MEEA.mjs';
4
4
  import '../chunk-SKIYDKIS.mjs';
@@ -259,6 +259,13 @@ interface ExplorePageProps {
259
259
  * Avatar tab: dictation and read-aloud stop then, and the conversation itself is untouched.
260
260
  */
261
261
  active?: boolean;
262
+ /**
263
+ * BOFF-9797. Set by `ExplorePanel` while its live avatar's voice is the page's (a session being created, joined or
264
+ * played): the avatar's own status line, else null (the default). Chat's read-aloud and dictation are held then, so
265
+ * the page never speaks in two voices and the microphone never takes down the avatar's: a reading under way stops, and
266
+ * both controls stay where they are, `aria-disabled`, with this line as their title, until the session ends.
267
+ */
268
+ voiceHold?: string | null;
262
269
  /** BOFF-9697. The site's Explore route, for share links made from the panel. Default `/explore`. */
263
270
  explorePath?: string;
264
271
  /**
@@ -259,6 +259,13 @@ interface ExplorePageProps {
259
259
  * Avatar tab: dictation and read-aloud stop then, and the conversation itself is untouched.
260
260
  */
261
261
  active?: boolean;
262
+ /**
263
+ * BOFF-9797. Set by `ExplorePanel` while its live avatar's voice is the page's (a session being created, joined or
264
+ * played): the avatar's own status line, else null (the default). Chat's read-aloud and dictation are held then, so
265
+ * the page never speaks in two voices and the microphone never takes down the avatar's: a reading under way stops, and
266
+ * both controls stay where they are, `aria-disabled`, with this line as their title, until the session ends.
267
+ */
268
+ voiceHold?: string | null;
262
269
  /** BOFF-9697. The site's Explore route, for share links made from the panel. Default `/explore`. */
263
270
  explorePath?: string;
264
271
  /**
package/dist/index.d.mts CHANGED
@@ -20,8 +20,8 @@ export { DetectedPlatform, ElectronDownloadLink, ElectronDownloadLinkProps, dete
20
20
  import { Components } from 'react-markdown';
21
21
  import { a as ExploreLocale, E as ExplorePanelAvatarLive } from './explore-avatar-live-config-N4WhJzgS.mjs';
22
22
  export { b as EXPLORE_LOCALES, c as ExploreStrings, s as speechLocaleOf } from './explore-avatar-live-config-N4WhJzgS.mjs';
23
- import { A as AnswerRendererStrings, E as ExploreScope } from './explore-DaSNdm4O.mjs';
24
- export { a as EXPLORE_PREFILL_MAX_LENGTH, b as ExploreAnswerBody, c as ExploreAnswerBodyProps, d as ExploreAnswerStyles, e as ExplorePage, f as ExplorePageProps, g as answerPlainText, h as answerSpeechText, i as exploreQuestionHref, j as inlineImageOrigins, k as isInlineImageAllowed, l as isInlineVideoAllowed, p as productSlugsByOrigin } from './explore-DaSNdm4O.mjs';
23
+ import { A as AnswerRendererStrings, E as ExploreScope } from './explore-BgEeGPvY.mjs';
24
+ export { a as EXPLORE_PREFILL_MAX_LENGTH, b as ExploreAnswerBody, c as ExploreAnswerBodyProps, d as ExploreAnswerStyles, e as ExplorePage, f as ExplorePageProps, g as answerPlainText, h as answerSpeechText, i as exploreQuestionHref, j as inlineImageOrigins, k as isInlineImageAllowed, l as isInlineVideoAllowed, p as productSlugsByOrigin } from './explore-BgEeGPvY.mjs';
25
25
  export { ExploreCta, ExploreCtaProps } from './components/explore-cta.mjs';
26
26
  import { h as UseExploreChatResult, S as StagedAttachment } from './use-explore-chat-CbfohA9O.mjs';
27
27
  export { D as DEFAULT_EXPLORE_EXAMPLE_PROMPTS, E as ExploreChatError, a as ExploreChatErrorKind, b as ExploreChatPhase, c as ExploreEscalateOutcome, d as ExploreEscalateResult, e as ExploreResent, f as ExploreSendOptions, g as ExploreSent, F as FALLBACK_EXPLORE_LIMITS, U as UseExploreChatOptions, i as classifyExploreError, u as useExploreChat } from './use-explore-chat-CbfohA9O.mjs';
@@ -854,7 +854,7 @@ declare function websiteAvatarLive({ deployEnv, siteKey, site, manifestVersion,
854
854
 
855
855
  declare const buttonVariants: (props?: ({
856
856
  variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
857
- size?: "default" | "sm" | "lg" | "icon" | null | undefined;
857
+ size?: "icon" | "default" | "sm" | "lg" | null | undefined;
858
858
  } & class_variance_authority_types.ClassProp) | undefined) => string;
859
859
  interface ButtonProps extends react.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
860
860
  asChild?: boolean;
package/dist/index.d.ts CHANGED
@@ -20,8 +20,8 @@ export { DetectedPlatform, ElectronDownloadLink, ElectronDownloadLinkProps, dete
20
20
  import { Components } from 'react-markdown';
21
21
  import { a as ExploreLocale, E as ExplorePanelAvatarLive } from './explore-avatar-live-config-CAfN5eAX.js';
22
22
  export { b as EXPLORE_LOCALES, c as ExploreStrings, s as speechLocaleOf } from './explore-avatar-live-config-CAfN5eAX.js';
23
- import { A as AnswerRendererStrings, E as ExploreScope } from './explore-DtSPdlEy.js';
24
- export { a as EXPLORE_PREFILL_MAX_LENGTH, b as ExploreAnswerBody, c as ExploreAnswerBodyProps, d as ExploreAnswerStyles, e as ExplorePage, f as ExplorePageProps, g as answerPlainText, h as answerSpeechText, i as exploreQuestionHref, j as inlineImageOrigins, k as isInlineImageAllowed, l as isInlineVideoAllowed, p as productSlugsByOrigin } from './explore-DtSPdlEy.js';
23
+ import { A as AnswerRendererStrings, E as ExploreScope } from './explore-BV4dRwoC.js';
24
+ export { a as EXPLORE_PREFILL_MAX_LENGTH, b as ExploreAnswerBody, c as ExploreAnswerBodyProps, d as ExploreAnswerStyles, e as ExplorePage, f as ExplorePageProps, g as answerPlainText, h as answerSpeechText, i as exploreQuestionHref, j as inlineImageOrigins, k as isInlineImageAllowed, l as isInlineVideoAllowed, p as productSlugsByOrigin } from './explore-BV4dRwoC.js';
25
25
  export { ExploreCta, ExploreCtaProps } from './components/explore-cta.js';
26
26
  import { h as UseExploreChatResult, S as StagedAttachment } from './use-explore-chat-B3dOOvJN.js';
27
27
  export { D as DEFAULT_EXPLORE_EXAMPLE_PROMPTS, E as ExploreChatError, a as ExploreChatErrorKind, b as ExploreChatPhase, c as ExploreEscalateOutcome, d as ExploreEscalateResult, e as ExploreResent, f as ExploreSendOptions, g as ExploreSent, F as FALLBACK_EXPLORE_LIMITS, U as UseExploreChatOptions, i as classifyExploreError, u as useExploreChat } from './use-explore-chat-B3dOOvJN.js';
@@ -854,7 +854,7 @@ declare function websiteAvatarLive({ deployEnv, siteKey, site, manifestVersion,
854
854
 
855
855
  declare const buttonVariants: (props?: ({
856
856
  variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
857
- size?: "default" | "sm" | "lg" | "icon" | null | undefined;
857
+ size?: "icon" | "default" | "sm" | "lg" | null | undefined;
858
858
  } & class_variance_authority_types.ClassProp) | undefined) => string;
859
859
  interface ButtonProps extends react.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
860
860
  asChild?: boolean;
package/dist/index.js CHANGED
@@ -16,7 +16,7 @@ var chunkAA33WDYS_js = require('./chunk-AA33WDYS.js');
16
16
  var chunk45GCA4GG_js = require('./chunk-45GCA4GG.js');
17
17
  var chunkW6P3YETJ_js = require('./chunk-W6P3YETJ.js');
18
18
  var chunkT7JIPZAC_js = require('./chunk-T7JIPZAC.js');
19
- var chunkDZLUZKOX_js = require('./chunk-DZLUZKOX.js');
19
+ var chunk22OT6E26_js = require('./chunk-22OT6E26.js');
20
20
  var chunkO4GS3XPZ_js = require('./chunk-O4GS3XPZ.js');
21
21
  var chunkP5GMVPR6_js = require('./chunk-P5GMVPR6.js');
22
22
  var chunkPHXAGQNB_js = require('./chunk-PHXAGQNB.js');
@@ -2320,7 +2320,7 @@ var CHROME = {
2320
2320
  };
2321
2321
  function answerStrings(locale) {
2322
2322
  const chrome = CHROME[locale] ?? EN;
2323
- const explore = chunkDZLUZKOX_js.exploreStrings(locale);
2323
+ const explore = chunk22OT6E26_js.exploreStrings(locale);
2324
2324
  return {
2325
2325
  ...chrome,
2326
2326
  answerTable: explore.answerTable,
@@ -2509,8 +2509,8 @@ var ECOSYSTEM_SITES = chunkP5GMVPR6_js.ECOSYSTEM_PRODUCTS.map((product) => ({
2509
2509
  slug: product.slug,
2510
2510
  website: product.websiteUrl
2511
2511
  }));
2512
- var ECOSYSTEM_PRODUCT_SLUGS = chunkDZLUZKOX_js.productSlugsByOrigin(ECOSYSTEM_SITES);
2513
- var ECOSYSTEM_ORIGINS = chunkDZLUZKOX_js.inlineImageOrigins(ECOSYSTEM_SITES);
2512
+ var ECOSYSTEM_PRODUCT_SLUGS = chunk22OT6E26_js.productSlugsByOrigin(ECOSYSTEM_SITES);
2513
+ var ECOSYSTEM_ORIGINS = chunk22OT6E26_js.inlineImageOrigins(ECOSYSTEM_SITES);
2514
2514
  function DefaultAnswerLink({
2515
2515
  href,
2516
2516
  className,
@@ -2604,9 +2604,9 @@ function AnswersPage({
2604
2604
  const Link = linkComponent ?? DefaultAnswerLink;
2605
2605
  const base = normaliseSiteUrl2(siteUrl);
2606
2606
  const searchId = react.useId();
2607
- const activeLocale = react.useMemo(() => chunkDZLUZKOX_js.resolveExploreLocale(locale), [locale]);
2607
+ const activeLocale = react.useMemo(() => chunk22OT6E26_js.resolveExploreLocale(locale), [locale]);
2608
2608
  const T = react.useMemo(() => answerStrings(activeLocale), [activeLocale]);
2609
- const rtl = chunkDZLUZKOX_js.isRtlLocale(activeLocale);
2609
+ const rtl = chunk22OT6E26_js.isRtlLocale(activeLocale);
2610
2610
  const ordered = react.useMemo(() => sortByOrder2(answers), [answers]);
2611
2611
  const groups = react.useMemo(
2612
2612
  () => groupByTopic(ordered, topics),
@@ -2970,9 +2970,9 @@ function AnswerDetail({
2970
2970
  const Link = linkComponent ?? DefaultAnswerLink;
2971
2971
  const base = normaliseSiteUrl2(siteUrl);
2972
2972
  const headingId = react.useId();
2973
- const activeLocale = react.useMemo(() => chunkDZLUZKOX_js.resolveExploreLocale(locale), [locale]);
2973
+ const activeLocale = react.useMemo(() => chunk22OT6E26_js.resolveExploreLocale(locale), [locale]);
2974
2974
  const T = react.useMemo(() => answerStrings(activeLocale), [activeLocale]);
2975
- const rtl = chunkDZLUZKOX_js.isRtlLocale(activeLocale);
2975
+ const rtl = chunk22OT6E26_js.isRtlLocale(activeLocale);
2976
2976
  const dateLabel = react.useMemo(
2977
2977
  () => formatAnswerDate(answer.answeredAt, activeLocale),
2978
2978
  [answer.answeredAt, activeLocale]
@@ -3002,7 +3002,7 @@ function AnswerDetail({
3002
3002
  [answer.sources]
3003
3003
  );
3004
3004
  const answerImageOrigins = react.useMemo(
3005
- () => chunkDZLUZKOX_js.inlineImageOrigins([
3005
+ () => chunk22OT6E26_js.inlineImageOrigins([
3006
3006
  { website: base },
3007
3007
  ...sources.map((source) => ({ website: source.url })),
3008
3008
  ...(imageOrigins ?? []).map((origin) => ({ website: origin }))
@@ -3015,7 +3015,7 @@ function AnswerDetail({
3015
3015
  );
3016
3016
  const canonical = absoluteUrl2(base, answerPath(answer.slug));
3017
3017
  const answerText = react.useMemo(
3018
- () => chunkDZLUZKOX_js.answerSpeechText(answer.answer),
3018
+ () => chunk22OT6E26_js.answerSpeechText(answer.answer),
3019
3019
  [answer.answer]
3020
3020
  );
3021
3021
  const structuredData = react.useMemo(
@@ -3100,7 +3100,7 @@ function AnswerDetail({
3100
3100
  }
3101
3101
  ),
3102
3102
  /* @__PURE__ */ jsxRuntime.jsx(chunk3LFFY7AZ_js.ProseStyles, {}),
3103
- /* @__PURE__ */ jsxRuntime.jsx(chunkDZLUZKOX_js.ExploreAnswerStyles, {}),
3103
+ /* @__PURE__ */ jsxRuntime.jsx(chunk22OT6E26_js.ExploreAnswerStyles, {}),
3104
3104
  /* @__PURE__ */ jsxRuntime.jsx("header", { className: "border-b border-border bg-muted/30", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mx-auto max-w-4xl px-4 pb-10 pt-8 sm:px-6 lg:px-8", children: [
3105
3105
  /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Breadcrumb", children: /* @__PURE__ */ jsxRuntime.jsxs("ol", { className: "flex flex-wrap items-center gap-1.5 text-sm text-muted-foreground", children: [
3106
3106
  /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "inline-flex items-center gap-1.5", children: [
@@ -3170,7 +3170,7 @@ function AnswerDetail({
3170
3170
  /* @__PURE__ */ jsxRuntime.jsxs("section", { "aria-labelledby": `${headingId}-answer`, children: [
3171
3171
  /* @__PURE__ */ jsxRuntime.jsx("h2", { id: `${headingId}-answer`, className: SECTION_HEADING2, children: T.answerHeading }),
3172
3172
  /* @__PURE__ */ jsxRuntime.jsx("div", { "data-answers": "body", ...ENGLISH_TEXT, dir: "ltr", children: /* @__PURE__ */ jsxRuntime.jsx(
3173
- chunkDZLUZKOX_js.ExploreAnswerBody,
3173
+ chunk22OT6E26_js.ExploreAnswerBody,
3174
3174
  {
3175
3175
  strings: T,
3176
3176
  imageOrigins: answerImageOrigins,
@@ -3330,10 +3330,10 @@ var VIEW_LOAD_TIMEOUT_MS = 8e3;
3330
3330
  var NO_PROMPTS = [];
3331
3331
  function suggestedQuestions(catalog, examplePrompts, pinnedSlug) {
3332
3332
  if (catalog === void 0) return NO_PROMPTS;
3333
- return pinnedSlug === null ? catalog.examplePrompts : chunkDZLUZKOX_js.productScopedPrompts(
3333
+ return pinnedSlug === null ? catalog.examplePrompts : chunk22OT6E26_js.productScopedPrompts(
3334
3334
  examplePrompts,
3335
3335
  catalog.examplePrompts,
3336
- chunkDZLUZKOX_js.anotherProductMatcher(catalog.products, pinnedSlug)
3336
+ chunk22OT6E26_js.anotherProductMatcher(catalog.products, pinnedSlug)
3337
3337
  );
3338
3338
  }
3339
3339
  function loadAvatarLiveView() {
@@ -3344,20 +3344,22 @@ function loadAvatarLiveView() {
3344
3344
  function ExploreAvatarLive({
3345
3345
  live,
3346
3346
  active,
3347
+ open = active,
3347
3348
  locale,
3348
3349
  productName,
3349
3350
  still,
3350
3351
  fallback,
3351
3352
  onContinueInChat,
3353
+ onVoiceHold,
3352
3354
  examplePrompts,
3353
3355
  pinnedSlug = null,
3354
3356
  touchFirst = false,
3355
3357
  currentPath,
3356
3358
  loadView = loadAvatarLiveView
3357
3359
  }) {
3358
- const T = chunkDZLUZKOX_js.exploreStrings(locale);
3360
+ const T = chunk22OT6E26_js.exploreStrings(locale);
3359
3361
  const config = chunkJXLSTVBK_js.useWebSDKConfig();
3360
- const conversation = react.useContext(chunkDZLUZKOX_js.ExploreConversationContext);
3362
+ const conversation = react.useContext(chunk22OT6E26_js.ExploreConversationContext);
3361
3363
  const catalog = conversation?.catalog;
3362
3364
  const prompts = react.useMemo(
3363
3365
  () => suggestedQuestions(catalog, examplePrompts, pinnedSlug),
@@ -3412,11 +3414,13 @@ function ExploreAvatarLive({
3412
3414
  {
3413
3415
  live,
3414
3416
  active,
3417
+ open,
3415
3418
  locale,
3416
3419
  productName,
3417
3420
  still,
3418
3421
  fallback,
3419
3422
  onContinueInChat,
3423
+ onVoiceHold,
3420
3424
  continueInChat: T.continueInChat,
3421
3425
  newChat: T.newChat,
3422
3426
  send: T.send,
@@ -3663,13 +3667,13 @@ function ExplorePanel({
3663
3667
  currentPath,
3664
3668
  className
3665
3669
  }) {
3666
- const resolvedLocale = chunkDZLUZKOX_js.resolveExploreLocale(locale);
3667
- const T = react.useMemo(() => chunkDZLUZKOX_js.exploreStrings(resolvedLocale), [resolvedLocale]);
3668
- const rtl = chunkDZLUZKOX_js.isRtlLocale(resolvedLocale);
3669
- const catalogProducts = react.useContext(chunkDZLUZKOX_js.ExploreCatalogProductsContext);
3670
- const pinnedSlug = chunkDZLUZKOX_js.pinnedProductSlug(scope, productSlug);
3670
+ const resolvedLocale = chunk22OT6E26_js.resolveExploreLocale(locale);
3671
+ const T = react.useMemo(() => chunk22OT6E26_js.exploreStrings(resolvedLocale), [resolvedLocale]);
3672
+ const rtl = chunk22OT6E26_js.isRtlLocale(resolvedLocale);
3673
+ const catalogProducts = react.useContext(chunk22OT6E26_js.ExploreCatalogProductsContext);
3674
+ const pinnedSlug = chunk22OT6E26_js.pinnedProductSlug(scope, productSlug);
3671
3675
  const pinnedName = react.useMemo(
3672
- () => pinnedSlug === null ? null : chunkDZLUZKOX_js.productNameFor(
3676
+ () => pinnedSlug === null ? null : chunk22OT6E26_js.productNameFor(
3673
3677
  catalogProducts ?? chunkP5GMVPR6_js.ECOSYSTEM_PRODUCTS,
3674
3678
  pinnedSlug,
3675
3679
  productName
@@ -3686,6 +3690,7 @@ function ExplorePanel({
3686
3690
  const [mounted, setMounted] = react.useState(open);
3687
3691
  const [size, setSize] = react.useState("compact");
3688
3692
  const [view, setView] = react.useState("chat");
3693
+ const [voiceHold, setVoiceHold] = react.useState(null);
3689
3694
  const [focusRequest, setFocusRequest] = react.useState(
3690
3695
  open ? "in" : null
3691
3696
  );
@@ -4135,10 +4140,11 @@ function ExplorePanel({
4135
4140
  view === "avatar" && "invisible"
4136
4141
  ),
4137
4142
  children: /* @__PURE__ */ jsxRuntime.jsx(
4138
- chunkDZLUZKOX_js.ExplorePage,
4143
+ chunk22OT6E26_js.ExplorePage,
4139
4144
  {
4140
4145
  presentation: "panel",
4141
4146
  active: open && view === "chat",
4147
+ voiceHold,
4142
4148
  productSlug,
4143
4149
  locale,
4144
4150
  scope,
@@ -4168,11 +4174,13 @@ function ExplorePanel({
4168
4174
  {
4169
4175
  live: avatar.live,
4170
4176
  active: open && view === "avatar",
4177
+ open,
4171
4178
  locale: resolvedLocale,
4172
4179
  productName: pinnedName,
4173
4180
  still: { src: avatar.src, alt: avatarAlt },
4174
4181
  fallback: comingSoon,
4175
4182
  onContinueInChat: continueInChat,
4183
+ onVoiceHold: setVoiceHold,
4176
4184
  examplePrompts,
4177
4185
  pinnedSlug,
4178
4186
  touchFirst: matches(TOUCH_FIRST_QUERY),
@@ -4204,7 +4212,7 @@ function useIsActiveDock() {
4204
4212
  const listener = () => setActive(activeDock());
4205
4213
  dockListeners.add(listener);
4206
4214
  mountedDocks.push(id);
4207
- if (mountedDocks.length > 1 && chunkDZLUZKOX_js.isDevelopmentBuild()) {
4215
+ if (mountedDocks.length > 1 && chunk22OT6E26_js.isDevelopmentBuild()) {
4208
4216
  console.error(SITE_ASSISTANT_DOCK_MORE_THAN_ONE);
4209
4217
  }
4210
4218
  announceActiveDock();
@@ -4219,10 +4227,10 @@ function useIsActiveDock() {
4219
4227
  }
4220
4228
  var SITE_ASSISTANT_DOCK_NEEDS_PROVIDER = "[WebSDK] SiteAssistantDock must be rendered under an ExploreChatProvider (inside the router, around the routes). Without one the panel cannot share the /explore conversation, and the live avatar cannot run.";
4221
4229
  function SiteAssistantDock(props) {
4222
- const start = react.useContext(chunkDZLUZKOX_js.ExploreConversationStartContext);
4230
+ const start = react.useContext(chunk22OT6E26_js.ExploreConversationStartContext);
4223
4231
  const active = useIsActiveDock();
4224
4232
  if (start === null) {
4225
- if (chunkDZLUZKOX_js.isDevelopmentBuild())
4233
+ if (chunk22OT6E26_js.isDevelopmentBuild())
4226
4234
  throw new Error(SITE_ASSISTANT_DOCK_NEEDS_PROVIDER);
4227
4235
  return active ? /* @__PURE__ */ jsxRuntime.jsx(DockWithoutProvider, { ...props }) : null;
4228
4236
  }
@@ -4558,63 +4566,63 @@ Object.defineProperty(exports, "detectElectronPlatform", {
4558
4566
  });
4559
4567
  Object.defineProperty(exports, "EXPLORE_LOCALES", {
4560
4568
  enumerable: true,
4561
- get: function () { return chunkDZLUZKOX_js.EXPLORE_LOCALES; }
4569
+ get: function () { return chunk22OT6E26_js.EXPLORE_LOCALES; }
4562
4570
  });
4563
4571
  Object.defineProperty(exports, "EXPLORE_PREFILL_MAX_LENGTH", {
4564
4572
  enumerable: true,
4565
- get: function () { return chunkDZLUZKOX_js.EXPLORE_PREFILL_MAX_LENGTH; }
4573
+ get: function () { return chunk22OT6E26_js.EXPLORE_PREFILL_MAX_LENGTH; }
4566
4574
  });
4567
4575
  Object.defineProperty(exports, "ExploreAnswerBody", {
4568
4576
  enumerable: true,
4569
- get: function () { return chunkDZLUZKOX_js.ExploreAnswerBody; }
4577
+ get: function () { return chunk22OT6E26_js.ExploreAnswerBody; }
4570
4578
  });
4571
4579
  Object.defineProperty(exports, "ExploreAnswerStyles", {
4572
4580
  enumerable: true,
4573
- get: function () { return chunkDZLUZKOX_js.ExploreAnswerStyles; }
4581
+ get: function () { return chunk22OT6E26_js.ExploreAnswerStyles; }
4574
4582
  });
4575
4583
  Object.defineProperty(exports, "ExploreChatProvider", {
4576
4584
  enumerable: true,
4577
- get: function () { return chunkDZLUZKOX_js.ExploreChatProvider; }
4585
+ get: function () { return chunk22OT6E26_js.ExploreChatProvider; }
4578
4586
  });
4579
4587
  Object.defineProperty(exports, "ExplorePage", {
4580
4588
  enumerable: true,
4581
- get: function () { return chunkDZLUZKOX_js.ExplorePage; }
4589
+ get: function () { return chunk22OT6E26_js.ExplorePage; }
4582
4590
  });
4583
4591
  Object.defineProperty(exports, "answerPlainText", {
4584
4592
  enumerable: true,
4585
- get: function () { return chunkDZLUZKOX_js.answerPlainText; }
4593
+ get: function () { return chunk22OT6E26_js.answerPlainText; }
4586
4594
  });
4587
4595
  Object.defineProperty(exports, "answerSpeechText", {
4588
4596
  enumerable: true,
4589
- get: function () { return chunkDZLUZKOX_js.answerSpeechText; }
4597
+ get: function () { return chunk22OT6E26_js.answerSpeechText; }
4590
4598
  });
4591
4599
  Object.defineProperty(exports, "exploreQuestionHref", {
4592
4600
  enumerable: true,
4593
- get: function () { return chunkDZLUZKOX_js.exploreQuestionHref; }
4601
+ get: function () { return chunk22OT6E26_js.exploreQuestionHref; }
4594
4602
  });
4595
4603
  Object.defineProperty(exports, "inlineImageOrigins", {
4596
4604
  enumerable: true,
4597
- get: function () { return chunkDZLUZKOX_js.inlineImageOrigins; }
4605
+ get: function () { return chunk22OT6E26_js.inlineImageOrigins; }
4598
4606
  });
4599
4607
  Object.defineProperty(exports, "isInlineImageAllowed", {
4600
4608
  enumerable: true,
4601
- get: function () { return chunkDZLUZKOX_js.isInlineImageAllowed; }
4609
+ get: function () { return chunk22OT6E26_js.isInlineImageAllowed; }
4602
4610
  });
4603
4611
  Object.defineProperty(exports, "isInlineVideoAllowed", {
4604
4612
  enumerable: true,
4605
- get: function () { return chunkDZLUZKOX_js.isInlineVideoAllowed; }
4613
+ get: function () { return chunk22OT6E26_js.isInlineVideoAllowed; }
4606
4614
  });
4607
4615
  Object.defineProperty(exports, "productSlugsByOrigin", {
4608
4616
  enumerable: true,
4609
- get: function () { return chunkDZLUZKOX_js.productSlugsByOrigin; }
4617
+ get: function () { return chunk22OT6E26_js.productSlugsByOrigin; }
4610
4618
  });
4611
4619
  Object.defineProperty(exports, "speechLocaleOf", {
4612
4620
  enumerable: true,
4613
- get: function () { return chunkDZLUZKOX_js.speechLocaleOf; }
4621
+ get: function () { return chunk22OT6E26_js.speechLocaleOf; }
4614
4622
  });
4615
4623
  Object.defineProperty(exports, "useExploreConversation", {
4616
4624
  enumerable: true,
4617
- get: function () { return chunkDZLUZKOX_js.useExploreConversation; }
4625
+ get: function () { return chunk22OT6E26_js.useExploreConversation; }
4618
4626
  });
4619
4627
  Object.defineProperty(exports, "DEFAULT_EXPLORE_EXAMPLE_PROMPTS", {
4620
4628
  enumerable: true,