@thoughtspot/visual-embed-sdk 1.49.2 → 1.50.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.
Files changed (153) hide show
  1. package/cjs/package.json +4 -10
  2. package/cjs/src/authToken.spec.js +5 -0
  3. package/cjs/src/authToken.spec.js.map +1 -1
  4. package/cjs/src/embed/app.d.ts +7 -1
  5. package/cjs/src/embed/app.d.ts.map +1 -1
  6. package/cjs/src/embed/app.js +6 -0
  7. package/cjs/src/embed/app.js.map +1 -1
  8. package/cjs/src/embed/app.spec.js +11 -2
  9. package/cjs/src/embed/app.spec.js.map +1 -1
  10. package/cjs/src/embed/conversation.d.ts +12 -0
  11. package/cjs/src/embed/conversation.d.ts.map +1 -1
  12. package/cjs/src/embed/conversation.js.map +1 -1
  13. package/cjs/src/embed/conversation.spec.js +30 -0
  14. package/cjs/src/embed/conversation.spec.js.map +1 -1
  15. package/cjs/src/embed/embedConfig.spec.d.ts +2 -0
  16. package/cjs/src/embed/embedConfig.spec.d.ts.map +1 -0
  17. package/cjs/src/embed/embedConfig.spec.js +74 -0
  18. package/cjs/src/embed/embedConfig.spec.js.map +1 -0
  19. package/cjs/src/embed/host-events.spec.d.ts +2 -0
  20. package/cjs/src/embed/host-events.spec.d.ts.map +1 -0
  21. package/cjs/src/embed/host-events.spec.js +1219 -0
  22. package/cjs/src/embed/host-events.spec.js.map +1 -0
  23. package/cjs/src/embed/liveboard.d.ts +6 -0
  24. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  25. package/cjs/src/embed/liveboard.js.map +1 -1
  26. package/cjs/src/embed/spotter-viz-utils.d.ts +29 -0
  27. package/cjs/src/embed/spotter-viz-utils.d.ts.map +1 -1
  28. package/cjs/src/embed/spotter-viz-utils.js.map +1 -1
  29. package/cjs/src/index.d.ts +2 -2
  30. package/cjs/src/index.d.ts.map +1 -1
  31. package/cjs/src/index.js.map +1 -1
  32. package/cjs/src/mixpanel-service.spec.js +14 -0
  33. package/cjs/src/mixpanel-service.spec.js.map +1 -1
  34. package/cjs/src/types.d.ts +93 -6
  35. package/cjs/src/types.d.ts.map +1 -1
  36. package/cjs/src/types.js +88 -3
  37. package/cjs/src/types.js.map +1 -1
  38. package/cjs/src/utils/custom-actions.spec.js +26 -0
  39. package/cjs/src/utils/custom-actions.spec.js.map +1 -1
  40. package/cjs/src/utils/graphql/answerService/answerService.spec.js +15 -0
  41. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  42. package/cjs/src/utils/processData.spec.js +30 -0
  43. package/cjs/src/utils/processData.spec.js.map +1 -1
  44. package/cjs/src/utils/reporting.spec.js +21 -0
  45. package/cjs/src/utils/reporting.spec.js.map +1 -1
  46. package/cjs/src/utils/sessionInfoService.spec.d.ts +2 -0
  47. package/cjs/src/utils/sessionInfoService.spec.d.ts.map +1 -0
  48. package/cjs/src/utils/sessionInfoService.spec.js +130 -0
  49. package/cjs/src/utils/sessionInfoService.spec.js.map +1 -0
  50. package/cjs/src/utils.js +2 -3
  51. package/cjs/src/utils.js.map +1 -1
  52. package/cjs/src/utils.spec.js +158 -0
  53. package/cjs/src/utils.spec.js.map +1 -1
  54. package/dist/{index-CS7yJ2Jj.js → index-B5xoN6Cp.js} +303 -187
  55. package/dist/src/embed/app.d.ts +7 -1
  56. package/dist/src/embed/app.d.ts.map +1 -1
  57. package/dist/src/embed/conversation.d.ts +12 -0
  58. package/dist/src/embed/conversation.d.ts.map +1 -1
  59. package/dist/src/embed/embedConfig.spec.d.ts +2 -0
  60. package/dist/src/embed/embedConfig.spec.d.ts.map +1 -0
  61. package/dist/src/embed/host-events.spec.d.ts +2 -0
  62. package/dist/src/embed/host-events.spec.d.ts.map +1 -0
  63. package/dist/src/embed/liveboard.d.ts +6 -0
  64. package/dist/src/embed/liveboard.d.ts.map +1 -1
  65. package/dist/src/embed/spotter-viz-utils.d.ts +29 -0
  66. package/dist/src/embed/spotter-viz-utils.d.ts.map +1 -1
  67. package/dist/src/index.d.ts +2 -2
  68. package/dist/src/index.d.ts.map +1 -1
  69. package/dist/src/types.d.ts +93 -6
  70. package/dist/src/types.d.ts.map +1 -1
  71. package/dist/src/utils/sessionInfoService.spec.d.ts +2 -0
  72. package/dist/src/utils/sessionInfoService.spec.d.ts.map +1 -0
  73. package/dist/tsembed-react.es.js +126 -18
  74. package/dist/tsembed-react.js +427 -203
  75. package/dist/tsembed.es.js +126 -18
  76. package/dist/tsembed.js +427 -203
  77. package/dist/visual-embed-sdk-react-full.d.ts +147 -7
  78. package/dist/visual-embed-sdk-react.d.ts +147 -7
  79. package/dist/visual-embed-sdk.d.ts +147 -7
  80. package/lib/package.json +4 -10
  81. package/lib/src/authToken.spec.js +5 -0
  82. package/lib/src/authToken.spec.js.map +1 -1
  83. package/lib/src/embed/app.d.ts +7 -1
  84. package/lib/src/embed/app.d.ts.map +1 -1
  85. package/lib/src/embed/app.js +6 -0
  86. package/lib/src/embed/app.js.map +1 -1
  87. package/lib/src/embed/app.spec.js +11 -2
  88. package/lib/src/embed/app.spec.js.map +1 -1
  89. package/lib/src/embed/conversation.d.ts +12 -0
  90. package/lib/src/embed/conversation.d.ts.map +1 -1
  91. package/lib/src/embed/conversation.js.map +1 -1
  92. package/lib/src/embed/conversation.spec.js +30 -0
  93. package/lib/src/embed/conversation.spec.js.map +1 -1
  94. package/lib/src/embed/embedConfig.spec.d.ts +2 -0
  95. package/lib/src/embed/embedConfig.spec.d.ts.map +1 -0
  96. package/lib/src/embed/embedConfig.spec.js +72 -0
  97. package/lib/src/embed/embedConfig.spec.js.map +1 -0
  98. package/lib/src/embed/host-events.spec.d.ts +2 -0
  99. package/lib/src/embed/host-events.spec.d.ts.map +1 -0
  100. package/lib/src/embed/host-events.spec.js +1216 -0
  101. package/lib/src/embed/host-events.spec.js.map +1 -0
  102. package/lib/src/embed/liveboard.d.ts +6 -0
  103. package/lib/src/embed/liveboard.d.ts.map +1 -1
  104. package/lib/src/embed/liveboard.js.map +1 -1
  105. package/lib/src/embed/spotter-viz-utils.d.ts +29 -0
  106. package/lib/src/embed/spotter-viz-utils.d.ts.map +1 -1
  107. package/lib/src/embed/spotter-viz-utils.js.map +1 -1
  108. package/lib/src/index.d.ts +2 -2
  109. package/lib/src/index.d.ts.map +1 -1
  110. package/lib/src/index.js.map +1 -1
  111. package/lib/src/mixpanel-service.spec.js +14 -0
  112. package/lib/src/mixpanel-service.spec.js.map +1 -1
  113. package/lib/src/types.d.ts +93 -6
  114. package/lib/src/types.d.ts.map +1 -1
  115. package/lib/src/types.js +88 -3
  116. package/lib/src/types.js.map +1 -1
  117. package/lib/src/utils/custom-actions.spec.js +26 -0
  118. package/lib/src/utils/custom-actions.spec.js.map +1 -1
  119. package/lib/src/utils/graphql/answerService/answerService.spec.js +15 -0
  120. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  121. package/lib/src/utils/processData.spec.js +30 -0
  122. package/lib/src/utils/processData.spec.js.map +1 -1
  123. package/lib/src/utils/reporting.spec.js +21 -0
  124. package/lib/src/utils/reporting.spec.js.map +1 -1
  125. package/lib/src/utils/sessionInfoService.spec.d.ts +2 -0
  126. package/lib/src/utils/sessionInfoService.spec.d.ts.map +1 -0
  127. package/lib/src/utils/sessionInfoService.spec.js +127 -0
  128. package/lib/src/utils/sessionInfoService.spec.js.map +1 -0
  129. package/lib/src/utils.js +1 -1
  130. package/lib/src/utils.js.map +1 -1
  131. package/lib/src/utils.spec.js +159 -1
  132. package/lib/src/utils.spec.js.map +1 -1
  133. package/lib/src/visual-embed-sdk.d.ts +147 -7
  134. package/package.json +4 -10
  135. package/src/authToken.spec.ts +6 -0
  136. package/src/embed/app.spec.ts +15 -2
  137. package/src/embed/app.ts +13 -1
  138. package/src/embed/conversation.spec.ts +32 -0
  139. package/src/embed/conversation.ts +12 -0
  140. package/src/embed/embedConfig.spec.ts +79 -0
  141. package/src/embed/host-events.spec.ts +1635 -0
  142. package/src/embed/liveboard.ts +6 -0
  143. package/src/embed/spotter-viz-utils.ts +30 -0
  144. package/src/index.ts +2 -1
  145. package/src/mixpanel-service.spec.ts +15 -0
  146. package/src/types.ts +96 -6
  147. package/src/utils/custom-actions.spec.ts +28 -0
  148. package/src/utils/graphql/answerService/answerService.spec.ts +18 -0
  149. package/src/utils/processData.spec.ts +32 -0
  150. package/src/utils/reporting.spec.ts +27 -0
  151. package/src/utils/sessionInfoService.spec.ts +151 -0
  152. package/src/utils.spec.ts +195 -0
  153. package/src/utils.ts +1 -1
