@thoughtspot/visual-embed-sdk 1.50.1 → 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 +63 -0
- package/cjs/src/css-variables.d.ts.map +1 -1
- package/cjs/src/embed/app.d.ts +148 -25
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +74 -37
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +571 -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 +375 -2
- package/cjs/src/embed/conversation.d.ts.map +1 -1
- package/cjs/src/embed/conversation.js +21 -15
- package/cjs/src/embed/conversation.js.map +1 -1
- package/cjs/src/embed/conversation.spec.js +323 -17
- package/cjs/src/embed/conversation.spec.js.map +1 -1
- package/cjs/src/embed/events.spec.js +45 -0
- package/cjs/src/embed/events.spec.js.map +1 -1
- package/cjs/src/embed/host-events.spec.js +81 -0
- package/cjs/src/embed/host-events.spec.js.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.d.ts +15 -0
- package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.js +1 -0
- package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.js +1 -0
- package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js +27 -0
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +76 -14
- 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 +9 -10
- 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/ts-embed.d.ts +16 -8
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +82 -30
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +537 -3
- package/cjs/src/embed/ts-embed.spec.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 +3 -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/types.d.ts +789 -32
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +610 -20
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils.spec.js +4 -0
- package/cjs/src/utils.spec.js.map +1 -1
- package/dist/{index-fCne7kmU.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 +63 -0
- package/dist/src/css-variables.d.ts.map +1 -1
- package/dist/src/embed/app.d.ts +148 -25
- 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 +375 -2
- package/dist/src/embed/conversation.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/contracts.d.ts +15 -0
- package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/host-event-client.d.ts +1 -1
- package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +76 -14
- 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 +9 -10
- 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/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 +789 -32
- package/dist/src/types.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +878 -120
- package/dist/tsembed-react.js +877 -119
- package/dist/tsembed.es.js +936 -181
- package/dist/tsembed.js +938 -183
- package/dist/visual-embed-sdk-react-full.d.ts +1553 -128
- package/dist/visual-embed-sdk-react.d.ts +1555 -129
- package/dist/visual-embed-sdk.d.ts +1499 -100
- 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 +63 -0
- package/lib/src/css-variables.d.ts.map +1 -1
- package/lib/src/embed/app.d.ts +148 -25
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +75 -38
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +572 -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 +375 -2
- package/lib/src/embed/conversation.d.ts.map +1 -1
- package/lib/src/embed/conversation.js +23 -17
- package/lib/src/embed/conversation.js.map +1 -1
- package/lib/src/embed/conversation.spec.js +323 -17
- package/lib/src/embed/conversation.spec.js.map +1 -1
- package/lib/src/embed/events.spec.js +45 -0
- package/lib/src/embed/events.spec.js.map +1 -1
- package/lib/src/embed/host-events.spec.js +81 -0
- package/lib/src/embed/host-events.spec.js.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.d.ts +15 -0
- package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.js +1 -0
- package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.d.ts +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.js +1 -0
- package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.spec.js +27 -0
- package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +76 -14
- 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 +9 -10
- 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/ts-embed.d.ts +16 -8
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +82 -30
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +537 -3
- package/lib/src/embed/ts-embed.spec.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 +2 -2
- 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/types.d.ts +789 -32
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +610 -20
- package/lib/src/types.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 +1499 -100
- package/package.json +1 -1
- package/src/config.ts +1 -0
- package/src/css-variables.ts +77 -0
- package/src/embed/app.spec.ts +729 -188
- package/src/embed/app.ts +240 -75
- package/src/embed/base.ts +1 -1
- package/src/embed/conversation.spec.ts +379 -20
- package/src/embed/conversation.ts +412 -18
- package/src/embed/events.spec.ts +56 -0
- package/src/embed/host-events.spec.ts +118 -0
- package/src/embed/hostEventClient/contracts.ts +16 -0
- package/src/embed/hostEventClient/host-event-client.spec.ts +46 -0
- package/src/embed/hostEventClient/host-event-client.ts +3 -2
- package/src/embed/liveboard.spec.ts +565 -4
- package/src/embed/liveboard.ts +150 -29
- package/src/embed/spotter-utils.spec.ts +140 -1
- package/src/embed/spotter-utils.ts +36 -1
- package/src/embed/spotter-viz-utils.ts +9 -10
- package/src/embed/ts-embed.spec.ts +699 -3
- package/src/embed/ts-embed.ts +99 -35
- package/src/index.ts +44 -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/types.ts +791 -30
- 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, SpotterQueryMode } 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
|
/**
|
|
@@ -67,6 +68,10 @@ export enum Page {
|
|
|
67
68
|
* Collections listing page
|
|
68
69
|
*/
|
|
69
70
|
Collections = 'collections',
|
|
71
|
+
/**
|
|
72
|
+
* Liveboard schedules listing page
|
|
73
|
+
*/
|
|
74
|
+
LiveboardSchedules = 'liveboard-schedules',
|
|
70
75
|
}
|
|
71
76
|
|
|
72
77
|
/**
|
|
@@ -115,6 +120,9 @@ export enum HomePage {
|
|
|
115
120
|
/**
|
|
116
121
|
* Modular (v2) introduces the updated Modular Home Experience.
|
|
117
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.
|
|
118
126
|
*/
|
|
119
127
|
Modular = 'v2',
|
|
120
128
|
/**
|
|
@@ -124,7 +132,7 @@ export enum HomePage {
|
|
|
124
132
|
ModularWithStylingChanges = 'v3',
|
|
125
133
|
/**
|
|
126
134
|
* Focused (v4) introduces the V4 homepage experience
|
|
127
|
-
* in which Watchlist and recents and incorporated together
|
|
135
|
+
* in which Watchlist and recents and incorporated together
|
|
128
136
|
* to form a more focused homepage.
|
|
129
137
|
* Pre-requisite : spotter enablement
|
|
130
138
|
* @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
@@ -191,13 +199,14 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
191
199
|
showPrimaryNavbar?: boolean;
|
|
192
200
|
/**
|
|
193
201
|
* Control the visibility of the left navigation panel on the home page
|
|
194
|
-
* in the
|
|
202
|
+
* in the V3 and V4 navigation and home page experience.
|
|
195
203
|
* If `showPrimaryNavbar` is true, that is, if the Global and Homepage
|
|
196
204
|
* navigation bars are visible, this flag will only hide the left navigation bar
|
|
197
205
|
* on the home page.
|
|
198
206
|
* The `showPrimaryNavbar` flag takes precedence over the `hideHomepageLeftNav`.
|
|
199
207
|
*
|
|
200
|
-
* **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.
|
|
201
210
|
*
|
|
202
211
|
* Supported embed types: `AppEmbed`
|
|
203
212
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
@@ -263,11 +272,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
263
272
|
hideHamburger?: boolean;
|
|
264
273
|
/**
|
|
265
274
|
* Control the visibility of the object search
|
|
266
|
-
* on the top navigation bar in the
|
|
267
|
-
* V2 and V3 navigation experience.
|
|
275
|
+
* on the top navigation bar in the V3 navigation experience.
|
|
268
276
|
*
|
|
269
|
-
* **Note**:
|
|
270
|
-
*
|
|
277
|
+
* **Note**: The classic (V1) and V2 navigation experiences are
|
|
278
|
+
* deprecated. This attribute applies to the V3 navigation experience.
|
|
271
279
|
*
|
|
272
280
|
* Supported embed types: `AppEmbed`
|
|
273
281
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
|
|
@@ -285,8 +293,8 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
285
293
|
* Control the visibility of the notification icon
|
|
286
294
|
* on the top navigation bar in V3 navigation experience.
|
|
287
295
|
*
|
|
288
|
-
* **Note**:
|
|
289
|
-
*
|
|
296
|
+
* **Note**: The classic (V1) and V2 experience modes are deprecated.
|
|
297
|
+
* This attribute applies to the V3 experience.
|
|
290
298
|
*
|
|
291
299
|
* Supported embed types: `AppEmbed`
|
|
292
300
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
|
|
@@ -301,14 +309,14 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
301
309
|
*/
|
|
302
310
|
hideNotification?: boolean;
|
|
303
311
|
/**
|
|
304
|
-
* Control the visibility of the application selection menu
|
|
305
|
-
* in the top navigation bar in the V2 experience.
|
|
312
|
+
* Control the visibility of the application selection menu.
|
|
306
313
|
* In the V3 experience, it shows or hides application selection
|
|
307
314
|
* icons on the left navigation panel.
|
|
308
315
|
* By default, the application selection menu and icons are
|
|
309
316
|
* shown in the UI.
|
|
310
317
|
*
|
|
311
|
-
* **Note**:
|
|
318
|
+
* **Note**: The classic (V1) and V2 experiences are deprecated.
|
|
319
|
+
* This attribute applies to the V3 experience.
|
|
312
320
|
*
|
|
313
321
|
* Supported embed types: `AppEmbed`
|
|
314
322
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
@@ -326,7 +334,8 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
326
334
|
* Control the visibility of the Org switcher button on the nav-bar.
|
|
327
335
|
* By default, the Org switcher button is shown.
|
|
328
336
|
*
|
|
329
|
-
* **Note**:
|
|
337
|
+
* **Note**: The classic (V1) experience is deprecated. This attribute
|
|
338
|
+
* applies to V2 (deprecated), V3 and V4 experiences.
|
|
330
339
|
*
|
|
331
340
|
* Supported embed types: `AppEmbed`
|
|
332
341
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
@@ -467,6 +476,11 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
467
476
|
* `false` fetches visualizations incrementally as
|
|
468
477
|
* users scroll the page to view the charts and tables.
|
|
469
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
|
+
*
|
|
470
484
|
* Supported embed types: `AppEmbed`
|
|
471
485
|
* @version SDK: 1.21.0 | ThoughtSpot: 9.4.0.cl, 9.4.0-sw
|
|
472
486
|
* @example
|
|
@@ -485,6 +499,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
485
499
|
* Supported embed types: `AppEmbed`
|
|
486
500
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
|
|
487
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.
|
|
488
506
|
* @example
|
|
489
507
|
* ```js
|
|
490
508
|
* const embed = new AppEmbed('#tsEmbed', {
|
|
@@ -620,11 +638,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
620
638
|
/**
|
|
621
639
|
* Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
|
|
622
640
|
* following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
|
|
623
|
-
* This feature is GA from version
|
|
641
|
+
* This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.8.0.cl.
|
|
624
642
|
*
|
|
625
643
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
626
644
|
* @type {boolean}
|
|
627
645
|
* @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
|
|
646
|
+
* @default true
|
|
628
647
|
* @example
|
|
629
648
|
* ```js
|
|
630
649
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -638,10 +657,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
638
657
|
|
|
639
658
|
/**
|
|
640
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
|
|
641
661
|
*
|
|
642
662
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
643
663
|
* @type {boolean}
|
|
644
664
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
665
|
+
* @default true
|
|
645
666
|
* @example
|
|
646
667
|
* ```js
|
|
647
668
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -655,10 +676,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
655
676
|
|
|
656
677
|
/**
|
|
657
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
|
|
658
680
|
*
|
|
659
681
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
660
682
|
* @type {boolean}
|
|
661
683
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
684
|
+
* @default true
|
|
662
685
|
* @example
|
|
663
686
|
* ```js
|
|
664
687
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -671,11 +694,17 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
671
694
|
isGranularXLSXCSVSchedulesEnabled?: boolean;
|
|
672
695
|
|
|
673
696
|
/**
|
|
674
|
-
*
|
|
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.
|
|
675
704
|
*
|
|
676
705
|
* @type {boolean}
|
|
677
706
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
678
|
-
* @default
|
|
707
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
679
708
|
* @example
|
|
680
709
|
* ```js
|
|
681
710
|
* const embed = new AppEmbed('#embed-container', {
|
|
@@ -687,28 +716,44 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
687
716
|
*/
|
|
688
717
|
lazyLoadingForFullHeight?: boolean;
|
|
689
718
|
/**
|
|
690
|
-
*
|
|
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.
|
|
691
722
|
*
|
|
692
|
-
*
|
|
693
|
-
*
|
|
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.
|
|
694
728
|
*
|
|
695
729
|
* @type {boolean}
|
|
696
|
-
* @default
|
|
730
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
697
731
|
* @hidden
|
|
698
732
|
*/
|
|
699
733
|
enableScrollableContainerLazyLoading?: boolean;
|
|
700
734
|
|
|
701
735
|
/**
|
|
702
|
-
*
|
|
736
|
+
* How far outside the viewport a visualization starts loading, when
|
|
737
|
+
* {@link lazyLoadingForFullHeight} is enabled.
|
|
703
738
|
*
|
|
704
739
|
* For example, if the margin is set to '10px',
|
|
705
740
|
* the visualization will be loaded 10px before its top edge is visible in the
|
|
706
741
|
* viewport.
|
|
707
742
|
*
|
|
708
|
-
* 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.
|
|
709
753
|
*
|
|
710
754
|
* @type {string}
|
|
711
755
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
756
|
+
* @default '500px 0px' when `fullHeight` is enabled, from SDK 1.52.0
|
|
712
757
|
* @example
|
|
713
758
|
* ```js
|
|
714
759
|
* const embed = new AppEmbed('#embed-container', {
|
|
@@ -737,6 +782,21 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
737
782
|
* ```
|
|
738
783
|
*/
|
|
739
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;
|
|
740
800
|
/**
|
|
741
801
|
* Sets the default query mode when Spotter loads — Fast Search or
|
|
742
802
|
* Research Mode. Applies fresh on every new session for this embed
|
|
@@ -781,6 +841,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
781
841
|
* spotterSidebarConfig: {
|
|
782
842
|
* enablePastConversationsSidebar: true,
|
|
783
843
|
* spotterSidebarTitle: 'My Conversations',
|
|
844
|
+
* // Opt in to pin/unpin conversations in embedded Spotter
|
|
845
|
+
* spotterChatPinConfig: {
|
|
846
|
+
* enabled: true,
|
|
847
|
+
* },
|
|
784
848
|
* },
|
|
785
849
|
* })
|
|
786
850
|
* ```
|
|
@@ -804,6 +868,49 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
804
868
|
* ```
|
|
805
869
|
*/
|
|
806
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[];
|
|
807
914
|
/**
|
|
808
915
|
* Configuration for the SpotterViz interface shown on the Liveboard.
|
|
809
916
|
* Customize the brand name, description, chat input placeholder,
|
|
@@ -822,13 +929,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
822
929
|
* inputChatPlaceholder: 'Ask a question...',
|
|
823
930
|
* hideStarterPrompts: false,
|
|
824
931
|
* customStarterPrompts: [{ id: '1', displayText: 'Top products', fullPrompt: 'What are the top products by revenue?' }],
|
|
825
|
-
* //
|
|
932
|
+
* // The options below require SDK: 1.51.0
|
|
826
933
|
* loaderHeadline: 'Crunching the numbers...',
|
|
827
934
|
* loaderTips: [
|
|
828
935
|
* { label: 'Tip', text: 'try asking about revenue by region' },
|
|
829
936
|
* { label: 'Tip', text: 'use natural language' },
|
|
830
937
|
* ],
|
|
831
|
-
* // liveboardBrandName, spotterBrandName, insightTileBrandName, insightTileViewPlanLabel and insightTileLoaderText require SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
832
938
|
* liveboardBrandName: 'Reports',
|
|
833
939
|
* spotterBrandName: 'Analyst',
|
|
834
940
|
* insightTileBrandName: 'Insight card',
|
|
@@ -900,6 +1006,22 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
900
1006
|
* @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
|
|
901
1007
|
*/
|
|
902
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;
|
|
903
1025
|
}
|
|
904
1026
|
|
|
905
1027
|
/**
|
|
@@ -910,6 +1032,8 @@ export interface AppEmbedAppInitData extends DefaultAppInitData {
|
|
|
910
1032
|
embedParams?: {
|
|
911
1033
|
spotterSidebarConfig?: SpotterSidebarViewConfig;
|
|
912
1034
|
spotterVizConfig?: SpotterVizConfig;
|
|
1035
|
+
spotterShareConversationConfig?: SpotterShareConversationConfig;
|
|
1036
|
+
starterPrompts?: StarterPromptsConfig;
|
|
913
1037
|
};
|
|
914
1038
|
}
|
|
915
1039
|
|
|
@@ -930,6 +1054,16 @@ export class AppEmbed extends V1Embed {
|
|
|
930
1054
|
viewConfig.embedComponentType = 'AppEmbed';
|
|
931
1055
|
super(domSelector, viewConfig);
|
|
932
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
|
+
|
|
933
1067
|
this.on(EmbedEvent.RouteChange, this.setIframeHeightForNonEmbedLiveboard);
|
|
934
1068
|
this.on(EmbedEvent.EmbedHeight, this.updateIFrameHeight);
|
|
935
1069
|
this.on(EmbedEvent.EmbedIframeCenter, this.embedIframeCenter);
|
|
@@ -959,7 +1093,9 @@ export class AppEmbed extends V1Embed {
|
|
|
959
1093
|
this.viewConfig,
|
|
960
1094
|
this.handleError.bind(this),
|
|
961
1095
|
);
|
|
962
|
-
|
|
1096
|
+
const vizInitData = buildSpotterVizAppInitData(sidebarInitData, this.viewConfig);
|
|
1097
|
+
const shareInitData = buildSpotterShareConversationAppInitData(vizInitData, this.viewConfig);
|
|
1098
|
+
return buildStarterPromptsAppInitData(shareInitData, this.viewConfig);
|
|
963
1099
|
}
|
|
964
1100
|
|
|
965
1101
|
/**
|
|
@@ -967,6 +1103,11 @@ export class AppEmbed extends V1Embed {
|
|
|
967
1103
|
* embedded Liveboard or visualization.
|
|
968
1104
|
*/
|
|
969
1105
|
protected getEmbedParams() {
|
|
1106
|
+
const params = this.getEmbedParamsObject();
|
|
1107
|
+
return getQueryParamString(params, true);
|
|
1108
|
+
}
|
|
1109
|
+
|
|
1110
|
+
protected getEmbedParamsObject() {
|
|
970
1111
|
const {
|
|
971
1112
|
tag,
|
|
972
1113
|
hideTagFilterChips,
|
|
@@ -983,45 +1124,51 @@ export class AppEmbed extends V1Embed {
|
|
|
983
1124
|
newConnectionsExperience,
|
|
984
1125
|
fullHeight,
|
|
985
1126
|
dataPanelV2 = true,
|
|
1127
|
+
updatedSpotterExperience,
|
|
986
1128
|
hideLiveboardHeader = false,
|
|
987
1129
|
showLiveboardTitle = true,
|
|
988
1130
|
showLiveboardDescription = true,
|
|
989
1131
|
showMaskedFilterChip = false,
|
|
990
|
-
isLiveboardMasterpiecesEnabled
|
|
1132
|
+
isLiveboardMasterpiecesEnabled,
|
|
991
1133
|
newChartsLibrary,
|
|
992
1134
|
hideHomepageLeftNav = false,
|
|
993
|
-
modularHomeExperience
|
|
1135
|
+
modularHomeExperience,
|
|
994
1136
|
isLiveboardHeaderSticky = true,
|
|
995
1137
|
enableAskSage,
|
|
996
1138
|
collapseSearchBarInitially = false,
|
|
997
1139
|
enable2ColumnLayout,
|
|
1140
|
+
isLiveboardAlwaysOn12ColLayout,
|
|
998
1141
|
enableCustomColumnGroups = false,
|
|
999
1142
|
dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL,
|
|
1000
1143
|
collapseSearchBar = true,
|
|
1001
|
-
isLiveboardCompactHeaderEnabled
|
|
1144
|
+
isLiveboardCompactHeaderEnabled,
|
|
1002
1145
|
showLiveboardVerifiedBadge = true,
|
|
1003
1146
|
showLiveboardReverifyBanner = true,
|
|
1004
|
-
hideIrrelevantChipsInLiveboardTabs
|
|
1005
|
-
isEnhancedFilterInteractivityEnabled
|
|
1147
|
+
hideIrrelevantChipsInLiveboardTabs,
|
|
1148
|
+
isEnhancedFilterInteractivityEnabled,
|
|
1006
1149
|
homePageSearchBarMode,
|
|
1007
1150
|
isUnifiedSearchExperienceEnabled = true,
|
|
1008
1151
|
enablePendoHelp = true,
|
|
1009
1152
|
discoveryExperience,
|
|
1010
|
-
coverAndFilterOptionInPDF
|
|
1153
|
+
coverAndFilterOptionInPDF,
|
|
1011
1154
|
isLiveboardStylingAndGroupingEnabled,
|
|
1155
|
+
liveboardGutter,
|
|
1012
1156
|
isPNGInScheduledEmailsEnabled = false,
|
|
1013
|
-
isLiveboardXLSXCSVDownloadEnabled
|
|
1014
|
-
isGranularXLSXCSVSchedulesEnabled
|
|
1157
|
+
isLiveboardXLSXCSVDownloadEnabled,
|
|
1158
|
+
isGranularXLSXCSVSchedulesEnabled,
|
|
1015
1159
|
isCentralizedLiveboardFilterUXEnabled = false,
|
|
1160
|
+
isScopedLiveboardFilteringEnabled,
|
|
1016
1161
|
isLinkParametersEnabled,
|
|
1017
1162
|
updatedSpotterChatPrompt,
|
|
1163
|
+
showSpotterRadiance,
|
|
1018
1164
|
defaultQueryMode,
|
|
1019
1165
|
enableStopAnswerGenerationEmbed,
|
|
1020
1166
|
spotterChatConfig,
|
|
1167
|
+
spotterDataSources,
|
|
1021
1168
|
minimumHeight,
|
|
1022
1169
|
isThisPeriodInDateFiltersEnabled,
|
|
1023
1170
|
enableHomepageAnnouncement = false,
|
|
1024
|
-
isContinuousLiveboardPDFEnabled
|
|
1171
|
+
isContinuousLiveboardPDFEnabled,
|
|
1025
1172
|
enableLiveboardDataCache,
|
|
1026
1173
|
} = this.viewConfig;
|
|
1027
1174
|
|
|
@@ -1034,27 +1181,41 @@ export class AppEmbed extends V1Embed {
|
|
|
1034
1181
|
params[Param.ShowLiveboardTitle] = showLiveboardTitle;
|
|
1035
1182
|
params[Param.ShowLiveboardDescription] = !!showLiveboardDescription;
|
|
1036
1183
|
params[Param.ShowMaskedFilterChip] = showMaskedFilterChip;
|
|
1037
|
-
|
|
1184
|
+
if (!isUndefined(isLiveboardMasterpiecesEnabled)) {
|
|
1185
|
+
params[Param.IsLiveboardMasterpiecesEnabled] = isLiveboardMasterpiecesEnabled;
|
|
1186
|
+
}
|
|
1038
1187
|
if (newChartsLibrary !== undefined) {
|
|
1039
1188
|
params[Param.EnableNewChartLibrary] = newChartsLibrary;
|
|
1040
1189
|
}
|
|
1041
1190
|
params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
|
|
1042
1191
|
params[Param.IsFullAppEmbed] = true;
|
|
1043
|
-
|
|
1044
|
-
|
|
1192
|
+
if (!isUndefined(isLiveboardCompactHeaderEnabled)) {
|
|
1193
|
+
params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
|
|
1194
|
+
}
|
|
1195
|
+
if (!isUndefined(isEnhancedFilterInteractivityEnabled)) {
|
|
1196
|
+
params[Param.IsEnhancedFilterInteractivityEnabled] =
|
|
1197
|
+
isEnhancedFilterInteractivityEnabled;
|
|
1198
|
+
}
|
|
1045
1199
|
params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
|
|
1046
1200
|
params[Param.ShowLiveboardReverifyBanner] = showLiveboardReverifyBanner;
|
|
1047
|
-
|
|
1201
|
+
if (!isUndefined(hideIrrelevantChipsInLiveboardTabs)) {
|
|
1202
|
+
params[Param.HideIrrelevantFiltersInTab] = hideIrrelevantChipsInLiveboardTabs;
|
|
1203
|
+
}
|
|
1048
1204
|
if (isUnifiedSearchExperienceEnabled !== undefined) {
|
|
1049
1205
|
params[Param.IsUnifiedSearchExperienceEnabled] = isUnifiedSearchExperienceEnabled;
|
|
1050
1206
|
}
|
|
1051
|
-
|
|
1207
|
+
if (!isUndefined(coverAndFilterOptionInPDF)) {
|
|
1208
|
+
params[Param.CoverAndFilterOptionInPDF] = !!coverAndFilterOptionInPDF;
|
|
1209
|
+
}
|
|
1052
1210
|
|
|
1053
1211
|
params = this.getBaseQueryParams(params);
|
|
1054
1212
|
|
|
1055
1213
|
if (!isUndefined(updatedSpotterChatPrompt)) {
|
|
1056
1214
|
params[Param.UpdatedSpotterChatPrompt] = !!updatedSpotterChatPrompt;
|
|
1057
1215
|
}
|
|
1216
|
+
if (!isUndefined(showSpotterRadiance)) {
|
|
1217
|
+
params[Param.ShowSpotterRadiance] = !!showSpotterRadiance;
|
|
1218
|
+
}
|
|
1058
1219
|
if (!isUndefined(defaultQueryMode)) {
|
|
1059
1220
|
params[Param.DefaultQueryMode] = defaultQueryMode;
|
|
1060
1221
|
}
|
|
@@ -1062,6 +1223,10 @@ export class AppEmbed extends V1Embed {
|
|
|
1062
1223
|
params[Param.EnableStopAnswerGenerationEmbed] = !!enableStopAnswerGenerationEmbed;
|
|
1063
1224
|
}
|
|
1064
1225
|
|
|
1226
|
+
if (spotterDataSources && spotterDataSources.length) {
|
|
1227
|
+
params[Param.SpotterDataSources] = JSON.stringify(spotterDataSources);
|
|
1228
|
+
}
|
|
1229
|
+
|
|
1065
1230
|
// Handle spotterChatConfig params
|
|
1066
1231
|
if (spotterChatConfig) {
|
|
1067
1232
|
const {
|
|
@@ -1070,6 +1235,7 @@ export class AppEmbed extends V1Embed {
|
|
|
1070
1235
|
spotterFileUploadEnabled,
|
|
1071
1236
|
spotterFileUploadFileTypes,
|
|
1072
1237
|
enableStarterPrompts,
|
|
1238
|
+
openSpotterOnLiveboardByDefault,
|
|
1073
1239
|
} = spotterChatConfig;
|
|
1074
1240
|
|
|
1075
1241
|
setParamIfDefined(params, Param.HideToolResponseCardBranding, hideToolResponseCardBranding, true);
|
|
@@ -1080,11 +1246,18 @@ export class AppEmbed extends V1Embed {
|
|
|
1080
1246
|
if (enableStarterPrompts !== undefined) {
|
|
1081
1247
|
params[Param.IsStarterPromptsEnabled] = enableStarterPrompts;
|
|
1082
1248
|
}
|
|
1249
|
+
if (openSpotterOnLiveboardByDefault !== undefined) {
|
|
1250
|
+
params[Param.OpenSpotterOnLiveboardByDefault] = openSpotterOnLiveboardByDefault;
|
|
1251
|
+
}
|
|
1083
1252
|
if (spotterFileUploadFileTypes !== undefined) {
|
|
1084
1253
|
params[Param.SpotterFileUploadFileTypes] = JSON.stringify(spotterFileUploadFileTypes);
|
|
1085
1254
|
}
|
|
1086
1255
|
}
|
|
1087
1256
|
|
|
1257
|
+
if (!isUndefined(updatedSpotterExperience)) {
|
|
1258
|
+
params[Param.UpdatedSpotterExperience] = !!updatedSpotterExperience;
|
|
1259
|
+
}
|
|
1260
|
+
|
|
1088
1261
|
if (hideObjectSearch) {
|
|
1089
1262
|
params[Param.HideObjectSearch] = !!hideObjectSearch;
|
|
1090
1263
|
}
|
|
@@ -1128,6 +1301,9 @@ export class AppEmbed extends V1Embed {
|
|
|
1128
1301
|
if (enable2ColumnLayout !== undefined) {
|
|
1129
1302
|
params[Param.Enable2ColumnLayout] = enable2ColumnLayout;
|
|
1130
1303
|
}
|
|
1304
|
+
if (isLiveboardAlwaysOn12ColLayout !== undefined) {
|
|
1305
|
+
params[Param.IsLiveboardAlwaysOn12ColLayout] = isLiveboardAlwaysOn12ColLayout;
|
|
1306
|
+
}
|
|
1131
1307
|
|
|
1132
1308
|
if (enableAskSage) {
|
|
1133
1309
|
params[Param.enableAskSage] = enableAskSage;
|
|
@@ -1147,6 +1323,10 @@ export class AppEmbed extends V1Embed {
|
|
|
1147
1323
|
] = isLiveboardStylingAndGroupingEnabled;
|
|
1148
1324
|
}
|
|
1149
1325
|
|
|
1326
|
+
if (liveboardGutter !== undefined) {
|
|
1327
|
+
params[Param.LiveboardGutter] = liveboardGutter;
|
|
1328
|
+
}
|
|
1329
|
+
|
|
1150
1330
|
if (isPNGInScheduledEmailsEnabled !== undefined) {
|
|
1151
1331
|
params[Param.isPNGInScheduledEmailsEnabled] = isPNGInScheduledEmailsEnabled;
|
|
1152
1332
|
}
|
|
@@ -1173,6 +1353,12 @@ export class AppEmbed extends V1Embed {
|
|
|
1173
1353
|
] = isCentralizedLiveboardFilterUXEnabled;
|
|
1174
1354
|
}
|
|
1175
1355
|
|
|
1356
|
+
if (isScopedLiveboardFilteringEnabled !== undefined) {
|
|
1357
|
+
params[
|
|
1358
|
+
Param.isScopedLiveboardFilteringEnabled
|
|
1359
|
+
] = isScopedLiveboardFilteringEnabled;
|
|
1360
|
+
}
|
|
1361
|
+
|
|
1176
1362
|
if (isThisPeriodInDateFiltersEnabled !== undefined) {
|
|
1177
1363
|
params[Param.IsThisPeriodInDateFiltersEnabled] = isThisPeriodInDateFiltersEnabled;
|
|
1178
1364
|
}
|
|
@@ -1193,7 +1379,6 @@ export class AppEmbed extends V1Embed {
|
|
|
1193
1379
|
|
|
1194
1380
|
params[Param.DataPanelV2Enabled] = dataPanelV2;
|
|
1195
1381
|
params[Param.HideHomepageLeftNav] = hideHomepageLeftNav;
|
|
1196
|
-
params[Param.ModularHomeExperienceEnabled] = modularHomeExperience;
|
|
1197
1382
|
params[Param.CollapseSearchBarInitially] = collapseSearchBarInitially || collapseSearchBar;
|
|
1198
1383
|
params[Param.EnableCustomColumnGroups] = enableCustomColumnGroups;
|
|
1199
1384
|
if (dataPanelCustomGroupsAccordionInitialState
|
|
@@ -1214,41 +1399,21 @@ export class AppEmbed extends V1Embed {
|
|
|
1214
1399
|
params[Param.ModularHomeExperienceEnabled] = modularHomeExperience;
|
|
1215
1400
|
}
|
|
1216
1401
|
|
|
1217
|
-
//
|
|
1218
|
-
//
|
|
1219
|
-
//
|
|
1220
|
-
//
|
|
1221
|
-
//
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
params[Param.HomepageVersion] = 'v2';
|
|
1226
|
-
if (discoveryExperience) {
|
|
1227
|
-
// primaryNavbarVersion v3 will enabled the new left navigation
|
|
1228
|
-
if (discoveryExperience.primaryNavbarVersion === PrimaryNavbarVersion.Sliding) {
|
|
1229
|
-
params[Param.NavigationVersion] = discoveryExperience.primaryNavbarVersion;
|
|
1230
|
-
// Enable the modularHomeExperience when Sliding is enabled.
|
|
1231
|
-
params[Param.ModularHomeExperienceEnabled] = true;
|
|
1232
|
-
}
|
|
1233
|
-
|
|
1234
|
-
// homePage v2 will enable the modular home page
|
|
1235
|
-
// and it will override the modularHomeExperience value
|
|
1236
|
-
if (discoveryExperience.homePage === HomePage.Modular) {
|
|
1237
|
-
params[Param.ModularHomeExperienceEnabled] = true;
|
|
1238
|
-
}
|
|
1239
|
-
|
|
1240
|
-
// ModularWithStylingChanges (v3) introduces the styling changes
|
|
1241
|
-
// to the Modular Homepage.
|
|
1242
|
-
// v3 will be the base version of homePageVersion.
|
|
1243
|
-
if (discoveryExperience.homePage === HomePage.ModularWithStylingChanges) {
|
|
1244
|
-
params[Param.HomepageVersion] = HomePage.ModularWithStylingChanges;
|
|
1245
|
-
}
|
|
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;
|
|
1246
1410
|
|
|
1411
|
+
if (discoveryExperience) {
|
|
1247
1412
|
// listPageVersion can be changed to v2 or v3
|
|
1248
1413
|
if (discoveryExperience.listPageVersion !== undefined) {
|
|
1249
1414
|
params[Param.ListPageVersion] = discoveryExperience.listPageVersion;
|
|
1250
1415
|
}
|
|
1251
|
-
|
|
1416
|
+
|
|
1252
1417
|
if (discoveryExperience.homePage === HomePage.Focused) {
|
|
1253
1418
|
params[Param.HomepageVersion] = HomePage.Focused;
|
|
1254
1419
|
// The Focused (V4) homepage experience requires the updated
|
|
@@ -1260,9 +1425,7 @@ export class AppEmbed extends V1Embed {
|
|
|
1260
1425
|
}
|
|
1261
1426
|
}
|
|
1262
1427
|
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
return queryParams;
|
|
1428
|
+
return params;
|
|
1266
1429
|
}
|
|
1267
1430
|
|
|
1268
1431
|
private sendFullHeightLazyLoadData = () => {
|
|
@@ -1367,6 +1530,8 @@ export class AppEmbed extends V1Embed {
|
|
|
1367
1530
|
return modularHomeExperience ? 'home/monitor-alerts' : 'insights/monitor-alerts';
|
|
1368
1531
|
case Page.Collections:
|
|
1369
1532
|
return 'collections';
|
|
1533
|
+
case Page.LiveboardSchedules:
|
|
1534
|
+
return 'home/liveboard-schedules';
|
|
1370
1535
|
case Page.Home:
|
|
1371
1536
|
default:
|
|
1372
1537
|
return 'home';
|