@thoughtspot/visual-embed-sdk 1.52.0 → 1.52.2-beta

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 (385) hide show
  1. package/cjs/package.json +19 -4
  2. package/cjs/src/contracts/contracts.spec.d.ts +2 -0
  3. package/cjs/src/contracts/contracts.spec.d.ts.map +1 -0
  4. package/cjs/src/contracts/contracts.spec.js +345 -0
  5. package/cjs/src/contracts/contracts.spec.js.map +1 -0
  6. package/cjs/src/contracts/embed-event-payloads.d.ts +73 -0
  7. package/cjs/src/contracts/embed-event-payloads.d.ts.map +1 -0
  8. package/cjs/src/contracts/embed-event-payloads.js +3 -0
  9. package/cjs/src/contracts/embed-event-payloads.js.map +1 -0
  10. package/cjs/src/contracts/host-event-contracts.d.ts +416 -0
  11. package/cjs/src/contracts/host-event-contracts.d.ts.map +1 -0
  12. package/cjs/src/contracts/host-event-contracts.js +3 -0
  13. package/cjs/src/contracts/host-event-contracts.js.map +1 -0
  14. package/cjs/src/contracts/index.d.ts +22 -0
  15. package/cjs/src/contracts/index.d.ts.map +1 -0
  16. package/cjs/src/contracts/index.js +33 -0
  17. package/cjs/src/contracts/index.js.map +1 -0
  18. package/cjs/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  19. package/cjs/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  20. package/cjs/src/{embed/hostEventClient/contracts.js → contracts/ui-passthrough-contracts.js} +6 -2
  21. package/cjs/src/contracts/ui-passthrough-contracts.js.map +1 -0
  22. package/cjs/src/embed/app.d.ts +21 -143
  23. package/cjs/src/embed/app.d.ts.map +1 -1
  24. package/cjs/src/embed/app.js +21 -121
  25. package/cjs/src/embed/app.js.map +1 -1
  26. package/cjs/src/embed/app.spec.js +80 -26
  27. package/cjs/src/embed/app.spec.js.map +1 -1
  28. package/cjs/src/embed/auto-frame-renderer.js +1 -1
  29. package/cjs/src/embed/auto-frame-renderer.js.map +1 -1
  30. package/cjs/src/embed/auto-frame-renderer.spec.js +24 -13
  31. package/cjs/src/embed/auto-frame-renderer.spec.js.map +1 -1
  32. package/cjs/src/embed/bodyless-conversation.js +1 -1
  33. package/cjs/src/embed/bodyless-conversation.js.map +1 -1
  34. package/cjs/src/embed/conversation.d.ts +1 -0
  35. package/cjs/src/embed/conversation.d.ts.map +1 -1
  36. package/cjs/src/embed/conversation.js +4 -4
  37. package/cjs/src/embed/conversation.js.map +1 -1
  38. package/cjs/src/embed/conversation.spec.js +35 -24
  39. package/cjs/src/embed/conversation.spec.js.map +1 -1
  40. package/cjs/src/embed/embedConfig.spec.js +2 -1
  41. package/cjs/src/embed/embedConfig.spec.js.map +1 -1
  42. package/cjs/src/embed/events.spec.js +12 -2
  43. package/cjs/src/embed/events.spec.js.map +1 -1
  44. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +5 -4
  45. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  46. package/cjs/src/embed/hostEventClient/host-event-client.js +34 -23
  47. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  48. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +50 -44
  49. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  50. package/cjs/src/embed/hostEventClient/utils.d.ts +10 -1
  51. package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -1
  52. package/cjs/src/embed/hostEventClient/utils.js +52 -6
  53. package/cjs/src/embed/hostEventClient/utils.js.map +1 -1
  54. package/cjs/src/embed/hostEventClient/utils.spec.js +151 -0
  55. package/cjs/src/embed/hostEventClient/utils.spec.js.map +1 -1
  56. package/cjs/src/embed/liveboard.d.ts +13 -164
  57. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  58. package/cjs/src/embed/liveboard.js +72 -135
  59. package/cjs/src/embed/liveboard.js.map +1 -1
  60. package/cjs/src/embed/liveboard.spec.js +213 -29
  61. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  62. package/cjs/src/embed/search-bar.js +1 -1
  63. package/cjs/src/embed/search-bar.js.map +1 -1
  64. package/cjs/src/embed/search.d.ts +14 -0
  65. package/cjs/src/embed/search.d.ts.map +1 -1
  66. package/cjs/src/embed/search.js +5 -2
  67. package/cjs/src/embed/search.js.map +1 -1
  68. package/cjs/src/embed/search.spec.js +85 -0
  69. package/cjs/src/embed/search.spec.js.map +1 -1
  70. package/cjs/src/embed/spotter-utils.d.ts +8 -1
  71. package/cjs/src/embed/spotter-utils.d.ts.map +1 -1
  72. package/cjs/src/embed/spotter-utils.js +14 -1
  73. package/cjs/src/embed/spotter-utils.js.map +1 -1
  74. package/cjs/src/embed/spotter-utils.spec.js +26 -0
  75. package/cjs/src/embed/spotter-utils.spec.js.map +1 -1
  76. package/cjs/src/embed/ts-embed.d.ts +20 -22
  77. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  78. package/cjs/src/embed/ts-embed.js +171 -66
  79. package/cjs/src/embed/ts-embed.js.map +1 -1
  80. package/cjs/src/embed/ts-embed.spec.js +486 -38
  81. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  82. package/cjs/src/errors.js +1 -1
  83. package/cjs/src/errors.js.map +1 -1
  84. package/cjs/src/full-height.d.ts +137 -0
  85. package/cjs/src/full-height.d.ts.map +1 -0
  86. package/cjs/src/full-height.js +272 -0
  87. package/cjs/src/full-height.js.map +1 -0
  88. package/cjs/src/full-height.spec.d.ts +2 -0
  89. package/cjs/src/full-height.spec.d.ts.map +1 -0
  90. package/cjs/src/full-height.spec.js +835 -0
  91. package/cjs/src/full-height.spec.js.map +1 -0
  92. package/cjs/src/index.d.ts +5 -3
  93. package/cjs/src/index.d.ts.map +1 -1
  94. package/cjs/src/index.js +6 -4
  95. package/cjs/src/index.js.map +1 -1
  96. package/cjs/src/react/all-types-export.d.ts +1 -1
  97. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  98. package/cjs/src/react/all-types-export.js +2 -1
  99. package/cjs/src/react/all-types-export.js.map +1 -1
  100. package/cjs/src/react/all-types-export.parity.spec.js +55 -3
  101. package/cjs/src/react/all-types-export.parity.spec.js.map +1 -1
  102. package/cjs/src/types.d.ts +584 -24
  103. package/cjs/src/types.d.ts.map +1 -1
  104. package/cjs/src/types.js +370 -22
  105. package/cjs/src/types.js.map +1 -1
  106. package/cjs/src/utils/authService/tokenizedAuthService.spec.js +2 -1
  107. package/cjs/src/utils/authService/tokenizedAuthService.spec.js.map +1 -1
  108. package/cjs/src/utils/custom-actions.spec.js +4 -2
  109. package/cjs/src/utils/custom-actions.spec.js.map +1 -1
  110. package/cjs/src/utils/filterConverter.d.ts +106 -0
  111. package/cjs/src/utils/filterConverter.d.ts.map +1 -0
  112. package/cjs/src/utils/filterConverter.js +215 -0
  113. package/cjs/src/utils/filterConverter.js.map +1 -0
  114. package/cjs/src/utils/filterConverter.spec.d.ts +2 -0
  115. package/cjs/src/utils/filterConverter.spec.d.ts.map +1 -0
  116. package/cjs/src/utils/filterConverter.spec.js +709 -0
  117. package/cjs/src/utils/filterConverter.spec.js.map +1 -0
  118. package/cjs/src/utils/processData.spec.js +2 -1
  119. package/cjs/src/utils/processData.spec.js.map +1 -1
  120. package/cjs/src/utils/processTrigger.d.ts +3 -1
  121. package/cjs/src/utils/processTrigger.d.ts.map +1 -1
  122. package/cjs/src/utils/processTrigger.js +19 -51
  123. package/cjs/src/utils/processTrigger.js.map +1 -1
  124. package/cjs/src/utils/transport/iframe-transport.d.ts +55 -0
  125. package/cjs/src/utils/transport/iframe-transport.d.ts.map +1 -0
  126. package/cjs/src/utils/transport/iframe-transport.js +108 -0
  127. package/cjs/src/utils/transport/iframe-transport.js.map +1 -0
  128. package/cjs/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  129. package/cjs/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  130. package/cjs/src/utils/transport/iframe-transport.spec.js +140 -0
  131. package/cjs/src/utils/transport/iframe-transport.spec.js.map +1 -0
  132. package/cjs/src/utils.d.ts +18 -0
  133. package/cjs/src/utils.d.ts.map +1 -1
  134. package/cjs/src/utils.js +39 -1
  135. package/cjs/src/utils.js.map +1 -1
  136. package/cjs/src/utils.spec.js +62 -0
  137. package/cjs/src/utils.spec.js.map +1 -1
  138. package/dist/{index-BMppCU63.js → index-CcBYlGo9.js} +1 -1
  139. package/dist/src/contracts/contracts.spec.d.ts +2 -0
  140. package/dist/src/contracts/contracts.spec.d.ts.map +1 -0
  141. package/dist/src/contracts/embed-event-payloads.d.ts +73 -0
  142. package/dist/src/contracts/embed-event-payloads.d.ts.map +1 -0
  143. package/dist/src/contracts/host-event-contracts.d.ts +416 -0
  144. package/dist/src/contracts/host-event-contracts.d.ts.map +1 -0
  145. package/dist/src/contracts/index.d.ts +22 -0
  146. package/dist/src/contracts/index.d.ts.map +1 -0
  147. package/dist/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  148. package/dist/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  149. package/dist/src/embed/app.d.ts +21 -143
  150. package/dist/src/embed/app.d.ts.map +1 -1
  151. package/dist/src/embed/conversation.d.ts +1 -0
  152. package/dist/src/embed/conversation.d.ts.map +1 -1
  153. package/dist/src/embed/hostEventClient/host-event-client.d.ts +5 -4
  154. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  155. package/dist/src/embed/hostEventClient/utils.d.ts +10 -1
  156. package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -1
  157. package/dist/src/embed/liveboard.d.ts +13 -164
  158. package/dist/src/embed/liveboard.d.ts.map +1 -1
  159. package/dist/src/embed/search.d.ts +14 -0
  160. package/dist/src/embed/search.d.ts.map +1 -1
  161. package/dist/src/embed/spotter-utils.d.ts +8 -1
  162. package/dist/src/embed/spotter-utils.d.ts.map +1 -1
  163. package/dist/src/embed/ts-embed.d.ts +20 -22
  164. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  165. package/dist/src/full-height.d.ts +137 -0
  166. package/dist/src/full-height.d.ts.map +1 -0
  167. package/dist/src/full-height.spec.d.ts +2 -0
  168. package/dist/src/full-height.spec.d.ts.map +1 -0
  169. package/dist/src/index.d.ts +5 -3
  170. package/dist/src/index.d.ts.map +1 -1
  171. package/dist/src/react/all-types-export.d.ts +1 -1
  172. package/dist/src/react/all-types-export.d.ts.map +1 -1
  173. package/dist/src/types.d.ts +584 -24
  174. package/dist/src/types.d.ts.map +1 -1
  175. package/dist/src/utils/filterConverter.d.ts +106 -0
  176. package/dist/src/utils/filterConverter.d.ts.map +1 -0
  177. package/dist/src/utils/filterConverter.spec.d.ts +2 -0
  178. package/dist/src/utils/filterConverter.spec.d.ts.map +1 -0
  179. package/dist/src/utils/processTrigger.d.ts +3 -1
  180. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  181. package/dist/src/utils/transport/iframe-transport.d.ts +55 -0
  182. package/dist/src/utils/transport/iframe-transport.d.ts.map +1 -0
  183. package/dist/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  184. package/dist/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  185. package/dist/src/utils.d.ts +18 -0
  186. package/dist/src/utils.d.ts.map +1 -1
  187. package/dist/tsembed-react.es.js +1144 -412
  188. package/dist/tsembed-react.js +1143 -411
  189. package/dist/tsembed.es.js +1357 -418
  190. package/dist/tsembed.js +1352 -412
  191. package/dist/visual-embed-sdk-react-full.d.ts +1514 -651
  192. package/dist/visual-embed-sdk-react.d.ts +1351 -632
  193. package/dist/visual-embed-sdk.d.ts +1508 -668
  194. package/lib/package.json +19 -4
  195. package/lib/src/contracts/contracts.spec.d.ts +2 -0
  196. package/lib/src/contracts/contracts.spec.d.ts.map +1 -0
  197. package/lib/src/contracts/contracts.spec.js +342 -0
  198. package/lib/src/contracts/contracts.spec.js.map +1 -0
  199. package/lib/src/contracts/embed-event-payloads.d.ts +73 -0
  200. package/lib/src/contracts/embed-event-payloads.d.ts.map +1 -0
  201. package/lib/src/contracts/embed-event-payloads.js +2 -0
  202. package/lib/src/contracts/embed-event-payloads.js.map +1 -0
  203. package/lib/src/contracts/host-event-contracts.d.ts +416 -0
  204. package/lib/src/contracts/host-event-contracts.d.ts.map +1 -0
  205. package/lib/src/contracts/host-event-contracts.js +2 -0
  206. package/lib/src/contracts/host-event-contracts.js.map +1 -0
  207. package/lib/src/contracts/index.d.ts +22 -0
  208. package/lib/src/contracts/index.d.ts.map +1 -0
  209. package/lib/src/contracts/index.js +22 -0
  210. package/lib/src/contracts/index.js.map +1 -0
  211. package/lib/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  212. package/lib/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  213. package/lib/src/{embed/hostEventClient/contracts.js → contracts/ui-passthrough-contracts.js} +6 -2
  214. package/lib/src/contracts/ui-passthrough-contracts.js.map +1 -0
  215. package/lib/src/embed/app.d.ts +21 -143
  216. package/lib/src/embed/app.d.ts.map +1 -1
  217. package/lib/src/embed/app.js +23 -123
  218. package/lib/src/embed/app.js.map +1 -1
  219. package/lib/src/embed/app.spec.js +80 -26
  220. package/lib/src/embed/app.spec.js.map +1 -1
  221. package/lib/src/embed/auto-frame-renderer.js +1 -1
  222. package/lib/src/embed/auto-frame-renderer.js.map +1 -1
  223. package/lib/src/embed/auto-frame-renderer.spec.js +24 -13
  224. package/lib/src/embed/auto-frame-renderer.spec.js.map +1 -1
  225. package/lib/src/embed/bodyless-conversation.js +1 -1
  226. package/lib/src/embed/bodyless-conversation.js.map +1 -1
  227. package/lib/src/embed/conversation.d.ts +1 -0
  228. package/lib/src/embed/conversation.d.ts.map +1 -1
  229. package/lib/src/embed/conversation.js +5 -5
  230. package/lib/src/embed/conversation.js.map +1 -1
  231. package/lib/src/embed/conversation.spec.js +35 -24
  232. package/lib/src/embed/conversation.spec.js.map +1 -1
  233. package/lib/src/embed/embedConfig.spec.js +2 -1
  234. package/lib/src/embed/embedConfig.spec.js.map +1 -1
  235. package/lib/src/embed/events.spec.js +12 -2
  236. package/lib/src/embed/events.spec.js.map +1 -1
  237. package/lib/src/embed/hostEventClient/host-event-client.d.ts +5 -4
  238. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  239. package/lib/src/embed/hostEventClient/host-event-client.js +19 -8
  240. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  241. package/lib/src/embed/hostEventClient/host-event-client.spec.js +15 -9
  242. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  243. package/lib/src/embed/hostEventClient/utils.d.ts +10 -1
  244. package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -1
  245. package/lib/src/embed/hostEventClient/utils.js +48 -3
  246. package/lib/src/embed/hostEventClient/utils.js.map +1 -1
  247. package/lib/src/embed/hostEventClient/utils.spec.js +152 -1
  248. package/lib/src/embed/hostEventClient/utils.spec.js.map +1 -1
  249. package/lib/src/embed/liveboard.d.ts +13 -164
  250. package/lib/src/embed/liveboard.d.ts.map +1 -1
  251. package/lib/src/embed/liveboard.js +73 -136
  252. package/lib/src/embed/liveboard.js.map +1 -1
  253. package/lib/src/embed/liveboard.spec.js +213 -29
  254. package/lib/src/embed/liveboard.spec.js.map +1 -1
  255. package/lib/src/embed/search-bar.js +1 -1
  256. package/lib/src/embed/search-bar.js.map +1 -1
  257. package/lib/src/embed/search.d.ts +14 -0
  258. package/lib/src/embed/search.d.ts.map +1 -1
  259. package/lib/src/embed/search.js +5 -2
  260. package/lib/src/embed/search.js.map +1 -1
  261. package/lib/src/embed/search.spec.js +85 -0
  262. package/lib/src/embed/search.spec.js.map +1 -1
  263. package/lib/src/embed/spotter-utils.d.ts +8 -1
  264. package/lib/src/embed/spotter-utils.d.ts.map +1 -1
  265. package/lib/src/embed/spotter-utils.js +12 -0
  266. package/lib/src/embed/spotter-utils.js.map +1 -1
  267. package/lib/src/embed/spotter-utils.spec.js +27 -1
  268. package/lib/src/embed/spotter-utils.spec.js.map +1 -1
  269. package/lib/src/embed/ts-embed.d.ts +20 -22
  270. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  271. package/lib/src/embed/ts-embed.js +171 -66
  272. package/lib/src/embed/ts-embed.js.map +1 -1
  273. package/lib/src/embed/ts-embed.spec.js +484 -36
  274. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  275. package/lib/src/errors.js +1 -1
  276. package/lib/src/errors.js.map +1 -1
  277. package/lib/src/full-height.d.ts +137 -0
  278. package/lib/src/full-height.d.ts.map +1 -0
  279. package/lib/src/full-height.js +268 -0
  280. package/lib/src/full-height.js.map +1 -0
  281. package/lib/src/full-height.spec.d.ts +2 -0
  282. package/lib/src/full-height.spec.d.ts.map +1 -0
  283. package/lib/src/full-height.spec.js +833 -0
  284. package/lib/src/full-height.spec.js.map +1 -0
  285. package/lib/src/index.d.ts +5 -3
  286. package/lib/src/index.d.ts.map +1 -1
  287. package/lib/src/index.js +3 -2
  288. package/lib/src/index.js.map +1 -1
  289. package/lib/src/react/all-types-export.d.ts +1 -1
  290. package/lib/src/react/all-types-export.d.ts.map +1 -1
  291. package/lib/src/react/all-types-export.js +1 -1
  292. package/lib/src/react/all-types-export.js.map +1 -1
  293. package/lib/src/react/all-types-export.parity.spec.js +55 -3
  294. package/lib/src/react/all-types-export.parity.spec.js.map +1 -1
  295. package/lib/src/types.d.ts +584 -24
  296. package/lib/src/types.d.ts.map +1 -1
  297. package/lib/src/types.js +370 -22
  298. package/lib/src/types.js.map +1 -1
  299. package/lib/src/utils/authService/tokenizedAuthService.spec.js +2 -1
  300. package/lib/src/utils/authService/tokenizedAuthService.spec.js.map +1 -1
  301. package/lib/src/utils/custom-actions.spec.js +4 -2
  302. package/lib/src/utils/custom-actions.spec.js.map +1 -1
  303. package/lib/src/utils/filterConverter.d.ts +106 -0
  304. package/lib/src/utils/filterConverter.d.ts.map +1 -0
  305. package/lib/src/utils/filterConverter.js +210 -0
  306. package/lib/src/utils/filterConverter.js.map +1 -0
  307. package/lib/src/utils/filterConverter.spec.d.ts +2 -0
  308. package/lib/src/utils/filterConverter.spec.d.ts.map +1 -0
  309. package/lib/src/utils/filterConverter.spec.js +707 -0
  310. package/lib/src/utils/filterConverter.spec.js.map +1 -0
  311. package/lib/src/utils/processData.spec.js +2 -1
  312. package/lib/src/utils/processData.spec.js.map +1 -1
  313. package/lib/src/utils/processTrigger.d.ts +3 -1
  314. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  315. package/lib/src/utils/processTrigger.js +19 -51
  316. package/lib/src/utils/processTrigger.js.map +1 -1
  317. package/lib/src/utils/transport/iframe-transport.d.ts +55 -0
  318. package/lib/src/utils/transport/iframe-transport.d.ts.map +1 -0
  319. package/lib/src/utils/transport/iframe-transport.js +101 -0
  320. package/lib/src/utils/transport/iframe-transport.js.map +1 -0
  321. package/lib/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  322. package/lib/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  323. package/lib/src/utils/transport/iframe-transport.spec.js +138 -0
  324. package/lib/src/utils/transport/iframe-transport.spec.js.map +1 -0
  325. package/lib/src/utils.d.ts +18 -0
  326. package/lib/src/utils.d.ts.map +1 -1
  327. package/lib/src/utils.js +37 -0
  328. package/lib/src/utils.js.map +1 -1
  329. package/lib/src/utils.spec.js +63 -1
  330. package/lib/src/utils.spec.js.map +1 -1
  331. package/lib/src/visual-embed-sdk.d.ts +1508 -668
  332. package/package.json +19 -4
  333. package/src/contracts/contracts.spec.ts +392 -0
  334. package/src/contracts/embed-event-payloads.ts +83 -0
  335. package/src/contracts/host-event-contracts.ts +500 -0
  336. package/src/contracts/index.ts +53 -0
  337. package/src/contracts/ui-passthrough-contracts.ts +301 -0
  338. package/src/embed/app.spec.ts +101 -34
  339. package/src/embed/app.ts +42 -268
  340. package/src/embed/auto-frame-renderer.spec.ts +24 -13
  341. package/src/embed/auto-frame-renderer.ts +1 -1
  342. package/src/embed/bodyless-conversation.ts +1 -1
  343. package/src/embed/conversation.spec.ts +38 -27
  344. package/src/embed/conversation.ts +5 -5
  345. package/src/embed/embedConfig.spec.ts +2 -1
  346. package/src/embed/events.spec.ts +14 -2
  347. package/src/embed/hostEventClient/host-event-client.spec.ts +16 -10
  348. package/src/embed/hostEventClient/host-event-client.ts +31 -10
  349. package/src/embed/hostEventClient/utils.spec.ts +176 -1
  350. package/src/embed/hostEventClient/utils.ts +53 -3
  351. package/src/embed/liveboard.spec.ts +261 -41
  352. package/src/embed/liveboard.ts +85 -300
  353. package/src/embed/search-bar.tsx +1 -1
  354. package/src/embed/search.spec.ts +103 -0
  355. package/src/embed/search.ts +21 -1
  356. package/src/embed/spotter-utils.spec.ts +29 -0
  357. package/src/embed/spotter-utils.ts +16 -0
  358. package/src/embed/ts-embed.spec.ts +650 -36
  359. package/src/embed/ts-embed.ts +205 -76
  360. package/src/errors.ts +1 -1
  361. package/src/full-height.spec.ts +1008 -0
  362. package/src/full-height.ts +361 -0
  363. package/src/index.ts +103 -5
  364. package/src/react/all-types-export.parity.spec.ts +63 -3
  365. package/src/react/all-types-export.ts +49 -0
  366. package/src/types.ts +584 -22
  367. package/src/utils/authService/tokenizedAuthService.spec.ts +2 -1
  368. package/src/utils/custom-actions.spec.ts +4 -2
  369. package/src/utils/filterConverter.spec.ts +801 -0
  370. package/src/utils/filterConverter.ts +304 -0
  371. package/src/utils/processData.spec.ts +2 -1
  372. package/src/utils/processTrigger.ts +28 -58
  373. package/src/utils/transport/iframe-transport.spec.ts +177 -0
  374. package/src/utils/transport/iframe-transport.ts +122 -0
  375. package/src/utils.spec.ts +71 -0
  376. package/src/utils.ts +38 -0
  377. package/cjs/src/embed/hostEventClient/contracts.d.ts +0 -231
  378. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  379. package/cjs/src/embed/hostEventClient/contracts.js.map +0 -1
  380. package/dist/src/embed/hostEventClient/contracts.d.ts +0 -231
  381. package/dist/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  382. package/lib/src/embed/hostEventClient/contracts.d.ts +0 -231
  383. package/lib/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  384. package/lib/src/embed/hostEventClient/contracts.js.map +0 -1
  385. package/src/embed/hostEventClient/contracts.ts +0 -262
