@thoughtspot/visual-embed-sdk 1.52.0 → 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 (279) hide show
  1. package/cjs/package.json +9 -1
  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 +378 -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 +17 -140
  23. package/cjs/src/embed/app.d.ts.map +1 -1
  24. package/cjs/src/embed/app.js +20 -120
  25. package/cjs/src/embed/app.js.map +1 -1
  26. package/cjs/src/embed/app.spec.js +70 -26
  27. package/cjs/src/embed/app.spec.js.map +1 -1
  28. package/cjs/src/embed/events.spec.js +12 -2
  29. package/cjs/src/embed/events.spec.js.map +1 -1
  30. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +3 -2
  31. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  32. package/cjs/src/embed/hostEventClient/host-event-client.js +23 -18
  33. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  34. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +36 -36
  35. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  36. package/cjs/src/embed/hostEventClient/utils.d.ts +1 -1
  37. package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -1
  38. package/cjs/src/embed/hostEventClient/utils.js +3 -3
  39. package/cjs/src/embed/hostEventClient/utils.js.map +1 -1
  40. package/cjs/src/embed/liveboard.d.ts +9 -161
  41. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  42. package/cjs/src/embed/liveboard.js +66 -134
  43. package/cjs/src/embed/liveboard.js.map +1 -1
  44. package/cjs/src/embed/liveboard.spec.js +211 -28
  45. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  46. package/cjs/src/embed/search.d.ts +14 -0
  47. package/cjs/src/embed/search.d.ts.map +1 -1
  48. package/cjs/src/embed/search.js +4 -1
  49. package/cjs/src/embed/search.js.map +1 -1
  50. package/cjs/src/embed/search.spec.js +65 -0
  51. package/cjs/src/embed/search.spec.js.map +1 -1
  52. package/cjs/src/embed/ts-embed.d.ts +17 -22
  53. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  54. package/cjs/src/embed/ts-embed.js +82 -56
  55. package/cjs/src/embed/ts-embed.js.map +1 -1
  56. package/cjs/src/embed/ts-embed.spec.js +325 -17
  57. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  58. package/cjs/src/full-height.d.ts +137 -0
  59. package/cjs/src/full-height.d.ts.map +1 -0
  60. package/cjs/src/full-height.js +272 -0
  61. package/cjs/src/full-height.js.map +1 -0
  62. package/cjs/src/full-height.spec.d.ts +2 -0
  63. package/cjs/src/full-height.spec.d.ts.map +1 -0
  64. package/cjs/src/full-height.spec.js +835 -0
  65. package/cjs/src/full-height.spec.js.map +1 -0
  66. package/cjs/src/index.d.ts +4 -3
  67. package/cjs/src/index.d.ts.map +1 -1
  68. package/cjs/src/index.js +3 -3
  69. package/cjs/src/index.js.map +1 -1
  70. package/cjs/src/react/all-types-export.d.ts +1 -1
  71. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  72. package/cjs/src/react/all-types-export.js.map +1 -1
  73. package/cjs/src/react/all-types-export.parity.spec.js +55 -3
  74. package/cjs/src/react/all-types-export.parity.spec.js.map +1 -1
  75. package/cjs/src/types.d.ts +540 -3
  76. package/cjs/src/types.d.ts.map +1 -1
  77. package/cjs/src/types.js +326 -1
  78. package/cjs/src/types.js.map +1 -1
  79. package/cjs/src/utils/processTrigger.d.ts +3 -1
  80. package/cjs/src/utils/processTrigger.d.ts.map +1 -1
  81. package/cjs/src/utils/processTrigger.js +19 -51
  82. package/cjs/src/utils/processTrigger.js.map +1 -1
  83. package/cjs/src/utils/transport/iframe-transport.d.ts +55 -0
  84. package/cjs/src/utils/transport/iframe-transport.d.ts.map +1 -0
  85. package/cjs/src/utils/transport/iframe-transport.js +108 -0
  86. package/cjs/src/utils/transport/iframe-transport.js.map +1 -0
  87. package/cjs/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  88. package/cjs/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  89. package/cjs/src/utils/transport/iframe-transport.spec.js +140 -0
  90. package/cjs/src/utils/transport/iframe-transport.spec.js.map +1 -0
  91. package/cjs/src/utils.d.ts +18 -0
  92. package/cjs/src/utils.d.ts.map +1 -1
  93. package/cjs/src/utils.js +39 -1
  94. package/cjs/src/utils.js.map +1 -1
  95. package/cjs/src/utils.spec.js +62 -0
  96. package/cjs/src/utils.spec.js.map +1 -1
  97. package/dist/{index-BMppCU63.js → index-C1pmYb5H.js} +1 -1
  98. package/dist/src/contracts/contracts.spec.d.ts +2 -0
  99. package/dist/src/contracts/contracts.spec.d.ts.map +1 -0
  100. package/dist/src/contracts/embed-event-payloads.d.ts +73 -0
  101. package/dist/src/contracts/embed-event-payloads.d.ts.map +1 -0
  102. package/dist/src/contracts/host-event-contracts.d.ts +378 -0
  103. package/dist/src/contracts/host-event-contracts.d.ts.map +1 -0
  104. package/dist/src/contracts/index.d.ts +22 -0
  105. package/dist/src/contracts/index.d.ts.map +1 -0
  106. package/dist/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  107. package/dist/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  108. package/dist/src/embed/app.d.ts +17 -140
  109. package/dist/src/embed/app.d.ts.map +1 -1
  110. package/dist/src/embed/hostEventClient/host-event-client.d.ts +3 -2
  111. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  112. package/dist/src/embed/hostEventClient/utils.d.ts +1 -1
  113. package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -1
  114. package/dist/src/embed/liveboard.d.ts +9 -161
  115. package/dist/src/embed/liveboard.d.ts.map +1 -1
  116. package/dist/src/embed/search.d.ts +14 -0
  117. package/dist/src/embed/search.d.ts.map +1 -1
  118. package/dist/src/embed/ts-embed.d.ts +17 -22
  119. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  120. package/dist/src/full-height.d.ts +137 -0
  121. package/dist/src/full-height.d.ts.map +1 -0
  122. package/dist/src/full-height.spec.d.ts +2 -0
  123. package/dist/src/full-height.spec.d.ts.map +1 -0
  124. package/dist/src/index.d.ts +4 -3
  125. package/dist/src/index.d.ts.map +1 -1
  126. package/dist/src/react/all-types-export.d.ts +1 -1
  127. package/dist/src/react/all-types-export.d.ts.map +1 -1
  128. package/dist/src/types.d.ts +540 -3
  129. package/dist/src/types.d.ts.map +1 -1
  130. package/dist/src/utils/processTrigger.d.ts +3 -1
  131. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  132. package/dist/src/utils/transport/iframe-transport.d.ts +55 -0
  133. package/dist/src/utils/transport/iframe-transport.d.ts.map +1 -0
  134. package/dist/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  135. package/dist/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  136. package/dist/src/utils.d.ts +18 -0
  137. package/dist/src/utils.d.ts.map +1 -1
  138. package/dist/tsembed-react.es.js +925 -363
  139. package/dist/tsembed-react.js +924 -362
  140. package/dist/tsembed.es.js +925 -363
  141. package/dist/tsembed.js +924 -362
  142. package/dist/visual-embed-sdk-react-full.d.ts +1357 -656
  143. package/dist/visual-embed-sdk-react.d.ts +1257 -606
  144. package/dist/visual-embed-sdk.d.ts +1320 -642
  145. package/lib/package.json +9 -1
  146. package/lib/src/contracts/contracts.spec.d.ts +2 -0
  147. package/lib/src/contracts/contracts.spec.d.ts.map +1 -0
  148. package/lib/src/contracts/contracts.spec.js +342 -0
  149. package/lib/src/contracts/contracts.spec.js.map +1 -0
  150. package/lib/src/contracts/embed-event-payloads.d.ts +73 -0
  151. package/lib/src/contracts/embed-event-payloads.d.ts.map +1 -0
  152. package/lib/src/contracts/embed-event-payloads.js +2 -0
  153. package/lib/src/contracts/embed-event-payloads.js.map +1 -0
  154. package/lib/src/contracts/host-event-contracts.d.ts +378 -0
  155. package/lib/src/contracts/host-event-contracts.d.ts.map +1 -0
  156. package/lib/src/contracts/host-event-contracts.js +2 -0
  157. package/lib/src/contracts/host-event-contracts.js.map +1 -0
  158. package/lib/src/contracts/index.d.ts +22 -0
  159. package/lib/src/contracts/index.d.ts.map +1 -0
  160. package/lib/src/contracts/index.js +22 -0
  161. package/lib/src/contracts/index.js.map +1 -0
  162. package/lib/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  163. package/lib/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  164. package/lib/src/{embed/hostEventClient/contracts.js → contracts/ui-passthrough-contracts.js} +6 -2
  165. package/lib/src/contracts/ui-passthrough-contracts.js.map +1 -0
  166. package/lib/src/embed/app.d.ts +17 -140
  167. package/lib/src/embed/app.d.ts.map +1 -1
  168. package/lib/src/embed/app.js +22 -122
  169. package/lib/src/embed/app.js.map +1 -1
  170. package/lib/src/embed/app.spec.js +70 -26
  171. package/lib/src/embed/app.spec.js.map +1 -1
  172. package/lib/src/embed/events.spec.js +12 -2
  173. package/lib/src/embed/events.spec.js.map +1 -1
  174. package/lib/src/embed/hostEventClient/host-event-client.d.ts +3 -2
  175. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  176. package/lib/src/embed/hostEventClient/host-event-client.js +6 -1
  177. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  178. package/lib/src/embed/hostEventClient/host-event-client.spec.js +1 -1
  179. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  180. package/lib/src/embed/hostEventClient/utils.d.ts +1 -1
  181. package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -1
  182. package/lib/src/embed/hostEventClient/utils.js +1 -1
  183. package/lib/src/embed/hostEventClient/utils.js.map +1 -1
  184. package/lib/src/embed/liveboard.d.ts +9 -161
  185. package/lib/src/embed/liveboard.d.ts.map +1 -1
  186. package/lib/src/embed/liveboard.js +67 -135
  187. package/lib/src/embed/liveboard.js.map +1 -1
  188. package/lib/src/embed/liveboard.spec.js +211 -28
  189. package/lib/src/embed/liveboard.spec.js.map +1 -1
  190. package/lib/src/embed/search.d.ts +14 -0
  191. package/lib/src/embed/search.d.ts.map +1 -1
  192. package/lib/src/embed/search.js +4 -1
  193. package/lib/src/embed/search.js.map +1 -1
  194. package/lib/src/embed/search.spec.js +65 -0
  195. package/lib/src/embed/search.spec.js.map +1 -1
  196. package/lib/src/embed/ts-embed.d.ts +17 -22
  197. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  198. package/lib/src/embed/ts-embed.js +82 -56
  199. package/lib/src/embed/ts-embed.js.map +1 -1
  200. package/lib/src/embed/ts-embed.spec.js +322 -14
  201. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  202. package/lib/src/full-height.d.ts +137 -0
  203. package/lib/src/full-height.d.ts.map +1 -0
  204. package/lib/src/full-height.js +268 -0
  205. package/lib/src/full-height.js.map +1 -0
  206. package/lib/src/full-height.spec.d.ts +2 -0
  207. package/lib/src/full-height.spec.d.ts.map +1 -0
  208. package/lib/src/full-height.spec.js +833 -0
  209. package/lib/src/full-height.spec.js.map +1 -0
  210. package/lib/src/index.d.ts +4 -3
  211. package/lib/src/index.d.ts.map +1 -1
  212. package/lib/src/index.js +1 -1
  213. package/lib/src/index.js.map +1 -1
  214. package/lib/src/react/all-types-export.d.ts +1 -1
  215. package/lib/src/react/all-types-export.d.ts.map +1 -1
  216. package/lib/src/react/all-types-export.js.map +1 -1
  217. package/lib/src/react/all-types-export.parity.spec.js +55 -3
  218. package/lib/src/react/all-types-export.parity.spec.js.map +1 -1
  219. package/lib/src/types.d.ts +540 -3
  220. package/lib/src/types.d.ts.map +1 -1
  221. package/lib/src/types.js +326 -1
  222. package/lib/src/types.js.map +1 -1
  223. package/lib/src/utils/processTrigger.d.ts +3 -1
  224. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  225. package/lib/src/utils/processTrigger.js +19 -51
  226. package/lib/src/utils/processTrigger.js.map +1 -1
  227. package/lib/src/utils/transport/iframe-transport.d.ts +55 -0
  228. package/lib/src/utils/transport/iframe-transport.d.ts.map +1 -0
  229. package/lib/src/utils/transport/iframe-transport.js +101 -0
  230. package/lib/src/utils/transport/iframe-transport.js.map +1 -0
  231. package/lib/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  232. package/lib/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  233. package/lib/src/utils/transport/iframe-transport.spec.js +138 -0
  234. package/lib/src/utils/transport/iframe-transport.spec.js.map +1 -0
  235. package/lib/src/utils.d.ts +18 -0
  236. package/lib/src/utils.d.ts.map +1 -1
  237. package/lib/src/utils.js +37 -0
  238. package/lib/src/utils.js.map +1 -1
  239. package/lib/src/utils.spec.js +63 -1
  240. package/lib/src/utils.spec.js.map +1 -1
  241. package/lib/src/visual-embed-sdk.d.ts +1320 -642
  242. package/package.json +9 -1
  243. package/src/contracts/contracts.spec.ts +392 -0
  244. package/src/contracts/embed-event-payloads.ts +83 -0
  245. package/src/contracts/host-event-contracts.ts +456 -0
  246. package/src/contracts/index.ts +53 -0
  247. package/src/contracts/ui-passthrough-contracts.ts +301 -0
  248. package/src/embed/app.spec.ts +86 -34
  249. package/src/embed/app.ts +37 -264
  250. package/src/embed/events.spec.ts +14 -2
  251. package/src/embed/hostEventClient/host-event-client.spec.ts +2 -2
  252. package/src/embed/hostEventClient/host-event-client.ts +18 -5
  253. package/src/embed/hostEventClient/utils.ts +2 -1
  254. package/src/embed/liveboard.spec.ts +257 -38
  255. package/src/embed/liveboard.ts +75 -296
  256. package/src/embed/search.spec.ts +80 -0
  257. package/src/embed/search.ts +20 -0
  258. package/src/embed/ts-embed.spec.ts +448 -15
  259. package/src/embed/ts-embed.ts +109 -66
  260. package/src/full-height.spec.ts +1008 -0
  261. package/src/full-height.ts +361 -0
  262. package/src/index.ts +93 -5
  263. package/src/react/all-types-export.parity.spec.ts +63 -3
  264. package/src/react/all-types-export.ts +45 -0
  265. package/src/types.ts +540 -1
  266. package/src/utils/processTrigger.ts +28 -58
  267. package/src/utils/transport/iframe-transport.spec.ts +177 -0
  268. package/src/utils/transport/iframe-transport.ts +122 -0
  269. package/src/utils.spec.ts +71 -0
  270. package/src/utils.ts +38 -0
  271. package/cjs/src/embed/hostEventClient/contracts.d.ts +0 -231
  272. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  273. package/cjs/src/embed/hostEventClient/contracts.js.map +0 -1
  274. package/dist/src/embed/hostEventClient/contracts.d.ts +0 -231
  275. package/dist/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  276. package/lib/src/embed/hostEventClient/contracts.d.ts +0 -231
  277. package/lib/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  278. package/lib/src/embed/hostEventClient/contracts.js.map +0 -1
  279. package/src/embed/hostEventClient/contracts.ts +0 -262
