@vidro/map-handler 1.1.16 → 1.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VidroMaps=t():e.VidroMaps=t()}(self,(()=>(()=>{"use strict";var e={187:e=>{var t,o="object"==typeof Reflect?Reflect:null,n=o&&"function"==typeof o.apply?o.apply:function(e,t,o){return Function.prototype.apply.call(e,t,o)};t=o&&"function"==typeof o.ownKeys?o.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var r=Number.isNaN||function(e){return e!=e};function s(){s.init.call(this)}e.exports=s,e.exports.once=function(e,t){return new Promise((function(o,n){function r(o){e.removeListener(t,s),n(o)}function s(){"function"==typeof e.removeListener&&e.removeListener("error",r),o([].slice.call(arguments))}y(e,t,s,{once:!0}),"error"!==t&&function(e,t,o){"function"==typeof e.on&&y(e,"error",t,{once:!0})}(e,r)}))},s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var i=10;function a(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function l(e){return void 0===e._maxListeners?s.defaultMaxListeners:e._maxListeners}function u(e,t,o,n){var r,s,i,u;if(a(o),void 0===(s=e._events)?(s=e._events=Object.create(null),e._eventsCount=0):(void 0!==s.newListener&&(e.emit("newListener",t,o.listener?o.listener:o),s=e._events),i=s[t]),void 0===i)i=s[t]=o,++e._eventsCount;else if("function"==typeof i?i=s[t]=n?[o,i]:[i,o]:n?i.unshift(o):i.push(o),(r=l(e))>0&&i.length>r&&!i.warned){i.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+i.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=i.length,u=c,console&&console.warn&&console.warn(u)}return e}function c(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,o){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:o},r=c.bind(n);return r.listener=o,n.wrapFn=r,r}function f(e,t,o){var n=e._events;if(void 0===n)return[];var r=n[t];return void 0===r?[]:"function"==typeof r?o?[r.listener||r]:[r]:o?function(e){for(var t=new Array(e.length),o=0;o<t.length;++o)t[o]=e[o].listener||e[o];return t}(r):m(r,r.length)}function p(e){var t=this._events;if(void 0!==t){var o=t[e];if("function"==typeof o)return 1;if(void 0!==o)return o.length}return 0}function m(e,t){for(var o=new Array(t),n=0;n<t;++n)o[n]=e[n];return o}function y(e,t,o,n){if("function"==typeof e.on)n.once?e.once(t,o):e.on(t,o);else{if("function"!=typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function r(s){n.once&&e.removeEventListener(t,r),o(s)}))}}Object.defineProperty(s,"defaultMaxListeners",{enumerable:!0,get:function(){return i},set:function(e){if("number"!=typeof e||e<0||r(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");i=e}}),s.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},s.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||r(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},s.prototype.getMaxListeners=function(){return l(this)},s.prototype.emit=function(e){for(var t=[],o=1;o<arguments.length;o++)t.push(arguments[o]);var r="error"===e,s=this._events;if(void 0!==s)r=r&&void 0===s.error;else if(!r)return!1;if(r){var i;if(t.length>0&&(i=t[0]),i instanceof Error)throw i;var a=new Error("Unhandled error."+(i?" ("+i.message+")":""));throw a.context=i,a}var l=s[e];if(void 0===l)return!1;if("function"==typeof l)n(l,this,t);else{var u=l.length,c=m(l,u);for(o=0;o<u;++o)n(c[o],this,t)}return!0},s.prototype.addListener=function(e,t){return u(this,e,t,!1)},s.prototype.on=s.prototype.addListener,s.prototype.prependListener=function(e,t){return u(this,e,t,!0)},s.prototype.once=function(e,t){return a(t),this.on(e,d(this,e,t)),this},s.prototype.prependOnceListener=function(e,t){return a(t),this.prependListener(e,d(this,e,t)),this},s.prototype.removeListener=function(e,t){var o,n,r,s,i;if(a(t),void 0===(n=this._events))return this;if(void 0===(o=n[e]))return this;if(o===t||o.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete n[e],n.removeListener&&this.emit("removeListener",e,o.listener||t));else if("function"!=typeof o){for(r=-1,s=o.length-1;s>=0;s--)if(o[s]===t||o[s].listener===t){i=o[s].listener,r=s;break}if(r<0)return this;0===r?o.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(o,r),1===o.length&&(n[e]=o[0]),void 0!==n.removeListener&&this.emit("removeListener",e,i||t)}return this},s.prototype.off=s.prototype.removeListener,s.prototype.removeAllListeners=function(e){var t,o,n;if(void 0===(o=this._events))return this;if(void 0===o.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==o[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete o[e]),this;if(0===arguments.length){var r,s=Object.keys(o);for(n=0;n<s.length;++n)"removeListener"!==(r=s[n])&&this.removeAllListeners(r);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=o[e]))this.removeListener(e,t);else if(void 0!==t)for(n=t.length-1;n>=0;n--)this.removeListener(e,t[n]);return this},s.prototype.listeners=function(e){return f(this,e,!0)},s.prototype.rawListeners=function(e){return f(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):p.call(e,t)},s.prototype.listenerCount=p,s.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}}},t={};function o(n){var r=t[n];if(void 0!==r)return r.exports;var s=t[n]={exports:{}};return e[n](s,s.exports,o),s.exports}o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{o.r(n),o.d(n,{Communicator:()=>v});var e=o(187);function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t(e)}function r(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,i(n.key),n)}}function s(e,t,o){return t&&r(e.prototype,t),o&&r(e,o),Object.defineProperty(e,"prototype",{writable:!1}),e}function i(e){var o=function(e,o){if("object"!==t(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==t(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===t(o)?o:String(o)}var a="undefined"==typeof window,l=s((function e(t){var o,n,r,s=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),o=this,r=function(e){a||window.top.frames[s.domId].postMessage(e,"*")},(n=i(n="sendMessageToMap"))in o?Object.defineProperty(o,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[n]=r,this.domId="map-frame","string"==typeof t.id&&(this.domId=t.id)}));function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function c(e,t){return c=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},c(e,t)}function d(e,t){if(t&&("object"===u(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return f(e)}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function p(e){return p=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},p(e)}function m(e,t,o){return(t=y(t))in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function y(e){var t=function(e,t){if("object"!==u(e)||null===e)return e;var o=e[Symbol.toPrimitive];if(void 0!==o){var n=o.call(e,"string");if("object"!==u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===u(t)?t:String(t)}var v=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&c(e,t)}(s,e);var t,o,n,r=(o=s,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=p(o);if(n){var r=p(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return d(this,e)});function s(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,s),m(f(t=r.call(this)),"onMessageReceived",(function(e){switch(console.log("event arrived to mapHandler",e),e.data.type){case"onZoomChange":t.emitEvent("onZoomChange",e.data.zoom,e.data.domId);break;case"geomAdded":t.emitEvent("geomAdded",e.data.geom_astext,e.data.domId);break;case"layers":t.emitEvent("layers",e.data.layers,e.data.domId);break;case"geoJSONlayers":t.emitEvent("geoJSONlayers",e.data.layers,e.data.domId);break;case"info":t.emitEvent("info",e.data,e.data.domId);break;case"error":t.emitEvent("error",e.data,e.data.domId);break;case"coordinates":t.emitEvent("coordinates",e.data,e.data.domId);break;case"activeLayer":t.emitEvent("activeLayer",e.data,e.data.domId);break;case"geolocation":t.emitEvent("geolocation",e.data,e.data.domId);break;case"WMSInfoAvailable":t.emitEvent("WMSInfoAvailable",e.data,e.data.domId);break;case"giswaterTiledBackgroundDisplayed":t.emitEvent("giswaterTiledBackgroundDisplayed",e.data,e.data.domId);break;case"giswaterTiledBackgroundAvailable":t.emitEvent("giswaterTiledBackgroundAvailable",e.data,e.data.domId);break;case"GiswaterLayerAvailableFilters":t.emitEvent("GiswaterLayerAvailableFilters",e.data,e.data.domId);break;case"loaded":t.emitEvent("loaded",e.data,e.data.domId);break;case"unloaded":t.emitEvent("unloaded",e.data,e.data.domId);break;case"availableWMSLayers":t.emitEvent("availableWMSLayers",e.data.layers,e.data.domId);break;case"layerElements":t.emitEvent("layerElements",e.data,e.data.domId);break;case"getToc":t.emitEvent("getToc",e.data,e.data.domId)}})),m(f(t),"emitEvent",(function(e,o,n){n===t.domId&&(delete o.domId,t.emit(e,o))})),m(f(t),"ZoomIn",(function(){t.com.sendMessageToMap({type:"zoomIn",sessionToken:t.sessionToken})})),m(f(t),"ZoomOut",(function(){t.com.sendMessageToMap({type:"zoomOut",sessionToken:t.sessionToken})})),m(f(t),"AddGeom",(function(e){t.com.sendMessageToMap({type:"AddGeom",geom:e,sessionToken:t.sessionToken})})),m(f(t),"toggleLayer",(function(e,o){void 0===o&&(o={gutter:null,transparent:null,singletile:null}),null!==o.singletile&&"boolean"!=typeof o.singletile&&(o.singletile=null,t.emit("error",{error:"singleTile must be a Boolean"})),""!==o.gutter&&null!==o.gutter&&(isNaN(parseInt(o.gutter))&&(o.gutter=null,t.emit("error",{error:"Gutter must be a number"})),o.singletile&&(o.gutter=null,t.emit("error",{error:"Gutter can only be user with multitile layers; set singletile to false"}))),null!==o.transparent&&"boolean"!=typeof o.transparent&&(o.transparent=null,t.emit("error",{error:"transparent must be a Boolean"})),t.com.sendMessageToMap({type:"toggleLayer",layer:e,gutter:isNaN(parseInt(o.gutter))?null:parseInt(o.gutter),transparent:o.transparent,singletile:o.singletile,sessionToken:t.sessionToken})})),m(f(t),"setActiveLayer",(function(e){t.com.sendMessageToMap({type:"setActiveLayer",layer:e,sessionToken:t.sessionToken})})),m(f(t),"getActiveLayer",(function(){t.com.sendMessageToMap({type:"getActiveLayer",sessionToken:t.sessionToken})})),m(f(t),"loadWMSAvailableLayers",(function(){t.com.sendMessageToMap({type:"loadWMSAvailableLayers",sessionToken:t.sessionToken})})),m(f(t),"clear",(function(){t.com.sendMessageToMap({type:"clear",sessionToken:t.sessionToken})})),m(f(t),"Highlight",(function(e){t.com.sendMessageToMap({type:"highlight",geom:e.geom,zoom:e.zoom,sessionToken:t.sessionToken})})),m(f(t),"zoomToExtent",(function(){t.com.sendMessageToMap({type:"zoomToExtent",sessionToken:t.sessionToken})})),m(f(t),"zoomToCoordinates",(function(e,o,n){isNaN(parseInt(n))||t.com.sendMessageToMap({type:"zoomToCoordinates",sessionToken:t.sessionToken,coordinates:[e,o],zoomLevel:n})})),m(f(t),"infoFromCoordinates",(function(e,o,n,r){var s=void 0===o?null:o,i=void 0!==n&&n?parseInt(n):5,a=void 0===r?"xml":r.toLowerCase();"xml"===a||"json"===a?isNaN(i)?console.error("hitTolerance must be a number"):t.com.sendMessageToMap({type:"infoFromCoordinates",info:e,layer:s,format:a,hitTolerance:i,sessionToken:t.sessionToken}):console.error("Format must be 'xml' or 'json")})),m(f(t),"getElementsFromLayer",(function(e,o,n){var r=void 0===n?"xml":n.toLowerCase();if("xml"===r||"json"===r)if(isNaN(o))console.error("Limit must be a number");else{var s=void 0===e?null:e;t.com.sendMessageToMap({type:"getElementsFromLayer",layer:s,limit:void 0!==o?parseInt(o):100,format:n,sessionToken:t.sessionToken})}else console.error("Format must be 'xml' or 'json")})),m(f(t),"Geolocalize",(function(e){t.com.sendMessageToMap({type:"Geolocalize",toggle:e,sessionToken:t.sessionToken})})),m(f(t),"toggleGiswaterTiled",(function(e,o){t.com.sendMessageToMap({type:"toggleGiswaterTiled",toggle:e,tiled:o,sessionToken:t.sessionToken})})),m(f(t),"reloadDisplayedLayers",(function(){return t.com.sendMessageToMap({type:"reloadDisplayedLayers",sessionToken:t.sessionToken})})),m(f(t),"addGeoJSON",(function(e,o,n){return e?t.com.sendMessageToMap({type:"addGeoJSON",geoJSON:e,options:void 0!==o?o:{fillcolor:null,strokecolor:null},name:n||Math.random().toString(36).substring(7),sessionToken:t.sessionToken}):void t.emit("error",{error:"No geoJSON data"})})),m(f(t),"clearGeoJSON",(function(){return t.com.sendMessageToMap({type:"clearGeoJSON",sessionToken:t.sessionToken})})),m(f(t),"removeGeoJSONLayer",(function(e){return e?t.com.sendMessageToMap({type:"removeGeoJSONLayer",name:e,sessionToken:t.sessionToken}):void t.emit("error",{error:"No geoJSON data"})})),m(f(t),"setGiswaterFilters",(function(e){var o=e;if(e){if("object"!=u(e)){e=(e=(e=e.trim()).replace(/^\s+|\s+$/g,"")).replace(/\\/g,"");try{o=JSON.parse(e)}catch(e){return void t.emit("error",{error:"Filters is not a valid JSON"})}}return t.com.sendMessageToMap({type:"setGiswaterFilters",filters:o,sessionToken:t.sessionToken})}t.emit("error",{error:"No filters"})})),m(f(t),"getGiswaterLayerAvailableFilters",(function(e){return e?t.com.sendMessageToMap({type:"getGiswaterLayerAvailableFilters",name:e,sessionToken:t.sessionToken}):void t.emit("error",{error:"No layer_name"})})),m(f(t),"getToc",(function(){return t.com.sendMessageToMap({type:"getToc",sessionToken:t.sessionToken})})),m(f(t),"setDebug",(function(e){isNaN(parseInt(e))?console.error("Debug is not a integer"):t.com.sendMessageToMap({type:"setDebug",what:e,sessionToken:t.sessionToken})})),m(f(t),"setCustomColors",(function(e){if("object"===u(e)){if(e.hasOwnProperty("geom_stroke_width")){if(isNaN(parseInt(e.geom_stroke_width)))return void console.error("geom_stroke_width is not an number");e.geom_stroke_width=parseInt(e.geom_stroke_width)}else e.geom_stroke_width=1;if(e.hasOwnProperty("geom_radius")){if(isNaN(parseInt(e.geom_radius)))return void console.error("geom_stroke_width is not an number");e.geom_radius=parseInt(e.geom_radius)}else e.geom_radius=4;e.hasOwnProperty("geom_shape")&&"circle"!==e.geom_shape&&"square"!==e.geom_shape&&(e.geom_shape="circle",console.error("geom_shape must be either 'circle' or 'square'")),t.com.sendMessageToMap({type:"setCustomColors",properties:e,sessionToken:t.sessionToken})}else console.error("properties is not an object")})),m(f(t),"changeBackground",(function(e){return t.com.sendMessageToMap({type:"changeBackground",sessionToken:t.sessionToken,newBackground:e})})),t.domId="map-frame","undefined"==typeof window?d(t):("string"==typeof e.id&&(t.domId=e.id),t.com=new l(e),window.addEventListener("message",(function(e){return t.onMessageReceived(e)})),t.sessionToken=e.sessionToken,t)}return t=s,Object.defineProperty(t,"prototype",{writable:!1}),t}(e.EventEmitter)})(),n})()));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.VidroMaps=t():e.VidroMaps=t()}(self,(()=>(()=>{"use strict";var e={187:e=>{var t,o="object"==typeof Reflect?Reflect:null,n=o&&"function"==typeof o.apply?o.apply:function(e,t,o){return Function.prototype.apply.call(e,t,o)};t=o&&"function"==typeof o.ownKeys?o.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var r=Number.isNaN||function(e){return e!=e};function s(){s.init.call(this)}e.exports=s,e.exports.once=function(e,t){return new Promise((function(o,n){function r(o){e.removeListener(t,s),n(o)}function s(){"function"==typeof e.removeListener&&e.removeListener("error",r),o([].slice.call(arguments))}y(e,t,s,{once:!0}),"error"!==t&&function(e,t,o){"function"==typeof e.on&&y(e,"error",t,{once:!0})}(e,r)}))},s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var i=10;function a(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function u(e){return void 0===e._maxListeners?s.defaultMaxListeners:e._maxListeners}function l(e,t,o,n){var r,s,i,l;if(a(o),void 0===(s=e._events)?(s=e._events=Object.create(null),e._eventsCount=0):(void 0!==s.newListener&&(e.emit("newListener",t,o.listener?o.listener:o),s=e._events),i=s[t]),void 0===i)i=s[t]=o,++e._eventsCount;else if("function"==typeof i?i=s[t]=n?[o,i]:[i,o]:n?i.unshift(o):i.push(o),(r=u(e))>0&&i.length>r&&!i.warned){i.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+i.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=i.length,l=c,console&&console.warn&&console.warn(l)}return e}function c(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,o){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:o},r=c.bind(n);return r.listener=o,n.wrapFn=r,r}function f(e,t,o){var n=e._events;if(void 0===n)return[];var r=n[t];return void 0===r?[]:"function"==typeof r?o?[r.listener||r]:[r]:o?function(e){for(var t=new Array(e.length),o=0;o<t.length;++o)t[o]=e[o].listener||e[o];return t}(r):m(r,r.length)}function p(e){var t=this._events;if(void 0!==t){var o=t[e];if("function"==typeof o)return 1;if(void 0!==o)return o.length}return 0}function m(e,t){for(var o=new Array(t),n=0;n<t;++n)o[n]=e[n];return o}function y(e,t,o,n){if("function"==typeof e.on)n.once?e.once(t,o):e.on(t,o);else{if("function"!=typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function r(s){n.once&&e.removeEventListener(t,r),o(s)}))}}Object.defineProperty(s,"defaultMaxListeners",{enumerable:!0,get:function(){return i},set:function(e){if("number"!=typeof e||e<0||r(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");i=e}}),s.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},s.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||r(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},s.prototype.getMaxListeners=function(){return u(this)},s.prototype.emit=function(e){for(var t=[],o=1;o<arguments.length;o++)t.push(arguments[o]);var r="error"===e,s=this._events;if(void 0!==s)r=r&&void 0===s.error;else if(!r)return!1;if(r){var i;if(t.length>0&&(i=t[0]),i instanceof Error)throw i;var a=new Error("Unhandled error."+(i?" ("+i.message+")":""));throw a.context=i,a}var u=s[e];if(void 0===u)return!1;if("function"==typeof u)n(u,this,t);else{var l=u.length,c=m(u,l);for(o=0;o<l;++o)n(c[o],this,t)}return!0},s.prototype.addListener=function(e,t){return l(this,e,t,!1)},s.prototype.on=s.prototype.addListener,s.prototype.prependListener=function(e,t){return l(this,e,t,!0)},s.prototype.once=function(e,t){return a(t),this.on(e,d(this,e,t)),this},s.prototype.prependOnceListener=function(e,t){return a(t),this.prependListener(e,d(this,e,t)),this},s.prototype.removeListener=function(e,t){var o,n,r,s,i;if(a(t),void 0===(n=this._events))return this;if(void 0===(o=n[e]))return this;if(o===t||o.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete n[e],n.removeListener&&this.emit("removeListener",e,o.listener||t));else if("function"!=typeof o){for(r=-1,s=o.length-1;s>=0;s--)if(o[s]===t||o[s].listener===t){i=o[s].listener,r=s;break}if(r<0)return this;0===r?o.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(o,r),1===o.length&&(n[e]=o[0]),void 0!==n.removeListener&&this.emit("removeListener",e,i||t)}return this},s.prototype.off=s.prototype.removeListener,s.prototype.removeAllListeners=function(e){var t,o,n;if(void 0===(o=this._events))return this;if(void 0===o.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==o[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete o[e]),this;if(0===arguments.length){var r,s=Object.keys(o);for(n=0;n<s.length;++n)"removeListener"!==(r=s[n])&&this.removeAllListeners(r);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=o[e]))this.removeListener(e,t);else if(void 0!==t)for(n=t.length-1;n>=0;n--)this.removeListener(e,t[n]);return this},s.prototype.listeners=function(e){return f(this,e,!0)},s.prototype.rawListeners=function(e){return f(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):p.call(e,t)},s.prototype.listenerCount=p,s.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}}},t={};function o(n){var r=t[n];if(void 0!==r)return r.exports;var s=t[n]={exports:{}};return e[n](s,s.exports,o),s.exports}o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{o.r(n),o.d(n,{Communicator:()=>v});var e=o(187);function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t(e)}function r(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,i(n.key),n)}}function s(e,t,o){return t&&r(e.prototype,t),o&&r(e,o),Object.defineProperty(e,"prototype",{writable:!1}),e}function i(e){var o=function(e,o){if("object"!==t(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==t(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===t(o)?o:String(o)}var a="undefined"==typeof window,u=s((function e(t){var o,n,r,s=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),o=this,r=function(e){a||window.top.frames[s.domId].postMessage(e,"*")},(n=i(n="sendMessageToMap"))in o?Object.defineProperty(o,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[n]=r,this.domId="map-frame","string"==typeof t.id&&(this.domId=t.id)}));function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function c(e,t){return c=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},c(e,t)}function d(e,t){if(t&&("object"===l(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return f(e)}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function p(e){return p=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},p(e)}function m(e,t,o){return(t=y(t))in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function y(e){var t=function(e,t){if("object"!==l(e)||null===e)return e;var o=e[Symbol.toPrimitive];if(void 0!==o){var n=o.call(e,"string");if("object"!==l(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===l(t)?t:String(t)}var v=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&c(e,t)}(s,e);var t,o,n,r=(o=s,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=p(o);if(n){var r=p(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return d(this,e)});function s(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,s),m(f(t=r.call(this)),"onMessageReceived",(function(e){switch(e.data.type){case"onZoomChange":t.emitEvent("onZoomChange",e.data.zoom,e.data.domId);break;case"geomAdded":t.emitEvent("geomAdded",e.data.geom_astext,e.data.domId);break;case"layers":t.emitEvent("layers",e.data.layers,e.data.domId);break;case"geoJSONlayers":t.emitEvent("geoJSONlayers",e.data.layers,e.data.domId);break;case"info":t.emitEvent("info",e.data,e.data.domId);break;case"error":t.emitEvent("error",e.data,e.data.domId);break;case"coordinates":t.emitEvent("coordinates",e.data,e.data.domId);break;case"activeLayer":t.emitEvent("activeLayer",e.data,e.data.domId);break;case"geolocation":t.emitEvent("geolocation",e.data,e.data.domId);break;case"WMSInfoAvailable":t.emitEvent("WMSInfoAvailable",e.data,e.data.domId);break;case"giswaterTiledBackgroundDisplayed":t.emitEvent("giswaterTiledBackgroundDisplayed",e.data,e.data.domId);break;case"giswaterTiledBackgroundAvailable":t.emitEvent("giswaterTiledBackgroundAvailable",e.data,e.data.domId);break;case"GiswaterLayerAvailableFilters":t.emitEvent("GiswaterLayerAvailableFilters",e.data,e.data.domId);break;case"loaded":t.emitEvent("loaded",e.data,e.data.domId);break;case"unloaded":t.emitEvent("unloaded",e.data,e.data.domId);break;case"availableWMSLayers":t.emitEvent("availableWMSLayers",e.data.layers,e.data.domId);break;case"layerElements":t.emitEvent("layerElements",e.data,e.data.domId);break;case"getToc":t.emitEvent("getToc",e.data,e.data.domId)}})),m(f(t),"emitEvent",(function(e,o,n){n===t.domId&&(delete o.domId,t.emit(e,o))})),m(f(t),"ZoomIn",(function(){t.com.sendMessageToMap({type:"zoomIn",sessionToken:t.sessionToken})})),m(f(t),"ZoomOut",(function(){t.com.sendMessageToMap({type:"zoomOut",sessionToken:t.sessionToken})})),m(f(t),"AddGeom",(function(e){t.com.sendMessageToMap({type:"AddGeom",geom:e,sessionToken:t.sessionToken})})),m(f(t),"toggleLayer",(function(e,o){void 0===o&&(o={gutter:null,transparent:null,singletile:null}),null!==o.singletile&&"boolean"!=typeof o.singletile&&(o.singletile=null,t.emit("error",{error:"singleTile must be a Boolean"})),""!==o.gutter&&null!==o.gutter&&(isNaN(parseInt(o.gutter))&&(o.gutter=null,t.emit("error",{error:"Gutter must be a number"})),o.singletile&&(o.gutter=null,t.emit("error",{error:"Gutter can only be user with multitile layers; set singletile to false"}))),null!==o.transparent&&"boolean"!=typeof o.transparent&&(o.transparent=null,t.emit("error",{error:"transparent must be a Boolean"})),t.com.sendMessageToMap({type:"toggleLayer",layer:e,gutter:isNaN(parseInt(o.gutter))?null:parseInt(o.gutter),transparent:o.transparent,singletile:o.singletile,sessionToken:t.sessionToken})})),m(f(t),"setActiveLayer",(function(e){t.com.sendMessageToMap({type:"setActiveLayer",layer:e,sessionToken:t.sessionToken})})),m(f(t),"getActiveLayer",(function(){t.com.sendMessageToMap({type:"getActiveLayer",sessionToken:t.sessionToken})})),m(f(t),"loadWMSAvailableLayers",(function(){t.com.sendMessageToMap({type:"loadWMSAvailableLayers",sessionToken:t.sessionToken})})),m(f(t),"clear",(function(){t.com.sendMessageToMap({type:"clear",sessionToken:t.sessionToken})})),m(f(t),"Highlight",(function(e){t.com.sendMessageToMap({type:"highlight",geom:e.geom,zoom:e.zoom,sessionToken:t.sessionToken})})),m(f(t),"zoomToExtent",(function(){t.com.sendMessageToMap({type:"zoomToExtent",sessionToken:t.sessionToken})})),m(f(t),"zoomToCoordinates",(function(e,o,n){isNaN(parseInt(n))||t.com.sendMessageToMap({type:"zoomToCoordinates",sessionToken:t.sessionToken,coordinates:[e,o],zoomLevel:n})})),m(f(t),"infoFromCoordinates",(function(e,o,n,r){var s=void 0===o?null:o,i=void 0!==n&&n?parseInt(n):5,a=void 0===r?"xml":r.toLowerCase();"xml"===a||"json"===a?isNaN(i)?console.error("hitTolerance must be a number"):t.com.sendMessageToMap({type:"infoFromCoordinates",info:e,layer:s,format:a,hitTolerance:i,sessionToken:t.sessionToken}):console.error("Format must be 'xml' or 'json")})),m(f(t),"getElementsFromLayer",(function(e,o,n){var r=void 0===n?"xml":n.toLowerCase();if("xml"===r||"json"===r)if(isNaN(o))console.error("Limit must be a number");else{var s=void 0===e?null:e;t.com.sendMessageToMap({type:"getElementsFromLayer",layer:s,limit:void 0!==o?parseInt(o):100,format:n,sessionToken:t.sessionToken})}else console.error("Format must be 'xml' or 'json")})),m(f(t),"Geolocalize",(function(e){t.com.sendMessageToMap({type:"Geolocalize",toggle:e,sessionToken:t.sessionToken})})),m(f(t),"toggleGiswaterTiled",(function(e,o){t.com.sendMessageToMap({type:"toggleGiswaterTiled",toggle:e,tiled:o,sessionToken:t.sessionToken})})),m(f(t),"reloadDisplayedLayers",(function(){return t.com.sendMessageToMap({type:"reloadDisplayedLayers",sessionToken:t.sessionToken})})),m(f(t),"addGeoJSON",(function(e,o,n){return e?t.com.sendMessageToMap({type:"addGeoJSON",geoJSON:e,options:void 0!==o?o:{fillcolor:null,strokecolor:null},name:n||Math.random().toString(36).substring(7),sessionToken:t.sessionToken}):void t.emit("error",{error:"No geoJSON data"})})),m(f(t),"clearGeoJSON",(function(){return t.com.sendMessageToMap({type:"clearGeoJSON",sessionToken:t.sessionToken})})),m(f(t),"removeGeoJSONLayer",(function(e){return e?t.com.sendMessageToMap({type:"removeGeoJSONLayer",name:e,sessionToken:t.sessionToken}):void t.emit("error",{error:"No geoJSON data"})})),m(f(t),"setGiswaterFilters",(function(e){var o=e;if(e){if("object"!=l(e)){e=(e=(e=e.trim()).replace(/^\s+|\s+$/g,"")).replace(/\\/g,"");try{o=JSON.parse(e)}catch(e){return void t.emit("error",{error:"Filters is not a valid JSON"})}}return t.com.sendMessageToMap({type:"setGiswaterFilters",filters:o,sessionToken:t.sessionToken})}t.emit("error",{error:"No filters"})})),m(f(t),"getGiswaterLayerAvailableFilters",(function(e){return e?t.com.sendMessageToMap({type:"getGiswaterLayerAvailableFilters",name:e,sessionToken:t.sessionToken}):void t.emit("error",{error:"No layer_name"})})),m(f(t),"getToc",(function(){return t.com.sendMessageToMap({type:"getToc",sessionToken:t.sessionToken})})),m(f(t),"setDebug",(function(e){isNaN(parseInt(e))?console.error("Debug is not a integer"):t.com.sendMessageToMap({type:"setDebug",what:e,sessionToken:t.sessionToken})})),m(f(t),"setCustomColors",(function(e){if("object"===l(e)){if(e.hasOwnProperty("geom_stroke_width")){if(isNaN(parseInt(e.geom_stroke_width)))return void console.error("geom_stroke_width is not an number");e.geom_stroke_width=parseInt(e.geom_stroke_width)}else e.geom_stroke_width=1;if(e.hasOwnProperty("geom_radius")){if(isNaN(parseInt(e.geom_radius)))return void console.error("geom_stroke_width is not an number");e.geom_radius=parseInt(e.geom_radius)}else e.geom_radius=4;e.hasOwnProperty("geom_shape")&&"circle"!==e.geom_shape&&"square"!==e.geom_shape&&(e.geom_shape="circle",console.error("geom_shape must be either 'circle' or 'square'")),t.com.sendMessageToMap({type:"setCustomColors",properties:e,sessionToken:t.sessionToken})}else console.error("properties is not an object")})),m(f(t),"changeBackground",(function(e){return t.com.sendMessageToMap({type:"changeBackground",sessionToken:t.sessionToken,newBackground:e})})),m(f(t),"initMeasure",(function(e,o){return t.com.sendMessageToMap({type:"initMeasure",sessionToken:t.sessionToken,measure:e,text:o})})),m(f(t),"cancelMeasure",(function(){return t.com.sendMessageToMap({type:"cancelMeasure",sessionToken:t.sessionToken})})),t.domId="map-frame","undefined"==typeof window?d(t):("string"==typeof e.id&&(t.domId=e.id),t.com=new u(e),window.addEventListener("message",(function(e){return t.onMessageReceived(e)})),t.sessionToken=e.sessionToken,t)}return t=s,Object.defineProperty(t,"prototype",{writable:!1}),t}(e.EventEmitter)})(),n})()));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vidro/map-handler",
3
- "version": "1.1.16",
3
+ "version": "1.1.18",
4
4
  "description": "Tool to achieve the easiest way of communication with the map",
5
5
  "homepage": "https://github.com/Vidro-Software-SL/maphandler",
6
6
  "repository": {
package/src/index.js CHANGED
@@ -1,148 +1,192 @@
1
- import { EventEmitter } from "events"
1
+ import { EventEmitter } from "events";
2
2
  import { iframeCommunicator } from "./shared/iframe-communicator";
3
3
  class Communicator extends EventEmitter {
4
-
5
- constructor(data){
4
+ constructor(data) {
6
5
  super();
7
- this.domId = 'map-frame';
8
- if(typeof window === 'undefined'){
6
+ this.domId = "map-frame";
7
+ if (typeof window === "undefined") {
9
8
  return;
10
- };
11
- if(typeof data.id==="string"){
9
+ }
10
+ if (typeof data.id === "string") {
12
11
  this.domId = data.id;
13
- }
14
- this.com = new iframeCommunicator(data)
15
- window.addEventListener("message", e => this.onMessageReceived(e));
12
+ }
13
+ this.com = new iframeCommunicator(data);
14
+ window.addEventListener("message", (e) => this.onMessageReceived(e));
16
15
  this.sessionToken = data.sessionToken;
17
16
  }
18
17
 
19
- onMessageReceived = e => {
20
- console.log("event arrived to mapHandler",e)
21
- switch(e.data.type){
22
-
23
- case "onZoomChange": this.emitEvent("onZoomChange", e.data.zoom,e.data.domId); break;
24
- case "geomAdded": this.emitEvent("geomAdded", e.data.geom_astext,e.data.domId); break;
25
- case "layers": this.emitEvent("layers", e.data.layers,e.data.domId); break;
26
- case "geoJSONlayers": this.emitEvent("geoJSONlayers", e.data.layers,e.data.domId); break;
27
- case "info": this.emitEvent("info", e.data,e.data.domId); break;
28
- case "error": this.emitEvent("error", e.data,e.data.domId); break;
29
- case "coordinates": this.emitEvent("coordinates", e.data,e.data.domId); break;
30
- case "activeLayer": this.emitEvent("activeLayer", e.data,e.data.domId); break;
31
- case "geolocation": this.emitEvent("geolocation", e.data,e.data.domId); break;
32
- case "WMSInfoAvailable": this.emitEvent("WMSInfoAvailable", e.data,e.data.domId); break;
33
- case "giswaterTiledBackgroundDisplayed": this.emitEvent("giswaterTiledBackgroundDisplayed", e.data,e.data.domId); break;
34
- case "giswaterTiledBackgroundAvailable": this.emitEvent("giswaterTiledBackgroundAvailable", e.data,e.data.domId); break;
35
- case "GiswaterLayerAvailableFilters": this.emitEvent("GiswaterLayerAvailableFilters", e.data,e.data.domId); break;
36
- case "loaded": this.emitEvent("loaded", e.data,e.data.domId); break;
37
- case "unloaded": this.emitEvent("unloaded", e.data,e.data.domId); break;
38
- case "availableWMSLayers": this.emitEvent("availableWMSLayers", e.data.layers,e.data.domId); break;
39
- case "layerElements": this.emitEvent("layerElements", e.data,e.data.domId); break;
40
- case "getToc": this.emitEvent("getToc", e.data,e.data.domId); break;
41
- //case "getLegend": this.emitEvent("getLegend", e.data,e.data.domId); break;
18
+ onMessageReceived = (e) => {
19
+ switch (e.data.type) {
20
+ case "onZoomChange":
21
+ this.emitEvent("onZoomChange", e.data.zoom, e.data.domId);
22
+ break;
23
+ case "geomAdded":
24
+ this.emitEvent("geomAdded", e.data.geom_astext, e.data.domId);
25
+ break;
26
+ case "layers":
27
+ this.emitEvent("layers", e.data.layers, e.data.domId);
28
+ break;
29
+ case "geoJSONlayers":
30
+ this.emitEvent("geoJSONlayers", e.data.layers, e.data.domId);
31
+ break;
32
+ case "info":
33
+ this.emitEvent("info", e.data, e.data.domId);
34
+ break;
35
+ case "error":
36
+ this.emitEvent("error", e.data, e.data.domId);
37
+ break;
38
+ case "coordinates":
39
+ this.emitEvent("coordinates", e.data, e.data.domId);
40
+ break;
41
+ case "activeLayer":
42
+ this.emitEvent("activeLayer", e.data, e.data.domId);
43
+ break;
44
+ case "geolocation":
45
+ this.emitEvent("geolocation", e.data, e.data.domId);
46
+ break;
47
+ case "WMSInfoAvailable":
48
+ this.emitEvent("WMSInfoAvailable", e.data, e.data.domId);
49
+ break;
50
+ case "giswaterTiledBackgroundDisplayed":
51
+ this.emitEvent(
52
+ "giswaterTiledBackgroundDisplayed",
53
+ e.data,
54
+ e.data.domId
55
+ );
56
+ break;
57
+ case "giswaterTiledBackgroundAvailable":
58
+ this.emitEvent(
59
+ "giswaterTiledBackgroundAvailable",
60
+ e.data,
61
+ e.data.domId
62
+ );
63
+ break;
64
+ case "GiswaterLayerAvailableFilters":
65
+ this.emitEvent("GiswaterLayerAvailableFilters", e.data, e.data.domId);
66
+ break;
67
+ case "loaded":
68
+ this.emitEvent("loaded", e.data, e.data.domId);
69
+ break;
70
+ case "unloaded":
71
+ this.emitEvent("unloaded", e.data, e.data.domId);
72
+ break;
73
+ case "availableWMSLayers":
74
+ this.emitEvent("availableWMSLayers", e.data.layers, e.data.domId);
75
+ break;
76
+ case "layerElements":
77
+ this.emitEvent("layerElements", e.data, e.data.domId);
78
+ break;
79
+ case "getToc":
80
+ this.emitEvent("getToc", e.data, e.data.domId);
81
+ break;
82
+ //case "getLegend": this.emitEvent("getLegend", e.data,e.data.domId); break;
42
83
  }
43
-
44
- }
84
+ };
45
85
 
46
- emitEvent = (type,data,domId)=>{
47
- if(domId===this.domId){
86
+ emitEvent = (type, data, domId) => {
87
+ if (domId === this.domId) {
48
88
  delete data.domId;
49
- this.emit(type, data);
89
+ this.emit(type, data);
50
90
  }
51
- }
91
+ };
52
92
 
53
93
  ZoomIn = () => {
54
94
  this.com.sendMessageToMap({
55
95
  type: "zoomIn",
56
96
  sessionToken: this.sessionToken,
57
- });
97
+ });
98
+ };
58
99
 
59
- }
60
-
61
100
  ZoomOut = () => {
62
101
  this.com.sendMessageToMap({
63
102
  type: "zoomOut",
64
103
  sessionToken: this.sessionToken,
65
- });
66
- }
104
+ });
105
+ };
67
106
 
68
107
  AddGeom = (geomtype) => {
69
108
  this.com.sendMessageToMap({
70
109
  type: "AddGeom",
71
110
  geom: geomtype,
72
111
  sessionToken: this.sessionToken,
73
- });
74
- }
112
+ });
113
+ };
75
114
 
