
Research
Security News
Lazarus Strikes npm Again with New Wave of Malicious Packages
The Socket Research Team has discovered six new malicious npm packages linked to North Korea’s Lazarus Group, designed to steal credentials and deploy backdoors.
2gis-maps-react
Advanced tools
For installation use command npm install 2gis-maps-react 2gis-maps
A map is a basic component. For creating the map you need to specify center point, zoom level and size of dom element.
<Map
style={{width: "500px", height: "500px"}}
center={[54.98, 82.89]}
zoom={13}
/>
A simple popup. For setting of maxWidth, minWith and maxHeight use prop sprawling. Demo Source code
<Map
style={{width: "500px", height: "500px"}}
center={[54.98, 82.89]}
zoom={13}
>
<Popup
pos={[54.98, 82.89]}
>
The content for popup
<h3>Can be HTML</h3>
</Popup>
</Map>
Simple Marker
<Map
style={{width: "500px", height: "500px"}}
center={[54.98, 82.89]}
zoom={13}
>
<Marker
pos={[54.98, 82.89]}
/>
</Map>
Static and draggable markers. Popups on Markers. Demo Source code
<Map
style={{width: "500px", height: "500px"}}
center={[54.98, 82.89]}
zoom={13}
>
<Marker
pos={[54.98, 82.89]}
staticLabel={'You can drag me.'}
draggable={true}
/>
<Marker
pos={[54.98, 82.895]}
>
<Popup>
The content for popup
<h3>Can be HTML</h3>
</Popup>
</Marker>
</Map>
Marker with icon and html icon. Demo Source code
<Map
style={{width: "500px", height: "500px"}}
center={[54.98, 82.89]}
zoom={13}
>
<Marker
pos={[54.98, 82.89]}
>
<Icon
iconUrl={'http://maps.api.2gis.ru/2.0/example_logo.png'}
iconSize={[54.98, 82.89]}
/>
</Marker>
<Marker
pos={[54.98, 82.895]}
>
<DivIcon
iconSize={[54.98, 82.89]}
>
<h2>Can be HTML</h2>
</DivIcon>
</Marker>
</Map>
Marker with label and static label. Demo Source code
<Map
style={{width: "500px", height: "500px"}}
center={[54.98, 82.89]}
zoom={13}
>
<Marker
pos={[54.98, 82.89]}
label={'I\'m label.'}
/>
<Marker
pos={[54.98, 82.895]}
staticLabel={'I\'m static label.'}
/>
</Map>
Circle and Circle Marker. Demo Source code
<Map
style={{width: "500px", height: "500px"}}
center={[54.98, 82.89]}
zoom={13}
>
<CircleMarker
pos={[54.98, 82.89]}
label={'I\'m Circle Marker.<br/>My radius doesn't change when zooming.<br/>He in pixels.'}
radius={50}
/>
<Circle
pos={[54.98, 82.895]}
label={'I\'m Circle.<br/>My radius changes when zooming.<br/>He in meters'}
radius={200}
/>
</Map>
Polygon, Polyline and Rectangle. Demo Source code
<Map
style={{width: "500px", height: "500px"}}
center={[54.98, 82.89]}
zoom={13}
>
<Polyline points={[
[54.9827,82.8958],
[54.9837,82.8968],
[54.9837,82.8938]
]}
/>
<Polygon points={[
[54.98214514427189, 82.89540767669679],
[54.981683400666896, 82.89724230766298],
[54.982754637698605, 82.89746761322023]
]}
style={{
color: '#00FF00'
}}
/>
<Rectangle bounds={[
[54.9827238554242, 82.89354085922243],
[54.98205895253545, 82.89488196372986]
]}
style={{
color: '#FF0000'
}}
/>
</Map>
For binding 2gis-mapsapi events use props similar to onEvent
where Event is 2gis-mapsapi event with a capital first character.
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
center | ✓ | Center position of map | [54.98, 82.89] |
zoom | ✓ | Zoom level of map | 15 |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
minZoom | ✘ | Minimal zoom level | 10 | null |
maxZoom | ✘ | Maximal zoom level | 20 | null |
maxBounds | ✘ | Bounds of map | [ [54.98, 82.89], [54.98, 82.89] ] | null |
style | ✓ | CSS style of map container | {width: "500px", height: "500px"} | null |
geoclicker | ✘ | Show popup on click about place on map | true | false |
projectDetector | ✘ | Load current user project | true | false |
zoomControl | ✘ | Show zoom control button | false | true |
fullscreenControl | ✘ | Show fullscreen control button | false | true |
preferCanvas | ✘ | Use canvas element for rendering geometry | false | true |
touchZoom | ✘ | Zooming when touch (on mobile) | false | true |
scrollWheelZoom | ✘ | Zooming when scrolling | false | true |
doubleClickZoom | ✘ | Zooming when double click | false | true |
dragging | ✘ | Dragging map | false | true |
Can be bound to Marker, Map, Polygon, Polyline, Rectangle.
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
pos | ✓ | Position on map (not use if popup inside another element) | [54.98, 82.89] |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
className | ✘ | Class name of popup dom element | example-string | - |
maxWidth | ✘ | Max width of popup | 150 | 300 |
minWidth | ✘ | Min width of popup | 150 | 50 |
maxHeight | ✘ | Max height of popup | 150 | null |
sprawling | ✘ | Popup width on map width | true | false |
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
pos | ✓ | Position on map | [54.98, 82.89] |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
label | ✓ | Text of marker label | [54.98, 82.89] | - |
staticLabel | ✓ | Text of marker label. Label will be static. | [54.98, 82.89] | - |
draggable | ✓ | Marker is draggable | true | false |
clickable | ✓ | Marker is clickable | false | true |
Can be inside Marker.
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
iconUrl | ✓ | Url of icon | http://maps.api.2gis.ru/2.0/example_logo.png |
iconSize | ✓ | Size of icon | [48, 48] |
Can be inside Marker.
Required props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
iconSize | ✓ | Size of icon | [48, 48] | - |
dangerouslySetInnerHTML | ✓ | Inner html | http://maps.api.2gis.ru/2.0/example_logo.png | - |
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
points | ✓ | Points of ruler | [ [54.9827,82.8958], [54.9837,82.8968], [54.9837,82.8938] ] |
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
points | ✓ | Points of line | [ [54.9827,82.8958], [54.9837,82.8968], [54.9837,82.8938] ] |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
label | ✓ | Text of label | example-string | - |
style | ✓ | Style of line | {color: '#FF0000'} | - |
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
points | ✓ | Points of polygon | [ [54.9827,82.8958], [54.9837,82.8968], [54.9837,82.8938] ] |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
label | ✓ | Text of label | example-string | - |
style | ✓ | Style of line | {color: '#FF0000'} | - |
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
bounds | ✓ | Bounds of rectangle | [ [54.9827,82.8958], [54.9837,82.8968] ] |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
label | ✓ | Text of label | example-string | - |
style | ✓ | Style of line | {color: '#FF0000'} | - |
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
pos | ✓ | Position on map | [54.9827,82.8958] |
radius | ✓ | Circle radius in meters | 300 |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
label | ✓ | Text of label | example-string | - |
style | ✓ | Style of line | {color: '#FF0000'} | - |
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
pos | ✓ | Position on map | [54.9827,82.8958] |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
radius | ✓ | Circle radius in pixels | 300 | 10 |
label | ✓ | Text of label | example-string | - |
style | ✓ | Style of line | {color: '#FF0000'} | - |
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
data | ✓ | Wkt data string | POLYGON((82.9155.04, 82.91 55.04, 82.91 55.04, 82.9155.04)) |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
style | ✓ | Style of objeck | {color: '#FF0000'} | - |
Required props
Prop name | Dynamic | Description | Data example |
---|---|---|---|
data | ✓ | GeoJSON data object | { "type": "Feature", "properties": { "address": "г. Новосибирск, пл. Карла Маркса, 7" }, "geometry": { "type": "Point", "coordinates": [82.8974, 54.9801] } }; |
Optional props
Prop name | Dynamic | Description | Data example | Default value |
---|---|---|---|---|
pointToLayer | ✓ | Function for render point | function() {} | Will be render simple Marker |
onEachFeature | ✓ | Function running on every element | function() {} | - |
filter | ✓ | Function for filter objects | function() {} | - |
style | ✓ | Style of object | {color: '#FF0000'} | - |
npm start
will run a development server with the component's demo app at http://localhost:3000 with hot module reloading.npm run build
will build the component for publishing to npm and also bundle the demo app.
npm run clean
will delete built resources.
FAQs
2gis-maps React component
We found that 2gis-maps-react demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
The Socket Research Team has discovered six new malicious npm packages linked to North Korea’s Lazarus Group, designed to steal credentials and deploy backdoors.
Security News
Socket CEO Feross Aboukhadijeh discusses the open web, open source security, and how Socket tackles software supply chain attacks on The Pair Program podcast.
Security News
Opengrep continues building momentum with the alpha release of its Playground tool, demonstrating the project's rapid evolution just two months after its initial launch.