@thoughtspot/visual-embed-sdk 1.39.2 → 1.39.3

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 (157) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/config.spec.js +9 -0
  3. package/cjs/src/config.spec.js.map +1 -1
  4. package/cjs/src/embed/app.d.ts +19 -15
  5. package/cjs/src/embed/app.d.ts.map +1 -1
  6. package/cjs/src/embed/app.js +23 -2
  7. package/cjs/src/embed/app.js.map +1 -1
  8. package/cjs/src/embed/app.spec.js +56 -8
  9. package/cjs/src/embed/app.spec.js.map +1 -1
  10. package/cjs/src/embed/bodyless-conversation.d.ts +23 -7
  11. package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -1
  12. package/cjs/src/embed/bodyless-conversation.js +31 -5
  13. package/cjs/src/embed/bodyless-conversation.js.map +1 -1
  14. package/cjs/src/embed/bodyless-conversation.spec.js +8 -190
  15. package/cjs/src/embed/bodyless-conversation.spec.js.map +1 -1
  16. package/cjs/src/embed/conversation.spec.js +28 -0
  17. package/cjs/src/embed/conversation.spec.js.map +1 -1
  18. package/cjs/src/embed/embedConfig.d.ts +9 -7
  19. package/cjs/src/embed/embedConfig.d.ts.map +1 -1
  20. package/cjs/src/embed/embedConfig.js +9 -7
  21. package/cjs/src/embed/embedConfig.js.map +1 -1
  22. package/cjs/src/embed/liveboard.d.ts +0 -17
  23. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  24. package/cjs/src/embed/liveboard.js +2 -4
  25. package/cjs/src/embed/liveboard.js.map +1 -1
  26. package/cjs/src/embed/liveboard.spec.js +12 -11
  27. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  28. package/cjs/src/errors.d.ts +1 -0
  29. package/cjs/src/errors.d.ts.map +1 -1
  30. package/cjs/src/errors.js +1 -0
  31. package/cjs/src/errors.js.map +1 -1
  32. package/cjs/src/index.d.ts +2 -2
  33. package/cjs/src/index.d.ts.map +1 -1
  34. package/cjs/src/index.js +2 -1
  35. package/cjs/src/index.js.map +1 -1
  36. package/cjs/src/react/all-types-export.d.ts +1 -1
  37. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  38. package/cjs/src/react/all-types-export.js +3 -2
  39. package/cjs/src/react/all-types-export.js.map +1 -1
  40. package/cjs/src/react/index.d.ts +73 -20
  41. package/cjs/src/react/index.d.ts.map +1 -1
  42. package/cjs/src/react/index.js +79 -42
  43. package/cjs/src/react/index.js.map +1 -1
  44. package/cjs/src/react/index.spec.js +438 -100
  45. package/cjs/src/react/index.spec.js.map +1 -1
  46. package/cjs/src/types.d.ts +262 -6
  47. package/cjs/src/types.d.ts.map +1 -1
  48. package/cjs/src/types.js +228 -2
  49. package/cjs/src/types.js.map +1 -1
  50. package/cjs/src/utils/global-styles.js +1 -1
  51. package/cjs/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
  52. package/cjs/src/utils/graphql/nlsService/conversation-service.js +7 -1
  53. package/cjs/src/utils/graphql/nlsService/conversation-service.js.map +1 -1
  54. package/cjs/src/utils.spec.js +25 -0
  55. package/cjs/src/utils.spec.js.map +1 -1
  56. package/dist/{index-CmEQfuE3.js → index-ZrE8YYq8.js} +1 -1
  57. package/dist/src/embed/app.d.ts +19 -15
  58. package/dist/src/embed/app.d.ts.map +1 -1
  59. package/dist/src/embed/bodyless-conversation.d.ts +23 -7
  60. package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
  61. package/dist/src/embed/embedConfig.d.ts +9 -7
  62. package/dist/src/embed/embedConfig.d.ts.map +1 -1
  63. package/dist/src/embed/liveboard.d.ts +0 -17
  64. package/dist/src/embed/liveboard.d.ts.map +1 -1
  65. package/dist/src/errors.d.ts +1 -0
  66. package/dist/src/errors.d.ts.map +1 -1
  67. package/dist/src/index.d.ts +2 -2
  68. package/dist/src/index.d.ts.map +1 -1
  69. package/dist/src/react/all-types-export.d.ts +1 -1
  70. package/dist/src/react/all-types-export.d.ts.map +1 -1
  71. package/dist/src/react/index.d.ts +73 -20
  72. package/dist/src/react/index.d.ts.map +1 -1
  73. package/dist/src/types.d.ts +262 -6
  74. package/dist/src/types.d.ts.map +1 -1
  75. package/dist/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
  76. package/dist/tsembed-react.es.js +385 -71
  77. package/dist/tsembed-react.js +385 -69
  78. package/dist/tsembed.es.js +303 -24
  79. package/dist/tsembed.js +301 -22
  80. package/dist/visual-embed-sdk-react-full.d.ts +386 -72
  81. package/dist/visual-embed-sdk-react.d.ts +386 -72
  82. package/dist/visual-embed-sdk.d.ts +314 -53
  83. package/lib/package.json +1 -1
  84. package/lib/src/config.spec.js +9 -0
  85. package/lib/src/config.spec.js.map +1 -1
  86. package/lib/src/embed/app.d.ts +19 -15
  87. package/lib/src/embed/app.d.ts.map +1 -1
  88. package/lib/src/embed/app.js +22 -1
  89. package/lib/src/embed/app.js.map +1 -1
  90. package/lib/src/embed/app.spec.js +58 -10
  91. package/lib/src/embed/app.spec.js.map +1 -1
  92. package/lib/src/embed/bodyless-conversation.d.ts +23 -7
  93. package/lib/src/embed/bodyless-conversation.d.ts.map +1 -1
  94. package/lib/src/embed/bodyless-conversation.js +30 -5
  95. package/lib/src/embed/bodyless-conversation.js.map +1 -1
  96. package/lib/src/embed/bodyless-conversation.spec.js +9 -191
  97. package/lib/src/embed/bodyless-conversation.spec.js.map +1 -1
  98. package/lib/src/embed/conversation.spec.js +30 -2
  99. package/lib/src/embed/conversation.spec.js.map +1 -1
  100. package/lib/src/embed/embedConfig.d.ts +9 -7
  101. package/lib/src/embed/embedConfig.d.ts.map +1 -1
  102. package/lib/src/embed/embedConfig.js +9 -7
  103. package/lib/src/embed/embedConfig.js.map +1 -1
  104. package/lib/src/embed/liveboard.d.ts +0 -17
  105. package/lib/src/embed/liveboard.d.ts.map +1 -1
  106. package/lib/src/embed/liveboard.js +2 -4
  107. package/lib/src/embed/liveboard.js.map +1 -1
  108. package/lib/src/embed/liveboard.spec.js +12 -11
  109. package/lib/src/embed/liveboard.spec.js.map +1 -1
  110. package/lib/src/errors.d.ts +1 -0
  111. package/lib/src/errors.d.ts.map +1 -1
  112. package/lib/src/errors.js +1 -0
  113. package/lib/src/errors.js.map +1 -1
  114. package/lib/src/index.d.ts +2 -2
  115. package/lib/src/index.d.ts.map +1 -1
  116. package/lib/src/index.js +2 -2
  117. package/lib/src/index.js.map +1 -1
  118. package/lib/src/react/all-types-export.d.ts +1 -1
  119. package/lib/src/react/all-types-export.d.ts.map +1 -1
  120. package/lib/src/react/all-types-export.js +1 -1
  121. package/lib/src/react/all-types-export.js.map +1 -1
  122. package/lib/src/react/index.d.ts +73 -20
  123. package/lib/src/react/index.d.ts.map +1 -1
  124. package/lib/src/react/index.js +79 -43
  125. package/lib/src/react/index.js.map +1 -1
  126. package/lib/src/react/index.spec.js +441 -103
  127. package/lib/src/react/index.spec.js.map +1 -1
  128. package/lib/src/types.d.ts +262 -6
  129. package/lib/src/types.d.ts.map +1 -1
  130. package/lib/src/types.js +228 -2
  131. package/lib/src/types.js.map +1 -1
  132. package/lib/src/utils/global-styles.js +1 -1
  133. package/lib/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
  134. package/lib/src/utils/graphql/nlsService/conversation-service.js +7 -1
  135. package/lib/src/utils/graphql/nlsService/conversation-service.js.map +1 -1
  136. package/lib/src/utils.spec.js +26 -1
  137. package/lib/src/utils.spec.js.map +1 -1
  138. package/lib/src/visual-embed-sdk.d.ts +315 -54
  139. package/package.json +1 -1
  140. package/src/config.spec.ts +11 -0
  141. package/src/embed/app.spec.ts +90 -23
  142. package/src/embed/app.ts +27 -15
  143. package/src/embed/bodyless-conversation.spec.ts +9 -203
  144. package/src/embed/bodyless-conversation.ts +34 -10
  145. package/src/embed/conversation.spec.ts +40 -2
  146. package/src/embed/embedConfig.ts +10 -8
  147. package/src/embed/liveboard.spec.ts +5 -4
  148. package/src/embed/liveboard.ts +2 -22
  149. package/src/errors.ts +1 -0
  150. package/src/index.ts +2 -0
  151. package/src/react/all-types-export.ts +2 -1
  152. package/src/react/index.spec.tsx +558 -157
  153. package/src/react/index.tsx +117 -51
  154. package/src/types.ts +301 -44
  155. package/src/utils/global-styles.ts +1 -1
  156. package/src/utils/graphql/nlsService/conversation-service.ts +7 -1
  157. package/src/utils.spec.ts +29 -0
@@ -233,33 +233,42 @@ export const SpotterEmbed: React.ForwardRefExoticComponent<SpotterEmbedProps & R
233
233
  * ```
234
234
  */
235
235
  export const ConversationEmbed: React.ForwardRefExoticComponent<ConversationEmbedProps & React.RefAttributes<_ConversationEmbed>>;
236
- interface SpotterAgentEmbedProps extends EmbedProps, SpotterAgentEmbedViewConfig {
236
+ /**
237
+ * React component for individual conversation messages from SpotterAgent.
238
+ * This component is used internally by the useSpotterAgent hook.
239
+ * @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
240
+ */
241
+ interface ConversationMessageProps extends EmbedProps, SpotterAgentMessageViewConfig {
237
242
  }
243
+ export const ConversationMessage: React.ForwardRefExoticComponent<ConversationMessageProps & React.RefAttributes<_ConversationMessage>>;
238
244
  /**
239
- * React component for SpotterAgent embed, which can be integrated inside
240
- * chatbots or other conversational interfaces.
245
+ * React component for displaying individual conversation messages from SpotterAgent.
246
+ *
247
+ * This component renders a single message response from your ThoughtSpot conversation,
248
+ * showing charts, visualizations, or text responses based on the user's query.
249
+ *
241
250
  * @example
242
251
  * ```tsx
243
- * function SpotterAgent() {
244
- * const ref = useRef();
252
+ * const { sendMessage } = useSpotterAgent({ worksheetId: 'worksheetId' });
253
+ * const result = await sendMessage('show me sales by region');
245
254
  *
246
- * const handleSendMessage = async () => {
247
- * const { container, error } = await ref.current.sendMessage('show me sales by region');
248
- * if (container) {
249
- * document.body.appendChild(container);
250
- * }
251
- * };
255
+ * if (!result.error) {
256
+ * // Simple usage - just pass the message data
257
+ * <SpotterMessage message={result.message} />
252
258
  *
253
- * return (
254
- * <div>
255
- * <SpotterAgentEmbed ref={ref} worksheetId="worksheetId" />
256
- * <button onClick={handleSendMessage}>Send Message</button>
257
- * </div>
258
- * );
259
+ * // With optional query for context
260
+ * <SpotterMessage
261
+ * message={result.message}
262
+ * query={result.query}
263
+ * />
259
264
  * }
260
265
  * ```
266
+ * @version SDK: 1.39.0 | ThoughtSpot: 10.11.0.cl
261
267
  */
262
- export const SpotterAgentEmbed: React.ForwardRefExoticComponent<SpotterAgentEmbedProps & React.RefAttributes<_SpotterAgentEmbed>>;
268
+ export const SpotterMessage: React.ForwardRefExoticComponent<{
269
+ message: SpotterAgentMessageViewConfig;
270
+ query?: string;
271
+ } & Omit<EmbedProps, keyof SpotterAgentMessageViewConfig> & React.RefAttributes<_ConversationMessage>>;
263
272
  /**
264
273
  * React component for PreRendered Conversation embed.
265
274
  *
@@ -279,7 +288,7 @@ export const SpotterAgentEmbed: React.ForwardRefExoticComponent<SpotterAgentEmbe
279
288
  * ```
280
289
  */
281
290
  export const PreRenderedConversationEmbed: React.ForwardRefExoticComponent<SpotterEmbedProps & PreRenderProps & React.RefAttributes<_SpotterEmbed>>;
282
- type EmbedComponent = typeof SearchEmbed | typeof AppEmbed | typeof LiveboardEmbed | typeof SearchBarEmbed | typeof SageEmbed | typeof SpotterAgentEmbed | typeof SpotterEmbed | typeof ConversationEmbed;
291
+ type EmbedComponent = typeof SearchEmbed | typeof AppEmbed | typeof LiveboardEmbed | typeof SearchBarEmbed | typeof SageEmbed | typeof ConversationMessage | typeof SpotterMessage | typeof SpotterEmbed | typeof ConversationEmbed;
283
292
  /**
284
293
  * Get a reference to the embed component to trigger events on the component.
285
294
  * @example
@@ -311,6 +320,50 @@ export function useEmbedRef<T extends EmbedComponent>(): React.MutableRefObject<
311
320
  * @version SDK: 1.36.2 | ThoughtSpot: *
312
321
  */
313
322
  export function useInit(config: EmbedConfig): React.MutableRefObject<AuthEventEmitter>;
323
+ /**
324
+ * React hook for interacting with SpotterAgent AI conversations.
325
+ *
326
+ * This hook provides a sendMessage function that allows you to send natural language
327
+ * queries to your data and get back AI-generated responses with visualizations.
328
+ *
329
+ * @param config - Configuration object containing worksheetId and other options
330
+ * @returns Object with sendMessage function that returns conversation results
331
+ * @example
332
+ * ```tsx
333
+ * const { sendMessage } = useSpotterAgent({ worksheetId: 'worksheetId' });
334
+ *
335
+ * const handleQuery = async () => {
336
+ * const result = await sendMessage('show me sales by region');
337
+ *
338
+ * if (!result.error) {
339
+ * // Display the message response
340
+ * <SpotterMessage message={result.message} />
341
+ * } else {
342
+ * console.error('Error:', result.error);
343
+ * }
344
+ * };
345
+ * ```
346
+ * @version SDK: 1.39.0 | ThoughtSpot: 10.11.0.cl
347
+ */
348
+ export function useSpotterAgent(config: SpotterAgentEmbedViewConfig): {
349
+ sendMessage: (query: string) => Promise<{
350
+ error: any;
351
+ query?: undefined;
352
+ message?: undefined;
353
+ } | {
354
+ query: string;
355
+ message: {
356
+ worksheetId: string;
357
+ convId: any;
358
+ messageId: any;
359
+ sessionId: any;
360
+ genNo: any;
361
+ acSessionId: any;
362
+ acGenNo: any;
363
+ };
364
+ error?: undefined;
365
+ }>;
366
+ };
314
367
 
315
368
  export declare let loggedInStatus: boolean;
316
369
  export declare let samlAuthWindow: Window;
@@ -1194,6 +1247,21 @@ export declare enum HomePage {
1194
1247
  */
1195
1248
  Modular = "v2"
1196
1249
  }
1250
+ /**
1251
+ * Define the version of the list page
1252
+ * @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
1253
+ */
1254
+ export declare enum ListPage {
1255
+ /**
1256
+ * List (v2) is the traditional List Experience.
1257
+ * It serves as the foundational version of the list page.
1258
+ */
1259
+ List = "v2",
1260
+ /**
1261
+ * ListWithUXChanges (v3) introduces the new updated list page with UX changes.
1262
+ */
1263
+ ListWithUXChanges = "v3"
1264
+ }
1197
1265
  /**
1198
1266
  * Define the discovery experience
1199
1267
  * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
@@ -1207,6 +1275,10 @@ export interface DiscoveryExperience {
1207
1275
  * homePage determines the version of the home page.
1208
1276
  */
1209
1277
  homePage?: HomePage;
1278
+ /**
1279
+ * listPageVersion determines the version of the list page.
1280
+ */
1281
+ listPageVersion?: ListPage;
1210
1282
  }
1211
1283
  /**
1212
1284
  * The view configuration for full app embedding.
@@ -1578,21 +1650,6 @@ export interface AppViewConfig extends AllEmbedViewConfig {
1578
1650
  * ```
1579
1651
  */
1580
1652
  isUnifiedSearchExperienceEnabled?: boolean;
1581
- /**
1582
- * Show alert messages and toast messages in the embedded
1583
- * view in full app embed.
1584
- *
1585
- * Supported embed types: `AppEmbed`
1586
- * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1587
- * @example
1588
- * ```js
1589
- * const embed = new AppEmbed('#tsEmbed', {
1590
- * ... // other embed view config
1591
- * showAlerts:true,
1592
- * })
1593
- * ```
1594
- */
1595
- showAlerts?: boolean;
1596
1653
  /**
1597
1654
  * This flag is used to enable/disable the styling and grouping in a Liveboard
1598
1655
  *
@@ -1900,23 +1957,6 @@ export interface LiveboardViewConfig extends BaseViewConfig, LiveboardOtherViewC
1900
1957
  * })
1901
1958
  */
1902
1959
  dataSourceId?: string;
1903
- /**
1904
- * This flag is for show/hide checkboxes for include or exclude
1905
- * cover page and filters in the Liveboard PDF.
1906
- *
1907
- * Supported embed types: `LiveboardEmbed`
1908
- * @version SDK: 1.37.0 | ThoughtSpot:10.8.0.cl
1909
- * @default true
1910
- * Supported embed types: `LiveboardEmbed`
1911
- * @example
1912
- * ```js
1913
- * const embed = new LiveboardEmbed('#tsEmbed', {
1914
- * ... //other embed view config
1915
- * coverAndFilterOptionInPDF: false,
1916
- * })
1917
- * ```
1918
- */
1919
- coverAndFilterOptionInPDF?: boolean;
1920
1960
  /**
1921
1961
  * The list of tab IDs to hide from the embedded.
1922
1962
  * This Tabs will be hidden from their respective LBs.
@@ -2034,10 +2074,6 @@ export interface SpotterAgentEmbedViewConfig extends Omit<BaseViewConfig, 'prima
2034
2074
  * The ID of the worksheet to use for the conversation.
2035
2075
  */
2036
2076
  worksheetId: string;
2037
- /**
2038
- * Optional CSS class name to add to the container div.
2039
- */
2040
- containerClassName?: string;
2041
2077
  }
2042
2078
  /**
2043
2079
  * Configuration for conversation options.
@@ -2047,13 +2083,15 @@ export interface SpotterAgentEmbedViewConfig extends Omit<BaseViewConfig, 'prima
2047
2083
  */
2048
2084
  export interface BodylessConversationViewConfig extends SpotterAgentEmbedViewConfig {
2049
2085
  }
2050
- interface SpotterAgentMessageViewConfig extends SpotterAgentEmbedViewConfig {
2086
+ export interface SpotterAgentMessageViewConfig extends SpotterAgentEmbedViewConfig {
2051
2087
  sessionId: string;
2052
2088
  genNo: number;
2053
2089
  acSessionId: string;
2054
2090
  acGenNo: number;
2091
+ convId: string;
2092
+ messageId: string;
2055
2093
  }
2056
- declare class ConversationMessage extends TsEmbed {
2094
+ export declare class ConversationMessage extends TsEmbed {
2057
2095
  protected viewConfig: SpotterAgentMessageViewConfig;
2058
2096
  constructor(container: HTMLElement, viewConfig: SpotterAgentMessageViewConfig);
2059
2097
  getIframeSrc(): string;
@@ -2089,6 +2127,25 @@ export declare class SpotterAgentEmbed {
2089
2127
  viz: ConversationMessage;
2090
2128
  error?: undefined;
2091
2129
  }>;
2130
+ /**
2131
+ * Send a message to the conversation service and return only the data.
2132
+ * @param userMessage - The message to send to the conversation service.
2133
+ * @returns The data from the conversation service.
2134
+ */
2135
+ sendMessageData(userMessage: string): Promise<{
2136
+ error: any;
2137
+ data?: undefined;
2138
+ } | {
2139
+ data: {
2140
+ convId: any;
2141
+ messageId: any;
2142
+ sessionId: any;
2143
+ genNo: any;
2144
+ acSessionId: any;
2145
+ acGenNo: any;
2146
+ };
2147
+ error?: undefined;
2148
+ }>;
2092
2149
  }
2093
2150
  /**
2094
2151
  * Create a conversation embed, which can be integrated inside
@@ -2113,7 +2170,6 @@ export declare class SpotterAgentEmbed {
2113
2170
  export declare class BodylessConversation extends SpotterAgentEmbed {
2114
2171
  constructor(viewConfig: BodylessConversationViewConfig);
2115
2172
  }
2116
- export {};
2117
2173
 
2118
2174
  /**
2119
2175
  * Copyright (c) 2023
@@ -2327,7 +2383,13 @@ export declare enum HomeLeftNavItem {
2327
2383
  * available when new navigation V3 is enabled.
2328
2384
  * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
2329
2385
  */
2330
- Spotter = "spotter"
2386
+ Spotter = "spotter",
2387
+ /**
2388
+ * Favorites option in the insights left navigation,
2389
+ * available when new navigation V3 is enabled.
2390
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
2391
+ */
2392
+ Favorites = "favorites"
2331
2393
  }
2332
2394
  export type DOMSelector = string | HTMLElement;
2333
2395
  /**
@@ -3093,6 +3155,20 @@ export interface BaseViewConfig {
3093
3155
  * @private
3094
3156
  */
3095
3157
  insertInToSlide?: boolean;
3158
+ /**
3159
+ * Show alert messages and toast messages in the embed.
3160
+ * Supported embed in all embed types.
3161
+ *
3162
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3163
+ * @example
3164
+ * ```js
3165
+ * const embed = new AppEmbed('#tsEmbed', {
3166
+ * ... // other embed view config
3167
+ * showAlerts:true,
3168
+ * })
3169
+ * ```
3170
+ */
3171
+ showAlerts?: boolean;
3096
3172
  }
3097
3173
  /**
3098
3174
  * The configuration object for Home page embeds configs.
@@ -3470,6 +3546,22 @@ export interface LiveboardAppEmbedViewConfig {
3470
3546
  * ```
3471
3547
  */
