Socket
Socket
Sign inDemoInstall

react-leaflet-deflate

Package Overview
Dependencies
16
Maintainers
1
Versions
14
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    react-leaflet-deflate

React wrapper of Leaflet.Deflate. Substitues polygons and lines with markers when screen size falls below a defined threshold.


Version published
Weekly downloads
131
decreased by-19.14%
Maintainers
1
Install size
10.5 MB
Created
Weekly downloads
 

Changelog

Source

2.2.1 (2019-02-11)

  • Update Leaflet.Deflate dependency to 1.1.0 (PR #5 by oliverroick).
  • Remove unused dependencies

Readme

Source

react-leaflet-deflate

version react-leaflet compatibility travis build dependencies peer dependencies issues downloads MIT License

React wrapper of Leaflet.Deflate for react-leaflet.

Substitutes polygons and lines with markers when their screen size falls below a defined threshold.

Tested with React 16.5.2, Leaflet 1.3.4, React-Leaflet 1.9.1, React-Leaflet 2.0.1, Leaflet.Deflate 1.0.0-alpha.3

Example

Demos

VersionDemo
react-leaflet@1.9.1CodePen
react-leaflet@2.xCodePen

Installation

Install via NPM

npm install --save react-leaflet-deflate

react-leaflet-deflate requires leaflet.markercluster as peerDependency

(React, Leaflet, react-leaflet also should be installed)

npm install --save leaflet.markercluster

Usage example

react-leaflet v1

import { Map, TileLayer } from 'react-leaflet';
import Deflate from 'react-leaflet-deflate';

const geojson = {...};

<Map center={[2.935403, 101.448205]} zoom={10}>
  <TileLayer
    url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
    attribution='&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
  />

  <Deflate
    data={geojson}
    minSize={10}
    markerCluster={true}
  />
</Map>

react-leaflet v2

import { Map, TileLayer, withLeaflet } from 'react-leaflet';
import DeflateDefault from 'react-leaflet-deflate';	// Import as DeflateDefault var
const Deflate = withLeaflet(DeflateDefault);		// wrap and pass to our Deflate variable. The rest of the code is the same as react-leaflet v1 example.

const geojson = {...};

<Map center={[2.935403, 101.448205]} zoom={10}>
  <TileLayer
    url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
    attribution='&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
  />

  <Deflate
    data={geojson}
    minSize={10}
    markerCluster={true}
  />
</Map>

Options

OptionTypeDefaultDescription
dataobject{}Required. A valid GeoJSON object.
minSizeint20Defines the minimum width and height in pixels for a path to be displayed in its actual shape.
markerOptionsobject or function{}Optional. Customize the markers of deflated features using Leaflet marker options.
markerClusterbooleanfalseIndicates whether markers should be clustered. Requires Leaflet.MarkerCluser.
markerClusterOptionsobject{}Optional. Customize the appearance and behaviour of clustered markers using Leaflet.markercluster options.
pointToLayerfunction{}Leaflet geojson pointToLayer options.
stylefunction{}Style to apply to polygons or lines. Leaflet geojson style options.
onEachFeaturefunction{}Function to execute on each geojson feature. Leaflet geojson onEachFeature options.
filterfunction{}Filter function to apply to geojson features. Leaflet geojson filter options.

Credits

  • oliverroick and the other contributors to for the original work on Leaflet.Deflate.
  • clintharris for updating react-leaflet-deflate to reference Leaflet.Deflate as an external dependency, support property changes, and work with react-leaflet v2.

License

MIT License

Keywords

FAQs

Last updated on 11 Feb 2019

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc