@thoughtspot/visual-embed-sdk 1.32.4 → 1.32.7

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 (92) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/embed/app.d.ts +42 -0
  3. package/cjs/src/embed/app.d.ts.map +1 -1
  4. package/cjs/src/embed/app.js +4 -1
  5. package/cjs/src/embed/app.js.map +1 -1
  6. package/cjs/src/embed/app.spec.js +30 -0
  7. package/cjs/src/embed/app.spec.js.map +1 -1
  8. package/cjs/src/embed/base.d.ts +12 -12
  9. package/cjs/src/embed/base.js +12 -12
  10. package/cjs/src/embed/liveboard.d.ts +42 -0
  11. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  12. package/cjs/src/embed/liveboard.js +4 -1
  13. package/cjs/src/embed/liveboard.js.map +1 -1
  14. package/cjs/src/embed/liveboard.spec.js +33 -0
  15. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  16. package/cjs/src/embed/ts-embed.d.ts +0 -1
  17. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  18. package/cjs/src/embed/ts-embed.js +1 -2
  19. package/cjs/src/embed/ts-embed.js.map +1 -1
  20. package/cjs/src/types.d.ts +66 -8
  21. package/cjs/src/types.d.ts.map +1 -1
  22. package/cjs/src/types.js +59 -7
  23. package/cjs/src/types.js.map +1 -1
  24. package/cjs/src/utils/graphql/answerService/answerService.d.ts +14 -0
  25. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  26. package/cjs/src/utils/graphql/answerService/answerService.js +21 -0
  27. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  28. package/cjs/src/utils/processData.js +2 -2
  29. package/cjs/src/utils/processData.js.map +1 -1
  30. package/cjs/src/utils/processData.spec.js +14 -0
  31. package/cjs/src/utils/processData.spec.js.map +1 -1
  32. package/dist/src/embed/app.d.ts +42 -0
  33. package/dist/src/embed/app.d.ts.map +1 -1
  34. package/dist/src/embed/base.d.ts +12 -12
  35. package/dist/src/embed/liveboard.d.ts +42 -0
  36. package/dist/src/embed/liveboard.d.ts.map +1 -1
  37. package/dist/src/embed/ts-embed.d.ts +0 -1
  38. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  39. package/dist/src/types.d.ts +66 -8
  40. package/dist/src/types.d.ts.map +1 -1
  41. package/dist/src/utils/graphql/answerService/answerService.d.ts +14 -0
  42. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  43. package/dist/tsembed-react.es.js +92 -14
  44. package/dist/tsembed-react.js +92 -14
  45. package/dist/tsembed.es.js +104 -26
  46. package/dist/tsembed.js +104 -26
  47. package/dist/visual-embed-sdk-react-full.d.ts +176 -21
  48. package/dist/visual-embed-sdk-react.d.ts +176 -21
  49. package/dist/visual-embed-sdk.d.ts +176 -21
  50. package/lib/package.json +1 -1
  51. package/lib/src/embed/app.d.ts +42 -0
  52. package/lib/src/embed/app.d.ts.map +1 -1
  53. package/lib/src/embed/app.js +4 -1
  54. package/lib/src/embed/app.js.map +1 -1
  55. package/lib/src/embed/app.spec.js +30 -0
  56. package/lib/src/embed/app.spec.js.map +1 -1
  57. package/lib/src/embed/base.d.ts +12 -12
  58. package/lib/src/embed/base.js +12 -12
  59. package/lib/src/embed/liveboard.d.ts +42 -0
  60. package/lib/src/embed/liveboard.d.ts.map +1 -1
  61. package/lib/src/embed/liveboard.js +4 -1
  62. package/lib/src/embed/liveboard.js.map +1 -1
  63. package/lib/src/embed/liveboard.spec.js +33 -0
  64. package/lib/src/embed/liveboard.spec.js.map +1 -1
  65. package/lib/src/embed/ts-embed.d.ts +0 -1
  66. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  67. package/lib/src/embed/ts-embed.js +1 -2
  68. package/lib/src/embed/ts-embed.js.map +1 -1
  69. package/lib/src/types.d.ts +66 -8
  70. package/lib/src/types.d.ts.map +1 -1
  71. package/lib/src/types.js +59 -7
  72. package/lib/src/types.js.map +1 -1
  73. package/lib/src/utils/graphql/answerService/answerService.d.ts +14 -0
  74. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  75. package/lib/src/utils/graphql/answerService/answerService.js +21 -0
  76. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  77. package/lib/src/utils/processData.js +2 -2
  78. package/lib/src/utils/processData.js.map +1 -1
  79. package/lib/src/utils/processData.spec.js +14 -0
  80. package/lib/src/utils/processData.spec.js.map +1 -1
  81. package/lib/src/visual-embed-sdk.d.ts +176 -21
  82. package/package.json +1 -1
  83. package/src/embed/app.spec.ts +45 -0
  84. package/src/embed/app.ts +48 -0
  85. package/src/embed/base.ts +12 -12
  86. package/src/embed/liveboard.spec.ts +48 -0
  87. package/src/embed/liveboard.ts +48 -0
  88. package/src/embed/ts-embed.ts +1 -2
  89. package/src/types.ts +66 -7
  90. package/src/utils/graphql/answerService/answerService.ts +27 -0
  91. package/src/utils/processData.spec.ts +16 -0
  92. package/src/utils/processData.ts +2 -2
