Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@camptocamp/native-map

Package Overview
Dependencies
Maintainers
5
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@camptocamp/native-map

A native web component used to render interactive maps

  • 0.1.0
  • npm
  • Socket score

Version published
Maintainers
5
Created
Source

native-map

A native web component that shows an interactive map based on a given context.

DISCLAIMER: not yet published on NPM!!

Live demo here!

Usage

To use it:

npm install @camptocamp/native-map
<html>
    ...
    <body>
      <native-map></native-map>
    </body>
</html>
import '@camptocamp/native-map'

const nativeMap = document.getElementById('map');
nativeMap.context = {
  view: {
    zoom: 3,
    center: [4, 45]
  },
  layers: [
    { url: 'https://my.test.server/wms', type: 'wms', name: 'abcd' }
  ]
};

The map cannot be modified directly, everything has to be done declaratively using the context property of the NativeMapElement class.

When providing a new context, the component checks which parts of it have changed using reference equality instead of deep equality.

As an example, this will cause the WMS layer to be recreated:

// initial context has only one layer
nativeMap.context = {
  layers: [
    { url: 'https://my.test.server/wms', type: 'wms', name: 'abcd' }
  ]
};

// add a new layer in first position
nativeMap.context = {
  layers: [
    { ... },
    { url: 'https://my.test.server/wms', type: 'wms', name: 'abcd' }
  ]
};

This will not (because the same layer object is used in both contexts):

const wmsLayer = [{ url: 'https://my.test.server/wms', type: 'wms', name: 'abcd' }];

// initial context has only one layer
nativeMap.context = {
  layers: [
    wmsLayer
  ]
};

// add a new layer in first position
nativeMap.context = {
  layers: [
    { ... },
    wmsLayer
  ]
};

Demo

To run the demo:

npm install
npm run demo

FAQs

Package last updated on 22 Nov 2022

Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc