@defra/interactive-map 0.0.18-alpha → 0.0.19-alpha

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.
Files changed (73) hide show
  1. package/assets/css/docusaurus.css +58 -34
  2. package/dist/css/index.css +1 -1
  3. package/dist/esm/im-core.js +1 -1
  4. package/dist/esm/im-shell.js +1 -1
  5. package/dist/umd/im-core.js +1 -1
  6. package/dist/umd/index.js +1 -1
  7. package/docs/api/panel-definition.md +16 -0
  8. package/docs/api.md +28 -4
  9. package/docs/assets/basic-map.jpg +0 -0
  10. package/docs/assets/button-first.jpg +0 -0
  11. package/docs/assets/maker-panel.jpg +0 -0
  12. package/docs/examples/add-marker-with-panel.mdx +59 -0
  13. package/docs/examples/basic-map.mdx +24 -0
  14. package/docs/examples/button-map.mdx +24 -0
  15. package/docs/examples/index.mdx +49 -0
  16. package/docs/index.mdx +1 -1
  17. package/docs/plugins/interact.md +32 -1
  18. package/docs/plugins.md +1 -1
  19. package/docusaurus.config.cjs +9 -1
  20. package/package.json +1 -1
  21. package/plugins/beta/datasets/dist/esm/im-datasets-plugin.js +1 -1
  22. package/plugins/beta/datasets/dist/umd/im-datasets-plugin.js +1 -1
  23. package/plugins/beta/draw-es/dist/esm/im-draw-es-plugin.js +1 -1
  24. package/plugins/beta/draw-ml/dist/css/index.css +2 -19
  25. package/plugins/beta/draw-ml/dist/esm/im-draw-ml-plugin.js +1 -1
  26. package/plugins/beta/draw-ml/dist/umd/im-draw-ml-plugin.js +1 -1
  27. package/plugins/beta/scale-bar/dist/css/index.css +1 -1
  28. package/plugins/beta/scale-bar/src/scaleBar.scss +1 -0
  29. package/plugins/interact/dist/esm/im-interact-plugin.js +1 -1
  30. package/plugins/interact/dist/umd/im-interact-plugin.js +1 -1
  31. package/plugins/interact/dist/umd/index.js +1 -1
  32. package/plugins/interact/src/InteractInit.jsx +5 -3
  33. package/plugins/interact/src/api/clear.js +1 -1
  34. package/plugins/interact/src/api/selectMarker.js +14 -0
  35. package/plugins/interact/src/api/selectMarker.test.js +25 -0
  36. package/plugins/interact/src/api/unselectMarker.js +14 -0
  37. package/plugins/interact/src/api/unselectMarker.test.js +14 -0
  38. package/plugins/interact/src/events.js +18 -30
  39. package/plugins/interact/src/events.test.js +113 -108
  40. package/plugins/interact/src/manifest.js +10 -2
  41. package/plugins/interact/src/reducer.js +36 -1
  42. package/plugins/interact/src/reducer.test.js +40 -1
  43. package/plugins/interact/src/utils/interactionModes.js +12 -0
  44. package/src/App/components/Panel/Panel.jsx +6 -6
  45. package/src/App/components/Panel/Panel.test.jsx +37 -0
  46. package/src/App/components/Viewport/Viewport.jsx +5 -15
  47. package/src/App/components/Viewport/Viewport.module.scss +2 -0
  48. package/src/App/components/Viewport/Viewport.test.jsx +16 -33
  49. package/src/App/hooks/useInterfaceAPI.js +7 -7
  50. package/src/App/hooks/useInterfaceAPI.test.js +15 -9
  51. package/src/App/hooks/useLayoutMeasurements.js +64 -72
  52. package/src/App/layout/Layout.jsx +1 -1
  53. package/src/App/layout/layout.module.scss +1 -8
  54. package/src/App/renderer/HtmlElementHost.jsx +10 -5
  55. package/src/App/renderer/mapPanels.js +2 -1
  56. package/src/App/store/appActionsMap.js +4 -4
  57. package/src/App/store/appActionsMap.test.js +10 -0
  58. package/src/InteractiveMap/InteractiveMap.js +59 -11
  59. package/src/InteractiveMap/InteractiveMap.test.js +126 -4
  60. package/src/InteractiveMap/domStateManager.js +18 -6
  61. package/src/InteractiveMap/domStateManager.test.js +21 -0
  62. package/src/InteractiveMap/historyManager.js +28 -16
  63. package/src/InteractiveMap/historyManager.test.js +17 -0
  64. package/src/config/appConfig.js +2 -1
  65. package/src/config/appConfig.test.js +3 -13
  66. package/src/config/defaults.js +2 -1
  67. package/src/config/events.js +20 -21
  68. package/src/services/closeApp.js +1 -10
  69. package/src/services/closeApp.test.js +3 -43
  70. package/src/types.js +6 -1
  71. package/src/utils/mapStateSync.js +48 -10
  72. package/src/utils/mapStateSync.test.js +29 -9
  73. package/docs/examples.mdx +0 -70
