diff --git a/.next/cache/webpack/client-development/0.pack.gz b/.next/cache/webpack/client-development/0.pack.gz index a9d8fecd1..d63f7f107 100644 Binary files a/.next/cache/webpack/client-development/0.pack.gz and b/.next/cache/webpack/client-development/0.pack.gz differ diff --git a/.next/cache/webpack/client-development/3.pack.gz b/.next/cache/webpack/client-development/3.pack.gz index bf6cc30c8..a91896564 100644 Binary files a/.next/cache/webpack/client-development/3.pack.gz and b/.next/cache/webpack/client-development/3.pack.gz differ diff --git a/.next/cache/webpack/client-development/index.pack.gz b/.next/cache/webpack/client-development/index.pack.gz index db271759f..4b3c44913 100644 Binary files a/.next/cache/webpack/client-development/index.pack.gz and b/.next/cache/webpack/client-development/index.pack.gz differ diff --git a/.next/cache/webpack/client-development/index.pack.gz.old b/.next/cache/webpack/client-development/index.pack.gz.old index 91d4b4aee..207cdf710 100644 Binary files a/.next/cache/webpack/client-development/index.pack.gz.old and b/.next/cache/webpack/client-development/index.pack.gz.old differ diff --git a/.next/cache/webpack/server-development/0.pack.gz b/.next/cache/webpack/server-development/0.pack.gz index 53c65d266..97bc0c2ef 100644 Binary files a/.next/cache/webpack/server-development/0.pack.gz and b/.next/cache/webpack/server-development/0.pack.gz differ diff --git a/.next/cache/webpack/server-development/1.pack.gz b/.next/cache/webpack/server-development/1.pack.gz index 623bc2097..3de059a2d 100644 Binary files a/.next/cache/webpack/server-development/1.pack.gz and b/.next/cache/webpack/server-development/1.pack.gz differ diff --git a/.next/cache/webpack/server-development/2.pack.gz b/.next/cache/webpack/server-development/2.pack.gz index 43cc999a9..fe002f07b 100644 Binary files a/.next/cache/webpack/server-development/2.pack.gz and b/.next/cache/webpack/server-development/2.pack.gz differ diff --git a/.next/cache/webpack/server-development/3.pack.gz b/.next/cache/webpack/server-development/3.pack.gz index c02bd2ead..d044332f7 100644 Binary files a/.next/cache/webpack/server-development/3.pack.gz and b/.next/cache/webpack/server-development/3.pack.gz differ diff --git a/.next/cache/webpack/server-development/5.pack.gz b/.next/cache/webpack/server-development/5.pack.gz index fbf1924ba..841232be1 100644 Binary files a/.next/cache/webpack/server-development/5.pack.gz and b/.next/cache/webpack/server-development/5.pack.gz differ diff --git a/.next/cache/webpack/server-development/index.pack.gz b/.next/cache/webpack/server-development/index.pack.gz index 5a9e7696c..135e6a2cb 100644 Binary files a/.next/cache/webpack/server-development/index.pack.gz and b/.next/cache/webpack/server-development/index.pack.gz differ diff --git a/.next/cache/webpack/server-development/index.pack.gz.old b/.next/cache/webpack/server-development/index.pack.gz.old index b355d8927..b264aa7ab 100644 Binary files a/.next/cache/webpack/server-development/index.pack.gz.old and b/.next/cache/webpack/server-development/index.pack.gz.old differ diff --git a/.next/server/components_MapComponent_js.js b/.next/server/components_MapComponent_js.js index 7b34b0d6a..c803c6933 100644 --- a/.next/server/components_MapComponent_js.js +++ b/.next/server/components_MapComponent_js.js @@ -17,7 +17,7 @@ exports.modules = { \************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"react/jsx-dev-runtime\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var leaflet__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! leaflet */ \"leaflet\");\n/* harmony import */ var leaflet__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(leaflet__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var leaflet_dist_leaflet_css__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! leaflet/dist/leaflet.css */ \"./node_modules/leaflet/dist/leaflet.css\");\n/* harmony import */ var leaflet_dist_leaflet_css__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(leaflet_dist_leaflet_css__WEBPACK_IMPORTED_MODULE_3__);\n\n\n\n\nconst MapComponent = ()=>{\n const mapRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const [map, setMap] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n function addMarker(map) {\n const marker = leaflet__WEBPACK_IMPORTED_MODULE_2___default().marker([\n 53.111111,\n 8.4625\n ]).addTo(map);\n marker.bindPopup(\"Hallo Welt!
Ich bin ein Popup.\").openPopup();\n }\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (mapRef.current && !map) {\n const initialMap = leaflet__WEBPACK_IMPORTED_MODULE_2___default().map(mapRef.current, {\n center: [\n 53.111111,\n 8.4625\n ],\n zoom: 10,\n zoomControl: false\n });\n initialMap.on(\"contextmenu\", (event)=>{\n leaflet__WEBPACK_IMPORTED_MODULE_2___default().popup().setLatLng(event.latlng).setContent(`\r\n

\r\n \r\n \r\n \r\n

`).openOn(initialMap);\n });\n window.zoomIn = ()=>{\n initialMap.zoomIn();\n };\n window.zoomOut = ()=>{\n initialMap.zoomOut();\n };\n window.centerHere = (lat, lng)=>{\n initialMap.panTo(new (leaflet__WEBPACK_IMPORTED_MODULE_2___default().LatLng)(lat, lng));\n };\n leaflet__WEBPACK_IMPORTED_MODULE_2___default().tileLayer(\"https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png\", {\n attribution: '© OpenStreetMap contributors'\n }).addTo(initialMap);\n addMarker(initialMap);\n setMap(initialMap);\n }\n }, [\n mapRef,\n map\n ]);\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n id: \"map\",\n ref: mapRef,\n style: {\n height: \"100vh\",\n width: \"100vw\",\n overflow: \"hidden\"\n }\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\isa.LTW\\\\Desktop\\\\15.04.2024\\\\wwwrootTalas5NodeMap\\\\components\\\\MapComponent.js\",\n lineNumber: 59,\n columnNumber: 5\n }, undefined);\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (MapComponent);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9jb21wb25lbnRzL01hcENvbXBvbmVudC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQTJEO0FBQ25DO0FBQ1U7QUFFbEMsTUFBTUssZUFBZTtJQUNuQixNQUFNQyxTQUFTSiw2Q0FBTUEsQ0FBQztJQUN0QixNQUFNLENBQUNLLEtBQUtDLE9BQU8sR0FBR0wsK0NBQVFBLENBQUM7SUFFL0IsU0FBU00sVUFBVUYsR0FBRztRQUNwQixNQUFNRyxTQUFTTixxREFBUSxDQUFDO1lBQUM7WUFBVztTQUFPLEVBQUVPLEtBQUssQ0FBQ0o7UUFDbkRHLE9BQU9FLFNBQVMsQ0FBQyw0Q0FBNENDLFNBQVM7SUFDeEU7SUFFQVosZ0RBQVNBLENBQUM7UUFDUixJQUFJSyxPQUFPUSxPQUFPLElBQUksQ0FBQ1AsS0FBSztZQUMxQixNQUFNUSxhQUFhWCxrREFBSyxDQUFDRSxPQUFPUSxPQUFPLEVBQUU7Z0JBQ3ZDRSxRQUFRO29CQUFDO29CQUFXO2lCQUFPO2dCQUMzQkMsTUFBTTtnQkFDTkMsYUFBYTtZQUNmO1lBRUFILFdBQVdJLEVBQUUsQ0FBQyxlQUFlLENBQUNDO2dCQUM1QmhCLG9EQUFPLEdBQ0prQixTQUFTLENBQUNGLE1BQU1HLE1BQU0sRUFDdEJDLFVBQVUsQ0FDVCxDQUFDOzs7OzBDQUk2QixFQUFFSixNQUFNRyxNQUFNLENBQUNFLEdBQUcsQ0FBQyxFQUFFLEVBQUVMLE1BQU1HLE1BQU0sQ0FBQ0csR0FBRyxDQUFDO2dCQUNsRSxDQUFDLEVBRU5DLE1BQU0sQ0FBQ1o7WUFDWjtZQUVBYSxPQUFPQyxNQUFNLEdBQUc7Z0JBQ2RkLFdBQVdjLE1BQU07WUFDbkI7WUFFQUQsT0FBT0UsT0FBTyxHQUFHO2dCQUNmZixXQUFXZSxPQUFPO1lBQ3BCO1lBRUFGLE9BQU9HLFVBQVUsR0FBRyxDQUFDTixLQUFLQztnQkFDeEJYLFdBQVdpQixLQUFLLENBQUMsSUFBSTVCLHVEQUFRLENBQUNxQixLQUFLQztZQUNyQztZQUVBdEIsd0RBQVcsQ0FBQyxzREFBc0Q7Z0JBQ2hFK0IsYUFDRTtZQUNKLEdBQUd4QixLQUFLLENBQUNJO1lBQ1ROLFVBQVVNO1lBRVZQLE9BQU9PO1FBQ1Q7SUFDRixHQUFHO1FBQUNUO1FBQVFDO0tBQUk7SUFFaEIscUJBQ0UsOERBQUM2QjtRQUNDQyxJQUFHO1FBQ0hDLEtBQUtoQztRQUNMaUMsT0FBTztZQUFFQyxRQUFRO1lBQVNDLE9BQU87WUFBU0MsVUFBVTtRQUFTOzs7Ozs7QUFHbkU7QUFFQSxpRUFBZXJDLFlBQVlBLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9jb21wb25lbnRzL01hcENvbXBvbmVudC5qcz9kMDdkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IEwgZnJvbSBcImxlYWZsZXRcIjtcclxuaW1wb3J0IFwibGVhZmxldC9kaXN0L2xlYWZsZXQuY3NzXCI7XHJcblxyXG5jb25zdCBNYXBDb21wb25lbnQgPSAoKSA9PiB7XHJcbiAgY29uc3QgbWFwUmVmID0gdXNlUmVmKG51bGwpO1xyXG4gIGNvbnN0IFttYXAsIHNldE1hcF0gPSB1c2VTdGF0ZShudWxsKTtcclxuXHJcbiAgZnVuY3Rpb24gYWRkTWFya2VyKG1hcCkge1xyXG4gICAgY29uc3QgbWFya2VyID0gTC5tYXJrZXIoWzUzLjExMTExMSwgOC40NjI1XSkuYWRkVG8obWFwKTtcclxuICAgIG1hcmtlci5iaW5kUG9wdXAoXCI8Yj5IYWxsbyBXZWx0ITwvYj48YnI+SWNoIGJpbiBlaW4gUG9wdXAuXCIpLm9wZW5Qb3B1cCgpO1xyXG4gIH1cclxuXHJcbiAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgIGlmIChtYXBSZWYuY3VycmVudCAmJiAhbWFwKSB7XHJcbiAgICAgIGNvbnN0IGluaXRpYWxNYXAgPSBMLm1hcChtYXBSZWYuY3VycmVudCwge1xyXG4gICAgICAgIGNlbnRlcjogWzUzLjExMTExMSwgOC40NjI1XSxcclxuICAgICAgICB6b29tOiAxMCxcclxuICAgICAgICB6b29tQ29udHJvbDogZmFsc2UsIC8vIERlYWt0aXZpZXJlIGRpZSBTdGFuZGFyZC1ab29tc3RldWVydW5nXHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgaW5pdGlhbE1hcC5vbihcImNvbnRleHRtZW51XCIsIChldmVudCkgPT4ge1xyXG4gICAgICAgIEwucG9wdXAoKVxyXG4gICAgICAgICAgLnNldExhdExuZyhldmVudC5sYXRsbmcpXHJcbiAgICAgICAgICAuc2V0Q29udGVudChcclxuICAgICAgICAgICAgYFxyXG4gICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJ6b29tSW4oKVwiPlpvb20gaW48L2J1dHRvbj5cclxuICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJ6b29tT3V0KClcIj5ab29tIG91dDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDxidXR0b24gb25jbGljaz1cImNlbnRlckhlcmUoJHtldmVudC5sYXRsbmcubGF0fSwgJHtldmVudC5sYXRsbmcubG5nfSlcIj5IaWVyIHplbnRyaWVyZW48L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9wPmBcclxuICAgICAgICAgIClcclxuICAgICAgICAgIC5vcGVuT24oaW5pdGlhbE1hcCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgd2luZG93Lnpvb21JbiA9ICgpID0+IHtcclxuICAgICAgICBpbml0aWFsTWFwLnpvb21JbigpO1xyXG4gICAgICB9O1xyXG5cclxuICAgICAgd2luZG93Lnpvb21PdXQgPSAoKSA9PiB7XHJcbiAgICAgICAgaW5pdGlhbE1hcC56b29tT3V0KCk7XHJcbiAgICAgIH07XHJcblxyXG4gICAgICB3aW5kb3cuY2VudGVySGVyZSA9IChsYXQsIGxuZykgPT4ge1xyXG4gICAgICAgIGluaXRpYWxNYXAucGFuVG8obmV3IEwuTGF0TG5nKGxhdCwgbG5nKSk7XHJcbiAgICAgIH07XHJcblxyXG4gICAgICBMLnRpbGVMYXllcihcImh0dHBzOi8ve3N9LnRpbGUub3BlbnN0cmVldG1hcC5vcmcve3p9L3t4fS97eX0ucG5nXCIsIHtcclxuICAgICAgICBhdHRyaWJ1dGlvbjpcclxuICAgICAgICAgICcmY29weTsgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycycsXHJcbiAgICAgIH0pLmFkZFRvKGluaXRpYWxNYXApO1xyXG4gICAgICBhZGRNYXJrZXIoaW5pdGlhbE1hcCk7XHJcblxyXG4gICAgICBzZXRNYXAoaW5pdGlhbE1hcCk7XHJcbiAgICB9XHJcbiAgfSwgW21hcFJlZiwgbWFwXSk7XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2XHJcbiAgICAgIGlkPVwibWFwXCJcclxuICAgICAgcmVmPXttYXBSZWZ9XHJcbiAgICAgIHN0eWxlPXt7IGhlaWdodDogXCIxMDB2aFwiLCB3aWR0aDogXCIxMDB2d1wiLCBvdmVyZmxvdzogXCJoaWRkZW5cIiB9fVxyXG4gICAgPjwvZGl2PlxyXG4gICk7XHJcbn07XHJcblxyXG5leHBvcnQgZGVmYXVsdCBNYXBDb21wb25lbnQ7XHJcbiJdLCJuYW1lcyI6WyJSZWFjdCIsInVzZUVmZmVjdCIsInVzZVJlZiIsInVzZVN0YXRlIiwiTCIsIk1hcENvbXBvbmVudCIsIm1hcFJlZiIsIm1hcCIsInNldE1hcCIsImFkZE1hcmtlciIsIm1hcmtlciIsImFkZFRvIiwiYmluZFBvcHVwIiwib3BlblBvcHVwIiwiY3VycmVudCIsImluaXRpYWxNYXAiLCJjZW50ZXIiLCJ6b29tIiwiem9vbUNvbnRyb2wiLCJvbiIsImV2ZW50IiwicG9wdXAiLCJzZXRMYXRMbmciLCJsYXRsbmciLCJzZXRDb250ZW50IiwibGF0IiwibG5nIiwib3Blbk9uIiwid2luZG93Iiwiem9vbUluIiwiem9vbU91dCIsImNlbnRlckhlcmUiLCJwYW5UbyIsIkxhdExuZyIsInRpbGVMYXllciIsImF0dHJpYnV0aW9uIiwiZGl2IiwiaWQiLCJyZWYiLCJzdHlsZSIsImhlaWdodCIsIndpZHRoIiwib3ZlcmZsb3ciXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./components/MapComponent.js\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"react/jsx-dev-runtime\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var leaflet__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! leaflet */ \"leaflet\");\n/* harmony import */ var leaflet__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(leaflet__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var leaflet_dist_leaflet_css__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! leaflet/dist/leaflet.css */ \"./node_modules/leaflet/dist/leaflet.css\");\n/* harmony import */ var leaflet_dist_leaflet_css__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(leaflet_dist_leaflet_css__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var leaflet_contextmenu_dist_leaflet_contextmenu_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! leaflet-contextmenu/dist/leaflet.contextmenu.css */ \"./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.css\");\n/* harmony import */ var leaflet_contextmenu_dist_leaflet_contextmenu_css__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(leaflet_contextmenu_dist_leaflet_contextmenu_css__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var leaflet_contextmenu__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! leaflet-contextmenu */ \"leaflet-contextmenu\");\n/* harmony import */ var leaflet_contextmenu__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(leaflet_contextmenu__WEBPACK_IMPORTED_MODULE_5__);\n\n\n\n\n\n\nconst MapComponent = ()=>{\n const mapRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const [map, setMap] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n let initialMap = [];\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (mapRef.current && !map) {\n // Initialisiere die Karte ohne die Standard-Zoomsteuerung\n initialMap = leaflet__WEBPACK_IMPORTED_MODULE_2___default().map(mapRef.current, {\n center: [\n 53.111111,\n 8.4625\n ],\n zoom: 10,\n zoomControl: false,\n contextmenu: true,\n contextmenuItems: [\n {\n text: \"Station hinzuf\\xfcgen\",\n callback: showAddStationPopup\n },\n {\n text: \"Station \\xf6ffnen (Tab)\",\n icon: \"img/screen_new.png\",\n callback: newLink\n },\n {\n text: \"Station \\xf6ffnen\",\n icon: \"img/screen_same.png\",\n callback: sameLink\n },\n {\n text: \"Koordinaten\",\n icon: \"img/screen_same.png\",\n callback: lata\n },\n \"-\",\n {\n text: \"Reinzoomen\",\n callback: zoomIn\n },\n {\n text: \"Rauszoomen\",\n callback: zoomOut\n },\n {\n text: \"Hier zentrieren\",\n callback: centerHere\n }\n ]\n });\n initialMap.flyTo([\n 53.34399291274182,\n 7.607860512806846\n ], 12);\n console.log(initialMap);\n leaflet__WEBPACK_IMPORTED_MODULE_2___default().tileLayer(\"https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png\", {\n attribution: '© OpenStreetMap contributors'\n }).addTo(initialMap);\n setMap(initialMap);\n }\n }, [\n mapRef,\n map\n ]);\n console.log(map);\n if (map) {\n map.flyTo([\n 53.34399291274182,\n 7.607860512806846\n ], 18);\n }\n //-----Kontextmenu----------------\n const newLink = (e)=>{\n try {\n if (!e.relatedTarget || !e.relatedTarget.options) {\n throw new Error(\"relatedTarget or options not defined\");\n }\n alert(\"Neues Fenster: \" + e.relatedTarget.options.test);\n window.open(`../devices/${e.relatedTarget.options.test}`, \"_blank\").focus();\n } catch (error) {\n console.error(\"Failed in newLink function:\", error);\n }\n };\n const sameLink = (e)=>{\n alert(e.relatedTarget.options.test);\n window.open(\"../devices/\" + e.relatedTarget.options.test, \"_parent\").focus();\n };\n const lata = (e)=>{\n alert(\"Breitengrad: \" + e.latlng.lat);\n };\n const zoomIn = (e)=>{\n console.log(e);\n console.log(initialMap);\n console.log(\"zoomIn\");\n /* if (!map) {\r\n console.error(\"Karte ist noch nicht initialisiert in zoomIn.\");\r\n return;\r\n } */ initialMap.flyTo({\n lat: 53.34399291274182,\n lng: 7.607860512806846\n }, 12);\n };\n const zoomOut = (e)=>{\n if (!map) {\n console.error(\"Karte ist noch nicht initialisiert in zoomOut.\");\n return;\n }\n // Annahme: Du willst beim Rauszoomen die aktuelle Position halten\n // und nur den Zoom-Level ändern. Hier reduzieren wir den Zoom-Level um 1.\n const currentZoom = map.getZoom();\n map.flyTo(e.latlng, map.getZoom() - 1);\n };\n const showCoordinates = (e)=>{\n alert(\"Breitengrad: \" + e.latlng.lat + \"\\nL\\xe4ngengrad: \" + e.latlng.lng);\n };\n const showData = (e)=>{\n console.log(e);\n };\n const showTalas = (e)=>{\n map.addLayer(TALAS);\n loadData();\n };\n const hideTalas = (e)=>{\n map.removeLayer(TALAS);\n loadData();\n };\n const showGSM = (e)=>{\n map.addLayer(GMA);\n loadData();\n };\n const hideGSM = (e)=>{\n map.removeLayer(GMA);\n loadData();\n };\n //-----Kontextmenu----ende------------\n const showAddStationPopup = (e)=>{\n const popupContent = leaflet__WEBPACK_IMPORTED_MODULE_2___default().DomUtil.create(\"form\");\n popupContent.innerHTML = `\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n `;\n leaflet__WEBPACK_IMPORTED_MODULE_2___default().popup().setLatLng(e.latlng).setContent(popupContent).openOn(e.relatedTarget);\n };\n const centerHere = (e)=>{\n map.panTo(e.latlng);\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n id: \"map\",\n ref: mapRef,\n style: {\n height: \"100vh\",\n width: \"100vw\",\n overflow: \"hidden\"\n }\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\isa.LTW\\\\Desktop\\\\15.04.2024\\\\wwwrootTalas5NodeMap\\\\components\\\\MapComponent.js\",\n lineNumber: 164,\n columnNumber: 5\n }, undefined);\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (MapComponent);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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TVIsYUFBYSxDQUFDTztRQUNsQnpCLElBQUk0RCxLQUFLLENBQUNuQyxFQUFFVSxNQUFNO0lBQ3BCO0lBRUEscUJBQ0UsOERBQUMwQjtRQUNDQyxJQUFHO1FBQ0hDLEtBQUtoRTtRQUNMaUUsT0FBTztZQUFFQyxRQUFRO1lBQVNDLE9BQU87WUFBU0MsVUFBVTtRQUFTOzs7Ozs7QUFHbkU7QUFFQSxpRUFBZXJFLFlBQVlBLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9jb21wb25lbnRzL01hcENvbXBvbmVudC5qcz9kMDdkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IEwgZnJvbSBcImxlYWZsZXRcIjtcclxuaW1wb3J0IFwibGVhZmxldC9kaXN0L2xlYWZsZXQuY3NzXCI7XHJcbmltcG9ydCBcImxlYWZsZXQtY29udGV4dG1lbnUvZGlzdC9sZWFmbGV0LmNvbnRleHRtZW51LmNzc1wiO1xyXG5pbXBvcnQgXCJsZWFmbGV0LWNvbnRleHRtZW51XCI7XHJcbmNvbnN0IE1hcENvbXBvbmVudCA9ICgpID0+IHtcclxuICBjb25zdCBtYXBSZWYgPSB1c2VSZWYobnVsbCk7XHJcbiAgY29uc3QgW21hcCwgc2V0TWFwXSA9IHVzZVN0YXRlKG51bGwpO1xyXG5cclxuICBsZXQgaW5pdGlhbE1hcCA9IFtdO1xyXG5cclxuICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgaWYgKG1hcFJlZi5jdXJyZW50ICYmICFtYXApIHtcclxuICAgICAgLy8gSW5pdGlhbGlzaWVyZSBkaWUgS2FydGUgb2huZSBkaWUgU3RhbmRhcmQtWm9vbXN0ZXVlcnVuZ1xyXG4gICAgICBpbml0aWFsTWFwID0gTC5tYXAobWFwUmVmLmN1cnJlbnQsIHtcclxuICAgICAgICBjZW50ZXI6IFs1My4xMTExMTEsIDguNDYyNV0sXHJcbiAgICAgICAgem9vbTogMTAsXHJcbiAgICAgICAgem9vbUNvbnRyb2w6IGZhbHNlLCAvLyBEZWFrdGl2aWVyZSBkaWUgU3RhbmRhcmQtWm9vbXN0ZXVlcnVuZ1xyXG4gICAgICAgIGNvbnRleHRtZW51OiB0cnVlLFxyXG4gICAgICAgIGNvbnRleHRtZW51SXRlbXM6IFtcclxuICAgICAgICAgIHsgdGV4dDogXCJTdGF0aW9uIGhpbnp1ZsO8Z2VuXCIsIGNhbGxiYWNrOiBzaG93QWRkU3RhdGlvblBvcHVwIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHRleHQ6IFwiU3RhdGlvbiDDtmZmbmVuIChUYWIpXCIsXHJcbiAgICAgICAgICAgIGljb246IFwiaW1nL3NjcmVlbl9uZXcucG5nXCIsXHJcbiAgICAgICAgICAgIGNhbGxiYWNrOiBuZXdMaW5rLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgdGV4dDogXCJTdGF0aW9uIMO2ZmZuZW5cIixcclxuICAgICAgICAgICAgaWNvbjogXCJpbWcvc2NyZWVuX3NhbWUucG5nXCIsXHJcbiAgICAgICAgICAgIGNhbGxiYWNrOiBzYW1lTGluayxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHRleHQ6IFwiS29vcmRpbmF0ZW5cIixcclxuICAgICAgICAgICAgaWNvbjogXCJpbWcvc2NyZWVuX3NhbWUucG5nXCIsXHJcbiAgICAgICAgICAgIGNhbGxiYWNrOiBsYXRhLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIFwiLVwiLCAvLyBEaXZpZGVyXHJcbiAgICAgICAgICB7IHRleHQ6IFwiUmVpbnpvb21lblwiLCBjYWxsYmFjazogem9vbUluIH0sXHJcbiAgICAgICAgICB7IHRleHQ6IFwiUmF1c3pvb21lblwiLCBjYWxsYmFjazogem9vbU91dCB9LFxyXG4gICAgICAgICAgeyB0ZXh0OiBcIkhpZXIgemVudHJpZXJlblwiLCBjYWxsYmFjazogY2VudGVySGVyZSB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgaW5pdGlhbE1hcC5mbHlUbyhbNTMuMzQzOTkyOTEyNzQxODIsIDcuNjA3ODYwNTEyODA2ODQ2XSwgMTIpO1xyXG4gICAgICBjb25zb2xlLmxvZyhpbml0aWFsTWFwKTtcclxuICAgICAgTC50aWxlTGF5ZXIoXCJodHRwczovL3tzfS50aWxlLm9wZW5zdHJlZXRtYXAub3JnL3t6fS97eH0ve3l9LnBuZ1wiLCB7XHJcbiAgICAgICAgYXR0cmlidXRpb246XHJcbiAgICAgICAgICAnJmNvcHk7IDxhIGhyZWY9XCJodHRwczovL3d3dy5vcGVuc3RyZWV0bWFwLm9yZy9jb3B5cmlnaHRcIj5PcGVuU3RyZWV0TWFwPC9hPiBjb250cmlidXRvcnMnLFxyXG4gICAgICB9KS5hZGRUbyhpbml0aWFsTWFwKTtcclxuXHJcbiAgICAgIHNldE1hcChpbml0aWFsTWFwKTtcclxuICAgIH1cclxuICB9LCBbbWFwUmVmLCBtYXBdKTtcclxuXHJcbiAgY29uc29sZS5sb2cobWFwKTtcclxuICBpZiAobWFwKSB7XHJcbiAgICBtYXAuZmx5VG8oWzUzLjM0Mzk5MjkxMjc0MTgyLCA3LjYwNzg2MDUxMjgwNjg0Nl0sIDE4KTtcclxuICB9XHJcbiAgLy8tLS0tLUtvbnRleHRtZW51LS0tLS0tLS0tLS0tLS0tLVxyXG4gIGNvbnN0IG5ld0xpbmsgPSAoZSkgPT4ge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKCFlLnJlbGF0ZWRUYXJnZXQgfHwgIWUucmVsYXRlZFRhcmdldC5vcHRpb25zKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwicmVsYXRlZFRhcmdldCBvciBvcHRpb25zIG5vdCBkZWZpbmVkXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGFsZXJ0KFwiTmV1ZXMgRmVuc3RlcjogXCIgKyBlLnJlbGF0ZWRUYXJnZXQub3B0aW9ucy50ZXN0KTtcclxuICAgICAgd2luZG93XHJcbiAgICAgICAgLm9wZW4oYC4uL2RldmljZXMvJHtlLnJlbGF0ZWRUYXJnZXQub3B0aW9ucy50ZXN0fWAsIFwiX2JsYW5rXCIpXHJcbiAgICAgICAgLmZvY3VzKCk7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICBjb25zb2xlLmVycm9yKFwiRmFpbGVkIGluIG5ld0xpbmsgZnVuY3Rpb246XCIsIGVycm9yKTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBjb25zdCBzYW1lTGluayA9IChlKSA9PiB7XHJcbiAgICBhbGVydChlLnJlbGF0ZWRUYXJnZXQub3B0aW9ucy50ZXN0KTtcclxuICAgIHdpbmRvd1xyXG4gICAgICAub3BlbihcIi4uL2RldmljZXMvXCIgKyBlLnJlbGF0ZWRUYXJnZXQub3B0aW9ucy50ZXN0LCBcIl9wYXJlbnRcIilcclxuICAgICAgLmZvY3VzKCk7XHJcbiAgfTtcclxuXHJcbiAgY29uc3QgbGF0YSA9IChlKSA9PiB7XHJcbiAgICBhbGVydChcIkJyZWl0ZW5ncmFkOiBcIiArIGUubGF0bG5nLmxhdCk7XHJcbiAgfTtcclxuXHJcbiAgY29uc3Qgem9vbUluID0gKGUpID0+IHtcclxuICAgIGNvbnNvbGUubG9nKGUpO1xyXG4gICAgY29uc29sZS5sb2coaW5pdGlhbE1hcCk7XHJcbiAgICBjb25zb2xlLmxvZyhcInpvb21JblwiKTtcclxuICAgIC8qIGlmICghbWFwKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJLYXJ0ZSBpc3Qgbm9jaCBuaWNodCBpbml0aWFsaXNpZXJ0IGluIHpvb21Jbi5cIik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH0gKi9cclxuXHJcbiAgICBpbml0aWFsTWFwLmZseVRvKFxyXG4gICAgICB7XHJcbiAgICAgICAgbGF0OiA1My4zNDM5OTI5MTI3NDE4MixcclxuICAgICAgICBsbmc6IDcuNjA3ODYwNTEyODA2ODQ2LFxyXG4gICAgICB9LFxyXG4gICAgICAxMlxyXG4gICAgKTtcclxuICB9O1xyXG5cclxuICBjb25zdCB6b29tT3V0ID0gKGUpID0+IHtcclxuICAgIGlmICghbWFwKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJLYXJ0ZSBpc3Qgbm9jaCBuaWNodCBpbml0aWFsaXNpZXJ0IGluIHpvb21PdXQuXCIpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICAvLyBBbm5haG1lOiBEdSB3aWxsc3QgYmVpbSBSYXVzem9vbWVuIGRpZSBha3R1ZWxsZSBQb3NpdGlvbiBoYWx0ZW5cclxuICAgIC8vIHVuZCBudXIgZGVuIFpvb20tTGV2ZWwgw6RuZGVybi4gSGllciByZWR1emllcmVuIHdpciBkZW4gWm9vbS1MZXZlbCB1bSAxLlxyXG4gICAgY29uc3QgY3VycmVudFpvb20gPSBtYXAuZ2V0Wm9vbSgpO1xyXG4gICAgbWFwLmZseVRvKGUubGF0bG5nLCBtYXAuZ2V0Wm9vbSgpIC0gMSk7XHJcbiAgfTtcclxuXHJcbiAgY29uc3Qgc2hvd0Nvb3JkaW5hdGVzID0gKGUpID0+IHtcclxuICAgIGFsZXJ0KFwiQnJlaXRlbmdyYWQ6IFwiICsgZS5sYXRsbmcubGF0ICsgXCJcXG5Mw6RuZ2VuZ3JhZDogXCIgKyBlLmxhdGxuZy5sbmcpO1xyXG4gIH07XHJcbiAgY29uc3Qgc2hvd0RhdGEgPSAoZSkgPT4ge1xyXG4gICAgY29uc29sZS5sb2coZSk7XHJcbiAgfTtcclxuICBjb25zdCBzaG93VGFsYXMgPSAoZSkgPT4ge1xyXG4gICAgbWFwLmFkZExheWVyKFRBTEFTKTtcclxuICAgIGxvYWREYXRhKCk7XHJcbiAgfTtcclxuICBjb25zdCBoaWRlVGFsYXMgPSAoZSkgPT4ge1xyXG4gICAgbWFwLnJlbW92ZUxheWVyKFRBTEFTKTtcclxuICAgIGxvYWREYXRhKCk7XHJcbiAgfTtcclxuICBjb25zdCBzaG93R1NNID0gKGUpID0+IHtcclxuICAgIG1hcC5hZGRMYXllcihHTUEpO1xyXG4gICAgbG9hZERhdGEoKTtcclxuICB9O1xyXG4gIGNvbnN0IGhpZGVHU00gPSAoZSkgPT4ge1xyXG4gICAgbWFwLnJlbW92ZUxheWVyKEdNQSk7XHJcbiAgICBsb2FkRGF0YSgpO1xyXG4gIH07XHJcbiAgLy8tLS0tLUtvbnRleHRtZW51LS0tLWVuZGUtLS0tLS0tLS0tLS1cclxuXHJcbiAgY29uc3Qgc2hvd0FkZFN0YXRpb25Qb3B1cCA9IChlKSA9PiB7XHJcbiAgICBjb25zdCBwb3B1cENvbnRlbnQgPSBMLkRvbVV0aWwuY3JlYXRlKFwiZm9ybVwiKTtcclxuICAgIHBvcHVwQ29udGVudC5pbm5lckhUTUwgPSBgXHJcbiAgICAgIDxkaXYgc3R5bGU9XCJtYXJnaW46IDA7IHBhZGRpbmc6IDA7IHdpZHRoOiAyMDBweDtcIj5cclxuICAgICAgICA8bGFiZWw+TmFtZTo8L2xhYmVsPjxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwibmFtZVwiIG5hbWU9XCJuYW1lXCIgcGxhY2Vob2xkZXI9XCJOYW1lIGRlciBTdGF0aW9uXCI+PGJyPlxyXG4gICAgICAgIDxsYWJlbD5UeXA6PC9sYWJlbD48aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cInR5cGVcIiBuYW1lPVwidHlwZVwiIHBsYWNlaG9sZGVyPVwiVHlwIGRlciBTdGF0aW9uXCI+PGJyPlxyXG4gICAgICAgIDxsYWJlbD5CcmVpdGVuZ3JhZDo8L2xhYmVsPjxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwibGF0XCIgbmFtZT1cImxhdFwiIHZhbHVlPVwiJHtlLmxhdGxuZy5sYXQudG9GaXhlZChcclxuICAgICAgICAgIDVcclxuICAgICAgICApfVwiIHJlYWRvbmx5Pjxicj5cclxuICAgICAgICA8bGFiZWw+TMOkbmdlbmdyYWQ6PC9sYWJlbD48aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cImxuZ1wiIG5hbWU9XCJsbmdcIiB2YWx1ZT1cIiR7ZS5sYXRsbmcubG5nLnRvRml4ZWQoXHJcbiAgICAgICAgICA1XHJcbiAgICAgICAgKX1cIiByZWFkb25seT48YnI+XHJcbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCI+U3RhdGlvbiBoaW56dWbDvGdlbjwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIGA7XHJcbiAgICBMLnBvcHVwKClcclxuICAgICAgLnNldExhdExuZyhlLmxhdGxuZylcclxuICAgICAgLnNldENvbnRlbnQocG9wdXBDb250ZW50KVxyXG4gICAgICAub3Blbk9uKGUucmVsYXRlZFRhcmdldCk7XHJcbiAgfTtcclxuXHJcbiAgY29uc3QgY2VudGVySGVyZSA9IChlKSA9PiB7XHJcbiAgICBtYXAucGFuVG8oZS5sYXRsbmcpO1xyXG4gIH07XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2XHJcbiAgICAgIGlkPVwibWFwXCJcclxuICAgICAgcmVmPXttYXBSZWZ9XHJcbiAgICAgIHN0eWxlPXt7IGhlaWdodDogXCIxMDB2aFwiLCB3aWR0aDogXCIxMDB2d1wiLCBvdmVyZmxvdzogXCJoaWRkZW5cIiB9fVxyXG4gICAgPjwvZGl2PlxyXG4gICk7XHJcbn07XHJcblxyXG5leHBvcnQgZGVmYXVsdCBNYXBDb21wb25lbnQ7XHJcbiJdLCJuYW1lcyI6WyJSZWFjdCIsInVzZUVmZmVjdCIsInVzZVJlZiIsInVzZVN0YXRlIiwiTCIsIk1hcENvbXBvbmVudCIsIm1hcFJlZiIsIm1hcCIsInNldE1hcCIsImluaXRpYWxNYXAiLCJjdXJyZW50IiwiY2VudGVyIiwiem9vbSIsInpvb21Db250cm9sIiwiY29udGV4dG1lbnUiLCJjb250ZXh0bWVudUl0ZW1zIiwidGV4dCIsImNhbGxiYWNrIiwic2hvd0FkZFN0YXRpb25Qb3B1cCIsImljb24iLCJuZXdMaW5rIiwic2FtZUxpbmsiLCJsYXRhIiwiem9vbUluIiwiem9vbU91dCIsImNlbnRlckhlcmUiLCJmbHlUbyIsImNvbnNvbGUiLCJsb2ciLCJ0aWxlTGF5ZXIiLCJhdHRyaWJ1dGlvbiIsImFkZFRvIiwiZSIsInJlbGF0ZWRUYXJnZXQiLCJvcHRpb25zIiwiRXJyb3IiLCJhbGVydCIsInRlc3QiLCJ3aW5kb3ciLCJvcGVuIiwiZm9jdXMiLCJlcnJvciIsImxhdGxuZyIsImxhdCIsImxuZyIsImN1cnJlbnRab29tIiwiZ2V0Wm9vbSIsInNob3dDb29yZGluYXRlcyIsInNob3dEYXRhIiwic2hvd1RhbGFzIiwiYWRkTGF5ZXIiLCJUQUxBUyIsImxvYWREYXRhIiwiaGlkZVRhbGFzIiwicmVtb3ZlTGF5ZXIiLCJzaG93R1NNIiwiR01BIiwiaGlkZUdTTSIsInBvcHVwQ29udGVudCIsIkRvbVV0aWwiLCJjcmVhdGUiLCJpbm5lckhUTUwiLCJ0b0ZpeGVkIiwicG9wdXAiLCJzZXRMYXRMbmciLCJzZXRDb250ZW50Iiwib3Blbk9uIiwicGFuVG8iLCJkaXYiLCJpZCIsInJlZiIsInN0eWxlIiwiaGVpZ2h0Iiwid2lkdGgiLCJvdmVyZmxvdyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./components/MapComponent.js\n"); /***/ }) diff --git a/.next/server/pages/index.js b/.next/server/pages/index.js index 7a1a3c217..57aeb3513 100644 --- a/.next/server/pages/index.js +++ b/.next/server/pages/index.js @@ -41,7 +41,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ Home)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"react/jsx-dev-runtime\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/dynamic */ \"./node_modules/next/dynamic.js\");\n/* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_dynamic__WEBPACK_IMPORTED_MODULE_2__);\n// pages/index.js\n\n\n\nconst MapComponentWithNoSSR = next_dynamic__WEBPACK_IMPORTED_MODULE_2___default()(()=>Promise.all(/*! import() */[__webpack_require__.e(\"vendor-chunks/leaflet\"), __webpack_require__.e(\"components_MapComponent_js\")]).then(__webpack_require__.bind(__webpack_require__, /*! ../components/MapComponent */ \"./components/MapComponent.js\")), {\n loadableGenerated: {\n modules: [\n \"pages\\\\index.js -> \" + \"../components/MapComponent\"\n ]\n },\n ssr: false\n});\nfunction Home() {\n const [mParam, setMParam] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([\n \"\"\n ]);\n const [uParam, setUParam] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([\n \"\"\n ]);\n const [locations, setLocations] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]);\n const [formData, setFormData] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)({\n name: \"\",\n longitude: \"\",\n latitude: \"\",\n type: \"\"\n });\n const loadData = async ()=>{\n const response = await fetch(\"/api/locations\");\n const data = await response.json();\n setLocations(data);\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n // Funktion, um URL-Parameter zu holen\n function getURLParameter(name) {\n // Nutze URLSearchParams, eine Web API für die Arbeit mit Query-Strings\n const params = new URLSearchParams(window.location.search);\n return params.get(name); // Holt den Wert des Parameternamens\n }\n // Hole die Parameter 'm' und 'u'\n setMParam(getURLParameter(\"m\"));\n setUParam(getURLParameter(\"u\"));\n // Logge die Werte in der Konsole\n console.log(`Parameter m: ${mParam}, Parameter u: ${uParam}`);\n loadData();\n }, []);\n const handleAddLocation = async (name, type, lat, lng)=>{\n const response = await fetch(\"/api/addLocation\", {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n name,\n type,\n latitude: lat,\n longitude: lng\n })\n });\n if (response.ok) {\n console.log(\"Standort erfolgreich hinzugef\\xfcgt\");\n setFormData({\n name: \"\",\n longitude: \"\",\n latitude: \"\",\n type: \"\"\n }); // Formular zurücksetzen\n loadData(); // Daten erneut laden\n } else {\n console.error(\"Fehler beim Hinzuf\\xfcgen des Standorts\");\n }\n };\n const handleSubmit = async (event)=>{\n event.preventDefault();\n const response = await fetch(\"/api/addLocation\", {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(formData)\n });\n if (response.ok) {\n console.log(\"Erfolg\");\n setFormData({\n name: \"\",\n longitude: \"\",\n latitude: \"\",\n type: \"\"\n }); // Formular zurücksetzen\n loadData(); // Daten erneut laden\n } else {\n console.error(\"Fehler beim Speichern der Daten\");\n }\n };\n const handleChange = (event)=>{\n const { name, value } = event.target;\n setFormData((prevState)=>({\n ...prevState,\n [name]: value\n }));\n };\n const handleLocationUpdate = (id, newLatitude, newLongitude)=>{\n setLocations((prevLocations)=>{\n return prevLocations.map((location)=>{\n if (location.idPoi === id) {\n return {\n ...location,\n // Hier musst du ggf. die Formatierung anpassen, je nachdem wie du die Koordinaten speicherst\n position: `POINT(${newLongitude} ${newLatitude})`\n };\n }\n return location;\n });\n });\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MapComponentWithNoSSR, {\n locations: locations,\n onAddLocation: handleAddLocation,\n onLocationUpdate: handleLocationUpdate\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\isa.LTW\\\\Desktop\\\\15.04.2024\\\\wwwrootTalas5NodeMap\\\\pages\\\\index.js\",\n lineNumber: 104,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\isa.LTW\\\\Desktop\\\\15.04.2024\\\\wwwrootTalas5NodeMap\\\\pages\\\\index.js\",\n lineNumber: 102,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LGNBQWNDLEdBQUcsQ0FBQyxDQUFDM0I7Z0JBQ3hCLElBQUlBLFNBQVM0QixLQUFLLEtBQUtMLElBQUk7b0JBQ3pCLE9BQU87d0JBQ0wsR0FBR3ZCLFFBQVE7d0JBQ1gsNkZBQTZGO3dCQUM3RjZCLFVBQVUsQ0FBQyxNQUFNLEVBQUVKLGFBQWEsQ0FBQyxFQUFFRCxZQUFZLENBQUMsQ0FBQztvQkFDbkQ7Z0JBQ0Y7Z0JBQ0EsT0FBT3hCO1lBQ1Q7UUFDRjtJQUNGO0lBQ0EscUJBQ0UsOERBQUM4QjtrQkFFQyw0RUFBQ3REO1lBQ0NPLFdBQVdBO1lBQ1hnRCxlQUFlMUI7WUFDZjJCLGtCQUFrQlY7Ozs7Ozs7Ozs7O0FBSTFCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vcGFnZXMvaW5kZXguanM/YmVlNyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBwYWdlcy9pbmRleC5qc1xyXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBkeW5hbWljIGZyb20gXCJuZXh0L2R5bmFtaWNcIjtcclxuXHJcblxyXG5jb25zdCBNYXBDb21wb25lbnRXaXRoTm9TU1IgPSBkeW5hbWljKFxyXG4gICgpID0+IGltcG9ydChcIi4uL2NvbXBvbmVudHMvTWFwQ29tcG9uZW50XCIpLFxyXG4gIHsgc3NyOiBmYWxzZSB9XHJcbik7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBIb21lKCkge1xyXG5cclxuICBjb25zdCBbbVBhcmFtLHNldE1QYXJhbV0gPSB1c2VTdGF0ZShbXCJcIl0pO1xyXG4gIGNvbnN0IFt1UGFyYW0sc2V0VVBhcmFtXSA9IHVzZVN0YXRlKFtcIlwiXSk7XHJcblxyXG4gIGNvbnN0IFtsb2NhdGlvbnMsIHNldExvY2F0aW9uc10gPSB1c2VTdGF0ZShbXSk7XHJcbiAgY29uc3QgW2Zvcm1EYXRhLCBzZXRGb3JtRGF0YV0gPSB1c2VTdGF0ZSh7XHJcbiAgICBuYW1lOiBcIlwiLFxyXG4gICAgbG9uZ2l0dWRlOiBcIlwiLFxyXG4gICAgbGF0aXR1ZGU6IFwiXCIsXHJcbiAgICB0eXBlOiBcIlwiLFxyXG4gIH0pO1xyXG5cclxuICBjb25zdCBsb2FkRGF0YSA9IGFzeW5jICgpID0+IHtcclxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goXCIvYXBpL2xvY2F0aW9uc1wiKTtcclxuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XHJcbiAgICBzZXRMb2NhdGlvbnMoZGF0YSk7XHJcbiAgfTtcclxuXHJcbiAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgIC8vIEZ1bmt0aW9uLCB1bSBVUkwtUGFyYW1ldGVyIHp1IGhvbGVuXHJcbiAgICAgICBmdW5jdGlvbiBnZXRVUkxQYXJhbWV0ZXIobmFtZSkge1xyXG4gICAgICAgIC8vIE51dHplIFVSTFNlYXJjaFBhcmFtcywgZWluZSBXZWIgQVBJIGbDvHIgZGllIEFyYmVpdCBtaXQgUXVlcnktU3RyaW5nc1xyXG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMod2luZG93LmxvY2F0aW9uLnNlYXJjaCk7XHJcbiAgICAgICAgcmV0dXJuIHBhcmFtcy5nZXQobmFtZSk7IC8vIEhvbHQgZGVuIFdlcnQgZGVzIFBhcmFtZXRlcm5hbWVuc1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIC8vIEhvbGUgZGllIFBhcmFtZXRlciAnbScgdW5kICd1J1xyXG4gICAgICBzZXRNUGFyYW0oZ2V0VVJMUGFyYW1ldGVyKCdtJykpO1xyXG4gICAgICBzZXRVUGFyYW0oZ2V0VVJMUGFyYW1ldGVyKCd1JykpO1xyXG4gIFxyXG4gICAgICAvLyBMb2dnZSBkaWUgV2VydGUgaW4gZGVyIEtvbnNvbGVcclxuICAgICAgY29uc29sZS5sb2coYFBhcmFtZXRlciBtOiAke21QYXJhbX0sIFBhcmFtZXRlciB1OiAke3VQYXJhbX1gKTtcclxuICAgIGxvYWREYXRhKCk7XHJcbiAgfSwgW10pO1xyXG4gIGNvbnN0IGhhbmRsZUFkZExvY2F0aW9uID0gYXN5bmMgKG5hbWUsIHR5cGUsIGxhdCwgbG5nKSA9PiB7XHJcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFwiL2FwaS9hZGRMb2NhdGlvblwiLCB7XHJcbiAgICAgIG1ldGhvZDogXCJQT1NUXCIsXHJcbiAgICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIgfSxcclxuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xyXG4gICAgICAgIG5hbWUsXHJcbiAgICAgICAgdHlwZSxcclxuICAgICAgICBsYXRpdHVkZTogbGF0LFxyXG4gICAgICAgIGxvbmdpdHVkZTogbG5nLFxyXG4gICAgICB9KSxcclxuICAgIH0pO1xyXG5cclxuICAgIGlmIChyZXNwb25zZS5vaykge1xyXG4gICAgICBjb25zb2xlLmxvZyhcIlN0YW5kb3J0IGVyZm9sZ3JlaWNoIGhpbnp1Z2Vmw7xndFwiKTtcclxuICAgICAgc2V0Rm9ybURhdGEoeyBuYW1lOiBcIlwiLCBsb25naXR1ZGU6IFwiXCIsIGxhdGl0dWRlOiBcIlwiLCB0eXBlOiBcIlwiIH0pOyAvLyBGb3JtdWxhciB6dXLDvGNrc2V0emVuXHJcbiAgICAgIGxvYWREYXRhKCk7IC8vIERhdGVuIGVybmV1dCBsYWRlblxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc29sZS5lcnJvcihcIkZlaGxlciBiZWltIEhpbnp1ZsO8Z2VuIGRlcyBTdGFuZG9ydHNcIik7XHJcbiAgICB9XHJcbiAgfTtcclxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSBhc3luYyAoZXZlbnQpID0+IHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFwiL2FwaS9hZGRMb2NhdGlvblwiLCB7XHJcbiAgICAgIG1ldGhvZDogXCJQT1NUXCIsXHJcbiAgICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIgfSxcclxuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoZm9ybURhdGEpLFxyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHJlc3BvbnNlLm9rKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiRXJmb2xnXCIpO1xyXG4gICAgICBzZXRGb3JtRGF0YSh7IG5hbWU6IFwiXCIsIGxvbmdpdHVkZTogXCJcIiwgbGF0aXR1ZGU6IFwiXCIsIHR5cGU6IFwiXCIgfSk7IC8vIEZvcm11bGFyIHp1csO8Y2tzZXR6ZW5cclxuICAgICAgbG9hZERhdGEoKTsgLy8gRGF0ZW4gZXJuZXV0IGxhZGVuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zb2xlLmVycm9yKFwiRmVobGVyIGJlaW0gU3BlaWNoZXJuIGRlciBEYXRlblwiKTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAoZXZlbnQpID0+IHtcclxuICAgIGNvbnN0IHsgbmFtZSwgdmFsdWUgfSA9IGV2ZW50LnRhcmdldDtcclxuICAgIHNldEZvcm1EYXRhKChwcmV2U3RhdGUpID0+ICh7IC4uLnByZXZTdGF0ZSwgW25hbWVdOiB2YWx1ZSB9KSk7XHJcbiAgfTtcclxuICBjb25zdCBoYW5kbGVMb2NhdGlvblVwZGF0ZSA9IChpZCwgbmV3TGF0aXR1ZGUsIG5ld0xvbmdpdHVkZSkgPT4ge1xyXG4gICAgc2V0TG9jYXRpb25zKChwcmV2TG9jYXRpb25zKSA9PiB7XHJcbiAgICAgIHJldHVybiBwcmV2TG9jYXRpb25zLm1hcCgobG9jYXRpb24pID0+IHtcclxuICAgICAgICBpZiAobG9jYXRpb24uaWRQb2kgPT09IGlkKSB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAuLi5sb2NhdGlvbixcclxuICAgICAgICAgICAgLy8gSGllciBtdXNzdCBkdSBnZ2YuIGRpZSBGb3JtYXRpZXJ1bmcgYW5wYXNzZW4sIGplIG5hY2hkZW0gd2llIGR1IGRpZSBLb29yZGluYXRlbiBzcGVpY2hlcnN0XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBgUE9JTlQoJHtuZXdMb25naXR1ZGV9ICR7bmV3TGF0aXR1ZGV9KWBcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBsb2NhdGlvbjtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9O1xyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2PlxyXG4gICAgICB7LyogSWhyIEZvcm11bGFyICovfVxyXG4gICAgICA8TWFwQ29tcG9uZW50V2l0aE5vU1NSXHJcbiAgICAgICAgbG9jYXRpb25zPXtsb2NhdGlvbnN9XHJcbiAgICAgICAgb25BZGRMb2NhdGlvbj17aGFuZGxlQWRkTG9jYXRpb259XHJcbiAgICAgICAgb25Mb2NhdGlvblVwZGF0ZT17aGFuZGxlTG9jYXRpb25VcGRhdGV9XHJcbiAgICAgIC8+ICAgICBcclxuICAgIDwvZGl2PlxyXG4gICk7XHJcbn0iXSwibmFtZXMiOlsidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJkeW5hbWljIiwiTWFwQ29tcG9uZW50V2l0aE5vU1NSIiwic3NyIiwiSG9tZSIsIm1QYXJhbSIsInNldE1QYXJhbSIsInVQYXJhbSIsInNldFVQYXJhbSIsImxvY2F0aW9ucyIsInNldExvY2F0aW9ucyIsImZvcm1EYXRhIiwic2V0Rm9ybURhdGEiLCJuYW1lIiwibG9uZ2l0dWRlIiwibGF0aXR1ZGUiLCJ0eXBlIiwibG9hZERhdGEiLCJyZXNwb25zZSIsImZldGNoIiwiZGF0YSIsImpzb24iLCJnZXRVUkxQYXJhbWV0ZXIiLCJwYXJhbXMiLCJVUkxTZWFyY2hQYXJhbXMiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInNlYXJjaCIsImdldCIsImNvbnNvbGUiLCJsb2ciLCJoYW5kbGVBZGRMb2NhdGlvbiIsImxhdCIsImxuZyIsIm1ldGhvZCIsImhlYWRlcnMiLCJib2R5IiwiSlNPTiIsInN0cmluZ2lmeSIsIm9rIiwiZXJyb3IiLCJoYW5kbGVTdWJtaXQiLCJldmVudCIsInByZXZlbnREZWZhdWx0IiwiaGFuZGxlQ2hhbmdlIiwidmFsdWUiLCJ0YXJnZXQiLCJwcmV2U3RhdGUiLCJoYW5kbGVMb2NhdGlvblVwZGF0ZSIsImlkIiwibmV3TGF0aXR1ZGUiLCJuZXdMb25naXR1ZGUiLCJwcmV2TG9jYXRpb25zIiwibWFwIiwiaWRQb2kiLCJwb3NpdGlvbiIsImRpdiIsIm9uQWRkTG9jYXRpb24iLCJvbkxvY2F0aW9uVXBkYXRlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./pages/index.js\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ Home)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"react/jsx-dev-runtime\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/dynamic */ \"./node_modules/next/dynamic.js\");\n/* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_dynamic__WEBPACK_IMPORTED_MODULE_2__);\n// pages/index.js\n\n\n\nconst MapComponentWithNoSSR = next_dynamic__WEBPACK_IMPORTED_MODULE_2___default()(()=>Promise.all(/*! import() */[__webpack_require__.e(\"vendor-chunks/leaflet\"), __webpack_require__.e(\"vendor-chunks/leaflet-contextmenu\"), __webpack_require__.e(\"components_MapComponent_js\")]).then(__webpack_require__.bind(__webpack_require__, /*! ../components/MapComponent */ \"./components/MapComponent.js\")), {\n loadableGenerated: {\n modules: [\n \"pages\\\\index.js -> \" + \"../components/MapComponent\"\n ]\n },\n ssr: false\n});\nfunction Home() {\n const [mParam, setMParam] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([\n \"\"\n ]);\n const [uParam, setUParam] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([\n \"\"\n ]);\n const [locations, setLocations] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]);\n const [formData, setFormData] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)({\n name: \"\",\n longitude: \"\",\n latitude: \"\",\n type: \"\"\n });\n const loadData = async ()=>{\n const response = await fetch(\"/api/locations\");\n const data = await response.json();\n setLocations(data);\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n // Funktion, um URL-Parameter zu holen\n function getURLParameter(name) {\n // Nutze URLSearchParams, eine Web API für die Arbeit mit Query-Strings\n const params = new URLSearchParams(window.location.search);\n return params.get(name); // Holt den Wert des Parameternamens\n }\n // Hole die Parameter 'm' und 'u'\n setMParam(getURLParameter(\"m\"));\n setUParam(getURLParameter(\"u\"));\n // Logge die Werte in der Konsole\n console.log(`Parameter m: ${mParam}, Parameter u: ${uParam}`);\n loadData();\n }, []);\n const handleAddLocation = async (name, type, lat, lng)=>{\n const response = await fetch(\"/api/addLocation\", {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n name,\n type,\n latitude: lat,\n longitude: lng\n })\n });\n if (response.ok) {\n console.log(\"Standort erfolgreich hinzugef\\xfcgt\");\n setFormData({\n name: \"\",\n longitude: \"\",\n latitude: \"\",\n type: \"\"\n }); // Formular zurücksetzen\n loadData(); // Daten erneut laden\n } else {\n console.error(\"Fehler beim Hinzuf\\xfcgen des Standorts\");\n }\n };\n const handleSubmit = async (event)=>{\n event.preventDefault();\n const response = await fetch(\"/api/addLocation\", {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(formData)\n });\n if (response.ok) {\n console.log(\"Erfolg\");\n setFormData({\n name: \"\",\n longitude: \"\",\n latitude: \"\",\n type: \"\"\n }); // Formular zurücksetzen\n loadData(); // Daten erneut laden\n } else {\n console.error(\"Fehler beim Speichern der Daten\");\n }\n };\n const handleChange = (event)=>{\n const { name, value } = event.target;\n setFormData((prevState)=>({\n ...prevState,\n [name]: value\n }));\n };\n const handleLocationUpdate = (id, newLatitude, newLongitude)=>{\n setLocations((prevLocations)=>{\n return prevLocations.map((location)=>{\n if (location.idPoi === id) {\n return {\n ...location,\n // Hier musst du ggf. die Formatierung anpassen, je nachdem wie du die Koordinaten speicherst\n position: `POINT(${newLongitude} ${newLatitude})`\n };\n }\n return location;\n });\n });\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MapComponentWithNoSSR, {\n locations: locations,\n onAddLocation: handleAddLocation,\n onLocationUpdate: handleLocationUpdate\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\isa.LTW\\\\Desktop\\\\15.04.2024\\\\wwwrootTalas5NodeMap\\\\pages\\\\index.js\",\n lineNumber: 104,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\isa.LTW\\\\Desktop\\\\15.04.2024\\\\wwwrootTalas5NodeMap\\\\pages\\\\index.js\",\n lineNumber: 102,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LGNBQWNDLEdBQUcsQ0FBQyxDQUFDM0I7Z0JBQ3hCLElBQUlBLFNBQVM0QixLQUFLLEtBQUtMLElBQUk7b0JBQ3pCLE9BQU87d0JBQ0wsR0FBR3ZCLFFBQVE7d0JBQ1gsNkZBQTZGO3dCQUM3RjZCLFVBQVUsQ0FBQyxNQUFNLEVBQUVKLGFBQWEsQ0FBQyxFQUFFRCxZQUFZLENBQUMsQ0FBQztvQkFDbkQ7Z0JBQ0Y7Z0JBQ0EsT0FBT3hCO1lBQ1Q7UUFDRjtJQUNGO0lBQ0EscUJBQ0UsOERBQUM4QjtrQkFFQyw0RUFBQ3REO1lBQ0NPLFdBQVdBO1lBQ1hnRCxlQUFlMUI7WUFDZjJCLGtCQUFrQlY7Ozs7Ozs7Ozs7O0FBSTFCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vcGFnZXMvaW5kZXguanM/YmVlNyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBwYWdlcy9pbmRleC5qc1xyXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBkeW5hbWljIGZyb20gXCJuZXh0L2R5bmFtaWNcIjtcclxuXHJcblxyXG5jb25zdCBNYXBDb21wb25lbnRXaXRoTm9TU1IgPSBkeW5hbWljKFxyXG4gICgpID0+IGltcG9ydChcIi4uL2NvbXBvbmVudHMvTWFwQ29tcG9uZW50XCIpLFxyXG4gIHsgc3NyOiBmYWxzZSB9XHJcbik7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBIb21lKCkge1xyXG5cclxuICBjb25zdCBbbVBhcmFtLHNldE1QYXJhbV0gPSB1c2VTdGF0ZShbXCJcIl0pO1xyXG4gIGNvbnN0IFt1UGFyYW0sc2V0VVBhcmFtXSA9IHVzZVN0YXRlKFtcIlwiXSk7XHJcblxyXG4gIGNvbnN0IFtsb2NhdGlvbnMsIHNldExvY2F0aW9uc10gPSB1c2VTdGF0ZShbXSk7XHJcbiAgY29uc3QgW2Zvcm1EYXRhLCBzZXRGb3JtRGF0YV0gPSB1c2VTdGF0ZSh7XHJcbiAgICBuYW1lOiBcIlwiLFxyXG4gICAgbG9uZ2l0dWRlOiBcIlwiLFxyXG4gICAgbGF0aXR1ZGU6IFwiXCIsXHJcbiAgICB0eXBlOiBcIlwiLFxyXG4gIH0pO1xyXG5cclxuICBjb25zdCBsb2FkRGF0YSA9IGFzeW5jICgpID0+IHtcclxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goXCIvYXBpL2xvY2F0aW9uc1wiKTtcclxuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XHJcbiAgICBzZXRMb2NhdGlvbnMoZGF0YSk7XHJcbiAgfTtcclxuXHJcbiAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgIC8vIEZ1bmt0aW9uLCB1bSBVUkwtUGFyYW1ldGVyIHp1IGhvbGVuXHJcbiAgICAgICBmdW5jdGlvbiBnZXRVUkxQYXJhbWV0ZXIobmFtZSkge1xyXG4gICAgICAgIC8vIE51dHplIFVSTFNlYXJjaFBhcmFtcywgZWluZSBXZWIgQVBJIGbDvHIgZGllIEFyYmVpdCBtaXQgUXVlcnktU3RyaW5nc1xyXG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMod2luZG93LmxvY2F0aW9uLnNlYXJjaCk7XHJcbiAgICAgICAgcmV0dXJuIHBhcmFtcy5nZXQobmFtZSk7IC8vIEhvbHQgZGVuIFdlcnQgZGVzIFBhcmFtZXRlcm5hbWVuc1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIC8vIEhvbGUgZGllIFBhcmFtZXRlciAnbScgdW5kICd1J1xyXG4gICAgICBzZXRNUGFyYW0oZ2V0VVJMUGFyYW1ldGVyKCdtJykpO1xyXG4gICAgICBzZXRVUGFyYW0oZ2V0VVJMUGFyYW1ldGVyKCd1JykpO1xyXG4gIFxyXG4gICAgICAvLyBMb2dnZSBkaWUgV2VydGUgaW4gZGVyIEtvbnNvbGVcclxuICAgICAgY29uc29sZS5sb2coYFBhcmFtZXRlciBtOiAke21QYXJhbX0sIFBhcmFtZXRlciB1OiAke3VQYXJhbX1gKTtcclxuICAgIGxvYWREYXRhKCk7XHJcbiAgfSwgW10pO1xyXG4gIGNvbnN0IGhhbmRsZUFkZExvY2F0aW9uID0gYXN5bmMgKG5hbWUsIHR5cGUsIGxhdCwgbG5nKSA9PiB7XHJcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFwiL2FwaS9hZGRMb2NhdGlvblwiLCB7XHJcbiAgICAgIG1ldGhvZDogXCJQT1NUXCIsXHJcbiAgICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIgfSxcclxuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xyXG4gICAgICAgIG5hbWUsXHJcbiAgICAgICAgdHlwZSxcclxuICAgICAgICBsYXRpdHVkZTogbGF0LFxyXG4gICAgICAgIGxvbmdpdHVkZTogbG5nLFxyXG4gICAgICB9KSxcclxuICAgIH0pO1xyXG5cclxuICAgIGlmIChyZXNwb25zZS5vaykge1xyXG4gICAgICBjb25zb2xlLmxvZyhcIlN0YW5kb3J0IGVyZm9sZ3JlaWNoIGhpbnp1Z2Vmw7xndFwiKTtcclxuICAgICAgc2V0Rm9ybURhdGEoeyBuYW1lOiBcIlwiLCBsb25naXR1ZGU6IFwiXCIsIGxhdGl0dWRlOiBcIlwiLCB0eXBlOiBcIlwiIH0pOyAvLyBGb3JtdWxhciB6dXLDvGNrc2V0emVuXHJcbiAgICAgIGxvYWREYXRhKCk7IC8vIERhdGVuIGVybmV1dCBsYWRlblxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc29sZS5lcnJvcihcIkZlaGxlciBiZWltIEhpbnp1ZsO8Z2VuIGRlcyBTdGFuZG9ydHNcIik7XHJcbiAgICB9XHJcbiAgfTtcclxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSBhc3luYyAoZXZlbnQpID0+IHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFwiL2FwaS9hZGRMb2NhdGlvblwiLCB7XHJcbiAgICAgIG1ldGhvZDogXCJQT1NUXCIsXHJcbiAgICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIgfSxcclxuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoZm9ybURhdGEpLFxyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHJlc3BvbnNlLm9rKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiRXJmb2xnXCIpO1xyXG4gICAgICBzZXRGb3JtRGF0YSh7IG5hbWU6IFwiXCIsIGxvbmdpdHVkZTogXCJcIiwgbGF0aXR1ZGU6IFwiXCIsIHR5cGU6IFwiXCIgfSk7IC8vIEZvcm11bGFyIHp1csO8Y2tzZXR6ZW5cclxuICAgICAgbG9hZERhdGEoKTsgLy8gRGF0ZW4gZXJuZXV0IGxhZGVuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zb2xlLmVycm9yKFwiRmVobGVyIGJlaW0gU3BlaWNoZXJuIGRlciBEYXRlblwiKTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAoZXZlbnQpID0+IHtcclxuICAgIGNvbnN0IHsgbmFtZSwgdmFsdWUgfSA9IGV2ZW50LnRhcmdldDtcclxuICAgIHNldEZvcm1EYXRhKChwcmV2U3RhdGUpID0+ICh7IC4uLnByZXZTdGF0ZSwgW25hbWVdOiB2YWx1ZSB9KSk7XHJcbiAgfTtcclxuICBjb25zdCBoYW5kbGVMb2NhdGlvblVwZGF0ZSA9IChpZCwgbmV3TGF0aXR1ZGUsIG5ld0xvbmdpdHVkZSkgPT4ge1xyXG4gICAgc2V0TG9jYXRpb25zKChwcmV2TG9jYXRpb25zKSA9PiB7XHJcbiAgICAgIHJldHVybiBwcmV2TG9jYXRpb25zLm1hcCgobG9jYXRpb24pID0+IHtcclxuICAgICAgICBpZiAobG9jYXRpb24uaWRQb2kgPT09IGlkKSB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAuLi5sb2NhdGlvbixcclxuICAgICAgICAgICAgLy8gSGllciBtdXNzdCBkdSBnZ2YuIGRpZSBGb3JtYXRpZXJ1bmcgYW5wYXNzZW4sIGplIG5hY2hkZW0gd2llIGR1IGRpZSBLb29yZGluYXRlbiBzcGVpY2hlcnN0XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBgUE9JTlQoJHtuZXdMb25naXR1ZGV9ICR7bmV3TGF0aXR1ZGV9KWBcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBsb2NhdGlvbjtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9O1xyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2PlxyXG4gICAgICB7LyogSWhyIEZvcm11bGFyICovfVxyXG4gICAgICA8TWFwQ29tcG9uZW50V2l0aE5vU1NSXHJcbiAgICAgICAgbG9jYXRpb25zPXtsb2NhdGlvbnN9XHJcbiAgICAgICAgb25BZGRMb2NhdGlvbj17aGFuZGxlQWRkTG9jYXRpb259XHJcbiAgICAgICAgb25Mb2NhdGlvblVwZGF0ZT17aGFuZGxlTG9jYXRpb25VcGRhdGV9XHJcbiAgICAgIC8+ICAgICBcclxuICAgIDwvZGl2PlxyXG4gICk7XHJcbn0iXSwibmFtZXMiOlsidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJkeW5hbWljIiwiTWFwQ29tcG9uZW50V2l0aE5vU1NSIiwic3NyIiwiSG9tZSIsIm1QYXJhbSIsInNldE1QYXJhbSIsInVQYXJhbSIsInNldFVQYXJhbSIsImxvY2F0aW9ucyIsInNldExvY2F0aW9ucyIsImZvcm1EYXRhIiwic2V0Rm9ybURhdGEiLCJuYW1lIiwibG9uZ2l0dWRlIiwibGF0aXR1ZGUiLCJ0eXBlIiwibG9hZERhdGEiLCJyZXNwb25zZSIsImZldGNoIiwiZGF0YSIsImpzb24iLCJnZXRVUkxQYXJhbWV0ZXIiLCJwYXJhbXMiLCJVUkxTZWFyY2hQYXJhbXMiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInNlYXJjaCIsImdldCIsImNvbnNvbGUiLCJsb2ciLCJoYW5kbGVBZGRMb2NhdGlvbiIsImxhdCIsImxuZyIsIm1ldGhvZCIsImhlYWRlcnMiLCJib2R5IiwiSlNPTiIsInN0cmluZ2lmeSIsIm9rIiwiZXJyb3IiLCJoYW5kbGVTdWJtaXQiLCJldmVudCIsInByZXZlbnREZWZhdWx0IiwiaGFuZGxlQ2hhbmdlIiwidmFsdWUiLCJ0YXJnZXQiLCJwcmV2U3RhdGUiLCJoYW5kbGVMb2NhdGlvblVwZGF0ZSIsImlkIiwibmV3TGF0aXR1ZGUiLCJuZXdMb25naXR1ZGUiLCJwcmV2TG9jYXRpb25zIiwibWFwIiwiaWRQb2kiLCJwb3NpdGlvbiIsImRpdiIsIm9uQWRkTG9jYXRpb24iLCJvbkxvY2F0aW9uVXBkYXRlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./pages/index.js\n"); /***/ }), @@ -66,6 +66,17 @@ module.exports = require("leaflet"); /***/ }), +/***/ "leaflet-contextmenu": +/*!**************************************!*\ + !*** external "leaflet-contextmenu" ***! + \**************************************/ +/***/ ((module) => { + +"use strict"; +module.exports = require("leaflet-contextmenu"); + +/***/ }), + /***/ "next/dist/compiled/next-server/pages.runtime.dev.js": /*!**********************************************************************!*\ !*** external "next/dist/compiled/next-server/pages.runtime.dev.js" ***! diff --git a/.next/static/chunks/components_MapComponent_js.js b/.next/static/chunks/components_MapComponent_js.js index 47e199292..cb26a3631 100644 --- a/.next/static/chunks/components_MapComponent_js.js +++ b/.next/static/chunks/components_MapComponent_js.js @@ -8,6 +8,16 @@ */ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([["components_MapComponent_js"],{ +/***/ "./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.js": +/*!**********************************************************************!*\ + !*** ./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.js ***! + \**********************************************************************/ +/***/ (function(module, exports, __webpack_require__) { + +eval(__webpack_require__.ts("var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*\n\tLeaflet.contextmenu, a context menu for Leaflet.\n\t(c) 2015, Adam Ratcliffe, GeoSmart Maps Limited\n\n\t@preserve\n*/\n\n(function(factory) {\n\t// Packaging/modules magic dance\n\tvar L;\n\tif (true) {\n\t\t// AMD\n\t\t!(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(/*! leaflet */ \"./node_modules/leaflet/dist/leaflet-src.js\")], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else {}\n})(function(L) {\nL.Map.mergeOptions({\n contextmenuItems: []\n});\n\nL.Map.ContextMenu = L.Handler.extend({\n _touchstart: L.Browser.msPointer ? 'MSPointerDown' : L.Browser.pointer ? 'pointerdown' : 'touchstart',\n \n statics: {\n BASE_CLS: 'leaflet-contextmenu'\n },\n \n initialize: function (map) {\n L.Handler.prototype.initialize.call(this, map);\n \n this._items = [];\n this._visible = false;\n\n var container = this._container = L.DomUtil.create('div', L.Map.ContextMenu.BASE_CLS, map._container);\n container.style.zIndex = 10000;\n container.style.position = 'absolute';\n\n if (map.options.contextmenuWidth) {\n container.style.width = map.options.contextmenuWidth + 'px';\n }\n\n this._createItems();\n\n L.DomEvent\n .on(container, 'click', L.DomEvent.stop)\n .on(container, 'mousedown', L.DomEvent.stop)\n .on(container, 'dblclick', L.DomEvent.stop)\n .on(container, 'contextmenu', L.DomEvent.stop);\n },\n\n addHooks: function () {\n var container = this._map.getContainer();\n\n L.DomEvent\n .on(container, 'mouseleave', this._hide, this)\n .on(document, 'keydown', this._onKeyDown, this);\n\n if (L.Browser.touch) {\n L.DomEvent.on(document, this._touchstart, this._hide, this);\n }\n\n this._map.on({\n contextmenu: this._show,\n mousedown: this._hide,\n movestart: this._hide,\n zoomstart: this._hide\n }, this);\n },\n\n removeHooks: function () {\n var container = this._map.getContainer();\n\n L.DomEvent\n .off(container, 'mouseleave', this._hide, this)\n .off(document, 'keydown', this._onKeyDown, this);\n\n if (L.Browser.touch) {\n L.DomEvent.off(document, this._touchstart, this._hide, this);\n }\n\n this._map.off({\n contextmenu: this._show,\n mousedown: this._hide,\n movestart: this._hide,\n zoomstart: this._hide\n }, this);\n },\n\n showAt: function (point, data) {\n if (point instanceof L.LatLng) {\n point = this._map.latLngToContainerPoint(point);\n }\n this._showAtPoint(point, data);\n },\n\n hide: function () {\n this._hide();\n },\n\n addItem: function (options) {\n return this.insertItem(options);\n },\n\n insertItem: function (options, index) {\n index = index !== undefined ? index: this._items.length;\n\n var item = this._createItem(this._container, options, index);\n\n this._items.push(item);\n\n this._sizeChanged = true;\n\n this._map.fire('contextmenu.additem', {\n contextmenu: this,\n el: item.el,\n index: index\n });\n\n return item.el;\n },\n\n removeItem: function (item) {\n var container = this._container;\n\n if (!isNaN(item)) {\n item = container.children[item];\n }\n\n if (item) {\n this._removeItem(L.Util.stamp(item));\n\n this._sizeChanged = true;\n\n this._map.fire('contextmenu.removeitem', {\n contextmenu: this,\n el: item\n });\n\n return item;\n }\n\n return null;\n },\n\n removeAllItems: function () {\n var items = this._container.children,\n item;\n\n while (items.length) {\n item = items[0];\n this._removeItem(L.Util.stamp(item));\n }\n return items;\n },\n\n hideAllItems: function () {\n var item, i, l;\n\n for (i = 0, l = this._items.length; i < l; i++) {\n item = this._items[i];\n item.el.style.display = 'none';\n }\n },\n\n showAllItems: function () {\n var item, i, l;\n\n for (i = 0, l = this._items.length; i < l; i++) {\n item = this._items[i];\n item.el.style.display = '';\n }\n },\n\n setDisabled: function (item, disabled) {\n var container = this._container,\n itemCls = L.Map.ContextMenu.BASE_CLS + '-item';\n\n if (!isNaN(item)) {\n item = container.children[item];\n }\n\n if (item && L.DomUtil.hasClass(item, itemCls)) {\n if (disabled) {\n L.DomUtil.addClass(item, itemCls + '-disabled');\n this._map.fire('contextmenu.disableitem', {\n contextmenu: this,\n el: item\n });\n } else {\n L.DomUtil.removeClass(item, itemCls + '-disabled');\n this._map.fire('contextmenu.enableitem', {\n contextmenu: this,\n el: item\n });\n }\n }\n },\n\n isVisible: function () {\n return this._visible;\n },\n\n _createItems: function () {\n var itemOptions = this._map.options.contextmenuItems,\n item,\n i, l;\n\n for (i = 0, l = itemOptions.length; i < l; i++) {\n this._items.push(this._createItem(this._container, itemOptions[i]));\n }\n },\n\n _createItem: function (container, options, index) {\n if (options.separator || options === '-') {\n return this._createSeparator(container, index);\n }\n\n var itemCls = L.Map.ContextMenu.BASE_CLS + '-item',\n cls = options.disabled ? (itemCls + ' ' + itemCls + '-disabled') : itemCls,\n el = this._insertElementAt('a', cls, container, index),\n callback = this._createEventHandler(el, options.callback, options.context, options.hideOnSelect),\n icon = this._getIcon(options),\n iconCls = this._getIconCls(options),\n html = '';\n\n if (icon) {\n html = '';\n } else if (iconCls) {\n html = '';\n }\n\n el.innerHTML = html + options.text;\n el.href = '#';\n\n L.DomEvent\n .on(el, 'mouseover', this._onItemMouseOver, this)\n .on(el, 'mouseout', this._onItemMouseOut, this)\n .on(el, 'mousedown', L.DomEvent.stopPropagation)\n .on(el, 'click', callback);\n\n if (L.Browser.touch) {\n L.DomEvent.on(el, this._touchstart, L.DomEvent.stopPropagation);\n }\n\n // Devices without a mouse fire \"mouseover\" on tap, but never “mouseout\"\n if (!L.Browser.pointer) {\n L.DomEvent.on(el, 'click', this._onItemMouseOut, this);\n }\n\n return {\n id: L.Util.stamp(el),\n el: el,\n callback: callback\n };\n },\n\n _removeItem: function (id) {\n var item,\n el,\n i, l, callback;\n\n for (i = 0, l = this._items.length; i < l; i++) {\n item = this._items[i];\n\n if (item.id === id) {\n el = item.el;\n callback = item.callback;\n\n if (callback) {\n L.DomEvent\n .off(el, 'mouseover', this._onItemMouseOver, this)\n .off(el, 'mouseover', this._onItemMouseOut, this)\n .off(el, 'mousedown', L.DomEvent.stopPropagation)\n .off(el, 'click', callback);\n\n if (L.Browser.touch) {\n L.DomEvent.off(el, this._touchstart, L.DomEvent.stopPropagation);\n }\n\n if (!L.Browser.pointer) {\n L.DomEvent.on(el, 'click', this._onItemMouseOut, this);\n }\n }\n\n this._container.removeChild(el);\n this._items.splice(i, 1);\n\n return item;\n }\n }\n return null;\n },\n\n _createSeparator: function (container, index) {\n var el = this._insertElementAt('div', L.Map.ContextMenu.BASE_CLS + '-separator', container, index);\n\n return {\n id: L.Util.stamp(el),\n el: el\n };\n },\n\n _createEventHandler: function (el, func, context, hideOnSelect) {\n var me = this,\n map = this._map,\n disabledCls = L.Map.ContextMenu.BASE_CLS + '-item-disabled',\n hideOnSelect = (hideOnSelect !== undefined) ? hideOnSelect : true;\n\n return function (e) {\n if (L.DomUtil.hasClass(el, disabledCls)) {\n return;\n }\n\n if (hideOnSelect) {\n me._hide();\n }\n\n if (func) {\n func.call(context || map, me._showLocation);\n }\n\n me._map.fire('contextmenu.select', {\n contextmenu: me,\n el: el\n });\n };\n },\n\n _insertElementAt: function (tagName, className, container, index) {\n var refEl,\n el = document.createElement(tagName);\n\n el.className = className;\n\n if (index !== undefined) {\n refEl = container.children[index];\n }\n\n if (refEl) {\n container.insertBefore(el, refEl);\n } else {\n container.appendChild(el);\n }\n\n return el;\n },\n\n _show: function (e) {\n this._showAtPoint(e.containerPoint, e);\n },\n\n _showAtPoint: function (pt, data) {\n if (this._items.length) {\n var map = this._map,\n layerPoint = map.containerPointToLayerPoint(pt),\n latlng = map.layerPointToLatLng(layerPoint),\n event = L.extend(data || {}, {contextmenu: this});\n\n this._showLocation = {\n latlng: latlng,\n layerPoint: layerPoint,\n containerPoint: pt\n };\n\n if (data && data.relatedTarget){\n this._showLocation.relatedTarget = data.relatedTarget;\n }\n\n this._setPosition(pt);\n\n if (!this._visible) {\n this._container.style.display = 'block';\n this._visible = true;\n }\n\n this._map.fire('contextmenu.show', event);\n }\n },\n\n _hide: function () {\n if (this._visible) {\n this._visible = false;\n this._container.style.display = 'none';\n this._map.fire('contextmenu.hide', {contextmenu: this});\n }\n },\n\n _getIcon: function (options) {\n return L.Browser.retina && options.retinaIcon || options.icon;\n },\n\n _getIconCls: function (options) {\n return L.Browser.retina && options.retinaIconCls || options.iconCls;\n },\n\n _setPosition: function (pt) {\n var mapSize = this._map.getSize(),\n container = this._container,\n containerSize = this._getElementSize(container),\n anchor;\n\n if (this._map.options.contextmenuAnchor) {\n anchor = L.point(this._map.options.contextmenuAnchor);\n pt = pt.add(anchor);\n }\n\n container._leaflet_pos = pt;\n\n if (pt.x + containerSize.x > mapSize.x) {\n container.style.left = 'auto';\n container.style.right = Math.min(Math.max(mapSize.x - pt.x, 0), mapSize.x - containerSize.x - 1) + 'px';\n } else {\n container.style.left = Math.max(pt.x, 0) + 'px';\n container.style.right = 'auto';\n }\n\n if (pt.y + containerSize.y > mapSize.y) {\n container.style.top = 'auto';\n container.style.bottom = Math.min(Math.max(mapSize.y - pt.y, 0), mapSize.y - containerSize.y - 1) + 'px';\n } else {\n container.style.top = Math.max(pt.y, 0) + 'px';\n container.style.bottom = 'auto';\n }\n },\n\n _getElementSize: function (el) {\n var size = this._size,\n initialDisplay = el.style.display;\n\n if (!size || this._sizeChanged) {\n size = {};\n\n el.style.left = '-999999px';\n el.style.right = 'auto';\n el.style.display = 'block';\n\n size.x = el.offsetWidth;\n size.y = el.offsetHeight;\n\n el.style.left = 'auto';\n el.style.display = initialDisplay;\n\n this._sizeChanged = false;\n }\n\n return size;\n },\n\n _onKeyDown: function (e) {\n var key = e.keyCode;\n\n // If ESC pressed and context menu is visible hide it\n if (key === 27) {\n this._hide();\n }\n },\n\n _onItemMouseOver: function (e) {\n L.DomUtil.addClass(e.target || e.srcElement, 'over');\n },\n\n _onItemMouseOut: function (e) {\n L.DomUtil.removeClass(e.target || e.srcElement, 'over');\n }\n});\n\nL.Map.addInitHook('addHandler', 'contextmenu', L.Map.ContextMenu);\nL.Mixin.ContextMenu = {\n bindContextMenu: function (options) {\n L.setOptions(this, options);\n this._initContextMenu();\n\n return this;\n },\n\n unbindContextMenu: function (){\n this.off('contextmenu', this._showContextMenu, this);\n\n return this;\n },\n\n addContextMenuItem: function (item) {\n this.options.contextmenuItems.push(item);\n },\n\n removeContextMenuItemWithIndex: function (index) {\n var items = [];\n for (var i = 0; i < this.options.contextmenuItems.length; i++) {\n if (this.options.contextmenuItems[i].index == index){\n items.push(i);\n }\n }\n var elem = items.pop();\n while (elem !== undefined) {\n this.options.contextmenuItems.splice(elem,1);\n elem = items.pop();\n }\n },\n\n replaceContextMenuItem: function (item) {\n this.removeContextMenuItemWithIndex(item.index);\n this.addContextMenuItem(item);\n },\n\n _initContextMenu: function () {\n this._items = [];\n\n this.on('contextmenu', this._showContextMenu, this);\n },\n\n _showContextMenu: function (e) {\n var itemOptions,\n data, pt, i, l;\n\n if (this._map.contextmenu) {\n data = L.extend({relatedTarget: this}, e);\n\n pt = this._map.mouseEventToContainerPoint(e.originalEvent);\n\n if (!this.options.contextmenuInheritItems) {\n this._map.contextmenu.hideAllItems();\n }\n\n for (i = 0, l = this.options.contextmenuItems.length; i < l; i++) {\n itemOptions = this.options.contextmenuItems[i];\n this._items.push(this._map.contextmenu.insertItem(itemOptions, itemOptions.index));\n }\n\n this._map.once('contextmenu.hide', this._hideContextMenu, this);\n\n this._map.contextmenu.showAt(pt, data);\n }\n },\n\n _hideContextMenu: function () {\n var i, l;\n\n for (i = 0, l = this._items.length; i < l; i++) {\n this._map.contextmenu.removeItem(this._items[i]);\n }\n this._items.length = 0;\n\n if (!this.options.contextmenuInheritItems) {\n this._map.contextmenu.showAllItems();\n }\n }\n};\n\nvar classes = [L.Marker, L.Path],\n defaultOptions = {\n contextmenu: false,\n contextmenuItems: [],\n contextmenuInheritItems: true\n },\n cls, i, l;\n\nfor (i = 0, l = classes.length; i < l; i++) {\n cls = classes[i];\n\n // L.Class should probably provide an empty options hash, as it does not test\n // for it here and add if needed\n if (!cls.prototype.options) {\n cls.prototype.options = defaultOptions;\n } else {\n cls.mergeOptions(defaultOptions);\n }\n\n cls.addInitHook(function () {\n if (this.options.contextmenu) {\n this._initContextMenu();\n }\n });\n\n cls.include(L.Mixin.ContextMenu);\n}\nreturn L.Map.ContextMenu;\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvbGVhZmxldC1jb250ZXh0bWVudS9kaXN0L2xlYWZsZXQuY29udGV4dG1lbnUuanMiLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsS0FBSyxJQUEwQztBQUMvQztBQUNBLEVBQUUsaUNBQU8sQ0FBQyxnRkFBUyxDQUFDLG9DQUFFLE9BQU87QUFBQTtBQUFBO0FBQUEsa0dBQUM7QUFDOUIsR0FBRyxLQUFLLEVBVU47QUFDRixDQUFDO0FBQ0Q7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxLQUFLOztBQUVMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7O0FBRVQ7QUFDQSxLQUFLOztBQUVMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsYUFBYTs7QUFFYjtBQUNBOztBQUVBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTs7QUFFQSw0Q0FBNEMsT0FBTztBQUNuRDtBQUNBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7O0FBRUEsNENBQTRDLE9BQU87QUFDbkQ7QUFDQTtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQixjQUFjO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsNENBQTRDLE9BQU87QUFDbkQ7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsNENBQTRDLE9BQU87QUFDbkQ7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7O0FBRUE7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUMsR0FBRyxrQkFBa0I7O0FBRTVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0RBQWdELGtCQUFrQjtBQUNsRTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBOztBQUVBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0Esd0JBQXdCLDBDQUEwQztBQUNsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTs7QUFFQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNkJBQTZCLG9CQUFvQjs7QUFFakQ7O0FBRUE7QUFDQTtBQUNBOztBQUVBLGtFQUFrRSxPQUFPO0FBQ3pFO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBOztBQUVBLDRDQUE0QyxPQUFPO0FBQ25EO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUEsZ0NBQWdDLE9BQU87QUFDdkM7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0EsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvbGVhZmxldC1jb250ZXh0bWVudS9kaXN0L2xlYWZsZXQuY29udGV4dG1lbnUuanM/NWQwZSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuXHRMZWFmbGV0LmNvbnRleHRtZW51LCBhIGNvbnRleHQgbWVudSBmb3IgTGVhZmxldC5cblx0KGMpIDIwMTUsIEFkYW0gUmF0Y2xpZmZlLCBHZW9TbWFydCBNYXBzIExpbWl0ZWRcblxuXHRAcHJlc2VydmVcbiovXG5cbihmdW5jdGlvbihmYWN0b3J5KSB7XG5cdC8vIFBhY2thZ2luZy9tb2R1bGVzIG1hZ2ljIGRhbmNlXG5cdHZhciBMO1xuXHRpZiAodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kKSB7XG5cdFx0Ly8gQU1EXG5cdFx0ZGVmaW5lKFsnbGVhZmxldCddLCBmYWN0b3J5KTtcblx0fSBlbHNlIGlmICh0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgbW9kdWxlLmV4cG9ydHMgPT09ICdvYmplY3QnKSB7XG5cdFx0Ly8gTm9kZS9Db21tb25KU1xuXHRcdEwgPSByZXF1aXJlKCdsZWFmbGV0Jyk7XG5cdFx0bW9kdWxlLmV4cG9ydHMgPSBmYWN0b3J5KEwpO1xuXHR9IGVsc2Uge1xuXHRcdC8vIEJyb3dzZXIgZ2xvYmFsc1xuXHRcdGlmICh0eXBlb2Ygd2luZG93LkwgPT09ICd1bmRlZmluZWQnKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ0xlYWZsZXQgbXVzdCBiZSBsb2FkZWQgZmlyc3QnKTtcblx0XHR9XG5cdFx0ZmFjdG9yeSh3aW5kb3cuTCk7XG5cdH1cbn0pKGZ1bmN0aW9uKEwpIHtcbkwuTWFwLm1lcmdlT3B0aW9ucyh7XG4gICAgY29udGV4dG1lbnVJdGVtczogW11cbn0pO1xuXG5MLk1hcC5Db250ZXh0TWVudSA9IEwuSGFuZGxlci5leHRlbmQoe1xuICAgIF90b3VjaHN0YXJ0OiBMLkJyb3dzZXIubXNQb2ludGVyID8gJ01TUG9pbnRlckRvd24nIDogTC5Ccm93c2VyLnBvaW50ZXIgPyAncG9pbnRlcmRvd24nIDogJ3RvdWNoc3RhcnQnLFxuICAgIFxuICAgIHN0YXRpY3M6IHtcbiAgICAgICAgQkFTRV9DTFM6ICdsZWFmbGV0LWNvbnRleHRtZW51J1xuICAgIH0sXG4gICAgXG4gICAgaW5pdGlhbGl6ZTogZnVuY3Rpb24gKG1hcCkge1xuICAgICAgICBMLkhhbmRsZXIucHJvdG90eXBlLmluaXRpYWxpemUuY2FsbCh0aGlzLCBtYXApO1xuICAgICAgICBcbiAgICAgICAgdGhpcy5faXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5fdmlzaWJsZSA9IGZhbHNlO1xuXG4gICAgICAgIHZhciBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXIgPSBMLkRvbVV0aWwuY3JlYXRlKCdkaXYnLCBMLk1hcC5Db250ZXh0TWVudS5CQVNFX0NMUywgbWFwLl9jb250YWluZXIpO1xuICAgICAgICBjb250YWluZXIuc3R5bGUuekluZGV4ID0gMTAwMDA7XG4gICAgICAgIGNvbnRhaW5lci5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XG5cbiAgICAgICAgaWYgKG1hcC5vcHRpb25zLmNvbnRleHRtZW51V2lkdGgpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lci5zdHlsZS53aWR0aCA9IG1hcC5vcHRpb25zLmNvbnRleHRtZW51V2lkdGggKyAncHgnO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fY3JlYXRlSXRlbXMoKTtcblxuICAgICAgICBMLkRvbUV2ZW50XG4gICAgICAgICAgICAub24oY29udGFpbmVyLCAnY2xpY2snLCBMLkRvbUV2ZW50LnN0b3ApXG4gICAgICAgICAgICAub24oY29udGFpbmVyLCAnbW91c2Vkb3duJywgTC5Eb21FdmVudC5zdG9wKVxuICAgICAgICAgICAgLm9uKGNvbnRhaW5lciwgJ2RibGNsaWNrJywgTC5Eb21FdmVudC5zdG9wKVxuICAgICAgICAgICAgLm9uKGNvbnRhaW5lciwgJ2NvbnRleHRtZW51JywgTC5Eb21FdmVudC5zdG9wKTtcbiAgICB9LFxuXG4gICAgYWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIGNvbnRhaW5lciA9IHRoaXMuX21hcC5nZXRDb250YWluZXIoKTtcblxuICAgICAgICBMLkRvbUV2ZW50XG4gICAgICAgICAgICAub24oY29udGFpbmVyLCAnbW91c2VsZWF2ZScsIHRoaXMuX2hpZGUsIHRoaXMpXG4gICAgICAgICAgICAub24oZG9jdW1lbnQsICdrZXlkb3duJywgdGhpcy5fb25LZXlEb3duLCB0aGlzKTtcblxuICAgICAgICBpZiAoTC5Ccm93c2VyLnRvdWNoKSB7XG4gICAgICAgICAgICBMLkRvbUV2ZW50Lm9uKGRvY3VtZW50LCB0aGlzLl90b3VjaHN0YXJ0LCB0aGlzLl9oaWRlLCB0aGlzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX21hcC5vbih7XG4gICAgICAgICAgICBjb250ZXh0bWVudTogdGhpcy5fc2hvdyxcbiAgICAgICAgICAgIG1vdXNlZG93bjogdGhpcy5faGlkZSxcbiAgICAgICAgICAgIG1vdmVzdGFydDogdGhpcy5faGlkZSxcbiAgICAgICAgICAgIHpvb21zdGFydDogdGhpcy5faGlkZVxuICAgICAgICB9LCB0aGlzKTtcbiAgICB9LFxuXG4gICAgcmVtb3ZlSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIGNvbnRhaW5lciA9IHRoaXMuX21hcC5nZXRDb250YWluZXIoKTtcblxuICAgICAgICBMLkRvbUV2ZW50XG4gICAgICAgICAgICAub2ZmKGNvbnRhaW5lciwgJ21vdXNlbGVhdmUnLCB0aGlzLl9oaWRlLCB0aGlzKVxuICAgICAgICAgICAgLm9mZihkb2N1bWVudCwgJ2tleWRvd24nLCB0aGlzLl9vbktleURvd24sIHRoaXMpO1xuXG4gICAgICAgIGlmIChMLkJyb3dzZXIudG91Y2gpIHtcbiAgICAgICAgICAgIEwuRG9tRXZlbnQub2ZmKGRvY3VtZW50LCB0aGlzLl90b3VjaHN0YXJ0LCB0aGlzLl9oaWRlLCB0aGlzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX21hcC5vZmYoe1xuICAgICAgICAgICAgY29udGV4dG1lbnU6IHRoaXMuX3Nob3csXG4gICAgICAgICAgICBtb3VzZWRvd246IHRoaXMuX2hpZGUsXG4gICAgICAgICAgICBtb3Zlc3RhcnQ6IHRoaXMuX2hpZGUsXG4gICAgICAgICAgICB6b29tc3RhcnQ6IHRoaXMuX2hpZGVcbiAgICAgICAgfSwgdGhpcyk7XG4gICAgfSxcblxuICAgIHNob3dBdDogZnVuY3Rpb24gKHBvaW50LCBkYXRhKSB7XG4gICAgICAgIGlmIChwb2ludCBpbnN0YW5jZW9mIEwuTGF0TG5nKSB7XG4gICAgICAgICAgICBwb2ludCA9IHRoaXMuX21hcC5sYXRMbmdUb0NvbnRhaW5lclBvaW50KHBvaW50KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zaG93QXRQb2ludChwb2ludCwgZGF0YSk7XG4gICAgfSxcblxuICAgIGhpZGU6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdGhpcy5faGlkZSgpO1xuICAgIH0sXG5cbiAgICBhZGRJdGVtOiBmdW5jdGlvbiAob3B0aW9ucykge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnNlcnRJdGVtKG9wdGlvbnMpO1xuICAgIH0sXG5cbiAgICBpbnNlcnRJdGVtOiBmdW5jdGlvbiAob3B0aW9ucywgaW5kZXgpIHtcbiAgICAgICAgaW5kZXggPSBpbmRleCAhPT0gdW5kZWZpbmVkID8gaW5kZXg6IHRoaXMuX2l0ZW1zLmxlbmd0aDtcblxuICAgICAgICB2YXIgaXRlbSA9IHRoaXMuX2NyZWF0ZUl0ZW0odGhpcy5fY29udGFpbmVyLCBvcHRpb25zLCBpbmRleCk7XG5cbiAgICAgICAgdGhpcy5faXRlbXMucHVzaChpdGVtKTtcblxuICAgICAgICB0aGlzLl9zaXplQ2hhbmdlZCA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5fbWFwLmZpcmUoJ2NvbnRleHRtZW51LmFkZGl0ZW0nLCB7XG4gICAgICAgICAgICBjb250ZXh0bWVudTogdGhpcyxcbiAgICAgICAgICAgIGVsOiBpdGVtLmVsLFxuICAgICAgICAgICAgaW5kZXg6IGluZGV4XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBpdGVtLmVsO1xuICAgIH0sXG5cbiAgICByZW1vdmVJdGVtOiBmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICB2YXIgY29udGFpbmVyID0gdGhpcy5fY29udGFpbmVyO1xuXG4gICAgICAgIGlmICghaXNOYU4oaXRlbSkpIHtcbiAgICAgICAgICAgIGl0ZW0gPSBjb250YWluZXIuY2hpbGRyZW5baXRlbV07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgdGhpcy5fcmVtb3ZlSXRlbShMLlV0aWwuc3RhbXAoaXRlbSkpO1xuXG4gICAgICAgICAgICB0aGlzLl9zaXplQ2hhbmdlZCA9IHRydWU7XG5cbiAgICAgICAgICAgIHRoaXMuX21hcC5maXJlKCdjb250ZXh0bWVudS5yZW1vdmVpdGVtJywge1xuICAgICAgICAgICAgICAgIGNvbnRleHRtZW51OiB0aGlzLFxuICAgICAgICAgICAgICAgIGVsOiBpdGVtXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcmV0dXJuIGl0ZW07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9LFxuXG4gICAgcmVtb3ZlQWxsSXRlbXM6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIGl0ZW1zID0gdGhpcy5fY29udGFpbmVyLmNoaWxkcmVuLFxuICAgICAgICAgICAgaXRlbTtcblxuICAgICAgICB3aGlsZSAoaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICBpdGVtID0gaXRlbXNbMF07XG4gICAgICAgICAgICB0aGlzLl9yZW1vdmVJdGVtKEwuVXRpbC5zdGFtcChpdGVtKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGl0ZW1zO1xuICAgIH0sXG5cbiAgICBoaWRlQWxsSXRlbXM6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIGl0ZW0sIGksIGw7XG5cbiAgICAgICAgZm9yIChpID0gMCwgbCA9IHRoaXMuX2l0ZW1zLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgaXRlbSA9IHRoaXMuX2l0ZW1zW2ldO1xuICAgICAgICAgICAgaXRlbS5lbC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICB9XG4gICAgfSxcblxuICAgIHNob3dBbGxJdGVtczogZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgaXRlbSwgaSwgbDtcblxuICAgICAgICBmb3IgKGkgPSAwLCBsID0gdGhpcy5faXRlbXMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICBpdGVtID0gdGhpcy5faXRlbXNbaV07XG4gICAgICAgICAgICBpdGVtLmVsLnN0eWxlLmRpc3BsYXkgPSAnJztcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICBzZXREaXNhYmxlZDogZnVuY3Rpb24gKGl0ZW0sIGRpc2FibGVkKSB7XG4gICAgICAgIHZhciBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXIsXG4gICAgICAgIGl0ZW1DbHMgPSBMLk1hcC5Db250ZXh0TWVudS5CQVNFX0NMUyArICctaXRlbSc7XG5cbiAgICAgICAgaWYgKCFpc05hTihpdGVtKSkge1xuICAgICAgICAgICAgaXRlbSA9IGNvbnRhaW5lci5jaGlsZHJlbltpdGVtXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpdGVtICYmIEwuRG9tVXRpbC5oYXNDbGFzcyhpdGVtLCBpdGVtQ2xzKSkge1xuICAgICAgICAgICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICAgICAgICAgICAgTC5Eb21VdGlsLmFkZENsYXNzKGl0ZW0sIGl0ZW1DbHMgKyAnLWRpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5fbWFwLmZpcmUoJ2NvbnRleHRtZW51LmRpc2FibGVpdGVtJywge1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0bWVudTogdGhpcyxcbiAgICAgICAgICAgICAgICAgICAgZWw6IGl0ZW1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgTC5Eb21VdGlsLnJlbW92ZUNsYXNzKGl0ZW0sIGl0ZW1DbHMgKyAnLWRpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5fbWFwLmZpcmUoJ2NvbnRleHRtZW51LmVuYWJsZWl0ZW0nLCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRleHRtZW51OiB0aGlzLFxuICAgICAgICAgICAgICAgICAgICBlbDogaXRlbVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSxcblxuICAgIGlzVmlzaWJsZTogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgICB9LFxuXG4gICAgX2NyZWF0ZUl0ZW1zOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBpdGVtT3B0aW9ucyA9IHRoaXMuX21hcC5vcHRpb25zLmNvbnRleHRtZW51SXRlbXMsXG4gICAgICAgICAgICBpdGVtLFxuICAgICAgICAgICAgaSwgbDtcblxuICAgICAgICBmb3IgKGkgPSAwLCBsID0gaXRlbU9wdGlvbnMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICB0aGlzLl9pdGVtcy5wdXNoKHRoaXMuX2NyZWF0ZUl0ZW0odGhpcy5fY29udGFpbmVyLCBpdGVtT3B0aW9uc1tpXSkpO1xuICAgICAgICB9XG4gICAgfSxcblxuICAgIF9jcmVhdGVJdGVtOiBmdW5jdGlvbiAoY29udGFpbmVyLCBvcHRpb25zLCBpbmRleCkge1xuICAgICAgICBpZiAob3B0aW9ucy5zZXBhcmF0b3IgfHwgb3B0aW9ucyA9PT0gJy0nKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fY3JlYXRlU2VwYXJhdG9yKGNvbnRhaW5lciwgaW5kZXgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGl0ZW1DbHMgPSBMLk1hcC5Db250ZXh0TWVudS5CQVNFX0NMUyArICctaXRlbScsXG4gICAgICAgICAgICBjbHMgPSBvcHRpb25zLmRpc2FibGVkID8gKGl0ZW1DbHMgKyAnICcgKyBpdGVtQ2xzICsgJy1kaXNhYmxlZCcpIDogaXRlbUNscyxcbiAgICAgICAgICAgIGVsID0gdGhpcy5faW5zZXJ0RWxlbWVudEF0KCdhJywgY2xzLCBjb250YWluZXIsIGluZGV4KSxcbiAgICAgICAgICAgIGNhbGxiYWNrID0gdGhpcy5fY3JlYXRlRXZlbnRIYW5kbGVyKGVsLCBvcHRpb25zLmNhbGxiYWNrLCBvcHRpb25zLmNvbnRleHQsIG9wdGlvbnMuaGlkZU9uU2VsZWN0KSxcbiAgICAgICAgICAgIGljb24gPSB0aGlzLl9nZXRJY29uKG9wdGlvbnMpLFxuICAgICAgICAgICAgaWNvbkNscyA9IHRoaXMuX2dldEljb25DbHMob3B0aW9ucyksXG4gICAgICAgICAgICBodG1sID0gJyc7XG5cbiAgICAgICAgaWYgKGljb24pIHtcbiAgICAgICAgICAgIGh0bWwgPSAnPGltZyBjbGFzcz1cIicgKyBMLk1hcC5Db250ZXh0TWVudS5CQVNFX0NMUyArICctaWNvblwiIHNyYz1cIicgKyBpY29uICsgJ1wiLz4nO1xuICAgICAgICB9IGVsc2UgaWYgKGljb25DbHMpIHtcbiAgICAgICAgICAgIGh0bWwgPSAnPHNwYW4gY2xhc3M9XCInICsgTC5NYXAuQ29udGV4dE1lbnUuQkFTRV9DTFMgKyAnLWljb24gJyArIGljb25DbHMgKyAnXCI+PC9zcGFuPic7XG4gICAgICAgIH1cblxuICAgICAgICBlbC5pbm5lckhUTUwgPSBodG1sICsgb3B0aW9ucy50ZXh0O1xuICAgICAgICBlbC5ocmVmID0gJyMnO1xuXG4gICAgICAgIEwuRG9tRXZlbnRcbiAgICAgICAgICAgIC5vbihlbCwgJ21vdXNlb3ZlcicsIHRoaXMuX29uSXRlbU1vdXNlT3ZlciwgdGhpcylcbiAgICAgICAgICAgIC5vbihlbCwgJ21vdXNlb3V0JywgdGhpcy5fb25JdGVtTW91c2VPdXQsIHRoaXMpXG4gICAgICAgICAgICAub24oZWwsICdtb3VzZWRvd24nLCBMLkRvbUV2ZW50LnN0b3BQcm9wYWdhdGlvbilcbiAgICAgICAgICAgIC5vbihlbCwgJ2NsaWNrJywgY2FsbGJhY2spO1xuXG4gICAgICAgIGlmIChMLkJyb3dzZXIudG91Y2gpIHtcbiAgICAgICAgICAgIEwuRG9tRXZlbnQub24oZWwsIHRoaXMuX3RvdWNoc3RhcnQsIEwuRG9tRXZlbnQuc3RvcFByb3BhZ2F0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERldmljZXMgd2l0aG91dCBhIG1vdXNlIGZpcmUgXCJtb3VzZW92ZXJcIiBvbiB0YXAsIGJ1dCBuZXZlciDigJxtb3VzZW91dFwiXG4gICAgICAgIGlmICghTC5Ccm93c2VyLnBvaW50ZXIpIHtcbiAgICAgICAgICAgIEwuRG9tRXZlbnQub24oZWwsICdjbGljaycsIHRoaXMuX29uSXRlbU1vdXNlT3V0LCB0aGlzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpZDogTC5VdGlsLnN0YW1wKGVsKSxcbiAgICAgICAgICAgIGVsOiBlbCxcbiAgICAgICAgICAgIGNhbGxiYWNrOiBjYWxsYmFja1xuICAgICAgICB9O1xuICAgIH0sXG5cbiAgICBfcmVtb3ZlSXRlbTogZnVuY3Rpb24gKGlkKSB7XG4gICAgICAgIHZhciBpdGVtLFxuICAgICAgICAgICAgZWwsXG4gICAgICAgICAgICBpLCBsLCBjYWxsYmFjaztcblxuICAgICAgICBmb3IgKGkgPSAwLCBsID0gdGhpcy5faXRlbXMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICBpdGVtID0gdGhpcy5faXRlbXNbaV07XG5cbiAgICAgICAgICAgIGlmIChpdGVtLmlkID09PSBpZCkge1xuICAgICAgICAgICAgICAgIGVsID0gaXRlbS5lbDtcbiAgICAgICAgICAgICAgICBjYWxsYmFjayA9IGl0ZW0uY2FsbGJhY2s7XG5cbiAgICAgICAgICAgICAgICBpZiAoY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgTC5Eb21FdmVudFxuICAgICAgICAgICAgICAgICAgICAgICAgLm9mZihlbCwgJ21vdXNlb3ZlcicsIHRoaXMuX29uSXRlbU1vdXNlT3ZlciwgdGhpcylcbiAgICAgICAgICAgICAgICAgICAgICAgIC5vZmYoZWwsICdtb3VzZW92ZXInLCB0aGlzLl9vbkl0ZW1Nb3VzZU91dCwgdGhpcylcbiAgICAgICAgICAgICAgICAgICAgICAgIC5vZmYoZWwsICdtb3VzZWRvd24nLCBMLkRvbUV2ZW50LnN0b3BQcm9wYWdhdGlvbilcbiAgICAgICAgICAgICAgICAgICAgICAgIC5vZmYoZWwsICdjbGljaycsIGNhbGxiYWNrKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoTC5Ccm93c2VyLnRvdWNoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBMLkRvbUV2ZW50Lm9mZihlbCwgdGhpcy5fdG91Y2hzdGFydCwgTC5Eb21FdmVudC5zdG9wUHJvcGFnYXRpb24pO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFMLkJyb3dzZXIucG9pbnRlcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgTC5Eb21FdmVudC5vbihlbCwgJ2NsaWNrJywgdGhpcy5fb25JdGVtTW91c2VPdXQsIHRoaXMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5fY29udGFpbmVyLnJlbW92ZUNoaWxkKGVsKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9pdGVtcy5zcGxpY2UoaSwgMSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9LFxuXG4gICAgX2NyZWF0ZVNlcGFyYXRvcjogZnVuY3Rpb24gKGNvbnRhaW5lciwgaW5kZXgpIHtcbiAgICAgICAgdmFyIGVsID0gdGhpcy5faW5zZXJ0RWxlbWVudEF0KCdkaXYnLCBMLk1hcC5Db250ZXh0TWVudS5CQVNFX0NMUyArICctc2VwYXJhdG9yJywgY29udGFpbmVyLCBpbmRleCk7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkOiBMLlV0aWwuc3RhbXAoZWwpLFxuICAgICAgICAgICAgZWw6IGVsXG4gICAgICAgIH07XG4gICAgfSxcblxuICAgIF9jcmVhdGVFdmVudEhhbmRsZXI6IGZ1bmN0aW9uIChlbCwgZnVuYywgY29udGV4dCwgaGlkZU9uU2VsZWN0KSB7XG4gICAgICAgIHZhciBtZSA9IHRoaXMsXG4gICAgICAgICAgICBtYXAgPSB0aGlzLl9tYXAsXG4gICAgICAgICAgICBkaXNhYmxlZENscyA9IEwuTWFwLkNvbnRleHRNZW51LkJBU0VfQ0xTICsgJy1pdGVtLWRpc2FibGVkJyxcbiAgICAgICAgICAgIGhpZGVPblNlbGVjdCA9IChoaWRlT25TZWxlY3QgIT09IHVuZGVmaW5lZCkgPyBoaWRlT25TZWxlY3QgOiB0cnVlO1xuXG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgaWYgKEwuRG9tVXRpbC5oYXNDbGFzcyhlbCwgZGlzYWJsZWRDbHMpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoaGlkZU9uU2VsZWN0KSB7XG4gICAgICAgICAgICAgICAgbWUuX2hpZGUoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGZ1bmMpIHtcbiAgICAgICAgICAgICAgICBmdW5jLmNhbGwoY29udGV4dCB8fCBtYXAsIG1lLl9zaG93TG9jYXRpb24pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBtZS5fbWFwLmZpcmUoJ2NvbnRleHRtZW51LnNlbGVjdCcsIHtcbiAgICAgICAgICAgICAgICBjb250ZXh0bWVudTogbWUsXG4gICAgICAgICAgICAgICAgZWw6IGVsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcbiAgICB9LFxuXG4gICAgX2luc2VydEVsZW1lbnRBdDogZnVuY3Rpb24gKHRhZ05hbWUsIGNsYXNzTmFtZSwgY29udGFpbmVyLCBpbmRleCkge1xuICAgICAgICB2YXIgcmVmRWwsXG4gICAgICAgICAgICBlbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7XG5cbiAgICAgICAgZWwuY2xhc3NOYW1lID0gY2xhc3NOYW1lO1xuXG4gICAgICAgIGlmIChpbmRleCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZWZFbCA9IGNvbnRhaW5lci5jaGlsZHJlbltpbmRleF07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVmRWwpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lci5pbnNlcnRCZWZvcmUoZWwsIHJlZkVsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZChlbCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZWw7XG4gICAgfSxcblxuICAgIF9zaG93OiBmdW5jdGlvbiAoZSkge1xuICAgICAgICB0aGlzLl9zaG93QXRQb2ludChlLmNvbnRhaW5lclBvaW50LCBlKTtcbiAgICB9LFxuXG4gICAgX3Nob3dBdFBvaW50OiBmdW5jdGlvbiAocHQsIGRhdGEpIHtcbiAgICAgICAgaWYgKHRoaXMuX2l0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgICAgdmFyIG1hcCA9IHRoaXMuX21hcCxcbiAgICAgICAgICAgIGxheWVyUG9pbnQgPSBtYXAuY29udGFpbmVyUG9pbnRUb0xheWVyUG9pbnQocHQpLFxuICAgICAgICAgICAgbGF0bG5nID0gbWFwLmxheWVyUG9pbnRUb0xhdExuZyhsYXllclBvaW50KSxcbiAgICAgICAgICAgIGV2ZW50ID0gTC5leHRlbmQoZGF0YSB8fCB7fSwge2NvbnRleHRtZW51OiB0aGlzfSk7XG5cbiAgICAgICAgICAgIHRoaXMuX3Nob3dMb2NhdGlvbiA9IHtcbiAgICAgICAgICAgICAgICBsYXRsbmc6IGxhdGxuZyxcbiAgICAgICAgICAgICAgICBsYXllclBvaW50OiBsYXllclBvaW50LFxuICAgICAgICAgICAgICAgIGNvbnRhaW5lclBvaW50OiBwdFxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgaWYgKGRhdGEgJiYgZGF0YS5yZWxhdGVkVGFyZ2V0KXtcbiAgICAgICAgICAgICAgICB0aGlzLl9zaG93TG9jYXRpb24ucmVsYXRlZFRhcmdldCA9IGRhdGEucmVsYXRlZFRhcmdldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fc2V0UG9zaXRpb24ocHQpO1xuXG4gICAgICAgICAgICBpZiAoIXRoaXMuX3Zpc2libGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jb250YWluZXIuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlzaWJsZSA9IHRydWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX21hcC5maXJlKCdjb250ZXh0bWVudS5zaG93JywgZXZlbnQpO1xuICAgICAgICB9XG4gICAgfSxcblxuICAgIF9oaWRlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLl92aXNpYmxlKSB7XG4gICAgICAgICAgICB0aGlzLl92aXNpYmxlID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLl9jb250YWluZXIuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgICAgIHRoaXMuX21hcC5maXJlKCdjb250ZXh0bWVudS5oaWRlJywge2NvbnRleHRtZW51OiB0aGlzfSk7XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgX2dldEljb246IGZ1bmN0aW9uIChvcHRpb25zKSB7XG4gICAgICAgIHJldHVybiBMLkJyb3dzZXIucmV0aW5hICYmIG9wdGlvbnMucmV0aW5hSWNvbiB8fCBvcHRpb25zLmljb247XG4gICAgfSxcblxuICAgIF9nZXRJY29uQ2xzOiBmdW5jdGlvbiAob3B0aW9ucykge1xuICAgICAgICByZXR1cm4gTC5Ccm93c2VyLnJldGluYSAmJiBvcHRpb25zLnJldGluYUljb25DbHMgfHwgb3B0aW9ucy5pY29uQ2xzO1xuICAgIH0sXG5cbiAgICBfc2V0UG9zaXRpb246IGZ1bmN0aW9uIChwdCkge1xuICAgICAgICB2YXIgbWFwU2l6ZSA9IHRoaXMuX21hcC5nZXRTaXplKCksXG4gICAgICAgICAgICBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXIsXG4gICAgICAgICAgICBjb250YWluZXJTaXplID0gdGhpcy5fZ2V0RWxlbWVudFNpemUoY29udGFpbmVyKSxcbiAgICAgICAgICAgIGFuY2hvcjtcblxuICAgICAgICBpZiAodGhpcy5fbWFwLm9wdGlvbnMuY29udGV4dG1lbnVBbmNob3IpIHtcbiAgICAgICAgICAgIGFuY2hvciA9IEwucG9pbnQodGhpcy5fbWFwLm9wdGlvbnMuY29udGV4dG1lbnVBbmNob3IpO1xuICAgICAgICAgICAgcHQgPSBwdC5hZGQoYW5jaG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRhaW5lci5fbGVhZmxldF9wb3MgPSBwdDtcblxuICAgICAgICBpZiAocHQueCArIGNvbnRhaW5lclNpemUueCA+IG1hcFNpemUueCkge1xuICAgICAgICAgICAgY29udGFpbmVyLnN0eWxlLmxlZnQgPSAnYXV0byc7XG4gICAgICAgICAgICBjb250YWluZXIuc3R5bGUucmlnaHQgPSBNYXRoLm1pbihNYXRoLm1heChtYXBTaXplLnggLSBwdC54LCAwKSwgbWFwU2l6ZS54IC0gY29udGFpbmVyU2l6ZS54IC0gMSkgKyAncHgnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyLnN0eWxlLmxlZnQgPSBNYXRoLm1heChwdC54LCAwKSArICdweCc7XG4gICAgICAgICAgICBjb250YWluZXIuc3R5bGUucmlnaHQgPSAnYXV0byc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocHQueSArIGNvbnRhaW5lclNpemUueSA+IG1hcFNpemUueSkge1xuICAgICAgICAgICAgY29udGFpbmVyLnN0eWxlLnRvcCA9ICdhdXRvJztcbiAgICAgICAgICAgIGNvbnRhaW5lci5zdHlsZS5ib3R0b20gPSBNYXRoLm1pbihNYXRoLm1heChtYXBTaXplLnkgLSBwdC55LCAwKSwgbWFwU2l6ZS55IC0gY29udGFpbmVyU2l6ZS55IC0gMSkgKyAncHgnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyLnN0eWxlLnRvcCA9IE1hdGgubWF4KHB0LnksIDApICsgJ3B4JztcbiAgICAgICAgICAgIGNvbnRhaW5lci5zdHlsZS5ib3R0b20gPSAnYXV0byc7XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgX2dldEVsZW1lbnRTaXplOiBmdW5jdGlvbiAoZWwpIHtcbiAgICAgICAgdmFyIHNpemUgPSB0aGlzLl9zaXplLFxuICAgICAgICAgICAgaW5pdGlhbERpc3BsYXkgPSBlbC5zdHlsZS5kaXNwbGF5O1xuXG4gICAgICAgIGlmICghc2l6ZSB8fCB0aGlzLl9zaXplQ2hhbmdlZCkge1xuICAgICAgICAgICAgc2l6ZSA9IHt9O1xuXG4gICAgICAgICAgICBlbC5zdHlsZS5sZWZ0ID0gJy05OTk5OTlweCc7XG4gICAgICAgICAgICBlbC5zdHlsZS5yaWdodCA9ICdhdXRvJztcbiAgICAgICAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuXG4gICAgICAgICAgICBzaXplLnggPSBlbC5vZmZzZXRXaWR0aDtcbiAgICAgICAgICAgIHNpemUueSA9IGVsLm9mZnNldEhlaWdodDtcblxuICAgICAgICAgICAgZWwuc3R5bGUubGVmdCA9ICdhdXRvJztcbiAgICAgICAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSBpbml0aWFsRGlzcGxheTtcblxuICAgICAgICAgICAgdGhpcy5fc2l6ZUNoYW5nZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzaXplO1xuICAgIH0sXG5cbiAgICBfb25LZXlEb3duOiBmdW5jdGlvbiAoZSkge1xuICAgICAgICB2YXIga2V5ID0gZS5rZXlDb2RlO1xuXG4gICAgICAgIC8vIElmIEVTQyBwcmVzc2VkIGFuZCBjb250ZXh0IG1lbnUgaXMgdmlzaWJsZSBoaWRlIGl0XG4gICAgICAgIGlmIChrZXkgPT09IDI3KSB7XG4gICAgICAgICAgICB0aGlzLl9oaWRlKCk7XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgX29uSXRlbU1vdXNlT3ZlcjogZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgTC5Eb21VdGlsLmFkZENsYXNzKGUudGFyZ2V0IHx8IGUuc3JjRWxlbWVudCwgJ292ZXInKTtcbiAgICB9LFxuXG4gICAgX29uSXRlbU1vdXNlT3V0OiBmdW5jdGlvbiAoZSkge1xuICAgICAgICBMLkRvbVV0aWwucmVtb3ZlQ2xhc3MoZS50YXJnZXQgfHwgZS5zcmNFbGVtZW50LCAnb3ZlcicpO1xuICAgIH1cbn0pO1xuXG5MLk1hcC5hZGRJbml0SG9vaygnYWRkSGFuZGxlcicsICdjb250ZXh0bWVudScsIEwuTWFwLkNvbnRleHRNZW51KTtcbkwuTWl4aW4uQ29udGV4dE1lbnUgPSB7XG4gICAgYmluZENvbnRleHRNZW51OiBmdW5jdGlvbiAob3B0aW9ucykge1xuICAgICAgICBMLnNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XG4gICAgICAgIHRoaXMuX2luaXRDb250ZXh0TWVudSgpO1xuXG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH0sXG5cbiAgICB1bmJpbmRDb250ZXh0TWVudTogZnVuY3Rpb24gKCl7XG4gICAgICAgIHRoaXMub2ZmKCdjb250ZXh0bWVudScsIHRoaXMuX3Nob3dDb250ZXh0TWVudSwgdGhpcyk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfSxcblxuICAgIGFkZENvbnRleHRNZW51SXRlbTogZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5jb250ZXh0bWVudUl0ZW1zLnB1c2goaXRlbSk7XG4gICAgfSxcblxuICAgIHJlbW92ZUNvbnRleHRNZW51SXRlbVdpdGhJbmRleDogZnVuY3Rpb24gKGluZGV4KSB7XG4gICAgICAgIHZhciBpdGVtcyA9IFtdO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMub3B0aW9ucy5jb250ZXh0bWVudUl0ZW1zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5vcHRpb25zLmNvbnRleHRtZW51SXRlbXNbaV0uaW5kZXggPT0gaW5kZXgpe1xuICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goaSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdmFyIGVsZW0gPSBpdGVtcy5wb3AoKTtcbiAgICAgICAgd2hpbGUgKGVsZW0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5vcHRpb25zLmNvbnRleHRtZW51SXRlbXMuc3BsaWNlKGVsZW0sMSk7XG4gICAgICAgICAgICBlbGVtID0gaXRlbXMucG9wKCk7XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgcmVwbGFjZUNvbnRleHRNZW51SXRlbTogZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgICAgdGhpcy5yZW1vdmVDb250ZXh0TWVudUl0ZW1XaXRoSW5kZXgoaXRlbS5pbmRleCk7XG4gICAgICAgIHRoaXMuYWRkQ29udGV4dE1lbnVJdGVtKGl0ZW0pO1xuICAgIH0sXG5cbiAgICBfaW5pdENvbnRleHRNZW51OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMuX2l0ZW1zID0gW107XG5cbiAgICAgICAgdGhpcy5vbignY29udGV4dG1lbnUnLCB0aGlzLl9zaG93Q29udGV4dE1lbnUsIHRoaXMpO1xuICAgIH0sXG5cbiAgICBfc2hvd0NvbnRleHRNZW51OiBmdW5jdGlvbiAoZSkge1xuICAgICAgICB2YXIgaXRlbU9wdGlvbnMsXG4gICAgICAgICAgICBkYXRhLCBwdCwgaSwgbDtcblxuICAgICAgICBpZiAodGhpcy5fbWFwLmNvbnRleHRtZW51KSB7XG4gICAgICAgICAgICBkYXRhID0gTC5leHRlbmQoe3JlbGF0ZWRUYXJnZXQ6IHRoaXN9LCBlKTtcblxuICAgICAgICAgICAgcHQgPSB0aGlzLl9tYXAubW91c2VFdmVudFRvQ29udGFpbmVyUG9pbnQoZS5vcmlnaW5hbEV2ZW50KTtcblxuICAgICAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuY29udGV4dG1lbnVJbmhlcml0SXRlbXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9tYXAuY29udGV4dG1lbnUuaGlkZUFsbEl0ZW1zKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGZvciAoaSA9IDAsIGwgPSB0aGlzLm9wdGlvbnMuY29udGV4dG1lbnVJdGVtcy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICBpdGVtT3B0aW9ucyA9IHRoaXMub3B0aW9ucy5jb250ZXh0bWVudUl0ZW1zW2ldO1xuICAgICAgICAgICAgICAgIHRoaXMuX2l0ZW1zLnB1c2godGhpcy5fbWFwLmNvbnRleHRtZW51Lmluc2VydEl0ZW0oaXRlbU9wdGlvbnMsIGl0ZW1PcHRpb25zLmluZGV4KSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX21hcC5vbmNlKCdjb250ZXh0bWVudS5oaWRlJywgdGhpcy5faGlkZUNvbnRleHRNZW51LCB0aGlzKTtcblxuICAgICAgICAgICAgdGhpcy5fbWFwLmNvbnRleHRtZW51LnNob3dBdChwdCwgZGF0YSk7XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgX2hpZGVDb250ZXh0TWVudTogZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgaSwgbDtcblxuICAgICAgICBmb3IgKGkgPSAwLCBsID0gdGhpcy5faXRlbXMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICB0aGlzLl9tYXAuY29udGV4dG1lbnUucmVtb3ZlSXRlbSh0aGlzLl9pdGVtc1tpXSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5faXRlbXMubGVuZ3RoID0gMDtcblxuICAgICAgICBpZiAoIXRoaXMub3B0aW9ucy5jb250ZXh0bWVudUluaGVyaXRJdGVtcykge1xuICAgICAgICAgICAgdGhpcy5fbWFwLmNvbnRleHRtZW51LnNob3dBbGxJdGVtcygpO1xuICAgICAgICB9XG4gICAgfVxufTtcblxudmFyIGNsYXNzZXMgPSBbTC5NYXJrZXIsIEwuUGF0aF0sXG4gICAgZGVmYXVsdE9wdGlvbnMgPSB7XG4gICAgICAgIGNvbnRleHRtZW51OiBmYWxzZSxcbiAgICAgICAgY29udGV4dG1lbnVJdGVtczogW10sXG4gICAgICAgIGNvbnRleHRtZW51SW5oZXJpdEl0ZW1zOiB0cnVlXG4gICAgfSxcbiAgICBjbHMsIGksIGw7XG5cbmZvciAoaSA9IDAsIGwgPSBjbGFzc2VzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgIGNscyA9IGNsYXNzZXNbaV07XG5cbiAgICAvLyBMLkNsYXNzIHNob3VsZCBwcm9iYWJseSBwcm92aWRlIGFuIGVtcHR5IG9wdGlvbnMgaGFzaCwgYXMgaXQgZG9lcyBub3QgdGVzdFxuICAgIC8vIGZvciBpdCBoZXJlIGFuZCBhZGQgaWYgbmVlZGVkXG4gICAgaWYgKCFjbHMucHJvdG90eXBlLm9wdGlvbnMpIHtcbiAgICAgICAgY2xzLnByb3RvdHlwZS5vcHRpb25zID0gZGVmYXVsdE9wdGlvbnM7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY2xzLm1lcmdlT3B0aW9ucyhkZWZhdWx0T3B0aW9ucyk7XG4gICAgfVxuXG4gICAgY2xzLmFkZEluaXRIb29rKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5jb250ZXh0bWVudSkge1xuICAgICAgICAgICAgdGhpcy5faW5pdENvbnRleHRNZW51KCk7XG4gICAgICAgIH1cbiAgICB9KTtcblxuICAgIGNscy5pbmNsdWRlKEwuTWl4aW4uQ29udGV4dE1lbnUpO1xufVxucmV0dXJuIEwuTWFwLkNvbnRleHRNZW51O1xufSk7XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.js\n")); + +/***/ }), + /***/ "./node_modules/leaflet/dist/leaflet-src.js": /*!**************************************************!*\ !*** ./node_modules/leaflet/dist/leaflet-src.js ***! @@ -18,6 +28,17 @@ eval(__webpack_require__.ts("/* @preserve\n * Leaflet 1.9.4, a JS library for in /***/ }), +/***/ "./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[2]!./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.css": +/*!*****************************************************************************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[2]!./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.css ***! + \*****************************************************************************************************************************************************************************************************************************************************************************************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _next_dist_build_webpack_loaders_css_loader_src_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../next/dist/build/webpack/loaders/css-loader/src/runtime/api.js */ \"./node_modules/next/dist/build/webpack/loaders/css-loader/src/runtime/api.js\");\n/* harmony import */ var _next_dist_build_webpack_loaders_css_loader_src_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_next_dist_build_webpack_loaders_css_loader_src_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);\n// Imports\n\nvar ___CSS_LOADER_EXPORT___ = _next_dist_build_webpack_loaders_css_loader_src_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".leaflet-contextmenu {\\n display: none;\\n box-shadow: 0 1px 7px rgba(0,0,0,0.4);\\n border-radius: 4px;\\n padding: 4px 0;\\n background-color: #fff;\\n cursor: default;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n user-select: none;\\n}\\n\\n.leaflet-contextmenu a.leaflet-contextmenu-item {\\n display: block;\\n color: #222;\\n font-size: 12px;\\n line-height: 20px;\\n text-decoration: none;\\n padding: 0 12px;\\n border-top: 1px solid transparent;\\n border-bottom: 1px solid transparent;\\n cursor: default;\\n outline: none;\\n}\\n\\n.leaflet-contextmenu a.leaflet-contextmenu-item-disabled {\\n opacity: 0.5;\\n}\\n\\n.leaflet-contextmenu a.leaflet-contextmenu-item.over {\\n background-color: #f4f4f4;\\n border-top: 1px solid #f0f0f0;\\n border-bottom: 1px solid #f0f0f0;\\n}\\n\\n.leaflet-contextmenu a.leaflet-contextmenu-item-disabled.over {\\n background-color: inherit;\\n border-top: 1px solid transparent;\\n border-bottom: 1px solid transparent;\\n}\\n\\n.leaflet-contextmenu-icon {\\n margin: 2px 8px 0 0;\\n width: 16px;\\n height: 16px;\\n float: left;\\n border: 0;\\n}\\n\\n.leaflet-contextmenu-separator {\\n border-bottom: 1px solid #ccc;\\n margin: 5px 0;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,aAAa;IACb,qCAAqC;IAErC,kBAAkB;IAClB,cAAc;IACd,sBAAsB;IACtB,eAAe;IACf,yBAAyB;IACzB,sBAAsB;IACtB,iBAAiB;AACrB;;AAEA;IACI,cAAc;IACd,WAAW;IACX,eAAe;IACf,iBAAiB;IACjB,qBAAqB;IACrB,eAAe;IACf,iCAAiC;IACjC,oCAAoC;IACpC,eAAe;IACf,aAAa;AACjB;;AAEA;IACI,YAAY;AAChB;;AAEA;IACI,yBAAyB;IACzB,6BAA6B;IAC7B,gCAAgC;AACpC;;AAEA;IACI,yBAAyB;IACzB,iCAAiC;IACjC,oCAAoC;AACxC;;AAEA;IACI,mBAAmB;IACnB,WAAW;IACX,YAAY;IACZ,WAAW;IACX,SAAS;AACb;;AAEA;IACI,6BAA6B;IAC7B,aAAa;AACjB\",\"sourcesContent\":[\".leaflet-contextmenu {\\n display: none;\\n box-shadow: 0 1px 7px rgba(0,0,0,0.4);\\n -webkit-border-radius: 4px;\\n border-radius: 4px;\\n padding: 4px 0;\\n background-color: #fff;\\n cursor: default;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n user-select: none;\\n}\\n\\n.leaflet-contextmenu a.leaflet-contextmenu-item {\\n display: block;\\n color: #222;\\n font-size: 12px;\\n line-height: 20px;\\n text-decoration: none;\\n padding: 0 12px;\\n border-top: 1px solid transparent;\\n border-bottom: 1px solid transparent;\\n cursor: default;\\n outline: none;\\n}\\n\\n.leaflet-contextmenu a.leaflet-contextmenu-item-disabled {\\n opacity: 0.5;\\n}\\n\\n.leaflet-contextmenu a.leaflet-contextmenu-item.over {\\n background-color: #f4f4f4;\\n border-top: 1px solid #f0f0f0;\\n border-bottom: 1px solid #f0f0f0;\\n}\\n\\n.leaflet-contextmenu a.leaflet-contextmenu-item-disabled.over {\\n background-color: inherit;\\n border-top: 1px solid transparent;\\n border-bottom: 1px solid transparent;\\n}\\n\\n.leaflet-contextmenu-icon {\\n margin: 2px 8px 0 0;\\n width: 16px;\\n height: 16px;\\n float: left;\\n border: 0;\\n}\\n\\n.leaflet-contextmenu-separator {\\n border-bottom: 1px solid #ccc;\\n margin: 5px 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ __webpack_exports__[\"default\"] = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9jc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cnVsZVNldFsxXS5ydWxlc1s2XS5vbmVPZlsxMl0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9idWlsZC93ZWJwYWNrL2xvYWRlcnMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzZdLm9uZU9mWzEyXS51c2VbMl0hLi9ub2RlX21vZHVsZXMvbGVhZmxldC1jb250ZXh0bWVudS9kaXN0L2xlYWZsZXQuY29udGV4dG1lbnUuY3NzIiwibWFwcGluZ3MiOiI7OztBQUFBO0FBQzhHO0FBQzlHLDhCQUE4QixxR0FBMkI7QUFDekQ7QUFDQSxnRUFBZ0Usb0JBQW9CLDRDQUE0Qyx5QkFBeUIscUJBQXFCLDZCQUE2QixzQkFBc0IsZ0NBQWdDLDZCQUE2Qix3QkFBd0IsR0FBRyxxREFBcUQscUJBQXFCLGtCQUFrQixzQkFBc0Isd0JBQXdCLDRCQUE0QixzQkFBc0Isd0NBQXdDLDJDQUEyQyxzQkFBc0Isb0JBQW9CLEdBQUcsOERBQThELG1CQUFtQixHQUFHLDBEQUEwRCxnQ0FBZ0Msb0NBQW9DLHVDQUF1QyxHQUFHLG1FQUFtRSxnQ0FBZ0Msd0NBQXdDLDJDQUEyQyxHQUFHLCtCQUErQiwwQkFBMEIsa0JBQWtCLG1CQUFtQixrQkFBa0IsZ0JBQWdCLEdBQUcsb0NBQW9DLG9DQUFvQyxvQkFBb0IsR0FBRyxTQUFTLDhIQUE4SCxVQUFVLFlBQVksYUFBYSxXQUFXLFlBQVksV0FBVyxZQUFZLGFBQWEsYUFBYSxPQUFPLEtBQUssVUFBVSxVQUFVLFVBQVUsWUFBWSxhQUFhLFdBQVcsWUFBWSxhQUFhLFdBQVcsVUFBVSxPQUFPLEtBQUssVUFBVSxPQUFPLEtBQUssWUFBWSxhQUFhLGFBQWEsT0FBTyxLQUFLLFlBQVksYUFBYSxhQUFhLE9BQU8sS0FBSyxZQUFZLFdBQVcsVUFBVSxVQUFVLFVBQVUsTUFBTSxLQUFLLFlBQVksV0FBVyxnREFBZ0Qsb0JBQW9CLDRDQUE0QyxpQ0FBaUMseUJBQXlCLHFCQUFxQiw2QkFBNkIsc0JBQXNCLGdDQUFnQyw2QkFBNkIsd0JBQXdCLEdBQUcscURBQXFELHFCQUFxQixrQkFBa0Isc0JBQXNCLHdCQUF3Qiw0QkFBNEIsc0JBQXNCLHdDQUF3QywyQ0FBMkMsc0JBQXNCLG9CQUFvQixHQUFHLDhEQUE4RCxtQkFBbUIsR0FBRywwREFBMEQsZ0NBQWdDLG9DQUFvQyx1Q0FBdUMsR0FBRyxtRUFBbUUsZ0NBQWdDLHdDQUF3QywyQ0FBMkMsR0FBRywrQkFBK0IsMEJBQTBCLGtCQUFrQixtQkFBbUIsa0JBQWtCLGdCQUFnQixHQUFHLG9DQUFvQyxvQ0FBb0Msb0JBQW9CLEdBQUcscUJBQXFCO0FBQ3pvRztBQUNBLCtEQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9sZWFmbGV0LWNvbnRleHRtZW51L2Rpc3QvbGVhZmxldC5jb250ZXh0bWVudS5jc3M/ODk3MiJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi9uZXh0L2Rpc3QvYnVpbGQvd2VicGFjay9sb2FkZXJzL2Nzcy1sb2FkZXIvc3JjL3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18odHJ1ZSk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIubGVhZmxldC1jb250ZXh0bWVudSB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICAgIGJveC1zaGFkb3c6IDAgMXB4IDdweCByZ2JhKDAsMCwwLDAuNCk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcXG4gICAgcGFkZGluZzogNHB4IDA7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XFxufVxcblxcbi5sZWFmbGV0LWNvbnRleHRtZW51IGEubGVhZmxldC1jb250ZXh0bWVudS1pdGVtIHtcXG4gICAgZGlzcGxheTogYmxvY2s7XFxuICAgIGNvbG9yOiAjMjIyO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICAgIHBhZGRpbmc6IDAgMTJweDtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgb3V0bGluZTogbm9uZTtcXG59XFxuXFxuLmxlYWZsZXQtY29udGV4dG1lbnUgYS5sZWFmbGV0LWNvbnRleHRtZW51LWl0ZW0tZGlzYWJsZWQge1xcbiAgICBvcGFjaXR5OiAwLjU7XFxufVxcblxcbi5sZWFmbGV0LWNvbnRleHRtZW51IGEubGVhZmxldC1jb250ZXh0bWVudS1pdGVtLm92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjBmMDtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XFxufVxcblxcbi5sZWFmbGV0LWNvbnRleHRtZW51IGEubGVhZmxldC1jb250ZXh0bWVudS1pdGVtLWRpc2FibGVkLm92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmxlYWZsZXQtY29udGV4dG1lbnUtaWNvbiB7XFxuICAgIG1hcmdpbjogMnB4IDhweCAwIDA7XFxuICAgIHdpZHRoOiAxNnB4O1xcbiAgICBoZWlnaHQ6IDE2cHg7XFxuICAgIGZsb2F0OiBsZWZ0O1xcbiAgICBib3JkZXI6IDA7XFxufVxcblxcbi5sZWFmbGV0LWNvbnRleHRtZW51LXNlcGFyYXRvciB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xcbiAgICBtYXJnaW46IDVweCAwO1xcbn1cXG5cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2xlYWZsZXQtY29udGV4dG1lbnUvZGlzdC9sZWFmbGV0LmNvbnRleHRtZW51LmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFBQTtJQUNJLGFBQWE7SUFDYixxQ0FBcUM7SUFFckMsa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxzQkFBc0I7SUFDdEIsZUFBZTtJQUNmLHlCQUF5QjtJQUN6QixzQkFBc0I7SUFDdEIsaUJBQWlCO0FBQ3JCOztBQUVBO0lBQ0ksY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlO0lBQ2YsaUJBQWlCO0lBQ2pCLHFCQUFxQjtJQUNyQixlQUFlO0lBQ2YsaUNBQWlDO0lBQ2pDLG9DQUFvQztJQUNwQyxlQUFlO0lBQ2YsYUFBYTtBQUNqQjs7QUFFQTtJQUNJLFlBQVk7QUFDaEI7O0FBRUE7SUFDSSx5QkFBeUI7SUFDekIsNkJBQTZCO0lBQzdCLGdDQUFnQztBQUNwQzs7QUFFQTtJQUNJLHlCQUF5QjtJQUN6QixpQ0FBaUM7SUFDakMsb0NBQW9DO0FBQ3hDOztBQUVBO0lBQ0ksbUJBQW1CO0lBQ25CLFdBQVc7SUFDWCxZQUFZO0lBQ1osV0FBVztJQUNYLFNBQVM7QUFDYjs7QUFFQTtJQUNJLDZCQUE2QjtJQUM3QixhQUFhO0FBQ2pCXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIi5sZWFmbGV0LWNvbnRleHRtZW51IHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gICAgYm94LXNoYWRvdzogMCAxcHggN3B4IHJnYmEoMCwwLDAsMC40KTtcXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcXG4gICAgcGFkZGluZzogNHB4IDA7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XFxufVxcblxcbi5sZWFmbGV0LWNvbnRleHRtZW51IGEubGVhZmxldC1jb250ZXh0bWVudS1pdGVtIHtcXG4gICAgZGlzcGxheTogYmxvY2s7XFxuICAgIGNvbG9yOiAjMjIyO1xcbiAgICBmb250LXNpemU6IDEycHg7XFxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICAgIHBhZGRpbmc6IDAgMTJweDtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIGN1cnNvcjogZGVmYXVsdDtcXG4gICAgb3V0bGluZTogbm9uZTtcXG59XFxuXFxuLmxlYWZsZXQtY29udGV4dG1lbnUgYS5sZWFmbGV0LWNvbnRleHRtZW51LWl0ZW0tZGlzYWJsZWQge1xcbiAgICBvcGFjaXR5OiAwLjU7XFxufVxcblxcbi5sZWFmbGV0LWNvbnRleHRtZW51IGEubGVhZmxldC1jb250ZXh0bWVudS1pdGVtLm92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjBmMDtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XFxufVxcblxcbi5sZWFmbGV0LWNvbnRleHRtZW51IGEubGVhZmxldC1jb250ZXh0bWVudS1pdGVtLWRpc2FibGVkLm92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmxlYWZsZXQtY29udGV4dG1lbnUtaWNvbiB7XFxuICAgIG1hcmdpbjogMnB4IDhweCAwIDA7XFxuICAgIHdpZHRoOiAxNnB4O1xcbiAgICBoZWlnaHQ6IDE2cHg7XFxuICAgIGZsb2F0OiBsZWZ0O1xcbiAgICBib3JkZXI6IDA7XFxufVxcblxcbi5sZWFmbGV0LWNvbnRleHRtZW51LXNlcGFyYXRvciB7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xcbiAgICBtYXJnaW46IDVweCAwO1xcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[2]!./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.css\n")); + +/***/ }), + /***/ "./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[2]!./node_modules/leaflet/dist/leaflet.css": /*!*****************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[2]!./node_modules/leaflet/dist/leaflet.css ***! @@ -29,6 +50,16 @@ eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* har /***/ }), +/***/ "./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.css": +/*!***********************************************************************!*\ + !*** ./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.css ***! + \***********************************************************************/ +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +eval(__webpack_require__.ts("var api = __webpack_require__(/*! !../../next/dist/build/webpack/loaders/next-style-loader/runtime/injectStylesIntoStyleTag.js */ \"./node_modules/next/dist/build/webpack/loaders/next-style-loader/runtime/injectStylesIntoStyleTag.js\");\n var content = __webpack_require__(/*! !!../../next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[1]!../../next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[2]!./leaflet.contextmenu.css */ \"./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[6].oneOf[12].use[2]!./node_modules/leaflet-contextmenu/dist/leaflet.contextmenu.css\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = function(element) {\n // By default, style-loader injects CSS into the bottom\n // of . This causes ordering problems between dev\n // and prod. To fix this, we render a