@thoughtspot/visual-embed-sdk 1.20.0 → 1.21.0-alpha.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 (185) hide show
  1. package/README.md +1 -1
  2. package/dist/src/auth.d.ts +84 -5
  3. package/dist/src/auth.d.ts.map +1 -1
  4. package/dist/src/config.d.ts +1 -0
  5. package/dist/src/config.d.ts.map +1 -1
  6. package/dist/src/embed/app.d.ts +19 -7
  7. package/dist/src/embed/app.d.ts.map +1 -1
  8. package/dist/src/embed/base.d.ts +39 -19
  9. package/dist/src/embed/base.d.ts.map +1 -1
  10. package/dist/src/embed/liveboard.d.ts +19 -7
  11. package/dist/src/embed/liveboard.d.ts.map +1 -1
  12. package/dist/src/embed/search-bar.d.ts +7 -1
  13. package/dist/src/embed/search-bar.d.ts.map +1 -1
  14. package/dist/src/embed/search.d.ts +11 -7
  15. package/dist/src/embed/search.d.ts.map +1 -1
  16. package/dist/src/embed/ts-embed.d.ts +97 -5
  17. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  18. package/dist/src/errors.d.ts.map +1 -1
  19. package/dist/src/index.d.ts +3 -3
  20. package/dist/src/index.d.ts.map +1 -1
  21. package/dist/src/mixpanel-service.d.ts +8 -0
  22. package/dist/src/mixpanel-service.d.ts.map +1 -1
  23. package/dist/src/react/index.d.ts.map +1 -1
  24. package/dist/src/react/util.d.ts +4 -0
  25. package/dist/src/react/util.d.ts.map +1 -1
  26. package/dist/src/test/test-utils.d.ts +11 -2
  27. package/dist/src/test/test-utils.d.ts.map +1 -1
  28. package/dist/src/types.d.ts +430 -98
  29. package/dist/src/types.d.ts.map +1 -1
  30. package/dist/src/utils/answerService.d.ts +7 -0
  31. package/dist/src/utils/answerService.d.ts.map +1 -1
  32. package/dist/src/utils/authService.d.ts +30 -0
  33. package/dist/src/utils/authService.d.ts.map +1 -1
  34. package/dist/src/utils/processData.d.ts +12 -0
  35. package/dist/src/utils/processData.d.ts.map +1 -1
  36. package/dist/src/utils/processTrigger.d.ts +7 -0
  37. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  38. package/dist/src/utils.d.ts +12 -0
  39. package/dist/src/utils.d.ts.map +1 -1
  40. package/dist/tsembed.es.js +849 -288
  41. package/dist/tsembed.js +822 -287
  42. package/lib/package.json +4 -10
  43. package/lib/src/auth.d.ts +84 -5
  44. package/lib/src/auth.d.ts.map +1 -1
  45. package/lib/src/auth.js +86 -26
  46. package/lib/src/auth.js.map +1 -1
  47. package/lib/src/auth.spec.js +14 -5
  48. package/lib/src/auth.spec.js.map +1 -1
  49. package/lib/src/config.d.ts +1 -0
  50. package/lib/src/config.d.ts.map +1 -1
  51. package/lib/src/config.js +5 -3
  52. package/lib/src/config.js.map +1 -1
  53. package/lib/src/config.spec.js.map +1 -1
  54. package/lib/src/embed/app.d.ts +19 -7
  55. package/lib/src/embed/app.d.ts.map +1 -1
  56. package/lib/src/embed/app.js +26 -16
  57. package/lib/src/embed/app.js.map +1 -1
  58. package/lib/src/embed/app.spec.js +12 -12
  59. package/lib/src/embed/app.spec.js.map +1 -1
  60. package/lib/src/embed/base.d.ts +39 -19
  61. package/lib/src/embed/base.d.ts.map +1 -1
  62. package/lib/src/embed/base.js +49 -15
  63. package/lib/src/embed/base.js.map +1 -1
  64. package/lib/src/embed/base.spec.js +2 -2
  65. package/lib/src/embed/base.spec.js.map +1 -1
  66. package/lib/src/embed/embed.spec.js +1 -1
  67. package/lib/src/embed/embed.spec.js.map +1 -1
  68. package/lib/src/embed/liveboard.d.ts +19 -7
  69. package/lib/src/embed/liveboard.d.ts.map +1 -1
  70. package/lib/src/embed/liveboard.js +50 -38
  71. package/lib/src/embed/liveboard.js.map +1 -1
  72. package/lib/src/embed/liveboard.spec.js +37 -30
  73. package/lib/src/embed/liveboard.spec.js.map +1 -1
  74. package/lib/src/embed/pinboard.spec.js +14 -26
  75. package/lib/src/embed/pinboard.spec.js.map +1 -1
  76. package/lib/src/embed/search-bar.d.ts +7 -1
  77. package/lib/src/embed/search-bar.d.ts.map +1 -1
  78. package/lib/src/embed/search-bar.js +6 -7
  79. package/lib/src/embed/search-bar.js.map +1 -1
  80. package/lib/src/embed/search.d.ts +11 -7
  81. package/lib/src/embed/search.d.ts.map +1 -1
  82. package/lib/src/embed/search.js +19 -15
  83. package/lib/src/embed/search.js.map +1 -1
  84. package/lib/src/embed/search.spec.js +16 -19
  85. package/lib/src/embed/search.spec.js.map +1 -1
  86. package/lib/src/embed/searchEmbed-basic-auth.spec.js +4 -0
  87. package/lib/src/embed/searchEmbed-basic-auth.spec.js.map +1 -1
  88. package/lib/src/embed/ts-embed.d.ts +97 -5
  89. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  90. package/lib/src/embed/ts-embed.js +180 -74
  91. package/lib/src/embed/ts-embed.js.map +1 -1
  92. package/lib/src/embed/ts-embed.spec.js +46 -24
  93. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  94. package/lib/src/errors.d.ts.map +1 -1
  95. package/lib/src/errors.js.map +1 -1
  96. package/lib/src/index.d.ts +3 -3
  97. package/lib/src/index.d.ts.map +1 -1
  98. package/lib/src/index.js +3 -3
  99. package/lib/src/index.js.map +1 -1
  100. package/lib/src/mixpanel-service.d.ts +8 -0
  101. package/lib/src/mixpanel-service.d.ts.map +1 -1
  102. package/lib/src/mixpanel-service.js +13 -1
  103. package/lib/src/mixpanel-service.js.map +1 -1
  104. package/lib/src/mixpanel-service.spec.js.map +1 -1
  105. package/lib/src/react/index.d.ts.map +1 -1
  106. package/lib/src/react/index.js +9 -7
  107. package/lib/src/react/index.js.map +1 -1
  108. package/lib/src/react/index.spec.js +29 -8
  109. package/lib/src/react/index.spec.js.map +1 -1
  110. package/lib/src/react/util.d.ts +4 -0
  111. package/lib/src/react/util.d.ts.map +1 -1
  112. package/lib/src/react/util.js +4 -0
  113. package/lib/src/react/util.js.map +1 -1
  114. package/lib/src/test/test-utils.d.ts +11 -2
  115. package/lib/src/test/test-utils.d.ts.map +1 -1
  116. package/lib/src/test/test-utils.js +36 -25
  117. package/lib/src/test/test-utils.js.map +1 -1
  118. package/lib/src/types.d.ts +430 -98
  119. package/lib/src/types.d.ts.map +1 -1
  120. package/lib/src/types.js +311 -73
  121. package/lib/src/types.js.map +1 -1
  122. package/lib/src/utils/answerService.d.ts +7 -0
  123. package/lib/src/utils/answerService.d.ts.map +1 -1
  124. package/lib/src/utils/answerService.js +7 -0
  125. package/lib/src/utils/answerService.js.map +1 -1
  126. package/lib/src/utils/answerService.spec.js.map +1 -1
  127. package/lib/src/utils/authService.d.ts +30 -0
  128. package/lib/src/utils/authService.d.ts.map +1 -1
  129. package/lib/src/utils/authService.js +39 -2
  130. package/lib/src/utils/authService.js.map +1 -1
  131. package/lib/src/utils/authService.spec.js.map +1 -1
  132. package/lib/src/utils/processData.d.ts +12 -0
  133. package/lib/src/utils/processData.d.ts.map +1 -1
  134. package/lib/src/utils/processData.js +33 -5
  135. package/lib/src/utils/processData.js.map +1 -1
  136. package/lib/src/utils/processData.spec.js.map +1 -1
  137. package/lib/src/utils/processTrigger.d.ts +7 -0
  138. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  139. package/lib/src/utils/processTrigger.js +17 -3
  140. package/lib/src/utils/processTrigger.js.map +1 -1
  141. package/lib/src/utils/processTrigger.spec.js.map +1 -1
  142. package/lib/src/utils.d.ts +12 -0
  143. package/lib/src/utils.d.ts.map +1 -1
  144. package/lib/src/utils.js +24 -19
  145. package/lib/src/utils.js.map +1 -1
  146. package/lib/src/utils.spec.js.map +1 -1
  147. package/lib/src/visual-embed-sdk.d.ts +695 -146
  148. package/package.json +4 -10
  149. package/src/auth.spec.ts +68 -150
  150. package/src/auth.ts +153 -101
  151. package/src/config.spec.ts +2 -4
  152. package/src/config.ts +5 -3
  153. package/src/embed/app.spec.ts +25 -14
  154. package/src/embed/app.ts +49 -37
  155. package/src/embed/base.spec.ts +6 -12
  156. package/src/embed/base.ts +74 -57
  157. package/src/embed/embed.spec.ts +5 -6
  158. package/src/embed/liveboard.spec.ts +56 -37
  159. package/src/embed/liveboard.ts +68 -66
  160. package/src/embed/pinboard.spec.ts +26 -29
  161. package/src/embed/search-bar.tsx +14 -9
  162. package/src/embed/search.spec.ts +31 -21
  163. package/src/embed/search.ts +28 -27
  164. package/src/embed/searchEmbed-basic-auth.spec.ts +22 -28
  165. package/src/embed/ts-embed.spec.ts +99 -144
  166. package/src/embed/ts-embed.ts +214 -159
  167. package/src/errors.ts +3 -6
  168. package/src/index.ts +23 -7
  169. package/src/mixpanel-service.spec.ts +1 -3
  170. package/src/mixpanel-service.ts +13 -1
  171. package/src/react/index.spec.tsx +72 -15
  172. package/src/react/index.tsx +43 -54
  173. package/src/react/util.ts +8 -4
  174. package/src/test/test-utils.ts +43 -39
  175. package/src/types.ts +428 -99
  176. package/src/utils/answerService.spec.ts +3 -5
  177. package/src/utils/answerService.ts +21 -17
  178. package/src/utils/authService.spec.ts +26 -41
  179. package/src/utils/authService.ts +47 -21
  180. package/src/utils/processData.spec.ts +26 -59
  181. package/src/utils/processData.ts +36 -14
  182. package/src/utils/processTrigger.spec.ts +1 -6
  183. package/src/utils/processTrigger.ts +18 -9
  184. package/src/utils.spec.ts +8 -12
  185. 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,21 +428,24 @@ 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