@@ -13,13 +13,17 @@ exports.PinboardEmbed = exports.LiveboardEmbed = void 0;
13
13
  const preview_service_1 = require("../utils/graphql/preview-service");
14
14
  const errors_1 = require("../errors");
15
15
  const types_1 = require("../types");
16
+ const full_height_1 = require("../full-height");
16
17
  const utils_1 = require("../utils");
17
- const config_1 = require("../config");
18
18
  const ts_embed_1 = require("./ts-embed");
19
19
  const global_styles_1 = require("../utils/global-styles");
20
20
  const logger_1 = require("../utils/logger");
21
21
  const spotter_utils_1 = require("./spotter-utils");
22
22
  const spotter_viz_utils_1 = require("./spotter-viz-utils");
23
+ // Home unmounts the liveboard container, which is how its state gets cleared. The
24
+ // settle window gives the container time to do it before we ask for the liveboard back.
25
+ const HOME_ROUTE = 'home';
26
+ const HOME_SETTLE_MS = 200;
23
27
  /**
24
28
  * Embed a ThoughtSpot Liveboard or visualization. When rendered it already
25
29
  * waits for the authentication to complete, so you need not wait for
@@ -39,59 +43,6 @@ class LiveboardEmbed extends ts_embed_1.V1Embed {
39
43
  constructor(domSelector, viewConfig) {
40
44
  viewConfig.embedComponentType = 'LiveboardEmbed';
41
45
  super(domSelector, viewConfig);
42
- this.defaultHeight = 500;
43
- this.lazyLoadScrollContainers = [];
44
- this.sendFullHeightLazyLoadData = () => {
45
- const data = (0, utils_1.calculateVisibleElementData)(this.iFrame, this.viewConfig.enableScrollableContainerLazyLoading);
46
- // this should be fired only if the lazyLoadingForFullHeight and fullHeight are true
47
- if (this.viewConfig.lazyLoadingForFullHeight && this.viewConfig.fullHeight) {
48
- this.trigger(types_1.HostEvent.VisibleEmbedCoordinates, data);
49
- }
50
- };
51
- /**
52
- * This is a handler for the RequestVisibleEmbedCoordinates event.
53
- * It is used to send the visible coordinates data to the host application.
54
- * @param data The event payload
55
- * @param responder The responder function
56
- */
57
- this.requestVisibleEmbedCoordinatesHandler = (data, responder) => {
58
- logger_1.logger.info('Sending RequestVisibleEmbedCoordinates', data);
59
- const visibleCoordinatesData = (0, utils_1.calculateVisibleElementData)(this.iFrame, this.viewConfig.enableScrollableContainerLazyLoading);
60
- responder({ type: types_1.EmbedEvent.RequestVisibleEmbedCoordinates, data: visibleCoordinatesData });
61
- };
62
- /**
63
- * Set the iframe height as per the computed height received
64
- * from the ThoughtSpot app.
65
- * @param data The event payload
66
- */
67
- this.updateIFrameHeight = (data) => {
68
- this.setIFrameHeight(Math.max(data.data, this.defaultHeight));
69
- this.sendFullHeightLazyLoadData();
70
- };
71
- this.embedIframeCenter = (data, responder) => {
72
- const obj = this.getIframeCenter();
73
- responder({ type: types_1.EmbedEvent.EmbedIframeCenter, data: obj });
74
- };
75
- this.setIframeHeightForNonEmbedLiveboard = (data) => {
76
- const { height: frameHeight } = this.viewConfig.frameParams || {};
77
- const liveboardRelatedRoutes = [
78
- '/pinboard/',
79
- '/insights/pinboard/',
80
- '/schedules/',
81
- '/embed/viz/',
82
- '/embed/insights/viz/',
83
- '/liveboard/',
84
- '/insights/liveboard/',
85
- '/tsl-editor/PINBOARD_ANSWER_BOOK/',
86
- '/import-tsl/PINBOARD_ANSWER_BOOK/',
87
- ];
88
- if (liveboardRelatedRoutes.some((path) => data.data.currentPath.startsWith(path))) {
89
- // Ignore the height reset of the frame, if the navigation is
90
- // only within the liveboard page.
91
- return;
92
- }
93
- this.setIFrameHeight(frameHeight || this.defaultHeight);
94
- };
95
46
  /**
96
47
  * @hidden
97
48
  * Internal state to track the current liveboard id.
@@ -105,22 +56,19 @@ class LiveboardEmbed extends ts_embed_1.V1Embed {
105
56
  };
106
57
  if (this.viewConfig.fullHeight === true) {
107
58
  if (this.viewConfig.vizId) {
108
- logger_1.logger.warn('Full height is currently only supported for Liveboard embeds.' +
109
- 'Using full height with vizId might lead to unexpected behavior.');
110
- }
111
- if (this.viewConfig.lazyLoadingForFullHeight === undefined) {
112
- this.viewConfig.lazyLoadingForFullHeight = true;
113
- }
114
- if (this.viewConfig.enableScrollableContainerLazyLoading === undefined) {
115
- this.viewConfig.enableScrollableContainerLazyLoading = true;
59
+ logger_1.logger.warn('Full height is currently only supported for Liveboard embeds.'
60
+ + 'Using full height with vizId might lead to unexpected behavior.');
116
61
  }
117
- if (this.viewConfig.lazyLoadingMargin === undefined) {
118
- this.viewConfig.lazyLoadingMargin = config_1.DEFAULT_LAZY_LOADING_MARGIN;
119
- }
120
- this.on(types_1.EmbedEvent.RouteChange, this.setIframeHeightForNonEmbedLiveboard);
121
- this.on(types_1.EmbedEvent.EmbedHeight, this.updateIFrameHeight);
122
- this.on(types_1.EmbedEvent.EmbedIframeCenter, this.embedIframeCenter);
123
- this.on(types_1.EmbedEvent.RequestVisibleEmbedCoordinates, this.requestVisibleEmbedCoordinatesHandler);
62
+ this.fullHeightController = new full_height_1.FullHeightController(this.viewConfig, {
63
+ getIframe: () => this.iFrame,
64
+ setFrameHeight: (height) => this.setIFrameHeight(height),
65
+ on: (eventType, callback) => {
66
+ this.on(eventType, callback);
67
+ },
68
+ trigger: (hostEvent, data) => {
69
+ this.trigger(hostEvent, data);
70
+ },
71
+ });
124
72
  }
125
73
  }
126
74
  async getAppInitData() {
@@ -138,21 +86,13 @@ class LiveboardEmbed extends ts_embed_1.V1Embed {
138
86
  return queryParams;
139
87
  }
140
88
  getEmbedParamsObject() {
89
+ var _a;
141
90
  let params = {};
142
91
  params = this.getBaseQueryParams(params);
143
- 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;
92
+ 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;
144
93
  const preventLiveboardFilterRemoval = this.viewConfig.preventLiveboardFilterRemoval
145
94
  || this.viewConfig.preventPinboardFilterRemoval;
146
- if (fullHeight === true) {
147
- params[types_1.Param.fullHeight] = true;
148
- if (this.viewConfig.lazyLoadingForFullHeight) {
149
- params[types_1.Param.IsLazyLoadingForEmbedEnabled] = true;
150
- if ((0, utils_1.isValidCssMargin)(this.viewConfig.lazyLoadingMargin)) {
151
- params[types_1.Param.RootMarginForLazyLoad] = this.viewConfig.lazyLoadingMargin;
152
- }
153
- }
154
- }
155
- this.defaultHeight = minimumHeight || defaultHeight || this.defaultHeight;
95
+ (_a = this.fullHeightController) === null || _a === void 0 ? void 0 : _a.addQueryParams(params);
156
96
  if (enableVizTransformations !== undefined) {
157
97
  params[types_1.Param.EnableVizTransformations] = enableVizTransformations.toString();
158
98
  }
@@ -379,19 +319,45 @@ class LiveboardEmbed extends ts_embed_1.V1Embed {
379
319
  }
380
320
  beforePrerenderVisible() {
381
321
  super.beforePrerenderVisible();
382
- const embedObj = this.getPreRenderObj();
383
- this.executeAfterEmbedContainerLoaded(() => {
384
- this.navigateToLiveboard(this.viewConfig.liveboardId, this.viewConfig.vizId, this.viewConfig.activeTabId, this.viewConfig.personalizedViewId);
385
- if (embedObj) {
386
- embedObj.currentLiveboardState = {
387
- liveboardId: this.viewConfig.liveboardId,
388
- vizId: this.viewConfig.vizId,
389
- activeTabId: this.viewConfig.activeTabId,
390
- personalizedViewId: this.viewConfig.personalizedViewId,
391
- };
322
+ // Captured before showPreRender() hands the wrapper over to this instance.
323
+ // Itself means a hide/show, not a hand-over, so there is nothing stale to clear.
324
+ const previous = this.getPreRenderObj();
325
+ const showing = previous === this ? undefined : previous === null || previous === void 0 ? void 0 : previous.currentLiveboardState;
326
+ this.executeAfterEmbedContainerLoaded(async () => {
327
+ // Without this the params callback suspends on its await and Navigate
328
+ // goes out first, so the container loads with the previous config's filters.
329
+ await this.preRenderParamsApplied;
330
+ if (this.isShowingLiveboardRoute(showing)) {
331
+ // Navigate to the route we are already on is a no-op, so the liveboard
332
+ // keeps its state. Home unmounts the container, which clears it.
333
+ this.trigger(types_1.HostEvent.Navigate, HOME_ROUTE)
334
+ .catch((error) => logger_1.logger.warn('Could not route via home', error));
335
+ // Not awaited above: the container never acks Navigate, so that promise
336
+ // only settles on the 30s trigger timeout.
337
+ await new Promise((resolve) => {
338
+ setTimeout(resolve, HOME_SETTLE_MS);
339
+ });
392
340
  }
341
+ this.navigateToLiveboard(this.viewConfig.liveboardId, this.viewConfig.vizId, this.viewConfig.activeTabId, this.viewConfig.personalizedViewId);
342
+ this.currentLiveboardState = {
343
+ liveboardId: this.viewConfig.liveboardId,
344
+ vizId: this.viewConfig.vizId,
345
+ activeTabId: this.viewConfig.activeTabId,
346
+ personalizedViewId: this.viewConfig.personalizedViewId,
347
+ };
393
348
  });
394
349
  }
350
+ // The whole route, not just the liveboard id: the path is built from the viz, tab
351
+ // and view too, so a same-liveboard show onto another tab is a real navigation.
352
+ isShowingLiveboardRoute(showing) {
353
+ if (!(showing === null || showing === void 0 ? void 0 : showing.liveboardId))
354
+ return false;
355
+ const { liveboardId, vizId, activeTabId, personalizedViewId, } = this.viewConfig;
356
+ return showing.liveboardId === liveboardId
357
+ && showing.vizId === vizId
358
+ && showing.activeTabId === activeTabId
359
+ && showing.personalizedViewId === personalizedViewId;
360
+ }
395
361
  async handleRenderForPrerender() {
396
362
  if ((0, utils_1.isUndefined)(this.viewConfig.liveboardId)) {
397
363
  return this.prerenderGeneric();
@@ -400,11 +366,16 @@ class LiveboardEmbed extends ts_embed_1.V1Embed {
400
366
  }
401
367
  /**
402
368
  * Triggers an event to the embedded app
369
+ * Payload typing follows {@link TsEmbed.trigger}: unknown fields fail to compile
370
+ * from SDK 1.52.0; strict contract checks land in SDK 1.54.0.
403
371
  * @param {HostEvent} messageType The event type
404
- * @param {any} data The payload to send with the message
372
+ * @param {TriggerData} data The payload, typed against the event's contract
405
373
  * @returns A promise that resolves with the response from the embedded app
406
374
  */
