@thoughtspot/visual-embed-sdk 1.50.1 → 1.51.0-test

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 (238) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/config.d.ts +1 -0
  3. package/cjs/src/config.d.ts.map +1 -1
  4. package/cjs/src/config.js +2 -1
  5. package/cjs/src/config.js.map +1 -1
  6. package/cjs/src/css-variables.d.ts +63 -0
  7. package/cjs/src/css-variables.d.ts.map +1 -1
  8. package/cjs/src/embed/app.d.ts +148 -25
  9. package/cjs/src/embed/app.d.ts.map +1 -1
  10. package/cjs/src/embed/app.js +74 -37
  11. package/cjs/src/embed/app.js.map +1 -1
  12. package/cjs/src/embed/app.spec.js +571 -150
  13. package/cjs/src/embed/app.spec.js.map +1 -1
  14. package/cjs/src/embed/base.d.ts +1 -1
  15. package/cjs/src/embed/base.js +1 -1
  16. package/cjs/src/embed/conversation.d.ts +375 -2
  17. package/cjs/src/embed/conversation.d.ts.map +1 -1
  18. package/cjs/src/embed/conversation.js +21 -15
  19. package/cjs/src/embed/conversation.js.map +1 -1
  20. package/cjs/src/embed/conversation.spec.js +323 -17
  21. package/cjs/src/embed/conversation.spec.js.map +1 -1
  22. package/cjs/src/embed/events.spec.js +45 -0
  23. package/cjs/src/embed/events.spec.js.map +1 -1
  24. package/cjs/src/embed/host-events.spec.js +81 -0
  25. package/cjs/src/embed/host-events.spec.js.map +1 -1
  26. package/cjs/src/embed/hostEventClient/contracts.d.ts +15 -0
  27. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  28. package/cjs/src/embed/hostEventClient/contracts.js +1 -0
  29. package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
  30. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +1 -1
  31. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  32. package/cjs/src/embed/hostEventClient/host-event-client.js +1 -0
  33. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  34. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +27 -0
  35. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  36. package/cjs/src/embed/liveboard.d.ts +76 -14
  37. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  38. package/cjs/src/embed/liveboard.js +50 -9
  39. package/cjs/src/embed/liveboard.js.map +1 -1
  40. package/cjs/src/embed/liveboard.spec.js +432 -4
  41. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  42. package/cjs/src/embed/spotter-utils.d.ts +15 -1
  43. package/cjs/src/embed/spotter-utils.d.ts.map +1 -1
  44. package/cjs/src/embed/spotter-utils.js +28 -1
  45. package/cjs/src/embed/spotter-utils.js.map +1 -1
  46. package/cjs/src/embed/spotter-utils.spec.js +129 -0
  47. package/cjs/src/embed/spotter-utils.spec.js.map +1 -1
  48. package/cjs/src/embed/spotter-viz-utils.d.ts +9 -10
  49. package/cjs/src/embed/spotter-viz-utils.d.ts.map +1 -1
  50. package/cjs/src/embed/spotter-viz-utils.js.map +1 -1
  51. package/cjs/src/embed/ts-embed.d.ts +16 -8
  52. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  53. package/cjs/src/embed/ts-embed.js +82 -30
  54. package/cjs/src/embed/ts-embed.js.map +1 -1
  55. package/cjs/src/embed/ts-embed.spec.js +537 -3
  56. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  57. package/cjs/src/index.d.ts +3 -3
  58. package/cjs/src/index.d.ts.map +1 -1
  59. package/cjs/src/index.js +3 -2
  60. package/cjs/src/index.js.map +1 -1
  61. package/cjs/src/mixpanel-service.d.ts +4 -0
  62. package/cjs/src/mixpanel-service.d.ts.map +1 -1
  63. package/cjs/src/mixpanel-service.js +4 -0
  64. package/cjs/src/mixpanel-service.js.map +1 -1
  65. package/cjs/src/react/all-types-export.d.ts +1 -1
  66. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  67. package/cjs/src/react/all-types-export.js +2 -1
  68. package/cjs/src/react/all-types-export.js.map +1 -1
  69. package/cjs/src/react/all-types-export.parity.spec.d.ts +2 -0
  70. package/cjs/src/react/all-types-export.parity.spec.d.ts.map +1 -0
  71. package/cjs/src/react/all-types-export.parity.spec.js +194 -0
  72. package/cjs/src/react/all-types-export.parity.spec.js.map +1 -0
  73. package/cjs/src/react/index.d.ts +66 -32
  74. package/cjs/src/react/index.d.ts.map +1 -1
  75. package/cjs/src/react/index.js +5 -3
  76. package/cjs/src/react/index.js.map +1 -1
  77. package/cjs/src/react/index.spec.js +101 -0
  78. package/cjs/src/react/index.spec.js.map +1 -1
  79. package/cjs/src/types.d.ts +789 -32
  80. package/cjs/src/types.d.ts.map +1 -1
  81. package/cjs/src/types.js +610 -20
  82. package/cjs/src/types.js.map +1 -1
  83. package/cjs/src/utils.spec.js +4 -0
  84. package/cjs/src/utils.spec.js.map +1 -1
  85. package/dist/{index-fCne7kmU.js → index-Bivg-mDx.js} +1 -1
  86. package/dist/src/config.d.ts +1 -0
  87. package/dist/src/config.d.ts.map +1 -1
  88. package/dist/src/css-variables.d.ts +63 -0
  89. package/dist/src/css-variables.d.ts.map +1 -1
  90. package/dist/src/embed/app.d.ts +148 -25
  91. package/dist/src/embed/app.d.ts.map +1 -1
  92. package/dist/src/embed/base.d.ts +1 -1
  93. package/dist/src/embed/conversation.d.ts +375 -2
  94. package/dist/src/embed/conversation.d.ts.map +1 -1
  95. package/dist/src/embed/hostEventClient/contracts.d.ts +15 -0
  96. package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  97. package/dist/src/embed/hostEventClient/host-event-client.d.ts +1 -1
  98. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  99. package/dist/src/embed/liveboard.d.ts +76 -14
  100. package/dist/src/embed/liveboard.d.ts.map +1 -1
  101. package/dist/src/embed/spotter-utils.d.ts +15 -1
  102. package/dist/src/embed/spotter-utils.d.ts.map +1 -1
  103. package/dist/src/embed/spotter-viz-utils.d.ts +9 -10
  104. package/dist/src/embed/spotter-viz-utils.d.ts.map +1 -1
  105. package/dist/src/embed/ts-embed.d.ts +16 -8
  106. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  107. package/dist/src/index.d.ts +3 -3
  108. package/dist/src/index.d.ts.map +1 -1
  109. package/dist/src/mixpanel-service.d.ts +4 -0
  110. package/dist/src/mixpanel-service.d.ts.map +1 -1
  111. package/dist/src/react/all-types-export.d.ts +1 -1
  112. package/dist/src/react/all-types-export.d.ts.map +1 -1
  113. package/dist/src/react/all-types-export.parity.spec.d.ts +2 -0
  114. package/dist/src/react/all-types-export.parity.spec.d.ts.map +1 -0
  115. package/dist/src/react/index.d.ts +66 -32
  116. package/dist/src/react/index.d.ts.map +1 -1
  117. package/dist/src/types.d.ts +789 -32
  118. package/dist/src/types.d.ts.map +1 -1
  119. package/dist/tsembed-react.es.js +878 -120
  120. package/dist/tsembed-react.js +877 -119
  121. package/dist/tsembed.es.js +936 -181
  122. package/dist/tsembed.js +938 -183
  123. package/dist/visual-embed-sdk-react-full.d.ts +1553 -128
  124. package/dist/visual-embed-sdk-react.d.ts +1555 -129
  125. package/dist/visual-embed-sdk.d.ts +1499 -100
  126. package/lib/package.json +1 -1
  127. package/lib/src/config.d.ts +1 -0
  128. package/lib/src/config.d.ts.map +1 -1
  129. package/lib/src/config.js +1 -0
  130. package/lib/src/config.js.map +1 -1
  131. package/lib/src/css-variables.d.ts +63 -0
  132. package/lib/src/css-variables.d.ts.map +1 -1
  133. package/lib/src/embed/app.d.ts +148 -25
  134. package/lib/src/embed/app.d.ts.map +1 -1
  135. package/lib/src/embed/app.js +75 -38
  136. package/lib/src/embed/app.js.map +1 -1
  137. package/lib/src/embed/app.spec.js +572 -151
  138. package/lib/src/embed/app.spec.js.map +1 -1
  139. package/lib/src/embed/base.d.ts +1 -1
  140. package/lib/src/embed/base.js +1 -1
  141. package/lib/src/embed/conversation.d.ts +375 -2
  142. package/lib/src/embed/conversation.d.ts.map +1 -1
  143. package/lib/src/embed/conversation.js +23 -17
  144. package/lib/src/embed/conversation.js.map +1 -1
  145. package/lib/src/embed/conversation.spec.js +323 -17
  146. package/lib/src/embed/conversation.spec.js.map +1 -1
  147. package/lib/src/embed/events.spec.js +45 -0
  148. package/lib/src/embed/events.spec.js.map +1 -1
  149. package/lib/src/embed/host-events.spec.js +81 -0
  150. package/lib/src/embed/host-events.spec.js.map +1 -1
  151. package/lib/src/embed/hostEventClient/contracts.d.ts +15 -0
  152. package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  153. package/lib/src/embed/hostEventClient/contracts.js +1 -0
  154. package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
  155. package/lib/src/embed/hostEventClient/host-event-client.d.ts +1 -1
  156. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  157. package/lib/src/embed/hostEventClient/host-event-client.js +1 -0
  158. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  159. package/lib/src/embed/hostEventClient/host-event-client.spec.js +27 -0
  160. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  161. package/lib/src/embed/liveboard.d.ts +76 -14
  162. package/lib/src/embed/liveboard.d.ts.map +1 -1
  163. package/lib/src/embed/liveboard.js +50 -9
  164. package/lib/src/embed/liveboard.js.map +1 -1
  165. package/lib/src/embed/liveboard.spec.js +432 -4
  166. package/lib/src/embed/liveboard.spec.js.map +1 -1
  167. package/lib/src/embed/spotter-utils.d.ts +15 -1
  168. package/lib/src/embed/spotter-utils.d.ts.map +1 -1
  169. package/lib/src/embed/spotter-utils.js +25 -0
  170. package/lib/src/embed/spotter-utils.js.map +1 -1
  171. package/lib/src/embed/spotter-utils.spec.js +130 -1
  172. package/lib/src/embed/spotter-utils.spec.js.map +1 -1
  173. package/lib/src/embed/spotter-viz-utils.d.ts +9 -10
  174. package/lib/src/embed/spotter-viz-utils.d.ts.map +1 -1
  175. package/lib/src/embed/spotter-viz-utils.js.map +1 -1
  176. package/lib/src/embed/ts-embed.d.ts +16 -8
  177. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  178. package/lib/src/embed/ts-embed.js +82 -30
  179. package/lib/src/embed/ts-embed.js.map +1 -1
  180. package/lib/src/embed/ts-embed.spec.js +537 -3
  181. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  182. package/lib/src/index.d.ts +3 -3
  183. package/lib/src/index.d.ts.map +1 -1
  184. package/lib/src/index.js +2 -2
  185. package/lib/src/index.js.map +1 -1
  186. package/lib/src/mixpanel-service.d.ts +4 -0
  187. package/lib/src/mixpanel-service.d.ts.map +1 -1
  188. package/lib/src/mixpanel-service.js +4 -0
  189. package/lib/src/mixpanel-service.js.map +1 -1
  190. package/lib/src/react/all-types-export.d.ts +1 -1
  191. package/lib/src/react/all-types-export.d.ts.map +1 -1
  192. package/lib/src/react/all-types-export.js +1 -1
  193. package/lib/src/react/all-types-export.js.map +1 -1
  194. package/lib/src/react/all-types-export.parity.spec.d.ts +2 -0
  195. package/lib/src/react/all-types-export.parity.spec.d.ts.map +1 -0
  196. package/lib/src/react/all-types-export.parity.spec.js +191 -0
  197. package/lib/src/react/all-types-export.parity.spec.js.map +1 -0
  198. package/lib/src/react/index.d.ts +66 -32
  199. package/lib/src/react/index.d.ts.map +1 -1
  200. package/lib/src/react/index.js +5 -3
  201. package/lib/src/react/index.js.map +1 -1
  202. package/lib/src/react/index.spec.js +102 -1
  203. package/lib/src/react/index.spec.js.map +1 -1
  204. package/lib/src/types.d.ts +789 -32
  205. package/lib/src/types.d.ts.map +1 -1
  206. package/lib/src/types.js +610 -20
  207. package/lib/src/types.js.map +1 -1
  208. package/lib/src/utils.spec.js +4 -0
  209. package/lib/src/utils.spec.js.map +1 -1
  210. package/lib/src/visual-embed-sdk.d.ts +1499 -100
  211. package/package.json +1 -1
  212. package/src/config.ts +1 -0
  213. package/src/css-variables.ts +77 -0
  214. package/src/embed/app.spec.ts +729 -188
  215. package/src/embed/app.ts +240 -75
  216. package/src/embed/base.ts +1 -1
  217. package/src/embed/conversation.spec.ts +379 -20
  218. package/src/embed/conversation.ts +412 -18
  219. package/src/embed/events.spec.ts +56 -0
  220. package/src/embed/host-events.spec.ts +118 -0
  221. package/src/embed/hostEventClient/contracts.ts +16 -0
  222. package/src/embed/hostEventClient/host-event-client.spec.ts +46 -0
  223. package/src/embed/hostEventClient/host-event-client.ts +3 -2
  224. package/src/embed/liveboard.spec.ts +565 -4
  225. package/src/embed/liveboard.ts +150 -29
  226. package/src/embed/spotter-utils.spec.ts +140 -1
  227. package/src/embed/spotter-utils.ts +36 -1
  228. package/src/embed/spotter-viz-utils.ts +9 -10
  229. package/src/embed/ts-embed.spec.ts +699 -3
  230. package/src/embed/ts-embed.ts +99 -35
  231. package/src/index.ts +44 -2
  232. package/src/mixpanel-service.ts +4 -0
  233. package/src/react/all-types-export.parity.spec.ts +208 -0
  234. package/src/react/all-types-export.ts +22 -0
  235. package/src/react/index.spec.tsx +158 -0
  236. package/src/react/index.tsx +70 -33
  237. package/src/types.ts +791 -30
  238. package/src/utils.spec.ts +5 -0
