@thoughtspot/visual-embed-sdk 1.41.1 → 1.42.1-HE2

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 (186) hide show
  1. package/cjs/package.json +9 -9
  2. package/cjs/src/css-variables.d.ts +52 -14
  3. package/cjs/src/css-variables.d.ts.map +1 -1
  4. package/cjs/src/embed/app.d.ts +20 -0
  5. package/cjs/src/embed/app.d.ts.map +1 -1
  6. package/cjs/src/embed/app.js +7 -1
  7. package/cjs/src/embed/app.js.map +1 -1
  8. package/cjs/src/embed/app.spec.js +52 -0
  9. package/cjs/src/embed/app.spec.js.map +1 -1
  10. package/cjs/src/embed/bodyless-conversation.d.ts +1 -0
  11. package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -1
  12. package/cjs/src/embed/bodyless-conversation.js +7 -3
  13. package/cjs/src/embed/bodyless-conversation.js.map +1 -1
  14. package/cjs/src/embed/conversation.d.ts +1 -0
  15. package/cjs/src/embed/conversation.d.ts.map +1 -1
  16. package/cjs/src/embed/conversation.js +7 -2
  17. package/cjs/src/embed/conversation.js.map +1 -1
  18. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +3 -3
  19. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  20. package/cjs/src/embed/hostEventClient/host-event-client.js +6 -6
  21. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  22. package/cjs/src/embed/liveboard.d.ts +1 -0
  23. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  24. package/cjs/src/embed/liveboard.js +10 -2
  25. package/cjs/src/embed/liveboard.js.map +1 -1
  26. package/cjs/src/embed/liveboard.spec.js +35 -0
  27. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  28. package/cjs/src/embed/sage.d.ts +1 -0
  29. package/cjs/src/embed/sage.d.ts.map +1 -1
  30. package/cjs/src/embed/sage.js +10 -6
  31. package/cjs/src/embed/sage.js.map +1 -1
  32. package/cjs/src/embed/search-bar.d.ts +1 -0
  33. package/cjs/src/embed/search-bar.d.ts.map +1 -1
  34. package/cjs/src/embed/search-bar.js +11 -7
  35. package/cjs/src/embed/search-bar.js.map +1 -1
  36. package/cjs/src/embed/search.d.ts +1 -0
  37. package/cjs/src/embed/search.d.ts.map +1 -1
  38. package/cjs/src/embed/search.js +7 -8
  39. package/cjs/src/embed/search.js.map +1 -1
  40. package/cjs/src/embed/ts-embed.d.ts +20 -5
  41. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  42. package/cjs/src/embed/ts-embed.js +84 -31
  43. package/cjs/src/embed/ts-embed.js.map +1 -1
  44. package/cjs/src/embed/ts-embed.spec.js +83 -0
  45. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  46. package/cjs/src/errors.d.ts +1 -0
  47. package/cjs/src/errors.d.ts.map +1 -1
  48. package/cjs/src/errors.js +1 -0
  49. package/cjs/src/errors.js.map +1 -1
  50. package/cjs/src/react/all-types-export.spec.js +1 -1
  51. package/cjs/src/react/all-types-export.spec.js.map +1 -1
  52. package/cjs/src/react/util.js.map +1 -1
  53. package/cjs/src/react/util.spec.d.ts +2 -0
  54. package/cjs/src/react/util.spec.d.ts.map +1 -0
  55. package/cjs/src/react/util.spec.js +78 -0
  56. package/cjs/src/react/util.spec.js.map +1 -0
  57. package/cjs/src/types.d.ts +153 -64
  58. package/cjs/src/types.d.ts.map +1 -1
  59. package/cjs/src/types.js +136 -62
  60. package/cjs/src/types.js.map +1 -1
  61. package/cjs/src/utils/processTrigger.d.ts +2 -1
  62. package/cjs/src/utils/processTrigger.d.ts.map +1 -1
  63. package/cjs/src/utils/processTrigger.js +4 -2
  64. package/cjs/src/utils/processTrigger.js.map +1 -1
  65. package/dist/{index-DQueHwfQ.js → index-CWQnMX2L.js} +1 -1
  66. package/dist/index-Djtv-y7A.js +7371 -0
  67. package/dist/src/css-variables.d.ts +52 -14
  68. package/dist/src/css-variables.d.ts.map +1 -1
  69. package/dist/src/embed/app.d.ts +20 -0
  70. package/dist/src/embed/app.d.ts.map +1 -1
  71. package/dist/src/embed/bodyless-conversation.d.ts +1 -0
  72. package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
  73. package/dist/src/embed/conversation.d.ts +1 -0
  74. package/dist/src/embed/conversation.d.ts.map +1 -1
  75. package/dist/src/embed/hostEventClient/host-event-client.d.ts +3 -3
  76. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  77. package/dist/src/embed/liveboard.d.ts +1 -0
  78. package/dist/src/embed/liveboard.d.ts.map +1 -1
  79. package/dist/src/embed/sage.d.ts +1 -0
  80. package/dist/src/embed/sage.d.ts.map +1 -1
  81. package/dist/src/embed/search-bar.d.ts +1 -0
  82. package/dist/src/embed/search-bar.d.ts.map +1 -1
  83. package/dist/src/embed/search.d.ts +1 -0
  84. package/dist/src/embed/search.d.ts.map +1 -1
  85. package/dist/src/embed/ts-embed.d.ts +20 -5
  86. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  87. package/dist/src/errors.d.ts +1 -0
  88. package/dist/src/errors.d.ts.map +1 -1
  89. package/dist/src/react/util.spec.d.ts +2 -0
  90. package/dist/src/react/util.spec.d.ts.map +1 -0
  91. package/dist/src/types.d.ts +153 -64
  92. package/dist/src/types.d.ts.map +1 -1
  93. package/dist/src/utils/processTrigger.d.ts +2 -1
  94. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  95. package/dist/tsembed-react.es.js +294 -134
  96. package/dist/tsembed-react.js +293 -133
  97. package/dist/tsembed.es.js +294 -134
  98. package/dist/tsembed.js +293 -133
  99. package/dist/visual-embed-sdk-react-full.d.ts +9401 -9916
  100. package/dist/visual-embed-sdk-react.d.ts +9273 -9922
  101. package/dist/visual-embed-sdk.d.ts +9440 -9533
  102. package/lib/package.json +9 -9
  103. package/lib/src/css-variables.d.ts +52 -14
  104. package/lib/src/css-variables.d.ts.map +1 -1
  105. package/lib/src/embed/app.d.ts +20 -0
  106. package/lib/src/embed/app.d.ts.map +1 -1
  107. package/lib/src/embed/app.js +7 -1
  108. package/lib/src/embed/app.js.map +1 -1
  109. package/lib/src/embed/app.spec.js +52 -0
  110. package/lib/src/embed/app.spec.js.map +1 -1
  111. package/lib/src/embed/bodyless-conversation.d.ts +1 -0
  112. package/lib/src/embed/bodyless-conversation.d.ts.map +1 -1
  113. package/lib/src/embed/bodyless-conversation.js +7 -3
  114. package/lib/src/embed/bodyless-conversation.js.map +1 -1
  115. package/lib/src/embed/conversation.d.ts +1 -0
  116. package/lib/src/embed/conversation.d.ts.map +1 -1
  117. package/lib/src/embed/conversation.js +7 -2
  118. package/lib/src/embed/conversation.js.map +1 -1
  119. package/lib/src/embed/hostEventClient/host-event-client.d.ts +3 -3
  120. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  121. package/lib/src/embed/hostEventClient/host-event-client.js +6 -6
  122. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  123. package/lib/src/embed/liveboard.d.ts +1 -0
  124. package/lib/src/embed/liveboard.d.ts.map +1 -1
  125. package/lib/src/embed/liveboard.js +10 -2
  126. package/lib/src/embed/liveboard.js.map +1 -1
  127. package/lib/src/embed/liveboard.spec.js +35 -0
  128. package/lib/src/embed/liveboard.spec.js.map +1 -1
  129. package/lib/src/embed/sage.d.ts +1 -0
  130. package/lib/src/embed/sage.d.ts.map +1 -1
  131. package/lib/src/embed/sage.js +10 -6
  132. package/lib/src/embed/sage.js.map +1 -1
  133. package/lib/src/embed/search-bar.d.ts +1 -0
  134. package/lib/src/embed/search-bar.d.ts.map +1 -1
  135. package/lib/src/embed/search-bar.js +11 -7
  136. package/lib/src/embed/search-bar.js.map +1 -1
  137. package/lib/src/embed/search.d.ts +1 -0
  138. package/lib/src/embed/search.d.ts.map +1 -1
  139. package/lib/src/embed/search.js +7 -8
  140. package/lib/src/embed/search.js.map +1 -1
  141. package/lib/src/embed/ts-embed.d.ts +20 -5
  142. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  143. package/lib/src/embed/ts-embed.js +84 -31
  144. package/lib/src/embed/ts-embed.js.map +1 -1
  145. package/lib/src/embed/ts-embed.spec.js +83 -0
  146. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  147. package/lib/src/errors.d.ts +1 -0
  148. package/lib/src/errors.d.ts.map +1 -1
  149. package/lib/src/errors.js +1 -0
  150. package/lib/src/errors.js.map +1 -1
  151. package/lib/src/react/all-types-export.spec.js +1 -1
  152. package/lib/src/react/all-types-export.spec.js.map +1 -1
  153. package/lib/src/react/util.js.map +1 -1
  154. package/lib/src/react/util.spec.d.ts +2 -0
  155. package/lib/src/react/util.spec.d.ts.map +1 -0
  156. package/lib/src/react/util.spec.js +76 -0
  157. package/lib/src/react/util.spec.js.map +1 -0
  158. package/lib/src/types.d.ts +153 -64
  159. package/lib/src/types.d.ts.map +1 -1
  160. package/lib/src/types.js +136 -62
  161. package/lib/src/types.js.map +1 -1
  162. package/lib/src/utils/processTrigger.d.ts +2 -1
  163. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  164. package/lib/src/utils/processTrigger.js +4 -2
  165. package/lib/src/utils/processTrigger.js.map +1 -1
  166. package/package.json +9 -9
  167. package/src/css-variables.ts +53 -16
  168. package/src/embed/app.spec.ts +73 -0
  169. package/src/embed/app.ts +30 -0
  170. package/src/embed/bodyless-conversation.ts +8 -3
  171. package/src/embed/conversation.ts +17 -2
  172. package/src/embed/hostEventClient/host-event-client.ts +7 -3
  173. package/src/embed/liveboard.spec.ts +44 -0
  174. package/src/embed/liveboard.ts +12 -1
  175. package/src/embed/sage.ts +14 -9
  176. package/src/embed/search-bar.tsx +14 -7
  177. package/src/embed/search.ts +18 -7
  178. package/src/embed/ts-embed.spec.ts +112 -1
  179. package/src/embed/ts-embed.ts +104 -37
  180. package/src/errors.ts +1 -0
  181. package/src/react/all-types-export.spec.ts +1 -1
  182. package/src/react/util.spec.tsx +88 -0
  183. package/src/react/util.ts +3 -3
  184. package/src/types.ts +211 -121
  185. package/src/utils/processTrigger.ts +5 -2
  186. package/lib/src/visual-embed-sdk.d.ts +0 -9779
