@thoughtspot/visual-embed-sdk 1.33.0-alpha.2 → 1.33.0

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 (198) hide show
  1. package/cjs/package.json +6 -24
  2. package/cjs/src/css-variables.d.ts +46 -3
  3. package/cjs/src/css-variables.d.ts.map +1 -1
  4. package/cjs/src/embed/app.d.ts +47 -27
  5. package/cjs/src/embed/app.d.ts.map +1 -1
  6. package/cjs/src/embed/app.js +10 -1
  7. package/cjs/src/embed/app.js.map +1 -1
  8. package/cjs/src/embed/app.spec.js +32 -0
  9. package/cjs/src/embed/app.spec.js.map +1 -1
  10. package/cjs/src/embed/base.d.ts +35 -33
  11. package/cjs/src/embed/base.d.ts.map +1 -1
  12. package/cjs/src/embed/base.js +35 -33
  13. package/cjs/src/embed/base.js.map +1 -1
  14. package/cjs/src/embed/embed.spec.js +0 -19
  15. package/cjs/src/embed/embed.spec.js.map +1 -1
  16. package/cjs/src/embed/liveboard.d.ts +42 -0
  17. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  18. package/cjs/src/embed/liveboard.js +6 -1
  19. package/cjs/src/embed/liveboard.js.map +1 -1
  20. package/cjs/src/embed/liveboard.spec.js +43 -0
  21. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  22. package/cjs/src/embed/search.d.ts +0 -26
  23. package/cjs/src/embed/search.d.ts.map +1 -1
  24. package/cjs/src/embed/search.js.map +1 -1
  25. package/cjs/src/embed/ts-embed.d.ts +0 -1
  26. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  27. package/cjs/src/embed/ts-embed.js +8 -12
  28. package/cjs/src/embed/ts-embed.js.map +1 -1
  29. package/cjs/src/embed/ts-embed.spec.js +0 -9
  30. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  31. package/cjs/src/mixpanel-service.d.ts +4 -0
  32. package/cjs/src/mixpanel-service.d.ts.map +1 -1
  33. package/cjs/src/mixpanel-service.js +4 -0
  34. package/cjs/src/mixpanel-service.js.map +1 -1
  35. package/cjs/src/tokenizedFetch.d.ts.map +1 -1
  36. package/cjs/src/tokenizedFetch.js +5 -1
  37. package/cjs/src/tokenizedFetch.js.map +1 -1
  38. package/cjs/src/types.d.ts +179 -22
  39. package/cjs/src/types.d.ts.map +1 -1
  40. package/cjs/src/types.js +143 -12
  41. package/cjs/src/types.js.map +1 -1
  42. package/cjs/src/utils/authService/authService.spec.js +3 -1
  43. package/cjs/src/utils/authService/authService.spec.js.map +1 -1
  44. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
  45. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  46. package/cjs/src/utils/graphql/answerService/answer-queries.js +9 -2
  47. package/cjs/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  48. package/cjs/src/utils/graphql/answerService/answerService.d.ts +15 -0
  49. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  50. package/cjs/src/utils/graphql/answerService/answerService.js +25 -0
  51. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  52. package/cjs/src/utils/graphql/answerService/answerService.spec.js +53 -0
  53. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  54. package/cjs/src/utils/graphql/graphql-request.spec.d.ts +2 -0
  55. package/cjs/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
  56. package/cjs/src/utils/graphql/graphql-request.spec.js +36 -0
  57. package/cjs/src/utils/graphql/graphql-request.spec.js.map +1 -0
  58. package/cjs/src/utils/processData.js +2 -2
  59. package/cjs/src/utils/processData.js.map +1 -1
  60. package/cjs/src/utils/processData.spec.js +14 -0
  61. package/cjs/src/utils/processData.spec.js.map +1 -1
  62. package/cjs/src/utils/processTrigger.d.ts +1 -0
  63. package/cjs/src/utils/processTrigger.d.ts.map +1 -1
  64. package/cjs/src/utils/processTrigger.js +3 -3
  65. package/cjs/src/utils/processTrigger.js.map +1 -1
  66. package/cjs/src/utils/processTrigger.spec.js +10 -0
  67. package/cjs/src/utils/processTrigger.spec.js.map +1 -1
  68. package/cjs/src/utils.d.ts.map +1 -1
  69. package/cjs/src/utils.js +1 -3
  70. package/cjs/src/utils.js.map +1 -1
  71. package/dist/src/css-variables.d.ts +46 -3
  72. package/dist/src/css-variables.d.ts.map +1 -1
  73. package/dist/src/embed/app.d.ts +47 -27
  74. package/dist/src/embed/app.d.ts.map +1 -1
  75. package/dist/src/embed/base.d.ts +35 -33
  76. package/dist/src/embed/base.d.ts.map +1 -1
  77. package/dist/src/embed/liveboard.d.ts +42 -0
  78. package/dist/src/embed/liveboard.d.ts.map +1 -1
  79. package/dist/src/embed/search.d.ts +0 -26
  80. package/dist/src/embed/search.d.ts.map +1 -1
  81. package/dist/src/embed/ts-embed.d.ts +0 -1
  82. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  83. package/dist/src/mixpanel-service.d.ts +4 -0
  84. package/dist/src/mixpanel-service.d.ts.map +1 -1
  85. package/dist/src/tokenizedFetch.d.ts.map +1 -1
  86. package/dist/src/types.d.ts +179 -22
  87. package/dist/src/types.d.ts.map +1 -1
  88. package/dist/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
  89. package/dist/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  90. package/dist/src/utils/graphql/answerService/answerService.d.ts +15 -0
  91. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  92. package/dist/src/utils/graphql/graphql-request.spec.d.ts +2 -0
  93. package/dist/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
  94. package/dist/src/utils/processTrigger.d.ts +1 -0
  95. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  96. package/dist/src/utils.d.ts.map +1 -1
  97. package/dist/tsembed-react.es.js +442 -107
  98. package/dist/tsembed-react.js +385 -106
  99. package/dist/tsembed.es.js +477 -140
  100. package/dist/tsembed.js +420 -139
  101. package/dist/visual-embed-sdk-react-full.d.ts +368 -112
  102. package/dist/visual-embed-sdk-react.d.ts +368 -112
  103. package/dist/visual-embed-sdk.d.ts +368 -112
  104. package/lib/package.json +6 -24
  105. package/lib/src/css-variables.d.ts +46 -3
  106. package/lib/src/css-variables.d.ts.map +1 -1
  107. package/lib/src/embed/app.d.ts +47 -27
  108. package/lib/src/embed/app.d.ts.map +1 -1
  109. package/lib/src/embed/app.js +10 -1
  110. package/lib/src/embed/app.js.map +1 -1
  111. package/lib/src/embed/app.spec.js +32 -0
  112. package/lib/src/embed/app.spec.js.map +1 -1
  113. package/lib/src/embed/base.d.ts +35 -33
  114. package/lib/src/embed/base.d.ts.map +1 -1
  115. package/lib/src/embed/base.js +35 -33
  116. package/lib/src/embed/base.js.map +1 -1
  117. package/lib/src/embed/embed.spec.js +0 -19
  118. package/lib/src/embed/embed.spec.js.map +1 -1
  119. package/lib/src/embed/liveboard.d.ts +42 -0
  120. package/lib/src/embed/liveboard.d.ts.map +1 -1
  121. package/lib/src/embed/liveboard.js +6 -1
  122. package/lib/src/embed/liveboard.js.map +1 -1
  123. package/lib/src/embed/liveboard.spec.js +43 -0
  124. package/lib/src/embed/liveboard.spec.js.map +1 -1
  125. package/lib/src/embed/search.d.ts +0 -26
  126. package/lib/src/embed/search.d.ts.map +1 -1
  127. package/lib/src/embed/search.js.map +1 -1
  128. package/lib/src/embed/ts-embed.d.ts +0 -1
  129. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  130. package/lib/src/embed/ts-embed.js +8 -12
  131. package/lib/src/embed/ts-embed.js.map +1 -1
  132. package/lib/src/embed/ts-embed.spec.js +0 -9
  133. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  134. package/lib/src/mixpanel-service.d.ts +4 -0
  135. package/lib/src/mixpanel-service.d.ts.map +1 -1
  136. package/lib/src/mixpanel-service.js +4 -0
  137. package/lib/src/mixpanel-service.js.map +1 -1
  138. package/lib/src/tokenizedFetch.d.ts.map +1 -1
  139. package/lib/src/tokenizedFetch.js +5 -1
  140. package/lib/src/tokenizedFetch.js.map +1 -1
  141. package/lib/src/types.d.ts +179 -22
  142. package/lib/src/types.d.ts.map +1 -1
  143. package/lib/src/types.js +143 -12
  144. package/lib/src/types.js.map +1 -1
  145. package/lib/src/utils/authService/authService.spec.js +3 -1
  146. package/lib/src/utils/authService/authService.spec.js.map +1 -1
  147. package/lib/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
  148. package/lib/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  149. package/lib/src/utils/graphql/answerService/answer-queries.js +8 -1
  150. package/lib/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  151. package/lib/src/utils/graphql/answerService/answerService.d.ts +15 -0
  152. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  153. package/lib/src/utils/graphql/answerService/answerService.js +25 -0
  154. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  155. package/lib/src/utils/graphql/answerService/answerService.spec.js +54 -1
  156. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  157. package/lib/src/utils/graphql/graphql-request.spec.d.ts +2 -0
  158. package/lib/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
  159. package/lib/src/utils/graphql/graphql-request.spec.js +33 -0
  160. package/lib/src/utils/graphql/graphql-request.spec.js.map +1 -0
  161. package/lib/src/utils/processData.js +2 -2
  162. package/lib/src/utils/processData.js.map +1 -1
  163. package/lib/src/utils/processData.spec.js +14 -0
  164. package/lib/src/utils/processData.spec.js.map +1 -1
  165. package/lib/src/utils/processTrigger.d.ts +1 -0
  166. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  167. package/lib/src/utils/processTrigger.js +1 -1
  168. package/lib/src/utils/processTrigger.js.map +1 -1
  169. package/lib/src/utils/processTrigger.spec.js +10 -0
  170. package/lib/src/utils/processTrigger.spec.js.map +1 -1
  171. package/lib/src/utils.d.ts.map +1 -1
  172. package/lib/src/utils.js +1 -3
  173. package/lib/src/utils.js.map +1 -1
  174. package/lib/src/visual-embed-sdk.d.ts +368 -112
  175. package/package.json +6 -24
  176. package/src/css-variables.ts +49 -3
  177. package/src/embed/app.spec.ts +47 -0
  178. package/src/embed/app.ts +54 -26
  179. package/src/embed/base.ts +35 -33
  180. package/src/embed/embed.spec.ts +0 -22
  181. package/src/embed/liveboard.spec.ts +62 -0
  182. package/src/embed/liveboard.ts +52 -0
  183. package/src/embed/search.ts +0 -26
  184. package/src/embed/ts-embed.spec.ts +0 -11
  185. package/src/embed/ts-embed.ts +9 -12
  186. package/src/mixpanel-service.ts +4 -0
  187. package/src/tokenizedFetch.ts +5 -1
  188. package/src/types.ts +180 -21
  189. package/src/utils/authService/authService.spec.ts +3 -1
  190. package/src/utils/graphql/answerService/answer-queries.ts +9 -1
  191. package/src/utils/graphql/answerService/answerService.spec.ts +69 -0
  192. package/src/utils/graphql/answerService/answerService.ts +35 -0
  193. package/src/utils/graphql/graphql-request.spec.ts +38 -0
  194. package/src/utils/processData.spec.ts +16 -0
  195. package/src/utils/processData.ts +2 -2
  196. package/src/utils/processTrigger.spec.ts +19 -0
  197. package/src/utils/processTrigger.ts +1 -1
  198. package/src/utils.ts +1 -3
