@thoughtspot/visual-embed-sdk 1.37.1 → 1.38.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/cjs/package.json +1 -1
- package/cjs/src/embed/bodyless-conversation.d.ts +44 -9
- package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/cjs/src/embed/bodyless-conversation.js +35 -5
- package/cjs/src/embed/bodyless-conversation.js.map +1 -1
- package/cjs/src/embed/bodyless-conversation.spec.js +290 -5
- package/cjs/src/embed/bodyless-conversation.spec.js.map +1 -1
- package/cjs/src/embed/conversation.d.ts +40 -11
- package/cjs/src/embed/conversation.d.ts.map +1 -1
- package/cjs/src/embed/conversation.js +29 -4
- package/cjs/src/embed/conversation.js.map +1 -1
- package/cjs/src/embed/conversation.spec.js +7 -7
- package/cjs/src/embed/conversation.spec.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/index.d.ts +4 -4
- package/cjs/src/index.d.ts.map +1 -1
- package/cjs/src/index.js +5 -1
- 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 +3 -1
- package/cjs/src/react/all-types-export.js.map +1 -1
- package/cjs/src/react/index.d.ts +53 -5
- package/cjs/src/react/index.d.ts.map +1 -1
- package/cjs/src/react/index.js +73 -4
- package/cjs/src/react/index.js.map +1 -1
- package/cjs/src/react/index.spec.js +94 -0
- package/cjs/src/react/index.spec.js.map +1 -1
- package/cjs/src/types.d.ts +2 -1
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +1 -0
- package/cjs/src/types.js.map +1 -1
- package/dist/{index-m9UtENc9.js → index-BIcnpmMY.js} +1 -1
- package/dist/src/embed/bodyless-conversation.d.ts +44 -9
- package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/dist/src/embed/conversation.d.ts +40 -11
- package/dist/src/embed/conversation.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
- package/dist/src/index.d.ts +4 -4
- 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 +53 -5
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/types.d.ts +2 -1
- package/dist/src/types.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +562 -10
- package/dist/tsembed-react.js +562 -8
- package/dist/tsembed.es.js +65 -11
- package/dist/tsembed.js +71 -15
- package/dist/visual-embed-sdk-react-full.d.ts +184 -72
- package/dist/visual-embed-sdk-react.d.ts +184 -72
- package/dist/visual-embed-sdk.d.ts +87 -22
- package/lib/package.json +1 -1
- package/lib/src/embed/bodyless-conversation.d.ts +44 -9
- package/lib/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/lib/src/embed/bodyless-conversation.js +33 -4
- package/lib/src/embed/bodyless-conversation.js.map +1 -1
- package/lib/src/embed/bodyless-conversation.spec.js +292 -7
- package/lib/src/embed/bodyless-conversation.spec.js.map +1 -1
- package/lib/src/embed/conversation.d.ts +40 -11
- package/lib/src/embed/conversation.d.ts.map +1 -1
- package/lib/src/embed/conversation.js +27 -3
- package/lib/src/embed/conversation.js.map +1 -1
- package/lib/src/embed/conversation.spec.js +8 -8
- package/lib/src/embed/conversation.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/index.d.ts +4 -4
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/index.js +4 -4
- 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/index.d.ts +53 -5
- package/lib/src/react/index.d.ts.map +1 -1
- package/lib/src/react/index.js +73 -4
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/react/index.spec.js +96 -2
- package/lib/src/react/index.spec.js.map +1 -1
- package/lib/src/types.d.ts +2 -1
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +1 -0
- package/lib/src/types.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +90 -25
- package/package.json +1 -1
- package/src/embed/bodyless-conversation.spec.ts +314 -7
- package/src/embed/bodyless-conversation.ts +53 -8
- package/src/embed/conversation.spec.ts +16 -16
- package/src/embed/conversation.ts +44 -11
- package/src/embed/ts-embed.spec.ts +0 -2
- package/src/index.ts +16 -5
- package/src/react/all-types-export.ts +2 -0
- package/src/react/index.spec.tsx +157 -1
- package/src/react/index.tsx +98 -11
- package/src/types.ts +1 -0
|
@@ -4,21 +4,33 @@ import { TsEmbed } from './ts-embed';
|
|
|
4
4
|
* Configuration for bodyless conversation options.
|
|
5
5
|
* @group Embed components
|
|
6
6
|
*/
|
|
7
|
-
export interface
|
|
7
|
+
export interface SpotterAgentEmbedViewConfig extends ViewConfig {
|
|
8
8
|
/**
|
|
9
9
|
* The ID of the worksheet to use for the conversation.
|
|
10
10
|
*/
|
|
11
11
|
worksheetId: string;
|
|
12
|
+
/**
|
|
13
|
+
* Optional CSS class name to add to the container div.
|
|
14
|
+
*/
|
|
15
|
+
containerClassName?: string;
|
|
12
16
|
}
|
|
13
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Configuration for conversation options.
|
|
19
|
+
* @deprecated from SDK: 1.38.0 | ThoughtSpot: 10.10.0.cl
|
|
20
|
+
* Use {@link SpotterAgentEmbedViewConfig} instead
|
|
21
|
+
* @group Embed components
|
|
22
|
+
*/
|
|
23
|
+
export interface BodylessConversationViewConfig extends SpotterAgentEmbedViewConfig {
|
|
24
|
+
}
|
|
25
|
+
interface SpotterAgentMessageViewConfig extends SpotterAgentEmbedViewConfig {
|
|
14
26
|
sessionId: string;
|
|
15
27
|
genNo: number;
|
|
16
28
|
acSessionId: string;
|
|
17
29
|
acGenNo: number;
|
|
18
30
|
}
|
|
19
31
|
declare class ConversationMessage extends TsEmbed {
|
|
20
|
-
protected viewConfig:
|
|
21
|
-
constructor(container: HTMLElement, viewConfig:
|
|
32
|
+
protected viewConfig: SpotterAgentMessageViewConfig;
|
|
33
|
+
constructor(container: HTMLElement, viewConfig: SpotterAgentMessageViewConfig);
|
|
22
34
|
getIframeSrc(): string;
|
|
23
35
|
render(): Promise<ConversationMessage>;
|
|
24
36
|
}
|
|
@@ -27,9 +39,9 @@ declare class ConversationMessage extends TsEmbed {
|
|
|
27
39
|
* chatbots or other conversational interfaces.
|
|
28
40
|
* @example
|
|
29
41
|
* ```js
|
|
30
|
-
* import {
|
|
42
|
+
* import { SpotterAgentEmbed } from '@thoughtspot/visual-embed-sdk';
|
|
31
43
|
*
|
|
32
|
-
* const conversation = new
|
|
44
|
+
* const conversation = new SpotterAgentEmbed({
|
|
33
45
|
* worksheetId: 'worksheetId',
|
|
34
46
|
* });
|
|
35
47
|
*
|
|
@@ -39,12 +51,12 @@ declare class ConversationMessage extends TsEmbed {
|
|
|
39
51
|
* document.body.appendChild(container); // or to any other element
|
|
40
52
|
* ```
|
|
41
53
|
* @group Embed components
|
|
42
|
-
* @version SDK: 1.
|
|
54
|
+
* @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
|
|
43
55
|
*/
|
|
44
|
-
export declare class
|
|
56
|
+
export declare class SpotterAgentEmbed {
|
|
45
57
|
private viewConfig;
|
|
46
58
|
private conversationService;
|
|
47
|
-
constructor(viewConfig:
|
|
59
|
+
constructor(viewConfig: SpotterAgentEmbedViewConfig);
|
|
48
60
|
sendMessage(userMessage: string): Promise<{
|
|
49
61
|
error: any;
|
|
50
62
|
container?: undefined;
|
|
@@ -55,5 +67,28 @@ export declare class BodylessConversation {
|
|
|
55
67
|
error?: undefined;
|
|
56
68
|
}>;
|
|
57
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* Create a conversation embed, which can be integrated inside
|
|
72
|
+
* chatbots or other conversational interfaces.
|
|
73
|
+
* @deprecated from SDK: 1.38.0 | ThoughtSpot: 10.10.0.cl
|
|
74
|
+
* Use {@link SpotterAgentEmbed} instead
|
|
75
|
+
* @example
|
|
76
|
+
* ```js
|
|
77
|
+
* import { SpotterAgentEmbed } from '@thoughtspot/visual-embed-sdk';
|
|
78
|
+
*
|
|
79
|
+
* const conversation = new SpotterAgentEmbed({
|
|
80
|
+
* worksheetId: 'worksheetId',
|
|
81
|
+
* });
|
|
82
|
+
*
|
|
83
|
+
* const { container, error } = await conversation.sendMessage('show me sales by region');
|
|
84
|
+
*
|
|
85
|
+
* // append the container to the DOM
|
|
86
|
+
* document.body.appendChild(container); // or to any other element
|
|
87
|
+
* ```
|
|
88
|
+
* @group Embed components
|
|
89
|
+
*/
|
|
90
|
+
export declare class BodylessConversation extends SpotterAgentEmbed {
|
|
91
|
+
constructor(viewConfig: BodylessConversationViewConfig);
|
|
92
|
+
}
|
|
58
93
|
export {};
|
|
59
94
|
//# sourceMappingURL=bodyless-conversation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bodyless-conversation.d.ts","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAS,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAKrC;;;GAGG;AACH,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"bodyless-conversation.d.ts","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAS,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAKrC;;;GAGG;AACH,MAAM,WAAW,2BAA4B,SAAQ,UAAU;IAC3D;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;GAKG;AAEH,MAAM,WAAW,8BAA+B,SAAQ,2BAA2B;CAAG;AAEtF,UAAU,6BAA8B,SAAQ,2BAA2B;IACvE,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,cAAM,mBAAoB,SAAQ,OAAO;IACD,SAAS,CAAC,UAAU,EAAE,6BAA6B;gBAA3E,SAAS,EAAE,WAAW,EAAY,UAAU,EAAE,6BAA6B;IAKhF,YAAY;IA2BN,MAAM,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAOtD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,iBAAiB;IAGd,OAAO,CAAC,UAAU;IAF9B,OAAO,CAAC,mBAAmB,CAAsB;gBAE7B,UAAU,EAAE,2BAA2B;IAS9C,WAAW,CAAC,WAAW,EAAE,MAAM;;;;;;;;;CAqB/C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;gBAC3C,UAAU,EAAE,8BAA8B;CAGzD"}
|
|
@@ -15,6 +15,7 @@ class ConversationMessage extends TsEmbed {
|
|
|
15
15
|
const path = 'conv-assist-answer';
|
|
16
16
|
const queryParams = this.getBaseQueryParams();
|
|
17
17
|
queryParams[Param.HideActions] = [...((_a = queryParams[Param.HideActions]) !== null && _a !== void 0 ? _a : [])];
|
|
18
|
+
queryParams[Param.isSpotterAgentEmbed] = true;
|
|
18
19
|
let query = '';
|
|
19
20
|
const queryParamsString = getQueryParamString(queryParams, true);
|
|
20
21
|
if (queryParamsString) {
|
|
@@ -40,9 +41,9 @@ class ConversationMessage extends TsEmbed {
|
|
|
40
41
|
* chatbots or other conversational interfaces.
|
|
41
42
|
* @example
|
|
42
43
|
* ```js
|
|
43
|
-
* import {
|
|
44
|
+
* import { SpotterAgentEmbed } from '@thoughtspot/visual-embed-sdk';
|
|
44
45
|
*
|
|
45
|
-
* const conversation = new
|
|
46
|
+
* const conversation = new SpotterAgentEmbed({
|
|
46
47
|
* worksheetId: 'worksheetId',
|
|
47
48
|
* });
|
|
48
49
|
*
|
|
@@ -52,9 +53,9 @@ class ConversationMessage extends TsEmbed {
|
|
|
52
53
|
* document.body.appendChild(container); // or to any other element
|
|
53
54
|
* ```
|
|
54
55
|
* @group Embed components
|
|
55
|
-
* @version SDK: 1.
|
|
56
|
+
* @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
|
|
56
57
|
*/
|
|
57
|
-
export class
|
|
58
|
+
export class SpotterAgentEmbed {
|
|
58
59
|
constructor(viewConfig) {
|
|
59
60
|
this.viewConfig = viewConfig;
|
|
60
61
|
const embedConfig = getEmbedConfig();
|
|
@@ -66,6 +67,9 @@ export class BodylessConversation {
|
|
|
66
67
|
return { error };
|
|
67
68
|
}
|
|
68
69
|
const container = document.createElement('div');
|
|
70
|
+
if (this.viewConfig.containerClassName) {
|
|
71
|
+
container.className = this.viewConfig.containerClassName;
|
|
72
|
+
}
|
|
69
73
|
const embed = new ConversationMessage(container, {
|
|
70
74
|
...this.viewConfig,
|
|
71
75
|
sessionId: data.sessionId,
|
|
@@ -77,4 +81,29 @@ export class BodylessConversation {
|
|
|
77
81
|
return { container, viz: embed };
|
|
78
82
|
}
|
|
79
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* Create a conversation embed, which can be integrated inside
|
|
86
|
+
* chatbots or other conversational interfaces.
|
|
87
|
+
* @deprecated from SDK: 1.38.0 | ThoughtSpot: 10.10.0.cl
|
|
88
|
+
* Use {@link SpotterAgentEmbed} instead
|
|
89
|
+
* @example
|
|
90
|
+
* ```js
|
|
91
|
+
* import { SpotterAgentEmbed } from '@thoughtspot/visual-embed-sdk';
|
|
92
|
+
*
|
|
93
|
+
* const conversation = new SpotterAgentEmbed({
|
|
94
|
+
* worksheetId: 'worksheetId',
|
|
95
|
+
* });
|
|
96
|
+
*
|
|
97
|
+
* const { container, error } = await conversation.sendMessage('show me sales by region');
|
|
98
|
+
*
|
|
99
|
+
* // append the container to the DOM
|
|
100
|
+
* document.body.appendChild(container); // or to any other element
|
|
101
|
+
* ```
|
|
102
|
+
* @group Embed components
|
|
103
|
+
*/
|
|
104
|
+
export class BodylessConversation extends SpotterAgentEmbed {
|
|
105
|
+
constructor(viewConfig) {
|
|
106
|
+
super(viewConfig);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
80
109
|
//# sourceMappingURL=bodyless-conversation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bodyless-conversation.js","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,YAAY,IAAI,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AACvG,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"bodyless-conversation.js","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import 'jest-fetch-mock';
|
|
2
|
-
import {
|
|
2
|
+
import { SpotterAgentEmbed } from './bodyless-conversation';
|
|
3
3
|
import * as authInstance from '../auth';
|
|
4
4
|
import { init } from '../index';
|
|
5
|
-
import { AuthType } from '../types';
|
|
5
|
+
import { Action, AuthType } from '../types';
|
|
6
6
|
import { getDocumentBody, getIFrameSrc, expectUrlToHaveParamsWithValues, } from '../test/test-utils';
|
|
7
|
-
describe('
|
|
7
|
+
describe('SpotterAgentEmbed', () => {
|
|
8
8
|
const thoughtSpotHost = 'tshost';
|
|
9
9
|
beforeAll(() => {
|
|
10
10
|
init({
|
|
@@ -18,7 +18,7 @@ describe('BodylessConversation', () => {
|
|
|
18
18
|
beforeEach(() => {
|
|
19
19
|
fetchMock.resetMocks();
|
|
20
20
|
});
|
|
21
|
-
test('should render the
|
|
21
|
+
test('should render the SpotterAgent embed', async () => {
|
|
22
22
|
fetchMock.mockResponses(JSON.stringify({
|
|
23
23
|
data: {
|
|
24
24
|
ConvAssist__createConversation: {
|
|
@@ -104,8 +104,8 @@ describe('BodylessConversation', () => {
|
|
|
104
104
|
const viewConfig = {
|
|
105
105
|
worksheetId: 'worksheetId',
|
|
106
106
|
};
|
|
107
|
-
const
|
|
108
|
-
const result = await
|
|
107
|
+
const spotterEmbed = new SpotterAgentEmbed(viewConfig);
|
|
108
|
+
const result = await spotterEmbed.sendMessage('userMessage');
|
|
109
109
|
const iframeSrc = getIFrameSrc(result.container);
|
|
110
110
|
expectUrlToHaveParamsWithValues(iframeSrc, {
|
|
111
111
|
sessionId: 'sessionId',
|
|
@@ -114,8 +114,293 @@ describe('BodylessConversation', () => {
|
|
|
114
114
|
acGenNo: 1,
|
|
115
115
|
});
|
|
116
116
|
fetchMock.mockRejectOnce(new Error('error'));
|
|
117
|
-
const errorResult = await
|
|
117
|
+
const errorResult = await spotterEmbed.sendMessage('userMessage');
|
|
118
118
|
expect(errorResult.error instanceof Error).toBeTruthy();
|
|
119
119
|
});
|
|
120
|
+
test('should apply containerClassName to the container element', async () => {
|
|
121
|
+
fetchMock.mockResponses(JSON.stringify({
|
|
122
|
+
data: {
|
|
123
|
+
ConvAssist__createConversation: {
|
|
124
|
+
convId: 'conversationId',
|
|
125
|
+
initialCtx: {
|
|
126
|
+
type: 'TS_ANSWER',
|
|
127
|
+
tsAnsCtx: {
|
|
128
|
+
sessionId: 'sessionId',
|
|
129
|
+
genNo: 1,
|
|
130
|
+
stateKey: {
|
|
131
|
+
transactionId: 'transactionId',
|
|
132
|
+
generationNumber: 1,
|
|
133
|
+
},
|
|
134
|
+
worksheet: {
|
|
135
|
+
worksheetId: 'worksheetId',
|
|
136
|
+
worksheetName: 'GTM',
|
|
137
|
+
},
|
|
138
|
+
},
|
|
139
|
+
},
|
|
140
|
+
},
|
|
141
|
+
},
|
|
142
|
+
}), JSON.stringify({
|
|
143
|
+
data: {
|
|
144
|
+
ConvAssist__sendMessage: {
|
|
145
|
+
responses: [
|
|
146
|
+
{
|
|
147
|
+
msgId: 'msgId',
|
|
148
|
+
data: {
|
|
149
|
+
asstRespData: {
|
|
150
|
+
tool: 'TS_NLS',
|
|
151
|
+
asstRespText: '',
|
|
152
|
+
nlsAnsData: {
|
|
153
|
+
sageQuerySuggestions: [
|
|
154
|
+
{
|
|
155
|
+
llmReasoning: {
|
|
156
|
+
assumptions: 'You want the total [COL|sales] for [COL|item_type] [VAL|jackets] for [VAL|this year].',
|
|
157
|
+
clarifications: '',
|
|
158
|
+
interpretation: '',
|
|
159
|
+
__typename: 'eureka_SageQuerySuggestion_LLMReasoning',
|
|
160
|
+
},
|
|
161
|
+
tokens: [
|
|
162
|
+
'sum sales',
|
|
163
|
+
"item type = 'jackets'",
|
|
164
|
+
"date = 'this year'",
|
|
165
|
+
],
|
|
166
|
+
tmlTokens: [
|
|
167
|
+
'sum [sales]',
|
|
168
|
+
"[date] = [date].'this year'",
|
|
169
|
+
"[item type] = [item type].'jackets'",
|
|
170
|
+
],
|
|
171
|
+
worksheetId: 'worksheetId',
|
|
172
|
+
description: '',
|
|
173
|
+
title: '',
|
|
174
|
+
cached: false,
|
|
175
|
+
sqlQuery: "SELECT SUM(sales) FROM __Sample_Retail_Apparel WHERE item_type = 'jackets' AND date = _this_year();",
|
|
176
|
+
sessionId: 'sessionId',
|
|
177
|
+
genNo: 2,
|
|
178
|
+
formulaInfo: [],
|
|
179
|
+
tmlPhrases: [],
|
|
180
|
+
stateKey: {
|
|
181
|
+
transactionId: 'transactionId',
|
|
182
|
+
generationNumber: 1,
|
|
183
|
+
__typename: 'sage_auto_complete_v2_ACStateKey',
|
|
184
|
+
},
|
|
185
|
+
__typename: 'eureka_SageQuerySuggestion',
|
|
186
|
+
},
|
|
187
|
+
],
|
|
188
|
+
responseType: 'ANSWER',
|
|
189
|
+
__typename: 'convassist_nls_tool_NLSToolAsstRespData',
|
|
190
|
+
},
|
|
191
|
+
__typename: 'convassist_AsstResponseData',
|
|
192
|
+
},
|
|
193
|
+
__typename: 'convassist_MessageData',
|
|
194
|
+
},
|
|
195
|
+
type: 'ASST_RESPONSE',
|
|
196
|
+
__typename: 'convassist_MessagePayload',
|
|
197
|
+
},
|
|
198
|
+
],
|
|
199
|
+
__typename: 'convassist_SendMessageResponse',
|
|
200
|
+
},
|
|
201
|
+
},
|
|
202
|
+
}));
|
|
203
|
+
const viewConfig = {
|
|
204
|
+
worksheetId: 'worksheetId',
|
|
205
|
+
containerClassName: 'custom-conversation-container',
|
|
206
|
+
};
|
|
207
|
+
const spotterAgentEmbed = new SpotterAgentEmbed(viewConfig);
|
|
208
|
+
const result = await spotterAgentEmbed.sendMessage('userMessage');
|
|
209
|
+
// Verify that the container has the custom class name
|
|
210
|
+
expect(result.container.className).toBe('custom-conversation-container');
|
|
211
|
+
// Also verify the iframe src is correct
|
|
212
|
+
const iframeSrc = getIFrameSrc(result.container);
|
|
213
|
+
expectUrlToHaveParamsWithValues(iframeSrc, {
|
|
214
|
+
sessionId: 'sessionId',
|
|
215
|
+
genNo: 2,
|
|
216
|
+
acSessionId: 'transactionId',
|
|
217
|
+
acGenNo: 1,
|
|
218
|
+
});
|
|
219
|
+
});
|
|
220
|
+
test('should not set className when containerClassName is not provided', async () => {
|
|
221
|
+
fetchMock.mockResponses(JSON.stringify({
|
|
222
|
+
data: {
|
|
223
|
+
ConvAssist__createConversation: {
|
|
224
|
+
convId: 'conversationId',
|
|
225
|
+
initialCtx: {
|
|
226
|
+
type: 'TS_ANSWER',
|
|
227
|
+
tsAnsCtx: {
|
|
228
|
+
sessionId: 'sessionId',
|
|
229
|
+
genNo: 1,
|
|
230
|
+
stateKey: {
|
|
231
|
+
transactionId: 'transactionId',
|
|
232
|
+
generationNumber: 1,
|
|
233
|
+
},
|
|
234
|
+
worksheet: {
|
|
235
|
+
worksheetId: 'worksheetId',
|
|
236
|
+
worksheetName: 'GTM',
|
|
237
|
+
},
|
|
238
|
+
},
|
|
239
|
+
},
|
|
240
|
+
},
|
|
241
|
+
},
|
|
242
|
+
}), JSON.stringify({
|
|
243
|
+
data: {
|
|
244
|
+
ConvAssist__sendMessage: {
|
|
245
|
+
responses: [
|
|
246
|
+
{
|
|
247
|
+
msgId: 'msgId',
|
|
248
|
+
data: {
|
|
249
|
+
asstRespData: {
|
|
250
|
+
tool: 'TS_NLS',
|
|
251
|
+
asstRespText: '',
|
|
252
|
+
nlsAnsData: {
|
|
253
|
+
sageQuerySuggestions: [
|
|
254
|
+
{
|
|
255
|
+
llmReasoning: {
|
|
256
|
+
assumptions: 'You want the total [COL|sales] for [COL|item_type] [VAL|jackets] for [VAL|this year].',
|
|
257
|
+
clarifications: '',
|
|
258
|
+
interpretation: '',
|
|
259
|
+
__typename: 'eureka_SageQuerySuggestion_LLMReasoning',
|
|
260
|
+
},
|
|
261
|
+
tokens: [
|
|
262
|
+
'sum sales',
|
|
263
|
+
"item type = 'jackets'",
|
|
264
|
+
"date = 'this year'",
|
|
265
|
+
],
|
|
266
|
+
tmlTokens: [
|
|
267
|
+
'sum [sales]',
|
|
268
|
+
"[date] = [date].'this year'",
|
|
269
|
+
"[item type] = [item type].'jackets'",
|
|
270
|
+
],
|
|
271
|
+
worksheetId: 'worksheetId',
|
|
272
|
+
description: '',
|
|
273
|
+
title: '',
|
|
274
|
+
cached: false,
|
|
275
|
+
sqlQuery: "SELECT SUM(sales) FROM __Sample_Retail_Apparel WHERE item_type = 'jackets' AND date = _this_year();",
|
|
276
|
+
sessionId: 'sessionId',
|
|
277
|
+
genNo: 2,
|
|
278
|
+
formulaInfo: [],
|
|
279
|
+
tmlPhrases: [],
|
|
280
|
+
stateKey: {
|
|
281
|
+
transactionId: 'transactionId',
|
|
282
|
+
generationNumber: 1,
|
|
283
|
+
__typename: 'sage_auto_complete_v2_ACStateKey',
|
|
284
|
+
},
|
|
285
|
+
__typename: 'eureka_SageQuerySuggestion',
|
|
286
|
+
},
|
|
287
|
+
],
|
|
288
|
+
responseType: 'ANSWER',
|
|
289
|
+
__typename: 'convassist_nls_tool_NLSToolAsstRespData',
|
|
290
|
+
},
|
|
291
|
+
__typename: 'convassist_AsstResponseData',
|
|
292
|
+
},
|
|
293
|
+
__typename: 'convassist_MessageData',
|
|
294
|
+
},
|
|
295
|
+
type: 'ASST_RESPONSE',
|
|
296
|
+
__typename: 'convassist_MessagePayload',
|
|
297
|
+
},
|
|
298
|
+
],
|
|
299
|
+
__typename: 'convassist_SendMessageResponse',
|
|
300
|
+
},
|
|
301
|
+
},
|
|
302
|
+
}));
|
|
303
|
+
const viewConfig = {
|
|
304
|
+
worksheetId: 'worksheetId',
|
|
305
|
+
// No containerClassName provided
|
|
306
|
+
};
|
|
307
|
+
const spotterAgentEmbed = new SpotterAgentEmbed(viewConfig);
|
|
308
|
+
const result = await spotterAgentEmbed.sendMessage('userMessage');
|
|
309
|
+
// Verify that the container has no class name (empty string)
|
|
310
|
+
expect(result.container.className).toBe('');
|
|
311
|
+
});
|
|
312
|
+
test('should handle hideActions parameter correctly', async () => {
|
|
313
|
+
fetchMock.mockResponses(JSON.stringify({
|
|
314
|
+
data: {
|
|
315
|
+
ConvAssist__createConversation: {
|
|
316
|
+
convId: 'conversationId',
|
|
317
|
+
initialCtx: {
|
|
318
|
+
type: 'TS_ANSWER',
|
|
319
|
+
tsAnsCtx: {
|
|
320
|
+
sessionId: 'sessionId',
|
|
321
|
+
genNo: 1,
|
|
322
|
+
stateKey: {
|
|
323
|
+
transactionId: 'transactionId',
|
|
324
|
+
generationNumber: 1,
|
|
325
|
+
},
|
|
326
|
+
worksheet: {
|
|
327
|
+
worksheetId: 'worksheetId',
|
|
328
|
+
worksheetName: 'GTM',
|
|
329
|
+
},
|
|
330
|
+
},
|
|
331
|
+
},
|
|
332
|
+
},
|
|
333
|
+
},
|
|
334
|
+
}), JSON.stringify({
|
|
335
|
+
data: {
|
|
336
|
+
ConvAssist__sendMessage: {
|
|
337
|
+
responses: [
|
|
338
|
+
{
|
|
339
|
+
msgId: 'msgId',
|
|
340
|
+
data: {
|
|
341
|
+
asstRespData: {
|
|
342
|
+
tool: 'TS_NLS',
|
|
343
|
+
asstRespText: '',
|
|
344
|
+
nlsAnsData: {
|
|
345
|
+
sageQuerySuggestions: [
|
|
346
|
+
{
|
|
347
|
+
llmReasoning: {
|
|
348
|
+
assumptions: 'You want the total [COL|sales] for [COL|item_type] [VAL|jackets] for [VAL|this year].',
|
|
349
|
+
clarifications: '',
|
|
350
|
+
interpretation: '',
|
|
351
|
+
__typename: 'eureka_SageQuerySuggestion_LLMReasoning',
|
|
352
|
+
},
|
|
353
|
+
tokens: [
|
|
354
|
+
'sum sales',
|
|
355
|
+
"item type = 'jackets'",
|
|
356
|
+
"date = 'this year'",
|
|
357
|
+
],
|
|
358
|
+
tmlTokens: [
|
|
359
|
+
'sum [sales]',
|
|
360
|
+
"[date] = [date].'this year'",
|
|
361
|
+
"[item type] = [item type].'jackets'",
|
|
362
|
+
],
|
|
363
|
+
worksheetId: 'worksheetId',
|
|
364
|
+
description: '',
|
|
365
|
+
title: '',
|
|
366
|
+
cached: false,
|
|
367
|
+
sqlQuery: "SELECT SUM(sales) FROM __Sample_Retail_Apparel WHERE item_type = 'jackets' AND date = _this_year();",
|
|
368
|
+
sessionId: 'sessionId',
|
|
369
|
+
genNo: 2,
|
|
370
|
+
formulaInfo: [],
|
|
371
|
+
tmlPhrases: [],
|
|
372
|
+
stateKey: {
|
|
373
|
+
transactionId: 'transactionId',
|
|
374
|
+
generationNumber: 1,
|
|
375
|
+
__typename: 'sage_auto_complete_v2_ACStateKey',
|
|
376
|
+
},
|
|
377
|
+
__typename: 'eureka_SageQuerySuggestion',
|
|
378
|
+
},
|
|
379
|
+
],
|
|
380
|
+
responseType: 'ANSWER',
|
|
381
|
+
__typename: 'convassist_nls_tool_NLSToolAsstRespData',
|
|
382
|
+
},
|
|
383
|
+
__typename: 'convassist_AsstResponseData',
|
|
384
|
+
},
|
|
385
|
+
__typename: 'convassist_MessageData',
|
|
386
|
+
},
|
|
387
|
+
type: 'ASST_RESPONSE',
|
|
388
|
+
__typename: 'convassist_MessagePayload',
|
|
389
|
+
},
|
|
390
|
+
],
|
|
391
|
+
__typename: 'convassist_SendMessageResponse',
|
|
392
|
+
},
|
|
393
|
+
},
|
|
394
|
+
}));
|
|
395
|
+
const viewConfig = {
|
|
396
|
+
worksheetId: 'worksheetId',
|
|
397
|
+
hiddenActions: [Action.Download, Action.Save], // This should trigger the HideActions branch
|
|
398
|
+
};
|
|
399
|
+
const spotterAgentEmbed = new SpotterAgentEmbed(viewConfig);
|
|
400
|
+
const result = await spotterAgentEmbed.sendMessage('userMessage');
|
|
401
|
+
// Verify the iframe src contains the hideActions parameter
|
|
402
|
+
const iframeSrc = getIFrameSrc(result.container);
|
|
403
|
+
expect(iframeSrc).toContain('hideAction');
|
|
404
|
+
});
|
|
120
405
|
});
|
|
121
406
|
//# sourceMappingURL=bodyless-conversation.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bodyless-conversation.spec.js","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.spec.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,CAAC;AACzB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"bodyless-conversation.spec.js","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,10 +10,10 @@ export interface SearchOptions {
|
|
|
10
10
|
searchQuery: string;
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
|
-
* The configuration for the embedded
|
|
13
|
+
* The configuration for the embedded spotterEmbed options.
|
|
14
14
|
* @group Embed components
|
|
15
15
|
*/
|
|
16
|
-
export interface
|
|
16
|
+
export interface SpotterEmbedViewConfig extends ViewConfig {
|
|
17
17
|
/**
|
|
18
18
|
* The ID of the worksheet to use for the conversation.
|
|
19
19
|
*/
|
|
@@ -27,7 +27,7 @@ export interface ConversationViewConfig extends ViewConfig {
|
|
|
27
27
|
* but still display the selected data source.
|
|
28
28
|
* @example
|
|
29
29
|
* ```js
|
|
30
|
-
* const embed = new
|
|
30
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
31
31
|
* ... // other options
|
|
32
32
|
* disableSourceSelection : true,
|
|
33
33
|
* })
|
|
@@ -39,7 +39,7 @@ export interface ConversationViewConfig extends ViewConfig {
|
|
|
39
39
|
* hideSourceSelection : Hide data source selection
|
|
40
40
|
* @example
|
|
41
41
|
* ```js
|
|
42
|
-
* const embed = new
|
|
42
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
43
43
|
* ... // other options
|
|
44
44
|
* hideSourceSelection : true,
|
|
45
45
|
* })
|
|
@@ -66,7 +66,7 @@ export interface ConversationViewConfig extends ViewConfig {
|
|
|
66
66
|
* default is false.
|
|
67
67
|
* @example
|
|
68
68
|
* ```js
|
|
69
|
-
* const embed = new
|
|
69
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
70
70
|
* ... // other options
|
|
71
71
|
* showSpotterLimitations : true,
|
|
72
72
|
* })
|
|
@@ -79,7 +79,7 @@ export interface ConversationViewConfig extends ViewConfig {
|
|
|
79
79
|
* the initial screen of the conversation.
|
|
80
80
|
* @example
|
|
81
81
|
* ```js
|
|
82
|
-
* const embed = new
|
|
82
|
+
* const embed = new SpotterEmbed('#tsEmbed', {
|
|
83
83
|
* ... // other options
|
|
84
84
|
* hideSampleQuestions : true,
|
|
85
85
|
* })
|
|
@@ -88,12 +88,43 @@ export interface ConversationViewConfig extends ViewConfig {
|
|
|
88
88
|
*/
|
|
89
89
|
hideSampleQuestions?: boolean;
|
|
90
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* The configuration for the embedded spotterEmbed options.
|
|
93
|
+
* @deprecated from SDK: 1.38.0 | ThoughtSpot: 10.10.0.cl
|
|
94
|
+
* Use {@link SpotterEmbedViewConfig} instead
|
|
95
|
+
* @group Embed components
|
|
96
|
+
*/
|
|
97
|
+
export interface ConversationViewConfig extends SpotterEmbedViewConfig {
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Embed ThoughtSpot AI Conversation.
|
|
101
|
+
* @group Embed components
|
|
102
|
+
* @example
|
|
103
|
+
* ```js
|
|
104
|
+
* const conversation = new SpotterEmbed('#tsEmbed', {
|
|
105
|
+
* worksheetId: 'worksheetId',
|
|
106
|
+
* searchOptions: {
|
|
107
|
+
* searchQuery: 'searchQuery',
|
|
108
|
+
* },
|
|
109
|
+
* });
|
|
110
|
+
* conversation.render();
|
|
111
|
+
* ```
|
|
112
|
+
* @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
|
|
113
|
+
*/
|
|
114
|
+
export declare class SpotterEmbed extends TsEmbed {
|
|
115
|
+
protected viewConfig: SpotterEmbedViewConfig;
|
|
116
|
+
constructor(container: HTMLElement, viewConfig: SpotterEmbedViewConfig);
|
|
117
|
+
getIframeSrc(): string;
|
|
118
|
+
render(): Promise<SpotterEmbed>;
|
|
119
|
+
}
|
|
91
120
|
/**
|
|
92
121
|
* Embed ThoughtSpot AI Conversation.
|
|
122
|
+
* @deprecated from SDK: 1.38.0 | ThoughtSpot: 10.10.0.cl
|
|
123
|
+
* Use {@link SpotterEmbed} instead
|
|
93
124
|
* @group Embed components
|
|
94
125
|
* @example
|
|
95
126
|
* ```js
|
|
96
|
-
* const conversation = new
|
|
127
|
+
* const conversation = new SpotterEmbed('#tsEmbed', {
|
|
97
128
|
* worksheetId: 'worksheetId',
|
|
98
129
|
* searchOptions: {
|
|
99
130
|
* searchQuery: 'searchQuery',
|
|
@@ -101,12 +132,10 @@ export interface ConversationViewConfig extends ViewConfig {
|
|
|
101
132
|
* });
|
|
102
133
|
* conversation.render();
|
|
103
134
|
* ```
|
|
104
|
-
* @version SDK: 1.
|
|
135
|
+
* @version SDK: 1.37.0 | ThoughtSpot: 10.9.0.cl
|
|
105
136
|
*/
|
|
106
|
-
export declare class ConversationEmbed extends
|
|
137
|
+
export declare class ConversationEmbed extends SpotterEmbed {
|
|
107
138
|
protected viewConfig: ConversationViewConfig;
|
|
108
139
|
constructor(container: HTMLElement, viewConfig: ConversationViewConfig);
|
|
109
|
-
getIframeSrc(): string;
|
|
110
|
-
render(): Promise<ConversationEmbed>;
|
|
111
140
|
}
|
|
112
141
|
//# sourceMappingURL=conversation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../src/embed/conversation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAS,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGrC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAuB,SAAQ,UAAU;IACtD;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;;;;;;;;OAWG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;OAYG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;;;;;;;;;OAWG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,
|
|
1
|
+
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../src/embed/conversation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAS,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGrC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAuB,SAAQ,UAAU;IACtD;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;;;;;;;;OAWG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;OAYG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;;;;;;;;;OAWG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED;;;;;GAKG;AAEH,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;CAAG;AAEzE;;;;;;;;;;;;;;GAcG;AACH,qBAAa,YAAa,SAAQ,OAAO;IACD,SAAS,CAAC,UAAU,EAAE,sBAAsB;gBAApE,SAAS,EAAE,WAAW,EAAY,UAAU,EAAE,sBAAsB;IAKzE,YAAY,IAAI,MAAM;IAgDhB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;CAO/C;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACX,SAAS,CAAC,UAAU,EAAE,sBAAsB;gBAApE,SAAS,EAAE,WAAW,EAAY,UAAU,EAAE,sBAAsB;CAInF"}
|