package/src/types.ts CHANGED
@@ -231,12 +231,12 @@ export type DOMSelector = string | HTMLElement;
231
231
  * Use {@link CustomCssVariables} or css rules.
232
232
  */
233
233
  export interface customCssInterface {
234
- /**
235
- * The custom css variables, which can be set.
236
- * The variables are available in the {@link CustomCssVariables}
237
- * interface. For more information, see
238
- * link:https://developers.thoughtspot.com/docs/css-variables-reference[CSS variable reference].
239
- */
234
+ /**
235
+ * The custom css variables, which can be set.
236
+ * The variables are available in the {@link CustomCssVariables}
237
+ * interface. For more information, see
238
+ * link:https://developers.thoughtspot.com/docs/css-variables-reference[CSS variable reference].
239
+ */
240
240
  variables?: CustomCssVariables;
241
241
  /**
242
242
  * Can be used to define a custom font face
@@ -648,7 +648,7 @@ export interface EmbedConfig {
648
648
  * ```
649
649
  * @version SDK 1.37.0 | ThoughtSpot: 10.8.0.cl
650
650
  */
651
- customVariablesForThirdPartyTools?: Record< string, any >;
651
+ customVariablesForThirdPartyTools?: Record<string, any>;
652
652
 
653
653
  disablePreauthCache?: boolean;
654
654
 
@@ -695,7 +695,7 @@ export interface EmbedConfig {
695
695
  }
696
696
 
697
697
  // eslint-disable-next-line @typescript-eslint/no-empty-object-type
698
- export interface LayoutConfig {}
698
+ export interface LayoutConfig { }
699
699
 
700
700
  /**
701
701
  * Embedded iframe configuration
@@ -1481,41 +1481,56 @@ export interface LiveboardAppEmbedViewConfig {
1481
1481
  * ```
1482
1482
  */
1483
1483
  enableAskSage?: boolean;
1484
- /**
1485
- * This flag is used to show or hide checkboxes for including or excluding
1486
- * the cover and filters pages in the Liveboard PDF.
1484
+ /**
1485
+ * This flag is used to show or hide checkboxes for including or excluding
1486
+ * the cover and filters pages in the Liveboard PDF.
1487
+ *
1488
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1489
+ * @version SDK: 1.40.0 | ThoughtSpot:10.8.0.cl
1490
+ * @example
1491
+ * ```js
1492
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
1493
+ * const embed = new <EmbedComponent>('#tsEmbed', {
1494
+ * ... // other embed view config
1495
+ * coverAndFilterOptionInPDF: false,
1496
+ * })
1497
+ * ```
1498
+ */
1499
+ coverAndFilterOptionInPDF?: boolean;
1500
+ /**
1501
+ * This flag is used to enable or disable the XLSX/CSV download option for Liveboards.
1487
1502
  *
1488
1503
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1489
- * @version SDK: 1.40.0 | ThoughtSpot:10.8.0.cl
1504
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.14.0.cl
1490
1505
  * @example
1491
1506
  * ```js
1492
1507
  * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
1493
1508
  * const embed = new <EmbedComponent>('#tsEmbed', {
1494
1509
  * ... // other embed view config
1495
- * coverAndFilterOptionInPDF: false,
1510
+ * liveboardXLSXCSVDownload: true,
1496
1511
  * })
1497
1512
  * ```
1498
1513
  */
1499
- coverAndFilterOptionInPDF?: boolean;
1514
+ liveboardXLSXCSVDownload?: boolean;
1500
1515
  /**
1501
- * This flag is used to enable or disable the XLSX/CSV download option for Liveboards.
1516
+ * This flag is used to enable or disable the link parameters in liveboard.
1502
1517
  *
1503
1518
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1504
- * @version SDK: 1.41.0 | ThoughtSpot: 10.14.0.cl
1519
+ * @version SDK: 1.42.0 | ThoughtSpot: 10.14.0.cl
1505
1520
  * @example
1506
1521
  * ```js
1507
1522
  * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
1508
1523
  * const embed = new <EmbedComponent>('#tsEmbed', {
1509
1524
  * ... // other embed view config
1510
- * liveboardXLSXCSVDownload: true,
1525
+ * isLinkParametersEnabled: true,
1511
1526
  * })
1512
1527
  * ```
1513
1528
  */
1514
- liveboardXLSXCSVDownload?: boolean;
1515
-
1529
+ isLinkParametersEnabled?: boolean;
1530
+
1516
1531
  }
