@thoughtspot/visual-embed-sdk 1.39.2 → 1.40.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 (173) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/config.spec.js +9 -0
  3. package/cjs/src/config.spec.js.map +1 -1
  4. package/cjs/src/embed/app.d.ts +75 -15
  5. package/cjs/src/embed/app.d.ts.map +1 -1
  6. package/cjs/src/embed/app.js +69 -9
  7. package/cjs/src/embed/app.js.map +1 -1
  8. package/cjs/src/embed/app.spec.js +378 -15
  9. package/cjs/src/embed/app.spec.js.map +1 -1
  10. package/cjs/src/embed/bodyless-conversation.d.ts +23 -7
  11. package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -1
  12. package/cjs/src/embed/bodyless-conversation.js +31 -5
  13. package/cjs/src/embed/bodyless-conversation.js.map +1 -1
  14. package/cjs/src/embed/bodyless-conversation.spec.js +8 -190
  15. package/cjs/src/embed/bodyless-conversation.spec.js.map +1 -1
  16. package/cjs/src/embed/conversation.spec.js +28 -0
  17. package/cjs/src/embed/conversation.spec.js.map +1 -1
  18. package/cjs/src/embed/embedConfig.d.ts +9 -7
  19. package/cjs/src/embed/embedConfig.d.ts.map +1 -1
  20. package/cjs/src/embed/embedConfig.js +9 -7
  21. package/cjs/src/embed/embedConfig.js.map +1 -1
  22. package/cjs/src/embed/liveboard.d.ts +56 -17
  23. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  24. package/cjs/src/embed/liveboard.js +48 -4
  25. package/cjs/src/embed/liveboard.js.map +1 -1
  26. package/cjs/src/embed/liveboard.spec.js +218 -11
  27. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  28. package/cjs/src/errors.d.ts +1 -0
  29. package/cjs/src/errors.d.ts.map +1 -1
  30. package/cjs/src/errors.js +1 -0
  31. package/cjs/src/errors.js.map +1 -1
  32. package/cjs/src/index.d.ts +2 -2
  33. package/cjs/src/index.d.ts.map +1 -1
  34. package/cjs/src/index.js +2 -1
  35. package/cjs/src/index.js.map +1 -1
  36. package/cjs/src/react/all-types-export.d.ts +1 -1
  37. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  38. package/cjs/src/react/all-types-export.js +3 -2
  39. package/cjs/src/react/all-types-export.js.map +1 -1
  40. package/cjs/src/react/index.d.ts +73 -20
  41. package/cjs/src/react/index.d.ts.map +1 -1
  42. package/cjs/src/react/index.js +79 -42
  43. package/cjs/src/react/index.js.map +1 -1
  44. package/cjs/src/react/index.spec.js +438 -100
  45. package/cjs/src/react/index.spec.js.map +1 -1
  46. package/cjs/src/types.d.ts +331 -13
  47. package/cjs/src/types.d.ts.map +1 -1
  48. package/cjs/src/types.js +296 -8
  49. package/cjs/src/types.js.map +1 -1
  50. package/cjs/src/utils/global-styles.js +1 -1
  51. package/cjs/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
  52. package/cjs/src/utils/graphql/nlsService/conversation-service.js +7 -1
  53. package/cjs/src/utils/graphql/nlsService/conversation-service.js.map +1 -1
  54. package/cjs/src/utils/processTrigger.js +2 -1
  55. package/cjs/src/utils/processTrigger.js.map +1 -1
  56. package/cjs/src/utils.d.ts +6 -0
  57. package/cjs/src/utils.d.ts.map +1 -1
  58. package/cjs/src/utils.js +23 -3
  59. package/cjs/src/utils.js.map +1 -1
  60. package/cjs/src/utils.spec.js +237 -1
  61. package/cjs/src/utils.spec.js.map +1 -1
  62. package/dist/{index-CmEQfuE3.js → index-CAEHQGLc.js} +1 -1
  63. package/dist/src/embed/app.d.ts +75 -15
  64. package/dist/src/embed/app.d.ts.map +1 -1
  65. package/dist/src/embed/bodyless-conversation.d.ts +23 -7
  66. package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
  67. package/dist/src/embed/embedConfig.d.ts +9 -7
  68. package/dist/src/embed/embedConfig.d.ts.map +1 -1
  69. package/dist/src/embed/liveboard.d.ts +56 -17
  70. package/dist/src/embed/liveboard.d.ts.map +1 -1
  71. package/dist/src/errors.d.ts +1 -0
  72. package/dist/src/errors.d.ts.map +1 -1
  73. package/dist/src/index.d.ts +2 -2
  74. package/dist/src/index.d.ts.map +1 -1
  75. package/dist/src/react/all-types-export.d.ts +1 -1
  76. package/dist/src/react/all-types-export.d.ts.map +1 -1
  77. package/dist/src/react/index.d.ts +73 -20
  78. package/dist/src/react/index.d.ts.map +1 -1
  79. package/dist/src/types.d.ts +331 -13
  80. package/dist/src/types.d.ts.map +1 -1
  81. package/dist/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
  82. package/dist/src/utils.d.ts +6 -0
  83. package/dist/src/utils.d.ts.map +1 -1
  84. package/dist/tsembed-react.es.js +568 -87
  85. package/dist/tsembed-react.js +568 -85
  86. package/dist/tsembed.es.js +486 -40
  87. package/dist/tsembed.js +484 -38
  88. package/dist/visual-embed-sdk-react-full.d.ts +545 -79
  89. package/dist/visual-embed-sdk-react.d.ts +545 -79
  90. package/dist/visual-embed-sdk.d.ts +473 -60
  91. package/lib/package.json +1 -1
  92. package/lib/src/config.spec.js +9 -0
  93. package/lib/src/config.spec.js.map +1 -1
  94. package/lib/src/embed/app.d.ts +75 -15
  95. package/lib/src/embed/app.d.ts.map +1 -1
  96. package/lib/src/embed/app.js +69 -9
  97. package/lib/src/embed/app.js.map +1 -1
  98. package/lib/src/embed/app.spec.js +380 -17
  99. package/lib/src/embed/app.spec.js.map +1 -1
  100. package/lib/src/embed/bodyless-conversation.d.ts +23 -7
  101. package/lib/src/embed/bodyless-conversation.d.ts.map +1 -1
  102. package/lib/src/embed/bodyless-conversation.js +30 -5
  103. package/lib/src/embed/bodyless-conversation.js.map +1 -1
  104. package/lib/src/embed/bodyless-conversation.spec.js +9 -191
  105. package/lib/src/embed/bodyless-conversation.spec.js.map +1 -1
  106. package/lib/src/embed/conversation.spec.js +30 -2
  107. package/lib/src/embed/conversation.spec.js.map +1 -1
  108. package/lib/src/embed/embedConfig.d.ts +9 -7
  109. package/lib/src/embed/embedConfig.d.ts.map +1 -1
  110. package/lib/src/embed/embedConfig.js +9 -7
  111. package/lib/src/embed/embedConfig.js.map +1 -1
  112. package/lib/src/embed/liveboard.d.ts +56 -17
  113. package/lib/src/embed/liveboard.d.ts.map +1 -1
  114. package/lib/src/embed/liveboard.js +49 -5
  115. package/lib/src/embed/liveboard.js.map +1 -1
  116. package/lib/src/embed/liveboard.spec.js +218 -11
  117. package/lib/src/embed/liveboard.spec.js.map +1 -1
  118. package/lib/src/errors.d.ts +1 -0
  119. package/lib/src/errors.d.ts.map +1 -1
  120. package/lib/src/errors.js +1 -0
  121. package/lib/src/errors.js.map +1 -1
  122. package/lib/src/index.d.ts +2 -2
  123. package/lib/src/index.d.ts.map +1 -1
  124. package/lib/src/index.js +2 -2
  125. package/lib/src/index.js.map +1 -1
  126. package/lib/src/react/all-types-export.d.ts +1 -1
  127. package/lib/src/react/all-types-export.d.ts.map +1 -1
  128. package/lib/src/react/all-types-export.js +1 -1
  129. package/lib/src/react/all-types-export.js.map +1 -1
  130. package/lib/src/react/index.d.ts +73 -20
  131. package/lib/src/react/index.d.ts.map +1 -1
  132. package/lib/src/react/index.js +79 -43
  133. package/lib/src/react/index.js.map +1 -1
  134. package/lib/src/react/index.spec.js +441 -103
  135. package/lib/src/react/index.spec.js.map +1 -1
  136. package/lib/src/types.d.ts +331 -13
  137. package/lib/src/types.d.ts.map +1 -1
  138. package/lib/src/types.js +296 -8
  139. package/lib/src/types.js.map +1 -1
  140. package/lib/src/utils/global-styles.js +1 -1
  141. package/lib/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
  142. package/lib/src/utils/graphql/nlsService/conversation-service.js +7 -1
  143. package/lib/src/utils/graphql/nlsService/conversation-service.js.map +1 -1
  144. package/lib/src/utils/processTrigger.js +2 -1
  145. package/lib/src/utils/processTrigger.js.map +1 -1
  146. package/lib/src/utils.d.ts +6 -0
  147. package/lib/src/utils.d.ts.map +1 -1
  148. package/lib/src/utils.js +21 -2
  149. package/lib/src/utils.js.map +1 -1
  150. package/lib/src/utils.spec.js +238 -2
  151. package/lib/src/utils.spec.js.map +1 -1
  152. package/lib/src/visual-embed-sdk.d.ts +474 -61
  153. package/package.json +1 -1
  154. package/src/config.spec.ts +11 -0
  155. package/src/embed/app.spec.ts +486 -30
  156. package/src/embed/app.ts +133 -27
  157. package/src/embed/bodyless-conversation.spec.ts +9 -203
  158. package/src/embed/bodyless-conversation.ts +34 -10
  159. package/src/embed/conversation.spec.ts +40 -2
  160. package/src/embed/embedConfig.ts +10 -8
  161. package/src/embed/liveboard.spec.ts +259 -5
  162. package/src/embed/liveboard.ts +98 -27
  163. package/src/errors.ts +1 -0
  164. package/src/index.ts +2 -0
  165. package/src/react/all-types-export.ts +2 -1
  166. package/src/react/index.spec.tsx +558 -157
  167. package/src/react/index.tsx +117 -51
  168. package/src/types.ts +368 -50
  169. package/src/utils/global-styles.ts +1 -1
  170. package/src/utils/graphql/nlsService/conversation-service.ts +7 -1
  171. package/src/utils/processTrigger.ts +1 -1
  172. package/src/utils.spec.ts +279 -2
  173. package/src/utils.ts +28 -2