@@ -54,7 +54,11 @@ export enum Page {
54
54
  /**
55
55
  * SpotIQ listing page
56
56
  */
57
- SpotIQ = "insights"
57
+ SpotIQ = "insights",
58
+ /**
59
+ * Monitor Alerts Page
60
+ */
61
+ Monitor = "monitor"
58
62
  }
59
63
  /**
60
64
  * Define the initial state os column custom group accordions
@@ -265,19 +269,6 @@ export interface AppViewConfig extends Omit<ViewConfig, 'visibleTabs'> {
265
269
  * ```
266
270
  */
267
271
  fullHeight?: boolean;
268
- /**
269
- * Flag to control Data panel experience
270
- * @default true
271
- * @version SDK: 1.26.0 | Thoughtspot: 9.7.0.cl
272
- * @example
273
- * ```js
274
- * const embed = new AppEmbed('#tsEmbed', {
275
- * ... // other options
276
- * dataPanelV2: true,
277
- * })
278
- * ```
279
- */
280
- dataPanelV2?: boolean;
281
272
  /**
282
273
  * Show or hide Liveboard header
283
274
  * @version SDK: 1.26.0 | Thoughtspot: 9.7.0.cl
@@ -355,19 +346,6 @@ export interface AppViewConfig extends Omit<ViewConfig, 'visibleTabs'> {
355
346
  * @deprecated Use {@link collapseSearchBar} instead
356
347
  */
