@thoughtspot/visual-embed-sdk 1.46.5-beta.1 → 1.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/cjs/package.json +4 -4
  2. package/cjs/src/css-variables.d.ts +36 -0
  3. package/cjs/src/css-variables.d.ts.map +1 -1
  4. package/cjs/src/embed/app.d.ts +41 -17
  5. package/cjs/src/embed/app.d.ts.map +1 -1
  6. package/cjs/src/embed/app.js +26 -47
  7. package/cjs/src/embed/app.js.map +1 -1
  8. package/cjs/src/embed/app.spec.js +36 -79
  9. package/cjs/src/embed/app.spec.js.map +1 -1
  10. package/cjs/src/embed/conversation.d.ts +24 -2
  11. package/cjs/src/embed/conversation.d.ts.map +1 -1
  12. package/cjs/src/embed/conversation.js +18 -33
  13. package/cjs/src/embed/conversation.js.map +1 -1
  14. package/cjs/src/embed/conversation.spec.js +129 -97
  15. package/cjs/src/embed/conversation.spec.js.map +1 -1
  16. package/cjs/src/embed/hostEventClient/contracts.d.ts +31 -0
  17. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  18. package/cjs/src/embed/hostEventClient/contracts.js +2 -0
  19. package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
  20. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +18 -0
  21. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  22. package/cjs/src/embed/hostEventClient/host-event-client.js +69 -9
  23. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  24. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +185 -19
  25. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  26. package/cjs/src/embed/hostEventClient/utils.d.ts +22 -0
  27. package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -0
  28. package/cjs/src/embed/hostEventClient/utils.js +57 -0
  29. package/cjs/src/embed/hostEventClient/utils.js.map +1 -0
  30. package/cjs/src/embed/hostEventClient/utils.spec.d.ts +2 -0
  31. package/cjs/src/embed/hostEventClient/utils.spec.d.ts.map +1 -0
  32. package/cjs/src/embed/hostEventClient/utils.spec.js +190 -0
  33. package/cjs/src/embed/hostEventClient/utils.spec.js.map +1 -0
  34. package/cjs/src/embed/liveboard.d.ts +18 -1
  35. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  36. package/cjs/src/embed/liveboard.js +9 -11
  37. package/cjs/src/embed/liveboard.js.map +1 -1
  38. package/cjs/src/embed/liveboard.spec.js +29 -71
  39. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  40. package/cjs/src/embed/spotter-utils.d.ts +20 -0
  41. package/cjs/src/embed/spotter-utils.d.ts.map +1 -0
  42. package/cjs/src/embed/spotter-utils.js +52 -0
  43. package/cjs/src/embed/spotter-utils.js.map +1 -0
  44. package/cjs/src/embed/spotter-utils.spec.d.ts +2 -0
  45. package/cjs/src/embed/spotter-utils.spec.d.ts.map +1 -0
  46. package/cjs/src/embed/spotter-utils.spec.js +54 -0
  47. package/cjs/src/embed/spotter-utils.spec.js.map +1 -0
  48. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  49. package/cjs/src/embed/ts-embed.js +25 -5
  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 +28 -67
  53. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  54. package/cjs/src/errors.d.ts +2 -1
  55. package/cjs/src/errors.d.ts.map +1 -1
  56. package/cjs/src/errors.js +2 -1
  57. package/cjs/src/errors.js.map +1 -1
  58. package/cjs/src/index.d.ts +1 -2
  59. package/cjs/src/index.d.ts.map +1 -1
  60. package/cjs/src/index.js +2 -4
  61. package/cjs/src/index.js.map +1 -1
  62. package/cjs/src/react/all-types-export.d.ts +2 -2
  63. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  64. package/cjs/src/react/all-types-export.js +1 -3
  65. package/cjs/src/react/all-types-export.js.map +1 -1
  66. package/cjs/src/react/index.d.ts +1 -36
  67. package/cjs/src/react/index.d.ts.map +1 -1
  68. package/cjs/src/react/index.js +1 -34
  69. package/cjs/src/react/index.js.map +1 -1
  70. package/cjs/src/types.d.ts +143 -76
  71. package/cjs/src/types.d.ts.map +1 -1
  72. package/cjs/src/types.js +118 -47
  73. package/cjs/src/types.js.map +1 -1
  74. package/cjs/src/utils.d.ts +0 -9
  75. package/cjs/src/utils.d.ts.map +1 -1
  76. package/cjs/src/utils.js +1 -10
  77. package/cjs/src/utils.js.map +1 -1
  78. package/dist/{index-DW2wEHqy.js → index-Bm2Hck8q.js} +1 -1
  79. package/dist/src/css-variables.d.ts +36 -0
  80. package/dist/src/css-variables.d.ts.map +1 -1
  81. package/dist/src/embed/app.d.ts +41 -17
  82. package/dist/src/embed/app.d.ts.map +1 -1
  83. package/dist/src/embed/conversation.d.ts +24 -2
  84. package/dist/src/embed/conversation.d.ts.map +1 -1
  85. package/dist/src/embed/hostEventClient/contracts.d.ts +31 -0
  86. package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  87. package/dist/src/embed/hostEventClient/host-event-client.d.ts +18 -0
  88. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  89. package/dist/src/embed/hostEventClient/utils.d.ts +22 -0
  90. package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -0
  91. package/dist/src/embed/hostEventClient/utils.spec.d.ts +2 -0
  92. package/dist/src/embed/hostEventClient/utils.spec.d.ts.map +1 -0
  93. package/dist/src/embed/liveboard.d.ts +18 -1
  94. package/dist/src/embed/liveboard.d.ts.map +1 -1
  95. package/dist/src/embed/spotter-utils.d.ts +20 -0
  96. package/dist/src/embed/spotter-utils.d.ts.map +1 -0
  97. package/dist/src/embed/spotter-utils.spec.d.ts +2 -0
  98. package/dist/src/embed/spotter-utils.spec.d.ts.map +1 -0
  99. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  100. package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
  101. package/dist/src/errors.d.ts +2 -1
  102. package/dist/src/errors.d.ts.map +1 -1
  103. package/dist/src/index.d.ts +1 -2
  104. package/dist/src/index.d.ts.map +1 -1
  105. package/dist/src/react/all-types-export.d.ts +2 -2
  106. package/dist/src/react/all-types-export.d.ts.map +1 -1
  107. package/dist/src/react/index.d.ts +1 -36
  108. package/dist/src/react/index.d.ts.map +1 -1
  109. package/dist/src/types.d.ts +143 -76
  110. package/dist/src/types.d.ts.map +1 -1
  111. package/dist/src/utils.d.ts +0 -9
  112. package/dist/src/utils.d.ts.map +1 -1
  113. package/dist/tsembed-react.es.js +378 -304
  114. package/dist/tsembed-react.js +366 -294
  115. package/dist/tsembed.es.js +393 -285
  116. package/dist/tsembed.js +30798 -30691
  117. package/dist/visual-embed-sdk-react-full.d.ts +310 -273
  118. package/dist/visual-embed-sdk-react.d.ts +310 -273
  119. package/dist/visual-embed-sdk.d.ts +308 -243
  120. package/lib/package.json +4 -4
  121. package/lib/src/css-variables.d.ts +36 -0
  122. package/lib/src/css-variables.d.ts.map +1 -1
  123. package/lib/src/embed/app.d.ts +41 -17
  124. package/lib/src/embed/app.d.ts.map +1 -1
  125. package/lib/src/embed/app.js +28 -49
  126. package/lib/src/embed/app.js.map +1 -1
  127. package/lib/src/embed/app.spec.js +36 -79
  128. package/lib/src/embed/app.spec.js.map +1 -1
  129. package/lib/src/embed/conversation.d.ts +24 -2
  130. package/lib/src/embed/conversation.d.ts.map +1 -1
  131. package/lib/src/embed/conversation.js +19 -34
  132. package/lib/src/embed/conversation.js.map +1 -1
  133. package/lib/src/embed/conversation.spec.js +131 -99
  134. package/lib/src/embed/conversation.spec.js.map +1 -1
  135. package/lib/src/embed/hostEventClient/contracts.d.ts +31 -0
  136. package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  137. package/lib/src/embed/hostEventClient/contracts.js +2 -0
  138. package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
  139. package/lib/src/embed/hostEventClient/host-event-client.d.ts +18 -0
  140. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  141. package/lib/src/embed/hostEventClient/host-event-client.js +69 -9
  142. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  143. package/lib/src/embed/hostEventClient/host-event-client.spec.js +185 -19
  144. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  145. package/lib/src/embed/hostEventClient/utils.d.ts +22 -0
  146. package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -0
  147. package/lib/src/embed/hostEventClient/utils.js +49 -0
  148. package/lib/src/embed/hostEventClient/utils.js.map +1 -0
  149. package/lib/src/embed/hostEventClient/utils.spec.d.ts +2 -0
  150. package/lib/src/embed/hostEventClient/utils.spec.d.ts.map +1 -0
  151. package/lib/src/embed/hostEventClient/utils.spec.js +188 -0
  152. package/lib/src/embed/hostEventClient/utils.spec.js.map +1 -0
  153. package/lib/src/embed/liveboard.d.ts +18 -1
  154. package/lib/src/embed/liveboard.d.ts.map +1 -1
  155. package/lib/src/embed/liveboard.js +9 -11
  156. package/lib/src/embed/liveboard.js.map +1 -1
  157. package/lib/src/embed/liveboard.spec.js +29 -71
  158. package/lib/src/embed/liveboard.spec.js.map +1 -1
  159. package/lib/src/embed/spotter-utils.d.ts +20 -0
  160. package/lib/src/embed/spotter-utils.d.ts.map +1 -0
  161. package/lib/src/embed/spotter-utils.js +47 -0
  162. package/lib/src/embed/spotter-utils.js.map +1 -0
  163. package/lib/src/embed/spotter-utils.spec.d.ts +2 -0
  164. package/lib/src/embed/spotter-utils.spec.d.ts.map +1 -0
  165. package/lib/src/embed/spotter-utils.spec.js +52 -0
  166. package/lib/src/embed/spotter-utils.spec.js.map +1 -0
  167. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  168. package/lib/src/embed/ts-embed.js +25 -5
  169. package/lib/src/embed/ts-embed.js.map +1 -1
  170. package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
  171. package/lib/src/embed/ts-embed.spec.js +30 -69
  172. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  173. package/lib/src/errors.d.ts +2 -1
  174. package/lib/src/errors.d.ts.map +1 -1
  175. package/lib/src/errors.js +2 -1
  176. package/lib/src/errors.js.map +1 -1
  177. package/lib/src/index.d.ts +1 -2
  178. package/lib/src/index.d.ts.map +1 -1
  179. package/lib/src/index.js +1 -2
  180. package/lib/src/index.js.map +1 -1
  181. package/lib/src/react/all-types-export.d.ts +2 -2
  182. package/lib/src/react/all-types-export.d.ts.map +1 -1
  183. package/lib/src/react/all-types-export.js +1 -1
  184. package/lib/src/react/all-types-export.js.map +1 -1
  185. package/lib/src/react/index.d.ts +1 -36
  186. package/lib/src/react/index.d.ts.map +1 -1
  187. package/lib/src/react/index.js +0 -33
  188. package/lib/src/react/index.js.map +1 -1
  189. package/lib/src/types.d.ts +143 -76
  190. package/lib/src/types.d.ts.map +1 -1
  191. package/lib/src/types.js +118 -47
  192. package/lib/src/types.js.map +1 -1
  193. package/lib/src/utils.d.ts +0 -9
  194. package/lib/src/utils.d.ts.map +1 -1
  195. package/lib/src/utils.js +0 -8
  196. package/lib/src/utils.js.map +1 -1
  197. package/lib/src/visual-embed-sdk.d.ts +308 -243
  198. package/package.json +4 -4
  199. package/src/css-variables.ts +45 -0
  200. package/src/embed/app.spec.ts +51 -107
  201. package/src/embed/app.ts +60 -82
  202. package/src/embed/conversation.spec.ts +150 -119
  203. package/src/embed/conversation.ts +34 -58
  204. package/src/embed/hostEventClient/contracts.ts +31 -0
  205. package/src/embed/hostEventClient/host-event-client.spec.ts +260 -19
  206. package/src/embed/hostEventClient/host-event-client.ts +87 -11
  207. package/src/embed/hostEventClient/utils.spec.ts +225 -0
  208. package/src/embed/hostEventClient/utils.ts +74 -0
  209. package/src/embed/liveboard.spec.ts +38 -93
  210. package/src/embed/liveboard.ts +28 -10
  211. package/src/embed/spotter-utils.spec.ts +56 -0
  212. package/src/embed/spotter-utils.ts +65 -0
  213. package/src/embed/ts-embed.spec.ts +56 -108
  214. package/src/embed/ts-embed.ts +25 -4
  215. package/src/errors.ts +2 -1
  216. package/src/index.ts +2 -5
  217. package/src/react/all-types-export.ts +0 -3
  218. package/src/react/index.tsx +15 -59
  219. package/src/types.ts +206 -138
  220. package/src/utils.ts +0 -14
  221. package/cjs/src/embed/sage.d.ts +0 -164
  222. package/cjs/src/embed/sage.d.ts.map +0 -1
  223. package/cjs/src/embed/sage.js +0 -88
  224. package/cjs/src/embed/sage.js.map +0 -1
  225. package/cjs/src/embed/sage.spec.d.ts +0 -2
  226. package/cjs/src/embed/sage.spec.d.ts.map +0 -1
  227. package/cjs/src/embed/sage.spec.js +0 -151
  228. package/cjs/src/embed/sage.spec.js.map +0 -1
  229. package/dist/src/embed/sage.d.ts +0 -164
  230. package/dist/src/embed/sage.d.ts.map +0 -1
  231. package/dist/src/embed/sage.spec.d.ts +0 -2
  232. package/dist/src/embed/sage.spec.d.ts.map +0 -1
  233. package/lib/src/embed/sage.d.ts +0 -164
  234. package/lib/src/embed/sage.d.ts.map +0 -1
  235. package/lib/src/embed/sage.js +0 -84
  236. package/lib/src/embed/sage.js.map +0 -1
  237. package/lib/src/embed/sage.spec.d.ts +0 -2
  238. package/lib/src/embed/sage.spec.d.ts.map +0 -1
  239. package/lib/src/embed/sage.spec.js +0 -148
  240. package/lib/src/embed/sage.spec.js.map +0 -1
  241. package/src/embed/sage.spec.ts +0 -206
  242. package/src/embed/sage.ts +0 -231
