Add Leaflet and react-leaflet dependencies for interactive map functionality Extend DDDepot type with optional latitude/longitude fields for map markers Update site metadata and admin settings page text Add client-side DepotMap component to render depot locations Update PocketBase admin token in environment configuration
12 lines
579 B
JavaScript
12 lines
579 B
JavaScript
import { createElementObject, createPathComponent, extendContext } from '@react-leaflet/core';
|
|
import { Polyline as LeafletPolyline } from 'leaflet';
|
|
export const Polyline = createPathComponent(function createPolyline({ positions , ...options }, ctx) {
|
|
const polyline = new LeafletPolyline(positions, options);
|
|
return createElementObject(polyline, extendContext(ctx, {
|
|
overlayContainer: polyline
|
|
}));
|
|
}, function updatePolyline(layer, props, prevProps) {
|
|
if (props.positions !== prevProps.positions) {
|
|
layer.setLatLngs(props.positions);
|
|
}
|
|
});
|