@thoughtspot/visual-embed-sdk 1.44.4 → 1.44.5

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 (122) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/embed/app.d.ts +32 -0
  3. package/cjs/src/embed/app.d.ts.map +1 -1
  4. package/cjs/src/embed/app.js +7 -4
  5. package/cjs/src/embed/app.js.map +1 -1
  6. package/cjs/src/embed/app.spec.js +18 -7
  7. package/cjs/src/embed/app.spec.js.map +1 -1
  8. package/cjs/src/embed/conversation.d.ts +10 -6
  9. package/cjs/src/embed/conversation.d.ts.map +1 -1
  10. package/cjs/src/embed/conversation.js +12 -2
  11. package/cjs/src/embed/conversation.js.map +1 -1
  12. package/cjs/src/embed/conversation.spec.js +3 -0
  13. package/cjs/src/embed/conversation.spec.js.map +1 -1
  14. package/cjs/src/embed/embed.spec.js +1 -0
  15. package/cjs/src/embed/embed.spec.js.map +1 -1
  16. package/cjs/src/embed/liveboard.d.ts +32 -0
  17. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  18. package/cjs/src/embed/liveboard.js +7 -4
  19. package/cjs/src/embed/liveboard.js.map +1 -1
  20. package/cjs/src/embed/liveboard.spec.js +46 -33
  21. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  22. package/cjs/src/embed/pinboard.spec.js +1 -0
  23. package/cjs/src/embed/pinboard.spec.js.map +1 -1
  24. package/cjs/src/embed/search.d.ts.map +1 -1
  25. package/cjs/src/embed/search.js +6 -1
  26. package/cjs/src/embed/search.js.map +1 -1
  27. package/cjs/src/embed/search.spec.js +2 -0
  28. package/cjs/src/embed/search.spec.js.map +1 -1
  29. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  30. package/cjs/src/embed/ts-embed.js +7 -3
  31. package/cjs/src/embed/ts-embed.js.map +1 -1
  32. package/cjs/src/embed/ts-embed.spec.js +1 -0
  33. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  34. package/cjs/src/types.d.ts +140 -141
  35. package/cjs/src/types.d.ts.map +1 -1
  36. package/cjs/src/types.js +127 -117
  37. package/cjs/src/types.js.map +1 -1
  38. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts +1 -1
  39. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  40. package/cjs/src/utils/graphql/answerService/answer-queries.js +0 -1
  41. package/cjs/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  42. package/cjs/src/utils/graphql/answerService/answerService.spec.js +0 -1
  43. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  44. package/dist/{index-C5FAW929.js → index-_2rRJf4J.js} +1 -1
  45. package/dist/src/embed/app.d.ts +32 -0
  46. package/dist/src/embed/app.d.ts.map +1 -1
  47. package/dist/src/embed/conversation.d.ts +10 -6
  48. package/dist/src/embed/conversation.d.ts.map +1 -1
  49. package/dist/src/embed/liveboard.d.ts +32 -0
  50. package/dist/src/embed/liveboard.d.ts.map +1 -1
  51. package/dist/src/embed/search.d.ts.map +1 -1
  52. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  53. package/dist/src/types.d.ts +140 -141
  54. package/dist/src/types.d.ts.map +1 -1
  55. package/dist/src/utils/graphql/answerService/answer-queries.d.ts +1 -1
  56. package/dist/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  57. package/dist/tsembed-react.es.js +169 -135
  58. package/dist/tsembed-react.js +168 -134
  59. package/dist/tsembed.es.js +169 -135
  60. package/dist/tsembed.js +168 -134
  61. package/dist/visual-embed-sdk-react-full.d.ts +207 -129
  62. package/dist/visual-embed-sdk-react.d.ts +207 -129
  63. package/dist/visual-embed-sdk.d.ts +212 -146
  64. package/lib/package.json +1 -1
  65. package/lib/src/embed/app.d.ts +32 -0
  66. package/lib/src/embed/app.d.ts.map +1 -1
  67. package/lib/src/embed/app.js +7 -4
  68. package/lib/src/embed/app.js.map +1 -1
  69. package/lib/src/embed/app.spec.js +18 -7
  70. package/lib/src/embed/app.spec.js.map +1 -1
  71. package/lib/src/embed/conversation.d.ts +10 -6
  72. package/lib/src/embed/conversation.d.ts.map +1 -1
  73. package/lib/src/embed/conversation.js +12 -2
  74. package/lib/src/embed/conversation.js.map +1 -1
  75. package/lib/src/embed/conversation.spec.js +3 -0
  76. package/lib/src/embed/conversation.spec.js.map +1 -1
  77. package/lib/src/embed/embed.spec.js +1 -0
  78. package/lib/src/embed/embed.spec.js.map +1 -1
  79. package/lib/src/embed/liveboard.d.ts +32 -0
  80. package/lib/src/embed/liveboard.d.ts.map +1 -1
  81. package/lib/src/embed/liveboard.js +7 -4
  82. package/lib/src/embed/liveboard.js.map +1 -1
  83. package/lib/src/embed/liveboard.spec.js +46 -33
  84. package/lib/src/embed/liveboard.spec.js.map +1 -1
  85. package/lib/src/embed/pinboard.spec.js +1 -0
  86. package/lib/src/embed/pinboard.spec.js.map +1 -1
  87. package/lib/src/embed/search.d.ts.map +1 -1
  88. package/lib/src/embed/search.js +6 -1
  89. package/lib/src/embed/search.js.map +1 -1
  90. package/lib/src/embed/search.spec.js +2 -0
  91. package/lib/src/embed/search.spec.js.map +1 -1
  92. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  93. package/lib/src/embed/ts-embed.js +7 -3
  94. package/lib/src/embed/ts-embed.js.map +1 -1
  95. package/lib/src/embed/ts-embed.spec.js +1 -0
  96. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  97. package/lib/src/types.d.ts +140 -141
  98. package/lib/src/types.d.ts.map +1 -1
  99. package/lib/src/types.js +127 -117
  100. package/lib/src/types.js.map +1 -1
  101. package/lib/src/utils/graphql/answerService/answer-queries.d.ts +1 -1
  102. package/lib/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  103. package/lib/src/utils/graphql/answerService/answer-queries.js +0 -1
  104. package/lib/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  105. package/lib/src/utils/graphql/answerService/answerService.spec.js +0 -1
  106. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  107. package/package.json +1 -1
  108. package/src/embed/app.spec.ts +25 -7
  109. package/src/embed/app.ts +44 -5
  110. package/src/embed/conversation.spec.ts +3 -0
  111. package/src/embed/conversation.ts +22 -8
  112. package/src/embed/embed.spec.ts +1 -0
  113. package/src/embed/liveboard.spec.ts +62 -42
  114. package/src/embed/liveboard.ts +42 -5
  115. package/src/embed/pinboard.spec.ts +1 -0
  116. package/src/embed/search.spec.ts +2 -0
  117. package/src/embed/search.ts +6 -1
  118. package/src/embed/ts-embed.spec.ts +1 -0
  119. package/src/embed/ts-embed.ts +7 -3
  120. package/src/types.ts +144 -144
  121. package/src/utils/graphql/answerService/answer-queries.ts +0 -1
  122. package/src/utils/graphql/answerService/answerService.spec.ts +0 -1
