Sync selection list with map view toggle
Some checks failed
Build Docker Image / build (push) Has been cancelled

This commit is contained in:
Ruslan Bakiev
2026-02-06 14:33:54 +07:00
parent a3e7c92915
commit 161a1426e4

View File

@@ -220,11 +220,17 @@ export function useCatalogSearch() {
}
const startSelect = (type: SelectMode) => {
if (!selectMode.value) {
lastViewMode.value = mapViewMode.value
}
updateQuery({ select: type })
}
const cancelSelect = () => {
updateQuery({ select: null })
updateQuery({
select: null,
view: lastViewMode.value === 'offers' ? null : lastViewMode.value
})
}
const selectItem = (type: string, id: string, label: string) => {
@@ -232,7 +238,8 @@ export function useCatalogSearch() {
updateQuery({
[type]: id,
select: null, // Exit selection mode
info: null // Exit info mode
info: null, // Exit info mode
view: lastViewMode.value === 'offers' ? null : lastViewMode.value
})
}
@@ -299,7 +306,18 @@ export function useCatalogSearch() {
}
return 'offers' // default
})
const lastViewMode = useState<MapViewMode>('catalog-last-view-mode', () => 'offers')
const setMapViewMode = (mode: MapViewMode) => {
if (selectMode.value) {
const newSelectMode: SelectMode = mode === 'hubs' ? 'hub'
: mode === 'suppliers' ? 'supplier'
: 'product'
updateQuery({
view: mode === 'offers' ? null : mode,
select: newSelectMode
})
return
}
updateQuery({ view: mode === 'offers' ? null : mode })
}