From 1fc55cc5cd733994c15423b2c5dc4cf371175174 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20LeBlanc?= Date: Fri, 8 Nov 2019 13:00:38 -0500 Subject: [PATCH 1/3] Fix elmarquis/Leaflet.GestureHandling#44 --- src/js/leaflet-gesture-handling.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/js/leaflet-gesture-handling.js b/src/js/leaflet-gesture-handling.js index 9b18a4f..33afa6d 100644 --- a/src/js/leaflet-gesture-handling.js +++ b/src/js/leaflet-gesture-handling.js @@ -16,6 +16,8 @@ var draggingMap = false; export var GestureHandling = L.Handler.extend({ addHooks: function() { this._handleTouch = this._handleTouch.bind(this); + this._handleMouseOver = this._handleMouseOver.bind(this); + this._handleMouseOut = this._handleMouseOut.bind(this); this._setupPluginOptions(); this._setLanguageContent(); @@ -35,8 +37,8 @@ export var GestureHandling = L.Handler.extend({ this._handleScroll, this ); - L.DomEvent.on(this._map, "mouseover", this._handleMouseOver, this); - L.DomEvent.on(this._map, "mouseout", this._handleMouseOut, this); + this._map._container.addEventListener("mouseenter", this._handleMouseOver); + this._map._container.addEventListener("mouseleave", this._handleMouseOut); // Listen to these events so will not disable dragging if the user moves the mouse out the boundary of the map container whilst actively dragging the map. L.DomEvent.on(this._map, "movestart", this._handleDragging, this); @@ -68,8 +70,8 @@ export var GestureHandling = L.Handler.extend({ this._handleScroll, this ); - L.DomEvent.off(this._map, "mouseover", this._handleMouseOver, this); - L.DomEvent.off(this._map, "mouseout", this._handleMouseOut, this); + this._map._container.addEventListener("mouseenter", this._handleMouseOver); + this._map._container.addEventListener("mouseleave", this._handleMouseOut); L.DomEvent.off(this._map, "movestart", this._handleDragging, this); L.DomEvent.off(this._map, "move", this._handleDragging, this); From 6281d52a32b9fba4782624c3fb8a0970763b0dc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20LeBlanc?= Date: Fri, 8 Nov 2019 13:00:52 -0500 Subject: [PATCH 2/3] Fix elmarquis/Leaflet.GestureHandling#34 --- src/scss/leaflet-gesture-handling.scss | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/scss/leaflet-gesture-handling.scss b/src/scss/leaflet-gesture-handling.scss index b451849..5600627 100644 --- a/src/scss/leaflet-gesture-handling.scss +++ b/src/scss/leaflet-gesture-handling.scss @@ -16,6 +16,7 @@ justify-content: center; display: flex; align-items: center; + text-align: center; padding: 15px; position: absolute; top: 0; @@ -24,7 +25,7 @@ bottom: 0; background: rgba(0, 0, 0, 0.5); z-index: 461; - pointer-events:none; + pointer-events: none; } } From c78f7414c8615a56d4eab54f4be5b9b34149afec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20LeBlanc?= Date: Fri, 8 Nov 2019 13:04:15 -0500 Subject: [PATCH 3/3] v1.1.9 --- README.md | 2 +- dist/leaflet-gesture-handling.css | 1 + dist/leaflet-gesture-handling.js | 12 +++++++----- dist/leaflet-gesture-handling.min.css | 2 +- dist/leaflet-gesture-handling.min.js | 2 +- dist/leaflet-gesture-handling.min.js.map | 2 +- package.json | 2 +- src/js/leaflet-gesture-handling.js | 2 +- 8 files changed, 14 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 6ef3f60..09cb8e1 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Leaflet.GestureHandling -Version 1.1.8 +Version 1.1.9 Brings the basic functionality of [Google Maps Gesture Handling](https://developers.google.com/maps/documentation/javascript/examples/interaction-cooperative) into Leaflet. diff --git a/dist/leaflet-gesture-handling.css b/dist/leaflet-gesture-handling.css index 3f959de..35b5107 100644 --- a/dist/leaflet-gesture-handling.css +++ b/dist/leaflet-gesture-handling.css @@ -25,6 +25,7 @@ -webkit-box-align: center; -ms-flex-align: center; align-items: center; + text-align: center; padding: 15px; position: absolute; top: 0; diff --git a/dist/leaflet-gesture-handling.js b/dist/leaflet-gesture-handling.js index d9bb5e2..e823ddf 100644 --- a/dist/leaflet-gesture-handling.js +++ b/dist/leaflet-gesture-handling.js @@ -327,7 +327,7 @@ /* * * Leaflet Gesture Handling ** - * * Version 1.1.8 + * * Version 1.1.9 */ L.Map.mergeOptions({ @@ -342,6 +342,8 @@ var GestureHandling = L.Handler.extend({ addHooks: function () { this._handleTouch = this._handleTouch.bind(this); + this._handleMouseOver = this._handleMouseOver.bind(this); + this._handleMouseOut = this._handleMouseOut.bind(this); this._setupPluginOptions(); this._setLanguageContent(); @@ -356,8 +358,8 @@ this._map._container.addEventListener("click", this._handleTouch); L.DomEvent.on(this._map._container, "mousewheel", this._handleScroll, this); - L.DomEvent.on(this._map, "mouseover", this._handleMouseOver, this); - L.DomEvent.on(this._map, "mouseout", this._handleMouseOut, this); + this._map._container.addEventListener("mouseenter", this._handleMouseOver); + this._map._container.addEventListener("mouseleave", this._handleMouseOut); // Listen to these events so will not disable dragging if the user moves the mouse out the boundary of the map container whilst actively dragging the map. L.DomEvent.on(this._map, "movestart", this._handleDragging, this); @@ -375,8 +377,8 @@ this._map._container.removeEventListener("click", this._handleTouch); L.DomEvent.off(this._map._container, "mousewheel", this._handleScroll, this); - L.DomEvent.off(this._map, "mouseover", this._handleMouseOver, this); - L.DomEvent.off(this._map, "mouseout", this._handleMouseOut, this); + this._map._container.addEventListener("mouseenter", this._handleMouseOver); + this._map._container.addEventListener("mouseleave", this._handleMouseOut); L.DomEvent.off(this._map, "movestart", this._handleDragging, this); L.DomEvent.off(this._map, "move", this._handleDragging, this); diff --git a/dist/leaflet-gesture-handling.min.css b/dist/leaflet-gesture-handling.min.css index 7cbdcfc..abc95ce 100644 --- a/dist/leaflet-gesture-handling.min.css +++ b/dist/leaflet-gesture-handling.min.css @@ -1 +1 @@ -@-webkit-keyframes leaflet-gestures-fadein{0%{opacity:0}100%{opacity:1}}@keyframes leaflet-gestures-fadein{0%{opacity:0}100%{opacity:1}}.leaflet-container:after{-webkit-animation:leaflet-gestures-fadein .8s backwards;animation:leaflet-gestures-fadein .8s backwards;color:#fff;font-family:Roboto,Arial,sans-serif;font-size:22px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:15px;position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:461;pointer-events:none}.leaflet-gesture-handling-scroll-warning:after,.leaflet-gesture-handling-touch-warning:after{-webkit-animation:leaflet-gestures-fadein .8s forwards;animation:leaflet-gestures-fadein .8s forwards}.leaflet-gesture-handling-touch-warning:after{content:attr(data-gesture-handling-touch-content)}.leaflet-gesture-handling-scroll-warning:after{content:attr(data-gesture-handling-scroll-content)} \ No newline at end of file +@-webkit-keyframes leaflet-gestures-fadein{0%{opacity:0}100%{opacity:1}}@keyframes leaflet-gestures-fadein{0%{opacity:0}100%{opacity:1}}.leaflet-container:after{-webkit-animation:leaflet-gestures-fadein .8s backwards;animation:leaflet-gestures-fadein .8s backwards;color:#fff;font-family:Roboto,Arial,sans-serif;font-size:22px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center;padding:15px;position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:461;pointer-events:none}.leaflet-gesture-handling-scroll-warning:after,.leaflet-gesture-handling-touch-warning:after{-webkit-animation:leaflet-gestures-fadein .8s forwards;animation:leaflet-gestures-fadein .8s forwards}.leaflet-gesture-handling-touch-warning:after{content:attr(data-gesture-handling-touch-content)}.leaflet-gesture-handling-scroll-warning:after{content:attr(data-gesture-handling-scroll-content)} \ No newline at end of file diff --git a/dist/leaflet-gesture-handling.min.js b/dist/leaflet-gesture-handling.min.js index 5d832af..15cbe3b 100644 --- a/dist/leaflet-gesture-handling.min.js +++ b/dist/leaflet-gesture-handling.min.js @@ -1,2 +1,2 @@ -!function(a,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define("leafletGestureHandling",["exports"],t):t(a.leafletGestureHandling={})}(this,function(a){"use strict";var o={ar:{touch:"استخدم إصبعين لتحريك الخريطة",scroll:"‏استخدم ctrl + scroll لتصغير/تكبير الخريطة",scrollMac:"يمكنك استخدام ⌘ + التمرير لتكبير/تصغير الخريطة"},bg:{touch:"Използвайте два пръста, за да преместите картата",scroll:"Задръжте бутона Ctrl натиснат, докато превъртате, за да промените мащаба на картата",scrollMac:"Задръжте бутона ⌘ натиснат, докато превъртате, за да промените мащаба на картата"},bn:{touch:"মানচিত্রটিকে সরাতে দুটি আঙ্গুল ব্যবহার করুন",scroll:"ম্যাপ জুম করতে ctrl + scroll ব্যবহার করুন",scrollMac:"ম্যাপে জুম করতে ⌘ বোতাম টিপে স্ক্রল করুন"},ca:{touch:"Fes servir dos dits per moure el mapa",scroll:"Prem la tecla Control mentre et desplaces per apropar i allunyar el mapa",scrollMac:"Prem la tecla ⌘ mentre et desplaces per apropar i allunyar el mapa"},cs:{touch:"K posunutí mapy použijte dva prsty",scroll:"Velikost zobrazení mapy změňte podržením klávesy Ctrl a posouváním kolečka myši",scrollMac:"Velikost zobrazení mapy změníte podržením klávesy ⌘ a posunutím kolečka myši / touchpadu"},da:{touch:"Brug to fingre til at flytte kortet",scroll:"Brug ctrl + rullefunktionen til at zoome ind og ud på kortet",scrollMac:"Brug ⌘ + rullefunktionen til at zoome ind og ud på kortet"},de:{touch:"Verschieben der Karte mit zwei Fingern",scroll:"Verwende Strg+Scrollen zum Zoomen der Karte",scrollMac:"⌘"},el:{touch:"Χρησιμοποιήστε δύο δάχτυλα για μετακίνηση στον χάρτη",scroll:"Χρησιμοποιήστε το πλήκτρο Ctrl και κύλιση, για να μεγεθύνετε τον χάρτη",scrollMac:"Χρησιμοποιήστε το πλήκτρο ⌘ + κύλιση για εστίαση στον χάρτη"},en:{touch:"Use two fingers to move the map",scroll:"Use ctrl + scroll to zoom the map",scrollMac:"Use ⌘ + scroll to zoom the map"},"en-AU":{touch:"Use two fingers to move the map",scroll:"Use ctrl + scroll to zoom the map",scrollMac:"Use ⌘ + scroll to zoom the map"},"en-GB":{touch:"Use two fingers to move the map",scroll:"Use ctrl + scroll to zoom the map",scrollMac:"Use ⌘ + scroll to zoom the map"},es:{touch:"Para mover el mapa, utiliza dos dedos",scroll:"Mantén pulsada la tecla Ctrl mientras te desplazas para acercar o alejar el mapa",scrollMac:"Mantén pulsada la tecla ⌘ mientras te desplazas para acercar o alejar el mapa"},eu:{touch:"Erabili bi hatz mapa mugitzeko",scroll:"Mapan zooma aplikatzeko, sakatu Ktrl eta egin gora edo behera",scrollMac:"Eduki sakatuta ⌘ eta egin gora eta behera mapa handitu eta txikitzeko"},fa:{touch:"برای حرکت دادن نقشه از دو انگشت استفاده کنید.",scroll:"‏برای بزرگ‌نمایی نقشه از ctrl + scroll استفاده کنید",scrollMac:"برای بزرگ‌نمایی نقشه، از ⌘ + پیمایش استفاده کنید."},fi:{touch:"Siirrä karttaa kahdella sormella.",scroll:"Zoomaa karttaa painamalla Ctrl-painiketta ja vierittämällä.",scrollMac:"Zoomaa karttaa pitämällä painike ⌘ painettuna ja vierittämällä."},fil:{touch:"Gumamit ng dalawang daliri upang iusog ang mapa",scroll:"Gamitin ang ctrl + scroll upang i-zoom ang mapa",scrollMac:"Gamitin ang ⌘ + scroll upang i-zoom ang mapa"},fr:{touch:"Utilisez deux doigts pour déplacer la carte",scroll:"Vous pouvez zoomer sur la carte à l'aide de CTRL+Molette de défilement",scrollMac:"Vous pouvez zoomer sur la carte à l'aide de ⌘+Molette de défilement"},gl:{touch:"Utiliza dous dedos para mover o mapa",scroll:"Preme Ctrl mentres te desprazas para ampliar o mapa",scrollMac:"Preme ⌘ e desprázate para ampliar o mapa"},gu:{touch:"નકશો ખસેડવા બે આંગળીઓનો ઉપયોગ કરો",scroll:"નકશાને ઝૂમ કરવા માટે ctrl + સ્ક્રોલનો ઉપયોગ કરો",scrollMac:"નકશાને ઝૂમ કરવા ⌘ + સ્ક્રોલનો ઉપયોગ કરો"},hi:{touch:"मैप एक जगह से दूसरी जगह ले जाने के लिए दो उंगलियों का इस्तेमाल करें",scroll:"मैप को ज़ूम करने के लिए ctrl + स्क्रोल का उपयोग करें",scrollMac:"मैप को ज़ूम करने के लिए ⌘ + स्क्रोल का उपयोग करें"},hr:{touch:"Pomičite kartu pomoću dva prsta",scroll:"Upotrijebite Ctrl i klizač miša da biste zumirali kartu",scrollMac:"Upotrijebite gumb ⌘ dok se pomičete za zumiranje karte"},hu:{touch:"Két ujjal mozgassa a térképet",scroll:"A térkép a ctrl + görgetés használatával nagyítható",scrollMac:"A térkép a ⌘ + görgetés használatával nagyítható"},id:{touch:"Gunakan dua jari untuk menggerakkan peta",scroll:"Gunakan ctrl + scroll untuk memperbesar atau memperkecil peta",scrollMac:"Gunakan ⌘ + scroll untuk memperbesar atau memperkecil peta"},it:{touch:"Utilizza due dita per spostare la mappa",scroll:"Utilizza CTRL + scorrimento per eseguire lo zoom della mappa",scrollMac:"Utilizza ⌘ + scorrimento per eseguire lo zoom della mappa"},iw:{touch:"הזז את המפה באמצעות שתי אצבעות",scroll:"‏אפשר לשנות את מרחק התצוגה במפה באמצעות מקש ctrl וגלילה",scrollMac:"אפשר לשנות את מרחק התצוגה במפה באמצעות מקש ⌘ וגלילה"},ja:{touch:"地図を移動させるには指 2 本で操作します",scroll:"地図をズームするには、Ctrl キーを押しながらスクロールしてください",scrollMac:"地図をズームするには、⌘ キーを押しながらスクロールしてください"},kn:{touch:"Use two fingers to move the map",scroll:"Use Ctrl + scroll to zoom the map",scrollMac:"Use ⌘ + scroll to zoom the map"},ko:{touch:"지도를 움직이려면 두 손가락을 사용하세요.",scroll:"지도를 확대/축소하려면 Ctrl을 누른 채 스크롤하세요.",scrollMac:"지도를 확대하려면 ⌘ + 스크롤 사용"},lt:{touch:"Perkelkite žemėlapį dviem pirštais",scroll:"Slinkite nuspaudę klavišą „Ctrl“, kad pakeistumėte žemėlapio mastelį",scrollMac:"Paspauskite klavišą ⌘ ir slinkite, kad priartintumėte žemėlapį"},lv:{touch:"Lai pārvietotu karti, bīdiet to ar diviem pirkstiem",scroll:"Kartes tālummaiņai izmantojiet ctrl + ritināšanu",scrollMac:"Lai veiktu kartes tālummaiņu, izmantojiet ⌘ + ritināšanu"},ml:{touch:"മാപ്പ് നീക്കാൻ രണ്ട് വിരലുകൾ ഉപയോഗിക്കുക",scroll:"കൺട്രോൾ + സ്‌ക്രോൾ ഉപയോഗിച്ച് ‌മാപ്പ് ‌സൂം ചെയ്യുക",scrollMac:"⌘ + സ്‌ക്രോൾ ഉപയോഗിച്ച് ‌മാപ്പ് ‌സൂം ചെയ്യുക"},mr:{touch:"नकाशा हलविण्यासाठी दोन बोटे वापरा",scroll:"नकाशा झूम करण्यासाठी ctrl + scroll वापरा",scrollMac:"नकाशावर झूम करण्यासाठी ⌘ + स्क्रोल वापरा"},nl:{touch:"Gebruik twee vingers om de kaart te verplaatsen",scroll:"Gebruik Ctrl + scrollen om in- en uit te zoomen op de kaart",scrollMac:"Gebruik ⌘ + scrollen om in en uit te zoomen op de kaart"},no:{touch:"Bruk to fingre for å flytte kartet",scroll:"Hold ctrl-tasten inne og rull for å zoome på kartet",scrollMac:"Hold inne ⌘-tasten og rull for å zoome på kartet"},pl:{touch:"Przesuń mapę dwoma palcami",scroll:"Naciśnij CTRL i przewiń, by przybliżyć mapę",scrollMac:"Naciśnij ⌘ i przewiń, by przybliżyć mapę"},pt:{touch:"Use dois dedos para mover o mapa",scroll:"Pressione Ctrl e role a tela simultaneamente para aplicar zoom no mapa",scrollMac:"Use ⌘ e role a tela simultaneamente para aplicar zoom no mapa"},"pt-BR":{touch:"Use dois dedos para mover o mapa",scroll:"Pressione Ctrl e role a tela simultaneamente para aplicar zoom no mapa",scrollMac:"Use ⌘ e role a tela simultaneamente para aplicar zoom no mapa"},"pt-PT":{touch:"Utilize dois dedos para mover o mapa",scroll:"Utilizar ctrl + deslocar para aumentar/diminuir zoom do mapa",scrollMac:"Utilize ⌘ + deslocar para aumentar/diminuir o zoom do mapa"},ro:{touch:"Folosiți două degete pentru a deplasa harta",scroll:"Apăsați tasta ctrl și derulați simultan pentru a mări harta",scrollMac:"Folosiți ⌘ și derulați pentru a mări/micșora harta"},ru:{touch:"Чтобы переместить карту, проведите по ней двумя пальцами",scroll:"Чтобы изменить масштаб, прокручивайте карту, удерживая клавишу Ctrl.",scrollMac:"Чтобы изменить масштаб, нажмите ⌘ + прокрутка"},sk:{touch:"Mapu môžete posunúť dvoma prstami",scroll:"Ak chcete priblížiť mapu, stlačte kláves ctrl a posúvajte",scrollMac:"Ak chcete priblížiť mapu, stlačte kláves ⌘ a posúvajte kolieskom myši"},sl:{touch:"Premaknite zemljevid z dvema prstoma",scroll:"Zemljevid povečate tako, da držite tipko Ctrl in vrtite kolesce na miški",scrollMac:"Uporabite ⌘ + funkcijo pomika, da povečate ali pomanjšate zemljevid"},sr:{touch:"Мапу померајте помоћу два прста",scroll:"Притисните ctrl тастер док померате да бисте зумирали мапу",scrollMac:"Притисните тастер ⌘ док померате да бисте зумирали мапу"},sv:{touch:"Använd två fingrar för att flytta kartan",scroll:"Använd ctrl + rulla för att zooma kartan",scrollMac:"Använd ⌘ + rulla för att zooma på kartan"},ta:{touch:"மேப்பை நகர்த்த இரண்டு விரல்களைப் பயன்படுத்தவும்",scroll:"மேப்பை பெரிதாக்கி/சிறிதாக்கிப் பார்க்க, ctrl பட்டனைப் பிடித்தபடி, மேலே/கீழே ஸ்க்ரால் செய்யவும்",scrollMac:"மேப்பை பெரிதாக்கி/சிறிதாக்கிப் பார்க்க, ⌘ பட்டனைப் பிடித்தபடி, மேலே/கீழே ஸ்க்ரால் செய்யவும்"},te:{touch:"మ్యాప్‌ని తరలించడం కోసం రెండు వేళ్లను ఉపయోగించండి",scroll:"మ్యాప్‌ని జూమ్ చేయడానికి ctrl బటన్‌ను నొక్కి ఉంచి, స్క్రోల్ చేయండి",scrollMac:"మ్యాప్ జూమ్ చేయాలంటే ⌘ + స్క్రోల్ ఉపయోగించండి"},th:{touch:"ใช้ 2 นิ้วเพื่อเลื่อนแผนที่",scroll:"กด Ctrl ค้างไว้ แล้วเลื่อนหน้าจอเพื่อซูมแผนที่",scrollMac:"กด ⌘ แล้วเลื่อนหน้าจอเพื่อซูมแผนที่"},tl:{touch:"Gumamit ng dalawang daliri upang iusog ang mapa",scroll:"Gamitin ang ctrl + scroll upang i-zoom ang mapa",scrollMac:"Gamitin ang ⌘ + scroll upang i-zoom ang mapa"},tr:{touch:"Haritada gezinmek için iki parmağınızı kullanın",scroll:"Haritayı yakınlaştırmak için ctrl + kaydırma kombinasyonunu kullanın",scrollMac:"Haritayı yakınlaştırmak için ⌘ tuşuna basıp ekranı kaydırın"},uk:{touch:"Переміщуйте карту двома пальцями",scroll:"Щоб змінювати масштаб карти, прокручуйте коліщатко миші, утримуючи клавішу Ctrl",scrollMac:"Щоб змінити масштаб карти, використовуйте ⌘ + прокручування"},vi:{touch:"Sử dụng hai ngón tay để di chuyển bản đồ",scroll:"Sử dụng ctrl + cuộn để thu phóng bản đồ",scrollMac:"Sử dụng ⌘ + cuộn để thu phóng bản đồ"},"zh-CN":{touch:"使用双指移动地图",scroll:"按住 Ctrl 并滚动鼠标滚轮才可缩放地图",scrollMac:"按住 ⌘ 并滚动鼠标滚轮才可缩放地图"},"zh-TW":{touch:"同時以兩指移動地圖",scroll:"按住 ctrl 鍵加上捲動滑鼠可以縮放地圖",scrollMac:"按 ⌘ 加上滾動捲軸可以縮放地圖"}};L.Map.mergeOptions({gestureHandlingOptions:{text:{},duration:1e3}});var t=!1,e=L.Handler.extend({addHooks:function(){this._handleTouch=this._handleTouch.bind(this),this._setupPluginOptions(),this._setLanguageContent(),this._disableInteractions(),this._map._container.addEventListener("touchstart",this._handleTouch),this._map._container.addEventListener("touchmove",this._handleTouch),this._map._container.addEventListener("touchend",this._handleTouch),this._map._container.addEventListener("touchcancel",this._handleTouch),this._map._container.addEventListener("click",this._handleTouch),L.DomEvent.on(this._map._container,"mousewheel",this._handleScroll,this),L.DomEvent.on(this._map,"mouseover",this._handleMouseOver,this),L.DomEvent.on(this._map,"mouseout",this._handleMouseOut,this),L.DomEvent.on(this._map,"movestart",this._handleDragging,this),L.DomEvent.on(this._map,"move",this._handleDragging,this),L.DomEvent.on(this._map,"moveend",this._handleDragging,this)},removeHooks:function(){this._enableInteractions(),this._map._container.removeEventListener("touchstart",this._handleTouch),this._map._container.removeEventListener("touchmove",this._handleTouch),this._map._container.removeEventListener("touchend",this._handleTouch),this._map._container.removeEventListener("touchcancel",this._handleTouch),this._map._container.removeEventListener("click",this._handleTouch),L.DomEvent.off(this._map._container,"mousewheel",this._handleScroll,this),L.DomEvent.off(this._map,"mouseover",this._handleMouseOver,this),L.DomEvent.off(this._map,"mouseout",this._handleMouseOut,this),L.DomEvent.off(this._map,"movestart",this._handleDragging,this),L.DomEvent.off(this._map,"move",this._handleDragging,this),L.DomEvent.off(this._map,"moveend",this._handleDragging,this)},_handleDragging:function(a){"movestart"==a.type||"move"==a.type?t=!0:"moveend"==a.type&&(t=!1)},_disableInteractions:function(){this._map.dragging.disable(),this._map.scrollWheelZoom.disable(),this._map.tap&&this._map.tap.disable()},_enableInteractions:function(){this._map.dragging.enable(),this._map.scrollWheelZoom.enable(),this._map.tap&&this._map.tap.enable()},_setupPluginOptions:function(){this._map.options.gestureHandlingText&&(this._map.options.gestureHandlingOptions.text=this._map.options.gestureHandlingText)},_setLanguageContent:function(){var a;if(this._map.options.gestureHandlingOptions&&this._map.options.gestureHandlingOptions.text&&this._map.options.gestureHandlingOptions.text.touch&&this._map.options.gestureHandlingOptions.text.scroll&&this._map.options.gestureHandlingOptions.text.scrollMac)a=this._map.options.gestureHandlingOptions.text;else{var t=this._getUserLanguage();t||(t="en"),o[t]&&(a=o[t]),a||-1===t.indexOf("-")||(t=t.split("-")[0],a=o[t]),a||(a=o[t="en"])}var e=!1;0<=navigator.platform.toUpperCase().indexOf("MAC")&&(e=!0);var l=a.scroll;e&&(l=a.scrollMac),this._map._container.setAttribute("data-gesture-handling-touch-content",a.touch),this._map._container.setAttribute("data-gesture-handling-scroll-content",l)},_getUserLanguage:function(){return navigator.languages?navigator.languages[0]:navigator.language||navigator.userLanguage},_handleTouch:function(a){for(var t=["leaflet-control-minimap","leaflet-interactive","leaflet-popup-content","leaflet-popup-content-wrapper","leaflet-popup-close-button","leaflet-control-zoom-in","leaflet-control-zoom-out"],e=!1,l=0;l= 0) {\n mac = true;\n }\n\n var scrollContent = languageContent.scroll;\n if (mac) {\n scrollContent = languageContent.scrollMac;\n }\n\n this._map._container.setAttribute(\n \"data-gesture-handling-touch-content\",\n languageContent.touch\n );\n this._map._container.setAttribute(\n \"data-gesture-handling-scroll-content\",\n scrollContent\n );\n },\n\n _getUserLanguage: function() {\n var lang = navigator.languages\n ? navigator.languages[0]\n : navigator.language || navigator.userLanguage;\n return lang;\n },\n\n _handleTouch: function(e) {\n //Disregard touch events on the minimap if present\n var ignoreList = [\n \"leaflet-control-minimap\",\n \"leaflet-interactive\",\n \"leaflet-popup-content\",\n \"leaflet-popup-content-wrapper\",\n \"leaflet-popup-close-button\",\n \"leaflet-control-zoom-in\",\n \"leaflet-control-zoom-out\"\n ];\n\n var ignoreElement = false;\n for (var i = 0; i < ignoreList.length; i++) {\n if (L.DomUtil.hasClass(e.target, ignoreList[i])) {\n ignoreElement = true;\n }\n }\n\n if (ignoreElement) {\n if (\n L.DomUtil.hasClass(e.target, \"leaflet-interactive\") &&\n e.type === \"touchmove\" &&\n e.touches.length === 1\n ) {\n L.DomUtil.addClass(this._map._container,\n \"leaflet-gesture-handling-touch-warning\"\n );\n this._disableInteractions();\n } else {\n L.DomUtil.removeClass(this._map._container, \n \"leaflet-gesture-handling-touch-warning\"\n );\n }\n return;\n }\n // screenLog(e.type+' '+e.touches.length);\n if (e.type !== \"touchmove\" && e.type !== \"touchstart\") {\n L.DomUtil.removeClass(this._map._container,\n \"leaflet-gesture-handling-touch-warning\"\n );\n return;\n }\n if (e.touches.length === 1) {\n L.DomUtil.addClass(this._map._container, \n \"leaflet-gesture-handling-touch-warning\"\n );\n this._disableInteractions();\n } else {\n this._enableInteractions();\n L.DomUtil.removeClass(this._map._container, \n \"leaflet-gesture-handling-touch-warning\"\n );\n }\n },\n\n _isScrolling: false,\n\n _handleScroll: function(e) {\n if (e.metaKey || e.ctrlKey) {\n e.preventDefault();\n L.DomUtil.removeClass(this._map._container,\n \"leaflet-gesture-handling-scroll-warning\"\n );\n this._map.scrollWheelZoom.enable();\n } else {\n L.DomUtil.addClass(this._map._container,\n \"leaflet-gesture-handling-scroll-warning\"\n );\n this._map.scrollWheelZoom.disable();\n\n clearTimeout(this._isScrolling);\n\n // Set a timeout to run after scrolling ends\n this._isScrolling = setTimeout(function() {\n // Run the callback\n var warnings = document.getElementsByClassName(\n \"leaflet-gesture-handling-scroll-warning\"\n );\n for (var i = 0; i < warnings.length; i++) {\n L.DomUtil.removeClass(warnings[i],\n \"leaflet-gesture-handling-scroll-warning\"\n );\n }\n }, this._map.options.gestureHandlingOptions.duration);\n }\n },\n\n _handleMouseOver: function(e) {\n this._enableInteractions();\n },\n\n _handleMouseOut: function(e) {\n if (!draggingMap) {\n this._disableInteractions();\n }\n }\n\n});\n\nL.Map.addInitHook(\"addHandler\", \"gestureHandling\", GestureHandling);\n\nexport default GestureHandling;\n"]} \ No newline at end of file +{"version":3,"sources":["../src/js/language-content.js","../src/js/leaflet-gesture-handling.js"],"names":["LanguageContent","ar","touch","scroll","scrollMac","bg","bn","ca","cs","da","de","el","en","en-AU","en-GB","es","eu","fa","fi","fil","fr","gl","gu","hi","hr","hu","id","it","iw","ja","kn","ko","lt","lv","ml","mr","nl","no","pl","pt","pt-BR","pt-PT","ro","ru","sk","sl","sr","sv","ta","te","th","tl","tr","uk","vi","zh-CN","zh-TW","L","Map","mergeOptions","gestureHandlingOptions","text","duration","draggingMap","GestureHandling","Handler","extend","addHooks","this","_handleTouch","bind","_handleMouseOver","_handleMouseOut","_setupPluginOptions","_setLanguageContent","_disableInteractions","_map","_container","addEventListener","DomEvent","on","_handleScroll","_handleDragging","removeHooks","_enableInteractions","removeEventListener","off","e","type","dragging","disable","scrollWheelZoom","tap","enable","options","gestureHandlingText","languageContent","lang","_getUserLanguage","indexOf","split","mac","navigator","platform","toUpperCase","scrollContent","setAttribute","languages","language","userLanguage","ignoreList","ignoreElement","i","length","DomUtil","hasClass","target","touches","addClass","removeClass","_isScrolling","metaKey","ctrlKey","preventDefault","clearTimeout","setTimeout","warnings","document","getElementsByClassName","addInitHook"],"mappings":"kOAAA,IAAAA,GAEIC,IACIC,MACI,+BACJC,OACI,6CACJC,UACI,kDAGRC,IACIH,MACI,mDACJC,OACI,sFACJC,UACI,oFAGRE,IACIJ,MACI,8CACJC,OACI,4CACJC,UACI,4CAGRG,IACIL,MAAO,wCACPC,OACI,2EACJC,UACI,sEAGRI,IACIN,MAAO,qCACPC,OACI,kFACJC,UACI,4FAGRK,IACIP,MAAO,sCACPC,OACI,+DACJC,UACI,6DAGRM,IACIR,MAAO,yCACPC,OAAQ,8CACRC,UAAW,KAGfO,IACIT,MACI,uDACJC,OACI,yEACJC,UACI,+DAGRQ,IACIV,MAAO,kCACPC,OAAQ,oCACRC,UAAW,kCAGfS,SACIX,MAAO,kCACPC,OAAQ,oCACRC,UAAW,kCAGfU,SACIZ,MAAO,kCACPC,OAAQ,oCACRC,UAAW,kCAGfW,IACIb,MAAO,wCACPC,OACI,mFACJC,UACI,iFAGRY,IACId,MAAO,iCACPC,OAAQ,gEACRC,UACI,yEAGRa,IACIf,MACI,gDACJC,OACI,sDACJC,UACI,qDAGRc,IACIhB,MAAO,oCACPC,OACI,8DACJC,UACI,mEAGRe,KACIjB,MAAO,kDACPC,OAAQ,kDACRC,UAAW,gDAGfgB,IACIlB,MAAO,8CACPC,OACI,yEACJC,UACI,uEAGRiB,IACInB,MAAO,uCACPC,OAAQ,sDACRC,UAAW,4CAGfkB,IACIpB,MACI,oCACJC,OACI,kDACJC,UACI,2CAGRmB,IACIrB,MACI,sEACJC,OACI,uDACJC,UACI,qDAGRoB,IACItB,MAAO,kCACPC,OACI,0DACJC,UACI,0DAGRqB,IACIvB,MAAO,gCACPC,OACI,sDACJC,UACI,oDAGRsB,IACIxB,MAAO,2CACPC,OAAQ,gEACRC,UACI,8DAGRuB,IACIzB,MAAO,0CACPC,OAAQ,+DACRC,UACI,6DAGRwB,IACI1B,MACI,iCACJC,OACI,0DACJC,UACI,uDAGRyB,IACI3B,MACI,wBACJC,OACI,sCACJC,UACI,oCAGR0B,IACI5B,MAAO,kCACPC,OAAQ,oCACRC,UAAW,kCAGf2B,IACI7B,MACI,0BACJC,OACI,kCACJC,UACI,wBAGR4B,IACI9B,MAAO,qCACPC,OACI,uEACJC,UACI,kEAGR6B,IACI/B,MAAO,sDACPC,OACI,mDACJC,UACI,4DAGR8B,IACIhC,MACI,2CACJC,OACI,qDACJC,UACI,gDAGR+B,IACIjC,MACI,oCACJC,OACI,2CACJC,UACI,4CAGRgC,IACIlC,MAAO,kDACPC,OAAQ,8DACRC,UACI,2DAGRiC,IACInC,MAAO,qCACPC,OAAQ,sDACRC,UACI,oDAGRkC,IACIpC,MAAO,6BACPC,OACI,8CACJC,UACI,4CAGRmC,IACIrC,MAAO,mCACPC,OACI,yEACJC,UACI,iEAGRoC,SACItC,MAAO,mCACPC,OACI,yEACJC,UACI,iEAGRqC,SACIvC,MAAO,uCACPC,OAAQ,+DACRC,UACI,8DAGRsC,IACIxC,MAAO,8CACPC,OACI,8DACJC,UACI,sDAGRuC,IACIzC,MACI,2DACJC,OACI,uEACJC,UACI,iDAGRwC,IACI1C,MAAO,oCACPC,OACI,4DACJC,UACI,yEAGRyC,IACI3C,MAAO,uCACPC,OACI,2EACJC,UACI,uEAGR0C,IACI5C,MACI,kCACJC,OACI,6DACJC,UACI,2DAGR2C,IACI7C,MAAO,2CACPC,OAAQ,2CACRC,UACI,4CAGR4C,IACI9C,MACI,kDACJC,OACI,iGACJC,UACI,+FAGR6C,IACI/C,MACI,oDACJC,OACI,qEACJC,UACI,iDAGR8C,IACIhD,MACI,8BACJC,OACI,iDACJC,UACI,uCAGR+C,IACIjD,MAAO,kDACPC,OAAQ,kDACRC,UAAW,gDAGfgD,IACIlD,MACI,kDACJC,OACI,uEACJC,UACI,+DAGRiD,IACInD,MACI,mCACJC,OACI,kFACJC,UACI,+DAGRkD,IACIpD,MACI,2CACJC,OACI,0CACJC,UACI,wCAGRmD,SACIrD,MAAO,WACPC,OACI,wBACJC,UACI,sBAGRoD,SACItD,MAAO,YACPC,OACI,wBACJC,UACI,qBC9ZZqD,EAAEC,IAAIC,cACFC,wBACIC,QACAC,SAAU,OAIlB,IAAIC,GAAc,EAEPC,EAAkBP,EAAEQ,QAAQC,QAC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","file":"leaflet-gesture-handling.min.js","sourcesContent":["export default {\n //Arabic\n ar: {\n touch:\n \"\\u0627\\u0633\\u062a\\u062e\\u062f\\u0645 \\u0625\\u0635\\u0628\\u0639\\u064a\\u0646 \\u0644\\u062a\\u062d\\u0631\\u064a\\u0643 \\u0627\\u0644\\u062e\\u0631\\u064a\\u0637\\u0629\",\n scroll:\n \"\\u200f\\u0627\\u0633\\u062a\\u062e\\u062f\\u0645 ctrl + scroll \\u0644\\u062a\\u0635\\u063a\\u064a\\u0631/\\u062a\\u0643\\u0628\\u064a\\u0631 \\u0627\\u0644\\u062e\\u0631\\u064a\\u0637\\u0629\",\n scrollMac:\n \"\\u064a\\u0645\\u0643\\u0646\\u0643 \\u0627\\u0633\\u062a\\u062e\\u062f\\u0627\\u0645 \\u2318 + \\u0627\\u0644\\u062a\\u0645\\u0631\\u064a\\u0631 \\u0644\\u062a\\u0643\\u0628\\u064a\\u0631/\\u062a\\u0635\\u063a\\u064a\\u0631 \\u0627\\u0644\\u062e\\u0631\\u064a\\u0637\\u0629\"\n },\n //Bulgarian\n bg: {\n touch:\n \"\\u0418\\u0437\\u043f\\u043e\\u043b\\u0437\\u0432\\u0430\\u0439\\u0442\\u0435 \\u0434\\u0432\\u0430 \\u043f\\u0440\\u044a\\u0441\\u0442\\u0430, \\u0437\\u0430 \\u0434\\u0430 \\u043f\\u0440\\u0435\\u043c\\u0435\\u0441\\u0442\\u0438\\u0442\\u0435 \\u043a\\u0430\\u0440\\u0442\\u0430\\u0442\\u0430\",\n scroll:\n \"\\u0417\\u0430\\u0434\\u0440\\u044a\\u0436\\u0442\\u0435 \\u0431\\u0443\\u0442\\u043e\\u043d\\u0430 Ctrl \\u043d\\u0430\\u0442\\u0438\\u0441\\u043d\\u0430\\u0442, \\u0434\\u043e\\u043a\\u0430\\u0442\\u043e \\u043f\\u0440\\u0435\\u0432\\u044a\\u0440\\u0442\\u0430\\u0442\\u0435, \\u0437\\u0430 \\u0434\\u0430 \\u043f\\u0440\\u043e\\u043c\\u0435\\u043d\\u0438\\u0442\\u0435 \\u043c\\u0430\\u0449\\u0430\\u0431\\u0430 \\u043d\\u0430 \\u043a\\u0430\\u0440\\u0442\\u0430\\u0442\\u0430\",\n scrollMac:\n \"\\u0417\\u0430\\u0434\\u0440\\u044a\\u0436\\u0442\\u0435 \\u0431\\u0443\\u0442\\u043e\\u043d\\u0430 \\u2318 \\u043d\\u0430\\u0442\\u0438\\u0441\\u043d\\u0430\\u0442, \\u0434\\u043e\\u043a\\u0430\\u0442\\u043e \\u043f\\u0440\\u0435\\u0432\\u044a\\u0440\\u0442\\u0430\\u0442\\u0435, \\u0437\\u0430 \\u0434\\u0430 \\u043f\\u0440\\u043e\\u043c\\u0435\\u043d\\u0438\\u0442\\u0435 \\u043c\\u0430\\u0449\\u0430\\u0431\\u0430 \\u043d\\u0430 \\u043a\\u0430\\u0440\\u0442\\u0430\\u0442\\u0430\"\n },\n //Bengali\n bn: {\n touch:\n \"\\u09ae\\u09be\\u09a8\\u099a\\u09bf\\u09a4\\u09cd\\u09b0\\u099f\\u09bf\\u0995\\u09c7 \\u09b8\\u09b0\\u09be\\u09a4\\u09c7 \\u09a6\\u09c1\\u099f\\u09bf \\u0986\\u0999\\u09cd\\u0997\\u09c1\\u09b2 \\u09ac\\u09cd\\u09af\\u09ac\\u09b9\\u09be\\u09b0 \\u0995\\u09b0\\u09c1\\u09a8\",\n scroll:\n \"\\u09ae\\u09cd\\u09af\\u09be\\u09aa \\u099c\\u09c1\\u09ae \\u0995\\u09b0\\u09a4\\u09c7 ctrl + scroll \\u09ac\\u09cd\\u09af\\u09ac\\u09b9\\u09be\\u09b0 \\u0995\\u09b0\\u09c1\\u09a8\",\n scrollMac:\n \"\\u09ae\\u09cd\\u09af\\u09be\\u09aa\\u09c7 \\u099c\\u09c1\\u09ae \\u0995\\u09b0\\u09a4\\u09c7 \\u2318 \\u09ac\\u09cb\\u09a4\\u09be\\u09ae \\u099f\\u09bf\\u09aa\\u09c7 \\u09b8\\u09cd\\u0995\\u09cd\\u09b0\\u09b2 \\u0995\\u09b0\\u09c1\\u09a8\"\n },\n //Catalan\n ca: {\n touch: \"Fes servir dos dits per moure el mapa\",\n scroll:\n \"Prem la tecla Control mentre et desplaces per apropar i allunyar el mapa\",\n scrollMac:\n \"Prem la tecla \\u2318 mentre et desplaces per apropar i allunyar el mapa\"\n },\n //Czech\n cs: {\n touch: \"K\\u00a0posunut\\u00ed mapy pou\\u017eijte dva prsty\",\n scroll:\n \"Velikost zobrazen\\u00ed mapy zm\\u011b\\u0148te podr\\u017een\\u00edm kl\\u00e1vesy Ctrl a\\u00a0posouv\\u00e1n\\u00edm kole\\u010dka my\\u0161i\",\n scrollMac:\n \"Velikost zobrazen\\u00ed mapy zm\\u011bn\\u00edte podr\\u017een\\u00edm kl\\u00e1vesy \\u2318 a\\u00a0posunut\\u00edm kole\\u010dka my\\u0161i / touchpadu\"\n },\n //Danish\n da: {\n touch: \"Brug to fingre til at flytte kortet\",\n scroll:\n \"Brug ctrl + rullefunktionen til at zoome ind og ud p\\u00e5 kortet\",\n scrollMac:\n \"Brug \\u2318 + rullefunktionen til at zoome ind og ud p\\u00e5 kortet\"\n },\n //German\n de: {\n touch: \"Verschieben der Karte mit zwei Fingern\",\n scroll: \"Verwende Strg+Scrollen zum Zoomen der Karte\",\n scrollMac: \"\\u2318\"\n },\n //Greek\n el: {\n touch:\n \"\\u03a7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03c4\\u03b5 \\u03b4\\u03cd\\u03bf \\u03b4\\u03ac\\u03c7\\u03c4\\u03c5\\u03bb\\u03b1 \\u03b3\\u03b9\\u03b1 \\u03bc\\u03b5\\u03c4\\u03b1\\u03ba\\u03af\\u03bd\\u03b7\\u03c3\\u03b7 \\u03c3\\u03c4\\u03bf\\u03bd \\u03c7\\u03ac\\u03c1\\u03c4\\u03b7\",\n scroll:\n \"\\u03a7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03c4\\u03b5 \\u03c4\\u03bf \\u03c0\\u03bb\\u03ae\\u03ba\\u03c4\\u03c1\\u03bf Ctrl \\u03ba\\u03b1\\u03b9 \\u03ba\\u03cd\\u03bb\\u03b9\\u03c3\\u03b7, \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03bc\\u03b5\\u03b3\\u03b5\\u03b8\\u03cd\\u03bd\\u03b5\\u03c4\\u03b5 \\u03c4\\u03bf\\u03bd \\u03c7\\u03ac\\u03c1\\u03c4\\u03b7\",\n scrollMac:\n \"\\u03a7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03c4\\u03b5 \\u03c4\\u03bf \\u03c0\\u03bb\\u03ae\\u03ba\\u03c4\\u03c1\\u03bf \\u2318 + \\u03ba\\u03cd\\u03bb\\u03b9\\u03c3\\u03b7 \\u03b3\\u03b9\\u03b1 \\u03b5\\u03c3\\u03c4\\u03af\\u03b1\\u03c3\\u03b7 \\u03c3\\u03c4\\u03bf\\u03bd \\u03c7\\u03ac\\u03c1\\u03c4\\u03b7\"\n },\n //English\n en: {\n touch: \"Use two fingers to move the map\",\n scroll: \"Use ctrl + scroll to zoom the map\",\n scrollMac: \"Use \\u2318 + scroll to zoom the map\"\n },\n //English (Australian)\n \"en-AU\": {\n touch: \"Use two fingers to move the map\",\n scroll: \"Use ctrl + scroll to zoom the map\",\n scrollMac: \"Use \\u2318 + scroll to zoom the map\"\n },\n //English (Great Britain)\n \"en-GB\": {\n touch: \"Use two fingers to move the map\",\n scroll: \"Use ctrl + scroll to zoom the map\",\n scrollMac: \"Use \\u2318 + scroll to zoom the map\"\n },\n //Spanish\n es: {\n touch: \"Para mover el mapa, utiliza dos dedos\",\n scroll:\n \"Mant\\u00e9n pulsada la tecla Ctrl mientras te desplazas para acercar o alejar el mapa\",\n scrollMac:\n \"Mant\\u00e9n pulsada la tecla \\u2318 mientras te desplazas para acercar o alejar el mapa\"\n },\n //Basque\n eu: {\n touch: \"Erabili bi hatz mapa mugitzeko\",\n scroll: \"Mapan zooma aplikatzeko, sakatu Ktrl eta egin gora edo behera\",\n scrollMac:\n \"Eduki sakatuta \\u2318 eta egin gora eta behera mapa handitu eta txikitzeko\"\n },\n //Farsi\n fa: {\n touch:\n \"\\u0628\\u0631\\u0627\\u06cc \\u062d\\u0631\\u06a9\\u062a \\u062f\\u0627\\u062f\\u0646 \\u0646\\u0642\\u0634\\u0647 \\u0627\\u0632 \\u062f\\u0648 \\u0627\\u0646\\u06af\\u0634\\u062a \\u0627\\u0633\\u062a\\u0641\\u0627\\u062f\\u0647 \\u06a9\\u0646\\u06cc\\u062f.\",\n scroll:\n \"\\u200f\\u0628\\u0631\\u0627\\u06cc \\u0628\\u0632\\u0631\\u06af\\u200c\\u0646\\u0645\\u0627\\u06cc\\u06cc \\u0646\\u0642\\u0634\\u0647 \\u0627\\u0632 ctrl + scroll \\u0627\\u0633\\u062a\\u0641\\u0627\\u062f\\u0647 \\u06a9\\u0646\\u06cc\\u062f\",\n scrollMac:\n \"\\u0628\\u0631\\u0627\\u06cc \\u0628\\u0632\\u0631\\u06af\\u200c\\u0646\\u0645\\u0627\\u06cc\\u06cc \\u0646\\u0642\\u0634\\u0647\\u060c \\u0627\\u0632 \\u2318 + \\u067e\\u06cc\\u0645\\u0627\\u06cc\\u0634 \\u0627\\u0633\\u062a\\u0641\\u0627\\u062f\\u0647 \\u06a9\\u0646\\u06cc\\u062f.\"\n },\n //Finnish\n fi: {\n touch: \"Siirr\\u00e4 karttaa kahdella sormella.\",\n scroll:\n \"Zoomaa karttaa painamalla Ctrl-painiketta ja vieritt\\u00e4m\\u00e4ll\\u00e4.\",\n scrollMac:\n \"Zoomaa karttaa pit\\u00e4m\\u00e4ll\\u00e4 painike \\u2318 painettuna ja vieritt\\u00e4m\\u00e4ll\\u00e4.\"\n },\n //Filipino\n fil: {\n touch: \"Gumamit ng dalawang daliri upang iusog ang mapa\",\n scroll: \"Gamitin ang ctrl + scroll upang i-zoom ang mapa\",\n scrollMac: \"Gamitin ang \\u2318 + scroll upang i-zoom ang mapa\"\n },\n //French\n fr: {\n touch: \"Utilisez deux\\u00a0doigts pour d\\u00e9placer la carte\",\n scroll:\n \"Vous pouvez zoomer sur la carte \\u00e0 l'aide de CTRL+Molette de d\\u00e9filement\",\n scrollMac:\n \"Vous pouvez zoomer sur la carte \\u00e0 l'aide de \\u2318+Molette de d\\u00e9filement\"\n },\n //Galician\n gl: {\n touch: \"Utiliza dous dedos para mover o mapa\",\n scroll: \"Preme Ctrl mentres te desprazas para ampliar o mapa\",\n scrollMac: \"Preme \\u2318 e despr\\u00e1zate para ampliar o mapa\"\n },\n //Gujarati\n gu: {\n touch:\n \"\\u0aa8\\u0a95\\u0ab6\\u0acb \\u0a96\\u0ab8\\u0ac7\\u0aa1\\u0ab5\\u0abe \\u0aac\\u0ac7 \\u0a86\\u0a82\\u0a97\\u0ab3\\u0ac0\\u0a93\\u0aa8\\u0acb \\u0a89\\u0aaa\\u0aaf\\u0acb\\u0a97 \\u0a95\\u0ab0\\u0acb\",\n scroll:\n \"\\u0aa8\\u0a95\\u0ab6\\u0abe\\u0aa8\\u0ac7 \\u0a9d\\u0ac2\\u0aae \\u0a95\\u0ab0\\u0ab5\\u0abe \\u0aae\\u0abe\\u0a9f\\u0ac7 ctrl + \\u0ab8\\u0acd\\u0a95\\u0acd\\u0ab0\\u0acb\\u0ab2\\u0aa8\\u0acb \\u0a89\\u0aaa\\u0aaf\\u0acb\\u0a97 \\u0a95\\u0ab0\\u0acb\",\n scrollMac:\n \"\\u0aa8\\u0a95\\u0ab6\\u0abe\\u0aa8\\u0ac7 \\u0a9d\\u0ac2\\u0aae \\u0a95\\u0ab0\\u0ab5\\u0abe \\u2318 + \\u0ab8\\u0acd\\u0a95\\u0acd\\u0ab0\\u0acb\\u0ab2\\u0aa8\\u0acb \\u0a89\\u0aaa\\u0aaf\\u0acb\\u0a97 \\u0a95\\u0ab0\\u0acb\"\n },\n //Hindi\n hi: {\n touch:\n \"\\u092e\\u0948\\u092a \\u090f\\u0915 \\u091c\\u0917\\u0939 \\u0938\\u0947 \\u0926\\u0942\\u0938\\u0930\\u0940 \\u091c\\u0917\\u0939 \\u0932\\u0947 \\u091c\\u093e\\u0928\\u0947 \\u0915\\u0947 \\u0932\\u093f\\u090f \\u0926\\u094b \\u0909\\u0902\\u0917\\u0932\\u093f\\u092f\\u094b\\u0902 \\u0915\\u093e \\u0907\\u0938\\u094d\\u0924\\u0947\\u092e\\u093e\\u0932 \\u0915\\u0930\\u0947\\u0902\",\n scroll:\n \"\\u092e\\u0948\\u092a \\u0915\\u094b \\u091c\\u093c\\u0942\\u092e \\u0915\\u0930\\u0928\\u0947 \\u0915\\u0947 \\u0932\\u093f\\u090f ctrl + \\u0938\\u094d\\u0915\\u094d\\u0930\\u094b\\u0932 \\u0915\\u093e \\u0909\\u092a\\u092f\\u094b\\u0917 \\u0915\\u0930\\u0947\\u0902\",\n scrollMac:\n \"\\u092e\\u0948\\u092a \\u0915\\u094b \\u091c\\u093c\\u0942\\u092e \\u0915\\u0930\\u0928\\u0947 \\u0915\\u0947 \\u0932\\u093f\\u090f \\u2318 + \\u0938\\u094d\\u0915\\u094d\\u0930\\u094b\\u0932 \\u0915\\u093e \\u0909\\u092a\\u092f\\u094b\\u0917 \\u0915\\u0930\\u0947\\u0902\"\n },\n //Croatian\n hr: {\n touch: \"Pomi\\u010dite kartu pomo\\u0107u dva prsta\",\n scroll:\n \"Upotrijebite Ctrl i kliza\\u010d mi\\u0161a da biste zumirali kartu\",\n scrollMac:\n \"Upotrijebite gumb \\u2318 dok se pomi\\u010dete za zumiranje karte\"\n },\n //Hungarian\n hu: {\n touch: \"K\\u00e9t ujjal mozgassa a t\\u00e9rk\\u00e9pet\",\n scroll:\n \"A t\\u00e9rk\\u00e9p a ctrl + g\\u00f6rget\\u00e9s haszn\\u00e1lat\\u00e1val nagy\\u00edthat\\u00f3\",\n scrollMac:\n \"A t\\u00e9rk\\u00e9p a \\u2318 + g\\u00f6rget\\u00e9s haszn\\u00e1lat\\u00e1val nagy\\u00edthat\\u00f3\"\n },\n //Indonesian\n id: {\n touch: \"Gunakan dua jari untuk menggerakkan peta\",\n scroll: \"Gunakan ctrl + scroll untuk memperbesar atau memperkecil peta\",\n scrollMac:\n \"Gunakan \\u2318 + scroll untuk memperbesar atau memperkecil peta\"\n },\n //Italian\n it: {\n touch: \"Utilizza due dita per spostare la mappa\",\n scroll: \"Utilizza CTRL + scorrimento per eseguire lo zoom della mappa\",\n scrollMac:\n \"Utilizza \\u2318 + scorrimento per eseguire lo zoom della mappa\"\n },\n //Hebrew\n iw: {\n touch:\n \"\\u05d4\\u05d6\\u05d6 \\u05d0\\u05ea \\u05d4\\u05de\\u05e4\\u05d4 \\u05d1\\u05d0\\u05de\\u05e6\\u05e2\\u05d5\\u05ea \\u05e9\\u05ea\\u05d9 \\u05d0\\u05e6\\u05d1\\u05e2\\u05d5\\u05ea\",\n scroll:\n \"\\u200f\\u05d0\\u05e4\\u05e9\\u05e8 \\u05dc\\u05e9\\u05e0\\u05d5\\u05ea \\u05d0\\u05ea \\u05de\\u05e8\\u05d7\\u05e7 \\u05d4\\u05ea\\u05e6\\u05d5\\u05d2\\u05d4 \\u05d1\\u05de\\u05e4\\u05d4 \\u05d1\\u05d0\\u05de\\u05e6\\u05e2\\u05d5\\u05ea \\u05de\\u05e7\\u05e9 ctrl \\u05d5\\u05d2\\u05dc\\u05d9\\u05dc\\u05d4\",\n scrollMac:\n \"\\u05d0\\u05e4\\u05e9\\u05e8 \\u05dc\\u05e9\\u05e0\\u05d5\\u05ea \\u05d0\\u05ea \\u05de\\u05e8\\u05d7\\u05e7 \\u05d4\\u05ea\\u05e6\\u05d5\\u05d2\\u05d4 \\u05d1\\u05de\\u05e4\\u05d4 \\u05d1\\u05d0\\u05de\\u05e6\\u05e2\\u05d5\\u05ea \\u05de\\u05e7\\u05e9 \\u2318 \\u05d5\\u05d2\\u05dc\\u05d9\\u05dc\\u05d4\"\n },\n //Japanese\n ja: {\n touch:\n \"\\u5730\\u56f3\\u3092\\u79fb\\u52d5\\u3055\\u305b\\u308b\\u306b\\u306f\\u6307 2 \\u672c\\u3067\\u64cd\\u4f5c\\u3057\\u307e\\u3059\",\n scroll:\n \"\\u5730\\u56f3\\u3092\\u30ba\\u30fc\\u30e0\\u3059\\u308b\\u306b\\u306f\\u3001Ctrl \\u30ad\\u30fc\\u3092\\u62bc\\u3057\\u306a\\u304c\\u3089\\u30b9\\u30af\\u30ed\\u30fc\\u30eb\\u3057\\u3066\\u304f\\u3060\\u3055\\u3044\",\n scrollMac:\n \"\\u5730\\u56f3\\u3092\\u30ba\\u30fc\\u30e0\\u3059\\u308b\\u306b\\u306f\\u3001\\u2318 \\u30ad\\u30fc\\u3092\\u62bc\\u3057\\u306a\\u304c\\u3089\\u30b9\\u30af\\u30ed\\u30fc\\u30eb\\u3057\\u3066\\u304f\\u3060\\u3055\\u3044\"\n },\n //Kannada\n kn: {\n touch: \"Use two fingers to move the map\",\n scroll: \"Use Ctrl + scroll to zoom the map\",\n scrollMac: \"Use ⌘ + scroll to zoom the map\"\n },\n //Korean\n ko: {\n touch:\n \"\\uc9c0\\ub3c4\\ub97c \\uc6c0\\uc9c1\\uc774\\ub824\\uba74 \\ub450 \\uc190\\uac00\\ub77d\\uc744 \\uc0ac\\uc6a9\\ud558\\uc138\\uc694.\",\n scroll:\n \"\\uc9c0\\ub3c4\\ub97c \\ud655\\ub300/\\ucd95\\uc18c\\ud558\\ub824\\uba74 Ctrl\\uc744 \\ub204\\ub978 \\ucc44 \\uc2a4\\ud06c\\ub864\\ud558\\uc138\\uc694.\",\n scrollMac:\n \"\\uc9c0\\ub3c4\\ub97c \\ud655\\ub300\\ud558\\ub824\\uba74 \\u2318 + \\uc2a4\\ud06c\\ub864 \\uc0ac\\uc6a9\"\n },\n //Lithuanian\n lt: {\n touch: \"Perkelkite \\u017eem\\u0117lap\\u012f dviem pir\\u0161tais\",\n scroll:\n \"Slinkite nuspaud\\u0119 klavi\\u0161\\u0105 \\u201eCtrl\\u201c, kad pakeistum\\u0117te \\u017eem\\u0117lapio mastel\\u012f\",\n scrollMac:\n \"Paspauskite klavi\\u0161\\u0105 \\u2318 ir slinkite, kad priartintum\\u0117te \\u017eem\\u0117lap\\u012f\"\n },\n //Latvian\n lv: {\n touch: \"Lai p\\u0101rvietotu karti, b\\u012bdiet to ar diviem pirkstiem\",\n scroll:\n \"Kartes t\\u0101lummai\\u0146ai izmantojiet ctrl + ritin\\u0101\\u0161anu\",\n scrollMac:\n \"Lai veiktu kartes t\\u0101lummai\\u0146u, izmantojiet \\u2318 + ritin\\u0101\\u0161anu\"\n },\n //Malayalam\n ml: {\n touch:\n \"\\u0d2e\\u0d3e\\u0d2a\\u0d4d\\u0d2a\\u0d4d \\u0d28\\u0d40\\u0d15\\u0d4d\\u0d15\\u0d3e\\u0d7b \\u0d30\\u0d23\\u0d4d\\u0d1f\\u0d4d \\u0d35\\u0d3f\\u0d30\\u0d32\\u0d41\\u0d15\\u0d7e \\u0d09\\u0d2a\\u0d2f\\u0d4b\\u0d17\\u0d3f\\u0d15\\u0d4d\\u0d15\\u0d41\\u0d15\",\n scroll:\n \"\\u0d15\\u0d7a\\u0d1f\\u0d4d\\u0d30\\u0d4b\\u0d7e + \\u0d38\\u0d4d\\u200c\\u0d15\\u0d4d\\u0d30\\u0d4b\\u0d7e \\u0d09\\u0d2a\\u0d2f\\u0d4b\\u0d17\\u0d3f\\u0d1a\\u0d4d\\u0d1a\\u0d4d \\u200c\\u0d2e\\u0d3e\\u0d2a\\u0d4d\\u0d2a\\u0d4d \\u200c\\u0d38\\u0d42\\u0d02 \\u0d1a\\u0d46\\u0d2f\\u0d4d\\u0d2f\\u0d41\\u0d15\",\n scrollMac:\n \"\\u2318 + \\u0d38\\u0d4d\\u200c\\u0d15\\u0d4d\\u0d30\\u0d4b\\u0d7e \\u0d09\\u0d2a\\u0d2f\\u0d4b\\u0d17\\u0d3f\\u0d1a\\u0d4d\\u0d1a\\u0d4d \\u200c\\u0d2e\\u0d3e\\u0d2a\\u0d4d\\u0d2a\\u0d4d \\u200c\\u0d38\\u0d42\\u0d02 \\u0d1a\\u0d46\\u0d2f\\u0d4d\\u0d2f\\u0d41\\u0d15\"\n },\n //Marathi\n mr: {\n touch:\n \"\\u0928\\u0915\\u093e\\u0936\\u093e \\u0939\\u0932\\u0935\\u093f\\u0923\\u094d\\u092f\\u093e\\u0938\\u093e\\u0920\\u0940 \\u0926\\u094b\\u0928 \\u092c\\u094b\\u091f\\u0947 \\u0935\\u093e\\u092a\\u0930\\u093e\",\n scroll:\n \"\\u0928\\u0915\\u093e\\u0936\\u093e \\u091d\\u0942\\u092e \\u0915\\u0930\\u0923\\u094d\\u092f\\u093e\\u0938\\u093e\\u0920\\u0940 ctrl + scroll \\u0935\\u093e\\u092a\\u0930\\u093e\",\n scrollMac:\n \"\\u0928\\u0915\\u093e\\u0936\\u093e\\u0935\\u0930 \\u091d\\u0942\\u092e \\u0915\\u0930\\u0923\\u094d\\u092f\\u093e\\u0938\\u093e\\u0920\\u0940 \\u2318 + \\u0938\\u094d\\u0915\\u094d\\u0930\\u094b\\u0932 \\u0935\\u093e\\u092a\\u0930\\u093e\"\n },\n //Dutch\n nl: {\n touch: \"Gebruik twee vingers om de kaart te verplaatsen\",\n scroll: \"Gebruik Ctrl + scrollen om in- en uit te zoomen op de kaart\",\n scrollMac:\n \"Gebruik \\u2318 + scrollen om in en uit te zoomen op de kaart\"\n },\n //Norwegian\n no: {\n touch: \"Bruk to fingre for \\u00e5 flytte kartet\",\n scroll: \"Hold ctrl-tasten inne og rull for \\u00e5 zoome p\\u00e5 kartet\",\n scrollMac:\n \"Hold inne \\u2318-tasten og rull for \\u00e5 zoome p\\u00e5 kartet\"\n },\n //Polish\n pl: {\n touch: \"Przesu\\u0144 map\\u0119 dwoma palcami\",\n scroll:\n \"Naci\\u015bnij CTRL i przewi\\u0144, by przybli\\u017cy\\u0107 map\\u0119\",\n scrollMac:\n \"Naci\\u015bnij\\u00a0\\u2318 i przewi\\u0144, by przybli\\u017cy\\u0107 map\\u0119\"\n },\n //Portuguese\n pt: {\n touch: \"Use dois dedos para mover o mapa\",\n scroll:\n \"Pressione Ctrl e role a tela simultaneamente para aplicar zoom no mapa\",\n scrollMac:\n \"Use \\u2318 e role a tela simultaneamente para aplicar zoom no mapa\"\n },\n //Portuguese (Brazil)\n \"pt-BR\": {\n touch: \"Use dois dedos para mover o mapa\",\n scroll:\n \"Pressione Ctrl e role a tela simultaneamente para aplicar zoom no mapa\",\n scrollMac:\n \"Use \\u2318 e role a tela simultaneamente para aplicar zoom no mapa\"\n },\n //Portuguese (Portugal\n \"pt-PT\": {\n touch: \"Utilize dois dedos para mover o mapa\",\n scroll: \"Utilizar ctrl + deslocar para aumentar/diminuir zoom do mapa\",\n scrollMac:\n \"Utilize \\u2318 + deslocar para aumentar/diminuir o zoom do mapa\"\n },\n //Romanian\n ro: {\n touch: \"Folosi\\u021bi dou\\u0103 degete pentru a deplasa harta\",\n scroll:\n \"Ap\\u0103sa\\u021bi tasta ctrl \\u0219i derula\\u021bi simultan pentru a m\\u0103ri harta\",\n scrollMac:\n \"Folosi\\u021bi \\u2318 \\u0219i derula\\u021bi pentru a m\\u0103ri/mic\\u0219ora harta\"\n },\n //Russian\n ru: {\n touch:\n \"\\u0427\\u0442\\u043e\\u0431\\u044b \\u043f\\u0435\\u0440\\u0435\\u043c\\u0435\\u0441\\u0442\\u0438\\u0442\\u044c \\u043a\\u0430\\u0440\\u0442\\u0443, \\u043f\\u0440\\u043e\\u0432\\u0435\\u0434\\u0438\\u0442\\u0435 \\u043f\\u043e \\u043d\\u0435\\u0439 \\u0434\\u0432\\u0443\\u043c\\u044f \\u043f\\u0430\\u043b\\u044c\\u0446\\u0430\\u043c\\u0438\",\n scroll:\n \"\\u0427\\u0442\\u043e\\u0431\\u044b \\u0438\\u0437\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u043c\\u0430\\u0441\\u0448\\u0442\\u0430\\u0431, \\u043f\\u0440\\u043e\\u043a\\u0440\\u0443\\u0447\\u0438\\u0432\\u0430\\u0439\\u0442\\u0435 \\u043a\\u0430\\u0440\\u0442\\u0443, \\u0443\\u0434\\u0435\\u0440\\u0436\\u0438\\u0432\\u0430\\u044f \\u043a\\u043b\\u0430\\u0432\\u0438\\u0448\\u0443 Ctrl.\",\n scrollMac:\n \"\\u0427\\u0442\\u043e\\u0431\\u044b \\u0438\\u0437\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u043c\\u0430\\u0441\\u0448\\u0442\\u0430\\u0431, \\u043d\\u0430\\u0436\\u043c\\u0438\\u0442\\u0435 \\u2318\\u00a0+ \\u043f\\u0440\\u043e\\u043a\\u0440\\u0443\\u0442\\u043a\\u0430\"\n },\n //Slovak\n sk: {\n touch: \"Mapu m\\u00f4\\u017eete posun\\u00fa\\u0165 dvoma prstami\",\n scroll:\n \"Ak chcete pribl\\u00ed\\u017ei\\u0165 mapu, stla\\u010dte kl\\u00e1ves ctrl a\\u00a0pos\\u00favajte\",\n scrollMac:\n \"Ak chcete pribl\\u00ed\\u017ei\\u0165 mapu, stla\\u010dte kl\\u00e1ves \\u2318 a\\u00a0pos\\u00favajte kolieskom my\\u0161i\"\n },\n //Slovenian\n sl: {\n touch: \"Premaknite zemljevid z dvema prstoma\",\n scroll:\n \"Zemljevid pove\\u010date tako, da dr\\u017eite tipko Ctrl in vrtite kolesce na mi\\u0161ki\",\n scrollMac:\n \"Uporabite \\u2318 + funkcijo pomika, da pove\\u010date ali pomanj\\u0161ate zemljevid\"\n },\n //Serbian\n sr: {\n touch:\n \"\\u041c\\u0430\\u043f\\u0443 \\u043f\\u043e\\u043c\\u0435\\u0440\\u0430\\u0458\\u0442\\u0435 \\u043f\\u043e\\u043c\\u043e\\u045b\\u0443 \\u0434\\u0432\\u0430 \\u043f\\u0440\\u0441\\u0442\\u0430\",\n scroll:\n \"\\u041f\\u0440\\u0438\\u0442\\u0438\\u0441\\u043d\\u0438\\u0442\\u0435 ctrl \\u0442\\u0430\\u0441\\u0442\\u0435\\u0440 \\u0434\\u043e\\u043a \\u043f\\u043e\\u043c\\u0435\\u0440\\u0430\\u0442\\u0435 \\u0434\\u0430 \\u0431\\u0438\\u0441\\u0442\\u0435 \\u0437\\u0443\\u043c\\u0438\\u0440\\u0430\\u043b\\u0438 \\u043c\\u0430\\u043f\\u0443\",\n scrollMac:\n \"\\u041f\\u0440\\u0438\\u0442\\u0438\\u0441\\u043d\\u0438\\u0442\\u0435 \\u0442\\u0430\\u0441\\u0442\\u0435\\u0440 \\u2318 \\u0434\\u043e\\u043a \\u043f\\u043e\\u043c\\u0435\\u0440\\u0430\\u0442\\u0435 \\u0434\\u0430 \\u0431\\u0438\\u0441\\u0442\\u0435 \\u0437\\u0443\\u043c\\u0438\\u0440\\u0430\\u043b\\u0438 \\u043c\\u0430\\u043f\\u0443\"\n },\n //Swedish\n sv: {\n touch: \"Anv\\u00e4nd tv\\u00e5 fingrar f\\u00f6r att flytta kartan\",\n scroll: \"Anv\\u00e4nd ctrl + rulla f\\u00f6r att zooma kartan\",\n scrollMac:\n \"Anv\\u00e4nd \\u2318 + rulla f\\u00f6r att zooma p\\u00e5 kartan\"\n },\n //Tamil\n ta: {\n touch:\n \"\\u0bae\\u0bc7\\u0baa\\u0bcd\\u0baa\\u0bc8 \\u0ba8\\u0b95\\u0bb0\\u0bcd\\u0ba4\\u0bcd\\u0ba4 \\u0b87\\u0bb0\\u0ba3\\u0bcd\\u0b9f\\u0bc1 \\u0bb5\\u0bbf\\u0bb0\\u0bb2\\u0bcd\\u0b95\\u0bb3\\u0bc8\\u0baa\\u0bcd \\u0baa\\u0baf\\u0ba9\\u0bcd\\u0baa\\u0b9f\\u0bc1\\u0ba4\\u0bcd\\u0ba4\\u0bb5\\u0bc1\\u0bae\\u0bcd\",\n scroll:\n \"\\u0bae\\u0bc7\\u0baa\\u0bcd\\u0baa\\u0bc8 \\u0baa\\u0bc6\\u0bb0\\u0bbf\\u0ba4\\u0bbe\\u0b95\\u0bcd\\u0b95\\u0bbf/\\u0b9a\\u0bbf\\u0bb1\\u0bbf\\u0ba4\\u0bbe\\u0b95\\u0bcd\\u0b95\\u0bbf\\u0baa\\u0bcd \\u0baa\\u0bbe\\u0bb0\\u0bcd\\u0b95\\u0bcd\\u0b95, ctrl \\u0baa\\u0b9f\\u0bcd\\u0b9f\\u0ba9\\u0bc8\\u0baa\\u0bcd \\u0baa\\u0bbf\\u0b9f\\u0bbf\\u0ba4\\u0bcd\\u0ba4\\u0baa\\u0b9f\\u0bbf, \\u0bae\\u0bc7\\u0bb2\\u0bc7/\\u0b95\\u0bc0\\u0bb4\\u0bc7 \\u0bb8\\u0bcd\\u0b95\\u0bcd\\u0bb0\\u0bbe\\u0bb2\\u0bcd \\u0b9a\\u0bc6\\u0baf\\u0bcd\\u0baf\\u0bb5\\u0bc1\\u0bae\\u0bcd\",\n scrollMac:\n \"\\u0bae\\u0bc7\\u0baa\\u0bcd\\u0baa\\u0bc8 \\u0baa\\u0bc6\\u0bb0\\u0bbf\\u0ba4\\u0bbe\\u0b95\\u0bcd\\u0b95\\u0bbf/\\u0b9a\\u0bbf\\u0bb1\\u0bbf\\u0ba4\\u0bbe\\u0b95\\u0bcd\\u0b95\\u0bbf\\u0baa\\u0bcd \\u0baa\\u0bbe\\u0bb0\\u0bcd\\u0b95\\u0bcd\\u0b95, \\u2318 \\u0baa\\u0b9f\\u0bcd\\u0b9f\\u0ba9\\u0bc8\\u0baa\\u0bcd \\u0baa\\u0bbf\\u0b9f\\u0bbf\\u0ba4\\u0bcd\\u0ba4\\u0baa\\u0b9f\\u0bbf, \\u0bae\\u0bc7\\u0bb2\\u0bc7/\\u0b95\\u0bc0\\u0bb4\\u0bc7 \\u0bb8\\u0bcd\\u0b95\\u0bcd\\u0bb0\\u0bbe\\u0bb2\\u0bcd \\u0b9a\\u0bc6\\u0baf\\u0bcd\\u0baf\\u0bb5\\u0bc1\\u0bae\\u0bcd\"\n },\n //Telugu\n te: {\n touch:\n \"\\u0c2e\\u0c4d\\u0c2f\\u0c3e\\u0c2a\\u0c4d\\u200c\\u0c28\\u0c3f \\u0c24\\u0c30\\u0c32\\u0c3f\\u0c02\\u0c1a\\u0c21\\u0c02 \\u0c15\\u0c4b\\u0c38\\u0c02 \\u0c30\\u0c46\\u0c02\\u0c21\\u0c41 \\u0c35\\u0c47\\u0c33\\u0c4d\\u0c32\\u0c28\\u0c41 \\u0c09\\u0c2a\\u0c2f\\u0c4b\\u0c17\\u0c3f\\u0c02\\u0c1a\\u0c02\\u0c21\\u0c3f\",\n scroll:\n \"\\u0c2e\\u0c4d\\u0c2f\\u0c3e\\u0c2a\\u0c4d\\u200c\\u0c28\\u0c3f \\u0c1c\\u0c42\\u0c2e\\u0c4d \\u0c1a\\u0c47\\u0c2f\\u0c21\\u0c3e\\u0c28\\u0c3f\\u0c15\\u0c3f ctrl \\u0c2c\\u0c1f\\u0c28\\u0c4d\\u200c\\u0c28\\u0c41 \\u0c28\\u0c4a\\u0c15\\u0c4d\\u0c15\\u0c3f \\u0c09\\u0c02\\u0c1a\\u0c3f, \\u0c38\\u0c4d\\u0c15\\u0c4d\\u0c30\\u0c4b\\u0c32\\u0c4d \\u0c1a\\u0c47\\u0c2f\\u0c02\\u0c21\\u0c3f\",\n scrollMac:\n \"\\u0c2e\\u0c4d\\u0c2f\\u0c3e\\u0c2a\\u0c4d \\u0c1c\\u0c42\\u0c2e\\u0c4d \\u0c1a\\u0c47\\u0c2f\\u0c3e\\u0c32\\u0c02\\u0c1f\\u0c47 \\u2318 + \\u0c38\\u0c4d\\u0c15\\u0c4d\\u0c30\\u0c4b\\u0c32\\u0c4d \\u0c09\\u0c2a\\u0c2f\\u0c4b\\u0c17\\u0c3f\\u0c02\\u0c1a\\u0c02\\u0c21\\u0c3f\"\n },\n //Thai\n th: {\n touch:\n \"\\u0e43\\u0e0a\\u0e49 2 \\u0e19\\u0e34\\u0e49\\u0e27\\u0e40\\u0e1e\\u0e37\\u0e48\\u0e2d\\u0e40\\u0e25\\u0e37\\u0e48\\u0e2d\\u0e19\\u0e41\\u0e1c\\u0e19\\u0e17\\u0e35\\u0e48\",\n scroll:\n \"\\u0e01\\u0e14 Ctrl \\u0e04\\u0e49\\u0e32\\u0e07\\u0e44\\u0e27\\u0e49 \\u0e41\\u0e25\\u0e49\\u0e27\\u0e40\\u0e25\\u0e37\\u0e48\\u0e2d\\u0e19\\u0e2b\\u0e19\\u0e49\\u0e32\\u0e08\\u0e2d\\u0e40\\u0e1e\\u0e37\\u0e48\\u0e2d\\u0e0b\\u0e39\\u0e21\\u0e41\\u0e1c\\u0e19\\u0e17\\u0e35\\u0e48\",\n scrollMac:\n \"\\u0e01\\u0e14 \\u2318 \\u0e41\\u0e25\\u0e49\\u0e27\\u0e40\\u0e25\\u0e37\\u0e48\\u0e2d\\u0e19\\u0e2b\\u0e19\\u0e49\\u0e32\\u0e08\\u0e2d\\u0e40\\u0e1e\\u0e37\\u0e48\\u0e2d\\u0e0b\\u0e39\\u0e21\\u0e41\\u0e1c\\u0e19\\u0e17\\u0e35\\u0e48\"\n },\n //Tagalog\n tl: {\n touch: \"Gumamit ng dalawang daliri upang iusog ang mapa\",\n scroll: \"Gamitin ang ctrl + scroll upang i-zoom ang mapa\",\n scrollMac: \"Gamitin ang \\u2318 + scroll upang i-zoom ang mapa\"\n },\n //Turkish\n tr: {\n touch:\n \"Haritada gezinmek i\\u00e7in iki parma\\u011f\\u0131n\\u0131z\\u0131 kullan\\u0131n\",\n scroll:\n \"Haritay\\u0131 yak\\u0131nla\\u015ft\\u0131rmak i\\u00e7in ctrl + kayd\\u0131rma kombinasyonunu kullan\\u0131n\",\n scrollMac:\n \"Haritay\\u0131 yak\\u0131nla\\u015ft\\u0131rmak i\\u00e7in \\u2318 tu\\u015funa bas\\u0131p ekran\\u0131 kayd\\u0131r\\u0131n\"\n },\n //Ukrainian\n uk: {\n touch:\n \"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0456\\u0449\\u0443\\u0439\\u0442\\u0435 \\u043a\\u0430\\u0440\\u0442\\u0443 \\u0434\\u0432\\u043e\\u043c\\u0430 \\u043f\\u0430\\u043b\\u044c\\u0446\\u044f\\u043c\\u0438\",\n scroll:\n \"\\u0429\\u043e\\u0431 \\u0437\\u043c\\u0456\\u043d\\u044e\\u0432\\u0430\\u0442\\u0438 \\u043c\\u0430\\u0441\\u0448\\u0442\\u0430\\u0431 \\u043a\\u0430\\u0440\\u0442\\u0438, \\u043f\\u0440\\u043e\\u043a\\u0440\\u0443\\u0447\\u0443\\u0439\\u0442\\u0435 \\u043a\\u043e\\u043b\\u0456\\u0449\\u0430\\u0442\\u043a\\u043e \\u043c\\u0438\\u0448\\u0456, \\u0443\\u0442\\u0440\\u0438\\u043c\\u0443\\u044e\\u0447\\u0438 \\u043a\\u043b\\u0430\\u0432\\u0456\\u0448\\u0443 Ctrl\",\n scrollMac:\n \"\\u0429\\u043e\\u0431 \\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u043c\\u0430\\u0441\\u0448\\u0442\\u0430\\u0431 \\u043a\\u0430\\u0440\\u0442\\u0438, \\u0432\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u043e\\u0432\\u0443\\u0439\\u0442\\u0435 \\u2318 + \\u043f\\u0440\\u043e\\u043a\\u0440\\u0443\\u0447\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f\"\n },\n //Vietnamese\n vi: {\n touch:\n \"S\\u1eed d\\u1ee5ng hai ng\\u00f3n tay \\u0111\\u1ec3 di chuy\\u1ec3n b\\u1ea3n \\u0111\\u1ed3\",\n scroll:\n \"S\\u1eed d\\u1ee5ng ctrl + cu\\u1ed9n \\u0111\\u1ec3 thu ph\\u00f3ng b\\u1ea3n \\u0111\\u1ed3\",\n scrollMac:\n \"S\\u1eed d\\u1ee5ng \\u2318 + cu\\u1ed9n \\u0111\\u1ec3 thu ph\\u00f3ng b\\u1ea3n \\u0111\\u1ed3\"\n },\n //Chinese (Simplified)\n \"zh-CN\": {\n touch: \"\\u4f7f\\u7528\\u53cc\\u6307\\u79fb\\u52a8\\u5730\\u56fe\",\n scroll:\n \"\\u6309\\u4f4f Ctrl \\u5e76\\u6eda\\u52a8\\u9f20\\u6807\\u6eda\\u8f6e\\u624d\\u53ef\\u7f29\\u653e\\u5730\\u56fe\",\n scrollMac:\n \"\\u6309\\u4f4f \\u2318 \\u5e76\\u6eda\\u52a8\\u9f20\\u6807\\u6eda\\u8f6e\\u624d\\u53ef\\u7f29\\u653e\\u5730\\u56fe\"\n },\n //Chinese (Traditional)\n \"zh-TW\": {\n touch: \"\\u540c\\u6642\\u4ee5\\u5169\\u6307\\u79fb\\u52d5\\u5730\\u5716\",\n scroll:\n \"\\u6309\\u4f4f ctrl \\u9375\\u52a0\\u4e0a\\u6372\\u52d5\\u6ed1\\u9f20\\u53ef\\u4ee5\\u7e2e\\u653e\\u5730\\u5716\",\n scrollMac:\n \"\\u6309 \\u2318 \\u52a0\\u4e0a\\u6efe\\u52d5\\u6372\\u8ef8\\u53ef\\u4ee5\\u7e2e\\u653e\\u5730\\u5716\"\n }\n};\n","/*\n* * Leaflet Gesture Handling **\n* * Version 1.1.9\n*/\nimport LanguageContent from \"./language-content\";\n\nL.Map.mergeOptions({\n gestureHandlingOptions: {\n text: {},\n duration: 1000\n }\n});\n\nvar draggingMap = false;\n\nexport var GestureHandling = L.Handler.extend({\n addHooks: function() {\n this._handleTouch = this._handleTouch.bind(this);\n this._handleMouseOver = this._handleMouseOver.bind(this);\n this._handleMouseOut = this._handleMouseOut.bind(this);\n\n this._setupPluginOptions();\n this._setLanguageContent();\n this._disableInteractions();\n\n //Uses native event listeners instead of L.DomEvent due to issues with Android touch events\n //turning into pointer events\n this._map._container.addEventListener(\"touchstart\", this._handleTouch);\n this._map._container.addEventListener(\"touchmove\", this._handleTouch);\n this._map._container.addEventListener(\"touchend\", this._handleTouch);\n this._map._container.addEventListener(\"touchcancel\", this._handleTouch);\n this._map._container.addEventListener(\"click\", this._handleTouch);\n\n L.DomEvent.on(\n this._map._container,\n \"mousewheel\",\n this._handleScroll,\n this\n );\n this._map._container.addEventListener(\"mouseenter\", this._handleMouseOver);\n this._map._container.addEventListener(\"mouseleave\", this._handleMouseOut);\n\n // Listen to these events so will not disable dragging if the user moves the mouse out the boundary of the map container whilst actively dragging the map.\n L.DomEvent.on(this._map, \"movestart\", this._handleDragging, this);\n L.DomEvent.on(this._map, \"move\", this._handleDragging, this);\n L.DomEvent.on(this._map, \"moveend\", this._handleDragging, this);\n },\n\n removeHooks: function() {\n this._enableInteractions();\n\n this._map._container.removeEventListener(\n \"touchstart\",\n this._handleTouch\n );\n this._map._container.removeEventListener(\n \"touchmove\",\n this._handleTouch\n );\n this._map._container.removeEventListener(\"touchend\", this._handleTouch);\n this._map._container.removeEventListener(\n \"touchcancel\",\n this._handleTouch\n );\n this._map._container.removeEventListener(\"click\", this._handleTouch);\n\n L.DomEvent.off(\n this._map._container,\n \"mousewheel\",\n this._handleScroll,\n this\n );\n this._map._container.addEventListener(\"mouseenter\", this._handleMouseOver);\n this._map._container.addEventListener(\"mouseleave\", this._handleMouseOut);\n\n L.DomEvent.off(this._map, \"movestart\", this._handleDragging, this);\n L.DomEvent.off(this._map, \"move\", this._handleDragging, this);\n L.DomEvent.off(this._map, \"moveend\", this._handleDragging, this);\n },\n\n _handleDragging: function(e) {\n if (e.type == \"movestart\" || e.type == \"move\") {\n draggingMap = true;\n } else if (e.type == \"moveend\") {\n draggingMap = false;\n }\n },\n\n _disableInteractions: function() {\n this._map.dragging.disable();\n this._map.scrollWheelZoom.disable();\n if (this._map.tap) {\n this._map.tap.disable();\n }\n },\n\n _enableInteractions: function() {\n this._map.dragging.enable();\n this._map.scrollWheelZoom.enable();\n if (this._map.tap) {\n this._map.tap.enable();\n }\n },\n\n _setupPluginOptions: function() {\n //For backwards compatibility, merge gestureHandlingText into the new options object\n if (this._map.options.gestureHandlingText) {\n this._map.options.gestureHandlingOptions.text = this._map.options.gestureHandlingText;\n }\n },\n\n _setLanguageContent: function() {\n var languageContent;\n //If user has supplied custom language, use that\n if (\n this._map.options.gestureHandlingOptions &&\n this._map.options.gestureHandlingOptions.text &&\n this._map.options.gestureHandlingOptions.text.touch &&\n this._map.options.gestureHandlingOptions.text.scroll &&\n this._map.options.gestureHandlingOptions.text.scrollMac\n ) {\n languageContent = this._map.options.gestureHandlingOptions.text;\n } else {\n //Otherwise auto set it from the language files\n\n //Determine their language e.g fr or en-US\n var lang = this._getUserLanguage();\n\n //If we couldn't find it default to en\n if (!lang) {\n lang = \"en\";\n }\n\n //Lookup the appropriate language content\n if (LanguageContent[lang]) {\n languageContent = LanguageContent[lang];\n }\n\n //If no result, try searching by the first part only. e.g en-US just use en.\n if (!languageContent && lang.indexOf(\"-\") !== -1) {\n lang = lang.split(\"-\")[0];\n languageContent = LanguageContent[lang];\n }\n\n if (!languageContent) {\n // If still nothing, default to English\n // console.log(\"No lang found for\", lang);\n lang = \"en\";\n languageContent = LanguageContent[lang];\n }\n }\n\n //TEST\n // languageContent = LanguageContent[\"bg\"];\n\n //Check if they're on a mac for display of command instead of ctrl\n var mac = false;\n if (navigator.platform.toUpperCase().indexOf(\"MAC\") >= 0) {\n mac = true;\n }\n\n var scrollContent = languageContent.scroll;\n if (mac) {\n scrollContent = languageContent.scrollMac;\n }\n\n this._map._container.setAttribute(\n \"data-gesture-handling-touch-content\",\n languageContent.touch\n );\n this._map._container.setAttribute(\n \"data-gesture-handling-scroll-content\",\n scrollContent\n );\n },\n\n _getUserLanguage: function() {\n var lang = navigator.languages\n ? navigator.languages[0]\n : navigator.language || navigator.userLanguage;\n return lang;\n },\n\n _handleTouch: function(e) {\n //Disregard touch events on the minimap if present\n var ignoreList = [\n \"leaflet-control-minimap\",\n \"leaflet-interactive\",\n \"leaflet-popup-content\",\n \"leaflet-popup-content-wrapper\",\n \"leaflet-popup-close-button\",\n \"leaflet-control-zoom-in\",\n \"leaflet-control-zoom-out\"\n ];\n\n var ignoreElement = false;\n for (var i = 0; i < ignoreList.length; i++) {\n if (L.DomUtil.hasClass(e.target, ignoreList[i])) {\n ignoreElement = true;\n }\n }\n\n if (ignoreElement) {\n if (\n L.DomUtil.hasClass(e.target, \"leaflet-interactive\") &&\n e.type === \"touchmove\" &&\n e.touches.length === 1\n ) {\n L.DomUtil.addClass(this._map._container,\n \"leaflet-gesture-handling-touch-warning\"\n );\n this._disableInteractions();\n } else {\n L.DomUtil.removeClass(this._map._container, \n \"leaflet-gesture-handling-touch-warning\"\n );\n }\n return;\n }\n // screenLog(e.type+' '+e.touches.length);\n if (e.type !== \"touchmove\" && e.type !== \"touchstart\") {\n L.DomUtil.removeClass(this._map._container,\n \"leaflet-gesture-handling-touch-warning\"\n );\n return;\n }\n if (e.touches.length === 1) {\n L.DomUtil.addClass(this._map._container, \n \"leaflet-gesture-handling-touch-warning\"\n );\n this._disableInteractions();\n } else {\n this._enableInteractions();\n L.DomUtil.removeClass(this._map._container, \n \"leaflet-gesture-handling-touch-warning\"\n );\n }\n },\n\n _isScrolling: false,\n\n _handleScroll: function(e) {\n if (e.metaKey || e.ctrlKey) {\n e.preventDefault();\n L.DomUtil.removeClass(this._map._container,\n \"leaflet-gesture-handling-scroll-warning\"\n );\n this._map.scrollWheelZoom.enable();\n } else {\n L.DomUtil.addClass(this._map._container,\n \"leaflet-gesture-handling-scroll-warning\"\n );\n this._map.scrollWheelZoom.disable();\n\n clearTimeout(this._isScrolling);\n\n // Set a timeout to run after scrolling ends\n this._isScrolling = setTimeout(function() {\n // Run the callback\n var warnings = document.getElementsByClassName(\n \"leaflet-gesture-handling-scroll-warning\"\n );\n for (var i = 0; i < warnings.length; i++) {\n L.DomUtil.removeClass(warnings[i],\n \"leaflet-gesture-handling-scroll-warning\"\n );\n }\n }, this._map.options.gestureHandlingOptions.duration);\n }\n },\n\n _handleMouseOver: function(e) {\n this._enableInteractions();\n },\n\n _handleMouseOut: function(e) {\n if (!draggingMap) {\n this._disableInteractions();\n }\n }\n\n});\n\nL.Map.addInitHook(\"addHandler\", \"gestureHandling\", GestureHandling);\n\nexport default GestureHandling;\n"]} \ No newline at end of file diff --git a/package.json b/package.json index 0e58180..83bd727 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "leaflet-gesture-handling", - "version": "1.1.8", + "version": "1.1.9", "description": "Prompt mobile user to use 2 fingers to move the map. Prompt desktop users to use Ctrl+Mouse Wheel to zoom. Brings Google Maps gesture handling into Leaflet. ", "main": "./dist/leaflet-gesture-handling.min.js", "files": [ diff --git a/src/js/leaflet-gesture-handling.js b/src/js/leaflet-gesture-handling.js index 33afa6d..63750d6 100644 --- a/src/js/leaflet-gesture-handling.js +++ b/src/js/leaflet-gesture-handling.js @@ -1,6 +1,6 @@ /* * * Leaflet Gesture Handling ** -* * Version 1.1.8 +* * Version 1.1.9 */ import LanguageContent from "./language-content";