@thoughtspot/visual-embed-sdk 1.42.1-HE2 → 1.42.1-HE2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/cjs/package.json +2 -2
  2. package/cjs/src/embed/conversation.d.ts +2 -0
  3. package/cjs/src/embed/conversation.d.ts.map +1 -1
  4. package/cjs/src/embed/conversation.js +4 -0
  5. package/cjs/src/embed/conversation.js.map +1 -1
  6. package/cjs/src/embed/hostEventClient/contracts.d.ts +13 -2
  7. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  8. package/cjs/src/embed/hostEventClient/contracts.js +14 -1
  9. package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
  10. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +5 -5
  11. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  12. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  13. package/cjs/src/embed/liveboard.d.ts +4 -2
  14. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  15. package/cjs/src/embed/liveboard.js +6 -2
  16. package/cjs/src/embed/liveboard.js.map +1 -1
  17. package/cjs/src/embed/sage.d.ts +2 -0
  18. package/cjs/src/embed/sage.d.ts.map +1 -1
  19. package/cjs/src/embed/sage.js +4 -0
  20. package/cjs/src/embed/sage.js.map +1 -1
  21. package/cjs/src/embed/search-bar.d.ts +2 -0
  22. package/cjs/src/embed/search-bar.d.ts.map +1 -1
  23. package/cjs/src/embed/search-bar.js +4 -0
  24. package/cjs/src/embed/search-bar.js.map +1 -1
  25. package/cjs/src/embed/search.d.ts +2 -0
  26. package/cjs/src/embed/search.d.ts.map +1 -1
  27. package/cjs/src/embed/search.js +4 -0
  28. package/cjs/src/embed/search.js.map +1 -1
  29. package/cjs/src/embed/ts-embed.d.ts +3 -2
  30. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  31. package/cjs/src/embed/ts-embed.js +13 -1
  32. package/cjs/src/embed/ts-embed.js.map +1 -1
  33. package/cjs/src/types.d.ts +10 -1
  34. package/cjs/src/types.d.ts.map +1 -1
  35. package/cjs/src/types.js +9 -0
  36. package/cjs/src/types.js.map +1 -1
  37. package/cjs/src/utils/processTrigger.d.ts +2 -1
  38. package/cjs/src/utils/processTrigger.d.ts.map +1 -1
  39. package/cjs/src/utils/processTrigger.js.map +1 -1
  40. package/dist/index-BFdRRz03.js +7371 -0
  41. package/dist/index-UY-4yjBN.js +7371 -0
  42. package/dist/src/embed/conversation.d.ts +2 -0
  43. package/dist/src/embed/conversation.d.ts.map +1 -1
  44. package/dist/src/embed/hostEventClient/contracts.d.ts +13 -2
  45. package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  46. package/dist/src/embed/hostEventClient/host-event-client.d.ts +5 -5
  47. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  48. package/dist/src/embed/liveboard.d.ts +4 -2
  49. package/dist/src/embed/liveboard.d.ts.map +1 -1
  50. package/dist/src/embed/sage.d.ts +2 -0
  51. package/dist/src/embed/sage.d.ts.map +1 -1
  52. package/dist/src/embed/search-bar.d.ts +2 -0
  53. package/dist/src/embed/search-bar.d.ts.map +1 -1
  54. package/dist/src/embed/search.d.ts +2 -0
  55. package/dist/src/embed/search.d.ts.map +1 -1
  56. package/dist/src/embed/ts-embed.d.ts +3 -2
  57. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  58. package/dist/src/types.d.ts +10 -1
  59. package/dist/src/types.d.ts.map +1 -1
  60. package/dist/src/utils/processTrigger.d.ts +2 -1
  61. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  62. package/dist/tsembed-react.es.js +69 -16
  63. package/dist/tsembed-react.js +68 -15
  64. package/dist/tsembed.es.js +69 -16
  65. package/dist/tsembed.js +68 -15
  66. package/dist/visual-embed-sdk-react-full.d.ts +53 -9
  67. package/dist/visual-embed-sdk-react.d.ts +53 -9
  68. package/dist/visual-embed-sdk.d.ts +53 -9
  69. package/lib/package.json +2 -2
  70. package/lib/src/embed/conversation.d.ts +2 -0
  71. package/lib/src/embed/conversation.d.ts.map +1 -1
  72. package/lib/src/embed/conversation.js +4 -0
  73. package/lib/src/embed/conversation.js.map +1 -1
  74. package/lib/src/embed/hostEventClient/contracts.d.ts +13 -2
  75. package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  76. package/lib/src/embed/hostEventClient/contracts.js +13 -0
  77. package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
  78. package/lib/src/embed/hostEventClient/host-event-client.d.ts +5 -5
  79. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  80. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  81. package/lib/src/embed/liveboard.d.ts +4 -2
  82. package/lib/src/embed/liveboard.d.ts.map +1 -1
  83. package/lib/src/embed/liveboard.js +6 -2
  84. package/lib/src/embed/liveboard.js.map +1 -1
  85. package/lib/src/embed/sage.d.ts +2 -0
  86. package/lib/src/embed/sage.d.ts.map +1 -1
  87. package/lib/src/embed/sage.js +4 -0
  88. package/lib/src/embed/sage.js.map +1 -1
  89. package/lib/src/embed/search-bar.d.ts +2 -0
  90. package/lib/src/embed/search-bar.d.ts.map +1 -1
  91. package/lib/src/embed/search-bar.js +4 -0
  92. package/lib/src/embed/search-bar.js.map +1 -1
  93. package/lib/src/embed/search.d.ts +2 -0
  94. package/lib/src/embed/search.d.ts.map +1 -1
  95. package/lib/src/embed/search.js +4 -0
  96. package/lib/src/embed/search.js.map +1 -1
  97. package/lib/src/embed/ts-embed.d.ts +3 -2
  98. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  99. package/lib/src/embed/ts-embed.js +13 -1
  100. package/lib/src/embed/ts-embed.js.map +1 -1
  101. package/lib/src/types.d.ts +10 -1
  102. package/lib/src/types.d.ts.map +1 -1
  103. package/lib/src/types.js +9 -0
  104. package/lib/src/types.js.map +1 -1
  105. package/lib/src/utils/processTrigger.d.ts +2 -1
  106. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  107. package/lib/src/utils/processTrigger.js.map +1 -1
  108. package/package.json +2 -2
  109. package/src/embed/conversation.ts +7 -0
  110. package/src/embed/hostEventClient/contracts.ts +16 -3
  111. package/src/embed/hostEventClient/host-event-client.ts +7 -6
  112. package/src/embed/liveboard.ts +11 -4
  113. package/src/embed/sage.ts +6 -0
  114. package/src/embed/search-bar.tsx +6 -0
  115. package/src/embed/search.ts +7 -0
  116. package/src/embed/ts-embed.ts +18 -3
  117. package/src/types.ts +10 -0
  118. package/src/utils/processTrigger.ts +2 -1
