@thoughtspot/visual-embed-sdk 1.19.0-alpha.2 → 1.19.0-alpha.3

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 (82) hide show
  1. package/dist/src/auth.d.ts +21 -1
  2. package/dist/src/auth.d.ts.map +1 -1
  3. package/dist/src/embed/base.d.ts +2 -5
  4. package/dist/src/embed/base.d.ts.map +1 -1
  5. package/dist/src/embed/search.d.ts +6 -0
  6. package/dist/src/embed/search.d.ts.map +1 -1
  7. package/dist/src/embed/ts-embed.d.ts +1 -0
  8. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  9. package/dist/src/index.d.ts.map +1 -1
  10. package/dist/src/mixpanel-service.d.ts +3 -1
  11. package/dist/src/mixpanel-service.d.ts.map +1 -1
  12. package/dist/src/react/index.d.ts.map +1 -1
  13. package/dist/src/react/util.d.ts +1 -1
  14. package/dist/src/react/util.d.ts.map +1 -1
  15. package/dist/src/test/test-utils.d.ts +1 -1
  16. package/dist/src/test/test-utils.d.ts.map +1 -1
  17. package/dist/src/types.d.ts +19 -8
  18. package/dist/src/types.d.ts.map +1 -1
  19. package/dist/src/utils.d.ts +1 -0
  20. package/dist/src/utils.d.ts.map +1 -1
  21. package/dist/tsembed.es.js +113 -67
  22. package/dist/tsembed.js +113 -67
  23. package/lib/package.json +1 -1
  24. package/lib/src/auth.d.ts +21 -1
  25. package/lib/src/auth.d.ts.map +1 -1
  26. package/lib/src/auth.js +66 -12
  27. package/lib/src/auth.js.map +1 -1
  28. package/lib/src/embed/base.d.ts +2 -5
  29. package/lib/src/embed/base.d.ts.map +1 -1
  30. package/lib/src/embed/base.js +8 -36
  31. package/lib/src/embed/base.js.map +1 -1
  32. package/lib/src/embed/base.spec.js +0 -9
  33. package/lib/src/embed/base.spec.js.map +1 -1
  34. package/lib/src/embed/search.d.ts +6 -0
  35. package/lib/src/embed/search.d.ts.map +1 -1
  36. package/lib/src/embed/search.js.map +1 -1
  37. package/lib/src/embed/ts-embed.d.ts +1 -0
  38. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  39. package/lib/src/embed/ts-embed.js +23 -5
  40. package/lib/src/embed/ts-embed.js.map +1 -1
  41. package/lib/src/embed/ts-embed.spec.js +15 -1
  42. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  43. package/lib/src/index.d.ts.map +1 -1
  44. package/lib/src/index.js.map +1 -1
  45. package/lib/src/mixpanel-service.d.ts +3 -1
  46. package/lib/src/mixpanel-service.d.ts.map +1 -1
  47. package/lib/src/mixpanel-service.js +18 -15
  48. package/lib/src/mixpanel-service.js.map +1 -1
  49. package/lib/src/mixpanel-service.spec.js +20 -4
  50. package/lib/src/mixpanel-service.spec.js.map +1 -1
  51. package/lib/src/react/index.d.ts.map +1 -1
  52. package/lib/src/react/index.js +8 -4
  53. package/lib/src/react/index.js.map +1 -1
  54. package/lib/src/react/index.spec.js +3 -3
  55. package/lib/src/react/index.spec.js.map +1 -1
  56. package/lib/src/react/util.d.ts +1 -1
  57. package/lib/src/react/util.d.ts.map +1 -1
  58. package/lib/src/test/test-utils.d.ts +1 -1
  59. package/lib/src/test/test-utils.d.ts.map +1 -1
  60. package/lib/src/types.d.ts +19 -8
  61. package/lib/src/types.d.ts.map +1 -1
  62. package/lib/src/types.js +7 -0
  63. package/lib/src/types.js.map +1 -1
  64. package/lib/src/utils.d.ts +1 -0
  65. package/lib/src/utils.d.ts.map +1 -1
  66. package/lib/src/utils.js +11 -0
  67. package/lib/src/utils.js.map +1 -1
  68. package/lib/src/visual-embed-sdk.d.ts +42 -7
  69. package/package.json +1 -1
  70. package/src/auth.ts +78 -19
  71. package/src/embed/base.spec.ts +0 -10
  72. package/src/embed/base.ts +18 -37
  73. package/src/embed/search.ts +6 -0
  74. package/src/embed/ts-embed.spec.ts +15 -0
  75. package/src/embed/ts-embed.ts +22 -5
  76. package/src/index.ts +1 -1
  77. package/src/mixpanel-service.spec.ts +26 -5
  78. package/src/mixpanel-service.ts +19 -20
  79. package/src/react/index.spec.tsx +3 -7
  80. package/src/react/index.tsx +16 -6
  81. package/src/types.ts +11 -0
  82. package/src/utils.ts +13 -0
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import useDeepCompareEffect from 'use-deep-compare-effect';
3
+ import { deepMerge } from '../utils';
3
4
  import {
4
5
  SearchBarEmbed as _SearchBarEmbed,
5
6
  SearchBarViewConfig,
@@ -31,9 +32,18 @@ const componentFactory = <
31
32
  V
32
33
  >(embedProps);
33
34
  useDeepCompareEffect(() => {
34
- const tsEmbed = new EmbedConstructor(ref!.current, {
35
- ...viewConfig,
36
- });
35
+ const tsEmbed = new EmbedConstructor(
36
+ ref!.current,
37
+ deepMerge(
38
+ {
39
+ insertAsSibling: true,
40
+ frameParams: {
41
+ class: className || '',
42
+ },
43
+ },
44
+ viewConfig,
45
+ ),
46
+ );
37
47
  Object.keys(listeners).forEach((eventName) => {
38
48
  tsEmbed.on(
39
49
  eventName as EmbedEvent,
@@ -48,11 +58,11 @@ const componentFactory = <
48
58
  }, [viewConfig, listeners]);
49
59
 
50
60
  return (
51
- <div
61
+ <span
52
62
  data-testid="tsEmbed"
53
63
  ref={ref}
54
- className={className}
55
- ></div>
64
+ style={{ position: 'absolute' }}
65
+ ></span>
56
66
  );
57
67
  },
58
68
  );
package/src/types.ts CHANGED
@@ -368,6 +368,10 @@ export interface ViewConfig {
368
368
  * @default ''
369
369
  */
370
370
  customizations?: CustomisationsInterface;
371
+ /**
372
+ * Insert as a sibling of the target container, instead of appending to a child inside it.
373
+ */
374
+ insertAsSibling?: boolean;
371
375
  }
372
376
 
373
377
  /**
@@ -1143,6 +1147,13 @@ export enum HostEvent {
1143
1147
  * @version SDK: 1.19.0 | ThoughtSpot: 9.0.0.cl, 9.0.1-sw
1144
1148
  */
1145
1149
  ManagePipelines = 'manage-pipeline',
1150
+ /**
1151
+ * Triggers the Reset search in answer
1152
+ * @example
1153
+ * searchEmbed.trigger(HostEvent.SearchReset
1154
+ * @version SDK: 1.19.0 | ThoughtSpot: 9.2.0.cl, 9.0.1-sw
1155
+ */
1156
+ ResetSearch = 'resetSearch',
1146
1157
  }
1147
1158
 
1148
1159
  /**
package/src/utils.ts CHANGED
@@ -219,3 +219,16 @@ export function getDOMNode(domSelector: DOMSelector): HTMLElement {
219
219
  ? document.querySelector(domSelector)
220
220
  : domSelector;
221
221
  }
222
+
223
+ export const deepMerge = (target: any, source: any) => {
224
+ // Iterate through `source` properties and if an `Object` set property to merge of `target` and `source` properties
225
+ // eslint-disable-next-line no-restricted-syntax
226
+ for (const key of Object.keys(source)) {
227
+ if (source[key] instanceof Object)
228
+ Object.assign(source[key], deepMerge(target[key], source[key]));
229
+ }
230
+
231
+ // Join `target` and modified `source`
232
+ Object.assign(target || {}, source);
233
+ return target;
234
+ };