@@ -784,6 +784,42 @@ export interface CustomCssVariables {
784
784
  * Color for section title text (e.g., "Recent", "Older") in the saved chats sidebar.
785
785
  */
786
786
  "--ts-var-saved-chats-section-title-color"?: string;
787
+ /**
788
+ * Text color of the styling panel in the Liveboard.
789
+ */
790
+ "--ts-var-liveboard-styling-panel-text-color"?: string;
791
+ /**
792
+ * Border color of the styling panel in the Liveboard.
793
+ */
794
+ "--ts-var-liveboard-styling-panel-border-color"?: string;
795
+ /**
796
+ * Background color of the styling button in the Liveboard.
797
+ */
798
+ "--ts-var-liveboard-styling-button-background"?: string;
799
+ /**
800
+ * Text color of the styling button in the Liveboard.
801
+ */
802
+ "--ts-var-liveboard-styling-button-text-color"?: string;
803
+ /**
804
+ * Background color of the styling button in the Liveboard on hover.
805
+ */
806
+ "--ts-var-liveboard-styling-button-hover-background"?: string;
807
+ /**
808
+ * Background color of the styling button in the Liveboard when active.
809
+ */
810
+ "--ts-var-liveboard-styling-button-active-background"?: string;
811
+ /**
812
+ * Text color of the styling button in the Liveboard on hover.
813
+ */
814
+ "--ts-var-liveboard-styling-button-hover-text-color"?: string;
815
+ /**
816
+ * Box shadow of the styling button in the Liveboard.
817
+ */
818
+ "--ts-var-liveboard-styling-button-shadow"?: string;
819
+ /**
820
+ * Background color of the color palette in the Liveboard styling panel.
821
+ */
822
+ "--ts-var-liveboard-styling-color-palette-background"?: string;
787
823
  }