@@ -1130,6 +1130,48 @@ export interface AppViewConfig extends Omit<ViewConfig, 'visibleTabs'> {
1130
1130
  * @version SDK : 1.33.0 | Thoughtspot : 10.2.0.cl
1131
1131
  */
1132
1132
  homePageSearchBarMode?: HomePageSearchBarMode;
1133
+ /**
1134
+ * This flag is used to enable the compact header in liveboard
1135
+ * @type {boolean}
1136
+ * @default false
1137
+ * @version SDK: 1.35.0 | ThoughtSpot:10.3.0.cl
1138
+ * @example
1139
+ * ```js
1140
+ * const embed = new AppEmbed('#embed-container', {
1141
+ * ... // other options
1142
+ * isLiveboardCompactHeaderEnabled: true,
1143
+ * })
1144
+ * ```
1145
+ */
1146
+ isLiveboardCompactHeaderEnabled?: boolean;
1147
+ /**
1148
+ * This flag is used to show/hide verified Icon in liveboard compact header
1149
+ * @type {boolean}
1150
+ * @default true
1151
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
1152
+ * @example
1153
+ * ```js
1154
+ * const embed = new AppEmbed('#embed-container', {
1155
+ * ... // other options
1156
+ * showLiveboardVerifiedBadge: true,
1157
+ * })
1158
+ * ```
1159
+ */
1160
+ showLiveboardVerifiedBadge?: boolean;
1161
+ /**
1162
+ * This flag is used to show/hide re-verify banner in liveboard compact header
1163
+ * @type {boolean}
1164
+ * @default true
1165
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
1166
+ * @example
1167
+ * ```js
1168
+ * const embed = new AppEmbed('#embed-container', {
1169
+ * ... // other options
1170
+ * showLiveboardReverifyBanner: true,
1171
+ * })
1172
+ * ```
1173
+ */
1174
+ showLiveboardReverifyBanner?: boolean;
1133
1175
  }
1134
1176
  /**
1135
1177
  * Embeds full ThoughtSpot experience in a host application.
@@ -1439,6 +1481,48 @@ export interface LiveboardViewConfig extends Omit<ViewConfig, 'hiddenHomepageMod
1439
1481
  * @version SDK: 1.32.0 | ThoughtSpot: 10.0.0.cl
1440
1482
  */
1441
1483
  showPreviewLoader?: boolean;