package/src/types.ts CHANGED
@@ -355,7 +355,7 @@ export interface EmbedConfig {
355
355
  /**
356
356
  * [AuthServer] The trusted authentication endpoint to use to get the
357
357
  * authentication token. A `GET` request is made to the
358
- * authentication API endpoint, which returns the token
358
+ * authentication API endpoint, which returns the token
359
359
  * as a plaintext response. For trusted authentication,
360
360
  * the `authEndpoint` or `getAuthToken` attribute is required.
361
361
  */
@@ -478,13 +478,13 @@ export interface EmbedConfig {
478
478
  * When there are multiple objects embedded, queue the rendering of embedded objects
479
479
  * to start after the previous embed's render is complete. This helps improve
480
480
  * performance by decreasing the load on the browser.
481
- * @Version SDK: 1.5.0 | ThoughtSpot: ts7.oct.cl, 7.2.1
481
+ * @version SDK: 1.5.0 | ThoughtSpot: ts7.oct.cl, 7.2.1
482
482
  * @default false
483
483
  */
484
484
  queueMultiRenders?: boolean;
485
485
 
486
486
  /**
487
- * [AuthServer|Basic] Detect if third-party party cookies are enabled by doing an
487
+ * [AuthServer|Basic] Detect if third-party cookies are enabled by doing an
488
488
  * additional call. This is slower and should be avoided. Listen to the
489
489
  * `NO_COOKIE_ACCESS` event to handle the situation.
490
490
  *
@@ -1277,21 +1277,26 @@ export interface SearchLiveboardCommonViewConfig {
1277
1277
  /**
1278
1278
  * Boolean to exclude runtimeFilters in the URL
1279
1279
  * By default it is true, this flag removes runtime filters from the URL
1280
- * when set to false, runtime filters will be included in the URL.
1280
+ * (default behavior from SDK 1.45.0).
1281
+ * when set to false, runtime filters will be included in the URL
1282
+ * (default behavior before SDK 1.45.0).
1281
1283
  *
1282
1284
  * Irrespective of this flag, runtime filters ( if passed ) will be applied to the
1283
1285
  * embedded view.
1284
- * @default false
1286
+ * @default true
1285
1287
  * @version SDK: 1.24.0 | ThoughtSpot: 9.5.0.cl
1286
1288
  */
1287
1289
  excludeRuntimeFiltersfromURL?: boolean;
1288
1290
  /**
1289
1291
  * Boolean to exclude runtimeParameters from the URL
1290
- * when set to true, this flag removes runtime parameters from the URL.
1292
+ * when set to true, this flag removes runtime parameters from the URL
1293
+ * (default behavior from SDK 1.45.0).
1294
+ * when set to false, runtime parameters will be included in the URL
1295
+ * (default behavior before SDK 1.45.0).
1291
1296
  *
1292
1297
  * Irrespective of this flag, runtime filters ( if passed ) will be applied to the
1293
1298
  * embedded view.
1294
- * @default false
1299
+ * @default true
1295
1300
  * @version SDK: 1.29.0 | ThoughtSpot: 10.1.0.cl
1296
1301
  */
1297
1302
  excludeRuntimeParametersfromURL?: boolean;
@@ -1530,22 +1535,6 @@ export interface LiveboardAppEmbedViewConfig {
1530
1535
  * ```
1531
1536
  */
1532
1537
  coverAndFilterOptionInPDF?: boolean;
1533
- /**
1534
- * This flag is used to enable or disable the XLSX/CSV download option for Liveboards.
1535
- * To enable this feature on your instance, contact ThoughtSpot Support.
1536
- *
1537
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1538
- * @version SDK: 1.41.0 | ThoughtSpot: 26.3.0.cl
1539
- * @example
1540
- * ```js
1541
- * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
1542
- * const embed = new <EmbedComponent>('#tsEmbed', {
1543
- * ... // other embed view config
1544
- * liveboardXLSXCSVDownload: true,
1545
- * })
1546
- * ```
1547
- */
1548
- liveboardXLSXCSVDownload?: boolean;
1549
1538
  /**
1550
1539
  * This flag is used to enable or disable the new centralized Liveboard filter UX (v2).
1551
1540
  * When enabled, a unified modal is used to manage and update multiple filters at once,
@@ -1802,9 +1791,13 @@ export enum HomepageModule {
1802
1791
 
1803
1792
  export enum ListPageColumns {
1804
1793
  /**
1805
- * Favourite
1794
+ * Favorites
1806
1795
  */
1807
- Favourite = 'FAVOURITE',
1796
+ Favorites = 'FAVOURITE',
1797
+ /**
1798
+ * @deprecated Use {@link ListPageColumns.Favorites} instead.
1799
+ */
1800
+ Favourite = Favorites,
1808
1801
  /**
1809
1802
  * Tags
1810
1803
  */
@@ -1821,6 +1814,10 @@ export enum ListPageColumns {
1821
1814
  * Share
1822
1815
  */
1823
1816
  Share = 'SHARE',
1817
+ /**
1818
+ * Verified badge/column
1819
+ */
1820
+ Verified = 'VERIFIED',
1824
1821
  }
1825
1822
 
1826
1823
  /**
@@ -2073,7 +2070,7 @@ export enum EmbedEvent {
2073
2070
  /**
2074
2071
  * An error has occurred. This event is fired for the following error types:
2075
2072
  *
2076
- * `API` - API call failure error.
2073
+ * `API` - API call failure.
2077
2074
  * `FULLSCREEN` - Error when presenting a Liveboard or visualization in full screen
2078
2075
  * mode. `SINGLE_VALUE_FILTER` - Error due to multiple values in the single value
2079
2076
  * filter. `NON_EXIST_FILTER` - Error due to a non-existent filter.
@@ -2806,20 +2803,20 @@ export enum EmbedEvent {
2806
2803
  /**
2807
2804
  *
2808
2805
  * This event can be emitted to intercept search execution initiated by
2809
- * the users and implement the logic to allow or restrict search execution.
2810
- * You can can also show custom error text if the search query must be
2806
+ * users and implement logic to allow or restrict search execution.
2807
+ * You can also show custom error text if the search query must be
2811
2808
  * restricted due to your application or business requirements.
2812
2809
 
2813
2810
  * Prerequisite: Set `isOnBeforeGetVizDataInterceptEnabled` to `true`
2814
2811
  * for this embed event to get emitted.
2815
- * @param:payload The payload received from the embed related to the Data API call.
2816
- * @param:responder
2817
- * Contains elements that lets developers define whether ThoughtSpot
2818
- * should run the search, and if not, what error message
2819
- * should be shown to the user.
2812
+ * @param - Includes the following event listener parameters:
2813
+ * - `payload`: The payload received from the embed related to the Data API call.
2814
+ * - `responder`: Contains elements that let developers define whether ThoughtSpot
2815
+ * should run the search, and if not, what error message
2816
+ * should be shown to the user.
2820
2817
  *
2821
- * `execute` - When execute returns `true`, the search will be run.
2822
- * When execute returns `false`, the search will not be executed.
2818
+ * `execute` - When `execute` returns `true`, the search will be run.
2819
+ * When `execute` returns `false`, the search will not be executed.
2823
2820
  *
2824
2821
  * `error` - Developers can customize the error message text when `execute`
2825
2822
  * is `false` using the `errorText` and `errorDescription` parameters in responder.
@@ -2991,7 +2988,7 @@ export enum EmbedEvent {
2991
2988
  * console.log('payload', payload);
2992
2989
  * })
2993
2990
  * ```
2994
- * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
2991
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
2995
2992
  */
2996
2993
  DataModelInstructions = 'DataModelInstructions',
2997
2994
  /**
@@ -3211,14 +3208,14 @@ export enum HostEvent {
3211
3208
  * the search query string.
3212
3209
  * Supported in `AppEmbed` and `SearchEmbed` deployments.
3213
3210
  * Includes the following properties:
3214
- * @param - `searchQuery` - query string with search tokens
3215
- * @param - `dataSources` - Data source GUID to Search on
3216
- * - Although an array, only a single source
3217
- * is supported.
3218
- * @param - `execute` - executes search and updates the existing query
3211
+ * @param - Includes the following keys:
3212
+ * - `searchQuery`: Query string with search tokens.
3213
+ * - `dataSources`: Data source GUID to search on.
3214
+ * Although an array, only a single source is supported.
3215
+ * - `execute`: Executes search and updates the existing query.
3219
3216
  * @example
3220
3217
  * ```js
3221
- * searchembed.trigger(HostEvent.Search, {
3218
+ * searchEmbed.trigger(HostEvent.Search, {
3222
3219
  searchQuery: "[sales] by [item type]",
3223
3220
  dataSources: ["cd252e5c-b552-49a8-821d-3eadaa049cca"],
3224
3221
  execute: true
@@ -3229,16 +3226,15 @@ export enum HostEvent {
3229
3226
  /**
3230
3227
  * Triggers a drill on certain points of the specified column
3231
3228
  * Includes the following properties:
3232
- * @param - points - an object containing selectedPoints/clickedPoints
3233
- * to drill to. For example, { selectedPoints: []}
3234
- * @param - columnGuid - Optional. GUID of the column to drill
3235
- * by. If not provided it will auto drill by the configured
3236
- * column.
3237
- * @param - autoDrillDown - Optional. If true, the drill down will be
3238
- * done automatically on the most popular column.
3239
- * @param - vizId [TS >= 9.8.0] - Optional. The GUID of the visualization to drill
3240
- * in case of a Liveboard.
3241
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3229
+ * @param - Includes the following keys:
3230
+ * - `points`: An object containing `selectedPoints` and/or `clickedPoint`
3231
+ * to drill to. For example, `{ selectedPoints: [] }`.
3232
+ * - `columnGuid`: Optional. GUID of the column to drill by. If not provided,
3233
+ * it will auto drill by the configured column.
3234
+ * - `autoDrillDown`: Optional. If `true`, the drill down will be done automatically
3235
+ * on the most popular column.
3236
+ * - `vizId` (TS >= 9.8.0): Optional. The GUID of the visualization to drill in case
3237
+ * of a Liveboard. In Spotter embed, `vizId` refers to the Answer ID and is **required**.
3242
3238
  * @example
3243
3239
  * ```js
3244
3240
  * searchEmbed.on(EmbedEvent.VizPointDoubleClick, (payload) => {
@@ -3331,14 +3327,12 @@ export enum HostEvent {
3331
3327
  * and `AppEmbed` only. In full application embedding, this event updates
3332
3328
  * the runtime filters applied on the Liveboard and saved Answer objects.
3333
3329
  *
3334
- * @param - Pass an array of {@link RuntimeFilter} with the following attributes:
3335
- * `columnName` - _String_. The name of the column to filter on.
3336
- *
3337
- * `operator` - {@link RuntimeFilterOp} to apply. For more information,
3338
- * see link:https://developers.thoughtspot.com/docs/?pageid=runtime-filters#rtOperator[Developer Documentation].
3339
- *
3340
- * `values` - List of operands. Some operators such as EQ and LE allow a
3341
- * single value, whereas BW and IN accept multiple values.
3330
+ * @param - Array of {@link RuntimeFilter} objects. Each item includes:
3331
+ * - `columnName`: Name of the column to filter on.
3332
+ * - `operator`: {@link RuntimeFilterOp} to apply. For more information, see
3333
+ * link:https://developers.thoughtspot.com/docs/runtime-filters#rtOperator[Developer Documentation].
3334
+ * - `values`: List of operands. Some operators such as EQ and LE allow a single
3335
+ * value, whereas BW and IN accept multiple values.
3342
3336
  *
3343
3337
  * **Note**: Updating runtime filters resets the ThoughtSpot
3344
3338
  * object to its original state and applies new filter conditions.
@@ -3361,7 +3355,7 @@ export enum HostEvent {
3361
3355
  /**
3362
3356
  * Navigate to a specific page in the embedded ThoughtSpot application.
3363
3357
  * This is the same as calling `appEmbed.navigateToPage(path, true)`.
3364
- * @param - `path` - the path to navigate to to go forward or back. The path value can
3358
+ * @param - `path` - the path to navigate to go forward or back. The path value can
3365
3359
  * be a number; for example, `1`, `-1`.
3366
3360
  * @example
3367
3361
  * ```js
@@ -3432,30 +3426,25 @@ export enum HostEvent {
3432
3426
  * for the Answer that the user is currently on
3433
3427
  * and a modal opens for Liveboard selection.
3434
3428
  * To add an Answer or visualization to a Liveboard programmatically without
3435
- * showing requiring additional user input via *Pin to Liveboard* modal, define
3429
+ * requiring additional user input via the *Pin to Liveboard* modal, define
3436
3430
  * the following parameters:
3437
3431
  *
3438
- * @param
3439
- * `vizId`- GUID of the saved Answer or Spotter visualization ID to pin to a Liveboard.
3440
- * Optional when pinning a new chart or table generated from a Search query.
3441
- * **Required** in Spotter Embed.
3442
- * @param
3443
- * `liveboardID` - GUID of the Liveboard to pin an Answer. If there is no Liveboard,
3444
- * specify the `newLiveboardName` parameter to create a new Liveboard.
3445
- * @param
3446
- * `tabId` - GUID of the Liveboard tab. Adds the Answer to the Liveboard tab
3447
- * specified in the code.
3448
- * @param
3449
- * `newVizName` - Name string for the Answer or visualization. If defined,
3450
- * this parameter adds a new visualization object or creates a copy of the
3451
- * Answer or visualization specified in `vizId`.
3452
- * Required attribute.
3453
- * @param
3454
- * `newLiveboardName` - Name string for the Liveboard.
3455
- * Creates a new Liveboard object with the specified name.
3456
- * @param
3457
- * `newTabName` - Name of the tab. Adds a new tab Liveboard specified
3458
- * in the code.
3432
+ * @param - Includes the following keys:
3433
+ * - `vizId`: GUID of the saved Answer or Spotter visualization ID to pin to a Liveboard.
3434
+ * Optional when pinning a new chart or table generated from a Search query.
3435
+ * **Required** in Spotter Embed.
3436
+ * - `liveboardId`: GUID of the Liveboard to pin an Answer. If there is no Liveboard,
3437
+ * specify the `newLiveboardName` parameter to create a new Liveboard.
3438
+ * - `tabId`: GUID of the Liveboard tab. Adds the Answer to the Liveboard tab
3439
+ * specified in the code.
3440
+ * - `newVizName`: Name string for the Answer or visualization. If defined,
3441
+ * this parameter adds a new visualization object or creates a copy of the
3442
+ * Answer or visualization specified in `vizId`.
3443
+ * Required.
3444
+ * - `newLiveboardName`: Name string for the Liveboard.
3445
+ * Creates a new Liveboard object with the specified name.
3446
+ * - `newTabName`: Name of the tab. Adds a new tab Liveboard specified
3447
+ * in the code.
3459
3448
  *
3460
3449
  * @example
3461
3450
  * ```js
@@ -3695,9 +3684,9 @@ export enum HostEvent {
3695
3684
  * on a Liveboard.
3696
3685
  *
3697
3686
  * This event is not supported in visualization embed and search embed.
3698
- * @param - object - To trigger the action for a specific visualization
3699
- * in Liveboard embed, pass in `vizId` as a key.
3700
- * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
3687
+ * @param - Object parameter. Includes the following keys:
3688
+ * - `vizId`: To trigger the action for a specific visualization in Liveboard embed,
3689
+ * pass in `vizId` as a key. In Spotter embed, `vizId` refers to the Answer ID and is **required**.
3701
3690
  *
3702
3691
  * @example
3703
3692
  * ```js
@@ -4064,10 +4053,9 @@ export enum HostEvent {
4064
4053
  GetFilters = 'getFilters',
4065
4054
  /**
4066
4055
  * Update one or several filters applied on a Liveboard.
4067
- * @param - `filter`: a single filter object containing column name,
4068
- * filter operator, and values.
4069
- * @param - `filters`: multiple filter objects with column name, filter operator,
4070
- * and values for each.
4056
+ * @param - Includes the following keys:
4057
+ * - `filter`: A single filter object containing column name, filter operator, and values.
4058
+ * - `filters`: Multiple filter objects with column name, filter operator, and values for each.
4071
4059
  *
4072
4060
  * Each filter object must include the following attributes:
4073
4061
  *
@@ -4193,8 +4181,9 @@ export enum HostEvent {
4193
4181
  SetHiddenTabs = 'SetPinboardHiddenTabs',
4194
4182
  /**
4195
4183
  * Updates the search query string for Natural Language Search operations.
4196
- * @param - `queryString`: Text string in Natural Language format
4197
- * @param - `executeSearch`: Boolean to execute search and update search query
4184
+ * @param - Includes the following keys:
4185
+ * - `queryString`: Text string in Natural Language format.
4186
+ * - `executeSearch`: Boolean to execute search and update search query.
4198
4187
  * @example
4199
4188
  * ```js
4200
4189
  * sageEmbed.trigger(HostEvent.UpdateSageQuery, {
@@ -4273,11 +4262,10 @@ export enum HostEvent {
4273
4262
  /**
4274
4263
  * Triggers an action to update Parameter values on embedded
4275
4264
  * Answers, Liveboard, and Spotter answer in Edit mode.
4276
- * @param - `name` - Name of the Parameter
4277
- * @param - `value` - The value to set for the Parameter.
4278
- *
4279
- * Optionally, to control the visibility of the Parameter chip,
4280
- * use the `isVisibleToUser` attribute when applying an override.
4265
+ * @param - Includes the following keys for each item:
4266
+ * - `name`: Name of the parameter.
4267
+ * - `value`: The value to set for the parameter.
4268
+ * - `isVisibleToUser`: Optional. To control the visibility of the parameter chip.
4281
4269
  *
4282
4270
  * @example
4283
4271
  * ```js
@@ -4335,11 +4323,10 @@ export enum HostEvent {
4335
4323
  * If no parameters are specified, the save action is
4336
4324
  * triggered with a modal to prompt users to
4337
4325
  * add a name and description for the Answer.
4338
- * @param - `vizId` refers to the Answer ID in Spotter embed
4339
- * and is required in Spotter embed.
4340
- * Optional attributes to set Answer properties include:
4341
- * @param - `name` - Name string for the Answer.
4342
- * @param - `description` - Description text for the Answer.
4326
+ * @param - Includes the following keys:
4327
+ * - `vizId`: Refers to the Answer ID in Spotter embed and is **required** in Spotter embed.
4328
+ * - `name`: Optional. Name string for the Answer.
4329
+ * - `description`: Optional. Description text for the Answer.
4343
4330
  * @example
4344
4331
  * ```js
4345
4332
  * const saveAnswerResponse = await searchEmbed.trigger(HostEvent.SaveAnswer, {
@@ -4388,8 +4375,9 @@ export enum HostEvent {
4388
4375
  /**
4389
4376
  * Triggers a search operation with the search tokens specified in
4390
4377
  * the search query string in spotter embed.
4391
- * @param - `query`: Text string in Natural Language format
4392
- * @param - `executeSearch`: Boolean to execute search and update search query
4378
+ * @param - Includes the following keys:
4379
+ * - `query`: Text string in Natural Language format.
4380
+ * - `executeSearch`: Boolean to execute search and update search query.
4393
4381
  * @example
4394
4382
  * ```js
4395
4383
  * spotterEmbed.trigger(HostEvent.SpotterSearch, {
@@ -4436,7 +4424,7 @@ export enum HostEvent {
4436
4424
  * ```js
4437
4425
  * spotterEmbed.trigger(HostEvent.DataModelInstructions);
4438
4426
  * ```
4439
- * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
4427
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
4440
4428
  */
4441
4429
  DataModelInstructions = 'DataModelInstructions',
4442
4430
  /**
@@ -4522,7 +4510,7 @@ export enum HostEvent {
4522
4510
  */
4523
4511
  UpdateEmbedParams = 'updateEmbedParams',
4524
4512
  /**
4525
- * Triggered when the embed is needed to be destroyed. This is used to clean up any embed related resources internally.
4513
+ * Triggered when the embed needs to be destroyed. This is used to clean up any embed-related resources internally.
4526
4514
  * @example
4527
4515
  * ```js
4528
4516
  * liveboardEmbed.trigger(HostEvent.DestroyEmbed);
@@ -4530,11 +4518,12 @@ export enum HostEvent {
4530
4518
  * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4531
4519
  */
4532
4520
  DestroyEmbed = 'EmbedDestroyed',
4533
- /** Triggers a create new conversation operation in spotter embed.
4534
- * @example
4535
- * ```js
4521
+ /**
4522
+ * Triggers a new conversation in Spotter embed.
4523
+ *
4536
4524
  * This feature is available only when chat history is enabled on your ThoughtSpot instance.
4537
4525
  * Contact your admin or ThoughtSpot Support to enable chat history on your instance.
4526
+ *
4538
4527
  * @example
4539
4528
  * ```js
4540
4529
  * spotterEmbed.trigger(HostEvent.StartNewSpotterConversation);
@@ -4693,8 +4682,9 @@ export enum Param {
4693
4682
  IsLiveboardStylingAndGroupingEnabled = 'isLiveboardStylingAndGroupingEnabled',
4694
4683
  IsLazyLoadingForEmbedEnabled = 'isLazyLoadingForEmbedEnabled',
4695
4684
  RootMarginForLazyLoad = 'rootMarginForLazyLoad',
4696
- LiveboardXLSXCSVDownload = 'isLiveboardXLSXCSVDownloadEnabled',
4697
4685
  isPNGInScheduledEmailsEnabled = 'isPNGInScheduledEmailsEnabled',
4686
+ isLiveboardXLSXCSVDownloadEnabled = 'isLiveboardXLSXCSVDownloadEnabled',
4687
+ isGranularXLSXCSVSchedulesEnabled = 'isGranularXLSXCSVSchedulesEnabled',
4698
4688
  isCentralizedLiveboardFilterUXEnabled = 'isCentralizedLiveboardFilterUXEnabled',
4699
4689
  isLinkParametersEnabled = 'isLinkParametersEnabled',
4700
4690
  EnablePastConversationsSidebar = 'enablePastConversationsSidebar',
@@ -4726,7 +4716,7 @@ export enum Param {
4726
4716
  * hiddenActions: [Action.Edit, ActionAction.Explore],
4727
4717
  * })
4728
4718
  * ```
4729
- * See also link:https://developers.thoughtspot.com/docs/actions[Action IDs in the SDK]
4719
+ * See also link:https://developers.thoughtspot.com/docs/actions[Developer Documentation].
4730
4720
  */
4731
4721
 
4732
4722
  export enum Action {
@@ -5014,6 +5004,16 @@ export enum Action {
5014
5004
  * ```
5015
5005
  */
5016
5006
  DownloadAsXlsx = 'downloadAsXLSX',
5007
+ /**
5008
+ * The **Download Liveboard** menu action on a Liveboard.
5009
+ * Allows downloading the entire Liveboard.
5010
+ * @example
5011
+ * ```js
5012
+ * disabledActions: [Action.DownloadLiveboard]
5013
+ * ```
5014
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
5015
+ */
5016
+ DownloadLiveboard = 'downloadLiveboard',
5017
5017
  /**
5018
5018
  * @hidden
5019
5019
  */
@@ -5354,28 +5354,28 @@ export enum Action {
5354
5354
  CrossFilter = 'context-menu-item-cross-filter',
5355
5355
  /**
5356
5356
  * The **Sync to Slack** action on Liveboard visualizations.
5357
- * Allows sending data to third-party apps Slack
5357
+ * Allows sending data to third-party apps like Slack.
5358
5358
  * @example
5359
5359
  * ```js
5360
5360
  * disabledActions: [Action.SyncToSlack]
5361
5361
  * ```
5362
- * @version @version SDK : 1.32.0 | ThoughtSpot Cloud: 10.1.0.cl
5362
+ * @version SDK: 1.32.0 | ThoughtSpot Cloud: 10.1.0.cl
5363
5363
  */
5364
5364
  SyncToSlack = 'syncToSlack',
5365
5365
  /**
5366
5366
  * The **Sync to Teams** action on Liveboard visualizations.
5367
- * Allows sending data to third-party apps Team
5367
+ * Allows sending data to third-party apps like Microsoft Teams.
5368
5368
  * @example
5369
5369
  * ```js
5370
5370
  * disabledActions: [Action.SyncToTeams]
5371
5371
  * ```
5372
- * @version @version SDK : 1.32.0 | ThoughtSpot Cloud: 10.1.0.cl
5372
+ * @version SDK: 1.32.0 | ThoughtSpot Cloud: 10.1.0.cl
5373
5373
  */
5374
5374
  SyncToTeams = 'syncToTeams',
5375
5375
  /**
5376
5376
  * The **Remove** action that appears when cross filters are applied
5377
5377
  * on a Liveboard.
5378
- * Removes filters applied o a visualization.
5378
+ * Removes filters applied to a visualization.
5379
5379
  * @example
5380
5380
  * ```js
5381
5381
  * disabledActions: [Action.RemoveCrossFilter]
@@ -5561,7 +5561,7 @@ export enum Action {
5561
5561
  AddTab = 'addTab',
5562
5562
  /**
5563
5563
  *
5564
- *Initiates contextual change analysis on KPI charts.
5564
+ * Initiates contextual change analysis on KPI charts.
5565
5565
  * @example
5566
5566
  * ```js
5567
5567
  * disabledActions: [Action.EnableContextualChangeAnalysis]
@@ -5571,7 +5571,7 @@ export enum Action {
5571
5571
  EnableContextualChangeAnalysis = 'enableContextualChangeAnalysis',
5572
5572
  /**
5573
5573
  * Action ID to hide or disable Iterative Change Analysis option
5574
- * on contextual change analysis Inisght charts context menu
5574
+ * in the contextual change analysis Insight charts context menu.
5575
5575
  *
5576
5576
  * @example
5577
5577
  * ```js
@@ -5864,6 +5864,18 @@ export enum Action {
5864
5864
  */
5865
5865
  ChangeFilterVisibilityInTab = 'changeFilterVisibilityInTab',
5866
5866
 
5867
+ /**
5868
+ * The **Data model instructions** button on the Spotter interface.
5869
+ * Allows opening the data model instructions modal.
5870
+ *
5871
+ * @example
5872
+ * ```js
5873
+ * hiddenAction: [Action.DataModelInstructions]
5874
+ * ```
5875
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
5876
+ */
5877
+ DataModelInstructions = 'DataModelInstructions',
5878
+
5867
5879
  /**
5868
5880
  * The **Preview data** button on the Spotter interface.
5869
5881
  * Allows previewing the data used for Spotter queries.
@@ -5950,12 +5962,12 @@ export enum Action {
5950
5962
  */
5951
5963
  CoverAndFilterOptionInPDF = 'coverAndFilterOptionInPDF',
5952
5964
  /**
5953
- * Action ID for hide or disable the
5954
- * Spotter in conversation training widget.
5955
- * The Add to Coaching feature is currently in beta
5956
- * and is disabled by default on embed deployments.
5957
- * To enable this feature on your instance,
5958
- * contact ThoughtSpot Support.
5965
+ * Action ID to hide or disable the Spotter in the conversation training widget.
5966
+ * When disabled, users cannot access **Add to Coaching**, which allows adding reference
5967
+ * questions and business terms to improve Spotter’s responses.
5968
+ * The **Add to Coaching** feature is generally available from version 26.2.0.cl and
5969
+ * enabled by default on embed deployments.
5970
+
5959
5971
  * @example
5960
5972
  * ```js
5961
5973
  * hiddenAction: [Action.InConversationTraining]
@@ -6287,31 +6299,19 @@ export enum ErrorDetailsTypes {
6287
6299
  }
6288
6300
 
6289
6301
  /**
6290
- * Specific error codes for embedded component errors.
6291
- *
6292
- * These codes provide granular identification of errors that occur in embedded components.
6293
- * They are returned in the {@link EmbedErrorDetailsEvent.code} property and allow for
6294
- * precise error handling and debugging.
6295
- *
6296
- * The codes are organized into categories:
6297
- * - **Worksheet ID not found or does not exist**: Errors related to applying or updating filters
6298
- * - **Liveboard ID missing**: Errors related to missing liveboard ID
6299
- * - **Conflicting actions configuration**: Errors related to conflicting actions configuration
6300
- * - **Conflicting tabs configuration**: Errors related to conflicting tabs configuration
6301
- * - **Initialization error**: Errors related to initialization error
6302
- * - **Network error**: Errors related to network error
6303
- * - **Custom action validation**: Errors related to custom action validation
6304
- * - **Login failed**: Errors related to login failed
6305
- * - **Render not called**: Errors related to render not called
6306
- * - **Host event type undefined or invalid**: Errors related to host event type undefined or invalid
6307
- *
6302
+ * Error codes for identifying specific issues in embedded ThoughtSpot components.
6303
+ *
6304
+ * Use these codes for precise error handling and debugging. Each code maps to a
6305
+ * distinct failure scenario, enabling targeted recovery strategies.
6306
+ *
6308
6307
  * @version SDK: 1.44.2 | ThoughtSpot: 26.2.0.cl
6309
6308
  * @group Error Handling
6309
+ *
6310
6310
  * @see {@link EmbedErrorDetailsEvent} - The error event object that includes these codes
6311
6311
  * @see {@link ErrorDetailsTypes} - General error type categories
6312
- *
6312
+ *
6313
6313
  * @example
6314
- * Handle specific error codes
6314
+ * Handle specific error codes in the error event handler
6315
6315
  *
6316
6316
  * embed.on(EmbedEvent.Error, (error) => {
6317
6317
  * if (error.code === EmbedErrorCodes.WORKSHEET_ID_NOT_FOUND) {
@@ -171,7 +171,6 @@ export const addVizToLiveboard = `
171
171
  export const getSQLQuery = `
172
172
  mutation GetSQLQuery($session: BachSessionIdInput!) {
173
173
  Answer__getQuery(session: $session) {
174
- ${bachSessionId}
175
174
  sql
176
175
  }
177
176
  }
@@ -452,7 +452,6 @@ describe('Answer service tests', () => {
452
452
  fetchMock.mockResponseOnce(JSON.stringify({
453
453
  data: {
454
454
  Answer__getQuery: {
455
- id: {},
456
455
  sql: 'SELECT * FROM table',
457
456
  },
458
457
  },