76
- toggleLayer = (layer,properties) => {
77
- if(typeof properties==='undefined'){
115
+ toggleLayer = (layer, properties) => {
116
+ if (typeof properties === "undefined") {
78
117
  properties = {
79
118
  gutter: null,
80
119
  transparent: null,
81
- singletile: null
120
+ singletile: null,
82
121
  };
83
122
  }
84
123
 
85
- if(properties.singletile!==null){
86
- if(typeof properties.singletile!=='boolean'){
124
+ if (properties.singletile !== null) {
125
+ if (typeof properties.singletile !== "boolean") {
87
126
  properties.singletile = null;
88
- this.emit("error",{error:"singleTile must be a Boolean"});
127
+ this.emit("error", { error: "singleTile must be a Boolean" });
89
128
  }
90
- }
91
- if(properties.gutter!=='' && properties.gutter!==null){
92
- if(isNaN(parseInt(properties.gutter))){
129
+ }
130
+ if (properties.gutter !== "" && properties.gutter !== null) {
131
+ if (isNaN(parseInt(properties.gutter))) {
93
132
  properties.gutter = null;
94
- this.emit("error",{error:"Gutter must be a number"});
133
+ this.emit("error", { error: "Gutter must be a number" });
95
134
  }
96
- if(properties.singletile){
135
+ if (properties.singletile) {
97
136
  properties.gutter = null;
98
- this.emit("error",{error:"Gutter can only be user with multitile layers; set singletile to false"});
137
+ this.emit("error", {
138
+ error:
139
+ "Gutter can only be user with multitile layers; set singletile to false",
140
+ });
99
141
  }
100
- }
142
+ }
101
143
 
102
- if(properties.transparent!==null){
103
- if(typeof properties.transparent!=='boolean'){
144
+ if (properties.transparent !== null) {
145
+ if (typeof properties.transparent !== "boolean") {
104
146
  properties.transparent = null;
105
- this.emit("error",{error:"transparent must be a Boolean"});
147
+ this.emit("error", { error: "transparent must be a Boolean" });
106
148
  }
107
- }
149
+ }
108
150
  this.com.sendMessageToMap({
109
151
  type: "toggleLayer",
110
152
  layer: layer,
111
- gutter: !isNaN(parseInt(properties.gutter)) ? parseInt(properties.gutter) : null,
153
+ gutter: !isNaN(parseInt(properties.gutter))
154
+ ? parseInt(properties.gutter)
155
+ : null,
112
156
  transparent: properties.transparent,
113
157
  singletile: properties.singletile,
114
158
  sessionToken: this.sessionToken,
115
- });
116
- }
159
+ });
160
+ };
117
161
 
118
162
  setActiveLayer = (layer) => {
119
163
  this.com.sendMessageToMap({
120
164
  type: "setActiveLayer",
121
165
  layer: layer,
122
166
  sessionToken: this.sessionToken,
123
- });
124
- }
167
+ });
168
+ };
125
169
 
