@thoughtspot/visual-embed-sdk 1.39.3 → 1.40.1-alpha.1
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.
- package/cjs/src/embed/app.d.ts +56 -0
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +47 -8
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +322 -7
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +58 -1
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +59 -8
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +206 -0
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +7 -0
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +61 -7
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/types.d.ts +37 -6
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +35 -4
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/processTrigger.js +2 -1
- package/cjs/src/utils/processTrigger.js.map +1 -1
- package/cjs/src/utils.d.ts +6 -0
- package/cjs/src/utils.d.ts.map +1 -1
- package/cjs/src/utils.js +23 -3
- package/cjs/src/utils.js.map +1 -1
- package/cjs/src/utils.spec.js +212 -1
- package/cjs/src/utils.spec.js.map +1 -1
- package/dist/{index-ZrE8YYq8.js → index-CmEQfuE3.js} +1 -1
- package/dist/index-D1pyb7RG.js +7371 -0
- package/dist/index-DeFzsyFF.js +7371 -0
- package/dist/index-Dpf0rd6w.js +7371 -0
- package/dist/index-UuEbsISo.js +7447 -0
- package/dist/index-e3Uw3YFO.js +7371 -0
- package/dist/src/embed/app.d.ts +56 -0
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/bodyless-conversation.d.ts +0 -4
- package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +56 -0
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/react/index.d.ts +0 -2
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/types.d.ts +16 -198
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -1
- package/dist/src/utils.d.ts +6 -0
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +137 -224
- package/dist/tsembed-react.js +136 -223
- package/dist/tsembed.es.js +137 -224
- package/dist/tsembed.js +136 -223
- package/dist/visual-embed-sdk-react-full.d.ts +106 -204
- package/dist/visual-embed-sdk-react.d.ts +106 -204
- package/dist/visual-embed-sdk.d.ts +106 -202
- package/lib/src/embed/app.d.ts +56 -0
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +48 -9
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +322 -7
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +58 -1
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +60 -9
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +206 -0
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +7 -0
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +61 -7
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/types.d.ts +37 -6
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +35 -4
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/processTrigger.js +2 -1
- package/lib/src/utils/processTrigger.js.map +1 -1
- package/lib/src/utils.d.ts +6 -0
- package/lib/src/utils.d.ts.map +1 -1
- package/lib/src/utils.js +21 -2
- package/lib/src/utils.js.map +1 -1
- package/lib/src/utils.spec.js +213 -2
- package/lib/src/utils.spec.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +106 -202
- package/package.json +1 -2
- package/src/embed/app.spec.ts +397 -8
- package/src/embed/app.ts +106 -12
- package/src/embed/liveboard.spec.ts +254 -1
- package/src/embed/liveboard.ts +109 -11
- package/src/embed/ts-embed.ts +84 -21
- package/src/types.ts +36 -5
- package/src/utils/processTrigger.ts +1 -1
- package/src/utils.spec.ts +250 -2
- package/src/utils.ts +28 -2
package/cjs/src/embed/app.d.ts
CHANGED
|
@@ -511,6 +511,46 @@ export interface AppViewConfig extends AllEmbedViewConfig {
|
|
|
511
511
|
* ```
|
|
512
512
|
*/
|
|
513
513
|
isLiveboardStylingAndGroupingEnabled?: boolean;
|
|
514
|
+
/**
|
|
515
|
+
* This flag is used to enable the full height lazy load data.
|
|
516
|
+
*
|
|
517
|
+
* @example
|
|
518
|
+
* ```js
|
|
519
|
+
* const embed = new AppEmbed('#embed-container', {
|
|
520
|
+
* // ...other options
|
|
521
|
+
* fullHeight: true,
|
|
522
|
+
* lazyLoadingForFullHeight: true,
|
|
523
|
+
* })
|
|
524
|
+
* ```
|
|
525
|
+
*
|
|
526
|
+
* @type {boolean}
|
|
527
|
+
* @default false
|
|
528
|
+
* @version SDK: 1.40.0 | ThoughtSpot:10.12.0.cl
|
|
529
|
+
*/
|
|
530
|
+
lazyLoadingForFullHeight?: boolean;
|
|
531
|
+
/**
|
|
532
|
+
* The margin to be used for lazy loading.
|
|
533
|
+
*
|
|
534
|
+
* For example, if the margin is set to '10px',
|
|
535
|
+
* the visualization will be loaded 10px before the its top edge is visible in the
|
|
536
|
+
* viewport.
|
|
537
|
+
*
|
|
538
|
+
* The format is similar to CSS margin.
|
|
539
|
+
*
|
|
540
|
+
* @example
|
|
541
|
+
* ```js
|
|
542
|
+
* const embed = new AppEmbed('#embed-container', {
|
|
543
|
+
* // ...other options
|
|
544
|
+
* fullHeight: true,
|
|
545
|
+
* lazyLoadingForFullHeight: true,
|
|
546
|
+
* // Using 0px, the visualization will be only loaded when its visible in the viewport.
|
|
547
|
+
* lazyLoadingMargin: '0px',
|
|
548
|
+
* })
|
|
549
|
+
* ```
|
|
550
|
+
* @type {string}
|
|
551
|
+
* @version SDK: 1.40.0 | ThoughtSpot:10.12.0.cl
|
|
552
|
+
*/
|
|
553
|
+
lazyLoadingMargin?: string;
|
|
514
554
|
}
|
|
515
555
|
/**
|
|
516
556
|
* Embeds full ThoughtSpot experience in a host application.
|
|
@@ -525,6 +565,14 @@ export declare class AppEmbed extends V1Embed {
|
|
|
525
565
|
* embedded Liveboard or visualization.
|
|
526
566
|
*/
|
|
527
567
|
protected getEmbedParams(): string;
|
|
568
|
+
private sendFullHeightLazyLoadData;
|
|
569
|
+
/**
|
|
570
|
+
* This is a handler for the RequestVisibleEmbedCoordinates event.
|
|
571
|
+
* It is used to send the visible coordinates data to the host application.
|
|
572
|
+
* @param data The event payload
|
|
573
|
+
* @param responder The responder function
|
|
574
|
+
*/
|
|
575
|
+
private requestVisibleEmbedCoordinatesHandler;
|
|
528
576
|
/**
|
|
529
577
|
* Constructs the URL of the ThoughtSpot app page to be rendered.
|
|
530
578
|
* @param pageId The ID of the page to be embedded.
|
|
@@ -562,6 +610,14 @@ export declare class AppEmbed extends V1Embed {
|
|
|
562
610
|
* @version SDK: 1.12.0 | ThoughtSpot: 8.4.0.cl, 8.4.1-sw
|
|
563
611
|
*/
|
|
564
612
|
navigateToPage(path: string | number, noReload?: boolean): void;
|
|
613
|
+
/**
|
|
614
|
+
* Destroys the ThoughtSpot embed, and remove any nodes from the DOM.
|
|
615
|
+
* @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
|
|
616
|
+
*/
|
|
617
|
+
destroy(): void;
|
|
618
|
+
private postRender;
|
|
619
|
+
private registerLazyLoadEvents;
|
|
620
|
+
private unregisterLazyLoadEvents;
|
|
565
621
|
/**
|
|
566
622
|
* Renders the embedded application pages in the ThoughtSpot app.
|
|
567
623
|
* @param renderOptions An object containing the page ID
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/embed/app.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAEH,WAAW,EAGX,cAAc,EACd,kBAAkB,EACrB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC;;GAEG;AAEH,oBAAY,IAAI;IACZ;;OAEG;IACH,IAAI,SAAS;IACb;;OAEG;IACH,MAAM,WAAW;IACjB;;OAEG;IACH,OAAO,YAAY;IACnB;;OAEG;IACH,UAAU,eAAe;IACzB;;OAEG;IACH,SAAS,cAAc;IACvB;;OAEG;IACH,IAAI,SAAS;IACb;;OAEG;IACH,MAAM,aAAa;IACnB;;OAEG;IACH,OAAO,YAAY;CACtB;AAED;;;GAGG;AACH,oBAAY,yCAAyC;IACjD;;OAEG;IACH,UAAU,eAAe;IACzB;;OAEG;IACH,YAAY,iBAAiB;IAC7B;;OAEG;IACH,YAAY,iBAAiB;CAChC;AAED,oBAAY,qBAAqB;IAC7B,aAAa,iBAAiB;IAC9B,SAAS,aAAa;IACtB,IAAI,SAAS;CAChB;AAED;;;GAGG;AACH,oBAAY,oBAAoB;IAC5B;;;;OAIG;IACH,OAAO,OAAO;CACjB;AAED;;;GAGG;AACH,oBAAY,QAAQ;IAChB;;;OAGG;IACH,OAAO,OAAO;CACjB;AAED;;;GAGG;AACH,oBAAY,QAAQ;IAChB;;;OAGG;IACH,IAAI,OAAO;IACX;;OAEG;IACH,iBAAiB,OAAO;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAChC;;OAEG;IACH,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;OAEG;IACH,eAAe,CAAC,EAAE,QAAQ,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,kBAAkB;IACrD;;;;;;;;;;;;;;;OAeG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;;;;;OAcG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;;;;;;;;;;;;OAkBG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;;;;;;;;;;;;;;;;;OAkBG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC;IACd;;;;;;;;;;;;;;OAcG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;OAaG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;OAaG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;;;;;;;;;;;;OAgBG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;;;;OAKG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,0CAA0C,CAAC,EAAE,yCAAyC,CAAC;IACvF;;;OAGG;IACH,oCAAoC,CAAC,EAAE,OAAO,CAAC;IAC/C;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C;;;;;;;;;;;;;OAaG;IACH,gCAAgC,CAAC,EAAE,OAAO,CAAC;IAE3C;;;;;;;;;;;;;;OAcG;IACH,oCAAoC,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/embed/app.ts"],"names":[],"mappings":"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"}
|
package/cjs/src/embed/app.js
CHANGED
|
@@ -17,7 +17,6 @@ const ts_embed_1 = require("./ts-embed");
|
|
|
17
17
|
/**
|
|
18
18
|
* Pages within the ThoughtSpot app that can be embedded.
|
|
19
19
|
*/
|
|
20
|
-
// eslint-disable-next-line no-shadow
|
|
21
20
|
var Page;
|
|
22
21
|
(function (Page) {
|
|
23
22
|
/**
|
|
@@ -124,11 +123,25 @@ var ListPage;
|
|
|
124
123
|
* @group Embed components
|
|
125
124
|
*/
|
|
126
125
|
class AppEmbed extends ts_embed_1.V1Embed {
|
|
127
|
-
// eslint-disable-next-line no-useless-constructor
|
|
128
126
|
constructor(domSelector, viewConfig) {
|
|
129
127
|
viewConfig.embedComponentType = 'AppEmbed';
|
|
130
128
|
super(domSelector, viewConfig);
|
|
131
129
|
this.defaultHeight = '100%';
|
|
130
|
+
this.sendFullHeightLazyLoadData = () => {
|
|
131
|
+
const data = (0, utils_1.calculateVisibleElementData)(this.iFrame);
|
|
132
|
+
this.trigger(types_1.HostEvent.VisibleEmbedCoordinates, data);
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* This is a handler for the RequestVisibleEmbedCoordinates event.
|
|
136
|
+
* It is used to send the visible coordinates data to the host application.
|
|
137
|
+
* @param data The event payload
|
|
138
|
+
* @param responder The responder function
|
|
139
|
+
*/
|
|
140
|
+
this.requestVisibleEmbedCoordinatesHandler = (data, responder) => {
|
|
141
|
+
logger_1.logger.info('Sending RequestVisibleEmbedCoordinates', data);
|
|
142
|
+
const visibleCoordinatesData = (0, utils_1.calculateVisibleElementData)(this.iFrame);
|
|
143
|
+
responder({ type: types_1.EmbedEvent.RequestVisibleEmbedCoordinates, data: visibleCoordinatesData });
|
|
144
|
+
};
|
|
132
145
|
/**
|
|
133
146
|
* Set the iframe height as per the computed height received
|
|
134
147
|
* from the ThoughtSpot app.
|
|
@@ -137,6 +150,7 @@ class AppEmbed extends ts_embed_1.V1Embed {
|
|
|
137
150
|
this.updateIFrameHeight = (data) => {
|
|
138
151
|
var _a;
|
|
139
152
|
this.setIFrameHeight(Math.max(data.data, (_a = this.iFrame) === null || _a === void 0 ? void 0 : _a.scrollHeight));
|
|
153
|
+
this.sendFullHeightLazyLoadData();
|
|
140
154
|
};
|
|
141
155
|
this.embedIframeCenter = (data, responder) => {
|
|
142
156
|
const obj = this.getIframeCenter();
|
|
@@ -166,6 +180,7 @@ class AppEmbed extends ts_embed_1.V1Embed {
|
|
|
166
180
|
this.on(types_1.EmbedEvent.RouteChange, this.setIframeHeightForNonEmbedLiveboard);
|
|
167
181
|
this.on(types_1.EmbedEvent.EmbedHeight, this.updateIFrameHeight);
|
|
168
182
|
this.on(types_1.EmbedEvent.EmbedIframeCenter, this.embedIframeCenter);
|
|
183
|
+
this.on(types_1.EmbedEvent.RequestVisibleEmbedCoordinates, this.requestVisibleEmbedCoordinatesHandler);
|
|
169
184
|
}
|
|
170
185
|
}
|
|
171
186
|
/**
|
|
@@ -173,9 +188,7 @@ class AppEmbed extends ts_embed_1.V1Embed {
|
|
|
173
188
|
* embedded Liveboard or visualization.
|
|
174
189
|
*/
|
|
175
190
|
getEmbedParams() {
|
|
176
|
-
const { tag, hideObjects, liveboardV2, showPrimaryNavbar, disableProfileAndHelp, hideHamburger, hideObjectSearch, hideNotification, hideApplicationSwitcher, hideOrgSwitcher, enableSearchAssist, fullHeight, dataPanelV2 = false, hideLiveboardHeader = false, showLiveboardTitle = true, showLiveboardDescription = true, hideHomepageLeftNav = false, modularHomeExperience = false, isLiveboardHeaderSticky = true, enableAskSage, collapseSearchBarInitially = false, enable2ColumnLayout, enableCustomColumnGroups = false, isOnBeforeGetVizDataInterceptEnabled = false,
|
|
177
|
-
/* eslint-disable-next-line max-len */
|
|
178
|
-
dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL, collapseSearchBar = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs = false, homePageSearchBarMode, isUnifiedSearchExperienceEnabled = true, enablePendoHelp = true, discoveryExperience, coverAndFilterOptionInPDF = false, isLiveboardStylingAndGroupingEnabled, } = this.viewConfig;
|
|
191
|
+
const { tag, hideObjects, liveboardV2, showPrimaryNavbar, disableProfileAndHelp, hideHamburger, hideObjectSearch, hideNotification, hideApplicationSwitcher, hideOrgSwitcher, enableSearchAssist, fullHeight, dataPanelV2 = false, hideLiveboardHeader = false, showLiveboardTitle = true, showLiveboardDescription = true, hideHomepageLeftNav = false, modularHomeExperience = false, isLiveboardHeaderSticky = true, enableAskSage, collapseSearchBarInitially = false, enable2ColumnLayout, enableCustomColumnGroups = false, isOnBeforeGetVizDataInterceptEnabled = false, dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL, collapseSearchBar = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, hideIrrelevantChipsInLiveboardTabs = false, homePageSearchBarMode, isUnifiedSearchExperienceEnabled = true, enablePendoHelp = true, discoveryExperience, coverAndFilterOptionInPDF = false, isLiveboardStylingAndGroupingEnabled, } = this.viewConfig;
|
|
179
192
|
let params = {};
|
|
180
193
|
params[types_1.Param.PrimaryNavHidden] = !showPrimaryNavbar;
|
|
181
194
|
params[types_1.Param.HideProfleAndHelp] = !!disableProfileAndHelp;
|
|
@@ -204,6 +217,10 @@ class AppEmbed extends ts_embed_1.V1Embed {
|
|
|
204
217
|
}
|
|
205
218
|
if (fullHeight === true) {
|
|
206
219
|
params[types_1.Param.fullHeight] = true;
|
|
220
|
+
if (this.viewConfig.lazyLoadingForFullHeight) {
|
|
221
|
+
params[types_1.Param.IsLazyLoadingForEmbedEnabled] = true;
|
|
222
|
+
params[types_1.Param.RootMarginForLazyLoad] = this.viewConfig.lazyLoadingMargin;
|
|
223
|
+
}
|
|
207
224
|
}
|
|
208
225
|
if (tag) {
|
|
209
226
|
params[types_1.Param.Tag] = tag;
|
|
@@ -224,7 +241,6 @@ class AppEmbed extends ts_embed_1.V1Embed {
|
|
|
224
241
|
params[types_1.Param.enableAskSage] = enableAskSage;
|
|
225
242
|
}
|
|
226
243
|
if (isOnBeforeGetVizDataInterceptEnabled) {
|
|
227
|
-
/* eslint-disable-next-line max-len */
|
|
228
244
|
params[types_1.Param.IsOnBeforeGetVizDataInterceptEnabled] = isOnBeforeGetVizDataInterceptEnabled;
|
|
229
245
|
}
|
|
230
246
|
if (homePageSearchBarMode) {
|
|
@@ -245,11 +261,9 @@ class AppEmbed extends ts_embed_1.V1Embed {
|
|
|
245
261
|
=== DataPanelCustomColumnGroupsAccordionState.COLLAPSE_ALL
|
|
246
262
|
|| dataPanelCustomGroupsAccordionInitialState
|
|
247
263
|
=== DataPanelCustomColumnGroupsAccordionState.EXPAND_FIRST) {
|
|
248
|
-
/* eslint-disable-next-line max-len */
|
|
249
264
|
params[types_1.Param.DataPanelCustomGroupsAccordionInitialState] = dataPanelCustomGroupsAccordionInitialState;
|
|
250
265
|
}
|
|
251
266
|
else {
|
|
252
|
-
/* eslint-disable-next-line max-len */
|
|
253
267
|
params[types_1.Param.DataPanelCustomGroupsAccordionInitialState] = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL;
|
|
254
268
|
}
|
|
255
269
|
if (discoveryExperience) {
|
|
@@ -353,6 +367,30 @@ class AppEmbed extends ts_embed_1.V1Embed {
|
|
|
353
367
|
this.iFrame.src = `${iframeSrc.split(currentPath)[0]}${currentPath}/${path.replace(/^\/?#?\//, '')}`;
|
|
354
368
|
}
|
|
355
369
|
}
|
|
370
|
+
/**
|
|
371
|
+
* Destroys the ThoughtSpot embed, and remove any nodes from the DOM.
|
|
372
|
+
* @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
|
|
373
|
+
*/
|
|
374
|
+
destroy() {
|
|
375
|
+
super.destroy();
|
|
376
|
+
this.unregisterLazyLoadEvents();
|
|
377
|
+
}
|
|
378
|
+
postRender() {
|
|
379
|
+
this.registerLazyLoadEvents();
|
|
380
|
+
}
|
|
381
|
+
registerLazyLoadEvents() {
|
|
382
|
+
if (this.viewConfig.fullHeight && this.viewConfig.lazyLoadingForFullHeight) {
|
|
383
|
+
// TODO: Use passive: true, install modernizr to check for passive
|
|
384
|
+
window.addEventListener('resize', this.sendFullHeightLazyLoadData);
|
|
385
|
+
window.addEventListener('scroll', this.sendFullHeightLazyLoadData, true);
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
unregisterLazyLoadEvents() {
|
|
389
|
+
if (this.viewConfig.fullHeight && this.viewConfig.lazyLoadingForFullHeight) {
|
|
390
|
+
window.removeEventListener('resize', this.sendFullHeightLazyLoadData);
|
|
391
|
+
window.removeEventListener('scroll', this.sendFullHeightLazyLoadData);
|
|
392
|
+
}
|
|
393
|
+
}
|
|
356
394
|
/**
|
|
357
395
|
* Renders the embedded application pages in the ThoughtSpot app.
|
|
358
396
|
* @param renderOptions An object containing the page ID
|
|
@@ -362,6 +400,7 @@ class AppEmbed extends ts_embed_1.V1Embed {
|
|
|
362
400
|
await super.render();
|
|
363
401
|
const src = this.getIFrameSrc();
|
|
364
402
|
await this.renderV1Embed(src);
|
|
403
|
+
this.postRender();
|
|
365
404
|
return this;
|
|
366
405
|
}
|
|
367
406
|
}
|
package/cjs/src/embed/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/embed/app.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/embed/app.ts"],"names":[],"mappings":"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"}
|
|
@@ -88,7 +88,6 @@ describe('App embed tests', () => {
|
|
|
88
88
|
});
|
|
89
89
|
});
|
|
90
90
|
describe('should render the correct routes for pages', () => {
|
|
91
|
-
/* eslint-disable no-loop-func */
|
|
92
91
|
const pageRouteMap = {
|
|
93
92
|
[app_1.Page.Search]: 'answer',
|
|
94
93
|
[app_1.Page.Answers]: 'answers',
|
|
@@ -129,7 +128,7 @@ describe('App embed tests', () => {
|
|
|
129
128
|
for (let i = 0; i < pageIdsForModularHomes.length; i++) {
|
|
130
129
|
const pageIdsForModularHome = pageIdsForModularHomes[i];
|
|
131
130
|
test(`${pageIdsForModularHome}`, async () => {
|
|
132
|
-
const route =
|
|
131
|
+
const route = pageRouteMapForModularHome[pageIdsForModularHome];
|
|
133
132
|
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
134
133
|
...defaultViewConfig,
|
|
135
134
|
modularHomeExperience: true,
|
|
@@ -529,7 +528,6 @@ describe('App embed tests', () => {
|
|
|
529
528
|
test('Should add dataPanelCustomGroupsAccordionInitialState flag to the iframe src', async () => {
|
|
530
529
|
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
531
530
|
...defaultViewConfig,
|
|
532
|
-
// eslint-disable-next-line max-len
|
|
533
531
|
dataPanelCustomGroupsAccordionInitialState: app_1.DataPanelCustomColumnGroupsAccordionState.EXPAND_FIRST,
|
|
534
532
|
});
|
|
535
533
|
appEmbed.render();
|
|
@@ -538,12 +536,13 @@ describe('App embed tests', () => {
|
|
|
538
536
|
});
|
|
539
537
|
});
|
|
540
538
|
test('should register event handlers to adjust iframe height', async () => {
|
|
539
|
+
let embedHeightCallback = () => { };
|
|
541
540
|
const onSpy = jest.spyOn(app_1.AppEmbed.prototype, 'on').mockImplementation((event, callback) => {
|
|
542
541
|
if (event === types_1.EmbedEvent.RouteChange) {
|
|
543
542
|
callback({ data: { currentPath: '/answers' } }, jest.fn());
|
|
544
543
|
}
|
|
545
544
|
if (event === types_1.EmbedEvent.EmbedHeight) {
|
|
546
|
-
|
|
545
|
+
embedHeightCallback = callback;
|
|
547
546
|
}
|
|
548
547
|
if (event === types_1.EmbedEvent.EmbedIframeCenter) {
|
|
549
548
|
callback({}, jest.fn());
|
|
@@ -555,14 +554,20 @@ describe('App embed tests', () => {
|
|
|
555
554
|
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
556
555
|
...defaultViewConfig,
|
|
557
556
|
fullHeight: true,
|
|
557
|
+
lazyLoadingForFullHeight: true,
|
|
558
558
|
});
|
|
559
|
-
|
|
559
|
+
// Set the iframe before render
|
|
560
|
+
appEmbed.iFrame = document.createElement('iframe');
|
|
561
|
+
// Wait for render to complete
|
|
562
|
+
await appEmbed.render();
|
|
563
|
+
embedHeightCallback({ data: '100%' });
|
|
564
|
+
// Verify event handlers were registered
|
|
560
565
|
await (0, test_utils_1.executeAfterWait)(() => {
|
|
561
566
|
expect(onSpy).toHaveBeenCalledWith(types_1.EmbedEvent.EmbedHeight, expect.anything());
|
|
562
567
|
expect(onSpy).toHaveBeenCalledWith(types_1.EmbedEvent.RouteChange, expect.anything());
|
|
563
568
|
expect(onSpy).toHaveBeenCalledWith(types_1.EmbedEvent.EmbedIframeCenter, expect.anything());
|
|
564
|
-
|
|
565
|
-
|
|
569
|
+
expect(onSpy).toHaveBeenCalledWith(types_1.EmbedEvent.RequestVisibleEmbedCoordinates, expect.anything());
|
|
570
|
+
}, 100);
|
|
566
571
|
});
|
|
567
572
|
describe('Navigate to Page API', () => {
|
|
568
573
|
const path = 'pinboard/e0836cad-4fdf-42d4-bd97-567a6b2a6058';
|
|
@@ -627,5 +632,315 @@ describe('App embed tests', () => {
|
|
|
627
632
|
expect(logger_1.logger.log).toHaveBeenCalledWith('Please call render before invoking this method');
|
|
628
633
|
});
|
|
629
634
|
});
|
|
635
|
+
describe('LazyLoadingForFullHeight functionality', () => {
|
|
636
|
+
let mockIFrame;
|
|
637
|
+
beforeEach(() => {
|
|
638
|
+
mockIFrame = document.createElement('iframe');
|
|
639
|
+
mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
|
|
640
|
+
top: 100,
|
|
641
|
+
left: 150,
|
|
642
|
+
bottom: 600,
|
|
643
|
+
right: 800,
|
|
644
|
+
width: 650,
|
|
645
|
+
height: 500,
|
|
646
|
+
});
|
|
647
|
+
jest.spyOn(document, 'createElement').mockImplementation((tagName) => {
|
|
648
|
+
if (tagName === 'iframe') {
|
|
649
|
+
return mockIFrame;
|
|
650
|
+
}
|
|
651
|
+
return document.createElement(tagName);
|
|
652
|
+
});
|
|
653
|
+
});
|
|
654
|
+
afterEach(() => {
|
|
655
|
+
jest.restoreAllMocks();
|
|
656
|
+
});
|
|
657
|
+
test('should set lazyLoadingMargin parameter when provided', async () => {
|
|
658
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
659
|
+
...defaultViewConfig,
|
|
660
|
+
fullHeight: true,
|
|
661
|
+
lazyLoadingForFullHeight: true,
|
|
662
|
+
lazyLoadingMargin: '100px 0px',
|
|
663
|
+
});
|
|
664
|
+
await appEmbed.render();
|
|
665
|
+
await (0, test_utils_1.executeAfterWait)(() => {
|
|
666
|
+
const iframeSrc = (0, test_utils_1.getIFrameSrc)();
|
|
667
|
+
expect(iframeSrc).toContain('isLazyLoadingForEmbedEnabled=true');
|
|
668
|
+
expect(iframeSrc).toContain('isFullHeightPinboard=true');
|
|
669
|
+
expect(iframeSrc).toContain('rootMarginForLazyLoad=100px%200px');
|
|
670
|
+
}, 100);
|
|
671
|
+
});
|
|
672
|
+
test('should set isLazyLoadingForEmbedEnabled=true when both fullHeight and lazyLoadingForFullHeight are enabled', async () => {
|
|
673
|
+
// Mock the iframe element first
|
|
674
|
+
mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
|
|
675
|
+
top: 100,
|
|
676
|
+
left: 150,
|
|
677
|
+
bottom: 600,
|
|
678
|
+
right: 800,
|
|
679
|
+
width: 650,
|
|
680
|
+
height: 500,
|
|
681
|
+
});
|
|
682
|
+
Object.defineProperty(mockIFrame, 'scrollHeight', { value: 500 });
|
|
683
|
+
// Mock the event handlers
|
|
684
|
+
const onSpy = jest.spyOn(app_1.AppEmbed.prototype, 'on').mockImplementation((event, callback) => {
|
|
685
|
+
return null;
|
|
686
|
+
});
|
|
687
|
+
jest.spyOn(ts_embed_1.TsEmbed.prototype, 'getIframeCenter').mockReturnValue({});
|
|
688
|
+
jest.spyOn(ts_embed_1.TsEmbed.prototype, 'setIFrameHeight').mockReturnValue({});
|
|
689
|
+
// Create the AppEmbed instance
|
|
690
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
691
|
+
...defaultViewConfig,
|
|
692
|
+
fullHeight: true,
|
|
693
|
+
lazyLoadingForFullHeight: true,
|
|
694
|
+
});
|
|
695
|
+
// Set the iframe before render
|
|
696
|
+
appEmbed.iFrame = mockIFrame;
|
|
697
|
+
// Add the iframe to the DOM
|
|
698
|
+
const rootEl = (0, test_utils_1.getRootEl)();
|
|
699
|
+
rootEl.appendChild(mockIFrame);
|
|
700
|
+
// Wait for render to complete
|
|
701
|
+
await appEmbed.render();
|
|
702
|
+
// Wait for iframe initialization and URL parameters to be set
|
|
703
|
+
await (0, test_utils_1.executeAfterWait)(() => {
|
|
704
|
+
const iframeSrc = appEmbed.getIFrameSrc();
|
|
705
|
+
expect(iframeSrc).toContain('isLazyLoadingForEmbedEnabled=true');
|
|
706
|
+
expect(iframeSrc).toContain('isFullHeightPinboard=true');
|
|
707
|
+
}, 100);
|
|
708
|
+
});
|
|
709
|
+
test('should not set lazyLoadingForEmbed when lazyLoadingForFullHeight is enabled but fullHeight is false', async () => {
|
|
710
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
711
|
+
...defaultViewConfig,
|
|
712
|
+
fullHeight: false,
|
|
713
|
+
lazyLoadingForFullHeight: true,
|
|
714
|
+
});
|
|
715
|
+
// Wait for render to complete
|
|
716
|
+
await appEmbed.render();
|
|
717
|
+
// Wait for iframe initialization and URL parameters to be set
|
|
718
|
+
await (0, test_utils_1.executeAfterWait)(() => {
|
|
719
|
+
const iframeSrc = (0, test_utils_1.getIFrameSrc)();
|
|
720
|
+
expect(iframeSrc).not.toContain('isLazyLoadingForEmbedEnabled=true');
|
|
721
|
+
expect(iframeSrc).not.toContain('isFullHeightPinboard=true');
|
|
722
|
+
}, 100); // 100ms wait time to ensure iframe src is set
|
|
723
|
+
});
|
|
724
|
+
test('should not set isLazyLoadingForEmbedEnabled when fullHeight is true but lazyLoadingForFullHeight is false', async () => {
|
|
725
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
726
|
+
...defaultViewConfig,
|
|
727
|
+
fullHeight: true,
|
|
728
|
+
lazyLoadingForFullHeight: false,
|
|
729
|
+
});
|
|
730
|
+
// Wait for render to complete
|
|
731
|
+
await appEmbed.render();
|
|
732
|
+
// Wait for iframe initialization and URL parameters to be set
|
|
733
|
+
await (0, test_utils_1.executeAfterWait)(() => {
|
|
734
|
+
const iframeSrc = (0, test_utils_1.getIFrameSrc)();
|
|
735
|
+
expect(iframeSrc).not.toContain('isLazyLoadingForEmbedEnabled=true');
|
|
736
|
+
expect(iframeSrc).toContain('isFullHeightPinboard=true');
|
|
737
|
+
}, 100); // 100ms wait time to ensure iframe src is set
|
|
738
|
+
});
|
|
739
|
+
test('should register RequestFullHeightLazyLoadData event handler when fullHeight is enabled', async () => {
|
|
740
|
+
const onSpy = jest.spyOn(app_1.AppEmbed.prototype, 'on');
|
|
741
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
742
|
+
...defaultViewConfig,
|
|
743
|
+
fullHeight: true,
|
|
744
|
+
});
|
|
745
|
+
await appEmbed.render();
|
|
746
|
+
expect(onSpy).toHaveBeenCalledWith(types_1.EmbedEvent.RequestVisibleEmbedCoordinates, expect.any(Function));
|
|
747
|
+
onSpy.mockRestore();
|
|
748
|
+
});
|
|
749
|
+
test('should send correct visible data when RequestFullHeightLazyLoadData is triggered', async () => {
|
|
750
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
751
|
+
...defaultViewConfig,
|
|
752
|
+
fullHeight: true,
|
|
753
|
+
lazyLoadingForFullHeight: true,
|
|
754
|
+
});
|
|
755
|
+
const mockTrigger = jest.spyOn(appEmbed, 'trigger');
|
|
756
|
+
await appEmbed.render();
|
|
757
|
+
// Trigger the lazy load data calculation
|
|
758
|
+
appEmbed.sendFullHeightLazyLoadData();
|
|
759
|
+
expect(mockTrigger).toHaveBeenCalledWith(types_1.HostEvent.VisibleEmbedCoordinates, {
|
|
760
|
+
top: 0,
|
|
761
|
+
height: 500,
|
|
762
|
+
left: 0,
|
|
763
|
+
width: 650,
|
|
764
|
+
});
|
|
765
|
+
});
|
|
766
|
+
test('should calculate correct visible data for partially visible full height element', async () => {
|
|
767
|
+
// Mock iframe partially clipped from top and left
|
|
768
|
+
mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
|
|
769
|
+
top: -50,
|
|
770
|
+
left: -30,
|
|
771
|
+
bottom: 700,
|
|
772
|
+
right: 1024,
|
|
773
|
+
width: 1054,
|
|
774
|
+
height: 750,
|
|
775
|
+
});
|
|
776
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
777
|
+
...defaultViewConfig,
|
|
778
|
+
fullHeight: true,
|
|
779
|
+
lazyLoadingForFullHeight: true,
|
|
780
|
+
});
|
|
781
|
+
const mockTrigger = jest.spyOn(appEmbed, 'trigger');
|
|
782
|
+
await appEmbed.render();
|
|
783
|
+
// Trigger the lazy load data calculation
|
|
784
|
+
appEmbed.sendFullHeightLazyLoadData();
|
|
785
|
+
expect(mockTrigger).toHaveBeenCalledWith(types_1.HostEvent.VisibleEmbedCoordinates, {
|
|
786
|
+
top: 50,
|
|
787
|
+
height: 700,
|
|
788
|
+
left: 30,
|
|
789
|
+
width: 1024, // visible width (from 0 to 1024)
|
|
790
|
+
});
|
|
791
|
+
});
|
|
792
|
+
test('should add window event listeners for resize and scroll when fullHeight and lazyLoadingForFullHeight are enabled', async () => {
|
|
793
|
+
const addEventListenerSpy = jest.spyOn(window, 'addEventListener');
|
|
794
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
795
|
+
...defaultViewConfig,
|
|
796
|
+
fullHeight: true,
|
|
797
|
+
lazyLoadingForFullHeight: true,
|
|
798
|
+
});
|
|
799
|
+
await appEmbed.render();
|
|
800
|
+
// Wait for the post-render events to be registered
|
|
801
|
+
await (0, test_utils_1.executeAfterWait)(() => {
|
|
802
|
+
expect(addEventListenerSpy).toHaveBeenCalledWith('resize', expect.any(Function));
|
|
803
|
+
expect(addEventListenerSpy).toHaveBeenCalledWith('scroll', expect.any(Function), true);
|
|
804
|
+
}, 100);
|
|
805
|
+
addEventListenerSpy.mockRestore();
|
|
806
|
+
});
|
|
807
|
+
test('should remove window event listeners on destroy when fullHeight and lazyLoadingForFullHeight are enabled', async () => {
|
|
808
|
+
const removeEventListenerSpy = jest.spyOn(window, 'removeEventListener');
|
|
809
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
810
|
+
...defaultViewConfig,
|
|
811
|
+
fullHeight: true,
|
|
812
|
+
lazyLoadingForFullHeight: true,
|
|
813
|
+
});
|
|
814
|
+
await appEmbed.render();
|
|
815
|
+
appEmbed.destroy();
|
|
816
|
+
expect(removeEventListenerSpy).toHaveBeenCalledWith('resize', expect.any(Function));
|
|
817
|
+
expect(removeEventListenerSpy).toHaveBeenCalledWith('scroll', expect.any(Function));
|
|
818
|
+
removeEventListenerSpy.mockRestore();
|
|
819
|
+
});
|
|
820
|
+
test('should handle RequestVisibleEmbedCoordinates event and respond with correct data', async () => {
|
|
821
|
+
// Mock the iframe element
|
|
822
|
+
mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
|
|
823
|
+
top: 100,
|
|
824
|
+
left: 150,
|
|
825
|
+
bottom: 600,
|
|
826
|
+
right: 800,
|
|
827
|
+
width: 650,
|
|
828
|
+
height: 500,
|
|
829
|
+
});
|
|
830
|
+
Object.defineProperty(mockIFrame, 'scrollHeight', { value: 500 });
|
|
831
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
832
|
+
...defaultViewConfig,
|
|
833
|
+
fullHeight: true,
|
|
834
|
+
lazyLoadingForFullHeight: true,
|
|
835
|
+
});
|
|
836
|
+
// Set the iframe before render
|
|
837
|
+
appEmbed.iFrame = mockIFrame;
|
|
838
|
+
await appEmbed.render();
|
|
839
|
+
// Create a mock responder function
|
|
840
|
+
const mockResponder = jest.fn();
|
|
841
|
+
// Trigger the handler directly
|
|
842
|
+
appEmbed.requestVisibleEmbedCoordinatesHandler({}, mockResponder);
|
|
843
|
+
// Verify the responder was called with the correct data
|
|
844
|
+
expect(mockResponder).toHaveBeenCalledWith({
|
|
845
|
+
type: types_1.EmbedEvent.RequestVisibleEmbedCoordinates,
|
|
846
|
+
data: {
|
|
847
|
+
top: 0,
|
|
848
|
+
height: 500,
|
|
849
|
+
left: 0,
|
|
850
|
+
width: 650,
|
|
851
|
+
},
|
|
852
|
+
});
|
|
853
|
+
});
|
|
854
|
+
});
|
|
855
|
+
describe('IFrame height management', () => {
|
|
856
|
+
let mockIFrame;
|
|
857
|
+
beforeEach(() => {
|
|
858
|
+
mockIFrame = document.createElement('iframe');
|
|
859
|
+
mockIFrame.getBoundingClientRect = jest.fn().mockReturnValue({
|
|
860
|
+
top: 100,
|
|
861
|
+
left: 150,
|
|
862
|
+
bottom: 600,
|
|
863
|
+
right: 800,
|
|
864
|
+
width: 650,
|
|
865
|
+
height: 500,
|
|
866
|
+
});
|
|
867
|
+
Object.defineProperty(mockIFrame, 'scrollHeight', { value: 500 });
|
|
868
|
+
});
|
|
869
|
+
test('should not call setIFrameHeight if currentPath starts with "/embed/viz/"', () => {
|
|
870
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
871
|
+
...defaultViewConfig,
|
|
872
|
+
fullHeight: true,
|
|
873
|
+
});
|
|
874
|
+
const spySetIFrameHeight = jest.spyOn(appEmbed, 'setIFrameHeight');
|
|
875
|
+
appEmbed.render();
|
|
876
|
+
appEmbed.setIframeHeightForNonEmbedLiveboard({
|
|
877
|
+
data: { currentPath: '/embed/viz/' },
|
|
878
|
+
type: 'Route',
|
|
879
|
+
});
|
|
880
|
+
expect(spySetIFrameHeight).not.toHaveBeenCalled();
|
|
881
|
+
});
|
|
882
|
+
test('should not call setIFrameHeight if currentPath starts with "/embed/insights/viz/"', () => {
|
|
883
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
884
|
+
...defaultViewConfig,
|
|
885
|
+
fullHeight: true,
|
|
886
|
+
});
|
|
887
|
+
const spySetIFrameHeight = jest.spyOn(appEmbed, 'setIFrameHeight');
|
|
888
|
+
appEmbed.render();
|
|
889
|
+
appEmbed.setIframeHeightForNonEmbedLiveboard({
|
|
890
|
+
data: { currentPath: '/embed/insights/viz/' },
|
|
891
|
+
type: 'Route',
|
|
892
|
+
});
|
|
893
|
+
expect(spySetIFrameHeight).not.toHaveBeenCalled();
|
|
894
|
+
});
|
|
895
|
+
test('should call setIFrameHeight if currentPath starts with "/some/other/path/"', () => {
|
|
896
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
897
|
+
...defaultViewConfig,
|
|
898
|
+
fullHeight: true,
|
|
899
|
+
});
|
|
900
|
+
const spySetIFrameHeight = jest
|
|
901
|
+
.spyOn(appEmbed, 'setIFrameHeight')
|
|
902
|
+
.mockImplementation(jest.fn());
|
|
903
|
+
appEmbed.render();
|
|
904
|
+
appEmbed.setIframeHeightForNonEmbedLiveboard({
|
|
905
|
+
data: { currentPath: '/some/other/path/' },
|
|
906
|
+
type: 'Route',
|
|
907
|
+
});
|
|
908
|
+
expect(spySetIFrameHeight).toHaveBeenCalled();
|
|
909
|
+
});
|
|
910
|
+
test('should update iframe height correctly', async () => {
|
|
911
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
912
|
+
...defaultViewConfig,
|
|
913
|
+
fullHeight: true,
|
|
914
|
+
});
|
|
915
|
+
// Set up the mock iframe
|
|
916
|
+
appEmbed.iFrame = mockIFrame;
|
|
917
|
+
document.body.appendChild(mockIFrame);
|
|
918
|
+
await appEmbed.render();
|
|
919
|
+
const mockEvent = {
|
|
920
|
+
data: 600,
|
|
921
|
+
type: types_1.EmbedEvent.EmbedHeight,
|
|
922
|
+
};
|
|
923
|
+
appEmbed.updateIFrameHeight(mockEvent);
|
|
924
|
+
// Check if the iframe style was updated
|
|
925
|
+
expect(mockIFrame.style.height).toBe('600px');
|
|
926
|
+
});
|
|
927
|
+
test('should handle updateIFrameHeight with default height', async () => {
|
|
928
|
+
const appEmbed = new app_1.AppEmbed((0, test_utils_1.getRootEl)(), {
|
|
929
|
+
...defaultViewConfig,
|
|
930
|
+
fullHeight: true,
|
|
931
|
+
});
|
|
932
|
+
// Set up the mock iframe
|
|
933
|
+
appEmbed.iFrame = mockIFrame;
|
|
934
|
+
document.body.appendChild(mockIFrame);
|
|
935
|
+
await appEmbed.render();
|
|
936
|
+
const mockEvent = {
|
|
937
|
+
data: 0,
|
|
938
|
+
type: types_1.EmbedEvent.EmbedHeight,
|
|
939
|
+
};
|
|
940
|
+
appEmbed.updateIFrameHeight(mockEvent);
|
|
941
|
+
// Should use the scrollHeight
|
|
942
|
+
expect(mockIFrame.style.height).toBe('500px');
|
|
943
|
+
});
|
|
944
|
+
});
|
|
630
945
|
});
|
|
631
946
|
//# sourceMappingURL=app.spec.js.map
|