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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (385) hide show
  1. package/cjs/package.json +19 -4
  2. package/cjs/src/contracts/contracts.spec.d.ts +2 -0
  3. package/cjs/src/contracts/contracts.spec.d.ts.map +1 -0
  4. package/cjs/src/contracts/contracts.spec.js +345 -0
  5. package/cjs/src/contracts/contracts.spec.js.map +1 -0
  6. package/cjs/src/contracts/embed-event-payloads.d.ts +73 -0
  7. package/cjs/src/contracts/embed-event-payloads.d.ts.map +1 -0
  8. package/cjs/src/contracts/embed-event-payloads.js +3 -0
  9. package/cjs/src/contracts/embed-event-payloads.js.map +1 -0
  10. package/cjs/src/contracts/host-event-contracts.d.ts +416 -0
  11. package/cjs/src/contracts/host-event-contracts.d.ts.map +1 -0
  12. package/cjs/src/contracts/host-event-contracts.js +3 -0
  13. package/cjs/src/contracts/host-event-contracts.js.map +1 -0
  14. package/cjs/src/contracts/index.d.ts +22 -0
  15. package/cjs/src/contracts/index.d.ts.map +1 -0
  16. package/cjs/src/contracts/index.js +33 -0
  17. package/cjs/src/contracts/index.js.map +1 -0
  18. package/cjs/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  19. package/cjs/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  20. package/cjs/src/{embed/hostEventClient/contracts.js → contracts/ui-passthrough-contracts.js} +6 -2
  21. package/cjs/src/contracts/ui-passthrough-contracts.js.map +1 -0
  22. package/cjs/src/embed/app.d.ts +21 -143
  23. package/cjs/src/embed/app.d.ts.map +1 -1
  24. package/cjs/src/embed/app.js +21 -121
  25. package/cjs/src/embed/app.js.map +1 -1
  26. package/cjs/src/embed/app.spec.js +80 -26
  27. package/cjs/src/embed/app.spec.js.map +1 -1
  28. package/cjs/src/embed/auto-frame-renderer.js +1 -1
  29. package/cjs/src/embed/auto-frame-renderer.js.map +1 -1
  30. package/cjs/src/embed/auto-frame-renderer.spec.js +24 -13
  31. package/cjs/src/embed/auto-frame-renderer.spec.js.map +1 -1
  32. package/cjs/src/embed/bodyless-conversation.js +1 -1
  33. package/cjs/src/embed/bodyless-conversation.js.map +1 -1
  34. package/cjs/src/embed/conversation.d.ts +1 -0
  35. package/cjs/src/embed/conversation.d.ts.map +1 -1
  36. package/cjs/src/embed/conversation.js +4 -4
  37. package/cjs/src/embed/conversation.js.map +1 -1
  38. package/cjs/src/embed/conversation.spec.js +35 -24
  39. package/cjs/src/embed/conversation.spec.js.map +1 -1
  40. package/cjs/src/embed/embedConfig.spec.js +2 -1
  41. package/cjs/src/embed/embedConfig.spec.js.map +1 -1
  42. package/cjs/src/embed/events.spec.js +12 -2
  43. package/cjs/src/embed/events.spec.js.map +1 -1
  44. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +5 -4
  45. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  46. package/cjs/src/embed/hostEventClient/host-event-client.js +34 -23
  47. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  48. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +50 -44
  49. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  50. package/cjs/src/embed/hostEventClient/utils.d.ts +10 -1
  51. package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -1
  52. package/cjs/src/embed/hostEventClient/utils.js +52 -6
  53. package/cjs/src/embed/hostEventClient/utils.js.map +1 -1
  54. package/cjs/src/embed/hostEventClient/utils.spec.js +151 -0
  55. package/cjs/src/embed/hostEventClient/utils.spec.js.map +1 -1
  56. package/cjs/src/embed/liveboard.d.ts +13 -164
  57. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  58. package/cjs/src/embed/liveboard.js +72 -135
  59. package/cjs/src/embed/liveboard.js.map +1 -1
  60. package/cjs/src/embed/liveboard.spec.js +213 -29
  61. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  62. package/cjs/src/embed/search-bar.js +1 -1
  63. package/cjs/src/embed/search-bar.js.map +1 -1
  64. package/cjs/src/embed/search.d.ts +14 -0
  65. package/cjs/src/embed/search.d.ts.map +1 -1
  66. package/cjs/src/embed/search.js +5 -2
  67. package/cjs/src/embed/search.js.map +1 -1
  68. package/cjs/src/embed/search.spec.js +85 -0
  69. package/cjs/src/embed/search.spec.js.map +1 -1
  70. package/cjs/src/embed/spotter-utils.d.ts +8 -1
  71. package/cjs/src/embed/spotter-utils.d.ts.map +1 -1
  72. package/cjs/src/embed/spotter-utils.js +14 -1
  73. package/cjs/src/embed/spotter-utils.js.map +1 -1
  74. package/cjs/src/embed/spotter-utils.spec.js +26 -0
  75. package/cjs/src/embed/spotter-utils.spec.js.map +1 -1
  76. package/cjs/src/embed/ts-embed.d.ts +20 -22
  77. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  78. package/cjs/src/embed/ts-embed.js +171 -66
  79. package/cjs/src/embed/ts-embed.js.map +1 -1
  80. package/cjs/src/embed/ts-embed.spec.js +486 -38
  81. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  82. package/cjs/src/errors.js +1 -1
  83. package/cjs/src/errors.js.map +1 -1
  84. package/cjs/src/full-height.d.ts +137 -0
  85. package/cjs/src/full-height.d.ts.map +1 -0
  86. package/cjs/src/full-height.js +272 -0
  87. package/cjs/src/full-height.js.map +1 -0
  88. package/cjs/src/full-height.spec.d.ts +2 -0
  89. package/cjs/src/full-height.spec.d.ts.map +1 -0
  90. package/cjs/src/full-height.spec.js +835 -0
  91. package/cjs/src/full-height.spec.js.map +1 -0
  92. package/cjs/src/index.d.ts +5 -3
  93. package/cjs/src/index.d.ts.map +1 -1
  94. package/cjs/src/index.js +6 -4
  95. package/cjs/src/index.js.map +1 -1
  96. package/cjs/src/react/all-types-export.d.ts +1 -1
  97. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  98. package/cjs/src/react/all-types-export.js +2 -1
  99. package/cjs/src/react/all-types-export.js.map +1 -1
  100. package/cjs/src/react/all-types-export.parity.spec.js +55 -3
  101. package/cjs/src/react/all-types-export.parity.spec.js.map +1 -1
  102. package/cjs/src/types.d.ts +584 -24
  103. package/cjs/src/types.d.ts.map +1 -1
  104. package/cjs/src/types.js +370 -22
  105. package/cjs/src/types.js.map +1 -1
  106. package/cjs/src/utils/authService/tokenizedAuthService.spec.js +2 -1
  107. package/cjs/src/utils/authService/tokenizedAuthService.spec.js.map +1 -1
  108. package/cjs/src/utils/custom-actions.spec.js +4 -2
  109. package/cjs/src/utils/custom-actions.spec.js.map +1 -1
  110. package/cjs/src/utils/filterConverter.d.ts +106 -0
  111. package/cjs/src/utils/filterConverter.d.ts.map +1 -0
  112. package/cjs/src/utils/filterConverter.js +215 -0
  113. package/cjs/src/utils/filterConverter.js.map +1 -0
  114. package/cjs/src/utils/filterConverter.spec.d.ts +2 -0
  115. package/cjs/src/utils/filterConverter.spec.d.ts.map +1 -0
  116. package/cjs/src/utils/filterConverter.spec.js +709 -0
  117. package/cjs/src/utils/filterConverter.spec.js.map +1 -0
  118. package/cjs/src/utils/processData.spec.js +2 -1
  119. package/cjs/src/utils/processData.spec.js.map +1 -1
  120. package/cjs/src/utils/processTrigger.d.ts +3 -1
  121. package/cjs/src/utils/processTrigger.d.ts.map +1 -1
  122. package/cjs/src/utils/processTrigger.js +19 -51
  123. package/cjs/src/utils/processTrigger.js.map +1 -1
  124. package/cjs/src/utils/transport/iframe-transport.d.ts +55 -0
  125. package/cjs/src/utils/transport/iframe-transport.d.ts.map +1 -0
  126. package/cjs/src/utils/transport/iframe-transport.js +108 -0
  127. package/cjs/src/utils/transport/iframe-transport.js.map +1 -0
  128. package/cjs/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  129. package/cjs/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  130. package/cjs/src/utils/transport/iframe-transport.spec.js +140 -0
  131. package/cjs/src/utils/transport/iframe-transport.spec.js.map +1 -0
  132. package/cjs/src/utils.d.ts +18 -0
  133. package/cjs/src/utils.d.ts.map +1 -1
  134. package/cjs/src/utils.js +39 -1
  135. package/cjs/src/utils.js.map +1 -1
  136. package/cjs/src/utils.spec.js +62 -0
  137. package/cjs/src/utils.spec.js.map +1 -1
  138. package/dist/{index-BMppCU63.js → index-CcBYlGo9.js} +1 -1
  139. package/dist/src/contracts/contracts.spec.d.ts +2 -0
  140. package/dist/src/contracts/contracts.spec.d.ts.map +1 -0
  141. package/dist/src/contracts/embed-event-payloads.d.ts +73 -0
  142. package/dist/src/contracts/embed-event-payloads.d.ts.map +1 -0
  143. package/dist/src/contracts/host-event-contracts.d.ts +416 -0
  144. package/dist/src/contracts/host-event-contracts.d.ts.map +1 -0
  145. package/dist/src/contracts/index.d.ts +22 -0
  146. package/dist/src/contracts/index.d.ts.map +1 -0
  147. package/dist/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  148. package/dist/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  149. package/dist/src/embed/app.d.ts +21 -143
  150. package/dist/src/embed/app.d.ts.map +1 -1
  151. package/dist/src/embed/conversation.d.ts +1 -0
  152. package/dist/src/embed/conversation.d.ts.map +1 -1
  153. package/dist/src/embed/hostEventClient/host-event-client.d.ts +5 -4
  154. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  155. package/dist/src/embed/hostEventClient/utils.d.ts +10 -1
  156. package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -1
  157. package/dist/src/embed/liveboard.d.ts +13 -164
  158. package/dist/src/embed/liveboard.d.ts.map +1 -1
  159. package/dist/src/embed/search.d.ts +14 -0
  160. package/dist/src/embed/search.d.ts.map +1 -1
  161. package/dist/src/embed/spotter-utils.d.ts +8 -1
  162. package/dist/src/embed/spotter-utils.d.ts.map +1 -1
  163. package/dist/src/embed/ts-embed.d.ts +20 -22
  164. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  165. package/dist/src/full-height.d.ts +137 -0
  166. package/dist/src/full-height.d.ts.map +1 -0
  167. package/dist/src/full-height.spec.d.ts +2 -0
  168. package/dist/src/full-height.spec.d.ts.map +1 -0
  169. package/dist/src/index.d.ts +5 -3
  170. package/dist/src/index.d.ts.map +1 -1
  171. package/dist/src/react/all-types-export.d.ts +1 -1
  172. package/dist/src/react/all-types-export.d.ts.map +1 -1
  173. package/dist/src/types.d.ts +584 -24
  174. package/dist/src/types.d.ts.map +1 -1
  175. package/dist/src/utils/filterConverter.d.ts +106 -0
  176. package/dist/src/utils/filterConverter.d.ts.map +1 -0
  177. package/dist/src/utils/filterConverter.spec.d.ts +2 -0
  178. package/dist/src/utils/filterConverter.spec.d.ts.map +1 -0
  179. package/dist/src/utils/processTrigger.d.ts +3 -1
  180. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  181. package/dist/src/utils/transport/iframe-transport.d.ts +55 -0
  182. package/dist/src/utils/transport/iframe-transport.d.ts.map +1 -0
  183. package/dist/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  184. package/dist/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  185. package/dist/src/utils.d.ts +18 -0
  186. package/dist/src/utils.d.ts.map +1 -1
  187. package/dist/tsembed-react.es.js +1144 -412
  188. package/dist/tsembed-react.js +1143 -411
  189. package/dist/tsembed.es.js +1357 -418
  190. package/dist/tsembed.js +1352 -412
  191. package/dist/visual-embed-sdk-react-full.d.ts +1514 -651
  192. package/dist/visual-embed-sdk-react.d.ts +1351 -632
  193. package/dist/visual-embed-sdk.d.ts +1508 -668
  194. package/lib/package.json +19 -4
  195. package/lib/src/contracts/contracts.spec.d.ts +2 -0
  196. package/lib/src/contracts/contracts.spec.d.ts.map +1 -0
  197. package/lib/src/contracts/contracts.spec.js +342 -0
  198. package/lib/src/contracts/contracts.spec.js.map +1 -0
  199. package/lib/src/contracts/embed-event-payloads.d.ts +73 -0
  200. package/lib/src/contracts/embed-event-payloads.d.ts.map +1 -0
  201. package/lib/src/contracts/embed-event-payloads.js +2 -0
  202. package/lib/src/contracts/embed-event-payloads.js.map +1 -0
  203. package/lib/src/contracts/host-event-contracts.d.ts +416 -0
  204. package/lib/src/contracts/host-event-contracts.d.ts.map +1 -0
  205. package/lib/src/contracts/host-event-contracts.js +2 -0
  206. package/lib/src/contracts/host-event-contracts.js.map +1 -0
  207. package/lib/src/contracts/index.d.ts +22 -0
  208. package/lib/src/contracts/index.d.ts.map +1 -0
  209. package/lib/src/contracts/index.js +22 -0
  210. package/lib/src/contracts/index.js.map +1 -0
  211. package/lib/src/contracts/ui-passthrough-contracts.d.ts +277 -0
  212. package/lib/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
  213. package/lib/src/{embed/hostEventClient/contracts.js → contracts/ui-passthrough-contracts.js} +6 -2
  214. package/lib/src/contracts/ui-passthrough-contracts.js.map +1 -0
  215. package/lib/src/embed/app.d.ts +21 -143
  216. package/lib/src/embed/app.d.ts.map +1 -1
  217. package/lib/src/embed/app.js +23 -123
  218. package/lib/src/embed/app.js.map +1 -1
  219. package/lib/src/embed/app.spec.js +80 -26
  220. package/lib/src/embed/app.spec.js.map +1 -1
  221. package/lib/src/embed/auto-frame-renderer.js +1 -1
  222. package/lib/src/embed/auto-frame-renderer.js.map +1 -1
  223. package/lib/src/embed/auto-frame-renderer.spec.js +24 -13
  224. package/lib/src/embed/auto-frame-renderer.spec.js.map +1 -1
  225. package/lib/src/embed/bodyless-conversation.js +1 -1
  226. package/lib/src/embed/bodyless-conversation.js.map +1 -1
  227. package/lib/src/embed/conversation.d.ts +1 -0
  228. package/lib/src/embed/conversation.d.ts.map +1 -1
  229. package/lib/src/embed/conversation.js +5 -5
  230. package/lib/src/embed/conversation.js.map +1 -1
  231. package/lib/src/embed/conversation.spec.js +35 -24
  232. package/lib/src/embed/conversation.spec.js.map +1 -1
  233. package/lib/src/embed/embedConfig.spec.js +2 -1
  234. package/lib/src/embed/embedConfig.spec.js.map +1 -1
  235. package/lib/src/embed/events.spec.js +12 -2
  236. package/lib/src/embed/events.spec.js.map +1 -1
  237. package/lib/src/embed/hostEventClient/host-event-client.d.ts +5 -4
  238. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  239. package/lib/src/embed/hostEventClient/host-event-client.js +19 -8
  240. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  241. package/lib/src/embed/hostEventClient/host-event-client.spec.js +15 -9
  242. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  243. package/lib/src/embed/hostEventClient/utils.d.ts +10 -1
  244. package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -1
  245. package/lib/src/embed/hostEventClient/utils.js +48 -3
  246. package/lib/src/embed/hostEventClient/utils.js.map +1 -1
  247. package/lib/src/embed/hostEventClient/utils.spec.js +152 -1
  248. package/lib/src/embed/hostEventClient/utils.spec.js.map +1 -1
  249. package/lib/src/embed/liveboard.d.ts +13 -164
  250. package/lib/src/embed/liveboard.d.ts.map +1 -1
  251. package/lib/src/embed/liveboard.js +73 -136
  252. package/lib/src/embed/liveboard.js.map +1 -1
  253. package/lib/src/embed/liveboard.spec.js +213 -29
  254. package/lib/src/embed/liveboard.spec.js.map +1 -1
  255. package/lib/src/embed/search-bar.js +1 -1
  256. package/lib/src/embed/search-bar.js.map +1 -1
  257. package/lib/src/embed/search.d.ts +14 -0
  258. package/lib/src/embed/search.d.ts.map +1 -1
  259. package/lib/src/embed/search.js +5 -2
  260. package/lib/src/embed/search.js.map +1 -1
  261. package/lib/src/embed/search.spec.js +85 -0
  262. package/lib/src/embed/search.spec.js.map +1 -1
  263. package/lib/src/embed/spotter-utils.d.ts +8 -1
  264. package/lib/src/embed/spotter-utils.d.ts.map +1 -1
  265. package/lib/src/embed/spotter-utils.js +12 -0
  266. package/lib/src/embed/spotter-utils.js.map +1 -1
  267. package/lib/src/embed/spotter-utils.spec.js +27 -1
  268. package/lib/src/embed/spotter-utils.spec.js.map +1 -1
  269. package/lib/src/embed/ts-embed.d.ts +20 -22
  270. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  271. package/lib/src/embed/ts-embed.js +171 -66
  272. package/lib/src/embed/ts-embed.js.map +1 -1
  273. package/lib/src/embed/ts-embed.spec.js +484 -36
  274. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  275. package/lib/src/errors.js +1 -1
  276. package/lib/src/errors.js.map +1 -1
  277. package/lib/src/full-height.d.ts +137 -0
  278. package/lib/src/full-height.d.ts.map +1 -0
  279. package/lib/src/full-height.js +268 -0
  280. package/lib/src/full-height.js.map +1 -0
  281. package/lib/src/full-height.spec.d.ts +2 -0
  282. package/lib/src/full-height.spec.d.ts.map +1 -0
  283. package/lib/src/full-height.spec.js +833 -0
  284. package/lib/src/full-height.spec.js.map +1 -0
  285. package/lib/src/index.d.ts +5 -3
  286. package/lib/src/index.d.ts.map +1 -1
  287. package/lib/src/index.js +3 -2
  288. package/lib/src/index.js.map +1 -1
  289. package/lib/src/react/all-types-export.d.ts +1 -1
  290. package/lib/src/react/all-types-export.d.ts.map +1 -1
  291. package/lib/src/react/all-types-export.js +1 -1
  292. package/lib/src/react/all-types-export.js.map +1 -1
  293. package/lib/src/react/all-types-export.parity.spec.js +55 -3
  294. package/lib/src/react/all-types-export.parity.spec.js.map +1 -1
  295. package/lib/src/types.d.ts +584 -24
  296. package/lib/src/types.d.ts.map +1 -1
  297. package/lib/src/types.js +370 -22
  298. package/lib/src/types.js.map +1 -1
  299. package/lib/src/utils/authService/tokenizedAuthService.spec.js +2 -1
  300. package/lib/src/utils/authService/tokenizedAuthService.spec.js.map +1 -1
  301. package/lib/src/utils/custom-actions.spec.js +4 -2
  302. package/lib/src/utils/custom-actions.spec.js.map +1 -1
  303. package/lib/src/utils/filterConverter.d.ts +106 -0
  304. package/lib/src/utils/filterConverter.d.ts.map +1 -0
  305. package/lib/src/utils/filterConverter.js +210 -0
  306. package/lib/src/utils/filterConverter.js.map +1 -0
  307. package/lib/src/utils/filterConverter.spec.d.ts +2 -0
  308. package/lib/src/utils/filterConverter.spec.d.ts.map +1 -0
  309. package/lib/src/utils/filterConverter.spec.js +707 -0
  310. package/lib/src/utils/filterConverter.spec.js.map +1 -0
  311. package/lib/src/utils/processData.spec.js +2 -1
  312. package/lib/src/utils/processData.spec.js.map +1 -1
  313. package/lib/src/utils/processTrigger.d.ts +3 -1
  314. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  315. package/lib/src/utils/processTrigger.js +19 -51
  316. package/lib/src/utils/processTrigger.js.map +1 -1
  317. package/lib/src/utils/transport/iframe-transport.d.ts +55 -0
  318. package/lib/src/utils/transport/iframe-transport.d.ts.map +1 -0
  319. package/lib/src/utils/transport/iframe-transport.js +101 -0
  320. package/lib/src/utils/transport/iframe-transport.js.map +1 -0
  321. package/lib/src/utils/transport/iframe-transport.spec.d.ts +2 -0
  322. package/lib/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
  323. package/lib/src/utils/transport/iframe-transport.spec.js +138 -0
  324. package/lib/src/utils/transport/iframe-transport.spec.js.map +1 -0
  325. package/lib/src/utils.d.ts +18 -0
  326. package/lib/src/utils.d.ts.map +1 -1
  327. package/lib/src/utils.js +37 -0
  328. package/lib/src/utils.js.map +1 -1
  329. package/lib/src/utils.spec.js +63 -1
  330. package/lib/src/utils.spec.js.map +1 -1
  331. package/lib/src/visual-embed-sdk.d.ts +1508 -668
  332. package/package.json +19 -4
  333. package/src/contracts/contracts.spec.ts +392 -0
  334. package/src/contracts/embed-event-payloads.ts +83 -0
  335. package/src/contracts/host-event-contracts.ts +500 -0
  336. package/src/contracts/index.ts +53 -0
  337. package/src/contracts/ui-passthrough-contracts.ts +301 -0
  338. package/src/embed/app.spec.ts +101 -34
  339. package/src/embed/app.ts +42 -268
  340. package/src/embed/auto-frame-renderer.spec.ts +24 -13
  341. package/src/embed/auto-frame-renderer.ts +1 -1
  342. package/src/embed/bodyless-conversation.ts +1 -1
  343. package/src/embed/conversation.spec.ts +38 -27
  344. package/src/embed/conversation.ts +5 -5
  345. package/src/embed/embedConfig.spec.ts +2 -1
  346. package/src/embed/events.spec.ts +14 -2
  347. package/src/embed/hostEventClient/host-event-client.spec.ts +16 -10
  348. package/src/embed/hostEventClient/host-event-client.ts +31 -10
  349. package/src/embed/hostEventClient/utils.spec.ts +176 -1
  350. package/src/embed/hostEventClient/utils.ts +53 -3
  351. package/src/embed/liveboard.spec.ts +261 -41
  352. package/src/embed/liveboard.ts +85 -300
  353. package/src/embed/search-bar.tsx +1 -1
  354. package/src/embed/search.spec.ts +103 -0
  355. package/src/embed/search.ts +21 -1
  356. package/src/embed/spotter-utils.spec.ts +29 -0
  357. package/src/embed/spotter-utils.ts +16 -0
  358. package/src/embed/ts-embed.spec.ts +650 -36
  359. package/src/embed/ts-embed.ts +205 -76
  360. package/src/errors.ts +1 -1
  361. package/src/full-height.spec.ts +1008 -0
  362. package/src/full-height.ts +361 -0
  363. package/src/index.ts +103 -5
  364. package/src/react/all-types-export.parity.spec.ts +63 -3
  365. package/src/react/all-types-export.ts +49 -0
  366. package/src/types.ts +584 -22
  367. package/src/utils/authService/tokenizedAuthService.spec.ts +2 -1
  368. package/src/utils/custom-actions.spec.ts +4 -2
  369. package/src/utils/filterConverter.spec.ts +801 -0
  370. package/src/utils/filterConverter.ts +304 -0
  371. package/src/utils/processData.spec.ts +2 -1
  372. package/src/utils/processTrigger.ts +28 -58
  373. package/src/utils/transport/iframe-transport.spec.ts +177 -0
  374. package/src/utils/transport/iframe-transport.ts +122 -0
  375. package/src/utils.spec.ts +71 -0
  376. package/src/utils.ts +38 -0
  377. package/cjs/src/embed/hostEventClient/contracts.d.ts +0 -231
  378. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  379. package/cjs/src/embed/hostEventClient/contracts.js.map +0 -1
  380. package/dist/src/embed/hostEventClient/contracts.d.ts +0 -231
  381. package/dist/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  382. package/lib/src/embed/hostEventClient/contracts.d.ts +0 -231
  383. package/lib/src/embed/hostEventClient/contracts.d.ts.map +0 -1
  384. package/lib/src/embed/hostEventClient/contracts.js.map +0 -1
  385. package/src/embed/hostEventClient/contracts.ts +0 -262
