Skip to content

Commit 579739e

Browse files
PB-203: PB-77 Story Bug: Vertical Alignment of Products in Admin
- fix vertical alignment - fix carousel in non-active tab - fix static test
1 parent 0909b23 commit 579739e

File tree

4 files changed

+30
-9
lines changed

4 files changed

+30
-9
lines changed

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
.slick-slide {
1616
> div {
1717
width: 100%;
18+
height: 100%;
1819
}
1920
}
2021

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

Lines changed: 14 additions & 5 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/template/content-type/products/grid/preview.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
<div class="pagebuilder-content-type pagebuilder-products" data-bind="event: { mouseover: onMouseOver, mouseout: onMouseOut }, mouseoverBubble: false">
99
<div attr="data.main.attributes" ko-style="data.main.style" css="data.main.css">
10-
<div if="displayPreview" class="rendered-content" html="widgetHtml" afterRender="onAfterRender"></div>
10+
<div if="displayPreview" class="rendered-content" html="widgetUnsanitizedHtml" afterRender="onAfterRender"></div>
1111
<div ifnot="displayPreview" class="pagebuilder-products-placeholder">
1212
<span class="placeholder-text" text="placeholderText"/>
1313
</div>

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

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import $ from "jquery";
77
import ko from "knockout";
88
import $t from "mage/translate";
9+
import events from "Magento_PageBuilder/js/events";
910
import "slick";
1011
import _ from "underscore";
1112
import Config from "../../config";
@@ -14,6 +15,7 @@ import ContentTypeConfigInterface from "../../content-type-config.types";
1415
import HideShowOption from "../../content-type-menu/hide-show-option";
1516
import {OptionsInterface} from "../../content-type-menu/option.types";
1617
import {DataObject} from "../../data-store";
18+
import {ContentTypeAfterRenderEventParamsInterface} from "../content-type-events.types";
1719
import ObservableUpdater from "../observable-updater";
1820
import BasePreview from "../preview";
1921

@@ -23,7 +25,7 @@ import BasePreview from "../preview";
2325
export default class Preview extends BasePreview {
2426
public displayPreview: KnockoutObservable<boolean> = ko.observable(false);
2527
public placeholderText: KnockoutObservable<string>;
26-
public widgetHtml: KnockoutObservable<string> = ko.observable();
28+
public widgetUnsanitizedHtml: KnockoutObservable<string> = ko.observable();
2729
private element: Element;
2830
private messages = {
2931
EMPTY: $t("Empty Products"),
@@ -58,6 +60,15 @@ export default class Preview extends BasePreview {
5860
) {
5961
super(contentType, config, observableUpdater);
6062
this.placeholderText = ko.observable(this.messages.EMPTY);
63+
64+
// Redraw slider after content type gets redrawn
65+
events.on("contentType:redrawAfter", (args: ContentTypeAfterRenderEventParamsInterface) => {
66+
const $element = $(this.element.children);
67+
68+
if (args.element && this.element && $element.closest(args.element).length) {
69+
$element.slick("setPosition");
70+
}
71+
});
6172
}
6273

6374
/**
@@ -127,9 +138,9 @@ export default class Preview extends BasePreview {
127138
}
128139

129140
if (response.data.error) {
130-
this.widgetHtml(response.data.error);
141+
this.widgetUnsanitizedHtml(response.data.error);
131142
} else {
132-
this.widgetHtml(response.data.content);
143+
this.widgetUnsanitizedHtml(response.data.content);
133144
this.displayPreview(true);
134145
}
135146
})

0 commit comments

Comments
 (0)