126
170
  getActiveLayer = () => {
127
171
  this.com.sendMessageToMap({
128
172
  type: "getActiveLayer",
129
173
  sessionToken: this.sessionToken,
130
- });
131
- }
174
+ });
175
+ };
132
176
 
133
177
  loadWMSAvailableLayers = () => {
134
178
  this.com.sendMessageToMap({
135
179
  type: "loadWMSAvailableLayers",
136
180
  sessionToken: this.sessionToken,
137
- });
138
- }
181
+ });
182
+ };
139
183
 
140
184
  clear = () => {
141
185
  this.com.sendMessageToMap({
142
186
  type: "clear",
143
187
  sessionToken: this.sessionToken,
144
- });
145
- }
188
+ });
189
+ };
146
190
 
147
191
  Highlight = (options) => {
148
192
  this.com.sendMessageToMap({
@@ -150,36 +194,39 @@ class Communicator extends EventEmitter {
150
194
  geom: options.geom,
151
195
  zoom: options.zoom,
152
196
  sessionToken: this.sessionToken,
153
- });
154
- }
197
+ });
198
+ };
155
199
 
156
200
  zoomToExtent = () => {
157
201
  this.com.sendMessageToMap({
158
202
  type: "zoomToExtent",
159
203
  sessionToken: this.sessionToken,
160
- });
161
- }
204
+ });
205
+ };
162
206
 
