index.js (770B)
1 import L from 'leaflet'; 2 3 class RetinaTileLayer extends L.TileLayer { 4 constructor(urls, options, hiRes = 'auto') { 5 let url, tileSizeMultiplicator; 6 const useHiResTiles = hiRes === 'auto' ? L.Browser.retina : hiRes; 7 const newOptions = L.extend({}, options); 8 if (useHiResTiles) { 9 url = urls[1]; 10 tileSizeMultiplicator = 2; 11 } else { 12 tileSizeMultiplicator = 1; 13 url = urls[0]; 14 } 15 if (options.retinaOptionsOverrides) { 16 L.extend(newOptions, options.retinaOptionsOverrides[useHiResTiles ? 1 : 0]); 17 } 18 super(url, newOptions); 19 this.urls = urls; 20 this.tileSizeMultiplicator = tileSizeMultiplicator; 21 } 22 } 23 24 export {RetinaTileLayer};