@thoughtspot/visual-embed-sdk 1.33.0-alpha.2 → 1.33.0-dc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (516) hide show
  1. package/cjs/package.json +12 -28
  2. package/cjs/src/auth.d.ts +0 -1
  3. package/cjs/src/auth.d.ts.map +1 -1
  4. package/cjs/src/auth.js +1 -2
  5. package/cjs/src/auth.js.map +1 -1
  6. package/cjs/src/auth.spec.d.ts +1 -11
  7. package/cjs/src/auth.spec.d.ts.map +1 -1
  8. package/cjs/src/auth.spec.js +5 -14
  9. package/cjs/src/auth.spec.js.map +1 -1
  10. package/cjs/src/authToken.d.ts +4 -0
  11. package/cjs/src/authToken.d.ts.map +1 -1
  12. package/cjs/src/authToken.js +4 -0
  13. package/cjs/src/authToken.js.map +1 -1
  14. package/cjs/src/css-variables.d.ts +46 -3
  15. package/cjs/src/css-variables.d.ts.map +1 -1
  16. package/cjs/src/embed/app.d.ts +47 -14
  17. package/cjs/src/embed/app.d.ts.map +1 -1
  18. package/cjs/src/embed/app.js +10 -1
  19. package/cjs/src/embed/app.js.map +1 -1
  20. package/cjs/src/embed/app.spec.js +32 -0
  21. package/cjs/src/embed/app.spec.js.map +1 -1
  22. package/cjs/src/embed/base.d.ts +35 -33
  23. package/cjs/src/embed/base.d.ts.map +1 -1
  24. package/cjs/src/embed/base.js +35 -33
  25. package/cjs/src/embed/base.js.map +1 -1
  26. package/cjs/src/embed/bodyless-conversation.d.ts +26 -0
  27. package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -0
  28. package/cjs/src/embed/bodyless-conversation.js +70 -0
  29. package/cjs/src/embed/bodyless-conversation.js.map +1 -0
  30. package/cjs/src/embed/bodyless-conversation.spec.d.ts +2 -0
  31. package/cjs/src/embed/bodyless-conversation.spec.d.ts.map +1 -0
  32. package/cjs/src/embed/bodyless-conversation.spec.js +125 -0
  33. package/cjs/src/embed/bodyless-conversation.spec.js.map +1 -0
  34. package/cjs/src/embed/conversation.d.ts +28 -0
  35. package/cjs/src/embed/conversation.d.ts.map +1 -0
  36. package/cjs/src/embed/conversation.js +34 -0
  37. package/cjs/src/embed/conversation.js.map +1 -0
  38. package/cjs/src/embed/conversation.spec.d.ts +2 -0
  39. package/cjs/src/embed/conversation.spec.d.ts.map +1 -0
  40. package/cjs/src/embed/conversation.spec.js +32 -0
  41. package/cjs/src/embed/conversation.spec.js.map +1 -0
  42. package/cjs/src/embed/embed.spec.js +0 -19
  43. package/cjs/src/embed/embed.spec.js.map +1 -1
  44. package/cjs/src/embed/liveboard.d.ts +49 -0
  45. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  46. package/cjs/src/embed/liveboard.js +21 -1
  47. package/cjs/src/embed/liveboard.js.map +1 -1
  48. package/cjs/src/embed/liveboard.spec.js +43 -0
  49. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  50. package/cjs/src/embed/search.d.ts +0 -13
  51. package/cjs/src/embed/search.d.ts.map +1 -1
  52. package/cjs/src/embed/search.js.map +1 -1
  53. package/cjs/src/embed/ts-embed.d.ts +3 -2
  54. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  55. package/cjs/src/embed/ts-embed.js +10 -13
  56. package/cjs/src/embed/ts-embed.js.map +1 -1
  57. package/cjs/src/embed/ts-embed.spec.js +0 -9
  58. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  59. package/cjs/src/index.d.ts +4 -1
  60. package/cjs/src/index.d.ts.map +1 -1
  61. package/cjs/src/index.js +7 -1
  62. package/cjs/src/index.js.map +1 -1
  63. package/cjs/src/mixpanel-service.d.ts +4 -0
  64. package/cjs/src/mixpanel-service.d.ts.map +1 -1
  65. package/cjs/src/mixpanel-service.js +4 -0
  66. package/cjs/src/mixpanel-service.js.map +1 -1
  67. package/cjs/src/react/index.d.ts +39 -1
  68. package/cjs/src/react/index.d.ts.map +1 -1
  69. package/cjs/src/react/index.js +37 -1
  70. package/cjs/src/react/index.js.map +1 -1
  71. package/cjs/src/test/test-utils.d.ts +13 -0
  72. package/cjs/src/test/test-utils.d.ts.map +1 -1
  73. package/cjs/src/test/test-utils.js +41 -4
  74. package/cjs/src/test/test-utils.js.map +1 -1
  75. package/cjs/src/tokenizedFetch.d.ts.map +1 -1
  76. package/cjs/src/tokenizedFetch.js +5 -1
  77. package/cjs/src/tokenizedFetch.js.map +1 -1
  78. package/cjs/src/types.d.ts +166 -22
  79. package/cjs/src/types.d.ts.map +1 -1
  80. package/cjs/src/types.js +143 -12
  81. package/cjs/src/types.js.map +1 -1
  82. package/cjs/src/utils/answerService/answerService.d.ts +34 -0
  83. package/cjs/src/utils/answerService/answerService.d.ts.map +1 -0
  84. package/cjs/src/utils/answerService/answerService.js +142 -0
  85. package/cjs/src/utils/answerService/answerService.js.map +1 -0
  86. package/cjs/src/utils/answerService/answerService.spec.d.ts +1 -0
  87. package/cjs/src/utils/answerService/answerService.spec.d.ts.map +1 -0
  88. package/cjs/src/utils/answerService/answerService.spec.js +1 -0
  89. package/cjs/src/utils/answerService/answerService.spec.js.map +1 -0
  90. package/cjs/src/utils/answerService/graphql-queries.d.ts +6 -0
  91. package/cjs/src/utils/answerService/graphql-queries.d.ts.map +1 -0
  92. package/cjs/src/utils/answerService/graphql-queries.js +123 -0
  93. package/cjs/src/utils/answerService/graphql-queries.js.map +1 -0
  94. package/cjs/src/utils/answerService.d.ts +10 -0
  95. package/cjs/src/utils/answerService.d.ts.map +1 -0
  96. package/cjs/src/utils/answerService.js +61 -0
  97. package/cjs/src/utils/answerService.js.map +1 -0
  98. package/cjs/src/utils/answerService.spec.d.ts +2 -0
  99. package/cjs/src/utils/answerService.spec.d.ts.map +1 -0
  100. package/cjs/src/utils/answerService.spec.js +31 -0
  101. package/cjs/src/utils/answerService.spec.js.map +1 -0
  102. package/cjs/src/utils/authService/authService.spec.js +11 -2
  103. package/cjs/src/utils/authService/authService.spec.js.map +1 -1
  104. package/cjs/src/utils/authService/tokenizedAuthService.d.ts +0 -2
  105. package/cjs/src/utils/authService/tokenizedAuthService.d.ts.map +1 -1
  106. package/cjs/src/utils/authService/tokenizedAuthService.js +0 -2
  107. package/cjs/src/utils/authService/tokenizedAuthService.js.map +1 -1
  108. package/cjs/src/utils/authService.d.ts +37 -0
  109. package/cjs/src/utils/authService.d.ts.map +1 -0
  110. package/cjs/src/utils/authService.js +106 -0
  111. package/cjs/src/utils/authService.js.map +1 -0
  112. package/cjs/src/utils/authService.spec.d.ts +2 -0
  113. package/cjs/src/utils/authService.spec.d.ts.map +1 -0
  114. package/cjs/src/utils/authService.spec.js +72 -0
  115. package/cjs/src/utils/authService.spec.js.map +1 -0
  116. package/cjs/src/utils/global-styles.spec.d.ts +2 -0
  117. package/cjs/src/utils/global-styles.spec.d.ts.map +1 -0
  118. package/cjs/src/utils/global-styles.spec.js +21 -0
  119. package/cjs/src/utils/global-styles.spec.js.map +1 -0
  120. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts +2 -0
  121. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  122. package/cjs/src/utils/graphql/answerService/answer-queries.js +32 -2
  123. package/cjs/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  124. package/cjs/src/utils/graphql/answerService/answerService.d.ts +23 -0
  125. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  126. package/cjs/src/utils/graphql/answerService/answerService.js +76 -8
  127. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  128. package/cjs/src/utils/graphql/answerService/answerService.spec.js +109 -0
  129. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  130. package/cjs/src/utils/graphql/answerService/graphql-queries.d.ts +5 -0
  131. package/cjs/src/utils/graphql/answerService/graphql-queries.d.ts.map +1 -0
  132. package/cjs/src/utils/graphql/answerService/graphql-queries.js +80 -0
  133. package/cjs/src/utils/graphql/answerService/graphql-queries.js.map +1 -0
  134. package/cjs/src/utils/graphql/conversationService/conversation-queries.d.ts +3 -0
  135. package/cjs/src/utils/graphql/conversationService/conversation-queries.d.ts.map +1 -0
  136. package/cjs/src/utils/graphql/conversationService/conversation-queries.js +318 -0
  137. package/cjs/src/utils/graphql/conversationService/conversation-queries.js.map +1 -0
  138. package/cjs/src/utils/graphql/conversationService/conversation-service.d.ts +12 -0
  139. package/cjs/src/utils/graphql/conversationService/conversation-service.d.ts.map +1 -0
  140. package/cjs/src/utils/graphql/conversationService/conversation-service.js +89 -0
  141. package/cjs/src/utils/graphql/conversationService/conversation-service.js.map +1 -0
  142. package/cjs/src/utils/graphql/graphql-request.d.ts.map +1 -1
  143. package/cjs/src/utils/graphql/graphql-request.spec.d.ts +2 -0
  144. package/cjs/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
  145. package/cjs/src/utils/graphql/graphql-request.spec.js +48 -0
  146. package/cjs/src/utils/graphql/graphql-request.spec.js.map +1 -0
  147. package/cjs/src/utils/graphql/nlsService/conversation-queries.d.ts +3 -0
  148. package/cjs/src/utils/graphql/nlsService/conversation-queries.d.ts.map +1 -0
  149. package/cjs/src/utils/graphql/nlsService/conversation-queries.js +313 -0
  150. package/cjs/src/utils/graphql/nlsService/conversation-queries.js.map +1 -0
  151. package/cjs/src/utils/graphql/nlsService/conversation-service.d.ts +12 -0
  152. package/cjs/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -0
  153. package/cjs/src/utils/graphql/nlsService/conversation-service.js +75 -0
  154. package/cjs/src/utils/graphql/nlsService/conversation-service.js.map +1 -0
  155. package/cjs/src/utils/graphql/nlsService/nls-answer-queries.d.ts +2 -0
  156. package/cjs/src/utils/graphql/nlsService/nls-answer-queries.d.ts.map +1 -0
  157. package/cjs/src/utils/graphql/nlsService/nls-answer-queries.js +403 -0
  158. package/cjs/src/utils/graphql/nlsService/nls-answer-queries.js.map +1 -0
  159. package/cjs/src/utils/graphql/nlsService/nls-answer-service.d.ts +12 -0
  160. package/cjs/src/utils/graphql/nlsService/nls-answer-service.d.ts.map +1 -0
  161. package/cjs/src/utils/graphql/nlsService/nls-answer-service.js +55 -0
  162. package/cjs/src/utils/graphql/nlsService/nls-answer-service.js.map +1 -0
  163. package/cjs/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts +2 -0
  164. package/cjs/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts.map +1 -0
  165. package/cjs/src/utils/graphql/nlsService/nls-answer-service.spec.js +33 -0
  166. package/cjs/src/utils/graphql/nlsService/nls-answer-service.spec.js.map +1 -0
  167. package/cjs/src/utils/graphql/preview-service.d.ts +6 -0
  168. package/cjs/src/utils/graphql/preview-service.d.ts.map +1 -1
  169. package/cjs/src/utils/graphql/preview-service.js +6 -0
  170. package/cjs/src/utils/graphql/preview-service.js.map +1 -1
  171. package/cjs/src/utils/graphql/preview-service.spec.d.ts +2 -0
  172. package/cjs/src/utils/graphql/preview-service.spec.d.ts.map +1 -0
  173. package/cjs/src/utils/graphql/preview-service.spec.js +20 -0
  174. package/cjs/src/utils/graphql/preview-service.spec.js.map +1 -0
  175. package/cjs/src/utils/graphql/spotterService/conversation-queries.d.ts +3 -0
  176. package/cjs/src/utils/graphql/spotterService/conversation-queries.d.ts.map +1 -0
  177. package/cjs/src/utils/graphql/spotterService/conversation-queries.js +318 -0
  178. package/cjs/src/utils/graphql/spotterService/conversation-queries.js.map +1 -0
  179. package/cjs/src/utils/graphql/spotterService/conversation-service.d.ts +12 -0
  180. package/cjs/src/utils/graphql/spotterService/conversation-service.d.ts.map +1 -0
  181. package/cjs/src/utils/graphql/spotterService/conversation-service.js +89 -0
  182. package/cjs/src/utils/graphql/spotterService/conversation-service.js.map +1 -0
  183. package/cjs/src/utils/graphql/spotterService/nls-answer-queries.d.ts +2 -0
  184. package/cjs/src/utils/graphql/spotterService/nls-answer-queries.d.ts.map +1 -0
  185. package/cjs/src/utils/graphql/spotterService/nls-answer-queries.js +403 -0
  186. package/cjs/src/utils/graphql/spotterService/nls-answer-queries.js.map +1 -0
  187. package/cjs/src/utils/graphql/spotterService/nls-answer-service.d.ts +12 -0
  188. package/cjs/src/utils/graphql/spotterService/nls-answer-service.d.ts.map +1 -0
  189. package/cjs/src/utils/graphql/spotterService/nls-answer-service.js +55 -0
  190. package/cjs/src/utils/graphql/spotterService/nls-answer-service.js.map +1 -0
  191. package/cjs/src/utils/liveboardService/liveboardService.d.ts +3 -0
  192. package/cjs/src/utils/liveboardService/liveboardService.d.ts.map +1 -0
  193. package/cjs/src/utils/liveboardService/liveboardService.js +50 -0
  194. package/cjs/src/utils/liveboardService/liveboardService.js.map +1 -0
  195. package/cjs/src/utils/liveboardService/liveboardService.spec.d.ts +2 -0
  196. package/cjs/src/utils/liveboardService/liveboardService.spec.d.ts.map +1 -0
  197. package/cjs/src/utils/liveboardService/liveboardService.spec.js +64 -0
  198. package/cjs/src/utils/liveboardService/liveboardService.spec.js.map +1 -0
  199. package/cjs/src/utils/processData.js +2 -2
  200. package/cjs/src/utils/processData.js.map +1 -1
  201. package/cjs/src/utils/processData.spec.js +15 -0
  202. package/cjs/src/utils/processData.spec.js.map +1 -1
  203. package/cjs/src/utils/processTrigger.d.ts +1 -0
  204. package/cjs/src/utils/processTrigger.d.ts.map +1 -1
  205. package/cjs/src/utils/processTrigger.js +3 -3
  206. package/cjs/src/utils/processTrigger.js.map +1 -1
  207. package/cjs/src/utils/processTrigger.spec.js +10 -0
  208. package/cjs/src/utils/processTrigger.spec.js.map +1 -1
  209. package/cjs/src/utils.d.ts.map +1 -1
  210. package/cjs/src/utils.js +1 -3
  211. package/cjs/src/utils.js.map +1 -1
  212. package/dist/src/auth.d.ts +0 -1
  213. package/dist/src/auth.d.ts.map +1 -1
  214. package/dist/src/auth.spec.d.ts +1 -11
  215. package/dist/src/auth.spec.d.ts.map +1 -1
  216. package/dist/src/authToken.d.ts +4 -0
  217. package/dist/src/authToken.d.ts.map +1 -1
  218. package/dist/src/css-variables.d.ts +46 -3
  219. package/dist/src/css-variables.d.ts.map +1 -1
  220. package/dist/src/embed/app.d.ts +47 -14
  221. package/dist/src/embed/app.d.ts.map +1 -1
  222. package/dist/src/embed/base.d.ts +35 -33
  223. package/dist/src/embed/base.d.ts.map +1 -1
  224. package/dist/src/embed/bodyless-conversation.d.ts +26 -0
  225. package/dist/src/embed/bodyless-conversation.d.ts.map +1 -0
  226. package/dist/src/embed/bodyless-conversation.spec.d.ts +2 -0
  227. package/dist/src/embed/bodyless-conversation.spec.d.ts.map +1 -0
  228. package/dist/src/embed/conversation.d.ts +28 -0
  229. package/dist/src/embed/conversation.d.ts.map +1 -0
  230. package/dist/src/embed/conversation.spec.d.ts +2 -0
  231. package/dist/src/embed/conversation.spec.d.ts.map +1 -0
  232. package/dist/src/embed/liveboard.d.ts +49 -0
  233. package/dist/src/embed/liveboard.d.ts.map +1 -1
  234. package/dist/src/embed/search.d.ts +0 -13
  235. package/dist/src/embed/search.d.ts.map +1 -1
  236. package/dist/src/embed/ts-embed.d.ts +3 -2
  237. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  238. package/dist/src/index.d.ts +4 -1
  239. package/dist/src/index.d.ts.map +1 -1
  240. package/dist/src/mixpanel-service.d.ts +4 -0
  241. package/dist/src/mixpanel-service.d.ts.map +1 -1
  242. package/dist/src/react/index.d.ts +39 -1
  243. package/dist/src/react/index.d.ts.map +1 -1
  244. package/dist/src/test/test-utils.d.ts +13 -0
  245. package/dist/src/test/test-utils.d.ts.map +1 -1
  246. package/dist/src/tokenizedFetch.d.ts.map +1 -1
  247. package/dist/src/types.d.ts +166 -22
  248. package/dist/src/types.d.ts.map +1 -1
  249. package/dist/src/utils/authService/tokenizedAuthService.d.ts +0 -2
  250. package/dist/src/utils/authService/tokenizedAuthService.d.ts.map +1 -1
  251. package/dist/src/utils/global-styles.spec.d.ts +2 -0
  252. package/dist/src/utils/global-styles.spec.d.ts.map +1 -0
  253. package/dist/src/utils/graphql/answerService/answer-queries.d.ts +2 -0
  254. package/dist/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  255. package/dist/src/utils/graphql/answerService/answerService.d.ts +23 -0
  256. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  257. package/dist/src/utils/graphql/graphql-request.d.ts.map +1 -1
  258. package/dist/src/utils/graphql/graphql-request.spec.d.ts +2 -0
  259. package/dist/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
  260. package/dist/src/utils/graphql/nlsService/conversation-queries.d.ts +3 -0
  261. package/dist/src/utils/graphql/nlsService/conversation-queries.d.ts.map +1 -0
  262. package/dist/src/utils/graphql/nlsService/conversation-service.d.ts +12 -0
  263. package/dist/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -0
  264. package/dist/src/utils/graphql/nlsService/nls-answer-queries.d.ts +2 -0
  265. package/dist/src/utils/graphql/nlsService/nls-answer-queries.d.ts.map +1 -0
  266. package/dist/src/utils/graphql/nlsService/nls-answer-service.d.ts +12 -0
  267. package/dist/src/utils/graphql/nlsService/nls-answer-service.d.ts.map +1 -0
  268. package/dist/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts +2 -0
  269. package/dist/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts.map +1 -0
  270. package/dist/src/utils/graphql/preview-service.d.ts +6 -0
  271. package/dist/src/utils/graphql/preview-service.d.ts.map +1 -1
  272. package/dist/src/utils/graphql/preview-service.spec.d.ts +2 -0
  273. package/dist/src/utils/graphql/preview-service.spec.d.ts.map +1 -0
  274. package/dist/src/utils/liveboardService/liveboardService.d.ts +3 -0
  275. package/dist/src/utils/liveboardService/liveboardService.d.ts.map +1 -0
  276. package/dist/src/utils/liveboardService/liveboardService.spec.d.ts +2 -0
  277. package/dist/src/utils/liveboardService/liveboardService.spec.d.ts.map +1 -0
  278. package/dist/src/utils/processTrigger.d.ts +1 -0
  279. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  280. package/dist/src/utils.d.ts.map +1 -1
  281. package/dist/tsembed-react.es.js +8087 -175
  282. package/dist/tsembed-react.js +8028 -170
  283. package/dist/tsembed.es.js +8981 -202
  284. package/dist/tsembed.js +8947 -221
  285. package/dist/visual-embed-sdk-react-full.d.ts +485 -98
  286. package/dist/visual-embed-sdk-react.d.ts +485 -98
  287. package/dist/visual-embed-sdk.d.ts +421 -97
  288. package/lib/package.json +12 -28
  289. package/lib/src/auth.d.ts +0 -1
  290. package/lib/src/auth.d.ts.map +1 -1
  291. package/lib/src/auth.js +1 -2
  292. package/lib/src/auth.js.map +1 -1
  293. package/lib/src/auth.spec.d.ts +1 -11
  294. package/lib/src/auth.spec.d.ts.map +1 -1
  295. package/lib/src/auth.spec.js +3 -12
  296. package/lib/src/auth.spec.js.map +1 -1
  297. package/lib/src/authToken.d.ts +4 -0
  298. package/lib/src/authToken.d.ts.map +1 -1
  299. package/lib/src/authToken.js +4 -0
  300. package/lib/src/authToken.js.map +1 -1
  301. package/lib/src/css-variables.d.ts +46 -3
  302. package/lib/src/css-variables.d.ts.map +1 -1
  303. package/lib/src/embed/app.d.ts +47 -14
  304. package/lib/src/embed/app.d.ts.map +1 -1
  305. package/lib/src/embed/app.js +10 -1
  306. package/lib/src/embed/app.js.map +1 -1
  307. package/lib/src/embed/app.spec.js +32 -0
  308. package/lib/src/embed/app.spec.js.map +1 -1
  309. package/lib/src/embed/base.d.ts +35 -33
  310. package/lib/src/embed/base.d.ts.map +1 -1
  311. package/lib/src/embed/base.js +35 -33
  312. package/lib/src/embed/base.js.map +1 -1
  313. package/lib/src/embed/bodyless-conversation.d.ts +26 -0
  314. package/lib/src/embed/bodyless-conversation.d.ts.map +1 -0
  315. package/lib/src/embed/bodyless-conversation.js +66 -0
  316. package/lib/src/embed/bodyless-conversation.js.map +1 -0
  317. package/lib/src/embed/bodyless-conversation.spec.d.ts +2 -0
  318. package/lib/src/embed/bodyless-conversation.spec.d.ts.map +1 -0
  319. package/lib/src/embed/bodyless-conversation.spec.js +122 -0
  320. package/lib/src/embed/bodyless-conversation.spec.js.map +1 -0
  321. package/lib/src/embed/conversation.d.ts +28 -0
  322. package/lib/src/embed/conversation.d.ts.map +1 -0
  323. package/lib/src/embed/conversation.js +30 -0
  324. package/lib/src/embed/conversation.js.map +1 -0
  325. package/lib/src/embed/conversation.spec.d.ts +2 -0
  326. package/lib/src/embed/conversation.spec.d.ts.map +1 -0
  327. package/lib/src/embed/conversation.spec.js +29 -0
  328. package/lib/src/embed/conversation.spec.js.map +1 -0
  329. package/lib/src/embed/embed.spec.js +0 -19
  330. package/lib/src/embed/embed.spec.js.map +1 -1
  331. package/lib/src/embed/liveboard.d.ts +49 -0
  332. package/lib/src/embed/liveboard.d.ts.map +1 -1
  333. package/lib/src/embed/liveboard.js +21 -1
  334. package/lib/src/embed/liveboard.js.map +1 -1
  335. package/lib/src/embed/liveboard.spec.js +43 -0
  336. package/lib/src/embed/liveboard.spec.js.map +1 -1
  337. package/lib/src/embed/search.d.ts +0 -13
  338. package/lib/src/embed/search.d.ts.map +1 -1
  339. package/lib/src/embed/search.js.map +1 -1
  340. package/lib/src/embed/ts-embed.d.ts +3 -2
  341. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  342. package/lib/src/embed/ts-embed.js +10 -13
  343. package/lib/src/embed/ts-embed.js.map +1 -1
  344. package/lib/src/embed/ts-embed.spec.js +0 -9
  345. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  346. package/lib/src/index.d.ts +4 -1
  347. package/lib/src/index.d.ts.map +1 -1
  348. package/lib/src/index.js +4 -1
  349. package/lib/src/index.js.map +1 -1
  350. package/lib/src/mixpanel-service.d.ts +4 -0
  351. package/lib/src/mixpanel-service.d.ts.map +1 -1
  352. package/lib/src/mixpanel-service.js +4 -0
  353. package/lib/src/mixpanel-service.js.map +1 -1
  354. package/lib/src/react/index.d.ts +39 -1
  355. package/lib/src/react/index.d.ts.map +1 -1
  356. package/lib/src/react/index.js +36 -0
  357. package/lib/src/react/index.js.map +1 -1
  358. package/lib/src/test/test-utils.d.ts +13 -0
  359. package/lib/src/test/test-utils.d.ts.map +1 -1
  360. package/lib/src/test/test-utils.js +38 -3
  361. package/lib/src/test/test-utils.js.map +1 -1
  362. package/lib/src/tokenizedFetch.d.ts.map +1 -1
  363. package/lib/src/tokenizedFetch.js +5 -1
  364. package/lib/src/tokenizedFetch.js.map +1 -1
  365. package/lib/src/types.d.ts +166 -22
  366. package/lib/src/types.d.ts.map +1 -1
  367. package/lib/src/types.js +143 -12
  368. package/lib/src/types.js.map +1 -1
  369. package/lib/src/utils/authService/authService.spec.js +11 -2
  370. package/lib/src/utils/authService/authService.spec.js.map +1 -1
  371. package/lib/src/utils/authService/tokenizedAuthService.d.ts +0 -2
  372. package/lib/src/utils/authService/tokenizedAuthService.d.ts.map +1 -1
  373. package/lib/src/utils/authService/tokenizedAuthService.js +0 -2
  374. package/lib/src/utils/authService/tokenizedAuthService.js.map +1 -1
  375. package/lib/src/utils/global-styles.spec.d.ts +2 -0
  376. package/lib/src/utils/global-styles.spec.d.ts.map +1 -0
  377. package/lib/src/utils/global-styles.spec.js +19 -0
  378. package/lib/src/utils/global-styles.spec.js.map +1 -0
  379. package/lib/src/utils/graphql/answerService/answer-queries.d.ts +2 -0
  380. package/lib/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  381. package/lib/src/utils/graphql/answerService/answer-queries.js +31 -1
  382. package/lib/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  383. package/lib/src/utils/graphql/answerService/answerService.d.ts +23 -0
  384. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  385. package/lib/src/utils/graphql/answerService/answerService.js +76 -8
  386. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  387. package/lib/src/utils/graphql/answerService/answerService.spec.js +110 -1
  388. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  389. package/lib/src/utils/graphql/conversationService/conversation-queries.d.ts +3 -0
  390. package/lib/src/utils/graphql/conversationService/conversation-queries.d.ts.map +1 -0
  391. package/lib/src/utils/graphql/conversationService/conversation-queries.js +315 -0
  392. package/lib/src/utils/graphql/conversationService/conversation-queries.js.map +1 -0
  393. package/lib/src/utils/graphql/conversationService/conversation-service.d.ts +12 -0
  394. package/lib/src/utils/graphql/conversationService/conversation-service.d.ts.map +1 -0
  395. package/lib/src/utils/graphql/conversationService/conversation-service.js +84 -0
  396. package/lib/src/utils/graphql/conversationService/conversation-service.js.map +1 -0
  397. package/lib/src/utils/graphql/graphql-request.d.ts.map +1 -1
  398. package/lib/src/utils/graphql/graphql-request.spec.d.ts +2 -0
  399. package/lib/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
  400. package/lib/src/utils/graphql/graphql-request.spec.js +45 -0
  401. package/lib/src/utils/graphql/graphql-request.spec.js.map +1 -0
  402. package/lib/src/utils/graphql/nlsService/conversation-queries.d.ts +3 -0
  403. package/lib/src/utils/graphql/nlsService/conversation-queries.d.ts.map +1 -0
  404. package/lib/src/utils/graphql/nlsService/conversation-queries.js +310 -0
  405. package/lib/src/utils/graphql/nlsService/conversation-queries.js.map +1 -0
  406. package/lib/src/utils/graphql/nlsService/conversation-service.d.ts +12 -0
  407. package/lib/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -0
  408. package/lib/src/utils/graphql/nlsService/conversation-service.js +70 -0
  409. package/lib/src/utils/graphql/nlsService/conversation-service.js.map +1 -0
  410. package/lib/src/utils/graphql/nlsService/nls-answer-queries.d.ts +2 -0
  411. package/lib/src/utils/graphql/nlsService/nls-answer-queries.d.ts.map +1 -0
  412. package/lib/src/utils/graphql/nlsService/nls-answer-queries.js +400 -0
  413. package/lib/src/utils/graphql/nlsService/nls-answer-queries.js.map +1 -0
  414. package/lib/src/utils/graphql/nlsService/nls-answer-service.d.ts +12 -0
  415. package/lib/src/utils/graphql/nlsService/nls-answer-service.d.ts.map +1 -0
  416. package/lib/src/utils/graphql/nlsService/nls-answer-service.js +50 -0
  417. package/lib/src/utils/graphql/nlsService/nls-answer-service.js.map +1 -0
  418. package/lib/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts +2 -0
  419. package/lib/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts.map +1 -0
  420. package/lib/src/utils/graphql/nlsService/nls-answer-service.spec.js +31 -0
  421. package/lib/src/utils/graphql/nlsService/nls-answer-service.spec.js.map +1 -0
  422. package/lib/src/utils/graphql/preview-service.d.ts +6 -0
  423. package/lib/src/utils/graphql/preview-service.d.ts.map +1 -1
  424. package/lib/src/utils/graphql/preview-service.js +6 -0
  425. package/lib/src/utils/graphql/preview-service.js.map +1 -1
  426. package/lib/src/utils/graphql/preview-service.spec.d.ts +2 -0
  427. package/lib/src/utils/graphql/preview-service.spec.d.ts.map +1 -0
  428. package/lib/src/utils/graphql/preview-service.spec.js +18 -0
  429. package/lib/src/utils/graphql/preview-service.spec.js.map +1 -0
  430. package/lib/src/utils/graphql/spotterService/conversation-queries.d.ts +3 -0
  431. package/lib/src/utils/graphql/spotterService/conversation-queries.d.ts.map +1 -0
  432. package/lib/src/utils/graphql/spotterService/conversation-queries.js +315 -0
  433. package/lib/src/utils/graphql/spotterService/conversation-queries.js.map +1 -0
  434. package/lib/src/utils/graphql/spotterService/conversation-service.d.ts +12 -0
  435. package/lib/src/utils/graphql/spotterService/conversation-service.d.ts.map +1 -0
  436. package/lib/src/utils/graphql/spotterService/conversation-service.js +84 -0
  437. package/lib/src/utils/graphql/spotterService/conversation-service.js.map +1 -0
  438. package/lib/src/utils/graphql/spotterService/nls-answer-queries.d.ts +2 -0
  439. package/lib/src/utils/graphql/spotterService/nls-answer-queries.d.ts.map +1 -0
  440. package/lib/src/utils/graphql/spotterService/nls-answer-queries.js +400 -0
  441. package/lib/src/utils/graphql/spotterService/nls-answer-queries.js.map +1 -0
  442. package/lib/src/utils/graphql/spotterService/nls-answer-service.d.ts +12 -0
  443. package/lib/src/utils/graphql/spotterService/nls-answer-service.d.ts.map +1 -0
  444. package/lib/src/utils/graphql/spotterService/nls-answer-service.js +50 -0
  445. package/lib/src/utils/graphql/spotterService/nls-answer-service.js.map +1 -0
  446. package/lib/src/utils/liveboardService/liveboardService.d.ts +3 -0
  447. package/lib/src/utils/liveboardService/liveboardService.d.ts.map +1 -0
  448. package/lib/src/utils/liveboardService/liveboardService.js +46 -0
  449. package/lib/src/utils/liveboardService/liveboardService.js.map +1 -0
  450. package/lib/src/utils/liveboardService/liveboardService.spec.d.ts +2 -0
  451. package/lib/src/utils/liveboardService/liveboardService.spec.d.ts.map +1 -0
  452. package/lib/src/utils/liveboardService/liveboardService.spec.js +61 -0
  453. package/lib/src/utils/liveboardService/liveboardService.spec.js.map +1 -0
  454. package/lib/src/utils/processData.js +2 -2
  455. package/lib/src/utils/processData.js.map +1 -1
  456. package/lib/src/utils/processData.spec.js +15 -0
  457. package/lib/src/utils/processData.spec.js.map +1 -1
  458. package/lib/src/utils/processTrigger.d.ts +1 -0
  459. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  460. package/lib/src/utils/processTrigger.js +1 -1
  461. package/lib/src/utils/processTrigger.js.map +1 -1
  462. package/lib/src/utils/processTrigger.spec.js +10 -0
  463. package/lib/src/utils/processTrigger.spec.js.map +1 -1
  464. package/lib/src/utils.d.ts.map +1 -1
  465. package/lib/src/utils.js +1 -3
  466. package/lib/src/utils.js.map +1 -1
  467. package/lib/src/visual-embed-sdk.d.ts +433 -97
  468. package/package.json +12 -28
  469. package/src/auth.spec.ts +3 -12
  470. package/src/auth.ts +1 -2
  471. package/src/authToken.ts +4 -0
  472. package/src/css-variables.ts +49 -3
  473. package/src/embed/app.spec.ts +47 -0
  474. package/src/embed/app.ts +54 -13
  475. package/src/embed/base.ts +35 -33
  476. package/src/embed/bodyless-conversation.spec.ts +141 -0
  477. package/src/embed/bodyless-conversation.ts +95 -0
  478. package/src/embed/conversation.spec.ts +46 -0
  479. package/src/embed/conversation.ts +58 -0
  480. package/src/embed/embed.spec.ts +0 -22
  481. package/src/embed/liveboard.spec.ts +62 -0
  482. package/src/embed/liveboard.ts +69 -0
  483. package/src/embed/search.ts +0 -13
  484. package/src/embed/ts-embed.spec.ts +0 -11
  485. package/src/embed/ts-embed.ts +13 -13
  486. package/src/index.ts +7 -0
  487. package/src/mixpanel-service.ts +4 -0
  488. package/src/react/index.tsx +89 -41
  489. package/src/test/test-utils.ts +46 -3
  490. package/src/tokenizedFetch.ts +5 -1
  491. package/src/types.ts +167 -21
  492. package/src/utils/authService/authService.spec.ts +11 -2
  493. package/src/utils/authService/tokenizedAuthService.ts +0 -2
  494. package/src/utils/global-styles.spec.ts +20 -0
  495. package/src/utils/graphql/answerService/answer-queries.ts +33 -1
  496. package/src/utils/graphql/answerService/answerService.spec.ts +131 -0
  497. package/src/utils/graphql/answerService/answerService.ts +102 -10
  498. package/src/utils/graphql/graphql-request.spec.ts +51 -0
  499. package/src/utils/graphql/graphql-request.ts +1 -1
  500. package/src/utils/graphql/nlsService/conversation-queries.ts +310 -0
  501. package/src/utils/graphql/nlsService/conversation-service.ts +81 -0
  502. package/src/utils/graphql/nlsService/nls-answer-queries.ts +399 -0
  503. package/src/utils/graphql/nlsService/nls-answer-service.spec.ts +35 -0
  504. package/src/utils/graphql/nlsService/nls-answer-service.ts +58 -0
  505. package/src/utils/graphql/preview-service.spec.ts +20 -0
  506. package/src/utils/graphql/preview-service.ts +6 -0
  507. package/src/utils/liveboardService/liveboardService.spec.ts +63 -0
  508. package/src/utils/liveboardService/liveboardService.ts +55 -0
  509. package/src/utils/processData.spec.ts +17 -0
  510. package/src/utils/processData.ts +2 -2
  511. package/src/utils/processTrigger.spec.ts +19 -0
  512. package/src/utils/processTrigger.ts +1 -1
  513. package/src/utils.ts +1 -3
  514. package/dist/src/embed/searchEmbed-basic-auth.spec.d.ts +0 -2
  515. package/dist/src/embed/searchEmbed-basic-auth.spec.d.ts.map +0 -1
  516. package/src/embed/searchEmbed-basic-auth.spec.ts +0 -110
