Skip to content

Commit b6e28d6

Browse files
committed
MC-3934: Slide/Banner Overlay & Button Do Not Show On Storefront When Set To On Hover
Change href to data-href and change target to data-target
1 parent 0afa526 commit b6e28d6

File tree

6 files changed

+34
-32
lines changed

6 files changed

+34
-32
lines changed

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

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@
3737
</element>
3838
<element name="link">
3939
<attribute name="link_url" reader="Magento_PageBuilder/js/property/link" persistence_mode="read"/>
40-
<attribute name="virtual_link_href" storage_key="link_url" source="href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
41-
<attribute name="virtual_link_target" storage_key="link_url" source="target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
40+
<attribute name="virtual_link_href" storage_key="link_url" source="data-href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
41+
<attribute name="virtual_link_target" storage_key="link_url" source="data-target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
4242
<attribute name="virtual_link_type" storage_key="link_url" source="data-link-type" converter="Magento_PageBuilder/js/converter/attribute/link-type" persistence_mode="write"/>
4343
</element>
4444
<element name="overlay">
@@ -112,8 +112,8 @@
112112
</element>
113113
<element name="link">
114114
<attribute name="link_url" reader="Magento_PageBuilder/js/property/link" persistence_mode="read"/>
115-
<attribute name="virtual_link_href" storage_key="link_url" source="href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
116-
<attribute name="virtual_link_target" storage_key="link_url" source="target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
115+
<attribute name="virtual_link_href" storage_key="link_url" source="data-href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
116+
<attribute name="virtual_link_target" storage_key="link_url" source="data-target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
117117
<attribute name="virtual_link_type" storage_key="link_url" source="data-link-type" converter="Magento_PageBuilder/js/converter/attribute/link-type" persistence_mode="write"/>
118118
</element>
119119
<element name="overlay">
@@ -187,8 +187,8 @@
187187
</element>
188188
<element name="link">
189189
<attribute name="link_url" reader="Magento_PageBuilder/js/property/link" persistence_mode="read"/>
190-
<attribute name="virtual_link_href" storage_key="link_url" source="href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
191-
<attribute name="virtual_link_target" storage_key="link_url" source="target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
190+
<attribute name="virtual_link_href" storage_key="link_url" source="data-href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
191+
<attribute name="virtual_link_target" storage_key="link_url" source="data-target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
192192
<attribute name="virtual_link_type" storage_key="link_url" source="data-link-type" converter="Magento_PageBuilder/js/converter/attribute/link-type" persistence_mode="write"/>
193193
</element>
194194
<element name="overlay">
@@ -263,8 +263,8 @@
263263
</element>
264264
<element name="link">
265265
<attribute name="link_url" reader="Magento_PageBuilder/js/property/link" persistence_mode="read"/>
266-
<attribute name="virtual_link_href" storage_key="link_url" source="href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
267-
<attribute name="virtual_link_target" storage_key="link_url" source="target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
266+
<attribute name="virtual_link_href" storage_key="link_url" source="data-href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
267+
<attribute name="virtual_link_target" storage_key="link_url" source="data-target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
268268
<attribute name="virtual_link_type" storage_key="link_url" source="data-link-type" converter="Magento_PageBuilder/js/converter/attribute/link-type" persistence_mode="write"/>
269269
</element>
270270
<element name="overlay">

