Убраны галочки выбора из list view компонента поиска товаров
- Удалены иконки галочек (bi-circle/bi-check-circle-fill) из list view - Выбор товара теперь показывается только через изменение фона (класс selected) - В grid view галочка остаётся в правом верхнем углу - Упрощён метод _updateProductUI - убрана логика переключения иконок - Более чистый и понятный интерфейс для single-select режима
This commit is contained in:
@@ -394,9 +394,6 @@
|
|||||||
: '<span class="badge bg-secondary">Нет</span>';
|
: '<span class="badge bg-secondary">Нет</span>';
|
||||||
|
|
||||||
var selectedClass = isSelected ? 'selected' : '';
|
var selectedClass = isSelected ? 'selected' : '';
|
||||||
var checkIcon = isSelected
|
|
||||||
? '<i class="bi bi-check-circle-fill text-success me-2"></i>'
|
|
||||||
: '<i class="bi bi-circle text-muted me-2"></i>';
|
|
||||||
|
|
||||||
var photoHtml = product.photo_url
|
var photoHtml = product.photo_url
|
||||||
? '<img src="' + product.photo_url + '" class="rounded" style="width: 40px; height: 40px; object-fit: cover;">'
|
? '<img src="' + product.photo_url + '" class="rounded" style="width: 40px; height: 40px; object-fit: cover;">'
|
||||||
@@ -408,7 +405,6 @@
|
|||||||
return '<div class="col-12">' +
|
return '<div class="col-12">' +
|
||||||
'<div class="product-picker-item d-flex align-items-center p-2 border rounded ' + selectedClass + '" ' +
|
'<div class="product-picker-item d-flex align-items-center p-2 border rounded ' + selectedClass + '" ' +
|
||||||
'data-product-id="' + productId + '" style="cursor: pointer;">' +
|
'data-product-id="' + productId + '" style="cursor: pointer;">' +
|
||||||
checkIcon +
|
|
||||||
'<div class="flex-shrink-0 me-2">' +
|
'<div class="flex-shrink-0 me-2">' +
|
||||||
photoHtml +
|
photoHtml +
|
||||||
'</div>' +
|
'</div>' +
|
||||||
@@ -483,12 +479,6 @@
|
|||||||
|
|
||||||
if (isSelected) {
|
if (isSelected) {
|
||||||
card.classList.add('selected');
|
card.classList.add('selected');
|
||||||
// Обновить иконку
|
|
||||||
var icon = card.querySelector('.bi-circle');
|
|
||||||
if (icon) {
|
|
||||||
icon.classList.remove('bi-circle', 'text-muted');
|
|
||||||
icon.classList.add('bi-check-circle-fill', 'text-success');
|
|
||||||
}
|
|
||||||
// Добавить иконку в grid view если её нет
|
// Добавить иконку в grid view если её нет
|
||||||
if (this.state.currentView === 'grid') {
|
if (this.state.currentView === 'grid') {
|
||||||
var posRel = card.querySelector('.position-relative');
|
var posRel = card.querySelector('.position-relative');
|
||||||
@@ -500,20 +490,14 @@
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
card.classList.remove('selected');
|
card.classList.remove('selected');
|
||||||
var iconCheck = card.querySelector('.bi-check-circle-fill');
|
|
||||||
if (iconCheck) {
|
|
||||||
// В list view меняем иконку
|
|
||||||
if (this.state.currentView === 'list') {
|
|
||||||
iconCheck.classList.remove('bi-check-circle-fill', 'text-success');
|
|
||||||
iconCheck.classList.add('bi-circle', 'text-muted');
|
|
||||||
} else {
|
|
||||||
// В grid view удаляем иконку
|
// В grid view удаляем иконку
|
||||||
if (iconCheck.classList.contains('check-icon')) {
|
if (this.state.currentView === 'grid') {
|
||||||
|
var iconCheck = card.querySelector('.check-icon');
|
||||||
|
if (iconCheck) {
|
||||||
iconCheck.remove();
|
iconCheck.remove();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user