@thoughtspot/visual-embed-sdk 1.46.1 → 1.46.2

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 (173) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/auth.d.ts +29 -4
  3. package/cjs/src/auth.d.ts.map +1 -1
  4. package/cjs/src/auth.js +29 -4
  5. package/cjs/src/auth.js.map +1 -1
  6. package/cjs/src/css-variables.d.ts +17 -17
  7. package/cjs/src/embed/app.d.ts +60 -32
  8. package/cjs/src/embed/app.d.ts.map +1 -1
  9. package/cjs/src/embed/app.js +10 -3
  10. package/cjs/src/embed/app.js.map +1 -1
  11. package/cjs/src/embed/app.spec.js +34 -1
  12. package/cjs/src/embed/app.spec.js.map +1 -1
  13. package/cjs/src/embed/base.d.ts +2 -2
  14. package/cjs/src/embed/base.js +2 -2
  15. package/cjs/src/embed/bodyless-conversation.d.ts +5 -5
  16. package/cjs/src/embed/bodyless-conversation.js +4 -4
  17. package/cjs/src/embed/conversation.d.ts +43 -30
  18. package/cjs/src/embed/conversation.d.ts.map +1 -1
  19. package/cjs/src/embed/conversation.js +10 -11
  20. package/cjs/src/embed/conversation.js.map +1 -1
  21. package/cjs/src/embed/conversation.spec.js +27 -0
  22. package/cjs/src/embed/conversation.spec.js.map +1 -1
  23. package/cjs/src/embed/liveboard.d.ts +40 -34
  24. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  25. package/cjs/src/embed/liveboard.js +1 -1
  26. package/cjs/src/embed/liveboard.js.map +1 -1
  27. package/cjs/src/embed/liveboard.spec.js +1 -1
  28. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  29. package/cjs/src/embed/sage.d.ts +5 -5
  30. package/cjs/src/embed/sage.js +1 -1
  31. package/cjs/src/embed/search-bar.d.ts +7 -7
  32. package/cjs/src/embed/search-bar.js +1 -1
  33. package/cjs/src/embed/search.d.ts +13 -12
  34. package/cjs/src/embed/search.d.ts.map +1 -1
  35. package/cjs/src/embed/search.js.map +1 -1
  36. package/cjs/src/embed/ts-embed.d.ts +3 -3
  37. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  38. package/cjs/src/embed/ts-embed.js +12 -6
  39. package/cjs/src/embed/ts-embed.js.map +1 -1
  40. package/cjs/src/embed/ts-embed.spec.js +35 -0
  41. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  42. package/cjs/src/react/index.d.ts +15 -15
  43. package/cjs/src/react/index.js +12 -12
  44. package/cjs/src/tokenizedFetch.d.ts +1 -1
  45. package/cjs/src/tokenizedFetch.js +1 -1
  46. package/cjs/src/types.d.ts +294 -255
  47. package/cjs/src/types.d.ts.map +1 -1
  48. package/cjs/src/types.js +206 -200
  49. package/cjs/src/types.js.map +1 -1
  50. package/cjs/src/utils/graphql/answerService/answerService.d.ts +4 -2
  51. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  52. package/cjs/src/utils/graphql/answerService/answerService.js +6 -4
  53. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  54. package/cjs/src/utils/graphql/answerService/answerService.spec.js +55 -0
  55. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  56. package/cjs/src/utils.d.ts +9 -0
  57. package/cjs/src/utils.d.ts.map +1 -1
  58. package/cjs/src/utils.js +10 -1
  59. package/cjs/src/utils.js.map +1 -1
  60. package/dist/{index-Vyh6Ha5f.js → index-DkizS4xM.js} +1 -1
  61. package/dist/src/auth.d.ts +29 -4
  62. package/dist/src/auth.d.ts.map +1 -1
  63. package/dist/src/css-variables.d.ts +17 -17
  64. package/dist/src/embed/app.d.ts +60 -32
  65. package/dist/src/embed/app.d.ts.map +1 -1
  66. package/dist/src/embed/base.d.ts +2 -2
  67. package/dist/src/embed/bodyless-conversation.d.ts +5 -5
  68. package/dist/src/embed/conversation.d.ts +43 -30
  69. package/dist/src/embed/conversation.d.ts.map +1 -1
  70. package/dist/src/embed/liveboard.d.ts +40 -34
  71. package/dist/src/embed/liveboard.d.ts.map +1 -1
  72. package/dist/src/embed/sage.d.ts +5 -5
  73. package/dist/src/embed/search-bar.d.ts +7 -7
  74. package/dist/src/embed/search.d.ts +13 -12
  75. package/dist/src/embed/search.d.ts.map +1 -1
  76. package/dist/src/embed/ts-embed.d.ts +3 -3
  77. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  78. package/dist/src/react/index.d.ts +15 -15
  79. package/dist/src/tokenizedFetch.d.ts +1 -1
  80. package/dist/src/types.d.ts +294 -255
  81. package/dist/src/types.d.ts.map +1 -1
  82. package/dist/src/utils/graphql/answerService/answerService.d.ts +4 -2
  83. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  84. package/dist/src/utils.d.ts +9 -0
  85. package/dist/src/utils.d.ts.map +1 -1
  86. package/dist/tsembed-react.es.js +307 -275
  87. package/dist/tsembed-react.js +306 -274
  88. package/dist/tsembed.es.js +299 -267
  89. package/dist/tsembed.js +298 -266
  90. package/dist/visual-embed-sdk-react-full.d.ts +520 -409
  91. package/dist/visual-embed-sdk-react.d.ts +518 -407
  92. package/dist/visual-embed-sdk.d.ts +519 -408
  93. package/lib/package.json +1 -1
  94. package/lib/src/auth.d.ts +29 -4
  95. package/lib/src/auth.d.ts.map +1 -1
  96. package/lib/src/auth.js +29 -4
  97. package/lib/src/auth.js.map +1 -1
  98. package/lib/src/css-variables.d.ts +17 -17
  99. package/lib/src/embed/app.d.ts +60 -32
  100. package/lib/src/embed/app.d.ts.map +1 -1
  101. package/lib/src/embed/app.js +11 -4
  102. package/lib/src/embed/app.js.map +1 -1
  103. package/lib/src/embed/app.spec.js +34 -1
  104. package/lib/src/embed/app.spec.js.map +1 -1
  105. package/lib/src/embed/base.d.ts +2 -2
  106. package/lib/src/embed/base.js +2 -2
  107. package/lib/src/embed/bodyless-conversation.d.ts +5 -5
  108. package/lib/src/embed/bodyless-conversation.js +4 -4
  109. package/lib/src/embed/conversation.d.ts +43 -30
  110. package/lib/src/embed/conversation.d.ts.map +1 -1
  111. package/lib/src/embed/conversation.js +11 -11
  112. package/lib/src/embed/conversation.js.map +1 -1
  113. package/lib/src/embed/conversation.spec.js +27 -0
  114. package/lib/src/embed/conversation.spec.js.map +1 -1
  115. package/lib/src/embed/liveboard.d.ts +40 -34
  116. package/lib/src/embed/liveboard.d.ts.map +1 -1
  117. package/lib/src/embed/liveboard.js +1 -1
  118. package/lib/src/embed/liveboard.js.map +1 -1
  119. package/lib/src/embed/liveboard.spec.js +1 -1
  120. package/lib/src/embed/liveboard.spec.js.map +1 -1
  121. package/lib/src/embed/sage.d.ts +5 -5
  122. package/lib/src/embed/sage.js +1 -1
  123. package/lib/src/embed/search-bar.d.ts +7 -7
  124. package/lib/src/embed/search-bar.js +1 -1
  125. package/lib/src/embed/search.d.ts +13 -12
  126. package/lib/src/embed/search.d.ts.map +1 -1
  127. package/lib/src/embed/search.js.map +1 -1
  128. package/lib/src/embed/ts-embed.d.ts +3 -3
  129. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  130. package/lib/src/embed/ts-embed.js +12 -6
  131. package/lib/src/embed/ts-embed.js.map +1 -1
  132. package/lib/src/embed/ts-embed.spec.js +35 -0
  133. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  134. package/lib/src/react/index.d.ts +15 -15
  135. package/lib/src/react/index.js +12 -12
  136. package/lib/src/tokenizedFetch.d.ts +1 -1
  137. package/lib/src/tokenizedFetch.js +1 -1
  138. package/lib/src/types.d.ts +294 -255
  139. package/lib/src/types.d.ts.map +1 -1
  140. package/lib/src/types.js +206 -200
  141. package/lib/src/types.js.map +1 -1
  142. package/lib/src/utils/graphql/answerService/answerService.d.ts +4 -2
  143. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  144. package/lib/src/utils/graphql/answerService/answerService.js +5 -3
  145. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  146. package/lib/src/utils/graphql/answerService/answerService.spec.js +55 -0
  147. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  148. package/lib/src/utils.d.ts +9 -0
  149. package/lib/src/utils.d.ts.map +1 -1
  150. package/lib/src/utils.js +8 -0
  151. package/lib/src/utils.js.map +1 -1
  152. package/package.json +1 -1
  153. package/src/auth.ts +29 -4
  154. package/src/css-variables.ts +17 -17
  155. package/src/embed/app.spec.ts +46 -1
  156. package/src/embed/app.ts +72 -35
  157. package/src/embed/base.ts +2 -2
  158. package/src/embed/bodyless-conversation.ts +5 -5
  159. package/src/embed/conversation.spec.ts +37 -0
  160. package/src/embed/conversation.ts +55 -38
  161. package/src/embed/liveboard.spec.ts +1 -1
  162. package/src/embed/liveboard.ts +40 -34
  163. package/src/embed/sage.ts +5 -5
  164. package/src/embed/search-bar.tsx +7 -7
  165. package/src/embed/search.ts +13 -12
  166. package/src/embed/ts-embed.spec.ts +42 -0
  167. package/src/embed/ts-embed.ts +11 -6
  168. package/src/react/index.tsx +15 -15
  169. package/src/tokenizedFetch.ts +1 -1
  170. package/src/types.ts +293 -254
  171. package/src/utils/graphql/answerService/answerService.spec.ts +62 -0
  172. package/src/utils/graphql/answerService/answerService.ts +6 -3
  173. package/src/utils.ts +14 -0