package/src/types.ts CHANGED
@@ -8,6 +8,8 @@
8
8
 
9
9
  import { CustomCssVariables } from './css-variables';
10
10
  import type { SessionInterface } from './utils/graphql/answerService/answerService';
11
+ // Type-only: avoids a runtime import cycle with the contracts barrel.
12
+ import type { Applicability } from './contracts/ui-passthrough-contracts';
11
13
 
12
14
  /**
13
15
  * The authentication mechanism for allowing access to
@@ -2531,6 +2533,15 @@ export interface RuntimeParameter {
2531
2533
  * Values
2532
2534
  */
2533
2535
  value: number | boolean | string;
2536
+ /**
2537
+ * Whether the parameter is visible to the user (`UpdateParameters` only).
2538
+ */
2539
+ isVisibleToUser?: boolean;
2540
+ /**
2541
+ * Scope of the update (`UpdateParameters` only). Omitting it, or `level`,
2542
+ * targets the Liveboard level.
2543
+ */
2544
+ applicability?: Applicability;
2534
2545
  }
2535
2546
 
2536
2547
  /**
@@ -2986,6 +2997,9 @@ export enum EmbedEvent {
2986
2997
  Download = 'download',
2987
2998
  /**
2988
2999
  * Emitted when the download action is triggered on an Answer.
3000
+ * Payload varies by context: {@link VizScopedRequest} (Search, Answer,
3001
+ * Liveboard), {@link RequiredVizRequest} (Spotter, vizId required). trigger()
3002
+ * accepts the union now; per-context enforced next release.
2989
3003
  * Use start:true to subscribe to when download is initiated, or end:true to
2990
3004
  * subscribe to when download is completed. Default is end:true.
2991
3005
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.4.0.sw
@@ -3002,6 +3016,9 @@ export enum EmbedEvent {
3002
3016
  DownloadAsPng = 'downloadAsPng',
3003
3017
  /**
3004
3018
  * Emitted when the Download as PDF action is triggered on an Answer
3019
+ * Payload varies by context: {@link VizScopedRequest} (Search, Answer; plus
3020
+ * liveboardId on Liveboard), {@link RequiredVizRequest} (Spotter). trigger()
3021
+ * accepts the union now; per-context enforced next release.
3005
3022
  * Use start:true to subscribe to when download as PDF is initiated, or end:true to
3006
3023
  * subscribe to when download as PDF is completed. Default is end:true.
3007
3024
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
@@ -3018,6 +3035,9 @@ export enum EmbedEvent {
3018
3035
  DownloadAsPdf = 'downloadAsPdf',
3019
3036
  /**
3020
3037
  * Emitted when the Download as CSV action is triggered on an Answer.
3038
+ * Payload varies by context: {@link VizScopedRequest} (Search, Answer,
3039
+ * Liveboard), {@link RequiredVizRequest} (Spotter, vizId required). trigger()
3040
+ * accepts the union now; per-context enforced next release.
3021
3041
  * Use start:true to subscribe to when download as CSV is initiated, or end:true to
3022
3042
  * subscribe to when download as CSV is completed. Default is end:true.
3023
3043
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
@@ -3034,6 +3054,9 @@ export enum EmbedEvent {
3034
3054
  DownloadAsCsv = 'downloadAsCsv',
3035
3055
  /**
3036
3056
  * Emitted when the Download as XLSX action is triggered on an Answer.
3057
+ * Payload varies by context: {@link VizScopedRequest} (Search, Answer,
3058
+ * Liveboard), {@link RequiredVizRequest} (Spotter, vizId required). trigger()
3059
+ * accepts the union now; per-context enforced next release.
3037
3060
  * Use start:true to subscribe to when download as XLSX is initiated, or end:true to
3038
3061
  * subscribe to when download as XLSX is completed. Default is end:true.
3039
3062
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
@@ -3312,6 +3335,9 @@ export enum EmbedEvent {
3312
3335
  Schedule = 'subscription',
3313
3336
  /**
3314
3337
  * Emitted when a user clicks **Edit** on a Liveboard or visualization
3338
+ * Payload varies by context: {@link VizScopedRequest} (Liveboard),
3339
+ * {@link RequiredVizRequest} (Spotter, vizId required). trigger() accepts the
3340
+ * union now; per-context enforced next release.
3315
3341
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
3316
3342
  * @example
3317
3343
  * ```js
@@ -4404,6 +4430,7 @@ export enum HostEvent {
4404
4430
  * the search query string.
4405
4431
  * Supported in `AppEmbed` and `SearchEmbed` deployments.
4406
4432
  * Includes the following properties:
4433
+ * Payload: {@link SearchRequest}.
4407
4434
  * @param - Includes the following keys:
4408
4435
  * - `searchQuery`: Query string with search tokens.
4409
4436
  * - `dataSources`: Data source GUID to search on.
@@ -4431,6 +4458,9 @@ export enum HostEvent {
4431
4458
  Search = 'search',
4432
4459
  /**
4433
4460
  * Triggers a drill on certain points of the specified column
4461
+ * Payload: {@link DrillDownRequest}; in Liveboard context vizId is required
4462
+ * ({@link RequiredVizRequest}). trigger() accepts the union now; per-context
4463
+ * enforced next release.
4434
4464
  * Includes the following properties:
4435
4465
  * @param - Includes the following keys:
4436
4466
  * - `points`: An object containing `selectedPoints` and/or `clickedPoint`
@@ -4510,6 +4540,8 @@ export enum HostEvent {
4510
4540
  Reload = 'reload',
4511
4541
  /**
4512
4542
  * Get iframe URL for the current embed view.
4543
+ * Payload: none.
4544
+ * Response: {@link GetIframeUrlResponse}.
4513
4545
  * @example
4514
4546
  * ```js
4515
4547
  * const url = embed.trigger(HostEvent.GetIframeUrl);
@@ -4528,6 +4560,7 @@ export enum HostEvent {
4528
4560
  GetIframeUrl = 'GetIframeUrl',
4529
4561
  /**
4530
4562
  * Display specific visualizations on a Liveboard.
4563
+ * Payload: `string[]`.
4531
4564
  * @param - An array of GUIDs of the visualization to show. The visualization IDs not passed
4532
4565
  * in this parameter will be hidden.
4533
4566
  * @example
@@ -4550,6 +4583,7 @@ export enum HostEvent {
4550
4583
  SetVisibleVizs = 'SetPinboardVisibleVizs',
4551
4584
  /**
4552
4585
  * Set a Liveboard tab as an active tab.
4586
+ * Payload: {@link SetActiveTabRequest}.
4553
4587
  * @param - tabId - string of id of Tab to show
4554
4588
  * @example
4555
4589
  * ```js
@@ -4577,6 +4611,7 @@ export enum HostEvent {
4577
4611
  * and `AppEmbed` only. In full application embedding, this event updates
4578
4612
  * the runtime filters applied on the Liveboard and saved Answer objects.
4579
4613
  *
4614
+ * Payload: {@link RuntimeFilter}[].
4580
4615
  * @param - Array of {@link RuntimeFilter} objects. Each item includes:
4581
4616
  * - `columnName`: Name of the column to filter on.
4582
4617
  * - `operator`: {@link RuntimeFilterOp} to apply. For more information, see
@@ -4618,6 +4653,7 @@ export enum HostEvent {
4618
4653
  * Accepts either a plain value or an object with `path`
4619
4654
  * and an optional `replace` flag.
4620
4655
  *
4656
+ * Payload: `string` | `number` | {@link NavigateRequest}.
4621
4657
  * @param data - A string path, a numeric history delta, or an object
4622
4658
  * `{ path: string | number, replace?: boolean }`.
4623
4659
  * - `path` — the route to navigate to, or a history delta such as `1`
@@ -4645,6 +4681,9 @@ export enum HostEvent {
4645
4681
  /**
4646
4682
  * Open the filter panel for a particular column.
4647
4683
  * Works with Search and Liveboard embed.
4684
+ * Payload: {@link OpenFilterRequest} (the cross-context superset). The
4685
+ * accepted fields vary by context: {@link OpenFilterLiveboardRequest},
4686
+ * {@link OpenFilterSpotterRequest}, {@link OpenFilterSearchRequest}.
4648
4687
  * @param - { columnId: string,
4649
4688
  * name: string,
4650
4689
  * type: ATTRIBUTE/MEASURE,
@@ -4727,6 +4766,7 @@ export enum HostEvent {
4727
4766
  /**
4728
4767
  * Open the parameter panel for a particular parameter on a Liveboard.
4729
4768
  * Mirrors {@link HostEvent.OpenFilter} for parameters.
4769
+ * Payload: {@link OpenParameterRequest}.
4730
4770
  * @param - Includes the following keys:
4731
4771
  * - `parameter`: An object identifying the parameter to open, for
4732
4772
  * example, `{ parameterId: '<parameter-GUID>' }`.
@@ -4758,6 +4798,7 @@ export enum HostEvent {
4758
4798
  OpenParameter = 'openParameter',
4759
4799
  /**
4760
4800
  * Add columns to the current search query.
4801
+ * Payload: `{ columnIds: string[] }`.
4761
4802
  * @param - { columnIds: string[] }
4762
4803
  * @example
4763
4804
  * ```js
@@ -4776,6 +4817,7 @@ export enum HostEvent {
4776
4817
  AddColumns = 'addColumns',
4777
4818
  /**
4778
4819
  * Remove a column from the current search query.
4820
+ * Payload: `{ columnId: string }`.
4779
4821
  * @param - { columnId: string }
4780
4822
  * @example
4781
4823
  * ```js
@@ -4800,6 +4842,8 @@ export enum HostEvent {
4800
4842
  * sorting, toggling of legends, and data drill down.
4801
4843
  * For more information, see
4802
4844
  * link:https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#transient-lb-content[Liveboard data with unsaved changes].
4845
+ * Payload: none.
4846
+ * Response: {@link GetExportRequestForCurrentPinboardResponse}.
4803
4847
  * @example
4804
4848
  * ```js
4805
4849
  * liveboardEmbed.trigger(HostEvent.getExportRequestForCurrentPinboard).then(
@@ -4821,6 +4865,8 @@ export enum HostEvent {
4821
4865
  * requiring additional user input via the *Pin to Liveboard* modal, define
4822
4866
  * the following parameters:
4823
4867
  *
4868
+ * Payload: {@link PinAnswerToLiveboardRequest}.
4869
+ * Response: {@link PinAnswerToLiveboardResponse}.
4824
4870
  * @param - Includes the following keys:
4825
4871
  * - `vizId`: GUID of the saved Answer or Spotter visualization ID to pin to a
4826
4872
  * Liveboard.
@@ -4935,6 +4981,7 @@ export enum HostEvent {
4935
4981
  LiveboardInfo = 'pinboardInfo',
4936
4982
  /**
4937
4983
  * Trigger the **Schedule** action on an embedded Liveboard.
4984
+ * Payload: {@link VizScopedRequest}.
4938
4985
  * @example
4939
4986
  * ```js
4940
4987
  * liveboardEmbed.trigger(HostEvent.Schedule)
@@ -4950,6 +4997,7 @@ export enum HostEvent {
4950
4997
  Schedule = 'subscription',
4951
4998
  /**
4952
4999
  * Trigger the **Manage schedule** action on an embedded Liveboard
5000
+ * Payload: {@link VizScopedRequest}.
4953
5001
  * @example
4954
5002
  * ```js
4955
5003
  * liveboardEmbed.trigger(HostEvent.SchedulesList)
@@ -4966,6 +5014,7 @@ export enum HostEvent {
4966
5014
  /**
4967
5015
  * Trigger the **Export TML** action on an embedded Liveboard or
4968
5016
  * Answer.
5017
+ * Payload: {@link VizScopedRequest}.
4969
5018
  * @example
4970
5019
  * ```js
4971
5020
  * liveboardEmbed.trigger(HostEvent.ExportTML)
@@ -4988,6 +5037,7 @@ export enum HostEvent {
4988
5037
  /**
4989
5038
  * Trigger the **Edit TML** action on an embedded Liveboard or
4990
5039
  * saved Answers in the full application embedding.
5040
+ * Payload: {@link VizScopedRequest}.
4991
5041
  * @example
4992
5042
  * ```js
4993
5043
  * liveboardEmbed.trigger(HostEvent.EditTML)
@@ -5009,6 +5059,7 @@ export enum HostEvent {
5009
5059
  EditTML = 'editTSL',
5010
5060
  /**
5011
5061
  * Trigger the **Update TML** action on an embedded Liveboard.
5062
+ * Payload: {@link VizScopedRequest}.
5012
5063
  * @example
5013
5064
  * ```js
5014
5065
  * liveboardEmbed.trigger(HostEvent.UpdateTML)
@@ -5026,6 +5077,7 @@ export enum HostEvent {
5026
5077
  * Trigger the **Download PDF** action on an embedded Liveboard,
5027
5078
  * visualization or Answer.
5028
5079
  *
5080
+ * Payload: {@link VizScopedRequest} plus optional `liveboardId`.
5029
5081
  * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
5030
5082
  *
5031
5083
  * **NOTE**: The **Download** > **PDF** action is available on
@@ -5076,6 +5128,7 @@ export enum HostEvent {
5076
5128
  /**
5077
5129
  * Trigger the **AI Highlights** action on an embedded Liveboard
5078
5130
  *
5131
+ * Payload: none.
5079
5132
  * @example
5080
5133
  * ```js
5081
5134
  * liveboardEmbed.trigger(HostEvent.AIHighlights)
@@ -5130,6 +5183,9 @@ export enum HostEvent {
5130
5183
  MakeACopy = 'makeACopy',
5131
5184
  /**
5132
5185
  * Trigger the **Delete** action for a Liveboard.
5186
+ * Payload varies by context: {@link RequiredVizRequest} (Liveboard, vizId
5187
+ * required), {@link VizScopedRequest} (Search). trigger() accepts the union
5188
+ * now; per-context enforced next release.
5133
5189
  * @example
5134
5190
  * ```js
5135
5191
  * appEmbed.trigger(HostEvent.Remove)
@@ -5144,6 +5200,7 @@ export enum HostEvent {
5144
5200
  Remove = 'delete',
5145
5201
  /**
5146
5202
  * Trigger the **Explore** action on a visualization.
5203
+ * Payload: {@link RequiredVizRequest}.
5147
5204
  * @param - an object with `vizId` as a key
5148
5205
  * @example
5149
5206
  * ```js
@@ -5163,6 +5220,7 @@ export enum HostEvent {
5163
5220
  /**
5164
5221
  * Trigger the **Create alert** action on a KPI chart
5165
5222
  * in a Liveboard or saved Answer.
5223
+ * Payload: {@link VizScopedRequest}.
5166
5224
  * @param - an object with `vizId` as a key
5167
5225
  * @example
5168
5226
  * ```js
@@ -5194,6 +5252,7 @@ export enum HostEvent {
5194
5252
  /**
5195
5253
  * Trigger the **Manage alerts** action on a KPI chart
5196
5254
  * in a visualization or saved Answer.
5255
+ * Payload: {@link VizScopedRequest}.
5197
5256
  * @param - an object with `vizId` as a key
5198
5257
  * @example
5199
5258
  * ```js
@@ -5231,6 +5290,7 @@ export enum HostEvent {
5231
5290
  * on a Liveboard.
5232
5291
  *
5233
5292
  * This event is not supported in visualization embed and search embed.
5293
+ * Payload: {@link VizScopedRequest}.
5234
5294
  * @param - Object parameter. Includes the following keys:
5235
5295
  * - `vizId`: To trigger the action for a specific visualization in Liveboard embed,
5236
5296
  * pass in `vizId` as a key. In Spotter embed, `vizId` refers to the Answer ID and
@@ -5273,6 +5333,7 @@ export enum HostEvent {
5273
5333
  Edit = 'edit',
5274
5334
  /**
5275
5335
  * Trigger the **Copy link** action on a Liveboard or visualization
5336
+ * Payload: {@link VizScopedRequest}.
5276
5337
  * @param - object - to trigger the action for a
5277
5338
  * specific visualization in Liveboard embed, pass in `vizId` as a key
5278
5339
  * @example
@@ -5318,6 +5379,7 @@ export enum HostEvent {
5318
5379
  CopyLink = 'embedDocument',
5319
5380
  /**
5320
5381
  * Trigger the **Present** action on a Liveboard or visualization
5382
+ * Payload: {@link VizScopedRequest}.
5321
5383
  * @param - object - to trigger the action for a specific visualization
5322
5384
  * in Liveboard embed, pass in `vizId` as a key
5323
5385
  * @example
@@ -5363,6 +5425,8 @@ export enum HostEvent {
5363
5425
  Present = 'present',
5364
5426
  /**
5365
5427
  * Get TML for the current search.
5428
+ * Payload: {@link GetTMLRequest}.
5429
+ * Response: `Record<string, any>`.
5366
5430
  * @example
5367
5431
  * ```js
5368
5432
  * searchEmbed.trigger(HostEvent.GetTML).then((tml) => {
@@ -5412,6 +5476,7 @@ export enum HostEvent {
5412
5476
  * Trigger the **Show underlying data** action on a
5413
5477
  * chart or table.
5414
5478
  *
5479
+ * Payload: {@link VizScopedRequest}.
5415
5480
  * @param - an object with vizId as a key
5416
5481
  * @example
5417
5482
  * ```js
@@ -5445,6 +5510,7 @@ export enum HostEvent {
5445
5510
  * Trigger the **Delete** action for a visualization
5446
5511
  * in an embedded Liveboard, or a chart or table
5447
5512
  * generated from Search.
5513
+ * Payload: {@link VizScopedRequest}.
5448
5514
  * @param - Liveboard embed takes an object with `vizId` as a key.
5449
5515
  * Can be left empty if embedding Search or visualization.
5450
5516
  * @example
@@ -5473,6 +5539,7 @@ export enum HostEvent {
5473
5539
  /**
5474
5540
  * Trigger the **SpotIQ analyze** action on a
5475
5541
  * chart or table.
5542
+ * Payload: {@link VizScopedRequest}.
5476
5543
  * @param - Liveboard embed takes `vizId` as a
5477
5544
  * key. Can be left undefined when embedding Search or
5478
5545
  * visualization.
@@ -5535,6 +5602,7 @@ export enum HostEvent {
5535
5602
  /**
5536
5603
  * Trigger the **Download** > **PNG** action on
5537
5604
  * charts in the embedded view.
5605
+ * Payload: {@link VizScopedRequest}.
5538
5606
  * @example
5539
5607
  * ```js
5540
5608
  * liveboardEmbed.trigger(HostEvent.DownloadAsPng,
@@ -5566,6 +5634,7 @@ export enum HostEvent {
5566
5634
  /**
5567
5635
  * Trigger the **Download** > **CSV** action on tables in
5568
5636
  * the embedded view.
5637
+ * Payload: {@link VizScopedRequest}.
5569
5638
  * @param - `vizId` refers to the Visualization ID in Spotter embed and is required in Spotter embed.
5570
5639
  * @example
5571
5640
  * ```js
@@ -5605,6 +5674,7 @@ export enum HostEvent {
5605
5674
  /**
5606
5675
  * Trigger the **Download** > **XLSX** action on tables
5607
5676
  * in the embedded view.
5677
+ * Payload: {@link VizScopedRequest}.
5608
5678
  * @param - `vizId` refers to the Visualization ID in Spotter embed and is required in Spotter embed.
5609
5679
  * @example
5610
5680
  * ```js
@@ -5644,6 +5714,7 @@ export enum HostEvent {
5644
5714
  /**
5645
5715
  * Trigger the **Share** action on an embedded
5646
5716
  * Liveboard or Answer.
5717
+ * Payload: {@link VizScopedRequest}.
5647
5718
  * @example
5648
5719
  * ```js
5649
5720
  * liveboardEmbed.trigger(HostEvent.Share)
@@ -5670,6 +5741,7 @@ export enum HostEvent {
5670
5741
  * Trigger the **Save** action on a Liveboard, Answer, or Spotter.
5671
5742
  * Saves the changes.
5672
5743
  *
5744
+ * Payload: {@link VizScopedRequest}.
5673
5745
  * @param - `vizId` refers to the Spotter Visualization Id used in Spotter embed.
5674
5746
  * It is required and can be retrieved from the data embed event.
5675
5747
  *
@@ -5721,6 +5793,7 @@ export enum HostEvent {
5721
5793
  /**
5722
5794
  * Trigger the **Sync to Sheets** action on an embedded visualization or Answer
5723
5795
  * Sends data from an Answer or Liveboard visualization to a Google sheet.
5796
+ * Payload: {@link VizScopedRequest}.
5724
5797
  * @param - an object with `vizId` as a key
5725
5798
  * @example
5726
5799
  * ```js
@@ -5751,6 +5824,7 @@ export enum HostEvent {
5751
5824
  * Trigger the **Sync to Other Apps** action on an embedded visualization or Answer
5752
5825
  * Sends data from an Answer or Liveboard visualization to third-party apps such
5753
5826
  * as Slack, Salesforce, Microsoft Teams, ServiceNow and so on.
5827
+ * Payload: {@link VizScopedRequest}.
5754
5828
  * @param - an object with vizId as a key
5755
5829
  * @example
5756
5830
  * ```js
@@ -5781,6 +5855,7 @@ export enum HostEvent {
5781
5855
  * Trigger the **Manage pipelines** action on an embedded
5782
5856
  * visualization or Answer.
5783
5857
  * Allows users to manage ThoughtSpot Sync pipelines.
5858
+ * Payload: {@link VizScopedRequest}.
5784
5859
  * @param - an object with `vizId` as a key
5785
5860
  * @example
5786
5861
  * ```js
@@ -5809,6 +5884,7 @@ export enum HostEvent {
5809
5884
  ManagePipelines = 'manage-pipeline',
5810
5885
  /**
5811
5886
  * Reset search operation on the Search or Answer page.
5887
+ * Payload: none.
5812
5888
  * @example
5813
5889
  * ```js
5814
5890
  * searchEmbed.trigger(HostEvent.ResetSearch)
@@ -5836,10 +5912,18 @@ export enum HostEvent {
5836
5912
  * whole Liveboard.
5837
5913
  * The `applicability` attribute is available from SDK: 1.53.0 |
5838
5914
  * ThoughtSpot: 26.10.0.cl.
5915
+ * Payload: {@link GetFiltersRequest}.
5916
+ * Response: {@link GetFiltersResponse}.
5839
5917
  * @example
5840
5918
  * ```js
5841
5919
  * const data = await liveboardEmbed.trigger(HostEvent.GetFilters);
5842
5920
  * console.log('data', data);
5921
+ * // {
5922
+ * // liveboardFilters: [ ... ],
5923
+ * // runtimeFilters: [
5924
+ * // { columnName: "Region", operator: "IN", values: ["West"] }
5925
+ * // ]
5926
+ * // }
5843
5927
  * ```
5844
5928
  * @example
5845
5929
  * ```js
@@ -5855,6 +5939,7 @@ export enum HostEvent {
5855
5939
  GetFilters = 'getFilters',
5856
5940
  /**
5857
5941
  * Update one or several filters applied on a Liveboard.
5942
+ * Payload: {@link UpdateFiltersRequest}.
5858
5943
  * @param - Includes the following keys:
5859
5944
  * - `filter`: A single filter object containing column name, filter operator, and
5860
5945
  * values.
@@ -5863,9 +5948,9 @@ export enum HostEvent {
5863
5948
  *
5864
5949
  * Each filter object must include the following attributes:
5865
5950
  *
5866
- * `column` - Name of the column to filter on.
5951
+ * `columnName` - Name of the column to filter on.
5867
5952
  *
5868
- * `oper` - Filter operator, for example, EQ, IN, CONTAINS.
5953
+ * `operator` - Filter operator, for example, EQ, IN, CONTAINS.
5869
5954
  * For information about the supported filter operators,
5870
5955
  * see link:https://developers.thoughtspot.com/docs/runtime-filters#rtOperator[Developer Documentation].
5871
5956
  *
@@ -5892,8 +5977,8 @@ export enum HostEvent {
5892
5977
  *
5893
5978
  * liveboardEmbed.trigger(HostEvent.UpdateFilters, {
5894
5979
  * filter: {
5895
- * column: "item type",
5896
- * oper: "IN",
5980
+ * columnName: "item type",
5981
+ * operator: "IN",
5897
5982
  * values: ["bags","shirts"]
5898
5983
  * }
5899
5984
  * });
@@ -5903,8 +5988,8 @@ export enum HostEvent {
5903
5988
  *
5904
5989
  * liveboardEmbed.trigger(HostEvent.UpdateFilters, {
5905
5990
  * filter: {
5906
- * column: "date",
5907
- * oper: "EQ",
5991
+ * columnName: "date",
5992
+ * operator: "EQ",
5908
5993
  * values: ["JULY","2023"],
5909
5994
  * type: "MONTH_YEAR"
5910
5995
  * }
@@ -5915,18 +6000,18 @@ export enum HostEvent {
5915
6000
  * ```js
5916
6001
  * liveboardEmbed.trigger(HostEvent.UpdateFilters, {
5917
6002
  * filters: [{
5918
- * column: "Item Type",
5919
- * oper: 'IN',
6003
+ * columnName: "Item Type",
6004
+ * operator: 'IN',
5920
6005
  * values: ["bags","shirts"]
5921
6006
  * },
5922
6007
  * {
5923
- * column: "Region",
5924
- * oper: 'IN',
6008
+ * columnName: "Region",
6009
+ * operator: 'IN',
5925
6010
  * values: ["West","Midwest"]
5926
6011
  * },
5927
6012
  * {
5928
- * column: "Date",
5929
- * oper: 'EQ',
6013
+ * columnName: "Date",
6014
+ * operator: 'EQ',
5930
6015
  * values: ["2023-07-31"],
5931
6016
  * type: "EXACT_DATE"
5932
6017
  * }]
@@ -5940,13 +6025,13 @@ export enum HostEvent {
5940
6025
  * ```js
5941
6026
  * liveboardEmbed.trigger(HostEvent.UpdateFilters, {
5942
6027
  * filters: [{
5943
- * column: "(Sample) Retail - Apparel::city",
5944
- * oper: 'IN',
6028
+ * columnName: "(Sample) Retail - Apparel::city",
6029
+ * operator: 'IN',
5945
6030
  * values: ["atlanta"]
5946
6031
  * },
5947
6032
  * {
5948
- * column: "(Sample) Retail - Apparel::Region",
5949
- * oper: 'IN',
6033
+ * columnName: "(Sample) Retail - Apparel::Region",
6034
+ * operator: 'IN',
5950
6035
  * values: ["West","Midwest"]
5951
6036
  * }]
5952
6037
  * });
@@ -5957,8 +6042,8 @@ export enum HostEvent {
5957
6042
  * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5958
6043
  * liveboardEmbed.trigger(HostEvent.UpdateFilters, {
5959
6044
  * filter: {
5960
- * column: "item type",
5961
- * oper: "IN",
6045
+ * columnName: "item type",
6046
+ * operator: "IN",
5962
6047
  * values: ["shoes", "boots"]
5963
6048
  * }
5964
6049
  * }, ContextType.Liveboard);
@@ -5968,8 +6053,8 @@ export enum HostEvent {
5968
6053
  * // Scope the filter to a specific Liveboard tab
5969
6054
  * liveboardEmbed.trigger(HostEvent.UpdateFilters, {
5970
6055
  * filter: {
5971
- * column: "item type",
5972
- * oper: "IN",
6056
+ * columnName: "item type",
6057
+ * operator: "IN",
5973
6058
  * values: ["bags", "shirts"],
5974
6059
  * applicability: {
5975
6060
  * level: "TAB",
@@ -5978,11 +6063,19 @@ export enum HostEvent {
5978
6063
  * }
5979
6064
  * });
5980
6065
  * ```
6066
+ * Use `columnName` and `operator` - the same spelling as
6067
+ * {@link RuntimeFilter}. The older `column` and `oper` spellings are
6068
+ * deprecated; they are still accepted, but pass only one spelling of each
6069
+ * field, never both. To reapply the filter state captured from
6070
+ * {@link EmbedEvent.FilterChanged}, use `convertFilterChangedToUpdateFiltersPayload`
6071
+ * to convert its payload into the shape expected here.
5981
6072
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
5982
6073
  */