357
348
  collapseSearchBarInitially?: boolean;
358
- /**
359
- * To enable custom column groups in data panel v2.
360
- * @version SDK: 1.32.0 | Thoughtspot: 10.0.0.cl
361
- * @default false
362
- * @example
363
- * ```js
364
- * const embed = new AppEmbed('#embed', {
365
- * ... // other app view config
366
- * enableCustomColumnGroups: true,
367
- * });
368
- * ```
369
- */
370
- enableCustomColumnGroups?: boolean;
371
349
  /**
372
350
  * This controls the initial behaviour of custom column groups accordion.
373
351
  * It takes DataPanelCustomColumnGroupsAccordionState enum values as input.
@@ -411,6 +389,48 @@ export interface AppViewConfig extends Omit<ViewConfig, 'visibleTabs'> {
411
389
  * @version SDK : 1.33.0 | Thoughtspot : 10.2.0.cl
412
390
  */
413
391
  homePageSearchBarMode?: HomePageSearchBarMode;
392
+ /**
393
+ * This flag is used to enable the compact header in liveboard
394
+ * @type {boolean}
395
+ * @default false
396
+ * @version SDK: 1.35.0 | ThoughtSpot:10.3.0.cl
397
+ * @example
398
+ * ```js
399
+ * const embed = new AppEmbed('#embed-container', {
400
+ * ... // other options
401
+ * isLiveboardCompactHeaderEnabled: true,
402
+ * })
403
+ * ```
404
+ */
405
+ isLiveboardCompactHeaderEnabled?: boolean;
406
+ /**
407
+ * This flag is used to show/hide verified Icon in liveboard compact header
408
+ * @type {boolean}
409
+ * @default true
410
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
411
+ * @example
412
+ * ```js
413
+ * const embed = new AppEmbed('#embed-container', {
414
+ * ... // other options
415
+ * showLiveboardVerifiedBadge: true,
416
+ * })
417
+ * ```
418
+ */
419
+ showLiveboardVerifiedBadge?: boolean;
420
+ /**
421
+ * This flag is used to show/hide re-verify banner in liveboard compact header
422
+ * @type {boolean}
423
+ * @default true
424
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
425
+ * @example
426
+ * ```js
427
+ * const embed = new AppEmbed('#embed-container', {
428
+ * ... // other options
429
+ * showLiveboardReverifyBanner: true,
430
+ * })
431
+ * ```
432
+ */
433
+ showLiveboardReverifyBanner?: boolean;
414
434
  }