@@ -0,0 +1,95 @@
1
+ import { ViewConfig, Param } from '../types';
2
+ import { TsEmbed } from './ts-embed';
3
+ import { Conversation as ConversationService } from '../utils/graphql/nlsService/conversation-service';
4
+ import { getEmbedConfig } from './embedConfig';
5
+ import { getQueryParamString } from '../utils';
6
+
7
+ export interface BodylessConversationViewConfig extends ViewConfig {
8
+ /**
9
+ * The ID of the worksheet to use for the conversation.
10
+ */
11
+ worksheetId: string;
12
+ }
13
+
14
+ interface ConversationMessageViewConfig extends BodylessConversationViewConfig {
15
+ sessionId: string;
16
+ genNo: number;
17
+ acSessionId: string;
18
+ acGenNo: number;
19
+ }
20
+
21
+ class ConversationMessage extends TsEmbed {
22
+ constructor(container: HTMLElement, protected viewConfig: ConversationMessageViewConfig) {
23
+ super(container, viewConfig);
24
+ }
25
+
26
+ public getIframeSrc() {
27
+ const {
28
+ sessionId,
29
+ genNo,
30
+ acSessionId,
31
+ acGenNo,
32
+ } = this.viewConfig;
33
+ const path = 'conv-assist-answer';
34
+ const queryParams = this.getBaseQueryParams();
35
+
36
+ queryParams[Param.HideActions] = [...(queryParams[Param.HideActions] ?? [])];
37
+ let query = '';
38
+ const queryParamsString = getQueryParamString(queryParams, true);
39
+ if (queryParamsString) {
40
+ query = `?${queryParamsString}`;
41
+ }
42
+ const tsPostHashParams = this.getThoughtSpotPostUrlParams({
43
+ sessionId,
44
+ genNo,
45
+ acSessionId,
46
+ acGenNo,
47
+ });
48
+
49
+ return `${this.getEmbedBasePath(query)}/embed/${path}${tsPostHashParams}`;
50
+ }
51
+
52
+ public async render(): Promise<ConversationMessage> {
53
+ super.render();
54
+ const src = this.getIframeSrc();
55
+ await this.renderIFrame(src);
56
+ return this;
57
+ }
58
+ }
59
+
60
+ /**
61
+ * Create a conversation embed, which can be integrated inside
62
+ * chatbots or other conversational interfaces.
63
+ * @group Embed components
64
+ * @version SDK: 1.34.0 | ThoughtSpot: 10.3.0.cl
65
+ */
66
+ export class BodylessConversation {
67
+ private conversationService: ConversationService;
68
+
69
+ constructor(private viewConfig: BodylessConversationViewConfig) {
70
+ const embedConfig = getEmbedConfig();
71
+
72
+ this.conversationService = new ConversationService(
73
+ embedConfig.thoughtSpotHost,
74
+ viewConfig.worksheetId,
75
+ );
76
+ }
77
+
78
+ public async sendMessage(userMessage: string) {
79
+ const { data, error } = await this.conversationService.sendMessage(userMessage);
80
+ if (error) {
81
+ return { error };
82
+ }
83
+
84
+ const container = document.createElement('div');
85
+ const embed = new ConversationMessage(container, {
86
+ ...this.viewConfig,
87
+ sessionId: data.sessionId,
88
+ genNo: data.genNo,
89
+ acSessionId: data.stateKey.transactionId,
90
+ acGenNo: data.stateKey.generationNumber,
91
+ });
92
+ await embed.render();
93
+ return { container };
94
+ }
95
+ }
@@ -0,0 +1,46 @@
1
+ import {
2
+ ConversationEmbed,
3
+ ConversationViewConfig,
4
+ } from './conversation';
5
+ import * as authInstance from '../auth';
6
+ import { init } from '../index';
7
+ import { Action, AuthType, RuntimeFilterOp } from '../types';
8
+ import {
9
+ executeAfterWait,
10
+ getDocumentBody,
11
+ getIFrameSrc,
12
+ getRootEl,
13
+ fixedEncodeURI,
14
+ defaultParamsWithoutHiddenActions as defaultParams,
15
+ expectUrlMatchesWithParams,
16
+ } from '../test/test-utils';
17
+
18
+ const thoughtSpotHost = 'tshost';
19
+
20
+ beforeAll(() => {
21
+ init({
22
+ thoughtSpotHost,
23
+ authType: AuthType.None,
24
+ });
25
+ jest.spyOn(authInstance, 'postLoginService').mockImplementation(() => Promise.resolve({}));
26
+ spyOn(window, 'alert');
27
+ document.body.innerHTML = getDocumentBody();
28
+ });
29
+
30
+ describe('ConversationEmbed', () => {
31
+ it('should render the conversation embed', async () => {
32
+ const viewConfig: ConversationViewConfig = {
33
+ worksheetId: 'worksheetId',
34
+ searchOptions: {
35
+ searchQuery: 'searchQuery',
36
+ },
37
+ };
38
+
39
+ const conversationEmbed = new ConversationEmbed(getRootEl(), viewConfig);
40
+ await conversationEmbed.render();
41
+ expectUrlMatchesWithParams(
42
+ getIFrameSrc(),
43
+ `http://${thoughtSpotHost}/v2/?${defaultParams}#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`,
44
+ );
45
+ });
46
+ });
@@ -0,0 +1,58 @@
1
+ import { ViewConfig, Param } from '../types';
2
+ import { TsEmbed } from './ts-embed';
3
+ import { getQueryParamString } from '../utils';
4
+
5
+ /**
6
+ * Configuration for search options
7
+ */
8
+ export interface SearchOptions {
9
+ /**
10
+ * The query string to pass to start the Conversation.
11
+ */
12
+ searchQuery: string;
13
+ }
14
+
15
+ export interface ConversationViewConfig extends ViewConfig {
16
+ /**
17
+ * The ID of the worksheet to use for the conversation.
18
+ */
19
+ worksheetId: string;
20
+ /**
21
+ * Ability to pass a starting search query to the conversation.
22
+ */
23
+ searchOptions?: SearchOptions;
24
+ }
25
+
26
+ export class ConversationEmbed extends TsEmbed {
27
+ constructor(container: HTMLElement, protected viewConfig: ConversationViewConfig) {
28
+ super(container, viewConfig);
29
+ }
30
+
31
+ public getIframeSrc() {
32
+ const {
33
+ worksheetId,
34
+ searchOptions,
35
+ } = this.viewConfig;
36
+ const path = 'insights/conv-assist';
37
+ const queryParams = this.getBaseQueryParams();
38
+
39
+ let query = '';
40
+ const queryParamsString = getQueryParamString(queryParams, true);
41
+ if (queryParamsString) {
42
+ query = `?${queryParamsString}`;
43
+ }
44
+ const tsPostHashParams = this.getThoughtSpotPostUrlParams({
45
+ worksheet: worksheetId,
46
+ query: searchOptions.searchQuery,
47
+ });
48
+
49
+ return `${this.getEmbedBasePath(query)}/embed/${path}${tsPostHashParams}`;
50
+ }
51
+
52
+ public async render(): Promise<ConversationEmbed> {
53
+ super.render();
54
+ const src = this.getIframeSrc();
55
+ await this.renderIFrame(src);
56
+ return this;
57
+ }
58
+ }
@@ -53,25 +53,3 @@ describe('test view config', () => {
53
53
  });
