@thoughtspot/visual-embed-sdk 1.51.2 → 1.52.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (316) hide show
  1. package/cjs/package.json +9 -1
  2. package/cjs/src/api-intercept.d.ts.map +1 -1
  3. package/cjs/src/api-intercept.js +1 -0
  4. package/cjs/src/api-intercept.js.map +1 -1
  5. package/cjs/src/contracts/contracts.spec.d.ts +2 -0
  6. package/cjs/src/contracts/contracts.spec.d.ts.map +1 -0
  7. package/cjs/src/contracts/contracts.spec.js +345 -0
  8. package/cjs/src/contracts/contracts.spec.js.map +1 -0
  9. package/cjs/src/contracts/embed-event-payloads.d.ts +73 -0
  10. package/cjs/src/contracts/embed-event-payloads.d.ts.map +1 -0
  11. package/cjs/src/contracts/embed-event-payloads.js +3 -0
  12. package/cjs/src/contracts/embed-event-payloads.js.map +1 -0
  13. package/cjs/src/contracts/host-event-contracts.d.ts +378 -0
  14. package/cjs/src/contracts/host-event-contracts.d.ts.map +1 -0
  15. package/cjs/src/contracts/host-event-contracts.js +3 -0
  16. package/cjs/src/contracts/host-event-contracts.js.map +1 -0
  17. package/cjs/src/contracts/index.d.ts +22 -0
  18. package/cjs/src/contracts/index.d.ts.map +1 -0
  19. package/cjs/src/contracts/index.js +33 -0
  20. package/cjs/src/contracts/index.js.map +1 -0
  21. package/cjs/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  22. package/cjs/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  23. package/cjs/src/{embed/hostEventClient/contracts.js → contracts/ui-passthrough-contracts.js} +6 -2
  24. package/cjs/src/contracts/ui-passthrough-contracts.js.map +1 -0
  25. package/cjs/src/css-variables.d.ts +1 -1
  26. package/cjs/src/embed/app.d.ts +17 -140
  27. package/cjs/src/embed/app.d.ts.map +1 -1
  28. package/cjs/src/embed/app.js +20 -120
  29. package/cjs/src/embed/app.js.map +1 -1
  30. package/cjs/src/embed/app.spec.js +70 -26
  31. package/cjs/src/embed/app.spec.js.map +1 -1
  32. package/cjs/src/embed/conversation.d.ts +5 -5
  33. package/cjs/src/embed/events.spec.js +12 -2
  34. package/cjs/src/embed/events.spec.js.map +1 -1
  35. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +3 -2
  36. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  37. package/cjs/src/embed/hostEventClient/host-event-client.js +23 -18
  38. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  39. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +36 -36
  40. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  41. package/cjs/src/embed/hostEventClient/utils.d.ts +1 -1
  42. package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -1
  43. package/cjs/src/embed/hostEventClient/utils.js +3 -3
  44. package/cjs/src/embed/hostEventClient/utils.js.map +1 -1
  45. package/cjs/src/embed/liveboard.d.ts +9 -161
  46. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  47. package/cjs/src/embed/liveboard.js +68 -135
  48. package/cjs/src/embed/liveboard.js.map +1 -1
  49. package/cjs/src/embed/liveboard.spec.js +215 -32
  50. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  51. package/cjs/src/embed/search.d.ts +14 -0
  52. package/cjs/src/embed/search.d.ts.map +1 -1
  53. package/cjs/src/embed/search.js +4 -1
  54. package/cjs/src/embed/search.js.map +1 -1
  55. package/cjs/src/embed/search.spec.js +65 -0
  56. package/cjs/src/embed/search.spec.js.map +1 -1
  57. package/cjs/src/embed/ts-embed.d.ts +21 -25
  58. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  59. package/cjs/src/embed/ts-embed.js +105 -72
  60. package/cjs/src/embed/ts-embed.js.map +1 -1
  61. package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
  62. package/cjs/src/embed/ts-embed.spec.js +380 -33
  63. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  64. package/cjs/src/full-height.d.ts +137 -0
  65. package/cjs/src/full-height.d.ts.map +1 -0
  66. package/cjs/src/full-height.js +272 -0
  67. package/cjs/src/full-height.js.map +1 -0
  68. package/cjs/src/full-height.spec.d.ts +2 -0
  69. package/cjs/src/full-height.spec.d.ts.map +1 -0
  70. package/cjs/src/full-height.spec.js +835 -0
  71. package/cjs/src/full-height.spec.js.map +1 -0
  72. package/cjs/src/index.d.ts +4 -3
  73. package/cjs/src/index.d.ts.map +1 -1
  74. package/cjs/src/index.js +5 -4
  75. package/cjs/src/index.js.map +1 -1
  76. package/cjs/src/react/all-types-export.d.ts +1 -1
  77. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  78. package/cjs/src/react/all-types-export.js +2 -1
  79. package/cjs/src/react/all-types-export.js.map +1 -1
  80. package/cjs/src/react/all-types-export.parity.spec.js +55 -3
  81. package/cjs/src/react/all-types-export.parity.spec.js.map +1 -1
  82. package/cjs/src/react/index.d.ts +8 -8
  83. package/cjs/src/react/index.d.ts.map +1 -1
  84. package/cjs/src/react/index.js +1 -1
  85. package/cjs/src/react/index.js.map +1 -1
  86. package/cjs/src/react/index.spec.js +7 -7
  87. package/cjs/src/react/index.spec.js.map +1 -1
  88. package/cjs/src/types.d.ts +664 -39
  89. package/cjs/src/types.d.ts.map +1 -1
  90. package/cjs/src/types.js +406 -13
  91. package/cjs/src/types.js.map +1 -1
  92. package/cjs/src/utils/processTrigger.d.ts +3 -1
  93. package/cjs/src/utils/processTrigger.d.ts.map +1 -1
  94. package/cjs/src/utils/processTrigger.js +19 -51
  95. package/cjs/src/utils/processTrigger.js.map +1 -1
  96. package/cjs/src/utils/transport/iframe-transport.d.ts +55 -0
  97. package/cjs/src/utils/transport/iframe-transport.d.ts.map +1 -0
  98. package/cjs/src/utils/transport/iframe-transport.js +108 -0
  99. package/cjs/src/utils/transport/iframe-transport.js.map +1 -0
  100. package/cjs/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  101. package/cjs/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  102. package/cjs/src/utils/transport/iframe-transport.spec.js +140 -0
  103. package/cjs/src/utils/transport/iframe-transport.spec.js.map +1 -0
  104. package/cjs/src/utils.d.ts +18 -0
  105. package/cjs/src/utils.d.ts.map +1 -1
  106. package/cjs/src/utils.js +39 -1
  107. package/cjs/src/utils.js.map +1 -1
  108. package/cjs/src/utils.spec.js +62 -0
  109. package/cjs/src/utils.spec.js.map +1 -1
  110. package/dist/{index-D8_Zs-Nr.js → index-C1pmYb5H.js} +1 -1
  111. package/dist/src/api-intercept.d.ts.map +1 -1
  112. package/dist/src/contracts/contracts.spec.d.ts +2 -0
  113. package/dist/src/contracts/contracts.spec.d.ts.map +1 -0
  114. package/dist/src/contracts/embed-event-payloads.d.ts +73 -0
  115. package/dist/src/contracts/embed-event-payloads.d.ts.map +1 -0
  116. package/dist/src/contracts/host-event-contracts.d.ts +378 -0
  117. package/dist/src/contracts/host-event-contracts.d.ts.map +1 -0
  118. package/dist/src/contracts/index.d.ts +22 -0
  119. package/dist/src/contracts/index.d.ts.map +1 -0
  120. package/dist/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  121. package/dist/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  122. package/dist/src/css-variables.d.ts +1 -1
  123. package/dist/src/embed/app.d.ts +17 -140
  124. package/dist/src/embed/app.d.ts.map +1 -1
  125. package/dist/src/embed/conversation.d.ts +5 -5
  126. package/dist/src/embed/hostEventClient/host-event-client.d.ts +3 -2
  127. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  128. package/dist/src/embed/hostEventClient/utils.d.ts +1 -1
  129. package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -1
  130. package/dist/src/embed/liveboard.d.ts +9 -161
  131. package/dist/src/embed/liveboard.d.ts.map +1 -1
  132. package/dist/src/embed/search.d.ts +14 -0
  133. package/dist/src/embed/search.d.ts.map +1 -1
  134. package/dist/src/embed/ts-embed.d.ts +21 -25
  135. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  136. package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
  137. package/dist/src/full-height.d.ts +137 -0
  138. package/dist/src/full-height.d.ts.map +1 -0
  139. package/dist/src/full-height.spec.d.ts +2 -0
  140. package/dist/src/full-height.spec.d.ts.map +1 -0
  141. package/dist/src/index.d.ts +4 -3
  142. package/dist/src/index.d.ts.map +1 -1
  143. package/dist/src/react/all-types-export.d.ts +1 -1
  144. package/dist/src/react/all-types-export.d.ts.map +1 -1
  145. package/dist/src/react/index.d.ts +8 -8
  146. package/dist/src/react/index.d.ts.map +1 -1
  147. package/dist/src/types.d.ts +664 -39
  148. package/dist/src/types.d.ts.map +1 -1
  149. package/dist/src/utils/processTrigger.d.ts +3 -1
  150. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  151. package/dist/src/utils/transport/iframe-transport.d.ts +55 -0
  152. package/dist/src/utils/transport/iframe-transport.d.ts.map +1 -0
  153. package/dist/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  154. package/dist/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  155. package/dist/src/utils.d.ts +18 -0
  156. package/dist/src/utils.d.ts.map +1 -1
  157. package/dist/tsembed-react.es.js +1031 -392
  158. package/dist/tsembed-react.js +1030 -391
  159. package/dist/tsembed.es.js +1031 -392
  160. package/dist/tsembed.js +1029 -390
  161. package/dist/visual-embed-sdk-react-full.d.ts +1483 -693
  162. package/dist/visual-embed-sdk-react.d.ts +1364 -647
  163. package/dist/visual-embed-sdk.d.ts +1426 -659
  164. package/lib/package.json +9 -1
  165. package/lib/src/api-intercept.d.ts.map +1 -1
  166. package/lib/src/api-intercept.js +2 -1
  167. package/lib/src/api-intercept.js.map +1 -1
  168. package/lib/src/contracts/contracts.spec.d.ts +2 -0
  169. package/lib/src/contracts/contracts.spec.d.ts.map +1 -0
  170. package/lib/src/contracts/contracts.spec.js +342 -0
  171. package/lib/src/contracts/contracts.spec.js.map +1 -0
  172. package/lib/src/contracts/embed-event-payloads.d.ts +73 -0
  173. package/lib/src/contracts/embed-event-payloads.d.ts.map +1 -0
  174. package/lib/src/contracts/embed-event-payloads.js +2 -0
  175. package/lib/src/contracts/embed-event-payloads.js.map +1 -0
  176. package/lib/src/contracts/host-event-contracts.d.ts +378 -0
  177. package/lib/src/contracts/host-event-contracts.d.ts.map +1 -0
  178. package/lib/src/contracts/host-event-contracts.js +2 -0
  179. package/lib/src/contracts/host-event-contracts.js.map +1 -0
  180. package/lib/src/contracts/index.d.ts +22 -0
  181. package/lib/src/contracts/index.d.ts.map +1 -0
  182. package/lib/src/contracts/index.js +22 -0
  183. package/lib/src/contracts/index.js.map +1 -0
  184. package/lib/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  185. package/lib/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  186. package/lib/src/{embed/hostEventClient/contracts.js → contracts/ui-passthrough-contracts.js} +6 -2
  187. package/lib/src/contracts/ui-passthrough-contracts.js.map +1 -0
  188. package/lib/src/css-variables.d.ts +1 -1
  189. package/lib/src/embed/app.d.ts +17 -140
  190. package/lib/src/embed/app.d.ts.map +1 -1
  191. package/lib/src/embed/app.js +22 -122
  192. package/lib/src/embed/app.js.map +1 -1
  193. package/lib/src/embed/app.spec.js +70 -26
  194. package/lib/src/embed/app.spec.js.map +1 -1
  195. package/lib/src/embed/conversation.d.ts +5 -5
  196. package/lib/src/embed/events.spec.js +12 -2
  197. package/lib/src/embed/events.spec.js.map +1 -1
  198. package/lib/src/embed/hostEventClient/host-event-client.d.ts +3 -2
  199. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  200. package/lib/src/embed/hostEventClient/host-event-client.js +6 -1
  201. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  202. package/lib/src/embed/hostEventClient/host-event-client.spec.js +1 -1
  203. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  204. package/lib/src/embed/hostEventClient/utils.d.ts +1 -1
  205. package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -1
  206. package/lib/src/embed/hostEventClient/utils.js +1 -1
  207. package/lib/src/embed/hostEventClient/utils.js.map +1 -1
  208. package/lib/src/embed/liveboard.d.ts +9 -161
  209. package/lib/src/embed/liveboard.d.ts.map +1 -1
  210. package/lib/src/embed/liveboard.js +70 -137
  211. package/lib/src/embed/liveboard.js.map +1 -1
  212. package/lib/src/embed/liveboard.spec.js +215 -32
  213. package/lib/src/embed/liveboard.spec.js.map +1 -1
  214. package/lib/src/embed/search.d.ts +14 -0
  215. package/lib/src/embed/search.d.ts.map +1 -1
  216. package/lib/src/embed/search.js +4 -1
  217. package/lib/src/embed/search.js.map +1 -1
  218. package/lib/src/embed/search.spec.js +65 -0
  219. package/lib/src/embed/search.spec.js.map +1 -1
  220. package/lib/src/embed/ts-embed.d.ts +21 -25
  221. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  222. package/lib/src/embed/ts-embed.js +106 -73
  223. package/lib/src/embed/ts-embed.js.map +1 -1
  224. package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
  225. package/lib/src/embed/ts-embed.spec.js +378 -31
  226. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  227. package/lib/src/full-height.d.ts +137 -0
  228. package/lib/src/full-height.d.ts.map +1 -0
  229. package/lib/src/full-height.js +268 -0
  230. package/lib/src/full-height.js.map +1 -0
  231. package/lib/src/full-height.spec.d.ts +2 -0
  232. package/lib/src/full-height.spec.d.ts.map +1 -0
  233. package/lib/src/full-height.spec.js +833 -0
  234. package/lib/src/full-height.spec.js.map +1 -0
  235. package/lib/src/index.d.ts +4 -3
  236. package/lib/src/index.d.ts.map +1 -1
  237. package/lib/src/index.js +3 -3
  238. package/lib/src/index.js.map +1 -1
  239. package/lib/src/react/all-types-export.d.ts +1 -1
  240. package/lib/src/react/all-types-export.d.ts.map +1 -1
  241. package/lib/src/react/all-types-export.js +1 -1
  242. package/lib/src/react/all-types-export.js.map +1 -1
  243. package/lib/src/react/all-types-export.parity.spec.js +55 -3
  244. package/lib/src/react/all-types-export.parity.spec.js.map +1 -1
  245. package/lib/src/react/index.d.ts +8 -8
  246. package/lib/src/react/index.d.ts.map +1 -1
  247. package/lib/src/react/index.js +1 -1
  248. package/lib/src/react/index.js.map +1 -1
  249. package/lib/src/react/index.spec.js +7 -7
  250. package/lib/src/react/index.spec.js.map +1 -1
  251. package/lib/src/types.d.ts +664 -39
  252. package/lib/src/types.d.ts.map +1 -1
  253. package/lib/src/types.js +405 -12
  254. package/lib/src/types.js.map +1 -1
  255. package/lib/src/utils/processTrigger.d.ts +3 -1
  256. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  257. package/lib/src/utils/processTrigger.js +19 -51
  258. package/lib/src/utils/processTrigger.js.map +1 -1
  259. package/lib/src/utils/transport/iframe-transport.d.ts +55 -0
  260. package/lib/src/utils/transport/iframe-transport.d.ts.map +1 -0
  261. package/lib/src/utils/transport/iframe-transport.js +101 -0
  262. package/lib/src/utils/transport/iframe-transport.js.map +1 -0
  263. package/lib/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  264. package/lib/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  265. package/lib/src/utils/transport/iframe-transport.spec.js +138 -0
  266. package/lib/src/utils/transport/iframe-transport.spec.js.map +1 -0
  267. package/lib/src/utils.d.ts +18 -0
  268. package/lib/src/utils.d.ts.map +1 -1
  269. package/lib/src/utils.js +37 -0
  270. package/lib/src/utils.js.map +1 -1
  271. package/lib/src/utils.spec.js +63 -1
  272. package/lib/src/utils.spec.js.map +1 -1
  273. package/lib/src/visual-embed-sdk.d.ts +1426 -659
  274. package/package.json +9 -1
  275. package/src/api-intercept.ts +2 -1
  276. package/src/contracts/contracts.spec.ts +392 -0
  277. package/src/contracts/embed-event-payloads.ts +83 -0
  278. package/src/contracts/host-event-contracts.ts +456 -0
  279. package/src/contracts/index.ts +53 -0
  280. package/src/contracts/ui-passthrough-contracts.ts +301 -0
  281. package/src/css-variables.ts +1 -1
  282. package/src/embed/app.spec.ts +86 -34
  283. package/src/embed/app.ts +37 -264
  284. package/src/embed/conversation.ts +5 -5
  285. package/src/embed/events.spec.ts +14 -2
  286. package/src/embed/hostEventClient/host-event-client.spec.ts +2 -2
  287. package/src/embed/hostEventClient/host-event-client.ts +18 -5
  288. package/src/embed/hostEventClient/utils.ts +2 -1
  289. package/src/embed/liveboard.spec.ts +261 -42
  290. package/src/embed/liveboard.ts +78 -297
  291. package/src/embed/search.spec.ts +80 -0
  292. package/src/embed/search.ts +20 -0
  293. package/src/embed/ts-embed.spec.ts +518 -31
  294. package/src/embed/ts-embed.ts +133 -82
  295. package/src/full-height.spec.ts +1008 -0
  296. package/src/full-height.ts +361 -0
  297. package/src/index.ts +95 -5
  298. package/src/react/all-types-export.parity.spec.ts +63 -3
  299. package/src/react/all-types-export.ts +46 -0
  300. package/src/react/index.spec.tsx +7 -7
  301. package/src/react/index.tsx +9 -9
  302. package/src/types.ts +665 -37
  303. package/src/utils/processTrigger.ts +28 -58
  304. package/src/utils/transport/iframe-transport.spec.ts +177 -0
  305. package/src/utils/transport/iframe-transport.ts +122 -0
  306. package/src/utils.spec.ts +71 -0
  307. package/src/utils.ts +38 -0
  308. package/cjs/src/embed/hostEventClient/contracts.d.ts +0 -231
  309. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  310. package/cjs/src/embed/hostEventClient/contracts.js.map +0 -1
  311. package/dist/src/embed/hostEventClient/contracts.d.ts +0 -231
  312. package/dist/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  313. package/lib/src/embed/hostEventClient/contracts.d.ts +0 -231
  314. package/lib/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  315. package/lib/src/embed/hostEventClient/contracts.js.map +0 -1
  316. package/src/embed/hostEventClient/contracts.ts +0 -262