@@ -1,6 +1,6 @@
1
- import { AppEmbed, DataPanelCustomColumnGroupsAccordionState, Page, HomePageSearchBarMode, PrimaryNavbarVersion, HomePage, } from './app';
1
+ import { AppEmbed, DataPanelCustomColumnGroupsAccordionState, Page, HomePageSearchBarMode, PrimaryNavbarVersion, HomePage, ListPage, } from './app';
2
2
  import { init } from '../index';
3
- import { Action, AuthType, EmbedEvent, HostEvent, RuntimeFilterOp, } from '../types';
3
+ import { Action, AuthType, EmbedEvent, HostEvent, RuntimeFilterOp } from '../types';
4
4
  import { executeAfterWait, getDocumentBody, getIFrameSrc, getRootEl, getIFrameEl, mockMessageChannel, defaultParams, defaultParamsForPinboardEmbed, defaultParamsWithoutHiddenActions, expectUrlMatchesWithParams, } from '../test/test-utils';
5
5
  import * as config from '../config';
6
6
  import { TsEmbed } from './ts-embed';
@@ -21,12 +21,13 @@ beforeAll(() => {
21
21
  authType: AuthType.None,
22
22
  });
23
23
  jest.spyOn(auth, 'postLoginService').mockImplementation(() => Promise.resolve({}));