54
54
  });
55
55
  });
56
-
57
- describe('Custom CSS Url', () => {
58
- beforeEach(() => {
59
- document.body.innerHTML = getDocumentBody();
60
- });
61
-
62
- test('passing customCssUrl should set the correct query params on the iframe', async (done) => {
63
- init({
64
- thoughtSpotHost,
65
- authType: AuthType.None,
66
- customCssUrl: 'bla.com/foo.css',
67
- });
68
-
69
- const embed = new SearchEmbed(getRootEl(), defaultViewConfig);
70
- embed.render();
71
- executeAfterWait(() => {
72
- const iframe = getIFrameEl();
73
- expect(iframe.src.includes('customCssUrl=bla.com/foo.css')).toBe(true);
74
- done();
75
- });
76
- });
77
- });
@@ -67,6 +67,20 @@ describe('Liveboard/viz embed tests', () => {
67
67
  });
68
68
  });
69
69
 
70
+ test('should render liveboard with data panel v2 flag set to true by default', async () => {
71
+ const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
72
+ ...defaultViewConfig,
73
+ liveboardId,
74
+ } as LiveboardViewConfig);
75
+ liveboardEmbed.render();
76
+ await executeAfterWait(() => {
77
+ expectUrlMatchesWithParams(
78
+ getIFrameSrc(),
79
+ `http://${thoughtSpotHost}/?embedApp=true${defaultParams}${prefixParams}&enableDataPanelV2=true#/embed/viz/${liveboardId}`,
80
+ );
81
+ });
82
+ });
83
+
70
84
  test('should set disabled actions', async () => {
71
85
  const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
72
86
  disabledActions: [Action.DownloadAsCsv, Action.DownloadAsPdf, Action.DownloadAsXlsx],
@@ -227,6 +241,54 @@ describe('Liveboard/viz embed tests', () => {
227
241
  });
228
242
  });
229
243
 
244
+ test('Should add isLiveboardCompactHeaderEnabled flag to the iframe src', async () => {
245
+ const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
246
+ ...defaultViewConfig,
247
+ liveboardId,
248
+ isLiveboardCompactHeaderEnabled: false,
249
+ } as LiveboardViewConfig);
250
+
251
+ liveboardEmbed.render();
252
+ await executeAfterWait(() => {
253
+ expectUrlMatchesWithParams(
254
+ getIFrameSrc(),
255
+ `http://${thoughtSpotHost}/?embedApp=true${defaultParams}&isLiveboardHeaderV2Enabled=false${prefixParams}#/embed/viz/${liveboardId}`,
256
+ );
257
+ });
258
+ });
259
+
260
+ test('Should add showLiveboardReverifyBanner flag to the iframe src', async () => {
261
+ const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
262
+ ...defaultViewConfig,
263
+ liveboardId,
264
+ showLiveboardReverifyBanner: false,
265
+ } as LiveboardViewConfig);
266
+
267
+ liveboardEmbed.render();
268
+ await executeAfterWait(() => {
269
+ expectUrlMatchesWithParams(
270
+ getIFrameSrc(),
271
+ `http://${thoughtSpotHost}/?embedApp=true${defaultParams}&showLiveboardReverifyBanner=false${prefixParams}#/embed/viz/${liveboardId}`,
272
+ );
273
+ });
274
+ });
275
+
276
+ test('Should add showLiveboardVerifiedBadge flag to the iframe src', async () => {
277
+ const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
278
+ ...defaultViewConfig,
279
+ liveboardId,
280
+ showLiveboardVerifiedBadge: false,
281
+ } as LiveboardViewConfig);
282
+
283
+ liveboardEmbed.render();
284
+ await executeAfterWait(() => {
285
+ expectUrlMatchesWithParams(
286
+ getIFrameSrc(),
287
+ `http://${thoughtSpotHost}/?embedApp=true${defaultParams}&showLiveboardVerifiedBadge=false${prefixParams}#/embed/viz/${liveboardId}`,
288
+ );
289
+ });
290
+ });
291
+
230
292
  test('should not append runtime filters in URL if excludeRuntimeFiltersfromURL is true', async () => {
231
293
  const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
232
294
  ...defaultViewConfig,
@@ -284,6 +284,48 @@ export interface LiveboardViewConfig
284
284
  * @version SDK: 1.32.0 | ThoughtSpot: 10.0.0.cl
285
285
  */
286
286
  showPreviewLoader?: boolean;
287
+ /**
288
+ * This flag is used to enable the compact header in liveboard
289
+ * @type {boolean}
290
+ * @default false
291
+ * @version SDK: 1.35.0 | ThoughtSpot:10.3.0.cl
292
+ * @example
293
+ * ```js
294
+ * const embed = new LiveboardEmbed('#embed-container', {
295
+ * ... // other options
296
+ * isLiveboardCompactHeaderEnabled: true,
297
+ * })
298
+ * ```
299
+ */
300
+ isLiveboardCompactHeaderEnabled?: boolean;
301
+ /**
302
+ * This flag is used to show/hide verified Icon in liveboard compact header
303
+ * @type {boolean}
304
+ * @default true
305
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
306
+ * @example
307
+ * ```js
308
+ * const embed = new LiveboardEmbed('#embed-container', {
309
+ * ... // other options
310
+ * showLiveboardVerifiedBadge: true,
311
+ * })
312
+ * ```
313
+ */
314
+ showLiveboardVerifiedBadge?: boolean;
315
+ /**
316
+ * This flag is used to show/hide re-verify banner in liveboard compact header
317
+ * @type {boolean}
318
+ * @default true
319
+ * @version SDK: 1.35.0 | ThoughtSpot:10.4.0.cl
320
+ * @example
321
+ * ```js
322
+ * const embed = new LiveboardEmbed('#embed-container', {
323
+ * ... // other options
324
+ * showLiveboardReverifyBanner: true,
325
+ * })
326
+ * ```
327
+ */
328
+ showLiveboardReverifyBanner?: boolean;
287
329
  }
288
330
 
289
331
  /**
@@ -338,8 +380,12 @@ export class LiveboardEmbed extends V1Embed {
338
380
  showLiveboardDescription,
339
381
  showLiveboardTitle,
340
382
  isLiveboardHeaderSticky = true,
383
+ isLiveboardCompactHeaderEnabled = false,
384
+ showLiveboardVerifiedBadge = true,
385
+ showLiveboardReverifyBanner = true,
341
386
  enableAskSage,
342
387
  enable2ColumnLayout,
388
+ dataPanelV2 = true,
343
389
  } = this.viewConfig;
344
390
 
345
391
  const preventLiveboardFilterRemoval = this.viewConfig.preventLiveboardFilterRemoval
@@ -387,7 +433,11 @@ export class LiveboardEmbed extends V1Embed {
387
433
  }
388
434
 
389
435
  params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
436
+ params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
437
+ params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
438
+ params[Param.ShowLiveboardReverifyBanner] = showLiveboardReverifyBanner;
390
439
 
440
+ params[Param.DataPanelV2Enabled] = dataPanelV2;
391
441
  const queryParams = getQueryParamString(params, true);
392
442
 
393
443
  return queryParams;
@@ -557,6 +607,25 @@ export class LiveboardEmbed extends V1Embed {
557
607
  this.render();
558
608
  }
559
609
  }
610
+
611
+ /**
612
+ * Returns the full url of the liveboard/viz which can be used to open
613
+ * this liveboard inside the full Thoughtspot application in a new tab.
614
+ *
615
+ * @returns url string
616
+ */
617
+ public getLiveboardUrl(): string {
618
+ let url = `${this.thoughtSpotHost}/#/pinboard/${this.viewConfig.liveboardId}`;
619
+ if (this.viewConfig.activeTabId) {
620
+ url = `${url}/tab/${this.viewConfig.activeTabId}`;
621
+ }
622
+
623
+ if (this.viewConfig.vizId) {
624
+ url = `${url}/${this.viewConfig.vizId}`;
625
+ }
626
+
627
+ return url;
628
+ }
560
629
  }