@@ -1,4 +1,4 @@
1
- /* @thoughtspot/visual-embed-sdk version 1.49.2 */
1
+ /* @thoughtspot/visual-embed-sdk version 1.50.0 */
2
2
  'use client';
3
3
  import * as React from 'react';
4
4
  import React__default, { useRef, useCallback } from 'react';
@@ -141,28 +141,45 @@ const isObject$1 = (obj) => {
141
141
  }
142
142
  return false;
143
143
  };
144
- const merge = (...objects) => objects.reduce((result, current) => {
144
+ const UNSAFE_KEYS = new Set([
145
+ "__proto__",
146
+ "constructor",
147
+ "prototype",
148
+ "toString",
149
+ "valueOf",
150
+ "hasOwnProperty",
151
+ "isPrototypeOf",
152
+ "propertyIsEnumerable",
153
+ "toLocaleString",
154
+ ]);
155
+ const merge$1 = (...objects) => objects.reduce((result, current) => {
156
+ if (current === undefined) {
157
+ return result;
158
+ }
145
159
  if (Array.isArray(current)) {
146
160
  throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");
147
161
  }
148
162
  Object.keys(current).forEach((key) => {
149
- if (["__proto__", "constructor", "prototype"].includes(key)) {
163
+ if (UNSAFE_KEYS.has(key)) {
150
164
  return;
151
165
  }
152
166
  if (Array.isArray(result[key]) && Array.isArray(current[key])) {
153
- result[key] = merge.options.mergeArrays
154
- ? merge.options.uniqueArrayItems
167
+ result[key] = merge$1.options.mergeArrays
168
+ ? merge$1.options.uniqueArrayItems
155
169
  ? Array.from(new Set(result[key].concat(current[key])))
156
170
  : [...result[key], ...current[key]]
157
171
  : current[key];
158
172
  }
159
173
  else if (isObject$1(result[key]) && isObject$1(current[key])) {
160
- result[key] = merge(result[key], current[key]);
174
+ result[key] = merge$1(result[key], current[key]);
175
+ }
176
+ else if (!isObject$1(result[key]) && isObject$1(current[key])) {
177
+ result[key] = merge$1(current[key], undefined);
161
178
  }
162
179
  else {
163
180
  result[key] =
164
181
  current[key] === undefined
165
- ? merge.options.allowUndefinedOverrides
182
+ ? merge$1.options.allowUndefinedOverrides
166
183
  ? current[key]
167
184
  : result[key]
168
185
  : current[key];
@@ -175,11 +192,11 @@ const defaultOptions = {
175
192
  mergeArrays: true,
176
193
  uniqueArrayItems: true,
177
194
  };
178
- merge.options = defaultOptions;
179
- merge.withOptions = (options, ...objects) => {
180
- merge.options = Object.assign(Object.assign({}, defaultOptions), options);
181
- const result = merge(...objects);
182
- merge.options = defaultOptions;
195
+ merge$1.options = defaultOptions;
196
+ merge$1.withOptions = (options, ...objects) => {
197
+ merge$1.options = Object.assign(Object.assign({}, defaultOptions), options);
198
+ const result = merge$1(...objects);
199
+ merge$1.options = defaultOptions;
183
200
  return result;
184
201
  };
185
202
 
@@ -1991,10 +2008,11 @@ var EmbedEvent;
1991
2008
  */
1992
2009
  EmbedEvent["EmbedPageContextChanged"] = "EmbedPageContextChanged";
1993
2010
  /**
1994
- * Represents a special embed event that is triggered whenever any host event is subscribed.
2011
+ * Represents a special embed event that is triggered whenever any host event is
2012
+ * subscribed.
1995
2013
  *
1996
- * You can listen to this event when you need to dispatch a host event during load or render,
1997
- * particularly in situations where timing issues may occur.
2014
+ * You can listen to this event when you need to dispatch a host event during load or
2015
+ * render, particularly in situations where timing issues may occur.
1998
2016
  *
1999
2017
  * @example
2000
2018
  * ```js
@@ -4234,6 +4252,24 @@ var HostEvent;
4234
4252
  * ```
4235
4253
  */
4236
4254
  HostEvent["InitSpotterVizConversation"] = "InitSpotterVizConversation";
4255
+ /**
4256
+ * Opens the SpotterViz panel.
4257
+ * @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
4258
+ * @example
4259
+ * ```js
4260
+ * liveboardEmbed.trigger(HostEvent.OpenSpotterVizPanel);
4261
+ * ```
4262
+ */
4263
+ HostEvent["OpenSpotterVizPanel"] = "OpenSpotterVizPanel";
4264
+ /**
4265
+ * Closes the SpotterViz panel.
4266
+ * @version SDK: 1.50.0 | ThoughtSpot Cloud: 26.7.0.cl
4267
+ * @example
4268
+ * ```js
4269
+ * liveboardEmbed.trigger(HostEvent.CloseSpotterVizPanel);
4270
+ * ```
4271
+ */
4272
+ HostEvent["CloseSpotterVizPanel"] = "CloseSpotterVizPanel";
4237
4273
  /**
4238
4274
  * Clears browser cache and fetches new data for liveboard ChartViz Containers.
4239
4275
  * Requires `enableLiveboardDataCache` to be enabled.
@@ -6158,6 +6194,72 @@ var Action;
6158
6194
  * @version SDK: 1.49.0 | ThoughtSpot Cloud: 26.6.0.cl
6159
6195
  */
6160
6196
  Action["RefreshLiveboardBrowserCache"] = "refreshLiveboardBrowserCache";
6197
+ /**
6198
+ * Controls visibility and disable state of the share action
6199
+ * in the Spotter Analyst interface.
6200
+ * @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
6201
+ * @example
6202
+ * ```js
6203
+ * hiddenActions: [Action.SpotterAnalystShare]
6204
+ * disabledActions: [Action.SpotterAnalystShare]
6205
+ * ```
6206
+ */
6207
+ Action["SpotterAnalystShare"] = "spotterAnalystShare";
6208
+ /**
6209
+ * Controls visibility and disable state of the edit action
6210
+ * in the Spotter Analyst interface.
6211
+ * @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
6212
+ * @example
6213
+ * ```js
6214
+ * hiddenActions: [Action.SpotterAnalystEdit]
6215
+ * disabledActions: [Action.SpotterAnalystEdit]
6216
+ * ```
6217
+ */
6218
+ Action["SpotterAnalystEdit"] = "spotterAnalystEdit";
6219
+ /**
6220
+ * Controls visibility and disable state of the create action
6221
+ * in the Spotter Analyst interface.
6222
+ * @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
6223
+ * @example
6224
+ * ```js
6225
+ * hiddenActions: [Action.SpotterAnalystCreate]
6226
+ * disabledActions: [Action.SpotterAnalystCreate]
6227
+ * ```
6228
+ */
6229
+ Action["SpotterAnalystCreate"] = "spotterAnalystCreate";
6230
+ /**
6231
+ * Controls visibility and disable state of the delete action
6232
+ * in the Spotter Analyst interface.
6233
+ * @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
6234
+ * @example
6235
+ * ```js
6236
+ * hiddenActions: [Action.SpotterAnalystDelete]
6237
+ * disabledActions: [Action.SpotterAnalystDelete]
6238
+ * ```
6239
+ */
6240
+ Action["SpotterAnalystDelete"] = "spotterAnalystDelete";
6241
+ /**
6242
+ * Controls visibility and disable state of the make a copy action
6243
+ * in the Spotter Analyst interface.
6244
+ * @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
6245
+ * @example
6246
+ * ```js
6247
+ * hiddenActions: [Action.SpotterAnalystMakeACopy]
6248
+ * disabledActions: [Action.SpotterAnalystMakeACopy]
6249
+ * ```
6250
+ */
6251
+ Action["SpotterAnalystMakeACopy"] = "spotterAnalystMakeACopy";
6252
+ /**
6253
+ * Controls visibility and disable state of the sidebar
6254
+ * in the Spotter Analyst interface.
6255
+ * @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
6256
+ * @example
6257
+ * ```js
6258
+ * hiddenActions: [Action.SpotterAnalystSidebar]
6259
+ * disabledActions: [Action.SpotterAnalystSidebar]
6260
+ * ```
6261
+ */
6262
+ Action["SpotterAnalystSidebar"] = "spotterAnalystSidebar";
6161
6263
  })(Action || (Action = {}));
6162
6264
  var PrefetchFeatures;
6163
6265
  (function (PrefetchFeatures) {
@@ -6623,7 +6725,7 @@ var TableContentDensity;
6623
6725
  TableContentDensity["Compact"] = "COMPACT";
6624
6726
  })(TableContentDensity || (TableContentDensity = {}));
6625
6727
 
6626
- var version$1="1.49.2";var pkg = {version:version$1};
6728
+ var version$1="1.50.0";var pkg = {version:version$1};
6627
6729
 
6628
6730
  const { version } = pkg;
6629
6731
 
@@ -6991,7 +7093,7 @@ function querySelectorAcrossShadowRoot(selector, referenceNode) {
6991
7093
  }
6992
7094
  return null;
6993
7095
  }
6994
- const deepMerge = (target, source) => merge(target, source);
7096
+ const deepMerge = (target, source) => merge$1(target, source);
6995
7097
  const getOperationNameFromQuery = (query) => {
6996
7098
  const regex = /(?:query|mutation)\s+(\w+)/;
6997
7099
  const matches = query.match(regex);
@@ -9193,7 +9295,7 @@ class AnswerService {
9193
9295
  async getTML() {
9194
9296
  const { object } = await this.executeQuery(getAnswerTML, {});
9195
9297
  const edoc = object[0].edoc;
9196
- const YAML = await import('./index-CS7yJ2Jj.js');
9298
+ const YAML = await import('./index-B5xoN6Cp.js');
9197
9299
  const parsedDoc = YAML.parse(edoc);
9198
9300
  return {
9199
9301
  answer: {
@@ -22862,6 +22964,12 @@ let AppEmbed$1 = class AppEmbed extends V1Embed {
22862
22964
  }
22863
22965
  if (discoveryExperience.homePage === HomePage.Focused) {
22864
22966
  params[Param.HomepageVersion] = HomePage.Focused;
22967
+ // The Focused (V4) homepage experience requires the updated
22968
+ // Spotter chat prompt. Enable it automatically unless the
22969
+ // developer has explicitly set updatedSpotterChatPrompt.
22970
+ if (isUndefined(updatedSpotterChatPrompt)) {
22971
+ params[Param.UpdatedSpotterChatPrompt] = true;
22972
+ }
22865
22973
  }
22866
22974
  }
22867
22975
  const queryParams = getQueryParamString(params, true);