import * as React from 'react' import { CardPage, MapOverlayPage } from '../Templates' import { useItems } from '../Map/hooks/useItems' import { useLocation } from 'react-router-dom' import { useState } from 'react'; import { Item } from '../../types'; import { getValue } from '../../Utils/GetValue'; import { useMap } from 'react-leaflet'; import { LatLng } from 'leaflet'; import { TextView } from '../Map'; import useWindowDimensions from '../Map/hooks/useWindowDimension'; export function OverlayProfile() { const location = useLocation(); const items = useItems(); const [item, setItem] = useState({} as Item) const map = useMap(); const windowDimension = useWindowDimensions(); React.useEffect(() => { const itemId = location.pathname.split("/")[2]; const item = items.find(i => i.id === itemId); item && setItem(item); const bounds = map.getBounds(); const x = bounds.getEast() - bounds.getWest() if (windowDimension.width > 768) if (item?.position.coordinates[0]) map.setView(new LatLng(item?.position.coordinates[1]!, item?.position.coordinates[0]! + x / 4)) }, [location, items]) return ( {item && <>

{item.layer?.itemAvatarField && getValue(item, item.layer.itemAvatarField) && } {item.layer?.itemNameField && getValue(item, item.layer.itemNameField)}

}
) }