@@ -17,6 +17,37 @@ export declare enum SpotterQueryMode {
17
17
  FAST_SEARCH = "fastSearch",
18
18
  RESEARCH = "research"
19
19
  }
20
+ /**
21
+ * Configuration for the pin/unpin conversation feature in the Spotter sidebar.
22
+ * Grouped into one object because pin exposes several related settings
23
+ * (enable + label overrides), unlike single-item actions like rename or
24
+ * delete.
25
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
26
+ */
27
+ export interface SpotterChatPinConfig {
28
+ /**
29
+ * Enables the pin/unpin conversation feature in embedded Spotter. Disabled
30
+ * by default — hosts must opt in. When off, the Pin/Unpin menu entry and
31
+ * the pin glyph are hidden and the PinSpotterConversation /
32
+ * UnpinSpotterConversation host events are no-ops. Native (non-embedded)
33
+ * Spotter is unaffected and ships pin enabled.
34
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
35
+ * @default false
36
+ */
37
+ enabled?: boolean;
38
+ /**
39
+ * Custom label text for the pin action in the conversation edit menu.
40
+ * Defaults to translated "Pin" text.
41
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
42
+ */
43
+ pinLabel?: string;
44
+ /**
45
+ * Custom label text for the unpin action in the conversation edit menu.
46
+ * Defaults to translated "Unpin" text.
47
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
48
+ */
49
+ unpinLabel?: string;
50
+ }
20
51
  /**
21
52
  * Configuration for the Spotter sidebar.
22
53
  * Can be used in SpotterEmbed and AppEmbed.
@@ -54,6 +85,12 @@ export interface SpotterSidebarViewConfig {
54
85
  * @version SDK: 1.47.0 | ThoughtSpot: 26.4.0.cl
55
86
  */
56
87
  spotterChatDeleteLabel?: string;
88
+ /**
89
+ * Pin/unpin conversation feature config (enable + label overrides).
90
+ * Off by default in embed — hosts opt in via `enabled`.
91
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
92
+ */
93
+ spotterChatPinConfig?: SpotterChatPinConfig;
57
94
  /**
58
95
  * Custom title text for the delete conversation confirmation modal.
59
96
  * Defaults to translated "Delete chat" text.
@@ -104,6 +141,165 @@ export interface SpotterSidebarViewConfig {
104
141
  */
105
142
  spotterAnalystsLabel?: string;
106
143
  }
144
+ /**
145
+ * Configuration for the Spotter conversation sharing feature.
146
+ * Can be used in SpotterEmbed and AppEmbed.
147
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
148
+ * @group Embed components
149
+ */
150
+ export interface SpotterShareConversationConfig {
151
+ /**
152
+ * Enables sharing of the conversation.
153
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
154
+ * @default false
155
+ */
156
+ enableShareConversation?: boolean;
157
+ /**
158
+ * Header Share button + sidebar Share item label.
159
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
160
+ * @default "Share"
161
+ */
162
+ spotterShareLabel?: string;
163
+ /**
164
+ * Share modal title.
165
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
166
+ */
167
+ spotterShareModalTitle?: string;
168
+ /**
169
+ * Modal confirm button label.
170
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
171
+ * @default "Share"
172
+ */
173
+ spotterShareConfirmLabel?: string;
174
+ /**
175
+ * Modal cancel button label.
176
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
177
+ * @default "Cancel"
178
+ */
179
+ spotterShareCancelLabel?: string;
180
+ /**
181
+ * "Add users or groups" label.
182
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
183
+ */
184
+ spotterShareAddUsersLabel?: string;
185
+ /**
186
+ * Empty-state title ("No users added yet").
187
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
188
+ */
189
+ spotterShareEmptyTitle?: string;
190
+ /**
191
+ * Empty-state subtitle ("Not shared with any user").
192
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
193
+ */
194
+ spotterShareEmptySubtitle?: string;
195
+ /**
196
+ * "Include new messages since last shared version" checkbox label.
197
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
198
+ */
199
+ spotterShareIncludeNewMessagesLabel?: string;
200
+ /**
201
+ * Footer note when the snapshot is current ("…up to the current moment…").
202
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
203
+ */
204
+ spotterShareUpToCurrentLabel?: string;
205
+ /**
206
+ * Stale-snapshot info banner text ("All added users and groups will receive…").
207
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
208
+ */
209
+ spotterShareStaleInfoLabel?: string;
210
+ /**
211
+ * Read-only shared-view data-access banner message.
212
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
213
+ */
214
+ spotterSharedConversationBannerMessage?: string;
215
+ /**
216
+ * Read-only shared-view Exit button label.
217
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
218
+ * @default "Exit"
219
+ */
220
+ spotterSharedConversationExitLabel?: string;
221
+ }
222
+ /**
223
+ * A single starter prompt question shown under a category pill.
224
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
225
+ * @group Embed components
226
+ */
227
+ export interface StarterPromptQuestion {
228
+ /**
229
+ * Short label shown as a clickable suggestion. Falls back to `prompt` when
230
+ * omitted. ThoughtSpot truncates it beyond 80 characters.
231
+ */
232
+ label?: string;
233
+ /**
234
+ * Prompt text sent to Spotter on click. ThoughtSpot truncates it beyond
235
+ * 300 characters.
236
+ */
237
+ prompt: string;
238
+ }
239
+ /**
240
+ * Configuration for a starter prompt category with questions
241
+ * (`quick` and `research`).
242
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
243
+ * @group Embed components
244
+ */
245
+ export interface StarterPromptCategory {
246
+ /**
247
+ * Overrides the default category pill label. ThoughtSpot truncates it
248
+ * beyond 30 characters.
249
+ */
250
+ label?: string;
251
+ /**
252
+ * Replaces the backend-generated prompts. ThoughtSpot renders the first 4
253
+ * and drops any entry without a `prompt`.
254
+ */
255
+ questions?: StarterPromptQuestion[];
256
+ }
257
+ /**
258
+ * Configuration for the Data Literacy starter prompt category.
259
+ * Only the label is customizable; the prompt text comes from the backend.
260
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
261
+ * @group Embed components
262
+ */
263
+ export interface StarterPreviewDataCategory {
264
+ /**
265
+ * Overrides the default category pill label. ThoughtSpot truncates it
266
+ * beyond 30 characters.
267
+ */
268
+ label?: string;
269
+ }
270
+ /**
271
+ * Content configuration for the Spotter starter prompts.
272
+ * Keys are fixed: `quick` (Basic Search), `research` (Deep Analysis),
273
+ * `previewData` (Data Literacy) and `liveboard` (Liveboard chat panel).
274
+ *
275
+ * Note: this controls the Spotter chat interface only. The starter prompts on
276
+ * the Liveboard SpotterViz surface are configured separately through
277
+ * {@link SpotterVizConfig.customStarterPrompts}.
278
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
279
+ * @group Embed components
280
+ */
281
+ export interface StarterPromptsConfig {
282
+ /**
283
+ * Turns the starter prompts surface on. Must be set explicitly, an
284
+ * unset flag leaves the surface off.
285
+ *
286
+ * Either this or `enableStarterPrompts` turns the surface on, so `false`
287
+ * here does not switch it off while `enableStarterPrompts` is `true`.
288
+ * @default false
289
+ */
290
+ enable?: boolean;
291
+ /** Basic Search category configuration. */
292
+ quick?: StarterPromptCategory;
293
+ /** Deep Analysis category configuration. */
294
+ research?: StarterPromptCategory;
295
+ /** Data Literacy category configuration. */
296
+ previewData?: StarterPreviewDataCategory;
297
+ /**
298
+ * Starter prompts for the Spotter chat panel on a Liveboard.
299
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
300
+ */
301
+ liveboard?: StarterPromptQuestion[];
302
+ }
107
303
  /**
108
304
  * Configuration for customizing Spotter chat UI branding.
109
305
  * @version SDK: 1.46.0 | ThoughtSpot: 26.4.0.cl
@@ -144,11 +340,83 @@ export interface SpotterChatViewConfig {
144
340
  /**
145
341
  * Enables starter prompts in the Spotter chat interface.
146
342
  *
147
- * Supported embed types: SpotterEmbed, LiveboardEmbed, AppEmbed
343
+ * Either this or `starterPrompts.enable` turns the surface on, so it stays
344
+ * on while this is `true` even if `starterPrompts.enable` is `false`.
345
+ *
346
+ * Supported embed types: `SpotterEmbed`, `LiveboardEmbed`, `AppEmbed`
148
347
  * @version SDK: 1.51.0 | ThoughtSpot: 26.8.0.cl
149
348
  * @default false
150
349
  */
