@thoughtspot/visual-embed-sdk 1.44.1 → 1.44.2

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 (235) hide show
  1. package/cjs/package.json +6 -5
  2. package/cjs/src/api-intercept.d.ts.map +1 -1
  3. package/cjs/src/api-intercept.js +8 -3
  4. package/cjs/src/api-intercept.js.map +1 -1
  5. package/cjs/src/api-intercept.spec.js +19 -3
  6. package/cjs/src/api-intercept.spec.js.map +1 -1
  7. package/cjs/src/auth.spec.js +43 -42
  8. package/cjs/src/auth.spec.js.map +1 -1
  9. package/cjs/src/authToken.spec.js +3 -3
  10. package/cjs/src/authToken.spec.js.map +1 -1
  11. package/cjs/src/embed/app.d.ts +17 -0
  12. package/cjs/src/embed/app.d.ts.map +1 -1
  13. package/cjs/src/embed/app.js +9 -5
  14. package/cjs/src/embed/app.js.map +1 -1
  15. package/cjs/src/embed/app.spec.js +96 -6
  16. package/cjs/src/embed/app.spec.js.map +1 -1
  17. package/cjs/src/embed/base.spec.js +11 -15
  18. package/cjs/src/embed/base.spec.js.map +1 -1
  19. package/cjs/src/embed/bodyless-conversation.spec.js +2 -2
  20. package/cjs/src/embed/bodyless-conversation.spec.js.map +1 -1
  21. package/cjs/src/embed/conversation.d.ts.map +1 -1
  22. package/cjs/src/embed/conversation.js +6 -1
  23. package/cjs/src/embed/conversation.js.map +1 -1
  24. package/cjs/src/embed/conversation.spec.js +8 -3
  25. package/cjs/src/embed/conversation.spec.js.map +1 -1
  26. package/cjs/src/embed/embed.spec.js +101 -2
  27. package/cjs/src/embed/embed.spec.js.map +1 -1
  28. package/cjs/src/embed/events.spec.js +2 -2
  29. package/cjs/src/embed/events.spec.js.map +1 -1
  30. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +1 -1
  31. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  32. package/cjs/src/embed/liveboard.d.ts +18 -0
  33. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  34. package/cjs/src/embed/liveboard.js +13 -6
  35. package/cjs/src/embed/liveboard.js.map +1 -1
  36. package/cjs/src/embed/liveboard.spec.js +114 -26
  37. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  38. package/cjs/src/embed/pinboard.spec.js +1 -1
  39. package/cjs/src/embed/pinboard.spec.js.map +1 -1
  40. package/cjs/src/embed/sage.spec.js +2 -2
  41. package/cjs/src/embed/sage.spec.js.map +1 -1
  42. package/cjs/src/embed/search.spec.js +118 -2
  43. package/cjs/src/embed/search.spec.js.map +1 -1
  44. package/cjs/src/embed/ts-embed-trigger.spec.js +2 -3
  45. package/cjs/src/embed/ts-embed-trigger.spec.js.map +1 -1
  46. package/cjs/src/embed/ts-embed.d.ts +3 -2
  47. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  48. package/cjs/src/embed/ts-embed.js +51 -17
  49. package/cjs/src/embed/ts-embed.js.map +1 -1
  50. package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
  51. package/cjs/src/embed/ts-embed.spec.js +335 -71
  52. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  53. package/cjs/src/errors.d.ts +7 -0
  54. package/cjs/src/errors.d.ts.map +1 -1
  55. package/cjs/src/errors.js +7 -0
  56. package/cjs/src/errors.js.map +1 -1
  57. package/cjs/src/mixpanel-service.spec.js +1 -1
  58. package/cjs/src/mixpanel-service.spec.js.map +1 -1
  59. package/cjs/src/react/index.spec.js +3 -4
  60. package/cjs/src/react/index.spec.js.map +1 -1
  61. package/cjs/src/test/test-utils.js +1 -1
  62. package/cjs/src/test/test-utils.js.map +1 -1
  63. package/cjs/src/types.d.ts +194 -1
  64. package/cjs/src/types.d.ts.map +1 -1
  65. package/cjs/src/types.js +94 -2
  66. package/cjs/src/types.js.map +1 -1
  67. package/cjs/src/utils/authService/authService.spec.js +8 -8
  68. package/cjs/src/utils/authService/authService.spec.js.map +1 -1
  69. package/cjs/src/utils/authService/tokenizedAuthService.spec.js.map +1 -1
  70. package/cjs/src/utils/graphql/answerService/answerService.spec.js +1 -1
  71. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  72. package/cjs/src/utils/graphql/graphql-request.spec.js +1 -1
  73. package/cjs/src/utils/graphql/graphql-request.spec.js.map +1 -1
  74. package/cjs/src/utils/graphql/sourceService.spec.js +1 -1
  75. package/cjs/src/utils/graphql/sourceService.spec.js.map +1 -1
  76. package/cjs/src/utils/logger.spec.d.ts +5 -20
  77. package/cjs/src/utils/logger.spec.d.ts.map +1 -1
  78. package/cjs/src/utils/processData.spec.js +17 -17
  79. package/cjs/src/utils/processData.spec.js.map +1 -1
  80. package/cjs/src/utils/processTrigger.spec.js +8 -8
  81. package/cjs/src/utils/processTrigger.spec.js.map +1 -1
  82. package/cjs/src/utils.d.ts +6 -0
  83. package/cjs/src/utils.d.ts.map +1 -1
  84. package/cjs/src/utils.js +32 -1
  85. package/cjs/src/utils.js.map +1 -1
  86. package/cjs/src/utils.spec.js +19 -10
  87. package/cjs/src/utils.spec.js.map +1 -1
  88. package/dist/{index-BE9gGzRX.js → index-CSFjfTVk.js} +1 -1
  89. package/dist/src/api-intercept.d.ts.map +1 -1
  90. package/dist/src/embed/app.d.ts +17 -0
  91. package/dist/src/embed/app.d.ts.map +1 -1
  92. package/dist/src/embed/conversation.d.ts.map +1 -1
  93. package/dist/src/embed/liveboard.d.ts +18 -0
  94. package/dist/src/embed/liveboard.d.ts.map +1 -1
  95. package/dist/src/embed/ts-embed.d.ts +3 -2
  96. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  97. package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
  98. package/dist/src/errors.d.ts +7 -0
  99. package/dist/src/errors.d.ts.map +1 -1
  100. package/dist/src/types.d.ts +194 -1
  101. package/dist/src/types.d.ts.map +1 -1
  102. package/dist/src/utils/logger.spec.d.ts +5 -20
  103. package/dist/src/utils/logger.spec.d.ts.map +1 -1
  104. package/dist/src/utils.d.ts +6 -0
  105. package/dist/src/utils.d.ts.map +1 -1
  106. package/dist/tsembed-react.es.js +219 -36
  107. package/dist/tsembed-react.js +218 -35
  108. package/dist/tsembed.es.js +219 -36
  109. package/dist/tsembed.js +218 -35
  110. package/dist/visual-embed-sdk-react-full.d.ts +184 -2
  111. package/dist/visual-embed-sdk-react.d.ts +184 -2
  112. package/dist/visual-embed-sdk.d.ts +184 -2
  113. package/lib/package.json +6 -5
  114. package/lib/src/api-intercept.d.ts.map +1 -1
  115. package/lib/src/api-intercept.js +9 -4
  116. package/lib/src/api-intercept.js.map +1 -1
  117. package/lib/src/api-intercept.spec.js +20 -4
  118. package/lib/src/api-intercept.spec.js.map +1 -1
  119. package/lib/src/auth.spec.js +43 -42
  120. package/lib/src/auth.spec.js.map +1 -1
  121. package/lib/src/authToken.spec.js +3 -3
  122. package/lib/src/authToken.spec.js.map +1 -1
  123. package/lib/src/embed/app.d.ts +17 -0
  124. package/lib/src/embed/app.d.ts.map +1 -1
  125. package/lib/src/embed/app.js +10 -6
  126. package/lib/src/embed/app.js.map +1 -1
  127. package/lib/src/embed/app.spec.js +96 -6
  128. package/lib/src/embed/app.spec.js.map +1 -1
  129. package/lib/src/embed/base.spec.js +11 -15
  130. package/lib/src/embed/base.spec.js.map +1 -1
  131. package/lib/src/embed/bodyless-conversation.spec.js +2 -2
  132. package/lib/src/embed/bodyless-conversation.spec.js.map +1 -1
  133. package/lib/src/embed/conversation.d.ts.map +1 -1
  134. package/lib/src/embed/conversation.js +7 -2
  135. package/lib/src/embed/conversation.js.map +1 -1
  136. package/lib/src/embed/conversation.spec.js +9 -4
  137. package/lib/src/embed/conversation.spec.js.map +1 -1
  138. package/lib/src/embed/embed.spec.js +103 -4
  139. package/lib/src/embed/embed.spec.js.map +1 -1
  140. package/lib/src/embed/events.spec.js +2 -2
  141. package/lib/src/embed/events.spec.js.map +1 -1
  142. package/lib/src/embed/hostEventClient/host-event-client.spec.js +2 -2
  143. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  144. package/lib/src/embed/liveboard.d.ts +18 -0
  145. package/lib/src/embed/liveboard.d.ts.map +1 -1
  146. package/lib/src/embed/liveboard.js +15 -8
  147. package/lib/src/embed/liveboard.js.map +1 -1
  148. package/lib/src/embed/liveboard.spec.js +114 -26
  149. package/lib/src/embed/liveboard.spec.js.map +1 -1
  150. package/lib/src/embed/pinboard.spec.js +1 -1
  151. package/lib/src/embed/pinboard.spec.js.map +1 -1
  152. package/lib/src/embed/sage.spec.js +2 -2
  153. package/lib/src/embed/sage.spec.js.map +1 -1
  154. package/lib/src/embed/search.spec.js +118 -2
  155. package/lib/src/embed/search.spec.js.map +1 -1
  156. package/lib/src/embed/ts-embed-trigger.spec.js +2 -3
  157. package/lib/src/embed/ts-embed-trigger.spec.js.map +1 -1
  158. package/lib/src/embed/ts-embed.d.ts +3 -2
  159. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  160. package/lib/src/embed/ts-embed.js +52 -18
  161. package/lib/src/embed/ts-embed.js.map +1 -1
  162. package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
  163. package/lib/src/embed/ts-embed.spec.js +336 -72
  164. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  165. package/lib/src/errors.d.ts +7 -0
  166. package/lib/src/errors.d.ts.map +1 -1
  167. package/lib/src/errors.js +7 -0
  168. package/lib/src/errors.js.map +1 -1
  169. package/lib/src/mixpanel-service.spec.js +1 -1
  170. package/lib/src/mixpanel-service.spec.js.map +1 -1
  171. package/lib/src/react/index.spec.js +3 -4
  172. package/lib/src/react/index.spec.js.map +1 -1
  173. package/lib/src/test/test-utils.js +1 -1
  174. package/lib/src/test/test-utils.js.map +1 -1
  175. package/lib/src/types.d.ts +194 -1
  176. package/lib/src/types.d.ts.map +1 -1
  177. package/lib/src/types.js +93 -1
  178. package/lib/src/types.js.map +1 -1
  179. package/lib/src/utils/authService/authService.spec.js +8 -8
  180. package/lib/src/utils/authService/authService.spec.js.map +1 -1
  181. package/lib/src/utils/authService/tokenizedAuthService.spec.js.map +1 -1
  182. package/lib/src/utils/graphql/answerService/answerService.spec.js +1 -1
  183. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  184. package/lib/src/utils/graphql/graphql-request.spec.js +1 -1
  185. package/lib/src/utils/graphql/graphql-request.spec.js.map +1 -1
  186. package/lib/src/utils/graphql/sourceService.spec.js +1 -1
  187. package/lib/src/utils/graphql/sourceService.spec.js.map +1 -1
  188. package/lib/src/utils/logger.spec.d.ts +5 -20
  189. package/lib/src/utils/logger.spec.d.ts.map +1 -1
  190. package/lib/src/utils/processData.spec.js +17 -17
  191. package/lib/src/utils/processData.spec.js.map +1 -1
  192. package/lib/src/utils/processTrigger.spec.js +8 -8
  193. package/lib/src/utils/processTrigger.spec.js.map +1 -1
  194. package/lib/src/utils.d.ts +6 -0
  195. package/lib/src/utils.d.ts.map +1 -1
  196. package/lib/src/utils.js +30 -0
  197. package/lib/src/utils.js.map +1 -1
  198. package/lib/src/utils.spec.js +20 -11
  199. package/lib/src/utils.spec.js.map +1 -1
  200. package/package.json +6 -5
  201. package/src/api-intercept.spec.ts +23 -10
  202. package/src/api-intercept.ts +9 -4
  203. package/src/auth.spec.ts +53 -51
  204. package/src/authToken.spec.ts +3 -3
  205. package/src/embed/app.spec.ts +128 -7
  206. package/src/embed/app.ts +30 -4
  207. package/src/embed/base.spec.ts +16 -20
  208. package/src/embed/bodyless-conversation.spec.ts +2 -2
  209. package/src/embed/conversation.spec.ts +9 -4
  210. package/src/embed/conversation.ts +7 -2
  211. package/src/embed/embed.spec.ts +122 -2
  212. package/src/embed/events.spec.ts +2 -2
  213. package/src/embed/hostEventClient/host-event-client.spec.ts +2 -2
  214. package/src/embed/liveboard.spec.ts +137 -29
  215. package/src/embed/liveboard.ts +36 -6
  216. package/src/embed/pinboard.spec.ts +1 -1
  217. package/src/embed/sage.spec.ts +2 -2
  218. package/src/embed/search.spec.ts +133 -2
  219. package/src/embed/ts-embed-trigger.spec.ts +2 -3
  220. package/src/embed/ts-embed.spec.ts +424 -91
  221. package/src/embed/ts-embed.ts +56 -19
  222. package/src/errors.ts +7 -0
  223. package/src/mixpanel-service.spec.ts +1 -1
  224. package/src/react/index.spec.tsx +4 -5
  225. package/src/test/test-utils.ts +2 -2
  226. package/src/types.ts +206 -1
  227. package/src/utils/authService/authService.spec.ts +17 -17
  228. package/src/utils/authService/tokenizedAuthService.spec.ts +4 -4
  229. package/src/utils/graphql/answerService/answerService.spec.ts +3 -3
  230. package/src/utils/graphql/graphql-request.spec.ts +2 -2
  231. package/src/utils/graphql/sourceService.spec.ts +1 -1
  232. package/src/utils/processData.spec.ts +26 -26
  233. package/src/utils/processTrigger.spec.ts +8 -8
  234. package/src/utils.spec.ts +22 -11
  235. package/src/utils.ts +34 -0
