@thoughtspot/visual-embed-sdk 1.41.0-pre-render-1 → 1.41.1

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 (259) hide show
  1. package/README.md +2 -4
  2. package/cjs/package.json +3 -3
  3. package/cjs/src/authToken.d.ts +1 -0
  4. package/cjs/src/authToken.d.ts.map +1 -1
  5. package/cjs/src/authToken.js +13 -3
  6. package/cjs/src/authToken.js.map +1 -1
  7. package/cjs/src/authToken.spec.js +29 -0
  8. package/cjs/src/authToken.spec.js.map +1 -1
  9. package/cjs/src/css-variables.d.ts +2 -1
  10. package/cjs/src/css-variables.d.ts.map +1 -1
  11. package/cjs/src/embed/app.d.ts +22 -1
  12. package/cjs/src/embed/app.d.ts.map +1 -1
  13. package/cjs/src/embed/app.js +22 -1
  14. package/cjs/src/embed/app.js.map +1 -1
  15. package/cjs/src/embed/app.spec.js +70 -3
  16. package/cjs/src/embed/app.spec.js.map +1 -1
  17. package/cjs/src/embed/bodyless-conversation.d.ts +0 -1
  18. package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -1
  19. package/cjs/src/embed/bodyless-conversation.js +3 -7
  20. package/cjs/src/embed/bodyless-conversation.js.map +1 -1
  21. package/cjs/src/embed/conversation.d.ts +2 -3
  22. package/cjs/src/embed/conversation.d.ts.map +1 -1
  23. package/cjs/src/embed/conversation.js +2 -7
  24. package/cjs/src/embed/conversation.js.map +1 -1
  25. package/cjs/src/embed/liveboard.d.ts +32 -1
  26. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  27. package/cjs/src/embed/liveboard.js +8 -25
  28. package/cjs/src/embed/liveboard.js.map +1 -1
  29. package/cjs/src/embed/liveboard.spec.js +96 -28
  30. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  31. package/cjs/src/embed/sage.d.ts +0 -1
  32. package/cjs/src/embed/sage.d.ts.map +1 -1
  33. package/cjs/src/embed/sage.js +6 -10
  34. package/cjs/src/embed/sage.js.map +1 -1
  35. package/cjs/src/embed/sage.spec.js +20 -10
  36. package/cjs/src/embed/sage.spec.js.map +1 -1
  37. package/cjs/src/embed/search-bar.d.ts +0 -1
  38. package/cjs/src/embed/search-bar.d.ts.map +1 -1
  39. package/cjs/src/embed/search-bar.js +7 -11
  40. package/cjs/src/embed/search-bar.js.map +1 -1
  41. package/cjs/src/embed/search.d.ts +0 -1
  42. package/cjs/src/embed/search.d.ts.map +1 -1
  43. package/cjs/src/embed/search.js +8 -7
  44. package/cjs/src/embed/search.js.map +1 -1
  45. package/cjs/src/embed/search.spec.js +10 -10
  46. package/cjs/src/embed/search.spec.js.map +1 -1
  47. package/cjs/src/embed/ts-embed.d.ts +5 -7
  48. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  49. package/cjs/src/embed/ts-embed.js +25 -22
  50. package/cjs/src/embed/ts-embed.js.map +1 -1
  51. package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
  52. package/cjs/src/embed/ts-embed.spec.js +122 -0
  53. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  54. package/cjs/src/errors.d.ts +11 -0
  55. package/cjs/src/errors.d.ts.map +1 -1
  56. package/cjs/src/errors.js +12 -1
  57. package/cjs/src/errors.js.map +1 -1
  58. package/cjs/src/index.d.ts +2 -2
  59. package/cjs/src/index.d.ts.map +1 -1
  60. package/cjs/src/index.js +3 -1
  61. package/cjs/src/index.js.map +1 -1
  62. package/cjs/src/react/index.d.ts +1 -1
  63. package/cjs/src/react/index.d.ts.map +1 -1
  64. package/cjs/src/react/index.js +4 -2
  65. package/cjs/src/react/index.js.map +1 -1
  66. package/cjs/src/react/index.spec.js +1 -1
  67. package/cjs/src/react/index.spec.js.map +1 -1
  68. package/cjs/src/types.d.ts +163 -21
  69. package/cjs/src/types.d.ts.map +1 -1
  70. package/cjs/src/types.js +65 -22
  71. package/cjs/src/types.js.map +1 -1
  72. package/cjs/src/utils/custom-actions.d.ts +12 -0
  73. package/cjs/src/utils/custom-actions.d.ts.map +1 -0
  74. package/cjs/src/utils/custom-actions.js +180 -0
  75. package/cjs/src/utils/custom-actions.js.map +1 -0
  76. package/cjs/src/utils/custom-actions.spec.d.ts +2 -0
  77. package/cjs/src/utils/custom-actions.spec.d.ts.map +1 -0
  78. package/cjs/src/utils/custom-actions.spec.js +399 -0
  79. package/cjs/src/utils/custom-actions.spec.js.map +1 -0
  80. package/cjs/src/utils/processData.d.ts.map +1 -1
  81. package/cjs/src/utils/processData.js +10 -0
  82. package/cjs/src/utils/processData.js.map +1 -1
  83. package/cjs/src/utils/processData.spec.js +11 -0
  84. package/cjs/src/utils/processData.spec.js.map +1 -1
  85. package/cjs/src/utils.d.ts +21 -0
  86. package/cjs/src/utils.d.ts.map +1 -1
  87. package/cjs/src/utils.js +32 -1
  88. package/cjs/src/utils.js.map +1 -1
  89. package/cjs/src/utils.spec.js +38 -0
  90. package/cjs/src/utils.spec.js.map +1 -1
  91. package/dist/{index-CmEQfuE3.js → index-DQueHwfQ.js} +1 -1
  92. package/dist/src/authToken.d.ts +1 -0
  93. package/dist/src/authToken.d.ts.map +1 -1
  94. package/dist/src/css-variables.d.ts +2 -1
  95. package/dist/src/css-variables.d.ts.map +1 -1
  96. package/dist/src/embed/app.d.ts +22 -1
  97. package/dist/src/embed/app.d.ts.map +1 -1
  98. package/dist/src/embed/bodyless-conversation.d.ts +0 -1
  99. package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
  100. package/dist/src/embed/conversation.d.ts +2 -3
  101. package/dist/src/embed/conversation.d.ts.map +1 -1
  102. package/dist/src/embed/liveboard.d.ts +32 -1
  103. package/dist/src/embed/liveboard.d.ts.map +1 -1
  104. package/dist/src/embed/sage.d.ts +0 -1
  105. package/dist/src/embed/sage.d.ts.map +1 -1
  106. package/dist/src/embed/search-bar.d.ts +0 -1
  107. package/dist/src/embed/search-bar.d.ts.map +1 -1
  108. package/dist/src/embed/search.d.ts +0 -1
  109. package/dist/src/embed/search.d.ts.map +1 -1
  110. package/dist/src/embed/ts-embed.d.ts +5 -7
  111. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  112. package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
  113. package/dist/src/errors.d.ts +11 -0
  114. package/dist/src/errors.d.ts.map +1 -1
  115. package/dist/src/index.d.ts +2 -2
  116. package/dist/src/index.d.ts.map +1 -1
  117. package/dist/src/react/index.d.ts +1 -1
  118. package/dist/src/react/index.d.ts.map +1 -1
  119. package/dist/src/types.d.ts +163 -21
  120. package/dist/src/types.d.ts.map +1 -1
  121. package/dist/src/utils/custom-actions.d.ts +12 -0
  122. package/dist/src/utils/custom-actions.d.ts.map +1 -0
  123. package/dist/src/utils/custom-actions.spec.d.ts +2 -0
  124. package/dist/src/utils/custom-actions.spec.d.ts.map +1 -0
  125. package/dist/src/utils/processData.d.ts.map +1 -1
  126. package/dist/src/utils.d.ts +21 -0
  127. package/dist/src/utils.d.ts.map +1 -1
  128. package/dist/tsembed-react.es.js +1773 -251
  129. package/dist/tsembed-react.js +1772 -250
  130. package/dist/tsembed.es.js +1771 -250
  131. package/dist/tsembed.js +1770 -249
  132. package/dist/visual-embed-sdk-react-full.d.ts +228 -39
  133. package/dist/visual-embed-sdk-react.d.ts +228 -39
  134. package/dist/visual-embed-sdk.d.ts +228 -39
  135. package/lib/package.json +3 -3
  136. package/lib/src/authToken.d.ts +1 -0
  137. package/lib/src/authToken.d.ts.map +1 -1
  138. package/lib/src/authToken.js +11 -2
  139. package/lib/src/authToken.js.map +1 -1
  140. package/lib/src/authToken.spec.js +30 -1
  141. package/lib/src/authToken.spec.js.map +1 -1
  142. package/lib/src/css-variables.d.ts +2 -1
  143. package/lib/src/css-variables.d.ts.map +1 -1
  144. package/lib/src/embed/app.d.ts +22 -1
  145. package/lib/src/embed/app.d.ts.map +1 -1
  146. package/lib/src/embed/app.js +22 -1
  147. package/lib/src/embed/app.js.map +1 -1
  148. package/lib/src/embed/app.spec.js +70 -3
  149. package/lib/src/embed/app.spec.js.map +1 -1
  150. package/lib/src/embed/bodyless-conversation.d.ts +0 -1
  151. package/lib/src/embed/bodyless-conversation.d.ts.map +1 -1
  152. package/lib/src/embed/bodyless-conversation.js +3 -7
  153. package/lib/src/embed/bodyless-conversation.js.map +1 -1
  154. package/lib/src/embed/conversation.d.ts +2 -3
  155. package/lib/src/embed/conversation.d.ts.map +1 -1
  156. package/lib/src/embed/conversation.js +2 -7
  157. package/lib/src/embed/conversation.js.map +1 -1
  158. package/lib/src/embed/liveboard.d.ts +32 -1
  159. package/lib/src/embed/liveboard.d.ts.map +1 -1
  160. package/lib/src/embed/liveboard.js +8 -25
  161. package/lib/src/embed/liveboard.js.map +1 -1
  162. package/lib/src/embed/liveboard.spec.js +96 -28
  163. package/lib/src/embed/liveboard.spec.js.map +1 -1
  164. package/lib/src/embed/sage.d.ts +0 -1
  165. package/lib/src/embed/sage.d.ts.map +1 -1
  166. package/lib/src/embed/sage.js +6 -10
  167. package/lib/src/embed/sage.js.map +1 -1
  168. package/lib/src/embed/sage.spec.js +20 -10
  169. package/lib/src/embed/sage.spec.js.map +1 -1
  170. package/lib/src/embed/search-bar.d.ts +0 -1
  171. package/lib/src/embed/search-bar.d.ts.map +1 -1
  172. package/lib/src/embed/search-bar.js +7 -11
  173. package/lib/src/embed/search-bar.js.map +1 -1
  174. package/lib/src/embed/search.d.ts +0 -1
  175. package/lib/src/embed/search.d.ts.map +1 -1
  176. package/lib/src/embed/search.js +8 -7
  177. package/lib/src/embed/search.js.map +1 -1
  178. package/lib/src/embed/search.spec.js +11 -11
  179. package/lib/src/embed/search.spec.js.map +1 -1
  180. package/lib/src/embed/ts-embed.d.ts +5 -7
  181. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  182. package/lib/src/embed/ts-embed.js +25 -22
  183. package/lib/src/embed/ts-embed.js.map +1 -1
  184. package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
  185. package/lib/src/embed/ts-embed.spec.js +123 -1
  186. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  187. package/lib/src/errors.d.ts +11 -0
  188. package/lib/src/errors.d.ts.map +1 -1
  189. package/lib/src/errors.js +11 -0
  190. package/lib/src/errors.js.map +1 -1
  191. package/lib/src/index.d.ts +2 -2
  192. package/lib/src/index.d.ts.map +1 -1
  193. package/lib/src/index.js +2 -2
  194. package/lib/src/index.js.map +1 -1
  195. package/lib/src/react/index.d.ts +1 -1
  196. package/lib/src/react/index.d.ts.map +1 -1
  197. package/lib/src/react/index.js +3 -2
  198. package/lib/src/react/index.js.map +1 -1
  199. package/lib/src/react/index.spec.js +1 -1
  200. package/lib/src/react/index.spec.js.map +1 -1
  201. package/lib/src/types.d.ts +163 -21
  202. package/lib/src/types.d.ts.map +1 -1
  203. package/lib/src/types.js +64 -21
  204. package/lib/src/types.js.map +1 -1
  205. package/lib/src/utils/custom-actions.d.ts +12 -0
  206. package/lib/src/utils/custom-actions.d.ts.map +1 -0
  207. package/lib/src/utils/custom-actions.js +175 -0
  208. package/lib/src/utils/custom-actions.js.map +1 -0
  209. package/lib/src/utils/custom-actions.spec.d.ts +2 -0
  210. package/lib/src/utils/custom-actions.spec.d.ts.map +1 -0
  211. package/lib/src/utils/custom-actions.spec.js +397 -0
  212. package/lib/src/utils/custom-actions.spec.js.map +1 -0
  213. package/lib/src/utils/processData.d.ts.map +1 -1
  214. package/lib/src/utils/processData.js +10 -0
  215. package/lib/src/utils/processData.js.map +1 -1
  216. package/lib/src/utils/processData.spec.js +11 -0
  217. package/lib/src/utils/processData.spec.js.map +1 -1
  218. package/lib/src/utils.d.ts +21 -0
  219. package/lib/src/utils.d.ts.map +1 -1
  220. package/lib/src/utils.js +29 -0
  221. package/lib/src/utils.js.map +1 -1
  222. package/lib/src/utils.spec.js +39 -1
  223. package/lib/src/utils.spec.js.map +1 -1
  224. package/lib/src/visual-embed-sdk.d.ts +229 -40
  225. package/package.json +3 -3
  226. package/src/authToken.spec.ts +48 -1
  227. package/src/authToken.ts +13 -2
  228. package/src/css-variables.ts +2 -1
  229. package/src/embed/app.spec.ts +99 -3
  230. package/src/embed/app.ts +44 -1
  231. package/src/embed/bodyless-conversation.ts +3 -8
  232. package/src/embed/conversation.ts +4 -19
  233. package/src/embed/liveboard.spec.ts +128 -30
  234. package/src/embed/liveboard.ts +66 -52
  235. package/src/embed/sage.spec.ts +24 -10
  236. package/src/embed/sage.ts +7 -12
  237. package/src/embed/search-bar.tsx +7 -14
  238. package/src/embed/search.spec.ts +13 -14
  239. package/src/embed/search.ts +8 -19
  240. package/src/embed/ts-embed.spec.ts +136 -2
  241. package/src/embed/ts-embed.ts +31 -28
  242. package/src/errors.ts +12 -0
  243. package/src/index.ts +4 -0
  244. package/src/react/index.spec.tsx +1 -1
  245. package/src/react/index.tsx +5 -2
  246. package/src/types.ts +225 -79
  247. package/src/utils/custom-actions.spec.ts +431 -0
  248. package/src/utils/custom-actions.ts +217 -0
  249. package/src/utils/processData.spec.ts +12 -0
  250. package/src/utils/processData.ts +10 -0
  251. package/src/utils.spec.ts +52 -0
  252. package/src/utils.ts +31 -0
  253. package/dist/index-BDlM0f0T.js +0 -7371
  254. package/dist/index-D1pyb7RG.js +0 -7371
  255. package/dist/index-DeFzsyFF.js +0 -7371
  256. package/dist/index-Dpf0rd6w.js +0 -7371
  257. package/dist/index-UuEbsISo.js +0 -7447
  258. package/dist/index-e3Uw3YFO.js +0 -7371
  259. package/dist/index-k7pkZMhx.js +0 -7371