1517
1532
 
1518
- export interface AllEmbedViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, HomePageConfig, LiveboardAppEmbedViewConfig {}
1533
+ export interface AllEmbedViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, HomePageConfig, LiveboardAppEmbedViewConfig { }
1519
1534
 
1520
1535
  /**
1521
1536
  * MessagePayload: Embed event payload: message type, data and status (start/end)
@@ -1820,7 +1835,7 @@ export enum EmbedEvent {
1820
1835
  */
1821
1836
  Load = 'load',
1822
1837
  /**
1823
- * Data pertaining to an Answer or Liveboard is received.
1838
+ * Data pertaining to an Answer, Liveboard or Spotter visualization is received.
1824
1839
  * The event payload includes the raw data of the object.
1825
1840
  * @return data - Answer of Liveboard data
1826
1841
  * @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 8.4.1.sw
@@ -2774,25 +2789,25 @@ export enum EmbedEvent {
2774
2789
  * ```
2775
2790
  * @version SDK: 1.37.0 | ThoughtSpot: 10.8.0.cl
2776
2791
  */
2777
- TableVizRendered = 'TableVizRendered',
2778
- /**
2779
- * Emitted when the liveboard is created from pin modal or Liveboard list page.
2780
- * You can use this event as a hook to trigger
2781
- * other events on liveboard creation.
2782
- *
2783
- * ```js
2784
- * liveboardEmbed.on(EmbedEvent.CreateLiveboard, (payload) => {
2785
- * console.log('payload', payload);
2786
- * })
2787
- *```
2788
- * @version SDK : 1.37.0 | ThoughtSpot: 10.8.0.cl
2789
- */
2792
+ TableVizRendered = 'TableVizRendered',
2793
+ /**
2794
+ * Emitted when the liveboard is created from pin modal or Liveboard list page.
2795
+ * You can use this event as a hook to trigger
2796
+ * other events on liveboard creation.
2797
+ *
2798
+ * ```js
2799
+ * liveboardEmbed.on(EmbedEvent.CreateLiveboard, (payload) => {
2800
+ * console.log('payload', payload);
2801
+ * })
2802
+ *```
2803
+ * @version SDK : 1.37.0 | ThoughtSpot: 10.8.0.cl
2804
+ */
2790
2805
  CreateLiveboard = 'createLiveboard',
