Fix catalog map navigation and hover interactions
All checks were successful
Build Docker Image / build (push) Successful in 3m44s
All checks were successful
Build Docker Image / build (push) Successful in 3m44s
- Add @select handler to hubs/index.vue and suppliers/index.vue for map click navigation - Add hoveredId props to final pages for point highlighting on card hover - Add "Выберите источник" hint on final pages with sources
This commit is contained in:
@@ -5,6 +5,8 @@
|
||||
with-map
|
||||
map-id="supplier-route-map"
|
||||
point-color="#10b981"
|
||||
:hovered-id="hoveredPointUuid"
|
||||
@update:hovered-id="hoveredPointUuid = $event"
|
||||
>
|
||||
<template #searchBar>
|
||||
<CatalogSearchBar
|
||||
@@ -89,6 +91,7 @@ const product = ref<{ uuid: string; name: string } | null>(null)
|
||||
const hub = ref<any>(null)
|
||||
const sourceLocation = ref<{ uuid: string; name: string; latitude?: number; longitude?: number } | null>(null)
|
||||
const routeData = ref<any>(null)
|
||||
const hoveredPointUuid = ref<string>()
|
||||
|
||||
const supplierId = computed(() => routeRef.params.supplierId as string)
|
||||
const productId = computed(() => routeRef.params.productId as string)
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
map-id="suppliers-map"
|
||||
point-color="#3b82f6"
|
||||
:total-count="total"
|
||||
@select="onSelectSupplier"
|
||||
>
|
||||
<template #searchBar="{ displayedCount, totalCount }">
|
||||
<CatalogSearchBar
|
||||
@@ -53,6 +54,7 @@ definePageMeta({
|
||||
})
|
||||
|
||||
const { t } = useI18n()
|
||||
const localePath = useLocalePath()
|
||||
|
||||
const {
|
||||
items,
|
||||
@@ -103,6 +105,11 @@ const onSearch = () => {
|
||||
// TODO: Implement search
|
||||
}
|
||||
|
||||
// Handle supplier selection from map
|
||||
const onSelectSupplier = (supplier: any) => {
|
||||
navigateTo(localePath(`/catalog/suppliers/${supplier.uuid || supplier.teamUuid}`))
|
||||
}
|
||||
|
||||
await init()
|
||||
|
||||
useHead(() => ({
|
||||
|
||||
Reference in New Issue
Block a user