3472
3548
  enableAskSage?: boolean;
3549
+ /**
3550
+ * This flag is used to show or hide checkboxes for including or excluding
3551
+ * the cover and filters pages in the Liveboard PDF.
3552
+ *
3553
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
3554
+ * @version SDK: 1.40.0 | ThoughtSpot:10.8.0.cl
3555
+ * @example
3556
+ * ```js
3557
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
3558
+ * const embed = new <EmbedComponent>('#tsEmbed', {
3559
+ * ... // other embed view config
3560
+ * coverAndFilterOptionInPDF: false,
3561
+ * })
3562
+ * ```
3563
+ */
3564
+ coverAndFilterOptionInPDF?: boolean;
3473
3565
  }
3474
3566
  export interface AllEmbedViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, HomePageConfig, LiveboardAppEmbedViewConfig {
3475
3567
  }
@@ -4729,7 +4821,84 @@ export declare enum EmbedEvent {
4729
4821
  * Emitted when a user exits present mode.
4730
4822
  * @version SDK : 1.40.0 | ThoughtSpot: 10.11.0.cl
4731
4823
  */
4732
- ExitPresentMode = "exitPresentMode"
4824
+ ExitPresentMode = "exitPresentMode",
4825
+ /**
4826
+ * Emitted when spotter response is text data
4827
+ * @example
4828
+ * ```js
4829
+ * spotterEmbed.on(EmbedEvent.SpotterData, (payload) => {
4830
+ * console.log('payload', payload);
4831
+ * })
4832
+ *```
4833
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4834
+ */
4835
+ SpotterData = "SpotterData",
4836
+ /**
4837
+ * Emitted when user opens up the worksheet preview modal in spotter embed.
4838
+ * @example
4839
+ * ```js
4840
+ * spotterEmbed.on(EmbedEvent.PreviewSpotterData, (payload) => {
4841
+ * console.log('payload', payload);
4842
+ * })
4843
+ *```
4844
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4845
+ */
4846
+ PreviewSpotterData = "PreviewSpotterData",
4847
+ /**
4848
+ * Emitted when the spotter query is triggered in spotter embed.
4849
+ * @example
4850
+ * ```js
4851
+ * spotterEmbed.on(EmbedEvent.SpotterQueryTriggered, (payload) => {
4852
+ * console.log('payload', payload);
4853
+ * })
4854
+ *```
4855
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4856
+ */
4857
+ SpotterQueryTriggered = "SpotterQueryTriggered",
4858
+ /**
4859
+ * Emitted when the last spotter query is edited in spotter embed.
4860
+ * @example
4861
+ * ```js
4862
+ * spotterEmbed.on(EmbedEvent.LastPromptEdited, (payload) => {
4863
+ * console.log('payload', payload);
4864
+ * })
4865
+ *```
4866
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4867
+ */
4868
+ LastPromptEdited = "LastPromptEdited",
4869
+ /**
4870
+ * Emitted when the last spotter query is deleted in spotter embed.
4871
+ * @example
4872
+ * ```js
4873
+ * spotterEmbed.on(EmbedEvent.LastPromptDeleted, (payload) => {
4874
+ * console.log('payload', payload);
4875
+ * })
4876
+ *```
4877
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4878
+ */
4879
+ LastPromptDeleted = "LastPromptDeleted",
4880
+ /**
4881
+ * Emitted when the coversation is reset in spotter embed.
4882
+ * @example
4883
+ * ```js
4884
+ * spotterEmbed.on(EmbedEvent.ResetSpotterConversation, (payload) => {
4885
+ * console.log('payload', payload);
4886
+ * })
4887
+ *```
4888
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4889
+ */
4890
+ ResetSpotterConversation = "ResetSpotterConversation",
4891
+ /**
4892
+ * Emitted when the *Spotter* is initialized.
4893
+ * @example
4894
+ * ```js
4895
+ * spotterEmbed.on(EmbedEvent.SpotterInit, (payload) => {
4896
+ * console.log('payload', payload);
4897
+ * })
4898
+ *```
4899
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4900
+ */
4901
+ SpotterInit = "SpotterInit"
4733
4902
  }
4734
4903
  /**
4735
4904
  * Event types that can be triggered by the host application
@@ -5018,6 +5187,7 @@ export declare enum HostEvent {
5018
5187
  * @param
5019
5188
  * `vizId`- GUID of the saved Answer or visualization to pin to a Liveboard.
5020
5189
  * Optional when pinning a new chart or table generated from a Search query.
5190
+ * **Required** in Spotter Embed.
5021
5191
  * @param
5022
5192
  * `liveboardID` - GUID of the Liveboard to pin an Answer. If there is no Liveboard,
5023
5193
  * specify the `newLiveboardName` parameter to create a new Liveboard.
@@ -5065,6 +5235,12 @@ export declare enum HostEvent {
5065
5235
  * ```js
5066
5236
  * appEmbed.trigger(HostEvent.Pin)
5067
5237
  * ```
5238
+ * @example
5239
+ * ```js
5240
+ * const pinResponse = await spotterEmbed.trigger(HostEvent.Pin, {
5241
+ * vizId:'730496d6-6903-4601-937e-2c691821af3c'
5242
+ * });
5243
+ * ```
5068
5244
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
5069
5245
  */
5070
5246
  Pin = "pin",
