Skip to content

Commit 760ea35

Browse files
committed
After CR
1 parent 936dec1 commit 760ea35

File tree

5 files changed

+39
-17
lines changed

5 files changed

+39
-17
lines changed

src/bundle/Resources/public/js/scripts/core/multilevel.popup.menu.js

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,14 @@
137137
},
138138
false,
139139
);
140+
branchElement.addEventListener(
141+
'ibexa-multilevel-popup-menu:close-branch',
142+
() => {
143+
this.hoveredBranches.delete(branchElement);
144+
this.updateBranchAndParentBranchesOpenState(branchElement);
145+
},
146+
false,
147+
);
140148

141149
processBranchAfter(branchElement);
142150
branchItems.forEach((itemElement) => processBranchItemAfter(itemElement));
@@ -394,14 +402,14 @@
394402
return;
395403
}
396404

397-
const branchsSearchInput = doc.querySelectorAll('.ibexa-multilevel-popup-menu__search-input');
405+
const branchesSearchInput = doc.querySelectorAll('.ibexa-multilevel-popup-menu__search-input');
398406

399-
branchsSearchInput.forEach((searchInput) => {
407+
branchesSearchInput.forEach((searchInput) => {
400408
if (searchInput.value !== '') {
401409
const searchInputBranch = searchInput.closest('.ibexa-multilevel-popup-menu__branch');
402410

403411
searchInput.value = '';
404-
searchInputBranch.dispatchEvent(new Event('mouseleave'));
412+
searchInputBranch.dispatchEvent(new CustomEvent('ibexa-multilevel-popup-menu:close-branch'));
405413
searchInput.dispatchEvent(new Event('input'));
406414
}
407415
});
@@ -416,9 +424,9 @@
416424
const phraseLowerCase = searchInput.value.toLowerCase();
417425

418426
branchItems.forEach((item) => {
419-
const { label } = item.dataset;
420-
const labelLowerCase = label.toLowerCase();
421-
const hideItem = !labelLowerCase.includes(phraseLowerCase);
427+
const { searchLabel } = item.dataset;
428+
const searchLabelLowerCase = searchLabel.toLowerCase();
429+
const hideItem = !searchLabelLowerCase.includes(phraseLowerCase);
422430

423431
item.classList.toggle('ibexa-popup-menu__item--hidden', hideItem);
424432
});

src/bundle/Resources/public/js/scripts/embedded.item.actions.js

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
const MIN_ITEMS_NUMBER_TO_SHOW_SEARCH = 10;
33
const MENU_PROPS = {
44
placement: 'bottom-start',
5-
fallbackPlacements: ['bottom-start', 'top-end', 'top-start'],
5+
fallbackPlacements: ['top-end', 'top-start'],
66
};
77
const token = document.querySelector('meta[name="CSRF-Token"]').content;
88
const siteaccess = document.querySelector('meta[name="SiteAccess"]').content;
@@ -201,14 +201,12 @@
201201
}
202202
};
203203
const getMenuData = ({ container, event }) => {
204-
const { contentId, locationId, productCode, languageCodes } = container ? container.dataset : event.detail;
204+
const { contentId, locationId, productCode, languageCodes = [] } = container ? container.dataset : event.detail;
205205
const parsedLanguageCodes = typeof languageCodes === 'string' ? JSON.parse(languageCodes) : languageCodes;
206-
const languages = parsedLanguageCodes
207-
? parsedLanguageCodes.map((languageCode) => ({
208-
languageCode,
209-
name: adminUiLanguages[languageCode].name,
210-
}))
211-
: [];
206+
const languages = parsedLanguageCodes.map((languageCode) => ({
207+
languageCode,
208+
name: adminUiLanguages[languageCode].name,
209+
}));
212210

213211
return {
214212
contentId: parseInt(contentId, 10),
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
3+
<file source-language="en" target-language="en" datatype="plaintext" original="not.available">
4+
<header>
5+
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
6+
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
7+
</header>
8+
<body>
9+
<trans-unit id="2b096dbbbcadb6a316903dce656706b528229e21" resname="search.placeholder">
10+
<source>Search...</source>
11+
<target state="new">Search...</target>
12+
<note>key: search.placeholder</note>
13+
</trans-unit>
14+
</body>
15+
</file>
16+
</xliff>

src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_branch.html.twig

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@
88
}) -%}
99

1010
{%- block branch -%}
11-
{% trans_default_domain 'ibexa_dropdown' %}
11+
{% trans_default_domain 'ibexa_multilevel' %}
1212

1313
<div {{ html.attributes(branch_attr, is_template) }}>
1414
<div class="ibexa-multilevel-popup-menu__search {{ not hasSearch|default(false) ? 'ibexa-multilevel-popup-menu__search--hidden' }}">
1515
<input
1616
type="text"
17-
placeholder="{{ 'dropdown.search'|trans|desc('Search...') }}"
17+
placeholder="{{ 'search.placeholder'|trans|desc('Search...') }}"
1818
class="ibexa-input ibexa-input--small ibexa-input--text form-control ibexa-multilevel-popup-menu__search-input"
1919
/>
2020
</div>

src/bundle/Resources/views/themes/admin/ui/component/multilevel_popup_menu/multilevel_popup_menu_item.html.twig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
class: ('ibexa-popup-menu__item ibexa-multilevel-popup-menu__item '
77
~ (branch|default(null) ? 'ibexa-popup-menu__item--has-subitems ')
88
~ item_attr.class|default(''))|trim,
9-
'data-label': label,
9+
'data-search-label': label,
1010
}) -%}
1111

1212
{%- set action_attr = action_attr|default({})|merge({

0 commit comments

Comments
 (0)