@thoughtspot/visual-embed-sdk 1.30.0-alpha.1 → 1.30.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/README.md +1 -1
- package/cjs/package.json +1 -1
- package/cjs/src/auth.d.ts +0 -15
- package/cjs/src/auth.d.ts.map +1 -1
- package/cjs/src/auth.js +2 -13
- package/cjs/src/auth.js.map +1 -1
- package/cjs/src/authToken.d.ts +0 -1
- package/cjs/src/authToken.d.ts.map +1 -1
- package/cjs/src/authToken.js +0 -1
- package/cjs/src/authToken.js.map +1 -1
- package/cjs/src/config.d.ts +0 -1
- package/cjs/src/config.d.ts.map +1 -1
- package/cjs/src/config.js +0 -2
- package/cjs/src/config.js.map +1 -1
- package/cjs/src/embed/app.d.ts +0 -49
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +0 -8
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/base.d.ts +0 -6
- package/cjs/src/embed/base.d.ts.map +1 -1
- package/cjs/src/embed/base.js +0 -7
- package/cjs/src/embed/base.js.map +1 -1
- package/cjs/src/embed/base.spec.js +1 -1
- package/cjs/src/embed/base.spec.js.map +1 -1
- package/cjs/src/embed/embedConfig.d.ts +0 -2
- package/cjs/src/embed/embedConfig.d.ts.map +1 -1
- package/cjs/src/embed/embedConfig.js +0 -2
- package/cjs/src/embed/embedConfig.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +0 -30
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +0 -5
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/sage.d.ts +2 -18
- package/cjs/src/embed/sage.d.ts.map +1 -1
- package/cjs/src/embed/sage.js +0 -5
- package/cjs/src/embed/sage.js.map +1 -1
- package/cjs/src/embed/search-bar.d.ts +0 -11
- package/cjs/src/embed/search-bar.d.ts.map +1 -1
- package/cjs/src/embed/search-bar.js +0 -2
- package/cjs/src/embed/search-bar.js.map +1 -1
- package/cjs/src/embed/search.d.ts +0 -33
- package/cjs/src/embed/search.d.ts.map +1 -1
- package/cjs/src/embed/search.js +0 -3
- package/cjs/src/embed/search.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +1 -31
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +6 -37
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/index.d.ts +0 -1
- package/cjs/src/index.d.ts.map +1 -1
- package/cjs/src/index.js +0 -1
- package/cjs/src/index.js.map +1 -1
- package/cjs/src/mixpanel-service.d.ts +0 -1
- package/cjs/src/mixpanel-service.d.ts.map +1 -1
- package/cjs/src/mixpanel-service.js +0 -1
- package/cjs/src/mixpanel-service.js.map +1 -1
- package/cjs/src/react/index.d.ts +1 -12
- package/cjs/src/react/index.d.ts.map +1 -1
- package/cjs/src/react/index.js +1 -11
- package/cjs/src/react/index.js.map +1 -1
- package/cjs/src/react/index.spec.js +14 -2
- package/cjs/src/react/index.spec.js.map +1 -1
- package/cjs/src/test/test-utils.d.ts +0 -2
- package/cjs/src/test/test-utils.d.ts.map +1 -1
- package/cjs/src/test/test-utils.js +0 -2
- package/cjs/src/test/test-utils.js.map +1 -1
- package/cjs/src/tokenizedFetch.d.ts +0 -1
- package/cjs/src/tokenizedFetch.d.ts.map +1 -1
- package/cjs/src/tokenizedFetch.js +0 -1
- package/cjs/src/tokenizedFetch.js.map +1 -1
- package/cjs/src/types.d.ts +19 -337
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +18 -264
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/authService/authService.d.ts +0 -1
- package/cjs/src/utils/authService/authService.d.ts.map +1 -1
- package/cjs/src/utils/authService/authService.js +0 -1
- package/cjs/src/utils/authService/authService.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
- package/cjs/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
- package/cjs/src/utils/graphql/answerService/answer-queries.js +19 -1
- package/cjs/src/utils/graphql/answerService/answer-queries.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.d.ts +2 -14
- package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.js +2 -14
- package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.spec.js +43 -0
- package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
- package/cjs/src/utils/graphql/graphql-request.d.ts.map +1 -1
- package/cjs/src/utils/graphql/graphql-request.js +2 -1
- package/cjs/src/utils/graphql/graphql-request.js.map +1 -1
- package/cjs/src/utils/processTrigger.d.ts +0 -1
- package/cjs/src/utils/processTrigger.d.ts.map +1 -1
- package/cjs/src/utils/processTrigger.js +0 -2
- package/cjs/src/utils/processTrigger.js.map +1 -1
- package/cjs/src/utils.d.ts +0 -9
- package/cjs/src/utils.d.ts.map +1 -1
- package/cjs/src/utils.js +0 -11
- package/cjs/src/utils.js.map +1 -1
- package/dist/src/auth.d.ts +0 -15
- package/dist/src/auth.d.ts.map +1 -1
- package/dist/src/authToken.d.ts +0 -1
- package/dist/src/authToken.d.ts.map +1 -1
- package/dist/src/config.d.ts +0 -1
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/embed/app.d.ts +0 -49
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/base.d.ts +0 -6
- package/dist/src/embed/base.d.ts.map +1 -1
- package/dist/src/embed/embedConfig.d.ts +0 -2
- package/dist/src/embed/embedConfig.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +0 -30
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/sage.d.ts +2 -18
- package/dist/src/embed/sage.d.ts.map +1 -1
- package/dist/src/embed/search-bar.d.ts +0 -11
- package/dist/src/embed/search-bar.d.ts.map +1 -1
- package/dist/src/embed/search.d.ts +0 -33
- package/dist/src/embed/search.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +1 -31
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/index.d.ts +0 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/mixpanel-service.d.ts +0 -1
- package/dist/src/mixpanel-service.d.ts.map +1 -1
- package/dist/src/react/index.d.ts +1 -12
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/test/test-utils.d.ts +0 -2
- package/dist/src/test/test-utils.d.ts.map +1 -1
- package/dist/src/tokenizedFetch.d.ts +0 -1
- package/dist/src/tokenizedFetch.d.ts.map +1 -1
- package/dist/src/types.d.ts +19 -337
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/authService/authService.d.ts +0 -1
- package/dist/src/utils/authService/authService.d.ts.map +1 -1
- package/dist/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
- package/dist/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
- package/dist/src/utils/graphql/answerService/answerService.d.ts +2 -14
- package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/dist/src/utils/graphql/graphql-request.d.ts.map +1 -1
- package/dist/src/utils/processTrigger.d.ts +0 -1
- package/dist/src/utils/processTrigger.d.ts.map +1 -1
- package/dist/src/utils.d.ts +0 -9
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +2030 -2380
- package/dist/tsembed-react.js +1871 -2217
- package/dist/tsembed.es.js +3443 -3790
- package/dist/tsembed.js +6371 -6710
- package/dist/visual-embed-sdk-react-full.d.ts +24 -550
- package/dist/visual-embed-sdk-react.d.ts +24 -550
- package/dist/visual-embed-sdk.d.ts +23 -538
- package/lib/package.json +1 -1
- package/lib/src/auth.d.ts +0 -15
- package/lib/src/auth.d.ts.map +1 -1
- package/lib/src/auth.js +3 -14
- package/lib/src/auth.js.map +1 -1
- package/lib/src/authToken.d.ts +0 -1
- package/lib/src/authToken.d.ts.map +1 -1
- package/lib/src/authToken.js +0 -1
- package/lib/src/authToken.js.map +1 -1
- package/lib/src/config.d.ts +0 -1
- package/lib/src/config.d.ts.map +1 -1
- package/lib/src/config.js +0 -2
- package/lib/src/config.js.map +1 -1
- package/lib/src/embed/app.d.ts +0 -49
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +0 -8
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/base.d.ts +0 -6
- package/lib/src/embed/base.d.ts.map +1 -1
- package/lib/src/embed/base.js +0 -7
- package/lib/src/embed/base.js.map +1 -1
- package/lib/src/embed/base.spec.js +2 -2
- package/lib/src/embed/base.spec.js.map +1 -1
- package/lib/src/embed/embedConfig.d.ts +0 -2
- package/lib/src/embed/embedConfig.d.ts.map +1 -1
- package/lib/src/embed/embedConfig.js +0 -2
- package/lib/src/embed/embedConfig.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +0 -30
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +1 -6
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/sage.d.ts +2 -18
- package/lib/src/embed/sage.d.ts.map +1 -1
- package/lib/src/embed/sage.js +0 -5
- package/lib/src/embed/sage.js.map +1 -1
- package/lib/src/embed/search-bar.d.ts +0 -11
- package/lib/src/embed/search-bar.d.ts.map +1 -1
- package/lib/src/embed/search-bar.js +0 -2
- package/lib/src/embed/search-bar.js.map +1 -1
- package/lib/src/embed/search.d.ts +0 -33
- package/lib/src/embed/search.d.ts.map +1 -1
- package/lib/src/embed/search.js +0 -3
- package/lib/src/embed/search.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +1 -31
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +9 -40
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/index.d.ts +0 -1
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/index.js +0 -1
- package/lib/src/index.js.map +1 -1
- package/lib/src/mixpanel-service.d.ts +0 -1
- package/lib/src/mixpanel-service.d.ts.map +1 -1
- package/lib/src/mixpanel-service.js +0 -1
- package/lib/src/mixpanel-service.js.map +1 -1
- package/lib/src/react/index.d.ts +1 -12
- package/lib/src/react/index.d.ts.map +1 -1
- package/lib/src/react/index.js +1 -11
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/react/index.spec.js +15 -3
- package/lib/src/react/index.spec.js.map +1 -1
- package/lib/src/test/test-utils.d.ts +0 -2
- package/lib/src/test/test-utils.d.ts.map +1 -1
- package/lib/src/test/test-utils.js +0 -2
- package/lib/src/test/test-utils.js.map +1 -1
- package/lib/src/tokenizedFetch.d.ts +0 -1
- package/lib/src/tokenizedFetch.d.ts.map +1 -1
- package/lib/src/tokenizedFetch.js +0 -1
- package/lib/src/tokenizedFetch.js.map +1 -1
- package/lib/src/types.d.ts +19 -337
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +18 -264
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/authService/authService.d.ts +0 -1
- package/lib/src/utils/authService/authService.d.ts.map +1 -1
- package/lib/src/utils/authService/authService.js +0 -1
- package/lib/src/utils/authService/authService.js.map +1 -1
- package/lib/src/utils/authService/authService.spec.js +1 -1
- package/lib/src/utils/authService/authService.spec.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
- package/lib/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
- package/lib/src/utils/graphql/answerService/answer-queries.js +18 -0
- package/lib/src/utils/graphql/answerService/answer-queries.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.d.ts +2 -14
- package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.js +2 -14
- package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.spec.js +44 -1
- package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
- package/lib/src/utils/graphql/graphql-request.d.ts.map +1 -1
- package/lib/src/utils/graphql/graphql-request.js +2 -1
- package/lib/src/utils/graphql/graphql-request.js.map +1 -1
- package/lib/src/utils/processTrigger.d.ts +0 -1
- package/lib/src/utils/processTrigger.d.ts.map +1 -1
- package/lib/src/utils/processTrigger.js +0 -2
- package/lib/src/utils/processTrigger.js.map +1 -1
- package/lib/src/utils.d.ts +0 -9
- package/lib/src/utils.d.ts.map +1 -1
- package/lib/src/utils.js +0 -11
- package/lib/src/utils.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +24 -539
- package/package.json +1 -1
- package/src/auth.ts +6 -23
- package/src/authToken.ts +0 -1
- package/src/config.ts +0 -2
- package/src/embed/app.ts +0 -49
- package/src/embed/base.spec.ts +3 -3
- package/src/embed/base.ts +0 -7
- package/src/embed/embedConfig.ts +0 -2
- package/src/embed/liveboard.ts +1 -38
- package/src/embed/sage.ts +2 -18
- package/src/embed/search-bar.tsx +0 -11
- package/src/embed/search.ts +0 -33
- package/src/embed/ts-embed.ts +38 -72
- package/src/index.ts +0 -1
- package/src/mixpanel-service.ts +0 -1
- package/src/react/index.spec.tsx +47 -59
- package/src/react/index.tsx +1 -12
- package/src/test/test-utils.ts +0 -2
- package/src/tokenizedFetch.ts +0 -1
- package/src/types.ts +19 -337
- package/src/utils/authService/authService.spec.ts +4 -4
- package/src/utils/authService/authService.ts +0 -1
- package/src/utils/graphql/answerService/answer-queries.ts +19 -0
- package/src/utils/graphql/answerService/answerService.spec.ts +53 -1
- package/src/utils/graphql/answerService/answerService.ts +2 -14
- package/src/utils/graphql/graphql-request.ts +2 -1
- package/src/utils/processTrigger.ts +0 -2
- package/src/utils.ts +0 -11
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
EndPoints,
|
|
3
|
+
fetchAuthPostService,
|
|
4
4
|
fetchAuthService,
|
|
5
|
+
fetchAuthTokenService,
|
|
5
6
|
fetchBasicAuthService,
|
|
6
|
-
|
|
7
|
+
fetchSessionInfoService,
|
|
7
8
|
verifyTokenService,
|
|
8
|
-
EndPoints,
|
|
9
9
|
} from '.';
|
|
10
10
|
import { logger } from '../logger';
|
|
11
11
|
|
|
@@ -28,7 +28,6 @@ function failureLoggedFetch(url: string, options: RequestInit = {}): Promise<Res
|
|
|
28
28
|
|
|
29
29
|
/**
|
|
30
30
|
* Service to validate a auth token against a ThoughtSpot host.
|
|
31
|
-
*
|
|
32
31
|
* @param thoughtSpotHost : ThoughtSpot host to verify the token against.
|
|
33
32
|
* @param authToken : Auth token to verify.
|
|
34
33
|
*/
|
|
@@ -67,6 +67,9 @@ export const getAnswer = `
|
|
|
67
67
|
${bachSessionId}
|
|
68
68
|
answer {
|
|
69
69
|
id
|
|
70
|
+
name
|
|
71
|
+
description
|
|
72
|
+
displayMode
|
|
70
73
|
sources {
|
|
71
74
|
header {
|
|
72
75
|
guid
|
|
@@ -136,3 +139,19 @@ export const getAnswerData = `
|
|
|
136
139
|
}
|
|
137
140
|
}
|
|
138
141
|
`;
|
|
142
|
+
|
|
143
|
+
export const addVizToLiveboard = `
|
|
144
|
+
mutation AddVizToLiveboard(liveboardId: GUID!, session: BachSessionIdInput!, tabId: GUID, vizId: GUID!) {
|
|
145
|
+
Answer__addVizToPinboard(
|
|
146
|
+
pinboardId: liveboardId
|
|
147
|
+
|
|
148
|
+
session: $session
|
|
149
|
+
|
|
150
|
+
tabId: $tabId
|
|
151
|
+
|
|
152
|
+
vizId: $vizId
|
|
153
|
+
) {
|
|
154
|
+
${bachSessionId}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
`;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import 'jest-fetch-mock';
|
|
2
2
|
import { AuthType, RuntimeFilterOp, VizPoint } from '../../../types';
|
|
3
3
|
import { AnswerService } from './answerService';
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
getAnswerData, removeColumns, addFilter, addColumns,
|
|
6
|
+
} from './answer-queries';
|
|
5
7
|
import * as authTokenInstance from '../../../authToken';
|
|
6
8
|
import * as tokenizedFetch from '../../../tokenizedFetch';
|
|
7
9
|
import * as embedConfigInstance from '../../../embed/embedConfig';
|
|
@@ -352,4 +354,54 @@ describe('Answer service tests', () => {
|
|
|
352
354
|
const answer = await answerService.getAnswer();
|
|
353
355
|
expect(answer.sources[0].header.guid).toBe('source1');
|
|
354
356
|
});
|
|
357
|
+
|
|
358
|
+
test('Add columns by name should call the right API', async () => {
|
|
359
|
+
fetchMock.mockResponses(
|
|
360
|
+
JSON.stringify({
|
|
361
|
+
data: {
|
|
362
|
+
getSourceDetailById: [{
|
|
363
|
+
columns: [{
|
|
364
|
+
id: 'id1',
|
|
365
|
+
name: 'col1',
|
|
366
|
+
}, {
|
|
367
|
+
id: 'id2',
|
|
368
|
+
name: 'col2',
|
|
369
|
+
}],
|
|
370
|
+
}],
|
|
371
|
+
},
|
|
372
|
+
}),
|
|
373
|
+
JSON.stringify({
|
|
374
|
+
data: {
|
|
375
|
+
Answer__addColumn: {
|
|
376
|
+
id: {
|
|
377
|
+
genNo: 2,
|
|
378
|
+
},
|
|
379
|
+
},
|
|
380
|
+
},
|
|
381
|
+
}),
|
|
382
|
+
);
|
|
383
|
+
const answerService = createAnswerService({
|
|
384
|
+
sources: [{
|
|
385
|
+
header: {
|
|
386
|
+
guid: 'source1',
|
|
387
|
+
},
|
|
388
|
+
}],
|
|
389
|
+
});
|
|
390
|
+
const session = await answerService.addColumnsByName(['col1']);
|
|
391
|
+
expect(fetchMock).toHaveBeenCalledWith(
|
|
392
|
+
'https://tshost/prism/?op=AddColumns',
|
|
393
|
+
expect.objectContaining({
|
|
394
|
+
body: JSON.stringify({
|
|
395
|
+
operationName: 'AddColumns',
|
|
396
|
+
query: addColumns,
|
|
397
|
+
variables: {
|
|
398
|
+
session: defaultSession,
|
|
399
|
+
columns: [{
|
|
400
|
+
logicalColumnId: 'id1',
|
|
401
|
+
}],
|
|
402
|
+
},
|
|
403
|
+
}),
|
|
404
|
+
}),
|
|
405
|
+
);
|
|
406
|
+
});
|
|
355
407
|
});
|
|
@@ -29,7 +29,6 @@ export interface UnderlyingDataPoint {
|
|
|
29
29
|
* custom action payload. This service could be used to run
|
|
30
30
|
* graphql queries in the context of the answer on which the
|
|
31
31
|
* custom action was triggered.
|
|
32
|
-
*
|
|
33
32
|
* @example
|
|
34
33
|
* ```js
|
|
35
34
|
* embed.on(EmbedEvent.CustomAction, e => {
|
|
@@ -57,7 +56,6 @@ export class AnswerService {
|
|
|
57
56
|
|
|
58
57
|
/**
|
|
59
58
|
* Should not need to be called directly.
|
|
60
|
-
*
|
|
61
59
|
* @param session
|
|
62
60
|
* @param answer
|
|
63
61
|
* @param thoughtSpotHost
|
|
@@ -94,7 +92,6 @@ export class AnswerService {
|
|
|
94
92
|
|
|
95
93
|
/**
|
|
96
94
|
* Remove columnIds and return updated answer session.
|
|
97
|
-
*
|
|
98
95
|
* @param columnIds
|
|
99
96
|
* @returns
|
|
100
97
|
*/
|
|
@@ -109,7 +106,6 @@ export class AnswerService {
|
|
|
109
106
|
|
|
110
107
|
/**
|
|
111
108
|
* Add columnIds and return updated answer session.
|
|
112
|
-
*
|
|
113
109
|
* @param columnIds
|
|
114
110
|
* @returns
|
|
115
111
|
*/
|
|
@@ -124,21 +120,20 @@ export class AnswerService {
|
|
|
124
120
|
|
|
125
121
|
/**
|
|
126
122
|
* Add columns by names and return updated answer session.
|
|
127
|
-
*
|
|
128
123
|
* @param columnNames
|
|
129
124
|
* @returns
|
|
130
125
|
* @example
|
|
131
126
|
* ```js
|
|
132
127
|
* embed.on(EmbedEvent.Data, async (e) => {
|
|
133
128
|
* const service = await embed.getAnswerService();
|
|
134
|
-
* await service.
|
|
129
|
+
* await service.addColumnsByName([
|
|
135
130
|
* "col name 1",
|
|
136
131
|
* "col name 2"
|
|
137
132
|
* ]);
|
|
138
133
|
* console.log(await service.fetchData());
|
|
139
134
|
* });
|
|
140
135
|
*/
|
|
141
|
-
public async
|
|
136
|
+
public async addColumnsByName(columnNames: string[]) {
|
|
142
137
|
const sourceDetail = await this.getSourceDetail();
|
|
143
138
|
const columnGuids = getGuidsFromColumnNames(sourceDetail, columnNames);
|
|
144
139
|
return this.addColumns([...columnGuids]);
|
|
@@ -146,7 +141,6 @@ export class AnswerService {
|
|
|
146
141
|
|
|
147
142
|
/**
|
|
148
143
|
* Add a filter to the answer.
|
|
149
|
-
*
|
|
150
144
|
* @param columnName
|
|
151
145
|
* @param operator
|
|
152
146
|
* @param values
|
|
@@ -181,7 +175,6 @@ export class AnswerService {
|
|
|
181
175
|
|
|
182
176
|
/**
|
|
183
177
|
* Fetch data from the answer.
|
|
184
|
-
*
|
|
185
178
|
* @param offset
|
|
186
179
|
* @param size
|
|
187
180
|
* @returns
|
|
@@ -210,7 +203,6 @@ export class AnswerService {
|
|
|
210
203
|
/**
|
|
211
204
|
* Fetch the data for the answer as a CSV blob. This might be
|
|
212
205
|
* quicker for larger data.
|
|
213
|
-
*
|
|
214
206
|
* @param userLocale
|
|
215
207
|
* @param includeInfo Include the CSV header in the output
|
|
216
208
|
* @returns Response
|
|
@@ -225,7 +217,6 @@ export class AnswerService {
|
|
|
225
217
|
/**
|
|
226
218
|
* Just get the internal URL for this answer's data
|
|
227
219
|
* as a CSV blob.
|
|
228
|
-
*
|
|
229
220
|
* @param userLocale
|
|
230
221
|
* @param includeInfo
|
|
231
222
|
* @returns
|
|
@@ -238,7 +229,6 @@ export class AnswerService {
|
|
|
238
229
|
* Get underlying data given a point and the output column names.
|
|
239
230
|
* In case of a context menu action, the selectedPoints are
|
|
240
231
|
* automatically passed.
|
|
241
|
-
*
|
|
242
232
|
* @param outputColumnNames
|
|
243
233
|
* @param selectedPoints
|
|
244
234
|
* @example
|
|
@@ -303,7 +293,6 @@ export class AnswerService {
|
|
|
303
293
|
|
|
304
294
|
/**
|
|
305
295
|
* Execute a custom graphql query in the context of the answer.
|
|
306
|
-
*
|
|
307
296
|
* @param query graphql query
|
|
308
297
|
* @param variables graphql variables
|
|
309
298
|
* @returns
|
|
@@ -325,7 +314,6 @@ export class AnswerService {
|
|
|
325
314
|
|
|
326
315
|
/**
|
|
327
316
|
* Get the internal session details for the answer.
|
|
328
|
-
*
|
|
329
317
|
* @returns
|
|
330
318
|
*/
|
|
331
319
|
public getSession() {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { tokenizedFetch } from '../../tokenizedFetch';
|
|
1
2
|
import { getOperationNameFromQuery } from '../../utils';
|
|
2
3
|
|
|
3
4
|
/**
|
|
@@ -21,7 +22,7 @@ export async function graphqlQuery({
|
|
|
21
22
|
}) {
|
|
22
23
|
const operationName = getOperationNameFromQuery(query);
|
|
23
24
|
try {
|
|
24
|
-
const response = await
|
|
25
|
+
const response = await tokenizedFetch(`${thoughtSpotHost}/prism/?op=${operationName}`, {
|
|
25
26
|
method: 'POST',
|
|
26
27
|
headers: {
|
|
27
28
|
'content-type': 'application/json;charset=UTF-8',
|
|
@@ -3,7 +3,6 @@ import { HostEvent } from '../types';
|
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Reloads the ThoughtSpot iframe.
|
|
6
|
-
*
|
|
7
6
|
* @param iFrame
|
|
8
7
|
*/
|
|
9
8
|
export const reload = (iFrame: HTMLIFrameElement) => {
|
|
@@ -16,7 +15,6 @@ export const reload = (iFrame: HTMLIFrameElement) => {
|
|
|
16
15
|
|
|
17
16
|
/**
|
|
18
17
|
* Post iframe message.
|
|
19
|
-
*
|
|
20
18
|
* @param iFrame
|
|
21
19
|
* @param message
|
|
22
20
|
* @param message.type
|
package/src/utils.ts
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* Copyright (c) 2023
|
|
3
3
|
*
|
|
4
4
|
* Common utility functions for ThoughtSpot Visual Embed SDK
|
|
5
|
-
*
|
|
6
5
|
* @summary Utils
|
|
7
6
|
* @author Ayon Ghosh <ayon.ghosh@thoughtspot.com>
|
|
8
7
|
*/
|
|
@@ -23,7 +22,6 @@ import {
|
|
|
23
22
|
* Refer to the following docs for more details on runtime filter syntax:
|
|
24
23
|
* https://cloud-docs.thoughtspot.com/admin/ts-cloud/apply-runtime-filter.html
|
|
25
24
|
* https://cloud-docs.thoughtspot.com/admin/ts-cloud/runtime-filter-operators.html
|
|
26
|
-
*
|
|
27
25
|
* @param runtimeFilters
|
|
28
26
|
*/
|
|
29
27
|
export const getFilterQuery = (runtimeFilters: RuntimeFilter[]): string | null => {
|
|
@@ -51,7 +49,6 @@ export const getFilterQuery = (runtimeFilters: RuntimeFilter[]): string | null =
|
|
|
51
49
|
|
|
52
50
|
/**
|
|
53
51
|
* Construct a runtime parameter override query string from the given option.
|
|
54
|
-
*
|
|
55
52
|
* @param runtimeParameters
|
|
56
53
|
*/
|
|
57
54
|
export const getRuntimeParameters = (runtimeParameters: RuntimeParameter[]): string => {
|
|
@@ -74,7 +71,6 @@ export const getRuntimeParameters = (runtimeParameters: RuntimeParameter[]): str
|
|
|
74
71
|
/**
|
|
75
72
|
* Convert a value to a string representation to be sent as a query
|
|
76
73
|
* parameter to the ThoughtSpot app.
|
|
77
|
-
*
|
|
78
74
|
* @param value Any parameter value
|
|
79
75
|
*/
|
|
80
76
|
const serializeParam = (value: any) => {
|
|
@@ -90,14 +86,12 @@ const serializeParam = (value: any) => {
|
|
|
90
86
|
* Convert a value to a string:
|
|
91
87
|
* in case of an array, we convert it to CSV.
|
|
92
88
|
* in case of any other type, we directly return the value.
|
|
93
|
-
*
|
|
94
89
|
* @param value
|
|
95
90
|
*/
|
|
96
91
|
const paramToString = (value: any) => (Array.isArray(value) ? value.join(',') : value);
|
|
97
92
|
|
|
98
93
|
/**
|
|
99
94
|
* Return a query param string composed from the given params object
|
|
100
|
-
*
|
|
101
95
|
* @param queryParams
|
|
102
96
|
* @param shouldSerializeParamValues
|
|
103
97
|
*/
|
|
@@ -127,7 +121,6 @@ export const getQueryParamString = (
|
|
|
127
121
|
/**
|
|
128
122
|
* Get a string representation of a dimension value in CSS
|
|
129
123
|
* If numeric, it is considered in pixels.
|
|
130
|
-
*
|
|
131
124
|
* @param value
|
|
132
125
|
*/
|
|
133
126
|
export const getCssDimension = (value: number | string): string => {
|
|
@@ -140,7 +133,6 @@ export const getCssDimension = (value: number | string): string => {
|
|
|
140
133
|
|
|
141
134
|
/**
|
|
142
135
|
* Append a string to a URL's hash fragment
|
|
143
|
-
*
|
|
144
136
|
* @param url A URL
|
|
145
137
|
* @param stringToAppend The string to append to the URL hash
|
|
146
138
|
*/
|
|
@@ -245,7 +237,6 @@ export const getRuntimeFilters = (runtimefilters: any) => getFilterQuery(runtime
|
|
|
245
237
|
/**
|
|
246
238
|
* Gets a reference to the DOM node given
|
|
247
239
|
* a selector.
|
|
248
|
-
*
|
|
249
240
|
* @param domSelector
|
|
250
241
|
*/
|
|
251
242
|
export function getDOMNode(domSelector: DOMSelector): HTMLElement {
|
|
@@ -280,7 +271,6 @@ export function removeTypename(obj: any) {
|
|
|
280
271
|
|
|
281
272
|
/**
|
|
282
273
|
* Sets the specified style properties on an HTML element.
|
|
283
|
-
*
|
|
284
274
|
* @param {HTMLElement} element - The HTML element to which the styles should be applied.
|
|
285
275
|
* @param {Partial<CSSStyleDeclaration>} styleProperties - An object containing style
|
|
286
276
|
* property names and their values.
|
|
@@ -304,7 +294,6 @@ export const setStyleProperties = (
|
|
|
304
294
|
};
|
|
305
295
|
/**
|
|
306
296
|
* Removes specified style properties from an HTML element.
|
|
307
|
-
*
|
|
308
297
|
* @param {HTMLElement} element - The HTML element from which the styles should be removed.
|
|
309
298
|
* @param {string[]} styleProperties - An array of style property names to be removed.
|
|
310
299
|
* @example
|