@thoughtspot/visual-embed-sdk 1.36.2 → 1.36.4

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 (271) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/authToken.d.ts.map +1 -1
  3. package/cjs/src/authToken.js +10 -3
  4. package/cjs/src/authToken.js.map +1 -1
  5. package/cjs/src/embed/app.d.ts +14 -0
  6. package/cjs/src/embed/app.d.ts.map +1 -1
  7. package/cjs/src/embed/app.js +5 -2
  8. package/cjs/src/embed/app.js.map +1 -1
  9. package/cjs/src/embed/app.spec.js +17 -0
  10. package/cjs/src/embed/app.spec.js.map +1 -1
  11. package/cjs/src/embed/base.d.ts +4 -0
  12. package/cjs/src/embed/base.d.ts.map +1 -1
  13. package/cjs/src/embed/base.js +27 -1
  14. package/cjs/src/embed/base.js.map +1 -1
  15. package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -1
  16. package/cjs/src/embed/bodyless-conversation.js +1 -1
  17. package/cjs/src/embed/bodyless-conversation.js.map +1 -1
  18. package/cjs/src/embed/conversation.d.ts.map +1 -1
  19. package/cjs/src/embed/conversation.js +1 -1
  20. package/cjs/src/embed/conversation.js.map +1 -1
  21. package/cjs/src/embed/embedConfig.d.ts +1 -1
  22. package/cjs/src/embed/embedConfig.d.ts.map +1 -1
  23. package/cjs/src/embed/embedConfig.js +5 -4
  24. package/cjs/src/embed/embedConfig.js.map +1 -1
  25. package/cjs/src/embed/liveboard.d.ts +6 -3
  26. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  27. package/cjs/src/embed/liveboard.js +4 -5
  28. package/cjs/src/embed/liveboard.js.map +1 -1
  29. package/cjs/src/embed/liveboard.spec.js +11 -11
  30. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  31. package/cjs/src/embed/sage.d.ts.map +1 -1
  32. package/cjs/src/embed/sage.js +1 -1
  33. package/cjs/src/embed/sage.js.map +1 -1
  34. package/cjs/src/embed/search-bar.d.ts.map +1 -1
  35. package/cjs/src/embed/search-bar.js +1 -1
  36. package/cjs/src/embed/search-bar.js.map +1 -1
  37. package/cjs/src/embed/search.d.ts.map +1 -1
  38. package/cjs/src/embed/search.js +1 -1
  39. package/cjs/src/embed/search.js.map +1 -1
  40. package/cjs/src/embed/ts-embed.d.ts +4 -3
  41. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  42. package/cjs/src/embed/ts-embed.js +25 -16
  43. package/cjs/src/embed/ts-embed.js.map +1 -1
  44. package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
  45. package/cjs/src/embed/ts-embed.spec.js +71 -5
  46. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  47. package/cjs/src/errors.d.ts +1 -0
  48. package/cjs/src/errors.d.ts.map +1 -1
  49. package/cjs/src/errors.js +1 -0
  50. package/cjs/src/errors.js.map +1 -1
  51. package/cjs/src/react/all-types-export.d.ts +1 -1
  52. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  53. package/cjs/src/react/all-types-export.js +2 -1
  54. package/cjs/src/react/all-types-export.js.map +1 -1
  55. package/cjs/src/react/index.d.ts +16 -0
  56. package/cjs/src/react/index.d.ts.map +1 -1
  57. package/cjs/src/react/index.js +25 -2
  58. package/cjs/src/react/index.js.map +1 -1
  59. package/cjs/src/types.d.ts +85 -66
  60. package/cjs/src/types.d.ts.map +1 -1
  61. package/cjs/src/types.js +78 -59
  62. package/cjs/src/types.js.map +1 -1
  63. package/cjs/src/utils/with-resolvers-polyfill.d.ts +1 -0
  64. package/cjs/src/utils/with-resolvers-polyfill.d.ts.map +1 -0
  65. package/cjs/src/utils/with-resolvers-polyfill.js +12 -0
  66. package/cjs/src/utils/with-resolvers-polyfill.js.map +1 -0
  67. package/cjs/src/utils.d.ts +27 -0
  68. package/cjs/src/utils.d.ts.map +1 -1
  69. package/cjs/src/utils.js +45 -1
  70. package/cjs/src/utils.js.map +1 -1
  71. package/cjs/src/utils.spec.js +15 -0
  72. package/cjs/src/utils.spec.js.map +1 -1
  73. package/dist/{index-B3hd6DTM.js → index-NZYq1Tu3.js} +1 -1
  74. package/dist/src/authToken.d.ts.map +1 -1
  75. package/dist/src/embed/app.d.ts +14 -0
  76. package/dist/src/embed/app.d.ts.map +1 -1
  77. package/dist/src/embed/base.d.ts +4 -0
  78. package/dist/src/embed/base.d.ts.map +1 -1
  79. package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
  80. package/dist/src/embed/conversation.d.ts.map +1 -1
  81. package/dist/src/embed/embedConfig.d.ts +1 -1
  82. package/dist/src/embed/embedConfig.d.ts.map +1 -1
  83. package/dist/src/embed/liveboard.d.ts +6 -3
  84. package/dist/src/embed/liveboard.d.ts.map +1 -1
  85. package/dist/src/embed/sage.d.ts.map +1 -1
  86. package/dist/src/embed/search-bar.d.ts.map +1 -1
  87. package/dist/src/embed/search.d.ts.map +1 -1
  88. package/dist/src/embed/ts-embed.d.ts +4 -3
  89. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  90. package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
  91. package/dist/src/errors.d.ts +1 -0
  92. package/dist/src/errors.d.ts.map +1 -1
  93. package/dist/src/react/all-types-export.d.ts +1 -1
  94. package/dist/src/react/all-types-export.d.ts.map +1 -1
  95. package/dist/src/react/index.d.ts +16 -0
  96. package/dist/src/react/index.d.ts.map +1 -1
  97. package/dist/src/types.d.ts +85 -66
  98. package/dist/src/types.d.ts.map +1 -1
  99. package/dist/src/utils/with-resolvers-polyfill.d.ts +1 -0
  100. package/dist/src/utils/with-resolvers-polyfill.d.ts.map +1 -0
  101. package/dist/src/utils.d.ts +27 -0
  102. package/dist/src/utils.d.ts.map +1 -1
  103. package/dist/tsembed-react.es.js +458 -108
  104. package/dist/tsembed-react.js +456 -105
  105. package/dist/tsembed.es.js +197 -98
  106. package/dist/tsembed.js +196 -97
  107. package/dist/visual-embed-sdk-react-full.d.ts +1324 -1269
  108. package/dist/visual-embed-sdk-react.d.ts +814 -759
  109. package/dist/visual-embed-sdk.d.ts +113 -72
  110. package/lib/package.json +1 -1
  111. package/lib/src/authToken.d.ts.map +1 -1
  112. package/lib/src/authToken.js +10 -3
  113. package/lib/src/authToken.js.map +1 -1
  114. package/lib/src/embed/app.d.ts +14 -0
  115. package/lib/src/embed/app.d.ts.map +1 -1
  116. package/lib/src/embed/app.js +5 -2
  117. package/lib/src/embed/app.js.map +1 -1
  118. package/lib/src/embed/app.spec.js +17 -0
  119. package/lib/src/embed/app.spec.js.map +1 -1
  120. package/lib/src/embed/base.d.ts +4 -0
  121. package/lib/src/embed/base.d.ts.map +1 -1
  122. package/lib/src/embed/base.js +24 -1
  123. package/lib/src/embed/base.js.map +1 -1
  124. package/lib/src/embed/bodyless-conversation.d.ts.map +1 -1
  125. package/lib/src/embed/bodyless-conversation.js +1 -1
  126. package/lib/src/embed/bodyless-conversation.js.map +1 -1
  127. package/lib/src/embed/conversation.d.ts.map +1 -1
  128. package/lib/src/embed/conversation.js +1 -1
  129. package/lib/src/embed/conversation.js.map +1 -1
  130. package/lib/src/embed/embedConfig.d.ts +1 -1
  131. package/lib/src/embed/embedConfig.d.ts.map +1 -1
  132. package/lib/src/embed/embedConfig.js +5 -4
  133. package/lib/src/embed/embedConfig.js.map +1 -1
  134. package/lib/src/embed/liveboard.d.ts +6 -3
  135. package/lib/src/embed/liveboard.d.ts.map +1 -1
  136. package/lib/src/embed/liveboard.js +4 -5
  137. package/lib/src/embed/liveboard.js.map +1 -1
  138. package/lib/src/embed/liveboard.spec.js +11 -11
  139. package/lib/src/embed/liveboard.spec.js.map +1 -1
  140. package/lib/src/embed/sage.d.ts.map +1 -1
  141. package/lib/src/embed/sage.js +1 -1
  142. package/lib/src/embed/sage.js.map +1 -1
  143. package/lib/src/embed/search-bar.d.ts.map +1 -1
  144. package/lib/src/embed/search-bar.js +1 -1
  145. package/lib/src/embed/search-bar.js.map +1 -1
  146. package/lib/src/embed/search.d.ts.map +1 -1
  147. package/lib/src/embed/search.js +1 -1
  148. package/lib/src/embed/search.js.map +1 -1
  149. package/lib/src/embed/ts-embed.d.ts +4 -3
  150. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  151. package/lib/src/embed/ts-embed.js +26 -17
  152. package/lib/src/embed/ts-embed.js.map +1 -1
  153. package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
  154. package/lib/src/embed/ts-embed.spec.js +71 -5
  155. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  156. package/lib/src/errors.d.ts +1 -0
  157. package/lib/src/errors.d.ts.map +1 -1
  158. package/lib/src/errors.js +1 -0
  159. package/lib/src/errors.js.map +1 -1
  160. package/lib/src/react/all-types-export.d.ts +1 -1
  161. package/lib/src/react/all-types-export.d.ts.map +1 -1
  162. package/lib/src/react/all-types-export.js +1 -1
  163. package/lib/src/react/all-types-export.js.map +1 -1
  164. package/lib/src/react/index.d.ts +16 -0
  165. package/lib/src/react/index.d.ts.map +1 -1
  166. package/lib/src/react/index.js +23 -1
  167. package/lib/src/react/index.js.map +1 -1
  168. package/lib/src/types.d.ts +85 -66
  169. package/lib/src/types.d.ts.map +1 -1
  170. package/lib/src/types.js +78 -59
  171. package/lib/src/types.js.map +1 -1
  172. package/lib/src/utils/with-resolvers-polyfill.d.ts +1 -0
  173. package/lib/src/utils/with-resolvers-polyfill.d.ts.map +1 -0
  174. package/lib/src/utils/with-resolvers-polyfill.js +12 -0
  175. package/lib/src/utils/with-resolvers-polyfill.js.map +1 -0
  176. package/lib/src/utils.d.ts +27 -0
  177. package/lib/src/utils.d.ts.map +1 -1
  178. package/lib/src/utils.js +41 -0
  179. package/lib/src/utils.js.map +1 -1
  180. package/lib/src/utils.spec.js +16 -1
  181. package/lib/src/utils.spec.js.map +1 -1
  182. package/lib/src/visual-embed-sdk.d.ts +114 -73
  183. package/package.json +1 -1
  184. package/src/authToken.ts +11 -3
  185. package/src/embed/app.spec.ts +27 -0
  186. package/src/embed/app.ts +21 -1
  187. package/src/embed/base.ts +41 -1
  188. package/src/embed/bodyless-conversation.ts +2 -1
  189. package/src/embed/conversation.ts +2 -1
  190. package/src/embed/embedConfig.ts +5 -4
  191. package/src/embed/liveboard.spec.ts +11 -11
  192. package/src/embed/liveboard.ts +9 -7
  193. package/src/embed/sage.ts +1 -2
  194. package/src/embed/search-bar.tsx +1 -2
  195. package/src/embed/search.ts +1 -2
  196. package/src/embed/ts-embed.spec.ts +83 -5
  197. package/src/embed/ts-embed.ts +33 -17
  198. package/src/errors.ts +1 -0
  199. package/src/react/all-types-export.ts +1 -0
  200. package/src/react/index.tsx +27 -2
  201. package/src/types.ts +89 -70
  202. package/src/utils/with-resolvers-polyfill.ts +11 -0
  203. package/src/utils.spec.ts +21 -0
  204. package/src/utils.ts +52 -0
  205. package/cjs/src/embed/searchEmbed-basic-auth.spec.d.ts +0 -2
  206. package/cjs/src/embed/searchEmbed-basic-auth.spec.d.ts.map +0 -1
  207. package/cjs/src/embed/searchEmbed-basic-auth.spec.js +0 -104
  208. package/cjs/src/embed/searchEmbed-basic-auth.spec.js.map +0 -1
  209. package/cjs/src/hostEventsTypeMapping.d.ts +0 -2
  210. package/cjs/src/hostEventsTypeMapping.d.ts.map +0 -1
  211. package/cjs/src/hostEventsTypeMapping.js +0 -4
  212. package/cjs/src/hostEventsTypeMapping.js.map +0 -1
  213. package/cjs/src/utils/embedApi/contracts.d.ts +0 -101
  214. package/cjs/src/utils/embedApi/contracts.d.ts.map +0 -1
  215. package/cjs/src/utils/embedApi/contracts.js +0 -17
  216. package/cjs/src/utils/embedApi/contracts.js.map +0 -1
  217. package/cjs/src/utils/embedApi/embedApiClient.d.ts +0 -12
  218. package/cjs/src/utils/embedApi/embedApiClient.d.ts.map +0 -1
  219. package/cjs/src/utils/embedApi/embedApiClient.js +0 -46
  220. package/cjs/src/utils/embedApi/embedApiClient.js.map +0 -1
  221. package/cjs/src/utils/embedApi/processEmbedApi.d.ts +0 -9
  222. package/cjs/src/utils/embedApi/processEmbedApi.d.ts.map +0 -1
  223. package/cjs/src/utils/embedApi/processEmbedApi.js +0 -18
  224. package/cjs/src/utils/embedApi/processEmbedApi.js.map +0 -1
  225. package/dist/index-BBBimG1x.js +0 -7370
  226. package/dist/index-BGnxP5NY.js +0 -7370
  227. package/dist/index-CENLvayL.js +0 -7370
  228. package/dist/index-CR5u7BMC.js +0 -7370
  229. package/dist/index-CbltIawo.js +0 -7370
  230. package/dist/index-CoQfqaHj.js +0 -7370
  231. package/dist/index-CzwzS0P4.js +0 -7370
  232. package/dist/index-D-9WUCUl.js +0 -7370
  233. package/dist/index-DFwi_pV_.js +0 -7370
  234. package/dist/index-DOIjN0N_.js +0 -7370
  235. package/dist/index-DYBx8SuE.js +0 -7370
  236. package/dist/index-DaLHJaLd.js +0 -7370
  237. package/dist/index-DnJX-gN2.js +0 -7370
  238. package/dist/index-DpuhnTj2.js +0 -7370
  239. package/dist/index-IDmSUe93.js +0 -7370
  240. package/dist/index-nWevLycs.js +0 -7370
  241. package/dist/index-vxW97_xb.js +0 -7370
  242. package/dist/src/embed/searchEmbed-basic-auth.spec.d.ts +0 -2
  243. package/dist/src/embed/searchEmbed-basic-auth.spec.d.ts.map +0 -1
  244. package/dist/src/hostEventsTypeMapping.d.ts +0 -2
  245. package/dist/src/hostEventsTypeMapping.d.ts.map +0 -1
  246. package/dist/src/utils/embedApi/contracts.d.ts +0 -101
  247. package/dist/src/utils/embedApi/contracts.d.ts.map +0 -1
  248. package/dist/src/utils/embedApi/embedApiClient.d.ts +0 -12
  249. package/dist/src/utils/embedApi/embedApiClient.d.ts.map +0 -1
  250. package/dist/src/utils/embedApi/processEmbedApi.d.ts +0 -9
  251. package/dist/src/utils/embedApi/processEmbedApi.d.ts.map +0 -1
  252. package/lib/src/embed/searchEmbed-basic-auth.spec.d.ts +0 -2
  253. package/lib/src/embed/searchEmbed-basic-auth.spec.d.ts.map +0 -1
  254. package/lib/src/embed/searchEmbed-basic-auth.spec.js +0 -101
  255. package/lib/src/embed/searchEmbed-basic-auth.spec.js.map +0 -1
  256. package/lib/src/hostEventsTypeMapping.d.ts +0 -2
  257. package/lib/src/hostEventsTypeMapping.d.ts.map +0 -1
  258. package/lib/src/hostEventsTypeMapping.js +0 -2
  259. package/lib/src/hostEventsTypeMapping.js.map +0 -1
  260. package/lib/src/utils/embedApi/contracts.d.ts +0 -101
  261. package/lib/src/utils/embedApi/contracts.d.ts.map +0 -1
  262. package/lib/src/utils/embedApi/contracts.js +0 -14
  263. package/lib/src/utils/embedApi/contracts.js.map +0 -1
  264. package/lib/src/utils/embedApi/embedApiClient.d.ts +0 -12
  265. package/lib/src/utils/embedApi/embedApiClient.d.ts.map +0 -1
  266. package/lib/src/utils/embedApi/embedApiClient.js +0 -42
  267. package/lib/src/utils/embedApi/embedApiClient.js.map +0 -1
  268. package/lib/src/utils/embedApi/processEmbedApi.d.ts +0 -9
  269. package/lib/src/utils/embedApi/processEmbedApi.d.ts.map +0 -1
  270. package/lib/src/utils/embedApi/processEmbedApi.js +0 -14
  271. package/lib/src/utils/embedApi/processEmbedApi.js.map +0 -1
