Finish fixed clearSelect

This commit is contained in:
2022-11-04 16:11:18 +03:00
parent d5b8f6e0dd
commit 224cd7653c
5 changed files with 73 additions and 18 deletions

View File

@ -172,10 +172,14 @@ export function nativOptionMultiple(element, item, condition) {
* @param {object} dataSelectText текст который отрисовывается в селекте.
*/
export function clearSelect(select, element, dataSelectText) {
const { selectedItems, indexes, darkTheme, multiselectTag } = dataSelectText;
const options = element.querySelectorAll('.list__item');
const ulMultiSelect = element.querySelector('.multiselect-tag');
const svgIcon = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
const path1 = document.createElementNS('http://www.w3.org/2000/svg', 'path');
const path2 = document.createElementNS('http://www.w3.org/2000/svg', 'path');
const checkBox = element.querySelectorAll('li input');
svgIcon.setAttribute('viewBox', '0 0 10 10');
path1.setAttribute('d', 'M2,8 L8,2');
@ -183,6 +187,20 @@ export function clearSelect(select, element, dataSelectText) {
svgIcon.appendChild(path1);
svgIcon.appendChild(path2);
if (multiselectTag && multiselectTag == true) {
return;
}
if (darkTheme === true || !darkTheme) {
path1.classList.add('pathWhite');
path2.classList.add('pathWhite');
}
if (darkTheme === false) {
path1.classList.add('pathBlack');
path2.classList.add('pathBlack');
}
svgIcon.classList.add('svg-icon');
svgIcon.classList.add('svg-clear');
@ -190,6 +208,16 @@ export function clearSelect(select, element, dataSelectText) {
svgIcon.addEventListener('click', () => {
select.innerText = '';
if (Array.isArray(selectedItems)) {
selectedItems.splice(0);
indexes.splice(0);
}
checkBox.forEach((item) => {
item.checked = false;
});
getSelectText(dataSelectText, select);
options.forEach((option) => {