@@ -1 +1 @@
1
- import{useRef as e,useEffect as t}from"preact/compat";import{jsx as r,jsxs as a}from"preact/jsx-runtime";import o from"@babel/runtime/helpers/defineProperty";import l from"@babel/runtime/helpers/asyncToGenerator";function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function n(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var s={minZoom:6,maxZoom:24,showInKey:!1,toggleVisibility:!1,visibility:"visible",style:{stroke:"#d4351c",strokeWidth:2,fill:"transparent",symbolDescription:"red outline"}},d=["stroke","strokeWidth","strokeDashArray","fill","fillPattern","fillPatternSvgContent","fillPatternForegroundColor","fillPatternBackgroundColor","opacity","symbolDescription","keySymbolShape","symbol","symbolSvgContent","symbolViewBox","symbolAnchor","symbolBackgroundColor","symbolForegroundColor","symbolHaloWidth","symbolGraphic"],u=["stroke","fill","fillPattern","fillPatternSvgContent","symbol","symbolSvgContent"],c=e=>u.some(t=>t in e),p=(e,t)=>{var r=e.style||{},a=n(n({},t.style),r);!("symbolDescription"in r)&&c(r)&&delete a.symbolDescription;var o=n({},e);delete o.style,d.forEach(e=>delete o[e]);var l=n({},t);return delete l.style,n(n(n({},l),o),a)};function y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function b(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function f(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?v(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):v(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var m=e=>{var t;if(null===(t=e.sublayers)||void 0===t||!t.length)return e;var r={};return e.sublayers.forEach(e=>{r[e.id]="visible"}),f(f({},e),{},{sublayerVisibility:r})},h={BUILD_KEY_GROUPS:e=>{var t=e.datasets||[],r=new Set,a=[],o=!1;return t.forEach(e=>{var l;if(e.showInKey&&"hidden"!==e.visibility)if(null!==(l=e.sublayers)&&void 0!==l&&l.length){var{sublayerVisibility:i=[]}=e;Object.values(i).some(e=>"hidden"!==e)&&(o=!0,a.push({type:"sublayers",dataset:e}))}else{if(e.groupLabel){if(r.has(e.groupLabel))return;return r.add(e.groupLabel),o=!0,void a.push({type:"group",groupLabel:e.groupLabel,datasets:t.filter(t=>{var r;return!(null!==(r=t.sublayers)&&void 0!==r&&r.length)&&t.groupLabel===e.groupLabel})})}a.push({type:"flat",dataset:e})}}),b(b({},e),{},{key:{items:a,hasGroups:o}})},SET_DATASETS:(e,t)=>{var{datasets:r,datasetDefaults:a}=t;return f(f({},e),{},{datasets:r.map(e=>m(p(e,a)))})},ADD_DATASET:(e,t)=>{var{dataset:r,datasetDefaults:a}=t;return f(f({},e),{},{datasets:[...e.datasets||[],m(p(r,a))]})},REMOVE_DATASET:(e,t)=>{var r,{id:a}=t;return f(f({},e),{},{datasets:(null===(r=e.datasets)||void 0===r?void 0:r.filter(e=>e.id!==a))||[]})},SET_DATASET_VISIBILITY:(e,t)=>{var r,{id:a,visibility:o}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>e.id===a?f(f({},e),{},{visibility:o}):e)})},SET_GLOBAL_VISIBILITY:(e,t)=>{var r,{visibility:a}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>f(f({},e),{},{visibility:a}))})},SET_SUBLAYER_VISIBILITY:(e,t)=>{var r,{datasetId:a,sublayerId:o,visibility:l}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>e.id!==a?e:f(f({},e),{},{sublayerVisibility:f(f({},e.sublayerVisibility),{},{[o]:l})}))})},SET_DATASET_STYLE:(e,t)=>{var r,{datasetId:a,styleChanges:o}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>e.id===a?f(f({},e),o):e)})},SET_SUBLAYER_STYLE:(e,t)=>{var r,{datasetId:a,sublayerId:o,styleChanges:l}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>{var t;return e.id!==a?e:f(f({},e),{},{sublayers:null===(t=e.sublayers)||void 0===t?void 0:t.map(e=>e.id===o?f(f({},e),{},{style:f(f({},e.style),l)}):e)})})})},SET_OPACITY:(e,t)=>{var r,{datasetId:a,opacity:o}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>e.id===a?f(f({},e),{},{opacity:o}):e)})},SET_GLOBAL_OPACITY:(e,t)=>{var r,{opacity:a}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>f(f({},e),{},{opacity:a}))})},SET_SUBLAYER_OPACITY:(e,t)=>{var r,{datasetId:a,sublayerId:o,opacity:l}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>{var t;return e.id!==a?e:f(f({},e),{},{sublayers:null===(t=e.sublayers)||void 0===t?void 0:t.map(e=>e.id===o?f(f({},e),{},{style:f(f({},e.style),{},{opacity:l})}):e)})})})},HIDE_FEATURES:(e,t)=>{var{layerId:r,idProperty:a,featureIds:o}=t,l=e.hiddenFeatures[r],i=(null==l?void 0:l.ids)||[],n=[...new Set([...i,...o])];return f(f({},e),{},{hiddenFeatures:f(f({},e.hiddenFeatures),{},{[r]:{idProperty:a,ids:n}})})},SHOW_FEATURES:(e,t)=>{var{layerId:r,featureIds:a}=t,o=e.hiddenFeatures[r];if(!o)return e;var l=o.ids.filter(e=>!a.includes(e));if(0===l.length){var i=f({},e.hiddenFeatures);return delete i[r],f(f({},e),{},{hiddenFeatures:i})}return f(f({},e),{},{hiddenFeatures:f(f({},e.hiddenFeatures),{},{[r]:f(f({},o),{},{ids:l})})})},SET_LAYER_ADAPTER:(e,t)=>f(f({},e),{},{layerAdapter:t})},g={APP_ADD_MARKER:"app:addmarker",APP_REMOVE_MARKER:"app:removemarker",APP_SET_MODE:"app:setmode",APP_REVERT_MODE:"app:revertmode",APP_ADD_BUTTON:"app:addbutton",APP_TOGGLE_BUTTON_STATE:"app:togglebuttonstate",APP_ADD_PANEL:"app:addpanel",APP_REMOVE_PANEL:"app:removepanel",APP_SHOW_PANEL:"app:showpanel",APP_HIDE_PANEL:"app:hidepanel",APP_ADD_CONTROL:"app:addcontrol",APP_READY:"app:ready",APP_VISIBLE:"app:visible",APP_HIDDEN:"app:hidden",APP_PANEL_OPENED:"app:panelopened",APP_PANEL_CLOSED:"app:panelclosed",MAP_SET_STYLE:"map:setstyle",MAP_SET_SIZE:"map:setsize",MAP_SET_PIXEL_RATIO:"map:setpixelratio",MAP_FIT_TO_BOUNDS:"map:fittobounds",MAP_SET_VIEW:"map:setview",MAP_INIT_MAP_STYLES:"map:initmapstyles",MAP_STYLE_CHANGE:"map:stylechange",MAP_LOADED:"map:loaded",MAP_READY:"map:ready",MAP_SIZE_CHANGE:"map:sizechange",MAP_FIRST_IDLE:"map:firstidle",MAP_MOVE_START:"map:movestart",MAP_MOVE:"map:move",MAP_MOVE_END:"map:moveend",MAP_STATE_UPDATED:"map:stateupdated",MAP_DATA_CHANGE:"map:datachange",MAP_RENDER:"map:render",MAP_CLICK:"map:click",MAP_EXIT:"map:exit",MAP_DESTROY:"map:destroy"},O=function(){var e=l(function*(e,t,r,a){var o=r(e,t),l="string"==typeof o?{url:o}:o,{url:i,headers:n={}}=l,s=yield fetch(i,{headers:n,signal:a});if(!s.ok)throw new Error("Failed to fetch GeoJSON: ".concat(s.status," ").concat(s.statusText));var d=yield s.json();if("FeatureCollection"===d.type)return d;if("Feature"===d.type)return{type:"FeatureCollection",features:[d]};if(Array.isArray(d))return{type:"FeatureCollection",features:d};throw new Error("Invalid GeoJSON response")});return function(t,r,a,o){return e.apply(this,arguments)}}(),P=(e,t)=>!(!e||!t)&&!(e[2]<t[0]||e[0]>t[2]||e[3]<t[1]||e[1]>t[3]),S=e=>{var t=1/0,r=1/0,a=-1/0,o=-1/0,l=(e,i)=>{var n;0===i?(n=e,t=Math.min(t,n[0]),r=Math.min(r,n[1]),a=Math.max(a,n[0]),o=Math.max(o,n[1])):e.forEach(e=>l(e,i-1))};switch(e.type){case"Point":l(e.coordinates,0);break;case"LineString":case"MultiPoint":l(e.coordinates,1);break;case"Polygon":case"MultiLineString":l(e.coordinates,2);break;case"MultiPolygon":l(e.coordinates,3);break;case"GeometryCollection":e.geometries.forEach(e=>{var l=S(e);t=Math.min(t,l[0]),r=Math.min(r,l[1]),a=Math.max(a,l[2]),o=Math.max(o,l[3])});break;default:throw new Error("Unsupported geometry type: ".concat(e.type))}return[t,r,a,o]},_=e=>{var t,r,a,o,{dataset:i,map:n,onUpdate:s}=e,{geojson:d,idProperty:u,transformRequest:c,maxFeatures:p,minZoom:y=0}=i,b=new Map,v=null,f=null,m=()=>({type:"FeatureCollection",features:Array.from(b.values()).map(e=>e.feature)}),h=function(){var e=l(function*(){var e=n.getZoom();if(!(e<y)){var t=(e=>{var t=e.getBounds();return[t.getWest(),t.getSouth(),t.getEast(),t.getNorth()]})(n);if(!(v&&(r=v,a=t,r&&a&&a[0]>=r[0]&&a[1]>=r[1]&&a[2]<=r[2]&&a[3]<=r[3]))){var r,a,o,l;f&&f.abort(),f=new AbortController;try{var h={bbox:t,zoom:e,dataset:i},g=yield O(d,h,c,f.signal),_=Date.now();g.features.forEach(e=>{var t=(e=>{var t,r;return u&&null!==(t=null===(r=e.properties)||void 0===r?void 0:r[u])&&void 0!==t?t:e.id})(e);null!=t?b.set(t,{feature:e,bbox:S(e.geometry),lastSeenAt:_}):console.warn("Feature missing ID, skipping:",e)}),l=t,v=(o=v)?[Math.min(o[0],l[0]),Math.min(o[1],l[1]),Math.max(o[2],l[2]),Math.max(o[3],l[3])]:[...l];var E=b.size;(e=>{if(p&&!(b.size<=1.2*p)){var t=p,r=[],a=[];for(var[o,l]of b)P(l.bbox,e)?r.push(o):a.push({id:o,lastSeenAt:l.lastSeenAt});a.sort((e,t)=>e.lastSeenAt-t.lastSeenAt);for(var i=b.size-t,n=0;n<i&&n<a.length;n++)b.delete(a[n].id);if(b.size>t)for(var s=b.size-t,d=r.map(e=>({id:e,lastSeenAt:b.get(e).lastSeenAt})).sort((e,t)=>e.lastSeenAt-t.lastSeenAt),u=0;u<s&&u<d.length;u++)b.delete(d[u].id)}})(t),b.size<E&&(v=t),s(i.id,m())}catch(e){if("AbortError"===e.name)return;console.error("Failed to fetch dynamic GeoJSON for ".concat(i.id,":"),e)}}}});return function(){return e.apply(this,arguments)}}(),g=(t=h,r=200,(o=function(){for(var e=arguments.length,o=new Array(e),l=0;l<e;l++)o[l]=arguments[l];clearTimeout(a),a=setTimeout(()=>t(...o),r)}).cancel=()=>{clearTimeout(a),a=null},o),_=()=>{g()};return n.on("moveend",_),h(),{destroy(){n.off("moveend",_),g.cancel(),f&&f.abort()},clear(){b.clear(),v=null,s(i.id,{type:"FeatureCollection",features:[]})},refresh(){b.clear(),v=null,h()},getFeatureCount:()=>b.size,reapply(){b.size>0&&s(i.id,m())}}},E=e=>{var{adapter:t,pluginConfig:r,pluginStateRef:a,mapStyle:o,mapProvider:l,events:i,eventBus:n}=e,{datasets:d}=r,u=new Map,c=()=>a.current.datasets||d,y=d.map(e=>p(e,s));t.init(y,o).then(()=>{y.forEach(e=>{if((e=>"string"==typeof e.geojson&&!!e.idProperty&&"function"==typeof e.transformRequest)(e)){var r=_({dataset:e,map:l.map,onUpdate:(e,r)=>t.setData(e,r)});u.set(e.id,r)}}),n.emit("datasets:ready")});var b=o,v=e=>{b=e,t.onStyleChange(c(),e,a.current.hiddenFeatures||{},u)},f=()=>{t.onSizeChange(c(),b)};return n.on(i.MAP_SET_STYLE,v),n.on(i.MAP_SIZE_CHANGE,f),{remove(){n.off(i.MAP_SET_STYLE,v),n.off(i.MAP_SIZE_CHANGE,f),u.forEach(e=>e.destroy()),u.clear(),t.destroy(c())},refreshDataset(e){var t;null===(t=u.get(e))||void 0===t||t.refresh()},clearDatasetCache(e){var t;null===(t=u.get(e))||void 0===t||t.clear()},getFeatureCount(e){var t,r;return null!==(t=null===(r=u.get(e))||void 0===r?void 0:r.getFeatureCount())&&void 0!==t?t:null}}};var A=function(e,t){var r,a,{pluginState:o}=e,l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{datasetId:i,sublayerId:n}=l;if(n){var s,d=t?"visible":"hidden";return null===(s=o.layerAdapter)||void 0===s||s[t?"showSublayer":"hideSublayer"](i,n),void o.dispatch({type:"SET_SUBLAYER_VISIBILITY",payload:{datasetId:i,sublayerId:n,visibility:d}})}if(i){if(null===(a=o.layerAdapter)||void 0===a||a[t?"showDataset":"hideDataset"](i),o.dispatch({type:"SET_DATASET_VISIBILITY",payload:{id:i,visibility:t?"visible":"hidden"}}),t){var u,c=null===(u=o.datasets)||void 0===u?void 0:u.find(e=>e.id===i);Object.entries((null==c?void 0:c.sublayerVisibility)||{}).forEach(e=>{var t,[r,a]=e;"hidden"===a&&(null===(t=o.layerAdapter)||void 0===t||t.hideSublayer(i,r))})}}else o.dispatch({type:"SET_GLOBAL_VISIBILITY",payload:{visibility:t?"visible":"hidden"}}),null===(r=o.datasets)||void 0===r||r.forEach(e=>{var r;null===(r=o.layerAdapter)||void 0===r||r[t?"showDataset":"hideDataset"](e.id),t&&Object.entries(e.sublayerVisibility||{}).forEach(t=>{var r,[a,l]=t;"hidden"===l&&(null===(r=o.layerAdapter)||void 0===r||r.hideSublayer(e.id,a))})})},j="im-c-datasets-layers__item-label govuk-label govuk-checkboxes__label",w=e=>{var t;return null===(t=e.sublayers)||void 0===t?void 0:t.some(e=>e.toggleVisibility)},k=(e,t)=>{if(!e)return null;if("string"==typeof e)return e.trim();if("object"==typeof e){if(t&&e[t])return e[t];var r=Object.values(e)[0];return null!=r?r:null}return null};function D(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}var I=(e,t)=>"symbolDescription"in t?t.symbolDescription:c(t)?void 0:e.symbolDescription,T=(e,t)=>{var r,a,l,i,n,s,d,u,c,p,y,b,v,f,m,h,g,O=t.style||{},P=(h=e.filter,g=t.filter,h&&g?["all",h,g]:g||h||null);return function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?D(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):D(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({id:t.id,label:t.label,stroke:null!==(r=O.stroke)&&void 0!==r?r:e.stroke,strokeWidth:null!==(a=O.strokeWidth)&&void 0!==a?a:e.strokeWidth,strokeDashArray:null!==(l=O.strokeDashArray)&&void 0!==l?l:e.strokeDashArray,opacity:null!==(i=O.opacity)&&void 0!==i?i:e.opacity,keySymbolShape:null!==(n=O.keySymbolShape)&&void 0!==n?n:e.keySymbolShape,symbolDescription:I(e,O),showInKey:null!==(s=t.showInKey)&&void 0!==s?s:e.showInKey,toggleVisibility:null!==(d=t.toggleVisibility)&&void 0!==d&&d,filter:P,minZoom:e.minZoom,maxZoom:e.maxZoom,symbol:null!==(u=O.symbol)&&void 0!==u?u:e.symbol,symbolSvgContent:null!==(c=O.symbolSvgContent)&&void 0!==c?c:e.symbolSvgContent,symbolViewBox:null!==(p=O.symbolViewBox)&&void 0!==p?p:e.symbolViewBox,symbolAnchor:null!==(y=O.symbolAnchor)&&void 0!==y?y:e.symbolAnchor,symbolBackgroundColor:null!==(b=O.symbolBackgroundColor)&&void 0!==b?b:e.symbolBackgroundColor,symbolForegroundColor:null!==(v=O.symbolForegroundColor)&&void 0!==v?v:e.symbolForegroundColor,symbolHaloWidth:null!==(f=O.symbolHaloWidth)&&void 0!==f?f:e.symbolHaloWidth,symbolGraphic:null!==(m=O.symbolGraphic)&&void 0!==m?m:e.symbolGraphic},((e,t)=>{var r,a;return t.fillPattern||t.fillPatternSvgContent?{fillPattern:t.fillPattern,fillPatternSvgContent:t.fillPatternSvgContent,fillPatternForegroundColor:null!==(r=t.fillPatternForegroundColor)&&void 0!==r?r:e.fillPatternForegroundColor,fillPatternBackgroundColor:null!==(a=t.fillPatternBackgroundColor)&&void 0!==a?a:e.fillPatternBackgroundColor}:"fill"in t?{fill:t.fill}:{fill:e.fill,fillPattern:e.fillPattern,fillPatternSvgContent:e.fillPatternSvgContent,fillPatternForegroundColor:e.fillPatternForegroundColor,fillPatternBackgroundColor:e.fillPatternBackgroundColor}})(e,O))},C=e=>{var{text:t}=e;return r("div",{className:"im-c-datasets-key",children:r("p",{className:"im-c-datasets-key__empty-message",children:t})})},L=new Set(["symbolBackgroundColor","symbolForegroundColor","symbolHaloWidth","symbolGraphic"]),M=e=>!(!e.symbol&&!e.symbolSvgContent),x=(e,t,r)=>e.replace(/\{\{foregroundColor\}\}/g,t||"black").replace(/\{\{backgroundColor\}\}/g,r);function N(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function R(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?N(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):N(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var F=20,B={xmlns:"http://www.w3.org/2000/svg",width:F,height:F,viewBox:"0 0 ".concat(F," ").concat(F),className:"am-c-datasets-key-symbol","aria-hidden":"true",focusable:"false"},V=R(R({},B),{},{width:38,height:38,className:"am-c-datasets-key-symbol am-c-datasets-key-symbol--point"});function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function W(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Y(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var G=e=>{var{patternRegistry:t,mapStyle:o}=e,l=((e,t,r)=>{var a=((e,t)=>{return e.fillPatternSvgContent?e.fillPatternSvgContent:e.fillPattern&&null!==(r=null==t||null===(a=t.get(e.fillPattern))||void 0===a?void 0:a.svgContent)&&void 0!==r?r:null;var r,a})(e,r);if(!a)return null;var o=k(e.fillPatternForegroundColor,t)||"black",l=k(e.fillPatternBackgroundColor,t)||"transparent",i=k(e.stroke,t)||o;return{border:x('<path d="M19 2.862v14.275c0 1.028-.835 1.862-1.862 1.862H2.863c-1.028 0-1.862-.835-1.862-1.862V2.862C1.001 1.834 1.836 1 2.863 1h14.275C18.166 1 19 1.835 19 2.862z" fill="{{backgroundColor}}" stroke="{{foregroundColor}}" stroke-width="2"/>',i,l),content:x(a,o,l)}})(e,o.id,t);return a("svg",W(W({},B),{},{children:[r("g",{dangerouslySetInnerHTML:{__html:l.border}}),r("g",{transform:"translate(".concat(2,", ").concat(2,")"),dangerouslySetInnerHTML:{__html:l.content}})]}))};function H(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function U(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?H(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):H(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var K=e=>{var t,{symbolRegistry:a,mapStyle:o,symbolDef:l}=e,i=null!==(t=null==o?void 0:o.appColorScheme)&&void 0!==t?t:"light",n=U(U({},o),{},{mapColorScheme:i}),s=a.resolve(l,(e=>{if(!M(e))return{};var t={};return L.forEach(r=>{if(null!=e[r]){var a=r.charAt(6).toLowerCase()+r.slice(7);t[a]=e[r]}}),t})(e),n),d=((e,t)=>{var r;return e.symbolViewBox?e.symbolViewBox:null!==(r=null==t?void 0:t.viewBox)&&void 0!==r?r:"0 0 38 38"})(e,l);return r("svg",U(U({},V),{},{viewBox:d,children:r("g",{dangerouslySetInnerHTML:{__html:s}})}))};function z(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function Z(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?z(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):z(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var J=e=>{var{mapStyle:t}=e;return r("svg",Z(Z({},B),{},{children:r("line",{x1:e.strokeWidth/2,y1:10,x2:F-e.strokeWidth/2,y2:10,stroke:k(e.stroke,t.id),strokeWidth:e.strokeWidth,strokeLinecap:"round"})}))};function q(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function X(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?q(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):q(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var Q=e=>{var{mapStyle:t}=e;return r("svg",X(X({},B),{},{children:r("rect",{x:e.strokeWidth/2,y:e.strokeWidth/2,width:F-e.strokeWidth,height:F-e.strokeWidth,rx:e.strokeWidth,ry:e.strokeWidth,fill:k(e.fill,t.id),stroke:k(e.stroke,t.id),strokeWidth:e.strokeWidth,strokeLinejoin:"round"})}))};function $(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function ee(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?$(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var te=e=>{var t,{symbolRegistry:a}=e,o=M(e)&&((e,t)=>e.symbolSvgContent?{svg:e.symbolSvgContent}:e.symbol?t.get(e.symbol):void 0)(e,a);return o?r(K,ee(ee({},e),{},{symbolDef:o})):(t=e).fillPattern||t.fillPatternSvgContent?r(G,ee({},e)):"line"===e.keySymbolShape?r(J,ee({},e)):r(Q,ee({},e))};function re(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function ae(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?re(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):re(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function oe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function le(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?oe(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):oe(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function ie(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function ne(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ie(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ie(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var se="[interactive-map]",de=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return console.warn(se,...t)},ue={InitComponent:function(r){var a,{pluginConfig:o,pluginState:i,appState:n,mapState:d,mapProvider:u,services:c}=r,{dispatch:p}=i,{eventBus:y,symbolRegistry:b,patternRegistry:v}=c,f=!(null===(a=u.map)||void 0===a||!a.getStyle()),m=e(i);m.current=i;var h=e(null);return t(()=>{var e,t,r,a,c=null===(e=null===(t=o.includeModes)||void 0===t?void 0:t.includes(n.mode))||void 0===e||e,O=null!==(r=null===(a=o.excludeModes)||void 0===a?void 0:a.includes(n.mode))&&void 0!==r&&r;if(f&&c&&!O&&!h.current){i.datasets||p({type:"SET_DATASETS",payload:{datasets:o.datasets,datasetDefaults:s}});var P=function(){var e=l(function*(){if(!o.layerAdapter)throw new Error("datasets plugin: no layerAdapter provided. Import and pass maplibreLayerAdapter or a custom adapter.");var{default:e}=yield o.layerAdapter.load(),t=new e(u,b,v);p({type:"SET_LAYER_ADAPTER",payload:t}),h.current=E({adapter:t,pluginConfig:o,pluginStateRef:m,mapStyle:d.mapStyle,mapProvider:u,events:g,eventBus:y})});return function(){return e.apply(this,arguments)}}();P()}},[f,n.mode]),t(()=>{p({type:"BUILD_KEY_GROUPS",payload:null})},[i.datasets]),t(()=>()=>{h.current&&(h.current.remove(),h.current=null),p({type:"SET_LAYER_ADAPTER",payload:null})},[]),null},reducer:{initialState:{datasets:null,key:{items:[],hasGroups:!1},hiddenFeatures:{},layerAdapter:null},actions:h},panels:[{id:"datasetsLayers",label:"Layers",mobile:{slot:"drawer",modal:!0,dismissible:!0},tablet:{slot:"left-top",dismissible:!0,exclusive:!0,width:"260px"},desktop:{slot:"left-top",modal:!1,dismissible:!0,exclusive:!0,width:"280px"},render:e=>{var t,o,l,{pluginState:i}=e,n=e=>{var{value:t,checked:r}=e.target;A({pluginState:i},r,{datasetId:t})},s=e=>{var{checked:t}=e.target,r=e.target.dataset.datasetId,a=e.target.dataset.sublayerId;A({pluginState:i},t,{datasetId:r,sublayerId:a})},d=e=>{var t="im-c-datasets-layers__item govuk-checkboxes govuk-checkboxes--small".concat("hidden"===e.visibility?"":" im-c-datasets-layers__item--checked");return r("div",{className:t,"data-module":"govuk-checkboxes",children:a("div",{className:"govuk-checkboxes__item",children:[r("input",{className:"govuk-checkboxes__input",id:e.id,name:"layers",type:"checkbox",value:e.id,checked:"hidden"!==e.visibility,onChange:n}),r("label",{className:j,htmlFor:e.id,children:e.label})]})},e.id)},u=(i.datasets||[]).filter(e=>e.toggleVisibility||w(e)),c=(t=u,o=new Set,l=[],t.forEach(e=>{if(w(e))l.push({type:"sublayers",dataset:e});else{if(e.groupLabel){if(o.has(e.groupLabel))return;return o.add(e.groupLabel),void l.push({type:"group",groupLabel:e.groupLabel,datasets:t.filter(t=>!w(t)&&t.groupLabel===e.groupLabel)})}l.push({type:"flat",dataset:e})}}),l),p=c.some(e=>"sublayers"===e.type||"group"===e.type),y="im-c-datasets-layers".concat(p?" im-c-datasets-layers--has-groups":"");return r("div",{className:y,children:c.map(e=>{if("sublayers"===e.type){var{dataset:t}=e,o=t.sublayers.filter(e=>e.toggleVisibility).some(e=>{var r;return"hidden"!==(null===(r=t.sublayerVisibility)||void 0===r?void 0:r[e.id])}),l="govuk-form-group im-c-datasets-layers-group".concat(o?" im-c-datasets-layers-group--items-checked":"");return r("div",{className:l,children:a("fieldset",{className:"im-c-datasets-layers-group__fieldset",children:[r("legend",{className:"im-c-datasets-layers-group__legend",children:t.label}),t.sublayers.filter(e=>e.toggleVisibility).map(e=>{var o,l="hidden"!==(null===(o=t.sublayerVisibility)||void 0===o?void 0:o[e.id]),i="".concat(t.id,"-").concat(e.id),n="im-c-datasets-layers__item govuk-checkboxes govuk-checkboxes--small".concat(l?" im-c-datasets-layers__item--checked":"");return r("div",{className:n,"data-module":"govuk-checkboxes",children:a("div",{className:"govuk-checkboxes__item",children:[r("input",{className:"govuk-checkboxes__input",id:i,type:"checkbox",checked:l,"data-dataset-id":t.id,"data-sublayer-id":e.id,onChange:s}),r("label",{className:j,htmlFor:i,children:e.label})]})},e.id)})]})},t.id)}if("group"===e.type){var i=e.datasets.some(e=>"hidden"!==e.visibility),n="govuk-form-group im-c-datasets-layers-group".concat(i?" im-c-datasets-layers-group--items-checked":"");return r("div",{className:n,children:a("fieldset",{className:"im-c-datasets-layers-group__fieldset",children:[r("legend",{className:"im-c-datasets-layers-group__legend",children:e.groupLabel}),e.datasets.map(e=>d(e))]})},e.groupLabel)}return d(e.dataset)})})}},{id:"datasetsKey",label:"Key",mobile:{slot:"drawer",modal:!0},tablet:{slot:"left-top",width:"260px"},desktop:{slot:"left-top",width:"280px"},render:e=>{var t,{pluginConfig:o,mapState:l,pluginState:i,services:n}=e;if(null==i||null===(t=i.key)||void 0===t||null===(t=t.items)||void 0===t||!t.length)return r(C,{text:o.noKeyItemText});var{mapStyle:s}=l,{symbolRegistry:d,patternRegistry:u}=n,c=(e,t)=>a("dl",{className:"im-c-datasets-key__item",children:[r("dt",{className:"im-c-datasets-key__item-symbol",children:r(te,ae(ae({},t),{},{symbolRegistry:d,patternRegistry:u,mapStyle:s}))}),a("dd",{className:"im-c-datasets-key__item-label",children:[t.label,t.symbolDescription&&a("span",{className:"govuk-visually-hidden",children:["(",k(t.symbolDescription,s.id),")"]})]})]},e),{items:p,hasGroups:y}=i.key,b="im-c-datasets-key".concat(y?" im-c-datasets-key--has-groups":"");return r("div",{className:b,children:p.map(e=>{if("sublayers"===e.type){var t="key-heading-".concat(e.dataset.id);return a("section",{className:"im-c-datasets-key__group","aria-labelledby":t,children:[r("h3",{id:t,className:"im-c-datasets-key__group-heading",children:e.dataset.label}),e.dataset.sublayers.filter(t=>{var r;return"hidden"!==(null===(r=e.dataset.sublayerVisibility)||void 0===r?void 0:r[t.id])}).map(t=>c("".concat(e.dataset.id,"-").concat(t.id),T(e.dataset,t)))]},e.dataset.id)}if("group"===e.type){var o="key-heading-".concat(e.groupLabel.toLowerCase().replaceAll(/\s+/g,"-"));return a("section",{className:"im-c-datasets-key__group","aria-labelledby":o,children:[r("h3",{id:o,className:"im-c-datasets-key__group-heading",children:e.groupLabel}),e.datasets.map(e=>c(e.id,e))]},e.groupLabel)}return c(e.dataset.id,e.dataset)})})}}],buttons:[{id:"datasetsLayers",label:"Layers",panelId:"datasetsLayers",iconId:"layers",excludeWhen:e=>{var{pluginConfig:t}=e;return!t.datasets.some(e=>{var t;return e.toggleVisibility||(null===(t=e.sublayers)||void 0===t?void 0:t.some(e=>e.toggleVisibility))})},mobile:{slot:"top-left",showLabel:!0},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}},{id:"datasetsKey",label:"Key",panelId:"datasetsKey",iconId:"key",excludeWhen:e=>{var{pluginConfig:t}=e;return!t.datasets.some(e=>e.showInKey)},mobile:{slot:"top-left",showLabel:!1},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}}],icons:[{id:"layers",svgContent:'<path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path>'},{id:"key",svgContent:'<path d="M3 5h.01"/><path d="M3 12h.01"/><path d="M3 19h.01"/><path d="M8 5h13"/><path d="M8 12h13"/><path d="M8 19h13"/>'}],api:{addDataset:(e,t)=>{var r,{pluginState:a,mapState:o}=e;null===(r=a.layerAdapter)||void 0===r||r.addDataset(le(le({},s),t),o.mapStyle),a.dispatch({type:"ADD_DATASET",payload:{dataset:t,datasetDefaults:s}})},removeDataset:(e,t)=>{var r,a,{pluginState:o}=e,l=null===(r=o.datasets)||void 0===r?void 0:r.find(e=>e.id===t);l&&(null===(a=o.layerAdapter)||void 0===a||a.removeDataset(l,o.datasets),o.dispatch({type:"REMOVE_DATASET",payload:{id:t}}))},setDatasetVisibility:A,setFeatureVisibility:function(e,t,r){var a,{pluginState:o}=e,{datasetId:l,idProperty:i=null}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=null===(a=o.datasets)||void 0===a?void 0:a.find(e=>e.id===l);if(n)if(t){var s,d=o.hiddenFeatures[l];if(!d)return;var u=d.ids.filter(e=>!r.includes(e));o.dispatch({type:"SHOW_FEATURES",payload:{layerId:l,featureIds:r}}),null===(s=o.layerAdapter)||void 0===s||s.showFeatures(n,i,u)}else{var c,p=o.hiddenFeatures[l],y=(null==p?void 0:p.ids)||[],b=[...new Set([...y,...r])];o.dispatch({type:"HIDE_FEATURES",payload:{layerId:l,idProperty:i,featureIds:r}}),null===(c=o.layerAdapter)||void 0===c||c.hideFeatures(n,i,b)}},setStyle:function(e,t){var r,a,{pluginState:o,mapState:l}=e,{datasetId:i,sublayerId:n}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=null===(r=o.datasets)||void 0===r?void 0:r.find(e=>e.id===i);if(s)if(n){var d,u;o.dispatch({type:"SET_SUBLAYER_STYLE",payload:{datasetId:i,sublayerId:n,styleChanges:t}});var c=ne(ne({},s),{},{sublayers:null===(d=s.sublayers)||void 0===d?void 0:d.map(e=>e.id===n?ne(ne({},e),{},{style:ne(ne({},e.style),t)}):e)});null===(u=o.layerAdapter)||void 0===u||u.setSublayerStyle(c,n,l.mapStyle)}else{o.dispatch({type:"SET_DATASET_STYLE",payload:{datasetId:i,styleChanges:t}});var p=ne(ne({},s),t);null===(a=o.layerAdapter)||void 0===a||a.setStyle(p,l.mapStyle)}},getStyle:function(e){var t,r,{pluginState:a}=e,{datasetId:o,sublayerId:l}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=null===(t=a.datasets)||void 0===t?void 0:t.find(e=>e.id===o);if(!i)return null;if(l){var n,s,d=null===(n=i.sublayers)||void 0===n?void 0:n.find(e=>e.id===l);return null!==(s=null==d?void 0:d.style)&&void 0!==s?s:null}return null!==(r=i.style)&&void 0!==r?r:null},setOpacity:(e,t,r)=>{var a,{pluginState:o}=e,{datasetId:l,sublayerId:i}=r||{};if(i){var n,s;if(!(null===(n=o.datasets)||void 0===n?void 0:n.find(e=>e.id===l)))return;return o.dispatch({type:"SET_SUBLAYER_OPACITY",payload:{datasetId:l,sublayerId:i,opacity:t}}),void(null===(s=o.layerAdapter)||void 0===s||s.setSublayerOpacity(l,i,t))}if(l){var d,u;if(!(null===(d=o.datasets)||void 0===d?void 0:d.find(e=>e.id===l)))return;return o.dispatch({type:"SET_OPACITY",payload:{datasetId:l,opacity:t}}),void(null===(u=o.layerAdapter)||void 0===u||u.setOpacity(l,t))}o.dispatch({type:"SET_GLOBAL_OPACITY",payload:{opacity:t}}),null===(a=o.datasets)||void 0===a||a.forEach(e=>{var r;null===(r=o.layerAdapter)||void 0===r||r.setOpacity(e.id,t)})},getOpacity:(e,t)=>{var r,a,{pluginState:o}=e,{datasetId:l,sublayerId:i}=t||{};if(i){var n,s,d,u,c=null===(n=o.datasets)||void 0===n?void 0:n.find(e=>e.id===l),p=null==c||null===(s=c.sublayers)||void 0===s?void 0:s.find(e=>e.id===i);return null!==(d=null==p||null===(u=p.style)||void 0===u?void 0:u.opacity)&&void 0!==d?d:null}if(l){var y,b,v=null===(y=o.datasets)||void 0===y?void 0:y.find(e=>e.id===l);return null!==(b=null==v?void 0:v.opacity)&&void 0!==b?b:null}return null!==(r=null===(a=o.datasets)||void 0===a||null===(a=a[0])||void 0===a?void 0:a.opacity)&&void 0!==r?r:null},setData:(e,t,r)=>{var a,o,{pluginState:l}=e,{datasetId:i}=r,n=null===(a=l.datasets)||void 0===a?void 0:a.find(e=>e.id===i);null!=n&&n.tiles?de('setData called on vector tile dataset "'.concat(i,'" — has no effect')):null===(o=l.layerAdapter)||void 0===o||o.setData(i,t)}}};export{ue as manifest};
1
+ import{useRef as e,useEffect as t}from"preact/compat";import{jsx as r,jsxs as a}from"preact/jsx-runtime";import o from"@babel/runtime/helpers/defineProperty";import l from"@babel/runtime/helpers/asyncToGenerator";function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function n(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var s={minZoom:6,maxZoom:24,showInKey:!1,toggleVisibility:!1,visibility:"visible",style:{stroke:"#d4351c",strokeWidth:2,fill:"transparent",symbolDescription:"red outline"}},d=["stroke","strokeWidth","strokeDashArray","fill","fillPattern","fillPatternSvgContent","fillPatternForegroundColor","fillPatternBackgroundColor","opacity","symbolDescription","keySymbolShape","symbol","symbolSvgContent","symbolViewBox","symbolAnchor","symbolBackgroundColor","symbolForegroundColor","symbolHaloWidth","symbolGraphic"],u=["stroke","fill","fillPattern","fillPatternSvgContent","symbol","symbolSvgContent"],c=e=>u.some(t=>t in e),p=(e,t)=>{var r=e.style||{},a=n(n({},t.style),r);!("symbolDescription"in r)&&c(r)&&delete a.symbolDescription;var o=n({},e);delete o.style,d.forEach(e=>delete o[e]);var l=n({},t);return delete l.style,n(n(n({},l),o),a)};function y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function b(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function f(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?v(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):v(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var m=e=>{var t;if(null===(t=e.sublayers)||void 0===t||!t.length)return e;var r={};return e.sublayers.forEach(e=>{r[e.id]="visible"}),f(f({},e),{},{sublayerVisibility:r})},h={BUILD_KEY_GROUPS:e=>{var t=e.datasets||[],r=new Set,a=[],o=!1;return t.forEach(e=>{var l;if(e.showInKey&&"hidden"!==e.visibility)if(null!==(l=e.sublayers)&&void 0!==l&&l.length){var{sublayerVisibility:i=[]}=e;Object.values(i).some(e=>"hidden"!==e)&&(o=!0,a.push({type:"sublayers",dataset:e}))}else{if(e.groupLabel){if(r.has(e.groupLabel))return;return r.add(e.groupLabel),o=!0,void a.push({type:"group",groupLabel:e.groupLabel,datasets:t.filter(t=>{var r;return!(null!==(r=t.sublayers)&&void 0!==r&&r.length)&&t.groupLabel===e.groupLabel})})}a.push({type:"flat",dataset:e})}}),b(b({},e),{},{key:{items:a,hasGroups:o}})},SET_DATASETS:(e,t)=>{var{datasets:r,datasetDefaults:a}=t;return f(f({},e),{},{datasets:r.map(e=>m(p(e,a)))})},ADD_DATASET:(e,t)=>{var{dataset:r,datasetDefaults:a}=t;return f(f({},e),{},{datasets:[...e.datasets||[],m(p(r,a))]})},REMOVE_DATASET:(e,t)=>{var r,{id:a}=t;return f(f({},e),{},{datasets:(null===(r=e.datasets)||void 0===r?void 0:r.filter(e=>e.id!==a))||[]})},SET_DATASET_VISIBILITY:(e,t)=>{var r,{id:a,visibility:o}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>e.id===a?f(f({},e),{},{visibility:o}):e)})},SET_GLOBAL_VISIBILITY:(e,t)=>{var r,{visibility:a}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>f(f({},e),{},{visibility:a}))})},SET_SUBLAYER_VISIBILITY:(e,t)=>{var r,{datasetId:a,sublayerId:o,visibility:l}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>e.id!==a?e:f(f({},e),{},{sublayerVisibility:f(f({},e.sublayerVisibility),{},{[o]:l})}))})},SET_DATASET_STYLE:(e,t)=>{var r,{datasetId:a,styleChanges:o}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>e.id===a?f(f({},e),o):e)})},SET_SUBLAYER_STYLE:(e,t)=>{var r,{datasetId:a,sublayerId:o,styleChanges:l}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>{var t;return e.id!==a?e:f(f({},e),{},{sublayers:null===(t=e.sublayers)||void 0===t?void 0:t.map(e=>e.id===o?f(f({},e),{},{style:f(f({},e.style),l)}):e)})})})},SET_OPACITY:(e,t)=>{var r,{datasetId:a,opacity:o}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>e.id===a?f(f({},e),{},{opacity:o}):e)})},SET_GLOBAL_OPACITY:(e,t)=>{var r,{opacity:a}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>f(f({},e),{},{opacity:a}))})},SET_SUBLAYER_OPACITY:(e,t)=>{var r,{datasetId:a,sublayerId:o,opacity:l}=t;return f(f({},e),{},{datasets:null===(r=e.datasets)||void 0===r?void 0:r.map(e=>{var t;return e.id!==a?e:f(f({},e),{},{sublayers:null===(t=e.sublayers)||void 0===t?void 0:t.map(e=>e.id===o?f(f({},e),{},{style:f(f({},e.style),{},{opacity:l})}):e)})})})},HIDE_FEATURES:(e,t)=>{var{layerId:r,idProperty:a,featureIds:o}=t,l=e.hiddenFeatures[r],i=(null==l?void 0:l.ids)||[],n=[...new Set([...i,...o])];return f(f({},e),{},{hiddenFeatures:f(f({},e.hiddenFeatures),{},{[r]:{idProperty:a,ids:n}})})},SHOW_FEATURES:(e,t)=>{var{layerId:r,featureIds:a}=t,o=e.hiddenFeatures[r];if(!o)return e;var l=o.ids.filter(e=>!a.includes(e));if(0===l.length){var i=f({},e.hiddenFeatures);return delete i[r],f(f({},e),{},{hiddenFeatures:i})}return f(f({},e),{},{hiddenFeatures:f(f({},e.hiddenFeatures),{},{[r]:f(f({},o),{},{ids:l})})})},SET_LAYER_ADAPTER:(e,t)=>f(f({},e),{},{layerAdapter:t})},g={APP_ADD_MARKER:"app:addmarker",APP_REMOVE_MARKER:"app:removemarker",APP_SET_MODE:"app:setmode",APP_REVERT_MODE:"app:revertmode",APP_ADD_BUTTON:"app:addbutton",APP_TOGGLE_BUTTON_STATE:"app:togglebuttonstate",APP_ADD_PANEL:"app:addpanel",APP_REMOVE_PANEL:"app:removepanel",APP_SHOW_PANEL:"app:showpanel",APP_HIDE_PANEL:"app:hidepanel",APP_ADD_CONTROL:"app:addcontrol",APP_READY:"app:ready",APP_OPENED:"app:opened",APP_CLOSED:"app:closed",APP_PANEL_OPENED:"app:panelopened",APP_PANEL_CLOSED:"app:panelclosed",MAP_SET_STYLE:"map:setstyle",MAP_SET_SIZE:"map:setsize",MAP_SET_PIXEL_RATIO:"map:setpixelratio",MAP_FIT_TO_BOUNDS:"map:fittobounds",MAP_SET_VIEW:"map:setview",MAP_INIT_MAP_STYLES:"map:initmapstyles",MAP_STYLE_CHANGE:"map:stylechange",MAP_LOADED:"map:loaded",MAP_READY:"map:ready",MAP_SIZE_CHANGE:"map:sizechange",MAP_FIRST_IDLE:"map:firstidle",MAP_MOVE_START:"map:movestart",MAP_MOVE:"map:move",MAP_MOVE_END:"map:moveend",MAP_STATE_UPDATED:"map:stateupdated",MAP_DATA_CHANGE:"map:datachange",MAP_RENDER:"map:render",MAP_CLICK:"map:click",MAP_DESTROY:"map:destroy"},O=function(){var e=l(function*(e,t,r,a){var o=r(e,t),l="string"==typeof o?{url:o}:o,{url:i,headers:n={}}=l,s=yield fetch(i,{headers:n,signal:a});if(!s.ok)throw new Error("Failed to fetch GeoJSON: ".concat(s.status," ").concat(s.statusText));var d=yield s.json();if("FeatureCollection"===d.type)return d;if("Feature"===d.type)return{type:"FeatureCollection",features:[d]};if(Array.isArray(d))return{type:"FeatureCollection",features:d};throw new Error("Invalid GeoJSON response")});return function(t,r,a,o){return e.apply(this,arguments)}}(),P=(e,t)=>!(!e||!t)&&!(e[2]<t[0]||e[0]>t[2]||e[3]<t[1]||e[1]>t[3]),S=e=>{var t=1/0,r=1/0,a=-1/0,o=-1/0,l=(e,i)=>{var n;0===i?(n=e,t=Math.min(t,n[0]),r=Math.min(r,n[1]),a=Math.max(a,n[0]),o=Math.max(o,n[1])):e.forEach(e=>l(e,i-1))};switch(e.type){case"Point":l(e.coordinates,0);break;case"LineString":case"MultiPoint":l(e.coordinates,1);break;case"Polygon":case"MultiLineString":l(e.coordinates,2);break;case"MultiPolygon":l(e.coordinates,3);break;case"GeometryCollection":e.geometries.forEach(e=>{var l=S(e);t=Math.min(t,l[0]),r=Math.min(r,l[1]),a=Math.max(a,l[2]),o=Math.max(o,l[3])});break;default:throw new Error("Unsupported geometry type: ".concat(e.type))}return[t,r,a,o]},_=e=>{var t,r,a,o,{dataset:i,map:n,onUpdate:s}=e,{geojson:d,idProperty:u,transformRequest:c,maxFeatures:p,minZoom:y=0}=i,b=new Map,v=null,f=null,m=()=>({type:"FeatureCollection",features:Array.from(b.values()).map(e=>e.feature)}),h=function(){var e=l(function*(){var e=n.getZoom();if(!(e<y)){var t=(e=>{var t=e.getBounds();return[t.getWest(),t.getSouth(),t.getEast(),t.getNorth()]})(n);if(!(v&&(r=v,a=t,r&&a&&a[0]>=r[0]&&a[1]>=r[1]&&a[2]<=r[2]&&a[3]<=r[3]))){var r,a,o,l;f&&f.abort(),f=new AbortController;try{var h={bbox:t,zoom:e,dataset:i},g=yield O(d,h,c,f.signal),_=Date.now();g.features.forEach(e=>{var t=(e=>{var t,r;return u&&null!==(t=null===(r=e.properties)||void 0===r?void 0:r[u])&&void 0!==t?t:e.id})(e);null!=t?b.set(t,{feature:e,bbox:S(e.geometry),lastSeenAt:_}):console.warn("Feature missing ID, skipping:",e)}),l=t,v=(o=v)?[Math.min(o[0],l[0]),Math.min(o[1],l[1]),Math.max(o[2],l[2]),Math.max(o[3],l[3])]:[...l];var E=b.size;(e=>{if(p&&!(b.size<=1.2*p)){var t=p,r=[],a=[];for(var[o,l]of b)P(l.bbox,e)?r.push(o):a.push({id:o,lastSeenAt:l.lastSeenAt});a.sort((e,t)=>e.lastSeenAt-t.lastSeenAt);for(var i=b.size-t,n=0;n<i&&n<a.length;n++)b.delete(a[n].id);if(b.size>t)for(var s=b.size-t,d=r.map(e=>({id:e,lastSeenAt:b.get(e).lastSeenAt})).sort((e,t)=>e.lastSeenAt-t.lastSeenAt),u=0;u<s&&u<d.length;u++)b.delete(d[u].id)}})(t),b.size<E&&(v=t),s(i.id,m())}catch(e){if("AbortError"===e.name)return;console.error("Failed to fetch dynamic GeoJSON for ".concat(i.id,":"),e)}}}});return function(){return e.apply(this,arguments)}}(),g=(t=h,r=200,(o=function(){for(var e=arguments.length,o=new Array(e),l=0;l<e;l++)o[l]=arguments[l];clearTimeout(a),a=setTimeout(()=>t(...o),r)}).cancel=()=>{clearTimeout(a),a=null},o),_=()=>{g()};return n.on("moveend",_),h(),{destroy(){n.off("moveend",_),g.cancel(),f&&f.abort()},clear(){b.clear(),v=null,s(i.id,{type:"FeatureCollection",features:[]})},refresh(){b.clear(),v=null,h()},getFeatureCount:()=>b.size,reapply(){b.size>0&&s(i.id,m())}}},E=e=>{var{adapter:t,pluginConfig:r,pluginStateRef:a,mapStyle:o,mapProvider:l,events:i,eventBus:n}=e,{datasets:d}=r,u=new Map,c=()=>a.current.datasets||d,y=d.map(e=>p(e,s));t.init(y,o).then(()=>{y.forEach(e=>{if((e=>"string"==typeof e.geojson&&!!e.idProperty&&"function"==typeof e.transformRequest)(e)){var r=_({dataset:e,map:l.map,onUpdate:(e,r)=>t.setData(e,r)});u.set(e.id,r)}}),n.emit("datasets:ready")});var b=o,v=e=>{b=e,t.onStyleChange(c(),e,a.current.hiddenFeatures||{},u)},f=()=>{t.onSizeChange(c(),b)};return n.on(i.MAP_SET_STYLE,v),n.on(i.MAP_SIZE_CHANGE,f),{remove(){n.off(i.MAP_SET_STYLE,v),n.off(i.MAP_SIZE_CHANGE,f),u.forEach(e=>e.destroy()),u.clear(),t.destroy(c())},refreshDataset(e){var t;null===(t=u.get(e))||void 0===t||t.refresh()},clearDatasetCache(e){var t;null===(t=u.get(e))||void 0===t||t.clear()},getFeatureCount(e){var t,r;return null!==(t=null===(r=u.get(e))||void 0===r?void 0:r.getFeatureCount())&&void 0!==t?t:null}}};var A=function(e,t){var r,a,{pluginState:o}=e,l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{datasetId:i,sublayerId:n}=l;if(n){var s,d=t?"visible":"hidden";return null===(s=o.layerAdapter)||void 0===s||s[t?"showSublayer":"hideSublayer"](i,n),void o.dispatch({type:"SET_SUBLAYER_VISIBILITY",payload:{datasetId:i,sublayerId:n,visibility:d}})}if(i){if(null===(a=o.layerAdapter)||void 0===a||a[t?"showDataset":"hideDataset"](i),o.dispatch({type:"SET_DATASET_VISIBILITY",payload:{id:i,visibility:t?"visible":"hidden"}}),t){var u,c=null===(u=o.datasets)||void 0===u?void 0:u.find(e=>e.id===i);Object.entries((null==c?void 0:c.sublayerVisibility)||{}).forEach(e=>{var t,[r,a]=e;"hidden"===a&&(null===(t=o.layerAdapter)||void 0===t||t.hideSublayer(i,r))})}}else o.dispatch({type:"SET_GLOBAL_VISIBILITY",payload:{visibility:t?"visible":"hidden"}}),null===(r=o.datasets)||void 0===r||r.forEach(e=>{var r;null===(r=o.layerAdapter)||void 0===r||r[t?"showDataset":"hideDataset"](e.id),t&&Object.entries(e.sublayerVisibility||{}).forEach(t=>{var r,[a,l]=t;"hidden"===l&&(null===(r=o.layerAdapter)||void 0===r||r.hideSublayer(e.id,a))})})},j="im-c-datasets-layers__item-label govuk-label govuk-checkboxes__label",w=e=>{var t;return null===(t=e.sublayers)||void 0===t?void 0:t.some(e=>e.toggleVisibility)},k=(e,t)=>{if(!e)return null;if("string"==typeof e)return e.trim();if("object"==typeof e){if(t&&e[t])return e[t];var r=Object.values(e)[0];return null!=r?r:null}return null};function D(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}var I=(e,t)=>"symbolDescription"in t?t.symbolDescription:c(t)?void 0:e.symbolDescription,T=(e,t)=>{var r,a,l,i,n,s,d,u,c,p,y,b,v,f,m,h,g,O=t.style||{},P=(h=e.filter,g=t.filter,h&&g?["all",h,g]:g||h||null);return function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?D(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):D(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({id:t.id,label:t.label,stroke:null!==(r=O.stroke)&&void 0!==r?r:e.stroke,strokeWidth:null!==(a=O.strokeWidth)&&void 0!==a?a:e.strokeWidth,strokeDashArray:null!==(l=O.strokeDashArray)&&void 0!==l?l:e.strokeDashArray,opacity:null!==(i=O.opacity)&&void 0!==i?i:e.opacity,keySymbolShape:null!==(n=O.keySymbolShape)&&void 0!==n?n:e.keySymbolShape,symbolDescription:I(e,O),showInKey:null!==(s=t.showInKey)&&void 0!==s?s:e.showInKey,toggleVisibility:null!==(d=t.toggleVisibility)&&void 0!==d&&d,filter:P,minZoom:e.minZoom,maxZoom:e.maxZoom,symbol:null!==(u=O.symbol)&&void 0!==u?u:e.symbol,symbolSvgContent:null!==(c=O.symbolSvgContent)&&void 0!==c?c:e.symbolSvgContent,symbolViewBox:null!==(p=O.symbolViewBox)&&void 0!==p?p:e.symbolViewBox,symbolAnchor:null!==(y=O.symbolAnchor)&&void 0!==y?y:e.symbolAnchor,symbolBackgroundColor:null!==(b=O.symbolBackgroundColor)&&void 0!==b?b:e.symbolBackgroundColor,symbolForegroundColor:null!==(v=O.symbolForegroundColor)&&void 0!==v?v:e.symbolForegroundColor,symbolHaloWidth:null!==(f=O.symbolHaloWidth)&&void 0!==f?f:e.symbolHaloWidth,symbolGraphic:null!==(m=O.symbolGraphic)&&void 0!==m?m:e.symbolGraphic},((e,t)=>{var r,a;return t.fillPattern||t.fillPatternSvgContent?{fillPattern:t.fillPattern,fillPatternSvgContent:t.fillPatternSvgContent,fillPatternForegroundColor:null!==(r=t.fillPatternForegroundColor)&&void 0!==r?r:e.fillPatternForegroundColor,fillPatternBackgroundColor:null!==(a=t.fillPatternBackgroundColor)&&void 0!==a?a:e.fillPatternBackgroundColor}:"fill"in t?{fill:t.fill}:{fill:e.fill,fillPattern:e.fillPattern,fillPatternSvgContent:e.fillPatternSvgContent,fillPatternForegroundColor:e.fillPatternForegroundColor,fillPatternBackgroundColor:e.fillPatternBackgroundColor}})(e,O))},C=e=>{var{text:t}=e;return r("div",{className:"im-c-datasets-key",children:r("p",{className:"im-c-datasets-key__empty-message",children:t})})},L=new Set(["symbolBackgroundColor","symbolForegroundColor","symbolHaloWidth","symbolGraphic"]),M=e=>!(!e.symbol&&!e.symbolSvgContent),x=(e,t,r)=>e.replace(/\{\{foregroundColor\}\}/g,t||"black").replace(/\{\{backgroundColor\}\}/g,r);function N(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function R(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?N(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):N(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var F=20,B={xmlns:"http://www.w3.org/2000/svg",width:F,height:F,viewBox:"0 0 ".concat(F," ").concat(F),className:"am-c-datasets-key-symbol","aria-hidden":"true",focusable:"false"},V=R(R({},B),{},{width:38,height:38,className:"am-c-datasets-key-symbol am-c-datasets-key-symbol--point"});function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function W(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Y(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var G=e=>{var{patternRegistry:t,mapStyle:o}=e,l=((e,t,r)=>{var a=((e,t)=>{return e.fillPatternSvgContent?e.fillPatternSvgContent:e.fillPattern&&null!==(r=null==t||null===(a=t.get(e.fillPattern))||void 0===a?void 0:a.svgContent)&&void 0!==r?r:null;var r,a})(e,r);if(!a)return null;var o=k(e.fillPatternForegroundColor,t)||"black",l=k(e.fillPatternBackgroundColor,t)||"transparent",i=k(e.stroke,t)||o;return{border:x('<path d="M19 2.862v14.275c0 1.028-.835 1.862-1.862 1.862H2.863c-1.028 0-1.862-.835-1.862-1.862V2.862C1.001 1.834 1.836 1 2.863 1h14.275C18.166 1 19 1.835 19 2.862z" fill="{{backgroundColor}}" stroke="{{foregroundColor}}" stroke-width="2"/>',i,l),content:x(a,o,l)}})(e,o.id,t);return a("svg",W(W({},B),{},{children:[r("g",{dangerouslySetInnerHTML:{__html:l.border}}),r("g",{transform:"translate(".concat(2,", ").concat(2,")"),dangerouslySetInnerHTML:{__html:l.content}})]}))};function U(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function H(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?U(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):U(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var K=e=>{var t,{symbolRegistry:a,mapStyle:o,symbolDef:l}=e,i=null!==(t=null==o?void 0:o.appColorScheme)&&void 0!==t?t:"light",n=H(H({},o),{},{mapColorScheme:i}),s=a.resolve(l,(e=>{if(!M(e))return{};var t={};return L.forEach(r=>{if(null!=e[r]){var a=r.charAt(6).toLowerCase()+r.slice(7);t[a]=e[r]}}),t})(e),n),d=((e,t)=>{var r;return e.symbolViewBox?e.symbolViewBox:null!==(r=null==t?void 0:t.viewBox)&&void 0!==r?r:"0 0 38 38"})(e,l);return r("svg",H(H({},V),{},{viewBox:d,children:r("g",{dangerouslySetInnerHTML:{__html:s}})}))};function z(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function Z(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?z(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):z(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var J=e=>{var{mapStyle:t}=e;return r("svg",Z(Z({},B),{},{children:r("line",{x1:e.strokeWidth/2,y1:10,x2:F-e.strokeWidth/2,y2:10,stroke:k(e.stroke,t.id),strokeWidth:e.strokeWidth,strokeLinecap:"round"})}))};function q(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function X(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?q(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):q(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var Q=e=>{var{mapStyle:t}=e;return r("svg",X(X({},B),{},{children:r("rect",{x:e.strokeWidth/2,y:e.strokeWidth/2,width:F-e.strokeWidth,height:F-e.strokeWidth,rx:e.strokeWidth,ry:e.strokeWidth,fill:k(e.fill,t.id),stroke:k(e.stroke,t.id),strokeWidth:e.strokeWidth,strokeLinejoin:"round"})}))};function $(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function ee(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?$(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var te=e=>{var t,{symbolRegistry:a}=e,o=M(e)&&((e,t)=>e.symbolSvgContent?{svg:e.symbolSvgContent}:e.symbol?t.get(e.symbol):void 0)(e,a);return o?r(K,ee(ee({},e),{},{symbolDef:o})):(t=e).fillPattern||t.fillPatternSvgContent?r(G,ee({},e)):"line"===e.keySymbolShape?r(J,ee({},e)):r(Q,ee({},e))};function re(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function ae(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?re(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):re(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function oe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function le(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?oe(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):oe(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function ie(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function ne(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ie(Object(r),!0).forEach(function(t){o(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ie(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var se="[interactive-map]",de=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return console.warn(se,...t)},ue={InitComponent:function(r){var a,{pluginConfig:o,pluginState:i,appState:n,mapState:d,mapProvider:u,services:c}=r,{dispatch:p}=i,{eventBus:y,symbolRegistry:b,patternRegistry:v}=c,f=!(null===(a=u.map)||void 0===a||!a.getStyle()),m=e(i);m.current=i;var h=e(null);return t(()=>{var e,t,r,a,c=null===(e=null===(t=o.includeModes)||void 0===t?void 0:t.includes(n.mode))||void 0===e||e,O=null!==(r=null===(a=o.excludeModes)||void 0===a?void 0:a.includes(n.mode))&&void 0!==r&&r;if(f&&c&&!O&&!h.current){i.datasets||p({type:"SET_DATASETS",payload:{datasets:o.datasets,datasetDefaults:s}});var P=function(){var e=l(function*(){if(!o.layerAdapter)throw new Error("datasets plugin: no layerAdapter provided. Import and pass maplibreLayerAdapter or a custom adapter.");var{default:e}=yield o.layerAdapter.load(),t=new e(u,b,v);p({type:"SET_LAYER_ADAPTER",payload:t}),h.current=E({adapter:t,pluginConfig:o,pluginStateRef:m,mapStyle:d.mapStyle,mapProvider:u,events:g,eventBus:y})});return function(){return e.apply(this,arguments)}}();P()}},[f,n.mode]),t(()=>{p({type:"BUILD_KEY_GROUPS",payload:null})},[i.datasets]),t(()=>()=>{h.current&&(h.current.remove(),h.current=null),p({type:"SET_LAYER_ADAPTER",payload:null})},[]),null},reducer:{initialState:{datasets:null,key:{items:[],hasGroups:!1},hiddenFeatures:{},layerAdapter:null},actions:h},panels:[{id:"datasetsLayers",label:"Layers",mobile:{slot:"drawer",modal:!0,dismissible:!0},tablet:{slot:"left-top",dismissible:!0,exclusive:!0,width:"260px"},desktop:{slot:"left-top",modal:!1,dismissible:!0,exclusive:!0,width:"280px"},render:e=>{var t,o,l,{pluginState:i}=e,n=e=>{var{value:t,checked:r}=e.target;A({pluginState:i},r,{datasetId:t})},s=e=>{var{checked:t}=e.target,r=e.target.dataset.datasetId,a=e.target.dataset.sublayerId;A({pluginState:i},t,{datasetId:r,sublayerId:a})},d=e=>{var t="im-c-datasets-layers__item govuk-checkboxes govuk-checkboxes--small".concat("hidden"===e.visibility?"":" im-c-datasets-layers__item--checked");return r("div",{className:t,"data-module":"govuk-checkboxes",children:a("div",{className:"govuk-checkboxes__item",children:[r("input",{className:"govuk-checkboxes__input",id:e.id,name:"layers",type:"checkbox",value:e.id,checked:"hidden"!==e.visibility,onChange:n}),r("label",{className:j,htmlFor:e.id,children:e.label})]})},e.id)},u=(i.datasets||[]).filter(e=>e.toggleVisibility||w(e)),c=(t=u,o=new Set,l=[],t.forEach(e=>{if(w(e))l.push({type:"sublayers",dataset:e});else{if(e.groupLabel){if(o.has(e.groupLabel))return;return o.add(e.groupLabel),void l.push({type:"group",groupLabel:e.groupLabel,datasets:t.filter(t=>!w(t)&&t.groupLabel===e.groupLabel)})}l.push({type:"flat",dataset:e})}}),l),p=c.some(e=>"sublayers"===e.type||"group"===e.type),y="im-c-datasets-layers".concat(p?" im-c-datasets-layers--has-groups":"");return r("div",{className:y,children:c.map(e=>{if("sublayers"===e.type){var{dataset:t}=e,o=t.sublayers.filter(e=>e.toggleVisibility).some(e=>{var r;return"hidden"!==(null===(r=t.sublayerVisibility)||void 0===r?void 0:r[e.id])}),l="govuk-form-group im-c-datasets-layers-group".concat(o?" im-c-datasets-layers-group--items-checked":"");return r("div",{className:l,children:a("fieldset",{className:"im-c-datasets-layers-group__fieldset",children:[r("legend",{className:"im-c-datasets-layers-group__legend",children:t.label}),t.sublayers.filter(e=>e.toggleVisibility).map(e=>{var o,l="hidden"!==(null===(o=t.sublayerVisibility)||void 0===o?void 0:o[e.id]),i="".concat(t.id,"-").concat(e.id),n="im-c-datasets-layers__item govuk-checkboxes govuk-checkboxes--small".concat(l?" im-c-datasets-layers__item--checked":"");return r("div",{className:n,"data-module":"govuk-checkboxes",children:a("div",{className:"govuk-checkboxes__item",children:[r("input",{className:"govuk-checkboxes__input",id:i,type:"checkbox",checked:l,"data-dataset-id":t.id,"data-sublayer-id":e.id,onChange:s}),r("label",{className:j,htmlFor:i,children:e.label})]})},e.id)})]})},t.id)}if("group"===e.type){var i=e.datasets.some(e=>"hidden"!==e.visibility),n="govuk-form-group im-c-datasets-layers-group".concat(i?" im-c-datasets-layers-group--items-checked":"");return r("div",{className:n,children:a("fieldset",{className:"im-c-datasets-layers-group__fieldset",children:[r("legend",{className:"im-c-datasets-layers-group__legend",children:e.groupLabel}),e.datasets.map(e=>d(e))]})},e.groupLabel)}return d(e.dataset)})})}},{id:"datasetsKey",label:"Key",mobile:{slot:"drawer",modal:!0},tablet:{slot:"left-top",width:"260px"},desktop:{slot:"left-top",width:"280px"},render:e=>{var t,{pluginConfig:o,mapState:l,pluginState:i,services:n}=e;if(null==i||null===(t=i.key)||void 0===t||null===(t=t.items)||void 0===t||!t.length)return r(C,{text:o.noKeyItemText});var{mapStyle:s}=l,{symbolRegistry:d,patternRegistry:u}=n,c=(e,t)=>a("dl",{className:"im-c-datasets-key__item",children:[r("dt",{className:"im-c-datasets-key__item-symbol",children:r(te,ae(ae({},t),{},{symbolRegistry:d,patternRegistry:u,mapStyle:s}))}),a("dd",{className:"im-c-datasets-key__item-label",children:[t.label,t.symbolDescription&&a("span",{className:"govuk-visually-hidden",children:["(",k(t.symbolDescription,s.id),")"]})]})]},e),{items:p,hasGroups:y}=i.key,b="im-c-datasets-key".concat(y?" im-c-datasets-key--has-groups":"");return r("div",{className:b,children:p.map(e=>{if("sublayers"===e.type){var t="key-heading-".concat(e.dataset.id);return a("section",{className:"im-c-datasets-key__group","aria-labelledby":t,children:[r("h3",{id:t,className:"im-c-datasets-key__group-heading",children:e.dataset.label}),e.dataset.sublayers.filter(t=>{var r;return"hidden"!==(null===(r=e.dataset.sublayerVisibility)||void 0===r?void 0:r[t.id])}).map(t=>c("".concat(e.dataset.id,"-").concat(t.id),T(e.dataset,t)))]},e.dataset.id)}if("group"===e.type){var o="key-heading-".concat(e.groupLabel.toLowerCase().replaceAll(/\s+/g,"-"));return a("section",{className:"im-c-datasets-key__group","aria-labelledby":o,children:[r("h3",{id:o,className:"im-c-datasets-key__group-heading",children:e.groupLabel}),e.datasets.map(e=>c(e.id,e))]},e.groupLabel)}return c(e.dataset.id,e.dataset)})})}}],buttons:[{id:"datasetsLayers",label:"Layers",panelId:"datasetsLayers",iconId:"layers",excludeWhen:e=>{var{pluginConfig:t}=e;return!t.datasets.some(e=>{var t;return e.toggleVisibility||(null===(t=e.sublayers)||void 0===t?void 0:t.some(e=>e.toggleVisibility))})},mobile:{slot:"top-left",showLabel:!0},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}},{id:"datasetsKey",label:"Key",panelId:"datasetsKey",iconId:"key",excludeWhen:e=>{var{pluginConfig:t}=e;return!t.datasets.some(e=>e.showInKey)},mobile:{slot:"top-left",showLabel:!1},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}}],icons:[{id:"layers",svgContent:'<path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path>'},{id:"key",svgContent:'<path d="M3 5h.01"/><path d="M3 12h.01"/><path d="M3 19h.01"/><path d="M8 5h13"/><path d="M8 12h13"/><path d="M8 19h13"/>'}],api:{addDataset:(e,t)=>{var r,{pluginState:a,mapState:o}=e;null===(r=a.layerAdapter)||void 0===r||r.addDataset(le(le({},s),t),o.mapStyle),a.dispatch({type:"ADD_DATASET",payload:{dataset:t,datasetDefaults:s}})},removeDataset:(e,t)=>{var r,a,{pluginState:o}=e,l=null===(r=o.datasets)||void 0===r?void 0:r.find(e=>e.id===t);l&&(null===(a=o.layerAdapter)||void 0===a||a.removeDataset(l,o.datasets),o.dispatch({type:"REMOVE_DATASET",payload:{id:t}}))},setDatasetVisibility:A,setFeatureVisibility:function(e,t,r){var a,{pluginState:o}=e,{datasetId:l,idProperty:i=null}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=null===(a=o.datasets)||void 0===a?void 0:a.find(e=>e.id===l);if(n)if(t){var s,d=o.hiddenFeatures[l];if(!d)return;var u=d.ids.filter(e=>!r.includes(e));o.dispatch({type:"SHOW_FEATURES",payload:{layerId:l,featureIds:r}}),null===(s=o.layerAdapter)||void 0===s||s.showFeatures(n,i,u)}else{var c,p=o.hiddenFeatures[l],y=(null==p?void 0:p.ids)||[],b=[...new Set([...y,...r])];o.dispatch({type:"HIDE_FEATURES",payload:{layerId:l,idProperty:i,featureIds:r}}),null===(c=o.layerAdapter)||void 0===c||c.hideFeatures(n,i,b)}},setStyle:function(e,t){var r,a,{pluginState:o,mapState:l}=e,{datasetId:i,sublayerId:n}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=null===(r=o.datasets)||void 0===r?void 0:r.find(e=>e.id===i);if(s)if(n){var d,u;o.dispatch({type:"SET_SUBLAYER_STYLE",payload:{datasetId:i,sublayerId:n,styleChanges:t}});var c=ne(ne({},s),{},{sublayers:null===(d=s.sublayers)||void 0===d?void 0:d.map(e=>e.id===n?ne(ne({},e),{},{style:ne(ne({},e.style),t)}):e)});null===(u=o.layerAdapter)||void 0===u||u.setSublayerStyle(c,n,l.mapStyle)}else{o.dispatch({type:"SET_DATASET_STYLE",payload:{datasetId:i,styleChanges:t}});var p=ne(ne({},s),t);null===(a=o.layerAdapter)||void 0===a||a.setStyle(p,l.mapStyle)}},getStyle:function(e){var t,r,{pluginState:a}=e,{datasetId:o,sublayerId:l}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=null===(t=a.datasets)||void 0===t?void 0:t.find(e=>e.id===o);if(!i)return null;if(l){var n,s,d=null===(n=i.sublayers)||void 0===n?void 0:n.find(e=>e.id===l);return null!==(s=null==d?void 0:d.style)&&void 0!==s?s:null}return null!==(r=i.style)&&void 0!==r?r:null},setOpacity:(e,t,r)=>{var a,{pluginState:o}=e,{datasetId:l,sublayerId:i}=r||{};if(i){var n,s;if(!(null===(n=o.datasets)||void 0===n?void 0:n.find(e=>e.id===l)))return;return o.dispatch({type:"SET_SUBLAYER_OPACITY",payload:{datasetId:l,sublayerId:i,opacity:t}}),void(null===(s=o.layerAdapter)||void 0===s||s.setSublayerOpacity(l,i,t))}if(l){var d,u;if(!(null===(d=o.datasets)||void 0===d?void 0:d.find(e=>e.id===l)))return;return o.dispatch({type:"SET_OPACITY",payload:{datasetId:l,opacity:t}}),void(null===(u=o.layerAdapter)||void 0===u||u.setOpacity(l,t))}o.dispatch({type:"SET_GLOBAL_OPACITY",payload:{opacity:t}}),null===(a=o.datasets)||void 0===a||a.forEach(e=>{var r;null===(r=o.layerAdapter)||void 0===r||r.setOpacity(e.id,t)})},getOpacity:(e,t)=>{var r,a,{pluginState:o}=e,{datasetId:l,sublayerId:i}=t||{};if(i){var n,s,d,u,c=null===(n=o.datasets)||void 0===n?void 0:n.find(e=>e.id===l),p=null==c||null===(s=c.sublayers)||void 0===s?void 0:s.find(e=>e.id===i);return null!==(d=null==p||null===(u=p.style)||void 0===u?void 0:u.opacity)&&void 0!==d?d:null}if(l){var y,b,v=null===(y=o.datasets)||void 0===y?void 0:y.find(e=>e.id===l);return null!==(b=null==v?void 0:v.opacity)&&void 0!==b?b:null}return null!==(r=null===(a=o.datasets)||void 0===a||null===(a=a[0])||void 0===a?void 0:a.opacity)&&void 0!==r?r:null},setData:(e,t,r)=>{var a,o,{pluginState:l}=e,{datasetId:i}=r,n=null===(a=l.datasets)||void 0===a?void 0:a.find(e=>e.id===i);null!=n&&n.tiles?de('setData called on vector tile dataset "'.concat(i,'" — has no effect')):null===(o=l.layerAdapter)||void 0===o||o.setData(i,t)}}};export{ue as manifest};
@@ -1,2 +1,2 @@
1
1
  /*! For license information please see im-datasets-plugin.js.LICENSE.txt */
2
- "use strict";(this.webpackChunkdefra_DefraMap=this.webpackChunkdefra_DefraMap||[]).push([[447],{495(t,e,r){function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function i(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?o(Object(r),!0).forEach(function(e){a(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function a(t,e,r){return(e=function(t){var e=function(t){if("object"!=n(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=n(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==n(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}r.r(e),r.d(e,{manifest:()=>ee});var l={minZoom:6,maxZoom:24,showInKey:!1,toggleVisibility:!1,visibility:"visible",style:{stroke:"#d4351c",strokeWidth:2,fill:"transparent",symbolDescription:"red outline"}},u=["stroke","strokeWidth","strokeDashArray","fill","fillPattern","fillPatternSvgContent","fillPatternForegroundColor","fillPatternBackgroundColor","opacity","symbolDescription","keySymbolShape","symbol","symbolSvgContent","symbolViewBox","symbolAnchor","symbolBackgroundColor","symbolForegroundColor","symbolHaloWidth","symbolGraphic"],s=["stroke","fill","fillPattern","fillPatternSvgContent","symbol","symbolSvgContent"],c=function(t){return s.some(function(e){return e in t})},f=function(t,e){var r=t.style||{},n=i(i({},e.style),r);!("symbolDescription"in r)&&c(r)&&delete n.symbolDescription;var o=i({},t);delete o.style,u.forEach(function(t){return delete o[t]});var a=i({},e);return delete a.style,i(i(i({},a),o),n)};function y(t){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},y(t)}function d(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function p(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?d(Object(r),!0).forEach(function(e){b(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):d(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function b(t,e,r){return(e=function(t){var e=function(t){if("object"!=y(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=y(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==y(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function v(t){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},v(t)}function m(t){return function(t){if(Array.isArray(t))return h(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return h(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?h(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function h(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function g(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function S(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?g(Object(r),!0).forEach(function(e){O(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function O(t,e,r){return(e=function(t){var e=function(t){if("object"!=v(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=v(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==v(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var P=function(t){var e;if(null===(e=t.sublayers)||void 0===e||!e.length)return t;var r={};return t.sublayers.forEach(function(t){r[t.id]="visible"}),S(S({},t),{},{sublayerVisibility:r})},j={BUILD_KEY_GROUPS:function(t){var e=t.datasets||[],r=new Set,n=[],o=!1;return e.forEach(function(t){var i;if(t.showInKey&&"hidden"!==t.visibility)if(null!==(i=t.sublayers)&&void 0!==i&&i.length){var a=t.sublayerVisibility,l=void 0===a?[]:a;Object.values(l).some(function(t){return"hidden"!==t})&&(o=!0,n.push({type:"sublayers",dataset:t}))}else{if(t.groupLabel){if(r.has(t.groupLabel))return;return r.add(t.groupLabel),o=!0,void n.push({type:"group",groupLabel:t.groupLabel,datasets:e.filter(function(e){var r;return!(null!==(r=e.sublayers)&&void 0!==r&&r.length)&&e.groupLabel===t.groupLabel})})}n.push({type:"flat",dataset:t})}}),p(p({},t),{},{key:{items:n,hasGroups:o}})},SET_DATASETS:function(t,e){var r=e.datasets,n=e.datasetDefaults;return S(S({},t),{},{datasets:r.map(function(t){return P(f(t,n))})})},ADD_DATASET:function(t,e){var r=e.dataset,n=e.datasetDefaults;return S(S({},t),{},{datasets:[].concat(m(t.datasets||[]),[P(f(r,n))])})},REMOVE_DATASET:function(t,e){var r,n=e.id;return S(S({},t),{},{datasets:(null===(r=t.datasets)||void 0===r?void 0:r.filter(function(t){return t.id!==n}))||[]})},SET_DATASET_VISIBILITY:function(t,e){var r,n=e.id,o=e.visibility;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return t.id===n?S(S({},t),{},{visibility:o}):t})})},SET_GLOBAL_VISIBILITY:function(t,e){var r,n=e.visibility;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return S(S({},t),{},{visibility:n})})})},SET_SUBLAYER_VISIBILITY:function(t,e){var r,n=e.datasetId,o=e.sublayerId,i=e.visibility;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return t.id!==n?t:S(S({},t),{},{sublayerVisibility:S(S({},t.sublayerVisibility),{},O({},o,i))})})})},SET_DATASET_STYLE:function(t,e){var r,n=e.datasetId,o=e.styleChanges;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return t.id===n?S(S({},t),o):t})})},SET_SUBLAYER_STYLE:function(t,e){var r,n=e.datasetId,o=e.sublayerId,i=e.styleChanges;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){var e;return t.id!==n?t:S(S({},t),{},{sublayers:null===(e=t.sublayers)||void 0===e?void 0:e.map(function(t){return t.id===o?S(S({},t),{},{style:S(S({},t.style),i)}):t})})})})},SET_OPACITY:function(t,e){var r,n=e.datasetId,o=e.opacity;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return t.id===n?S(S({},t),{},{opacity:o}):t})})},SET_GLOBAL_OPACITY:function(t,e){var r,n=e.opacity;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return S(S({},t),{},{opacity:n})})})},SET_SUBLAYER_OPACITY:function(t,e){var r,n=e.datasetId,o=e.sublayerId,i=e.opacity;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){var e;return t.id!==n?t:S(S({},t),{},{sublayers:null===(e=t.sublayers)||void 0===e?void 0:e.map(function(t){return t.id===o?S(S({},t),{},{style:S(S({},t.style),{},{opacity:i})}):t})})})})},HIDE_FEATURES:function(t,e){var r=e.layerId,n=e.idProperty,o=e.featureIds,i=t.hiddenFeatures[r],a=(null==i?void 0:i.ids)||[],l=m(new Set([].concat(m(a),m(o))));return S(S({},t),{},{hiddenFeatures:S(S({},t.hiddenFeatures),{},O({},r,{idProperty:n,ids:l}))})},SHOW_FEATURES:function(t,e){var r=e.layerId,n=e.featureIds,o=t.hiddenFeatures[r];if(!o)return t;var i=o.ids.filter(function(t){return!n.includes(t)});if(0===i.length){var a=S({},t.hiddenFeatures);return delete a[r],S(S({},t),{},{hiddenFeatures:a})}return S(S({},t),{},{hiddenFeatures:S(S({},t.hiddenFeatures),{},O({},r,S(S({},o),{},{ids:i})))})},SET_LAYER_ADAPTER:function(t,e){return S(S({},t),{},{layerAdapter:e})}},w=r(738),A={APP_ADD_MARKER:"app:addmarker",APP_REMOVE_MARKER:"app:removemarker",APP_SET_MODE:"app:setmode",APP_REVERT_MODE:"app:revertmode",APP_ADD_BUTTON:"app:addbutton",APP_TOGGLE_BUTTON_STATE:"app:togglebuttonstate",APP_ADD_PANEL:"app:addpanel",APP_REMOVE_PANEL:"app:removepanel",APP_SHOW_PANEL:"app:showpanel",APP_HIDE_PANEL:"app:hidepanel",APP_ADD_CONTROL:"app:addcontrol",APP_READY:"app:ready",APP_VISIBLE:"app:visible",APP_HIDDEN:"app:hidden",APP_PANEL_OPENED:"app:panelopened",APP_PANEL_CLOSED:"app:panelclosed",MAP_SET_STYLE:"map:setstyle",MAP_SET_SIZE:"map:setsize",MAP_SET_PIXEL_RATIO:"map:setpixelratio",MAP_FIT_TO_BOUNDS:"map:fittobounds",MAP_SET_VIEW:"map:setview",MAP_INIT_MAP_STYLES:"map:initmapstyles",MAP_STYLE_CHANGE:"map:stylechange",MAP_LOADED:"map:loaded",MAP_READY:"map:ready",MAP_SIZE_CHANGE:"map:sizechange",MAP_FIRST_IDLE:"map:firstidle",MAP_MOVE_START:"map:movestart",MAP_MOVE:"map:move",MAP_MOVE_END:"map:moveend",MAP_STATE_UPDATED:"map:stateupdated",MAP_DATA_CHANGE:"map:datachange",MAP_RENDER:"map:render",MAP_CLICK:"map:click",MAP_EXIT:"map:exit",MAP_DESTROY:"map:destroy"};function E(){var t,e,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var u=n&&n.prototype instanceof l?n:l,s=Object.create(u.prototype);return _(s,"_invoke",function(r,n,o){var i,l,u,s=0,c=o||[],f=!1,y={p:0,n:0,v:t,a:d,f:d.bind(t,4),d:function(e,r){return i=e,l=0,u=t,y.n=r,a}};function d(r,n){for(l=r,u=n,e=0;!f&&s&&!o&&e<c.length;e++){var o,i=c[e],d=y.p,p=i[2];r>3?(o=p===n)&&(u=i[(l=i[4])?5:(l=3,3)],i[4]=i[5]=t):i[0]<=d&&((o=r<2&&d<i[1])?(l=0,y.v=n,y.n=i[1]):d<p&&(o=r<3||i[0]>n||n>p)&&(i[4]=r,i[5]=n,y.n=p,l=0))}if(o||r>1)return a;throw f=!0,n}return function(o,c,p){if(s>1)throw TypeError("Generator is already running");for(f&&1===c&&d(c,p),l=c,u=p;(e=l<2?t:u)||!f;){i||(l?l<3?(l>1&&(y.n=-1),d(l,u)):y.n=u:y.v=u);try{if(s=2,i){if(l||(o="next"),e=i[o]){if(!(e=e.call(i,u)))throw TypeError("iterator result is not an object");if(!e.done)return e;u=e.value,l<2&&(l=0)}else 1===l&&(e=i.return)&&e.call(i),l<2&&(u=TypeError("The iterator does not provide a '"+o+"' method"),l=1);i=t}else if((e=(f=y.n<0)?u:r.call(n,y))!==a)break}catch(e){i=t,l=1,u=e}finally{s=1}}return{value:e,done:f}}}(r,o,i),!0),s}var a={};function l(){}function u(){}function s(){}e=Object.getPrototypeOf;var c=[][n]?e(e([][n]())):(_(e={},n,function(){return this}),e),f=s.prototype=l.prototype=Object.create(c);function y(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,s):(t.__proto__=s,_(t,o,"GeneratorFunction")),t.prototype=Object.create(f),t}return u.prototype=s,_(f,"constructor",s),_(s,"constructor",u),u.displayName="GeneratorFunction",_(s,o,"GeneratorFunction"),_(f),_(f,o,"Generator"),_(f,n,function(){return this}),_(f,"toString",function(){return"[object Generator]"}),(E=function(){return{w:i,m:y}})()}function _(t,e,r,n){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}_=function(t,e,r,n){function i(e,r){_(t,e,function(t){return this._invoke(e,r,t)})}e?o?o(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n}):t[e]=r:(i("next",0),i("throw",1),i("return",2))},_(t,e,r,n)}function k(t,e,r,n,o,i,a){try{var l=t[i](a),u=l.value}catch(t){return void r(t)}l.done?e(u):Promise.resolve(u).then(n,o)}var T=function(){var t,e=(t=E().m(function t(e,r,n,o){var i,a,l,u,s,c,f;return E().w(function(t){for(;;)switch(t.n){case 0:return i=n(e,r),l=(a="string"==typeof i?{url:i}:i).url,u=a.headers,s=void 0===u?{}:u,t.n=1,fetch(l,{headers:s,signal:o});case 1:if((c=t.v).ok){t.n=2;break}throw new Error("Failed to fetch GeoJSON: ".concat(c.status," ").concat(c.statusText));case 2:return t.n=3,c.json();case 3:if("FeatureCollection"!==(f=t.v).type){t.n=4;break}return t.a(2,f);case 4:if("Feature"!==f.type){t.n=5;break}return t.a(2,{type:"FeatureCollection",features:[f]});case 5:if(!Array.isArray(f)){t.n=6;break}return t.a(2,{type:"FeatureCollection",features:f});case 6:throw new Error("Invalid GeoJSON response");case 7:return t.a(2)}},t)}),function(){var e=this,r=arguments;return new Promise(function(n,o){var i=t.apply(e,r);function a(t){k(i,n,o,a,l,"next",t)}function l(t){k(i,n,o,a,l,"throw",t)}a(void 0)})});return function(t,r,n,o){return e.apply(this,arguments)}}();function D(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}var I=function(t){var e=t.getBounds();return[e.getWest(),e.getSouth(),e.getEast(),e.getNorth()]},x=function(t,e){return!(!t||!e)&&e[0]>=t[0]&&e[1]>=t[1]&&e[2]<=t[2]&&e[3]<=t[3]},C=function(t,e){return t?[Math.min(t[0],e[0]),Math.min(t[1],e[1]),Math.max(t[2],e[2]),Math.max(t[3],e[3])]:function(t){if(Array.isArray(t))return D(t)}(r=e)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(r)||function(t,e){if(t){if("string"==typeof t)return D(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?D(t,e):void 0}}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}();var r},L=function(t,e){return!(!t||!e||t[2]<e[0]||t[0]>e[2]||t[3]<e[1]||t[1]>e[3])},M=function(t){var e=1/0,r=1/0,n=-1/0,o=-1/0,i=function(t,a){var l;0===a?(l=t,e=Math.min(e,l[0]),r=Math.min(r,l[1]),n=Math.max(n,l[0]),o=Math.max(o,l[1])):t.forEach(function(t){return i(t,a-1)})};switch(t.type){case"Point":i(t.coordinates,0);break;case"LineString":case"MultiPoint":i(t.coordinates,1);break;case"Polygon":case"MultiLineString":i(t.coordinates,2);break;case"MultiPolygon":i(t.coordinates,3);break;case"GeometryCollection":t.geometries.forEach(function(t){var i=M(t);e=Math.min(e,i[0]),r=Math.min(r,i[1]),n=Math.max(n,i[2]),o=Math.max(o,i[3])});break;default:throw new Error("Unsupported geometry type: ".concat(t.type))}return[e,r,n,o]};function F(){var t,e,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var u=n&&n.prototype instanceof l?n:l,s=Object.create(u.prototype);return N(s,"_invoke",function(r,n,o){var i,l,u,s=0,c=o||[],f=!1,y={p:0,n:0,v:t,a:d,f:d.bind(t,4),d:function(e,r){return i=e,l=0,u=t,y.n=r,a}};function d(r,n){for(l=r,u=n,e=0;!f&&s&&!o&&e<c.length;e++){var o,i=c[e],d=y.p,p=i[2];r>3?(o=p===n)&&(u=i[(l=i[4])?5:(l=3,3)],i[4]=i[5]=t):i[0]<=d&&((o=r<2&&d<i[1])?(l=0,y.v=n,y.n=i[1]):d<p&&(o=r<3||i[0]>n||n>p)&&(i[4]=r,i[5]=n,y.n=p,l=0))}if(o||r>1)return a;throw f=!0,n}return function(o,c,p){if(s>1)throw TypeError("Generator is already running");for(f&&1===c&&d(c,p),l=c,u=p;(e=l<2?t:u)||!f;){i||(l?l<3?(l>1&&(y.n=-1),d(l,u)):y.n=u:y.v=u);try{if(s=2,i){if(l||(o="next"),e=i[o]){if(!(e=e.call(i,u)))throw TypeError("iterator result is not an object");if(!e.done)return e;u=e.value,l<2&&(l=0)}else 1===l&&(e=i.return)&&e.call(i),l<2&&(u=TypeError("The iterator does not provide a '"+o+"' method"),l=1);i=t}else if((e=(f=y.n<0)?u:r.call(n,y))!==a)break}catch(e){i=t,l=1,u=e}finally{s=1}}return{value:e,done:f}}}(r,o,i),!0),s}var a={};function l(){}function u(){}function s(){}e=Object.getPrototypeOf;var c=[][n]?e(e([][n]())):(N(e={},n,function(){return this}),e),f=s.prototype=l.prototype=Object.create(c);function y(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,s):(t.__proto__=s,N(t,o,"GeneratorFunction")),t.prototype=Object.create(f),t}return u.prototype=s,N(f,"constructor",s),N(s,"constructor",u),u.displayName="GeneratorFunction",N(s,o,"GeneratorFunction"),N(f),N(f,o,"Generator"),N(f,n,function(){return this}),N(f,"toString",function(){return"[object Generator]"}),(F=function(){return{w:i,m:y}})()}function N(t,e,r,n){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}N=function(t,e,r,n){function i(e,r){N(t,e,function(t){return this._invoke(e,r,t)})}e?o?o(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n}):t[e]=r:(i("next",0),i("throw",1),i("return",2))},N(t,e,r,n)}function R(t,e,r,n,o,i,a){try{var l=t[i](a),u=l.value}catch(t){return void r(t)}l.done?e(u):Promise.resolve(u).then(n,o)}function B(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return l}}(t,e)||G(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function G(t,e){if(t){if("string"==typeof t)return V(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?V(t,e):void 0}}function V(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}var Y=function(t){var e=t.adapter,r=t.pluginConfig,n=t.pluginStateRef,o=t.mapStyle,i=t.mapProvider,a=t.events,u=t.eventBus,s=r.datasets,c=new Map,y=function(){return n.current.datasets||s},d=s.map(function(t){return f(t,l)});e.init(d,o).then(function(){d.forEach(function(t){if(function(t){return"string"==typeof t.geojson&&!!t.idProperty&&"function"==typeof t.transformRequest}(t)){var r=function(t){var e,r,n,o=t.dataset,i=t.map,a=t.onUpdate,l=o.geojson,u=o.idProperty,s=o.transformRequest,c=o.maxFeatures,f=o.minZoom,y=void 0===f?0:f,d=new Map,p=null,b=null,v=function(){return{type:"FeatureCollection",features:Array.from(d.values()).map(function(t){return t.feature})}},m=function(t){var e,r;return u&&null!==(e=null===(r=t.properties)||void 0===r?void 0:r[u])&&void 0!==e?e:t.id},h=function(t){if(c&&!(d.size<=1.2*c)){var e,r=c,n=[],o=[],i=function(t){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=G(t))){e&&(t=e);var r=0,n=function(){};return{s:n,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,a=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return i=t.done,t},e:function(t){a=!0,o=t},f:function(){try{i||null==e.return||e.return()}finally{if(a)throw o}}}}(d);try{for(i.s();!(e=i.n()).done;){var a=B(e.value,2),l=a[0],u=a[1];L(u.bbox,t)?n.push(l):o.push({id:l,lastSeenAt:u.lastSeenAt})}}catch(t){i.e(t)}finally{i.f()}o.sort(function(t,e){return t.lastSeenAt-e.lastSeenAt});for(var s=d.size-r,f=0;f<s&&f<o.length;f++)d.delete(o[f].id);if(d.size>r)for(var y=d.size-r,p=n.map(function(t){return{id:t,lastSeenAt:d.get(t).lastSeenAt}}).sort(function(t,e){return t.lastSeenAt-e.lastSeenAt}),b=0;b<y&&b<p.length;b++)d.delete(p[b].id)}},g=function(){var t,e=(t=F().m(function t(){var e,r,n,u,c,f,g;return F().w(function(t){for(;;)switch(t.p=t.n){case 0:if(!((e=i.getZoom())<y)){t.n=1;break}return t.a(2);case 1:if(r=I(i),!p||!x(p,r)){t.n=2;break}return t.a(2);case 2:return b&&b.abort(),b=new AbortController,t.p=3,n={bbox:r,zoom:e,dataset:o},t.n=4,T(l,n,s,b.signal);case 4:u=t.v,c=Date.now(),u.features.forEach(function(t){var e=m(t);null!=e?d.set(e,{feature:t,bbox:M(t.geometry),lastSeenAt:c}):console.warn("Feature missing ID, skipping:",t)}),p=C(p,r),f=d.size,h(r),d.size<f&&(p=r),a(o.id,v()),t.n=7;break;case 5:if(t.p=5,"AbortError"!==(g=t.v).name){t.n=6;break}return t.a(2);case 6:console.error("Failed to fetch dynamic GeoJSON for ".concat(o.id,":"),g);case 7:return t.a(2)}},t,null,[[3,5]])}),function(){var e=this,r=arguments;return new Promise(function(n,o){var i=t.apply(e,r);function a(t){R(i,n,o,a,l,"next",t)}function l(t){R(i,n,o,a,l,"throw",t)}a(void 0)})});return function(){return e.apply(this,arguments)}}(),S=(e=g,n=function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];clearTimeout(r),r=setTimeout(function(){return e.apply(void 0,n)},200)},n.cancel=function(){clearTimeout(r),r=null},n),O=function(){S()};return i.on("moveend",O),g(),{destroy:function(){i.off("moveend",O),S.cancel(),b&&b.abort()},clear:function(){d.clear(),p=null,a(o.id,{type:"FeatureCollection",features:[]})},refresh:function(){d.clear(),p=null,g()},getFeatureCount:function(){return d.size},reapply:function(){d.size>0&&a(o.id,v())}}}({dataset:t,map:i.map,onUpdate:function(t,r){return e.setData(t,r)}});c.set(t.id,r)}}),u.emit("datasets:ready")});var p=o,b=function(t){p=t,e.onStyleChange(y(),t,n.current.hiddenFeatures||{},c)},v=function(){e.onSizeChange(y(),p)};return u.on(a.MAP_SET_STYLE,b),u.on(a.MAP_SIZE_CHANGE,v),{remove:function(){u.off(a.MAP_SET_STYLE,b),u.off(a.MAP_SIZE_CHANGE,v),c.forEach(function(t){return t.destroy()}),c.clear(),e.destroy(y())},refreshDataset:function(t){var e;null===(e=c.get(t))||void 0===e||e.refresh()},clearDatasetCache:function(t){var e;null===(e=c.get(t))||void 0===e||e.clear()},getFeatureCount:function(t){var e,r;return null!==(e=null===(r=c.get(t))||void 0===r?void 0:r.getFeatureCount())&&void 0!==e?e:null}}};function W(){var t,e,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var u=n&&n.prototype instanceof l?n:l,s=Object.create(u.prototype);return U(s,"_invoke",function(r,n,o){var i,l,u,s=0,c=o||[],f=!1,y={p:0,n:0,v:t,a:d,f:d.bind(t,4),d:function(e,r){return i=e,l=0,u=t,y.n=r,a}};function d(r,n){for(l=r,u=n,e=0;!f&&s&&!o&&e<c.length;e++){var o,i=c[e],d=y.p,p=i[2];r>3?(o=p===n)&&(u=i[(l=i[4])?5:(l=3,3)],i[4]=i[5]=t):i[0]<=d&&((o=r<2&&d<i[1])?(l=0,y.v=n,y.n=i[1]):d<p&&(o=r<3||i[0]>n||n>p)&&(i[4]=r,i[5]=n,y.n=p,l=0))}if(o||r>1)return a;throw f=!0,n}return function(o,c,p){if(s>1)throw TypeError("Generator is already running");for(f&&1===c&&d(c,p),l=c,u=p;(e=l<2?t:u)||!f;){i||(l?l<3?(l>1&&(y.n=-1),d(l,u)):y.n=u:y.v=u);try{if(s=2,i){if(l||(o="next"),e=i[o]){if(!(e=e.call(i,u)))throw TypeError("iterator result is not an object");if(!e.done)return e;u=e.value,l<2&&(l=0)}else 1===l&&(e=i.return)&&e.call(i),l<2&&(u=TypeError("The iterator does not provide a '"+o+"' method"),l=1);i=t}else if((e=(f=y.n<0)?u:r.call(n,y))!==a)break}catch(e){i=t,l=1,u=e}finally{s=1}}return{value:e,done:f}}}(r,o,i),!0),s}var a={};function l(){}function u(){}function s(){}e=Object.getPrototypeOf;var c=[][n]?e(e([][n]())):(U(e={},n,function(){return this}),e),f=s.prototype=l.prototype=Object.create(c);function y(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,s):(t.__proto__=s,U(t,o,"GeneratorFunction")),t.prototype=Object.create(f),t}return u.prototype=s,U(f,"constructor",s),U(s,"constructor",u),u.displayName="GeneratorFunction",U(s,o,"GeneratorFunction"),U(f),U(f,o,"Generator"),U(f,n,function(){return this}),U(f,"toString",function(){return"[object Generator]"}),(W=function(){return{w:i,m:y}})()}function U(t,e,r,n){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}U=function(t,e,r,n){function i(e,r){U(t,e,function(t){return this._invoke(e,r,t)})}e?o?o(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n}):t[e]=r:(i("next",0),i("throw",1),i("return",2))},U(t,e,r,n)}function H(t,e,r,n,o,i,a){try{var l=t[i](a),u=l.value}catch(t){return void r(t)}l.done?e(u):Promise.resolve(u).then(n,o)}function K(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return z(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?z(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function z(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}var Z=function(t,e){var r,n,o=t.pluginState,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=i.datasetId,l=i.sublayerId;if(l){var u,s=e?"visible":"hidden";return null===(u=o.layerAdapter)||void 0===u||u[e?"showSublayer":"hideSublayer"](a,l),void o.dispatch({type:"SET_SUBLAYER_VISIBILITY",payload:{datasetId:a,sublayerId:l,visibility:s}})}if(a){if(null===(n=o.layerAdapter)||void 0===n||n[e?"showDataset":"hideDataset"](a),o.dispatch({type:"SET_DATASET_VISIBILITY",payload:{id:a,visibility:e?"visible":"hidden"}}),e){var c,f=null===(c=o.datasets)||void 0===c?void 0:c.find(function(t){return t.id===a});Object.entries((null==f?void 0:f.sublayerVisibility)||{}).forEach(function(t){var e,r=K(t,2),n=r[0];"hidden"===r[1]&&(null===(e=o.layerAdapter)||void 0===e||e.hideSublayer(a,n))})}}else o.dispatch({type:"SET_GLOBAL_VISIBILITY",payload:{visibility:e?"visible":"hidden"}}),null===(r=o.datasets)||void 0===r||r.forEach(function(t){var r;null===(r=o.layerAdapter)||void 0===r||r[e?"showDataset":"hideDataset"](t.id),e&&Object.entries(t.sublayerVisibility||{}).forEach(function(e){var r,n=K(e,2),i=n[0];"hidden"===n[1]&&(null===(r=o.layerAdapter)||void 0===r||r.hideSublayer(t.id,i))})})},$=r(287),J="im-c-datasets-layers__item-label govuk-label govuk-checkboxes__label",q=function(t){var e;return null===(e=t.sublayers)||void 0===e?void 0:e.some(function(t){return t.toggleVisibility})};function X(t){return X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},X(t)}var Q=function(t,e){if(!t)return null;if("string"==typeof t)return t.trim();if("object"===X(t)){if(e&&t[e])return t[e];var r=Object.values(t)[0];return null!=r?r:null}return null};function tt(t){return tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},tt(t)}function et(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function rt(t,e,r){return(e=function(t){var e=function(t){if("object"!=tt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=tt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==tt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var nt=function(t,e){return"symbolDescription"in e?e.symbolDescription:c(e)?void 0:t.symbolDescription},ot=function(t){var e=t.text;return(0,$.jsx)("div",{className:"im-c-datasets-key",children:(0,$.jsx)("p",{className:"im-c-datasets-key__empty-message",children:e})})},it=new Set(["symbolBackgroundColor","symbolForegroundColor","symbolHaloWidth","symbolGraphic"]),at=function(t){return!(!t.symbol&&!t.symbolSvgContent)},lt=function(t,e,r){return t.replace(/\{\{foregroundColor\}\}/g,e||"black").replace(/\{\{backgroundColor\}\}/g,r||"transparent")};function ut(t){return ut="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ut(t)}function st(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function ct(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?st(Object(r),!0).forEach(function(e){ft(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):st(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function ft(t,e,r){return(e=function(t){var e=function(t){if("object"!=ut(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=ut(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ut(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var yt=20,dt={xmlns:"http://www.w3.org/2000/svg",width:yt,height:yt,viewBox:"0 0 ".concat(yt," ").concat(yt),className:"am-c-datasets-key-symbol","aria-hidden":"true",focusable:"false"},pt=ct(ct({},dt),{},{width:38,height:38,className:"am-c-datasets-key-symbol am-c-datasets-key-symbol--point"});function bt(t){return bt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},bt(t)}function vt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function mt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?vt(Object(r),!0).forEach(function(e){ht(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):vt(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function ht(t,e,r){return(e=function(t){var e=function(t){if("object"!=bt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=bt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==bt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var gt=function(t){var e=t.patternRegistry,r=function(t,e,r){var n=function(t,e){return t.fillPatternSvgContent?t.fillPatternSvgContent:t.fillPattern&&null!==(r=null==e||null===(n=e.get(t.fillPattern))||void 0===n?void 0:n.svgContent)&&void 0!==r?r:null;var r,n}(t,r);if(!n)return null;var o=Q(t.fillPatternForegroundColor,e)||"black",i=Q(t.fillPatternBackgroundColor,e)||"transparent",a=Q(t.stroke,e)||o;return{border:lt('<path d="M19 2.862v14.275c0 1.028-.835 1.862-1.862 1.862H2.863c-1.028 0-1.862-.835-1.862-1.862V2.862C1.001 1.834 1.836 1 2.863 1h14.275C18.166 1 19 1.835 19 2.862z" fill="{{backgroundColor}}" stroke="{{foregroundColor}}" stroke-width="2"/>',a,i),content:lt(n,o,i)}}(t,t.mapStyle.id,e);return(0,$.jsxs)("svg",mt(mt({},dt),{},{children:[(0,$.jsx)("g",{dangerouslySetInnerHTML:{__html:r.border}}),(0,$.jsx)("g",{transform:"translate(".concat(2,", ").concat(2,")"),dangerouslySetInnerHTML:{__html:r.content}})]}))};function St(t){return St="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},St(t)}function Ot(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Pt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Ot(Object(r),!0).forEach(function(e){jt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ot(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function jt(t,e,r){return(e=function(t){var e=function(t){if("object"!=St(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=St(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==St(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var wt=function(t){var e,r=t.symbolRegistry,n=t.mapStyle,o=t.symbolDef,i=null!==(e=null==n?void 0:n.appColorScheme)&&void 0!==e?e:"light",a=Pt(Pt({},n),{},{mapColorScheme:i}),l=r.resolve(o,function(t){if(!at(t))return{};var e={};return it.forEach(function(r){if(null!=t[r]){var n=r.charAt(6).toLowerCase()+r.slice(7);e[n]=t[r]}}),e}(t),a),u=function(t,e){var r;return t.symbolViewBox?t.symbolViewBox:null!==(r=null==e?void 0:e.viewBox)&&void 0!==r?r:"0 0 38 38"}(t,o);return(0,$.jsx)("svg",Pt(Pt({},pt),{},{viewBox:u,children:(0,$.jsx)("g",{dangerouslySetInnerHTML:{__html:l}})}))};function At(t){return At="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},At(t)}function Et(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function _t(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Et(Object(r),!0).forEach(function(e){kt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Et(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function kt(t,e,r){return(e=function(t){var e=function(t){if("object"!=At(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=At(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==At(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var Tt=function(t){var e=t.mapStyle;return(0,$.jsx)("svg",_t(_t({},dt),{},{children:(0,$.jsx)("line",{x1:t.strokeWidth/2,y1:10,x2:yt-t.strokeWidth/2,y2:10,stroke:Q(t.stroke,e.id),strokeWidth:t.strokeWidth,strokeLinecap:"round"})}))};function Dt(t){return Dt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dt(t)}function It(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function xt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?It(Object(r),!0).forEach(function(e){Ct(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):It(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function Ct(t,e,r){return(e=function(t){var e=function(t){if("object"!=Dt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Dt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Dt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var Lt=function(t){var e=t.mapStyle;return(0,$.jsx)("svg",xt(xt({},dt),{},{children:(0,$.jsx)("rect",{x:t.strokeWidth/2,y:t.strokeWidth/2,width:yt-t.strokeWidth,height:yt-t.strokeWidth,rx:t.strokeWidth,ry:t.strokeWidth,fill:Q(t.fill,e.id),stroke:Q(t.stroke,e.id),strokeWidth:t.strokeWidth,strokeLinejoin:"round"})}))};function Mt(t){return Mt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Mt(t)}function Ft(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Nt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Ft(Object(r),!0).forEach(function(e){Rt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ft(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function Rt(t,e,r){return(e=function(t){var e=function(t){if("object"!=Mt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Mt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Mt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var Bt=function(t){var e,r=t.symbolRegistry,n=at(t)&&function(t,e){return t.symbolSvgContent?{svg:t.symbolSvgContent}:t.symbol?e.get(t.symbol):void 0}(t,r);return n?(0,$.jsx)(wt,Nt(Nt({},t),{},{symbolDef:n})):(e=t).fillPattern||e.fillPatternSvgContent?(0,$.jsx)(gt,Nt({},t)):"line"===t.keySymbolShape?(0,$.jsx)(Tt,Nt({},t)):(0,$.jsx)(Lt,Nt({},t))};function Gt(t){return Gt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Gt(t)}function Vt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Yt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Vt(Object(r),!0).forEach(function(e){Wt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Vt(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function Wt(t,e,r){return(e=function(t){var e=function(t){if("object"!=Gt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Gt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Gt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Ut(t){return Ut="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ut(t)}function Ht(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Kt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Ht(Object(r),!0).forEach(function(e){zt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ht(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function zt(t,e,r){return(e=function(t){var e=function(t){if("object"!=Ut(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Ut(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Ut(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Zt(t){return function(t){if(Array.isArray(t))return $t(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return $t(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?$t(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $t(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Jt(t){return Jt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Jt(t)}function qt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Xt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?qt(Object(r),!0).forEach(function(e){Qt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):qt(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function Qt(t,e,r){return(e=function(t){var e=function(t){if("object"!=Jt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Jt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Jt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var te="[interactive-map]",ee={InitComponent:function(t){var e,r=t.pluginConfig,n=t.pluginState,o=t.appState,i=t.mapState,a=t.mapProvider,u=t.services,s=n.dispatch,c=u.eventBus,f=u.symbolRegistry,y=u.patternRegistry,d=!(null===(e=a.map)||void 0===e||!e.getStyle()),p=(0,w.useRef)(n);p.current=n;var b=(0,w.useRef)(null);return(0,w.useEffect)(function(){var t,e,u,v,m=null===(t=null===(e=r.includeModes)||void 0===e?void 0:e.includes(o.mode))||void 0===t||t,h=null!==(u=null===(v=r.excludeModes)||void 0===v?void 0:v.includes(o.mode))&&void 0!==u&&u;if(d&&m&&!h&&!b.current){n.datasets||s({type:"SET_DATASETS",payload:{datasets:r.datasets,datasetDefaults:l}});var g=function(){var t,e=(t=W().m(function t(){var e,n,o;return W().w(function(t){for(;;)switch(t.n){case 0:if(r.layerAdapter){t.n=1;break}throw new Error("datasets plugin: no layerAdapter provided. Import and pass maplibreLayerAdapter or a custom adapter.");case 1:return t.n=2,r.layerAdapter.load();case 2:e=t.v,n=e.default,o=new n(a,f,y),s({type:"SET_LAYER_ADAPTER",payload:o}),b.current=Y({adapter:o,pluginConfig:r,pluginStateRef:p,mapStyle:i.mapStyle,mapProvider:a,events:A,eventBus:c});case 3:return t.a(2)}},t)}),function(){var e=this,r=arguments;return new Promise(function(n,o){var i=t.apply(e,r);function a(t){H(i,n,o,a,l,"next",t)}function l(t){H(i,n,o,a,l,"throw",t)}a(void 0)})});return function(){return e.apply(this,arguments)}}();g()}},[d,o.mode]),(0,w.useEffect)(function(){s({type:"BUILD_KEY_GROUPS",payload:null})},[n.datasets]),(0,w.useEffect)(function(){return function(){b.current&&(b.current.remove(),b.current=null),s({type:"SET_LAYER_ADAPTER",payload:null})}},[]),null},reducer:{initialState:{datasets:null,key:{items:[],hasGroups:!1},hiddenFeatures:{},layerAdapter:null},actions:j},panels:[{id:"datasetsLayers",label:"Layers",mobile:{slot:"drawer",modal:!0,dismissible:!0},tablet:{slot:"left-top",dismissible:!0,exclusive:!0,width:"260px"},desktop:{slot:"left-top",modal:!1,dismissible:!0,exclusive:!0,width:"280px"},render:function(t){var e,r,n,o=t.pluginState,i=function(t){var e=t.target,r=e.value,n=e.checked;Z({pluginState:o},n,{datasetId:r})},a=function(t){var e=t.target.checked,r=t.target.dataset.datasetId,n=t.target.dataset.sublayerId;Z({pluginState:o},e,{datasetId:r,sublayerId:n})},l=function(t){var e="im-c-datasets-layers__item govuk-checkboxes govuk-checkboxes--small".concat("hidden"===t.visibility?"":" im-c-datasets-layers__item--checked");return(0,$.jsx)("div",{className:e,"data-module":"govuk-checkboxes",children:(0,$.jsxs)("div",{className:"govuk-checkboxes__item",children:[(0,$.jsx)("input",{className:"govuk-checkboxes__input",id:t.id,name:"layers",type:"checkbox",value:t.id,checked:"hidden"!==t.visibility,onChange:i}),(0,$.jsx)("label",{className:J,htmlFor:t.id,children:t.label})]})},t.id)},u=(o.datasets||[]).filter(function(t){return t.toggleVisibility||q(t)}),s=(e=u,r=new Set,n=[],e.forEach(function(t){if(q(t))n.push({type:"sublayers",dataset:t});else{if(t.groupLabel){if(r.has(t.groupLabel))return;return r.add(t.groupLabel),void n.push({type:"group",groupLabel:t.groupLabel,datasets:e.filter(function(e){return!q(e)&&e.groupLabel===t.groupLabel})})}n.push({type:"flat",dataset:t})}}),n),c=s.some(function(t){return"sublayers"===t.type||"group"===t.type}),f="im-c-datasets-layers".concat(c?" im-c-datasets-layers--has-groups":"");return(0,$.jsx)("div",{className:f,children:s.map(function(t){if("sublayers"===t.type){var e=t.dataset,r=e.sublayers.filter(function(t){return t.toggleVisibility}).some(function(t){var r;return"hidden"!==(null===(r=e.sublayerVisibility)||void 0===r?void 0:r[t.id])}),n="govuk-form-group im-c-datasets-layers-group".concat(r?" im-c-datasets-layers-group--items-checked":"");return(0,$.jsx)("div",{className:n,children:(0,$.jsxs)("fieldset",{className:"im-c-datasets-layers-group__fieldset",children:[(0,$.jsx)("legend",{className:"im-c-datasets-layers-group__legend",children:e.label}),e.sublayers.filter(function(t){return t.toggleVisibility}).map(function(t){var r,n="hidden"!==(null===(r=e.sublayerVisibility)||void 0===r?void 0:r[t.id]),o="".concat(e.id,"-").concat(t.id),i="im-c-datasets-layers__item govuk-checkboxes govuk-checkboxes--small".concat(n?" im-c-datasets-layers__item--checked":"");return(0,$.jsx)("div",{className:i,"data-module":"govuk-checkboxes",children:(0,$.jsxs)("div",{className:"govuk-checkboxes__item",children:[(0,$.jsx)("input",{className:"govuk-checkboxes__input",id:o,type:"checkbox",checked:n,"data-dataset-id":e.id,"data-sublayer-id":t.id,onChange:a}),(0,$.jsx)("label",{className:J,htmlFor:o,children:t.label})]})},t.id)})]})},e.id)}if("group"===t.type){var o=t.datasets.some(function(t){return"hidden"!==t.visibility}),i="govuk-form-group im-c-datasets-layers-group".concat(o?" im-c-datasets-layers-group--items-checked":"");return(0,$.jsx)("div",{className:i,children:(0,$.jsxs)("fieldset",{className:"im-c-datasets-layers-group__fieldset",children:[(0,$.jsx)("legend",{className:"im-c-datasets-layers-group__legend",children:t.groupLabel}),t.datasets.map(function(t){return l(t)})]})},t.groupLabel)}return l(t.dataset)})})}},{id:"datasetsKey",label:"Key",mobile:{slot:"drawer",modal:!0},tablet:{slot:"left-top",width:"260px"},desktop:{slot:"left-top",width:"280px"},render:function(t){var e,r=t.pluginConfig,n=t.mapState,o=t.pluginState,i=t.services;if(null==o||null===(e=o.key)||void 0===e||null===(e=e.items)||void 0===e||!e.length)return(0,$.jsx)(ot,{text:r.noKeyItemText});var a=n.mapStyle,l=i.symbolRegistry,u=i.patternRegistry,s=function(t,e){return(0,$.jsxs)("dl",{className:"im-c-datasets-key__item",children:[(0,$.jsx)("dt",{className:"im-c-datasets-key__item-symbol",children:(0,$.jsx)(Bt,Yt(Yt({},e),{},{symbolRegistry:l,patternRegistry:u,mapStyle:a}))}),(0,$.jsxs)("dd",{className:"im-c-datasets-key__item-label",children:[e.label,e.symbolDescription&&(0,$.jsxs)("span",{className:"govuk-visually-hidden",children:["(",Q(e.symbolDescription,a.id),")"]})]})]},t)},c=o.key,f=c.items,y=c.hasGroups,d="im-c-datasets-key".concat(y?" im-c-datasets-key--has-groups":"");return(0,$.jsx)("div",{className:d,children:f.map(function(t){if("sublayers"===t.type){var e="key-heading-".concat(t.dataset.id);return(0,$.jsxs)("section",{className:"im-c-datasets-key__group","aria-labelledby":e,children:[(0,$.jsx)("h3",{id:e,className:"im-c-datasets-key__group-heading",children:t.dataset.label}),t.dataset.sublayers.filter(function(e){var r;return"hidden"!==(null===(r=t.dataset.sublayerVisibility)||void 0===r?void 0:r[e.id])}).map(function(e){return s("".concat(t.dataset.id,"-").concat(e.id),function(t,e){var r,n,o,i,a,l,u,s,c,f,y,d,p,b,v,m,h,g=e.style||{},S=(m=t.filter,h=e.filter,m&&h?["all",m,h]:h||m||null);return function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?et(Object(r),!0).forEach(function(e){rt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):et(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}({id:e.id,label:e.label,stroke:null!==(r=g.stroke)&&void 0!==r?r:t.stroke,strokeWidth:null!==(n=g.strokeWidth)&&void 0!==n?n:t.strokeWidth,strokeDashArray:null!==(o=g.strokeDashArray)&&void 0!==o?o:t.strokeDashArray,opacity:null!==(i=g.opacity)&&void 0!==i?i:t.opacity,keySymbolShape:null!==(a=g.keySymbolShape)&&void 0!==a?a:t.keySymbolShape,symbolDescription:nt(t,g),showInKey:null!==(l=e.showInKey)&&void 0!==l?l:t.showInKey,toggleVisibility:null!==(u=e.toggleVisibility)&&void 0!==u&&u,filter:S,minZoom:t.minZoom,maxZoom:t.maxZoom,symbol:null!==(s=g.symbol)&&void 0!==s?s:t.symbol,symbolSvgContent:null!==(c=g.symbolSvgContent)&&void 0!==c?c:t.symbolSvgContent,symbolViewBox:null!==(f=g.symbolViewBox)&&void 0!==f?f:t.symbolViewBox,symbolAnchor:null!==(y=g.symbolAnchor)&&void 0!==y?y:t.symbolAnchor,symbolBackgroundColor:null!==(d=g.symbolBackgroundColor)&&void 0!==d?d:t.symbolBackgroundColor,symbolForegroundColor:null!==(p=g.symbolForegroundColor)&&void 0!==p?p:t.symbolForegroundColor,symbolHaloWidth:null!==(b=g.symbolHaloWidth)&&void 0!==b?b:t.symbolHaloWidth,symbolGraphic:null!==(v=g.symbolGraphic)&&void 0!==v?v:t.symbolGraphic},function(t,e){var r,n;return e.fillPattern||e.fillPatternSvgContent?{fillPattern:e.fillPattern,fillPatternSvgContent:e.fillPatternSvgContent,fillPatternForegroundColor:null!==(r=e.fillPatternForegroundColor)&&void 0!==r?r:t.fillPatternForegroundColor,fillPatternBackgroundColor:null!==(n=e.fillPatternBackgroundColor)&&void 0!==n?n:t.fillPatternBackgroundColor}:"fill"in e?{fill:e.fill}:{fill:t.fill,fillPattern:t.fillPattern,fillPatternSvgContent:t.fillPatternSvgContent,fillPatternForegroundColor:t.fillPatternForegroundColor,fillPatternBackgroundColor:t.fillPatternBackgroundColor}}(t,g))}(t.dataset,e))})]},t.dataset.id)}if("group"===t.type){var r="key-heading-".concat(t.groupLabel.toLowerCase().replaceAll(/\s+/g,"-"));return(0,$.jsxs)("section",{className:"im-c-datasets-key__group","aria-labelledby":r,children:[(0,$.jsx)("h3",{id:r,className:"im-c-datasets-key__group-heading",children:t.groupLabel}),t.datasets.map(function(t){return s(t.id,t)})]},t.groupLabel)}return s(t.dataset.id,t.dataset)})})}}],buttons:[{id:"datasetsLayers",label:"Layers",panelId:"datasetsLayers",iconId:"layers",excludeWhen:function(t){return!t.pluginConfig.datasets.some(function(t){var e;return t.toggleVisibility||(null===(e=t.sublayers)||void 0===e?void 0:e.some(function(t){return t.toggleVisibility}))})},mobile:{slot:"top-left",showLabel:!0},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}},{id:"datasetsKey",label:"Key",panelId:"datasetsKey",iconId:"key",excludeWhen:function(t){return!t.pluginConfig.datasets.some(function(t){return t.showInKey})},mobile:{slot:"top-left",showLabel:!1},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}}],icons:[{id:"layers",svgContent:'<path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path>'},{id:"key",svgContent:'<path d="M3 5h.01"/><path d="M3 12h.01"/><path d="M3 19h.01"/><path d="M8 5h13"/><path d="M8 12h13"/><path d="M8 19h13"/>'}],api:{addDataset:function(t,e){var r,n=t.pluginState,o=t.mapState;null===(r=n.layerAdapter)||void 0===r||r.addDataset(Kt(Kt({},l),e),o.mapStyle),n.dispatch({type:"ADD_DATASET",payload:{dataset:e,datasetDefaults:l}})},removeDataset:function(t,e){var r,n,o=t.pluginState,i=null===(r=o.datasets)||void 0===r?void 0:r.find(function(t){return t.id===e});i&&(null===(n=o.layerAdapter)||void 0===n||n.removeDataset(i,o.datasets),o.dispatch({type:"REMOVE_DATASET",payload:{id:e}}))},setDatasetVisibility:Z,setFeatureVisibility:function(t,e,r){var n,o=t.pluginState,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=i.datasetId,l=i.idProperty,u=void 0===l?null:l,s=null===(n=o.datasets)||void 0===n?void 0:n.find(function(t){return t.id===a});if(s)if(e){var c,f=o.hiddenFeatures[a];if(!f)return;var y=f.ids.filter(function(t){return!r.includes(t)});o.dispatch({type:"SHOW_FEATURES",payload:{layerId:a,featureIds:r}}),null===(c=o.layerAdapter)||void 0===c||c.showFeatures(s,u,y)}else{var d,p=o.hiddenFeatures[a],b=(null==p?void 0:p.ids)||[],v=Zt(new Set([].concat(Zt(b),Zt(r))));o.dispatch({type:"HIDE_FEATURES",payload:{layerId:a,idProperty:u,featureIds:r}}),null===(d=o.layerAdapter)||void 0===d||d.hideFeatures(s,u,v)}},setStyle:function(t,e){var r,n,o=t.pluginState,i=t.mapState,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},l=a.datasetId,u=a.sublayerId,s=null===(r=o.datasets)||void 0===r?void 0:r.find(function(t){return t.id===l});if(s)if(u){var c,f;o.dispatch({type:"SET_SUBLAYER_STYLE",payload:{datasetId:l,sublayerId:u,styleChanges:e}});var y=Xt(Xt({},s),{},{sublayers:null===(c=s.sublayers)||void 0===c?void 0:c.map(function(t){return t.id===u?Xt(Xt({},t),{},{style:Xt(Xt({},t.style),e)}):t})});null===(f=o.layerAdapter)||void 0===f||f.setSublayerStyle(y,u,i.mapStyle)}else{o.dispatch({type:"SET_DATASET_STYLE",payload:{datasetId:l,styleChanges:e}});var d=Xt(Xt({},s),e);null===(n=o.layerAdapter)||void 0===n||n.setStyle(d,i.mapStyle)}},getStyle:function(t){var e,r,n=t.pluginState,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=o.datasetId,a=o.sublayerId,l=null===(e=n.datasets)||void 0===e?void 0:e.find(function(t){return t.id===i});if(!l)return null;if(a){var u,s,c=null===(u=l.sublayers)||void 0===u?void 0:u.find(function(t){return t.id===a});return null!==(s=null==c?void 0:c.style)&&void 0!==s?s:null}return null!==(r=l.style)&&void 0!==r?r:null},setOpacity:function(t,e,r){var n,o=t.pluginState,i=r||{},a=i.datasetId,l=i.sublayerId;if(l){var u,s;if(!(null===(u=o.datasets)||void 0===u?void 0:u.find(function(t){return t.id===a})))return;return o.dispatch({type:"SET_SUBLAYER_OPACITY",payload:{datasetId:a,sublayerId:l,opacity:e}}),void(null===(s=o.layerAdapter)||void 0===s||s.setSublayerOpacity(a,l,e))}if(a){var c,f;if(!(null===(c=o.datasets)||void 0===c?void 0:c.find(function(t){return t.id===a})))return;return o.dispatch({type:"SET_OPACITY",payload:{datasetId:a,opacity:e}}),void(null===(f=o.layerAdapter)||void 0===f||f.setOpacity(a,e))}o.dispatch({type:"SET_GLOBAL_OPACITY",payload:{opacity:e}}),null===(n=o.datasets)||void 0===n||n.forEach(function(t){var r;null===(r=o.layerAdapter)||void 0===r||r.setOpacity(t.id,e)})},getOpacity:function(t,e){var r,n,o=t.pluginState,i=e||{},a=i.datasetId,l=i.sublayerId;if(l){var u,s,c,f,y=null===(u=o.datasets)||void 0===u?void 0:u.find(function(t){return t.id===a}),d=null==y||null===(s=y.sublayers)||void 0===s?void 0:s.find(function(t){return t.id===l});return null!==(c=null==d||null===(f=d.style)||void 0===f?void 0:f.opacity)&&void 0!==c?c:null}if(a){var p,b,v=null===(p=o.datasets)||void 0===p?void 0:p.find(function(t){return t.id===a});return null!==(b=null==v?void 0:v.opacity)&&void 0!==b?b:null}return null!==(r=null===(n=o.datasets)||void 0===n||null===(n=n[0])||void 0===n?void 0:n.opacity)&&void 0!==r?r:null},setData:function(t,e,r){var n,o,i=t.pluginState,a=r.datasetId,l=null===(n=i.datasets)||void 0===n?void 0:n.find(function(t){return t.id===a});null!=l&&l.tiles?function(){for(var t,e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];(t=console).warn.apply(t,[te].concat(r))}('setData called on vector tile dataset "'.concat(a,'" — has no effect')):null===(o=i.layerAdapter)||void 0===o||o.setData(a,e)}}}}}]);
2
+ "use strict";(this.webpackChunkdefra_DefraMap=this.webpackChunkdefra_DefraMap||[]).push([[447],{495(t,e,r){function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function i(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?o(Object(r),!0).forEach(function(e){a(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function a(t,e,r){return(e=function(t){var e=function(t){if("object"!=n(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=n(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==n(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}r.r(e),r.d(e,{manifest:()=>ee});var l={minZoom:6,maxZoom:24,showInKey:!1,toggleVisibility:!1,visibility:"visible",style:{stroke:"#d4351c",strokeWidth:2,fill:"transparent",symbolDescription:"red outline"}},u=["stroke","strokeWidth","strokeDashArray","fill","fillPattern","fillPatternSvgContent","fillPatternForegroundColor","fillPatternBackgroundColor","opacity","symbolDescription","keySymbolShape","symbol","symbolSvgContent","symbolViewBox","symbolAnchor","symbolBackgroundColor","symbolForegroundColor","symbolHaloWidth","symbolGraphic"],s=["stroke","fill","fillPattern","fillPatternSvgContent","symbol","symbolSvgContent"],c=function(t){return s.some(function(e){return e in t})},f=function(t,e){var r=t.style||{},n=i(i({},e.style),r);!("symbolDescription"in r)&&c(r)&&delete n.symbolDescription;var o=i({},t);delete o.style,u.forEach(function(t){return delete o[t]});var a=i({},e);return delete a.style,i(i(i({},a),o),n)};function y(t){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},y(t)}function d(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function p(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?d(Object(r),!0).forEach(function(e){b(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):d(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function b(t,e,r){return(e=function(t){var e=function(t){if("object"!=y(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=y(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==y(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function v(t){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},v(t)}function m(t){return function(t){if(Array.isArray(t))return h(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return h(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?h(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function h(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function g(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function S(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?g(Object(r),!0).forEach(function(e){O(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function O(t,e,r){return(e=function(t){var e=function(t){if("object"!=v(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=v(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==v(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var P=function(t){var e;if(null===(e=t.sublayers)||void 0===e||!e.length)return t;var r={};return t.sublayers.forEach(function(t){r[t.id]="visible"}),S(S({},t),{},{sublayerVisibility:r})},j={BUILD_KEY_GROUPS:function(t){var e=t.datasets||[],r=new Set,n=[],o=!1;return e.forEach(function(t){var i;if(t.showInKey&&"hidden"!==t.visibility)if(null!==(i=t.sublayers)&&void 0!==i&&i.length){var a=t.sublayerVisibility,l=void 0===a?[]:a;Object.values(l).some(function(t){return"hidden"!==t})&&(o=!0,n.push({type:"sublayers",dataset:t}))}else{if(t.groupLabel){if(r.has(t.groupLabel))return;return r.add(t.groupLabel),o=!0,void n.push({type:"group",groupLabel:t.groupLabel,datasets:e.filter(function(e){var r;return!(null!==(r=e.sublayers)&&void 0!==r&&r.length)&&e.groupLabel===t.groupLabel})})}n.push({type:"flat",dataset:t})}}),p(p({},t),{},{key:{items:n,hasGroups:o}})},SET_DATASETS:function(t,e){var r=e.datasets,n=e.datasetDefaults;return S(S({},t),{},{datasets:r.map(function(t){return P(f(t,n))})})},ADD_DATASET:function(t,e){var r=e.dataset,n=e.datasetDefaults;return S(S({},t),{},{datasets:[].concat(m(t.datasets||[]),[P(f(r,n))])})},REMOVE_DATASET:function(t,e){var r,n=e.id;return S(S({},t),{},{datasets:(null===(r=t.datasets)||void 0===r?void 0:r.filter(function(t){return t.id!==n}))||[]})},SET_DATASET_VISIBILITY:function(t,e){var r,n=e.id,o=e.visibility;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return t.id===n?S(S({},t),{},{visibility:o}):t})})},SET_GLOBAL_VISIBILITY:function(t,e){var r,n=e.visibility;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return S(S({},t),{},{visibility:n})})})},SET_SUBLAYER_VISIBILITY:function(t,e){var r,n=e.datasetId,o=e.sublayerId,i=e.visibility;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return t.id!==n?t:S(S({},t),{},{sublayerVisibility:S(S({},t.sublayerVisibility),{},O({},o,i))})})})},SET_DATASET_STYLE:function(t,e){var r,n=e.datasetId,o=e.styleChanges;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return t.id===n?S(S({},t),o):t})})},SET_SUBLAYER_STYLE:function(t,e){var r,n=e.datasetId,o=e.sublayerId,i=e.styleChanges;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){var e;return t.id!==n?t:S(S({},t),{},{sublayers:null===(e=t.sublayers)||void 0===e?void 0:e.map(function(t){return t.id===o?S(S({},t),{},{style:S(S({},t.style),i)}):t})})})})},SET_OPACITY:function(t,e){var r,n=e.datasetId,o=e.opacity;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return t.id===n?S(S({},t),{},{opacity:o}):t})})},SET_GLOBAL_OPACITY:function(t,e){var r,n=e.opacity;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){return S(S({},t),{},{opacity:n})})})},SET_SUBLAYER_OPACITY:function(t,e){var r,n=e.datasetId,o=e.sublayerId,i=e.opacity;return S(S({},t),{},{datasets:null===(r=t.datasets)||void 0===r?void 0:r.map(function(t){var e;return t.id!==n?t:S(S({},t),{},{sublayers:null===(e=t.sublayers)||void 0===e?void 0:e.map(function(t){return t.id===o?S(S({},t),{},{style:S(S({},t.style),{},{opacity:i})}):t})})})})},HIDE_FEATURES:function(t,e){var r=e.layerId,n=e.idProperty,o=e.featureIds,i=t.hiddenFeatures[r],a=(null==i?void 0:i.ids)||[],l=m(new Set([].concat(m(a),m(o))));return S(S({},t),{},{hiddenFeatures:S(S({},t.hiddenFeatures),{},O({},r,{idProperty:n,ids:l}))})},SHOW_FEATURES:function(t,e){var r=e.layerId,n=e.featureIds,o=t.hiddenFeatures[r];if(!o)return t;var i=o.ids.filter(function(t){return!n.includes(t)});if(0===i.length){var a=S({},t.hiddenFeatures);return delete a[r],S(S({},t),{},{hiddenFeatures:a})}return S(S({},t),{},{hiddenFeatures:S(S({},t.hiddenFeatures),{},O({},r,S(S({},o),{},{ids:i})))})},SET_LAYER_ADAPTER:function(t,e){return S(S({},t),{},{layerAdapter:e})}},w=r(738),A={APP_ADD_MARKER:"app:addmarker",APP_REMOVE_MARKER:"app:removemarker",APP_SET_MODE:"app:setmode",APP_REVERT_MODE:"app:revertmode",APP_ADD_BUTTON:"app:addbutton",APP_TOGGLE_BUTTON_STATE:"app:togglebuttonstate",APP_ADD_PANEL:"app:addpanel",APP_REMOVE_PANEL:"app:removepanel",APP_SHOW_PANEL:"app:showpanel",APP_HIDE_PANEL:"app:hidepanel",APP_ADD_CONTROL:"app:addcontrol",APP_READY:"app:ready",APP_OPENED:"app:opened",APP_CLOSED:"app:closed",APP_PANEL_OPENED:"app:panelopened",APP_PANEL_CLOSED:"app:panelclosed",MAP_SET_STYLE:"map:setstyle",MAP_SET_SIZE:"map:setsize",MAP_SET_PIXEL_RATIO:"map:setpixelratio",MAP_FIT_TO_BOUNDS:"map:fittobounds",MAP_SET_VIEW:"map:setview",MAP_INIT_MAP_STYLES:"map:initmapstyles",MAP_STYLE_CHANGE:"map:stylechange",MAP_LOADED:"map:loaded",MAP_READY:"map:ready",MAP_SIZE_CHANGE:"map:sizechange",MAP_FIRST_IDLE:"map:firstidle",MAP_MOVE_START:"map:movestart",MAP_MOVE:"map:move",MAP_MOVE_END:"map:moveend",MAP_STATE_UPDATED:"map:stateupdated",MAP_DATA_CHANGE:"map:datachange",MAP_RENDER:"map:render",MAP_CLICK:"map:click",MAP_DESTROY:"map:destroy"};function E(){var t,e,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var u=n&&n.prototype instanceof l?n:l,s=Object.create(u.prototype);return _(s,"_invoke",function(r,n,o){var i,l,u,s=0,c=o||[],f=!1,y={p:0,n:0,v:t,a:d,f:d.bind(t,4),d:function(e,r){return i=e,l=0,u=t,y.n=r,a}};function d(r,n){for(l=r,u=n,e=0;!f&&s&&!o&&e<c.length;e++){var o,i=c[e],d=y.p,p=i[2];r>3?(o=p===n)&&(u=i[(l=i[4])?5:(l=3,3)],i[4]=i[5]=t):i[0]<=d&&((o=r<2&&d<i[1])?(l=0,y.v=n,y.n=i[1]):d<p&&(o=r<3||i[0]>n||n>p)&&(i[4]=r,i[5]=n,y.n=p,l=0))}if(o||r>1)return a;throw f=!0,n}return function(o,c,p){if(s>1)throw TypeError("Generator is already running");for(f&&1===c&&d(c,p),l=c,u=p;(e=l<2?t:u)||!f;){i||(l?l<3?(l>1&&(y.n=-1),d(l,u)):y.n=u:y.v=u);try{if(s=2,i){if(l||(o="next"),e=i[o]){if(!(e=e.call(i,u)))throw TypeError("iterator result is not an object");if(!e.done)return e;u=e.value,l<2&&(l=0)}else 1===l&&(e=i.return)&&e.call(i),l<2&&(u=TypeError("The iterator does not provide a '"+o+"' method"),l=1);i=t}else if((e=(f=y.n<0)?u:r.call(n,y))!==a)break}catch(e){i=t,l=1,u=e}finally{s=1}}return{value:e,done:f}}}(r,o,i),!0),s}var a={};function l(){}function u(){}function s(){}e=Object.getPrototypeOf;var c=[][n]?e(e([][n]())):(_(e={},n,function(){return this}),e),f=s.prototype=l.prototype=Object.create(c);function y(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,s):(t.__proto__=s,_(t,o,"GeneratorFunction")),t.prototype=Object.create(f),t}return u.prototype=s,_(f,"constructor",s),_(s,"constructor",u),u.displayName="GeneratorFunction",_(s,o,"GeneratorFunction"),_(f),_(f,o,"Generator"),_(f,n,function(){return this}),_(f,"toString",function(){return"[object Generator]"}),(E=function(){return{w:i,m:y}})()}function _(t,e,r,n){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}_=function(t,e,r,n){function i(e,r){_(t,e,function(t){return this._invoke(e,r,t)})}e?o?o(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n}):t[e]=r:(i("next",0),i("throw",1),i("return",2))},_(t,e,r,n)}function k(t,e,r,n,o,i,a){try{var l=t[i](a),u=l.value}catch(t){return void r(t)}l.done?e(u):Promise.resolve(u).then(n,o)}var T=function(){var t,e=(t=E().m(function t(e,r,n,o){var i,a,l,u,s,c,f;return E().w(function(t){for(;;)switch(t.n){case 0:return i=n(e,r),l=(a="string"==typeof i?{url:i}:i).url,u=a.headers,s=void 0===u?{}:u,t.n=1,fetch(l,{headers:s,signal:o});case 1:if((c=t.v).ok){t.n=2;break}throw new Error("Failed to fetch GeoJSON: ".concat(c.status," ").concat(c.statusText));case 2:return t.n=3,c.json();case 3:if("FeatureCollection"!==(f=t.v).type){t.n=4;break}return t.a(2,f);case 4:if("Feature"!==f.type){t.n=5;break}return t.a(2,{type:"FeatureCollection",features:[f]});case 5:if(!Array.isArray(f)){t.n=6;break}return t.a(2,{type:"FeatureCollection",features:f});case 6:throw new Error("Invalid GeoJSON response");case 7:return t.a(2)}},t)}),function(){var e=this,r=arguments;return new Promise(function(n,o){var i=t.apply(e,r);function a(t){k(i,n,o,a,l,"next",t)}function l(t){k(i,n,o,a,l,"throw",t)}a(void 0)})});return function(t,r,n,o){return e.apply(this,arguments)}}();function D(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}var I=function(t){var e=t.getBounds();return[e.getWest(),e.getSouth(),e.getEast(),e.getNorth()]},x=function(t,e){return!(!t||!e)&&e[0]>=t[0]&&e[1]>=t[1]&&e[2]<=t[2]&&e[3]<=t[3]},C=function(t,e){return t?[Math.min(t[0],e[0]),Math.min(t[1],e[1]),Math.max(t[2],e[2]),Math.max(t[3],e[3])]:function(t){if(Array.isArray(t))return D(t)}(r=e)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(r)||function(t,e){if(t){if("string"==typeof t)return D(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?D(t,e):void 0}}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}();var r},L=function(t,e){return!(!t||!e||t[2]<e[0]||t[0]>e[2]||t[3]<e[1]||t[1]>e[3])},M=function(t){var e=1/0,r=1/0,n=-1/0,o=-1/0,i=function(t,a){var l;0===a?(l=t,e=Math.min(e,l[0]),r=Math.min(r,l[1]),n=Math.max(n,l[0]),o=Math.max(o,l[1])):t.forEach(function(t){return i(t,a-1)})};switch(t.type){case"Point":i(t.coordinates,0);break;case"LineString":case"MultiPoint":i(t.coordinates,1);break;case"Polygon":case"MultiLineString":i(t.coordinates,2);break;case"MultiPolygon":i(t.coordinates,3);break;case"GeometryCollection":t.geometries.forEach(function(t){var i=M(t);e=Math.min(e,i[0]),r=Math.min(r,i[1]),n=Math.max(n,i[2]),o=Math.max(o,i[3])});break;default:throw new Error("Unsupported geometry type: ".concat(t.type))}return[e,r,n,o]};function F(){var t,e,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var u=n&&n.prototype instanceof l?n:l,s=Object.create(u.prototype);return N(s,"_invoke",function(r,n,o){var i,l,u,s=0,c=o||[],f=!1,y={p:0,n:0,v:t,a:d,f:d.bind(t,4),d:function(e,r){return i=e,l=0,u=t,y.n=r,a}};function d(r,n){for(l=r,u=n,e=0;!f&&s&&!o&&e<c.length;e++){var o,i=c[e],d=y.p,p=i[2];r>3?(o=p===n)&&(u=i[(l=i[4])?5:(l=3,3)],i[4]=i[5]=t):i[0]<=d&&((o=r<2&&d<i[1])?(l=0,y.v=n,y.n=i[1]):d<p&&(o=r<3||i[0]>n||n>p)&&(i[4]=r,i[5]=n,y.n=p,l=0))}if(o||r>1)return a;throw f=!0,n}return function(o,c,p){if(s>1)throw TypeError("Generator is already running");for(f&&1===c&&d(c,p),l=c,u=p;(e=l<2?t:u)||!f;){i||(l?l<3?(l>1&&(y.n=-1),d(l,u)):y.n=u:y.v=u);try{if(s=2,i){if(l||(o="next"),e=i[o]){if(!(e=e.call(i,u)))throw TypeError("iterator result is not an object");if(!e.done)return e;u=e.value,l<2&&(l=0)}else 1===l&&(e=i.return)&&e.call(i),l<2&&(u=TypeError("The iterator does not provide a '"+o+"' method"),l=1);i=t}else if((e=(f=y.n<0)?u:r.call(n,y))!==a)break}catch(e){i=t,l=1,u=e}finally{s=1}}return{value:e,done:f}}}(r,o,i),!0),s}var a={};function l(){}function u(){}function s(){}e=Object.getPrototypeOf;var c=[][n]?e(e([][n]())):(N(e={},n,function(){return this}),e),f=s.prototype=l.prototype=Object.create(c);function y(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,s):(t.__proto__=s,N(t,o,"GeneratorFunction")),t.prototype=Object.create(f),t}return u.prototype=s,N(f,"constructor",s),N(s,"constructor",u),u.displayName="GeneratorFunction",N(s,o,"GeneratorFunction"),N(f),N(f,o,"Generator"),N(f,n,function(){return this}),N(f,"toString",function(){return"[object Generator]"}),(F=function(){return{w:i,m:y}})()}function N(t,e,r,n){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}N=function(t,e,r,n){function i(e,r){N(t,e,function(t){return this._invoke(e,r,t)})}e?o?o(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n}):t[e]=r:(i("next",0),i("throw",1),i("return",2))},N(t,e,r,n)}function R(t,e,r,n,o,i,a){try{var l=t[i](a),u=l.value}catch(t){return void r(t)}l.done?e(u):Promise.resolve(u).then(n,o)}function B(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return l}}(t,e)||G(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function G(t,e){if(t){if("string"==typeof t)return V(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?V(t,e):void 0}}function V(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}var Y=function(t){var e=t.adapter,r=t.pluginConfig,n=t.pluginStateRef,o=t.mapStyle,i=t.mapProvider,a=t.events,u=t.eventBus,s=r.datasets,c=new Map,y=function(){return n.current.datasets||s},d=s.map(function(t){return f(t,l)});e.init(d,o).then(function(){d.forEach(function(t){if(function(t){return"string"==typeof t.geojson&&!!t.idProperty&&"function"==typeof t.transformRequest}(t)){var r=function(t){var e,r,n,o=t.dataset,i=t.map,a=t.onUpdate,l=o.geojson,u=o.idProperty,s=o.transformRequest,c=o.maxFeatures,f=o.minZoom,y=void 0===f?0:f,d=new Map,p=null,b=null,v=function(){return{type:"FeatureCollection",features:Array.from(d.values()).map(function(t){return t.feature})}},m=function(t){var e,r;return u&&null!==(e=null===(r=t.properties)||void 0===r?void 0:r[u])&&void 0!==e?e:t.id},h=function(t){if(c&&!(d.size<=1.2*c)){var e,r=c,n=[],o=[],i=function(t){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=G(t))){e&&(t=e);var r=0,n=function(){};return{s:n,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,a=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return i=t.done,t},e:function(t){a=!0,o=t},f:function(){try{i||null==e.return||e.return()}finally{if(a)throw o}}}}(d);try{for(i.s();!(e=i.n()).done;){var a=B(e.value,2),l=a[0],u=a[1];L(u.bbox,t)?n.push(l):o.push({id:l,lastSeenAt:u.lastSeenAt})}}catch(t){i.e(t)}finally{i.f()}o.sort(function(t,e){return t.lastSeenAt-e.lastSeenAt});for(var s=d.size-r,f=0;f<s&&f<o.length;f++)d.delete(o[f].id);if(d.size>r)for(var y=d.size-r,p=n.map(function(t){return{id:t,lastSeenAt:d.get(t).lastSeenAt}}).sort(function(t,e){return t.lastSeenAt-e.lastSeenAt}),b=0;b<y&&b<p.length;b++)d.delete(p[b].id)}},g=function(){var t,e=(t=F().m(function t(){var e,r,n,u,c,f,g;return F().w(function(t){for(;;)switch(t.p=t.n){case 0:if(!((e=i.getZoom())<y)){t.n=1;break}return t.a(2);case 1:if(r=I(i),!p||!x(p,r)){t.n=2;break}return t.a(2);case 2:return b&&b.abort(),b=new AbortController,t.p=3,n={bbox:r,zoom:e,dataset:o},t.n=4,T(l,n,s,b.signal);case 4:u=t.v,c=Date.now(),u.features.forEach(function(t){var e=m(t);null!=e?d.set(e,{feature:t,bbox:M(t.geometry),lastSeenAt:c}):console.warn("Feature missing ID, skipping:",t)}),p=C(p,r),f=d.size,h(r),d.size<f&&(p=r),a(o.id,v()),t.n=7;break;case 5:if(t.p=5,"AbortError"!==(g=t.v).name){t.n=6;break}return t.a(2);case 6:console.error("Failed to fetch dynamic GeoJSON for ".concat(o.id,":"),g);case 7:return t.a(2)}},t,null,[[3,5]])}),function(){var e=this,r=arguments;return new Promise(function(n,o){var i=t.apply(e,r);function a(t){R(i,n,o,a,l,"next",t)}function l(t){R(i,n,o,a,l,"throw",t)}a(void 0)})});return function(){return e.apply(this,arguments)}}(),S=(e=g,n=function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];clearTimeout(r),r=setTimeout(function(){return e.apply(void 0,n)},200)},n.cancel=function(){clearTimeout(r),r=null},n),O=function(){S()};return i.on("moveend",O),g(),{destroy:function(){i.off("moveend",O),S.cancel(),b&&b.abort()},clear:function(){d.clear(),p=null,a(o.id,{type:"FeatureCollection",features:[]})},refresh:function(){d.clear(),p=null,g()},getFeatureCount:function(){return d.size},reapply:function(){d.size>0&&a(o.id,v())}}}({dataset:t,map:i.map,onUpdate:function(t,r){return e.setData(t,r)}});c.set(t.id,r)}}),u.emit("datasets:ready")});var p=o,b=function(t){p=t,e.onStyleChange(y(),t,n.current.hiddenFeatures||{},c)},v=function(){e.onSizeChange(y(),p)};return u.on(a.MAP_SET_STYLE,b),u.on(a.MAP_SIZE_CHANGE,v),{remove:function(){u.off(a.MAP_SET_STYLE,b),u.off(a.MAP_SIZE_CHANGE,v),c.forEach(function(t){return t.destroy()}),c.clear(),e.destroy(y())},refreshDataset:function(t){var e;null===(e=c.get(t))||void 0===e||e.refresh()},clearDatasetCache:function(t){var e;null===(e=c.get(t))||void 0===e||e.clear()},getFeatureCount:function(t){var e,r;return null!==(e=null===(r=c.get(t))||void 0===r?void 0:r.getFeatureCount())&&void 0!==e?e:null}}};function W(){var t,e,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var u=n&&n.prototype instanceof l?n:l,s=Object.create(u.prototype);return U(s,"_invoke",function(r,n,o){var i,l,u,s=0,c=o||[],f=!1,y={p:0,n:0,v:t,a:d,f:d.bind(t,4),d:function(e,r){return i=e,l=0,u=t,y.n=r,a}};function d(r,n){for(l=r,u=n,e=0;!f&&s&&!o&&e<c.length;e++){var o,i=c[e],d=y.p,p=i[2];r>3?(o=p===n)&&(u=i[(l=i[4])?5:(l=3,3)],i[4]=i[5]=t):i[0]<=d&&((o=r<2&&d<i[1])?(l=0,y.v=n,y.n=i[1]):d<p&&(o=r<3||i[0]>n||n>p)&&(i[4]=r,i[5]=n,y.n=p,l=0))}if(o||r>1)return a;throw f=!0,n}return function(o,c,p){if(s>1)throw TypeError("Generator is already running");for(f&&1===c&&d(c,p),l=c,u=p;(e=l<2?t:u)||!f;){i||(l?l<3?(l>1&&(y.n=-1),d(l,u)):y.n=u:y.v=u);try{if(s=2,i){if(l||(o="next"),e=i[o]){if(!(e=e.call(i,u)))throw TypeError("iterator result is not an object");if(!e.done)return e;u=e.value,l<2&&(l=0)}else 1===l&&(e=i.return)&&e.call(i),l<2&&(u=TypeError("The iterator does not provide a '"+o+"' method"),l=1);i=t}else if((e=(f=y.n<0)?u:r.call(n,y))!==a)break}catch(e){i=t,l=1,u=e}finally{s=1}}return{value:e,done:f}}}(r,o,i),!0),s}var a={};function l(){}function u(){}function s(){}e=Object.getPrototypeOf;var c=[][n]?e(e([][n]())):(U(e={},n,function(){return this}),e),f=s.prototype=l.prototype=Object.create(c);function y(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,s):(t.__proto__=s,U(t,o,"GeneratorFunction")),t.prototype=Object.create(f),t}return u.prototype=s,U(f,"constructor",s),U(s,"constructor",u),u.displayName="GeneratorFunction",U(s,o,"GeneratorFunction"),U(f),U(f,o,"Generator"),U(f,n,function(){return this}),U(f,"toString",function(){return"[object Generator]"}),(W=function(){return{w:i,m:y}})()}function U(t,e,r,n){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}U=function(t,e,r,n){function i(e,r){U(t,e,function(t){return this._invoke(e,r,t)})}e?o?o(t,e,{value:r,enumerable:!n,configurable:!n,writable:!n}):t[e]=r:(i("next",0),i("throw",1),i("return",2))},U(t,e,r,n)}function H(t,e,r,n,o,i,a){try{var l=t[i](a),u=l.value}catch(t){return void r(t)}l.done?e(u):Promise.resolve(u).then(n,o)}function K(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return z(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?z(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function z(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}var Z=function(t,e){var r,n,o=t.pluginState,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=i.datasetId,l=i.sublayerId;if(l){var u,s=e?"visible":"hidden";return null===(u=o.layerAdapter)||void 0===u||u[e?"showSublayer":"hideSublayer"](a,l),void o.dispatch({type:"SET_SUBLAYER_VISIBILITY",payload:{datasetId:a,sublayerId:l,visibility:s}})}if(a){if(null===(n=o.layerAdapter)||void 0===n||n[e?"showDataset":"hideDataset"](a),o.dispatch({type:"SET_DATASET_VISIBILITY",payload:{id:a,visibility:e?"visible":"hidden"}}),e){var c,f=null===(c=o.datasets)||void 0===c?void 0:c.find(function(t){return t.id===a});Object.entries((null==f?void 0:f.sublayerVisibility)||{}).forEach(function(t){var e,r=K(t,2),n=r[0];"hidden"===r[1]&&(null===(e=o.layerAdapter)||void 0===e||e.hideSublayer(a,n))})}}else o.dispatch({type:"SET_GLOBAL_VISIBILITY",payload:{visibility:e?"visible":"hidden"}}),null===(r=o.datasets)||void 0===r||r.forEach(function(t){var r;null===(r=o.layerAdapter)||void 0===r||r[e?"showDataset":"hideDataset"](t.id),e&&Object.entries(t.sublayerVisibility||{}).forEach(function(e){var r,n=K(e,2),i=n[0];"hidden"===n[1]&&(null===(r=o.layerAdapter)||void 0===r||r.hideSublayer(t.id,i))})})},$=r(287),J="im-c-datasets-layers__item-label govuk-label govuk-checkboxes__label",q=function(t){var e;return null===(e=t.sublayers)||void 0===e?void 0:e.some(function(t){return t.toggleVisibility})};function X(t){return X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},X(t)}var Q=function(t,e){if(!t)return null;if("string"==typeof t)return t.trim();if("object"===X(t)){if(e&&t[e])return t[e];var r=Object.values(t)[0];return null!=r?r:null}return null};function tt(t){return tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},tt(t)}function et(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function rt(t,e,r){return(e=function(t){var e=function(t){if("object"!=tt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=tt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==tt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var nt=function(t,e){return"symbolDescription"in e?e.symbolDescription:c(e)?void 0:t.symbolDescription},ot=function(t){var e=t.text;return(0,$.jsx)("div",{className:"im-c-datasets-key",children:(0,$.jsx)("p",{className:"im-c-datasets-key__empty-message",children:e})})},it=new Set(["symbolBackgroundColor","symbolForegroundColor","symbolHaloWidth","symbolGraphic"]),at=function(t){return!(!t.symbol&&!t.symbolSvgContent)},lt=function(t,e,r){return t.replace(/\{\{foregroundColor\}\}/g,e||"black").replace(/\{\{backgroundColor\}\}/g,r||"transparent")};function ut(t){return ut="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ut(t)}function st(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function ct(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?st(Object(r),!0).forEach(function(e){ft(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):st(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function ft(t,e,r){return(e=function(t){var e=function(t){if("object"!=ut(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=ut(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ut(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var yt=20,dt={xmlns:"http://www.w3.org/2000/svg",width:yt,height:yt,viewBox:"0 0 ".concat(yt," ").concat(yt),className:"am-c-datasets-key-symbol","aria-hidden":"true",focusable:"false"},pt=ct(ct({},dt),{},{width:38,height:38,className:"am-c-datasets-key-symbol am-c-datasets-key-symbol--point"});function bt(t){return bt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},bt(t)}function vt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function mt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?vt(Object(r),!0).forEach(function(e){ht(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):vt(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function ht(t,e,r){return(e=function(t){var e=function(t){if("object"!=bt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=bt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==bt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var gt=function(t){var e=t.patternRegistry,r=function(t,e,r){var n=function(t,e){return t.fillPatternSvgContent?t.fillPatternSvgContent:t.fillPattern&&null!==(r=null==e||null===(n=e.get(t.fillPattern))||void 0===n?void 0:n.svgContent)&&void 0!==r?r:null;var r,n}(t,r);if(!n)return null;var o=Q(t.fillPatternForegroundColor,e)||"black",i=Q(t.fillPatternBackgroundColor,e)||"transparent",a=Q(t.stroke,e)||o;return{border:lt('<path d="M19 2.862v14.275c0 1.028-.835 1.862-1.862 1.862H2.863c-1.028 0-1.862-.835-1.862-1.862V2.862C1.001 1.834 1.836 1 2.863 1h14.275C18.166 1 19 1.835 19 2.862z" fill="{{backgroundColor}}" stroke="{{foregroundColor}}" stroke-width="2"/>',a,i),content:lt(n,o,i)}}(t,t.mapStyle.id,e);return(0,$.jsxs)("svg",mt(mt({},dt),{},{children:[(0,$.jsx)("g",{dangerouslySetInnerHTML:{__html:r.border}}),(0,$.jsx)("g",{transform:"translate(".concat(2,", ").concat(2,")"),dangerouslySetInnerHTML:{__html:r.content}})]}))};function St(t){return St="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},St(t)}function Ot(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Pt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Ot(Object(r),!0).forEach(function(e){jt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ot(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function jt(t,e,r){return(e=function(t){var e=function(t){if("object"!=St(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=St(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==St(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var wt=function(t){var e,r=t.symbolRegistry,n=t.mapStyle,o=t.symbolDef,i=null!==(e=null==n?void 0:n.appColorScheme)&&void 0!==e?e:"light",a=Pt(Pt({},n),{},{mapColorScheme:i}),l=r.resolve(o,function(t){if(!at(t))return{};var e={};return it.forEach(function(r){if(null!=t[r]){var n=r.charAt(6).toLowerCase()+r.slice(7);e[n]=t[r]}}),e}(t),a),u=function(t,e){var r;return t.symbolViewBox?t.symbolViewBox:null!==(r=null==e?void 0:e.viewBox)&&void 0!==r?r:"0 0 38 38"}(t,o);return(0,$.jsx)("svg",Pt(Pt({},pt),{},{viewBox:u,children:(0,$.jsx)("g",{dangerouslySetInnerHTML:{__html:l}})}))};function At(t){return At="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},At(t)}function Et(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function _t(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Et(Object(r),!0).forEach(function(e){kt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Et(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function kt(t,e,r){return(e=function(t){var e=function(t){if("object"!=At(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=At(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==At(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var Tt=function(t){var e=t.mapStyle;return(0,$.jsx)("svg",_t(_t({},dt),{},{children:(0,$.jsx)("line",{x1:t.strokeWidth/2,y1:10,x2:yt-t.strokeWidth/2,y2:10,stroke:Q(t.stroke,e.id),strokeWidth:t.strokeWidth,strokeLinecap:"round"})}))};function Dt(t){return Dt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dt(t)}function It(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function xt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?It(Object(r),!0).forEach(function(e){Ct(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):It(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function Ct(t,e,r){return(e=function(t){var e=function(t){if("object"!=Dt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Dt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Dt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var Lt=function(t){var e=t.mapStyle;return(0,$.jsx)("svg",xt(xt({},dt),{},{children:(0,$.jsx)("rect",{x:t.strokeWidth/2,y:t.strokeWidth/2,width:yt-t.strokeWidth,height:yt-t.strokeWidth,rx:t.strokeWidth,ry:t.strokeWidth,fill:Q(t.fill,e.id),stroke:Q(t.stroke,e.id),strokeWidth:t.strokeWidth,strokeLinejoin:"round"})}))};function Mt(t){return Mt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Mt(t)}function Ft(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Nt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Ft(Object(r),!0).forEach(function(e){Rt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ft(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function Rt(t,e,r){return(e=function(t){var e=function(t){if("object"!=Mt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Mt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Mt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var Bt=function(t){var e,r=t.symbolRegistry,n=at(t)&&function(t,e){return t.symbolSvgContent?{svg:t.symbolSvgContent}:t.symbol?e.get(t.symbol):void 0}(t,r);return n?(0,$.jsx)(wt,Nt(Nt({},t),{},{symbolDef:n})):(e=t).fillPattern||e.fillPatternSvgContent?(0,$.jsx)(gt,Nt({},t)):"line"===t.keySymbolShape?(0,$.jsx)(Tt,Nt({},t)):(0,$.jsx)(Lt,Nt({},t))};function Gt(t){return Gt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Gt(t)}function Vt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Yt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Vt(Object(r),!0).forEach(function(e){Wt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Vt(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function Wt(t,e,r){return(e=function(t){var e=function(t){if("object"!=Gt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Gt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Gt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Ut(t){return Ut="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ut(t)}function Ht(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Kt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Ht(Object(r),!0).forEach(function(e){zt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Ht(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function zt(t,e,r){return(e=function(t){var e=function(t){if("object"!=Ut(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Ut(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Ut(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Zt(t){return function(t){if(Array.isArray(t))return $t(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return $t(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?$t(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $t(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Jt(t){return Jt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Jt(t)}function qt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function Xt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?qt(Object(r),!0).forEach(function(e){Qt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):qt(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function Qt(t,e,r){return(e=function(t){var e=function(t){if("object"!=Jt(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Jt(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Jt(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var te="[interactive-map]",ee={InitComponent:function(t){var e,r=t.pluginConfig,n=t.pluginState,o=t.appState,i=t.mapState,a=t.mapProvider,u=t.services,s=n.dispatch,c=u.eventBus,f=u.symbolRegistry,y=u.patternRegistry,d=!(null===(e=a.map)||void 0===e||!e.getStyle()),p=(0,w.useRef)(n);p.current=n;var b=(0,w.useRef)(null);return(0,w.useEffect)(function(){var t,e,u,v,m=null===(t=null===(e=r.includeModes)||void 0===e?void 0:e.includes(o.mode))||void 0===t||t,h=null!==(u=null===(v=r.excludeModes)||void 0===v?void 0:v.includes(o.mode))&&void 0!==u&&u;if(d&&m&&!h&&!b.current){n.datasets||s({type:"SET_DATASETS",payload:{datasets:r.datasets,datasetDefaults:l}});var g=function(){var t,e=(t=W().m(function t(){var e,n,o;return W().w(function(t){for(;;)switch(t.n){case 0:if(r.layerAdapter){t.n=1;break}throw new Error("datasets plugin: no layerAdapter provided. Import and pass maplibreLayerAdapter or a custom adapter.");case 1:return t.n=2,r.layerAdapter.load();case 2:e=t.v,n=e.default,o=new n(a,f,y),s({type:"SET_LAYER_ADAPTER",payload:o}),b.current=Y({adapter:o,pluginConfig:r,pluginStateRef:p,mapStyle:i.mapStyle,mapProvider:a,events:A,eventBus:c});case 3:return t.a(2)}},t)}),function(){var e=this,r=arguments;return new Promise(function(n,o){var i=t.apply(e,r);function a(t){H(i,n,o,a,l,"next",t)}function l(t){H(i,n,o,a,l,"throw",t)}a(void 0)})});return function(){return e.apply(this,arguments)}}();g()}},[d,o.mode]),(0,w.useEffect)(function(){s({type:"BUILD_KEY_GROUPS",payload:null})},[n.datasets]),(0,w.useEffect)(function(){return function(){b.current&&(b.current.remove(),b.current=null),s({type:"SET_LAYER_ADAPTER",payload:null})}},[]),null},reducer:{initialState:{datasets:null,key:{items:[],hasGroups:!1},hiddenFeatures:{},layerAdapter:null},actions:j},panels:[{id:"datasetsLayers",label:"Layers",mobile:{slot:"drawer",modal:!0,dismissible:!0},tablet:{slot:"left-top",dismissible:!0,exclusive:!0,width:"260px"},desktop:{slot:"left-top",modal:!1,dismissible:!0,exclusive:!0,width:"280px"},render:function(t){var e,r,n,o=t.pluginState,i=function(t){var e=t.target,r=e.value,n=e.checked;Z({pluginState:o},n,{datasetId:r})},a=function(t){var e=t.target.checked,r=t.target.dataset.datasetId,n=t.target.dataset.sublayerId;Z({pluginState:o},e,{datasetId:r,sublayerId:n})},l=function(t){var e="im-c-datasets-layers__item govuk-checkboxes govuk-checkboxes--small".concat("hidden"===t.visibility?"":" im-c-datasets-layers__item--checked");return(0,$.jsx)("div",{className:e,"data-module":"govuk-checkboxes",children:(0,$.jsxs)("div",{className:"govuk-checkboxes__item",children:[(0,$.jsx)("input",{className:"govuk-checkboxes__input",id:t.id,name:"layers",type:"checkbox",value:t.id,checked:"hidden"!==t.visibility,onChange:i}),(0,$.jsx)("label",{className:J,htmlFor:t.id,children:t.label})]})},t.id)},u=(o.datasets||[]).filter(function(t){return t.toggleVisibility||q(t)}),s=(e=u,r=new Set,n=[],e.forEach(function(t){if(q(t))n.push({type:"sublayers",dataset:t});else{if(t.groupLabel){if(r.has(t.groupLabel))return;return r.add(t.groupLabel),void n.push({type:"group",groupLabel:t.groupLabel,datasets:e.filter(function(e){return!q(e)&&e.groupLabel===t.groupLabel})})}n.push({type:"flat",dataset:t})}}),n),c=s.some(function(t){return"sublayers"===t.type||"group"===t.type}),f="im-c-datasets-layers".concat(c?" im-c-datasets-layers--has-groups":"");return(0,$.jsx)("div",{className:f,children:s.map(function(t){if("sublayers"===t.type){var e=t.dataset,r=e.sublayers.filter(function(t){return t.toggleVisibility}).some(function(t){var r;return"hidden"!==(null===(r=e.sublayerVisibility)||void 0===r?void 0:r[t.id])}),n="govuk-form-group im-c-datasets-layers-group".concat(r?" im-c-datasets-layers-group--items-checked":"");return(0,$.jsx)("div",{className:n,children:(0,$.jsxs)("fieldset",{className:"im-c-datasets-layers-group__fieldset",children:[(0,$.jsx)("legend",{className:"im-c-datasets-layers-group__legend",children:e.label}),e.sublayers.filter(function(t){return t.toggleVisibility}).map(function(t){var r,n="hidden"!==(null===(r=e.sublayerVisibility)||void 0===r?void 0:r[t.id]),o="".concat(e.id,"-").concat(t.id),i="im-c-datasets-layers__item govuk-checkboxes govuk-checkboxes--small".concat(n?" im-c-datasets-layers__item--checked":"");return(0,$.jsx)("div",{className:i,"data-module":"govuk-checkboxes",children:(0,$.jsxs)("div",{className:"govuk-checkboxes__item",children:[(0,$.jsx)("input",{className:"govuk-checkboxes__input",id:o,type:"checkbox",checked:n,"data-dataset-id":e.id,"data-sublayer-id":t.id,onChange:a}),(0,$.jsx)("label",{className:J,htmlFor:o,children:t.label})]})},t.id)})]})},e.id)}if("group"===t.type){var o=t.datasets.some(function(t){return"hidden"!==t.visibility}),i="govuk-form-group im-c-datasets-layers-group".concat(o?" im-c-datasets-layers-group--items-checked":"");return(0,$.jsx)("div",{className:i,children:(0,$.jsxs)("fieldset",{className:"im-c-datasets-layers-group__fieldset",children:[(0,$.jsx)("legend",{className:"im-c-datasets-layers-group__legend",children:t.groupLabel}),t.datasets.map(function(t){return l(t)})]})},t.groupLabel)}return l(t.dataset)})})}},{id:"datasetsKey",label:"Key",mobile:{slot:"drawer",modal:!0},tablet:{slot:"left-top",width:"260px"},desktop:{slot:"left-top",width:"280px"},render:function(t){var e,r=t.pluginConfig,n=t.mapState,o=t.pluginState,i=t.services;if(null==o||null===(e=o.key)||void 0===e||null===(e=e.items)||void 0===e||!e.length)return(0,$.jsx)(ot,{text:r.noKeyItemText});var a=n.mapStyle,l=i.symbolRegistry,u=i.patternRegistry,s=function(t,e){return(0,$.jsxs)("dl",{className:"im-c-datasets-key__item",children:[(0,$.jsx)("dt",{className:"im-c-datasets-key__item-symbol",children:(0,$.jsx)(Bt,Yt(Yt({},e),{},{symbolRegistry:l,patternRegistry:u,mapStyle:a}))}),(0,$.jsxs)("dd",{className:"im-c-datasets-key__item-label",children:[e.label,e.symbolDescription&&(0,$.jsxs)("span",{className:"govuk-visually-hidden",children:["(",Q(e.symbolDescription,a.id),")"]})]})]},t)},c=o.key,f=c.items,y=c.hasGroups,d="im-c-datasets-key".concat(y?" im-c-datasets-key--has-groups":"");return(0,$.jsx)("div",{className:d,children:f.map(function(t){if("sublayers"===t.type){var e="key-heading-".concat(t.dataset.id);return(0,$.jsxs)("section",{className:"im-c-datasets-key__group","aria-labelledby":e,children:[(0,$.jsx)("h3",{id:e,className:"im-c-datasets-key__group-heading",children:t.dataset.label}),t.dataset.sublayers.filter(function(e){var r;return"hidden"!==(null===(r=t.dataset.sublayerVisibility)||void 0===r?void 0:r[e.id])}).map(function(e){return s("".concat(t.dataset.id,"-").concat(e.id),function(t,e){var r,n,o,i,a,l,u,s,c,f,y,d,p,b,v,m,h,g=e.style||{},S=(m=t.filter,h=e.filter,m&&h?["all",m,h]:h||m||null);return function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?et(Object(r),!0).forEach(function(e){rt(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):et(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}({id:e.id,label:e.label,stroke:null!==(r=g.stroke)&&void 0!==r?r:t.stroke,strokeWidth:null!==(n=g.strokeWidth)&&void 0!==n?n:t.strokeWidth,strokeDashArray:null!==(o=g.strokeDashArray)&&void 0!==o?o:t.strokeDashArray,opacity:null!==(i=g.opacity)&&void 0!==i?i:t.opacity,keySymbolShape:null!==(a=g.keySymbolShape)&&void 0!==a?a:t.keySymbolShape,symbolDescription:nt(t,g),showInKey:null!==(l=e.showInKey)&&void 0!==l?l:t.showInKey,toggleVisibility:null!==(u=e.toggleVisibility)&&void 0!==u&&u,filter:S,minZoom:t.minZoom,maxZoom:t.maxZoom,symbol:null!==(s=g.symbol)&&void 0!==s?s:t.symbol,symbolSvgContent:null!==(c=g.symbolSvgContent)&&void 0!==c?c:t.symbolSvgContent,symbolViewBox:null!==(f=g.symbolViewBox)&&void 0!==f?f:t.symbolViewBox,symbolAnchor:null!==(y=g.symbolAnchor)&&void 0!==y?y:t.symbolAnchor,symbolBackgroundColor:null!==(d=g.symbolBackgroundColor)&&void 0!==d?d:t.symbolBackgroundColor,symbolForegroundColor:null!==(p=g.symbolForegroundColor)&&void 0!==p?p:t.symbolForegroundColor,symbolHaloWidth:null!==(b=g.symbolHaloWidth)&&void 0!==b?b:t.symbolHaloWidth,symbolGraphic:null!==(v=g.symbolGraphic)&&void 0!==v?v:t.symbolGraphic},function(t,e){var r,n;return e.fillPattern||e.fillPatternSvgContent?{fillPattern:e.fillPattern,fillPatternSvgContent:e.fillPatternSvgContent,fillPatternForegroundColor:null!==(r=e.fillPatternForegroundColor)&&void 0!==r?r:t.fillPatternForegroundColor,fillPatternBackgroundColor:null!==(n=e.fillPatternBackgroundColor)&&void 0!==n?n:t.fillPatternBackgroundColor}:"fill"in e?{fill:e.fill}:{fill:t.fill,fillPattern:t.fillPattern,fillPatternSvgContent:t.fillPatternSvgContent,fillPatternForegroundColor:t.fillPatternForegroundColor,fillPatternBackgroundColor:t.fillPatternBackgroundColor}}(t,g))}(t.dataset,e))})]},t.dataset.id)}if("group"===t.type){var r="key-heading-".concat(t.groupLabel.toLowerCase().replaceAll(/\s+/g,"-"));return(0,$.jsxs)("section",{className:"im-c-datasets-key__group","aria-labelledby":r,children:[(0,$.jsx)("h3",{id:r,className:"im-c-datasets-key__group-heading",children:t.groupLabel}),t.datasets.map(function(t){return s(t.id,t)})]},t.groupLabel)}return s(t.dataset.id,t.dataset)})})}}],buttons:[{id:"datasetsLayers",label:"Layers",panelId:"datasetsLayers",iconId:"layers",excludeWhen:function(t){return!t.pluginConfig.datasets.some(function(t){var e;return t.toggleVisibility||(null===(e=t.sublayers)||void 0===e?void 0:e.some(function(t){return t.toggleVisibility}))})},mobile:{slot:"top-left",showLabel:!0},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}},{id:"datasetsKey",label:"Key",panelId:"datasetsKey",iconId:"key",excludeWhen:function(t){return!t.pluginConfig.datasets.some(function(t){return t.showInKey})},mobile:{slot:"top-left",showLabel:!1},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}}],icons:[{id:"layers",svgContent:'<path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path>'},{id:"key",svgContent:'<path d="M3 5h.01"/><path d="M3 12h.01"/><path d="M3 19h.01"/><path d="M8 5h13"/><path d="M8 12h13"/><path d="M8 19h13"/>'}],api:{addDataset:function(t,e){var r,n=t.pluginState,o=t.mapState;null===(r=n.layerAdapter)||void 0===r||r.addDataset(Kt(Kt({},l),e),o.mapStyle),n.dispatch({type:"ADD_DATASET",payload:{dataset:e,datasetDefaults:l}})},removeDataset:function(t,e){var r,n,o=t.pluginState,i=null===(r=o.datasets)||void 0===r?void 0:r.find(function(t){return t.id===e});i&&(null===(n=o.layerAdapter)||void 0===n||n.removeDataset(i,o.datasets),o.dispatch({type:"REMOVE_DATASET",payload:{id:e}}))},setDatasetVisibility:Z,setFeatureVisibility:function(t,e,r){var n,o=t.pluginState,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=i.datasetId,l=i.idProperty,u=void 0===l?null:l,s=null===(n=o.datasets)||void 0===n?void 0:n.find(function(t){return t.id===a});if(s)if(e){var c,f=o.hiddenFeatures[a];if(!f)return;var y=f.ids.filter(function(t){return!r.includes(t)});o.dispatch({type:"SHOW_FEATURES",payload:{layerId:a,featureIds:r}}),null===(c=o.layerAdapter)||void 0===c||c.showFeatures(s,u,y)}else{var d,p=o.hiddenFeatures[a],b=(null==p?void 0:p.ids)||[],v=Zt(new Set([].concat(Zt(b),Zt(r))));o.dispatch({type:"HIDE_FEATURES",payload:{layerId:a,idProperty:u,featureIds:r}}),null===(d=o.layerAdapter)||void 0===d||d.hideFeatures(s,u,v)}},setStyle:function(t,e){var r,n,o=t.pluginState,i=t.mapState,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},l=a.datasetId,u=a.sublayerId,s=null===(r=o.datasets)||void 0===r?void 0:r.find(function(t){return t.id===l});if(s)if(u){var c,f;o.dispatch({type:"SET_SUBLAYER_STYLE",payload:{datasetId:l,sublayerId:u,styleChanges:e}});var y=Xt(Xt({},s),{},{sublayers:null===(c=s.sublayers)||void 0===c?void 0:c.map(function(t){return t.id===u?Xt(Xt({},t),{},{style:Xt(Xt({},t.style),e)}):t})});null===(f=o.layerAdapter)||void 0===f||f.setSublayerStyle(y,u,i.mapStyle)}else{o.dispatch({type:"SET_DATASET_STYLE",payload:{datasetId:l,styleChanges:e}});var d=Xt(Xt({},s),e);null===(n=o.layerAdapter)||void 0===n||n.setStyle(d,i.mapStyle)}},getStyle:function(t){var e,r,n=t.pluginState,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=o.datasetId,a=o.sublayerId,l=null===(e=n.datasets)||void 0===e?void 0:e.find(function(t){return t.id===i});if(!l)return null;if(a){var u,s,c=null===(u=l.sublayers)||void 0===u?void 0:u.find(function(t){return t.id===a});return null!==(s=null==c?void 0:c.style)&&void 0!==s?s:null}return null!==(r=l.style)&&void 0!==r?r:null},setOpacity:function(t,e,r){var n,o=t.pluginState,i=r||{},a=i.datasetId,l=i.sublayerId;if(l){var u,s;if(!(null===(u=o.datasets)||void 0===u?void 0:u.find(function(t){return t.id===a})))return;return o.dispatch({type:"SET_SUBLAYER_OPACITY",payload:{datasetId:a,sublayerId:l,opacity:e}}),void(null===(s=o.layerAdapter)||void 0===s||s.setSublayerOpacity(a,l,e))}if(a){var c,f;if(!(null===(c=o.datasets)||void 0===c?void 0:c.find(function(t){return t.id===a})))return;return o.dispatch({type:"SET_OPACITY",payload:{datasetId:a,opacity:e}}),void(null===(f=o.layerAdapter)||void 0===f||f.setOpacity(a,e))}o.dispatch({type:"SET_GLOBAL_OPACITY",payload:{opacity:e}}),null===(n=o.datasets)||void 0===n||n.forEach(function(t){var r;null===(r=o.layerAdapter)||void 0===r||r.setOpacity(t.id,e)})},getOpacity:function(t,e){var r,n,o=t.pluginState,i=e||{},a=i.datasetId,l=i.sublayerId;if(l){var u,s,c,f,y=null===(u=o.datasets)||void 0===u?void 0:u.find(function(t){return t.id===a}),d=null==y||null===(s=y.sublayers)||void 0===s?void 0:s.find(function(t){return t.id===l});return null!==(c=null==d||null===(f=d.style)||void 0===f?void 0:f.opacity)&&void 0!==c?c:null}if(a){var p,b,v=null===(p=o.datasets)||void 0===p?void 0:p.find(function(t){return t.id===a});return null!==(b=null==v?void 0:v.opacity)&&void 0!==b?b:null}return null!==(r=null===(n=o.datasets)||void 0===n||null===(n=n[0])||void 0===n?void 0:n.opacity)&&void 0!==r?r:null},setData:function(t,e,r){var n,o,i=t.pluginState,a=r.datasetId,l=null===(n=i.datasets)||void 0===n?void 0:n.find(function(t){return t.id===a});null!=l&&l.tiles?function(){for(var t,e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];(t=console).warn.apply(t,[te].concat(r))}('setData called on vector tile dataset "'.concat(a,'" — has no effect')):null===(o=i.layerAdapter)||void 0===o||o.setData(a,e)}}}}}]);
@@ -1 +1 @@
1
- import e from"@babel/runtime/helpers/defineProperty";import{useEffect as t}from"preact/compat";import r from"@arcgis/core/widgets/Sketch/SketchViewModel.js";import a from"@arcgis/core/layers/GraphicsLayer.js";import o from"@babel/runtime/helpers/asyncToGenerator";import*as n from"@arcgis/core/geometry/operators/simplifyOperator.js";import i from"@arcgis/core/Graphic.js";function p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function l(t){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?p(Object(a),!0).forEach(function(r){e(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):p(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}var c={APP_ADD_MARKER:"app:addmarker",APP_REMOVE_MARKER:"app:removemarker",APP_SET_MODE:"app:setmode",APP_REVERT_MODE:"app:revertmode",APP_ADD_BUTTON:"app:addbutton",APP_TOGGLE_BUTTON_STATE:"app:togglebuttonstate",APP_ADD_PANEL:"app:addpanel",APP_REMOVE_PANEL:"app:removepanel",APP_SHOW_PANEL:"app:showpanel",APP_HIDE_PANEL:"app:hidepanel",APP_ADD_CONTROL:"app:addcontrol",APP_READY:"app:ready",APP_VISIBLE:"app:visible",APP_HIDDEN:"app:hidden",APP_PANEL_OPENED:"app:panelopened",APP_PANEL_CLOSED:"app:panelclosed",MAP_SET_STYLE:"map:setstyle",MAP_SET_SIZE:"map:setsize",MAP_SET_PIXEL_RATIO:"map:setpixelratio",MAP_FIT_TO_BOUNDS:"map:fittobounds",MAP_SET_VIEW:"map:setview",MAP_INIT_MAP_STYLES:"map:initmapstyles",MAP_STYLE_CHANGE:"map:stylechange",MAP_LOADED:"map:loaded",MAP_READY:"map:ready",MAP_SIZE_CHANGE:"map:sizechange",MAP_FIRST_IDLE:"map:firstidle",MAP_MOVE_START:"map:movestart",MAP_MOVE:"map:move",MAP_MOVE_END:"map:moveend",MAP_STATE_UPDATED:"map:stateupdated",MAP_DATA_CHANGE:"map:datachange",MAP_RENDER:"map:render",MAP_CLICK:"map:click",MAP_EXIT:"map:exit",MAP_DESTROY:"map:destroy"};function d(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function s(t){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?d(Object(a),!0).forEach(function(r){e(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):d(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}function u(e){return{type:"simple-fill",color:[0,120,255,.2],outline:{color:"dark"===e?"#ffffff":"#d4351c",width:2}}}function m(e,t,r){return new i({geometry:{type:"polygon",rings:t,spatialReference:27700},attributes:{id:e},symbol:u(r)})}function y(e){if(null==e||!e.geometry)throw new Error("Invalid graphic");var{geometry:t,attributes:r={}}=e;switch(t.type){case"point":return{type:"Feature",geometry:{type:"Point",coordinates:[t.x,t.y]},properties:s({},r)};case"polyline":return{type:"Feature",geometry:{type:"LineString",coordinates:t.paths[0]},properties:s({},r)};case"polygon":return{type:"Feature",geometry:{type:"Polygon",coordinates:t.rings},properties:s({},r)};default:throw new Error("Unsupported geometry type: ".concat(t.type))}}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function h(t){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?v(Object(a),!0).forEach(function(r){e(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):v(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}var f={mobile:{slot:"actions",showLabel:!0},tablet:{slot:"actions",showLabel:!0},desktop:{slot:"actions",showLabel:!0}},E={reducer:{initialState:{mode:null,feature:null,tempFeature:null},actions:{SET_MODE:(e,t)=>l(l({},e),{},{mode:t}),SET_FEATURE:(e,t)=>l(l({},e),{},{feature:void 0===t.feature?e.feature:t.feature,tempFeature:void 0===t.tempFeature?e.tempFeature:t.tempFeature})}},InitComponent:e=>{var i,p,l,d,{appState:s,mapState:v,pluginConfig:h,pluginState:f,services:E,mapProvider:P,buttonConfig:g}=e,{eventBus:O}=E,{mapColorScheme:_}=v.mapStyle||{},S=null===(i=null===(p=h.includeModes)||void 0===p?void 0:p.includes(s.mode))||void 0===i||i,b=null!==(l=null===(d=h.excludeModes)||void 0===d?void 0:d.includes(s.mode))&&void 0!==l&&l,A=v.isMapReady&&S&&!b;t(()=>{if(A&&!P.sketchViewModel){var{sketchViewModel:e,sketchLayer:t,emptySketchLayer:o}=(e=>{var{mapProvider:t}=e,{view:o}=t,n=new a({id:"sketchLayer"});o.map.add(n);var i=new a({id:"emptySketchLayer"});return o.map.add(i),{sketchViewModel:new r({view:o,layer:i,defaultUpdateOptions:{tool:"reshape",updateOnGraphicClick:!1,multipleSelectionEnabled:!1,toggleToolOnClick:!1,highlightOptions:{enabled:!1}}}),emptySketchLayer:i,sketchLayer:n}})({mapProvider:P});return P.sketchViewModel=e,P.sketchLayer=t,P.emptySketchLayer=o,O.emit("draw:ready"),()=>{P.sketchViewModel=null,P.sketchLayer=null,P.emptySketchLayer=null}}},[v.isMapReady,s.mode]),t(()=>{if(A&&P.sketchViewModel){var e=function(e){var{pluginState:t,mapProvider:r,events:a,eventBus:i,buttonConfig:p,mapColorScheme:l}=e,{view:c,sketchViewModel:d,sketchLayer:s,emptySketchLayer:v}=r;if(!d)return null;var{drawDone:h,drawCancel:f}=p,{dispatch:E,mode:P,feature:g}=t,O=function(){var e=o(function*(){var e,r=null===(e=t.feature)||void 0===e||null===(e=e.properties)||void 0===e?void 0:e.id,a=null,o="active"===d.state&&!r;if("active"===d.state&&r&&(d.cancel(),yield new Promise(e=>setTimeout(e,50))),d.polygonSymbol=u(l),null==s||s.graphics.items.forEach(e=>{var t=m(e.attributes.id,e.geometry.rings,l);e.symbol=t.symbol,r===e.attributes.id&&(a=e)}),a&&!o&&d.layer===s)try{yield d.update(a,{tool:"reshape",toggleToolOnClick:!1})}catch(e){"AbortError"!==e.name&&console.error("Error updating sketch:",e)}});return function(){return e.apply(this,arguments)}}(),_=()=>{var e,t,r=null!==(e=null===(t=s.graphics)||void 0===t||null===(t=t.items)||void 0===t?void 0:t[0])&&void 0!==e?e:null;r&&setTimeout(()=>d.update(r),0)},S=()=>O(),b=e=>{if(e){var t=y(e);i.emit("draw:updated",t),E({type:"SET_FEATURE",payload:{tempFeature:t}})}},A=function(){var e=o(function*(){P&&((d.updateGraphics||[]).length||_())});return function(){return e.apply(this,arguments)}}(),w=function(){var e=o(function*(e){var{toolEventInfo:t}=e,r=null==e?void 0:e.graphic;if(r&&"vertex-add"===(null==t?void 0:t.type)){var a,o,n=null===(a=r.geometry)||void 0===a?void 0:a.rings;(null==n?void 0:n.length)>1?setTimeout(()=>d.undo(),0):(null==n||null===(o=n[0])||void 0===o?void 0:o.length)>3&&b(r)}});return function(t){return e.apply(this,arguments)}}(),T=function(){var e=o(function*(e){var t,r=null==e||null===(t=e.graphics)||void 0===t?void 0:t[0];b(r)});return function(t){return e.apply(this,arguments)}}();i.on(a.MAP_STYLE_CHANGE,S);var M=d.on("update",e=>{var t,r=null===(t=e.toolEventInfo)||void 0===t?void 0:t.type,a=e.graphics[0];"move-start"===r&&(d.cancel(),_()),"reshape"===r&&(n.isSimple(a.geometry)||d.undo()),"reshape-stop"!==r&&"vertex-remove"!==r||b(a)}),k=c.on("click",A),D=d.on("create",w),L=d.on("undo",T),j=h.onClick,C=f.onClick;return h.onClick=()=>{d.cancel(),d.layer=v,E({type:"SET_MODE",payload:null}),E({type:"SET_FEATURE",payload:{feature:null,tempFeature:null}}),i.emit("draw:done",{newFeature:t.tempFeature})},f.onClick=()=>{if(d.cancel(),s.removeAll(),g){var e=m(g.id||g.properties.id,g.geometry.coordinates,l);s.add(e)}d.layer=v,E({type:"SET_MODE",payload:null}),i.emit("draw:cancelled")},()=>{i.off(a.MAP_STYLE_CHANGE,S),M.remove(),k.remove(),D.remove(),L.remove(),h.onClick=j,f.onClick=C}}({pluginState:f,mapProvider:P,events:c,eventBus:O,buttonConfig:g,mapColorScheme:_});return()=>{e()}}},[A,_,f])},buttons:[h({id:"drawDone",label:"Done",variant:"primary",hiddenWhen:e=>{var{pluginState:t}=e;return!t.mode},enableWhen:e=>{var{pluginState:t}=e;return!!t.tempFeature}},f),h({id:"drawCancel",label:"Cancel",variant:"tertiary",hiddenWhen:e=>{var{pluginState:t}=e;return!t.mode}},f)],api:{newPolygon:(e,t)=>{var{mapState:r,pluginState:a,mapProvider:o,services:n}=e,{dispatch:i}=a,{sketchViewModel:p,sketchLayer:l}=o,{eventBus:c}=n;p.layer=l;var d=p.on("create",e=>{if("complete"===e.state){e.graphic.attributes={id:t},requestAnimationFrame(()=>{p.update(e.graphic,{tool:"reshape",toggleToolOnClick:!1})});var r=y(e.graphic);c.emit("draw:created",r),i({type:"SET_FEATURE",payload:{tempFeature:r}}),d.remove()}});p.polygonSymbol=u(r.mapStyle.mapColorScheme),p.create("polygon"),i({type:"SET_MODE",payload:"new-polygon"})},editFeature:(e,t)=>{var{pluginState:r,mapProvider:a}=e,{dispatch:o}=r,{sketchViewModel:n,sketchLayer:i}=a,p=i.graphics.items.find(e=>e.attributes.id===t),l=p.geometry.extent,c=[l.xmin,l.ymin,l.xmax,l.ymax];a.fitToBounds(c),n.layer=i,n.update(p,{tool:"reshape",toggleToolOnClick:!1,enableRotation:!1,enableScaling:!1}),o({type:"SET_FEATURE",payload:{feature:y(p)}}),o({type:"SET_MODE",payload:"edit-feature"})},addFeature:(e,t)=>{var{pluginState:r,mapState:a,mapProvider:o,services:n}=e,{dispatch:i}=r,{mapStyle:p}=a,{sketchViewModel:l,sketchLayer:c,emptySketchLayer:d}=o,{eventBus:s}=n,u=m(t.id,t.geometry.coordinates,p.mapColorScheme);c.add(u),l.layer=d,i({type:"SET_FEATURE",payload:{feature:t}}),s.emit("draw:add",t)},deleteFeature:(e,t)=>{var{pluginState:r,mapProvider:a,services:o}=e,{dispatch:n}=r,{sketchViewModel:i,sketchLayer:p,emptySketchLayer:l}=a,{eventBus:c}=o,d=p.graphics.items.find(e=>e.attributes.id===t);i.cancel(),p.remove(d),i.layer=l,n({type:"SET_FEATURE",payload:{feature:null,tempFeature:null}}),c.emit("draw:delete",{featureId:t}),n({type:"SET_MODE",payload:null})}}};export{E as manifest};
1
+ import e from"@babel/runtime/helpers/defineProperty";import{useEffect as t}from"preact/compat";import r from"@arcgis/core/widgets/Sketch/SketchViewModel.js";import a from"@arcgis/core/layers/GraphicsLayer.js";import o from"@babel/runtime/helpers/asyncToGenerator";import*as n from"@arcgis/core/geometry/operators/simplifyOperator.js";import i from"@arcgis/core/Graphic.js";function p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function l(t){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?p(Object(a),!0).forEach(function(r){e(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):p(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}var c={APP_ADD_MARKER:"app:addmarker",APP_REMOVE_MARKER:"app:removemarker",APP_SET_MODE:"app:setmode",APP_REVERT_MODE:"app:revertmode",APP_ADD_BUTTON:"app:addbutton",APP_TOGGLE_BUTTON_STATE:"app:togglebuttonstate",APP_ADD_PANEL:"app:addpanel",APP_REMOVE_PANEL:"app:removepanel",APP_SHOW_PANEL:"app:showpanel",APP_HIDE_PANEL:"app:hidepanel",APP_ADD_CONTROL:"app:addcontrol",APP_READY:"app:ready",APP_OPENED:"app:opened",APP_CLOSED:"app:closed",APP_PANEL_OPENED:"app:panelopened",APP_PANEL_CLOSED:"app:panelclosed",MAP_SET_STYLE:"map:setstyle",MAP_SET_SIZE:"map:setsize",MAP_SET_PIXEL_RATIO:"map:setpixelratio",MAP_FIT_TO_BOUNDS:"map:fittobounds",MAP_SET_VIEW:"map:setview",MAP_INIT_MAP_STYLES:"map:initmapstyles",MAP_STYLE_CHANGE:"map:stylechange",MAP_LOADED:"map:loaded",MAP_READY:"map:ready",MAP_SIZE_CHANGE:"map:sizechange",MAP_FIRST_IDLE:"map:firstidle",MAP_MOVE_START:"map:movestart",MAP_MOVE:"map:move",MAP_MOVE_END:"map:moveend",MAP_STATE_UPDATED:"map:stateupdated",MAP_DATA_CHANGE:"map:datachange",MAP_RENDER:"map:render",MAP_CLICK:"map:click",MAP_DESTROY:"map:destroy"};function d(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function s(t){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?d(Object(a),!0).forEach(function(r){e(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):d(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}function u(e){return{type:"simple-fill",color:[0,120,255,.2],outline:{color:"dark"===e?"#ffffff":"#d4351c",width:2}}}function m(e,t,r){return new i({geometry:{type:"polygon",rings:t,spatialReference:27700},attributes:{id:e},symbol:u(r)})}function y(e){if(null==e||!e.geometry)throw new Error("Invalid graphic");var{geometry:t,attributes:r={}}=e;switch(t.type){case"point":return{type:"Feature",geometry:{type:"Point",coordinates:[t.x,t.y]},properties:s({},r)};case"polyline":return{type:"Feature",geometry:{type:"LineString",coordinates:t.paths[0]},properties:s({},r)};case"polygon":return{type:"Feature",geometry:{type:"Polygon",coordinates:t.rings},properties:s({},r)};default:throw new Error("Unsupported geometry type: ".concat(t.type))}}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function f(t){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?v(Object(a),!0).forEach(function(r){e(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):v(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}var h={mobile:{slot:"actions",showLabel:!0},tablet:{slot:"actions",showLabel:!0},desktop:{slot:"actions",showLabel:!0}},E={reducer:{initialState:{mode:null,feature:null,tempFeature:null},actions:{SET_MODE:(e,t)=>l(l({},e),{},{mode:t}),SET_FEATURE:(e,t)=>l(l({},e),{},{feature:void 0===t.feature?e.feature:t.feature,tempFeature:void 0===t.tempFeature?e.tempFeature:t.tempFeature})}},InitComponent:e=>{var i,p,l,d,{appState:s,mapState:v,pluginConfig:f,pluginState:h,services:E,mapProvider:P,buttonConfig:g}=e,{eventBus:O}=E,{mapColorScheme:_}=v.mapStyle||{},S=null===(i=null===(p=f.includeModes)||void 0===p?void 0:p.includes(s.mode))||void 0===i||i,b=null!==(l=null===(d=f.excludeModes)||void 0===d?void 0:d.includes(s.mode))&&void 0!==l&&l,A=v.isMapReady&&S&&!b;t(()=>{if(A&&!P.sketchViewModel){var{sketchViewModel:e,sketchLayer:t,emptySketchLayer:o}=(e=>{var{mapProvider:t}=e,{view:o}=t,n=new a({id:"sketchLayer"});o.map.add(n);var i=new a({id:"emptySketchLayer"});return o.map.add(i),{sketchViewModel:new r({view:o,layer:i,defaultUpdateOptions:{tool:"reshape",updateOnGraphicClick:!1,multipleSelectionEnabled:!1,toggleToolOnClick:!1,highlightOptions:{enabled:!1}}}),emptySketchLayer:i,sketchLayer:n}})({mapProvider:P});return P.sketchViewModel=e,P.sketchLayer=t,P.emptySketchLayer=o,O.emit("draw:ready"),()=>{P.sketchViewModel=null,P.sketchLayer=null,P.emptySketchLayer=null}}},[v.isMapReady,s.mode]),t(()=>{if(A&&P.sketchViewModel){var e=function(e){var{pluginState:t,mapProvider:r,events:a,eventBus:i,buttonConfig:p,mapColorScheme:l}=e,{view:c,sketchViewModel:d,sketchLayer:s,emptySketchLayer:v}=r;if(!d)return null;var{drawDone:f,drawCancel:h}=p,{dispatch:E,mode:P,feature:g}=t,O=function(){var e=o(function*(){var e,r=null===(e=t.feature)||void 0===e||null===(e=e.properties)||void 0===e?void 0:e.id,a=null,o="active"===d.state&&!r;if("active"===d.state&&r&&(d.cancel(),yield new Promise(e=>setTimeout(e,50))),d.polygonSymbol=u(l),null==s||s.graphics.items.forEach(e=>{var t=m(e.attributes.id,e.geometry.rings,l);e.symbol=t.symbol,r===e.attributes.id&&(a=e)}),a&&!o&&d.layer===s)try{yield d.update(a,{tool:"reshape",toggleToolOnClick:!1})}catch(e){"AbortError"!==e.name&&console.error("Error updating sketch:",e)}});return function(){return e.apply(this,arguments)}}(),_=()=>{var e,t,r=null!==(e=null===(t=s.graphics)||void 0===t||null===(t=t.items)||void 0===t?void 0:t[0])&&void 0!==e?e:null;r&&setTimeout(()=>d.update(r),0)},S=()=>O(),b=e=>{if(e){var t=y(e);i.emit("draw:updated",t),E({type:"SET_FEATURE",payload:{tempFeature:t}})}},A=function(){var e=o(function*(){P&&((d.updateGraphics||[]).length||_())});return function(){return e.apply(this,arguments)}}(),w=function(){var e=o(function*(e){var{toolEventInfo:t}=e,r=null==e?void 0:e.graphic;if(r&&"vertex-add"===(null==t?void 0:t.type)){var a,o,n=null===(a=r.geometry)||void 0===a?void 0:a.rings;(null==n?void 0:n.length)>1?setTimeout(()=>d.undo(),0):(null==n||null===(o=n[0])||void 0===o?void 0:o.length)>3&&b(r)}});return function(t){return e.apply(this,arguments)}}(),T=function(){var e=o(function*(e){var t,r=null==e||null===(t=e.graphics)||void 0===t?void 0:t[0];b(r)});return function(t){return e.apply(this,arguments)}}();i.on(a.MAP_STYLE_CHANGE,S);var M=d.on("update",e=>{var t,r=null===(t=e.toolEventInfo)||void 0===t?void 0:t.type,a=e.graphics[0];"move-start"===r&&(d.cancel(),_()),"reshape"===r&&(n.isSimple(a.geometry)||d.undo()),"reshape-stop"!==r&&"vertex-remove"!==r||b(a)}),k=c.on("click",A),D=d.on("create",w),L=d.on("undo",T),j=f.onClick,C=h.onClick;return f.onClick=()=>{d.cancel(),d.layer=v,E({type:"SET_MODE",payload:null}),E({type:"SET_FEATURE",payload:{feature:null,tempFeature:null}}),i.emit("draw:done",{newFeature:t.tempFeature})},h.onClick=()=>{if(d.cancel(),s.removeAll(),g){var e=m(g.id||g.properties.id,g.geometry.coordinates,l);s.add(e)}d.layer=v,E({type:"SET_MODE",payload:null}),i.emit("draw:cancelled")},()=>{i.off(a.MAP_STYLE_CHANGE,S),M.remove(),k.remove(),D.remove(),L.remove(),f.onClick=j,h.onClick=C}}({pluginState:h,mapProvider:P,events:c,eventBus:O,buttonConfig:g,mapColorScheme:_});return()=>{e()}}},[A,_,h])},buttons:[f({id:"drawDone",label:"Done",variant:"primary",hiddenWhen:e=>{var{pluginState:t}=e;return!t.mode},enableWhen:e=>{var{pluginState:t}=e;return!!t.tempFeature}},h),f({id:"drawCancel",label:"Cancel",variant:"tertiary",hiddenWhen:e=>{var{pluginState:t}=e;return!t.mode}},h)],api:{newPolygon:(e,t)=>{var{mapState:r,pluginState:a,mapProvider:o,services:n}=e,{dispatch:i}=a,{sketchViewModel:p,sketchLayer:l}=o,{eventBus:c}=n;p.layer=l;var d=p.on("create",e=>{if("complete"===e.state){e.graphic.attributes={id:t},requestAnimationFrame(()=>{p.update(e.graphic,{tool:"reshape",toggleToolOnClick:!1})});var r=y(e.graphic);c.emit("draw:created",r),i({type:"SET_FEATURE",payload:{tempFeature:r}}),d.remove()}});p.polygonSymbol=u(r.mapStyle.mapColorScheme),p.create("polygon"),i({type:"SET_MODE",payload:"new-polygon"})},editFeature:(e,t)=>{var{pluginState:r,mapProvider:a}=e,{dispatch:o}=r,{sketchViewModel:n,sketchLayer:i}=a,p=i.graphics.items.find(e=>e.attributes.id===t),l=p.geometry.extent,c=[l.xmin,l.ymin,l.xmax,l.ymax];a.fitToBounds(c),n.layer=i,n.update(p,{tool:"reshape",toggleToolOnClick:!1,enableRotation:!1,enableScaling:!1}),o({type:"SET_FEATURE",payload:{feature:y(p)}}),o({type:"SET_MODE",payload:"edit-feature"})},addFeature:(e,t)=>{var{pluginState:r,mapState:a,mapProvider:o,services:n}=e,{dispatch:i}=r,{mapStyle:p}=a,{sketchViewModel:l,sketchLayer:c,emptySketchLayer:d}=o,{eventBus:s}=n,u=m(t.id,t.geometry.coordinates,p.mapColorScheme);c.add(u),l.layer=d,i({type:"SET_FEATURE",payload:{feature:t}}),s.emit("draw:add",t)},deleteFeature:(e,t)=>{var{pluginState:r,mapProvider:a,services:o}=e,{dispatch:n}=r,{sketchViewModel:i,sketchLayer:p,emptySketchLayer:l}=a,{eventBus:c}=o,d=p.graphics.items.find(e=>e.attributes.id===t);i.cancel(),p.remove(d),i.layer=l,n({type:"SET_FEATURE",payload:{feature:null,tempFeature:null}}),c.emit("draw:delete",{featureId:t}),n({type:"SET_MODE",payload:null})}}};export{E as manifest};
@@ -1,21 +1,4 @@
1
- .touch-vertex-target circle {
2
- fill: var(--map-overlay-foreground-color);
3
- }
4
- .touch-vertex-target path {
5
- fill: var(--map-overlay-halo-color);
6
- }
7
-
8
- .im-c-actions .im-c-button-wrapper--draw-done,
9
- .im-c-actions .im-c-button-wrapper--draw-menu,
10
- .im-c-actions .im-c-button-wrapper--draw-cancel {
11
- width: 33.33%;
12
- }
13
-
14
- .im-o-app--tablet .im-c-actions .im-c-button-wrapper--draw-done,
15
- .im-o-app--tablet .im-c-actions .im-c-button-wrapper--draw-menu,
16
- .im-o-app--tablet .im-c-actions .im-c-button-wrapper--draw-cancel,
17
- .im-o-app--desktop .im-c-actions .im-c-button-wrapper--draw-done,
18
- .im-o-app--desktop .im-c-actions .im-c-button-wrapper--draw-menu,
19
- .im-o-app--desktop .im-c-actions .im-c-button-wrapper--draw-cancel {
1
+ .touch-vertex-target circle{fill:var(--map-overlay-foreground-color)}.touch-vertex-target path{fill:var(--map-overlay-halo-color)}.im-c-actions .im-c-button-wrapper--draw-done,.im-c-actions .im-c-button-wrapper--draw-menu,.im-c-actions .im-c-button-wrapper--draw-cancel{width:33.33%}.im-o-app--tablet .im-c-actions .im-c-button-wrapper--draw-done,.im-o-app--tablet .im-c-actions .im-c-button-wrapper--draw-menu,.im-o-app--tablet .im-c-actions .im-c-button-wrapper--draw-cancel,.im-o-app--desktop .im-c-actions .im-c-button-wrapper--draw-done,.im-o-app--desktop .im-c-actions .im-c-button-wrapper--draw-menu,.im-o-app--desktop .im-c-actions .im-c-button-wrapper--draw-cancel{width:100px}
2
+ rapper--draw-cancel {
20
3
  width: 100px;
21
4
  }