163
- zoomToCoordinates= (lat,lon,zoomLevel) => {
164
- if(!isNaN(parseInt(zoomLevel))){
207
+ zoomToCoordinates = (lat, lon, zoomLevel) => {
208
+ if (!isNaN(parseInt(zoomLevel))) {
165
209
  this.com.sendMessageToMap({
166
210
  type: "zoomToCoordinates",
167
211
  sessionToken: this.sessionToken,
168
- coordinates:[lat,lon],
169
- zoomLevel: zoomLevel
170
- });
212
+ coordinates: [lat, lon],
213
+ zoomLevel: zoomLevel,
214
+ });
171
215
  }
172
- }
173
-
174
- infoFromCoordinates = (type,layer,hitTolerance,format) => {
175
- const _layer = (typeof layer=='undefined') ? null : layer
176
- const _hitTolerance = (typeof hitTolerance=='undefined' || !hitTolerance) ? 5 : parseInt(hitTolerance)
177
- const _format = (typeof format=='undefined') ? 'xml' : format.toLowerCase();
178
- if(_format!=="xml" && _format!=='json'){
216
+ };
217
+
218
+ infoFromCoordinates = (type, layer, hitTolerance, format) => {
219
+ const _layer = typeof layer == "undefined" ? null : layer;
220
+ const _hitTolerance =
221
+ typeof hitTolerance == "undefined" || !hitTolerance
222
+ ? 5
223
+ : parseInt(hitTolerance);
224
+ const _format = typeof format == "undefined" ? "xml" : format.toLowerCase();
225
+ if (_format !== "xml" && _format !== "json") {
179
226
  console.error("Format must be 'xml' or 'json");
180
227
  return;
181
228
  }
182
- if(isNaN(_hitTolerance)){
229
+ if (isNaN(_hitTolerance)) {
183
230
  console.error("hitTolerance must be a number");
184
231
  return;
185
232
  }
@@ -190,196 +237,214 @@ class Communicator extends EventEmitter {
190
237
  format: _format,
191
238
  hitTolerance: _hitTolerance,
192
239
  sessionToken: this.sessionToken,
193
- });
194
- }
240
+ });
241
+ };
195
242
 
