@thoughtspot/visual-embed-sdk 1.52.2-beta.1 → 1.53.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 (237) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/css-variables.d.ts +373 -5
  3. package/cjs/src/css-variables.d.ts.map +1 -1
  4. package/cjs/src/embed/app.d.ts +14 -0
  5. package/cjs/src/embed/app.d.ts.map +1 -1
  6. package/cjs/src/embed/app.js +6 -3
  7. package/cjs/src/embed/app.js.map +1 -1
  8. package/cjs/src/embed/app.spec.js +28 -0
  9. package/cjs/src/embed/app.spec.js.map +1 -1
  10. package/cjs/src/embed/auto-frame-renderer.d.ts.map +1 -1
  11. package/cjs/src/embed/auto-frame-renderer.js +244 -4
  12. package/cjs/src/embed/auto-frame-renderer.js.map +1 -1
  13. package/cjs/src/embed/auto-frame-renderer.spec.js +389 -0
  14. package/cjs/src/embed/auto-frame-renderer.spec.js.map +1 -1
  15. package/cjs/src/embed/bodyless-conversation.js +1 -1
  16. package/cjs/src/embed/bodyless-conversation.js.map +1 -1
  17. package/cjs/src/embed/conversation.d.ts +15 -0
  18. package/cjs/src/embed/conversation.d.ts.map +1 -1
  19. package/cjs/src/embed/conversation.js +7 -3
  20. package/cjs/src/embed/conversation.js.map +1 -1
  21. package/cjs/src/embed/conversation.spec.js +66 -0
  22. package/cjs/src/embed/conversation.spec.js.map +1 -1
  23. package/cjs/src/embed/liveboard-override-utils.d.ts +59 -0
  24. package/cjs/src/embed/liveboard-override-utils.d.ts.map +1 -0
  25. package/cjs/src/embed/liveboard-override-utils.js +19 -0
  26. package/cjs/src/embed/liveboard-override-utils.js.map +1 -0
  27. package/cjs/src/embed/liveboard-override-utils.spec.d.ts +2 -0
  28. package/cjs/src/embed/liveboard-override-utils.spec.d.ts.map +1 -0
  29. package/cjs/src/embed/liveboard-override-utils.spec.js +34 -0
  30. package/cjs/src/embed/liveboard-override-utils.spec.js.map +1 -0
  31. package/cjs/src/embed/liveboard.d.ts +43 -1
  32. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  33. package/cjs/src/embed/liveboard.js +11 -18
  34. package/cjs/src/embed/liveboard.js.map +1 -1
  35. package/cjs/src/embed/liveboard.spec.js +104 -54
  36. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  37. package/cjs/src/embed/search-bar.js +1 -1
  38. package/cjs/src/embed/search-bar.js.map +1 -1
  39. package/cjs/src/embed/search.js +1 -1
  40. package/cjs/src/embed/search.js.map +1 -1
  41. package/cjs/src/embed/search.spec.js +20 -0
  42. package/cjs/src/embed/search.spec.js.map +1 -1
  43. package/cjs/src/embed/spotter-utils.d.ts +11 -0
  44. package/cjs/src/embed/spotter-utils.d.ts.map +1 -1
  45. package/cjs/src/embed/spotter-utils.js +13 -1
  46. package/cjs/src/embed/spotter-utils.js.map +1 -1
  47. package/cjs/src/embed/spotter-viz-utils.d.ts +15 -0
  48. package/cjs/src/embed/spotter-viz-utils.d.ts.map +1 -1
  49. package/cjs/src/embed/spotter-viz-utils.js.map +1 -1
  50. package/cjs/src/embed/spotter-viz-utils.spec.js +11 -0
  51. package/cjs/src/embed/spotter-viz-utils.spec.js.map +1 -1
  52. package/cjs/src/embed/ts-embed.d.ts +27 -34
  53. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  54. package/cjs/src/embed/ts-embed.js +224 -102
  55. package/cjs/src/embed/ts-embed.js.map +1 -1
  56. package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
  57. package/cjs/src/embed/ts-embed.spec.js +543 -171
  58. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  59. package/cjs/src/index.d.ts +4 -2
  60. package/cjs/src/index.d.ts.map +1 -1
  61. package/cjs/src/index.js +4 -2
  62. package/cjs/src/index.js.map +1 -1
  63. package/cjs/src/mixpanel-service.d.ts +1 -0
  64. package/cjs/src/mixpanel-service.d.ts.map +1 -1
  65. package/cjs/src/mixpanel-service.js +1 -0
  66. package/cjs/src/mixpanel-service.js.map +1 -1
  67. package/cjs/src/react/all-types-export.d.ts +1 -1
  68. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  69. package/cjs/src/react/all-types-export.js +2 -1
  70. package/cjs/src/react/all-types-export.js.map +1 -1
  71. package/cjs/src/types.d.ts +182 -2
  72. package/cjs/src/types.d.ts.map +1 -1
  73. package/cjs/src/types.js +109 -0
  74. package/cjs/src/types.js.map +1 -1
  75. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
  76. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  77. package/cjs/src/utils/graphql/answerService/answer-queries.js +8 -1
  78. package/cjs/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  79. package/cjs/src/utils/graphql/answerService/answerService.d.ts +28 -4
  80. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  81. package/cjs/src/utils/graphql/answerService/answerService.js +39 -4
  82. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  83. package/cjs/src/utils/graphql/answerService/answerService.spec.js +124 -0
  84. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  85. package/dist/{index-Bt56pC82.js → index-CyDR8j_0.js} +1 -1
  86. package/dist/src/css-variables.d.ts +373 -5
  87. package/dist/src/css-variables.d.ts.map +1 -1
  88. package/dist/src/embed/app.d.ts +14 -0
  89. package/dist/src/embed/app.d.ts.map +1 -1
  90. package/dist/src/embed/auto-frame-renderer.d.ts.map +1 -1
  91. package/dist/src/embed/conversation.d.ts +15 -0
  92. package/dist/src/embed/conversation.d.ts.map +1 -1
  93. package/dist/src/embed/liveboard-override-utils.d.ts +59 -0
  94. package/dist/src/embed/liveboard-override-utils.d.ts.map +1 -0
  95. package/dist/src/embed/liveboard-override-utils.spec.d.ts +2 -0
  96. package/dist/src/embed/liveboard-override-utils.spec.d.ts.map +1 -0
  97. package/dist/src/embed/liveboard.d.ts +43 -1
  98. package/dist/src/embed/liveboard.d.ts.map +1 -1
  99. package/dist/src/embed/spotter-utils.d.ts +11 -0
  100. package/dist/src/embed/spotter-utils.d.ts.map +1 -1
  101. package/dist/src/embed/spotter-viz-utils.d.ts +15 -0
  102. package/dist/src/embed/spotter-viz-utils.d.ts.map +1 -1
  103. package/dist/src/embed/ts-embed.d.ts +27 -34
  104. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  105. package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
  106. package/dist/src/index.d.ts +4 -2
  107. package/dist/src/index.d.ts.map +1 -1
  108. package/dist/src/mixpanel-service.d.ts +1 -0
  109. package/dist/src/mixpanel-service.d.ts.map +1 -1
  110. package/dist/src/react/all-types-export.d.ts +1 -1
  111. package/dist/src/react/all-types-export.d.ts.map +1 -1
  112. package/dist/src/types.d.ts +182 -2
  113. package/dist/src/types.d.ts.map +1 -1
  114. package/dist/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
  115. package/dist/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  116. package/dist/src/utils/graphql/answerService/answerService.d.ts +28 -4
  117. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  118. package/dist/tsembed-react.es.js +437 -175
  119. package/dist/tsembed-react.js +436 -174
  120. package/dist/tsembed.es.js +680 -180
  121. package/dist/tsembed.js +678 -178
  122. package/dist/visual-embed-sdk-react-full.d.ts +702 -44
  123. package/dist/visual-embed-sdk-react.d.ts +697 -44
  124. package/dist/visual-embed-sdk.d.ts +729 -45
  125. package/lib/package.json +1 -1
  126. package/lib/src/css-variables.d.ts +373 -5
  127. package/lib/src/css-variables.d.ts.map +1 -1
  128. package/lib/src/embed/app.d.ts +14 -0
  129. package/lib/src/embed/app.d.ts.map +1 -1
  130. package/lib/src/embed/app.js +7 -4
  131. package/lib/src/embed/app.js.map +1 -1
  132. package/lib/src/embed/app.spec.js +28 -0
  133. package/lib/src/embed/app.spec.js.map +1 -1
  134. package/lib/src/embed/auto-frame-renderer.d.ts.map +1 -1
  135. package/lib/src/embed/auto-frame-renderer.js +244 -4
  136. package/lib/src/embed/auto-frame-renderer.js.map +1 -1
  137. package/lib/src/embed/auto-frame-renderer.spec.js +389 -0
  138. package/lib/src/embed/auto-frame-renderer.spec.js.map +1 -1
  139. package/lib/src/embed/bodyless-conversation.js +1 -1
  140. package/lib/src/embed/bodyless-conversation.js.map +1 -1
  141. package/lib/src/embed/conversation.d.ts +15 -0
  142. package/lib/src/embed/conversation.d.ts.map +1 -1
  143. package/lib/src/embed/conversation.js +8 -4
  144. package/lib/src/embed/conversation.js.map +1 -1
  145. package/lib/src/embed/conversation.spec.js +67 -1
  146. package/lib/src/embed/conversation.spec.js.map +1 -1
  147. package/lib/src/embed/liveboard-override-utils.d.ts +59 -0
  148. package/lib/src/embed/liveboard-override-utils.d.ts.map +1 -0
  149. package/lib/src/embed/liveboard-override-utils.js +15 -0
  150. package/lib/src/embed/liveboard-override-utils.js.map +1 -0
  151. package/lib/src/embed/liveboard-override-utils.spec.d.ts +2 -0
  152. package/lib/src/embed/liveboard-override-utils.spec.d.ts.map +1 -0
  153. package/lib/src/embed/liveboard-override-utils.spec.js +32 -0
  154. package/lib/src/embed/liveboard-override-utils.spec.js.map +1 -0
  155. package/lib/src/embed/liveboard.d.ts +43 -1
  156. package/lib/src/embed/liveboard.d.ts.map +1 -1
  157. package/lib/src/embed/liveboard.js +11 -17
  158. package/lib/src/embed/liveboard.js.map +1 -1
  159. package/lib/src/embed/liveboard.spec.js +104 -54
  160. package/lib/src/embed/liveboard.spec.js.map +1 -1
  161. package/lib/src/embed/search-bar.js +1 -1
  162. package/lib/src/embed/search-bar.js.map +1 -1
  163. package/lib/src/embed/search.js +1 -1
  164. package/lib/src/embed/search.js.map +1 -1
  165. package/lib/src/embed/search.spec.js +20 -0
  166. package/lib/src/embed/search.spec.js.map +1 -1
  167. package/lib/src/embed/spotter-utils.d.ts +11 -0
  168. package/lib/src/embed/spotter-utils.d.ts.map +1 -1
  169. package/lib/src/embed/spotter-utils.js +12 -0
  170. package/lib/src/embed/spotter-utils.js.map +1 -1
  171. package/lib/src/embed/spotter-viz-utils.d.ts +15 -0
  172. package/lib/src/embed/spotter-viz-utils.d.ts.map +1 -1
  173. package/lib/src/embed/spotter-viz-utils.js.map +1 -1
  174. package/lib/src/embed/spotter-viz-utils.spec.js +11 -0
  175. package/lib/src/embed/spotter-viz-utils.spec.js.map +1 -1
  176. package/lib/src/embed/ts-embed.d.ts +27 -34
  177. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  178. package/lib/src/embed/ts-embed.js +224 -102
  179. package/lib/src/embed/ts-embed.js.map +1 -1
  180. package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
  181. package/lib/src/embed/ts-embed.spec.js +544 -172
  182. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  183. package/lib/src/index.d.ts +4 -2
  184. package/lib/src/index.d.ts.map +1 -1
  185. package/lib/src/index.js +3 -2
  186. package/lib/src/index.js.map +1 -1
  187. package/lib/src/mixpanel-service.d.ts +1 -0
  188. package/lib/src/mixpanel-service.d.ts.map +1 -1
  189. package/lib/src/mixpanel-service.js +1 -0
  190. package/lib/src/mixpanel-service.js.map +1 -1
  191. package/lib/src/react/all-types-export.d.ts +1 -1
  192. package/lib/src/react/all-types-export.d.ts.map +1 -1
  193. package/lib/src/react/all-types-export.js +1 -1
  194. package/lib/src/react/all-types-export.js.map +1 -1
  195. package/lib/src/types.d.ts +182 -2
  196. package/lib/src/types.d.ts.map +1 -1
  197. package/lib/src/types.js +109 -0
  198. package/lib/src/types.js.map +1 -1
  199. package/lib/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
  200. package/lib/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  201. package/lib/src/utils/graphql/answerService/answer-queries.js +7 -0
  202. package/lib/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  203. package/lib/src/utils/graphql/answerService/answerService.d.ts +28 -4
  204. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  205. package/lib/src/utils/graphql/answerService/answerService.js +39 -4
  206. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  207. package/lib/src/utils/graphql/answerService/answerService.spec.js +125 -1
  208. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  209. package/lib/src/visual-embed-sdk.d.ts +729 -45
  210. package/package.json +1 -1
  211. package/src/css-variables.ts +475 -26
  212. package/src/embed/app.spec.ts +32 -0
  213. package/src/embed/app.ts +28 -4
  214. package/src/embed/auto-frame-renderer.spec.ts +464 -0
  215. package/src/embed/auto-frame-renderer.ts +305 -6
  216. package/src/embed/bodyless-conversation.ts +1 -1
  217. package/src/embed/conversation.spec.ts +94 -1
  218. package/src/embed/conversation.ts +28 -3
  219. package/src/embed/liveboard-override-utils.spec.ts +38 -0
  220. package/src/embed/liveboard-override-utils.ts +71 -0
  221. package/src/embed/liveboard.spec.ts +119 -62
  222. package/src/embed/liveboard.ts +56 -21
  223. package/src/embed/search-bar.tsx +1 -1
  224. package/src/embed/search.spec.ts +23 -0
  225. package/src/embed/search.ts +1 -1
  226. package/src/embed/spotter-utils.ts +12 -0
  227. package/src/embed/spotter-viz-utils.spec.ts +11 -0
  228. package/src/embed/spotter-viz-utils.ts +15 -0
  229. package/src/embed/ts-embed.spec.ts +684 -213
  230. package/src/embed/ts-embed.ts +227 -97
  231. package/src/index.ts +16 -1
  232. package/src/mixpanel-service.ts +1 -0
  233. package/src/react/all-types-export.ts +6 -0
  234. package/src/types.ts +186 -5
  235. package/src/utils/graphql/answerService/answer-queries.ts +8 -0
  236. package/src/utils/graphql/answerService/answerService.spec.ts +145 -1
  237. package/src/utils/graphql/answerService/answerService.ts +65 -3
