@thoughtspot/visual-embed-sdk 1.20.0-alpha.2 → 1.20.0-prerender.0

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 (184) hide show
  1. package/dist/src/auth.d.ts +75 -5
  2. package/dist/src/auth.d.ts.map +1 -1
  3. package/dist/src/config.d.ts +1 -0
  4. package/dist/src/config.d.ts.map +1 -1
  5. package/dist/src/embed/app.d.ts +19 -7
  6. package/dist/src/embed/app.d.ts.map +1 -1
  7. package/dist/src/embed/base.d.ts +39 -19
  8. package/dist/src/embed/base.d.ts.map +1 -1
  9. package/dist/src/embed/liveboard.d.ts +19 -7
  10. package/dist/src/embed/liveboard.d.ts.map +1 -1
  11. package/dist/src/embed/search-bar.d.ts +7 -1
  12. package/dist/src/embed/search-bar.d.ts.map +1 -1
  13. package/dist/src/embed/search.d.ts +11 -3
  14. package/dist/src/embed/search.d.ts.map +1 -1
  15. package/dist/src/embed/ts-embed.d.ts +76 -5
  16. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  17. package/dist/src/errors.d.ts.map +1 -1
  18. package/dist/src/index.d.ts +3 -3
  19. package/dist/src/index.d.ts.map +1 -1
  20. package/dist/src/mixpanel-service.d.ts +8 -0
  21. package/dist/src/mixpanel-service.d.ts.map +1 -1
  22. package/dist/src/react/index.d.ts.map +1 -1
  23. package/dist/src/react/util.d.ts +4 -0
  24. package/dist/src/react/util.d.ts.map +1 -1
  25. package/dist/src/test/test-utils.d.ts +11 -2
  26. package/dist/src/test/test-utils.d.ts.map +1 -1
  27. package/dist/src/types.d.ts +429 -97
  28. package/dist/src/types.d.ts.map +1 -1
  29. package/dist/src/utils/answerService.d.ts +7 -0
  30. package/dist/src/utils/answerService.d.ts.map +1 -1
  31. package/dist/src/utils/authService.d.ts +30 -0
  32. package/dist/src/utils/authService.d.ts.map +1 -1
  33. package/dist/src/utils/processData.d.ts +12 -0
  34. package/dist/src/utils/processData.d.ts.map +1 -1
  35. package/dist/src/utils/processTrigger.d.ts +7 -0
  36. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  37. package/dist/src/utils.d.ts +12 -0
  38. package/dist/src/utils.d.ts.map +1 -1
  39. package/dist/tsembed.es.js +818 -285
  40. package/dist/tsembed.js +791 -284
  41. package/lib/package.json +4 -3
  42. package/lib/src/auth.d.ts +75 -5
  43. package/lib/src/auth.d.ts.map +1 -1
  44. package/lib/src/auth.js +86 -26
  45. package/lib/src/auth.js.map +1 -1
  46. package/lib/src/auth.spec.js +14 -5
  47. package/lib/src/auth.spec.js.map +1 -1
  48. package/lib/src/config.d.ts +1 -0
  49. package/lib/src/config.d.ts.map +1 -1
  50. package/lib/src/config.js +5 -3
  51. package/lib/src/config.js.map +1 -1
  52. package/lib/src/config.spec.js.map +1 -1
  53. package/lib/src/embed/app.d.ts +19 -7
  54. package/lib/src/embed/app.d.ts.map +1 -1
  55. package/lib/src/embed/app.js +26 -16
  56. package/lib/src/embed/app.js.map +1 -1
  57. package/lib/src/embed/app.spec.js +12 -12
  58. package/lib/src/embed/app.spec.js.map +1 -1
  59. package/lib/src/embed/base.d.ts +39 -19
  60. package/lib/src/embed/base.d.ts.map +1 -1
  61. package/lib/src/embed/base.js +49 -15
  62. package/lib/src/embed/base.js.map +1 -1
  63. package/lib/src/embed/base.spec.js +2 -2
  64. package/lib/src/embed/base.spec.js.map +1 -1
  65. package/lib/src/embed/embed.spec.js +1 -1
  66. package/lib/src/embed/embed.spec.js.map +1 -1
  67. package/lib/src/embed/liveboard.d.ts +19 -7
  68. package/lib/src/embed/liveboard.d.ts.map +1 -1
  69. package/lib/src/embed/liveboard.js +50 -38
  70. package/lib/src/embed/liveboard.js.map +1 -1
  71. package/lib/src/embed/liveboard.spec.js +37 -30
  72. package/lib/src/embed/liveboard.spec.js.map +1 -1
  73. package/lib/src/embed/pinboard.spec.js +14 -26
  74. package/lib/src/embed/pinboard.spec.js.map +1 -1
  75. package/lib/src/embed/search-bar.d.ts +7 -1
  76. package/lib/src/embed/search-bar.d.ts.map +1 -1
  77. package/lib/src/embed/search-bar.js +6 -7
  78. package/lib/src/embed/search-bar.js.map +1 -1
  79. package/lib/src/embed/search.d.ts +11 -3
  80. package/lib/src/embed/search.d.ts.map +1 -1
  81. package/lib/src/embed/search.js +19 -15
  82. package/lib/src/embed/search.js.map +1 -1
  83. package/lib/src/embed/search.spec.js +16 -19
  84. package/lib/src/embed/search.spec.js.map +1 -1
  85. package/lib/src/embed/searchEmbed-basic-auth.spec.js +4 -0
  86. package/lib/src/embed/searchEmbed-basic-auth.spec.js.map +1 -1
  87. package/lib/src/embed/ts-embed.d.ts +76 -5
  88. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  89. package/lib/src/embed/ts-embed.js +150 -72
  90. package/lib/src/embed/ts-embed.js.map +1 -1
  91. package/lib/src/embed/ts-embed.spec.js +23 -24
  92. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  93. package/lib/src/errors.d.ts.map +1 -1
  94. package/lib/src/errors.js.map +1 -1
  95. package/lib/src/index.d.ts +3 -3
  96. package/lib/src/index.d.ts.map +1 -1
  97. package/lib/src/index.js +3 -3
  98. package/lib/src/index.js.map +1 -1
  99. package/lib/src/mixpanel-service.d.ts +8 -0
  100. package/lib/src/mixpanel-service.d.ts.map +1 -1
  101. package/lib/src/mixpanel-service.js +13 -1
  102. package/lib/src/mixpanel-service.js.map +1 -1
  103. package/lib/src/mixpanel-service.spec.js.map +1 -1
  104. package/lib/src/react/index.d.ts.map +1 -1
  105. package/lib/src/react/index.js +4 -6
  106. package/lib/src/react/index.js.map +1 -1
  107. package/lib/src/react/index.spec.js +3 -6
  108. package/lib/src/react/index.spec.js.map +1 -1
  109. package/lib/src/react/util.d.ts +4 -0
  110. package/lib/src/react/util.d.ts.map +1 -1
  111. package/lib/src/react/util.js +4 -0
  112. package/lib/src/react/util.js.map +1 -1
  113. package/lib/src/test/test-utils.d.ts +11 -2
  114. package/lib/src/test/test-utils.d.ts.map +1 -1
  115. package/lib/src/test/test-utils.js +36 -25
  116. package/lib/src/test/test-utils.js.map +1 -1
  117. package/lib/src/types.d.ts +429 -97
  118. package/lib/src/types.d.ts.map +1 -1
  119. package/lib/src/types.js +310 -72
  120. package/lib/src/types.js.map +1 -1
  121. package/lib/src/utils/answerService.d.ts +7 -0
  122. package/lib/src/utils/answerService.d.ts.map +1 -1
  123. package/lib/src/utils/answerService.js +7 -0
  124. package/lib/src/utils/answerService.js.map +1 -1
  125. package/lib/src/utils/answerService.spec.js.map +1 -1
  126. package/lib/src/utils/authService.d.ts +30 -0
  127. package/lib/src/utils/authService.d.ts.map +1 -1
  128. package/lib/src/utils/authService.js +39 -2
  129. package/lib/src/utils/authService.js.map +1 -1
  130. package/lib/src/utils/authService.spec.js.map +1 -1
  131. package/lib/src/utils/processData.d.ts +12 -0
  132. package/lib/src/utils/processData.d.ts.map +1 -1
  133. package/lib/src/utils/processData.js +33 -5
  134. package/lib/src/utils/processData.js.map +1 -1
  135. package/lib/src/utils/processData.spec.js.map +1 -1
  136. package/lib/src/utils/processTrigger.d.ts +7 -0
  137. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  138. package/lib/src/utils/processTrigger.js +17 -3
  139. package/lib/src/utils/processTrigger.js.map +1 -1
  140. package/lib/src/utils/processTrigger.spec.js.map +1 -1
  141. package/lib/src/utils.d.ts +12 -0
  142. package/lib/src/utils.d.ts.map +1 -1
  143. package/lib/src/utils.js +24 -19
  144. package/lib/src/utils.js.map +1 -1
  145. package/lib/src/utils.spec.js.map +1 -1
  146. package/lib/src/visual-embed-sdk.d.ts +664 -141
  147. package/package.json +4 -3
  148. package/src/auth.spec.ts +68 -150
  149. package/src/auth.ts +141 -101
  150. package/src/config.spec.ts +2 -4
  151. package/src/config.ts +5 -3
  152. package/src/embed/app.spec.ts +25 -14
  153. package/src/embed/app.ts +49 -37
  154. package/src/embed/base.spec.ts +6 -12
  155. package/src/embed/base.ts +74 -57
  156. package/src/embed/embed.spec.ts +5 -6
  157. package/src/embed/liveboard.spec.ts +56 -37
  158. package/src/embed/liveboard.ts +67 -65
  159. package/src/embed/pinboard.spec.ts +26 -29
  160. package/src/embed/search-bar.tsx +14 -9
  161. package/src/embed/search.spec.ts +31 -21
  162. package/src/embed/search.ts +28 -22
  163. package/src/embed/searchEmbed-basic-auth.spec.ts +22 -28
  164. package/src/embed/ts-embed.spec.ts +70 -148
  165. package/src/embed/ts-embed.ts +180 -157
  166. package/src/errors.ts +3 -6
  167. package/src/index.ts +23 -7
  168. package/src/mixpanel-service.spec.ts +1 -3
  169. package/src/mixpanel-service.ts +13 -1
  170. package/src/react/index.spec.tsx +11 -20
  171. package/src/react/index.tsx +40 -71
  172. package/src/react/util.ts +8 -4
  173. package/src/test/test-utils.ts +43 -39
  174. package/src/types.ts +427 -97
  175. package/src/utils/answerService.spec.ts +3 -5
  176. package/src/utils/answerService.ts +21 -17
  177. package/src/utils/authService.spec.ts +26 -41
  178. package/src/utils/authService.ts +47 -21
  179. package/src/utils/processData.spec.ts +26 -59
  180. package/src/utils/processData.ts +36 -14
  181. package/src/utils/processTrigger.spec.ts +1 -6
  182. package/src/utils/processTrigger.ts +18 -9
  183. package/src/utils.spec.ts +8 -12
  184. package/src/utils.ts +25 -26
