Skip to content

Commit aed016f

Browse files
committed
Merge remote-tracking branch 'origin/MC-3993' into cms-team-1-delivery
2 parents 7bbb056 + 7331907 commit aed016f

File tree

5 files changed

+32
-16
lines changed

5 files changed

+32
-16
lines changed

app/code/Magento/PageBuilder/view/adminhtml/web/css/source/content-type/_preview.less

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@
177177
transition: opacity 200ms, top 200ms, visibility 200ms;
178178
visibility: hidden;
179179
width: 100%;
180-
z-index: 15;
180+
z-index: 20;
181181
}
182182
}
183183

app/code/Magento/PageBuilder/view/adminhtml/web/js/content-type/block/preview.js

Lines changed: 10 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/code/Magento/PageBuilder/view/adminhtml/web/ts/js/content-type/block/preview.ts

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ export default class Preview extends BasePreview {
2323
public displayingBlockPreview: KnockoutObservable<boolean> = ko.observable(false);
2424
public loading: KnockoutObservable<boolean> = ko.observable(false);
2525
public placeholderText: KnockoutObservable<string>;
26+
public element: HTMLElement;
2627
protected messages = {
2728
NOT_SELECTED: $t("Empty Block"),
2829
UNKNOWN_ERROR: $t("An unknown error occurred. Please try again."),
@@ -46,10 +47,13 @@ export default class Preview extends BasePreview {
4647
/**
4748
* Runs the widget initializer for each configured widget
4849
*/
49-
public initializeWidgets() {
50-
widgetInitializer({
51-
config: Config.getConfig("widgets"),
52-
});
50+
public initializeWidgets(element: HTMLElement) {
51+
if (element) {
52+
this.element = element;
53+
widgetInitializer({
54+
config: Config.getConfig("widgets"),
55+
}, element);
56+
}
5357
}
5458

5559
/**
@@ -105,7 +109,7 @@ export default class Preview extends BasePreview {
105109
if (this.lastRenderedHtml) {
106110
this.data.main.html(this.lastRenderedHtml);
107111
this.showBlockPreview(true);
108-
this.initializeWidgets();
112+
this.initializeWidgets(this.element);
109113
}
110114
} else {
111115
this.showBlockPreview(false);
@@ -157,7 +161,7 @@ export default class Preview extends BasePreview {
157161
if (response.data.content) {
158162
this.showBlockPreview(true);
159163
this.data.main.html(response.data.content);
160-
this.initializeWidgets();
164+
this.initializeWidgets(this.element);
161165
} else if (response.data.error) {
162166
this.showBlockPreview(false);
163167
this.placeholderText(response.data.error);

app/code/Magento/PageBuilder/view/adminhtml/web/ts/js/content-type/widget-intializer.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ interface WidgetIntializerConfigInterface {
77
config: any;
88
}
99

10-
declare function WidgetInitializer(data: WidgetIntializerConfigInterface): void;
10+
declare function WidgetInitializer(data: WidgetIntializerConfigInterface, contextElement?: HTMLElement): void;
1111

1212
declare module "Magento_PageBuilder/js/widget-initializer" {
1313
export = WidgetInitializer;

app/code/Magento/PageBuilder/view/base/web/js/widget-initializer.js

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,18 @@ define([
2626
});
2727
}
2828

29-
return function (data) {
29+
return function (data, contextElement) {
3030
_.each(data.config, function (componentConfiguration, elementPath) {
3131
$(elementPath).each(function (index, element) {
32-
initializeWidget(element, componentConfiguration);
32+
var $element = $(element);
33+
34+
if (contextElement) {
35+
$element = $(contextElement).find(element);
36+
}
37+
38+
if ($element.length) {
39+
initializeWidget($element, componentConfiguration);
40+
}
3341
});
3442
});
3543
};

0 commit comments

Comments
 (0)