JSPM

@watergis/mapbox-gl-valhalla

0.0.2
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 4
  • Score
    100M100P100Q29743F
  • License MIT

This module adds a control which can integrate with valhalla api.

Package Exports

  • @watergis/mapbox-gl-valhalla

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@watergis/mapbox-gl-valhalla) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

mapbox-gl-valhalla

GitHub

This module adds a control which can integrate with valhalla api.

Installation:

npm i @watergis/mapbox-gl-valhalla --save

Demo:

See demo.

demo.gif

Usage:

import { MapboxValhallaControl} from "@watergis/mapbox-gl-valhalla";
import '@watergis/mapbox-gl-valhalla/css/styles.css';
import mapboxgl from 'mapbox-gl';

const map = new mapboxgl.Map();
map.addControl(new MapboxValhallaControl(
  'http://localhost:8002',
  {
    Contours: [
      {
        time: 3,
        distance: 1,
        color: 'ff0000',
      },
      {
        time: 5,
        distance: 2,
        color: 'ffff00',
      },
      {
        time: 10,
        distance: 3,
        color: '0000ff',
      },
    ]
  }
), 'top-right');

Options

You can specify default option as follows.

  • URL
    • Please specify your URL for valhalla services. eg. http://localhost:8002
  • Contours
    • See the specification of valhalla isochrone API here.
    • A JSON array of contour objects with the time in minutes in kilometers and color to use for each isochrone contour. You can specify up to four contours.
    • default is as follows:
[
  {
    time: 5,
    distance: 1,
    color: 'ff0000',
  },
  {
    time: 10,
    distance: 2,
    color: 'ffff00',
  },
  {
    time: 15,
    distance: 3,
    color: '0000ff',
  },
]

Development:

yarn run lint # check styling of source code
yarn run lint:fix # fix styling by eslint
yarn run dev

open http://localhost:8080.

If there are any changes on source code, it will be reflected automatically.

Build package:

yarn run build

The modules will be generated under dist folder.

Deploy to Github pages

yarn run deploy

It will deploy files under example folder to gh-pages.

How to release

vi package.json
# update version in package.json
git add package.json
git commit -m "v1.X.X"
git push origin main
git tag v1.X.X main
git push --tag
# release CI will create draft release in Github pages, then publish it if it is ready.
# publish CI will deploy npmjs and Github Packages.

Contribution

This Mapbox GL Valhalla plugin is still under development. so most welcome any feedbacks and pull request to this repository.