@thoughtspot/visual-embed-sdk 1.40.0 → 1.40.1-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/embed/liveboard.d.ts +2 -1
  3. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  4. package/cjs/src/embed/liveboard.js +13 -8
  5. package/cjs/src/embed/liveboard.js.map +1 -1
  6. package/cjs/src/embed/ts-embed.d.ts +7 -0
  7. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  8. package/cjs/src/embed/ts-embed.js +61 -7
  9. package/cjs/src/embed/ts-embed.js.map +1 -1
  10. package/cjs/src/types.d.ts +33 -64
  11. package/cjs/src/types.d.ts.map +1 -1
  12. package/cjs/src/types.js +33 -64
  13. package/cjs/src/types.js.map +1 -1
  14. package/dist/{index-CAEHQGLc.js → index-CmEQfuE3.js} +1 -1
  15. package/dist/index-D1pyb7RG.js +7371 -0
  16. package/dist/index-DeFzsyFF.js +7371 -0
  17. package/dist/index-Dpf0rd6w.js +7371 -0
  18. package/dist/index-UuEbsISo.js +7447 -0
  19. package/dist/index-e3Uw3YFO.js +7371 -0
  20. package/dist/src/embed/bodyless-conversation.d.ts +0 -4
  21. package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
  22. package/dist/src/react/index.d.ts +0 -2
  23. package/dist/src/react/index.d.ts.map +1 -1
  24. package/dist/src/types.d.ts +9 -253
  25. package/dist/src/types.d.ts.map +1 -1
  26. package/dist/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
  27. package/dist/tsembed-react.es.js +13 -267
  28. package/dist/tsembed-react.js +12 -266
  29. package/dist/tsembed.es.js +13 -267
  30. package/dist/tsembed.js +12 -266
  31. package/dist/visual-embed-sdk-react-full.d.ts +9 -259
  32. package/dist/visual-embed-sdk-react.d.ts +9 -259
  33. package/dist/visual-embed-sdk.d.ts +9 -257
  34. package/lib/package.json +1 -1
  35. package/lib/src/embed/liveboard.d.ts +2 -1
  36. package/lib/src/embed/liveboard.d.ts.map +1 -1
  37. package/lib/src/embed/liveboard.js +13 -8
  38. package/lib/src/embed/liveboard.js.map +1 -1
  39. package/lib/src/embed/ts-embed.d.ts +7 -0
  40. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  41. package/lib/src/embed/ts-embed.js +61 -7
  42. package/lib/src/embed/ts-embed.js.map +1 -1
  43. package/lib/src/types.d.ts +33 -64
  44. package/lib/src/types.d.ts.map +1 -1
  45. package/lib/src/types.js +33 -64
  46. package/lib/src/types.js.map +1 -1
  47. package/lib/src/visual-embed-sdk.d.ts +9 -257
  48. package/package.json +1 -2
  49. package/src/embed/liveboard.ts +14 -7
  50. package/src/embed/ts-embed.ts +84 -21
  51. package/src/types.ts +34 -64
@@ -185,7 +185,10 @@ export class TsEmbed {
185
185
  */
186
186
  private fullscreenChangeHandler: (() => void) | null = null;
187
187
 
188
+ public id: string;
189
+
188
190
  constructor(domSelector: DOMSelector, viewConfig?: ViewConfig) {
191
+ this.id = Date.now().toString();
189
192
  this.el = getDOMNode(domSelector);
190
193
  this.eventHandlerMap = new Map();
191
194
  this.isError = false;
@@ -237,7 +240,7 @@ export class TsEmbed {
237
240
  * @param event The window message event
238
241
  */
239
242
  private getEventType(event: MessageEvent) {
240
- // eslint-disable-next-line no-underscore-dangle
243
+
241
244
  return event.data?.type || event.data?.__type;
242
245
  }
243
246
 
@@ -281,11 +284,11 @@ export class TsEmbed {
281
284
  */
282
285
  private isFullAppEmbedWithVisiblePrimaryNavbar(): boolean {
283
286
  const appViewConfig = this.viewConfig as any;
284
-
287
+
285
288
  // Check if this is a FullAppEmbed (AppEmbed)
286
289
  // showPrimaryNavbar defaults to true if not explicitly set to false
287
290
  return (
288
- appViewConfig.embedComponentType === 'AppEmbed'
291
+ appViewConfig.embedComponentType === 'AppEmbed'
289
292
  && appViewConfig.showPrimaryNavbar === true
290
293
  );
291
294
  }
@@ -310,6 +313,8 @@ export class TsEmbed {
310
313
 
311
314
  private subscribedListeners: Record<string, any> = {};
312
315
 
316
+ public isEmbedContainerLoaded = false;
317
+
313
318
  /**
314
319
  * Adds a global event listener to window for "message" events.
315
320
  * ThoughtSpot detects if a particular event is targeted to this
@@ -431,7 +436,8 @@ export class TsEmbed {
431
436
  private updateAuthToken = async (_: any, responder: any) => {
432
437
  const { authType } = this.embedConfig;
433
438
  let { autoLogin } = this.embedConfig;
434
- // Default autoLogin: true for cookieless if undefined/null, otherwise false
439
+ // Default autoLogin: true for cookieless if undefined/null, otherwise
440
+ // false
435
441
  autoLogin = autoLogin ?? (authType === AuthType.TrustedAuthTokenCookieless);
436
442
  if (autoLogin && authType === AuthType.TrustedAuthTokenCookieless) {
437
443
  try {
@@ -474,11 +480,65 @@ export class TsEmbed {
474
480
  notifyAuthFailure(AuthFailureType.IDLE_SESSION_TIMEOUT);
475
481
  };
476
482
 
483
+ private pendingEvents: Array<{ eventType: HostEvent, data: TriggerPayload<any, HostEvent>, onEventTriggered?: () => void }> = [];
484
+
485
+ protected getPreRenderObj<T extends TsEmbed>() {
486
+ const embedObj = (this.insertedDomEl as any)?.[this.embedNodeKey] as T;
487
+ if (embedObj === (this as any)) {
488
+ console.log('embedObj is same as this');
489
+ return null;
490
+ }
491
+ return (this.insertedDomEl as any)?.[this.embedNodeKey] as T;
492
+ }
493
+
494
+ private checkEmbedContainerLoaded() {
495
+ if (this.isEmbedContainerLoaded) return true;
496
+
497
+ const preRenderObj = this.getPreRenderObj<TsEmbed>();
498
+ if (preRenderObj && preRenderObj.isEmbedContainerLoaded) {
499
+ this.isEmbedContainerLoaded = true;
500
+ }
501
+
502
+ console.log('checkEmbedContainerLoaded', this.isEmbedContainerLoaded);
503
+
504
+ return this.isEmbedContainerLoaded;
505
+ }
506
+
507
+ private executePendingEvents() {
508
+ console.log('executePendingEvents', this.pendingEvents);
509
+ setTimeout(() => {
510
+ this.pendingEvents.forEach((event) => {
511
+ console.log('executing event', event.eventType, event.data);
512
+ this.trigger(event.eventType, event.data);
513
+ event.onEventTriggered?.();
514
+ });
515
+ this.pendingEvents = [];
516
+ }, 1000);
517
+ }
518
+ protected triggerAfterLoad(eventType: HostEvent, data: TriggerPayload<any, HostEvent>, onEventTriggered?: () => void) {
519
+ if (this.checkEmbedContainerLoaded()) {
520
+ console.log('triggerAfterLoad', eventType, data);
521
+ this.trigger(eventType, data);
522
+ onEventTriggered?.();
523
+ } else {
524
+ console.log('pushing to pendingEvents', eventType, data, this.getPreRenderObj());
525
+ this.pendingEvents.push({ eventType, data, onEventTriggered });
526
+ console.log('pendingEvents', this.pendingEvents);
527
+ }
528
+ }
529
+
477
530
  /**
478
531
  * Register APP_INIT event and sendback init payload
479
532
  */
480
533
  private registerAppInit = () => {
481
534
  this.on(EmbedEvent.APP_INIT, this.appInitCb, { start: false }, true);
535
+ this.on(EmbedEvent.AuthInit, () => {
536
+ console.log('AuthInit', this.getPreRenderObj());
537
+ this.isEmbedContainerLoaded = true;
538
+ console.log('isEmbedContainerLoaded', this.isEmbedContainerLoaded);
539
+ console.log('executePendingEvents', this.pendingEvents);
540
+ this.executePendingEvents();
541
+ }, { start: false }, true);
482
542
  this.on(EmbedEvent.AuthExpire, this.updateAuthToken, { start: false }, true);
483
543
  this.on(EmbedEvent.IdleSessionTimeout, this.idleSessionTimeout, { start: false }, true);
484
544
  };
@@ -798,8 +858,9 @@ export class TsEmbed {
798
858
  }
799
859
  });
800
860
  }
801
-
802
- // Setup fullscreen change handler after iframe is loaded and ready
861
+
862
+ // Setup fullscreen change handler after iframe is
863
+ // loaded and ready
803
864
  this.setupFullscreenChangeHandler();
804
865
  });
805
866
  this.iFrame.addEventListener('error', () => {
@@ -926,7 +987,7 @@ export class TsEmbed {
926
987
  const div = document.createElement('div');
927
988
  div.innerHTML = child;
928
989
  div.id = TS_EMBED_ID;
929
- // eslint-disable-next-line no-param-reassign
990
+
930
991
  child = div;
931
992
  }
932
993
  if (this.el.nextElementSibling?.id === TS_EMBED_ID) {
@@ -1070,11 +1131,11 @@ export class TsEmbed {
1070
1131
  if (this.isRendered) {
1071
1132
  logger.warn('Please register event handlers before calling render');
1072
1133
  }
1073
-
1134
+
1074
1135
  const callbacks = this.eventHandlerMap.get(messageType) || [];
1075
1136
  callbacks.push({ options, callback });
1076
1137
  this.eventHandlerMap.set(messageType, callbacks);
1077
-
1138
+
1078
1139
  return this;
1079
1140
  }
1080
1141
 
@@ -1174,7 +1235,7 @@ export class TsEmbed {
1174
1235
  }
1175
1236
  await this.isReadyForRenderPromise;
1176
1237
  this.isRendered = true;
1177
-
1238
+
1178
1239
  return this;
1179
1240
  }
1180
1241
 
@@ -1288,11 +1349,11 @@ export class TsEmbed {
1288
1349
  ) {
1289
1350
  logger.warn(
1290
1351
  `${viewConfig.embedComponentType || 'Component'} was pre-rendered with `
1291
- + `"${key}" as "${JSON.stringify(preRenderedObject.viewConfig[key])}" `
1292
- + `but a different value "${JSON.stringify(viewConfig[key])}" `
1293
- + 'was passed to the Embed component. '
1294
- + 'The new value provided is ignored, the value provided during '
1295
- + 'preRender is used.',
1352
+ + `"${key}" as "${JSON.stringify(preRenderedObject.viewConfig[key])}" `
1353
+ + `but a different value "${JSON.stringify(viewConfig[key])}" `
1354
+ + 'was passed to the Embed component. '
1355
+ + 'The new value provided is ignored, the value provided during '
1356
+ + 'preRender is used.',
1296
1357
  );
1297
1358
  }
1298
1359
  });
@@ -1318,8 +1379,11 @@ export class TsEmbed {
1318
1379
  return this.preRender(true);
1319
1380
  }
1320
1381
  this.validatePreRenderViewConfig(this.viewConfig);
1382
+ this.trigger(HostEvent.UpdateEmbedParams, this.viewConfig);
1321
1383
  }
1322
1384
 