415
435
  /**
416
436
  * Embeds full ThoughtSpot experience in a host application.
@@ -532,22 +552,23 @@ export const renderInQueue: (fn: (next?: (val?: any) => void) => Promise<any>) =
532
552
  /**
533
553
  * Imports TML representation of the metadata objects into ThoughtSpot.
534
554
  * @param data
555
+ * @returns imports TML data into ThoughtSpot
535
556
  * @example
536
557
  * ```js
537
- * executeTML({
538
- * //Array of metadata Tmls
539
- metadata_tmls: [
540
- "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
541
- \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
542
- ],
543
- import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
544
- create_new: false, // If selected, creates TML objects with new GUIDs.
545
- }).then(result => {
546
- console.log(result);
547
- }).catch(error => {
548
- console.error(error);
549
- });
550
- *
558
+ * executeTML({
559
+ * //Array of metadata Tmls in string format
560
+ * metadata_tmls: [
561
+ * "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
562
+ * \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
563
+ * ],
564
+ * import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
565
+ * create_new: false, // If selected, creates TML objects with new GUIDs.
566
+ * }).then(result => {
567
+ * console.log(result);
568
+ * }).catch(error => {
569
+ * console.error(error);
570
+ * });
571
+ *```
551
572
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
552
573
  * @group Global methods
553
574
  */
@@ -556,27 +577,28 @@ export const executeTML: (data: executeTMLInput) => Promise<any>;
556
577
  * Exports TML representation of the metadata objects from ThoughtSpot in JSON or YAML
557
578
  * format.
558
579
  * @param data
580
+ * @returns exports TML data
559
581
  * @example
560
582
  * ```js
561
- exportTML({
562
- metadata: [
563
- {
564
- type: "LIVEBOARD", //Metadata Type
565
- identifier: "9bd202f5-d431-44bf-9a07-b4f7be372125" //Metadata Id
566
- }
567
- ],
568
- export_associated: false,//indicates whether to export associated metadata objects
569
- export_fqn: false, //Adds FQNs of the referenced objects.For example, if you are
570
- //exporting a Liveboard and its associated objects, the API
571
- //returns the Liveboard TML data with the FQNs of the referenced
572
- //worksheet. If the exported TML data includes FQNs, you don't need
573
- //to manually add FQNs of the referenced objects during TML import.
574
- edoc_format: "JSON" //It takes JSON or YAML value
575
- }).then(result => {
576
- console.log(result);
577
- }).catch(error => {
578
- console.error(error);
579
- });
583
+ * exportTML({
584
+ * metadata: [
585
+ * {
586
+ * type: "LIVEBOARD", //Metadata Type
587
+ * identifier: "9bd202f5-d431-44bf-9a07-b4f7be372125" //Metadata Id
588
+ * }
589
+ * ],
590
+ * export_associated: false,//indicates whether to export associated metadata objects
591
+ * export_fqn: false, //Adds FQNs of the referenced objects.For example, if you are
592
+ * //exporting a Liveboard and its associated objects, the API
593
+ * //returns the Liveboard TML data with the FQNs of the referenced
594
+ * //worksheet. If the exported TML data includes FQNs, you don't need
595
+ * //to manually add FQNs of the referenced objects during TML import.
596
+ * edoc_format: "JSON" //It takes JSON or YAML value
597
+ * }).then(result => {
598
+ * console.log(result);
599
+ * }).catch(error => {
600
+ * console.error(error);
601
+ * });
580
602
  * ```
581
603
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
582
604
  * @group Global methods
@@ -852,6 +874,48 @@ export interface LiveboardViewConfig extends Omit<ViewConfig, 'hiddenHomepageMod
852
874
  * @version SDK: 1.32.0 | ThoughtSpot: 10.0.0.cl
853
875
  */
854
876
  showPreviewLoader?: boolean;
877
+ /**
878
+ * This flag is used to enable the compact header in liveboard
879
+ * @type {boolean}
880
+ * @default false
881
+ * @version SDK: 1.35.0 | ThoughtSpot:10.3.0.cl
882
+ * @example
883
+ * ```js
884
+ * const embed = new LiveboardEmbed('#embed-container', {
885
+ * ... // other options
886
+ * isLiveboardCompactHeaderEnabled: true,
887
+ * })
888
+ * ```
889
+ */
890
+ isLiveboardCompactHeaderEnabled?: boolean;
891
+ /**
892
+ * This flag is used to show/hide verified Icon in liveboard compact header
893
+ * @type {boolean}
894
+ * @default true
895
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
896
+ * @example
897
+ * ```js
898
+ * const embed = new LiveboardEmbed('#embed-container', {
899
+ * ... // other options
900
+ * showLiveboardVerifiedBadge: true,
901
+ * })
902
+ * ```
903
+ */
904
+ showLiveboardVerifiedBadge?: boolean;
905
+ /**
906
+ * This flag is used to show/hide re-verify banner in liveboard compact header
907
+ * @type {boolean}
908
+ * @default true
909
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
910
+ * @example
911
+ * ```js
912
+ * const embed = new LiveboardEmbed('#embed-container', {
913
+ * ... // other options
914
+ * showLiveboardReverifyBanner: true,
915
+ * })
916
+ * ```
917
+ */
918
+ showLiveboardReverifyBanner?: boolean;
855
919
  }
856
920
  /**
857
921
  * Embed a ThoughtSpot Liveboard or visualization. When rendered it already
@@ -1097,19 +1161,6 @@ export interface SearchViewConfig extends Omit<ViewConfig, 'hiddenHomepageModule
1097
1161
  * ```
1098
1162
  */
1099
1163
  hideSearchBar?: boolean;
1100
- /**
1101
- * Flag to control Data panel experience
1102
- * @default true
1103
- * @version SDK: 1.26.0 | Thoughtspot: 9.7.0.cl
1104
- * @example
1105
- * ```js
1106
- * const embed = new SearchEmbed('#tsEmbed', {
1107
- * ... // other options
1108
- * dataPanelV2:false,
1109
- * })
1110
- * ```
1111
- */
1112
- dataPanelV2?: boolean;
1113
1164
  /**
1114
1165
  * Flag to set if last selected dataSource should be used
1115
1166
  * @version: SDK: 1.24.0
@@ -1122,19 +1173,6 @@ export interface SearchViewConfig extends Omit<ViewConfig, 'hiddenHomepageModule
1122
1173
  * @deprecated Use {@link collapseSearchBar} instead
1123
1174
  */