2791
2806
  /**
2792
2807
  * Emitted when a user creates a Model.
2793
2808
  * @version SDK : 1.37.0 | ThoughtSpot: 10.8.0.cl
2794
2809
  */
2795
- CreateModel = 'createModel',
2810
+ CreateModel = 'createModel',
2796
2811
  /**
2797
2812
  * @hidden
2798
2813
  * Emitted when a user exits present mode.
@@ -3194,7 +3209,7 @@ export enum HostEvent {
3194
3209
  * the following parameters:
3195
3210
  *
3196
3211
  * @param
3197
- * `vizId`- GUID of the saved Answer or visualization to pin to a Liveboard.
3212
+ * `vizId`- GUID of the saved Answer or Spotter visualization ID to pin to a Liveboard.
3198
3213
  * Optional when pinning a new chart or table generated from a Search query.
3199
3214
  * **Required** in Spotter Embed.
3200
3215
  * @param
@@ -3246,10 +3261,16 @@ export enum HostEvent {
3246
3261
  * ```
3247
3262
  * @example
3248
3263
  * ```js
3249
- * const pinResponse = await spotterEmbed.trigger(HostEvent.Pin, {
3250
- * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3251
- * });
3252
- * ```
3264
+
3265
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in Pin host event.
3266
+ * let latestSpotterVizId = '';
3267
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
3268
+ * latestSpotterVizId = payload.data.id;
3269
+ * });
3270
+ *
3271
+ * spotterEmbed.trigger(HostEvent.Pin, { vizId: latestSpotterVizId });
3272
+ * ```
3273
+ *
3253
3274
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
3254
3275
  */