app/code/Magento/PageBuilder/view/adminhtml/pagebuilder/content_type/slide.xml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@
3737
</element>
3838
<element name="link">
3939
<attribute name="link_url" reader="Magento_PageBuilder/js/property/link" persistence_mode="read"/>
40-
<attribute name="virtual_link_href" storage_key="link_url" source="href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
41-
<attribute name="virtual_link_target" storage_key="link_url" source="target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
40+
<attribute name="virtual_link_href" storage_key="link_url" source="data-href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
41+
<attribute name="virtual_link_target" storage_key="link_url" source="data-target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
4242
<attribute name="virtual_link_type" storage_key="link_url" source="data-link-type" converter="Magento_PageBuilder/js/converter/attribute/link-type" persistence_mode="write"/>
4343
</element>
4444
<element name="overlay">
@@ -114,8 +114,8 @@
114114
</element>
115115
<element name="link">
116116
<attribute name="link_url" reader="Magento_PageBuilder/js/property/link" persistence_mode="read"/>
117-
<attribute name="virtual_link_href" storage_key="link_url" source="href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
118-
<attribute name="virtual_link_target" storage_key="link_url" source="target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
117+
<attribute name="virtual_link_href" storage_key="link_url" source="data-href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
118+
<attribute name="virtual_link_target" storage_key="link_url" source="data-target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
119119
<attribute name="virtual_link_type" storage_key="link_url" source="data-link-type" converter="Magento_PageBuilder/js/converter/attribute/link-type" persistence_mode="write"/>
120120
</element>
121121
<element name="overlay">
@@ -191,8 +191,8 @@
191191
</element>
192192
<element name="link">
193193
<attribute name="link_url" reader="Magento_PageBuilder/js/property/link" persistence_mode="read"/>
194-
<attribute name="virtual_link_href" storage_key="link_url" source="href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
195-
<attribute name="virtual_link_target" storage_key="link_url" source="target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
194+
<attribute name="virtual_link_href" storage_key="link_url" source="data-href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
195+
<attribute name="virtual_link_target" storage_key="link_url" source="data-target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
196196
<attribute name="virtual_link_type" storage_key="link_url" source="data-link-type" converter="Magento_PageBuilder/js/converter/attribute/link-type" persistence_mode="write"/>
197197
</element>
198198
<element name="overlay">
@@ -269,8 +269,8 @@
269269
</element>
270270
<element name="link">
271271
<attribute name="link_url" reader="Magento_PageBuilder/js/property/link" persistence_mode="read"/>
272-
<attribute name="virtual_link_href" storage_key="link_url" source="href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
273-
<attribute name="virtual_link_target" storage_key="link_url" source="target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
272+
<attribute name="virtual_link_href" storage_key="link_url" source="data-href" converter="Magento_PageBuilder/js/converter/attribute/link-href" preview_converter="Magento_PageBuilder/js/converter/attribute/preview/link-href"/>
273+
<attribute name="virtual_link_target" storage_key="link_url" source="data-target" converter="Magento_PageBuilder/js/converter/attribute/link-target" persistence_mode="write"/>
274274
<attribute name="virtual_link_type" storage_key="link_url" source="data-link-type" converter="Magento_PageBuilder/js/converter/attribute/link-type" persistence_mode="write"/>
275275
</element>
276276
<element name="overlay">

app/code/Magento/PageBuilder/view/adminhtml/web/js/property/link.js

