@thoughtspot/visual-embed-sdk 1.12.0-alpha.2 → 1.12.2
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/CHANGELOG.md +19 -6
- package/README.md +1 -1
- package/dist/src/auth.d.ts +17 -1
- package/dist/src/auth.spec.d.ts +1 -0
- package/dist/src/embed/base.d.ts +1 -0
- package/dist/src/embed/liveboard.d.ts +7 -1
- package/dist/src/embed/search.d.ts +5 -0
- package/dist/src/embed/searchEmbed-basic-auth.spec.d.ts +1 -0
- package/dist/src/embed/ts-embed.d.ts +2 -1
- package/dist/src/errors.d.ts +1 -0
- package/dist/src/types.d.ts +19 -2
- package/dist/src/utils.d.ts +1 -0
- package/dist/tsembed.es.js +80 -7
- package/dist/tsembed.js +80 -7
- package/lib/package.json +4 -2
- package/lib/src/auth.d.ts +17 -1
- package/lib/src/auth.js +23 -2
- package/lib/src/auth.js.map +1 -1
- package/lib/src/auth.spec.d.ts +1 -0
- package/lib/src/auth.spec.js +4 -1
- package/lib/src/auth.spec.js.map +1 -1
- package/lib/src/embed/app.spec.js +4 -3
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/base.d.ts +1 -0
- package/lib/src/embed/base.js +10 -0
- package/lib/src/embed/base.js.map +1 -1
- package/lib/src/embed/base.spec.js +16 -0
- package/lib/src/embed/base.spec.js.map +1 -1
- package/lib/src/embed/embed.spec.js +2 -0
- package/lib/src/embed/embed.spec.js.map +1 -1
- package/lib/src/embed/events.spec.js +1 -0
- package/lib/src/embed/events.spec.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +7 -1
- package/lib/src/embed/liveboard.js +12 -0
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +18 -4
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/pinboard.spec.js +4 -3
- package/lib/src/embed/pinboard.spec.js.map +1 -1
- package/lib/src/embed/search.d.ts +5 -0
- package/lib/src/embed/search.js +10 -2
- package/lib/src/embed/search.js.map +1 -1
- package/lib/src/embed/search.spec.js +9 -1
- package/lib/src/embed/search.spec.js.map +1 -1
- package/lib/src/embed/searchEmbed-basic-auth.spec.d.ts +1 -0
- package/lib/src/embed/searchEmbed-basic-auth.spec.js +96 -0
- package/lib/src/embed/searchEmbed-basic-auth.spec.js.map +1 -0
- package/lib/src/embed/ts-embed.d.ts +2 -1
- package/lib/src/embed/ts-embed.js +7 -5
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +12 -5
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/errors.d.ts +1 -0
- package/lib/src/errors.js +1 -0
- package/lib/src/errors.js.map +1 -1
- package/lib/src/react/index.js +3 -2
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/react/index.spec.js +3 -2
- package/lib/src/react/index.spec.js.map +1 -1
- package/lib/src/types.d.ts +19 -2
- package/lib/src/types.js +11 -0
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils.d.ts +1 -0
- package/lib/src/utils.js +11 -0
- package/lib/src/utils.js.map +1 -1
- package/lib/src/utils.spec.js +22 -1
- package/lib/src/utils.spec.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +50 -5
- package/package.json +5 -3
- package/src/auth.spec.ts +10 -1
- package/src/auth.ts +24 -2
- package/src/embed/app.spec.ts +4 -3
- package/src/embed/base.spec.ts +18 -0
- package/src/embed/base.ts +10 -0
- package/src/embed/embed.spec.ts +2 -0
- package/src/embed/events.spec.ts +1 -0
- package/src/embed/liveboard.spec.ts +27 -4
- package/src/embed/liveboard.ts +13 -0
- package/src/embed/pinboard.spec.ts +4 -3
- package/src/embed/search.spec.ts +11 -1
- package/src/embed/search.ts +20 -1
- package/src/embed/searchEmbed-basic-auth.spec.ts +115 -0
- package/src/embed/ts-embed.spec.ts +19 -5
- package/src/embed/ts-embed.ts +8 -5
- package/src/errors.ts +2 -0
- package/src/react/index.spec.tsx +4 -2
- package/src/react/index.tsx +3 -2
- package/src/types.ts +17 -0
- package/src/utils.spec.ts +29 -0
- package/src/utils.ts +16 -0
package/CHANGELOG.md
CHANGED
|
@@ -6,7 +6,20 @@ This project follows Semantic Versioning.
|
|
|
6
6
|
## Unreleased
|
|
7
7
|
|
|
8
8
|
### New Features
|
|
9
|
-
-
|
|
9
|
+
- Event for navigating to a specific page in App embed without any reload
|
|
10
|
+
- Ability to turn on search assist in Search embed
|
|
11
|
+
|
|
12
|
+
## 1.11.2 (06-10-2022)
|
|
13
|
+
### Fixed
|
|
14
|
+
- Typescript build that was affecting some Angular project configurations
|
|
15
|
+
|
|
16
|
+
## 1.11.1 (05-30-2022)
|
|
17
|
+
### Fixed
|
|
18
|
+
- Whitelabeling - new [action](https://developers.thoughtspot.com/docs/typedoc/enums/Action.html#ReportError) for the ability to turn off TS specific error reporting by end users.
|
|
19
|
+
|
|
20
|
+
## 1.11.0 (05-20-2022)
|
|
21
|
+
- Release to support TS version 8.3.0.cl
|
|
22
|
+
- Please check the full list of changes [here](https://developers.thoughtspot.com/docs/?pageid=embed-sdk-changelog)
|
|
10
23
|
|
|
11
24
|
## 1.10.4 (05-06-2022)
|
|
12
25
|
### New Features
|
|
@@ -32,7 +45,7 @@ This project follows Semantic Versioning.
|
|
|
32
45
|
## 1.10.0 (04-22-2022)
|
|
33
46
|
|
|
34
47
|
- Release to support TS version 8.2.0.cl
|
|
35
|
-
- Please check the full list of changes [here](https://developers.thoughtspot.com/docs/?pageid=
|
|
48
|
+
- Please check the full list of changes [here](https://developers.thoughtspot.com/docs/?pageid=embed-sdk-changelog)
|
|
36
49
|
|
|
37
50
|
## 1.9.5 (04-06-2022)
|
|
38
51
|
|
|
@@ -48,12 +61,12 @@ This project follows Semantic Versioning.
|
|
|
48
61
|
|
|
49
62
|
## 1.9.3 (03-22-2022)
|
|
50
63
|
|
|
51
|
-
### New Features
|
|
64
|
+
### New Features
|
|
52
65
|
- `disableLoginRedirect` option in `EmbedConfig`
|
|
53
66
|
|
|
54
67
|
## 1.9.2 (03-17-2022)
|
|
55
68
|
|
|
56
|
-
### New Features
|
|
69
|
+
### New Features
|
|
57
70
|
- Ability to trigger events on React components
|
|
58
71
|
- Added new `useEmbedRef` hook, check README for usage.
|
|
59
72
|
|
|
@@ -73,7 +86,7 @@ This project follows Semantic Versioning.
|
|
|
73
86
|
## 1.9.0
|
|
74
87
|
|
|
75
88
|
- Release to support TS version 8.1.0.cl
|
|
76
|
-
- Please check the full list of changes [here](https://developers.thoughtspot.com/docs/?pageid=
|
|
89
|
+
- Please check the full list of changes [here](https://developers.thoughtspot.com/docs/?pageid=embed-sdk-changelog)
|
|
77
90
|
|
|
78
91
|
|
|
79
92
|
## 1.8.1
|
|
@@ -94,4 +107,4 @@ This project follows Semantic Versioning.
|
|
|
94
107
|
|
|
95
108
|
## 1.7.0 (and earlier)
|
|
96
109
|
|
|
97
|
-
- Please check the full list of changes [here](https://developers.thoughtspot.com/docs/?pageid=
|
|
110
|
+
- Please check the full list of changes [here](https://developers.thoughtspot.com/docs/?pageid=embed-sdk-changelog)
|
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
<br/>
|
|
6
6
|
|
|
7
|
-
# ThoughtSpot Visual Embed SDK <br/> [](https://coveralls.io/github/ts-blink/embed-sdk?branch=main)  [](https://www.jsdelivr.com/package/npm/@thoughtspot/visual-embed-sdk)  [](https://openbase.com/js/@thoughtspot/visual-embed-sdk?utm_source=embedded&utm_medium=badge&utm_campaign=rate-badge)
|
|
7
|
+
# ThoughtSpot Visual Embed SDK <br/> [](https://coveralls.io/github/ts-blink/embed-sdk?branch=main)  [](https://www.jsdelivr.com/package/npm/@thoughtspot/visual-embed-sdk)  [](https://openbase.com/js/@thoughtspot/visual-embed-sdk?utm_source=embedded&utm_medium=badge&utm_campaign=rate-badge) 
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
SDK to embed ThoughtSpot into your web apps.
|
package/dist/src/auth.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ import { EmbedConfig } from './types';
|
|
|
2
2
|
export declare let loggedInStatus: boolean;
|
|
3
3
|
export declare let samlAuthWindow: Window;
|
|
4
4
|
export declare let samlCompletionPromise: Promise<void>;
|
|
5
|
-
export declare let sessionInfo: any;
|
|
6
5
|
export declare const SSO_REDIRECTION_MARKER_GUID = "5e16222e-ef02-43e9-9fbd-24226bf3ce5b";
|
|
7
6
|
export declare const EndPoints: {
|
|
8
7
|
AUTH_VERIFICATION: string;
|
|
@@ -19,10 +18,27 @@ export declare enum AuthFailureType {
|
|
|
19
18
|
OTHER = "OTHER"
|
|
20
19
|
}
|
|
21
20
|
export declare enum AuthStatus {
|
|
21
|
+
/**
|
|
22
|
+
* Emits when the SDK fails to authenticate
|
|
23
|
+
*/
|
|
22
24
|
FAILURE = "FAILURE",
|
|
25
|
+
/**
|
|
26
|
+
* Emits when the SDK succeeds to authenticate
|
|
27
|
+
*/
|
|
28
|
+
SDK_SUCCESS = "SDK_SUCCESS",
|
|
29
|
+
/**
|
|
30
|
+
* Emits when the App sends a auth success
|
|
31
|
+
*/
|
|
23
32
|
SUCCESS = "SUCCESS",
|
|
33
|
+
/**
|
|
34
|
+
* Emits when there is a logout
|
|
35
|
+
*/
|
|
24
36
|
LOGOUT = "LOGOUT"
|
|
25
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* Return releaseVersion if available
|
|
40
|
+
*/
|
|
41
|
+
export declare function getReleaseVersion(): string;
|
|
26
42
|
/**
|
|
27
43
|
* Return sessionInfo if available else make a loggedIn check to fetch the sessionInfo
|
|
28
44
|
*/
|
package/dist/src/auth.spec.d.ts
CHANGED
package/dist/src/embed/base.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ import { AuthFailureType } from '../auth';
|
|
|
12
12
|
export declare let authPromise: Promise<boolean>;
|
|
13
13
|
export declare const getEmbedConfig: () => EmbedConfig;
|
|
14
14
|
export declare const getAuthPromise: () => Promise<boolean>;
|
|
15
|
+
export declare function notifyAuthSDKSuccess(): void;
|
|
15
16
|
export declare function notifyAuthSuccess(): void;
|
|
16
17
|
export declare function notifyAuthFailure(failureType: AuthFailureType): void;
|
|
17
18
|
export declare function notifyLogout(): void;
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* @summary Liveboard & visualization embed
|
|
9
9
|
* @author Ayon Ghosh <ayon.ghosh@thoughtspot.com>
|
|
10
10
|
*/
|
|
11
|
-
import { DOMSelector } from '../types';
|
|
11
|
+
import { DOMSelector, HostEvent } from '../types';
|
|
12
12
|
import { V1Embed, ViewConfig } from './ts-embed';
|
|
13
13
|
/**
|
|
14
14
|
* The configuration for the embedded Liveboard or visualization page view.
|
|
@@ -102,6 +102,12 @@ export declare class LiveboardEmbed extends V1Embed {
|
|
|
102
102
|
private updateIFrameHeight;
|
|
103
103
|
private embedIframeCenter;
|
|
104
104
|
private setIframeHeightForNonEmbedLiveboard;
|
|
105
|
+
/**
|
|
106
|
+
* Triggers an event to the embedded app
|
|
107
|
+
* @param messageType The event type
|
|
108
|
+
* @param data The payload to send with the message
|
|
109
|
+
*/
|
|
110
|
+
trigger(messageType: HostEvent, data?: any): Promise<any>;
|
|
105
111
|
/**
|
|
106
112
|
* Render an embedded ThoughtSpot Liveboard or visualization
|
|
107
113
|
* @param renderOptions An object specifying the Liveboard ID,
|
|
@@ -44,8 +44,13 @@ export interface SearchViewConfig extends ViewConfig {
|
|
|
44
44
|
* using raw answer data.
|
|
45
45
|
*/
|
|
46
46
|
hideResults?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* If set to true, expands all the data sources panel.
|
|
49
|
+
*/
|
|
50
|
+
expandAllDataSource?: boolean;
|
|
47
51
|
/**
|
|
48
52
|
* If set to true, the Search Assist feature is enabled.
|
|
53
|
+
* @version SDK: 1.13.0 | ThoughtSpot: 8.5.0.cl
|
|
49
54
|
*/
|
|
50
55
|
enableSearchAssist?: boolean;
|
|
51
56
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -29,7 +29,7 @@ export interface FrameParams {
|
|
|
29
29
|
* This parameters will be passed on the iframe
|
|
30
30
|
* as is.
|
|
31
31
|
*/
|
|
32
|
-
[key: string]: string | number | boolean;
|
|
32
|
+
[key: string]: string | number | boolean | undefined;
|
|
33
33
|
}
|
|
34
34
|
/**
|
|
35
35
|
* The configuration object for an embedded view.
|
|
@@ -142,6 +142,7 @@ export declare class TsEmbed {
|
|
|
142
142
|
* @default false
|
|
143
143
|
*/
|
|
144
144
|
private shouldEncodeUrlQueryParams;
|
|
145
|
+
private defaultHiddenActions;
|
|
145
146
|
constructor(domSelector: DOMSelector, viewConfig?: ViewConfig);
|
|
146
147
|
/**
|
|
147
148
|
* Gets a reference to the root DOM node where
|
package/dist/src/errors.d.ts
CHANGED
package/dist/src/types.d.ts
CHANGED
|
@@ -161,6 +161,12 @@ export interface EmbedConfig {
|
|
|
161
161
|
* @version SDK: 1.10.4 | ThoughtSpot: *
|
|
162
162
|
*/
|
|
163
163
|
detectCookieAccessSlow?: boolean;
|
|
164
|
+
/**
|
|
165
|
+
* Hide beta alert warning message for SearchEmbed.
|
|
166
|
+
*
|
|
167
|
+
* @version SDK: 1.12.0 | ThoughtSpot: *
|
|
168
|
+
*/
|
|
169
|
+
suppressSearchEmbedBetaWarning?: boolean;
|
|
164
170
|
}
|
|
165
171
|
/**
|
|
166
172
|
* MessagePayload: Embed event payload: message type, data and status (start/end)
|
|
@@ -575,7 +581,14 @@ export declare enum HostEvent {
|
|
|
575
581
|
* Gets the current pinboard content.
|
|
576
582
|
* @version SDK: 1.13.0 | ThoughtSpot: 8.5.0.cl
|
|
577
583
|
*/
|
|
578
|
-
getExportRequestForCurrentPinboard = "getExportRequestForCurrentPinboard"
|
|
584
|
+
getExportRequestForCurrentPinboard = "getExportRequestForCurrentPinboard",
|
|
585
|
+
/**
|
|
586
|
+
* Fires the pin action on an embedded object
|
|
587
|
+
* @param - incase of liveboard embed, takes in an object with vizId as a key
|
|
588
|
+
* can be left empty for search and viz embeds
|
|
589
|
+
* @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl
|
|
590
|
+
*/
|
|
591
|
+
Pin = "pin"
|
|
579
592
|
}
|
|
580
593
|
/**
|
|
581
594
|
* The different visual modes that the data sources panel within
|
|
@@ -769,7 +782,11 @@ export declare enum Action {
|
|
|
769
782
|
/**
|
|
770
783
|
* @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
|
|
771
784
|
*/
|
|
772
|
-
CreateMonitor = "createMonitor"
|
|
785
|
+
CreateMonitor = "createMonitor",
|
|
786
|
+
/**
|
|
787
|
+
* @version SDK: 1.11.1 | ThoughtSpot: 8.3.0.cl
|
|
788
|
+
*/
|
|
789
|
+
ReportError = "reportError"
|
|
773
790
|
}
|
|
774
791
|
export interface SessionInterface {
|
|
775
792
|
sessionId: string;
|
package/dist/src/utils.d.ts
CHANGED
|
@@ -42,3 +42,4 @@ export declare const embedEventStatus: {
|
|
|
42
42
|
export declare const setAttributes: (element: HTMLElement, attributes: {
|
|
43
43
|
[key: string]: string | number | boolean;
|
|
44
44
|
}) => void;
|
|
45
|
+
export declare const checkReleaseVersionInBeta: (releaseVersion: string, suppressBetaWarning: boolean) => boolean;
|
package/dist/tsembed.es.js
CHANGED
|
@@ -121,6 +121,17 @@ const setAttributes = (element, attributes) => {
|
|
|
121
121
|
Object.keys(attributes).forEach((key) => {
|
|
122
122
|
element.setAttribute(key, attributes[key].toString());
|
|
123
123
|
});
|
|
124
|
+
};
|
|
125
|
+
const isCloudRelease = (version) => version.endsWith('.cl');
|
|
126
|
+
/* For Search Embed: ReleaseVersionInBeta */
|
|
127
|
+
const checkReleaseVersionInBeta = (releaseVersion, suppressBetaWarning) => {
|
|
128
|
+
if (releaseVersion !== '' && !isCloudRelease(releaseVersion)) {
|
|
129
|
+
const splittedReleaseVersion = releaseVersion.split('.');
|
|
130
|
+
const majorVersion = Number(splittedReleaseVersion[0]);
|
|
131
|
+
const isBetaVersion = majorVersion < 8;
|
|
132
|
+
return !suppressBetaWarning && isBetaVersion;
|
|
133
|
+
}
|
|
134
|
+
return false;
|
|
124
135
|
};
|
|
125
136
|
|
|
126
137
|
/**
|
|
@@ -534,6 +545,13 @@ var HostEvent;
|
|
|
534
545
|
* @version SDK: 1.13.0 | ThoughtSpot: 8.5.0.cl
|
|
535
546
|
*/
|
|
536
547
|
HostEvent["getExportRequestForCurrentPinboard"] = "getExportRequestForCurrentPinboard";
|
|
548
|
+
/**
|
|
549
|
+
* Fires the pin action on an embedded object
|
|
550
|
+
* @param - incase of liveboard embed, takes in an object with vizId as a key
|
|
551
|
+
* can be left empty for search and viz embeds
|
|
552
|
+
* @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl
|
|
553
|
+
*/
|
|
554
|
+
HostEvent["Pin"] = "pin";
|
|
537
555
|
})(HostEvent || (HostEvent = {}));
|
|
538
556
|
/**
|
|
539
557
|
* The different visual modes that the data sources panel within
|
|
@@ -734,6 +752,10 @@ var Action;
|
|
|
734
752
|
* @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
|
|
735
753
|
*/
|
|
736
754
|
Action["CreateMonitor"] = "createMonitor";
|
|
755
|
+
/**
|
|
756
|
+
* @version SDK: 1.11.1 | ThoughtSpot: 8.3.0.cl
|
|
757
|
+
*/
|
|
758
|
+
Action["ReportError"] = "reportError";
|
|
737
759
|
})(Action || (Action = {}));
|
|
738
760
|
// eslint-disable-next-line no-shadow
|
|
739
761
|
var OperationType;
|
|
@@ -746,6 +768,7 @@ const ERROR_MESSAGE = {
|
|
|
746
768
|
INVALID_THOUGHTSPOT_HOST: 'Error parsing ThoughtSpot host. Please provide a valid URL.',
|
|
747
769
|
LIVEBOARD_VIZ_ID_VALIDATION: 'Please provide either liveboardId or pinboardId',
|
|
748
770
|
TRIGGER_TIMED_OUT: 'Trigger timedout in getting response',
|
|
771
|
+
SEARCHEMBED_BETA_WRANING_MESSAGE: 'Search Embed is in Beta in this release.',
|
|
749
772
|
};
|
|
750
773
|
|
|
751
774
|
/**
|
|
@@ -7233,8 +7256,8 @@ let loggedInStatus = false;
|
|
|
7233
7256
|
let samlAuthWindow = null;
|
|
7234
7257
|
// eslint-disable-next-line import/no-mutable-exports
|
|
7235
7258
|
let samlCompletionPromise = null;
|
|
7236
|
-
// eslint-disable-next-line import/no-mutable-exports
|
|
7237
7259
|
let sessionInfo = null;
|
|
7260
|
+
let releaseVersion = '';
|
|
7238
7261
|
const SSO_REDIRECTION_MARKER_GUID = '5e16222e-ef02-43e9-9fbd-24226bf3ce5b';
|
|
7239
7262
|
const EndPoints = {
|
|
7240
7263
|
AUTH_VERIFICATION: '/callosum/v1/session/info',
|
|
@@ -7253,8 +7276,21 @@ var AuthFailureType;
|
|
|
7253
7276
|
})(AuthFailureType || (AuthFailureType = {}));
|
|
7254
7277
|
var AuthStatus;
|
|
7255
7278
|
(function (AuthStatus) {
|
|
7279
|
+
/**
|
|
7280
|
+
* Emits when the SDK fails to authenticate
|
|
7281
|
+
*/
|
|
7256
7282
|
AuthStatus["FAILURE"] = "FAILURE";
|
|
7283
|
+
/**
|
|
7284
|
+
* Emits when the SDK succeeds to authenticate
|
|
7285
|
+
*/
|
|
7286
|
+
AuthStatus["SDK_SUCCESS"] = "SDK_SUCCESS";
|
|
7287
|
+
/**
|
|
7288
|
+
* Emits when the App sends a auth success
|
|
7289
|
+
*/
|
|
7257
7290
|
AuthStatus["SUCCESS"] = "SUCCESS";
|
|
7291
|
+
/**
|
|
7292
|
+
* Emits when there is a logout
|
|
7293
|
+
*/
|
|
7258
7294
|
AuthStatus["LOGOUT"] = "LOGOUT";
|
|
7259
7295
|
})(AuthStatus || (AuthStatus = {}));
|
|
7260
7296
|
/**
|
|
@@ -7266,12 +7302,20 @@ async function isLoggedIn(thoughtSpotHost) {
|
|
|
7266
7302
|
let response = null;
|
|
7267
7303
|
try {
|
|
7268
7304
|
response = await fetchSessionInfoService(authVerificationUrl);
|
|
7305
|
+
const sessionInfoResp = await response.json();
|
|
7306
|
+
releaseVersion = sessionInfoResp.releaseVersion;
|
|
7269
7307
|
}
|
|
7270
7308
|
catch (e) {
|
|
7271
7309
|
return false;
|
|
7272
7310
|
}
|
|
7273
7311
|
return response.status === 200;
|
|
7274
7312
|
}
|
|
7313
|
+
/**
|
|
7314
|
+
* Return releaseVersion if available
|
|
7315
|
+
*/
|
|
7316
|
+
function getReleaseVersion() {
|
|
7317
|
+
return releaseVersion;
|
|
7318
|
+
}
|
|
7275
7319
|
function initSession(sessionDetails) {
|
|
7276
7320
|
sessionInfo = sessionDetails;
|
|
7277
7321
|
initMixpanel(sessionInfo);
|
|
@@ -7470,6 +7514,13 @@ let authPromise;
|
|
|
7470
7514
|
const getEmbedConfig = () => config;
|
|
7471
7515
|
const getAuthPromise = () => authPromise;
|
|
7472
7516
|
let authEE;
|
|
7517
|
+
function notifyAuthSDKSuccess() {
|
|
7518
|
+
if (!authEE) {
|
|
7519
|
+
console.error('SDK not initialized');
|
|
7520
|
+
return;
|
|
7521
|
+
}
|
|
7522
|
+
authEE.emit(AuthStatus.SDK_SUCCESS);
|
|
7523
|
+
}
|
|
7473
7524
|
function notifyAuthSuccess() {
|
|
7474
7525
|
if (!authEE) {
|
|
7475
7526
|
console.error('SDK not initialized');
|
|
@@ -7500,6 +7551,9 @@ const handleAuth = () => {
|
|
|
7500
7551
|
if (!isLoggedIn) {
|
|
7501
7552
|
notifyAuthFailure(AuthFailureType.SDK);
|
|
7502
7553
|
}
|
|
7554
|
+
else {
|
|
7555
|
+
notifyAuthSDKSuccess();
|
|
7556
|
+
}
|
|
7503
7557
|
}, () => {
|
|
7504
7558
|
notifyAuthFailure(AuthFailureType.SDK);
|
|
7505
7559
|
});
|
|
@@ -7763,7 +7817,7 @@ function processTrigger(iFrame, messageType, thoughtSpotHost, data) {
|
|
|
7763
7817
|
});
|
|
7764
7818
|
}
|
|
7765
7819
|
|
|
7766
|
-
var name="@thoughtspot/visual-embed-sdk";var version="1.12.
|
|
7820
|
+
var name="@thoughtspot/visual-embed-sdk";var version="1.12.2";var description="ThoughtSpot Embed SDK";var module="lib/src/index.js";var main="dist/tsembed.js";var types="lib/src/index.d.ts";var files=["dist/**","lib/**","src/**"];var exports={".":"./lib/src/index.js","./react":"./lib/src/react/index.js"};var scripts={lint:"eslint 'src/**'","lint:fix":"eslint 'src/**/*.*' --fix",tsc:"tsc -p . --incremental false",start:"gatsby develop","build:gatsby":"npm run clean:gatsby && gatsby build --prefix-paths","build:gatsby:noprefix":"npm run clean:gatsby && gatsby build","serve:gatsby":"gatsby serve","clean:gatsby":"gatsby clean","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts",build:"rollup -c",watch:"rollup -cw","docs-cmd":"node scripts/gatsby-commands.js",docgen:"typedoc --tsconfig tsconfig.json --theme typedoc-theme","test-sdk":"jest -c jest.config.sdk.js","test-docs":"jest -c jest.config.docs.js",test:"npm run test-sdk && npm run test-docs && npx istanbul-merge --out ./coverage/coverage.json ./coverage/docs/coverage-final.json ./coverage/sdk/coverage-final.json && npx istanbul report --include ./coverage/coverage.json --dir ./coverage lcov",posttest:"cat ./coverage/sdk/lcov.info | coveralls",prepublishOnly:"npm run test; npm run tsc; npm run bundle-dts; npm run build","publish-dev":"npm publish --tag dev","publish-prod":"npm publish --tag latest"};var peerDependencies={react:"> 16.8.0","react-dom":"> 16.8.0"};var dependencies={algoliasearch:"^4.10.5",classnames:"^2.3.1",eventemitter3:"^4.0.7","html-react-parser":"^1.4.12","mixpanel-browser":"^2.45.0","use-deep-compare-effect":"^1.8.1"};var devDependencies={"@mdx-js/mdx":"^1.6.22","@mdx-js/react":"^1.6.22","@react-icons/all-files":"^4.1.0","@rollup/plugin-commonjs":"^18.0.0","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^11.2.1","@testing-library/dom":"^7.31.0","@testing-library/jest-dom":"^5.14.1","@testing-library/react":"^11.2.7","@testing-library/user-event":"^13.1.8","@types/jest":"^22.2.3","@types/mixpanel-browser":"^2.35.6","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0",asciidoctor:"^2.2.1","babel-jest":"^26.6.3","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1",coveralls:"^3.1.0","dts-bundle":"0.7.3",eslint:"^7.12.1","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.15.0","eslint-import-resolver-typescript":"^2.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react-hooks":"^4.2.0","fs-extra":"^10.0.0",gatsby:"3.1.0","gatsby-plugin-algolia":"^0.22.2","gatsby-plugin-catch-links":"^3.1.0","gatsby-plugin-env-variables":"^2.1.0","gatsby-plugin-intl":"^0.3.3","gatsby-plugin-manifest":"^3.2.0","gatsby-plugin-output":"^0.1.3","gatsby-plugin-sass":"4.1.0","gatsby-plugin-sitemap":"^4.10.0","gatsby-source-filesystem":"3.1.0","gatsby-transformer-asciidoc":"2.1.0","gatsby-transformer-rehype":"2.0.0","gh-pages":"^3.1.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^1.1.1",jest:"^26.6.3","jest-puppeteer":"^4.4.0",jsdom:"^17.0.0","node-sass":"^4.0.0",prettier:"2.1.2",puppeteer:"^7.0.1",react:"^16.14.0","react-dom":"^16.14.0","react-resizable":"^1.11.0","react-resize-detector":"^6.6.0","react-test-renderer":"^17.0.2","react-use-flexsearch":"^0.1.1",rollup:"2.30.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^26.5.5","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-neo-theme":"^1.1.0","typedoc-plugin-toc-group":"0.0.5",typescript:"^4.1.0","url-search-params-polyfill":"^8.1.0",util:"^0.12.4"};var author="ThoughtSpot";var email="support@thoughtspot.com";var license="ThoughtSpot Development Tools End User License Agreement";var directories={lib:"lib"};var repository={type:"git",url:"git+https://github.com/thoughtspot/visual-embed-sdk.git"};var publishConfig={registry:"https://registry.npmjs.org"};var keywords=["thoughtspot","everywhere","embed","sdk","analytics"];var bugs={url:"https://github.com/thoughtspot/visual-embed-sdk/issues"};var homepage="https://github.com/thoughtspot/visual-embed-sdk#readme";var globals={window:{}};var pkgInfo = {name:name,version:version,description:description,module:module,main:main,types:types,files:files,exports:exports,scripts:scripts,peerDependencies:peerDependencies,dependencies:dependencies,devDependencies:devDependencies,author:author,email:email,license:license,directories:directories,repository:repository,publishConfig:publishConfig,keywords:keywords,bugs:bugs,homepage:homepage,globals:globals};
|
|
7767
7821
|
|
|
7768
7822
|
/**
|
|
7769
7823
|
* Copyright (c) 2022
|
|
@@ -7801,6 +7855,7 @@ class TsEmbed {
|
|
|
7801
7855
|
* @default false
|
|
7802
7856
|
*/
|
|
7803
7857
|
this.shouldEncodeUrlQueryParams = false;
|
|
7858
|
+
this.defaultHiddenActions = [Action.ReportError];
|
|
7804
7859
|
this.el = this.getDOMNode(domSelector);
|
|
7805
7860
|
// TODO: handle error
|
|
7806
7861
|
this.embedConfig = getEmbedConfig();
|
|
@@ -7837,7 +7892,7 @@ class TsEmbed {
|
|
|
7837
7892
|
error,
|
|
7838
7893
|
});
|
|
7839
7894
|
// Log error
|
|
7840
|
-
console.
|
|
7895
|
+
console.error(error);
|
|
7841
7896
|
}
|
|
7842
7897
|
/**
|
|
7843
7898
|
* Extracts the type field from the event payload
|
|
@@ -7943,9 +7998,10 @@ class TsEmbed {
|
|
|
7943
7998
|
if (disabledActionReason) {
|
|
7944
7999
|
queryParams[Param.DisableActionReason] = disabledActionReason;
|
|
7945
8000
|
}
|
|
7946
|
-
|
|
7947
|
-
|
|
7948
|
-
|
|
8001
|
+
queryParams[Param.HideActions] = [
|
|
8002
|
+
...this.defaultHiddenActions,
|
|
8003
|
+
...(hiddenActions !== null && hiddenActions !== void 0 ? hiddenActions : []),
|
|
8004
|
+
];
|
|
7949
8005
|
if (Array.isArray(visibleActions)) {
|
|
7950
8006
|
queryParams[Param.VisibleActions] = visibleActions;
|
|
7951
8007
|
}
|
|
@@ -8506,6 +8562,18 @@ class LiveboardEmbed extends V1Embed {
|
|
|
8506
8562
|
url = `${url}${tsPostHashParams}`;
|
|
8507
8563
|
return url;
|
|
8508
8564
|
}
|
|
8565
|
+
/**
|
|
8566
|
+
* Triggers an event to the embedded app
|
|
8567
|
+
* @param messageType The event type
|
|
8568
|
+
* @param data The payload to send with the message
|
|
8569
|
+
*/
|
|
8570
|
+
trigger(messageType, data = {}) {
|
|
8571
|
+
const dataWithVizId = data;
|
|
8572
|
+
if (this.viewConfig.vizId) {
|
|
8573
|
+
dataWithVizId.vizId = this.viewConfig.vizId;
|
|
8574
|
+
}
|
|
8575
|
+
return super.trigger(messageType, dataWithVizId);
|
|
8576
|
+
}
|
|
8509
8577
|
/**
|
|
8510
8578
|
* Render an embedded ThoughtSpot Liveboard or visualization
|
|
8511
8579
|
* @param renderOptions An object specifying the Liveboard ID,
|
|
@@ -8582,7 +8650,7 @@ class SearchEmbed extends TsEmbed {
|
|
|
8582
8650
|
*/
|
|
8583
8651
|
getIFrameSrc(answerId, dataSources) {
|
|
8584
8652
|
var _a;
|
|
8585
|
-
const { hideResults, enableSearchAssist, forceTable, searchOptions, } = this.viewConfig;
|
|
8653
|
+
const { hideResults, expandAllDataSource, enableSearchAssist, forceTable, searchOptions, } = this.viewConfig;
|
|
8586
8654
|
const answerPath = answerId ? `saved-answer/${answerId}` : 'answer';
|
|
8587
8655
|
const queryParams = this.getBaseQueryParams();
|
|
8588
8656
|
queryParams[Param.HideActions] = [
|
|
@@ -8626,6 +8694,11 @@ class SearchEmbed extends TsEmbed {
|
|
|
8626
8694
|
const { answerId, dataSources } = this.viewConfig;
|
|
8627
8695
|
const src = this.getIFrameSrc(answerId, dataSources);
|
|
8628
8696
|
this.renderIFrame(src, this.viewConfig.frameParams);
|
|
8697
|
+
getAuthPromise().then(() => {
|
|
8698
|
+
if (checkReleaseVersionInBeta(getReleaseVersion(), getEmbedConfig().suppressSearchEmbedBetaWarning)) {
|
|
8699
|
+
alert(ERROR_MESSAGE.SEARCHEMBED_BETA_WRANING_MESSAGE);
|
|
8700
|
+
}
|
|
8701
|
+
});
|
|
8629
8702
|
return this;
|
|
8630
8703
|
}
|
|
8631
8704
|
}
|