151
350
  enableStarterPrompts?: boolean;
351
+ /**
352
+ * Customizes the labels and questions of the Spotter starter prompts.
353
+ * Individual pills are hidden or shown with `hiddenActions` /
354
+ * `visibleActions` using `Action.QuickSearchPill`,
355
+ * `Action.DeepAnalysisPill` and `Action.DataLiteracyPill`.
356
+ *
357
+ * Supported embed types: `SpotterEmbed`, `LiveboardEmbed`, `AppEmbed`
358
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
359
+ * @example
360
+ * ```js
361
+ * const embed = new SpotterEmbed('#tsEmbed', {
362
+ * worksheetId: 'worksheet-id',
363
+ * hiddenActions: [Action.DeepAnalysisPill],
364
+ * spotterChatConfig: {
365
+ * starterPrompts: {
366
+ * enable: true,
367
+ * quick: {
368
+ * label: 'Quick questions',
369
+ * questions: [
370
+ * { label: 'Top products', prompt: 'What are the top products by revenue?' },
371
+ * ],
372
+ * },
373
+ * previewData: { label: 'Explore your data' },
374
+ * },
375
+ * },
376
+ * })
377
+ * ```
378
+ */
379
+ starterPrompts?: StarterPromptsConfig;
380
+ /**
381
+ * Opens the Spotter chat panel when the Liveboard loads.
382
+ *
383
+ * Supported embed types: `LiveboardEmbed`, `AppEmbed`
384
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
385
+ * @default true
386
+ * @example
387
+ * ```js
388
+ * const embed = new LiveboardEmbed('#tsEmbed', {
389
+ * liveboardId: 'liveboard-id',
390
+ * spotterChatConfig: {
391
+ * openSpotterOnLiveboardByDefault: false,
392
+ * },
393
+ * })
394
+ * ```
395
+ */
396
+ openSpotterOnLiveboardByDefault?: boolean;
397
+ }
398
+ /**
399
+ * Configuration for the Spotter Analyst experience.
400
+ * Can be used in SpotterEmbed.
401
+ * @group Embed components
402
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
403
+ * @example
404
+ * ```js
405
+ * const embed = new SpotterEmbed('#tsEmbed', {
406
+ * ... //other embed view config
407
+ * spotterAnalystConfig: {
408
+ * analystId: 'analyst-id-1234',
409
+ * },
410
+ * })
411
+ * ```
412
+ */
413
+ export interface SpotterAnalystConfig {
414
+ /**
415
+ * Pins the embed to a single spotter analyst. Implies no default Spotter
416
+ * and no "Show all".
417
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
418
+ */
419
+ analystId?: string;
152
420
  }