407
- trigger(messageType, data = {}, context) {
375
+ trigger(messageType,
376
+ // Mirror TsEmbed.trigger: contract shape is the contextual type and
377
+ // unknown fields on object literals are flagged. Strict in SDK 1.54.0.
378
+ data = {}, context) {
408
379
  const dataWithVizId = data;
409
380
  if (messageType === types_1.HostEvent.SetActiveTab) {
410
381
  this.setActiveTab(data);
@@ -420,52 +391,13 @@ class LiveboardEmbed extends ts_embed_1.V1Embed {
420
391
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
421
392
  */
422
393
  destroy() {
394
+ var _a;
423
395
  super.destroy();
424
- this.unregisterLazyLoadEvents();
396
+ (_a = this.fullHeightController) === null || _a === void 0 ? void 0 : _a.destroy();
425
397
  }
426
398
  postRender() {
427
- this.registerLazyLoadEvents();
428
- }
429
- registerLazyLoadEvents() {
430
- if (!this.iFrame) {
431
- return;
432
- }
433
- if (this.viewConfig.fullHeight && this.viewConfig.lazyLoadingForFullHeight) {
434
- this.unregisterLazyLoadEvents();
435
- // TODO: Use passive: true, install modernizr to check for passive
436
- window.addEventListener('resize', this.sendFullHeightLazyLoadData);
437
- window.addEventListener('scroll', this.sendFullHeightLazyLoadData, true);
438
- if (!this.viewConfig.enableScrollableContainerLazyLoading) {
439
- return;
440
- }
441
- this.lazyLoadScrollContainers = (0, utils_1.getScrollableAncestors)(this.iFrame);
442
- this.lazyLoadScrollContainers.forEach((scrollContainer) => {
443
- scrollContainer.addEventListener('scroll', this.sendFullHeightLazyLoadData);
444
- });
445
- if (typeof ResizeObserver !== 'undefined') {
446
- const resizeTargets = new Set([
447
- this.iFrame.parentElement,
448
- ...(0, utils_1.getEffectiveClippingAncestors)(this.iFrame),
449
- ].filter(Boolean));
450
- this.lazyLoadResizeObserver = new ResizeObserver(this.sendFullHeightLazyLoadData);
451
- resizeTargets.forEach((resizeTarget) => {
452
- this.lazyLoadResizeObserver.observe(resizeTarget);
453
- });
454
- }
455
- }
456
- }
457
- unregisterLazyLoadEvents() {
458
399
  var _a;
459
- if (this.viewConfig.fullHeight && this.viewConfig.lazyLoadingForFullHeight) {
460
- window.removeEventListener('resize', this.sendFullHeightLazyLoadData);
461
- window.removeEventListener('scroll', this.sendFullHeightLazyLoadData, true);
462
- (_a = this.lazyLoadResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
463
- this.lazyLoadResizeObserver = undefined;
464
- this.lazyLoadScrollContainers.forEach((scrollContainer) => {
465
- scrollContainer.removeEventListener('scroll', this.sendFullHeightLazyLoadData);
466
- });
467
- this.lazyLoadScrollContainers = [];
468
- }
400
+ (_a = this.fullHeightController) === null || _a === void 0 ? void 0 : _a.onRender();
469
401
  }
470
402
  /**
471
403
  * Render an embedded ThoughtSpot Liveboard or visualization
@@ -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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"}