24
- window.ResizeObserver = window.ResizeObserver
25
- || jest.fn().mockImplementation(() => ({
26
- disconnect: jest.fn(),
27
- observe: jest.fn(),
28
- unobserve: jest.fn(),
29
- }));
24
+ window.ResizeObserver =
25
+ window.ResizeObserver ||
26
+ jest.fn().mockImplementation(() => ({
27
+ disconnect: jest.fn(),
28
+ observe: jest.fn(),
29
+ unobserve: jest.fn(),
30
+ }));
30
31
  });
31
32
  const cleanUp = () => {
32
33
  document.body.innerHTML = getDocumentBody();
@@ -84,7 +85,6 @@ describe('App embed tests', () => {
84
85
  });
85
86
  });
86
87
  describe('should render the correct routes for pages', () => {
87
- /* eslint-disable no-loop-func */
88
88
  const pageRouteMap = {
89
89
  [Page.Search]: 'answer',
90
90
  [Page.Answers]: 'answers',
@@ -125,7 +125,7 @@ describe('App embed tests', () => {
125
125
  for (let i = 0; i < pageIdsForModularHomes.length; i++) {
126
126
  const pageIdsForModularHome = pageIdsForModularHomes[i];
127
127
  test(`${pageIdsForModularHome}`, async () => {
128
- const route = pageRouteMap[pageIdsForModularHome];
128
+ const route = pageRouteMapForModularHome[pageIdsForModularHome];
129
129
  const appEmbed = new AppEmbed(getRootEl(), {
130
130
  ...defaultViewConfig,
131
131
  modularHomeExperience: true,
@@ -226,6 +226,16 @@ describe('App embed tests', () => {
226
226
  expectUrlMatchesWithParams(getIFrameSrc(), `http://${thoughtSpotHost}/?embedApp=true&profileAndHelpInNavBarHidden=false&enable2ColumnLayout=true${defaultParamsPost}#/home`);
227
227
  });
228
228
  });
229
+ test('should set coverAndFilterOptionInPDF to false in url', async () => {
230
+ const appEmbed = new AppEmbed(getRootEl(), {
231
+ ...defaultViewConfig,
232
+ coverAndFilterOptionInPDF: false,
233
+ });
234
+ appEmbed.render();
235
+ await executeAfterWait(() => {
236
+ expectUrlMatchesWithParams(getIFrameSrc(), `http://${thoughtSpotHost}/?embedApp=true&profileAndHelpInNavBarHidden=false&arePdfCoverFilterPageCheckboxesEnabled=false${defaultParamsPost}#/home`);
237
+ });
238
+ });
229
239
  test('should set isLiveboardStylingAndGroupingEnabled to true in url', async () => {
230
240
  const appEmbed = new AppEmbed(getRootEl(), {
231
241
  ...defaultViewConfig,
@@ -427,6 +437,44 @@ describe('App embed tests', () => {
427
437
  expectUrlMatchesWithParams(getIFrameSrc(), `http://${thoughtSpotHost}/?embedApp=true&primaryNavHidden=true&profileAndHelpInNavBarHidden=false&modularHomeExperience=false&enableAskSage=true${defaultParams}${defaultParamsPost}#/home`);
428
438
  });
429
439
  });
440
+ test('Should add listpageVersion=v3 when listPageVersion is ListWithUXChanges to the iframe src', async () => {
441
+ const appEmbed = new AppEmbed(getRootEl(), {
442
+ ...defaultViewConfig,
443
+ discoveryExperience: {
444
+ listPageVersion: ListPage.ListWithUXChanges,
445
+ },
446
+ });
447
+ appEmbed.render();
448
+ await executeAfterWait(() => {
449
+ expectUrlMatchesWithParams(getIFrameSrc(), `http://${thoughtSpotHost}/?embedApp=true&primaryNavHidden=true&profileAndHelpInNavBarHidden=false&modularHomeExperience=false&listpageVersion=v3${defaultParams}${defaultParamsPost}#/home`);
450
+ });
451
+ });
452
+ test('Should not add listpageVersion when listPageVersion is List (v2) to the iframe src', async () => {
453
+ const appEmbed = new AppEmbed(getRootEl(), {
454
+ ...defaultViewConfig,
455
+ discoveryExperience: {
456
+ listPageVersion: ListPage.List,
457
+ },
458
+ });
459
+ appEmbed.render();
460
+ await executeAfterWait(() => {
461
+ expectUrlMatchesWithParams(getIFrameSrc(), `http://${thoughtSpotHost}/?embedApp=true&primaryNavHidden=true&profileAndHelpInNavBarHidden=false&modularHomeExperience=false${defaultParams}${defaultParamsPost}#/home`);
462
+ });
463
+ });
464
+ test('Should add listpageVersion=v3 combined with other discoveryExperience options to the iframe src', async () => {
465
+ const appEmbed = new AppEmbed(getRootEl(), {
466
+ ...defaultViewConfig,
467
+ discoveryExperience: {
468
+ primaryNavbarVersion: PrimaryNavbarVersion.Sliding,
469
+ homePage: HomePage.Modular,
470
+ listPageVersion: ListPage.ListWithUXChanges,
471
+ },
472
+ });
473
+ appEmbed.render();
474
+ await executeAfterWait(() => {
475
+ expectUrlMatchesWithParams(getIFrameSrc(), `http://${thoughtSpotHost}/?embedApp=true&primaryNavHidden=true&profileAndHelpInNavBarHidden=false&modularHomeExperience=true&navigationVersion=v3&listpageVersion=v3${defaultParams}${defaultParamsPost}#/home`);
476
+ });
477
+ });
430
478
  test('Should add enablePendoHelp flag to the iframe src conditional on navbar', async () => {
431
479
  const appEmbed = new AppEmbed(getRootEl(), {
432
480
  ...defaultViewConfig,
@@ -477,7 +525,6 @@ describe('App embed tests', () => {
477
525
  test('Should add dataPanelCustomGroupsAccordionInitialState flag to the iframe src', async () => {
478
526
  const appEmbed = new AppEmbed(getRootEl(), {
479
527
  ...defaultViewConfig,
480
- // eslint-disable-next-line max-len
481
528
  dataPanelCustomGroupsAccordionInitialState: DataPanelCustomColumnGroupsAccordionState.EXPAND_FIRST,
482
529
  });
483
530
  appEmbed.render();
@@ -486,13 +533,13 @@ describe('App embed tests', () => {
486
533
  });
487
534
  });
488
535
  test('should register event handlers to adjust iframe height', async () => {
489
- const onSpy = jest.spyOn(AppEmbed.prototype, 'on')
490
- .mockImplementation((event, callback) => {
536
+ let embedHeightCallback = () => { };
537
+ const onSpy = jest.spyOn(AppEmbed.prototype, 'on').mockImplementation((event, callback) => {
491
538
  if (event === EmbedEvent.RouteChange) {
492
539
  callback({ data: { currentPath: '/answers' } }, jest.fn());
493
540
  }
494
541
  if (event === EmbedEvent.EmbedHeight) {
495
- callback({ data: '100%' });
542
+ embedHeightCallback = callback;
496
543
  }
497
544
  if (event === EmbedEvent.EmbedIframeCenter) {
498
545
  callback({}, jest.fn());
@@ -504,14 +551,20 @@ describe('App embed tests', () => {
504
551
  const appEmbed = new AppEmbed(getRootEl(), {
505
552
  ...defaultViewConfig,
506
553
  fullHeight: true,
554
+ lazyLoadingForFullHeight: true,
507
555
  });
508
- appEmbed.render();
556
+ // Set the iframe before render
557
+ appEmbed.iFrame = document.createElement('iframe');
558
+ // Wait for render to complete
559
+ await appEmbed.render();
560
+ embedHeightCallback({ data: '100%' });
561
+ // Verify event handlers were registered
509
562
  await executeAfterWait(() => {
510
563
  expect(onSpy).toHaveBeenCalledWith(EmbedEvent.EmbedHeight, expect.anything());
511
564
  expect(onSpy).toHaveBeenCalledWith(EmbedEvent.RouteChange, expect.anything());
512
565
  expect(onSpy).toHaveBeenCalledWith(EmbedEvent.EmbedIframeCenter, expect.anything());
513
- });
514
- jest.clearAllMocks();
566
+ expect(onSpy).toHaveBeenCalledWith(EmbedEvent.RequestVisibleEmbedCoordinates, expect.anything());
567
+ }, 100);
515
568
  });
516
569
  describe('Navigate to Page API', () => {
517
570
  const path = 'pinboard/e0836cad-4fdf-42d4-bd97-567a6b2a6058';
@@ -576,5 +629,315 @@ describe('App embed tests', () => {
576
629
  expect(logger.log).toHaveBeenCalledWith('Please call render before invoking this method');
577
630
  });
578
631
  });
632
+ describe('LazyLoadingForFullHeight functionality', () => {
633
+ let mockIFrame;
634
+ beforeEach(() => {
635
+ mockIFrame = document.createElement('iframe');
636
+ mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
637
+ top: 100,
638
+ left: 150,
639
+ bottom: 600,
640
+ right: 800,
641
+ width: 650,
642
+ height: 500,
643
+ });
644
+ jest.spyOn(document, 'createElement').mockImplementation((tagName) => {
645
+ if (tagName === 'iframe') {
646
+ return mockIFrame;
647
+ }
648
+ return document.createElement(tagName);
649
+ });
650
+ });
651
+ afterEach(() => {
652
+ jest.restoreAllMocks();
653
+ });
654
+ test('should set lazyLoadingMargin parameter when provided', async () => {
655
+ const appEmbed = new AppEmbed(getRootEl(), {
656
+ ...defaultViewConfig,
657
+ fullHeight: true,
658
+ lazyLoadingForFullHeight: true,
659
+ lazyLoadingMargin: '100px 0px',
660
+ });
661
+ await appEmbed.render();
662
+ await executeAfterWait(() => {
663
+ const iframeSrc = getIFrameSrc();
664
+ expect(iframeSrc).toContain('isLazyLoadingForEmbedEnabled=true');
665
+ expect(iframeSrc).toContain('isFullHeightPinboard=true');
666
+ expect(iframeSrc).toContain('rootMarginForLazyLoad=100px%200px');
667
+ }, 100);
668
+ });
669
+ test('should set isLazyLoadingForEmbedEnabled=true when both fullHeight and lazyLoadingForFullHeight are enabled', async () => {
670
+ // Mock the iframe element first
671
+ mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
672
+ top: 100,
673
+ left: 150,
674
+ bottom: 600,
675
+ right: 800,
676
+ width: 650,
677
+ height: 500,
678
+ });
679
+ Object.defineProperty(mockIFrame, 'scrollHeight', { value: 500 });
680
+ // Mock the event handlers
681
+ const onSpy = jest.spyOn(AppEmbed.prototype, 'on').mockImplementation((event, callback) => {
682
+ return null;
683
+ });
684
+ jest.spyOn(TsEmbed.prototype, 'getIframeCenter').mockReturnValue({});
685
+ jest.spyOn(TsEmbed.prototype, 'setIFrameHeight').mockReturnValue({});
686
+ // Create the AppEmbed instance
687
+ const appEmbed = new AppEmbed(getRootEl(), {
688
+ ...defaultViewConfig,
689
+ fullHeight: true,
690
+ lazyLoadingForFullHeight: true,
691
+ });
692
+ // Set the iframe before render
693
+ appEmbed.iFrame = mockIFrame;
694
+ // Add the iframe to the DOM
695
+ const rootEl = getRootEl();
696
+ rootEl.appendChild(mockIFrame);
697
+ // Wait for render to complete
698
+ await appEmbed.render();
699
+ // Wait for iframe initialization and URL parameters to be set
700
+ await executeAfterWait(() => {
701
+ const iframeSrc = appEmbed.getIFrameSrc();
702
+ expect(iframeSrc).toContain('isLazyLoadingForEmbedEnabled=true');
703
+ expect(iframeSrc).toContain('isFullHeightPinboard=true');
704
+ }, 100);
705
+ });
706
+ test('should not set lazyLoadingForEmbed when lazyLoadingForFullHeight is enabled but fullHeight is false', async () => {
707
+ const appEmbed = new AppEmbed(getRootEl(), {
708
+ ...defaultViewConfig,
709
+ fullHeight: false,
710
+ lazyLoadingForFullHeight: true,
711
+ });
712
+ // Wait for render to complete
713
+ await appEmbed.render();
714
+ // Wait for iframe initialization and URL parameters to be set
715
+ await executeAfterWait(() => {
716
+ const iframeSrc = getIFrameSrc();
717
+ expect(iframeSrc).not.toContain('isLazyLoadingForEmbedEnabled=true');
718
+ expect(iframeSrc).not.toContain('isFullHeightPinboard=true');
719
+ }, 100); // 100ms wait time to ensure iframe src is set
720
+ });
721
+ test('should not set isLazyLoadingForEmbedEnabled when fullHeight is true but lazyLoadingForFullHeight is false', async () => {
722
+ const appEmbed = new AppEmbed(getRootEl(), {
723
+ ...defaultViewConfig,
724
+ fullHeight: true,
725
+ lazyLoadingForFullHeight: false,
726
+ });
727
+ // Wait for render to complete
728
+ await appEmbed.render();
729
+ // Wait for iframe initialization and URL parameters to be set
730
+ await executeAfterWait(() => {
731
+ const iframeSrc = getIFrameSrc();
732
+ expect(iframeSrc).not.toContain('isLazyLoadingForEmbedEnabled=true');
733
+ expect(iframeSrc).toContain('isFullHeightPinboard=true');
734
+ }, 100); // 100ms wait time to ensure iframe src is set
735
+ });
736
+ test('should register RequestFullHeightLazyLoadData event handler when fullHeight is enabled', async () => {
737
+ const onSpy = jest.spyOn(AppEmbed.prototype, 'on');
738
+ const appEmbed = new AppEmbed(getRootEl(), {
739
+ ...defaultViewConfig,
740
+ fullHeight: true,
741
+ });
742
+ await appEmbed.render();
743
+ expect(onSpy).toHaveBeenCalledWith(EmbedEvent.RequestVisibleEmbedCoordinates, expect.any(Function));
744
+ onSpy.mockRestore();
745
+ });
746
+ test('should send correct visible data when RequestFullHeightLazyLoadData is triggered', async () => {
747
+ const appEmbed = new AppEmbed(getRootEl(), {
748
+ ...defaultViewConfig,
749
+ fullHeight: true,
750
+ lazyLoadingForFullHeight: true,
751
+ });
752
+ const mockTrigger = jest.spyOn(appEmbed, 'trigger');
753
+ await appEmbed.render();
754
+ // Trigger the lazy load data calculation
755
+ appEmbed.sendFullHeightLazyLoadData();
756
+ expect(mockTrigger).toHaveBeenCalledWith(HostEvent.VisibleEmbedCoordinates, {
757
+ top: 0,
758
+ height: 500,
759
+ left: 0,
760
+ width: 650,
761
+ });
762
+ });
763
+ test('should calculate correct visible data for partially visible full height element', async () => {
764
+ // Mock iframe partially clipped from top and left
765
+ mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
766
+ top: -50,
767
+ left: -30,
768
+ bottom: 700,
769
+ right: 1024,
770
+ width: 1054,
771
+ height: 750,
772
+ });
773
+ const appEmbed = new AppEmbed(getRootEl(), {
774
+ ...defaultViewConfig,
775
+ fullHeight: true,
776
+ lazyLoadingForFullHeight: true,
777
+ });
778
+ const mockTrigger = jest.spyOn(appEmbed, 'trigger');
779
+ await appEmbed.render();
780
+ // Trigger the lazy load data calculation
781
+ appEmbed.sendFullHeightLazyLoadData();
782
+ expect(mockTrigger).toHaveBeenCalledWith(HostEvent.VisibleEmbedCoordinates, {
783
+ top: 50,
784
+ height: 700,
785
+ left: 30,
786
+ width: 1024, // visible width (from 0 to 1024)
787
+ });
788
+ });
789
+ test('should add window event listeners for resize and scroll when fullHeight and lazyLoadingForFullHeight are enabled', async () => {
790
+ const addEventListenerSpy = jest.spyOn(window, 'addEventListener');
791
+ const appEmbed = new AppEmbed(getRootEl(), {
792
+ ...defaultViewConfig,
793
+ fullHeight: true,
794
+ lazyLoadingForFullHeight: true,
795
+ });
796
+ await appEmbed.render();
797
+ // Wait for the post-render events to be registered
798
+ await executeAfterWait(() => {
799
+ expect(addEventListenerSpy).toHaveBeenCalledWith('resize', expect.any(Function));
800
+ expect(addEventListenerSpy).toHaveBeenCalledWith('scroll', expect.any(Function), true);
801
+ }, 100);
802
+ addEventListenerSpy.mockRestore();
803
+ });
804
+ test('should remove window event listeners on destroy when fullHeight and lazyLoadingForFullHeight are enabled', async () => {
805
+ const removeEventListenerSpy = jest.spyOn(window, 'removeEventListener');
806
+ const appEmbed = new AppEmbed(getRootEl(), {
807
+ ...defaultViewConfig,
808
+ fullHeight: true,
809
+ lazyLoadingForFullHeight: true,
810
+ });
811
+ await appEmbed.render();
812
+ appEmbed.destroy();
813
+ expect(removeEventListenerSpy).toHaveBeenCalledWith('resize', expect.any(Function));
814
+ expect(removeEventListenerSpy).toHaveBeenCalledWith('scroll', expect.any(Function));
815
+ removeEventListenerSpy.mockRestore();
816
+ });
817
+ test('should handle RequestVisibleEmbedCoordinates event and respond with correct data', async () => {
818
+ // Mock the iframe element
819
+ mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
820
+ top: 100,
821
+ left: 150,
822
+ bottom: 600,
823
+ right: 800,
824
+ width: 650,
825
+ height: 500,
826
+ });
827
+ Object.defineProperty(mockIFrame, 'scrollHeight', { value: 500 });
828
+ const appEmbed = new AppEmbed(getRootEl(), {
829
+ ...defaultViewConfig,
830
+ fullHeight: true,
831
+ lazyLoadingForFullHeight: true,
832
+ });
833
+ // Set the iframe before render
834
+ appEmbed.iFrame = mockIFrame;
835
+ await appEmbed.render();
836
+ // Create a mock responder function
837
+ const mockResponder = jest.fn();
838
+ // Trigger the handler directly
839
+ appEmbed.requestVisibleEmbedCoordinatesHandler({}, mockResponder);
840
+ // Verify the responder was called with the correct data
841
+ expect(mockResponder).toHaveBeenCalledWith({
842
+ type: EmbedEvent.RequestVisibleEmbedCoordinates,
843
+ data: {
844
+ top: 0,
845
+ height: 500,
846
+ left: 0,
847
+ width: 650,
848
+ },
849
+ });
850
+ });
851
+ });
852
+ describe('IFrame height management', () => {
853
+ let mockIFrame;
854
+ beforeEach(() => {
855
+ mockIFrame = document.createElement('iframe');
856
+ mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
857
+ top: 100,
858
+ left: 150,
859
+ bottom: 600,
860
+ right: 800,
861
+ width: 650,
862
+ height: 500,
863
+ });
864
+ Object.defineProperty(mockIFrame, 'scrollHeight', { value: 500 });
865
+ });
866
+ test('should not call setIFrameHeight if currentPath starts with "/embed/viz/"', () => {
867
+ const appEmbed = new AppEmbed(getRootEl(), {
868
+ ...defaultViewConfig,
869
+ fullHeight: true,
870
+ });
871
+ const spySetIFrameHeight = jest.spyOn(appEmbed, 'setIFrameHeight');
872
+ appEmbed.render();
873
+ appEmbed.setIframeHeightForNonEmbedLiveboard({
874
+ data: { currentPath: '/embed/viz/' },
875
+ type: 'Route',
876
+ });
877
+ expect(spySetIFrameHeight).not.toHaveBeenCalled();
878
+ });
879
+ test('should not call setIFrameHeight if currentPath starts with "/embed/insights/viz/"', () => {
880
+ const appEmbed = new AppEmbed(getRootEl(), {
881
+ ...defaultViewConfig,
882
+ fullHeight: true,
883
+ });
884
+ const spySetIFrameHeight = jest.spyOn(appEmbed, 'setIFrameHeight');
885
+ appEmbed.render();
886
+ appEmbed.setIframeHeightForNonEmbedLiveboard({
887
+ data: { currentPath: '/embed/insights/viz/' },
888
+ type: 'Route',
889
+ });
890
+ expect(spySetIFrameHeight).not.toHaveBeenCalled();
891
+ });
892
+ test('should call setIFrameHeight if currentPath starts with "/some/other/path/"', () => {
893
+ const appEmbed = new AppEmbed(getRootEl(), {
894
+ ...defaultViewConfig,
895
+ fullHeight: true,
896
+ });
897
+ const spySetIFrameHeight = jest
898
+ .spyOn(appEmbed, 'setIFrameHeight')
899
+ .mockImplementation(jest.fn());
900
+ appEmbed.render();
901
+ appEmbed.setIframeHeightForNonEmbedLiveboard({
902
+ data: { currentPath: '/some/other/path/' },
903
+ type: 'Route',
904
+ });
905
+ expect(spySetIFrameHeight).toHaveBeenCalled();
906
+ });
907
+ test('should update iframe height correctly', async () => {
908
+ const appEmbed = new AppEmbed(getRootEl(), {
909
+ ...defaultViewConfig,
910
+ fullHeight: true,
911
+ });
912
+ // Set up the mock iframe
913
+ appEmbed.iFrame = mockIFrame;
914
+ document.body.appendChild(mockIFrame);
915
+ await appEmbed.render();
916
+ const mockEvent = {
917
+ data: 600,
918
+ type: EmbedEvent.EmbedHeight,
919
+ };
920
+ appEmbed.updateIFrameHeight(mockEvent);
921
+ // Check if the iframe style was updated
922
+ expect(mockIFrame.style.height).toBe('600px');
923
+ });
924
+ test('should handle updateIFrameHeight with default height', async () => {
925
+ const appEmbed = new AppEmbed(getRootEl(), {
926
+ ...defaultViewConfig,
927
+ fullHeight: true,
928
+ });
929
+ // Set up the mock iframe
930
+ appEmbed.iFrame = mockIFrame;
931
+ document.body.appendChild(mockIFrame);
932
+ await appEmbed.render();
933
+ const mockEvent = {
934
+ data: 0,
935
+ type: EmbedEvent.EmbedHeight,
936
+ };
937
+ appEmbed.updateIFrameHeight(mockEvent);
938
+ // Should use the scrollHeight
939
+ expect(mockIFrame.style.height).toBe('500px');
940
+ });
941
+ });
579
942
  });
580
943
  //# sourceMappingURL=app.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.spec.js","sourceRoot":"","sources":["../../../src/embed/app.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.spec.js","sourceRoot":"","sources":["../../../src/embed/app.spec.ts"],"names":[],"mappings":"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"}
@@ -9,10 +9,6 @@ export interface SpotterAgentEmbedViewConfig extends Omit<BaseViewConfig, 'prima
9
9
  * The ID of the worksheet to use for the conversation.
10
10
  */
11
11
  worksheetId: string;
12
- /**
13
- * Optional CSS class name to add to the container div.
14
- */
15
- containerClassName?: string;
16
12
  }
17
13
  /**
18
14
  * Configuration for conversation options.
@@ -22,13 +18,15 @@ export interface SpotterAgentEmbedViewConfig extends Omit<BaseViewConfig, 'prima
22
18
  */
23
19
  export interface BodylessConversationViewConfig extends SpotterAgentEmbedViewConfig {
24
20
  }
25
- interface SpotterAgentMessageViewConfig extends SpotterAgentEmbedViewConfig {
21
+ export interface SpotterAgentMessageViewConfig extends SpotterAgentEmbedViewConfig {
26
22
  sessionId: string;
27
23
  genNo: number;
28
24
  acSessionId: string;
29
25
  acGenNo: number;
26
+ convId: string;
27
+ messageId: string;
30
28
  }
31
- declare class ConversationMessage extends TsEmbed {
29
+ export declare class ConversationMessage extends TsEmbed {
32
30
  protected viewConfig: SpotterAgentMessageViewConfig;
33
31
  constructor(container: HTMLElement, viewConfig: SpotterAgentMessageViewConfig);
34
32
  getIframeSrc(): string;
@@ -66,6 +64,25 @@ export declare class SpotterAgentEmbed {
66
64
  viz: ConversationMessage;
67
65
  error?: undefined;
68
66
  }>;
67
+ /**
68
+ * Send a message to the conversation service and return only the data.
69
+ * @param userMessage - The message to send to the conversation service.
70
+ * @returns The data from the conversation service.
71
+ */
72
+ sendMessageData(userMessage: string): Promise<{
73
+ error: any;
74
+ data?: undefined;
75
+ } | {
76
+ data: {
77
+ convId: any;
78
+ messageId: any;
79
+ sessionId: any;
80
+ genNo: any;
81
+ acSessionId: any;
82
+ acGenNo: any;
83
+ };
84
+ error?: undefined;
85
+ }>;
69
86
  }
70
87
  /**
71
88
  * Create a conversation embed, which can be integrated inside
@@ -90,5 +107,4 @@ export declare class SpotterAgentEmbed {
90
107
  export declare class BodylessConversation extends SpotterAgentEmbed {
91
108
  constructor(viewConfig: BodylessConversationViewConfig);
92
109
  }
93
- export {};
94
110
  //# sourceMappingURL=bodyless-conversation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bodyless-conversation.d.ts","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,cAAc,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAKrC;;;GAGG;AACH,MAAM,WAAW,2BAA4B,SAAQ,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC;IACtF;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;GAKG;AAEH,MAAM,WAAW,8BAA+B,SAAQ,2BAA2B;CAAG;AAEtF,UAAU,6BAA8B,SAAQ,2BAA2B;IACvE,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,cAAM,mBAAoB,SAAQ,OAAO;IACD,SAAS,CAAC,UAAU,EAAE,6BAA6B;gBAA3E,SAAS,EAAE,WAAW,EAAY,UAAU,EAAE,6BAA6B;IAKhF,YAAY;IA2BN,MAAM,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAOtD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,iBAAiB;IAGd,OAAO,CAAC,UAAU;IAF9B,OAAO,CAAC,mBAAmB,CAAsB;gBAE7B,UAAU,EAAE,2BAA2B;IAS9C,WAAW,CAAC,WAAW,EAAE,MAAM;;;;;;;;;CAqB/C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;gBAC3C,UAAU,EAAE,8BAA8B;CAGzD"}
1
+ {"version":3,"file":"bodyless-conversation.d.ts","sourceRoot":"","sources":["../../../src/embed/bodyless-conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,cAAc,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAKrC;;;GAGG;AACH,MAAM,WAAW,2BAA4B,SAAQ,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC;IACtF;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AAEH,MAAM,WAAW,8BAA+B,SAAQ,2BAA2B;CAAG;AAEtF,MAAM,WAAW,6BAA8B,SAAQ,2BAA2B;IAC9E,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,mBAAoB,SAAQ,OAAO;IACR,SAAS,CAAC,UAAU,EAAE,6BAA6B;gBAA3E,SAAS,EAAE,WAAW,EAAY,UAAU,EAAE,6BAA6B;IAKhF,YAAY;IA+BN,MAAM,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAOtD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,iBAAiB;IAGd,OAAO,CAAC,UAAU;IAF9B,OAAO,CAAC,mBAAmB,CAAsB;gBAE7B,UAAU,EAAE,2BAA2B;IAS9C,WAAW,CAAC,WAAW,EAAE,MAAM;;;;;;;;;IAqB5C;;;;OAIG;IACU,eAAe,CAAC,WAAW,EAAE,MAAM;;;;;;;;;;;;;;CAkBnD;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;gBAC3C,UAAU,EAAE,8BAA8B;CAGzD"}