@@ -0,0 +1,378 @@
1
+ /**
2
+ * Copyright (c) 2026
3
+ *
4
+ * Typed contracts for {@link HostEvent} requests and responses.
5
+ *
6
+ * This module is the single source of truth for host event payload shapes.
7
+ * It is published under the `@thoughtspot/visual-embed-sdk/contracts` subpath
8
+ * so the ThoughtSpot app (host) can consume the exact same contract types the
9
+ * SDK compiles against, preventing SDK <-> host contract drift.
10
+ *
11
+ * Contract evolution rules (enforced by contracts.spec.ts snapshot):
12
+ * - Additive only: new events and new OPTIONAL fields may be added.
13
+ * - Never remove or rename an event key, or change an existing field's type.
14
+ * - An event absent from the maps below intentionally resolves to `any`
15
+ * (untyped, backward compatible) until it is audited and added.
16
+ * @module contracts
17
+ */
18
+ import type { ContextType, HostEvent, RuntimeFilter, RuntimeParameter } from '../types';
19
+ import type { Applicability, EmbedApiHostEventMapping, UIPassthroughContractBase, UIPassthroughRequest, UIPassthroughResponse } from './ui-passthrough-contracts';
20
+ /**
21
+ * Request for host events that MAY target a specific visualization.
22
+ * Omitting vizId targets the current answer/liveboard as a whole.
23
+ * (In some contexts, e.g. Spotter, the app requires vizId at runtime.)
24
+ */
25
+ export interface VizScopedRequest {
26
+ vizId?: string;
27
+ }
28
+ /**
29
+ * Request for host events that MUST target a specific visualization.
30
+ */
31
+ export interface RequiredVizRequest {
32
+ vizId: string;
33
+ }
34
+ /**
35
+ * Request for Spotter conversation-scoped host events.
36
+ */
37
+ export interface ConversationScopedRequest {
38
+ conversationId: string;
39
+ }
40
+ /**
41
+ * Request payload for {@link HostEvent.OpenFilter}. Field requirements
42
+ * vary by context (Search requires columnId/type/dataType/name); the
43
+ * contract is the cross-context superset — the app validates per context
44
+ * at runtime. Per-context views: {@link OpenFilterLiveboardRequest},
45
+ * {@link OpenFilterSpotterRequest}, {@link OpenFilterSearchRequest}.
46
+ */
47
+ export interface OpenFilterRequest {
48
+ column: {
49
+ columnId?: string;
50
+ columnName?: string;
51
+ type?: string;
52
+ dataType?: string;
53
+ name?: string;
54
+ isStrictDateColumn?: boolean;
55
+ };
56
+ applicability?: Applicability;
57
+ visualizationId?: string;
58
+ liveboardId?: string;
59
+ }
60
+ /**
61
+ * `OpenFilter` in Liveboard context: full column plus scoping fields.
62
+ * A per-context view of {@link OpenFilterRequest} (documentation only today;
63
+ * `trigger()` accepts the superset).
64
+ */
65
+ export interface OpenFilterLiveboardRequest {
66
+ column: {
67
+ columnId?: string;
68
+ columnName?: string;
69
+ };
70
+ applicability?: Applicability;
71
+ visualizationId?: string;
72
+ liveboardId?: string;
73
+ }
74
+ /**
75
+ * `OpenFilter` in Spotter context: only the column identity is accepted.
76
+ */
77
+ export interface OpenFilterSpotterRequest {
78
+ column: {
79
+ columnId?: string;
80
+ columnName?: string;
81
+ };
82
+ }
83
+ /**
84
+ * `OpenFilter` in Search/Answer context: column identity plus column metadata.
85
+ */
86
+ export interface OpenFilterSearchRequest {
87
+ column: {
88
+ columnId?: string;
89
+ columnName?: string;
90
+ type?: string;
91
+ dataType?: string;
92
+ name?: string;
93
+ isStrictDateColumn?: boolean;
94
+ };
95
+ }
96
+ /**
97
+ * Request payload for {@link HostEvent.DrillDown}. Drills on selected or
98
+ * clicked points of a visualization. In Liveboard context `vizId` is required
99
+ * at runtime (documentation only today; `trigger()` is not yet type-enforced).
100
+ */
101
+ export interface DrillDownRequest {
102
+ points: {
103
+ clickedPoint?: object;
104
+ selectedPoints?: object[];
105
+ };
106
+ columnGuid?: string;
107
+ autoDrillDown?: boolean;
108
+ vizId?: string;
109
+ }
110
+ /**
111
+ * Request payload for {@link HostEvent.OpenParameter}. One of parameterId
112
+ * or parameterName must be provided (validated at runtime).
113
+ */
114
+ export interface OpenParameterRequest {
115
+ parameter: {
116
+ parameterId?: string;
117
+ parameterName?: string;
118
+ };
119
+ applicability?: Applicability;
120
+ }
121
+ /**
122
+ * Request payload for {@link HostEvent.Search}.
123
+ */
124
+ export interface SearchRequest {
125
+ searchQuery: string;
126
+ dataSources: string[];
127
+ execute?: boolean;
128
+ }
129
+ /**
130
+ * Request payload for {@link HostEvent.SpotterSearch}.
131
+ */
132
+ export interface SpotterSearchRequest {
133
+ query: string;
134
+ executeSearch: boolean;
135
+ }
136
+ /**
137
+ * A single cross-filter condition for {@link HostEvent.UpdateCrossFilter}.
138
+ */
139
+ export interface CrossFilterCondition {
140
+ columnName?: string;
141
+ operator?: string;
142
+ values: Array<string | number | boolean>;
143
+ }
144
+ /**
145
+ * Request payload for {@link HostEvent.UpdateCrossFilter}.
146
+ */
147
+ export interface UpdateCrossFilterRequest {
148
+ vizId: string;
149
+ conditions: CrossFilterCondition[];
150
+ }
151
+ /**
152
+ * A single filter entry for {@link HostEvent.UpdateFilters}. Supports both
153
+ * the current (columnName/operator) and legacy (column/oper) field names.
154
+ */
155
+ export interface HostFilterUpdate {
156
+ columnName?: string;
157
+ columnId?: string;
158
+ operator?: string;
159
+ values: Array<string | number | boolean>;
160
+ type?: string;
161
+ datePeriod?: string;
162
+ negate?: boolean;
163
+ /** Legacy field name for columnName. */
164
+ column?: string;
165
+ /** Legacy field name for operator. */
166
+ oper?: string;
167
+ applicability?: Applicability;
168
+ }
169
+ /**
170
+ * Request payload for {@link HostEvent.UpdateFilters} (singular or plural
171
+ * form).
172
+ */
173
+ export interface UpdateFiltersRequest {
174
+ filter?: HostFilterUpdate;
175
+ filters?: HostFilterUpdate[];
176
+ /**
177
+ * Scope the update to a specific visualization on a Liveboard.
178
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
179
+ */
180
+ visualizationId?: string;
181
+ /**
182
+ * Scope the update to a specific Liveboard.
183
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
184
+ */
185
+ liveboardId?: string;
186
+ }
187
+ /**
188
+ * Request payload for personalised-view host events.
189
+ */
190
+ export interface PersonalisedViewRequest {
191
+ viewId?: string;
192
+ viewName?: string;
193
+ }
194
+ /**
195
+ * Request payload for schedule-email related host events.
196
+ */
197
+ export interface ScheduleEmailRequest {
198
+ sendToSelf?: boolean;
199
+ }
200
+ /**
201
+ * Object form of the {@link HostEvent.Navigate} payload.
202
+ */
203
+ export interface NavigateRequest {
204
+ /**
205
+ * Route to navigate to, or a history delta such as `1` or `-1`.
206
+ */
207
+ path: string | number;
208
+ /**
209
+ * When `true`, replaces the current history entry instead of pushing.
210
+ */
211
+ replace?: boolean;
212
+ }
213
+ /**
214
+ * Request payload for {@link HostEvent.SetActiveTab}.
215
+ */
216
+ export interface SetActiveTabRequest {
217
+ /**
218
+ * Id of the liveboard tab to make active.
219
+ */
220
+ tabId: string;
221
+ }
222
+ /**
223
+ * Typed request payloads for host events that do not go through the UI
224
+ * passthrough pipeline (`HostEvent` member → request type; `void` = no payload).
225
+ *
226
+ * Shapes are transcribed from the host's runtime validation schemas
227
+ * (embed-util HostEventContract) — what the ThoughtSpot app actually enforces —
228
+ * flattened across contexts to the permissive superset (context-specific
229
+ * requirements are validated at runtime).
230
+ *
231
+ * Responses are typed only for UI-passthrough-backed events today (see
232
+ * {@link HostEventResponse}). Add a response map alongside this one when the
233
+ * first explicit response shape is specified; tightening later is additive.
234
+ *
235
+ * Deliberately absent (do not add without an audit):
236
+ * - DrillDown: the runtime schema (object-shaped points) and the UI
237
+ * passthrough contract (string-shaped points) disagree — resolve the
238
+ * drift first.
239
+ * - GetAnswerSession/GetParameters/GetTML: typed via the UI passthrough
240
+ * mapping; their Spotter-context vizId requirement is runtime-only.
241
+ */
242
+ export interface HostEventRequestMap {
243
+ [HostEvent.UpdateRuntimeFilters]: RuntimeFilter[];
244
+ [HostEvent.UpdateParameters]: RuntimeParameter[];
245
+ [HostEvent.UpdateFilters]: UpdateFiltersRequest;
246
+ [HostEvent.UpdateCrossFilter]: UpdateCrossFilterRequest;
247
+ [HostEvent.OpenFilter]: OpenFilterRequest;
248
+ [HostEvent.OpenParameter]: OpenParameterRequest;
249
+ [HostEvent.SetVisibleVizs]: string[];
250
+ [HostEvent.SetVisibleTabs]: string[];
251
+ [HostEvent.SetHiddenTabs]: string[];
252
+ [HostEvent.SetActiveTab]: SetActiveTabRequest;
253
+ [HostEvent.Navigate]: string | number | NavigateRequest;
254
+ [HostEvent.Search]: SearchRequest;
255
+ [HostEvent.ResetSearch]: void;
256
+ [HostEvent.AddColumns]: {
257
+ columnIds: string[];
258
+ };
259
+ [HostEvent.RemoveColumn]: {
260
+ columnId: string;
261
+ };
262
+ [HostEvent.Edit]: VizScopedRequest;
263
+ [HostEvent.Save]: VizScopedRequest;
264
+ [HostEvent.Delete]: VizScopedRequest;
265
+ [HostEvent.Share]: VizScopedRequest;
266
+ [HostEvent.Present]: VizScopedRequest;
267
+ [HostEvent.CopyLink]: VizScopedRequest;
268
+ [HostEvent.ExportTML]: VizScopedRequest;
269
+ [HostEvent.EditTML]: VizScopedRequest;
270
+ [HostEvent.UpdateTML]: VizScopedRequest;
271
+ [HostEvent.SchedulesList]: VizScopedRequest;
272
+ [HostEvent.Schedule]: VizScopedRequest;
273
+ [HostEvent.SpotIQAnalyze]: VizScopedRequest;
274
+ [HostEvent.ShowUnderlyingData]: VizScopedRequest;
275
+ [HostEvent.CreateMonitor]: VizScopedRequest;
276
+ [HostEvent.ManageMonitor]: VizScopedRequest;
277
+ [HostEvent.SyncToSheets]: VizScopedRequest;
278
+ [HostEvent.SyncToOtherApps]: VizScopedRequest;
279
+ [HostEvent.ManagePipelines]: VizScopedRequest;
280
+ [HostEvent.DownloadAsPng]: VizScopedRequest;
281
+ [HostEvent.DownloadAsCsv]: VizScopedRequest;
282
+ [HostEvent.DownloadAsXlsx]: VizScopedRequest;
283
+ [HostEvent.DownloadAsPdf]: VizScopedRequest & {
284
+ liveboardId?: string;
285
+ };
286
+ [HostEvent.Explore]: RequiredVizRequest;
287
+ [HostEvent.AskSage]: RequiredVizRequest;
288
+ [HostEvent.AskSpotter]: RequiredVizRequest;
289
+ [HostEvent.AnswerChartSwitcher]: RequiredVizRequest;
290
+ [HostEvent.UpdatePersonalisedView]: Pick<PersonalisedViewRequest, 'viewId'>;
291
+ [HostEvent.SelectPersonalizedView]: PersonalisedViewRequest;
292
+ [HostEvent.ResetLiveboardPersonalisedView]: void;
293
+ [HostEvent.AIHighlights]: void;
294
+ [HostEvent.SendTestScheduleEmail]: ScheduleEmailRequest;
295
+ [HostEvent.RefreshLiveboardBrowserCache]: ScheduleEmailRequest;
296
+ [HostEvent.SpotterSearch]: SpotterSearchRequest;
297
+ [HostEvent.ResetSpotterConversation]: void;
298
+ [HostEvent.ShareSpotterConversation]: ConversationScopedRequest;
299
+ [HostEvent.CloseSpotterShareConversation]: void;
300
+ [HostEvent.ExitSpotterSharedConversation]: void;
301
+ [HostEvent.PinSpotterConversation]: ConversationScopedRequest;
302
+ [HostEvent.UnpinSpotterConversation]: ConversationScopedRequest;
303
+ [HostEvent.EditLastPrompt]: string;
304
+ [HostEvent.DeleteLastPrompt]: void;
305
+ [HostEvent.PreviewSpotterData]: void;
306
+ [HostEvent.SpotterVizSendUserMessage]: {
307
+ query: string;
308
+ };
309
+ [HostEvent.InitSpotterVizConversation]: void;
310
+ [HostEvent.OpenSpotterVizPanel]: void;
311
+ [HostEvent.CloseSpotterVizPanel]: void;
312
+ }
313
+ /**
314
+ * Per-context request shapes for events whose payload varies by
315
+ /**
316
+ * Resolves the typed request payload for a host event.
317
+ * Resolution order:
318
+ * 1. Explicitly typed request in {@link HostEventRequestMap}
319
+ * 2. UI passthrough backed contract ({@link EmbedApiHostEventMapping})
320
+ * 3. `any` (event not audited/typed yet — backward compatible)
321
+ *
322
+ * Requests are the cross-context superset today. The per-context `*Request`
323
+ * interfaces (e.g. {@link OpenFilterLiveboardRequest}) document how the shape
324
+ * narrows by context; a later release may thread the caller's context to
325
+ * enforce it.
326
+ */
327
+ export type HostEventRequest<HostEventT extends HostEvent> = HostEventT extends keyof HostEventRequestMap ? HostEventRequestMap[HostEventT] : HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughRequest<EmbedApiHostEventMapping[HostEventT]> : any;
328
+ /**
329
+ * Resolves the typed response payload for a host event. Only UI passthrough
330
+ * backed events have typed responses today; everything else resolves to `any`.
331
+ */
332
+ export type HostEventResponse<HostEventT extends HostEvent, ContextT extends ContextType = ContextType> = HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughResponse<EmbedApiHostEventMapping[HostEventT]> : any;
333
+ /**
334
+ * Payload type accepted by `embed.trigger()`. Keeps the historical
335
+ * `PayloadT` escape hatch so untyped existing call sites keep compiling.
336
+ */
337
+ export type TriggerPayload<PayloadT, HostEventT extends HostEvent> = PayloadT | HostEventRequest<HostEventT>;
338
+ /**
339
+ * Deep `Partial` of a request type: every field optional at every depth, with no
340
+ * index signature — so object literals carrying unknown fields are flagged.
341
+ */
342
+ export type DeepPartial<T> = T extends (infer U)[] ? DeepPartial<U>[] : T extends object ? {
343
+ [K in keyof T]?: DeepPartial<T[K]>;
344
+ } : T;
345
+ /**
346
+ * `trigger()`'s `data` type: an all-optional view of the event's request type.
347
+ * See {@link HostEventRequest} and the `*Request` interfaces, e.g. {@link SearchRequest}.
348
+ * No-payload events take `{}`. SDK 1.54.0 makes this strict (required fields enforced).
349
+ */
350
+ export type TriggerData<HostEventT extends HostEvent> = HostEventRequest<HostEventT> extends void ? Record<string, never> : DeepPartial<HostEventRequest<HostEventT>>;
351
+ /**
352
+ * Response type returned by `embed.trigger()`.
353
+ */
354
+ export type TriggerResponse<PayloadT, HostEventT extends HostEvent, ContextT extends ContextType = ContextType> = PayloadT extends HostEventRequest<HostEventT> ? HostEventResponse<HostEventT, ContextT> : any;
355
+ /**
356
+ * String-name keyed views of the contracts, for the host (ThoughtSpot app)
357
+ * side, which addresses events by their wire value (e.g.
358
+ * 'UpdateRuntimeFilters') rather than the {@link HostEvent} enum member.
359
+ */
360
+ export type HostEventName = `${HostEvent}`;
361
+ /**
362
+ * Resolves a host event's request type from its wire name.
363
+ */
364
+ export type HostEventRequestByName<NameT extends string> = {
365
+ [EventT in HostEvent]: `${EventT}` extends NameT ? HostEventRequest<EventT> : never;
366
+ }[HostEvent] extends never ? any : {
367
+ [EventT in HostEvent]: `${EventT}` extends NameT ? HostEventRequest<EventT> : never;
368
+ }[HostEvent];
369
+ /**
370
+ * Resolves a host event's response type from its wire name.
371
+ */
372
+ export type HostEventResponseByName<NameT extends string> = {
373
+ [EventT in HostEvent]: `${EventT}` extends NameT ? HostEventResponse<EventT> : never;
374
+ }[HostEvent] extends never ? any : {
375
+ [EventT in HostEvent]: `${EventT}` extends NameT ? HostEventResponse<EventT> : never;
376
+ }[HostEvent];
377
+ export type { UIPassthroughContractBase, EmbedApiHostEventMapping };
378
+ //# sourceMappingURL=host-event-contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-event-contracts.d.ts","sourceRoot":"","sources":["host-event-contracts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Copyright (c) 2026
3
+ *
4
+ * `@thoughtspot/visual-embed-sdk/contracts`
5
+ *
6
+ * Single source of truth for the Visual Embed SDK <-> ThoughtSpot app event
7
+ * contracts. Consumed by:
8
+ * - the SDK itself (compile-time types for `trigger()` / `on()`),
9
+ * - the ThoughtSpot app (host-side handler typing + runtime validation),
10
+ * - documentation generation.
11
+ *
12
+ * Evolution policy: ADDITIVE ONLY. See host-event-contracts.ts header.
13
+ * @module contracts
14
+ */
15
+ export { HostEvent, EmbedEvent, ContextType, } from '../types';
16
+ export type { RuntimeFilter, RuntimeParameter, MessagePayload, CustomAction, CustomActionPayload, } from '../types';
17
+ export { CustomActionsPosition, CustomActionTarget, } from '../types';
18
+ export * from './host-event-contracts';
19
+ export * from './embed-event-payloads';
20
+ export { UIPassthroughEvent, ApplicabilityLevel, } from './ui-passthrough-contracts';
21
+ export type { Applicability, FilterUpdate, LiveboardFilter, LiveboardParameter, LiveboardTab, LiveboardGroup, UIPassthroughRequest, UIPassthroughResponse, UIPassthroughArrayResponse, } from './ui-passthrough-contracts';
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACH,SAAS,EACT,UAAU,EACV,WAAW,GACd,MAAM,UAAU,CAAC;AAClB,YAAY,EACR,aAAa,EACb,gBAAgB,EAChB,cAAc,EAGd,YAAY,EACZ,mBAAmB,GACtB,MAAM,UAAU,CAAC;AAClB,OAAO,EACH,qBAAqB,EACrB,kBAAkB,GACrB,MAAM,UAAU,CAAC;AAElB,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AAIvC,OAAO,EACH,kBAAkB,EAClB,kBAAkB,GACrB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACR,aAAa,EACb,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,GAC7B,MAAM,4BAA4B,CAAC"}