@thoughtspot/visual-embed-sdk 1.46.1 → 1.46.3

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 (257) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/auth.d.ts +29 -4
  3. package/cjs/src/auth.d.ts.map +1 -1
  4. package/cjs/src/auth.js +29 -7
  5. package/cjs/src/auth.js.map +1 -1
  6. package/cjs/src/auth.spec.js +1 -3
  7. package/cjs/src/auth.spec.js.map +1 -1
  8. package/cjs/src/authToken.js +0 -1
  9. package/cjs/src/authToken.js.map +1 -1
  10. package/cjs/src/authToken.spec.js +2 -1
  11. package/cjs/src/authToken.spec.js.map +1 -1
  12. package/cjs/src/css-variables.d.ts +17 -17
  13. package/cjs/src/embed/app.d.ts +62 -33
  14. package/cjs/src/embed/app.d.ts.map +1 -1
  15. package/cjs/src/embed/app.js +10 -3
  16. package/cjs/src/embed/app.js.map +1 -1
  17. package/cjs/src/embed/app.spec.js +34 -1
  18. package/cjs/src/embed/app.spec.js.map +1 -1
  19. package/cjs/src/embed/auto-frame-renderer.d.ts +41 -0
  20. package/cjs/src/embed/auto-frame-renderer.d.ts.map +1 -0
  21. package/cjs/src/embed/auto-frame-renderer.js +145 -0
  22. package/cjs/src/embed/auto-frame-renderer.js.map +1 -0
  23. package/cjs/src/embed/auto-frame-renderer.spec.d.ts +2 -0
  24. package/cjs/src/embed/auto-frame-renderer.spec.d.ts.map +1 -0
  25. package/cjs/src/embed/auto-frame-renderer.spec.js +195 -0
  26. package/cjs/src/embed/auto-frame-renderer.spec.js.map +1 -0
  27. package/cjs/src/embed/base.d.ts +2 -2
  28. package/cjs/src/embed/base.d.ts.map +1 -1
  29. package/cjs/src/embed/base.js +6 -9
  30. package/cjs/src/embed/base.js.map +1 -1
  31. package/cjs/src/embed/bodyless-conversation.d.ts +5 -5
  32. package/cjs/src/embed/bodyless-conversation.js +4 -4
  33. package/cjs/src/embed/conversation.d.ts +43 -30
  34. package/cjs/src/embed/conversation.d.ts.map +1 -1
  35. package/cjs/src/embed/conversation.js +10 -11
  36. package/cjs/src/embed/conversation.js.map +1 -1
  37. package/cjs/src/embed/conversation.spec.js +27 -0
  38. package/cjs/src/embed/conversation.spec.js.map +1 -1
  39. package/cjs/src/embed/hostEventClient/host-event-client.js +0 -2
  40. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  41. package/cjs/src/embed/liveboard.d.ts +42 -35
  42. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  43. package/cjs/src/embed/liveboard.js +6 -4
  44. package/cjs/src/embed/liveboard.js.map +1 -1
  45. package/cjs/src/embed/liveboard.spec.js +5 -3
  46. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  47. package/cjs/src/embed/sage.d.ts +5 -5
  48. package/cjs/src/embed/sage.js +1 -2
  49. package/cjs/src/embed/sage.js.map +1 -1
  50. package/cjs/src/embed/search-bar.d.ts +7 -7
  51. package/cjs/src/embed/search-bar.js +1 -1
  52. package/cjs/src/embed/search.d.ts +13 -12
  53. package/cjs/src/embed/search.d.ts.map +1 -1
  54. package/cjs/src/embed/search.js.map +1 -1
  55. package/cjs/src/embed/search.spec.js +0 -2
  56. package/cjs/src/embed/search.spec.js.map +1 -1
  57. package/cjs/src/embed/ts-embed.d.ts +3 -3
  58. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  59. package/cjs/src/embed/ts-embed.js +15 -9
  60. package/cjs/src/embed/ts-embed.js.map +1 -1
  61. package/cjs/src/embed/ts-embed.spec.js +37 -1
  62. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  63. package/cjs/src/index.d.ts +3 -2
  64. package/cjs/src/index.d.ts.map +1 -1
  65. package/cjs/src/index.js +3 -1
  66. package/cjs/src/index.js.map +1 -1
  67. package/cjs/src/react/index.d.ts +15 -15
  68. package/cjs/src/react/index.js +12 -13
  69. package/cjs/src/react/index.js.map +1 -1
  70. package/cjs/src/react/index.spec.js +6 -3
  71. package/cjs/src/react/index.spec.js.map +1 -1
  72. package/cjs/src/tokenizedFetch.d.ts +1 -1
  73. package/cjs/src/tokenizedFetch.js +1 -1
  74. package/cjs/src/types.d.ts +350 -287
  75. package/cjs/src/types.d.ts.map +1 -1
  76. package/cjs/src/types.js +240 -218
  77. package/cjs/src/types.js.map +1 -1
  78. package/cjs/src/utils/graphql/answerService/answerService.d.ts +9 -6
  79. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  80. package/cjs/src/utils/graphql/answerService/answerService.js +13 -15
  81. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  82. package/cjs/src/utils/graphql/answerService/answerService.spec.js +55 -0
  83. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  84. package/cjs/src/utils/graphql/preview-service.js +0 -1
  85. package/cjs/src/utils/graphql/preview-service.js.map +1 -1
  86. package/cjs/src/utils/processData.js +0 -5
  87. package/cjs/src/utils/processData.js.map +1 -1
  88. package/cjs/src/utils.d.ts +9 -0
  89. package/cjs/src/utils.d.ts.map +1 -1
  90. package/cjs/src/utils.js +10 -1
  91. package/cjs/src/utils.js.map +1 -1
  92. package/dist/{index-Vyh6Ha5f.js → index-DyX-x6uN.js} +1 -1
  93. package/dist/src/auth.d.ts +29 -4
  94. package/dist/src/auth.d.ts.map +1 -1
  95. package/dist/src/css-variables.d.ts +17 -17
  96. package/dist/src/embed/app.d.ts +62 -33
  97. package/dist/src/embed/app.d.ts.map +1 -1
  98. package/dist/src/embed/auto-frame-renderer.d.ts +41 -0
  99. package/dist/src/embed/auto-frame-renderer.d.ts.map +1 -0
  100. package/dist/src/embed/auto-frame-renderer.spec.d.ts +2 -0
  101. package/dist/src/embed/auto-frame-renderer.spec.d.ts.map +1 -0
  102. package/dist/src/embed/base.d.ts +2 -2
  103. package/dist/src/embed/base.d.ts.map +1 -1
  104. package/dist/src/embed/bodyless-conversation.d.ts +5 -5
  105. package/dist/src/embed/conversation.d.ts +43 -30
  106. package/dist/src/embed/conversation.d.ts.map +1 -1
  107. package/dist/src/embed/liveboard.d.ts +42 -35
  108. package/dist/src/embed/liveboard.d.ts.map +1 -1
  109. package/dist/src/embed/sage.d.ts +5 -5
  110. package/dist/src/embed/search-bar.d.ts +7 -7
  111. package/dist/src/embed/search.d.ts +13 -12
  112. package/dist/src/embed/search.d.ts.map +1 -1
  113. package/dist/src/embed/ts-embed.d.ts +3 -3
  114. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  115. package/dist/src/index.d.ts +3 -2
  116. package/dist/src/index.d.ts.map +1 -1
  117. package/dist/src/react/index.d.ts +15 -15
  118. package/dist/src/tokenizedFetch.d.ts +1 -1
  119. package/dist/src/types.d.ts +350 -287
  120. package/dist/src/types.d.ts.map +1 -1
  121. package/dist/src/utils/graphql/answerService/answerService.d.ts +9 -6
  122. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  123. package/dist/src/utils.d.ts +9 -0
  124. package/dist/src/utils.d.ts.map +1 -1
  125. package/dist/tsembed-react.es.js +359 -329
  126. package/dist/tsembed-react.js +358 -328
  127. package/dist/tsembed.es.js +490 -321
  128. package/dist/tsembed.js +489 -319
  129. package/dist/visual-embed-sdk-react-full.d.ts +574 -442
  130. package/dist/visual-embed-sdk-react.d.ts +572 -440
  131. package/dist/visual-embed-sdk.d.ts +622 -446
  132. package/lib/package.json +1 -1
  133. package/lib/src/auth.d.ts +29 -4
  134. package/lib/src/auth.d.ts.map +1 -1
  135. package/lib/src/auth.js +29 -7
  136. package/lib/src/auth.js.map +1 -1
  137. package/lib/src/auth.spec.js +1 -3
  138. package/lib/src/auth.spec.js.map +1 -1
  139. package/lib/src/authToken.js +0 -1
  140. package/lib/src/authToken.js.map +1 -1
  141. package/lib/src/authToken.spec.js +2 -1
  142. package/lib/src/authToken.spec.js.map +1 -1
  143. package/lib/src/css-variables.d.ts +17 -17
  144. package/lib/src/embed/app.d.ts +62 -33
  145. package/lib/src/embed/app.d.ts.map +1 -1
  146. package/lib/src/embed/app.js +11 -4
  147. package/lib/src/embed/app.js.map +1 -1
  148. package/lib/src/embed/app.spec.js +34 -1
  149. package/lib/src/embed/app.spec.js.map +1 -1
  150. package/lib/src/embed/auto-frame-renderer.d.ts +41 -0
  151. package/lib/src/embed/auto-frame-renderer.d.ts.map +1 -0
  152. package/lib/src/embed/auto-frame-renderer.js +141 -0
  153. package/lib/src/embed/auto-frame-renderer.js.map +1 -0
  154. package/lib/src/embed/auto-frame-renderer.spec.d.ts +2 -0
  155. package/lib/src/embed/auto-frame-renderer.spec.d.ts.map +1 -0
  156. package/lib/src/embed/auto-frame-renderer.spec.js +192 -0
  157. package/lib/src/embed/auto-frame-renderer.spec.js.map +1 -0
  158. package/lib/src/embed/base.d.ts +2 -2
  159. package/lib/src/embed/base.d.ts.map +1 -1
  160. package/lib/src/embed/base.js +6 -9
  161. package/lib/src/embed/base.js.map +1 -1
  162. package/lib/src/embed/bodyless-conversation.d.ts +5 -5
  163. package/lib/src/embed/bodyless-conversation.js +4 -4
  164. package/lib/src/embed/conversation.d.ts +43 -30
  165. package/lib/src/embed/conversation.d.ts.map +1 -1
  166. package/lib/src/embed/conversation.js +11 -11
  167. package/lib/src/embed/conversation.js.map +1 -1
  168. package/lib/src/embed/conversation.spec.js +27 -0
  169. package/lib/src/embed/conversation.spec.js.map +1 -1
  170. package/lib/src/embed/hostEventClient/host-event-client.js +0 -2
  171. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  172. package/lib/src/embed/liveboard.d.ts +42 -35
  173. package/lib/src/embed/liveboard.d.ts.map +1 -1
  174. package/lib/src/embed/liveboard.js +6 -4
  175. package/lib/src/embed/liveboard.js.map +1 -1
  176. package/lib/src/embed/liveboard.spec.js +5 -3
  177. package/lib/src/embed/liveboard.spec.js.map +1 -1
  178. package/lib/src/embed/sage.d.ts +5 -5
  179. package/lib/src/embed/sage.js +1 -2
  180. package/lib/src/embed/sage.js.map +1 -1
  181. package/lib/src/embed/search-bar.d.ts +7 -7
  182. package/lib/src/embed/search-bar.js +1 -1
  183. package/lib/src/embed/search.d.ts +13 -12
  184. package/lib/src/embed/search.d.ts.map +1 -1
  185. package/lib/src/embed/search.js.map +1 -1
  186. package/lib/src/embed/search.spec.js +0 -2
  187. package/lib/src/embed/search.spec.js.map +1 -1
  188. package/lib/src/embed/ts-embed.d.ts +3 -3
  189. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  190. package/lib/src/embed/ts-embed.js +15 -9
  191. package/lib/src/embed/ts-embed.js.map +1 -1
  192. package/lib/src/embed/ts-embed.spec.js +37 -1
  193. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  194. package/lib/src/index.d.ts +3 -2
  195. package/lib/src/index.d.ts.map +1 -1
  196. package/lib/src/index.js +1 -0
  197. package/lib/src/index.js.map +1 -1
  198. package/lib/src/react/index.d.ts +15 -15
  199. package/lib/src/react/index.js +12 -13
  200. package/lib/src/react/index.js.map +1 -1
  201. package/lib/src/react/index.spec.js +6 -3
  202. package/lib/src/react/index.spec.js.map +1 -1
  203. package/lib/src/tokenizedFetch.d.ts +1 -1
  204. package/lib/src/tokenizedFetch.js +1 -1
  205. package/lib/src/types.d.ts +350 -287
  206. package/lib/src/types.d.ts.map +1 -1
  207. package/lib/src/types.js +240 -218
  208. package/lib/src/types.js.map +1 -1
  209. package/lib/src/utils/graphql/answerService/answerService.d.ts +9 -6
  210. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  211. package/lib/src/utils/graphql/answerService/answerService.js +12 -14
  212. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  213. package/lib/src/utils/graphql/answerService/answerService.spec.js +55 -0
  214. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  215. package/lib/src/utils/graphql/preview-service.js +0 -1
  216. package/lib/src/utils/graphql/preview-service.js.map +1 -1
  217. package/lib/src/utils/processData.js +0 -5
  218. package/lib/src/utils/processData.js.map +1 -1
  219. package/lib/src/utils.d.ts +9 -0
  220. package/lib/src/utils.d.ts.map +1 -1
  221. package/lib/src/utils.js +8 -0
  222. package/lib/src/utils.js.map +1 -1
  223. package/lib/src/visual-embed-sdk.d.ts +11466 -0
  224. package/package.json +1 -1
  225. package/src/auth.spec.ts +1 -1
  226. package/src/auth.ts +32 -7
  227. package/src/authToken.spec.ts +2 -1
  228. package/src/authToken.ts +1 -1
  229. package/src/css-variables.ts +17 -17
  230. package/src/embed/app.spec.ts +46 -1
  231. package/src/embed/app.ts +74 -36
  232. package/src/embed/auto-frame-renderer.spec.ts +266 -0
  233. package/src/embed/auto-frame-renderer.ts +152 -0
  234. package/src/embed/base.spec.ts +1 -1
  235. package/src/embed/base.ts +9 -10
  236. package/src/embed/bodyless-conversation.ts +5 -5
  237. package/src/embed/conversation.spec.ts +37 -0
  238. package/src/embed/conversation.ts +55 -38
  239. package/src/embed/hostEventClient/host-event-client.ts +2 -2
  240. package/src/embed/liveboard.spec.ts +5 -3
  241. package/src/embed/liveboard.ts +47 -38
  242. package/src/embed/sage.ts +6 -6
  243. package/src/embed/search-bar.tsx +7 -7
  244. package/src/embed/search.spec.ts +2 -2
  245. package/src/embed/search.ts +13 -12
  246. package/src/embed/ts-embed.spec.ts +44 -1
  247. package/src/embed/ts-embed.ts +14 -9
  248. package/src/index.ts +3 -0
  249. package/src/react/index.spec.tsx +6 -3
  250. package/src/react/index.tsx +16 -16
  251. package/src/tokenizedFetch.ts +1 -1
  252. package/src/types.ts +350 -286
  253. package/src/utils/graphql/answerService/answerService.spec.ts +62 -0
  254. package/src/utils/graphql/answerService/answerService.ts +14 -10
  255. package/src/utils/graphql/preview-service.ts +1 -1
  256. package/src/utils/processData.ts +5 -5
  257. package/src/utils.ts +14 -0
@@ -1,4 +1,4 @@
1
- /* @thoughtspot/visual-embed-sdk version 1.46.1 */
1
+ /* @thoughtspot/visual-embed-sdk version 1.46.3 */
2
2
  'use client';
