UNPKG

894 BTypeScriptView Raw
1import * as React from 'react';
2import ProjectedLayer from './projected-layer';
3import * as GeoJSON from 'geojson';
4import { getClassName } from './util/classname';
5import { Point } from 'mapbox-gl';
6import { Anchor } from './util/types';
7
8export interface Props {
9 coordinates: GeoJSON.Position;
10 anchor?: Anchor;
11 offset?: number | number[] | Point;
12 children?: JSX.Element;
13 onClick?: React.MouseEventHandler<HTMLDivElement>;
14 onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;
15 onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;
16 style?: React.CSSProperties;
17 className?: string;
18 tabIndex?: number;
19}
20
21const defaultClassName = ['mapboxgl-marker'];
22
23export const Marker: React.StatelessComponent<Props> = props => (
24 <ProjectedLayer
25 {...{ ...props }}
26 type="marker"
27 className={getClassName(defaultClassName, props.className)}
28 />
29);
30
31export default Marker;