@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/dist/tsembed-react.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @thoughtspot/visual-embed-sdk version 1.
|
|
1
|
+
/* @thoughtspot/visual-embed-sdk version 1.51.0-test */
|
|
2
2
|
'use client';
|
|
3
3
|
(function (global, factory) {
|
|
4
4
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react')) :
|
|
@@ -396,7 +396,9 @@
|
|
|
396
396
|
})(AuthType || (AuthType = {}));
|
|
397
397
|
/**
|
|
398
398
|
*
|
|
399
|
-
* **Note**:
|
|
399
|
+
* **Note**: The classic (V1) and Modular (V2) home page experiences are
|
|
400
|
+
* deprecated. This attribute applies to V3 (ModularWithStylingChanges) and
|
|
401
|
+
* V4 (Focused) home page experiences.
|
|
400
402
|
*
|
|
401
403
|
*/
|
|
402
404
|
exports.HomeLeftNavItem = void 0;
|
|
@@ -464,6 +466,13 @@
|
|
|
464
466
|
* @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
|
|
465
467
|
*/
|
|
466
468
|
HomeLeftNavItem["Favorites"] = "favorites";
|
|
469
|
+
/**
|
|
470
|
+
* The *Collections* menu option in
|
|
471
|
+
* the *Insights* left navigation panel.
|
|
472
|
+
* Shown when collections are enabled on the cluster.
|
|
473
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
474
|
+
*/
|
|
475
|
+
HomeLeftNavItem["Collections"] = "collections";
|
|
467
476
|
})(exports.HomeLeftNavItem || (exports.HomeLeftNavItem = {}));
|
|
468
477
|
/**
|
|
469
478
|
* A map of the supported runtime filter operations
|
|
@@ -536,7 +545,9 @@
|
|
|
536
545
|
* via `hiddenHomepageModules` and reordered via
|
|
537
546
|
* `reorderedHomepageModules`.
|
|
538
547
|
*
|
|
539
|
-
* **Note**:
|
|
548
|
+
* **Note**: The classic (V1) and Modular (V2) home page experiences are
|
|
549
|
+
* deprecated. These modules apply to V3 (ModularWithStylingChanges) and
|
|
550
|
+
* V4 (Focused) home page experiences.
|
|
540
551
|
* @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
|
|
541
552
|
*/
|
|
542
553
|
exports.HomepageModule = void 0;
|
|
@@ -714,7 +725,7 @@
|
|
|
714
725
|
* @returns nonFilteredColumns - The columns that were not filtered
|
|
715
726
|
* @example
|
|
716
727
|
* ```js
|
|
717
|
-
* searchEmbed.on(EmbedEvent.
|
|
728
|
+
* searchEmbed.on(EmbedEvent.Drilldown, {
|
|
718
729
|
* points: {
|
|
719
730
|
* clickedPoint,
|
|
720
731
|
* selectedPoints: selectedPoint
|
|
@@ -775,7 +786,7 @@
|
|
|
775
786
|
* @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 8.4.1.sw
|
|
776
787
|
* @example
|
|
777
788
|
* ```js
|
|
778
|
-
* appEmbed.on(EmbedEvent.
|
|
789
|
+
* appEmbed.on(EmbedEvent.CustomAction, payload => {
|
|
779
790
|
* const data = payload.data;
|
|
780
791
|
* if (data.id === 'insert Custom Action ID here') {
|
|
781
792
|
* console.log('Custom Action event:', data.embedAnswerData);
|
|
@@ -1041,8 +1052,8 @@
|
|
|
1041
1052
|
*
|
|
1042
1053
|
* **Note**: This event is deprecated in v1.21.0.
|
|
1043
1054
|
* To fire an event when a download action is initiated on a chart or table,
|
|
1044
|
-
* use `EmbedEvent.DownloadAsPng`, `EmbedEvent.
|
|
1045
|
-
* `EmbedEvent.
|
|
1055
|
+
* use `EmbedEvent.DownloadAsPng`, `EmbedEvent.DownloadAsPdf`,
|
|
1056
|
+
* `EmbedEvent.DownloadAsCsv`, or `EmbedEvent.DownloadAsXlsx`
|
|
1046
1057
|
* @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
|
|
1047
1058
|
* @example
|
|
1048
1059
|
* ```js
|
|
@@ -1092,10 +1103,10 @@
|
|
|
1092
1103
|
* @example
|
|
1093
1104
|
* ```js
|
|
1094
1105
|
* //emit when action starts
|
|
1095
|
-
* searchEmbed.on(EmbedEvent.
|
|
1106
|
+
* searchEmbed.on(EmbedEvent.DownloadAsCsv, payload => {
|
|
1096
1107
|
* console.log('download CSV', payload)}, {start: true })
|
|
1097
1108
|
* //emit when action ends
|
|
1098
|
-
* searchEmbed.on(EmbedEvent.
|
|
1109
|
+
* searchEmbed.on(EmbedEvent.DownloadAsCsv, payload => {
|
|
1099
1110
|
* console.log('download CSV', payload)})
|
|
1100
1111
|
* ```
|
|
1101
1112
|
*/
|
|
@@ -1494,11 +1505,19 @@
|
|
|
1494
1505
|
* Emitted when a user changes any filter on a Liveboard.
|
|
1495
1506
|
* Returns filter type and name, column name and ID, and runtime
|
|
1496
1507
|
* filter details.
|
|
1508
|
+
* The payload includes an optional `applicability` attribute indicating the
|
|
1509
|
+
* scope of the changed filter. It contains a `level` (`LIVEBOARD`,
|
|
1510
|
+
* `TAB`, or `GROUP`) and, when `level` is `TAB` or `GROUP`, a
|
|
1511
|
+
* `targetId` with the GUID of the target. At `LIVEBOARD` level there
|
|
1512
|
+
* is no `targetId`, since the filter applies to the whole Liveboard.
|
|
1513
|
+
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
1514
|
+
* ThoughtSpot: 26.10.0.cl.
|
|
1497
1515
|
* @example
|
|
1498
1516
|
*
|
|
1499
1517
|
* ```js
|
|
1500
1518
|
* LiveboardEmbed.on(EmbedEvent.FilterChanged, (payload) => {
|
|
1501
1519
|
* console.log('payload', payload);
|
|
1520
|
+
* // payload.data optionally includes applicability: { level, targetId }
|
|
1502
1521
|
* })
|
|
1503
1522
|
* ```
|
|
1504
1523
|
* @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl, 9.5.0.sw
|
|
@@ -1690,9 +1709,17 @@
|
|
|
1690
1709
|
/**
|
|
1691
1710
|
* Emitted when parameter changes in an Answer
|
|
1692
1711
|
* or Liveboard.
|
|
1712
|
+
* The payload includes an optional `applicability` attribute indicating the
|
|
1713
|
+
* scope of the changed parameter. It contains a `level` (`LIVEBOARD`,
|
|
1714
|
+
* `TAB`, or `GROUP`) and, when `level` is `TAB` or `GROUP`, a
|
|
1715
|
+
* `targetId` with the GUID of the target. At `LIVEBOARD` level there
|
|
1716
|
+
* is no `targetId`, since the parameter applies to the whole Liveboard.
|
|
1717
|
+
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
1718
|
+
* ThoughtSpot: 26.10.0.cl.
|
|
1693
1719
|
* ```js
|
|
1694
1720
|
* liveboardEmbed.on(EmbedEvent.ParameterChanged, (payload) => {
|
|
1695
1721
|
* console.log('payload', payload);
|
|
1722
|
+
* // payload.data optionally includes applicability: { level, targetId }
|
|
1696
1723
|
* })
|
|
1697
1724
|
* ```
|
|
1698
1725
|
* @version SDK: 1.29.0 | ThoughtSpot: 10.3.0.cl
|
|
@@ -1994,6 +2021,158 @@
|
|
|
1994
2021
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
1995
2022
|
*/
|
|
1996
2023
|
EmbedEvent["SpotterConversationDeleted"] = "spotterConversationDeleted";
|
|
2024
|
+
/**
|
|
2025
|
+
* Emitted when the header Share button is clicked. Fires `Start` then `End`
|
|
2026
|
+
* to bracket the interaction. App→host counterpart of the
|
|
2027
|
+
* `ShareSpotterConversation` host event (user-driven vs programmatic open).
|
|
2028
|
+
* @example
|
|
2029
|
+
* ```js
|
|
2030
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareConversationButtonHeaderClicked, (payload) => {
|
|
2031
|
+
* // payload: { convId: string }
|
|
2032
|
+
* })
|
|
2033
|
+
* ```
|
|
2034
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2035
|
+
*/
|
|
2036
|
+
EmbedEvent["SpotterShareConversationButtonHeaderClicked"] = "spotterShareConversationButtonHeaderClicked";
|
|
2037
|
+
/**
|
|
2038
|
+
* Emitted when the sidebar Share item is clicked. Fires `Start` then `End`
|
|
2039
|
+
* to bracket the interaction.
|
|
2040
|
+
* @example
|
|
2041
|
+
* ```js
|
|
2042
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareConversationMenuItemSidebarClicked, (payload) => {
|
|
2043
|
+
* // payload: { convId: string }
|
|
2044
|
+
* })
|
|
2045
|
+
* ```
|
|
2046
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2047
|
+
*/
|
|
2048
|
+
EmbedEvent["SpotterShareConversationMenuItemSidebarClicked"] = "spotterShareConversationMenuItemSidebarClicked";
|
|
2049
|
+
/**
|
|
2050
|
+
* Emitted when a Spotter conversation is shared (recipients added, or a new
|
|
2051
|
+
* share created). The host builds its own link from shareId/convId + its
|
|
2052
|
+
* configured CONVERSATION_URL — no link string is sent. Distinct from
|
|
2053
|
+
* `SpotterShareModalConfirmButtonClicked`, which fires at click time before
|
|
2054
|
+
* the save resolves.
|
|
2055
|
+
* @example
|
|
2056
|
+
* ```js
|
|
2057
|
+
* spotterEmbed.on(EmbedEvent.SpotterConversationShared, (payload) => {
|
|
2058
|
+
* // payload: { convId: string, shareId: string,
|
|
2059
|
+
* // recipientsAdded: string[], recipientsRemoved: string[] }
|
|
2060
|
+
* })
|
|
2061
|
+
* ```
|
|
2062
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2063
|
+
*/
|
|
2064
|
+
EmbedEvent["SpotterConversationShared"] = "spotterConversationShared";
|
|
2065
|
+
/**
|
|
2066
|
+
* Emitted when access to a shared Spotter conversation is revoked
|
|
2067
|
+
* (recipients removed). `fullyRevoked` is true when the last sharee is removed
|
|
2068
|
+
* and the share is deleted entirely.
|
|
2069
|
+
* @example
|
|
2070
|
+
* ```js
|
|
2071
|
+
* spotterEmbed.on(EmbedEvent.SpotterConversationShareRevoked, (payload) => {
|
|
2072
|
+
* // payload: { convId: string, shareId: string,
|
|
2073
|
+
* // recipientsRemoved: string[], fullyRevoked: boolean }
|
|
2074
|
+
* })
|
|
2075
|
+
* ```
|
|
2076
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2077
|
+
*/
|
|
2078
|
+
EmbedEvent["SpotterConversationShareRevoked"] = "spotterConversationShareRevoked";
|
|
2079
|
+
/**
|
|
2080
|
+
* Emitted when a recipient opens a shared Spotter conversation (read-only
|
|
2081
|
+
* view). No shareId available viewer-side.
|
|
2082
|
+
* @example
|
|
2083
|
+
* ```js
|
|
2084
|
+
* spotterEmbed.on(EmbedEvent.SpotterSharedConversationViewed, (payload) => {
|
|
2085
|
+
* // payload: { convId: string, sourceConvId: string }
|
|
2086
|
+
* // convId = resolved snapshot conv id; sourceConvId = the shared URL id
|
|
2087
|
+
* })
|
|
2088
|
+
* ```
|
|
2089
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2090
|
+
*/
|
|
2091
|
+
EmbedEvent["SpotterSharedConversationViewed"] = "spotterSharedConversationViewed";
|
|
2092
|
+
/**
|
|
2093
|
+
* Emitted when the user toggles the share-modal "include new messages since
|
|
2094
|
+
* last shared version" checkbox.
|
|
2095
|
+
* @example
|
|
2096
|
+
* ```js
|
|
2097
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareIncludeNewMessagesCheckboxToggled, (payload) => {
|
|
2098
|
+
* // payload: { convId: string, includeNewMessages: boolean }
|
|
2099
|
+
* })
|
|
2100
|
+
* ```
|
|
2101
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2102
|
+
*/
|
|
2103
|
+
EmbedEvent["SpotterShareIncludeNewMessagesCheckboxToggled"] = "spotterShareIncludeNewMessagesCheckboxToggled";
|
|
2104
|
+
/**
|
|
2105
|
+
* Emitted when the user dismisses the stale-snapshot info banner via its
|
|
2106
|
+
* cross (distinct from the include-new-messages checkbox toggle).
|
|
2107
|
+
* @example
|
|
2108
|
+
* ```js
|
|
2109
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareStaleInfoBannerDismissed, (payload) => {
|
|
2110
|
+
* // payload: { convId: string }
|
|
2111
|
+
* })
|
|
2112
|
+
* ```
|
|
2113
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2114
|
+
*/
|
|
2115
|
+
EmbedEvent["SpotterShareStaleInfoBannerDismissed"] = "spotterShareStaleInfoBannerDismissed";
|
|
2116
|
+
/**
|
|
2117
|
+
* Emitted when the modal Share (confirm) button is clicked — fires at click
|
|
2118
|
+
* time, before the save resolves. Distinct from the `SpotterConversationShared`
|
|
2119
|
+
* / `SpotterConversationShareRevoked` result events.
|
|
2120
|
+
* @example
|
|
2121
|
+
* ```js
|
|
2122
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareModalConfirmButtonClicked, (payload) => {
|
|
2123
|
+
* // payload: { convId: string }
|
|
2124
|
+
* })
|
|
2125
|
+
* ```
|
|
2126
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2127
|
+
*/
|
|
2128
|
+
EmbedEvent["SpotterShareModalConfirmButtonClicked"] = "spotterShareModalConfirmButtonClicked";
|
|
2129
|
+
/**
|
|
2130
|
+
* Emitted when the share modal is dismissed via the Cancel button.
|
|
2131
|
+
* @example
|
|
2132
|
+
* ```js
|
|
2133
|
+
* spotterEmbed.on(EmbedEvent.SpotterShareModalCancelButtonClicked, (payload) => {
|
|
2134
|
+
* // payload: { convId: string }
|
|
2135
|
+
* })
|
|
2136
|
+
* ```
|
|
2137
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2138
|
+
*/
|
|
2139
|
+
EmbedEvent["SpotterShareModalCancelButtonClicked"] = "spotterShareModalCancelButtonClicked";
|
|
2140
|
+
/**
|
|
2141
|
+
* Emitted when a recipient leaves the read-only shared view via the Exit
|
|
2142
|
+
* button.
|
|
2143
|
+
* @example
|
|
2144
|
+
* ```js
|
|
2145
|
+
* spotterEmbed.on(EmbedEvent.SpotterSharedConversationExitButtonClicked, (payload) => {
|
|
2146
|
+
* // payload: { convId: string }
|
|
2147
|
+
* })
|
|
2148
|
+
* ```
|
|
2149
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2150
|
+
*/
|
|
2151
|
+
EmbedEvent["SpotterSharedConversationExitButtonClicked"] = "spotterSharedConversationExitButtonClicked";
|
|
2152
|
+
/**
|
|
2153
|
+
* Emitted when a Spotter conversation is pinned.
|
|
2154
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
2155
|
+
* @example
|
|
2156
|
+
* ```js
|
|
2157
|
+
* spotterEmbed.on(EmbedEvent.SpotterConversationPinned, (payload) => {
|
|
2158
|
+
* console.log('Conversation pinned', payload);
|
|
2159
|
+
* // payload: { conversationId: string, pinnedAt: string (ISO 8601) }
|
|
2160
|
+
* })
|
|
2161
|
+
* ```
|
|
2162
|
+
*/
|
|
2163
|
+
EmbedEvent["SpotterConversationPinned"] = "spotterConversationPinned";
|
|
2164
|
+
/**
|
|
2165
|
+
* Emitted when a Spotter conversation is unpinned.
|
|
2166
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
2167
|
+
* @example
|
|
2168
|
+
* ```js
|
|
2169
|
+
* spotterEmbed.on(EmbedEvent.SpotterConversationUnpinned, (payload) => {
|
|
2170
|
+
* console.log('Conversation unpinned', payload);
|
|
2171
|
+
* // payload: { conversationId: string, unpinnedAt: string (ISO 8601) }
|
|
2172
|
+
* })
|
|
2173
|
+
* ```
|
|
2174
|
+
*/
|
|
2175
|
+
EmbedEvent["SpotterConversationUnpinned"] = "spotterConversationUnpinned";
|
|
1997
2176
|
/**
|
|
1998
2177
|
* Emitted when a Spotter conversation is selected/clicked.
|
|
1999
2178
|
* @example
|
|
@@ -2006,6 +2185,30 @@
|
|
|
2006
2185
|
* @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
|
|
2007
2186
|
*/
|
|
2008
2187
|
EmbedEvent["SpotterConversationSelected"] = "spotterConversationSelected";
|
|
2188
|
+
/**
|
|
2189
|
+
* Emitted when the Spotter agent finishes streaming/rendering a response.
|
|
2190
|
+
* Includes the conversation and message identifiers so the host app can
|
|
2191
|
+
* fetch the full conversation history via the REST API if needed.
|
|
2192
|
+
*
|
|
2193
|
+
* The payload data has the shape `{ convId: string, messageId: string }`.
|
|
2194
|
+
*
|
|
2195
|
+
* Works with SpotterEmbed as well as AppEmbed (when Spotter is reached
|
|
2196
|
+
* inside the full application).
|
|
2197
|
+
* @example
|
|
2198
|
+
* ```js
|
|
2199
|
+
* spotterEmbed.on(EmbedEvent.SpotterResponseComplete, (payload) => {
|
|
2200
|
+
* console.log('Spotter response complete', payload);
|
|
2201
|
+
* })
|
|
2202
|
+
* ```
|
|
2203
|
+
* @example
|
|
2204
|
+
* ```js
|
|
2205
|
+
* appEmbed.on(EmbedEvent.SpotterResponseComplete, (payload) => {
|
|
2206
|
+
* console.log('Spotter response complete', payload);
|
|
2207
|
+
* })
|
|
2208
|
+
* ```
|
|
2209
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
2210
|
+
*/
|
|
2211
|
+
EmbedEvent["SpotterResponseComplete"] = "spotterResponseComplete";
|
|
2009
2212
|
/**
|
|
2010
2213
|
* @hidden
|
|
2011
2214
|
* Emitted when the auth token is about to get expired and needs to be refreshed.
|
|
@@ -2360,6 +2563,7 @@
|
|
|
2360
2563
|
* const url = await appEmbed.trigger(HostEvent.GetIframeUrl, {}, ContextType.Answer);
|
|
2361
2564
|
* console.log("iFrameURL", url);
|
|
2362
2565
|
* ```
|
|
2566
|
+
* @returns iframeUrl - The URL currently loaded in the embedded iframe.
|
|
2363
2567
|
* @version SDK: 1.35.0 | ThoughtSpot: 10.4.0.cl
|
|
2364
2568
|
*/
|
|
2365
2569
|
HostEvent["GetIframeUrl"] = "GetIframeUrl";
|
|
@@ -2486,6 +2690,17 @@
|
|
|
2486
2690
|
* name: string,
|
|
2487
2691
|
* type: ATTRIBUTE/MEASURE,
|
|
2488
2692
|
* dataType: INT64/CHAR/DATE }
|
|
2693
|
+
*
|
|
2694
|
+
* `applicability` - Optional. Scopes the filter to a specific target,
|
|
2695
|
+
* for example, a single Liveboard tab, so the panel for the correct
|
|
2696
|
+
* scoped filter is opened. Available from SDK: 1.53.0 |
|
|
2697
|
+
* ThoughtSpot: 26.10.0.cl. Includes the following attributes:
|
|
2698
|
+
*
|
|
2699
|
+
* - `level`: The scope of the filter: `LIVEBOARD`, `TAB`, or `GROUP`.
|
|
2700
|
+
* - `targetId`: The GUID of the target, for example, the tab GUID.
|
|
2701
|
+
* Required when `level` is `TAB` or `GROUP`. Do not pass it when
|
|
2702
|
+
* `level` is `LIVEBOARD`, since the filter applies to the whole
|
|
2703
|
+
* Liveboard. Omitting `applicability` targets the `LIVEBOARD` level.
|
|
2489
2704
|
* @example
|
|
2490
2705
|
* ```js
|
|
2491
2706
|
* searchEmbed.trigger(HostEvent.OpenFilter,
|
|
@@ -2498,6 +2713,14 @@
|
|
|
2498
2713
|
* ```
|
|
2499
2714
|
* @example
|
|
2500
2715
|
* ```js
|
|
2716
|
+
* // Open a filter scoped to a specific Liveboard tab
|
|
2717
|
+
* liveboardEmbed.trigger(HostEvent.OpenFilter, {
|
|
2718
|
+
* column: { columnId: '<column-GUID>' },
|
|
2719
|
+
* applicability: { level: 'TAB', targetId: '<tab-GUID>' }
|
|
2720
|
+
* });
|
|
2721
|
+
* ```
|
|
2722
|
+
* @example
|
|
2723
|
+
* ```js
|
|
2501
2724
|
* // Open filter from search context
|
|
2502
2725
|
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
2503
2726
|
* searchEmbed.trigger(HostEvent.OpenFilter, {
|
|
@@ -2507,6 +2730,73 @@
|
|
|
2507
2730
|
* @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl
|
|
2508
2731
|
*/
|
|
2509
2732
|
HostEvent["OpenFilter"] = "openFilter";
|
|
2733
|
+
/**
|
|
2734
|
+
* Open the add-filter modal of a Liveboard, the same dialog that the
|
|
2735
|
+
* *Add filter* button in the Liveboard edit header opens, so the host
|
|
2736
|
+
* app can start the add-filter flow from its own UI.
|
|
2737
|
+
*
|
|
2738
|
+
* The Liveboard must be in edit mode; the event is ignored otherwise.
|
|
2739
|
+
* Hiding the *Add filter* button with `hiddenActions:
|
|
2740
|
+
* [Action.AddFilter]` does not block this event, but disabling it with
|
|
2741
|
+
* `disabledActions` does.
|
|
2742
|
+
*
|
|
2743
|
+
* Unlike {@link HostEvent.OpenFilter}, which opens the panel of an
|
|
2744
|
+
* existing filter, this event starts the creation of a new filter.
|
|
2745
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
2746
|
+
* @example
|
|
2747
|
+
* ```js
|
|
2748
|
+
* liveboardEmbed.trigger(HostEvent.OpenAddFilterModal);
|
|
2749
|
+
* ```
|
|
2750
|
+
*/
|
|
2751
|
+
HostEvent["OpenAddFilterModal"] = "openAddFilterModal";
|
|
2752
|
+
/**
|
|
2753
|
+
* Open the add-parameter panel of a Liveboard, the same panel that the
|
|
2754
|
+
* *Add parameter* button in the Liveboard edit header opens.
|
|
2755
|
+
* Mirrors {@link HostEvent.OpenAddFilterModal} for parameters.
|
|
2756
|
+
*
|
|
2757
|
+
* The Liveboard must be in edit mode; the event is ignored otherwise.
|
|
2758
|
+
* Hiding the *Add parameter* button with `hiddenActions:
|
|
2759
|
+
* [Action.AddParameter]` does not block this event, but disabling it
|
|
2760
|
+
* with `disabledActions` does.
|
|
2761
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
2762
|
+
* @example
|
|
2763
|
+
* ```js
|
|
2764
|
+
* liveboardEmbed.trigger(HostEvent.OpenAddParameterModal);
|
|
2765
|
+
* ```
|
|
2766
|
+
*/
|
|
2767
|
+
HostEvent["OpenAddParameterModal"] = "openAddParameterModal";
|
|
2768
|
+
/**
|
|
2769
|
+
* Open the parameter panel for a particular parameter on a Liveboard.
|
|
2770
|
+
* Mirrors {@link HostEvent.OpenFilter} for parameters.
|
|
2771
|
+
* @param - Includes the following keys:
|
|
2772
|
+
* - `parameter`: An object identifying the parameter to open, for
|
|
2773
|
+
* example, `{ parameterId: '<parameter-GUID>' }`.
|
|
2774
|
+
* - `applicability`: Optional. Scopes the parameter to a specific target,
|
|
2775
|
+
* for example, a single Liveboard tab, so the panel for the correct
|
|
2776
|
+
* scoped parameter is opened. Includes the following attributes:
|
|
2777
|
+
*
|
|
2778
|
+
* - `level`: The scope of the parameter: `LIVEBOARD`, `TAB`, or `GROUP`.
|
|
2779
|
+
* - `targetId`: The GUID of the target, for example, the tab GUID.
|
|
2780
|
+
* Required when `level` is `TAB` or `GROUP`. Do not pass it when
|
|
2781
|
+
* `level` is `LIVEBOARD`, since the parameter applies to the whole
|
|
2782
|
+
* Liveboard. Omitting `applicability` targets the `LIVEBOARD` level.
|
|
2783
|
+
* @example
|
|
2784
|
+
* ```js
|
|
2785
|
+
* liveboardEmbed.trigger(HostEvent.OpenParameter, {
|
|
2786
|
+
* parameter: { parameterId: '<parameter-GUID>' }
|
|
2787
|
+
* });
|
|
2788
|
+
* ```
|
|
2789
|
+
* @example
|
|
2790
|
+
* ```js
|
|
2791
|
+
* // Open a parameter scoped to a specific group
|
|
2792
|
+
* liveboardEmbed.trigger(HostEvent.OpenParameter, {
|
|
2793
|
+
* parameter: { parameterId: '<parameter-GUID>' },
|
|
2794
|
+
* applicability: { level: 'GROUP', targetId: '<group-GUID>' }
|
|
2795
|
+
* });
|
|
2796
|
+
* ```
|
|
2797
|
+
* @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
|
|
2798
|
+
*/
|
|
2799
|
+
HostEvent["OpenParameter"] = "openParameter";
|
|
2510
2800
|
/**
|
|
2511
2801
|
* Add columns to the current search query.
|
|
2512
2802
|
* @param - { columnIds: string[] }
|
|
@@ -2556,6 +2846,10 @@
|
|
|
2556
2846
|
* liveboardEmbed.trigger(HostEvent.getExportRequestForCurrentPinboard).then(
|
|
2557
2847
|
* data=>console.log(data))
|
|
2558
2848
|
* ```
|
|
2849
|
+
* @returns data - Object with a `v2Content` string: the export request
|
|
2850
|
+
* payload for the current Liveboard.
|
|
2851
|
+
* @returns type - The passthrough event name,
|
|
2852
|
+
* `getExportRequestForCurrentPinboard`.
|
|
2559
2853
|
* @version SDK: 1.13.0 | ThoughtSpot: 8.5.0.cl, 8.8.1.sw
|
|
2560
2854
|
*/
|
|
2561
2855
|
HostEvent["getExportRequestForCurrentPinboard"] = "getExportRequestForCurrentPinboard";
|
|
@@ -2658,6 +2952,9 @@
|
|
|
2658
2952
|
* }, ContextType.Spotter);
|
|
2659
2953
|
* ```
|
|
2660
2954
|
*
|
|
2955
|
+
* @returns liveboardId - GUID of the Liveboard the Answer was pinned to.
|
|
2956
|
+
* @returns tabId - GUID of the tab within that Liveboard.
|
|
2957
|
+
* @returns vizId - GUID of the newly created visualization.
|
|
2661
2958
|
* @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
|
|
2662
2959
|
*/
|
|
2663
2960
|
HostEvent["Pin"] = "pin";
|
|
@@ -2696,13 +2993,13 @@
|
|
|
2696
2993
|
* Trigger the **Manage schedule** action on an embedded Liveboard
|
|
2697
2994
|
* @example
|
|
2698
2995
|
* ```js
|
|
2699
|
-
* liveboardEmbed.trigger(HostEvent.
|
|
2996
|
+
* liveboardEmbed.trigger(HostEvent.SchedulesList)
|
|
2700
2997
|
* ```
|
|
2701
2998
|
* @example
|
|
2702
2999
|
* ```js
|
|
2703
3000
|
* // Manage schedules from liveboard context
|
|
2704
3001
|
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
2705
|
-
* liveboardEmbed.trigger(HostEvent.
|
|
3002
|
+
* liveboardEmbed.trigger(HostEvent.SchedulesList, {}, ContextType.Liveboard);
|
|
2706
3003
|
* ```
|
|
2707
3004
|
* @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
|
|
2708
3005
|
*/
|
|
@@ -3147,6 +3444,7 @@
|
|
|
3147
3444
|
* console.log(tml.answer);
|
|
3148
3445
|
* });
|
|
3149
3446
|
* ```
|
|
3447
|
+
* @returns The TML representation of the current Answer, as an object.
|
|
3150
3448
|
* @version SDK: 1.18.0 | ThoughtSpot: 8.10.0.cl, 9.0.1.sw
|
|
3151
3449
|
* @important
|
|
3152
3450
|
*/
|
|
@@ -3571,6 +3869,14 @@
|
|
|
3571
3869
|
/**
|
|
3572
3870
|
* Get details of filters applied on the Liveboard.
|
|
3573
3871
|
* Returns arrays containing Liveboard filter and runtime filter elements.
|
|
3872
|
+
* Each Liveboard filter includes an optional `applicability` attribute
|
|
3873
|
+
* indicating the scope of the filter. It contains a `level`
|
|
3874
|
+
* (`LIVEBOARD`, `TAB`, or `GROUP`) and, when `level` is `TAB` or
|
|
3875
|
+
* `GROUP`, a `targetId` with the GUID of the target. At `LIVEBOARD`
|
|
3876
|
+
* level there is no `targetId`, since the filter applies to the
|
|
3877
|
+
* whole Liveboard.
|
|
3878
|
+
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
3879
|
+
* ThoughtSpot: 26.10.0.cl.
|
|
3574
3880
|
* @example
|
|
3575
3881
|
* ```js
|
|
3576
3882
|
* const data = await liveboardEmbed.trigger(HostEvent.GetFilters);
|
|
@@ -3583,6 +3889,8 @@
|
|
|
3583
3889
|
* const data = await liveboardEmbed.trigger(HostEvent.GetFilters, {}, ContextType.Liveboard);
|
|
3584
3890
|
* console.log('filters', data);
|
|
3585
3891
|
* ```
|
|
3892
|
+
* @returns liveboardFilters - Filters applied on the Liveboard.
|
|
3893
|
+
* @returns runtimeFilters - Runtime filters applied on the Liveboard.
|
|
3586
3894
|
* @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
|
|
3587
3895
|
*/
|
|
3588
3896
|
HostEvent["GetFilters"] = "getFilters";
|
|
@@ -3610,6 +3918,16 @@
|
|
|
3610
3918
|
*
|
|
3611
3919
|
* `type` - To update filters for date time, specify the date format type.
|
|
3612
3920
|
* For more information and examples, see link:https://developers.thoughtspot.com/docs/embed-liveboard#_date_filters[Date filters].
|
|
3921
|
+
*
|
|
3922
|
+
* `applicability` - Optional. Scopes the filter to a specific target,
|
|
3923
|
+
* for example, a single Liveboard tab. Available from SDK: 1.53.0 |
|
|
3924
|
+
* ThoughtSpot: 26.10.0.cl. Includes the following attributes:
|
|
3925
|
+
*
|
|
3926
|
+
* - `level`: The scope of the filter: `LIVEBOARD`, `TAB`, or `GROUP`.
|
|
3927
|
+
* - `targetId`: The GUID of the target, for example, the tab GUID.
|
|
3928
|
+
* Required when `level` is `TAB` or `GROUP`. Do not pass it when
|
|
3929
|
+
* `level` is `LIVEBOARD`, since the filter applies to the whole
|
|
3930
|
+
* Liveboard.
|
|
3613
3931
|
* @example
|
|
3614
3932
|
* ```js
|
|
3615
3933
|
*
|
|
@@ -3686,6 +4004,21 @@
|
|
|
3686
4004
|
* }
|
|
3687
4005
|
* }, ContextType.Liveboard);
|
|
3688
4006
|
* ```
|
|
4007
|
+
* @example
|
|
4008
|
+
* ```js
|
|
4009
|
+
* // Scope the filter to a specific Liveboard tab
|
|
4010
|
+
* liveboardEmbed.trigger(HostEvent.UpdateFilters, {
|
|
4011
|
+
* filter: {
|
|
4012
|
+
* column: "item type",
|
|
4013
|
+
* oper: "IN",
|
|
4014
|
+
* values: ["bags", "shirts"],
|
|
4015
|
+
* applicability: {
|
|
4016
|
+
* level: "TAB",
|
|
4017
|
+
* targetId: "e0836cad-4fdf-42d4-bd97-567a6b2a6058"
|
|
4018
|
+
* }
|
|
4019
|
+
* }
|
|
4020
|
+
* });
|
|
4021
|
+
* ```
|
|
3689
4022
|
* @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
|
|
3690
4023
|
*/
|
|
3691
4024
|
HostEvent["UpdateFilters"] = "updateFilters";
|
|
@@ -3707,9 +4040,37 @@
|
|
|
3707
4040
|
* console.log('tabs', tabDetails);
|
|
3708
4041
|
* });
|
|
3709
4042
|
* ```
|
|
4043
|
+
* @returns orderedTabIds - Tab GUIDs in the order they appear.
|
|
4044
|
+
* @returns numberOfTabs - Total number of tabs on the Liveboard.
|
|
4045
|
+
* @returns Tabs - Tab details, each with at least `id` and `name`.
|
|
3710
4046
|
* @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl
|
|
3711
4047
|
*/
|
|
3712
4048
|
HostEvent["GetTabs"] = "getTabs";
|
|
4049
|
+
/**
|
|
4050
|
+
* Get group details for the current Liveboard.
|
|
4051
|
+
* Mirrors {@link HostEvent.GetTabs} for filter/parameter groups.
|
|
4052
|
+
* @example
|
|
4053
|
+
* ```js
|
|
4054
|
+
* liveboardEmbed.trigger(HostEvent.GetGroups).then((groupDetails) => {
|
|
4055
|
+
* console.log(
|
|
4056
|
+
* groupDetails // GroupDetails of current Liveboard
|
|
4057
|
+
* );
|
|
4058
|
+
* })
|
|
4059
|
+
* ```
|
|
4060
|
+
* @example
|
|
4061
|
+
* ```js
|
|
4062
|
+
* // Get groups from liveboard context
|
|
4063
|
+
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
4064
|
+
* liveboardEmbed.trigger(HostEvent.GetGroups, {}, ContextType.Liveboard).then((groupDetails) => {
|
|
4065
|
+
* console.log('groups', groupDetails);
|
|
4066
|
+
* });
|
|
4067
|
+
* ```
|
|
4068
|
+
* @returns orderedGroupIds - Group GUIDs in the order they appear.
|
|
4069
|
+
* @returns numberOfGroups - Total number of groups on the Liveboard.
|
|
4070
|
+
* @returns Groups - Group details, each with at least `id` and `name`.
|
|
4071
|
+
* @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
|
|
4072
|
+
*/
|
|
4073
|
+
HostEvent["GetGroups"] = "getGroups";
|
|
3713
4074
|
/**
|
|
3714
4075
|
* Set the visible tabs on a Liveboard.
|
|
3715
4076
|
* @param - an array of ids of tabs to show, the IDs not passed
|
|
@@ -3781,6 +4142,9 @@
|
|
|
3781
4142
|
* // Alternative direct usage (not recommended)
|
|
3782
4143
|
* const {session} = await embed.trigger( HostEvent.GetAnswerSession )
|
|
3783
4144
|
* ```
|
|
4145
|
+
* @returns session - Session identifier for the Answer, for use with the
|
|
4146
|
+
* `AnswerService`.
|
|
4147
|
+
* @returns embedAnswerData - Data backing the Answer, when available.
|
|
3784
4148
|
* @version SDK: 1.26.0 | ThoughtSpot: 9.10.0.cl, 10.1.0.sw
|
|
3785
4149
|
*/
|
|
3786
4150
|
HostEvent["GetAnswerSession"] = "getAnswerSession";
|
|
@@ -3837,6 +4201,15 @@
|
|
|
3837
4201
|
* - `name`: Name of the parameter.
|
|
3838
4202
|
* - `value`: The value to set for the parameter.
|
|
3839
4203
|
* - `isVisibleToUser`: Optional. To control the visibility of the parameter chip.
|
|
4204
|
+
* - `applicability`: Optional. Scopes the parameter to a specific target,
|
|
4205
|
+
* for example, a single Liveboard tab. Available from SDK: 1.53.0 |
|
|
4206
|
+
* ThoughtSpot: 26.10.0.cl. Includes the following attributes:
|
|
4207
|
+
*
|
|
4208
|
+
* - `level`: The scope of the parameter: `LIVEBOARD`, `TAB`, or `GROUP`.
|
|
4209
|
+
* - `targetId`: The GUID of the target, for example, the tab GUID.
|
|
4210
|
+
* Required when `level` is `TAB` or `GROUP`. Do not pass it when
|
|
4211
|
+
* `level` is `LIVEBOARD`, since the parameter applies to the whole
|
|
4212
|
+
* Liveboard.
|
|
3840
4213
|
*
|
|
3841
4214
|
* @example
|
|
3842
4215
|
* ```js
|
|
@@ -3848,6 +4221,18 @@
|
|
|
3848
4221
|
* ```
|
|
3849
4222
|
* @example
|
|
3850
4223
|
* ```js
|
|
4224
|
+
* // Scope the parameter to a specific Liveboard tab
|
|
4225
|
+
* liveboardEmbed.trigger(HostEvent.UpdateParameters, [{
|
|
4226
|
+
* name: "Integer Range Param",
|
|
4227
|
+
* value: 10,
|
|
4228
|
+
* applicability: {
|
|
4229
|
+
* level: "TAB",
|
|
4230
|
+
* targetId: "e0836cad-4fdf-42d4-bd97-567a6b2a6058"
|
|
4231
|
+
* }
|
|
4232
|
+
* }])
|
|
4233
|
+
* ```
|
|
4234
|
+
* @example
|
|
4235
|
+
* ```js
|
|
3851
4236
|
* // Update parameters from liveboard context
|
|
3852
4237
|
* import { ContextType } from '@thoughtspot/visual-embed-sdk';
|
|
3853
4238
|
* liveboardEmbed.trigger(HostEvent.UpdateParameters, [{
|
|
@@ -3861,6 +4246,14 @@
|
|
|
3861
4246
|
HostEvent["UpdateParameters"] = "UpdateParameters";
|
|
3862
4247
|
/**
|
|
3863
4248
|
* Triggers GetParameters to fetch the runtime Parameters.
|
|
4249
|
+
* Each parameter includes an optional `applicability` attribute
|
|
4250
|
+
* indicating the scope of the parameter. It contains a `level`
|
|
4251
|
+
* (`LIVEBOARD`, `TAB`, or `GROUP`) and, when `level` is `TAB` or
|
|
4252
|
+
* `GROUP`, a `targetId` with the GUID of the target. At `LIVEBOARD`
|
|
4253
|
+
* level there is no `targetId`, since the parameter applies to the
|
|
4254
|
+
* whole Liveboard.
|
|
4255
|
+
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
4256
|
+
* ThoughtSpot: 26.10.0.cl.
|
|
3864
4257
|
* @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
|
|
3865
4258
|
* ```js
|
|
3866
4259
|
* liveboardEmbed.trigger(HostEvent.GetParameters).then((parameter) => {
|
|
@@ -3885,12 +4278,16 @@
|
|
|
3885
4278
|
* console.log('parameters', parameters);
|
|
3886
4279
|
* });
|
|
3887
4280
|
* ```
|
|
4281
|
+
* @returns parameters - Parameters currently applied on the Liveboard.
|
|
3888
4282
|
* @version SDK: 1.29.0 | ThoughtSpot: 10.1.0.cl, 10.1.0.sw
|
|
3889
4283
|
*/
|
|
3890
4284
|
HostEvent["GetParameters"] = "GetParameters";
|
|
3891
4285
|
/**
|
|
3892
4286
|
* Triggers an event to update a personalized view of a Liveboard.
|
|
3893
|
-
* This event is deprecated. Use {@link HostEvent.
|
|
4287
|
+
* This event is deprecated. Use {@link HostEvent.SelectPersonalizedView} instead,
|
|
4288
|
+
* which additionally accepts a `viewName`, resets to the original view when
|
|
4289
|
+
* called with an empty payload, and reports an error when a named view
|
|
4290
|
+
* cannot be found.
|
|
3894
4291
|
* ```js
|
|
3895
4292
|
* liveboardEmbed.trigger(HostEvent.UpdatePersonalisedView, {viewId: '1234'})
|
|
3896
4293
|
* ```
|
|
@@ -3908,10 +4305,15 @@
|
|
|
3908
4305
|
HostEvent["UpdatePersonalisedView"] = "UpdatePersonalisedView";
|
|
3909
4306
|
/**
|
|
3910
4307
|
* Triggers an event to update a personalized view of a Liveboard.
|
|
4308
|
+
* This event is deprecated. Use {@link HostEvent.SelectPersonalizedView} instead,
|
|
4309
|
+
* which additionally accepts a `viewName`, resets to the original view when
|
|
4310
|
+
* called with an empty payload, and reports an error when a named view
|
|
4311
|
+
* cannot be found.
|
|
3911
4312
|
* ```js
|
|
3912
4313
|
* liveboardEmbed.trigger(HostEvent.UpdatePersonalisedView, {viewId: '1234'})
|
|
3913
4314
|
* ```
|
|
3914
4315
|
* @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
|
|
4316
|
+
* @deprecated SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
|
|
3915
4317
|
*/
|
|
3916
4318
|
HostEvent["UpdatePersonalizedView"] = "UpdatePersonalisedView";
|
|
3917
4319
|
/**
|
|
@@ -4014,6 +4416,10 @@
|
|
|
4014
4416
|
* description: "Generated from Spotter"
|
|
4015
4417
|
* }, ContextType.Spotter);
|
|
4016
4418
|
* ```
|
|
4419
|
+
* @returns answerId - GUID of the saved Answer.
|
|
4420
|
+
* @returns saveResponse - Raw response from the save operation.
|
|
4421
|
+
* @returns shareResponse - Raw response from the share operation, when the
|
|
4422
|
+
* Answer was also made discoverable.
|
|
4017
4423
|
* @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
|
|
4018
4424
|
*/
|
|
4019
4425
|
HostEvent["SaveAnswer"] = "saveAnswer";
|
|
@@ -4127,6 +4533,36 @@
|
|
|
4127
4533
|
* @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
|
|
4128
4534
|
*/
|
|
4129
4535
|
HostEvent["ResetSpotterConversation"] = "ResetSpotterConversation";
|
|
4536
|
+
/**
|
|
4537
|
+
* Opens the Spotter share-conversation modal for the given conversation.
|
|
4538
|
+
* `conversationId` is **mandatory** — you must pass the id of the
|
|
4539
|
+
* conversation to share. Also no-op when sharing is disabled
|
|
4540
|
+
* (enableShareConversation off) or when already in the read-only shared view.
|
|
4541
|
+
* @example
|
|
4542
|
+
* ```js
|
|
4543
|
+
* spotterEmbed.trigger(HostEvent.ShareSpotterConversation, { conversationId: 'abc' });
|
|
4544
|
+
* ```
|
|
4545
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
4546
|
+
*/
|
|
4547
|
+
HostEvent["ShareSpotterConversation"] = "ShareSpotterConversation";
|
|
4548
|
+
/**
|
|
4549
|
+
* Closes the Spotter share-conversation modal. No-op if none is open.
|
|
4550
|
+
* @example
|
|
4551
|
+
* ```js
|
|
4552
|
+
* spotterEmbed.trigger(HostEvent.CloseSpotterShareConversation);
|
|
4553
|
+
* ```
|
|
4554
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
4555
|
+
*/
|
|
4556
|
+
HostEvent["CloseSpotterShareConversation"] = "CloseSpotterShareConversation";
|
|
4557
|
+
/**
|
|
4558
|
+
* Exits the read-only shared-conversation view.
|
|
4559
|
+
* @example
|
|
4560
|
+
* ```js
|
|
4561
|
+
* spotterEmbed.trigger(HostEvent.ExitSpotterSharedConversation);
|
|
4562
|
+
* ```
|
|
4563
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
4564
|
+
*/
|
|
4565
|
+
HostEvent["ExitSpotterSharedConversation"] = "ExitSpotterSharedConversation";
|
|
4130
4566
|
/**
|
|
4131
4567
|
* Deletes the last prompt in spotter embed.
|
|
4132
4568
|
* @example
|
|
@@ -4222,6 +4658,41 @@
|
|
|
4222
4658
|
* @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
|
|
4223
4659
|
*/
|
|
4224
4660
|
HostEvent["StartNewSpotterConversation"] = "StartNewSpotterConversation";
|
|
4661
|
+
/**
|
|
4662
|
+
* Pins a saved Spotter conversation so it floats to the top of the past
|
|
4663
|
+
* conversations sidebar. The `conversationId` of the conversation to pin is
|
|
4664
|
+
* required.
|
|
4665
|
+
*
|
|
4666
|
+
* This feature is available only when chat history is enabled on your ThoughtSpot
|
|
4667
|
+
* instance. Contact your admin or ThoughtSpot Support to enable chat history on your
|
|
4668
|
+
* instance.
|
|
4669
|
+
*
|
|
4670
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
4671
|
+
* @example
|
|
4672
|
+
* ```js
|
|
4673
|
+
* spotterEmbed.trigger(HostEvent.PinSpotterConversation, {
|
|
4674
|
+
* conversationId: '<conversation-id>',
|
|
4675
|
+
* });
|
|
4676
|
+
* ```
|
|
4677
|
+
*/
|
|
4678
|
+
HostEvent["PinSpotterConversation"] = "PinSpotterConversation";
|
|
4679
|
+
/**
|
|
4680
|
+
* Unpins a previously pinned Spotter conversation. The `conversationId` of the
|
|
4681
|
+
* conversation to unpin is required.
|
|
4682
|
+
*
|
|
4683
|
+
* This feature is available only when chat history is enabled on your ThoughtSpot
|
|
4684
|
+
* instance. Contact your admin or ThoughtSpot Support to enable chat history on your
|
|
4685
|
+
* instance.
|
|
4686
|
+
*
|
|
4687
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
4688
|
+
* @example
|
|
4689
|
+
* ```js
|
|
4690
|
+
* spotterEmbed.trigger(HostEvent.UnpinSpotterConversation, {
|
|
4691
|
+
* conversationId: '<conversation-id>',
|
|
4692
|
+
* });
|
|
4693
|
+
* ```
|
|
4694
|
+
*/
|
|
4695
|
+
HostEvent["UnpinSpotterConversation"] = "UnpinSpotterConversation";
|
|
4225
4696
|
/**
|
|
4226
4697
|
* @hidden
|
|
4227
4698
|
* Get the current context of the embedded page.
|
|
@@ -4430,6 +4901,7 @@
|
|
|
4430
4901
|
Param["NumberFormatLocale"] = "numberFormatLocale";
|
|
4431
4902
|
Param["CurrencyFormat"] = "currencyFormat";
|
|
4432
4903
|
Param["Enable2ColumnLayout"] = "enable2ColumnLayout";
|
|
4904
|
+
Param["IsLiveboardAlwaysOn12ColLayout"] = "isLiveboardAlwaysOn12ColLayout";
|
|
4433
4905
|
Param["IsFullAppEmbed"] = "isFullAppEmbed";
|
|
4434
4906
|
Param["IsOnBeforeGetVizDataInterceptEnabled"] = "isOnBeforeGetVizDataInterceptEnabled";
|
|
4435
4907
|
Param["FocusSearchBarOnRender"] = "focusSearchBarOnRender";
|
|
@@ -4443,6 +4915,7 @@
|
|
|
4443
4915
|
Param["SpotterEnabled"] = "isSpotterExperienceEnabled";
|
|
4444
4916
|
Param["IsUnifiedSearchExperienceEnabled"] = "isUnifiedSearchExperienceEnabled";
|
|
4445
4917
|
Param["OverrideOrgId"] = "orgId";
|
|
4918
|
+
Param["OverrideHistoryState"] = "overrideHistoryState";
|
|
4446
4919
|
Param["OauthPollingInterval"] = "oAuthPollingInterval";
|
|
4447
4920
|
Param["IsForceRedirect"] = "isForceRedirect";
|
|
4448
4921
|
Param["DataSourceId"] = "dataSourceId";
|
|
@@ -4452,6 +4925,7 @@
|
|
|
4452
4925
|
Param["PrimaryAction"] = "primaryAction";
|
|
4453
4926
|
Param["isSpotterAgentEmbed"] = "isSpotterAgentEmbed";
|
|
4454
4927
|
Param["IsLiveboardStylingAndGroupingEnabled"] = "isLiveboardStylingAndGroupingEnabled";
|
|
4928
|
+
Param["LiveboardGutter"] = "liveboardGutter";
|
|
4455
4929
|
Param["IsLazyLoadingForEmbedEnabled"] = "isLazyLoadingForEmbedEnabled";
|
|
4456
4930
|
Param["RootMarginForLazyLoad"] = "rootMarginForLazyLoad";
|
|
4457
4931
|
Param["isPNGInScheduledEmailsEnabled"] = "isPNGInScheduledEmailsEnabled";
|
|
@@ -4460,9 +4934,12 @@
|
|
|
4460
4934
|
Param["isGranularXLSXCSVSchedulesEnabled"] = "isGranularXLSXCSVSchedulesEnabled";
|
|
4461
4935
|
Param["isSendNowLiveboardSchedulingEnabled"] = "isSendNowLiveboardSchedulingEnabled";
|
|
4462
4936
|
Param["isCentralizedLiveboardFilterUXEnabled"] = "isCentralizedLiveboardFilterUXEnabled";
|
|
4937
|
+
Param["isScopedLiveboardFilteringEnabled"] = "isScopedLiveboardFilteringEnabled";
|
|
4463
4938
|
Param["isLinkParametersEnabled"] = "isLinkParametersEnabled";
|
|
4464
4939
|
Param["EnablePastConversationsSidebar"] = "enablePastConversationsSidebar";
|
|
4465
4940
|
Param["UpdatedSpotterChatPrompt"] = "updatedSpotterChatPrompt";
|
|
4941
|
+
Param["ShowSpotterRadiance"] = "showSpotterRadiance";
|
|
4942
|
+
Param["DefaultQueryMode"] = "defaultQueryMode";
|
|
4466
4943
|
Param["EnableStopAnswerGenerationEmbed"] = "enableStopAnswerGenerationEmbed";
|
|
4467
4944
|
Param["SpotterSidebarTitle"] = "spotterSidebarTitle";
|
|
4468
4945
|
Param["SpotterSidebarDefaultExpanded"] = "spotterSidebarDefaultExpanded";
|
|
@@ -4482,14 +4959,19 @@
|
|
|
4482
4959
|
Param["SpotterFileUploadEnabled"] = "spotterFileUploadEnabled";
|
|
4483
4960
|
Param["SpotterFileUploadFileTypes"] = "spotterFileUploadFileTypes";
|
|
4484
4961
|
Param["IsStarterPromptsEnabled"] = "enableStarterPrompts";
|
|
4962
|
+
Param["UpdatedSpotterExperience"] = "updatedSpotterExperience";
|
|
4963
|
+
Param["SpotterDataSources"] = "spotterDataSources";
|
|
4964
|
+
Param["AnalystId"] = "analystId";
|
|
4965
|
+
Param["OpenSpotterOnLiveboardByDefault"] = "openSpotterOnLiveboardByDefault";
|
|
4485
4966
|
})(Param || (Param = {}));
|
|
4486
4967
|
/**
|
|
4487
4968
|
* ThoughtSpot application pages include actions and menu commands
|
|
4488
4969
|
* for various user-initiated operations. These actions are represented
|
|
4489
4970
|
* as enumeration members in the SDK. To control actions in the embedded view:
|
|
4490
|
-
* - disabledActions — the action is grayed out and still visible, but non-interactive
|
|
4491
|
-
* - hiddenActions — the action is completely removed from
|
|
4492
|
-
* - visibleActions — allowlist, only these actions
|
|
4971
|
+
* - disabledActions — the action is grayed out and still visible, but non-interactive
|
|
4972
|
+
* (user can see but not click). - hiddenActions — the action is completely removed from
|
|
4973
|
+
* the UI (user cannot see it at all). - visibleActions — allowlist, only these actions
|
|
4974
|
+
* are shown; all others are hidden.
|
|
4493
4975
|
*
|
|
4494
4976
|
* Use disabledActions to disable (gray out) an action.
|
|
4495
4977
|
* Use hiddenActions to hide (fully remove) an action.
|
|
@@ -4543,6 +5025,17 @@
|
|
|
4543
5025
|
* ```
|
|
4544
5026
|
*/
|
|
4545
5027
|
Action["SaveAsView"] = "saveAsView";
|
|
5028
|
+
/**
|
|
5029
|
+
* The **EditInputTable** action on a Liveboard
|
|
5030
|
+
* page. Allows users to edit an input table used in an Answer directly from
|
|
5031
|
+
* a Liveboard.
|
|
5032
|
+
* @example
|
|
5033
|
+
* ```js
|
|
5034
|
+
* disabledActions: [Action.EditInputTable]
|
|
5035
|
+
* ```
|
|
5036
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
5037
|
+
*/
|
|
5038
|
+
Action["EditInputTable"] = "editInputTable";
|
|
4546
5039
|
/**
|
|
4547
5040
|
* The **Make a copy** action on a Liveboard or Answer
|
|
4548
5041
|
* page. Creates a copy of the Liveboard.
|
|
@@ -5746,6 +6239,19 @@
|
|
|
5746
6239
|
* @version SDK: 1.36.0 | ThoughtSpot Cloud: 10.6.0.cl
|
|
5747
6240
|
*/
|
|
5748
6241
|
Action["ChangeFilterVisibilityInTab"] = "changeFilterVisibilityInTab";
|
|
6242
|
+
/**
|
|
6243
|
+
* Action ID to show, hide, or disable all filter surfaces on a Liveboard,
|
|
6244
|
+
* including filter, parameter, and cross-filter chips at the liveboard,
|
|
6245
|
+
* tab, and group levels. Parameter and cross-filter chips are hide-only.
|
|
6246
|
+
*
|
|
6247
|
+
* @example
|
|
6248
|
+
* ```js
|
|
6249
|
+
* hiddenActions: [Action.AllLiveboardFilters]
|
|
6250
|
+
* disabledActions: [Action.AllLiveboardFilters]
|
|
6251
|
+
* ```
|
|
6252
|
+
* @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
|
|
6253
|
+
*/
|
|
6254
|
+
Action["AllLiveboardFilters"] = "allLiveboardFilters";
|
|
5749
6255
|
/**
|
|
5750
6256
|
* The **Data model instructions** button on the Spotter interface.
|
|
5751
6257
|
* Allows opening the data model instructions modal.
|
|
@@ -5847,6 +6353,10 @@
|
|
|
5847
6353
|
* The **Add to Coaching** feature allows adding reference questions and
|
|
5848
6354
|
* business terms to improve Spotter’s responses. This feature is generally available
|
|
5849
6355
|
* (GA) from version 26.2.0.cl and enabled by default on embed deployments.
|
|
6356
|
+
*
|
|
6357
|
+
* This action governs both the answer-card **Add to memory** CTA and its
|
|
6358
|
+
* Spotter 3 successor, the response-footer **Remember this** CTA
|
|
6359
|
+
* (they are mutually exclusive).
|
|
5850
6360
|
* @example
|
|
5851
6361
|
* ```js
|
|
5852
6362
|
* hiddenAction: [Action.InConversationTraining]
|
|
@@ -6081,6 +6591,89 @@
|
|
|
6081
6591
|
* @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
|
|
6082
6592
|
*/
|
|
6083
6593
|
Action["SpotterChatRename"] = "spotterChatRename";
|
|
6594
|
+
/**
|
|
6595
|
+
* Controls visibility and disable state of the Spotter conversation Share
|
|
6596
|
+
* button in the chat header. Only takes effect once sharing is enabled
|
|
6597
|
+
* (enableShareConversation on).
|
|
6598
|
+
* @example
|
|
6599
|
+
* ```js
|
|
6600
|
+
* disabledActions: [Action.SpotterShareConversationButtonHeader]
|
|
6601
|
+
* ```
|
|
6602
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6603
|
+
*/
|
|
6604
|
+
Action["SpotterShareConversationButtonHeader"] = "spotterShareConversationButtonHeader";
|
|
6605
|
+
/**
|
|
6606
|
+
* Controls visibility and disable state of the Share item in the Spotter
|
|
6607
|
+
* conversation history (sidebar) edit menu. Independent of the header button
|
|
6608
|
+
* above, so a host can show Share in one entry point and hide it in the other.
|
|
6609
|
+
* @example
|
|
6610
|
+
* ```js
|
|
6611
|
+
* disabledActions: [Action.SpotterShareConversationMenuItemSidebar]
|
|
6612
|
+
* ```
|
|
6613
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6614
|
+
*/
|
|
6615
|
+
Action["SpotterShareConversationMenuItemSidebar"] = "spotterShareConversationMenuItemSidebar";
|
|
6616
|
+
/**
|
|
6617
|
+
* Controls visibility of the entire read-only shared-conversation data-access
|
|
6618
|
+
* banner shown when a recipient opens a shared view. Hide-only.
|
|
6619
|
+
* @example
|
|
6620
|
+
* ```js
|
|
6621
|
+
* hiddenActions: [Action.SpotterSharedConversationBanner]
|
|
6622
|
+
* ```
|
|
6623
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6624
|
+
*/
|
|
6625
|
+
Action["SpotterSharedConversationBanner"] = "spotterSharedConversationBanner";
|
|
6626
|
+
/**
|
|
6627
|
+
* Controls visibility and disable state of the cross/close button on the
|
|
6628
|
+
* read-only shared-conversation data-access banner (keeps the banner itself).
|
|
6629
|
+
* @example
|
|
6630
|
+
* ```js
|
|
6631
|
+
* hiddenActions: [Action.SpotterSharedConversationBannerDismissButton]
|
|
6632
|
+
* ```
|
|
6633
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6634
|
+
*/
|
|
6635
|
+
Action["SpotterSharedConversationBannerDismissButton"] = "spotterSharedConversationBannerDismissButton";
|
|
6636
|
+
/**
|
|
6637
|
+
* Controls visibility and disable state of the Exit button in the read-only
|
|
6638
|
+
* shared-view header. Hiding it does not disable the ExitSpotterSharedConversation
|
|
6639
|
+
* host event.
|
|
6640
|
+
* @example
|
|
6641
|
+
* ```js
|
|
6642
|
+
* hiddenActions: [Action.SpotterSharedConversationExitButton]
|
|
6643
|
+
* ```
|
|
6644
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6645
|
+
*/
|
|
6646
|
+
Action["SpotterSharedConversationExitButton"] = "spotterSharedConversationExitButton";
|
|
6647
|
+
/**
|
|
6648
|
+
* Controls visibility of the share-modal footer note ("Chat will be shared up
|
|
6649
|
+
* to the current moment…"). Hide-only.
|
|
6650
|
+
* @example
|
|
6651
|
+
* ```js
|
|
6652
|
+
* hiddenActions: [Action.SpotterShareUpToCurrentInfo]
|
|
6653
|
+
* ```
|
|
6654
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6655
|
+
*/
|
|
6656
|
+
Action["SpotterShareUpToCurrentInfo"] = "spotterShareUpToCurrentInfo";
|
|
6657
|
+
/**
|
|
6658
|
+
* Controls visibility and disable state of the share-modal "include new
|
|
6659
|
+
* messages since last shared version" checkbox.
|
|
6660
|
+
* @example
|
|
6661
|
+
* ```js
|
|
6662
|
+
* disabledActions: [Action.SpotterShareIncludeNewMessagesCheckbox]
|
|
6663
|
+
* ```
|
|
6664
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6665
|
+
*/
|
|
6666
|
+
Action["SpotterShareIncludeNewMessagesCheckbox"] = "spotterShareIncludeNewMessagesCheckbox";
|
|
6667
|
+
/**
|
|
6668
|
+
* Controls visibility and disable state of the cross on the share-modal
|
|
6669
|
+
* stale-snapshot info banner.
|
|
6670
|
+
* @example
|
|
6671
|
+
* ```js
|
|
6672
|
+
* hiddenActions: [Action.SpotterShareStaleInfoBannerDismissButton]
|
|
6673
|
+
* ```
|
|
6674
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6675
|
+
*/
|
|
6676
|
+
Action["SpotterShareStaleInfoBannerDismissButton"] = "spotterShareStaleInfoBannerDismissButton";
|
|
6084
6677
|
/**
|
|
6085
6678
|
* Controls visibility and disable state of the delete action
|
|
6086
6679
|
* in the Spotter conversation edit menu.
|
|
@@ -6091,6 +6684,16 @@
|
|
|
6091
6684
|
* @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
|
|
6092
6685
|
*/
|
|
6093
6686
|
Action["SpotterChatDelete"] = "spotterChatDelete";
|
|
6687
|
+
/**
|
|
6688
|
+
* Controls visibility and disable state of the pin/unpin action
|
|
6689
|
+
* in the Spotter conversation edit menu.
|
|
6690
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
6691
|
+
* @example
|
|
6692
|
+
* ```js
|
|
6693
|
+
* disabledActions: [Action.SpotterChatPin]
|
|
6694
|
+
* ```
|
|
6695
|
+
*/
|
|
6696
|
+
Action["SpotterChatPin"] = "spotterChatPin";
|
|
6094
6697
|
/**
|
|
6095
6698
|
* Controls visibility and disable state of the documentation/best practices
|
|
6096
6699
|
* link in the Spotter sidebar footer.
|
|
@@ -6134,6 +6737,56 @@
|
|
|
6134
6737
|
* @version SDK: 1.48.0 | ThoughtSpot Cloud: 26.5.0.cl
|
|
6135
6738
|
*/
|
|
6136
6739
|
Action["SpotterChatModeSwitcher"] = "spotterChatModeSwitcher";
|
|
6740
|
+
/**
|
|
6741
|
+
* The **Basic Search** starter prompt pill.
|
|
6742
|
+
*
|
|
6743
|
+
* Starter prompt pills are the row of category buttons shown above the
|
|
6744
|
+
* Spotter chat input before a conversation starts. They give a new user
|
|
6745
|
+
* ready-made questions to click instead of typing one from scratch, and
|
|
6746
|
+
* disappear once the conversation begins. There are three, one per action
|
|
6747
|
+
* below.
|
|
6748
|
+
*
|
|
6749
|
+
* Clicking this pill opens a card of suggested simple questions; picking one
|
|
6750
|
+
* submits it to Spotter right away. Visible by default, and hidden along
|
|
6751
|
+
* with the other pills when the surface itself is off (see
|
|
6752
|
+
* {@link SpotterChatViewConfig.starterPrompts}).
|
|
6753
|
+
* @example
|
|
6754
|
+
* ```js
|
|
6755
|
+
* hiddenActions: [Action.QuickSearchPill]
|
|
6756
|
+
* ```
|
|
6757
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6758
|
+
*/
|
|
6759
|
+
Action["QuickSearchPill"] = "quickSearchPill";
|
|
6760
|
+
/**
|
|
6761
|
+
* The **Deep Analysis** starter prompt pill, next to
|
|
6762
|
+
* {@link Action.QuickSearchPill} above the Spotter chat input.
|
|
6763
|
+
*
|
|
6764
|
+
* Clicking it opens a card of suggested investigative questions ("why did
|
|
6765
|
+
* revenue drop?"). Picking one fills the chat input in Deep Analysis mode
|
|
6766
|
+
* rather than submitting immediately, so the user can edit it first.
|
|
6767
|
+
* Visible by default.
|
|
6768
|
+
* @example
|
|
6769
|
+
* ```js
|
|
6770
|
+
* hiddenActions: [Action.DeepAnalysisPill]
|
|
6771
|
+
* ```
|
|
6772
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6773
|
+
*/
|
|
6774
|
+
Action["DeepAnalysisPill"] = "deepAnalysisPill";
|
|
6775
|
+
/**
|
|
6776
|
+
* The **Data Literacy** starter prompt pill, next to
|
|
6777
|
+
* {@link Action.QuickSearchPill} above the Spotter chat input.
|
|
6778
|
+
*
|
|
6779
|
+
* Unlike the other two pills it opens no card: clicking it submits a prompt
|
|
6780
|
+
* that describes the data the model can answer over, helping a user who does
|
|
6781
|
+
* not yet know what is in the data source. The prompt text always comes from
|
|
6782
|
+
* ThoughtSpot, so only its label is customizable. Visible by default.
|
|
6783
|
+
* @example
|
|
6784
|
+
* ```js
|
|
6785
|
+
* hiddenActions: [Action.DataLiteracyPill]
|
|
6786
|
+
* ```
|
|
6787
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
6788
|
+
*/
|
|
6789
|
+
Action["DataLiteracyPill"] = "dataLiteracyPill";
|
|
6137
6790
|
/**
|
|
6138
6791
|
* The **Include current period** checkbox for date filters.
|
|
6139
6792
|
* Controls the visibility and availability of the option to include
|
|
@@ -6259,29 +6912,61 @@
|
|
|
6259
6912
|
* disabledActions: [Action.SpotterAnalystDelete]
|
|
6260
6913
|
* ```
|
|
6261
6914
|
*/
|
|
6262
|
-
Action["SpotterAnalystDelete"] = "spotterAnalystDelete";
|
|
6915
|
+
Action["SpotterAnalystDelete"] = "spotterAnalystDelete";
|
|
6916
|
+
/**
|
|
6917
|
+
* Controls visibility and disable state of the make a copy action
|
|
6918
|
+
* in the Spotter Analyst interface.
|
|
6919
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
|
|
6920
|
+
* @example
|
|
6921
|
+
* ```js
|
|
6922
|
+
* hiddenActions: [Action.SpotterAnalystMakeACopy]
|
|
6923
|
+
* disabledActions: [Action.SpotterAnalystMakeACopy]
|
|
6924
|
+
* ```
|
|
6925
|
+
*/
|
|
6926
|
+
Action["SpotterAnalystMakeACopy"] = "spotterAnalystMakeACopy";
|
|
6927
|
+
/**
|
|
6928
|
+
* Controls visibility and disable state of the sidebar
|
|
6929
|
+
* in the Spotter Analyst interface.
|
|
6930
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
|
|
6931
|
+
* @example
|
|
6932
|
+
* ```js
|
|
6933
|
+
* hiddenActions: [Action.SpotterAnalystSidebar]
|
|
6934
|
+
* disabledActions: [Action.SpotterAnalystSidebar]
|
|
6935
|
+
* ```
|
|
6936
|
+
*/
|
|
6937
|
+
Action["SpotterAnalystSidebar"] = "spotterAnalystSidebar";
|
|
6938
|
+
/**
|
|
6939
|
+
* Controls visibility and disable state of the analyst list
|
|
6940
|
+
* ("Show all") in the Spotter Analyst interface.
|
|
6941
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
6942
|
+
* @example
|
|
6943
|
+
* ```js
|
|
6944
|
+
* hiddenActions: [Action.SpotterAnalystList]
|
|
6945
|
+
* disabledActions: [Action.SpotterAnalystList]
|
|
6946
|
+
* ```
|
|
6947
|
+
*/
|
|
6948
|
+
Action["SpotterAnalystList"] = "spotterAnalystList";
|
|
6263
6949
|
/**
|
|
6264
|
-
* Controls visibility and disable state of the
|
|
6265
|
-
* in the Spotter Analyst interface.
|
|
6266
|
-
* @version SDK: 1.
|
|
6950
|
+
* Controls visibility and disable state of the default Spotter analyst
|
|
6951
|
+
* entry in the Spotter Analyst interface.
|
|
6952
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
6267
6953
|
* @example
|
|
6268
6954
|
* ```js
|
|
6269
|
-
* hiddenActions: [Action.
|
|
6270
|
-
* disabledActions: [Action.
|
|
6955
|
+
* hiddenActions: [Action.SpotterDefaultAnalyst]
|
|
6956
|
+
* disabledActions: [Action.SpotterDefaultAnalyst]
|
|
6271
6957
|
* ```
|
|
6272
6958
|
*/
|
|
6273
|
-
Action["
|
|
6959
|
+
Action["SpotterDefaultAnalyst"] = "spotterDefaultAnalyst";
|
|
6274
6960
|
/**
|
|
6275
|
-
*
|
|
6276
|
-
*
|
|
6277
|
-
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
|
|
6961
|
+
* The **Spotter** button in the Liveboard header.
|
|
6962
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
6278
6963
|
* @example
|
|
6279
6964
|
* ```js
|
|
6280
|
-
* hiddenActions: [Action.
|
|
6281
|
-
* disabledActions: [Action.
|
|
6965
|
+
* hiddenActions: [Action.SpotterOnLiveboard]
|
|
6966
|
+
* disabledActions: [Action.SpotterOnLiveboard]
|
|
6282
6967
|
* ```
|
|
6283
6968
|
*/
|
|
6284
|
-
Action["
|
|
6969
|
+
Action["SpotterOnLiveboard"] = "spotterOnLiveboard";
|
|
6285
6970
|
})(exports.Action || (exports.Action = {}));
|
|
6286
6971
|
var PrefetchFeatures;
|
|
6287
6972
|
(function (PrefetchFeatures) {
|
|
@@ -6569,6 +7254,8 @@
|
|
|
6569
7254
|
EmbedErrorCodes["UPDATEFILTERS_INVALID_PAYLOAD"] = "UPDATEFILTERS_INVALID_PAYLOAD";
|
|
6570
7255
|
/** DrillDown payload is invalid - missing or malformed points */
|
|
6571
7256
|
EmbedErrorCodes["DRILLDOWN_INVALID_PAYLOAD"] = "DRILLDOWN_INVALID_PAYLOAD";
|
|
7257
|
+
/** UpdateParameters payload is invalid - malformed applicability */
|
|
7258
|
+
EmbedErrorCodes["UPDATEPARAMETERS_INVALID_PAYLOAD"] = "UPDATEPARAMETERS_INVALID_PAYLOAD";
|
|
6572
7259
|
})(EmbedErrorCodes || (EmbedErrorCodes = {}));
|
|
6573
7260
|
/**
|
|
6574
7261
|
* Context types for specifying the page context when triggering host events.
|
|
@@ -6747,7 +7434,7 @@
|
|
|
6747
7434
|
TableContentDensity["Compact"] = "COMPACT";
|
|
6748
7435
|
})(TableContentDensity || (TableContentDensity = {}));
|
|
6749
7436
|
|
|
6750
|
-
var version$1="1.
|
|
7437
|
+
var version$1="1.51.0-test";var pkg = {version:version$1};
|
|
6751
7438
|
|
|
6752
7439
|
const { version } = pkg;
|
|
6753
7440
|
|
|
@@ -6823,7 +7510,6 @@
|
|
|
6823
7510
|
|
|
6824
7511
|
const ERROR_MESSAGE = {
|
|
6825
7512
|
INVALID_THOUGHTSPOT_HOST: 'Error parsing ThoughtSpot host. Please provide a valid URL.',
|
|
6826
|
-
SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND: 'Please select a Model to get started',
|
|
6827
7513
|
LIVEBOARD_VIZ_ID_VALIDATION: 'Please select a Liveboard to embed.',
|
|
6828
7514
|
TRIGGER_TIMED_OUT: 'Trigger timed-out in getting a response',
|
|
6829
7515
|
SEARCHEMBED_BETA_WRANING_MESSAGE: 'SearchEmbed is in Beta in this release.',
|
|
@@ -6854,6 +7540,7 @@
|
|
|
6854
7540
|
INVALID_SPOTTER_DOCUMENTATION_URL: 'Invalid spotterDocumentationUrl. Please provide a valid http or https URL.',
|
|
6855
7541
|
UPDATEFILTERS_INVALID_PAYLOAD: 'UpdateFilters requires a valid filter or filters array. Expected: { filter: { column, oper, values } } or { filters: [{ column, oper, values }, ...] }',
|
|
6856
7542
|
DRILLDOWN_INVALID_PAYLOAD: 'DrillDown requires a valid points object. Expected: { points: { clickedPoint?, selectedPoints? }, autoDrillDown?, vizId? }',
|
|
7543
|
+
UPDATEPARAMETERS_INVALID_PAYLOAD: 'UpdateParameters received an invalid applicability. Expected: { level: LIVEBOARD | TAB | GROUP, targetId } where targetId is required for TAB and GROUP levels',
|
|
6857
7544
|
};
|
|
6858
7545
|
const CUSTOM_ACTIONS_ERROR_MESSAGE = {
|
|
6859
7546
|
INVALID_ACTION_OBJECT: 'Custom Action Validation Error: Invalid action object provided',
|
|
@@ -6972,7 +7659,7 @@
|
|
|
6972
7659
|
* @returns true if the value is a valid CSS margin value, false otherwise
|
|
6973
7660
|
*/
|
|
6974
7661
|
const isValidCssMargin = (value) => {
|
|
6975
|
-
if (isUndefined(value)) {
|
|
7662
|
+
if (isUndefined$1(value)) {
|
|
6976
7663
|
return false;
|
|
6977
7664
|
}
|
|
6978
7665
|
if (typeof value !== 'string') {
|
|
@@ -7181,7 +7868,7 @@
|
|
|
7181
7868
|
element.style.removeProperty(styleProperty);
|
|
7182
7869
|
});
|
|
7183
7870
|
};
|
|
7184
|
-
const isUndefined = (value) => value === undefined;
|
|
7871
|
+
const isUndefined$1 = (value) => value === undefined;
|
|
7185
7872
|
// Return if the value is a string, double or boolean.
|
|
7186
7873
|
const getTypeFromValue = (value) => {
|
|
7187
7874
|
if (typeof value === 'string') {
|
|
@@ -7486,7 +8173,7 @@
|
|
|
7486
8173
|
};
|
|
7487
8174
|
|
|
7488
8175
|
/** Used for built-in method references. */
|
|
7489
|
-
var objectProto$
|
|
8176
|
+
var objectProto$d = Object.prototype;
|
|
7490
8177
|
|
|
7491
8178
|
/**
|
|
7492
8179
|
* Checks if `value` is likely a prototype object.
|
|
@@ -7497,7 +8184,7 @@
|
|
|
7497
8184
|
*/
|
|
7498
8185
|
function isPrototype(value) {
|
|
7499
8186
|
var Ctor = value && value.constructor,
|
|
7500
|
-
proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto$
|
|
8187
|
+
proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto$d;
|
|
7501
8188
|
|
|
7502
8189
|
return value === proto;
|
|
7503
8190
|
}
|
|
@@ -7526,10 +8213,10 @@
|
|
|
7526
8213
|
var _nativeKeys = nativeKeys;
|
|
7527
8214
|
|
|
7528
8215
|
/** Used for built-in method references. */
|
|
7529
|
-
var objectProto$
|
|
8216
|
+
var objectProto$c = Object.prototype;
|
|
7530
8217
|
|
|
7531
8218
|
/** Used to check objects for own properties. */
|
|
7532
|
-
var hasOwnProperty$
|
|
8219
|
+
var hasOwnProperty$b = objectProto$c.hasOwnProperty;
|
|
7533
8220
|
|
|
7534
8221
|
/**
|
|
7535
8222
|
* The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
|
|
@@ -7544,7 +8231,7 @@
|
|
|
7544
8231
|
}
|
|
7545
8232
|
var result = [];
|
|
7546
8233
|
for (var key in Object(object)) {
|
|
7547
|
-
if (hasOwnProperty$
|
|
8234
|
+
if (hasOwnProperty$b.call(object, key) && key != 'constructor') {
|
|
7548
8235
|
result.push(key);
|
|
7549
8236
|
}
|
|
7550
8237
|
}
|
|
@@ -7580,17 +8267,17 @@
|
|
|
7580
8267
|
var _Symbol = Symbol$1;
|
|
7581
8268
|
|
|
7582
8269
|
/** Used for built-in method references. */
|
|
7583
|
-
var objectProto$
|
|
8270
|
+
var objectProto$b = Object.prototype;
|
|
7584
8271
|
|
|
7585
8272
|
/** Used to check objects for own properties. */
|
|
7586
|
-
var hasOwnProperty$
|
|
8273
|
+
var hasOwnProperty$a = objectProto$b.hasOwnProperty;
|
|
7587
8274
|
|
|
7588
8275
|
/**
|
|
7589
8276
|
* Used to resolve the
|
|
7590
8277
|
* [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
|
|
7591
8278
|
* of values.
|
|
7592
8279
|
*/
|
|
7593
|
-
var nativeObjectToString$1 = objectProto$
|
|
8280
|
+
var nativeObjectToString$1 = objectProto$b.toString;
|
|
7594
8281
|
|
|
7595
8282
|
/** Built-in value references. */
|
|
7596
8283
|
var symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;
|
|
@@ -7603,7 +8290,7 @@
|
|
|
7603
8290
|
* @returns {string} Returns the raw `toStringTag`.
|
|
7604
8291
|
*/
|
|
7605
8292
|
function getRawTag(value) {
|
|
7606
|
-
var isOwn = hasOwnProperty$
|
|
8293
|
+
var isOwn = hasOwnProperty$a.call(value, symToStringTag$1),
|
|
7607
8294
|
tag = value[symToStringTag$1];
|
|
7608
8295
|
|
|
7609
8296
|
try {
|
|
@@ -7625,14 +8312,14 @@
|
|
|
7625
8312
|
var _getRawTag = getRawTag;
|
|
7626
8313
|
|
|
7627
8314
|
/** Used for built-in method references. */
|
|
7628
|
-
var objectProto$
|
|
8315
|
+
var objectProto$a = Object.prototype;
|
|
7629
8316
|
|
|
7630
8317
|
/**
|
|
7631
8318
|
* Used to resolve the
|
|
7632
8319
|
* [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
|
|
7633
8320
|
* of values.
|
|
7634
8321
|
*/
|
|
7635
|
-
var nativeObjectToString = objectProto$
|
|
8322
|
+
var nativeObjectToString = objectProto$a.toString;
|
|
7636
8323
|
|
|
7637
8324
|
/**
|
|
7638
8325
|
* Converts `value` to a string using `Object.prototype.toString`.
|
|
@@ -7764,10 +8451,10 @@
|
|
|
7764
8451
|
var _isMasked = isMasked;
|
|
7765
8452
|
|
|
7766
8453
|
/** Used for built-in method references. */
|
|
7767
|
-
var funcProto$
|
|
8454
|
+
var funcProto$2 = Function.prototype;
|
|
7768
8455
|
|
|
7769
8456
|
/** Used to resolve the decompiled source of functions. */
|
|
7770
|
-
var funcToString$
|
|
8457
|
+
var funcToString$2 = funcProto$2.toString;
|
|
7771
8458
|
|
|
7772
8459
|
/**
|
|
7773
8460
|
* Converts `func` to its source code.
|
|
@@ -7779,7 +8466,7 @@
|
|
|
7779
8466
|
function toSource(func) {
|
|
7780
8467
|
if (func != null) {
|
|
7781
8468
|
try {
|
|
7782
|
-
return funcToString$
|
|
8469
|
+
return funcToString$2.call(func);
|
|
7783
8470
|
} catch (e) {}
|
|
7784
8471
|
try {
|
|
7785
8472
|
return (func + '');
|
|
@@ -7800,18 +8487,18 @@
|
|
|
7800
8487
|
var reIsHostCtor = /^\[object .+?Constructor\]$/;
|
|
7801
8488
|
|
|
7802
8489
|
/** Used for built-in method references. */
|
|
7803
|
-
var funcProto = Function.prototype,
|
|
7804
|
-
objectProto$
|
|
8490
|
+
var funcProto$1 = Function.prototype,
|
|
8491
|
+
objectProto$9 = Object.prototype;
|
|
7805
8492
|
|
|
7806
8493
|
/** Used to resolve the decompiled source of functions. */
|
|
7807
|
-
var funcToString = funcProto.toString;
|
|
8494
|
+
var funcToString$1 = funcProto$1.toString;
|
|
7808
8495
|
|
|
7809
8496
|
/** Used to check objects for own properties. */
|
|
7810
|
-
var hasOwnProperty$
|
|
8497
|
+
var hasOwnProperty$9 = objectProto$9.hasOwnProperty;
|
|
7811
8498
|
|
|
7812
8499
|
/** Used to detect if a method is native. */
|
|
7813
8500
|
var reIsNative = RegExp('^' +
|
|
7814
|
-
funcToString.call(hasOwnProperty$
|
|
8501
|
+
funcToString$1.call(hasOwnProperty$9).replace(reRegExpChar, '\\$&')
|
|
7815
8502
|
.replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
|
|
7816
8503
|
);
|
|
7817
8504
|
|
|
@@ -7889,7 +8576,7 @@
|
|
|
7889
8576
|
|
|
7890
8577
|
/** `Object#toString` result references. */
|
|
7891
8578
|
var mapTag$3 = '[object Map]',
|
|
7892
|
-
objectTag$
|
|
8579
|
+
objectTag$3 = '[object Object]',
|
|
7893
8580
|
promiseTag = '[object Promise]',
|
|
7894
8581
|
setTag$3 = '[object Set]',
|
|
7895
8582
|
weakMapTag$1 = '[object WeakMap]';
|
|
@@ -7920,7 +8607,7 @@
|
|
|
7920
8607
|
(_WeakMap && getTag(new _WeakMap) != weakMapTag$1)) {
|
|
7921
8608
|
getTag = function(value) {
|
|
7922
8609
|
var result = _baseGetTag(value),
|
|
7923
|
-
Ctor = result == objectTag$
|
|
8610
|
+
Ctor = result == objectTag$3 ? value.constructor : undefined,
|
|
7924
8611
|
ctorString = Ctor ? _toSource(Ctor) : '';
|
|
7925
8612
|
|
|
7926
8613
|
if (ctorString) {
|
|
@@ -7985,13 +8672,13 @@
|
|
|
7985
8672
|
var _baseIsArguments = baseIsArguments;
|
|
7986
8673
|
|
|
7987
8674
|
/** Used for built-in method references. */
|
|
7988
|
-
var objectProto$
|
|
8675
|
+
var objectProto$8 = Object.prototype;
|
|
7989
8676
|
|
|
7990
8677
|
/** Used to check objects for own properties. */
|
|
7991
|
-
var hasOwnProperty$
|
|
8678
|
+
var hasOwnProperty$8 = objectProto$8.hasOwnProperty;
|
|
7992
8679
|
|
|
7993
8680
|
/** Built-in value references. */
|
|
7994
|
-
var propertyIsEnumerable$1 = objectProto$
|
|
8681
|
+
var propertyIsEnumerable$1 = objectProto$8.propertyIsEnumerable;
|
|
7995
8682
|
|
|
7996
8683
|
/**
|
|
7997
8684
|
* Checks if `value` is likely an `arguments` object.
|
|
@@ -8012,7 +8699,7 @@
|
|
|
8012
8699
|
* // => false
|
|
8013
8700
|
*/
|
|
8014
8701
|
var isArguments = _baseIsArguments(function() { return arguments; }()) ? _baseIsArguments : function(value) {
|
|
8015
|
-
return isObjectLike_1(value) && hasOwnProperty$
|
|
8702
|
+
return isObjectLike_1(value) && hasOwnProperty$8.call(value, 'callee') &&
|
|
8016
8703
|
!propertyIsEnumerable$1.call(value, 'callee');
|
|
8017
8704
|
};
|
|
8018
8705
|
|
|
@@ -8178,10 +8865,10 @@
|
|
|
8178
8865
|
funcTag = '[object Function]',
|
|
8179
8866
|
mapTag$2 = '[object Map]',
|
|
8180
8867
|
numberTag$1 = '[object Number]',
|
|
8181
|
-
objectTag$
|
|
8868
|
+
objectTag$2 = '[object Object]',
|
|
8182
8869
|
regexpTag$1 = '[object RegExp]',
|
|
8183
8870
|
setTag$2 = '[object Set]',
|
|
8184
|
-
stringTag$
|
|
8871
|
+
stringTag$2 = '[object String]',
|
|
8185
8872
|
weakMapTag = '[object WeakMap]';
|
|
8186
8873
|
|
|
8187
8874
|
var arrayBufferTag$1 = '[object ArrayBuffer]',
|
|
@@ -8208,8 +8895,8 @@
|
|
|
8208
8895
|
typedArrayTags[dataViewTag$1] = typedArrayTags[dateTag$1] =
|
|
8209
8896
|
typedArrayTags[errorTag$1] = typedArrayTags[funcTag] =
|
|
8210
8897
|
typedArrayTags[mapTag$2] = typedArrayTags[numberTag$1] =
|
|
8211
|
-
typedArrayTags[objectTag$
|
|
8212
|
-
typedArrayTags[setTag$2] = typedArrayTags[stringTag$
|
|
8898
|
+
typedArrayTags[objectTag$2] = typedArrayTags[regexpTag$1] =
|
|
8899
|
+
typedArrayTags[setTag$2] = typedArrayTags[stringTag$2] =
|
|
8213
8900
|
typedArrayTags[weakMapTag] = false;
|
|
8214
8901
|
|
|
8215
8902
|
/**
|
|
@@ -8301,10 +8988,10 @@
|
|
|
8301
8988
|
setTag$1 = '[object Set]';
|
|
8302
8989
|
|
|
8303
8990
|
/** Used for built-in method references. */
|
|
8304
|
-
var objectProto$
|
|
8991
|
+
var objectProto$7 = Object.prototype;
|
|
8305
8992
|
|
|
8306
8993
|
/** Used to check objects for own properties. */
|
|
8307
|
-
var hasOwnProperty$
|
|
8994
|
+
var hasOwnProperty$7 = objectProto$7.hasOwnProperty;
|
|
8308
8995
|
|
|
8309
8996
|
/**
|
|
8310
8997
|
* Checks if `value` is an empty object, collection, map, or set.
|
|
@@ -8356,7 +9043,7 @@
|
|
|
8356
9043
|
return !_baseKeys(value).length;
|
|
8357
9044
|
}
|
|
8358
9045
|
for (var key in value) {
|
|
8359
|
-
if (hasOwnProperty$
|
|
9046
|
+
if (hasOwnProperty$7.call(value, key)) {
|
|
8360
9047
|
return false;
|
|
8361
9048
|
}
|
|
8362
9049
|
}
|
|
@@ -8365,6 +9052,15 @@
|
|
|
8365
9052
|
|
|
8366
9053
|
var isEmpty_1 = isEmpty$1;
|
|
8367
9054
|
|
|
9055
|
+
/**
|
|
9056
|
+
* Levels at which a filter or parameter can be applied.
|
|
9057
|
+
*/
|
|
9058
|
+
var ApplicabilityLevel;
|
|
9059
|
+
(function (ApplicabilityLevel) {
|
|
9060
|
+
ApplicabilityLevel["Liveboard"] = "LIVEBOARD";
|
|
9061
|
+
ApplicabilityLevel["Tab"] = "TAB";
|
|
9062
|
+
ApplicabilityLevel["Group"] = "GROUP";
|
|
9063
|
+
})(ApplicabilityLevel || (ApplicabilityLevel = {}));
|
|
8368
9064
|
var UIPassthroughEvent;
|
|
8369
9065
|
(function (UIPassthroughEvent) {
|
|
8370
9066
|
UIPassthroughEvent["PinAnswerToLiveboard"] = "addVizToPinboard";
|
|
@@ -8382,6 +9078,7 @@
|
|
|
8382
9078
|
UIPassthroughEvent["GetParameters"] = "getParameters";
|
|
8383
9079
|
UIPassthroughEvent["GetTML"] = "getTML";
|
|
8384
9080
|
UIPassthroughEvent["GetTabs"] = "getTabs";
|
|
9081
|
+
UIPassthroughEvent["GetGroups"] = "getGroups";
|
|
8385
9082
|
UIPassthroughEvent["GetExportRequestForCurrentPinboard"] = "getExportRequestForCurrentPinboard";
|
|
8386
9083
|
})(UIPassthroughEvent || (UIPassthroughEvent = {}));
|
|
8387
9084
|
|
|
@@ -9602,10 +10299,10 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
9602
10299
|
var HASH_UNDEFINED$2 = '__lodash_hash_undefined__';
|
|
9603
10300
|
|
|
9604
10301
|
/** Used for built-in method references. */
|
|
9605
|
-
var objectProto$
|
|
10302
|
+
var objectProto$6 = Object.prototype;
|
|
9606
10303
|
|
|
9607
10304
|
/** Used to check objects for own properties. */
|
|
9608
|
-
var hasOwnProperty$
|
|
10305
|
+
var hasOwnProperty$6 = objectProto$6.hasOwnProperty;
|
|
9609
10306
|
|
|
9610
10307
|
/**
|
|
9611
10308
|
* Gets the hash value for `key`.
|
|
@@ -9622,16 +10319,16 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
9622
10319
|
var result = data[key];
|
|
9623
10320
|
return result === HASH_UNDEFINED$2 ? undefined : result;
|
|
9624
10321
|
}
|
|
9625
|
-
return hasOwnProperty$
|
|
10322
|
+
return hasOwnProperty$6.call(data, key) ? data[key] : undefined;
|
|
9626
10323
|
}
|
|
9627
10324
|
|
|
9628
10325
|
var _hashGet = hashGet;
|
|
9629
10326
|
|
|
9630
10327
|
/** Used for built-in method references. */
|
|
9631
|
-
var objectProto$
|
|
10328
|
+
var objectProto$5 = Object.prototype;
|
|
9632
10329
|
|
|
9633
10330
|
/** Used to check objects for own properties. */
|
|
9634
|
-
var hasOwnProperty$
|
|
10331
|
+
var hasOwnProperty$5 = objectProto$5.hasOwnProperty;
|
|
9635
10332
|
|
|
9636
10333
|
/**
|
|
9637
10334
|
* Checks if a hash value for `key` exists.
|
|
@@ -9644,7 +10341,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
9644
10341
|
*/
|
|
9645
10342
|
function hashHas(key) {
|
|
9646
10343
|
var data = this.__data__;
|
|
9647
|
-
return _nativeCreate ? (data[key] !== undefined) : hasOwnProperty$
|
|
10344
|
+
return _nativeCreate ? (data[key] !== undefined) : hasOwnProperty$5.call(data, key);
|
|
9648
10345
|
}
|
|
9649
10346
|
|
|
9650
10347
|
var _hashHas = hashHas;
|
|
@@ -10619,7 +11316,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
10619
11316
|
numberTag = '[object Number]',
|
|
10620
11317
|
regexpTag = '[object RegExp]',
|
|
10621
11318
|
setTag = '[object Set]',
|
|
10622
|
-
stringTag = '[object String]',
|
|
11319
|
+
stringTag$1 = '[object String]',
|
|
10623
11320
|
symbolTag = '[object Symbol]';
|
|
10624
11321
|
|
|
10625
11322
|
var arrayBufferTag = '[object ArrayBuffer]',
|
|
@@ -10674,7 +11371,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
10674
11371
|
return object.name == other.name && object.message == other.message;
|
|
10675
11372
|
|
|
10676
11373
|
case regexpTag:
|
|
10677
|
-
case stringTag:
|
|
11374
|
+
case stringTag$1:
|
|
10678
11375
|
// Coerce regexes to strings and treat strings, primitives and objects,
|
|
10679
11376
|
// as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring
|
|
10680
11377
|
// for more details.
|
|
@@ -10782,10 +11479,10 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
10782
11479
|
var stubArray_1 = stubArray;
|
|
10783
11480
|
|
|
10784
11481
|
/** Used for built-in method references. */
|
|
10785
|
-
var objectProto$
|
|
11482
|
+
var objectProto$4 = Object.prototype;
|
|
10786
11483
|
|
|
10787
11484
|
/** Built-in value references. */
|
|
10788
|
-
var propertyIsEnumerable = objectProto$
|
|
11485
|
+
var propertyIsEnumerable = objectProto$4.propertyIsEnumerable;
|
|
10789
11486
|
|
|
10790
11487
|
/* Built-in method references for those with the same name as other `lodash` methods. */
|
|
10791
11488
|
var nativeGetSymbols = Object.getOwnPropertySymbols;
|
|
@@ -10857,10 +11554,10 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
10857
11554
|
var _isIndex = isIndex;
|
|
10858
11555
|
|
|
10859
11556
|
/** Used for built-in method references. */
|
|
10860
|
-
var objectProto$
|
|
11557
|
+
var objectProto$3 = Object.prototype;
|
|
10861
11558
|
|
|
10862
11559
|
/** Used to check objects for own properties. */
|
|
10863
|
-
var hasOwnProperty$
|
|
11560
|
+
var hasOwnProperty$4 = objectProto$3.hasOwnProperty;
|
|
10864
11561
|
|
|
10865
11562
|
/**
|
|
10866
11563
|
* Creates an array of the enumerable property names of the array-like `value`.
|
|
@@ -10880,7 +11577,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
10880
11577
|
length = result.length;
|
|
10881
11578
|
|
|
10882
11579
|
for (var key in value) {
|
|
10883
|
-
if ((inherited || hasOwnProperty$
|
|
11580
|
+
if ((inherited || hasOwnProperty$4.call(value, key)) &&
|
|
10884
11581
|
!(skipIndexes && (
|
|
10885
11582
|
// Safari 9 has enumerable `arguments.length` in strict mode.
|
|
10886
11583
|
key == 'length' ||
|
|
@@ -10950,10 +11647,10 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
10950
11647
|
var COMPARE_PARTIAL_FLAG$3 = 1;
|
|
10951
11648
|
|
|
10952
11649
|
/** Used for built-in method references. */
|
|
10953
|
-
var objectProto$
|
|
11650
|
+
var objectProto$2 = Object.prototype;
|
|
10954
11651
|
|
|
10955
11652
|
/** Used to check objects for own properties. */
|
|
10956
|
-
var hasOwnProperty$
|
|
11653
|
+
var hasOwnProperty$3 = objectProto$2.hasOwnProperty;
|
|
10957
11654
|
|
|
10958
11655
|
/**
|
|
10959
11656
|
* A specialized version of `baseIsEqualDeep` for objects with support for
|
|
@@ -10981,7 +11678,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
10981
11678
|
var index = objLength;
|
|
10982
11679
|
while (index--) {
|
|
10983
11680
|
var key = objProps[index];
|
|
10984
|
-
if (!(isPartial ? key in other : hasOwnProperty$
|
|
11681
|
+
if (!(isPartial ? key in other : hasOwnProperty$3.call(other, key))) {
|
|
10985
11682
|
return false;
|
|
10986
11683
|
}
|
|
10987
11684
|
}
|
|
@@ -11041,13 +11738,13 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
11041
11738
|
/** `Object#toString` result references. */
|
|
11042
11739
|
var argsTag = '[object Arguments]',
|
|
11043
11740
|
arrayTag = '[object Array]',
|
|
11044
|
-
objectTag = '[object Object]';
|
|
11741
|
+
objectTag$1 = '[object Object]';
|
|
11045
11742
|
|
|
11046
11743
|
/** Used for built-in method references. */
|
|
11047
|
-
var objectProto = Object.prototype;
|
|
11744
|
+
var objectProto$1 = Object.prototype;
|
|
11048
11745
|
|
|
11049
11746
|
/** Used to check objects for own properties. */
|
|
11050
|
-
var hasOwnProperty$
|
|
11747
|
+
var hasOwnProperty$2 = objectProto$1.hasOwnProperty;
|
|
11051
11748
|
|
|
11052
11749
|
/**
|
|
11053
11750
|
* A specialized version of `baseIsEqual` for arrays and objects which performs
|
|
@@ -11069,11 +11766,11 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
11069
11766
|
objTag = objIsArr ? arrayTag : _getTag(object),
|
|
11070
11767
|
othTag = othIsArr ? arrayTag : _getTag(other);
|
|
11071
11768
|
|
|
11072
|
-
objTag = objTag == argsTag ? objectTag : objTag;
|
|
11073
|
-
othTag = othTag == argsTag ? objectTag : othTag;
|
|
11769
|
+
objTag = objTag == argsTag ? objectTag$1 : objTag;
|
|
11770
|
+
othTag = othTag == argsTag ? objectTag$1 : othTag;
|
|
11074
11771
|
|
|
11075
|
-
var objIsObj = objTag == objectTag,
|
|
11076
|
-
othIsObj = othTag == objectTag,
|
|
11772
|
+
var objIsObj = objTag == objectTag$1,
|
|
11773
|
+
othIsObj = othTag == objectTag$1,
|
|
11077
11774
|
isSameTag = objTag == othTag;
|
|
11078
11775
|
|
|
11079
11776
|
if (isSameTag && isBuffer_1(object)) {
|
|
@@ -11090,8 +11787,8 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
11090
11787
|
: _equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
|
|
11091
11788
|
}
|
|
11092
11789
|
if (!(bitmask & COMPARE_PARTIAL_FLAG$2)) {
|
|
11093
|
-
var objIsWrapped = objIsObj && hasOwnProperty$
|
|
11094
|
-
othIsWrapped = othIsObj && hasOwnProperty$
|
|
11790
|
+
var objIsWrapped = objIsObj && hasOwnProperty$2.call(object, '__wrapped__'),
|
|
11791
|
+
othIsWrapped = othIsObj && hasOwnProperty$2.call(other, '__wrapped__');
|
|
11095
11792
|
|
|
11096
11793
|
if (objIsWrapped || othIsWrapped) {
|
|
11097
11794
|
var objUnwrapped = objIsWrapped ? object.value() : object,
|
|
@@ -12266,7 +12963,8 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
12266
12963
|
* The default CSS dimensions of the embedded app
|
|
12267
12964
|
*/
|
|
12268
12965
|
const DEFAULT_EMBED_WIDTH = '100%';
|
|
12269
|
-
const DEFAULT_EMBED_HEIGHT = '100%';
|
|
12966
|
+
const DEFAULT_EMBED_HEIGHT = '100%';
|
|
12967
|
+
const DEFAULT_LAZY_LOADING_MARGIN = '500px 0px';
|
|
12270
12968
|
|
|
12271
12969
|
var Config = {
|
|
12272
12970
|
DEBUG: false,
|
|
@@ -12302,7 +13000,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
12302
13000
|
var ObjProto = Object.prototype;
|
|
12303
13001
|
var slice = ArrayProto.slice;
|
|
12304
13002
|
var toString = ObjProto.toString;
|
|
12305
|
-
var hasOwnProperty = ObjProto.hasOwnProperty;
|
|
13003
|
+
var hasOwnProperty$1 = ObjProto.hasOwnProperty;
|
|
12306
13004
|
var windowConsole = window$1.console;
|
|
12307
13005
|
var navigator = window$1.navigator;
|
|
12308
13006
|
var document$1 = window$1.document;
|
|
@@ -12439,7 +13137,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
12439
13137
|
}
|
|
12440
13138
|
} else {
|
|
12441
13139
|
for (var key in obj) {
|
|
12442
|
-
if (hasOwnProperty.call(obj, key)) {
|
|
13140
|
+
if (hasOwnProperty$1.call(obj, key)) {
|
|
12443
13141
|
if (iterator.call(context, obj[key], key, obj) === breaker) {
|
|
12444
13142
|
return;
|
|
12445
13143
|
}
|
|
@@ -12475,7 +13173,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
12475
13173
|
};
|
|
12476
13174
|
|
|
12477
13175
|
_.isArguments = function(obj) {
|
|
12478
|
-
return !!(obj && hasOwnProperty.call(obj, 'callee'));
|
|
13176
|
+
return !!(obj && hasOwnProperty$1.call(obj, 'callee'));
|
|
12479
13177
|
};
|
|
12480
13178
|
|
|
12481
13179
|
_.toArray = function(iterable) {
|
|
@@ -12563,7 +13261,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
12563
13261
|
_.isEmptyObject = function(obj) {
|
|
12564
13262
|
if (_.isObject(obj)) {
|
|
12565
13263
|
for (var key in obj) {
|
|
12566
|
-
if (hasOwnProperty.call(obj, key)) {
|
|
13264
|
+
if (hasOwnProperty$1.call(obj, key)) {
|
|
12567
13265
|
return false;
|
|
12568
13266
|
}
|
|
12569
13267
|
}
|
|
@@ -12755,7 +13453,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
12755
13453
|
|
|
12756
13454
|
// Iterate through all of the keys in the object.
|
|
12757
13455
|
for (k in value) {
|
|
12758
|
-
if (hasOwnProperty.call(value, k)) {
|
|
13456
|
+
if (hasOwnProperty$1.call(value, k)) {
|
|
12759
13457
|
v = str(k, value);
|
|
12760
13458
|
if (v) {
|
|
12761
13459
|
partial.push(quote(k) + (gap ? ': ' : ':') + v);
|
|
@@ -18421,7 +19119,12 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
18421
19119
|
VISUAL_SDK_RENDER_FAILED: 'visual-sdk-render-failed',
|
|
18422
19120
|
VISUAL_SDK_TRIGGER: 'visual-sdk-trigger',
|
|
18423
19121
|
VISUAL_SDK_ON: 'visual-sdk-on',
|
|
18424
|
-
VISUAL_SDK_EMBED_CREATE: 'visual-sdk-embed-create'
|
|
19122
|
+
VISUAL_SDK_EMBED_CREATE: 'visual-sdk-embed-create',
|
|
19123
|
+
VISUAL_SDK_RENDER_CALLED: 'visual-sdk-render-called',
|
|
19124
|
+
VISUAL_SDK_PRE_RENDER: 'visual-sdk-pre-render',
|
|
19125
|
+
VISUAL_SDK_SHOW_PRE_RENDER: 'visual-sdk-show-pre-render',
|
|
19126
|
+
VISUAL_SDK_HIDE_PRE_RENDER: 'visual-sdk-hide-pre-render',
|
|
19127
|
+
};
|
|
18425
19128
|
let isMixpanelInitialized = false;
|
|
18426
19129
|
let eventQueue = [];
|
|
18427
19130
|
/**
|
|
@@ -19796,7 +20499,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
19796
20499
|
/**
|
|
19797
20500
|
* Initializes the Visual Embed SDK globally and perform
|
|
19798
20501
|
* authentication if applicable. This function needs to be called before any ThoughtSpot
|
|
19799
|
-
* component like Liveboard etc can be embedded. But need not wait for
|
|
20502
|
+
* component like Liveboard etc can be embedded. But need not wait for AuthStatus.SUCCESS
|
|
19800
20503
|
* to actually embed. That is handled internally.
|
|
19801
20504
|
* @param embedConfig The configuration object containing ThoughtSpot host,
|
|
19802
20505
|
* authentication mechanism and so on.
|
|
@@ -19994,6 +20697,154 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
19994
20697
|
return eventData;
|
|
19995
20698
|
}
|
|
19996
20699
|
|
|
20700
|
+
/**
|
|
20701
|
+
* Checks if `value` is `null` or `undefined`.
|
|
20702
|
+
*
|
|
20703
|
+
* @static
|
|
20704
|
+
* @memberOf _
|
|
20705
|
+
* @since 4.0.0
|
|
20706
|
+
* @category Lang
|
|
20707
|
+
* @param {*} value The value to check.
|
|
20708
|
+
* @returns {boolean} Returns `true` if `value` is nullish, else `false`.
|
|
20709
|
+
* @example
|
|
20710
|
+
*
|
|
20711
|
+
* _.isNil(null);
|
|
20712
|
+
* // => true
|
|
20713
|
+
*
|
|
20714
|
+
* _.isNil(void 0);
|
|
20715
|
+
* // => true
|
|
20716
|
+
*
|
|
20717
|
+
* _.isNil(NaN);
|
|
20718
|
+
* // => false
|
|
20719
|
+
*/
|
|
20720
|
+
function isNil(value) {
|
|
20721
|
+
return value == null;
|
|
20722
|
+
}
|
|
20723
|
+
|
|
20724
|
+
var isNil_1 = isNil;
|
|
20725
|
+
|
|
20726
|
+
/** Built-in value references. */
|
|
20727
|
+
var getPrototype = _overArg(Object.getPrototypeOf, Object);
|
|
20728
|
+
|
|
20729
|
+
var _getPrototype = getPrototype;
|
|
20730
|
+
|
|
20731
|
+
/** `Object#toString` result references. */
|
|
20732
|
+
var objectTag = '[object Object]';
|
|
20733
|
+
|
|
20734
|
+
/** Used for built-in method references. */
|
|
20735
|
+
var funcProto = Function.prototype,
|
|
20736
|
+
objectProto = Object.prototype;
|
|
20737
|
+
|
|
20738
|
+
/** Used to resolve the decompiled source of functions. */
|
|
20739
|
+
var funcToString = funcProto.toString;
|
|
20740
|
+
|
|
20741
|
+
/** Used to check objects for own properties. */
|
|
20742
|
+
var hasOwnProperty = objectProto.hasOwnProperty;
|
|
20743
|
+
|
|
20744
|
+
/** Used to infer the `Object` constructor. */
|
|
20745
|
+
var objectCtorString = funcToString.call(Object);
|
|
20746
|
+
|
|
20747
|
+
/**
|
|
20748
|
+
* Checks if `value` is a plain object, that is, an object created by the
|
|
20749
|
+
* `Object` constructor or one with a `[[Prototype]]` of `null`.
|
|
20750
|
+
*
|
|
20751
|
+
* @static
|
|
20752
|
+
* @memberOf _
|
|
20753
|
+
* @since 0.8.0
|
|
20754
|
+
* @category Lang
|
|
20755
|
+
* @param {*} value The value to check.
|
|
20756
|
+
* @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
|
|
20757
|
+
* @example
|
|
20758
|
+
*
|
|
20759
|
+
* function Foo() {
|
|
20760
|
+
* this.a = 1;
|
|
20761
|
+
* }
|
|
20762
|
+
*
|
|
20763
|
+
* _.isPlainObject(new Foo);
|
|
20764
|
+
* // => false
|
|
20765
|
+
*
|
|
20766
|
+
* _.isPlainObject([1, 2, 3]);
|
|
20767
|
+
* // => false
|
|
20768
|
+
*
|
|
20769
|
+
* _.isPlainObject({ 'x': 0, 'y': 0 });
|
|
20770
|
+
* // => true
|
|
20771
|
+
*
|
|
20772
|
+
* _.isPlainObject(Object.create(null));
|
|
20773
|
+
* // => true
|
|
20774
|
+
*/
|
|
20775
|
+
function isPlainObject(value) {
|
|
20776
|
+
if (!isObjectLike_1(value) || _baseGetTag(value) != objectTag) {
|
|
20777
|
+
return false;
|
|
20778
|
+
}
|
|
20779
|
+
var proto = _getPrototype(value);
|
|
20780
|
+
if (proto === null) {
|
|
20781
|
+
return true;
|
|
20782
|
+
}
|
|
20783
|
+
var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;
|
|
20784
|
+
return typeof Ctor == 'function' && Ctor instanceof Ctor &&
|
|
20785
|
+
funcToString.call(Ctor) == objectCtorString;
|
|
20786
|
+
}
|
|
20787
|
+
|
|
20788
|
+
var isPlainObject_1 = isPlainObject;
|
|
20789
|
+
|
|
20790
|
+
/** `Object#toString` result references. */
|
|
20791
|
+
var stringTag = '[object String]';
|
|
20792
|
+
|
|
20793
|
+
/**
|
|
20794
|
+
* Checks if `value` is classified as a `String` primitive or object.
|
|
20795
|
+
*
|
|
20796
|
+
* @static
|
|
20797
|
+
* @since 0.1.0
|
|
20798
|
+
* @memberOf _
|
|
20799
|
+
* @category Lang
|
|
20800
|
+
* @param {*} value The value to check.
|
|
20801
|
+
* @returns {boolean} Returns `true` if `value` is a string, else `false`.
|
|
20802
|
+
* @example
|
|
20803
|
+
*
|
|
20804
|
+
* _.isString('abc');
|
|
20805
|
+
* // => true
|
|
20806
|
+
*
|
|
20807
|
+
* _.isString(1);
|
|
20808
|
+
* // => false
|
|
20809
|
+
*/
|
|
20810
|
+
function isString(value) {
|
|
20811
|
+
return typeof value == 'string' ||
|
|
20812
|
+
(!isArray_1(value) && isObjectLike_1(value) && _baseGetTag(value) == stringTag);
|
|
20813
|
+
}
|
|
20814
|
+
|
|
20815
|
+
var isString_1 = isString;
|
|
20816
|
+
|
|
20817
|
+
/**
|
|
20818
|
+
* Checks if `value` is `undefined`.
|
|
20819
|
+
*
|
|
20820
|
+
* @static
|
|
20821
|
+
* @since 0.1.0
|
|
20822
|
+
* @memberOf _
|
|
20823
|
+
* @category Lang
|
|
20824
|
+
* @param {*} value The value to check.
|
|
20825
|
+
* @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.
|
|
20826
|
+
* @example
|
|
20827
|
+
*
|
|
20828
|
+
* _.isUndefined(void 0);
|
|
20829
|
+
* // => true
|
|
20830
|
+
*
|
|
20831
|
+
* _.isUndefined(null);
|
|
20832
|
+
* // => false
|
|
20833
|
+
*/
|
|
20834
|
+
function isUndefined(value) {
|
|
20835
|
+
return value === undefined;
|
|
20836
|
+
}
|
|
20837
|
+
|
|
20838
|
+
var isUndefined_1 = isUndefined;
|
|
20839
|
+
|
|
20840
|
+
const isValidApplicability = (a) => {
|
|
20841
|
+
if (isUndefined_1(a))
|
|
20842
|
+
return true;
|
|
20843
|
+
// targetId is not required at LIVEBOARD level, since the filter applies to the whole Liveboard
|
|
20844
|
+
return isPlainObject_1(a)
|
|
20845
|
+
&& Object.values(ApplicabilityLevel).includes(a.level)
|
|
20846
|
+
&& (a.level === ApplicabilityLevel.Liveboard || (isString_1(a.targetId) && a.targetId.trim().length > 0));
|
|
20847
|
+
};
|
|
19997
20848
|
function isValidUpdateFiltersPayload(payload) {
|
|
19998
20849
|
if (!payload)
|
|
19999
20850
|
return false;
|
|
@@ -20002,12 +20853,23 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
20002
20853
|
const hasOperator = typeof f.oper === 'string' || typeof f.operator === 'string';
|
|
20003
20854
|
const hasValues = Array.isArray(f.values);
|
|
20004
20855
|
const validType = !f.type || typeof f.type === 'string';
|
|
20005
|
-
return hasColumn && hasOperator && hasValues && validType;
|
|
20856
|
+
return hasColumn && hasOperator && hasValues && validType && isValidApplicability(f.applicability);
|
|
20006
20857
|
};
|
|
20007
20858
|
const hasValidFilter = payload.filter && isValidFilter(payload.filter);
|
|
20008
20859
|
const hasValidFilters = Array.isArray(payload.filters) && payload.filters.length > 0 && payload.filters.every(isValidFilter);
|
|
20009
20860
|
return !!(hasValidFilter || hasValidFilters);
|
|
20010
20861
|
}
|
|
20862
|
+
function isValidUpdateParametersPayload(payload) {
|
|
20863
|
+
// Only validates the applicability of each parameter (null treated as absent); the rest is forwarded as-is for backward compatibility.
|
|
20864
|
+
if (!Array.isArray(payload))
|
|
20865
|
+
return true;
|
|
20866
|
+
return payload.every((p) => {
|
|
20867
|
+
if (!isPlainObject_1(p))
|
|
20868
|
+
return true;
|
|
20869
|
+
const { applicability } = p;
|
|
20870
|
+
return isNil_1(applicability) || isValidApplicability(applicability);
|
|
20871
|
+
});
|
|
20872
|
+
}
|
|
20011
20873
|
function isValidDrillDownPayload(payload) {
|
|
20012
20874
|
if (!payload)
|
|
20013
20875
|
return false;
|
|
@@ -20038,6 +20900,9 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
20038
20900
|
}
|
|
20039
20901
|
function throwDrillDownValidationError() {
|
|
20040
20902
|
createValidationError(ERROR_MESSAGE.DRILLDOWN_INVALID_PAYLOAD);
|
|
20903
|
+
}
|
|
20904
|
+
function throwUpdateParametersValidationError() {
|
|
20905
|
+
createValidationError(ERROR_MESSAGE.UPDATEPARAMETERS_INVALID_PAYLOAD);
|
|
20041
20906
|
}
|
|
20042
20907
|
|
|
20043
20908
|
/**
|
|
@@ -20058,6 +20923,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
20058
20923
|
[exports.HostEvent.GetParameters]: UIPassthroughEvent.GetParameters,
|
|
20059
20924
|
[exports.HostEvent.GetTML]: UIPassthroughEvent.GetTML,
|
|
20060
20925
|
[exports.HostEvent.GetTabs]: UIPassthroughEvent.GetTabs,
|
|
20926
|
+
[exports.HostEvent.GetGroups]: UIPassthroughEvent.GetGroups,
|
|
20061
20927
|
[exports.HostEvent.getExportRequestForCurrentPinboard]: UIPassthroughEvent.GetExportRequestForCurrentPinboard,
|
|
20062
20928
|
};
|
|
20063
20929
|
class HostEventClient {
|
|
@@ -20069,6 +20935,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
20069
20935
|
[exports.HostEvent.Pin]: (p, c) => this.handlePinEvent(p, c),
|
|
20070
20936
|
[exports.HostEvent.SaveAnswer]: (p, c) => this.handleSaveAnswerEvent(p, c),
|
|
20071
20937
|
[exports.HostEvent.UpdateFilters]: (p, c) => this.handleUpdateFiltersEvent(p, c),
|
|
20938
|
+
[exports.HostEvent.UpdateParameters]: (p, c) => this.handleUpdateParametersEvent(p, c),
|
|
20072
20939
|
[exports.HostEvent.DrillDown]: (p, c) => this.handleDrillDownEvent(p, c),
|
|
20073
20940
|
};
|
|
20074
20941
|
}
|
|
@@ -20193,6 +21060,13 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
20193
21060
|
}
|
|
20194
21061
|
return this.handleHostEventWithParam(UIPassthroughEvent.UpdateFilters, payload, context);
|
|
20195
21062
|
}
|
|
21063
|
+
handleUpdateParametersEvent(payload, context) {
|
|
21064
|
+
if (!isValidUpdateParametersPayload(payload)) {
|
|
21065
|
+
throwUpdateParametersValidationError();
|
|
21066
|
+
}
|
|
21067
|
+
// UpdateParameters has no UI passthrough contract; dispatch over the legacy channel
|
|
21068
|
+
return this.hostEventFallback(exports.HostEvent.UpdateParameters, payload, context);
|
|
21069
|
+
}
|
|
20196
21070
|
handleDrillDownEvent(payload, context) {
|
|
20197
21071
|
if (!isValidDrillDownPayload(payload)) {
|
|
20198
21072
|
throwDrillDownValidationError();
|
|
@@ -20452,7 +21326,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
20452
21326
|
*/
|
|
20453
21327
|
this.shouldEncodeUrlQueryParams = false;
|
|
20454
21328
|
this.defaultHiddenActions = [exports.Action.ReportError];
|
|
20455
|
-
this.preRenderContainerEl =
|
|
21329
|
+
this.preRenderContainerEl = document.body;
|
|
20456
21330
|
this.containerScrollListener = null;
|
|
20457
21331
|
/**
|
|
20458
21332
|
* Handler for fullscreen change events
|
|
@@ -20978,7 +21852,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
20978
21852
|
if (this.embedConfig.currencyFormat) {
|
|
20979
21853
|
queryParams[Param.CurrencyFormat] = this.embedConfig.currencyFormat;
|
|
20980
21854
|
}
|
|
20981
|
-
const { disabledActions, disabledActionReason, hiddenActions, visibleActions, hiddenTabs, visibleTabs, showAlerts, additionalFlags: additionalFlagsFromView, locale, customizations, contextMenuTrigger, linkOverride, enableLinkOverridesV2, insertInToSlide, disableRedirectionLinksInNewTab, overrideOrgId, exposeTranslationIDs, primaryAction, } = this.viewConfig;
|
|
21855
|
+
const { disabledActions, disabledActionReason, hiddenActions, visibleActions, hiddenTabs, visibleTabs, showAlerts, additionalFlags: additionalFlagsFromView, locale, customizations, contextMenuTrigger, linkOverride, enableLinkOverridesV2, insertInToSlide, disableRedirectionLinksInNewTab, overrideOrgId, overrideHistoryState, exposeTranslationIDs, primaryAction, } = this.viewConfig;
|
|
20982
21856
|
const { additionalFlags: additionalFlagsFromInit } = this.embedConfig;
|
|
20983
21857
|
const additionalFlags = {
|
|
20984
21858
|
...additionalFlagsFromInit,
|
|
@@ -21066,6 +21940,9 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21066
21940
|
if (overrideOrgId !== undefined) {
|
|
21067
21941
|
queryParams[Param.OverrideOrgId] = overrideOrgId;
|
|
21068
21942
|
}
|
|
21943
|
+
if (overrideHistoryState !== undefined) {
|
|
21944
|
+
queryParams[Param.OverrideHistoryState] = overrideHistoryState;
|
|
21945
|
+
}
|
|
21069
21946
|
if (this.isPreAuthCacheEnabled()) {
|
|
21070
21947
|
queryParams[Param.preAuthCache] = true;
|
|
21071
21948
|
}
|
|
@@ -21137,11 +22014,27 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21137
22014
|
iFrame.name = 'ThoughtSpot Embedded Analytics';
|
|
21138
22015
|
return iFrame;
|
|
21139
22016
|
}
|
|
22017
|
+
/**
|
|
22018
|
+
* Returns a merged {@link PreRenderConfig} object where each shared key
|
|
22019
|
+
* prefers `preRenderConfig.key` over the top-level `viewConfig.key` for
|
|
22020
|
+
* backward compatibility.
|
|
22021
|
+
*/
|
|
22022
|
+
getPreRenderConfig() {
|
|
22023
|
+
var _a, _b, _c, _d;
|
|
22024
|
+
const viewCfg = this.viewConfig;
|
|
22025
|
+
const preRenderCfg = (_a = viewCfg.preRenderConfig) !== null && _a !== void 0 ? _a : {};
|
|
22026
|
+
return {
|
|
22027
|
+
...preRenderCfg,
|
|
22028
|
+
preRenderId: (_b = preRenderCfg.preRenderId) !== null && _b !== void 0 ? _b : viewCfg.preRenderId,
|
|
22029
|
+
preRenderContainer: (_c = preRenderCfg.preRenderContainer) !== null && _c !== void 0 ? _c : viewCfg.preRenderContainer,
|
|
22030
|
+
doNotTrackPreRenderSize: (_d = preRenderCfg.doNotTrackPreRenderSize) !== null && _d !== void 0 ? _d : viewCfg.doNotTrackPreRenderSize,
|
|
22031
|
+
};
|
|
22032
|
+
}
|
|
21140
22033
|
/**
|
|
21141
22034
|
* Returns true if this embed instance is configured for pre-rendering.
|
|
21142
22035
|
*/
|
|
21143
22036
|
isPreRenderEmbed() {
|
|
21144
|
-
return !!this.
|
|
22037
|
+
return !!this.getPreRenderConfig().preRenderId;
|
|
21145
22038
|
}
|
|
21146
22039
|
handleInsertionIntoDOM(child) {
|
|
21147
22040
|
if (this.isPreRenderEmbed()) {
|
|
@@ -21277,6 +22170,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21277
22170
|
this.setIframeElement(this.preRenderChild);
|
|
21278
22171
|
}
|
|
21279
22172
|
this.isRendered = true;
|
|
22173
|
+
this.inheritPreRenderContainer();
|
|
21280
22174
|
}
|
|
21281
22175
|
return this.isPreRenderConnected();
|
|
21282
22176
|
}
|
|
@@ -21327,7 +22221,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21327
22221
|
*/
|
|
21328
22222
|
resolvePreRenderContainerTarget() {
|
|
21329
22223
|
var _a;
|
|
21330
|
-
const containerConfig = this.
|
|
22224
|
+
const containerConfig = this.getPreRenderConfig().preRenderContainer;
|
|
21331
22225
|
let container = null;
|
|
21332
22226
|
if (typeof containerConfig === 'string') {
|
|
21333
22227
|
try {
|
|
@@ -21345,15 +22239,35 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21345
22239
|
}
|
|
21346
22240
|
return (_a = container) !== null && _a !== void 0 ? _a : document.body;
|
|
21347
22241
|
}
|
|
22242
|
+
inheritPreRenderContainer() {
|
|
22243
|
+
var _a;
|
|
22244
|
+
const preRenderedObject = this.getPreRenderObj();
|
|
22245
|
+
if (!preRenderedObject || preRenderedObject === this) {
|
|
22246
|
+
return;
|
|
22247
|
+
}
|
|
22248
|
+
const ownerContainer = (_a = preRenderedObject.preRenderContainerEl) !== null && _a !== void 0 ? _a : document.body;
|
|
22249
|
+
if (this.getPreRenderConfig().preRenderContainer
|
|
22250
|
+
&& this.resolvePreRenderContainerTarget() !== ownerContainer) {
|
|
22251
|
+
logger$3.warn('preRenderContainer is applied only by the component that creates the preRender; '
|
|
22252
|
+
+ 'the one passed here is ignored. Set it on the PreRender component instead.');
|
|
22253
|
+
}
|
|
22254
|
+
this.preRenderContainerEl = ownerContainer;
|
|
22255
|
+
this.applyPreRenderContainerPositioning();
|
|
22256
|
+
}
|
|
22257
|
+
getCustomPreRenderContainer() {
|
|
22258
|
+
const container = this.preRenderContainerEl;
|
|
22259
|
+
return container && container !== document.body ? container : null;
|
|
22260
|
+
}
|
|
21348
22261
|
/**
|
|
21349
|
-
* Makes the container a positioning context for the absolutely
|
|
21350
|
-
* wrapper, stashing the original inline `position` on the element
|
|
21351
|
-
* destroy() can restore it exactly, leaving no trace. Recording it
|
|
21352
|
-
* element rather than per-instance lets the override be reverted even
|
|
21353
|
-
* embeds share the same container.
|
|
22262
|
+
* Makes the resolved container a positioning context for the absolutely
|
|
22263
|
+
* positioned wrapper, stashing the original inline `position` on the element
|
|
22264
|
+
* (once) so destroy() can restore it exactly, leaving no trace. Recording it
|
|
22265
|
+
* on the element rather than per-instance lets the override be reverted even
|
|
22266
|
+
* when embeds share the same container.
|
|
21354
22267
|
*/
|
|
21355
|
-
applyPreRenderContainerPositioning(
|
|
21356
|
-
|
|
22268
|
+
applyPreRenderContainerPositioning() {
|
|
22269
|
+
const container = this.getCustomPreRenderContainer();
|
|
22270
|
+
if (!container) {
|
|
21357
22271
|
return;
|
|
21358
22272
|
}
|
|
21359
22273
|
const pos = window.getComputedStyle(container).position;
|
|
@@ -21396,11 +22310,11 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21396
22310
|
resolved.addEventListener('scroll', this.containerScrollListener);
|
|
21397
22311
|
}
|
|
21398
22312
|
}
|
|
21399
|
-
this.
|
|
22313
|
+
this.preRenderContainerEl = resolved;
|
|
22314
|
+
this.applyPreRenderContainerPositioning();
|
|
21400
22315
|
if (wrapper.parentNode !== resolved) {
|
|
21401
22316
|
resolved.appendChild(wrapper);
|
|
21402
22317
|
}
|
|
21403
|
-
this.preRenderContainerEl = resolved;
|
|
21404
22318
|
}
|
|
21405
22319
|
insertIntoDOMForPreRender(child) {
|
|
21406
22320
|
const preRenderChild = this.createPreRenderChild(child);
|
|
@@ -21423,7 +22337,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21423
22337
|
}
|
|
21424
22338
|
const targetContainer = this.resolvePreRenderContainerTarget();
|
|
21425
22339
|
this.preRenderContainerEl = targetContainer;
|
|
21426
|
-
this.applyPreRenderContainerPositioning(
|
|
22340
|
+
this.applyPreRenderContainerPositioning();
|
|
21427
22341
|
targetContainer.appendChild(preRenderWrapper);
|
|
21428
22342
|
}
|
|
21429
22343
|
insertIntoDOM(child) {
|
|
@@ -21751,6 +22665,9 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21751
22665
|
* @param args
|
|
21752
22666
|
*/
|
|
21753
22667
|
async render() {
|
|
22668
|
+
uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_RENDER_CALLED, {
|
|
22669
|
+
embedComponentType: this.viewConfig.embedComponentType,
|
|
22670
|
+
});
|
|
21754
22671
|
if (!getIsInitCalled()) {
|
|
21755
22672
|
logger$3.error(ERROR_MESSAGE.RENDER_CALLED_BEFORE_INIT);
|
|
21756
22673
|
}
|
|
@@ -21822,7 +22739,11 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21822
22739
|
* @param showPreRenderByDefault - Show the preRender after render, hidden by default
|
|
21823
22740
|
*/
|
|
21824
22741
|
async preRender(showPreRenderByDefault = false, replaceExistingPreRender = false) {
|
|
21825
|
-
|
|
22742
|
+
uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_PRE_RENDER, {
|
|
22743
|
+
showPreRenderByDefault,
|
|
22744
|
+
replaceExistingPreRender,
|
|
22745
|
+
});
|
|
22746
|
+
if (!this.getPreRenderConfig().preRenderId) {
|
|
21826
22747
|
logger$3.error(ERROR_MESSAGE.PRERENDER_ID_MISSING);
|
|
21827
22748
|
return this;
|
|
21828
22749
|
}
|
|
@@ -21878,7 +22799,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21878
22799
|
}
|
|
21879
22800
|
// Drop our reference up front so a destroyed embed never pins a
|
|
21880
22801
|
// detached container in memory; restoration uses the local handle.
|
|
21881
|
-
this.preRenderContainerEl =
|
|
22802
|
+
this.preRenderContainerEl = document.body;
|
|
21882
22803
|
const originalPosition = container.dataset[PRERENDER_CONTAINER_ORIGINAL_POSITION_KEY];
|
|
21883
22804
|
if (originalPosition === undefined) {
|
|
21884
22805
|
// We never overrode this container's position; nothing to restore.
|
|
@@ -21901,9 +22822,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21901
22822
|
if (!this.containerScrollListener) {
|
|
21902
22823
|
return;
|
|
21903
22824
|
}
|
|
21904
|
-
const customContainer = this.
|
|
21905
|
-
? this.preRenderContainerEl
|
|
21906
|
-
: null;
|
|
22825
|
+
const customContainer = this.getCustomPreRenderContainer();
|
|
21907
22826
|
customContainer === null || customContainer === void 0 ? void 0 : customContainer.removeEventListener('scroll', this.containerScrollListener);
|
|
21908
22827
|
this.containerScrollListener = null;
|
|
21909
22828
|
}
|
|
@@ -21998,10 +22917,14 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
21998
22917
|
* wrapper to overlay it.
|
|
21999
22918
|
*/
|
|
22000
22919
|
async showPreRender() {
|
|
22001
|
-
var _a;
|
|
22920
|
+
var _a, _b;
|
|
22921
|
+
uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_SHOW_PRE_RENDER, {
|
|
22922
|
+
preRenderId: this.getPreRenderConfig().preRenderId,
|
|
22923
|
+
embedComponentType: this.viewConfig.embedComponentType,
|
|
22924
|
+
});
|
|
22002
22925
|
if (this.shouldWaitForRenderPromise)
|
|
22003
22926
|
await this.isReadyForRenderPromise;
|
|
22004
|
-
if (!this.
|
|
22927
|
+
if (!this.getPreRenderConfig().preRenderId) {
|
|
22005
22928
|
logger$3.error(ERROR_MESSAGE.PRERENDER_ID_MISSING);
|
|
22006
22929
|
return this;
|
|
22007
22930
|
}
|
|
@@ -22022,21 +22945,23 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22022
22945
|
}
|
|
22023
22946
|
}
|
|
22024
22947
|
const placeHolderId = this.getPreRenderIds().placeHolder;
|
|
22025
|
-
|
|
22026
|
-
|
|
22027
|
-
|
|
22028
|
-
|
|
22948
|
+
// Remove any stale placeholder from a previous cycle. It is located
|
|
22949
|
+
// via a subtree-wide querySelector, so it may be nested deeper than a
|
|
22950
|
+
// direct child (E.g.: with fullHeight the host app can wrap it). Use
|
|
22951
|
+
// Element.remove() — which detaches from whatever the real parent is —
|
|
22952
|
+
// rather than hostElement.removeChild(), which throws NotFoundError
|
|
22953
|
+
// when the match is not a direct child. Mirrors the wrapper/child
|
|
22954
|
+
// cleanup in createPreRenderWrapper()/createPreRenderChild().
|
|
22955
|
+
(_a = this.hostElement.querySelector(`#${placeHolderId}`)) === null || _a === void 0 ? void 0 : _a.remove();
|
|
22029
22956
|
this.hostElement.appendChild(this.insertedDomEl);
|
|
22030
22957
|
this.syncPreRenderStyle();
|
|
22031
|
-
const customContainer = this.
|
|
22032
|
-
? this.preRenderContainerEl
|
|
22033
|
-
: null;
|
|
22958
|
+
const customContainer = this.getCustomPreRenderContainer();
|
|
22034
22959
|
if (customContainer && !this.containerScrollListener) {
|
|
22035
22960
|
this.containerScrollListener = () => this.syncPreRenderStyle();
|
|
22036
22961
|
customContainer.addEventListener('scroll', this.containerScrollListener);
|
|
22037
22962
|
}
|
|
22038
|
-
if (!this.
|
|
22039
|
-
const observeTarget = (
|
|
22963
|
+
if (!this.getPreRenderConfig().doNotTrackPreRenderSize) {
|
|
22964
|
+
const observeTarget = (_b = this.insertedDomEl) !== null && _b !== void 0 ? _b : this.hostElement;
|
|
22040
22965
|
this.resizeObserver = new ResizeObserver((entries) => {
|
|
22041
22966
|
entries.forEach((entry) => {
|
|
22042
22967
|
if (entry.target === observeTarget) {
|
|
@@ -22077,13 +23002,15 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22077
23002
|
logger$3.error(ERROR_MESSAGE.SYNC_STYLE_CALLED_BEFORE_RENDER);
|
|
22078
23003
|
return;
|
|
22079
23004
|
}
|
|
23005
|
+
if (!this.getPreRenderPlaceHolderElement().isConnected) {
|
|
23006
|
+
logger$3.debug('syncPreRenderStyle skipped: placeholder is detached');
|
|
23007
|
+
return;
|
|
23008
|
+
}
|
|
22080
23009
|
// Self-heal if the resolved container was remounted/detached, so we
|
|
22081
23010
|
// never measure a stale node (which would collapse the wrapper).
|
|
22082
23011
|
this.reconcilePreRenderContainer();
|
|
22083
23012
|
const elBoundingClient = this.getPreRenderPlaceHolderElement().getBoundingClientRect();
|
|
22084
|
-
const containerEl = this.
|
|
22085
|
-
? this.preRenderContainerEl
|
|
22086
|
-
: null;
|
|
23013
|
+
const containerEl = this.getCustomPreRenderContainer();
|
|
22087
23014
|
const containerRect = (_a = containerEl === null || containerEl === void 0 ? void 0 : containerEl.getBoundingClientRect()) !== null && _a !== void 0 ? _a : { x: 0, y: 0 };
|
|
22088
23015
|
const scrollX = containerEl ? containerEl.scrollLeft : window.scrollX;
|
|
22089
23016
|
const scrollY = containerEl ? containerEl.scrollTop : window.scrollY;
|
|
@@ -22100,16 +23027,21 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22100
23027
|
* If the component is not preRendered, it issues a warning.
|
|
22101
23028
|
*/
|
|
22102
23029
|
hidePreRender() {
|
|
23030
|
+
uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_HIDE_PRE_RENDER, {
|
|
23031
|
+
preRenderId: this.getPreRenderConfig().preRenderId,
|
|
23032
|
+
embedComponentType: this.viewConfig.embedComponentType,
|
|
23033
|
+
});
|
|
22103
23034
|
logger$3.debug('HidePreRender Called');
|
|
22104
23035
|
if (!this.isPreRenderConnected()) {
|
|
22105
23036
|
// if the embed component is not preRendered , nothing to hide
|
|
22106
23037
|
logger$3.warn('PreRender should be called before hiding it using hidePreRender.');
|
|
22107
23038
|
return;
|
|
22108
23039
|
}
|
|
23040
|
+
const { zIndex } = this.getPreRenderConfig();
|
|
22109
23041
|
const preRenderHideStyles = {
|
|
22110
23042
|
opacity: '0',
|
|
22111
23043
|
pointerEvents: 'none',
|
|
22112
|
-
zIndex: '-1000',
|
|
23044
|
+
zIndex: zIndex !== undefined ? String(zIndex) : '-1000',
|
|
22113
23045
|
position: 'absolute',
|
|
22114
23046
|
top: '0',
|
|
22115
23047
|
left: '0',
|
|
@@ -22134,10 +23066,11 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22134
23066
|
* @property {string} child - The HTML element ID for the PreRender child.
|
|
22135
23067
|
*/
|
|
22136
23068
|
getPreRenderIds() {
|
|
23069
|
+
const preRenderId = this.getPreRenderConfig().preRenderId;
|
|
22137
23070
|
return {
|
|
22138
|
-
wrapper: `${PRERENDER_WRAPPER_ID_PREFIX}${
|
|
22139
|
-
child: `tsEmbed-pre-render-child-${
|
|
22140
|
-
placeHolder: `tsEmbed-pre-render-placeholder-${
|
|
23071
|
+
wrapper: `${PRERENDER_WRAPPER_ID_PREFIX}${preRenderId}`,
|
|
23072
|
+
child: `tsEmbed-pre-render-child-${preRenderId}`,
|
|
23073
|
+
placeHolder: `tsEmbed-pre-render-placeholder-${preRenderId}`,
|
|
22141
23074
|
};
|
|
22142
23075
|
}
|
|
22143
23076
|
/**
|
|
@@ -22579,6 +23512,31 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22579
23512
|
...(visualOverrides !== undefined ? { visualOverridesParams: visualOverrides } : {}),
|
|
22580
23513
|
},
|
|
22581
23514
|
};
|
|
23515
|
+
}
|
|
23516
|
+
function buildSpotterShareConversationAppInitData(initData, viewConfig) {
|
|
23517
|
+
const { spotterShareConversationConfig } = viewConfig;
|
|
23518
|
+
if (!spotterShareConversationConfig)
|
|
23519
|
+
return initData;
|
|
23520
|
+
return {
|
|
23521
|
+
...initData,
|
|
23522
|
+
embedParams: {
|
|
23523
|
+
...(initData.embedParams || {}),
|
|
23524
|
+
spotterShareConversationConfig,
|
|
23525
|
+
},
|
|
23526
|
+
};
|
|
23527
|
+
}
|
|
23528
|
+
function buildStarterPromptsAppInitData(initData, viewConfig) {
|
|
23529
|
+
var _a;
|
|
23530
|
+
const starterPrompts = (_a = viewConfig.spotterChatConfig) === null || _a === void 0 ? void 0 : _a.starterPrompts;
|
|
23531
|
+
if (!starterPrompts)
|
|
23532
|
+
return initData;
|
|
23533
|
+
return {
|
|
23534
|
+
...initData,
|
|
23535
|
+
embedParams: {
|
|
23536
|
+
...(initData.embedParams || {}),
|
|
23537
|
+
starterPrompts,
|
|
23538
|
+
},
|
|
23539
|
+
};
|
|
22582
23540
|
}
|
|
22583
23541
|
|
|
22584
23542
|
function buildSpotterVizAppInitData(initData, viewConfig) {
|
|
@@ -22640,6 +23598,14 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22640
23598
|
* Monitor Alerts Page
|
|
22641
23599
|
*/
|
|
22642
23600
|
Page["Monitor"] = "monitor";
|
|
23601
|
+
/**
|
|
23602
|
+
* Collections listing page
|
|
23603
|
+
*/
|
|
23604
|
+
Page["Collections"] = "collections";
|
|
23605
|
+
/**
|
|
23606
|
+
* Liveboard schedules listing page
|
|
23607
|
+
*/
|
|
23608
|
+
Page["LiveboardSchedules"] = "liveboard-schedules";
|
|
22643
23609
|
})(exports.Page || (exports.Page = {}));
|
|
22644
23610
|
/**
|
|
22645
23611
|
* Define the initial state of column custom group accordions
|
|
@@ -22688,6 +23654,9 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22688
23654
|
/**
|
|
22689
23655
|
* Modular (v2) introduces the updated Modular Home Experience.
|
|
22690
23656
|
* It serves as the foundational version of the home page.
|
|
23657
|
+
* Use {@link HomePage.ModularWithStylingChanges} (V3) or
|
|
23658
|
+
* {@link HomePage.Focused} (V4) instead.
|
|
23659
|
+
* @deprecated V1 and V2 home page experiences are deprecated.
|
|
22691
23660
|
*/
|
|
22692
23661
|
HomePage["Modular"] = "v2";
|
|
22693
23662
|
/**
|
|
@@ -22782,6 +23751,15 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22782
23751
|
this.setIFrameHeight(frameHeight || this.defaultHeight);
|
|
22783
23752
|
};
|
|
22784
23753
|
if (this.viewConfig.fullHeight === true) {
|
|
23754
|
+
if (this.viewConfig.lazyLoadingForFullHeight === undefined) {
|
|
23755
|
+
this.viewConfig.lazyLoadingForFullHeight = true;
|
|
23756
|
+
}
|
|
23757
|
+
if (this.viewConfig.enableScrollableContainerLazyLoading === undefined) {
|
|
23758
|
+
this.viewConfig.enableScrollableContainerLazyLoading = true;
|
|
23759
|
+
}
|
|
23760
|
+
if (this.viewConfig.lazyLoadingMargin === undefined) {
|
|
23761
|
+
this.viewConfig.lazyLoadingMargin = DEFAULT_LAZY_LOADING_MARGIN;
|
|
23762
|
+
}
|
|
22785
23763
|
this.on(exports.EmbedEvent.RouteChange, this.setIframeHeightForNonEmbedLiveboard);
|
|
22786
23764
|
this.on(exports.EmbedEvent.EmbedHeight, this.updateIFrameHeight);
|
|
22787
23765
|
this.on(exports.EmbedEvent.EmbedIframeCenter, this.embedIframeCenter);
|
|
@@ -22803,14 +23781,20 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22803
23781
|
async getAppInitData() {
|
|
22804
23782
|
const defaultAppInitData = await super.getAppInitData();
|
|
22805
23783
|
const sidebarInitData = buildSpotterSidebarAppInitData(defaultAppInitData, this.viewConfig, this.handleError.bind(this));
|
|
22806
|
-
|
|
23784
|
+
const vizInitData = buildSpotterVizAppInitData(sidebarInitData, this.viewConfig);
|
|
23785
|
+
const shareInitData = buildSpotterShareConversationAppInitData(vizInitData, this.viewConfig);
|
|
23786
|
+
return buildStarterPromptsAppInitData(shareInitData, this.viewConfig);
|
|
22807
23787
|
}
|
|
22808
23788
|
/**
|
|
22809
23789
|
* Constructs a map of parameters to be passed on to the
|
|
22810
23790
|
* embedded Liveboard or visualization.
|
|
22811
23791
|
*/
|
|
22812
23792
|
getEmbedParams() {
|
|
22813
|
-
const
|
|
23793
|
+
const params = this.getEmbedParamsObject();
|
|
23794
|
+
return getQueryParamString(params, true);
|
|
23795
|
+
}
|
|
23796
|
+
getEmbedParamsObject() {
|
|
23797
|
+
const { tag, hideTagFilterChips, hideObjects, liveboardV2, showPrimaryNavbar, disableProfileAndHelp, hideHamburger, hideObjectSearch, hideNotification, hideApplicationSwitcher, hideOrgSwitcher, enableSearchAssist, newConnectionsExperience, fullHeight, dataPanelV2 = true, updatedSpotterExperience, hideLiveboardHeader = false, showLiveboardTitle = true, showLiveboardDescription = true, showMaskedFilterChip = false, isLiveboardMasterpiecesEnabled, newChartsLibrary, hideHomepageLeftNav = false, modularHomeExperience, isLiveboardHeaderSticky = true, enableAskSage, collapseSearchBarInitially = false, enable2ColumnLayout, isLiveboardAlwaysOn12ColLayout, enableCustomColumnGroups = false, dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL, collapseSearchBar = true, isLiveboardCompactHeaderEnabled, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs, isEnhancedFilterInteractivityEnabled, homePageSearchBarMode, isUnifiedSearchExperienceEnabled = true, enablePendoHelp = true, discoveryExperience, coverAndFilterOptionInPDF, isLiveboardStylingAndGroupingEnabled, liveboardGutter, isPNGInScheduledEmailsEnabled = false, isLiveboardXLSXCSVDownloadEnabled, isGranularXLSXCSVSchedulesEnabled, isCentralizedLiveboardFilterUXEnabled = false, isScopedLiveboardFilteringEnabled, isLinkParametersEnabled, updatedSpotterChatPrompt, showSpotterRadiance, defaultQueryMode, enableStopAnswerGenerationEmbed, spotterChatConfig, spotterDataSources, minimumHeight, isThisPeriodInDateFiltersEnabled, enableHomepageAnnouncement = false, isContinuousLiveboardPDFEnabled, enableLiveboardDataCache, } = this.viewConfig;
|
|
22814
23798
|
let params = {};
|
|
22815
23799
|
params[Param.PrimaryNavHidden] = !showPrimaryNavbar;
|
|
22816
23800
|
params[Param.HideProfleAndHelp] = !!disableProfileAndHelp;
|
|
@@ -22820,31 +23804,51 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22820
23804
|
params[Param.ShowLiveboardTitle] = showLiveboardTitle;
|
|
22821
23805
|
params[Param.ShowLiveboardDescription] = !!showLiveboardDescription;
|
|
22822
23806
|
params[Param.ShowMaskedFilterChip] = showMaskedFilterChip;
|
|
22823
|
-
|
|
23807
|
+
if (!isUndefined$1(isLiveboardMasterpiecesEnabled)) {
|
|
23808
|
+
params[Param.IsLiveboardMasterpiecesEnabled] = isLiveboardMasterpiecesEnabled;
|
|
23809
|
+
}
|
|
22824
23810
|
if (newChartsLibrary !== undefined) {
|
|
22825
23811
|
params[Param.EnableNewChartLibrary] = newChartsLibrary;
|
|
22826
23812
|
}
|
|
22827
23813
|
params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
|
|
22828
23814
|
params[Param.IsFullAppEmbed] = true;
|
|
22829
|
-
|
|
22830
|
-
|
|
23815
|
+
if (!isUndefined$1(isLiveboardCompactHeaderEnabled)) {
|
|
23816
|
+
params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
|
|
23817
|
+
}
|
|
23818
|
+
if (!isUndefined$1(isEnhancedFilterInteractivityEnabled)) {
|
|
23819
|
+
params[Param.IsEnhancedFilterInteractivityEnabled] =
|
|
23820
|
+
isEnhancedFilterInteractivityEnabled;
|
|
23821
|
+
}
|
|
22831
23822
|
params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
|
|
22832
23823
|
params[Param.ShowLiveboardReverifyBanner] = showLiveboardReverifyBanner;
|
|
22833
|
-
|
|
23824
|
+
if (!isUndefined$1(hideIrrelevantChipsInLiveboardTabs)) {
|
|
23825
|
+
params[Param.HideIrrelevantFiltersInTab] = hideIrrelevantChipsInLiveboardTabs;
|
|
23826
|
+
}
|
|
22834
23827
|
if (isUnifiedSearchExperienceEnabled !== undefined) {
|
|
22835
23828
|
params[Param.IsUnifiedSearchExperienceEnabled] = isUnifiedSearchExperienceEnabled;
|
|
22836
23829
|
}
|
|
22837
|
-
|
|
23830
|
+
if (!isUndefined$1(coverAndFilterOptionInPDF)) {
|
|
23831
|
+
params[Param.CoverAndFilterOptionInPDF] = !!coverAndFilterOptionInPDF;
|
|
23832
|
+
}
|
|
22838
23833
|
params = this.getBaseQueryParams(params);
|
|
22839
|
-
if (!isUndefined(updatedSpotterChatPrompt)) {
|
|
23834
|
+
if (!isUndefined$1(updatedSpotterChatPrompt)) {
|
|
22840
23835
|
params[Param.UpdatedSpotterChatPrompt] = !!updatedSpotterChatPrompt;
|
|
22841
23836
|
}
|
|
22842
|
-
if (!isUndefined(
|
|
23837
|
+
if (!isUndefined$1(showSpotterRadiance)) {
|
|
23838
|
+
params[Param.ShowSpotterRadiance] = !!showSpotterRadiance;
|
|
23839
|
+
}
|
|
23840
|
+
if (!isUndefined$1(defaultQueryMode)) {
|
|
23841
|
+
params[Param.DefaultQueryMode] = defaultQueryMode;
|
|
23842
|
+
}
|
|
23843
|
+
if (!isUndefined$1(enableStopAnswerGenerationEmbed)) {
|
|
22843
23844
|
params[Param.EnableStopAnswerGenerationEmbed] = !!enableStopAnswerGenerationEmbed;
|
|
22844
23845
|
}
|
|
23846
|
+
if (spotterDataSources && spotterDataSources.length) {
|
|
23847
|
+
params[Param.SpotterDataSources] = JSON.stringify(spotterDataSources);
|
|
23848
|
+
}
|
|
22845
23849
|
// Handle spotterChatConfig params
|
|
22846
23850
|
if (spotterChatConfig) {
|
|
22847
|
-
const { hideToolResponseCardBranding, toolResponseCardBrandingLabel, spotterFileUploadEnabled, spotterFileUploadFileTypes, enableStarterPrompts, } = spotterChatConfig;
|
|
23851
|
+
const { hideToolResponseCardBranding, toolResponseCardBrandingLabel, spotterFileUploadEnabled, spotterFileUploadFileTypes, enableStarterPrompts, openSpotterOnLiveboardByDefault, } = spotterChatConfig;
|
|
22848
23852
|
setParamIfDefined(params, Param.HideToolResponseCardBranding, hideToolResponseCardBranding, true);
|
|
22849
23853
|
setParamIfDefined(params, Param.ToolResponseCardBrandingLabel, toolResponseCardBrandingLabel);
|
|
22850
23854
|
if (spotterFileUploadEnabled !== undefined) {
|
|
@@ -22853,10 +23857,16 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22853
23857
|
if (enableStarterPrompts !== undefined) {
|
|
22854
23858
|
params[Param.IsStarterPromptsEnabled] = enableStarterPrompts;
|
|
22855
23859
|
}
|
|
23860
|
+
if (openSpotterOnLiveboardByDefault !== undefined) {
|
|
23861
|
+
params[Param.OpenSpotterOnLiveboardByDefault] = openSpotterOnLiveboardByDefault;
|
|
23862
|
+
}
|
|
22856
23863
|
if (spotterFileUploadFileTypes !== undefined) {
|
|
22857
23864
|
params[Param.SpotterFileUploadFileTypes] = JSON.stringify(spotterFileUploadFileTypes);
|
|
22858
23865
|
}
|
|
22859
23866
|
}
|
|
23867
|
+
if (!isUndefined$1(updatedSpotterExperience)) {
|
|
23868
|
+
params[Param.UpdatedSpotterExperience] = !!updatedSpotterExperience;
|
|
23869
|
+
}
|
|
22860
23870
|
if (hideObjectSearch) {
|
|
22861
23871
|
params[Param.HideObjectSearch] = !!hideObjectSearch;
|
|
22862
23872
|
}
|
|
@@ -22893,6 +23903,9 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22893
23903
|
if (enable2ColumnLayout !== undefined) {
|
|
22894
23904
|
params[Param.Enable2ColumnLayout] = enable2ColumnLayout;
|
|
22895
23905
|
}
|
|
23906
|
+
if (isLiveboardAlwaysOn12ColLayout !== undefined) {
|
|
23907
|
+
params[Param.IsLiveboardAlwaysOn12ColLayout] = isLiveboardAlwaysOn12ColLayout;
|
|
23908
|
+
}
|
|
22896
23909
|
if (enableAskSage) {
|
|
22897
23910
|
params[Param.enableAskSage] = enableAskSage;
|
|
22898
23911
|
}
|
|
@@ -22905,6 +23918,9 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22905
23918
|
if (isLiveboardStylingAndGroupingEnabled !== undefined) {
|
|
22906
23919
|
params[Param.IsLiveboardStylingAndGroupingEnabled] = isLiveboardStylingAndGroupingEnabled;
|
|
22907
23920
|
}
|
|
23921
|
+
if (liveboardGutter !== undefined) {
|
|
23922
|
+
params[Param.LiveboardGutter] = liveboardGutter;
|
|
23923
|
+
}
|
|
22908
23924
|
if (isPNGInScheduledEmailsEnabled !== undefined) {
|
|
22909
23925
|
params[Param.isPNGInScheduledEmailsEnabled] = isPNGInScheduledEmailsEnabled;
|
|
22910
23926
|
}
|
|
@@ -22923,6 +23939,9 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22923
23939
|
if (isCentralizedLiveboardFilterUXEnabled != undefined) {
|
|
22924
23940
|
params[Param.isCentralizedLiveboardFilterUXEnabled] = isCentralizedLiveboardFilterUXEnabled;
|
|
22925
23941
|
}
|
|
23942
|
+
if (isScopedLiveboardFilteringEnabled !== undefined) {
|
|
23943
|
+
params[Param.isScopedLiveboardFilteringEnabled] = isScopedLiveboardFilteringEnabled;
|
|
23944
|
+
}
|
|
22926
23945
|
if (isThisPeriodInDateFiltersEnabled !== undefined) {
|
|
22927
23946
|
params[Param.IsThisPeriodInDateFiltersEnabled] = isThisPeriodInDateFiltersEnabled;
|
|
22928
23947
|
}
|
|
@@ -22938,7 +23957,6 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22938
23957
|
}
|
|
22939
23958
|
params[Param.DataPanelV2Enabled] = dataPanelV2;
|
|
22940
23959
|
params[Param.HideHomepageLeftNav] = hideHomepageLeftNav;
|
|
22941
|
-
params[Param.ModularHomeExperienceEnabled] = modularHomeExperience;
|
|
22942
23960
|
params[Param.CollapseSearchBarInitially] = collapseSearchBarInitially || collapseSearchBar;
|
|
22943
23961
|
params[Param.EnableCustomColumnGroups] = enableCustomColumnGroups;
|
|
22944
23962
|
if (dataPanelCustomGroupsAccordionInitialState
|
|
@@ -22953,33 +23971,15 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22953
23971
|
if (modularHomeExperience !== undefined) {
|
|
22954
23972
|
params[Param.ModularHomeExperienceEnabled] = modularHomeExperience;
|
|
22955
23973
|
}
|
|
22956
|
-
//
|
|
22957
|
-
//
|
|
22958
|
-
//
|
|
22959
|
-
//
|
|
22960
|
-
//
|
|
22961
|
-
|
|
22962
|
-
|
|
22963
|
-
|
|
22964
|
-
params[Param.HomepageVersion] = 'v2';
|
|
23974
|
+
// Navigation V1/V2 and home page V1/V2 are deprecated. V3 is now the
|
|
23975
|
+
// default experience, Need to send navigationVersion=v3 and
|
|
23976
|
+
// homepageVersion=v3 even when the no discoveryExperience /
|
|
23977
|
+
// modularHomeExperience config is set. Without these
|
|
23978
|
+
// params, older TSA versions (< 26.7) fall back to V2 for nav and
|
|
23979
|
+
// home page, so the defaults must be sent explicitly from the SDK.
|
|
23980
|
+
params[Param.NavigationVersion] = PrimaryNavbarVersion.Sliding;
|
|
23981
|
+
params[Param.HomepageVersion] = HomePage.ModularWithStylingChanges;
|
|
22965
23982
|
if (discoveryExperience) {
|
|
22966
|
-
// primaryNavbarVersion v3 will enabled the new left navigation
|
|
22967
|
-
if (discoveryExperience.primaryNavbarVersion === PrimaryNavbarVersion.Sliding) {
|
|
22968
|
-
params[Param.NavigationVersion] = discoveryExperience.primaryNavbarVersion;
|
|
22969
|
-
// Enable the modularHomeExperience when Sliding is enabled.
|
|
22970
|
-
params[Param.ModularHomeExperienceEnabled] = true;
|
|
22971
|
-
}
|
|
22972
|
-
// homePage v2 will enable the modular home page
|
|
22973
|
-
// and it will override the modularHomeExperience value
|
|
22974
|
-
if (discoveryExperience.homePage === HomePage.Modular) {
|
|
22975
|
-
params[Param.ModularHomeExperienceEnabled] = true;
|
|
22976
|
-
}
|
|
22977
|
-
// ModularWithStylingChanges (v3) introduces the styling changes
|
|
22978
|
-
// to the Modular Homepage.
|
|
22979
|
-
// v3 will be the base version of homePageVersion.
|
|
22980
|
-
if (discoveryExperience.homePage === HomePage.ModularWithStylingChanges) {
|
|
22981
|
-
params[Param.HomepageVersion] = HomePage.ModularWithStylingChanges;
|
|
22982
|
-
}
|
|
22983
23983
|
// listPageVersion can be changed to v2 or v3
|
|
22984
23984
|
if (discoveryExperience.listPageVersion !== undefined) {
|
|
22985
23985
|
params[Param.ListPageVersion] = discoveryExperience.listPageVersion;
|
|
@@ -22989,13 +23989,12 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
22989
23989
|
// The Focused (V4) homepage experience requires the updated
|
|
22990
23990
|
// Spotter chat prompt. Enable it automatically unless the
|
|
22991
23991
|
// developer has explicitly set updatedSpotterChatPrompt.
|
|
22992
|
-
if (isUndefined(updatedSpotterChatPrompt)) {
|
|
23992
|
+
if (isUndefined$1(updatedSpotterChatPrompt)) {
|
|
22993
23993
|
params[Param.UpdatedSpotterChatPrompt] = true;
|
|
22994
23994
|
}
|
|
22995
23995
|
}
|
|
22996
23996
|
}
|
|
22997
|
-
|
|
22998
|
-
return queryParams;
|
|
23997
|
+
return params;
|
|
22999
23998
|
}
|
|
23000
23999
|
/**
|
|
23001
24000
|
* Constructs the URL of the ThoughtSpot app page to be rendered.
|
|
@@ -23030,6 +24029,10 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
23030
24029
|
return modularHomeExperience ? 'home/spotiq-analysis' : 'insights/results';
|
|
23031
24030
|
case exports.Page.Monitor:
|
|
23032
24031
|
return modularHomeExperience ? 'home/monitor-alerts' : 'insights/monitor-alerts';
|
|
24032
|
+
case exports.Page.Collections:
|
|
24033
|
+
return 'collections';
|
|
24034
|
+
case exports.Page.LiveboardSchedules:
|
|
24035
|
+
return 'home/liveboard-schedules';
|
|
23033
24036
|
case exports.Page.Home:
|
|
23034
24037
|
default:
|
|
23035
24038
|
return 'home';
|
|
@@ -23062,11 +24065,13 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
23062
24065
|
* @version SDK: 1.12.0 | ThoughtSpot: 8.4.0.cl, 8.4.1-sw
|
|
23063
24066
|
*/
|
|
23064
24067
|
navigateToPage(path, noReload = false) {
|
|
24068
|
+
var _a;
|
|
23065
24069
|
if (!this.iFrame) {
|
|
23066
24070
|
logger$3.log('Please call render before invoking this method');
|
|
23067
24071
|
return;
|
|
23068
24072
|
}
|
|
23069
|
-
|
|
24073
|
+
const overrideHistoryState = (_a = this.viewConfig) === null || _a === void 0 ? void 0 : _a.overrideHistoryState;
|
|
24074
|
+
if (noReload || overrideHistoryState) {
|
|
23070
24075
|
this.trigger(exports.HostEvent.Navigate, path);
|
|
23071
24076
|
}
|
|
23072
24077
|
else {
|
|
@@ -23313,6 +24318,15 @@ query GetEurekaVizSnapshots(
|
|
|
23313
24318
|
logger$3.warn('Full height is currently only supported for Liveboard embeds.' +
|
|
23314
24319
|
'Using full height with vizId might lead to unexpected behavior.');
|
|
23315
24320
|
}
|
|
24321
|
+
if (this.viewConfig.lazyLoadingForFullHeight === undefined) {
|
|
24322
|
+
this.viewConfig.lazyLoadingForFullHeight = true;
|
|
24323
|
+
}
|
|
24324
|
+
if (this.viewConfig.enableScrollableContainerLazyLoading === undefined) {
|
|
24325
|
+
this.viewConfig.enableScrollableContainerLazyLoading = true;
|
|
24326
|
+
}
|
|
24327
|
+
if (this.viewConfig.lazyLoadingMargin === undefined) {
|
|
24328
|
+
this.viewConfig.lazyLoadingMargin = DEFAULT_LAZY_LOADING_MARGIN;
|
|
24329
|
+
}
|
|
23316
24330
|
this.on(exports.EmbedEvent.RouteChange, this.setIframeHeightForNonEmbedLiveboard);
|
|
23317
24331
|
this.on(exports.EmbedEvent.EmbedHeight, this.updateIFrameHeight);
|
|
23318
24332
|
this.on(exports.EmbedEvent.EmbedIframeCenter, this.embedIframeCenter);
|
|
@@ -23321,7 +24335,8 @@ query GetEurekaVizSnapshots(
|
|
|
23321
24335
|
}
|
|
23322
24336
|
async getAppInitData() {
|
|
23323
24337
|
const defaultAppInitData = await super.getAppInitData();
|
|
23324
|
-
|
|
24338
|
+
const vizInitData = buildSpotterVizAppInitData(defaultAppInitData, this.viewConfig);
|
|
24339
|
+
return buildStarterPromptsAppInitData(vizInitData, this.viewConfig);
|
|
23325
24340
|
}
|
|
23326
24341
|
/**
|
|
23327
24342
|
* Construct a map of params to be passed on to the
|
|
@@ -23335,7 +24350,7 @@ query GetEurekaVizSnapshots(
|
|
|
23335
24350
|
getEmbedParamsObject() {
|
|
23336
24351
|
let params = {};
|
|
23337
24352
|
params = this.getBaseQueryParams(params);
|
|
23338
|
-
const { enableVizTransformations, fullHeight, defaultHeight, minimumHeight, visibleVizs, liveboardV2, vizId, hideTabPanel, activeTabId, hideLiveboardHeader, showLiveboardDescription, showLiveboardTitle, isLiveboardHeaderSticky = true, isLiveboardCompactHeaderEnabled
|
|
24353
|
+
const { enableVizTransformations, fullHeight, defaultHeight, minimumHeight, visibleVizs, liveboardV2, vizId, hideTabPanel, activeTabId, hideLiveboardHeader, showLiveboardDescription, showLiveboardTitle, isLiveboardHeaderSticky = true, isLiveboardCompactHeaderEnabled, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs, showMaskedFilterChip = false, isLiveboardMasterpiecesEnabled, newChartsLibrary, isEnhancedFilterInteractivityEnabled, enableAskSage, enable2ColumnLayout, isLiveboardAlwaysOn12ColLayout, dataPanelV2 = true, updatedSpotterExperience, enableCustomColumnGroups = false, oAuthPollingInterval, isForceRedirect, dataSourceId, coverAndFilterOptionInPDF, isLiveboardStylingAndGroupingEnabled, liveboardGutter, isPNGInScheduledEmailsEnabled = false, isLiveboardXLSXCSVDownloadEnabled, isGranularXLSXCSVSchedulesEnabled, showSpotterLimitations, isCentralizedLiveboardFilterUXEnabled = false, isScopedLiveboardFilteringEnabled, isLinkParametersEnabled, updatedSpotterChatPrompt, showSpotterRadiance, enableStopAnswerGenerationEmbed, spotterChatConfig, isThisPeriodInDateFiltersEnabled, isContinuousLiveboardPDFEnabled, enableLiveboardDataCache, } = this.viewConfig;
|
|
23339
24354
|
const preventLiveboardFilterRemoval = this.viewConfig.preventLiveboardFilterRemoval
|
|
23340
24355
|
|| this.viewConfig.preventPinboardFilterRemoval;
|
|
23341
24356
|
if (fullHeight === true) {
|
|
@@ -23354,10 +24369,13 @@ query GetEurekaVizSnapshots(
|
|
|
23354
24369
|
if (preventLiveboardFilterRemoval) {
|
|
23355
24370
|
params[Param.preventLiveboardFilterRemoval] = true;
|
|
23356
24371
|
}
|
|
23357
|
-
if (!isUndefined(updatedSpotterChatPrompt)) {
|
|
24372
|
+
if (!isUndefined$1(updatedSpotterChatPrompt)) {
|
|
23358
24373
|
params[Param.UpdatedSpotterChatPrompt] = !!updatedSpotterChatPrompt;
|
|
23359
24374
|
}
|
|
23360
|
-
if (!isUndefined(
|
|
24375
|
+
if (!isUndefined$1(showSpotterRadiance)) {
|
|
24376
|
+
params[Param.ShowSpotterRadiance] = !!showSpotterRadiance;
|
|
24377
|
+
}
|
|
24378
|
+
if (!isUndefined$1(enableStopAnswerGenerationEmbed)) {
|
|
23361
24379
|
params[Param.EnableStopAnswerGenerationEmbed] = !!enableStopAnswerGenerationEmbed;
|
|
23362
24380
|
}
|
|
23363
24381
|
if (visibleVizs) {
|
|
@@ -23373,6 +24391,9 @@ query GetEurekaVizSnapshots(
|
|
|
23373
24391
|
if (enable2ColumnLayout !== undefined) {
|
|
23374
24392
|
params[Param.Enable2ColumnLayout] = enable2ColumnLayout;
|
|
23375
24393
|
}
|
|
24394
|
+
if (isLiveboardAlwaysOn12ColLayout !== undefined) {
|
|
24395
|
+
params[Param.IsLiveboardAlwaysOn12ColLayout] = isLiveboardAlwaysOn12ColLayout;
|
|
24396
|
+
}
|
|
23376
24397
|
if (hideTabPanel) {
|
|
23377
24398
|
params[Param.HideTabPanel] = hideTabPanel;
|
|
23378
24399
|
}
|
|
@@ -23400,6 +24421,9 @@ query GetEurekaVizSnapshots(
|
|
|
23400
24421
|
if (isLiveboardStylingAndGroupingEnabled !== undefined) {
|
|
23401
24422
|
params[Param.IsLiveboardStylingAndGroupingEnabled] = isLiveboardStylingAndGroupingEnabled;
|
|
23402
24423
|
}
|
|
24424
|
+
if (liveboardGutter !== undefined) {
|
|
24425
|
+
params[Param.LiveboardGutter] = liveboardGutter;
|
|
24426
|
+
}
|
|
23403
24427
|
if (isPNGInScheduledEmailsEnabled !== undefined) {
|
|
23404
24428
|
params[Param.isPNGInScheduledEmailsEnabled] = isPNGInScheduledEmailsEnabled;
|
|
23405
24429
|
}
|
|
@@ -23412,9 +24436,12 @@ query GetEurekaVizSnapshots(
|
|
|
23412
24436
|
if (showSpotterLimitations !== undefined) {
|
|
23413
24437
|
params[Param.ShowSpotterLimitations] = showSpotterLimitations;
|
|
23414
24438
|
}
|
|
24439
|
+
if (!isUndefined$1(updatedSpotterExperience)) {
|
|
24440
|
+
params[Param.UpdatedSpotterExperience] = !!updatedSpotterExperience;
|
|
24441
|
+
}
|
|
23415
24442
|
// Handle spotterChatConfig params
|
|
23416
24443
|
if (spotterChatConfig) {
|
|
23417
|
-
const { hideToolResponseCardBranding, toolResponseCardBrandingLabel, spotterFileUploadEnabled, spotterFileUploadFileTypes, enableStarterPrompts, } = spotterChatConfig;
|
|
24444
|
+
const { hideToolResponseCardBranding, toolResponseCardBrandingLabel, spotterFileUploadEnabled, spotterFileUploadFileTypes, enableStarterPrompts, openSpotterOnLiveboardByDefault, } = spotterChatConfig;
|
|
23418
24445
|
setParamIfDefined(params, Param.HideToolResponseCardBranding, hideToolResponseCardBranding, true);
|
|
23419
24446
|
setParamIfDefined(params, Param.ToolResponseCardBrandingLabel, toolResponseCardBrandingLabel);
|
|
23420
24447
|
if (spotterFileUploadEnabled !== undefined) {
|
|
@@ -23423,6 +24450,9 @@ query GetEurekaVizSnapshots(
|
|
|
23423
24450
|
if (enableStarterPrompts !== undefined) {
|
|
23424
24451
|
params[Param.IsStarterPromptsEnabled] = enableStarterPrompts;
|
|
23425
24452
|
}
|
|
24453
|
+
if (openSpotterOnLiveboardByDefault !== undefined) {
|
|
24454
|
+
params[Param.OpenSpotterOnLiveboardByDefault] = openSpotterOnLiveboardByDefault;
|
|
24455
|
+
}
|
|
23426
24456
|
if (spotterFileUploadFileTypes !== undefined) {
|
|
23427
24457
|
params[Param.SpotterFileUploadFileTypes] = JSON.stringify(spotterFileUploadFileTypes);
|
|
23428
24458
|
}
|
|
@@ -23433,6 +24463,9 @@ query GetEurekaVizSnapshots(
|
|
|
23433
24463
|
if (isCentralizedLiveboardFilterUXEnabled !== undefined) {
|
|
23434
24464
|
params[Param.isCentralizedLiveboardFilterUXEnabled] = isCentralizedLiveboardFilterUXEnabled;
|
|
23435
24465
|
}
|
|
24466
|
+
if (isScopedLiveboardFilteringEnabled !== undefined) {
|
|
24467
|
+
params[Param.isScopedLiveboardFilteringEnabled] = isScopedLiveboardFilteringEnabled;
|
|
24468
|
+
}
|
|
23436
24469
|
if (isThisPeriodInDateFiltersEnabled !== undefined) {
|
|
23437
24470
|
params[Param.IsThisPeriodInDateFiltersEnabled] = isThisPeriodInDateFiltersEnabled;
|
|
23438
24471
|
}
|
|
@@ -23446,16 +24479,27 @@ query GetEurekaVizSnapshots(
|
|
|
23446
24479
|
params[Param.EnableNewChartLibrary] = newChartsLibrary;
|
|
23447
24480
|
}
|
|
23448
24481
|
params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
|
|
23449
|
-
|
|
24482
|
+
if (!isUndefined$1(isLiveboardCompactHeaderEnabled)) {
|
|
24483
|
+
params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
|
|
24484
|
+
}
|
|
23450
24485
|
params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
|
|
23451
24486
|
params[Param.ShowLiveboardReverifyBanner] = showLiveboardReverifyBanner;
|
|
23452
|
-
|
|
24487
|
+
if (!isUndefined$1(hideIrrelevantChipsInLiveboardTabs)) {
|
|
24488
|
+
params[Param.HideIrrelevantFiltersInTab] = hideIrrelevantChipsInLiveboardTabs;
|
|
24489
|
+
}
|
|
23453
24490
|
params[Param.ShowMaskedFilterChip] = showMaskedFilterChip;
|
|
23454
|
-
|
|
23455
|
-
|
|
24491
|
+
if (!isUndefined$1(isLiveboardMasterpiecesEnabled)) {
|
|
24492
|
+
params[Param.IsLiveboardMasterpiecesEnabled] = isLiveboardMasterpiecesEnabled;
|
|
24493
|
+
}
|
|
24494
|
+
if (!isUndefined$1(isEnhancedFilterInteractivityEnabled)) {
|
|
24495
|
+
params[Param.IsEnhancedFilterInteractivityEnabled] =
|
|
24496
|
+
isEnhancedFilterInteractivityEnabled;
|
|
24497
|
+
}
|
|
23456
24498
|
params[Param.DataPanelV2Enabled] = dataPanelV2;
|
|
23457
24499
|
params[Param.EnableCustomColumnGroups] = enableCustomColumnGroups;
|
|
23458
|
-
|
|
24500
|
+
if (!isUndefined$1(coverAndFilterOptionInPDF)) {
|
|
24501
|
+
params[Param.CoverAndFilterOptionInPDF] = coverAndFilterOptionInPDF;
|
|
24502
|
+
}
|
|
23459
24503
|
getQueryParamString(params, true);
|
|
23460
24504
|
return params;
|
|
23461
24505
|
}
|
|
@@ -23558,7 +24602,7 @@ query GetEurekaVizSnapshots(
|
|
|
23558
24602
|
});
|
|
23559
24603
|
}
|
|
23560
24604
|
async handleRenderForPrerender() {
|
|
23561
|
-
if (isUndefined(this.viewConfig.liveboardId)) {
|
|
24605
|
+
if (isUndefined$1(this.viewConfig.liveboardId)) {
|
|
23562
24606
|
return this.prerenderGeneric();
|
|
23563
24607
|
}
|
|
23564
24608
|
return super.handleRenderForPrerender();
|
|
@@ -23654,7 +24698,7 @@ query GetEurekaVizSnapshots(
|
|
|
23654
24698
|
if (this.isRendered) {
|
|
23655
24699
|
this.trigger(exports.HostEvent.Navigate, path.substring(1));
|
|
23656
24700
|
}
|
|
23657
|
-
else if (this.
|
|
24701
|
+
else if (this.getPreRenderConfig().preRenderId) {
|
|
23658
24702
|
this.preRender(true);
|
|
23659
24703
|
}
|
|
23660
24704
|
else {
|
|
@@ -24195,6 +25239,15 @@ query SendMessage($params: Input_convassist_SendMessageRequest) {
|
|
|
24195
25239
|
});
|
|
24196
25240
|
}
|
|
24197
25241
|
|
|
25242
|
+
/**
|
|
25243
|
+
* The query mode Spotter uses when answering a question.
|
|
25244
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
25245
|
+
*/
|
|
25246
|
+
var SpotterQueryMode;
|
|
25247
|
+
(function (SpotterQueryMode) {
|
|
25248
|
+
SpotterQueryMode["FAST_SEARCH"] = "fastSearch";
|
|
25249
|
+
SpotterQueryMode["RESEARCH"] = "research";
|
|
25250
|
+
})(SpotterQueryMode || (SpotterQueryMode = {}));
|
|
24198
25251
|
/**
|
|
24199
25252
|
* Embed ThoughtSpot AI Conversation.
|
|
24200
25253
|
* @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
|
|
@@ -24235,18 +25288,12 @@ query SendMessage($params: Input_convassist_SendMessageRequest) {
|
|
|
24235
25288
|
*/
|
|
24236
25289
|
async getAppInitData() {
|
|
24237
25290
|
const defaultAppInitData = await super.getAppInitData();
|
|
24238
|
-
|
|
25291
|
+
const sidebarInitData = buildSpotterSidebarAppInitData(defaultAppInitData, this.viewConfig, this.handleError.bind(this));
|
|
25292
|
+
const shareInitData = buildSpotterShareConversationAppInitData(sidebarInitData, this.viewConfig);
|
|
25293
|
+
return buildStarterPromptsAppInitData(shareInitData, this.viewConfig);
|
|
24239
25294
|
}
|
|
24240
25295
|
getEmbedParamsObject() {
|
|
24241
|
-
const {
|
|
24242
|
-
if (!worksheetId) {
|
|
24243
|
-
this.handleError({
|
|
24244
|
-
errorType: ErrorDetailsTypes.VALIDATION_ERROR,
|
|
24245
|
-
message: ERROR_MESSAGE.SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND,
|
|
24246
|
-
code: EmbedErrorCodes.WORKSHEET_ID_NOT_FOUND,
|
|
24247
|
-
error: ERROR_MESSAGE.SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND,
|
|
24248
|
-
});
|
|
24249
|
-
}
|
|
25296
|
+
const { searchOptions, disableSourceSelection, hideSourceSelection, dataPanelV2, updatedSpotterExperience, showSpotterLimitations, hideSampleQuestions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, updatedSpotterChatPrompt, showSpotterRadiance, defaultQueryMode, enableStopAnswerGenerationEmbed, spotterChatConfig, spotterAnalystConfig, } = this.viewConfig;
|
|
24250
25297
|
const queryParams = this.getBaseQueryParams();
|
|
24251
25298
|
queryParams[Param.SpotterEnabled] = true;
|
|
24252
25299
|
// Boolean params
|
|
@@ -24256,7 +25303,10 @@ query SendMessage($params: Input_convassist_SendMessageRequest) {
|
|
|
24256
25303
|
setParamIfDefined(queryParams, Param.ShowSpotterLimitations, showSpotterLimitations, true);
|
|
24257
25304
|
setParamIfDefined(queryParams, Param.HideSampleQuestions, hideSampleQuestions, true);
|
|
24258
25305
|
setParamIfDefined(queryParams, Param.UpdatedSpotterChatPrompt, updatedSpotterChatPrompt, true);
|
|
25306
|
+
setParamIfDefined(queryParams, Param.ShowSpotterRadiance, showSpotterRadiance, true);
|
|
25307
|
+
setParamIfDefined(queryParams, Param.DefaultQueryMode, defaultQueryMode);
|
|
24259
25308
|
setParamIfDefined(queryParams, Param.EnableStopAnswerGenerationEmbed, enableStopAnswerGenerationEmbed, true);
|
|
25309
|
+
setParamIfDefined(queryParams, Param.AnalystId, spotterAnalystConfig === null || spotterAnalystConfig === void 0 ? void 0 : spotterAnalystConfig.analystId);
|
|
24260
25310
|
// Handle spotterChatConfig params
|
|
24261
25311
|
if (spotterChatConfig) {
|
|
24262
25312
|
const { hideToolResponseCardBranding, toolResponseCardBrandingLabel, spotterFileUploadEnabled, spotterFileUploadFileTypes, enableStarterPrompts, } = spotterChatConfig;
|
|
@@ -24268,11 +25318,18 @@ query SendMessage($params: Input_convassist_SendMessageRequest) {
|
|
|
24268
25318
|
queryParams[Param.SpotterFileUploadFileTypes] = JSON.stringify(spotterFileUploadFileTypes);
|
|
24269
25319
|
}
|
|
24270
25320
|
}
|
|
25321
|
+
setParamIfDefined(queryParams, Param.UpdatedSpotterExperience, updatedSpotterExperience, true);
|
|
24271
25322
|
return queryParams;
|
|
24272
25323
|
}
|
|
24273
25324
|
getIframeSrc() {
|
|
24274
|
-
const { worksheetId, searchOptions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, } = this.viewConfig;
|
|
24275
|
-
|
|
25325
|
+
const { worksheetId, searchOptions, runtimeFilters, excludeRuntimeFiltersfromURL, runtimeParameters, excludeRuntimeParametersfromURL, sharedConversationId, dataSources, } = this.viewConfig;
|
|
25326
|
+
// Deep-link into the read-only shared-conversation reader view when a
|
|
25327
|
+
// shared conversation id is supplied (e.g. a recipient landing from a
|
|
25328
|
+
// host-configured CONVERSATION_URL share link); otherwise the normal
|
|
25329
|
+
// Spotter conversation surface.
|
|
25330
|
+
const path = sharedConversationId
|
|
25331
|
+
? `insights/conv-assist/s/${encodeURIComponent(sharedConversationId)}`
|
|
25332
|
+
: 'insights/conv-assist';
|
|
24276
25333
|
const queryParams = this.getEmbedParamsObject();
|
|
24277
25334
|
let query = '';
|
|
24278
25335
|
const queryParamsString = getQueryParamString(queryParams, true);
|
|
@@ -24288,8 +25345,12 @@ query SendMessage($params: Input_convassist_SendMessageRequest) {
|
|
|
24288
25345
|
query += `&${parameterQuery}`;
|
|
24289
25346
|
}
|
|
24290
25347
|
const tsPostHashParams = this.getThoughtSpotPostUrlParams({
|
|
24291
|
-
|
|
24292
|
-
|
|
25348
|
+
...(!(Array.isArray(dataSources) && dataSources.length > 0) && worksheetId
|
|
25349
|
+
&& { worksheet: worksheetId }),
|
|
25350
|
+
...((searchOptions === null || searchOptions === void 0 ? void 0 : searchOptions.searchQuery) && { query: searchOptions.searchQuery }),
|
|
25351
|
+
...(Array.isArray(dataSources)
|
|
25352
|
+
&& dataSources.length > 0
|
|
25353
|
+
&& { dataSources: JSON.stringify(dataSources) }),
|
|
24293
25354
|
});
|
|
24294
25355
|
return `${this.getEmbedBasePath(query)}/embed/${path}${tsPostHashParams}`;
|
|
24295
25356
|
}
|
|
@@ -24337,15 +25398,17 @@ query SendMessage($params: Input_convassist_SendMessageRequest) {
|
|
|
24337
25398
|
// not be destroyed when the component is unmounted.
|
|
24338
25399
|
isPreRenderedComponent = false) => {
|
|
24339
25400
|
const Component = React.forwardRef((props, forwardedRef) => {
|
|
25401
|
+
var _a, _b;
|
|
24340
25402
|
const ref = React.useRef(null);
|
|
24341
25403
|
const { className, style, ...embedProps } = props;
|
|
24342
25404
|
const { viewConfig, listeners } = getViewPropsAndListeners(embedProps);
|
|
25405
|
+
const preRenderId = (_b = (_a = props.preRenderConfig) === null || _a === void 0 ? void 0 : _a.preRenderId) !== null && _b !== void 0 ? _b : props.preRenderId;
|
|
24343
25406
|
const handleDestroy = (tsEmbed) => {
|
|
24344
25407
|
// do not destroy if it is a preRender component
|
|
24345
25408
|
if (isPreRenderedComponent)
|
|
24346
25409
|
return;
|
|
24347
25410
|
// if component is connected to a preRendered component
|
|
24348
|
-
if (
|
|
25411
|
+
if (preRenderId) {
|
|
24349
25412
|
tsEmbed.hidePreRender();
|
|
24350
25413
|
return;
|
|
24351
25414
|
}
|
|
@@ -24356,7 +25419,7 @@ query SendMessage($params: Input_convassist_SendMessageRequest) {
|
|
|
24356
25419
|
};
|
|
24357
25420
|
const handleDefaultRendering = (tsEmbed) => {
|
|
24358
25421
|
// if component is connected to a preRendered component
|
|
24359
|
-
if (
|
|
25422
|
+
if (preRenderId) {
|
|
24360
25423
|
tsEmbed.showPreRender();
|
|
24361
25424
|
return;
|
|
24362
25425
|
}
|
|
@@ -24605,7 +25668,7 @@ query SendMessage($params: Input_convassist_SendMessageRequest) {
|
|
|
24605
25668
|
* const ref = useEmbedRef();
|
|
24606
25669
|
* useEffect(() => {
|
|
24607
25670
|
* ref.current.trigger(
|
|
24608
|
-
*
|
|
25671
|
+
* HostEvent.UpdateRuntimeFilters,
|
|
24609
25672
|
* [{ columnName: 'name', operator: 'EQ', values: ['value']}]);
|
|
24610
25673
|
* }, [])
|
|
24611
25674
|
* return <LiveboardEmbed ref={ref} liveboardId={<id>} />
|