3
3
  function _mergeNamespaces(n, m) {
4
4
  m.forEach(function (e) {
@@ -23,7 +23,7 @@ function _mergeNamespaces(n, m) {
23
23
  * @author Ayon Ghosh <ayon.ghosh@thoughtspot.com>
24
24
  */
25
25
  /**
26
- * The authentication mechanism for allowing access to the
26
+ * The authentication mechanism for allowing access to
27
27
  * the embedded app
28
28
  * @group Authentication / Init
29
29
  */
@@ -49,6 +49,7 @@ var AuthType;
49
49
  * To use this:
50
50
  * Your SAML or OpenID provider must allow iframe redirects.
51
51
  * For example, if you are using Okta as IdP, you can enable iframe embedding.
52
+ * @version SDK: 1.15.0 | ThoughtSpot: 8.8.0.cl
52
53
  * @example
53
54
  * ```js
54
55
  * init({
@@ -56,18 +57,17 @@ var AuthType;
56
57
  * authType: AuthType.EmbeddedSSO,
57
58
  * });
58
59
  * ```
59
- * @version: SDK: 1.15.0 | ThoughtSpot: 8.8.0.cl
60
60
  */
61
61
  AuthType["EmbeddedSSO"] = "EmbeddedSSO";
62
62
  /**
63
- * SSO using SAML
64
- * @deprecated Use {@link SAMLRedirect} instead
63
+ * SSO using SAML, Use {@link SAMLRedirect} instead
64
+ * @deprecated This option is deprecated.
65
65
  * @hidden
66
66
  */
67
67
  AuthType["SSO"] = "SSO_SAML";
68
68
  /**
69
- * SSO using SAML
70
- * @deprecated Use {@link SAMLRedirect} instead
69
+ * SSO using SAML, Use {@link SAMLRedirect} instead
70
+ * @deprecated This option is deprecated.
71
71
  * @hidden
72
72
  */
73
73
  AuthType["SAML"] = "SSO_SAML";
@@ -118,8 +118,9 @@ var AuthType;
118
118
  AuthType["SAMLRedirect"] = "SSO_SAML";
119
119
  /**
120
120
  * SSO using OIDC
121
+ * SSO using OIDC, Use {@link OIDCRedirect} instead
122
+ * @deprecated This option is deprecated.
121
123
  * @hidden
122
- * @deprecated Use {@link OIDCRedirect} instead
123
124
  */
124
125
  AuthType["OIDC"] = "SSO_OIDC";
125
126
  /**
@@ -130,8 +131,9 @@ var AuthType;
130
131
  AuthType["OIDCRedirect"] = "SSO_OIDC";
131
132
  /**
132
133
  * Trusted authentication server
134
+ * Use {@link TrustedAuth} instead
135
+ * @deprecated This option is deprecated.
133
136
  * @hidden
134
- * @deprecated Use {@link TrustedAuth} instead
135
137
  */
136
138
  AuthType["AuthServer"] = "AuthServer";
137
139
  /**
@@ -158,6 +160,7 @@ var AuthType;
158
160
  * obtained from ThoughtSpot. This uses a cookieless authentication
159
161
  * approach, recommended to bypass the third-party cookie-blocking restriction
160
162
  * implemented by some browsers.
163
+ * @version SDK: 1.22.0 | ThoughtSpot: 9.3.0.cl, 9.5.1.sw
161
164
  * @example
162
165
  * ```js
163
166
  * init({
@@ -168,8 +171,8 @@ var AuthType;
168
171
  * .then((response) => response.json())
169
172
  * .then((data) => data.token);
170
173
  * }
174
+ * });
171
175
  * ```
172
- * @version SDK: 1.22.0| ThoughtSpot: 9.3.0.cl, 9.5.1.sw
173
176
  */
174
177
  AuthType["TrustedAuthTokenCookieless"] = "AuthServerCookieless";
175
178
  /**
@@ -190,43 +193,43 @@ var HomeLeftNavItem;
190
193
  /**
191
194
  * The *Search data* option in
192
195
  * the *Insights* left navigation panel.
193
- * @version SDK: 1.28.0| ThoughtSpot: 9.12.5.cl
196
+ * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
194
197
  */
195
198
  HomeLeftNavItem["SearchData"] = "search-data";
196
199
  /**
197
200
  * The *Home* menu option in
198
201
  * the *Insights* left navigation panel.
199
- * @version SDK: 1.28.0| ThoughtSpot: 9.12.5.cl
202
+ * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
200
203
  */
201
204
  HomeLeftNavItem["Home"] = "insights-home";
202
205
  /**
203
206
  * The *Liveboards* menu option in
204
207
  * the *Insights* left navigation panel.
205
- * @version SDK: 1.28.0| ThoughtSpot: 9.12.5.cl
208
+ * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
206
209
  */
207
210
  HomeLeftNavItem["Liveboards"] = "liveboards";
208
211
  /**
209
212
  * The *Answers* menu option in
210
213
  * the *Insights* left navigation panel.
211
- * @version SDK: 1.28.0| ThoughtSpot: 9.12.5.cl
214
+ * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
212
215
  */
213
216
  HomeLeftNavItem["Answers"] = "answers";
214
217
  /**
215
218
  * The *Monitor subscriptions* menu option in
216
219
  * the *Insights* left navigation panel.
217
- * @version SDK: 1.28.0| ThoughtSpot: 9.12.5.cl
220
+ * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
218
221
  */
219
222
  HomeLeftNavItem["MonitorSubscription"] = "monitor-alerts";
220
223
  /**
221
224
  * The *SpotIQ analysis* menu option in
222
225
  * the *Insights* left navigation panel.
223
- * @version SDK: 1.28.0| ThoughtSpot: 9.12.5.cl
226
+ * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
224
227
  */
225
228
  HomeLeftNavItem["SpotIQAnalysis"] = "spotiq-analysis";
226
229
  /**
227
230
  * The *Liveboard schedules* menu option in
228
231
  * the *Insights* left navigation panel.
229
- * @version SDK: 1.34.0| ThoughtSpot: 10.3.0.cl
232
+ * @version SDK: 1.34.0 | ThoughtSpot: 10.3.0.cl
230
233
  */
231
234
  HomeLeftNavItem["LiveboardSchedules"] = "liveboard-schedules";
232
235
  /**
@@ -332,7 +335,7 @@ var HomepageModule;
332
335
  */
333
336
  HomepageModule["Search"] = "SEARCH";
334
337
  /**
335
- * kPI watchlist module
338
+ * KPI watchlist module
336
339
  */
337
340
  HomepageModule["Watchlist"] = "WATCHLIST";
338
341
  /**
@@ -364,7 +367,8 @@ var ListPageColumns;
364
367
  */
365
368
  ListPageColumns["Favorites"] = "FAVOURITE";
366
369
  /**
367
- * @deprecated Use {@link ListPageColumns.Favorites} instead.
370
+ * Favourite Use {@link ListPageColumns.Favorites} instead.
371
+ * @deprecated This option is deprecated.
368
372
  */
369
373
  ListPageColumns["Favourite"] = "FAVOURITE";
370
374
  /**
@@ -432,13 +436,13 @@ var EmbedEvent;
432
436
  /**
433
437
  * Rendering has initialized.
434
438
  * @example
435
- *```js
439
+ * ```js
436
440
  * liveboardEmbed.on(EmbedEvent.Init, showLoader)
437
441
  * //show a loader
438
442
  * function showLoader() {
439
443
  * document.getElementById("loader");
440
444
  * }
441
- *```
445
+ * ```
442
446
  * @returns timestamp - The timestamp when the event was generated.
443
447
  */
444
448
  EmbedEvent["Init"] = "init";
@@ -446,11 +450,11 @@ var EmbedEvent;
446
450
  * Authentication has either succeeded or failed.
447
451
  * @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 8.4.1.sw
448
452
  * @example
449
- *```js
453
+ * ```js
450
454
  * appEmbed.on(EmbedEvent.AuthInit, payload => {
451
455
  * console.log('AuthInit', payload);
452
456
  * })
453
- *```
457
+ * ```
454
458
  * @returns isLoggedIn - A Boolean specifying whether authentication was successful.
455
459
  */
456
460
  EmbedEvent["AuthInit"] = "authInit";
@@ -459,13 +463,13 @@ var EmbedEvent;
459
463
  * @returns timestamp - The timestamp when the event was generated.
460
464
  * @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 8.4.1.sw
461
465
  * @example
462
- *```js
466
+ * ```js
463
467
  * liveboardEmbed.on(EmbedEvent.Load, hideLoader)
464
468
  * //hide loader
465
469
  * function hideLoader() {
466
470
  * document.getElementById("loader");
467
471
  * }
468
- *```
472
+ * ```
469
473
  */
470
474
  EmbedEvent["Load"] = "load";
471
475
  /**
@@ -474,11 +478,11 @@ var EmbedEvent;
474
478
  * @return data - Answer of Liveboard data
475
479
  * @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 8.4.1.sw
476
480
  * @example
477
- *```js
481
+ * ```js
478
482
  * liveboardEmbed.on(EmbedEvent.Data, payload => {
479
483
  * console.log('data', payload);
480
484
  * })
481
- *```
485
+ * ```
482
486
  * @important
483
487
  */
484
488
  EmbedEvent["Data"] = "data";
@@ -486,9 +490,9 @@ var EmbedEvent;
486
490
  * Search query has been updated by the user.
487
491
  * @version SDK: 1.4.0 | ThoughtSpot: ts7.sep.cl, 8.4.1.sw
488
492
  * @example
489
- *```js
493
+ * ```js
490
494
  * searchEmbed.on(EmbedEvent.QueryChanged, payload => console.log('data', payload))
491
- *```
495
+ * ```
492
496
  */
493
497
  EmbedEvent["QueryChanged"] = "queryChanged";
494
498
  /**
@@ -498,7 +502,7 @@ var EmbedEvent;
498
502
  * @returns drillDownColumns - The columns on which drill down was performed
499
503
  * @returns nonFilteredColumns - The columns that were not filtered
500
504
  * @example
501
- *```js
505
+ * ```js
502
506
  * searchEmbed.on(EmbedEvent.DrillDown, {
503
507
  * points: {
504
508
  * clickedPoint,
@@ -506,12 +510,12 @@ var EmbedEvent;
506
510
  * },
507
511
  * autoDrillDown: true,
508
512
  * })
509
- *```
513
+ * ```
510
514
  * In this example, `VizPointDoubleClick` event is used for
511
515
  * triggering the `DrillDown` event when an area or specific
512
516
  * data point on a table or chart is double-clicked.
513
517
  * @example
514
- *```js
518
+ * ```js
515
519
  * searchEmbed.on(EmbedEvent.VizPointDoubleClick, (payload) => {
516
520
  * console.log(payload);
517
521
  * const clickedPoint = payload.data.clickedPoint;
@@ -525,7 +529,7 @@ var EmbedEvent;
525
529
  * autoDrillDown: true,
526
530
  * })
527
531
  * })
528
- *```
532
+ * ```
529
533
  */
530
534
  EmbedEvent["Drilldown"] = "drillDown";
531
535
  /**
@@ -650,13 +654,13 @@ var EmbedEvent;
650
654
  * The ThoughtSpot authentication session has expired.
651
655
  * @version SDK: 1.4.0 | ThoughtSpot: ts7.sep.cl, 8.4.1.sw
652
656
  * @example
653
- *```js
657
+ * ```js
654
658
  * appEmbed.on(EmbedEvent.AuthExpire, showAuthExpired)
655
659
  * //show auth expired banner
656
660
  * function showAuthExpired() {
657
661
  * document.getElementById("authExpiredBanner");
658
662
  * }
659
- *```
663
+ * ```
660
664
  */
661
665
  EmbedEvent["AuthExpire"] = "ThoughtspotAuthExpired";
662
666
  /**
@@ -691,22 +695,22 @@ var EmbedEvent;
691
695
  * Applicable to `SearchBarEmbed` only.
692
696
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
693
697
  * @example
694
- *```js
698
+ * ```js
695
699
  * searchbarEmbed.on(EmbedEvent.GetDataClick)
696
700
  * .then(data => {
697
701
  * console.log('Answer Data:', data);
698
702
  * })
699
- *```
703
+ * ```
700
704
  */
701
705
  EmbedEvent["GetDataClick"] = "getDataClick";
702
706
  /**
703
707
  * Detects the route change.
704
708
  * @version SDK: 1.7.0 | ThoughtSpot: 8.0.0.cl, 8.4.1.sw
705
709
  * @example
706
- *```js
710
+ * ```js
707
711
  * searchEmbed.on(EmbedEvent.RouteChange, payload =>
708
712
  * console.log('data', payload))
709
- *```
713
+ * ```
710
714
  */
711
715
  EmbedEvent["RouteChange"] = "ROUTE_CHANGE";
712
716
  /**
@@ -716,12 +720,12 @@ var EmbedEvent;
716
720
  EmbedEvent["V1Data"] = "exportVizDataToParent";
717
721
  /**
718
722
  * Emitted when the embed does not have cookie access. This happens
719
- * when Safari and other Web browsers block third-party cookies
720
- * are blocked by default. `NoCookieAccess` can trigger.
723
+ * when third-party cookies are blocked by Safari or other
724
+ * web browsers. `NoCookieAccess` can trigger.
721
725
  * @example
722
- *```js
726
+ * ```js
723
727
  * appEmbed.on(EmbedEvent.NoCookieAccess)
724
- *```
728
+ * ```
725
729
  * @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 7.2.1.sw
726
730
  */
727
731
  EmbedEvent["NoCookieAccess"] = "noCookieAccess";
@@ -735,22 +739,22 @@ var EmbedEvent;
735
739
  * Emitted when any modal is opened in the app
736
740
  * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
737
741
  * @example
738
- *```js
742
+ * ```js
739
743
  * appEmbed.on(EmbedEvent.DialogOpen, payload => {
740
744
  * console.log('dialog open', payload);
741
745
  * })
742
- *```
746
+ * ```
743
747
  */
744
748
  EmbedEvent["DialogOpen"] = "dialog-open";
745
749
  /**
746
750
  * Emitted when any modal is closed in the app
747
751
  * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
748
752
  * @example
749
- *```js
753
+ * ```js
750
754
  * appEmbed.on(EmbedEvent.DialogClose, payload => {
751
755
  * console.log('dialog close', payload);
752
756
  * })
753
- *```
757
+ * ```
754
758
  */
755
759
  EmbedEvent["DialogClose"] = "dialog-close";
756
760
  /**
@@ -759,39 +763,39 @@ var EmbedEvent;
759
763
  * other events on the rendered Liveboard.
760
764
  * @version SDK: 1.9.1 | ThoughtSpot: 8.1.0.cl, 8.4.1.sw
761
765
  * @example
762
- *```js
766
+ * ```js
763
767
  * liveboardEmbed.on(EmbedEvent.LiveboardRendered, payload => {
764
768
  console.log('Liveboard is rendered', payload);
765
769
  })
766
- *```
770
+ * ```
767
771
  * The following example shows how to trigger
768
772
  * `SetVisibleVizs` event using LiveboardRendered embed event:
769
773
  * @example
770
- *```js
774
+ * ```js
771
775
  * const embedRef = useEmbedRef();
772
776
  * const onLiveboardRendered = () => {
773
777
  * embed.trigger(HostEvent.SetVisibleVizs, ['viz1', 'viz2']);
774
778
  * };
775
- *```
779
+ * ```
776
780
  */
777
781
  EmbedEvent["LiveboardRendered"] = "PinboardRendered";
778
782
  /**
779
783
  * Emits all events.
780
- * @Version SDK: 1.10.0 | ThoughtSpot: 8.2.0.cl, 8.4.1.sw
784
+ * @version SDK: 1.10.0 | ThoughtSpot: 8.2.0.cl, 8.4.1.sw
781
785
  * @example
782
- *```js
786
+ * ```js
783
787
  * appEmbed.on(EmbedEvent.ALL, payload => {
784
788
  * console.log('Embed Events', payload)
785
789
  * })
786
- *```
790
+ * ```
787
791
  */
788
792
  EmbedEvent["ALL"] = "*";
789
793
  /**
790
794
  * Emitted when an Answer is saved in the app.
791
795
  * Use start:true to subscribe to when save is initiated, or end:true to subscribe to when save is completed. Default is end:true.
792
- * @Version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
796
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
793
797
  * @example
794
- *```js
798
+ * ```js
795
799
  * //Emit when action starts
796
800
  * searchEmbed.on(EmbedEvent.Save, payload => {
797
801
  * console.log('Save', payload)
@@ -802,7 +806,7 @@ var EmbedEvent;
802
806
  * searchEmbed.on(EmbedEvent.Save, payload => {
803
807
  * console.log('Save', payload)
804
808
  * })
805
- *```
809
+ * ```
806
810
  */
807
811
  EmbedEvent["Save"] = "save";
808
812
  /**
@@ -814,106 +818,112 @@ var EmbedEvent;
814
818
  * `EmbedEvent.DownloadAsCSV`, or `EmbedEvent.DownloadAsXLSX`
815
819
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
816
820
  * @example
817
- *```js
821
+ * ```js
818
822
  * liveboardEmbed.on(EmbedEvent.Download, {
819
823
  * vizId: '730496d6-6903-4601-937e-2c691821af3c'
820
824
  * })
821
- *```
825
+ * ```
822
826
  */
823
827
  EmbedEvent["Download"] = "download";
824
828
  /**
825
829
  * Emitted when the download action is triggered on an Answer.
826
- * Use start:true to subscribe to when download is initiated, or end:true to subscribe to when download is completed. Default is end:true.
830
+ * Use start:true to subscribe to when download is initiated, or end:true to
831
+ * subscribe to when download is completed. Default is end:true.
827
832
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.4.0.sw
828
833
  * @example
829
- *```js
834
+ * ```js
830
835
  * //emit when action starts
831
836
  * searchEmbed.on(EmbedEvent.DownloadAsPng, payload => {
832
837
  * console.log('download PNG', payload)}, {start: true })
833
838
  * //emit when action ends
834
839
  * searchEmbed.on(EmbedEvent.DownloadAsPng, payload => {
835
840
  * console.log('download PNG', payload)})
836
- *```
841
+ * ```
837
842
  */
838
843
  EmbedEvent["DownloadAsPng"] = "downloadAsPng";
839
844
  /**
840
845
  * Emitted when the Download as PDF action is triggered on an Answer
841
- * Use start:true to subscribe to when download as PDF is initiated, or end:true to subscribe to when download as PDF is completed. Default is end:true.
846
+ * Use start:true to subscribe to when download as PDF is initiated, or end:true to
847
+ * subscribe to when download as PDF is completed. Default is end:true.
842
848
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
843
849
  * @example
844
- *```js
850
+ * ```js
845
851
  * //emit when action starts
846
852
  * searchEmbed.on(EmbedEvent.DownloadAsPdf, payload => {
847
853
  * console.log('download PDF', payload)}, {start: true })
848
854
  * //emit when action ends
849
855
  * searchEmbed.on(EmbedEvent.DownloadAsPdf, payload => {
850
856
  * console.log('download PDF', payload)})
851
- *```
857
+ * ```
852
858
  */
853
859
  EmbedEvent["DownloadAsPdf"] = "downloadAsPdf";
854
860
  /**
855
861
  * Emitted when the Download as CSV action is triggered on an Answer.
856
- * Use start:true to subscribe to when download as CSV is initiated, or end:true to subscribe to when download as CSV is completed. Default is end:true.
862
+ * Use start:true to subscribe to when download as CSV is initiated, or end:true to
863
+ * subscribe to when download as CSV is completed. Default is end:true.
857
864
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
858
865
  * @example
859
- *```js
866
+ * ```js
860
867
  * //emit when action starts
861
868
  * searchEmbed.on(EmbedEvent.DownloadAsCSV, payload => {
862
869
  * console.log('download CSV', payload)}, {start: true })
863
870
  * //emit when action ends
864
871
  * searchEmbed.on(EmbedEvent.DownloadAsCSV, payload => {
865
872
  * console.log('download CSV', payload)})
866
- *```
873
+ * ```
867
874
  */
868
875
  EmbedEvent["DownloadAsCsv"] = "downloadAsCsv";
869
876
  /**
870
877
  * Emitted when the Download as XLSX action is triggered on an Answer.
871
- * Use start:true to subscribe to when download as XLSX is initiated, or end:true to subscribe to when download as XLSX is completed. Default is end:true.
878
+ * Use start:true to subscribe to when download as XLSX is initiated, or end:true to
879
+ * subscribe to when download as XLSX is completed. Default is end:true.
872
880
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
873
881
  * @example
874
- *```js
882
+ * ```js
875
883
  * //emit when action starts
876
884
  * searchEmbed.on(EmbedEvent.DownloadAsXlsx, payload => {
877
885
  * console.log('download Xlsx', payload)}, { start: true })
878
886
  * //emit when action ends
879
887
  * searchEmbed.on(EmbedEvent.DownloadAsXlsx, payload => {
880
888
  * console.log('download Xlsx', payload)})
881
- *```
889
+ * ```
882
890
  */
883
891
  EmbedEvent["DownloadAsXlsx"] = "downloadAsXlsx";
884
892
  /**
885
893
  * Emitted when an Answer is deleted in the app
886
- * Use start:true to subscribe to when delete is initiated, or end:true to subscribe to when delete is completed. Default is end:true.
894
+ * Use start:true to subscribe to when delete is initiated, or end:true to subscribe
895
+ * to when delete is completed. Default is end:true.
887
896
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
888
897
  * @example
889
- *```js
898
+ * ```js
890
899
  * //emit when action starts
891
900
  * appEmbed.on(EmbedEvent.AnswerDelete, payload => {
892
901
  * console.log('delete answer', payload)}, {start: true })
893
902
  * //trigger when action is completed
894
903
  * appEmbed.on(EmbedEvent.AnswerDelete, payload => {
895
904
  * console.log('delete answer', payload)})
896
- *```
905
+ * ```
897
906
  */
898
907
  EmbedEvent["AnswerDelete"] = "answerDelete";
899
908
  /**
900
909
  * Emitted when the AI Highlights action is triggered on a Liveboard
901
910
  * @version SDK: 1.44.0 | ThoughtSpot: 10.15.0.cl
902
911
  * @example
903
- *```js
912
+ * ```js
904
913
  * liveboardEmbed.on(EmbedEvent.AIHighlights, (payload) => {
905
914
  * console.log('AI Highlights', payload);
906
915
  * })
907
- *```
916
+ * ```
908
917
  */
909
918
  EmbedEvent["AIHighlights"] = "AIHighlights";
910
919
  /**
911
920
  * Emitted when a user initiates the Pin action to
912
921
  * add an Answer to a Liveboard.
913
- * Use start:true to subscribe to when pin is initiated, or end:true to subscribe to when pin is completed. Default is end:true.
922
+ * Use start:true to subscribe to when pin is initiated, or end:true to subscribe to
923
+ * when pin is completed. Default is end:true.
914
924
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
915
925
  * @example
916
- *```js
926
+ * ```js
917
927
  * //emit when action starts
918
928
  * searchEmbed.on(EmbedEvent.Pin, payload => {
919
929
  * console.log('pin', payload)
@@ -924,14 +934,14 @@ var EmbedEvent;
924
934
  * searchEmbed.on(EmbedEvent.Pin, payload => {
925
935
  * console.log('pin', payload)
926
936
  * })
927
- *```
937
+ * ```
928
938
  */
929
939
  EmbedEvent["Pin"] = "pin";
930
940
  /**
931
941
  * Emitted when SpotIQ analysis is triggered
932
942
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
933
943
  * @example
934
- *```js
944
+ * ```js
935
945
  * //emit when action starts
936
946
  * searchEmbed.on(EmbedEvent.SpotIQAnalyze, payload => {
937
947
  * console.log('SpotIQAnalyze', payload)
@@ -942,14 +952,14 @@ var EmbedEvent;
942
952
  * searchEmbed.on(EmbedEvent.SpotIQAnalyze, payload => {
943
953
  * console.log('SpotIQ analyze', payload)
944
954
  * })
945
- *```
955
+ * ```
946
956
  */
947
957
  EmbedEvent["SpotIQAnalyze"] = "spotIQAnalyze";
948
958
  /**
949
959
  * Emitted when a user shares an object with another user or group
950
960
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
951
961
  * @example
952
- *```js
962
+ * ```js
953
963
  * //emit when action starts
954
964
  * searchEmbed.on(EmbedEvent.Share, payload => {
955
965
  * console.log('Share', payload)
@@ -960,7 +970,7 @@ var EmbedEvent;
960
970
  * searchEmbed.on(EmbedEvent.Share, payload => {
961
971
  * console.log('Share', payload)
962
972
  * })
963
- *```
973
+ * ```
964
974
  */
965
975
  EmbedEvent["Share"] = "share";
966
976
  /**
@@ -968,11 +978,11 @@ var EmbedEvent;
968
978
  * data on a chart or table.
969
979
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
970
980
  * @example
971
- *```js
981
+ * ```js
972
982
  * appEmbed.on(EmbedEvent.DrillInclude, payload => {
973
983
  * console.log('Drill include', payload);
974
984
  * })
975
- *```
985
+ * ```
976
986
  */
977
987
  EmbedEvent["DrillInclude"] = "context-menu-item-include";
978
988
  /**
@@ -980,22 +990,22 @@ var EmbedEvent;
980
990
  * data on a chart or table
981
991
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
982
992
  * @example
983
- *```js
993
+ * ```js
984
994
  * appEmbed.on(EmbedEvent.DrillExclude, payload => {
985
995
  * console.log('Drill exclude', payload);
986
996
  * })
987
- *```
997
+ * ```
988
998
  */
989
999
  EmbedEvent["DrillExclude"] = "context-menu-item-exclude";
990
1000
  /**
991
1001
  * Emitted when a column value is copied in the embedded app.
992
1002
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
993
1003
  * @example
994
- *```js
995
- * seachEmbed.on(EmbedEvent.CopyToClipboard, payload => {
1004
+ * ```js
1005
+ * searchEmbed.on(EmbedEvent.CopyToClipboard, payload => {
996
1006
  * console.log('copy to clipboard', payload);
997
1007
  * })
998
- *```
1008
+ * ```
999
1009
  */
1000
1010
  EmbedEvent["CopyToClipboard"] = "context-menu-item-copy-to-clipboard";
1001
1011
  /**
@@ -1003,10 +1013,10 @@ var EmbedEvent;
1003
1013
  * embedded Liveboard.
1004
1014
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1005
1015
  * @example
1006
- *```js
1016
+ * ```js
1007
1017
  * liveboardEmbed.on(EmbedEvent.UpdateTML)
1008
1018
  * })
1009
- *```
1019
+ * ```
1010
1020
  */
1011
1021
  EmbedEvent["UpdateTML"] = "updateTSL";
1012
1022
  /**
@@ -1014,75 +1024,77 @@ var EmbedEvent;
1014
1024
  * on an embedded Liveboard.
1015
1025
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1016
1026
  * @example
1017
- *```js
1027
+ * ```js
1018
1028
  * appEmbed.on(EmbedEvent.EditTML, payload => {
1019
1029
  * console.log('Edit TML', payload);
1020
1030
  * })
1021
- *```
1031
+ * ```
1022
1032
  */
1023
1033
  EmbedEvent["EditTML"] = "editTSL";
1024
1034
  /**
1025
1035
  * Emitted when the **Export TML** action is triggered on an
1026
1036
  * an embedded object in the app
1027
- * Use start:true to subscribe to when export is initiated, or end:true to subscribe to when export is completed. Default is end:true.
1037
+ * Use start:true to subscribe to when export is initiated, or end:true to subscribe
1038
+ * to when export is completed. Default is end:true.
1028
1039
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1029
1040
  * @example
1030
- *```js
1041
+ * ```js
1031
1042
  * //emit when action starts
1032
1043
  * searchEmbed.on(EmbedEvent.ExportTML, payload => {
1033
1044
  * console.log('Export TML', payload)}, { start: true })
1034
1045
  * //emit when action ends
1035
1046
  * searchEmbed.on(EmbedEvent.ExportTML, payload => {
1036
1047
  * console.log('Export TML', payload)})
1037
- *```
1048
+ * ```
1038
1049
  */
1039
1050
  EmbedEvent["ExportTML"] = "exportTSL";
1040
1051
  /**
1041
1052
  * Emitted when an Answer is saved as a View.
1042
1053
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1043
1054
  * @example
1044
- *```js
1055
+ * ```js
1045
1056
  * appEmbed.on(EmbedEvent.SaveAsView, payload => {
1046
1057
  * console.log('View', payload);
1047
1058
  * })
1048
- *```
1059
+ * ```
1049
1060
  */
1050
1061
  EmbedEvent["SaveAsView"] = "saveAsView";
1051
1062
  /**
1052
1063
  * Emitted when the user creates a copy of an Answer.
1053
- * Use start:true to subscribe to when copy and edit is initiated, or end:true to subscribe to when copy and edit is completed. Default is end:true.
1064
+ * Use start:true to subscribe to when copy and edit is initiated, or end:true to
1065
+ * subscribe to when copy and edit is completed. Default is end:true.
1054
1066
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1055
1067
  * @example
1056
- *```js
1068
+ * ```js
1057
1069
  * //emit when action starts
1058
1070
  * appEmbed.on(EmbedEvent.CopyAEdit, payload => {
1059
1071
  * console.log('Copy and edit', payload)}, {start: true })
1060
1072
  * //emit when action ends
1061
1073
  * appEmbed.on(EmbedEvent.CopyAEdit, payload => {
1062
1074
  * console.log('Copy and edit', payload)})
1063
- *```
1075
+ * ```
1064
1076
  */
1065
1077
  EmbedEvent["CopyAEdit"] = "copyAEdit";
1066
1078
  /**
1067
1079
  * Emitted when a user clicks *Show underlying data* on an Answer.
1068
1080
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1069
1081
  * @example
1070
- *```js
1082
+ * ```js
1071
1083
  * liveboardEmbed.on(EmbedEvent.ShowUnderlyingData, payload => {
1072
1084
  * console.log('show data', payload);
1073
1085
  * })
1074
- *```
1086
+ * ```
1075
1087
  */
1076
1088
  EmbedEvent["ShowUnderlyingData"] = "showUnderlyingData";
1077
1089
  /**
1078
1090
  * Emitted when an Answer is switched to a chart or table view.
1079
1091
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1080
1092
  * @example
1081
- *```js
1093
+ * ```js
1082
1094
  * searchEmbed.on(EmbedEvent.AnswerChartSwitcher, payload => {
1083
1095
  * console.log('switch view', payload);
1084
1096
  * })
1085
- *```
1097
+ * ```
1086
1098
  */
1087
1099
  EmbedEvent["AnswerChartSwitcher"] = "answerChartSwitcher";
1088
1100
  /**
@@ -1099,118 +1111,118 @@ var EmbedEvent;
1099
1111
  * Emitted when a user clicks **Show Liveboard details** on a Liveboard
1100
1112
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1101
1113
  * @example
1102
- *```js
1114
+ * ```js
1103
1115
  * liveboardEmbed.on(EmbedEvent.LiveboardInfo, payload => {
1104
1116
  * console.log('Liveboard details', payload);
1105
1117
  * })
1106
- *```
1118
+ * ```
1107
1119
  */
1108
1120
  EmbedEvent["LiveboardInfo"] = "pinboardInfo";
1109
1121
  /**
1110
1122
  * Emitted when a user clicks on the Favorite icon on a Liveboard
1111
1123
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1112
1124
  * @example
1113
- *```js
1125
+ * ```js
1114
1126
  * liveboardEmbed.on(EmbedEvent.AddToFavorites, payload => {
1115
1127
  * console.log('favorites', payload);
1116
1128
  * })
1117
- *```
1129
+ * ```
1118
1130
  */
1119
1131
  EmbedEvent["AddToFavorites"] = "addToFavorites";
1120
1132
  /**
1121
1133
  * Emitted when a user clicks **Schedule** on a Liveboard
1122
1134
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1123
1135
  * @example
1124
- *```js
1136
+ * ```js
1125
1137
  * liveboardEmbed.on(EmbedEvent.Schedule, payload => {
1126
- * console.log(`Liveboard schedule', payload);
1138
+ * console.log('Liveboard schedule', payload);
1127
1139
  * })
1128
- *```
1140
+ * ```
1129
1141
  */
1130
1142
  EmbedEvent["Schedule"] = "subscription";
1131
1143
  /**
1132
1144
  * Emitted when a user clicks **Edit** on a Liveboard or visualization
1133
1145
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1134
1146
  * @example
1135
- *```js
1147
+ * ```js
1136
1148
  * liveboardEmbed.on(EmbedEvent.Edit, payload => {
1137
- * console.log(`Liveboard edit', payload);
1149
+ * console.log('Liveboard edit', payload);
1138
1150
  * })
1139
- *```
1151
+ * ```
1140
1152
  */
1141
1153
  EmbedEvent["Edit"] = "edit";
1142
1154
  /**
1143
1155
  * Emitted when a user clicks *Make a copy* on a Liveboard
1144
1156
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1145
1157
  * @example
1146
- *```js
1158
+ * ```js
1147
1159
  * liveboardEmbed.on(EmbedEvent.MakeACopy, payload => {
1148
- * console.log(`Copy', payload);
1160
+ * console.log('Copy', payload);
1149
1161
  * })
1150
- *```
1162
+ * ```
1151
1163
  */
1152
1164
  EmbedEvent["MakeACopy"] = "makeACopy";
1153
1165
  /**
1154
1166
  * Emitted when a user clicks **Present** on a Liveboard or visualization
1155
1167
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1156
1168
  * @example
1157
- *```js
1169
+ * ```js
1158
1170
  * liveboardEmbed.on(EmbedEvent.Present)
1159
- *```
1171
+ * ```
1160
1172
  * @example
1161
- *```js
1173
+ * ```js
1162
1174
  * liveboardEmbed.on(EmbedEvent.Present, {
1163
1175
  * vizId: '730496d6-6903-4601-937e-2c691821af3c'})
1164
1176
  * })
1165
- *```
1177
+ * ```
1166
1178
  */
1167
1179
  EmbedEvent["Present"] = "present";
1168
1180
  /**
1169
1181
  * Emitted when a user clicks **Delete** on a visualization
1170
1182
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1171
1183
  * @example
1172
- *```js
1184
+ * ```js
1173
1185
  * liveboardEmbed.on(EmbedEvent.Delete,
1174
1186
  * {vizId: '730496d6-6903-4601-937e-2c691821af3c'})
1175
- *```
1187
+ * ```
1176
1188
  */
1177
1189
  EmbedEvent["Delete"] = "delete";
1178
1190
  /**
1179
1191
  * Emitted when a user clicks Manage schedules on a Liveboard
1180
1192
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1181
1193
  * @example
1182
- *```js
1194
+ * ```js
1183
1195
  * liveboardEmbed.on(EmbedEvent.SchedulesList)
1184
- *```
1196
+ * ```
1185
1197
  */
1186
1198
  EmbedEvent["SchedulesList"] = "schedule-list";
1187
1199
  /**
1188
1200
  * Emitted when a user clicks **Cancel** in edit mode on a Liveboard
1189
1201
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1190
1202
  * @example
1191
- *```js
1203
+ * ```js
1192
1204
  * liveboardEmbed.on(EmbedEvent.Cancel)
1193
- *```
1205
+ * ```
1194
1206
  */
1195
1207
  EmbedEvent["Cancel"] = "cancel";
1196
1208
  /**
1197
1209
  * Emitted when a user clicks **Explore** on a visualization
1198
1210
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1199
1211
  * @example
1200
- *```js
1212
+ * ```js
1201
1213
  * liveboardEmbed.on(EmbedEvent.Explore, {
1202
1214
  * vizId: '730496d6-6903-4601-937e-2c691821af3c'})
1203
- *```
1215
+ * ```
1204
1216
  */
1205
1217
  EmbedEvent["Explore"] = "explore";
1206
1218
  /**
1207
1219
  * Emitted when a user clicks **Copy link** action on a visualization.
1208
1220
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
1209
1221
  * @example
1210
- *```js
1222
+ * ```js
1211
1223
  * liveboardEmbed.on(EmbedEvent.CopyLink, {
1212
1224
  * vizId: '730496d6-6903-4601-937e-2c691821af3c'})
1213
- *```
1225
+ * ```
1214
1226
  */
1215
1227
  EmbedEvent["CopyLink"] = "embedDocument";
1216
1228
  /**
@@ -1218,21 +1230,21 @@ var EmbedEvent;
1218
1230
  * visualization or Liveboard.
1219
1231
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.5.0.sw
1220
1232
  * @example
1221
- *```js
1233
+ * ```js
1222
1234
  * liveboardEmbed.on(EmbedEvent.CrossFilterChanged, {
1223
1235
  * vizId: '730496d6-6903-4601-937e-2c691821af3c'})
1224
- *```
1236
+ * ```
1225
1237
  */
1226
1238
  EmbedEvent["CrossFilterChanged"] = "cross-filter-changed";
1227
1239
  /**
1228
1240
  * Emitted when a user right clicks on a visualization (chart or table)
1229
1241
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.5.0.sw
1230
1242
  * @example
1231
- *```js
1243
+ * ```js
1232
1244
  * LiveboardEmbed.on(EmbedEvent.VizPointRightClick, payload => {
1233
1245
  * console.log('VizPointClick', payload)
1234
1246
  * })
1235
- *```
1247
+ * ```
1236
1248
  */
1237
1249
  EmbedEvent["VizPointRightClick"] = "vizPointRightClick";
1238
1250
  /**
@@ -1246,35 +1258,35 @@ var EmbedEvent;
1246
1258
  * filter details.
1247
1259
  * @example
1248
1260
  *
1249
- *```js
1261
+ * ```js
1250
1262
  * LiveboardEmbed.on(EmbedEvent.FilterChanged, (payload) => {
1251
1263
  * console.log('payload', payload);
1252
1264
  * })
1253
- *
1265
+ * ```
1254
1266
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl, 9.5.0.sw
1255
1267
  */
1256
1268
  EmbedEvent["FilterChanged"] = "filterChanged";
1257
1269
  /**
1258
1270
  * Emitted when a user clicks the **Go** button to initiate
1259
1271
  * a Natural Language Search query
1260
- * @version SDK : 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1272
+ * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1261
1273
  */
1262
1274
  EmbedEvent["SageEmbedQuery"] = "sageEmbedQuery";
1263
1275
  /**
1264
1276
  * Emitted when a user selects a data source on the embedded
1265
1277
  * Natural Language Search interface.
1266
1278
  *
1267
- * @version SDK : 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1279
+ * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1268
1280
  */
1269
1281
  EmbedEvent["SageWorksheetUpdated"] = "sageWorksheetUpdated";
1270
1282
  /**
1271
1283
  * Emitted when a user updates a connection on the **Data** page
1272
- * @version SDK : 1.27.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
1284
+ * @version SDK: 1.27.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
1273
1285
  */
1274
1286
  EmbedEvent["UpdateConnection"] = "updateConnection";
1275
1287
  /**
1276
1288
  * Emitted when a user updates a connection on the **Data** page
1277
- * @version SDK : 1.27.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
1289
+ * @version SDK: 1.27.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
1278
1290
  */
1279
1291
  EmbedEvent["CreateConnection"] = "createConnection";
1280
1292
  /**
@@ -1284,7 +1296,7 @@ var EmbedEvent;
1284
1296
  * @returns viewId: string
1285
1297
  * @returns liveboardId: string
1286
1298
  * @returns isPublic: boolean
1287
- * @version SDK : 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1299
+ * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1288
1300
  */
1289
1301
  EmbedEvent["UpdatePersonalisedView"] = "updatePersonalisedView";
1290
1302
  /**
@@ -1293,7 +1305,7 @@ var EmbedEvent;
1293
1305
  * @returns viewId: string
1294
1306
  * @returns liveboardId: string
1295
1307
  * @returns isPublic: boolean
1296
- * @version SDK : 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1308
+ * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1297
1309
  */
1298
1310
  EmbedEvent["SavePersonalisedView"] = "savePersonalisedView";
1299
1311
  /**
@@ -1302,19 +1314,19 @@ var EmbedEvent;
1302
1314
  * @returns viewId: string
1303
1315
  * @returns liveboardId: string
1304
1316
  * @returns isPublic: boolean
1305
- * @version SDK : 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1317
+ * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1306
1318
  */
1307
1319
  EmbedEvent["ResetLiveboard"] = "resetLiveboard";
1308
1320
  /**
1309
1321
  * Emitted when a PersonalisedView is deleted.
1310
1322
  * @returns views: string[]
1311
1323
  * @returns liveboardId: string
1312
- * @version SDK : 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1324
+ * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 9.8.0.sw
1313
1325
  */
1314
1326
  EmbedEvent["DeletePersonalisedView"] = "deletePersonalisedView";
1315
1327
  /**
1316
1328
  * Emitted when a user creates a Worksheet.
1317
- * @version SDK : 1.27.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
1329
+ * @version SDK: 1.27.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
1318
1330
  */
1319
1331
  EmbedEvent["CreateWorksheet"] = "createWorksheet";
1320
1332
  /**
@@ -1323,12 +1335,12 @@ var EmbedEvent;
1323
1335
  * @returns viewId: string
1324
1336
  * @returns liveboardId: string
1325
1337
  * @returns isPublic: boolean
1326
- * @version SDK : 1.29.0 | ThoughtSpot Cloud: 9.12.0.cl
1338
+ * @version SDK: 1.29.0 | ThoughtSpot Cloud: 9.12.0.cl
1327
1339
  */
1328
1340
  EmbedEvent["AskSageInit"] = "AskSageInit";
1329
1341
  /**
1330
1342
  * Emitted when a Liveboard or visualization is renamed.
1331
- * @version SDK : 1.28.0 | ThoughtSpot: 9.10.5.cl, 10.1.0.sw
1343
+ * @version SDK: 1.28.0 | ThoughtSpot: 9.10.5.cl, 10.1.0.sw
1332
1344
  */
1333
1345
  EmbedEvent["Rename"] = "rename";
1334
1346
  /**
@@ -1351,7 +1363,7 @@ var EmbedEvent;
1351
1363
  * - `error` - Developers can customize the user-facing error message when `execute`
1352
1364
  * is `false` by using the `error` parameters in `responder`.
1353
1365
  * - `errorText` - The error message text shown to the user.
1354
- * @version SDK : 1.29.0 | ThoughtSpot: 10.3.0.cl
1366
+ * @version SDK: 1.29.0 | ThoughtSpot: 10.3.0.cl
1355
1367
  * @example
1356
1368
  *
1357
1369
  * This example blocks search operation and returns a custom error message:
@@ -1403,8 +1415,8 @@ var EmbedEvent;
1403
1415
  * liveboardEmbed.on(EmbedEvent.ParameterChanged, (payload) => {
1404
1416
  * console.log('payload', payload);
1405
1417
  * })
1406
- *```
1407
- * @version SDK : 1.29.0 | ThoughtSpot: 10.3.0.cl
1418
+ * ```
1419
+ * @version SDK: 1.29.0 | ThoughtSpot: 10.3.0.cl
1408
1420
  */
1409
1421
  EmbedEvent["ParameterChanged"] = "parameterChanged";
1410
1422
  /**
@@ -1459,24 +1471,24 @@ var EmbedEvent;
1459
1471
  * liveboardEmbed.on(EmbedEvent.CreateLiveboard, (payload) => {
1460
1472
  * console.log('payload', payload);
1461
1473
  * })
1462
- *```
1463
- * @version SDK : 1.37.0 | ThoughtSpot: 10.8.0.cl
1474
+ * ```
1475
+ * @version SDK: 1.37.0 | ThoughtSpot: 10.8.0.cl
1464
1476
  */
1465
1477
  EmbedEvent["CreateLiveboard"] = "createLiveboard";
1466
1478
  /**
1467
1479
  * Emitted when a user creates a Model.
1468
- * @version SDK : 1.37.0 | ThoughtSpot: 10.8.0.cl
1480
+ * @version SDK: 1.37.0 | ThoughtSpot: 10.8.0.cl
1469
1481
  */
1470
1482
  EmbedEvent["CreateModel"] = "createModel";
1471
1483
  /**
1472
1484
  * @hidden
1473
1485
  * Emitted when a user exits present mode.
1474
- * @version SDK : 1.40.0 | ThoughtSpot: 10.11.0.cl
1486
+ * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
1475
1487
  */
1476
1488
  EmbedEvent["ExitPresentMode"] = "exitPresentMode";
1477
1489
  /**
1478
1490
  * Emitted when a user requests the full height lazy load data.
1479
- * @version SDK : 1.39.0 | ThoughtSpot : 10.10.0.cl
1491
+ * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
1480
1492
  * @hidden
1481
1493
  */
1482
1494
  EmbedEvent["RequestVisibleEmbedCoordinates"] = "requestVisibleEmbedCoordinates";
@@ -1487,7 +1499,7 @@ var EmbedEvent;
1487
1499
  * spotterEmbed.on(EmbedEvent.SpotterData, (payload) => {
1488
1500
  * console.log('payload', payload);
1489
1501
  * })
1490
- *```
1502
+ * ```
1491
1503
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
1492
1504
  */
1493
1505
  EmbedEvent["SpotterData"] = "SpotterData";
@@ -1498,7 +1510,7 @@ var EmbedEvent;
1498
1510
  * spotterEmbed.on(EmbedEvent.PreviewSpotterData, (payload) => {
1499
1511
  * console.log('payload', payload);
1500
1512
  * })
1501
- *```
1513
+ * ```
1502
1514
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
1503
1515
  */
1504
1516
  EmbedEvent["PreviewSpotterData"] = "PreviewSpotterData";
@@ -1509,7 +1521,7 @@ var EmbedEvent;
1509
1521
  * spotterEmbed.on(EmbedEvent.AddToCoaching, (payload) => {
1510
1522
  * console.log('payload', payload);
1511
1523
  * })
1512
- *```
1524
+ * ```
1513
1525
  * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
1514
1526
  */
1515
1527
  EmbedEvent["AddToCoaching"] = "addToCoaching";
@@ -1531,7 +1543,7 @@ var EmbedEvent;
1531
1543
  * spotterEmbed.on(EmbedEvent.SpotterQueryTriggered, (payload) => {
1532
1544
  * console.log('payload', payload);
1533
1545
  * })
1534
- *```
1546
+ * ```
1535
1547
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
1536
1548
  */
1537
1549
  EmbedEvent["SpotterQueryTriggered"] = "SpotterQueryTriggered";
@@ -1542,7 +1554,7 @@ var EmbedEvent;
1542
1554
  * spotterEmbed.on(EmbedEvent.LastPromptEdited, (payload) => {
1543
1555
  * console.log('payload', payload);
1544
1556
  * })
1545
- *```
1557
+ * ```
1546
1558
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
1547
1559
  */
1548
1560
  EmbedEvent["LastPromptEdited"] = "LastPromptEdited";
@@ -1553,18 +1565,18 @@ var EmbedEvent;
1553
1565
  * spotterEmbed.on(EmbedEvent.LastPromptDeleted, (payload) => {
1554
1566
  * console.log('payload', payload);
1555
1567
  * })
1556
- *```
1568
+ * ```
1557
1569
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
1558
1570
  */
1559
1571
  EmbedEvent["LastPromptDeleted"] = "LastPromptDeleted";
1560
1572
  /**
1561
- * Emitted when the coversation is reset in spotter embed.
1573
+ * Emitted when the conversation is reset in Spotter embed.
1562
1574
  * @example
1563
1575
  * ```js
1564
1576
  * spotterEmbed.on(EmbedEvent.ResetSpotterConversation, (payload) => {
1565
1577
  * console.log('payload', payload);
1566
1578
  * })
1567
- *```
1579
+ * ```
1568
1580
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
1569
1581
  */
1570
1582
  EmbedEvent["ResetSpotterConversation"] = "ResetSpotterConversation";
@@ -1575,7 +1587,7 @@ var EmbedEvent;
1575
1587
  * spotterEmbed.on(EmbedEvent.SpotterInit, (payload) => {
1576
1588
  * console.log('payload', payload);
1577
1589
  * })
1578
- *```
1590
+ * ```
1579
1591
  * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
1580
1592
  */
1581
1593
  EmbedEvent["SpotterInit"] = "spotterInit";
@@ -1586,7 +1598,7 @@ var EmbedEvent;
1586
1598
  * spotterEmbed.on(EmbedEvent.SpotterLoadComplete, (payload) => {
1587
1599
  * console.log('payload', payload);
1588
1600
  * })
1589
- *```
1601
+ * ```
1590
1602
  * @version SDK: 1.44.0 | ThoughtSpot: 26.2.0.cl
1591
1603
  */
1592
1604
  EmbedEvent["SpotterLoadComplete"] = "spotterLoadComplete";
@@ -1814,7 +1826,8 @@ var HostEvent;
1814
1826
  * - `autoDrillDown`: Optional. If `true`, the drill down will be done automatically
1815
1827
  * on the most popular column.
1816
1828
  * - `vizId` (TS >= 9.8.0): Optional. The GUID of the visualization to drill in case
1817
- * of a Liveboard. In Spotter embed, `vizId` refers to the Answer ID and is **required**.
1829
+ * of a Liveboard. In Spotter embed, `vizId` refers to the Answer ID and is
1830
+ * **required**.
1818
1831
  * @example
1819
1832
  * ```js
1820
1833
  * searchEmbed.on(EmbedEvent.VizPointDoubleClick, (payload) => {
@@ -1941,7 +1954,7 @@ var HostEvent;
1941
1954
  * ```js
1942
1955
  * appEmbed.navigateToPage(-1)
1943
1956
  * ```
1944
- * @version SDK: 1.12.0 | ThoughtSpot 8.4.0.cl, 8.4.1.sw
1957
+ * @version SDK: 1.12.0 | ThoughtSpot: 8.4.0.cl, 8.4.1.sw
1945
1958
  */
1946
1959
  HostEvent["Navigate"] = "Navigate";
1947
1960
  /**
@@ -2010,7 +2023,8 @@ var HostEvent;
2010
2023
  * the following parameters:
2011
2024
  *
2012
2025
  * @param - Includes the following keys:
2013
- * - `vizId`: GUID of the saved Answer or Spotter visualization ID to pin to a Liveboard.
2026
+ * - `vizId`: GUID of the saved Answer or Spotter visualization ID to pin to a
2027
+ * Liveboard.
2014
2028
  * Optional when pinning a new chart or table generated from a Search query.
2015
2029
  * **Required** in Spotter Embed.
2016
2030
  * - `liveboardId`: GUID of the Liveboard to pin an Answer. If there is no Liveboard,
@@ -2074,9 +2088,9 @@ var HostEvent;
2074
2088
  * Trigger the **Show Liveboard details** action
2075
2089
  * on an embedded Liveboard.
2076
2090
  * @example
2077
- *```js
2091
+ * ```js
2078
2092
  * liveboardEmbed.trigger(HostEvent.LiveboardInfo)
2079
- *```
2093
+ * ```
2080
2094
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
2081
2095
  */
2082
2096
  HostEvent["LiveboardInfo"] = "pinboardInfo";
@@ -2204,7 +2218,7 @@ var HostEvent;
2204
2218
  * appEmbed.trigger(HostEvent.Remove)
2205
2219
  * ```
2206
2220
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
2207
- * * @example
2221
+ * @example
2208
2222
  * ```js
2209
2223
  * liveboardEmbed.trigger(HostEvent.Remove)
2210
2224
  * ```
@@ -2266,7 +2280,8 @@ var HostEvent;
2266
2280
  * This event is not supported in visualization embed and search embed.
2267
2281
  * @param - Object parameter. Includes the following keys:
2268
2282
  * - `vizId`: To trigger the action for a specific visualization in Liveboard embed,
2269
- * pass in `vizId` as a key. In Spotter embed, `vizId` refers to the Answer ID and is **required**.
2283
+ * pass in `vizId` as a key. In Spotter embed, `vizId` refers to the Answer ID and
2284
+ * is **required**.
2270
2285
  *
2271
2286
  * @example
2272
2287
  * ```js
@@ -2295,7 +2310,7 @@ var HostEvent;
2295
2310
  * liveboardEmbed.trigger(HostEvent.CopyLink, {vizId: '730496d6-6903-4601-937e-2c691821af3c'})
2296
2311
  * ```
2297
2312
  * ```js
2298
- * vizEmbed.trigger((HostEvent.CopyLink)
2313
+ * vizEmbed.trigger(HostEvent.CopyLink)
2299
2314
  * ```
2300
2315
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
2301
2316
  */
@@ -2312,7 +2327,7 @@ var HostEvent;
2312
2327
  * liveboardEmbed.trigger(HostEvent.Present, {vizId: '730496d6-6903-4601-937e-2c691821af3c'})
2313
2328
  * ```
2314
2329
  * ```js
2315
- * vizEmbed.trigger((HostEvent.Present)
2330
+ * vizEmbed.trigger(HostEvent.Present)
2316
2331
  * ```
2317
2332
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
2318
2333
  */
@@ -2327,23 +2342,22 @@ var HostEvent;
2327
2342
  * );
2328
2343
  * })
2329
2344
  * ```
2330
- * * @example
2345
+ * @example
2331
2346
  * ```js
2332
-
2333
- * // You can use the Data event dispatched on each answer creation to get the vizId and use in Pin host event.
2334
- * let latestSpotterVizId = '';
2335
- * spotterEmbed.on(EmbedEvent.Data, (payload) => {
2336
- * latestSpotterVizId = payload.data.id;
2337
- * });
2338
- *
2339
- * spotterEmbed.trigger(HostEvent.GetTML, {
2347
+ * // You can use the Data event dispatched on each answer creation to get the vizId and use in GetTML host event.
2348
+ * let latestSpotterVizId = '';
2349
+ * spotterEmbed.on(EmbedEvent.Data, (payload) => {
2350
+ * latestSpotterVizId = payload.data.id;
2351
+ * });
2352
+ *
2353
+ * spotterEmbed.trigger(HostEvent.GetTML, {
2340
2354
  * vizId: latestSpotterVizId
2341
2355
  * }).then((tml) => {
2342
2356
  * console.log(
2343
2357
  * tml.answer.search_query // TML representation of the search query
2344
2358
  * );
2345
2359
  * })
2346
- * ```
2360
+ * ```
2347
2361
  * @version SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1.sw
2348
2362
  * @important
2349
2363
  */
@@ -2407,6 +2421,11 @@ var HostEvent;
2407
2421
  /**
2408
2422
  * Trigger the **Download** action on charts in
2409
2423
  * the embedded view.
2424
+ * Use {@link HostEvent.DownloadAsPng} instead.
2425
+ *
2426
+ * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
2427
+ *
2428
+ * @deprecated from SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl ,9.4.1.sw
2410
2429
  * @param - `vizId` refers to the Visualization ID in Spotter embed and is required in Spotter embed.
2411
2430
  * @example
2412
2431
  * ```js
@@ -2425,9 +2444,6 @@ var HostEvent;
2425
2444
  *
2426
2445
  * spotterEmbed.trigger(HostEvent.Download, { vizId: latestSpotterVizId });
2427
2446
  * ```
2428
- * @deprecated from SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl ,9.4.1.sw
2429
- * Use {@link DownloadAsPng}
2430
- * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1.sw
2431
2447
  */
2432
2448
  HostEvent["Download"] = "downloadAsPng";
2433
2449
  /**
@@ -2634,8 +2650,9 @@ var HostEvent;
2634
2650
  /**
2635
2651
  * Update one or several filters applied on a Liveboard.
2636
2652
  * @param - Includes the following keys:
2637
- * - `filter`: A single filter object containing column name, filter operator, and values.
2638
- * - `filters`: Multiple filter objects with column name, filter operator, and values for each.
2653
+ * - `filter`: A single filter object containing column name, filter operator, and
2654
+ * values. - `filters`: Multiple filter objects with column name, filter operator,
2655
+ * and values for each.
2639
2656
  *
2640
2657
  * Each filter object must include the following attributes:
2641
2658
  *
@@ -2865,8 +2882,8 @@ var HostEvent;
2865
2882
  * liveboardEmbed.trigger(HostEvent.GetParameters).then((parameter) => {
2866
2883
  * console.log('parameters', parameter);
2867
2884
  * });
2868
- *```
2869
- *```js
2885
+ * ```
2886
+ * ```js
2870
2887
  * // You can use the Data event dispatched on each answer creation to get the vizId and use in GetParameters host event.
2871
2888
  * let latestSpotterVizId = '';
2872
2889
  * spotterEmbed.on(EmbedEvent.Data, (payload) => {
@@ -2874,7 +2891,7 @@ var HostEvent;
2874
2891
  * });
2875
2892
  *
2876
2893
  * spotterEmbed.trigger(HostEvent.GetParameters, { vizId: latestSpotterVizId });
2877
- *```
2894
+ * ```
2878
2895
  * @version SDK: 1.29.0 | ThoughtSpot: 10.1.0.cl, 10.1.0.sw
2879
2896
  */
2880
2897
  HostEvent["GetParameters"] = "GetParameters";
@@ -2891,7 +2908,7 @@ var HostEvent;
2891
2908
  * Notify when info call is completed successfully
2892
2909
  * ```js
2893
2910
  * liveboardEmbed.trigger(HostEvent.InfoSuccess, data);
2894
- *```
2911
+ * ```
2895
2912
  * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
2896
2913
  */
2897
2914
  HostEvent["InfoSuccess"] = "InfoSuccess";
@@ -2904,8 +2921,8 @@ var HostEvent;
2904
2921
  * triggered with a modal to prompt users to
2905
2922
  * add a name and description for the Answer.
2906
2923
  * @param - Includes the following keys:
2907
- * - `vizId`: Refers to the Answer ID in Spotter embed and is **required** in Spotter embed.
2908
- * - `name`: Optional. Name string for the Answer.
2924
+ * - `vizId`: Refers to the Answer ID in Spotter embed and is **required** in Spotter
2925
+ * embed. - `name`: Optional. Name string for the Answer.
2909
2926
  * - `description`: Optional. Description text for the Answer.
2910
2927
  * @example
2911
2928
  * ```js
@@ -2994,7 +3011,7 @@ var HostEvent;
2994
3011
  * ```js
2995
3012
  * spotterEmbed.trigger(HostEvent.AddToCoaching, { vizId: '730496d6-6903-4601-937e-2c691821af3c' });
2996
3013
  *
2997
- *```
3014
+ * ```
2998
3015
  * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
2999
3016
  */
3000
3017
  HostEvent["AddToCoaching"] = "addToCoaching";
@@ -3036,7 +3053,7 @@ var HostEvent;
3036
3053
  * });
3037
3054
  *
3038
3055
  * spotterEmbed.trigger(HostEvent.AnswerChartSwitcher, { vizId: latestSpotterVizId });
3039
- *```
3056
+ * ```
3040
3057
  * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
3041
3058
  */
3042
3059
  HostEvent["AnswerChartSwitcher"] = "answerChartSwitcher";
@@ -3046,7 +3063,7 @@ var HostEvent;
3046
3063
  * This is automatically triggered by the SDK when fullscreen mode is exited.
3047
3064
  * ```js
3048
3065
  * liveboardEmbed.trigger(HostEvent.ExitPresentMode);
3049
- *```
3066
+ * ```
3050
3067
  * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
3051
3068
  */
3052
3069
  HostEvent["ExitPresentMode"] = "exitPresentMode";
@@ -3100,8 +3117,9 @@ var HostEvent;
3100
3117
  /**
3101
3118
  * Triggers a new conversation in Spotter embed.
3102
3119
  *
3103
- * This feature is available only when chat history is enabled on your ThoughtSpot instance.
3104
- * Contact your admin or ThoughtSpot Support to enable chat history on your instance.
3120
+ * This feature is available only when chat history is enabled on your ThoughtSpot
3121
+ * instance. Contact your admin or ThoughtSpot Support to enable chat history on your
3122
+ * instance.
3105
3123
  *
3106
3124
  * @example
3107
3125
  * ```js
@@ -3147,6 +3165,7 @@ var DataSourceVisualMode;
3147
3165
  */
3148
3166
  var Param;
3149
3167
  (function (Param) {
3168
+ Param["Tsmcp"] = "tsmcp";
3150
3169
  Param["EmbedApp"] = "embedApp";
3151
3170
  Param["DataSources"] = "dataSources";
3152
3171
  Param["DataSourceMode"] = "dataSourceMode";
@@ -3196,6 +3215,7 @@ var Param;
3196
3215
  // 'both' clicks in `contextMenuTrigger` configuration.
3197
3216
  Param["ContextMenuTrigger"] = "contextMenuEnabledOnWhichClick";
3198
3217
  Param["LinkOverride"] = "linkOverride";
3218
+ Param["EnableLinkOverridesV2"] = "enableLinkOverridesV2";
3199
3219
  Param["blockNonEmbedFullAppAccess"] = "blockNonEmbedFullAppAccess";
3200
3220
  Param["ShowInsertToSlide"] = "insertInToSlide";
3201
3221
  Param["PrimaryNavHidden"] = "primaryNavHidden";
@@ -3290,6 +3310,7 @@ var Param;
3290
3310
  Param["IsThisPeriodInDateFiltersEnabled"] = "isThisPeriodInDateFiltersEnabled";
3291
3311
  Param["HideToolResponseCardBranding"] = "hideToolResponseCardBranding";
3292
3312
  Param["ToolResponseCardBrandingLabel"] = "toolResponseCardBrandingLabel";
3313
+ Param["EnableHomepageAnnouncement"] = "enableHomepageAnnouncement";
3293
3314
  })(Param || (Param = {}));
3294
3315
  /**
3295
3316
  * ThoughtSpot application pages include actions and menu commands
@@ -3449,14 +3470,14 @@ var Action;
3449
3470
  * ```js
3450
3471
  * disabledActions: [Action.CollapseDataPanel]
3451
3472
  * ```
3452
- * @version: SDK: 1.1.0 | ThoughtSpot Cloud: ts7.may.cl, 8.4.1.sw
3473
+ * @version SDK: 1.1.0 | ThoughtSpot Cloud: ts7.may.cl, 8.4.1.sw
3453
3474
  */
3454
3475
  Action["CollapseDataSources"] = "collapseDataSources";
3455
3476
  /**
3456
3477
  * The **Collapse data panel** icon on the Search page.
3457
3478
  * Collapses the data panel view.
3458
3479
  *
3459
- * @version: SDK: 1.34.0 | ThoughtSpot Cloud: 10.3.0.cl
3480
+ * @version SDK: 1.34.0 | ThoughtSpot Cloud: 10.3.0.cl
3460
3481
  *
3461
3482
  * @example
3462
3483
  * ```js
@@ -3903,13 +3924,12 @@ var Action;
3903
3924
  */
3904
3925
  Action["CreateMonitor"] = "createMonitor";
3905
3926
  /**
3906
- * @deprecated
3907
- * Reports errors
3927
+ * @version SDK: 1.11.1 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3928
+ * @deprecated This action is deprecated. It was used for reporting errors.
3908
3929
  * @example
3909
3930
  * ```js
3910
3931
  * disabledActions: [Action.ReportError]
3911
3932
  * ```
3912
- * @version SDK: 1.11.1 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3913
3933
  */
3914
3934
  Action["ReportError"] = "reportError";
3915
3935
  /**
@@ -3919,7 +3939,7 @@ var Action;
3919
3939
  * ```js
3920
3940
  * disabledActions: [Action.SyncToSheets]
3921
3941
  * ```
3922
- * @version SDK: 1.18.0| ThoughtSpot: 8.10.0.cl, 9.0.1.sw
3942
+ * @version SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1.sw
3923
3943
  */
3924
3944
  Action["SyncToSheets"] = "sync-to-sheets";
3925
3945
  /**
@@ -3930,7 +3950,7 @@ var Action;
3930
3950
  * ```js
3931
3951
  * disabledActions: [Action.SyncToOtherApps]
3932
3952
  * ```
3933
- * @version SDK: 1.18.0| ThoughtSpot: 8.10.0.cl, 9.0.1.sw
3953
+ * @version SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1.sw
3934
3954
  */
3935
3955
  Action["SyncToOtherApps"] = "sync-to-other-apps";
3936
3956
  /**
@@ -3940,7 +3960,7 @@ var Action;
3940
3960
  * ```js
3941
3961
  * disabledActions: [Action.ManagePipelines]
3942
3962
  * ```
3943
- * @version SDK: 1.18.0| ThoughtSpot: 8.10.0.cl, 9.0.1.sw
3963
+ * @version SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1.sw
3944
3964
  */
3945
3965
  Action["ManagePipelines"] = "manage-pipeline";
3946
3966
  /**
@@ -4252,7 +4272,7 @@ var Action;
4252
4272
  * ```js
4253
4273
  * disabledActions: [Action.PersonalisedViewsDropdown]
4254
4274
  * ```
4255
- * @version SDK : 1.26.0 | ThoughtSpot: 9.7.0.cl, 10.1.0.sw
4275
+ * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 10.1.0.sw
4256
4276
  */
4257
4277
  Action["PersonalisedViewsDropdown"] = "personalisedViewsDropdown";
4258
4278
  /**
@@ -4262,7 +4282,7 @@ var Action;
4262
4282
  * ```js
4263
4283
  * disabledActions: [Action.LiveboardUsers]
4264
4284
  * ```
4265
- * @version SDK : 1.26.0 | ThoughtSpot: 9.7.0.cl, 10.1.0.sw
4285
+ * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl, 10.1.0.sw
4266
4286
  */
4267
4287
  Action["LiveboardUsers"] = "liveboardUsers";
4268
4288
  /**
@@ -4280,7 +4300,7 @@ var Action;
4280
4300
  * hiddenAction: [Action.TML] // hide all TML actions
4281
4301
  * disabledActions: [Action.TML] // to disable all TML actions
4282
4302
  * ```
4283
- * @version SDK : 1.28.3 | ThoughtSpot: 9.12.0.cl, 10.1.0.sw
4303
+ * @version SDK: 1.28.3 | ThoughtSpot: 9.12.0.cl, 10.1.0.sw
4284
4304
  */
4285
4305
  Action["TML"] = "tml";
4286
4306
  /**
@@ -4326,7 +4346,7 @@ var Action;
4326
4346
  * ```js
4327
4347
  * disabledActions: [Action.AddToWatchlist]
4328
4348
  * ```
4329
- * @version SDK : 1.27.9 | ThoughtSpot Cloud: 9.12.5.cl
4349
+ * @version SDK: 1.27.9 | ThoughtSpot Cloud: 9.12.5.cl
4330
4350
  */
4331
4351
  Action["AddToWatchlist"] = "addToWatchlist";
4332
4352
  /**
@@ -4336,7 +4356,7 @@ var Action;
4336
4356
  * ```js
4337
4357
  * disabledActions: [Action.RemoveFromWatchlist]
4338
4358
  * ```
4339
- * @version SDK : 1.27.9 | ThoughtSpot: 9.12.5.cl
4359
+ * @version SDK: 1.27.9 | ThoughtSpot: 9.12.5.cl
4340
4360
  */
4341
4361
  Action["RemoveFromWatchlist"] = "removeFromWatchlist";
4342
4362
  /**
@@ -4347,7 +4367,7 @@ var Action;
4347
4367
  * ```js
4348
4368
  * disabledActions: [Action.OrganiseFavourites]
4349
4369
  * ```
4350
- * @version SDK : 1.32.0 | ThoughtSpot: 10.0.0.cl
4370
+ * @version SDK: 1.32.0 | ThoughtSpot: 10.0.0.cl
4351
4371
  */
4352
4372
  Action["OrganiseFavourites"] = "organiseFavourites";
4353
4373
  /**
@@ -4408,7 +4428,7 @@ var Action;
4408
4428
  * ```js
4409
4429
  * disabledActions: [Action.ManageTags]
4410
4430
  * ```
4411
- * @version SDK : 1.34.0 | ThoughtSpot Cloud: 10.3.0.cl
4431
+ * @version SDK: 1.34.0 | ThoughtSpot Cloud: 10.3.0.cl
4412
4432
  */
4413
4433
  Action["ManageTags"] = "manageTags";
4414
4434
  /**
@@ -5040,7 +5060,9 @@ var ErrorDetailsTypes;
5040
5060
  ErrorDetailsTypes["NETWORK"] = "NETWORK";
5041
5061
  })(ErrorDetailsTypes || (ErrorDetailsTypes = {}));
5042
5062
  /**
5043
- * Error codes for identifying specific issues in embedded ThoughtSpot components. Use {@link EmbedErrorDetailsEvent} and {@link ErrorDetailsTypes} codes for precise error handling and debugging.
5063
+ * Error codes for identifying specific issues in embedded ThoughtSpot components. Use
5064
+ * {@link EmbedErrorDetailsEvent} and {@link ErrorDetailsTypes} codes for precise error
5065
+ * handling and debugging.
5044
5066
  *
5045
5067
  * @version SDK: 1.44.2 | ThoughtSpot: 26.2.0.cl
5046
5068
  * @group Error Handling
@@ -5408,7 +5430,7 @@ const getCssDimension = (value) => {
5408
5430
  * @returns true if the value is a valid CSS margin value, false otherwise
5409
5431
  */
5410
5432
  const isValidCssMargin = (value) => {
5411
- if (isUndefined$1(value)) {
5433
+ if (isUndefined(value)) {
5412
5434
  return false;
5413
5435
  }
5414
5436
  if (typeof value !== 'string') {
@@ -5596,7 +5618,7 @@ const removeStyleProperties = (element, styleProperties) => {
5596
5618
  element.style.removeProperty(styleProperty);
5597
5619
  });
5598
5620
  };
5599
- const isUndefined$1 = (value) => value === undefined;
5621
+ const isUndefined = (value) => value === undefined;
5600
5622
  // Return if the value is a string, double or boolean.
5601
5623
  const getTypeFromValue = (value) => {
5602
5624
  if (typeof value === 'string') {
@@ -5793,6 +5815,14 @@ const validateHttpUrl = (url) => {
5793
5815
  return [false, error instanceof Error ? error : new Error(String(error))];
5794
5816
  }
5795
5817
  };
5818
+ /**
5819
+ * Resolves enablePastConversationsSidebar with
5820
+ * spotterSidebarConfig taking precedence over the
5821
+ * standalone flag.
5822
+ */
5823
+ const resolveEnablePastConversationsSidebar = (params) => (params.spotterSidebarConfigValue !== undefined
5824
+ ? params.spotterSidebarConfigValue
5825
+ : params.standaloneValue);
5796
5826
  /**
5797
5827
  * Sets a query parameter if the value is defined.
5798
5828
  * @param queryParams - The query params object to modify
@@ -8275,7 +8305,6 @@ const validateAuthToken = async (embedConfig, authToken, suppressAlert) => {
8275
8305
  }
8276
8306
  if (cachedAuthToken && cachedAuthToken === authToken) {
8277
8307
  if (!embedConfig.suppressErrorAlerts && !suppressAlert) {
8278
- // eslint-disable-next-line no-alert
8279
8308
  alert(ERROR_MESSAGE.DUPLICATE_TOKEN_ERR);
8280
8309
  }
8281
8310
  throw new Error(ERROR_MESSAGE.DUPLICATE_TOKEN_ERR);
@@ -8373,7 +8402,7 @@ const setEmbedConfig = (newConfig) => {
8373
8402
  * tokenizedFetch("<TS_ORIGIN>/api/rest/2.0/auth/session/user", {
8374
8403
  * // .. fetch options ..
8375
8404
  * });
8376
- *```
8405
+ * ```
8377
8406
  * @version SDK: 1.28.0
8378
8407
  * @group Global methods
8379
8408
  */
@@ -8707,12 +8736,12 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
8707
8736
  }`;
8708
8737
 
8709
8738
  // import YAML from 'yaml';
8710
- // eslint-disable-next-line no-shadow
8711
8739
  var OperationType;
8712
8740
  (function (OperationType) {
8713
8741
  OperationType["GetChartWithData"] = "GetChartWithData";
8714
8742
  OperationType["GetTableWithHeadlineData"] = "GetTableWithHeadlineData";
8715
8743
  })(OperationType || (OperationType = {}));
8744
+ const DATA_TYPES = ['DATE', 'DATE_TIME', 'TIME'];
8716
8745
  /**
8717
8746
  * AnswerService provides a simple way to work with ThoughtSpot Answers.
8718
8747
  *
@@ -8722,10 +8751,11 @@ var OperationType;
8722
8751
  *
8723
8752
  * You can use this service to:
8724
8753
  *
8725
- * - Add or remove columns from Answers (`addColumns`, `removeColumns`, `addColumnsByName`)
8726
- * - Apply filters to Answers (`addFilter`)
8727
- * - Get data from Answers in different formats (JSON, CSV, PNG) (`fetchData`, `fetchCSVBlob`, `fetchPNGBlob`)
8728
- * - Get data for specific points in visualizations (`getUnderlyingDataForPoint`)
8754
+ * - Add or remove columns from Answers (`addColumns`, `removeColumns`,
8755
+ * `addColumnsByName`) - Apply filters to Answers (`addFilter`)
8756
+ * - Get data from Answers in different formats (JSON, CSV, PNG) (`fetchData`,
8757
+ * `fetchCSVBlob`, `fetchPNGBlob`) - Get data for specific points in visualizations
8758
+ * (`getUnderlyingDataForPoint`)
8729
8759
  * - Run custom queries (`executeQuery`)
8730
8760
  * - Add visualizations to Liveboards (`addDisplayedVizToLiveboard`)
8731
8761
  *
@@ -8758,7 +8788,7 @@ var OperationType;
8758
8788
  * });
8759
8789
  * ```
8760
8790
  *
8761
- * @version SDK: 1.25.0| ThoughtSpot: 9.10.0.cl
8791
+ * @version SDK: 1.25.0 | ThoughtSpot: 9.10.0.cl
8762
8792
  * @group Events
8763
8793
  */
8764
8794
  class AnswerService {
@@ -8819,6 +8849,7 @@ class AnswerService {
8819
8849
  * ]);
8820
8850
  * console.log(await service.fetchData());
8821
8851
  * });
8852
+ * ```
8822
8853
  */
8823
8854
  async addColumnsByName(columnNames) {
8824
8855
  const sourceDetail = await this.getSourceDetail();
@@ -8949,7 +8980,7 @@ class AnswerService {
8949
8980
  * const data = await underlying.fetchData(0, 100);
8950
8981
  * })
8951
8982
  * ```
8952
- * @version SDK: 1.25.0| ThoughtSpot: 9.10.0.cl
8983
+ * @version SDK: 1.25.0 | ThoughtSpot: 9.10.0.cl
8953
8984
  */
8954
8985
  async getUnderlyingDataForPoint(outputColumnNames, selectedPoints) {
8955
8986
  if (!selectedPoints && !this.selectedPoints) {
@@ -9017,7 +9048,7 @@ class AnswerService {
9017
9048
  async getTML() {
9018
9049
  const { object } = await this.executeQuery(getAnswerTML, {});
9019
9050
  const edoc = object[0].edoc;
9020
- const YAML = await import('./index-Vyh6Ha5f.js');
9051
+ const YAML = await import('./index-DyX-x6uN.js');
9021
9052
  const parsedDoc = YAML.parse(edoc);
9022
9053
  return {
9023
9054
  answer: {
@@ -9068,7 +9099,7 @@ function getSelectedPointsForUnderlyingDataQuery(selectedPoints) {
9068
9099
  const dataType = colVal.column.dataType;
9069
9100
  colVal.column.id;
9070
9101
  let dataValue;
9071
- if (dataType === 'DATE') {
9102
+ if (DATA_TYPES.includes(dataType)) {
9072
9103
  if (Number.isFinite(colVal.value)) {
9073
9104
  dataValue = [{
9074
9105
  epochRange: {
@@ -9106,13 +9137,9 @@ function getSelectedPointsForUnderlyingDataQuery(selectedPoints) {
9106
9137
  */
9107
9138
  function getDisplayedViz(visualizations, displayMode) {
9108
9139
  if (displayMode === 'CHART_MODE') {
9109
- return visualizations.find(
9110
- // eslint-disable-next-line no-underscore-dangle
9111
- (viz) => viz.__typename === 'ChartViz');
9140
+ return visualizations.find((viz) => viz.__typename === 'ChartViz');
9112
9141
  }
9113
- return visualizations.find(
9114
- // eslint-disable-next-line no-underscore-dangle
9115
- (viz) => viz.__typename === 'TableViz');
9142
+ return visualizations.find((viz) => viz.__typename === 'TableViz');
9116
9143
  }
9117
9144
 
9118
9145
  /** Built-in value references. */
@@ -17459,11 +17486,8 @@ function resetAllCachedServices() {
17459
17486
  resetCachedPreauthInfo();
17460
17487
  }
17461
17488
 
17462
- // eslint-disable-next-line import/no-mutable-exports
17463
17489
  let loggedInStatus = false;
17464
- // eslint-disable-next-line import/no-mutable-exports
17465
17490
  let samlAuthWindow = null;
17466
- // eslint-disable-next-line import/no-mutable-exports
17467
17491
  let samlCompletionPromise = null;
17468
17492
  let releaseVersion = '';
17469
17493
  const SSO_REDIRECTION_MARKER_GUID = '5e16222e-ef02-43e9-9fbd-24226bf3ce5b';
@@ -17521,20 +17545,45 @@ var AuthFailureType;
17521
17545
  var AuthStatus;
17522
17546
  (function (AuthStatus) {
17523
17547
  /**
17524
- * Emits when the SDK fails to authenticate
17548
+ * Emits when the SDK fails to authenticate.
17525
17549
  */
17526
17550
  AuthStatus["FAILURE"] = "FAILURE";
17527
17551
  /**
17528
- * Emits when the SDK authenticates successfully
17552
+ * Emits when the SDK authentication step completes
17553
+ * successfully (e.g., token exchange, cookie set).
17554
+ * This fires before any iframe is rendered. Use
17555
+ * this to know that auth passed and it is safe to
17556
+ * proceed with rendering. The callback receives no
17557
+ * arguments.
17558
+ * @example
17559
+ * ```js
17560
+ * const authEE = init({ ... });
17561
+ * authEE.on(AuthStatus.SDK_SUCCESS, () => {
17562
+ * // Auth done, iframe not loaded yet
17563
+ * });
17564
+ * ```
17529
17565
  */
17530
17566
  AuthStatus["SDK_SUCCESS"] = "SDK_SUCCESS";
17531
17567
  /**
17532
17568
  * @hidden
17533
- * Emits when iframe is loaded and session info is available
17569
+ * Emits when iframe is loaded and session
17570
+ * information is available.
17534
17571
  */
17535
17572
  AuthStatus["SESSION_INFO_SUCCESS"] = "SESSION_INFO_SUCCESS";
17536
17573
  /**
17537
- * Emits when the app sends an authentication success message
17574
+ * Emits when the ThoughtSpot app inside the
17575
+ * embedded iframe confirms its session is active.
17576
+ * This fires after the iframe loads and sends back an `AuthInit` event.
17577
+ * @param sessionInfo Information about the user session, with details like `userGUID`.
17578
+ * @see EmbedEvent.AuthInit
17579
+ * @example
17580
+ * ```js
17581
+ * const authEE = init({ ... });
17582
+ * authEE.on(AuthStatus.SUCCESS, (sessionInfo) => {
17583
+ * // App is loaded and authenticated
17584
+ * console.log(sessionInfo.userGUID);
17585
+ * });
17586
+ * ```
17538
17587
  */
17539
17588
  AuthStatus["SUCCESS"] = "SUCCESS";
17540
17589
  /**
@@ -17993,8 +18042,6 @@ function processTrigger(iFrame, messageType, thoughtSpotHost, data, context) {
17993
18042
  });
17994
18043
  }
17995
18044
 
17996
- /* eslint-disable camelcase */
17997
- /* eslint-disable import/no-mutable-exports */
17998
18045
  /**
17999
18046
  * Copyright (c) 2022
18000
18047
  *
@@ -18050,7 +18097,6 @@ const hostUrlToFeatureUrl = {
18050
18097
  const prefetch = (url, prefetchFeatures, additionalFlags) => {
18051
18098
  var _a;
18052
18099
  if (url === '') {
18053
- // eslint-disable-next-line no-console
18054
18100
  logger$3.warn('The prefetch method does not have a valid URL');
18055
18101
  }
18056
18102
  else {
@@ -18070,9 +18116,9 @@ const prefetch = (url, prefetchFeatures, additionalFlags) => {
18070
18116
  iFrame.style.width = '0';
18071
18117
  iFrame.style.height = '0';
18072
18118
  iFrame.style.border = '0';
18073
- // Make it 'fixed' to keep it in a different stacking context.
18074
- // This should solve the focus behaviours inside the iframe from
18075
- // interfering with main body.
18119
+ // Make it 'fixed' to keep it in a different stacking
18120
+ // context. This should solve the focus behaviours inside
18121
+ // the iframe from interfering with main body.
18076
18122
  iFrame.style.position = 'fixed';
18077
18123
  // Push it out of viewport.
18078
18124
  iFrame.style.top = '100vh';
@@ -18221,7 +18267,7 @@ const renderInQueue = (fn) => {
18221
18267
  return renderQueue;
18222
18268
  }
18223
18269
  // Sending an empty function to keep it consistent with the above usage.
18224
- return fn(() => { }); // eslint-disable-line @typescript-eslint/no-empty-function
18270
+ return fn(() => { });
18225
18271
  };
18226
18272
  /**
18227
18273
  * Imports TML representation of the metadata objects into ThoughtSpot.
@@ -18242,7 +18288,7 @@ const renderInQueue = (fn) => {
18242
18288
  * }).catch(error => {
18243
18289
  * console.error(error);
18244
18290
  * });
18245
- *```
18291
+ * ```
18246
18292
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
18247
18293
  * @group Global methods
18248
18294
  */
@@ -18345,9 +18391,9 @@ const exportTML = async (data) => {
18345
18391
  };
18346
18392
  /**
18347
18393
  * Reloads the ThoughtSpot iframe.
18394
+ * @version SDK: 1.43.1
18348
18395
  * @param iFrame
18349
18396
  * @group Global methods
18350
- * @version SDK: 1.43.1
18351
18397
  */
18352
18398
  const reloadIframe = (iFrame) => {
18353
18399
  if (!iFrame) {
@@ -18414,10 +18460,8 @@ function processNoCookieAccess(e, containerEl) {
18414
18460
  const { loginFailedMessage, suppressNoCookieAccessAlert, ignoreNoCookieAccess, suppressErrorAlerts, } = getEmbedConfig();
18415
18461
  if (!ignoreNoCookieAccess) {
18416
18462
  if (!suppressNoCookieAccessAlert && !suppressErrorAlerts) {
18417
- // eslint-disable-next-line no-alert
18418
18463
  alert(ERROR_MESSAGE.THIRD_PARTY_COOKIE_BLOCKED_ALERT);
18419
18464
  }
18420
- // eslint-disable-next-line no-param-reassign
18421
18465
  containerEl.innerHTML = loginFailedMessage;
18422
18466
  }
18423
18467
  notifyAuthFailure(AuthFailureType.NO_COOKIE_ACCESS);
@@ -18435,12 +18479,10 @@ function processAuthFailure(e, containerEl) {
18435
18479
  const isTrustedAuth = authType === AuthType.TrustedAuthToken || authType === AuthType.TrustedAuthTokenCookieless;
18436
18480
  const isEmbeddedSSOInfoFailure = isEmbeddedSSO && ((_a = e === null || e === void 0 ? void 0 : e.data) === null || _a === void 0 ? void 0 : _a.type) === AuthFailureType.UNAUTHENTICATED_FAILURE;
18437
18481
  if (autoLogin && isTrustedAuth) {
18438
- // eslint-disable-next-line no-param-reassign
18439
18482
  containerEl.innerHTML = loginFailedMessage;
18440
18483
  notifyAuthFailure(AuthFailureType.IDLE_SESSION_TIMEOUT);
18441
18484
  }
18442
18485
  else if (authType !== AuthType.None && !disableLoginFailurePage && !isEmbeddedSSOInfoFailure) {
18443
- // eslint-disable-next-line no-param-reassign
18444
18486
  containerEl.innerHTML = loginFailedMessage;
18445
18487
  notifyAuthFailure(AuthFailureType.OTHER);
18446
18488
  }
@@ -18454,7 +18496,6 @@ function processAuthFailure(e, containerEl) {
18454
18496
  */
18455
18497
  function processAuthLogout(e, containerEl) {
18456
18498
  const { loginFailedMessage } = getEmbedConfig();
18457
- // eslint-disable-next-line no-param-reassign
18458
18499
  containerEl.innerHTML = loginFailedMessage;
18459
18500
  resetCachedAuthToken();
18460
18501
  disableAutoLogin();
@@ -18488,7 +18529,7 @@ function processEventData(type, eventData, thoughtSpotHost, containerEl) {
18488
18529
  return eventData;
18489
18530
  }
18490
18531
 
18491
- var name="@thoughtspot/visual-embed-sdk";var version$1="1.46.1";var description="ThoughtSpot Embed SDK";var module="lib/src/index.js";var main="dist/tsembed.js";var types="lib/src/index.d.ts";var files=["dist/**","lib/**","src/**","cjs/**"];var exports={".":{"import":"./lib/src/index.js",require:"./cjs/src/index.js",types:"./lib/src/index.d.ts"},"./react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"},"./lib/src/react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"}};var typesVersions={"*":{react:["./lib/src/react/all-types-export.d.ts"]}};var scripts={lint:"eslint 'src/**'","lint:fix":"eslint 'src/**/*.*' --fix",tsc:"tsc -p tsconfig.build.json --incremental false; tsc -p tsconfig.build.json --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle-generator --config ./dts-config/dts-bundle-file.config.js","bundle-dts":"dts-bundle-generator --config ./dts-config/dts-bundle.config.js","bundle-dts-react":"dts-bundle-generator --config ./dts-config/dts-bundle-react.config.js","bundle-dts-react-full":"dts-bundle-generator --config ./dts-config/dts-bundle-react-full.config.js",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.build.json --theme typedoc-theme --json static/typedoc/typedoc.json --disableOutputCheck","test-sdk":"jest -c jest.config.sdk.js --runInBand",test:"npm run test-sdk",posttest:"cat ./coverage/sdk/lcov.info | npx coveralls-next || echo 'Warning: Coveralls upload failed but not breaking the build.'","is-publish-allowed":"node scripts/is-publish-allowed.js",prepublishOnly:"npm run is-publish-allowed && npm run test && npm run tsc && npm run bundle-dts-file && npm run bundle-dts && npm run bundle-dts-react && npm run bundle-dts-react-full && npm run build","check-size":"npm run build && size-limit","publish-dev":"npm publish --tag dev","publish-prod":"npm publish --tag latest",dev:"vite -c vite.local.config.ts"};var peerDependencies={react:"> 16.8.0","react-dom":"> 16.8.0"};var dependencies={classnames:"^2.3.1",eventemitter3:"^4.0.7",lodash:"^4.17.23","mixpanel-browser":"2.47.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.1",yaml:"^2.5.1"};var devDependencies={"@mdx-js/mdx":"^1.6.22","@mdx-js/react":"^1.6.22","@react-icons/all-files":"^4.1.0","@rollup/plugin-commonjs":"^18.0.0","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^11.2.1","@rollup/plugin-replace":"^5.0.2","@size-limit/preset-big-lib":"^11.2.0","@testing-library/dom":"^7.31.0","@testing-library/jest-dom":"^5.14.1","@testing-library/react":"^11.2.7","@testing-library/user-event":"^13.1.8","@types/jest":"^30.0.0","@types/lodash":"^4.17.0","@types/mixpanel-browser":"^2.35.6","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^8.28.0","@typescript-eslint/parser":"^8.28.0",ajv:"^8.17.1",asciidoctor:"^2.2.1","babel-jest":"^30.2.0","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1","coveralls-next":"^5.0.0",crypto:"^1.0.1","current-git-branch":"^1.1.0","dts-bundle-generator":"^9.5.1",eslint:"^9.23.0","eslint-config-airbnb-base":"^15.0.0","eslint-config-prettier":"^10.1.1","eslint-import-resolver-typescript":"^4.2.5","eslint-plugin-comment-length":"2.2.1","eslint-plugin-import":"^2.31.0","eslint-plugin-jsdoc":"^50.6.9","eslint-plugin-prettier":"^5.2.5","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^5.2.0","fs-extra":"^10.0.0","gh-pages":"6.3.0",globals:"^16.0.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^2.0.0",jest:"^30.2.0","jest-environment-jsdom":"^29.7.0","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0",prettier:"2.1.2",react:"^16.14.0","react-dom":"^16.14.0","react-resizable":"^1.11.0","react-resize-detector":"^6.6.0","react-test-renderer":"^17.0.2","react-use-flexsearch":"^0.1.1",rollup:"4.24.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^29.4.6","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","typescript-eslint":"^8.29.1","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^6.3.5"};var author="ThoughtSpot";var email="support@thoughtspot.com";var license="ThoughtSpot Development Tools End User License Agreement";var directories={lib:"lib"};var repository={type:"git",url:"git+https://github.com/thoughtspot/visual-embed-sdk.git"};var publishConfig={registry:"https://registry.npmjs.org"};var keywords=["thoughtspot","everywhere","embedded","embed","sdk","analytics"];var bugs={url:"https://github.com/thoughtspot/visual-embed-sdk/issues"};var homepage="https://github.com/thoughtspot/visual-embed-sdk#readme";var globals={window:{}};var pkgInfo = {name:name,version:version$1,description:description,module:module,main:main,types:types,files:files,exports:exports,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.es.js",limit:"32 kB"}],scripts:scripts,peerDependencies:peerDependencies,dependencies:dependencies,devDependencies:devDependencies,author:author,email:email,license:license,directories:directories,repository:repository,publishConfig:publishConfig,keywords:keywords,bugs:bugs,homepage:homepage,globals:globals};
18532
+ var name="@thoughtspot/visual-embed-sdk";var version$1="1.46.3";var description="ThoughtSpot Embed SDK";var module="lib/src/index.js";var main="dist/tsembed.js";var types="lib/src/index.d.ts";var files=["dist/**","lib/**","src/**","cjs/**"];var exports={".":{"import":"./lib/src/index.js",require:"./cjs/src/index.js",types:"./lib/src/index.d.ts"},"./react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"},"./lib/src/react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"}};var typesVersions={"*":{react:["./lib/src/react/all-types-export.d.ts"]}};var scripts={lint:"eslint 'src/**'","lint:fix":"eslint 'src/**/*.*' --fix",tsc:"tsc -p tsconfig.build.json --incremental false; tsc -p tsconfig.build.json --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle-generator --config ./dts-config/dts-bundle-file.config.js","bundle-dts":"dts-bundle-generator --config ./dts-config/dts-bundle.config.js","bundle-dts-react":"dts-bundle-generator --config ./dts-config/dts-bundle-react.config.js","bundle-dts-react-full":"dts-bundle-generator --config ./dts-config/dts-bundle-react-full.config.js",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.build.json --theme typedoc-theme --json static/typedoc/typedoc.json --disableOutputCheck","test-sdk":"jest -c jest.config.sdk.js --runInBand",test:"npm run test-sdk",posttest:"cat ./coverage/sdk/lcov.info | npx coveralls-next || echo 'Warning: Coveralls upload failed but not breaking the build.'","is-publish-allowed":"node scripts/is-publish-allowed.js",prepublishOnly:"npm run is-publish-allowed && npm run test && npm run tsc && npm run bundle-dts-file && npm run bundle-dts && npm run bundle-dts-react && npm run bundle-dts-react-full && npm run build","check-size":"npm run build && size-limit","publish-dev":"npm publish --tag dev","publish-prod":"npm publish --tag latest",dev:"vite -c vite.local.config.ts"};var peerDependencies={react:"> 16.8.0","react-dom":"> 16.8.0"};var dependencies={classnames:"^2.3.1",eventemitter3:"^4.0.7",lodash:"^4.17.23","mixpanel-browser":"2.47.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.1",yaml:"^2.5.1"};var devDependencies={"@mdx-js/mdx":"^1.6.22","@mdx-js/react":"^1.6.22","@react-icons/all-files":"^4.1.0","@rollup/plugin-commonjs":"^18.0.0","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^11.2.1","@rollup/plugin-replace":"^5.0.2","@size-limit/preset-big-lib":"^11.2.0","@testing-library/dom":"^7.31.0","@testing-library/jest-dom":"^5.14.1","@testing-library/react":"^11.2.7","@testing-library/user-event":"^13.1.8","@types/jest":"^30.0.0","@types/lodash":"^4.17.0","@types/mixpanel-browser":"^2.35.6","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^8.28.0","@typescript-eslint/parser":"^8.28.0",ajv:"^8.17.1",asciidoctor:"^2.2.1","babel-jest":"^30.2.0","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1","coveralls-next":"^5.0.0",crypto:"^1.0.1","current-git-branch":"^1.1.0","dts-bundle-generator":"^9.5.1",eslint:"^9.23.0","eslint-config-airbnb-base":"^15.0.0","eslint-config-prettier":"^10.1.1","eslint-import-resolver-typescript":"^4.2.5","eslint-plugin-comment-length":"2.2.1","eslint-plugin-import":"^2.31.0","eslint-plugin-jsdoc":"^50.6.9","eslint-plugin-prettier":"^5.2.5","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^5.2.0","fs-extra":"^10.0.0","gh-pages":"6.3.0",globals:"^16.0.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^2.0.0",jest:"^30.2.0","jest-environment-jsdom":"^29.7.0","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0",prettier:"2.1.2",react:"^16.14.0","react-dom":"^16.14.0","react-resizable":"^1.11.0","react-resize-detector":"^6.6.0","react-test-renderer":"^17.0.2","react-use-flexsearch":"^0.1.1",rollup:"4.24.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^29.4.6","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","typescript-eslint":"^8.29.1","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^6.3.5"};var author="ThoughtSpot";var email="support@thoughtspot.com";var license="ThoughtSpot Development Tools End User License Agreement";var directories={lib:"lib"};var repository={type:"git",url:"git+https://github.com/thoughtspot/visual-embed-sdk.git"};var publishConfig={registry:"https://registry.npmjs.org"};var keywords=["thoughtspot","everywhere","embedded","embed","sdk","analytics"];var bugs={url:"https://github.com/thoughtspot/visual-embed-sdk/issues"};var homepage="https://github.com/thoughtspot/visual-embed-sdk#readme";var globals={window:{}};var pkgInfo = {name:name,version:version$1,description:description,module:module,main:main,types:types,files:files,exports:exports,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.es.js",limit:"32 kB"}],scripts:scripts,peerDependencies:peerDependencies,dependencies:dependencies,devDependencies:devDependencies,author:author,email:email,license:license,directories:directories,repository:repository,publishConfig:publishConfig,keywords:keywords,bugs:bugs,homepage:homepage,globals:globals};
18492
18533
 
18493
18534
  class HostEventClient {
18494
18535
  constructor(iFrame) {
@@ -18512,14 +18553,12 @@ class HostEventClient {
18512
18553
  const response = (_b = (_a = (await this.triggerUIPassthroughApi(apiName, parameters, context))) === null || _a === void 0 ? void 0 : _a.filter) === null || _b === void 0 ? void 0 : _b.call(_a, (r) => r.error || r.value)[0];
18513
18554
  if (!response) {
18514
18555
  const error = `No answer found${parameters.vizId ? ` for vizId: ${parameters.vizId}` : ''}.`;
18515
- // eslint-disable-next-line no-throw-literal
18516
18556
  throw { error };
18517
18557
  }
18518
18558
  const errors = response.error
18519
18559
  || ((_c = response.value) === null || _c === void 0 ? void 0 : _c.errors)
18520
18560
  || ((_d = response.value) === null || _d === void 0 ? void 0 : _d.error);
18521
18561
  if (errors) {
18522
- // eslint-disable-next-line no-throw-literal
18523
18562
  throw { error: response.error };
18524
18563
  }
18525
18564
  return { ...response.value };
@@ -18794,9 +18833,9 @@ class TsEmbed {
18794
18833
  this.embedNodeKey = '__tsEmbed';
18795
18834
  this.isAppInitialized = false;
18796
18835
  /**
18797
- * Should we encode URL Query Params using base64 encoding which thoughtspot
18836
+ * Should we encode URL Query Params using base64 encoding which ThoughtSpot
18798
18837
  * will generate for embedding. This provides additional security to
18799
- * thoughtspot clusters against Cross site scripting attacks.
18838
+ * ThoughtSpot clusters against Cross site scripting attacks.
18800
18839
  * @default false
18801
18840
  */
18802
18841
  this.shouldEncodeUrlQueryParams = false;
@@ -18861,7 +18900,8 @@ class TsEmbed {
18861
18900
  */
18862
18901
  this.updateAuthToken = async (_, responder) => {
18863
18902
  const { authType, autoLogin: autoLoginConfig } = this.embedConfig;
18864
- // Default autoLogin: true for cookieless if undefined/null, otherwise false
18903
+ // Default autoLogin: true for cookieless if undefined/null, otherwise
18904
+ // false
18865
18905
  const autoLogin = autoLoginConfig !== null && autoLoginConfig !== void 0 ? autoLoginConfig : (authType === AuthType.TrustedAuthTokenCookieless);
18866
18906
  try {
18867
18907
  await this.refreshAuthTokenForCookieless(responder, EmbedEvent.AuthExpire, false);
@@ -18972,7 +19012,7 @@ class TsEmbed {
18972
19012
  if (viewConfig.preRenderId) {
18973
19013
  const allOtherKeys = Object.keys(viewConfig).filter((key) => !preRenderAllowedKeys.includes(key) && !key.startsWith('on'));
18974
19014
  allOtherKeys.forEach((key) => {
18975
- if (!isUndefined$1(viewConfig[key])
19015
+ if (!isUndefined(viewConfig[key])
18976
19016
  && !isEqual_1(viewConfig[key], preRenderedObject.viewConfig[key])) {
18977
19017
  logger$3.warn(`${viewConfig.embedComponentType || 'Component'} was pre-rendered with `
18978
19018
  + `"${key}" as "${JSON.stringify(preRenderedObject.viewConfig[key])}" `
@@ -19308,7 +19348,7 @@ class TsEmbed {
19308
19348
  if (this.embedConfig.currencyFormat) {
19309
19349
  queryParams[Param.CurrencyFormat] = this.embedConfig.currencyFormat;
19310
19350
  }
19311
- const { disabledActions, disabledActionReason, hiddenActions, visibleActions, hiddenTabs, visibleTabs, showAlerts, additionalFlags: additionalFlagsFromView, locale, customizations, contextMenuTrigger, linkOverride, insertInToSlide, disableRedirectionLinksInNewTab, overrideOrgId, exposeTranslationIDs, primaryAction, } = this.viewConfig;
19351
+ const { disabledActions, disabledActionReason, hiddenActions, visibleActions, hiddenTabs, visibleTabs, showAlerts, additionalFlags: additionalFlagsFromView, locale, customizations, contextMenuTrigger, linkOverride, enableLinkOverridesV2, insertInToSlide, disableRedirectionLinksInNewTab, overrideOrgId, exposeTranslationIDs, primaryAction, } = this.viewConfig;
19312
19352
  const { additionalFlags: additionalFlagsFromInit } = this.embedConfig;
19313
19353
  const additionalFlags = {
19314
19354
  ...additionalFlagsFromInit,
@@ -19384,7 +19424,13 @@ class TsEmbed {
19384
19424
  if (locale !== undefined) {
19385
19425
  queryParams[Param.Locale] = locale;
19386
19426
  }
19387
- if (linkOverride) {
19427
+ // TODO: Once V2 is stable, send both flags when
19428
+ // linkOverride is true (remove the else-if).
19429
+ if (enableLinkOverridesV2) {
19430
+ queryParams[Param.EnableLinkOverridesV2] = true;
19431
+ queryParams[Param.LinkOverride] = true;
19432
+ }
19433
+ else if (linkOverride) {
19388
19434
  queryParams[Param.LinkOverride] = linkOverride;
19389
19435
  }
19390
19436
  if (insertInToSlide) {
@@ -19452,7 +19498,7 @@ class TsEmbed {
19452
19498
  iFrame.mozallowfullscreen = true;
19453
19499
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
19454
19500
  // @ts-ignore
19455
- iFrame.allow = 'clipboard-read; clipboard-write; fullscreen;';
19501
+ iFrame.allow = 'clipboard-read; clipboard-write; fullscreen; local-network-access;';
19456
19502
  const frameParams = this.viewConfig.frameParams;
19457
19503
  const { height: frameHeight, width: frameWidth, ...restParams } = frameParams || {};
19458
19504
  const width = getCssDimension(frameWidth || DEFAULT_EMBED_WIDTH);
@@ -20154,7 +20200,7 @@ class TsEmbed {
20154
20200
  * Returns the answerService which can be used to make arbitrary graphql calls on top
20155
20201
  * session.
20156
20202
  * @param vizId [Optional] to get for a specific viz in case of a Liveboard.
20157
- * @version SDK: 1.25.0 / ThoughtSpot 9.10.0
20203
+ * @version SDK: 1.25.0 | ThoughtSpot: 9.10.0
20158
20204
  */
20159
20205
  async getAnswerService(vizId) {
20160
20206
  const { session } = await this.trigger(HostEvent.GetAnswerSession, vizId ? { vizId } : {});
@@ -20454,7 +20500,7 @@ class AppEmbed extends V1Embed {
20454
20500
  * embedded Liveboard or visualization.
20455
20501
  */
20456
20502
  getEmbedParams() {
20457
- const { tag, hideTagFilterChips, hideObjects, liveboardV2, showPrimaryNavbar, disableProfileAndHelp, hideHamburger, hideObjectSearch, hideNotification, hideApplicationSwitcher, hideOrgSwitcher, enableSearchAssist, fullHeight, dataPanelV2 = true, hideLiveboardHeader = false, showLiveboardTitle = true, showLiveboardDescription = true, showMaskedFilterChip = false, isLiveboardMasterpiecesEnabled = false, hideHomepageLeftNav = false, modularHomeExperience = false, isLiveboardHeaderSticky = true, enableAskSage, collapseSearchBarInitially = false, enable2ColumnLayout, enableCustomColumnGroups = false, dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState$1.EXPAND_ALL, collapseSearchBar = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs = false, isEnhancedFilterInteractivityEnabled = false, homePageSearchBarMode, isUnifiedSearchExperienceEnabled = true, enablePendoHelp = true, discoveryExperience, coverAndFilterOptionInPDF = false, isLiveboardStylingAndGroupingEnabled, isPNGInScheduledEmailsEnabled = false, isLiveboardXLSXCSVDownloadEnabled = false, isGranularXLSXCSVSchedulesEnabled = false, isCentralizedLiveboardFilterUXEnabled = false, isLinkParametersEnabled, updatedSpotterChatPrompt, spotterSidebarConfig, spotterChatConfig, minimumHeight, isThisPeriodInDateFiltersEnabled, } = this.viewConfig;
20503
+ const { tag, hideTagFilterChips, hideObjects, liveboardV2, showPrimaryNavbar, disableProfileAndHelp, hideHamburger, hideObjectSearch, hideNotification, hideApplicationSwitcher, hideOrgSwitcher, enableSearchAssist, fullHeight, dataPanelV2 = true, hideLiveboardHeader = false, showLiveboardTitle = true, showLiveboardDescription = true, showMaskedFilterChip = false, isLiveboardMasterpiecesEnabled = false, hideHomepageLeftNav = false, modularHomeExperience = false, isLiveboardHeaderSticky = true, enableAskSage, collapseSearchBarInitially = false, enable2ColumnLayout, enableCustomColumnGroups = false, dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState$1.EXPAND_ALL, collapseSearchBar = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs = false, isEnhancedFilterInteractivityEnabled = false, homePageSearchBarMode, isUnifiedSearchExperienceEnabled = true, enablePendoHelp = true, discoveryExperience, coverAndFilterOptionInPDF = false, isLiveboardStylingAndGroupingEnabled, isPNGInScheduledEmailsEnabled = false, isLiveboardXLSXCSVDownloadEnabled = false, isGranularXLSXCSVSchedulesEnabled = false, isCentralizedLiveboardFilterUXEnabled = false, isLinkParametersEnabled, updatedSpotterChatPrompt, spotterSidebarConfig, spotterChatConfig, minimumHeight, isThisPeriodInDateFiltersEnabled, enableHomepageAnnouncement, } = this.viewConfig;
20458
20504
  let params = {};
20459
20505
  params[Param.PrimaryNavHidden] = !showPrimaryNavbar;
20460
20506
  params[Param.HideProfleAndHelp] = !!disableProfileAndHelp;
@@ -20475,13 +20521,17 @@ class AppEmbed extends V1Embed {
20475
20521
  params[Param.IsUnifiedSearchExperienceEnabled] = isUnifiedSearchExperienceEnabled;
20476
20522
  params[Param.CoverAndFilterOptionInPDF] = !!coverAndFilterOptionInPDF;
20477
20523
  params = this.getBaseQueryParams(params);
20478
- if (!isUndefined$1(updatedSpotterChatPrompt)) {
20524
+ if (!isUndefined(updatedSpotterChatPrompt)) {
20479
20525
  params[Param.UpdatedSpotterChatPrompt] = !!updatedSpotterChatPrompt;
20480
20526
  }
20527
+ const resolvedEnablePastConversationsSidebar = resolveEnablePastConversationsSidebar({
20528
+ spotterSidebarConfigValue: spotterSidebarConfig === null || spotterSidebarConfig === void 0 ? void 0 : spotterSidebarConfig.enablePastConversationsSidebar,
20529
+ standaloneValue: this.viewConfig.enablePastConversationsSidebar,
20530
+ });
20531
+ setParamIfDefined(params, Param.EnablePastConversationsSidebar, resolvedEnablePastConversationsSidebar, true);
20481
20532
  // Handle spotterSidebarConfig params
20482
20533
  if (spotterSidebarConfig) {
20483
- const { enablePastConversationsSidebar, spotterSidebarTitle, spotterSidebarDefaultExpanded, spotterChatRenameLabel, spotterChatDeleteLabel, spotterDeleteConversationModalTitle, spotterPastConversationAlertMessage, spotterDocumentationUrl, spotterBestPracticesLabel, spotterConversationsBatchSize, spotterNewChatButtonTitle, } = spotterSidebarConfig;
20484
- setParamIfDefined(params, Param.EnablePastConversationsSidebar, enablePastConversationsSidebar, true);
20534
+ const { spotterSidebarTitle, spotterSidebarDefaultExpanded, spotterChatRenameLabel, spotterChatDeleteLabel, spotterDeleteConversationModalTitle, spotterPastConversationAlertMessage, spotterDocumentationUrl, spotterBestPracticesLabel, spotterConversationsBatchSize, spotterNewChatButtonTitle, } = spotterSidebarConfig;
20485
20535
  setParamIfDefined(params, Param.SpotterSidebarDefaultExpanded, spotterSidebarDefaultExpanded, true);
20486
20536
  setParamIfDefined(params, Param.SpotterSidebarTitle, spotterSidebarTitle);
20487
20537
  setParamIfDefined(params, Param.SpotterChatRenameLabel, spotterChatRenameLabel);
@@ -20579,6 +20629,9 @@ class AppEmbed extends V1Embed {
20579
20629
  if (isThisPeriodInDateFiltersEnabled !== undefined) {
20580
20630
  params[Param.IsThisPeriodInDateFiltersEnabled] = isThisPeriodInDateFiltersEnabled;
20581
20631
  }
20632
+ if (enableHomepageAnnouncement !== undefined) {
20633
+ params[Param.EnableHomepageAnnouncement] = enableHomepageAnnouncement;
20634
+ }
20582
20635
  this.defaultHeight = minimumHeight || this.defaultHeight;
20583
20636
  params[Param.DataPanelV2Enabled] = dataPanelV2;
20584
20637
  params[Param.HideHomepageLeftNav] = hideHomepageLeftNav;
@@ -20753,7 +20806,6 @@ class AppEmbed extends V1Embed {
20753
20806
  }
20754
20807
  }
20755
20808
 
20756
- /* eslint-disable quotes */
20757
20809
  const getPreviewQuery = `
20758
20810
  query GetEurekaVizSnapshots(
20759
20811
  $vizId: String!, $liveboardId: String!) {
@@ -20837,6 +20889,7 @@ const addPreviewStylesIfNotPresent = () => {
20837
20889
  * Embed a ThoughtSpot Liveboard or visualization. When rendered it already
20838
20890
  * waits for the authentication to complete, so you need not wait for
20839
20891
  * `AuthStatus.SUCCESS`.
20892
+ * @group Embed components
20840
20893
  * @example
20841
20894
  * ```js
20842
20895
  * import { .. } from '@thoughtspot/visual-embed-sdk';
@@ -20846,7 +20899,6 @@ const addPreviewStylesIfNotPresent = () => {
20846
20899
  * // .. other params here.
20847
20900
  * })
20848
20901
  * ```
20849
- * @group Embed components
20850
20902
  */
20851
20903
  class LiveboardEmbed extends V1Embed {
20852
20904
  constructor(domSelector, viewConfig) {
@@ -20954,7 +21006,7 @@ class LiveboardEmbed extends V1Embed {
20954
21006
  if (preventLiveboardFilterRemoval) {
20955
21007
  params[Param.preventLiveboardFilterRemoval] = true;
20956
21008
  }
20957
- if (!isUndefined$1(updatedSpotterChatPrompt)) {
21009
+ if (!isUndefined(updatedSpotterChatPrompt)) {
20958
21010
  params[Param.UpdatedSpotterChatPrompt] = !!updatedSpotterChatPrompt;
20959
21011
  }
20960
21012
  if (visibleVizs) {
@@ -21039,8 +21091,9 @@ class LiveboardEmbed extends V1Embed {
21039
21091
  return params;
21040
21092
  }
21041
21093
  getIframeSuffixSrc(liveboardId, vizId, activeTabId, personalizedViewId) {
21042
- // Extract view from liveboardId if passed along with it (legacy approach)
21043
- // View must be appended as query param at the end, not embedded in path
21094
+ // Extract view from liveboardId if passed along with it (legacy
21095
+ // approach) View must be appended as query param at the end, not
21096
+ // embedded in path
21044
21097
  let liveboardGuid = liveboardId;
21045
21098
  let legacyViewId;
21046
21099
  if (liveboardId === null || liveboardId === void 0 ? void 0 : liveboardId.includes('?')) {
@@ -21049,7 +21102,8 @@ class LiveboardEmbed extends V1Embed {
21049
21102
  const params = new URLSearchParams(query);
21050
21103
  legacyViewId = params.get('view') || undefined;
21051
21104
  }
21052
- // personalizedViewId takes precedence over legacyViewId (when passed as part of liveboardId)
21105
+ // personalizedViewId takes precedence over legacyViewId (when passed
21106
+ // as part of liveboardId)
21053
21107
  const effectiveViewId = personalizedViewId || legacyViewId;
21054
21108
  let suffix = `/embed/viz/${liveboardGuid}`;
21055
21109
  if (activeTabId) {
@@ -21133,7 +21187,7 @@ class LiveboardEmbed extends V1Embed {
21133
21187
  });
21134
21188
  }
21135
21189
  async handleRenderForPrerender() {
21136
- if (isUndefined$1(this.viewConfig.liveboardId)) {
21190
+ if (isUndefined(this.viewConfig.liveboardId)) {
21137
21191
  return this.prerenderGeneric();
21138
21192
  }
21139
21193
  return super.handleRenderForPrerender();
@@ -21419,7 +21473,7 @@ class SearchEmbed extends TsEmbed {
21419
21473
 
21420
21474
  /**
21421
21475
  * Embed ThoughtSpot search bar
21422
- * @version: SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1-sw
21476
+ * @version SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1-sw
21423
21477
  * @group Embed components
21424
21478
  */
21425
21479
  class SearchBarEmbed extends TsEmbed {
@@ -21920,6 +21974,8 @@ class ConversationMessage extends TsEmbed {
21920
21974
  /**
21921
21975
  * Create a conversation embed, which can be integrated inside
21922
21976
  * chatbots or other conversational interfaces.
21977
+ * @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
21978
+ * @group Embed components
21923
21979
  * @example
21924
21980
  * ```js
21925
21981
  * import { SpotterAgentEmbed } from '@thoughtspot/visual-embed-sdk';
@@ -21933,8 +21989,6 @@ class ConversationMessage extends TsEmbed {
21933
21989
  * // append the container to the DOM
21934
21990
  * document.body.appendChild(container); // or to any other element
21935
21991
  * ```
21936
- * @group Embed components
21937
- * @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
21938
21992
  */
21939
21993
  class SpotterAgentEmbed {
21940
21994
  constructor(viewConfig) {
@@ -21988,8 +22042,9 @@ class SpotterAgentEmbed {
21988
22042
  /**
21989
22043
  * Create a conversation embed, which can be integrated inside
21990
22044
  * chatbots or other conversational interfaces.
21991
- * @deprecated from SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
21992
22045
  * Use {@link SpotterAgentEmbed} instead
22046
+ * @deprecated from SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
22047
+ * @group Embed components
21993
22048
  * @example
21994
22049
  * ```js
21995
22050
  * import { SpotterAgentEmbed } from '@thoughtspot/visual-embed-sdk';
@@ -22003,7 +22058,6 @@ class SpotterAgentEmbed {
22003
22058
  * // append the container to the DOM
22004
22059
  * document.body.appendChild(container); // or to any other element
22005
22060
  * ```
22006
- * @group Embed components
22007
22061
  */
22008
22062
  class BodylessConversation extends SpotterAgentEmbed {
22009
22063
  constructor(viewConfig) {
@@ -22011,31 +22065,9 @@ class BodylessConversation extends SpotterAgentEmbed {
22011
22065
  }
22012
22066
  }
22013
22067
 
22014
- /**
22015
- * Checks if `value` is `undefined`.
22016
- *
22017
- * @static
22018
- * @since 0.1.0
22019
- * @memberOf _
22020
- * @category Lang
22021
- * @param {*} value The value to check.
22022
- * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.
22023
- * @example
22024
- *
22025
- * _.isUndefined(void 0);
22026
- * // => true
22027
- *
22028
- * _.isUndefined(null);
22029
- * // => false
22030
- */
22031
- function isUndefined(value) {
22032
- return value === undefined;
22033
- }
22034
-
22035
- var isUndefined_1 = isUndefined;
22036
-
22037
22068
  /**
22038
22069
  * Embed ThoughtSpot AI Conversation.
22070
+ * @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
22039
22071
  * @group Embed components
22040
22072
  * @example
22041
22073
  * ```js
@@ -22047,7 +22079,6 @@ var isUndefined_1 = isUndefined;
22047
22079
  * });
22048
22080
  * conversation.render();
22049
22081
  * ```
22050
- * @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
22051
22082
  */
22052
22083
  class SpotterEmbed extends TsEmbed {
22053
22084
  constructor(container, viewConfig) {
@@ -22063,7 +22094,11 @@ class SpotterEmbed extends TsEmbed {
22063
22094
  getEmbedParamsObject() {
22064
22095
  const { worksheetId, searchOptions, disableSourceSelection, hideSourceSelection, dataPanelV2, showSpotterLimitations, hideSampleQuestions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, updatedSpotterChatPrompt, spotterSidebarConfig, spotterChatConfig, } = this.viewConfig;
22065
22096
  // Extract sidebar config properties
22066
- const { enablePastConversationsSidebar, spotterSidebarTitle, spotterSidebarDefaultExpanded, spotterChatRenameLabel, spotterChatDeleteLabel, spotterDeleteConversationModalTitle, spotterPastConversationAlertMessage, spotterDocumentationUrl, spotterBestPracticesLabel, spotterConversationsBatchSize, spotterNewChatButtonTitle, } = spotterSidebarConfig || {};
22097
+ const { enablePastConversationsSidebar: sidebarEnablePastConversationsSidebar, spotterSidebarTitle, spotterSidebarDefaultExpanded, spotterChatRenameLabel, spotterChatDeleteLabel, spotterDeleteConversationModalTitle, spotterPastConversationAlertMessage, spotterDocumentationUrl, spotterBestPracticesLabel, spotterConversationsBatchSize, spotterNewChatButtonTitle, } = spotterSidebarConfig || {};
22098
+ const resolvedEnablePastConversationsSidebar = resolveEnablePastConversationsSidebar({
22099
+ spotterSidebarConfigValue: sidebarEnablePastConversationsSidebar,
22100
+ standaloneValue: this.viewConfig.enablePastConversationsSidebar,
22101
+ });
22067
22102
  if (!worksheetId) {
22068
22103
  this.handleError({
22069
22104
  errorType: ErrorDetailsTypes.VALIDATION_ERROR,
@@ -22081,6 +22116,7 @@ class SpotterEmbed extends TsEmbed {
22081
22116
  setParamIfDefined(queryParams, Param.ShowSpotterLimitations, showSpotterLimitations, true);
22082
22117
  setParamIfDefined(queryParams, Param.HideSampleQuestions, hideSampleQuestions, true);
22083
22118
  setParamIfDefined(queryParams, Param.UpdatedSpotterChatPrompt, updatedSpotterChatPrompt, true);
22119
+ setParamIfDefined(queryParams, Param.EnablePastConversationsSidebar, resolvedEnablePastConversationsSidebar, true);
22084
22120
  setParamIfDefined(queryParams, Param.SpotterSidebarDefaultExpanded, spotterSidebarDefaultExpanded, true);
22085
22121
  // String params
22086
22122
  setParamIfDefined(queryParams, Param.SpotterSidebarTitle, spotterSidebarTitle);
@@ -22115,13 +22151,9 @@ class SpotterEmbed extends TsEmbed {
22115
22151
  return queryParams;
22116
22152
  }
22117
22153
  getIframeSrc() {
22118
- const { worksheetId, searchOptions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, spotterSidebarConfig, } = this.viewConfig;
22154
+ const { worksheetId, searchOptions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, } = this.viewConfig;
22119
22155
  const path = 'insights/conv-assist';
22120
22156
  const queryParams = this.getEmbedParamsObject();
22121
- const enablePastConversationsSidebar = spotterSidebarConfig === null || spotterSidebarConfig === void 0 ? void 0 : spotterSidebarConfig.enablePastConversationsSidebar;
22122
- if (!isUndefined_1(enablePastConversationsSidebar)) {
22123
- queryParams[Param.EnablePastConversationsSidebar] = !!enablePastConversationsSidebar;
22124
- }
22125
22157
  let query = '';
22126
22158
  const queryParamsString = getQueryParamString(queryParams, true);
22127
22159
  if (queryParamsString) {
@@ -22150,8 +22182,9 @@ class SpotterEmbed extends TsEmbed {
22150
22182
  }
22151
22183
  /**
22152
22184
  * Embed ThoughtSpot AI Conversation.
22153
- * @deprecated from SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
22154
22185
  * Use {@link SpotterEmbed} instead
22186
+ * @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
22187
+ * @deprecated from SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
22155
22188
  * @group Embed components
22156
22189
  * @example
22157
22190
  * ```js
@@ -22163,7 +22196,6 @@ class SpotterEmbed extends TsEmbed {
22163
22196
  * });
22164
22197
  * conversation.render();
22165
22198
  * ```
22166
- * @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
22167
22199
  */
22168
22200
  class ConversationEmbed extends SpotterEmbed {
22169
22201
  constructor(container, viewConfig) {
@@ -22187,13 +22219,12 @@ class ConversationEmbed extends SpotterEmbed {
22187
22219
  */
22188
22220
  /**
22189
22221
  * Embed ThoughtSpot LLM and GPT-based Natural Language Search component.
22190
- * @version: SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl, 9.5.1-sw
22222
+ * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl, 9.5.1-sw
22191
22223
  *
22192
22224
  * Note: This embed will be deprecated from SDK: 1.40.0 | ThoughtSpot: 10.13.0.cl
22193
22225
  * @group Embed components
22194
22226
  */
22195
22227
  class SageEmbed extends V1Embed {
22196
- // eslint-disable-next-line no-useless-constructor
22197
22228
  constructor(domSelector, viewConfig) {
22198
22229
  viewConfig.embedComponentType = 'SageEmbed';
22199
22230
  super(domSelector, viewConfig);
@@ -22782,4 +22813,142 @@ const createLiveboardWithAnswers = async (answers, name) => {
22782
22813
  return result;
22783
22814
  };
22784
22815
 
22785
- export { Action, AnswerService, AppEmbed, AuthEvent, AuthFailureType, AuthStatus, AuthType, BodylessConversation, ContextMenuTriggerOptions, ContextType, ConversationEmbed, CustomActionTarget, CustomActionsPosition, DataPanelCustomColumnGroupsAccordionState$1 as DataPanelCustomColumnGroupsAccordionState, DataSourceVisualMode, EmbedErrorCodes, EmbedEvent, ErrorDetailsTypes, HomeLeftNavItem, HomePage, HomePageSearchBarMode, HomepageModule, HostEvent, InterceptedApiType, ListPage, ListPageColumns, LiveboardEmbed, LogLevel, MIXPANEL_EVENT, Page, PinboardEmbed, PrefetchFeatures, PrimaryNavbarVersion, RuntimeFilterOp, SageEmbed, SearchBarEmbed, SearchEmbed, SpotterAgentEmbed, SpotterEmbed, UIPassthroughEvent, createLiveboardWithAnswers, executeTML, exportTML, getAnswerFromQuery, getEmbedConfig as getInitConfig, getSessionInfo, init, logout, prefetch, reloadIframe, resetCachedAuthToken, tokenizedFetch, uploadMixpanelEvent };
22816
+ /**
22817
+ * Starts an automatic renderer that watches the DOM for iframes containing
22818
+ * the `tsmcp=true` query parameter and replaces them with fully configured
22819
+ * ThoughtSpot embed iframes. The query parameter is automatically added by
22820
+ * the ThoughtSpot MCP server.
22821
+ *
22822
+ * A {@link MutationObserver} is set up on `document.body` to detect both
22823
+ * directly added iframes and iframes nested within added container elements.
22824
+ * Each matching iframe is replaced in-place with a new ThoughtSpot embed
22825
+ * iframe that merges the original iframe's query parameters with the SDK
22826
+ * embed parameters.
22827
+ *
22828
+ * Call {@link MutationObserver.disconnect | observer.disconnect()} on the
22829
+ * returned observer to stop monitoring the DOM.
22830
+ *
22831
+ * @param viewConfig - Optional configuration for the auto-rendered embeds.
22832
+ * Accepts all properties from {@link AutoMCPFrameRendererViewConfig}.
22833
+ * Defaults to an empty config.
22834
+ * @returns A {@link MutationObserver} instance that is actively observing
22835
+ * `document.body`. Disconnect it when monitoring is no longer needed.
22836
+ *
22837
+ * @example
22838
+ * ```js
22839
+ * import { startAutoMCPFrameRenderer } from '@thoughtspot/visual-embed-sdk';
22840
+ *
22841
+ * // Start watching the DOM for tsmcp iframes
22842
+ * const observer = startAutoMCPFrameRenderer({
22843
+ * // optional view config overrides
22844
+ * });
22845
+ *
22846
+ * // Later, stop watching
22847
+ * observer.disconnect();
22848
+ * ```
22849
+ *
22850
+ * @example
22851
+ * Detailed example of how to use the auto-frame renderer:
22852
+ * [Python React Agent Simple UI](https://github.com/thoughtspot/developer-examples/tree/main/mcp/python-react-agent-simple-ui)
22853
+ */
22854
+ function startAutoMCPFrameRenderer(viewConfig = {}) {
22855
+ const replaceWithMCPIframe = (iframe) => {
22856
+ const autoMCPFrameRenderer = new AutoFrameRenderer(viewConfig);
22857
+ autoMCPFrameRenderer.replaceIframe(iframe);
22858
+ };
22859
+ const observer = new MutationObserver((mutations) => {
22860
+ for (const mutation of mutations) {
22861
+ for (const node of Array.from(mutation.addedNodes)) {
22862
+ if (node instanceof HTMLIFrameElement && isTSMCPIframe(node)) {
22863
+ replaceWithMCPIframe(node);
22864
+ }
22865
+ if (node instanceof HTMLElement) {
22866
+ node.querySelectorAll('iframe').forEach((iframe) => {
22867
+ if (isTSMCPIframe(iframe)) {
22868
+ replaceWithMCPIframe(iframe);
22869
+ }
22870
+ });
22871
+ }
22872
+ }
22873
+ }
22874
+ });
22875
+ observer.observe(document.body, { childList: true, subtree: true });
22876
+ return observer;
22877
+ }
22878
+ function isTSMCPIframe(iframe) {
22879
+ try {
22880
+ const url = new URL(iframe.src);
22881
+ return url.searchParams.get(Param.Tsmcp) === 'true';
22882
+ }
22883
+ catch (e) {
22884
+ // The iframe src might not be a valid URL (e.g., 'about:blank').
22885
+ return false;
22886
+ }
22887
+ }
22888
+ /**
22889
+ * Embed component that automatically replaces a plain iframe with a
22890
+ * ThoughtSpot embed iframe. It merges the SDK's embed parameters with
22891
+ * the original iframe's query parameters (stripping the `tsmcp` marker)
22892
+ * and swaps the original iframe element in the DOM.
22893
+ *
22894
+ * This class is used internally by {@link startAutoMCPFrameRenderer} and
22895
+ * is not intended to be instantiated directly.
22896
+ */
22897
+ class AutoFrameRenderer extends TsEmbed {
22898
+ constructor(viewConfig) {
22899
+ viewConfig.embedComponentType = 'auto-frame-renderer';
22900
+ const container = document.createElement('div');
22901
+ super(container, viewConfig);
22902
+ this.viewConfig = viewConfig;
22903
+ }
22904
+ /**
22905
+ * Builds the final iframe `src` by merging the SDK embed parameters
22906
+ * with the query parameters already present on the source iframe URL.
22907
+ * The `tsmcp` marker param is removed so it does not propagate to the
22908
+ * ThoughtSpot application.
22909
+ *
22910
+ * @param sourceSrc - The original iframe's `src` URL string.
22911
+ * @returns The constructed URL to use for the ThoughtSpot embed iframe.
22912
+ */
22913
+ getMCPIframeSrc(sourceSrc) {
22914
+ const queryParams = this.getEmbedParamsObject();
22915
+ const sourceURL = new URL(sourceSrc);
22916
+ const existingQueryParams = sourceURL.searchParams;
22917
+ const existingQueryParamsObject = Object.fromEntries(existingQueryParams);
22918
+ delete existingQueryParamsObject[Param.Tsmcp];
22919
+ const mergedQueryParams = { ...queryParams, ...existingQueryParamsObject };
22920
+ const mergedQueryParamsString = getQueryParamString(mergedQueryParams);
22921
+ const frameSrc = `${this.getEmbedBasePath(mergedQueryParamsString)}${sourceURL.hash.replace('#', '')}`;
22922
+ return frameSrc;
22923
+ }
22924
+ /**
22925
+ * Overrides the base insertion behavior so the new embed iframe
22926
+ * replaces the original iframe in-place rather than being appended
22927
+ * to a container element. Falls back to the default behavior when
22928
+ * no iframe has been set for replacement.
22929
+ */
22930
+ handleInsertionIntoDOM(child) {
22931
+ if (this.frameToReplace) {
22932
+ this.frameToReplace.replaceWith(child);
22933
+ }
22934
+ else {
22935
+ super.handleInsertionIntoDOM(child);
22936
+ }
22937
+ }
22938
+ /**
22939
+ * Replaces the given iframe with a new ThoughtSpot embed iframe.
22940
+ *
22941
+ * The original iframe's `src` is used to derive the embed URL, and
22942
+ * once the new iframe is rendered it takes the original's place in
22943
+ * the DOM tree.
22944
+ *
22945
+ * @param iframe - The existing `<iframe>` element to replace.
22946
+ */
22947
+ async replaceIframe(iframe) {
22948
+ this.frameToReplace = iframe;
22949
+ const src = this.getMCPIframeSrc(iframe.src);
22950
+ await this.renderIFrame(src);
22951
+ }
22952
+ }
22953
+
22954
+ export { Action, AnswerService, AppEmbed, AuthEvent, AuthFailureType, AuthStatus, AuthType, BodylessConversation, ContextMenuTriggerOptions, ContextType, ConversationEmbed, CustomActionTarget, CustomActionsPosition, DataPanelCustomColumnGroupsAccordionState$1 as DataPanelCustomColumnGroupsAccordionState, DataSourceVisualMode, EmbedErrorCodes, EmbedEvent, ErrorDetailsTypes, HomeLeftNavItem, HomePage, HomePageSearchBarMode, HomepageModule, HostEvent, InterceptedApiType, ListPage, ListPageColumns, LiveboardEmbed, LogLevel, MIXPANEL_EVENT, Page, PinboardEmbed, PrefetchFeatures, PrimaryNavbarVersion, RuntimeFilterOp, SageEmbed, SearchBarEmbed, SearchEmbed, SpotterAgentEmbed, SpotterEmbed, UIPassthroughEvent, createLiveboardWithAnswers, executeTML, exportTML, getAnswerFromQuery, getEmbedConfig as getInitConfig, getSessionInfo, init, logout, prefetch, reloadIframe, resetCachedAuthToken, startAutoMCPFrameRenderer, tokenizedFetch, uploadMixpanelEvent };