@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
package/src/embed/app.ts
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
import { logger } from '../utils/logger';
|
|
12
12
|
import { calculateVisibleElementData, getEffectiveClippingAncestors, getQueryParamString, getScrollableAncestors, isUndefined, isValidCssMargin, setParamIfDefined } from '../utils';
|
|
13
|
+
import { DEFAULT_LAZY_LOADING_MARGIN } from '../config';
|
|
13
14
|
import {
|
|
14
15
|
Param,
|
|
15
16
|
DOMSelector,
|
|
@@ -22,8 +23,8 @@ import {
|
|
|
22
23
|
SpotterFileUploadFileTypes,
|
|
23
24
|
} from '../types';
|
|
24
25
|
import { V1Embed } from './ts-embed';
|
|
25
|
-
import { SpotterChatViewConfig, SpotterSidebarViewConfig } from './conversation';
|
|
26
|
-
import { buildSpotterSidebarAppInitData } from './spotter-utils';
|
|
26
|
+
import { SpotterChatViewConfig, SpotterSidebarViewConfig, SpotterQueryMode, SpotterShareConversationConfig, StarterPromptsConfig } from './conversation';
|
|
27
|
+
import { buildSpotterSidebarAppInitData, buildSpotterShareConversationAppInitData, buildStarterPromptsAppInitData } from './spotter-utils';
|
|
27
28
|
import { SpotterVizConfig, buildSpotterVizAppInitData } from './spotter-viz-utils';
|
|
28
29
|
|
|
29
30
|
/**
|
|
@@ -63,6 +64,14 @@ export enum Page {
|
|
|
63
64
|
* Monitor Alerts Page
|
|
64
65
|
*/
|
|
65
66
|
Monitor = 'monitor',
|
|
67
|
+
/**
|
|
68
|
+
* Collections listing page
|
|
69
|
+
*/
|
|
70
|
+
Collections = 'collections',
|
|
71
|
+
/**
|
|
72
|
+
* Liveboard schedules listing page
|
|
73
|
+
*/
|
|
74
|
+
LiveboardSchedules = 'liveboard-schedules',
|
|
66
75
|
}
|
|
67
76
|
|
|
68
77
|
/**
|
|
@@ -111,6 +120,9 @@ export enum HomePage {
|
|
|
111
120
|
/**
|
|
112
121
|
* Modular (v2) introduces the updated Modular Home Experience.
|
|
113
122
|
* It serves as the foundational version of the home page.
|
|
123
|
+
* Use {@link HomePage.ModularWithStylingChanges} (V3) or
|
|
124
|
+
* {@link HomePage.Focused} (V4) instead.
|
|
125
|
+
* @deprecated V1 and V2 home page experiences are deprecated.
|
|
114
126
|
*/
|
|
115
127
|
Modular = 'v2',
|
|
116
128
|
/**
|
|
@@ -120,7 +132,7 @@ export enum HomePage {
|
|
|
120
132
|
ModularWithStylingChanges = 'v3',
|
|
121
133
|
/**
|
|
122
134
|
* Focused (v4) introduces the V4 homepage experience
|
|
123
|
-
* in which Watchlist and recents and incorporated together
|
|
135
|
+
* in which Watchlist and recents and incorporated together
|
|
124
136
|
* to form a more focused homepage.
|
|
125
137
|
* Pre-requisite : spotter enablement
|
|
126
138
|
* @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
@@ -187,13 +199,14 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
187
199
|
showPrimaryNavbar?: boolean;
|
|
188
200
|
/**
|
|
189
201
|
* Control the visibility of the left navigation panel on the home page
|
|
190
|
-
* in the
|
|
202
|
+
* in the V3 and V4 navigation and home page experience.
|
|
191
203
|
* If `showPrimaryNavbar` is true, that is, if the Global and Homepage
|
|
192
204
|
* navigation bars are visible, this flag will only hide the left navigation bar
|
|
193
205
|
* on the home page.
|
|
194
206
|
* The `showPrimaryNavbar` flag takes precedence over the `hideHomepageLeftNav`.
|
|
195
207
|
*
|
|
196
|
-
* **Note**:
|
|
208
|
+
* **Note**: The classic (V1) and Modular (V2) home page experiences are
|
|
209
|
+
* deprecated. This attribute applies to V3 and V4 home page experiences.
|
|
197
210
|
*
|
|
198
211
|
* Supported embed types: `AppEmbed`
|
|
199
212
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
@@ -259,11 +272,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
259
272
|
hideHamburger?: boolean;
|
|
260
273
|
/**
|
|
261
274
|
* Control the visibility of the object search
|
|
262
|
-
* on the top navigation bar in the
|
|
263
|
-
* V2 and V3 navigation experience.
|
|
275
|
+
* on the top navigation bar in the V3 navigation experience.
|
|
264
276
|
*
|
|
265
|
-
* **Note**:
|
|
266
|
-
*
|
|
277
|
+
* **Note**: The classic (V1) and V2 navigation experiences are
|
|
278
|
+
* deprecated. This attribute applies to the V3 navigation experience.
|
|
267
279
|
*
|
|
268
280
|
* Supported embed types: `AppEmbed`
|
|
269
281
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
|
|
@@ -281,8 +293,8 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
281
293
|
* Control the visibility of the notification icon
|
|
282
294
|
* on the top navigation bar in V3 navigation experience.
|
|
283
295
|
*
|
|
284
|
-
* **Note**:
|
|
285
|
-
*
|
|
296
|
+
* **Note**: The classic (V1) and V2 experience modes are deprecated.
|
|
297
|
+
* This attribute applies to the V3 experience.
|
|
286
298
|
*
|
|
287
299
|
* Supported embed types: `AppEmbed`
|
|
288
300
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
|
|
@@ -297,14 +309,14 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
297
309
|
*/
|
|
298
310
|
hideNotification?: boolean;
|
|
299
311
|
/**
|
|
300
|
-
* Control the visibility of the application selection menu
|
|
301
|
-
* in the top navigation bar in the V2 experience.
|
|
312
|
+
* Control the visibility of the application selection menu.
|
|
302
313
|
* In the V3 experience, it shows or hides application selection
|
|
303
314
|
* icons on the left navigation panel.
|
|
304
315
|
* By default, the application selection menu and icons are
|
|
305
316
|
* shown in the UI.
|
|
306
317
|
*
|
|
307
|
-
* **Note**:
|
|
318
|
+
* **Note**: The classic (V1) and V2 experiences are deprecated.
|
|
319
|
+
* This attribute applies to the V3 experience.
|
|
308
320
|
*
|
|
309
321
|
* Supported embed types: `AppEmbed`
|
|
310
322
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
@@ -322,7 +334,8 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
322
334
|
* Control the visibility of the Org switcher button on the nav-bar.
|
|
323
335
|
* By default, the Org switcher button is shown.
|
|
324
336
|
*
|
|
325
|
-
* **Note**:
|
|
337
|
+
* **Note**: The classic (V1) experience is deprecated. This attribute
|
|
338
|
+
* applies to V2 (deprecated), V3 and V4 experiences.
|
|
326
339
|
*
|
|
327
340
|
* Supported embed types: `AppEmbed`
|
|
328
341
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
@@ -463,6 +476,11 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
463
476
|
* `false` fetches visualizations incrementally as
|
|
464
477
|
* users scroll the page to view the charts and tables.
|
|
465
478
|
*
|
|
479
|
+
* From SDK 1.52.0, enabling `fullHeight` also turns on
|
|
480
|
+
* {@link lazyLoadingForFullHeight} and
|
|
481
|
+
* {@link enableScrollableContainerLazyLoading}, so visualizations load as
|
|
482
|
+
* they scroll into view. Set either flag to `false` to opt out.
|
|
483
|
+
*
|
|
466
484
|
* Supported embed types: `AppEmbed`
|
|
467
485
|
* @version SDK: 1.21.0 | ThoughtSpot: 9.4.0.cl, 9.4.0-sw
|
|
468
486
|
* @example
|
|
@@ -481,6 +499,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
481
499
|
* Supported embed types: `AppEmbed`
|
|
482
500
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
483
501
|
* @default false
|
|
502
|
+
* Use the discoveryExperience.homePage option with
|
|
503
|
+
* {@link HomePage.ModularWithStylingChanges} (V3) or
|
|
504
|
+
* {@link HomePage.Focused} (V4) instead.
|
|
505
|
+
* @deprecated The V1 and V2 home page experiences are deprecated.
|
|
484
506
|
* @example
|
|
485
507
|
* ```js
|
|
486
508
|
* const embed = new AppEmbed('#tsEmbed', {
|
|
@@ -616,11 +638,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
616
638
|
/**
|
|
617
639
|
* Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
|
|
618
640
|
* following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
|
|
619
|
-
* This feature is GA from version
|
|
641
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.8.0.cl.
|
|
620
642
|
*
|
|
621
643
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
622
644
|
* @type {boolean}
|
|
623
645
|
* @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
|
|
646
|
+
* @default true
|
|
624
647
|
* @example
|
|
625
648
|
* ```js
|
|
626
649
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -634,10 +657,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
634
657
|
|
|
635
658
|
/**
|
|
636
659
|
* This flag is used to enable/disable the XLSX/CSV download option for Liveboards
|
|
660
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl
|
|
637
661
|
*
|
|
638
662
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
639
663
|
* @type {boolean}
|
|
640
664
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
665
|
+
* @default true
|
|
641
666
|
* @example
|
|
642
667
|
* ```js
|
|
643
668
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -651,10 +676,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
651
676
|
|
|
652
677
|
/**
|
|
653
678
|
* This flag is used to enable/disable the granular XLSX/CSV schedules feature
|
|
679
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl
|
|
654
680
|
*
|
|
655
681
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
656
682
|
* @type {boolean}
|
|
657
683
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
684
|
+
* @default true
|
|
658
685
|
* @example
|
|
659
686
|
* ```js
|
|
660
687
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -667,11 +694,17 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
667
694
|
isGranularXLSXCSVSchedulesEnabled?: boolean;
|
|
668
695
|
|
|
669
696
|
/**
|
|
670
|
-
*
|
|
697
|
+
* Loads visualizations only as they scroll into the viewport, instead of
|
|
698
|
+
* loading the whole full-height Liveboard at once.
|
|
699
|
+
*
|
|
700
|
+
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
701
|
+
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
702
|
+
* set explicitly. Set it to `false` to load every visualization upfront.
|
|
703
|
+
* The flag has no effect unless `fullHeight` is enabled.
|
|
671
704
|
*
|
|
672
705
|
* @type {boolean}
|
|
673
706
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
674
|
-
* @default
|
|
707
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
675
708
|
* @example
|
|
676
709
|
* ```js
|
|
677
710
|
* const embed = new AppEmbed('#embed-container', {
|
|
@@ -683,28 +716,44 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
683
716
|
*/
|
|
684
717
|
lazyLoadingForFullHeight?: boolean;
|
|
685
718
|
/**
|
|
686
|
-
*
|
|
719
|
+
* Computes the visible region of the embed against its scrollable and
|
|
720
|
+
* clipping ancestors, instead of treating the browser window as the only
|
|
721
|
+
* viewport, and tracks scroll and resize on those ancestors.
|
|
687
722
|
*
|
|
688
|
-
*
|
|
689
|
-
*
|
|
723
|
+
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
724
|
+
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
725
|
+
* set explicitly. Set it to `false` when the page scrolls with the window
|
|
726
|
+
* and the embed has no clipping ancestor, to skip the extra ancestor
|
|
727
|
+
* tracking.
|
|
690
728
|
*
|
|
691
729
|
* @type {boolean}
|
|
692
|
-
* @default
|
|
730
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
693
731
|
* @hidden
|
|
694
732
|
*/
|
|
695
733
|
enableScrollableContainerLazyLoading?: boolean;
|
|
696
734
|
|
|
697
735
|
/**
|
|
698
|
-
*
|
|
736
|
+
* How far outside the viewport a visualization starts loading, when
|
|
737
|
+
* {@link lazyLoadingForFullHeight} is enabled.
|
|
699
738
|
*
|
|
700
739
|
* For example, if the margin is set to '10px',
|
|
701
740
|
* the visualization will be loaded 10px before its top edge is visible in the
|
|
702
741
|
* viewport.
|
|
703
742
|
*
|
|
704
|
-
* The format is similar to CSS margin
|
|
743
|
+
* The format is similar to CSS margin, so `'500px 0px'` extends the
|
|
744
|
+
* prefetch 500px above and below the viewport and not sideways. Accepted
|
|
745
|
+
* units are `px`, `em`, `rem`, `%`, `vh` and `vw`, plus bare `0` and
|
|
746
|
+
* `auto`; an invalid value is logged and ignored.
|
|
747
|
+
*
|
|
748
|
+
* From SDK 1.52.0 this defaults to `'500px 0px'` — roughly one
|
|
749
|
+
* visualization ahead of the scroll position, so a chart has usually
|
|
750
|
+
* finished loading by the time it scrolls into view. Use a smaller margin
|
|
751
|
+
* to cut warehouse queries further, or `'0px'` to load a visualization
|
|
752
|
+
* only once it is actually visible.
|
|
705
753
|
*
|
|
706
754
|
* @type {string}
|
|
707
755
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
756
|
+
* @default '500px 0px' when `fullHeight` is enabled, from SDK 1.52.0
|
|
708
757
|
* @example
|
|
709
758
|
* ```js
|
|
710
759
|
* const embed = new AppEmbed('#embed-container', {
|
|
@@ -733,6 +782,40 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
733
782
|
* ```
|
|
734
783
|
*/
|
|
735
784
|
updatedSpotterChatPrompt?: boolean;
|
|
785
|
+
/**
|
|
786
|
+
* showSpotterRadiance : Controls the radiance on the Spotter page.
|
|
787
|
+
*
|
|
788
|
+
* Supported embed types: `AppEmbed`
|
|
789
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
790
|
+
* @default false
|
|
791
|
+
* @example
|
|
792
|
+
* ```js
|
|
793
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
794
|
+
* ... //other embed view config
|
|
795
|
+
* showSpotterRadiance : true,
|
|
796
|
+
* })
|
|
797
|
+
* ```
|
|
798
|
+
*/
|
|
799
|
+
showSpotterRadiance?: boolean;
|
|
800
|
+
/**
|
|
801
|
+
* Sets the default query mode when Spotter loads — Fast Search or
|
|
802
|
+
* Research Mode. Applies fresh on every new session for this embed
|
|
803
|
+
* instance only; it does not persist as a user preference and does
|
|
804
|
+
* not affect other embeds or native ThoughtSpot usage.
|
|
805
|
+
* Only applicable when navigating to Spotter within the app.
|
|
806
|
+
*
|
|
807
|
+
* Supported embed types: `AppEmbed`
|
|
808
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
809
|
+
* @default SpotterQueryMode.FAST_SEARCH
|
|
810
|
+
* @example
|
|
811
|
+
* ```js
|
|
812
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
813
|
+
* ... //other embed view config
|
|
814
|
+
* defaultQueryMode: SpotterQueryMode.RESEARCH,
|
|
815
|
+
* })
|
|
816
|
+
* ```
|
|
817
|
+
*/
|
|
818
|
+
defaultQueryMode?: SpotterQueryMode;
|
|
736
819
|
/**
|
|
737
820
|
* Controls the visibility of the past conversations sidebar.
|
|
738
821
|
*
|
|
@@ -758,6 +841,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
758
841
|
* spotterSidebarConfig: {
|
|
759
842
|
* enablePastConversationsSidebar: true,
|
|
760
843
|
* spotterSidebarTitle: 'My Conversations',
|
|
844
|
+
* // Opt in to pin/unpin conversations in embedded Spotter
|
|
845
|
+
* spotterChatPinConfig: {
|
|
846
|
+
* enabled: true,
|
|
847
|
+
* },
|
|
761
848
|
* },
|
|
762
849
|
* })
|
|
763
850
|
* ```
|
|
@@ -781,6 +868,49 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
781
868
|
* ```
|
|
782
869
|
*/
|
|
783
870
|
spotterChatConfig?: SpotterChatViewConfig;
|
|
871
|
+
/**
|
|
872
|
+
* Configuration for the Spotter conversation sharing feature.
|
|
873
|
+
*
|
|
874
|
+
* Supported embed types: `AppEmbed`
|
|
875
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
876
|
+
* @example
|
|
877
|
+
* ```js
|
|
878
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
879
|
+
* ... //other embed view config
|
|
880
|
+
* spotterShareConversationConfig: {
|
|
881
|
+
* enableShareConversation: true,
|
|
882
|
+
* },
|
|
883
|
+
* })
|
|
884
|
+
* ```
|
|
885
|
+
*/
|
|
886
|
+
spotterShareConversationConfig?: SpotterShareConversationConfig;
|
|
887
|
+
/**
|
|
888
|
+
* Sets the default data sources (Models) for the Spotter experience shown on
|
|
889
|
+
* the home page of the full app embed. Accepts a list of Model GUIDs to
|
|
890
|
+
* preselect the data sources available to Spotter, or the literal
|
|
891
|
+
* `'auto_mode'` sentinel to load Spotter with the "Auto" model selected by
|
|
892
|
+
* default. This is consistent with how `worksheetId: 'auto_mode'` enables
|
|
893
|
+
* Auto mode in `SpotterEmbed`.
|
|
894
|
+
*
|
|
895
|
+
* **Note**: If `'auto_mode'` is included alongside one or more Model GUIDs,
|
|
896
|
+
* `'auto_mode'` takes precedence and is selected by default.
|
|
897
|
+
*
|
|
898
|
+
* **Note**: `'auto_mode'` requires the Spotter 3 experience with data source
|
|
899
|
+
* discovery enabled on your instance, and a Spotter-enabled home page (for
|
|
900
|
+
* example, `discoveryExperience.homePage: HomePage.Focused`).
|
|
901
|
+
*
|
|
902
|
+
* Supported embed types: `AppEmbed`
|
|
903
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
904
|
+
* @example
|
|
905
|
+
* ```js
|
|
906
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
907
|
+
* ... // other embed view config
|
|
908
|
+
* discoveryExperience: { homePage: HomePage.Focused },
|
|
909
|
+
* spotterDataSources: ['model-guid-1', 'model-guid-2'], // or ['auto_mode']
|
|
910
|
+
* })
|
|
911
|
+
* ```
|
|
912
|
+
*/
|
|
913
|
+
spotterDataSources?: string[];
|
|
784
914
|
/**
|
|
785
915
|
* Configuration for the SpotterViz interface shown on the Liveboard.
|
|
786
916
|
* Customize the brand name, description, chat input placeholder,
|
|
@@ -799,12 +929,17 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
799
929
|
* inputChatPlaceholder: 'Ask a question...',
|
|
800
930
|
* hideStarterPrompts: false,
|
|
801
931
|
* customStarterPrompts: [{ id: '1', displayText: 'Top products', fullPrompt: 'What are the top products by revenue?' }],
|
|
802
|
-
* //
|
|
932
|
+
* // The options below require SDK: 1.51.0
|
|
803
933
|
* loaderHeadline: 'Crunching the numbers...',
|
|
804
934
|
* loaderTips: [
|
|
805
935
|
* { label: 'Tip', text: 'try asking about revenue by region' },
|
|
806
936
|
* { label: 'Tip', text: 'use natural language' },
|
|
807
937
|
* ],
|
|
938
|
+
* liveboardBrandName: 'Reports',
|
|
939
|
+
* spotterBrandName: 'Analyst',
|
|
940
|
+
* insightTileBrandName: 'Insight card',
|
|
941
|
+
* insightTileViewPlanLabel: 'View plan',
|
|
942
|
+
* insightTileLoaderText: 'Generating insight',
|
|
808
943
|
* },
|
|
809
944
|
* })
|
|
810
945
|
* ```
|
|
@@ -871,6 +1006,22 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
871
1006
|
* @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
|
|
872
1007
|
*/
|
|
873
1008
|
visualOverrides?: VisualizationOverrides;
|
|
1009
|
+
|
|
1010
|
+
/**
|
|
1011
|
+
* updatedSpotterExperience : Controls the updated Spotter experience.
|
|
1012
|
+
*
|
|
1013
|
+
* Supported embed types: `AppEmbed`
|
|
1014
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
1015
|
+
* @default false
|
|
1016
|
+
* @example
|
|
1017
|
+
* ```js
|
|
1018
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
1019
|
+
* ... //other embed view config
|
|
1020
|
+
* updatedSpotterExperience : true,
|
|
1021
|
+
* })
|
|
1022
|
+
* ```
|
|
1023
|
+
*/
|
|
1024
|
+
updatedSpotterExperience?: boolean;
|
|
874
1025
|
}
|
|
875
1026
|
|
|
876
1027
|
/**
|
|
@@ -881,6 +1032,8 @@ export interface AppEmbedAppInitData extends DefaultAppInitData {
|
|
|
881
1032
|
embedParams?: {
|
|
882
1033
|
spotterSidebarConfig?: SpotterSidebarViewConfig;
|
|
883
1034
|
spotterVizConfig?: SpotterVizConfig;
|
|
1035
|
+
spotterShareConversationConfig?: SpotterShareConversationConfig;
|
|
1036
|
+
starterPrompts?: StarterPromptsConfig;
|
|
884
1037
|
};
|
|
885
1038
|
}
|
|
886
1039
|
|
|
@@ -901,6 +1054,16 @@ export class AppEmbed extends V1Embed {
|
|
|
901
1054
|
viewConfig.embedComponentType = 'AppEmbed';
|
|
902
1055
|
super(domSelector, viewConfig);
|
|
903
1056
|
if (this.viewConfig.fullHeight === true) {
|
|
1057
|
+
if (this.viewConfig.lazyLoadingForFullHeight === undefined) {
|
|
1058
|
+
this.viewConfig.lazyLoadingForFullHeight = true;
|
|
1059
|
+
}
|
|
1060
|
+
if (this.viewConfig.enableScrollableContainerLazyLoading === undefined) {
|
|
1061
|
+
this.viewConfig.enableScrollableContainerLazyLoading = true;
|
|
1062
|
+
}
|
|
1063
|
+
if (this.viewConfig.lazyLoadingMargin === undefined) {
|
|
1064
|
+
this.viewConfig.lazyLoadingMargin = DEFAULT_LAZY_LOADING_MARGIN;
|
|
1065
|
+
}
|
|
1066
|
+
|
|
904
1067
|
this.on(EmbedEvent.RouteChange, this.setIframeHeightForNonEmbedLiveboard);
|
|
905
1068
|
this.on(EmbedEvent.EmbedHeight, this.updateIFrameHeight);
|
|
906
1069
|
this.on(EmbedEvent.EmbedIframeCenter, this.embedIframeCenter);
|
|
@@ -930,7 +1093,9 @@ export class AppEmbed extends V1Embed {
|
|
|
930
1093
|
this.viewConfig,
|
|
931
1094
|
this.handleError.bind(this),
|
|
932
1095
|
);
|
|
933
|
-
|
|
1096
|
+
const vizInitData = buildSpotterVizAppInitData(sidebarInitData, this.viewConfig);
|
|
1097
|
+
const shareInitData = buildSpotterShareConversationAppInitData(vizInitData, this.viewConfig);
|
|
1098
|
+
return buildStarterPromptsAppInitData(shareInitData, this.viewConfig);
|
|
934
1099
|
}
|
|
935
1100
|
|
|
936
1101
|
/**
|
|
@@ -938,6 +1103,11 @@ export class AppEmbed extends V1Embed {
|
|
|
938
1103
|
* embedded Liveboard or visualization.
|
|
939
1104
|
*/
|
|
940
1105
|
protected getEmbedParams() {
|
|
1106
|
+
const params = this.getEmbedParamsObject();
|
|
1107
|
+
return getQueryParamString(params, true);
|
|
1108
|
+
}
|
|
1109
|
+
|
|
1110
|
+
protected getEmbedParamsObject() {
|
|
941
1111
|
const {
|
|
942
1112
|
tag,
|
|
943
1113
|
hideTagFilterChips,
|
|
@@ -954,44 +1124,51 @@ export class AppEmbed extends V1Embed {
|
|
|
954
1124
|
newConnectionsExperience,
|
|
955
1125
|
fullHeight,
|
|
956
1126
|
dataPanelV2 = true,
|
|
1127
|
+
updatedSpotterExperience,
|
|
957
1128
|
hideLiveboardHeader = false,
|
|
958
1129
|
showLiveboardTitle = true,
|
|
959
1130
|
showLiveboardDescription = true,
|
|
960
1131
|
showMaskedFilterChip = false,
|
|
961
|
-
isLiveboardMasterpiecesEnabled
|
|
1132
|
+
isLiveboardMasterpiecesEnabled,
|
|
962
1133
|
newChartsLibrary,
|
|
963
1134
|
hideHomepageLeftNav = false,
|
|
964
|
-
modularHomeExperience
|
|
1135
|
+
modularHomeExperience,
|
|
965
1136
|
isLiveboardHeaderSticky = true,
|
|
966
1137
|
enableAskSage,
|
|
967
1138
|
collapseSearchBarInitially = false,
|
|
968
1139
|
enable2ColumnLayout,
|
|
1140
|
+
isLiveboardAlwaysOn12ColLayout,
|
|
969
1141
|
enableCustomColumnGroups = false,
|
|
970
1142
|
dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL,
|
|
971
1143
|
collapseSearchBar = true,
|
|
972
|
-
isLiveboardCompactHeaderEnabled
|
|
1144
|
+
isLiveboardCompactHeaderEnabled,
|
|
973
1145
|
showLiveboardVerifiedBadge = true,
|
|
974
1146
|
showLiveboardReverifyBanner = true,
|
|
975
|
-
hideIrrelevantChipsInLiveboardTabs
|
|
976
|
-
isEnhancedFilterInteractivityEnabled
|
|
1147
|
+
hideIrrelevantChipsInLiveboardTabs,
|
|
1148
|
+
isEnhancedFilterInteractivityEnabled,
|
|
977
1149
|
homePageSearchBarMode,
|
|
978
1150
|
isUnifiedSearchExperienceEnabled = true,
|
|
979
1151
|
enablePendoHelp = true,
|
|
980
1152
|
discoveryExperience,
|
|
981
|
-
coverAndFilterOptionInPDF
|
|
1153
|
+
coverAndFilterOptionInPDF,
|
|
982
1154
|
isLiveboardStylingAndGroupingEnabled,
|
|
1155
|
+
liveboardGutter,
|
|
983
1156
|
isPNGInScheduledEmailsEnabled = false,
|
|
984
|
-
isLiveboardXLSXCSVDownloadEnabled
|
|
985
|
-
isGranularXLSXCSVSchedulesEnabled
|
|
1157
|
+
isLiveboardXLSXCSVDownloadEnabled,
|
|
1158
|
+
isGranularXLSXCSVSchedulesEnabled,
|
|
986
1159
|
isCentralizedLiveboardFilterUXEnabled = false,
|
|
1160
|
+
isScopedLiveboardFilteringEnabled,
|
|
987
1161
|
isLinkParametersEnabled,
|
|
988
1162
|
updatedSpotterChatPrompt,
|
|
1163
|
+
showSpotterRadiance,
|
|
1164
|
+
defaultQueryMode,
|
|
989
1165
|
enableStopAnswerGenerationEmbed,
|
|
990
1166
|
spotterChatConfig,
|
|
1167
|
+
spotterDataSources,
|
|
991
1168
|
minimumHeight,
|
|
992
1169
|
isThisPeriodInDateFiltersEnabled,
|
|
993
1170
|
enableHomepageAnnouncement = false,
|
|
994
|
-
isContinuousLiveboardPDFEnabled
|
|
1171
|
+
isContinuousLiveboardPDFEnabled,
|
|
995
1172
|
enableLiveboardDataCache,
|
|
996
1173
|
} = this.viewConfig;
|
|
997
1174
|
|
|
@@ -1004,31 +1181,52 @@ export class AppEmbed extends V1Embed {
|
|
|
1004
1181
|
params[Param.ShowLiveboardTitle] = showLiveboardTitle;
|
|
1005
1182
|
params[Param.ShowLiveboardDescription] = !!showLiveboardDescription;
|
|
1006
1183
|
params[Param.ShowMaskedFilterChip] = showMaskedFilterChip;
|
|
1007
|
-
|
|
1184
|
+
if (!isUndefined(isLiveboardMasterpiecesEnabled)) {
|
|
1185
|
+
params[Param.IsLiveboardMasterpiecesEnabled] = isLiveboardMasterpiecesEnabled;
|
|
1186
|
+
}
|
|
1008
1187
|
if (newChartsLibrary !== undefined) {
|
|
1009
1188
|
params[Param.EnableNewChartLibrary] = newChartsLibrary;
|
|
1010
1189
|
}
|
|
1011
1190
|
params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
|
|
1012
1191
|
params[Param.IsFullAppEmbed] = true;
|
|
1013
|
-
|
|
1014
|
-
|
|
1192
|
+
if (!isUndefined(isLiveboardCompactHeaderEnabled)) {
|
|
1193
|
+
params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
|
|
1194
|
+
}
|
|
1195
|
+
if (!isUndefined(isEnhancedFilterInteractivityEnabled)) {
|
|
1196
|
+
params[Param.IsEnhancedFilterInteractivityEnabled] =
|
|
1197
|
+
isEnhancedFilterInteractivityEnabled;
|
|
1198
|
+
}
|
|
1015
1199
|
params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
|
|
1016
1200
|
params[Param.ShowLiveboardReverifyBanner] = showLiveboardReverifyBanner;
|
|
1017
|
-
|
|
1201
|
+
if (!isUndefined(hideIrrelevantChipsInLiveboardTabs)) {
|
|
1202
|
+
params[Param.HideIrrelevantFiltersInTab] = hideIrrelevantChipsInLiveboardTabs;
|
|
1203
|
+
}
|
|
1018
1204
|
if (isUnifiedSearchExperienceEnabled !== undefined) {
|
|
1019
1205
|
params[Param.IsUnifiedSearchExperienceEnabled] = isUnifiedSearchExperienceEnabled;
|
|
1020
1206
|
}
|
|
1021
|
-
|
|
1207
|
+
if (!isUndefined(coverAndFilterOptionInPDF)) {
|
|
1208
|
+
params[Param.CoverAndFilterOptionInPDF] = !!coverAndFilterOptionInPDF;
|
|
1209
|
+
}
|
|
1022
1210
|
|
|
1023
1211
|
params = this.getBaseQueryParams(params);
|
|
1024
1212
|
|
|
1025
1213
|
if (!isUndefined(updatedSpotterChatPrompt)) {
|
|
1026
1214
|
params[Param.UpdatedSpotterChatPrompt] = !!updatedSpotterChatPrompt;
|
|
1027
1215
|
}
|
|
1216
|
+
if (!isUndefined(showSpotterRadiance)) {
|
|
1217
|
+
params[Param.ShowSpotterRadiance] = !!showSpotterRadiance;
|
|
1218
|
+
}
|
|
1219
|
+
if (!isUndefined(defaultQueryMode)) {
|
|
1220
|
+
params[Param.DefaultQueryMode] = defaultQueryMode;
|
|
1221
|
+
}
|
|
1028
1222
|
if (!isUndefined(enableStopAnswerGenerationEmbed)) {
|
|
1029
1223
|
params[Param.EnableStopAnswerGenerationEmbed] = !!enableStopAnswerGenerationEmbed;
|
|
1030
1224
|
}
|
|
1031
1225
|
|
|
1226
|
+
if (spotterDataSources && spotterDataSources.length) {
|
|
1227
|
+
params[Param.SpotterDataSources] = JSON.stringify(spotterDataSources);
|
|
1228
|
+
}
|
|
1229
|
+
|
|
1032
1230
|
// Handle spotterChatConfig params
|
|
1033
1231
|
if (spotterChatConfig) {
|
|
1034
1232
|
const {
|
|
@@ -1037,6 +1235,7 @@ export class AppEmbed extends V1Embed {
|
|
|
1037
1235
|
spotterFileUploadEnabled,
|
|
1038
1236
|
spotterFileUploadFileTypes,
|
|
1039
1237
|
enableStarterPrompts,
|
|
1238
|
+
openSpotterOnLiveboardByDefault,
|
|
1040
1239
|
} = spotterChatConfig;
|
|
1041
1240
|
|
|
1042
1241
|
setParamIfDefined(params, Param.HideToolResponseCardBranding, hideToolResponseCardBranding, true);
|
|
@@ -1047,11 +1246,18 @@ export class AppEmbed extends V1Embed {
|
|
|
1047
1246
|
if (enableStarterPrompts !== undefined) {
|
|
1048
1247
|
params[Param.IsStarterPromptsEnabled] = enableStarterPrompts;
|
|
1049
1248
|
}
|
|
1249
|
+
if (openSpotterOnLiveboardByDefault !== undefined) {
|
|
1250
|
+
params[Param.OpenSpotterOnLiveboardByDefault] = openSpotterOnLiveboardByDefault;
|
|
1251
|
+
}
|
|
1050
1252
|
if (spotterFileUploadFileTypes !== undefined) {
|
|
1051
1253
|
params[Param.SpotterFileUploadFileTypes] = JSON.stringify(spotterFileUploadFileTypes);
|
|
1052
1254
|
}
|
|
1053
1255
|
}
|
|
1054
1256
|
|
|
1257
|
+
if (!isUndefined(updatedSpotterExperience)) {
|
|
1258
|
+
params[Param.UpdatedSpotterExperience] = !!updatedSpotterExperience;
|
|
1259
|
+
}
|
|
1260
|
+
|
|
1055
1261
|
if (hideObjectSearch) {
|
|
1056
1262
|
params[Param.HideObjectSearch] = !!hideObjectSearch;
|
|
1057
1263
|
}
|
|
@@ -1095,6 +1301,9 @@ export class AppEmbed extends V1Embed {
|
|
|
1095
1301
|
if (enable2ColumnLayout !== undefined) {
|
|
1096
1302
|
params[Param.Enable2ColumnLayout] = enable2ColumnLayout;
|
|
1097
1303
|
}
|
|
1304
|
+
if (isLiveboardAlwaysOn12ColLayout !== undefined) {
|
|
1305
|
+
params[Param.IsLiveboardAlwaysOn12ColLayout] = isLiveboardAlwaysOn12ColLayout;
|
|
1306
|
+
}
|
|
1098
1307
|
|
|
1099
1308
|
if (enableAskSage) {
|
|
1100
1309
|
params[Param.enableAskSage] = enableAskSage;
|
|
@@ -1114,6 +1323,10 @@ export class AppEmbed extends V1Embed {
|
|
|
1114
1323
|
] = isLiveboardStylingAndGroupingEnabled;
|
|
1115
1324
|
}
|
|
1116
1325
|
|
|
1326
|
+
if (liveboardGutter !== undefined) {
|
|
1327
|
+
params[Param.LiveboardGutter] = liveboardGutter;
|
|
1328
|
+
}
|
|
1329
|
+
|
|
1117
1330
|
if (isPNGInScheduledEmailsEnabled !== undefined) {
|
|
1118
1331
|
params[Param.isPNGInScheduledEmailsEnabled] = isPNGInScheduledEmailsEnabled;
|
|
1119
1332
|
}
|
|
@@ -1140,6 +1353,12 @@ export class AppEmbed extends V1Embed {
|
|
|
1140
1353
|
] = isCentralizedLiveboardFilterUXEnabled;
|
|
1141
1354
|
}
|
|
1142
1355
|
|
|
1356
|
+
if (isScopedLiveboardFilteringEnabled !== undefined) {
|
|
1357
|
+
params[
|
|
1358
|
+
Param.isScopedLiveboardFilteringEnabled
|
|
1359
|
+
] = isScopedLiveboardFilteringEnabled;
|
|
1360
|
+
}
|
|
1361
|
+
|
|
1143
1362
|
if (isThisPeriodInDateFiltersEnabled !== undefined) {
|
|
1144
1363
|
params[Param.IsThisPeriodInDateFiltersEnabled] = isThisPeriodInDateFiltersEnabled;
|
|
1145
1364
|
}
|
|
@@ -1160,7 +1379,6 @@ export class AppEmbed extends V1Embed {
|
|
|
1160
1379
|
|
|
1161
1380
|
params[Param.DataPanelV2Enabled] = dataPanelV2;
|
|
1162
1381
|
params[Param.HideHomepageLeftNav] = hideHomepageLeftNav;
|
|
1163
|
-
params[Param.ModularHomeExperienceEnabled] = modularHomeExperience;
|
|
1164
1382
|
params[Param.CollapseSearchBarInitially] = collapseSearchBarInitially || collapseSearchBar;
|
|
1165
1383
|
params[Param.EnableCustomColumnGroups] = enableCustomColumnGroups;
|
|
1166
1384
|
if (dataPanelCustomGroupsAccordionInitialState
|
|
@@ -1181,41 +1399,21 @@ export class AppEmbed extends V1Embed {
|
|
|
1181
1399
|
params[Param.ModularHomeExperienceEnabled] = modularHomeExperience;
|
|
1182
1400
|
}
|
|
1183
1401
|
|
|
1184
|
-
//
|
|
1185
|
-
//
|
|
1186
|
-
//
|
|
1187
|
-
//
|
|
1188
|
-
//
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
params[Param.HomepageVersion] = 'v2';
|
|
1193
|
-
if (discoveryExperience) {
|
|
1194
|
-
// primaryNavbarVersion v3 will enabled the new left navigation
|
|
1195
|
-
if (discoveryExperience.primaryNavbarVersion === PrimaryNavbarVersion.Sliding) {
|
|
1196
|
-
params[Param.NavigationVersion] = discoveryExperience.primaryNavbarVersion;
|
|
1197
|
-
// Enable the modularHomeExperience when Sliding is enabled.
|
|
1198
|
-
params[Param.ModularHomeExperienceEnabled] = true;
|
|
1199
|
-
}
|
|
1200
|
-
|
|
1201
|
-
// homePage v2 will enable the modular home page
|
|
1202
|
-
// and it will override the modularHomeExperience value
|
|
1203
|
-
if (discoveryExperience.homePage === HomePage.Modular) {
|
|
1204
|
-
params[Param.ModularHomeExperienceEnabled] = true;
|
|
1205
|
-
}
|
|
1206
|
-
|
|
1207
|
-
// ModularWithStylingChanges (v3) introduces the styling changes
|
|
1208
|
-
// to the Modular Homepage.
|
|
1209
|
-
// v3 will be the base version of homePageVersion.
|
|
1210
|
-
if (discoveryExperience.homePage === HomePage.ModularWithStylingChanges) {
|
|
1211
|
-
params[Param.HomepageVersion] = HomePage.ModularWithStylingChanges;
|
|
1212
|
-
}
|
|
1402
|
+
// Navigation V1/V2 and home page V1/V2 are deprecated. V3 is now the
|
|
1403
|
+
// default experience, Need to send navigationVersion=v3 and
|
|
1404
|
+
// homepageVersion=v3 even when the no discoveryExperience /
|
|
1405
|
+
// modularHomeExperience config is set. Without these
|
|
1406
|
+
// params, older TSA versions (< 26.7) fall back to V2 for nav and
|
|
1407
|
+
// home page, so the defaults must be sent explicitly from the SDK.
|
|
1408
|
+
params[Param.NavigationVersion] = PrimaryNavbarVersion.Sliding;
|
|
1409
|
+
params[Param.HomepageVersion] = HomePage.ModularWithStylingChanges;
|
|
1213
1410
|
|
|
1411
|
+
if (discoveryExperience) {
|
|
1214
1412
|
// listPageVersion can be changed to v2 or v3
|
|
1215
1413
|
if (discoveryExperience.listPageVersion !== undefined) {
|
|
1216
1414
|
params[Param.ListPageVersion] = discoveryExperience.listPageVersion;
|
|
1217
1415
|
}
|
|
1218
|
-
|
|
1416
|
+
|
|
1219
1417
|
if (discoveryExperience.homePage === HomePage.Focused) {
|
|
1220
1418
|
params[Param.HomepageVersion] = HomePage.Focused;
|
|
1221
1419
|
// The Focused (V4) homepage experience requires the updated
|
|
@@ -1227,9 +1425,7 @@ export class AppEmbed extends V1Embed {
|
|
|
1227
1425
|
}
|
|
1228
1426
|
}
|
|
1229
1427
|
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
return queryParams;
|
|
1428
|
+
return params;
|
|
1233
1429
|
}
|
|
1234
1430
|
|
|
1235
1431
|
private sendFullHeightLazyLoadData = () => {
|
|
@@ -1332,6 +1528,10 @@ export class AppEmbed extends V1Embed {
|
|
|
1332
1528
|
return modularHomeExperience ? 'home/spotiq-analysis' : 'insights/results';
|
|
1333
1529
|
case Page.Monitor:
|
|
1334
1530
|
return modularHomeExperience ? 'home/monitor-alerts' : 'insights/monitor-alerts';
|
|
1531
|
+
case Page.Collections:
|
|
1532
|
+
return 'collections';
|
|
1533
|
+
case Page.LiveboardSchedules:
|
|
1534
|
+
return 'home/liveboard-schedules';
|
|
1335
1535
|
case Page.Home:
|
|
1336
1536
|
default:
|
|
1337
1537
|
return 'home';
|
|
@@ -1372,7 +1572,8 @@ export class AppEmbed extends V1Embed {
|
|
|
1372
1572
|
logger.log('Please call render before invoking this method');
|
|
1373
1573
|
return;
|
|
1374
1574
|
}
|
|
1375
|
-
|
|
1575
|
+
const overrideHistoryState = this.viewConfig?.overrideHistoryState;
|
|
1576
|
+
if (noReload || overrideHistoryState) {
|
|
1376
1577
|
this.trigger(HostEvent.Navigate, path);
|
|
1377
1578
|
} else {
|
|
1378
1579
|
if (typeof path !== 'string') {
|