@gengage/assistant-fe 0.1.0 → 0.1.2

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 (150) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +2 -2
  3. package/dist/assistant-fe.css +1 -1
  4. package/dist/chat/api.d.ts +12 -2
  5. package/dist/chat/api.d.ts.map +1 -1
  6. package/dist/chat/catalog.d.ts +246 -896
  7. package/dist/chat/catalog.d.ts.map +1 -1
  8. package/dist/chat/components/AIGroupingCards.d.ts.map +1 -1
  9. package/dist/chat/components/AISuggestedSearchCards.d.ts.map +1 -1
  10. package/dist/chat/components/AITopPicks.d.ts.map +1 -1
  11. package/dist/chat/components/CategoriesContainer.d.ts.map +1 -1
  12. package/dist/chat/components/ChatDrawer.d.ts +16 -3
  13. package/dist/chat/components/ChatDrawer.d.ts.map +1 -1
  14. package/dist/chat/components/ComparisonTable.d.ts +9 -0
  15. package/dist/chat/components/ComparisonTable.d.ts.map +1 -1
  16. package/dist/chat/components/GroundingReviewCard.d.ts.map +1 -1
  17. package/dist/chat/components/HandoffNotice.d.ts +5 -0
  18. package/dist/chat/components/HandoffNotice.d.ts.map +1 -0
  19. package/dist/chat/components/KvkkBanner.d.ts +1 -0
  20. package/dist/chat/components/KvkkBanner.d.ts.map +1 -1
  21. package/dist/chat/components/ProactivePopup.d.ts +9 -0
  22. package/dist/chat/components/ProactivePopup.d.ts.map +1 -1
  23. package/dist/chat/components/ProductSummaryCard.d.ts +4 -0
  24. package/dist/chat/components/ProductSummaryCard.d.ts.map +1 -0
  25. package/dist/chat/components/ReviewHighlights.d.ts +3 -1
  26. package/dist/chat/components/ReviewHighlights.d.ts.map +1 -1
  27. package/dist/chat/components/ThumbnailsColumn.d.ts.map +1 -1
  28. package/dist/chat/components/renderUISpec.d.ts +4 -3
  29. package/dist/chat/components/renderUISpec.d.ts.map +1 -1
  30. package/dist/chat/heartbeat.d.ts +71 -0
  31. package/dist/chat/heartbeat.d.ts.map +1 -0
  32. package/dist/chat/index.d.ts +39 -78
  33. package/dist/chat/index.d.ts.map +1 -1
  34. package/dist/chat/kvkk.d.ts +21 -0
  35. package/dist/chat/kvkk.d.ts.map +1 -0
  36. package/dist/chat/locales/en.d.ts.map +1 -1
  37. package/dist/chat/locales/tr.d.ts.map +1 -1
  38. package/dist/chat/panel-manager.d.ts +81 -0
  39. package/dist/chat/panel-manager.d.ts.map +1 -0
  40. package/dist/chat/session-persistence.d.ts +56 -0
  41. package/dist/chat/session-persistence.d.ts.map +1 -0
  42. package/dist/chat/types.d.ts +39 -1
  43. package/dist/chat/types.d.ts.map +1 -1
  44. package/dist/chat.cjs +1 -1
  45. package/dist/chat.iife.js +48 -10
  46. package/dist/chat.iife.js.map +1 -1
  47. package/dist/chat.js +9 -8
  48. package/dist/chat.js.map +1 -1
  49. package/dist/common/analytics-events.d.ts +2 -0
  50. package/dist/common/analytics-events.d.ts.map +1 -1
  51. package/dist/common/analytics.d.ts.map +1 -1
  52. package/dist/common/api-paths.d.ts +5 -0
  53. package/dist/common/api-paths.d.ts.map +1 -1
  54. package/dist/common/client.d.ts +4 -1
  55. package/dist/common/client.d.ts.map +1 -1
  56. package/dist/common/communication-bridge.d.ts.map +1 -1
  57. package/dist/common/config-schema.d.ts +33 -195
  58. package/dist/common/config-schema.d.ts.map +1 -1
  59. package/dist/common/ga-datalayer.d.ts +62 -0
  60. package/dist/common/ga-datalayer.d.ts.map +1 -0
  61. package/dist/common/index.d.ts +7 -0
  62. package/dist/common/index.d.ts.map +1 -1
  63. package/dist/common/indexed-db.d.ts +1 -1
  64. package/dist/common/indexed-db.d.ts.map +1 -1
  65. package/dist/common/merchant-configs.d.ts +22 -0
  66. package/dist/common/merchant-configs.d.ts.map +1 -0
  67. package/dist/common/overlay.d.ts +5 -0
  68. package/dist/common/overlay.d.ts.map +1 -1
  69. package/dist/common/page-detect.d.ts +31 -0
  70. package/dist/common/page-detect.d.ts.map +1 -0
  71. package/dist/common/preflight.d.ts +3 -1
  72. package/dist/common/preflight.d.ts.map +1 -1
  73. package/dist/common/price-formatter.d.ts +33 -0
  74. package/dist/common/price-formatter.d.ts.map +1 -0
  75. package/dist/common/product-utils.d.ts +26 -0
  76. package/dist/common/product-utils.d.ts.map +1 -0
  77. package/dist/common/quantity-stepper.d.ts +22 -0
  78. package/dist/common/quantity-stepper.d.ts.map +1 -0
  79. package/dist/common/safe-html.d.ts +10 -6
  80. package/dist/common/safe-html.d.ts.map +1 -1
  81. package/dist/common/streaming.d.ts +6 -0
  82. package/dist/common/streaming.d.ts.map +1 -1
  83. package/dist/common/tts-player.d.ts +12 -0
  84. package/dist/common/tts-player.d.ts.map +1 -0
  85. package/dist/common/types.d.ts +51 -0
  86. package/dist/common/types.d.ts.map +1 -1
  87. package/dist/common/v1-protocol-adapter.d.ts +9 -0
  88. package/dist/common/v1-protocol-adapter.d.ts.map +1 -1
  89. package/dist/common/voice-input.d.ts +74 -0
  90. package/dist/common/voice-input.d.ts.map +1 -0
  91. package/dist/common/widget-base.d.ts +18 -1
  92. package/dist/common/widget-base.d.ts.map +1 -1
  93. package/dist/common.cjs +1 -1
  94. package/dist/common.cjs.map +1 -1
  95. package/dist/common.js +564 -244
  96. package/dist/common.js.map +1 -1
  97. package/dist/index-CXbH-cw8.js +4337 -0
  98. package/dist/index-CXbH-cw8.js.map +1 -0
  99. package/dist/index-DHfTHscz.cjs +13 -0
  100. package/dist/index-DHfTHscz.cjs.map +1 -0
  101. package/dist/index.cjs +1 -1
  102. package/dist/index.d.ts +2 -2
  103. package/dist/index.d.ts.map +1 -1
  104. package/dist/index.js +61 -53
  105. package/dist/qna/catalog.d.ts +30 -96
  106. package/dist/qna/catalog.d.ts.map +1 -1
  107. package/dist/qna/components/TextInput.d.ts.map +1 -1
  108. package/dist/qna/components/renderUISpec.d.ts.map +1 -1
  109. package/dist/qna/index.d.ts +2 -0
  110. package/dist/qna/index.d.ts.map +1 -1
  111. package/dist/qna.cjs +1 -1
  112. package/dist/qna.cjs.map +1 -1
  113. package/dist/qna.iife.js +46 -8
  114. package/dist/qna.iife.js.map +1 -1
  115. package/dist/qna.js +94 -86
  116. package/dist/qna.js.map +1 -1
  117. package/dist/quantity-stepper-B8kX8GbN.js +209 -0
  118. package/dist/quantity-stepper-B8kX8GbN.js.map +1 -0
  119. package/dist/quantity-stepper-UbAp53Ow.cjs +2 -0
  120. package/dist/quantity-stepper-UbAp53Ow.cjs.map +1 -0
  121. package/dist/schemas-CPkzbgia.js +4572 -0
  122. package/dist/schemas-CPkzbgia.js.map +1 -0
  123. package/dist/schemas-tCxs1sED.cjs +86 -0
  124. package/dist/schemas-tCxs1sED.cjs.map +1 -0
  125. package/dist/simrel/api.d.ts.map +1 -1
  126. package/dist/simrel/catalog.d.ts +32 -240
  127. package/dist/simrel/catalog.d.ts.map +1 -1
  128. package/dist/simrel/components/GroupTabs.d.ts.map +1 -1
  129. package/dist/simrel/components/ProductCard.d.ts +2 -0
  130. package/dist/simrel/components/ProductCard.d.ts.map +1 -1
  131. package/dist/simrel/components/renderUISpec.d.ts.map +1 -1
  132. package/dist/simrel/index.d.ts.map +1 -1
  133. package/dist/simrel/types.d.ts +5 -0
  134. package/dist/simrel/types.d.ts.map +1 -1
  135. package/dist/simrel.cjs +1 -1
  136. package/dist/simrel.cjs.map +1 -1
  137. package/dist/simrel.css +1 -1
  138. package/dist/simrel.iife.js +46 -8
  139. package/dist/simrel.iife.js.map +1 -1
  140. package/dist/simrel.js +319 -279
  141. package/dist/simrel.js.map +1 -1
  142. package/package.json +28 -8
  143. package/dist/index-CFA70IGF.js +0 -3626
  144. package/dist/index-CFA70IGF.js.map +0 -1
  145. package/dist/index-Dfl89zpe.cjs +0 -13
  146. package/dist/index-Dfl89zpe.cjs.map +0 -1
  147. package/dist/types-CeON7iBO.cjs +0 -48
  148. package/dist/types-CeON7iBO.cjs.map +0 -1
  149. package/dist/types-yxW8WA7u.js +0 -4132
  150. package/dist/types-yxW8WA7u.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/chat/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;EAI9B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;IAO5B,mDAAmD;;;;;;;;;;;;;;;;;;EAEnD,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;QAI1B,mEAAmE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQvE,CAAC;AAEH,eAAO,MAAM,qBAAqB,gDAAe,CAAC;AAElD,eAAO,MAAM,aAAa;;;;;;EAExB,CAAC;AAWH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6BhC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;EAG/B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAc9B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE3B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKpC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAShC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUvC,CAAC;AAUH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;gBA/HtB,mDAAmD;;;;;;;;;;;;;;;;;;;;;;;;;oBAQ/C,mEAAmE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkK/D,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC;AAC7C,MAAM,MAAM,iBAAiB,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/chat/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,mBAAmB;;;;;;;iBAI9B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;iBAS5B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;iBAY9B,CAAC;AAEH,eAAO,MAAM,qBAAqB,gCAAe,CAAC;AAElD,eAAO,MAAM,aAAa;;iBAExB,CAAC;AAWH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+BhC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;iBAG/B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;iBAc9B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;iBAE3B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;iBAKpC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;iBAShC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;iBAUvC,CAAC;AAeH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwBpC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;iBAE5B,CAAC;AASH,eAAO,MAAM,sBAAsB;;;;;;;iBAEjC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;iBAI5B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;iBAiBpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AAUH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmEd,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC;AAC7C,MAAM,MAAM,iBAAiB,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AIGroupingCards.d.ts","sourceRoot":"","sources":["../../../src/chat/components/AIGroupingCards.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAoB3D,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CA0DnG"}