@@ -5158,6 +5334,12 @@ export declare enum HostEvent {
5158
5334
  * ```js
5159
5335
  * searchEmbed.trigger(HostEvent.MakeACopy)
5160
5336
  * ```
5337
+ * @example
5338
+ * ```js
5339
+ * const pinResponse = await spotterEmbed.trigger(HostEvent.MakeACopy, {
5340
+ * vizId:'730496d6-6903-4601-937e-2c691821af3c'
5341
+ * });
5342
+ * ```
5161
5343
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
5162
5344
  */
5163
5345
  MakeACopy = "makeACopy",
@@ -5230,6 +5412,7 @@ export declare enum HostEvent {
5230
5412
  * This event is not supported in visualization embed and search embed.
5231
5413
  * @param - object - To trigger the action for a specific visualization
5232
5414
  * in Liveboard embed, pass in `vizId` as a key.
5415
+ * **Required** in Spotter embed.
5233
5416
  * @example
5234
5417
  * ```js
5235
5418
  * liveboardEmbed.trigger(HostEvent.Edit)
@@ -5238,6 +5421,12 @@ export declare enum HostEvent {
5238
5421
  * liveboardEmbed.trigger(HostEvent.Edit, {vizId:
5239
5422
  * '730496d6-6903-4601-937e-2c691821af3c'})
5240
5423
  * ```
5424
+ * @example
5425
+ * ```js
5426
+ * const pinResponse = await spotterEmbed.trigger(HostEvent.Edit, {
5427
+ * vizId:'730496d6-6903-4601-937e-2c691821af3c'
5428
+ * });
5429
+ * ```
5241
5430
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
5242
5431
  */
5243
5432
  Edit = "edit",
@@ -5285,6 +5474,16 @@ export declare enum HostEvent {
5285
5474
  * );
5286
5475
  * })
5287
5476
  * ```
5477
+ * @example
5478
+ * ```js
5479
+ * spotterEmbed.trigger(HostEvent.GetTML, {
5480
+ * vizId: '730496d6-6903-4601-937e-2c691821af3c'
5481
+ * }).then((tml) => {
5482
+ * console.log(
5483
+ * tml.answer.search_query // TML representation of the search query
5484
+ * );
5485
+ * })
5486
+ * ```
5288
5487
  * @version SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1.sw
5289
5488
  * @important
5290
5489
  */
@@ -5372,7 +5571,12 @@ export declare enum HostEvent {
5372
5571
  * vizEmbed.trigger(HostEvent.DownloadAsPng)
5373
5572
  *
5374
5573
  * searchEmbed.trigger(HostEvent.DownloadAsPng)
5574
+ *
5575
+ * spotterEmbed.trigger(HostEvent.DownloadAsPng, {
5576
+ * vizId:"730496d6-6903-4601-937e-2c691821af3c"
5577
+ * })
5375
5578
  * ```
5579
+ *
5376
5580
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.4.1.sw
5377
5581
  */
5378
5582
  DownloadAsPng = "downloadAsPng",