414
435
  */
415
436
  executeCallbacks(eventType, data, eventPort) {
416
- const callbacks = this.eventHandlerMap.get(eventType) || [];
437
+ const eventHandlers = this.eventHandlerMap.get(eventType) || [];
417
438
  const allHandlers = this.eventHandlerMap.get(EmbedEvent.ALL) || [];
418
- callbacks.push(...allHandlers);
439
+ const callbacks = [...eventHandlers, ...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) {
@@ -496,11 +534,34 @@ export class TsEmbed {
496
534
  this.eventHandlerMap.set(messageType, callbacks);
497
535
  return this;
498
536
  }
537
+ /**
538
+ * Removes an event listener for a particular event type.
539
+ *
540
+ * @param messageType The message type
541
+ * @param callback The callback to remove
542
+ * @example
543
+ * ```js
544
+ * const errorHandler = (data) => { console.error(data); };
545
+ * tsEmbed.on(EmbedEvent.Error, errorHandler);
546
+ * tsEmbed.off(EmbedEvent.Error, errorHandler);
547
+ * ```
548
+ */
549
+ off(messageType, callback) {
550
+ const callbacks = this.eventHandlerMap.get(messageType) || [];
551
+ const index = callbacks.findIndex((cb) => cb.callback === callback);
552
+ if (index > -1) {
553
+ callbacks.splice(index, 1);
554
+ }
555
+ return this;
556
+ }
499
557
  /**
500
558
  * Triggers an event on specific Port registered against
501
559
  * for the EmbedEvent
560
+ *
502
561
  * @param eventType The message type
503
562
  * @param data The payload to send
563
+ * @param eventPort
564
+ * @param payload
504
565
  */
505
566
  triggerEventOnPort(eventPort, payload) {
506
567
  if (eventPort) {
@@ -521,6 +582,7 @@ export class TsEmbed {
521
582
  }
522
583
  /**
523
584
  * Triggers an event to the embedded app
585
+ *
524
586
  * @param messageType The event type
525
587
  * @param data The payload to send with the message
526
588
  */
@@ -532,6 +594,7 @@ export class TsEmbed {
532
594
  * Marks the ThoughtSpot object to have been rendered
533
595
  * Needs to be overridden by subclasses to do the actual
534
596
  * rendering of the iframe.
597
+ *
535
598
  * @param args
536
599
  */
537
600
  render() {
@@ -542,6 +605,7 @@ export class TsEmbed {
542
605
  * Get the Post Url Params for THOUGHTSPOT from the current
543
606
  * host app URL.
544
607
  * THOUGHTSPOT URL params starts with a prefix "ts-"
608
+ *
545
609
  * @version SDK: 1.14.0 | ThoughtSpot: 8.4.0.cl, 8.4.1-sw
546
610
  */
547
611
  getThoughtSpotPostUrlParams() {
@@ -565,6 +629,7 @@ export class TsEmbed {
565
629
  }
566
630
  /**
567
631
  * Destroys the ThoughtSpot embed, and remove any nodes from the DOM.
632
+ *
568
633
  * @version SDK: 1.19.1 | ThoughtSpot: *
569
634
  */
570
635
  destroy() {
@@ -575,11 +640,28 @@ export class TsEmbed {
575
640
  console.log('Error destroying TS Embed', e);
576
641
  }
577
642
  }
643
+ getUnderlyingFrameElement() {
644
+ return this.iFrame;
645
+ }
646
+ /**
647
+ * Prerenders a generic instance of the TS component.
648
+ * This means without the path but with the flags already applied.
649
+ * This is useful for prerendering the component in the background.
650
+ *
651
+ * @version SDK: 1.21.0 | ThoughtSpot: * / Search: 9.3.0.cl
652
+ * @returns
653
+ */
654
+ async prerenderGeneric() {
655
+ const prerenderFrameSrc = this.getRootIframeSrc();
656
+ return this.renderIFrame(prerenderFrameSrc);
657
+ }
578
658
  }
579
659
  /**
580
660
  * Base class for embedding v1 experience
581
661
  * Note: The v1 version of ThoughtSpot Blink works on the AngularJS stack
582
662
  * which is currently under migration to v2
663
+ *
664
+ * @inheritdoc
583
665
  */
584
666
  export class V1Embed extends TsEmbed {
585
667
  constructor(domSelector, viewConfig) {
@@ -587,13 +669,37 @@ export class V1Embed extends TsEmbed {
587
669
  this.viewConfig = viewConfig;
588
670
  }
589
671
  /**
590
- * Render the app in an iframe and set up event handlers
672
+ * Render the ap p in an iframe and set up event handlers
673
+ *
591
674
  * @param iframeSrc
592
675
  */
593
676
  renderV1Embed(iframeSrc) {
594
- return this.renderIFrame(iframeSrc, this.viewConfig.frameParams);
677
+ return this.renderIFrame(iframeSrc);
678
+ }
679
+ getRootIframeSrc() {
680
+ const runtimeFilters = this.viewConfig.runtimeFilters;
681
+ const filterQuery = getFilterQuery(runtimeFilters || []);
682
+ const queryParams = this.getEmbedParams();
683
+ const queryString = [filterQuery, queryParams].filter(Boolean).join('&');
684
+ return this.getV1EmbedBasePath(queryString);
595
685
  }
596
- // @override
686
+ /**
687
+ * @inheritdoc
688
+ * @example
689
+ * ```js
690
+ * tsEmbed.on(EmbedEvent.Error, (data) => {
691
+ * console.error(data);
692
+ * });
693
+ * ```
694
+ * @example
695
+ * ```js
696
+ * tsEmbed.on(EmbedEvent.Save, (data) => {
697
+ * console.log("Answer save clicked", data);
698
+ * }, {
699
+ * start: true // This will trigger the callback on start of save
700
+ * });
701
+ * ```
702
+ */
597
703
  on(messageType, callback, options = { start: false }) {
598
704
  const eventType = this.getCompatibleEventType(messageType);
599
705
  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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"}