1
+ {"version":3,"file":"AIGroupingCards.d.ts","sourceRoot":"","sources":["../../../src/chat/components/AIGroupingCards.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAW3D,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CA0DnG"}
@@ -1 +1 @@
1
- {"version":3,"file":"AISuggestedSearchCards.d.ts","sourceRoot":"","sources":["../../../src/chat/components/AISuggestedSearchCards.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAoB3D,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAmD1G"}
1
+ {"version":3,"file":"AISuggestedSearchCards.d.ts","sourceRoot":"","sources":["../../../src/chat/components/AISuggestedSearchCards.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAW3D,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAmD1G"}
@@ -1 +1 @@
1
- {"version":3,"file":"AITopPicks.d.ts","sourceRoot":"","sources":["../../../src/chat/components/AITopPicks.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AA+B3D,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAyB9F"}
1
+ {"version":3,"file":"AITopPicks.d.ts","sourceRoot":"","sources":["../../../src/chat/components/AITopPicks.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAiC3D,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAyB9F"}
@@ -1 +1 @@
1
- {"version":3,"file":"CategoriesContainer.d.ts","sourceRoot":"","sources":["../../../src/chat/components/CategoriesContainer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAa3D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,uBAAuB,GAAG,WAAW,CAyE3G"}
1
+ {"version":3,"file":"CategoriesContainer.d.ts","sourceRoot":"","sources":["../../../src/chat/components/CategoriesContainer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAc3D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,uBAAuB,GAAG,WAAW,CA2G3G"}
@@ -26,6 +26,10 @@ export interface ChatDrawerOptions {
26
26
  onThumbnailClick?: ((threadId: string) => void) | undefined;
27
27
  /** Callback fired when a link in bot HTML is clicked. */
28
28
  onLinkClick?: ((url: string) => void) | undefined;
29
+ /** Enable voice input (Web Speech API STT). Default: false. */
30
+ voiceEnabled?: boolean | undefined;
31
+ /** BCP 47 language for speech recognition. Default: 'tr-TR'. */
32
+ voiceLang?: string | undefined;
29
33
  }
30
34
  export declare class ChatDrawer {
31
35
  private root;
@@ -56,13 +60,17 @@ export declare class ChatDrawer {
56
60
  private _thumbnailsColumn;
57
61
  private _thinkingSteps;
58
62
  private _firstBotMessageIds;
63
+ private _voiceInput;
64
+ private _micBtn;
65
+ private _voiceEnabled;
66
+ private _voiceLang;
59
67
  constructor(container: HTMLElement, options: ChatDrawerOptions);
60
68
  addMessage(message: ChatMessage): void;
61
69
  showTypingIndicator(searchText?: string): void;
62
70
  /** Accumulate a new thinking step (shown as a checklist in the typing indicator). */
63
71
  addThinkingStep(text: string): void;
64
72
  removeTypingIndicator(): void;
65
- showError(message?: string): void;
73
+ showError(message?: string, onRetry?: () => void): void;
66
74
  clearMessages(): void;
67
75
  /** Replace suggestion pills. Pass empty array to hide. */
68
76
  setPills(pills: Array<{
@@ -88,7 +96,7 @@ export declare class ChatDrawer {
88
96
  appendPanelContent(el: HTMLElement): void;
89
97
  /** Return the panel element's content child (after topbar), or null. */
90
98
  getPanelContentElement(): HTMLElement | null;
91
- /** Whether the panel is currently visible and has rendered content (beyond the topbar). */
99
+ /** Whether the panel is currently visible and has rendered content (beyond topbar + thumbnails column). */
92
100
  hasPanelContent(): boolean;
93
101
  /** Whether panel currently shows loading skeleton blocks. */
94
102
  isPanelLoading(): boolean;
@@ -96,7 +104,11 @@ export declare class ChatDrawer {
96
104
  showPanelLoading(contentType?: string): void;
97
105
  /** Update the panel top bar navigation state. */
98
106
  updatePanelTopBar(canBack: boolean, canForward: boolean, title: string): void;
99
- /** Hide the panel and clear its content. In force-expanded mode, keeps panel visible. */
107
+ /**
108
+ * Hide the panel and clear its content. Always hides — even in force-expanded mode.
109
+ * Callers: _hideDrawer (stale panel cleanup), stream onDone (loading skeleton cleanup),
110
+ * thread navigation (no snapshot to restore). All require full hide.
111
+ */
100
112
  clearPanel(): void;
101
113
  /** Force the panel to stay expanded (panelMode: 'expanded'). Hides the divider toggle. */
102
114
  setForceExpanded(): void;
@@ -116,6 +128,7 @@ export declare class ChatDrawer {
116
128
  private _renderThinkingStepsInto;
117
129
  private _trapFocus;
118
130
  private _submit;
131
+ private _toggleVoice;
119
132
  /** Lock auto-scroll for 500ms after session history restore to prevent visual jump. */
120
133
  lockScrollForRestore(): void;
121
134
  /** Scroll to bottom only if user hasn't scrolled up. Force=true always scrolls. */
@@ -1 +1 @@
1
- {"version":3,"file":"ChatDrawer.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ChatDrawer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatDrawer.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ChatDrawer.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,14 @@ export interface ComparisonAttribute {
23
23
  label: string;
24
24
  values: string[];
25
25
  }
26
+ export interface ComparisonTableI18n {
27
+ comparisonHeading?: string;
28
+ recommendedChoiceLabel?: string;
29
+ highlightsLabel?: string;
30
+ keyDifferencesLabel?: string;
31
+ specialCasesLabel?: string;
32
+ addToCartButton?: string;
33
+ }
26
34
  export interface ComparisonTableOptions {
27
35
  recommended: ComparisonProduct;
28
36
  products: ComparisonProduct[];
@@ -42,6 +50,7 @@ export interface ComparisonTableOptions {
42
50
  payload?: unknown;
43
51
  }> | undefined;
44
52
  keyDifferencesHtml?: string | undefined;
53
+ i18n?: ComparisonTableI18n | undefined;
45
54
  }
46
55
  export declare function renderComparisonTable(options: ComparisonTableOptions): HTMLElement;
47
56
  //# sourceMappingURL=ComparisonTable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComparisonTable.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ComparisonTable.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwCH;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1D;AAWD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACpC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAClD,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IACtF,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IAChG,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,WAAW,CA6LlF"}
1
+ {"version":3,"file":"ComparisonTable.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ComparisonTable.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAsCH;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACpC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAClD,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IACtF,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IAChG,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,IAAI,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;CACxC;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,WAAW,CA2MlF"}
@@ -1 +1 @@
1
- {"version":3,"file":"GroundingReviewCard.d.ts","sourceRoot":"","sources":["../../../src/chat/components/GroundingReviewCard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAgDvG"}
1
+ {"version":3,"file":"GroundingReviewCard.d.ts","sourceRoot":"","sources":["../../../src/chat/components/GroundingReviewCard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAiDvG"}
@@ -0,0 +1,5 @@
1
+ import { ChatUISpecRenderContext } from '../types.js';
2
+ export declare function renderHandoffNotice(element: {
3
+ props?: Record<string, unknown>;
4
+ }, context: ChatUISpecRenderContext): HTMLElement;
5
+ //# sourceMappingURL=HandoffNotice.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HandoffNotice.d.ts","sourceRoot":"","sources":["../../../src/chat/components/HandoffNotice.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,wBAAgB,mBAAmB,CACjC,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAC5C,OAAO,EAAE,uBAAuB,GAC/B,WAAW,CAyBb"}
@@ -1,6 +1,7 @@
1
1
  export interface KvkkBannerOptions {
2
2
  htmlContent: string;
3
3
  onDismiss: () => void;
4
+ closeAriaLabel?: string;
4
5
  }
5
6
  export declare function createKvkkBanner(options: KvkkBannerOptions): HTMLElement;
6
7
  //# sourceMappingURL=KvkkBanner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"KvkkBanner.d.ts","sourceRoot":"","sources":["../../../src/chat/components/KvkkBanner.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,WAAW,CAmBxE"}
1
+ {"version":3,"file":"KvkkBanner.d.ts","sourceRoot":"","sources":["../../../src/chat/components/KvkkBanner.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,WAAW,CAmBxE"}
@@ -1,3 +1,7 @@
1
+ export interface ProactiveAction {
2
+ title: string;
3
+ onSelect: () => void;
4
+ }
1
5
  export interface ProactivePopupOptions {
2
6
  message: string;
3
7
  onAccept: () => void;
@@ -6,6 +10,11 @@ export interface ProactivePopupOptions {
6
10
  autoDismissMs?: number;
7
11
  /** Accept button label (default: "Sohbete Başla"). */
8
12
  acceptLabel?: string;
13
+ /** Dismiss button aria-label (default: "Kapat"). */
14
+ closeAriaLabel?: string;
15
+ /** Backend-driven action buttons. When provided, renders per-action buttons
16
+ * instead of the generic accept button. */
17
+ actionButtons?: ProactiveAction[];
9
18
  }
10
19
  export declare function createProactivePopup(options: ProactivePopupOptions): HTMLElement;
11
20
  //# sourceMappingURL=ProactivePopup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProactivePopup.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ProactivePopup.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,WAAW,CAkDhF"}
1
+ {"version":3,"file":"ProactivePopup.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ProactivePopup.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;gDAC4C;IAC5C,aAAa,CAAC,EAAE,eAAe,EAAE,CAAC;CACnC;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,WAAW,CA0EhF"}
@@ -0,0 +1,4 @@
1
+ import { UIElement } from '../../common/types.js';
2
+ import { ChatUISpecRenderContext } from '../types.js';
3
+ export declare function renderProductSummaryCard(element: UIElement, ctx: ChatUISpecRenderContext): HTMLElement;
4
+ //# sourceMappingURL=ProductSummaryCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductSummaryCard.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ProductSummaryCard.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAK3D,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CA+FtG"}
@@ -1,3 +1,5 @@
1
1
  import { UIElement } from '../../common/types.js';
2
- export declare function renderReviewHighlights(element: UIElement): HTMLElement;
2
+ export declare function renderReviewHighlights(element: UIElement, options?: {
3
+ emptyReviewsMessage?: string | undefined;
4
+ }): HTMLElement;
3
5
  //# sourceMappingURL=ReviewHighlights.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReviewHighlights.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ReviewHighlights.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AASvD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,SAAS,GAAG,WAAW,CA2ItE"}
1
+ {"version":3,"file":"ReviewHighlights.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ReviewHighlights.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AASvD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,SAAS,EAClB,OAAO,CAAC,EAAE;IAAE,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GACrD,WAAW,CA2Ib"}
@@ -1 +1 @@
1
- {"version":3,"file":"ThumbnailsColumn.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ThumbnailsColumn.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6B;gBAEnD,OAAO,EAAE,uBAAuB;IAQ5C,UAAU,IAAI,WAAW;IAIzB,UAAU,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI;IAmC3C,IAAI,IAAI,IAAI;IAIZ,IAAI,IAAI,IAAI;CAGb"}
1
+ {"version":3,"file":"ThumbnailsColumn.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ThumbnailsColumn.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6B;gBAEnD,OAAO,EAAE,uBAAuB;IAQ5C,UAAU,IAAI,WAAW;IAIzB,UAAU,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI;IAqC3C,IAAI,IAAI,IAAI;IAIZ,IAAI,IAAI,IAAI;CAGb"}
@@ -1,14 +1,15 @@
1
1
  import { UISpec } from '../../common/types.js';
2
2
  import { UISpecDomRegistry, UISpecDomUnknownRenderer } from '../../common/renderer/index.js';
3
3
  import { ChatUISpecRenderContext } from '../types.js';
4
+ import { PriceFormatConfig } from '../../common/price-formatter.js';
4
5
  export type UISpecRenderContext = ChatUISpecRenderContext;
5
6
  export type ChatUISpecRegistry = UISpecDomRegistry<UISpecRenderContext>;
6
7
  /**
7
- * Formats a raw numeric price string into Turkish locale format.
8
- * Example: "17990" "17.990 TL", "17990.5" "17.990,50 TL"
9
- * Returns the input as-is if it's not a valid number.
8
+ * @deprecated Use `formatPrice()` from `../../common/price-formatter.js` instead.
9
+ * Kept for backwards compatibility delegates to `formatPrice()` with Turkish defaults.
10
10
  */
11
11
  export declare function formatTurkishPrice(raw: string): string;
12
+ export type { PriceFormatConfig };
12
13
  export declare const defaultChatUnknownUISpecRenderer: UISpecDomUnknownRenderer<UISpecRenderContext>;
13
14
  export declare function createDefaultChatUISpecRegistry(): ChatUISpecRegistry;
14
15
  export declare function renderUISpec(spec: UISpec, ctx: UISpecRenderContext, registry?: ChatUISpecRegistry, unknownRenderer?: UISpecDomUnknownRenderer<UISpecRenderContext>): HTMLElement;
@@ -1 +1 @@
1
- {"version":3,"file":"renderUISpec.d.ts","sourceRoot":"","sources":["../../../src/chat/components/renderUISpec.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAA4B,MAAM,uBAAuB,CAAC;AAE9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAClG,OAAO,KAAK,EAAE,uBAAuB,EAAoB,MAAM,aAAa,CAAC;AAY7E,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AAExE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBtD;AA0CD,eAAO,MAAM,gCAAgC,EAAE,wBAAwB,CAAC,mBAAmB,CAgB1F,CAAC;AAEF,wBAAgB,+BAA+B,IAAI,kBAAkB,CAEpE;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,mBAAmB,EACxB,QAAQ,qBAAgC,EACxC,eAAe,GAAE,wBAAwB,CAAC,mBAAmB,CAAoC,GAChG,WAAW,CAQb"}
1
+ {"version":3,"file":"renderUISpec.d.ts","sourceRoot":"","sources":["../../../src/chat/components/renderUISpec.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAA4B,MAAM,uBAAuB,CAAC;AAE9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAClG,OAAO,KAAK,EAAE,uBAAuB,EAAoB,MAAM,aAAa,CAAC;AAE7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAiBzE,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AAExE;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,YAAY,EAAE,iBAAiB,EAAE,CAAC;AA0BlC,eAAO,MAAM,gCAAgC,EAAE,wBAAwB,CAAC,mBAAmB,CAgB1F,CAAC;AAEF,wBAAgB,+BAA+B,IAAI,kBAAkB,CAEpE;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,mBAAmB,EACxB,QAAQ,qBAAgC,EACxC,eAAe,GAAE,wBAAwB,CAAC,mBAAmB,CAAoC,GAChG,WAAW,CAQb"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * V2 heartbeat polling.
3
+ *
4
+ * Periodically sends session state signals to the `/v2/heartbeat` backend
5
+ * endpoint. The backend evaluates proactive trigger rules and may return a
6
+ * message to show to the user (e.g. idle nudge, cart abandonment reminder).
7
+ *
8
+ * Gated behind `ChatWidgetConfig.enableHeartbeat` (default: false).
9
+ */
10
+ export interface HeartbeatRequest {
11
+ account_id: string;
12
+ thread_id: string;
13
+ output_language: string;
14
+ idle_seconds: number;
15
+ page_type: string;
16
+ current_sku: string;
17
+ cart_item_count: number;
18
+ searches_count: number;
19
+ actions_count: number;
20
+ session_duration_seconds: number;
21
+ trigger_fire_counts: Record<string, number>;
22
+ }
23
+ export interface HeartbeatResponse {
24
+ action: 'noop' | 'message';
25
+ trigger_type?: string;
26
+ message?: string;
27
+ suggested_actions?: Array<{
28
+ title: string;
29
+ icon?: string;
30
+ requestDetails?: {
31
+ type: string;
32
+ payload?: unknown;
33
+ };
34
+ }>;
35
+ }
36
+ export interface HeartbeatManagerOptions {
37
+ middlewareUrl: string;
38
+ accountId: string;
39
+ sessionId: string;
40
+ locale: string;
41
+ intervalMs: number;
42
+ getPageType: () => string;
43
+ getCurrentSku: () => string;
44
+ onMessage: (response: HeartbeatResponse) => void;
45
+ }
46
+ export declare class HeartbeatManager {
47
+ private _timer;
48
+ private _destroyed;
49
+ private _abortController;
50
+ private _sessionStart;
51
+ private _lastActivity;
52
+ private _searchesCount;
53
+ private _actionsCount;
54
+ private _triggerFireCounts;
55
+ private readonly _options;
56
+ private readonly _endpoint;
57
+ constructor(options: HeartbeatManagerOptions);
58
+ start(): void;
59
+ /** Schedule the next poll after the current one finishes (prevents overlapping polls). */
60
+ private _scheduleNext;
61
+ stop(): void;
62
+ /** Call when the user performs an action (search, click, etc.). */
63
+ recordAction(): void;
64
+ /** Call when the user performs a search. */
65
+ recordSearch(): void;
66
+ /** Call on any user interaction to reset idle timer. */
67
+ recordActivity(): void;
68
+ destroy(): void;
69
+ private _poll;
70
+ }
71
+ //# sourceMappingURL=heartbeat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../../src/chat/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,wBAAwB,EAAE,MAAM,CAAC;IACjC,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,KAAK,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,cAAc,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;KACtD,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,MAAM,CAAC;IAC5B,SAAS,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAClD;AAMD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAA8C;IAC5D,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,gBAAgB,CAAgC;IACxD,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,kBAAkB,CAA8B;IACxD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA0B;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,OAAO,EAAE,uBAAuB;IAM5C,KAAK,IAAI,IAAI;IAKb,0FAA0F;IAC1F,OAAO,CAAC,aAAa;IAOrB,IAAI,IAAI,IAAI;IAOZ,mEAAmE;IACnE,YAAY,IAAI,IAAI;IAKpB,4CAA4C;IAC5C,YAAY,IAAI,IAAI;IAKpB,wDAAwD;IACxD,cAAc,IAAI,IAAI;IAItB,OAAO,IAAI,IAAI;YAOD,KAAK;CA0CpB"}
@@ -8,12 +8,12 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
8
8
  private _drawer;
9
9
  private _bridge;
10
10
  private _activityTracker;
11
+ private _heartbeat;
11
12
  private _proactiveShown;
12
13
  private _drawerVisible;
13
14
  private _messages;
14
- private _currentBotText;
15
15
  private _currentMessageId;
16
- private _abortController;
16
+ private _abortControllers;
17
17
  /** Current thread cursor — only messages with threadId <= this are visible. */
18
18
  private _currentThreadId;
19
19
  /** Most recent threadId ever created — used to detect branch points. */
@@ -22,12 +22,6 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
22
22
  private _chatCreatedAt;
23
23
  /** Last backend-streamed context object — sent back with every request. */
24
24
  private _lastBackendContext;
25
- /** Panel content snapshots keyed by bot message ID for history navigation. */
26
- private _panelSnapshots;
27
- /** Component type for each panel snapshot (for topbar title restoration). */
28
- private _panelSnapshotTypes;
29
- /** Currently active (highlighted) message ID in the chat pane. */
30
- private _activePanelMessageId;
31
25
  private _productSort;
32
26
  private _comparisonSelectMode;
33
27
  private _comparisonSelectedSkus;
@@ -37,15 +31,12 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
37
31
  private _mobileBreakpoint;
38
32
  private _isMobileViewport;
39
33
  private _pdpLaunched;
40
- private _currentPanelType;
41
34
  private _i18n;
42
35
  private _extendedModeManager;
43
- /** Thread IDs that have panel content, in order of creation. */
44
- private _panelThreads;
45
36
  /** Active typewriter animation handle — cancelled on new action or drawer close. */
46
37
  private _activeTypewriter;
47
- /** IndexedDB persistence layernull when unavailable. */
48
- private _indexedDB;
38
+ /** Active TTS audio handle stopped on new stream start or drawer close. */
39
+ private _activeTtsHandle;
49
40
  /** Active request thread ID — guards against stale stream events from cancelled requests. */
50
41
  private _activeRequestThreadId;
51
42
  /** Accumulated SKU → product item map from outputText events. */
@@ -56,13 +47,17 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
56
47
  private _initComplete;
57
48
  /** Queue of actions received before init completes. Max 10, FIFO discard. */
58
49
  private _pendingActions;
59
- /** Favorited product SKUs (loaded from IDB). */
60
- private _favoritedSkus;
61
50
  /** Supplemental context received from host via bridge (e.g. PDP detail context). */
62
51
  private _bridgeContext;
63
52
  /** Last cart quantity received from host via bridge. */
64
53
  private _cartQuantity;
65
54
  private _threadsWithFirstBot;
55
+ /** Panel state manager (snapshots, topbar, navigation). */
56
+ private _panel;
57
+ /** IndexedDB session persistence manager. */
58
+ private _session;
59
+ /** Registered event callbacks (GA4 event hooks). Key = event name, value = set of callbacks. */
60
+ private _eventCallbacks;
66
61
  protected onInit(config: ChatWidgetConfig): Promise<void>;
67
62
  protected onUpdate(_context: Partial<PageContext>): void;
68
63
  protected onShow(): void;
@@ -74,14 +69,33 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
74
69
  }): void;
75
70
  openWithAction(action: ActionPayload, options?: {
76
71
  sku?: string;
72
+ state?: 'full' | 'half';
73
+ }): void;
74
+ /** Send a user message programmatically (same flow as typing + submit). */
75
+ sendMessage(text: string): void;
76
+ /** Send a backend action programmatically. */
77
+ sendAction(action: ActionPayload, options?: {
78
+ silent?: boolean;
77
79
  }): void;
78
80
  close(): void;
79
81
  saveSession(sessionId: string, sku: string): void;
80
82
  get isOpen(): boolean;
83
+ /**
84
+ * Register a callback for a GA4 event name (e.g. 'gengage-cart-add').
85
+ * The callback receives the event detail and should return true (success) or false (failure).
86
+ * For add-to-cart, failure triggers an error message in the chat.
87
+ * @returns unsubscribe function
88
+ */
89
+ addCallback(eventName: string, callback: (detail: Record<string, unknown>) => boolean | Promise<boolean>): () => void;
81
90
  private _handleBridgeMessage;
82
91
  private _registerPublicAPI;
83
92
  private _showDrawer;
84
93
  private _showProactivePopup;
94
+ /** Fetch proactive actions from backend and show popup with per-action buttons. */
95
+ private _fetchAndShowProactive;
96
+ private _proactiveCooldownKey;
97
+ private _isProactiveCooldownActive;
98
+ private _setProactiveCooldown;
85
99
  private _hideDrawer;
86
100
  private _syncViewportState;
87
101
  private _applyOpenStateClasses;
@@ -95,21 +109,9 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
95
109
  private _handleRollback;
96
110
  /** Rewind the conversation to the given thread. */
97
111
  private _rollbackToThread;
98
- /**
99
- * Persist current session state to IndexedDB.
100
- * Called after each stream completion (onDone). Non-fatal on failure.
101
- */
102
112
  private _persistToIndexedDB;
103
- /**
104
- * Persist session to IndexedDB, then send openURLInNewTab bridge message.
105
- * Used by product clicks and bot HTML link clicks so the session can be
106
- * restored when the user returns from navigation.
107
- */
113
+ private _isSameOriginUrl;
108
114
  private _saveSessionAndOpenURL;
109
- /**
110
- * Load a UISpec payload from IndexedDB with retry logic.
111
- * Returns null if not found or all retries fail.
112
- */
113
115
  private _loadPayload;
114
116
  /**
115
117
  * Attempt to restore chat session from IndexedDB.
@@ -123,6 +125,15 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
123
125
  */
124
126
  private _buildRenderContext;
125
127
  private _toggleFavorite;
128
+ /**
129
+ * Run registered callbacks for a GA4 event.
130
+ * If any callback returns false or throws, handle the failure (e.g. show error for cart-add).
131
+ */
132
+ private _runEventCallbacks;
133
+ /**
134
+ * Handle a callback failure — for add-to-cart, show an error message in chat.
135
+ */
136
+ private _handleCallbackFailure;
126
137
  /**
127
138
  * Re-render inline UISpec elements for a restored bot message.
128
139
  * Inserts them into the messages container after the message bubble.
@@ -132,56 +143,6 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
132
143
  private _resolveI18n;
133
144
  private _resolveUISpecRegistry;
134
145
  private _renderUISpec;
135
- /**
136
- * Deep-clone the current panel content (excluding topbar/thumbnails) and store
137
- * it keyed by message ID. Called when a stream completes so panel content can
138
- * be restored later without duplicating the topbar.
139
- */
140
- private _snapshotPanelForMessage;
141
- /**
142
- * Attach a click handler to a bot message bubble so clicking it restores
143
- * the panel content that was active when that message was received.
144
- */
145
- private _attachMessageClickHandler;
146
- /**
147
- * Restore the panel content snapshot associated with a given message ID.
148
- * Highlights the active message and de-highlights the previous one.
149
- * Also restores the panel topbar title for the snapshot's component type.
150
- * Returns true if the snapshot was found and restored.
151
- */
152
- private _restorePanelForMessage;
153
- /**
154
- * Send maximize-pdp / minify-pdp bridge messages with production-matching delays.
155
- * Called by the extended mode manager (Group H) when panel extension state changes.
156
- */
157
- private _notifyPanelExtension;
158
- /**
159
- * Derive panel title from UISpec root element type using i18n strings.
160
- */
161
- private _panelTitleForComponent;
162
- /**
163
- * Update the panel top bar navigation state and title.
164
- */
165
- private _updatePanelTopBar;
166
- /**
167
- * Set panel topbar title during loading (before actual panel content arrives).
168
- * Maps backend pending types to the same i18n titles used for final content.
169
- */
170
- private _updatePanelTopBarForLoading;
171
- /**
172
- * Map UISpec component types to PanelContentType for the extended mode manager.
173
- */
174
- private _updateExtendedModeForPanel;
175
- /** Navigate to the previous panel thread. */
176
- private _navigatePanelBack;
177
- /** Navigate to the next panel thread. */
178
- private _navigatePanelForward;
179
- /**
180
- * Panel route shaping:
181
- * - product details => expanded LHS panel (`ProductDetailsPanel`)
182
- * - all other panel-routed specs keep their original component types
183
- */
184
- private _toPanelSpec;
185
146
  }
186
147
  export declare function createChatWidget(): GengageChat;
187
148
  export type { ChatWidgetConfig, ChatMessage, ChatSession, ChatUIComponents, ChatI18n, ChatRendererConfig, ChatUISpecRenderContext, ChatUISpecRegistry, ProductSortState, SerializableChatMessage, } from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chat/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chat/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * KVKK notice filtering and caching helpers.
3
+ *
4
+ * KVKK (Kişisel Verilerin Korunması Kanunu) is Turkey's data protection law.
5
+ * When the backend streams a response containing a KVKK notice, we:
6
+ * 1. Strip the KVKK block from the visible bot text
7
+ * 2. Show a banner on first encounter (per account)
8
+ * 3. Mark it as shown in localStorage to avoid repeat banners
9
+ */
10
+ export declare function containsKvkk(html: string): boolean;
11
+ export declare function isKvkkShown(accountId: string): boolean;
12
+ export declare function markKvkkShown(accountId: string): void;
13
+ /**
14
+ * Strip the KVKK portion from bot HTML.
15
+ * KVKK is typically wrapped in a `<div style="...">` at the start.
16
+ * We remove the first block-level element that contains a KVKK marker.
17
+ */
18
+ export declare function stripKvkkBlock(html: string): string;
19
+ export declare function extractKvkkBlock(html: string): string | null;
20
+ export declare function localeToOutputLanguage(locale?: string): string;
21
+ //# sourceMappingURL=kvkk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kvkk.d.ts","sourceRoot":"","sources":["../../src/chat/kvkk.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGlD;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAMtD;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAMrD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAWnD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQ5D;AASD,wBAAgB,sBAAsB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAG9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/chat/locales/en.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,QAsC1B,CAAC"}
1
+ {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/chat/locales/en.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,QAyD1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tr.d.ts","sourceRoot":"","sources":["../../../src/chat/locales/tr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,QAsC1B,CAAC"}
1
+ {"version":3,"file":"tr.d.ts","sourceRoot":"","sources":["../../../src/chat/locales/tr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,QAyD1B,CAAC"}