react-map4d-map 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,30 @@
1
+ # react-map4d-map
2
+
3
+ > react-map4d-map
4
+
5
+ [![NPM](https://img.shields.io/npm/v/react-map4d-map.svg)](https://www.npmjs.com/package/react-map4d-map) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)
6
+
7
+ ## Install
8
+
9
+ ```bash
10
+ npm install --save react-map4d-map
11
+ ```
12
+
13
+ ## Usage
14
+
15
+ ```tsx
16
+ import React, { Component } from 'react'
17
+
18
+ import MyComponent from 'react-map4d-map'
19
+ import 'react-map4d-map/dist/index.css'
20
+
21
+ class Example extends Component {
22
+ render() {
23
+ return <MyComponent />
24
+ }
25
+ }
26
+ ```
27
+
28
+ ## License
29
+
30
+ MIT © [vantoan2509](https://github.com/vantoan2509)
@@ -0,0 +1,42 @@
1
+ import PropTypes from 'prop-types';
2
+ interface BuildingProps {
3
+ position?: map4d.ILatLng;
4
+ name?: string;
5
+ scale?: number;
6
+ bearing?: number;
7
+ elevation?: number;
8
+ height?: number;
9
+ model?: string;
10
+ texture?: string;
11
+ coordinates?: map4d.ILatLng[];
12
+ zIndex?: number;
13
+ visible?: boolean;
14
+ draggable?: boolean;
15
+ userInteractionEnabled?: boolean;
16
+ selected?: boolean;
17
+ growUp?: boolean;
18
+ map?: map4d.Map;
19
+ onCreated?: (building: map4d.Building) => void;
20
+ }
21
+ declare const MFBuilding: {
22
+ (props: BuildingProps): null;
23
+ propTypes: {
24
+ position: PropTypes.Validator<any>;
25
+ name: PropTypes.Requireable<string>;
26
+ scale: PropTypes.Requireable<number>;
27
+ bearing: PropTypes.Requireable<number>;
28
+ elevation: PropTypes.Requireable<number>;
29
+ height: PropTypes.Requireable<number>;
30
+ model: PropTypes.Requireable<string>;
31
+ texture: PropTypes.Requireable<string>;
32
+ coordinates: PropTypes.Requireable<any[]>;
33
+ visible: PropTypes.Requireable<boolean>;
34
+ draggable: PropTypes.Requireable<boolean>;
35
+ userInteractionEnabled: PropTypes.Requireable<boolean>;
36
+ selected: PropTypes.Requireable<boolean>;
37
+ growUp: PropTypes.Requireable<boolean>;
38
+ map: PropTypes.Requireable<any>;
39
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
40
+ };
41
+ };
42
+ export default MFBuilding;
@@ -0,0 +1,21 @@
1
+ import PropTypes from 'prop-types';
2
+ interface BuildingOverlayProps {
3
+ getUrl: (x: number, y: number, zoom: number) => any;
4
+ parserData: (response: any) => any;
5
+ prefixId?: string;
6
+ visible?: boolean;
7
+ map?: map4d.Map;
8
+ onCreated?: (buildingOverlay: map4d.BuildingOverlay) => void;
9
+ }
10
+ declare const MFBuildingOverlay: {
11
+ (props: BuildingOverlayProps): null;
12
+ propTypes: {
13
+ getUrl: PropTypes.Validator<(...args: any[]) => any>;
14
+ visible: PropTypes.Requireable<boolean>;
15
+ parserData: PropTypes.Validator<(...args: any[]) => any>;
16
+ prefixId: PropTypes.Requireable<string>;
17
+ map: PropTypes.Requireable<any>;
18
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
19
+ };
20
+ };
21
+ export default MFBuildingOverlay;
@@ -0,0 +1,35 @@
1
+ import PropTypes from 'prop-types';
2
+ interface CircleProps {
3
+ center: map4d.ILatLng;
4
+ radius?: number;
5
+ fillColor?: string;
6
+ fillOpacity?: number;
7
+ visible?: boolean;
8
+ strokeColor?: string;
9
+ strokeWidth?: number;
10
+ draggable?: boolean;
11
+ zIndex?: number;
12
+ elevation?: number;
13
+ userInteractionEnabled?: boolean;
14
+ map?: map4d.Map;
15
+ onCreated?: (circle: map4d.Circle) => void;
16
+ }
17
+ declare const MFCircle: {
18
+ (props: CircleProps): null;
19
+ propTypes: {
20
+ center: PropTypes.Validator<any>;
21
+ radius: PropTypes.Validator<number>;
22
+ fillColor: PropTypes.Requireable<string>;
23
+ fillOpacity: PropTypes.Requireable<number>;
24
+ visible: PropTypes.Requireable<boolean>;
25
+ strokeColor: PropTypes.Requireable<string>;
26
+ strokeWidth: PropTypes.Requireable<number>;
27
+ draggable: PropTypes.Requireable<boolean>;
28
+ zIndex: PropTypes.Requireable<number>;
29
+ elevation: PropTypes.Requireable<number>;
30
+ userInteractionEnabled: PropTypes.Requireable<boolean>;
31
+ map: PropTypes.Requireable<any>;
32
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
33
+ };
34
+ };
35
+ export default MFCircle;
@@ -0,0 +1,15 @@
1
+ import PropTypes from 'prop-types';
2
+ interface DataLayerProps {
3
+ geoJsonString: string;
4
+ map?: map4d.Map;
5
+ onCreated?: (dataLeyer?: map4d.Data.Feature[]) => void;
6
+ }
7
+ declare const MFDataLayer: {
8
+ (props: DataLayerProps): null;
9
+ propTypes: {
10
+ geoJsonString: PropTypes.Validator<string>;
11
+ map: PropTypes.Requireable<any>;
12
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
13
+ };
14
+ };
15
+ export default MFDataLayer;
@@ -0,0 +1,50 @@
1
+ import PropTypes from 'prop-types';
2
+ interface DirectionsRendererProps {
3
+ routes?: string | object | map4d.RouteOptions | map4d.ILatLng[][];
4
+ /**
5
+ * @deprecated The `directions` prop is no longer support, which is subject to removal in a future versions. Use
6
+ * the `routes` prop instead.
7
+ */
8
+ directions?: string;
9
+ activedIndex?: number;
10
+ activeStrokeWidth?: number;
11
+ activeStrokeColor?: string;
12
+ activeOutlineWidth?: number;
13
+ activeOutlineColor?: string;
14
+ activeStrokePattern?: map4d.PatternItem;
15
+ inactiveStrokeWidth?: number;
16
+ inactiveStrokeColor?: string;
17
+ inactiveOutlineWidth?: number;
18
+ inactiveOutlineColor?: string;
19
+ inactiveStrokePattern?: map4d.PatternItem;
20
+ originMarkerOptions?: map4d.MarkerOptions;
21
+ destinationMarkerOptions?: map4d.MarkerOptions;
22
+ waypointMarkerOptions?: map4d.MarkerOptions[];
23
+ onMarkerDragEnd?: Function;
24
+ map: map4d.Map;
25
+ onCreated: (directionsRenderer?: map4d.DirectionsRenderer) => void;
26
+ }
27
+ declare const MFDirectionsRenderer: {
28
+ (props: DirectionsRendererProps): null;
29
+ propTypes: {
30
+ routes: PropTypes.Requireable<any>;
31
+ activedIndex: PropTypes.Requireable<number>;
32
+ activeStrokeWidth: PropTypes.Requireable<number>;
33
+ activeStrokeColor: PropTypes.Requireable<string>;
34
+ activeOutlineWidth: PropTypes.Requireable<number>;
35
+ activeOutlineColor: PropTypes.Requireable<string>;
36
+ activeStrokePattern: PropTypes.Requireable<any>;
37
+ inactiveStrokeWidth: PropTypes.Requireable<number>;
38
+ inactiveStrokeColor: PropTypes.Requireable<string>;
39
+ inactiveOutlineWidth: PropTypes.Requireable<number>;
40
+ inactiveOutlineColor: PropTypes.Requireable<string>;
41
+ inactiveStrokePattern: PropTypes.Requireable<any>;
42
+ originMarkerOptions: PropTypes.Requireable<any>;
43
+ destinationMarkerOptions: PropTypes.Requireable<any>;
44
+ waypointMarkerOptions: PropTypes.Requireable<any>;
45
+ onMarkerDragEnd: PropTypes.Requireable<(...args: any[]) => any>;
46
+ map: PropTypes.Requireable<any>;
47
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
48
+ };
49
+ };
50
+ export default MFDirectionsRenderer;
@@ -0,0 +1,19 @@
1
+ import PropTypes from 'prop-types';
2
+ interface GroundOverlayProps extends map4d.GroundOverlayOptions {
3
+ map?: map4d.Map;
4
+ onCreated?: (groundOverlay: map4d.GroundOverlay) => void;
5
+ }
6
+ declare const MFGroundOverlay: {
7
+ (props: GroundOverlayProps): null;
8
+ propTypes: {
9
+ bounds: PropTypes.Validator<any>;
10
+ getUrl: PropTypes.Validator<(...args: any[]) => any>;
11
+ override: PropTypes.Requireable<boolean>;
12
+ visible: PropTypes.Requireable<boolean>;
13
+ zIndex: PropTypes.Requireable<number>;
14
+ opacity: PropTypes.Requireable<number>;
15
+ map: PropTypes.Requireable<any>;
16
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
17
+ };
18
+ };
19
+ export default MFGroundOverlay;
@@ -0,0 +1,18 @@
1
+ import PropTypes from 'prop-types';
2
+ interface ImageOverlayProps extends map4d.ImageOverlayOptions {
3
+ map?: map4d.Map;
4
+ onCreated?: (imageOverlay: map4d.ImageOverlay) => void;
5
+ }
6
+ declare const MFImageOverlay: {
7
+ (props: ImageOverlayProps): null;
8
+ propTypes: {
9
+ url: PropTypes.Validator<any>;
10
+ bounds: PropTypes.Validator<(...args: any[]) => any>;
11
+ visible: PropTypes.Requireable<boolean>;
12
+ zIndex: PropTypes.Requireable<number>;
13
+ opacity: PropTypes.Requireable<number>;
14
+ map: PropTypes.Requireable<any>;
15
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
16
+ };
17
+ };
18
+ export default MFImageOverlay;
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ export declare function addLibrary(url: string, id: string): HTMLScriptElement | null;
3
+ interface MapProps {
4
+ mapid?: string;
5
+ options: map4d.MapOptions;
6
+ version: string;
7
+ accessKey: string;
8
+ onMapReady: (map: map4d.Map, key?: string) => void;
9
+ }
10
+ declare class MFMap extends React.Component<MapProps, any> {
11
+ mapKey: string;
12
+ callback: string;
13
+ mapDomRef: any;
14
+ mapRef: map4d.Map;
15
+ scriptElement: any;
16
+ url: string | null;
17
+ constructor(props: MapProps);
18
+ setMapDomRef(e: any): void;
19
+ componentWillUnmount(): void;
20
+ destroy(): void;
21
+ createCallback(): void;
22
+ render(): JSX.Element;
23
+ }
24
+ export default MFMap;
@@ -0,0 +1,28 @@
1
+ import PropTypes from 'prop-types';
2
+ interface MarkerProps extends map4d.MarkerOptions {
3
+ map?: map4d.Map;
4
+ onCreated: (marker: map4d.Marker) => void;
5
+ }
6
+ declare const MFMarker: {
7
+ (props: MarkerProps): null;
8
+ propTypes: {
9
+ position: PropTypes.Validator<any>;
10
+ visible: PropTypes.Requireable<boolean>;
11
+ anchor: PropTypes.Requireable<any>;
12
+ labelAnchor: PropTypes.Requireable<any>;
13
+ icon: PropTypes.Requireable<any>;
14
+ elevation: PropTypes.Requireable<number>;
15
+ rotation: PropTypes.Requireable<number>;
16
+ title: PropTypes.Requireable<string>;
17
+ snippet: PropTypes.Requireable<string>;
18
+ windowAnchor: PropTypes.Requireable<any>;
19
+ zIndex: PropTypes.Requireable<number>;
20
+ label: PropTypes.Requireable<any>;
21
+ draggable: PropTypes.Requireable<boolean>;
22
+ iconView: PropTypes.Requireable<string | Node>;
23
+ userInteractionEnabled: PropTypes.Requireable<boolean>;
24
+ map: PropTypes.Requireable<any>;
25
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
26
+ };
27
+ };
28
+ export default MFMarker;
@@ -0,0 +1,19 @@
1
+ /// <reference types="react" />
2
+ import PropTypes from 'prop-types';
3
+ interface MarkerClusterProps extends map4d.MarkerClusterOptions {
4
+ map?: map4d.Map;
5
+ onCreated: (markerCluster: map4d.MarkerClusterer) => void;
6
+ children: any;
7
+ }
8
+ declare const MFMarkerCluster: {
9
+ (props: MarkerClusterProps): JSX.Element;
10
+ propTypes: {
11
+ minZoom: PropTypes.Requireable<number>;
12
+ maxZoom: PropTypes.Requireable<number>;
13
+ radius: PropTypes.Requireable<number>;
14
+ zoomOnClick: PropTypes.Requireable<boolean>;
15
+ map: PropTypes.Requireable<any>;
16
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
17
+ };
18
+ };
19
+ export default MFMarkerCluster;
@@ -0,0 +1,24 @@
1
+ import PropTypes from 'prop-types';
2
+ interface POIProps extends map4d.POIOptions {
3
+ map?: map4d.Map;
4
+ onCreated?: (poi: map4d.POI) => void;
5
+ }
6
+ declare const MFPOI: {
7
+ (props: POIProps): null;
8
+ propTypes: {
9
+ position: PropTypes.Validator<any>;
10
+ title: PropTypes.Requireable<string>;
11
+ subtitle: PropTypes.Requireable<string>;
12
+ color: PropTypes.Requireable<string>;
13
+ type: PropTypes.Requireable<string>;
14
+ icon: PropTypes.Requireable<string>;
15
+ elevation: PropTypes.Requireable<number>;
16
+ zIndex: PropTypes.Requireable<number>;
17
+ visible: PropTypes.Requireable<boolean>;
18
+ draggable: PropTypes.Requireable<boolean>;
19
+ userInteractionEnabled: PropTypes.Requireable<boolean>;
20
+ map: PropTypes.Requireable<any>;
21
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
22
+ };
23
+ };
24
+ export default MFPOI;
@@ -0,0 +1,17 @@
1
+ import PropTypes from 'prop-types';
2
+ interface POIOverlayProps extends map4d.POIOverlayOptions {
3
+ map?: map4d.Map;
4
+ onCreated?: (poiOverlay: map4d.POIOverlay) => void;
5
+ }
6
+ declare const MFPOIOverlay: {
7
+ (props: POIOverlayProps): null;
8
+ propTypes: {
9
+ getUrl: PropTypes.Validator<(...args: any[]) => any>;
10
+ visible: PropTypes.Requireable<boolean>;
11
+ parserData: PropTypes.Validator<(...args: any[]) => any>;
12
+ prefixId: PropTypes.Requireable<string>;
13
+ map: PropTypes.Requireable<any>;
14
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
15
+ };
16
+ };
17
+ export default MFPOIOverlay;
@@ -0,0 +1,23 @@
1
+ import PropTypes from 'prop-types';
2
+ interface PolygonProps extends map4d.PolygonOptions {
3
+ map?: map4d.Map;
4
+ onCreated: (polygon: map4d.Polygon) => void;
5
+ }
6
+ declare const MFPolygon: {
7
+ (props: PolygonProps): null;
8
+ propTypes: {
9
+ paths: PropTypes.Validator<any>;
10
+ fillColor: PropTypes.Requireable<string>;
11
+ fillOpacity: PropTypes.Requireable<number>;
12
+ visible: PropTypes.Requireable<boolean>;
13
+ strokeColor: PropTypes.Requireable<string>;
14
+ strokeWidth: PropTypes.Requireable<number>;
15
+ draggable: PropTypes.Requireable<number>;
16
+ elevation: PropTypes.Requireable<number>;
17
+ zIndex: PropTypes.Requireable<number>;
18
+ userInteractionEnabled: PropTypes.Requireable<boolean>;
19
+ map: PropTypes.Requireable<any>;
20
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
21
+ };
22
+ };
23
+ export default MFPolygon;
@@ -0,0 +1,24 @@
1
+ import PropTypes from 'prop-types';
2
+ interface PolylineProps extends map4d.PolylineOptions {
3
+ map?: map4d.Map;
4
+ onCreated?: (polyline: map4d.Polyline) => void;
5
+ }
6
+ declare const MFPolyline: {
7
+ (props: PolylineProps): null;
8
+ propTypes: {
9
+ path: PropTypes.Validator<any>;
10
+ strokeWidth: PropTypes.Requireable<number>;
11
+ strokeColor: PropTypes.Requireable<string>;
12
+ strokeOpacity: PropTypes.Requireable<number>;
13
+ visible: PropTypes.Requireable<boolean>;
14
+ closed: PropTypes.Requireable<boolean>;
15
+ draggable: PropTypes.Requireable<boolean>;
16
+ zIndex: PropTypes.Requireable<number>;
17
+ elevation: PropTypes.Requireable<number>;
18
+ strokePattern: PropTypes.Requireable<any>;
19
+ userInteractionEnabled: PropTypes.Requireable<boolean>;
20
+ map: PropTypes.Requireable<any>;
21
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
22
+ };
23
+ };
24
+ export default MFPolyline;
@@ -0,0 +1,17 @@
1
+ import PropTypes from 'prop-types';
2
+ interface TileOverlayProps extends map4d.TileOverlayOptions {
3
+ map?: map4d.Map;
4
+ onCreated?: (tileOverlay: map4d.TileOverlay) => void;
5
+ }
6
+ declare const MFTileOverlay: {
7
+ (props: TileOverlayProps): null;
8
+ propTypes: {
9
+ getUrl: PropTypes.Validator<(...args: any[]) => any>;
10
+ visible: PropTypes.Requireable<boolean>;
11
+ zIndex: PropTypes.Requireable<number>;
12
+ opacity: PropTypes.Requireable<number>;
13
+ map: PropTypes.Requireable<any>;
14
+ onCreated: PropTypes.Requireable<(...args: any[]) => any>;
15
+ };
16
+ };
17
+ export default MFTileOverlay;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export declare const defaultCt: {
3
+ map: null;
4
+ };
5
+ export declare const Map4dContext: import("react").Context<{
6
+ map: null;
7
+ }>;
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ export declare const markerClusterDefaultContext: {
3
+ addMarker: (marker: map4d.Marker) => void;
4
+ removeMarker: (marker: map4d.Marker) => void;
5
+ };
6
+ export declare const MarkerClusterContext: import("react").Context<{
7
+ addMarker: (marker: map4d.Marker) => void;
8
+ removeMarker: (marker: map4d.Marker) => void;
9
+ }>;
@@ -0,0 +1,2 @@
1
+ export * from "./Map4dContext";
2
+ export * from "./MarkerClusterContext";
package/dist/index.css ADDED
@@ -0,0 +1,9 @@
1
+ /* add css module styles here (optional) */
2
+
3
+ ._styles-module__test__3ybTi {
4
+ margin: 2em;
5
+ padding: 0.5em;
6
+ border: 2px solid #000;
7
+ font-size: 2em;
8
+ text-align: center;
9
+ }
@@ -0,0 +1,16 @@
1
+ import MFBuilding from './components/MFBuilding';
2
+ import MFBuildingOverlay from './components/MFBuildingOverlay';
3
+ import MFCircle from './components/MFCircle';
4
+ import MFDataLayer from './components/MFDataLayer';
5
+ import MFDirectionsRenderer from './components/MFDirectionsRenderer';
6
+ import MFGroundOverlay from './components/MFGroundOverlay';
7
+ import MFImageOverlay from './components/MFImageOverlay';
8
+ import MFMap from './components/MFMap';
9
+ import MFMarker from './components/MFMarker';
10
+ import MFMarkerCluster from './components/MFMarkerCluster';
11
+ import MFPOI from './components/MFPOI';
12
+ import MFPOIOverlay from './components/MFPOIOverlay';
13
+ import MFPolygon from './components/MFPolygon';
14
+ import MFPolyline from './components/MFPolyline';
15
+ import MFTileOverlay from './components/MFTileOverlay';
16
+ export { MFBuilding, MFBuildingOverlay, MFCircle, MFDataLayer, MFDirectionsRenderer, MFGroundOverlay, MFImageOverlay, MFMap, MFMarker, MFMarkerCluster, MFPOI, MFPOIOverlay, MFPolygon, MFPolyline, MFTileOverlay };