define(["jquery","appconfig","wsbcore/helper"],function(e,a){function o(a,o){e.getJSON(a,function(e){e&&o(JSON.stringify(e))})}function t(e,a,t,n,i,l){(""===a.trim()||a.trim()===c.address)&&(a=c.address,t.lat=c.defaultCoordinates[1],t.lng=c.defaultCoordinates[0]);var s=t.zoom||c.zoom;if(t.lng&&t.lat)r(e,a,[t.lng,t.lat],s,n,i);else{var d=c.apiKey||n,m=c.apiurl||l,u=m.replace("{0}",encodeURIComponent(p(a)))+d;o(u,function(o){geoData=JSON.parse(o),geoData&&geoData.features[0]&&r(e,a,[geoData.features[0].center[0],geoData.features[0].center[1]],s,n,i)})}}function r(a,o,t,r,i,s){if(!a)return void l();o&&t||(o=c.address,t=c.defaultCoordinates);var p=t[0],m=t[1];if(mapboxgl.accessToken=c.apiKey||i,a){var u=d[a.id],g=null,f=!1;u&&(g=u.mapBoxMap,(u.zoom!==r||u.lat!==p||u.lon!==m)&&(f=!0)),!g||f||s?(g&&(g.remove(),g=null),g=new mapboxgl.Map({container:a,style:"mapbox://styles/mapbox/streets-v11",center:[p,m],zoom:r}),g.addControl(new mapboxgl.NavigationControl({showCompass:!1}),"bottom-left"),g.on("sourcedataloading",function(){(new mapboxgl.Marker).setLngLat(t).addTo(g)}),a.getElementsByClassName("mapboxgl-ctrl-top-left")[0].innerHTML=n(o),e(".mapboxgl-ctrl-top-left").addClass("mapboxgl-ctrl-top-left-Margin"),s||(e(".mapboxgl-ctrl-group").addClass("mapbox-avoid-clicks"),e(".mapboxgl-ctrl-attrib").addClass("mapbox-avoid-clicks"),e(".mapboxgl-ctrl-logo").addClass("mapbox-avoid-clicks")),d[a.id]={mapBoxMap:g,zoom:r,lat:p,lon:m}):g.resize()}}function n(a){var o=e("
",{text:a,css:{margin:"0px",padding:"5px",background:"white",color:"black",border:"1px solid black","line-height":"initial"}});return o.get(0).outerHTML}function l(){require(["/i18n/resources/client","wsbcore/growl"],function(a){e("
").sfGrowl({title:a.resources.Client__Designer__Yikes_hit_a_snag,content:a.resources.Server__There_has_been_an_unexpected_error,icon:"error"})})}function s(e,a){var t="";e&&""!=e.trim()?o(c.apiurl.replace("{0}",encodeURIComponent(p(e)))+c.apiKey,function(e){var o=JSON.parse(e);if(o&&o.features[0]){var r=o.features[0].place_name;a(r)}else a(t)}):a(t)}function p(e){if(a.mapboxApiBlockedChars)for(i=0;i