@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
@@ -7,9 +7,9 @@
7
7
  * @summary Liveboard & visualization embed
8
8
  * @author Ayon Ghosh <ayon.ghosh@thoughtspot.com>
9
9
  */
10
- import { DOMSelector, HostEvent, SearchLiveboardCommonViewConfig as LiveboardOtherViewConfig, BaseViewConfig, LiveboardAppEmbedViewConfig, ContextType, DefaultAppInitData } from '../types';
10
+ import { DOMSelector, HostEvent, SearchLiveboardCommonViewConfig as LiveboardOtherViewConfig, BaseViewConfig, LiveboardAppEmbedViewConfig, FullHeightViewConfig, ContextType, DefaultAppInitData } from '../types';
11
11
  import { TsEmbed, V1Embed } from './ts-embed';
12
- import { HostEventRequest, TriggerPayload, TriggerResponse } from './hostEventClient/contracts';
12
+ import { HostEventRequest, TriggerData, TriggerResponse } from '../contracts/host-event-contracts';
13
13
  import { SpotterChatViewConfig, StarterPromptsConfig } from './conversation';
14
14
  import { SpotterVizConfig } from './spotter-viz-utils';
15
15
  /**
@@ -26,71 +26,7 @@ export interface LiveboardEmbedAppInitData extends DefaultAppInitData {
26
26
  * The configuration for the embedded Liveboard or visualization page view.
27
27
  * @group Embed components
28
28
  */