196
- getElementsFromLayer= (layer,limit,format) => {
197
- const _format = (typeof format=='undefined') ? 'xml' : format.toLowerCase();
198
- if(_format!=="xml" && _format!=='json'){
243
+ getElementsFromLayer = (layer, limit, format) => {
244
+ const _format = typeof format == "undefined" ? "xml" : format.toLowerCase();
245
+ if (_format !== "xml" && _format !== "json") {
199
246
  console.error("Format must be 'xml' or 'json");
200
247
  return;
201
248
  }
202
- if(isNaN(limit)){
203
- console.error("Limit must be a number");
249
+ if (isNaN(limit)) {
250
+ console.error("Limit must be a number");
204
251
  return;
205
252
  }
206
- const _layer = (typeof layer=='undefined') ? null : layer
253
+ const _layer = typeof layer == "undefined" ? null : layer;
207
254
  this.com.sendMessageToMap({
208
255
  type: "getElementsFromLayer",
209
256
  layer: _layer,
210
- limit: (typeof limit!='undefined') ? parseInt(limit) : 100,
257
+ limit: typeof limit != "undefined" ? parseInt(limit) : 100,
211
258
  format: format,
212
259
  sessionToken: this.sessionToken,
213
- });
214
- }
260
+ });
261
+ };
215
262
 
