@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.
Files changed (172) hide show
  1. package/cjs/package.json +3 -3
  2. package/cjs/src/auth.d.ts +2 -1
  3. package/cjs/src/auth.d.ts.map +1 -1
  4. package/cjs/src/auth.js +2 -1
  5. package/cjs/src/auth.js.map +1 -1
  6. package/cjs/src/authToken.d.ts.map +1 -1
  7. package/cjs/src/authToken.js.map +1 -1
  8. package/cjs/src/css-variables.d.ts +51 -17
  9. package/cjs/src/css-variables.d.ts.map +1 -1
  10. package/cjs/src/embed/app.d.ts +1 -0
  11. package/cjs/src/embed/app.d.ts.map +1 -1
  12. package/cjs/src/embed/app.js +10 -1
  13. package/cjs/src/embed/app.js.map +1 -1
  14. package/cjs/src/embed/app.spec.js +46 -1
  15. package/cjs/src/embed/app.spec.js.map +1 -1
  16. package/cjs/src/embed/base.d.ts.map +1 -1
  17. package/cjs/src/embed/base.js.map +1 -1
  18. package/cjs/src/embed/base.spec.js.map +1 -1
  19. package/cjs/src/embed/events.spec.js +72 -0
  20. package/cjs/src/embed/events.spec.js.map +1 -1
  21. package/cjs/src/embed/hostEventClient/contracts.d.ts +74 -3
  22. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  23. package/cjs/src/embed/hostEventClient/contracts.js +7 -0
  24. package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
  25. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +10 -0
  26. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  27. package/cjs/src/embed/hostEventClient/host-event-client.js +46 -9
  28. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  29. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +155 -0
  30. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  31. package/cjs/src/embed/liveboard.d.ts +1 -0
  32. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  33. package/cjs/src/embed/liveboard.js +11 -2
  34. package/cjs/src/embed/liveboard.js.map +1 -1
  35. package/cjs/src/embed/liveboard.spec.js +96 -2
  36. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  37. package/cjs/src/embed/sage.d.ts.map +1 -1
  38. package/cjs/src/embed/sage.js.map +1 -1
  39. package/cjs/src/embed/search.spec.js.map +1 -1
  40. package/cjs/src/embed/ts-embed.d.ts +41 -2
  41. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  42. package/cjs/src/embed/ts-embed.js +41 -2
  43. package/cjs/src/embed/ts-embed.js.map +1 -1
  44. package/cjs/src/react/index.d.ts.map +1 -1
  45. package/cjs/src/react/index.js +58 -53
  46. package/cjs/src/react/index.js.map +1 -1
  47. package/cjs/src/types.d.ts +730 -32
  48. package/cjs/src/types.d.ts.map +1 -1
  49. package/cjs/src/types.js +734 -3
  50. package/cjs/src/types.js.map +1 -1
  51. package/cjs/src/utils/graphql/answerService/answerService.d.ts +4 -2
  52. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  53. package/cjs/src/utils/graphql/answerService/answerService.js +4 -2
  54. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  55. package/cjs/src/utils/graphql/preview-service.d.ts.map +1 -1
  56. package/cjs/src/utils/graphql/preview-service.js.map +1 -1
  57. package/cjs/src/utils/processData.d.ts.map +1 -1
  58. package/cjs/src/utils/processData.js.map +1 -1
  59. package/dist/{index-DyX-x6uN.js → index-DW2wEHqy.js} +1 -1
  60. package/dist/src/auth.d.ts +2 -1
  61. package/dist/src/auth.d.ts.map +1 -1
  62. package/dist/src/authToken.d.ts.map +1 -1
  63. package/dist/src/css-variables.d.ts +51 -17
  64. package/dist/src/css-variables.d.ts.map +1 -1
  65. package/dist/src/embed/app.d.ts +1 -0
  66. package/dist/src/embed/app.d.ts.map +1 -1
  67. package/dist/src/embed/base.d.ts.map +1 -1
  68. package/dist/src/embed/hostEventClient/contracts.d.ts +74 -3
  69. package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  70. package/dist/src/embed/hostEventClient/host-event-client.d.ts +10 -0
  71. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  72. package/dist/src/embed/liveboard.d.ts +1 -0
  73. package/dist/src/embed/liveboard.d.ts.map +1 -1
  74. package/dist/src/embed/sage.d.ts.map +1 -1
  75. package/dist/src/embed/ts-embed.d.ts +41 -2
  76. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  77. package/dist/src/react/index.d.ts.map +1 -1
  78. package/dist/src/types.d.ts +730 -32
  79. package/dist/src/types.d.ts.map +1 -1
  80. package/dist/src/utils/graphql/answerService/answerService.d.ts +4 -2
  81. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  82. package/dist/src/utils/graphql/preview-service.d.ts.map +1 -1
  83. package/dist/src/utils/processData.d.ts.map +1 -1
  84. package/dist/tsembed-react.es.js +917 -77
  85. package/dist/tsembed-react.js +915 -75
  86. package/dist/tsembed.es.js +859 -24
  87. package/dist/tsembed.js +857 -22
  88. package/dist/visual-embed-sdk-react-full.d.ts +892 -54
  89. package/dist/visual-embed-sdk-react.d.ts +892 -54
  90. package/dist/visual-embed-sdk.d.ts +912 -56
  91. package/lib/package.json +3 -3
  92. package/lib/src/auth.d.ts +2 -1
  93. package/lib/src/auth.d.ts.map +1 -1
  94. package/lib/src/auth.js +2 -1
  95. package/lib/src/auth.js.map +1 -1
  96. package/lib/src/authToken.d.ts.map +1 -1
  97. package/lib/src/authToken.js.map +1 -1
  98. package/lib/src/css-variables.d.ts +51 -17
  99. package/lib/src/css-variables.d.ts.map +1 -1
  100. package/lib/src/embed/app.d.ts +1 -0
  101. package/lib/src/embed/app.d.ts.map +1 -1
  102. package/lib/src/embed/app.js +10 -1
  103. package/lib/src/embed/app.js.map +1 -1
  104. package/lib/src/embed/app.spec.js +46 -1
  105. package/lib/src/embed/app.spec.js.map +1 -1
  106. package/lib/src/embed/base.d.ts.map +1 -1
  107. package/lib/src/embed/base.js.map +1 -1
  108. package/lib/src/embed/base.spec.js.map +1 -1
  109. package/lib/src/embed/events.spec.js +73 -1
  110. package/lib/src/embed/events.spec.js.map +1 -1
  111. package/lib/src/embed/hostEventClient/contracts.d.ts +74 -3
  112. package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  113. package/lib/src/embed/hostEventClient/contracts.js +7 -0
  114. package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
  115. package/lib/src/embed/hostEventClient/host-event-client.d.ts +10 -0
  116. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  117. package/lib/src/embed/hostEventClient/host-event-client.js +46 -9
  118. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  119. package/lib/src/embed/hostEventClient/host-event-client.spec.js +155 -0
  120. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  121. package/lib/src/embed/liveboard.d.ts +1 -0
  122. package/lib/src/embed/liveboard.d.ts.map +1 -1
  123. package/lib/src/embed/liveboard.js +11 -2
  124. package/lib/src/embed/liveboard.js.map +1 -1
  125. package/lib/src/embed/liveboard.spec.js +96 -2
  126. package/lib/src/embed/liveboard.spec.js.map +1 -1
  127. package/lib/src/embed/sage.d.ts.map +1 -1
  128. package/lib/src/embed/sage.js.map +1 -1
  129. package/lib/src/embed/search.spec.js.map +1 -1
  130. package/lib/src/embed/ts-embed.d.ts +41 -2
  131. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  132. package/lib/src/embed/ts-embed.js +42 -3
  133. package/lib/src/embed/ts-embed.js.map +1 -1
  134. package/lib/src/react/index.d.ts.map +1 -1
  135. package/lib/src/react/index.js +58 -53
  136. package/lib/src/react/index.js.map +1 -1
  137. package/lib/src/types.d.ts +730 -32
  138. package/lib/src/types.d.ts.map +1 -1
  139. package/lib/src/types.js +734 -3
  140. package/lib/src/types.js.map +1 -1
  141. package/lib/src/utils/graphql/answerService/answerService.d.ts +4 -2
  142. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  143. package/lib/src/utils/graphql/answerService/answerService.js +4 -2
  144. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  145. package/lib/src/utils/graphql/preview-service.d.ts.map +1 -1
  146. package/lib/src/utils/graphql/preview-service.js.map +1 -1
  147. package/lib/src/utils/processData.d.ts.map +1 -1
  148. package/lib/src/utils/processData.js.map +1 -1
  149. package/lib/src/visual-embed-sdk.d.ts +973 -116
  150. package/package.json +3 -3
  151. package/src/auth.spec.ts +1 -1
  152. package/src/auth.ts +2 -1
  153. package/src/authToken.ts +0 -1
  154. package/src/css-variables.ts +51 -17
  155. package/src/embed/app.spec.ts +62 -3
  156. package/src/embed/app.ts +10 -1
  157. package/src/embed/base.spec.ts +1 -2
  158. package/src/embed/base.ts +1 -4
  159. package/src/embed/events.spec.ts +88 -0
  160. package/src/embed/hostEventClient/contracts.ts +74 -2
  161. package/src/embed/hostEventClient/host-event-client.spec.ts +257 -0
  162. package/src/embed/hostEventClient/host-event-client.ts +70 -15
  163. package/src/embed/liveboard.spec.ts +126 -2
  164. package/src/embed/liveboard.ts +11 -2
  165. package/src/embed/sage.ts +0 -1
  166. package/src/embed/search.spec.ts +0 -2
  167. package/src/embed/ts-embed.ts +43 -3
  168. package/src/react/index.tsx +76 -72
  169. package/src/types.ts +739 -31
  170. package/src/utils/graphql/answerService/answerService.ts +4 -5
  171. package/src/utils/graphql/preview-service.ts +0 -1
  172. package/src/utils/processData.ts +0 -5