153
421
  /**
154
422
  * The configuration for the embedded spotterEmbed options.
@@ -158,8 +426,43 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, 'primaryAct
158
426
  /**
159
427
  * The ID of the data source object. For example, Model, View, or Table. Spotter uses
160
428
  * this object to query data and generate Answers.
429
+ * This field is optional. If not provided, Spotter loads using the
430
+ * previously selected user data source.
431
+ */
432
+ worksheetId?: string;
433
+ /**
434
+ * The array of data source GUIDs to set on load. Spotter uses
435
+ * these GUIDs to query data and generate Answers.
436
+ * dataSources is preferred over worksheetId if both are provided.
437
+ * The feature is currently behind a feature flag.
438
+ *
439
+ * Supported embed types: `SpotterEmbed`
440
+ * @example
441
+ * ```js
442
+ * const embed = new SpotterEmbed('#tsEmbed', {
443
+ * // ...other embed view config
444
+ * dataSources: ['id-2345', 'id-2345'],
445
+ * });
446
+ * ```
447
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
448
+ */
449
+ dataSources?: string[];
450
+ /**
451
+ * Configuration for the Spotter Analyst experience.
452
+ *
453
+ * Supported embed types: `SpotterEmbed`
454
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
455
+ * @example
456
+ * ```js
457
+ * const embed = new SpotterEmbed('#tsEmbed', {
458
+ * ... //other embed view config
459
+ * spotterAnalystConfig: {
460
+ * analystId: 'analyst-id-1234',
461
+ * },
462
+ * })
463
+ * ```
161
464
  */