216
263
  Geolocalize = (toggle) => {
217
264
  this.com.sendMessageToMap({
218
265
  type: "Geolocalize",
219
266
  toggle: toggle,
220
267
  sessionToken: this.sessionToken,
221
- });
222
- }
268
+ });
269
+ };
223
270
 
224
- toggleGiswaterTiled = (toggle,tiled) => {
271
+ toggleGiswaterTiled = (toggle, tiled) => {
225
272
  this.com.sendMessageToMap({
226
273
  type: "toggleGiswaterTiled",
227
274
  toggle: toggle,
228
275
  tiled: tiled,
229
276
  sessionToken: this.sessionToken,
230
- });
231
- }
277
+ });
278
+ };
232
279
 
233
- reloadDisplayedLayers = ()=>{
280
+ reloadDisplayedLayers = () => {
234
281
  return this.com.sendMessageToMap({
235
282
  type: "reloadDisplayedLayers",
236
283
  sessionToken: this.sessionToken,
237
- });
238
- }
284
+ });
285
+ };
239
286
 
240
- addGeoJSON = (geoJSON,options, name)=>{
241
- if(geoJSON){
287
+ addGeoJSON = (geoJSON, options, name) => {
288
+ if (geoJSON) {
242
289
  return this.com.sendMessageToMap({
243
290
  type: "addGeoJSON",
244
291
  geoJSON: geoJSON,
245
- options: (typeof options!='undefined') ? options : {fillcolor:null,strokecolor:null},
246
- name: name ? name: Math.random().toString(36).substring(7),
292
+ options:
293
+ typeof options != "undefined"
294
+ ? options
295
+ : { fillcolor: null, strokecolor: null },
296
+ name: name ? name : Math.random().toString(36).substring(7),
247
297
  sessionToken: this.sessionToken,
248
- });
249
- }else{
250
- this.emit("error",{error:"No geoJSON data"});
298
+ });
299
+ } else {
300
+ this.emit("error", { error: "No geoJSON data" });
251
301
  return;
252
302
  }
253
- }
303
+ };
254
304
 