@@ -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
- ) => React.forwardRef<InstanceType<T>, U>(
29
- (props: U, forwardedRef: React.MutableRefObject<InstanceType<T>>) => {
30
- const ref = React.useRef<HTMLDivElement>(null);
31
- const { className, style, ...embedProps } = props;
32
- const { viewConfig, listeners } = getViewPropsAndListeners<Omit<U, 'className' | 'style'>, V>(
33
- embedProps,
34
- );
35
-
36
- const handleDestroy = (tsEmbed: InstanceType<T>) => {
37
- // do not destroy if it is a preRender component
38
- if (isPreRenderedComponent) return;
39
-
40
- // if component is connected to a preRendered component
41
- if (props.preRenderId) {
42
- tsEmbed.hidePreRender();
43
- return;
44
- }
45
-
46
- tsEmbed.destroy();
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
- const handleDefaultRendering = (tsEmbed: InstanceType<T>) => {
54
- // if component is connected to a preRendered component
55
- if (props.preRenderId) {
56
- tsEmbed.showPreRender();
57
- return;
58
- }
50
+ const handlePreRenderRendering = (tsEmbed: InstanceType<T>) => {
51
+ tsEmbed.preRender();
52
+ };
59
53
 
60
- tsEmbed.render();
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
- const handleRendering = (tsEmbed: InstanceType<T>) => {
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
- const preRenderStyles = isPreRenderedComponent ? { display: 'none' } : {};
64
+ const handleRendering = (tsEmbed: InstanceType<T>) => {
65
+ if (isPreRenderedComponent) {
66
+ handlePreRenderRendering(tsEmbed);
67
+ return;
68
+ }
69
+ handleDefaultRendering(tsEmbed);
70
+ };
98
71
 
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
- );
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.