[{"data":1,"prerenderedAt":2038},["ShallowReactive",2],{"i-custom:social-instagram":3,"i-custom:social-tiktok":8,"i-custom:social-linkedin":10,"\u002Fdocs\u002Fmaps":12,"docs-navigation":2013,"\u002Fdocs\u002Fmaps-surround":2033},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,33,false,"\u003Cg fill=\"none\">\u003Cg id=\"Inst\">\n\u003Cpath id=\"Vector\" d=\"M22.519 3.0918H10.519C8.66314 3.09378 6.88381 3.83192 5.57149 5.14424C4.25916 6.45657 3.52103 8.23589 3.51904 10.0918V22.0918C3.52103 23.9477 4.25916 25.727 5.57149 27.0394C6.88381 28.3517 8.66314 29.0898 10.519 29.0918H22.519C24.3749 29.0898 26.1543 28.3517 27.4666 27.0394C28.7789 25.727 29.5171 23.9477 29.519 22.0918V10.0918C29.5171 8.23589 28.7789 6.45657 27.4666 5.14424C26.1543 3.83192 24.3749 3.09378 22.519 3.0918ZM16.519 22.0918C15.3324 22.0918 14.1723 21.7399 13.1856 21.0806C12.1989 20.4213 11.4299 19.4843 10.9758 18.3879C10.5216 17.2915 10.4028 16.0851 10.6343 14.9213C10.8658 13.7574 11.4373 12.6883 12.2764 11.8492C13.1155 11.01 14.1846 10.4386 15.3485 10.2071C16.5124 9.97557 17.7188 10.0944 18.8151 10.5485C19.9115 11.0026 20.8486 11.7717 21.5079 12.7584C22.1671 13.7451 22.519 14.9051 22.519 16.0918C22.5174 17.6826 21.8847 19.2078 20.7599 20.3326C19.635 21.4575 18.1098 22.0901 16.519 22.0918ZM24.019 10.0918C23.7224 10.0918 23.4324 10.0038 23.1857 9.839C22.939 9.67418 22.7468 9.43991 22.6332 9.16582C22.5197 8.89173 22.49 8.59013 22.5479 8.29916C22.6057 8.00819 22.7486 7.74092 22.9584 7.53114C23.1682 7.32136 23.4354 7.1785 23.7264 7.12062C24.0174 7.06274 24.319 7.09245 24.5931 7.20598C24.8672 7.31951 25.1014 7.51177 25.2662 7.75844C25.4311 8.00512 25.519 8.29513 25.519 8.5918C25.519 8.98962 25.361 9.37115 25.0797 9.65246C24.7984 9.93376 24.4169 10.0918 24.019 10.0918ZM20.519 16.0918C20.519 16.8829 20.2844 17.6563 19.8449 18.3141C19.4054 18.9719 18.7807 19.4846 18.0498 19.7873C17.3189 20.0901 16.5146 20.1693 15.7387 20.0149C14.9628 19.8606 14.25 19.4796 13.6906 18.9202C13.1312 18.3608 12.7502 17.6481 12.5959 16.8722C12.4416 16.0962 12.5208 15.292 12.8235 14.5611C13.1263 13.8302 13.639 13.2054 14.2968 12.7659C14.9546 12.3264 15.7279 12.0918 16.519 12.0918C17.5799 12.0918 18.5973 12.5132 19.3475 13.2634C20.0976 14.0135 20.519 15.0309 20.519 16.0918Z\" fill=\"currentColor\"\u002F>\n\u003C\u002Fg>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":9},"\u003Cg fill=\"none\">\u003Cg id=\"TikTok\">\n\u003Cpath id=\"Vector\" d=\"M29.519 10.0918V15.0918C29.519 15.357 29.4137 15.6114 29.2262 15.7989C29.0386 15.9864 28.7843 16.0918 28.519 16.0918C26.4301 16.0966 24.3711 15.5944 22.519 14.628V19.5918C22.519 22.1114 21.5182 24.5277 19.7366 26.3093C17.955 28.0909 15.5386 29.0918 13.019 29.0918C10.4995 29.0918 8.08312 28.0909 6.30153 26.3093C4.51993 24.5277 3.51904 22.1114 3.51904 19.5918C3.51904 14.9793 6.88279 10.9018 11.344 10.1068C11.488 10.0812 11.6357 10.0875 11.777 10.1252C11.9182 10.1629 12.0494 10.2311 12.1615 10.325C12.2735 10.4189 12.3636 10.5363 12.4253 10.6687C12.4871 10.8012 12.5191 10.9456 12.519 11.0918V16.428C12.5191 16.6173 12.4655 16.8027 12.3643 16.9627C12.2632 17.1227 12.1188 17.2507 11.9478 17.3318C11.5436 17.5235 11.1982 17.8201 10.9477 18.1908C10.6972 18.5614 10.5508 18.9925 10.5236 19.439C10.4965 19.8856 10.5897 20.3312 10.7935 20.7294C10.9972 21.1277 11.3042 21.464 11.6822 21.7032C12.0602 21.9424 12.4955 22.0758 12.9426 22.0895C13.3898 22.1032 13.8324 21.9966 14.2243 21.7809C14.6163 21.5653 14.9431 21.2484 15.1709 20.8633C15.3986 20.4783 15.5188 20.0392 15.519 19.5918V3.0918C15.519 2.82658 15.6244 2.57223 15.8119 2.38469C15.9995 2.19715 16.2538 2.0918 16.519 2.0918H21.519C21.7843 2.0918 22.0386 2.19715 22.2262 2.38469C22.4137 2.57223 22.519 2.82658 22.519 3.0918C22.5207 4.68259 23.1534 6.20775 24.2782 7.33261C25.4031 8.45747 26.9283 9.09014 28.519 9.0918C28.7843 9.0918 29.0386 9.19715 29.2262 9.38469C29.4137 9.57223 29.519 9.82658 29.519 10.0918Z\" fill=\"currentColor\"\u002F>\n\u003C\u002Fg>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":11},"\u003Cg fill=\"none\">\u003Cg id=\"Linkedin\">\n\u003Cpath id=\"Vector\" d=\"M27.519 2.95508H5.51904C4.98861 2.95508 4.4799 3.16579 4.10483 3.54086C3.72976 3.91594 3.51904 4.42465 3.51904 4.95508V26.9551C3.51904 27.4855 3.72976 27.9942 4.10483 28.3693C4.4799 28.7444 4.98861 28.9551 5.51904 28.9551H27.519C28.0495 28.9551 28.5582 28.7444 28.9333 28.3693C29.3083 27.9942 29.519 27.4855 29.519 26.9551V4.95508C29.519 4.42465 29.3083 3.91594 28.9333 3.54086C28.5582 3.16579 28.0495 2.95508 27.519 2.95508ZM12.519 21.9551C12.519 22.2203 12.4137 22.4746 12.2261 22.6622C12.0386 22.8497 11.7843 22.9551 11.519 22.9551C11.2538 22.9551 10.9995 22.8497 10.8119 22.6622C10.6244 22.4746 10.519 22.2203 10.519 21.9551V13.9551C10.519 13.6899 10.6244 13.4355 10.8119 13.248C10.9995 13.0604 11.2538 12.9551 11.519 12.9551C11.7843 12.9551 12.0386 13.0604 12.2261 13.248C12.4137 13.4355 12.519 13.6899 12.519 13.9551V21.9551ZM11.519 11.9551C11.2224 11.9551 10.9324 11.8671 10.6857 11.7023C10.439 11.5375 10.2468 11.3032 10.1332 11.0291C10.0197 10.755 9.98999 10.4534 10.0479 10.1624C10.1057 9.87147 10.2486 9.6042 10.4584 9.39442C10.6682 9.18464 10.9354 9.04178 11.2264 8.9839C11.5174 8.92602 11.819 8.95573 12.0931 9.06926C12.3672 9.18279 12.6014 9.37505 12.7662 9.62172C12.9311 9.8684 13.019 10.1584 13.019 10.4551C13.019 10.8529 12.861 11.2344 12.5797 11.5157C12.2984 11.797 11.9169 11.9551 11.519 11.9551ZM23.519 21.9551C23.519 22.2203 23.4137 22.4746 23.2262 22.6622C23.0386 22.8497 22.7843 22.9551 22.519 22.9551C22.2538 22.9551 21.9995 22.8497 21.8119 22.6622C21.6244 22.4746 21.519 22.2203 21.519 21.9551V17.4551C21.519 16.792 21.2557 16.1562 20.7868 15.6873C20.318 15.2185 19.6821 14.9551 19.019 14.9551C18.356 14.9551 17.7201 15.2185 17.2513 15.6873C16.7824 16.1562 16.519 16.792 16.519 17.4551V21.9551C16.519 22.2203 16.4137 22.4746 16.2261 22.6622C16.0386 22.8497 15.7843 22.9551 15.519 22.9551C15.2538 22.9551 14.9995 22.8497 14.8119 22.6622C14.6244 22.4746 14.519 22.2203 14.519 21.9551V13.9551C14.5203 13.7101 14.6114 13.4742 14.7751 13.2919C14.9387 13.1097 15.1636 12.9939 15.407 12.9664C15.6504 12.939 15.8954 13.0019 16.0956 13.1431C16.2957 13.2843 16.4371 13.4941 16.4928 13.7326C17.1693 13.2737 17.958 13.0077 18.7742 12.9632C19.5905 12.9188 20.4034 13.0975 21.1257 13.4802C21.8481 13.8628 22.4525 14.4351 22.8742 15.1354C23.2958 15.8357 23.5188 16.6376 23.519 17.4551V21.9551Z\" fill=\"currentColor\"\u002F>\n\u003C\u002Fg>\u003C\u002Fg>",{"id":13,"title":14,"body":15,"description":2005,"extension":2006,"meta":2007,"navigation":2008,"path":2009,"seo":2010,"stem":2011,"__hash__":2012},"docs\u002Fdocs\u002F1.maps.md","Map tiles",{"type":16,"value":17,"toc":1984},"minimark",[18,37,42,45,251,255,258,376,380,400,634,638,646,660,665,668,672,681,703,753,756,760,767,978,982,1061,1064,1072,1076,1107,1110,1114,1122,1166,1169,1173,1179,1193,1197,1200,1754,1761,1765,1772,1778,1801,1812,1816,1822,1836,1943,1947,1950,1953,1957,1969,1972,1980],[19,20,21,22,26,27,30,31,36],"p",{},"Host: ",[23,24,25],"code",{},"https:\u002F\u002Ftiles.topoexport.com",". Every request carries a ",[23,28,29],{},"tpk_"," key, see ",[32,33,35],"a",{"href":34},"\u002Fdocs#authentication","Authentication",".",[38,39,41],"h2",{"id":40},"quick-start-with-maplibre-gl-js","Quick start with MapLibre GL JS",[19,43,44],{},"The simplest way to display a map is a ready-made style. It references the tiles, fonts and sprites, with your key already set in every URL.",[46,47,52],"pre",{"className":48,"code":49,"language":50,"meta":51,"style":51},"language-html shiki shiki-themes github-light","\u003Clink href=\"https:\u002F\u002Funpkg.com\u002Fmaplibre-gl@4.7.1\u002Fdist\u002Fmaplibre-gl.css\" rel=\"stylesheet\">\n\u003Cscript src=\"https:\u002F\u002Funpkg.com\u002Fmaplibre-gl@4.7.1\u002Fdist\u002Fmaplibre-gl.js\">\u003C\u002Fscript>\n\n\u003Cdiv id=\"map\" style=\"height: 400px\">\u003C\u002Fdiv>\n\u003Cscript>\n  const map = new maplibregl.Map({\n    container: \"map\",\n    style: \"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fstyles\u002Fosm-world\u002Flight.json?key=tpk_YOUR_KEY&lang=en\",\n    center: [2.35, 48.86],\n    zoom: 12,\n  });\n\u003C\u002Fscript>\n","html","",[23,53,54,89,112,119,149,158,184,195,206,224,235,241],{"__ignoreMap":51},[55,56,59,63,67,71,74,78,81,83,86],"span",{"class":57,"line":58},"line",1,[55,60,62],{"class":61},"sgsFI","\u003C",[55,64,66],{"class":65},"shJU0","link",[55,68,70],{"class":69},"s7eDp"," href",[55,72,73],{"class":61},"=",[55,75,77],{"class":76},"sYBdl","\"https:\u002F\u002Funpkg.com\u002Fmaplibre-gl@4.7.1\u002Fdist\u002Fmaplibre-gl.css\"",[55,79,80],{"class":69}," rel",[55,82,73],{"class":61},[55,84,85],{"class":76},"\"stylesheet\"",[55,87,88],{"class":61},">\n",[55,90,92,94,97,100,102,105,108,110],{"class":57,"line":91},2,[55,93,62],{"class":61},[55,95,96],{"class":65},"script",[55,98,99],{"class":69}," src",[55,101,73],{"class":61},[55,103,104],{"class":76},"\"https:\u002F\u002Funpkg.com\u002Fmaplibre-gl@4.7.1\u002Fdist\u002Fmaplibre-gl.js\"",[55,106,107],{"class":61},">\u003C\u002F",[55,109,96],{"class":65},[55,111,88],{"class":61},[55,113,115],{"class":57,"line":114},3,[55,116,118],{"emptyLinePlaceholder":117},true,"\n",[55,120,122,124,127,130,132,135,138,140,143,145,147],{"class":57,"line":121},4,[55,123,62],{"class":61},[55,125,126],{"class":65},"div",[55,128,129],{"class":69}," id",[55,131,73],{"class":61},[55,133,134],{"class":76},"\"map\"",[55,136,137],{"class":69}," style",[55,139,73],{"class":61},[55,141,142],{"class":76},"\"height: 400px\"",[55,144,107],{"class":61},[55,146,126],{"class":65},[55,148,88],{"class":61},[55,150,152,154,156],{"class":57,"line":151},5,[55,153,62],{"class":61},[55,155,96],{"class":65},[55,157,88],{"class":61},[55,159,161,165,169,172,175,178,181],{"class":57,"line":160},6,[55,162,164],{"class":163},"sD7c4","  const",[55,166,168],{"class":167},"sYu0t"," map",[55,170,171],{"class":163}," =",[55,173,174],{"class":163}," new",[55,176,177],{"class":61}," maplibregl.",[55,179,180],{"class":69},"Map",[55,182,183],{"class":61},"({\n",[55,185,187,190,192],{"class":57,"line":186},7,[55,188,189],{"class":61},"    container: ",[55,191,134],{"class":76},[55,193,194],{"class":61},",\n",[55,196,198,201,204],{"class":57,"line":197},8,[55,199,200],{"class":61},"    style: ",[55,202,203],{"class":76},"\"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fstyles\u002Fosm-world\u002Flight.json?key=tpk_YOUR_KEY&lang=en\"",[55,205,194],{"class":61},[55,207,209,212,215,218,221],{"class":57,"line":208},9,[55,210,211],{"class":61},"    center: [",[55,213,214],{"class":167},"2.35",[55,216,217],{"class":61},", ",[55,219,220],{"class":167},"48.86",[55,222,223],{"class":61},"],\n",[55,225,227,230,233],{"class":57,"line":226},10,[55,228,229],{"class":61},"    zoom: ",[55,231,232],{"class":167},"12",[55,234,194],{"class":61},[55,236,238],{"class":57,"line":237},11,[55,239,240],{"class":61},"  });\n",[55,242,244,247,249],{"class":57,"line":243},12,[55,245,246],{"class":61},"\u003C\u002F",[55,248,96],{"class":65},[55,250,88],{"class":61},[38,252,254],{"id":253},"with-mapbox-gl-js","With Mapbox GL JS",[19,256,257],{},"Mapbox GL JS loads the same style URL.",[46,259,263],{"className":260,"code":261,"language":262,"meta":51,"style":51},"language-js shiki shiki-themes github-light","import mapboxgl from \"mapbox-gl\";\n\n\u002F\u002F Mapbox GL JS v2 and later require a Mapbox access token whatever the style, under Mapbox's terms.\n\u002F\u002F Version 1.x does not.\nmapboxgl.accessToken = MAPBOX_ACCESS_TOKEN;\n\nconst map = new mapboxgl.Map({\n  container: \"map\",\n  style: \"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fstyles\u002Fosm-world\u002Flight.json?key=tpk_YOUR_KEY&lang=en\",\n  center: [2.35, 48.86],\n  zoom: 12,\n});\n","js",[23,264,265,282,286,292,297,309,313,331,340,349,362,371],{"__ignoreMap":51},[55,266,267,270,273,276,279],{"class":57,"line":58},[55,268,269],{"class":163},"import",[55,271,272],{"class":61}," mapboxgl ",[55,274,275],{"class":163},"from",[55,277,278],{"class":76}," \"mapbox-gl\"",[55,280,281],{"class":61},";\n",[55,283,284],{"class":57,"line":91},[55,285,118],{"emptyLinePlaceholder":117},[55,287,288],{"class":57,"line":114},[55,289,291],{"class":290},"sAwPA","\u002F\u002F Mapbox GL JS v2 and later require a Mapbox access token whatever the style, under Mapbox's terms.\n",[55,293,294],{"class":57,"line":121},[55,295,296],{"class":290},"\u002F\u002F Version 1.x does not.\n",[55,298,299,302,304,307],{"class":57,"line":151},[55,300,301],{"class":61},"mapboxgl.accessToken ",[55,303,73],{"class":163},[55,305,306],{"class":167}," MAPBOX_ACCESS_TOKEN",[55,308,281],{"class":61},[55,310,311],{"class":57,"line":160},[55,312,118],{"emptyLinePlaceholder":117},[55,314,315,318,320,322,324,327,329],{"class":57,"line":186},[55,316,317],{"class":163},"const",[55,319,168],{"class":167},[55,321,171],{"class":163},[55,323,174],{"class":163},[55,325,326],{"class":61}," mapboxgl.",[55,328,180],{"class":69},[55,330,183],{"class":61},[55,332,333,336,338],{"class":57,"line":197},[55,334,335],{"class":61},"  container: ",[55,337,134],{"class":76},[55,339,194],{"class":61},[55,341,342,345,347],{"class":57,"line":208},[55,343,344],{"class":61},"  style: ",[55,346,203],{"class":76},[55,348,194],{"class":61},[55,350,351,354,356,358,360],{"class":57,"line":226},[55,352,353],{"class":61},"  center: [",[55,355,214],{"class":167},[55,357,217],{"class":61},[55,359,220],{"class":167},[55,361,223],{"class":61},[55,363,364,367,369],{"class":57,"line":237},[55,365,366],{"class":61},"  zoom: ",[55,368,232],{"class":167},[55,370,194],{"class":61},[55,372,373],{"class":57,"line":243},[55,374,375],{"class":61},"});\n",[38,377,379],{"id":378},"with-leaflet-or-openlayers","With Leaflet or OpenLayers",[19,381,382,383,391,392,399],{},"Both load the same style through a MapLibre-based plugin: ",[32,384,388],{"href":385,"rel":386},"https:\u002F\u002Fgithub.com\u002Fmaplibre\u002Fmaplibre-gl-leaflet",[387],"nofollow",[23,389,390],{},"@maplibre\u002Fmaplibre-gl-leaflet"," for Leaflet, ",[32,393,396],{"href":394,"rel":395},"https:\u002F\u002Fgithub.com\u002Fopenlayers\u002Fol-mapbox-style",[387],[23,397,398],{},"ol-mapbox-style"," for OpenLayers.",[401,402,403,520],"code-group",{},[46,404,407],{"className":260,"code":405,"filename":406,"language":262,"meta":51,"style":51},"import L from \"leaflet\";\nimport \"maplibre-gl\";\nimport \"@maplibre\u002Fmaplibre-gl-leaflet\";\n\nconst map = L.map(\"map\").setView([48.86, 2.35], 12);\nL.maplibreGL({\n  style: \"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fstyles\u002Fosm-world\u002Flight.json?key=tpk_YOUR_KEY&lang=en\",\n}).addTo(map);\n","Leaflet",[23,408,409,423,432,441,445,489,501,509],{"__ignoreMap":51},[55,410,411,413,416,418,421],{"class":57,"line":58},[55,412,269],{"class":163},[55,414,415],{"class":61}," L ",[55,417,275],{"class":163},[55,419,420],{"class":76}," \"leaflet\"",[55,422,281],{"class":61},[55,424,425,427,430],{"class":57,"line":91},[55,426,269],{"class":163},[55,428,429],{"class":76}," \"maplibre-gl\"",[55,431,281],{"class":61},[55,433,434,436,439],{"class":57,"line":114},[55,435,269],{"class":163},[55,437,438],{"class":76}," \"@maplibre\u002Fmaplibre-gl-leaflet\"",[55,440,281],{"class":61},[55,442,443],{"class":57,"line":121},[55,444,118],{"emptyLinePlaceholder":117},[55,446,447,449,451,453,456,458,461,464,466,469,472,475,477,479,481,484,486],{"class":57,"line":151},[55,448,317],{"class":163},[55,450,168],{"class":167},[55,452,171],{"class":163},[55,454,455],{"class":167}," L",[55,457,36],{"class":61},[55,459,460],{"class":69},"map",[55,462,463],{"class":61},"(",[55,465,134],{"class":76},[55,467,468],{"class":61},").",[55,470,471],{"class":69},"setView",[55,473,474],{"class":61},"([",[55,476,220],{"class":167},[55,478,217],{"class":61},[55,480,214],{"class":167},[55,482,483],{"class":61},"], ",[55,485,232],{"class":167},[55,487,488],{"class":61},");\n",[55,490,491,494,496,499],{"class":57,"line":160},[55,492,493],{"class":167},"L",[55,495,36],{"class":61},[55,497,498],{"class":69},"maplibreGL",[55,500,183],{"class":61},[55,502,503,505,507],{"class":57,"line":186},[55,504,344],{"class":61},[55,506,203],{"class":76},[55,508,194],{"class":61},[55,510,511,514,517],{"class":57,"line":197},[55,512,513],{"class":61},"}).",[55,515,516],{"class":69},"addTo",[55,518,519],{"class":61},"(map);\n",[46,521,524],{"className":260,"code":522,"filename":523,"language":262,"meta":51,"style":51},"import { apply } from \"ol-mapbox-style\";\nimport { fromLonLat } from \"ol\u002Fproj\";\n\n\u002F\u002F creates the OpenLayers map in the #map element from the style\nconst map = await apply(\"map\", \"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fstyles\u002Fosm-world\u002Flight.json?key=tpk_YOUR_KEY&lang=en\");\nmap.getView().setCenter(fromLonLat([2.35, 48.86]));\nmap.getView().setZoom(12);\n","OpenLayers",[23,525,526,540,554,558,563,587,617],{"__ignoreMap":51},[55,527,528,530,533,535,538],{"class":57,"line":58},[55,529,269],{"class":163},[55,531,532],{"class":61}," { apply } ",[55,534,275],{"class":163},[55,536,537],{"class":76}," \"ol-mapbox-style\"",[55,539,281],{"class":61},[55,541,542,544,547,549,552],{"class":57,"line":91},[55,543,269],{"class":163},[55,545,546],{"class":61}," { fromLonLat } ",[55,548,275],{"class":163},[55,550,551],{"class":76}," \"ol\u002Fproj\"",[55,553,281],{"class":61},[55,555,556],{"class":57,"line":114},[55,557,118],{"emptyLinePlaceholder":117},[55,559,560],{"class":57,"line":121},[55,561,562],{"class":290},"\u002F\u002F creates the OpenLayers map in the #map element from the style\n",[55,564,565,567,569,571,574,577,579,581,583,585],{"class":57,"line":151},[55,566,317],{"class":163},[55,568,168],{"class":167},[55,570,171],{"class":163},[55,572,573],{"class":163}," await",[55,575,576],{"class":69}," apply",[55,578,463],{"class":61},[55,580,134],{"class":76},[55,582,217],{"class":61},[55,584,203],{"class":76},[55,586,488],{"class":61},[55,588,589,592,595,598,601,603,606,608,610,612,614],{"class":57,"line":160},[55,590,591],{"class":61},"map.",[55,593,594],{"class":69},"getView",[55,596,597],{"class":61},"().",[55,599,600],{"class":69},"setCenter",[55,602,463],{"class":61},[55,604,605],{"class":69},"fromLonLat",[55,607,474],{"class":61},[55,609,214],{"class":167},[55,611,217],{"class":61},[55,613,220],{"class":167},[55,615,616],{"class":61},"]));\n",[55,618,619,621,623,625,628,630,632],{"class":57,"line":186},[55,620,591],{"class":61},[55,622,594],{"class":69},[55,624,597],{"class":61},[55,626,627],{"class":69},"setZoom",[55,629,463],{"class":61},[55,631,232],{"class":167},[55,633,488],{"class":61},[38,635,637],{"id":636},"styles","Styles",[46,639,644],{"className":640,"code":642,"language":643,"meta":51},[641],"language-text","GET \u002Fv1\u002Fstyles\u002Fosm-world\u002F{flavor}.json?key=tpk_…&lang={language}\n","text",[23,645,642],{"__ignoreMap":51},[19,647,648,649,652,653,656,657,36],{},"A style response contains your key: it is never cached by shared caches. Fonts (",[23,650,651],{},"\u002Fv1\u002Ffonts\u002F…",") and sprites (",[23,654,655],{},"\u002Fv1\u002Fsprites\u002Fv4\u002F…",") are referenced by the style and cost no credits. An unknown flavor answers ",[23,658,659],{},"404",[661,662,664],"h3",{"id":663},"flavors","Flavors",[666,667],"docs-style-flavors",{},[661,669,671],{"id":670},"label-languages","Label languages",[19,673,674,677,678,36],{},[23,675,676],{},"lang"," sets the language of the labels: place, road, water and point-of-interest names. It defaults to ",[23,679,680],{},"en",[682,683,684,696],"ul",{},[685,686,687,688,691,692,695],"li",{},"Each label uses the name in the requested language (",[23,689,690],{},"name:{lang}"," in the tiles), then the English name, then the local name (",[23,693,694],{},"name",") when neither exists. Where the local name is written in another script, it can be shown under the translated one.",[685,697,698,699,702],{},"Any value outside the list below answers ",[23,700,701],{},"400"," with the supported values:",[46,704,708],{"className":705,"code":706,"language":707,"meta":51,"style":51},"language-json shiki shiki-themes github-light","{ \"error\": \"Unsupported lang\", \"supported\": [\"ar\", \"cs\", \"bg\", \"…\"] }\n","json",[23,709,710],{"__ignoreMap":51},[55,711,712,715,718,721,724,726,729,732,735,737,740,742,745,747,750],{"class":57,"line":58},[55,713,714],{"class":61},"{ ",[55,716,717],{"class":167},"\"error\"",[55,719,720],{"class":61},": ",[55,722,723],{"class":76},"\"Unsupported lang\"",[55,725,217],{"class":61},[55,727,728],{"class":167},"\"supported\"",[55,730,731],{"class":61},": [",[55,733,734],{"class":76},"\"ar\"",[55,736,217],{"class":61},[55,738,739],{"class":76},"\"cs\"",[55,741,217],{"class":61},[55,743,744],{"class":76},"\"bg\"",[55,746,217],{"class":61},[55,748,749],{"class":76},"\"…\"",[55,751,752],{"class":61},"] }\n",[754,755],"docs-style-languages",{},[661,757,759],{"id":758},"change-the-language-at-runtime","Change the language at runtime",[19,761,762,763,766],{},"The language is part of the style, so switching it means loading the style again. ",[23,764,765],{},"setStyle"," drops the sources and layers you added yourself: add them back once the new style has loaded.",[46,768,770],{"className":260,"code":769,"language":262,"meta":51,"style":51},"const KEY = \"tpk_YOUR_KEY\";\nconst styleUrl = (lang) => `https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fstyles\u002Fosm-world\u002Flight.json?key=${KEY}&lang=${lang}`;\n\nconst map = new maplibregl.Map({ container: \"map\", style: styleUrl(\"en\"), center: [2.35, 48.86], zoom: 12 });\n\nfunction addOverlays() {\n  \u002F\u002F your own sources and layers, for example the cadastre below\n}\nmap.on(\"style.load\", addOverlays);\n\ndocument.querySelector(\"#language\").addEventListener(\"change\", (event) => {\n  map.setStyle(styleUrl(event.target.value), { diff: false });\n});\n",[23,771,772,786,823,827,874,878,889,894,899,914,918,954,973],{"__ignoreMap":51},[55,773,774,776,779,781,784],{"class":57,"line":58},[55,775,317],{"class":163},[55,777,778],{"class":167}," KEY",[55,780,171],{"class":163},[55,782,783],{"class":76}," \"tpk_YOUR_KEY\"",[55,785,281],{"class":61},[55,787,788,790,793,795,798,801,804,807,810,813,816,818,821],{"class":57,"line":91},[55,789,317],{"class":163},[55,791,792],{"class":69}," styleUrl",[55,794,171],{"class":163},[55,796,797],{"class":61}," (",[55,799,676],{"class":800},"sqxcx",[55,802,803],{"class":61},") ",[55,805,806],{"class":163},"=>",[55,808,809],{"class":76}," `https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fstyles\u002Fosm-world\u002Flight.json?key=${",[55,811,812],{"class":167},"KEY",[55,814,815],{"class":76},"}&lang=${",[55,817,676],{"class":61},[55,819,820],{"class":76},"}`",[55,822,281],{"class":61},[55,824,825],{"class":57,"line":114},[55,826,118],{"emptyLinePlaceholder":117},[55,828,829,831,833,835,837,839,841,844,846,849,852,854,857,860,862,864,866,869,871],{"class":57,"line":121},[55,830,317],{"class":163},[55,832,168],{"class":167},[55,834,171],{"class":163},[55,836,174],{"class":163},[55,838,177],{"class":61},[55,840,180],{"class":69},[55,842,843],{"class":61},"({ container: ",[55,845,134],{"class":76},[55,847,848],{"class":61},", style: ",[55,850,851],{"class":69},"styleUrl",[55,853,463],{"class":61},[55,855,856],{"class":76},"\"en\"",[55,858,859],{"class":61},"), center: [",[55,861,214],{"class":167},[55,863,217],{"class":61},[55,865,220],{"class":167},[55,867,868],{"class":61},"], zoom: ",[55,870,232],{"class":167},[55,872,873],{"class":61}," });\n",[55,875,876],{"class":57,"line":151},[55,877,118],{"emptyLinePlaceholder":117},[55,879,880,883,886],{"class":57,"line":160},[55,881,882],{"class":163},"function",[55,884,885],{"class":69}," addOverlays",[55,887,888],{"class":61},"() {\n",[55,890,891],{"class":57,"line":186},[55,892,893],{"class":290},"  \u002F\u002F your own sources and layers, for example the cadastre below\n",[55,895,896],{"class":57,"line":197},[55,897,898],{"class":61},"}\n",[55,900,901,903,906,908,911],{"class":57,"line":208},[55,902,591],{"class":61},[55,904,905],{"class":69},"on",[55,907,463],{"class":61},[55,909,910],{"class":76},"\"style.load\"",[55,912,913],{"class":61},", addOverlays);\n",[55,915,916],{"class":57,"line":226},[55,917,118],{"emptyLinePlaceholder":117},[55,919,920,923,926,928,931,933,936,938,941,944,947,949,951],{"class":57,"line":237},[55,921,922],{"class":61},"document.",[55,924,925],{"class":69},"querySelector",[55,927,463],{"class":61},[55,929,930],{"class":76},"\"#language\"",[55,932,468],{"class":61},[55,934,935],{"class":69},"addEventListener",[55,937,463],{"class":61},[55,939,940],{"class":76},"\"change\"",[55,942,943],{"class":61},", (",[55,945,946],{"class":800},"event",[55,948,803],{"class":61},[55,950,806],{"class":163},[55,952,953],{"class":61}," {\n",[55,955,956,959,961,963,965,968,971],{"class":57,"line":243},[55,957,958],{"class":61},"  map.",[55,960,765],{"class":69},[55,962,463],{"class":61},[55,964,851],{"class":69},[55,966,967],{"class":61},"(event.target.value), { diff: ",[55,969,970],{"class":167},"false",[55,972,873],{"class":61},[55,974,976],{"class":57,"line":975},13,[55,977,375],{"class":61},[38,979,981],{"id":980},"tilesets","Tilesets",[983,984,985,1004],"table",{},[986,987,988],"thead",{},[989,990,991,995,998,1001],"tr",{},[992,993,994],"th",{},"Tileset",[992,996,997],{},"Contents",[992,999,1000],{},"Source layers",[992,1002,1003],{},"Zooms",[1005,1006,1007,1028,1045],"tbody",{},[989,1008,1009,1015,1018,1025],{},[1010,1011,1012],"td",{},[23,1013,1014],{},"osm-world",[1010,1016,1017],{},"Worldwide basemap from OpenStreetMap and Natural Earth",[1010,1019,1020,1021],{},"9 layers, see ",[32,1022,1024],{"href":1023},"#osm-world-layers","below",[1010,1026,1027],{},"0 to 15",[989,1029,1030,1035,1038,1042],{},[1010,1031,1032],{},[23,1033,1034],{},"cadastre-fr",[1010,1036,1037],{},"Parcels of the French cadastre",[1010,1039,1040],{},[23,1041,1034],{},[1010,1043,1044],{},"12 to 15",[989,1046,1047,1052,1055,1059],{},[1010,1048,1049],{},[23,1050,1051],{},"cadastre-de",[1010,1053,1054],{},"Parcels (Flurstücke) published by the German Länder",[1010,1056,1057],{},[23,1058,1051],{},[1010,1060,1044],{},[19,1062,1063],{},"Beyond their last zoom level, map libraries keep displaying the tiles of that level (overzoom): parcels stay visible at zoom 18.",[19,1065,1066,1067,1071],{},"The ",[32,1068,1070],{"href":1069},"\u002Fexplorer","tilesets explorer"," lists every published tileset with its coverage, and previews the tiles with your key.",[661,1073,1075],{"id":1074},"osm-world-layers","osm-world layers",[19,1077,1078,1080,1081,1086,1087,1090,1091,217,1094,217,1097,217,1100,217,1103,1106],{},[23,1079,1014],{}," follows the ",[32,1082,1085],{"href":1083,"rel":1084},"https:\u002F\u002Fdocs.protomaps.com\u002Fbasemaps\u002Flayers",[387],"Protomaps basemap schema",", version 4, and is updated regularly from OpenStreetMap. The ",[23,1088,1089],{},"kind"," field gives the type of each feature (",[23,1092,1093],{},"park",[23,1095,1096],{},"forest",[23,1098,1099],{},"highway",[23,1101,1102],{},"rail",[23,1104,1105],{},"locality","…); the Protomaps documentation lists its values.",[1108,1109],"docs-basemap-layers",{},[661,1111,1113],{"id":1112},"cadastre-layers","Cadastre layers",[19,1115,1116,1118,1119,1121],{},[23,1117,1034],{}," and ",[23,1120,1051],{}," merge the parcel datasets of each publisher into one tileset with the same fields:",[983,1123,1124,1134],{},[986,1125,1126],{},[989,1127,1128,1131],{},[992,1129,1130],{},"Field",[992,1132,1133],{},"Meaning",[1005,1135,1136,1146,1156],{},[989,1137,1138,1143],{},[1010,1139,1140],{},[23,1141,1142],{},"id",[1010,1144,1145],{},"Identifier of the parcel",[989,1147,1148,1153],{},[1010,1149,1150],{},[23,1151,1152],{},"source_id",[1010,1154,1155],{},"Identifier of the parcel in the publisher's data",[989,1157,1158,1163],{},[1010,1159,1160],{},[23,1161,1162],{},"display_id",[1010,1164,1165],{},"Parcel reference as displayed by the publisher",[19,1167,1168],{},"A field is left out of a feature when the publisher's data has no value for it.",[661,1170,1172],{"id":1171},"tilejson-and-tiles","TileJSON and tiles",[46,1174,1177],{"className":1175,"code":1176,"language":643,"meta":51},[641],"GET \u002Fv1\u002Ftiles\u002F{tileset}.json?key=tpk_…\nGET \u002Fv1\u002Ftiles\u002F{tileset}\u002F{z}\u002F{x}\u002F{y}.mvt?key=tpk_…\n",[23,1178,1176],{"__ignoreMap":51},[19,1180,1181,1182,1185,1186,1189,1190,36],{},"The TileJSON (version 3.0.0) gives the tile URL, zoom range, bounds, ",[23,1183,1184],{},"vector_layers"," and the ",[23,1187,1188],{},"attribution"," to display. It is cached for 5 minutes. A tile with no data answers ",[23,1191,1192],{},"204 No Content",[661,1194,1196],{"id":1195},"add-the-cadastre-over-the-basemap","Add the cadastre over the basemap",[19,1198,1199],{},"Parcel outlines, their reference from zoom 16, and the fields of a parcel on click. The parcels are inserted below the basemap's labels so that street and place names stay readable.",[46,1201,1203],{"className":260,"code":1202,"language":262,"meta":51,"style":51},"map.on(\"style.load\", () => {\n  map.addSource(\"cadastre\", {\n    type: \"vector\",\n    url: \"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Ftiles\u002Fcadastre-fr.json?key=tpk_YOUR_KEY\",\n  });\n  \u002F\u002F first symbol layer of the basemap: everything inserted before it stays under the labels\n  const firstLabel = map.getStyle().layers.find((layer) => layer.type === \"symbol\")?.id;\n\n  map.addLayer({\n    id: \"parcels-fill\",\n    type: \"fill\",\n    source: \"cadastre\",\n    \"source-layer\": \"cadastre-fr\",\n    minzoom: 12,\n    paint: { \"fill-color\": \"#c2410c\", \"fill-opacity\": 0.04 },\n  }, firstLabel);\n  map.addLayer({\n    id: \"parcels-outline\",\n    type: \"line\",\n    source: \"cadastre\",\n    \"source-layer\": \"cadastre-fr\",\n    minzoom: 12,\n    paint: { \"line-color\": \"#c2410c\", \"line-width\": 0.8 },\n  }, firstLabel);\n  map.addLayer({\n    id: \"parcels-label\",\n    type: \"symbol\",\n    source: \"cadastre\",\n    \"source-layer\": \"cadastre-fr\",\n    minzoom: 16,\n    layout: { \"text-field\": [\"get\", \"display_id\"], \"text-font\": [\"Noto Sans Regular\"], \"text-size\": 11 },\n    paint: { \"text-color\": \"#9a3412\", \"text-halo-color\": \"#ffffff\", \"text-halo-width\": 1 },\n  });\n});\n\nmap.on(\"click\", \"parcels-fill\", (event) => {\n  const { id, source_id, display_id } = event.features[0].properties;\n  new maplibregl.Popup().setLngLat(event.lngLat).setText(`${display_id ?? id} (${source_id ?? \"no source id\"})`).addTo(map);\n});\n",[23,1204,1205,1222,1237,1247,1257,1261,1266,1309,1313,1322,1332,1341,1350,1362,1372,1399,1405,1414,1424,1434,1443,1454,1463,1487,1492,1501,1511,1521,1530,1541,1551,1592,1627,1631,1636,1641,1667,1699,1749],{"__ignoreMap":51},[55,1206,1207,1209,1211,1213,1215,1218,1220],{"class":57,"line":58},[55,1208,591],{"class":61},[55,1210,905],{"class":69},[55,1212,463],{"class":61},[55,1214,910],{"class":76},[55,1216,1217],{"class":61},", () ",[55,1219,806],{"class":163},[55,1221,953],{"class":61},[55,1223,1224,1226,1229,1231,1234],{"class":57,"line":91},[55,1225,958],{"class":61},[55,1227,1228],{"class":69},"addSource",[55,1230,463],{"class":61},[55,1232,1233],{"class":76},"\"cadastre\"",[55,1235,1236],{"class":61},", {\n",[55,1238,1239,1242,1245],{"class":57,"line":114},[55,1240,1241],{"class":61},"    type: ",[55,1243,1244],{"class":76},"\"vector\"",[55,1246,194],{"class":61},[55,1248,1249,1252,1255],{"class":57,"line":121},[55,1250,1251],{"class":61},"    url: ",[55,1253,1254],{"class":76},"\"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Ftiles\u002Fcadastre-fr.json?key=tpk_YOUR_KEY\"",[55,1256,194],{"class":61},[55,1258,1259],{"class":57,"line":151},[55,1260,240],{"class":61},[55,1262,1263],{"class":57,"line":160},[55,1264,1265],{"class":290},"  \u002F\u002F first symbol layer of the basemap: everything inserted before it stays under the labels\n",[55,1267,1268,1270,1273,1275,1278,1281,1284,1287,1290,1293,1295,1297,1300,1303,1306],{"class":57,"line":186},[55,1269,164],{"class":163},[55,1271,1272],{"class":167}," firstLabel",[55,1274,171],{"class":163},[55,1276,1277],{"class":61}," map.",[55,1279,1280],{"class":69},"getStyle",[55,1282,1283],{"class":61},"().layers.",[55,1285,1286],{"class":69},"find",[55,1288,1289],{"class":61},"((",[55,1291,1292],{"class":800},"layer",[55,1294,803],{"class":61},[55,1296,806],{"class":163},[55,1298,1299],{"class":61}," layer.type ",[55,1301,1302],{"class":163},"===",[55,1304,1305],{"class":76}," \"symbol\"",[55,1307,1308],{"class":61},")?.id;\n",[55,1310,1311],{"class":57,"line":197},[55,1312,118],{"emptyLinePlaceholder":117},[55,1314,1315,1317,1320],{"class":57,"line":208},[55,1316,958],{"class":61},[55,1318,1319],{"class":69},"addLayer",[55,1321,183],{"class":61},[55,1323,1324,1327,1330],{"class":57,"line":226},[55,1325,1326],{"class":61},"    id: ",[55,1328,1329],{"class":76},"\"parcels-fill\"",[55,1331,194],{"class":61},[55,1333,1334,1336,1339],{"class":57,"line":237},[55,1335,1241],{"class":61},[55,1337,1338],{"class":76},"\"fill\"",[55,1340,194],{"class":61},[55,1342,1343,1346,1348],{"class":57,"line":243},[55,1344,1345],{"class":61},"    source: ",[55,1347,1233],{"class":76},[55,1349,194],{"class":61},[55,1351,1352,1355,1357,1360],{"class":57,"line":975},[55,1353,1354],{"class":76},"    \"source-layer\"",[55,1356,720],{"class":61},[55,1358,1359],{"class":76},"\"cadastre-fr\"",[55,1361,194],{"class":61},[55,1363,1365,1368,1370],{"class":57,"line":1364},14,[55,1366,1367],{"class":61},"    minzoom: ",[55,1369,232],{"class":167},[55,1371,194],{"class":61},[55,1373,1375,1378,1381,1383,1386,1388,1391,1393,1396],{"class":57,"line":1374},15,[55,1376,1377],{"class":61},"    paint: { ",[55,1379,1380],{"class":76},"\"fill-color\"",[55,1382,720],{"class":61},[55,1384,1385],{"class":76},"\"#c2410c\"",[55,1387,217],{"class":61},[55,1389,1390],{"class":76},"\"fill-opacity\"",[55,1392,720],{"class":61},[55,1394,1395],{"class":167},"0.04",[55,1397,1398],{"class":61}," },\n",[55,1400,1402],{"class":57,"line":1401},16,[55,1403,1404],{"class":61},"  }, firstLabel);\n",[55,1406,1408,1410,1412],{"class":57,"line":1407},17,[55,1409,958],{"class":61},[55,1411,1319],{"class":69},[55,1413,183],{"class":61},[55,1415,1417,1419,1422],{"class":57,"line":1416},18,[55,1418,1326],{"class":61},[55,1420,1421],{"class":76},"\"parcels-outline\"",[55,1423,194],{"class":61},[55,1425,1427,1429,1432],{"class":57,"line":1426},19,[55,1428,1241],{"class":61},[55,1430,1431],{"class":76},"\"line\"",[55,1433,194],{"class":61},[55,1435,1437,1439,1441],{"class":57,"line":1436},20,[55,1438,1345],{"class":61},[55,1440,1233],{"class":76},[55,1442,194],{"class":61},[55,1444,1446,1448,1450,1452],{"class":57,"line":1445},21,[55,1447,1354],{"class":76},[55,1449,720],{"class":61},[55,1451,1359],{"class":76},[55,1453,194],{"class":61},[55,1455,1457,1459,1461],{"class":57,"line":1456},22,[55,1458,1367],{"class":61},[55,1460,232],{"class":167},[55,1462,194],{"class":61},[55,1464,1466,1468,1471,1473,1475,1477,1480,1482,1485],{"class":57,"line":1465},23,[55,1467,1377],{"class":61},[55,1469,1470],{"class":76},"\"line-color\"",[55,1472,720],{"class":61},[55,1474,1385],{"class":76},[55,1476,217],{"class":61},[55,1478,1479],{"class":76},"\"line-width\"",[55,1481,720],{"class":61},[55,1483,1484],{"class":167},"0.8",[55,1486,1398],{"class":61},[55,1488,1490],{"class":57,"line":1489},24,[55,1491,1404],{"class":61},[55,1493,1495,1497,1499],{"class":57,"line":1494},25,[55,1496,958],{"class":61},[55,1498,1319],{"class":69},[55,1500,183],{"class":61},[55,1502,1504,1506,1509],{"class":57,"line":1503},26,[55,1505,1326],{"class":61},[55,1507,1508],{"class":76},"\"parcels-label\"",[55,1510,194],{"class":61},[55,1512,1514,1516,1519],{"class":57,"line":1513},27,[55,1515,1241],{"class":61},[55,1517,1518],{"class":76},"\"symbol\"",[55,1520,194],{"class":61},[55,1522,1524,1526,1528],{"class":57,"line":1523},28,[55,1525,1345],{"class":61},[55,1527,1233],{"class":76},[55,1529,194],{"class":61},[55,1531,1533,1535,1537,1539],{"class":57,"line":1532},29,[55,1534,1354],{"class":76},[55,1536,720],{"class":61},[55,1538,1359],{"class":76},[55,1540,194],{"class":61},[55,1542,1544,1546,1549],{"class":57,"line":1543},30,[55,1545,1367],{"class":61},[55,1547,1548],{"class":167},"16",[55,1550,194],{"class":61},[55,1552,1554,1557,1560,1562,1565,1567,1570,1572,1575,1577,1580,1582,1585,1587,1590],{"class":57,"line":1553},31,[55,1555,1556],{"class":61},"    layout: { ",[55,1558,1559],{"class":76},"\"text-field\"",[55,1561,731],{"class":61},[55,1563,1564],{"class":76},"\"get\"",[55,1566,217],{"class":61},[55,1568,1569],{"class":76},"\"display_id\"",[55,1571,483],{"class":61},[55,1573,1574],{"class":76},"\"text-font\"",[55,1576,731],{"class":61},[55,1578,1579],{"class":76},"\"Noto Sans Regular\"",[55,1581,483],{"class":61},[55,1583,1584],{"class":76},"\"text-size\"",[55,1586,720],{"class":61},[55,1588,1589],{"class":167},"11",[55,1591,1398],{"class":61},[55,1593,1595,1597,1600,1602,1605,1607,1610,1612,1615,1617,1620,1622,1625],{"class":57,"line":1594},32,[55,1596,1377],{"class":61},[55,1598,1599],{"class":76},"\"text-color\"",[55,1601,720],{"class":61},[55,1603,1604],{"class":76},"\"#9a3412\"",[55,1606,217],{"class":61},[55,1608,1609],{"class":76},"\"text-halo-color\"",[55,1611,720],{"class":61},[55,1613,1614],{"class":76},"\"#ffffff\"",[55,1616,217],{"class":61},[55,1618,1619],{"class":76},"\"text-halo-width\"",[55,1621,720],{"class":61},[55,1623,1624],{"class":167},"1",[55,1626,1398],{"class":61},[55,1628,1629],{"class":57,"line":5},[55,1630,240],{"class":61},[55,1632,1634],{"class":57,"line":1633},34,[55,1635,375],{"class":61},[55,1637,1639],{"class":57,"line":1638},35,[55,1640,118],{"emptyLinePlaceholder":117},[55,1642,1644,1646,1648,1650,1653,1655,1657,1659,1661,1663,1665],{"class":57,"line":1643},36,[55,1645,591],{"class":61},[55,1647,905],{"class":69},[55,1649,463],{"class":61},[55,1651,1652],{"class":76},"\"click\"",[55,1654,217],{"class":61},[55,1656,1329],{"class":76},[55,1658,943],{"class":61},[55,1660,946],{"class":800},[55,1662,803],{"class":61},[55,1664,806],{"class":163},[55,1666,953],{"class":61},[55,1668,1670,1672,1675,1677,1679,1681,1683,1685,1688,1690,1693,1696],{"class":57,"line":1669},37,[55,1671,164],{"class":163},[55,1673,1674],{"class":61}," { ",[55,1676,1142],{"class":167},[55,1678,217],{"class":61},[55,1680,1152],{"class":167},[55,1682,217],{"class":61},[55,1684,1162],{"class":167},[55,1686,1687],{"class":61}," } ",[55,1689,73],{"class":163},[55,1691,1692],{"class":61}," event.features[",[55,1694,1695],{"class":167},"0",[55,1697,1698],{"class":61},"].properties;\n",[55,1700,1702,1705,1707,1710,1712,1715,1718,1721,1723,1726,1728,1731,1733,1736,1738,1740,1743,1745,1747],{"class":57,"line":1701},38,[55,1703,1704],{"class":163},"  new",[55,1706,177],{"class":61},[55,1708,1709],{"class":69},"Popup",[55,1711,597],{"class":61},[55,1713,1714],{"class":69},"setLngLat",[55,1716,1717],{"class":61},"(event.lngLat).",[55,1719,1720],{"class":69},"setText",[55,1722,463],{"class":61},[55,1724,1725],{"class":76},"`${",[55,1727,1162],{"class":61},[55,1729,1730],{"class":163}," ??",[55,1732,129],{"class":61},[55,1734,1735],{"class":76},"} (${",[55,1737,1152],{"class":61},[55,1739,1730],{"class":163},[55,1741,1742],{"class":76}," \"no source id\"})`",[55,1744,468],{"class":61},[55,1746,516],{"class":69},[55,1748,519],{"class":61},[55,1750,1752],{"class":57,"line":1751},39,[55,1753,375],{"class":61},[19,1755,1756,1757,1760],{},"The style's fonts are served by the same host: use ",[23,1758,1759],{},"Noto Sans Regular"," (or another font of the style) for your own labels.",[38,1762,1764],{"id":1763},"qgis-arcgis-pro-and-scripts","QGIS, ArcGIS Pro and scripts",[19,1766,1767,1768,1771],{},"Some clients drop the query string or send no ",[23,1769,1770],{},"Origin"," header. Put the key in the path instead, and use a key with no origin restriction:",[46,1773,1776],{"className":1774,"code":1775,"language":643,"meta":51},[641],"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fk\u002Ftpk_YOUR_KEY\u002Ftiles\u002Fcadastre-fr.json\nhttps:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fk\u002Ftpk_YOUR_KEY\u002Ftiles\u002Fosm-world\u002F{z}\u002F{x}\u002F{y}.mvt\n",[23,1777,1775],{"__ignoreMap":51},[682,1779,1780,1795],{},[685,1781,1782,720,1786,1790,1791,1794],{},[1783,1784,1785],"strong",{},"QGIS",[1787,1788,1789],"em",{},"Vector Tiles"," → ",[1787,1792,1793],{},"New Generic Connection",", with the tile URL above.",[685,1796,1797,1800],{},[1783,1798,1799],{},"ArcGIS Pro",": add a vector tile layer from the TileJSON URL.",[19,1802,1803,1804,1807,1808,1811],{},"Relative URLs inside a TileJSON or a ",[23,1805,1806],{},"tileset.json"," keep the ",[23,1809,1810],{},"\u002Fv1\u002Fk\u002F{key}"," prefix, so every request stays authenticated.",[38,1813,1815],{"id":1814},"_3d-tiles-and-terrain","3D Tiles and terrain",[46,1817,1820],{"className":1818,"code":1819,"language":643,"meta":51},[641],"GET \u002Fv1\u002Ftiles3d\u002F{tileset}\u002Ftileset.json?key=tpk_…\nGET \u002Fv1\u002Fterrain\u002F{version}\u002Flayer.json?key=tpk_…\n",[23,1821,1819],{"__ignoreMap":51},[19,1823,1824,1825,1827,1828,1831,1832,1835],{},"3D Tiles are served as ",[23,1826,1806],{}," plus glTF content; terrain as quantized-mesh (",[23,1829,1830],{},"layer.json"," plus ",[23,1833,1834],{},".terrain"," tiles). Cesium carries the key of the root URL to every child resource. For ArcGIS, use the key-in-path form. 3D Tiles and terrain are published per area: ask us which tilesets cover yours.",[46,1837,1839],{"className":260,"code":1838,"language":262,"meta":51,"style":51},"const tileset = await Cesium.Cesium3DTileset.fromUrl(\n  \"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Ftiles3d\u002FYOUR_TILESET\u002Ftileset.json?key=tpk_YOUR_KEY\",\n);\nviewer.scene.primitives.add(tileset);\n\nviewer.terrainProvider = await Cesium.CesiumTerrainProvider.fromUrl(\n  new Cesium.Resource({\n    url: \"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fterrain\u002FYOUR_TERRAIN_VERSION\",\n    queryParameters: { key: \"tpk_YOUR_KEY\" },\n  }),\n);\n",[23,1840,1841,1861,1868,1872,1883,1887,1903,1915,1924,1934,1939],{"__ignoreMap":51},[55,1842,1843,1845,1848,1850,1852,1855,1858],{"class":57,"line":58},[55,1844,317],{"class":163},[55,1846,1847],{"class":167}," tileset",[55,1849,171],{"class":163},[55,1851,573],{"class":163},[55,1853,1854],{"class":61}," Cesium.Cesium3DTileset.",[55,1856,1857],{"class":69},"fromUrl",[55,1859,1860],{"class":61},"(\n",[55,1862,1863,1866],{"class":57,"line":91},[55,1864,1865],{"class":76},"  \"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Ftiles3d\u002FYOUR_TILESET\u002Ftileset.json?key=tpk_YOUR_KEY\"",[55,1867,194],{"class":61},[55,1869,1870],{"class":57,"line":114},[55,1871,488],{"class":61},[55,1873,1874,1877,1880],{"class":57,"line":121},[55,1875,1876],{"class":61},"viewer.scene.primitives.",[55,1878,1879],{"class":69},"add",[55,1881,1882],{"class":61},"(tileset);\n",[55,1884,1885],{"class":57,"line":151},[55,1886,118],{"emptyLinePlaceholder":117},[55,1888,1889,1892,1894,1896,1899,1901],{"class":57,"line":160},[55,1890,1891],{"class":61},"viewer.terrainProvider ",[55,1893,73],{"class":163},[55,1895,573],{"class":163},[55,1897,1898],{"class":61}," Cesium.CesiumTerrainProvider.",[55,1900,1857],{"class":69},[55,1902,1860],{"class":61},[55,1904,1905,1907,1910,1913],{"class":57,"line":186},[55,1906,1704],{"class":163},[55,1908,1909],{"class":61}," Cesium.",[55,1911,1912],{"class":69},"Resource",[55,1914,183],{"class":61},[55,1916,1917,1919,1922],{"class":57,"line":197},[55,1918,1251],{"class":61},[55,1920,1921],{"class":76},"\"https:\u002F\u002Ftiles.topoexport.com\u002Fv1\u002Fterrain\u002FYOUR_TERRAIN_VERSION\"",[55,1923,194],{"class":61},[55,1925,1926,1929,1932],{"class":57,"line":208},[55,1927,1928],{"class":61},"    queryParameters: { key: ",[55,1930,1931],{"class":76},"\"tpk_YOUR_KEY\"",[55,1933,1398],{"class":61},[55,1935,1936],{"class":57,"line":226},[55,1937,1938],{"class":61},"  }),\n",[55,1940,1941],{"class":57,"line":237},[55,1942,488],{"class":61},[38,1944,1946],{"id":1945},"credits","Credits",[1948,1949],"docs-credits",{"service":14},[19,1951,1952],{},"Each response carries headers with the plan of the key and the credits the request consumed.",[38,1954,1956],{"id":1955},"rate-limits","Rate limits",[19,1958,1959,1960,1118,1964,1968],{},"Map tiles follow the common ",[32,1961,1963],{"href":1962},"\u002Fdocs#rate-limits","rate limits",[32,1965,1967],{"href":1966},"\u002Fdocs#fair-use","fair use"," rules. A map library requests the tiles of a view in parallel: this is expected and well within the limits.",[38,1970,1971],{"id":1188},"Attribution",[19,1973,1066,1974,1976,1977,36],{},[23,1975,1188],{}," field of each TileJSON, and the sources of each style, list what to display: OpenStreetMap contributors for the basemap, the cadastre publishers for the overlays. MapLibre GL JS and Mapbox GL JS display them in their attribution control. On the API Trial and API plans, add ",[1978,1979],"docs-value",{"name":1188},[1981,1982,1983],"style",{},"html pre.shiki code .sgsFI, html code.shiki .sgsFI{--shiki-default:#24292E}html pre.shiki code .shJU0, html code.shiki .shJU0{--shiki-default:#22863A}html pre.shiki code .s7eDp, html code.shiki .s7eDp{--shiki-default:#6F42C1}html pre.shiki code .sYBdl, html code.shiki .sYBdl{--shiki-default:#032F62}html pre.shiki code .sD7c4, html code.shiki .sD7c4{--shiki-default:#D73A49}html pre.shiki code .sYu0t, html code.shiki .sYu0t{--shiki-default:#005CC5}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .sAwPA, html code.shiki .sAwPA{--shiki-default:#6A737D}html pre.shiki code .sqxcx, html code.shiki .sqxcx{--shiki-default:#E36209}",{"title":51,"searchDepth":91,"depth":91,"links":1985},[1986,1987,1988,1989,1994,2000,2001,2002,2003,2004],{"id":40,"depth":91,"text":41},{"id":253,"depth":91,"text":254},{"id":378,"depth":91,"text":379},{"id":636,"depth":91,"text":637,"children":1990},[1991,1992,1993],{"id":663,"depth":114,"text":664},{"id":670,"depth":114,"text":671},{"id":758,"depth":114,"text":759},{"id":980,"depth":91,"text":981,"children":1995},[1996,1997,1998,1999],{"id":1074,"depth":114,"text":1075},{"id":1112,"depth":114,"text":1113},{"id":1171,"depth":114,"text":1172},{"id":1195,"depth":114,"text":1196},{"id":1763,"depth":91,"text":1764},{"id":1814,"depth":91,"text":1815},{"id":1945,"depth":91,"text":1946},{"id":1955,"depth":91,"text":1956},{"id":1188,"depth":91,"text":1971},"Worldwide OpenStreetMap basemap styles, cadastral overlays, 3D Tiles and terrain, served as vector tiles for MapLibre GL JS, Mapbox GL JS, QGIS, ArcGIS and Cesium.","md",{},{"title":14},"\u002Fdocs\u002Fmaps",{"title":14,"description":2005},"docs\u002F1.maps","u-F_4Er0uGyryXsO9Y-j8kWecbk1HPN4S-rAlC9zrns",[2014],{"title":2015,"path":2016,"stem":2017,"children":2018},"Getting started","\u002Fdocs","docs\u002F0.index",[2019,2020,2021,2025,2029],{"title":2015,"path":2016,"stem":2017},{"title":14,"path":2009,"stem":2011},{"title":2022,"path":2023,"stem":2024},"Geocoding","\u002Fdocs\u002Fgeocoding","docs\u002F2.geocoding",{"title":2026,"path":2027,"stem":2028},"Export API","\u002Fdocs\u002Fexport-api","docs\u002F3.export-api",{"title":2030,"path":2031,"stem":2032},"Migration prompts","\u002Fdocs\u002Fmigrate","docs\u002F4.migrate",[2034,2036],{"title":2015,"path":2016,"stem":2017,"description":2035,"children":-1},"Keys, authentication, credits, limits and errors shared by the TopoExport map tiles, geocoding and Export APIs.",{"title":2022,"path":2023,"stem":2024,"description":2037,"children":-1},"Autocomplete, search, structured search, reverse geocoding and place lookup worldwide, with Pelias-compatible parameters and GeoJSON responses.",1792558214927]