255
- clearGeoJSON = ()=>{
305
+ clearGeoJSON = () => {
256
306
  return this.com.sendMessageToMap({
257
307
  type: "clearGeoJSON",
258
308
  sessionToken: this.sessionToken,
259
- });
260
- }
309
+ });
310
+ };
261
311
 
262
- removeGeoJSONLayer = (name)=>{
263
- if(name){
312
+ removeGeoJSONLayer = (name) => {
313
+ if (name) {
264
314
  return this.com.sendMessageToMap({
265
315
  type: "removeGeoJSONLayer",
266
316
  name: name,
267
317
  sessionToken: this.sessionToken,
268
- });
269
- }else{
270
- this.emit("error",{error:"No geoJSON data"});
318
+ });
319
+ } else {
320
+ this.emit("error", { error: "No geoJSON data" });
271
321
  return;
272
322
  }
273
- }
274
-
275
- setGiswaterFilters = (filters)=>{
323
+ };
324
+
325
+ setGiswaterFilters = (filters) => {
276
326
  var filtersJson = filters;
277
- if(filters){
278
- if(typeof filters!="object"){
279
- filters = filters.trim()
280
- filters = filters.replace(/^\s+|\s+$/g, '');
281
- filters = filters.replace(/\\/g, '');
282
- try{
283
- filtersJson = JSON.parse(filters);
284
- }catch(e){
285
- this.emit("error",{error:"Filters is not a valid JSON"});
327
+ if (filters) {
328
+ if (typeof filters != "object") {
329
+ filters = filters.trim();
330
+ filters = filters.replace(/^\s+|\s+$/g, "");
331
+ filters = filters.replace(/\\/g, "");
332
+ try {
333
+ filtersJson = JSON.parse(filters);
334
+ } catch (e) {
335
+ this.emit("error", { error: "Filters is not a valid JSON" });
286
336
  return;
287
337
  }
288
338
  }
289
-
339
+
290
340
  return this.com.sendMessageToMap({
291
341
  type: "setGiswaterFilters",
292
342
  filters: filtersJson,
293
343
  sessionToken: this.sessionToken,
294
- });
295
- }else{
296
- this.emit("error",{error:"No filters"});
344
+ });
345
+ } else {
346
+ this.emit("error", { error: "No filters" });
297
347
  return;
298
348
  }
299
- }
349
+ };
300
350
 
