Skip to content

Commit 23f2757

Browse files
author
Michael Yu
committed
MC-407: Empty banner displays on store front as big empty area
- Added converter and previe converters to set display none on condition - Updated banner appearances to use the display converters
1 parent 4573935 commit 23f2757

File tree

5 files changed

+162
-0
lines changed

5 files changed

+162
-0
lines changed

app/code/Magento/PageBuilder/view/adminhtml/web/js/content-type/banner/converter/style/display.js

Lines changed: 45 additions & 0 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/js/content-type/banner/converter/style/preview/display.js

Lines changed: 41 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
/**
2+
* Copyright © Magento, Inc. All rights reserved.
3+
* See COPYING.txt for license details.
4+
*/
5+
6+
import {ConverterInterface} from "../../../../converter/converter-interface";
7+
import {DataObject} from "../../../../data-store";
8+
9+
export default class Display implements ConverterInterface {
10+
/**
11+
* Convert value to internal format
12+
*
13+
* @param value string
14+
* @returns {string | object}
15+
*/
16+
public fromDom(value: string): string | object {
17+
return;
18+
}
19+
20+
/**
21+
* Convert value to knockout format
22+
*
23+
* @param name string
24+
* @param data Object
25+
* @returns {string | DataObject}
26+
*/
27+
public toDom(name: string, data: DataObject): string | object {
28+
if (
29+
data.background_color === ""
30+
&& data.background_image.length === 0
31+
&& (!data.link_url || !data.link_url.default || data.link_url.default === "")
32+
&& data.message === ""
33+
&& data.show_button === "never_show"
34+
&& data.show_overlay === "never_show"
35+
) {
36+
37+
return "none";
38+
}
39+
40+
return;
41+
}
42+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
/**
2+
* Copyright © Magento, Inc. All rights reserved.
3+
* See COPYING.txt for license details.
4+
*/
5+
6+
import {ConverterInterface} from "../../../../../converter/converter-interface";
7+
import {DataObject} from "../../../../../data-store";
8+
9+
export default class Display implements ConverterInterface {
10+
/**
11+
* Convert value to internal format
12+
*
13+
* @param value string
14+
* @returns {string | object}
15+
*/
16+
public fromDom(value: string): string | object {
17+
return;
18+
}
19+
20+
/**
21+
* Convert value to knockout format
22+
*
23+
* @param name string
24+
* @param data DataObject
25+
* @returns {string | object}
26+
*/
27+
public toDom(name: string, data: DataObject): string | object {
28+
return;
29+
}
30+
}

app/code/Magento/PageBuilder/view/base/pagebuilder/content_type/banner.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
<property name="border_color" source="border_color" converter="Magento_PageBuilder/js/converter/style/color"/>
3030
<property name="border_width" source="border_width" converter="Magento_PageBuilder/js/converter/style/border-width"/>
3131
<property name="border_radius" source="border_radius" converter="Magento_PageBuilder/js/converter/style/remove-px"/>
32+
<property name="display" source="display" virtual="true" preview_converter="Magento_PageBuilder/js/content-type/banner/converter/style/preview/display" converter="Magento_PageBuilder/js/content-type/banner/converter/style/display"/>
3233
<complex_property name="margins_and_padding" reader="Magento_PageBuilder/js/property/margins" converter="Magento_PageBuilder/js/converter/style/margins"/>
3334
</style_properties>
3435
<attributes>
@@ -121,6 +122,7 @@
121122
<property name="border_color" source="border_color" converter="Magento_PageBuilder/js/converter/style/color"/>
122123
<property name="border_width" source="border_width" converter="Magento_PageBuilder/js/converter/style/border-width"/>
123124
<property name="border_radius" source="border_radius" converter="Magento_PageBuilder/js/converter/style/remove-px"/>
125+
<property name="display" source="display" virtual="true" preview_converter="Magento_PageBuilder/js/content-type/banner/converter/style/preview/display" converter="Magento_PageBuilder/js/content-type/banner/converter/style/display"/>
124126
<complex_property name="margins_and_padding" reader="Magento_PageBuilder/js/property/margins" converter="Magento_PageBuilder/js/converter/style/margins"/>
125127
</style_properties>
126128
<attributes>
@@ -213,6 +215,7 @@
213215
<property name="border_color" source="border_color" converter="Magento_PageBuilder/js/converter/style/color"/>
214216
<property name="border_width" source="border_width" converter="Magento_PageBuilder/js/converter/style/border-width"/>
215217
<property name="border_radius" source="border_radius" converter="Magento_PageBuilder/js/converter/style/remove-px"/>
218+
<property name="display" source="display" virtual="true" preview_converter="Magento_PageBuilder/js/content-type/banner/converter/style/preview/display" converter="Magento_PageBuilder/js/content-type/banner/converter/style/display"/>
216219
<complex_property name="margins_and_padding" reader="Magento_PageBuilder/js/property/margins" converter="Magento_PageBuilder/js/converter/style/margins"/>
217220
</style_properties>
218221
<attributes>
@@ -305,6 +308,7 @@
305308
<property name="border_color" source="border_color" converter="Magento_PageBuilder/js/converter/style/color"/>
306309
<property name="border_width" source="border_width" converter="Magento_PageBuilder/js/converter/style/border-width"/>
307310
<property name="border_radius" source="border_radius" converter="Magento_PageBuilder/js/converter/style/remove-px"/>
311+
<property name="display" source="display" virtual="true" preview_converter="Magento_PageBuilder/js/content-type/banner/converter/style/preview/display" converter="Magento_PageBuilder/js/content-type/banner/converter/style/display"/>
308312
<complex_property name="margins_and_padding" reader="Magento_PageBuilder/js/property/margins" converter="Magento_PageBuilder/js/converter/style/margins"/>
309313
</style_properties>
310314
<attributes>

0 commit comments

Comments
 (0)