@@ -7,11 +7,12 @@
7
7
  */
8
8
  import isEmpty from 'lodash/isEmpty';
9
9
  import isObject from 'lodash/isObject';
10
- import { UIPassthroughEvent, } from './hostEventClient/contracts';
10
+ import { UIPassthroughEvent, } from '../contracts/ui-passthrough-contracts';
11
+ import { isMessageFromIframe } from '../utils/transport/iframe-transport';
11
12
  import { logger } from '../utils/logger';
12
13
  import { getAuthenticationToken } from '../authToken';
13
14
  import { AnswerService } from '../utils/graphql/answerService/answerService';
14
- import { getEncodedQueryParamsString, getCssDimension, getOffsetTop, embedEventStatus, setAttributes, getCustomisations, getRuntimeFilters, getDOMNode, querySelectorAcrossShadowRoot, getFilterQuery, getQueryParamString, getRuntimeParameters, setStyleProperties, removeStyleProperties, getHostEventsConfig, deserializeParam, } from '../utils';
15
+ import { getEncodedQueryParamsString, getCssDimension, embedEventStatus, setAttributes, getCustomisations, getRuntimeFilters, getDOMNode, querySelectorAcrossShadowRoot, getFilterQuery, getQueryParamString, getRuntimeParameters, setStyleProperties, removeStyleProperties, getHostEventsConfig, deserializeParam, } from '../utils';
15
16
  import { getCustomActions } from '../utils/custom-actions';