@@ -25,8 +25,9 @@ import { calculateVisibleElementData, getQueryParamString, isUndefined } from '.
25
25
  import { getAuthPromise } from './base';
26
26
  import { TsEmbed, V1Embed } from './ts-embed';
27
27
  import { addPreviewStylesIfNotPresent } from '../utils/global-styles';
28
- import { TriggerPayload, TriggerResponse } from './hostEventClient/contracts';
28
+ import { ContextType, TriggerPayload, TriggerResponse } from './hostEventClient/contracts';
29
29
  import { logger } from '../utils/logger';
30
+ import { PageContextOptions } from 'visual-embed-sdk';
30
31
 
31
32
 
32
33
  /**
@@ -738,10 +739,11 @@ export class LiveboardEmbed extends V1Embed {
738
739
  * @param {any} data The payload to send with the message
739
740
  * @returns A promise that resolves with the response from the embedded app
740
741
  */
741
- public trigger<HostEventT extends HostEvent, PayloadT>(
742
+ public trigger<HostEventT extends HostEvent, PayloadT, ContextT extends ContextType>(
742
743
  messageType: HostEventT,
743
744
  data: TriggerPayload<PayloadT, HostEventT> = ({} as any),
744
- ): Promise<TriggerResponse<PayloadT, HostEventT>> {
745
+ context?: ContextT,
746
+ ): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>> {
745
747
  const dataWithVizId: any = data;
746
748
  if (messageType === HostEvent.SetActiveTab) {
747
749
  this.setActiveTab(data as { tabId: string });
@@ -750,7 +752,7 @@ export class LiveboardEmbed extends V1Embed {
750
752
  if (typeof dataWithVizId === 'object' && this.viewConfig.vizId) {
751
753
  dataWithVizId.vizId = this.viewConfig.vizId;
752
754
  }
753
- return super.trigger(messageType, dataWithVizId);
755
+ return super.trigger(messageType, dataWithVizId, context);
754
756
  }
755
757
  /**
756
758
  * Destroys the ThoughtSpot embed, and remove any nodes from the DOM.
@@ -827,6 +829,11 @@ export class LiveboardEmbed extends V1Embed {
827
829
 
828
830
  return url;
829
831
  }
832
+
833
+ public async getCurrentContext(): Promise<PageContextOptions> {
834
+ const context = await super.getCurrentContext();
835
+ return context;
836
+ }
830
837
  }
831
838
 
832
839
  /**
package/src/embed/sage.ts CHANGED
@@ -6,6 +6,7 @@
6
6
  * @author Mourya Balabhadra <mourya.balabhadra@thoughtspot.com>
7
7
  */
8
8
 
9
+ import { PageContextOptions } from 'visual-embed-sdk';
9
10
  import { DOMSelector, Param, BaseViewConfig, SearchLiveboardCommonViewConfig } from '../types';
10
11
  import { getQueryParamString } from '../utils';
11
12
  import { V1Embed } from './ts-embed';
@@ -229,4 +230,9 @@ export class SageEmbed extends V1Embed {
229
230
 
230
231
  return this;
231
232
  }
233
+
234
+ public async getCurrentContext(): Promise<PageContextOptions> {
235
+ const context = await super.getCurrentContext();
236
+ return context;
237
+ }
232
238
  }
@@ -2,6 +2,7 @@ import { SearchLiveboardCommonViewConfig, BaseViewConfig, DefaultAppInitData, Pa
2
2
  import { getQueryParamString } from '../utils';
3
3
  import { TsEmbed } from './ts-embed';
4
4
  import { SearchOptions } from './search';
5
+ import { PageContextOptions } from 'visual-embed-sdk';
5
6
 
6
7
  /**
7
8
  * @group Embed components
@@ -198,4 +199,9 @@ export class SearchBarEmbed extends TsEmbed {
198
199
  const defaultAppInitData = await super.getAppInitData();
199
200
  return { ...defaultAppInitData, ...this.getSearchInitData() };
200
201
  }
202
+
203
+ public async getCurrentContext(): Promise<PageContextOptions> {
204
+ const context = await super.getCurrentContext();
205
+ return context;
206
+ }
201
207
  }
@@ -26,6 +26,8 @@ import { ERROR_MESSAGE } from '../errors';
26
26
  import { getAuthPromise } from './base';
27
27
  import { getReleaseVersion } from '../auth';
28
28
  import { getEmbedConfig } from './embedConfig';
29
+ import { PageContextOptions } from 'visual-embed-sdk';
30
+ import { ContextType, PageType } from './hostEventClient/contracts';
29
31
 
30
32
  /**
31
33
  * Configuration for search options.
@@ -536,4 +538,9 @@ export class SearchEmbed extends TsEmbed {
536
538
  });
537
539
  return this;
538
540
  }
541
+
542
+ public async getCurrentContext(): Promise<PageContextOptions> {
543
+ const context = await super.getCurrentContext();
544
+ return context;
545
+ }
539
546
  }
@@ -10,11 +10,13 @@ import isEqual from 'lodash/isEqual';
10
10
  import isEmpty from 'lodash/isEmpty';
11
11
  import isObject from 'lodash/isObject';
12
12
  import {
13
+ ContextType,
13
14
  TriggerPayload,
14
15
  TriggerResponse,
15
16
  UIPassthroughArrayResponse,
16
17
  UIPassthroughEvent,
17
18
  UIPassthroughRequest,
19
+ PageType,
18
20
  } from './hostEventClient/contracts';
19
21
  import { logger } from '../utils/logger';
20
22
  import { getAuthenticationToken } from '../authToken';
@@ -71,6 +73,7 @@ import { getEmbedConfig } from './embedConfig';
71
73
  import { ERROR_MESSAGE } from '../errors';
72
74
  import { getPreauthInfo } from '../utils/sessionInfoService';
73
75
  import { HostEventClient } from './hostEventClient/host-event-client';
76
+ import { PageContextOptions } from '../../visual-embed-sdk';
74
77
 
75
78
  const { version } = pkgInfo;
76
79
 
@@ -1268,11 +1271,11 @@ export class TsEmbed {
1268
1271
  * @param {any} data The payload to send with the message
1269
1272
  * @returns A promise that resolves with the response from the embedded app
1270
1273
  */
1271
- public async trigger<HostEventT extends HostEvent, PayloadT>(
1274
+ public async trigger<HostEventT extends HostEvent, PayloadT, ContextT extends ContextType>(
1272
1275
  messageType: HostEventT,
1273
1276
  data: TriggerPayload<PayloadT, HostEventT> = {} as any,
1274
- context: any = {},
1275
- ): Promise<TriggerResponse<PayloadT, HostEventT>> {
1277
+ context?: ContextT,
1278
+ ): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>> {
1276
1279
  uploadMixpanelEvent(`${MIXPANEL_EVENT.VISUAL_SDK_TRIGGER}-${messageType}`);
1277
1280
 
1278
1281
  if (!this.isRendered) {
@@ -1337,6 +1340,18 @@ export class TsEmbed {
1337
1340
  return this.render();
1338
1341
  }
1339
1342
 
1343
+ public async getCurrentContext(): Promise<any> {
1344
+ this.executeAfterEmbedContainerLoaded(async () => {
1345
+ const context = await this.trigger(HostEvent.GetPageContext, {});
1346
+ return context;
1347
+ });
1348
+ return {
1349
+ page: ContextType.Default,
1350
+ pageType: PageType.PAGE,
1351
+ objectIds: {},
1352
+ };
1353
+ }
1354
+
1340
1355
  /**
1341
1356
  * Creates the preRender shell
1342
1357
  * @param showPreRenderByDefault - Show the preRender after render, hidden by default
package/src/types.ts CHANGED
@@ -4257,6 +4257,16 @@ export enum HostEvent {
4257
4257
  * ```
4258
4258
  */
4259
4259
  UpdateEmbedParams = 'updateEmbedParams',
4260
+
4261
+ /**
4262
+ * @hidden
4263
+ * Triggers the get of the page context.
4264
+ * @example
4265
+ * ```js
4266
+ * liveboardEmbed.trigger(HostEvent.GetPageContext);
4267
+ * ```
4268
+ */
4269
+ GetPageContext = 'GetPageContext',
4260
4270
  }
4261
4271
 
4262
4272
  /**
@@ -3,6 +3,7 @@ import { HostEvent, MessagePayload } from '../types';
3
3
  import { logger } from '../utils/logger';
4
4
  import { handlePresentEvent } from '../utils';
5
5
  import { getEmbedConfig } from '../embed/embedConfig';
6
+ import { ContextType } from 'src/embed/hostEventClient/contracts';
6
7
 
7
8
  /**
8
9
  * Reloads the ThoughtSpot iframe.
@@ -50,7 +51,7 @@ export function processTrigger(
50
51
  messageType: HostEvent,
51
52
  thoughtSpotHost: string,
52
53
  data: any,
53
- context?: any,
54
+ context?: ContextType,
54
55
  ): Promise<any> {
55
56
  return new Promise<any>((res, rej) => {
56
57
  if (messageType === HostEvent.Reload) {