5983
6074
  UpdateFilters = 'updateFilters',
5984
6075
  /**
5985
6076
  * Get tab details for the current Liveboard.
6077
+ * Payload: none.
6078
+ * Response: {@link GetTabsResponse}.
5986
6079
  * @example
5987
6080
  * ```js
5988
6081
  * liveboardEmbed.trigger(HostEvent.GetTabs).then((tabDetails) => {
@@ -6008,6 +6101,8 @@ export enum HostEvent {
6008
6101
  /**
6009
6102
  * Get group details for the current Liveboard.
6010
6103
  * Mirrors {@link HostEvent.GetTabs} for filter/parameter groups.
6104
+ * Payload: none.
6105
+ * Response: {@link GetGroupsResponse}.
6011
6106
  * @example
6012
6107
  * ```js
6013
6108
  * liveboardEmbed.trigger(HostEvent.GetGroups).then((groupDetails) => {
@@ -6032,6 +6127,7 @@ export enum HostEvent {
6032
6127
  GetGroups = 'getGroups',
6033
6128
  /**
6034
6129
  * Set the visible tabs on a Liveboard.
6130
+ * Payload: `string[]`.
6035
6131
  * @param - an array of ids of tabs to show, the IDs not passed
6036
6132
  * will be hidden.
6037
6133
  * @example
@@ -6054,6 +6150,7 @@ export enum HostEvent {
6054
6150
  SetVisibleTabs = 'SetPinboardVisibleTabs',
6055
6151
  /**
6056
6152
  * Set the hidden tabs on a Liveboard.
6153
+ * Payload: `string[]`.
6057
6154
  * @param - an array of the IDs of the tabs to hide.
6058
6155
  * The IDs not passed will be shown.
6059
6156
  * @example
@@ -6082,6 +6179,8 @@ export enum HostEvent {
6082
6179
  * `getAnswerService()` method on the embed instance to get an AnswerService
6083
6180
  * object that provides a more convenient interface for working with answers.
6084
6181
  *
6182
+ * Payload: {@link GetAnswerSessionRequest}.
6183
+ * Response: {@link GetAnswerSessionResponse}.
6085
6184
  * @example
6086
6185
  * ```js
6087
6186
  * // Preferred way to get an AnswerService
@@ -6109,6 +6208,7 @@ export enum HostEvent {
6109
6208
  GetAnswerSession = 'getAnswerSession',
6110
6209
  /**
6111
6210
  * Trigger the *Ask Sage* action for visualizations
6211
+ * Payload: {@link RequiredVizRequest}.
6112
6212
  * @example
6113
6213
  * ```js
6114
6214
  * liveboardEmbed.trigger(HostEvent.AskSage,
@@ -6120,6 +6220,7 @@ export enum HostEvent {
6120
6220
  /**
6121
6221
  * Trigger cross filter update action on a Liveboard.
6122
6222
  *
6223
+ * Payload: {@link UpdateCrossFilterRequest}.
6123
6224
  * @example
6124
6225
  * ```js
6125
6226
  * liveboardEmbed.trigger(HostEvent.UpdateCrossFilter, {
@@ -6135,7 +6236,9 @@ export enum HostEvent {
6135
6236
  UpdateCrossFilter = 'UpdateCrossFilter',
6136
6237
  /**
6137
6238
  * Trigger reset action for a personalized Liveboard view.
6138
- * This event is deprecated. Use {@link HostEvent.ResetLiveboardPersonalizedView} instead.
6239
+ * This event is deprecated.
6240
+ * Use {@link HostEvent.ResetLiveboardPersonalizedView} instead.
6241
+ * Payload: none.
6139
6242
  * @example
6140
6243
  * ```js
6141
6244
  * liveboardEmbed.trigger(HostEvent.ResetLiveboardPersonalisedView);
@@ -6156,6 +6259,7 @@ export enum HostEvent {
6156
6259
  /**
6157
6260
  * Triggers an action to update Parameter values on embedded
6158
6261
  * Answers, Liveboard, and Spotter answer in Edit mode.
6262
+ * Payload: {@link RuntimeParameter}[].
6159
6263
  * @param - Includes the following keys for each item:
6160
6264
  * - `name`: Name of the parameter.
6161
6265
  * - `value`: The value to set for the parameter.
@@ -6213,6 +6317,8 @@ export enum HostEvent {
6213
6317
  * whole Liveboard.
6214
6318
  * The `applicability` attribute is available from SDK: 1.53.0 |
6215
6319
  * ThoughtSpot: 26.10.0.cl.
6320
+ * Payload: none.
6321
+ * Response: {@link GetParametersResponse}.
6216
6322
  * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
6217
6323
  * ```js
6218
6324
  * liveboardEmbed.trigger(HostEvent.GetParameters).then((parameter) => {
@@ -6250,6 +6356,7 @@ export enum HostEvent {
6250
6356
  * ```js
6251
6357
  * liveboardEmbed.trigger(HostEvent.UpdatePersonalisedView, {viewId: '1234'})
6252
6358
  * ```
6359
+ * Payload: {@link PersonalisedViewRequest} (`viewId` only).
6253
6360
  * @example
6254
6361
  * ```js
6255
6362
  * // Update personalized view from liveboard context
@@ -6282,6 +6389,7 @@ export enum HostEvent {
6282
6389
  * If neither is provided, the Liveboard resets to the original/default view.
6283
6390
  * When a `viewName` is provided and multiple views share
6284
6391
  * the same name, the first match is selected.
6392
+ * Payload: {@link PersonalisedViewRequest}.
6285
6393
  * @example
6286
6394
  * ```js
6287
6395
  * liveboardEmbed.trigger(
@@ -6325,6 +6433,8 @@ export enum HostEvent {
6325
6433
  * If no parameters are specified, the save action is
6326
6434
  * triggered with a modal to prompt users to
6327
6435
  * add a name and description for the Answer.
6436
+ * Payload: {@link SaveAnswerRequest}.
6437
+ * Response: {@link SaveAnswerResponse}.
6328
6438
  * @param - Includes the following keys:
6329
6439
  * - `vizId`: Refers to the Answer ID in Spotter embed and is **required** in Spotter
6330
6440
  * embed.
@@ -6410,6 +6520,7 @@ export enum HostEvent {
6410
6520
  /**
6411
6521
  * Triggers a search operation with the search tokens specified in
6412
6522
  * the search query string in spotter embed.
6523
+ * Payload: {@link SpotterSearchRequest}.
6413
6524
  * @param - Includes the following keys:
6414
6525
  * - `query`: Text string in Natural Language format.
6415
6526
  * - `executeSearch`: Boolean to execute search and update search query.
@@ -6434,6 +6545,7 @@ export enum HostEvent {
6434
6545
  SpotterSearch = 'SpotterSearch',
6435
6546
  /**
6436
6547
  * Edits the last prompt in spotter embed.
6548
+ * Payload: `string`.
6437
6549
  * @param - `query`: Text string
6438
6550
  * @example
6439
6551
  * ```js
@@ -6450,6 +6562,7 @@ export enum HostEvent {
6450
6562
  EditLastPrompt = 'EditLastPrompt',
6451
6563
  /**
6452
6564
  * Opens the data source preview modal in Spotter Embed.
6565
+ * Payload: none.
6453
6566
  * @example
6454
6567
  * ```js
6455
6568
  * spotterEmbed.trigger(HostEvent.PreviewSpotterData);
@@ -6485,6 +6598,7 @@ export enum HostEvent {
6485
6598
  DataModelInstructions = 'DataModelInstructions',
6486
6599
  /**
6487
6600
  * Resets the Spotter Embed Conversation.
6601
+ * Payload: none.
6488
6602
  * @example
6489
6603
  * ```js
6490
6604
  * spotterEmbed.trigger(HostEvent.ResetSpotterConversation);
@@ -6497,6 +6611,7 @@ export enum HostEvent {
6497
6611
  * `conversationId` is **mandatory** — you must pass the id of the
6498
6612
  * conversation to share. Also no-op when sharing is disabled
6499
6613
  * (enableShareConversation off) or when already in the read-only shared view.
6614
+ * Payload: {@link ConversationScopedRequest}.
6500
6615
  * @example
6501
6616
  * ```js
6502
6617
  * spotterEmbed.trigger(HostEvent.ShareSpotterConversation, { conversationId: 'abc' });
@@ -6506,6 +6621,7 @@ export enum HostEvent {
6506
6621
  ShareSpotterConversation = 'ShareSpotterConversation',
6507
6622
  /**
6508
6623
  * Closes the Spotter share-conversation modal. No-op if none is open.
6624
+ * Payload: none.
6509
6625
  * @example
6510
6626
  * ```js
6511
6627
  * spotterEmbed.trigger(HostEvent.CloseSpotterShareConversation);
@@ -6515,6 +6631,7 @@ export enum HostEvent {
6515
6631
  CloseSpotterShareConversation = 'CloseSpotterShareConversation',
6516
6632
  /**
6517
6633
  * Exits the read-only shared-conversation view.
6634
+ * Payload: none.
6518
6635
  * @example
6519
6636
  * ```js
6520
6637
  * spotterEmbed.trigger(HostEvent.ExitSpotterSharedConversation);
@@ -6524,6 +6641,7 @@ export enum HostEvent {
6524
6641
  ExitSpotterSharedConversation = 'ExitSpotterSharedConversation',
6525
6642
  /**
6526
6643
  * Deletes the last prompt in spotter embed.
6644
+ * Payload: none.
6527
6645
  * @example
6528
6646
  * ```js
6529
6647
  * spotterEmbed.trigger(HostEvent.DeleteLastPrompt);
@@ -6533,6 +6651,7 @@ export enum HostEvent {
6533
6651
  DeleteLastPrompt = 'DeleteLastPrompt',
6534
6652
  /**
6535
6653
  * Toggle the visualization to chart or table view.
6654
+ * Payload: {@link RequiredVizRequest}.
6536
6655
  * @param - `vizId ` refers to the Visualization ID in Spotter embed and is required.
6537
6656
  * @example
6538
6657
  * ```js
@@ -6571,6 +6690,7 @@ export enum HostEvent {
6571
6690
  VisibleEmbedCoordinates = 'visibleEmbedCoordinates',
6572
6691
  /**
6573
6692
  * Trigger the *Spotter* action for visualizations present on the liveboard's vizzes.
6693
+ * Payload: {@link RequiredVizRequest}.
6574
6694
  * @param - `vizId` refers to the Visualization ID in Spotter embed and is required.
6575
6695
  * @example
6576
6696
  * ```js
@@ -6634,6 +6754,7 @@ export enum HostEvent {
6634
6754
  * instance. Contact your admin or ThoughtSpot Support to enable chat history on your
6635
6755
  * instance.
6636
6756
  *
6757
+ * Payload: {@link ConversationScopedRequest}.
6637
6758
  * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
6638
6759
  * @example
6639
6760
  * ```js
@@ -6652,6 +6773,7 @@ export enum HostEvent {
6652
6773
  * instance. Contact your admin or ThoughtSpot Support to enable chat history on your
6653
6774
  * instance.
6654
6775
  *
6776
+ * Payload: {@link ConversationScopedRequest}.
6655
6777
  * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
6656
6778
  * @example
6657
6779
  * ```js
@@ -6677,6 +6799,7 @@ export enum HostEvent {
6677
6799
  * Trigger the **Send Test Email** action in the Liveboard schedule modal.
6678
6800
  * Sends a test schedule email to self or all recipients.
6679
6801
  * Requires `isSendNowLiveboardSchedulingEnabled` to be enabled.
6802
+ * Payload: {@link ScheduleEmailRequest}.
6680
6803
  * @example
6681
6804
  * ```js
6682
6805
  * liveboardEmbed.trigger(HostEvent.SendTestScheduleEmail, {
@@ -6696,6 +6819,7 @@ export enum HostEvent {
6696
6819
 
6697
6820
  /**
6698
6821
  * Sends a user message (prompt) to the SpotterViz panel programmatically.
6822
+ * Payload: `{ query: string }`.
6699
6823
  * @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
6700
6824
  * @param query - the prompt text to send.
6701
6825
  * @example
@@ -6709,6 +6833,7 @@ export enum HostEvent {
6709
6833
 
6710
6834
  /**
6711
6835
  * Initializes a new SpotterViz conversation.
6836
+ * Payload: none.
6712
6837
  * @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
6713
6838
  * @example
6714
6839
  * ```js
@@ -6719,6 +6844,7 @@ export enum HostEvent {
6719
6844
 
6720
6845
  /**
6721
6846
  * Opens the SpotterViz panel.
6847
+ * Payload: none.
6722
6848
  * @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
6723
6849
  * @example
6724
6850
  * ```js
@@ -6729,6 +6855,7 @@ export enum HostEvent {
6729
6855
 
6730
6856
  /**
6731
6857
  * Closes the SpotterViz panel.
6858
+ * Payload: none.
6732
6859
  * @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
6733
6860
  * @example
6734
6861
  * ```js
@@ -6740,6 +6867,7 @@ export enum HostEvent {
6740
6867
  /**
6741
6868
  * Clears browser cache and fetches new data for liveboard ChartViz Containers.
6742
6869
  * Requires `enableLiveboardDataCache` to be enabled.
6870
+ * Payload: {@link ScheduleEmailRequest}.
6743
6871
  * @example
6744
6872
  * ```js
6745
6873
  * liveboardEmbed.trigger(HostEvent.RefreshLiveboardBrowserCache);
@@ -6937,8 +7065,8 @@ export enum Param {
6937
7065
  IsStarterPromptsEnabled = 'enableStarterPrompts',
6938
7066
  UpdatedSpotterExperience = 'updatedSpotterExperience',
6939
7067
  SpotterDataSources = 'spotterDataSources',
6940
- AnalystId = 'analystId',
6941
7068
  OpenSpotterOnLiveboardByDefault = 'openSpotterOnLiveboardByDefault',
7069
+ ShowAnswerEditPanel = 'showAnswerEditPanel',
6942
7070
  }
6943
7071
 
6944
7072
  /**
@@ -8975,6 +9103,237 @@ export enum Action {
8975
9103
  * ```
8976
9104
  */