561
630
 
562
631
  /**
@@ -227,19 +227,6 @@ export interface SearchViewConfig
227
227
  * ```
228
228
  */
229
229
  hideSearchBar?: boolean;
230
- /**
231
- * Flag to control Data panel experience
232
- * @default true
233
- * @version SDK: 1.26.0 | Thoughtspot: 9.7.0.cl
234
- * @example
235
- * ```js
236
- * const embed = new SearchEmbed('#tsEmbed', {
237
- * ... // other options
238
- * dataPanelV2:false,
239
- * })
240
- * ```
241
- */
242
- dataPanelV2?: boolean;
243
230
  /**
244
231
  * Flag to set if last selected dataSource should be used
245
232
  * @version: SDK: 1.24.0
@@ -56,7 +56,6 @@ beforeAll(() => {
56
56
  const customisations = {
57
57
  style: {
58
58
  customCSS: {},
59
- customCSSUrl: 'http://localhost:3000',
60
59
  },
61
60
  content: {},
62
61
  };
@@ -64,7 +63,6 @@ const customisations = {
64
63
  const customisationsView = {
65
64
  style: {
66
65
  customCSS: {},
67
- customCSSUrl: 'http://localhost:8000',
68
66
  },
69
67
  content: {
70
68
  strings: {
@@ -95,7 +93,6 @@ describe('Unit test case for ts embed', () => {
95
93
  init({
96
94
  thoughtSpotHost: 'tshost',
97
95
  customizations: customisations,
98
- customCssUrl: 'http://localhost:5000',
99
96
  authType: AuthType.TrustedAuthTokenCookieless,
100
97
  getAuthToken: () => Promise.resolve('test_auth_token2'),
101
98
  });
@@ -136,7 +133,6 @@ describe('Unit test case for ts embed', () => {
136
133
  thoughtSpotHost: 'tshost',
137
134
  authType: AuthType.None,
138
135
  customizations: customisations,
139
- customCssUrl: 'http://localhost:5000',
140
136
  });
141
137
  });
142
138
 
@@ -199,9 +195,6 @@ describe('Unit test case for ts embed', () => {
199
195
  reorderedHomepageModules: [],
200
196
  },
201
197
  });
202
- expect(getIFrameSrc()).toContain(
203
- `customCssUrl=${customisationsView.style.customCSSUrl}`,
204
- );
205
198
  });
206
199
 
207
200
  test('hide home page modules from view Config should be part of app_init payload', async () => {
@@ -601,7 +594,6 @@ describe('Unit test case for ts embed', () => {
601
594
  init({
602
595
  thoughtSpotHost: 'tshost',
603
596
  customizations: customisations,
604
- customCssUrl: 'http://localhost:5000',
605
597
  authType: AuthType.TrustedAuthTokenCookieless,
606
598
  getAuthToken: () => Promise.resolve('test_auth_token1'),
607
599
  });
@@ -655,7 +647,6 @@ describe('Unit test case for ts embed', () => {
655
647
  init({
656
648
  thoughtSpotHost: 'tshost',
657
649
  customizations: customisations,
658
- customCssUrl: 'http://localhost:5000',
659
650
  authType: AuthType.TrustedAuthTokenCookieless,
660
651
  getAuthToken: () => Promise.reject(),
661
652
  });
@@ -790,7 +781,6 @@ describe('Unit test case for ts embed', () => {
790
781
  init({
791
782
  thoughtSpotHost: 'tshost',
792
783
  customizations: customisations,
793
- customCssUrl: 'http://localhost:5000',
794
784
  authType: AuthType.TrustedAuthToken,
795
785
  username: 'tsadmin',
796
786
  getAuthToken: () => Promise.resolve('test_auth_token3'),
@@ -819,7 +809,6 @@ describe('Unit test case for ts embed', () => {
819
809
  init({
820
810
  thoughtSpotHost: 'tshost',
821
811
  customizations: customisations,
822
- customCssUrl: 'http://localhost:5000',
823
812
  authType: AuthType.TrustedAuthToken,
824
813
  username: 'tsadmin',
825
814
  getAuthToken: () => Promise.resolve('test_auth_token4'),
@@ -454,13 +454,6 @@ export class TsEmbed {
454
454
  return queryParams;
455
455
  }
456
456
 
457
- // TODO remove embedConfig.customCssUrl
458
- const cssUrlParam = customizations?.style?.customCSSUrl || this.embedConfig.customCssUrl;
459
-
460
- if (cssUrlParam) {
461
- queryParams[Param.CustomCSSUrl] = cssUrlParam;
462
- }
463
-
464
457
  if (disabledActions?.length) {
465
458
  queryParams[Param.DisableActions] = disabledActions;
466
459
  }
@@ -500,9 +493,7 @@ export class TsEmbed {
500
493
  if (locale !== undefined) {
501
494
  queryParams[Param.Locale] = locale;
502
495
  }
503
- if (additionalFlags && additionalFlags.constructor.name === 'Object') {
504
- Object.assign(queryParams, additionalFlags);
505
- }
496
+
506
497
  if (linkOverride) {
507
498
  queryParams[Param.LinkOverride] = linkOverride;
508
499
  }
@@ -516,6 +507,13 @@ export class TsEmbed {
516
507
  queryParams[Param.OverrideNativeConsole] = true;
517
508
  queryParams[Param.ClientLogLevel] = this.embedConfig.logLevel;
518
509
 
510
+ if (additionalFlags && additionalFlags.constructor.name === 'Object') {
511
+ Object.assign(queryParams, additionalFlags);
512
+ }
513
+
514
+ // Do not add any flags below this, as we want additional flags to
515
+ // override other flags
516
+
519
517
  return queryParams;
520
518
  }
521
519
 
@@ -1022,7 +1020,9 @@ export class TsEmbed {
1022
1020
  * THOUGHTSPOT URL params starts with a prefix "ts-"
1023
1021
  * @version SDK: 1.14.0 | ThoughtSpot: 8.4.0.cl, 8.4.1-sw
1024
1022
  */