@@ -578,5 +578,394 @@ describe('startAutoMCPFrameRenderer', () => {
578
578
  expect(JSON.parse(autoValue)).toEqual(JSON.parse(liveboardValue));
579
579
  });
580
580
  });
581
+ // ─── replaying a stored conversation
582
+ // ──────────────────────────────────────
583
+ describe('stored conversation replay', () => {
584
+ const CONVERSATION_ID = 'U0Tfqmjlz6WT';
585
+ const REPLAY_SRC = `https://${thoughtSpotHost}/v2/?${Param.Tsmcp}=true`
586
+ + `&${Param.TsmcpConversationId}=${CONVERSATION_ID}`
587
+ + `&${Param.TsmcpAnswerIndex}=1`;
588
+ /** Conversation-service shape: two real answers around a thinking one. */
589
+ const messagesPayload = {
590
+ messages: [
591
+ {
592
+ message_id: 'm1',
593
+ response_items: [
594
+ { type: 'tool_call', is_thinking: false },
595
+ { type: 'answer', answer_id: 'ans_first', is_thinking: false },
596
+ ],
597
+ },
598
+ {
599
+ message_id: 'm2',
600
+ response_items: [
601
+ { type: 'answer', answer_id: 'ans_thinking', is_thinking: true },
602
+ { type: 'answer', answer_id: 'ans_second', is_thinking: false },
603
+ ],
604
+ },
605
+ ],
606
+ };
607
+ const detailsPayload = {
608
+ answer: {
609
+ session_identifier: 'fresh-session',
610
+ generation_number: 3,
611
+ ac_state: { transaction_identifier: 'fresh-ac', generation_number: 2 },
612
+ },
613
+ };
614
+ let fetchMock;
615
+ /** Renders one replay iframe and returns the src plus the frame element. */
616
+ async function renderReplayFrame(viewConfig = {}, src = REPLAY_SRC) {
617
+ let renderedSrc = '';
618
+ let frame;
619
+ renderIFrameSpy.mockRestore();
620
+ renderIFrameSpy = jest.spyOn(TsEmbed.prototype, 'renderIFrame')
621
+ .mockImplementation(async function (capturedSrc) {
622
+ renderedSrc = capturedSrc;
623
+ // Stand in for the real iframe the notice attaches to.
624
+ frame = document.createElement('iframe');
625
+ this.iFrame = frame;
626
+ });
627
+ const observer = startAutoMCPFrameRenderer(viewConfig);
628
+ const iframe = document.createElement('iframe');
629
+ iframe.src = src;
630
+ document.body.appendChild(iframe);
631
+ await new Promise((r) => setTimeout(r, 100));
632
+ observer.disconnect();
633
+ return { renderedSrc, frame: frame };
634
+ }
635
+ beforeEach(() => {
636
+ fetchMock = jest.spyOn(global, 'fetch').mockImplementation(async (input) => {
637
+ const url = typeof input === 'string' ? input : input.url;
638
+ const body = url.includes('/load/public') ? detailsPayload : messagesPayload;
639
+ return { ok: true, status: 200, json: async () => body };
640
+ });
641
+ });
642
+ afterEach(() => {
643
+ fetchMock.mockRestore();
644
+ });
645
+ test('resolves session params from the conversation and answer APIs', async () => {
646
+ const { renderedSrc } = await renderReplayFrame();
647
+ expect(renderedSrc).toContain('sessionId=fresh-session');
648
+ expect(renderedSrc).toContain('genNo=3');
649
+ expect(renderedSrc).toContain('acSessionId=fresh-ac');
650
+ expect(renderedSrc).toContain('acGenNo=2');
651
+ });
652
+ test('picks the answer at the requested index, skipping thinking items', async () => {
653
+ await renderReplayFrame();
654
+ const detailsCall = fetchMock.mock.calls
655
+ .map(([input]) => (typeof input === 'string' ? input : input.url))
656
+ .find((url) => url.includes('/load/public'));
657
+ // index 1 = second non-thinking answer; ans_thinking must not
658
+ // count.
659
+ expect(detailsCall).toContain('/message/ans_second/load/public');
660
+ });
661
+ test('defaults to the conversational answer route when none is given', async () => {
662
+ const { renderedSrc } = await renderReplayFrame();
663
+ expect(renderedSrc).toContain('/embed/conv-assist-answer');
664
+ });
665
+ test('strips the replay markers from the URL sent to ThoughtSpot', async () => {
666
+ const { renderedSrc } = await renderReplayFrame();
667
+ expect(renderedSrc).not.toContain(Param.TsmcpConversationId);
668
+ expect(renderedSrc).not.toContain(Param.TsmcpAnswerIndex);
669
+ expect(renderedSrc).not.toContain(`${Param.Tsmcp}=true`);
670
+ });
671
+ test('marks a replayed answer with the stale-data notice', async () => {
672
+ const { frame } = await renderReplayFrame();
673
+ expect(frame.dataset.tsStaleAnswer).toBe('true');
674
+ expect(frame.title).toBe('This data may have changed since the last time you had a chat.');
675
+ });
676
+ test('suppressStaleAnswerNotice leaves the frame unmarked', async () => {
677
+ const { frame } = await renderReplayFrame({ suppressStaleAnswerNotice: true });
678
+ expect(frame.dataset.tsStaleAnswer).toBeUndefined();
679
+ expect(frame.title).toBe('');
680
+ });
681
+ test('staleAnswerNoticeText overrides the default copy', async () => {
682
+ const { frame } = await renderReplayFrame({ staleAnswerNoticeText: 'Numbers may differ.' });
683
+ expect(frame.title).toBe('Numbers may differ.');
684
+ });
685
+ test('falls back to the source URL when resolution fails', async () => {
686
+ fetchMock.mockImplementation(async () => ({ ok: false, status: 500 }));
687
+ const { renderedSrc, frame } = await renderReplayFrame();
688
+ // No invented params, and no notice claiming a successful refresh.
689
+ expect(renderedSrc).toBe(REPLAY_SRC);
690
+ expect(renderedSrc).not.toContain('sessionId=');
691
+ expect(frame.dataset.tsStaleAnswer).toBeUndefined();
692
+ });
693
+ test.each([
694
+ ['a null messages body', null],
695
+ ['a messages body that is not an object', 'nope'],
696
+ ['messages that is not an array', { messages: null }],
697
+ ])('falls back on %s instead of throwing', async (_label, body) => {
698
+ fetchMock.mockImplementation(async (input) => {
699
+ const url = typeof input === 'string' ? input : input.url;
700
+ return {
701
+ ok: true,
702
+ status: 200,
703
+ json: async () => (url.includes('/load/public') ? detailsPayload : body),
704
+ };
705
+ });
706
+ const { renderedSrc, frame } = await renderReplayFrame();
707
+ expect(renderedSrc).not.toContain('sessionId=');
708
+ expect(frame.dataset.tsStaleAnswer).toBeUndefined();
709
+ });
710
+ test('falls back on a null details body instead of throwing', async () => {
711
+ fetchMock.mockImplementation(async (input) => {
712
+ const url = typeof input === 'string' ? input : input.url;
713
+ return {
714
+ ok: true,
715
+ status: 200,
716
+ json: async () => (url.includes('/load/public') ? null : messagesPayload),
717
+ };
718
+ });
719
+ const { renderedSrc } = await renderReplayFrame();
720
+ expect(renderedSrc).not.toContain('sessionId=');
721
+ });
722
+ test.each([
723
+ ['answer.generation_number', { ...detailsPayload.answer, generation_number: null }],
724
+ [
725
+ 'ac_state.generation_number',
726
+ { ...detailsPayload.answer, ac_state: { transaction_identifier: 'fresh-ac', generation_number: null } },
727
+ ],
728
+ ])('treats a null %s as unresolvable', async (_label, answer) => {
729
+ fetchMock.mockImplementation(async (input) => {
730
+ const url = typeof input === 'string' ? input : input.url;
731
+ return {
732
+ ok: true,
733
+ status: 200,
734
+ json: async () => (url.includes('/load/public') ? { answer } : messagesPayload),
735
+ };
736
+ });
737
+ const { renderedSrc, frame } = await renderReplayFrame();
738
+ // Never emit a literal "null" generation into the hash.
739
+ expect(renderedSrc).not.toContain('genNo=null');
740
+ expect(renderedSrc).not.toContain('acGenNo=null');
741
+ expect(renderedSrc).not.toContain('sessionId=');
742
+ expect(frame.dataset.tsStaleAnswer).toBeUndefined();
743
+ });
744
+ test.each([
745
+ ['a fractional index', '1.5'],
746
+ ['a negative index', '-1'],
747
+ ['a malformed index', 'abc'],
748
+ ['a trailing-junk index', '1abc'],
749
+ ])('%s falls back to the first answer', async (_label, value) => {
750
+ const src = `https://${thoughtSpotHost}/v2/?${Param.Tsmcp}=true`
751
+ + `&${Param.TsmcpConversationId}=${CONVERSATION_ID}`
752
+ + `&${Param.TsmcpAnswerIndex}=${value}`;
753
+ await renderReplayFrame({}, src);
754
+ const detailsCall = fetchMock.mock.calls
755
+ .map(([input]) => (typeof input === 'string' ? input : input.url))
756
+ .find((url) => url.includes('/load/public'));
757
+ expect(detailsCall).toContain('/message/ans_first/load/public');
758
+ });
759
+ /** URLs passed to fetch, in call order. */
760
+ function fetchedUrls() {
761
+ return fetchMock.mock.calls
762
+ .map(([input]) => (typeof input === 'string' ? input : input.url));
763
+ }
764
+ /** Serves `messages` for the list call and `details` for the load call. */
765
+ function mockConversation(messages, details = detailsPayload) {
766
+ fetchMock.mockImplementation(async (input) => {
767
+ const url = typeof input === 'string' ? input : input.url;
768
+ return {
769
+ ok: true,
770
+ status: 200,
771
+ json: async () => (url.includes('/load/public') ? details : messages),
772
+ };
773
+ });
774
+ }
775
+ test('calls the conversation service with the encoded conversation id', async () => {
776
+ const src = `https://${thoughtSpotHost}/v2/?${Param.Tsmcp}=true`
777
+ + `&${Param.TsmcpConversationId}=${encodeURIComponent('conv/1')}`;
778
+ await renderReplayFrame({}, src);
779
+ const [listUrl, loadUrl] = fetchedUrls();
780
+ expect(listUrl).toBe(`http://${thoughtSpotHost}/conversation/v2/conv%2F1/public`);
781
+ expect(loadUrl).toBe(`http://${thoughtSpotHost}/conversation/v2/conv%2F1/message/ans_first/load/public`);
782
+ const loadInit = fetchMock.mock.calls[1][1];
783
+ expect(loadInit.method).toBe('POST');
784
+ expect(JSON.parse(loadInit.body)).toEqual({ type: 'TS_ANSWER' });
785
+ });
786
+ test('defaults to the first answer when no index is given', async () => {
787
+ const src = `https://${thoughtSpotHost}/v2/?${Param.Tsmcp}=true`
788
+ + `&${Param.TsmcpConversationId}=${CONVERSATION_ID}`;
789
+ await renderReplayFrame({}, src);
790
+ expect(fetchedUrls()[1]).toContain('/message/ans_first/load/public');
791
+ });
792
+ test('keeps the source route and its other hash params', async () => {
793
+ const src = `${REPLAY_SRC}#/embed/viz/lb1?keep=yes&sessionId=expired`;
794
+ const { renderedSrc } = await renderReplayFrame({}, src);
795
+ expect(renderedSrc).toContain('/embed/viz/lb1?');
796
+ expect(renderedSrc).not.toContain('/embed/conv-assist-answer');
797
+ expect(renderedSrc).toContain('keep=yes');
798
+ expect(renderedSrc).toContain('sessionId=fresh-session');
799
+ expect(renderedSrc).not.toContain('sessionId=expired');
800
+ });
801
+ test('ignores messages without response items and answers without an id', async () => {
802
+ mockConversation({
803
+ messages: [
804
+ { message_id: 'm0' },
805
+ null,
806
+ { message_id: 'm1', response_items: [{ type: 'answer', is_thinking: false }] },
807
+ {
808
+ message_id: 'm2',
809
+ response_items: [null, { type: 'answer', answer_id: 'ans_only', is_thinking: false }],
810
+ },
811
+ ],
812
+ });
813
+ const src = `https://${thoughtSpotHost}/v2/?${Param.Tsmcp}=true`
814
+ + `&${Param.TsmcpConversationId}=${CONVERSATION_ID}`;
815
+ const { renderedSrc } = await renderReplayFrame({}, src);
816
+ expect(fetchedUrls()[1]).toContain('/message/ans_only/load/public');
817
+ expect(renderedSrc).toContain('sessionId=fresh-session');
818
+ });
819
+ test('falls back when no answer exists at the requested index', async () => {
820
+ const src = `https://${thoughtSpotHost}/v2/?${Param.Tsmcp}=true`
821
+ + `&${Param.TsmcpConversationId}=${CONVERSATION_ID}`
822
+ + `&${Param.TsmcpAnswerIndex}=5`;
823
+ const { renderedSrc, frame } = await renderReplayFrame({}, src);
824
+ // The list, read once more in case it predated the answer; there is
825
+ // no answer to load.
826
+ expect(fetchedUrls()).toHaveLength(2);
827
+ expect(fetchedUrls().every((url) => url.endsWith('/public') && !url.includes('/load/'))).toBe(true);
828
+ expect(renderedSrc).not.toContain('sessionId=');
829
+ expect(frame.dataset.tsStaleAnswer).toBeUndefined();
830
+ });
831
+ test('falls back when the answer load fails', async () => {
832
+ fetchMock.mockImplementation(async (input) => {
833
+ const url = typeof input === 'string' ? input : input.url;
834
+ if (url.includes('/load/public')) {
835
+ return { ok: false, status: 404 };
836
+ }
837
+ return { ok: true, status: 200, json: async () => messagesPayload };
838
+ });
839
+ const { renderedSrc, frame } = await renderReplayFrame();
840
+ expect(fetchedUrls()).toHaveLength(2);
841
+ expect(renderedSrc).not.toContain('sessionId=');
842
+ expect(frame.dataset.tsStaleAnswer).toBeUndefined();
843
+ });
844
+ test('falls back when a fetch throws', async () => {
845
+ fetchMock.mockImplementation(async () => {
846
+ throw new Error('network down');
847
+ });
848
+ const { renderedSrc, frame } = await renderReplayFrame();
849
+ expect(renderedSrc).not.toContain('sessionId=');
850
+ expect(frame.dataset.tsStaleAnswer).toBeUndefined();
851
+ });
852
+ test.each([
853
+ ['session_identifier', { ...detailsPayload.answer, session_identifier: '' }],
854
+ [
855
+ 'ac_state.transaction_identifier',
856
+ { ...detailsPayload.answer, ac_state: { generation_number: 2 } },
857
+ ],
858
+ ['ac_state', { ...detailsPayload.answer, ac_state: undefined }],
859
+ ['a positive generation_number', { ...detailsPayload.answer, generation_number: 0 }],
860
+ ])('treats a missing %s as unresolvable', async (_label, answer) => {
861
+ mockConversation(messagesPayload, { answer });
862
+ const { renderedSrc, frame } = await renderReplayFrame();
863
+ expect(renderedSrc).not.toContain('sessionId=');
864
+ expect(frame.dataset.tsStaleAnswer).toBeUndefined();
865
+ });
866
+ test('skips the notice when no iframe was rendered', async () => {
867
+ renderIFrameSpy.mockRestore();
868
+ renderIFrameSpy = jest.spyOn(TsEmbed.prototype, 'renderIFrame')
869
+ .mockImplementation(async function () {
870
+ this.iFrame = undefined;
871
+ });
872
+ const observer = startAutoMCPFrameRenderer({});
873
+ const iframe = document.createElement('iframe');
874
+ iframe.src = REPLAY_SRC;
875
+ document.body.appendChild(iframe);
876
+ await new Promise((r) => setTimeout(r, 100));
877
+ observer.disconnect();
878
+ // Resolution ran, and marking a missing frame did not throw.
879
+ expect(fetchedUrls()).toHaveLength(2);
880
+ expect(renderIFrameSpy).toHaveBeenCalledTimes(1);
881
+ });
882
+ describe('sharing the answer-id list', () => {
883
+ const replaySrc = (index, conversationId = CONVERSATION_ID) => `https://${thoughtSpotHost}/v2/?${Param.Tsmcp}=true`
884
+ + `&${Param.TsmcpConversationId}=${conversationId}`
885
+ + `&${Param.TsmcpAnswerIndex}=${index}`;
886
+ /**
887
+ * Mounts all `srcs` in one batch, as a replayed chat does.
888
+ * Returns the rendered srcs.
889
+ */
890
+ async function renderReplayBatch(srcs) {
891
+ const rendered = [];
892
+ renderIFrameSpy.mockRestore();
893
+ renderIFrameSpy = jest.spyOn(TsEmbed.prototype, 'renderIFrame')
894
+ .mockImplementation(async function (capturedSrc) {
895
+ rendered.push(capturedSrc);
896
+ this.iFrame = document.createElement('iframe');
897
+ });
898
+ const observer = startAutoMCPFrameRenderer({});
899
+ const container = document.createElement('div');
900
+ srcs.forEach((src) => {
901
+ const iframe = document.createElement('iframe');
902
+ iframe.src = src;
903
+ container.appendChild(iframe);
904
+ });
905
+ document.body.appendChild(container);
906
+ await new Promise((r) => setTimeout(r, 100));
907
+ observer.disconnect();
908
+ return rendered;
909
+ }
910
+ const listCalls = () => fetchedUrls().filter((url) => !url.includes('/load/'));
911
+ const loadCalls = () => fetchedUrls().filter((url) => url.includes('/load/'));
912
+ test('concurrent frames from one conversation share one list call', async () => {
913
+ const rendered = await renderReplayBatch([replaySrc(0), replaySrc(1)]);
914
+ expect(listCalls()).toHaveLength(1);
915
+ // Each answer still loads its own live session.
916
+ expect(loadCalls()).toHaveLength(2);
917
+ expect(loadCalls().some((url) => url.includes('/message/ans_first/'))).toBe(true);
918
+ expect(loadCalls().some((url) => url.includes('/message/ans_second/'))).toBe(true);
919
+ expect(rendered.every((src) => src.includes('sessionId=fresh-session'))).toBe(true);
920
+ });
921
+ test('frames from different conversations do not share a list', async () => {
922
+ await renderReplayBatch([replaySrc(0), replaySrc(0, 'otherConversation')]);
923
+ expect(listCalls()).toHaveLength(2);
924
+ expect(listCalls().some((url) => url.includes('/otherConversation/'))).toBe(true);
925
+ });
926
+ test('a failed list is not reused by a later frame', async () => {
927
+ fetchMock.mockImplementation(async () => ({ ok: false, status: 500 }));
928
+ await renderReplayBatch([replaySrc(0)]);
929
+ expect(listCalls()).toHaveLength(1);
930
+ mockConversation(messagesPayload);
931
+ const rendered = await renderReplayBatch([replaySrc(0)]);
932
+ expect(listCalls()).toHaveLength(2);
933
+ expect(rendered[0]).toContain('sessionId=fresh-session');
934
+ });
935
+ test('a frame mounted after the batch settles reads a fresh list', async () => {
936
+ await renderReplayBatch([replaySrc(0)]);
937
+ await renderReplayBatch([replaySrc(1)]);
938
+ expect(listCalls()).toHaveLength(2);
939
+ });
940
+ test('a list too short for the index is read exactly once more', async () => {
941
+ // The first read predates the second answer; the
942
+ // second read has it.
943
+ let listReads = 0;
944
+ fetchMock.mockImplementation(async (input) => {
945
+ const url = typeof input === 'string' ? input : input.url;
946
+ if (url.includes('/load/public')) {
947
+ return { ok: true, status: 200, json: async () => detailsPayload };
948
+ }
949
+ listReads += 1;
950
+ const messages = listReads === 1
951
+ ? { messages: [messagesPayload.messages[0]] }
952
+ : messagesPayload;
953
+ return { ok: true, status: 200, json: async () => messages };
954
+ });
955
+ const rendered = await renderReplayBatch([replaySrc(1), replaySrc(1)]);
956
+ // Both frames missed on the first list and joined one re-read.
957
+ expect(listCalls()).toHaveLength(2);
958
+ expect(loadCalls()).toHaveLength(2);
959
+ expect(loadCalls().every((url) => url.includes('/message/ans_second/'))).toBe(true);
960
+ expect(rendered.every((src) => src.includes('sessionId=fresh-session'))).toBe(true);
961
+ });
962
+ });
963
+ test('a frame without a conversation id makes no API calls and is unmarked', async () => {
964
+ const { renderedSrc, frame } = await renderReplayFrame({}, TSMCP_SRC);
965
+ expect(fetchMock).not.toHaveBeenCalled();
966
+ expect(renderedSrc).toContain('/embed/viz/lb1');
967
+ expect(frame.dataset.tsStaleAnswer).toBeUndefined();
968
+ });
969
+ });
581
970
  });