Lines changed: 5 additions & 3 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/property/link.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ export default class Link implements PropertyReaderInterface {
2525
* @returns {string | object}
2626
*/
2727
public read(element: HTMLElement): string | object {
28-
let href = element.getAttribute("href");
28+
let href = element.getAttribute("data-href") || element.getAttribute("href");
2929
const attributeLinkType = element.getAttribute("data-link-type");
3030

3131
if (typeof href === "string" && attributeLinkType !== "default") {
@@ -34,7 +34,7 @@ export default class Link implements PropertyReaderInterface {
3434

3535
return {
3636
[attributeLinkType]: href,
37-
setting: element.getAttribute("target") === "_blank",
37+
setting: (element.getAttribute("data-target") || element.getAttribute("target")) === "_blank",
3838
type: attributeLinkType,
3939
};
4040
}

app/code/Magento/PageBuilder/view/base/web/js/widget/click-event-binder.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ define(['jquery'], function ($) {
1717
$linkElements.each(function (idx, linkElement) {
1818
var $linkElement = $(linkElement),
1919
isActualAnchorElement = $linkElement.prop('nodeName') === 'A',
20-
href = ($linkElement.attr('href') || '').trim(),
20+
href = ($linkElement.attr('data-href') || '').trim(),
2121
isValidHref = ['javascript:void(0)', ''].indexOf(href) === -1;
2222

2323
if (isActualAnchorElement || !isValidHref) {
@@ -32,8 +32,8 @@ define(['jquery'], function ($) {
3232
}
3333

3434
clickEventBinder.redirectTo(
35-
$linkElement.attr('href'),
36-
$linkElement.attr('target')
35+
$linkElement.attr('data-href'),
36+
$linkElement.attr('data-target')
3737
);
3838
});
3939
});
Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ define([
2424

2525
$el = $(
2626
'<div data-role="content-type">' +
27-
'<div data-link-type="link" href="" target>' +
27+
'<div data-link-type="link" data-href="" data-target>' +
2828
'<span class="span-outside-inner-anchor">Hello world</span>' +
29-
'<a class="inner-anchor" href="https://something.com"><span>Something</span></a>' +
29+
'<a class="inner-anchor" data-href="https://something.com"><span>Something</span></a>' +
3030
'</div>' +
3131
'</div>'
3232
);
@@ -47,7 +47,7 @@ define([
4747

4848
$el = $(
4949
'<div data-role="content-type">' +
50-
'<div data-link-type="link" href="javascript:void(0)" target>' +
50+
'<div data-link-type="link" data-href="javascript:void(0)" data-target>' +
5151
'<span class="span-outside-inner-anchor">Hello world</span>' +
5252
'<a class="inner-anchor" href="https://something.com"><span>Something</span></a>' +
5353
'</div>' +
@@ -70,7 +70,7 @@ define([
7070

7171
$el = $(
7272
'<div data-role="content-type">' +
73-
'<div href="https://adobe.com" target>' +
73+
'<div data-href="https://adobe.com" data-target>' +
7474
'<span class="span-outside-inner-anchor">Hello world</span>' +
7575
'<a class="inner-anchor" href="https://something.com"><span>Something</span></a>' +
7676
'</div>' +
@@ -93,7 +93,7 @@ define([
9393

9494
$el = $(
9595
'<div data-role="content-type">' +
96-
'<div data-link-type="link" href="https://adobe.com" target>' +
96+
'<div data-link-type="link" data-href="https://adobe.com" data-target>' +
9797
'<span class="span-outside-inner-anchor">Hello world</span>' +
9898
'<a class="inner-anchor" href="https://something.com"><span>Something</span></a>' +
9999
'</div>' +
@@ -116,7 +116,7 @@ define([
116116

117117
$el = $(
118118
'<div data-role="content-type">' +
119-
'<div data-link-type="link" href="https://adobe.com" target>' +
119+
'<div data-link-type="link" data-href="https://adobe.com" data-target>' +
120120
'<span class="span-outside-inner-anchor">Hello world</span>' +
121121
'<a class="inner-anchor" href="https://something.com"><span>Something</span></a>' +
122122
'</div>' +
@@ -135,13 +135,13 @@ define([
135135
expect(window.open).not.toHaveBeenCalled();
136136
});
137137

138-
it('Should call window.open if target is _blank', function () {
138+
it('Should call window.open if data-target is _blank', function () {
139139
spyOn(window, 'open');
140140
spyOn(clickEventBinderInitializerWidget, 'redirectTo');
141141

142142
$el = $(
143143
'<div data-role="content-type">' +
144-
'<div data-link-type="link" href="https://adobe.com" target="_blank">' +
144+
'<div data-link-type="link" data-href="https://adobe.com" data-target="_blank">' +
145145
'<span class="span-outside-inner-anchor">Hello world</span>' +
146146
'<a class="inner-anchor" href="https://something.com"><span>Something</span></a>' +
147147
'</div>' +

0 commit comments

Comments
 (0)