@@ -1,4 +1,4 @@
1
- /* @thoughtspot/visual-embed-sdk version 1.36.2 */
1
+ /* @thoughtspot/visual-embed-sdk version 1.36.4 */
2
2
  function _mergeNamespaces(n, m) {
3
3
  m.forEach(function (e) {
4
4
  e && typeof e !== 'string' && !Array.isArray(e) && Object.keys(e).forEach(function (k) {
@@ -340,7 +340,35 @@ const getTypeFromValue = (value) => {
340
340
  return ['boolean', 'boolean'];
341
341
  }
342
342
  return ['', ''];
343
- };
343
+ };
344
+ const sdkWindowKey = '_tsEmbedSDK';
345
+ /**
346
+ * Stores a value in the global `window` object under the `_tsEmbedSDK` namespace.
347
+ * @param key - The key under which the value will be stored.
348
+ * @param value - The value to store.
349
+ * @param options - Additional options.
350
+ * @param options.ignoreIfAlreadyExists - Does not set if value for key is set.
351
+ *
352
+ * @returns The stored value.
353
+ *
354
+ * @version SDK: 1.36.2 | ThoughtSpot: *
355
+ */
356
+ function storeValueInWindow(key, value, options = {}) {
357
+ if (!window[sdkWindowKey]) {
358
+ window[sdkWindowKey] = {};
359
+ }
360
+ if (options.ignoreIfAlreadyExists && key in window[sdkWindowKey]) {
361
+ return window[sdkWindowKey][key];
362
+ }
363
+ window[sdkWindowKey][key] = value;
364
+ return value;
365
+ }
366
+ /**
367
+ * Retrieves a stored value from the global `window` object under the `_tsEmbedSDK` namespace.
368
+ * @param key - The key whose value needs to be retrieved.
369
+ * @returns The stored value or `undefined` if the key is not found.
370
+ */
371
+ const getValueFromWindow = (key) => { var _a; return (_a = window === null || window === void 0 ? void 0 : window[sdkWindowKey]) === null || _a === void 0 ? void 0 : _a[key]; };
344
372
 
345
373
  /**
346
374
  * Copyright (c) 2023
@@ -731,8 +759,8 @@ var EmbedEvent;
731
759
  */
732
760
  EmbedEvent["Load"] = "load";
733
761
  /**
734
- * Data pertaining to answer or Liveboard is received
735
- * @return data - The answer or Liveboard data
762
+ * Data pertaining to an Answer or Liveboard is received
763
+ * @return data - The Answer or Liveboard data
736
764
  * @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 8.4.1.sw
737
765
  * @example
738
766
  *```js
@@ -906,7 +934,7 @@ var EmbedEvent;
906
934
  */
907
935
  EmbedEvent["Alert"] = "alert";
908
936
  /**
909
- * The ThoughtSpot auth session has expired.
937
+ * The ThoughtSpot authentication session has expired.
910
938
  * @version SDK: 1.4.0 | ThoughtSpot: ts7.sep.cl, 8.4.1.sw
911
939
  * @example
912
940
  *```js
@@ -976,7 +1004,7 @@ var EmbedEvent;
976
1004
  /**
977
1005
  * Emitted when the embed does not have cookie access. This happens
978
1006
  * when Safari and other Web browsers block third-party cookies
979
- * are blocked by default. `NoCookieAccess` can trigger
1007
+ * are blocked by default. `NoCookieAccess` can trigger.
980
1008
  * @example
981
1009
  *```js
982
1010
  * appEmbed.on(EmbedEvent.NoCookieAccess)
@@ -1064,7 +1092,7 @@ var EmbedEvent;
1064
1092
  */
1065
1093
  EmbedEvent["Save"] = "save";
1066
1094
  /**
1067
- * Emitted when the download action is triggered on an answer
1095
+ * Emitted when the download action is triggered on an Answer.
1068
1096
  *
1069
1097
  * **Note**: This event is deprecated in v1.21.0.
1070
1098
  * To fire an event when a download action is initiated on a chart or table,
@@ -1080,7 +1108,7 @@ var EmbedEvent;
1080
1108
  */
1081
1109
  EmbedEvent["Download"] = "download";
1082
1110
  /**
1083
- * Emitted when the download action is triggered on an answer
1111
+ * Emitted when the download action is triggered on an Answer.
1084
1112
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.4.0.sw
1085
1113
  * @example
1086
1114
  *```js
@@ -1094,7 +1122,7 @@ var EmbedEvent;
1094
1122
  */
1095
1123
  EmbedEvent["DownloadAsPng"] = "downloadAsPng";
1096
1124
  /**
1097
- * Emitted when the Download as PDF action is triggered on an answer
1125
+ * Emitted when the Download as PDF action is triggered on an Answer
1098
1126
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1099
1127
  * @example
1100
1128
  *```js
@@ -1108,7 +1136,7 @@ var EmbedEvent;
1108
1136
  */
1109
1137
  EmbedEvent["DownloadAsPdf"] = "downloadAsPdf";
1110
1138
  /**
1111
- * Emitted when the Download as CSV action is triggered on an answer
1139
+ * Emitted when the Download as CSV action is triggered on an Answer.
1112
1140
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1113
1141
  * @example
1114
1142
  *```js
@@ -1122,7 +1150,7 @@ var EmbedEvent;
1122
1150
  */
1123
1151
  EmbedEvent["DownloadAsCsv"] = "downloadAsCsv";
1124
1152
  /**
1125
- * Emitted when the Download as XLSX action is triggered on an answer
1153
+ * Emitted when the Download as XLSX action is triggered on an Answer.
1126
1154
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1127
1155
  * @example
1128
1156
  *```js
@@ -1150,7 +1178,8 @@ var EmbedEvent;
1150
1178
  */
1151
1179
  EmbedEvent["AnswerDelete"] = "answerDelete";
1152
1180
  /**
1153
- * Emitted when an answer is pinned to a Liveboard
1181
+ * Emitted when a user initiates the Pin action to
1182
+ * add an Answer to a Liveboard.
1154
1183
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1155
1184
  * @example
1156
1185
  *```js
@@ -1288,7 +1317,7 @@ var EmbedEvent;
1288
1317
  */
1289
1318
  EmbedEvent["SaveAsView"] = "saveAsView";
1290
1319
  /**
1291
- * Emitted when the user creates a copy of an Answer
1320
+ * Emitted when the user creates a copy of an Answer.
1292
1321
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1293
1322
  * @example
1294
1323
  *```js
@@ -1302,7 +1331,7 @@ var EmbedEvent;
1302
1331
  */
1303
1332
  EmbedEvent["CopyAEdit"] = "copyAEdit";
1304
1333
  /**
1305
- * Emitted when a user clicks Show underlying data on an Answer
1334
+ * Emitted when a user clicks *Show underlying data* on an Answer.
1306
1335
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1307
1336
  * @example
1308
1337
  *```js
@@ -1313,7 +1342,7 @@ var EmbedEvent;
1313
1342
  */
1314
1343
  EmbedEvent["ShowUnderlyingData"] = "showUnderlyingData";
1315
1344
  /**
1316
- * Emitted when an answer is switched to a chart or table view.
1345
+ * Emitted when an Answer is switched to a chart or table view.
1317
1346
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
1318
1347
  * @example
1319
1348
  *```js
@@ -1447,11 +1476,12 @@ var EmbedEvent;
1447
1476
  */
1448
1477
  EmbedEvent["CopyLink"] = "embedDocument";
1449
1478
  /**
1450
- * Emitted when a user interacts with cross filters on a visualization or Liveboard
1479
+ * Emitted when a user interacts with cross filters on a
1480
+ * visualization or Liveboard.
1451
1481
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.5.0.sw
1452
1482
  * @example
1453
1483
  *```js
1454
- * liveboardEmbed.trigger(HostEvent.CrossFilterChanged, {
1484
+ * liveboardEmbed.on(EmbedEvent.CrossFilterChanged, {
1455
1485
  * vizId: '730496d6-6903-4601-937e-2c691821af3c'})
1456
1486
  *```
1457
1487
  */
@@ -1545,8 +1575,8 @@ var EmbedEvent;
1545
1575
  */
1546
1576
  EmbedEvent["DeletePersonalisedView"] = "deletePersonalisedView";
1547
1577
  /**
1548
- * Emitted when a user creates a new worksheet
1549
- * @version SDK : 1.27.0 | ThoughtSpot Cloud: 9.8.0.cl
1578
+ * Emitted when a user creates a Worksheet.
1579
+ * @version SDK : 1.27.0 | ThoughtSpot: 9.8.0.cl, 9.8.0.sw
1550
1580
  */
1551
1581
  EmbedEvent["CreateWorksheet"] = "createWorksheet";
1552
1582
  /**
@@ -1559,8 +1589,8 @@ var EmbedEvent;
1559
1589
  */
1560
1590
  EmbedEvent["AskSageInit"] = "AskSageInit";
1561
1591
  /**
1562
- * Emitted when a LB/viz is renamed
1563
- * @version SDK : 1.28.0 | ThoughtSpot: 9.10.5.cl
1592
+ * Emitted when a Liveboard or visualization is renamed.
1593
+ * @version SDK : 1.28.0 | ThoughtSpot: 9.10.5.cl, 10.1.0.sw
1564
1594
  */
1565
1595
  EmbedEvent["Rename"] = "rename";
1566
1596
  /**
@@ -1624,8 +1654,7 @@ var EmbedEvent;
1624
1654
  EmbedEvent["OnBeforeGetVizDataIntercept"] = "onBeforeGetVizDataIntercept";
1625
1655
  /**
1626
1656
  * Emitted when parameter changes in an Answer
1627
- * or Liveboard
1628
- *
1657
+ * or Liveboard.
1629
1658
  * ```js
1630
1659
  * liveboardEmbed.on(EmbedEvent.ParameterChanged, (payload) => {
1631
1660
  * console.log('payload', payload);
@@ -1652,7 +1681,7 @@ var EmbedEvent;
1652
1681
  */
1653
1682
  EmbedEvent["TableVizRendered"] = "TableVizRendered";
1654
1683
  /**
1655
- * Emitted when the liveboard is created from pin modal or liveboard list page.
1684
+ * Emitted when the liveboard is created from pin modal or Liveboard list page.
1656
1685
  * You can use this event as a hook to trigger
1657
1686
  * other events on liveboard creation.
1658
1687
  *
@@ -1797,7 +1826,7 @@ var HostEvent;
1797
1826
  */
1798
1827
  HostEvent["Filter"] = "filter";
1799
1828
  /**
1800
- * Reload the answer or visualization
1829
+ * Reload the Answer or visualization
1801
1830
  * @hidden
1802
1831
  */
1803
1832
  HostEvent["Reload"] = "reload";
@@ -1847,12 +1876,10 @@ var HostEvent;
1847
1876
  * and `AppEmbed` only. In full application embedding, this event updates
1848
1877
  * the runtime filters applied on the Liveboard and saved Answer objects.
1849
1878
  *
1850
- *
1851
- * Pass an array of runtime filters with the following attributes:
1852
- *
1879
+ * @param - Pass an array of {@link RuntimeFilter} with the following attributes:
1853
1880
  * `columnName` - _String_. The name of the column to filter on.
1854
1881
  *
1855
- * `operator` - Runtime filter operator to apply. For more information,
1882
+ * `operator` - {@link RuntimeFilterOp} to apply. For more information,
1856
1883
  * see link:https://developers.thoughtspot.com/docs/?pageid=runtime-filters#rtOperator[Developer Documentation].
1857
1884
  *
1858
1885
  * `values` - List of operands. Some operators such as EQ and LE allow a
@@ -1864,7 +1891,7 @@ var HostEvent;
1864
1891
  * will be cleared, restoring the original visualization
1865
1892
  * with the updated filters.
1866
1893
  *
1867
- * @param - {@link RuntimeFilter}[] an array of {@link RuntimeFilter} Types.
1894
+
1868
1895
  * @example
1869
1896
  * ```js
1870
1897
  * liveboardEmbed.trigger(HostEvent.UpdateRuntimeFilters, [
@@ -2103,6 +2130,11 @@ var HostEvent;
2103
2130
  * appEmbed.trigger(HostEvent.Remove)
2104
2131
  * ```
2105
2132
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
2133
+ * * @example
2134
+ * ```js
2135
+ * liveboardEmbed.trigger(HostEvent.Remove)
2136
+ * ```
2137
+ * @version SDK: 1.37.0 | ThoughtSpot: 10.8.0.cl, 10.10.0.sw
2106
2138
  */
2107
2139
  HostEvent["Remove"] = "delete";
2108
2140
  /**
@@ -2513,7 +2545,7 @@ var HostEvent;
2513
2545
  * ```js
2514
2546
  * liveboardEmbed.trigger(HostEvent.GetTabs).then((tabDetails) => {
2515
2547
  * console.log(
2516
- * tabDetails // TabDetails of current LB
2548
+ * tabDetails // TabDetails of current Liveboard
2517
2549
  * );
2518
2550
  * })
2519
2551
  * ```
@@ -2561,7 +2593,7 @@ var HostEvent;
2561
2593
  */
2562
2594
  HostEvent["UpdateSageQuery"] = "updateSageQuery";
2563
2595
  /**
2564
- * Get the answer session for a Search or
2596
+ * Get the Answer session for a Search or
2565
2597
  * Liveboard visualization.
2566
2598
  * @example
2567
2599
  * ```js
@@ -2740,6 +2772,7 @@ var Param;
2740
2772
  Param["HostAppUrl"] = "hostAppUrl";
2741
2773
  Param["EnableVizTransformations"] = "enableVizTransform";
2742
2774
  Param["EnableSearchAssist"] = "enableSearchAssist";
2775
+ Param["EnablePendoHelp"] = "enablePendoHelp";
2743
2776
  Param["HideResult"] = "hideResult";
2744
2777
  Param["UseLastSelectedDataSource"] = "useLastSelectedSources";
2745
2778
  Param["Tag"] = "tag";
@@ -2972,9 +3005,10 @@ var Action;
2972
3005
  */
2973
3006
  Action["AddDataPanelObjects"] = "addDataPanelObjects";
2974
3007
  /**
2975
- * Filter configuration options on a Liveboard page.
2976
- * Allows configuring filters on a
2977
- * Liveboard.
3008
+ * The filter configuration options for a Liveboard.
3009
+ * The configuration options are available when adding
3010
+ * filters on a Liveboard.
3011
+ *
2978
3012
  * @example
2979
3013
  * ```js
2980
3014
  * disabledActions: [Action.ConfigureFilter]
@@ -3072,14 +3106,17 @@ var Action;
3072
3106
  * @hidden
3073
3107
  */
3074
3108
  Action["SpotIQFollow"] = "spotIQFollow";
3109
+ /**
3110
+ * The Share action for a Liveboard visualization.
3111
+ */
3075
3112
  Action["ShareViz"] = "shareViz";
3076
3113
  /**
3077
3114
  * @hidden
3078
3115
  */
3079
3116
  Action["ReplaySearch"] = "replaySearch";
3080
3117
  /**
3081
- * The **Show underlying data** menu action on a visualization or
3082
- * Answer page.
3118
+ * The **Show underlying data** menu action on a
3119
+ * visualization or Answer page.
3083
3120
  * Displays detailed information and raw data
3084
3121
  * for a given visualization.
3085
3122
  * @example
@@ -3089,8 +3126,8 @@ var Action;
3089
3126
  */
3090
3127
  Action["ShowUnderlyingData"] = "showUnderlyingData";
3091
3128
  /**
3092
- * The **Download** menu action on Liveboard visualizations
3093
- * and Answers.
3129
+ * The **Download** menu action on Liveboard
3130
+ * visualizations and Answers.
3094
3131
  * Allows downloading a visualization or Answer.
3095
3132
  * @example
3096
3133
  * ```js
@@ -3111,11 +3148,10 @@ var Action;
3111
3148
  /**
3112
3149
  *
3113
3150
  *The **Download PDF** action that downloads a Liveboard,
3114
- *visualization, or Answer as a PDF file.
3151
+ * visualization, or Answer as a PDF file.
3115
3152
  *
3116
- *
3117
- ***NOTE**: The **Download** > **PDF** action is available on
3118
- *visualizations and Answers if the data is in tabular format.
3153
+ * **NOTE**: The **Download** > **PDF** option is available for
3154
+ * tables in visualizations and Answers.
3119
3155
  * @example
3120
3156
  * ```js
3121
3157
  * disabledActions: [Action.DownloadAsPdf]
@@ -3147,9 +3183,11 @@ var Action;
3147
3183
  */
3148
3184
  Action["DownloadTrace"] = "downloadTrace";
3149
3185
  /**
3150
- * The **Export TML** menu action on Liveboard, Answers
3151
- * Worksheets and Data Connections page.
3152
- * Exports an object as a TML file.
3186
+ * The **Export TML** menu action on a Liveboard, Answer, and
3187
+ * the Data Workspace pages for data objects and connections.
3188
+ *
3189
+ * Allows exporting an object as a TML file.
3190
+ *
3153
3191
  * @example
3154
3192
  * ```js
3155
3193
  * disabledActions: [Action.ExportTML]
@@ -3157,7 +3195,8 @@ var Action;
3157
3195
  */
3158
3196
  Action["ExportTML"] = "exportTSL";
3159
3197
  /**
3160
- * The **Import TML** menu action for Liveboards and Answers.
3198
+ * The **Import TML** menu action on the
3199
+ * *Data Workspace* > *Utilities* page.
3161
3200
  * Imports TML representation of ThoughtSpot objects.
3162
3201
  * @example
3163
3202
  * ```js
@@ -3167,7 +3206,7 @@ var Action;
3167
3206
  Action["ImportTML"] = "importTSL";
3168
3207
  /**
3169
3208
  * The **Update TML** menu action for Liveboards and Answers.
3170
- * Update TML representation of ThoughtSpot objects.
3209
+ * Updates TML representation of ThoughtSpot objects.
3171
3210
  * @example
3172
3211
  * ```js
3173
3212
  * disabledActions: [Action.UpdateTML]
@@ -3194,8 +3233,11 @@ var Action;
3194
3233
  */
3195
3234
  Action["Present"] = "present";
3196
3235
  /**
3197
- * The tile resize options in the visualization menu.
3198
- * Allows switching between different preset layouts.
3236
+ * The visualization tile resize option.
3237
+ * Also available via More `...` options menu on a visualization.
3238
+ * Allows resizing visualization tiles and switching
3239
+ * between different preset layout option.
3240
+ *
3199
3241
  * @example
3200
3242
  * ```js
3201
3243
  * disabledActions: [Action.ToggleSize]
@@ -3221,8 +3263,9 @@ var Action;
3221
3263
  */
3222
3264
  Action["EditTitle"] = "editTitle";
3223
3265
  /**
3224
- * The **Delete** menu action on Liveboards and visualizations.
3225
- * Deletes a Liveboard or a visualization from a Liveboard.
3266
+ * The **Delete** action on a Liveboard, *Liveboards* and
3267
+ * *Answers* list pages in full application embedding.
3268
+ *
3226
3269
  * @example
3227
3270
  * ```js
3228
3271
  * disabledActions: [Action.Remove]
@@ -3299,8 +3342,9 @@ var Action;
3299
3342
  */
3300
3343
  Action["Explore"] = "explore";
3301
3344
  /**
3302
- * The action to include data points on a drilled-down Answer
3303
- * or visualization
3345
+ * The contextual menu action to include a specific data point
3346
+ * when drilling down a table or chart on an Answer.
3347
+ *
3304
3348
  * @example
3305
3349
  * ```js
3306
3350
  * disabledActions: [Action.DrillInclude]
@@ -3308,8 +3352,8 @@ var Action;
3308
3352
  */
3309
3353
  Action["DrillInclude"] = "context-menu-item-include";
3310
3354
  /**
3311
- * The action to exclude data points on a drilled-down Answer
3312
- * or visualization
3355
+ * The contextual menu action to exclude a specific data point
3356
+ * when drilling down a table or chart on an Answer.
3313
3357
  * @example
3314
3358
  * ```js
3315
3359
  * disabledActions: [Action.DrillInclude]
@@ -3456,7 +3500,7 @@ var Action;
3456
3500
  * Allows users to manage data sync pipelines to third-party apps.
3457
3501
  * @example
3458
3502
  * ```js
3459
- * disabledActions: [Action.SyncToOtherApps]
3503
+ * disabledActions: [Action.ManagePipelines]
3460
3504
  * ```
3461
3505
  * @version SDK: 1.18.0| ThoughtSpot: 8.10.0.cl, 9.0.1.sw
3462
3506
  */
@@ -3775,7 +3819,7 @@ var Action;
3775
3819
  /**
3776
3820
  * Action ID for the Parent TML action
3777
3821
  * The parent action **TML** must be included to access TML-related options
3778
- * within the cascading menu (specific to the answer page)
3822
+ * within the cascading menu (specific to the Answer page)
3779
3823
  * @example
3780
3824
  * ```js
3781
3825
  * // to include specific TML actions
@@ -3814,8 +3858,10 @@ var Action;
3814
3858
  */
3815
3859
  Action["VerifiedLiveboard"] = "verifiedLiveboard";
3816
3860
  /**
3817
- * The *Ask Sage* action for Answers and visualizations.
3818
- * Allows initiating a Natural Language Search query.
3861
+ * Action ID for the *Ask Sage* In Natural Language Search embed,
3862
+ * *Spotter* in Liveboard, full app, and Spotter embed.
3863
+ *
3864
+ * Allows initiating a conversation with ThoughtSpot AI analyst.
3819
3865
  *
3820
3866
  * @example
3821
3867
  * ```js
@@ -4011,7 +4057,8 @@ var Action;
4011
4057
  */
4012
4058
  Action["DeletePreviousPrompt"] = "deletePreviousPrompt";
4013
4059
  /**
4014
- * Action ID for hide/disable edit of tokens on spotter results.
4060
+ * Action ID for hide or disable editing tokens generated from
4061
+ * Spotter results.
4015
4062
  * @example
4016
4063
  * ```js
4017
4064
  * hiddenAction: [Action.EditTokens]
@@ -6484,6 +6531,7 @@ const ERROR_MESSAGE = {
6484
6531
  CSP_VIOLATION_ALERT: 'CSP violation detected. Please check the console errors for more details.',
6485
6532
  CSP_FRAME_HOST_VIOLATION_LOG_MESSAGE: 'Please set up CSP correctly for the application to start working. For more information, see https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts. \n If the issue persists, refer to https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts',
6486
6533
  MISSING_REPORTING_OBSERVER: 'ReportingObserver not supported',
6534
+ RENDER_CALLED_BEFORE_INIT: 'Looks like render was called before calling init, the render won\'t start until init is called.\nFor more info check\n1. https://developers.thoughtspot.com/docs/Function_init#_init\n2.https://developers.thoughtspot.com/docs/getting-started#initSdk',
6487
6535
  };
6488
6536
 
6489
6537
  const EndPoints = {
@@ -6600,13 +6648,18 @@ async function fetchBasicAuthService(thoughtSpotHost, username, password) {
6600
6648
  });
6601
6649
  }
6602
6650
 
6603
- let cachedAuthToken = null;
6651
+ const cacheAuthTokenKey = 'cachedAuthToken';
6652
+ const getCacheAuthToken = () => getValueFromWindow(cacheAuthTokenKey);
6653
+ const storeAuthTokenInCache = (token) => {
6654
+ storeValueInWindow(cacheAuthTokenKey, token);
6655
+ };
6604
6656
  // This method can be used to get the authToken using the embedConfig
6605
6657
  /**
6606
6658
  *
6607
6659
  * @param embedConfig
6608
6660
  */
6609
6661
  async function getAuthenticationToken(embedConfig) {
6662
+ const cachedAuthToken = getCacheAuthToken();
6610
6663
  // Since we don't have token validation enabled , we cannot tell if the
6611
6664
  // cached token is valid or not. So we will always fetch a new token.
6612
6665
  if (cachedAuthToken && !embedConfig.disableTokenVerification) {
@@ -6637,10 +6690,11 @@ async function getAuthenticationToken(embedConfig) {
6637
6690
  logger$3.error(`${ERROR_MESSAGE.INVALID_TOKEN_ERROR} Error : ${e.message}`);
6638
6691
  throw e;
6639
6692
  }
6640
- cachedAuthToken = authToken;
6693
+ storeAuthTokenInCache(authToken);
6641
6694
  return authToken;
6642
6695
  }
6643
6696
  const validateAuthToken = async (embedConfig, authToken, suppressAlert) => {
6697
+ const cachedAuthToken = getCacheAuthToken();
6644
6698
  if (embedConfig.disableTokenVerification) {
6645
6699
  logger$3.info('Token verification is disabled. Assuming token is valid.');
6646
6700
  return true;
@@ -6674,17 +6728,17 @@ const validateAuthToken = async (embedConfig, authToken, suppressAlert) => {
6674
6728
  * @group Authentication / Init
6675
6729
  */
6676
6730
  const resetCachedAuthToken = () => {
6677
- cachedAuthToken = null;
6731
+ storeAuthTokenInCache(null);
6678
6732
  };
6679
6733
 
6680
- let config = {};
6734
+ const configKey = 'embedConfig';
6681
6735
  /**
6682
6736
  * Gets the configuration embed was initialized with.
6683
6737
  * @returns {@link EmbedConfig} The configuration embed was initialized with.
6684
6738
  * @version SDK: 1.19.0 | ThoughtSpot: *
6685
6739
  * @group Global methods
6686
6740
  */
6687
- const getEmbedConfig = () => config;
6741
+ const getEmbedConfig = () => getValueFromWindow(configKey) || {};
6688
6742
  /**
6689
6743
  * Sets the configuration embed was initialized with.
6690
6744
  * And returns the new configuration.
@@ -6693,8 +6747,8 @@ const getEmbedConfig = () => config;
6693
6747
  * @group Global methods
6694
6748
  */
6695
6749
  const setEmbedConfig = (newConfig) => {
6696
- config = newConfig;
6697
- return newConfig;
6750
+ storeValueInWindow(configKey, newConfig);
6751
+ return getValueFromWindow(configKey);
6698
6752
  };
6699
6753
 
6700
6754
  /**
@@ -7302,7 +7356,7 @@ class AnswerService {
7302
7356
  async getTML() {
7303
7357
  const { object } = await this.executeQuery(getAnswerTML, {});
7304
7358
  const edoc = object[0].edoc;
7305
- const YAML = await import('./index-DpuhnTj2.js');
7359
+ const YAML = await import('./index-NZYq1Tu3.js');
7306
7360
  const parsedDoc = YAML.parse(edoc);
7307
7361
  return {
7308
7362
  answer: {
@@ -14702,6 +14756,18 @@ const authenticate = async (embedConfig) => {
14702
14756
  }
14703
14757
  };
14704
14758
 
14759
+ if (typeof Promise.withResolvers === 'undefined') {
14760
+ Promise.withResolvers = () => {
14761
+ let resolve;
14762
+ let reject;
14763
+ const promise = new Promise((res, rej) => {
14764
+ resolve = res;
14765
+ reject = rej;
14766
+ });
14767
+ return { promise, resolve, reject };
14768
+ };
14769
+ }
14770
+
14705
14771
  /* eslint-disable camelcase */
14706
14772
  /* eslint-disable import/no-mutable-exports */
14707
14773
  /**
@@ -14808,6 +14874,25 @@ function backwardCompat(embedConfig) {
14808
14874
  }
14809
14875
  return newConfig;
14810
14876
  }
14877
+ const initFlagKey = 'initFlagKey';
14878
+ const createAndSetInitPromise = () => {
14879
+ const { promise: initPromise, resolve: initPromiseResolve,
14880
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
14881
+ // @ts-ignore
14882
+ } = Promise.withResolvers();
14883
+ const initFlagStore = {
14884
+ initPromise,
14885
+ isInitCalled: false,
14886
+ initPromiseResolve,
14887
+ };
14888
+ storeValueInWindow(initFlagKey, initFlagStore, {
14889
+ // In case of diff imports the promise might be already set
14890
+ ignoreIfAlreadyExists: true,
14891
+ });
14892
+ };
14893
+ createAndSetInitPromise();
14894
+ const getInitPromise = () => { var _a; return (_a = getValueFromWindow(initFlagKey)) === null || _a === void 0 ? void 0 : _a.initPromise; };
14895
+ const getIsInitCalled = () => { var _a; return !!((_a = getValueFromWindow(initFlagKey)) === null || _a === void 0 ? void 0 : _a.isInitCalled); };
14811
14896
  /**
14812
14897
  * Initializes the Visual Embed SDK globally and perform
14813
14898
  * authentication if applicable. This function needs to be called before any ThoughtSpot
@@ -14854,6 +14939,9 @@ const init = (embedConfig) => {
14854
14939
  if (getEmbedConfig().callPrefetch) {
14855
14940
  prefetch(getEmbedConfig().thoughtSpotHost);
14856
14941
  }
14942
+ // Resolves the promise created in the initPromiseKey
14943
+ getValueFromWindow(initFlagKey).initPromiseResolve(authEE);
14944
+ getValueFromWindow(initFlagKey).isInitCalled = true;
14857
14945
  return authEE;
14858
14946
  };
14859
14947
  /**
@@ -15124,7 +15212,7 @@ function processEventData(type, e, thoughtSpotHost, containerEl) {
15124
15212
  return e;
15125
15213
  }
15126
15214
 
15127
- var name="@thoughtspot/visual-embed-sdk";var version$1="1.36.2";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 . --incremental false; tsc -p . --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts","bundle-dts":"dts-bundle --name ../../dist/visual-embed-sdk --main lib/src/index.d.ts --outputAsModuleFolder=true","bundle-dts-react":"dts-bundle --name ../../../dist/visual-embed-sdk-react --main lib/src/react/index.d.ts --outputAsModuleFolder=true","bundle-dts-react-full":"dts-bundle --name ../../../dist/visual-embed-sdk-react-full --main lib/src/react/all-types-export.d.ts --outputAsModuleFolder=true",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.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 | coveralls","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={algoliasearch:"^4.10.5",classnames:"^2.3.1",eventemitter3:"^4.0.7","gatsby-plugin-vercel":"^1.0.3",lodash:"^4.17.21","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":"^8.2.6","@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":"^22.2.3","@types/lodash":"^4.17.0","@types/mixpanel-browser":"^2.35.6","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0",asciidoctor:"^2.2.1","babel-jest":"^26.6.3","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1",coveralls:"^3.1.0",crypto:"^1.0.1","current-git-branch":"^1.1.0","dts-bundle":"^0.7.3",eslint:"^7.12.1","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.15.0","eslint-import-resolver-typescript":"^2.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react-hooks":"^4.2.0","eslint-plugin-comment-length":"1.7.3","eslint-plugin-jsdoc":"^46.9.0","fs-extra":"^10.0.0","gh-pages":"6.3.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^1.1.1",jest:"^26.6.3","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0","node-sass":"^8.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":"^26.5.5","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^5.3.4"};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:"31 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};
15215
+ var name="@thoughtspot/visual-embed-sdk";var version$1="1.36.4";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 . --incremental false; tsc -p . --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts","bundle-dts":"dts-bundle --name ../../dist/visual-embed-sdk --main lib/src/index.d.ts --outputAsModuleFolder=true","bundle-dts-react":"dts-bundle --name ../../../dist/visual-embed-sdk-react --main lib/src/react/index.d.ts --outputAsModuleFolder=true","bundle-dts-react-full":"dts-bundle --name ../../../dist/visual-embed-sdk-react-full --main lib/src/react/all-types-export.d.ts --outputAsModuleFolder=true",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.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 | coveralls","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={algoliasearch:"^4.10.5",classnames:"^2.3.1",eventemitter3:"^4.0.7","gatsby-plugin-vercel":"^1.0.3",lodash:"^4.17.21","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":"^8.2.6","@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":"^22.2.3","@types/lodash":"^4.17.0","@types/mixpanel-browser":"^2.35.6","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0",asciidoctor:"^2.2.1","babel-jest":"^26.6.3","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1",coveralls:"^3.1.0",crypto:"^1.0.1","current-git-branch":"^1.1.0","dts-bundle":"^0.7.3",eslint:"^7.12.1","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.15.0","eslint-import-resolver-typescript":"^2.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react-hooks":"^4.2.0","eslint-plugin-comment-length":"1.7.3","eslint-plugin-jsdoc":"^46.9.0","fs-extra":"^10.0.0","gh-pages":"6.3.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^1.1.1",jest:"^26.6.3","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0","node-sass":"^8.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":"^26.5.5","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^5.3.4"};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:"31 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};
15128
15216
 
15129
15217
  /**
15130
15218
  * Reloads the ThoughtSpot iframe.
@@ -15433,13 +15521,6 @@ class TsEmbed {
15433
15521
  }
15434
15522
  };
15435
15523
  this.el = getDOMNode(domSelector);
15436
- // TODO: handle error
15437
- this.embedConfig = getEmbedConfig();
15438
- if (!this.embedConfig.authTriggerContainer && !this.embedConfig.useEventForSAMLPopup) {
15439
- this.embedConfig.authTriggerContainer = domSelector;
15440
- }
15441
- this.thoughtSpotHost = getThoughtSpotHost(this.embedConfig);
15442
- this.thoughtSpotV2Base = getV2BasePath(this.embedConfig);
15443
15524
  this.eventHandlerMap = new Map();
15444
15525
  this.isError = false;
15445
15526
  this.viewConfig = {
@@ -15447,12 +15528,21 @@ class TsEmbed {
15447
15528
  excludeRuntimeParametersfromURL: false,
15448
15529
  ...viewConfig,
15449
15530
  };
15450
- this.shouldEncodeUrlQueryParams = this.embedConfig.shouldEncodeUrlQueryParams;
15451
15531
  this.registerAppInit();
15452
15532
  uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_EMBED_CREATE, {
15453
15533
  ...viewConfig,
15454
15534
  });
15455
15535
  this.hostEventClient = new HostEventClient(this.iFrame);
15536
+ this.isReadyForRenderPromise = getInitPromise().then(async () => {
15537
+ const embedConfig = getEmbedConfig();
15538
+ this.embedConfig = embedConfig;
15539
+ if (!embedConfig.authTriggerContainer && !embedConfig.useEventForSAMLPopup) {
15540
+ this.embedConfig.authTriggerContainer = domSelector;
15541
+ }
15542
+ this.thoughtSpotHost = getThoughtSpotHost(embedConfig);
15543
+ this.thoughtSpotV2Base = getV2BasePath(embedConfig);
15544
+ this.shouldEncodeUrlQueryParams = embedConfig.shouldEncodeUrlQueryParams;
15545
+ });
15456
15546
  }
15457
15547
  /**
15458
15548
  * Throws error encountered during initialization.
@@ -16170,6 +16260,10 @@ class TsEmbed {
16170
16260
  * @param args
16171
16261
  */
16172
16262
  async render() {
16263
+ if (!getIsInitCalled()) {
16264
+ logger$3.error(ERROR_MESSAGE.RENDER_CALLED_BEFORE_INIT);
16265
+ }
16266
+ await this.isReadyForRenderPromise;
16173
16267
  this.isRendered = true;
16174
16268
  return this;
16175
16269
  }
@@ -16177,21 +16271,20 @@ class TsEmbed {
16177
16271
  return '';
16178
16272
  }
16179
16273
  handleRenderForPrerender() {
16180
- this.render();
16274
+ return this.render();
16181
16275
  }
16182
16276
  /**
16183
16277
  * Creates the preRender shell
16184
16278
  * @param showPreRenderByDefault - Show the preRender after render, hidden by default
16185
16279
  */
16186
- preRender(showPreRenderByDefault = false) {
16280
+ async preRender(showPreRenderByDefault = false) {
16187
16281
  if (!this.viewConfig.preRenderId) {
16188
16282
  logger$3.error(ERROR_MESSAGE.PRERENDER_ID_MISSING);
16189
16283
  return this;
16190
16284
  }
16191
16285
  this.isPreRendered = true;
16192
16286
  this.showPreRenderByDefault = showPreRenderByDefault;
16193
- this.handleRenderForPrerender();
16194
- return this;
16287
+ return this.handleRenderForPrerender();
16195
16288
  }
16196
16289
  /**
16197
16290
  * Get the Post Url Params for THOUGHTSPOT from the current
@@ -16244,6 +16337,10 @@ class TsEmbed {
16244
16337
  * @returns
16245
16338
  */
16246
16339
  async prerenderGeneric() {
16340
+ if (!getIsInitCalled()) {
16341
+ logger$3.error(ERROR_MESSAGE.RENDER_CALLED_BEFORE_INIT);
16342
+ }
16343
+ await this.isReadyForRenderPromise;
16247
16344
  const prerenderFrameSrc = this.getRootIframeSrc();
16248
16345
  this.isRendered = true;
16249
16346
  return this.renderIFrame(prerenderFrameSrc);
@@ -16257,17 +16354,16 @@ class TsEmbed {
16257
16354
  * Also, synchronizes the style of the PreRender component with the embedding
16258
16355
  * element.
16259
16356
  */
16260
- showPreRender() {
16357
+ async showPreRender() {
16261
16358
  if (!this.viewConfig.preRenderId) {
16262
16359
  logger$3.error(ERROR_MESSAGE.PRERENDER_ID_MISSING);
16263
- return;
16360
+ return this;
16264
16361
  }
16265
16362
  if (!this.isPreRenderAvailable()) {
16266
16363
  const isAvailable = this.connectPreRendered();
16267
16364
  if (!isAvailable) {
16268
16365
  // if the Embed component is not preRendered , Render it now and
16269
- this.preRender(true);
16270
- return;
16366
+ return this.preRender(true);
16271
16367
  }
16272
16368
  this.validatePreRenderViewConfig(this.viewConfig);
16273
16369
  }
@@ -16290,6 +16386,7 @@ class TsEmbed {
16290
16386
  this.beforePrerenderVisible();
16291
16387
  removeStyleProperties(this.preRenderWrapper, ['z-index', 'opacity', 'pointer-events']);
16292
16388
  this.subscribeToEvents();
16389
+ return this;
16293
16390
  }
16294
16391
  /**
16295
16392
  * Synchronizes the style properties of the PreRender component with the embedding
@@ -16551,7 +16648,7 @@ class AppEmbed extends V1Embed {
16551
16648
  getEmbedParams() {
16552
16649
  const { tag, hideObjects, liveboardV2, showPrimaryNavbar, disableProfileAndHelp, hideApplicationSwitcher, hideOrgSwitcher, enableSearchAssist, fullHeight, dataPanelV2 = false, hideLiveboardHeader = false, showLiveboardTitle = true, showLiveboardDescription = true, hideHomepageLeftNav = false, modularHomeExperience = false, isLiveboardHeaderSticky = true, enableAskSage, collapseSearchBarInitially = false, enable2ColumnLayout, enableCustomColumnGroups = false, isOnBeforeGetVizDataInterceptEnabled = false,
16553
16650
  /* eslint-disable-next-line max-len */
16554
- dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState$1.EXPAND_ALL, collapseSearchBar = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs = false, homePageSearchBarMode, isUnifiedSearchExperienceEnabled = true, } = this.viewConfig;
16651
+ dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState$1.EXPAND_ALL, collapseSearchBar = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs = false, homePageSearchBarMode, isUnifiedSearchExperienceEnabled = true, enablePendoHelp = true, } = this.viewConfig;
16555
16652
  let params = {};
16556
16653
  params[Param.PrimaryNavHidden] = !showPrimaryNavbar;
16557
16654
  params[Param.HideProfleAndHelp] = !!disableProfileAndHelp;
@@ -16596,6 +16693,9 @@ class AppEmbed extends V1Embed {
16596
16693
  if (homePageSearchBarMode) {
16597
16694
  params[Param.HomePageSearchBarMode] = homePageSearchBarMode;
16598
16695
  }
16696
+ if (enablePendoHelp !== undefined) {
16697
+ params[Param.EnablePendoHelp] = enablePendoHelp;
16698
+ }
16599
16699
  params[Param.DataPanelV2Enabled] = dataPanelV2;
16600
16700
  params[Param.HideHomepageLeftNav] = hideHomepageLeftNav;
16601
16701
  params[Param.ModularHomeExperienceEnabled] = modularHomeExperience;
@@ -16704,7 +16804,7 @@ class AppEmbed extends V1Embed {
16704
16804
  * to be embedded.
16705
16805
  */
16706
16806
  async render() {
16707
- super.render();
16807
+ await super.render();
16708
16808
  const src = this.getIFrameSrc();
16709
16809
  await this.renderV1Embed(src);
16710
16810
  return this;
@@ -16983,12 +17083,11 @@ class LiveboardEmbed extends V1Embed {
16983
17083
  this.navigateToLiveboard(libId);
16984
17084
  }
16985
17085
  }
16986
- handleRenderForPrerender() {
17086
+ async handleRenderForPrerender() {
16987
17087
  if (isUndefined$1(this.viewConfig.liveboardId)) {
16988
- this.prerenderGeneric();
16989
- return;
17088
+ return this.prerenderGeneric();
16990
17089
  }
16991
- super.handleRenderForPrerender();
17090
+ return super.handleRenderForPrerender();
16992
17091
  }
16993
17092
  /**
16994
17093
  * Triggers an event to the embedded app
@@ -17013,7 +17112,7 @@ class LiveboardEmbed extends V1Embed {
17013
17112
  * visualization ID and the runtime filters.
17014
17113
  */
17015
17114
  async render() {
17016
- super.render();
17115
+ await super.render();
17017
17116
  const src = this.getIFrameSrc();
17018
17117
  await this.renderV1Embed(src);
17019
17118
  this.showPreviewLoader();
@@ -17221,7 +17320,7 @@ class SearchEmbed extends TsEmbed {
17221
17320
  * Render the embedded ThoughtSpot search
17222
17321
  */
17223
17322
  async render() {
17224
- super.render();
17323
+ await super.render();
17225
17324
  this.viewConfig;
17226
17325
  const src = this.getIFrameSrc();
17227
17326
  await this.renderIFrame(src);
@@ -17288,7 +17387,7 @@ class SearchBarEmbed extends TsEmbed {
17288
17387
  * Render the embedded ThoughtSpot search
17289
17388
  */
17290
17389
  async render() {
17291
- super.render();
17390
+ await super.render();
17292
17391
  const src = this.getIFrameSrc();
17293
17392
  await this.renderIFrame(src);
17294
17393
  return this;
@@ -17712,7 +17811,7 @@ class ConversationMessage extends TsEmbed {
17712
17811
  return `${this.getEmbedBasePath(query)}/embed/${path}${tsPostHashParams}`;
17713
17812
  }
17714
17813
  async render() {
17715
- super.render();
17814
+ await super.render();
17716
17815
  const src = this.getIframeSrc();
17717
17816
  await this.renderIFrame(src);
17718
17817
  return this;
@@ -17840,7 +17939,7 @@ class ConversationEmbed extends TsEmbed {
17840
17939
  return `${this.getEmbedBasePath(query)}/embed/${path}${tsPostHashParams}`;
17841
17940
  }
17842
17941
  async render() {
17843
- super.render();
17942
+ await super.render();
17844
17943
  const src = this.getIframeSrc();
17845
17944
  await this.renderIFrame(src);
17846
17945
  return this;
@@ -17916,7 +18015,7 @@ class SageEmbed extends V1Embed {
17916
18015
  * @returns {SageEmbed} Eureka/Sage embed
17917
18016
  */
17918
18017
  async render() {
17919
- super.render();
18018
+ await super.render();
17920
18019
  const src = this.getIFrameSrc();
17921
18020
  await this.renderV1Embed(src);
17922
18021
  return this;