// source --> https://modernys.re/wp-content/plugins/modernys-map/assets/libs/photon/dist/photon-geocoder-autocomplete.min.js 
!function(t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).Photon=t()}(function(){return function n(s,o,r){function a(e,t){if(!o[e]){if(!s[e]){var i="function"==typeof require&&require;if(!t&&i)return i(e,!0);if(u)return u(e,!0);throw(i=new Error("Cannot find module '"+e+"'")).code="MODULE_NOT_FOUND",i}i=o[e]={exports:{}},s[e][0].call(i.exports,function(t){return a(s[e][1][t]||t)},i,i.exports,n,s,o,r)}return o[e].exports}for(var u="function"==typeof require&&require,t=0;t<r.length;t++)a(r[t]);return a}({1:[function(t,e,i){function l(t){return"function"==typeof Array.isArray?Array.isArray(t):"[object Array]"===o.call(t)}function c(t){"use strict";if(t&&"[object Object]"===o.call(t)){var e,i=s.call(t,"constructor"),n=t.constructor&&t.constructor.prototype&&s.call(t.constructor.prototype,"isPrototypeOf");if(!t.constructor||i||n){for(e in t);return void 0===e||s.call(t,e)}}}function p(t,e){n&&"__proto__"===e.name?n(t,e.name,{enumerable:!0,configurable:!0,value:e.newValue,writable:!0}):t[e.name]=e.newValue}function f(t,e){if("__proto__"===e){if(!s.call(t,e))return;if(r)return r(t,e).value}return t[e]}var s=Object.prototype.hasOwnProperty,o=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor;e.exports=function t(){"use strict";var e,i,n,s,o,r=arguments[0],a=1,u=arguments.length,h=!1;for("boolean"==typeof r&&(h=r,r=arguments[1]||{},a=2),(null==r||"object"!=typeof r&&"function"!=typeof r)&&(r={});a<u;++a)if(null!=(e=arguments[a]))for(i in e)o=f(r,i),r!==(n=f(e,i))&&(h&&n&&(c(n)||(s=l(n)))?(o=s?(s=!1,o&&l(o)?o:[]):o&&c(o)?o:{},p(r,{name:i,newValue:t(h,o,n)})):void 0!==n&&p(r,{name:i,newValue:n}));return r}},{}],2:[function(t,e,i){"use strict";function s(){}var o=t("extend"),r=t("./utils");s.prototype.forEach=function(t,e){Array.prototype.forEach.call(t,e)},s.prototype.ajax=function(i,n){"object"==typeof this.xhr&&this.xhr.abort(),this.xhr=new XMLHttpRequest,this.xhr.open("GET",this.options.url+this.buildQueryString(this.getParams()),!0),this.xhr.onload=function(t){var e=new Event("ajax:return");document.dispatchEvent(e),200===this.status&&i&&(e=this.response,e=JSON.parse(e),i.call(n||this,e)),delete this.xhr};var t=new Event("ajax:send");document.dispatchEvent(t),this.xhr.send()},s.prototype.buildQueryString=function(t){var e,i=[];for(e in t)t[e]&&i.push(encodeURIComponent(e)+"="+encodeURIComponent(t[e]));return i.join("&")},s.prototype.featureToPopupContent=function(t){var e=r.dom.create("div","ol-photon-popup");return r.dom.create("h3","",e).innerHTML=t.properties.label,e};e.exports={Reverse:function(t){var e=o({},s.prototype,{options:{url:"http://photon.komoot.de/reverse/?",limit:1,handleResults:null},initialize:function(t){this.options=o({},this.options,t)},doReverse:function(t){var e=new CustomEvent("selected",{coordinates:t});document.dispatchEvent(e),this.coordinates=t,this.ajax(this.handleResults.bind(this),this)},_handleResults:function(t){},handleResults:function(t){return(this.options.handleResults||this._handleResults).call(this,t)},getParams:function(){return{lang:this.options.lang,limit:this.options.limit,lat:this.coordinates[1],lon:this.coordinates[0]}}}),e=Object.create(e);return e.initialize(t),e},Search:function(t){var e=o({},s.prototype,{options:{url:"http://photon.komoot.de/api/?",placeholder:"Start typing...",minChar:3,limit:5,submitDelay:300,includePosition:null,noResultLabel:"No result",feedbackEmail:"photon@komoot.de"},CACHE:"",RESULTS:[],KEYS:{LEFT:37,UP:38,RIGHT:39,DOWN:40,TAB:9,RETURN:13,ESC:27,APPLE:91,SHIFT:16,ALT:17,CTRL:18},initialize:function(t,e){this.input=t,this.options=o({},this.options,e);var i=null;try{Object.defineProperty(this,"CURRENT",{get:function(){return i},set:function(t){"object"==typeof t&&(t=this.resultToIndex(t)),i=t}})}catch(t){}this.input.type="search",this.input.placeholder=this.options.placeholder,this.input.autocomplete="off",this.input.autocorrect="off",this.input.addEventListener("keydown",this.onKeyDown.bind(this),!1),this.input.addEventListener("input",this.onInput.bind(this),!1),this.input.addEventListener("blur",this.onBlur.bind(this),!1),this.input.addEventListener("focus",this.onFocus.bind(this),!1),this.createResultsContainer()},createResultsContainer:function(){this.resultsContainer=r.dom.create("ul","photon-autocomplete",document.querySelector("body"))},resizeContainer:function(){var t=this.getLeft(this.input),e=this.getTop(this.input)+this.input.offsetHeight;this.resultsContainer.style.left=t+"px",this.resultsContainer.style.top=e+"px",e=this.options.width||this.input.offsetWidth-2,this.resultsContainer.style.width=e+"px"},onKeyDown:function(t){switch(t.keyCode){case this.KEYS.TAB:null!==this.CURRENT&&this.setChoice(),r.evt.stop(t);break;case this.KEYS.RETURN:r.evt.stop(t),this.setChoice();break;case this.KEYS.ESC:r.evt.stop(t),this.hide(),this.input.blur();break;case this.KEYS.DOWN:0<this.RESULTS.length&&(null!==this.CURRENT&&this.CURRENT<this.RESULTS.length-1?(this.CURRENT++,this.highlight()):null===this.CURRENT&&(this.CURRENT=0,this.highlight()));break;case this.KEYS.UP:null!==this.CURRENT&&r.evt.stop(t),0<this.RESULTS.length&&(0<this.CURRENT?(this.CURRENT--,this.highlight()):0===this.CURRENT&&(this.CURRENT=null,this.highlight()))}},onInput:function(t){"number"==typeof this.submitDelay&&(window.clearTimeout(this.submitDelay),delete this.submitDelay),this.submitDelay=window.setTimeout(this.search.bind(this),this.options.submitDelay)},onBlur:function(t){var e=new Event("blur");document.dispatchEvent(e),setTimeout(function(){this.hide()}.bind(this),100)},onFocus:function(t){var e=new Event("focus");document.dispatchEvent(e),this.input.select(),this.search()},clear:function(){this.RESULTS=[],this.CURRENT=null,this.CACHE="",this.resultsContainer.innerHTML=""},hide:function(){var t=new Event("hide");document.dispatchEvent(t),this.clear(),this.resultsContainer.style.display="none"},setChoice:function(t){var e;(t=t||this.RESULTS[this.CURRENT])&&(this.hide(),this.input.value="",e=new CustomEvent("selected",{choice:t.feature}),document.dispatchEvent(e),this.onSelected(t.feature))},search:function(){var t=this.input.value,e="function"==typeof this.options.minChar?this.options.minChar(t):t.length>=this.options.minChar;if(!t||!e)return this.clear();t+""!=this.CACHE+""&&(this.CACHE=t,this._doSearch())},_doSearch:function(){this.ajax(this.handleResults,this)},_onSelected:function(t){console.log(t)},onSelected:function(t){return(this.options.onSelected||this._onSelected).call(this,t)},_formatResult:function(t,e){var i=r.dom.create("strong","",e),n=r.dom.create("small","",e),s=[],e=this.formatType(t);i.innerHTML=t.properties.name,e&&s.push(e),t.properties.city&&t.properties.city!==t.properties.name&&s.push(t.properties.city),t.properties.country&&s.push(t.properties.country),n.innerHTML=s.join(", ")},formatResult:function(t,e){return(this.options.formatResult||this._formatResult).call(this,t,e)},formatType:function(t){return(this.options.formatType||this._formatType).call(this,t)},_formatType:function(t){return t.properties.osm_value},createResult:function(t){var e=r.dom.create("li","",this.resultsContainer);this.formatResult(t,e);var i={feature:t,el:e};return e.addEventListener("mouseover",function(t){this.CURRENT=i,this.highlight()}.bind(this),!1),e.addEventListener("mousedown",function(t){this.setChoice()}.bind(this)),i},resultToIndex:function(i){var n=null;return this.forEach(this.RESULTS,function(t,e){t===i&&(n=e)}),n},handleResults:function(t){var e;this.clear(),this.resultsContainer.style.display="block",this.resizeContainer(),this.forEach(t.features,function(t){this.RESULTS.push(this.createResult(t))}.bind(this)),0===t.features.length&&(r.dom.create("li","photon-no-result",this.resultsContainer).innerHTML=this.options.noResultLabel),this.options.feedbackEmail&&((e=r.dom.create("a","photon-feedback",this.resultsContainer)).href="mailto:"+this.options.feedbackEmail,e.innerHTML="Feedback"),this.CURRENT=0,this.highlight(),this.options.resultsHandler&&this.options.resultsHandler(t)},highlight:function(){this.forEach(this.RESULTS,function(t,e){e===this.CURRENT?r.dom.addClass(t.el,"on"):r.dom.removeClass(t.el,"on")}.bind(this))},getLeft:function(t){var e=t.offsetLeft;for(t=t.offsetParent;t;)e+=t.offsetLeft,t=t.offsetParent;return e},getTop:function(t){var e=t.offsetTop;for(t=t.offsetParent;t;)e+=t.offsetTop,t=t.offsetParent;return e},getParams:function(){var t,e;return this.options.includePosition?[t,e]=this.options.includePosition():t=e=null,{q:this.CACHE,lang:this.options.lang,limit:this.options.limit,lat:e,lon:t}}}),i=r.dom.create("div",null),n=r.dom.create("input","photon-input",i);Object.create(e);return e.initialize(n,t),i}}},{"./utils":3,extend:1}],3:[function(t,e,i){function r(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}var a={create:function(t,e,i){t=document.createElement(t);return e&&(t.className=e),i&&i.appendChild(t),t},hasClass:function(t,e){if(void 0!==t.classList)return t.classList.contains(e);t=a.getClass(t);return 0<t.length&&new RegExp("(^|\\s)"+e+"(\\s|$)").test(t)},addClass:function(t,e){var i;if(void 0!==t.classList)for(var n=r(e).split(/\s+/),s=0,o=n.length;s<o;s++)t.classList.add(n[s]);else a.hasClass(t,e)||(i=a.getClass(t),a.setClass(t,(i?i+" ":"")+e))},removeClass:function(t,e){void 0!==t.classList?t.classList.remove(e):a.setClass(t,r((" "+a.getClass(t)+" ").replace(" "+e+" "," ")))},setClass:function(t,e){void 0===t.className.baseVal?t.className=e:t.className.baseVal=e},getClass:function(t){return void 0===t.className.baseVal?t.className:t.className.baseVal}};e.exports={dom:a,evt:{preventDefault:function(t){return t.preventDefault?t.preventDefault():t.returnValue=!1,this},stopPropagation:function(t){return t.stopPropagation?t.stopPropagation():t.cancelBubble=!0,this},stop:function(t){return this.preventDefault(t).stopPropagation(t)}}}},{}]},{},[2])(2)});