16
17
  import { getThoughtSpotHost, URL_MAX_LENGTH, DEFAULT_EMBED_WIDTH, DEFAULT_EMBED_HEIGHT, getV2BasePath, } from '../config';
17
18
  import { AuthType, HostEvent, EmbedEvent, Action, Param, ContextMenuTriggerOptions, EmbedErrorSeverity, ErrorDetailsTypes, EmbedErrorCodes, } from '../types';
@@ -38,6 +39,63 @@ const TS_EMBED_ID = '_thoughtspot-embed';
38
39
  */
39
40
  const PRERENDER_CONTAINER_ORIGINAL_POSITION_KEY = 'tsEmbedOriginalPosition';
40
41
  const PRERENDER_WRAPPER_ID_PREFIX = 'tsEmbed-pre-render-wrapper-';
42
+ // The container applies UpdateEmbedParams through React state, so a delivered
43
+ // post is not the same as the params being in effect.
44
+ const UPDATE_EMBED_PARAMS_SETTLE_MS = 200;
45
+ // The container ignores runtimeFilterParams/runtimeParameterParams unless
46
+ // truthy, so null or '' leaves the previous embed's values in place. '&' is
47
+ // truthy and parses to {}.
48
+ const NO_RUNTIME_PARAMS = '&';
49
+ /**
50
+ * Query parameters that stay on the iframe `src` while config is excluded from
51
+ * the URL, which is the default unless the embed sets the
52
+ * `excludeConfigFromURL` additional flag to `false`. These are the parameters the
53
+ * application shell needs before it can receive a postMessage at all: the
54
+ * embed marker, the host application URL used to validate the message origin,
55
+ * the SDK version, the flags that pick the authentication flow, and the
56
+ * boot-time settings that would otherwise be applied a frame late (viewport,
57
+ * log level, locale, formatting and org). Everything else is delivered over
58
+ * `HostEvent.UpdateEmbedParams`.
59
+ * @internal
60
+ */
61
+ const BOOTSTRAP_URL_PARAMS = new Set([
62
+ Param.EmbedApp,
63
+ Param.HostAppUrl,
64
+ Param.Version,
65
+ Param.AuthType,
66
+ Param.AutoLogin,
67
+ Param.DisableLoginRedirect,
68
+ Param.ForceSAMLAutoRedirect,
69
+ Param.cookieless,
70
+ Param.preAuthCache,
71
+ Param.blockNonEmbedFullAppAccess,
72
+ Param.OverrideOrgId,
73
+ Param.ViewPortHeight,
74
+ Param.ViewPortWidth,
75
+ Param.ClientLogLevel,
76
+ Param.OverrideNativeConsole,
77
+ Param.PendoTrackingKey,
78
+ Param.NumberFormatLocale,
79
+ Param.DateFormatLocale,
80
+ Param.CurrencyFormat,
81
+ Param.Locale,
82
+ Param.searchEmbed,
83
+ Param.livedBoardEmbed,
84
+ Param.isSpotterAgentEmbed,
85
+ Param.SpotterEnabled,
86
+ Param.IsFullAppEmbed,
87
+ Param.IsOnBeforeGetVizDataInterceptEnabled,
88
+ Param.LinkOverride,
89
+ Param.EnableLinkOverridesV2,
90
+ Param.DisableRedirectionLinksInNewTab,
91
+ Param.OverrideHistoryState,
92
+ Param.ForceTable,
93
+ Param.StringIDsUrl,
94
+ Param.DataSources,
95
+ Param.ExposeTranslationIDs,
96
+ Param.IconSpriteUrl,
97
+ Param.Tag,
98
+ ]);
41
99
  /**
42
100
  * The event id map from v2 event names to v1 event id
43
101
  * v1 events are the classic embed events implemented in Blink v1
@@ -64,6 +122,7 @@ export class TsEmbed {
64
122
  * The key to store the embed instance in the DOM node
65
123
  */
