PaulLeCam / react-leaflet

React components for Leaflet maps
https://react-leaflet.js.org
Other
5.1k stars 884 forks source link

add eventHandlers for MapContainer #1116

Closed 1adybug closed 3 months ago

1adybug commented 9 months ago
export interface CamelLeafletEventHandlerFnMap {
  onBaseLayerChange?: LayersControlEventHandlerFn | undefined;
  onOverlayAdd?: LayersControlEventHandlerFn | undefined;
  onOverlayRemove?: LayersControlEventHandlerFn | undefined;

  onLayerAdd?: LayerEventHandlerFn | undefined;
  onLayerRemove?: LayerEventHandlerFn | undefined;

  onZoomLevelsChange?: LeafletEventHandlerFn | undefined;
  onUnload?: LeafletEventHandlerFn | undefined;
  onViewReset?: LeafletEventHandlerFn | undefined;
  onLoad?: LeafletEventHandlerFn | undefined;
  onZoomStart?: LeafletEventHandlerFn | undefined;
  onMoveStart?: LeafletEventHandlerFn | undefined;
  onZoom?: LeafletEventHandlerFn | undefined;
  onMove?: LeafletEventHandlerFn | undefined;
  onZoomEnd?: LeafletEventHandlerFn | undefined;
  onMoveEnd?: LeafletEventHandlerFn | undefined;
  onAutoPanStart?: LeafletEventHandlerFn | undefined;
  onDragStart?: LeafletEventHandlerFn | undefined;
  onDrag?: LeafletEventHandlerFn | undefined;
  onAdd?: LeafletEventHandlerFn | undefined;
  onRemove?: LeafletEventHandlerFn | undefined;
  onLoading?: LeafletEventHandlerFn | undefined;
  onError?: LeafletEventHandlerFn | undefined;
  onUpdate?: LeafletEventHandlerFn | undefined;
  onDown?: LeafletEventHandlerFn | undefined;
  onPreDrag?: LeafletEventHandlerFn | undefined;

  onResize?: ResizeEventHandlerFn | undefined;

  onPopupOpen?: PopupEventHandlerFn | undefined;
  onPopupClose?: PopupEventHandlerFn | undefined;

  onTooltipOpen?: TooltipEventHandlerFn | undefined;
  onTooltipClose?: TooltipEventHandlerFn | undefined;

  onLocationError?: ErrorEventHandlerFn | undefined;

  onLocationFound?: LocationEventHandlerFn | undefined;

  onClick?: LeafletMouseEventHandlerFn | undefined;
  onDblClick?: LeafletMouseEventHandlerFn | undefined;
  onMouseDown?: LeafletMouseEventHandlerFn | undefined;
  onMouseUp?: LeafletMouseEventHandlerFn | undefined;
  onMouseOver?: LeafletMouseEventHandlerFn | undefined;
  onMouseOut?: LeafletMouseEventHandlerFn | undefined;
  onMouseMove?: LeafletMouseEventHandlerFn | undefined;
  onContextMenu?: LeafletMouseEventHandlerFn | undefined;
  onPreClick?: LeafletMouseEventHandlerFn | undefined;

  onKeyPress?: LeafletKeyboardEventHandlerFn | undefined;
  onKeyDown?: LeafletKeyboardEventHandlerFn | undefined;
  onKeyUp?: LeafletKeyboardEventHandlerFn | undefined;

  onZoomAnim?: ZoomAnimEventHandlerFn | undefined;

  onDragEnd?: DragEndEventHandlerFn | undefined;

  onTileUnload?: TileEventHandlerFn | undefined;
  onTileLoadStart?: TileEventHandlerFn | undefined;
  onTileLoad?: TileEventHandlerFn | undefined;
  onTileAbort?: TileEventHandlerFn | undefined;

  onTileError?: TileErrorEventHandlerFn | undefined;

  // [name: string]: any;
  // You are able add additional properties, but it makes this interface uncheckable.
}

export interface MapContainerProps extends MapOptions, CamelLeafletEventHandlerFnMap {

}
PaulLeCam commented 3 months ago

Thanks but attaching events to the map container is not a good idea, the provided hooks should be used instead.