@thoughtspot/visual-embed-sdk 1.50.0 → 1.51.0-test
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/config.d.ts +1 -0
- package/cjs/src/config.d.ts.map +1 -1
- package/cjs/src/config.js +2 -1
- package/cjs/src/config.js.map +1 -1
- package/cjs/src/css-variables.d.ts +122 -0
- package/cjs/src/css-variables.d.ts.map +1 -1
- package/cjs/src/embed/app.d.ts +176 -24
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +86 -38
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +672 -150
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/base.d.ts +1 -1
- package/cjs/src/embed/base.js +1 -1
- package/cjs/src/embed/conversation.d.ts +401 -2
- package/cjs/src/embed/conversation.d.ts.map +1 -1
- package/cjs/src/embed/conversation.js +32 -16
- package/cjs/src/embed/conversation.js.map +1 -1
- package/cjs/src/embed/conversation.spec.js +346 -17
- package/cjs/src/embed/conversation.spec.js.map +1 -1
- package/cjs/src/embed/events.spec.js +638 -0
- package/cjs/src/embed/events.spec.js.map +1 -1
- package/cjs/src/embed/host-events.spec.js +187 -0
- package/cjs/src/embed/host-events.spec.js.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.d.ts +51 -14
- package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.js +11 -1
- package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts +2 -1
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.js +9 -0
- package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js +236 -0
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/cjs/src/embed/hostEventClient/utils.d.ts +2 -0
- package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/utils.js +32 -2
- package/cjs/src/embed/hostEventClient/utils.js.map +1 -1
- package/cjs/src/embed/hostEventClient/utils.spec.js +178 -0
- package/cjs/src/embed/hostEventClient/utils.spec.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +81 -13
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +50 -9
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +432 -4
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/spotter-utils.d.ts +15 -1
- package/cjs/src/embed/spotter-utils.d.ts.map +1 -1
- package/cjs/src/embed/spotter-utils.js +28 -1
- package/cjs/src/embed/spotter-utils.js.map +1 -1
- package/cjs/src/embed/spotter-utils.spec.js +129 -0
- package/cjs/src/embed/spotter-utils.spec.js.map +1 -1
- package/cjs/src/embed/spotter-viz-utils.d.ts +37 -4
- package/cjs/src/embed/spotter-viz-utils.d.ts.map +1 -1
- package/cjs/src/embed/spotter-viz-utils.js.map +1 -1
- package/cjs/src/embed/spotter-viz-utils.spec.js +17 -0
- package/cjs/src/embed/spotter-viz-utils.spec.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +16 -8
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +96 -37
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +683 -3
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/errors.d.ts +1 -0
- package/cjs/src/errors.d.ts.map +1 -1
- package/cjs/src/errors.js +1 -0
- package/cjs/src/errors.js.map +1 -1
- package/cjs/src/index.d.ts +3 -3
- package/cjs/src/index.d.ts.map +1 -1
- package/cjs/src/index.js +4 -2
- package/cjs/src/index.js.map +1 -1
- package/cjs/src/mixpanel-service.d.ts +4 -0
- package/cjs/src/mixpanel-service.d.ts.map +1 -1
- package/cjs/src/mixpanel-service.js +4 -0
- package/cjs/src/mixpanel-service.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/react/all-types-export.parity.spec.d.ts +2 -0
- package/cjs/src/react/all-types-export.parity.spec.d.ts.map +1 -0
- package/cjs/src/react/all-types-export.parity.spec.js +194 -0
- package/cjs/src/react/all-types-export.parity.spec.js.map +1 -0
- package/cjs/src/react/index.d.ts +66 -32
- package/cjs/src/react/index.d.ts.map +1 -1
- package/cjs/src/react/index.js +5 -3
- package/cjs/src/react/index.js.map +1 -1
- package/cjs/src/react/index.spec.js +101 -0
- package/cjs/src/react/index.spec.js.map +1 -1
- package/cjs/src/react/util.spec.js +251 -0
- package/cjs/src/react/util.spec.js.map +1 -1
- package/cjs/src/types.d.ts +902 -28
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +701 -14
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/processData.spec.js +93 -0
- package/cjs/src/utils/processData.spec.js.map +1 -1
- package/cjs/src/utils/processTrigger.spec.js +61 -0
- package/cjs/src/utils/processTrigger.spec.js.map +1 -1
- package/cjs/src/utils.spec.js +4 -0
- package/cjs/src/utils.spec.js.map +1 -1
- package/dist/{index-B5xoN6Cp.js → index-Bivg-mDx.js} +1 -1
- package/dist/src/config.d.ts +1 -0
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/css-variables.d.ts +122 -0
- package/dist/src/css-variables.d.ts.map +1 -1
- package/dist/src/embed/app.d.ts +176 -24
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/base.d.ts +1 -1
- package/dist/src/embed/conversation.d.ts +401 -2
- package/dist/src/embed/conversation.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/contracts.d.ts +51 -14
- package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/host-event-client.d.ts +2 -1
- package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/utils.d.ts +2 -0
- package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +81 -13
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/spotter-utils.d.ts +15 -1
- package/dist/src/embed/spotter-utils.d.ts.map +1 -1
- package/dist/src/embed/spotter-viz-utils.d.ts +37 -4
- package/dist/src/embed/spotter-viz-utils.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +16 -8
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/errors.d.ts +1 -0
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/index.d.ts +3 -3
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/mixpanel-service.d.ts +4 -0
- package/dist/src/mixpanel-service.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/react/all-types-export.parity.spec.d.ts +2 -0
- package/dist/src/react/all-types-export.parity.spec.d.ts.map +1 -0
- package/dist/src/react/index.d.ts +66 -32
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/types.d.ts +902 -28
- package/dist/src/types.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +1269 -206
- package/dist/tsembed-react.js +1268 -205
- package/dist/tsembed.es.js +1364 -304
- package/dist/tsembed.js +1362 -302
- package/dist/visual-embed-sdk-react-full.d.ts +1867 -157
- package/dist/visual-embed-sdk-react.d.ts +1872 -161
- package/dist/visual-embed-sdk.d.ts +1815 -127
- package/lib/package.json +1 -1
- package/lib/src/config.d.ts +1 -0
- package/lib/src/config.d.ts.map +1 -1
- package/lib/src/config.js +1 -0
- package/lib/src/config.js.map +1 -1
- package/lib/src/css-variables.d.ts +122 -0
- package/lib/src/css-variables.d.ts.map +1 -1
- package/lib/src/embed/app.d.ts +176 -24
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +87 -39
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +673 -151
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/base.d.ts +1 -1
- package/lib/src/embed/base.js +1 -1
- package/lib/src/embed/conversation.d.ts +401 -2
- package/lib/src/embed/conversation.d.ts.map +1 -1
- package/lib/src/embed/conversation.js +33 -17
- package/lib/src/embed/conversation.js.map +1 -1
- package/lib/src/embed/conversation.spec.js +347 -18
- package/lib/src/embed/conversation.spec.js.map +1 -1
- package/lib/src/embed/events.spec.js +638 -0
- package/lib/src/embed/events.spec.js.map +1 -1
- package/lib/src/embed/host-events.spec.js +188 -1
- package/lib/src/embed/host-events.spec.js.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.d.ts +51 -14
- package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.js +10 -0
- package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.d.ts +2 -1
- package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.js +10 -1
- package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.spec.js +236 -0
- package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/lib/src/embed/hostEventClient/utils.d.ts +2 -0
- package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/utils.js +28 -1
- package/lib/src/embed/hostEventClient/utils.js.map +1 -1
- package/lib/src/embed/hostEventClient/utils.spec.js +179 -1
- package/lib/src/embed/hostEventClient/utils.spec.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +81 -13
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +50 -9
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +432 -4
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/spotter-utils.d.ts +15 -1
- package/lib/src/embed/spotter-utils.d.ts.map +1 -1
- package/lib/src/embed/spotter-utils.js +25 -0
- package/lib/src/embed/spotter-utils.js.map +1 -1
- package/lib/src/embed/spotter-utils.spec.js +130 -1
- package/lib/src/embed/spotter-utils.spec.js.map +1 -1
- package/lib/src/embed/spotter-viz-utils.d.ts +37 -4
- package/lib/src/embed/spotter-viz-utils.d.ts.map +1 -1
- package/lib/src/embed/spotter-viz-utils.js.map +1 -1
- package/lib/src/embed/spotter-viz-utils.spec.js +17 -0
- package/lib/src/embed/spotter-viz-utils.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +16 -8
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +96 -37
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +683 -3
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/errors.d.ts +1 -0
- package/lib/src/errors.d.ts.map +1 -1
- package/lib/src/errors.js +1 -0
- package/lib/src/errors.js.map +1 -1
- package/lib/src/index.d.ts +3 -3
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/index.js +3 -3
- package/lib/src/index.js.map +1 -1
- package/lib/src/mixpanel-service.d.ts +4 -0
- package/lib/src/mixpanel-service.d.ts.map +1 -1
- package/lib/src/mixpanel-service.js +4 -0
- package/lib/src/mixpanel-service.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/react/all-types-export.parity.spec.d.ts +2 -0
- package/lib/src/react/all-types-export.parity.spec.d.ts.map +1 -0
- package/lib/src/react/all-types-export.parity.spec.js +191 -0
- package/lib/src/react/all-types-export.parity.spec.js.map +1 -0
- package/lib/src/react/index.d.ts +66 -32
- package/lib/src/react/index.d.ts.map +1 -1
- package/lib/src/react/index.js +5 -3
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/react/index.spec.js +102 -1
- package/lib/src/react/index.spec.js.map +1 -1
- package/lib/src/react/util.spec.js +251 -0
- package/lib/src/react/util.spec.js.map +1 -1
- package/lib/src/types.d.ts +902 -28
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +701 -14
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/processData.spec.js +93 -0
- package/lib/src/utils/processData.spec.js.map +1 -1
- package/lib/src/utils/processTrigger.spec.js +61 -0
- package/lib/src/utils/processTrigger.spec.js.map +1 -1
- package/lib/src/utils.spec.js +4 -0
- package/lib/src/utils.spec.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +1815 -127
- package/package.json +1 -1
- package/src/config.ts +1 -0
- package/src/css-variables.ts +150 -0
- package/src/embed/app.spec.ts +877 -196
- package/src/embed/app.ts +276 -75
- package/src/embed/base.ts +1 -1
- package/src/embed/conversation.spec.ts +411 -21
- package/src/embed/conversation.ts +441 -18
- package/src/embed/events.spec.ts +761 -1
- package/src/embed/host-events.spec.ts +242 -0
- package/src/embed/hostEventClient/contracts.ts +57 -14
- package/src/embed/hostEventClient/host-event-client.spec.ts +372 -0
- package/src/embed/hostEventClient/host-event-client.ts +18 -2
- package/src/embed/hostEventClient/utils.spec.ts +204 -0
- package/src/embed/hostEventClient/utils.ts +37 -10
- package/src/embed/liveboard.spec.ts +565 -4
- package/src/embed/liveboard.ts +155 -28
- package/src/embed/spotter-utils.spec.ts +140 -1
- package/src/embed/spotter-utils.ts +36 -1
- package/src/embed/spotter-viz-utils.spec.ts +17 -0
- package/src/embed/spotter-viz-utils.ts +37 -4
- package/src/embed/ts-embed.spec.ts +885 -3
- package/src/embed/ts-embed.ts +111 -39
- package/src/errors.ts +1 -0
- package/src/index.ts +45 -2
- package/src/mixpanel-service.ts +4 -0
- package/src/react/all-types-export.parity.spec.ts +208 -0
- package/src/react/all-types-export.ts +22 -0
- package/src/react/index.spec.tsx +158 -0
- package/src/react/index.tsx +70 -33
- package/src/react/util.spec.tsx +255 -0
- package/src/types.ts +904 -24
- package/src/utils/processData.spec.ts +97 -0
- package/src/utils/processTrigger.spec.ts +91 -0
- package/src/utils.spec.ts +5 -0
|
@@ -40,6 +40,42 @@ export interface CustomCssVariables {
|
|
|
40
40
|
* Font color of the top navigation panel.
|
|
41
41
|
*/
|
|
42
42
|
"--ts-var-nav-color"?: string;
|
|
43
|
+
/**
|
|
44
|
+
* Background color of the left navigation panel.
|
|
45
|
+
*/
|
|
46
|
+
"--ts-var-left-nav-background"?: string;
|
|
47
|
+
/**
|
|
48
|
+
* Background color of the active tab in the left navigation panel.
|
|
49
|
+
*/
|
|
50
|
+
"--ts-var-left-nav-active-tab-background"?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Border color of the active tab in the left navigation panel.
|
|
53
|
+
*/
|
|
54
|
+
"--ts-var-left-nav-active-tab-border-color"?: string;
|
|
55
|
+
/**
|
|
56
|
+
* Font color of the section title in the left navigation panel.
|
|
57
|
+
*/
|
|
58
|
+
"--ts-var-left-nav-section-title-color"?: string;
|
|
59
|
+
/**
|
|
60
|
+
* Font color of the items in the left navigation panel.
|
|
61
|
+
*/
|
|
62
|
+
"--ts-var-left-nav-item-color"?: string;
|
|
63
|
+
/**
|
|
64
|
+
* Font color of the selected item in the left navigation panel.
|
|
65
|
+
*/
|
|
66
|
+
"--ts-var-left-nav-item-selection-color"?: string;
|
|
67
|
+
/**
|
|
68
|
+
* Background color of the selected item in the left navigation panel.
|
|
69
|
+
*/
|
|
70
|
+
"--ts-var-left-nav-item-selection-background"?: string;
|
|
71
|
+
/**
|
|
72
|
+
* Color of the active tab icon in the left navigation panel.
|
|
73
|
+
*/
|
|
74
|
+
"--ts-var-left-nav-tab-icon-active-color"?: string;
|
|
75
|
+
/**
|
|
76
|
+
* Color of the inactive tab icon in the left navigation panel.
|
|
77
|
+
*/
|
|
78
|
+
"--ts-var-left-nav-tab-icon-inactive-color"?: string;
|
|
43
79
|
/**
|
|
44
80
|
* Background color of the *Search data* button.
|
|
45
81
|
*/
|
|
@@ -404,6 +440,13 @@ export interface CustomCssVariables {
|
|
|
404
440
|
* Font color of the header in the Liveboard.
|
|
405
441
|
*/
|
|
406
442
|
"--ts-var-liveboard-header-font-color"?: string;
|
|
443
|
+
/**
|
|
444
|
+
* Left and right margin of the header and the tab/filter section of an
|
|
445
|
+
* embedded Liveboard. Use alongside the `liveboardGutter` view config to
|
|
446
|
+
* keep the header aligned with a custom tile-grid gutter.
|
|
447
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
448
|
+
*/
|
|
449
|
+
"--ts-var-liveboard-header-horizontal-margin"?: string;
|
|
407
450
|
/**
|
|
408
451
|
* Border color of the tiles in the Liveboard.
|
|
409
452
|
*/
|
|
@@ -412,6 +455,26 @@ export interface CustomCssVariables {
|
|
|
412
455
|
* Background color of the tiles in the Liveboard.
|
|
413
456
|
*/
|
|
414
457
|
"--ts-var-liveboard-tile-background"?: string;
|
|
458
|
+
/**
|
|
459
|
+
* Font color of the insight tiles in the Liveboard.
|
|
460
|
+
*/
|
|
461
|
+
"--ts-var-liveboard-insight-tile-font-color"?: string;
|
|
462
|
+
/**
|
|
463
|
+
* Background color of the insight tiles in the Liveboard.
|
|
464
|
+
*/
|
|
465
|
+
"--ts-var-liveboard-insight-tile-background"?: string;
|
|
466
|
+
/**
|
|
467
|
+
* Icon color of the insight tiles in the Liveboard.
|
|
468
|
+
*/
|
|
469
|
+
"--ts-var-liveboard-insight-tile-icon-color"?: string;
|
|
470
|
+
/**
|
|
471
|
+
* Font color of the success text in the insight tiles in the Liveboard.
|
|
472
|
+
*/
|
|
473
|
+
"--ts-var-liveboard-insight-tile-success-color"?: string;
|
|
474
|
+
/**
|
|
475
|
+
* Font color of the failure text in the insight tiles in the Liveboard.
|
|
476
|
+
*/
|
|
477
|
+
"--ts-var-liveboard-insight-tile-failure-color"?: string;
|
|
415
478
|
/**
|
|
416
479
|
* Border radius of the tiles in the Liveboard.
|
|
417
480
|
*/
|
|
@@ -632,6 +695,14 @@ export interface CustomCssVariables {
|
|
|
632
695
|
* Font color of the parameter chips in the Liveboard on active.
|
|
633
696
|
*/
|
|
634
697
|
"--ts-var-parameter-chip-active-text-color"?: string;
|
|
698
|
+
/**
|
|
699
|
+
* Color of the dot indicator shown on a filter or parameter chip in the
|
|
700
|
+
* centralized filter modal on a Liveboard. The dot appears when the
|
|
701
|
+
* filter or parameter value has been modified but the changes are not
|
|
702
|
+
* yet applied to the Liveboard.
|
|
703
|
+
* @version SDK: 1.52.0 | ThoughtSpot: 26.10.0.cl
|
|
704
|
+
*/
|
|
705
|
+
"--ts-var-unsaved-filter-indicator-color"?: string;
|
|
635
706
|
/**
|
|
636
707
|
* Background color of the action button in the Liveboard header.
|
|
637
708
|
*/
|
|
@@ -960,6 +1031,10 @@ export interface CustomCssVariables {
|
|
|
960
1031
|
* header underline, left panel border, thinking step connector and dots.
|
|
961
1032
|
*/
|
|
962
1033
|
"--ts-var-spotterviz-border-color"?: string;
|
|
1034
|
+
/**
|
|
1035
|
+
* Expanded user chat message bubble border color in SpotterViz.
|
|
1036
|
+
*/
|
|
1037
|
+
"--ts-var-spotterviz-expanded-border-color"?: string;
|
|
963
1038
|
/**
|
|
964
1039
|
* Background color of the reference-mode toggle button in the SpotterViz
|
|
965
1040
|
* chat input when it is unselected and the user hovers over it.
|
|
@@ -977,6 +1052,53 @@ export interface CustomCssVariables {
|
|
|
977
1052
|
* on each referenced-entity chip in the chat input.
|
|
978
1053
|
*/
|
|
979
1054
|
"--ts-var-spotterviz-reference-icon-selected-background"?: string;
|
|
1055
|
+
/**
|
|
1056
|
+
* Background color of the shared conversation header (recipient's read-only view).
|
|
1057
|
+
*/
|
|
1058
|
+
"--ts-var-shared-conv-header-background"?: string;
|
|
1059
|
+
/**
|
|
1060
|
+
* Border color of the shared conversation header.
|
|
1061
|
+
*/
|
|
1062
|
+
"--ts-var-shared-conv-header-border-color"?: string;
|
|
1063
|
+
/**
|
|
1064
|
+
* Font color of the title text in the shared conversation header.
|
|
1065
|
+
*/
|
|
1066
|
+
"--ts-var-shared-conv-title-color"?: string;
|
|
1067
|
+
/**
|
|
1068
|
+
* Background gradient color-stop of the share chat header's outer container
|
|
1069
|
+
* (sender's pre-share header). Defaults to transparent.
|
|
1070
|
+
*/
|
|
1071
|
+
"--ts-var-share-chat-header-container-background"?: string;
|
|
1072
|
+
/**
|
|
1073
|
+
* Background color of the share chat header's inner title/actions row.
|
|
1074
|
+
* Defaults to transparent.
|
|
1075
|
+
*/
|
|
1076
|
+
"--ts-var-share-chat-header-background"?: string;
|
|
1077
|
+
/**
|
|
1078
|
+
* Font color of the title text in the share chat header.
|
|
1079
|
+
*/
|
|
1080
|
+
"--ts-var-share-chat-header-title-color"?: string;
|
|
1081
|
+
/**
|
|
1082
|
+
* Font color of the title input field in the share chat header.
|
|
1083
|
+
*/
|
|
1084
|
+
"--ts-var-share-chat-header-input-text-color"?: string;
|
|
1085
|
+
/**
|
|
1086
|
+
* Background color of the title input field in the share chat header.
|
|
1087
|
+
*/
|
|
1088
|
+
"--ts-var-share-chat-header-input-background"?: string;
|
|
1089
|
+
/**
|
|
1090
|
+
* Border color of the title input field in the share chat header.
|
|
1091
|
+
*/
|
|
1092
|
+
"--ts-var-share-chat-header-input-border-color"?: string;
|
|
1093
|
+
/**
|
|
1094
|
+
* Background color of the shimmer loading effect. Also affects the
|
|
1095
|
+
* saved chats sidebar's new-chat shimmer, which shares the same style.
|
|
1096
|
+
*/
|
|
1097
|
+
"--ts-var-shimmer-background"?: string;
|
|
1098
|
+
/**
|
|
1099
|
+
* Background color of the shimmer sweep animation's gradient mid-stop.
|
|
1100
|
+
*/
|
|
1101
|
+
"--ts-var-shimmer-sweep-background"?: string;
|
|
980
1102
|
}
|
|
981
1103
|
export interface SessionInterface {
|
|
982
1104
|
sessionId: string;
|
|
@@ -1340,7 +1462,9 @@ export enum AuthType {
|
|
|
1340
1462
|
}
|
|
1341
1463
|
/**
|
|
1342
1464
|
*
|
|
1343
|
-
* **Note**:
|
|
1465
|
+
* **Note**: The classic (V1) and Modular (V2) home page experiences are
|
|
1466
|
+
* deprecated. This attribute applies to V3 (ModularWithStylingChanges) and
|
|
1467
|
+
* V4 (Focused) home page experiences.
|
|
1344
1468
|
*
|
|
1345
1469
|
*/
|
|
1346
1470
|
export enum HomeLeftNavItem {
|
|
@@ -1406,7 +1530,14 @@ export enum HomeLeftNavItem {
|
|
|
1406
1530
|
* Available in the V3 navigation experience.
|
|
1407
1531
|
* @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
|
|
1408
1532
|
*/
|
|
1409
|
-
Favorites = "favorites"
|
|
1533
|
+
Favorites = "favorites",
|
|
1534
|
+
/**
|
|
1535
|
+
* The *Collections* menu option in
|
|
1536
|
+
* the *Insights* left navigation panel.
|
|
1537
|
+
* Shown when collections are enabled on the cluster.
|
|
1538
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
1539
|
+
*/
|
|
1540
|
+
Collections = "collections"
|
|
1410
1541
|
}
|
|
1411
1542
|
export type DOMSelector = string | HTMLElement;
|
|
1412
1543
|
/**
|
|
@@ -2022,6 +2153,85 @@ export interface FrameParams {
|
|
|
2022
2153
|
*/
|
|
2023
2154
|
[key: string]: string | number | boolean | undefined;
|
|
2024
2155
|
}
|
|
2156
|
+
/**
|
|
2157
|
+
* Configuration for the pre-render wrapper element.
|
|
2158
|
+
* All properties here mirror the top-level preRender properties on
|
|
2159
|
+
* {@link BaseViewConfig} and take precedence over them when both are set,
|
|
2160
|
+
* so existing top-level usage continues to work without any changes.
|
|
2161
|
+
*
|
|
2162
|
+
* @version SDK: 1.52.0
|
|
2163
|
+
* @example
|
|
2164
|
+
* ```js
|
|
2165
|
+
* init({ thoughtSpotHost: '...', authType: AuthType.None });
|
|
2166
|
+
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
2167
|
+
* preRenderConfig: {
|
|
2168
|
+
* preRenderId: 'my-liveboard',
|
|
2169
|
+
* preRenderContainer: '#my-scroll-container',
|
|
2170
|
+
* doNotTrackPreRenderSize: false,
|
|
2171
|
+
* zIndex: -10,
|
|
2172
|
+
* },
|
|
2173
|
+
* });
|
|
2174
|
+
* embed.preRender();
|
|
2175
|
+
* embed.showPreRender();
|
|
2176
|
+
* ```
|
|
2177
|
+
*/
|
|
2178
|
+
export interface PreRenderConfig {
|
|
2179
|
+
/**
|
|
2180
|
+
* Pre-render ID to identify the pre-render instance.
|
|
2181
|
+
* Takes precedence over the top-level `preRenderId` when both are set.
|
|
2182
|
+
*
|
|
2183
|
+
* Matches the embed warmed by `preRender()` to the one revealed by
|
|
2184
|
+
* `showPreRender()`. Embeds sharing an ID share one loaded frame: reuse the ID for
|
|
2185
|
+
* the same view, and give unrelated views their own or they will collide.
|
|
2186
|
+
* Required by `preRender()`, `showPreRender()`, and `hidePreRender()`, which log
|
|
2187
|
+
* and do nothing without it.
|
|
2188
|
+
*
|
|
2189
|
+
* @default undefined
|
|
2190
|
+
*/
|
|
2191
|
+
preRenderId?: string;
|
|
2192
|
+
/**
|
|
2193
|
+
* The DOM element or CSS selector string specifying the container into
|
|
2194
|
+
* which the pre-rendered wrapper is inserted.
|
|
2195
|
+
* Takes precedence over the top-level `preRenderContainer` when both are set.
|
|
2196
|
+
*
|
|
2197
|
+
* Set this when your app scrolls inside an element rather than the page (for
|
|
2198
|
+
* example `<body>` has `overflow: hidden`). Point it at the element that actually
|
|
2199
|
+
* scrolls, keep that element mounted while the embed is warm, and prefer a
|
|
2200
|
+
* selector string — it is re-resolved on reposition and so survives a remount,
|
|
2201
|
+
* while a detached element reference cannot be recovered. An invalid selector is
|
|
2202
|
+
* logged and falls back to `document.body`.
|
|
2203
|
+
* See {@link BaseViewConfig.preRenderContainer} for details, including Shadow DOM.
|
|
2204
|
+
*
|
|
2205
|
+
* @default document.body
|
|
2206
|
+
*/
|
|
2207
|
+
preRenderContainer?: string | HTMLElement;
|
|
2208
|
+
/**
|
|
2209
|
+
* Disables the `ResizeObserver` that keeps the wrapper sized to the
|
|
2210
|
+
* placeholder element.
|
|
2211
|
+
* Takes precedence over the top-level `doNotTrackPreRenderSize` when both are set.
|
|
2212
|
+
*
|
|
2213
|
+
* Set this only when you size the embed yourself; you then own alignment and must
|
|
2214
|
+
* call `syncPreRenderStyle()` after any change that moves or resizes it. Tracking
|
|
2215
|
+
* already pauses while hidden, so this is not needed to avoid work then.
|
|
2216
|
+
*
|
|
2217
|
+
* @default false
|
|
2218
|
+
*/
|
|
2219
|
+
doNotTrackPreRenderSize?: boolean;
|
|
2220
|
+
/**
|
|
2221
|
+
* CSS `z-index` value applied to the pre-render wrapper when hidden.
|
|
2222
|
+
* Override this when the host page's stacking context does not reach `-1000`
|
|
2223
|
+
* and the hidden wrapper still appears above other elements.
|
|
2224
|
+
*
|
|
2225
|
+
* A page that creates its own stacking context — a positioned app shell, a
|
|
2226
|
+
* transformed wrapper, a modal layer — can clamp `-1000`, and the hidden wrapper
|
|
2227
|
+
* then shows through or swallows clicks meant for your UI. Reach for this when you
|
|
2228
|
+
* see a faint panel behind your content, or clicks landing on nothing in the
|
|
2229
|
+
* region where the embed will eventually appear.
|
|
2230
|
+
*
|
|
2231
|
+
* @default -1000
|
|
2232
|
+
*/
|
|
2233
|
+
zIndex?: number;
|
|
2234
|
+
}
|
|
2025
2235
|
/**
|
|
2026
2236
|
* The common configuration object for an embedded view.
|
|
2027
2237
|
*/
|
|
@@ -2106,7 +2316,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2106
2316
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed, SearchEmbed, or LiveboardEmbed
|
|
2107
2317
|
* const embed = new <EmbedComponent>('#tsEmbed', {
|
|
2108
2318
|
* ... // other embed view config
|
|
2109
|
-
* hiddenActions: [Action.Download, Action.
|
|
2319
|
+
* hiddenActions: [Action.Download, Action.ExportTML],
|
|
2110
2320
|
* });
|
|
2111
2321
|
* ```
|
|
2112
2322
|
* @important
|
|
@@ -2128,7 +2338,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2128
2338
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed, SearchEmbed, or LiveboardEmbed
|
|
2129
2339
|
* const embed = new <EmbedComponent>('#tsEmbed', {
|
|
2130
2340
|
* ... // other embed view config
|
|
2131
|
-
* visibleActions: [Action.Download, Action.
|
|
2341
|
+
* visibleActions: [Action.Download, Action.ExportTML],
|
|
2132
2342
|
* });
|
|
2133
2343
|
* ```
|
|
2134
2344
|
*/
|
|
@@ -2213,6 +2423,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2213
2423
|
*
|
|
2214
2424
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
|
|
2215
2425
|
* @version SDK: 1.25.0 | ThoughtSpot: 9.6.0.cl, 9.8.0.sw
|
|
2426
|
+
* @deprecated Use {@link PreRenderConfig.preRenderId} via `preRenderConfig` instead.
|
|
2216
2427
|
* @example
|
|
2217
2428
|
* ```js
|
|
2218
2429
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed, SearchEmbed, or LiveboardEmbed
|
|
@@ -2232,6 +2443,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2232
2443
|
* @type {boolean}
|
|
2233
2444
|
* @default false
|
|
2234
2445
|
* @version SDK: 1.24.0 | ThoughtSpot: 9.4.0.cl, 9.4.0.sw
|
|
2446
|
+
* @deprecated Use {@link PreRenderConfig.doNotTrackPreRenderSize} via `preRenderConfig` instead.
|
|
2235
2447
|
* @example
|
|
2236
2448
|
* ```js
|
|
2237
2449
|
* // Disable tracking PreRender size in the configuration
|
|
@@ -2273,6 +2485,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2273
2485
|
*
|
|
2274
2486
|
* @type {string | HTMLElement}
|
|
2275
2487
|
* @version SDK: 1.49.2 | ThoughtSpot: *
|
|
2488
|
+
* @deprecated Use {@link PreRenderConfig.preRenderContainer} via `preRenderConfig` instead.
|
|
2276
2489
|
* @example
|
|
2277
2490
|
* ```js
|
|
2278
2491
|
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
@@ -2283,6 +2496,27 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2283
2496
|
* ```
|
|
2284
2497
|
*/
|
|
2285
2498
|
preRenderContainer?: string | HTMLElement;
|
|
2499
|
+
/**
|
|
2500
|
+
* Configuration for the pre-render wrapper element.
|
|
2501
|
+
* All properties here mirror the top-level preRender properties on
|
|
2502
|
+
* `BaseViewConfig` and take precedence over them when both are set,
|
|
2503
|
+
* so existing top-level usage continues to work without any changes.
|
|
2504
|
+
* See {@link PreRenderConfig} for available options.
|
|
2505
|
+
*
|
|
2506
|
+
* @version SDK: 1.52.0
|
|
2507
|
+
* @example
|
|
2508
|
+
* ```js
|
|
2509
|
+
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
2510
|
+
* preRenderConfig: {
|
|
2511
|
+
* preRenderId: 'my-liveboard',
|
|
2512
|
+
* zIndex: -10,
|
|
2513
|
+
* },
|
|
2514
|
+
* });
|
|
2515
|
+
* embed.preRender();
|
|
2516
|
+
* embed.showPreRender();
|
|
2517
|
+
* ```
|
|
2518
|
+
*/
|
|
2519
|
+
preRenderConfig?: PreRenderConfig;
|
|
2286
2520
|
/**
|
|
2287
2521
|
* Enable the V2 shell. This can provide performance benefits
|
|
2288
2522
|
* due to a lighter-weight shell.
|
|
@@ -2353,6 +2587,26 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2353
2587
|
* ```
|
|
2354
2588
|
*/
|
|
2355
2589
|
overrideOrgId?: number;
|
|
2590
|
+
/**
|
|
2591
|
+
* Overrides the browser history behavior for embedding application users.
|
|
2592
|
+
* This parameter changes standard history navigation (pushState) into a
|
|
2593
|
+
* state replacement (replaceState), preventing users from getting trapped in
|
|
2594
|
+
* back-button loops inside the embedded iframe environment.
|
|
2595
|
+
* The overrideHistoryState setting is honored only if the
|
|
2596
|
+
* application is running within an embedded context.
|
|
2597
|
+
*
|
|
2598
|
+
* Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
|
|
2599
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2600
|
+
* @example
|
|
2601
|
+
* ```js
|
|
2602
|
+
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed, SearchEmbed, or LiveboardEmbed
|
|
2603
|
+
* const embed = new <EmbedComponent>('#tsEmbed', {
|
|
2604
|
+
* // ... other embed view config
|
|
2605
|
+
* overrideHistoryState: true,
|
|
2606
|
+
* });
|
|
2607
|
+
* ```
|
|
2608
|
+
*/
|
|
2609
|
+
overrideHistoryState?: boolean;
|
|
2356
2610
|
/**
|
|
2357
2611
|
* Flag to override the *Open Link in New Tab* context
|
|
2358
2612
|
* menu option.
|
|
@@ -2701,7 +2955,7 @@ export interface HomePageConfig {
|
|
|
2701
2955
|
*
|
|
2702
2956
|
* const embed = new AppEmbed('#tsEmbed', {
|
|
2703
2957
|
* ... //other embed view config
|
|
2704
|
-
* hiddenListColumns : [ListPageColumns.
|
|
2958
|
+
* hiddenListColumns : [ListPageColumns.Favorites,ListPageColumns.Author],
|
|
2705
2959
|
* })
|
|
2706
2960
|
* ```
|
|
2707
2961
|
*/
|
|
@@ -2711,7 +2965,9 @@ export interface HomePageConfig {
|
|
|
2711
2965
|
* To specify the modules, import the `HomepageModule` enum.
|
|
2712
2966
|
* For example: `hiddenHomepageModules = [HomepageModule.MyLibrary]`
|
|
2713
2967
|
*
|
|
2714
|
-
* **Note**:
|
|
2968
|
+
* **Note**: The classic (V1) and Modular (V2) home page experiences are
|
|
2969
|
+
* deprecated. This attribute applies to V3 (ModularWithStylingChanges)
|
|
2970
|
+
* and V4 (Focused) home page experiences.
|
|
2715
2971
|
*
|
|
2716
2972
|
* Supported embed types: `AppEmbed`
|
|
2717
2973
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
|
|
@@ -2720,7 +2976,7 @@ export interface HomePageConfig {
|
|
|
2720
2976
|
* import { HomepageModule } from '@thoughtspot/visual-embed-sdk';
|
|
2721
2977
|
*
|
|
2722
2978
|
* const embed = new AppEmbed('#tsEmbed', {
|
|
2723
|
-
* ... //
|
|
2979
|
+
* ... // V3 navigation and home page experience attributes
|
|
2724
2980
|
* hiddenHomepageModules : [HomepageModule.Favorite,HomepageModule.Learning],
|
|
2725
2981
|
* //...other embed view configuration attributes
|
|
2726
2982
|
* })
|
|
@@ -2731,8 +2987,11 @@ export interface HomePageConfig {
|
|
|
2731
2987
|
* Reorder home page modules.
|
|
2732
2988
|
* To specify the modules, import the `HomepageModule` enum.
|
|
2733
2989
|
* For example: `reorderedHomepageModules = [HomepageModule.MyLibrary,
|
|
2734
|
-
* HomepageModule.Watchlist]`
|
|
2735
|
-
*
|
|
2990
|
+
* HomepageModule.Watchlist]`
|
|
2991
|
+
*
|
|
2992
|
+
* **Note**: The classic (V1) and Modular (V2) home page experiences are
|
|
2993
|
+
* deprecated. This attribute applies to V3 (ModularWithStylingChanges)
|
|
2994
|
+
* and V4 (Focused) home page experiences.
|
|
2736
2995
|
*
|
|
2737
2996
|
* Supported embed types: `AppEmbed`
|
|
2738
2997
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
|
|
@@ -2741,7 +3000,7 @@ export interface HomePageConfig {
|
|
|
2741
3000
|
* import { HomepageModule } from '@thoughtspot/visual-embed-sdk';
|
|
2742
3001
|
*
|
|
2743
3002
|
* const embed = new AppEmbed('#tsEmbed', {
|
|
2744
|
-
* ...//
|
|
3003
|
+
* ...//V3 navigation and home page experience attributes
|
|
2745
3004
|
* reorderedHomepageModules:[HomepageModule.Favorite,HomepageModule.MyLibrary],
|
|
2746
3005
|
* //... other embed view configuration attributes
|
|
2747
3006
|
* })
|
|
@@ -2753,7 +3012,9 @@ export interface HomePageConfig {
|
|
|
2753
3012
|
* on the home page left navigation panel.
|
|
2754
3013
|
* To specify the menu items, import the `HomeLeftNavItem` enum.
|
|
2755
3014
|
*
|
|
2756
|
-
* **Note**:
|
|
3015
|
+
* **Note**: The classic (V1) and Modular (V2) home page experiences are
|
|
3016
|
+
* deprecated. This attribute applies to V3 (ModularWithStylingChanges)
|
|
3017
|
+
* and V4 (Focused) home page experiences.
|
|
2757
3018
|
*
|
|
2758
3019
|
* Supported embed types: `AppEmbed`
|
|
2759
3020
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
|
|
@@ -3007,6 +3268,25 @@ export interface LiveboardAppEmbedViewConfig {
|
|
|
3007
3268
|
* ```
|
|
3008
3269
|
*/
|
|
3009
3270
|
enable2ColumnLayout?: boolean;
|
|
3271
|
+
/**
|
|
3272
|
+
* This attribute keeps an embedded Liveboard on the 12-column layout at
|
|
3273
|
+
* every width, instead of switching to the two-column or single-column
|
|
3274
|
+
* layout as the container narrows.
|
|
3275
|
+
*
|
|
3276
|
+
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
3277
|
+
* @type {boolean}
|
|
3278
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
3279
|
+
* @default false
|
|
3280
|
+
* @example
|
|
3281
|
+
* ```js
|
|
3282
|
+
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
3283
|
+
* const embed = new <EmbedComponent>('#tsEmbed', {
|
|
3284
|
+
* ... // other embed view config
|
|
3285
|
+
* isLiveboardAlwaysOn12ColLayout: true,
|
|
3286
|
+
* })
|
|
3287
|
+
* ```
|
|
3288
|
+
*/
|
|
3289
|
+
isLiveboardAlwaysOn12ColLayout?: boolean;
|
|
3010
3290
|
/**
|
|
3011
3291
|
* This flag can be used to enable the compact header in Liveboard
|
|
3012
3292
|
*
|
|
@@ -3111,6 +3391,26 @@ export interface LiveboardAppEmbedViewConfig {
|
|
|
3111
3391
|
* ```
|
|
3112
3392
|
*/
|
|
3113
3393
|
coverAndFilterOptionInPDF?: boolean;
|
|
3394
|
+
/**
|
|
3395
|
+
* Sets the gutter space (in pixels) between the visualization tiles of
|
|
3396
|
+
* an embedded Liveboard grid layout and its outer layout padding.
|
|
3397
|
+
* Accepts a non-negative integer; `0` renders the tiles without any gap
|
|
3398
|
+
* and removes the outer padding. When omitted, the gutter saved in the
|
|
3399
|
+
* Liveboard's styling settings (or the ThoughtSpot default) applies.
|
|
3400
|
+
*
|
|
3401
|
+
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
3402
|
+
* @type {number}
|
|
3403
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
3404
|
+
* @example
|
|
3405
|
+
* ```js
|
|
3406
|
+
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
3407
|
+
* const embed = new <EmbedComponent>('#tsEmbed', {
|
|
3408
|
+
* ... // other embed view config
|
|
3409
|
+
* liveboardGutter: 8,
|
|
3410
|
+
* })
|
|
3411
|
+
* ```
|
|
3412
|
+
*/
|
|
3413
|
+
liveboardGutter?: number;
|
|
3114
3414
|
/**
|
|
3115
3415
|
* This flag is used to enable or disable the new centralized Liveboard filter UX
|
|
3116
3416
|
* (v2). When enabled, a unified modal is used to manage and update multiple filters
|
|
@@ -3129,6 +3429,24 @@ export interface LiveboardAppEmbedViewConfig {
|
|
|
3129
3429
|
* ```
|
|
3130
3430
|
*/
|
|
3131
3431
|
isCentralizedLiveboardFilterUXEnabled?: boolean;
|
|
3432
|
+
/**
|
|
3433
|
+
* This flag is used to enable or disable scoped Liveboard filtering.
|
|
3434
|
+
* When enabled, filters and parameters can be scoped to a group of
|
|
3435
|
+
* visualizations on a Liveboard, in addition to the Liveboard and
|
|
3436
|
+
* tab levels.
|
|
3437
|
+
*
|
|
3438
|
+
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
3439
|
+
* @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
|
|
3440
|
+
* @example
|
|
3441
|
+
* ```js
|
|
3442
|
+
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
3443
|
+
* const embed = new <EmbedComponent>('#tsEmbed', {
|
|
3444
|
+
* ... // other embed view config
|
|
3445
|
+
* isScopedLiveboardFilteringEnabled: true,
|
|
3446
|
+
* })
|
|
3447
|
+
* ```
|
|
3448
|
+
*/
|
|
3449
|
+
isScopedLiveboardFilteringEnabled?: boolean;
|
|
3132
3450
|
/**
|
|
3133
3451
|
* This flag is used to enable or disable the link parameters in liveboard.
|
|
3134
3452
|
*
|
|
@@ -3312,7 +3630,9 @@ export enum RuntimeFilterOp {
|
|
|
3312
3630
|
* via `hiddenHomepageModules` and reordered via
|
|
3313
3631
|
* `reorderedHomepageModules`.
|
|
3314
3632
|
*
|
|
3315
|
-
* **Note**:
|
|
3633
|
+
* **Note**: The classic (V1) and Modular (V2) home page experiences are
|
|
3634
|
+
* deprecated. These modules apply to V3 (ModularWithStylingChanges) and
|
|
3635
|
+
* V4 (Focused) home page experiences.
|
|
3316
3636
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
|
|
3317
3637
|
*/
|
|
3318
3638
|
export enum HomepageModule {
|
|
@@ -3521,7 +3841,7 @@ export enum EmbedEvent {
|
|
|
3521
3841
|
* @returns nonFilteredColumns - The columns that were not filtered
|
|
3522
3842
|
* @example
|
|
3523
3843
|
* ```js
|
|
3524
|
-
* searchEmbed.on(EmbedEvent.
|
|
3844
|
+
* searchEmbed.on(EmbedEvent.Drilldown, {
|
|
3525
3845
|
* points: {
|
|
3526
3846
|
* clickedPoint,
|
|
3527
3847
|
* selectedPoints: selectedPoint
|
|
@@ -3582,7 +3902,7 @@ export enum EmbedEvent {
|
|
|
3582
3902
|
* @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 8.4.1.sw
|
|
3583
3903
|
* @example
|
|
3584
3904
|
* ```js
|
|
3585
|
-
* appEmbed.on(EmbedEvent.
|
|
3905
|
+
* appEmbed.on(EmbedEvent.CustomAction, payload => {
|
|
3586
3906
|
* const data = payload.data;
|
|
3587
3907
|
* if (data.id === 'insert Custom Action ID here') {
|
|
3588
3908
|
* console.log('Custom Action event:', data.embedAnswerData);
|
|
@@ -3848,8 +4168,8 @@ export enum EmbedEvent {
|
|
|
3848
4168
|
*
|
|
3849
4169
|
* **Note**: This event is deprecated in v1.21.0.
|
|
3850
4170
|
* To fire an event when a download action is initiated on a chart or table,
|
|
3851
|
-
* use `EmbedEvent.DownloadAsPng`, `EmbedEvent.
|
|
3852
|
-
* `EmbedEvent.
|
|
4171
|
+
* use `EmbedEvent.DownloadAsPng`, `EmbedEvent.DownloadAsPdf`,
|
|
4172
|
+
* `EmbedEvent.DownloadAsCsv`, or `EmbedEvent.DownloadAsXlsx`
|
|
3853
4173
|
* @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
|
|
3854
4174
|
* @example
|
|
3855
4175
|
* ```js
|
|
@@ -3899,10 +4219,10 @@ export enum EmbedEvent {
|
|
|
3899
4219
|
* @example
|
|
3900
4220
|
* ```js
|
|
3901
4221
|
* //emit when action starts
|
|
3902
|
-
* searchEmbed.on(EmbedEvent.
|
|
4222
|
+
* searchEmbed.on(EmbedEvent.DownloadAsCsv, payload => {
|
|
3903
4223
|
* console.log('download CSV', payload)}, {start: true })
|
|
3904
4224
|
* //emit when action ends
|
|
3905
|
-
* searchEmbed.on(EmbedEvent.
|
|
4225
|
+
* searchEmbed.on(EmbedEvent.DownloadAsCsv, payload => {
|
|
3906
4226
|
* console.log('download CSV', payload)})
|
|
3907
4227
|
* ```
|
|
3908
4228
|
*/
|
|
@@ -4301,11 +4621,19 @@ export enum EmbedEvent {
|
|
|
4301
4621
|
* Emitted when a user changes any filter on a Liveboard.
|
|
4302
4622
|
* Returns filter type and name, column name and ID, and runtime
|
|
4303
4623
|
* filter details.
|
|
4624
|
+
* The payload includes an optional `applicability` attribute indicating the
|
|
4625
|
+
* scope of the changed filter. It contains a `level` (`LIVEBOARD`,
|
|
4626
|
+
* `TAB`, or `GROUP`) and, when `level` is `TAB` or `GROUP`, a
|
|
4627
|
+
* `targetId` with the GUID of the target. At `LIVEBOARD` level there
|
|
4628
|
+
* is no `targetId`, since the filter applies to the whole Liveboard.
|
|
4629
|
+
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
4630
|
+
* ThoughtSpot: 26.10.0.cl.
|
|
4304
4631
|
* @example
|
|
4305
4632
|
*
|
|
4306
4633
|
* ```js
|
|
4307
4634
|
* LiveboardEmbed.on(EmbedEvent.FilterChanged, (payload) => {
|
|
4308
4635
|
* console.log('payload', payload);
|
|
4636
|
+
* // payload.data optionally includes applicability: { level, targetId }
|
|
4309
4637
|
* })
|
|
4310
4638
|
* ```
|
|
4311
4639
|
* @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl, 9.5.0.sw
|
|
@@ -4497,9 +4825,17 @@ export enum EmbedEvent {
|
|
|
4497
4825
|
/**
|
|
4498
4826
|
* Emitted when parameter changes in an Answer
|
|
4499
4827
|
* or Liveboard.
|
|
4828
|
+
* The payload includes an optional `applicability` attribute indicating the
|
|
4829
|
+
* scope of the changed parameter. It contains a `level` (`LIVEBOARD`,
|
|
4830
|
+
* `TAB`, or `GROUP`) and, when `level` is `TAB` or `GROUP`, a
|
|
4831
|
+
* `targetId` with the GUID of the target. At `LIVEBOARD` level there
|
|
4832
|
+
* is no `targetId`, since the parameter applies to the whole Liveboard.
|
|
4833
|
+
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
4834
|
+
* ThoughtSpot: 26.10.0.cl.
|
|
4500
4835
|
* ```js
|
|
4501
4836
|
* liveboardEmbed.on(EmbedEvent.ParameterChanged, (payload) => {
|
|
4502
4837
|
* console.log('payload', payload);
|
|
4838
|
+
* // payload.data optionally includes applicability: { level, targetId }
|
|
4503
4839
|
* })
|
|
4504
4840
|
* ```
|
|
4505
4841
|
* @version SDK: 1.29.0 | ThoughtSpot: 10.3.0.cl
|
|
@@ -4801,6 +5137,158 @@ export enum EmbedEvent {
|
|
|
4801
5137
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
4802
5138
|
*/
|
|
4803
5139
|
SpotterConversationDeleted = "spotterConversationDeleted",
|
|
5140
|
+
/**
|
|
5141
|
+
* Emitted when the header Share button is clicked. Fires `Start` then `End`
|
|
5142
|
+
* to bracket the interaction. App→host counterpart of the
|
|
5143
|
+
* `ShareSpotterConversation` host event (user-driven vs programmatic open).
|
|
5144
|
+
* @example
|
|
5145
|
+
* ```js
|
|
5146
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareConversationButtonHeaderClicked, (payload) => {
|
|
5147
|
+
* // payload: { convId: string }
|
|
5148
|
+
* })
|
|
5149
|
+
* ```
|
|
5150
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5151
|
+
*/
|
|
5152
|
+
SpotterShareConversationButtonHeaderClicked = "spotterShareConversationButtonHeaderClicked",
|
|
5153
|
+
/**
|
|
5154
|
+
* Emitted when the sidebar Share item is clicked. Fires `Start` then `End`
|
|
5155
|
+
* to bracket the interaction.
|
|
5156
|
+
* @example
|
|
5157
|
+
* ```js
|
|
5158
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareConversationMenuItemSidebarClicked, (payload) => {
|
|
5159
|
+
* // payload: { convId: string }
|
|
5160
|
+
* })
|
|
5161
|
+
* ```
|
|
5162
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5163
|
+
*/
|
|
5164
|
+
SpotterShareConversationMenuItemSidebarClicked = "spotterShareConversationMenuItemSidebarClicked",
|
|
5165
|
+
/**
|
|
5166
|
+
* Emitted when a Spotter conversation is shared (recipients added, or a new
|
|
5167
|
+
* share created). The host builds its own link from shareId/convId + its
|
|
5168
|
+
* configured CONVERSATION_URL — no link string is sent. Distinct from
|
|
5169
|
+
* `SpotterShareModalConfirmButtonClicked`, which fires at click time before
|
|
5170
|
+
* the save resolves.
|
|
5171
|
+
* @example
|
|
5172
|
+
* ```js
|
|
5173
|
+
* spotterEmbed.on(EmbedEvent.SpotterConversationShared, (payload) => {
|
|
5174
|
+
* // payload: { convId: string, shareId: string,
|
|
5175
|
+
* // recipientsAdded: string[], recipientsRemoved: string[] }
|
|
5176
|
+
* })
|
|
5177
|
+
* ```
|
|
5178
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5179
|
+
*/
|
|
5180
|
+
SpotterConversationShared = "spotterConversationShared",
|
|
5181
|
+
/**
|
|
5182
|
+
* Emitted when access to a shared Spotter conversation is revoked
|
|
5183
|
+
* (recipients removed). `fullyRevoked` is true when the last sharee is removed
|
|
5184
|
+
* and the share is deleted entirely.
|
|
5185
|
+
* @example
|
|
5186
|
+
* ```js
|
|
5187
|
+
* spotterEmbed.on(EmbedEvent.SpotterConversationShareRevoked, (payload) => {
|
|
5188
|
+
* // payload: { convId: string, shareId: string,
|
|
5189
|
+
* // recipientsRemoved: string[], fullyRevoked: boolean }
|
|
5190
|
+
* })
|
|
5191
|
+
* ```
|
|
5192
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5193
|
+
*/
|
|
5194
|
+
SpotterConversationShareRevoked = "spotterConversationShareRevoked",
|
|
5195
|
+
/**
|
|
5196
|
+
* Emitted when a recipient opens a shared Spotter conversation (read-only
|
|
5197
|
+
* view). No shareId available viewer-side.
|
|
5198
|
+
* @example
|
|
5199
|
+
* ```js
|
|
5200
|
+
* spotterEmbed.on(EmbedEvent.SpotterSharedConversationViewed, (payload) => {
|
|
5201
|
+
* // payload: { convId: string, sourceConvId: string }
|
|
5202
|
+
* // convId = resolved snapshot conv id; sourceConvId = the shared URL id
|
|
5203
|
+
* })
|
|
5204
|
+
* ```
|
|
5205
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5206
|
+
*/
|
|
5207
|
+
SpotterSharedConversationViewed = "spotterSharedConversationViewed",
|
|
5208
|
+
/**
|
|
5209
|
+
* Emitted when the user toggles the share-modal "include new messages since
|
|
5210
|
+
* last shared version" checkbox.
|
|
5211
|
+
* @example
|
|
5212
|
+
* ```js
|
|
5213
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareIncludeNewMessagesCheckboxToggled, (payload) => {
|
|
5214
|
+
* // payload: { convId: string, includeNewMessages: boolean }
|
|
5215
|
+
* })
|
|
5216
|
+
* ```
|
|
5217
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5218
|
+
*/
|
|
5219
|
+
SpotterShareIncludeNewMessagesCheckboxToggled = "spotterShareIncludeNewMessagesCheckboxToggled",
|
|
5220
|
+
/**
|
|
5221
|
+
* Emitted when the user dismisses the stale-snapshot info banner via its
|
|
5222
|
+
* cross (distinct from the include-new-messages checkbox toggle).
|
|
5223
|
+
* @example
|
|
5224
|
+
* ```js
|
|
5225
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareStaleInfoBannerDismissed, (payload) => {
|
|
5226
|
+
* // payload: { convId: string }
|
|
5227
|
+
* })
|
|
5228
|
+
* ```
|
|
5229
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5230
|
+
*/
|
|
5231
|
+
SpotterShareStaleInfoBannerDismissed = "spotterShareStaleInfoBannerDismissed",
|
|
5232
|
+
/**
|
|
5233
|
+
* Emitted when the modal Share (confirm) button is clicked — fires at click
|
|
5234
|
+
* time, before the save resolves. Distinct from the `SpotterConversationShared`
|
|
5235
|
+
* / `SpotterConversationShareRevoked` result events.
|
|
5236
|
+
* @example
|
|
5237
|
+
* ```js
|
|
5238
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareModalConfirmButtonClicked, (payload) => {
|
|
5239
|
+
* // payload: { convId: string }
|
|
5240
|
+
* })
|
|
5241
|
+
* ```
|
|
5242
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5243
|
+
*/
|
|
5244
|
+
SpotterShareModalConfirmButtonClicked = "spotterShareModalConfirmButtonClicked",
|
|
5245
|
+
/**
|
|
5246
|
+
* Emitted when the share modal is dismissed via the Cancel button.
|
|
5247
|
+
* @example
|
|
5248
|
+
* ```js
|
|
5249
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareModalCancelButtonClicked, (payload) => {
|
|
5250
|
+
* // payload: { convId: string }
|
|
5251
|
+
* })
|
|
5252
|
+
* ```
|
|
5253
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5254
|
+
*/
|
|
5255
|
+
SpotterShareModalCancelButtonClicked = "spotterShareModalCancelButtonClicked",
|
|
5256
|
+
/**
|
|
5257
|
+
* Emitted when a recipient leaves the read-only shared view via the Exit
|
|
5258
|
+
* button.
|
|
5259
|
+
* @example
|
|
5260
|
+
* ```js
|
|
5261
|
+
* spotterEmbed.on(EmbedEvent.SpotterSharedConversationExitButtonClicked, (payload) => {
|
|
5262
|
+
* // payload: { convId: string }
|
|
5263
|
+
* })
|
|
5264
|
+
* ```
|
|
5265
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5266
|
+
*/
|
|
5267
|
+
SpotterSharedConversationExitButtonClicked = "spotterSharedConversationExitButtonClicked",
|
|
5268
|
+
/**
|
|
5269
|
+
* Emitted when a Spotter conversation is pinned.
|
|
5270
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
5271
|
+
* @example
|
|
5272
|
+
* ```js
|
|
5273
|
+
* spotterEmbed.on(EmbedEvent.SpotterConversationPinned, (payload) => {
|
|
5274
|
+
* console.log('Conversation pinned', payload);
|
|
5275
|
+
* // payload: { conversationId: string, pinnedAt: string (ISO 8601) }
|
|
5276
|
+
* })
|
|
5277
|
+
* ```
|
|
5278
|
+
*/
|
|
5279
|
+
SpotterConversationPinned = "spotterConversationPinned",
|
|
5280
|
+
/**
|
|
5281
|
+
* Emitted when a Spotter conversation is unpinned.
|
|
5282
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
5283
|
+
* @example
|
|
5284
|
+
* ```js
|
|
5285
|
+
* spotterEmbed.on(EmbedEvent.SpotterConversationUnpinned, (payload) => {
|
|
5286
|
+
* console.log('Conversation unpinned', payload);
|
|
5287
|
+
* // payload: { conversationId: string, unpinnedAt: string (ISO 8601) }
|
|
5288
|
+
* })
|
|
5289
|
+
* ```
|
|
5290
|
+
*/
|
|
5291
|
+
SpotterConversationUnpinned = "spotterConversationUnpinned",
|
|
4804
5292
|
/**
|
|
4805
5293
|
* Emitted when a Spotter conversation is selected/clicked.
|
|
4806
5294
|
* @example
|
|
@@ -4813,6 +5301,30 @@ export enum EmbedEvent {
|
|
|
4813
5301
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
4814
5302
|
*/
|
|
4815
5303
|
SpotterConversationSelected = "spotterConversationSelected",
|
|
5304
|
+
/**
|
|
5305
|
+
* Emitted when the Spotter agent finishes streaming/rendering a response.
|
|
5306
|
+
* Includes the conversation and message identifiers so the host app can
|
|
5307
|
+
* fetch the full conversation history via the REST API if needed.
|
|
5308
|
+
*
|
|
5309
|
+
* The payload data has the shape `{ convId: string, messageId: string }`.
|
|
5310
|
+
*
|
|
5311
|
+
* Works with SpotterEmbed as well as AppEmbed (when Spotter is reached
|
|
5312
|
+
* inside the full application).
|
|
5313
|
+
* @example
|
|
5314
|
+
* ```js
|
|
5315
|
+
* spotterEmbed.on(EmbedEvent.SpotterResponseComplete, (payload) => {
|
|
5316
|
+
* console.log('Spotter response complete', payload);
|
|
5317
|
+
* })
|
|
5318
|
+
* ```
|
|
5319
|
+
* @example
|
|
5320
|
+
* ```js
|
|
5321
|
+
* appEmbed.on(EmbedEvent.SpotterResponseComplete, (payload) => {
|
|
5322
|
+
* console.log('Spotter response complete', payload);
|
|
5323
|
+
* })
|
|
5324
|
+
* ```
|
|
5325
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
5326
|
+
*/
|
|
5327
|
+
SpotterResponseComplete = "spotterResponseComplete",
|
|
4816
5328
|
/**
|
|
4817
5329
|
* @hidden
|
|
4818
5330
|
* Emitted when the auth token is about to get expired and needs to be refreshed.
|
|
@@ -5166,6 +5678,7 @@ export enum HostEvent {
|
|
|
5166
5678
|
* const url = await appEmbed.trigger(HostEvent.GetIframeUrl, {}, ContextType.Answer);
|
|
5167
5679
|
* console.log("iFrameURL", url);
|
|
5168
5680
|
* ```
|
|
5681
|
+
* @returns iframeUrl - The URL currently loaded in the embedded iframe.
|
|
5169
5682
|
* @version SDK: 1.35.0 | ThoughtSpot: 10.4.0.cl
|
|
5170
5683
|
*/
|
|
5171
5684
|
GetIframeUrl = "GetIframeUrl",
|
|
@@ -5292,6 +5805,17 @@ export enum HostEvent {
|
|
|
5292
5805
|
* name: string,
|
|
5293
5806
|
* type: ATTRIBUTE/MEASURE,
|
|
5294
5807
|
* dataType: INT64/CHAR/DATE }
|
|
5808
|
+
*
|
|
5809
|
+
* `applicability` - Optional. Scopes the filter to a specific target,
|
|
5810
|
+
* for example, a single Liveboard tab, so the panel for the correct
|
|
5811
|
+
* scoped filter is opened. Available from SDK: 1.53.0 |
|
|
5812
|
+
* ThoughtSpot: 26.10.0.cl. Includes the following attributes:
|
|
5813
|
+
*
|
|
5814
|
+
* - `level`: The scope of the filter: `LIVEBOARD`, `TAB`, or `GROUP`.
|
|
5815
|
+
* - `targetId`: The GUID of the target, for example, the tab GUID.
|
|
5816
|
+
* Required when `level` is `TAB` or `GROUP`. Do not pass it when
|
|
5817
|
+
* `level` is `LIVEBOARD`, since the filter applies to the whole
|
|
5818
|
+
* Liveboard. Omitting `applicability` targets the `LIVEBOARD` level.
|
|
5295
5819
|
* @example
|
|
5296
5820
|
* ```js
|
|
5297
5821
|
* searchEmbed.trigger(HostEvent.OpenFilter,
|
|
@@ -5304,6 +5828,14 @@ export enum HostEvent {
|
|
|
5304
5828
|
* ```
|
|
5305
5829
|
* @example
|
|
5306
5830
|
* ```js
|
|
5831
|
+
* // Open a filter scoped to a specific Liveboard tab
|
|
5832
|
+
* liveboardEmbed.trigger(HostEvent.OpenFilter, {
|
|
5833
|
+
* column: { columnId: '<column-GUID>' },
|
|
5834
|
+
* applicability: { level: 'TAB', targetId: '<tab-GUID>' }
|
|
5835
|
+
* });
|
|
5836
|
+
* ```
|
|
5837
|
+
* @example
|
|
5838
|
+
* ```js
|
|
5307
5839
|
* // Open filter from search context
|
|
5308
5840
|
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
5309
5841
|
* searchEmbed.trigger(HostEvent.OpenFilter, {
|
|
@@ -5314,29 +5846,96 @@ export enum HostEvent {
|
|
|
5314
5846
|
*/
|
|
5315
5847
|
OpenFilter = "openFilter",
|
|
5316
5848
|
/**
|
|
5317
|
-
*
|
|
5318
|
-
*
|
|
5849
|
+
* Open the add-filter modal of a Liveboard, the same dialog that the
|
|
5850
|
+
* *Add filter* button in the Liveboard edit header opens, so the host
|
|
5851
|
+
* app can start the add-filter flow from its own UI.
|
|
5852
|
+
*
|
|
5853
|
+
* The Liveboard must be in edit mode; the event is ignored otherwise.
|
|
5854
|
+
* Hiding the *Add filter* button with `hiddenActions:
|
|
5855
|
+
* [Action.AddFilter]` does not block this event, but disabling it with
|
|
5856
|
+
* `disabledActions` does.
|
|
5857
|
+
*
|
|
5858
|
+
* Unlike {@link HostEvent.OpenFilter}, which opens the panel of an
|
|
5859
|
+
* existing filter, this event starts the creation of a new filter.
|
|
5860
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
5319
5861
|
* @example
|
|
5320
5862
|
* ```js
|
|
5321
|
-
*
|
|
5863
|
+
* liveboardEmbed.trigger(HostEvent.OpenAddFilterModal);
|
|
5322
5864
|
* ```
|
|
5865
|
+
*/
|
|
5866
|
+
OpenAddFilterModal = "openAddFilterModal",
|
|
5867
|
+
/**
|
|
5868
|
+
* Open the add-parameter panel of a Liveboard, the same panel that the
|
|
5869
|
+
* *Add parameter* button in the Liveboard edit header opens.
|
|
5870
|
+
* Mirrors {@link HostEvent.OpenAddFilterModal} for parameters.
|
|
5871
|
+
*
|
|
5872
|
+
* The Liveboard must be in edit mode; the event is ignored otherwise.
|
|
5873
|
+
* Hiding the *Add parameter* button with `hiddenActions:
|
|
5874
|
+
* [Action.AddParameter]` does not block this event, but disabling it
|
|
5875
|
+
* with `disabledActions` does.
|
|
5876
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
5323
5877
|
* @example
|
|
5324
5878
|
* ```js
|
|
5325
|
-
*
|
|
5326
|
-
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
5327
|
-
* searchEmbed.trigger(HostEvent.AddColumns, {
|
|
5328
|
-
* columnIds: ['col-guid-1', 'col-guid-2']
|
|
5329
|
-
* }, ContextType.Search);
|
|
5879
|
+
* liveboardEmbed.trigger(HostEvent.OpenAddParameterModal);
|
|
5330
5880
|
* ```
|
|
5331
|
-
* @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl
|
|
5332
5881
|
*/
|
|
5333
|
-
|
|
5882
|
+
OpenAddParameterModal = "openAddParameterModal",
|
|
5334
5883
|
/**
|
|
5335
|
-
*
|
|
5336
|
-
*
|
|
5884
|
+
* Open the parameter panel for a particular parameter on a Liveboard.
|
|
5885
|
+
* Mirrors {@link HostEvent.OpenFilter} for parameters.
|
|
5886
|
+
* @param - Includes the following keys:
|
|
5887
|
+
* - `parameter`: An object identifying the parameter to open, for
|
|
5888
|
+
* example, `{ parameterId: '<parameter-GUID>' }`.
|
|
5889
|
+
* - `applicability`: Optional. Scopes the parameter to a specific target,
|
|
5890
|
+
* for example, a single Liveboard tab, so the panel for the correct
|
|
5891
|
+
* scoped parameter is opened. Includes the following attributes:
|
|
5892
|
+
*
|
|
5893
|
+
* - `level`: The scope of the parameter: `LIVEBOARD`, `TAB`, or `GROUP`.
|
|
5894
|
+
* - `targetId`: The GUID of the target, for example, the tab GUID.
|
|
5895
|
+
* Required when `level` is `TAB` or `GROUP`. Do not pass it when
|
|
5896
|
+
* `level` is `LIVEBOARD`, since the parameter applies to the whole
|
|
5897
|
+
* Liveboard. Omitting `applicability` targets the `LIVEBOARD` level.
|
|
5337
5898
|
* @example
|
|
5338
5899
|
* ```js
|
|
5339
|
-
*
|
|
5900
|
+
* liveboardEmbed.trigger(HostEvent.OpenParameter, {
|
|
5901
|
+
* parameter: { parameterId: '<parameter-GUID>' }
|
|
5902
|
+
* });
|
|
5903
|
+
* ```
|
|
5904
|
+
* @example
|
|
5905
|
+
* ```js
|
|
5906
|
+
* // Open a parameter scoped to a specific group
|
|
5907
|
+
* liveboardEmbed.trigger(HostEvent.OpenParameter, {
|
|
5908
|
+
* parameter: { parameterId: '<parameter-GUID>' },
|
|
5909
|
+
* applicability: { level: 'GROUP', targetId: '<group-GUID>' }
|
|
5910
|
+
* });
|
|
5911
|
+
* ```
|
|
5912
|
+
* @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
|
|
5913
|
+
*/
|
|
5914
|
+
OpenParameter = "openParameter",
|
|
5915
|
+
/**
|
|
5916
|
+
* Add columns to the current search query.
|
|
5917
|
+
* @param - { columnIds: string[] }
|
|
5918
|
+
* @example
|
|
5919
|
+
* ```js
|
|
5920
|
+
* searchEmbed.trigger(HostEvent.AddColumns, { columnIds: ['<column-GUID>','<column-GUID>'] })
|
|
5921
|
+
* ```
|
|
5922
|
+
* @example
|
|
5923
|
+
* ```js
|
|
5924
|
+
* // Add columns from search context
|
|
5925
|
+
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
5926
|
+
* searchEmbed.trigger(HostEvent.AddColumns, {
|
|
5927
|
+
* columnIds: ['col-guid-1', 'col-guid-2']
|
|
5928
|
+
* }, ContextType.Search);
|
|
5929
|
+
* ```
|
|
5930
|
+
* @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl
|
|
5931
|
+
*/
|
|
5932
|
+
AddColumns = "addColumns",
|
|
5933
|
+
/**
|
|
5934
|
+
* Remove a column from the current search query.
|
|
5935
|
+
* @param - { columnId: string }
|
|
5936
|
+
* @example
|
|
5937
|
+
* ```js
|
|
5938
|
+
* searchEmbed.trigger(HostEvent.RemoveColumn, { columnId: '<column-Guid>' })
|
|
5340
5939
|
* ```
|
|
5341
5940
|
* @example
|
|
5342
5941
|
* ```js
|
|
@@ -5362,6 +5961,10 @@ export enum HostEvent {
|
|
|
5362
5961
|
* liveboardEmbed.trigger(HostEvent.getExportRequestForCurrentPinboard).then(
|
|
5363
5962
|
* data=>console.log(data))
|
|
5364
5963
|
* ```
|
|
5964
|
+
* @returns data - Object with a `v2Content` string: the export request
|
|
5965
|
+
* payload for the current Liveboard.
|
|
5966
|
+
* @returns type - The passthrough event name,
|
|
5967
|
+
* `getExportRequestForCurrentPinboard`.
|
|
5365
5968
|
* @version SDK: 1.13.0 | ThoughtSpot: 8.5.0.cl, 8.8.1.sw
|
|
5366
5969
|
*/
|
|
5367
5970
|
getExportRequestForCurrentPinboard = "getExportRequestForCurrentPinboard",
|
|
@@ -5464,6 +6067,9 @@ export enum HostEvent {
|
|
|
5464
6067
|
* }, ContextType.Spotter);
|
|
5465
6068
|
* ```
|
|
5466
6069
|
*
|
|
6070
|
+
* @returns liveboardId - GUID of the Liveboard the Answer was pinned to.
|
|
6071
|
+
* @returns tabId - GUID of the tab within that Liveboard.
|
|
6072
|
+
* @returns vizId - GUID of the newly created visualization.
|
|
5467
6073
|
* @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
|
|
5468
6074
|
*/
|
|
5469
6075
|
Pin = "pin",
|
|
@@ -5502,13 +6108,13 @@ export enum HostEvent {
|
|
|
5502
6108
|
* Trigger the **Manage schedule** action on an embedded Liveboard
|
|
5503
6109
|
* @example
|
|
5504
6110
|
* ```js
|
|
5505
|
-
* liveboardEmbed.trigger(HostEvent.
|
|
6111
|
+
* liveboardEmbed.trigger(HostEvent.SchedulesList)
|
|
5506
6112
|
* ```
|
|
5507
6113
|
* @example
|
|
5508
6114
|
* ```js
|
|
5509
6115
|
* // Manage schedules from liveboard context
|
|
5510
6116
|
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
5511
|
-
* liveboardEmbed.trigger(HostEvent.
|
|
6117
|
+
* liveboardEmbed.trigger(HostEvent.SchedulesList, {}, ContextType.Liveboard);
|
|
5512
6118
|
* ```
|
|
5513
6119
|
* @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
|
|
5514
6120
|
*/
|
|
@@ -5953,6 +6559,7 @@ export enum HostEvent {
|
|
|
5953
6559
|
* console.log(tml.answer);
|
|
5954
6560
|
* });
|
|
5955
6561
|
* ```
|
|
6562
|
+
* @returns The TML representation of the current Answer, as an object.
|
|
5956
6563
|
* @version SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1.sw
|
|
5957
6564
|
* @important
|
|
5958
6565
|
*/
|
|
@@ -6376,6 +6983,14 @@ export enum HostEvent {
|
|
|
6376
6983
|
/**
|
|
6377
6984
|
* Get details of filters applied on the Liveboard.
|
|
6378
6985
|
* Returns arrays containing Liveboard filter and runtime filter elements.
|
|
6986
|
+
* Each Liveboard filter includes an optional `applicability` attribute
|
|
6987
|
+
* indicating the scope of the filter. It contains a `level`
|
|
6988
|
+
* (`LIVEBOARD`, `TAB`, or `GROUP`) and, when `level` is `TAB` or
|
|
6989
|
+
* `GROUP`, a `targetId` with the GUID of the target. At `LIVEBOARD`
|
|
6990
|
+
* level there is no `targetId`, since the filter applies to the
|
|
6991
|
+
* whole Liveboard.
|
|
6992
|
+
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
6993
|
+
* ThoughtSpot: 26.10.0.cl.
|
|
6379
6994
|
* @example
|
|
6380
6995
|
* ```js
|
|
6381
6996
|
* const data = await liveboardEmbed.trigger(HostEvent.GetFilters);
|
|
@@ -6388,6 +7003,8 @@ export enum HostEvent {
|
|
|
6388
7003
|
* const data = await liveboardEmbed.trigger(HostEvent.GetFilters, {}, ContextType.Liveboard);
|
|
6389
7004
|
* console.log('filters', data);
|
|
6390
7005
|
* ```
|
|
7006
|
+
* @returns liveboardFilters - Filters applied on the Liveboard.
|
|
7007
|
+
* @returns runtimeFilters - Runtime filters applied on the Liveboard.
|
|
6391
7008
|
* @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
|
|
6392
7009
|
*/
|
|
6393
7010
|
GetFilters = "getFilters",
|
|
@@ -6415,6 +7032,16 @@ export enum HostEvent {
|
|
|
6415
7032
|
*
|
|
6416
7033
|
* `type` - To update filters for date time, specify the date format type.
|
|
6417
7034
|
* For more information and examples, see link:https://developers.thoughtspot.com/docs/embed-liveboard#_date_filters[Date filters].
|
|
7035
|
+
*
|
|
7036
|
+
* `applicability` - Optional. Scopes the filter to a specific target,
|
|
7037
|
+
* for example, a single Liveboard tab. Available from SDK: 1.53.0 |
|
|
7038
|
+
* ThoughtSpot: 26.10.0.cl. Includes the following attributes:
|
|
7039
|
+
*
|
|
7040
|
+
* - `level`: The scope of the filter: `LIVEBOARD`, `TAB`, or `GROUP`.
|
|
7041
|
+
* - `targetId`: The GUID of the target, for example, the tab GUID.
|
|
7042
|
+
* Required when `level` is `TAB` or `GROUP`. Do not pass it when
|
|
7043
|
+
* `level` is `LIVEBOARD`, since the filter applies to the whole
|
|
7044
|
+
* Liveboard.
|
|
6418
7045
|
* @example
|
|
6419
7046
|
* ```js
|
|
6420
7047
|
*
|
|
@@ -6491,6 +7118,21 @@ export enum HostEvent {
|
|
|
6491
7118
|
* }
|
|
6492
7119
|
* }, ContextType.Liveboard);
|
|
6493
7120
|
* ```
|
|
7121
|
+
* @example
|
|
7122
|
+
* ```js
|
|
7123
|
+
* // Scope the filter to a specific Liveboard tab
|
|
7124
|
+
* liveboardEmbed.trigger(HostEvent.UpdateFilters, {
|
|
7125
|
+
* filter: {
|
|
7126
|
+
* column: "item type",
|
|
7127
|
+
* oper: "IN",
|
|
7128
|
+
* values: ["bags", "shirts"],
|
|
7129
|
+
* applicability: {
|
|
7130
|
+
* level: "TAB",
|
|
7131
|
+
* targetId: "e0836cad-4fdf-42d4-bd97-567a6b2a6058"
|
|
7132
|
+
* }
|
|
7133
|
+
* }
|
|
7134
|
+
* });
|
|
7135
|
+
* ```
|
|
6494
7136
|
* @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
|
|
6495
7137
|
*/
|
|
6496
7138
|
UpdateFilters = "updateFilters",
|
|
@@ -6512,9 +7154,37 @@ export enum HostEvent {
|
|
|
6512
7154
|
* console.log('tabs', tabDetails);
|
|
6513
7155
|
* });
|
|
6514
7156
|
* ```
|
|
7157
|
+
* @returns orderedTabIds - Tab GUIDs in the order they appear.
|
|
7158
|
+
* @returns numberOfTabs - Total number of tabs on the Liveboard.
|
|
7159
|
+
* @returns Tabs - Tab details, each with at least `id` and `name`.
|
|
6515
7160
|
* @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl
|
|
6516
7161
|
*/
|
|
6517
7162
|
GetTabs = "getTabs",
|
|
7163
|
+
/**
|
|
7164
|
+
* Get group details for the current Liveboard.
|
|
7165
|
+
* Mirrors {@link HostEvent.GetTabs} for filter/parameter groups.
|
|
7166
|
+
* @example
|
|
7167
|
+
* ```js
|
|
7168
|
+
* liveboardEmbed.trigger(HostEvent.GetGroups).then((groupDetails) => {
|
|
7169
|
+
* console.log(
|
|
7170
|
+
* groupDetails // GroupDetails of current Liveboard
|
|
7171
|
+
* );
|
|
7172
|
+
* })
|
|
7173
|
+
* ```
|
|
7174
|
+
* @example
|
|
7175
|
+
* ```js
|
|
7176
|
+
* // Get groups from liveboard context
|
|
7177
|
+
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
7178
|
+
* liveboardEmbed.trigger(HostEvent.GetGroups, {}, ContextType.Liveboard).then((groupDetails) => {
|
|
7179
|
+
* console.log('groups', groupDetails);
|
|
7180
|
+
* });
|
|
7181
|
+
* ```
|
|
7182
|
+
* @returns orderedGroupIds - Group GUIDs in the order they appear.
|
|
7183
|
+
* @returns numberOfGroups - Total number of groups on the Liveboard.
|
|
7184
|
+
* @returns Groups - Group details, each with at least `id` and `name`.
|
|
7185
|
+
* @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
|
|
7186
|
+
*/
|
|
7187
|
+
GetGroups = "getGroups",
|
|
6518
7188
|
/**
|
|
6519
7189
|
* Set the visible tabs on a Liveboard.
|
|
6520
7190
|
* @param - an array of ids of tabs to show, the IDs not passed
|
|
@@ -6586,6 +7256,9 @@ export enum HostEvent {
|
|
|
6586
7256
|
* // Alternative direct usage (not recommended)
|
|
6587
7257
|
* const {session} = await embed.trigger( HostEvent.GetAnswerSession )
|
|
6588
7258
|
* ```
|
|
7259
|
+
* @returns session - Session identifier for the Answer, for use with the
|
|
7260
|
+
* `AnswerService`.
|
|
7261
|
+
* @returns embedAnswerData - Data backing the Answer, when available.
|
|
6589
7262
|
* @version SDK: 1.26.0 | ThoughtSpot: 9.10.0.cl, 10.1.0.sw
|
|
6590
7263
|
*/
|
|
6591
7264
|
GetAnswerSession = "getAnswerSession",
|
|
@@ -6642,6 +7315,15 @@ export enum HostEvent {
|
|
|
6642
7315
|
* - `name`: Name of the parameter.
|
|
6643
7316
|
* - `value`: The value to set for the parameter.
|
|
6644
7317
|
* - `isVisibleToUser`: Optional. To control the visibility of the parameter chip.
|
|
7318
|
+
* - `applicability`: Optional. Scopes the parameter to a specific target,
|
|
7319
|
+
* for example, a single Liveboard tab. Available from SDK: 1.53.0 |
|
|
7320
|
+
* ThoughtSpot: 26.10.0.cl. Includes the following attributes:
|
|
7321
|
+
*
|
|
7322
|
+
* - `level`: The scope of the parameter: `LIVEBOARD`, `TAB`, or `GROUP`.
|
|
7323
|
+
* - `targetId`: The GUID of the target, for example, the tab GUID.
|
|
7324
|
+
* Required when `level` is `TAB` or `GROUP`. Do not pass it when
|
|
7325
|
+
* `level` is `LIVEBOARD`, since the parameter applies to the whole
|
|
7326
|
+
* Liveboard.
|
|
6645
7327
|
*
|
|
6646
7328
|
* @example
|
|
6647
7329
|
* ```js
|
|
@@ -6653,6 +7335,18 @@ export enum HostEvent {
|
|
|
6653
7335
|
* ```
|
|
6654
7336
|
* @example
|
|
6655
7337
|
* ```js
|
|
7338
|
+
* // Scope the parameter to a specific Liveboard tab
|
|
7339
|
+
* liveboardEmbed.trigger(HostEvent.UpdateParameters, [{
|
|
7340
|
+
* name: "Integer Range Param",
|
|
7341
|
+
* value: 10,
|
|
7342
|
+
* applicability: {
|
|
7343
|
+
* level: "TAB",
|
|
7344
|
+
* targetId: "e0836cad-4fdf-42d4-bd97-567a6b2a6058"
|
|
7345
|
+
* }
|
|
7346
|
+
* }])
|
|
7347
|
+
* ```
|
|
7348
|
+
* @example
|
|
7349
|
+
* ```js
|
|
6656
7350
|
* // Update parameters from liveboard context
|
|
6657
7351
|
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
6658
7352
|
* liveboardEmbed.trigger(HostEvent.UpdateParameters, [{
|
|
@@ -6666,6 +7360,14 @@ export enum HostEvent {
|
|
|
6666
7360
|
UpdateParameters = "UpdateParameters",
|
|
6667
7361
|
/**
|
|
6668
7362
|
* Triggers GetParameters to fetch the runtime Parameters.
|
|
7363
|
+
* Each parameter includes an optional `applicability` attribute
|
|
7364
|
+
* indicating the scope of the parameter. It contains a `level`
|
|
7365
|
+
* (`LIVEBOARD`, `TAB`, or `GROUP`) and, when `level` is `TAB` or
|
|
7366
|
+
* `GROUP`, a `targetId` with the GUID of the target. At `LIVEBOARD`
|
|
7367
|
+
* level there is no `targetId`, since the parameter applies to the
|
|
7368
|
+
* whole Liveboard.
|
|
7369
|
+
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
7370
|
+
* ThoughtSpot: 26.10.0.cl.
|
|
6669
7371
|
* @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
|
|
6670
7372
|
* ```js
|
|
6671
7373
|
* liveboardEmbed.trigger(HostEvent.GetParameters).then((parameter) => {
|
|
@@ -6690,12 +7392,16 @@ export enum HostEvent {
|
|
|
6690
7392
|
* console.log('parameters', parameters);
|
|
6691
7393
|
* });
|
|
6692
7394
|
* ```
|
|
7395
|
+
* @returns parameters - Parameters currently applied on the Liveboard.
|
|
6693
7396
|
* @version SDK: 1.29.0 | ThoughtSpot: 10.1.0.cl, 10.1.0.sw
|
|
6694
7397
|
*/
|
|
6695
7398
|
GetParameters = "GetParameters",
|
|
6696
7399
|
/**
|
|
6697
7400
|
* Triggers an event to update a personalized view of a Liveboard.
|
|
6698
|
-
* This event is deprecated. Use {@link HostEvent.
|
|
7401
|
+
* This event is deprecated. Use {@link HostEvent.SelectPersonalizedView} instead,
|
|
7402
|
+
* which additionally accepts a `viewName`, resets to the original view when
|
|
7403
|
+
* called with an empty payload, and reports an error when a named view
|
|
7404
|
+
* cannot be found.
|
|
6699
7405
|
* ```js
|
|
6700
7406
|
* liveboardEmbed.trigger(HostEvent.UpdatePersonalisedView, {viewId: '1234'})
|
|
6701
7407
|
* ```
|
|
@@ -6713,10 +7419,15 @@ export enum HostEvent {
|
|
|
6713
7419
|
UpdatePersonalisedView = "UpdatePersonalisedView",
|
|
6714
7420
|
/**
|
|
6715
7421
|
* Triggers an event to update a personalized view of a Liveboard.
|
|
7422
|
+
* This event is deprecated. Use {@link HostEvent.SelectPersonalizedView} instead,
|
|
7423
|
+
* which additionally accepts a `viewName`, resets to the original view when
|
|
7424
|
+
* called with an empty payload, and reports an error when a named view
|
|
7425
|
+
* cannot be found.
|
|
6716
7426
|
* ```js
|
|
6717
7427
|
* liveboardEmbed.trigger(HostEvent.UpdatePersonalisedView, {viewId: '1234'})
|
|
6718
7428
|
* ```
|
|
6719
7429
|
* @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
|
|
7430
|
+
* @deprecated SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
|
|
6720
7431
|
*/
|
|
6721
7432
|
UpdatePersonalizedView = "UpdatePersonalisedView",
|
|
6722
7433
|
/**
|
|
@@ -6819,6 +7530,10 @@ export enum HostEvent {
|
|
|
6819
7530
|
* description: "Generated from Spotter"
|
|
6820
7531
|
* }, ContextType.Spotter);
|
|
6821
7532
|
* ```
|
|
7533
|
+
* @returns answerId - GUID of the saved Answer.
|
|
7534
|
+
* @returns saveResponse - Raw response from the save operation.
|
|
7535
|
+
* @returns shareResponse - Raw response from the share operation, when the
|
|
7536
|
+
* Answer was also made discoverable.
|
|
6822
7537
|
* @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
|
|
6823
7538
|
*/
|
|
6824
7539
|
SaveAnswer = "saveAnswer",
|
|
@@ -6932,6 +7647,36 @@ export enum HostEvent {
|
|
|
6932
7647
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
|
|
6933
7648
|
*/
|
|
6934
7649
|
ResetSpotterConversation = "ResetSpotterConversation",
|
|
7650
|
+
/**
|
|
7651
|
+
* Opens the Spotter share-conversation modal for the given conversation.
|
|
7652
|
+
* `conversationId` is **mandatory** — you must pass the id of the
|
|
7653
|
+
* conversation to share. Also no-op when sharing is disabled
|
|
7654
|
+
* (enableShareConversation off) or when already in the read-only shared view.
|
|
7655
|
+
* @example
|
|
7656
|
+
* ```js
|
|
7657
|
+
* spotterEmbed.trigger(HostEvent.ShareSpotterConversation, { conversationId: 'abc' });
|
|
7658
|
+
* ```
|
|
7659
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
7660
|
+
*/
|
|
7661
|
+
ShareSpotterConversation = "ShareSpotterConversation",
|
|
7662
|
+
/**
|
|
7663
|
+
* Closes the Spotter share-conversation modal. No-op if none is open.
|
|
7664
|
+
* @example
|
|
7665
|
+
* ```js
|
|
7666
|
+
* spotterEmbed.trigger(HostEvent.CloseSpotterShareConversation);
|
|
7667
|
+
* ```
|
|
7668
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
7669
|
+
*/
|
|
7670
|
+
CloseSpotterShareConversation = "CloseSpotterShareConversation",
|
|
7671
|
+
/**
|
|
7672
|
+
* Exits the read-only shared-conversation view.
|
|
7673
|
+
* @example
|
|
7674
|
+
* ```js
|
|
7675
|
+
* spotterEmbed.trigger(HostEvent.ExitSpotterSharedConversation);
|
|
7676
|
+
* ```
|
|
7677
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
7678
|
+
*/
|
|
7679
|
+
ExitSpotterSharedConversation = "ExitSpotterSharedConversation",
|
|
6935
7680
|
/**
|
|
6936
7681
|
* Deletes the last prompt in spotter embed.
|
|
6937
7682
|
* @example
|
|
@@ -7027,6 +7772,41 @@ export enum HostEvent {
|
|
|
7027
7772
|
* @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
|
|
7028
7773
|
*/
|
|
7029
7774
|
StartNewSpotterConversation = "StartNewSpotterConversation",
|
|
7775
|
+
/**
|
|
7776
|
+
* Pins a saved Spotter conversation so it floats to the top of the past
|
|
7777
|
+
* conversations sidebar. The `conversationId` of the conversation to pin is
|
|
7778
|
+
* required.
|
|
7779
|
+
*
|
|
7780
|
+
* This feature is available only when chat history is enabled on your ThoughtSpot
|
|
7781
|
+
* instance. Contact your admin or ThoughtSpot Support to enable chat history on your
|
|
7782
|
+
* instance.
|
|
7783
|
+
*
|
|
7784
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
7785
|
+
* @example
|
|
7786
|
+
* ```js
|
|
7787
|
+
* spotterEmbed.trigger(HostEvent.PinSpotterConversation, {
|
|
7788
|
+
* conversationId: '<conversation-id>',
|
|
7789
|
+
* });
|
|
7790
|
+
* ```
|
|
7791
|
+
*/
|
|
7792
|
+
PinSpotterConversation = "PinSpotterConversation",
|
|
7793
|
+
/**
|
|
7794
|
+
* Unpins a previously pinned Spotter conversation. The `conversationId` of the
|
|
7795
|
+
* conversation to unpin is required.
|
|
7796
|
+
*
|
|
7797
|
+
* This feature is available only when chat history is enabled on your ThoughtSpot
|
|
7798
|
+
* instance. Contact your admin or ThoughtSpot Support to enable chat history on your
|
|
7799
|
+
* instance.
|
|
7800
|
+
*
|
|
7801
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
7802
|
+
* @example
|
|
7803
|
+
* ```js
|
|
7804
|
+
* spotterEmbed.trigger(HostEvent.UnpinSpotterConversation, {
|
|
7805
|
+
* conversationId: '<conversation-id>',
|
|
7806
|
+
* });
|
|
7807
|
+
* ```
|
|
7808
|
+
*/
|
|
7809
|
+
UnpinSpotterConversation = "UnpinSpotterConversation",
|
|
7030
7810
|
/**
|
|
7031
7811
|
* @hidden
|
|
7032
7812
|
* Get the current context of the embedded page.
|
|
@@ -7137,9 +7917,10 @@ export type SpotterFileUploadFileTypes = {
|
|
|
7137
7917
|
* ThoughtSpot application pages include actions and menu commands
|
|
7138
7918
|
* for various user-initiated operations. These actions are represented
|
|
7139
7919
|
* as enumeration members in the SDK. To control actions in the embedded view:
|
|
7140
|
-
* - disabledActions — the action is grayed out and still visible, but non-interactive
|
|
7141
|
-
* - hiddenActions — the action is completely removed from
|
|
7142
|
-
* - visibleActions — allowlist, only these actions
|
|
7920
|
+
* - disabledActions — the action is grayed out and still visible, but non-interactive
|
|
7921
|
+
* (user can see but not click). - hiddenActions — the action is completely removed from
|
|
7922
|
+
* the UI (user cannot see it at all). - visibleActions — allowlist, only these actions
|
|
7923
|
+
* are shown; all others are hidden.
|
|
7143
7924
|
*
|
|
7144
7925
|
* Use disabledActions to disable (gray out) an action.
|
|
7145
7926
|
* Use hiddenActions to hide (fully remove) an action.
|
|
@@ -7192,6 +7973,17 @@ export enum Action {
|
|
|
7192
7973
|
* ```
|
|
7193
7974
|
*/
|
|
7194
7975
|
SaveAsView = "saveAsView",
|
|
7976
|
+
/**
|
|
7977
|
+
* The **EditInputTable** action on a Liveboard
|
|
7978
|
+
* page. Allows users to edit an input table used in an Answer directly from
|
|
7979
|
+
* a Liveboard.
|
|
7980
|
+
* @example
|
|
7981
|
+
* ```js
|
|
7982
|
+
* disabledActions: [Action.EditInputTable]
|
|
7983
|
+
* ```
|
|
7984
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
7985
|
+
*/
|
|
7986
|
+
EditInputTable = "editInputTable",
|
|
7195
7987
|
/**
|
|
7196
7988
|
* The **Make a copy** action on a Liveboard or Answer
|
|
7197
7989
|
* page. Creates a copy of the Liveboard.
|
|
@@ -8393,6 +9185,19 @@ export enum Action {
|
|
|
8393
9185
|
* @version SDK: 1.36.0 | ThoughtSpot Cloud: 10.6.0.cl
|
|
8394
9186
|
*/
|
|
8395
9187
|
ChangeFilterVisibilityInTab = "changeFilterVisibilityInTab",
|
|
9188
|
+
/**
|
|
9189
|
+
* Action ID to show, hide, or disable all filter surfaces on a Liveboard,
|
|
9190
|
+
* including filter, parameter, and cross-filter chips at the liveboard,
|
|
9191
|
+
* tab, and group levels. Parameter and cross-filter chips are hide-only.
|
|
9192
|
+
*
|
|
9193
|
+
* @example
|
|
9194
|
+
* ```js
|
|
9195
|
+
* hiddenActions: [Action.AllLiveboardFilters]
|
|
9196
|
+
* disabledActions: [Action.AllLiveboardFilters]
|
|
9197
|
+
* ```
|
|
9198
|
+
* @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
|
|
9199
|
+
*/
|
|
9200
|
+
AllLiveboardFilters = "allLiveboardFilters",
|
|
8396
9201
|
/**
|
|
8397
9202
|
* The **Data model instructions** button on the Spotter interface.
|
|
8398
9203
|
* Allows opening the data model instructions modal.
|
|
@@ -8494,6 +9299,10 @@ export enum Action {
|
|
|
8494
9299
|
* The **Add to Coaching** feature allows adding reference questions and
|
|
8495
9300
|
* business terms to improve Spotter’s responses. This feature is generally available
|
|
8496
9301
|
* (GA) from version 26.2.0.cl and enabled by default on embed deployments.
|
|
9302
|
+
*
|
|
9303
|
+
* This action governs both the answer-card **Add to memory** CTA and its
|
|
9304
|
+
* Spotter 3 successor, the response-footer **Remember this** CTA
|
|
9305
|
+
* (they are mutually exclusive).
|
|
8497
9306
|
* @example
|
|
8498
9307
|
* ```js
|
|
8499
9308
|
* hiddenAction: [Action.InConversationTraining]
|
|
@@ -8728,6 +9537,89 @@ export enum Action {
|
|
|
8728
9537
|
* @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
|
|
8729
9538
|
*/
|
|
8730
9539
|
SpotterChatRename = "spotterChatRename",
|
|
9540
|
+
/**
|
|
9541
|
+
* Controls visibility and disable state of the Spotter conversation Share
|
|
9542
|
+
* button in the chat header. Only takes effect once sharing is enabled
|
|
9543
|
+
* (enableShareConversation on).
|
|
9544
|
+
* @example
|
|
9545
|
+
* ```js
|
|
9546
|
+
* disabledActions: [Action.SpotterShareConversationButtonHeader]
|
|
9547
|
+
* ```
|
|
9548
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9549
|
+
*/
|
|
9550
|
+
SpotterShareConversationButtonHeader = "spotterShareConversationButtonHeader",
|
|
9551
|
+
/**
|
|
9552
|
+
* Controls visibility and disable state of the Share item in the Spotter
|
|
9553
|
+
* conversation history (sidebar) edit menu. Independent of the header button
|
|
9554
|
+
* above, so a host can show Share in one entry point and hide it in the other.
|
|
9555
|
+
* @example
|
|
9556
|
+
* ```js
|
|
9557
|
+
* disabledActions: [Action.SpotterShareConversationMenuItemSidebar]
|
|
9558
|
+
* ```
|
|
9559
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9560
|
+
*/
|
|
9561
|
+
SpotterShareConversationMenuItemSidebar = "spotterShareConversationMenuItemSidebar",
|
|
9562
|
+
/**
|
|
9563
|
+
* Controls visibility of the entire read-only shared-conversation data-access
|
|
9564
|
+
* banner shown when a recipient opens a shared view. Hide-only.
|
|
9565
|
+
* @example
|
|
9566
|
+
* ```js
|
|
9567
|
+
* hiddenActions: [Action.SpotterSharedConversationBanner]
|
|
9568
|
+
* ```
|
|
9569
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9570
|
+
*/
|
|
9571
|
+
SpotterSharedConversationBanner = "spotterSharedConversationBanner",
|
|
9572
|
+
/**
|
|
9573
|
+
* Controls visibility and disable state of the cross/close button on the
|
|
9574
|
+
* read-only shared-conversation data-access banner (keeps the banner itself).
|
|
9575
|
+
* @example
|
|
9576
|
+
* ```js
|
|
9577
|
+
* hiddenActions: [Action.SpotterSharedConversationBannerDismissButton]
|
|
9578
|
+
* ```
|
|
9579
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9580
|
+
*/
|
|
9581
|
+
SpotterSharedConversationBannerDismissButton = "spotterSharedConversationBannerDismissButton",
|
|
9582
|
+
/**
|
|
9583
|
+
* Controls visibility and disable state of the Exit button in the read-only
|
|
9584
|
+
* shared-view header. Hiding it does not disable the ExitSpotterSharedConversation
|
|
9585
|
+
* host event.
|
|
9586
|
+
* @example
|
|
9587
|
+
* ```js
|
|
9588
|
+
* hiddenActions: [Action.SpotterSharedConversationExitButton]
|
|
9589
|
+
* ```
|
|
9590
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9591
|
+
*/
|
|
9592
|
+
SpotterSharedConversationExitButton = "spotterSharedConversationExitButton",
|
|
9593
|
+
/**
|
|
9594
|
+
* Controls visibility of the share-modal footer note ("Chat will be shared up
|
|
9595
|
+
* to the current moment…"). Hide-only.
|
|
9596
|
+
* @example
|
|
9597
|
+
* ```js
|
|
9598
|
+
* hiddenActions: [Action.SpotterShareUpToCurrentInfo]
|
|
9599
|
+
* ```
|
|
9600
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9601
|
+
*/
|
|
9602
|
+
SpotterShareUpToCurrentInfo = "spotterShareUpToCurrentInfo",
|
|
9603
|
+
/**
|
|
9604
|
+
* Controls visibility and disable state of the share-modal "include new
|
|
9605
|
+
* messages since last shared version" checkbox.
|
|
9606
|
+
* @example
|
|
9607
|
+
* ```js
|
|
9608
|
+
* disabledActions: [Action.SpotterShareIncludeNewMessagesCheckbox]
|
|
9609
|
+
* ```
|
|
9610
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9611
|
+
*/
|
|
9612
|
+
SpotterShareIncludeNewMessagesCheckbox = "spotterShareIncludeNewMessagesCheckbox",
|
|
9613
|
+
/**
|
|
9614
|
+
* Controls visibility and disable state of the cross on the share-modal
|
|
9615
|
+
* stale-snapshot info banner.
|
|
9616
|
+
* @example
|
|
9617
|
+
* ```js
|
|
9618
|
+
* hiddenActions: [Action.SpotterShareStaleInfoBannerDismissButton]
|
|
9619
|
+
* ```
|
|
9620
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9621
|
+
*/
|
|
9622
|
+
SpotterShareStaleInfoBannerDismissButton = "spotterShareStaleInfoBannerDismissButton",
|
|
8731
9623
|
/**
|
|
8732
9624
|
* Controls visibility and disable state of the delete action
|
|
8733
9625
|
* in the Spotter conversation edit menu.
|
|
@@ -8738,6 +9630,16 @@ export enum Action {
|
|
|
8738
9630
|
* @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
|
|
8739
9631
|
*/
|
|
8740
9632
|
SpotterChatDelete = "spotterChatDelete",
|
|
9633
|
+
/**
|
|
9634
|
+
* Controls visibility and disable state of the pin/unpin action
|
|
9635
|
+
* in the Spotter conversation edit menu.
|
|
9636
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
9637
|
+
* @example
|
|
9638
|
+
* ```js
|
|
9639
|
+
* disabledActions: [Action.SpotterChatPin]
|
|
9640
|
+
* ```
|
|
9641
|
+
*/
|
|
9642
|
+
SpotterChatPin = "spotterChatPin",
|
|
8741
9643
|
/**
|
|
8742
9644
|
* Controls visibility and disable state of the documentation/best practices
|
|
8743
9645
|
* link in the Spotter sidebar footer.
|
|
@@ -8781,6 +9683,56 @@ export enum Action {
|
|
|
8781
9683
|
* @version SDK: 1.48.0 | ThoughtSpot Cloud: 26.5.0.cl
|
|
8782
9684
|
*/
|
|
8783
9685
|
SpotterChatModeSwitcher = "spotterChatModeSwitcher",
|
|
9686
|
+
/**
|
|
9687
|
+
* The **Basic Search** starter prompt pill.
|
|
9688
|
+
*
|
|
9689
|
+
* Starter prompt pills are the row of category buttons shown above the
|
|
9690
|
+
* Spotter chat input before a conversation starts. They give a new user
|
|
9691
|
+
* ready-made questions to click instead of typing one from scratch, and
|
|
9692
|
+
* disappear once the conversation begins. There are three, one per action
|
|
9693
|
+
* below.
|
|
9694
|
+
*
|
|
9695
|
+
* Clicking this pill opens a card of suggested simple questions; picking one
|
|
9696
|
+
* submits it to Spotter right away. Visible by default, and hidden along
|
|
9697
|
+
* with the other pills when the surface itself is off (see
|
|
9698
|
+
* {@link SpotterChatViewConfig.starterPrompts}).
|
|
9699
|
+
* @example
|
|
9700
|
+
* ```js
|
|
9701
|
+
* hiddenActions: [Action.QuickSearchPill]
|
|
9702
|
+
* ```
|
|
9703
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9704
|
+
*/
|
|
9705
|
+
QuickSearchPill = "quickSearchPill",
|
|
9706
|
+
/**
|
|
9707
|
+
* The **Deep Analysis** starter prompt pill, next to
|
|
9708
|
+
* {@link Action.QuickSearchPill} above the Spotter chat input.
|
|
9709
|
+
*
|
|
9710
|
+
* Clicking it opens a card of suggested investigative questions ("why did
|
|
9711
|
+
* revenue drop?"). Picking one fills the chat input in Deep Analysis mode
|
|
9712
|
+
* rather than submitting immediately, so the user can edit it first.
|
|
9713
|
+
* Visible by default.
|
|
9714
|
+
* @example
|
|
9715
|
+
* ```js
|
|
9716
|
+
* hiddenActions: [Action.DeepAnalysisPill]
|
|
9717
|
+
* ```
|
|
9718
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9719
|
+
*/
|
|
9720
|
+
DeepAnalysisPill = "deepAnalysisPill",
|
|
9721
|
+
/**
|
|
9722
|
+
* The **Data Literacy** starter prompt pill, next to
|
|
9723
|
+
* {@link Action.QuickSearchPill} above the Spotter chat input.
|
|
9724
|
+
*
|
|
9725
|
+
* Unlike the other two pills it opens no card: clicking it submits a prompt
|
|
9726
|
+
* that describes the data the model can answer over, helping a user who does
|
|
9727
|
+
* not yet know what is in the data source. The prompt text always comes from
|
|
9728
|
+
* ThoughtSpot, so only its label is customizable. Visible by default.
|
|
9729
|
+
* @example
|
|
9730
|
+
* ```js
|
|
9731
|
+
* hiddenActions: [Action.DataLiteracyPill]
|
|
9732
|
+
* ```
|
|
9733
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
9734
|
+
*/
|
|
9735
|
+
DataLiteracyPill = "dataLiteracyPill",
|
|
8784
9736
|
/**
|
|
8785
9737
|
* The **Include current period** checkbox for date filters.
|
|
8786
9738
|
* Controls the visibility and availability of the option to include
|
|
@@ -8928,7 +9880,39 @@ export enum Action {
|
|
|
8928
9880
|
* disabledActions: [Action.SpotterAnalystSidebar]
|
|
8929
9881
|
* ```
|
|
8930
9882
|
*/
|
|
8931
|
-
SpotterAnalystSidebar = "spotterAnalystSidebar"
|
|
9883
|
+
SpotterAnalystSidebar = "spotterAnalystSidebar",
|
|
9884
|
+
/**
|
|
9885
|
+
* Controls visibility and disable state of the analyst list
|
|
9886
|
+
* ("Show all") in the Spotter Analyst interface.
|
|
9887
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
9888
|
+
* @example
|
|
9889
|
+
* ```js
|
|
9890
|
+
* hiddenActions: [Action.SpotterAnalystList]
|
|
9891
|
+
* disabledActions: [Action.SpotterAnalystList]
|
|
9892
|
+
* ```
|
|
9893
|
+
*/
|
|
9894
|
+
SpotterAnalystList = "spotterAnalystList",
|
|
9895
|
+
/**
|
|
9896
|
+
* Controls visibility and disable state of the default Spotter analyst
|
|
9897
|
+
* entry in the Spotter Analyst interface.
|
|
9898
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
9899
|
+
* @example
|
|
9900
|
+
* ```js
|
|
9901
|
+
* hiddenActions: [Action.SpotterDefaultAnalyst]
|
|
9902
|
+
* disabledActions: [Action.SpotterDefaultAnalyst]
|
|
9903
|
+
* ```
|
|
9904
|
+
*/
|
|
9905
|
+
SpotterDefaultAnalyst = "spotterDefaultAnalyst",
|
|
9906
|
+
/**
|
|
9907
|
+
* The **Spotter** button in the Liveboard header.
|
|
9908
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
9909
|
+
* @example
|
|
9910
|
+
* ```js
|
|
9911
|
+
* hiddenActions: [Action.SpotterOnLiveboard]
|
|
9912
|
+
* disabledActions: [Action.SpotterOnLiveboard]
|
|
9913
|
+
* ```
|
|
9914
|
+
*/
|
|
9915
|
+
SpotterOnLiveboard = "spotterOnLiveboard"
|
|
8932
9916
|
}
|
|
8933
9917
|
export enum PrefetchFeatures {
|
|
8934
9918
|
FullApp = "FullApp",
|
|
@@ -9266,7 +10250,9 @@ export enum EmbedErrorCodes {
|
|
|
9266
10250
|
/** UpdateFilters payload is invalid - missing or malformed filter/filters */
|
|
9267
10251
|
UPDATEFILTERS_INVALID_PAYLOAD = "UPDATEFILTERS_INVALID_PAYLOAD",
|
|
9268
10252
|
/** DrillDown payload is invalid - missing or malformed points */
|
|
9269
|
-
DRILLDOWN_INVALID_PAYLOAD = "DRILLDOWN_INVALID_PAYLOAD"
|
|
10253
|
+
DRILLDOWN_INVALID_PAYLOAD = "DRILLDOWN_INVALID_PAYLOAD",
|
|
10254
|
+
/** UpdateParameters payload is invalid - malformed applicability */
|
|
10255
|
+
UPDATEPARAMETERS_INVALID_PAYLOAD = "UPDATEPARAMETERS_INVALID_PAYLOAD"
|
|
9270
10256
|
}
|
|
9271
10257
|
/**
|
|
9272
10258
|
* Error event object emitted when an error occurs in an embedded component.
|
|
@@ -9419,7 +10405,7 @@ export type ApiInterceptFlags = {
|
|
|
9419
10405
|
* const embed = new LiveboardEmbed('#embed', {
|
|
9420
10406
|
* ...viewConfig,
|
|
9421
10407
|
* enableApiIntercept: true,
|
|
9422
|
-
* interceptUrls: [InterceptedApiType.
|
|
10408
|
+
* interceptUrls: [InterceptedApiType.LiveboardData],
|
|
9423
10409
|
* })
|
|
9424
10410
|
* ```
|
|
9425
10411
|
*
|
|
@@ -9912,6 +10898,43 @@ export interface LiveboardTab {
|
|
|
9912
10898
|
name: string;
|
|
9913
10899
|
[key: string]: any;
|
|
9914
10900
|
}
|
|
10901
|
+
export interface LiveboardGroup {
|
|
10902
|
+
id: string;
|
|
10903
|
+
name: string;
|
|
10904
|
+
[key: string]: any;
|
|
10905
|
+
}
|
|
10906
|
+
/**
|
|
10907
|
+
* Levels at which a filter or parameter can be applied.
|
|
10908
|
+
*/
|
|
10909
|
+
export enum ApplicabilityLevel {
|
|
10910
|
+
Liveboard = "LIVEBOARD",
|
|
10911
|
+
Tab = "TAB",
|
|
10912
|
+
Group = "GROUP"
|
|
10913
|
+
}
|
|
10914
|
+
/**
|
|
10915
|
+
* Scopes a filter or parameter to a specific target.
|
|
10916
|
+
* At `LIVEBOARD` level the filter applies to the whole Liveboard, so `targetId`
|
|
10917
|
+
* is not required.
|
|
10918
|
+
*/
|
|
10919
|
+
export interface Applicability {
|
|
10920
|
+
level: ApplicabilityLevel;
|
|
10921
|
+
targetId?: string;
|
|
10922
|
+
}
|
|
10923
|
+
export interface FilterUpdate {
|
|
10924
|
+
column: string;
|
|
10925
|
+
oper: string;
|
|
10926
|
+
values: string[];
|
|
10927
|
+
type?: string;
|
|
10928
|
+
applicability?: Applicability;
|
|
10929
|
+
}
|
|
10930
|
+
export interface LiveboardFilter {
|
|
10931
|
+
applicability?: Applicability;
|
|
10932
|
+
[key: string]: any;
|
|
10933
|
+
}
|
|
10934
|
+
export interface LiveboardParameter {
|
|
10935
|
+
applicability?: Applicability;
|
|
10936
|
+
[key: string]: any;
|
|
10937
|
+
}
|
|
9915
10938
|
export enum UIPassthroughEvent {
|
|
9916
10939
|
PinAnswerToLiveboard = "addVizToPinboard",
|
|
9917
10940
|
SaveAnswer = "saveAnswer",
|
|
@@ -9928,6 +10951,7 @@ export enum UIPassthroughEvent {
|
|
|
9928
10951
|
GetParameters = "getParameters",
|
|
9929
10952
|
GetTML = "getTML",
|
|
9930
10953
|
GetTabs = "getTabs",
|
|
10954
|
+
GetGroups = "getGroups",
|
|
9931
10955
|
GetExportRequestForCurrentPinboard = "getExportRequestForCurrentPinboard"
|
|
9932
10956
|
}
|
|
9933
10957
|
export type UIPassthroughContractBase = {
|
|
@@ -10006,7 +11030,7 @@ export type UIPassthroughContractBase = {
|
|
|
10006
11030
|
vizId?: string;
|
|
10007
11031
|
};
|
|
10008
11032
|
response: {
|
|
10009
|
-
liveboardFilters:
|
|
11033
|
+
liveboardFilters: LiveboardFilter[];
|
|
10010
11034
|
runtimeFilters: RuntimeFilter[];
|
|
10011
11035
|
};
|
|
10012
11036
|
};
|
|
@@ -10019,7 +11043,7 @@ export type UIPassthroughContractBase = {
|
|
|
10019
11043
|
[UIPassthroughEvent.GetParameters]: {
|
|
10020
11044
|
request: Record<string, never>;
|
|
10021
11045
|
response: {
|
|
10022
|
-
parameters:
|
|
11046
|
+
parameters: LiveboardParameter[];
|
|
10023
11047
|
};
|
|
10024
11048
|
};
|
|
10025
11049
|
[UIPassthroughEvent.GetTML]: {
|
|
@@ -10037,6 +11061,14 @@ export type UIPassthroughContractBase = {
|
|
|
10037
11061
|
Tabs: LiveboardTab[];
|
|
10038
11062
|
};
|
|
10039
11063
|
};
|
|
11064
|
+
[UIPassthroughEvent.GetGroups]: {
|
|
11065
|
+
request: Record<string, never>;
|
|
11066
|
+
response: {
|
|
11067
|
+
orderedGroupIds: string[];
|
|
11068
|
+
numberOfGroups: number;
|
|
11069
|
+
Groups: LiveboardGroup[];
|
|
11070
|
+
};
|
|
11071
|
+
};
|
|
10040
11072
|
[UIPassthroughEvent.GetExportRequestForCurrentPinboard]: {
|
|
10041
11073
|
request: Record<string, never>;
|
|
10042
11074
|
response: {
|
|
@@ -10048,18 +11080,8 @@ export type UIPassthroughContractBase = {
|
|
|
10048
11080
|
};
|
|
10049
11081
|
[UIPassthroughEvent.UpdateFilters]: {
|
|
10050
11082
|
request: {
|
|
10051
|
-
filter?:
|
|
10052
|
-
|
|
10053
|
-
oper: string;
|
|
10054
|
-
values: string[];
|
|
10055
|
-
type?: string;
|
|
10056
|
-
};
|
|
10057
|
-
filters?: {
|
|
10058
|
-
column: string;
|
|
10059
|
-
oper: string;
|
|
10060
|
-
values: string[];
|
|
10061
|
-
type?: string;
|
|
10062
|
-
}[];
|
|
11083
|
+
filter?: FilterUpdate;
|
|
11084
|
+
filters?: FilterUpdate[];
|
|
10063
11085
|
};
|
|
10064
11086
|
response: unknown;
|
|
10065
11087
|
};
|
|
@@ -10092,6 +11114,7 @@ export type EmbedApiHostEventMapping = {
|
|
|
10092
11114
|
[HostEvent.GetParameters]: UIPassthroughEvent.GetParameters;
|
|
10093
11115
|
[HostEvent.GetTML]: UIPassthroughEvent.GetTML;
|
|
10094
11116
|
[HostEvent.GetTabs]: UIPassthroughEvent.GetTabs;
|
|
11117
|
+
[HostEvent.GetGroups]: UIPassthroughEvent.GetGroups;
|
|
10095
11118
|
[HostEvent.getExportRequestForCurrentPinboard]: UIPassthroughEvent.GetExportRequestForCurrentPinboard;
|
|
10096
11119
|
};
|
|
10097
11120
|
export type HostEventRequest<HostEventT extends HostEvent> = HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughRequest<EmbedApiHostEventMapping[HostEventT]> : any;
|
|
@@ -10136,6 +11159,7 @@ class HostEventClient {
|
|
|
10136
11159
|
protected handlePinEvent(payload: HostEventRequest<HostEvent.Pin>, context?: ContextType): Promise<HostEventResponse<HostEvent.Pin, ContextType>>;
|
|
10137
11160
|
protected handleSaveAnswerEvent(payload: HostEventRequest<HostEvent.SaveAnswer>, context?: ContextType): Promise<any>;
|
|
10138
11161
|
protected handleUpdateFiltersEvent(payload: HostEventRequest<HostEvent.UpdateFilters>, context?: ContextType): Promise<any>;
|
|
11162
|
+
protected handleUpdateParametersEvent(payload: HostEventRequest<HostEvent.UpdateParameters>, context?: ContextType): Promise<any>;
|
|
10139
11163
|
protected handleDrillDownEvent(payload: HostEventRequest<HostEvent.DrillDown>, context?: ContextType): Promise<any>;
|
|
10140
11164
|
/**
|
|
10141
11165
|
* Dispatches a host event using the appropriate channel:
|
|
@@ -10146,7 +11170,7 @@ class HostEventClient {
|
|
|
10146
11170
|
* @param payload - Optional payload for the event
|
|
10147
11171
|
* @param context - Optional context (e.g. vizId) for scoped operations
|
|
10148
11172
|
*/
|
|
10149
|
-
triggerHostEvent<HostEventT extends HostEvent, PayloadT
|
|
11173
|
+
triggerHostEvent<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(hostEvent: HostEventT, payload?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextType>>;
|
|
10150
11174
|
}
|
|
10151
11175
|
class TsEmbed {
|
|
10152
11176
|
/**
|
|
@@ -10351,6 +11375,12 @@ class TsEmbed {
|
|
|
10351
11375
|
protected getEmbedParamsObject(): Record<any, any>;
|
|
10352
11376
|
protected getRootIframeSrc(): string;
|
|
10353
11377
|
protected createIframeEl(frameSrc: string): HTMLIFrameElement;
|
|
11378
|
+
/**
|
|
11379
|
+
* Returns a merged {@link PreRenderConfig} object where each shared key
|
|
11380
|
+
* prefers `preRenderConfig.key` over the top-level `viewConfig.key` for
|
|
11381
|
+
* backward compatibility.
|
|
11382
|
+
*/
|
|
11383
|
+
protected getPreRenderConfig(): PreRenderConfig;
|
|
10354
11384
|
/**
|
|
10355
11385
|
* Returns true if this embed instance is configured for pre-rendering.
|
|
10356
11386
|
*/
|
|
@@ -10389,12 +11419,14 @@ class TsEmbed {
|
|
|
10389
11419
|
* fresh element; an element passed directly cannot be re-resolved.
|
|
10390
11420
|
*/
|
|
10391
11421
|
private resolvePreRenderContainerTarget;
|
|
11422
|
+
private inheritPreRenderContainer;
|
|
11423
|
+
private getCustomPreRenderContainer;
|
|
10392
11424
|
/**
|
|
10393
|
-
* Makes the container a positioning context for the absolutely
|
|
10394
|
-
* wrapper, stashing the original inline `position` on the element
|
|
10395
|
-
* destroy() can restore it exactly, leaving no trace. Recording it
|
|
10396
|
-
* element rather than per-instance lets the override be reverted even
|
|
10397
|
-
* embeds share the same container.
|
|
11425
|
+
* Makes the resolved container a positioning context for the absolutely
|
|
11426
|
+
* positioned wrapper, stashing the original inline `position` on the element
|
|
11427
|
+
* (once) so destroy() can restore it exactly, leaving no trace. Recording it
|
|
11428
|
+
* on the element rather than per-instance lets the override be reverted even
|
|
11429
|
+
* when embeds share the same container.
|
|
10398
11430
|
*/
|
|
10399
11431
|
private applyPreRenderContainerPositioning;
|
|
10400
11432
|
/**
|
|
@@ -10542,7 +11574,7 @@ class TsEmbed {
|
|
|
10542
11574
|
* ```
|
|
10543
11575
|
* @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl (for context parameter)
|
|
10544
11576
|
*/
|
|
10545
|
-
trigger<HostEventT extends HostEvent, PayloadT
|
|
11577
|
+
trigger<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(messageType: HostEventT, data?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
|
|
10546
11578
|
/**
|
|
10547
11579
|
* Triggers an event to the embedded app, skipping the UI flow.
|
|
10548
11580
|
* @param {UIPassthroughEvent} apiName - The name of the API to be triggered.
|
|
@@ -10738,6 +11770,45 @@ export interface SearchOptions {
|
|
|
10738
11770
|
*/
|
|
10739
11771
|
searchQuery: string;
|
|
10740
11772
|
}
|
|
11773
|
+
/**
|
|
11774
|
+
* The query mode Spotter uses when answering a question.
|
|
11775
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11776
|
+
*/
|
|
11777
|
+
export enum SpotterQueryMode {
|
|
11778
|
+
FAST_SEARCH = "fastSearch",
|
|
11779
|
+
RESEARCH = "research"
|
|
11780
|
+
}
|
|
11781
|
+
/**
|
|
11782
|
+
* Configuration for the pin/unpin conversation feature in the Spotter sidebar.
|
|
11783
|
+
* Grouped into one object because pin exposes several related settings
|
|
11784
|
+
* (enable + label overrides), unlike single-item actions like rename or
|
|
11785
|
+
* delete.
|
|
11786
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
11787
|
+
*/
|
|
11788
|
+
export interface SpotterChatPinConfig {
|
|
11789
|
+
/**
|
|
11790
|
+
* Enables the pin/unpin conversation feature in embedded Spotter. Disabled
|
|
11791
|
+
* by default — hosts must opt in. When off, the Pin/Unpin menu entry and
|
|
11792
|
+
* the pin glyph are hidden and the PinSpotterConversation /
|
|
11793
|
+
* UnpinSpotterConversation host events are no-ops. Native (non-embedded)
|
|
11794
|
+
* Spotter is unaffected and ships pin enabled.
|
|
11795
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
11796
|
+
* @default false
|
|
11797
|
+
*/
|
|
11798
|
+
enabled?: boolean;
|
|
11799
|
+
/**
|
|
11800
|
+
* Custom label text for the pin action in the conversation edit menu.
|
|
11801
|
+
* Defaults to translated "Pin" text.
|
|
11802
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
11803
|
+
*/
|
|
11804
|
+
pinLabel?: string;
|
|
11805
|
+
/**
|
|
11806
|
+
* Custom label text for the unpin action in the conversation edit menu.
|
|
11807
|
+
* Defaults to translated "Unpin" text.
|
|
11808
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
11809
|
+
*/
|
|
11810
|
+
unpinLabel?: string;
|
|
11811
|
+
}
|
|
10741
11812
|
/**
|
|
10742
11813
|
* Configuration for the Spotter sidebar.
|
|
10743
11814
|
* Can be used in SpotterEmbed and AppEmbed.
|
|
@@ -10775,6 +11846,12 @@ export interface SpotterSidebarViewConfig {
|
|
|
10775
11846
|
* @version SDK: 1.47.0 | ThoughtSpot: 26.4.0.cl
|
|
10776
11847
|
*/
|
|
10777
11848
|
spotterChatDeleteLabel?: string;
|
|
11849
|
+
/**
|
|
11850
|
+
* Pin/unpin conversation feature config (enable + label overrides).
|
|
11851
|
+
* Off by default in embed — hosts opt in via `enabled`.
|
|
11852
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
11853
|
+
*/
|
|
11854
|
+
spotterChatPinConfig?: SpotterChatPinConfig;
|
|
10778
11855
|
/**
|
|
10779
11856
|
* Custom title text for the delete conversation confirmation modal.
|
|
10780
11857
|
* Defaults to translated "Delete chat" text.
|
|
@@ -10826,50 +11903,281 @@ export interface SpotterSidebarViewConfig {
|
|
|
10826
11903
|
spotterAnalystsLabel?: string;
|
|
10827
11904
|
}
|
|
10828
11905
|
/**
|
|
10829
|
-
* Configuration for
|
|
10830
|
-
*
|
|
11906
|
+
* Configuration for the Spotter conversation sharing feature.
|
|
11907
|
+
* Can be used in SpotterEmbed and AppEmbed.
|
|
11908
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
10831
11909
|
* @group Embed components
|
|
10832
11910
|
*/
|
|
10833
|
-
export interface
|
|
11911
|
+
export interface SpotterShareConversationConfig {
|
|
10834
11912
|
/**
|
|
10835
|
-
*
|
|
10836
|
-
*
|
|
10837
|
-
* separately via `toolResponseCardBrandingLabel`.
|
|
10838
|
-
* External MCP tool branding is not affected.
|
|
11913
|
+
* Enables sharing of the conversation.
|
|
11914
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
10839
11915
|
* @default false
|
|
10840
11916
|
*/
|
|
10841
|
-
|
|
11917
|
+
enableShareConversation?: boolean;
|
|
10842
11918
|
/**
|
|
10843
|
-
*
|
|
10844
|
-
*
|
|
10845
|
-
*
|
|
10846
|
-
* independently of `hideToolResponseCardBranding`.
|
|
10847
|
-
* External MCP tool branding is not affected.
|
|
11919
|
+
* Header Share button + sidebar Share item label.
|
|
11920
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11921
|
+
* @default "Share"
|
|
10848
11922
|
*/
|
|
10849
|
-
|
|
11923
|
+
spotterShareLabel?: string;
|
|
10850
11924
|
/**
|
|
10851
|
-
*
|
|
10852
|
-
*
|
|
10853
|
-
* Supported embed types: `SpotterEmbed`, `LiveboardEmbed`, `AppEmbed`
|
|
10854
|
-
* @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
|
|
10855
|
-
* @default false
|
|
11925
|
+
* Share modal title.
|
|
11926
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
10856
11927
|
*/
|
|
10857
|
-
|
|
11928
|
+
spotterShareModalTitle?: string;
|
|
10858
11929
|
/**
|
|
10859
|
-
*
|
|
10860
|
-
*
|
|
10861
|
-
*
|
|
10862
|
-
* @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
|
|
11930
|
+
* Modal confirm button label.
|
|
11931
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11932
|
+
* @default "Share"
|
|
10863
11933
|
*/
|
|
10864
|
-
|
|
11934
|
+
spotterShareConfirmLabel?: string;
|
|
11935
|
+
/**
|
|
11936
|
+
* Modal cancel button label.
|
|
11937
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11938
|
+
* @default "Cancel"
|
|
11939
|
+
*/
|
|
11940
|
+
spotterShareCancelLabel?: string;
|
|
11941
|
+
/**
|
|
11942
|
+
* "Add users or groups" label.
|
|
11943
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11944
|
+
*/
|
|
11945
|
+
spotterShareAddUsersLabel?: string;
|
|
11946
|
+
/**
|
|
11947
|
+
* Empty-state title ("No users added yet").
|
|
11948
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11949
|
+
*/
|
|
11950
|
+
spotterShareEmptyTitle?: string;
|
|
11951
|
+
/**
|
|
11952
|
+
* Empty-state subtitle ("Not shared with any user").
|
|
11953
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11954
|
+
*/
|
|
11955
|
+
spotterShareEmptySubtitle?: string;
|
|
11956
|
+
/**
|
|
11957
|
+
* "Include new messages since last shared version" checkbox label.
|
|
11958
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11959
|
+
*/
|
|
11960
|
+
spotterShareIncludeNewMessagesLabel?: string;
|
|
11961
|
+
/**
|
|
11962
|
+
* Footer note when the snapshot is current ("…up to the current moment…").
|
|
11963
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11964
|
+
*/
|
|
11965
|
+
spotterShareUpToCurrentLabel?: string;
|
|
11966
|
+
/**
|
|
11967
|
+
* Stale-snapshot info banner text ("All added users and groups will receive…").
|
|
11968
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11969
|
+
*/
|
|
11970
|
+
spotterShareStaleInfoLabel?: string;
|
|
11971
|
+
/**
|
|
11972
|
+
* Read-only shared-view data-access banner message.
|
|
11973
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11974
|
+
*/
|
|
11975
|
+
spotterSharedConversationBannerMessage?: string;
|
|
11976
|
+
/**
|
|
11977
|
+
* Read-only shared-view Exit button label.
|
|
11978
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11979
|
+
* @default "Exit"
|
|
11980
|
+
*/
|
|
11981
|
+
spotterSharedConversationExitLabel?: string;
|
|
11982
|
+
}
|
|
11983
|
+
/**
|
|
11984
|
+
* A single starter prompt question shown under a category pill.
|
|
11985
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11986
|
+
* @group Embed components
|
|
11987
|
+
*/
|
|
11988
|
+
export interface StarterPromptQuestion {
|
|
11989
|
+
/**
|
|
11990
|
+
* Short label shown as a clickable suggestion. Falls back to `prompt` when
|
|
11991
|
+
* omitted. ThoughtSpot truncates it beyond 80 characters.
|
|
11992
|
+
*/
|
|
11993
|
+
label?: string;
|
|
11994
|
+
/**
|
|
11995
|
+
* Prompt text sent to Spotter on click. ThoughtSpot truncates it beyond
|
|
11996
|
+
* 300 characters.
|
|
11997
|
+
*/
|
|
11998
|
+
prompt: string;
|
|
11999
|
+
}
|
|
12000
|
+
/**
|
|
12001
|
+
* Configuration for a starter prompt category with questions
|
|
12002
|
+
* (`quick` and `research`).
|
|
12003
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12004
|
+
* @group Embed components
|
|
12005
|
+
*/
|
|
12006
|
+
export interface StarterPromptCategory {
|
|
12007
|
+
/**
|
|
12008
|
+
* Overrides the default category pill label. ThoughtSpot truncates it
|
|
12009
|
+
* beyond 30 characters.
|
|
12010
|
+
*/
|
|
12011
|
+
label?: string;
|
|
12012
|
+
/**
|
|
12013
|
+
* Replaces the backend-generated prompts. ThoughtSpot renders the first 4
|
|
12014
|
+
* and drops any entry without a `prompt`.
|
|
12015
|
+
*/
|
|
12016
|
+
questions?: StarterPromptQuestion[];
|
|
12017
|
+
}
|
|
12018
|
+
/**
|
|
12019
|
+
* Configuration for the Data Literacy starter prompt category.
|
|
12020
|
+
* Only the label is customizable; the prompt text comes from the backend.
|
|
12021
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12022
|
+
* @group Embed components
|
|
12023
|
+
*/
|
|
12024
|
+
export interface StarterPreviewDataCategory {
|
|
12025
|
+
/**
|
|
12026
|
+
* Overrides the default category pill label. ThoughtSpot truncates it
|
|
12027
|
+
* beyond 30 characters.
|
|
12028
|
+
*/
|
|
12029
|
+
label?: string;
|
|
12030
|
+
}
|
|
12031
|
+
/**
|
|
12032
|
+
* Content configuration for the Spotter starter prompts.
|
|
12033
|
+
* Keys are fixed: `quick` (Basic Search), `research` (Deep Analysis),
|
|
12034
|
+
* `previewData` (Data Literacy) and `liveboard` (Liveboard chat panel).
|
|
12035
|
+
*
|
|
12036
|
+
* Note: this controls the Spotter chat interface only. The starter prompts on
|
|
12037
|
+
* the Liveboard SpotterViz surface are configured separately through
|
|
12038
|
+
* {@link SpotterVizConfig.customStarterPrompts}.
|
|
12039
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12040
|
+
* @group Embed components
|
|
12041
|
+
*/
|
|
12042
|
+
export interface StarterPromptsConfig {
|
|
12043
|
+
/**
|
|
12044
|
+
* Turns the starter prompts surface on. Must be set explicitly, an
|
|
12045
|
+
* unset flag leaves the surface off.
|
|
12046
|
+
*
|
|
12047
|
+
* Either this or `enableStarterPrompts` turns the surface on, so `false`
|
|
12048
|
+
* here does not switch it off while `enableStarterPrompts` is `true`.
|
|
12049
|
+
* @default false
|
|
12050
|
+
*/
|
|
12051
|
+
enable?: boolean;
|
|
12052
|
+
/** Basic Search category configuration. */
|
|
12053
|
+
quick?: StarterPromptCategory;
|
|
12054
|
+
/** Deep Analysis category configuration. */
|
|
12055
|
+
research?: StarterPromptCategory;
|
|
12056
|
+
/** Data Literacy category configuration. */
|
|
12057
|
+
previewData?: StarterPreviewDataCategory;
|
|
12058
|
+
/**
|
|
12059
|
+
* Starter prompts for the Spotter chat panel on a Liveboard.
|
|
12060
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12061
|
+
*/
|
|
12062
|
+
liveboard?: StarterPromptQuestion[];
|
|
12063
|
+
}
|
|
12064
|
+
/**
|
|
12065
|
+
* Configuration for customizing Spotter chat UI branding.
|
|
12066
|
+
* @version SDK: 1.46.0 | ThoughtSpot: 26.4.0.cl
|
|
12067
|
+
* @group Embed components
|
|
12068
|
+
*/
|
|
12069
|
+
export interface SpotterChatViewConfig {
|
|
12070
|
+
/**
|
|
12071
|
+
* Hides the ThoughtSpot logo/icon in tool response
|
|
12072
|
+
* cards. The branding label prefix is controlled
|
|
12073
|
+
* separately via `toolResponseCardBrandingLabel`.
|
|
12074
|
+
* External MCP tool branding is not affected.
|
|
12075
|
+
* @default false
|
|
12076
|
+
*/
|
|
12077
|
+
hideToolResponseCardBranding?: boolean;
|
|
12078
|
+
/**
|
|
12079
|
+
* Custom label to replace the "ThoughtSpot" prefix
|
|
12080
|
+
* in tool response cards. Set to an empty string
|
|
12081
|
+
* `''` to hide the prefix entirely. Works
|
|
12082
|
+
* independently of `hideToolResponseCardBranding`.
|
|
12083
|
+
* External MCP tool branding is not affected.
|
|
12084
|
+
*/
|
|
12085
|
+
toolResponseCardBrandingLabel?: string;
|
|
12086
|
+
/**
|
|
12087
|
+
* Enables file upload in the Spotter chat interface.
|
|
12088
|
+
*
|
|
12089
|
+
* Supported embed types: `SpotterEmbed`, `LiveboardEmbed`, `AppEmbed`
|
|
12090
|
+
* @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
|
|
12091
|
+
* @default false
|
|
12092
|
+
*/
|
|
12093
|
+
spotterFileUploadEnabled?: boolean;
|
|
12094
|
+
/**
|
|
12095
|
+
* Restricts the allowed file types for Spotter file upload.
|
|
12096
|
+
*
|
|
12097
|
+
* Supported embed types: `SpotterEmbed`, `LiveboardEmbed`, `AppEmbed`
|
|
12098
|
+
* @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
|
|
12099
|
+
*/
|
|
12100
|
+
spotterFileUploadFileTypes?: SpotterFileUploadFileTypes;
|
|
10865
12101
|
/**
|
|
10866
12102
|
* Enables starter prompts in the Spotter chat interface.
|
|
10867
12103
|
*
|
|
10868
|
-
*
|
|
12104
|
+
* Either this or `starterPrompts.enable` turns the surface on, so it stays
|
|
12105
|
+
* on while this is `true` even if `starterPrompts.enable` is `false`.
|
|
12106
|
+
*
|
|
12107
|
+
* Supported embed types: `SpotterEmbed`, `LiveboardEmbed`, `AppEmbed`
|
|
10869
12108
|
* @version SDK: 1.51.0 | ThoughtSpot: 26.8.0.cl
|
|
10870
12109
|
* @default false
|
|
10871
12110
|
*/
|
|
10872
12111
|
enableStarterPrompts?: boolean;
|
|
12112
|
+
/**
|
|
12113
|
+
* Customizes the labels and questions of the Spotter starter prompts.
|
|
12114
|
+
* Individual pills are hidden or shown with `hiddenActions` /
|
|
12115
|
+
* `visibleActions` using `Action.QuickSearchPill`,
|
|
12116
|
+
* `Action.DeepAnalysisPill` and `Action.DataLiteracyPill`.
|
|
12117
|
+
*
|
|
12118
|
+
* Supported embed types: `SpotterEmbed`, `LiveboardEmbed`, `AppEmbed`
|
|
12119
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12120
|
+
* @example
|
|
12121
|
+
* ```js
|
|
12122
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
12123
|
+
* worksheetId: 'worksheet-id',
|
|
12124
|
+
* hiddenActions: [Action.DeepAnalysisPill],
|
|
12125
|
+
* spotterChatConfig: {
|
|
12126
|
+
* starterPrompts: {
|
|
12127
|
+
* enable: true,
|
|
12128
|
+
* quick: {
|
|
12129
|
+
* label: 'Quick questions',
|
|
12130
|
+
* questions: [
|
|
12131
|
+
* { label: 'Top products', prompt: 'What are the top products by revenue?' },
|
|
12132
|
+
* ],
|
|
12133
|
+
* },
|
|
12134
|
+
* previewData: { label: 'Explore your data' },
|
|
12135
|
+
* },
|
|
12136
|
+
* },
|
|
12137
|
+
* })
|
|
12138
|
+
* ```
|
|
12139
|
+
*/
|
|
12140
|
+
starterPrompts?: StarterPromptsConfig;
|
|
12141
|
+
/**
|
|
12142
|
+
* Opens the Spotter chat panel when the Liveboard loads.
|
|
12143
|
+
*
|
|
12144
|
+
* Supported embed types: `LiveboardEmbed`, `AppEmbed`
|
|
12145
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12146
|
+
* @default true
|
|
12147
|
+
* @example
|
|
12148
|
+
* ```js
|
|
12149
|
+
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
12150
|
+
* liveboardId: 'liveboard-id',
|
|
12151
|
+
* spotterChatConfig: {
|
|
12152
|
+
* openSpotterOnLiveboardByDefault: false,
|
|
12153
|
+
* },
|
|
12154
|
+
* })
|
|
12155
|
+
* ```
|
|
12156
|
+
*/
|
|
12157
|
+
openSpotterOnLiveboardByDefault?: boolean;
|
|
12158
|
+
}
|
|
12159
|
+
/**
|
|
12160
|
+
* Configuration for the Spotter Analyst experience.
|
|
12161
|
+
* Can be used in SpotterEmbed.
|
|
12162
|
+
* @group Embed components
|
|
12163
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12164
|
+
* @example
|
|
12165
|
+
* ```js
|
|
12166
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
12167
|
+
* ... //other embed view config
|
|
12168
|
+
* spotterAnalystConfig: {
|
|
12169
|
+
* analystId: 'analyst-id-1234',
|
|
12170
|
+
* },
|
|
12171
|
+
* })
|
|
12172
|
+
* ```
|
|
12173
|
+
*/
|
|
12174
|
+
export interface SpotterAnalystConfig {
|
|
12175
|
+
/**
|
|
12176
|
+
* Pins the embed to a single spotter analyst. Implies no default Spotter
|
|
12177
|
+
* and no "Show all".
|
|
12178
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12179
|
+
*/
|
|
12180
|
+
analystId?: string;
|
|
10873
12181
|
}
|
|
10874
12182
|
/**
|
|
10875
12183
|
* The configuration for the embedded spotterEmbed options.
|
|
@@ -10879,8 +12187,43 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAct
|
|
|
10879
12187
|
/**
|
|
10880
12188
|
* The ID of the data source object. For example, Model, View, or Table. Spotter uses
|
|
10881
12189
|
* this object to query data and generate Answers.
|
|
12190
|
+
* This field is optional. If not provided, Spotter loads using the
|
|
12191
|
+
* previously selected user data source.
|
|
10882
12192
|
*/
|
|
10883
|
-
worksheetId
|
|
12193
|
+
worksheetId?: string;
|
|
12194
|
+
/**
|
|
12195
|
+
* The array of data source GUIDs to set on load. Spotter uses
|
|
12196
|
+
* these GUIDs to query data and generate Answers.
|
|
12197
|
+
* dataSources is preferred over worksheetId if both are provided.
|
|
12198
|
+
* The feature is currently behind a feature flag.
|
|
12199
|
+
*
|
|
12200
|
+
* Supported embed types: `SpotterEmbed`
|
|
12201
|
+
* @example
|
|
12202
|
+
* ```js
|
|
12203
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
12204
|
+
* // ...other embed view config
|
|
12205
|
+
* dataSources: ['id-2345', 'id-2345'],
|
|
12206
|
+
* });
|
|
12207
|
+
* ```
|
|
12208
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12209
|
+
*/
|
|
12210
|
+
dataSources?: string[];
|
|
12211
|
+
/**
|
|
12212
|
+
* Configuration for the Spotter Analyst experience.
|
|
12213
|
+
*
|
|
12214
|
+
* Supported embed types: `SpotterEmbed`
|
|
12215
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12216
|
+
* @example
|
|
12217
|
+
* ```js
|
|
12218
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
12219
|
+
* ... //other embed view config
|
|
12220
|
+
* spotterAnalystConfig: {
|
|
12221
|
+
* analystId: 'analyst-id-1234',
|
|
12222
|
+
* },
|
|
12223
|
+
* })
|
|
12224
|
+
* ```
|
|
12225
|
+
*/
|
|
12226
|
+
spotterAnalystConfig?: SpotterAnalystConfig;
|
|
10884
12227
|
/**
|
|
10885
12228
|
* Ability to pass a starting search query to the conversation.
|
|
10886
12229
|
*/
|
|
@@ -11040,6 +12383,39 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAct
|
|
|
11040
12383
|
* ```
|
|
11041
12384
|
*/
|
|
11042
12385
|
updatedSpotterChatPrompt?: boolean;
|
|
12386
|
+
/**
|
|
12387
|
+
* showSpotterRadiance : Controls the radiance on the Spotter page.
|
|
12388
|
+
*
|
|
12389
|
+
* Supported embed types: `SpotterEmbed`
|
|
12390
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12391
|
+
* @default false
|
|
12392
|
+
* @example
|
|
12393
|
+
* ```js
|
|
12394
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
12395
|
+
* ... //other embed view config
|
|
12396
|
+
* showSpotterRadiance : true,
|
|
12397
|
+
* })
|
|
12398
|
+
* ```
|
|
12399
|
+
*/
|
|
12400
|
+
showSpotterRadiance?: boolean;
|
|
12401
|
+
/**
|
|
12402
|
+
* Sets the default query mode when Spotter loads — Fast Search or
|
|
12403
|
+
* Research Mode. Applies fresh on every new session for this embed
|
|
12404
|
+
* instance only; it does not persist as a user preference and does
|
|
12405
|
+
* not affect other embeds or native ThoughtSpot usage.
|
|
12406
|
+
*
|
|
12407
|
+
* Supported embed types: `SpotterEmbed`, `AppEmbed`
|
|
12408
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12409
|
+
* @default SpotterQueryMode.FAST_SEARCH
|
|
12410
|
+
* @example
|
|
12411
|
+
* ```js
|
|
12412
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
12413
|
+
* ... //other embed view config
|
|
12414
|
+
* defaultQueryMode: SpotterQueryMode.RESEARCH,
|
|
12415
|
+
* })
|
|
12416
|
+
* ```
|
|
12417
|
+
*/
|
|
12418
|
+
defaultQueryMode?: SpotterQueryMode;
|
|
11043
12419
|
/**
|
|
11044
12420
|
* Enables the stop answer generation button in the Spotter embed UI,
|
|
11045
12421
|
* allowing users to interrupt an ongoing answer generation.
|
|
@@ -11098,6 +12474,59 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAct
|
|
|
11098
12474
|
* ```
|
|
11099
12475
|
*/
|
|
11100
12476
|
spotterChatConfig?: SpotterChatViewConfig;
|
|
12477
|
+
/**
|
|
12478
|
+
* Configuration for the Spotter conversation sharing feature.
|
|
12479
|
+
*
|
|
12480
|
+
* Supported embed types: `SpotterEmbed`, `AppEmbed`
|
|
12481
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12482
|
+
* @example
|
|
12483
|
+
* ```js
|
|
12484
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
12485
|
+
* ... //other embed view config
|
|
12486
|
+
* spotterShareConversationConfig: {
|
|
12487
|
+
* enableShareConversation: true,
|
|
12488
|
+
* },
|
|
12489
|
+
* })
|
|
12490
|
+
* ```
|
|
12491
|
+
*/
|
|
12492
|
+
spotterShareConversationConfig?: SpotterShareConversationConfig;
|
|
12493
|
+
/**
|
|
12494
|
+
* The ID of a shared Spotter conversation to open directly in the read-only
|
|
12495
|
+
* reader view. Use this to land a share recipient in the shared conversation
|
|
12496
|
+
* when they open a host-configured `CONVERSATION_URL` share link: read the
|
|
12497
|
+
* `{conversation-id}` from your page URL and pass it here.
|
|
12498
|
+
*
|
|
12499
|
+
* Requires the Spotter conversation-sharing feature to be enabled
|
|
12500
|
+
* (`spotterShareConversationConfig.enableShareConversation`). The recipient
|
|
12501
|
+
* must be an authorized sharee — the server returns access-denied otherwise.
|
|
12502
|
+
*
|
|
12503
|
+
* Supported embed types: `SpotterEmbed`
|
|
12504
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12505
|
+
* @example
|
|
12506
|
+
* ```js
|
|
12507
|
+
* const convId = new URLSearchParams(window.location.search).get('conversation-id');
|
|
12508
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
12509
|
+
* ... //other embed view config
|
|
12510
|
+
* sharedConversationId: convId,
|
|
12511
|
+
* })
|
|
12512
|
+
* ```
|
|
12513
|
+
*/
|
|
12514
|
+
sharedConversationId?: string;
|
|
12515
|
+
/**
|
|
12516
|
+
* updatedSpotterExperience : Controls the updated Spotter experience.
|
|
12517
|
+
*
|
|
12518
|
+
* Supported embed types: `SpotterEmbed`
|
|
12519
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
12520
|
+
* @default false
|
|
12521
|
+
* @example
|
|
12522
|
+
* ```js
|
|
12523
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
12524
|
+
* ... //other embed view config
|
|
12525
|
+
* updatedSpotterExperience : true,
|
|
12526
|
+
* })
|
|
12527
|
+
* ```
|
|
12528
|
+
*/
|
|
12529
|
+
updatedSpotterExperience?: boolean;
|
|
11101
12530
|
}
|
|
11102
12531
|
/**
|
|
11103
12532
|
* The configuration for the embedded spotterEmbed options.
|
|
@@ -11114,7 +12543,9 @@ export interface ConversationViewConfig extends SpotterEmbedViewConfig {
|
|
|
11114
12543
|
export interface SpotterAppInitData extends DefaultAppInitData {
|
|
11115
12544
|
embedParams?: {
|
|
11116
12545
|
spotterSidebarConfig?: SpotterSidebarViewConfig;
|
|
12546
|
+
spotterShareConversationConfig?: SpotterShareConversationConfig;
|
|
11117
12547
|
visualOverridesParams?: VisualizationOverrides | null;
|
|
12548
|
+
starterPrompts?: StarterPromptsConfig;
|
|
11118
12549
|
};
|
|
11119
12550
|
}
|
|
11120
12551
|
/**
|
|
@@ -11204,12 +12635,17 @@ export interface SpotterVizStarterPrompt {
|
|
|
11204
12635
|
* customStarterPrompts: [
|
|
11205
12636
|
* { id: '1', displayText: 'Top products', fullPrompt: 'What are the top products by revenue?' }
|
|
11206
12637
|
* ],
|
|
11207
|
-
* //
|
|
12638
|
+
* // The options below require SDK: 1.51.0
|
|
11208
12639
|
* loaderHeadline: 'Crunching the numbers...',
|
|
11209
12640
|
* loaderTips: [
|
|
11210
12641
|
* { label: 'Tip', text: 'try asking about revenue by region' },
|
|
11211
12642
|
* { label: 'Tip', text: 'use natural language' },
|
|
11212
12643
|
* ],
|
|
12644
|
+
* liveboardBrandName: 'Reports',
|
|
12645
|
+
* spotterBrandName: 'Analyst',
|
|
12646
|
+
* insightTileBrandName: 'Insight card',
|
|
12647
|
+
* insightTileViewPlanLabel: 'View plan',
|
|
12648
|
+
* insightTileLoaderText: 'Generating insight',
|
|
11213
12649
|
* },
|
|
11214
12650
|
* })
|
|
11215
12651
|
* ```
|
|
@@ -11257,19 +12693,47 @@ export interface SpotterVizConfig {
|
|
|
11257
12693
|
/**
|
|
11258
12694
|
* Custom headline text shown in the SpotterViz loading state.
|
|
11259
12695
|
* Replaces the default loading headline.
|
|
11260
|
-
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.
|
|
12696
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
11261
12697
|
*/
|
|
11262
12698
|
loaderHeadline?: string;
|
|
11263
12699
|
/**
|
|
11264
12700
|
* Custom tips shown in the SpotterViz loading state.
|
|
11265
12701
|
* Replaces the default loading tips with the provided list.
|
|
11266
|
-
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.
|
|
12702
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
11267
12703
|
*/
|
|
11268
12704
|
loaderTips?: SpotterVizLoaderTip[];
|
|
12705
|
+
/**
|
|
12706
|
+
* Custom term used to replace "Liveboard" in the agent's responses.
|
|
12707
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
12708
|
+
* @default ''
|
|
12709
|
+
*/
|
|
12710
|
+
liveboardBrandName?: string;
|
|
12711
|
+
/**
|
|
12712
|
+
* Custom term used to replace "Spotter" in the agent's responses.
|
|
12713
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
12714
|
+
* @default ''
|
|
12715
|
+
*/
|
|
12716
|
+
spotterBrandName?: string;
|
|
12717
|
+
/**
|
|
12718
|
+
* Custom term used to replace "Insight tile" in the UI and in the agent's responses.
|
|
12719
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
12720
|
+
* @default ''
|
|
12721
|
+
*/
|
|
12722
|
+
insightTileBrandName?: string;
|
|
12723
|
+
/**
|
|
12724
|
+
* Custom term used to replace "View plan" in the insight tile menu.
|
|
12725
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
12726
|
+
*/
|
|
12727
|
+
insightTileViewPlanLabel?: string;
|
|
12728
|
+
/**
|
|
12729
|
+
* Custom loader text shown on the insight tile.
|
|
12730
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
12731
|
+
*/
|
|
12732
|
+
insightTileLoaderText?: string;
|
|
11269
12733
|
}
|
|
11270
12734
|
/**
|
|
11271
12735
|
* A single tip shown in the SpotterViz loading state.
|
|
11272
|
-
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.
|
|
12736
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
11273
12737
|
* @group Embed components
|
|
11274
12738
|
*/
|
|
11275
12739
|
export interface SpotterVizLoaderTip {
|
|
@@ -11313,7 +12777,15 @@ export enum Page {
|
|
|
11313
12777
|
/**
|
|
11314
12778
|
* Monitor Alerts Page
|
|
11315
12779
|
*/
|
|
11316
|
-
Monitor = "monitor"
|
|
12780
|
+
Monitor = "monitor",
|
|
12781
|
+
/**
|
|
12782
|
+
* Collections listing page
|
|
12783
|
+
*/
|
|
12784
|
+
Collections = "collections",
|
|
12785
|
+
/**
|
|
12786
|
+
* Liveboard schedules listing page
|
|
12787
|
+
*/
|
|
12788
|
+
LiveboardSchedules = "liveboard-schedules"
|
|
11317
12789
|
}
|
|
11318
12790
|
/**
|
|
11319
12791
|
* Define the initial state of column custom group accordions
|
|
@@ -11358,6 +12830,9 @@ export enum HomePage {
|
|
|
11358
12830
|
/**
|
|
11359
12831
|
* Modular (v2) introduces the updated Modular Home Experience.
|
|
11360
12832
|
* It serves as the foundational version of the home page.
|
|
12833
|
+
* Use {@link HomePage.ModularWithStylingChanges} (V3) or
|
|
12834
|
+
* {@link HomePage.Focused} (V4) instead.
|
|
12835
|
+
* @deprecated V1 and V2 home page experiences are deprecated.
|
|
11361
12836
|
*/
|
|
11362
12837
|
Modular = "v2",
|
|
11363
12838
|
/**
|
|
@@ -11431,13 +12906,14 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11431
12906
|
showPrimaryNavbar?: boolean;
|
|
11432
12907
|
/**
|
|
11433
12908
|
* Control the visibility of the left navigation panel on the home page
|
|
11434
|
-
* in the
|
|
12909
|
+
* in the V3 and V4 navigation and home page experience.
|
|
11435
12910
|
* If `showPrimaryNavbar` is true, that is, if the Global and Homepage
|
|
11436
12911
|
* navigation bars are visible, this flag will only hide the left navigation bar
|
|
11437
12912
|
* on the home page.
|
|
11438
12913
|
* The `showPrimaryNavbar` flag takes precedence over the `hideHomepageLeftNav`.
|
|
11439
12914
|
*
|
|
11440
|
-
* **Note**:
|
|
12915
|
+
* **Note**: The classic (V1) and Modular (V2) home page experiences are
|
|
12916
|
+
* deprecated. This attribute applies to V3 and V4 home page experiences.
|
|
11441
12917
|
*
|
|
11442
12918
|
* Supported embed types: `AppEmbed`
|
|
11443
12919
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
@@ -11503,11 +12979,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11503
12979
|
hideHamburger?: boolean;
|
|
11504
12980
|
/**
|
|
11505
12981
|
* Control the visibility of the object search
|
|
11506
|
-
* on the top navigation bar in the
|
|
11507
|
-
* V2 and V3 navigation experience.
|
|
12982
|
+
* on the top navigation bar in the V3 navigation experience.
|
|
11508
12983
|
*
|
|
11509
|
-
* **Note**:
|
|
11510
|
-
*
|
|
12984
|
+
* **Note**: The classic (V1) and V2 navigation experiences are
|
|
12985
|
+
* deprecated. This attribute applies to the V3 navigation experience.
|
|
11511
12986
|
*
|
|
11512
12987
|
* Supported embed types: `AppEmbed`
|
|
11513
12988
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
|
|
@@ -11525,8 +13000,8 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11525
13000
|
* Control the visibility of the notification icon
|
|
11526
13001
|
* on the top navigation bar in V3 navigation experience.
|
|
11527
13002
|
*
|
|
11528
|
-
* **Note**:
|
|
11529
|
-
*
|
|
13003
|
+
* **Note**: The classic (V1) and V2 experience modes are deprecated.
|
|
13004
|
+
* This attribute applies to the V3 experience.
|
|
11530
13005
|
*
|
|
11531
13006
|
* Supported embed types: `AppEmbed`
|
|
11532
13007
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
|
|
@@ -11541,14 +13016,14 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11541
13016
|
*/
|
|
11542
13017
|
hideNotification?: boolean;
|
|
11543
13018
|
/**
|
|
11544
|
-
* Control the visibility of the application selection menu
|
|
11545
|
-
* in the top navigation bar in the V2 experience.
|
|
13019
|
+
* Control the visibility of the application selection menu.
|
|
11546
13020
|
* In the V3 experience, it shows or hides application selection
|
|
11547
13021
|
* icons on the left navigation panel.
|
|
11548
13022
|
* By default, the application selection menu and icons are
|
|
11549
13023
|
* shown in the UI.
|
|
11550
13024
|
*
|
|
11551
|
-
* **Note**:
|
|
13025
|
+
* **Note**: The classic (V1) and V2 experiences are deprecated.
|
|
13026
|
+
* This attribute applies to the V3 experience.
|
|
11552
13027
|
*
|
|
11553
13028
|
* Supported embed types: `AppEmbed`
|
|
11554
13029
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
@@ -11566,7 +13041,8 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11566
13041
|
* Control the visibility of the Org switcher button on the nav-bar.
|
|
11567
13042
|
* By default, the Org switcher button is shown.
|
|
11568
13043
|
*
|
|
11569
|
-
* **Note**:
|
|
13044
|
+
* **Note**: The classic (V1) experience is deprecated. This attribute
|
|
13045
|
+
* applies to V2 (deprecated), V3 and V4 experiences.
|
|
11570
13046
|
*
|
|
11571
13047
|
* Supported embed types: `AppEmbed`
|
|
11572
13048
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
@@ -11707,6 +13183,11 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11707
13183
|
* `false` fetches visualizations incrementally as
|
|
11708
13184
|
* users scroll the page to view the charts and tables.
|
|
11709
13185
|
*
|
|
13186
|
+
* From SDK 1.52.0, enabling `fullHeight` also turns on
|
|
13187
|
+
* {@link lazyLoadingForFullHeight} and
|
|
13188
|
+
* {@link enableScrollableContainerLazyLoading}, so visualizations load as
|
|
13189
|
+
* they scroll into view. Set either flag to `false` to opt out.
|
|
13190
|
+
*
|
|
11710
13191
|
* Supported embed types: `AppEmbed`
|
|
11711
13192
|
* @version SDK: 1.21.0 | ThoughtSpot: 9.4.0.cl, 9.4.0-sw
|
|
11712
13193
|
* @example
|
|
@@ -11725,6 +13206,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11725
13206
|
* Supported embed types: `AppEmbed`
|
|
11726
13207
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
11727
13208
|
* @default false
|
|
13209
|
+
* Use the discoveryExperience.homePage option with
|
|
13210
|
+
* {@link HomePage.ModularWithStylingChanges} (V3) or
|
|
13211
|
+
* {@link HomePage.Focused} (V4) instead.
|
|
13212
|
+
* @deprecated The V1 and V2 home page experiences are deprecated.
|
|
11728
13213
|
* @example
|
|
11729
13214
|
* ```js
|
|
11730
13215
|
* const embed = new AppEmbed('#tsEmbed', {
|
|
@@ -11856,11 +13341,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11856
13341
|
/**
|
|
11857
13342
|
* Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
|
|
11858
13343
|
* following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
|
|
11859
|
-
* This feature is GA from version
|
|
13344
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.8.0.cl.
|
|
11860
13345
|
*
|
|
11861
13346
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
11862
13347
|
* @type {boolean}
|
|
11863
13348
|
* @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
|
|
13349
|
+
* @default true
|
|
11864
13350
|
* @example
|
|
11865
13351
|
* ```js
|
|
11866
13352
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -11873,10 +13359,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11873
13359
|
isContinuousLiveboardPDFEnabled?: boolean;
|
|
11874
13360
|
/**
|
|
11875
13361
|
* This flag is used to enable/disable the XLSX/CSV download option for Liveboards
|
|
13362
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl
|
|
11876
13363
|
*
|
|
11877
13364
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
11878
13365
|
* @type {boolean}
|
|
11879
13366
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
13367
|
+
* @default true
|
|
11880
13368
|
* @example
|
|
11881
13369
|
* ```js
|
|
11882
13370
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -11889,10 +13377,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11889
13377
|
isLiveboardXLSXCSVDownloadEnabled?: boolean;
|
|
11890
13378
|
/**
|
|
11891
13379
|
* This flag is used to enable/disable the granular XLSX/CSV schedules feature
|
|
13380
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl
|
|
11892
13381
|
*
|
|
11893
13382
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
11894
13383
|
* @type {boolean}
|
|
11895
13384
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
13385
|
+
* @default true
|
|
11896
13386
|
* @example
|
|
11897
13387
|
* ```js
|
|
11898
13388
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -11904,11 +13394,17 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11904
13394
|
*/
|
|
11905
13395
|
isGranularXLSXCSVSchedulesEnabled?: boolean;
|
|
11906
13396
|
/**
|
|
11907
|
-
*
|
|
13397
|
+
* Loads visualizations only as they scroll into the viewport, instead of
|
|
13398
|
+
* loading the whole full-height Liveboard at once.
|
|
13399
|
+
*
|
|
13400
|
+
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
13401
|
+
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
13402
|
+
* set explicitly. Set it to `false` to load every visualization upfront.
|
|
13403
|
+
* The flag has no effect unless `fullHeight` is enabled.
|
|
11908
13404
|
*
|
|
11909
13405
|
* @type {boolean}
|
|
11910
13406
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
11911
|
-
* @default
|
|
13407
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
11912
13408
|
* @example
|
|
11913
13409
|
* ```js
|
|
11914
13410
|
* const embed = new AppEmbed('#embed-container', {
|
|
@@ -11920,27 +13416,43 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11920
13416
|
*/
|
|
11921
13417
|
lazyLoadingForFullHeight?: boolean;
|
|
11922
13418
|
/**
|
|
11923
|
-
*
|
|
13419
|
+
* Computes the visible region of the embed against its scrollable and
|
|
13420
|
+
* clipping ancestors, instead of treating the browser window as the only
|
|
13421
|
+
* viewport, and tracks scroll and resize on those ancestors.
|
|
11924
13422
|
*
|
|
11925
|
-
*
|
|
11926
|
-
*
|
|
13423
|
+
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
13424
|
+
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
13425
|
+
* set explicitly. Set it to `false` when the page scrolls with the window
|
|
13426
|
+
* and the embed has no clipping ancestor, to skip the extra ancestor
|
|
13427
|
+
* tracking.
|
|
11927
13428
|
*
|
|
11928
13429
|
* @type {boolean}
|
|
11929
|
-
* @default
|
|
13430
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
11930
13431
|
* @hidden
|
|
11931
13432
|
*/
|
|
11932
13433
|
enableScrollableContainerLazyLoading?: boolean;
|
|
11933
13434
|
/**
|
|
11934
|
-
*
|
|
13435
|
+
* How far outside the viewport a visualization starts loading, when
|
|
13436
|
+
* {@link lazyLoadingForFullHeight} is enabled.
|
|
11935
13437
|
*
|
|
11936
13438
|
* For example, if the margin is set to '10px',
|
|
11937
13439
|
* the visualization will be loaded 10px before its top edge is visible in the
|
|
11938
13440
|
* viewport.
|
|
11939
13441
|
*
|
|
11940
|
-
* The format is similar to CSS margin
|
|
13442
|
+
* The format is similar to CSS margin, so `'500px 0px'` extends the
|
|
13443
|
+
* prefetch 500px above and below the viewport and not sideways. Accepted
|
|
13444
|
+
* units are `px`, `em`, `rem`, `%`, `vh` and `vw`, plus bare `0` and
|
|
13445
|
+
* `auto`; an invalid value is logged and ignored.
|
|
13446
|
+
*
|
|
13447
|
+
* From SDK 1.52.0 this defaults to `'500px 0px'` — roughly one
|
|
13448
|
+
* visualization ahead of the scroll position, so a chart has usually
|
|
13449
|
+
* finished loading by the time it scrolls into view. Use a smaller margin
|
|
13450
|
+
* to cut warehouse queries further, or `'0px'` to load a visualization
|
|
13451
|
+
* only once it is actually visible.
|
|
11941
13452
|
*
|
|
11942
13453
|
* @type {string}
|
|
11943
13454
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
13455
|
+
* @default '500px 0px' when `fullHeight` is enabled, from SDK 1.52.0
|
|
11944
13456
|
* @example
|
|
11945
13457
|
* ```js
|
|
11946
13458
|
* const embed = new AppEmbed('#embed-container', {
|
|
@@ -11968,6 +13480,40 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11968
13480
|
* ```
|
|
11969
13481
|
*/
|
|
11970
13482
|
updatedSpotterChatPrompt?: boolean;
|
|
13483
|
+
/**
|
|
13484
|
+
* showSpotterRadiance : Controls the radiance on the Spotter page.
|
|
13485
|
+
*
|
|
13486
|
+
* Supported embed types: `AppEmbed`
|
|
13487
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
13488
|
+
* @default false
|
|
13489
|
+
* @example
|
|
13490
|
+
* ```js
|
|
13491
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
13492
|
+
* ... //other embed view config
|
|
13493
|
+
* showSpotterRadiance : true,
|
|
13494
|
+
* })
|
|
13495
|
+
* ```
|
|
13496
|
+
*/
|
|
13497
|
+
showSpotterRadiance?: boolean;
|
|
13498
|
+
/**
|
|
13499
|
+
* Sets the default query mode when Spotter loads — Fast Search or
|
|
13500
|
+
* Research Mode. Applies fresh on every new session for this embed
|
|
13501
|
+
* instance only; it does not persist as a user preference and does
|
|
13502
|
+
* not affect other embeds or native ThoughtSpot usage.
|
|
13503
|
+
* Only applicable when navigating to Spotter within the app.
|
|
13504
|
+
*
|
|
13505
|
+
* Supported embed types: `AppEmbed`
|
|
13506
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
13507
|
+
* @default SpotterQueryMode.FAST_SEARCH
|
|
13508
|
+
* @example
|
|
13509
|
+
* ```js
|
|
13510
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
13511
|
+
* ... //other embed view config
|
|
13512
|
+
* defaultQueryMode: SpotterQueryMode.RESEARCH,
|
|
13513
|
+
* })
|
|
13514
|
+
* ```
|
|
13515
|
+
*/
|
|
13516
|
+
defaultQueryMode?: SpotterQueryMode;
|
|
11971
13517
|
/**
|
|
11972
13518
|
* Controls the visibility of the past conversations sidebar.
|
|
11973
13519
|
*
|
|
@@ -11993,6 +13539,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
11993
13539
|
* spotterSidebarConfig: {
|
|
11994
13540
|
* enablePastConversationsSidebar: true,
|
|
11995
13541
|
* spotterSidebarTitle: 'My Conversations',
|
|
13542
|
+
* // Opt in to pin/unpin conversations in embedded Spotter
|
|
13543
|
+
* spotterChatPinConfig: {
|
|
13544
|
+
* enabled: true,
|
|
13545
|
+
* },
|
|
11996
13546
|
* },
|
|
11997
13547
|
* })
|
|
11998
13548
|
* ```
|
|
@@ -12016,6 +13566,49 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
12016
13566
|
* ```
|
|
12017
13567
|
*/
|
|
12018
13568
|
spotterChatConfig?: SpotterChatViewConfig;
|
|
13569
|
+
/**
|
|
13570
|
+
* Configuration for the Spotter conversation sharing feature.
|
|
13571
|
+
*
|
|
13572
|
+
* Supported embed types: `AppEmbed`
|
|
13573
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
13574
|
+
* @example
|
|
13575
|
+
* ```js
|
|
13576
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
13577
|
+
* ... //other embed view config
|
|
13578
|
+
* spotterShareConversationConfig: {
|
|
13579
|
+
* enableShareConversation: true,
|
|
13580
|
+
* },
|
|
13581
|
+
* })
|
|
13582
|
+
* ```
|
|
13583
|
+
*/
|
|
13584
|
+
spotterShareConversationConfig?: SpotterShareConversationConfig;
|
|
13585
|
+
/**
|
|
13586
|
+
* Sets the default data sources (Models) for the Spotter experience shown on
|
|
13587
|
+
* the home page of the full app embed. Accepts a list of Model GUIDs to
|
|
13588
|
+
* preselect the data sources available to Spotter, or the literal
|
|
13589
|
+
* `'auto_mode'` sentinel to load Spotter with the "Auto" model selected by
|
|
13590
|
+
* default. This is consistent with how `worksheetId: 'auto_mode'` enables
|
|
13591
|
+
* Auto mode in `SpotterEmbed`.
|
|
13592
|
+
*
|
|
13593
|
+
* **Note**: If `'auto_mode'` is included alongside one or more Model GUIDs,
|
|
13594
|
+
* `'auto_mode'` takes precedence and is selected by default.
|
|
13595
|
+
*
|
|
13596
|
+
* **Note**: `'auto_mode'` requires the Spotter 3 experience with data source
|
|
13597
|
+
* discovery enabled on your instance, and a Spotter-enabled home page (for
|
|
13598
|
+
* example, `discoveryExperience.homePage: HomePage.Focused`).
|
|
13599
|
+
*
|
|
13600
|
+
* Supported embed types: `AppEmbed`
|
|
13601
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
13602
|
+
* @example
|
|
13603
|
+
* ```js
|
|
13604
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
13605
|
+
* ... // other embed view config
|
|
13606
|
+
* discoveryExperience: { homePage: HomePage.Focused },
|
|
13607
|
+
* spotterDataSources: ['model-guid-1', 'model-guid-2'], // or ['auto_mode']
|
|
13608
|
+
* })
|
|
13609
|
+
* ```
|
|
13610
|
+
*/
|
|
13611
|
+
spotterDataSources?: string[];
|
|
12019
13612
|
/**
|
|
12020
13613
|
* Configuration for the SpotterViz interface shown on the Liveboard.
|
|
12021
13614
|
* Customize the brand name, description, chat input placeholder,
|
|
@@ -12034,12 +13627,17 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
12034
13627
|
* inputChatPlaceholder: 'Ask a question...',
|
|
12035
13628
|
* hideStarterPrompts: false,
|
|
12036
13629
|
* customStarterPrompts: [{ id: '1', displayText: 'Top products', fullPrompt: 'What are the top products by revenue?' }],
|
|
12037
|
-
* //
|
|
13630
|
+
* // The options below require SDK: 1.51.0
|
|
12038
13631
|
* loaderHeadline: 'Crunching the numbers...',
|
|
12039
13632
|
* loaderTips: [
|
|
12040
13633
|
* { label: 'Tip', text: 'try asking about revenue by region' },
|
|
12041
13634
|
* { label: 'Tip', text: 'use natural language' },
|
|
12042
13635
|
* ],
|
|
13636
|
+
* liveboardBrandName: 'Reports',
|
|
13637
|
+
* spotterBrandName: 'Analyst',
|
|
13638
|
+
* insightTileBrandName: 'Insight card',
|
|
13639
|
+
* insightTileViewPlanLabel: 'View plan',
|
|
13640
|
+
* insightTileLoaderText: 'Generating insight',
|
|
12043
13641
|
* },
|
|
12044
13642
|
* })
|
|
12045
13643
|
* ```
|
|
@@ -12105,6 +13703,21 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
12105
13703
|
* @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
|
|
12106
13704
|
*/
|
|
12107
13705
|
visualOverrides?: VisualizationOverrides;
|
|
13706
|
+
/**
|
|
13707
|
+
* updatedSpotterExperience : Controls the updated Spotter experience.
|
|
13708
|
+
*
|
|
13709
|
+
* Supported embed types: `AppEmbed`
|
|
13710
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
13711
|
+
* @default false
|
|
13712
|
+
* @example
|
|
13713
|
+
* ```js
|
|
13714
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
13715
|
+
* ... //other embed view config
|
|
13716
|
+
* updatedSpotterExperience : true,
|
|
13717
|
+
* })
|
|
13718
|
+
* ```
|
|
13719
|
+
*/
|
|
13720
|
+
updatedSpotterExperience?: boolean;
|
|
12108
13721
|
}
|
|
12109
13722
|
/**
|
|
12110
13723
|
* APP_INIT data shape for AppEmbed.
|
|
@@ -12114,6 +13727,8 @@ export interface AppEmbedAppInitData extends DefaultAppInitData {
|
|
|
12114
13727
|
embedParams?: {
|
|
12115
13728
|
spotterSidebarConfig?: SpotterSidebarViewConfig;
|
|
12116
13729
|
spotterVizConfig?: SpotterVizConfig;
|
|
13730
|
+
spotterShareConversationConfig?: SpotterShareConversationConfig;
|
|
13731
|
+
starterPrompts?: StarterPromptsConfig;
|
|
12117
13732
|
};
|
|
12118
13733
|
}
|
|
12119
13734
|
/**
|
|
@@ -12144,6 +13759,7 @@ export class AppEmbed extends V1Embed {
|
|
|
12144
13759
|
* embedded Liveboard or visualization.
|
|
12145
13760
|
*/
|
|
12146
13761
|
protected getEmbedParams(): string;
|
|
13762
|
+
protected getEmbedParamsObject(): any;
|
|
12147
13763
|
private sendFullHeightLazyLoadData;
|
|
12148
13764
|
/**
|
|
12149
13765
|
* This is a handler for the RequestVisibleEmbedCoordinates event.
|
|
@@ -12395,7 +14011,7 @@ export const prefetch: (url?: string, prefetchFeatures?: PrefetchFeatures[], add
|
|
|
12395
14011
|
/**
|
|
12396
14012
|
* Initializes the Visual Embed SDK globally and perform
|
|
12397
14013
|
* authentication if applicable. This function needs to be called before any ThoughtSpot
|
|
12398
|
-
* component like Liveboard etc can be embedded. But need not wait for
|
|
14014
|
+
* component like Liveboard etc can be embedded. But need not wait for AuthStatus.SUCCESS
|
|
12399
14015
|
* to actually embed. That is handled internally.
|
|
12400
14016
|
* @param embedConfig The configuration object containing ThoughtSpot host,
|
|
12401
14017
|
* authentication mechanism and so on.
|
|
@@ -12494,6 +14110,7 @@ export const reloadIframe: (iFrame: HTMLIFrameElement) => void;
|
|
|
12494
14110
|
export interface LiveboardEmbedAppInitData extends DefaultAppInitData {
|
|
12495
14111
|
embedParams?: {
|
|
12496
14112
|
spotterVizConfig?: SpotterVizConfig;
|
|
14113
|
+
starterPrompts?: StarterPromptsConfig;
|
|
12497
14114
|
};
|
|
12498
14115
|
}
|
|
12499
14116
|
/**
|
|
@@ -12512,6 +14129,11 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
12512
14129
|
* Setting `fullHeight` to `false` fetches visualizations
|
|
12513
14130
|
* incrementally as users scroll the page to view the charts and tables.
|
|
12514
14131
|
*
|
|
14132
|
+
* From SDK 1.52.0, enabling `fullHeight` also turns on
|
|
14133
|
+
* {@link lazyLoadingForFullHeight} and
|
|
14134
|
+
* {@link enableScrollableContainerLazyLoading}, so visualizations load as
|
|
14135
|
+
* they scroll into view. Set either flag to `false` to opt out.
|
|
14136
|
+
*
|
|
12515
14137
|
*
|
|
12516
14138
|
* Supported embed types: `LiveboardEmbed`
|
|
12517
14139
|
* @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 7.2.1
|
|
@@ -12851,11 +14473,12 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
12851
14473
|
/**
|
|
12852
14474
|
* Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
|
|
12853
14475
|
* following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
|
|
12854
|
-
* This feature is GA from version
|
|
14476
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.8.0.cl.
|
|
12855
14477
|
*
|
|
12856
14478
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
12857
14479
|
* @type {boolean}
|
|
12858
14480
|
* @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
|
|
14481
|
+
* @default true
|
|
12859
14482
|
* @example
|
|
12860
14483
|
* ```js
|
|
12861
14484
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -12868,10 +14491,12 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
12868
14491
|
isContinuousLiveboardPDFEnabled?: boolean;
|
|
12869
14492
|
/**
|
|
12870
14493
|
* This flag is used to enable/disable the XLSX/CSV download option for Liveboards
|
|
14494
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl.
|
|
12871
14495
|
*
|
|
12872
14496
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
12873
14497
|
* @type {boolean}
|
|
12874
14498
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
14499
|
+
* @default true
|
|
12875
14500
|
* @example
|
|
12876
14501
|
* ```js
|
|
12877
14502
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -12884,10 +14509,12 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
12884
14509
|
isLiveboardXLSXCSVDownloadEnabled?: boolean;
|
|
12885
14510
|
/**
|
|
12886
14511
|
* This flag is used to enable/disable the granular XLSX/CSV schedules feature
|
|
14512
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl.
|
|
12887
14513
|
*
|
|
12888
14514
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
12889
14515
|
* @type {boolean}
|
|
12890
14516
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
14517
|
+
* @default true
|
|
12891
14518
|
* @example
|
|
12892
14519
|
* ```js
|
|
12893
14520
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -12899,11 +14526,17 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
12899
14526
|
*/
|
|
12900
14527
|
isGranularXLSXCSVSchedulesEnabled?: boolean;
|
|
12901
14528
|
/**
|
|
12902
|
-
*
|
|
14529
|
+
* Loads visualizations only as they scroll into the viewport, instead of
|
|
14530
|
+
* loading the whole full-height Liveboard at once.
|
|
14531
|
+
*
|
|
14532
|
+
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
14533
|
+
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
14534
|
+
* set explicitly. Set it to `false` to load every visualization upfront.
|
|
14535
|
+
* The flag has no effect unless `fullHeight` is enabled.
|
|
12903
14536
|
*
|
|
12904
14537
|
* @type {boolean}
|
|
12905
14538
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
12906
|
-
* @default
|
|
14539
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
12907
14540
|
* @example
|
|
12908
14541
|
* ```js
|
|
12909
14542
|
* const embed = new LiveboardEmbed('#embed-container', {
|
|
@@ -12915,26 +14548,42 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
12915
14548
|
*/
|
|
12916
14549
|
lazyLoadingForFullHeight?: boolean;
|
|
12917
14550
|
/**
|
|
12918
|
-
*
|
|
14551
|
+
* Computes the visible region of the embed against its scrollable and
|
|
14552
|
+
* clipping ancestors, instead of treating the browser window as the only
|
|
14553
|
+
* viewport, and tracks scroll and resize on those ancestors.
|
|
12919
14554
|
*
|
|
12920
|
-
*
|
|
12921
|
-
*
|
|
14555
|
+
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
14556
|
+
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
14557
|
+
* set explicitly. Set it to `false` when the page scrolls with the window
|
|
14558
|
+
* and the embed has no clipping ancestor, to skip the extra ancestor
|
|
14559
|
+
* tracking.
|
|
12922
14560
|
*
|
|
12923
14561
|
* @type {boolean}
|
|
12924
|
-
* @default
|
|
14562
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
12925
14563
|
*/
|
|
12926
14564
|
enableScrollableContainerLazyLoading?: boolean;
|
|
12927
14565
|
/**
|
|
12928
|
-
*
|
|
14566
|
+
* How far outside the viewport a visualization starts loading, when
|
|
14567
|
+
* {@link lazyLoadingForFullHeight} is enabled.
|
|
12929
14568
|
*
|
|
12930
14569
|
* For example, if the margin is set to '10px',
|
|
12931
14570
|
* the visualization will be loaded 10px before its top edge is visible in the
|
|
12932
14571
|
* viewport.
|
|
12933
14572
|
*
|
|
12934
|
-
* The format is similar to CSS margin
|
|
14573
|
+
* The format is similar to CSS margin, so `'500px 0px'` extends the
|
|
14574
|
+
* prefetch 500px above and below the viewport and not sideways. Accepted
|
|
14575
|
+
* units are `px`, `em`, `rem`, `%`, `vh` and `vw`, plus bare `0` and
|
|
14576
|
+
* `auto`; an invalid value is logged and ignored.
|
|
14577
|
+
*
|
|
14578
|
+
* From SDK 1.52.0 this defaults to `'500px 0px'` — roughly one
|
|
14579
|
+
* visualization ahead of the scroll position, so a chart has usually
|
|
14580
|
+
* finished loading by the time it scrolls into view. Use a smaller margin
|
|
14581
|
+
* to cut warehouse queries further, or `'0px'` to load a visualization
|
|
14582
|
+
* only once it is actually visible.
|
|
12935
14583
|
*
|
|
12936
14584
|
* @type {string}
|
|
12937
14585
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
14586
|
+
* @default '500px 0px' when `fullHeight` is enabled, from SDK 1.52.0
|
|
12938
14587
|
* @example
|
|
12939
14588
|
* ```js
|
|
12940
14589
|
* const embed = new LiveboardEmbed('#embed-container', {
|
|
@@ -12978,6 +14627,21 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
12978
14627
|
* ```
|
|
12979
14628
|
*/
|
|
12980
14629
|
updatedSpotterChatPrompt?: boolean;
|
|
14630
|
+
/**
|
|
14631
|
+
* showSpotterRadiance : Controls the radiance on the Spotter page.
|
|
14632
|
+
*
|
|
14633
|
+
* Supported embed types: `LiveboardEmbed`
|
|
14634
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
14635
|
+
* @default false
|
|
14636
|
+
* @example
|
|
14637
|
+
* ```js
|
|
14638
|
+
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
14639
|
+
* ... //other embed view config
|
|
14640
|
+
* showSpotterRadiance : true,
|
|
14641
|
+
* })
|
|
14642
|
+
* ```
|
|
14643
|
+
*/
|
|
14644
|
+
showSpotterRadiance?: boolean;
|
|
12981
14645
|
/**
|
|
12982
14646
|
* Enables the stop answer generation button in the Spotter embed UI,
|
|
12983
14647
|
* allowing users to interrupt an ongoing answer generation.
|
|
@@ -13023,12 +14687,17 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
13023
14687
|
* inputChatPlaceholder: 'Ask a question...',
|
|
13024
14688
|
* hideStarterPrompts: false,
|
|
13025
14689
|
* customStarterPrompts: [{ id: '1', displayText: 'Top products', fullPrompt: 'What are the top products by revenue?' }],
|
|
13026
|
-
* //
|
|
14690
|
+
* // The options below require SDK: 1.51.0
|
|
13027
14691
|
* loaderHeadline: 'Crunching the numbers...',
|
|
13028
14692
|
* loaderTips: [
|
|
13029
14693
|
* { label: 'Tip', text: 'try asking about revenue by region' },
|
|
13030
14694
|
* { label: 'Tip', text: 'use natural language' },
|
|
13031
14695
|
* ],
|
|
14696
|
+
* liveboardBrandName: 'Reports',
|
|
14697
|
+
* spotterBrandName: 'Analyst',
|
|
14698
|
+
* insightTileBrandName: 'Insight card',
|
|
14699
|
+
* insightTileViewPlanLabel: 'View plan',
|
|
14700
|
+
* insightTileLoaderText: 'Generating insight',
|
|
13032
14701
|
* },
|
|
13033
14702
|
* })
|
|
13034
14703
|
* ```
|
|
@@ -13047,6 +14716,21 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
13047
14716
|
* ```
|
|
13048
14717
|
*/
|
|
13049
14718
|
enableLiveboardDataCache?: boolean;
|
|
14719
|
+
/**
|
|
14720
|
+
* updatedSpotterExperience : Controls the updated Spotter experience.
|
|
14721
|
+
*
|
|
14722
|
+
* Supported embed types: `LiveboardEmbed`
|
|
14723
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
14724
|
+
* @default false
|
|
14725
|
+
* @example
|
|
14726
|
+
* ```js
|
|
14727
|
+
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
14728
|
+
* ... //other embed view config
|
|
14729
|
+
* updatedSpotterExperience : true,
|
|
14730
|
+
* })
|
|
14731
|
+
* ```
|
|
14732
|
+
*/
|
|
14733
|
+
updatedSpotterExperience?: boolean;
|
|
13050
14734
|
}
|
|
13051
14735
|
/**
|
|
13052
14736
|
* Embed a ThoughtSpot Liveboard or visualization. When rendered it already
|
|
@@ -13119,7 +14803,7 @@ export class LiveboardEmbed extends V1Embed {
|
|
|
13119
14803
|
* @param {any} data The payload to send with the message
|
|
13120
14804
|
* @returns A promise that resolves with the response from the embedded app
|
|
13121
14805
|
*/
|
|
13122
|
-
trigger<HostEventT extends HostEvent, PayloadT
|
|
14806
|
+
trigger<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(messageType: HostEventT, data?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
|
|
13123
14807
|
/**
|
|
13124
14808
|
* Destroys the ThoughtSpot embed, and remove any nodes from the DOM.
|
|
13125
14809
|
* @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
|
|
@@ -13807,6 +15491,10 @@ export const MIXPANEL_EVENT: {
|
|
|
13807
15491
|
VISUAL_SDK_IFRAME_LOAD_PERFORMANCE: string;
|
|
13808
15492
|
VISUAL_SDK_EMBED_CREATE: string;
|
|
13809
15493
|
VERCEL_INTEGRATION_COMPLETED: string;
|
|
15494
|
+
VISUAL_SDK_RENDER_CALLED: string;
|
|
15495
|
+
VISUAL_SDK_PRE_RENDER: string;
|
|
15496
|
+
VISUAL_SDK_SHOW_PRE_RENDER: string;
|
|
15497
|
+
VISUAL_SDK_HIDE_PRE_RENDER: string;
|
|
13810
15498
|
};
|
|
13811
15499
|
/**
|
|
13812
15500
|
* Pushes the event with its Property key-value map to mixpanel.
|