301
- getGiswaterLayerAvailableFilters = (layer_name)=>{
302
- if(layer_name){
303
- return this.com.sendMessageToMap({
351
+ getGiswaterLayerAvailableFilters = (layer_name) => {
352
+ if (layer_name) {
353
+ return this.com.sendMessageToMap({
304
354
  type: "getGiswaterLayerAvailableFilters",
305
355
  name: layer_name,
306
356
  sessionToken: this.sessionToken,
307
- });
308
- }else{
309
- this.emit("error",{error:"No layer_name"});
357
+ });
358
+ } else {
359
+ this.emit("error", { error: "No layer_name" });
310
360
  return;
311
361
  }
312
- }
362
+ };
313
363
 
314
- getToc = ()=>{
364
+ getToc = () => {
315
365
  return this.com.sendMessageToMap({
316
366
  type: "getToc",
317
367
  sessionToken: this.sessionToken,
318
- });
319
- }
368
+ });
369
+ };
320
370
 
321
- setDebug = (what) =>{
322
- if(!isNaN(parseInt(what))){
371
+ setDebug = (what) => {
372
+ if (!isNaN(parseInt(what))) {
323
373
  this.com.sendMessageToMap({
324
374
  type: "setDebug",
325
375
  what: what,
326
376
  sessionToken: this.sessionToken,
327
377
  });
328
- }else{
378
+ } else {
329
379
  console.error("Debug is not a integer");
330
380
  }
331
- }
381
+ };
332
382
 
333
- setCustomColors = (properties)=>{
383
+ setCustomColors = (properties) => {
334
384
  //validate data
335
- if(typeof properties!=='object'){
385
+ if (typeof properties !== "object") {
336
386
  console.error("properties is not an object");
337
387
  return;
338
388
  }
339
- if(properties.hasOwnProperty('geom_stroke_width')){
340
- if(isNaN(parseInt(properties.geom_stroke_width))){
389
+ if (properties.hasOwnProperty("geom_stroke_width")) {
390
+ if (isNaN(parseInt(properties.geom_stroke_width))) {
341
391
  console.error("geom_stroke_width is not an number");
342
392
  return;
343
- }else{
393
+ } else {
344
394
  properties.geom_stroke_width = parseInt(properties.geom_stroke_width);
345
395
  }
346
- }else{
396
+ } else {
347
397
  properties.geom_stroke_width = 1;
348
398
  }
349
- if(properties.hasOwnProperty('geom_radius')){
350
- if(isNaN(parseInt(properties.geom_radius))){
399
+ if (properties.hasOwnProperty("geom_radius")) {
400
+ if (isNaN(parseInt(properties.geom_radius))) {
351
401
  console.error("geom_stroke_width is not an number");
352
402
  return;
353
- }else{
403
+ } else {
354
404
  properties.geom_radius = parseInt(properties.geom_radius);
355
405
  }
356
- }else{
406
+ } else {
357
407
  properties.geom_radius = 4;
358
408
  }
359
409
 
360
- if(properties.hasOwnProperty('geom_shape')){
361
- if(properties.geom_shape!=="circle" && properties.geom_shape!=="square"){
362
- properties.geom_shape = 'circle';
410
+ if (properties.hasOwnProperty("geom_shape")) {
411
+ if (
412
+ properties.geom_shape !== "circle" &&
413
+ properties.geom_shape !== "square"
414
+ ) {
415
+ properties.geom_shape = "circle";
363
416
  console.error("geom_shape must be either 'circle' or 'square'");
364
417
  }
365
418
  }
366
419
  this.com.sendMessageToMap({
367
- type: "setCustomColors",
368
- properties: properties,
369
- sessionToken: this.sessionToken,
420
+ type: "setCustomColors",
421
+ properties: properties,
422
+ sessionToken: this.sessionToken,
370
423
  });
371
- }
424
+ };
372
425
 
373
- changeBackground = (newBackground)=>{
426
+ changeBackground = (newBackground) => {
374
427
  return this.com.sendMessageToMap({
375
428
  type: "changeBackground",
376
429
  sessionToken: this.sessionToken,
377
- newBackground: newBackground
378
- });
379
- }
430
+ newBackground: newBackground,
431
+ });
432
+ };
380
433
 
434
+ initMeasure = (measure, text) => {
435
+ return this.com.sendMessageToMap({
436
+ type: "initMeasure",
437
+ sessionToken: this.sessionToken,
438
+ measure,
439
+ text,
440
+ });
441
+ };
442
+ cancelMeasure = () => {
443
+ return this.com.sendMessageToMap({
444
+ type: "cancelMeasure",
445
+ sessionToken: this.sessionToken,
446
+ });
447
+ };
381
448
  }
382
449
 
383
- export {
384
- Communicator,
385
- }
450
+ export { Communicator };