UNPKG

offline-map-react

Version:

<h1 style="text-align: center">Welcome to offline-map-react 👋</h1> <p> <a href="https://www.npmjs.com/package/offline-map-react" target="_blank"> <img alt="Version" src="https://img.shields.io/npm/v/offline-map-react.svg"> </a> <a href="ht

36 lines (29 loc) • 1.21 kB
import Leaflet from 'leaflet' import {IMakeTileLayerOfflineProps} from "./index.types"; export default function MakeTileLayerOffline({map,leaflet,}: IMakeTileLayerOfflineProps): Leaflet.tileLayerOffline | undefined { if (!leaflet.tileLayer?.offline) return undefined const tileLayerOffline = leaflet.tileLayer?.offline('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors', minZoom: 13, }) tileLayerOffline.addTo(map) const controlSaveTiles = leaflet.control.savetiles(tileLayerOffline, { zoomlevels: [13, 14, 15, 16], confirm(layer, succescallback) { // eslint-disable-next-line no-alert if (window.confirm(`Salvar ${layer._tilesforSave.length} blocos do mapa`)) { succescallback() } }, confirmRemoval(_, successCallback) { // eslint-disable-next-line no-alert if (window.confirm('Deseja remover o mapa da memória do seu dispositivo?')) { successCallback() } }, saveText: 'salvar', rmText: 'excluir', }) controlSaveTiles.addTo(map!) return tileLayerOffline }