8977
9105
  SpotterOnLiveboard = 'spotterOnLiveboard',
9106
+ /**
9107
+ * Controls the visibility and disabled state of the "Chart Type" menu item
9108
+ * in Chart Settings V2.
9109
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9110
+ * @example
9111
+ * ```js
9112
+ * {
9113
+ * hiddenActions: [Action.ChartTypeSettings],
9114
+ * disabledActions: [Action.ChartTypeSettings],
9115
+ * }
9116
+ * ```
9117
+ */
9118
+ ChartTypeSettings = 'CHART_TYPE',
9119
+ /**
9120
+ * Controls the visibility and disabled state of the "Layout" menu item
9121
+ * in Chart Settings V2.
9122
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9123
+ * @example
9124
+ * ```js
9125
+ * {
9126
+ * hiddenActions: [Action.LayoutSettings],
9127
+ * disabledActions: [Action.LayoutSettings],
9128
+ * }
9129
+ * ```
9130
+ */
9131
+ LayoutSettings = 'LAYOUT',
9132
+ /**
9133
+ * Controls the visibility and disabled state of the "Column" menu item
9134
+ * in Chart Settings V2.
9135
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9136
+ * @example
9137
+ * ```js
9138
+ * {
9139
+ * hiddenActions: [Action.ColumnSettings],
9140
+ * disabledActions: [Action.ColumnSettings],
9141
+ * }
9142
+ * ```
9143
+ */
9144
+ ColumnSettings = 'COLUMN',
9145
+ /**
9146
+ * Controls the visibility and disabled state of the "Axis" menu item
9147
+ * in Chart Settings V2.
9148
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9149
+ * @example
9150
+ * ```js
9151
+ * {
9152
+ * hiddenActions: [Action.AxisSettings],
9153
+ * disabledActions: [Action.AxisSettings],
9154
+ * }
9155
+ * ```
9156
+ */
9157
+ AxisSettings = 'AXIS',
9158
+ /**
9159
+ * Controls the visibility and disabled state of the "Data Label" menu item
9160
+ * in Chart Settings V2.
9161
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9162
+ * @example
9163
+ * ```js
9164
+ * {
9165
+ * hiddenActions: [Action.DataLabelSettings],
9166
+ * disabledActions: [Action.DataLabelSettings],
9167
+ * }
9168
+ * ```
9169
+ */
9170
+ DataLabelSettings = 'DATA_LABEL',
9171
+ /**
9172
+ * Controls the visibility and disabled state of the "Tooltip" menu item
9173
+ * in Chart Settings V2.
9174
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9175
+ * @example
9176
+ * ```js
9177
+ * {
9178
+ * hiddenActions: [Action.TooltipSettings],
9179
+ * disabledActions: [Action.TooltipSettings],
9180
+ * }
9181
+ * ```
9182
+ */
9183
+ TooltipSettings = 'TOOLTIP',
9184
+ /**
9185
+ * Controls the visibility and disabled state of the "Legend" menu item
9186
+ * in Chart Settings V2.
9187
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9188
+ * @example
9189
+ * ```js
9190
+ * {
9191
+ * hiddenActions: [Action.LegendSettings],
9192
+ * disabledActions: [Action.LegendSettings],
9193
+ * }
9194
+ * ```
9195
+ */
9196
+ LegendSettings = 'LEGEND',
9197
+ /**
9198
+ * Controls the visibility and disabled state of the "Display" menu item
9199
+ * in Chart Settings V2.
9200
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9201
+ * @example
9202
+ * ```js
9203
+ * {
9204
+ * hiddenActions: [Action.DisplaySettings],
9205
+ * disabledActions: [Action.DisplaySettings],
9206
+ * }
9207
+ * ```
9208
+ */
9209
+ DisplaySettings = 'DISPLAY',
9210
+ /**
9211
+ * Controls the visibility and disabled state of the "Query Details" menu
9212
+ * item in Chart Settings V2.
9213
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9214
+ * @example
9215
+ * ```js
9216
+ * {
9217
+ * hiddenActions: [Action.QuerySettings],
9218
+ * disabledActions: [Action.QuerySettings],
9219
+ * }
9220
+ * ```
9221
+ */
9222
+ QuerySettings = 'QUERY_DETAILS',
9223
+ /**
9224
+ * Controls the visibility and disabled state of the "Custom Action" menu
9225
+ * item in Chart Settings V2.
9226
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9227
+ * @example
9228
+ * ```js
9229
+ * {
9230
+ * hiddenActions: [Action.CustomSettings],
9231
+ * disabledActions: [Action.CustomSettings],
9232
+ * }
9233
+ * ```
9234
+ */
9235
+ CustomSettings = 'CUSTOM_ACTION',
9236
+ /**
9237
+ * Controls the visibility and disabled state of the "Muze AI" menu item
9238
+ * in Chart Settings V2.
9239
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9240
+ * @example
9241
+ * ```js
9242
+ * {
9243
+ * hiddenActions: [Action.MuzeAiSettings],
9244
+ * disabledActions: [Action.MuzeAiSettings],
9245
+ * }
9246
+ * ```
9247
+ */
9248
+ MuzeAiSettings = 'MUZE_AI',
9249
+ /**
9250
+ * Controls the visibility and disabled state of the "R Analysis" menu item
9251
+ * in Chart Settings V2.
9252
+ * @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
9253
+ * @example
9254
+ * ```js
9255
+ * {
9256
+ * hiddenActions: [Action.RAnalysisSettings],
9257
+ * disabledActions: [Action.RAnalysisSettings],
9258
+ * }
9259
+ * ```
9260
+ */
9261
+ RAnalysisSettings = 'R_ANALYSIS',
9262
+ /**
9263
+ * Controls the visibility and disabled state of the "Add to Collection" menu item.
9264
+ * @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
9265
+ * @example
9266
+ * ```js
9267
+ * {
9268
+ * hiddenActions: [Action.AddToCollection],
9269
+ * disabledActions: [Action.AddToCollection],
9270
+ * }
9271
+ * ```
9272
+ */
9273
+ AddToCollection = 'addToCollection',
9274
+ /**
9275
+ * Controls the visibility and disabled state of the "Create Collection" button.
9276
+ * @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
9277
+ * @example
9278
+ * ```js
9279
+ * {
9280
+ * hiddenActions: [Action.CreateCollection],
9281
+ * disabledActions: [Action.CreateCollection],
9282
+ * }
9283
+ * ```
9284
+ */
9285
+ CreateCollection = 'createCollection',
9286
+ /**
9287
+ * Controls the visibility and disabled state of the "Move" menu item in a
9288
+ * Collection.
9289
+ * @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
9290
+ * @example
9291
+ * ```js
9292
+ * {
9293
+ * hiddenActions: [Action.MoveToCollection],
9294
+ * disabledActions: [Action.MoveToCollection],
9295
+ * }
9296
+ * ```
9297
+ */
9298
+ MoveToCollection = 'moveToCollection',
9299
+ /**
9300
+ * Controls the visibility and disabled state of the "Remove" menu item in a
9301
+ * Collection.
9302
+ * @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
9303
+ * @example
9304
+ * ```js
9305
+ * {
9306
+ * hiddenActions: [Action.RemoveFromCollection],
9307
+ * disabledActions: [Action.RemoveFromCollection],
9308
+ * }
9309
+ * ```
9310
+ */
9311
+ RemoveFromCollection = 'removeFromCollection',
9312
+ /**
9313
+ * Controls the visibility and disabled state of the "Delete" menu item for a
9314
+ * Collection.
9315
+ * @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
9316
+ * @example
9317
+ * ```js
9318
+ * {
9319
+ * hiddenActions: [Action.DeleteCollection],
9320
+ * disabledActions: [Action.DeleteCollection],
9321
+ * }
9322
+ * ```
9323
+ */
9324
+ DeleteCollection = 'deleteCollection',
9325
+ /**
9326
+ * Controls the visibility of the "Customize homepage" button on the
9327
+ * embedded home page.
9328
+ * @version SDK: 1.55.0 | ThoughtSpot Cloud: 26.12.0.cl
9329
+ * @example
9330
+ * ```js
9331
+ * {
9332
+ * hiddenActions: [Action.CustomizeHomepage],
9333
+ * }
9334
+ * ```
9335
+ */
9336
+ CustomizeHomepage = 'customizeHomepage',
8978
9337
  }
