@thoughtspot/visual-embed-sdk 1.43.0 → 1.44.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.
- package/cjs/package.json +1 -1
- package/cjs/src/api-intercept.d.ts +51 -0
- package/cjs/src/api-intercept.d.ts.map +1 -0
- package/cjs/src/api-intercept.js +180 -0
- package/cjs/src/api-intercept.js.map +1 -0
- package/cjs/src/api-intercept.spec.d.ts +2 -0
- package/cjs/src/api-intercept.spec.d.ts.map +1 -0
- package/cjs/src/api-intercept.spec.js +672 -0
- package/cjs/src/api-intercept.spec.js.map +1 -0
- package/cjs/src/css-variables.d.ts +4 -0
- package/cjs/src/css-variables.d.ts.map +1 -1
- package/cjs/src/embed/app.d.ts +15 -5
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +7 -5
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +30 -0
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/conversation.d.ts +17 -2
- package/cjs/src/embed/conversation.d.ts.map +1 -1
- package/cjs/src/embed/conversation.js +5 -2
- package/cjs/src/embed/conversation.js.map +1 -1
- package/cjs/src/embed/conversation.spec.js +41 -0
- package/cjs/src/embed/conversation.spec.js.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.d.ts +11 -1
- package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.js +1 -0
- package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +15 -0
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +7 -2
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +33 -0
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/search.d.ts +0 -7
- package/cjs/src/embed/search.d.ts.map +1 -1
- package/cjs/src/embed/search.js +1 -4
- package/cjs/src/embed/search.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +10 -0
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +56 -15
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +412 -238
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/index.d.ts +2 -2
- package/cjs/src/index.d.ts.map +1 -1
- package/cjs/src/index.js +2 -1
- package/cjs/src/index.js.map +1 -1
- package/cjs/src/react/all-types-export.d.ts +1 -1
- package/cjs/src/react/all-types-export.d.ts.map +1 -1
- package/cjs/src/react/all-types-export.js +2 -1
- package/cjs/src/react/all-types-export.js.map +1 -1
- package/cjs/src/types.d.ts +246 -89
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +182 -70
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/logger.d.ts.map +1 -1
- package/cjs/src/utils/logger.js +1 -2
- package/cjs/src/utils/logger.js.map +1 -1
- package/cjs/src/utils/processData.d.ts +1 -1
- package/cjs/src/utils/processData.d.ts.map +1 -1
- package/cjs/src/utils/processData.js +8 -8
- package/cjs/src/utils/processData.js.map +1 -1
- package/cjs/src/utils/processData.spec.js.map +1 -1
- package/dist/{index-HZ94j9Ey.js → index-B2QPwxuL.js} +1 -1
- package/dist/src/api-intercept.d.ts +51 -0
- package/dist/src/api-intercept.d.ts.map +1 -0
- package/dist/src/api-intercept.spec.d.ts +2 -0
- package/dist/src/api-intercept.spec.d.ts.map +1 -0
- package/dist/src/css-variables.d.ts +4 -0
- package/dist/src/css-variables.d.ts.map +1 -1
- package/dist/src/embed/app.d.ts +15 -5
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/conversation.d.ts +17 -2
- package/dist/src/embed/conversation.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/contracts.d.ts +11 -1
- package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +15 -0
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/search.d.ts +0 -7
- package/dist/src/embed/search.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +10 -0
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/react/all-types-export.d.ts +1 -1
- package/dist/src/react/all-types-export.d.ts.map +1 -1
- package/dist/src/types.d.ts +246 -89
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/logger.d.ts.map +1 -1
- package/dist/src/utils/processData.d.ts +1 -1
- package/dist/src/utils/processData.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +446 -119
- package/dist/tsembed-react.js +445 -118
- package/dist/tsembed.es.js +3588 -3261
- package/dist/tsembed.js +3586 -3259
- package/dist/visual-embed-sdk-react-full.d.ts +316 -103
- package/dist/visual-embed-sdk-react.d.ts +313 -103
- package/dist/visual-embed-sdk.d.ts +316 -103
- package/lib/package.json +1 -1
- package/lib/src/api-intercept.d.ts +51 -0
- package/lib/src/api-intercept.d.ts.map +1 -0
- package/lib/src/api-intercept.js +173 -0
- package/lib/src/api-intercept.js.map +1 -0
- package/lib/src/api-intercept.spec.d.ts +2 -0
- package/lib/src/api-intercept.spec.d.ts.map +1 -0
- package/lib/src/api-intercept.spec.js +669 -0
- package/lib/src/api-intercept.spec.js.map +1 -0
- package/lib/src/css-variables.d.ts +4 -0
- package/lib/src/css-variables.d.ts.map +1 -1
- package/lib/src/embed/app.d.ts +15 -5
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +8 -6
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +30 -0
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/conversation.d.ts +17 -2
- package/lib/src/embed/conversation.d.ts.map +1 -1
- package/lib/src/embed/conversation.js +5 -2
- package/lib/src/embed/conversation.js.map +1 -1
- package/lib/src/embed/conversation.spec.js +41 -0
- package/lib/src/embed/conversation.spec.js.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.d.ts +11 -1
- package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.js +1 -0
- package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +15 -0
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +7 -2
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +33 -0
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/search.d.ts +0 -7
- package/lib/src/embed/search.d.ts.map +1 -1
- package/lib/src/embed/search.js +1 -4
- package/lib/src/embed/search.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +10 -0
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +56 -15
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +412 -238
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/index.d.ts +2 -2
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/index.js +2 -2
- package/lib/src/index.js.map +1 -1
- package/lib/src/react/all-types-export.d.ts +1 -1
- package/lib/src/react/all-types-export.d.ts.map +1 -1
- package/lib/src/react/all-types-export.js +1 -1
- package/lib/src/react/all-types-export.js.map +1 -1
- package/lib/src/types.d.ts +246 -89
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +181 -69
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/logger.d.ts.map +1 -1
- package/lib/src/utils/logger.js +1 -2
- package/lib/src/utils/logger.js.map +1 -1
- package/lib/src/utils/processData.d.ts +1 -1
- package/lib/src/utils/processData.d.ts.map +1 -1
- package/lib/src/utils/processData.js +8 -8
- package/lib/src/utils/processData.js.map +1 -1
- package/lib/src/utils/processData.spec.js.map +1 -1
- package/package.json +1 -1
- package/src/api-intercept.spec.ts +856 -0
- package/src/api-intercept.ts +204 -0
- package/src/css-variables.ts +5 -0
- package/src/embed/app.spec.ts +41 -2
- package/src/embed/app.ts +48 -38
- package/src/embed/conversation.spec.ts +54 -0
- package/src/embed/conversation.ts +24 -3
- package/src/embed/hostEventClient/contracts.ts +10 -0
- package/src/embed/liveboard.spec.ts +41 -0
- package/src/embed/liveboard.ts +25 -2
- package/src/embed/search.ts +1 -14
- package/src/embed/ts-embed.spec.ts +498 -250
- package/src/embed/ts-embed.ts +80 -32
- package/src/index.ts +2 -0
- package/src/react/all-types-export.ts +1 -0
- package/src/types.ts +328 -165
- package/src/utils/logger.ts +1 -2
- package/src/utils/processData.spec.ts +0 -1
- package/src/utils/processData.ts +10 -11
|
@@ -7,6 +7,7 @@ export enum UIPassthroughEvent {
|
|
|
7
7
|
GetAvailableUIPassthroughs = 'getAvailableUiPassthroughs',
|
|
8
8
|
GetAnswerConfig = 'getAnswerPageConfig',
|
|
9
9
|
GetLiveboardConfig = 'getPinboardPageConfig',
|
|
10
|
+
GetUnsavedAnswerTML = 'getUnsavedAnswerTML',
|
|
10
11
|
}
|
|
11
12
|
|
|
12
13
|
// UI Passthrough Contract
|
|
@@ -63,6 +64,15 @@ export type UIPassthroughContractBase = {
|
|
|
63
64
|
request: any;
|
|
64
65
|
response: any;
|
|
65
66
|
};
|
|
67
|
+
[UIPassthroughEvent.GetUnsavedAnswerTML]: {
|
|
68
|
+
request: {
|
|
69
|
+
sessionId?: string;
|
|
70
|
+
vizId?: string;
|
|
71
|
+
};
|
|
72
|
+
response: {
|
|
73
|
+
tml: string;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
66
76
|
};
|
|
67
77
|
|
|
68
78
|
// UI Passthrough Request and Response
|
|
@@ -483,6 +483,18 @@ describe('Liveboard/viz embed tests', () => {
|
|
|
483
483
|
});
|
|
484
484
|
});
|
|
485
485
|
|
|
486
|
+
test('should not add liveboardXLSXCSVDownload flag when undefined', async () => {
|
|
487
|
+
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
488
|
+
...defaultViewConfig,
|
|
489
|
+
liveboardId,
|
|
490
|
+
} as LiveboardViewConfig);
|
|
491
|
+
liveboardEmbed.render();
|
|
492
|
+
await executeAfterWait(() => {
|
|
493
|
+
const iframeSrc = getIFrameSrc();
|
|
494
|
+
expect(iframeSrc).not.toContain('isLiveboardXLSXCSVDownloadEnabled');
|
|
495
|
+
});
|
|
496
|
+
});
|
|
497
|
+
|
|
486
498
|
test('should add isCentralizedLiveboardFilterUXEnabled flag and set value to true to the iframe src', async () => {
|
|
487
499
|
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
488
500
|
...defaultViewConfig,
|
|
@@ -840,6 +852,35 @@ describe('Liveboard/viz embed tests', () => {
|
|
|
840
852
|
});
|
|
841
853
|
});
|
|
842
854
|
|
|
855
|
+
test('should render the liveboard embed with updatedSpotterChatPrompt', async () => {
|
|
856
|
+
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
857
|
+
...defaultViewConfig,
|
|
858
|
+
liveboardId,
|
|
859
|
+
updatedSpotterChatPrompt: true,
|
|
860
|
+
} as LiveboardViewConfig);
|
|
861
|
+
await liveboardEmbed.render();
|
|
862
|
+
await executeAfterWait(() => {
|
|
863
|
+
expectUrlMatchesWithParams(
|
|
864
|
+
getIFrameSrc(),
|
|
865
|
+
`http://${thoughtSpotHost}/?embedApp=true${defaultParams}${prefixParams}&updatedSpotterChatPrompt=true#/embed/viz/${liveboardId}`,
|
|
866
|
+
);
|
|
867
|
+
});
|
|
868
|
+
});
|
|
869
|
+
test('should render the liveboard embed with updatedSpotterChatPrompt disabled', async () => {
|
|
870
|
+
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
871
|
+
...defaultViewConfig,
|
|
872
|
+
liveboardId,
|
|
873
|
+
updatedSpotterChatPrompt: false,
|
|
874
|
+
} as LiveboardViewConfig);
|
|
875
|
+
await liveboardEmbed.render();
|
|
876
|
+
await executeAfterWait(() => {
|
|
877
|
+
expectUrlMatchesWithParams(
|
|
878
|
+
getIFrameSrc(),
|
|
879
|
+
`http://${thoughtSpotHost}/?embedApp=true${defaultParams}${prefixParams}&updatedSpotterChatPrompt=false#/embed/viz/${liveboardId}`,
|
|
880
|
+
);
|
|
881
|
+
});
|
|
882
|
+
});
|
|
883
|
+
|
|
843
884
|
test('SetActiveTab Hostevent should not trigger the navigate event with the correct path, for vizEmbed', async () => {
|
|
844
885
|
const mockProcessTrigger = jest.spyOn(tsEmbed.TsEmbed.prototype, 'trigger');
|
|
845
886
|
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
package/src/embed/liveboard.ts
CHANGED
|
@@ -396,6 +396,21 @@ export interface LiveboardViewConfig extends BaseViewConfig, LiveboardOtherViewC
|
|
|
396
396
|
* @version SDK: 1.41.1 | ThoughtSpot: 10.5.0.cl
|
|
397
397
|
*/
|
|
398
398
|
showSpotterLimitations?: boolean;
|
|
399
|
+
/**
|
|
400
|
+
* updatedSpotterChatPrompt : Controls the updated spotter chat prompt.
|
|
401
|
+
*
|
|
402
|
+
* Supported embed types: `LiveboardEmbed`
|
|
403
|
+
* @default false
|
|
404
|
+
* @example
|
|
405
|
+
* ```js
|
|
406
|
+
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
407
|
+
* ... //other embed view config
|
|
408
|
+
* updatedSpotterChatPrompt : true,
|
|
409
|
+
* })
|
|
410
|
+
* ```
|
|
411
|
+
* @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
|
|
412
|
+
*/
|
|
413
|
+
updatedSpotterChatPrompt?: boolean;
|
|
399
414
|
}
|
|
400
415
|
|
|
401
416
|
/**
|
|
@@ -474,12 +489,13 @@ export class LiveboardEmbed extends V1Embed {
|
|
|
474
489
|
isForceRedirect,
|
|
475
490
|
dataSourceId,
|
|
476
491
|
coverAndFilterOptionInPDF = false,
|
|
477
|
-
liveboardXLSXCSVDownload
|
|
492
|
+
liveboardXLSXCSVDownload,
|
|
478
493
|
isLiveboardStylingAndGroupingEnabled,
|
|
479
494
|
isPNGInScheduledEmailsEnabled = false,
|
|
480
495
|
showSpotterLimitations,
|
|
481
496
|
isCentralizedLiveboardFilterUXEnabled = false,
|
|
482
497
|
isLinkParametersEnabled,
|
|
498
|
+
updatedSpotterChatPrompt,
|
|
483
499
|
} = this.viewConfig;
|
|
484
500
|
|
|
485
501
|
const preventLiveboardFilterRemoval = this.viewConfig.preventLiveboardFilterRemoval
|
|
@@ -501,6 +517,9 @@ export class LiveboardEmbed extends V1Embed {
|
|
|
501
517
|
if (preventLiveboardFilterRemoval) {
|
|
502
518
|
params[Param.preventLiveboardFilterRemoval] = true;
|
|
503
519
|
}
|
|
520
|
+
if (!isUndefined(updatedSpotterChatPrompt)) {
|
|
521
|
+
params[Param.UpdatedSpotterChatPrompt] = !!updatedSpotterChatPrompt;
|
|
522
|
+
}
|
|
504
523
|
if (visibleVizs) {
|
|
505
524
|
params[Param.visibleVizs] = visibleVizs;
|
|
506
525
|
}
|
|
@@ -574,7 +593,11 @@ export class LiveboardEmbed extends V1Embed {
|
|
|
574
593
|
params[Param.DataPanelV2Enabled] = dataPanelV2;
|
|
575
594
|
params[Param.EnableCustomColumnGroups] = enableCustomColumnGroups;
|
|
576
595
|
params[Param.CoverAndFilterOptionInPDF] = coverAndFilterOptionInPDF;
|
|
577
|
-
|
|
596
|
+
|
|
597
|
+
if (liveboardXLSXCSVDownload !== undefined) {
|
|
598
|
+
params[Param.LiveboardXLSXCSVDownload] = !!liveboardXLSXCSVDownload;
|
|
599
|
+
}
|
|
600
|
+
|
|
578
601
|
const queryParams = getQueryParamString(params, true);
|
|
579
602
|
|
|
580
603
|
return params;
|
package/src/embed/search.ts
CHANGED
|
@@ -26,6 +26,7 @@ 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 { getInterceptInitData } from '../api-intercept';
|
|
29
30
|
|
|
30
31
|
/**
|
|
31
32
|
* Configuration for search options.
|
|
@@ -276,13 +277,6 @@ export interface SearchViewConfig
|
|
|
276
277
|
* @deprecated Use {@link collapseSearchBar} instead
|
|
277
278
|
*/
|
|
278
279
|
collapseSearchBarInitially?: boolean;
|
|
279
|
-
/**
|
|
280
|
-
* Flag to enable onBeforeSearchExecute Embed Event
|
|
281
|
-
*
|
|
282
|
-
* Supported embed types: `SearchEmbed`
|
|
283
|
-
* @version: SDK: 1.29.0 | ThoughtSpot: 10.1.0.cl
|
|
284
|
-
*/
|
|
285
|
-
isOnBeforeGetVizDataInterceptEnabled?: boolean;
|
|
286
280
|
/**
|
|
287
281
|
* This controls the initial behaviour of custom column groups accordion.
|
|
288
282
|
* It takes DataPanelCustomColumnGroupsAccordionState enum values as input.
|
|
@@ -397,8 +391,6 @@ export class SearchEmbed extends TsEmbed {
|
|
|
397
391
|
runtimeParameters,
|
|
398
392
|
collapseSearchBarInitially = false,
|
|
399
393
|
enableCustomColumnGroups = false,
|
|
400
|
-
isOnBeforeGetVizDataInterceptEnabled = false,
|
|
401
|
-
|
|
402
394
|
dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL,
|
|
403
395
|
focusSearchBarOnRender = true,
|
|
404
396
|
excludeRuntimeParametersfromURL,
|
|
@@ -442,11 +434,6 @@ export class SearchEmbed extends TsEmbed {
|
|
|
442
434
|
queryParams[Param.HideSearchBar] = true;
|
|
443
435
|
}
|
|
444
436
|
|
|
445
|
-
if (isOnBeforeGetVizDataInterceptEnabled) {
|
|
446
|
-
|
|
447
|
-
queryParams[Param.IsOnBeforeGetVizDataInterceptEnabled] = isOnBeforeGetVizDataInterceptEnabled;
|
|
448
|
-
}
|
|
449
|
-
|
|
450
437
|
if (!focusSearchBarOnRender) {
|
|
451
438
|
queryParams[Param.FocusSearchBarOnRender] = focusSearchBarOnRender;
|
|
452
439
|
}
|