3255
3276
  Pin = 'pin',
@@ -3324,10 +3345,15 @@ export enum HostEvent {
3324
3345
  * ```
3325
3346
  * @example
3326
3347
  * ```js
3327
- * spotterEmbed.trigger(HostEvent.DownloadAsPdf, {
3328
- * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3329
- * });
3330
- * ```
3348
+
3349
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in DownloadAsPdf host event.
3350
+ * let latestSpotterVizId = '';
3351
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
3352
+ * latestSpotterVizId = payload.data.id;
3353
+ * });
3354
+ *
3355
+ * spotterEmbed.trigger(HostEvent.DownloadAsPdf, { vizId: latestSpotterVizId });
3356
+ * ```
3331
3357
  *
3332
3358
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
3333
3359
  */
@@ -3354,10 +3380,14 @@ export enum HostEvent {
3354
3380
  * ```
3355
3381
  * @example
3356
3382
  * ```js
3357
- * const pinResponse = await spotterEmbed.trigger(HostEvent.MakeACopy, {
3358
- * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3359
- * });
3360
- * ```
3383
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in MakeACopy host event.
3384
+ * let latestSpotterVizId = '';
3385
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
3386
+ * latestSpotterVizId = payload.data.id;
3387
+ * });
3388
+ *
3389
+ * spotterEmbed.trigger(HostEvent.MakeACopy, { vizId: latestSpotterVizId });
3390
+ * ```
3361
3391
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
3362
3392
  */
3363
3393
  MakeACopy = 'makeACopy',
@@ -3442,15 +3472,7 @@ export enum HostEvent {
3442
3472
  * ```
3443
3473
  * @example
3444
3474
  * ```js
3445
- * const pinResponse = await spotterEmbed.trigger(HostEvent.Edit, {
3446
- * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3447
- * });
3448
- * ```
3449
- * @example
3450
- * ```js
3451
- * const editResponse = await spotterEmbed.trigger(HostEvent.Edit, {
3452
- * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3453
- * });
3475
+ * spotterEmbed.trigger(HostEvent.Edit);
3454
3476
  * ```
3455
3477
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
3456
3478
  */
@@ -3499,16 +3521,23 @@ export enum HostEvent {
3499
3521
  * );
3500
3522
  * })
3501
3523
  * ```
3502
- * @example
3524
+ * * @example
3503
3525
  * ```js
3504
- * spotterEmbed.trigger(HostEvent.GetTML, {
3505
- * vizId: '730496d6-6903-4601-937e-2c691821af3c'
3526
+
3527
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in Pin host event.
3528
+ * let latestSpotterVizId = '';
3529
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
3530
+ * latestSpotterVizId = payload.data.id;
3531
+ * });
3532
+ *
3533
+ * spotterEmbed.trigger(HostEvent.GetTML, {
3534
+ * vizId: latestSpotterVizId
3506
3535
  * }).then((tml) => {
3507
3536
  * console.log(
3508
3537
  * tml.answer.search_query // TML representation of the search query
3509
3538
  * );
3510
3539
  * })
3511
- * ```
3540
+ * ```
3512
3541
  * @version SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1.sw
3513
3542
  * @important
3514
3543
  */
@@ -3572,7 +3601,7 @@ export enum HostEvent {
3572
3601
  /**
3573
3602
  * Trigger the **Download** action on charts in
3574
3603
  * the embedded view.
3575
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3604
+ * @param - `vizId` refers to the Visualization ID in Spotter embed and is required in Spotter embed.
3576
3605
  * @example
3577
3606
  * ```js
3578
3607
  * liveboardEmbed.trigger(HostEvent.Download, {vizId:
@@ -3582,10 +3611,14 @@ export enum HostEvent {
3582
3611
  * embed.trigger(HostEvent.Download)
3583
3612
  * ```
3584
3613
  * ```js
3585
- * spotterEmbed.trigger(HostEvent.Download, {
3586
- * vizId:'730496d6-6903-4601-937e-2c691821af3c'
3587
- * });
3588
- * ```
3614
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in Download host event.
3615
+ * let latestSpotterVizId = '';
3616
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
3617
+ * latestSpotterVizId = payload.data.id;
3618
+ * });
3619
+ *
3620
+ * spotterEmbed.trigger(HostEvent.Download, { vizId: latestSpotterVizId });
3621
+ * ```
3589
3622
  * @deprecated from SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl ,9.4.1.sw
3590
3623
  * Use {@link DownloadAsPng}
3591
3624
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
@@ -3603,9 +3636,13 @@ export enum HostEvent {
3603
3636
  *
3604
3637
  * searchEmbed.trigger(HostEvent.DownloadAsPng)
3605
3638
  *
3606
- * spotterEmbed.trigger(HostEvent.DownloadAsPng, {
3607
- * vizId:"730496d6-6903-4601-937e-2c691821af3c"
3608
- * })
3639
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in DownloadAsPng host event.
3640
+ * let latestSpotterVizId = '';
3641
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
3642
+ * latestSpotterVizId = payload.data.id;
3643
+ * });
3644
+ *
3645
+ * spotterEmbed.trigger(HostEvent.DownloadAsPng, { vizId: latestSpotterVizId });
3609
3646
  * ```
3610
3647
  *
3611
3648
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.4.1.sw
@@ -3614,7 +3651,7 @@ export enum HostEvent {
3614
3651
  /**
3615
3652
  * Trigger the **Download** > **CSV** action on tables in
3616
3653
  * the embedded view.
3617
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3654
+ * @param - `vizId` refers to the Visualization ID in Spotter embed and is required in Spotter embed.
3618
3655
  * @example
3619
3656
  * ```js
3620
3657
  * liveboardEmbed.trigger(HostEvent.DownloadAsCsv, {vizId:
@@ -3627,9 +3664,13 @@ export enum HostEvent {
3627
3664
  * searchEmbed.trigger(HostEvent.DownloadAsCsv)
3628
3665
  * ```
3629
3666
  * ```js
3630
- * spotterEmbed.trigger(HostEvent.DownloadAsCsv, {
3631
- * vizId:"730496d6-6903-4601-937e-2c691821af3c"
3632
- * })
3667
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in DownloadAsCsv host event.
3668
+ * let latestSpotterVizId = '';
3669
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
3670
+ * latestSpotterVizId = payload.data.id;
3671
+ * });
3672
+ *
3673
+ * spotterEmbed.trigger(HostEvent.DownloadAsCsv, { vizId: latestSpotterVizId });
3633
3674
  * ```
3634
3675
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
3635
3676
  */
@@ -3637,7 +3678,7 @@ export enum HostEvent {
3637
3678
  /**
3638
3679
  * Trigger the **Download** > **XLSX** action on tables
3639
3680
  * in the embedded view.
3640
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3681
+ * @param - `vizId` refers to the Visualization ID in Spotter embed and is required in Spotter embed.
3641
3682
  * @example
3642
3683
  * ```js
3643
3684
  * liveboardEmbed.trigger(HostEvent.DownloadAsXlsx, {vizId:
@@ -3650,9 +3691,13 @@ export enum HostEvent {
3650
3691
  * searchEmbed.trigger(HostEvent.DownloadAsXlsx)
3651
3692
  * ```
3652
3693
  * ```js
3653
- * spotterEmbed.trigger(HostEvent.downloadAsXLSX, {
3654
- * vizId:"730496d6-6903-4601-937e-2c691821af3c"
3655
- * })
3694
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in DownloadAsXlsx host event.
3695
+ * let latestSpotterVizId = '';
3696
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
3697
+ * latestSpotterVizId = payload.data.id;
3698
+ * });
3699
+ *
3700
+ * spotterEmbed.trigger(HostEvent.DownloadAsXlsx, { vizId: latestSpotterVizId });
3656
3701
  * ```
3657
3702
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
3658
3703
  */
@@ -3670,24 +3715,45 @@ export enum HostEvent {
3670
3715
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
3671
3716
  */
3672
3717
  Share = 'share',
3673
- /**
3674
- * Trigger the **Save** action on a Liveboard or Answer.
3675
- * Saves the changes.
3676
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3677
- * @example
3678
- * ```js
3679
- * liveboardEmbed.trigger(HostEvent.Save)
3680
- * ```
3681
- * ```js
3682
- * searchEmbed.trigger(HostEvent.Save)
3683
- * ```
3684
- * ```js
3685
- * spotterEmbed.trigger(HostEvent.Save, {
3686
- * vizId:"730496d6-6903-4601-937e-2c691821af3c"
3687
- * })
3688
- * ```
3689
- * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
3690
- */
3718
+ /**
3719
+ * Trigger the **Save** action on a Liveboard, Answer, or Spotter.
3720
+ * Saves the changes.
3721
+ *
3722
+ * @param - `vizId` refers to the Spotter Visualization Id used in Spotter embed.
3723
+ * It is required and can be retrieved from the data embed event.
3724
+ *
3725
+ * @example
3726
+ * ```js
3727
+ * // Save changes in a Liveboard
3728
+ * liveboardEmbed.trigger(HostEvent.Save)
3729
+ * ```
3730
+ *
3731
+ * ```js
3732
+ * // Save the current Answer in Search embed
3733
+ * searchEmbed.trigger(HostEvent.Save)
3734
+ * ```
3735
+ *
3736
+ * ```js
3737
+ * // Save a Visualization in Spotter (requires vizId)
3738
+ * spotterEmbed.trigger(HostEvent.Save, {
3739
+ * vizId: "730496d6-6903-4601-937e-2c691821af3c"
3740
+ * })
3741
+ * ```
3742
+ *
3743
+ * ```js
3744
+ * // How to get the vizId in Spotter?
3745
+ *
3746
+ * // You can use the Data event dispatched on each answer creation to get the vizId.
3747
+ * let latestSpotterVizId = '';
3748
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
3749
+ * latestSpotterVizId = payload.data.id;
3750
+ * });
3751
+ *
3752
+ * spotterEmbed.trigger(HostEvent.Save, { vizId: latestSpotterVizId });
3753
+ * ```
3754
+ *
3755
+ * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
3756
+ */
3691
3757
  Save = 'save',
3692
3758
  /**
3693
3759
  * Trigger the **Sync to Sheets** action on an embedded visualization or Answer
@@ -3990,11 +4056,13 @@ export enum HostEvent {
3990
4056
  * });
3991
4057
  *```
3992
4058
  *```js
3993
- * spotterEmbed.trigger(HostEvent.GetParameters, {
3994
- * vizId: '730496d6-6903-4601-937e-2c691821af3c'
3995
- * }).then((parameter) => {
3996
- * console.log('parameters', parameter);
3997
- * });
4059
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in GetParameters host event.
4060
+ * let latestSpotterVizId = '';
4061
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
4062
+ * latestSpotterVizId = payload.data.id;
4063
+ * });
4064
+ *
4065
+ * spotterEmbed.trigger(HostEvent.GetParameters, { vizId: latestSpotterVizId });
3998
4066
  *```
3999
4067
  * @version SDK: 1.29.0 | ThoughtSpot: 10.1.0.cl, 10.1.0.sw
4000
4068
  */
@@ -4015,7 +4083,7 @@ export enum HostEvent {
4015
4083
  *```
4016
4084
  * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
4017
4085
  */
4018
- InfoSuccess = 'InfoSuccess',
4086
+ InfoSuccess = 'InfoSuccess',
4019
4087
  /**
4020
4088
  * Trigger the save action for an Answer.
4021
4089
  * To programmatically save an answer without opening the
@@ -4037,11 +4105,13 @@ export enum HostEvent {
4037
4105
  * ```
4038
4106
  * @example
4039
4107
  * ```js
4040
- * const saveAnswerResponse = await spotterEmbed.trigger(HostEvent.SaveAnswer, {
4041
- * vizId: '730496d6-6903-4601-937e-2c691821af3c',
4042
- * name: "Sales by states",
4043
- * description: "Total sales by states in MidWest"
4108
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in SaveAnswer host event.
4109
+ * let latestSpotterVizId = '';
4110
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
4111
+ * latestSpotterVizId = payload.data.id;
4044
4112
  * });
4113
+ *
4114
+ * spotterEmbed.trigger(HostEvent.SaveAnswer, { vizId: latestSpotterVizId });
4045
4115
  * ```
4046
4116
  * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
4047
4117
  */
@@ -4125,12 +4195,15 @@ export enum HostEvent {
4125
4195
  DeleteLastPrompt = 'DeleteLastPrompt',
4126
4196
  /**
4127
4197
  * Toggle the visualization to chart or table view.
4128
- * @param - `vizId ` refers to the answer id in spotter Embed, it is required in spotter Embed.
4198
+ * @param - `vizId ` refers to the Visualization ID in Spotter embed and is required.
4129
4199
  * @example
4130
4200
  * ```js
4131
- * spotterEmbed.trigger(HostEvent.AnswerChartSwitcher, {
4132
- * vizId:'b535c760-8bbe-4e6f-bb26-af56b4129a1e'
4201
+ * let latestSpotterVizId = '';
4202
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
4203
+ * latestSpotterVizId = payload.data.id;
4133
4204
  * });
4205
+ *
4206
+ * spotterEmbed.trigger(HostEvent.AnswerChartSwitcher, { vizId: latestSpotterVizId });
4134
4207
  *```
4135
4208
  * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
4136
4209
  */
@@ -4159,16 +4232,31 @@ export enum HostEvent {
4159
4232
  */
4160
4233
  VisibleEmbedCoordinates = 'visibleEmbedCoordinates',
4161
4234
  /**
4162
- * Trigger the *Ask Spotter* action for visualizations
4163
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
4235
+ * Trigger the *Spotter* action for visualizations present on the liveboard's vizzes.
4236
+ * @param - `vizId` refers to the Visualization ID in Spotter embed and is required.
4164
4237
  * @example
4165
4238
  * ```js
4166
- * spotterEmbed.trigger(HostEvent.AskSpotter,
4167
- * {vizId:'730496d6-6903-4601-937e-2c691821af3c'})
4239
+ * let latestSpotterVizId = '';
4240
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
4241
+ * latestSpotterVizId = payload.data.id;
4242
+ * });
4243
+ *
4244
+ * spotterEmbed.trigger(HostEvent.AskSpotter, { vizId: latestSpotterVizId });
4168
4245
  * ```
4169
4246
  * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4170
4247
  */
4171
4248
  AskSpotter = 'AskSpotter',
4249
+
4250
+ /**
4251
+ * @hidden
4252
+ * Triggers the update of the embed params.
4253
+ *
4254
+ * @example
4255
+ * ```js
4256
+ * liveboardEmbed.trigger(HostEvent.UpdateEmbedParams, viewConfig);
4257
+ * ```
4258
+ */
4259
+ UpdateEmbedParams = 'updateEmbedParams',
4172
4260
  }
4173
4261
 
4174
4262
  /**
@@ -4214,6 +4302,7 @@ export enum Param {
4214
4302
  HideResult = 'hideResult',
4215
4303
  UseLastSelectedDataSource = 'useLastSelectedSources',
4216
4304
  Tag = 'tag',
4305
+ HideTagFilterChips = 'hideTagFilterChips',
4217
4306
  AutoLogin = 'autoLogin',
4218
4307
  searchTokenString = 'searchTokenString',
4219
4308
  executeSearch = 'executeSearch',
@@ -4318,6 +4407,7 @@ export enum Param {
4318
4407
  RootMarginForLazyLoad = 'rootMarginForLazyLoad',
4319
4408
  LiveboardXLSXCSVDownload = 'isLiveboardXLSXCSVDownloadEnabled',
4320
4409
  isPNGInScheduledEmailsEnabled = 'isPNGInScheduledEmailsEnabled',
4410
+ isLinkParametersEnabled = 'isLinkParametersEnabled',
4321
4411
  }
4322
4412
 
4323
4413
  /**
@@ -5671,15 +5761,15 @@ export interface ColumnValue {
5671
5761
  [key: string]: any;
5672
5762
  };
5673
5763
  value:
5674
- | string
5675
- | number
5676
- | boolean
5677
- | {
5678
- v: {
5679
- s: number;
5680
- e: number;
5681
- };
5682
- };
5764
+ | string
5765
+ | number
5766
+ | boolean
5767
+ | {
5768
+ v: {
5769
+ s: number;
5770
+ e: number;
5771
+ };
5772
+ };
5683
5773
  }
5684
5774
 
5685
5775
  export interface VizPoint {
@@ -22,12 +22,13 @@ export const reload = (iFrame: HTMLIFrameElement) => {
22
22
  * @param message
23
23
  * @param message.type
24
24
  * @param message.data
25
+ * @param message.context
25
26
  * @param thoughtSpotHost
26
27
  * @param channel
27
28
  */
28
29
  function postIframeMessage(
29
30
  iFrame: HTMLIFrameElement,
30
- message: { type: HostEvent; data: any },
31
+ message: { type: HostEvent; data: any, context?: any },
31
32
  thoughtSpotHost: string,
32
33
  channel?: MessageChannel,
33
34
  ) {
@@ -42,12 +43,14 @@ export const TRIGGER_TIMEOUT = 30000;
42
43
  * @param messageType
43
44
  * @param thoughtSpotHost
44
45
  * @param data
46
+ * @param context
45
47
  */
46
48
  export function processTrigger(
47
49
  iFrame: HTMLIFrameElement,
48
50
  messageType: HostEvent,
49
51
  thoughtSpotHost: string,
50
52
  data: any,
53
+ context?: any,
51
54
  ): Promise<any> {
52
55
  return new Promise<any>((res, rej) => {
53
56
  if (messageType === HostEvent.Reload) {
@@ -83,6 +86,6 @@ export function processTrigger(
83
86
  res(new Error(ERROR_MESSAGE.TRIGGER_TIMED_OUT));
84
87
  }, TRIGGER_TIMEOUT);
85
88
 
86
- return postIframeMessage(iFrame, { type: messageType, data }, thoughtSpotHost, channel);
89
+ return postIframeMessage(iFrame, { type: messageType, data, context }, thoughtSpotHost, channel);
87
90
  });
88
91
  }