8979
9338
  export interface AnswerServiceType {
8980
9339
  getAnswer?: (offset: number, batchSize: number) => any;
@@ -9025,6 +9384,11 @@ export interface VizPoint {
9025
9384
  * @group Events
9026
9385
  */
9027
9386
  export interface CustomActionPayload {
9387
+ /**
9388
+ * Id of the custom action that was triggered. Matches the `id` you set on
9389
+ * the {@link CustomAction}. Omitted on Liveboard-level code-based actions.
9390
+ */
9391
+ id?: string;
9028
9392
  contextMenuPoints?: {
9029
9393
  clickedPoint: VizPoint;
9030
9394
  selectedPoints: VizPoint[];
@@ -9045,21 +9409,58 @@ export interface CustomActionPayload {
9045
9409
  vizId?: string;
9046
9410
  }
9047
9411
 
9412
+ /**
9413
+ * A code-based custom action to inject into the embedded ThoughtSpot UI.
9414
+ * Pass an array of these as `customActions` in the embed view config. When a
9415
+ * user invokes the action, the host emits {@link EmbedEvent.CustomAction} with
9416
+ * a {@link CustomActionPayload} carrying the same `id`.
9417
+ */
9048
9418
  export interface CustomAction {
9419
+ /**
9420
+ * Display label shown on the action's button or menu item.
9421
+ */
9049
9422
  name: string;
9423
+ /**
9424
+ * Unique identifier for the action. Echoed back as `id` on the
9425
+ * {@link CustomActionPayload} when the action is invoked.
9426
+ */
9050
9427
  id: string;
9428
+ /**
9429
+ * Where the action appears: a primary button, the "More" menu, or the
9430
+ * right-click context menu. See {@link CustomActionsPosition}.
9431
+ */
9051
9432
  position: CustomActionsPosition;
9433
+ /**
9434
+ * The surface the action applies to (Liveboard, visualization, Answer, or
9435
+ * Spotter). See {@link CustomActionTarget}. The allowed `position` values
9436
+ * and scoping keys depend on the target.
9437
+ */
9052
9438
  target: CustomActionTarget;
9439
+ /**
9440
+ * Scope the action to specific objects by GUID. Which keys are allowed
9441
+ * depends on `target` (for example, a `VIZ` action may use `answerIds`,
9442
+ * `liveboardIds`, and `vizIds`).
9443
+ */
9053
9444
  metadataIds?: {
9054
9445
  answerIds?: string[];
9055
9446
  liveboardIds?: string[];
9056
9447
  vizIds?: string[];
9057
9448
  };
9449
+ /**
9450
+ * Scope the action by data model, using model GUIDs or column names.
9451
+ * Allowed for `VIZ`, `ANSWER`, and `SPOTTER` targets.
9452
+ */
9058
9453
  dataModelIds?: {
9059
9454
  modelIds?: string[];
9060
9455
  modelColumnNames?: string[];
9061
9456
  };
9457
+ /**
9458
+ * Restrict the action to specific organizations by ID.
9459
+ */
9062
9460
  orgIds?: string[];
9461
+ /**
9462
+ * Restrict the action to specific user groups by ID.
9463
+ */
9063
9464
  groupIds?: string[];
9064
9465
  }
9065
9466
 
@@ -10083,3 +10484,164 @@ export interface VisualizationOverrides {
10083
10484
  /** Table visualization overrides */
10084
10485
  table?: TableOverrides;
10085
10486
  }
10487
+
10488
+ /**
10489
+ * The configuration object for the full-height behavior shared by the
10490
+ * Liveboard and app embeds.
10491
+ *
10492
+ * When `fullHeight` is enabled the SDK resizes the embed container to match the
10493
+ * height reported by the ThoughtSpot app, and — when lazy loading is also
10494
+ * enabled — keeps the app informed of the portion of the embed that is
10495
+ * currently visible so that visualizations load on demand.
10496
+ */
10497
+ export interface FullHeightViewConfig {
10498
+ /**
10499
+ * If set to true, the embedded object container dynamically resizes
10500
+ * according to the height of the Liveboard.
10501
+ *
10502
+ * **Note**: Using fullHeight loads all visualizations on the
10503
+ * Liveboard simultaneously, which results in multiple warehouse
10504
+ * queries and potentially a longer wait for the topmost
10505
+ * visualizations to display on the screen.
10506
+ * Setting `fullHeight` to `false` fetches visualizations
10507
+ * incrementally as users scroll the page to view the charts and tables.
10508
+ *
10509
+ * From SDK 1.52.0, enabling `fullHeight` also turns on
10510
+ * {@link lazyLoadingForFullHeight} and
10511
+ * {@link enableScrollableContainerLazyLoading}, so visualizations load as
10512
+ * they scroll into view. Set either flag to `false` to opt out.
10513
+ *
10514
+ * Supported embed types: `LiveboardEmbed`, `AppEmbed`
10515
+ * @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 7.2.1
10516
+ * @example
10517
+ * ```js
10518
+ * // Replace <EmbedComponent> with the embed component name.
10519
+ * // For example, AppEmbed or LiveboardEmbed
10520
+ * const embed = new <EmbedComponent>('#embed', {
10521
+ * ... // other view config
10522
+ * fullHeight: true,
10523
+ * });
10524
+ * ```
10525
+ */
10526
+ fullHeight?: boolean;
10527
+ /**
10528
+ * This is the minimum height (in pixels) for a full-height Liveboard.
10529
+ * Setting this height helps resolve issues with empty Liveboards and
10530
+ * other screens navigable from a Liveboard.
10531
+ *
10532
+ * Supported embed types: `LiveboardEmbed`, `AppEmbed`
10533
+ * @version SDK: 1.44.2 | ThoughtSpot: 10.15.0.cl
10534
+ * @default 500
10535
+ * @example
10536
+ * ```js
10537
+ * // Replace <EmbedComponent> with the embed component name.
10538
+ * // For example, AppEmbed or LiveboardEmbed
10539
+ * const embed = new <EmbedComponent>('#embed', {
10540
+ * ... // other view config
10541
+ * fullHeight: true,
10542
+ * minimumHeight: 600,
10543
+ * });
10544
+ * ```
10545
+ */
10546
+ minimumHeight?: number;
10547
+ /**
10548
+ * This is the minimum height (in pixels) for a full-height Liveboard.
10549
+ * Setting this height helps resolve issues with empty Liveboards and
10550
+ * other screens navigable from a Liveboard.
10551
+ *
10552
+ * Supported embed types: `LiveboardEmbed`, `AppEmbed`
10553
+ * @version SDK: 1.5.0 | ThoughtSpot: ts7.oct.cl, 7.2.1
10554
+ * @deprecated Use `minimumHeight` instead.
10555
+ * @default 500
10556
+ * @example
10557
+ * ```js
10558
+ * // Replace <EmbedComponent> with the embed component name.
10559
+ * // For example, AppEmbed or LiveboardEmbed
10560
+ * const embed = new <EmbedComponent>('#embed', {
10561
+ * ... // other view config
10562
+ * fullHeight: true,
10563
+ * defaultHeight: 600,
10564
+ * });
10565
+ * ```
10566
+ */
10567
+ defaultHeight?: number;
10568
+ /**
10569
+ * Loads visualizations only as they scroll into the viewport, instead of
10570
+ * loading the whole full-height Liveboard at once.
10571
+ *
10572
+ * From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
10573
+ * `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
10574
+ * set explicitly. Set it to `false` to load every visualization upfront.
10575
+ * The flag has no effect unless `fullHeight` is enabled.
10576
+ *
10577
+ * Supported embed types: `LiveboardEmbed`, `AppEmbed`
10578
+ * @type {boolean}
10579
+ * @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
10580
+ * @default true when `fullHeight` is enabled, from SDK 1.52.0
10581
+ * @example
10582
+ * ```js
10583
+ * // Replace <EmbedComponent> with the embed component name.
10584
+ * // For example, AppEmbed or LiveboardEmbed
10585
+ * const embed = new <EmbedComponent>('#embed-container', {
10586
+ * // ...other options
10587
+ * fullHeight: true,
10588
+ * lazyLoadingForFullHeight: true,
10589
+ * })
10590
+ * ```
10591
+ */
10592
+ lazyLoadingForFullHeight?: boolean;
10593
+ /**
10594
+ * How far outside the viewport a visualization starts loading, when
10595
+ * {@link lazyLoadingForFullHeight} is enabled.
10596
+ *
10597
+ * For example, if the margin is set to '10px',
10598
+ * the visualization will be loaded 10px before its top edge is visible in the
10599
+ * viewport.
10600
+ *
10601
+ * The format is similar to CSS margin, so `'500px 0px'` extends the
10602
+ * prefetch 500px above and below the viewport and not sideways. Accepted
10603
+ * units are `px`, `em`, `rem`, `%`, `vh` and `vw`, plus bare `0` and
10604
+ * `auto`; an invalid value is logged and ignored.
10605
+ *
10606
+ * From SDK 1.52.0 this defaults to `'500px 0px'` — roughly one
10607
+ * visualization ahead of the scroll position, so a chart has usually
10608
+ * finished loading by the time it scrolls into view. Use a smaller margin
10609
+ * to cut warehouse queries further, or `'0px'` to load a visualization
10610
+ * only once it is actually visible.
10611
+ *
10612
+ * Supported embed types: `LiveboardEmbed`, `AppEmbed`
10613
+ * @type {string}
10614
+ * @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
10615
+ * @default '500px 0px' when `fullHeight` is enabled, from SDK 1.52.0
10616
+ * @example
10617
+ * ```js
10618
+ * // Replace <EmbedComponent> with the embed component name.
10619
+ * // For example, AppEmbed or LiveboardEmbed
10620
+ * const embed = new <EmbedComponent>('#embed-container', {
10621
+ * // ...other options
10622
+ * fullHeight: true,
10623
+ * lazyLoadingForFullHeight: true,
10624
+ * // With 0px, the visualization only starts loading once it is
10625
+ * // visible in the viewport.
10626
+ * lazyLoadingMargin: '0px',
10627
+ * })
10628
+ * ```
10629
+ */
10630
+ lazyLoadingMargin?: string;
10631
+ /**
10632
+ * Computes the visible region of the embed against its scrollable and
10633
+ * clipping ancestors, instead of treating the browser window as the only
10634
+ * viewport, and tracks scroll and resize on those ancestors.
10635
+ *
10636
+ * From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
10637
+ * `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
10638
+ * set explicitly. Set it to `false` when the page scrolls with the window
10639
+ * and the embed has no clipping ancestor, to skip the extra ancestor
10640
+ * tracking.
10641
+ *
10642
+ * Supported embed types: `LiveboardEmbed`, `AppEmbed`
10643
+ * @type {boolean}
10644
+ * @default true when `fullHeight` is enabled, from SDK 1.52.0
10645
+ */
10646
+ enableScrollableContainerLazyLoading?: boolean;
10647
+ }