66
124
  this.embedNodeKey = '__tsEmbed';
125
+ this.embedContainerLoadedKey = '__tsEmbedContainerLoaded';
67
126
  this.isAppInitialized = false;
68
127
  /**
69
128
  * Should we encode URL Query Params using base64 encoding which ThoughtSpot
@@ -84,7 +143,7 @@ export class TsEmbed {
84
143
  const eventType = this.getEventType(event);
85
144
  const eventPort = this.getEventPort(event);
86
145
  const eventData = this.formatEventData(event, eventType);
87
- if (event.source === this.iFrame.contentWindow) {
146
+ if (isMessageFromIframe(event, this.iFrame, this.thoughtSpotHost)) {
88
147
  const processedEventData = processEventData(eventType, eventData, this.thoughtSpotHost, this.isPreRendered ? this.preRenderWrapper : this.hostElement);
89
148
  if (eventType === EmbedEvent.ApiIntercept) {
90
149
  this.handleApiInterceptEvent({ eventData, eventPort });
@@ -226,20 +285,28 @@ export class TsEmbed {
226
285
  this.createEmbedContainerHandler = (source) => () => {
227
286
  const processEmbedContainerReady = () => {
228
287
  logger.debug('processEmbedContainerReady');
229
- this.isEmbedContainerLoaded = true;
288
+ this.markEmbedContainerLoaded();
230
289
  this.executeEmbedContainerReadyCallbacks();
231
290
  };
232
291
  if (source === EmbedEvent.AuthInit) {
233
292
  const AUTH_INIT_FALLBACK_DELAY = 1000;
234
293
  // Wait for 1 second to ensure the embed container is loaded
235
294
  // This is a workaround to ensure the embed container is loaded
236
- // this is needed until all clusters have EmbedListenerReady event
295
+ // this is needed until all clusters have EmbedListenerReady
296
+ // event
237
297
  setTimeout(processEmbedContainerReady, AUTH_INIT_FALLBACK_DELAY);
238
298
  }
239
299
  else if (source === EmbedEvent.EmbedListenerReady) {
240
300
  processEmbedContainerReady();
301
+ if (this.isConfigExcludedFromUrl()) {
302
+ this.triggerUpdateEmbedParams();
303
+ }
241
304
  }
242
305
  };
306
+ // Subclasses that navigate the pre-render on show must await this before
307
+ // triggering Navigate. Resolves even on failure, so navigation is never
308
+ // blocked.
309
+ this.preRenderParamsApplied = Promise.resolve();
243
310
  this.hostElement = getDOMNode(domSelector);
244
311
  this.eventHandlerMap = new Map();
245
312
  this.isError = false;
@@ -556,6 +623,7 @@ export class TsEmbed {
556
623
  return `${basePath}#`;
557
624
  }
558
625
  async getUpdateEmbedParamsObject() {
626
+ var _a, _b;
559
627
  const queryParams = this.getEmbedParamsObject();
560
628
  // Values are URL-serialized (e.g. dataSources as '["guid"]'); parse
561
629
  // them back so the event payload matches a URL load (SCAL-334713).
@@ -563,7 +631,17 @@ export class TsEmbed {
563
631
  queryParams[key] = deserializeParam(queryParams[key]);
564
632
  });
565
633
  const appInitData = await this.getAppInitData();
566
- return { ...this.viewConfig, ...queryParams, ...appInitData };
634
+ return {
635
+ ...this.viewConfig,
636
+ ...queryParams,
637
+ ...appInitData,
638
+ // A show cycle has no URL to carry these, so the payload always
639
+ // states them — including "none", which is the case that leaks the
640
+ // previous filters.
641
+ runtimeFilterParams: getFilterQuery((_a = this.viewConfig.runtimeFilters) !== null && _a !== void 0 ? _a : []) || NO_RUNTIME_PARAMS,
642
+ runtimeParameterParams: getRuntimeParameters((_b = this.viewConfig.runtimeParameters) !== null && _b !== void 0 ? _b : [])
643
+ || NO_RUNTIME_PARAMS,
644
+ };
567
645
  }
568
646
  /**
569
647
  * Common query params set for all the embed modes.
@@ -727,13 +805,20 @@ export class TsEmbed {
727
805
  return path;
728
806
  }
729
807
  getEmbedParams() {
730
- const queryParams = this.getEmbedParamsObject();
808
+ const queryParams = this.getUrlQueryParamsObject();
731
809
  return getQueryParamString(queryParams);
732
810
  }
733
811
  getEmbedParamsObject() {
734
812
  const params = this.getBaseQueryParams();
735
813
  return params;
736
814
  }
815
+ getUrlQueryParamsObject() {
816
+ const queryParams = this.getEmbedParamsObject();
817
+ if (!this.isConfigExcludedFromUrl()) {
818
+ return queryParams;
819
+ }
820
+ return Object.fromEntries(Object.entries(queryParams).filter(([key]) => BOOTSTRAP_URL_PARAMS.has(key)));
821
+ }
737
822
  getRootIframeSrc() {
738
823
  const query = this.getEmbedParams();
739
824
  return this.getEmbedBasePath(query);
@@ -1196,40 +1281,6 @@ export class TsEmbed {
1196
1281
  getCompatibleEventType(eventType) {
1197
1282
  return V1EventMap[eventType] || eventType;
1198
1283
  }
1199
- /**
1200
- * Calculates the iframe center for the current visible viewPort
1201
- * of iframe using Scroll position of Host App, offsetTop for iframe
1202
- * in Host app. ViewPort height of the tab.
1203
- * @returns iframe Center in visible viewport,
1204
- * Iframe height,
1205
- * View port height.
1206
- */
1207
- getIframeCenter() {
1208
- const offsetTopClient = getOffsetTop(this.iFrame);
1209
- const scrollTopClient = window.scrollY;
1210
- const viewPortHeight = window.innerHeight;
1211
- const iframeHeight = this.iFrame.offsetHeight;
1212
- const iframeScrolled = scrollTopClient - offsetTopClient;
1213
- let iframeVisibleViewPort;
1214
- let iframeOffset;
1215
- if (iframeScrolled < 0) {
1216
- iframeVisibleViewPort = viewPortHeight - (offsetTopClient - scrollTopClient);
1217
- iframeVisibleViewPort = Math.min(iframeHeight, iframeVisibleViewPort);
1218
- iframeOffset = 0;
1219
- }
1220
- else {
1221
- iframeVisibleViewPort = Math.min(iframeHeight - iframeScrolled, viewPortHeight);
1222
- iframeOffset = iframeScrolled;
1223
- }
1224
- const iframeCenter = iframeOffset + iframeVisibleViewPort / 2;
1225
- return {
1226
- iframeCenter,
1227
- iframeScrolled,
1228
- iframeHeight,
1229
- viewPortHeight,
1230
- iframeVisibleViewPort,
1231
- };
1232
- }
1233
1284
  /**
1234
1285
  * Registers an event listener to trigger an alert when the ThoughtSpot app
1235
1286
  * sends an event of a particular message type to the host application.
@@ -1313,13 +1364,33 @@ export class TsEmbed {
1313
1364
  var _a;
1314
1365
  const embedObj = (_a = this.preRenderWrapper) === null || _a === void 0 ? void 0 : _a[this.embedNodeKey];
1315
1366
  if (embedObj === this) {
1316
- logger.info('embedObj is same as this');
1367
+ logger.debug('embedObj is same as this');
1317
1368
  }
1318
1369
  return embedObj;
1319
1370
  }
1371
+ takeOverPreRender() {
1372
+ if (!this.preRenderWrapper)
1373
+ return;
1374
+ this.preRenderWrapper[this.embedNodeKey] = this;
1375
+ }
1376
+ // The flag lives on the wrapper because it describes the iframe: an
1377
+ // instance hidden when the container announced itself would otherwise
1378
+ // report false forever.
1379
+ markEmbedContainerLoaded() {
1380
+ this.isEmbedContainerLoaded = true;
1381
+ if (this.preRenderWrapper) {
1382
+ this.preRenderWrapper[this.embedContainerLoadedKey] = true;
1383
+ }
1384
+ }
1320
1385
  checkEmbedContainerLoaded() {
1386
+ var _a;
1321
1387
  if (this.isEmbedContainerLoaded)
1322
1388
  return true;
1389
+ if ((_a = this.preRenderWrapper) === null || _a === void 0 ? void 0 : _a[this.embedContainerLoadedKey]) {
1390
+ this.isEmbedContainerLoaded = true;
1391
+ return true;
1392
+ }
1393
+ // Older builds stamped the flag on the instance, not the wrapper.
1323
1394
  const preRenderObj = this.getPreRenderObj();
1324
1395
  if (preRenderObj && preRenderObj.isEmbedContainerLoaded) {
1325
1396
  this.isEmbedContainerLoaded = true;
@@ -1348,8 +1419,12 @@ export class TsEmbed {
1348
1419
  }
1349
1420
  /**
1350
1421
  * Triggers an event to the embedded app
1422
+ *
1423
+ * Payload typing: from SDK 1.52.0 (ThoughtSpot Cloud 26.9.0.cl), unknown fields
1424
+ * on a known event's payload fail to compile. From SDK 1.54.0 (26.11.0.cl) the
1425
+ * payload is checked strictly against the event contract — update call sites now.
1351
1426
  * @param {HostEvent} messageType The event type
1352
- * @param {any} data The payload to send with the message
1427
+ * @param {TriggerData} data The payload, typed against the event's contract
1353
1428
  * @param {ContextType} context Optional context type to specify the context from which the event is triggered.
1354
1429
  * Use ContextType.Search for search answer context, ContextType.Answer for answer/explore context,
1355
1430
  * ContextType.Liveboard for liveboard context, or ContextType.Spotter for spotter context.
@@ -1366,7 +1441,11 @@ export class TsEmbed {
1366
1441
  * ```
1367
1442
  * @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl (for context parameter)
1368
1443
  */