1484
+ /**
1485
+ * This flag is used to enable the compact header in liveboard
1486
+ * @type {boolean}
1487
+ * @default false
1488
+ * @version SDK: 1.35.0 | ThoughtSpot:10.3.0.cl
1489
+ * @example
1490
+ * ```js
1491
+ * const embed = new LiveboardEmbed('#embed-container', {
1492
+ * ... // other options
1493
+ * isLiveboardCompactHeaderEnabled: true,
1494
+ * })
1495
+ * ```
1496
+ */
1497
+ isLiveboardCompactHeaderEnabled?: boolean;
1498
+ /**
1499
+ * This flag is used to show/hide verified Icon in liveboard compact header
1500
+ * @type {boolean}
1501
+ * @default true
1502
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
1503
+ * @example
1504
+ * ```js
1505
+ * const embed = new LiveboardEmbed('#embed-container', {
1506
+ * ... // other options
1507
+ * showLiveboardVerifiedBadge: true,
1508
+ * })
1509
+ * ```
1510
+ */
1511
+ showLiveboardVerifiedBadge?: boolean;
1512
+ /**
1513
+ * This flag is used to show/hide re-verify banner in liveboard compact header
1514
+ * @type {boolean}
1515
+ * @default true
1516
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
1517
+ * @example
1518
+ * ```js
1519
+ * const embed = new LiveboardEmbed('#embed-container', {
1520
+ * ... // other options
1521
+ * showLiveboardReverifyBanner: true,
1522
+ * })
1523
+ * ```
1524
+ */
1525
+ showLiveboardReverifyBanner?: boolean;
1442
1526
  }
1443
1527
  /**
1444
1528
  * Embed a ThoughtSpot Liveboard or visualization. When rendered it already
@@ -1584,18 +1668,18 @@ export declare const renderInQueue: (fn: (next?: (val?: any) => void) => Promise
1584
1668
  * ```js
1585
1669
  * executeTML({
1586
1670
  * //Array of metadata Tmls
1587
- metadata_tmls: [
1588
- "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
1589
- \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
1590
- ],
1591
- import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
1592
- create_new: false, // If selected, creates TML objects with new GUIDs.
1593
- }).then(result => {
1594
- console.log(result);
1595
- }).catch(error => {
1596
- console.error(error);
1597
- });
1598
- *
1671
+ metadata_tmls: [
1672
+ "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
1673
+ \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
1674
+ ],
1675
+ import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
1676
+ create_new: false, // If selected, creates TML objects with new GUIDs.
1677
+ }).then(result => {
1678
+ console.log(result);
1679
+ }).catch(error => {
1680
+ console.error(error);
1681
+ });
1682
+ *```
1599
1683
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
1600
1684
  * @group Global methods
1601
1685
  */
@@ -2425,6 +2509,12 @@ export interface EmbedConfig {
2425
2509
  * @version SDK: 1.28.5 | Thoughtspot: *
2426
2510
  */
2427
2511
  disableTokenVerification?: boolean;
2512
+ /**
2513
+ * This flag is used to disable showing the login failure page in the embedded app.
2514
+ *
2515
+ * @version SDK 1.32.3 | Thoughtspot: *
2516
+ */
2517
+ disableLoginFailurePage?: boolean;
2428
2518
  }
2429
2519
  export interface LayoutConfig {
2430
2520
  }