788
824
  export interface SessionInterface {
789
825
  sessionId: string;
@@ -1457,11 +1493,6 @@ export interface EmbedConfig {
1457
1493
  * @version SDK: 1.12.0 | ThoughtSpot: 8.4.0.cl, 8.4.1.sw
1458
1494
  */
1459
1495
  suppressSearchEmbedBetaWarning?: boolean;
1460
- /**
1461
- * Hide `beta` alert warning message for SageEmbed.
1462
- *
1463
- */
1464
- suppressSageEmbedBetaWarning?: boolean;
1465
1496
  /**
1466
1497
  * Custom style params for embed Config.
1467
1498
  * @version SDK: 1.17.0 | ThoughtSpot: 8.9.0.cl, 9.0.1.sw
@@ -1543,6 +1574,7 @@ export interface EmbedConfig {
1543
1574
  /**
1544
1575
  * Disables the Mixpanel tracking from the SDK.
1545
1576
  * @version SDK: 1.27.9
1577
+ * @hidden
1546
1578
  */
1547
1579
  disableSDKTracking?: boolean;
1548
1580
  /**
@@ -1845,7 +1877,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1845
1877
  * The width and height dimensions to render an embedded
1846
1878
  * object inside your app. Specify the values in pixels or percentage.
1847
1879
  *
1848
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1880
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1849
1881
  * @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 7.2.1
1850
1882
  * @example
1851
1883
  * ```js
@@ -1874,7 +1906,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1874
1906
  * for the user.
1875
1907
  * Use this to disable actions.
1876
1908
  *
1877
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1909
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1878
1910
  * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
1879
1911
  * @example
1880
1912
  * ```js
@@ -1889,7 +1921,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1889
1921
  /**
1890
1922
  * The tooltip to display for disabled actions.
1891
1923
  *
1892
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1924
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1893
1925
  * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
1894
1926
  * @example
1895
1927
  * ```js
@@ -1907,7 +1939,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1907
1939
  * These actions will be hidden from the user.
1908
1940
  * Use this to hide an action.
1909
1941
  *
1910
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1942
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1911
1943
  * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
1912
1944
  * @example
1913
1945
  * ```js
@@ -1928,7 +1960,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1928
1960
  *
1929
1961
  * Use either this or hiddenActions.
1930
1962
  *
1931
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1963
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1932
1964
  * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
1933
1965
  * @important
1934
1966
  * @example
@@ -1944,7 +1976,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1944
1976
  /**
1945
1977
  * The locale settings to apply to the embedded view.
1946
1978
  *
1947
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1979
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1948
1980
  * @version SDK: 1.9.4 | ThoughtSpot: 8.1.0.cl, 8.4.1.sw
1949
1981
  * @example
1950
1982
  * ```js
@@ -1965,7 +1997,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1965
1997
  * to control embed behavior in non-regular ways. We do not publish the
1966
1998
  * list of supported keys and values associated with each.
1967
1999
  *
1968
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2000
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1969
2001
  * @version SDK: 1.9.0 | ThoughtSpot: 8.1.0.cl, 8.4.1.sw
1970
2002
  * @example
1971
2003
  * ```js
@@ -1993,7 +2025,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1993
2025
  * Insert as a sibling of the target container, instead of appending to a
1994
2026
  * child inside it.
1995
2027
  *
1996
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2028
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1997
2029
  * @version SDK: 1.2.0 | ThoughtSpot: 9.0.0.cl, 9.0.0.sw
1998
2030
  * @example
1999
2031
  * ```js
@@ -2019,7 +2051,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
2019
2051
  * Use PreRender to render the embed in the background and then
2020
2052
  * show or hide the rendered embed using showPreRender or hidePreRender respectively.
2021
2053
  *
2022
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2054
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2023
2055
  * @version SDK: 1.25.0 | ThoughtSpot: 9.6.0.cl, 9.8.0.sw
2024
2056
  * @example
2025
2057
  * ```js
@@ -2056,7 +2088,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
2056
2088
  * Enable the V2 shell. This can provide performance benefits
2057
2089
  * due to a lighter-weight shell.
2058
2090
  *
2059
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2091
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2060
2092
  * @version SDK: 1.31.2 | ThoughtSpot: 10.0.0.cl
2061
2093
  * @example
2062
2094
  * ```js
@@ -2083,7 +2115,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
2083
2115
  * This flag can be used to disable links inside the embedded app,
2084
2116
  * and disable redirection of links in a new tab.
2085
2117
  *
2086
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2118
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2087
2119
  * @version SDK: 1.32.1 | ThoughtSpot: 10.3.0.cl
2088
2120
  * @example
2089
2121
  * ```js
@@ -2102,7 +2134,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
2102
2134
  * The `overrideOrgId` setting is honoured only if the
2103
2135
  * Per Org URL feature is enabled on your ThoughtSpot instance.
2104
2136
  *
2105
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2137
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2106
2138
  * @version SDK: 1.35.0 | ThoughtSpot: 10.5.0.cl
2107
2139
  * @example
2108
2140
  * ```js
@@ -2122,7 +2154,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
2122
2154
  * {@link enableLinkOverridesV2} instead.
2123
2155
  *
2124
2156
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`,
2125
- * `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`,
2157
+ * `SearchEmbed`, `SpotterAgentEmbed`,
2126
2158
  * `SpotterEmbed`, `SearchBarEmbed`
2127
2159
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl
2128
2160
  * @example
@@ -2146,7 +2178,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
2146
2178
  * older ThoughtSpot versions.
2147
2179
  *
2148
2180
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`,
2149
- * `SageEmbed`, `SearchEmbed`, `SpotterAgentEmbed`,
2181
+ * `SearchEmbed`, `SpotterAgentEmbed`,
2150
2182
  * `SpotterEmbed`, `SearchBarEmbed`
2151
2183
  * @version SDK: 1.46.0 | ThoughtSpot: 26.2.0.cl
2152
2184
  * @example
@@ -2205,7 +2237,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
2205
2237
  * external app, calling an API, or opening a modal — based on the data context of
2206
2238
  * what they clicked can be used to trigger custom logic when the action is clicked.
2207
2239
  *
2208
- * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterEmbed`
2240
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterEmbed`
2209
2241
  * @version SDK: 1.43.0 | ThoughtSpot: 10.14.0.cl
2210
2242
  * @example
2211
2243
  * ```ts
@@ -2559,11 +2591,11 @@ export interface SearchLiveboardCommonViewConfig {
2559
2591
  /**
2560
2592
  * flag to set ContextMenu Trigger to either left or right click.
2561
2593
  *
2562
- * Supported embed types: `AppEmbed`, `SageEmbed`, `SearchEmbed`
2594
+ * Supported embed types: `AppEmbed`, `SearchEmbed`
2563
2595
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl
2564
2596
  * @example
2565
2597
  * ```js
2566
- * // Replace <EmbedComponent> with embed component name. For example, AppEmbed, SageEmbed, or SearchEmbed
2598
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed, or SearchEmbed
2567
2599
  * const embed = new <EmbedComponent>('#tsEmbed', {
2568
2600
  * ... // other embed view config
2569
2601
  * contextMenuTrigger:ContextMenuTriggerOptions.LEFT_CLICK || RIGHT_CLICK,
@@ -2600,12 +2632,12 @@ export interface SearchLiveboardCommonViewConfig {
2600
2632
  /**
2601
2633
  * To set the initial state of the search bar in case of saved Answers.
2602
2634
  *
2603
- * Supported embed types: `SageEmbed`, `AppEmbed`, `SearchBarEmbed`
2635
+ * Supported embed types: `AppEmbed`, `SearchBarEmbed`
2604
2636
  * @default true
2605
2637
  * @version SDK: 1.34.0 | ThoughtSpot: 10.3.0.cl
2606
2638
  * @example
2607
2639
  * ```js
2608
- * // Replace <EmbedComponent> with embed component name. For example, SageEmbed, AppEmbed, or SearchBarEmbed
2640
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed, or SearchBarEmbed
2609
2641
  * const embed = new <EmbedComponent>('#tsEmbed', {
2610
2642
  * ... // other embed view config
2611
2643
  * collapseSearchBar: true,
@@ -2616,12 +2648,12 @@ export interface SearchLiveboardCommonViewConfig {
2616
2648
  /**
2617
2649
  * Flag to control Data panel experience
2618
2650
  *
2619
- * Supported embed types: `SageEmbed`, `AppEmbed`, `SearchBarEmbed`, `LiveboardEmbed`, `SearchEmbed`
2651
+ * Supported embed types: `AppEmbed`, `SearchBarEmbed`, `LiveboardEmbed`, `SearchEmbed`
2620
2652
  * @deprecated from SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
2621
2653
  * @default true
2622
2654
  * @example
2623
2655
  * ```js
2624
- * // Replace <EmbedComponent> with embed component name. For example, SageEmbed, AppEmbed, or SearchBarEmbed
2656
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed, or SearchBarEmbed
2625
2657
  * const embed = new <EmbedComponent>('#tsEmbed', {
2626
2658
  * ... // other embed view config
2627
2659
  * dataPanelV2: true,
@@ -2632,12 +2664,12 @@ export interface SearchLiveboardCommonViewConfig {
2632
2664
  /**
2633
2665
  * To enable custom column groups in data panel v2
2634
2666
  *
2635
- * Supported embed types: `SageEmbed`, `SearchBarEmbed`, `LiveboardEmbed`, `SearchEmbed`
2667
+ * Supported embed types: `SearchBarEmbed`, `LiveboardEmbed`, `SearchEmbed`
2636
2668
  * @version SDK: 1.32.0 | ThoughtSpot: 10.0.0.cl, 10.1.0.sw
2637
2669
  * @default false
2638
2670
  * @example
2639
2671
  * ```js
2640
- * // Replace <EmbedComponent> with embed component name. For example, SageEmbed, SearchBarEmbed, or LiveboardEmbed
2672
+ * // Replace <EmbedComponent> with embed component name. For example, SearchBarEmbed, or LiveboardEmbed
2641
2673
  * const embed = new <EmbedComponent>('#tsEmbed', {
2642
2674
  * ... // other embed view config
2643
2675
  * enableCustomColumnGroups: true,
@@ -3630,6 +3662,17 @@ export enum EmbedEvent {
3630
3662
  * ```
3631
3663
  */
3632
3664
  DownloadAsXlsx = "downloadAsXlsx",
3665
+ /**
3666
+ * Emitted when the Download Liveboard as Continuous PDF action is triggered
3667
+ * on a Liveboard.
3668
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
3669
+ * @example
3670
+ * ```js
3671
+ * liveboardEmbed.on(EmbedEvent.DownloadLiveboardAsContinuousPDF, payload => {
3672
+ * console.log('download liveboard as continuous PDF', payload)})
3673
+ * ```
3674
+ */
3675
+ DownloadLiveboardAsContinuousPDF = "downloadLiveboardAsContinuousPDF",
3633
3676
  /**
3634
3677
  * Emitted when an Answer is deleted in the app
3635
3678
  * Use start:true to subscribe to when delete is initiated, or end:true to subscribe
@@ -4007,19 +4050,6 @@ export enum EmbedEvent {
4007
4050
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl, 9.5.0.sw
4008
4051
  */
4009
4052
  FilterChanged = "filterChanged",
4010
- /**
4011
- * Emitted when a user clicks the **Go** button to initiate
4012
- * a Natural Language Search query
4013
- * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
4014
- */
4015
- SageEmbedQuery = "sageEmbedQuery",
4016
- /**
4017
- * Emitted when a user selects a data source on the embedded
4018
- * Natural Language Search interface.
4019
- *
4020
- * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
4021
- */
4022
- SageWorksheetUpdated = "sageWorksheetUpdated",
4023
4053
  /**
4024
4054
  * Emitted when a user updates a connection on the **Data** page
4025
4055
  * @version SDK: 1.27.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
@@ -5157,6 +5187,18 @@ export enum HostEvent {
5157
5187
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
5158
5188
  */
5159
5189
  DownloadAsPdf = "downloadAsPdf",
5190
+ /**
5191
+ * Trigger the **Download Liveboard as Continuous PDF** action on an
5192
+ * embedded Liveboard.
5193
+ *
5194
+ * @example
5195
+ * ```js
5196
+ * liveboardEmbed.trigger(HostEvent.DownloadLiveboardAsContinuousPDF)
5197
+ * ```
5198
+ *
5199
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
5200
+ */
5201
+ DownloadLiveboardAsContinuousPDF = "downloadLiveboardAsContinuousPDF",
5160
5202
  /**
5161
5203
  * Trigger the **AI Highlights** action on an embedded Liveboard
5162
5204
  *
@@ -5383,6 +5425,20 @@ export enum HostEvent {
5383
5425
  * vizId: '730496d6-6903-4601-937e-2c691821af3c'
5384
5426
  * }, ContextType.Liveboard);
5385
5427
  * ```
5428
+ * @example
5429
+ * ```js
5430
+ * // Copy link from liveboard context
5431
+ * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5432
+ * liveboardEmbed.trigger(HostEvent.CopyLink, {}, ContextType.Liveboard);
5433
+ * ```
5434
+ * @example
5435
+ * ```js
5436
+ * // Copy link from liveboard visualization context
5437
+ * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5438
+ * liveboardEmbed.trigger(HostEvent.CopyLink, {
5439
+ * vizId: '730496d6-6903-4601-937e-2c691821af3c'
5440
+ * }, ContextType.Liveboard);
5441
+ * ```
5386
5442
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
5387
5443
  */
5388
5444
  CopyLink = "embedDocument",
@@ -5414,6 +5470,20 @@ export enum HostEvent {
5414
5470
  * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5415
5471
  * liveboardEmbed.trigger(HostEvent.Present, {}, ContextType.Liveboard);
5416
5472
  * ```
5473
+ * @example
5474
+ * ```js
5475
+ * // Present from liveboard visualization context
5476
+ * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5477
+ * liveboardEmbed.trigger(HostEvent.Present, {
5478
+ * vizId: '730496d6-6903-4601-937e-2c691821af3c'
5479
+ * }, ContextType.Liveboard);
5480
+ * ```
5481
+ * @example
5482
+ * ```js
5483
+ * // Present from liveboard context
5484
+ * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5485
+ * liveboardEmbed.trigger(HostEvent.Present, {}, ContextType.Liveboard);
5486
+ * ```
5417
5487
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
5418
5488
  */
5419
5489
  Present = "present",
@@ -5442,7 +5512,7 @@ export enum HostEvent {
5442
5512
  * tml.answer.search_query // TML representation of the search query
5443
5513
  * );
5444
5514
  * })
5445
- * ```
5515
+ * ```
5446
5516
  * @example
5447
5517
  * ```js
5448
5518
  * // Get TML from search context
@@ -6065,21 +6135,6 @@ export enum HostEvent {
6065
6135
  * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
6066
6136
  */
6067
6137
  SetHiddenTabs = "SetPinboardHiddenTabs",
6068
- /**
6069
- * Updates the search query string for Natural Language Search operations.
6070
- * @param - Includes the following keys:
6071
- * - `queryString`: Text string in Natural Language format.
6072
- * - `executeSearch`: Boolean to execute search and update search query.
6073
- * @example
6074
- * ```js
6075
- * sageEmbed.trigger(HostEvent.UpdateSageQuery, {
6076
- * queryString: 'revenue per year',
6077
- * executeSearch: true,
6078
- * })
6079
- * ```
6080
- * @version SDK: 1.26.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
6081
- */
6082
- UpdateSageQuery = "updateSageQuery",
6083
6138
  /**
6084
6139
  * Get the Answer session for a Search or
6085
6140
  * Liveboard visualization.
@@ -6899,6 +6954,16 @@ export enum Action {
6899
6954
  * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
6900
6955
  */
6901
6956
  DownloadLiveboard = "downloadLiveboard",
6957
+ /**
6958
+ * The **Download Liveboard as Continuous PDF** menu action on a Liveboard.
6959
+ * Allows downloading the entire Liveboard as a continuous PDF.
6960
+ * @example
6961
+ * ```js
6962
+ * disabledActions: [Action.DownloadLiveboardAsContinuousPDF]
6963
+ * ```
6964
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
6965
+ */
6966
+ DownloadLiveboardAsContinuousPDF = "downloadLiveboardAsContinuousPDF",
6902
6967
  /**
6903
6968
  * @hidden
6904
6969
  */
@@ -7855,11 +7920,11 @@ export enum Action {
7855
7920
  */
7856
7921
  CoverAndFilterOptionInPDF = "coverAndFilterOptionInPDF",
7857
7922
  /**
7858
- * Action ID to hide or disable the Coaching workflow in Spotter conversations.
7859
- * When disabled, users cannot access **Add to Coaching** workflow in conversation.
7860
- * The **Add to Coaching** feature allows adding reference questions and
7861
- * business terms to improve Spotter’s responses. This feature is generally available
7862
- * (GA) from version 26.2.0.cl and enabled by default on embed deployments.
7923
+ * Action ID to hide or disable the Coaching workflow in Spotter conversations.
7924
+ * When disabled, users cannot access **Add to Coaching** workflow in conversation.
7925
+ * The **Add to Coaching** feature allows adding reference questions and
7926
+ * business terms to improve Spotter’s responses. This feature is generally available
7927
+ * (GA) from version 26.2.0.cl and enabled by default on embed deployments.
7863
7928
  * @example
7864
7929
  * ```js
7865
7930
  * hiddenAction: [Action.InConversationTraining]
@@ -7936,17 +8001,17 @@ export enum Action {
7936
8001
  */
7937
8002
  LiveboardStylePanel = "liveboardStylePanel",
7938
8003
  /**
7939
- * The **Publish** action for Liveboards, Answers and Models.
7940
- * Opens the publishing modal. It's a parent action for the
7941
- * **Manage Publishing** and **Unpublish** actions if the object
7942
- * is already published, otherwise appears standalone.
7943
- * @example
7944
- * ```js
7945
- * hiddenActions: [Action.Publish]
7946
- * disabledActions: [Action.Publish]
7947
- * ```
7948
- * @version SDK: 1.45.0 | ThoughtSpot Cloud: 26.2.0.cl
7949
- */
8004
+ * The **Publish** action for Liveboards, Answers and Models.
8005
+ * Opens the publishing modal. It's a parent action for the
8006
+ * **Manage Publishing** and **Unpublish** actions if the object
8007
+ * is already published, otherwise appears standalone.
8008
+ * @example
8009
+ * ```js
8010
+ * hiddenActions: [Action.Publish]
8011
+ * disabledActions: [Action.Publish]
8012
+ * ```
8013
+ * @version SDK: 1.45.0 | ThoughtSpot Cloud: 26.2.0.cl
8014
+ */
7950
8015
  Publish = "publish",
7951
8016
  /**
7952
8017
  * The **Manage Publishing** action for Liveboards, Answers and Models.
@@ -8114,6 +8179,39 @@ export enum Action {
8114
8179
  * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
8115
8180
  */
8116
8181
  SpotterDocs = "spotterDocs",
8182
+ /**
8183
+ * Controls visibility and disable state of the connector resources
8184
+ * section in the Spotter chat interface.
8185
+ * @example
8186
+ * ```js
8187
+ * hiddenActions: [Action.SpotterChatConnectorResources]
8188
+ * disabledActions: [Action.SpotterChatConnectorResources]
8189
+ * ```
8190
+ * @version SDK: 1.48.0 | ThoughtSpot Cloud: 26.5.0.cl
8191
+ */
8192
+ SpotterChatConnectorResources = "spotterChatConnectorResources",
8193
+ /**
8194
+ * Controls visibility and disable state of the connectors
8195
+ * in the Spotter chat interface.
8196
+ * @example
8197
+ * ```js
8198
+ * hiddenActions: [Action.SpotterChatConnectors]
8199
+ * disabledActions: [Action.SpotterChatConnectors]
8200
+ * ```
8201
+ * @version SDK: 1.48.0 | ThoughtSpot Cloud: 26.5.0.cl
8202
+ */
8203
+ SpotterChatConnectors = "spotterChatConnectors",
8204
+ /**
8205
+ * Controls visibility and disable state of the mode switcher
8206
+ * in the Spotter chat interface.
8207
+ * @example
8208
+ * ```js
8209
+ * hiddenActions: [Action.SpotterChatModeSwitcher]
8210
+ * disabledActions: [Action.SpotterChatModeSwitcher]
8211
+ * ```
8212
+ * @version SDK: 1.48.0 | ThoughtSpot Cloud: 26.5.0.cl
8213
+ */
8214
+ SpotterChatModeSwitcher = "spotterChatModeSwitcher",
8117
8215
  /**
8118
8216
  * The **Include current period** checkbox for date filters.
8119
8217
  * Controls the visibility and availability of the option to include
@@ -8457,7 +8555,13 @@ export enum EmbedErrorCodes {
8457
8555
  /** Failed to update embed parameters during pre-render */
8458
8556
  UPDATE_PARAMS_FAILED = "UPDATE_PARAMS_FAILED",
8459
8557
  /** Invalid URL provided in configuration */
8460
- INVALID_URL = "INVALID_URL"
8558
+ INVALID_URL = "INVALID_URL",
8559
+ /** Host event payload validation failed */
8560
+ HOST_EVENT_VALIDATION = "HOST_EVENT_VALIDATION",
8561
+ /** UpdateFilters payload is invalid - missing or malformed filter/filters */
8562
+ UPDATEFILTERS_INVALID_PAYLOAD = "UPDATEFILTERS_INVALID_PAYLOAD",
8563
+ /** DrillDown payload is invalid - missing or malformed points */
8564
+ DRILLDOWN_INVALID_PAYLOAD = "DRILLDOWN_INVALID_PAYLOAD"
8461
8565
  }
8462
8566
  /**
8463
8567
  * Error event object emitted when an error occurs in an embedded component.
@@ -8701,6 +8805,8 @@ export enum UIPassthroughEvent {
8701
8805
  GetAnswerConfig = "getAnswerPageConfig",
8702
8806
  GetLiveboardConfig = "getPinboardPageConfig",
8703
8807
  GetUnsavedAnswerTML = "getUnsavedAnswerTML",
8808
+ UpdateFilters = "updateFilters",
8809
+ Drilldown = "drillDown",
8704
8810
  GetAnswerSession = "getAnswerSession",
8705
8811
  GetFilters = "getFilters",
8706
8812
  GetIframeUrl = "getIframeUrl",
@@ -8822,6 +8928,35 @@ export type UIPassthroughContractBase = {
8822
8928
  v2Content: string;
8823
8929
  };
8824
8930
  };
8931
+ [UIPassthroughEvent.UpdateFilters]: {
8932
+ request: {
8933
+ filter?: {
8934
+ column: string;
8935
+ oper: string;
8936
+ values: string[];
8937
+ type?: string;
8938
+ };
8939
+ filters?: {
8940
+ column: string;
8941
+ oper: string;
8942
+ values: string[];
8943
+ type?: string;
8944
+ }[];
8945
+ };
8946
+ response: unknown;
8947
+ };
8948
+ [UIPassthroughEvent.Drilldown]: {
8949
+ request: {
8950
+ points: {
8951
+ selectedPoints?: string[];
8952
+ clickedPoint?: string;
8953
+ };
8954
+ columnGuid?: string;
8955
+ autoDrillDown?: boolean;
8956
+ vizId?: string;
8957
+ };
8958
+ response: unknown;
8959
+ };
8825
8960
  };
8826
8961
  export type UIPassthroughRequest<T extends keyof UIPassthroughContractBase> = UIPassthroughContractBase[T]["request"];
8827
8962
  export type UIPassthroughResponse<T extends keyof UIPassthroughContractBase> = UIPassthroughContractBase[T]["response"];
@@ -8847,6 +8982,8 @@ export type TriggerPayload<PayloadT, HostEventT extends HostEvent> = PayloadT |
8847
8982
  export type TriggerResponse<PayloadT, HostEventT extends HostEvent, ContextT extends ContextType> = PayloadT extends HostEventRequest<HostEventT> ? HostEventResponse<HostEventT, ContextT> : any;
8848
8983
  class HostEventClient {
8849
8984
  iFrame: HTMLIFrameElement;
8985
+ /** Cached list of available UI passthrough keys from the embedded app */
8986
+ private availablePassthroughKeysCache;
8850
8987
  /** Host events with custom handlers
8851
8988
  * (setters or special logic) -
8852
8989
  * bound to instance for protected method access */
@@ -8872,9 +9009,25 @@ class HostEventClient {
8872
9009
  * @param {HTMLIFrameElement} iFrame - the iframe element to set
8873
9010
  */
8874
9011
  setIframeElement(iFrame: HTMLIFrameElement): void;
9012
+ /**
9013
+ * Fetches the list of available UI passthrough keys from the embedded app.
9014
+ * Result is cached for the session. Returns empty array on failure.
9015
+ */
9016
+ private getAvailableUIPassthroughKeys;
8875
9017
  triggerUIPassthroughApi<UIPassthroughEventT extends UIPassthroughEvent>(apiName: UIPassthroughEventT, parameters: UIPassthroughRequest<UIPassthroughEventT>, context?: ContextType): Promise<UIPassthroughArrayResponse<UIPassthroughEventT>>;
8876
9018
  protected handlePinEvent(payload: HostEventRequest<HostEvent.Pin>, context?: ContextType): Promise<HostEventResponse<HostEvent.Pin, ContextType>>;
8877
9019
  protected handleSaveAnswerEvent(payload: HostEventRequest<HostEvent.SaveAnswer>, context?: ContextType): Promise<any>;
9020
+ protected handleUpdateFiltersEvent(payload: HostEventRequest<HostEvent.UpdateFilters>, context?: ContextType): Promise<any>;
9021
+ protected handleDrillDownEvent(payload: HostEventRequest<HostEvent.DrillDown>, context?: ContextType): Promise<any>;
9022
+ /**
9023
+ * Dispatches a host event using the appropriate channel:
9024
+ * 1. If the embedded app supports UI passthrough for this event, use it (custom handler or getter).
9025
+ * 2. Otherwise fall back to the legacy host event channel.
9026
+ *
9027
+ * @param hostEvent - The host event to trigger
9028
+ * @param payload - Optional payload for the event
9029
+ * @param context - Optional context (e.g. vizId) for scoped operations
9030
+ */
8878
9031
  triggerHostEvent<HostEventT extends HostEvent, PayloadT, ContextT extends ContextType>(hostEvent: HostEventT, payload?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextType>>;
8879
9032
  }
8880
9033
  class TsEmbed {
@@ -9545,7 +9698,7 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAct
9545
9698
  * @default true
9546
9699
  * @example
9547
9700
  * ```js
9548
- * // Replace <EmbedComponent> with embed component name. For example, SageEmbed, AppEmbed, or SearchBarEmbed
9701
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed, or SearchBarEmbed
9549
9702
  * const embed = new <EmbedComponent>('#tsEmbed', {
9550
9703
  * ... // other embed view config
9551
9704
  * dataPanelV2: true,
@@ -9721,6 +9874,15 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAct
9721
9874
  */
9722
9875
  export interface ConversationViewConfig extends SpotterEmbedViewConfig {
9723
9876
  }
9877
+ /**
9878
+ * APP_INIT data shape for SpotterEmbed.
9879
+ * @internal
9880
+ */
9881
+ export interface SpotterAppInitData extends DefaultAppInitData {
9882
+ embedParams?: {
9883
+ spotterSidebarConfig?: SpotterSidebarViewConfig;
9884
+ };
9885
+ }
9724
9886
  /**
9725
9887
  * Embed ThoughtSpot AI Conversation.
9726
9888
  * @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
@@ -9739,6 +9901,19 @@ export interface ConversationViewConfig extends SpotterEmbedViewConfig {
9739
9901
  export class SpotterEmbed extends TsEmbed {
9740
9902
  protected viewConfig: SpotterEmbedViewConfig;
9741
9903
  constructor(container: HTMLElement, viewConfig: SpotterEmbedViewConfig);
9904
+ /**
9905
+ * Extends the default APP_INIT payload with `embedParams.spotterSidebarConfig`
9906
+ * so the conv-assist app can read sidebar configuration on initialisation.
9907
+ *
9908
+ * Precedence for `enablePastConversationsSidebar`:
9909
+ * `spotterSidebarConfig.enablePastConversationsSidebar` wins over the
9910
+ * deprecated top-level `enablePastConversationsSidebar` flag; if the former
9911
+ * is absent the latter is used as a fallback.
9912
+ *
9913
+ * An invalid `spotterDocumentationUrl` triggers a validation error and is
9914
+ * excluded from the payload rather than forwarded to the app.
9915
+ */
9916
+ protected getAppInitData(): Promise<SpotterAppInitData>;
9742
9917
  protected getEmbedParamsObject(): Record<any, any>;
9743
9918
  getIframeSrc(): string;
9744
9919
  render(): Promise<SpotterEmbed>;
@@ -10267,21 +10442,6 @@ export interface AppViewConfig extends AllEmbedViewConfig {
10267
10442
  * @version SDK: 1.33.0 | ThoughtSpot: 10.3.0.cl
10268
10443
  */
10269
10444
  homePageSearchBarMode?: HomePageSearchBarMode;
10270
- /**
10271
- * This flag is used to enable unified search experience for full app embed.
10272
- *
10273
- * Supported embed types: `AppEmbed`
10274
- * @version SDK: 1.34.0 | ThoughtSpot: 10.5.0.cl
10275
- * @default true
10276
- * @example
10277
- * ```js
10278
- * const embed = new AppEmbed('#tsEmbed', {
10279
- * ... // other embed view config
10280
- * isUnifiedSearchExperienceEnabled: true,
10281
- * })
10282
- * ```
10283
- */
10284
- isUnifiedSearchExperienceEnabled?: boolean;
10285
10445
  /**
10286
10446
  * This flag is used to enable/disable the styling and grouping in a Liveboard. Use {@link isLiveboardMasterpiecesEnabled} instead.
10287
10447
  * @deprecated This flag is deprecated.
@@ -10316,6 +10476,24 @@ export interface AppViewConfig extends AllEmbedViewConfig {
10316
10476
  * ```
10317
10477
  */
10318
10478
  isPNGInScheduledEmailsEnabled?: boolean;
10479
+ /**
10480
+ * Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
10481
+ * following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
10482
+ * This feature is GA from version 26.5.0.cl and is enabled by default on embed deployments.
10483
+ *
10484
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
10485
+ * @type {boolean}
10486
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
10487
+ * @example
10488
+ * ```js
10489
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
10490
+ * const embed = new <EmbedComponent>('#tsEmbed', {
10491
+ * ... // other embed view config
10492
+ * isContinuousLiveboardPDFEnabled: true,
10493
+ * })
10494
+ * ```
10495
+ */
10496
+ isContinuousLiveboardPDFEnabled?: boolean;
10319
10497
  /**
10320
10498
  * This flag is used to enable/disable the XLSX/CSV download option for Liveboards
10321
10499
  *
@@ -10484,6 +10662,15 @@ export interface AppViewConfig extends AllEmbedViewConfig {
10484
10662
  */
10485
10663
  enableHomepageAnnouncement?: boolean;
10486
10664
  }
10665
+ /**
10666
+ * APP_INIT data shape for AppEmbed.
10667
+ * @internal
10668
+ */
10669
+ export interface AppEmbedAppInitData extends DefaultAppInitData {
10670
+ embedParams?: {
10671
+ spotterSidebarConfig?: SpotterSidebarViewConfig;
10672
+ };
10673
+ }
10487
10674
  /**
10488
10675
  * Embeds full ThoughtSpot experience in a host application.
10489
10676
  * @group Embed components
@@ -10492,6 +10679,19 @@ export class AppEmbed extends V1Embed {
10492
10679
  protected viewConfig: AppViewConfig;
10493
10680
  private defaultHeight;
10494
10681
  constructor(domSelector: DOMSelector, viewConfig: AppViewConfig);
10682
+ /**
10683
+ * Extends the default APP_INIT payload with `embedParams.spotterSidebarConfig`
10684
+ * so the conv-assist app can read sidebar configuration on initialisation.
10685
+ *
10686
+ * Precedence for `enablePastConversationsSidebar`:
10687
+ * `spotterSidebarConfig.enablePastConversationsSidebar` wins over the
10688
+ * deprecated top-level `enablePastConversationsSidebar` flag; if the former
10689
+ * is absent the latter is used as a fallback.
10690
+ *
10691
+ * An invalid `spotterDocumentationUrl` triggers a validation error and is
10692
+ * excluded from the payload rather than forwarded to the app.
10693
+ */
10694
+ protected getAppInitData(): Promise<AppEmbedAppInitData>;
10495
10695
  /**
10496
10696
  * Constructs a map of parameters to be passed on to the
10497
10697
  * embedded Liveboard or visualization.
@@ -10510,7 +10710,6 @@ export class AppEmbed extends V1Embed {
10510
10710
  * @param pageId The ID of the page to be embedded.
10511
10711
  */
10512
10712
  getIFrameSrc(): string;
10513
- private HEIGHT_CHANAGE_THRESHOLD;
10514
10713
  /**
10515
10714
  * Set the iframe height as per the computed height received
10516
10715
  * from the ThoughtSpot app.
@@ -11193,6 +11392,24 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
11193
11392
  * ```
11194
11393
  */
11195
11394
  isPNGInScheduledEmailsEnabled?: boolean;
11395
+ /**
11396
+ * Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
11397
+ * following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
11398
+ * This feature is GA from version 26.5.0.cl and is enabled by default on embed deployments.
11399
+ *
11400
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
11401
+ * @type {boolean}
11402
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
11403
+ * @example
11404
+ * ```js
11405
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
11406
+ * const embed = new <EmbedComponent>('#tsEmbed', {
11407
+ * ... // other embed view config
11408
+ * isContinuousLiveboardPDFEnabled: true,
11409
+ * })
11410
+ * ```
11411
+ */
11412
+ isContinuousLiveboardPDFEnabled?: boolean;
11196
11413
  /**
11197
11414
  * This flag is used to enable/disable the XLSX/CSV download option for Liveboards
11198
11415
  *
@@ -11353,7 +11570,6 @@ export class LiveboardEmbed extends V1Embed {
11353
11570
  * to be loaded within the iFrame.
11354
11571
  */
11355
11572
  private getIFrameSrc;
11356
- private HEIGHT_CHANAGE_THRESHOLD;
11357
11573
  /**
11358
11574
  * Set the iframe height as per the computed height received
11359
11575
  * from the ThoughtSpot app.
@@ -11982,157 +12198,6 @@ export type SessionInfo = {
11982
12198
  * @returns {Promise<SessionInfo>} The session info object.
11983
12199
  */
11984
12200
  export function getSessionInfo(): Promise<SessionInfo>;
11985
- interface SearchOptions$2 {
11986
- /**
11987
- * The query string to pass for Natural Language Search.
11988
- */
11989
- searchQuery: string;
11990
- /**
11991
- * Boolean to define if the search should be executed or not.
11992
- * If it is executed, the focus is placed on the results.
11993
- * If it’s not executed, the focus is placed at the end of
11994
- * the token string in the search bar.
11995
- */
11996
- executeSearch?: boolean;
11997
- }
11998
- /**
11999
- * The configuration attributes for the embedded Natural language search view. Based on
12000
- * GPT and LLM.
12001
- * @version SDK: 1.23.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
12002
- *
12003
- * Note: This embed will be deprecated from SDK: 1.40.0 | ThoughtSpot: 10.13.0.cl
12004
- * @group Embed components
12005
- */
12006
- export interface SageViewConfig extends SearchLiveboardCommonViewConfig, Omit<BaseViewConfig, "primaryAction" | "runtimeFilters" | "runtimeParameters" | "excludeRuntimeFiltersfromURL" | "excludeRuntimeParametersfromURL"> {
12007
- /**
12008
- * If set to true, a list of Liveboard and Answers related
12009
- * to the natural language search will be shown below the
12010
- * AI generated answer.
12011
- * @deprecated Currently Liveboard and Answers related
12012
- * to the natural language search will not be shown for sage
12013
- * embed
12014
- */
12015
- showObjectResults?: boolean;
12016
- /**
12017
- * flag used by the TS product tour page to show the blue search bar
12018
- * even after the search is completed. This is different from ThoughtSpot Embedded
12019
- * Sage Embed experience where it mimics closer to the non-embed case.
12020
- * The Sample questions container is collapsed when this value is set after
12021
- * does a search.
12022
- * @version SDK: 1.26.0 | ThoughtSpot: 9.8.0.cl
12023
- * @hidden
12024
- */
12025
- isProductTour?: boolean;
12026
- /**
12027
- * Show or hide the search bar title.
12028
- * @version SDK: 1.29.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
12029
- * @deprecated ThoughtSpot: 9.10.0.cl | search bar doesn't have the title from 9.10.0.cl
12030
- */
12031
- hideSearchBarTitle?: boolean;
12032
- /**
12033
- * Show or hide the Answer header, that is, the `AI Answer` title
12034
- * at the top of the Answer page.
12035
- * @version SDK: 1.26.0 | ThoughtSpot: 9.10.0.cl
12036
- */
12037
- hideSageAnswerHeader?: boolean;
12038
- /**
12039
- * Disable the data source selection option.
12040
- * @version SDK: 1.26.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
12041
- */
12042
- disableWorksheetChange?: boolean;
12043
- /**
12044
- * Hide the data source selection panel.
12045
- * @version SDK: 1.26.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
12046
- */
12047
- hideWorksheetSelector?: boolean;
12048
- /**
12049
- * Show or hide autocomplete suggestions for the search query string.
12050
- * @version SDK: 1.26.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
12051
- */
12052
- hideAutocompleteSuggestions?: boolean;
12053
- /**
12054
- * Show or hide autocomplete suggestions for the search query string.
12055
- * You can use {@link hideAutocompleteSuggestions} instead.
12056
- * @deprecated
12057
- * Currently, the object suggestions will not be shown for Natural Language Search.
12058
- */
12059
- showObjectSuggestions?: boolean;
12060
- /**
12061
- * Show or hide sample questions.
12062
- * The sample questions are autogenerated based on the data model
12063
- * selected for the search operation.
12064
- *
12065
- * Supported embed types: `SageEmbed`
12066
- * @version SDK: 1.26.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
12067
- * @example
12068
- * ```js
12069
- * const embed = new SageEmbed('#tsEmbed', {
12070
- * ... //other embed view config
12071
- * hideSampleQuestions : true,
12072
- * })
12073
- * ```
12074
- */
12075
- hideSampleQuestions?: boolean;
12076
- /**
12077
- * The data source GUID (Model GUID) to set on load.
12078
- */
12079
- dataSource?: string;
12080
- /**
12081
- * Includes the following properties:
12082
- *
12083
- * `searchQuery`: The search query string to pass in the search bar.
12084
- * Supports Natural Language Search queries.
12085
- *
12086
- * `executeSearch`: Boolean to define if the search should be executed or not.
12087
- * If it is executed, the focus is placed on the results.
12088
- * If it’s not executed, the focus is placed at the end of
12089
- * the token string in the search bar.
12090
- *
12091
- * Supported embed types: `SageEmbed`
12092
- * @version SDK: 1.26.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
12093
- * @example
12094
- * ```js
12095
- * searchOptions: {
12096
- * searchQuery: 'average sales by country and product type',
12097
- * executeSearch: true,
12098
- * }
12099
- * ```
12100
- */
12101
- searchOptions?: SearchOptions$2;
12102
- }
12103
- /**
12104
- * Embed ThoughtSpot LLM and GPT-based Natural Language Search component.
12105
- * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl, 9.5.1-sw
12106
- *
12107
- * Note: This embed will be deprecated from SDK: 1.40.0 | ThoughtSpot: 10.13.0.cl
12108
- * @group Embed components
12109
- */
12110
- export class SageEmbed extends V1Embed {
12111
- /**
12112
- * The view configuration for the embedded ThoughtSpot sage.
12113
- *
12114
- */
12115
- protected viewConfig: SageViewConfig;
12116
- constructor(domSelector: DOMSelector, viewConfig: SageViewConfig);
12117
- protected getEmbedParamsObject(): Record<any, any>;
12118
- /**
12119
- * Constructs a map of parameters to be passed on to the
12120
- * embedded Eureka or Sage search page.
12121
- * @returns {string} query string
12122
- */
12123
- protected getEmbedParams(): string;
12124
- /**
12125
- * Construct the URL of the embedded ThoughtSpot sage to be
12126
- * loaded in the iframe
12127
- * @returns {string} iframe url
12128
- */
12129
- getIFrameSrc(): string;
12130
- /**
12131
- * Render the embedded ThoughtSpot Sage
12132
- * @returns {SageEmbed} Eureka/Sage embed
12133
- */
12134
- render(): Promise<SageEmbed>;
12135
- }
12136
12201
  /**
12137
12202
  * Gets the embed configuration settings that were used to
12138
12203
  * initialize the SDK.