0.2.7 • Published 1 year ago

@geoalert/mapbox-draw-gl v0.2.7

Weekly downloads
-
License
ISC
Repository
github
Last release
1 year ago

Forked npm package

Contents

Installing

Requires mapbox-gl-js.

npm install @geoalert/mapbox-draw-gl

Draw ships with CSS, make sure you include it in your build.

Usage in your application

JavaScript

import mapboxgl from 'mapbox-gl';
import MapboxDraw from '@geoalert/mapbox-draw-gl';

CSS

When using modules

import '@mapbox/mapbox-gl-draw/dist/mapbox-gl-draw.css';

Using mapbox api

<link rel="stylesheet" href="https://api.mapbox.com/mapbox-gl-js/v1.12.0/mapbox-gl.css" />

Example usage

mapboxgl.accessToken = 'YOUR_ACCESS_TOKEN';

var map = new mapboxgl.Map({
  container: 'map',
  style: 'mapbox://styles/mapbox/streets-v11',
  center: [40, -74.5],
  zoom: 9
});

var Draw = new MapboxDraw();

// Map#addControl takes an optional second argument to set the position of the control.
// If no position is specified the control defaults to `top-right`. See the docs
// for more details: https://docs.mapbox.com/mapbox-gl-js/api/#map#addcontrol

map.addControl(Draw, 'top-left');

map.on('load', function () {
  // ALL YOUR APPLICATION CODE
});

https://www.mapbox.com/mapbox-gl-js/example/mapbox-gl-draw/

See API.md for complete reference.

Enhancements and New Interactions

For additional functionality check out our list of custom modes.

Developing and testing

Install dependencies, build the source files and crank up a server via:

git clone git@github.com:mapbox/mapbox-gl-draw.git
yarn install
yarn start & open "http://localhost:9967/debug/?access_token=<token>"

Testing

npm run test

Publishing

To GitHub and NPM:

npm version (major|minor|patch)
git push --tags
git push
npm publish

Update the version number in the GL JS example.

Naming actions

We're trying to follow standards when naming things. Here is a collection of links where we look for inspiration.

Forked changes

Validation function

const Draw = new MapboxDraw({
  validation: {
    fn: feature => isValid(feature),
    styles: getValidationStyles()
  }
});

function isValid(feature): ValidationResult {
  // your implement
}

type ValidationResult = {
  valid: boolean;
  invalidReason: InvalidReason | null;
};

type InvalidReason =
  | 'unknown-error'
  | 'max-area'
  | 'min-area'
  | 'size'
  | 'self-intersection'
  | 'empty-area'
  | 'method-error';

New modes

  • Rectangle mode (draw_rectangle)

New events

draw.geojson

Used in render, send actual feature

draw.direct-mode.stop

When direct mode stop, send feature at the end (last success feature or initial feature)

draw.direct-mode.error

If validation fn passed, execute it and if error not valid event will be fired.

0.2.1

1 year ago

0.2.7

1 year ago

0.2.6

1 year ago

0.2.3

1 year ago

0.2.2

1 year ago

0.2.5

1 year ago

0.2.4

1 year ago

0.2.0

2 years ago

0.1.12-9

2 years ago

0.1.12-8

2 years ago

0.1.12-7

2 years ago

0.1.12-6

2 years ago

0.1.12-5

2 years ago

0.1.12-4

2 years ago

0.1.12-3

2 years ago

0.1.12-2

2 years ago

0.1.12-1

2 years ago

0.1.9-0

2 years ago

0.1.8-0

2 years ago

0.1.7-0

2 years ago

0.1.6-0

2 years ago

0.1.5-0

2 years ago

0.1.3-0

2 years ago

0.1.2-0

2 years ago

0.1.1-0

2 years ago

0.1.0-0

2 years ago

1.0.0

2 years ago