@thoughtspot/visual-embed-sdk 1.26.1 → 1.26.2

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 (267) hide show
  1. package/cjs/package.json +2 -2
  2. package/cjs/src/auth.d.ts +0 -12
  3. package/cjs/src/auth.d.ts.map +1 -1
  4. package/cjs/src/auth.js +16 -54
  5. package/cjs/src/auth.js.map +1 -1
  6. package/cjs/src/auth.spec.d.ts.map +1 -1
  7. package/cjs/src/auth.spec.js +42 -32
  8. package/cjs/src/auth.spec.js.map +1 -1
  9. package/cjs/src/authToken.d.ts +4 -0
  10. package/cjs/src/authToken.d.ts.map +1 -0
  11. package/cjs/src/authToken.js +61 -0
  12. package/cjs/src/authToken.js.map +1 -0
  13. package/cjs/src/embed/TsEmbed.d.ts +302 -0
  14. package/cjs/src/embed/TsEmbed.d.ts.map +1 -0
  15. package/cjs/src/embed/TsEmbed.js +851 -0
  16. package/cjs/src/embed/TsEmbed.js.map +1 -0
  17. package/cjs/src/embed/base.d.ts +0 -9
  18. package/cjs/src/embed/base.d.ts.map +1 -1
  19. package/cjs/src/embed/base.js +21 -44
  20. package/cjs/src/embed/base.js.map +1 -1
  21. package/cjs/src/embed/base.spec.js +15 -14
  22. package/cjs/src/embed/base.spec.js.map +1 -1
  23. package/cjs/src/embed/embedConfig.d.ts +18 -0
  24. package/cjs/src/embed/embedConfig.d.ts.map +1 -0
  25. package/cjs/src/embed/embedConfig.js +25 -0
  26. package/cjs/src/embed/embedConfig.js.map +1 -0
  27. package/cjs/src/embed/search.d.ts.map +1 -1
  28. package/cjs/src/embed/search.js +3 -1
  29. package/cjs/src/embed/search.js.map +1 -1
  30. package/cjs/src/embed/searchEmbed-basic-auth.spec.js +3 -2
  31. package/cjs/src/embed/searchEmbed-basic-auth.spec.js.map +1 -1
  32. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  33. package/cjs/src/embed/ts-embed.js +5 -3
  34. package/cjs/src/embed/ts-embed.js.map +1 -1
  35. package/cjs/src/embed/ts-embed.spec.js +58 -49
  36. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  37. package/cjs/src/index.d.ts +2 -1
  38. package/cjs/src/index.d.ts.map +1 -1
  39. package/cjs/src/index.js +2 -1
  40. package/cjs/src/index.js.map +1 -1
  41. package/cjs/src/tokenizedFetch.d.ts +2 -0
  42. package/cjs/src/tokenizedFetch.d.ts.map +1 -0
  43. package/cjs/src/tokenizedFetch.js +20 -0
  44. package/cjs/src/tokenizedFetch.js.map +1 -0
  45. package/cjs/src/types.d.ts +6 -0
  46. package/cjs/src/types.d.ts.map +1 -1
  47. package/cjs/src/types.js.map +1 -1
  48. package/cjs/src/utils/answerService.d.ts +10 -0
  49. package/cjs/src/utils/answerService.d.ts.map +1 -0
  50. package/cjs/src/utils/answerService.js +61 -0
  51. package/cjs/src/utils/answerService.js.map +1 -0
  52. package/cjs/src/utils/answerService.spec.d.ts +2 -0
  53. package/cjs/src/utils/answerService.spec.d.ts.map +1 -0
  54. package/cjs/src/utils/answerService.spec.js +31 -0
  55. package/cjs/src/utils/answerService.spec.js.map +1 -0
  56. package/cjs/src/utils/authService/authService.d.ts +45 -0
  57. package/cjs/src/utils/authService/authService.d.ts.map +1 -0
  58. package/cjs/src/utils/authService/authService.js +115 -0
  59. package/cjs/src/utils/authService/authService.js.map +1 -0
  60. package/cjs/src/utils/authService/authService.spec.d.ts +2 -0
  61. package/cjs/src/utils/authService/authService.spec.d.ts.map +1 -0
  62. package/cjs/src/utils/authService/authService.spec.js +82 -0
  63. package/cjs/src/utils/authService/authService.spec.js.map +1 -0
  64. package/cjs/src/utils/authService/index.d.ts +3 -0
  65. package/cjs/src/utils/authService/index.d.ts.map +1 -0
  66. package/cjs/src/utils/authService/index.js +14 -0
  67. package/cjs/src/utils/authService/index.js.map +1 -0
  68. package/cjs/src/utils/authService/tokenisedAuthSerice.d.ts +11 -0
  69. package/cjs/src/utils/authService/tokenisedAuthSerice.d.ts.map +1 -0
  70. package/cjs/src/utils/authService/tokenisedAuthSerice.js +44 -0
  71. package/cjs/src/utils/authService/tokenisedAuthSerice.js.map +1 -0
  72. package/cjs/src/utils/authService/tokenizedAuthService.d.ts +11 -0
  73. package/cjs/src/utils/authService/tokenizedAuthService.d.ts.map +1 -0
  74. package/cjs/src/utils/authService/tokenizedAuthService.js +44 -0
  75. package/cjs/src/utils/authService/tokenizedAuthService.js.map +1 -0
  76. package/cjs/src/utils/authService.d.ts +12 -1
  77. package/cjs/src/utils/authService.d.ts.map +1 -1
  78. package/cjs/src/utils/authService.js +32 -16
  79. package/cjs/src/utils/authService.js.map +1 -1
  80. package/cjs/src/utils/authService.spec.js +3 -4
  81. package/cjs/src/utils/authService.spec.js.map +1 -1
  82. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  83. package/cjs/src/utils/graphql/answerService/answerService.js +2 -1
  84. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  85. package/cjs/src/utils/graphql/answerService/answerService.spec.js +15 -3
  86. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  87. package/cjs/src/utils/graphql/graphql-request.spec.d.ts +2 -0
  88. package/cjs/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
  89. package/cjs/src/utils/graphql/graphql-request.spec.js +39 -0
  90. package/cjs/src/utils/graphql/graphql-request.spec.js.map +1 -0
  91. package/cjs/src/utils/logger.d.ts +28 -0
  92. package/cjs/src/utils/logger.d.ts.map +1 -0
  93. package/cjs/src/utils/logger.js +82 -0
  94. package/cjs/src/utils/logger.js.map +1 -0
  95. package/cjs/src/utils/processData.d.ts.map +1 -1
  96. package/cjs/src/utils/processData.js +5 -4
  97. package/cjs/src/utils/processData.js.map +1 -1
  98. package/cjs/src/utils/processData.spec.js +8 -7
  99. package/cjs/src/utils/processData.spec.js.map +1 -1
  100. package/dist/src/auth.d.ts +0 -12
  101. package/dist/src/auth.d.ts.map +1 -1
  102. package/dist/src/auth.spec.d.ts.map +1 -1
  103. package/dist/src/authToken.d.ts +4 -0
  104. package/dist/src/authToken.d.ts.map +1 -0
  105. package/dist/src/embed/base.d.ts +0 -9
  106. package/dist/src/embed/base.d.ts.map +1 -1
  107. package/dist/src/embed/embedConfig.d.ts +18 -0
  108. package/dist/src/embed/embedConfig.d.ts.map +1 -0
  109. package/dist/src/embed/search.d.ts.map +1 -1
  110. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  111. package/dist/src/index.d.ts +2 -1
  112. package/dist/src/index.d.ts.map +1 -1
  113. package/dist/src/tokenizedFetch.d.ts +2 -0
  114. package/dist/src/tokenizedFetch.d.ts.map +1 -0
  115. package/dist/src/types.d.ts +6 -0
  116. package/dist/src/types.d.ts.map +1 -1
  117. package/dist/src/utils/answerService.d.ts +10 -0
  118. package/dist/src/utils/answerService.d.ts.map +1 -0
  119. package/dist/src/utils/answerService.spec.d.ts +2 -0
  120. package/dist/src/utils/answerService.spec.d.ts.map +1 -0
  121. package/dist/src/utils/authService/authService.d.ts +45 -0
  122. package/dist/src/utils/authService/authService.d.ts.map +1 -0
  123. package/dist/src/utils/authService/authService.spec.d.ts +2 -0
  124. package/dist/src/utils/authService/authService.spec.d.ts.map +1 -0
  125. package/dist/src/utils/authService/index.d.ts +3 -0
  126. package/dist/src/utils/authService/index.d.ts.map +1 -0
  127. package/dist/src/utils/authService/tokenisedAuthSerice.d.ts +11 -0
  128. package/dist/src/utils/authService/tokenisedAuthSerice.d.ts.map +1 -0
  129. package/dist/src/utils/authService/tokenizedAuthService.d.ts +11 -0
  130. package/dist/src/utils/authService/tokenizedAuthService.d.ts.map +1 -0
  131. package/dist/src/utils/authService.d.ts +12 -1
  132. package/dist/src/utils/authService.d.ts.map +1 -1
  133. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  134. package/dist/src/utils/graphql/graphql-request.spec.d.ts +2 -0
  135. package/dist/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
  136. package/dist/src/utils/logger.d.ts +28 -0
  137. package/dist/src/utils/logger.d.ts.map +1 -0
  138. package/dist/src/utils/processData.d.ts.map +1 -1
  139. package/dist/tsembed-react.es.js +201 -140
  140. package/dist/tsembed-react.js +201 -140
  141. package/dist/tsembed.es.js +230 -171
  142. package/dist/tsembed.js +230 -171
  143. package/dist/visual-embed-sdk-react-full.d.ts +23 -21
  144. package/dist/visual-embed-sdk-react.d.ts +23 -21
  145. package/dist/visual-embed-sdk.d.ts +23 -21
  146. package/lib/package.json +2 -2
  147. package/lib/src/auth.d.ts +0 -12
  148. package/lib/src/auth.d.ts.map +1 -1
  149. package/lib/src/auth.js +11 -48
  150. package/lib/src/auth.js.map +1 -1
  151. package/lib/src/auth.spec.d.ts.map +1 -1
  152. package/lib/src/auth.spec.js +42 -32
  153. package/lib/src/auth.spec.js.map +1 -1
  154. package/lib/src/authToken.d.ts +4 -0
  155. package/lib/src/authToken.d.ts.map +1 -0
  156. package/lib/src/authToken.js +56 -0
  157. package/lib/src/authToken.js.map +1 -0
  158. package/lib/src/embed/TsEmbed.d.ts +302 -0
  159. package/lib/src/embed/TsEmbed.d.ts.map +1 -0
  160. package/lib/src/embed/TsEmbed.js +847 -0
  161. package/lib/src/embed/TsEmbed.js.map +1 -0
  162. package/lib/src/embed/base.d.ts +0 -9
  163. package/lib/src/embed/base.d.ts.map +1 -1
  164. package/lib/src/embed/base.js +21 -43
  165. package/lib/src/embed/base.js.map +1 -1
  166. package/lib/src/embed/base.spec.js +15 -14
  167. package/lib/src/embed/base.spec.js.map +1 -1
  168. package/lib/src/embed/embedConfig.d.ts +18 -0
  169. package/lib/src/embed/embedConfig.d.ts.map +1 -0
  170. package/lib/src/embed/embedConfig.js +20 -0
  171. package/lib/src/embed/embedConfig.js.map +1 -0
  172. package/lib/src/embed/search.d.ts.map +1 -1
  173. package/lib/src/embed/search.js +4 -2
  174. package/lib/src/embed/search.js.map +1 -1
  175. package/lib/src/embed/searchEmbed-basic-auth.spec.js +3 -2
  176. package/lib/src/embed/searchEmbed-basic-auth.spec.js.map +1 -1
  177. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  178. package/lib/src/embed/ts-embed.js +4 -2
  179. package/lib/src/embed/ts-embed.js.map +1 -1
  180. package/lib/src/embed/ts-embed.spec.js +58 -49
  181. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  182. package/lib/src/index.d.ts +2 -1
  183. package/lib/src/index.d.ts.map +1 -1
  184. package/lib/src/index.js +2 -1
  185. package/lib/src/index.js.map +1 -1
  186. package/lib/src/tokenizedFetch.d.ts +2 -0
  187. package/lib/src/tokenizedFetch.d.ts.map +1 -0
  188. package/lib/src/tokenizedFetch.js +16 -0
  189. package/lib/src/tokenizedFetch.js.map +1 -0
  190. package/lib/src/types.d.ts +6 -0
  191. package/lib/src/types.d.ts.map +1 -1
  192. package/lib/src/types.js.map +1 -1
  193. package/lib/src/utils/answerService.d.ts +10 -0
  194. package/lib/src/utils/answerService.d.ts.map +1 -0
  195. package/lib/src/utils/answerService.js +57 -0
  196. package/lib/src/utils/answerService.js.map +1 -0
  197. package/lib/src/utils/answerService.spec.d.ts +2 -0
  198. package/lib/src/utils/answerService.spec.d.ts.map +1 -0
  199. package/lib/src/utils/answerService.spec.js +29 -0
  200. package/lib/src/utils/answerService.spec.js.map +1 -0
  201. package/lib/src/utils/authService/authService.d.ts +45 -0
  202. package/lib/src/utils/authService/authService.d.ts.map +1 -0
  203. package/lib/src/utils/authService/authService.js +107 -0
  204. package/lib/src/utils/authService/authService.js.map +1 -0
  205. package/lib/src/utils/authService/authService.spec.d.ts +2 -0
  206. package/lib/src/utils/authService/authService.spec.d.ts.map +1 -0
  207. package/lib/src/utils/authService/authService.spec.js +80 -0
  208. package/lib/src/utils/authService/authService.spec.js.map +1 -0
  209. package/lib/src/utils/authService/index.d.ts +3 -0
  210. package/lib/src/utils/authService/index.d.ts.map +1 -0
  211. package/lib/src/utils/authService/index.js +3 -0
  212. package/lib/src/utils/authService/index.js.map +1 -0
  213. package/lib/src/utils/authService/tokenisedAuthSerice.d.ts +11 -0
  214. package/lib/src/utils/authService/tokenisedAuthSerice.d.ts.map +1 -0
  215. package/lib/src/utils/authService/tokenisedAuthSerice.js +39 -0
  216. package/lib/src/utils/authService/tokenisedAuthSerice.js.map +1 -0
  217. package/lib/src/utils/authService/tokenizedAuthService.d.ts +11 -0
  218. package/lib/src/utils/authService/tokenizedAuthService.d.ts.map +1 -0
  219. package/lib/src/utils/authService/tokenizedAuthService.js +39 -0
  220. package/lib/src/utils/authService/tokenizedAuthService.js.map +1 -0
  221. package/lib/src/utils/authService.d.ts +12 -1
  222. package/lib/src/utils/authService.d.ts.map +1 -1
  223. package/lib/src/utils/authService.js +26 -10
  224. package/lib/src/utils/authService.js.map +1 -1
  225. package/lib/src/utils/authService.spec.js +1 -2
  226. package/lib/src/utils/authService.spec.js.map +1 -1
  227. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  228. package/lib/src/utils/graphql/answerService/answerService.js +2 -1
  229. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  230. package/lib/src/utils/graphql/answerService/answerService.spec.js +14 -3
  231. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  232. package/lib/src/utils/graphql/graphql-request.spec.d.ts +2 -0
  233. package/lib/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
  234. package/lib/src/utils/graphql/graphql-request.spec.js +36 -0
  235. package/lib/src/utils/graphql/graphql-request.spec.js.map +1 -0
  236. package/lib/src/utils/logger.d.ts +28 -0
  237. package/lib/src/utils/logger.d.ts.map +1 -0
  238. package/lib/src/utils/logger.js +75 -0
  239. package/lib/src/utils/logger.js.map +1 -0
  240. package/lib/src/utils/processData.d.ts.map +1 -1
  241. package/lib/src/utils/processData.js +4 -3
  242. package/lib/src/utils/processData.js.map +1 -1
  243. package/lib/src/utils/processData.spec.js +8 -7
  244. package/lib/src/utils/processData.spec.js.map +1 -1
  245. package/lib/src/visual-embed-sdk.d.ts +28 -22
  246. package/package.json +2 -2
  247. package/src/auth.spec.ts +77 -63
  248. package/src/auth.ts +12 -55
  249. package/src/authToken.ts +66 -0
  250. package/src/embed/base.spec.ts +18 -17
  251. package/src/embed/base.ts +26 -51
  252. package/src/embed/embedConfig.ts +23 -0
  253. package/src/embed/search.ts +10 -10
  254. package/src/embed/searchEmbed-basic-auth.spec.ts +3 -2
  255. package/src/embed/ts-embed.spec.ts +87 -75
  256. package/src/embed/ts-embed.ts +11 -20
  257. package/src/index.ts +8 -2
  258. package/src/tokenizedFetch.ts +18 -0
  259. package/src/types.ts +34 -23
  260. package/src/utils/{authService.spec.ts → authService/authService.spec.ts} +2 -3
  261. package/src/utils/{authService.ts → authService/authService.ts} +29 -34
  262. package/src/utils/authService/index.ts +9 -0
  263. package/src/utils/authService/tokenizedAuthService.ts +40 -0
  264. package/src/utils/graphql/answerService/answerService.spec.ts +16 -4
  265. package/src/utils/graphql/answerService/answerService.ts +2 -1
  266. package/src/utils/processData.spec.ts +19 -16
  267. package/src/utils/processData.ts +3 -2