@@ -6,7 +6,7 @@
6
6
  * @summary Base classes
7
7
  * @author Ayon Ghosh <ayon.ghosh@thoughtspot.com>
8
8
  */
9
- import { getEncodedQueryParamsString, getCssDimension, getOffsetTop, embedEventStatus, setAttributes, getCustomisations, getDOMNode, } from '../utils';
9
+ import { getEncodedQueryParamsString, getCssDimension, getOffsetTop, embedEventStatus, setAttributes, getCustomisations, getDOMNode, getFilterQuery, getQueryParamString, } from '../utils';
10
10
  import { getThoughtSpotHost, URL_MAX_LENGTH, DEFAULT_EMBED_WIDTH, DEFAULT_EMBED_HEIGHT, getV2BasePath, } from '../config';
11
11
  import { AuthType, EmbedEvent, Action, Param, ContextMenuTriggerOptions, } from '../types';
12
12
  import { uploadMixpanelEvent, MIXPANEL_EVENT } from '../mixpanel-service';
@@ -25,6 +25,7 @@ const TS_EMBED_ID = '_thoughtspot-embed';
25
25
  * The event id map from v2 event names to v1 event id
26
26
  * v1 events are the classic embed events implemented in Blink v1
27
27
  * We cannot rename v1 event types to maintain backward compatibility