@@ -3949,21 +4039,61 @@ export declare enum EmbedEvent {
3949
4039
  */
3950
4040
  Rename = "rename",
3951
4041
  /**
3952
- * Emitted when user wants to intercept the search execution
4042
+ * Emitted if the user wants to intercept the search execution
4043
+ * and implement logic to decide whether to run the search or not
4044
+ *
4045
+ * Prerequisite: Set isOnBeforeGetVizDataInterceptEnabled : true
4046
+ * for this embed event to get emitted.
4047
+ *
4048
+ * Parameter: payload
4049
+ * Parameter: responder
4050
+ * Contains elements that lets developers define whether ThoughtSpot
4051
+ * will run the search or not, and if not, which error message to provide.
3953
4052
  *
3954
- * Set IsOnBeforeGetVizDataInterceptEnabled : true to use
3955
- * this embed event
4053
+ * execute: When execute returns true, the search will be run.
4054
+ * When execute returns false, the search will not be executed.
4055
+ *
4056
+ * error: Developers can customize the user facing message when execute is
4057
+ * set to false using the error parameter in responder
4058
+ *
4059
+ * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
3956
4060
  *
3957
4061
  *```js
3958
- * searchEmbed.on(EmbedEvent.OnBeforeGetVizDataIntercept,
4062
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
3959
4063
  * (payload, responder) => {
3960
4064
  * responder({
3961
4065
  * data: {
3962
- * execute: true,
3963
- * }})
4066
+ * execute:false,
4067
+ * error: {
4068
+ * //Provide a custom error message to explain to your end user
4069
+ * //why their search did not run
4070
+ * errorText: "This search query cannot be run.
4071
+ * Please contact your administrator for more details."
4072
+ * }
4073
+ * }})
4074
+ * })
4075
+ * ```
4076
+ *
4077
+ *```js
4078
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
4079
+ * (payload, responder) => {
4080
+ * const query = payload.data.data.answer.search_query
4081
+ * responder({
4082
+ * data: {
4083
+ * // returns true as long as the query does not include
4084
+ * // both the 'sales' AND the 'county' column
4085
+ * execute: !(query.includes("sales")&&query.includes("county")),
4086
+ * error: {
4087
+ * //Provide a custom error message to explain to your end user
4088
+ * // why their search did not run, and which searches are accepted by your custom logic.
4089
+ * errorText: "You can't use this query :" + query + ".
4090
+ * The 'sales' measures can never be used at the 'county' level.
4091
+ * Please try another measure, or remove 'county' from your search."
4092
+ * }
4093
+ * }})
3964
4094
  * })
3965
4095
  *```
3966
- * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
4096
+ *
3967
4097
  */
3968
4098
  OnBeforeGetVizDataIntercept = "onBeforeGetVizDataIntercept",
3969
4099
  /**
@@ -4081,6 +4211,15 @@ export declare enum HostEvent {
4081
4211
  * @hidden
4082
4212
  */
4083
4213
  Reload = "reload",
4214
+ /**
4215
+ * Get current iframe src
4216
+ * @example
4217
+ * ```js
4218
+ * const frameUrl = AppEmbed.trigger(HostEvent.GetIframeUrl)
4219
+ * ```
4220
+ * @version SDK: 1.35.0 | Thoughtspot: 10.4.0.cl
4221
+ */
4222
+ GetIframeUrl = "GetIframeUrl",
4084
4223
  /**
4085
4224
  * Display specific visualizations on a Liveboard.
4086
4225
  * @param - An array of GUIDs of the visualization to show. The visualization IDs not passed
@@ -4945,7 +5084,10 @@ export declare enum Param {
4945
5084
  IsOnBeforeGetVizDataInterceptEnabled = "isOnBeforeGetVizDataInterceptEnabled",
4946
5085
  FocusSearchBarOnRender = "focusSearchBarOnRender",
4947
5086
  DisableRedirectionLinksInNewTab = "disableRedirectionLinksInNewTab",
4948
- HomePageSearchBarMode = "homePageSearchBarMode"
5087
+ HomePageSearchBarMode = "homePageSearchBarMode",
5088
+ ShowLiveboardVerifiedBadge = "showLiveboardVerifiedBadge",
5089
+ ShowLiveboardReverifyBanner = "showLiveboardReverifyBanner",
5090
+ LiveboardHeaderV2 = "isLiveboardHeaderV2Enabled"
4949
5091
  }
4950
5092
  /**
4951
5093
  * ThoughtSpot application pages include actions and menu commands
@@ -6600,6 +6742,15 @@ export declare class AnswerService {
6600
6742
  * @returns Response
6601
6743
  */
6602
6744
  fetchCSVBlob(userLocale?: string, includeInfo?: boolean): Promise<Response>;
6745
+ /**
6746
+ * Fetch the data for the answer as a PNG blob. This might be
6747
+ * quicker for larger data.
6748
+ * @param userLocale
6749
+ * @param omitBackground Omit the background in the PNG
6750
+ * @param deviceScaleFactor The scale factor for the PNG
6751
+ * @return Response
6752
+ */
6753
+ fetchPNGBlob(userLocale?: string, includeInfo?: boolean, omitBackground?: boolean, deviceScaleFactor?: number): Promise<Response>;
6603
6754
  /**
6604
6755
  * Just get the internal URL for this answer's data
6605
6756
  * as a CSV blob.
@@ -6608,6 +6759,11 @@ export declare class AnswerService {
6608
6759
  * @returns
6609
6760
  */
6610
6761
  getFetchCSVBlobUrl(userLocale?: string, includeInfo?: boolean): string;
6762
+ /**
6763
+ * Just get the internal URL for this answer's data
6764
+ * as a PNG blob.
6765
+ */
6766
+ getFetchPNGBlobUrl(userLocale?: string, omitBackground?: boolean, deviceScaleFactor?: number): string;
6611
6767
  /**
6612
6768
  * Get underlying data given a point and the output column names.
6613
6769
  * In case of a context menu action, the selectedPoints are
@@ -7004,7 +7160,6 @@ export declare class V1Embed extends TsEmbed {
7004
7160
  on(messageType: EmbedEvent, callback: MessageCallback, options?: MessageOptions): typeof TsEmbed.prototype;
7005
7161
  /**
7006
7162
  * Only for testing purposes.
7007
- *
7008
7163
  * @hidden
7009
7164
  */
7010
7165
  test__executeCallbacks: (eventType: EmbedEvent, data: any, eventPort?: void | MessagePort) => void;
@@ -1120,6 +1120,48 @@ export interface AppViewConfig extends Omit<ViewConfig, 'visibleTabs'> {
1120
1120
  * @version SDK : 1.33.0 | Thoughtspot : 10.2.0.cl
1121
1121
  */
1122
1122
  homePageSearchBarMode?: HomePageSearchBarMode;
1123
+ /**
1124
+ * This flag is used to enable the compact header in liveboard
1125
+ * @type {boolean}
1126
+ * @default false
1127
+ * @version SDK: 1.35.0 | ThoughtSpot:10.3.0.cl
1128
+ * @example
1129
+ * ```js
1130
+ * const embed = new AppEmbed('#embed-container', {
1131
+ * ... // other options
1132
+ * isLiveboardCompactHeaderEnabled: true,
1133
+ * })
1134
+ * ```
1135
+ */
1136
+ isLiveboardCompactHeaderEnabled?: boolean;
1137
+ /**
1138
+ * This flag is used to show/hide verified Icon in liveboard compact header
1139
+ * @type {boolean}
1140
+ * @default true
1141
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
1142
+ * @example
1143
+ * ```js
1144
+ * const embed = new AppEmbed('#embed-container', {
1145
+ * ... // other options
1146
+ * showLiveboardVerifiedBadge: true,
1147
+ * })
1148
+ * ```
1149
+ */
1150
+ showLiveboardVerifiedBadge?: boolean;
1151
+ /**
1152
+ * This flag is used to show/hide re-verify banner in liveboard compact header
1153
+ * @type {boolean}
1154
+ * @default true
1155
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
1156
+ * @example
1157
+ * ```js
1158
+ * const embed = new AppEmbed('#embed-container', {
1159
+ * ... // other options
1160
+ * showLiveboardReverifyBanner: true,
1161
+ * })
1162
+ * ```
1163
+ */
1164
+ showLiveboardReverifyBanner?: boolean;
1123
1165
  }
1124
1166
  /**
1125
1167
  * Embeds full ThoughtSpot experience in a host application.
@@ -1429,6 +1471,48 @@ export interface LiveboardViewConfig extends Omit<ViewConfig, 'hiddenHomepageMod
1429
1471
  * @version SDK: 1.32.0 | ThoughtSpot: 10.0.0.cl
1430
1472
  */
1431
1473
  showPreviewLoader?: boolean;
1474
+ /**
1475
+ * This flag is used to enable the compact header in liveboard
1476
+ * @type {boolean}
1477
+ * @default false
1478
+ * @version SDK: 1.35.0 | ThoughtSpot:10.3.0.cl
1479
+ * @example
1480
+ * ```js
1481
+ * const embed = new LiveboardEmbed('#embed-container', {
1482
+ * ... // other options
1483
+ * isLiveboardCompactHeaderEnabled: true,
1484
+ * })
1485
+ * ```
1486
+ */
1487
+ isLiveboardCompactHeaderEnabled?: boolean;
1488
+ /**
1489
+ * This flag is used to show/hide verified Icon in liveboard compact header
1490
+ * @type {boolean}
1491
+ * @default true
1492
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
1493
+ * @example
1494
+ * ```js
1495
+ * const embed = new LiveboardEmbed('#embed-container', {
1496
+ * ... // other options
1497
+ * showLiveboardVerifiedBadge: true,
1498
+ * })
1499
+ * ```
1500
+ */
1501
+ showLiveboardVerifiedBadge?: boolean;
1502
+ /**
1503
+ * This flag is used to show/hide re-verify banner in liveboard compact header
1504
+ * @type {boolean}
1505
+ * @default true
1506
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
1507
+ * @example
1508
+ * ```js
1509
+ * const embed = new LiveboardEmbed('#embed-container', {
1510
+ * ... // other options
1511
+ * showLiveboardReverifyBanner: true,
1512
+ * })
1513
+ * ```
1514
+ */
1515
+ showLiveboardReverifyBanner?: boolean;
1432
1516
  }