@@ -0,0 +1,3 @@
1
+ export { EndPoints, fetchAuthPostService, fetchAuthService, fetchAuthTokenService, fetchBasicAuthService, verifyTokenService, } from './authService';
2
+ export { fetchLogoutService, fetchSessionInfoService } from './tokenizedAuthService';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EACT,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ *
3
+ * @param authVerificationUrl
4
+ */
5
+ export declare function fetchSessionInfoService(authVerificationUrl: string): Promise<any>;
6
+ /**
7
+ *
8
+ * @param thoughtSpotHost
9
+ */
10
+ export declare function fetchLogoutService(thoughtSpotHost: string): Promise<any>;
11
+ //# sourceMappingURL=tokenisedAuthSerice.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenisedAuthSerice.d.ts","sourceRoot":"","sources":["tokenisedAuthSerice.ts"],"names":[],"mappings":"AAiBA;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAIjF;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAQ9E"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ *
3
+ * @param authVerificationUrl
4
+ */
5
+ export declare function fetchSessionInfoService(authVerificationUrl: string): Promise<any>;
6
+ /**
7
+ *
8
+ * @param thoughtSpotHost
9
+ */
10
+ export declare function fetchLogoutService(thoughtSpotHost: string): Promise<any>;
11
+ //# sourceMappingURL=tokenizedAuthService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenizedAuthService.d.ts","sourceRoot":"","sources":["tokenizedAuthService.ts"],"names":[],"mappings":"AAiBA;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAIjF;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAQ9E"}
@@ -1,3 +1,14 @@
1
+ export declare const EndPoints: {
2
+ AUTH_VERIFICATION: string;
3
+ SAML_LOGIN_TEMPLATE: (targetUrl: string) => string;
4
+ OIDC_LOGIN_TEMPLATE: (targetUrl: string) => string;
5
+ TOKEN_LOGIN: string;
6
+ BASIC_LOGIN: string;
7
+ LOGOUT: string;
8
+ EXECUTE_TML: string;
9
+ EXPORT_TML: string;
10
+ IS_ACTIVE: string;
11
+ };
1
12
  /**
2
13
  *
3
14
  * @param authVerificationUrl
@@ -9,7 +20,7 @@ export declare function fetchSessionInfoService(authVerificationUrl: string): Pr
9
20
  * @param thoughtSpotHost : ThoughtSpot host to verify the token against.
10
21
  * @param authToken : Auth token to verify.
11
22
  */