@@ -2382,6 +2382,38 @@ export interface LiveboardAppEmbedViewConfig {
2382
2382
  * ```
2383
2383
  */
2384
2384
  isEnhancedFilterInteractivityEnabled?: boolean;
2385
+ /**
2386
+ * Show or hide masked filter chips
2387
+ *
2388
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
2389
+ * @version SDK: 1.45.0 | Thoughtspot: 26.2.0.cl
2390
+ * @default false
2391
+ * @example
2392
+ * ```js
2393
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
2394
+ * const embed = new <EmbedComponent>('#tsEmbed', {
2395
+ * ... // other embed view config
2396
+ * showMaskedFilterChip: true,
2397
+ * })
2398
+ * ```
2399
+ */
2400
+ showMaskedFilterChip?: boolean;
2401
+ /**
2402
+ * Enable or disable Liveboard styling and grouping
2403
+ *
2404
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
2405
+ * @version SDK: 1.45.0 | Thoughtspot: 26.2.0.cl
2406
+ * @default false
2407
+ * @example
2408
+ * ```js
2409
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
2410
+ * const embed = new <EmbedComponent>('#tsEmbed', {
2411
+ * ... // other embed view config
2412
+ * isLiveboardMasterpiecesEnabled: true,
2413
+ * })
2414
+ * ```
2415
+ */
2416
+ isLiveboardMasterpiecesEnabled?: boolean;
2385
2417
  }
2386
2418
  export interface AllEmbedViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, HomePageConfig, LiveboardAppEmbedViewConfig {
2387
2419
  }
@@ -2793,6 +2825,7 @@ export declare enum EmbedEvent {
2793
2825
  * SearchEmbed.on(EmbedEvent.Error, (error) => {
2794
2826
  * console.log(error);
2795
2827
  * // { type: "Error", data: { errorType: "API", error: { message: '...', error: '...' } } }
2828
+ * // { errorType: "API", message: '...', code: '...' } new format
2796
2829
  * });
2797
2830
  * ```
2798
2831
  * @example
@@ -2804,6 +2837,7 @@ export declare enum EmbedEvent {
2804
2837
  * // message: "Fullscreen API is not enabled",
2805
2838
  * // stack: "..."
2806
2839
  * // } }}
2840
+ * // { errorType: "FULLSCREEN", message: "Fullscreen API is not enabled", code: '...' } new format
2807
2841
  * })
