@thoughtspot/visual-embed-sdk 1.51.2 → 1.52.1
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 +9 -1
- package/cjs/src/api-intercept.d.ts.map +1 -1
- package/cjs/src/api-intercept.js +1 -0
- package/cjs/src/api-intercept.js.map +1 -1
- package/cjs/src/contracts/contracts.spec.d.ts +2 -0
- package/cjs/src/contracts/contracts.spec.d.ts.map +1 -0
- package/cjs/src/contracts/contracts.spec.js +345 -0
- package/cjs/src/contracts/contracts.spec.js.map +1 -0
- package/cjs/src/contracts/embed-event-payloads.d.ts +73 -0
- package/cjs/src/contracts/embed-event-payloads.d.ts.map +1 -0
- package/cjs/src/contracts/embed-event-payloads.js +3 -0
- package/cjs/src/contracts/embed-event-payloads.js.map +1 -0
- package/cjs/src/contracts/host-event-contracts.d.ts +378 -0
- package/cjs/src/contracts/host-event-contracts.d.ts.map +1 -0
- package/cjs/src/contracts/host-event-contracts.js +3 -0
- package/cjs/src/contracts/host-event-contracts.js.map +1 -0
- package/cjs/src/contracts/index.d.ts +22 -0
- package/cjs/src/contracts/index.d.ts.map +1 -0
- package/cjs/src/contracts/index.js +33 -0
- package/cjs/src/contracts/index.js.map +1 -0
- package/cjs/src/contracts/ui-passthrough-contracts.d.ts +277 -0
- package/cjs/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
- package/cjs/src/{embed/hostEventClient/contracts.js → contracts/ui-passthrough-contracts.js} +6 -2
- package/cjs/src/contracts/ui-passthrough-contracts.js.map +1 -0
- package/cjs/src/css-variables.d.ts +1 -1
- package/cjs/src/embed/app.d.ts +17 -140
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +20 -120
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +70 -26
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/conversation.d.ts +5 -5
- package/cjs/src/embed/events.spec.js +12 -2
- package/cjs/src/embed/events.spec.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts +3 -2
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.js +23 -18
- package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js +36 -36
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/cjs/src/embed/hostEventClient/utils.d.ts +1 -1
- package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/utils.js +3 -3
- package/cjs/src/embed/hostEventClient/utils.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +9 -161
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +68 -135
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +215 -32
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/search.d.ts +14 -0
- package/cjs/src/embed/search.d.ts.map +1 -1
- package/cjs/src/embed/search.js +4 -1
- package/cjs/src/embed/search.js.map +1 -1
- package/cjs/src/embed/search.spec.js +65 -0
- package/cjs/src/embed/search.spec.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +21 -25
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +105 -72
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +380 -33
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/full-height.d.ts +137 -0
- package/cjs/src/full-height.d.ts.map +1 -0
- package/cjs/src/full-height.js +272 -0
- package/cjs/src/full-height.js.map +1 -0
- package/cjs/src/full-height.spec.d.ts +2 -0
- package/cjs/src/full-height.spec.d.ts.map +1 -0
- package/cjs/src/full-height.spec.js +835 -0
- package/cjs/src/full-height.spec.js.map +1 -0
- package/cjs/src/index.d.ts +4 -3
- package/cjs/src/index.d.ts.map +1 -1
- package/cjs/src/index.js +5 -4
- package/cjs/src/index.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.js +55 -3
- package/cjs/src/react/all-types-export.parity.spec.js.map +1 -1
- package/cjs/src/react/index.d.ts +8 -8
- package/cjs/src/react/index.d.ts.map +1 -1
- package/cjs/src/react/index.js +1 -1
- package/cjs/src/react/index.js.map +1 -1
- package/cjs/src/react/index.spec.js +7 -7
- package/cjs/src/react/index.spec.js.map +1 -1
- package/cjs/src/types.d.ts +664 -39
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +406 -13
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/processTrigger.d.ts +3 -1
- package/cjs/src/utils/processTrigger.d.ts.map +1 -1
- package/cjs/src/utils/processTrigger.js +19 -51
- package/cjs/src/utils/processTrigger.js.map +1 -1
- package/cjs/src/utils/transport/iframe-transport.d.ts +55 -0
- package/cjs/src/utils/transport/iframe-transport.d.ts.map +1 -0
- package/cjs/src/utils/transport/iframe-transport.js +108 -0
- package/cjs/src/utils/transport/iframe-transport.js.map +1 -0
- package/cjs/src/utils/transport/iframe-transport.spec.d.ts +2 -0
- package/cjs/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
- package/cjs/src/utils/transport/iframe-transport.spec.js +140 -0
- package/cjs/src/utils/transport/iframe-transport.spec.js.map +1 -0
- package/cjs/src/utils.d.ts +18 -0
- package/cjs/src/utils.d.ts.map +1 -1
- package/cjs/src/utils.js +39 -1
- package/cjs/src/utils.js.map +1 -1
- package/cjs/src/utils.spec.js +62 -0
- package/cjs/src/utils.spec.js.map +1 -1
- package/dist/{index-D8_Zs-Nr.js → index-C1pmYb5H.js} +1 -1
- package/dist/src/api-intercept.d.ts.map +1 -1
- package/dist/src/contracts/contracts.spec.d.ts +2 -0
- package/dist/src/contracts/contracts.spec.d.ts.map +1 -0
- package/dist/src/contracts/embed-event-payloads.d.ts +73 -0
- package/dist/src/contracts/embed-event-payloads.d.ts.map +1 -0
- package/dist/src/contracts/host-event-contracts.d.ts +378 -0
- package/dist/src/contracts/host-event-contracts.d.ts.map +1 -0
- package/dist/src/contracts/index.d.ts +22 -0
- package/dist/src/contracts/index.d.ts.map +1 -0
- package/dist/src/contracts/ui-passthrough-contracts.d.ts +277 -0
- package/dist/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
- package/dist/src/css-variables.d.ts +1 -1
- package/dist/src/embed/app.d.ts +17 -140
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/conversation.d.ts +5 -5
- package/dist/src/embed/hostEventClient/host-event-client.d.ts +3 -2
- package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/utils.d.ts +1 -1
- package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +9 -161
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/search.d.ts +14 -0
- package/dist/src/embed/search.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +21 -25
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
- package/dist/src/full-height.d.ts +137 -0
- package/dist/src/full-height.d.ts.map +1 -0
- package/dist/src/full-height.spec.d.ts +2 -0
- package/dist/src/full-height.spec.d.ts.map +1 -0
- package/dist/src/index.d.ts +4 -3
- package/dist/src/index.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/index.d.ts +8 -8
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/types.d.ts +664 -39
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/processTrigger.d.ts +3 -1
- package/dist/src/utils/processTrigger.d.ts.map +1 -1
- package/dist/src/utils/transport/iframe-transport.d.ts +55 -0
- package/dist/src/utils/transport/iframe-transport.d.ts.map +1 -0
- package/dist/src/utils/transport/iframe-transport.spec.d.ts +2 -0
- package/dist/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
- package/dist/src/utils.d.ts +18 -0
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +1031 -392
- package/dist/tsembed-react.js +1030 -391
- package/dist/tsembed.es.js +1031 -392
- package/dist/tsembed.js +1029 -390
- package/dist/visual-embed-sdk-react-full.d.ts +1483 -693
- package/dist/visual-embed-sdk-react.d.ts +1364 -647
- package/dist/visual-embed-sdk.d.ts +1426 -659
- package/lib/package.json +9 -1
- package/lib/src/api-intercept.d.ts.map +1 -1
- package/lib/src/api-intercept.js +2 -1
- package/lib/src/api-intercept.js.map +1 -1
- package/lib/src/contracts/contracts.spec.d.ts +2 -0
- package/lib/src/contracts/contracts.spec.d.ts.map +1 -0
- package/lib/src/contracts/contracts.spec.js +342 -0
- package/lib/src/contracts/contracts.spec.js.map +1 -0
- package/lib/src/contracts/embed-event-payloads.d.ts +73 -0
- package/lib/src/contracts/embed-event-payloads.d.ts.map +1 -0
- package/lib/src/contracts/embed-event-payloads.js +2 -0
- package/lib/src/contracts/embed-event-payloads.js.map +1 -0
- package/lib/src/contracts/host-event-contracts.d.ts +378 -0
- package/lib/src/contracts/host-event-contracts.d.ts.map +1 -0
- package/lib/src/contracts/host-event-contracts.js +2 -0
- package/lib/src/contracts/host-event-contracts.js.map +1 -0
- package/lib/src/contracts/index.d.ts +22 -0
- package/lib/src/contracts/index.d.ts.map +1 -0
- package/lib/src/contracts/index.js +22 -0
- package/lib/src/contracts/index.js.map +1 -0
- package/lib/src/contracts/ui-passthrough-contracts.d.ts +277 -0
- package/lib/src/contracts/ui-passthrough-contracts.d.ts.map +1 -0
- package/lib/src/{embed/hostEventClient/contracts.js → contracts/ui-passthrough-contracts.js} +6 -2
- package/lib/src/contracts/ui-passthrough-contracts.js.map +1 -0
- package/lib/src/css-variables.d.ts +1 -1
- package/lib/src/embed/app.d.ts +17 -140
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +22 -122
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +70 -26
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/conversation.d.ts +5 -5
- package/lib/src/embed/events.spec.js +12 -2
- package/lib/src/embed/events.spec.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.d.ts +3 -2
- package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.js +6 -1
- package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.spec.js +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/lib/src/embed/hostEventClient/utils.d.ts +1 -1
- package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/utils.js +1 -1
- package/lib/src/embed/hostEventClient/utils.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +9 -161
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +70 -137
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +215 -32
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/search.d.ts +14 -0
- package/lib/src/embed/search.d.ts.map +1 -1
- package/lib/src/embed/search.js +4 -1
- package/lib/src/embed/search.js.map +1 -1
- package/lib/src/embed/search.spec.js +65 -0
- package/lib/src/embed/search.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +21 -25
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +106 -73
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +378 -31
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/full-height.d.ts +137 -0
- package/lib/src/full-height.d.ts.map +1 -0
- package/lib/src/full-height.js +268 -0
- package/lib/src/full-height.js.map +1 -0
- package/lib/src/full-height.spec.d.ts +2 -0
- package/lib/src/full-height.spec.d.ts.map +1 -0
- package/lib/src/full-height.spec.js +833 -0
- package/lib/src/full-height.spec.js.map +1 -0
- package/lib/src/index.d.ts +4 -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/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.js +55 -3
- package/lib/src/react/all-types-export.parity.spec.js.map +1 -1
- package/lib/src/react/index.d.ts +8 -8
- package/lib/src/react/index.d.ts.map +1 -1
- package/lib/src/react/index.js +1 -1
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/react/index.spec.js +7 -7
- package/lib/src/react/index.spec.js.map +1 -1
- package/lib/src/types.d.ts +664 -39
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +405 -12
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/processTrigger.d.ts +3 -1
- package/lib/src/utils/processTrigger.d.ts.map +1 -1
- package/lib/src/utils/processTrigger.js +19 -51
- package/lib/src/utils/processTrigger.js.map +1 -1
- package/lib/src/utils/transport/iframe-transport.d.ts +55 -0
- package/lib/src/utils/transport/iframe-transport.d.ts.map +1 -0
- package/lib/src/utils/transport/iframe-transport.js +101 -0
- package/lib/src/utils/transport/iframe-transport.js.map +1 -0
- package/lib/src/utils/transport/iframe-transport.spec.d.ts +2 -0
- package/lib/src/utils/transport/iframe-transport.spec.d.ts.map +1 -0
- package/lib/src/utils/transport/iframe-transport.spec.js +138 -0
- package/lib/src/utils/transport/iframe-transport.spec.js.map +1 -0
- package/lib/src/utils.d.ts +18 -0
- package/lib/src/utils.d.ts.map +1 -1
- package/lib/src/utils.js +37 -0
- package/lib/src/utils.js.map +1 -1
- package/lib/src/utils.spec.js +63 -1
- package/lib/src/utils.spec.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +1426 -659
- package/package.json +9 -1
- package/src/api-intercept.ts +2 -1
- package/src/contracts/contracts.spec.ts +392 -0
- package/src/contracts/embed-event-payloads.ts +83 -0
- package/src/contracts/host-event-contracts.ts +456 -0
- package/src/contracts/index.ts +53 -0
- package/src/contracts/ui-passthrough-contracts.ts +301 -0
- package/src/css-variables.ts +1 -1
- package/src/embed/app.spec.ts +86 -34
- package/src/embed/app.ts +37 -264
- package/src/embed/conversation.ts +5 -5
- package/src/embed/events.spec.ts +14 -2
- package/src/embed/hostEventClient/host-event-client.spec.ts +2 -2
- package/src/embed/hostEventClient/host-event-client.ts +18 -5
- package/src/embed/hostEventClient/utils.ts +2 -1
- package/src/embed/liveboard.spec.ts +261 -42
- package/src/embed/liveboard.ts +78 -297
- package/src/embed/search.spec.ts +80 -0
- package/src/embed/search.ts +20 -0
- package/src/embed/ts-embed.spec.ts +518 -31
- package/src/embed/ts-embed.ts +133 -82
- package/src/full-height.spec.ts +1008 -0
- package/src/full-height.ts +361 -0
- package/src/index.ts +95 -5
- package/src/react/all-types-export.parity.spec.ts +63 -3
- package/src/react/all-types-export.ts +46 -0
- package/src/react/index.spec.tsx +7 -7
- package/src/react/index.tsx +9 -9
- package/src/types.ts +665 -37
- package/src/utils/processTrigger.ts +28 -58
- package/src/utils/transport/iframe-transport.spec.ts +177 -0
- package/src/utils/transport/iframe-transport.ts +122 -0
- package/src/utils.spec.ts +71 -0
- package/src/utils.ts +38 -0
- package/cjs/src/embed/hostEventClient/contracts.d.ts +0 -231
- package/cjs/src/embed/hostEventClient/contracts.d.ts.map +0 -1
- package/cjs/src/embed/hostEventClient/contracts.js.map +0 -1
- package/dist/src/embed/hostEventClient/contracts.d.ts +0 -231
- package/dist/src/embed/hostEventClient/contracts.d.ts.map +0 -1
- package/lib/src/embed/hostEventClient/contracts.d.ts +0 -231
- package/lib/src/embed/hostEventClient/contracts.d.ts.map +0 -1
- package/lib/src/embed/hostEventClient/contracts.js.map +0 -1
- package/src/embed/hostEventClient/contracts.ts +0 -262
|
@@ -445,7 +445,7 @@ export interface CustomCssVariables {
|
|
|
445
445
|
* Left and right margin of the header and the tab/filter section of an
|
|
446
446
|
* embedded Liveboard. Use alongside the `liveboardGutter` view config to
|
|
447
447
|
* keep the header aligned with a custom tile-grid gutter.
|
|
448
|
-
* @version SDK: 1.
|
|
448
|
+
* @version SDK: 1.51.1 | ThoughtSpot Cloud: 26.8.0.cl
|
|
449
449
|
*/
|
|
450
450
|
"--ts-var-liveboard-header-horizontal-margin"?: string;
|
|
451
451
|
/**
|
|
@@ -1250,6 +1250,277 @@ declare class AnswerService {
|
|
|
1250
1250
|
addDisplayedVizToLiveboard(liveboardId: string): Promise<any>;
|
|
1251
1251
|
setTMLOverride(override: any): void;
|
|
1252
1252
|
}
|
|
1253
|
+
export interface LiveboardTab {
|
|
1254
|
+
id: string;
|
|
1255
|
+
name: string;
|
|
1256
|
+
[key: string]: any;
|
|
1257
|
+
}
|
|
1258
|
+
export interface LiveboardGroup {
|
|
1259
|
+
id: string;
|
|
1260
|
+
name: string;
|
|
1261
|
+
[key: string]: any;
|
|
1262
|
+
}
|
|
1263
|
+
declare enum ApplicabilityLevel {
|
|
1264
|
+
Liveboard = "LIVEBOARD",
|
|
1265
|
+
Tab = "TAB",
|
|
1266
|
+
Group = "GROUP"
|
|
1267
|
+
}
|
|
1268
|
+
/**
|
|
1269
|
+
* Scopes a filter or parameter to a specific target.
|
|
1270
|
+
* At `LIVEBOARD` level the filter applies to the whole Liveboard, so `targetId`
|
|
1271
|
+
* is not required. `level` accepts the enum or its string value, e.g. `'TAB'`.
|
|
1272
|
+
*/
|
|
1273
|
+
export interface Applicability {
|
|
1274
|
+
level: ApplicabilityLevel | `${ApplicabilityLevel}`;
|
|
1275
|
+
targetId?: string;
|
|
1276
|
+
}
|
|
1277
|
+
export interface FilterUpdate {
|
|
1278
|
+
column: string;
|
|
1279
|
+
oper: string;
|
|
1280
|
+
values: string[];
|
|
1281
|
+
type?: string;
|
|
1282
|
+
applicability?: Applicability;
|
|
1283
|
+
}
|
|
1284
|
+
export interface LiveboardFilter {
|
|
1285
|
+
applicability?: Applicability;
|
|
1286
|
+
[key: string]: any;
|
|
1287
|
+
}
|
|
1288
|
+
export interface LiveboardParameter {
|
|
1289
|
+
applicability?: Applicability;
|
|
1290
|
+
[key: string]: any;
|
|
1291
|
+
}
|
|
1292
|
+
declare enum UIPassthroughEvent {
|
|
1293
|
+
PinAnswerToLiveboard = "addVizToPinboard",
|
|
1294
|
+
SaveAnswer = "saveAnswer",
|
|
1295
|
+
GetDiscoverabilityStatus = "getDiscoverabilityStatus",
|
|
1296
|
+
GetAvailableUIPassthroughs = "getAvailableUiPassthroughs",
|
|
1297
|
+
GetAnswerConfig = "getAnswerPageConfig",
|
|
1298
|
+
GetLiveboardConfig = "getPinboardPageConfig",
|
|
1299
|
+
GetUnsavedAnswerTML = "getUnsavedAnswerTML",
|
|
1300
|
+
UpdateFilters = "updateFilters",
|
|
1301
|
+
Drilldown = "drillDown",
|
|
1302
|
+
GetAnswerSession = "getAnswerSession",
|
|
1303
|
+
GetFilters = "getFilters",
|
|
1304
|
+
GetIframeUrl = "getIframeUrl",
|
|
1305
|
+
GetParameters = "getParameters",
|
|
1306
|
+
GetTML = "getTML",
|
|
1307
|
+
GetTabs = "getTabs",
|
|
1308
|
+
GetGroups = "getGroups",
|
|
1309
|
+
GetExportRequestForCurrentPinboard = "getExportRequestForCurrentPinboard"
|
|
1310
|
+
}
|
|
1311
|
+
/**
|
|
1312
|
+
* UI passthrough contract. Each event's request/response is a named interface so it
|
|
1313
|
+
* documents and imports cleanly; `UIPassthroughContractBase` maps events to the pairs.
|
|
1314
|
+
*/
|
|
1315
|
+
/** Request for {@link UIPassthroughEvent.PinAnswerToLiveboard}. */
|
|
1316
|
+
export interface PinAnswerToLiveboardRequest {
|
|
1317
|
+
vizId?: string;
|
|
1318
|
+
newVizName: string;
|
|
1319
|
+
newVizDescription?: string;
|
|
1320
|
+
liveboardId?: string;
|
|
1321
|
+
tabId?: string;
|
|
1322
|
+
newLiveboardName?: string;
|
|
1323
|
+
newTabName?: string;
|
|
1324
|
+
}
|
|
1325
|
+
/** Response for {@link UIPassthroughEvent.PinAnswerToLiveboard}. */
|
|
1326
|
+
export interface PinAnswerToLiveboardResponse {
|
|
1327
|
+
liveboardId: string;
|
|
1328
|
+
tabId: string;
|
|
1329
|
+
vizId: string;
|
|
1330
|
+
}
|
|
1331
|
+
/** Request for {@link UIPassthroughEvent.SaveAnswer}. */
|
|
1332
|
+
export interface SaveAnswerRequest {
|
|
1333
|
+
name: string;
|
|
1334
|
+
description: string;
|
|
1335
|
+
vizId?: string;
|
|
1336
|
+
isDiscoverable?: boolean;
|
|
1337
|
+
}
|
|
1338
|
+
/** Response for {@link UIPassthroughEvent.SaveAnswer}. */
|
|
1339
|
+
export interface SaveAnswerResponse {
|
|
1340
|
+
answerId: string;
|
|
1341
|
+
saveResponse?: any;
|
|
1342
|
+
shareResponse?: any;
|
|
1343
|
+
}
|
|
1344
|
+
/** Response for {@link UIPassthroughEvent.GetDiscoverabilityStatus}. */
|
|
1345
|
+
export interface GetDiscoverabilityStatusResponse {
|
|
1346
|
+
shouldShowDiscoverability: boolean;
|
|
1347
|
+
isDiscoverabilityCheckboxUnselectedPerOrg: boolean;
|
|
1348
|
+
}
|
|
1349
|
+
/** Response for {@link UIPassthroughEvent.GetAvailableUIPassthroughs}. */
|
|
1350
|
+
export interface GetAvailableUIPassthroughsResponse {
|
|
1351
|
+
keys: string[];
|
|
1352
|
+
}
|
|
1353
|
+
/** Request for {@link UIPassthroughEvent.GetAnswerConfig}. */
|
|
1354
|
+
export interface GetAnswerConfigRequest {
|
|
1355
|
+
vizId?: string;
|
|
1356
|
+
}
|
|
1357
|
+
/** Request for {@link UIPassthroughEvent.GetUnsavedAnswerTML}. */
|
|
1358
|
+
export interface GetUnsavedAnswerTMLRequest {
|
|
1359
|
+
sessionId?: string;
|
|
1360
|
+
vizId?: string;
|
|
1361
|
+
}
|
|
1362
|
+
/** Response for {@link UIPassthroughEvent.GetUnsavedAnswerTML}. */
|
|
1363
|
+
export interface GetUnsavedAnswerTMLResponse {
|
|
1364
|
+
tml: string;
|
|
1365
|
+
}
|
|
1366
|
+
/** Request for {@link UIPassthroughEvent.GetAnswerSession}. */
|
|
1367
|
+
export interface GetAnswerSessionRequest {
|
|
1368
|
+
vizId?: string;
|
|
1369
|
+
}
|
|
1370
|
+
/** Response for {@link UIPassthroughEvent.GetAnswerSession}. */
|
|
1371
|
+
export interface GetAnswerSessionResponse {
|
|
1372
|
+
session: SessionInterface;
|
|
1373
|
+
embedAnswerData?: Record<string, any>;
|
|
1374
|
+
}
|
|
1375
|
+
/** Request for {@link UIPassthroughEvent.GetFilters}. */
|
|
1376
|
+
export interface GetFiltersRequest {
|
|
1377
|
+
vizId?: string;
|
|
1378
|
+
}
|
|
1379
|
+
/** Response for {@link UIPassthroughEvent.GetFilters}. */
|
|
1380
|
+
export interface GetFiltersResponse {
|
|
1381
|
+
liveboardFilters: LiveboardFilter[];
|
|
1382
|
+
runtimeFilters: RuntimeFilter[];
|
|
1383
|
+
}
|
|
1384
|
+
/** Response for {@link UIPassthroughEvent.GetIframeUrl}. */
|
|
1385
|
+
export interface GetIframeUrlResponse {
|
|
1386
|
+
iframeUrl: string;
|
|
1387
|
+
}
|
|
1388
|
+
/** Response for {@link UIPassthroughEvent.GetParameters}. */
|
|
1389
|
+
export interface GetParametersResponse {
|
|
1390
|
+
parameters: LiveboardParameter[];
|
|
1391
|
+
}
|
|
1392
|
+
/** Request for {@link UIPassthroughEvent.GetTML}. */
|
|
1393
|
+
export interface GetTMLRequest {
|
|
1394
|
+
vizId?: string;
|
|
1395
|
+
includeNonExecutedSearchTokens?: boolean;
|
|
1396
|
+
}
|
|
1397
|
+
/** Response for {@link UIPassthroughEvent.GetTabs}. */
|
|
1398
|
+
export interface GetTabsResponse {
|
|
1399
|
+
orderedTabIds: string[];
|
|
1400
|
+
numberOfTabs: number;
|
|
1401
|
+
Tabs: LiveboardTab[];
|
|
1402
|
+
}
|
|
1403
|
+
/** Response for {@link UIPassthroughEvent.GetGroups}. */
|
|
1404
|
+
export interface GetGroupsResponse {
|
|
1405
|
+
orderedGroupIds: string[];
|
|
1406
|
+
numberOfGroups: number;
|
|
1407
|
+
Groups: LiveboardGroup[];
|
|
1408
|
+
}
|
|
1409
|
+
/** Response for {@link UIPassthroughEvent.GetExportRequestForCurrentPinboard}. */
|
|
1410
|
+
export interface GetExportRequestForCurrentPinboardResponse {
|
|
1411
|
+
data: {
|
|
1412
|
+
v2Content: string;
|
|
1413
|
+
};
|
|
1414
|
+
type: UIPassthroughEvent.GetExportRequestForCurrentPinboard;
|
|
1415
|
+
}
|
|
1416
|
+
/**
|
|
1417
|
+
* Request for {@link UIPassthroughEvent.UpdateFilters}. Not the host-event
|
|
1418
|
+
* `UpdateFiltersRequest` (host-event-contracts.ts), which has a different shape.
|
|
1419
|
+
*/
|
|
1420
|
+
export interface UpdateFiltersPassthroughRequest {
|
|
1421
|
+
filter?: FilterUpdate;
|
|
1422
|
+
filters?: FilterUpdate[];
|
|
1423
|
+
}
|
|
1424
|
+
/** Request for {@link UIPassthroughEvent.Drilldown}. */
|
|
1425
|
+
export interface DrilldownRequest {
|
|
1426
|
+
points: {
|
|
1427
|
+
selectedPoints?: string[];
|
|
1428
|
+
clickedPoint?: string;
|
|
1429
|
+
};
|
|
1430
|
+
columnGuid?: string;
|
|
1431
|
+
autoDrillDown?: boolean;
|
|
1432
|
+
vizId?: string;
|
|
1433
|
+
}
|
|
1434
|
+
/** Maps each UI passthrough event to its request/response pair. */
|
|
1435
|
+
export type UIPassthroughContractBase = {
|
|
1436
|
+
[UIPassthroughEvent.PinAnswerToLiveboard]: {
|
|
1437
|
+
request: PinAnswerToLiveboardRequest;
|
|
1438
|
+
response: PinAnswerToLiveboardResponse;
|
|
1439
|
+
};
|
|
1440
|
+
[UIPassthroughEvent.SaveAnswer]: {
|
|
1441
|
+
request: SaveAnswerRequest;
|
|
1442
|
+
response: SaveAnswerResponse;
|
|
1443
|
+
};
|
|
1444
|
+
[UIPassthroughEvent.GetDiscoverabilityStatus]: {
|
|
1445
|
+
request: any;
|
|
1446
|
+
response: GetDiscoverabilityStatusResponse;
|
|
1447
|
+
};
|
|
1448
|
+
[UIPassthroughEvent.GetAvailableUIPassthroughs]: {
|
|
1449
|
+
request: any;
|
|
1450
|
+
response: GetAvailableUIPassthroughsResponse;
|
|
1451
|
+
};
|
|
1452
|
+
[UIPassthroughEvent.GetAnswerConfig]: {
|
|
1453
|
+
request: GetAnswerConfigRequest;
|
|
1454
|
+
response: any;
|
|
1455
|
+
};
|
|
1456
|
+
[UIPassthroughEvent.GetLiveboardConfig]: {
|
|
1457
|
+
request: any;
|
|
1458
|
+
response: any;
|
|
1459
|
+
};
|
|
1460
|
+
[UIPassthroughEvent.GetUnsavedAnswerTML]: {
|
|
1461
|
+
request: GetUnsavedAnswerTMLRequest;
|
|
1462
|
+
response: GetUnsavedAnswerTMLResponse;
|
|
1463
|
+
};
|
|
1464
|
+
[UIPassthroughEvent.GetAnswerSession]: {
|
|
1465
|
+
request: GetAnswerSessionRequest;
|
|
1466
|
+
response: GetAnswerSessionResponse;
|
|
1467
|
+
};
|
|
1468
|
+
[UIPassthroughEvent.GetFilters]: {
|
|
1469
|
+
request: GetFiltersRequest;
|
|
1470
|
+
response: GetFiltersResponse;
|
|
1471
|
+
};
|
|
1472
|
+
[UIPassthroughEvent.GetIframeUrl]: {
|
|
1473
|
+
request: Record<string, never>;
|
|
1474
|
+
response: GetIframeUrlResponse;
|
|
1475
|
+
};
|
|
1476
|
+
[UIPassthroughEvent.GetParameters]: {
|
|
1477
|
+
request: Record<string, never>;
|
|
1478
|
+
response: GetParametersResponse;
|
|
1479
|
+
};
|
|
1480
|
+
[UIPassthroughEvent.GetTML]: {
|
|
1481
|
+
request: GetTMLRequest;
|
|
1482
|
+
response: Record<string, any>;
|
|
1483
|
+
};
|
|
1484
|
+
[UIPassthroughEvent.GetTabs]: {
|
|
1485
|
+
request: Record<string, never>;
|
|
1486
|
+
response: GetTabsResponse;
|
|
1487
|
+
};
|
|
1488
|
+
[UIPassthroughEvent.GetGroups]: {
|
|
1489
|
+
request: Record<string, never>;
|
|
1490
|
+
response: GetGroupsResponse;
|
|
1491
|
+
};
|
|
1492
|
+
[UIPassthroughEvent.GetExportRequestForCurrentPinboard]: {
|
|
1493
|
+
request: Record<string, never>;
|
|
1494
|
+
response: GetExportRequestForCurrentPinboardResponse;
|
|
1495
|
+
};
|
|
1496
|
+
[UIPassthroughEvent.UpdateFilters]: {
|
|
1497
|
+
request: UpdateFiltersPassthroughRequest;
|
|
1498
|
+
response: unknown;
|
|
1499
|
+
};
|
|
1500
|
+
[UIPassthroughEvent.Drilldown]: {
|
|
1501
|
+
request: DrilldownRequest;
|
|
1502
|
+
response: unknown;
|
|
1503
|
+
};
|
|
1504
|
+
};
|
|
1505
|
+
export type UIPassthroughRequest<T extends keyof UIPassthroughContractBase> = UIPassthroughContractBase[T]["request"];
|
|
1506
|
+
export type UIPassthroughResponse<T extends keyof UIPassthroughContractBase> = UIPassthroughContractBase[T]["response"];
|
|
1507
|
+
export type UIPassthroughArrayResponse<ApiName extends keyof UIPassthroughContractBase> = Array<{
|
|
1508
|
+
refId?: string;
|
|
1509
|
+
value?: UIPassthroughResponse<ApiName>;
|
|
1510
|
+
error?: any;
|
|
1511
|
+
}>;
|
|
1512
|
+
export type EmbedApiHostEventMapping = {
|
|
1513
|
+
[HostEvent.Pin]: UIPassthroughEvent.PinAnswerToLiveboard;
|
|
1514
|
+
[HostEvent.SaveAnswer]: UIPassthroughEvent.SaveAnswer;
|
|
1515
|
+
[HostEvent.GetAnswerSession]: UIPassthroughEvent.GetAnswerSession;
|
|
1516
|
+
[HostEvent.GetFilters]: UIPassthroughEvent.GetFilters;
|
|
1517
|
+
[HostEvent.GetIframeUrl]: UIPassthroughEvent.GetIframeUrl;
|
|
1518
|
+
[HostEvent.GetParameters]: UIPassthroughEvent.GetParameters;
|
|
1519
|
+
[HostEvent.GetTML]: UIPassthroughEvent.GetTML;
|
|
1520
|
+
[HostEvent.GetTabs]: UIPassthroughEvent.GetTabs;
|
|
1521
|
+
[HostEvent.GetGroups]: UIPassthroughEvent.GetGroups;
|
|
1522
|
+
[HostEvent.getExportRequestForCurrentPinboard]: UIPassthroughEvent.GetExportRequestForCurrentPinboard;
|
|
1523
|
+
};
|
|
1253
1524
|
declare enum AuthType {
|
|
1254
1525
|
/**
|
|
1255
1526
|
* No authentication on the SDK. Pass-through to the embedded App. Alias for
|
|
@@ -2100,9 +2371,11 @@ export interface FrameParams {
|
|
|
2100
2371
|
}
|
|
2101
2372
|
/**
|
|
2102
2373
|
* Configuration for the pre-render wrapper element.
|
|
2103
|
-
*
|
|
2104
|
-
* {@link BaseViewConfig}
|
|
2105
|
-
*
|
|
2374
|
+
* Each property here supersedes its deprecated top-level counterpart on
|
|
2375
|
+
* {@link BaseViewConfig} — `id` over `preRenderId`, `containerSelector` over
|
|
2376
|
+
* `preRenderContainer` and `doNotTrackSize` over `doNotTrackPreRenderSize` —
|
|
2377
|
+
* and takes precedence when both are set, so existing top-level usage continues
|
|
2378
|
+
* to work without any changes.
|
|
2106
2379
|
*
|
|
2107
2380
|
* @version SDK: 1.52.0
|
|
2108
2381
|
* @example
|
|
@@ -2110,9 +2383,9 @@ export interface FrameParams {
|
|
|
2110
2383
|
* init({ thoughtSpotHost: '...', authType: AuthType.None });
|
|
2111
2384
|
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
2112
2385
|
* preRenderConfig: {
|
|
2113
|
-
*
|
|
2114
|
-
*
|
|
2115
|
-
*
|
|
2386
|
+
* id: 'my-liveboard',
|
|
2387
|
+
* containerSelector: '#my-scroll-container',
|
|
2388
|
+
* doNotTrackSize: false,
|
|
2116
2389
|
* zIndex: -10,
|
|
2117
2390
|
* },
|
|
2118
2391
|
* });
|
|
@@ -2133,7 +2406,7 @@ export interface PreRenderConfig {
|
|
|
2133
2406
|
*
|
|
2134
2407
|
* @default undefined
|
|
2135
2408
|
*/
|
|
2136
|
-
|
|
2409
|
+
id?: string;
|
|
2137
2410
|
/**
|
|
2138
2411
|
* The DOM element or CSS selector string specifying the container into
|
|
2139
2412
|
* which the pre-rendered wrapper is inserted.
|
|
@@ -2149,7 +2422,7 @@ export interface PreRenderConfig {
|
|
|
2149
2422
|
*
|
|
2150
2423
|
* @default document.body
|
|
2151
2424
|
*/
|
|
2152
|
-
|
|
2425
|
+
containerSelector?: string | HTMLElement;
|
|
2153
2426
|
/**
|
|
2154
2427
|
* Disables the `ResizeObserver` that keeps the wrapper sized to the
|
|
2155
2428
|
* placeholder element.
|
|
@@ -2161,7 +2434,7 @@ export interface PreRenderConfig {
|
|
|
2161
2434
|
*
|
|
2162
2435
|
* @default false
|
|
2163
2436
|
*/
|
|
2164
|
-
|
|
2437
|
+
doNotTrackSize?: boolean;
|
|
2165
2438
|
/**
|
|
2166
2439
|
* CSS `z-index` value applied to the pre-render wrapper when hidden.
|
|
2167
2440
|
* Override this when the host page's stacking context does not reach `-1000`
|
|
@@ -2368,7 +2641,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2368
2641
|
*
|
|
2369
2642
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
|
|
2370
2643
|
* @version SDK: 1.25.0 | ThoughtSpot: 9.6.0.cl, 9.8.0.sw
|
|
2371
|
-
* @deprecated Use {@link PreRenderConfig.
|
|
2644
|
+
* @deprecated Use {@link PreRenderConfig.id} via `preRenderConfig` instead.
|
|
2372
2645
|
* @example
|
|
2373
2646
|
* ```js
|
|
2374
2647
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed, SearchEmbed, or LiveboardEmbed
|
|
@@ -2388,7 +2661,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2388
2661
|
* @type {boolean}
|
|
2389
2662
|
* @default false
|
|
2390
2663
|
* @version SDK: 1.24.0 | ThoughtSpot: 9.4.0.cl, 9.4.0.sw
|
|
2391
|
-
* @deprecated Use {@link PreRenderConfig.
|
|
2664
|
+
* @deprecated Use {@link PreRenderConfig.doNotTrackSize} via `preRenderConfig` instead.
|
|
2392
2665
|
* @example
|
|
2393
2666
|
* ```js
|
|
2394
2667
|
* // Disable tracking PreRender size in the configuration
|
|
@@ -2430,7 +2703,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2430
2703
|
*
|
|
2431
2704
|
* @type {string | HTMLElement}
|
|
2432
2705
|
* @version SDK: 1.49.2 | ThoughtSpot: *
|
|
2433
|
-
* @deprecated Use {@link PreRenderConfig.
|
|
2706
|
+
* @deprecated Use {@link PreRenderConfig.containerSelector} via `preRenderConfig` instead.
|
|
2434
2707
|
* @example
|
|
2435
2708
|
* ```js
|
|
2436
2709
|
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
@@ -2443,9 +2716,11 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2443
2716
|
preRenderContainer?: string | HTMLElement;
|
|
2444
2717
|
/**
|
|
2445
2718
|
* Configuration for the pre-render wrapper element.
|
|
2446
|
-
*
|
|
2447
|
-
* `BaseViewConfig`
|
|
2448
|
-
*
|
|
2719
|
+
* Each property here supersedes its deprecated top-level counterpart on
|
|
2720
|
+
* `BaseViewConfig` — `id` over `preRenderId`, `containerSelector` over
|
|
2721
|
+
* `preRenderContainer` and `doNotTrackSize` over `doNotTrackPreRenderSize` —
|
|
2722
|
+
* and takes precedence when both are set, so existing top-level usage
|
|
2723
|
+
* continues to work without any changes.
|
|
2449
2724
|
* See {@link PreRenderConfig} for available options.
|
|
2450
2725
|
*
|
|
2451
2726
|
* @version SDK: 1.52.0
|
|
@@ -2453,7 +2728,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
|
|
|
2453
2728
|
* ```js
|
|
2454
2729
|
* const embed = new LiveboardEmbed('#tsEmbed', {
|
|
2455
2730
|
* preRenderConfig: {
|
|
2456
|
-
*
|
|
2731
|
+
* id: 'my-liveboard',
|
|
2457
2732
|
* zIndex: -10,
|
|
2458
2733
|
* },
|
|
2459
2734
|
* });
|
|
@@ -3205,7 +3480,7 @@ export interface LiveboardAppEmbedViewConfig {
|
|
|
3205
3480
|
*
|
|
3206
3481
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
3207
3482
|
* @type {boolean}
|
|
3208
|
-
* @version SDK: 1.
|
|
3483
|
+
* @version SDK: 1.51.1 | ThoughtSpot Cloud: 26.8.0.cl
|
|
3209
3484
|
* @default false
|
|
3210
3485
|
* @example
|
|
3211
3486
|
* ```js
|
|
@@ -3330,7 +3605,7 @@ export interface LiveboardAppEmbedViewConfig {
|
|
|
3330
3605
|
*
|
|
3331
3606
|
* Supported embed types: `AppEmbed`, `LiveboardEmbed`
|
|
3332
3607
|
* @type {number}
|
|
3333
|
-
* @version SDK: 1.
|
|
3608
|
+
* @version SDK: 1.51.1 | ThoughtSpot Cloud: 26.8.0.cl
|
|
3334
3609
|
* @example
|
|
3335
3610
|
* ```js
|
|
3336
3611
|
* // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
|
|
@@ -3660,6 +3935,15 @@ export interface RuntimeParameter {
|
|
|
3660
3935
|
* Values
|
|
3661
3936
|
*/
|
|
3662
3937
|
value: number | boolean | string;
|
|
3938
|
+
/**
|
|
3939
|
+
* Whether the parameter is visible to the user (`UpdateParameters` only).
|
|
3940
|
+
*/
|
|
3941
|
+
isVisibleToUser?: boolean;
|
|
3942
|
+
/**
|
|
3943
|
+
* Scope of the update (`UpdateParameters` only). Omitting it, or `level`,
|
|
3944
|
+
* targets the Liveboard level.
|
|
3945
|
+
*/
|
|
3946
|
+
applicability?: Applicability;
|
|
3663
3947
|
}
|
|
3664
3948
|
/**
|
|
3665
3949
|
* Event types emitted by the embedded ThoughtSpot application.
|
|
@@ -4111,6 +4395,9 @@ export declare enum EmbedEvent {
|
|
|
4111
4395
|
Download = "download",
|
|
4112
4396
|
/**
|
|
4113
4397
|
* Emitted when the download action is triggered on an Answer.
|
|
4398
|
+
* Payload varies by context: {@link VizScopedRequest} (Search, Answer,
|
|
4399
|
+
* Liveboard), {@link RequiredVizRequest} (Spotter, vizId required). trigger()
|
|
4400
|
+
* accepts the union now; per-context enforced next release.
|
|
4114
4401
|
* Use start:true to subscribe to when download is initiated, or end:true to
|
|
4115
4402
|
* subscribe to when download is completed. Default is end:true.
|
|
4116
4403
|
* @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.4.0.sw
|
|
@@ -4127,6 +4414,9 @@ export declare enum EmbedEvent {
|
|
|
4127
4414
|
DownloadAsPng = "downloadAsPng",
|
|
4128
4415
|
/**
|
|
4129
4416
|
* Emitted when the Download as PDF action is triggered on an Answer
|
|
4417
|
+
* Payload varies by context: {@link VizScopedRequest} (Search, Answer; plus
|
|
4418
|
+
* liveboardId on Liveboard), {@link RequiredVizRequest} (Spotter). trigger()
|
|
4419
|
+
* accepts the union now; per-context enforced next release.
|
|
4130
4420
|
* Use start:true to subscribe to when download as PDF is initiated, or end:true to
|
|
4131
4421
|
* subscribe to when download as PDF is completed. Default is end:true.
|
|
4132
4422
|
* @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
|
|
@@ -4143,6 +4433,9 @@ export declare enum EmbedEvent {
|
|
|
4143
4433
|
DownloadAsPdf = "downloadAsPdf",
|
|
4144
4434
|
/**
|
|
4145
4435
|
* Emitted when the Download as CSV action is triggered on an Answer.
|
|
4436
|
+
* Payload varies by context: {@link VizScopedRequest} (Search, Answer,
|
|
4437
|
+
* Liveboard), {@link RequiredVizRequest} (Spotter, vizId required). trigger()
|
|
4438
|
+
* accepts the union now; per-context enforced next release.
|
|
4146
4439
|
* Use start:true to subscribe to when download as CSV is initiated, or end:true to
|
|
4147
4440
|
* subscribe to when download as CSV is completed. Default is end:true.
|
|
4148
4441
|
* @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
|
|
@@ -4159,6 +4452,9 @@ export declare enum EmbedEvent {
|
|
|
4159
4452
|
DownloadAsCsv = "downloadAsCsv",
|
|
4160
4453
|
/**
|
|
4161
4454
|
* Emitted when the Download as XLSX action is triggered on an Answer.
|
|
4455
|
+
* Payload varies by context: {@link VizScopedRequest} (Search, Answer,
|
|
4456
|
+
* Liveboard), {@link RequiredVizRequest} (Spotter, vizId required). trigger()
|
|
4457
|
+
* accepts the union now; per-context enforced next release.
|
|
4162
4458
|
* Use start:true to subscribe to when download as XLSX is initiated, or end:true to
|
|
4163
4459
|
* subscribe to when download as XLSX is completed. Default is end:true.
|
|
4164
4460
|
* @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
|
|
@@ -4437,6 +4733,9 @@ export declare enum EmbedEvent {
|
|
|
4437
4733
|
Schedule = "subscription",
|
|
4438
4734
|
/**
|
|
4439
4735
|
* Emitted when a user clicks **Edit** on a Liveboard or visualization
|
|
4736
|
+
* Payload varies by context: {@link VizScopedRequest} (Liveboard),
|
|
4737
|
+
* {@link RequiredVizRequest} (Spotter, vizId required). trigger() accepts the
|
|
4738
|
+
* union now; per-context enforced next release.
|
|
4440
4739
|
* @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
|
|
4441
4740
|
* @example
|
|
4442
4741
|
* ```js
|
|
@@ -4978,7 +5277,32 @@ export declare enum EmbedEvent {
|
|
|
4978
5277
|
*/
|
|
4979
5278
|
OrgSwitched = "orgSwitched",
|
|
4980
5279
|
/**
|
|
4981
|
-
* Emitted
|
|
5280
|
+
* Emitted before the embedded ThoughtSpot app sends a network request whose
|
|
5281
|
+
* fully resolved URL matches one of the `interceptUrls` in the view config.
|
|
5282
|
+
* The request is held until you call `responder`, which decides whether the
|
|
5283
|
+
* real request goes out or a response you supply is used in its place.
|
|
5284
|
+
*
|
|
5285
|
+
* Setting `interceptUrls` is what enables this; there is no separate enable
|
|
5286
|
+
* flag. If `responder` is not called within `interceptTimeout` (30000 ms by
|
|
5287
|
+
* default) the request fails and `EmbedEvent.Error` is emitted.
|
|
5288
|
+
*
|
|
5289
|
+
* The payload is `{ input, init, urlType }`, where `input` is the request
|
|
5290
|
+
* URL and `init` is the `fetch` init object, with `init.body` parsed into an
|
|
5291
|
+
* object when it is valid JSON. `urlType` is the matching
|
|
5292
|
+
* `InterceptedApiType`; it is `InterceptedApiType.ALL` for any URL outside
|
|
5293
|
+
* the recognized API groups.
|
|
5294
|
+
*
|
|
5295
|
+
* Interception wraps the outermost layer of `fetch`, so `init` holds the
|
|
5296
|
+
* request as the application composed it, before ThoughtSpot attaches its
|
|
5297
|
+
* authentication headers. Those headers, and any token refresh and retry,
|
|
5298
|
+
* are applied afterwards and only when you pass `execute: true`. Only
|
|
5299
|
+
* requests made through `fetch` are intercepted.
|
|
5300
|
+
*
|
|
5301
|
+
* Pass `execute: true` to let the original request proceed untouched, in
|
|
5302
|
+
* which case any `response` you supply alongside it is ignored. With
|
|
5303
|
+
* `execute: false` the request is never sent, and your `response.body` is
|
|
5304
|
+
* returned to the app as JSON, defaulting to status 200 and a
|
|
5305
|
+
* `Content-Type: application/json` header.
|
|
4982
5306
|
*
|
|
4983
5307
|
* Supported on all embed types.
|
|
4984
5308
|
*
|
|
@@ -5490,6 +5814,7 @@ export declare enum HostEvent {
|
|
|
5490
5814
|
* the search query string.
|
|
5491
5815
|
* Supported in `AppEmbed` and `SearchEmbed` deployments.
|
|
5492
5816
|
* Includes the following properties:
|
|
5817
|
+
* Payload: {@link SearchRequest}.
|
|
5493
5818
|
* @param - Includes the following keys:
|
|
5494
5819
|
* - `searchQuery`: Query string with search tokens.
|
|
5495
5820
|
* - `dataSources`: Data source GUID to search on.
|
|
@@ -5517,6 +5842,9 @@ export declare enum HostEvent {
|
|
|
5517
5842
|
Search = "search",
|
|
5518
5843
|
/**
|
|
5519
5844
|
* Triggers a drill on certain points of the specified column
|
|
5845
|
+
* Payload: {@link DrillDownRequest}; in Liveboard context vizId is required
|
|
5846
|
+
* ({@link RequiredVizRequest}). trigger() accepts the union now; per-context
|
|
5847
|
+
* enforced next release.
|
|
5520
5848
|
* Includes the following properties:
|
|
5521
5849
|
* @param - Includes the following keys:
|
|
5522
5850
|
* - `points`: An object containing `selectedPoints` and/or `clickedPoint`
|
|
@@ -5596,6 +5924,8 @@ export declare enum HostEvent {
|
|
|
5596
5924
|
Reload = "reload",
|
|
5597
5925
|
/**
|
|
5598
5926
|
* Get iframe URL for the current embed view.
|
|
5927
|
+
* Payload: none.
|
|
5928
|
+
* Response: {@link GetIframeUrlResponse}.
|
|
5599
5929
|
* @example
|
|
5600
5930
|
* ```js
|
|
5601
5931
|
* const url = embed.trigger(HostEvent.GetIframeUrl);
|
|
@@ -5614,6 +5944,7 @@ export declare enum HostEvent {
|
|
|
5614
5944
|
GetIframeUrl = "GetIframeUrl",
|
|
5615
5945
|
/**
|
|
5616
5946
|
* Display specific visualizations on a Liveboard.
|
|
5947
|
+
* Payload: `string[]`.
|
|
5617
5948
|
* @param - An array of GUIDs of the visualization to show. The visualization IDs not passed
|
|
5618
5949
|
* in this parameter will be hidden.
|
|
5619
5950
|
* @example
|
|
@@ -5636,6 +5967,7 @@ export declare enum HostEvent {
|
|
|
5636
5967
|
SetVisibleVizs = "SetPinboardVisibleVizs",
|
|
5637
5968
|
/**
|
|
5638
5969
|
* Set a Liveboard tab as an active tab.
|
|
5970
|
+
* Payload: {@link SetActiveTabRequest}.
|
|
5639
5971
|
* @param - tabId - string of id of Tab to show
|
|
5640
5972
|
* @example
|
|
5641
5973
|
* ```js
|
|
@@ -5663,6 +5995,7 @@ export declare enum HostEvent {
|
|
|
5663
5995
|
* and `AppEmbed` only. In full application embedding, this event updates
|
|
5664
5996
|
* the runtime filters applied on the Liveboard and saved Answer objects.
|
|
5665
5997
|
*
|
|
5998
|
+
* Payload: {@link RuntimeFilter}[].
|
|
5666
5999
|
* @param - Array of {@link RuntimeFilter} objects. Each item includes:
|
|
5667
6000
|
* - `columnName`: Name of the column to filter on.
|
|
5668
6001
|
* - `operator`: {@link RuntimeFilterOp} to apply. For more information, see
|
|
@@ -5704,6 +6037,7 @@ export declare enum HostEvent {
|
|
|
5704
6037
|
* Accepts either a plain value or an object with `path`
|
|
5705
6038
|
* and an optional `replace` flag.
|
|
5706
6039
|
*
|
|
6040
|
+
* Payload: `string` | `number` | {@link NavigateRequest}.
|
|
5707
6041
|
* @param data - A string path, a numeric history delta, or an object
|
|
5708
6042
|
* `{ path: string | number, replace?: boolean }`.
|
|
5709
6043
|
* - `path` — the route to navigate to, or a history delta such as `1`
|
|
@@ -5731,6 +6065,9 @@ export declare enum HostEvent {
|
|
|
5731
6065
|
/**
|
|
5732
6066
|
* Open the filter panel for a particular column.
|
|
5733
6067
|
* Works with Search and Liveboard embed.
|
|
6068
|
+
* Payload: {@link OpenFilterRequest} (the cross-context superset). The
|
|
6069
|
+
* accepted fields vary by context: {@link OpenFilterLiveboardRequest},
|
|
6070
|
+
* {@link OpenFilterSpotterRequest}, {@link OpenFilterSearchRequest}.
|
|
5734
6071
|
* @param - { columnId: string,
|
|
5735
6072
|
* name: string,
|
|
5736
6073
|
* type: ATTRIBUTE/MEASURE,
|
|
@@ -5787,7 +6124,7 @@ export declare enum HostEvent {
|
|
|
5787
6124
|
*
|
|
5788
6125
|
* Unlike {@link HostEvent.OpenFilter}, which opens the panel of an
|
|
5789
6126
|
* existing filter, this event starts the creation of a new filter.
|
|
5790
|
-
* @version SDK: 1.
|
|
6127
|
+
* @version SDK: 1.51.1 | ThoughtSpot Cloud: 26.8.0.cl
|
|
5791
6128
|
* @example
|
|
5792
6129
|
* ```js
|
|
5793
6130
|
* liveboardEmbed.trigger(HostEvent.OpenAddFilterModal);
|
|
@@ -5803,7 +6140,7 @@ export declare enum HostEvent {
|
|
|
5803
6140
|
* Hiding the *Add parameter* button with `hiddenActions:
|
|
5804
6141
|
* [Action.AddParameter]` does not block this event, but disabling it
|
|
5805
6142
|
* with `disabledActions` does.
|
|
5806
|
-
* @version SDK: 1.
|
|
6143
|
+
* @version SDK: 1.51.1 | ThoughtSpot Cloud: 26.8.0.cl
|
|
5807
6144
|
* @example
|
|
5808
6145
|
* ```js
|
|
5809
6146
|
* liveboardEmbed.trigger(HostEvent.OpenAddParameterModal);
|
|
@@ -5813,6 +6150,7 @@ export declare enum HostEvent {
|
|
|
5813
6150
|
/**
|
|
5814
6151
|
* Open the parameter panel for a particular parameter on a Liveboard.
|
|
5815
6152
|
* Mirrors {@link HostEvent.OpenFilter} for parameters.
|
|
6153
|
+
* Payload: {@link OpenParameterRequest}.
|
|
5816
6154
|
* @param - Includes the following keys:
|
|
5817
6155
|
* - `parameter`: An object identifying the parameter to open, for
|
|
5818
6156
|
* example, `{ parameterId: '<parameter-GUID>' }`.
|
|
@@ -5844,6 +6182,7 @@ export declare enum HostEvent {
|
|
|
5844
6182
|
OpenParameter = "openParameter",
|
|
5845
6183
|
/**
|
|
5846
6184
|
* Add columns to the current search query.
|
|
6185
|
+
* Payload: `{ columnIds: string[] }`.
|
|
5847
6186
|
* @param - { columnIds: string[] }
|
|
5848
6187
|
* @example
|
|
5849
6188
|
* ```js
|
|
@@ -5862,6 +6201,7 @@ export declare enum HostEvent {
|
|
|
5862
6201
|
AddColumns = "addColumns",
|
|
5863
6202
|
/**
|
|
5864
6203
|
* Remove a column from the current search query.
|
|
6204
|
+
* Payload: `{ columnId: string }`.
|
|
5865
6205
|
* @param - { columnId: string }
|
|
5866
6206
|
* @example
|
|
5867
6207
|
* ```js
|
|
@@ -5886,6 +6226,8 @@ export declare enum HostEvent {
|
|
|
5886
6226
|
* sorting, toggling of legends, and data drill down.
|
|
5887
6227
|
* For more information, see
|
|
5888
6228
|
* link:https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#transient-lb-content[Liveboard data with unsaved changes].
|
|
6229
|
+
* Payload: none.
|
|
6230
|
+
* Response: {@link GetExportRequestForCurrentPinboardResponse}.
|
|
5889
6231
|
* @example
|
|
5890
6232
|
* ```js
|
|
5891
6233
|
* liveboardEmbed.trigger(HostEvent.getExportRequestForCurrentPinboard).then(
|
|
@@ -5907,6 +6249,8 @@ export declare enum HostEvent {
|
|
|
5907
6249
|
* requiring additional user input via the *Pin to Liveboard* modal, define
|
|
5908
6250
|
* the following parameters:
|
|
5909
6251
|
*
|
|
6252
|
+
* Payload: {@link PinAnswerToLiveboardRequest}.
|
|
6253
|
+
* Response: {@link PinAnswerToLiveboardResponse}.
|
|
5910
6254
|
* @param - Includes the following keys:
|
|
5911
6255
|
* - `vizId`: GUID of the saved Answer or Spotter visualization ID to pin to a
|
|
5912
6256
|
* Liveboard.
|
|
@@ -6021,6 +6365,7 @@ export declare enum HostEvent {
|
|
|
6021
6365
|
LiveboardInfo = "pinboardInfo",
|
|
6022
6366
|
/**
|
|
6023
6367
|
* Trigger the **Schedule** action on an embedded Liveboard.
|
|
6368
|
+
* Payload: {@link VizScopedRequest}.
|
|
6024
6369
|
* @example
|
|
6025
6370
|
* ```js
|
|
6026
6371
|
* liveboardEmbed.trigger(HostEvent.Schedule)
|
|
@@ -6036,6 +6381,7 @@ export declare enum HostEvent {
|
|
|
6036
6381
|
Schedule = "subscription",
|
|
6037
6382
|
/**
|
|
6038
6383
|
* Trigger the **Manage schedule** action on an embedded Liveboard
|
|
6384
|
+
* Payload: {@link VizScopedRequest}.
|
|
6039
6385
|
* @example
|
|
6040
6386
|
* ```js
|
|
6041
6387
|
* liveboardEmbed.trigger(HostEvent.SchedulesList)
|
|
@@ -6052,6 +6398,7 @@ export declare enum HostEvent {
|
|
|
6052
6398
|
/**
|
|
6053
6399
|
* Trigger the **Export TML** action on an embedded Liveboard or
|
|
6054
6400
|
* Answer.
|
|
6401
|
+
* Payload: {@link VizScopedRequest}.
|
|
6055
6402
|
* @example
|
|
6056
6403
|
* ```js
|
|
6057
6404
|
* liveboardEmbed.trigger(HostEvent.ExportTML)
|
|
@@ -6074,6 +6421,7 @@ export declare enum HostEvent {
|
|
|
6074
6421
|
/**
|
|
6075
6422
|
* Trigger the **Edit TML** action on an embedded Liveboard or
|
|
6076
6423
|
* saved Answers in the full application embedding.
|
|
6424
|
+
* Payload: {@link VizScopedRequest}.
|
|
6077
6425
|
* @example
|
|
6078
6426
|
* ```js
|
|
6079
6427
|
* liveboardEmbed.trigger(HostEvent.EditTML)
|
|
@@ -6095,6 +6443,7 @@ export declare enum HostEvent {
|
|
|
6095
6443
|
EditTML = "editTSL",
|
|
6096
6444
|
/**
|
|
6097
6445
|
* Trigger the **Update TML** action on an embedded Liveboard.
|
|
6446
|
+
* Payload: {@link VizScopedRequest}.
|
|
6098
6447
|
* @example
|
|
6099
6448
|
* ```js
|
|
6100
6449
|
* liveboardEmbed.trigger(HostEvent.UpdateTML)
|
|
@@ -6112,6 +6461,7 @@ export declare enum HostEvent {
|
|
|
6112
6461
|
* Trigger the **Download PDF** action on an embedded Liveboard,
|
|
6113
6462
|
* visualization or Answer.
|
|
6114
6463
|
*
|
|
6464
|
+
* Payload: {@link VizScopedRequest} plus optional `liveboardId`.
|
|
6115
6465
|
* @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
|
|
6116
6466
|
*
|
|
6117
6467
|
* **NOTE**: The **Download** > **PDF** action is available on
|
|
@@ -6162,6 +6512,7 @@ export declare enum HostEvent {
|
|
|
6162
6512
|
/**
|
|
6163
6513
|
* Trigger the **AI Highlights** action on an embedded Liveboard
|
|
6164
6514
|
*
|
|
6515
|
+
* Payload: none.
|
|
6165
6516
|
* @example
|
|
6166
6517
|
* ```js
|
|
6167
6518
|
* liveboardEmbed.trigger(HostEvent.AIHighlights)
|
|
@@ -6216,6 +6567,9 @@ export declare enum HostEvent {
|
|
|
6216
6567
|
MakeACopy = "makeACopy",
|
|
6217
6568
|
/**
|
|
6218
6569
|
* Trigger the **Delete** action for a Liveboard.
|
|
6570
|
+
* Payload varies by context: {@link RequiredVizRequest} (Liveboard, vizId
|
|
6571
|
+
* required), {@link VizScopedRequest} (Search). trigger() accepts the union
|
|
6572
|
+
* now; per-context enforced next release.
|
|
6219
6573
|
* @example
|
|
6220
6574
|
* ```js
|
|
6221
6575
|
* appEmbed.trigger(HostEvent.Remove)
|
|
@@ -6230,6 +6584,7 @@ export declare enum HostEvent {
|
|
|
6230
6584
|
Remove = "delete",
|
|
6231
6585
|
/**
|
|
6232
6586
|
* Trigger the **Explore** action on a visualization.
|
|
6587
|
+
* Payload: {@link RequiredVizRequest}.
|
|
6233
6588
|
* @param - an object with `vizId` as a key
|
|
6234
6589
|
* @example
|
|
6235
6590
|
* ```js
|
|
@@ -6249,6 +6604,7 @@ export declare enum HostEvent {
|
|
|
6249
6604
|
/**
|
|
6250
6605
|
* Trigger the **Create alert** action on a KPI chart
|
|
6251
6606
|
* in a Liveboard or saved Answer.
|
|
6607
|
+
* Payload: {@link VizScopedRequest}.
|
|
6252
6608
|
* @param - an object with `vizId` as a key
|
|
6253
6609
|
* @example
|
|
6254
6610
|
* ```js
|
|
@@ -6280,6 +6636,7 @@ export declare enum HostEvent {
|
|
|
6280
6636
|
/**
|
|
6281
6637
|
* Trigger the **Manage alerts** action on a KPI chart
|
|
6282
6638
|
* in a visualization or saved Answer.
|
|
6639
|
+
* Payload: {@link VizScopedRequest}.
|
|
6283
6640
|
* @param - an object with `vizId` as a key
|
|
6284
6641
|
* @example
|
|
6285
6642
|
* ```js
|
|
@@ -6317,6 +6674,7 @@ export declare enum HostEvent {
|
|
|
6317
6674
|
* on a Liveboard.
|
|
6318
6675
|
*
|
|
6319
6676
|
* This event is not supported in visualization embed and search embed.
|
|
6677
|
+
* Payload: {@link VizScopedRequest}.
|
|
6320
6678
|
* @param - Object parameter. Includes the following keys:
|
|
6321
6679
|
* - `vizId`: To trigger the action for a specific visualization in Liveboard embed,
|
|
6322
6680
|
* pass in `vizId` as a key. In Spotter embed, `vizId` refers to the Answer ID and
|
|
@@ -6359,6 +6717,7 @@ export declare enum HostEvent {
|
|
|
6359
6717
|
Edit = "edit",
|
|
6360
6718
|
/**
|
|
6361
6719
|
* Trigger the **Copy link** action on a Liveboard or visualization
|
|
6720
|
+
* Payload: {@link VizScopedRequest}.
|
|
6362
6721
|
* @param - object - to trigger the action for a
|
|
6363
6722
|
* specific visualization in Liveboard embed, pass in `vizId` as a key
|
|
6364
6723
|
* @example
|
|
@@ -6404,6 +6763,7 @@ export declare enum HostEvent {
|
|
|
6404
6763
|
CopyLink = "embedDocument",
|
|
6405
6764
|
/**
|
|
6406
6765
|
* Trigger the **Present** action on a Liveboard or visualization
|
|
6766
|
+
* Payload: {@link VizScopedRequest}.
|
|
6407
6767
|
* @param - object - to trigger the action for a specific visualization
|
|
6408
6768
|
* in Liveboard embed, pass in `vizId` as a key
|
|
6409
6769
|
* @example
|
|
@@ -6449,6 +6809,8 @@ export declare enum HostEvent {
|
|
|
6449
6809
|
Present = "present",
|
|
6450
6810
|
/**
|
|
6451
6811
|
* Get TML for the current search.
|
|
6812
|
+
* Payload: {@link GetTMLRequest}.
|
|
6813
|
+
* Response: `Record<string, any>`.
|
|
6452
6814
|
* @example
|
|
6453
6815
|
* ```js
|
|
6454
6816
|
* searchEmbed.trigger(HostEvent.GetTML).then((tml) => {
|
|
@@ -6498,6 +6860,7 @@ export declare enum HostEvent {
|
|
|
6498
6860
|
* Trigger the **Show underlying data** action on a
|
|
6499
6861
|
* chart or table.
|
|
6500
6862
|
*
|
|
6863
|
+
* Payload: {@link VizScopedRequest}.
|
|
6501
6864
|
* @param - an object with vizId as a key
|
|
6502
6865
|
* @example
|
|
6503
6866
|
* ```js
|
|
@@ -6531,6 +6894,7 @@ export declare enum HostEvent {
|
|
|
6531
6894
|
* Trigger the **Delete** action for a visualization
|
|
6532
6895
|
* in an embedded Liveboard, or a chart or table
|
|
6533
6896
|
* generated from Search.
|
|
6897
|
+
* Payload: {@link VizScopedRequest}.
|
|
6534
6898
|
* @param - Liveboard embed takes an object with `vizId` as a key.
|
|
6535
6899
|
* Can be left empty if embedding Search or visualization.
|
|
6536
6900
|
* @example
|
|
@@ -6559,6 +6923,7 @@ export declare enum HostEvent {
|
|
|
6559
6923
|
/**
|
|
6560
6924
|
* Trigger the **SpotIQ analyze** action on a
|
|
6561
6925
|
* chart or table.
|
|
6926
|
+
* Payload: {@link VizScopedRequest}.
|
|
6562
6927
|
* @param - Liveboard embed takes `vizId` as a
|
|
6563
6928
|
* key. Can be left undefined when embedding Search or
|
|
6564
6929
|
* visualization.
|
|
@@ -6621,6 +6986,7 @@ export declare enum HostEvent {
|
|
|
6621
6986
|
/**
|
|
6622
6987
|
* Trigger the **Download** > **PNG** action on
|
|
6623
6988
|
* charts in the embedded view.
|
|
6989
|
+
* Payload: {@link VizScopedRequest}.
|
|
6624
6990
|
* @example
|
|
6625
6991
|
* ```js
|
|
6626
6992
|
* liveboardEmbed.trigger(HostEvent.DownloadAsPng,
|
|
@@ -6651,6 +7017,7 @@ export declare enum HostEvent {
|
|
|
6651
7017
|
/**
|
|
6652
7018
|
* Trigger the **Download** > **CSV** action on tables in
|
|
6653
7019
|
* the embedded view.
|
|
7020
|
+
* Payload: {@link VizScopedRequest}.
|
|
6654
7021
|
* @param - `vizId` refers to the Visualization ID in Spotter embed and is required in Spotter embed.
|
|
6655
7022
|
* @example
|
|
6656
7023
|
* ```js
|
|
@@ -6690,6 +7057,7 @@ export declare enum HostEvent {
|
|
|
6690
7057
|
/**
|
|
6691
7058
|
* Trigger the **Download** > **XLSX** action on tables
|
|
6692
7059
|
* in the embedded view.
|
|
7060
|
+
* Payload: {@link VizScopedRequest}.
|
|
6693
7061
|
* @param - `vizId` refers to the Visualization ID in Spotter embed and is required in Spotter embed.
|
|
6694
7062
|
* @example
|
|
6695
7063
|
* ```js
|
|
@@ -6729,6 +7097,7 @@ export declare enum HostEvent {
|
|
|
6729
7097
|
/**
|
|
6730
7098
|
* Trigger the **Share** action on an embedded
|
|
6731
7099
|
* Liveboard or Answer.
|
|
7100
|
+
* Payload: {@link VizScopedRequest}.
|
|
6732
7101
|
* @example
|
|
6733
7102
|
* ```js
|
|
6734
7103
|
* liveboardEmbed.trigger(HostEvent.Share)
|
|
@@ -6755,6 +7124,7 @@ export declare enum HostEvent {
|
|
|
6755
7124
|
* Trigger the **Save** action on a Liveboard, Answer, or Spotter.
|
|
6756
7125
|
* Saves the changes.
|
|
6757
7126
|
*
|
|
7127
|
+
* Payload: {@link VizScopedRequest}.
|
|
6758
7128
|
* @param - `vizId` refers to the Spotter Visualization Id used in Spotter embed.
|
|
6759
7129
|
* It is required and can be retrieved from the data embed event.
|
|
6760
7130
|
*
|
|
@@ -6806,6 +7176,7 @@ export declare enum HostEvent {
|
|
|
6806
7176
|
/**
|
|
6807
7177
|
* Trigger the **Sync to Sheets** action on an embedded visualization or Answer
|
|
6808
7178
|
* Sends data from an Answer or Liveboard visualization to a Google sheet.
|
|
7179
|
+
* Payload: {@link VizScopedRequest}.
|
|
6809
7180
|
* @param - an object with `vizId` as a key
|
|
6810
7181
|
* @example
|
|
6811
7182
|
* ```js
|
|
@@ -6836,6 +7207,7 @@ export declare enum HostEvent {
|
|
|
6836
7207
|
* Trigger the **Sync to Other Apps** action on an embedded visualization or Answer
|
|
6837
7208
|
* Sends data from an Answer or Liveboard visualization to third-party apps such
|
|
6838
7209
|
* as Slack, Salesforce, Microsoft Teams, ServiceNow and so on.
|
|
7210
|
+
* Payload: {@link VizScopedRequest}.
|
|
6839
7211
|
* @param - an object with vizId as a key
|
|
6840
7212
|
* @example
|
|
6841
7213
|
* ```js
|
|
@@ -6866,6 +7238,7 @@ export declare enum HostEvent {
|
|
|
6866
7238
|
* Trigger the **Manage pipelines** action on an embedded
|
|
6867
7239
|
* visualization or Answer.
|
|
6868
7240
|
* Allows users to manage ThoughtSpot Sync pipelines.
|
|
7241
|
+
* Payload: {@link VizScopedRequest}.
|
|
6869
7242
|
* @param - an object with `vizId` as a key
|
|
6870
7243
|
* @example
|
|
6871
7244
|
* ```js
|
|
@@ -6894,6 +7267,7 @@ export declare enum HostEvent {
|
|
|
6894
7267
|
ManagePipelines = "manage-pipeline",
|
|
6895
7268
|
/**
|
|
6896
7269
|
* Reset search operation on the Search or Answer page.
|
|
7270
|
+
* Payload: none.
|
|
6897
7271
|
* @example
|
|
6898
7272
|
* ```js
|
|
6899
7273
|
* searchEmbed.trigger(HostEvent.ResetSearch)
|
|
@@ -6921,6 +7295,8 @@ export declare enum HostEvent {
|
|
|
6921
7295
|
* whole Liveboard.
|
|
6922
7296
|
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
6923
7297
|
* ThoughtSpot: 26.10.0.cl.
|
|
7298
|
+
* Payload: {@link GetFiltersRequest}.
|
|
7299
|
+
* Response: {@link GetFiltersResponse}.
|
|
6924
7300
|
* @example
|
|
6925
7301
|
* ```js
|
|
6926
7302
|
* const data = await liveboardEmbed.trigger(HostEvent.GetFilters);
|
|
@@ -6940,6 +7316,7 @@ export declare enum HostEvent {
|
|
|
6940
7316
|
GetFilters = "getFilters",
|
|
6941
7317
|
/**
|
|
6942
7318
|
* Update one or several filters applied on a Liveboard.
|
|
7319
|
+
* Payload: {@link UpdateFiltersRequest}.
|
|
6943
7320
|
* @param - Includes the following keys:
|
|
6944
7321
|
* - `filter`: A single filter object containing column name, filter operator, and
|
|
6945
7322
|
* values.
|
|
@@ -7068,6 +7445,8 @@ export declare enum HostEvent {
|
|
|
7068
7445
|
UpdateFilters = "updateFilters",
|
|
7069
7446
|
/**
|
|
7070
7447
|
* Get tab details for the current Liveboard.
|
|
7448
|
+
* Payload: none.
|
|
7449
|
+
* Response: {@link GetTabsResponse}.
|
|
7071
7450
|
* @example
|
|
7072
7451
|
* ```js
|
|
7073
7452
|
* liveboardEmbed.trigger(HostEvent.GetTabs).then((tabDetails) => {
|
|
@@ -7093,6 +7472,8 @@ export declare enum HostEvent {
|
|
|
7093
7472
|
/**
|
|
7094
7473
|
* Get group details for the current Liveboard.
|
|
7095
7474
|
* Mirrors {@link HostEvent.GetTabs} for filter/parameter groups.
|
|
7475
|
+
* Payload: none.
|
|
7476
|
+
* Response: {@link GetGroupsResponse}.
|
|
7096
7477
|
* @example
|
|
7097
7478
|
* ```js
|
|
7098
7479
|
* liveboardEmbed.trigger(HostEvent.GetGroups).then((groupDetails) => {
|
|
@@ -7117,6 +7498,7 @@ export declare enum HostEvent {
|
|
|
7117
7498
|
GetGroups = "getGroups",
|
|
7118
7499
|
/**
|
|
7119
7500
|
* Set the visible tabs on a Liveboard.
|
|
7501
|
+
* Payload: `string[]`.
|
|
7120
7502
|
* @param - an array of ids of tabs to show, the IDs not passed
|
|
7121
7503
|
* will be hidden.
|
|
7122
7504
|
* @example
|
|
@@ -7139,6 +7521,7 @@ export declare enum HostEvent {
|
|
|
7139
7521
|
SetVisibleTabs = "SetPinboardVisibleTabs",
|
|
7140
7522
|
/**
|
|
7141
7523
|
* Set the hidden tabs on a Liveboard.
|
|
7524
|
+
* Payload: `string[]`.
|
|
7142
7525
|
* @param - an array of the IDs of the tabs to hide.
|
|
7143
7526
|
* The IDs not passed will be shown.
|
|
7144
7527
|
* @example
|
|
@@ -7167,6 +7550,8 @@ export declare enum HostEvent {
|
|
|
7167
7550
|
* `getAnswerService()` method on the embed instance to get an AnswerService
|
|
7168
7551
|
* object that provides a more convenient interface for working with answers.
|
|
7169
7552
|
*
|
|
7553
|
+
* Payload: {@link GetAnswerSessionRequest}.
|
|
7554
|
+
* Response: {@link GetAnswerSessionResponse}.
|
|
7170
7555
|
* @example
|
|
7171
7556
|
* ```js
|
|
7172
7557
|
* // Preferred way to get an AnswerService
|
|
@@ -7194,6 +7579,7 @@ export declare enum HostEvent {
|
|
|
7194
7579
|
GetAnswerSession = "getAnswerSession",
|
|
7195
7580
|
/**
|
|
7196
7581
|
* Trigger the *Ask Sage* action for visualizations
|
|
7582
|
+
* Payload: {@link RequiredVizRequest}.
|
|
7197
7583
|
* @example
|
|
7198
7584
|
* ```js
|
|
7199
7585
|
* liveboardEmbed.trigger(HostEvent.AskSage,
|
|
@@ -7205,6 +7591,7 @@ export declare enum HostEvent {
|
|
|
7205
7591
|
/**
|
|
7206
7592
|
* Trigger cross filter update action on a Liveboard.
|
|
7207
7593
|
*
|
|
7594
|
+
* Payload: {@link UpdateCrossFilterRequest}.
|
|
7208
7595
|
* @example
|
|
7209
7596
|
* ```js
|
|
7210
7597
|
* liveboardEmbed.trigger(HostEvent.UpdateCrossFilter, {
|
|
@@ -7220,7 +7607,9 @@ export declare enum HostEvent {
|
|
|
7220
7607
|
UpdateCrossFilter = "UpdateCrossFilter",
|
|
7221
7608
|
/**
|
|
7222
7609
|
* Trigger reset action for a personalized Liveboard view.
|
|
7223
|
-
* This event is deprecated.
|
|
7610
|
+
* This event is deprecated.
|
|
7611
|
+
* Use {@link HostEvent.ResetLiveboardPersonalizedView} instead.
|
|
7612
|
+
* Payload: none.
|
|
7224
7613
|
* @example
|
|
7225
7614
|
* ```js
|
|
7226
7615
|
* liveboardEmbed.trigger(HostEvent.ResetLiveboardPersonalisedView);
|
|
@@ -7241,6 +7630,7 @@ export declare enum HostEvent {
|
|
|
7241
7630
|
/**
|
|
7242
7631
|
* Triggers an action to update Parameter values on embedded
|
|
7243
7632
|
* Answers, Liveboard, and Spotter answer in Edit mode.
|
|
7633
|
+
* Payload: {@link RuntimeParameter}[].
|
|
7244
7634
|
* @param - Includes the following keys for each item:
|
|
7245
7635
|
* - `name`: Name of the parameter.
|
|
7246
7636
|
* - `value`: The value to set for the parameter.
|
|
@@ -7298,6 +7688,8 @@ export declare enum HostEvent {
|
|
|
7298
7688
|
* whole Liveboard.
|
|
7299
7689
|
* The `applicability` attribute is available from SDK: 1.53.0 |
|
|
7300
7690
|
* ThoughtSpot: 26.10.0.cl.
|
|
7691
|
+
* Payload: none.
|
|
7692
|
+
* Response: {@link GetParametersResponse}.
|
|
7301
7693
|
* @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
|
|
7302
7694
|
* ```js
|
|
7303
7695
|
* liveboardEmbed.trigger(HostEvent.GetParameters).then((parameter) => {
|
|
@@ -7335,6 +7727,7 @@ export declare enum HostEvent {
|
|
|
7335
7727
|
* ```js
|
|
7336
7728
|
* liveboardEmbed.trigger(HostEvent.UpdatePersonalisedView, {viewId: '1234'})
|
|
7337
7729
|
* ```
|
|
7730
|
+
* Payload: {@link PersonalisedViewRequest} (`viewId` only).
|
|
7338
7731
|
* @example
|
|
7339
7732
|
* ```js
|
|
7340
7733
|
* // Update personalized view from liveboard context
|
|
@@ -7367,6 +7760,7 @@ export declare enum HostEvent {
|
|
|
7367
7760
|
* If neither is provided, the Liveboard resets to the original/default view.
|
|
7368
7761
|
* When a `viewName` is provided and multiple views share
|
|
7369
7762
|
* the same name, the first match is selected.
|
|
7763
|
+
* Payload: {@link PersonalisedViewRequest}.
|
|
7370
7764
|
* @example
|
|
7371
7765
|
* ```js
|
|
7372
7766
|
* liveboardEmbed.trigger(
|
|
@@ -7410,6 +7804,8 @@ export declare enum HostEvent {
|
|
|
7410
7804
|
* If no parameters are specified, the save action is
|
|
7411
7805
|
* triggered with a modal to prompt users to
|
|
7412
7806
|
* add a name and description for the Answer.
|
|
7807
|
+
* Payload: {@link SaveAnswerRequest}.
|
|
7808
|
+
* Response: {@link SaveAnswerResponse}.
|
|
7413
7809
|
* @param - Includes the following keys:
|
|
7414
7810
|
* - `vizId`: Refers to the Answer ID in Spotter embed and is **required** in Spotter
|
|
7415
7811
|
* embed.
|
|
@@ -7495,6 +7891,7 @@ export declare enum HostEvent {
|
|
|
7495
7891
|
/**
|
|
7496
7892
|
* Triggers a search operation with the search tokens specified in
|
|
7497
7893
|
* the search query string in spotter embed.
|
|
7894
|
+
* Payload: {@link SpotterSearchRequest}.
|
|
7498
7895
|
* @param - Includes the following keys:
|
|
7499
7896
|
* - `query`: Text string in Natural Language format.
|
|
7500
7897
|
* - `executeSearch`: Boolean to execute search and update search query.
|
|
@@ -7519,6 +7916,7 @@ export declare enum HostEvent {
|
|
|
7519
7916
|
SpotterSearch = "SpotterSearch",
|
|
7520
7917
|
/**
|
|
7521
7918
|
* Edits the last prompt in spotter embed.
|
|
7919
|
+
* Payload: `string`.
|
|
7522
7920
|
* @param - `query`: Text string
|
|
7523
7921
|
* @example
|
|
7524
7922
|
* ```js
|
|
@@ -7535,6 +7933,7 @@ export declare enum HostEvent {
|
|
|
7535
7933
|
EditLastPrompt = "EditLastPrompt",
|
|
7536
7934
|
/**
|
|
7537
7935
|
* Opens the data source preview modal in Spotter Embed.
|
|
7936
|
+
* Payload: none.
|
|
7538
7937
|
* @example
|
|
7539
7938
|
* ```js
|
|
7540
7939
|
* spotterEmbed.trigger(HostEvent.PreviewSpotterData);
|
|
@@ -7570,6 +7969,7 @@ export declare enum HostEvent {
|
|
|
7570
7969
|
DataModelInstructions = "DataModelInstructions",
|
|
7571
7970
|
/**
|
|
7572
7971
|
* Resets the Spotter Embed Conversation.
|
|
7972
|
+
* Payload: none.
|
|
7573
7973
|
* @example
|
|
7574
7974
|
* ```js
|
|
7575
7975
|
* spotterEmbed.trigger(HostEvent.ResetSpotterConversation);
|
|
@@ -7582,6 +7982,7 @@ export declare enum HostEvent {
|
|
|
7582
7982
|
* `conversationId` is **mandatory** — you must pass the id of the
|
|
7583
7983
|
* conversation to share. Also no-op when sharing is disabled
|
|
7584
7984
|
* (enableShareConversation off) or when already in the read-only shared view.
|
|
7985
|
+
* Payload: {@link ConversationScopedRequest}.
|
|
7585
7986
|
* @example
|
|
7586
7987
|
* ```js
|
|
7587
7988
|
* spotterEmbed.trigger(HostEvent.ShareSpotterConversation, { conversationId: 'abc' });
|
|
@@ -7591,6 +7992,7 @@ export declare enum HostEvent {
|
|
|
7591
7992
|
ShareSpotterConversation = "ShareSpotterConversation",
|
|
7592
7993
|
/**
|
|
7593
7994
|
* Closes the Spotter share-conversation modal. No-op if none is open.
|
|
7995
|
+
* Payload: none.
|
|
7594
7996
|
* @example
|
|
7595
7997
|
* ```js
|
|
7596
7998
|
* spotterEmbed.trigger(HostEvent.CloseSpotterShareConversation);
|
|
@@ -7600,6 +8002,7 @@ export declare enum HostEvent {
|
|
|
7600
8002
|
CloseSpotterShareConversation = "CloseSpotterShareConversation",
|
|
7601
8003
|
/**
|
|
7602
8004
|
* Exits the read-only shared-conversation view.
|
|
8005
|
+
* Payload: none.
|
|
7603
8006
|
* @example
|
|
7604
8007
|
* ```js
|
|
7605
8008
|
* spotterEmbed.trigger(HostEvent.ExitSpotterSharedConversation);
|
|
@@ -7609,6 +8012,7 @@ export declare enum HostEvent {
|
|
|
7609
8012
|
ExitSpotterSharedConversation = "ExitSpotterSharedConversation",
|
|
7610
8013
|
/**
|
|
7611
8014
|
* Deletes the last prompt in spotter embed.
|
|
8015
|
+
* Payload: none.
|
|
7612
8016
|
* @example
|
|
7613
8017
|
* ```js
|
|
7614
8018
|
* spotterEmbed.trigger(HostEvent.DeleteLastPrompt);
|
|
@@ -7618,6 +8022,7 @@ export declare enum HostEvent {
|
|
|
7618
8022
|
DeleteLastPrompt = "DeleteLastPrompt",
|
|
7619
8023
|
/**
|
|
7620
8024
|
* Toggle the visualization to chart or table view.
|
|
8025
|
+
* Payload: {@link RequiredVizRequest}.
|
|
7621
8026
|
* @param - `vizId ` refers to the Visualization ID in Spotter embed and is required.
|
|
7622
8027
|
* @example
|
|
7623
8028
|
* ```js
|
|
@@ -7656,6 +8061,7 @@ export declare enum HostEvent {
|
|
|
7656
8061
|
VisibleEmbedCoordinates = "visibleEmbedCoordinates",
|
|
7657
8062
|
/**
|
|
7658
8063
|
* Trigger the *Spotter* action for visualizations present on the liveboard's vizzes.
|
|
8064
|
+
* Payload: {@link RequiredVizRequest}.
|
|
7659
8065
|
* @param - `vizId` refers to the Visualization ID in Spotter embed and is required.
|
|
7660
8066
|
* @example
|
|
7661
8067
|
* ```js
|
|
@@ -7680,7 +8086,13 @@ export declare enum HostEvent {
|
|
|
7680
8086
|
*/
|
|
7681
8087
|
UpdateEmbedParams = "updateEmbedParams",
|
|
7682
8088
|
/**
|
|
7683
|
-
*
|
|
8089
|
+
* Notifies the embedded ThoughtSpot app that the embed is being torn down, so that
|
|
8090
|
+
* it can release any resources it holds before the iframe is removed from the DOM.
|
|
8091
|
+
*
|
|
8092
|
+
* This is triggered for you by `embed.destroy()`; you rarely need to trigger it
|
|
8093
|
+
* directly. If `waitForCleanupOnDestroy` is set in the embed config, `destroy()`
|
|
8094
|
+
* waits for the app to acknowledge this event (up to `cleanupTimeout`) before
|
|
8095
|
+
* removing the iframe.
|
|
7684
8096
|
* @example
|
|
7685
8097
|
* ```js
|
|
7686
8098
|
* liveboardEmbed.trigger(HostEvent.DestroyEmbed);
|
|
@@ -7711,6 +8123,7 @@ export declare enum HostEvent {
|
|
|
7711
8123
|
* instance. Contact your admin or ThoughtSpot Support to enable chat history on your
|
|
7712
8124
|
* instance.
|
|
7713
8125
|
*
|
|
8126
|
+
* Payload: {@link ConversationScopedRequest}.
|
|
7714
8127
|
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
7715
8128
|
* @example
|
|
7716
8129
|
* ```js
|
|
@@ -7728,6 +8141,7 @@ export declare enum HostEvent {
|
|
|
7728
8141
|
* instance. Contact your admin or ThoughtSpot Support to enable chat history on your
|
|
7729
8142
|
* instance.
|
|
7730
8143
|
*
|
|
8144
|
+
* Payload: {@link ConversationScopedRequest}.
|
|
7731
8145
|
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
7732
8146
|
* @example
|
|
7733
8147
|
* ```js
|
|
@@ -7752,6 +8166,7 @@ export declare enum HostEvent {
|
|
|
7752
8166
|
* Trigger the **Send Test Email** action in the Liveboard schedule modal.
|
|
7753
8167
|
* Sends a test schedule email to self or all recipients.
|
|
7754
8168
|
* Requires `isSendNowLiveboardSchedulingEnabled` to be enabled.
|
|
8169
|
+
* Payload: {@link ScheduleEmailRequest}.
|
|
7755
8170
|
* @example
|
|
7756
8171
|
* ```js
|
|
7757
8172
|
* liveboardEmbed.trigger(HostEvent.SendTestScheduleEmail, {
|
|
@@ -7770,6 +8185,7 @@ export declare enum HostEvent {
|
|
|
7770
8185
|
SendTestScheduleEmail = "sendTestScheduleEmail",
|
|
7771
8186
|
/**
|
|
7772
8187
|
* Sends a user message (prompt) to the SpotterViz panel programmatically.
|
|
8188
|
+
* Payload: `{ query: string }`.
|
|
7773
8189
|
* @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
7774
8190
|
* @param query - the prompt text to send.
|
|
7775
8191
|
* @example
|
|
@@ -7782,6 +8198,7 @@ export declare enum HostEvent {
|
|
|
7782
8198
|
SpotterVizSendUserMessage = "SpotterVizSendUserMessage",
|
|
7783
8199
|
/**
|
|
7784
8200
|
* Initializes a new SpotterViz conversation.
|
|
8201
|
+
* Payload: none.
|
|
7785
8202
|
* @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
7786
8203
|
* @example
|
|
7787
8204
|
* ```js
|
|
@@ -7791,6 +8208,7 @@ export declare enum HostEvent {
|
|
|
7791
8208
|
InitSpotterVizConversation = "InitSpotterVizConversation",
|
|
7792
8209
|
/**
|
|
7793
8210
|
* Opens the SpotterViz panel.
|
|
8211
|
+
* Payload: none.
|
|
7794
8212
|
* @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
7795
8213
|
* @example
|
|
7796
8214
|
* ```js
|
|
@@ -7800,6 +8218,7 @@ export declare enum HostEvent {
|
|
|
7800
8218
|
OpenSpotterVizPanel = "OpenSpotterVizPanel",
|
|
7801
8219
|
/**
|
|
7802
8220
|
* Closes the SpotterViz panel.
|
|
8221
|
+
* Payload: none.
|
|
7803
8222
|
* @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
7804
8223
|
* @example
|
|
7805
8224
|
* ```js
|
|
@@ -7810,6 +8229,7 @@ export declare enum HostEvent {
|
|
|
7810
8229
|
/**
|
|
7811
8230
|
* Clears browser cache and fetches new data for liveboard ChartViz Containers.
|
|
7812
8231
|
* Requires `enableLiveboardDataCache` to be enabled.
|
|
8232
|
+
* Payload: {@link ScheduleEmailRequest}.
|
|
7813
8233
|
* @example
|
|
7814
8234
|
* ```js
|
|
7815
8235
|
* liveboardEmbed.trigger(HostEvent.RefreshLiveboardBrowserCache);
|
|
@@ -9612,7 +10032,7 @@ export declare enum Action {
|
|
|
9612
10032
|
* ```js
|
|
9613
10033
|
* hiddenActions: [Action.QuickSearchPill]
|
|
9614
10034
|
* ```
|
|
9615
|
-
* @version SDK: 1.
|
|
10035
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
9616
10036
|
*/
|
|
9617
10037
|
QuickSearchPill = "quickSearchPill",
|
|
9618
10038
|
/**
|
|
@@ -9627,7 +10047,7 @@ export declare enum Action {
|
|
|
9627
10047
|
* ```js
|
|
9628
10048
|
* hiddenActions: [Action.DeepAnalysisPill]
|
|
9629
10049
|
* ```
|
|
9630
|
-
* @version SDK: 1.
|
|
10050
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
9631
10051
|
*/
|
|
9632
10052
|
DeepAnalysisPill = "deepAnalysisPill",
|
|
9633
10053
|
/**
|
|
@@ -9642,7 +10062,7 @@ export declare enum Action {
|
|
|
9642
10062
|
* ```js
|
|
9643
10063
|
* hiddenActions: [Action.DataLiteracyPill]
|
|
9644
10064
|
* ```
|
|
9645
|
-
* @version SDK: 1.
|
|
10065
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
9646
10066
|
*/
|
|
9647
10067
|
DataLiteracyPill = "dataLiteracyPill",
|
|
9648
10068
|
/**
|
|
@@ -9824,80 +10244,364 @@ export declare enum Action {
|
|
|
9824
10244
|
* disabledActions: [Action.SpotterOnLiveboard]
|
|
9825
10245
|
* ```
|
|
9826
10246
|
*/
|
|
9827
|
-
SpotterOnLiveboard = "spotterOnLiveboard"
|
|
9828
|
-
}
|
|
9829
|
-
declare enum ContextMenuTriggerOptions {
|
|
9830
|
-
LEFT_CLICK = "left-click",
|
|
9831
|
-
RIGHT_CLICK = "right-click",
|
|
9832
|
-
BOTH_CLICKS = "both-clicks"
|
|
9833
|
-
}
|
|
9834
|
-
export interface ColumnValue {
|
|
9835
|
-
column: {
|
|
9836
|
-
id: string;
|
|
9837
|
-
name: string;
|
|
9838
|
-
dataType: string;
|
|
9839
|
-
[key: string]: any;
|
|
9840
|
-
};
|
|
9841
|
-
value: string | number | boolean | {
|
|
9842
|
-
v: {
|
|
9843
|
-
s: number;
|
|
9844
|
-
e: number;
|
|
9845
|
-
};
|
|
9846
|
-
};
|
|
9847
|
-
}
|
|
9848
|
-
export interface VizPoint {
|
|
9849
|
-
selectedAttributes: ColumnValue[];
|
|
9850
|
-
selectedMeasures: ColumnValue[];
|
|
9851
|
-
}
|
|
9852
|
-
export interface CustomAction {
|
|
9853
|
-
name: string;
|
|
9854
|
-
id: string;
|
|
9855
|
-
position: CustomActionsPosition;
|
|
9856
|
-
target: CustomActionTarget;
|
|
9857
|
-
metadataIds?: {
|
|
9858
|
-
answerIds?: string[];
|
|
9859
|
-
liveboardIds?: string[];
|
|
9860
|
-
vizIds?: string[];
|
|
9861
|
-
};
|
|
9862
|
-
dataModelIds?: {
|
|
9863
|
-
modelIds?: string[];
|
|
9864
|
-
modelColumnNames?: string[];
|
|
9865
|
-
};
|
|
9866
|
-
orgIds?: string[];
|
|
9867
|
-
groupIds?: string[];
|
|
9868
|
-
}
|
|
9869
|
-
/**
|
|
9870
|
-
* Enum options to show custom actions at different
|
|
9871
|
-
* positions in the application.
|
|
9872
|
-
*/
|
|
9873
|
-
export declare enum CustomActionsPosition {
|
|
10247
|
+
SpotterOnLiveboard = "spotterOnLiveboard",
|
|
9874
10248
|
/**
|
|
9875
|
-
*
|
|
9876
|
-
* in
|
|
10249
|
+
* Controls the visibility and disabled state of the "Chart Type" menu item
|
|
10250
|
+
* in Chart Settings V2.
|
|
10251
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10252
|
+
* @example
|
|
10253
|
+
* ```js
|
|
10254
|
+
* {
|
|
10255
|
+
* hiddenActions: [Action.ChartTypeSettings],
|
|
10256
|
+
* disabledActions: [Action.ChartTypeSettings],
|
|
10257
|
+
* }
|
|
10258
|
+
* ```
|
|
9877
10259
|
*/
|
|
9878
|
-
|
|
10260
|
+
ChartTypeSettings = "CHART_TYPE",
|
|
9879
10261
|
/**
|
|
9880
|
-
*
|
|
9881
|
-
*
|
|
10262
|
+
* Controls the visibility and disabled state of the "Layout" menu item
|
|
10263
|
+
* in Chart Settings V2.
|
|
10264
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10265
|
+
* @example
|
|
10266
|
+
* ```js
|
|
10267
|
+
* {
|
|
10268
|
+
* hiddenActions: [Action.LayoutSettings],
|
|
10269
|
+
* disabledActions: [Action.LayoutSettings],
|
|
10270
|
+
* }
|
|
10271
|
+
* ```
|
|
9882
10272
|
*/
|
|
9883
|
-
|
|
10273
|
+
LayoutSettings = "LAYOUT",
|
|
9884
10274
|
/**
|
|
9885
|
-
*
|
|
9886
|
-
*
|
|
9887
|
-
*
|
|
9888
|
-
*
|
|
9889
|
-
*
|
|
10275
|
+
* Controls the visibility and disabled state of the "Column" menu item
|
|
10276
|
+
* in Chart Settings V2.
|
|
10277
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10278
|
+
* @example
|
|
10279
|
+
* ```js
|
|
10280
|
+
* {
|
|
10281
|
+
* hiddenActions: [Action.ColumnSettings],
|
|
10282
|
+
* disabledActions: [Action.ColumnSettings],
|
|
10283
|
+
* }
|
|
10284
|
+
* ```
|
|
9890
10285
|
*/
|
|
9891
|
-
|
|
9892
|
-
}
|
|
9893
|
-
declare enum CustomActionTarget {
|
|
10286
|
+
ColumnSettings = "COLUMN",
|
|
9894
10287
|
/**
|
|
9895
|
-
*
|
|
9896
|
-
*
|
|
9897
|
-
*
|
|
9898
|
-
*
|
|
9899
|
-
*
|
|
9900
|
-
*
|
|
10288
|
+
* Controls the visibility and disabled state of the "Axis" menu item
|
|
10289
|
+
* in Chart Settings V2.
|
|
10290
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10291
|
+
* @example
|
|
10292
|
+
* ```js
|
|
10293
|
+
* {
|
|
10294
|
+
* hiddenActions: [Action.AxisSettings],
|
|
10295
|
+
* disabledActions: [Action.AxisSettings],
|
|
10296
|
+
* }
|
|
10297
|
+
* ```
|
|
10298
|
+
*/
|
|
10299
|
+
AxisSettings = "AXIS",
|
|
10300
|
+
/**
|
|
10301
|
+
* Controls the visibility and disabled state of the "Data Label" menu item
|
|
10302
|
+
* in Chart Settings V2.
|
|
10303
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10304
|
+
* @example
|
|
10305
|
+
* ```js
|
|
10306
|
+
* {
|
|
10307
|
+
* hiddenActions: [Action.DataLabelSettings],
|
|
10308
|
+
* disabledActions: [Action.DataLabelSettings],
|
|
10309
|
+
* }
|
|
10310
|
+
* ```
|
|
10311
|
+
*/
|
|
10312
|
+
DataLabelSettings = "DATA_LABEL",
|
|
10313
|
+
/**
|
|
10314
|
+
* Controls the visibility and disabled state of the "Tooltip" menu item
|
|
10315
|
+
* in Chart Settings V2.
|
|
10316
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10317
|
+
* @example
|
|
10318
|
+
* ```js
|
|
10319
|
+
* {
|
|
10320
|
+
* hiddenActions: [Action.TooltipSettings],
|
|
10321
|
+
* disabledActions: [Action.TooltipSettings],
|
|
10322
|
+
* }
|
|
10323
|
+
* ```
|
|
10324
|
+
*/
|
|
10325
|
+
TooltipSettings = "TOOLTIP",
|
|
10326
|
+
/**
|
|
10327
|
+
* Controls the visibility and disabled state of the "Legend" menu item
|
|
10328
|
+
* in Chart Settings V2.
|
|
10329
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10330
|
+
* @example
|
|
10331
|
+
* ```js
|
|
10332
|
+
* {
|
|
10333
|
+
* hiddenActions: [Action.LegendSettings],
|
|
10334
|
+
* disabledActions: [Action.LegendSettings],
|
|
10335
|
+
* }
|
|
10336
|
+
* ```
|
|
10337
|
+
*/
|
|
10338
|
+
LegendSettings = "LEGEND",
|
|
10339
|
+
/**
|
|
10340
|
+
* Controls the visibility and disabled state of the "Display" menu item
|
|
10341
|
+
* in Chart Settings V2.
|
|
10342
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10343
|
+
* @example
|
|
10344
|
+
* ```js
|
|
10345
|
+
* {
|
|
10346
|
+
* hiddenActions: [Action.DisplaySettings],
|
|
10347
|
+
* disabledActions: [Action.DisplaySettings],
|
|
10348
|
+
* }
|
|
10349
|
+
* ```
|
|
10350
|
+
*/
|
|
10351
|
+
DisplaySettings = "DISPLAY",
|
|
10352
|
+
/**
|
|
10353
|
+
* Controls the visibility and disabled state of the "Query Details" menu
|
|
10354
|
+
* item in Chart Settings V2.
|
|
10355
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10356
|
+
* @example
|
|
10357
|
+
* ```js
|
|
10358
|
+
* {
|
|
10359
|
+
* hiddenActions: [Action.QuerySettings],
|
|
10360
|
+
* disabledActions: [Action.QuerySettings],
|
|
10361
|
+
* }
|
|
10362
|
+
* ```
|
|
10363
|
+
*/
|
|
10364
|
+
QuerySettings = "QUERY_DETAILS",
|
|
10365
|
+
/**
|
|
10366
|
+
* Controls the visibility and disabled state of the "Custom Action" menu
|
|
10367
|
+
* item in Chart Settings V2.
|
|
10368
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10369
|
+
* @example
|
|
10370
|
+
* ```js
|
|
10371
|
+
* {
|
|
10372
|
+
* hiddenActions: [Action.CustomSettings],
|
|
10373
|
+
* disabledActions: [Action.CustomSettings],
|
|
10374
|
+
* }
|
|
10375
|
+
* ```
|
|
10376
|
+
*/
|
|
10377
|
+
CustomSettings = "CUSTOM_ACTION",
|
|
10378
|
+
/**
|
|
10379
|
+
* Controls the visibility and disabled state of the "Muze AI" menu item
|
|
10380
|
+
* in Chart Settings V2.
|
|
10381
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10382
|
+
* @example
|
|
10383
|
+
* ```js
|
|
10384
|
+
* {
|
|
10385
|
+
* hiddenActions: [Action.MuzeAiSettings],
|
|
10386
|
+
* disabledActions: [Action.MuzeAiSettings],
|
|
10387
|
+
* }
|
|
10388
|
+
* ```
|
|
10389
|
+
*/
|
|
10390
|
+
MuzeAiSettings = "MUZE_AI",
|
|
10391
|
+
/**
|
|
10392
|
+
* Controls the visibility and disabled state of the "R Analysis" menu item
|
|
10393
|
+
* in Chart Settings V2.
|
|
10394
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
10395
|
+
* @example
|
|
10396
|
+
* ```js
|
|
10397
|
+
* {
|
|
10398
|
+
* hiddenActions: [Action.RAnalysisSettings],
|
|
10399
|
+
* disabledActions: [Action.RAnalysisSettings],
|
|
10400
|
+
* }
|
|
10401
|
+
* ```
|
|
10402
|
+
*/
|
|
10403
|
+
RAnalysisSettings = "R_ANALYSIS",
|
|
10404
|
+
/**
|
|
10405
|
+
* Controls the visibility and disabled state of the "Add to Collection" menu item.
|
|
10406
|
+
* @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
|
|
10407
|
+
* @example
|
|
10408
|
+
* ```js
|
|
10409
|
+
* {
|
|
10410
|
+
* hiddenActions: [Action.AddToCollection],
|
|
10411
|
+
* disabledActions: [Action.AddToCollection],
|
|
10412
|
+
* }
|
|
10413
|
+
* ```
|
|
10414
|
+
*/
|
|
10415
|
+
AddToCollection = "addToCollection",
|
|
10416
|
+
/**
|
|
10417
|
+
* Controls the visibility and disabled state of the "Create Collection" button.
|
|
10418
|
+
* @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
|
|
10419
|
+
* @example
|
|
10420
|
+
* ```js
|
|
10421
|
+
* {
|
|
10422
|
+
* hiddenActions: [Action.CreateCollection],
|
|
10423
|
+
* disabledActions: [Action.CreateCollection],
|
|
10424
|
+
* }
|
|
10425
|
+
* ```
|
|
10426
|
+
*/
|
|
10427
|
+
CreateCollection = "createCollection",
|
|
10428
|
+
/**
|
|
10429
|
+
* Controls the visibility and disabled state of the "Move" menu item in a
|
|
10430
|
+
* Collection.
|
|
10431
|
+
* @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
|
|
10432
|
+
* @example
|
|
10433
|
+
* ```js
|
|
10434
|
+
* {
|
|
10435
|
+
* hiddenActions: [Action.MoveToCollection],
|
|
10436
|
+
* disabledActions: [Action.MoveToCollection],
|
|
10437
|
+
* }
|
|
10438
|
+
* ```
|
|
10439
|
+
*/
|
|
10440
|
+
MoveToCollection = "moveToCollection",
|
|
10441
|
+
/**
|
|
10442
|
+
* Controls the visibility and disabled state of the "Remove" menu item in a
|
|
10443
|
+
* Collection.
|
|
10444
|
+
* @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
|
|
10445
|
+
* @example
|
|
10446
|
+
* ```js
|
|
10447
|
+
* {
|
|
10448
|
+
* hiddenActions: [Action.RemoveFromCollection],
|
|
10449
|
+
* disabledActions: [Action.RemoveFromCollection],
|
|
10450
|
+
* }
|
|
10451
|
+
* ```
|
|
10452
|
+
*/
|
|
10453
|
+
RemoveFromCollection = "removeFromCollection",
|
|
10454
|
+
/**
|
|
10455
|
+
* Controls the visibility and disabled state of the "Delete" menu item for a
|
|
10456
|
+
* Collection.
|
|
10457
|
+
* @version SDK: 1.52.1 | ThoughtSpot Cloud: 26.5.0.cl
|
|
10458
|
+
* @example
|
|
10459
|
+
* ```js
|
|
10460
|
+
* {
|
|
10461
|
+
* hiddenActions: [Action.DeleteCollection],
|
|
10462
|
+
* disabledActions: [Action.DeleteCollection],
|
|
10463
|
+
* }
|
|
10464
|
+
* ```
|
|
10465
|
+
*/
|
|
10466
|
+
DeleteCollection = "deleteCollection"
|
|
10467
|
+
}
|
|
10468
|
+
declare enum ContextMenuTriggerOptions {
|
|
10469
|
+
LEFT_CLICK = "left-click",
|
|
10470
|
+
RIGHT_CLICK = "right-click",
|
|
10471
|
+
BOTH_CLICKS = "both-clicks"
|
|
10472
|
+
}
|
|
10473
|
+
export interface ColumnValue {
|
|
10474
|
+
column: {
|
|
10475
|
+
id: string;
|
|
10476
|
+
name: string;
|
|
10477
|
+
dataType: string;
|
|
10478
|
+
[key: string]: any;
|
|
10479
|
+
};
|
|
10480
|
+
value: string | number | boolean | {
|
|
10481
|
+
v: {
|
|
10482
|
+
s: number;
|
|
10483
|
+
e: number;
|
|
10484
|
+
};
|
|
10485
|
+
};
|
|
10486
|
+
}
|
|
10487
|
+
export interface VizPoint {
|
|
10488
|
+
selectedAttributes: ColumnValue[];
|
|
10489
|
+
selectedMeasures: ColumnValue[];
|
|
10490
|
+
}
|
|
10491
|
+
/**
|
|
10492
|
+
* @group Events
|
|
10493
|
+
*/
|
|
10494
|
+
export interface CustomActionPayload {
|
|
10495
|
+
/**
|
|
10496
|
+
* Id of the custom action that was triggered. Matches the `id` you set on
|
|
10497
|
+
* the {@link CustomAction}. Omitted on Liveboard-level code-based actions.
|
|
10498
|
+
*/
|
|
10499
|
+
id?: string;
|
|
10500
|
+
contextMenuPoints?: {
|
|
10501
|
+
clickedPoint: VizPoint;
|
|
10502
|
+
selectedPoints: VizPoint[];
|
|
10503
|
+
};
|
|
10504
|
+
embedAnswerData: {
|
|
10505
|
+
name: string;
|
|
10506
|
+
id: string;
|
|
10507
|
+
sources: {
|
|
10508
|
+
header: {
|
|
10509
|
+
guid: string;
|
|
10510
|
+
};
|
|
10511
|
+
};
|
|
10512
|
+
columns: any[];
|
|
10513
|
+
data: any[];
|
|
10514
|
+
[key: string]: any;
|
|
10515
|
+
};
|
|
10516
|
+
session: SessionInterface;
|
|
10517
|
+
vizId?: string;
|
|
10518
|
+
}
|
|
10519
|
+
/**
|
|
10520
|
+
* A code-based custom action to inject into the embedded ThoughtSpot UI.
|
|
10521
|
+
* Pass an array of these as `customActions` in the embed view config. When a
|
|
10522
|
+
* user invokes the action, the host emits {@link EmbedEvent.CustomAction} with
|
|
10523
|
+
* a {@link CustomActionPayload} carrying the same `id`.
|
|
10524
|
+
*/
|
|
10525
|
+
export interface CustomAction {
|
|
10526
|
+
/**
|
|
10527
|
+
* Display label shown on the action's button or menu item.
|
|
10528
|
+
*/
|
|
10529
|
+
name: string;
|
|
10530
|
+
/**
|
|
10531
|
+
* Unique identifier for the action. Echoed back as `id` on the
|
|
10532
|
+
* {@link CustomActionPayload} when the action is invoked.
|
|
10533
|
+
*/
|
|
10534
|
+
id: string;
|
|
10535
|
+
/**
|
|
10536
|
+
* Where the action appears: a primary button, the "More" menu, or the
|
|
10537
|
+
* right-click context menu. See {@link CustomActionsPosition}.
|
|
10538
|
+
*/
|
|
10539
|
+
position: CustomActionsPosition;
|
|
10540
|
+
/**
|
|
10541
|
+
* The surface the action applies to (Liveboard, visualization, Answer, or
|
|
10542
|
+
* Spotter). See {@link CustomActionTarget}. The allowed `position` values
|
|
10543
|
+
* and scoping keys depend on the target.
|
|
10544
|
+
*/
|
|
10545
|
+
target: CustomActionTarget;
|
|
10546
|
+
/**
|
|
10547
|
+
* Scope the action to specific objects by GUID. Which keys are allowed
|
|
10548
|
+
* depends on `target` (for example, a `VIZ` action may use `answerIds`,
|
|
10549
|
+
* `liveboardIds`, and `vizIds`).
|
|
10550
|
+
*/
|
|
10551
|
+
metadataIds?: {
|
|
10552
|
+
answerIds?: string[];
|
|
10553
|
+
liveboardIds?: string[];
|
|
10554
|
+
vizIds?: string[];
|
|
10555
|
+
};
|
|
10556
|
+
/**
|
|
10557
|
+
* Scope the action by data model, using model GUIDs or column names.
|
|
10558
|
+
* Allowed for `VIZ`, `ANSWER`, and `SPOTTER` targets.
|
|
10559
|
+
*/
|
|
10560
|
+
dataModelIds?: {
|
|
10561
|
+
modelIds?: string[];
|
|
10562
|
+
modelColumnNames?: string[];
|
|
10563
|
+
};
|
|
10564
|
+
/**
|
|
10565
|
+
* Restrict the action to specific organizations by ID.
|
|
10566
|
+
*/
|
|
10567
|
+
orgIds?: string[];
|
|
10568
|
+
/**
|
|
10569
|
+
* Restrict the action to specific user groups by ID.
|
|
10570
|
+
*/
|
|
10571
|
+
groupIds?: string[];
|
|
10572
|
+
}
|
|
10573
|
+
/**
|
|
10574
|
+
* Enum options to show custom actions at different
|
|
10575
|
+
* positions in the application.
|
|
10576
|
+
*/
|
|
10577
|
+
export declare enum CustomActionsPosition {
|
|
10578
|
+
/**
|
|
10579
|
+
* Shows the action as a primary button
|
|
10580
|
+
* in the toolbar area of the embed.
|
|
10581
|
+
*/
|
|
10582
|
+
PRIMARY = "PRIMARY",
|
|
10583
|
+
/**
|
|
10584
|
+
* Shows the action inside the "More" menu
|
|
10585
|
+
* (three-dot overflow menu).
|
|
10586
|
+
*/
|
|
10587
|
+
MENU = "MENU",
|
|
10588
|
+
/**
|
|
10589
|
+
* Shows the action in the right-click
|
|
10590
|
+
* context menu. Only supported for
|
|
10591
|
+
* {@link CustomActionTarget.VIZ},
|
|
10592
|
+
* {@link CustomActionTarget.ANSWER}, and
|
|
10593
|
+
* {@link CustomActionTarget.SPOTTER} targets.
|
|
10594
|
+
*/
|
|
10595
|
+
CONTEXTMENU = "CONTEXTMENU"
|
|
10596
|
+
}
|
|
10597
|
+
declare enum CustomActionTarget {
|
|
10598
|
+
/**
|
|
10599
|
+
* Action applies at the Liveboard level.
|
|
10600
|
+
* Supported positions:
|
|
10601
|
+
* {@link CustomActionsPosition.PRIMARY},
|
|
10602
|
+
* {@link CustomActionsPosition.MENU}.
|
|
10603
|
+
* Can be scoped with
|
|
10604
|
+
* `metadataIds.liveboardIds`,
|
|
9901
10605
|
* `orgIds`, and `groupIds`.
|
|
9902
10606
|
*/
|
|
9903
10607
|
LIVEBOARD = "LIVEBOARD",
|
|
@@ -10124,9 +10828,19 @@ export interface EmbedErrorDetailsEvent {
|
|
|
10124
10828
|
message: string | string[];
|
|
10125
10829
|
/** Machine-readable error code for programmatic error handling */
|
|
10126
10830
|
code: EmbedErrorCodes;
|
|
10831
|
+
/** How badly the embed is affected. Defaults to {@link EmbedErrorSeverity.SEV3}. */
|
|
10832
|
+
severity?: EmbedErrorSeverity;
|
|
10127
10833
|
/** Additional context-specific for backward compatibility */
|
|
10128
10834
|
[key: string]: any;
|
|
10129
10835
|
}
|
|
10836
|
+
declare enum EmbedErrorSeverity {
|
|
10837
|
+
/** The embed cannot render. Nothing usable is on screen. */
|
|
10838
|
+
SEV1 = 1,
|
|
10839
|
+
/** Something is degraded but the embed still works. */
|
|
10840
|
+
SEV2 = 2,
|
|
10841
|
+
/** Everything else, including validation of the embedder's own input. */
|
|
10842
|
+
SEV3 = 3
|
|
10843
|
+
}
|
|
10130
10844
|
declare enum ContextType {
|
|
10131
10845
|
/**
|
|
10132
10846
|
* Search answer context for search page or edit viz dialog on liveboard page.
|
|
@@ -10169,21 +10883,34 @@ export interface DefaultAppInitData {
|
|
|
10169
10883
|
}
|
|
10170
10884
|
declare enum InterceptedApiType {
|
|
10171
10885
|
/**
|
|
10172
|
-
* The
|
|
10886
|
+
* The APIs that fetch the data backing an Answer, including its chart,
|
|
10887
|
+
* table, and headline data.
|
|
10173
10888
|
*/
|
|
10174
10889
|
AnswerData = "AnswerData",
|
|
10175
10890
|
/**
|
|
10176
|
-
*
|
|
10891
|
+
* Intercepts every `fetch` request the embedded application makes, not only
|
|
10892
|
+
* the data APIs. This includes authentication, session, and metadata calls,
|
|
10893
|
+
* so the handler must respond to requests it does not recognize by passing
|
|
10894
|
+
* `execute: true`. Listing this alongside other entries in `interceptUrls`
|
|
10895
|
+
* supersedes them.
|
|
10177
10896
|
*/
|
|
10178
10897
|
ALL = "ALL",
|
|
10179
10898
|
/**
|
|
10180
|
-
* The
|
|
10899
|
+
* The APIs that fetch the data backing a Liveboard.
|
|
10181
10900
|
*/
|
|
10182
10901
|
LiveboardData = "LiveboardData"
|
|
10183
10902
|
}
|
|
10184
10903
|
export type ApiInterceptFlags = {
|
|
10185
10904
|
/**
|
|
10186
|
-
*
|
|
10905
|
+
* Emits `EmbedEvent.OnBeforeGetVizDataIntercept` before the Answer data
|
|
10906
|
+
* APIs are called. This is the earlier, narrower form of interception, kept
|
|
10907
|
+
* for backward compatibility and implemented on top of
|
|
10908
|
+
* `EmbedEvent.ApiIntercept`. Prefer `interceptUrls` with
|
|
10909
|
+
* `InterceptedApiType.AnswerData` in new code.
|
|
10910
|
+
*
|
|
10911
|
+
* Setting this also intercepts the Answer data APIs, so both
|
|
10912
|
+
* `EmbedEvent.OnBeforeGetVizDataIntercept` and `EmbedEvent.ApiIntercept`
|
|
10913
|
+
* are emitted for those requests.
|
|
10187
10914
|
*
|
|
10188
10915
|
* Can be used for Search and App Embed from SDK 1.29.0
|
|
10189
10916
|
*
|
|
@@ -10191,14 +10918,21 @@ export type ApiInterceptFlags = {
|
|
|
10191
10918
|
*/
|
|
10192
10919
|
isOnBeforeGetVizDataInterceptEnabled?: boolean;
|
|
10193
10920
|
/**
|
|
10194
|
-
*
|
|
10195
|
-
*
|
|
10921
|
+
* The requests to intercept, given as `InterceptedApiType` groups, absolute
|
|
10922
|
+
* URLs, or paths beginning with `/` that are resolved against the
|
|
10923
|
+
* ThoughtSpot host. Setting this is what turns interception on.
|
|
10924
|
+
*
|
|
10925
|
+
* A URL matches only on exact equality with the request's fully resolved
|
|
10926
|
+
* URL, query string included, so prefer an `InterceptedApiType` group where
|
|
10927
|
+
* one covers the API you need.
|
|
10928
|
+
*
|
|
10929
|
+
* Each intercepted request pauses and emits `EmbedEvent.ApiIntercept`, then
|
|
10930
|
+
* proceeds according to the response passed to that event's responder.
|
|
10196
10931
|
*
|
|
10197
10932
|
* @example
|
|
10198
10933
|
* ```js
|
|
10199
10934
|
* const embed = new LiveboardEmbed('#embed', {
|
|
10200
10935
|
* ...viewConfig,
|
|
10201
|
-
* enableApiIntercept: true,
|
|
10202
10936
|
* interceptUrls: [InterceptedApiType.LiveboardData],
|
|
10203
10937
|
* })
|
|
10204
10938
|
* ```
|
|
@@ -10207,14 +10941,14 @@ export type ApiInterceptFlags = {
|
|
|
10207
10941
|
*/
|
|
10208
10942
|
interceptUrls?: (string | InterceptedApiType)[];
|
|
10209
10943
|
/**
|
|
10210
|
-
*
|
|
10211
|
-
*
|
|
10944
|
+
* How long, in milliseconds, an intercepted request waits for the
|
|
10945
|
+
* `EmbedEvent.ApiIntercept` responder before it is abandoned. Defaults to
|
|
10946
|
+
* 30000. On timeout the request fails and `EmbedEvent.Error` is emitted.
|
|
10212
10947
|
*
|
|
10213
10948
|
* @example
|
|
10214
10949
|
* ```js
|
|
10215
10950
|
* const embed = new LiveboardEmbed('#embed', {
|
|
10216
10951
|
* ...viewConfig,
|
|
10217
|
-
* enableApiIntercept: true,
|
|
10218
10952
|
* interceptUrls: [InterceptedApiType.ALL],
|
|
10219
10953
|
* interceptTimeout: 1000,
|
|
10220
10954
|
* })
|
|
@@ -10659,6 +11393,166 @@ export interface VisualizationOverrides {
|
|
|
10659
11393
|
/** Table visualization overrides */
|
|
10660
11394
|
table?: TableOverrides;
|
|
10661
11395
|
}
|
|
11396
|
+
/**
|
|
11397
|
+
* The configuration object for the full-height behavior shared by the
|
|
11398
|
+
* Liveboard and app embeds.
|
|
11399
|
+
*
|
|
11400
|
+
* When `fullHeight` is enabled the SDK resizes the embed container to match the
|
|
11401
|
+
* height reported by the ThoughtSpot app, and — when lazy loading is also
|
|
11402
|
+
* enabled — keeps the app informed of the portion of the embed that is
|
|
11403
|
+
* currently visible so that visualizations load on demand.
|
|
11404
|
+
*/
|
|
11405
|
+
export interface FullHeightViewConfig {
|
|
11406
|
+
/**
|
|
11407
|
+
* If set to true, the embedded object container dynamically resizes
|
|
11408
|
+
* according to the height of the Liveboard.
|
|
11409
|
+
*
|
|
11410
|
+
* **Note**: Using fullHeight loads all visualizations on the
|
|
11411
|
+
* Liveboard simultaneously, which results in multiple warehouse
|
|
11412
|
+
* queries and potentially a longer wait for the topmost
|
|
11413
|
+
* visualizations to display on the screen.
|
|
11414
|
+
* Setting `fullHeight` to `false` fetches visualizations
|
|
11415
|
+
* incrementally as users scroll the page to view the charts and tables.
|
|
11416
|
+
*
|
|
11417
|
+
* From SDK 1.52.0, enabling `fullHeight` also turns on
|
|
11418
|
+
* {@link lazyLoadingForFullHeight} and
|
|
11419
|
+
* {@link enableScrollableContainerLazyLoading}, so visualizations load as
|
|
11420
|
+
* they scroll into view. Set either flag to `false` to opt out.
|
|
11421
|
+
*
|
|
11422
|
+
* Supported embed types: `LiveboardEmbed`, `AppEmbed`
|
|
11423
|
+
* @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 7.2.1
|
|
11424
|
+
* @example
|
|
11425
|
+
* ```js
|
|
11426
|
+
* // Replace <EmbedComponent> with the embed component name.
|
|
11427
|
+
* // For example, AppEmbed or LiveboardEmbed
|
|
11428
|
+
* const embed = new <EmbedComponent>('#embed', {
|
|
11429
|
+
* ... // other view config
|
|
11430
|
+
* fullHeight: true,
|
|
11431
|
+
* });
|
|
11432
|
+
* ```
|
|
11433
|
+
*/
|
|
11434
|
+
fullHeight?: boolean;
|
|
11435
|
+
/**
|
|
11436
|
+
* This is the minimum height (in pixels) for a full-height Liveboard.
|
|
11437
|
+
* Setting this height helps resolve issues with empty Liveboards and
|
|
11438
|
+
* other screens navigable from a Liveboard.
|
|
11439
|
+
*
|
|
11440
|
+
* Supported embed types: `LiveboardEmbed`, `AppEmbed`
|
|
11441
|
+
* @version SDK: 1.44.2 | ThoughtSpot: 10.15.0.cl
|
|
11442
|
+
* @default 500
|
|
11443
|
+
* @example
|
|
11444
|
+
* ```js
|
|
11445
|
+
* // Replace <EmbedComponent> with the embed component name.
|
|
11446
|
+
* // For example, AppEmbed or LiveboardEmbed
|
|
11447
|
+
* const embed = new <EmbedComponent>('#embed', {
|
|
11448
|
+
* ... // other view config
|
|
11449
|
+
* fullHeight: true,
|
|
11450
|
+
* minimumHeight: 600,
|
|
11451
|
+
* });
|
|
11452
|
+
* ```
|
|
11453
|
+
*/
|
|
11454
|
+
minimumHeight?: number;
|
|
11455
|
+
/**
|
|
11456
|
+
* This is the minimum height (in pixels) for a full-height Liveboard.
|
|
11457
|
+
* Setting this height helps resolve issues with empty Liveboards and
|
|
11458
|
+
* other screens navigable from a Liveboard.
|
|
11459
|
+
*
|
|
11460
|
+
* Supported embed types: `LiveboardEmbed`, `AppEmbed`
|
|
11461
|
+
* @version SDK: 1.5.0 | ThoughtSpot: ts7.oct.cl, 7.2.1
|
|
11462
|
+
* @deprecated Use `minimumHeight` instead.
|
|
11463
|
+
* @default 500
|
|
11464
|
+
* @example
|
|
11465
|
+
* ```js
|
|
11466
|
+
* // Replace <EmbedComponent> with the embed component name.
|
|
11467
|
+
* // For example, AppEmbed or LiveboardEmbed
|
|
11468
|
+
* const embed = new <EmbedComponent>('#embed', {
|
|
11469
|
+
* ... // other view config
|
|
11470
|
+
* fullHeight: true,
|
|
11471
|
+
* defaultHeight: 600,
|
|
11472
|
+
* });
|
|
11473
|
+
* ```
|
|
11474
|
+
*/
|
|
11475
|
+
defaultHeight?: number;
|
|
11476
|
+
/**
|
|
11477
|
+
* Loads visualizations only as they scroll into the viewport, instead of
|
|
11478
|
+
* loading the whole full-height Liveboard at once.
|
|
11479
|
+
*
|
|
11480
|
+
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
11481
|
+
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
11482
|
+
* set explicitly. Set it to `false` to load every visualization upfront.
|
|
11483
|
+
* The flag has no effect unless `fullHeight` is enabled.
|
|
11484
|
+
*
|
|
11485
|
+
* Supported embed types: `LiveboardEmbed`, `AppEmbed`
|
|
11486
|
+
* @type {boolean}
|
|
11487
|
+
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
11488
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
11489
|
+
* @example
|
|
11490
|
+
* ```js
|
|
11491
|
+
* // Replace <EmbedComponent> with the embed component name.
|
|
11492
|
+
* // For example, AppEmbed or LiveboardEmbed
|
|
11493
|
+
* const embed = new <EmbedComponent>('#embed-container', {
|
|
11494
|
+
* // ...other options
|
|
11495
|
+
* fullHeight: true,
|
|
11496
|
+
* lazyLoadingForFullHeight: true,
|
|
11497
|
+
* })
|
|
11498
|
+
* ```
|
|
11499
|
+
*/
|
|
11500
|
+
lazyLoadingForFullHeight?: boolean;
|
|
11501
|
+
/**
|
|
11502
|
+
* How far outside the viewport a visualization starts loading, when
|
|
11503
|
+
* {@link lazyLoadingForFullHeight} is enabled.
|
|
11504
|
+
*
|
|
11505
|
+
* For example, if the margin is set to '10px',
|
|
11506
|
+
* the visualization will be loaded 10px before its top edge is visible in the
|
|
11507
|
+
* viewport.
|
|
11508
|
+
*
|
|
11509
|
+
* The format is similar to CSS margin, so `'500px 0px'` extends the
|
|
11510
|
+
* prefetch 500px above and below the viewport and not sideways. Accepted
|
|
11511
|
+
* units are `px`, `em`, `rem`, `%`, `vh` and `vw`, plus bare `0` and
|
|
11512
|
+
* `auto`; an invalid value is logged and ignored.
|
|
11513
|
+
*
|
|
11514
|
+
* From SDK 1.52.0 this defaults to `'500px 0px'` — roughly one
|
|
11515
|
+
* visualization ahead of the scroll position, so a chart has usually
|
|
11516
|
+
* finished loading by the time it scrolls into view. Use a smaller margin
|
|
11517
|
+
* to cut warehouse queries further, or `'0px'` to load a visualization
|
|
11518
|
+
* only once it is actually visible.
|
|
11519
|
+
*
|
|
11520
|
+
* Supported embed types: `LiveboardEmbed`, `AppEmbed`
|
|
11521
|
+
* @type {string}
|
|
11522
|
+
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
11523
|
+
* @default '500px 0px' when `fullHeight` is enabled, from SDK 1.52.0
|
|
11524
|
+
* @example
|
|
11525
|
+
* ```js
|
|
11526
|
+
* // Replace <EmbedComponent> with the embed component name.
|
|
11527
|
+
* // For example, AppEmbed or LiveboardEmbed
|
|
11528
|
+
* const embed = new <EmbedComponent>('#embed-container', {
|
|
11529
|
+
* // ...other options
|
|
11530
|
+
* fullHeight: true,
|
|
11531
|
+
* lazyLoadingForFullHeight: true,
|
|
11532
|
+
* // With 0px, the visualization only starts loading once it is
|
|
11533
|
+
* // visible in the viewport.
|
|
11534
|
+
* lazyLoadingMargin: '0px',
|
|
11535
|
+
* })
|
|
11536
|
+
* ```
|
|
11537
|
+
*/
|
|
11538
|
+
lazyLoadingMargin?: string;
|
|
11539
|
+
/**
|
|
11540
|
+
* Computes the visible region of the embed against its scrollable and
|
|
11541
|
+
* clipping ancestors, instead of treating the browser window as the only
|
|
11542
|
+
* viewport, and tracks scroll and resize on those ancestors.
|
|
11543
|
+
*
|
|
11544
|
+
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
11545
|
+
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
11546
|
+
* set explicitly. Set it to `false` when the page scrolls with the window
|
|
11547
|
+
* and the embed has no clipping ancestor, to skip the extra ancestor
|
|
11548
|
+
* tracking.
|
|
11549
|
+
*
|
|
11550
|
+
* Supported embed types: `LiveboardEmbed`, `AppEmbed`
|
|
11551
|
+
* @type {boolean}
|
|
11552
|
+
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
11553
|
+
*/
|
|
11554
|
+
enableScrollableContainerLazyLoading?: boolean;
|
|
11555
|
+
}
|
|
10662
11556
|
declare enum AuthFailureType {
|
|
10663
11557
|
/**
|
|
10664
11558
|
* Authentication failed in the SDK authentication flow.
|
|
@@ -10807,231 +11701,321 @@ declare enum AuthEvent {
|
|
|
10807
11701
|
*/
|
|
10808
11702
|
TRIGGER_SSO_POPUP = "TRIGGER_SSO_POPUP"
|
|
10809
11703
|
}
|
|
10810
|
-
|
|
10811
|
-
|
|
10812
|
-
|
|
10813
|
-
|
|
10814
|
-
|
|
10815
|
-
export interface
|
|
10816
|
-
|
|
10817
|
-
name: string;
|
|
10818
|
-
[key: string]: any;
|
|
11704
|
+
/**
|
|
11705
|
+
* Request for host events that MAY target a specific visualization.
|
|
11706
|
+
* Omitting vizId targets the current answer/liveboard as a whole.
|
|
11707
|
+
* (In some contexts, e.g. Spotter, the app requires vizId at runtime.)
|
|
11708
|
+
*/
|
|
11709
|
+
export interface VizScopedRequest {
|
|
11710
|
+
vizId?: string;
|
|
10819
11711
|
}
|
|
10820
|
-
|
|
10821
|
-
|
|
10822
|
-
|
|
10823
|
-
|
|
11712
|
+
/**
|
|
11713
|
+
* Request for host events that MUST target a specific visualization.
|
|
11714
|
+
*/
|
|
11715
|
+
export interface RequiredVizRequest {
|
|
11716
|
+
vizId: string;
|
|
10824
11717
|
}
|
|
10825
11718
|
/**
|
|
10826
|
-
*
|
|
10827
|
-
* At `LIVEBOARD` level the filter applies to the whole Liveboard, so `targetId`
|
|
10828
|
-
* is not required.
|
|
11719
|
+
* Request for Spotter conversation-scoped host events.
|
|
10829
11720
|
*/
|
|
10830
|
-
export interface
|
|
10831
|
-
|
|
10832
|
-
targetId?: string;
|
|
11721
|
+
export interface ConversationScopedRequest {
|
|
11722
|
+
conversationId: string;
|
|
10833
11723
|
}
|
|
10834
|
-
|
|
10835
|
-
|
|
10836
|
-
|
|
10837
|
-
|
|
10838
|
-
|
|
11724
|
+
/**
|
|
11725
|
+
* Request payload for {@link HostEvent.OpenFilter}. Field requirements
|
|
11726
|
+
* vary by context (Search requires columnId/type/dataType/name); the
|
|
11727
|
+
* contract is the cross-context superset — the app validates per context
|
|
11728
|
+
* at runtime. Per-context views: {@link OpenFilterLiveboardRequest},
|
|
11729
|
+
* {@link OpenFilterSpotterRequest}, {@link OpenFilterSearchRequest}.
|
|
11730
|
+
*/
|
|
11731
|
+
export interface OpenFilterRequest {
|
|
11732
|
+
column: {
|
|
11733
|
+
columnId?: string;
|
|
11734
|
+
columnName?: string;
|
|
11735
|
+
type?: string;
|
|
11736
|
+
dataType?: string;
|
|
11737
|
+
name?: string;
|
|
11738
|
+
isStrictDateColumn?: boolean;
|
|
11739
|
+
};
|
|
10839
11740
|
applicability?: Applicability;
|
|
11741
|
+
visualizationId?: string;
|
|
11742
|
+
liveboardId?: string;
|
|
10840
11743
|
}
|
|
10841
|
-
|
|
11744
|
+
/**
|
|
11745
|
+
* Request payload for {@link HostEvent.OpenParameter}. One of parameterId
|
|
11746
|
+
* or parameterName must be provided (validated at runtime).
|
|
11747
|
+
*/
|
|
11748
|
+
export interface OpenParameterRequest {
|
|
11749
|
+
parameter: {
|
|
11750
|
+
parameterId?: string;
|
|
11751
|
+
parameterName?: string;
|
|
11752
|
+
};
|
|
10842
11753
|
applicability?: Applicability;
|
|
10843
|
-
[key: string]: any;
|
|
10844
11754
|
}
|
|
10845
|
-
|
|
11755
|
+
/**
|
|
11756
|
+
* Request payload for {@link HostEvent.Search}.
|
|
11757
|
+
*/
|
|
11758
|
+
export interface SearchRequest {
|
|
11759
|
+
searchQuery: string;
|
|
11760
|
+
dataSources: string[];
|
|
11761
|
+
execute?: boolean;
|
|
11762
|
+
}
|
|
11763
|
+
/**
|
|
11764
|
+
* Request payload for {@link HostEvent.SpotterSearch}.
|
|
11765
|
+
*/
|
|
11766
|
+
export interface SpotterSearchRequest {
|
|
11767
|
+
query: string;
|
|
11768
|
+
executeSearch: boolean;
|
|
11769
|
+
}
|
|
11770
|
+
/**
|
|
11771
|
+
* A single cross-filter condition for {@link HostEvent.UpdateCrossFilter}.
|
|
11772
|
+
*/
|
|
11773
|
+
export interface CrossFilterCondition {
|
|
11774
|
+
columnName?: string;
|
|
11775
|
+
operator?: string;
|
|
11776
|
+
values: Array<string | number | boolean>;
|
|
11777
|
+
}
|
|
11778
|
+
/**
|
|
11779
|
+
* Request payload for {@link HostEvent.UpdateCrossFilter}.
|
|
11780
|
+
*/
|
|
11781
|
+
export interface UpdateCrossFilterRequest {
|
|
11782
|
+
vizId: string;
|
|
11783
|
+
conditions: CrossFilterCondition[];
|
|
11784
|
+
}
|
|
11785
|
+
/**
|
|
11786
|
+
* A single filter entry for {@link HostEvent.UpdateFilters}. Supports both
|
|
11787
|
+
* the current (columnName/operator) and legacy (column/oper) field names.
|
|
11788
|
+
*/
|
|
11789
|
+
export interface HostFilterUpdate {
|
|
11790
|
+
columnName?: string;
|
|
11791
|
+
columnId?: string;
|
|
11792
|
+
operator?: string;
|
|
11793
|
+
values: Array<string | number | boolean>;
|
|
11794
|
+
type?: string;
|
|
11795
|
+
datePeriod?: string;
|
|
11796
|
+
negate?: boolean;
|
|
11797
|
+
/** Legacy field name for columnName. */
|
|
11798
|
+
column?: string;
|
|
11799
|
+
/** Legacy field name for operator. */
|
|
11800
|
+
oper?: string;
|
|
10846
11801
|
applicability?: Applicability;
|
|
10847
|
-
[key: string]: any;
|
|
10848
11802
|
}
|
|
10849
|
-
|
|
10850
|
-
|
|
10851
|
-
|
|
10852
|
-
|
|
10853
|
-
|
|
10854
|
-
|
|
10855
|
-
|
|
10856
|
-
|
|
10857
|
-
|
|
10858
|
-
|
|
10859
|
-
|
|
10860
|
-
|
|
10861
|
-
|
|
10862
|
-
|
|
10863
|
-
|
|
10864
|
-
|
|
10865
|
-
|
|
10866
|
-
GetExportRequestForCurrentPinboard = "getExportRequestForCurrentPinboard"
|
|
11803
|
+
/**
|
|
11804
|
+
* Request payload for {@link HostEvent.UpdateFilters} (singular or plural
|
|
11805
|
+
* form).
|
|
11806
|
+
*/
|
|
11807
|
+
export interface UpdateFiltersRequest {
|
|
11808
|
+
filter?: HostFilterUpdate;
|
|
11809
|
+
filters?: HostFilterUpdate[];
|
|
11810
|
+
/**
|
|
11811
|
+
* Scope the update to a specific visualization on a Liveboard.
|
|
11812
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11813
|
+
*/
|
|
11814
|
+
visualizationId?: string;
|
|
11815
|
+
/**
|
|
11816
|
+
* Scope the update to a specific Liveboard.
|
|
11817
|
+
* @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
|
|
11818
|
+
*/
|
|
11819
|
+
liveboardId?: string;
|
|
10867
11820
|
}
|
|
10868
|
-
|
|
10869
|
-
|
|
10870
|
-
|
|
10871
|
-
|
|
10872
|
-
|
|
10873
|
-
|
|
10874
|
-
|
|
10875
|
-
|
|
10876
|
-
|
|
10877
|
-
|
|
10878
|
-
|
|
10879
|
-
|
|
10880
|
-
|
|
10881
|
-
|
|
10882
|
-
|
|
10883
|
-
|
|
10884
|
-
|
|
10885
|
-
|
|
10886
|
-
|
|
10887
|
-
|
|
10888
|
-
|
|
10889
|
-
|
|
10890
|
-
|
|
10891
|
-
|
|
10892
|
-
|
|
10893
|
-
|
|
10894
|
-
|
|
10895
|
-
|
|
10896
|
-
|
|
10897
|
-
|
|
10898
|
-
|
|
10899
|
-
|
|
10900
|
-
|
|
10901
|
-
|
|
10902
|
-
|
|
10903
|
-
|
|
10904
|
-
|
|
10905
|
-
|
|
10906
|
-
|
|
10907
|
-
|
|
10908
|
-
|
|
10909
|
-
|
|
10910
|
-
|
|
10911
|
-
|
|
10912
|
-
|
|
10913
|
-
|
|
10914
|
-
|
|
10915
|
-
|
|
10916
|
-
|
|
10917
|
-
|
|
10918
|
-
|
|
10919
|
-
|
|
10920
|
-
|
|
10921
|
-
|
|
10922
|
-
|
|
10923
|
-
|
|
10924
|
-
|
|
10925
|
-
|
|
10926
|
-
|
|
10927
|
-
|
|
10928
|
-
|
|
10929
|
-
|
|
10930
|
-
[
|
|
10931
|
-
|
|
10932
|
-
|
|
10933
|
-
|
|
10934
|
-
|
|
10935
|
-
|
|
10936
|
-
|
|
10937
|
-
|
|
10938
|
-
|
|
10939
|
-
[UIPassthroughEvent.GetFilters]: {
|
|
10940
|
-
request: {
|
|
10941
|
-
vizId?: string;
|
|
10942
|
-
};
|
|
10943
|
-
response: {
|
|
10944
|
-
liveboardFilters: LiveboardFilter[];
|
|
10945
|
-
runtimeFilters: RuntimeFilter[];
|
|
10946
|
-
};
|
|
10947
|
-
};
|
|
10948
|
-
[UIPassthroughEvent.GetIframeUrl]: {
|
|
10949
|
-
request: Record<string, never>;
|
|
10950
|
-
response: {
|
|
10951
|
-
iframeUrl: string;
|
|
10952
|
-
};
|
|
10953
|
-
};
|
|
10954
|
-
[UIPassthroughEvent.GetParameters]: {
|
|
10955
|
-
request: Record<string, never>;
|
|
10956
|
-
response: {
|
|
10957
|
-
parameters: LiveboardParameter[];
|
|
10958
|
-
};
|
|
10959
|
-
};
|
|
10960
|
-
[UIPassthroughEvent.GetTML]: {
|
|
10961
|
-
request: {
|
|
10962
|
-
vizId?: string;
|
|
10963
|
-
includeNonExecutedSearchTokens?: boolean;
|
|
10964
|
-
};
|
|
10965
|
-
response: Record<string, any>;
|
|
10966
|
-
};
|
|
10967
|
-
[UIPassthroughEvent.GetTabs]: {
|
|
10968
|
-
request: Record<string, never>;
|
|
10969
|
-
response: {
|
|
10970
|
-
orderedTabIds: string[];
|
|
10971
|
-
numberOfTabs: number;
|
|
10972
|
-
Tabs: LiveboardTab[];
|
|
10973
|
-
};
|
|
11821
|
+
/**
|
|
11822
|
+
* Request payload for personalised-view host events.
|
|
11823
|
+
*/
|
|
11824
|
+
export interface PersonalisedViewRequest {
|
|
11825
|
+
viewId?: string;
|
|
11826
|
+
viewName?: string;
|
|
11827
|
+
}
|
|
11828
|
+
/**
|
|
11829
|
+
* Request payload for schedule-email related host events.
|
|
11830
|
+
*/
|
|
11831
|
+
export interface ScheduleEmailRequest {
|
|
11832
|
+
sendToSelf?: boolean;
|
|
11833
|
+
}
|
|
11834
|
+
/**
|
|
11835
|
+
* Object form of the {@link HostEvent.Navigate} payload.
|
|
11836
|
+
*/
|
|
11837
|
+
export interface NavigateRequest {
|
|
11838
|
+
/**
|
|
11839
|
+
* Route to navigate to, or a history delta such as `1` or `-1`.
|
|
11840
|
+
*/
|
|
11841
|
+
path: string | number;
|
|
11842
|
+
/**
|
|
11843
|
+
* When `true`, replaces the current history entry instead of pushing.
|
|
11844
|
+
*/
|
|
11845
|
+
replace?: boolean;
|
|
11846
|
+
}
|
|
11847
|
+
/**
|
|
11848
|
+
* Request payload for {@link HostEvent.SetActiveTab}.
|
|
11849
|
+
*/
|
|
11850
|
+
export interface SetActiveTabRequest {
|
|
11851
|
+
/**
|
|
11852
|
+
* Id of the liveboard tab to make active.
|
|
11853
|
+
*/
|
|
11854
|
+
tabId: string;
|
|
11855
|
+
}
|
|
11856
|
+
/**
|
|
11857
|
+
* Typed request payloads for host events that do not go through the UI
|
|
11858
|
+
* passthrough pipeline (`HostEvent` member → request type; `void` = no payload).
|
|
11859
|
+
*
|
|
11860
|
+
* Shapes are transcribed from the host's runtime validation schemas
|
|
11861
|
+
* (embed-util HostEventContract) — what the ThoughtSpot app actually enforces —
|
|
11862
|
+
* flattened across contexts to the permissive superset (context-specific
|
|
11863
|
+
* requirements are validated at runtime).
|
|
11864
|
+
*
|
|
11865
|
+
* Responses are typed only for UI-passthrough-backed events today (see
|
|
11866
|
+
* {@link HostEventResponse}). Add a response map alongside this one when the
|
|
11867
|
+
* first explicit response shape is specified; tightening later is additive.
|
|
11868
|
+
*
|
|
11869
|
+
* Deliberately absent (do not add without an audit):
|
|
11870
|
+
* - DrillDown: the runtime schema (object-shaped points) and the UI
|
|
11871
|
+
* passthrough contract (string-shaped points) disagree — resolve the
|
|
11872
|
+
* drift first.
|
|
11873
|
+
* - GetAnswerSession/GetParameters/GetTML: typed via the UI passthrough
|
|
11874
|
+
* mapping; their Spotter-context vizId requirement is runtime-only.
|
|
11875
|
+
*/
|
|
11876
|
+
export interface HostEventRequestMap {
|
|
11877
|
+
[HostEvent.UpdateRuntimeFilters]: RuntimeFilter[];
|
|
11878
|
+
[HostEvent.UpdateParameters]: RuntimeParameter[];
|
|
11879
|
+
[HostEvent.UpdateFilters]: UpdateFiltersRequest;
|
|
11880
|
+
[HostEvent.UpdateCrossFilter]: UpdateCrossFilterRequest;
|
|
11881
|
+
[HostEvent.OpenFilter]: OpenFilterRequest;
|
|
11882
|
+
[HostEvent.OpenParameter]: OpenParameterRequest;
|
|
11883
|
+
[HostEvent.SetVisibleVizs]: string[];
|
|
11884
|
+
[HostEvent.SetVisibleTabs]: string[];
|
|
11885
|
+
[HostEvent.SetHiddenTabs]: string[];
|
|
11886
|
+
[HostEvent.SetActiveTab]: SetActiveTabRequest;
|
|
11887
|
+
[HostEvent.Navigate]: string | number | NavigateRequest;
|
|
11888
|
+
[HostEvent.Search]: SearchRequest;
|
|
11889
|
+
[HostEvent.ResetSearch]: void;
|
|
11890
|
+
[HostEvent.AddColumns]: {
|
|
11891
|
+
columnIds: string[];
|
|
10974
11892
|
};
|
|
10975
|
-
[
|
|
10976
|
-
|
|
10977
|
-
response: {
|
|
10978
|
-
orderedGroupIds: string[];
|
|
10979
|
-
numberOfGroups: number;
|
|
10980
|
-
Groups: LiveboardGroup[];
|
|
10981
|
-
};
|
|
11893
|
+
[HostEvent.RemoveColumn]: {
|
|
11894
|
+
columnId: string;
|
|
10982
11895
|
};
|
|
10983
|
-
[
|
|
10984
|
-
|
|
10985
|
-
|
|
10986
|
-
|
|
10987
|
-
|
|
10988
|
-
|
|
10989
|
-
|
|
10990
|
-
|
|
11896
|
+
[HostEvent.Edit]: VizScopedRequest;
|
|
11897
|
+
[HostEvent.Save]: VizScopedRequest;
|
|
11898
|
+
[HostEvent.Delete]: VizScopedRequest;
|
|
11899
|
+
[HostEvent.Share]: VizScopedRequest;
|
|
11900
|
+
[HostEvent.Present]: VizScopedRequest;
|
|
11901
|
+
[HostEvent.CopyLink]: VizScopedRequest;
|
|
11902
|
+
[HostEvent.ExportTML]: VizScopedRequest;
|
|
11903
|
+
[HostEvent.EditTML]: VizScopedRequest;
|
|
11904
|
+
[HostEvent.UpdateTML]: VizScopedRequest;
|
|
11905
|
+
[HostEvent.SchedulesList]: VizScopedRequest;
|
|
11906
|
+
[HostEvent.Schedule]: VizScopedRequest;
|
|
11907
|
+
[HostEvent.SpotIQAnalyze]: VizScopedRequest;
|
|
11908
|
+
[HostEvent.ShowUnderlyingData]: VizScopedRequest;
|
|
11909
|
+
[HostEvent.CreateMonitor]: VizScopedRequest;
|
|
11910
|
+
[HostEvent.ManageMonitor]: VizScopedRequest;
|
|
11911
|
+
[HostEvent.SyncToSheets]: VizScopedRequest;
|
|
11912
|
+
[HostEvent.SyncToOtherApps]: VizScopedRequest;
|
|
11913
|
+
[HostEvent.ManagePipelines]: VizScopedRequest;
|
|
11914
|
+
[HostEvent.DownloadAsPng]: VizScopedRequest;
|
|
11915
|
+
[HostEvent.DownloadAsCsv]: VizScopedRequest;
|
|
11916
|
+
[HostEvent.DownloadAsXlsx]: VizScopedRequest;
|
|
11917
|
+
[HostEvent.DownloadAsPdf]: VizScopedRequest & {
|
|
11918
|
+
liveboardId?: string;
|
|
10991
11919
|
};
|
|
10992
|
-
[
|
|
10993
|
-
|
|
10994
|
-
|
|
10995
|
-
|
|
10996
|
-
|
|
10997
|
-
|
|
11920
|
+
[HostEvent.Explore]: RequiredVizRequest;
|
|
11921
|
+
[HostEvent.AskSage]: RequiredVizRequest;
|
|
11922
|
+
[HostEvent.AskSpotter]: RequiredVizRequest;
|
|
11923
|
+
[HostEvent.AnswerChartSwitcher]: RequiredVizRequest;
|
|
11924
|
+
[HostEvent.UpdatePersonalisedView]: Pick<PersonalisedViewRequest, "viewId">;
|
|
11925
|
+
[HostEvent.SelectPersonalizedView]: PersonalisedViewRequest;
|
|
11926
|
+
[HostEvent.ResetLiveboardPersonalisedView]: void;
|
|
11927
|
+
[HostEvent.AIHighlights]: void;
|
|
11928
|
+
[HostEvent.SendTestScheduleEmail]: ScheduleEmailRequest;
|
|
11929
|
+
[HostEvent.RefreshLiveboardBrowserCache]: ScheduleEmailRequest;
|
|
11930
|
+
[HostEvent.SpotterSearch]: SpotterSearchRequest;
|
|
11931
|
+
[HostEvent.ResetSpotterConversation]: void;
|
|
11932
|
+
[HostEvent.ShareSpotterConversation]: ConversationScopedRequest;
|
|
11933
|
+
[HostEvent.CloseSpotterShareConversation]: void;
|
|
11934
|
+
[HostEvent.ExitSpotterSharedConversation]: void;
|
|
11935
|
+
[HostEvent.PinSpotterConversation]: ConversationScopedRequest;
|
|
11936
|
+
[HostEvent.UnpinSpotterConversation]: ConversationScopedRequest;
|
|
11937
|
+
[HostEvent.EditLastPrompt]: string;
|
|
11938
|
+
[HostEvent.DeleteLastPrompt]: void;
|
|
11939
|
+
[HostEvent.PreviewSpotterData]: void;
|
|
11940
|
+
[HostEvent.SpotterVizSendUserMessage]: {
|
|
11941
|
+
query: string;
|
|
10998
11942
|
};
|
|
10999
|
-
[
|
|
11000
|
-
|
|
11001
|
-
|
|
11002
|
-
|
|
11003
|
-
|
|
11004
|
-
|
|
11005
|
-
|
|
11006
|
-
|
|
11007
|
-
|
|
11008
|
-
|
|
11009
|
-
|
|
11943
|
+
[HostEvent.InitSpotterVizConversation]: void;
|
|
11944
|
+
[HostEvent.OpenSpotterVizPanel]: void;
|
|
11945
|
+
[HostEvent.CloseSpotterVizPanel]: void;
|
|
11946
|
+
}
|
|
11947
|
+
/**
|
|
11948
|
+
* Per-context request shapes for events whose payload varies by
|
|
11949
|
+
/**
|
|
11950
|
+
* Resolves the typed request payload for a host event.
|
|
11951
|
+
* Resolution order:
|
|
11952
|
+
* 1. Explicitly typed request in {@link HostEventRequestMap}
|
|
11953
|
+
* 2. UI passthrough backed contract ({@link EmbedApiHostEventMapping})
|
|
11954
|
+
* 3. `any` (event not audited/typed yet — backward compatible)
|
|
11955
|
+
*
|
|
11956
|
+
* Requests are the cross-context superset today. The per-context `*Request`
|
|
11957
|
+
* interfaces (e.g. {@link OpenFilterLiveboardRequest}) document how the shape
|
|
11958
|
+
* narrows by context; a later release may thread the caller's context to
|
|
11959
|
+
* enforce it.
|
|
11960
|
+
*/
|
|
11961
|
+
export type HostEventRequest<HostEventT extends HostEvent> = HostEventT extends keyof HostEventRequestMap ? HostEventRequestMap[HostEventT] : HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughRequest<EmbedApiHostEventMapping[HostEventT]> : any;
|
|
11962
|
+
/**
|
|
11963
|
+
* Resolves the typed response payload for a host event. Only UI passthrough
|
|
11964
|
+
* backed events have typed responses today; everything else resolves to `any`.
|
|
11965
|
+
*/
|
|
11966
|
+
export type HostEventResponse<HostEventT extends HostEvent, ContextT extends ContextType = ContextType> = HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughResponse<EmbedApiHostEventMapping[HostEventT]> : any;
|
|
11967
|
+
/**
|
|
11968
|
+
* Payload type accepted by `embed.trigger()`. Keeps the historical
|
|
11969
|
+
* `PayloadT` escape hatch so untyped existing call sites keep compiling.
|
|
11970
|
+
*/
|
|
11971
|
+
export type TriggerPayload<PayloadT, HostEventT extends HostEvent> = PayloadT | HostEventRequest<HostEventT>;
|
|
11972
|
+
/**
|
|
11973
|
+
* Deep `Partial` of a request type: every field optional at every depth, with no
|
|
11974
|
+
* index signature — so object literals carrying unknown fields are flagged.
|
|
11975
|
+
*/
|
|
11976
|
+
export type DeepPartial<T> = T extends (infer U)[] ? DeepPartial<U>[] : T extends object ? {
|
|
11977
|
+
[K in keyof T]?: DeepPartial<T[K]>;
|
|
11978
|
+
} : T;
|
|
11979
|
+
/**
|
|
11980
|
+
* `trigger()`'s `data` type: an all-optional view of the event's request type.
|
|
11981
|
+
* See {@link HostEventRequest} and the `*Request` interfaces, e.g. {@link SearchRequest}.
|
|
11982
|
+
* No-payload events take `{}`. SDK 1.54.0 makes this strict (required fields enforced).
|
|
11983
|
+
*/
|
|
11984
|
+
export type TriggerData<HostEventT extends HostEvent> = HostEventRequest<HostEventT> extends void ? Record<string, never> : DeepPartial<HostEventRequest<HostEventT>>;
|
|
11985
|
+
/**
|
|
11986
|
+
* Response type returned by `embed.trigger()`.
|
|
11987
|
+
*/
|
|
11988
|
+
export type TriggerResponse<PayloadT, HostEventT extends HostEvent, ContextT extends ContextType = ContextType> = PayloadT extends HostEventRequest<HostEventT> ? HostEventResponse<HostEventT, ContextT> : any;
|
|
11989
|
+
/**
|
|
11990
|
+
* Typed `data` field per embed event. Seed with audited events only.
|
|
11991
|
+
*/
|
|
11992
|
+
export interface EmbedEventDataExtension {
|
|
11993
|
+
[EmbedEvent.AuthInit]: {
|
|
11994
|
+
/**
|
|
11995
|
+
* Whether authentication was successful.
|
|
11996
|
+
*/
|
|
11997
|
+
isLoggedIn?: boolean;
|
|
11998
|
+
[key: string]: any;
|
|
11010
11999
|
};
|
|
12000
|
+
[EmbedEvent.EmbedListenerReady]: Record<string, any>;
|
|
12001
|
+
/**
|
|
12002
|
+
* Fired when a callback-type custom action is triggered. Use
|
|
12003
|
+
* `payload.data.id` to identify which action fired.
|
|
12004
|
+
*/
|
|
12005
|
+
[EmbedEvent.CustomAction]: CustomActionPayload;
|
|
12006
|
+
}
|
|
12007
|
+
/**
|
|
12008
|
+
* Resolves the typed `data` payload for an embed event; `any` when the
|
|
12009
|
+
* event has not been audited/typed yet.
|
|
12010
|
+
*/
|
|
12011
|
+
export type EmbedEventData<EmbedEventT extends EmbedEvent> = EmbedEventT extends keyof EmbedEventDataExtension ? EmbedEventDataExtension[EmbedEventT] : any;
|
|
12012
|
+
/**
|
|
12013
|
+
* Full envelope delivered to `embed.on()` callbacks for a given event:
|
|
12014
|
+
* the wire fields (`type`, `status`) plus the typed `data`.
|
|
12015
|
+
*/
|
|
12016
|
+
export type EmbedEventPayload<EmbedEventT extends EmbedEvent> = Omit<MessagePayload, "data"> & {
|
|
12017
|
+
data: EmbedEventData<EmbedEventT>;
|
|
11011
12018
|
};
|
|
11012
|
-
export type UIPassthroughRequest<T extends keyof UIPassthroughContractBase> = UIPassthroughContractBase[T]["request"];
|
|
11013
|
-
export type UIPassthroughResponse<T extends keyof UIPassthroughContractBase> = UIPassthroughContractBase[T]["response"];
|
|
11014
|
-
export type UIPassthroughArrayResponse<ApiName extends keyof UIPassthroughContractBase> = Array<{
|
|
11015
|
-
refId?: string;
|
|
11016
|
-
value?: UIPassthroughResponse<ApiName>;
|
|
11017
|
-
error?: any;
|
|
11018
|
-
}>;
|
|
11019
|
-
export type EmbedApiHostEventMapping = {
|
|
11020
|
-
[HostEvent.Pin]: UIPassthroughEvent.PinAnswerToLiveboard;
|
|
11021
|
-
[HostEvent.SaveAnswer]: UIPassthroughEvent.SaveAnswer;
|
|
11022
|
-
[HostEvent.GetAnswerSession]: UIPassthroughEvent.GetAnswerSession;
|
|
11023
|
-
[HostEvent.GetFilters]: UIPassthroughEvent.GetFilters;
|
|
11024
|
-
[HostEvent.GetIframeUrl]: UIPassthroughEvent.GetIframeUrl;
|
|
11025
|
-
[HostEvent.GetParameters]: UIPassthroughEvent.GetParameters;
|
|
11026
|
-
[HostEvent.GetTML]: UIPassthroughEvent.GetTML;
|
|
11027
|
-
[HostEvent.GetTabs]: UIPassthroughEvent.GetTabs;
|
|
11028
|
-
[HostEvent.GetGroups]: UIPassthroughEvent.GetGroups;
|
|
11029
|
-
[HostEvent.getExportRequestForCurrentPinboard]: UIPassthroughEvent.GetExportRequestForCurrentPinboard;
|
|
11030
|
-
};
|
|
11031
|
-
export type HostEventRequest<HostEventT extends HostEvent> = HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughRequest<EmbedApiHostEventMapping[HostEventT]> : any;
|
|
11032
|
-
export type HostEventResponse<HostEventT extends HostEvent, ContextT extends ContextType> = HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughResponse<EmbedApiHostEventMapping[HostEventT]> : any;
|
|
11033
|
-
export type TriggerPayload<PayloadT, HostEventT extends HostEvent> = PayloadT | HostEventRequest<HostEventT>;
|
|
11034
|
-
export type TriggerResponse<PayloadT, HostEventT extends HostEvent, ContextT extends ContextType> = PayloadT extends HostEventRequest<HostEventT> ? HostEventResponse<HostEventT, ContextT> : any;
|
|
11035
12019
|
declare class HostEventClient {
|
|
11036
12020
|
iFrame: HTMLIFrameElement;
|
|
11037
12021
|
/** Cached list of available UI passthrough keys from the embedded app */
|
|
@@ -11081,7 +12065,7 @@ declare class HostEventClient {
|
|
|
11081
12065
|
* @param payload - Optional payload for the event
|
|
11082
12066
|
* @param context - Optional context (e.g. vizId) for scoped operations
|
|
11083
12067
|
*/
|
|
11084
|
-
triggerHostEvent<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(hostEvent: HostEventT, payload?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT,
|
|
12068
|
+
triggerHostEvent<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(hostEvent: HostEventT, payload?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
|
|
11085
12069
|
}
|
|
11086
12070
|
declare class TsEmbed {
|
|
11087
12071
|
/**
|
|
@@ -11099,6 +12083,7 @@ declare class TsEmbed {
|
|
|
11099
12083
|
* The key to store the embed instance in the DOM node
|
|
11100
12084
|
*/
|
|
11101
12085
|
protected embedNodeKey: string;
|
|
12086
|
+
protected embedContainerLoadedKey: string;
|
|
11102
12087
|
protected isAppInitialized: boolean;
|
|
11103
12088
|
/**
|
|
11104
12089
|
* A reference to the iframe within which the ThoughtSpot app
|
|
@@ -11268,10 +12253,10 @@ declare class TsEmbed {
|
|
|
11268
12253
|
*/
|
|
11269
12254
|
protected getEmbedBasePath(query: string): string;
|
|
11270
12255
|
protected getUpdateEmbedParamsObject(): Promise<{
|
|
11271
|
-
customisations: CustomisationsInterface;
|
|
11272
|
-
authToken: string;
|
|
11273
12256
|
runtimeFilterParams: string;
|
|
11274
12257
|
runtimeParameterParams: string;
|
|
12258
|
+
customisations: CustomisationsInterface;
|
|
12259
|
+
authToken: string;
|
|
11275
12260
|
hiddenHomepageModules: HomepageModule[];
|
|
11276
12261
|
reorderedHomepageModules: string[];
|
|
11277
12262
|
hostConfig: Record<string, any>;
|
|
@@ -11367,9 +12352,10 @@ declare class TsEmbed {
|
|
|
11367
12352
|
protected getRootIframeSrc(): string;
|
|
11368
12353
|
protected createIframeEl(frameSrc: string): HTMLIFrameElement;
|
|
11369
12354
|
/**
|
|
11370
|
-
* Returns a merged {@link PreRenderConfig} object where each
|
|
11371
|
-
*
|
|
11372
|
-
*
|
|
12355
|
+
* Returns a merged {@link PreRenderConfig} object where each key prefers the
|
|
12356
|
+
* value from `preRenderConfig` over its deprecated top-level `viewConfig`
|
|
12357
|
+
* counterpart (`id`/`preRenderId`, `containerSelector`/`preRenderContainer`,
|
|
12358
|
+
* `doNotTrackSize`/`doNotTrackPreRenderSize`) for backward compatibility.
|
|
11373
12359
|
*/
|
|
11374
12360
|
protected getPreRenderConfig(): PreRenderConfig;
|
|
11375
12361
|
/**
|
|
@@ -11463,21 +12449,6 @@ declare class TsEmbed {
|
|
|
11463
12449
|
* or else the v2 event type itself
|
|
11464
12450
|
*/
|
|
11465
12451
|
protected getCompatibleEventType(eventType: EmbedEvent): EmbedEvent;
|
|
11466
|
-
/**
|
|
11467
|
-
* Calculates the iframe center for the current visible viewPort
|
|
11468
|
-
* of iframe using Scroll position of Host App, offsetTop for iframe
|
|
11469
|
-
* in Host app. ViewPort height of the tab.
|
|
11470
|
-
* @returns iframe Center in visible viewport,
|
|
11471
|
-
* Iframe height,
|
|
11472
|
-
* View port height.
|
|
11473
|
-
*/
|
|
11474
|
-
protected getIframeCenter(): {
|
|
11475
|
-
iframeCenter: number;
|
|
11476
|
-
iframeScrolled: number;
|
|
11477
|
-
iframeHeight: number;
|
|
11478
|
-
viewPortHeight: number;
|
|
11479
|
-
iframeVisibleViewPort: number;
|
|
11480
|
-
};
|
|
11481
12452
|
/**
|
|
11482
12453
|
* Registers an event listener to trigger an alert when the ThoughtSpot app
|
|
11483
12454
|
* sends an event of a particular message type to the host application.
|
|
@@ -11501,7 +12472,7 @@ declare class TsEmbed {
|
|
|
11501
12472
|
* });
|
|
11502
12473
|
* ```
|
|
11503
12474
|
*/
|
|
11504
|
-
on(messageType:
|
|
12475
|
+
on<EmbedEventT extends EmbedEvent>(messageType: EmbedEventT, callback: (payload: EmbedEventPayload<EmbedEventT>, responder?: (data: any) => void) => void, options?: MessageOptions, isRegisteredBySDK?: boolean): typeof TsEmbed.prototype;
|
|
11505
12476
|
/**
|
|
11506
12477
|
* Removes an event listener for a particular event type.
|
|
11507
12478
|
* @param messageType The message type
|
|
@@ -11537,6 +12508,8 @@ declare class TsEmbed {
|
|
|
11537
12508
|
*/
|
|
11538
12509
|
private embedContainerReadyCallbacks;
|
|
11539
12510
|
protected getPreRenderObj<T extends TsEmbed>(): T;
|
|
12511
|
+
protected takeOverPreRender(): void;
|
|
12512
|
+
private markEmbedContainerLoaded;
|
|
11540
12513
|
private checkEmbedContainerLoaded;
|
|
11541
12514
|
private executeEmbedContainerReadyCallbacks;
|
|
11542
12515
|
/**
|
|
@@ -11547,8 +12520,12 @@ declare class TsEmbed {
|
|
|
11547
12520
|
protected createEmbedContainerHandler: (source: EmbedEvent.AuthInit | EmbedEvent.EmbedListenerReady) => () => void;
|
|
11548
12521
|
/**
|
|
11549
12522
|
* Triggers an event to the embedded app
|
|
12523
|
+
*
|
|
12524
|
+
* Payload typing: from SDK 1.52.0 (ThoughtSpot Cloud 26.9.0.cl), unknown fields
|
|
12525
|
+
* on a known event's payload fail to compile. From SDK 1.54.0 (26.11.0.cl) the
|
|
12526
|
+
* payload is checked strictly against the event contract — update call sites now.
|
|
11550
12527
|
* @param {HostEvent} messageType The event type
|
|
11551
|
-
* @param {
|
|
12528
|
+
* @param {TriggerData} data The payload, typed against the event's contract
|
|
11552
12529
|
* @param {ContextType} context Optional context type to specify the context from which the event is triggered.
|
|
11553
12530
|
* Use ContextType.Search for search answer context, ContextType.Answer for answer/explore context,
|
|
11554
12531
|
* ContextType.Liveboard for liveboard context, or ContextType.Spotter for spotter context.
|
|
@@ -11565,7 +12542,7 @@ declare class TsEmbed {
|
|
|
11565
12542
|
* ```
|
|
11566
12543
|
* @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl (for context parameter)
|
|
11567
12544
|
*/
|
|
11568
|
-
trigger<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(messageType: HostEventT, data?:
|
|
12545
|
+
trigger<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(messageType: HostEventT, data?: TriggerData<HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
|
|
11569
12546
|
/**
|
|
11570
12547
|
* Triggers an event to the embedded app, skipping the UI flow.
|
|
11571
12548
|
* @param {UIPassthroughEvent} apiName - The name of the API to be triggered.
|
|
@@ -11667,6 +12644,7 @@ declare class TsEmbed {
|
|
|
11667
12644
|
* @returns
|
|
11668
12645
|
*/
|
|
11669
12646
|
prerenderGeneric(): Promise<any>;
|
|
12647
|
+
protected preRenderParamsApplied: Promise<void>;
|
|
11670
12648
|
protected beforePrerenderVisible(): void;
|
|
11671
12649
|
/**
|
|
11672
12650
|
* Displays the pre-rendered component inside the host element.
|
|
@@ -11745,7 +12723,7 @@ declare class V1Embed extends TsEmbed {
|
|
|
11745
12723
|
* });
|
|
11746
12724
|
* ```
|
|
11747
12725
|
*/
|
|
11748
|
-
on(messageType:
|
|
12726
|
+
on<EmbedEventT extends EmbedEvent>(messageType: EmbedEventT, callback: (payload: EmbedEventPayload<EmbedEventT>, responder?: (data: any) => void) => void, options?: MessageOptions): typeof TsEmbed.prototype;
|
|
11749
12727
|
/**
|
|
11750
12728
|
* Only for testing purposes.
|
|
11751
12729
|
* @hidden
|
|
@@ -11907,6 +12885,20 @@ export interface SearchViewConfig extends SearchLiveboardCommonViewConfig, Omit<
|
|
|
11907
12885
|
* ```
|
|
11908
12886
|
*/
|
|
11909
12887
|
dataSource?: string;
|
|
12888
|
+
/**
|
|
12889
|
+
* If set to `true`, the answer edit panel is hidden.
|
|
12890
|
+
*
|
|
12891
|
+
* Supported embed types: `SearchEmbed`
|
|
12892
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
12893
|
+
* @example
|
|
12894
|
+
* ```js
|
|
12895
|
+
* const embed = new SearchEmbed('#tsEmbed', {
|
|
12896
|
+
* ... // other embed view config
|
|
12897
|
+
* hideAnswerEditPanel: true,
|
|
12898
|
+
* })
|
|
12899
|
+
* ```
|
|
12900
|
+
*/
|
|
12901
|
+
hideAnswerEditPanel?: boolean;
|
|
11910
12902
|
/**
|
|
11911
12903
|
* The initial search query to load the answer with.
|
|
11912
12904
|
* Use {@link searchOptions} instead.
|
|
@@ -12423,7 +13415,7 @@ export interface SpotterShareConversationConfig {
|
|
|
12423
13415
|
}
|
|
12424
13416
|
/**
|
|
12425
13417
|
* A single starter prompt question shown under a category pill.
|
|
12426
|
-
* @version SDK: 1.
|
|
13418
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12427
13419
|
* @group Embed components
|
|
12428
13420
|
*/
|
|
12429
13421
|
export interface StarterPromptQuestion {
|
|
@@ -12441,7 +13433,7 @@ export interface StarterPromptQuestion {
|
|
|
12441
13433
|
/**
|
|
12442
13434
|
* Configuration for a starter prompt category with questions
|
|
12443
13435
|
* (`quick` and `research`).
|
|
12444
|
-
* @version SDK: 1.
|
|
13436
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12445
13437
|
* @group Embed components
|
|
12446
13438
|
*/
|
|
12447
13439
|
export interface StarterPromptCategory {
|
|
@@ -12459,7 +13451,7 @@ export interface StarterPromptCategory {
|
|
|
12459
13451
|
/**
|
|
12460
13452
|
* Configuration for the Data Literacy starter prompt category.
|
|
12461
13453
|
* Only the label is customizable; the prompt text comes from the backend.
|
|
12462
|
-
* @version SDK: 1.
|
|
13454
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12463
13455
|
* @group Embed components
|
|
12464
13456
|
*/
|
|
12465
13457
|
export interface StarterPreviewDataCategory {
|
|
@@ -12477,7 +13469,7 @@ export interface StarterPreviewDataCategory {
|
|
|
12477
13469
|
* Note: this controls the Spotter chat interface only. The starter prompts on
|
|
12478
13470
|
* the Liveboard SpotterViz surface are configured separately through
|
|
12479
13471
|
* {@link SpotterVizConfig.customStarterPrompts}.
|
|
12480
|
-
* @version SDK: 1.
|
|
13472
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12481
13473
|
* @group Embed components
|
|
12482
13474
|
*/
|
|
12483
13475
|
export interface StarterPromptsConfig {
|
|
@@ -12557,7 +13549,7 @@ export interface SpotterChatViewConfig {
|
|
|
12557
13549
|
* `Action.DeepAnalysisPill` and `Action.DataLiteracyPill`.
|
|
12558
13550
|
*
|
|
12559
13551
|
* Supported embed types: `SpotterEmbed`, `LiveboardEmbed`, `AppEmbed`
|
|
12560
|
-
* @version SDK: 1.
|
|
13552
|
+
* @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
|
|
12561
13553
|
* @example
|
|
12562
13554
|
* ```js
|
|
12563
13555
|
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
@@ -13279,7 +14271,7 @@ export interface DiscoveryExperience {
|
|
|
13279
14271
|
* The view configuration for full app embedding.
|
|
13280
14272
|
* @group Embed components
|
|
13281
14273
|
*/
|
|
13282
|
-
export interface AppViewConfig extends AllEmbedViewConfig {
|
|
14274
|
+
export interface AppViewConfig extends AllEmbedViewConfig, FullHeightViewConfig {
|
|
13283
14275
|
/**
|
|
13284
14276
|
* If true, the top navigation bar within the ThoughtSpot app
|
|
13285
14277
|
* is displayed. By default, the navigation bar is hidden.
|
|
@@ -13564,34 +14556,6 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
13564
14556
|
* ```
|
|
13565
14557
|
*/
|
|
13566
14558
|
enableSearchAssist?: boolean;
|
|
13567
|
-
/**
|
|
13568
|
-
* If set to true, the Liveboard container dynamically resizes
|
|
13569
|
-
* according to the height of the Liveboard.
|
|
13570
|
-
*
|
|
13571
|
-
* **Note**: Using fullHeight loads all visualizations
|
|
13572
|
-
* on the Liveboard simultaneously, which results in
|
|
13573
|
-
* multiple warehouse queries and potentially a
|
|
13574
|
-
* longer wait for the topmost visualizations to
|
|
13575
|
-
* display on the screen. Setting fullHeight to
|
|
13576
|
-
* `false` fetches visualizations incrementally as
|
|
13577
|
-
* users scroll the page to view the charts and tables.
|
|
13578
|
-
*
|
|
13579
|
-
* From SDK 1.52.0, enabling `fullHeight` also turns on
|
|
13580
|
-
* {@link lazyLoadingForFullHeight} and
|
|
13581
|
-
* {@link enableScrollableContainerLazyLoading}, so visualizations load as
|
|
13582
|
-
* they scroll into view. Set either flag to `false` to opt out.
|
|
13583
|
-
*
|
|
13584
|
-
* Supported embed types: `AppEmbed`
|
|
13585
|
-
* @version SDK: 1.21.0 | ThoughtSpot: 9.4.0.cl, 9.4.0-sw
|
|
13586
|
-
* @example
|
|
13587
|
-
* ```js
|
|
13588
|
-
* const embed = new AppEmbed('#tsEmbed', {
|
|
13589
|
-
* ... // other embed view config
|
|
13590
|
-
* fullHeight: true,
|
|
13591
|
-
* })
|
|
13592
|
-
* ```
|
|
13593
|
-
*/
|
|
13594
|
-
fullHeight?: boolean;
|
|
13595
14559
|
/**
|
|
13596
14560
|
* Enables the V2 navigation and modular home page experience.
|
|
13597
14561
|
* For more information,
|
|
@@ -13786,78 +14750,6 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
13786
14750
|
* ```
|
|
13787
14751
|
*/
|
|
13788
14752
|
isGranularXLSXCSVSchedulesEnabled?: boolean;
|
|
13789
|
-
/**
|
|
13790
|
-
* Loads visualizations only as they scroll into the viewport, instead of
|
|
13791
|
-
* loading the whole full-height Liveboard at once.
|
|
13792
|
-
*
|
|
13793
|
-
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
13794
|
-
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
13795
|
-
* set explicitly. Set it to `false` to load every visualization upfront.
|
|
13796
|
-
* The flag has no effect unless `fullHeight` is enabled.
|
|
13797
|
-
*
|
|
13798
|
-
* @type {boolean}
|
|
13799
|
-
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
13800
|
-
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
13801
|
-
* @example
|
|
13802
|
-
* ```js
|
|
13803
|
-
* const embed = new AppEmbed('#embed-container', {
|
|
13804
|
-
* // ...other options
|
|
13805
|
-
* fullHeight: true,
|
|
13806
|
-
* lazyLoadingForFullHeight: true,
|
|
13807
|
-
* })
|
|
13808
|
-
* ```
|
|
13809
|
-
*/
|
|
13810
|
-
lazyLoadingForFullHeight?: boolean;
|
|
13811
|
-
/**
|
|
13812
|
-
* Computes the visible region of the embed against its scrollable and
|
|
13813
|
-
* clipping ancestors, instead of treating the browser window as the only
|
|
13814
|
-
* viewport, and tracks scroll and resize on those ancestors.
|
|
13815
|
-
*
|
|
13816
|
-
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
13817
|
-
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
13818
|
-
* set explicitly. Set it to `false` when the page scrolls with the window
|
|
13819
|
-
* and the embed has no clipping ancestor, to skip the extra ancestor
|
|
13820
|
-
* tracking.
|
|
13821
|
-
*
|
|
13822
|
-
* @type {boolean}
|
|
13823
|
-
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
13824
|
-
* @hidden
|
|
13825
|
-
*/
|
|
13826
|
-
enableScrollableContainerLazyLoading?: boolean;
|
|
13827
|
-
/**
|
|
13828
|
-
* How far outside the viewport a visualization starts loading, when
|
|
13829
|
-
* {@link lazyLoadingForFullHeight} is enabled.
|
|
13830
|
-
*
|
|
13831
|
-
* For example, if the margin is set to '10px',
|
|
13832
|
-
* the visualization will be loaded 10px before its top edge is visible in the
|
|
13833
|
-
* viewport.
|
|
13834
|
-
*
|
|
13835
|
-
* The format is similar to CSS margin, so `'500px 0px'` extends the
|
|
13836
|
-
* prefetch 500px above and below the viewport and not sideways. Accepted
|
|
13837
|
-
* units are `px`, `em`, `rem`, `%`, `vh` and `vw`, plus bare `0` and
|
|
13838
|
-
* `auto`; an invalid value is logged and ignored.
|
|
13839
|
-
*
|
|
13840
|
-
* From SDK 1.52.0 this defaults to `'500px 0px'` — roughly one
|
|
13841
|
-
* visualization ahead of the scroll position, so a chart has usually
|
|
13842
|
-
* finished loading by the time it scrolls into view. Use a smaller margin
|
|
13843
|
-
* to cut warehouse queries further, or `'0px'` to load a visualization
|
|
13844
|
-
* only once it is actually visible.
|
|
13845
|
-
*
|
|
13846
|
-
* @type {string}
|
|
13847
|
-
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
13848
|
-
* @default '500px 0px' when `fullHeight` is enabled, from SDK 1.52.0
|
|
13849
|
-
* @example
|
|
13850
|
-
* ```js
|
|
13851
|
-
* const embed = new AppEmbed('#embed-container', {
|
|
13852
|
-
* // ...other options
|
|
13853
|
-
* fullHeight: true,
|
|
13854
|
-
* lazyLoadingForFullHeight: true,
|
|
13855
|
-
* // Using 0px, the visualization will be only loaded when it's visible in the viewport.
|
|
13856
|
-
* lazyLoadingMargin: '0px',
|
|
13857
|
-
* })
|
|
13858
|
-
* ```
|
|
13859
|
-
*/
|
|
13860
|
-
lazyLoadingMargin?: string;
|
|
13861
14753
|
/**
|
|
13862
14754
|
* updatedSpotterChatPrompt : Controls the updated spotter chat prompt.
|
|
13863
14755
|
*
|
|
@@ -14045,23 +14937,6 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
14045
14937
|
* @default false
|
|
14046
14938
|
*/
|
|
14047
14939
|
enableStopAnswerGenerationEmbed?: boolean;
|
|
14048
|
-
/**
|
|
14049
|
-
* This is the minimum height (in pixels) for a full-height App.
|
|
14050
|
-
* Setting this height helps resolve issues with empty Apps and
|
|
14051
|
-
* other screens navigable from an App.
|
|
14052
|
-
*
|
|
14053
|
-
* @version SDK: 1.44.2 | ThoughtSpot: 10.15.0.cl
|
|
14054
|
-
* @default 500
|
|
14055
|
-
* @example
|
|
14056
|
-
* ```js
|
|
14057
|
-
* const embed = new AppEmbed('#embed', {
|
|
14058
|
-
* ... // other app view config
|
|
14059
|
-
* fullHeight: true,
|
|
14060
|
-
* minimumHeight: 600,
|
|
14061
|
-
* });
|
|
14062
|
-
* ```
|
|
14063
|
-
*/
|
|
14064
|
-
minimumHeight?: number;
|
|
14065
14940
|
/**
|
|
14066
14941
|
* To enable the homepage announcement banner.
|
|
14067
14942
|
* Controls the visibility of the announcement section
|
|
@@ -14111,6 +14986,20 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
14111
14986
|
* ```
|
|
14112
14987
|
*/
|
|
14113
14988
|
updatedSpotterExperience?: boolean;
|
|
14989
|
+
/**
|
|
14990
|
+
* If set to `true`, the answer edit panel is hidden.
|
|
14991
|
+
*
|
|
14992
|
+
* Supported embed types: `AppEmbed`
|
|
14993
|
+
* @version SDK: 1.54.0 | ThoughtSpot Cloud: 26.11.0.cl
|
|
14994
|
+
* @example
|
|
14995
|
+
* ```js
|
|
14996
|
+
* const embed = new AppEmbed('#tsEmbed', {
|
|
14997
|
+
* ... // other embed view config
|
|
14998
|
+
* hideAnswerEditPanel: true,
|
|
14999
|
+
* })
|
|
15000
|
+
* ```
|
|
15001
|
+
*/
|
|
15002
|
+
hideAnswerEditPanel?: boolean;
|
|
14114
15003
|
}
|
|
14115
15004
|
/**
|
|
14116
15005
|
* APP_INIT data shape for AppEmbed.
|
|
@@ -14126,9 +15015,7 @@ export interface AppEmbedAppInitData extends DefaultAppInitData {
|
|
|
14126
15015
|
}
|
|
14127
15016
|
declare class AppEmbed extends V1Embed {
|
|
14128
15017
|
protected viewConfig: AppViewConfig;
|
|
14129
|
-
private
|
|
14130
|
-
private lazyLoadScrollContainers;
|
|
14131
|
-
private lazyLoadResizeObserver;
|
|
15018
|
+
private readonly fullHeightController?;
|
|
14132
15019
|
constructor(domSelector: DOMSelector, viewConfig: AppViewConfig);
|
|
14133
15020
|
/**
|
|
14134
15021
|
* Extends the default APP_INIT payload with `embedParams.spotterSidebarConfig`
|
|
@@ -14149,27 +15036,11 @@ declare class AppEmbed extends V1Embed {
|
|
|
14149
15036
|
*/
|
|
14150
15037
|
protected getEmbedParams(): string;
|
|
14151
15038
|
protected getEmbedParamsObject(): any;
|
|
14152
|
-
private sendFullHeightLazyLoadData;
|
|
14153
|
-
/**
|
|
14154
|
-
* This is a handler for the RequestVisibleEmbedCoordinates event.
|
|
14155
|
-
* It is used to send the visible coordinates data to the host application.
|
|
14156
|
-
* @param data The event payload
|
|
14157
|
-
* @param responder The responder function
|
|
14158
|
-
*/
|
|
14159
|
-
private requestVisibleEmbedCoordinatesHandler;
|
|
14160
15039
|
/**
|
|
14161
15040
|
* Constructs the URL of the ThoughtSpot app page to be rendered.
|
|
14162
15041
|
* @param pageId The ID of the page to be embedded.
|
|
14163
15042
|
*/
|
|
14164
15043
|
getIFrameSrc(): string;
|
|
14165
|
-
/**
|
|
14166
|
-
* Set the iframe height as per the computed height received
|
|
14167
|
-
* from the ThoughtSpot app.
|
|
14168
|
-
* @param data The event payload
|
|
14169
|
-
*/
|
|
14170
|
-
protected updateIFrameHeight: (data: MessagePayload) => void;
|
|
14171
|
-
private embedIframeCenter;
|
|
14172
|
-
private setIframeHeightForNonEmbedLiveboard;
|
|
14173
15044
|
/**
|
|
14174
15045
|
* Gets the ThoughtSpot route of the page for a particular page ID.
|
|
14175
15046
|
* @param pageId The identifier for a page in the ThoughtSpot app.
|
|
@@ -14200,8 +15071,6 @@ declare class AppEmbed extends V1Embed {
|
|
|
14200
15071
|
*/
|
|
14201
15072
|
destroy(): void;
|
|
14202
15073
|
private postRender;
|
|
14203
|
-
private registerLazyLoadEvents;
|
|
14204
|
-
private unregisterLazyLoadEvents;
|
|
14205
15074
|
/**
|
|
14206
15075
|
* Renders the embedded application pages in the ThoughtSpot app.
|
|
14207
15076
|
* @param renderOptions An object containing the page ID
|
|
@@ -14223,71 +15092,7 @@ export interface LiveboardEmbedAppInitData extends DefaultAppInitData {
|
|
|
14223
15092
|
* The configuration for the embedded Liveboard or visualization page view.
|
|
14224
15093
|
* @group Embed components
|
|
14225
15094
|
*/
|
|
14226
|
-
export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, LiveboardAppEmbedViewConfig {
|
|
14227
|
-
/**
|
|
14228
|
-
* If set to true, the embedded object container dynamically resizes
|
|
14229
|
-
* according to the height of the Liveboard.
|
|
14230
|
-
*
|
|
14231
|
-
* **Note**: Using fullHeight loads all visualizations on the
|
|
14232
|
-
* Liveboard simultaneously, which results in multiple warehouse
|
|
14233
|
-
* queries and potentially a longer wait for the topmost
|
|
14234
|
-
* visualizations to display on the screen.
|
|
14235
|
-
* Setting `fullHeight` to `false` fetches visualizations
|
|
14236
|
-
* incrementally as users scroll the page to view the charts and tables.
|
|
14237
|
-
*
|
|
14238
|
-
* From SDK 1.52.0, enabling `fullHeight` also turns on
|
|
14239
|
-
* {@link lazyLoadingForFullHeight} and
|
|
14240
|
-
* {@link enableScrollableContainerLazyLoading}, so visualizations load as
|
|
14241
|
-
* they scroll into view. Set either flag to `false` to opt out.
|
|
14242
|
-
*
|
|
14243
|
-
*
|
|
14244
|
-
* Supported embed types: `LiveboardEmbed`
|
|
14245
|
-
* @version SDK: 1.1.0 | ThoughtSpot: ts7.may.cl, 7.2.1
|
|
14246
|
-
* @example
|
|
14247
|
-
* ```js
|
|
14248
|
-
* const embed = new LiveboardEmbed('#embed', {
|
|
14249
|
-
* ... // other liveboard view config
|
|
14250
|
-
* fullHeight: true,
|
|
14251
|
-
* });
|
|
14252
|
-
* ```
|
|
14253
|
-
*/
|
|
14254
|
-
fullHeight?: boolean;
|
|
14255
|
-
/**
|
|
14256
|
-
* This is the minimum height (in pixels) for a full-height Liveboard.
|
|
14257
|
-
* Setting this height helps resolve issues with empty Liveboards and
|
|
14258
|
-
* other screens navigable from a Liveboard.
|
|
14259
|
-
*
|
|
14260
|
-
* Supported embed types: `LiveboardEmbed`
|
|
14261
|
-
* @version SDK: 1.5.0 | ThoughtSpot: ts7.oct.cl, 7.2.1
|
|
14262
|
-
* @deprecated Use `minimumHeight` instead.
|
|
14263
|
-
* @default 500
|
|
14264
|
-
* @example
|
|
14265
|
-
* ```js
|
|
14266
|
-
* const embed = new LiveboardEmbed('#embed', {
|
|
14267
|
-
* ... // other liveboard view config
|
|
14268
|
-
* fullHeight: true,
|
|
14269
|
-
* defaultHeight: 600,
|
|
14270
|
-
* });
|
|
14271
|
-
* ```
|
|
14272
|
-
*/
|
|
14273
|
-
defaultHeight?: number;
|
|
14274
|
-
/**
|
|
14275
|
-
* This is the minimum height (in pixels) for a full-height Liveboard.
|
|
14276
|
-
* Setting this height helps resolve issues with empty Liveboards and
|
|
14277
|
-
* other screens navigable from a Liveboard.
|
|
14278
|
-
*
|
|
14279
|
-
* @version SDK: 1.44.2 | ThoughtSpot: 10.15.0.cl
|
|
14280
|
-
* @default 500
|
|
14281
|
-
* @example
|
|
14282
|
-
* ```js
|
|
14283
|
-
* const embed = new LiveboardEmbed('#embed', {
|
|
14284
|
-
* ... // other liveboard view config
|
|
14285
|
-
* fullHeight: true,
|
|
14286
|
-
* minimumHeight: 600,
|
|
14287
|
-
* });
|
|
14288
|
-
* ```
|
|
14289
|
-
*/
|
|
14290
|
-
minimumHeight?: number;
|
|
15095
|
+
export interface LiveboardViewConfig extends BaseViewConfig, FullHeightViewConfig, SearchLiveboardCommonViewConfig, LiveboardAppEmbedViewConfig {
|
|
14291
15096
|
/**
|
|
14292
15097
|
* If set to true, the context menu in visualizations will be enabled.
|
|
14293
15098
|
* @version SDK: 1.1.0 | ThoughtSpot: 8.1.0.sw
|
|
@@ -14631,77 +15436,6 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
14631
15436
|
* ```
|
|
14632
15437
|
*/
|
|
14633
15438
|
isGranularXLSXCSVSchedulesEnabled?: boolean;
|
|
14634
|
-
/**
|
|
14635
|
-
* Loads visualizations only as they scroll into the viewport, instead of
|
|
14636
|
-
* loading the whole full-height Liveboard at once.
|
|
14637
|
-
*
|
|
14638
|
-
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
14639
|
-
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
14640
|
-
* set explicitly. Set it to `false` to load every visualization upfront.
|
|
14641
|
-
* The flag has no effect unless `fullHeight` is enabled.
|
|
14642
|
-
*
|
|
14643
|
-
* @type {boolean}
|
|
14644
|
-
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
14645
|
-
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
14646
|
-
* @example
|
|
14647
|
-
* ```js
|
|
14648
|
-
* const embed = new LiveboardEmbed('#embed-container', {
|
|
14649
|
-
* // ...other options
|
|
14650
|
-
* fullHeight: true,
|
|
14651
|
-
* lazyLoadingForFullHeight: true,
|
|
14652
|
-
* })
|
|
14653
|
-
* ```
|
|
14654
|
-
*/
|
|
14655
|
-
lazyLoadingForFullHeight?: boolean;
|
|
14656
|
-
/**
|
|
14657
|
-
* Computes the visible region of the embed against its scrollable and
|
|
14658
|
-
* clipping ancestors, instead of treating the browser window as the only
|
|
14659
|
-
* viewport, and tracks scroll and resize on those ancestors.
|
|
14660
|
-
*
|
|
14661
|
-
* From SDK 1.52.0 this is enabled automatically whenever `fullHeight` is
|
|
14662
|
-
* `true`. On SDK 1.51.0 and earlier it defaulted to `false` and had to be
|
|
14663
|
-
* set explicitly. Set it to `false` when the page scrolls with the window
|
|
14664
|
-
* and the embed has no clipping ancestor, to skip the extra ancestor
|
|
14665
|
-
* tracking.
|
|
14666
|
-
*
|
|
14667
|
-
* @type {boolean}
|
|
14668
|
-
* @default true when `fullHeight` is enabled, from SDK 1.52.0
|
|
14669
|
-
*/
|
|
14670
|
-
enableScrollableContainerLazyLoading?: boolean;
|
|
14671
|
-
/**
|
|
14672
|
-
* How far outside the viewport a visualization starts loading, when
|
|
14673
|
-
* {@link lazyLoadingForFullHeight} is enabled.
|
|
14674
|
-
*
|
|
14675
|
-
* For example, if the margin is set to '10px',
|
|
14676
|
-
* the visualization will be loaded 10px before its top edge is visible in the
|
|
14677
|
-
* viewport.
|
|
14678
|
-
*
|
|
14679
|
-
* The format is similar to CSS margin, so `'500px 0px'` extends the
|
|
14680
|
-
* prefetch 500px above and below the viewport and not sideways. Accepted
|
|
14681
|
-
* units are `px`, `em`, `rem`, `%`, `vh` and `vw`, plus bare `0` and
|
|
14682
|
-
* `auto`; an invalid value is logged and ignored.
|
|
14683
|
-
*
|
|
14684
|
-
* From SDK 1.52.0 this defaults to `'500px 0px'` — roughly one
|
|
14685
|
-
* visualization ahead of the scroll position, so a chart has usually
|
|
14686
|
-
* finished loading by the time it scrolls into view. Use a smaller margin
|
|
14687
|
-
* to cut warehouse queries further, or `'0px'` to load a visualization
|
|
14688
|
-
* only once it is actually visible.
|
|
14689
|
-
*
|
|
14690
|
-
* @type {string}
|
|
14691
|
-
* @version SDK: 1.40.0 | ThoughtSpot: 10.12.0.cl
|
|
14692
|
-
* @default '500px 0px' when `fullHeight` is enabled, from SDK 1.52.0
|
|
14693
|
-
* @example
|
|
14694
|
-
* ```js
|
|
14695
|
-
* const embed = new LiveboardEmbed('#embed-container', {
|
|
14696
|
-
* // ...other options
|
|
14697
|
-
* fullHeight: true,
|
|
14698
|
-
* lazyLoadingForFullHeight: true,
|
|
14699
|
-
* // Using 0px, the visualization will be only loaded when it's visible in the viewport.
|
|
14700
|
-
* lazyLoadingMargin: '0px',
|
|
14701
|
-
* })
|
|
14702
|
-
* ```
|
|
14703
|
-
*/
|
|
14704
|
-
lazyLoadingMargin?: string;
|
|
14705
15439
|
/**
|
|
14706
15440
|
* showSpotterLimitations : show limitation text
|
|
14707
15441
|
* of the spotter underneath the chat input.
|
|
@@ -14840,9 +15574,7 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
|
|
|
14840
15574
|
}
|
|
14841
15575
|
declare class LiveboardEmbed extends V1Embed {
|
|
14842
15576
|
protected viewConfig: LiveboardViewConfig;
|
|
14843
|
-
private
|
|
14844
|
-
private lazyLoadScrollContainers;
|
|
14845
|
-
private lazyLoadResizeObserver;
|
|
15577
|
+
private readonly fullHeightController?;
|
|
14846
15578
|
constructor(domSelector: DOMSelector, viewConfig: LiveboardViewConfig);
|
|
14847
15579
|
protected getAppInitData(): Promise<LiveboardEmbedAppInitData>;
|
|
14848
15580
|
/**
|
|
@@ -14852,27 +15584,11 @@ declare class LiveboardEmbed extends V1Embed {
|
|
|
14852
15584
|
protected getEmbedParams(): string;
|
|
14853
15585
|
protected getEmbedParamsObject(): any;
|
|
14854
15586
|
private getIframeSuffixSrc;
|
|
14855
|
-
private sendFullHeightLazyLoadData;
|
|
14856
|
-
/**
|
|
14857
|
-
* This is a handler for the RequestVisibleEmbedCoordinates event.
|
|
14858
|
-
* It is used to send the visible coordinates data to the host application.
|
|
14859
|
-
* @param data The event payload
|
|
14860
|
-
* @param responder The responder function
|
|
14861
|
-
*/
|
|
14862
|
-
private requestVisibleEmbedCoordinatesHandler;
|
|
14863
15587
|
/**
|
|
14864
15588
|
* Construct the URL of the embedded ThoughtSpot Liveboard or visualization
|
|
14865
15589
|
* to be loaded within the iFrame.
|
|
14866
15590
|
*/
|
|
14867
15591
|
private getIFrameSrc;
|
|
14868
|
-
/**
|
|
14869
|
-
* Set the iframe height as per the computed height received
|
|
14870
|
-
* from the ThoughtSpot app.
|
|
14871
|
-
* @param data The event payload
|
|
14872
|
-
*/
|
|
14873
|
-
private updateIFrameHeight;
|
|
14874
|
-
private embedIframeCenter;
|
|
14875
|
-
private setIframeHeightForNonEmbedLiveboard;
|
|
14876
15592
|
private setActiveTab;
|
|
14877
15593
|
private showPreviewLoader;
|
|
14878
15594
|
/**
|
|
@@ -14887,22 +15603,23 @@ declare class LiveboardEmbed extends V1Embed {
|
|
|
14887
15603
|
personalizedViewId: string;
|
|
14888
15604
|
};
|
|
14889
15605
|
protected beforePrerenderVisible(): void;
|
|
15606
|
+
private isShowingLiveboardRoute;
|
|
14890
15607
|
protected handleRenderForPrerender(): Promise<TsEmbed>;
|
|
14891
15608
|
/**
|
|
14892
15609
|
* Triggers an event to the embedded app
|
|
15610
|
+
* Payload typing follows {@link TsEmbed.trigger}: unknown fields fail to compile
|
|
15611
|
+
* from SDK 1.52.0; strict contract checks land in SDK 1.54.0.
|
|
14893
15612
|
* @param {HostEvent} messageType The event type
|
|
14894
|
-
* @param {
|
|
15613
|
+
* @param {TriggerData} data The payload, typed against the event's contract
|
|
14895
15614
|
* @returns A promise that resolves with the response from the embedded app
|
|
14896
15615
|
*/
|
|
14897
|
-
trigger<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(messageType: HostEventT, data?:
|
|
15616
|
+
trigger<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(messageType: HostEventT, data?: TriggerData<HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
|
|
14898
15617
|
/**
|
|
14899
15618
|
* Destroys the ThoughtSpot embed, and remove any nodes from the DOM.
|
|
14900
15619
|
* @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
|
|
14901
15620
|
*/
|
|
14902
15621
|
destroy(): void;
|
|
14903
15622
|
private postRender;
|
|
14904
|
-
private registerLazyLoadEvents;
|
|
14905
|
-
private unregisterLazyLoadEvents;
|
|
14906
15623
|
/**
|
|
14907
15624
|
* Render an embedded ThoughtSpot Liveboard or visualization
|
|
14908
15625
|
* @param renderOptions An object specifying the Liveboard ID,
|
|
@@ -14979,9 +15696,9 @@ export interface SearchProps extends EmbedProps, SearchViewConfig {
|
|
|
14979
15696
|
}
|
|
14980
15697
|
/**
|
|
14981
15698
|
* The PreRendered components require a preRender id. It can be supplied either
|
|
14982
|
-
* through `preRenderConfig.
|
|
15699
|
+
* through `preRenderConfig.id` (SDK: 1.52.0 and later) or through the
|
|
14983
15700
|
* top-level `preRenderId` prop (SDK: 1.25.0 and later, now deprecated).
|
|
14984
|
-
* `preRenderConfig.
|
|
15701
|
+
* `preRenderConfig.id` takes precedence when both are set.
|
|
14985
15702
|
*
|
|
14986
15703
|
* Use PreRender to render the embed in the background and then
|
|
14987
15704
|
* show or hide the rendered embed using showPreRender or hidePreRender respectively.
|
|
@@ -14990,14 +15707,14 @@ export interface SearchProps extends EmbedProps, SearchViewConfig {
|
|
|
14990
15707
|
* // Preferred, SDK: 1.52.0 and later.
|
|
14991
15708
|
* function LandingPageComponent() {
|
|
14992
15709
|
* return <PreRenderedLiveboardEmbed
|
|
14993
|
-
* preRenderConfig={{
|
|
15710
|
+
* preRenderConfig={{ id: "someId" }}
|
|
14994
15711
|
* liveboardId="libId"
|
|
14995
15712
|
* />
|
|
14996
15713
|
* }
|
|
14997
15714
|
*
|
|
14998
15715
|
* function MyComponent() {
|
|
14999
15716
|
* return <LiveboardEmbed
|
|
15000
|
-
* preRenderConfig={{
|
|
15717
|
+
* preRenderConfig={{ id: "someId" }}
|
|
15001
15718
|
* liveboardId="libId"
|
|
15002
15719
|
* />
|
|
15003
15720
|
* }
|
|
@@ -15014,7 +15731,7 @@ export type PreRenderProps = {
|
|
|
15014
15731
|
/**
|
|
15015
15732
|
* PreRender id to be used for PreRendering the embed.
|
|
15016
15733
|
* @version SDK: 1.25.0 | ThoughtSpot: 9.6.0.cl
|
|
15017
|
-
* @deprecated Use `preRenderConfig.
|
|
15734
|
+
* @deprecated Use `preRenderConfig.id` instead.
|
|
15018
15735
|
*/
|
|
15019
15736
|
preRenderId: string;
|
|
15020
15737
|
/**
|
|
@@ -15027,17 +15744,17 @@ export type PreRenderProps = {
|
|
|
15027
15744
|
/**
|
|
15028
15745
|
* PreRender id to be used for PreRendering the embed.
|
|
15029
15746
|
* @version SDK: 1.25.0 | ThoughtSpot: 9.6.0.cl
|
|
15030
|
-
* @deprecated Use `preRenderConfig.
|
|
15747
|
+
* @deprecated Use `preRenderConfig.id` instead.
|
|
15031
15748
|
*/
|
|
15032
15749
|
preRenderId?: string;
|
|
15033
15750
|
/**
|
|
15034
|
-
* Configuration for the pre-render wrapper element. `
|
|
15751
|
+
* Configuration for the pre-render wrapper element. `id` is
|
|
15035
15752
|
* required here when the top-level `preRenderId` prop is not passed.
|
|
15036
15753
|
* See {@link PreRenderConfig} for available options.
|
|
15037
15754
|
* @version SDK: 1.52.0
|
|
15038
15755
|
*/
|
|
15039
15756
|
preRenderConfig: PreRenderConfig & {
|
|
15040
|
-
|
|
15757
|
+
id: string;
|
|
15041
15758
|
};
|
|
15042
15759
|
};
|
|
15043
15760
|
/**
|