diff --git a/package.json b/package.json index d513821..cf169d0 100644 --- a/package.json +++ b/package.json @@ -27,9 +27,8 @@ "@eeacms/volto-addons-forest": "*", "@eeacms/volto-datablocks": "*", "@eeacms/volto-matomo": "*", - "@eeacms/volto-openlayers-map": "0.1.3", + "@eeacms/volto-openlayers-map": "0.1.4", "@eeacms/volto-plotlycharts": "*", - "pigeon-maps": "0.21.0", "react-highlight-words": "^0.16.0", "react-image-gallery": "1.2.7", "react-lazy-load-image-component": "^1.5.0", diff --git a/src/components/manage/Blocks/SimpleDataTable/templates/expandable/PopupMap.jsx b/src/components/manage/Blocks/SimpleDataTable/templates/expandable/PopupMap.jsx index 8db720a..853d511 100644 --- a/src/components/manage/Blocks/SimpleDataTable/templates/expandable/PopupMap.jsx +++ b/src/components/manage/Blocks/SimpleDataTable/templates/expandable/PopupMap.jsx @@ -5,8 +5,6 @@ import { Map } from '@eeacms/volto-openlayers-map/Map'; import { Layers, Layer } from '@eeacms/volto-openlayers-map/Layers'; import { openlayers } from '@eeacms/volto-openlayers-map'; -// import { Map, Marker } from 'pigeon-maps'; - const getLayerBaseURL = () => 'https://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer/tile/{z}/{y}/{x}'; @@ -22,8 +20,9 @@ const PopupMap = ({ rowData, provider_data, mapData }) => { const mapRef = React.useRef(); const [selectedData, setSelectedData] = React.useState([]); + const [featuresData, setFeaturesData] = React.useState([]); - const { proj, source, style, format } = openlayers; + const { proj, source, style } = openlayers; React.useEffect(() => { const { long, lat } = mapData; @@ -46,8 +45,10 @@ const PopupMap = ({ rowData, provider_data, mapData }) => { }, [selectedData, mapData]); React.useEffect(() => { + const { long, lat } = mapData; const provider_data_length = getProviderDataLength(provider_data); const newMapData = []; + const newFeaturesData = []; if (provider_data_length) { const keys = Object.keys(provider_data); Array(provider_data_length) @@ -58,9 +59,19 @@ const PopupMap = ({ rowData, provider_data, mapData }) => { obj[key] = provider_data[key][i]; }); newMapData.push(obj); + + newFeaturesData.push( + new openlayers.ol.Feature( + new openlayers.geom.Point( + openlayers.proj.fromLonLat([obj[long], obj[lat]]), + ), + ), + ); }); } setSelectedData(newMapData); + + setFeaturesData(newFeaturesData); /* eslint-disable-next-line */ }, [provider_data]); @@ -84,67 +95,63 @@ const PopupMap = ({ rowData, provider_data, mapData }) => { return 'Loading..'; } return ( -
No data available for map.
)} diff --git a/src/components/manage/Blocks/SimpleDataTable/templates/expandable/View.jsx b/src/components/manage/Blocks/SimpleDataTable/templates/expandable/View.jsx index f8321e1..0b5fe33 100644 --- a/src/components/manage/Blocks/SimpleDataTable/templates/expandable/View.jsx +++ b/src/components/manage/Blocks/SimpleDataTable/templates/expandable/View.jsx @@ -137,6 +137,7 @@ const View = (props) => { }; /* eslint-disable-next-line */ }, []); + return (