162
- worksheetId: string;
465
+ spotterAnalystConfig?: SpotterAnalystConfig;
163
466
  /**
164
467
  * Ability to pass a starting search query to the conversation.
165
468
  */
@@ -319,6 +622,21 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, 'primaryAct
319
622
  * ```
320
623
  */
321
624
  updatedSpotterChatPrompt?: boolean;
625
+ /**
626
+ * showSpotterRadiance : Controls the radiance on the Spotter page.
627
+ *
628
+ * Supported embed types: `SpotterEmbed`
629
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
630
+ * @default false
631
+ * @example
632
+ * ```js
633
+ * const embed = new SpotterEmbed('#tsEmbed', {
634
+ * ... //other embed view config
635
+ * showSpotterRadiance : true,
636
+ * })
637
+ * ```
638
+ */
639
+ showSpotterRadiance?: boolean;
322
640
  /**
323
641
  * Sets the default query mode when Spotter loads — Fast Search or
324
642
  * Research Mode. Applies fresh on every new session for this embed
@@ -395,6 +713,59 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, 'primaryAct
395
713
  * ```
396
714
  */
397
715
  spotterChatConfig?: SpotterChatViewConfig;
716
+ /**
717
+ * Configuration for the Spotter conversation sharing feature.
718
+ *
719
+ * Supported embed types: `SpotterEmbed`, `AppEmbed`
720
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
721
+ * @example
722
+ * ```js
723
+ * const embed = new SpotterEmbed('#tsEmbed', {
724
+ * ... //other embed view config
725
+ * spotterShareConversationConfig: {
726
+ * enableShareConversation: true,
727
+ * },
728
+ * })
729
+ * ```
730
+ */
731
+ spotterShareConversationConfig?: SpotterShareConversationConfig;
732
+ /**
733
+ * The ID of a shared Spotter conversation to open directly in the read-only
734
+ * reader view. Use this to land a share recipient in the shared conversation
735
+ * when they open a host-configured `CONVERSATION_URL` share link: read the
736
+ * `{conversation-id}` from your page URL and pass it here.
737
+ *
738
+ * Requires the Spotter conversation-sharing feature to be enabled
739
+ * (`spotterShareConversationConfig.enableShareConversation`). The recipient
740
+ * must be an authorized sharee — the server returns access-denied otherwise.
741
+ *
742
+ * Supported embed types: `SpotterEmbed`
743
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
744
+ * @example
745
+ * ```js
746
+ * const convId = new URLSearchParams(window.location.search).get('conversation-id');
747
+ * const embed = new SpotterEmbed('#tsEmbed', {
748
+ * ... //other embed view config
749
+ * sharedConversationId: convId,
750
+ * })
751
+ * ```
752
+ */
753
+ sharedConversationId?: string;
754
+ /**
755
+ * updatedSpotterExperience : Controls the updated Spotter experience.
756
+ *
757
+ * Supported embed types: `SpotterEmbed`
758
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
759
+ * @default false
760
+ * @example
761
+ * ```js
762
+ * const embed = new SpotterEmbed('#tsEmbed', {
763
+ * ... //other embed view config
764
+ * updatedSpotterExperience : true,
765
+ * })
766
+ * ```
767
+ */
768
+ updatedSpotterExperience?: boolean;
398
769
  }
