@thoughtspot/visual-embed-sdk 1.46.3 → 1.46.5-beta.1
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 +3 -3
- package/cjs/src/auth.d.ts +2 -1
- package/cjs/src/auth.d.ts.map +1 -1
- package/cjs/src/auth.js +2 -1
- package/cjs/src/auth.js.map +1 -1
- package/cjs/src/authToken.d.ts.map +1 -1
- package/cjs/src/authToken.js.map +1 -1
- package/cjs/src/css-variables.d.ts +51 -17
- package/cjs/src/css-variables.d.ts.map +1 -1
- package/cjs/src/embed/app.d.ts +1 -0
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +10 -1
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +46 -1
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/base.d.ts.map +1 -1
- package/cjs/src/embed/base.js.map +1 -1
- package/cjs/src/embed/base.spec.js.map +1 -1
- package/cjs/src/embed/events.spec.js +72 -0
- package/cjs/src/embed/events.spec.js.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.d.ts +74 -3
- package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.js +7 -0
- package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts +10 -0
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.js +46 -9
- package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js +155 -0
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +1 -0
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +11 -2
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +96 -2
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/sage.d.ts.map +1 -1
- package/cjs/src/embed/sage.js.map +1 -1
- package/cjs/src/embed/search.spec.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +41 -2
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +41 -2
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/react/index.d.ts.map +1 -1
- package/cjs/src/react/index.js +58 -53
- package/cjs/src/react/index.js.map +1 -1
- package/cjs/src/types.d.ts +730 -32
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +734 -3
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.d.ts +4 -2
- package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.js +4 -2
- package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
- package/cjs/src/utils/graphql/preview-service.d.ts.map +1 -1
- package/cjs/src/utils/graphql/preview-service.js.map +1 -1
- package/cjs/src/utils/processData.d.ts.map +1 -1
- package/cjs/src/utils/processData.js.map +1 -1
- package/dist/{index-DyX-x6uN.js → index-DW2wEHqy.js} +1 -1
- package/dist/src/auth.d.ts +2 -1
- package/dist/src/auth.d.ts.map +1 -1
- package/dist/src/authToken.d.ts.map +1 -1
- package/dist/src/css-variables.d.ts +51 -17
- package/dist/src/css-variables.d.ts.map +1 -1
- package/dist/src/embed/app.d.ts +1 -0
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/base.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/contracts.d.ts +74 -3
- package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/host-event-client.d.ts +10 -0
- package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +1 -0
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/sage.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +41 -2
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/types.d.ts +730 -32
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/graphql/answerService/answerService.d.ts +4 -2
- package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/dist/src/utils/graphql/preview-service.d.ts.map +1 -1
- package/dist/src/utils/processData.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +917 -77
- package/dist/tsembed-react.js +915 -75
- package/dist/tsembed.es.js +859 -24
- package/dist/tsembed.js +857 -22
- package/dist/visual-embed-sdk-react-full.d.ts +892 -54
- package/dist/visual-embed-sdk-react.d.ts +892 -54
- package/dist/visual-embed-sdk.d.ts +912 -56
- package/lib/package.json +3 -3
- package/lib/src/auth.d.ts +2 -1
- package/lib/src/auth.d.ts.map +1 -1
- package/lib/src/auth.js +2 -1
- package/lib/src/auth.js.map +1 -1
- package/lib/src/authToken.d.ts.map +1 -1
- package/lib/src/authToken.js.map +1 -1
- package/lib/src/css-variables.d.ts +51 -17
- package/lib/src/css-variables.d.ts.map +1 -1
- package/lib/src/embed/app.d.ts +1 -0
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +10 -1
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +46 -1
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/base.d.ts.map +1 -1
- package/lib/src/embed/base.js.map +1 -1
- package/lib/src/embed/base.spec.js.map +1 -1
- package/lib/src/embed/events.spec.js +73 -1
- package/lib/src/embed/events.spec.js.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.d.ts +74 -3
- package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.js +7 -0
- package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.d.ts +10 -0
- package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.js +46 -9
- package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.spec.js +155 -0
- package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +1 -0
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +11 -2
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +96 -2
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/sage.d.ts.map +1 -1
- package/lib/src/embed/sage.js.map +1 -1
- package/lib/src/embed/search.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +41 -2
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +42 -3
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/react/index.d.ts.map +1 -1
- package/lib/src/react/index.js +58 -53
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/types.d.ts +730 -32
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +734 -3
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.d.ts +4 -2
- package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.js +4 -2
- package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
- package/lib/src/utils/graphql/preview-service.d.ts.map +1 -1
- package/lib/src/utils/graphql/preview-service.js.map +1 -1
- package/lib/src/utils/processData.d.ts.map +1 -1
- package/lib/src/utils/processData.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +973 -116
- package/package.json +3 -3
- package/src/auth.spec.ts +1 -1
- package/src/auth.ts +2 -1
- package/src/authToken.ts +0 -1
- package/src/css-variables.ts +51 -17
- package/src/embed/app.spec.ts +62 -3
- package/src/embed/app.ts +10 -1
- package/src/embed/base.spec.ts +1 -2
- package/src/embed/base.ts +1 -4
- package/src/embed/events.spec.ts +88 -0
- package/src/embed/hostEventClient/contracts.ts +74 -2
- package/src/embed/hostEventClient/host-event-client.spec.ts +257 -0
- package/src/embed/hostEventClient/host-event-client.ts +70 -15
- package/src/embed/liveboard.spec.ts +126 -2
- package/src/embed/liveboard.ts +11 -2
- package/src/embed/sage.ts +0 -1
- package/src/embed/search.spec.ts +0 -2
- package/src/embed/ts-embed.ts +43 -3
- package/src/react/index.tsx +76 -72
- package/src/types.ts +739 -31
- package/src/utils/graphql/answerService/answerService.ts +4 -5
- package/src/utils/graphql/preview-service.ts +0 -1
- package/src/utils/processData.ts +0 -5
package/src/react/index.tsx
CHANGED
|
@@ -25,84 +25,87 @@ const componentFactory = <T extends typeof TsEmbed, U extends EmbedProps, V exte
|
|
|
25
25
|
// Embed.preRender() method instead of the usual render method, and it will
|
|
26
26
|
// not be destroyed when the component is unmounted.
|
|
27
27
|
isPreRenderedComponent = false,
|
|
28
|
-
) =>
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
const handlePreRenderRendering = (tsEmbed: InstanceType<T>) => {
|
|
50
|
-
tsEmbed.preRender();
|
|
51
|
-
};
|
|
28
|
+
) => {
|
|
29
|
+
const Component = React.forwardRef<InstanceType<T>, U>(
|
|
30
|
+
(props: U, forwardedRef: React.MutableRefObject<InstanceType<T>>) => {
|
|
31
|
+
const ref = React.useRef<HTMLDivElement>(null);
|
|
32
|
+
const { className, style, ...embedProps } = props;
|
|
33
|
+
const { viewConfig, listeners } = getViewPropsAndListeners<Omit<U, 'className' | 'style'>, V>(
|
|
34
|
+
embedProps,
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
const handleDestroy = (tsEmbed: InstanceType<T>) => {
|
|
38
|
+
// do not destroy if it is a preRender component
|
|
39
|
+
if (isPreRenderedComponent) return;
|
|
40
|
+
|
|
41
|
+
// if component is connected to a preRendered component
|
|
42
|
+
if (props.preRenderId) {
|
|
43
|
+
tsEmbed.hidePreRender();
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
tsEmbed.destroy();
|
|
48
|
+
};
|
|
52
49
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
tsEmbed.showPreRender();
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
50
|
+
const handlePreRenderRendering = (tsEmbed: InstanceType<T>) => {
|
|
51
|
+
tsEmbed.preRender();
|
|
52
|
+
};
|
|
59
53
|
|
|
60
|
-
tsEmbed
|
|
61
|
-
|
|
54
|
+
const handleDefaultRendering = (tsEmbed: InstanceType<T>) => {
|
|
55
|
+
// if component is connected to a preRendered component
|
|
56
|
+
if (props.preRenderId) {
|
|
57
|
+
tsEmbed.showPreRender();
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
62
60
|
|
|
63
|
-
|
|
64
|
-
if (isPreRenderedComponent) {
|
|
65
|
-
handlePreRenderRendering(tsEmbed);
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
handleDefaultRendering(tsEmbed);
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
useDeepCompareEffect(() => {
|
|
72
|
-
const tsEmbed = new EmbedConstructor(
|
|
73
|
-
ref!.current,
|
|
74
|
-
deepMerge(
|
|
75
|
-
{
|
|
76
|
-
insertAsSibling: viewConfig.insertAsSibling,
|
|
77
|
-
frameParams: {
|
|
78
|
-
class: viewConfig.insertAsSibling ? className || '' : '',
|
|
79
|
-
},
|
|
80
|
-
},
|
|
81
|
-
viewConfig,
|
|
82
|
-
),
|
|
83
|
-
) as InstanceType<T>;
|
|
84
|
-
Object.keys(listeners).forEach((eventName) => {
|
|
85
|
-
tsEmbed.on(eventName as EmbedEvent, listeners[eventName as EmbedEvent]);
|
|
86
|
-
});
|
|
87
|
-
handleRendering(tsEmbed);
|
|
88
|
-
if (forwardedRef) {
|
|
89
|
-
|
|
90
|
-
forwardedRef.current = tsEmbed;
|
|
91
|
-
}
|
|
92
|
-
return () => {
|
|
93
|
-
handleDestroy(tsEmbed);
|
|
61
|
+
tsEmbed.render();
|
|
94
62
|
};
|
|
95
|
-
}, [viewConfig, listeners]);
|
|
96
63
|
|
|
97
|
-
|
|
64
|
+
const handleRendering = (tsEmbed: InstanceType<T>) => {
|
|
65
|
+
if (isPreRenderedComponent) {
|
|
66
|
+
handlePreRenderRendering(tsEmbed);
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
handleDefaultRendering(tsEmbed);
|
|
70
|
+
};
|
|
98
71
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
72
|
+
useDeepCompareEffect(() => {
|
|
73
|
+
const tsEmbed = new EmbedConstructor(
|
|
74
|
+
ref!.current,
|
|
75
|
+
deepMerge(
|
|
76
|
+
{
|
|
77
|
+
insertAsSibling: viewConfig.insertAsSibling,
|
|
78
|
+
frameParams: {
|
|
79
|
+
class: viewConfig.insertAsSibling ? className || '' : '',
|
|
80
|
+
},
|
|
81
|
+
},
|
|
82
|
+
viewConfig,
|
|
83
|
+
),
|
|
84
|
+
) as InstanceType<T>;
|
|
85
|
+
Object.keys(listeners).forEach((eventName) => {
|
|
86
|
+
tsEmbed.on(eventName as EmbedEvent, listeners[eventName as EmbedEvent]);
|
|
87
|
+
});
|
|
88
|
+
handleRendering(tsEmbed);
|
|
89
|
+
if (forwardedRef) {
|
|
90
|
+
forwardedRef.current = tsEmbed;
|
|
91
|
+
}
|
|
92
|
+
return () => {
|
|
93
|
+
handleDestroy(tsEmbed);
|
|
94
|
+
};
|
|
95
|
+
}, [viewConfig, listeners]);
|
|
96
|
+
|
|
97
|
+
const preRenderStyles = isPreRenderedComponent ? { display: 'none' } : {};
|
|
98
|
+
|
|
99
|
+
return viewConfig.insertAsSibling ? (
|
|
100
|
+
<span data-testid="tsEmbed" ref={ref} style={{ position: 'absolute', ...preRenderStyles }}></span>
|
|
101
|
+
) : (
|
|
102
|
+
<div data-testid="tsEmbed" ref={ref} style={{ ...style, ...preRenderStyles }} className={`ts-embed-container ${className}`}></div>
|
|
103
|
+
);
|
|
104
|
+
},
|
|
105
|
+
);
|
|
106
|
+
Component.displayName = EmbedConstructor.name || 'EmbedComponent';
|
|
107
|
+
return Component;
|
|
108
|
+
};
|
|
106
109
|
|
|
107
110
|
interface SearchProps extends EmbedProps, SearchViewConfig { }
|
|
108
111
|
|
|
@@ -442,6 +445,7 @@ export const SpotterMessage = React.forwardRef<
|
|
|
442
445
|
/>
|
|
443
446
|
);
|
|
444
447
|
});
|
|
448
|
+
SpotterMessage.displayName = 'SpotterMessage';
|
|
445
449
|
|
|
446
450
|
/**
|
|
447
451
|
* React component for PreRendered Conversation embed.
|