@opengeoweb/store 8.2.0 → 8.3.0

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.
package/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { webmapUtils, LayerType, webmapTestSettings, WMLayer, getCapabilities } from '@opengeoweb/webmap';
2
- import { defaultLayers, emptyGeoJSON, defaultGeoJSONStyleProperties } from '@opengeoweb/webmap-react';
2
+ import { getGeoJson, moveFeature, defaultLayers, getFeatureCollection, emptyGeoJSON } from '@opengeoweb/webmap-react';
3
3
  export { defaultLayers } from '@opengeoweb/webmap-react';
4
4
 
5
5
  function _iterableToArrayLimit(r, l) {
@@ -485,7 +485,7 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
485
485
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
486
486
  };
487
487
 
488
- function n$1(n){for(var r=arguments.length,t=Array(r>1?r-1:0),e=1;e<r;e++)t[e-1]=arguments[e];if("production"!==process.env.NODE_ENV){var i=Y[n],o=i?"function"==typeof i?i.apply(null,t):i:"unknown error nr: "+n;throw Error("[Immer] "+o)}throw Error("[Immer] minified error nr: "+n+(t.length?" "+t.map((function(n){return "'"+n+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function r$1(n){return !!n&&!!n[Q]}function t$3(n){var r;return !!n&&(function(n){if(!n||"object"!=typeof n)return !1;var r=Object.getPrototypeOf(n);if(null===r)return !0;var t=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;return t===Object||"function"==typeof t&&Function.toString.call(t)===Z}(n)||Array.isArray(n)||!!n[L]||!!(null===(r=n.constructor)||void 0===r?void 0:r[L])||s(n)||v(n))}function i$1(n,r,t){void 0===t&&(t=!1),0===o$1(n)?(t?Object.keys:nn)(n).forEach((function(e){t&&"symbol"==typeof e||r(e,n[e],n);})):n.forEach((function(t,e){return r(e,t,n)}));}function o$1(n){var r=n[Q];return r?r.i>3?r.i-4:r.i:Array.isArray(n)?1:s(n)?2:v(n)?3:0}function u$1(n,r){return 2===o$1(n)?n.has(r):Object.prototype.hasOwnProperty.call(n,r)}function a$1(n,r){return 2===o$1(n)?n.get(r):n[r]}function f(n,r,t){var e=o$1(n);2===e?n.set(r,t):3===e?n.add(t):n[r]=t;}function c$1(n,r){return n===r?0!==n||1/n==1/r:n!=n&&r!=r}function s(n){return X&&n instanceof Map}function v(n){return q&&n instanceof Set}function p(n){return n.o||n.t}function l(n){if(Array.isArray(n))return Array.prototype.slice.call(n);var r=rn(n);delete r[Q];for(var t=nn(r),e=0;e<t.length;e++){var i=t[e],o=r[i];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(r[i]={configurable:!0,writable:!0,enumerable:o.enumerable,value:n[i]});}return Object.create(Object.getPrototypeOf(n),r)}function d(n,e){return void 0===e&&(e=!1),y(n)||r$1(n)||!t$3(n)||(o$1(n)>1&&(n.set=n.add=n.clear=n.delete=h),Object.freeze(n),e&&i$1(n,(function(n,r){return d(r,!0)}),!0)),n}function h(){n$1(2);}function y(n){return null==n||"object"!=typeof n||Object.isFrozen(n)}function b(r){var t=tn[r];return t||n$1(18,r),t}function m(n,r){tn[n]||(tn[n]=r);}function _(){return "production"===process.env.NODE_ENV||U||n$1(0),U}function j(n,r){r&&(b("Patches"),n.u=[],n.s=[],n.v=r);}function g(n){O(n),n.p.forEach(S),n.p=null;}function O(n){n===U&&(U=n.l);}function w(n){return U={p:[],l:U,h:n,m:!0,_:0}}function S(n){var r=n[Q];0===r.i||1===r.i?r.j():r.g=!0;}function P(r,e){e._=e.p.length;var i=e.p[0],o=void 0!==r&&r!==i;return e.h.O||b("ES5").S(e,r,o),o?(i[Q].P&&(g(e),n$1(4)),t$3(r)&&(r=M(e,r),e.l||x(e,r)),e.u&&b("Patches").M(i[Q].t,r,e.u,e.s)):r=M(e,i,[]),g(e),e.u&&e.v(e.u,e.s),r!==H?r:void 0}function M(n,r,t){if(y(r))return r;var e=r[Q];if(!e)return i$1(r,(function(i,o){return A(n,e,r,i,o,t)}),!0),r;if(e.A!==n)return r;if(!e.P)return x(n,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o,u=o,a=!1;3===e.i&&(u=new Set(o),o.clear(),a=!0),i$1(u,(function(r,i){return A(n,e,o,r,i,t,a)})),x(n,o,!1),t&&n.u&&b("Patches").N(e,t,n.u,n.s);}return e.o}function A(e,i,o,a,c,s,v){if("production"!==process.env.NODE_ENV&&c===o&&n$1(5),r$1(c)){var p=M(e,c,s&&i&&3!==i.i&&!u$1(i.R,a)?s.concat(a):void 0);if(f(o,a,p),!r$1(p))return;e.m=!1;}else v&&o.add(c);if(t$3(c)&&!y(c)){if(!e.h.D&&e._<1)return;M(e,c),i&&i.A.l||x(e,c);}}function x(n,r,t){void 0===t&&(t=!1),!n.l&&n.h.D&&n.m&&d(r,t);}function z(n,r){var t=n[Q];return (t?p(t):n)[r]}function I(n,r){if(r in n)for(var t=Object.getPrototypeOf(n);t;){var e=Object.getOwnPropertyDescriptor(t,r);if(e)return e;t=Object.getPrototypeOf(t);}}function k(n){n.P||(n.P=!0,n.l&&k(n.l));}function E(n){n.o||(n.o=l(n.t));}function N(n,r,t){var e=s(r)?b("MapSet").F(r,t):v(r)?b("MapSet").T(r,t):n.O?function(n,r){var t=Array.isArray(n),e={i:t?1:0,A:r?r.A:_(),P:!1,I:!1,R:{},l:r,t:n,k:null,o:null,j:null,C:!1},i=e,o=en;t&&(i=[e],o=on);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(r,t):b("ES5").J(r,t);return (t?t.A:_()).p.push(e),e}function R(e){return r$1(e)||n$1(22,e),function n(r){if(!t$3(r))return r;var e,u=r[Q],c=o$1(r);if(u){if(!u.P&&(u.i<4||!b("ES5").K(u)))return u.t;u.I=!0,e=D(r,c),u.I=!1;}else e=D(r,c);return i$1(e,(function(r,t){u&&a$1(u.t,r)===t||f(e,r,n(t));})),3===c?new Set(e):e}(e)}function D(n,r){switch(r){case 2:return new Map(n);case 3:return Array.from(n)}return l(n)}function F(){function t(n,r){var t=s[n];return t?t.enumerable=r:s[n]=t={configurable:!0,enumerable:r,get:function(){var r=this[Q];return "production"!==process.env.NODE_ENV&&f(r),en.get(r,n)},set:function(r){var t=this[Q];"production"!==process.env.NODE_ENV&&f(t),en.set(t,n,r);}},t}function e(n){for(var r=n.length-1;r>=0;r--){var t=n[r][Q];if(!t.P)switch(t.i){case 5:a(t)&&k(t);break;case 4:o(t)&&k(t);}}}function o(n){for(var r=n.t,t=n.k,e=nn(t),i=e.length-1;i>=0;i--){var o=e[i];if(o!==Q){var a=r[o];if(void 0===a&&!u$1(r,o))return !0;var f=t[o],s=f&&f[Q];if(s?s.t!==a:!c$1(f,a))return !0}}var v=!!r[Q];return e.length!==nn(r).length+(v?0:1)}function a(n){var r=n.k;if(r.length!==n.t.length)return !0;var t=Object.getOwnPropertyDescriptor(r,r.length-1);if(t&&!t.get)return !0;for(var e=0;e<r.length;e++)if(!r.hasOwnProperty(e))return !0;return !1}function f(r){r.g&&n$1(3,JSON.stringify(p(r)));}var s={};m("ES5",{J:function(n,r){var e=Array.isArray(n),i=function(n,r){if(n){for(var e=Array(r.length),i=0;i<r.length;i++)Object.defineProperty(e,""+i,t(i,!0));return e}var o=rn(r);delete o[Q];for(var u=nn(o),a=0;a<u.length;a++){var f=u[a];o[f]=t(f,n||!!o[f].enumerable);}return Object.create(Object.getPrototypeOf(r),o)}(e,n),o={i:e?5:4,A:r?r.A:_(),P:!1,I:!1,R:{},l:r,t:n,k:i,o:null,g:!1,C:!1};return Object.defineProperty(i,Q,{value:o,writable:!0}),i},S:function(n,t,o){o?r$1(t)&&t[Q].A===n&&e(n.p):(n.u&&function n(r){if(r&&"object"==typeof r){var t=r[Q];if(t){var e=t.t,o=t.k,f=t.R,c=t.i;if(4===c)i$1(o,(function(r){r!==Q&&(void 0!==e[r]||u$1(e,r)?f[r]||n(o[r]):(f[r]=!0,k(t)));})),i$1(e,(function(n){void 0!==o[n]||u$1(o,n)||(f[n]=!1,k(t));}));else if(5===c){if(a(t)&&(k(t),f.length=!0),o.length<e.length)for(var s=o.length;s<e.length;s++)f[s]=!1;else for(var v=e.length;v<o.length;v++)f[v]=!0;for(var p=Math.min(o.length,e.length),l=0;l<p;l++)o.hasOwnProperty(l)||(f[l]=!0),void 0===f[l]&&n(o[l]);}}}}(n.p[0]),e(n.p));},K:function(n){return 4===n.i?o(n):a(n)}});}var G,U,W="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),X="undefined"!=typeof Map,q="undefined"!=typeof Set,B="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,H=W?Symbol.for("immer-nothing"):((G={})["immer-nothing"]=!0,G),L=W?Symbol.for("immer-draftable"):"__$immer_draftable",Q=W?Symbol.for("immer-state"):"__$immer_state",Y={0:"Illegal state",1:"Immer drafts cannot have computed properties",2:"This object has been frozen and should not be mutated",3:function(n){return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+n},4:"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",5:"Immer forbids circular references",6:"The first or second argument to `produce` must be a function",7:"The third argument to `produce` must be a function or undefined",8:"First argument to `createDraft` must be a plain object, an array, or an immerable object",9:"First argument to `finishDraft` must be a draft returned by `createDraft`",10:"The given draft is already finalized",11:"Object.defineProperty() cannot be used on an Immer draft",12:"Object.setPrototypeOf() cannot be used on an Immer draft",13:"Immer only supports deleting array indices",14:"Immer only supports setting array indices and the 'length' property",15:function(n){return "Cannot apply patch, path doesn't resolve: "+n},16:'Sets cannot have "replace" patches.',17:function(n){return "Unsupported patch operation: "+n},18:function(n){return "The plugin for '"+n+"' has not been loaded into Immer. To enable the plugin, import and call `enable"+n+"()` when initializing your application."},20:"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",21:function(n){return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '"+n+"'"},22:function(n){return "'current' expects a draft, got: "+n},23:function(n){return "'original' expects a draft, got: "+n},24:"Patching reserved attributes like __proto__, prototype and constructor is not allowed"},Z=""+Object.prototype.constructor,nn="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(n){return Object.getOwnPropertyNames(n).concat(Object.getOwnPropertySymbols(n))}:Object.getOwnPropertyNames,rn=Object.getOwnPropertyDescriptors||function(n){var r={};return nn(n).forEach((function(t){r[t]=Object.getOwnPropertyDescriptor(n,t);})),r},tn={},en={get:function(n,r){if(r===Q)return n;var e=p(n);if(!u$1(e,r))return function(n,r,t){var e,i=I(r,t);return i?"value"in i?i.value:null===(e=i.get)||void 0===e?void 0:e.call(n.k):void 0}(n,e,r);var i=e[r];return n.I||!t$3(i)?i:i===z(n.t,r)?(E(n),n.o[r]=N(n.A.h,i,n)):i},has:function(n,r){return r in p(n)},ownKeys:function(n){return Reflect.ownKeys(p(n))},set:function(n,r,t){var e=I(p(n),r);if(null==e?void 0:e.set)return e.set.call(n.k,t),!0;if(!n.P){var i=z(p(n),r),o=null==i?void 0:i[Q];if(o&&o.t===t)return n.o[r]=t,n.R[r]=!1,!0;if(c$1(t,i)&&(void 0!==t||u$1(n.t,r)))return !0;E(n),k(n);}return n.o[r]===t&&(void 0!==t||r in n.o)||Number.isNaN(t)&&Number.isNaN(n.o[r])||(n.o[r]=t,n.R[r]=!0),!0},deleteProperty:function(n,r){return void 0!==z(n.t,r)||r in n.t?(n.R[r]=!1,E(n),k(n)):delete n.R[r],n.o&&delete n.o[r],!0},getOwnPropertyDescriptor:function(n,r){var t=p(n),e=Reflect.getOwnPropertyDescriptor(t,r);return e?{writable:!0,configurable:1!==n.i||"length"!==r,enumerable:e.enumerable,value:t[r]}:e},defineProperty:function(){n$1(11);},getPrototypeOf:function(n){return Object.getPrototypeOf(n.t)},setPrototypeOf:function(){n$1(12);}},on={};i$1(en,(function(n,r){on[n]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)};})),on.deleteProperty=function(r,t){return "production"!==process.env.NODE_ENV&&isNaN(parseInt(t))&&n$1(13),on.set.call(this,r,t,void 0)},on.set=function(r,t,e){return "production"!==process.env.NODE_ENV&&"length"!==t&&isNaN(parseInt(t))&&n$1(14),en.set.call(this,r[0],t,e,r[0])};var un=function(){function e(r){var e=this;this.O=B,this.D=!0,this.produce=function(r,i,o){if("function"==typeof r&&"function"!=typeof i){var u=i;i=r;var a=e;return function(n){var r=this;void 0===n&&(n=u);for(var t=arguments.length,e=Array(t>1?t-1:0),o=1;o<t;o++)e[o-1]=arguments[o];return a.produce(n,(function(n){var t;return (t=i).call.apply(t,[r,n].concat(e))}))}}var f;if("function"!=typeof i&&n$1(6),void 0!==o&&"function"!=typeof o&&n$1(7),t$3(r)){var c=w(e),s=N(e,r,void 0),v=!0;try{f=i(s),v=!1;}finally{v?g(c):O(c);}return "undefined"!=typeof Promise&&f instanceof Promise?f.then((function(n){return j(c,o),P(n,c)}),(function(n){throw g(c),n})):(j(c,o),P(f,c))}if(!r||"object"!=typeof r){if(void 0===(f=i(r))&&(f=r),f===H&&(f=void 0),e.D&&d(f,!0),o){var p=[],l=[];b("Patches").M(r,f,p,l),o(p,l);}return f}n$1(21,r);},this.produceWithPatches=function(n,r){if("function"==typeof n)return function(r){for(var t=arguments.length,i=Array(t>1?t-1:0),o=1;o<t;o++)i[o-1]=arguments[o];return e.produceWithPatches(r,(function(r){return n.apply(void 0,[r].concat(i))}))};var t,i,o=e.produce(n,r,(function(n,r){t=n,i=r;}));return "undefined"!=typeof Promise&&o instanceof Promise?o.then((function(n){return [n,t,i]})):[o,t,i]},"boolean"==typeof(null==r?void 0:r.useProxies)&&this.setUseProxies(r.useProxies),"boolean"==typeof(null==r?void 0:r.autoFreeze)&&this.setAutoFreeze(r.autoFreeze);}var i=e.prototype;return i.createDraft=function(e){t$3(e)||n$1(8),r$1(e)&&(e=R(e));var i=w(this),o=N(this,e,void 0);return o[Q].C=!0,O(i),o},i.finishDraft=function(r,t){var e=r&&r[Q];"production"!==process.env.NODE_ENV&&(e&&e.C||n$1(9),e.I&&n$1(10));var i=e.A;return j(i,t),P(void 0,i)},i.setAutoFreeze=function(n){this.D=n;},i.setUseProxies=function(r){r&&!B&&n$1(20),this.O=r;},i.applyPatches=function(n,t){var e;for(e=t.length-1;e>=0;e--){var i=t[e];if(0===i.path.length&&"replace"===i.op){n=i.value;break}}e>-1&&(t=t.slice(e+1));var o=b("Patches").$;return r$1(n)?o(n,t):this.produce(n,(function(n){return o(n,t)}))},e}(),an=new un,fn=an.produce;an.produceWithPatches.bind(an);an.setAutoFreeze.bind(an);an.setUseProxies.bind(an);an.applyPatches.bind(an);an.createDraft.bind(an);an.finishDraft.bind(an);var produce = fn;
488
+ function n$1(n){for(var r=arguments.length,t=Array(r>1?r-1:0),e=1;e<r;e++)t[e-1]=arguments[e];if("production"!==process.env.NODE_ENV){var i=Y[n],o=i?"function"==typeof i?i.apply(null,t):i:"unknown error nr: "+n;throw Error("[Immer] "+o)}throw Error("[Immer] minified error nr: "+n+(t.length?" "+t.map((function(n){return "'"+n+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function r$1(n){return !!n&&!!n[Q]}function t$3(n){var r;return !!n&&(function(n){if(!n||"object"!=typeof n)return !1;var r=Object.getPrototypeOf(n);if(null===r)return !0;var t=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;return t===Object||"function"==typeof t&&Function.toString.call(t)===Z}(n)||Array.isArray(n)||!!n[L]||!!(null===(r=n.constructor)||void 0===r?void 0:r[L])||s(n)||v(n))}function i$1(n,r,t){void 0===t&&(t=!1),0===o$1(n)?(t?Object.keys:nn)(n).forEach((function(e){t&&"symbol"==typeof e||r(e,n[e],n);})):n.forEach((function(t,e){return r(e,t,n)}));}function o$1(n){var r=n[Q];return r?r.i>3?r.i-4:r.i:Array.isArray(n)?1:s(n)?2:v(n)?3:0}function u$1(n,r){return 2===o$1(n)?n.has(r):Object.prototype.hasOwnProperty.call(n,r)}function a$1(n,r){return 2===o$1(n)?n.get(r):n[r]}function f(n,r,t){var e=o$1(n);2===e?n.set(r,t):3===e?n.add(t):n[r]=t;}function c$1(n,r){return n===r?0!==n||1/n==1/r:n!=n&&r!=r}function s(n){return X&&n instanceof Map}function v(n){return q&&n instanceof Set}function p(n){return n.o||n.t}function l(n){if(Array.isArray(n))return Array.prototype.slice.call(n);var r=rn(n);delete r[Q];for(var t=nn(r),e=0;e<t.length;e++){var i=t[e],o=r[i];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(r[i]={configurable:!0,writable:!0,enumerable:o.enumerable,value:n[i]});}return Object.create(Object.getPrototypeOf(n),r)}function d(n,e){return void 0===e&&(e=!1),y(n)||r$1(n)||!t$3(n)||(o$1(n)>1&&(n.set=n.add=n.clear=n.delete=h),Object.freeze(n),e&&i$1(n,(function(n,r){return d(r,!0)}),!0)),n}function h(){n$1(2);}function y(n){return null==n||"object"!=typeof n||Object.isFrozen(n)}function b(r){var t=tn[r];return t||n$1(18,r),t}function m(n,r){tn[n]||(tn[n]=r);}function _(){return "production"===process.env.NODE_ENV||U||n$1(0),U}function j(n,r){r&&(b("Patches"),n.u=[],n.s=[],n.v=r);}function g(n){O(n),n.p.forEach(S),n.p=null;}function O(n){n===U&&(U=n.l);}function w(n){return U={p:[],l:U,h:n,m:!0,_:0}}function S(n){var r=n[Q];0===r.i||1===r.i?r.j():r.g=!0;}function P(r,e){e._=e.p.length;var i=e.p[0],o=void 0!==r&&r!==i;return e.h.O||b("ES5").S(e,r,o),o?(i[Q].P&&(g(e),n$1(4)),t$3(r)&&(r=M(e,r),e.l||x(e,r)),e.u&&b("Patches").M(i[Q].t,r,e.u,e.s)):r=M(e,i,[]),g(e),e.u&&e.v(e.u,e.s),r!==H?r:void 0}function M(n,r,t){if(y(r))return r;var e=r[Q];if(!e)return i$1(r,(function(i,o){return A(n,e,r,i,o,t)}),!0),r;if(e.A!==n)return r;if(!e.P)return x(n,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o,u=o,a=!1;3===e.i&&(u=new Set(o),o.clear(),a=!0),i$1(u,(function(r,i){return A(n,e,o,r,i,t,a)})),x(n,o,!1),t&&n.u&&b("Patches").N(e,t,n.u,n.s);}return e.o}function A(e,i,o,a,c,s,v){if("production"!==process.env.NODE_ENV&&c===o&&n$1(5),r$1(c)){var p=M(e,c,s&&i&&3!==i.i&&!u$1(i.R,a)?s.concat(a):void 0);if(f(o,a,p),!r$1(p))return;e.m=!1;}else v&&o.add(c);if(t$3(c)&&!y(c)){if(!e.h.D&&e._<1)return;M(e,c),i&&i.A.l||x(e,c);}}function x(n,r,t){void 0===t&&(t=!1),!n.l&&n.h.D&&n.m&&d(r,t);}function z(n,r){var t=n[Q];return (t?p(t):n)[r]}function I(n,r){if(r in n)for(var t=Object.getPrototypeOf(n);t;){var e=Object.getOwnPropertyDescriptor(t,r);if(e)return e;t=Object.getPrototypeOf(t);}}function k(n){n.P||(n.P=!0,n.l&&k(n.l));}function E(n){n.o||(n.o=l(n.t));}function N(n,r,t){var e=s(r)?b("MapSet").F(r,t):v(r)?b("MapSet").T(r,t):n.O?function(n,r){var t=Array.isArray(n),e={i:t?1:0,A:r?r.A:_(),P:!1,I:!1,R:{},l:r,t:n,k:null,o:null,j:null,C:!1},i=e,o=en;t&&(i=[e],o=on);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(r,t):b("ES5").J(r,t);return (t?t.A:_()).p.push(e),e}function R(e){return r$1(e)||n$1(22,e),function n(r){if(!t$3(r))return r;var e,u=r[Q],c=o$1(r);if(u){if(!u.P&&(u.i<4||!b("ES5").K(u)))return u.t;u.I=!0,e=D(r,c),u.I=!1;}else e=D(r,c);return i$1(e,(function(r,t){u&&a$1(u.t,r)===t||f(e,r,n(t));})),3===c?new Set(e):e}(e)}function D(n,r){switch(r){case 2:return new Map(n);case 3:return Array.from(n)}return l(n)}function F(){function t(n,r){var t=s[n];return t?t.enumerable=r:s[n]=t={configurable:!0,enumerable:r,get:function(){var r=this[Q];return "production"!==process.env.NODE_ENV&&f(r),en.get(r,n)},set:function(r){var t=this[Q];"production"!==process.env.NODE_ENV&&f(t),en.set(t,n,r);}},t}function e(n){for(var r=n.length-1;r>=0;r--){var t=n[r][Q];if(!t.P)switch(t.i){case 5:a(t)&&k(t);break;case 4:o(t)&&k(t);}}}function o(n){for(var r=n.t,t=n.k,e=nn(t),i=e.length-1;i>=0;i--){var o=e[i];if(o!==Q){var a=r[o];if(void 0===a&&!u$1(r,o))return !0;var f=t[o],s=f&&f[Q];if(s?s.t!==a:!c$1(f,a))return !0}}var v=!!r[Q];return e.length!==nn(r).length+(v?0:1)}function a(n){var r=n.k;if(r.length!==n.t.length)return !0;var t=Object.getOwnPropertyDescriptor(r,r.length-1);if(t&&!t.get)return !0;for(var e=0;e<r.length;e++)if(!r.hasOwnProperty(e))return !0;return !1}function f(r){r.g&&n$1(3,JSON.stringify(p(r)));}var s={};m("ES5",{J:function(n,r){var e=Array.isArray(n),i=function(n,r){if(n){for(var e=Array(r.length),i=0;i<r.length;i++)Object.defineProperty(e,""+i,t(i,!0));return e}var o=rn(r);delete o[Q];for(var u=nn(o),a=0;a<u.length;a++){var f=u[a];o[f]=t(f,n||!!o[f].enumerable);}return Object.create(Object.getPrototypeOf(r),o)}(e,n),o={i:e?5:4,A:r?r.A:_(),P:!1,I:!1,R:{},l:r,t:n,k:i,o:null,g:!1,C:!1};return Object.defineProperty(i,Q,{value:o,writable:!0}),i},S:function(n,t,o){o?r$1(t)&&t[Q].A===n&&e(n.p):(n.u&&function n(r){if(r&&"object"==typeof r){var t=r[Q];if(t){var e=t.t,o=t.k,f=t.R,c=t.i;if(4===c)i$1(o,(function(r){r!==Q&&(void 0!==e[r]||u$1(e,r)?f[r]||n(o[r]):(f[r]=!0,k(t)));})),i$1(e,(function(n){void 0!==o[n]||u$1(o,n)||(f[n]=!1,k(t));}));else if(5===c){if(a(t)&&(k(t),f.length=!0),o.length<e.length)for(var s=o.length;s<e.length;s++)f[s]=!1;else for(var v=e.length;v<o.length;v++)f[v]=!0;for(var p=Math.min(o.length,e.length),l=0;l<p;l++)o.hasOwnProperty(l)||(f[l]=!0),void 0===f[l]&&n(o[l]);}}}}(n.p[0]),e(n.p));},K:function(n){return 4===n.i?o(n):a(n)}});}var G,U,W="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),X="undefined"!=typeof Map,q="undefined"!=typeof Set,B="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,H=W?Symbol.for("immer-nothing"):((G={})["immer-nothing"]=!0,G),L=W?Symbol.for("immer-draftable"):"__$immer_draftable",Q=W?Symbol.for("immer-state"):"__$immer_state",Y={0:"Illegal state",1:"Immer drafts cannot have computed properties",2:"This object has been frozen and should not be mutated",3:function(n){return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+n},4:"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",5:"Immer forbids circular references",6:"The first or second argument to `produce` must be a function",7:"The third argument to `produce` must be a function or undefined",8:"First argument to `createDraft` must be a plain object, an array, or an immerable object",9:"First argument to `finishDraft` must be a draft returned by `createDraft`",10:"The given draft is already finalized",11:"Object.defineProperty() cannot be used on an Immer draft",12:"Object.setPrototypeOf() cannot be used on an Immer draft",13:"Immer only supports deleting array indices",14:"Immer only supports setting array indices and the 'length' property",15:function(n){return "Cannot apply patch, path doesn't resolve: "+n},16:'Sets cannot have "replace" patches.',17:function(n){return "Unsupported patch operation: "+n},18:function(n){return "The plugin for '"+n+"' has not been loaded into Immer. To enable the plugin, import and call `enable"+n+"()` when initializing your application."},20:"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",21:function(n){return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '"+n+"'"},22:function(n){return "'current' expects a draft, got: "+n},23:function(n){return "'original' expects a draft, got: "+n},24:"Patching reserved attributes like __proto__, prototype and constructor is not allowed"},Z=""+Object.prototype.constructor,nn="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(n){return Object.getOwnPropertyNames(n).concat(Object.getOwnPropertySymbols(n))}:Object.getOwnPropertyNames,rn=Object.getOwnPropertyDescriptors||function(n){var r={};return nn(n).forEach((function(t){r[t]=Object.getOwnPropertyDescriptor(n,t);})),r},tn={},en={get:function(n,r){if(r===Q)return n;var e=p(n);if(!u$1(e,r))return function(n,r,t){var e,i=I(r,t);return i?"value"in i?i.value:null===(e=i.get)||void 0===e?void 0:e.call(n.k):void 0}(n,e,r);var i=e[r];return n.I||!t$3(i)?i:i===z(n.t,r)?(E(n),n.o[r]=N(n.A.h,i,n)):i},has:function(n,r){return r in p(n)},ownKeys:function(n){return Reflect.ownKeys(p(n))},set:function(n,r,t){var e=I(p(n),r);if(null==e?void 0:e.set)return e.set.call(n.k,t),!0;if(!n.P){var i=z(p(n),r),o=null==i?void 0:i[Q];if(o&&o.t===t)return n.o[r]=t,n.R[r]=!1,!0;if(c$1(t,i)&&(void 0!==t||u$1(n.t,r)))return !0;E(n),k(n);}return n.o[r]===t&&(void 0!==t||r in n.o)||Number.isNaN(t)&&Number.isNaN(n.o[r])||(n.o[r]=t,n.R[r]=!0),!0},deleteProperty:function(n,r){return void 0!==z(n.t,r)||r in n.t?(n.R[r]=!1,E(n),k(n)):delete n.R[r],n.o&&delete n.o[r],!0},getOwnPropertyDescriptor:function(n,r){var t=p(n),e=Reflect.getOwnPropertyDescriptor(t,r);return e?{writable:!0,configurable:1!==n.i||"length"!==r,enumerable:e.enumerable,value:t[r]}:e},defineProperty:function(){n$1(11);},getPrototypeOf:function(n){return Object.getPrototypeOf(n.t)},setPrototypeOf:function(){n$1(12);}},on={};i$1(en,(function(n,r){on[n]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)};})),on.deleteProperty=function(r,t){return "production"!==process.env.NODE_ENV&&isNaN(parseInt(t))&&n$1(13),on.set.call(this,r,t,void 0)},on.set=function(r,t,e){return "production"!==process.env.NODE_ENV&&"length"!==t&&isNaN(parseInt(t))&&n$1(14),en.set.call(this,r[0],t,e,r[0])};var un=function(){function e(r){var e=this;this.O=B,this.D=!0,this.produce=function(r,i,o){if("function"==typeof r&&"function"!=typeof i){var u=i;i=r;var a=e;return function(n){var r=this;void 0===n&&(n=u);for(var t=arguments.length,e=Array(t>1?t-1:0),o=1;o<t;o++)e[o-1]=arguments[o];return a.produce(n,(function(n){var t;return (t=i).call.apply(t,[r,n].concat(e))}))}}var f;if("function"!=typeof i&&n$1(6),void 0!==o&&"function"!=typeof o&&n$1(7),t$3(r)){var c=w(e),s=N(e,r,void 0),v=!0;try{f=i(s),v=!1;}finally{v?g(c):O(c);}return "undefined"!=typeof Promise&&f instanceof Promise?f.then((function(n){return j(c,o),P(n,c)}),(function(n){throw g(c),n})):(j(c,o),P(f,c))}if(!r||"object"!=typeof r){if(void 0===(f=i(r))&&(f=r),f===H&&(f=void 0),e.D&&d(f,!0),o){var p=[],l=[];b("Patches").M(r,f,p,l),o(p,l);}return f}n$1(21,r);},this.produceWithPatches=function(n,r){if("function"==typeof n)return function(r){for(var t=arguments.length,i=Array(t>1?t-1:0),o=1;o<t;o++)i[o-1]=arguments[o];return e.produceWithPatches(r,(function(r){return n.apply(void 0,[r].concat(i))}))};var t,i,o=e.produce(n,r,(function(n,r){t=n,i=r;}));return "undefined"!=typeof Promise&&o instanceof Promise?o.then((function(n){return [n,t,i]})):[o,t,i]},"boolean"==typeof(null==r?void 0:r.useProxies)&&this.setUseProxies(r.useProxies),"boolean"==typeof(null==r?void 0:r.autoFreeze)&&this.setAutoFreeze(r.autoFreeze);}var i=e.prototype;return i.createDraft=function(e){t$3(e)||n$1(8),r$1(e)&&(e=R(e));var i=w(this),o=N(this,e,void 0);return o[Q].C=!0,O(i),o},i.finishDraft=function(r,t){var e=r&&r[Q];"production"!==process.env.NODE_ENV&&(e&&e.C||n$1(9),e.I&&n$1(10));var i=e.A;return j(i,t),P(void 0,i)},i.setAutoFreeze=function(n){this.D=n;},i.setUseProxies=function(r){r&&!B&&n$1(20),this.O=r;},i.applyPatches=function(n,t){var e;for(e=t.length-1;e>=0;e--){var i=t[e];if(0===i.path.length&&"replace"===i.op){n=i.value;break}}e>-1&&(t=t.slice(e+1));var o=b("Patches").$;return r$1(n)?o(n,t):this.produce(n,(function(n){return o(n,t)}))},e}(),an=new un,fn=an.produce;an.produceWithPatches.bind(an);an.setAutoFreeze.bind(an);an.setUseProxies.bind(an);an.applyPatches.bind(an);an.createDraft.bind(an);an.finishDraft.bind(an);var createNextState3 = fn;
489
489
 
490
490
  function _typeof(o) {
491
491
  "@babel/helpers - typeof";
@@ -1672,7 +1672,7 @@ var EnhancerArray = /** @class */ (function (_super) {
1672
1672
  return EnhancerArray;
1673
1673
  }(Array));
1674
1674
  function freezeDraftable(val) {
1675
- return t$3(val) ? produce(val, function () {
1675
+ return t$3(val) ? createNextState3(val, function () {
1676
1676
  }) : val;
1677
1677
  }
1678
1678
  // src/immutableStateInvariantMiddleware.ts
@@ -2138,7 +2138,7 @@ function createReducer(initialState, mapOrBuilderCallback, actionMatchers, defau
2138
2138
  return result;
2139
2139
  }
2140
2140
  else {
2141
- return produce(previousState, function (draft) {
2141
+ return createNextState3(previousState, function (draft) {
2142
2142
  return caseReducer(draft, action);
2143
2143
  });
2144
2144
  }
@@ -2294,7 +2294,7 @@ function createStateOperator(mutator) {
2294
2294
  return state;
2295
2295
  }
2296
2296
  else {
2297
- return produce(state, runMutator);
2297
+ return createNextState3(state, runMutator);
2298
2298
  }
2299
2299
  };
2300
2300
  }
@@ -9564,32 +9564,13 @@ var filterNonTimeDimensions = function filterNonTimeDimensions(dimensions) {
9564
9564
  return dim.name !== 'time';
9565
9565
  }) : [];
9566
9566
  };
9567
- /**
9568
- * Returns geoJSON based on type and multipleShapes
9569
- * @param geoJSON: GeoJSON.FeatureCollection
9570
- * @param shouldAllowMultipleshapes: boolean
9571
- */
9572
- var getGeoJson = function getGeoJson(geojson, shouldAllowMultipleshapes) {
9573
- if (shouldAllowMultipleshapes || !geojson.features.length) {
9574
- return geojson;
9575
- }
9576
- var geometry = geojson.features[0].geometry;
9577
- if (geometry.type === 'Point' || geometry.type === 'LineString') {
9578
- return geojson;
9579
- }
9580
- return geometry.coordinates.length > 1 ? produce(geojson, function (draft) {
9581
- var draftFeature = draft.features[0];
9582
- draftFeature.geometry.coordinates = [draftFeature.geometry.coordinates[1]];
9583
- }) : geojson;
9584
- };
9585
9567
 
9586
9568
  var utils$2 = /*#__PURE__*/Object.freeze({
9587
9569
  __proto__: null,
9588
9570
  isActionLayerSynced: isActionLayerSynced,
9589
9571
  produceDimensionActionForMapLayer: produceDimensionActionForMapLayer,
9590
9572
  produceDraftStateForAllLayersForDimensionWithinMap: produceDraftStateForAllLayersForDimensionWithinMap,
9591
- filterNonTimeDimensions: filterNonTimeDimensions,
9592
- getGeoJson: getGeoJson
9573
+ filterNonTimeDimensions: filterNonTimeDimensions
9593
9574
  });
9594
9575
 
9595
9576
  /* *
@@ -10086,26 +10067,42 @@ var slice$9 = createSlice({
10086
10067
  layerId = _action$payload16.layerId,
10087
10068
  geojson = _action$payload16.geojson,
10088
10069
  _action$payload16$sho = _action$payload16.shouldAllowMultipleShapes,
10089
- shouldAllowMultipleShapes = _action$payload16$sho === void 0 ? false : _action$payload16$sho;
10090
- if (!draft.byId[layerId]) {
10070
+ shouldAllowMultipleShapes = _action$payload16$sho === void 0 ? false : _action$payload16$sho,
10071
+ _action$payload16$rea = _action$payload16.reason,
10072
+ reason = _action$payload16$rea === void 0 ? '' : _action$payload16$rea;
10073
+ var currentLayer = draft.byId[layerId];
10074
+ if (!currentLayer) {
10091
10075
  return;
10092
10076
  }
10093
- var geoJSON = getGeoJson(geojson, shouldAllowMultipleShapes);
10094
- draft.byId[layerId].geojson = geoJSON;
10077
+ var updatedGeoJSON = getGeoJson(geojson, shouldAllowMultipleShapes);
10078
+ if (shouldAllowMultipleShapes) {
10079
+ var _current = R(currentLayer),
10080
+ currentGeoJSON = _current.geojson,
10081
+ _current$selectedFeat = _current.selectedFeatureIndex,
10082
+ selectedFeatureIndex = _current$selectedFeat === void 0 ? 0 : _current$selectedFeat;
10083
+ var newFeatureIndex = moveFeature(currentGeoJSON, updatedGeoJSON, selectedFeatureIndex, reason);
10084
+ if (newFeatureIndex !== undefined) {
10085
+ currentLayer.selectedFeatureIndex = newFeatureIndex;
10086
+ }
10087
+ }
10088
+ currentLayer.geojson = updatedGeoJSON;
10095
10089
  },
10096
10090
  updateFeatureProperties: function updateFeatureProperties(draft, action) {
10097
10091
  var _action$payload17 = action.payload,
10098
10092
  layerId = _action$payload17.layerId,
10099
- properties = _action$payload17.properties;
10093
+ properties = _action$payload17.properties,
10094
+ selectedFeatureIndex = _action$payload17.selectedFeatureIndex;
10100
10095
  var currentLayer = draft.byId[layerId];
10101
10096
  if (!currentLayer) {
10102
10097
  return;
10103
10098
  }
10104
10099
  if (currentLayer.geojson && currentLayer.geojson.features.length) {
10105
10100
  currentLayer.geojson.features.forEach(function (_, index) {
10106
- Object.keys(properties).forEach(function (key) {
10107
- draft.byId[layerId].geojson.features[index].properties[key] = properties[key];
10108
- });
10101
+ if (selectedFeatureIndex === undefined || selectedFeatureIndex === index) {
10102
+ Object.keys(properties).forEach(function (key) {
10103
+ draft.byId[layerId].geojson.features[index].properties[key] = properties[key];
10104
+ });
10105
+ }
10109
10106
  });
10110
10107
  }
10111
10108
  },
@@ -10125,19 +10122,24 @@ var slice$9 = createSlice({
10125
10122
  }
10126
10123
  },
10127
10124
  exitFeatureDrawMode: function exitFeatureDrawMode(draft, action) {
10128
- var layerId = action.payload.layerId;
10125
+ var _action$payload19 = action.payload,
10126
+ layerId = _action$payload19.layerId,
10127
+ shouldAllowMultipleShapes = _action$payload19.shouldAllowMultipleShapes,
10128
+ reason = _action$payload19.reason;
10129
10129
  if (!draft.byId[layerId]) {
10130
10130
  return;
10131
10131
  }
10132
- draft.byId[layerId].isInEditMode = false;
10133
- draft.byId[layerId].drawMode = '';
10132
+ if (!shouldAllowMultipleShapes || shouldAllowMultipleShapes && reason === 'escaped') {
10133
+ draft.byId[layerId].isInEditMode = false;
10134
+ draft.byId[layerId].drawMode = '';
10135
+ }
10134
10136
  }
10135
10137
  },
10136
10138
  extraReducers: function extraReducers(builder) {
10137
10139
  builder.addCase(setTimeSync, function (draft, action) {
10138
- var _action$payload19 = action.payload,
10139
- targetsFromAction = _action$payload19.targets,
10140
- source = _action$payload19.source;
10140
+ var _action$payload20 = action.payload,
10141
+ targetsFromAction = _action$payload20.targets,
10142
+ source = _action$payload20.source;
10141
10143
  /* Because we want backwards compatibility with the previous code, we also need to listen to the original source action */
10142
10144
  var targets = [{
10143
10145
  targetId: source.payload.sourceId,
@@ -10161,9 +10163,9 @@ var slice$9 = createSlice({
10161
10163
  * These targets can be used as payloads in new Layer actions.
10162
10164
  * These actions are here handled via the layer reducer, as it is the same logic
10163
10165
  */
10164
- var _action$payload20 = action.payload,
10165
- targets = _action$payload20.targets,
10166
- source = _action$payload20.source;
10166
+ var _action$payload21 = action.payload,
10167
+ targets = _action$payload21.targets,
10168
+ source = _action$payload21.source;
10167
10169
  var state = R(draft);
10168
10170
  return targets.reduce(function (prevState, target) {
10169
10171
  var action = {
@@ -27654,7 +27656,8 @@ var getLayerEnabled = createSelector(getLayerById, function (layer) {
27654
27656
  * @returns {string} returnType: string - layer name
27655
27657
  */
27656
27658
  var getLayerName = createSelector(getLayerById, function (layer) {
27657
- return layer && layer.name && layer.name.length > 0 ? layer.name : '';
27659
+ var _a;
27660
+ return (_a = layer === null || layer === void 0 ? void 0 : layer.name) !== null && _a !== void 0 ? _a : '';
27658
27661
  });
27659
27662
  /**
27660
27663
  * Gets layer service
@@ -27665,7 +27668,8 @@ var getLayerName = createSelector(getLayerById, function (layer) {
27665
27668
  * @returns {string} returnType: string - layer service
27666
27669
  */
27667
27670
  var getLayerService = createSelector(getLayerById, function (layer) {
27668
- return layer && layer.service ? layer.service : '';
27671
+ var _a;
27672
+ return (_a = layer === null || layer === void 0 ? void 0 : layer.service) !== null && _a !== void 0 ? _a : '';
27669
27673
  });
27670
27674
  /**
27671
27675
  * Gets selected style of the passed layer
@@ -27736,9 +27740,10 @@ var getIsLayerInEditMode = createSelector(getLayerById, function (layer) {
27736
27740
  var getFeatureLayerGeoJSON = createSelector(getLayerById, function (layer) {
27737
27741
  return (layer === null || layer === void 0 ? void 0 : layer.geojson) || undefined;
27738
27742
  });
27739
- var getFeatureLayerGeoJSONProperties = createSelector(getLayerById, function (layer) {
27743
+ var getFeatureLayerGeoJSONProperties = createSelector(getLayerById, getSelectedFeatureIndex, function (layer) {
27744
+ var selecteFeatureIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
27740
27745
  var _a, _b;
27741
- return ((_b = (_a = layer === null || layer === void 0 ? void 0 : layer.geojson) === null || _a === void 0 ? void 0 : _a.features[0]) === null || _b === void 0 ? void 0 : _b.properties) || {};
27746
+ return ((_b = (_a = layer === null || layer === void 0 ? void 0 : layer.geojson) === null || _a === void 0 ? void 0 : _a.features[selecteFeatureIndex]) === null || _b === void 0 ? void 0 : _b.properties) || {};
27742
27747
  });
27743
27748
  /**
27744
27749
  * Gets layerIds that contain passed dimension
@@ -27771,19 +27776,21 @@ var getLayerIsInsideAcceptanceTime = createSelector(getAcceptanceTimeInMinutes,
27771
27776
  return dimension.name === 'time';
27772
27777
  })) === null || _d === void 0 ? void 0 : _d.currentValue;
27773
27778
  }, function (acceptanceTimeInMinutes, layerCurrentTime, mapCurrentTime) {
27774
- if (acceptanceTimeInMinutes === undefined || !mapCurrentTime || !layerCurrentTime) {
27779
+ if (!mapCurrentTime || !layerCurrentTime) {
27775
27780
  return 'equal';
27776
27781
  }
27777
27782
  var mapTime = new Date(mapCurrentTime).getTime();
27778
27783
  var layerTime = new Date(layerCurrentTime).getTime();
27779
- var millisecondsBetween = mapTime - layerTime;
27780
- var acceptanceTimeInMilliseconds = acceptanceTimeInMinutes * 60000;
27781
- if (Math.abs(millisecondsBetween) > acceptanceTimeInMilliseconds) {
27782
- return 'outside';
27783
- }
27784
27784
  if (mapTime === layerTime) {
27785
27785
  return 'equal';
27786
27786
  }
27787
+ if (acceptanceTimeInMinutes !== undefined) {
27788
+ var millisecondsBetween = mapTime - layerTime;
27789
+ var acceptanceTimeInMilliseconds = acceptanceTimeInMinutes * 60000;
27790
+ if (Math.abs(millisecondsBetween) > acceptanceTimeInMilliseconds) {
27791
+ return 'outside';
27792
+ }
27793
+ }
27787
27794
  return 'inside';
27788
27795
  });
27789
27796
 
@@ -28884,7 +28891,6 @@ var DialogTypes;
28884
28891
  DialogTypes["LayerSelect"] = "layerSelect";
28885
28892
  DialogTypes["DrawingTool"] = "drawingTool";
28886
28893
  DialogTypes["DockedLayerManager"] = "dockedLayerManager";
28887
- DialogTypes["DockedDrawingTool"] = "dockedDrawingTool";
28888
28894
  DialogTypes["ObjectManager"] = "objectManager";
28889
28895
  DialogTypes["PublicWarnings"] = "publicWarnings";
28890
28896
  })(DialogTypes || (DialogTypes = {}));
@@ -29354,7 +29360,8 @@ var syncGroupGetViewState = createSelector(syncGroupStore, function (store) {
29354
29360
  return store.viewState;
29355
29361
  });
29356
29362
  var getSyncedMapIdsForTimeslider = createSelector(syncGroupStore, function (store) {
29357
- return store.viewState.timeslider.groups[0].selected;
29363
+ var _a, _b;
29364
+ return (_b = (_a = store.viewState.timeslider.groups[0]) === null || _a === void 0 ? void 0 : _a.selected) !== null && _b !== void 0 ? _b : [];
29358
29365
  }, selectorMemoizationOptions);
29359
29366
  var getSyncGroupTargets = createSelector(syncGroupStore, function (store) {
29360
29367
  if (!store || !store.groups) {
@@ -29987,8 +29994,12 @@ var getMapTimeSliderCenterTime = createSelector(getMapById, function (store) {
29987
29994
  * @param {string} mapId mapId: string - Id of the map
29988
29995
  * @returns {number} returnType: number - unfiltered selected time as a unix timestamp
29989
29996
  */
29990
- var getTimeSliderUnfilteredSelectedTime = createSelector(getMapById, function (store) {
29991
- return store ? store.timeSliderUnfilteredSelectedTime : null;
29997
+ var getTimeSliderUnfilteredSelectedTime = createSelector(getMapById, getSelectedTime, function (store, selectedTime) {
29998
+ var _a;
29999
+ if (!store) {
30000
+ return undefined;
30001
+ }
30002
+ return (_a = store.timeSliderUnfilteredSelectedTime) !== null && _a !== void 0 ? _a : selectedTime;
29992
30003
  });
29993
30004
  /**
29994
30005
  * Returns the number of seconds per pixel on the time slider
@@ -30518,8 +30529,8 @@ var serviceActions = slice$5.actions;
30518
30529
  * Copyright 2020 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
30519
30530
  * Copyright 2020 - Finnish Meteorological Institute (FMI)
30520
30531
  * */
30521
- var servicesStore = function servicesStore(store) {
30522
- return store && store.services ? store.services : null;
30532
+ var getServicesStore = function getServicesStore(store) {
30533
+ return store === null || store === void 0 ? void 0 : store.services;
30523
30534
  };
30524
30535
  /**
30525
30536
  * Retrieves all serviceIds
@@ -30528,8 +30539,9 @@ var servicesStore = function servicesStore(store) {
30528
30539
  * @param {object} store store: object - object from which the service state will be extracted
30529
30540
  * @returns {array} returnType: array - an array of all serviceIds
30530
30541
  */
30531
- var getServiceIds = createSelector(servicesStore, function (serviceState) {
30532
- return serviceState ? serviceState.allIds : [];
30542
+ var getServiceIds = createSelector(getServicesStore, function (serviceState) {
30543
+ var _a;
30544
+ return (_a = serviceState === null || serviceState === void 0 ? void 0 : serviceState.allIds) !== null && _a !== void 0 ? _a : [];
30533
30545
  }, selectorMemoizationOptions);
30534
30546
  /**
30535
30547
  * Gets map services
@@ -30538,8 +30550,9 @@ var getServiceIds = createSelector(servicesStore, function (serviceState) {
30538
30550
  * @param {object} store store: object - Store object
30539
30551
  * @returns {object} returnType: ServiceState
30540
30552
  */
30541
- var getServices = createSelector(servicesStore, function (store) {
30542
- return store ? store.byId : {};
30553
+ var getServices = createSelector(getServicesStore, function (store) {
30554
+ var _a;
30555
+ return (_a = store === null || store === void 0 ? void 0 : store.byId) !== null && _a !== void 0 ? _a : {};
30543
30556
  }, selectorMemoizationOptions);
30544
30557
  /**
30545
30558
  * Gets the service object by its url
@@ -30548,18 +30561,15 @@ var getServices = createSelector(servicesStore, function (store) {
30548
30561
  * @param {object} store store: object - Store object
30549
30562
  * @returns {ReduxService} returnType: Service
30550
30563
  */
30551
- var getServiceByName = createSelector([servicesStore, function (state, serviceUrl) {
30564
+ var getServiceByUrl = createSelector(getServicesStore, function (state, serviceUrl) {
30552
30565
  return serviceUrl;
30553
- }], function (serviceState, serviceUrl) {
30554
- var foundServiceIndex = serviceState.allIds.findIndex(function (id) {
30555
- return serviceState.byId[id].serviceUrl === serviceUrl;
30556
- });
30557
- /* Add the service based on a url */
30558
- var id = foundServiceIndex !== -1 ? serviceState.allIds[foundServiceIndex] : null;
30559
- if (serviceState && serviceState.byId && serviceState.byId[id]) {
30560
- return serviceState.byId[id];
30566
+ }, function (serviceState, serviceUrl) {
30567
+ if (!serviceState) {
30568
+ return undefined;
30561
30569
  }
30562
- return null;
30570
+ return Object.values(serviceState.byId).find(function (service) {
30571
+ return service.serviceUrl === serviceUrl;
30572
+ });
30563
30573
  }, selectorMemoizationOptions);
30564
30574
  /**
30565
30575
  * Gets the layer from the store using the serviceUrl and layerName
@@ -30569,8 +30579,9 @@ var getServiceByName = createSelector([servicesStore, function (state, serviceUr
30569
30579
  * @param {string} serviceUrl serviceUrl: string - Url of the service where the layer belongs to
30570
30580
  * @returns {array} returnType: ServiceLayer[] - All layers within the service object.
30571
30581
  */
30572
- var getLayersFromServiceSelector = createSelector(getServiceByName, function (service) {
30573
- return service && service.layers || null;
30582
+ var getLayersFromServiceSelector = createSelector(getServiceByUrl, function (service) {
30583
+ var _a;
30584
+ return (_a = service === null || service === void 0 ? void 0 : service.layers) !== null && _a !== void 0 ? _a : [];
30574
30585
  }, selectorMemoizationOptions);
30575
30586
  /**
30576
30587
  * Gets the layer from the store using the serviceUrl and layerName
@@ -30581,23 +30592,12 @@ var getLayersFromServiceSelector = createSelector(getServiceByName, function (se
30581
30592
  * @param {string} layerName layerName: string - Name of the layer in the service
30582
30593
  * @returns {ServiceLayer} returnType: ServiceLayer - The layer from the service object.
30583
30594
  */
30584
- var getLayerFromService = createSelector(function (store, serviceUrl) {
30585
- return getLayersFromServiceSelector(store, serviceUrl);
30586
- }, function (store, serviceUrl) {
30587
- return serviceUrl;
30588
- }, function (store, serviceUrl, layerName) {
30595
+ var getLayerFromService = createSelector(getLayersFromServiceSelector, function (_store, _serviceUrl, layerName) {
30589
30596
  return layerName;
30590
- }, function (layers, serviceUrl, layerName) {
30591
- if (!layers) {
30592
- return null;
30593
- }
30594
- var index = layers.findIndex(function (serviceLayer) {
30597
+ }, function (layers, layerName) {
30598
+ return layers.find(function (serviceLayer) {
30595
30599
  return serviceLayer.name === layerName;
30596
30600
  });
30597
- if (index === -1) {
30598
- return null;
30599
- }
30600
- return layers[index];
30601
30601
  }, selectorMemoizationOptions);
30602
30602
  /**
30603
30603
  * Gets the layers stylelist from the servicestore using the serviceUrl and layerName
@@ -30609,14 +30609,15 @@ var getLayerFromService = createSelector(function (store, serviceUrl) {
30609
30609
  * @returns {array} returnType: Style[] - array containing layer styles
30610
30610
  */
30611
30611
  var getLayerStyles = createSelector(getLayerFromService, function (layer) {
30612
- return layer && layer.styles ? layer.styles : [];
30612
+ var _a;
30613
+ return (_a = layer === null || layer === void 0 ? void 0 : layer.styles) !== null && _a !== void 0 ? _a : [];
30613
30614
  }, selectorMemoizationOptions);
30614
30615
 
30615
30616
  var selectors$3 = /*#__PURE__*/Object.freeze({
30616
30617
  __proto__: null,
30617
30618
  getServiceIds: getServiceIds,
30618
30619
  getServices: getServices,
30619
- getServiceByName: getServiceByName,
30620
+ getServiceByUrl: getServiceByUrl,
30620
30621
  getLayersFromServiceSelector: getLayersFromServiceSelector,
30621
30622
  getLayerFromService: getLayerFromService,
30622
30623
  getLayerStyles: getLayerStyles
@@ -33308,25 +33309,27 @@ function toggleAutoUpdateSaga(_ref5) {
33308
33309
  return _regeneratorRuntime().wrap(function _callee5$(_context6) {
33309
33310
  while (1) switch (_context6.prev = _context6.next) {
33310
33311
  case 0:
33311
- _context6.prev = 0;
33312
33312
  shouldAutoUpdate = payload.shouldAutoUpdate, mapId = payload.mapId;
33313
- if (!shouldAutoUpdate) {
33314
- _context6.next = 24;
33313
+ if (shouldAutoUpdate) {
33314
+ _context6.next = 3;
33315
33315
  break;
33316
33316
  }
33317
- _context6.next = 5;
33317
+ return _context6.abrupt("return");
33318
+ case 3:
33319
+ _context6.prev = 3;
33320
+ _context6.next = 6;
33318
33321
  return select(getAutoUpdateLayerId, mapId);
33319
- case 5:
33322
+ case 6:
33320
33323
  autoUpdateLayerId = _context6.sent;
33321
- _context6.next = 8;
33324
+ _context6.next = 9;
33322
33325
  return select(getLayerTimeDimension, autoUpdateLayerId);
33323
- case 8:
33326
+ case 9:
33324
33327
  timeDimension = _context6.sent;
33325
- if (!(timeDimension && timeDimension.maxValue)) {
33326
- _context6.next = 24;
33328
+ if (!(timeDimension === null || timeDimension === void 0 ? void 0 : timeDimension.maxValue)) {
33329
+ _context6.next = 25;
33327
33330
  break;
33328
33331
  }
33329
- _context6.next = 12;
33332
+ _context6.next = 13;
33330
33333
  return put(layerActions.layerChangeDimension({
33331
33334
  layerId: autoUpdateLayerId,
33332
33335
  origin: LayerActionOrigin.toggleAutoUpdateSaga,
@@ -33335,16 +33338,16 @@ function toggleAutoUpdateSaga(_ref5) {
33335
33338
  currentValue: timeDimension.maxValue
33336
33339
  }
33337
33340
  }));
33338
- case 12:
33339
- _context6.next = 14;
33341
+ case 13:
33342
+ _context6.next = 15;
33340
33343
  return select(getSyncedMapIdsForTimeslider);
33341
- case 14:
33344
+ case 15:
33342
33345
  syncedMapIds = _context6.sent;
33343
33346
  if (!(syncedMapIds.length > 0)) {
33344
- _context6.next = 22;
33347
+ _context6.next = 23;
33345
33348
  break;
33346
33349
  }
33347
- _context6.next = 18;
33350
+ _context6.next = 19;
33348
33351
  return all(syncedMapIds.map(function (syncedMapId) {
33349
33352
  return put(setTime({
33350
33353
  origin: 'mapStore saga',
@@ -33352,7 +33355,7 @@ function toggleAutoUpdateSaga(_ref5) {
33352
33355
  value: timeDimension.maxValue
33353
33356
  }));
33354
33357
  }));
33355
- case 18:
33358
+ case 19:
33356
33359
  // When timesliders are synced by syncgrous autoupdate is toggled on, toggle autoupdate off for other timesliders
33357
33360
  payloads = syncedMapIds.reduce(function (syncedMapIdList, syncedMapId) {
33358
33361
  if (syncedMapId !== mapId) {
@@ -33364,29 +33367,29 @@ function toggleAutoUpdateSaga(_ref5) {
33364
33367
  return syncedMapIdList;
33365
33368
  }, []);
33366
33369
  if (!(payloads.length > 0)) {
33367
- _context6.next = 22;
33370
+ _context6.next = 23;
33368
33371
  break;
33369
33372
  }
33370
- _context6.next = 22;
33373
+ _context6.next = 23;
33371
33374
  return all(payloads.map(function (payload) {
33372
33375
  return put(mapActions.toggleAutoUpdate(payload));
33373
33376
  }));
33374
- case 22:
33375
- _context6.next = 24;
33377
+ case 23:
33378
+ _context6.next = 25;
33376
33379
  return call(updateAnimation, mapId, timeDimension.maxValue);
33377
- case 24:
33378
- _context6.next = 29;
33380
+ case 25:
33381
+ _context6.next = 30;
33379
33382
  break;
33380
- case 26:
33381
- _context6.prev = 26;
33382
- _context6.t0 = _context6["catch"](0);
33383
+ case 27:
33384
+ _context6.prev = 27;
33385
+ _context6.t0 = _context6["catch"](3);
33383
33386
  // eslint-disable-next-line no-console
33384
33387
  console.warn(_context6.t0);
33385
- case 29:
33388
+ case 30:
33386
33389
  case "end":
33387
33390
  return _context6.stop();
33388
33391
  }
33389
- }, _callee5, null, [[0, 26]]);
33392
+ }, _callee5, null, [[3, 27]]);
33390
33393
  })();
33391
33394
  }
33392
33395
  function handleBaseLayersSaga(mapId, baseLayers) {
@@ -35369,12 +35372,15 @@ var slice = createSlice({
35369
35372
  drawToolId = _action$payload.drawToolId,
35370
35373
  drawModes = _action$payload.drawModes,
35371
35374
  _action$payload$geoJS = _action$payload.geoJSONLayerId,
35372
- geoJSONLayerId = _action$payload$geoJS === void 0 ? '' : _action$payload$geoJS;
35375
+ geoJSONLayerId = _action$payload$geoJS === void 0 ? '' : _action$payload$geoJS,
35376
+ _action$payload$shoul = _action$payload.shouldAllowMultipleShapes,
35377
+ shouldAllowMultipleShapes = _action$payload$shoul === void 0 ? false : _action$payload$shoul;
35373
35378
  drawAdapter.addOne(draft, {
35374
35379
  drawToolId: drawToolId,
35375
35380
  geoJSONLayerId: geoJSONLayerId,
35376
35381
  activeDrawModeId: '',
35377
- drawModes: drawModes
35382
+ drawModes: drawModes,
35383
+ shouldAllowMultipleShapes: shouldAllowMultipleShapes
35378
35384
  });
35379
35385
  },
35380
35386
  unregisterDrawTool: function unregisterDrawTool(draft, action) {
@@ -35386,7 +35392,9 @@ var slice = createSlice({
35386
35392
  changeDrawToolMode: function changeDrawToolMode(draft, action) {
35387
35393
  var _action$payload2 = action.payload,
35388
35394
  drawModeId = _action$payload2.drawModeId,
35389
- drawToolId = _action$payload2.drawToolId;
35395
+ drawToolId = _action$payload2.drawToolId,
35396
+ _action$payload2$shou = _action$payload2.shouldUpdateShape,
35397
+ shouldUpdateShape = _action$payload2$shou === void 0 ? true : _action$payload2$shou;
35390
35398
  var drawTool = draft.entities[drawToolId];
35391
35399
  if (!drawTool) {
35392
35400
  return;
@@ -35398,7 +35406,7 @@ var slice = createSlice({
35398
35406
  drawTool.activeDrawModeId = '';
35399
35407
  return;
35400
35408
  }
35401
- if ((drawTool === null || drawTool === void 0 ? void 0 : drawTool.activeDrawModeId) !== drawModeId) {
35409
+ if ((drawTool === null || drawTool === void 0 ? void 0 : drawTool.activeDrawModeId) !== drawModeId || !shouldUpdateShape) {
35402
35410
  drawTool.activeDrawModeId = drawModeId;
35403
35411
  } else {
35404
35412
  drawTool.activeDrawModeId = '';
@@ -35417,16 +35425,22 @@ var slice = createSlice({
35417
35425
  },
35418
35426
  extraReducers: function extraReducers(builder) {
35419
35427
  builder.addCase(layerActions.exitFeatureDrawMode, function (draft, action) {
35420
- var layerId = action.payload.layerId;
35428
+ var _action$payload4 = action.payload,
35429
+ layerId = _action$payload4.layerId,
35430
+ shouldAllowMultipleShapes = _action$payload4.shouldAllowMultipleShapes,
35431
+ reason = _action$payload4.reason;
35421
35432
  var drawToolId = getDrawToolByLayerId(draft, layerId);
35422
- if (drawToolId && draft.entities[drawToolId] !== undefined) {
35433
+ if (!drawToolId || drawToolId && !draft.entities[drawToolId]) {
35434
+ return;
35435
+ }
35436
+ if (!shouldAllowMultipleShapes || shouldAllowMultipleShapes && reason === 'escaped') {
35423
35437
  draft.entities[drawToolId].activeDrawModeId = '';
35424
35438
  }
35425
35439
  }).addCase(layerActions.updateFeatureProperties, function (draft, action) {
35426
35440
  var _a;
35427
- var _action$payload4 = action.payload,
35428
- properties = _action$payload4.properties,
35429
- layerId = _action$payload4.layerId;
35441
+ var _action$payload5 = action.payload,
35442
+ properties = _action$payload5.properties,
35443
+ layerId = _action$payload5.layerId;
35430
35444
  var drawToolId = getDrawToolByLayerId(draft, layerId);
35431
35445
  var entity = draft.entities[drawToolId];
35432
35446
  if (drawToolId && entity !== undefined) {
@@ -35521,11 +35535,11 @@ var _marked$3 = /*#__PURE__*/_regeneratorRuntime().mark(drawingSaga);
35521
35535
  function registerDrawToolSaga(_ref) {
35522
35536
  var payload = _ref.payload;
35523
35537
  return /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
35524
- var mapId, geoJSONLayerId;
35538
+ var mapId, geoJSONLayerId, _payload$defaultGeoJS, defaultGeoJSON;
35525
35539
  return _regeneratorRuntime().wrap(function _callee$(_context) {
35526
35540
  while (1) switch (_context.prev = _context.next) {
35527
35541
  case 0:
35528
- mapId = payload.mapId, geoJSONLayerId = payload.geoJSONLayerId; // create for every drawTool a draw layer
35542
+ mapId = payload.mapId, geoJSONLayerId = payload.geoJSONLayerId, _payload$defaultGeoJS = payload.defaultGeoJSON, defaultGeoJSON = _payload$defaultGeoJS === void 0 ? emptyGeoJSON : _payload$defaultGeoJS; // create for every drawTool a draw layer
35529
35543
  if (!(geoJSONLayerId && mapId)) {
35530
35544
  _context.next = 4;
35531
35545
  break;
@@ -35535,7 +35549,7 @@ function registerDrawToolSaga(_ref) {
35535
35549
  mapId: mapId,
35536
35550
  layer: {
35537
35551
  // empty geoJSON
35538
- geojson: emptyGeoJSON,
35552
+ geojson: defaultGeoJSON,
35539
35553
  layerType: LayerType.featureLayer
35540
35554
  },
35541
35555
  layerId: geoJSONLayerId,
@@ -35551,25 +35565,26 @@ function registerDrawToolSaga(_ref) {
35551
35565
  function changeDrawToolSaga(_ref2) {
35552
35566
  var payload = _ref2.payload;
35553
35567
  return /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
35554
- var _a, _b, _c, _d, drawModeId, drawToolId, drawingTool, newDrawMode, currentGeoJSONLayer, currentSelectionType, newSelectionType;
35568
+ var _a, _b, _c, _d, drawModeId, drawToolId, _payload$shouldUpdate, shouldUpdateShape, drawingTool, shouldAllowMultipleShapes, newDrawMode, currentGeoJSONLayer, _ref3, currentGeoJSON, _ref3$selectedFeature, selectedFeatureIndex, currentSelectionType, newSelectionType, isNewToolSelected, shouldUpdateNewShape, geoJSONFeatureCollection, newGeoJSON;
35555
35569
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
35556
35570
  while (1) switch (_context2.prev = _context2.next) {
35557
35571
  case 0:
35558
35572
  _context2.prev = 0;
35559
- drawModeId = payload.drawModeId, drawToolId = payload.drawToolId;
35573
+ drawModeId = payload.drawModeId, drawToolId = payload.drawToolId, _payload$shouldUpdate = payload.shouldUpdateShape, shouldUpdateShape = _payload$shouldUpdate === void 0 ? true : _payload$shouldUpdate;
35560
35574
  _context2.next = 4;
35561
35575
  return select(selectDrawToolById, drawToolId);
35562
35576
  case 4:
35563
35577
  drawingTool = _context2.sent;
35564
- _context2.next = 7;
35578
+ shouldAllowMultipleShapes = drawingTool.shouldAllowMultipleShapes;
35579
+ _context2.next = 8;
35565
35580
  return select(getDrawModeById, drawToolId, drawModeId);
35566
- case 7:
35581
+ case 8:
35567
35582
  newDrawMode = _context2.sent;
35568
35583
  if (!(newDrawMode.value === 'DELETE')) {
35569
- _context2.next = 12;
35584
+ _context2.next = 15;
35570
35585
  break;
35571
35586
  }
35572
- _context2.next = 11;
35587
+ _context2.next = 12;
35573
35588
  return put(layerActions.layerChangeGeojson({
35574
35589
  layerId: drawingTool.geoJSONLayerId,
35575
35590
  geojson: {
@@ -35577,60 +35592,78 @@ function changeDrawToolSaga(_ref2) {
35577
35592
  features: []
35578
35593
  }
35579
35594
  }));
35580
- case 11:
35581
- return _context2.abrupt("return");
35582
35595
  case 12:
35583
- if (drawingTool.activeDrawModeId) {
35584
- _context2.next = 16;
35596
+ _context2.next = 14;
35597
+ return put(layerActions.toggleFeatureMode({
35598
+ layerId: drawingTool.geoJSONLayerId,
35599
+ isInEditMode: false,
35600
+ drawMode: ''
35601
+ }));
35602
+ case 14:
35603
+ return _context2.abrupt("return");
35604
+ case 15:
35605
+ if (!(!drawingTool.activeDrawModeId && newDrawMode.isSelectable)) {
35606
+ _context2.next = 19;
35585
35607
  break;
35586
35608
  }
35587
- _context2.next = 15;
35609
+ _context2.next = 18;
35588
35610
  return put(layerActions.toggleFeatureMode({
35589
35611
  layerId: drawingTool.geoJSONLayerId,
35590
35612
  isInEditMode: false,
35591
35613
  drawMode: ''
35592
35614
  }));
35593
- case 15:
35615
+ case 18:
35594
35616
  return _context2.abrupt("return");
35595
- case 16:
35596
- _context2.next = 18;
35617
+ case 19:
35618
+ _context2.next = 21;
35597
35619
  return select(getLayerById, drawingTool.geoJSONLayerId);
35598
- case 18:
35620
+ case 21:
35599
35621
  currentGeoJSONLayer = _context2.sent;
35600
- currentSelectionType = (_c = (_b = (_a = currentGeoJSONLayer === null || currentGeoJSONLayer === void 0 ? void 0 : currentGeoJSONLayer.geojson) === null || _a === void 0 ? void 0 : _a.features[0]) === null || _b === void 0 ? void 0 : _b.properties) === null || _c === void 0 ? void 0 : _c.selectionType;
35601
- newSelectionType = (_d = newDrawMode.shape.properties) === null || _d === void 0 ? void 0 : _d.selectionType; // don't change anything if same tool is selected again
35602
- if (!(currentSelectionType !== newSelectionType)) {
35603
- _context2.next = 24;
35622
+ _ref3 = currentGeoJSONLayer || {}, currentGeoJSON = _ref3.geojson, _ref3$selectedFeature = _ref3.selectedFeatureIndex, selectedFeatureIndex = _ref3$selectedFeature === void 0 ? 0 : _ref3$selectedFeature;
35623
+ currentSelectionType = (_b = (_a = currentGeoJSON === null || currentGeoJSON === void 0 ? void 0 : currentGeoJSON.features[selectedFeatureIndex]) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.selectionType;
35624
+ newSelectionType = (_c = newDrawMode.shape.properties) === null || _c === void 0 ? void 0 : _c.selectionType;
35625
+ isNewToolSelected = currentSelectionType !== newSelectionType;
35626
+ shouldUpdateNewShape = !((_d = currentGeoJSON === null || currentGeoJSON === void 0 ? void 0 : currentGeoJSON.features) === null || _d === void 0 ? void 0 : _d.length) || shouldAllowMultipleShapes || isNewToolSelected; // don't change anything if same tool is selected again
35627
+ if (!(shouldUpdateNewShape && shouldUpdateShape)) {
35628
+ _context2.next = 35;
35604
35629
  break;
35605
35630
  }
35606
- _context2.next = 24;
35631
+ geoJSONFeatureCollection = getFeatureCollection(newDrawMode.shape, shouldAllowMultipleShapes, currentGeoJSON);
35632
+ newGeoJSON = getGeoJson(geoJSONFeatureCollection, shouldAllowMultipleShapes);
35633
+ if (shouldAllowMultipleShapes) {
35634
+ moveFeature(currentGeoJSON, newGeoJSON, selectedFeatureIndex, '');
35635
+ }
35636
+ _context2.next = 33;
35637
+ return put(layerActions.setSelectedFeature({
35638
+ layerId: drawingTool.geoJSONLayerId,
35639
+ selectedFeatureIndex: newGeoJSON.features.length - 1
35640
+ }));
35641
+ case 33:
35642
+ _context2.next = 35;
35607
35643
  return put(mapStoreActions.layerChangeGeojson({
35608
35644
  layerId: drawingTool.geoJSONLayerId,
35609
- geojson: {
35610
- type: 'FeatureCollection',
35611
- features: [newDrawMode.shape]
35612
- }
35645
+ geojson: newGeoJSON
35613
35646
  }));
35614
- case 24:
35615
- _context2.next = 26;
35647
+ case 35:
35648
+ _context2.next = 37;
35616
35649
  return put(layerActions.toggleFeatureMode({
35617
35650
  layerId: drawingTool.geoJSONLayerId,
35618
35651
  isInEditMode: true,
35619
35652
  drawMode: newDrawMode.value
35620
35653
  }));
35621
- case 26:
35622
- _context2.next = 31;
35654
+ case 37:
35655
+ _context2.next = 42;
35623
35656
  break;
35624
- case 28:
35625
- _context2.prev = 28;
35657
+ case 39:
35658
+ _context2.prev = 39;
35626
35659
  _context2.t0 = _context2["catch"](0);
35627
35660
  // eslint-disable-next-line no-console
35628
35661
  console.log('error changeDrawToolSaga', _context2.t0);
35629
- case 31:
35662
+ case 42:
35630
35663
  case "end":
35631
35664
  return _context2.stop();
35632
35665
  }
35633
- }, _callee2, null, [[0, 28]]);
35666
+ }, _callee2, null, [[0, 39]]);
35634
35667
  })();
35635
35668
  }
35636
35669
  function drawingSaga() {
@@ -35692,22 +35725,6 @@ var drawtoolModuleConfig = {
35692
35725
  var getSingularDrawtoolDrawLayerId = function getSingularDrawtoolDrawLayerId(mapId) {
35693
35726
  return "drawlayer-".concat(mapId);
35694
35727
  };
35695
- var getGeoJSONPropertyValue = function getGeoJSONPropertyValue(property, properties, polygonDrawMode) {
35696
- var defaultProperties = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : defaultGeoJSONStyleProperties;
35697
- // if a shape is set, extract the style from there
35698
- if (properties[property] !== undefined) {
35699
- return properties[property];
35700
- }
35701
- // if active polygon tool is preset, retreive style from there
35702
- if (polygonDrawMode) {
35703
- var polygonDrawModeProperty = polygonDrawMode.shape.type === 'Feature' && polygonDrawMode.shape.properties[property];
35704
- if (polygonDrawModeProperty !== undefined) {
35705
- return polygonDrawModeProperty;
35706
- }
35707
- }
35708
- // otherwise get values from defaultStyle
35709
- return defaultProperties[property];
35710
- };
35711
35728
 
35712
35729
  var createLayersState = function createLayersState(layerId) {
35713
35730
  var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -36416,4 +36433,4 @@ var uiModuleConfig = {
36416
36433
  * */
36417
36434
  var coreModuleConfig = [mapStoreModuleConfig, synchronizationGroupConfig, uiModuleConfig, layerSelectConfig, snackbarModuleConfig, drawtoolModuleConfig];
36418
36435
 
36419
- export { appActions, appModuleConfig, coreModuleConfig, drawtoolActions, drawtoolModuleConfig, reducer as drawtoolReducer, selectors as drawtoolSelectors, filterLayers$1 as filterLayers, genericActions, rootSaga$5 as genericSaga, selectors$5 as genericSelectors, types$3 as genericTypes, getGeoJSONPropertyValue, getSingularDrawtoolDrawLayerId, getUserAddedServices, initialState$6 as initialState, layerActions, reducer$9 as layerReducer, layerSelectActions, initialState$4 as layerSelectInitialState, selectors$2 as layerSelectSelectors, types$1 as layerSelectTypes, selectors$8 as layerSelectors, types$7 as layerTypes, utils$2 as layerUtils, mapActions, constants$1 as mapConstants, enums as mapEnums, selectors$4 as mapSelectors, mapStoreActions, mapStoreModuleConfig, mapStoreReducers, types$6 as mapTypes, mapUtils, routerActions, routerModuleConfig, utils as routerUtils, serviceActions, selectors$3 as serviceSelectors, types$2 as serviceTypes, setUserAddedServices, snackbarActions, snackbarModuleConfig, reducer$3 as snackbarReducer, rootSaga$4 as snackbarSaga, selectors$1 as snackbarSelectors, types as snackbarTypes, storeTestSettings, storeTestUtils, utils$1 as storeUtils, constants as syncConstants, actions as syncGroupsActions, reducer$6 as syncGroupsReducer, selector as syncGroupsSelector, selectors$6 as syncGroupsSelectors, types$4 as syncGroupsTypes, types$4 as types, uiActions, uiModuleConfig, reducer$8 as uiReducer, selectors$7 as uiSelectors, types$5 as uiTypes, reducer$7 as webmapReducer };
36436
+ export { appActions, appModuleConfig, coreModuleConfig, drawtoolActions, drawtoolModuleConfig, reducer as drawtoolReducer, selectors as drawtoolSelectors, filterLayers$1 as filterLayers, genericActions, rootSaga$5 as genericSaga, selectors$5 as genericSelectors, types$3 as genericTypes, getSingularDrawtoolDrawLayerId, getUserAddedServices, initialState$6 as initialState, layerActions, reducer$9 as layerReducer, layerSelectActions, initialState$4 as layerSelectInitialState, reducer$4 as layerSelectReducer, selectors$2 as layerSelectSelectors, types$1 as layerSelectTypes, selectors$8 as layerSelectors, types$7 as layerTypes, utils$2 as layerUtils, mapActions, constants$1 as mapConstants, enums as mapEnums, selectors$4 as mapSelectors, mapStoreActions, mapStoreModuleConfig, mapStoreReducers, types$6 as mapTypes, mapUtils, routerActions, routerModuleConfig, utils as routerUtils, serviceActions, selectors$3 as serviceSelectors, types$2 as serviceTypes, setUserAddedServices, snackbarActions, snackbarModuleConfig, reducer$3 as snackbarReducer, rootSaga$4 as snackbarSaga, selectors$1 as snackbarSelectors, types as snackbarTypes, storeTestSettings, storeTestUtils, utils$1 as storeUtils, constants as syncConstants, actions as syncGroupsActions, reducer$6 as syncGroupsReducer, selector as syncGroupsSelector, selectors$6 as syncGroupsSelectors, types$4 as syncGroupsTypes, types$4 as types, uiActions, uiModuleConfig, reducer$8 as uiReducer, selectors$7 as uiSelectors, types$5 as uiTypes, reducer$7 as webmapReducer };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/store",
3
- "version": "8.2.0",
3
+ "version": "8.3.0",
4
4
  "description": "GeoWeb Store library for the opengeoweb project",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -12,13 +12,14 @@
12
12
  "main": "./index.esm.js",
13
13
  "dependencies": {},
14
14
  "peerDependencies": {
15
- "@opengeoweb/shared": "8.2.0",
16
- "@opengeoweb/webmap": "8.2.0",
17
- "@opengeoweb/webmap-react": "8.2.0",
15
+ "@opengeoweb/shared": "8.3.0",
16
+ "@opengeoweb/webmap": "8.3.0",
17
+ "@opengeoweb/webmap-react": "8.3.0",
18
18
  "@redux-eggs/core": "2.2.0",
19
19
  "@redux-eggs/redux-toolkit": "2.2.0",
20
20
  "@redux-eggs/saga-extension": "2.2.0",
21
21
  "@reduxjs/toolkit": "1.9.5",
22
+ "@turf/turf": "6.5.0",
22
23
  "date-fns": "2.30.0",
23
24
  "immer": "9.0.21",
24
25
  "lodash": "4.17.21",
@@ -1,10 +1,11 @@
1
1
  import { PayloadAction, Draft, EntityState } from '@reduxjs/toolkit';
2
- import { DrawMode } from '@opengeoweb/webmap-react';
2
+ import { DrawMode, MapDrawToolOptions } from '@opengeoweb/webmap-react';
3
3
  export interface DrawToolItem {
4
4
  drawToolId: string;
5
5
  geoJSONLayerId: string;
6
6
  activeDrawModeId: string;
7
7
  drawModes: DrawMode[];
8
+ shouldAllowMultipleShapes: boolean;
8
9
  }
9
10
  export type DrawingToolState = EntityState<DrawToolItem>;
10
11
  export interface DrawtoolModuleStore {
@@ -14,7 +15,7 @@ export declare const drawAdapter: import("@reduxjs/toolkit").EntityAdapter<DrawT
14
15
  export declare const initialState: DrawingToolState;
15
16
  export declare const reducer: import("redux").Reducer<DrawingToolState, import("redux").AnyAction>;
16
17
  export declare const drawtoolActions: import("@reduxjs/toolkit").CaseReducerActions<{
17
- registerDrawTool: (draft: Draft<DrawingToolState>, action: PayloadAction<{
18
+ registerDrawTool: (draft: Draft<DrawingToolState>, action: PayloadAction<MapDrawToolOptions & {
18
19
  drawModes: DrawMode[];
19
20
  drawToolId: string;
20
21
  mapId?: string;
@@ -26,6 +27,7 @@ export declare const drawtoolActions: import("@reduxjs/toolkit").CaseReducerActi
26
27
  changeDrawToolMode: (draft: Draft<DrawingToolState>, action: PayloadAction<{
27
28
  drawToolId: string;
28
29
  drawModeId: string;
30
+ shouldUpdateShape?: boolean;
29
31
  }>) => void;
30
32
  updateGeoJSONLayerId: (draft: Draft<DrawingToolState>, action: PayloadAction<{
31
33
  drawToolId: string;
@@ -1,3 +1 @@
1
- import { DrawMode } from '@opengeoweb/webmap-react';
2
1
  export declare const getSingularDrawtoolDrawLayerId: (mapId: string) => string;
3
- export declare const getGeoJSONPropertyValue: (property: string, properties: GeoJSON.GeoJsonProperties, polygonDrawMode: DrawMode | undefined, defaultProperties?: GeoJSON.GeoJsonProperties) => number | string;
@@ -1,4 +1,4 @@
1
- export { layerSelectActions, initialState as layerSelectInitialState, } from './reducer';
1
+ export { layerSelectActions, initialState as layerSelectInitialState, reducer as layerSelectReducer, } from './reducer';
2
2
  export * as layerSelectSelectors from './selectors';
3
3
  export * as layerSelectTypes from './types';
4
4
  export * from './localStorage';
@@ -302,7 +302,7 @@ export declare const getFeatureLayerGeoJSON: ((state: CoreAppStore, layerId?: st
302
302
  };
303
303
  export declare const getFeatureLayerGeoJSONProperties: ((state: CoreAppStore, layerId?: string | undefined) => {
304
304
  [name: string]: any;
305
- }) & import("reselect").OutputSelectorFields<(args_0: Layer | undefined) => {
305
+ }) & import("reselect").OutputSelectorFields<(args_0: Layer | undefined, args_1: number | undefined) => {
306
306
  [name: string]: any;
307
307
  }, {
308
308
  clearCache: () => void;
@@ -131,9 +131,11 @@ export interface SetSelectedFeaturePayload extends LayerPayload {
131
131
  export interface UpdateFeaturePayload extends LayerPayload {
132
132
  geojson: GeoJSON.FeatureCollection;
133
133
  shouldAllowMultipleShapes?: boolean;
134
+ reason?: string;
134
135
  }
135
136
  export interface UpdateFeaturePropertiesPayload extends LayerPayload {
136
137
  properties: GeoJSON.GeoJsonProperties;
138
+ selectedFeatureIndex?: number;
137
139
  }
138
140
  export interface ToggleFeatureModePayload extends LayerPayload {
139
141
  isInEditMode?: boolean;
@@ -141,4 +143,5 @@ export interface ToggleFeatureModePayload extends LayerPayload {
141
143
  }
142
144
  export interface ExitFeatureDrawModePayload extends LayerPayload {
143
145
  reason: string;
146
+ shouldAllowMultipleShapes?: boolean;
144
147
  }
@@ -16,9 +16,3 @@ export declare const produceDraftStateForAllLayersForDimensionWithinMap: (draft:
16
16
  * @param dimensions Dimension[]
17
17
  */
18
18
  export declare const filterNonTimeDimensions: (dimensions: Dimension[]) => Dimension[];
19
- /**
20
- * Returns geoJSON based on type and multipleShapes
21
- * @param geoJSON: GeoJSON.FeatureCollection
22
- * @param shouldAllowMultipleshapes: boolean
23
- */
24
- export declare const getGeoJson: (geojson: GeoJSON.FeatureCollection, shouldAllowMultipleshapes: boolean) => GeoJSON.FeatureCollection;
@@ -403,7 +403,7 @@ export declare const getMapTimeSliderCenterTime: ((state: CoreAppStore | undefin
403
403
  * @param {string} mapId mapId: string - Id of the map
404
404
  * @returns {number} returnType: number - unfiltered selected time as a unix timestamp
405
405
  */
406
- export declare const getTimeSliderUnfilteredSelectedTime: ((state: CoreAppStore | undefined, mapId: string) => number | null | undefined) & import("reselect").OutputSelectorFields<(args_0: WebMap | undefined) => number | null | undefined, {
406
+ export declare const getTimeSliderUnfilteredSelectedTime: ((state: CoreAppStore, mapId: string) => number | undefined) & import("reselect").OutputSelectorFields<(args_0: WebMap | undefined, args_1: number) => number | undefined, {
407
407
  clearCache: () => void;
408
408
  }> & {
409
409
  clearCache: () => void;
@@ -8,7 +8,7 @@ import { ServiceState, ReduxService } from './types';
8
8
  * @param {object} store store: object - object from which the service state will be extracted
9
9
  * @returns {array} returnType: array - an array of all serviceIds
10
10
  */
11
- export declare const getServiceIds: ((state: CoreAppStore) => string[]) & import("reselect").OutputSelectorFields<(args_0: ServiceState) => string[], {
11
+ export declare const getServiceIds: ((state: CoreAppStore) => string[]) & import("reselect").OutputSelectorFields<(args_0: ServiceState | undefined) => string[], {
12
12
  clearCache: () => void;
13
13
  }> & {
14
14
  clearCache: () => void;
@@ -20,7 +20,7 @@ export declare const getServiceIds: ((state: CoreAppStore) => string[]) & import
20
20
  * @param {object} store store: object - Store object
21
21
  * @returns {object} returnType: ServiceState
22
22
  */
23
- export declare const getServices: ((state: CoreAppStore) => import("./types").Services) & import("reselect").OutputSelectorFields<(args_0: ServiceState) => import("./types").Services, {
23
+ export declare const getServices: ((state: CoreAppStore) => import("./types").Services) & import("reselect").OutputSelectorFields<(args_0: ServiceState | undefined) => import("./types").Services, {
24
24
  clearCache: () => void;
25
25
  }> & {
26
26
  clearCache: () => void;
@@ -32,7 +32,7 @@ export declare const getServices: ((state: CoreAppStore) => import("./types").Se
32
32
  * @param {object} store store: object - Store object
33
33
  * @returns {ReduxService} returnType: Service
34
34
  */
35
- export declare const getServiceByName: ((state: CoreAppStore, serviceUrl: string) => ReduxService) & import("reselect").OutputSelectorFields<(args_0: ServiceState, args_1: string) => ReduxService, {
35
+ export declare const getServiceByUrl: ((state: CoreAppStore, serviceUrl: string) => ReduxService | undefined) & import("reselect").OutputSelectorFields<(args_0: ServiceState | undefined, args_1: string) => ReduxService | undefined, {
36
36
  clearCache: () => void;
37
37
  }> & {
38
38
  clearCache: () => void;
@@ -45,7 +45,7 @@ export declare const getServiceByName: ((state: CoreAppStore, serviceUrl: string
45
45
  * @param {string} serviceUrl serviceUrl: string - Url of the service where the layer belongs to
46
46
  * @returns {array} returnType: ServiceLayer[] - All layers within the service object.
47
47
  */
48
- export declare const getLayersFromServiceSelector: ((state: CoreAppStore, serviceUrl: string) => import("@opengeoweb/webmap").LayerProps[]) & import("reselect").OutputSelectorFields<(args_0: ReduxService) => import("@opengeoweb/webmap").LayerProps[], {
48
+ export declare const getLayersFromServiceSelector: ((state: CoreAppStore, serviceUrl: string) => import("@opengeoweb/webmap").LayerProps[]) & import("reselect").OutputSelectorFields<(args_0: ReduxService | undefined) => import("@opengeoweb/webmap").LayerProps[], {
49
49
  clearCache: () => void;
50
50
  }> & {
51
51
  clearCache: () => void;
@@ -59,7 +59,7 @@ export declare const getLayersFromServiceSelector: ((state: CoreAppStore, servic
59
59
  * @param {string} layerName layerName: string - Name of the layer in the service
60
60
  * @returns {ServiceLayer} returnType: ServiceLayer - The layer from the service object.
61
61
  */
62
- export declare const getLayerFromService: ((state: CoreAppStore, serviceUrl: string, layerName: string) => import("@opengeoweb/webmap").LayerProps) & import("reselect").OutputSelectorFields<(args_0: import("@opengeoweb/webmap").LayerProps[], args_1: string, args_2: string) => import("@opengeoweb/webmap").LayerProps, {
62
+ export declare const getLayerFromService: ((state: CoreAppStore, _serviceUrl: string, layerName: string) => import("@opengeoweb/webmap").LayerProps | undefined) & import("reselect").OutputSelectorFields<(args_0: import("@opengeoweb/webmap").LayerProps[], args_1: string) => import("@opengeoweb/webmap").LayerProps | undefined, {
63
63
  clearCache: () => void;
64
64
  }> & {
65
65
  clearCache: () => void;
@@ -73,7 +73,7 @@ export declare const getLayerFromService: ((state: CoreAppStore, serviceUrl: str
73
73
  * @param {string} layerName layerName: string - Name of the layer in the service
74
74
  * @returns {array} returnType: Style[] - array containing layer styles
75
75
  */
76
- export declare const getLayerStyles: ((state: CoreAppStore, serviceUrl: string, layerName: string) => Style[]) & import("reselect").OutputSelectorFields<(args_0: import("@opengeoweb/webmap").LayerProps) => Style[], {
76
+ export declare const getLayerStyles: ((state: CoreAppStore, _serviceUrl: string, layerName: string) => Style[]) & import("reselect").OutputSelectorFields<(args_0: import("@opengeoweb/webmap").LayerProps | undefined) => Style[], {
77
77
  clearCache: () => void;
78
78
  }> & {
79
79
  clearCache: () => void;
@@ -14,7 +14,6 @@ export declare enum DialogTypes {
14
14
  LayerSelect = "layerSelect",
15
15
  DrawingTool = "drawingTool",
16
16
  DockedLayerManager = "dockedLayerManager",
17
- DockedDrawingTool = "dockedDrawingTool",
18
17
  ObjectManager = "objectManager",
19
18
  PublicWarnings = "publicWarnings"
20
19
  }