1124
1175
  collapseSearchBarInitially?: boolean;
1125
- /**
1126
- * To enable custom column groups in data panel v2
1127
- * @version SDK: 1.32.0 | Thoughtspot: 10.0.0.cl
1128
- * @default false
1129
- * @example
1130
- * ```js
1131
- * const embed = new SearchEmbed('#tsEmbed', {
1132
- * ... // other options
1133
- * enableCustomColumnGroups: true,
1134
- * });
1135
- * ```
1136
- */
1137
- enableCustomColumnGroups?: boolean;
1138
1176
  /**
1139
1177
  * Flag to enable onBeforeSearchExecute Embed Event
1140
1178
  * @version: SDK: 1.29.0 | Thoughtspot: 10.1.0.cl
@@ -1946,13 +1984,6 @@ export interface EmbedConfig {
1946
1984
  * @default false
1947
1985
  */
1948
1986
  queueMultiRenders?: boolean;
1949
- /**
1950
- * Dynamic CSS URL to be injected in the loaded application.
1951
- * You would also need to set `style-src` in the CSP settings.
1952
- * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
1953
- * @default ''
1954
- */
1955
- customCssUrl?: string;
1956
1987
  /**
1957
1988
  * [AuthServer|Basic] Detect if third-party party cookies are enabled by doing an
1958
1989
  * additional call. This is slower and should be avoided. Listen to the
@@ -2081,6 +2112,12 @@ export interface EmbedConfig {
2081
2112
  * @version SDK: 1.28.5 | Thoughtspot: *
2082
2113
  */
2083
2114
  disableTokenVerification?: boolean;
2115
+ /**
2116
+ * This flag is used to disable showing the login failure page in the embedded app.
2117
+ *
2118
+ * @version SDK 1.32.3 | Thoughtspot: *
2119
+ */
2120
+ disableLoginFailurePage?: boolean;
2084
2121
  }
2085
2122
  export interface LayoutConfig {
2086
2123
  }
@@ -2203,11 +2240,12 @@ export interface ViewConfig {
2203
2240
  */
2204
2241
  visibleActions?: Action[];
2205
2242
  /**
2206
- * Show alert messages and toast messages in the embedded view.
2243
+ * Show alert messages and toast messages in the embedded
2244
+ * view in full app embed.
2207
2245
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
2208
2246
  * @example
2209
2247
  * ```js
2210
- * const embed = new LiveboardEmbed('#embed-container', {
2248
+ * const embed = new AppEmbed('#embed-container', {
2211
2249
  * ... // other options
2212
2250
  * showAlerts:true,
2213
2251
  * })
@@ -2528,6 +2566,32 @@ export interface ViewConfig {
2528
2566
  * @version SDK: 1.32.1 | ThoughtSpot: 10.3.0.cl
2529
2567
  */
2530
2568
  disableRedirectionLinksInNewTab?: boolean;
2569
+ /**
2570
+ * Flag to control Data panel experience
2571
+ * @default true
2572
+ * @version SDK: 1.34.0 | Thoughtspot: 10.3.0.cl
2573
+ * @example
2574
+ * ```js
2575
+ * const embed = new AppEmbed('#tsEmbed', {
2576
+ * ... // other options
2577
+ * dataPanelV2: true,
2578
+ * })
2579
+ * ```
2580
+ */
2581
+ dataPanelV2?: boolean;
2582
+ /**
2583
+ * To enable custom column groups in data panel v2
2584
+ * @version SDK: 1.32.0 | Thoughtspot: 10.0.0.cl
2585
+ * @default false
2586
+ * @example
2587
+ * ```js
2588
+ * const embed = new SearchEmbed('#tsEmbed', {
2589
+ * ... // other options
2590
+ * enableCustomColumnGroups: true,
2591
+ * });
2592
+ * ```
2593
+ */
2594
+ enableCustomColumnGroups?: boolean;
2531
2595
  }
2532
2596
  /**
2533
2597
  * MessagePayload: Embed event payload: message type, data and status (start/end)
@@ -2724,6 +2788,28 @@ export interface RuntimeParameter {
2724
2788
  * console.log('Drilldown event', drilldown);
2725
2789
  * }));
2726
2790
  * ```
2791
+ *
2792
+ * If you are using React components for embedding, you can register to any
2793
+ * events from the `EmbedEvent` list by using the `on<EventName>` convention.
2794
+ * For example,`onAlert`, `onCopyToClipboard` and so on.
2795
+ *
2796
+ * @example
2797
+ * ```js
2798
+ * // ...
2799
+ * const MyComponent = ({ dataSources }) => {
2800
+ * const onLoad = () => {
2801
+ * console.log(EmbedEvent.Load, {});
2802
+ * };
2803
+ *
2804
+ * return (
2805
+ * <SearchEmbed
2806
+ * dataSources={dataSources}
2807
+ * onLoad = {logEvent("Load")}
2808
+ * />
2809
+ * );
2810
+ * };
2811
+ * ```
2812
+ *
2727
2813
  * @group Events
2728
2814
  */