12
- export declare function verifyTokenService(thoughtSpotHost: string, authToken: string): Promise<Response>;
23
+ export declare function verifyTokenService(thoughtSpotHost: string, authToken: string): Promise<boolean>;
13
24
  /**
14
25
  *
15
26
  * @param authEndpoint
@@ -1 +1 @@
1
- {"version":3,"file":"authService.d.ts","sourceRoot":"","sources":["authService.ts"],"names":[],"mappings":"AAiBA;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAIjF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAShG;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAE9E;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAClC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC,CAUd;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACtC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC,CAed;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACvC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,GAAG,CAAC,CAUd;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAQ9E"}
1
+ {"version":3,"file":"authService.d.ts","sourceRoot":"","sources":["authService.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;qCAEe,MAAM;qCACN,MAAM;;;;;;;CAO1C,CAAC;AAgBF;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAIjF;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACpC,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC,CAgBlB;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAE9E;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAClC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC,CAUd;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACtC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC,CAed;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACvC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,GAAG,CAAC,CAUd;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAQ9E"}
@@ -1 +1 @@
1
- {"version":3,"file":"answerService.d.ts","sourceRoot":"","sources":["answerService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM5D,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACnD;AAGD,oBAAY,aAAa;IACrB,gBAAgB,qBAAqB;IACrC,wBAAwB,6BAA6B;CACxD;AAED,UAAU,mBAAmB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,GAAG,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,aAAa;IAElB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,cAAc,CAAC;gBAHf,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,GAAG,EACX,eAAe,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,QAAQ,EAAE;IAK1B,eAAe;IAQf,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE;IASjC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE;IAS9B,SAAS,CAAC,MAAM,SAAI,EAAE,IAAI,SAAO;;;;IAmB9C;;;;;OAKG;IACU,YAAY,CAAC,UAAU,SAAU,EAAE,WAAW,UAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOhF,kBAAkB,CAAC,UAAU,SAAU,EAAE,WAAW,UAAQ,GAAG,MAAM;IAI5E;;;;;;;;;;;;;;;;OAgBG;IACU,yBAAyB,CAClC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,cAAc,CAAC,EAAE,mBAAmB,EAAE,GACvC,OAAO,CAAC,aAAa,CAAC;IA8CZ,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAe/D,UAAU;CAGpB"}
1
+ {"version":3,"file":"answerService.d.ts","sourceRoot":"","sources":["answerService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM5D,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACnD;AAGD,oBAAY,aAAa;IACrB,gBAAgB,qBAAqB;IACrC,wBAAwB,6BAA6B;CACxD;AAED,UAAU,mBAAmB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,GAAG,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,aAAa;IAElB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,cAAc,CAAC;gBAHf,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,GAAG,EACX,eAAe,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,QAAQ,EAAE;IAK1B,eAAe;IAQf,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE;IASjC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE;IAS9B,SAAS,CAAC,MAAM,SAAI,EAAE,IAAI,SAAO;;;;IAmB9C;;;;;OAKG;IACU,YAAY,CAAC,UAAU,SAAU,EAAE,WAAW,UAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOhF,kBAAkB,CAAC,UAAU,SAAU,EAAE,WAAW,UAAQ,GAAG,MAAM;IAI5E;;;;;;;;;;;;;;;;OAgBG;IACU,yBAAyB,CAClC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,cAAc,CAAC,EAAE,mBAAmB,EAAE,GACvC,OAAO,CAAC,aAAa,CAAC;IA8CZ,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAe/D,UAAU;CAGpB"}
@@ -0,0 +1,2 @@
1
+ import 'jest-fetch-mock';
2
+ //# sourceMappingURL=graphql-request.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphql-request.spec.d.ts","sourceRoot":"","sources":["graphql-request.spec.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,CAAC"}
@@ -0,0 +1,28 @@
1
+ declare enum LogLevel {
2
+ SILENT,
3
+ ERROR,
4
+ WARN,
5
+ INFO,
6
+ DEBUG,
7
+ TRACE
8
+ }
9
+ declare const setGlobalLogLevelOverride: (logLevel: LogLevel) => void;
10
+ declare const getLogger: (name?: string) => Logger;
11
+ declare class Logger {
12
+ private name;
13
+ private logLevel;
14
+ setLogLevel: (newLogLevel: LogLevel) => void;
15
+ getName: () => string;
16
+ getLogLevel: () => LogLevel;
17
+ constructor(name: string);
18
+ canLog(logLevel: LogLevel): boolean;
19
+ logMessages(args: any[], logLevel: LogLevel): Promise<void>;
20
+ log(...args: any[]): void;
21
+ info(...args: any[]): void;
22
+ debug(...args: any[]): void;
23
+ trace(...args: any[]): void;
24
+ error(...args: any[]): void;
25
+ warn(...args: any[]): void;
26
+ }
27
+ export { getLogger, Logger, setGlobalLogLevelOverride, LogLevel, };
28
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["logger.ts"],"names":[],"mappings":"AAEA,aAAK,QAAQ;IACX,MAAqB;IACrB,KAAmB;IACnB,IAAkB;IAClB,IAAkB;IAClB,KAAmB;IACnB,KAAmB;CACpB;AAeD,QAAA,MAAM,yBAAyB,aAAc,QAAQ,KAAG,IAEvD,CAAC;AAEF,QAAA,MAAM,SAAS,qBAAsB,MAKpC,CAAC;AAEF,cAAM,MAAM;IACV,OAAO,CAAC,IAAI,CAAU;IAEtB,OAAO,CAAC,QAAQ,CAA4B;IAErC,WAAW,gBAAiB,QAAQ,UAE1C;IAEM,OAAO,QAAO,MAAM,CAAc;IAElC,WAAW,QAAO,QAAQ,CAAkB;gBAEvC,IAAI,EAAE,MAAM;IAIjB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAQ7B,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IASjE,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAIzB,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI1B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI3B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI3B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI3B,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;CAGlC;AAED,OAAO,EACH,SAAS,EACT,MAAM,EACN,yBAAyB,EACzB,QAAQ,GACX,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"processData.d.ts","sourceRoot":"","sources":["processData.ts"],"names":[],"mappings":"AAQA,OAAO,EAAiC,UAAU,EAAE,MAAM,UAAU,CAAC;AAGrE;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,OAYlE;AA0ED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,UAAU,EAChB,CAAC,EAAE,GAAG,EACN,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,OAAO,GACrB,GAAG,CAeL"}
1
+ {"version":3,"file":"processData.d.ts","sourceRoot":"","sources":["processData.ts"],"names":[],"mappings":"AAQA,OAAO,EAAiC,UAAU,EAAE,MAAM,UAAU,CAAC;AAGrE;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,OAYlE;AA2ED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,UAAU,EAChB,CAAC,EAAE,GAAG,EACN,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,OAAO,GACrB,GAAG,CAeL"}
@@ -5112,6 +5112,188 @@ function isEqual(value, other) {
5112
5112
 
5113
5113
  var isEqual_1 = isEqual;
5114
5114
 
5115
+ const EndPoints = {
5116
+ AUTH_VERIFICATION: '/callosum/v1/session/info',
5117
+ SAML_LOGIN_TEMPLATE: (targetUrl) => `/callosum/v1/saml/login?targetURLPath=${targetUrl}`,
5118
+ OIDC_LOGIN_TEMPLATE: (targetUrl) => `/callosum/v1/oidc/login?targetURLPath=${targetUrl}`,
5119
+ TOKEN_LOGIN: '/callosum/v1/session/login/token',
5120
+ BASIC_LOGIN: '/callosum/v1/session/login',
5121
+ LOGOUT: '/callosum/v1/session/logout',
5122
+ EXECUTE_TML: '/api/rest/2.0/metadata/tml/import',
5123
+ EXPORT_TML: '/api/rest/2.0/metadata/tml/export',
5124
+ IS_ACTIVE: '/callosum/v1/session/isactive',
5125
+ };
5126
+ /**
5127
+ *
5128
+ * @param url
5129
+ * @param options
5130
+ */
5131
+ function failureLoggedFetch(url, options = {}) {
5132
+ return fetch(url, options).then(async (r) => {
5133
+ var _a;
5134
+ if (!r.ok && r.type !== 'opaqueredirect' && r.type !== 'opaque') {
5135
+ console.error('Failure', await ((_a = r.text) === null || _a === void 0 ? void 0 : _a.call(r)));
5136
+ }
5137
+ return r;
5138
+ });
5139
+ }
5140
+ /**
5141
+ * Service to validate a auth token against a ThoughtSpot host.
5142
+ *
5143
+ * @param thoughtSpotHost : ThoughtSpot host to verify the token against.
5144
+ * @param authToken : Auth token to verify.
5145
+ */
5146
+ async function verifyTokenService(thoughtSpotHost, authToken) {
5147
+ const authVerificationUrl = `${thoughtSpotHost}${EndPoints.IS_ACTIVE}`;
5148
+ try {
5149
+ const res = await fetch(authVerificationUrl, {
5150
+ headers: {
5151
+ Authorization: `Bearer ${authToken}`,
5152
+ 'x-requested-by': 'ThoughtSpot',
5153
+ },
5154
+ credentials: 'omit',
5155
+ });
5156
+ return res.ok;
5157
+ }
5158
+ catch (e) {
5159
+ console.error(`Token Verification Service failed : ${e.message}`);
5160
+ }
5161
+ return false;
5162
+ }
5163
+ /**
5164
+ *
5165
+ * @param authEndpoint
5166
+ */
5167
+ async function fetchAuthTokenService(authEndpoint) {
5168
+ return fetch(authEndpoint);
5169
+ }
5170
+ /**
5171
+ *
5172
+ * @param thoughtSpotHost
5173
+ * @param username
5174
+ * @param authToken
5175
+ */
5176
+ async function fetchAuthService(thoughtSpotHost, username, authToken) {
5177
+ return failureLoggedFetch(`${thoughtSpotHost}${EndPoints.TOKEN_LOGIN}?username=${username}&auth_token=${authToken}`, {
5178
+ credentials: 'include',
5179
+ // We do not want to follow the redirect, as it starts giving a CORS
5180
+ // error
5181
+ redirect: 'manual',
5182
+ });
5183
+ }
5184
+ /**
5185
+ *
5186
+ * @param thoughtSpotHost
5187
+ * @param username
5188
+ * @param authToken
5189
+ */
5190
+ async function fetchAuthPostService(thoughtSpotHost, username, authToken) {
5191
+ return failureLoggedFetch(`${thoughtSpotHost}${EndPoints.TOKEN_LOGIN}`, {
5192
+ method: 'POST',
5193
+ headers: {
5194
+ 'content-type': 'application/x-www-form-urlencoded',
5195
+ 'x-requested-by': 'ThoughtSpot',
5196
+ },
5197
+ body: `username=${encodeURIComponent(username)}&auth_token=${encodeURIComponent(authToken)}`,
5198
+ credentials: 'include',
5199
+ // We do not want to follow the redirect, as it starts giving a CORS
5200
+ // error
5201
+ redirect: 'manual',
5202
+ });
5203
+ }
5204
+ /**
5205
+ *
5206
+ * @param thoughtSpotHost
5207
+ * @param username
5208
+ * @param password
5209
+ */
5210
+ async function fetchBasicAuthService(thoughtSpotHost, username, password) {
5211
+ return failureLoggedFetch(`${thoughtSpotHost}${EndPoints.BASIC_LOGIN}`, {
5212
+ method: 'POST',
5213
+ headers: {
5214
+ 'content-type': 'application/x-www-form-urlencoded',
5215
+ 'x-requested-by': 'ThoughtSpot',
5216
+ },
5217
+ body: `username=${encodeURIComponent(username)}&password=${encodeURIComponent(password)}`,
5218
+ credentials: 'include',
5219
+ });
5220
+ }
5221
+
5222
+ const DUPLICATE_TOKEN_ERR = 'Duplicate token, please issue a new token every time getAuthToken callback is called.'
5223
+ + 'See https://developers.thoughtspot.com/docs/?pageid=embed-auth#trusted-auth-embed for more details.';
5224
+ const INVALID_TOKEN_ERR = 'Invalid token received form token callback or authToken endpoint.';
5225
+ let cachedAuthToken = null;
5226
+ // This method can be used to get the authToken using the embedConfig
5227
+ const getAuthenticationToken = async (embedConfig) => {
5228
+ if (cachedAuthToken) {
5229
+ let isCachedTokenStillValid;
5230
+ try {
5231
+ isCachedTokenStillValid = await validateAuthToken(embedConfig, cachedAuthToken, true);
5232
+ }
5233
+ catch {
5234
+ isCachedTokenStillValid = false;
5235
+ }
5236
+ if (isCachedTokenStillValid)
5237
+ return cachedAuthToken;
5238
+ }
5239
+ const { authEndpoint, getAuthToken } = embedConfig;
5240
+ let authToken = null;
5241
+ if (getAuthToken) {
5242
+ authToken = await getAuthToken();
5243
+ }
5244
+ else {
5245
+ const response = await fetchAuthTokenService(authEndpoint);
5246
+ authToken = await response.text();
5247
+ }
5248
+ // this will throw error if the token is not valid
5249
+ await validateAuthToken(embedConfig, authToken);
5250
+ cachedAuthToken = authToken;
5251
+ return authToken;
5252
+ };
5253
+ const validateAuthToken = async (embedConfig, authToken, suppressAlert) => {
5254
+ try {
5255
+ const isTokenValid = await verifyTokenService(embedConfig.thoughtSpotHost, authToken);
5256
+ if (isTokenValid)
5257
+ return true;
5258
+ }
5259
+ catch {
5260
+ return false;
5261
+ }
5262
+ if (cachedAuthToken && cachedAuthToken === authToken) {
5263
+ if (!embedConfig.suppressErrorAlerts && !suppressAlert) {
5264
+ // eslint-disable-next-line no-alert
5265
+ alert(DUPLICATE_TOKEN_ERR);
5266
+ }
5267
+ throw new Error(DUPLICATE_TOKEN_ERR);
5268
+ }
5269
+ else {
5270
+ throw new Error(INVALID_TOKEN_ERR);
5271
+ }
5272
+ };
5273
+
5274
+ let config = {};
5275
+ /**
5276
+ * Gets the configuration embed was initialized with.
5277
+ *
5278
+ * @returns {@link EmbedConfig} The configuration embed was initialized with.
5279
+ * @version SDK: 1.19.0 | ThoughtSpot: *
5280
+ * @group Global methods
5281
+ */
5282
+ const getEmbedConfig = () => config;
5283
+
5284
+ const tokenizedFetch = async (input, init) => {
5285
+ const embedConfig = getEmbedConfig();
5286
+ if (embedConfig.authType !== AuthType.TrustedAuthTokenCookieless) {
5287
+ return fetch(input, init);
5288
+ }
5289
+ const req = new Request(input, init);
5290
+ const authToken = await getAuthenticationToken(embedConfig);
5291
+ if (authToken) {
5292
+ req.headers.append('Authorization', `Bearer ${authToken}`);
5293
+ }
5294
+ return fetch(req);
5295
+ };
5296
+
5115
5297
  /**
5116
5298
  *
5117
5299
  * @param root0
@@ -5360,7 +5542,7 @@ class AnswerService {
5360
5542
  */