1433
1517
  /**
1434
1518
  * Embed a ThoughtSpot Liveboard or visualization. When rendered it already
@@ -2057,6 +2141,12 @@ export interface EmbedConfig {
2057
2141
  * @version SDK: 1.28.5 | Thoughtspot: *
2058
2142
  */
2059
2143
  disableTokenVerification?: boolean;
2144
+ /**
2145
+ * This flag is used to disable showing the login failure page in the embedded app.
2146
+ *
2147
+ * @version SDK 1.32.3 | Thoughtspot: *
2148
+ */
2149
+ disableLoginFailurePage?: boolean;
2060
2150
  }
2061
2151
  export interface LayoutConfig {
2062
2152
  }
@@ -3581,21 +3671,61 @@ export declare enum EmbedEvent {
3581
3671
  */
3582
3672
  Rename = "rename",
3583
3673
  /**
3584
- * Emitted when user wants to intercept the search execution
3674
+ * Emitted if the user wants to intercept the search execution
3675
+ * and implement logic to decide whether to run the search or not
3676
+ *
3677
+ * Prerequisite: Set isOnBeforeGetVizDataInterceptEnabled : true
3678
+ * for this embed event to get emitted.
3585
3679
  *
3586
- * Set IsOnBeforeGetVizDataInterceptEnabled : true to use
3587
- * this embed event
3680
+ * Parameter: payload
3681
+ * Parameter: responder
3682
+ * Contains elements that lets developers define whether ThoughtSpot
3683
+ * will run the search or not, and if not, which error message to provide.
3684
+ *
3685
+ * execute: When execute returns true, the search will be run.
3686
+ * When execute returns false, the search will not be executed.
3687
+ *
3688
+ * error: Developers can customize the user facing message when execute is
3689
+ * set to false using the error parameter in responder
3690
+ *
3691
+ * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
3588
3692
  *
3589
3693
  *```js
3590
- * searchEmbed.on(EmbedEvent.OnBeforeGetVizDataIntercept,
3694
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
3591
3695
  * (payload, responder) => {
3592
3696
  * responder({
3593
3697
  * data: {
3594
- * execute: true,
3595
- * }})
3698
+ * execute:false,
3699
+ * error: {
3700
+ * //Provide a custom error message to explain to your end user
3701
+ * //why their search did not run
3702
+ * errorText: "This search query cannot be run.
3703
+ * Please contact your administrator for more details."
3704
+ * }
3705
+ * }})
3706
+ * })
3707
+ * ```
3708
+ *
3709
+ *```js
3710
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
3711
+ * (payload, responder) => {
3712
+ * const query = payload.data.data.answer.search_query
3713
+ * responder({
3714
+ * data: {
3715
+ * // returns true as long as the query does not include
3716
+ * // both the 'sales' AND the 'county' column
3717
+ * execute: !(query.includes("sales")&&query.includes("county")),
3718
+ * error: {
3719
+ * //Provide a custom error message to explain to your end user
3720
+ * // why their search did not run, and which searches are accepted by your custom logic.
3721
+ * errorText: "You can't use this query :" + query + ".
3722
+ * The 'sales' measures can never be used at the 'county' level.
3723
+ * Please try another measure, or remove 'county' from your search."
3724
+ * }
3725
+ * }})
3596
3726
  * })
3597
3727
  *```
3598
- * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
3728
+ *
3599
3729
  */
3600
3730
  OnBeforeGetVizDataIntercept = "onBeforeGetVizDataIntercept",
3601
3731
  /**
@@ -3713,6 +3843,15 @@ export declare enum HostEvent {
3713
3843
  * @hidden
3714
3844
  */
3715
3845
  Reload = "reload",
3846
+ /**
3847
+ * Get current iframe src
3848
+ * @example
3849
+ * ```js
3850
+ * const frameUrl = AppEmbed.trigger(HostEvent.GetIframeUrl)
3851
+ * ```
3852
+ * @version SDK: 1.35.0 | Thoughtspot: 10.4.0.cl
3853
+ */
3854
+ GetIframeUrl = "GetIframeUrl",
3716
3855
  /**
3717
3856
  * Display specific visualizations on a Liveboard.
3718
3857
  * @param - An array of GUIDs of the visualization to show. The visualization IDs not passed
@@ -4577,7 +4716,10 @@ export declare enum Param {
4577
4716
  IsOnBeforeGetVizDataInterceptEnabled = "isOnBeforeGetVizDataInterceptEnabled",
4578
4717
  FocusSearchBarOnRender = "focusSearchBarOnRender",
4579
4718
  DisableRedirectionLinksInNewTab = "disableRedirectionLinksInNewTab",
4580
- HomePageSearchBarMode = "homePageSearchBarMode"
4719
+ HomePageSearchBarMode = "homePageSearchBarMode",
4720
+ ShowLiveboardVerifiedBadge = "showLiveboardVerifiedBadge",
4721
+ ShowLiveboardReverifyBanner = "showLiveboardReverifyBanner",
4722
+ LiveboardHeaderV2 = "isLiveboardHeaderV2Enabled"
4581
4723
  }
4582
4724
  /**
4583
4725
  * ThoughtSpot application pages include actions and menu commands
@@ -6034,7 +6176,6 @@ export declare class V1Embed extends TsEmbed {
6034
6176
  on(messageType: EmbedEvent, callback: MessageCallback, options?: MessageOptions): typeof TsEmbed.prototype;
6035
6177
  /**
6036
6178
  * Only for testing purposes.
6037
- *
6038
6179
  * @hidden
6039
6180
  */
6040
6181
  test__executeCallbacks: (eventType: EmbedEvent, data: any, eventPort?: void | MessagePort) => void;
@@ -6121,18 +6262,18 @@ export declare const renderInQueue: (fn: (next?: (val?: any) => void) => Promise
6121
6262
  * ```js
6122
6263
  * executeTML({
6123
6264
  * //Array of metadata Tmls
6124
- metadata_tmls: [
6125
- "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
6126
- \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
6127
- ],
6128
- import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
6129
- create_new: false, // If selected, creates TML objects with new GUIDs.
6130
- }).then(result => {
6131
- console.log(result);
6132
- }).catch(error => {
6133
- console.error(error);
6134
- });
6135
- *
6265
+ metadata_tmls: [
6266
+ "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
6267
+ \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
6268
+ ],
6269
+ import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
6270
+ create_new: false, // If selected, creates TML objects with new GUIDs.
6271
+ }).then(result => {
6272
+ console.log(result);
6273
+ }).catch(error => {
6274
+ console.error(error);
6275
+ });
6276
+ *```
6136
6277
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
6137
6278
  * @group Global methods
6138
6279
  */
@@ -6889,6 +7030,15 @@ export declare class AnswerService {
6889
7030
  * @returns Response
6890
7031
  */
6891
7032
  fetchCSVBlob(userLocale?: string, includeInfo?: boolean): Promise<Response>;
7033
+ /**
7034
+ * Fetch the data for the answer as a PNG blob. This might be
7035
+ * quicker for larger data.
7036
+ * @param userLocale
7037
+ * @param omitBackground Omit the background in the PNG
7038
+ * @param deviceScaleFactor The scale factor for the PNG
7039
+ * @return Response
7040
+ */
7041
+ fetchPNGBlob(userLocale?: string, includeInfo?: boolean, omitBackground?: boolean, deviceScaleFactor?: number): Promise<Response>;
6892
7042
  /**
6893
7043
  * Just get the internal URL for this answer's data
6894
7044
  * as a CSV blob.
@@ -6897,6 +7047,11 @@ export declare class AnswerService {
6897
7047
  * @returns
6898
7048
  */
6899
7049
  getFetchCSVBlobUrl(userLocale?: string, includeInfo?: boolean): string;
7050
+ /**
7051
+ * Just get the internal URL for this answer's data
7052
+ * as a PNG blob.
7053
+ */
7054
+ getFetchPNGBlobUrl(userLocale?: string, omitBackground?: boolean, deviceScaleFactor?: number): string;
6900
7055
  /**
6901
7056
  * Get underlying data given a point and the output column names.
6902
7057
  * In case of a context menu action, the selectedPoints are