@thoughtspot/visual-embed-sdk 1.19.0-alpha.9 → 1.20.0-alpha.0
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/dist/src/auth.d.ts +9 -2
- package/dist/src/auth.d.ts.map +1 -1
- package/dist/src/auth.spec.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +4 -0
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/types.d.ts +22 -3
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/processData.d.ts.map +1 -1
- package/dist/tsembed.es.js +87 -25
- package/dist/tsembed.js +87 -24
- package/lib/package.json +4 -3
- package/lib/src/auth.d.ts +9 -2
- package/lib/src/auth.d.ts.map +1 -1
- package/lib/src/auth.js +36 -12
- package/lib/src/auth.js.map +1 -1
- package/lib/src/auth.spec.d.ts.map +1 -1
- package/lib/src/auth.spec.js +23 -1
- package/lib/src/auth.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +4 -0
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +33 -3
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +126 -2
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/index.d.ts +2 -2
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/index.js +2 -2
- package/lib/src/index.js.map +1 -1
- package/lib/src/types.d.ts +22 -3
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +14 -1
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/processData.d.ts.map +1 -1
- package/lib/src/utils/processData.js +1 -11
- package/lib/src/utils/processData.js.map +1 -1
- package/lib/src/utils/processData.spec.js +0 -24
- package/lib/src/utils/processData.spec.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +33 -7
- package/package.json +4 -3
- package/src/auth.spec.ts +31 -2
- package/src/auth.ts +44 -12
- package/src/embed/ts-embed.spec.ts +151 -2
- package/src/embed/ts-embed.ts +39 -2
- package/src/index.ts +2 -1
- package/src/types.ts +20 -1
- package/src/utils/processData.spec.ts +0 -34
- package/src/utils/processData.ts +0 -12
package/lib/src/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;GAGG;AACH,qCAAqC;AACrC,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processData.d.ts","sourceRoot":"","sources":["../../../src/utils/processData.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"processData.d.ts","sourceRoot":"","sources":["../../../src/utils/processData.ts"],"names":[],"mappings":"AAQA,OAAO,EAAY,UAAU,EAAiB,MAAM,UAAU,CAAC;AAG/D,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,OAoBlE;AAoDD,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,UAAU,EAChB,CAAC,EAAE,GAAG,EACN,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,OAAO,GACrB,GAAG,CAeL"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { disableAutoLogin, getEmbedConfig,
|
|
1
|
+
import { disableAutoLogin, getEmbedConfig, notifyAuthFailure, notifyAuthSuccess, notifyLogout, } from '../embed/base';
|
|
2
2
|
import { AuthFailureType, initSession } from '../auth';
|
|
3
3
|
import { AuthType, EmbedEvent, OperationType } from '../types';
|
|
4
4
|
import { getAnswerServiceInstance } from './answerService';
|
|
@@ -30,14 +30,6 @@ function processAuthInit(e) {
|
|
|
30
30
|
},
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
|
-
function processAuthExpire(e) {
|
|
34
|
-
const { autoLogin = false } = getEmbedConfig(); // Set default to false
|
|
35
|
-
if (autoLogin) {
|
|
36
|
-
handleAuth();
|
|
37
|
-
}
|
|
38
|
-
notifyAuthFailure(AuthFailureType.EXPIRY);
|
|
39
|
-
return e;
|
|
40
|
-
}
|
|
41
33
|
function processNoCookieAccess(e, containerEl) {
|
|
42
34
|
const { loginFailedMessage, suppressNoCookieAccessAlert, } = getEmbedConfig();
|
|
43
35
|
if (!suppressNoCookieAccessAlert) {
|
|
@@ -72,8 +64,6 @@ export function processEventData(type, e, thoughtSpotHost, containerEl) {
|
|
|
72
64
|
return processCustomAction(e, thoughtSpotHost);
|
|
73
65
|
case EmbedEvent.AuthInit:
|
|
74
66
|
return processAuthInit(e);
|
|
75
|
-
case EmbedEvent.AuthExpire:
|
|
76
|
-
return processAuthExpire(e);
|
|
77
67
|
case EmbedEvent.NoCookieAccess:
|
|
78
68
|
return processNoCookieAccess(e, containerEl);
|
|
79
69
|
case EmbedEvent.AuthFailure:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processData.js","sourceRoot":"","sources":["../../../src/utils/processData.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,
|
|
1
|
+
{"version":3,"file":"processData.js","sourceRoot":"","sources":["../../../src/utils/processData.ts"],"names":[],"mappings":"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"}
|
|
@@ -57,30 +57,6 @@ describe('Unit test for process data', () => {
|
|
|
57
57
|
expect(auth.initSession).toBeCalledWith(sessionInfo);
|
|
58
58
|
expect(base.notifyAuthSuccess).toBeCalled();
|
|
59
59
|
});
|
|
60
|
-
test('AuthExpire autoLogin false', () => {
|
|
61
|
-
const e = { type: EmbedEvent.AuthExpire };
|
|
62
|
-
jest.spyOn(base, 'notifyAuthFailure');
|
|
63
|
-
jest.spyOn(base, 'handleAuth');
|
|
64
|
-
jest.spyOn(base, 'getEmbedConfig').mockReturnValue({});
|
|
65
|
-
expect(processDataInstance.processEventData(e.type, e, '', null)).toEqual({
|
|
66
|
-
type: e.type,
|
|
67
|
-
});
|
|
68
|
-
expect(base.notifyAuthFailure).toBeCalledWith(auth.AuthFailureType.EXPIRY);
|
|
69
|
-
expect(base.handleAuth).not.toHaveBeenCalled();
|
|
70
|
-
});
|
|
71
|
-
test('AuthExpire autoLogin true', () => {
|
|
72
|
-
const e = { type: EmbedEvent.AuthExpire };
|
|
73
|
-
jest.spyOn(base, 'notifyAuthFailure');
|
|
74
|
-
jest.spyOn(base, 'handleAuth').mockResolvedValue(true);
|
|
75
|
-
jest.spyOn(base, 'getEmbedConfig').mockReturnValue({
|
|
76
|
-
autoLogin: true,
|
|
77
|
-
});
|
|
78
|
-
expect(processDataInstance.processEventData(e.type, e, '', null)).toEqual({
|
|
79
|
-
type: e.type,
|
|
80
|
-
});
|
|
81
|
-
expect(base.notifyAuthFailure).toBeCalledWith(auth.AuthFailureType.EXPIRY);
|
|
82
|
-
expect(base.handleAuth).toBeCalled();
|
|
83
|
-
});
|
|
84
60
|
test('NoCookieAccess no suppress alert', () => {
|
|
85
61
|
const e = { type: EmbedEvent.NoCookieAccess };
|
|
86
62
|
jest.spyOn(base, 'notifyAuthFailure');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processData.spec.js","sourceRoot":"","sources":["../../../src/utils/processData.spec.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"processData.spec.js","sourceRoot":"","sources":["../../../src/utils/processData.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,9 +17,9 @@ declare module '@thoughtspot/visual-embed-sdk' {
|
|
|
17
17
|
import { PinboardEmbed, LiveboardViewConfig, LiveboardEmbed } from '@thoughtspot/visual-embed-sdk/embed/liveboard';
|
|
18
18
|
import { SearchEmbed, SearchViewConfig } from '@thoughtspot/visual-embed-sdk/embed/search';
|
|
19
19
|
import { SearchBarEmbed, SearchBarViewConfig } from '@thoughtspot/visual-embed-sdk/embed/search-bar';
|
|
20
|
-
import { AuthFailureType, AuthStatus, AuthEvent } from '@thoughtspot/visual-embed-sdk/auth';
|
|
20
|
+
import { AuthFailureType, AuthStatus, AuthEvent, getSessionInfo } from '@thoughtspot/visual-embed-sdk/auth';
|
|
21
21
|
import { AuthType, RuntimeFilter, RuntimeFilterOp, EmbedEvent, HostEvent, DataSourceVisualMode, Action, EmbedConfig, PrefetchFeatures } from '@thoughtspot/visual-embed-sdk/types';
|
|
22
|
-
export { init, logout, prefetch, getEmbedConfig as getInitConfig, SearchEmbed, SearchBarEmbed, PinboardEmbed, LiveboardEmbed, AppEmbed, AuthFailureType, AuthStatus, AuthEvent, Page, AuthType, RuntimeFilter, RuntimeFilterOp, EmbedEvent, HostEvent, DataSourceVisualMode, Action, EmbedConfig, SearchViewConfig, SearchBarViewConfig, LiveboardViewConfig, AppViewConfig, PrefetchFeatures, };
|
|
22
|
+
export { init, logout, prefetch, getEmbedConfig as getInitConfig, getSessionInfo, SearchEmbed, SearchBarEmbed, PinboardEmbed, LiveboardEmbed, AppEmbed, AuthFailureType, AuthStatus, AuthEvent, Page, AuthType, RuntimeFilter, RuntimeFilterOp, EmbedEvent, HostEvent, DataSourceVisualMode, Action, EmbedConfig, SearchViewConfig, SearchBarViewConfig, LiveboardViewConfig, AppViewConfig, PrefetchFeatures, };
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
declare module '@thoughtspot/visual-embed-sdk/embed/app' {
|
|
@@ -518,15 +518,22 @@ declare module '@thoughtspot/visual-embed-sdk/auth' {
|
|
|
518
518
|
*/
|
|
519
519
|
export function getReleaseVersion(): string;
|
|
520
520
|
/**
|
|
521
|
-
* Return
|
|
521
|
+
* Return a promise that resolves with the session info when authentication is
|
|
522
|
+
* successful. And info is available.
|
|
522
523
|
*/
|
|
523
|
-
export function getSessionInfo(): any
|
|
524
|
+
export function getSessionInfo(): Promise<any>;
|
|
524
525
|
export function initSession(sessionDetails: any): void;
|
|
526
|
+
export const getAuthenticaionToken: (embedConfig: EmbedConfig) => Promise<any>;
|
|
525
527
|
/**
|
|
526
528
|
* Perform token based authentication
|
|
527
529
|
* @param embedConfig The embed configuration
|
|
528
530
|
*/
|
|
529
531
|
export const doTokenAuth: (embedConfig: EmbedConfig) => Promise<boolean>;
|
|
532
|
+
/**
|
|
533
|
+
* Validate embedConfig parameters required for cookielessTokenAuth
|
|
534
|
+
* @param embedConfig The embed configuration
|
|
535
|
+
*/
|
|
536
|
+
export const doCookielessTokenAuth: (embedConfig: EmbedConfig) => Promise<boolean>;
|
|
530
537
|
/**
|
|
531
538
|
* Perform basic authentication to the ThoughtSpot cluster using the cluster
|
|
532
539
|
* credentials.
|
|
@@ -601,11 +608,18 @@ declare module '@thoughtspot/visual-embed-sdk/types' {
|
|
|
601
608
|
*/
|
|
602
609
|
AuthServer = "AuthServer",
|
|
603
610
|
/**
|
|
604
|
-
* Trusted authentication server, Use
|
|
611
|
+
* Trusted authentication server, Use your own authentication server
|
|
605
612
|
* which returns a bearer token, generated using the secret_key obtained from
|
|
606
613
|
* ThoughtSpot.
|
|
607
614
|
*/
|
|
608
615
|
TrustedAuthToken = "AuthServer",
|
|
616
|
+
/**
|
|
617
|
+
* Trusted authentication server Cookieless, Use you own authentication server
|
|
618
|
+
* which returns a bearer token, generated using the secret_key obtained from
|
|
619
|
+
* ThoughtSpot. This uses a cookieless authentication approach, recommended
|
|
620
|
+
* to by pass third-party cookie-blocking restriction implemented by some browsers
|
|
621
|
+
*/
|
|
622
|
+
TrustedAuthTokenCookieless = "AuthServerCookieless",
|
|
609
623
|
/**
|
|
610
624
|
* Use the ThoughtSpot login API to authenticate to the cluster directly.
|
|
611
625
|
*
|
|
@@ -906,6 +920,12 @@ declare module '@thoughtspot/visual-embed-sdk/types' {
|
|
|
906
920
|
* @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl
|
|
907
921
|
*/
|
|
908
922
|
linkOverride?: boolean;
|
|
923
|
+
/**
|
|
924
|
+
* flag to enable insert into slides action
|
|
925
|
+
* @hidden
|
|
926
|
+
* @private
|
|
927
|
+
*/
|
|
928
|
+
insertInToSlide?: boolean;
|
|
909
929
|
}
|
|
910
930
|
/**
|
|
911
931
|
* MessagePayload: Embed event payload: message type, data and status (start/end)
|
|
@@ -1734,8 +1754,10 @@ declare module '@thoughtspot/visual-embed-sdk/types' {
|
|
|
1734
1754
|
ForceSAMLAutoRedirect = "forceSAMLAutoRedirect",
|
|
1735
1755
|
AuthType = "authType",
|
|
1736
1756
|
IconSpriteUrl = "iconSprite",
|
|
1757
|
+
cookieless = "cookieless",
|
|
1737
1758
|
ContextMenuTrigger = "isContextMenuEnabledOnLeftClick",
|
|
1738
|
-
LinkOverride = "linkOverride"
|
|
1759
|
+
LinkOverride = "linkOverride",
|
|
1760
|
+
ShowInsertToSlide = "insertInToSlide"
|
|
1739
1761
|
}
|
|
1740
1762
|
/**
|
|
1741
1763
|
* The list of actions that can be performed on visual ThoughtSpot
|
|
@@ -1938,7 +1960,11 @@ declare module '@thoughtspot/visual-embed-sdk/types' {
|
|
|
1938
1960
|
/**
|
|
1939
1961
|
* @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl
|
|
1940
1962
|
*/
|
|
1941
|
-
AxisMenuRemove = "axisMenuRemove"
|
|
1963
|
+
AxisMenuRemove = "axisMenuRemove",
|
|
1964
|
+
/**
|
|
1965
|
+
* @hidden
|
|
1966
|
+
*/
|
|
1967
|
+
InsertInToSlide = "insertInToSlide"
|
|
1942
1968
|
}
|
|
1943
1969
|
export interface SessionInterface {
|
|
1944
1970
|
sessionId: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thoughtspot/visual-embed-sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.20.0-alpha.0",
|
|
4
4
|
"description": "ThoughtSpot Embed SDK",
|
|
5
5
|
"module": "lib/src/index.js",
|
|
6
6
|
"main": "dist/tsembed.js",
|
|
@@ -55,6 +55,7 @@
|
|
|
55
55
|
"dependencies": {
|
|
56
56
|
"algoliasearch": "^4.10.5",
|
|
57
57
|
"classnames": "^2.3.1",
|
|
58
|
+
"dompurify": "^2.3.4",
|
|
58
59
|
"eventemitter3": "^4.0.7",
|
|
59
60
|
"gatsby-plugin-vercel": "^1.0.3",
|
|
60
61
|
"html-react-parser": "^1.4.12",
|
|
@@ -99,7 +100,7 @@
|
|
|
99
100
|
"gatsby-plugin-intl": "^0.3.3",
|
|
100
101
|
"gatsby-plugin-manifest": "^3.2.0",
|
|
101
102
|
"gatsby-plugin-output": "^0.1.3",
|
|
102
|
-
"gatsby-plugin-sass": "
|
|
103
|
+
"gatsby-plugin-sass": "6.7.0",
|
|
103
104
|
"gatsby-plugin-sitemap": "^4.10.0",
|
|
104
105
|
"gatsby-source-filesystem": "3.1.0",
|
|
105
106
|
"gatsby-transformer-asciidoc": "2.1.0",
|
|
@@ -112,7 +113,7 @@
|
|
|
112
113
|
"jest": "^26.6.3",
|
|
113
114
|
"jest-puppeteer": "^4.4.0",
|
|
114
115
|
"jsdom": "^17.0.0",
|
|
115
|
-
"node-sass": "^
|
|
116
|
+
"node-sass": "^8.0.0",
|
|
116
117
|
"prettier": "2.1.2",
|
|
117
118
|
"puppeteer": "^7.0.1",
|
|
118
119
|
"react": "^16.14.0",
|
package/src/auth.spec.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as authInstance from './auth';
|
|
2
2
|
import * as authService from './utils/authService';
|
|
3
3
|
import * as checkReleaseVersionInBetaInstance from './utils';
|
|
4
|
-
import { AuthType,
|
|
4
|
+
import { AuthType, EmbedEvent } from './types';
|
|
5
5
|
import { executeAfterWait } from './test/test-utils';
|
|
6
6
|
|
|
7
7
|
const thoughtSpotHost = 'http://localhost:3000';
|
|
@@ -68,6 +68,13 @@ export const embedConfig: any = {
|
|
|
68
68
|
getAuthToken: null,
|
|
69
69
|
authType: AuthType.AuthServer,
|
|
70
70
|
},
|
|
71
|
+
authServerCookielessFailure: {
|
|
72
|
+
thoughtSpotHost,
|
|
73
|
+
username,
|
|
74
|
+
authEndpoint: '',
|
|
75
|
+
getAuthToken: null,
|
|
76
|
+
authType: AuthType.TrustedAuthTokenCookieless,
|
|
77
|
+
},
|
|
71
78
|
basicAuthSuccess: {
|
|
72
79
|
thoughtSpotHost,
|
|
73
80
|
username,
|
|
@@ -108,7 +115,20 @@ describe('Unit test for auth', () => {
|
|
|
108
115
|
|
|
109
116
|
test('when session info giving response', async () => {
|
|
110
117
|
authInstance.initSession(mockSessionInfo);
|
|
111
|
-
|
|
118
|
+
const sessionInfo = await authInstance.getSessionInfo();
|
|
119
|
+
expect(sessionInfo).toStrictEqual(mockSessionInfo);
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
test('doCookielessTokenAuth: when authEndpoint and getAuthToken are not there, it throw error', async () => {
|
|
123
|
+
try {
|
|
124
|
+
await authInstance.doCookielessTokenAuth(
|
|
125
|
+
embedConfig.doTokenAuthFailureWithoutAuthEndPoint,
|
|
126
|
+
);
|
|
127
|
+
} catch (e) {
|
|
128
|
+
expect(e.message).toBe(
|
|
129
|
+
'Either auth endpoint or getAuthToken function must be provided',
|
|
130
|
+
);
|
|
131
|
+
}
|
|
112
132
|
});
|
|
113
133
|
|
|
114
134
|
test('doTokenAuth: when authEndpoint and getAuthToken are not there, it throw error', async () => {
|
|
@@ -457,6 +477,15 @@ describe('Unit test for auth', () => {
|
|
|
457
477
|
expect(authInstance.doTokenAuth).toBeCalled();
|
|
458
478
|
});
|
|
459
479
|
|
|
480
|
+
it('authenticate: when authType is AuthServerCookieless', async () => {
|
|
481
|
+
spyOn(authInstance, 'doCookielessTokenAuth');
|
|
482
|
+
await authInstance.authenticate(
|
|
483
|
+
embedConfig.authServerCookielessFailure,
|
|
484
|
+
);
|
|
485
|
+
expect(window.location.hash).toBe('');
|
|
486
|
+
expect(authInstance.doCookielessTokenAuth).toBeCalled();
|
|
487
|
+
});
|
|
488
|
+
|
|
460
489
|
it('authenticate: when authType is Basic', async () => {
|
|
461
490
|
jest.spyOn(authInstance, 'doBasicAuth');
|
|
462
491
|
await authInstance.authenticate(embedConfig.basicAuthSuccess);
|
package/src/auth.ts
CHANGED
|
@@ -19,6 +19,10 @@ export let samlAuthWindow: Window = null;
|
|
|
19
19
|
// eslint-disable-next-line import/no-mutable-exports
|
|
20
20
|
export let samlCompletionPromise: Promise<void> = null;
|
|
21
21
|
let sessionInfo: any = null;
|
|
22
|
+
let sessionInfoResolver: (value: any) => void = null;
|
|
23
|
+
const sessionInfoPromise = new Promise((resolve) => {
|
|
24
|
+
sessionInfoResolver = resolve;
|
|
25
|
+
});
|
|
22
26
|
let releaseVersion = '';
|
|
23
27
|
|
|
24
28
|
export const SSO_REDIRECTION_MARKER_GUID =
|
|
@@ -98,7 +102,7 @@ export function notifyAuthSuccess(): void {
|
|
|
98
102
|
console.error('SDK not initialized');
|
|
99
103
|
return;
|
|
100
104
|
}
|
|
101
|
-
authEE.emit(AuthStatus.SUCCESS);
|
|
105
|
+
authEE.emit(AuthStatus.SUCCESS, sessionInfo);
|
|
102
106
|
}
|
|
103
107
|
|
|
104
108
|
export function notifyAuthFailure(failureType: AuthFailureType): void {
|
|
@@ -142,15 +146,17 @@ export function getReleaseVersion() {
|
|
|
142
146
|
}
|
|
143
147
|
|
|
144
148
|
/**
|
|
145
|
-
* Return
|
|
149
|
+
* Return a promise that resolves with the session info when authentication is
|
|
150
|
+
* successful. And info is available.
|
|
146
151
|
*/
|
|
147
|
-
export function getSessionInfo() {
|
|
148
|
-
return
|
|
152
|
+
export function getSessionInfo(): Promise<any> {
|
|
153
|
+
return sessionInfoPromise;
|
|
149
154
|
}
|
|
150
155
|
|
|
151
156
|
export function initSession(sessionDetails: any) {
|
|
152
157
|
sessionInfo = sessionDetails;
|
|
153
158
|
initMixpanel(sessionInfo);
|
|
159
|
+
sessionInfoResolver(sessionInfo);
|
|
154
160
|
}
|
|
155
161
|
|
|
156
162
|
const DUPLICATE_TOKEN_ERR =
|
|
@@ -187,6 +193,21 @@ function removeSSORedirectUrlMarker(): void {
|
|
|
187
193
|
);
|
|
188
194
|
}
|
|
189
195
|
|
|
196
|
+
export const getAuthenticaionToken = async (
|
|
197
|
+
embedConfig: EmbedConfig,
|
|
198
|
+
): Promise<any> => {
|
|
199
|
+
const { authEndpoint, getAuthToken } = embedConfig;
|
|
200
|
+
let authToken = null;
|
|
201
|
+
if (getAuthToken) {
|
|
202
|
+
authToken = await getAuthToken();
|
|
203
|
+
alertForDuplicateToken(authToken);
|
|
204
|
+
} else {
|
|
205
|
+
const response = await fetchAuthTokenService(authEndpoint);
|
|
206
|
+
authToken = await response.text();
|
|
207
|
+
}
|
|
208
|
+
return authToken;
|
|
209
|
+
};
|
|
210
|
+
|
|
190
211
|
/**
|
|
191
212
|
* Perform token based authentication
|
|
192
213
|
* @param embedConfig The embed configuration
|
|
@@ -207,14 +228,7 @@ export const doTokenAuth = async (
|
|
|
207
228
|
}
|
|
208
229
|
loggedInStatus = await isLoggedIn(thoughtSpotHost);
|
|
209
230
|
if (!loggedInStatus) {
|
|
210
|
-
|
|
211
|
-
if (getAuthToken) {
|
|
212
|
-
authToken = await getAuthToken();
|
|
213
|
-
alertForDuplicateToken(authToken);
|
|
214
|
-
} else {
|
|
215
|
-
const response = await fetchAuthTokenService(authEndpoint);
|
|
216
|
-
authToken = await response.text();
|
|
217
|
-
}
|
|
231
|
+
const authToken = await getAuthenticaionToken(embedConfig);
|
|
218
232
|
let resp;
|
|
219
233
|
try {
|
|
220
234
|
resp = await fetchAuthPostService(
|
|
@@ -236,6 +250,22 @@ export const doTokenAuth = async (
|
|
|
236
250
|
return loggedInStatus;
|
|
237
251
|
};
|
|
238
252
|
|
|
253
|
+
/**
|
|
254
|
+
* Validate embedConfig parameters required for cookielessTokenAuth
|
|
255
|
+
* @param embedConfig The embed configuration
|
|
256
|
+
*/
|
|
257
|
+
export const doCookielessTokenAuth = async (
|
|
258
|
+
embedConfig: EmbedConfig,
|
|
259
|
+
): Promise<boolean> => {
|
|
260
|
+
const { authEndpoint, getAuthToken } = embedConfig;
|
|
261
|
+
if (!authEndpoint && !getAuthToken) {
|
|
262
|
+
throw new Error(
|
|
263
|
+
'Either auth endpoint or getAuthToken function must be provided',
|
|
264
|
+
);
|
|
265
|
+
}
|
|
266
|
+
return Promise.resolve(true);
|
|
267
|
+
};
|
|
268
|
+
|
|
239
269
|
/**
|
|
240
270
|
* Perform basic authentication to the ThoughtSpot cluster using the cluster
|
|
241
271
|
* credentials.
|
|
@@ -414,6 +444,8 @@ export const authenticate = async (
|
|
|
414
444
|
case AuthType.AuthServer:
|
|
415
445
|
case AuthType.TrustedAuthToken:
|
|
416
446
|
return doTokenAuth(embedConfig);
|
|
447
|
+
case AuthType.TrustedAuthTokenCookieless:
|
|
448
|
+
return doCookielessTokenAuth(embedConfig);
|
|
417
449
|
case AuthType.Basic:
|
|
418
450
|
return doBasicAuth(embedConfig);
|
|
419
451
|
default:
|
|
@@ -23,6 +23,7 @@ import {
|
|
|
23
23
|
import * as config from '../config';
|
|
24
24
|
import * as tsEmbedInstance from './ts-embed';
|
|
25
25
|
import * as mixpanelInstance from '../mixpanel-service';
|
|
26
|
+
import * as authInstance from '../auth';
|
|
26
27
|
import * as baseInstance from './base';
|
|
27
28
|
import { MIXPANEL_EVENT } from '../mixpanel-service';
|
|
28
29
|
|
|
@@ -104,7 +105,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
104
105
|
});
|
|
105
106
|
expect(mockPort.postMessage).toHaveBeenCalledWith({
|
|
106
107
|
type: EmbedEvent.APP_INIT,
|
|
107
|
-
data: { customisations },
|
|
108
|
+
data: { customisations, authToken: '' },
|
|
108
109
|
});
|
|
109
110
|
});
|
|
110
111
|
|
|
@@ -131,7 +132,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
131
132
|
});
|
|
132
133
|
expect(mockPort.postMessage).toHaveBeenCalledWith({
|
|
133
134
|
type: EmbedEvent.APP_INIT,
|
|
134
|
-
data: { customisations: customisationsView },
|
|
135
|
+
data: { customisations: customisationsView, authToken: '' },
|
|
135
136
|
});
|
|
136
137
|
expect(getIFrameSrc()).toContain(
|
|
137
138
|
`customCssUrl=${customisationsView.style.customCSSUrl}`,
|
|
@@ -245,6 +246,154 @@ describe('Unit test case for ts embed', () => {
|
|
|
245
246
|
});
|
|
246
247
|
});
|
|
247
248
|
|
|
249
|
+
describe('Appinit embedEvent in cookieless authentication authType', () => {
|
|
250
|
+
beforeAll(() => {
|
|
251
|
+
init({
|
|
252
|
+
thoughtSpotHost: 'tshost',
|
|
253
|
+
customizations: customisations,
|
|
254
|
+
customCssUrl: 'http://localhost:5000',
|
|
255
|
+
authType: AuthType.TrustedAuthTokenCookieless,
|
|
256
|
+
getAuthToken: () => Promise.resolve('test_auth_token1'),
|
|
257
|
+
});
|
|
258
|
+
});
|
|
259
|
+
|
|
260
|
+
test('check for authToken based on getAuthToken function', async () => {
|
|
261
|
+
const mockEmbedEventPayload = {
|
|
262
|
+
type: EmbedEvent.APP_INIT,
|
|
263
|
+
data: {},
|
|
264
|
+
};
|
|
265
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
266
|
+
searchEmbed.render();
|
|
267
|
+
const mockPort: any = {
|
|
268
|
+
postMessage: jest.fn(),
|
|
269
|
+
};
|
|
270
|
+
await executeAfterWait(() => {
|
|
271
|
+
const iframe = getIFrameEl();
|
|
272
|
+
postMessageToParent(
|
|
273
|
+
iframe.contentWindow,
|
|
274
|
+
mockEmbedEventPayload,
|
|
275
|
+
mockPort,
|
|
276
|
+
);
|
|
277
|
+
});
|
|
278
|
+
await executeAfterWait(() => {
|
|
279
|
+
expect(mockPort.postMessage).toHaveBeenCalledWith({
|
|
280
|
+
type: EmbedEvent.APP_INIT,
|
|
281
|
+
data: { customisations, authToken: 'test_auth_token1' },
|
|
282
|
+
});
|
|
283
|
+
});
|
|
284
|
+
});
|
|
285
|
+
});
|
|
286
|
+
|
|
287
|
+
describe('AuthExpire embedEvent in cookieless authentication authType', () => {
|
|
288
|
+
beforeAll(() => {
|
|
289
|
+
init({
|
|
290
|
+
thoughtSpotHost: 'tshost',
|
|
291
|
+
customizations: customisations,
|
|
292
|
+
customCssUrl: 'http://localhost:5000',
|
|
293
|
+
authType: AuthType.TrustedAuthTokenCookieless,
|
|
294
|
+
getAuthToken: () => Promise.resolve('test_auth_token2'),
|
|
295
|
+
});
|
|
296
|
+
});
|
|
297
|
+
|
|
298
|
+
test('check for new authToken based on getAuthToken function', async () => {
|
|
299
|
+
const mockEmbedEventPayload = {
|
|
300
|
+
type: EmbedEvent.AuthExpire,
|
|
301
|
+
data: {},
|
|
302
|
+
};
|
|
303
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
304
|
+
jest.spyOn(baseInstance, 'notifyAuthFailure');
|
|
305
|
+
jest.spyOn(baseInstance, 'handleAuth');
|
|
306
|
+
searchEmbed.render();
|
|
307
|
+
const mockPort: any = {
|
|
308
|
+
postMessage: jest.fn(),
|
|
309
|
+
};
|
|
310
|
+
await executeAfterWait(() => {
|
|
311
|
+
const iframe = getIFrameEl();
|
|
312
|
+
postMessageToParent(
|
|
313
|
+
iframe.contentWindow,
|
|
314
|
+
mockEmbedEventPayload,
|
|
315
|
+
mockPort,
|
|
316
|
+
);
|
|
317
|
+
});
|
|
318
|
+
await executeAfterWait(() => {
|
|
319
|
+
expect(baseInstance.notifyAuthFailure).toBeCalledWith(
|
|
320
|
+
authInstance.AuthFailureType.EXPIRY,
|
|
321
|
+
);
|
|
322
|
+
expect(baseInstance.handleAuth).not.toHaveBeenCalled();
|
|
323
|
+
expect(mockPort.postMessage).toHaveBeenCalledWith({
|
|
324
|
+
type: EmbedEvent.AuthExpire,
|
|
325
|
+
data: { authToken: 'test_auth_token2' },
|
|
326
|
+
});
|
|
327
|
+
});
|
|
328
|
+
});
|
|
329
|
+
});
|
|
330
|
+
|
|
331
|
+
xdescribe('AuthExpire embedEvent in TrustedAuthToken authType', () => {
|
|
332
|
+
test('AutoLogin true scenario', async () => {
|
|
333
|
+
init({
|
|
334
|
+
thoughtSpotHost: 'tshost',
|
|
335
|
+
customizations: customisations,
|
|
336
|
+
customCssUrl: 'http://localhost:5000',
|
|
337
|
+
authType: AuthType.TrustedAuthToken,
|
|
338
|
+
username: 'tsadmin',
|
|
339
|
+
getAuthToken: () => Promise.resolve('test_auth_token3'),
|
|
340
|
+
autoLogin: true,
|
|
341
|
+
});
|
|
342
|
+
const mockEmbedEventPayload = {
|
|
343
|
+
type: EmbedEvent.AuthExpire,
|
|
344
|
+
data: {},
|
|
345
|
+
};
|
|
346
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
347
|
+
jest.spyOn(baseInstance, 'notifyAuthFailure');
|
|
348
|
+
jest.spyOn(baseInstance, 'handleAuth');
|
|
349
|
+
searchEmbed.render();
|
|
350
|
+
await executeAfterWait(() => {
|
|
351
|
+
const iframe = getIFrameEl();
|
|
352
|
+
postMessageToParent(
|
|
353
|
+
iframe.contentWindow,
|
|
354
|
+
mockEmbedEventPayload,
|
|
355
|
+
);
|
|
356
|
+
});
|
|
357
|
+
await executeAfterWait(() => {
|
|
358
|
+
expect(baseInstance.notifyAuthFailure).toBeCalledWith(
|
|
359
|
+
authInstance.AuthFailureType.EXPIRY,
|
|
360
|
+
);
|
|
361
|
+
expect(baseInstance.handleAuth).toHaveBeenCalled();
|
|
362
|
+
});
|
|
363
|
+
});
|
|
364
|
+
test('AutoLogin false scenario', async () => {
|
|
365
|
+
init({
|
|
366
|
+
thoughtSpotHost: 'tshost',
|
|
367
|
+
customizations: customisations,
|
|
368
|
+
customCssUrl: 'http://localhost:5000',
|
|
369
|
+
authType: AuthType.TrustedAuthToken,
|
|
370
|
+
username: 'tsadmin',
|
|
371
|
+
getAuthToken: () => Promise.resolve('test_auth_token4'),
|
|
372
|
+
});
|
|
373
|
+
const mockEmbedEventPayload = {
|
|
374
|
+
type: EmbedEvent.AuthExpire,
|
|
375
|
+
data: {},
|
|
376
|
+
};
|
|
377
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
378
|
+
jest.spyOn(baseInstance, 'notifyAuthFailure');
|
|
379
|
+
jest.spyOn(baseInstance, 'handleAuth');
|
|
380
|
+
searchEmbed.render();
|
|
381
|
+
await executeAfterWait(() => {
|
|
382
|
+
const iframe = getIFrameEl();
|
|
383
|
+
postMessageToParent(
|
|
384
|
+
iframe.contentWindow,
|
|
385
|
+
mockEmbedEventPayload,
|
|
386
|
+
);
|
|
387
|
+
});
|
|
388
|
+
await executeAfterWait(() => {
|
|
389
|
+
expect(baseInstance.notifyAuthFailure).toBeCalledWith(
|
|
390
|
+
authInstance.AuthFailureType.EXPIRY,
|
|
391
|
+
);
|
|
392
|
+
expect(baseInstance.handleAuth).not.toHaveBeenCalled();
|
|
393
|
+
});
|
|
394
|
+
});
|
|
395
|
+
});
|
|
396
|
+
|
|
248
397
|
describe('when thoughtSpotHost have value and authPromise return response true/false', () => {
|
|
249
398
|
beforeAll(() => {
|
|
250
399
|
init({
|