28
+ *
28
29
  * @internal
29
30
  */
30
31
  const V1EventMap = {};
@@ -35,22 +36,28 @@ const V1EventMap = {};
35
36
  */
36
37
  export class TsEmbed {
37
38
  constructor(domSelector, viewConfig) {
39
+ this.isAppInitialized = false;
38
40
  /**
39
41
  * Should we encode URL Query Params using base64 encoding which thoughtspot
40
42
  * will generate for embedding. This provides additional security to
41
43
  * thoughtspot clusters against Cross site scripting attacks.
44
+ *
42
45
  * @default false
43
46
  */
44
47
  this.shouldEncodeUrlQueryParams = false;
45
48
  this.defaultHiddenActions = [Action.ReportError];
46
49
  /**
47
50
  * Send Custom style as part of payload of APP_INIT
51
+ *
52
+ * @param _
53
+ * @param responder
48
54
  */
49
55
  this.appInitCb = async (_, responder) => {
50
56
  let authToken = '';
51
57
  if (this.embedConfig.authType === AuthType.TrustedAuthTokenCookieless) {
52
58
  authToken = await getAuthenticaionToken(this.embedConfig);
53
59
  }
60
+ this.isAppInitialized = true;
54
61
  responder({
55
62
  type: EmbedEvent.APP_INIT,
56
63
  data: {
@@ -61,6 +68,9 @@ export class TsEmbed {
61
68
  };
62
69
  /**
63
70
  * Sends updated auth token to the iFrame to avoid user logout
71
+ *
72
+ * @param _
73
+ * @param responder
64
74
  */
65
75
  this.updateAuthToken = async (_, responder) => {
66
76
  const { autoLogin = false, authType } = this.embedConfig; // Set autoLogin default to false
@@ -102,6 +112,7 @@ export class TsEmbed {
102
112
  }
103
113
  /**
104
114
  * Handles errors within the SDK
115
+ *
105
116
  * @param error The error message or object
106
117
  */
107
118
  handleError(error) {
@@ -114,6 +125,7 @@ export class TsEmbed {
114
125
  }
115
126
  /**
116
127
  * Extracts the type field from the event payload
128
+ *
117
129
  * @param event The window message event
118
130
  */
119
131
  getEventType(event) {
@@ -123,6 +135,7 @@ export class TsEmbed {
123
135
  }
124
136
  /**
125
137
  * Extracts the port field from the event payload
138
+ *
126
139
  * @param event The window message event
127
140
  * @returns
128
141
  */
@@ -135,6 +148,9 @@ export class TsEmbed {
135
148
  /**
136
149
  * fix for ts7.sep.cl
137
150
  * will be removed for ts7.oct.cl
151
+ *
152
+ * @param event
153
+ * @param eventType
138
154
  * @hidden
139
155
  */
140
156
  formatEventData(event, eventType) {
@@ -165,33 +181,31 @@ export class TsEmbed {
165
181
  }
166
182
  /**
167
183
  * Constructs the base URL string to load the ThoughtSpot app.
184
+ *
185
+ * @param query
168
186
  */
169
187
  getEmbedBasePath(query) {
170
188
  let queryString = query;
171
189
  if (this.shouldEncodeUrlQueryParams) {
172
190
  queryString = `?base64UrlEncodedFlags=${getEncodedQueryParamsString(queryString.substr(1))}`;
173
191
  }
174
- const basePath = [
175
- this.thoughtSpotHost,
176
- this.thoughtSpotV2Base,
177
- queryString,
178
- ]
192
+ const basePath = [this.thoughtSpotHost, this.thoughtSpotV2Base, queryString]
179
193
  .filter((x) => x.length > 0)
180
194
  .join('/');
181
- return `${basePath}#/embed`;
195
+ return `${basePath}#`;
182
196
  }
183
197
  /**
184
198
  * Common query params set for all the embed modes.
199
+ *
200
+ * @param queryParams
185
201
  * @returns queryParams
186
202
  */
187
- getBaseQueryParams() {
203
+ getBaseQueryParams(queryParams = {}) {
188
204
  var _a, _b;
189
- const queryParams = {};
190
205
  let hostAppUrl = ((_a = window === null || window === void 0 ? void 0 : window.location) === null || _a === void 0 ? void 0 : _a.host) || '';
191
- // The below check is needed because TS Cloud firewall, blocks localhost/127.0.0.1
192
- // in any url param.
193
- if (hostAppUrl.includes('localhost') ||
194
- hostAppUrl.includes('127.0.0.1')) {
206
+ // The below check is needed because TS Cloud firewall, blocks
207
+ // localhost/127.0.0.1 in any url param.
208
+ if (hostAppUrl.includes('localhost') || hostAppUrl.includes('127.0.0.1')) {
195
209
  hostAppUrl = 'local-host';
196
210
  }
197
211
  queryParams[Param.HostAppUrl] = encodeURIComponent(hostAppUrl);
@@ -199,8 +213,7 @@ export class TsEmbed {
199
213
  queryParams[Param.ViewPortWidth] = window.innerWidth;
200
214
  queryParams[Param.Version] = version;
201
215
  queryParams[Param.AuthType] = this.embedConfig.authType;
202
- if (this.embedConfig.disableLoginRedirect === true ||
203
- this.embedConfig.autoLogin === true) {
216
+ if (this.embedConfig.disableLoginRedirect === true || this.embedConfig.autoLogin === true) {
204
217
  queryParams[Param.DisableLoginRedirect] = true;
205
218
  }
206
219
  if (this.embedConfig.authType === AuthType.EmbeddedSSO) {
@@ -215,8 +228,7 @@ export class TsEmbed {
215
228
  return queryParams;
216
229
  }
217
230
  // TODO remove embedConfig.customCssUrl
218
- const cssUrlParam = ((_b = customizations === null || customizations === void 0 ? void 0 : customizations.style) === null || _b === void 0 ? void 0 : _b.customCSSUrl) ||
219
- this.embedConfig.customCssUrl;
231
+ const cssUrlParam = ((_b = customizations === null || customizations === void 0 ? void 0 : customizations.style) === null || _b === void 0 ? void 0 : _b.customCSSUrl) || this.embedConfig.customCssUrl;
220
232
  if (cssUrlParam) {
221
233
  queryParams[Param.CustomCSSUrl] = cssUrlParam;
222
234
  }
@@ -226,15 +238,14 @@ export class TsEmbed {
226
238
  if (disabledActionReason) {
227
239
  queryParams[Param.DisableActionReason] = disabledActionReason;
228
240
  }
229
- queryParams[Param.HideActions] = [
230
- ...this.defaultHiddenActions,
231
- ...(hiddenActions !== null && hiddenActions !== void 0 ? hiddenActions : []),
232
- ];
241
+ queryParams[Param.HideActions] = [...this.defaultHiddenActions, ...(hiddenActions !== null && hiddenActions !== void 0 ? hiddenActions : [])];
233
242
  if (Array.isArray(visibleActions)) {
234
243
  queryParams[Param.VisibleActions] = visibleActions;
235
244
  }
236
- /** Default behavior for context menu will be left-click
237
- * from version 9.2.0.cl the user have an option to override context menu click
245
+ /**
246
+ * Default behavior for context menu will be left-click
247
+ * from version 9.2.0.cl the user have an option to override context
248
+ * menu click
238
249
  */
239
250
  if (contextMenuTrigger === ContextMenuTriggerOptions.LEFT_CLICK) {
240
251
  queryParams[Param.ContextMenuTrigger] = true;
@@ -266,32 +277,61 @@ export class TsEmbed {
266
277
  /**
267
278
  * Constructs the base URL string to load v1 of the ThoughtSpot app.
268
279
  * This is used for embedding Liveboards, visualizations, and full application.
280
+ *
269
281
  * @param queryString The query string to append to the URL.
270
282
  * @param isAppEmbed A Boolean parameter to specify if you are embedding
271
283
  * the full application.
272
284
  */
273
- getV1EmbedBasePath(queryString, showPrimaryNavbar = false, disableProfileAndHelp = false, isAppEmbed = false, enableSearchAssist = false) {
274
- const queryStringFrag = queryString ? `&${queryString}` : '';
275
- const primaryNavParam = `&primaryNavHidden=${!showPrimaryNavbar}`;
276
- const disableProfileAndHelpParam = `&profileAndHelpInNavBarHidden=${disableProfileAndHelp}`;
277
- const enableSearchAssistParam = `&${Param.EnableSearchAssist}=${enableSearchAssist}`;
278
- let queryParams = `?embedApp=true${isAppEmbed ? primaryNavParam : ''}${isAppEmbed ? disableProfileAndHelpParam : ''}${enableSearchAssist ? enableSearchAssistParam : ''}${queryStringFrag}`;
279
- if (this.shouldEncodeUrlQueryParams) {
280
- queryParams = `?base64UrlEncodedFlags=${getEncodedQueryParamsString(queryParams.substr(1))}`;
281
- }
282
- let path = `${this.thoughtSpotHost}/${queryParams}#`;
283
- if (!isAppEmbed) {
284
- path = `${path}/embed`;
285
- }
285
+ getV1EmbedBasePath(queryString) {
286
+ const queryParams = this.shouldEncodeUrlQueryParams
287
+ ? `?base64UrlEncodedFlags=${getEncodedQueryParamsString(queryString)}`
288
+ : `?${queryString}`;
289
+ const path = `${this.thoughtSpotHost}/${queryParams}#`;
286
290
  return path;
287
291
  }
292
+ getEmbedParams() {
293
+ const queryParams = this.getBaseQueryParams();
294
+ return getQueryParamString(queryParams);
295
+ }
296
+ getRootIframeSrc() {
297
+ const query = this.getEmbedParams();
298
+ return this.getEmbedBasePath(query);
299
+ }
300
+ createIframeEl(frameSrc) {
301
+ const iFrame = document.createElement('iframe');
302
+ iFrame.src = frameSrc;
303
+ iFrame.id = TS_EMBED_ID;
304
+ // according to screenfull.js documentation
305
+ // allowFullscreen, webkitallowfullscreen and mozallowfullscreen must be
306
+ // true
307
+ iFrame.allowFullscreen = true;
308
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
309
+ // @ts-ignore
310
+ iFrame.webkitallowfullscreen = true;
311
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
312
+ // @ts-ignore
313
+ iFrame.mozallowfullscreen = true;
314
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
315
+ // @ts-ignore
316
+ iFrame.allow = 'clipboard-read; clipboard-write';
317
+ const { height: frameHeight, width: frameWidth, ...restParams } = this.viewConfig.frameParams || {};
318
+ const width = getCssDimension(frameWidth || DEFAULT_EMBED_WIDTH);
319
+ const height = getCssDimension(frameHeight || DEFAULT_EMBED_HEIGHT);
320
+ setAttributes(iFrame, restParams);
321
+ iFrame.style.width = `${width}`;
322
+ iFrame.style.height = `${height}`;
323
+ iFrame.style.border = '0';
324
+ iFrame.name = 'ThoughtSpot Embedded Analytics';
325
+ return iFrame;
326
+ }
288
327
  /**
289
328
  * Renders the embedded ThoughtSpot app in an iframe and sets up
290
329
  * event listeners.
330
+ *
291
331
  * @param url
292
332
  * @param frameOptions
293
333
  */
294
- async renderIFrame(url, frameOptions = {}) {
334
+ async renderIFrame(url) {
295
335
  if (this.isError) {
296
336
  return null;
297
337
  }
@@ -317,30 +357,7 @@ export class TsEmbed {
317
357
  return;
318
358
  }
319
359
  uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_RENDER_COMPLETE);
320
- this.iFrame =
321
- this.iFrame || document.createElement('iframe');
322
- this.iFrame.src = url;
323
- this.iFrame.id = TS_EMBED_ID;
324
- // according to screenfull.js documentation
325
- // allowFullscreen, webkitallowfullscreen and mozallowfullscreen must be true
326
- this.iFrame.allowFullscreen = true;
327
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
328
- // @ts-ignore
329
- this.iFrame.webkitallowfullscreen = true;
330
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
331
- // @ts-ignore
332
- this.iFrame.mozallowfullscreen = true;
333
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
334
- // @ts-ignore
335
- this.iFrame.allow = 'clipboard-read; clipboard-write';
336
- const { height: frameHeight, width: frameWidth, ...restParams } = frameOptions;
337
- const width = getCssDimension(frameWidth || DEFAULT_EMBED_WIDTH);
338
- const height = getCssDimension(frameHeight || DEFAULT_EMBED_HEIGHT);
339
- setAttributes(this.iFrame, restParams);
340
- this.iFrame.style.width = `${width}`;
341
- this.iFrame.style.height = `${height}`;
342
- this.iFrame.style.border = '0';
343
- this.iFrame.name = 'ThoughtSpot Embedded Analytics';
360
+ this.iFrame = this.iFrame || this.createIframeEl(url);
344
361
  this.iFrame.addEventListener('load', () => {
345
362
  nextInQueue();
346
363
  const loadTimestamp = Date.now();
@@ -367,7 +384,9 @@ export class TsEmbed {
367
384
  this.subscribeToEvents();
368
385
  }).catch((error) => {
369
386
  nextInQueue();
370
- uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_RENDER_FAILED, { error: JSON.stringify(error) });
387
+ uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_RENDER_FAILED, {
388
+ error: JSON.stringify(error),
389
+ });
371
390
  this.insertIntoDOM(this.embedConfig.loginFailedMessage);
372
391
  this.handleError(error);
373
392
  });
@@ -401,6 +420,7 @@ export class TsEmbed {
401
420
  }
402
421
  /**
403
422
  * Sets the height of the iframe
423
+ *
404
424
  * @param height The height in pixels
405
425
  */
406
426
  setIFrameHeight(height) {
@@ -408,6 +428,7 @@ export class TsEmbed {
408
428
  }
409
429
  /**
410
430
  * Executes all registered event handlers for a particular event type
431
+ *
411
432
  * @param eventType The event type
412
433
  * @param data The payload invoked with the event handler
413
434
  * @param eventPort The event Port for a specific MessageChannel
@@ -418,11 +439,13 @@ export class TsEmbed {
418
439
  callbacks.push(...allHandlers);
419
440
  const dataStatus = (data === null || data === void 0 ? void 0 : data.status) || embedEventStatus.END;
420
441
  callbacks.forEach((callbackObj) => {
421
- if ((callbackObj.options.start &&
422
- dataStatus === embedEventStatus.START) || // When start status is true it trigger only start releated payload
423
- (!callbackObj.options.start &&
424
- dataStatus === embedEventStatus.END) // When start status is false it trigger only end releated payload
425
- ) {
442
+ if (
443
+ // When start status is true it trigger only start releated
444
+ // payload
445
+ (callbackObj.options.start && dataStatus === embedEventStatus.START)
446
+ // When start status is false it trigger only end releated
447
+ // payload
448
+ || (!callbackObj.options.start && dataStatus === embedEventStatus.END)) {
426
449
  callbackObj.callback(data, (payload) => {
427
450
  this.triggerEventOnPort(eventPort, payload);
428
451
  });
@@ -437,6 +460,7 @@ export class TsEmbed {
437
460
  }
438
461
  /**
439
462
  * Gets the v1 event type (if applicable) for the EmbedEvent type
463
+ *
440
464
  * @param eventType The v2 event type
441
465
  * @returns The corresponding v1 event type if one exists
442
466
  * or else the v2 event type itself
@@ -448,6 +472,7 @@ export class TsEmbed {
448
472
  * Calculates the iframe center for the current visible viewPort
449
473
  * of iframe using Scroll position of Host App, offsetTop for iframe
450
474
  * in Host app. ViewPort height of the tab.
475
+ *
451
476
  * @returns iframe Center in visible viewport,
452
477
  * Iframe height,
453
478
  * View port height.
@@ -461,8 +486,7 @@ export class TsEmbed {
461
486
  let iframeVisibleViewPort;
462
487
  let iframeOffset;
463
488
  if (iframeScrolled < 0) {
464
- iframeVisibleViewPort =
465
- viewPortHeight - (offsetTopClient - scrollTopClient);
489
+ iframeVisibleViewPort = viewPortHeight - (offsetTopClient - scrollTopClient);
466
490
  iframeVisibleViewPort = Math.min(iframeHeight, iframeVisibleViewPort);
467
491
  iframeOffset = 0;
468
492
  }
@@ -486,6 +510,20 @@ export class TsEmbed {
486
510
  * @param messageType The message type
487
511
  * @param callback A callback as a function
488
512
  * @param options The message options
513
+ * @example
514
+ * ```js
515
+ * tsEmbed.on(EmbedEvent.Error, (data) => {
516
+ * console.error(data);
517
+ * });
518
+ * ```
519
+ * @example
520
+ * ```js
521
+ * tsEmbed.on(EmbedEvent.Save, (data) => {
522
+ * console.log("Answer save clicked", data);
523
+ * }, {
524
+ * start: true // This will trigger the callback on start of save
525
+ * });
526
+ * ```
489
527
  */
490
528
  on(messageType, callback, options = { start: false }) {
491
529
  if (this.isRendered) {
@@ -499,8 +537,11 @@ export class TsEmbed {
499
537
  /**
500
538
  * Triggers an event on specific Port registered against
501
539
  * for the EmbedEvent
540
+ *
502
541
  * @param eventType The message type
503
542
  * @param data The payload to send
543
+ * @param eventPort
544
+ * @param payload
504
545
  */
505
546
  triggerEventOnPort(eventPort, payload) {
506
547
  if (eventPort) {
@@ -521,6 +562,7 @@ export class TsEmbed {
521
562
  }
522
563
  /**
523
564
  * Triggers an event to the embedded app
565
+ *
524
566
  * @param messageType The event type
525
567
  * @param data The payload to send with the message
526
568
  */
@@ -532,6 +574,7 @@ export class TsEmbed {
532
574
  * Marks the ThoughtSpot object to have been rendered
533
575
  * Needs to be overridden by subclasses to do the actual
534
576
  * rendering of the iframe.
577
+ *
535
578
  * @param args
536
579
  */
537
580
  render() {
@@ -542,6 +585,7 @@ export class TsEmbed {
542
585
  * Get the Post Url Params for THOUGHTSPOT from the current
543
586
  * host app URL.
544
587
  * THOUGHTSPOT URL params starts with a prefix "ts-"
588
+ *
545
589
  * @version SDK: 1.14.0 | ThoughtSpot: 8.4.0.cl, 8.4.1-sw
546
590
  */
547
591
  getThoughtSpotPostUrlParams() {
@@ -565,6 +609,7 @@ export class TsEmbed {
565
609
  }
566
610
  /**
567
611
  * Destroys the ThoughtSpot embed, and remove any nodes from the DOM.
612
+ *
568
613
  * @version SDK: 1.19.1 | ThoughtSpot: *
569
614
  */
570
615
  destroy() {
@@ -575,11 +620,20 @@ export class TsEmbed {
575
620
  console.log('Error destroying TS Embed', e);
576
621
  }
577
622
  }
623
+ getUnderlyingFrameElement() {
624
+ return this.iFrame;
625
+ }
626
+ async prerenderGeneric() {
627
+ const prerenderFrameSrc = this.getRootIframeSrc();
628
+ return this.renderIFrame(prerenderFrameSrc);
629
+ }
578
630
  }
579
631
  /**
580
632
  * Base class for embedding v1 experience
581
633
  * Note: The v1 version of ThoughtSpot Blink works on the AngularJS stack
582
634
  * which is currently under migration to v2
635
+ *
636
+ * @inheritdoc
583
637
  */
584
638
  export class V1Embed extends TsEmbed {
585
639
  constructor(domSelector, viewConfig) {
@@ -587,13 +641,37 @@ export class V1Embed extends TsEmbed {
587
641
  this.viewConfig = viewConfig;
588
642
  }
589
643
  /**
590
- * Render the app in an iframe and set up event handlers
644
+ * Render the ap p in an iframe and set up event handlers
645
+ *
591
646
  * @param iframeSrc
592
647
  */
593
648
  renderV1Embed(iframeSrc) {
594
- return this.renderIFrame(iframeSrc, this.viewConfig.frameParams);
649
+ return this.renderIFrame(iframeSrc);
650
+ }
651
+ getRootIframeSrc() {
652
+ const runtimeFilters = this.viewConfig.runtimeFilters;
653
+ const filterQuery = getFilterQuery(runtimeFilters || []);
654
+ const queryParams = this.getEmbedParams();
655
+ const queryString = [filterQuery, queryParams].filter(Boolean).join('&');
656
+ return this.getV1EmbedBasePath(queryString);
595
657
  }
596
- // @override
658
+ /**
659
+ * @inheritdoc
660
+ * @example
661
+ * ```js
662
+ * tsEmbed.on(EmbedEvent.Error, (data) => {
663
+ * console.error(data);
664
+ * });
665
+ * ```
666
+ * @example
667
+ * ```js
668
+ * tsEmbed.on(EmbedEvent.Save, (data) => {
669
+ * console.log("Answer save clicked", data);
670
+ * }, {
671
+ * start: true // This will trigger the callback on start of save
672
+ * });
673
+ * ```
674
+ */
597
675
  on(messageType, callback, options = { start: false }) {
598
676
  const eventType = this.getCompatibleEventType(messageType);
599
677
  uploadMixpanelEvent(`${MIXPANEL_EVENT.VISUAL_SDK_ON}-${messageType}`);
@@ -1 +1 @@
1
- {"version":3,"file":"ts-embed.js","sourceRoot":"","sources":["../../../src/embed/ts-embed.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ts-embed.js","sourceRoot":"","sources":["../../../src/embed/ts-embed.ts"],"names":[],"mappings":"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"}