1 | import * as React from 'react';
|
2 | import ProjectedLayer from './projected-layer';
|
3 | import * as GeoJSON from 'geojson';
|
4 | import { getClassName } from './util/classname';
|
5 | import { Point } from 'mapbox-gl';
|
6 | import { Anchor } from './util/types';
|
7 |
|
8 | export 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 |
|
21 | const defaultClassName = ['mapboxgl-marker'];
|
22 |
|
23 | export const Marker: React.StatelessComponent<Props> = props => (
|
24 | <ProjectedLayer
|
25 | {...{ ...props }}
|
26 | type="marker"
|
27 | className={getClassName(defaultClassName, props.className)}
|
28 | />
|
29 | );
|
30 |
|
31 | export default Marker;
|