vendor: 7,031 bytes, lines 1-210
1(function(root, factory) { 2 if (typeof define === 'function' && define.amd) { 3 // AMD. Register as an anonymous module. 4 define(['leaflet'], factory); 5 } else if (typeof modules === 'object' && module.exports) { 6 // define a Common JS module that relies on 'leaflet' 7 module.exports = factory(require('leaflet')); 8 } else { 9 // Assume Leaflet is loaded into global object L already 10 factory(L); 11 } 12}(this, function(L) { 13 'use strict'; 14 15 L.TileLayer.Provider = L.TileLayer.extend({ 16 initialize: function(arg, options) { 17 var providers = L.TileLayer.Provider.providers; 18 19 var parts = arg.split('.'); 20 21 var providerName = parts[0]; 22 var variantName = parts[1]; 23 24 if (!providers[providerName]) { 25 throw 'No such provider (' + providerName + ')'; 26 } 27 28 var provider = { 29 url: providers[providerName].url, 30 options: providers[providerName].options 31 }; 32 33 // overwrite values in provider from variant. 34 if (variantName && 'variants' in providers[providerName]) { 35 if (!(variantName in providers[providerName].variants)) { 36 throw 'No such variant of ' + providerName + ' (' + variantName + ')'; 37 } 38 var variant = providers[providerName].variants[variantName]; 39 var variantOptions; 40 if (typeof variant === 'string') { 41 variantOptions = { 42 variant: variant 43 }; 44 } else { 45 variantOptions = variant.options; 46 } 47 provider = { 48 url: variant.url || provider.url, 49 options: L.Util.extend({}, provider.options, variantOptions) 50 }; 51 } 52 53 // replace attribution placeholders with their values from toplevel provider attribution, 54 // recursively 55 var attributionReplacer = function(attr) { 56 if (attr.indexOf('{attribution.') === -1) { 57 return attr; 58 } 59 return attr.replace( 60 /\{attribution.(\w*)\}/g, 61 function(match, attributionName) { 62 return attributionReplacer(providers[attributionName].options.attribution); 63 } 64 ); 65 }; 66 provider.options.attribution = attributionReplacer(provider.options.attribution); 67 68 // Compute final options combining provider options with any user overrides 69 var layerOpts = L.Util.extend({}, provider.options, options); 70 L.TileLayer.prototype.initialize.call(this, provider.url, layerOpts); 71 } 72 }); 73 74 /** 75 * Definition of providers. 76 * see http://leafletjs.com/reference.html#tilelayer for options in the options map. 77 */ 78 79 L.TileLayer.Provider.providers = { 80 OpenStreetMap: { 81 url: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png', 82 options: { 83 maxZoom: 19, 84 attribution: 85 '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors' 86 }, 87 variants: { 88 Mapnik: {}, 89 DE: { 90 url: 'https://tile.openstreetmap.de/{z}/{x}/{y}.png', 91 options: { 92 maxZoom: 18 93 } 94 }, 95 CH: { 96 url: 'https://tile.osm.ch/switzerland/{z}/{x}/{y}.png', 97 options: { 98 maxZoom: 18, 99 bounds: [[45, 5], [48, 11]] 100 } 101 }, 102 France: { 103 url: 'https://{s}.tile.openstreetmap.fr/osmfr/{z}/{x}/{y}.png', 104 options: { 105 maxZoom: 20, 106 attribution: '© OpenStreetMap France | {attribution.OpenStreetMap}' 107 } 108 }, 109 HOT: { 110 url: 'https://{s}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png', 111 options: { 112 attribution: 113 '{attribution.OpenStreetMap}, ' + 114 'Tiles style by <a href="https://www.hotosm.org/" target="_blank">Humanitarian OpenStreetMap Team</a> ' + 115 'hosted by <a href="https://openstreetmap.fr/" target="_blank">OpenStreetMap France</a>' 116 } 117 }, 118 BZH: { 119 url: 'https://tile.openstreetmap.bzh/br/{z}/{x}/{y}.png', 120 options: { 121 attribution: '{attribution.OpenStreetMap}, Tiles courtesy of <a href="http://www.openstreetmap.bzh/" target="_blank">Breton OpenStreetMap Team</a>', 122 bounds: [[46.2, -5.5], [50, 0.7]] 123 } 124 }, 125 CAT: { 126 url: 'https://tile.openstreetmap.bzh/ca/{z}/{x}/{y}.png', 127 options: { 128 attribution: '{attribution.OpenStreetMap}, Tiles courtesy of <a href="https://www.openstreetmap.cat" target="_blank">Breton OpenStreetMap Team</a>', 129 } 130 } 131 } 132 }, 133 MapTilesAPI: { 134 url: 'https://maptiles.p.rapidapi.com/{variant}/{z}/{x}/{y}.png?rapidapi-key={apikey}', 135 options: { 136 attribution: 137 '© <a href="http://www.maptilesapi.com/">MapTiles API</a>, {attribution.OpenStreetMap}', 138 variant: 'en/map/v1', 139 // Get your own MapTiles API access token here : https://www.maptilesapi.com/ 140 // NB : this is a demonstration key that comes with no guarantee and not to be used in production 141 apikey: '<insert your api key here>', 142 maxZoom: 19 143 }, 144 variants: { 145 OSMEnglish: { 146 options: { 147 variant: 'en/map/v1' 148 } 149 }, 150 OSMFrancais: { 151 options: { 152 variant: 'fr/map/v1' 153 } 154 }, 155 OSMEspagnol: { 156 options: { 157 variant: 'es/map/v1' 158 } 159 } 160 } 161 }, 162 OpenSeaMap: { 163 url: 'https://tiles.openseamap.org/seamark/{z}/{x}/{y}.png', 164 options: { 165 attribution: 'Map data: © <a href="http://www.openseamap.org">OpenSeaMap</a> contributors' 166 } 167 }, 168 OPNVKarte: { 169 url: 'https://tileserver.memomaps.de/tilegen/{z}/{x}/{y}.png', 170 options: { 171 maxZoom: 18, 172 attribution: 'Map <a href="https://memomaps.de/">memomaps.de</a> <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, map data {attribution.OpenStreetMap}' 173 } 174 }, 175 OpenTopoMap: { 176 url: 'https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png', 177 options: { 178 maxZoom: 17, 179 attribution: 'Map data: {attribution.OpenStreetMap}, <a href="http://viewfinderpanoramas.org">SRTM</a> | Map style: © <a href="https://opentopomap.org">OpenTopoMap</a> (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)' 180 } 181 }, 182 OpenRailwayMap: { 183 url: 'https://{s}.tiles.openrailwaymap.org/standard/{z}/{x}/{y}.png', 184 options: { 185 maxZoom: 19, 186 attribution: 'Map data: {attribution.OpenStreetMap} | Map style: © <a href="https://www.OpenRailwayMap.org">OpenRailwayMap</a> (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)' 187 } 188 }, 189 OpenFireMap: { 190 url: 'http://openfiremap.org/hytiles/{z}/{x}/{y}.png', 191 options: { 192 maxZoom: 19, 193 attribution: 'Map data: {attribution.OpenStreetMap} | Map style: © <a href="http://www.openfiremap.org">OpenFireMap</a> (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)' 194 } 195 }, 196 SafeCast: { 197 url: 'https://s3.amazonaws.com/te512.safecast.org/{z}/{x}/{y}.png', 198 options: { 199 maxZoom: 16, 200 attribution: 'Map data: {attribution.OpenStreetMap} | Map style: © <a href="https://blog.safecast.org/about/">SafeCast</a> (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)' 201 } 202 }, 203 Stadia: { 204 url: 'https://tiles.stadiamaps.com/tiles/{variant}/{z}/{x}/{y}{r}.{ext}', 205 options: { 206 minZoom: 0, 207 maxZoom: 20, 208 attribution: 209 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 210 '© <a href="https://openmaptiles.org/" target="_blank">
210OpenMapTiles</a> ' + 211 '{attribution.OpenStreetMap}', 212 variant: 'alidade_smooth', 213 ext: 'png' 214 }, 215 variants: { 216 AlidadeSmooth: 'alidade_smooth', 217 AlidadeSmoothDark: 'alidade_smooth_dark', 218 AlidadeSatellite: { 219 options: { 220 attribution: 221 '© CNES, Distribution Airbus DS, © Airbus DS, © PlanetObserver (Contains Copernicus Data) | ' + 222 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 223 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 224 '{attribution.OpenStreetMap}', 225 variant: 'alidade_satellite', 226 ext: 'jpg', 227 } 228 }, 229 OSMBright: 'osm_bright', 230 Outdoors: 'outdoors', 231 StamenToner: { 232 options: { 233 attribution: 234 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 235 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 236 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 237 '{attribution.OpenStreetMap}', 238 variant: 'stamen_toner' 239 } 240 }, 241 StamenTonerBackground: { 242 options: { 243 attribution: 244 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 245 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 246 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 247 '{attribution.OpenStreetMap}', 248 variant: 'stamen_toner_background' 249 } 250 }, 251 StamenTonerLines: { 252 options: { 253 attribution: 254 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 255 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 256 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 257 '{attribution.OpenStreetMap}', 258 variant: 'stamen_toner_lines' 259 } 260 }, 261 StamenTonerLabels: { 262 options: { 263 attribution: 264 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 265 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 266 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 267 '{attribution.OpenStreetMap}', 268 variant: 'stamen_toner_labels' 269 } 270 }, 271 StamenTonerLite: { 272 options: { 273 attribution: 274 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 275 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 276 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 277 '{attribution.OpenStreetMap}', 278 variant: 'stamen_toner_lite' 279 } 280 }, 281 StamenWatercolor: { 282 url: 'https://tiles.stadiamaps.com/tiles/{variant}/{z}/{x}/{y}.{ext}', 283 options: { 284 attribution: 285 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 286 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 287 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 288 '{attribution.OpenStreetMap}', 289 variant: 'stamen_watercolor', 290 ext: 'jpg', 291 minZoom: 1, 292 maxZoom: 16 293 } 294 }, 295 StamenTerrain: { 296 options: { 297 attribution: 298 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 299 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 300 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 301 '{attribution.OpenStreetMap}', 302 variant: 'stamen_terrain', 303 minZoom: 0, 304 maxZoom: 18 305 } 306 }, 307 StamenTerrainBackground: { 308 options: { 309 attribution: 310 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 311 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 312 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 313 '{attribution.OpenStreetMap}', 314 variant: 'stamen_terrain_background', 315 minZoom: 0, 316 maxZoom: 18 317 } 318 }, 319 StamenTerrainLabels: { 320 options: { 321 attribution: 322 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 323 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 324 '© <a href="https://openmaptiles.org/" target="_blank">
vendor: 14,596 bytes, lines 324-846
324OpenMapTiles</a> ' + 325 '{attribution.OpenStreetMap}', 326 variant: 'stamen_terrain_labels', 327 minZoom: 0, 328 maxZoom: 18 329 } 330 }, 331 StamenTerrainLines: { 332 options: { 333 attribution: 334 '© <a href="https://www.stadiamaps.com/" target="_blank">Stadia Maps</a> ' + 335 '© <a href="https://www.stamen.com/" target="_blank">Stamen Design</a> ' + 336 '© <a href="https://openmaptiles.org/" target="_blank">OpenMapTiles</a> ' + 337 '{attribution.OpenStreetMap}', 338 variant: 'stamen_terrain_lines', 339 minZoom: 0, 340 maxZoom: 18 341 } 342 } 343 } 344 }, 345 Thunderforest: { 346 url: 'https://{s}.tile.thunderforest.com/{variant}/{z}/{x}/{y}{r}.png?apikey={apikey}', 347 options: { 348 attribution: 349 '© <a href="http://www.thunderforest.com/">Thunderforest</a>, {attribution.OpenStreetMap}', 350 variant: 'cycle', 351 apikey: '<insert your api key here>', 352 maxZoom: 22 353 }, 354 variants: { 355 OpenCycleMap: 'cycle', 356 Transport: { 357 options: { 358 variant: 'transport' 359 } 360 }, 361 TransportDark: { 362 options: { 363 variant: 'transport-dark' 364 } 365 }, 366 SpinalMap: { 367 options: { 368 variant: 'spinal-map' 369 } 370 }, 371 Landscape: 'landscape', 372 Outdoors: 'outdoors', 373 Pioneer: 'pioneer', 374 MobileAtlas: 'mobile-atlas', 375 Neighbourhood: 'neighbourhood' 376 } 377 }, 378 BaseMapDE: { 379 url: 'https://sgx.geodatenzentrum.de/wmts_basemapde/tile/1.0.0/{variant}/default/GLOBAL_WEBMERCATOR/{z}/{y}/{x}.png', 380 options: { 381 attribution: 'Map data: © <a href="http://www.govdata.de/dl-de/by-2-0">dl-de/by-2-0</a>', 382 variant: 'de_basemapde_web_raster_farbe', 383 }, 384 variants: { 385 Color: 'de_basemapde_web_raster_farbe', 386 Grey: 'de_basemapde_web_raster_grau' 387 } 388 }, 389 CyclOSM: { 390 url: 'https://{s}.tile-cyclosm.openstreetmap.fr/cyclosm/{z}/{x}/{y}.png', 391 options: { 392 maxZoom: 20, 393 attribution: '<a href="https://github.com/cyclosm/cyclosm-cartocss-style/releases" title="CyclOSM - Open Bicycle render">CyclOSM</a> | Map data: {attribution.OpenStreetMap}' 394 } 395 }, 396 Jawg: { 397 url: 'https://tile.jawg.io/{variant}/{z}/{x}/{y}{r}.png?access-token={accessToken}', 398 options: { 399 attribution: 400 '<a href="https://jawg.io" title="Tiles Courtesy of Jawg Maps" target="_blank">© <b>Jawg</b>Maps</a> ' + 401 '{attribution.OpenStreetMap}', 402 minZoom: 0, 403 maxZoom: 22, 404 variant: 'jawg-streets', 405 // Get your own Jawg access token here : https://www.jawg.io/lab/ 406 // NB : this is a demonstration key that comes with no guarantee 407 accessToken: '<insert your access token here>', 408 }, 409 variants: { 410 Streets: 'jawg-streets', 411 Terrain: 'jawg-terrain', 412 Lagoon: 'jawg-lagoon', 413 Sunny: 'jawg-sunny', 414 Dark: 'jawg-dark', 415 Light: 'jawg-light', 416 Matrix: 'jawg-matrix' 417 } 418 }, 419 MapBox: { 420 url: 'https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}{r}?access_token={accessToken}', 421 options: { 422 attribution: 423 '© <a href="https://www.mapbox.com/about/maps/" target="_blank">Mapbox</a> ' + 424 '{attribution.OpenStreetMap} ' + 425 '<a href="https://www.mapbox.com/map-feedback/" target="_blank">Improve this map</a>', 426 tileSize: 512, 427 maxZoom: 18, 428 zoomOffset: -1, 429 id: 'mapbox/streets-v11', 430 accessToken: '<insert your access token here>', 431 } 432 }, 433 MapTiler: { 434 url: 'https://api.maptiler.com/maps/{variant}/{z}/{x}/{y}{r}.{ext}?key={key}', 435 options: { 436 attribution: 437 '<a href="https://www.maptiler.com/copyright/" target="_blank">© MapTiler</a> <a href="https://www.openstreetmap.org/copyright" target="_blank">© OpenStreetMap contributors</a>', 438 variant: 'streets', 439 ext: 'png', 440 key: '<insert your MapTiler Cloud API key here>', 441 tileSize: 512, 442 zoomOffset: -1, 443 minZoom: 0, 444 maxZoom: 21 445 }, 446 variants: { 447 Streets: 'streets-v2', 448 Basic: 'basic-v2', 449 Bright: 'bright-v2', 450 Pastel: 'pastel', 451 Positron: 'positron', 452 Hybrid: { 453 options: { 454 variant: 'hybrid', 455 ext: 'jpg' 456 } 457 }, 458 Toner: 'toner-v2', 459 Topo: 'topo-v2', 460 Voyager: 'voyager-v2', 461 Ocean: 'ocean', 462 Backdrop: 'backdrop', 463 Dataviz: 'dataviz', 464 DatavizLight: 'dataviz-light', 465 DatavizDark: 'dataviz-dark', 466 Aquarelle: { 467 options: { 468 variant: 'aquarelle', 469 ext: 'webp' 470 } 471 }, 472 Landscape: 'landscape', 473 Openstreetmap: { 474 options: { 475 variant: 'openstreetmap', 476 ext: 'jpg' 477 } 478 }, 479 Outdoor: 'outdoor-v2', 480 Satellite: { 481 options: { 482 variant: 'satellite', 483 ext: 'jpg' 484 } 485 }, 486 Winter: 'winter-v2', 487 } 488 }, 489 TomTom: { 490 url: 'https://{s}.api.tomtom.com/map/1/tile/{variant}/{style}/{z}/{x}/{y}.{ext}?key={apikey}', 491 options: { 492 variant: 'basic', 493 maxZoom: 22, 494 attribution: 495 '<a href="https://tomtom.com" target="_blank">© 1992 - ' + new Date().getFullYear() + ' TomTom.</a> ', 496 subdomains: 'abcd', 497 style: 'main', 498 ext: 'png', 499 apikey: '<insert your API key here>', 500 }, 501 variants: { 502 Basic: 'basic', 503 Hybrid: 'hybrid', 504 Labels: 'labels' 505 } 506 }, 507 Esri: { 508 url: 'https://server.arcgisonline.com/ArcGIS/rest/services/{variant}/MapServer/tile/{z}/{y}/{x}', 509 options: { 510 variant: 'World_Street_Map', 511 attribution: 'Tiles © Esri' 512 }, 513 variants: { 514 WorldStreetMap: { 515 options: { 516 attribution: 517 '{attribution.Esri} — ' + 518 'Source: Esri, DeLorme, NAVTEQ, USGS, Intermap, iPC, NRCAN, Esri Japan, METI, Esri China (Hong Kong), Esri (Thailand), TomTom, 2012' 519 } 520 }, 521 WorldTopoMap: { 522 options: { 523 variant: 'World_Topo_Map', 524 attribution: 525 '{attribution.Esri} — ' + 526 'Esri, DeLorme, NAVTEQ, TomTom, Intermap, iPC, USGS, FAO, NPS, NRCAN, GeoBase, Kadaster NL, Ordnance Survey, Esri Japan, METI, Esri China (Hong Kong), and the GIS User Community' 527 } 528 }, 529 WorldImagery: { 530 options: { 531 variant: 'World_Imagery', 532 attribution: 533 '{attribution.Esri} — ' + 534 'Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community' 535 } 536 }, 537 WorldTerrain: { 538 options: { 539 variant: 'World_Terrain_Base', 540 maxZoom: 13, 541 attribution: 542 '{attribution.Esri} — ' + 543 'Source: USGS, Esri, TANA, DeLorme, and NPS' 544 } 545 }, 546 WorldShadedRelief: { 547 options: { 548 variant: 'World_Shaded_Relief', 549 maxZoom: 13, 550 attribution: '{attribution.Esri} — Source: Esri' 551 } 552 }, 553 WorldPhysical: { 554 options: { 555 variant: 'World_Physical_Map', 556 maxZoom: 8, 557 attribution: '{attribution.Esri} — Source: US National Park Service' 558 } 559 }, 560 OceanBasemap: { 561 options: { 562 variant: 'Ocean/World_Ocean_Base', 563 maxZoom: 13, 564 attribution: '{attribution.Esri} — Sources: GEBCO, NOAA, CHS, OSU, UNH, CSUMB, National Geographic, DeLorme, NAVTEQ, and Esri' 565 } 566 }, 567 NatGeoWorldMap: { 568 options: { 569 variant: 'NatGeo_World_Map', 570 maxZoom: 16, 571 attribution: '{attribution.Esri} — National Geographic, Esri, DeLorme, NAVTEQ, UNEP-WCMC, USGS, NASA, ESA, METI, NRCAN, GEBCO, NOAA, iPC' 572 } 573 }, 574 WorldGrayCanvas: { 575 options: { 576 variant: 'Canvas/World_Light_Gray_Base', 577 maxZoom: 16, 578 attribution: '{attribution.Esri} — Esri, DeLorme, NAVTEQ' 579 } 580 } 581 } 582 }, 583 OpenWeatherMap: { 584 url: 'http://{s}.tile.openweathermap.org/map/{variant}/{z}/{x}/{y}.png?appid={apiKey}', 585 options: { 586 maxZoom: 19, 587 attribution: 'Map data © <a href="http://openweathermap.org">OpenWeatherMap</a>', 588 apiKey: '<insert your api key here>', 589 opacity: 0.5 590 }, 591 variants: { 592 Clouds: 'clouds', 593 CloudsClassic: 'clouds_cls', 594 Precipitation: 'precipitation', 595 PrecipitationClassic: 'precipitation_cls', 596 Rain: 'rain', 597 RainClassic: 'rain_cls', 598 Pressure: 'pressure', 599 PressureContour: 'pressure_cntr', 600 Wind: 'wind', 601 Temperature: 'temp', 602 Snow: 'snow' 603 } 604 }, 605 606 HERE: { 607 608 /* 609 * HERE maps API Version 3. 610 * documentation at: https://www.here.com/docs/bundle/raster-tile-api-developer-guide/page/README.html 611 * These basemaps are free, but you need an API key. Please sign up at 612 * https://platform.here.com/portal/ 613 * Subscription remains for free, pricing details can be found here: https://www.here.com/get-started/pricing 614 * Version 3 deprecates the app_id and app_code access in favor of apiKey 615 */ 616 url: 617 'https://maps.hereapi.com/v3/base/mc/' + // new base url for HERE maptile v3 api 618 '{z}/{x}/{y}/{format}?style={variant}&size={size}' + // slightly modified parameters 619 '&apiKey={app_id}&lg={language}', // replacing app-id with apikey 620 options: { 621 attribution: 622 'Map © 1987-' + new Date().getFullYear() + ' <a href="http://platform.here.com">HERE</a>', 623 subdomains: '1234', 624 mapID: 'newest', 625 apiKey: '<insert your apiKey here>', // switching from appid and appcode to apikey 626 base: 'base', 627 variant: 'explore.day', 628 maxZoom: 20, 629 type: 'maptile', 630 language: 'eng', 631 format: 'png8', 632 size: '256' 633 }, 634 variants: { 635 exploreDay: 'explore.day', 636 liteDay: 'lite.day', 637 logisticsDay: 'logistics.day', 638 topoDay: 'topo.day', 639 logisticsNight: 'logistics.night', 640 exploreNight: 'explore.night', 641 topoNight: 'topo.night', 642 liteNight: 'lite.night', 643 exploreSatelliteDay: 'explore.satellite.day', 644 liteSatelliteDay: 'lite.satellite.day', 645 logisticsSatelliteDay: 'logistics.satellite.day', 646 basicMap: { 647 options: { 648 type: 'basetile' 649 } 650 }, 651 mapLabels: { 652 options: { 653 type: 'labeltile', 654 format: 'png' 655 } 656 }, 657 trafficFlow: { 658 options: { 659 base: 'traffic', 660 type: 'flowtile' 661 } 662 }, 663 carnavDayGrey: 'carnav.day.grey', 664 hybridDay: { 665 options: { 666 base: 'aerial', 667 variant: 'hybrid.day' 668 } 669 }, 670 hybridDayMobile: { 671 options: { 672 base: 'aerial', 673 variant: 'hybrid.day.mobile' 674 } 675 }, 676 hybridDayTransit: { 677 options: { 678 base: 'aerial', 679 variant: 'hybrid.day.transit' 680 } 681 }, 682 hybridDayGrey: { 683 options: { 684 base: 'aerial', 685 variant: 'hybrid.grey.day' 686 } 687 }, 688 pedestrianDay: 'pedestrian.day', 689 pedestrianNight: 'pedestrian.night', 690 satelliteDay: { 691 options: { 692 base: 'aerial', 693 variant: 'satellite.day' 694 } 695 }, 696 terrainDay: { 697 options: { 698 base: 'aerial', 699 variant: 'terrain.day' 700 } 701 }, 702 terrainDayMobile: { 703 options: { 704 base: 'aerial', 705 variant: 'terrain.day.mobile' 706 } 707 } 708 } 709 }, 710 FreeMapSK: { 711 url: 'https://{s}.freemap.sk/T/{z}/{x}/{y}.jpeg', 712 options: { 713 minZoom: 8, 714 maxZoom: 16, 715 subdomains: 'abcd', 716 bounds: [[47.204642, 15.996093], [49.830896, 22.576904]], 717 attribution: 718 '{attribution.OpenStreetMap}, visualization CC-By-SA 2.0 <a href="http://freemap.sk">Freemap.sk</a>' 719 } 720 }, 721 MtbMap: { 722 url: 'http://tile.mtbmap.cz/mtbmap_tiles/{z}/{x}/{y}.png', 723 options: { 724 attribution: 725 '{attribution.OpenStreetMap} & USGS' 726 } 727 }, 728 CartoDB: { 729 url: 'https://{s}.basemaps.cartocdn.com/{variant}/{z}/{x}/{y}{r}.png', 730 options: { 731 attribution: '{attribution.OpenStreetMap} © <a href="https://carto.com/attributions">CARTO</a>', 732 subdomains: 'abcd', 733 maxZoom: 20, 734 variant: 'light_all' 735 }, 736 variants: { 737 Positron: 'light_all', 738 PositronNoLabels: 'light_nolabels', 739 PositronOnlyLabels: 'light_only_labels', 740 DarkMatter: 'dark_all', 741 DarkMatterNoLabels: 'dark_nolabels', 742 DarkMatterOnlyLabels: 'dark_only_labels', 743 Voyager: 'rastertiles/voyager', 744 VoyagerNoLabels: 'rastertiles/voyager_nolabels', 745 VoyagerOnlyLabels: 'rastertiles/voyager_only_labels', 746 VoyagerLabelsUnder: 'rastertiles/voyager_labels_under' 747 } 748 }, 749 HikeBike: { 750 url: 'https://tiles.wmflabs.org/{variant}/{z}/{x}/{y}.png', 751 options: { 752 maxZoom: 19, 753 attribution: '{attribution.OpenStreetMap}', 754 variant: 'hikebike' 755 }, 756 variants: { 757 HikeBike: {}, 758 HillShading: { 759 options: { 760 maxZoom: 15, 761 variant: 'hillshading' 762 } 763 } 764 } 765 }, 766 BasemapAT: { 767 url: 'https://mapsneu.wien.gv.at/basemap/{variant}/{type}/google3857/{z}/{y}/{x}.{format}', 768 options: { 769 maxZoom: 19, 770 attribution: 'Datenquelle: <a href="https://www.basemap.at">basemap.at</a>', 771 type: 'normal', 772 format: 'png', 773 bounds: [[46.358770, 8.782379], [49.037872, 17.189532]], 774 variant: 'geolandbasemap' 775 }, 776 variants: { 777 basemap: { 778 options: { 779 maxZoom: 20, // currently only in Vienna 780 variant: 'geolandbasemap' 781 } 782 }, 783 grau: 'bmapgrau', 784 overlay: 'bmapoverlay', 785 terrain: { 786 options: { 787 variant: 'bmapgelaende', 788 type: 'grau', 789 format: 'jpeg' 790 } 791 }, 792 surface: { 793 options: { 794 variant: 'bmapoberflaeche', 795 type: 'grau', 796 format: 'jpeg' 797 } 798 }, 799 highdpi: { 800 options: { 801 variant: 'bmaphidpi', 802 format: 'jpeg' 803 } 804 }, 805 orthofoto: { 806 options: { 807 maxZoom: 20, // currently only in Vienna 808 variant: 'bmaporthofoto30cm', 809 format: 'jpeg' 810 } 811 } 812 } 813 }, 814 nlmaps: { 815 url: 'https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0/{variant}/EPSG:3857/{z}/{x}/{y}.png', 816 options: { 817 minZoom: 6, 818 maxZoom: 19, 819 bounds: [[50.5, 3.25], [54, 7.6]], 820 attribution: 'Kaartgegevens © <a href="https://www.kadaster.nl">Kadaster</a>' 821 }, 822 variants: { 823 standaard: 'standaard', 824 pastel: 'pastel', 825 grijs: 'grijs', 826 water: 'water', 827 luchtfoto: { 828 url: 'https://service.pdok.nl/hwh/luchtfotorgb/wmts/v1_0/Actueel_ortho25/EPSG:3857/{z}/{x}/{y}.jpeg', 829 } 830 } 831 }, 832 NASAGIBS: { 833 url: 'https://map1.vis.earthdata.nasa.gov/wmts-webmerc/{variant}/default/{time}/{tilematrixset}{maxZoom}/{z}/{y}/{x}.{format}', 834 options: { 835 attribution: 836 'Imagery provided by services from the Global Imagery Browse Services (GIBS), operated by the NASA/GSFC/Earth Science Data and Information System ' + 837 '(<a href="https://earthdata.nasa.gov">ESDIS</a>) with funding provided by NASA/HQ.', 838 bounds: [[-85.0511287776, -179.999999975], [85.0511287776, 179.999999975]], 839 minZoom: 1, 840 maxZoom: 9, 841 format: 'jpg', 842 time: '', 843 tilematrixset: 'GoogleMapsCompatible_Level' 844 }, 845 variants: { 846 ModisTerraTrueColorCR: 'MODIS_Terra_CorrectedReflectance_True
846Color', 847 ModisTerraBands367CR: 'MODIS_Terra_CorrectedReflectance_Bands367', 848 ViirsEarthAtNight2012: { 849 options: { 850 variant: 'VIIRS_CityLights_2012', 851 maxZoom: 8 852 } 853 }, 854 ModisTerraLSTDay: { 855 options: { 856 variant: 'MODIS_Terra_Land_Surface_Temp_Day', 857 format: 'png', 858 maxZoom: 7, 859 opacity: 0.75 860 } 861 }, 862 ModisTerraSnowCover: { 863 options: { 864 variant: 'MODIS_Terra_NDSI_Snow_Cover', 865 format: 'png', 866 maxZoom: 8, 867 opacity: 0.75 868 } 869 }, 870 ModisTerraAOD: { 871 options: { 872 variant: 'MODIS_Terra_Aerosol', 873 format: 'png', 874 maxZoom: 6, 875 opacity: 0.75 876 } 877 }, 878 ModisTerraChlorophyll: { 879 options: { 880 variant: 'MODIS_Terra_L2_Chlorophyll_A', 881 format: 'png', 882 maxZoom: 7, 883 opacity: 0.75 884 } 885 } 886 } 887 }, 888 NLS: { 889 // NLS maps are copyright National library of Scotland. 890 // http://maps.nls.uk/projects/subscription-api 891 // Please contact NLS for anything other than non-commercial low volume usage 892 // 893 // Map sources: Ordnance Survey 1:1m to 1:63K, 1880s-1961 894 // z0-9 - 1:1m 895 // z10-11 - quarter inch (1:253440) 896 // z12-18 - one inch (1:63360) 897 url: 'https://api.maptiler.com/tiles/{variant}/{z}/{x}/{y}.jpg?key={apikey}', 898 options: { 899 attribution: '<a href="http://maps.nls.uk/projects/subscription-api">National Library of Scotland Historic Maps</a>', 900 bounds: [[49.6, -12], [61.7, 3]], 901 minZoom: 1, 902 maxZoom: 18, 903 apikey: '<insert your api key here>' 904 }, 905 variants: { 906 osgb63k1885: 'uk-osgb63k1885', 907 osgb1888: 'uk-osgb1888', 908 osgb10k1888: 'uk-osgb10k1888', 909 osgb1919: 'uk-osgb1919', 910 osgb25k1937: 'uk-osgb25k1937', 911 osgb63k1955: 'uk-osgb63k1955', 912 oslondon1k1893: 'uk-oslondon1k1893' 913 } 914 }, 915 JusticeMap: { 916 // Justice Map (http://www.justicemap.org/) 917 // Visualize race and income data for your community, county and country. 918 // Includes tools for data journalists, bloggers and community activists. 919 url: 'https://www.justicemap.org/tile
vendor: 6,597 bytes, lines 919-1121
919/{size}/{variant}/{z}/{x}/{y}.png', 920 options: { 921 attribution: '<a href="http://www.justicemap.org/terms.php">Justice Map</a>', 922 // one of 'county', 'tract', 'block' 923 size: 'county', 924 // Bounds for USA, including Alaska and Hawaii 925 bounds: [[14, -180], [72, -56]] 926 }, 927 variants: { 928 income: 'income', 929 americanIndian: 'indian', 930 asian: 'asian', 931 black: 'black', 932 hispanic: 'hispanic', 933 multi: 'multi', 934 nonWhite: 'nonwhite', 935 white: 'white', 936 plurality: 'plural' 937 } 938 }, 939 GeoportailFrance: { 940 url: 'https://data.geopf.fr/wmts?REQUEST=GetTile&SERVICE=WMTS&VERSION=1.0.0&STYLE={style}&TILEMATRIXSET=PM&FORMAT={format}&LAYER={variant}&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}', 941 options: { 942 attribution: '<a target="_blank" href="https://www.geoportail.gouv.fr/">Geoportail France</a>', 943 bounds: [[-75, -180], [81, 180]], 944 minZoom: 2, 945 maxZoom: 18, 946 format: 'image/png', 947 style: 'normal', 948 variant: 'GEOGRAPHICALGRIDSYSTEMS.PLANIGNV2' 949 }, 950 variants: { 951 plan: 'GEOGRAPHICALGRIDSYSTEMS.PLANIGNV2', 952 parcels: { 953 options: { 954 variant: 'CADASTRALPARCELS.PARCELLAIRE_EXPRESS', 955 style: 'PCI vecteur', 956 maxZoom: 20 957 } 958 }, 959 orthos: { 960 options: { 961 maxZoom: 19, 962 format: 'image/jpeg', 963 variant: 'ORTHOIMAGERY.ORTHOPHOTOS' 964 } 965 } 966 } 967 }, 968 OneMapSG: { 969 url: 'https://maps-{s}.onemap.sg/v3/{variant}/{z}/{x}/{y}.png', 970 options: { 971 variant: 'Default', 972 minZoom: 11, 973 maxZoom: 18, 974 bounds: [[1.56073, 104.11475], [1.16, 103.502]], 975 attribution: '<img src="https://docs.onemap.sg/maps/images/oneMap64-01.png" style="height:20px;width:20px;"/> New OneMap | Map data © contributors, <a href="http://SLA.gov.sg">Singapore Land Authority</a>' 976 }, 977 variants: { 978 Default: 'Default', 979 Night: 'Night', 980 Original: 'Original', 981 Grey: 'Grey', 982 LandLot: 'LandLot' 983 } 984 }, 985 USGS: { 986 url: 'https://basemap.nationalmap.gov/arcgis/rest/services/USGSTopo/MapServer/tile/{z}/{y}/{x}', 987 options: { 988 maxZoom: 20, 989 attribution: 'Tiles courtesy of the <a href="https://usgs.gov/">U.S. Geological Survey</a>' 990 }, 991 variants: { 992 USTopo: {}, 993 USImagery: { 994 url: 'https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryOnly/MapServer/tile/{z}/{y}/{x}' 995 }, 996 USImageryTopo: { 997 url: 'https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryTopo/MapServer/tile/{z}/{y}/{x}' 998 } 999 } 1000 }, 1001 WaymarkedTrails: { 1002 url: 'https://tile.waymarkedtrails.org/{variant}/{z}/{x}/{y}.png', 1003 options: { 1004 maxZoom: 18, 1005 attribution: 'Map data: {attribution.OpenStreetMap} | Map style: © <a href="https://waymarkedtrails.org">waymarkedtrails.org</a> (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)' 1006 }, 1007 variants: { 1008 hiking: 'hiking', 1009 cycling: 'cycling', 1010 mtb: 'mtb', 1011 slopes: 'slopes', 1012 riding: 'riding', 1013 skating: 'skating' 1014 } 1015 }, 1016 OpenAIP: { 1017 url: 'https://{s}.tile.maps.openaip.net/geowebcache/service/tms/1.0.0/openaip_basemap@EPSG%3A900913@png/{z}/{x}/{y}.{ext}', 1018 options: { 1019 attribution: '<a href="https://www.openaip.net/">openAIP Data</a> (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-NC-SA</a>)', 1020 ext: 'png', 1021 minZoom: 4, 1022 maxZoom: 14, 1023 tms: true, 1024 detectRetina: true, 1025 subdomains: '12' 1026 } 1027 }, 1028 OpenSnowMap: { 1029 url: 'https://tiles.opensnowmap.org/{variant}/{z}/{x}/{y}.png', 1030 options: { 1031 minZoom: 9, 1032 maxZoom: 18, 1033 attribution: 'Map data: {attribution.OpenStreetMap} & ODbL, © <a href="https://www.opensnowmap.org/iframes/data.html">www.opensnowmap.org</a> <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>' 1034 }, 1035 variants: { 1036 pistes: 'pistes', 1037 } 1038 }, 1039 AzureMaps: { 1040 url: 1041 'https://atlas.microsoft.com/map/tile?api-version={apiVersion}' + 1042 '&tilesetId={variant}&x={x}&y={y}&zoom={z}&language={language}' + 1043 '&subscription-key={subscriptionKey}', 1044 options: { 1045 attribution: 'See https://docs.microsoft.com/en-us/rest/api/maps/render-v2/get-map-tile for details.', 1046 apiVersion: '2.0', 1047 variant: 'microsoft.imagery', 1048 subscriptionKey: '<insert your subscription key here>', 1049 language: 'en-US', 1050 }, 1051 variants: { 1052 MicrosoftImagery: 'microsoft.imagery', 1053 MicrosoftBaseDarkGrey: 'microsoft.base.darkgrey', 1054 MicrosoftBaseRoad: 'microsoft.base.road', 1055 MicrosoftBaseHybridRoad: 'microsoft.base.hybrid.road', 1056 MicrosoftTerraMain: 'microsoft.terra.main', 1057 MicrosoftWeatherInfraredMain: { 1058 url: 1059 'https://atlas.microsoft.com/map/tile?api-version={apiVersion}' + 1060 '&tilesetId={variant}&x={x}&y={y}&zoom={z}' + 1061 '&timeStamp={timeStamp}&language={language}' + 1062 '&subscription-key={subscriptionKey}', 1063 options: { 1064 timeStamp: '2021-05-08T09:03:00Z', 1065 attribution: 'See https://docs.microsoft.com/en-us/rest/api/maps/render-v2/get-map-tile#uri-parameters for details.', 1066 variant: 'microsoft.weather.infrared.main', 1067 }, 1068 }, 1069 MicrosoftWeatherRadarMain: { 1070 url: 1071 'https://atlas.microsoft.com/map/tile?api-version={apiVersion}' + 1072 '&tilesetId={variant}&x={x}&y={y}&zoom={z}' + 1073 '&timeStamp={timeStamp}&language={language}' + 1074 '&subscription-key={subscriptionKey}', 1075 options: { 1076 timeStamp: '2021-05-08T09:03:00Z', 1077 attribution: 'See https://docs.microsoft.com/en-us/rest/api/maps/render-v2/get-map-tile#uri-parameters for details.', 1078 variant: 'microsoft.weather.radar.main', 1079 }, 1080 } 1081 }, 1082 }, 1083 SwissFederalGeoportal: { 1084 url: 'https://wmts.geo.admin.ch/1.0.0/{variant}/default/current/3857/{z}/{x}/{y}.jpeg', 1085 options: { 1086 attribution: '© <a href="https://www.swisstopo.admin.ch/">swisstopo</a>', 1087 minZoom: 2, 1088 maxZoom: 18, 1089 bounds: [[45.398181, 5.140242], [48.230651, 11.47757]] 1090 }, 1091 variants: { 1092 NationalMapColor: 'ch.swisstopo.pixelkarte-farbe', 1093 NationalMapGrey: 'ch.swisstopo.pixelkarte-grau', 1094 SWISSIMAGE: { 1095 options: { 1096 variant: 'ch.swisstopo.swissimage', 1097 maxZoom: 19 1098 } 1099 } 1100 } 1101 }, 1102 TopPlusOpen: { 1103 url: 'http://sgx.geodatenzentrum.de/wmts_topplus_open/tile/1.0.0/{variant}/default/WEBMERCATOR/{z}/{y}/{x}.png', 1104 options: { 1105 maxZoom: 18, 1106 attribution: 'Map data: © <a href="http://www.govdata.de/dl-de/by-2-0">dl-de/by-2-0</a>', 1107 variant: 'web', 1108 }, 1109 variants: { 1110 Color: 'web', 1111 Grey: 'web_grau' 1112 } 1113 } 1114 }; 1115 1116 L.tileLayer.provider = function(provider, options) { 1117 return new L.TileLayer.Provider(provider, options); 1118 }; 1119 1120 return L; 1121}));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.