package/src/types.ts CHANGED
@@ -14,7 +14,7 @@ import type { SessionInterface } from './utils/graphql/answerService/answerServi
14
14
  * the embedded app
15
15
  * @group Authentication / Init
16
16
  */
17
- // eslint-disable-next-line no-shadow
17
+
18
18
  export enum AuthType {
19
19
  /**
20
20
  * No authentication on the SDK. Pass-through to the embedded App. Alias for
@@ -231,12 +231,12 @@ export type DOMSelector = string | HTMLElement;
231
231
  * Use {@link CustomCssVariables} or css rules.
232
232
  */
233
233
  export interface customCssInterface {
234
- /**
235
- * The custom css variables, which can be set.
236
- * The variables are available in the {@link CustomCssVariables}
237
- * interface. For more information, see
238
- * link:https://developers.thoughtspot.com/docs/css-variables-reference[CSS variable reference].
239
- */
234
+ /**
235
+ * The custom css variables, which can be set.
236
+ * The variables are available in the {@link CustomCssVariables}
237
+ * interface. For more information, see
238
+ * link:https://developers.thoughtspot.com/docs/css-variables-reference[CSS variable reference].
239
+ */
240
240
  variables?: CustomCssVariables;
241
241
  /**
242
242
  * Can be used to define a custom font face
@@ -262,7 +262,7 @@ export interface customCssInterface {
262
262
  * };
263
263
  * ```
264
264
  */
265
- // eslint-disable-next-line camelcase
265
+
266
266
  rules_UNSTABLE?: {
267
267
  [selector: string]: {
268
268
  [declaration: string]: string;
@@ -648,7 +648,7 @@ export interface EmbedConfig {
648
648
  * ```
649
649
  * @version SDK 1.37.0 | ThoughtSpot: 10.8.0.cl
650
650
  */
651
- customVariablesForThirdPartyTools?: Record<string, any>;
651
+ customVariablesForThirdPartyTools?: Record< string, any >;
652
652
 
653
653
  disablePreauthCache?: boolean;
654
654
 
@@ -666,10 +666,36 @@ export interface EmbedConfig {
666
666
  * ```
667
667
  */
668
668
  disableFullscreenPresentation?: boolean;
669
+
670
+ /**
671
+ * Custom Actions allows users to define interactive UI actions (like buttons or menu
672
+ * items) that appear in ThoughtSpot's visualizations, answers, and Liveboards. These
673
+ * actions enable users to trigger custom workflows — such as navigating to an
674
+ * external app, calling an API, or opening a modal — based on the data context of
675
+ * what they clicked can be used to trigger custom logic when the action is clicked.
676
+ * @version SDK: 1.43.0 | ThoughtSpot: 10.14.0.cl
677
+ * @example
678
+ * ```js
679
+ * import { CustomActionPosition, CustomActionTarget } from '@thoughtspot/visual-embed-sdk';
680
+ * init({
681
+ * ... // other embed config options
682
+ * customActions: [
683
+ * {
684
+ * name: 'customAction',
685
+ * id: 'customAction',
686
+ * target: CustomActionTarget.VISUALIZATION,
687
+ * position: CustomActionPosition.PRIMARY,
688
+ * }
689
+ * }
690
+ * ]
691
+ * })
692
+ * ```
693
+ */
694
+ customActions?: CustomAction[];
669
695
  }
670
696
 
671
697
  // eslint-disable-next-line @typescript-eslint/no-empty-object-type
672
- export interface LayoutConfig { }
698
+ export interface LayoutConfig {}
673
699
 
674
700
  /**
675
701
  * Embedded iframe configuration
@@ -731,7 +757,7 @@ export interface BaseViewConfig {
731
757
  /**
732
758
  * @hidden
733
759
  */
734
- // eslint-disable-next-line camelcase
760
+
735
761
  styleSheet__unstable?: string;
736
762
  /**
737
763
  * The list of actions to disable from the primary menu, more menu
@@ -931,7 +957,7 @@ export interface BaseViewConfig {
931
957
  * ```
932
958
  * @version SDK: 1.31.2 | ThoughtSpot: 10.0.0.cl
933
959
  */
934
- // eslint-disable-next-line camelcase
960
+
935
961
  enableV2Shell_experimental?: boolean;
936
962
  /**
937
963
  * For internal tracking of the embed component type.
@@ -1030,6 +1056,34 @@ export interface BaseViewConfig {
1030
1056
  * ```
1031
1057
  */
1032
1058
  showAlerts?: boolean;
1059
+ /**
1060
+ * Custom Actions allows users to define interactive UI actions (like buttons or menu
1061
+ * items) that appear in ThoughtSpot's visualizations, answers, and Liveboards. These
1062
+ * actions enable users to trigger custom workflows — such as navigating to an
1063
+ * external app, calling an API, or opening a modal — based on the data context of
1064
+ * what they clicked can be used to trigger custom logic when the action is clicked.
1065
+ *
1066
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterEmbed`
1067
+ * @version SDK: 1.43.0 | ThoughtSpot: 10.14.0.cl
1068
+ * @example
1069
+ * ```js
1070
+ * import { CustomActionPosition, CustomActionTarget } from '@thoughtspot/visual-embed-sdk';
1071
+ * // Use supported embed types such as AppEmbed or LiveboardEmbed
1072
+ * const embed = new LiveboardEmbed('#tsEmbed', {
1073
+ * ... // other embed config options
1074
+ * customActions: [
1075
+ * {
1076
+ * name: 'customAction',
1077
+ * id: 'customAction',
1078
+ * target: CustomActionTarget.VISUALIZATION,
1079
+ * position: CustomActionPosition.PRIMARY,
1080
+ * }
1081
+ * }
1082
+ * ]
1083
+ * })
1084
+ * ```
1085
+ */
1086
+ customActions?: CustomAction[];
1033
1087
  }
1034
1088
 
1035
1089
  /**
@@ -1040,7 +1094,8 @@ export interface HomePageConfig {
1040
1094
  * Hide list page columns
1041
1095
  * For example: hiddenListColumns = [ListPageColumns.Author]
1042
1096
  *
1043
- * **Note**: This option is available only in full app embedding. To use it, you need to import `ListPageColumns` enum.
1097
+ * **Note**: This option is currently available only in full app embedding and requires importing the ListPageColumns enum.
1098
+ * At present, it can be used with Liveboard and Answer list pages, and starting with version 10.14.0.cl, it will also be supported for the Home page.
1044
1099
  *
1045
1100
  * Supported embed types: `AppEmbed`
1046
1101
  * @version SDK: 1.38.0 | ThoughtSpot: 10.9.0.cl
@@ -1226,8 +1281,8 @@ export interface SearchLiveboardCommonViewConfig {
1226
1281
  * Flag to control Data panel experience
1227
1282
  *
1228
1283
  * Supported embed types: `SageEmbed`, `AppEmbed`, `SearchBarEmbed`, `LiveboardEmbed`, `SearchEmbed`
1229
- * @default false
1230
- * @version SDK: 1.34.0 | ThoughtSpot Cloud: 10.3.0.cl
1284
+ * @default true
1285
+ * @version SDK: 1.43.0 | ThoughtSpot Cloud: 10.14.0.cl
1231
1286
  * @example
1232
1287
  * ```js
1233
1288
  * // Replace <EmbedComponent> with embed component name. For example, SageEmbed, AppEmbed, or SearchBarEmbed
@@ -1358,7 +1413,8 @@ export interface LiveboardAppEmbedViewConfig {
1358
1413
  */
1359
1414
  isLiveboardCompactHeaderEnabled?: boolean;
1360
1415
  /**
1361
- * This flag can be used to show or hide the Liveboard verified icon in the compact header.
1416
+ * This flag can be used to show or hide the Liveboard verified icon in the compact
1417
+ * header.
1362
1418
  *
1363
1419
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1364
1420
  * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
@@ -1375,6 +1431,8 @@ export interface LiveboardAppEmbedViewConfig {
1375
1431
  showLiveboardVerifiedBadge?: boolean;
1376
1432
  /**
1377
1433
  * This flag is used to enable/disable hide irrelevant filters in Liveboard tab
1434
+ *
1435
+ * **Note**: This feature is supported only if compact header is enabled on your Liveboard. To enable compact header, use the `isLiveboardCompactHeaderEnabled` attribute.
1378
1436
  *
1379
1437
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1380
1438
  * @version SDK: 1.36.0 | ThoughtSpot:10.6.0.cl
@@ -1385,12 +1443,14 @@ export interface LiveboardAppEmbedViewConfig {
1385
1443
  * const embed = new <EmbedComponent>('#tsEmbed', {
1386
1444
  * ... // other embed view config
1387
1445
  * hideIrrelevantChipsInLiveboardTabs: true,
1446
+ * isLiveboardCompactHeaderEnabled: true,
1388
1447
  * })
1389
1448
  * ```
1390
1449
  */
1391
1450
  hideIrrelevantChipsInLiveboardTabs?: boolean;
1392
1451
  /**
1393
- * This flag can be used to show or hide the re-verify banner on the Liveboard compact header
1452
+ * This flag can be used to show or hide the re-verify banner on the Liveboard
1453
+ * compact header
1394
1454
  *
1395
1455
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1396
1456
  * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
@@ -1421,25 +1481,41 @@ export interface LiveboardAppEmbedViewConfig {
1421
1481
  * ```
1422
1482
  */
1423
1483
  enableAskSage?: boolean;
1424
- /**
1425
- * This flag is used to show or hide checkboxes for including or excluding
1426
- * the cover and filters pages in the Liveboard PDF.
1427
- *
1428
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1429
- * @version SDK: 1.40.0 | ThoughtSpot:10.8.0.cl
1430
- * @example
1431
- * ```js
1432
- * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
1433
- * const embed = new <EmbedComponent>('#tsEmbed', {
1434
- * ... // other embed view config
1435
- * coverAndFilterOptionInPDF: false,
1436
- * })
1437
- * ```
1438
- */
1484
+ /**
1485
+ * This flag is used to show or hide checkboxes for including or excluding
1486
+ * the cover and filters pages in the Liveboard PDF.
1487
+ *
1488
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1489
+ * @version SDK: 1.40.0 | ThoughtSpot:10.8.0.cl
1490
+ * @example
1491
+ * ```js
1492
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
1493
+ * const embed = new <EmbedComponent>('#tsEmbed', {
1494
+ * ... // other embed view config
1495
+ * coverAndFilterOptionInPDF: false,
1496
+ * })
1497
+ * ```
1498
+ */
1439
1499
  coverAndFilterOptionInPDF?: boolean;
1500
+ /**
1501
+ * This flag is used to enable or disable the XLSX/CSV download option for Liveboards.
1502
+ *
1503
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
1504
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.14.0.cl
1505
+ * @example
1506
+ * ```js
1507
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
1508
+ * const embed = new <EmbedComponent>('#tsEmbed', {
1509
+ * ... // other embed view config
1510
+ * liveboardXLSXCSVDownload: true,
1511
+ * })
1512
+ * ```
1513
+ */
1514
+ liveboardXLSXCSVDownload?: boolean;
1515
+
1440
1516
  }
1441
1517
 
1442
- export interface AllEmbedViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, HomePageConfig, LiveboardAppEmbedViewConfig { }
1518
+ export interface AllEmbedViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, HomePageConfig, LiveboardAppEmbedViewConfig {}
1443
1519
 
1444
1520
  /**
1445
1521
  * MessagePayload: Embed event payload: message type, data and status (start/end)
@@ -1500,7 +1576,7 @@ export type QueryParams = {
1500
1576
  /**
1501
1577
  * A map of the supported runtime filter operations
1502
1578
  */
1503
- // eslint-disable-next-line no-shadow
1579
+
1504
1580
  export enum RuntimeFilterOp {
1505
1581
  /**
1506
1582
  * Equals
@@ -1571,7 +1647,7 @@ export enum RuntimeFilterOp {
1571
1647
  * `modularHomeExperience` to `true` (available as Early Access feature in 9.12.5.cl).
1572
1648
  * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
1573
1649
  */
1574
- // eslint-disable-next-line no-shadow
1650
+
1575
1651
  export enum HomepageModule {
1576
1652
  /**
1577
1653
  * Search bar
@@ -1604,7 +1680,7 @@ export enum HomepageModule {
1604
1680
  * **Note**: This option is applicable to full app embedding only.
1605
1681
  * @version SDK: 1.38.0 | ThoughtSpot: 10.9.0.cl
1606
1682
  */
1607
- // eslint-disable-next-line no-shadow
1683
+
1608
1684
  export enum ListPageColumns {
1609
1685
  /**
1610
1686
  * Favourite
@@ -1702,7 +1778,7 @@ export interface RuntimeParameter {
1702
1778
  * ```
1703
1779
  * @group Events
1704
1780
  */
1705
- // eslint-disable-next-line no-shadow
1781
+
1706
1782
  export enum EmbedEvent {
1707
1783
  /**
1708
1784
  * Rendering has initialized.
@@ -2345,6 +2421,11 @@ export enum EmbedEvent {
2345
2421
  * @hidden
2346
2422
  */
2347
2423
  APP_INIT = 'appInit',
2424
+ /**
2425
+ * Internal event to clear the cached info
2426
+ * @hidden
2427
+ */
2428
+ CLEAR_INFO_CACHE = 'clearInfoCache',
2348
2429
  /**
2349
2430
  * Emitted when a user clicks **Show Liveboard details** on a Liveboard
2350
2431
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
@@ -2693,25 +2774,25 @@ export enum EmbedEvent {
2693
2774
  * ```
2694
2775
  * @version SDK: 1.37.0 | ThoughtSpot: 10.8.0.cl
2695
2776
  */
2696
- TableVizRendered = 'TableVizRendered',
2697
- /**
2698
- * Emitted when the liveboard is created from pin modal or Liveboard list page.
2699
- * You can use this event as a hook to trigger
2700
- * other events on liveboard creation.
2701
- *
2702
- * ```js
2703
- * liveboardEmbed.on(EmbedEvent.CreateLiveboard, (payload) => {
2704
- * console.log('payload', payload);
2705
- * })
2706
- *```
2707
- * @version SDK : 1.37.0 | ThoughtSpot: 10.8.0.cl
2708
- */
2777
+ TableVizRendered = 'TableVizRendered',
2778
+ /**
2779
+ * Emitted when the liveboard is created from pin modal or Liveboard list page.
2780
+ * You can use this event as a hook to trigger
2781
+ * other events on liveboard creation.
2782
+ *
2783
+ * ```js
2784
+ * liveboardEmbed.on(EmbedEvent.CreateLiveboard, (payload) => {
2785
+ * console.log('payload', payload);
2786
+ * })
2787
+ *```
2788
+ * @version SDK : 1.37.0 | ThoughtSpot: 10.8.0.cl
2789
+ */
2709
2790
  CreateLiveboard = 'createLiveboard',
2710
2791
  /**
2711
2792
  * Emitted when a user creates a Model.
2712
2793
  * @version SDK : 1.37.0 | ThoughtSpot: 10.8.0.cl
2713
2794
  */
2714
- CreateModel = 'createModel',
2795
+ CreateModel = 'createModel',
2715
2796
  /**
2716
2797
  * @hidden
2717
2798
  * Emitted when a user exits present mode.
@@ -2813,6 +2894,17 @@ export enum EmbedEvent {
2813
2894
  * ```
2814
2895
  */
2815
2896
  EmbedListenerReady = 'EmbedListenerReady',
2897
+ /**
2898
+ * Emitted when the organization is switched.
2899
+ * @example
2900
+ * ```js
2901
+ * appEmbed.on(EmbedEvent.OrgSwitched, (payload) => {
2902
+ * console.log('payload', payload);
2903
+ * })
2904
+ * ```
2905
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
2906
+ */
2907
+ OrgSwitched = 'orgSwitched',
2816
2908
  }
2817
2909
 
2818
2910
  /**
@@ -2868,7 +2960,7 @@ export enum EmbedEvent {
2868
2960
  * ```
2869
2961
  * @group Events
2870
2962
  */
2871
- // eslint-disable-next-line no-shadow
2963
+
2872
2964
  export enum HostEvent {
2873
2965
  /**
2874
2966
  * Triggers a search operation with the search tokens specified in
@@ -3731,7 +3823,7 @@ export enum HostEvent {
3731
3823
  * column: "Date",
3732
3824
  * oper: 'EQ',
3733
3825
  * values: ["2023-07-31"],
3734
- * types: "EXACT_DATE"
3826
+ * type: "EXACT_DATE"
3735
3827
  * }]
3736
3828
  * });
3737
3829
  * ```
@@ -3923,7 +4015,7 @@ export enum HostEvent {
3923
4015
  *```
3924
4016
  * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
3925
4017
  */
3926
- InfoSuccess = 'InfoSuccess',
4018
+ InfoSuccess = 'InfoSuccess',
3927
4019
  /**
3928
4020
  * Trigger the save action for an Answer.
3929
4021
  * To programmatically save an answer without opening the
@@ -4077,24 +4169,13 @@ export enum HostEvent {
4077
4169
  * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
4078
4170
  */
4079
4171
  AskSpotter = 'AskSpotter',
4080
-
4081
- /**
4082
- * @hidden
4083
- * Triggers the update of the embed params.
4084
- *
4085
- * @example
4086
- * ```js
4087
- * liveboardEmbed.trigger(HostEvent.UpdateEmbedParams, viewConfig);
4088
- * ```
4089
- */
4090
- UpdateEmbedParams = 'updateEmbedParams',
4091
4172
  }
4092
4173
 
4093
4174
  /**
4094
4175
  * The different visual modes that the data sources panel within
4095
4176
  * search could appear in, such as hidden, collapsed, or expanded.
4096
4177
  */
4097
- // eslint-disable-next-line no-shadow
4178
+
4098
4179
  export enum DataSourceVisualMode {
4099
4180
  /**
4100
4181
  * The data source panel is hidden.
@@ -4114,7 +4195,7 @@ export enum DataSourceVisualMode {
4114
4195
  * The query params passed down to the embedded ThoughtSpot app
4115
4196
  * containing configuration and/or visual information.
4116
4197
  */
4117
- // eslint-disable-next-line no-shadow
4198
+
4118
4199
  export enum Param {
4119
4200
  EmbedApp = 'embedApp',
4120
4201
  DataSources = 'dataSources',
@@ -4193,6 +4274,7 @@ export enum Param {
4193
4274
  Query = 'query',
4194
4275
  HideHomepageLeftNav = 'hideHomepageLeftNav',
4195
4276
  ModularHomeExperienceEnabled = 'modularHomeExperience',
4277
+ HomepageVersion = 'homepageVersion',
4196
4278
  ListPageVersion = 'listpageVersion',
4197
4279
  PendoTrackingKey = 'additionalPendoKey',
4198
4280
  LiveboardHeaderSticky = 'isLiveboardHeaderSticky',
@@ -4233,7 +4315,9 @@ export enum Param {
4233
4315
  isSpotterAgentEmbed = 'isSpotterAgentEmbed',
4234
4316
  IsLiveboardStylingAndGroupingEnabled = 'isLiveboardStylingAndGroupingEnabled',
4235
4317
  IsLazyLoadingForEmbedEnabled = 'isLazyLoadingForEmbedEnabled',
4236
- RootMarginForLazyLoad = 'rootMarginForLazyLoad'
4318
+ RootMarginForLazyLoad = 'rootMarginForLazyLoad',
4319
+ LiveboardXLSXCSVDownload = 'isLiveboardXLSXCSVDownloadEnabled',
4320
+ isPNGInScheduledEmailsEnabled = 'isPNGInScheduledEmailsEnabled',
4237
4321
  }
4238
4322
 
4239
4323
  /**
@@ -4263,7 +4347,7 @@ export enum Param {
4263
4347
  * ```
4264
4348
  * See also link:https://developers.thoughtspot.com/docs/actions[Action IDs in the SDK]
4265
4349
  */
4266
- // eslint-disable-next-line no-shadow
4350
+
4267
4351
  export enum Action {
4268
4352
  /**
4269
4353
  * The **Save** action on an Answer or Liveboard.
@@ -4808,7 +4892,7 @@ export enum Action {
4808
4892
  * The Favorites icon (*) for Answers,
4809
4893
  * Liveboard, and data objects like Worksheet, Model,
4810
4894
  * Tables and Views.
4811
- * Allows adding an object to the users favorites list.
4895
+ * Allows adding an object to the user's favorites list.
4812
4896
  * @example
4813
4897
  * ```js
4814
4898
  * disabledActions: [Action.AddToFavorites]
@@ -5533,6 +5617,29 @@ export enum Action {
5533
5617
  * @version SDK: 1.41.0 | ThoughtSpot Cloud: 10.13.0.cl
5534
5618
  */
5535
5619
  SpotterTokenQuickEdit = 'SpotterTokenQuickEdit',
5620
+ /**
5621
+ * The **PNG screenshot in email** option in the schedule email dialog.
5622
+ * Includes a PNG screenshot in the notification email body.
5623
+ * @example
5624
+ * ```js
5625
+ * disabledActions: [Action.PngScreenshotInEmail]
5626
+ * ```
5627
+ * ```
5628
+ * @version SDK: 1.42.0 | ThoughtSpot Cloud: 10.14.0.cl
5629
+ */
5630
+ PngScreenshotInEmail = 'pngScreenshotInEmail',
5631
+ /**
5632
+ * The **Remove attachment** action in the schedule email dialog.
5633
+ * Removes an attachment from the email configuration.
5634
+ * @example
5635
+ * ```js
5636
+ * disabledActions: [Action.RemoveAttachment]
5637
+ * ```
5638
+ * ```
5639
+ * ```
5640
+ * @version SDK: 1.42.0 | ThoughtSpot Cloud: 10.14.0.cl
5641
+ */
5642
+ RemoveAttachment = 'removeAttachment',
5536
5643
  }
5537
5644
 
5538
5645
  export interface AnswerServiceType {
@@ -5564,15 +5671,15 @@ export interface ColumnValue {
5564
5671
  [key: string]: any;
5565
5672
  };
5566
5673
  value:
5567
- | string
5568
- | number
5569
- | boolean
5570
- | {
5571
- v: {
5572
- s: number;
5573
- e: number;
5574
- };
5575
- };
5674
+ | string
5675
+ | number
5676
+ | boolean
5677
+ | {
5678
+ v: {
5679
+ s: number;
5680
+ e: number;
5681
+ };
5682
+ };
5576
5683
  }
5577
5684
 
5578
5685
  export interface VizPoint {
@@ -5604,6 +5711,44 @@ export interface CustomActionPayload {
5604
5711
  vizId?: string;
5605
5712
  }
5606
5713
 
5714
+ export interface CustomAction {
5715
+ name: string;
5716
+ id: string;
5717
+ position: CustomActionsPosition;
5718
+ target: CustomActionTarget;
5719
+ metadataIds?: {
5720
+ answerIds?: string[];
5721
+ liveboardIds?: string[];
5722
+ vizIds?: string[];
5723
+ };
5724
+ dataModelIds?: {
5725
+ modelIds?: string[];
5726
+ modelColumnNames?: string[];
5727
+ }
5728
+ orgIds?: string[];
5729
+ groupIds?: string[];
5730
+ }
5731
+
5732
+ /**
5733
+ * Enum options to show custom actions at different
5734
+ * positions in the application.
5735
+ */
5736
+ export enum CustomActionsPosition {
5737
+ PRIMARY = 'PRIMARY',
5738
+ MENU = 'MENU',
5739
+ CONTEXTMENU = 'CONTEXTMENU',
5740
+ }
5741
+
5742
+ /**
5743
+ * Enum options to mention the target of the custom action.
5744
+ */
5745
+ export enum CustomActionTarget {
5746
+ LIVEBOARD = 'LIVEBOARD',
5747
+ VIZ = 'VIZ',
5748
+ ANSWER = 'ANSWER',
5749
+ SPOTTER = 'SPOTTER',
5750
+ }
5751
+
5607
5752
  /**
5608
5753
  * Enum options to show or suppress Visual Embed SDK and
5609
5754
  * ThoughtSpot application logs in the console output.
@@ -5701,4 +5846,5 @@ export interface DefaultAppInitData {
5701
5846
  hiddenHomeLeftNavItems: string[];
5702
5847
  customVariablesForThirdPartyTools: Record<string, any>;
5703
5848
  hiddenListColumns: ListPageColumns[];
5849
+ customActions: CustomAction[];
5704
5850
  }