1369
- async trigger(messageType, data = {}, context) {
1444
+ async trigger(messageType,
1445
+ // Contract shape is the contextual type: payload fields autocomplete
1446
+ // and unknown fields on object literals are flagged. Strict checks
1447
+ // land in SDK 1.54.0 — see TriggerData.
1448
+ data = {}, context) {
1370
1449
  uploadMixpanelEvent(`${MIXPANEL_EVENT.VISUAL_SDK_TRIGGER}-${messageType}`);
1371
1450
  if (!this.isRendered) {
1372
1451
  this.handleError({
@@ -1649,25 +1728,43 @@ export class TsEmbed {
1649
1728
  this.isRendered = true;
1650
1729
  return this.renderIFrame(prerenderFrameSrc);
1651
1730
  }
1731
+ isConfigExcludedFromUrl() {
1732
+ var _a, _b, _c;
1733
+ const flag = (_b = (_a = this.viewConfig.additionalFlags) === null || _a === void 0 ? void 0 : _a.excludeConfigFromURL) !== null && _b !== void 0 ? _b : (_c = this.embedConfig.additionalFlags) === null || _c === void 0 ? void 0 : _c.excludeConfigFromURL;
1734
+ // Enabled by default; only an explicit false opts out.
1735
+ return flag !== false && flag !== 'false';
1736
+ }
1737
+ async triggerUpdateEmbedParams() {
1738
+ try {
1739
+ const params = await this.getUpdateEmbedParamsObject();
1740
+ this.trigger(HostEvent.UpdateEmbedParams, params);
1741
+ }
1742
+ catch (error) {
1743
+ logger.error(ERROR_MESSAGE.UPDATE_PARAMS_FAILED, error);
1744
+ this.handleError({
1745
+ errorType: ErrorDetailsTypes.API,
1746
+ message: (error === null || error === void 0 ? void 0 : error.message) || ERROR_MESSAGE.UPDATE_PARAMS_FAILED,
1747
+ code: EmbedErrorCodes.UPDATE_PARAMS_FAILED,
1748
+ error: (error === null || error === void 0 ? void 0 : error.message) || error,
1749
+ });
1750
+ }
1751
+ }
1652
1752
  beforePrerenderVisible() {
1653
1753
  // We can ignore this as its a bit expensive and the newer customers
1654
1754
  // have moved on to UpdateEmbedParams supported clusters
1655
1755
  // this.validatePreRenderViewConfig(this.viewConfig); removed in #517
1656
1756
  logger.debug('triggering UpdateEmbedParams', this.viewConfig);
1657
- this.executeAfterEmbedContainerLoaded(async () => {
1658
- try {
1659
- const params = await this.getUpdateEmbedParamsObject();
1660
- this.trigger(HostEvent.UpdateEmbedParams, params);
1661
- }
1662
- catch (error) {
1663
- logger.error(ERROR_MESSAGE.UPDATE_PARAMS_FAILED, error);
1664
- this.handleError({
1665
- errorType: ErrorDetailsTypes.API,
1666
- message: (error === null || error === void 0 ? void 0 : error.message) || ERROR_MESSAGE.UPDATE_PARAMS_FAILED,
1667
- code: EmbedErrorCodes.UPDATE_PARAMS_FAILED,
1668
- error: (error === null || error === void 0 ? void 0 : error.message) || error,
1669
- });
1670
- }
1757
+ // Created synchronously: a queued navigation needs something to await
1758
+ // whether the container is already loaded or not.
1759
+ this.preRenderParamsApplied = new Promise((resolve) => {
1760
+ this.executeAfterEmbedContainerLoaded(async () => {
1761
+ try {
1762
+ await this.triggerUpdateEmbedParams();
1763
+ }
1764
+ finally {
1765
+ setTimeout(resolve, UPDATE_EMBED_PARAMS_SETTLE_MS);
1766
+ }
1767
+ });
1671
1768
  });
1672
1769
  }
1673
1770
  /**
@@ -1697,8 +1794,9 @@ export class TsEmbed {
1697
1794
  if (this.hostElement) {
1698
1795
  this.insertedDomEl = this.createPreRenderPlaceholder();
1699
1796
  if (this.viewConfig.fullHeight) {
1700
- // If fullHeight has already sized the wrapper, seed the placeholder
1701
- // with the same height so syncPreRenderStyle gets an accurate rect.
1797
+ // If fullHeight has already sized the wrapper, seed the
1798
+ // placeholder with the same height so syncPreRenderStyle gets
1799
+ // an accurate rect.
1702
1800
  const existingHeight = this.preRenderWrapper.style.height;
1703
1801
  if (existingHeight) {
1704
1802
  this.insertedDomEl.style.height = existingHeight;
@@ -1706,12 +1804,13 @@ export class TsEmbed {
1706
1804
  }
1707
1805
  const placeHolderId = this.getPreRenderIds().placeHolder;
1708
1806
  // Remove any stale placeholder from a previous cycle. It is located
1709
- // via a subtree-wide querySelector, so it may be nested deeper than a
1710
- // direct child (E.g.: with fullHeight the host app can wrap it). Use
1711
- // Element.remove() — which detaches from whatever the real parent is —
1712
- // rather than hostElement.removeChild(), which throws NotFoundError
1713
- // when the match is not a direct child. Mirrors the wrapper/child
1714
- // cleanup in createPreRenderWrapper()/createPreRenderChild().
1807
+ // via a subtree-wide querySelector, so it may be nested deeper
1808
+ // than a direct child (E.g.: with fullHeight the host app can wrap
1809
+ // it). Use Element.remove() — which detaches from whatever the real
1810
+ // parent is — rather than hostElement.removeChild(), which throws
1811
+ // NotFoundError when the match is not a direct child. Mirrors the
1812
+ // wrapper/child cleanup in
1813
+ // createPreRenderWrapper()/createPreRenderChild().
1715
1814
  (_a = this.hostElement.querySelector(`#${placeHolderId}`)) === null || _a === void 0 ? void 0 : _a.remove();
1716
1815
  this.hostElement.appendChild(this.insertedDomEl);
1717
1816
  this.syncPreRenderStyle();
@@ -1743,6 +1842,9 @@ export class TsEmbed {
1743
1842
  if (this.iFrame) {
1744
1843
  this.setupFullscreenChangeHandler();
1745
1844
  }
1845
+ // Last, so everything above still sees the instance being taken over
1846
+ // from.
1847
+ this.takeOverPreRender();
1746
1848
  return this;
1747
1849
  }
1748
1850
  getPreRenderPlaceHolderElement() {
@@ -1945,6 +2047,9 @@ export class V1Embed extends TsEmbed {
1945
2047
  * ```
1946
2048
  */
1947
2049
  on(messageType, callback, options = { start: false }) {
2050
+ // Mirror the base TsEmbed.on generic signature so the enriched
2051
+ // EmbedEventPayload (e.g. CustomAction's answerService) flows through
2052
+ // the override too, and the class hierarchy stays assignable.
1948
2053
  const eventType = this.getCompatibleEventType(messageType);
1949
2054
  return super.on(eventType, callback, options);
1950
2055
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ts-embed.js","sourceRoot":"","sources":["../../../src/embed/ts-embed.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ts-embed.js","sourceRoot":"","sources":["../../../src/embed/ts-embed.ts"],"names":[],"mappings":"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"}