@@ -312,6 +312,68 @@ describe('Answer service tests', () => {
312
312
  await expect(answerService.getUnderlyingDataForPoint(['col2'])).rejects.toThrow();
313
313
  });
314
314
 
315
+ test.each([
316
+ ['DATE', 12345, 'epoch-date'],
317
+ ['DATE_TIME', 98765, 'epoch-datetime'],
318
+ ['TIME', 55555, 'epoch-time'],
319
+ ])('getUnderlyingDataForPoint should pass epochRange with startEpoch for %s type with numeric value %d', async (dataType, value, sourceId) => {
320
+ fetchMock.mockResponses(
321
+ JSON.stringify({
322
+ data: {
323
+ getSourceDetailById: [{
324
+ columns: [{ id: 'id1', name: 'col1' }],
325
+ }],
326
+ },
327
+ }),
328
+ JSON.stringify({
329
+ data: {
330
+ Answer__getUnaggregatedAnswer: {
331
+ id: { ...defaultSession },
332
+ answer: {
333
+ visualizations: [{
334
+ columns: [{
335
+ column: {
336
+ id: 'oid1',
337
+ name: 'col1',
338
+ referencedColumns: [{ guid: 'id1' }],
339
+ },
340
+ }],
341
+ }],
342
+ },
343
+ },
344
+ },
345
+ }),
346
+ );
347
+ const answerService = createAnswerService({
348
+ sources: [{ header: { guid: sourceId } }],
349
+ }, [{
350
+ selectedAttributes: [{
351
+ column: { id: 'oid1', name: 'col1', dataType },
352
+ value,
353
+ }],
354
+ selectedMeasures: [],
355
+ }]);
356
+ await answerService.getUnderlyingDataForPoint(['col1']);
357
+ expect(fetchMock).toHaveBeenCalledWith(
358
+ 'https://tshost/prism/?op=GetUnAggregatedAnswerSession',
359
+ expect.objectContaining({
360
+ body: JSON.stringify({
361
+ operationName: 'GetUnAggregatedAnswerSession',
362
+ query: queries.getUnaggregatedAnswerSession,
363
+ variables: {
364
+ session: defaultSession,
365
+ columns: [{
366
+ columnId: 'oid1',
367
+ dataValue: [{
368
+ epochRange: { startEpoch: value },
369
+ }],
370
+ }],
371
+ },
372
+ }),
373
+ }),
374
+ );
375
+ });
376
+
315
377
  test('addFilter should call the right API', async () => {
316
378
  fetchMock.mockResponses(
317
379
  JSON.stringify({
@@ -25,6 +25,8 @@ export interface UnderlyingDataPoint {
25
25
  dataValue: any;
26
26
  }
27
27
 
28
+ export const DATA_TYPES = ['DATE', 'DATE_TIME', 'TIME'];
29
+
28
30
  /**
29
31
  * AnswerService provides a simple way to work with ThoughtSpot Answers.
30
32
  *
@@ -70,7 +72,7 @@ export interface UnderlyingDataPoint {
70
72
  * });
71
73
  * ```
72
74
  *
73
- * @version SDK: 1.25.0| ThoughtSpot: 9.10.0.cl
75
+ * @version SDK: 1.25.0 | ThoughtSpot: 9.10.0.cl
74
76
  * @group Events
75
77
  */
76
78
  export class AnswerService {
@@ -149,6 +151,7 @@ export class AnswerService {
149
151
  * ]);
150
152
  * console.log(await service.fetchData());
151
153
  * });
154
+ * ```
152
155
  */
153
156
  public async addColumnsByName(columnNames: string[]) {
154
157
  const sourceDetail = await this.getSourceDetail();
@@ -308,7 +311,7 @@ export class AnswerService {
308
311
  * const data = await underlying.fetchData(0, 100);
309
312
  * })
310
313
  * ```
311
- * @version SDK: 1.25.0| ThoughtSpot: 9.10.0.cl
314
+ * @version SDK: 1.25.0 | ThoughtSpot: 9.10.0.cl
312
315
  */
313
316
  public async getUnderlyingDataForPoint(
314
317
  outputColumnNames: string[],
@@ -465,7 +468,7 @@ function getSelectedPointsForUnderlyingDataQuery(
465
468
  const dataType = colVal.column.dataType;
466
469
  const id = colVal.column.id;
467
470
  let dataValue;
468
- if (dataType === 'DATE') {
471
+ if (DATA_TYPES.includes(dataType)) {
469
472
  if (Number.isFinite(colVal.value)) {
470
473
  dataValue = [{
471
474
  epochRange: {
package/src/utils.ts CHANGED
@@ -600,6 +600,20 @@ export const validateHttpUrl = (url: string): [boolean, Error | null] => {
600
600
  }
601
601
  };
602
602
 
603
+ /**
604
+ * Resolves enablePastConversationsSidebar with
605
+ * spotterSidebarConfig taking precedence over the
606
+ * standalone flag.
607
+ */
608
+ export const resolveEnablePastConversationsSidebar = (params: {
609
+ spotterSidebarConfigValue?: boolean;
610
+ standaloneValue?: boolean;
611
+ }): boolean | undefined => (
612
+ params.spotterSidebarConfigValue !== undefined
613
+ ? params.spotterSidebarConfigValue
614
+ : params.standaloneValue
615
+ );
616
+
603
617
  /**
604
618
  * Sets a query parameter if the value is defined.
605
619
  * @param queryParams - The query params object to modify