fix(gps): типизация geoObjects кластера ObjectManager

This commit is contained in:
2026-09-23 14:34:44 +03:00
parent e9f072c0c3
commit 39c8d61a04

View File

@@ -135,13 +135,13 @@ export function Yandex21Map({
});
// Клик по кластеру → id маркеров в наш вертикальный список
objectManager.clusters.events.add('click', (e: ymaps.IEvent) => {
const cluster = objectManager.clusters.getById(e.get('objectId')) as
| { properties: { geoObjects: Array<{ id?: string | number; properties?: { get(p: string): unknown } }> } }
| undefined;
const ids = cluster
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const cluster: any = objectManager.clusters.getById(e.get('objectId'));
const ids: Array<string | number> = cluster
? cluster.properties.geoObjects
.map((o) => (o.id !== undefined ? o.id : (o.properties?.get('gpsMarkerId') as string | number | null)))
.filter((id): id is string | number => id != null)
// eslint-disable-next-line @typescript-eslint/no-explicit-any
.map((o: any) => (o.id !== undefined ? o.id : (o.properties?.get?.('gpsMarkerId') ?? null)))
.filter((id: string | number | null) => id != null)
: [];
if (ids.length > 0) onClusterClickRef.current?.(ids);
});