399
770
  /**
400
771
  * The configuration for the embedded spotterEmbed options.
@@ -411,7 +782,9 @@ export interface ConversationViewConfig extends SpotterEmbedViewConfig {
411
782
  export interface SpotterAppInitData extends DefaultAppInitData {
412
783
  embedParams?: {
413
784
  spotterSidebarConfig?: SpotterSidebarViewConfig;
785
+ spotterShareConversationConfig?: SpotterShareConversationConfig;
414
786
  visualOverridesParams?: VisualizationOverrides | null;
787
+ starterPrompts?: StarterPromptsConfig;
415
788
  };
416
789
  }
417
790
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../src/embed/conversation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../src/embed/conversation.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import { ERROR_MESSAGE } from '../errors';
2
- import { Param, ErrorDetailsTypes, EmbedErrorCodes } from '../types';
1
+ import { Param } from '../types';
3
2
  import { TsEmbed } from './ts-embed';
4
- import { buildSpotterSidebarAppInitData } from './spotter-utils';
3
+ import { buildSpotterSidebarAppInitData, buildSpotterShareConversationAppInitData, buildStarterPromptsAppInitData } from './spotter-utils';
5
4
  import { getQueryParamString, getFilterQuery, getRuntimeParameters, setParamIfDefined } from '../utils';
6
5
  /**
7
6
  * The query mode Spotter uses when answering a question.
@@ -52,18 +51,12 @@ export class SpotterEmbed extends TsEmbed {
52
51
  */
53
52
  async getAppInitData() {
54
53
  const defaultAppInitData = await super.getAppInitData();
55
- return buildSpotterSidebarAppInitData(defaultAppInitData, this.viewConfig, this.handleError.bind(this));
54
+ const sidebarInitData = buildSpotterSidebarAppInitData(defaultAppInitData, this.viewConfig, this.handleError.bind(this));
55
+ const shareInitData = buildSpotterShareConversationAppInitData(sidebarInitData, this.viewConfig);
56
+ return buildStarterPromptsAppInitData(shareInitData, this.viewConfig);
56
57
  }