2808
2842
  * ```
2809
2843
  */
@@ -2959,7 +2993,8 @@ export declare enum EmbedEvent {
2959
2993
  */
2960
2994
  ALL = "*",
2961
2995
  /**
2962
- * Emitted when an Answer is saved in the app
2996
+ * Emitted when an Answer is saved in the app.
2997
+ * Use start:true to subscribe to when save is initiated, or end:true to subscribe to when save is completed. Default is end:true.
2963
2998
  * @Version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
2964
2999
  * @example
2965
3000
  *```js
@@ -2994,6 +3029,7 @@ export declare enum EmbedEvent {
2994
3029
  Download = "download",
2995
3030
  /**
2996
3031
  * Emitted when the download action is triggered on an Answer.
3032
+ * Use start:true to subscribe to when download is initiated, or end:true to subscribe to when download is completed. Default is end:true.
2997
3033
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.4.0.sw
2998
3034
  * @example
2999
3035
  *```js
@@ -3008,6 +3044,7 @@ export declare enum EmbedEvent {
3008
3044
  DownloadAsPng = "downloadAsPng",
3009
3045
  /**
3010
3046
  * Emitted when the Download as PDF action is triggered on an Answer
3047
+ * Use start:true to subscribe to when download as PDF is initiated, or end:true to subscribe to when download as PDF is completed. Default is end:true.
3011
3048
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3012
3049
  * @example
3013
3050
  *```js
@@ -3022,6 +3059,7 @@ export declare enum EmbedEvent {
3022
3059
  DownloadAsPdf = "downloadAsPdf",
3023
3060
  /**
3024
3061
  * Emitted when the Download as CSV action is triggered on an Answer.
3062
+ * Use start:true to subscribe to when download as CSV is initiated, or end:true to subscribe to when download as CSV is completed. Default is end:true.
3025
3063
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3026
3064
  * @example
3027
3065
  *```js
@@ -3036,6 +3074,7 @@ export declare enum EmbedEvent {
3036
3074
  DownloadAsCsv = "downloadAsCsv",
3037
3075
  /**
3038
3076
  * Emitted when the Download as XLSX action is triggered on an Answer.
3077
+ * Use start:true to subscribe to when download as XLSX is initiated, or end:true to subscribe to when download as XLSX is completed. Default is end:true.
3039
3078
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3040
3079
  * @example
3041
3080
  *```js
@@ -3050,6 +3089,7 @@ export declare enum EmbedEvent {
3050
3089
  DownloadAsXlsx = "downloadAsXlsx",
3051
3090
  /**
3052
3091
  * Emitted when an Answer is deleted in the app
3092
+ * Use start:true to subscribe to when delete is initiated, or end:true to subscribe to when delete is completed. Default is end:true.
3053
3093
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3054
3094
  * @example
3055
3095
  *```js
@@ -3076,6 +3116,7 @@ export declare enum EmbedEvent {
3076
3116
  /**
3077
3117
  * Emitted when a user initiates the Pin action to
3078
3118
  * add an Answer to a Liveboard.
3119
+ * Use start:true to subscribe to when pin is initiated, or end:true to subscribe to when pin is completed. Default is end:true.
3079
3120
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3080
3121
  * @example
3081
3122
  *```js
@@ -3189,6 +3230,7 @@ export declare enum EmbedEvent {
3189
3230
  /**
3190
3231
  * Emitted when the **Export TML** action is triggered on an
3191
3232
  * an embedded object in the app
3233
+ * Use start:true to subscribe to when export is initiated, or end:true to subscribe to when export is completed. Default is end:true.
3192
3234
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3193
3235
  * @example
3194
3236
  *```js
@@ -3214,6 +3256,7 @@ export declare enum EmbedEvent {
3214
3256
  SaveAsView = "saveAsView",
3215
3257
  /**
3216
3258
  * Emitted when the user creates a copy of an Answer.
3259
+ * Use start:true to subscribe to when copy and edit is initiated, or end:true to subscribe to when copy and edit is completed. Default is end:true.
3217
3260
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3218
3261
  * @example
3219
3262
  *```js
@@ -6701,6 +6744,109 @@ declare enum LogLevel {
6701
6744
  */
6702
6745
  TRACE = "TRACE"
6703
6746
  }
6747
+ declare enum ErrorDetailsTypes {
6748
+ /** API call failure */
6749
+ API = "API",
6750
+ /** General validation error */
6751
+ VALIDATION_ERROR = "VALIDATION_ERROR",
6752
+ /** Network connectivity or request error */
6753
+ NETWORK = "NETWORK"
6754
+ }
6755
+ declare enum EmbedErrorCodes {
6756
+ /** Worksheet ID not found or does not exist */
6757
+ WORKSHEET_ID_NOT_FOUND = "WORKSHEET_ID_NOT_FOUND",
6758
+ /** Required Liveboard ID is missing from configuration */
6759
+ LIVEBOARD_ID_MISSING = "LIVEBOARD_ID_MISSING",
6760
+ /** Conflicting action configuration detected (e.g., both hiddenActions and visibleActions specified) */
6761
+ CONFLICTING_ACTIONS_CONFIG = "CONFLICTING_ACTIONS_CONFIG",
6762
+ /** Conflicting tab configuration detected (e.g., both hiddenTabs and visibleTabs specified) */
6763
+ CONFLICTING_TABS_CONFIG = "CONFLICTING_TABS_CONFIG",
6764
+ /** Error during component initialization */
6765
+ INIT_ERROR = "INIT_ERROR",
6766
+ /** Network connectivity or request error */
6767
+ NETWORK_ERROR = "NETWORK_ERROR",
6768
+ /** Custom action validation failed */
6769
+ CUSTOM_ACTION_VALIDATION = "CUSTOM_ACTION_VALIDATION",
6770
+ /** Authentication/login failed */
6771
+ LOGIN_FAILED = "LOGIN_FAILED",
6772
+ /** Render method was not called before attempting to use the component */
6773
+ RENDER_NOT_CALLED = "RENDER_NOT_CALLED",
6774
+ /** Host event type is undefined or invalid */
6775
+ HOST_EVENT_TYPE_UNDEFINED = "HOST_EVENT_TYPE_UNDEFINED",
6776
+ /** Error parsing api intercept body */
6777
+ PARSING_API_INTERCEPT_BODY_ERROR = "PARSING_API_INTERCEPT_BODY_ERROR"
6778
+ }
6779
+ /**
6780
+ * Error event object emitted when an error occurs in an embedded component.
6781
+ *
6782
+ * This interface defines the structure of error objects returned by the {@link EmbedEvent.Error}
6783
+ * event. It provides detailed information about what went wrong, including the error type,
6784
+ * a human-readable message, and a machine-readable error code.
6785
+ *
6786
+ * ## Properties
6787
+ *
6788
+ * - **errorType**: One of the predefined {@link ErrorDetailsTypes} values
6789
+ * - **message**: Human-readable error description (string or array of strings for multiple errors)
6790
+ * - **code**: Machine-readable error identifier for programmatic handling
6791
+ * - **[key: string]**: Additional context-specific for backward compatibility
6792
+ *
6793
+ * ## Usage
6794
+ *
6795
+ * Listen to the {@link EmbedEvent.Error} event to receive instances of this object
6796
+ * and implement appropriate error handling logic based on the `errorType`.
6797
+ *
6798
+ * @version SDK: 1.44.2 | ThoughtSpot: 26.2.0.cl
6799
+ * @group Error Handling
6800
+ * @see {@link ErrorDetailsTypes} - Available error type values
6801
+ * @see {@link EmbedEvent.Error} - The event that emits this object
6802
+ *
6803
+ * @example
6804
+ * Handle specific error types
6805
+ *
6806
+ * embed.on(EmbedEvent.Error, (error) => {
6807
+ * switch (error.code) {
6808
+ * case EmbedErrorCodes.WORKSHEET_ID_NOT_FOUND:
6809
+ * console.error('Worksheet ID not found:', error.message, error.code);
6810
+ * break;
6811
+ * default:
6812
+ * console.error('Unknown error:', error);
6813
+ * }
6814
+ * });
6815
+ * *
6816
+ * @example
6817
+ * Handle multiple error messages
6818
+ *
6819
+ * embed.on(EmbedEvent.Error, (error) => {
6820
+ * const messages = Array.isArray(error.message)
6821
+ * ? error.message
6822
+ * : [error.message];
6823
+ *
6824
+ * messages.forEach(msg => console.error(msg));
6825
+ * });
6826
+ * *
6827
+ * @example
6828
+ * Access additional error context
6829
+ *
6830
+ * embed.on(EmbedEvent.Error, (error) => {
6831
+ * console.error('Error Details:', {
6832
+ * type: error.errorType,
6833
+ * message: error.message,
6834
+ * code: error.code,
6835
+ * // Additional context fields vary by error type
6836
+ * ...error
6837
+ * });
6838
+ * });
6839
+ * */
6840
+ export interface EmbedErrorDetailsEvent {
6841
+ /** The type of error that occurred */
6842
+ errorType: ErrorDetailsTypes;
6843
+ /** Human-readable error message(s) describing what went wrong */
6844
+ message: string | string[];
6845
+ /** Machine-readable error code for programmatic error handling */
6846
+ code: EmbedErrorCodes;
6847
+ /** Additional context-specific for backward compatibility */
6848
+ [key: string]: any;
6849
+ }
6704
6850
  export interface DefaultAppInitData {
6705
6851
  customisations: CustomisationsInterface;
6706
6852
  authToken: string;
@@ -7066,8 +7212,9 @@ declare class TsEmbed {
7066
7212
  /**
7067
7213
  * Handles errors within the SDK
7068
7214
  * @param error The error message or object
7215
+ * @param errorDetails The error details
7069
7216
  */
7070
- protected handleError(error: string | Record<string, unknown>): void;
7217
+ protected handleError(errorDetails: EmbedErrorDetailsEvent): void;
7071
7218
  /**
7072
7219
  * Extracts the type field from the event payload
7073
7220
  * @param event The window message event
@@ -8593,6 +8740,23 @@ export interface AppViewConfig extends AllEmbedViewConfig {
8593
8740
  * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
8594
8741
  */
8595
8742
  updatedSpotterChatPrompt?: boolean;
8743
+ /**
8744
+ * This is the minimum height (in pixels) for a full-height App.
8745
+ * Setting this height helps resolve issues with empty Apps and
8746
+ * other screens navigable from an App.
8747
+ *
8748
+ * @version SDK: 1.44.2 | ThoughtSpot: 26.0.2.cl
8749
+ * @default 500
8750
+ * @example
8751
+ * ```js
8752
+ * const embed = new AppEmbed('#embed', {
8753
+ * ... // other app view config
8754
+ * fullHeight: true,
8755
+ * minimumHeight: 600,
8756
+ * });
8757
+ * ```
8758
+ */
8759
+ minimumHeight?: number;
8596
8760
  }
8597
8761
  declare class AppEmbed extends V1Embed {
8598
8762
  protected viewConfig: AppViewConfig;
@@ -8699,6 +8863,7 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
8699
8863
  * Supported embed types: `LiveboardEmbed`
8700
8864
  * @version SDK: 1.5.0 | ThoughtSpot: ts7.oct.cl, 7.2.1
8701
8865
  * @default 500
8866
+ * @deprecated Use `minimumHeight` instead.
8702
8867
  * @example
8703
8868
  * ```js
8704
8869
  * const embed = new LiveboardEmbed('#embed', {
@@ -8709,6 +8874,23 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
8709
8874
  * ```
8710
8875
  */
8711
8876
  defaultHeight?: number;
8877
+ /**
8878
+ * This is the minimum height (in pixels) for a full-height Liveboard.
8879
+ * Setting this height helps resolve issues with empty Liveboards and
8880
+ * other screens navigable from a Liveboard.
8881
+ *
8882
+ * @version SDK: 1.44.2 | ThoughtSpot: 26.0.2.cl
8883
+ * @default 500
8884
+ * @example
8885
+ * ```js
8886
+ * const embed = new LiveboardEmbed('#embed', {
8887
+ * ... // other liveboard view config
8888
+ * fullHeight: true,
8889
+ * minimumHeight: 600,
8890
+ * });
8891
+ * ```
8892
+ */
8893
+ minimumHeight?: number;
8712
8894
  /**
8713
8895
  * @Deprecated If set to true, the context menu in visualizations will be enabled.
8714
8896
  * @example
@@ -2385,6 +2385,38 @@ export interface LiveboardAppEmbedViewConfig {
2385
2385
  * ```
2386
2386
  */
2387
2387
  isEnhancedFilterInteractivityEnabled?: boolean;
2388
+ /**
2389
+ * Show or hide masked filter chips
2390
+ *
2391
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
2392
+ * @version SDK: 1.45.0 | Thoughtspot: 26.2.0.cl
2393
+ * @default false
2394
+ * @example
2395
+ * ```js
2396
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
2397
+ * const embed = new <EmbedComponent>('#tsEmbed', {
2398
+ * ... // other embed view config
2399
+ * showMaskedFilterChip: true,
2400
+ * })
2401
+ * ```
2402
+ */
2403
+ showMaskedFilterChip?: boolean;
2404
+ /**
2405
+ * Enable or disable Liveboard styling and grouping
2406
+ *
2407
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
2408
+ * @version SDK: 1.45.0 | Thoughtspot: 26.2.0.cl
2409
+ * @default false
2410
+ * @example
2411
+ * ```js
2412
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
2413
+ * const embed = new <EmbedComponent>('#tsEmbed', {
2414
+ * ... // other embed view config
2415
+ * isLiveboardMasterpiecesEnabled: true,
2416
+ * })
2417
+ * ```
2418
+ */
2419
+ isLiveboardMasterpiecesEnabled?: boolean;
2388
2420
  }
2389
2421
  export interface AllEmbedViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, HomePageConfig, LiveboardAppEmbedViewConfig {
2390
2422
  }
@@ -2808,6 +2840,7 @@ export declare enum EmbedEvent {
2808
2840
  * SearchEmbed.on(EmbedEvent.Error, (error) => {
2809
2841
  * console.log(error);
2810
2842
  * // { type: "Error", data: { errorType: "API", error: { message: '...', error: '...' } } }
2843
+ * // { errorType: "API", message: '...', code: '...' } new format
2811
2844
  * });
2812
2845
  * ```
2813
2846
  * @example
@@ -2819,6 +2852,7 @@ export declare enum EmbedEvent {
2819
2852
  * // message: "Fullscreen API is not enabled",
2820
2853
  * // stack: "..."
2821
2854
  * // } }}
2855
+ * // { errorType: "FULLSCREEN", message: "Fullscreen API is not enabled", code: '...' } new format
2822
2856
  * })
2823
2857
  * ```
2824
2858
  */
@@ -2974,7 +3008,8 @@ export declare enum EmbedEvent {
2974
3008
  */
2975
3009
  ALL = "*",
2976
3010
  /**
2977
- * Emitted when an Answer is saved in the app
3011
+ * Emitted when an Answer is saved in the app.
3012
+ * Use start:true to subscribe to when save is initiated, or end:true to subscribe to when save is completed. Default is end:true.
2978
3013
  * @Version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
2979
3014
  * @example
2980
3015
  *```js
@@ -3009,6 +3044,7 @@ export declare enum EmbedEvent {
3009
3044
  Download = "download",
3010
3045
  /**
3011
3046
  * Emitted when the download action is triggered on an Answer.
3047
+ * Use start:true to subscribe to when download is initiated, or end:true to subscribe to when download is completed. Default is end:true.
3012
3048
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.4.0.sw
3013
3049
  * @example
3014
3050
  *```js
@@ -3023,6 +3059,7 @@ export declare enum EmbedEvent {
3023
3059
  DownloadAsPng = "downloadAsPng",
3024
3060
  /**
3025
3061
  * Emitted when the Download as PDF action is triggered on an Answer
3062
+ * Use start:true to subscribe to when download as PDF is initiated, or end:true to subscribe to when download as PDF is completed. Default is end:true.
3026
3063
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3027
3064
  * @example
3028
3065
  *```js
@@ -3037,6 +3074,7 @@ export declare enum EmbedEvent {
3037
3074
  DownloadAsPdf = "downloadAsPdf",
3038
3075
  /**
3039
3076
  * Emitted when the Download as CSV action is triggered on an Answer.
3077
+ * Use start:true to subscribe to when download as CSV is initiated, or end:true to subscribe to when download as CSV is completed. Default is end:true.
3040
3078
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3041
3079
  * @example
3042
3080
  *```js
@@ -3051,6 +3089,7 @@ export declare enum EmbedEvent {
3051
3089
  DownloadAsCsv = "downloadAsCsv",
3052
3090
  /**
3053
3091
  * Emitted when the Download as XLSX action is triggered on an Answer.
3092
+ * Use start:true to subscribe to when download as XLSX is initiated, or end:true to subscribe to when download as XLSX is completed. Default is end:true.
3054
3093
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3055
3094
  * @example
3056
3095
  *```js
@@ -3065,6 +3104,7 @@ export declare enum EmbedEvent {
3065
3104
  DownloadAsXlsx = "downloadAsXlsx",
3066
3105
  /**
3067
3106
  * Emitted when an Answer is deleted in the app
3107
+ * Use start:true to subscribe to when delete is initiated, or end:true to subscribe to when delete is completed. Default is end:true.
3068
3108
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3069
3109
  * @example
3070
3110
  *```js
@@ -3091,6 +3131,7 @@ export declare enum EmbedEvent {
3091
3131
  /**
3092
3132
  * Emitted when a user initiates the Pin action to
3093
3133
  * add an Answer to a Liveboard.
3134
+ * Use start:true to subscribe to when pin is initiated, or end:true to subscribe to when pin is completed. Default is end:true.
3094
3135
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3095
3136
  * @example
3096
3137
  *```js
@@ -3204,6 +3245,7 @@ export declare enum EmbedEvent {
3204
3245
  /**
3205
3246
  * Emitted when the **Export TML** action is triggered on an
3206
3247
  * an embedded object in the app
3248
+ * Use start:true to subscribe to when export is initiated, or end:true to subscribe to when export is completed. Default is end:true.
3207
3249
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3208
3250
  * @example
3209
3251
  *```js
@@ -3229,6 +3271,7 @@ export declare enum EmbedEvent {
3229
3271
  SaveAsView = "saveAsView",
3230
3272
  /**
3231
3273
  * Emitted when the user creates a copy of an Answer.
3274
+ * Use start:true to subscribe to when copy and edit is initiated, or end:true to subscribe to when copy and edit is completed. Default is end:true.
3232
3275
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3233
3276
  * @example
3234
3277
  *```js
@@ -6695,6 +6738,109 @@ export declare enum LogLevel {
6695
6738
  */
6696
6739
  TRACE = "TRACE"
6697
6740
  }
6741
+ declare enum ErrorDetailsTypes {
6742
+ /** API call failure */
6743
+ API = "API",
6744
+ /** General validation error */
6745
+ VALIDATION_ERROR = "VALIDATION_ERROR",
6746
+ /** Network connectivity or request error */
6747
+ NETWORK = "NETWORK"
6748
+ }
6749
+ declare enum EmbedErrorCodes {
6750
+ /** Worksheet ID not found or does not exist */
6751
+ WORKSHEET_ID_NOT_FOUND = "WORKSHEET_ID_NOT_FOUND",
6752
+ /** Required Liveboard ID is missing from configuration */
6753
+ LIVEBOARD_ID_MISSING = "LIVEBOARD_ID_MISSING",
6754
+ /** Conflicting action configuration detected (e.g., both hiddenActions and visibleActions specified) */
6755
+ CONFLICTING_ACTIONS_CONFIG = "CONFLICTING_ACTIONS_CONFIG",
6756
+ /** Conflicting tab configuration detected (e.g., both hiddenTabs and visibleTabs specified) */
6757
+ CONFLICTING_TABS_CONFIG = "CONFLICTING_TABS_CONFIG",
6758
+ /** Error during component initialization */
6759
+ INIT_ERROR = "INIT_ERROR",
6760
+ /** Network connectivity or request error */
6761
+ NETWORK_ERROR = "NETWORK_ERROR",
6762
+ /** Custom action validation failed */
6763
+ CUSTOM_ACTION_VALIDATION = "CUSTOM_ACTION_VALIDATION",
6764
+ /** Authentication/login failed */
6765
+ LOGIN_FAILED = "LOGIN_FAILED",
6766
+ /** Render method was not called before attempting to use the component */
6767
+ RENDER_NOT_CALLED = "RENDER_NOT_CALLED",
6768
+ /** Host event type is undefined or invalid */
6769
+ HOST_EVENT_TYPE_UNDEFINED = "HOST_EVENT_TYPE_UNDEFINED",
6770
+ /** Error parsing api intercept body */
6771
+ PARSING_API_INTERCEPT_BODY_ERROR = "PARSING_API_INTERCEPT_BODY_ERROR"
6772
+ }
6773
+ /**
6774
+ * Error event object emitted when an error occurs in an embedded component.
6775
+ *
6776
+ * This interface defines the structure of error objects returned by the {@link EmbedEvent.Error}
6777
+ * event. It provides detailed information about what went wrong, including the error type,
6778
+ * a human-readable message, and a machine-readable error code.
6779
+ *
6780
+ * ## Properties
6781
+ *
6782
+ * - **errorType**: One of the predefined {@link ErrorDetailsTypes} values
6783
+ * - **message**: Human-readable error description (string or array of strings for multiple errors)
6784
+ * - **code**: Machine-readable error identifier for programmatic handling
6785
+ * - **[key: string]**: Additional context-specific for backward compatibility
6786
+ *
6787
+ * ## Usage
6788
+ *
6789
+ * Listen to the {@link EmbedEvent.Error} event to receive instances of this object
6790
+ * and implement appropriate error handling logic based on the `errorType`.
6791
+ *
6792
+ * @version SDK: 1.44.2 | ThoughtSpot: 26.2.0.cl
6793
+ * @group Error Handling
6794
+ * @see {@link ErrorDetailsTypes} - Available error type values
6795
+ * @see {@link EmbedEvent.Error} - The event that emits this object
6796
+ *
6797
+ * @example
6798
+ * Handle specific error types
6799
+ *
6800
+ * embed.on(EmbedEvent.Error, (error) => {
6801
+ * switch (error.code) {
6802
+ * case EmbedErrorCodes.WORKSHEET_ID_NOT_FOUND:
6803
+ * console.error('Worksheet ID not found:', error.message, error.code);
6804
+ * break;
6805
+ * default:
6806
+ * console.error('Unknown error:', error);
6807
+ * }
6808
+ * });
6809
+ * *
6810
+ * @example
6811
+ * Handle multiple error messages
6812
+ *
6813
+ * embed.on(EmbedEvent.Error, (error) => {
6814
+ * const messages = Array.isArray(error.message)
6815
+ * ? error.message
6816
+ * : [error.message];
6817
+ *
6818
+ * messages.forEach(msg => console.error(msg));
6819
+ * });
6820
+ * *
6821
+ * @example
6822
+ * Access additional error context
6823
+ *
6824
+ * embed.on(EmbedEvent.Error, (error) => {
6825
+ * console.error('Error Details:', {
6826
+ * type: error.errorType,
6827
+ * message: error.message,
6828
+ * code: error.code,
6829
+ * // Additional context fields vary by error type
6830
+ * ...error
6831
+ * });
6832
+ * });
6833
+ * */
6834
+ export interface EmbedErrorDetailsEvent {
6835
+ /** The type of error that occurred */
6836
+ errorType: ErrorDetailsTypes;
6837
+ /** Human-readable error message(s) describing what went wrong */
6838
+ message: string | string[];
6839
+ /** Machine-readable error code for programmatic error handling */
6840
+ code: EmbedErrorCodes;
6841
+ /** Additional context-specific for backward compatibility */
6842
+ [key: string]: any;
6843
+ }
6698
6844
  export interface DefaultAppInitData {
6699
6845
  customisations: CustomisationsInterface;
6700
6846
  authToken: string;
@@ -7044,8 +7190,9 @@ declare class TsEmbed {
7044
7190
  /**
7045
7191
  * Handles errors within the SDK
7046
7192
  * @param error The error message or object
7193
+ * @param errorDetails The error details
7047
7194
  */
7048
- protected handleError(error: string | Record<string, unknown>): void;
7195
+ protected handleError(errorDetails: EmbedErrorDetailsEvent): void;
7049
7196
  /**
7050
7197
  * Extracts the type field from the event payload
7051
7198
  * @param event The window message event
@@ -8567,6 +8714,23 @@ export interface AppViewConfig extends AllEmbedViewConfig {
8567
8714
  * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
8568
8715
  */
8569
8716
  updatedSpotterChatPrompt?: boolean;
8717
+ /**
8718
+ * This is the minimum height (in pixels) for a full-height App.
8719
+ * Setting this height helps resolve issues with empty Apps and
8720
+ * other screens navigable from an App.
8721
+ *
8722
+ * @version SDK: 1.44.2 | ThoughtSpot: 26.0.2.cl
8723
+ * @default 500
8724
+ * @example
8725
+ * ```js
8726
+ * const embed = new AppEmbed('#embed', {
8727
+ * ... // other app view config
8728
+ * fullHeight: true,
8729
+ * minimumHeight: 600,
8730
+ * });
8731
+ * ```
8732
+ */
8733
+ minimumHeight?: number;
8570
8734
  }
8571
8735
  declare class AppEmbed extends V1Embed {
8572
8736
  protected viewConfig: AppViewConfig;
@@ -8673,6 +8837,7 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
8673
8837
  * Supported embed types: `LiveboardEmbed`
8674
8838
  * @version SDK: 1.5.0 | ThoughtSpot: ts7.oct.cl, 7.2.1
8675
8839
  * @default 500
8840
+ * @deprecated Use `minimumHeight` instead.
8676
8841
  * @example
8677
8842
  * ```js
8678
8843
  * const embed = new LiveboardEmbed('#embed', {
@@ -8683,6 +8848,23 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
8683
8848
  * ```
8684
8849
  */
8685
8850
  defaultHeight?: number;
8851
+ /**
8852
+ * This is the minimum height (in pixels) for a full-height Liveboard.
8853
+ * Setting this height helps resolve issues with empty Liveboards and
8854
+ * other screens navigable from a Liveboard.
8855
+ *
8856
+ * @version SDK: 1.44.2 | ThoughtSpot: 26.0.2.cl
8857
+ * @default 500
8858
+ * @example
8859
+ * ```js
8860
+ * const embed = new LiveboardEmbed('#embed', {
8861
+ * ... // other liveboard view config
8862
+ * fullHeight: true,
8863
+ * minimumHeight: 600,
8864
+ * });
8865
+ * ```
8866
+ */
8867
+ minimumHeight?: number;
8686
8868
  /**
8687
8869
  * @Deprecated If set to true, the context menu in visualizations will be enabled.
8688
8870
  * @example