1025
- public getThoughtSpotPostUrlParams(): string {
1023
+ public getThoughtSpotPostUrlParams(
1024
+ additionalParams: { [key: string]: string | number } = {},
1025
+ ): string {
1026
1026
  const urlHash = window.location.hash;
1027
1027
  const queryParams = window.location.search;
1028
1028
  const postHashParams = urlHash.split('?');
@@ -1038,6 +1038,7 @@ export class TsEmbed {
1038
1038
  };
1039
1039
  queryParamsObj.forEach(addKeyValuePairCb);
1040
1040
  postURLParamsObj.forEach(addKeyValuePairCb);
1041
+ Object.entries(additionalParams).forEach(([k, v]) => params.append(k, v as string));
1041
1042
 
1042
1043
  let tsParams = params.toString();
1043
1044
  tsParams = tsParams ? `?${tsParams}` : '';
@@ -1221,7 +1222,7 @@ export class TsEmbed {
1221
1222
  * @version SDK: 1.25.0 / ThoughtSpot 9.10.0
1222
1223
  */
1223
1224
  public async getAnswerService(vizId?: string): Promise<AnswerService> {
1224
- const { session } = await this.trigger(HostEvent.GetAnswerSession, vizId);
1225
+ const { session } = await this.trigger(HostEvent.GetAnswerSession, vizId ? { vizId } : {});
1225
1226
 
1226
1227
  return new AnswerService(session, null, this.embedConfig.thoughtSpotHost);
1227
1228
  }
@@ -1298,7 +1299,6 @@ export class V1Embed extends TsEmbed {
1298
1299
 
1299
1300
  /**
1300
1301
  * Only for testing purposes.
1301
- *
1302
1302
  * @hidden
1303
1303
  */
1304
1304
  // eslint-disable-next-line camelcase
package/src/index.ts CHANGED
@@ -19,6 +19,7 @@ import {
19
19
  import { PinboardEmbed, LiveboardViewConfig, LiveboardEmbed } from './embed/liveboard';
20
20
  import { SearchEmbed, SearchViewConfig } from './embed/search';
21
21
  import { SearchBarEmbed, SearchBarViewConfig } from './embed/search-bar';
22
+ import { BodylessConversation, BodylessConversationViewConfig } from './embed/bodyless-conversation';
22
23
  import {
23
24
  AuthFailureType, AuthStatus, AuthEvent, AuthEventEmitter,
24
25
  } from './auth';
@@ -55,6 +56,8 @@ import { AnswerService, SessionInterface, UnderlyingDataPoint } from './utils/gr
55
56
  import { getEmbedConfig } from './embed/embedConfig';
56
57
  import { uploadMixpanelEvent, MIXPANEL_EVENT } from './mixpanel-service';
57
58
  import { tokenizedFetch } from './tokenizedFetch';
59
+ import { getAnswerFromQuery } from './utils/graphql/nlsService/nls-answer-service';
60
+ import { createLiveboardWithAnswers } from './utils/liveboardService/liveboardService';
58
61
 
59
62
  export {
60
63
  init,
@@ -67,12 +70,16 @@ export {
67
70
  getEmbedConfig as getInitConfig,
68
71
  getSessionInfo,
69
72
  tokenizedFetch,
73
+ getAnswerFromQuery,
74
+ createLiveboardWithAnswers,
70
75
  SearchEmbed,
71
76
  SearchBarEmbed,
72
77
  PinboardEmbed,
73
78
  LiveboardEmbed,
74
79
  SageEmbed,
75
80
  AppEmbed,
81
+ BodylessConversation,
82
+ BodylessConversationViewConfig,
76
83
  AuthFailureType,
77
84
  AuthStatus,
78
85
  AuthEvent,
@@ -11,6 +11,10 @@ export const EndPoints = {
11
11
  const mixpanelLib = mixpanel.default || mixpanel;
12
12
  let mixpanelInstance: mixpanel.Mixpanel;
13
13
 
14
+ /**
15
+ * Enum of mixpanel events
16
+ * @hidden
17
+ */
14
18
  export const MIXPANEL_EVENT = {
15
19
  VISUAL_SDK_RENDER_START: 'visual-sdk-render-start',
16
20
  VISUAL_SDK_CALLED_INIT: 'visual-sdk-called-init',