@thoughtspot/visual-embed-sdk 1.44.4 → 1.45.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/embed/app.d.ts +33 -1
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +10 -4
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +28 -7
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/conversation.d.ts +10 -6
- package/cjs/src/embed/conversation.d.ts.map +1 -1
- package/cjs/src/embed/conversation.js +12 -2
- package/cjs/src/embed/conversation.js.map +1 -1
- package/cjs/src/embed/conversation.spec.js +3 -0
- package/cjs/src/embed/conversation.spec.js.map +1 -1
- package/cjs/src/embed/embed.spec.js +1 -0
- package/cjs/src/embed/embed.spec.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +32 -0
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +10 -4
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +57 -33
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/pinboard.spec.js +1 -0
- package/cjs/src/embed/pinboard.spec.js.map +1 -1
- package/cjs/src/embed/search.d.ts +1 -0
- package/cjs/src/embed/search.d.ts.map +1 -1
- package/cjs/src/embed/search.js +10 -2
- package/cjs/src/embed/search.js.map +1 -1
- package/cjs/src/embed/search.spec.js +12 -0
- package/cjs/src/embed/search.spec.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +7 -3
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +1 -0
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/types.d.ts +236 -158
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +198 -125
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answer-queries.d.ts +1 -1
- package/cjs/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
- package/cjs/src/utils/graphql/answerService/answer-queries.js +0 -1
- package/cjs/src/utils/graphql/answerService/answer-queries.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.spec.js +0 -1
- package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
- package/cjs/src/utils/processTrigger.js +1 -1
- package/cjs/src/utils/processTrigger.js.map +1 -1
- package/cjs/src/utils/processTrigger.spec.js +12 -0
- package/cjs/src/utils/processTrigger.spec.js.map +1 -1
- package/dist/{index-C5FAW929.js → index-Dk-SLdNk.js} +1 -1
- package/dist/src/embed/app.d.ts +33 -1
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/conversation.d.ts +10 -6
- package/dist/src/embed/conversation.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +32 -0
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/search.d.ts +1 -0
- package/dist/src/embed/search.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/types.d.ts +236 -158
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/graphql/answerService/answer-queries.d.ts +1 -1
- package/dist/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +251 -145
- package/dist/tsembed-react.js +250 -144
- package/dist/tsembed.es.js +251 -145
- package/dist/tsembed.js +250 -144
- package/dist/visual-embed-sdk-react-full.d.ts +303 -146
- package/dist/visual-embed-sdk-react.d.ts +303 -146
- package/dist/visual-embed-sdk.d.ts +308 -163
- package/lib/package.json +1 -1
- package/lib/src/embed/app.d.ts +33 -1
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +10 -4
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +28 -7
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/conversation.d.ts +10 -6
- package/lib/src/embed/conversation.d.ts.map +1 -1
- package/lib/src/embed/conversation.js +12 -2
- package/lib/src/embed/conversation.js.map +1 -1
- package/lib/src/embed/conversation.spec.js +3 -0
- package/lib/src/embed/conversation.spec.js.map +1 -1
- package/lib/src/embed/embed.spec.js +1 -0
- package/lib/src/embed/embed.spec.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +32 -0
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +10 -4
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +57 -33
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/pinboard.spec.js +1 -0
- package/lib/src/embed/pinboard.spec.js.map +1 -1
- package/lib/src/embed/search.d.ts +1 -0
- package/lib/src/embed/search.d.ts.map +1 -1
- package/lib/src/embed/search.js +10 -2
- package/lib/src/embed/search.js.map +1 -1
- package/lib/src/embed/search.spec.js +12 -0
- package/lib/src/embed/search.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +7 -3
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +1 -0
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/types.d.ts +236 -158
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +198 -125
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answer-queries.d.ts +1 -1
- package/lib/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
- package/lib/src/utils/graphql/answerService/answer-queries.js +0 -1
- package/lib/src/utils/graphql/answerService/answer-queries.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.spec.js +0 -1
- package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
- package/lib/src/utils/processTrigger.js +1 -1
- package/lib/src/utils/processTrigger.js.map +1 -1
- package/lib/src/utils/processTrigger.spec.js +12 -0
- package/lib/src/utils/processTrigger.spec.js.map +1 -1
- package/package.json +1 -1
- package/src/embed/app.spec.ts +39 -7
- package/src/embed/app.ts +50 -6
- package/src/embed/conversation.spec.ts +3 -0
- package/src/embed/conversation.ts +22 -8
- package/src/embed/embed.spec.ts +1 -0
- package/src/embed/liveboard.spec.ts +77 -42
- package/src/embed/liveboard.ts +47 -5
- package/src/embed/pinboard.spec.ts +1 -0
- package/src/embed/search.spec.ts +16 -0
- package/src/embed/search.ts +12 -1
- package/src/embed/ts-embed.spec.ts +1 -0
- package/src/embed/ts-embed.ts +7 -3
- package/src/types.ts +263 -184
- package/src/utils/graphql/answerService/answer-queries.ts +0 -1
- package/src/utils/graphql/answerService/answerService.spec.ts +0 -1
- package/src/utils/processTrigger.spec.ts +18 -0
- package/src/utils/processTrigger.ts +1 -1
|
@@ -184,6 +184,21 @@ describe('Liveboard/viz embed tests', () => {
|
|
|
184
184
|
});
|
|
185
185
|
});
|
|
186
186
|
|
|
187
|
+
test('should set isThisPeriodInDateFiltersEnabled to true in url', async () => {
|
|
188
|
+
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
189
|
+
...defaultViewConfig,
|
|
190
|
+
liveboardId,
|
|
191
|
+
isThisPeriodInDateFiltersEnabled: true,
|
|
192
|
+
} as LiveboardViewConfig);
|
|
193
|
+
liveboardEmbed.render();
|
|
194
|
+
await executeAfterWait(() => {
|
|
195
|
+
expectUrlMatchesWithParams(
|
|
196
|
+
getIFrameSrc(),
|
|
197
|
+
`http://${thoughtSpotHost}/?embedApp=true${defaultParams}&isThisPeriodInDateFiltersEnabled=true${prefixParams}#/embed/viz/${liveboardId}`,
|
|
198
|
+
);
|
|
199
|
+
});
|
|
200
|
+
});
|
|
201
|
+
|
|
187
202
|
test('should set isLiveboardPermissionV2Enabled to true in url', async () => {
|
|
188
203
|
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
189
204
|
isEnhancedFilterInteractivityEnabled: true,
|
|
@@ -214,6 +229,66 @@ describe('Liveboard/viz embed tests', () => {
|
|
|
214
229
|
});
|
|
215
230
|
});
|
|
216
231
|
|
|
232
|
+
test('should set isLiveboardXLSXCSVDownloadEnabled to true in url', async () => {
|
|
233
|
+
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
234
|
+
isLiveboardXLSXCSVDownloadEnabled: true,
|
|
235
|
+
...defaultViewConfig,
|
|
236
|
+
liveboardId,
|
|
237
|
+
} as LiveboardViewConfig);
|
|
238
|
+
liveboardEmbed.render();
|
|
239
|
+
await executeAfterWait(() => {
|
|
240
|
+
expectUrlMatchesWithParams(
|
|
241
|
+
getIFrameSrc(),
|
|
242
|
+
`http://${thoughtSpotHost}/?embedApp=true${defaultParams}&isLiveboardXLSXCSVDownloadEnabled=true${prefixParams}#/embed/viz/${liveboardId}`,
|
|
243
|
+
);
|
|
244
|
+
});
|
|
245
|
+
});
|
|
246
|
+
|
|
247
|
+
test('should set isLiveboardXLSXCSVDownloadEnabled to false in url', async () => {
|
|
248
|
+
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
249
|
+
isLiveboardXLSXCSVDownloadEnabled: false,
|
|
250
|
+
...defaultViewConfig,
|
|
251
|
+
liveboardId,
|
|
252
|
+
} as LiveboardViewConfig);
|
|
253
|
+
liveboardEmbed.render();
|
|
254
|
+
await executeAfterWait(() => {
|
|
255
|
+
expectUrlMatchesWithParams(
|
|
256
|
+
getIFrameSrc(),
|
|
257
|
+
`http://${thoughtSpotHost}/?embedApp=true${defaultParams}&isLiveboardXLSXCSVDownloadEnabled=false${prefixParams}#/embed/viz/${liveboardId}`,
|
|
258
|
+
);
|
|
259
|
+
});
|
|
260
|
+
});
|
|
261
|
+
|
|
262
|
+
test('should set isGranularXLSXCSVSchedulesEnabled to true in url', async () => {
|
|
263
|
+
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
264
|
+
isGranularXLSXCSVSchedulesEnabled: true,
|
|
265
|
+
...defaultViewConfig,
|
|
266
|
+
liveboardId,
|
|
267
|
+
} as LiveboardViewConfig);
|
|
268
|
+
liveboardEmbed.render();
|
|
269
|
+
await executeAfterWait(() => {
|
|
270
|
+
expectUrlMatchesWithParams(
|
|
271
|
+
getIFrameSrc(),
|
|
272
|
+
`http://${thoughtSpotHost}/?embedApp=true${defaultParams}&isGranularXLSXCSVSchedulesEnabled=true${prefixParams}#/embed/viz/${liveboardId}`,
|
|
273
|
+
);
|
|
274
|
+
});
|
|
275
|
+
});
|
|
276
|
+
|
|
277
|
+
test('should set isGranularXLSXCSVSchedulesEnabled to false in url', async () => {
|
|
278
|
+
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
279
|
+
isGranularXLSXCSVSchedulesEnabled: false,
|
|
280
|
+
...defaultViewConfig,
|
|
281
|
+
liveboardId,
|
|
282
|
+
} as LiveboardViewConfig);
|
|
283
|
+
liveboardEmbed.render();
|
|
284
|
+
await executeAfterWait(() => {
|
|
285
|
+
expectUrlMatchesWithParams(
|
|
286
|
+
getIFrameSrc(),
|
|
287
|
+
`http://${thoughtSpotHost}/?embedApp=true${defaultParams}&isGranularXLSXCSVSchedulesEnabled=false${prefixParams}#/embed/viz/${liveboardId}`,
|
|
288
|
+
);
|
|
289
|
+
});
|
|
290
|
+
});
|
|
291
|
+
|
|
217
292
|
test('should set isLinkParametersEnabled to true in url', async () => {
|
|
218
293
|
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
219
294
|
isLinkParametersEnabled: true,
|
|
@@ -518,48 +593,6 @@ describe('Liveboard/viz embed tests', () => {
|
|
|
518
593
|
});
|
|
519
594
|
});
|
|
520
595
|
|
|
521
|
-
test('should add liveboardXLSXCSVDownload flag and set value to true to the iframe src', async () => {
|
|
522
|
-
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
523
|
-
...defaultViewConfig,
|
|
524
|
-
liveboardId,
|
|
525
|
-
liveboardXLSXCSVDownload: true,
|
|
526
|
-
} as LiveboardViewConfig);
|
|
527
|
-
liveboardEmbed.render();
|
|
528
|
-
await executeAfterWait(() => {
|
|
529
|
-
expectUrlMatchesWithParams(
|
|
530
|
-
getIFrameSrc(),
|
|
531
|
-
`http://${thoughtSpotHost}/?embedApp=true${defaultParams}&isLiveboardXLSXCSVDownloadEnabled=true${prefixParams}#/embed/viz/${liveboardId}`,
|
|
532
|
-
);
|
|
533
|
-
});
|
|
534
|
-
});
|
|
535
|
-
|
|
536
|
-
test('should add liveboardXLSXCSVDownload flag and set value to false to the iframe src', async () => {
|
|
537
|
-
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
538
|
-
...defaultViewConfig,
|
|
539
|
-
liveboardId,
|
|
540
|
-
liveboardXLSXCSVDownload: false,
|
|
541
|
-
} as LiveboardViewConfig);
|
|
542
|
-
liveboardEmbed.render();
|
|
543
|
-
await executeAfterWait(() => {
|
|
544
|
-
expectUrlMatchesWithParams(
|
|
545
|
-
getIFrameSrc(),
|
|
546
|
-
`http://${thoughtSpotHost}/?embedApp=true${defaultParams}&isLiveboardXLSXCSVDownloadEnabled=false&${prefixParams}#/embed/viz/${liveboardId}`,
|
|
547
|
-
);
|
|
548
|
-
});
|
|
549
|
-
});
|
|
550
|
-
|
|
551
|
-
test('should not add liveboardXLSXCSVDownload flag when undefined', async () => {
|
|
552
|
-
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
553
|
-
...defaultViewConfig,
|
|
554
|
-
liveboardId,
|
|
555
|
-
} as LiveboardViewConfig);
|
|
556
|
-
liveboardEmbed.render();
|
|
557
|
-
await executeAfterWait(() => {
|
|
558
|
-
const iframeSrc = getIFrameSrc();
|
|
559
|
-
expect(iframeSrc).not.toContain('isLiveboardXLSXCSVDownloadEnabled');
|
|
560
|
-
});
|
|
561
|
-
});
|
|
562
|
-
|
|
563
596
|
test('should add isCentralizedLiveboardFilterUXEnabled flag and set value to true to the iframe src', async () => {
|
|
564
597
|
const liveboardEmbed = new LiveboardEmbed(getRootEl(), {
|
|
565
598
|
...defaultViewConfig,
|
|
@@ -646,6 +679,7 @@ describe('Liveboard/viz embed tests', () => {
|
|
|
646
679
|
values: [1000],
|
|
647
680
|
},
|
|
648
681
|
],
|
|
682
|
+
excludeRuntimeFiltersfromURL: undefined,
|
|
649
683
|
} as LiveboardViewConfig);
|
|
650
684
|
liveboardEmbed.render();
|
|
651
685
|
const runtimeFilter = 'col1=sales&op1=EQ&val1=1000';
|
|
@@ -890,6 +924,7 @@ describe('Liveboard/viz embed tests', () => {
|
|
|
890
924
|
value: 1,
|
|
891
925
|
},
|
|
892
926
|
],
|
|
927
|
+
excludeRuntimeParametersfromURL: undefined,
|
|
893
928
|
} as LiveboardViewConfig);
|
|
894
929
|
await liveboardEmbed.render();
|
|
895
930
|
await executeAfterWait(() => {
|
package/src/embed/liveboard.ts
CHANGED
|
@@ -360,6 +360,38 @@ export interface LiveboardViewConfig extends BaseViewConfig, LiveboardOtherViewC
|
|
|
360
360
|
* ```
|
|
361
361
|
*/
|
|
362
362
|
isPNGInScheduledEmailsEnabled?: boolean;
|
|
363
|
+
/**
|
|
364
|
+
* This flag is used to enable/disable the XLSX/CSV download option for Liveboards
|
|
365
|
+
*
|
|
366
|
+
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
367
|
+
* @type {boolean}
|
|
368
|
+
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
369
|
+
* @example
|
|
370
|
+
* ```js
|
|
371
|
+
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
372
|
+
* const embed = new <EmbedComponent>('#tsEmbed', {
|
|
373
|
+
* ... // other embed view config
|
|
374
|
+
* isLiveboardXLSXCSVDownloadEnabled: true,
|
|
375
|
+
* })
|
|
376
|
+
* ```
|
|
377
|
+
*/
|
|
378
|
+
isLiveboardXLSXCSVDownloadEnabled?: boolean;
|
|
379
|
+
/**
|
|
380
|
+
* This flag is used to enable/disable the granular XLSX/CSV schedules feature
|
|
381
|
+
*
|
|
382
|
+
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
383
|
+
* @type {boolean}
|
|
384
|
+
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
385
|
+
* @example
|
|
386
|
+
* ```js
|
|
387
|
+
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
388
|
+
* const embed = new <EmbedComponent>('#tsEmbed', {
|
|
389
|
+
* ... // other embed view config
|
|
390
|
+
* isGranularXLSXCSVSchedulesEnabled: true,
|
|
391
|
+
* })
|
|
392
|
+
* ```
|
|
393
|
+
*/
|
|
394
|
+
isGranularXLSXCSVSchedulesEnabled?: boolean;
|
|
363
395
|
/**
|
|
364
396
|
* This flag is used to enable the full height lazy load data.
|
|
365
397
|
*
|
|
@@ -512,13 +544,15 @@ export class LiveboardEmbed extends V1Embed {
|
|
|
512
544
|
isForceRedirect,
|
|
513
545
|
dataSourceId,
|
|
514
546
|
coverAndFilterOptionInPDF = false,
|
|
515
|
-
liveboardXLSXCSVDownload,
|
|
516
547
|
isLiveboardStylingAndGroupingEnabled,
|
|
517
548
|
isPNGInScheduledEmailsEnabled = false,
|
|
549
|
+
isLiveboardXLSXCSVDownloadEnabled = false,
|
|
550
|
+
isGranularXLSXCSVSchedulesEnabled = false,
|
|
518
551
|
showSpotterLimitations,
|
|
519
552
|
isCentralizedLiveboardFilterUXEnabled = false,
|
|
520
553
|
isLinkParametersEnabled,
|
|
521
554
|
updatedSpotterChatPrompt,
|
|
555
|
+
isThisPeriodInDateFiltersEnabled,
|
|
522
556
|
} = this.viewConfig;
|
|
523
557
|
|
|
524
558
|
const preventLiveboardFilterRemoval = this.viewConfig.preventLiveboardFilterRemoval
|
|
@@ -593,6 +627,14 @@ export class LiveboardEmbed extends V1Embed {
|
|
|
593
627
|
params[Param.isPNGInScheduledEmailsEnabled] = isPNGInScheduledEmailsEnabled;
|
|
594
628
|
}
|
|
595
629
|
|
|
630
|
+
if (isLiveboardXLSXCSVDownloadEnabled !== undefined) {
|
|
631
|
+
params[Param.isLiveboardXLSXCSVDownloadEnabled] = isLiveboardXLSXCSVDownloadEnabled;
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
if (isGranularXLSXCSVSchedulesEnabled !== undefined) {
|
|
635
|
+
params[Param.isGranularXLSXCSVSchedulesEnabled] = isGranularXLSXCSVSchedulesEnabled;
|
|
636
|
+
}
|
|
637
|
+
|
|
596
638
|
if (showSpotterLimitations !== undefined) {
|
|
597
639
|
params[Param.ShowSpotterLimitations] = showSpotterLimitations;
|
|
598
640
|
}
|
|
@@ -607,6 +649,10 @@ export class LiveboardEmbed extends V1Embed {
|
|
|
607
649
|
] = isCentralizedLiveboardFilterUXEnabled;
|
|
608
650
|
}
|
|
609
651
|
|
|
652
|
+
if (isThisPeriodInDateFiltersEnabled !== undefined) {
|
|
653
|
+
params[Param.IsThisPeriodInDateFiltersEnabled] = isThisPeriodInDateFiltersEnabled;
|
|
654
|
+
}
|
|
655
|
+
|
|
610
656
|
params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
|
|
611
657
|
params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
|
|
612
658
|
params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
|
|
@@ -619,10 +665,6 @@ export class LiveboardEmbed extends V1Embed {
|
|
|
619
665
|
params[Param.EnableCustomColumnGroups] = enableCustomColumnGroups;
|
|
620
666
|
params[Param.CoverAndFilterOptionInPDF] = coverAndFilterOptionInPDF;
|
|
621
667
|
|
|
622
|
-
if (liveboardXLSXCSVDownload !== undefined) {
|
|
623
|
-
params[Param.LiveboardXLSXCSVDownload] = !!liveboardXLSXCSVDownload;
|
|
624
|
-
}
|
|
625
|
-
|
|
626
668
|
const queryParams = getQueryParamString(params, true);
|
|
627
669
|
|
|
628
670
|
return params;
|
package/src/embed/search.spec.ts
CHANGED
|
@@ -287,6 +287,7 @@ describe('Search embed tests', () => {
|
|
|
287
287
|
values: ['berkeley'],
|
|
288
288
|
},
|
|
289
289
|
],
|
|
290
|
+
excludeRuntimeFiltersfromURL: undefined,
|
|
290
291
|
});
|
|
291
292
|
searchEmbed.render();
|
|
292
293
|
const runtimeFilter = 'col1=city&op1=EQ&val1=berkeley';
|
|
@@ -485,6 +486,7 @@ describe('Search embed tests', () => {
|
|
|
485
486
|
value: 1,
|
|
486
487
|
},
|
|
487
488
|
],
|
|
489
|
+
excludeRuntimeParametersfromURL: false,
|
|
488
490
|
});
|
|
489
491
|
searchEmbed.render();
|
|
490
492
|
await executeAfterWait(() => {
|
|
@@ -508,6 +510,20 @@ describe('Search embed tests', () => {
|
|
|
508
510
|
});
|
|
509
511
|
});
|
|
510
512
|
|
|
513
|
+
test('should set isThisPeriodInDateFiltersEnabled to true in url', async () => {
|
|
514
|
+
const searchEmbed = new SearchEmbed(getRootEl(), {
|
|
515
|
+
...defaultViewConfig,
|
|
516
|
+
isThisPeriodInDateFiltersEnabled: true,
|
|
517
|
+
});
|
|
518
|
+
searchEmbed.render();
|
|
519
|
+
await executeAfterWait(() => {
|
|
520
|
+
expectUrlMatchesWithParams(
|
|
521
|
+
getIFrameSrc(),
|
|
522
|
+
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSourceMode=expand&enableDataPanelV2=true&useLastSelectedSources=false&isThisPeriodInDateFiltersEnabled=true${prefixParams}#/embed/saved-answer/${answerId}`,
|
|
523
|
+
);
|
|
524
|
+
});
|
|
525
|
+
});
|
|
526
|
+
|
|
511
527
|
test('should set dataPanelCustomGroupsAccordionInitialState to EXPAND_FIRST when passed', async () => {
|
|
512
528
|
const searchEmbed = new SearchBarEmbed(getRootEl() as any, {
|
|
513
529
|
...defaultViewConfig,
|
package/src/embed/search.ts
CHANGED
|
@@ -157,6 +157,7 @@ export interface SearchViewConfig
|
|
|
157
157
|
* ... // other embed view config
|
|
158
158
|
* forceTable:true,
|
|
159
159
|
* })
|
|
160
|
+
* ```
|
|
160
161
|
*/
|
|
161
162
|
forceTable?: boolean;
|
|
162
163
|
/**
|
|
@@ -339,7 +340,12 @@ export class SearchEmbed extends TsEmbed {
|
|
|
339
340
|
protected viewConfig: SearchViewConfig;
|
|
340
341
|
|
|
341
342
|
constructor(domSelector: DOMSelector, viewConfig: SearchViewConfig) {
|
|
342
|
-
viewConfig
|
|
343
|
+
viewConfig = {
|
|
344
|
+
embedComponentType: 'SearchEmbed',
|
|
345
|
+
excludeRuntimeFiltersfromURL: true,
|
|
346
|
+
excludeRuntimeParametersfromURL: true,
|
|
347
|
+
...viewConfig,
|
|
348
|
+
}
|
|
343
349
|
super(domSelector, viewConfig);
|
|
344
350
|
}
|
|
345
351
|
|
|
@@ -396,6 +402,7 @@ export class SearchEmbed extends TsEmbed {
|
|
|
396
402
|
excludeRuntimeParametersfromURL,
|
|
397
403
|
excludeSearchTokenStringFromURL,
|
|
398
404
|
collapseSearchBar = true,
|
|
405
|
+
isThisPeriodInDateFiltersEnabled,
|
|
399
406
|
} = this.viewConfig;
|
|
400
407
|
const queryParams = this.getBaseQueryParams();
|
|
401
408
|
|
|
@@ -438,6 +445,10 @@ export class SearchEmbed extends TsEmbed {
|
|
|
438
445
|
queryParams[Param.FocusSearchBarOnRender] = focusSearchBarOnRender;
|
|
439
446
|
}
|
|
440
447
|
|
|
448
|
+
if (isThisPeriodInDateFiltersEnabled !== undefined) {
|
|
449
|
+
queryParams[Param.IsThisPeriodInDateFiltersEnabled] = isThisPeriodInDateFiltersEnabled;
|
|
450
|
+
}
|
|
451
|
+
|
|
441
452
|
queryParams[Param.DataPanelV2Enabled] = dataPanelV2;
|
|
442
453
|
queryParams[Param.DataSourceMode] = this.getDataSourceMode();
|
|
443
454
|
|
|
@@ -559,6 +559,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
559
559
|
const searchEmbed = new SearchEmbed(getRootEl(), {
|
|
560
560
|
...defaultViewConfig,
|
|
561
561
|
runtimeFilters: mockRuntimeFilters,
|
|
562
|
+
excludeRuntimeFiltersfromURL: undefined,
|
|
562
563
|
});
|
|
563
564
|
searchEmbed.render();
|
|
564
565
|
const mockPort: any = {
|
package/src/embed/ts-embed.ts
CHANGED
|
@@ -195,8 +195,8 @@ export class TsEmbed {
|
|
|
195
195
|
this.eventHandlerMap = new Map();
|
|
196
196
|
this.isError = false;
|
|
197
197
|
this.viewConfig = {
|
|
198
|
-
excludeRuntimeFiltersfromURL:
|
|
199
|
-
excludeRuntimeParametersfromURL:
|
|
198
|
+
excludeRuntimeFiltersfromURL: true,
|
|
199
|
+
excludeRuntimeParametersfromURL: true,
|
|
200
200
|
...viewConfig,
|
|
201
201
|
};
|
|
202
202
|
this.registerAppInit();
|
|
@@ -1756,7 +1756,11 @@ export class V1Embed extends TsEmbed {
|
|
|
1756
1756
|
|
|
1757
1757
|
constructor(domSelector: DOMSelector, viewConfig: ViewConfig) {
|
|
1758
1758
|
super(domSelector, viewConfig);
|
|
1759
|
-
this.viewConfig = {
|
|
1759
|
+
this.viewConfig = {
|
|
1760
|
+
excludeRuntimeFiltersfromURL: true,
|
|
1761
|
+
excludeRuntimeParametersfromURL: true,
|
|
1762
|
+
...viewConfig,
|
|
1763
|
+
};
|
|
1760
1764
|
}
|
|
1761
1765
|
|
|
1762
1766
|
/**
|