2729
2815
  export enum EmbedEvent {
@@ -3592,21 +3678,61 @@ export enum EmbedEvent {
3592
3678
  */
3593
3679
  Rename = "rename",
3594
3680
  /**
3595
- * Emitted when user wants to intercept the search execution
3681
+ * Emitted if the user wants to intercept the search execution
3682
+ * and implement logic to decide whether to run the search or not
3683
+ *
3684
+ * Prerequisite: Set isOnBeforeGetVizDataInterceptEnabled : true
3685
+ * for this embed event to get emitted.
3686
+ *
3687
+ * @param: payload
3688
+ * @param: responder
3689
+ * Contains elements that lets developers define whether ThoughtSpot
3690
+ * will run the search or not, and if not, which error message to provide.
3596
3691
  *
3597
- * Set IsOnBeforeGetVizDataInterceptEnabled : true to use
3598
- * this embed event
3692
+ * execute: When execute returns true, the search will be run.
3693
+ * When execute returns false, the search will not be executed.
3694
+ *
3695
+ * error: Developers can customize the user facing message when execute is
3696
+ * set to false using the error parameter in responder
3697
+ *
3698
+ * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
3599
3699
  *
3700
+ * @example
3600
3701
  *```js
3601
- * searchEmbed.on(EmbedEvent.OnBeforeGetVizDataIntercept,
3702
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
3602
3703
  * (payload, responder) => {
3603
3704
  * responder({
3604
3705
  * data: {
3605
- * execute: true,
3606
- * }})
3706
+ * execute:false,
3707
+ * error: {
3708
+ * //Provide a custom error message to explain to your end user
3709
+ * //why their search did not run
3710
+ * errorText: "This search query cannot be run.
3711
+ * Please contact your administrator for more details."
3712
+ * }
3713
+ * }})
3714
+ * })
3715
+ * ```
3716
+ *
3717
+ *```js
3718
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
3719
+ * (payload, responder) => {
3720
+ * const query = payload.data.data.answer.search_query
3721
+ * responder({
3722
+ * data: {
3723
+ * // returns true as long as the query does not include
3724
+ * // both the 'sales' AND the 'county' column
3725
+ * execute: !(query.includes("sales")&&query.includes("county")),
3726
+ * error: {
3727
+ * //Provide a custom error message to explain to your end user
3728
+ * // why their search did not run, and which searches are accepted by your custom logic.
3729
+ * errorText: "You can't use this query :" + query + ".
3730
+ * The 'sales' measures can never be used at the 'county' level.
3731
+ * Please try another measure, or remove 'county' from your search."
3732
+ * }
3733
+ * }})
3607
3734
  * })
3608
3735
  *```
3609
- * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
3610
3736
  */
3611
3737
  OnBeforeGetVizDataIntercept = "onBeforeGetVizDataIntercept",
3612
3738
  /**
@@ -3624,7 +3750,7 @@ export enum EmbedEvent {
3624
3750
  }
3625
3751
  /**
3626
3752
  * Event types that can be triggered by the host application
3627
- * to the embedded ThoughtSpot app
3753
+ * to the embedded ThoughtSpot app.
3628
3754
  *
3629
3755
  * To trigger an event use the corresponding
3630
3756
  * {@link LiveboardEmbed.trigger} or {@link AppEmbed.trigger} or {@link
@@ -3641,6 +3767,40 @@ export enum EmbedEvent {
3641
3767
  * { columnName: 'state, operator: RuntimeFilterOp.EQ, values: ['california']}
3642
3768
  * ]);
3643
3769
  * ```
3770
+ * @example
3771
+ * If using React components to embed, use the format shown in this example:
3772
+ *
3773
+ * ```js
3774
+ * const selectVizs = () => {
3775
+ * embedRef.current.trigger(HostEvent.SetVisibleVizs, [
3776
+ * "715e4613-c891-4884-be44-aa8d13701c06",
3777
+ * "3f84d633-e325-44b2-be25-c6650e5a49cf"
3778
+ * ]);
3779
+ * };
3780
+ * ```
3781
+ *
3782
+ *
3783
+ * You can also attach an Embed event to a Host event to trigger
3784
+ * a specific action as shown in this example:
3785
+ *
3786
+ * @example
3787
+ * ```js
3788
+ * const EmbeddedComponent = () => {
3789
+ * const embedRef = useRef(null); // import { useRef } from react
3790
+ * const onLiveboardRendered = () => {
3791
+ * embedRef.current.trigger(HostEvent.SetVisibleVizs, ['viz1', 'viz2']);
3792
+ * };
3793
+ *
3794
+ * return (
3795
+ * <LiveboardEmbed
3796
+ * ref={embedRef}
3797
+ * liveboardId="<liveboard-guid>"
3798
+ * onLiveboardRendered={onLiveboardRendered}
3799
+ * />
3800
+ * );
3801
+ * }
3802
+ * ```
3803
+ *
3644
3804
  * @group Events
3645
3805
  */
3646
3806
  export enum HostEvent {
@@ -3724,6 +3884,15 @@ export enum HostEvent {
3724
3884
  * @hidden
3725
3885
  */
3726
3886
  Reload = "reload",
3887
+ /**
3888
+ * Get current iframe src
3889
+ * @example
3890
+ * ```js
3891
+ * const frameUrl = AppEmbed.trigger(HostEvent.GetIframeUrl)
3892
+ * ```
3893
+ * @version SDK: 1.35.0 | Thoughtspot: 10.4.0.cl
3894
+ */
3895
+ GetIframeUrl = "GetIframeUrl",
3727
3896
  /**
3728
3897
  * Display specific visualizations on a Liveboard.
3729
3898
  * @param - An array of GUIDs of the visualization to show. The visualization IDs not passed
@@ -4325,11 +4494,24 @@ export enum HostEvent {
4325
4494
  * filter: {
4326
4495
  * column: "item type",
4327
4496
  * oper: "IN",
4328
- * values: ["bags","shirts"],
4497
+ * values: ["bags","shirts"]
4329
4498
  * }
4330
4499
  * });
4331
4500
  * ```
4332
4501
  * @example
4502
+ * ```js
4503
+ *
4504
+ * liveboardEmbed.trigger(HostEvent.UpdateFilters, {
4505
+ * filter: {
4506
+ * column: "date",
4507
+ * oper: "EQ",
4508
+ * values: ["JULY","2023"],
4509
+ * type: "MONTH_YEAR"
4510
+ * }
4511
+ * });
4512
+ * ```
4513
+ *
4514
+ * @example
4333
4515
  *
4334
4516
  * ```js
4335
4517
  * liveboardEmbed.trigger(HostEvent.UpdateFilters, {
@@ -4346,7 +4528,8 @@ export enum HostEvent {
4346
4528
  * {
4347
4529
  * column: "Date",
4348
4530
  * oper: 'EQ',
4349
- * values: ["1656680400"]
4531
+ * values: ["2023-07-31"],
4532
+ * types: "EXACT_DATE"
4350
4533
  * }]
4351
4534
  * });
4352
4535
  * ```
@@ -4532,7 +4715,6 @@ export enum Param {
4532
4715
  ViewPortHeight = "viewPortHeight",
4533
4716
  ViewPortWidth = "viewPortWidth",
4534
4717
  VisibleActions = "visibleAction",
4535
- CustomCSSUrl = "customCssUrl",
4536
4718
  DisableLoginRedirect = "disableLoginRedirect",
4537
4719
  visibleVizs = "pinboardVisibleVizs",
4538
4720
  LiveboardV2Enabled = "isPinboardV2Enabled",
@@ -4589,7 +4771,10 @@ export enum Param {
4589
4771
  IsOnBeforeGetVizDataInterceptEnabled = "isOnBeforeGetVizDataInterceptEnabled",
4590
4772
  FocusSearchBarOnRender = "focusSearchBarOnRender",
4591
4773
  DisableRedirectionLinksInNewTab = "disableRedirectionLinksInNewTab",
4592
- HomePageSearchBarMode = "homePageSearchBarMode"
4774
+ HomePageSearchBarMode = "homePageSearchBarMode",
4775
+ ShowLiveboardVerifiedBadge = "showLiveboardVerifiedBadge",
4776
+ ShowLiveboardReverifyBanner = "showLiveboardReverifyBanner",
4777
+ LiveboardHeaderV2 = "isLiveboardHeaderV2Enabled"
4593
4778
  }
4594
4779
  /**
4595
4780
  * ThoughtSpot application pages include actions and menu commands
@@ -5511,7 +5696,7 @@ export enum Action {
5511
5696
  *
5512
5697
  * @version SDK: 1.32.0 | Thoughtspot: 10.1.0.cl
5513
5698
  */
5514
- CreateLiveboard = "CreateLiveboard",
5699
+ CreateLiveboard = "createLiveboard",
5515
5700
  /**
5516
5701
  * Action ID for to hide Verified Liveboard Banner
5517
5702
  * @example
@@ -5602,6 +5787,16 @@ export enum Action {
5602
5787
  * @version SDK: 1.34.0 | Thoughtspot: 10.3.0.cl
5603
5788
  */
5604
5789
  UnsubscribeScheduleHomepage = "unsubscribeScheduleHomepage",
5790
+ /**
5791
+ * The **Manage Tags** action on Homepage Favourite Module.
5792
+ *
5793
+ * @example
5794
+ * ```js
5795
+ * disabledActions: [Action.ManageTags]
5796
+ * ```
5797
+ * @version SDK : 1.34.0 | Thoughtspot: 10.3.0.cl
5798
+ */
5799
+ ManageTags = "manageTags",
5605
5800
  /**
5606
5801
  * Action ID for delete schedule action on schedule on homepage
5607
5802
  * @example
@@ -5775,9 +5970,12 @@ export interface CustomCssVariables {
5775
5970
  */
5776
5971
  '--ts-var-root-text-transform'?: string;
5777
5972
  /**
5778
- * application color, it replaces #2770EF which is rd-color(blue,base) and
5779
- * its similar colors like rd-color(blue,60), rd-color(accent, base) and
5780
- * rd-color(text, accent) in the app.
5973
+ * Font color of the text on toggle buttons such as
5974
+ * **All**, **Answers**, and **Liveboards** on the Home page (Classic experience),
5975
+ * the text color of the chart and table tiles on Home page (New modular Homepage experience),
5976
+ * and title text on the AI-generated charts and tables.
5977
+ * The default color code is #2770EF.
5978
+ *
5781
5979
  */
5782
5980
  '--ts-var-application-color'?: string;
5783
5981
  /**
@@ -5888,6 +6086,10 @@ export interface CustomCssVariables {
5888
6086
  * Background color of the primary buttons on hover.
5889
6087
  */
5890
6088
  '--ts-var-button--primary--hover-background'?: string;
6089
+ /**
6090
+ * Backgroud color of the primary buttons when active.
6091
+ */
6092
+ '--ts-var-button--primary--active-background'?: string;
5891
6093
  /**
5892
6094
  * Font color of the text on the secondary buttons.
5893
6095
  */
@@ -5904,6 +6106,10 @@ export interface CustomCssVariables {
5904
6106
  * Background color of the secondary button on hover.
5905
6107
  */
5906
6108
  '--ts-var-button--secondary--hover-background'?: string;
6109
+ /**
6110
+ * Backgroud color of the secondary buttons when active.
6111
+ */
6112
+ '--ts-var-button--secondary--active-background'?: string;
5907
6113
  /**
5908
6114
  * Font color of the tertiary button. For example, the *Undo*, *Redo*, and *Reset*
5909
6115
  * buttons on the *Search* page.
@@ -5917,6 +6123,10 @@ export interface CustomCssVariables {
5917
6123
  * Background color of the tertiary button when a user hovers over these buttons.
5918
6124
  */
5919
6125
  '--ts-var-button--tertiary--hover-background'?: string;
6126
+ /**
6127
+ * Backgroud color of the tertiary buttons when active.
6128
+ */
6129
+ '--ts-var-button--tertiary--active-background'?: string;
5920
6130
  /**
5921
6131
  * Font color of the title text of a visualization or Answer.
5922
6132
  */
@@ -6092,6 +6302,34 @@ export interface CustomCssVariables {
6092
6302
  * Background for favorite carousel find your favorites card in modular home.
6093
6303
  */
6094
6304
  '--ts-var-home-favorite-suggestion-card-background'?: string;
6305
+ /**
6306
+ * Border color of checkbox in error state.
6307
+ */
6308
+ '--ts-var-checkbox-error-border'?: string;
6309
+ /**
6310
+ * Border color of checkbox.
6311
+ */
6312
+ '--ts-var-checkbox-border-color'?: string;
6313
+ /**
6314
+ * Border color of checkbox in hover state.
6315
+ */
6316
+ '--ts-var-checkbox-hover-border'?: string;
6317
+ /**
6318
+ * Border and font color of checkbox in active state.
6319
+ */
6320
+ '--ts-var-checkbox-active-color'?: string;
6321
+ /**
6322
+ * Border color and font color of checkbox in checked state.
6323
+ */
6324
+ '--ts-var-checkbox-checked-color'?: string;
6325
+ /**
6326
+ * Border and font color of checkbox in disabled state.
6327
+ */
6328
+ '--ts-var-checkbox-checked-disabled'?: string;
6329
+ /**
6330
+ * Background color of checkbox.
6331
+ */
6332
+ '--ts-var-checkbox-background-color'?: string;
6095
6333
  }
6096
6334
 
6097
6335
  /**
@@ -6333,6 +6571,7 @@ export class AnswerService {
6333
6571
  * @returns
6334
6572
  */
6335
6573
  addFilter(columnName: string, operator: RuntimeFilterOp, values: RuntimeFilter['values']): Promise<any>;
6574
+ getSQLQuery(): Promise<string>;
6336
6575
  /**
6337
6576
  * Fetch data from the answer.
6338
6577
  * @param offset
@@ -6351,6 +6590,15 @@ export class AnswerService {
6351
6590
  * @returns Response
6352
6591
  */
6353
6592
  fetchCSVBlob(userLocale?: string, includeInfo?: boolean): Promise<Response>;
6593
+ /**
6594
+ * Fetch the data for the answer as a PNG blob. This might be
6595
+ * quicker for larger data.
6596
+ * @param userLocale
6597
+ * @param omitBackground Omit the background in the PNG
6598
+ * @param deviceScaleFactor The scale factor for the PNG
6599
+ * @return Response
6600
+ */
6601
+ fetchPNGBlob(userLocale?: string, omitBackground?: boolean, deviceScaleFactor?: number): Promise<Response>;
6354
6602
  /**
6355
6603
  * Just get the internal URL for this answer's data
6356
6604
  * as a CSV blob.
@@ -6359,6 +6607,11 @@ export class AnswerService {
6359
6607
  * @returns
6360
6608
  */
6361
6609
  getFetchCSVBlobUrl(userLocale?: string, includeInfo?: boolean): string;
6610
+ /**
6611
+ * Just get the internal URL for this answer's data
6612
+ * as a PNG blob.
6613
+ */
6614
+ getFetchPNGBlobUrl(userLocale?: string, omitBackground?: boolean, deviceScaleFactor?: number): string;
6362
6615
  /**
6363
6616
  * Get underlying data given a point and the output column names.
6364
6617
  * In case of a context menu action, the selectedPoints are
@@ -6411,6 +6664,10 @@ export const setEmbedConfig: (newConfig: EmbedConfig) => EmbedConfig;
6411
6664
  export const EndPoints: {
6412
6665
  CONFIG: string;
6413
6666
  };
6667
+ /**
6668
+ * Enum of mixpanel events
6669
+ * @hidden
6670
+ */
6414
6671
  export const MIXPANEL_EVENT: {
6415
6672
  VISUAL_SDK_RENDER_START: string;
6416
6673
  VISUAL_SDK_CALLED_INIT: string;
@@ -6751,7 +7008,6 @@ export class V1Embed extends TsEmbed {
6751
7008
  on(messageType: EmbedEvent, callback: MessageCallback, options?: MessageOptions): typeof TsEmbed.prototype;
6752
7009
  /**
6753
7010
  * Only for testing purposes.
6754
- *
6755
7011
  * @hidden
6756
7012
  */
6757
7013
  test__executeCallbacks: (eventType: EmbedEvent, data: any, eventPort?: void | MessagePort) => void;