@@ -5390,6 +5594,11 @@ export declare enum HostEvent {
5390
5594
  * ```js
5391
5595
  * searchEmbed.trigger(HostEvent.DownloadAsCsv)
5392
5596
  * ```
5597
+ * ```js
5598
+ * spotterEmbed.trigger(HostEvent.DownloadAsCsv, {
5599
+ * vizId:"730496d6-6903-4601-937e-2c691821af3c"
5600
+ * })
5601
+ * ```
5393
5602
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
5394
5603
  */
5395
5604
  DownloadAsCsv = "downloadAsCSV",
@@ -5407,6 +5616,11 @@ export declare enum HostEvent {
5407
5616
  * ```js
5408
5617
  * searchEmbed.trigger(HostEvent.DownloadAsXlsx)
5409
5618
  * ```
5619
+ * ```js
5620
+ * spotterEmbed.trigger(HostEvent.downloadAsXLSX, {
5621
+ * vizId:"730496d6-6903-4601-937e-2c691821af3c"
5622
+ * })
5623
+ * ```
5410
5624
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
5411
5625
  */
5412
5626
  DownloadAsXlsx = "downloadAsXLSX",
@@ -5426,6 +5640,7 @@ export declare enum HostEvent {
5426
5640
  /**
5427
5641
  * Trigger the **Save** action on a Liveboard or Answer.
5428
5642
  * Saves the changes.
5643
+ * @param - `vizId` is required in Spotter Embed.
5429
5644
  * @example
5430
5645
  * ```js
5431
5646
  * liveboardEmbed.trigger(HostEvent.Save)
@@ -5433,6 +5648,11 @@ export declare enum HostEvent {
5433
5648
  * ```js
5434
5649
  * searchEmbed.trigger(HostEvent.Save)
5435
5650
  * ```
5651
+ * ```js
5652
+ * spotterEmbed.trigger(HostEvent.Save, {
5653
+ * vizId:"730496d6-6903-4601-937e-2c691821af3c"
5654
+ * })
5655
+ * ```
5436
5656
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
5437
5657
  */
5438
5658
  Save = "save",
@@ -5716,7 +5936,7 @@ export declare enum HostEvent {
5716
5936
  ResetLiveboardPersonalisedView = "ResetLiveboardPersonalisedView",
5717
5937
  /**
5718
5938
  * Triggers an action to update Parameter values on embedded
5719
- * Answers and Liveboard.
5939
+ * Answers, Liveboard and Spotter answer in Edit mode.
5720
5940
  *
5721
5941
  * @example
5722
5942
  * ```js
@@ -5735,6 +5955,13 @@ export declare enum HostEvent {
5735
5955
  * console.log('parameters', parameter);
5736
5956
  * });
5737
5957
  *```
5958
+ *```js
5959
+ * spotterEmbed.trigger(HostEvent.GetParameters, {
5960
+ * vizId: '730496d6-6903-4601-937e-2c691821af3c'
5961
+ * }).then((parameter) => {
5962
+ * console.log('parameters', parameter);
5963
+ * });
5964
+ *```
5738
5965
  * @version SDK: 1.29.0 | ThoughtSpot: 10.1.0.cl, 10.1.0.sw
5739
5966
  */
5740
5967
  GetParameters = "GetParameters",
@@ -5802,6 +6029,64 @@ export declare enum HostEvent {
5802
6029
  * @version SDK: 1.37.0 | ThoughtSpot: 10.8.0.cl
5803
6030
  */
5804
6031
  TransformTableVizData = "TransformTableVizData",
6032
+ /**
6033
+ * Triggers a search operation with the search tokens specified in
6034
+ * the search query string in spotter embed.
6035
+ * @param - `queryString`: Text string in Natural Language format
6036
+ * @param - `executeSearch`: Boolean to execute search and update search query
6037
+ * @example
6038
+ * ```js
6039
+ * spotterEmbed.trigger(HostEvent.SpotterSearch, {
6040
+ * query: 'revenue per year',
6041
+ * executeSearch: true,
6042
+ * })
6043
+ * ```
6044
+ */
6045
+ SpotterSearch = "SpotterSearch",
6046
+ /**
6047
+ * Edits the last prompt in spotter embed.
6048
+ * @param - `query`: Text string
6049
+ * @example
6050
+ * ```js
6051
+ * spotterEmbed.trigger(HostEvent.EditLastPrompt, "revenue per year");
6052
+ * ```
6053
+ */
6054
+ EditLastPrompt = "EditLastPrompt",
6055
+ /**
6056
+ * Opens the Worksheet preview modal in Spotter Embed.
6057
+ * @example
6058
+ * ```js
6059
+ * spotterEmbed.trigger(HostEvent.PreviewSpotterData);
6060
+ * ```
6061
+ */
6062
+ PreviewSpotterData = "PreviewSpotterData",
6063
+ /**
6064
+ * Resets the Spotter Embed Conversation.
6065
+ * @example
6066
+ * ```js
6067
+ * spotterEmbed.trigger(HostEvent.ResetSpotterConversation);
6068
+ * ```
6069
+ */
6070
+ ResetSpotterConversation = "ResetSpotterConversation",
6071
+ /**
6072
+ * Deletes the last prompt in spotter embed.
6073
+ * @example
6074
+ * ```js
6075
+ * spotterEmbed.trigger(HostEvent.DeleteLastPrompt);
6076
+ * ```
6077
+ */
6078
+ DeleteLastPrompt = "DeleteLastPrompt",
6079
+ /**
6080
+ * Toggle the visualization to chart or table view.
6081
+ * @param - `vizId ` In Spotter Embed, vizId is required.
6082
+ * @example
6083
+ * ```js
6084
+ * spotterEmbed.trigger(HostEvent.AnswerChartSwitcher, {
6085
+ * vizId:"'b535c760-8bbe-4e6f-bb26-af56b4129a1e'"
6086
+ * });
6087
+ *```
6088
+ */
6089
+ AnswerChartSwitcher = "answerChartSwitcher",
5805
6090
  /**
5806
6091
  * @hidden
5807
6092
  * Trigger exit from presentation mode when user exits fullscreen.
@@ -5811,7 +6096,17 @@ export declare enum HostEvent {
5811
6096
  *```
5812
6097
  * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
5813
6098
  */
5814
- ExitPresentMode = "exitPresentMode"
6099
+ ExitPresentMode = "exitPresentMode",
6100
+ /**
6101
+ * Trigger the *Ask Sage* action for visualizations
6102
+ * @example
6103
+ * ```js
6104
+ * liveboardEmbed.trigger(HostEvent.AskSpotter,
6105
+ * {containerId:'730496d6-6903-4601-937e-2c691821af3c'})
6106
+ * ```
6107
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
6108
+ */
6109
+ AskSpotter = "askSpotter"
5815
6110
  }
5816
6111
  /**
5817
6112
  * The different visual modes that the data sources panel within
@@ -5907,6 +6202,7 @@ export declare enum Param {
5907
6202
  Query = "query",
5908
6203
  HideHomepageLeftNav = "hideHomepageLeftNav",
5909
6204
  ModularHomeExperienceEnabled = "modularHomeExperience",
6205
+ ListPageVersion = "listpageVersion",
5910
6206
  PendoTrackingKey = "additionalPendoKey",
5911
6207
  LiveboardHeaderSticky = "isLiveboardHeaderSticky",
5912
6208
  IsProductTour = "isProductTour",
@@ -5941,7 +6237,7 @@ export declare enum Param {
5941
6237
  DataSourceId = "dataSourceId",
5942
6238
  preAuthCache = "preAuthCache",
5943
6239
  ShowSpotterLimitations = "showSpotterLimitations",
5944
- CoverAndFilterOptionInPDF = "coverAndFilterOptionInPDF",
6240
+ CoverAndFilterOptionInPDF = "arePdfCoverFilterPageCheckboxesEnabled",
5945
6241
  PrimaryAction = "primaryAction",
5946
6242
  isSpotterAgentEmbed = "isSpotterAgentEmbed",
5947
6243
  IsLiveboardStylingAndGroupingEnabled = "isLiveboardStylingAndGroupingEnabled"
@@ -7164,7 +7460,23 @@ export declare enum Action {
7164
7460
  * ```
7165
7461
  * @version SDK: 1.37.0 | ThoughtSpot Cloud: 10.8.0.cl
7166
7462
  */
7167
- CoverAndFilterOptionInPDF = "coverAndFilterOptionInPDF"
7463
+ CoverAndFilterOptionInPDF = "coverAndFilterOptionInPDF",
7464
+ /**
7465
+ * Action ID for hide or disable the
7466
+ * Spotter in conversation training widget.
7467
+ * The Add to Coaching feature is currently in beta
7468
+ * and is disabled by default on embed deployments.
7469
+ * To enable this feature on your instance,
7470
+ * contact ThoughtSpot Support.
7471
+ * @example
7472
+ * ```js
7473
+ * hiddenAction: [Action.InConversationTraining]
7474
+ * disabledActions: [Action.InConversationTraining]
7475
+ *
7476
+ * ```
7477
+ * @version SDK: 1.39.0 | ThoughtSpot Cloud: 10.10.0.cl
7478
+ */
7479
+ InConversationTraining = "InConversationTraining"
7168
7480
  }
7169
7481
  export interface AnswerServiceType {
7170
7482
  getAnswer?: (offset: number, batchSize: number) => any;
@@ -7501,7 +7813,7 @@ export declare class ConversationEmbed extends SpotterEmbed {
7501
7813
  * @summary ThoughtSpot Visual Embed SDK
7502
7814
  * @author Ayon Ghosh <ayon.ghosh@thoughtspot.com>
7503
7815
  */
7504
- export { init, logout, prefetch, executeTML, exportTML, executeTMLInput, exportTMLInput, getEmbedConfig as getInitConfig, getSessionInfo, tokenizedFetch, getAnswerFromQuery, createLiveboardWithAnswers, SearchEmbed, SearchBarEmbed, PinboardEmbed, LiveboardEmbed, SageEmbed, AppEmbed, SpotterAgentEmbed, SpotterAgentEmbedViewConfig, BodylessConversationViewConfig, BodylessConversation, SpotterEmbed, SpotterEmbedViewConfig, ConversationViewConfig, ConversationEmbed, AuthFailureType, AuthStatus, AuthEvent, AuthEventEmitter, AnswerService, SessionInterface, UnderlyingDataPoint, Page, AuthType, RuntimeFilter, RuntimeFilterOp, EmbedEvent, HostEvent, DataSourceVisualMode, Action, ContextMenuTriggerOptions, EmbedConfig, SearchViewConfig, SearchBarViewConfig, LiveboardViewConfig, SageViewConfig, AppViewConfig, PrefetchFeatures, FrameParams, HomeLeftNavItem, HomepageModule, DOMSelector, MessageOptions, MessageCallback, MessagePayload, CustomisationsInterface, CustomStyles, customCssInterface, CustomCssVariables, RuntimeParameter, LogLevel, uploadMixpanelEvent, MIXPANEL_EVENT, HomePageSearchBarMode, PrimaryNavbarVersion, HomePage, VizPoint, CustomActionPayload, UIPassthroughEvent, ListPageColumns, DataPanelCustomColumnGroupsAccordionState, };
7816
+ export { init, logout, prefetch, executeTML, exportTML, executeTMLInput, exportTMLInput, getEmbedConfig as getInitConfig, getSessionInfo, tokenizedFetch, getAnswerFromQuery, createLiveboardWithAnswers, SearchEmbed, SearchBarEmbed, PinboardEmbed, LiveboardEmbed, SageEmbed, AppEmbed, SpotterAgentEmbed, SpotterAgentEmbedViewConfig, BodylessConversationViewConfig, BodylessConversation, SpotterEmbed, SpotterEmbedViewConfig, ConversationViewConfig, ConversationEmbed, AuthFailureType, AuthStatus, AuthEvent, AuthEventEmitter, AnswerService, SessionInterface, UnderlyingDataPoint, Page, AuthType, RuntimeFilter, RuntimeFilterOp, EmbedEvent, HostEvent, DataSourceVisualMode, Action, ContextMenuTriggerOptions, EmbedConfig, SearchViewConfig, SearchBarViewConfig, LiveboardViewConfig, SageViewConfig, AppViewConfig, PrefetchFeatures, FrameParams, HomeLeftNavItem, HomepageModule, DOMSelector, MessageOptions, MessageCallback, MessagePayload, CustomisationsInterface, CustomStyles, customCssInterface, CustomCssVariables, RuntimeParameter, LogLevel, uploadMixpanelEvent, MIXPANEL_EVENT, HomePageSearchBarMode, PrimaryNavbarVersion, HomePage, ListPage, VizPoint, CustomActionPayload, UIPassthroughEvent, ListPageColumns, DataPanelCustomColumnGroupsAccordionState, };
7505
7817
 
7506
7818
  /**
7507
7819
  * Copyright (c) 2022
@@ -8733,13 +9045,14 @@ export declare function resetCachedPreauthInfo(): void;
8733
9045
  *
8734
9046
  * @example
8735
9047
  * ```js
9048
+ * import { getInitConfig } from '@thoughtspot/visual-embed-sdk';
9049
+ * // Call the getInitConfig method to retrieve the embed configuration
8736
9050
  * const config = getInitConfig();
9051
+ * // Log the configuration settings
8737
9052
  * console.log(config);
8738
9053
  * ```
8739
- * @example
8740
- *
8741
- * Returns the `EmbedConfig` object, which
8742
- * contains the configuration settings used to
9054
+ * Returns the link:https://developers.thoughtspot.com/docs/Interface_EmbedConfig[EmbedConfig]
9055
+ * object, which contains the configuration settings used to
8743
9056
  * initialize the SDK, including the following:
8744
9057
  *
8745
9058
  * - `thoughtSpotHost` - ThoughtSpot host URL
@@ -8748,9 +9061,10 @@ export declare function resetCachedPreauthInfo(): void;
8748
9061
  * - `customizations` - Style, text, and icon customization settings
8749
9062
  * that were applied during the SDK initialization.
8750
9063
  *
8751
- * For a comprehensive list of embed configuration settings,
8752
- * see link:https://developers.thoughtspot.com/docs/Interface_EmbedConfig[Developer Documentation].
9064
+ * The following JSON output shows the embed configuration
9065
+ * settings returned from the code in the previous example:
8753
9066
  *
9067
+ * @example
8754
9068
  * ```json
8755
9069
  * {
8756
9070
  * "thoughtSpotHost": "https://{ThoughtSpot-Host}",
@@ -8772,7 +9086,7 @@ export declare function resetCachedPreauthInfo(): void;
8772
9086
  * "authTriggerContainer": "#your-own-div"
8773
9087
  * }
8774
9088
  * ```
8775
- * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.cl, and later
9089
+ * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw, and later
8776
9090
  * @group Global methods
8777
9091
  */
8778
9092
  export declare const getEmbedConfig: () => EmbedConfig;