@thoughtspot/visual-embed-sdk 1.39.1 → 1.39.2-spotter-agent
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/config.spec.js +9 -0
- package/cjs/src/config.spec.js.map +1 -1
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +2 -1
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +18 -8
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/bodyless-conversation.d.ts +19 -7
- package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/cjs/src/embed/bodyless-conversation.js +24 -4
- package/cjs/src/embed/bodyless-conversation.js.map +1 -1
- package/cjs/src/embed/bodyless-conversation.spec.js +8 -190
- package/cjs/src/embed/bodyless-conversation.spec.js.map +1 -1
- package/cjs/src/embed/conversation.spec.js +28 -0
- package/cjs/src/embed/conversation.spec.js.map +1 -1
- package/cjs/src/embed/embedConfig.d.ts +9 -7
- package/cjs/src/embed/embedConfig.d.ts.map +1 -1
- package/cjs/src/embed/embedConfig.js +9 -7
- package/cjs/src/embed/embedConfig.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +0 -17
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +2 -4
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +12 -11
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +5 -0
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +16 -1
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +164 -0
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/errors.d.ts +1 -0
- package/cjs/src/errors.d.ts.map +1 -1
- package/cjs/src/errors.js +1 -0
- package/cjs/src/errors.js.map +1 -1
- package/cjs/src/pages/embed-test.page.d.ts +8 -0
- package/cjs/src/pages/embed-test.page.d.ts.map +1 -0
- package/cjs/src/pages/embed-test.page.js +20 -0
- package/cjs/src/pages/embed-test.page.js.map +1 -0
- package/cjs/src/pages/home.page.d.ts +6 -0
- package/cjs/src/pages/home.page.d.ts.map +1 -0
- package/cjs/src/pages/home.page.js +12 -0
- package/cjs/src/pages/home.page.js.map +1 -0
- package/cjs/src/pages/login.page.d.ts +15 -0
- package/cjs/src/pages/login.page.d.ts.map +1 -0
- package/cjs/src/pages/login.page.js +22 -0
- package/cjs/src/pages/login.page.js.map +1 -0
- 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 -2
- package/cjs/src/react/all-types-export.js.map +1 -1
- package/cjs/src/react/index.d.ts +71 -20
- package/cjs/src/react/index.d.ts.map +1 -1
- package/cjs/src/react/index.js +79 -42
- package/cjs/src/react/index.js.map +1 -1
- package/cjs/src/react/index.spec.js +436 -100
- package/cjs/src/react/index.spec.js.map +1 -1
- package/cjs/src/tests/auth.test.d.ts +1 -0
- package/cjs/src/tests/auth.test.d.ts.map +1 -0
- package/cjs/src/tests/auth.test.js +1 -0
- package/cjs/src/tests/auth.test.js.map +1 -0
- package/cjs/src/tests/e2e/auth.spec.d.ts +2 -0
- package/cjs/src/tests/e2e/auth.spec.d.ts.map +1 -0
- package/cjs/src/tests/e2e/auth.spec.js +54 -0
- package/cjs/src/tests/e2e/auth.spec.js.map +1 -0
- package/cjs/src/types.d.ts +34 -2
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +17 -1
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
- package/cjs/src/utils/graphql/nlsService/conversation-service.js +2 -0
- package/cjs/src/utils/graphql/nlsService/conversation-service.js.map +1 -1
- package/cjs/src/utils.spec.js +25 -0
- package/cjs/src/utils.spec.js.map +1 -1
- package/dist/index-2QHwuA-G.js +7371 -0
- package/dist/index-Cj4BVGHL.js +7371 -0
- package/dist/index-DUaG1OG2.js +7447 -0
- package/dist/{index-JaFaxrvQ.js → index-DnIvX1FR.js} +1 -1
- package/dist/index-Fhk1V_Gw.js +7371 -0
- package/dist/index-OuiZF3zE.js +7371 -0
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/bodyless-conversation.d.ts +19 -7
- package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/dist/src/embed/embedConfig.d.ts +9 -7
- package/dist/src/embed/embedConfig.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +0 -17
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +5 -0
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/errors.d.ts +1 -0
- package/dist/src/errors.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 +71 -20
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/types.d.ts +34 -2
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +157 -68
- package/dist/tsembed-react.js +157 -66
- package/dist/tsembed.es.js +74 -20
- package/dist/tsembed.js +73 -19
- package/dist/visual-embed-sdk-react-full.d.ts +132 -52
- package/dist/visual-embed-sdk-react.d.ts +132 -52
- package/dist/visual-embed-sdk.d.ts +62 -33
- package/lib/package.json +1 -1
- package/lib/src/config.spec.js +9 -0
- package/lib/src/config.spec.js.map +1 -1
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +2 -1
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +19 -9
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/bodyless-conversation.d.ts +19 -7
- package/lib/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/lib/src/embed/bodyless-conversation.js +23 -4
- package/lib/src/embed/bodyless-conversation.js.map +1 -1
- package/lib/src/embed/bodyless-conversation.spec.js +9 -191
- package/lib/src/embed/bodyless-conversation.spec.js.map +1 -1
- package/lib/src/embed/conversation.spec.js +30 -2
- package/lib/src/embed/conversation.spec.js.map +1 -1
- package/lib/src/embed/embedConfig.d.ts +9 -7
- package/lib/src/embed/embedConfig.d.ts.map +1 -1
- package/lib/src/embed/embedConfig.js +9 -7
- package/lib/src/embed/embedConfig.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +0 -17
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +2 -4
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +12 -11
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +5 -0
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +16 -1
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +164 -0
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/errors.d.ts +1 -0
- package/lib/src/errors.d.ts.map +1 -1
- package/lib/src/errors.js +1 -0
- package/lib/src/errors.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 +71 -20
- package/lib/src/react/index.d.ts.map +1 -1
- package/lib/src/react/index.js +79 -43
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/react/index.spec.js +439 -103
- package/lib/src/react/index.spec.js.map +1 -1
- package/lib/src/types.d.ts +34 -2
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +17 -1
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
- package/lib/src/utils/graphql/nlsService/conversation-service.js +2 -0
- package/lib/src/utils/graphql/nlsService/conversation-service.js.map +1 -1
- package/lib/src/utils.spec.js +26 -1
- package/lib/src/utils.spec.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +62 -33
- package/package.json +1 -1
- package/src/config.spec.ts +11 -0
- package/src/embed/app.spec.ts +36 -23
- package/src/embed/app.ts +2 -0
- package/src/embed/bodyless-conversation.spec.ts +9 -203
- package/src/embed/bodyless-conversation.ts +24 -10
- package/src/embed/conversation.spec.ts +40 -2
- package/src/embed/embedConfig.ts +10 -8
- package/src/embed/liveboard.spec.ts +5 -4
- package/src/embed/liveboard.ts +2 -22
- package/src/embed/ts-embed.spec.ts +225 -0
- package/src/embed/ts-embed.ts +19 -0
- package/src/errors.ts +1 -0
- package/src/react/all-types-export.ts +2 -1
- package/src/react/index.spec.tsx +556 -157
- package/src/react/index.tsx +117 -51
- package/src/types.ts +75 -43
- package/src/utils/graphql/nlsService/conversation-service.ts +2 -0
- package/src/utils.spec.ts +29 -0
package/lib/src/react/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import React, { useRef } from 'react';
|
|
2
|
+
import React, { useRef, useCallback } from 'react';
|
|
3
3
|
import useDeepCompareEffect from 'use-deep-compare-effect';
|
|
4
4
|
import { deepMerge } from '../utils';
|
|
5
5
|
import { SearchBarEmbed as _SearchBarEmbed } from '../embed/search-bar';
|
|
@@ -7,10 +7,11 @@ import { SageEmbed as _SageEmbed } from '../embed/sage';
|
|
|
7
7
|
import { SearchEmbed as _SearchEmbed } from '../embed/search';
|
|
8
8
|
import { AppEmbed as _AppEmbed } from '../embed/app';
|
|
9
9
|
import { LiveboardEmbed as _LiveboardEmbed } from '../embed/liveboard';
|
|
10
|
-
import { SpotterAgentEmbed as _SpotterAgentEmbed } from '../embed/bodyless-conversation';
|
|
10
|
+
import { SpotterAgentEmbed as _SpotterAgentEmbed, ConversationMessage as _ConversationMessage } from '../embed/bodyless-conversation';
|
|
11
11
|
import { getViewPropsAndListeners } from './util';
|
|
12
12
|
import { SpotterEmbed as _SpotterEmbed, ConversationEmbed as _ConversationEmbed } from '../embed/conversation';
|
|
13
13
|
import { init } from '../embed/base';
|
|
14
|
+
import { ERROR_MESSAGE } from '../errors';
|
|
14
15
|
const componentFactory = (EmbedConstructor,
|
|
15
16
|
// isPreRenderedComponent: Specifies whether the component being returned is
|
|
16
17
|
// intended for preRendering. If set to true, the component will call the
|
|
@@ -254,55 +255,34 @@ export const SpotterEmbed = componentFactory(_SpotterEmbed);
|
|
|
254
255
|
* ```
|
|
255
256
|
*/
|
|
256
257
|
export const ConversationEmbed = componentFactory(_ConversationEmbed);
|
|
258
|
+
export const ConversationMessage = componentFactory(_ConversationMessage);
|
|
257
259
|
/**
|
|
258
|
-
* React component for
|
|
259
|
-
*
|
|
260
|
+
* React component for displaying individual conversation messages from SpotterAgent.
|
|
261
|
+
*
|
|
262
|
+
* This component renders a single message response from your ThoughtSpot conversation,
|
|
263
|
+
* showing charts, visualizations, or text responses based on the user's query.
|
|
264
|
+
*
|
|
260
265
|
* @example
|
|
261
266
|
* ```tsx
|
|
262
|
-
*
|
|
263
|
-
*
|
|
267
|
+
* const { sendMessage } = useSpotterAgent({ worksheetId: 'worksheetId' });
|
|
268
|
+
* const result = await sendMessage('show me sales by region');
|
|
264
269
|
*
|
|
265
|
-
*
|
|
266
|
-
*
|
|
267
|
-
*
|
|
268
|
-
* document.body.appendChild(container);
|
|
269
|
-
* }
|
|
270
|
-
* };
|
|
270
|
+
* if (!result.error) {
|
|
271
|
+
* // Simple usage - just pass the message data
|
|
272
|
+
* <SpotterMessage message={result.message} />
|
|
271
273
|
*
|
|
272
|
-
*
|
|
273
|
-
*
|
|
274
|
-
*
|
|
275
|
-
*
|
|
276
|
-
*
|
|
277
|
-
* );
|
|
274
|
+
* // With optional query for context
|
|
275
|
+
* <SpotterMessage
|
|
276
|
+
* message={result.message}
|
|
277
|
+
* query={result.query}
|
|
278
|
+
* />
|
|
278
279
|
* }
|
|
279
280
|
* ```
|
|
281
|
+
* @version SDK: 1.39.0 | ThoughtSpot: 10.11.0.cl
|
|
280
282
|
*/
|
|
281
|
-
export const
|
|
282
|
-
const {
|
|
283
|
-
|
|
284
|
-
useDeepCompareEffect(() => {
|
|
285
|
-
if (serviceRef.current) {
|
|
286
|
-
serviceRef.current = null;
|
|
287
|
-
}
|
|
288
|
-
const configProps = {
|
|
289
|
-
...restProps,
|
|
290
|
-
...(className ? { containerClassName: className } : {})
|
|
291
|
-
};
|
|
292
|
-
serviceRef.current = new _SpotterAgentEmbed(configProps);
|
|
293
|
-
if (ref) {
|
|
294
|
-
if (typeof ref === 'function') {
|
|
295
|
-
ref(serviceRef.current);
|
|
296
|
-
}
|
|
297
|
-
else {
|
|
298
|
-
ref.current = serviceRef.current;
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
return () => {
|
|
302
|
-
serviceRef.current = null;
|
|
303
|
-
};
|
|
304
|
-
}, [props]);
|
|
305
|
-
return null;
|
|
283
|
+
export const SpotterMessage = React.forwardRef((props, ref) => {
|
|
284
|
+
const { message, query: _, ...otherProps } = props;
|
|
285
|
+
return (React.createElement(ConversationMessage, { ref: ref, ...message, ...otherProps }));
|
|
306
286
|
});
|
|
307
287
|
/**
|
|
308
288
|
* React component for PreRendered Conversation embed.
|
|
@@ -363,5 +343,61 @@ export function useInit(config) {
|
|
|
363
343
|
}, [config]);
|
|
364
344
|
return ref;
|
|
365
345
|
}
|
|
346
|
+
/**
|
|
347
|
+
* React hook for interacting with SpotterAgent AI conversations.
|
|
348
|
+
*
|
|
349
|
+
* This hook provides a sendMessage function that allows you to send natural language
|
|
350
|
+
* queries to your data and get back AI-generated responses with visualizations.
|
|
351
|
+
*
|
|
352
|
+
* @param config - Configuration object containing worksheetId and other options
|
|
353
|
+
* @returns Object with sendMessage function that returns conversation results
|
|
354
|
+
* @example
|
|
355
|
+
* ```tsx
|
|
356
|
+
* const { sendMessage } = useSpotterAgent({ worksheetId: 'worksheetId' });
|
|
357
|
+
*
|
|
358
|
+
* const handleQuery = async () => {
|
|
359
|
+
* const result = await sendMessage('show me sales by region');
|
|
360
|
+
*
|
|
361
|
+
* if (!result.error) {
|
|
362
|
+
* // Display the message response
|
|
363
|
+
* <SpotterMessage message={result.message} />
|
|
364
|
+
* } else {
|
|
365
|
+
* console.error('Error:', result.error);
|
|
366
|
+
* }
|
|
367
|
+
* };
|
|
368
|
+
* ```
|
|
369
|
+
* @version SDK: 1.39.0 | ThoughtSpot: 10.11.0.cl
|
|
370
|
+
*/
|
|
371
|
+
export function useSpotterAgent(config) {
|
|
372
|
+
const serviceRef = useRef(null);
|
|
373
|
+
useDeepCompareEffect(() => {
|
|
374
|
+
if (serviceRef.current) {
|
|
375
|
+
serviceRef.current = null;
|
|
376
|
+
}
|
|
377
|
+
serviceRef.current = new _SpotterAgentEmbed(config);
|
|
378
|
+
return () => {
|
|
379
|
+
serviceRef.current = null;
|
|
380
|
+
};
|
|
381
|
+
}, [config]);
|
|
382
|
+
const sendMessage = useCallback(async (query) => {
|
|
383
|
+
if (!serviceRef.current) {
|
|
384
|
+
return { error: new Error(ERROR_MESSAGE.SPOTTER_AGENT_NOT_INITIALIZED) };
|
|
385
|
+
}
|
|
386
|
+
const result = await serviceRef.current.sendMessageData(query);
|
|
387
|
+
if (result.error) {
|
|
388
|
+
return { error: result.error };
|
|
389
|
+
}
|
|
390
|
+
return {
|
|
391
|
+
query: query,
|
|
392
|
+
message: {
|
|
393
|
+
...result.data,
|
|
394
|
+
worksheetId: config.worksheetId,
|
|
395
|
+
},
|
|
396
|
+
};
|
|
397
|
+
}, [config.worksheetId]);
|
|
398
|
+
return {
|
|
399
|
+
sendMessage,
|
|
400
|
+
};
|
|
401
|
+
}
|
|
366
402
|
export { Page, RuntimeFilterOp, EmbedEvent, HostEvent, Action, HomeLeftNavItem, HomepageModule, LogLevel, getSessionInfo, ListPageColumns, } from '../index';
|
|
367
403
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/index.tsx"],"names":[],"mappings":"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"}
|