57
58
  getEmbedParamsObject() {
58
- const { worksheetId, searchOptions, disableSourceSelection, hideSourceSelection, dataPanelV2, showSpotterLimitations, hideSampleQuestions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, updatedSpotterChatPrompt, defaultQueryMode, enableStopAnswerGenerationEmbed, spotterChatConfig, } = this.viewConfig;
59
- if (!worksheetId) {
60
- this.handleError({
61
- errorType: ErrorDetailsTypes.VALIDATION_ERROR,
62
- message: ERROR_MESSAGE.SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND,
63
- code: EmbedErrorCodes.WORKSHEET_ID_NOT_FOUND,
64
- error: ERROR_MESSAGE.SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND,
65
- });
66
- }
59
+ const { searchOptions, disableSourceSelection, hideSourceSelection, dataPanelV2, updatedSpotterExperience, showSpotterLimitations, hideSampleQuestions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, updatedSpotterChatPrompt, showSpotterRadiance, defaultQueryMode, enableStopAnswerGenerationEmbed, spotterChatConfig, spotterAnalystConfig, } = this.viewConfig;
67
60
  const queryParams = this.getBaseQueryParams();
68
61
  queryParams[Param.SpotterEnabled] = true;
69
62
  // Boolean params
@@ -73,8 +66,10 @@ export class SpotterEmbed extends TsEmbed {
73
66
  setParamIfDefined(queryParams, Param.ShowSpotterLimitations, showSpotterLimitations, true);
74
67
  setParamIfDefined(queryParams, Param.HideSampleQuestions, hideSampleQuestions, true);
75
68
  setParamIfDefined(queryParams, Param.UpdatedSpotterChatPrompt, updatedSpotterChatPrompt, true);
69
+ setParamIfDefined(queryParams, Param.ShowSpotterRadiance, showSpotterRadiance, true);
76
70
  setParamIfDefined(queryParams, Param.DefaultQueryMode, defaultQueryMode);
77
71
  setParamIfDefined(queryParams, Param.EnableStopAnswerGenerationEmbed, enableStopAnswerGenerationEmbed, true);
72
+ setParamIfDefined(queryParams, Param.AnalystId, spotterAnalystConfig === null || spotterAnalystConfig === void 0 ? void 0 : spotterAnalystConfig.analystId);
78
73
  // Handle spotterChatConfig params
79
74
  if (spotterChatConfig) {
80
75
  const { hideToolResponseCardBranding, toolResponseCardBrandingLabel, spotterFileUploadEnabled, spotterFileUploadFileTypes, enableStarterPrompts, } = spotterChatConfig;
@@ -86,11 +81,18 @@ export class SpotterEmbed extends TsEmbed {
86
81
  queryParams[Param.SpotterFileUploadFileTypes] = JSON.stringify(spotterFileUploadFileTypes);
87
82
  }
88
83
  }
84
+ setParamIfDefined(queryParams, Param.UpdatedSpotterExperience, updatedSpotterExperience, true);
89
85
  return queryParams;
90
86
  }
91
87
  getIframeSrc() {
92
- const { worksheetId, searchOptions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, } = this.viewConfig;
93
- const path = 'insights/conv-assist';
88
+ const { worksheetId, searchOptions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, sharedConversationId, dataSources, } = this.viewConfig;
89
+ // Deep-link into the read-only shared-conversation reader view when a
90
+ // shared conversation id is supplied (e.g. a recipient landing from a
91
+ // host-configured CONVERSATION_URL share link); otherwise the normal
92
+ // Spotter conversation surface.
93
+ const path = sharedConversationId
94
+ ? `insights/conv-assist/s/${encodeURIComponent(sharedConversationId)}`
95
+ : 'insights/conv-assist';
94
96
  const queryParams = this.getEmbedParamsObject();
95
97
  let query = '';
96
98
  const queryParamsString = getQueryParamString(queryParams, true);
@@ -106,8 +108,12 @@ export class SpotterEmbed extends TsEmbed {
106
108
  query += `&${parameterQuery}`;
107
109
  }
108
110
  const tsPostHashParams = this.getThoughtSpotPostUrlParams({
109
- worksheet: worksheetId,
110
- query: (searchOptions === null || searchOptions === void 0 ? void 0 : searchOptions.searchQuery) || '',
111
+ ...(!(Array.isArray(dataSources) && dataSources.length > 0) && worksheetId
112
+ && { worksheet: worksheetId }),
113
+ ...((searchOptions === null || searchOptions === void 0 ? void 0 : searchOptions.searchQuery) && { query: searchOptions.searchQuery }),
114
+ ...(Array.isArray(dataSources)
115
+ && dataSources.length > 0
116
+ && { dataSources: JSON.stringify(dataSources) }),
111
117
  });
112
118
  return `${this.getEmbedBasePath(query)}/embed/${path}${tsPostHashParams}`;
113
119
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../../src/embed/conversation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../../src/embed/conversation.ts"],"names":[],"mappings":"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"}