582
971
  //# sourceMappingURL=auto-frame-renderer.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auto-frame-renderer.spec.js","sourceRoot":"","sources":["../../../src/embed/auto-frame-renderer.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-frame-renderer.spec.js","sourceRoot":"","sources":["../../../src/embed/auto-frame-renderer.spec.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ export class ConversationMessage extends TsEmbed {
19
19
  getIframeSrc() {
20
20
  const { sessionId, genNo, acSessionId, acGenNo, convId, messageId, } = this.viewConfig;
21
21
  const path = 'conv-assist-answer';
22
- const queryParams = this.getEmbedParamsObject();
22
+ const queryParams = this.getUrlQueryParamsObject();
23
23
  let query = '';
24
24
  const queryParamsString = getQueryParamString(queryParams, true);
25
25
  if (queryParamsString) {
@@ -1 +1 @@
1
- {"version":3,"file":"bodyless-conversation.js","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bodyless-conversation.js","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAkB,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,YAAY,IAAI,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AACvG,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AA+B/C,MAAM,OAAO,mBAAoB,SAAQ,OAAO;IAC5C,YAAY,SAAsB,EAAY,UAAyC;QACnF,UAAU,CAAC,kBAAkB,GAAG,uBAAuB,CAAC;QACxD,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAFa,eAAU,GAAV,UAAU,CAA+B;IAGvF,CAAC;IAES,oBAAoB;;QAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC9C,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,MAAA,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,mCAAI,EAAE,CAAC,CAAC,CAAC;QAC7E,WAAW,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC;QAC9C,OAAO,WAAW,CAAC;IACvB,CAAC;IAEM,YAAY;QACf,MAAM,EACF,SAAS,EACT,KAAK,EACL,WAAW,EACX,OAAO,EACP,MAAM,EACN,SAAS,GACZ,GAAG,IAAI,CAAC,UAAU,CAAC;QACpB,MAAM,IAAI,GAAG,oBAAoB,CAAC;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAEnD,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACjE,IAAI,iBAAiB,EAAE;YACnB,KAAK,GAAG,IAAI,iBAAiB,EAAE,CAAC;SACnC;QACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,2BAA2B,CAAC;YACtD,SAAS;YACT,KAAK;YACL,WAAW;YACX,OAAO;YACP,MAAM;YACN,SAAS;SACZ,CAAC,CAAC;QAEH,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,UAAU,IAAI,GAAG,gBAAgB,EAAE,CAAC;IAC9E,CAAC;IAEM,KAAK,CAAC,MAAM;QACf,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;QAErB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,iBAAiB;IAG1B,YAAoB,UAAuC;QAAvC,eAAU,GAAV,UAAU,CAA6B;QACvD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;QAErC,IAAI,CAAC,mBAAmB,GAAG,IAAI,mBAAmB,CAC9C,WAAW,CAAC,eAAe,EAC3B,UAAU,CAAC,WAAW,CACzB,CAAC;IACN,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,WAAmB;QACxC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAChF,IAAI,KAAK,EAAE;YACP,OAAO,EAAE,KAAK,EAAE,CAAC;SACpB;QAED,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAEhD,MAAM,KAAK,GAAG,IAAI,mBAAmB,CAAC,SAAS,EAAE;YAC7C,GAAG,IAAI,CAAC,UAAU;YAClB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa;YACxC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB;SAC1C,CAAC,CAAC;QACH,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,eAAe,CAAC,WAAmB;QAC5C,IAAI;YACA,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAChF,IAAI,KAAK,EAAE;gBACP,OAAO,EAAE,KAAK,EAAE,CAAC;aACpB;YACD,OAAO,EAAE,IAAI,EAAE;oBACX,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa;oBACxC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB;iBAC1C,EAAE,CAAC;SACP;QAAC,OAAO,KAAK,EAAE;YACZ,OAAO,EAAE,KAAK,EAAE,KAAc,EAAE,CAAC;SACpC;IACL,CAAC;CACJ;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAO,oBAAqB,SAAQ,iBAAiB;IACvD,YAAY,UAA0C;QAClD,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;CACJ"}
@@ -1,5 +1,6 @@
1
1
  import { BaseViewConfig, RuntimeFilter, RuntimeParameter, DefaultAppInitData, VisualizationOverrides, SpotterFileUploadFileTypes } from '../types';
2
2
  import { TsEmbed } from './ts-embed';
3
+ import { SpotterExperienceVersion } from './spotter-utils';
3
4
  /**
4
5
  * Configuration for search options
5
6
  */
@@ -423,6 +424,20 @@ export interface SpotterAnalystConfig {
423
424
  * @group Embed components
424
425
  */
425
426
  export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, 'primaryAction'> {
427
+ /**
428
+ * The Spotter experience version to load. When set to
429
+ * `SpotterExperienceVersion.SPOTTER_2026_11`, the embed loads the updated Spotter
430
+ * surface instead of the default conversation surface.
431
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.11.0.cl
432
+ * @example
433
+ * ```js
434
+ * const embed = new SpotterEmbed('#tsEmbed', {
435
+ * ... // other options
436
+ * spotterExperienceVersion: SpotterExperienceVersion.SPOTTER_2026_11,
437
+ * });
438
+ * ```
439
+ */
440
+ spotterExperienceVersion?: SpotterExperienceVersion;
426
441
  /**
427
442
  * The ID of the data source object. For example, Model, View, or Table. Spotter uses
428
443
  * this object to query data and generate Answers.