1385
+ this.beforePrerenderVisible();
1386
+
1323
1387
  if (this.el) {
1324
1388
  this.syncPreRenderStyle();
1325
1389
  if (!this.viewConfig.doNotTrackPreRenderSize) {
@@ -1337,12 +1401,10 @@ export class TsEmbed {
1337
1401
  }
1338
1402
  }
1339
1403
 
1340
- this.beforePrerenderVisible();
1341
-
1342
1404
  removeStyleProperties(this.preRenderWrapper, ['z-index', 'opacity', 'pointer-events']);
1343
1405
 
1344
1406
  this.subscribeToEvents();
1345
-
1407
+
1346
1408
  // Setup fullscreen change handler for prerendered components
1347
1409
  if (this.iFrame) {
1348
1410
  this.setupFullscreenChangeHandler();
@@ -1431,7 +1493,7 @@ export class TsEmbed {
1431
1493
  private setupFullscreenChangeHandler() {
1432
1494
  const embedConfig = getEmbedConfig();
1433
1495
  const disableFullscreenPresentation = embedConfig?.disableFullscreenPresentation ?? true;
1434
-
1496
+
1435
1497
  if (disableFullscreenPresentation) {
1436
1498
  return;
1437
1499
  }
@@ -1444,7 +1506,8 @@ export class TsEmbed {
1444
1506
  const isFullscreen = !!document.fullscreenElement;
1445
1507
  if (!isFullscreen) {
1446
1508
  logger.info('Exited fullscreen mode - triggering ExitPresentMode');
1447
- // Only trigger if iframe is available and contentWindow is accessible
1509
+ // Only trigger if iframe is available and contentWindow is
1510
+ // accessible
1448
1511
  if (this.iFrame && this.iFrame.contentWindow) {
1449
1512
  this.trigger(HostEvent.ExitPresentMode);
1450
1513
  } else {
@@ -1540,6 +1603,6 @@ export class V1Embed extends TsEmbed {
1540
1603
  * Only for testing purposes.
1541
1604
  * @hidden
1542
1605
  */
1543
- // eslint-disable-next-line camelcase
1606
+
1544
1607
  public test__executeCallbacks = this.executeCallbacks;
1545
1608
  }
package/src/types.ts CHANGED
@@ -2339,7 +2339,7 @@ export enum EmbedEvent {
2339
2339
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
2340
2340
  * @example
2341
2341
  *```js
2342
- * liveboardEmbed.on(EmbedEvent.LiveboardInfo, payload => {
2342
+ * liveboardEmbed.on(EmbedEvent.AnswerChartSwitcher, payload => {
2343
2343
  * console.log('Liveboard details', payload);
2344
2344
  * })
2345
2345
  *```
@@ -2714,58 +2714,58 @@ export enum EmbedEvent {
2714
2714
  */
2715
2715
  RequestVisibleEmbedCoordinates = 'requestVisibleEmbedCoordinates',
2716
2716
  /**
2717
- * Emitted when Spotter response is text data
2717
+ * Emitted when spotter response is text data
2718
2718
  * @example
2719
2719
  * ```js
2720
2720
  * spotterEmbed.on(EmbedEvent.SpotterData, (payload) => {
2721
2721
  * console.log('payload', payload);
2722
2722
  * })
2723
2723
  *```
2724
- * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
2724
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
2725
2725
  */
2726
2726
  SpotterData = 'SpotterData',
2727
2727
  /**
2728
- * Emitted when user opens up the worksheet preview modal in Spotter embed.
2728
+ * Emitted when user opens up the worksheet preview modal in spotter embed.
2729
2729
  * @example
2730
2730
  * ```js
2731
2731
  * spotterEmbed.on(EmbedEvent.PreviewSpotterData, (payload) => {
2732
2732
  * console.log('payload', payload);
2733
2733
  * })
2734
2734
  *```
2735
- * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
2735
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
2736
2736
  */
2737
2737
  PreviewSpotterData = 'PreviewSpotterData',
2738
2738
  /**
2739
- * Emitted when the Spotter query is triggered in Spotter embed.
2739
+ * Emitted when the spotter query is triggered in spotter embed.
2740
2740
  * @example
2741
2741
  * ```js
2742
2742
  * spotterEmbed.on(EmbedEvent.SpotterQueryTriggered, (payload) => {
2743
2743
  * console.log('payload', payload);
2744
2744
  * })
2745
2745
  *```
2746
- * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
2746
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
2747
2747
  */
2748
2748
  SpotterQueryTriggered = 'SpotterQueryTriggered',
2749
2749
  /**
2750
- * Emitted when the last Spotter query is edited in Spotter embed.
2750
+ * Emitted when the last spotter query is edited in spotter embed.
2751
2751
  * @example
2752
2752
  * ```js
2753
2753
  * spotterEmbed.on(EmbedEvent.LastPromptEdited, (payload) => {
2754
2754
  * console.log('payload', payload);
2755
2755
  * })
2756
2756
  *```
2757
- * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
2757
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
2758
2758
  */
2759
2759
  LastPromptEdited = 'LastPromptEdited',
2760
2760
  /**
2761
- * Emitted when the last Spotter query is deleted in Spotter embed.
2761
+ * Emitted when the last spotter query is deleted in spotter embed.
2762
2762
  * @example
2763
2763
  * ```js
2764
2764
  * spotterEmbed.on(EmbedEvent.LastPromptDeleted, (payload) => {
2765
2765
  * console.log('payload', payload);
2766
2766
  * })
2767
2767
  *```
2768
- * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
2768
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
2769
2769
  */
2770
2770
  LastPromptDeleted = 'LastPromptDeleted',
2771
2771
  /**
@@ -2776,7 +2776,7 @@ export enum EmbedEvent {
2776
2776
  * console.log('payload', payload);
2777
2777
  * })
2778
2778
  *```
2779
- * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
2779
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
2780
2780
  */
2781
2781
  ResetSpotterConversation = 'ResetSpotterConversation',
2782
2782
  /**
@@ -2789,7 +2789,7 @@ export enum EmbedEvent {
2789
2789
  *```
2790
2790
  * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
2791
2791
  */
2792
- SpotterInit = 'spotterInit'
2792
+ SpotterInit = 'SpotterInit'
2793
2793
  }
2794
2794
 
2795
2795
  /**
@@ -2879,7 +2879,6 @@ export enum HostEvent {
2879
2879
  * done automatically on the most popular column.
2880
2880
  * @param - vizId [TS >= 9.8.0] - Optional. The GUID of the visualization to drill
2881
2881
  * in case of a Liveboard.
2882
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
2883
2882
  * @example
2884
2883
  * ```js
2885
2884
  * searchEmbed.on(EmbedEvent.VizPointDoubleClick, (payload) => {
@@ -3199,21 +3198,12 @@ export enum HostEvent {
3199
3198
  * Trigger the **Download PDF** action on an embedded Liveboard,
3200
3199
  * visualization or Answer.
3201
3200
  *
3202
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3203
- *
3204
3201
  * **NOTE**: The **Download** > **PDF** action is available on
3205
3202
  * visualizations and Answers if the data is in tabular format.
3206
3203
  * @example
3207
3204
  * ```js
3208
3205
  * liveboardEmbed.trigger(HostEvent.DownloadAsPdf)
3209
3206
  * ```
3210
- * @example
3211
- * ```js
3212
- * spotterEmbed.trigger(HostEvent.DownloadAsPdf, {
3213
- * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3214
- * });
3215
- * ```
3216
- *
3217
3207
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
3218
3208
  */
3219
3209
  DownloadAsPdf = 'downloadAsPdf',
@@ -3315,8 +3305,7 @@ export enum HostEvent {
3315
3305
  * This event is not supported in visualization embed and search embed.
3316
3306
  * @param - object - To trigger the action for a specific visualization
3317
3307
  * in Liveboard embed, pass in `vizId` as a key.
3318
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3319
- *
3308
+ * **Required** in Spotter embed.
3320
3309
  * @example
3321
3310
  * ```js
3322
3311
  * liveboardEmbed.trigger(HostEvent.Edit)
@@ -3331,12 +3320,6 @@ export enum HostEvent {
3331
3320
  * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3332
3321
  * });
3333
3322
  * ```
3334
- * @example
3335
- * ```js
3336
- * const editResponse = await spotterEmbed.trigger(HostEvent.Edit, {
3337
- * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3338
- * });
3339
- * ```
3340
3323
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
3341
3324
  */
3342
3325
  Edit = 'edit',
@@ -3457,7 +3440,6 @@ export enum HostEvent {
3457
3440
  /**
3458
3441
  * Trigger the **Download** action on charts in
3459
3442
  * the embedded view.
3460
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3461
3443
  * @example
3462
3444
  * ```js
3463
3445
  * liveboardEmbed.trigger(HostEvent.Download, {vizId:
@@ -3466,11 +3448,6 @@ export enum HostEvent {
3466
3448
  * ```js
3467
3449
  * embed.trigger(HostEvent.Download)
3468
3450
  * ```
3469
- * ```js
3470
- * spotterEmbed.trigger(HostEvent.Download, {
3471
- * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3472
- * });
3473
- * ```
3474
3451
  * @deprecated from SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl ,9.4.1.sw
3475
3452
  * Use {@link DownloadAsPng}
3476
3453
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
@@ -3499,7 +3476,6 @@ export enum HostEvent {
3499
3476
  /**
3500
3477
  * Trigger the **Download** > **CSV** action on tables in
3501
3478
  * the embedded view.
3502
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3503
3479
  * @example
3504
3480
  * ```js
3505
3481
  * liveboardEmbed.trigger(HostEvent.DownloadAsCsv, {vizId:
@@ -3522,7 +3498,6 @@ export enum HostEvent {
3522
3498
  /**
3523
3499
  * Trigger the **Download** > **XLSX** action on tables
3524
3500
  * in the embedded view.
3525
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3526
3501
  * @example
3527
3502
  * ```js
3528
3503
  * liveboardEmbed.trigger(HostEvent.DownloadAsXlsx, {vizId:
@@ -3558,7 +3533,7 @@ export enum HostEvent {
3558
3533
  /**
3559
3534
  * Trigger the **Save** action on a Liveboard or Answer.
3560
3535
  * Saves the changes.
3561
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3536
+ * @param - `vizId` is required in Spotter Embed.
3562
3537
  * @example
3563
3538
  * ```js
3564
3539
  * liveboardEmbed.trigger(HostEvent.Save)
@@ -3868,7 +3843,6 @@ export enum HostEvent {
3868
3843
  UpdateParameters = 'UpdateParameters',
3869
3844
  /**
3870
3845
  * Triggers GetParameters to fetch the runtime Parameters.
3871
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3872
3846
  * ```js
3873
3847
  * liveboardEmbed.trigger(HostEvent.GetParameters).then((parameter) => {
3874
3848
  * console.log('parameters', parameter);
@@ -3912,7 +3886,7 @@ export enum HostEvent {
3912
3886
  * @param - optional attributes to set Answer properties.
3913
3887
  * `name` - Name string for the Answer.
3914
3888
  * `description` - Description text for the Answer.
3915
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3889
+ *
3916
3890
  * @example
3917
3891
  * ```js
3918
3892
  * const saveAnswerResponse = await searchEmbed.trigger(HostEvent.SaveAnswer, {
@@ -3920,14 +3894,6 @@ export enum HostEvent {
3920
3894
  * description: "Total sales by states in MidWest"
3921
3895
  * });
3922
3896
  * ```
3923
- * @example
3924
- * ```js
3925
- * const saveAnswerResponse = await spotterEmbed.trigger(HostEvent.SaveAnswer, {
3926
- * vizId: '730496d6-6903-4601-937e-2c691821af3c',
3927
- * name: "Sales by states",
3928
- * description: "Total sales by states in MidWest"
3929
- * });
3930
- * ```
3931
3897
  * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
3932
3898
  */
3933
3899
  SaveAnswer = 'saveAnswer',
@@ -3959,7 +3925,7 @@ export enum HostEvent {
3959
3925
  /**
3960
3926
  * Triggers a search operation with the search tokens specified in
3961
3927
  * the search query string in spotter embed.
3962
- * @param - `query`: Text string in Natural Language format
3928
+ * @param - `queryString`: Text string in Natural Language format
3963
3929
  * @param - `executeSearch`: Boolean to execute search and update search query
3964
3930
  * @example
3965
3931
  * ```js
@@ -3968,7 +3934,6 @@ export enum HostEvent {
3968
3934
  * executeSearch: true,
3969
3935
  * })
3970
3936
  * ```
3971
- * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
3972
3937
  */
3973
3938
  SpotterSearch = 'SpotterSearch',
3974
3939
  /**
@@ -3978,7 +3943,6 @@ export enum HostEvent {
3978
3943
  * ```js
3979
3944
  * spotterEmbed.trigger(HostEvent.EditLastPrompt, "revenue per year");
3980
3945
  * ```
3981
- * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
3982
3946
  */
3983
3947
  EditLastPrompt = 'EditLastPrompt',
3984
3948
  /**
@@ -3987,7 +3951,6 @@ export enum HostEvent {
3987
3951
  * ```js
3988
3952
  * spotterEmbed.trigger(HostEvent.PreviewSpotterData);
3989
3953
  * ```
3990
- * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
3991
3954
  */
3992
3955
  PreviewSpotterData = 'PreviewSpotterData',
3993
3956
  /**
@@ -3996,7 +3959,6 @@ export enum HostEvent {
3996
3959
  * ```js
3997
3960
  * spotterEmbed.trigger(HostEvent.ResetSpotterConversation);
3998
3961
  * ```
3999
- * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
4000
3962
  */
4001
3963
  ResetSpotterConversation = 'ResetSpotterConversation',
4002
3964
  /**
@@ -4005,19 +3967,17 @@ export enum HostEvent {
4005
3967
  * ```js
4006
3968
  * spotterEmbed.trigger(HostEvent.DeleteLastPrompt);
4007
3969
  * ```
4008
- * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
4009
3970
  */
4010
3971
  DeleteLastPrompt = 'DeleteLastPrompt',
4011
3972
  /**
4012
3973
  * Toggle the visualization to chart or table view.
4013
- * @param - `vizId ` refers to the answer id in spotter Embed, it is required in spotter Embed.
3974
+ * @param - `vizId ` In Spotter Embed, vizId is required.
4014
3975
  * @example
4015
3976
  * ```js
4016
3977
  * spotterEmbed.trigger(HostEvent.AnswerChartSwitcher, {
4017
- * vizId:'b535c760-8bbe-4e6f-bb26-af56b4129a1e'
3978
+ * vizId:"'b535c760-8bbe-4e6f-bb26-af56b4129a1e'"
4018
3979
  * });
4019
3980
  *```
4020
- * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
4021
3981
  */
4022
3982
  AnswerChartSwitcher = 'answerChartSwitcher',
4023
3983
  /**
@@ -4044,16 +4004,26 @@ export enum HostEvent {
4044
4004
  */
4045
4005
  VisibleEmbedCoordinates = 'visibleEmbedCoordinates',
4046
4006
  /**
4047
- * Trigger the *Ask Spotter* action for visualizations
4048
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
4007
+ * Trigger the *Ask Sage* action for visualizations
4049
4008
  * @example
4050
4009
  * ```js
4051
- * spotterEmbed.trigger(HostEvent.AskSpotter,
4052
- * {vizId:'730496d6-6903-4601-937e-2c691821af3c'})
4010
+ * liveboardEmbed.trigger(HostEvent.AskSpotter,
4011
+ * {containerId:'730496d6-6903-4601-937e-2c691821af3c'})
4053
4012
  * ```
4054
4013
  * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4055
4014
  */
4056
- AskSpotter = 'AskSpotter',
4015
+ AskSpotter = 'askSpotter',
4016
+
4017
+ /**
4018
+ * @hidden
4019
+ * Triggers the update of the embed params.
4020
+ *
4021
+ * @example
4022
+ * ```js
4023
+ * liveboardEmbed.trigger(HostEvent.UpdateEmbedParams, viewConfig);
4024
+ * ```
4025
+ */
4026
+ UpdateEmbedParams = 'updateEmbedParams',
4057
4027
  }
4058
4028
 
4059
4029
  /**