29
- export interface LiveboardViewConfig extends BaseViewConfig, LiveboardOtherViewConfig, LiveboardAppEmbedViewConfig {
30
- /**
31
- * If set to true, the embedded object container dynamically resizes
32
- * according to the height of the Liveboard.
33
- *
34
- * **Note**: Using fullHeight loads all visualizations on the
35
- * Liveboard simultaneously, which results in multiple warehouse
36
- * queries and potentially a longer wait for the topmost
37
- * visualizations to display on the screen.
38
- * Setting `fullHeight` to `false` fetches visualizations
39
- * incrementally as users scroll the page to view the charts and tables.
40
- *
41
- * From SDK 1.52.0, enabling `fullHeight` also turns on
42
- * {@link lazyLoadingForFullHeight} and
43
- * {@link enableScrollableContainerLazyLoading}, so visualizations load as
44
- * they scroll into view. Set either flag to `false` to opt out.
45
- *
46
- *
47
- * Supported embed types: `LiveboardEmbed`
48
- * @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 7.2.1
49
- * @example
50
- * ```js
51
- * const embed = new LiveboardEmbed('#embed', {
52
- * ... // other liveboard view config
53
- * fullHeight: true,
54
- * });
55
- * ```
56
- */
57
- fullHeight?: boolean;
58
- /**
59
- * This is the minimum height (in pixels) for a full-height Liveboard.
60
- * Setting this height helps resolve issues with empty Liveboards and
61
- * other screens navigable from a Liveboard.
62
- *
63
- * Supported embed types: `LiveboardEmbed`
64
- * @version SDK: 1.5.0 | ThoughtSpot: ts7.oct.cl, 7.2.1
65
- * @deprecated Use `minimumHeight` instead.
66
- * @default 500
67
- * @example
68
- * ```js
69
- * const embed = new LiveboardEmbed('#embed', {
70
- * ... // other liveboard view config
71
- * fullHeight: true,
72
- * defaultHeight: 600,
73
- * });
74
- * ```
75
- */
76
- defaultHeight?: number;
77
- /**
78
- * This is the minimum height (in pixels) for a full-height Liveboard.
79
- * Setting this height helps resolve issues with empty Liveboards and
80
- * other screens navigable from a Liveboard.
81
- *
82
- * @version SDK: 1.44.2 | ThoughtSpot: 10.15.0.cl
83
- * @default 500
84
- * @example
85
- * ```js
86
- * const embed = new LiveboardEmbed('#embed', {
87
- * ... // other liveboard view config
88
- * fullHeight: true,
89
- * minimumHeight: 600,
90
- * });
91
- * ```
92
- */
93
- minimumHeight?: number;
29
+ export interface LiveboardViewConfig extends BaseViewConfig, FullHeightViewConfig, LiveboardOtherViewConfig, LiveboardAppEmbedViewConfig {
94
30
  /**
95
31
  * If set to true, the context menu in visualizations will be enabled.
96
32
  * @version SDK: 1.1.0 | ThoughtSpot: 8.1.0.sw
@@ -434,77 +370,6 @@ export interface LiveboardViewConfig extends BaseViewConfig, LiveboardOtherViewC
434
370
  * ```
435
371
  */
436
372
  isGranularXLSXCSVSchedulesEnabled?: boolean;
437
- /**
438
- * Loads visualizations only as they scroll into the viewport, instead of
439
- * loading the whole full-height Liveboard at once.
440
- *
441
- * From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
442
- * `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
443
- * set explicitly. Set it to `false` to load every visualization upfront.
444
- * The flag has no effect unless `fullHeight` is enabled.
445
- *
446
- * @type {boolean}
447
- * @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
448
- * @default true when `fullHeight` is enabled, from SDK 1.52.0
449
- * @example
450
- * ```js
451
- * const embed = new LiveboardEmbed('#embed-container', {
452
- * // ...other options
453
- * fullHeight: true,
454
- * lazyLoadingForFullHeight: true,
455
- * })
456
- * ```
457
- */
458
- lazyLoadingForFullHeight?: boolean;
459
- /**
460
- * Computes the visible region of the embed against its scrollable and
461
- * clipping ancestors, instead of treating the browser window as the only
462
- * viewport, and tracks scroll and resize on those ancestors.
463
- *
464
- * From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
465
- * `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
466
- * set explicitly. Set it to `false` when the page scrolls with the window
467
- * and the embed has no clipping ancestor, to skip the extra ancestor
468
- * tracking.
469
- *
470
- * @type {boolean}
471
- * @default true when `fullHeight` is enabled, from SDK 1.52.0
472
- */
473
- enableScrollableContainerLazyLoading?: boolean;
474
- /**
475
- * How far outside the viewport a visualization starts loading, when
476
- * {@link lazyLoadingForFullHeight} is enabled.
477
- *
478
- * For example, if the margin is set to '10px',
479
- * the visualization will be loaded 10px before its top edge is visible in the
480
- * viewport.
481
- *
482
- * The format is similar to CSS margin, so `'500px 0px'` extends the
483
- * prefetch 500px above and below the viewport and not sideways. Accepted
484
- * units are `px`, `em`, `rem`, `%`, `vh` and `vw`, plus bare `0` and
485
- * `auto`; an invalid value is logged and ignored.
486
- *
487
- * From SDK 1.52.0 this defaults to `'500px 0px'` — roughly one
488
- * visualization ahead of the scroll position, so a chart has usually
489
- * finished loading by the time it scrolls into view. Use a smaller margin
490
- * to cut warehouse queries further, or `'0px'` to load a visualization
491
- * only once it is actually visible.
492
- *
493
- * @type {string}
494
- * @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
495
- * @default '500px 0px' when `fullHeight` is enabled, from SDK 1.52.0
496
- * @example
497
- * ```js
498
- * const embed = new LiveboardEmbed('#embed-container', {
499
- * // ...other options
500
- * fullHeight: true,
501
- * lazyLoadingForFullHeight: true,
502
- * // Using 0px, the visualization will be only loaded when it's visible in the viewport.
503
- * lazyLoadingMargin: '0px',
504
- * })
505
- * ```
506
- */
507
- lazyLoadingMargin?: string;
508
373
  /**
509
374
  * showSpotterLimitations : show limitation text
510
375
  * of the spotter underneath the chat input.
@@ -658,9 +523,7 @@ export interface LiveboardViewConfig extends BaseViewConfig, LiveboardOtherViewC
658
523
  */
659
524
  export declare class LiveboardEmbed extends V1Embed {
660
525
  protected viewConfig: LiveboardViewConfig;
661
- private defaultHeight;
662
- private lazyLoadScrollContainers;
663
- private lazyLoadResizeObserver;
526
+ private readonly fullHeightController?;
664
527
  constructor(domSelector: DOMSelector, viewConfig: LiveboardViewConfig);
665
528
  protected getAppInitData(): Promise<LiveboardEmbedAppInitData>;
666
529
  /**
@@ -670,27 +533,11 @@ export declare class LiveboardEmbed extends V1Embed {
670
533
  protected getEmbedParams(): string;
671
534
  protected getEmbedParamsObject(): any;
672
535
  private getIframeSuffixSrc;
673
- private sendFullHeightLazyLoadData;
674
- /**
675
- * This is a handler for the RequestVisibleEmbedCoordinates event.
676
- * It is used to send the visible coordinates data to the host application.
677
- * @param data The event payload
678
- * @param responder The responder function
679
- */
680
- private requestVisibleEmbedCoordinatesHandler;
681
536
  /**
682
537
  * Construct the URL of the embedded ThoughtSpot Liveboard or visualization
683
538
  * to be loaded within the iFrame.
684
539
  */
685
540
  private getIFrameSrc;
686
- /**
687
- * Set the iframe height as per the computed height received
688
- * from the ThoughtSpot app.
689
- * @param data The event payload
690
- */
691
- private updateIFrameHeight;
692
- private embedIframeCenter;
693
- private setIframeHeightForNonEmbedLiveboard;
694
541
  private setActiveTab;
695
542
  private showPreviewLoader;
696
543
  /**
@@ -705,22 +552,23 @@ export declare class LiveboardEmbed extends V1Embed {
705
552
  personalizedViewId: string;
706
553
  };
707
554
  protected beforePrerenderVisible(): void;
555
+ private isShowingLiveboardRoute;
708
556
  protected handleRenderForPrerender(): Promise<TsEmbed>;
709
557
  /**
710
558
  * Triggers an event to the embedded app
559
+ * Payload typing follows {@link TsEmbed.trigger}: unknown fields fail to compile
560
+ * from SDK 1.52.0; strict contract checks land in SDK 1.54.0.
711
561
  * @param {HostEvent} messageType The event type
712
- * @param {any} data The payload to send with the message
562
+ * @param {TriggerData} data The payload, typed against the event's contract
713
563
  * @returns A promise that resolves with the response from the embedded app
714
564
  */
715
- trigger<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(messageType: HostEventT, data?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
565
+ trigger<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(messageType: HostEventT, data?: TriggerData<HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
716
566
  /**
717
567
  * Destroys the ThoughtSpot embed, and remove any nodes from the DOM.
718
568
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
719
569
  */
720
570
  destroy(): void;
721
571
  private postRender;
722
- private registerLazyLoadEvents;
723
- private unregisterLazyLoadEvents;
724
572
  /**
725
573
  * Render an embedded ThoughtSpot Liveboard or visualization
726
574
  * @param renderOptions An object specifying the Liveboard ID,
@@ -1 +1 @@
1
- {"version":3,"file":"liveboard.d.ts","sourceRoot":"","sources":["../../../src/embed/liveboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"liveboard.d.ts","sourceRoot":"","sources":["../../../src/embed/liveboard.ts"],"names":[],"mappings":"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"}
@@ -9,14 +9,18 @@
9
9
  */
10
10
  import { getPreview } from '../utils/graphql/preview-service';
11
11
  import { ERROR_MESSAGE } from '../errors';
12
- import { EmbedEvent, Param, HostEvent, ErrorDetailsTypes, EmbedErrorCodes, } from '../types';
13
- import { calculateVisibleElementData, getEffectiveClippingAncestors, getQueryParamString, getScrollableAncestors, isUndefined, isValidCssMargin, setParamIfDefined } from '../utils';
14
- import { DEFAULT_LAZY_LOADING_MARGIN } from '../config';
12
+ import { EmbedEvent, Param, HostEvent, ErrorDetailsTypes, EmbedErrorCodes, EmbedErrorSeverity, } from '../types';
13
+ import { FullHeightController } from '../full-height';
14
+ import { getQueryParamString, isUndefined, setParamIfDefined } from '../utils';
15
15
  import { V1Embed } from './ts-embed';
16
16
  import { addPreviewStylesIfNotPresent } from '../utils/global-styles';
17
17
  import { logger } from '../utils/logger';
18
18
  import { buildStarterPromptsAppInitData } from './spotter-utils';
19
19
  import { buildSpotterVizAppInitData } from './spotter-viz-utils';
20
+ // Home unmounts the liveboard container, which is how its state gets cleared. The
21
+ // settle window gives the container time to do it before we ask for the liveboard back.
22
+ const HOME_ROUTE = 'home';
23
+ const HOME_SETTLE_MS = 200;
20
24
  /**
21
25
  * Embed a ThoughtSpot Liveboard or visualization. When rendered it already
22
26
  * waits for the authentication to complete, so you need not wait for
@@ -36,59 +40,6 @@ export class LiveboardEmbed extends V1Embed {
36
40
  constructor(domSelector, viewConfig) {
37
41
  viewConfig.embedComponentType = 'LiveboardEmbed';
38
42
  super(domSelector, viewConfig);
39
- this.defaultHeight = 500;
40
- this.lazyLoadScrollContainers = [];
41
- this.sendFullHeightLazyLoadData = () => {
42
- const data = calculateVisibleElementData(this.iFrame, this.viewConfig.enableScrollableContainerLazyLoading);
43
- // this should be fired only if the lazyLoadingForFullHeight and fullHeight are true
44
- if (this.viewConfig.lazyLoadingForFullHeight && this.viewConfig.fullHeight) {
45
- this.trigger(HostEvent.VisibleEmbedCoordinates, data);
46
- }
47
- };
48
- /**
49
- * This is a handler for the RequestVisibleEmbedCoordinates event.
50
- * It is used to send the visible coordinates data to the host application.
51
- * @param data The event payload
52
- * @param responder The responder function
53
- */
54
- this.requestVisibleEmbedCoordinatesHandler = (data, responder) => {
55
- logger.info('Sending RequestVisibleEmbedCoordinates', data);
56
- const visibleCoordinatesData = calculateVisibleElementData(this.iFrame, this.viewConfig.enableScrollableContainerLazyLoading);
57
- responder({ type: EmbedEvent.RequestVisibleEmbedCoordinates, data: visibleCoordinatesData });
58
- };
59
- /**
60
- * Set the iframe height as per the computed height received
61
- * from the ThoughtSpot app.
62
- * @param data The event payload
63
- */
64
- this.updateIFrameHeight = (data) => {
65
- this.setIFrameHeight(Math.max(data.data, this.defaultHeight));
66
- this.sendFullHeightLazyLoadData();
67
- };
68
- this.embedIframeCenter = (data, responder) => {
69
- const obj = this.getIframeCenter();
70
- responder({ type: EmbedEvent.EmbedIframeCenter, data: obj });
71
- };
72
- this.setIframeHeightForNonEmbedLiveboard = (data) => {
73
- const { height: frameHeight } = this.viewConfig.frameParams || {};
74
- const liveboardRelatedRoutes = [
75
- '/pinboard/',
76
- '/insights/pinboard/',
77
- '/schedules/',
78
- '/embed/viz/',
79
- '/embed/insights/viz/',
80
- '/liveboard/',
81
- '/insights/liveboard/',
82
- '/tsl-editor/PINBOARD_ANSWER_BOOK/',
83
- '/import-tsl/PINBOARD_ANSWER_BOOK/',
84
- ];
85
- if (liveboardRelatedRoutes.some((path) => data.data.currentPath.startsWith(path))) {
86
- // Ignore the height reset of the frame, if the navigation is
87
- // only within the liveboard page.
88
- return;
89
- }
90
- this.setIFrameHeight(frameHeight || this.defaultHeight);
91
- };
92
43
  /**
93
44
  * @hidden
94
45
  * Internal state to track the current liveboard id.
@@ -102,22 +53,19 @@ export class LiveboardEmbed extends V1Embed {
102
53
  };
103
54
  if (this.viewConfig.fullHeight === true) {
104
55
  if (this.viewConfig.vizId) {
105
- logger.warn('Full height is currently only supported for Liveboard embeds.' +
106
- 'Using full height with vizId might lead to unexpected behavior.');
107
- }
108
- if (this.viewConfig.lazyLoadingForFullHeight === undefined) {
109
- this.viewConfig.lazyLoadingForFullHeight = true;
110
- }
111
- if (this.viewConfig.enableScrollableContainerLazyLoading === undefined) {
112
- this.viewConfig.enableScrollableContainerLazyLoading = true;
56
+ logger.warn('Full height is currently only supported for Liveboard embeds.'
57
+ + 'Using full height with vizId might lead to unexpected behavior.');
113
58
  }
114
- if (this.viewConfig.lazyLoadingMargin === undefined) {
115
- this.viewConfig.lazyLoadingMargin = DEFAULT_LAZY_LOADING_MARGIN;
116
- }
117
- this.on(EmbedEvent.RouteChange, this.setIframeHeightForNonEmbedLiveboard);
118
- this.on(EmbedEvent.EmbedHeight, this.updateIFrameHeight);
119
- this.on(EmbedEvent.EmbedIframeCenter, this.embedIframeCenter);
120
- this.on(EmbedEvent.RequestVisibleEmbedCoordinates, this.requestVisibleEmbedCoordinatesHandler);
59
+ this.fullHeightController = new FullHeightController(this.viewConfig, {
60
+ getIframe: () => this.iFrame,
61
+ setFrameHeight: (height) => this.setIFrameHeight(height),
62
+ on: (eventType, callback) => {
63
+ this.on(eventType, callback);
64
+ },
65
+ trigger: (hostEvent, data) => {
66
+ this.trigger(hostEvent, data);
67
+ },
68
+ });
121
69
  }
122
70
  }
123
71
  async getAppInitData() {
@@ -135,21 +83,13 @@ export class LiveboardEmbed extends V1Embed {
135
83
  return queryParams;
136
84
  }
137
85
  getEmbedParamsObject() {
86
+ var _a;
138
87
  let params = {};
139
88
  params = this.getBaseQueryParams(params);
140
- const { enableVizTransformations, fullHeight, defaultHeight, minimumHeight, visibleVizs, liveboardV2, vizId, hideTabPanel, activeTabId, hideLiveboardHeader, showLiveboardDescription, showLiveboardTitle, isLiveboardHeaderSticky = true, isLiveboardCompactHeaderEnabled, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs, showMaskedFilterChip = false, isLiveboardMasterpiecesEnabled, newChartsLibrary, isEnhancedFilterInteractivityEnabled, enableAskSage, enable2ColumnLayout, isLiveboardAlwaysOn12ColLayout, dataPanelV2 = true, updatedSpotterExperience, enableCustomColumnGroups = false, oAuthPollingInterval, isForceRedirect, dataSourceId, coverAndFilterOptionInPDF, isLiveboardStylingAndGroupingEnabled, liveboardGutter, isPNGInScheduledEmailsEnabled = false, isLiveboardXLSXCSVDownloadEnabled, isGranularXLSXCSVSchedulesEnabled, showSpotterLimitations, isCentralizedLiveboardFilterUXEnabled = false, isScopedLiveboardFilteringEnabled, isLinkParametersEnabled, updatedSpotterChatPrompt, showSpotterRadiance, enableStopAnswerGenerationEmbed, spotterChatConfig, isThisPeriodInDateFiltersEnabled, isContinuousLiveboardPDFEnabled, enableLiveboardDataCache, } = this.viewConfig;
89
+ const { enableVizTransformations, visibleVizs, liveboardV2, vizId, hideTabPanel, activeTabId, hideLiveboardHeader, showLiveboardDescription, showLiveboardTitle, isLiveboardHeaderSticky = true, isLiveboardCompactHeaderEnabled, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs, showMaskedFilterChip = false, isLiveboardMasterpiecesEnabled, newChartsLibrary, isEnhancedFilterInteractivityEnabled, enableAskSage, enable2ColumnLayout, isLiveboardAlwaysOn12ColLayout, dataPanelV2 = true, updatedSpotterExperience, enableCustomColumnGroups = false, oAuthPollingInterval, isForceRedirect, dataSourceId, coverAndFilterOptionInPDF, isLiveboardStylingAndGroupingEnabled, liveboardGutter, isPNGInScheduledEmailsEnabled = false, isLiveboardXLSXCSVDownloadEnabled, isGranularXLSXCSVSchedulesEnabled, showSpotterLimitations, isCentralizedLiveboardFilterUXEnabled = false, isScopedLiveboardFilteringEnabled, isLinkParametersEnabled, updatedSpotterChatPrompt, showSpotterRadiance, enableStopAnswerGenerationEmbed, spotterChatConfig, isThisPeriodInDateFiltersEnabled, isContinuousLiveboardPDFEnabled, enableLiveboardDataCache, } = this.viewConfig;
141
90
  const preventLiveboardFilterRemoval = this.viewConfig.preventLiveboardFilterRemoval
142
91
  || this.viewConfig.preventPinboardFilterRemoval;
143
- if (fullHeight === true) {
144
- params[Param.fullHeight] = true;
145
- if (this.viewConfig.lazyLoadingForFullHeight) {
146
- params[Param.IsLazyLoadingForEmbedEnabled] = true;
147
- if (isValidCssMargin(this.viewConfig.lazyLoadingMargin)) {
148
- params[Param.RootMarginForLazyLoad] = this.viewConfig.lazyLoadingMargin;
149
- }
150
- }
151
- }
152
- this.defaultHeight = minimumHeight || defaultHeight || this.defaultHeight;
92
+ (_a = this.fullHeightController) === null || _a === void 0 ? void 0 : _a.addQueryParams(params);
153
93
  if (enableVizTransformations !== undefined) {
154
94
  params[Param.EnableVizTransformations] = enableVizTransformations.toString();
155
95
  }
@@ -334,6 +274,7 @@ export class LiveboardEmbed extends V1Embed {
334
274
  errorType: ErrorDetailsTypes.VALIDATION_ERROR,
335
275
  message: ERROR_MESSAGE.LIVEBOARD_VIZ_ID_VALIDATION,
336
276
  code: EmbedErrorCodes.LIVEBOARD_ID_MISSING,
277
+ severity: EmbedErrorSeverity.SEV1,
337
278
  error: ERROR_MESSAGE.LIVEBOARD_VIZ_ID_VALIDATION,
338
279
  });
339
280
  }
@@ -375,19 +316,45 @@ export class LiveboardEmbed extends V1Embed {
375
316
  }
376
317
  beforePrerenderVisible() {
377
318
  super.beforePrerenderVisible();
378
- const embedObj = this.getPreRenderObj();
379
- this.executeAfterEmbedContainerLoaded(() => {
380
- this.navigateToLiveboard(this.viewConfig.liveboardId, this.viewConfig.vizId, this.viewConfig.activeTabId, this.viewConfig.personalizedViewId);
381
- if (embedObj) {
382
- embedObj.currentLiveboardState = {
383
- liveboardId: this.viewConfig.liveboardId,
384
- vizId: this.viewConfig.vizId,
385
- activeTabId: this.viewConfig.activeTabId,
386
- personalizedViewId: this.viewConfig.personalizedViewId,
387
- };
319
+ // Captured before showPreRender() hands the wrapper over to this instance.
320
+ // Itself means a hide/show, not a hand-over, so there is nothing stale to clear.
321
+ const previous = this.getPreRenderObj();
322
+ const showing = previous === this ? undefined : previous === null || previous === void 0 ? void 0 : previous.currentLiveboardState;
323
+ this.executeAfterEmbedContainerLoaded(async () => {
324
+ // Without this the params callback suspends on its await and Navigate
325
+ // goes out first, so the container loads with the previous config's filters.
326
+ await this.preRenderParamsApplied;
327
+ if (this.isShowingLiveboardRoute(showing)) {
328
+ // Navigate to the route we are already on is a no-op, so the liveboard
329
+ // keeps its state. Home unmounts the container, which clears it.
330
+ this.trigger(HostEvent.Navigate, HOME_ROUTE)
331
+ .catch((error) => logger.warn('Could not route via home', error));
332
+ // Not awaited above: the container never acks Navigate, so that promise
333
+ // only settles on the 30s trigger timeout.
334
+ await new Promise((resolve) => {
335
+ setTimeout(resolve, HOME_SETTLE_MS);
336
+ });
388
337
  }
338
+ this.navigateToLiveboard(this.viewConfig.liveboardId, this.viewConfig.vizId, this.viewConfig.activeTabId, this.viewConfig.personalizedViewId);
339
+ this.currentLiveboardState = {
340
+ liveboardId: this.viewConfig.liveboardId,
341
+ vizId: this.viewConfig.vizId,
342
+ activeTabId: this.viewConfig.activeTabId,
343
+ personalizedViewId: this.viewConfig.personalizedViewId,
344
+ };
389
345
  });
390
346
  }
347
+ // The whole route, not just the liveboard id: the path is built from the viz, tab
348
+ // and view too, so a same-liveboard show onto another tab is a real navigation.
349
+ isShowingLiveboardRoute(showing) {
350
+ if (!(showing === null || showing === void 0 ? void 0 : showing.liveboardId))
351
+ return false;
352
+ const { liveboardId, vizId, activeTabId, personalizedViewId, } = this.viewConfig;
353
+ return showing.liveboardId === liveboardId
354
+ && showing.vizId === vizId
355
+ && showing.activeTabId === activeTabId
356
+ && showing.personalizedViewId === personalizedViewId;
357
+ }
391
358
  async handleRenderForPrerender() {
392
359
  if (isUndefined(this.viewConfig.liveboardId)) {
393
360
  return this.prerenderGeneric();
@@ -396,11 +363,16 @@ export class LiveboardEmbed extends V1Embed {
396
363
  }
397
364
  /**
398
365
  * Triggers an event to the embedded app
366
+ * Payload typing follows {@link TsEmbed.trigger}: unknown fields fail to compile
367
+ * from SDK 1.52.0; strict contract checks land in SDK 1.54.0.
399
368
  * @param {HostEvent} messageType The event type
400
- * @param {any} data The payload to send with the message
369
+ * @param {TriggerData} data The payload, typed against the event's contract
401
370
  * @returns A promise that resolves with the response from the embedded app
402
371
  */
403
- trigger(messageType, data = {}, context) {
372
+ trigger(messageType,
373
+ // Mirror TsEmbed.trigger: contract shape is the contextual type and
374
+ // unknown fields on object literals are flagged. Strict in SDK 1.54.0.
375
+ data = {}, context) {
404
376
  const dataWithVizId = data;
405
377
  if (messageType === HostEvent.SetActiveTab) {
406
378
  this.setActiveTab(data);
@@ -416,52 +388,13 @@ export class LiveboardEmbed extends V1Embed {
416
388
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
417
389
  */
418
390
  destroy() {
391
+ var _a;
419
392
  super.destroy();
420
- this.unregisterLazyLoadEvents();
393
+ (_a = this.fullHeightController) === null || _a === void 0 ? void 0 : _a.destroy();
421
394
  }
422
395
  postRender() {
423
- this.registerLazyLoadEvents();
424
- }
425
- registerLazyLoadEvents() {
426
- if (!this.iFrame) {
427
- return;
428
- }
429
- if (this.viewConfig.fullHeight && this.viewConfig.lazyLoadingForFullHeight) {
430
- this.unregisterLazyLoadEvents();
431
- // TODO: Use passive: true, install modernizr to check for passive
432
- window.addEventListener('resize', this.sendFullHeightLazyLoadData);
433
- window.addEventListener('scroll', this.sendFullHeightLazyLoadData, true);
434
- if (!this.viewConfig.enableScrollableContainerLazyLoading) {
435
- return;
436
- }
437
- this.lazyLoadScrollContainers = getScrollableAncestors(this.iFrame);
438
- this.lazyLoadScrollContainers.forEach((scrollContainer) => {
439
- scrollContainer.addEventListener('scroll', this.sendFullHeightLazyLoadData);
440
- });
441
- if (typeof ResizeObserver !== 'undefined') {
442
- const resizeTargets = new Set([
443
- this.iFrame.parentElement,
444
- ...getEffectiveClippingAncestors(this.iFrame),
445
- ].filter(Boolean));
446
- this.lazyLoadResizeObserver = new ResizeObserver(this.sendFullHeightLazyLoadData);
447
- resizeTargets.forEach((resizeTarget) => {
448
- this.lazyLoadResizeObserver.observe(resizeTarget);
449
- });
450
- }
451
- }
452
- }
453
- unregisterLazyLoadEvents() {
454
396
  var _a;
455
- if (this.viewConfig.fullHeight && this.viewConfig.lazyLoadingForFullHeight) {
456
- window.removeEventListener('resize', this.sendFullHeightLazyLoadData);
457
- window.removeEventListener('scroll', this.sendFullHeightLazyLoadData, true);
458
- (_a = this.lazyLoadResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
459
- this.lazyLoadResizeObserver = undefined;
460
- this.lazyLoadScrollContainers.forEach((scrollContainer) => {
461
- scrollContainer.removeEventListener('scroll', this.sendFullHeightLazyLoadData);
462
- });
463
- this.lazyLoadScrollContainers = [];
464
- }
397
+ (_a = this.fullHeightController) === null || _a === void 0 ? void 0 : _a.onRender();
465
398
  }
466
399
  /**
467
400
  * Render an embedded ThoughtSpot Liveboard or visualization
@@ -485,7 +418,7 @@ export class LiveboardEmbed extends V1Embed {
485
418
  if (this.isRendered) {
486
419
  this.trigger(HostEvent.Navigate, path.substring(1));
487
420
  }
488
- else if (this.getPreRenderConfig().preRenderId) {
421
+ else if (this.getPreRenderConfig().id) {
489
422
  this.preRender(true);
490
423
  }
491
424
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"liveboard.js","sourceRoot":"","sources":["../../../src/embed/liveboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"liveboard.js","sourceRoot":"","sources":["../../../src/embed/liveboard.ts"],"names":[],"mappings":"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"}