5361
5543
  async fetchCSVBlob(userLocale = 'en-us', includeInfo = false) {
5362
5544
  const fetchUrl = this.getFetchCSVBlobUrl(userLocale, includeInfo);
5363
- return fetch(fetchUrl, {
5545
+ return tokenizedFetch(fetchUrl, {
5364
5546
  credentials: 'include',
5365
5547
  });
5366
5548
  }
@@ -11994,14 +12176,13 @@ var createSet = !(_Set && (1 / _setToArray(new _Set([,-0]))[1]) == INFINITY) ? n
11994
12176
  return new _Set(values);
11995
12177
  };
11996
12178
 
11997
- // eslint-disable-next-line import/no-cycle
11998
12179
  /**
11999
12180
  *
12000
12181
  * @param url
12001
12182
  * @param options
12002
12183
  */
12003
- function failureLoggedFetch(url, options = {}) {
12004
- return fetch(url, options).then(async (r) => {
12184
+ function tokenisedFailureLoggedFetch(url, options = {}) {
12185
+ return tokenizedFetch(url, options).then(async (r) => {
12005
12186
  var _a;
12006
12187
  if (!r.ok && r.type !== 'opaqueredirect' && r.type !== 'opaque') {
12007
12188
  console.error('Failure', await ((_a = r.text) === null || _a === void 0 ? void 0 : _a.call(r)));
@@ -12014,81 +12195,7 @@ function failureLoggedFetch(url, options = {}) {
12014
12195
  * @param authVerificationUrl
12015
12196
  */
12016
12197
  function fetchSessionInfoService(authVerificationUrl) {
12017
- return failureLoggedFetch(authVerificationUrl, {
12018
- credentials: 'include',
12019
- });
12020
- }
12021
- /**
12022
- * Service to validate a auth token against a ThoughtSpot host.
12023
- *
12024
- * @param thoughtSpotHost : ThoughtSpot host to verify the token against.
12025
- * @param authToken : Auth token to verify.
12026
- */
12027
- function verifyTokenService(thoughtSpotHost, authToken) {
12028
- const authVerificationUrl = `${thoughtSpotHost}${EndPoints.IS_ACTIVE}`;
12029
- return fetch(authVerificationUrl, {
12030
- headers: {
12031
- Authorization: `Bearer ${authToken}`,
12032
- 'x-requested-by': 'ThoughtSpot',
12033
- },
12034
- credentials: 'omit',
12035
- });
12036
- }
12037
- /**
12038
- *
12039
- * @param authEndpoint
12040
- */
12041
- async function fetchAuthTokenService(authEndpoint) {
12042
- return fetch(authEndpoint);
12043
- }
12044
- /**
12045
- *
12046
- * @param thoughtSpotHost
12047
- * @param username
12048
- * @param authToken
12049
- */
12050
- async function fetchAuthService(thoughtSpotHost, username, authToken) {
12051
- return failureLoggedFetch(`${thoughtSpotHost}${EndPoints.TOKEN_LOGIN}?username=${username}&auth_token=${authToken}`, {
12052
- credentials: 'include',
12053
- // We do not want to follow the redirect, as it starts giving a CORS
12054
- // error
12055
- redirect: 'manual',
12056
- });
12057
- }
12058
- /**
12059
- *
12060
- * @param thoughtSpotHost
12061
- * @param username
12062
- * @param authToken
12063
- */
12064
- async function fetchAuthPostService(thoughtSpotHost, username, authToken) {
12065
- return failureLoggedFetch(`${thoughtSpotHost}${EndPoints.TOKEN_LOGIN}`, {
12066
- method: 'POST',
12067
- headers: {
12068
- 'content-type': 'application/x-www-form-urlencoded',
12069
- 'x-requested-by': 'ThoughtSpot',
12070
- },
12071
- body: `username=${encodeURIComponent(username)}&auth_token=${encodeURIComponent(authToken)}`,
12072
- credentials: 'include',
12073
- // We do not want to follow the redirect, as it starts giving a CORS
12074
- // error
12075
- redirect: 'manual',
12076
- });
12077
- }
12078
- /**
12079
- *
12080
- * @param thoughtSpotHost
12081
- * @param username
12082
- * @param password
12083
- */
12084
- async function fetchBasicAuthService(thoughtSpotHost, username, password) {
12085
- return failureLoggedFetch(`${thoughtSpotHost}${EndPoints.BASIC_LOGIN}`, {
12086
- method: 'POST',
12087
- headers: {
12088
- 'content-type': 'application/x-www-form-urlencoded',
12089
- 'x-requested-by': 'ThoughtSpot',
12090
- },
12091
- body: `username=${encodeURIComponent(username)}&password=${encodeURIComponent(password)}`,
12198
+ return tokenisedFailureLoggedFetch(authVerificationUrl, {
12092
12199
  credentials: 'include',
12093
12200
  });
12094
12201
  }
@@ -12106,17 +12213,6 @@ const sessionInfoPromise = new Promise((resolve) => {
12106
12213
  });
12107
12214
  let releaseVersion = '';
12108
12215
  const SSO_REDIRECTION_MARKER_GUID = '5e16222e-ef02-43e9-9fbd-24226bf3ce5b';
12109
- const EndPoints = {
12110
- AUTH_VERIFICATION: '/callosum/v1/session/info',
12111
- SAML_LOGIN_TEMPLATE: (targetUrl) => `/callosum/v1/saml/login?targetURLPath=${targetUrl}`,
12112
- OIDC_LOGIN_TEMPLATE: (targetUrl) => `/callosum/v1/oidc/login?targetURLPath=${targetUrl}`,
12113
- TOKEN_LOGIN: '/callosum/v1/session/login/token',
12114
- BASIC_LOGIN: '/callosum/v1/session/login',
12115
- LOGOUT: '/callosum/v1/session/logout',
12116
- EXECUTE_TML: '/api/rest/2.0/metadata/tml/import',
12117
- EXPORT_TML: '/api/rest/2.0/metadata/tml/export',
12118
- IS_ACTIVE: '/callosum/v1/session/isactive',
12119
- };
12120
12216
  /**
12121
12217
  * Enum for auth failure types. This is the parameter passed to the listner
12122
12218
  * of {@link AuthStatus.FAILURE}.
@@ -12262,21 +12358,6 @@ async function isLoggedIn(thoughtSpotHost) {
12262
12358
  function getReleaseVersion() {
12263
12359
  return releaseVersion;
12264
12360
  }
12265
- const DUPLICATE_TOKEN_ERR = 'Duplicate token, please issue a new token every time getAuthToken callback is called.'
12266
- + 'See https://developers.thoughtspot.com/docs/?pageid=embed-auth#trusted-auth-embed for more details.';
12267
- let prevAuthToken = null;
12268
- /**
12269
- *
12270
- * @param authtoken
12271
- */
12272
- function alertForDuplicateToken(authtoken) {
12273
- if (prevAuthToken === authtoken) {
12274
- // eslint-disable-next-line no-alert
12275
- alert(DUPLICATE_TOKEN_ERR);
12276
- throw new Error(DUPLICATE_TOKEN_ERR);
12277
- }
12278
- prevAuthToken = authtoken;
12279
- }
12280
12361
  /**
12281
12362
  * Check if we are stuck at the SSO redirect URL
12282
12363
  */
@@ -12294,19 +12375,6 @@ function removeSSORedirectUrlMarker() {
12294
12375
  // that creates an issue.
12295
12376
  window.location.hash = window.location.hash.replace(SSO_REDIRECTION_MARKER_GUID, '');
12296
12377
  }
12297
- const getAuthenticationToken = async (embedConfig) => {
12298
- const { authEndpoint, getAuthToken } = embedConfig;
12299
- let authToken = null;
12300
- if (getAuthToken) {
12301
- authToken = await getAuthToken();
12302
- alertForDuplicateToken(authToken);
12303
- }
12304
- else {
12305
- const response = await fetchAuthTokenService(authEndpoint);
12306
- authToken = await response.text();
12307
- }
12308
- return authToken;
12309
- };
12310
12378
  /**
12311
12379
  * Perform token based authentication
12312
12380
  *
@@ -12347,16 +12415,17 @@ const doCookielessTokenAuth = async (embedConfig) => {
12347
12415
  if (!authEndpoint && !getAuthToken) {
12348
12416
  throw new Error('Either auth endpoint or getAuthToken function must be provided');
12349
12417
  }
12418
+ let authSuccess = false;
12350
12419
  try {
12351
12420
  const authToken = await getAuthenticationToken(embedConfig);
12352
- const response = await verifyTokenService(embedConfig.thoughtSpotHost, authToken);
12353
- if (!response.ok)
12354
- return false;
12421
+ if (authToken) {
12422
+ authSuccess = true;
12423
+ }
12355
12424
  }
12356
- catch (e) {
12357
- return false;
12425
+ catch {
12426
+ authSuccess = false;
12358
12427
  }
12359
- return true;
12428
+ return authSuccess;
12360
12429
  };
12361
12430
  /**
12362
12431
  * Perform basic authentication to the ThoughtSpot cluster using the cluster
@@ -12498,27 +12567,18 @@ const authenticate = async (embedConfig) => {
12498
12567
  };
12499
12568
 
12500
12569
  /* eslint-disable camelcase */
12501
- let config = {};
12502
12570
  const CONFIG_DEFAULTS = {
12503
12571
  loginFailedMessage: 'Not logged in',
12504
12572
  authTriggerText: 'Authorize',
12505
12573
  authType: AuthType.None,
12506
12574
  };
12507
12575
  let authPromise;
12508
- /**
12509
- * Gets the configuration embed was initialized with.
12510
- *
12511
- * @returns {@link EmbedConfig} The configuration embed was initialized with.
12512
- * @version SDK: 1.19.0 | ThoughtSpot: *
12513
- * @group Global methods
12514
- */
12515
- const getEmbedConfig = () => config;
12516
12576
  const getAuthPromise = () => authPromise;
12517
12577
  /**
12518
12578
  * Perform authentication on the ThoughtSpot app as applicable.
12519
12579
  */
12520
12580
  const handleAuth = () => {
12521
- authPromise = authenticate(config);
12581
+ authPromise = authenticate(getEmbedConfig());
12522
12582
  authPromise.then((isLoggedIn) => {
12523
12583
  if (!isLoggedIn) {
12524
12584
  notifyAuthFailure(AuthFailureType.SDK);
@@ -12541,7 +12601,7 @@ const hostUrlToFeatureUrl = {
12541
12601
  *
12542
12602
  */
12543
12603
  function disableAutoLogin() {
12544
- config.autoLogin = false;
12604
+ getEmbedConfig().autoLogin = false;
12545
12605
  }
12546
12606
  let renderQueue = Promise.resolve();
12547
12607
  /**
@@ -12551,7 +12611,7 @@ let renderQueue = Promise.resolve();
12551
12611
  * @param fn The function being registered
12552
12612
  */
12553
12613
  const renderInQueue = (fn) => {
12554
- const { queueMultiRenders = false } = config;
12614
+ const { queueMultiRenders = false } = getEmbedConfig();
12555
12615
  if (queueMultiRenders) {
12556
12616
  renderQueue = renderQueue.then(() => new Promise((res) => fn(res)));
12557
12617
  return renderQueue;
@@ -12596,9 +12656,9 @@ function processAuthInit(e) {
12596
12656
  * @param containerEl
12597
12657
  */
12598
12658
  function processNoCookieAccess(e, containerEl) {
12599
- const { loginFailedMessage, suppressNoCookieAccessAlert, ignoreNoCookieAccess, } = getEmbedConfig();
12659
+ const { loginFailedMessage, suppressNoCookieAccessAlert, ignoreNoCookieAccess, suppressErrorAlerts, } = getEmbedConfig();
12600
12660
  if (!ignoreNoCookieAccess) {
12601
- if (!suppressNoCookieAccessAlert) {
12661
+ if (!suppressNoCookieAccessAlert && !suppressErrorAlerts) {
12602
12662
  // eslint-disable-next-line no-alert
12603
12663
  alert('Third party cookie access is blocked on this browser, please allow third party cookies for this to work properly. \nYou can use `suppressNoCookieAccessAlert` to suppress this message.');
12604
12664
  }
@@ -12716,7 +12776,7 @@ function processTrigger(iFrame, messageType, thoughtSpotHost, data) {
12716
12776
  });
12717
12777
  }
12718
12778
 
12719
- var name="@thoughtspot/visual-embed-sdk";var version="1.26.1";var description="ThoughtSpot Embed SDK";var module="lib/src/index.js";var main="dist/tsembed.js";var types="lib/src/index.d.ts";var files=["dist/**","lib/**","src/**","cjs/**"];var exports={".":{"import":"./lib/src/index.js",require:"./cjs/src/index.js",types:"./lib/src/index.d.ts"},"./react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"},"./lib/src/react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"}};var typesVersions={"*":{react:["./lib/src/react/all-types-export.d.ts"]}};var scripts={lint:"eslint 'src/**'","lint:fix":"eslint 'src/**/*.*' --fix",tsc:"tsc -p . --incremental false; tsc -p . --incremental false --module commonjs --outDir cjs",start:"gatsby develop","build:gatsby":"npm run clean:gatsby && gatsby build --prefix-paths","build:gatsby:noprefix":"npm run clean:gatsby && gatsby build","serve:gatsby":"gatsby serve","clean:gatsby":"gatsby clean","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","docs-cmd":"node scripts/gatsby-commands.js",docgen:"typedoc --tsconfig tsconfig.json --theme typedoc-theme","test-sdk":"jest -c jest.config.sdk.js --runInBand","test-docs":"jest -c jest.config.docs.js",test:"npm run test-sdk && npm run test-docs",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"};var peerDependencies={react:"> 16.8.0","react-dom":"> 16.8.0"};var dependencies={algoliasearch:"^4.10.5",classnames:"^2.3.1",dompurify:"^2.3.4","eslint-plugin-comment-length":"^0.9.2","eslint-plugin-jsdoc":"^46.9.0",eventemitter3:"^4.0.7","gatsby-plugin-vercel":"^1.0.3","html-react-parser":"^1.4.12",lodash:"^4.17.21","mixpanel-browser":"^2.45.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.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/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","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","fs-extra":"^10.0.0",gatsby:"3.13.1","gatsby-plugin-algolia":"^0.22.2","gatsby-plugin-catch-links":"^3.1.0","gatsby-plugin-env-variables":"^2.1.0","gatsby-plugin-intl":"^0.3.3","gatsby-plugin-manifest":"^3.2.0","gatsby-plugin-output":"^0.1.3","gatsby-plugin-sass":"6.7.0","gatsby-plugin-sitemap":"^4.10.0","gatsby-source-filesystem":"3.1.0","gatsby-transformer-asciidoc":"2.1.0","gatsby-transformer-rehype":"2.0.0","gh-pages":"^3.1.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:"2.30.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"};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","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,description:description,module:module,main:main,types:types,files:files,exports:exports,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.js",limit:"43 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};
12779
+ var name="@thoughtspot/visual-embed-sdk";var version="1.26.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",start:"gatsby develop","build:gatsby":"npm run clean:gatsby && gatsby build --prefix-paths","build:gatsby:noprefix":"npm run clean:gatsby && gatsby build","serve:gatsby":"gatsby serve","clean:gatsby":"gatsby clean","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","docs-cmd":"node scripts/gatsby-commands.js",docgen:"typedoc --tsconfig tsconfig.json --theme typedoc-theme","test-sdk":"jest -c jest.config.sdk.js --runInBand","test-docs":"jest -c jest.config.docs.js",test:"npm run test-sdk && npm run test-docs",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"};var peerDependencies={react:"> 16.8.0","react-dom":"> 16.8.0"};var dependencies={algoliasearch:"^4.10.5",classnames:"^2.3.1",dompurify:"^2.3.4","eslint-plugin-comment-length":"^0.9.2","eslint-plugin-jsdoc":"^46.9.0",eventemitter3:"^4.0.7","gatsby-plugin-vercel":"^1.0.3","html-react-parser":"^1.4.12",lodash:"^4.17.21","mixpanel-browser":"^2.45.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.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/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","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","fs-extra":"^10.0.0",gatsby:"3.13.1","gatsby-plugin-algolia":"^0.22.2","gatsby-plugin-catch-links":"^3.1.0","gatsby-plugin-env-variables":"^2.1.0","gatsby-plugin-intl":"^0.3.3","gatsby-plugin-manifest":"^3.2.0","gatsby-plugin-output":"^0.1.3","gatsby-plugin-sass":"6.7.0","gatsby-plugin-sitemap":"^4.10.0","gatsby-source-filesystem":"3.1.0","gatsby-transformer-asciidoc":"2.1.0","gatsby-transformer-rehype":"2.0.0","gh-pages":"^3.1.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:"2.30.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"};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","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,description:description,module:module,main:main,types:types,files:files,exports:exports,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.js",limit:"44 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};
12720
12780
 
12721
12781
  /**
12722
12782
  * Copyright (c) 2022
@@ -13996,7 +14056,8 @@ class SearchEmbed extends TsEmbed {
13996
14056
  const src = this.getIFrameSrc(answerId);
13997
14057
  this.renderIFrame(src);
13998
14058
  getAuthPromise().then(() => {
13999
- if (checkReleaseVersionInBeta(getReleaseVersion(), getEmbedConfig().suppressSearchEmbedBetaWarning)) {
14059
+ if (checkReleaseVersionInBeta(getReleaseVersion(), getEmbedConfig().suppressSearchEmbedBetaWarning
14060
+ || getEmbedConfig().suppressErrorAlerts)) {
14000
14061
  alert(ERROR_MESSAGE.SEARCHEMBED_BETA_WRANING_MESSAGE);
14001
14062
  }
14002
14063
  });