@defra/interactive-map 0.0.8-alpha → 0.0.9-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.
- package/dist/esm/im-core.js +1 -0
- package/dist/esm/im-shell.js +1 -0
- package/dist/esm/index.js +1 -2
- package/dist/umd/im-core.js +1 -1
- package/dist/umd/index.js +1 -1
- package/docs/api/button-definition.md +104 -3
- package/docs/api.md +21 -1
- package/docs/getting-started.md +78 -8
- package/package.json +31 -24
- package/plugins/beta/datasets/dist/css/index.css +50 -1
- package/plugins/beta/datasets/dist/esm/im-datasets-plugin.js +1 -0
- package/plugins/beta/datasets/dist/esm/index.js +1 -2
- package/plugins/beta/draw-es/dist/esm/im-draw-es-plugin.js +1 -0
- package/plugins/beta/draw-es/dist/esm/index.js +1 -2
- package/plugins/beta/draw-ml/dist/esm/im-draw-ml-plugin.js +1 -0
- package/plugins/beta/draw-ml/dist/esm/index.js +1 -2
- package/plugins/beta/frame/dist/css/index.css +11 -1
- package/plugins/beta/frame/dist/esm/im-frame-plugin.js +1 -0
- package/plugins/beta/frame/dist/esm/index.js +1 -2
- package/plugins/beta/map-styles/dist/css/index.css +79 -1
- package/plugins/beta/map-styles/dist/esm/im-map-styles-plugin.js +1 -0
- package/plugins/beta/map-styles/dist/esm/index.js +1 -2
- package/plugins/beta/scale-bar/dist/esm/im-scale-bar-plugin.js +1 -0
- package/plugins/beta/scale-bar/dist/esm/index.js +1 -2
- package/plugins/beta/use-location/dist/esm/im-use-location-plugin.js +1 -0
- package/plugins/beta/use-location/dist/esm/index.js +1 -2
- package/plugins/beta/use-location/dist/umd/index.js +1 -1
- package/plugins/interact/dist/esm/im-interact-plugin.js +1 -0
- package/plugins/interact/dist/esm/index.js +1 -2
- package/plugins/search/dist/esm/im-search-plugin.js +1 -0
- package/plugins/search/dist/esm/index.js +1 -2
- package/plugins/search/src/components/Suggestions/Suggestions.module.scss +1 -1
- package/plugins/search/src/search.scss +1 -1
- package/providers/beta/esri/dist/css/index.css +30 -1
- package/providers/beta/esri/dist/esm/im-esri-provider.js +1 -0
- package/providers/beta/esri/dist/esm/index.js +1 -2
- package/providers/beta/open-names/dist/esm/im-reverse-geocode.js +1 -0
- package/providers/beta/open-names/dist/esm/index.js +1 -2
- package/providers/beta/open-names/src/utils/mapToLocationModel.test.js +61 -0
- package/providers/maplibre/dist/esm/im-maplibre-provider.js +1 -0
- package/providers/maplibre/dist/esm/index.js +1 -2
- package/providers/maplibre/dist/umd/im-maplibre-provider.js +1 -1
- package/providers/maplibre/src/appEvents.test.js +44 -0
- package/providers/maplibre/src/index.test.js +60 -0
- package/providers/maplibre/src/mapEvents.test.js +115 -0
- package/providers/maplibre/src/maplibreProvider.test.js +205 -0
- package/providers/maplibre/src/utils/calculateLinearTextSize.test.js +31 -0
- package/providers/maplibre/src/utils/detectWebgl.test.js +63 -0
- package/providers/maplibre/src/utils/highlightFeatures.test.js +126 -0
- package/providers/maplibre/src/utils/labels.js +1 -3
- package/providers/maplibre/src/utils/labels.test.js +231 -0
- package/providers/maplibre/src/utils/maplibreFixes.test.js +66 -0
- package/providers/maplibre/src/utils/queryFeatures.test.js +60 -0
- package/providers/maplibre/src/utils/spatial.js +5 -4
- package/providers/maplibre/src/utils/spatial.test.js +96 -0
- package/rollup.esm.mjs +288 -0
- package/src/App/store/appActionsMap.js +1 -1
- package/src/InteractiveMap/InteractiveMap.js +3 -2
- package/webpack.dev.mjs +9 -1
- package/webpack.prod.mjs +8 -1
- package/webpack.umd.mjs +1 -2
- package/dist/esm/index.js.LICENSE.txt +0 -1
- package/plugins/beta/datasets/dist/esm/index.js.LICENSE.txt +0 -1
- package/plugins/beta/draw-es/dist/esm/index.js.LICENSE.txt +0 -1
- package/plugins/beta/draw-ml/dist/esm/index.js.LICENSE.txt +0 -1
- package/plugins/beta/frame/dist/esm/index.js.LICENSE.txt +0 -1
- package/plugins/beta/map-styles/dist/esm/index.js.LICENSE.txt +0 -1
- package/plugins/beta/scale-bar/dist/esm/index.js.LICENSE.txt +0 -1
- package/plugins/beta/use-location/dist/esm/index.js.LICENSE.txt +0 -1
- package/plugins/interact/dist/esm/index.js.LICENSE.txt +0 -1
- package/plugins/search/dist/esm/index.js.LICENSE.txt +0 -1
- package/providers/beta/esri/dist/esm/index.js.LICENSE.txt +0 -1
- package/providers/beta/open-names/dist/esm/index.js.LICENSE.txt +0 -1
- package/providers/maplibre/dist/esm/index.js.LICENSE.txt +0 -6
- package/webpack.esm.mjs +0 -154
|
@@ -1 +1,11 @@
|
|
|
1
|
-
.im-c-frame-spacer{
|
|
1
|
+
.im-c-frame-spacer {
|
|
2
|
+
position: absolute;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.im-c-frame-display {
|
|
6
|
+
position: absolute;
|
|
7
|
+
background: transparent;
|
|
8
|
+
border: 2px solid #fff;
|
|
9
|
+
z-index: 1;
|
|
10
|
+
box-shadow: 0 0 0 10000px rgba(0, 0, 0, 0.5);
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useEffect as e,useRef as t,useState as r}from"preact/compat";import{jsxs as n,Fragment as o,jsx as i}from"preact/jsx-runtime";import a from"@babel/runtime/helpers/defineProperty";function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach(function(t){a(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function p(e){var t;if(null==e||null===(t=e.geometry)||void 0===t||null===(t=t.coordinates)||void 0===t||!t[0])return null;var r=e.geometry.coordinates[0],n=1/0,o=1/0,i=-1/0,a=-1/0;return r.forEach(e=>{var[t,r]=e;t<n&&(n=t),t>i&&(i=t),r<o&&(o=r),r>a&&(a=r)}),[n,o,i,a]}function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?f(Object(r),!0).forEach(function(t){a(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):f(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var s={aspectRatio:1,mobileWidth:"300px",tabletWidth:"360px",desktopWidth:"400px"};function d(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function b(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){a(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}function m(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?m(Object(r),!0).forEach(function(t){a(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):m(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function v(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?O(Object(r),!0).forEach(function(t){a(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):O(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var g={mobile:{slot:"actions",showLabel:!0},tablet:{slot:"actions",showLabel:!0},desktop:{slot:"actions",showLabel:!0}},h={reducer:{initialState:{frame:null,frameRefs:null},actions:{SET_FRAME:(e,t)=>l(l({},e),{},{frame:t}),SET_FRAME_REFS:(e,t)=>l(l({},e),{},{frameRefs:t})}},InitComponent:t=>{var r,n,o,i,{appState:a,mapState:c,mapProvider:l,pluginConfig:p,pluginState:f,services:u,buttonConfig:s}=t,{mode:d,breakpoint:b,layoutRefs:m}=a,{eventBus:y}=u,{frameDone:O,frameCancel:v}=s,{dispatch:g,frameRefs:h,frame:j}=f,P=null===(r=null===(n=p.includeModes)||void 0===n?void 0:n.includes(d))||void 0===r||r,w=null!==(o=null===(i=p.excludeModes)||void 0===i?void 0:i.includes(d))&&void 0!==o&&o,S=c.isMapReady&&P&&!w;e(()=>{if(S)return O.onClick=()=>{var e=function(e){var{frameEl:t,viewportEl:r,mapProvider:n,featureId:o,scale:i}=e,a=t.getBoundingClientRect(),c=r.getBoundingClientRect(),l={x:(a.left-c.left)/i,y:(a.top-c.top)/i},p={x:(a.right-c.left)/i,y:(a.top-c.top)/i},f={x:(a.right-c.left)/i,y:(a.bottom-c.top)/i},u={x:(a.left-c.left)/i,y:(a.bottom-c.top)/i},s={type:"Feature",geometry:{type:"Polygon",coordinates:[[n.screenToMap(l),n.screenToMap(p),n.screenToMap(f),n.screenToMap(u),n.screenToMap(l)]]},properties:{}};return o&&(s.id=o),s}({frameEl:h.displayRef.current,viewportEl:m.viewportRef.current,featureId:null==j?void 0:j.featureId,scale:{small:1,medium:1.5,large:2}[c.mapSize],mapProvider:l});g({type:"SET_FRAME",payload:null}),y.emit("frame:done",e)},v.onClick=()=>{g({type:"SET_FRAME",payload:null}),y.emit("frame:cancel")},()=>{O.onClick=null,v.onClick=null}},[c.isMapReady,d,b,j,h,m,l,g,y,O,v])},controls:[{id:"frame",label:"Frame",mobile:{slot:"middle"},tablet:{slot:"middle"},desktop:{slot:"middle"},render:function(a){var c,{appState:l,mapState:p,pluginState:f,mapProvider:s}=a,{actionsRef:d,mainRef:b,footerRef:m,viewportRef:y}=l.layoutRefs,{dispatch:O}=f,v=t(null),g=t(null),h=t(null),[j,P]=r("65px"),[w,S]=r(null);return e(()=>{O({type:"SET_FRAME_REFS",payload:{displayRef:g}})},[]),e(()=>{if(f.frame&&v.current){var e=v.current,t=()=>{if(d.current&&b.current&&m.current){var t=b.current.offsetHeight,r=m.current.offsetTop,n=d.current.offsetTop,o=t-Math.min(n,r)+10;P("65px 65px ".concat(o,"px 65px"));var{offsetWidth:i,offsetHeight:a}=e;if(t-o-e.offsetTop===e.offsetHeight){var{top:c,left:p,width:u,height:s}=function(e,t,r,n){var o=Number.parseInt(r["".concat(n,"Width")]||e,10),i=Math.min(o,e),a=i/r.aspectRatio;return a>t&&(i=(a=t)*r.aspectRatio),{top:(t-a)/2,left:(e-i)/2,width:i,height:a}}(i,a,f.frame,l.breakpoint),y=c+e.offsetTop,O=p+e.offsetLeft;S({top:"".concat(y,"px"),left:"".concat(O,"px"),width:"".concat(u,"px"),height:"".concat(s,"px")})}}},r=new window.ResizeObserver(t);return r.observe(e),t(),()=>r.disconnect()}h.current=null},[f.frame,l.breakpoint,d,b,m]),e(()=>{var e;if(null!==(e=f.frame)&&void 0!==e&&e.bounds&&g.current&&y.current&&w){var t=g.current,r=y.current,n=t.getBoundingClientRect(),o=r.getBoundingClientRect(),i={small:1,medium:1.5,large:2}[p.mapSize],a={top:(n.top-o.top)/i,right:(o.right-n.right)/i,bottom:(o.bottom-n.bottom)/i,left:(n.left-o.left)/i};s.setPadding(a),s.fitToBounds(f.frame.bounds,!0)}},[null===(c=f.frame)||void 0===c?void 0:c.bounds,w,s,g,y]),f.frame?n(o,{children:[i("div",{className:"im-c-frame-spacer",style:{inset:j},ref:v}),w&&i("div",{ref:g,className:"im-c-frame-display",style:u({},w)})]}):null}}],buttons:[v({id:"frameDone",label:"Done",variant:"primary",hiddenWhen:e=>{var{pluginState:t}=e;return!t.frame}},g),v({id:"frameCancel",label:"Cancel",variant:"tertiary",hiddenWhen:e=>{var{pluginState:t}=e;return!t.frame}},g)],api:{addFrame:function(e,t){var{pluginConfig:r,pluginState:n,services:o}=e,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{dispatch:a}=n,{eventBus:c}=o;a({type:"SET_FRAME",payload:b(b(b(b({},s),r),i),{},{featureId:t})}),c.emit("frame:add")},editFeature:function(e,t){var{pluginConfig:r,pluginState:n,mapProvider:o,services:i}=e,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{dispatch:c}=n,{eventBus:l}=i,f=p(t),u=function(e,t){var r=p(e);if(!r)return null;var[n,o,i,a]=r,c=t.mapToScreen([n,a]),l=t.mapToScreen([i,o]),f=Math.abs(l.x-c.x),u=Math.abs(l.y-c.y);return 0===u?null:Math.round(f/u*1e6)/1e6}(t,o),d=y(y(y(y({},s),r),a),{},{aspectRatio:u,featureId:(null==t?void 0:t.id)||t.properties.id});c({type:"SET_FRAME",payload:y(y({},d),{},{bounds:f})}),l.emit("frame:edit")}}};export{h as manifest};
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import{useEffect as t,useRef as e,useState as r}from"react";import{Fragment as n,jsx as o,jsxs as i}from"react/jsx-runtime";var u={"./plugins/beta/frame/src/manifest.js"(u,a,c){function f(t){return f="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},f(t)}function l(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?l(Object(r),!0).forEach(function(e){s(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):l(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function s(t,e,r){return(e=function(t){var e=function(t){if("object"!=f(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=f(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==f(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function y(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,u,a=[],c=!0,f=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(a.push(n.value),a.length!==e);c=!0);}catch(t){f=!0,o=t}finally{try{if(!c&&null!=r.return&&(u=r.return(),Object(u)!==u))return}finally{if(f)throw o}}return a}}(t,e)||function(t,e){if(t){if("string"==typeof t)return b(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)?b(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 b(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 m(t){var e;if(null==t||null===(e=t.geometry)||void 0===e||null===(e=e.coordinates)||void 0===e||!e[0])return null;var r=t.geometry.coordinates[0],n=1/0,o=1/0,i=-1/0,u=-1/0;return r.forEach(function(t){var e=y(t,2),r=e[0],a=e[1];r<n&&(n=r),r>i&&(i=r),a<o&&(o=a),a>u&&(u=a)}),[n,o,i,u]}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 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 g(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){O(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 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}function h(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,u,a=[],c=!0,f=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(a.push(n.value),a.length!==e);c=!0);}catch(t){f=!0,o=t}finally{try{if(!c&&null!=r.return&&(u=r.return(),Object(u)!==u))return}finally{if(f)throw o}}return a}}(t,e)||function(t,e){if(t){if("string"==typeof t)return j(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)?j(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 j(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}c.d(a,{manifest:()=>I}),c.r(a);var S={aspectRatio:1,mobileWidth:"300px",tabletWidth:"360px",desktopWidth:"400px"};function w(t){return w="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},w(t)}function P(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 E(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?P(Object(r),!0).forEach(function(e){T(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):P(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function T(t,e,r){return(e=function(t){var e=function(t){if("object"!=w(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=w(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==w(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function R(t){return R="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},R(t)}function x(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 D(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?x(Object(r),!0).forEach(function(e){M(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):x(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function M(t,e,r){return(e=function(t){var e=function(t){if("object"!=R(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=R(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==R(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function A(t){return A="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},A(t)}function k(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 C(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?k(Object(r),!0).forEach(function(e){F(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):k(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function F(t,e,r){return(e=function(t){var e=function(t){if("object"!=A(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=A(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==A(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var _={mobile:{slot:"actions",showLabel:!0},tablet:{slot:"actions",showLabel:!0},desktop:{slot:"actions",showLabel:!0}},I={reducer:{initialState:{frame:null,frameRefs:null},actions:{SET_FRAME:function(t,e){return p(p({},t),{},{frame:e})},SET_FRAME_REFS:function(t,e){return p(p({},t),{},{frameRefs:e})}}},InitComponent:function(e){var r,n,o,i,u=e.appState,a=e.mapState,c=e.mapProvider,f=e.pluginConfig,l=e.pluginState,p=e.services,s=e.buttonConfig,y=u.mode,b=u.breakpoint,m=u.layoutRefs,v=p.eventBus,d=s.frameDone,g=s.frameCancel,O=l.dispatch,h=l.frameRefs,j=l.frame,S=null===(r=null===(n=f.includeModes)||void 0===n?void 0:n.includes(y))||void 0===r||r,w=null!==(o=null===(i=f.excludeModes)||void 0===i?void 0:i.includes(y))&&void 0!==o&&o,P=a.isMapReady&&S&&!w;t(function(){if(P)return d.onClick=function(){var t=function(t){var e=t.viewportEl,r=t.mapProvider,n=t.featureId,o=t.scale,i=t.frameEl.getBoundingClientRect(),u=e.getBoundingClientRect(),a={x:(i.left-u.left)/o,y:(i.top-u.top)/o},c={x:(i.right-u.left)/o,y:(i.top-u.top)/o},f={x:(i.right-u.left)/o,y:(i.bottom-u.top)/o},l={x:(i.left-u.left)/o,y:(i.bottom-u.top)/o},p={type:"Feature",geometry:{type:"Polygon",coordinates:[[r.screenToMap(a),r.screenToMap(c),r.screenToMap(f),r.screenToMap(l),r.screenToMap(a)]]},properties:{}};return n&&(p.id=n),p}({frameEl:h.displayRef.current,viewportEl:m.viewportRef.current,featureId:null==j?void 0:j.featureId,scale:{small:1,medium:1.5,large:2}[a.mapSize],mapProvider:c});O({type:"SET_FRAME",payload:null}),v.emit("frame:done",t)},g.onClick=function(){O({type:"SET_FRAME",payload:null}),v.emit("frame:cancel")},function(){d.onClick=null,g.onClick=null}},[a.isMapReady,y,b,j,h,m,c,O,v,d,g])},controls:[{id:"frame",label:"Frame",mobile:{slot:"middle"},tablet:{slot:"middle"},desktop:{slot:"middle"},render:function(u){var a,c=u.appState,f=u.mapState,l=u.pluginState,p=u.mapProvider,s=c.layoutRefs,y=s.actionsRef,b=s.mainRef,m=s.footerRef,v=s.viewportRef,d=l.dispatch,O=e(null),j=e(null),S=e(null),w=h(r("65px"),2),P=w[0],E=w[1],T=h(r(null),2),R=T[0],x=T[1];return t(function(){d({type:"SET_FRAME_REFS",payload:{displayRef:j}})},[]),t(function(){if(l.frame&&O.current){var t=O.current,e=function(){if(y.current&&b.current&&m.current){var e=b.current.offsetHeight,r=m.current.offsetTop,n=y.current.offsetTop,o=e-Math.min(n,r)+10;E("65px 65px ".concat(o,"px 65px"));var i=t.offsetWidth,u=t.offsetHeight;if(e-o-t.offsetTop===t.offsetHeight){var a=function(t,e,r,n){var o=Number.parseInt(r["".concat(n,"Width")]||t,10),i=Math.min(o,t),u=i/r.aspectRatio;return u>e&&(i=(u=e)*r.aspectRatio),{top:(e-u)/2,left:(t-i)/2,width:i,height:u}}(i,u,l.frame,c.breakpoint),f=a.top,p=a.left,s=a.width,v=a.height,d=f+t.offsetTop,g=p+t.offsetLeft;x({top:"".concat(d,"px"),left:"".concat(g,"px"),width:"".concat(s,"px"),height:"".concat(v,"px")})}}},r=new window.ResizeObserver(e);return r.observe(t),e(),function(){return r.disconnect()}}S.current=null},[l.frame,c.breakpoint,y,b,m]),t(function(){var t;if(null!==(t=l.frame)&&void 0!==t&&t.bounds&&j.current&&v.current&&R){var e=j.current,r=v.current,n=e.getBoundingClientRect(),o=r.getBoundingClientRect(),i={small:1,medium:1.5,large:2}[f.mapSize],u={top:(n.top-o.top)/i,right:(o.right-n.right)/i,bottom:(o.bottom-n.bottom)/i,left:(n.left-o.left)/i};p.setPadding(u),p.fitToBounds(l.frame.bounds,!0)}},[null===(a=l.frame)||void 0===a?void 0:a.bounds,R,p,j,v]),l.frame?i(n,{children:[o("div",{className:"im-c-frame-spacer",style:{inset:P},ref:O}),R&&o("div",{ref:j,className:"im-c-frame-display",style:g({},R)})]}):null}}],buttons:[C({id:"frameDone",label:"Done",variant:"primary",hiddenWhen:function(t){return!t.pluginState.frame}},_),C({id:"frameCancel",label:"Cancel",variant:"tertiary",hiddenWhen:function(t){return!t.pluginState.frame}},_)],api:{addFrame:function(t,e){var r=t.pluginConfig,n=t.pluginState,o=t.services,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},u=n.dispatch,a=o.eventBus;u({type:"SET_FRAME",payload:E(E(E(E({},S),r),i),{},{featureId:e})}),a.emit("frame:add")},editFeature:function(t,e){var r=t.pluginConfig,n=t.pluginState,o=t.mapProvider,i=t.services,u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=n.dispatch,c=i.eventBus,f=m(e),l=function(t,e){var r=m(t);if(!r)return null;var n=y(r,4),o=n[0],i=n[1],u=n[2],a=n[3],c=e.mapToScreen([o,a]),f=e.mapToScreen([u,i]),l=Math.abs(f.x-c.x),p=Math.abs(f.y-c.y);return 0===p?null:Math.round(l/p*1e6)/1e6}(e,o),p=D(D(D(D({},S),r),u),{},{aspectRatio:l,featureId:(null==e?void 0:e.id)||e.properties.id});a({type:"SET_FRAME",payload:D(D({},p),{},{bounds:f})}),c.emit("frame:edit")}}}}},a={};function c(t){var e=a[t];if(void 0!==e)return e.exports;var r=a[t]={exports:{}};return u[t](r,r.exports,c),r.exports}c.d=(t,e)=>{for(var r in e)c.o(e,r)&&!c.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},c.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),c.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var f={};function l(t){return l="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},l(t)}function p(){var t,e,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var c=n&&n.prototype instanceof a?n:a,f=Object.create(c.prototype);return s(f,"_invoke",function(r,n,o){var i,a,c,f=0,l=o||[],p=!1,s={p:0,n:0,v:t,a:y,f:y.bind(t,4),d:function(e,r){return i=e,a=0,c=t,s.n=r,u}};function y(r,n){for(a=r,c=n,e=0;!p&&f&&!o&&e<l.length;e++){var o,i=l[e],y=s.p,b=i[2];r>3?(o=b===n)&&(c=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=t):i[0]<=y&&((o=r<2&&y<i[1])?(a=0,s.v=n,s.n=i[1]):y<b&&(o=r<3||i[0]>n||n>b)&&(i[4]=r,i[5]=n,s.n=b,a=0))}if(o||r>1)return u;throw p=!0,n}return function(o,l,b){if(f>1)throw TypeError("Generator is already running");for(p&&1===l&&y(l,b),a=l,c=b;(e=a<2?t:c)||!p;){i||(a?a<3?(a>1&&(s.n=-1),y(a,c)):s.n=c:s.v=c);try{if(f=2,i){if(a||(o="next"),e=i[o]){if(!(e=e.call(i,c)))throw TypeError("iterator result is not an object");if(!e.done)return e;c=e.value,a<2&&(a=0)}else 1===a&&(e=i.return)&&e.call(i),a<2&&(c=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=t}else if((e=(p=s.n<0)?c:r.call(n,s))!==u)break}catch(e){i=t,a=1,c=e}finally{f=1}}return{value:e,done:p}}}(r,o,i),!0),f}var u={};function a(){}function c(){}function f(){}e=Object.getPrototypeOf;var l=[][n]?e(e([][n]())):(s(e={},n,function(){return this}),e),y=f.prototype=a.prototype=Object.create(l);function b(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,s(t,o,"GeneratorFunction")),t.prototype=Object.create(y),t}return c.prototype=f,s(y,"constructor",f),s(f,"constructor",c),c.displayName="GeneratorFunction",s(f,o,"GeneratorFunction"),s(y),s(y,o,"Generator"),s(y,n,function(){return this}),s(y,"toString",function(){return"[object Generator]"}),(p=function(){return{w:i,m:b}})()}function s(t,e,r,n){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}s=function(t,e,r,n){function i(e,r){s(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))},s(t,e,r,n)}function y(t,e,r,n,o,i,u){try{var a=t[i](u),c=a.value}catch(t){return void r(t)}a.done?e(c):Promise.resolve(c).then(n,o)}function b(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 m(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?b(Object(r),!0).forEach(function(e){v(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):b(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function v(t,e,r){return(e=function(t){var e=function(t){if("object"!=l(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=l(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==l(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function d(){var t,e;return m(m({},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),{},{id:"frame",load:(t=p().m(function t(){var e;return p().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,Promise.resolve().then(c.bind(c,"./plugins/beta/frame/src/manifest.js"));case 1:return e=t.v.manifest,t.a(2,e)}},t)}),e=function(){var e=this,r=arguments;return new Promise(function(n,o){var i=t.apply(e,r);function u(t){y(i,n,o,u,a,"next",t)}function a(t){y(i,n,o,u,a,"throw",t)}u(void 0)})},function(){return e.apply(this,arguments)})})}c.d(f,{A:()=>d});const g=f.A;export{g as default};
|
|
1
|
+
import e from"@babel/runtime/helpers/asyncToGenerator";import r from"@babel/runtime/helpers/defineProperty";function t(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,n)}return t}function n(e){for(var n=1;n<arguments.length;n++){var o=null!=arguments[n]?arguments[n]:{};n%2?t(Object(o),!0).forEach(function(t){r(e,t,o[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):t(Object(o)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))})}return e}function o(){var r;return n(n({},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),{},{id:"frame",load:(r=e(function*(){return(yield import(/* webpackChunkName: "im-frame-plugin" */ "./im-frame-plugin.js")).manifest}),function(){return r.apply(this,arguments)})})}export{o as default};
|
|
@@ -1 +1,79 @@
|
|
|
1
|
-
.im-c-map-styles
|
|
1
|
+
.im-c-map-styles {
|
|
2
|
+
display: block;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.im-c-map-styles__inner {
|
|
6
|
+
display: flex;
|
|
7
|
+
flex-wrap: wrap;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.im-c-map-styles__heading {
|
|
11
|
+
padding: var(--primary-gap) 0;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.im-c-map-styles__item {
|
|
15
|
+
display: flex;
|
|
16
|
+
justify-content: center;
|
|
17
|
+
padding: calc(var(--divider-gap) / 2);
|
|
18
|
+
flex: 0 0 33.3333%;
|
|
19
|
+
box-sizing: border-box;
|
|
20
|
+
min-width: 90px;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.im-c-map-styles__button {
|
|
24
|
+
display: flex;
|
|
25
|
+
flex-direction: column;
|
|
26
|
+
align-items: center;
|
|
27
|
+
border: 0;
|
|
28
|
+
margin: 0;
|
|
29
|
+
color: var(--foreground-color);
|
|
30
|
+
background-color: transparent;
|
|
31
|
+
cursor: pointer;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.im-c-map-styles__image {
|
|
35
|
+
position: relative;
|
|
36
|
+
padding: 2px;
|
|
37
|
+
border: 3px solid transparent;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.im-c-map-styles__image svg {
|
|
41
|
+
fill: currentColor;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.im-c-map-styles__image-bg {
|
|
45
|
+
fill: none;
|
|
46
|
+
stroke: var(--image-placeholder-color);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.im-c-map-styles img {
|
|
50
|
+
display: block;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.im-c-map-styles__group:not(:first-child) {
|
|
54
|
+
margin-top: var(--divider-gap);
|
|
55
|
+
border-top: 1px solid var(--content-border-color);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.im-c-map-styles__button[aria-pressed=true] .im-c-map-styles__image {
|
|
59
|
+
border-color: var(--foreground-color);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.im-c-map-styles__button:focus {
|
|
63
|
+
outline: 0;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.im-c-map-styles__button[data-focus-visible=true] .im-c-map-styles__image::after {
|
|
67
|
+
content: "";
|
|
68
|
+
position: absolute;
|
|
69
|
+
top: -3px;
|
|
70
|
+
right: -3px;
|
|
71
|
+
bottom: -3px;
|
|
72
|
+
left: -3px;
|
|
73
|
+
outline: 3px solid var(--focus-outline-color);
|
|
74
|
+
border: 3px solid var(--focus-border-color);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.im-c-map-styles__button:hover:not([aria-pressed=true]) .im-c-map-styles__image {
|
|
78
|
+
border-color: var(--button-hover-color);
|
|
79
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useEffect as e,useContext as t,createContext as i}from"preact/compat";import{jsx as s,Fragment as l,jsxs as a}from"preact/jsx-runtime";import r from"@babel/runtime/helpers/defineProperty";new Set;function m(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),i.push.apply(i,s)}return i}function n(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?m(Object(i),!0).forEach(function(t){r(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):m(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}var c={slot:"middle",initiallyOpen:!1,dismissable:!0,modal:!0};n({},c),n(n({},c),{},{width:"500px"}),n(n({},c),{},{width:"500px"});var o={small:1,medium:1.5,large:2},p={InitComponent:function(t){var{pluginConfig:i,services:a}=t,{events:r,eventBus:m}=a,n=()=>{m.emit(r.MAP_INIT_MAP_STYLES,i.mapStyles)};return e(()=>(m.on(r.APP_READY,n),()=>m.off(r.APP_READY,n)),[]),s(l,{})},panels:[{id:"mapStyles",label:"Map styles",mobile:{slot:"bottom",modal:!0,dismissable:!0},tablet:{slot:"inset",modal:!0,width:"400px",dismissable:!0},desktop:{slot:"inset",modal:!0,width:"400px",dismissable:!0},render:e=>{var{mapState:t,pluginConfig:i,services:l,mapProvider:r}=e,{mapStyle:m,mapSize:n}=t,{mapStyles:c}=i,{events:p,eventBus:d}=l,{supportsMapSizes:h}=r.capabilities;return a("div",{className:"im-c-map-styles",children:[s("div",{className:"im-c-map-styles__group",children:s("div",{className:"im-c-map-styles__inner",children:c.filter(e=>e.url).map(e=>s("div",{className:"im-c-map-styles__item",children:a("button",{className:"im-c-map-styles__button","aria-pressed":e.id===m.id,onClick:()=>{return t=e,void d.emit(p.MAP_SET_STYLE,t);var t},children:[s("div",{className:"im-c-map-styles__image",children:s("img",{src:e.thumbnail||void 0,alt:"",height:"60",width:"60"})}),e.label]})},e.id))})}),h&&a("div",{className:"im-c-map-styles__group",children:[s("h3",{className:"im-c-map-styles__heading",id:"map-text-sizes",children:"Map size"}),s("div",{className:"im-c-map-styles__inner",children:["small","medium","large"].map(e=>s("div",{className:"im-c-map-styles__item",children:a("button",{className:"im-c-map-styles__button",onClick:()=>{return t=e,d.emit(p.MAP_SET_SIZE,t),void d.emit(p.MAP_SET_PIXEL_RATIO,window.devicePixelRatio*o[t]);var t},"aria-pressed":e===n,children:[s("div",{className:"im-c-map-styles__image",children:a("svg",{width:"60",height:"60",viewBox:"0 0 60 60",fillRule:"evenodd",children:[s("rect",{className:"im-c-map-styles__image-bg",width:"100%",height:"100%"}),s("g",{style:{transform:"scale(".concat(o[e],")"),transformOrigin:"8px 52px"},children:s("path",{d:"M8 51.785L12.948 38.9h1.837l5.274 12.885h-1.943l-1.503-3.903h-5.387l-1.415 3.903H8zm3.718-5.291h4.368l-1.345-3.569-.914-2.671c-.164.826-.395 1.646-.694 2.46l-1.415 3.78zm15.592 4.139c-3.698 3.143-7.836.271-6.315-2.562.963-1.794 5.529-1.982 6.183-2.21.022-.825.052-2.27-2.241-2.312-1.751-.031-2.242 1.025-2.435 1.776l-1.547-.211c.234-1.102.963-2.856 4.21-2.874 4.037-.022 3.612 2.962 3.612 3.524v2.11c0 .315 0 3.012.501 3.911h-1.652c-.164-.328-.27-.712-.316-1.152zm-.132-3.533c-.907.37-3.444.694-3.964.914-1.293.548-.911 2.399.225 2.637.639.134 3.739.476 3.739-2.971v-.58z"})})]})}),e[0].toUpperCase()+e.slice(1)]})},e))})]})]})}}],buttons:[{id:"mapStyles",label:"Styles",panelId:"mapStyles",iconId:"map",mobile:{slot:"top-left",showLabel:!1},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}}],icons:[{id:"map",svgContent:'<path d="M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z"/><path d="M15 5.764v15"/><path d="M9 3.236v15"/>'}]};export{p as manifest};
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import{createContext as e,useContext as t,useEffect as r}from"react";import{Fragment as n,jsx as i,jsxs as o}from"react/jsx-runtime";var a={"./plugins/beta/map-styles/src/manifest.js"(e,t,a){a.d(t,{manifest:()=>f}),a.r(t);new Set,new Set;function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function c(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?l(Object(r),!0).forEach(function(t){u(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):l(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function u(e,t,r){return(t=function(e){var t=function(e){if("object"!=s(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=s(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==s(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var p={slot:"middle",initiallyOpen:!1,dismissable:!0,modal:!0},m=(c({},p),c(c({},p),{},{width:"500px"}),c(c({},p),{},{width:"500px"}),{small:1,medium:1.5,large:2}),f={InitComponent:function(e){var t=e.pluginConfig,o=e.services,a=o.events,s=o.eventBus,l=function(){s.emit(a.MAP_INIT_MAP_STYLES,t.mapStyles)};return r(function(){return s.on(a.APP_READY,l),function(){return s.off(a.APP_READY,l)}},[]),i(n,{})},panels:[{id:"mapStyles",label:"Map styles",mobile:{slot:"bottom",modal:!0,dismissable:!0},tablet:{slot:"inset",modal:!0,width:"400px",dismissable:!0},desktop:{slot:"inset",modal:!0,width:"400px",dismissable:!0},render:function(e){var t=e.mapState,r=e.pluginConfig,n=e.services,a=e.mapProvider,s=t.mapStyle,l=t.mapSize,c=r.mapStyles,u=n.events,p=n.eventBus,f=a.capabilities.supportsMapSizes;return o("div",{className:"im-c-map-styles",children:[i("div",{className:"im-c-map-styles__group",children:i("div",{className:"im-c-map-styles__inner",children:c.filter(function(e){return e.url}).map(function(e){return i("div",{className:"im-c-map-styles__item",children:o("button",{className:"im-c-map-styles__button","aria-pressed":e.id===s.id,onClick:function(){return t=e,void p.emit(u.MAP_SET_STYLE,t);var t},children:[i("div",{className:"im-c-map-styles__image",children:i("img",{src:e.thumbnail||void 0,alt:"",height:"60",width:"60"})}),e.label]})},e.id)})})}),f&&o("div",{className:"im-c-map-styles__group",children:[i("h3",{className:"im-c-map-styles__heading",id:"map-text-sizes",children:"Map size"}),i("div",{className:"im-c-map-styles__inner",children:["small","medium","large"].map(function(e){return i("div",{className:"im-c-map-styles__item",children:o("button",{className:"im-c-map-styles__button",onClick:function(){return t=e,p.emit(u.MAP_SET_SIZE,t),void p.emit(u.MAP_SET_PIXEL_RATIO,window.devicePixelRatio*m[t]);var t},"aria-pressed":e===l,children:[i("div",{className:"im-c-map-styles__image",children:o("svg",{width:"60",height:"60",viewBox:"0 0 60 60",fillRule:"evenodd",children:[i("rect",{className:"im-c-map-styles__image-bg",width:"100%",height:"100%"}),i("g",{style:{transform:"scale(".concat(m[e],")"),transformOrigin:"8px 52px"},children:i("path",{d:"M8 51.785L12.948 38.9h1.837l5.274 12.885h-1.943l-1.503-3.903h-5.387l-1.415 3.903H8zm3.718-5.291h4.368l-1.345-3.569-.914-2.671c-.164.826-.395 1.646-.694 2.46l-1.415 3.78zm15.592 4.139c-3.698 3.143-7.836.271-6.315-2.562.963-1.794 5.529-1.982 6.183-2.21.022-.825.052-2.27-2.241-2.312-1.751-.031-2.242 1.025-2.435 1.776l-1.547-.211c.234-1.102.963-2.856 4.21-2.874 4.037-.022 3.612 2.962 3.612 3.524v2.11c0 .315 0 3.012.501 3.911h-1.652c-.164-.328-.27-.712-.316-1.152zm-.132-3.533c-.907.37-3.444.694-3.964.914-1.293.548-.911 2.399.225 2.637.639.134 3.739.476 3.739-2.971v-.58z"})})]})}),e[0].toUpperCase()+e.slice(1)]})},e)})})]})]})}}],buttons:[{id:"mapStyles",label:"Styles",panelId:"mapStyles",iconId:"map",mobile:{slot:"top-left",showLabel:!1},tablet:{slot:"top-left",showLabel:!0},desktop:{slot:"top-left",showLabel:!0}}],icons:[{id:"map",svgContent:'<path d="M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z"/><path d="M15 5.764v15"/><path d="M9 3.236v15"/>'}]}}},s={};function l(e){var t=s[e];if(void 0!==t)return t.exports;var r=s[e]={exports:{}};return a[e](r,r.exports,l),r.exports}l.d=(e,t)=>{for(var r in t)l.o(t,r)&&!l.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var c={};function u(){var e,t,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",i=r.toStringTag||"@@toStringTag";function o(r,n,i,o){var l=n&&n.prototype instanceof s?n:s,c=Object.create(l.prototype);return p(c,"_invoke",function(r,n,i){var o,s,l,c=0,u=i||[],p=!1,m={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,r){return o=t,s=0,l=e,m.n=r,a}};function f(r,n){for(s=r,l=n,t=0;!p&&c&&!i&&t<u.length;t++){var i,o=u[t],f=m.p,d=o[2];r>3?(i=d===n)&&(l=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=r<2&&f<o[1])?(s=0,m.v=n,m.n=o[1]):f<d&&(i=r<3||o[0]>n||n>d)&&(o[4]=r,o[5]=n,m.n=d,s=0))}if(i||r>1)return a;throw p=!0,n}return function(i,u,d){if(c>1)throw TypeError("Generator is already running");for(p&&1===u&&f(u,d),s=u,l=d;(t=s<2?e:l)||!p;){o||(s?s<3?(s>1&&(m.n=-1),f(s,l)):m.n=l:m.v=l);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,l)))throw TypeError("iterator result is not an object");if(!t.done)return t;l=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(l=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(p=m.n<0)?l:r.call(n,m))!==a)break}catch(t){o=e,s=1,l=t}finally{c=1}}return{value:t,done:p}}}(r,i,o),!0),c}var a={};function s(){}function l(){}function c(){}t=Object.getPrototypeOf;var m=[][n]?t(t([][n]())):(p(t={},n,function(){return this}),t),f=c.prototype=s.prototype=Object.create(m);function d(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,p(e,i,"GeneratorFunction")),e.prototype=Object.create(f),e}return l.prototype=c,p(f,"constructor",c),p(c,"constructor",l),l.displayName="GeneratorFunction",p(c,i,"GeneratorFunction"),p(f),p(f,i,"Generator"),p(f,n,function(){return this}),p(f,"toString",function(){return"[object Generator]"}),(u=function(){return{w:o,m:d}})()}function p(e,t,r,n){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}p=function(e,t,r,n){function o(t,r){p(e,t,function(e){return this._invoke(t,r,e)})}t?i?i(e,t,{value:r,enumerable:!n,configurable:!n,writable:!n}):e[t]=r:(o("next",0),o("throw",1),o("return",2))},p(e,t,r,n)}function m(e,t,r,n,i,o,a){try{var s=e[o](a),l=s.value}catch(e){return void r(e)}s.done?t(l):Promise.resolve(l).then(n,i)}function f(){var e,t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{id:"mapStyles",manifest:r.manifest,mapStyles:r.mapStyles,load:(e=u().m(function e(){var t;return u().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,Promise.resolve().then(l.bind(l,"./plugins/beta/map-styles/src/manifest.js"));case 1:return t=e.v.manifest,e.a(2,t)}},e)}),t=function(){var t=this,r=arguments;return new Promise(function(n,i){var o=e.apply(t,r);function a(e){m(o,n,i,a,s,"next",e)}function s(e){m(o,n,i,a,s,"throw",e)}a(void 0)})},function(){return t.apply(this,arguments)}),handlesMapStyle:!0,api:{}}}l.d(c,{A:()=>f});const d=c.A;export{d as default};
|
|
1
|
+
import e from"@babel/runtime/helpers/asyncToGenerator";function t(){var t,{manifest:a,mapStyles:n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{id:"mapStyles",manifest:a,mapStyles:n,load:(t=e(function*(){return(yield import(/* webpackChunkName: "im-map-styles-plugin" */ "./im-map-styles-plugin.js")).manifest}),function(){return t.apply(this,arguments)}),handlesMapStyle:!0,api:{}}}export{t as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useRef as r,useMemo as a}from"preact/compat";import{jsx as l,jsxs as t}from"preact/jsx-runtime";var e={small:1,medium:1.5,large:2},i={metric:[{threshold:1,abbr:"m",abbrPlural:"m",unit:"metre",unitPlural:"metres",factor:1},{threshold:1e3,abbr:"km",abbrPlural:"km",unit:"kilometre",unitPlural:"kilometres",factor:.001}],imperial:[{threshold:1609.344,abbr:"mi",abbrPlural:"mi",unit:"mile",unitPlural:"miles",factor:1/1609.344},{threshold:.9144,abbr:"yd",abbrPlural:"yds",unit:"yard",unitPlural:"yards",factor:1/.9144},{threshold:.3048,abbr:"ft",abbrPlural:"ft",unit:"foot",unitPlural:"feet",factor:1/.3048}]},b=r=>{var a=Math.pow(10,Math.floor(Math.log10(r))),l=r/a;return(l>=10?10:l>=5?5:l>=3?3:l>=2?2:1)*a};var o={controls:[{id:"scaleBar",label:"Scale bar",mobile:{slot:"footer-right"},tablet:{slot:"footer-right"},desktop:{slot:"footer-right"},render:function(o){var{mapState:u,pluginConfig:n}=o,{resolution:s,mapSize:m}=u,c=r(null),d=a(()=>s?((r,a,l,t)=>{var o=r/e[t],u=o*a,n=i[l];for(var{abbr:s,abbrPlural:m,unit:c,unitPlural:d,factor:h}of n){var f=b(u*h);if(f>=1&&f<1e3){var p=f/h/o;if(p<=a)return{label:f,abbr:f>1?m:s,width:p,unit:f>1?d:c}}}var P=n[n.length-1],v=u*P.factor,g=b(v),y=g>1?P.abbrPlural:P.abbr,w=g>1?P.abbrPlural:P.abbr;return{label:g,abbr:y,width:g/P.factor/o,unit:w}})(s/1,120,n.units,m):{width:0,label:"",abbr:"",unit:""},[s,m,n.units]);return l("div",{className:"im-c-scale-bar",ref:c,style:{width:"".concat(d.width,"px")},children:t("span",{className:"im-c-scale-bar__label",children:[l("span",{className:"im-u-visually-hidden",children:"Scale bar: "}),d.label,l("span",{"aria-hidden":"true",children:d.abbr}),l("span",{className:"im-u-visually-hidden",children:d.unit})]})})}}]};export{o as manifest};
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import{useMemo as r,useRef as t}from"react";import{jsx as e,jsxs as n}from"react/jsx-runtime";var o={"./plugins/beta/scale-bar/src/manifest.js"(o,a,i){function u(r,t){(null==t||t>r.length)&&(t=r.length);for(var e=0,n=Array(t);e<t;e++)n[e]=r[e];return n}i.d(a,{manifest:()=>s}),i.r(a);var l={small:1,medium:1.5,large:2},c={metric:[{threshold:1,abbr:"m",abbrPlural:"m",unit:"metre",unitPlural:"metres",factor:1},{threshold:1e3,abbr:"km",abbrPlural:"km",unit:"kilometre",unitPlural:"kilometres",factor:.001}],imperial:[{threshold:1609.344,abbr:"mi",abbrPlural:"mi",unit:"mile",unitPlural:"miles",factor:1/1609.344},{threshold:.9144,abbr:"yd",abbrPlural:"yds",unit:"yard",unitPlural:"yards",factor:1/.9144},{threshold:.3048,abbr:"ft",abbrPlural:"ft",unit:"foot",unitPlural:"feet",factor:1/.3048}]},f=function(r){var t=Math.pow(10,Math.floor(Math.log10(r))),e=r/t;return(e>=10?10:e>=5?5:e>=3?3:e>=2?2:1)*t},s={controls:[{id:"scaleBar",label:"Scale bar",mobile:{slot:"footer-right"},tablet:{slot:"footer-right"},desktop:{slot:"footer-right"},render:function(o){var a=o.mapState,i=o.pluginConfig,s=a.resolution,b=a.mapSize,d=t(null),m=r(function(){return s?function(r,t,e,n){var o,a=r/l[n],i=120*a,s=c[e],b=function(r,t){var e="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!e){if(Array.isArray(r)||(e=function(r,t){if(r){if("string"==typeof r)return u(r,t);var e={}.toString.call(r).slice(8,-1);return"Object"===e&&r.constructor&&(e=r.constructor.name),"Map"===e||"Set"===e?Array.from(r):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?u(r,t):void 0}}(r))||t&&r&&"number"==typeof r.length){e&&(r=e);var n=0,o=function(){};return{s:o,n:function(){return n>=r.length?{done:!0}:{done:!1,value:r[n++]}},e:function(r){throw r},f:o}}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 a,i=!0,l=!1;return{s:function(){e=e.call(r)},n:function(){var r=e.next();return i=r.done,r},e:function(r){l=!0,a=r},f:function(){try{i||null==e.return||e.return()}finally{if(l)throw a}}}}(s);try{for(b.s();!(o=b.n()).done;){var d=o.value,m=d.abbr,p=d.abbrPlural,h=d.unit,v=d.unitPlural,y=d.factor,g=f(i*y);if(g>=1&&g<1e3){var P=g/y/a;if(P<=120)return{label:g,abbr:g>1?p:m,width:P,unit:g>1?v:h}}}}catch(r){b.e(r)}finally{b.f()}var w=s[s.length-1],j=i*w.factor,S=f(j),O=S>1?w.abbrPlural:w.abbr,x=S>1?w.abbrPlural:w.abbr;return{label:S,abbr:O,width:S/w.factor/a,unit:x}}(s/1,0,i.units,b):{width:0,label:"",abbr:"",unit:""}},[s,b,i.units]);return e("div",{className:"im-c-scale-bar",ref:d,style:{width:"".concat(m.width,"px")},children:n("span",{className:"im-c-scale-bar__label",children:[e("span",{className:"im-u-visually-hidden",children:"Scale bar: "}),m.label,e("span",{"aria-hidden":"true",children:m.abbr}),e("span",{className:"im-u-visually-hidden",children:m.unit})]})})}}]}}},a={};function i(r){var t=a[r];if(void 0!==t)return t.exports;var e=a[r]={exports:{}};return o[r](e,e.exports,i),e.exports}i.d=(r,t)=>{for(var e in t)i.o(t,e)&&!i.o(r,e)&&Object.defineProperty(r,e,{enumerable:!0,get:t[e]})},i.o=(r,t)=>Object.prototype.hasOwnProperty.call(r,t),i.r=r=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})};var u={};function l(){var r,t,e="function"==typeof Symbol?Symbol:{},n=e.iterator||"@@iterator",o=e.toStringTag||"@@toStringTag";function a(e,n,o,a){var l=n&&n.prototype instanceof u?n:u,f=Object.create(l.prototype);return c(f,"_invoke",function(e,n,o){var a,u,l,c=0,f=o||[],s=!1,b={p:0,n:0,v:r,a:d,f:d.bind(r,4),d:function(t,e){return a=t,u=0,l=r,b.n=e,i}};function d(e,n){for(u=e,l=n,t=0;!s&&c&&!o&&t<f.length;t++){var o,a=f[t],d=b.p,m=a[2];e>3?(o=m===n)&&(l=a[(u=a[4])?5:(u=3,3)],a[4]=a[5]=r):a[0]<=d&&((o=e<2&&d<a[1])?(u=0,b.v=n,b.n=a[1]):d<m&&(o=e<3||a[0]>n||n>m)&&(a[4]=e,a[5]=n,b.n=m,u=0))}if(o||e>1)return i;throw s=!0,n}return function(o,f,m){if(c>1)throw TypeError("Generator is already running");for(s&&1===f&&d(f,m),u=f,l=m;(t=u<2?r:l)||!s;){a||(u?u<3?(u>1&&(b.n=-1),d(u,l)):b.n=l:b.v=l);try{if(c=2,a){if(u||(o="next"),t=a[o]){if(!(t=t.call(a,l)))throw TypeError("iterator result is not an object");if(!t.done)return t;l=t.value,u<2&&(u=0)}else 1===u&&(t=a.return)&&t.call(a),u<2&&(l=TypeError("The iterator does not provide a '"+o+"' method"),u=1);a=r}else if((t=(s=b.n<0)?l:e.call(n,b))!==i)break}catch(t){a=r,u=1,l=t}finally{c=1}}return{value:t,done:s}}}(e,o,a),!0),f}var i={};function u(){}function f(){}function s(){}t=Object.getPrototypeOf;var b=[][n]?t(t([][n]())):(c(t={},n,function(){return this}),t),d=s.prototype=u.prototype=Object.create(b);function m(r){return Object.setPrototypeOf?Object.setPrototypeOf(r,s):(r.__proto__=s,c(r,o,"GeneratorFunction")),r.prototype=Object.create(d),r}return f.prototype=s,c(d,"constructor",s),c(s,"constructor",f),f.displayName="GeneratorFunction",c(s,o,"GeneratorFunction"),c(d),c(d,o,"Generator"),c(d,n,function(){return this}),c(d,"toString",function(){return"[object Generator]"}),(l=function(){return{w:a,m}})()}function c(r,t,e,n){var o=Object.defineProperty;try{o({},"",{})}catch(r){o=0}c=function(r,t,e,n){function a(t,e){c(r,t,function(r){return this._invoke(t,e,r)})}t?o?o(r,t,{value:e,enumerable:!n,configurable:!n,writable:!n}):r[t]=e:(a("next",0),a("throw",1),a("return",2))},c(r,t,e,n)}function f(r,t,e,n,o,a,i){try{var u=r[a](i),l=u.value}catch(r){return void e(r)}u.done?t(l):Promise.resolve(l).then(n,o)}function s(){var r,t,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.manifest,o=e.units;return{id:"scaleBar",manifest:n,units:void 0===o?"metric":o,load:(r=l().m(function r(){var t;return l().w(function(r){for(;;)switch(r.n){case 0:return r.n=1,Promise.resolve().then(i.bind(i,"./plugins/beta/scale-bar/src/manifest.js"));case 1:return t=r.v.manifest,r.a(2,t)}},r)}),t=function(){var t=this,e=arguments;return new Promise(function(n,o){var a=r.apply(t,e);function i(r){f(a,n,o,i,u,"next",r)}function u(r){f(a,n,o,i,u,"throw",r)}i(void 0)})},function(){return t.apply(this,arguments)})}}i.d(u,{A:()=>s});const b=u.A;export{b as default};
|
|
1
|
+
import t from"@babel/runtime/helpers/asyncToGenerator";function e(){var e,{manifest:n,units:i="metric"}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{id:"scaleBar",manifest:n,units:i,load:(e=t(function*(){return(yield import(/* webpackChunkName: "im-scale-bar-plugin" */ "./im-scale-bar-plugin.js")).manifest}),function(){return e.apply(this,arguments)})}}export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useEffect as e}from"preact/compat";import{jsx as t}from"preact/jsx-runtime";import o from"@babel/runtime/helpers/defineProperty";function r(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),o.push.apply(o,r)}return o}function i(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?r(Object(i),!0).forEach(function(t){o(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):r(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}var n={PERMISSION_DENIED:"Location permission denied. Please enable it in your browser settings.",POSITION_UNAVAILABLE:"Location information is unavailable.",TIMEOUT:"The location request timed out. Please try again.",FALLBACK:"Unable to get your location."};var a={slot:"right-top",showLabel:!1},l={InitComponent:function(t){var{appConfig:o,appState:r,pluginState:i,mapState:a,mapProvider:l,buttonConfig:c}=t,{useLocation:s}=c;return e(()=>{if(a.isMapReady)return function(e){var{appState:t,pluginState:o,mapProvider:r,useLocationButton:i}=e,{dispatch:a,buttonRefs:l}=t,{dispatch:c}=o,s=e=>e&&"number"==typeof e.code&&n[e.code]||n.FALLBACK;i.onClick=()=>{navigator.geolocation.getCurrentPosition(e=>{var{latitude:t,longitude:o}=e.coords;try{r.setView({center:[o,t],zoom:12})}catch(e){console.log("Map provider failed to pan:",e)}},e=>{var t=s(e),o=l.current[i.id];c({type:"SET_ERROR_MESSAGE",payload:t}),a({type:"OPEN_PANEL",payload:{panelId:"useLocation",props:{triggeringElement:o}}})},{enableHighAccuracy:!0,maximumAge:0,timeout:1e4})};var p=null}({appState:r,pluginState:i,mapProvider:l,useLocationButton:s}),()=>{s.onClick=null}},[a.isMapReady]),null},reducer:{initialState:{errorMessage:null},actions:{SET_ERROR_MESSAGE:(e,t)=>i(i({},e),{},{errorMessage:t})}},buttons:[{id:"useLocation",group:"location",label:"Use your location",iconId:"locateFixed",hiddenWhen:()=>!navigator.geolocation,mobile:a,tablet:a,desktop:a}],panels:[{id:"useLocation",label:"Problem getting your location",mobile:{slot:"banner",initiallyOpen:!1,dismissable:!0,modal:!0},tablet:{slot:"banner",initiallyOpen:!1,dismissable:!0,modal:!0},desktop:{slot:"banner",initiallyOpen:!1,dismissable:!0,modal:!0},render:e=>{var{pluginState:o}=e,{errorMessage:r}=o;return t("div",{className:"im-c-use-location",children:t("p",{children:r})})}}],icons:[{id:"locateFixed",svgContent:'<line x1="2" x2="5" y1="12" y2="12"/><line x1="19" x2="22" y1="12" y2="12"/><line x1="12" x2="12" y1="2" y2="5"/><line x1="12" x2="12" y1="19" y2="22"/><circle cx="12" cy="12" r="7"/><circle cx="12" cy="12" r="3"/>'}]};export{l as manifest};
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import{useEffect as t}from"react";import{jsx as e}from"react/jsx-runtime";var n={"./plugins/beta/use-location/src/manifest.js"(n,r,o){function i(t){return i="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},i(t)}function a(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function c(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?a(Object(n),!0).forEach(function(e){u(t,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))})}return t}function u(t,e,n){return(e=function(t){var e=function(t){if("object"!=i(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=i(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==i(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}o.d(r,{manifest:()=>f}),o.r(r);var l={PERMISSION_DENIED:"Location permission denied. Please enable it in your browser settings.",POSITION_UNAVAILABLE:"Location information is unavailable.",TIMEOUT:"The location request timed out. Please try again.",FALLBACK:"Unable to get your location."},s={slot:"right-top",showLabel:!1},f={InitComponent:function(e){e.appConfig;var n=e.appState,r=e.pluginState,o=e.mapState,i=e.mapProvider,a=e.buttonConfig.useLocation;return t(function(){if(o.isMapReady)return function(t){var e=t.appState,n=t.pluginState,r=t.mapProvider,o=t.useLocationButton,i=e.dispatch,a=e.buttonRefs,c=n.dispatch;o.onClick=function(){navigator.geolocation.getCurrentPosition(function(t){var e=t.coords,n=e.latitude,o=e.longitude;try{r.setView({center:[o,n],zoom:12})}catch(t){console.log("Map provider failed to pan:",t)}},function(t){var e=function(t){return t&&"number"==typeof t.code&&l[t.code]||l.FALLBACK}(t),n=a.current[o.id];c({type:"SET_ERROR_MESSAGE",payload:e}),i({type:"OPEN_PANEL",payload:{panelId:"useLocation",props:{triggeringElement:n}}})},{enableHighAccuracy:!0,maximumAge:0,timeout:1e4})}}({appState:n,pluginState:r,mapProvider:i,useLocationButton:a}),function(){a.onClick=null}},[o.isMapReady]),null},reducer:{initialState:{errorMessage:null},actions:{SET_ERROR_MESSAGE:function(t,e){return c(c({},t),{},{errorMessage:e})}}},buttons:[{id:"useLocation",group:"location",label:"Use your location",iconId:"locateFixed",hiddenWhen:function(){return!navigator.geolocation},mobile:s,tablet:s,desktop:s}],panels:[{id:"useLocation",label:"Problem getting your location",mobile:{slot:"banner",initiallyOpen:!1,dismissable:!0,modal:!0},tablet:{slot:"banner",initiallyOpen:!1,dismissable:!0,modal:!0},desktop:{slot:"banner",initiallyOpen:!1,dismissable:!0,modal:!0},render:function(t){var n=t.pluginState.errorMessage;return e("div",{className:"im-c-use-location",children:e("p",{children:n})})}}],icons:[{id:"locateFixed",svgContent:'<line x1="2" x2="5" y1="12" y2="12"/><line x1="19" x2="22" y1="12" y2="12"/><line x1="12" x2="12" y1="2" y2="5"/><line x1="12" x2="12" y1="19" y2="22"/><circle cx="12" cy="12" r="7"/><circle cx="12" cy="12" r="3"/>'}]}}},r={};function o(t){var e=r[t];if(void 0!==e)return e.exports;var i=r[t]={exports:{}};return n[t](i,i.exports,o),i.exports}o.d=(t,e)=>{for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),o.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var i={};function a(){var t,e,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function i(n,r,o,i){var a=r&&r.prototype instanceof l?r:l,s=Object.create(a.prototype);return c(s,"_invoke",function(n,r,o){var i,a,c,l=0,s=o||[],f=!1,p={p:0,n:0,v:t,a:y,f:y.bind(t,4),d:function(e,n){return i=e,a=0,c=t,p.n=n,u}};function y(n,r){for(a=n,c=r,e=0;!f&&l&&!o&&e<s.length;e++){var o,i=s[e],y=p.p,b=i[2];n>3?(o=b===r)&&(c=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=t):i[0]<=y&&((o=n<2&&y<i[1])?(a=0,p.v=r,p.n=i[1]):y<b&&(o=n<3||i[0]>r||r>b)&&(i[4]=n,i[5]=r,p.n=b,a=0))}if(o||n>1)return u;throw f=!0,r}return function(o,s,b){if(l>1)throw TypeError("Generator is already running");for(f&&1===s&&y(s,b),a=s,c=b;(e=a<2?t:c)||!f;){i||(a?a<3?(a>1&&(p.n=-1),y(a,c)):p.n=c:p.v=c);try{if(l=2,i){if(a||(o="next"),e=i[o]){if(!(e=e.call(i,c)))throw TypeError("iterator result is not an object");if(!e.done)return e;c=e.value,a<2&&(a=0)}else 1===a&&(e=i.return)&&e.call(i),a<2&&(c=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=t}else if((e=(f=p.n<0)?c:n.call(r,p))!==u)break}catch(e){i=t,a=1,c=e}finally{l=1}}return{value:e,done:f}}}(n,o,i),!0),s}var u={};function l(){}function s(){}function f(){}e=Object.getPrototypeOf;var p=[][r]?e(e([][r]())):(c(e={},r,function(){return this}),e),y=f.prototype=l.prototype=Object.create(p);function b(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,c(t,o,"GeneratorFunction")),t.prototype=Object.create(y),t}return s.prototype=f,c(y,"constructor",f),c(f,"constructor",s),s.displayName="GeneratorFunction",c(f,o,"GeneratorFunction"),c(y),c(y,o,"Generator"),c(y,r,function(){return this}),c(y,"toString",function(){return"[object Generator]"}),(a=function(){return{w:i,m:b}})()}function c(t,e,n,r){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}c=function(t,e,n,r){function i(e,n){c(t,e,function(t){return this._invoke(e,n,t)})}e?o?o(t,e,{value:n,enumerable:!r,configurable:!r,writable:!r}):t[e]=n:(i("next",0),i("throw",1),i("return",2))},c(t,e,n,r)}function u(t,e,n,r,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void n(t)}c.done?e(u):Promise.resolve(u).then(r,o)}function l(){return{id:"useLocation",load:(t=a().m(function t(){var e;return a().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,Promise.resolve().then(o.bind(o,"./plugins/beta/use-location/src/manifest.js"));case 1:return e=t.v.manifest,t.a(2,e)}},t)}),e=function(){var e=this,n=arguments;return new Promise(function(r,o){var i=t.apply(e,n);function a(t){u(i,r,o,a,c,"next",t)}function c(t){u(i,r,o,a,c,"throw",t)}a(void 0)})},function(){return e.apply(this,arguments)})};var t,e}o.d(i,{A:()=>l});const s=i.A;export{s as default};
|
|
1
|
+
import n from"@babel/runtime/helpers/asyncToGenerator";function t(){return{id:"useLocation",load:(t=n(function*(){return(yield import(/* webpackChunkName: "im-use-location-plugin" */ "./im-use-location-plugin.js")).manifest}),function(){return t.apply(this,arguments)})};var t}export{t as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see index.js.LICENSE.txt */
|
|
2
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("defra",[],t):"object"==typeof exports?exports.defra=t():(e.defra=e.defra||{},e.defra.
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("defra",[],t):"object"==typeof exports?exports.defra=t():(e.defra=e.defra||{},e.defra.useLocationPlugin=t())}(this,()=>(()=>{"use strict";var e,t,r={738(e){e.exports=preactCompat},287(e){e.exports=preactJsxRuntime}},n={};function o(e){var t=n[e];if(void 0!==t)return t.exports;var i=n[e]={exports:{}};return r[e](i,i.exports,o),i.exports}o.m=r,o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce((t,r)=>(o.f[r](e,t),t),[])),o.u=e=>"im-use-location-plugin.js",o.miniCssF=e=>{},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="defra.useLocationPlugin:",o.l=(r,n,i,a)=>{if(e[r])e[r].push(n);else{var u,c;if(void 0!==i)for(var f=document.getElementsByTagName("script"),p=0;p<f.length;p++){var s=f[p];if(s.getAttribute("src")==r||s.getAttribute("data-webpack")==t+i){u=s;break}}u||(c=!0,(u=document.createElement("script")).charset="utf-8",o.nc&&u.setAttribute("nonce",o.nc),u.setAttribute("data-webpack",t+i),u.src=r),e[r]=[n];var l=(t,n)=>{u.onerror=u.onload=null,clearTimeout(d);var o=e[r];if(delete e[r],u.parentNode&&u.parentNode.removeChild(u),o&&o.forEach(e=>e(n)),t)return t(n)},d=setTimeout(l.bind(null,void 0,{type:"timeout",target:u}),12e4);u.onerror=l.bind(null,u.onerror),u.onload=l.bind(null,u.onload),c&&document.head.appendChild(u)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;o.g.importScripts&&(e=o.g.location+"");var t=o.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var n=r.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=r[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),o.p=e})(),(()=>{var e={57:0};o.f.j=(t,r)=>{var n=o.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var i=new Promise((r,o)=>n=e[t]=[r,o]);r.push(n[2]=i);var a=o.p+o.u(t),u=new Error;o.l(a,r=>{if(o.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var i=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;u.message="Loading chunk "+t+" failed.\n("+i+": "+a+")",u.name="ChunkLoadError",u.type=i,u.request=a,n[1](u)}},"chunk-"+t,t)}};var t=(t,r)=>{var n,i,[a,u,c]=r,f=0;if(a.some(t=>0!==e[t])){for(n in u)o.o(u,n)&&(o.m[n]=u[n]);c&&c(o)}for(t&&t(r);f<a.length;f++)i=a[f],o.o(e,i)&&e[i]&&e[i][0](),e[i]=0},r=this.webpackChunkdefra_DefraMap=this.webpackChunkdefra_DefraMap||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();var i={};function a(){var e,t,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var a=n&&n.prototype instanceof f?n:f,p=Object.create(a.prototype);return u(p,"_invoke",function(r,n,o){var i,a,u,f=0,p=o||[],s=!1,l={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(t,r){return i=t,a=0,u=e,l.n=r,c}};function d(r,n){for(a=r,u=n,t=0;!s&&f&&!o&&t<p.length;t++){var o,i=p[t],d=l.p,v=i[2];r>3?(o=v===n)&&(u=i[(a=i[4])?5:(a=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=r<2&&d<i[1])?(a=0,l.v=n,l.n=i[1]):d<v&&(o=r<3||i[0]>n||n>v)&&(i[4]=r,i[5]=n,l.n=v,a=0))}if(o||r>1)return c;throw s=!0,n}return function(o,p,v){if(f>1)throw TypeError("Generator is already running");for(s&&1===p&&d(p,v),a=p,u=v;(t=a<2?e:u)||!s;){i||(a?a<3?(a>1&&(l.n=-1),d(a,u)):l.n=u:l.v=u);try{if(f=2,i){if(a||(o="next"),t=i[o]){if(!(t=t.call(i,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,a<2&&(a=0)}else 1===a&&(t=i.return)&&t.call(i),a<2&&(u=TypeError("The iterator does not provide a '"+o+"' method"),a=1);i=e}else if((t=(s=l.n<0)?u:r.call(n,l))!==c)break}catch(t){i=e,a=1,u=t}finally{f=1}}return{value:t,done:s}}}(r,o,i),!0),p}var c={};function f(){}function p(){}function s(){}t=Object.getPrototypeOf;var l=[][n]?t(t([][n]())):(u(t={},n,function(){return this}),t),d=s.prototype=f.prototype=Object.create(l);function v(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,s):(e.__proto__=s,u(e,o,"GeneratorFunction")),e.prototype=Object.create(d),e}return p.prototype=s,u(d,"constructor",s),u(s,"constructor",p),p.displayName="GeneratorFunction",u(s,o,"GeneratorFunction"),u(d),u(d,o,"Generator"),u(d,n,function(){return this}),u(d,"toString",function(){return"[object Generator]"}),(a=function(){return{w:i,m:v}})()}function u(e,t,r,n){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}u=function(e,t,r,n){function i(t,r){u(e,t,function(e){return this._invoke(t,r,e)})}t?o?o(e,t,{value:r,enumerable:!n,configurable:!n,writable:!n}):e[t]=r:(i("next",0),i("throw",1),i("return",2))},u(e,t,r,n)}function c(e,t,r,n,o,i,a){try{var u=e[i](a),c=u.value}catch(e){return void r(e)}u.done?t(c):Promise.resolve(c).then(n,o)}function f(){return{id:"useLocation",load:(e=a().m(function e(){var t;return a().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,o.e(419).then(o.bind(o,528));case 1:return t=e.v.manifest,e.a(2,t)}},e)}),t=function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function a(e){c(i,n,o,a,u,"next",e)}function u(e){c(i,n,o,a,u,"throw",e)}a(void 0)})},function(){return t.apply(this,arguments)})};var e,t}return o.d(i,{default:()=>f}),i.default})());
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useCallback as e,useRef as t,useEffect as r,useMemo as n}from"preact/compat";import o from"@babel/runtime/helpers/defineProperty";function i(e,t,r={}){const n={type:"Feature"};return(0===r.id||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=t||{},n.geometry=e,n}function a(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!u(e[0])||!u(e[1]))throw new Error("coordinates must contain numbers");return i({type:"Point",coordinates:e},t,r)}function s(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return i({type:"LineString",coordinates:e},t,r)}function l(e,t={}){const r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function c(e,t,r={}){return i({type:"MultiLineString",coordinates:e},t,r)}function u(e){return!isNaN(e)&&null!==e&&!Array.isArray(e)}const p=11102230246251565e-32,d=134217729,f=(3+8*p)*p;function y(e,t,r,n,o){let i,a,s,l,c=t[0],u=n[0],p=0,d=0;u>c==u>-c?(i=c,c=t[++p]):(i=u,u=n[++d]);let f=0;if(p<e&&d<r)for(u>c==u>-c?(a=c+i,s=i-(a-c),c=t[++p]):(a=u+i,s=i-(a-u),u=n[++d]),i=a,0!==s&&(o[f++]=s);p<e&&d<r;)u>c==u>-c?(a=i+c,l=a-i,s=i-(a-l)+(c-l),c=t[++p]):(a=i+u,l=a-i,s=i-(a-l)+(u-l),u=n[++d]),i=a,0!==s&&(o[f++]=s);for(;p<e;)a=i+c,l=a-i,s=i-(a-l)+(c-l),c=t[++p],i=a,0!==s&&(o[f++]=s);for(;d<r;)a=i+u,l=a-i,s=i-(a-l)+(u-l),u=n[++d],i=a,0!==s&&(o[f++]=s);return 0===i&&0!==f||(o[f++]=i),f}function h(e){return new Float64Array(e)}const g=h(4),v=h(8),S=h(12),E=h(16),b=h(4);function m(e,t,r,n,o,i){const a=(t-i)*(r-o),s=(e-o)*(n-i),l=a-s,c=Math.abs(a+s);return Math.abs(l)>=33306690738754716e-32*c?l:-function(e,t,r,n,o,i,a){let s,l,c,u,p,h,m,w,P,O,L,F,k,A,C,I,M,j;const D=e-o,T=r-o,x=t-i,B=n-i;A=D*B,h=d*D,m=h-(h-D),w=D-m,h=d*B,P=h-(h-B),O=B-P,C=w*O-(A-m*P-w*P-m*O),I=x*T,h=d*x,m=h-(h-x),w=x-m,h=d*T,P=h-(h-T),O=T-P,M=w*O-(I-m*P-w*P-m*O),L=C-M,p=C-L,g[0]=C-(L+p)+(p-M),F=A+L,p=F-A,k=A-(F-p)+(L-p),L=k-I,p=k-L,g[1]=k-(L+p)+(p-I),j=F+L,p=j-F,g[2]=F-(j-p)+(L-p),g[3]=j;let _=function(e,t){let r=t[0];for(let n=1;n<e;n++)r+=t[n];return r}(4,g),R=22204460492503146e-32*a;if(_>=R||-_>=R)return _;if(p=e-D,s=e-(D+p)+(p-o),p=r-T,c=r-(T+p)+(p-o),p=t-x,l=t-(x+p)+(p-i),p=n-B,u=n-(B+p)+(p-i),0===s&&0===l&&0===c&&0===u)return _;if(R=11093356479670487e-47*a+f*Math.abs(_),_+=D*u+B*s-(x*c+T*l),_>=R||-_>=R)return _;A=s*B,h=d*s,m=h-(h-s),w=s-m,h=d*B,P=h-(h-B),O=B-P,C=w*O-(A-m*P-w*P-m*O),I=l*T,h=d*l,m=h-(h-l),w=l-m,h=d*T,P=h-(h-T),O=T-P,M=w*O-(I-m*P-w*P-m*O),L=C-M,p=C-L,b[0]=C-(L+p)+(p-M),F=A+L,p=F-A,k=A-(F-p)+(L-p),L=k-I,p=k-L,b[1]=k-(L+p)+(p-I),j=F+L,p=j-F,b[2]=F-(j-p)+(L-p),b[3]=j;const U=y(4,g,4,b,v);A=D*u,h=d*D,m=h-(h-D),w=D-m,h=d*u,P=h-(h-u),O=u-P,C=w*O-(A-m*P-w*P-m*O),I=x*c,h=d*x,m=h-(h-x),w=x-m,h=d*c,P=h-(h-c),O=c-P,M=w*O-(I-m*P-w*P-m*O),L=C-M,p=C-L,b[0]=C-(L+p)+(p-M),F=A+L,p=F-A,k=A-(F-p)+(L-p),L=k-I,p=k-L,b[1]=k-(L+p)+(p-I),j=F+L,p=j-F,b[2]=F-(j-p)+(L-p),b[3]=j;const G=y(U,v,4,b,S);A=s*u,h=d*s,m=h-(h-s),w=s-m,h=d*u,P=h-(h-u),O=u-P,C=w*O-(A-m*P-w*P-m*O),I=l*c,h=d*l,m=h-(h-l),w=l-m,h=d*c,P=h-(h-c),O=c-P,M=w*O-(I-m*P-w*P-m*O),L=C-M,p=C-L,b[0]=C-(L+p)+(p-M),F=A+L,p=F-A,k=A-(F-p)+(L-p),L=k-I,p=k-L,b[1]=k-(L+p)+(p-I),j=F+L,p=j-F,b[2]=F-(j-p)+(L-p),b[3]=j;const N=y(G,S,4,b,E);return E[N-1]}(e,t,r,n,o,i,c)}function w(e,t){var r,n,o,i,a,s,l,c,u,p=0,d=e[0],f=e[1],y=t.length;for(r=0;r<y;r++){n=0;var h=t[r],g=h.length-1;if((c=h[0])[0]!==h[g][0]&&c[1]!==h[g][1])throw new Error("First and last coordinates in a ring must be the same");for(i=c[0]-d,a=c[1]-f;n<g;n++){if(s=(u=h[n+1])[0]-d,l=u[1]-f,0===a&&0===l){if(s<=0&&i>=0||i<=0&&s>=0)return 0}else if(l>=0&&a<=0||l<=0&&a>=0){if(0===(o=m(i,s,a,l,0,0)))return 0;(o>0&&l>0&&a<=0||o<0&&l<=0&&a>0)&&p++}c=u,a=l,i=s}}return p%2!=0}function P(e){return"Feature"===e.type?e.geometry:e}function O(e,t,r={}){if(!e)throw new Error("point is required");if(!t)throw new Error("polygon is required");const n=function(e){if(!e)throw new Error("coord is required");if(!Array.isArray(e)){if("Feature"===e.type&&null!==e.geometry&&"Point"===e.geometry.type)return[...e.geometry.coordinates];if("Point"===e.type)return[...e.coordinates]}if(Array.isArray(e)&&e.length>=2&&!Array.isArray(e[0])&&!Array.isArray(e[1]))return[...e];throw new Error("coord must be GeoJSON Point or an Array of numbers")}(e),o=P(t),i=o.type,a=t.bbox;let s=o.coordinates;if(a&&!1===function(e,t){return t[0]<=e[0]&&t[1]<=e[1]&&t[2]>=e[0]&&t[3]>=e[1]}(n,a))return!1;"Polygon"===i&&(s=[s]);let l=!1;for(var c=0;c<s.length;++c){const e=w(n,s[c]);if(0===e)return!r.ignoreBoundary;e&&(l=!0)}return l}class L{constructor(e=[],t=F){if(this.data=e,this.length=this.data.length,this.compare=t,this.length>0)for(let e=(this.length>>1)-1;e>=0;e--)this._down(e)}push(e){this.data.push(e),this.length++,this._up(this.length-1)}pop(){if(0===this.length)return;const e=this.data[0],t=this.data.pop();return this.length--,this.length>0&&(this.data[0]=t,this._down(0)),e}peek(){return this.data[0]}_up(e){const{data:t,compare:r}=this,n=t[e];for(;e>0;){const o=e-1>>1,i=t[o];if(r(n,i)>=0)break;t[e]=i,e=o}t[e]=n}_down(e){const{data:t,compare:r}=this,n=this.length>>1,o=t[e];for(;e<n;){let n=1+(e<<1),i=t[n];const a=n+1;if(a<this.length&&r(t[a],i)<0&&(n=a,i=t[a]),r(i,o)>=0)break;t[e]=i,e=n}t[e]=o}}function F(e,t){return e<t?-1:e>t?1:0}function k(e,t){return e.p.x>t.p.x?1:e.p.x<t.p.x?-1:e.p.y!==t.p.y?e.p.y>t.p.y?1:-1:1}function A(e,t){return e.rightSweepEvent.p.x>t.rightSweepEvent.p.x?1:e.rightSweepEvent.p.x<t.rightSweepEvent.p.x?-1:e.rightSweepEvent.p.y!==t.rightSweepEvent.p.y?e.rightSweepEvent.p.y<t.rightSweepEvent.p.y?1:-1:1}class C{constructor(e,t,r,n){this.p={x:e[0],y:e[1]},this.featureId=t,this.ringId=r,this.eventId=n,this.otherEvent=null,this.isLeftEndpoint=null}isSamePoint(e){return this.p.x===e.p.x&&this.p.y===e.p.y}}let I=0,M=0,j=0;function D(e,t){const r="Feature"===e.type?e.geometry:e;let n=r.coordinates;"Polygon"!==r.type&&"MultiLineString"!==r.type||(n=[n]),"LineString"===r.type&&(n=[[n]]);for(let e=0;e<n.length;e++)for(let r=0;r<n[e].length;r++){let o=n[e][r][0],i=null;M+=1;for(let a=0;a<n[e][r].length-1;a++){i=n[e][r][a+1];const s=new C(o,I,M,j),l=new C(i,I,M,j+1);s.otherEvent=l,l.otherEvent=s,k(s,l)>0?(l.isLeftEndpoint=!0,s.isLeftEndpoint=!1):(s.isLeftEndpoint=!0,l.isLeftEndpoint=!1),t.push(s),t.push(l),o=i,j+=1}}I+=1}class T{constructor(e){this.leftSweepEvent=e,this.rightSweepEvent=e.otherEvent}}function x(e,t){if(null===e||null===t)return!1;if(e.leftSweepEvent.ringId===t.leftSweepEvent.ringId&&(e.rightSweepEvent.isSamePoint(t.leftSweepEvent)||e.rightSweepEvent.isSamePoint(t.leftSweepEvent)||e.rightSweepEvent.isSamePoint(t.rightSweepEvent)||e.leftSweepEvent.isSamePoint(t.leftSweepEvent)||e.leftSweepEvent.isSamePoint(t.rightSweepEvent)))return!1;const r=e.leftSweepEvent.p.x,n=e.leftSweepEvent.p.y,o=e.rightSweepEvent.p.x,i=e.rightSweepEvent.p.y,a=t.leftSweepEvent.p.x,s=t.leftSweepEvent.p.y,l=t.rightSweepEvent.p.x,c=t.rightSweepEvent.p.y,u=(c-s)*(o-r)-(l-a)*(i-n),p=(l-a)*(n-s)-(c-s)*(r-a),d=(o-r)*(n-s)-(i-n)*(r-a);if(0===u)return!1;const f=p/u,y=d/u;if(f>=0&&f<=1&&y>=0&&y<=1){return[r+f*(o-r),n+f*(i-n)]}return!1}var B=function(e,t){const r=new L([],k);return function(e,t){if("FeatureCollection"===e.type){const r=e.features;for(let e=0;e<r.length;e++)D(r[e],t)}else D(e,t)}(e,r),function(e,t){t=t||!1;const r=[],n=new L([],A);for(;e.length;){const o=e.pop();if(o.isLeftEndpoint){const e=new T(o);for(let i=0;i<n.data.length;i++){const a=n.data[i];if(t&&a.leftSweepEvent.featureId===o.featureId)continue;const s=x(e,a);!1!==s&&r.push(s)}n.push(e)}else!1===o.isLeftEndpoint&&n.pop()}return r}(r,t)};function _(e,t,r={}){const{removeDuplicates:n=!0,ignoreSelfIntersections:o=!0}=r;let s=[];"FeatureCollection"===e.type?s=s.concat(e.features):"Feature"===e.type?s.push(e):"LineString"!==e.type&&"Polygon"!==e.type&&"MultiLineString"!==e.type&&"MultiPolygon"!==e.type||s.push(i(e)),"FeatureCollection"===t.type?s=s.concat(t.features):"Feature"===t.type?s.push(t):"LineString"!==t.type&&"Polygon"!==t.type&&"MultiLineString"!==t.type&&"MultiPolygon"!==t.type||s.push(i(t));const c=B(l(s),o);let u=[];if(n){const e={};c.forEach(t=>{const r=t.join(",");e[r]||(e[r]=!0,u.push(t))})}else u=c;return l(u.map(e=>a(e)))}function R(e,t){!function(e,t){var r,n,o,i,a,s,l,c,u,p,d=0,f="FeatureCollection"===e.type,y="Feature"===e.type,h=f?e.features.length:1;for(r=0;r<h;r++){for(s=f?e.features[r].geometry:y?e.geometry:e,c=f?e.features[r].properties:y?e.properties:{},u=f?e.features[r].bbox:y?e.bbox:void 0,p=f?e.features[r].id:y?e.id:void 0,a=(l=!!s&&"GeometryCollection"===s.type)?s.geometries.length:1,o=0;o<a;o++)if(null!==(i=l?s.geometries[o]:s))switch(i.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":if(!1===t(i,d,c,u,p))return!1;break;case"GeometryCollection":for(n=0;n<i.geometries.length;n++)if(!1===t(i.geometries[n],d,c,u,p))return!1;break;default:throw new Error("Unknown Geometry Type")}else if(!1===t(null,d,c,u,p))return!1;d++}}(e,function(e,r,n,o,a){var s,l=null===e?null:e.type;switch(l){case null:case"Point":case"LineString":case"Polygon":return!1!==t(i(e,n,{bbox:o,id:a}),r,0)&&void 0}switch(l){case"MultiPoint":s="Point";break;case"MultiLineString":s="LineString";break;case"MultiPolygon":s="Polygon"}for(var c=0;c<e.coordinates.length;c++){var u=e.coordinates[c];if(!1===t(i({type:s,coordinates:u},n),r,c))return!1}})}function U(e,t={}){const r=P(e);switch(t.properties||"Feature"!==e.type||(t.properties=e.properties),r.type){case"Polygon":return function(e,t={}){const r=P(e),n=r.coordinates,o=t.properties?t.properties:"Feature"===e.type?e.properties:{};return G(n,o)}(r,t);case"MultiPolygon":return function(e,t={}){const r=P(e),n=r.coordinates,o=t.properties?t.properties:"Feature"===e.type?e.properties:{},i=[];return n.forEach(e=>{i.push(G(e,o))}),l(i)}(r,t);default:throw new Error("invalid poly")}}function G(e,t){return e.length>1?c(e,t):s(e[0],t)}function N(e,t){for(let r=0;r<e.coordinates.length-1;r++)if(q(e.coordinates[r],e.coordinates[r+1],t.coordinates))return!0;return!1}function W(e,t,r){for(const r of t.coordinates)if(O(r,e))return!0;return _(t,U(e),{ignoreSelfIntersections:r}).features.length>0}function q(e,t,r){const n=r[0]-e[0],o=r[1]-e[1],i=t[0]-e[0],a=t[1]-e[1];return 0===n*a-o*i&&(Math.abs(i)>=Math.abs(a)?i>0?e[0]<=r[0]&&r[0]<=t[0]:t[0]<=r[0]&&r[0]<=e[0]:a>0?e[1]<=r[1]&&r[1]<=t[1]:t[1]<=r[1]&&r[1]<=e[1])}var H=function(e,t,{ignoreSelfIntersections:r=!0}={ignoreSelfIntersections:!0}){let n=!0;return R(e,e=>{R(t,t=>{if(!1===n)return!1;n=function(e,t,r){switch(e.type){case"Point":switch(t.type){case"Point":return n=e.coordinates,o=t.coordinates,!(n[0]===o[0]&&n[1]===o[1]);case"LineString":return!N(t,e);case"Polygon":return!O(e,t)}break;case"LineString":switch(t.type){case"Point":return!N(e,t);case"LineString":return!function(e,t,r){const n=_(e,t,{ignoreSelfIntersections:r});if(n.features.length>0)return!0;return!1}(e,t,r);case"Polygon":return!W(t,e,r)}break;case"Polygon":switch(t.type){case"Point":return!O(t,e);case"LineString":return!W(e,t,r);case"Polygon":return!function(e,t,r){for(const r of e.coordinates[0])if(O(r,t))return!0;for(const r of t.coordinates[0])if(O(r,e))return!0;const n=_(U(e),U(t),{ignoreSelfIntersections:r});if(n.features.length>0)return!0;return!1}(t,e,r)}}var n,o;return!1}(e.geometry,t.geometry,r)})}),n};function J(e){var t=e.geometry||e;switch(t.type){case"Polygon":return function(e,t,r={}){for(const t of e){if(t.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(t[t.length-1].length!==t[0].length)throw new Error("First and last Position are not equivalent.");for(let e=0;e<t[t.length-1].length;e++)if(t[t.length-1][e]!==t[0][e])throw new Error("First and last Position are not equivalent.")}return i({type:"Polygon",coordinates:e},t,r)}(t.coordinates);case"MultiPolygon":return function(e,t,r={}){return i({type:"MultiPolygon",coordinates:e},t,r)}(t.coordinates);case"LineString":return s(t.coordinates);case"MultiLineString":return c(t.coordinates);case"Point":return a(t.coordinates);case"MultiPoint":return function(e,t,r={}){return i({type:"MultiPoint",coordinates:e},t,r)}(t.coordinates);default:throw new Error("Unsupported geometry type: ".concat(t.type))}}function K(e,t){return t.some(t=>!H(J(t),J(e)))}function V(e){var t;if(1!==e.length)return!1;var r=null===(t=e[0].geometry)||void 0===t?void 0:t.type;return"Polygon"===r||"MultiPolygon"===r}function z(e){if(e.length<2)return!1;if(e.some(e=>{var t;return!(null!==(t=e.geometry)&&void 0!==t&&t.type)}))return!1;for(var t=new Set([0]),r=!0;r;){r=!1;for(var n=1;n<e.length;n++)if(!t.has(n)){var o=[...t].map(t=>e[t]);K(e[n],o)&&(t.add(n),r=!0)}}return t.size===e.length}var Q=n=>{var{mapState:o,pluginState:i,services:a,mapProvider:s}=n,{markers:l}=o,{dispatch:c,dataLayers:u,interactionMode:p,multiSelect:d,contiguous:f,markerColor:y,tolerance:h,selectedFeatures:g,selectionBounds:v,deselectOnClickOutside:S}=i,{eventBus:E}=a,b=(e=>{var t={};for(var r of e)t[r.layerId]=r;return t})(u),m=e(e=>{var{point:t,coords:r}=e,n=((e,t,r)=>{try{return(null==e?void 0:e.getFeaturesAtPoint(t,r))||[]}catch(e){return console.warn("Feature query failed:",e),[]}})(s,t,{radius:h}),o=u.length>0;null!=i&&i.debug&&console.log("--- Features at ".concat(r," ---"),n);var a=o&&("select"===p||"auto"===p)?((e,t)=>{for(var r of e){var n,o=null===(n=r.layer)||void 0===n?void 0:n.id;if(t[o])return{feature:r,config:t[o]}}return null})(n,b):null;a?function(e){var t,r,{feature:n,config:o}=e;l.remove("location");var i=f&&K(n,g),a=null!==(t=null===(r=n.properties)||void 0===r?void 0:r[o.idProperty])&&void 0!==t?t:n.id;if(!a)return;c({type:"TOGGLE_SELECTED_FEATURES",payload:{featureId:a,multiSelect:d,layerId:o.layerId,idProperty:o.idProperty,properties:n.properties,geometry:n.geometry,replaceAll:f&&!i}})}(a):"marker"===p||"auto"===p&&o?(c({type:"CLEAR_SELECTED_FEATURES"}),l.add("location",r,{color:y}),E.emit("interact:markerchange",{coords:r})):S&&c({type:"CLEAR_SELECTED_FEATURES"})},[s,u,p,d,E,c,l,f,g,b,null==i?void 0:i.debug,h,y,S]);return((e,n,o)=>{var i=t(null);r(()=>{if(!(n.length>0)||o){var t=i.current;(null===t||0===t.length)&&0===n.length||(e.emit("interact:selectionchange",{selectedFeatures:n,selectionBounds:o,canMerge:z(n),canSplit:V(n)}),i.current=n)}},[n,o])})(E,g,v),{handleInteraction:m}},X={tolerance:10,interactionMode:"marker",multiSelect:!1,contiguous:!1,deselectOnClickOutside:!1,markerColor:"rgba(212,53,28,1)",selectedStroke:"rgba(212,53,28,1)",selectedFill:"rgba(255, 0, 0, 0.1)",selectedStrokeWidth:2},Y=(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},Z=e=>{var{mapProvider:t,mapStyle:o,pluginState:i,selectedFeatures:a,dispatch:s,events:l,eventBus:c}=e,{dataLayers:u}=i,p=n(()=>o?((e,t)=>{var r={};return t?(e.forEach(e=>{var n=e.selectedStroke||X.selectedStroke,o=e.selectedFill||X.selectedFill,i=e.selectedStrokeWidth||X.selectedStrokeWidth;r[e.layerId]={stroke:Y(n,t.id),fill:Y(o,t.id),strokeWidth:i}}),r):r})(u,o):null,[u,o]),d=()=>{var e,r=null===(e=t.updateHighlightedFeatures)||void 0===e?void 0:e.call(t,a,p);s({type:"UPDATE_SELECTED_BOUNDS",payload:r})};r(()=>{if(t&&a&&p)return d(),c.on(l.MAP_DATA_CHANGE,d),()=>{c.off(l.MAP_DATA_CHANGE,d)}},[a,t,p])};function $(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}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}function te(e){var{appState:t,mapState:r,pluginState:n,buttonConfig:o,events:i,eventBus:a,handleInteraction:s,closeApp:l}=e,{selectDone:c,selectAtTarget:u,selectCancel:p}=o,{viewportRef:d}=t.layoutRefs,f=!1,y=e=>{f="Enter"===e.key&&d.current===e.target},h=e=>{"Enter"===e.key&&f&&(e.preventDefault(),E())},g=!1,v=setTimeout(()=>{g=!0},0),S=e=>{g&&s(e)},E=()=>s(r.crossHair.getDetail()),b=((e,t)=>(r,n)=>{e.markers.remove("location"),t.dispatch({type:"TOGGLE_SELECTED_FEATURES",payload:ee({multiSelect:t.multiSelect,addToExisting:n},r)})})(r,n),m=e=>b(e,!0),w=e=>b(e,!1);return document.addEventListener("keydown",y),document.addEventListener("keyup",h),a.on(i.MAP_CLICK,S),a.on("interact:selectFeature",m),a.on("interact:unselectFeature",w),u.onClick=E,c.onClick=()=>{var e,o=r.markers.getMarker("location"),{coords:i}=o||{},{selectionBounds:s,selectedFeatures:c}=n;t.disabledButtons.has("selectDone")||(a.emit("interact:done",ee(ee(ee({},i&&{coords:i}),!i&&c&&{selectedFeatures:c}),!i&&s&&{selectionBounds:s})),(null===(e=n.closeOnAction)||void 0===e||e)&&l())},p.onClick=()=>{var e;a.emit("interact:cancel"),(null===(e=n.closeOnAction)||void 0===e||e)&&l()},()=>{clearTimeout(v),c.onClick=null,u.onClick=null,p.onClick=null,document.removeEventListener("keydown",y),document.removeEventListener("keyup",h),a.off(i.MAP_CLICK,S),a.off("interact:selectFeature",m),a.off("interact:unselectFeature",w)}}function re(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function ne(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}var oe={ENABLE:(e,t)=>ne(ne(ne({},e),t),{},{enabled:!0}),DISABLE:e=>ne(ne({},e),{},{enabled:!1,selectedFeatures:[],selectionBounds:null}),TOGGLE_SELECTED_FEATURES:(e,t)=>{var{featureId:r,multiSelect:n,layerId:o,idProperty:i,addToExisting:a=!0,replaceAll:s=!1,properties:l,geometry:c}=t,u=Array.isArray(e.selectedFeatures)?e.selectedFeatures:[],p=u.findIndex(e=>e.featureId===r&&e.layerId===o);if(!1===a){var d=u.filter((e,t)=>t!==p);return ne(ne({},e),{},{selectedFeatures:d,selectionBounds:null})}var f,y={featureId:r,layerId:o,idProperty:i,properties:l,geometry:c};if(n&&!s){var h=[...u];-1===p?h.push(y):h.splice(p,1),f=h}else{f=-1!==p&&1===u.length?[]:[y]}return ne(ne({},e),{},{selectedFeatures:f,selectionBounds:null})},UPDATE_SELECTED_BOUNDS:(e,t)=>JSON.stringify(t)===JSON.stringify(e.selectionBounds)?e:ne(ne({},e),{},{selectionBounds:t}),CLEAR_SELECTED_FEATURES:e=>ne(ne({},e),{},{selectedFeatures:[],selectionBounds:null})};function ie(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function ae(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={InitComponent:e=>{var{appState:t,mapState:n,services:o,buttonConfig:i,mapProvider:a,pluginState:s}=e,{interfaceType:l}=t,{dispatch:c,enabled:u,selectedFeatures:p,selectionBounds:d}=s,{events:f,eventBus:y,closeApp:h}=o,{crossHair:g,mapStyle:v}=n,S=["touch","keyboard"].includes(l),{handleInteraction:E}=Q({mapState:n,pluginState:s,services:o,mapProvider:a});return Z({mapProvider:a,mapStyle:v,pluginState:s,selectedFeatures:p,dispatch:c,events:f,eventBus:y}),r(()=>{u&&S?g.fixAtCenter():g.hide()},[u,l]),r(()=>{if(s.enabled)return te({appState:t,pluginState:s,mapState:n,buttonConfig:i,events:f,eventBus:y,handleInteraction:E,closeApp:h})},[t,n,s,i,y,E]),null},reducer:{initialState:{enabled:!1,dataLayers:[],markerColor:null,interactionMode:null,multiSelect:!1,contiguous:!1,deselectOnClickOutside:!1,selectedFeatures:[],selectionBounds:null,closeOnAction:!0},actions:oe},buttons:[{id:"selectAtTarget",label:"Select",iconId:"select",variant:"touch",hiddenWhen:e=>{var{appState:t,pluginState:r}=e;return!r.enabled||"touch"!==t.interfaceType},mobile:{slot:"actions",showLabel:!1},tablet:{slot:"actions",showLabel:!1},desktop:{slot:"actions",showLabel:!1}},{id:"selectCancel",label:"Back",variant:"tertiary",hiddenWhen:e=>{var{appConfig:t,appState:r,pluginState:n}=e;return!n.enabled||!(["hybrid","buttonFirst"].includes(t.behaviour)&&r.isFullscreen)},mobile:{slot:"actions",showLabel:!0},tablet:{slot:"actions",showLabel:!0},desktop:{slot:"actions",showLabel:!0}},{id:"selectDone",label:"Continue",variant:"primary",excludeWhen:e=>{var{appState:t,pluginState:r}=e;return!r.enabled||!t.isFullscreen},enableWhen:e=>{var{mapState:t,pluginState:r}=e;return!!t.markers.items.some(e=>"location"===e.id)||!!r.selectionBounds},mobile:{slot:"actions",showLabel:!0},tablet:{slot:"actions",showLabel:!0},desktop:{slot:"actions",showLabel:!0}}],keyboardShortcuts:[{id:"selectOrMark",group:"Select",title:"Select feature",command:"<kbd>Enter</kbd></dd>"}],icons:[{id:"select",svgContent:'<path d="M22 14a8 8 0 0 1-8 8"/><path d="M18 11v-1a2 2 0 0 0-2-2a2 2 0 0 0-2 2"/><path d="M14 10V9a2 2 0 0 0-2-2a2 2 0 0 0-2 2v1"/><path d="M10 9.5V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v10"/><path d="M18 11a2 2 0 1 1 4 0v3a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15"/>'}],api:{enable:(e,t)=>{var{pluginState:r,pluginConfig:n}=e;r.dispatch({type:"ENABLE",payload:ae(ae(ae({},X),n),t)})},disable:e=>{var{pluginState:t}=e;t.dispatch({type:"DISABLE"})},clear:e=>{var{pluginState:t,mapState:r}=e;t.dispatch({type:"CLEAR_SELECTED_FEATURES"}),r.markers.remove("location")},selectFeature:(e,t)=>{var{services:r}=e,{featureId:n,layerId:o,idProperty:i}=t;r.eventBus.emit("interact:selectFeature",{featureId:n,layerId:o,idProperty:i})},unselectFeature:(e,t)=>{var{services:r}=e,{featureId:n,layerId:o,idProperty:i}=t;r.eventBus.emit("interact:unselectFeature",{featureId:n,layerId:o,idProperty:i})}}};export{se as manifest};
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import{useCallback as e,useEffect as t,useMemo as r,useRef as n}from"react";var o={"./plugins/interact/src/manifest.js"(o,i,a){a.d(i,{manifest:()=>he}),a.r(i);function u(e,t,r={}){const n={type:"Feature"};return(0===r.id||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=t||{},n.geometry=e,n}function c(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!p(e[0])||!p(e[1]))throw new Error("coordinates must contain numbers");return u({type:"Point",coordinates:e},t,r)}function l(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return u({type:"LineString",coordinates:e},t,r)}function s(e,t={}){const r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function f(e,t,r={}){return u({type:"MultiLineString",coordinates:e},t,r)}function p(e){return!isNaN(e)&&null!==e&&!Array.isArray(e)}Math.PI;const y=11102230246251565e-32,d=134217729,g=(3+8*y)*y;function h(e,t,r,n,o){let i,a,u,c,l=t[0],s=n[0],f=0,p=0;s>l==s>-l?(i=l,l=t[++f]):(i=s,s=n[++p]);let y=0;if(f<e&&p<r)for(s>l==s>-l?(a=l+i,u=i-(a-l),l=t[++f]):(a=s+i,u=i-(a-s),s=n[++p]),i=a,0!==u&&(o[y++]=u);f<e&&p<r;)s>l==s>-l?(a=i+l,c=a-i,u=i-(a-c)+(l-c),l=t[++f]):(a=i+s,c=a-i,u=i-(a-c)+(s-c),s=n[++p]),i=a,0!==u&&(o[y++]=u);for(;f<e;)a=i+l,c=a-i,u=i-(a-c)+(l-c),l=t[++f],i=a,0!==u&&(o[y++]=u);for(;p<r;)a=i+s,c=a-i,u=i-(a-c)+(s-c),s=n[++p],i=a,0!==u&&(o[y++]=u);return 0===i&&0!==y||(o[y++]=i),y}function v(e){return new Float64Array(e)}const b=v(4),m=v(8),S=v(12),w=v(16),E=v(4);function P(e,t,r,n,o,i){const a=(t-i)*(r-o),u=(e-o)*(n-i),c=a-u,l=Math.abs(a+u);return Math.abs(c)>=33306690738754716e-32*l?c:-function(e,t,r,n,o,i,a){let u,c,l,s,f,p,y,v,P,O,j,A,L,k,F,C,I,T;const M=e-o,x=r-o,D=t-i,_=n-i;k=M*_,p=d*M,y=p-(p-M),v=M-y,p=d*_,P=p-(p-_),O=_-P,F=v*O-(k-y*P-v*P-y*O),C=D*x,p=d*D,y=p-(p-D),v=D-y,p=d*x,P=p-(p-x),O=x-P,I=v*O-(C-y*P-v*P-y*O),j=F-I,f=F-j,b[0]=F-(j+f)+(f-I),A=k+j,f=A-k,L=k-(A-f)+(j-f),j=L-C,f=L-j,b[1]=L-(j+f)+(f-C),T=A+j,f=T-A,b[2]=A-(T-f)+(j-f),b[3]=T;let B=function(e,t){let r=t[0];for(let e=1;e<4;e++)r+=t[e];return r}(0,b),G=22204460492503146e-32*a;if(B>=G||-B>=G)return B;if(f=e-M,u=e-(M+f)+(f-o),f=r-x,l=r-(x+f)+(f-o),f=t-D,c=t-(D+f)+(f-i),f=n-_,s=n-(_+f)+(f-i),0===u&&0===c&&0===l&&0===s)return B;if(G=11093356479670487e-47*a+g*Math.abs(B),B+=M*s+_*u-(D*l+x*c),B>=G||-B>=G)return B;k=u*_,p=d*u,y=p-(p-u),v=u-y,p=d*_,P=p-(p-_),O=_-P,F=v*O-(k-y*P-v*P-y*O),C=c*x,p=d*c,y=p-(p-c),v=c-y,p=d*x,P=p-(p-x),O=x-P,I=v*O-(C-y*P-v*P-y*O),j=F-I,f=F-j,E[0]=F-(j+f)+(f-I),A=k+j,f=A-k,L=k-(A-f)+(j-f),j=L-C,f=L-j,E[1]=L-(j+f)+(f-C),T=A+j,f=T-A,E[2]=A-(T-f)+(j-f),E[3]=T;const U=h(4,b,4,E,m);k=M*s,p=d*M,y=p-(p-M),v=M-y,p=d*s,P=p-(p-s),O=s-P,F=v*O-(k-y*P-v*P-y*O),C=D*l,p=d*D,y=p-(p-D),v=D-y,p=d*l,P=p-(p-l),O=l-P,I=v*O-(C-y*P-v*P-y*O),j=F-I,f=F-j,E[0]=F-(j+f)+(f-I),A=k+j,f=A-k,L=k-(A-f)+(j-f),j=L-C,f=L-j,E[1]=L-(j+f)+(f-C),T=A+j,f=T-A,E[2]=A-(T-f)+(j-f),E[3]=T;const R=h(U,m,4,E,S);k=u*s,p=d*u,y=p-(p-u),v=u-y,p=d*s,P=p-(p-s),O=s-P,F=v*O-(k-y*P-v*P-y*O),C=c*l,p=d*c,y=p-(p-c),v=c-y,p=d*l,P=p-(p-l),O=l-P,I=v*O-(C-y*P-v*P-y*O),j=F-I,f=F-j,E[0]=F-(j+f)+(f-I),A=k+j,f=A-k,L=k-(A-f)+(j-f),j=L-C,f=L-j,E[1]=L-(j+f)+(f-C),T=A+j,f=T-A,E[2]=A-(T-f)+(j-f),E[3]=T;const N=h(R,S,4,E,w);return w[N-1]}(e,t,r,n,o,i,l)}function O(e,t){var r,n,o,i,a,u,c,l,s,f=0,p=e[0],y=e[1],d=t.length;for(r=0;r<d;r++){n=0;var g=t[r],h=g.length-1;if((l=g[0])[0]!==g[h][0]&&l[1]!==g[h][1])throw new Error("First and last coordinates in a ring must be the same");for(i=l[0]-p,a=l[1]-y;n<h;n++){if(u=(s=g[n+1])[0]-p,c=s[1]-y,0===a&&0===c){if(u<=0&&i>=0||i<=0&&u>=0)return 0}else if(c>=0&&a<=0||c<=0&&a>=0){if(0===(o=P(i,u,a,c,0,0)))return 0;(o>0&&c>0&&a<=0||o<0&&c<=0&&a>0)&&f++}l=s,a=c,i=u}}return f%2!=0}function j(e){return"Feature"===e.type?e.geometry:e}function A(e,t,r={}){if(!e)throw new Error("point is required");if(!t)throw new Error("polygon is required");const n=function(e){if(!e)throw new Error("coord is required");if(!Array.isArray(e)){if("Feature"===e.type&&null!==e.geometry&&"Point"===e.geometry.type)return[...e.geometry.coordinates];if("Point"===e.type)return[...e.coordinates]}if(Array.isArray(e)&&e.length>=2&&!Array.isArray(e[0])&&!Array.isArray(e[1]))return[...e];throw new Error("coord must be GeoJSON Point or an Array of numbers")}(e),o=j(t),i=o.type,a=t.bbox;let u=o.coordinates;if(a&&!1===function(e,t){return t[0]<=e[0]&&t[1]<=e[1]&&t[2]>=e[0]&&t[3]>=e[1]}(n,a))return!1;"Polygon"===i&&(u=[u]);let c=!1;for(var l=0;l<u.length;++l){const e=O(n,u[l]);if(0===e)return!r.ignoreBoundary;e&&(c=!0)}return c}v(4),v(4),v(4),v(4),v(4),v(4),v(4),v(4),v(4),v(8),v(8),v(8),v(4),v(8),v(8),v(8),v(12),v(192),v(192),v(4),v(4),v(4),v(4),v(4),v(4),v(4),v(4),v(8),v(8),v(8),v(8),v(8),v(8),v(8),v(8),v(8),v(4),v(4),v(4),v(8),v(16),v(16),v(16),v(32),v(32),v(48),v(64),v(1152),v(1152),v(4),v(4),v(4),v(4),v(4),v(4),v(4),v(4),v(4),v(4),v(24),v(24),v(24),v(24),v(24),v(24),v(24),v(24),v(24),v(24),v(1152),v(1152),v(1152),v(1152),v(1152),v(2304),v(2304),v(3456),v(5760),v(8),v(8),v(8),v(16),v(24),v(48),v(48),v(96),v(192),v(384),v(384),v(384),v(768),v(96),v(96),v(96),v(1152);class L{constructor(e=[],t=k){if(this.data=e,this.length=this.data.length,this.compare=t,this.length>0)for(let e=(this.length>>1)-1;e>=0;e--)this._down(e)}push(e){this.data.push(e),this.length++,this._up(this.length-1)}pop(){if(0===this.length)return;const e=this.data[0],t=this.data.pop();return this.length--,this.length>0&&(this.data[0]=t,this._down(0)),e}peek(){return this.data[0]}_up(e){const{data:t,compare:r}=this,n=t[e];for(;e>0;){const o=e-1>>1,i=t[o];if(r(n,i)>=0)break;t[e]=i,e=o}t[e]=n}_down(e){const{data:t,compare:r}=this,n=this.length>>1,o=t[e];for(;e<n;){let n=1+(e<<1),i=t[n];const a=n+1;if(a<this.length&&r(t[a],i)<0&&(n=a,i=t[a]),r(i,o)>=0)break;t[e]=i,e=n}t[e]=o}}function k(e,t){return e<t?-1:e>t?1:0}function F(e,t){return e.p.x>t.p.x?1:e.p.x<t.p.x?-1:e.p.y!==t.p.y?e.p.y>t.p.y?1:-1:1}function C(e,t){return e.rightSweepEvent.p.x>t.rightSweepEvent.p.x?1:e.rightSweepEvent.p.x<t.rightSweepEvent.p.x?-1:e.rightSweepEvent.p.y!==t.rightSweepEvent.p.y?e.rightSweepEvent.p.y<t.rightSweepEvent.p.y?1:-1:1}class I{constructor(e,t,r,n){this.p={x:e[0],y:e[1]},this.featureId=t,this.ringId=r,this.eventId=n,this.otherEvent=null,this.isLeftEndpoint=null}isSamePoint(e){return this.p.x===e.p.x&&this.p.y===e.p.y}}let T=0,M=0,x=0;function D(e,t){const r="Feature"===e.type?e.geometry:e;let n=r.coordinates;"Polygon"!==r.type&&"MultiLineString"!==r.type||(n=[n]),"LineString"===r.type&&(n=[[n]]);for(let e=0;e<n.length;e++)for(let r=0;r<n[e].length;r++){let o=n[e][r][0],i=null;M+=1;for(let a=0;a<n[e][r].length-1;a++){i=n[e][r][a+1];const u=new I(o,T,M,x),c=new I(i,T,M,x+1);u.otherEvent=c,c.otherEvent=u,F(u,c)>0?(c.isLeftEndpoint=!0,u.isLeftEndpoint=!1):(u.isLeftEndpoint=!0,c.isLeftEndpoint=!1),t.push(u),t.push(c),o=i,x+=1}}T+=1}class _{constructor(e){this.leftSweepEvent=e,this.rightSweepEvent=e.otherEvent}}function B(e,t){if(null===e||null===t)return!1;if(e.leftSweepEvent.ringId===t.leftSweepEvent.ringId&&(e.rightSweepEvent.isSamePoint(t.leftSweepEvent)||e.rightSweepEvent.isSamePoint(t.leftSweepEvent)||e.rightSweepEvent.isSamePoint(t.rightSweepEvent)||e.leftSweepEvent.isSamePoint(t.leftSweepEvent)||e.leftSweepEvent.isSamePoint(t.rightSweepEvent)))return!1;const r=e.leftSweepEvent.p.x,n=e.leftSweepEvent.p.y,o=e.rightSweepEvent.p.x,i=e.rightSweepEvent.p.y,a=t.leftSweepEvent.p.x,u=t.leftSweepEvent.p.y,c=t.rightSweepEvent.p.x,l=t.rightSweepEvent.p.y,s=(l-u)*(o-r)-(c-a)*(i-n);if(0===s)return!1;const f=((c-a)*(n-u)-(l-u)*(r-a))/s,p=((o-r)*(n-u)-(i-n)*(r-a))/s;return f>=0&&f<=1&&p>=0&&p<=1&&[r+f*(o-r),n+f*(i-n)]}function G(e,t,r={}){const{removeDuplicates:n=!0,ignoreSelfIntersections:o=!0}=r;let i=[];"FeatureCollection"===e.type?i=i.concat(e.features):"Feature"===e.type?i.push(e):"LineString"!==e.type&&"Polygon"!==e.type&&"MultiLineString"!==e.type&&"MultiPolygon"!==e.type||i.push(u(e)),"FeatureCollection"===t.type?i=i.concat(t.features):"Feature"===t.type?i.push(t):"LineString"!==t.type&&"Polygon"!==t.type&&"MultiLineString"!==t.type&&"MultiPolygon"!==t.type||i.push(u(t));const a=function(e,t){const r=new L([],F);return function(e,t){if("FeatureCollection"===e.type){const r=e.features;for(let e=0;e<r.length;e++)D(r[e],t)}else D(e,t)}(e,r),function(e,t){t=t||!1;const r=[],n=new L([],C);for(;e.length;){const o=e.pop();if(o.isLeftEndpoint){const e=new _(o);for(let i=0;i<n.data.length;i++){const a=n.data[i];if(t&&a.leftSweepEvent.featureId===o.featureId)continue;const u=B(e,a);!1!==u&&r.push(u)}n.push(e)}else!1===o.isLeftEndpoint&&n.pop()}return r}(r,t)}(s(i),o);let l=[];if(n){const e={};a.forEach(t=>{const r=t.join(",");e[r]||(e[r]=!0,l.push(t))})}else l=a;return s(l.map(e=>c(e)))}function U(e,t){!function(e,t){var r,n,o,i,a,u,c,l,s,f,p=0,y="FeatureCollection"===e.type,d="Feature"===e.type,g=y?e.features.length:1;for(r=0;r<g;r++){for(u=y?e.features[r].geometry:d?e.geometry:e,l=y?e.features[r].properties:d?e.properties:{},s=y?e.features[r].bbox:d?e.bbox:void 0,f=y?e.features[r].id:d?e.id:void 0,a=(c=!!u&&"GeometryCollection"===u.type)?u.geometries.length:1,o=0;o<a;o++)if(null!==(i=c?u.geometries[o]:u))switch(i.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":if(!1===t(i,p,l,s,f))return!1;break;case"GeometryCollection":for(n=0;n<i.geometries.length;n++)if(!1===t(i.geometries[n],p,l,s,f))return!1;break;default:throw new Error("Unknown Geometry Type")}else if(!1===t(null,p,l,s,f))return!1;p++}}(e,function(e,r,n,o,i){var a,c=null===e?null:e.type;switch(c){case null:case"Point":case"LineString":case"Polygon":return!1!==t(u(e,n,{bbox:o,id:i}),r,0)&&void 0}switch(c){case"MultiPoint":a="Point";break;case"MultiLineString":a="LineString";break;case"MultiPolygon":a="Polygon"}for(var l=0;l<e.coordinates.length;l++){var s=e.coordinates[l];if(!1===t(u({type:a,coordinates:s},n),r,l))return!1}})}function R(e,t={}){const r=j(e);switch(t.properties||"Feature"!==e.type||(t.properties=e.properties),r.type){case"Polygon":return function(e,t={}){return N(j(e).coordinates,t.properties?t.properties:"Feature"===e.type?e.properties:{})}(r,t);case"MultiPolygon":return function(e,t={}){const r=j(e).coordinates,n=t.properties?t.properties:"Feature"===e.type?e.properties:{},o=[];return r.forEach(e=>{o.push(N(e,n))}),s(o)}(r,t);default:throw new Error("invalid poly")}}function N(e,t){return e.length>1?f(e,t):l(e[0],t)}function W(e,t){for(let r=0;r<e.coordinates.length-1;r++)if(H(e.coordinates[r],e.coordinates[r+1],t.coordinates))return!0;return!1}function q(e,t,r){for(const r of t.coordinates)if(A(r,e))return!0;return G(t,R(e),{ignoreSelfIntersections:r}).features.length>0}function H(e,t,r){const n=r[0]-e[0],o=r[1]-e[1],i=t[0]-e[0],a=t[1]-e[1];return 0===n*a-o*i&&(Math.abs(i)>=Math.abs(a)?i>0?e[0]<=r[0]&&r[0]<=t[0]:t[0]<=r[0]&&r[0]<=e[0]:a>0?e[1]<=r[1]&&r[1]<=t[1]:t[1]<=r[1]&&r[1]<=e[1])}function J(e){return function(e){if(Array.isArray(e))return $(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return $(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?$(e,t):void 0}}(e)||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 $(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function K(e){var t=e.geometry||e;switch(t.type){case"Polygon":return function(e,t,r={}){for(const t of e){if(t.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(t[t.length-1].length!==t[0].length)throw new Error("First and last Position are not equivalent.");for(let e=0;e<t[t.length-1].length;e++)if(t[t.length-1][e]!==t[0][e])throw new Error("First and last Position are not equivalent.")}return u({type:"Polygon",coordinates:e},t,r)}(t.coordinates);case"MultiPolygon":return function(e,t,r={}){return u({type:"MultiPolygon",coordinates:e},t,r)}(t.coordinates);case"LineString":return l(t.coordinates);case"MultiLineString":return f(t.coordinates);case"Point":return c(t.coordinates);case"MultiPoint":return function(e,t,r={}){return u({type:"MultiPoint",coordinates:e},t,r)}(t.coordinates);default:throw new Error("Unsupported geometry type: ".concat(t.type))}}function V(e,t){return t.some(function(t){return!function(e,t,{ignoreSelfIntersections:r=!0}={ignoreSelfIntersections:!0}){let n=!0;return U(e,e=>{U(t,t=>{if(!1===n)return!1;n=function(e,t,r){switch(e.type){case"Point":switch(t.type){case"Point":return n=e.coordinates,o=t.coordinates,!(n[0]===o[0]&&n[1]===o[1]);case"LineString":return!W(t,e);case"Polygon":return!A(e,t)}break;case"LineString":switch(t.type){case"Point":return!W(e,t);case"LineString":return!function(e,t,r){return G(e,t,{ignoreSelfIntersections:r}).features.length>0}(e,t,r);case"Polygon":return!q(t,e,r)}break;case"Polygon":switch(t.type){case"Point":return!A(t,e);case"LineString":return!q(e,t,r);case"Polygon":return!function(e,t,r){for(const r of e.coordinates[0])if(A(r,t))return!0;for(const r of t.coordinates[0])if(A(r,e))return!0;return G(R(e),R(t),{ignoreSelfIntersections:r}).features.length>0}(t,e,r)}}var n,o;return!1}(e.geometry,t.geometry,r)})}),n}(K(t),K(e))})}function z(e){var t;if(1!==e.length)return!1;var r=null===(t=e[0].geometry)||void 0===t?void 0:t.type;return"Polygon"===r||"MultiPolygon"===r}function Q(e){if(e.length<2)return!1;if(e.some(function(e){var t;return!(null!==(t=e.geometry)&&void 0!==t&&t.type)}))return!1;for(var t=new Set([0]),r=!0;r;){r=!1;for(var n=1;n<e.length;n++)if(!t.has(n)){var o=J(t).map(function(t){return e[t]});V(e[n],o)&&(t.add(n),r=!0)}}return t.size===e.length}function X(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return Y(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Y(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}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 i,a=!0,u=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){u=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function Y(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var Z={tolerance:10,interactionMode:"marker",multiSelect:!1,contiguous:!1,deselectOnClickOutside:!1,markerColor:"rgba(212,53,28,1)",selectedStroke:"rgba(212,53,28,1)",selectedFill:"rgba(255, 0, 0, 0.1)",selectedStrokeWidth:2};function ee(e){return ee="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ee(e)}var te=function(e,t){if(!e)return null;if("string"==typeof e)return e.trim();if("object"===ee(e)){if(t&&e[t])return e[t];var r=Object.values(e)[0];return null!=r?r:null}return null};function re(e){return re="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},re(e)}function ne(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function oe(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ne(Object(r),!0).forEach(function(t){ie(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ne(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function ie(e,t,r){return(t=function(e){var t=function(e){if("object"!=re(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=re(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==re(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ae(e){return ae="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ae(e)}function ue(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function ce(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function le(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ce(Object(r),!0).forEach(function(t){se(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ce(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function se(e,t,r){return(t=function(e){var t=function(e){if("object"!=ae(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=ae(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==ae(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var fe={ENABLE:function(e,t){return le(le(le({},e),t),{},{enabled:!0})},DISABLE:function(e){return le(le({},e),{},{enabled:!1,selectedFeatures:[],selectionBounds:null})},TOGGLE_SELECTED_FEATURES:function(e,t){var r=t.featureId,n=t.multiSelect,o=t.layerId,i=t.idProperty,a=t.addToExisting,u=void 0===a||a,c=t.replaceAll,l=void 0!==c&&c,s=t.properties,f=t.geometry,p=Array.isArray(e.selectedFeatures)?e.selectedFeatures:[],y=p.findIndex(function(e){return e.featureId===r&&e.layerId===o});if(!1===u){var d=p.filter(function(e,t){return t!==y});return le(le({},e),{},{selectedFeatures:d,selectionBounds:null})}var g,h,v={featureId:r,layerId:o,idProperty:i,properties:s,geometry:f};if(n&&!l){var b=function(e){if(Array.isArray(e))return ue(e)}(h=p)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(h)||function(e,t){if(e){if("string"==typeof e)return ue(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ue(e,t):void 0}}(h)||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.")}();-1===y?b.push(v):b.splice(y,1),g=b}else g=-1!==y&&1===p.length?[]:[v];return le(le({},e),{},{selectedFeatures:g,selectionBounds:null})},UPDATE_SELECTED_BOUNDS:function(e,t){return JSON.stringify(t)===JSON.stringify(e.selectionBounds)?e:le(le({},e),{},{selectionBounds:t})},CLEAR_SELECTED_FEATURES:function(e){return le(le({},e),{},{selectedFeatures:[],selectionBounds:null})}};function pe(e){return pe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},pe(e)}function ye(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function de(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ye(Object(r),!0).forEach(function(t){ge(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ye(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function ge(e,t,r){return(t=function(e){var t=function(e){if("object"!=pe(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=pe(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==pe(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var he={InitComponent:function(o){var i=o.appState,a=o.mapState,u=o.services,c=o.buttonConfig,l=o.mapProvider,s=o.pluginState,f=i.interfaceType,p=s.dispatch,y=s.enabled,d=s.selectedFeatures,g=s.selectionBounds,h=u.events,v=u.eventBus,b=u.closeApp,m=a.crossHair,S=a.mapStyle,w=["touch","keyboard"].includes(f),E=function(r){var o=r.mapState,i=r.pluginState,a=r.services,u=r.mapProvider,c=o.markers,l=i.dispatch,s=i.dataLayers,f=i.interactionMode,p=i.multiSelect,y=i.contiguous,d=i.markerColor,g=i.tolerance,h=i.selectedFeatures,v=i.selectionBounds,b=i.deselectOnClickOutside,m=a.eventBus,S=function(e){var t,r={},n=X(e);try{for(n.s();!(t=n.n()).done;){var o=t.value;r[o.layerId]=o}}catch(e){n.e(e)}finally{n.f()}return r}(s),w=e(function(e){var t=e.point,r=e.coords,n=function(e,t,r){try{return(null==e?void 0:e.getFeaturesAtPoint(t,r))||[]}catch(e){return console.warn("Feature query failed:",e),[]}}(u,t,{radius:g}),o=s.length>0;null!=i&&i.debug&&console.log("--- Features at ".concat(r," ---"),n);var a=!o||"select"!==f&&"auto"!==f?null:function(e,t){var r,n=X(e);try{for(n.s();!(r=n.n()).done;){var o,i=r.value,a=null===(o=i.layer)||void 0===o?void 0:o.id;if(t[a])return{feature:i,config:t[a]}}}catch(e){n.e(e)}finally{n.f()}return null}(n,S);a?function(e){var t,r,n=e.feature,o=e.config;c.remove("location");var i=y&&V(n,h),a=null!==(t=null===(r=n.properties)||void 0===r?void 0:r[o.idProperty])&&void 0!==t?t:n.id;a&&l({type:"TOGGLE_SELECTED_FEATURES",payload:{featureId:a,multiSelect:p,layerId:o.layerId,idProperty:o.idProperty,properties:n.properties,geometry:n.geometry,replaceAll:y&&!i}})}(a):"marker"===f||"auto"===f&&o?(l({type:"CLEAR_SELECTED_FEATURES"}),c.add("location",r,{color:d}),m.emit("interact:markerchange",{coords:r})):b&&l({type:"CLEAR_SELECTED_FEATURES"})},[u,s,f,p,m,l,c,y,h,S,null==i?void 0:i.debug,g,d,b]);return function(e,r,o){var i=n(null);t(function(){if(!(r.length>0)||o){var t=i.current;(null===t||0===t.length)&&0===r.length||(e.emit("interact:selectionchange",{selectedFeatures:r,selectionBounds:o,canMerge:Q(r),canSplit:z(r)}),i.current=r)}},[r,o])}(m,h,v),{handleInteraction:w}}({appState:i,mapState:a,pluginState:s,services:u,mapProvider:l}).handleInteraction;return function(e){var n=e.mapProvider,o=e.mapStyle,i=e.pluginState,a=e.selectedFeatures,u=e.dispatch,c=e.events,l=e.eventBus,s=i.dataLayers,f=r(function(){return o?function(e,t){var r={};return t?(e.forEach(function(e){var n=e.selectedStroke||Z.selectedStroke,o=e.selectedFill||Z.selectedFill,i=e.selectedStrokeWidth||Z.selectedStrokeWidth;r[e.layerId]={stroke:te(n,t.id),fill:te(o,t.id),strokeWidth:i}}),r):r}(s,o):null},[s,o]),p=function(){var e,t=null===(e=n.updateHighlightedFeatures)||void 0===e?void 0:e.call(n,a,f);u({type:"UPDATE_SELECTED_BOUNDS",payload:t})};t(function(){if(n&&a&&f)return p(),l.on(c.MAP_DATA_CHANGE,p),function(){l.off(c.MAP_DATA_CHANGE,p)}},[a,n,f])}({mapProvider:l,mapStyle:S,pluginState:s,selectedFeatures:d,selectionBounds:g,dispatch:p,events:h,eventBus:v}),t(function(){y&&w?m.fixAtCenter():m.hide()},[y,f]),t(function(){if(s.enabled)return function(e){var t=e.appState,r=e.mapState,n=e.pluginState,o=e.buttonConfig,i=e.events,a=e.eventBus,u=e.handleInteraction,c=e.closeApp,l=o.selectDone,s=o.selectAtTarget,f=o.selectCancel,p=t.layoutRefs.viewportRef,y=!1,d=function(e){y="Enter"===e.key&&p.current===e.target},g=function(e){"Enter"===e.key&&y&&(e.preventDefault(),m())},h=!1,v=setTimeout(function(){h=!0},0),b=function(e){h&&u(e)},m=function(){return u(r.crossHair.getDetail())},S=function(e,t){return function(r,n){e.markers.remove("location"),t.dispatch({type:"TOGGLE_SELECTED_FEATURES",payload:oe({multiSelect:t.multiSelect,addToExisting:n},r)})}}(r,n),w=function(e){return S(e,!0)},E=function(e){return S(e,!1)};return document.addEventListener("keydown",d),document.addEventListener("keyup",g),a.on(i.MAP_CLICK,b),a.on("interact:selectFeature",w),a.on("interact:unselectFeature",E),s.onClick=m,l.onClick=function(){var e,o=(r.markers.getMarker("location")||{}).coords,i=n.selectionBounds,u=n.selectedFeatures;t.disabledButtons.has("selectDone")||(a.emit("interact:done",oe(oe(oe({},o&&{coords:o}),!o&&u&&{selectedFeatures:u}),!o&&i&&{selectionBounds:i})),(null===(e=n.closeOnAction)||void 0===e||e)&&c())},f.onClick=function(){var e;a.emit("interact:cancel"),(null===(e=n.closeOnAction)||void 0===e||e)&&c()},function(){clearTimeout(v),l.onClick=null,s.onClick=null,f.onClick=null,document.removeEventListener("keydown",d),document.removeEventListener("keyup",g),a.off(i.MAP_CLICK,b),a.off("interact:selectFeature",w),a.off("interact:unselectFeature",E)}}({appState:i,pluginState:s,mapState:a,buttonConfig:c,events:h,eventBus:v,handleInteraction:E,closeApp:b})},[i,a,s,c,v,E]),null},reducer:{initialState:{enabled:!1,dataLayers:[],markerColor:null,interactionMode:null,multiSelect:!1,contiguous:!1,deselectOnClickOutside:!1,selectedFeatures:[],selectionBounds:null,closeOnAction:!0},actions:fe},buttons:[{id:"selectAtTarget",label:"Select",iconId:"select",variant:"touch",hiddenWhen:function(e){var t=e.appState;return!e.pluginState.enabled||"touch"!==t.interfaceType},mobile:{slot:"actions",showLabel:!1},tablet:{slot:"actions",showLabel:!1},desktop:{slot:"actions",showLabel:!1}},{id:"selectCancel",label:"Back",variant:"tertiary",hiddenWhen:function(e){var t=e.appConfig,r=e.appState;return!e.pluginState.enabled||!(["hybrid","buttonFirst"].includes(t.behaviour)&&r.isFullscreen)},mobile:{slot:"actions",showLabel:!0},tablet:{slot:"actions",showLabel:!0},desktop:{slot:"actions",showLabel:!0}},{id:"selectDone",label:"Continue",variant:"primary",excludeWhen:function(e){var t=e.appState;return!e.pluginState.enabled||!t.isFullscreen},enableWhen:function(e){var t=e.mapState,r=e.pluginState;return!!t.markers.items.some(function(e){return"location"===e.id})||!!r.selectionBounds},mobile:{slot:"actions",showLabel:!0},tablet:{slot:"actions",showLabel:!0},desktop:{slot:"actions",showLabel:!0}}],keyboardShortcuts:[{id:"selectOrMark",group:"Select",title:"Select feature",command:"<kbd>Enter</kbd></dd>"}],icons:[{id:"select",svgContent:'<path d="M22 14a8 8 0 0 1-8 8"/><path d="M18 11v-1a2 2 0 0 0-2-2a2 2 0 0 0-2 2"/><path d="M14 10V9a2 2 0 0 0-2-2a2 2 0 0 0-2 2v1"/><path d="M10 9.5V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v10"/><path d="M18 11a2 2 0 1 1 4 0v3a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15"/>'}],api:{enable:function(e,t){var r=e.pluginState,n=e.pluginConfig;r.dispatch({type:"ENABLE",payload:de(de(de({},Z),n),t)})},disable:function(e){e.pluginState.dispatch({type:"DISABLE"})},clear:function(e){var t=e.pluginState,r=e.mapState;t.dispatch({type:"CLEAR_SELECTED_FEATURES"}),r.markers.remove("location")},selectFeature:function(e,t){var r=e.services,n=t.featureId,o=t.layerId,i=t.idProperty;r.eventBus.emit("interact:selectFeature",{featureId:n,layerId:o,idProperty:i})},unselectFeature:function(e,t){var r=e.services,n=t.featureId,o=t.layerId,i=t.idProperty;r.eventBus.emit("interact:unselectFeature",{featureId:n,layerId:o,idProperty:i})}}}}},i={};function a(e){var t=i[e];if(void 0!==t)return t.exports;var r=i[e]={exports:{}};return o[e](r,r.exports,a),r.exports}a.d=(e,t)=>{for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var u={};function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function l(){var e,t,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var c=n&&n.prototype instanceof u?n:u,l=Object.create(c.prototype);return s(l,"_invoke",function(r,n,o){var i,u,c,l=0,s=o||[],f=!1,p={p:0,n:0,v:e,a:y,f:y.bind(e,4),d:function(t,r){return i=t,u=0,c=e,p.n=r,a}};function y(r,n){for(u=r,c=n,t=0;!f&&l&&!o&&t<s.length;t++){var o,i=s[t],y=p.p,d=i[2];r>3?(o=d===n)&&(c=i[(u=i[4])?5:(u=3,3)],i[4]=i[5]=e):i[0]<=y&&((o=r<2&&y<i[1])?(u=0,p.v=n,p.n=i[1]):y<d&&(o=r<3||i[0]>n||n>d)&&(i[4]=r,i[5]=n,p.n=d,u=0))}if(o||r>1)return a;throw f=!0,n}return function(o,s,d){if(l>1)throw TypeError("Generator is already running");for(f&&1===s&&y(s,d),u=s,c=d;(t=u<2?e:c)||!f;){i||(u?u<3?(u>1&&(p.n=-1),y(u,c)):p.n=c:p.v=c);try{if(l=2,i){if(u||(o="next"),t=i[o]){if(!(t=t.call(i,c)))throw TypeError("iterator result is not an object");if(!t.done)return t;c=t.value,u<2&&(u=0)}else 1===u&&(t=i.return)&&t.call(i),u<2&&(c=TypeError("The iterator does not provide a '"+o+"' method"),u=1);i=e}else if((t=(f=p.n<0)?c:r.call(n,p))!==a)break}catch(t){i=e,u=1,c=t}finally{l=1}}return{value:t,done:f}}}(r,o,i),!0),l}var a={};function u(){}function c(){}function f(){}t=Object.getPrototypeOf;var p=[][n]?t(t([][n]())):(s(t={},n,function(){return this}),t),y=f.prototype=u.prototype=Object.create(p);function d(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,s(e,o,"GeneratorFunction")),e.prototype=Object.create(y),e}return c.prototype=f,s(y,"constructor",f),s(f,"constructor",c),c.displayName="GeneratorFunction",s(f,o,"GeneratorFunction"),s(y),s(y,o,"Generator"),s(y,n,function(){return this}),s(y,"toString",function(){return"[object Generator]"}),(l=function(){return{w:i,m:d}})()}function s(e,t,r,n){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}s=function(e,t,r,n){function i(t,r){s(e,t,function(e){return this._invoke(t,r,e)})}t?o?o(e,t,{value:r,enumerable:!n,configurable:!n,writable:!n}):e[t]=r:(i("next",0),i("throw",1),i("return",2))},s(e,t,r,n)}function f(e,t,r,n,o,i,a){try{var u=e[i](a),c=u.value}catch(e){return void r(e)}u.done?t(c):Promise.resolve(c).then(n,o)}function p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?p(Object(r),!0).forEach(function(t){d(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):p(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function d(e,t,r){return(t=function(e){var t=function(e){if("object"!=c(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=c(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==c(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function g(){var e,t;return y(y({},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),{},{id:"interact",load:(e=l().m(function e(){var t;return l().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,Promise.resolve().then(a.bind(a,"./plugins/interact/src/manifest.js"));case 1:return t=e.v.manifest,e.a(2,t)}},e)}),t=function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function a(e){f(i,n,o,a,u,"next",e)}function u(e){f(i,n,o,a,u,"throw",e)}a(void 0)})},function(){return t.apply(this,arguments)})})}a.d(u,{A:()=>g});const h=u.A;export{h as default};
|
|
1
|
+
import e from"@babel/runtime/helpers/asyncToGenerator";import r from"@babel/runtime/helpers/defineProperty";function t(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,n)}return t}function n(e){for(var n=1;n<arguments.length;n++){var o=null!=arguments[n]?arguments[n]:{};n%2?t(Object(o),!0).forEach(function(t){r(e,t,o[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):t(Object(o)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))})}return e}function o(){var r;return n(n({},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),{},{id:"interact",load:(r=e(function*(){return(yield import(/* webpackChunkName: "im-interact-plugin" */ "./im-interact-plugin.js")).manifest}),function(){return r.apply(this,arguments)})})}export{o as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useRef as e,useEffect as t}from"preact/compat";import{jsx as r,jsxs as n}from"preact/jsx-runtime";import a from"@babel/runtime/helpers/defineProperty";import i from"@babel/runtime/helpers/taggedTemplateLiteral";import o from"@babel/runtime/helpers/asyncToGenerator";function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?s(Object(r),!0).forEach(function(t){a(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var c={TOGGLE_EXPANDED:(e,t)=>l(l({},e),{},{isExpanded:t,areSuggestionsVisible:t}),SET_KEYBOARD_FOCUS_WITHIN:(e,t)=>l(l({},e),{},{hasKeyboardFocusWithin:t,areSuggestionsVisible:!0}),INPUT_BLUR:(e,t)=>l(l({},e),{},{hasKeyboardFocusWithin:!1,areSuggestionsVisible:e.areSuggestionsVisible&&"keyboard"!==t,selectedIndex:-1}),SET_VALUE:(e,t)=>l(l({},e),{},{value:t}),UPDATE_SUGGESTIONS:(e,t)=>l(l({},e),{},{suggestions:t}),SHOW_SUGGESTIONS:e=>l(l({},e),{},{areSuggestionsVisible:!0}),HIDE_SUGGESTIONS:e=>l(l({},e),{},{areSuggestionsVisible:!1}),SET_SELECTED:(e,t)=>l(l({},e),{},{selectedIndex:t,areSuggestionsVisible:t>=0})},u=e=>{var{id:t,isExpanded:n,onClick:a,buttonRef:i,searchIcon:o}=e;return r("button",{"aria-label":"Open search",className:"im-c-map-button",onClick:a,"aria-controls":"".concat(t,"-search-form"),ref:i,style:n?{display:"none"}:void 0,children:o&&r("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false",dangerouslySetInnerHTML:{__html:o}})})},d=e=>{var{id:t,pluginState:n,handleSuggestionClick:a}=e;return r("ul",{id:"".concat(t,"-search-suggestions"),role:"listbox","aria-labelledby":"".concat(t,"-search"),className:"im-c-search-suggestions",style:n.areSuggestionsVisible&&n.suggestions.length?void 0:{display:"none"},children:n.suggestions.map((e,i)=>r("li",{id:"".concat(t,"-search-suggestion-").concat(i),className:"im-c-search-suggestions__item",role:"option","aria-selected":n.selectedIndex===i,"aria-setsize":n.suggestions.length,"aria-posinset":i+1,onClick:()=>a(e),children:r("span",{className:"im-c-search-suggestions__label",dangerouslySetInnerHTML:{__html:e.marked}})},e.id))})};function h(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function p(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){a(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 f=e=>{var{id:t,pluginState:a,pluginConfig:i,appState:o,inputRef:s,events:l,children:c}=e,u=["im-c-search-form",i.isExpanded&&"im-c-search-form--default-expanded","im-c-panel"].filter(Boolean).join(" ");return n("form",{id:"".concat(t,"-search-form"),role:"search",className:u,style:p({display:i.isExpanded||a.isExpanded?"flex":void 0},"mobile"!==o.breakpoint&&(null==i?void 0:i.width)&&{width:i.width}),"aria-controls":"".concat(t,"-viewport"),onSubmit:e=>l.handleSubmit(e,o,a),children:[r("button",{type:"submit",style:{display:"none"},"aria-hidden":"true",tabIndex:-1,children:"Submit"}),n("div",{className:"im-c-search__input-container".concat(a.hasKeyboardFocusWithin?" im-c-search__input-container--keyboard-focus-within":""),children:[r("label",{htmlFor:"".concat(t,"-search"),className:"im-u-visually-hidden",children:"Search"}),r("input",{id:"".concat(t,"-search"),className:"im-c-search__input",type:"search",role:"combobox","aria-expanded":a.suggestionsVisible,"aria-controls":"".concat(t,"-search-suggestions"),"aria-activedescendant":a.selectedIndex>=0?"".concat(t,"-search-suggestion-").concat(a.selectedIndex):void 0,"aria-describedby":a.value?void 0:"".concat(t,"-search-hint"),"aria-autocomplete":"list",autoComplete:"off",placeholder:"Search",name:"".concat(t,"-search"),spellCheck:!1,enterKeyHint:"search",value:a.value,onClick:l.handleInputClick,onChange:l.handleInputChange,onFocus:()=>l.handleInputFocus(o.interfaceType),onBlur:()=>l.handleInputBlur(o.interfaceType),onKeyDown:e=>l.handleInputKeyDown(e,a),ref:s}),r("span",{id:"".concat(t,"-search-hint"),className:"im-c-search__hint",children:"When search results are available use up and down arrows to review and enter to select. Touch device users, explore by touch or with swipe gestures."}),c]}),r(d,{id:t,appState:o,pluginState:a,handleSuggestionClick:e=>l.handleSuggestionClick(e,o)})]})},m=e=>{var{defaultExpanded:t,onClick:n,closeIcon:a}=e;return r("button",{"aria-label":"Close search",className:"im-c-map-button im-c-search-close-button",type:"button",onClick:n,style:t?{display:"none"}:void 0,children:a&&r("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false",dangerouslySetInnerHTML:{__html:a}})})};let g=" ";class y{static get separator(){return g}static set separator(e){g=e}static parse(e){if(!isNaN(parseFloat(e))&&isFinite(e))return Number(e);const t=String(e).trim().replace(/^-/,"").replace(/[NSEW]$/i,"").split(/[^0-9.,]+/);if(""==t[t.length-1]&&t.splice(t.length-1),""==t)return NaN;let r=null;switch(t.length){case 3:r=t[0]/1+t[1]/60+t[2]/3600;break;case 2:r=t[0]/1+t[1]/60;break;case 1:r=t[0];break;default:return NaN}return/^-|[WS]$/i.test(e.trim())&&(r=-r),Number(r)}static toDms(e,t="d",r=void 0){if(isNaN(e))return null;if("string"==typeof e&&""==e.trim())return null;if("boolean"==typeof e)return null;if(e==1/0)return null;if(null==e)return null;if(void 0===r)switch(t){case"d":case"deg":r=4;break;case"dm":case"deg+min":r=2;break;case"dms":case"deg+min+sec":r=0;break;default:t="d",r=4}e=Math.abs(e);let n=null,a=null,i=null,o=null;switch(t){default:case"d":case"deg":a=e.toFixed(r),a<100&&(a="0"+a),a<10&&(a="0"+a),n=a+"°";break;case"dm":case"deg+min":a=Math.floor(e),i=(60*e%60).toFixed(r),60==i&&(i=(0).toFixed(r),a++),a=("000"+a).slice(-3),i<10&&(i="0"+i),n=a+"°"+y.separator+i+"′";break;case"dms":case"deg+min+sec":a=Math.floor(e),i=Math.floor(3600*e/60)%60,o=(3600*e%60).toFixed(r),60==o&&(o=(0).toFixed(r),i++),60==i&&(i=0,a++),a=("000"+a).slice(-3),i=("00"+i).slice(-2),o<10&&(o="0"+o),n=a+"°"+y.separator+i+"′"+y.separator+o+"″"}return n}static toLat(e,t,r){const n=y.toDms(y.wrap90(e),t,r);return null===n?"–":n.slice(1)+y.separator+(e<0?"S":"N")}static toLon(e,t,r){const n=y.toDms(y.wrap180(e),t,r);return null===n?"–":n+y.separator+(e<0?"W":"E")}static toBrng(e,t,r){const n=y.toDms(y.wrap360(e),t,r);return null===n?"–":n.replace("360","0")}static fromLocale(e){const t=123456.789.toLocaleString(),r={thousands:t.slice(3,4),decimal:t.slice(7,8)};return e.replace(r.thousands,"⁜").replace(r.decimal,".").replace("⁜",",")}static toLocale(e){const t=123456.789.toLocaleString(),r={thousands:t.slice(3,4),decimal:t.slice(7,8)};return e.replace(/,([0-9])/,"⁜$1").replace(".",r.decimal).replace("⁜",r.thousands)}static compassPoint(e,t=3){if(![1,2,3].includes(Number(t)))throw new RangeError(`invalid precision ‘${t}’`);e=y.wrap360(e);const r=4*2**(t-1);return["N","NNE","NE","ENE","E","ESE","SE","SSE","S","SSW","SW","WSW","W","WNW","NW","NNW"][Math.round(e*r/360)%r*16/r]}static wrap90(e){if(-90<=e&&e<=90)return e;const t=e,r=360;return 1*Math.abs(((t-90)%r+r)%r-180)-90}static wrap180(e){if(-180<=e&&e<=180)return e;const t=360;return((360*e/t-180)%t+t)%t-180}static wrap360(e){if(0<=e&&e<360)return e;const t=360;return(360*e/t%t+t)%t}}Number.prototype.toRadians=function(){return this*Math.PI/180},Number.prototype.toDegrees=function(){return 180*this/Math.PI};class b{constructor(e,t,r){if(isNaN(e)||isNaN(t)||isNaN(r))throw new TypeError(`invalid vector [${e},${t},${r}]`);this.x=Number(e),this.y=Number(t),this.z=Number(r)}get length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}plus(e){if(!(e instanceof b))throw new TypeError("v is not Vector3d object");return new b(this.x+e.x,this.y+e.y,this.z+e.z)}minus(e){if(!(e instanceof b))throw new TypeError("v is not Vector3d object");return new b(this.x-e.x,this.y-e.y,this.z-e.z)}times(e){if(isNaN(e))throw new TypeError(`invalid scalar value ‘${e}’`);return new b(this.x*e,this.y*e,this.z*e)}dividedBy(e){if(isNaN(e))throw new TypeError(`invalid scalar value ‘${e}’`);return new b(this.x/e,this.y/e,this.z/e)}dot(e){if(!(e instanceof b))throw new TypeError("v is not Vector3d object");return this.x*e.x+this.y*e.y+this.z*e.z}cross(e){if(!(e instanceof b))throw new TypeError("v is not Vector3d object");const t=this.y*e.z-this.z*e.y,r=this.z*e.x-this.x*e.z,n=this.x*e.y-this.y*e.x;return new b(t,r,n)}negate(){return new b(-this.x,-this.y,-this.z)}unit(){const e=this.length;if(1==e)return this;if(0==e)return this;const t=this.x/e,r=this.y/e,n=this.z/e;return new b(t,r,n)}angleTo(e,t=void 0){if(!(e instanceof b))throw new TypeError("v is not Vector3d object");if(!(t instanceof b||null==t))throw new TypeError("n is not Vector3d object");const r=null==t||this.cross(e).dot(t)>=0?1:-1,n=this.cross(e).length*r,a=this.dot(e);return Math.atan2(n,a)}rotateAround(e,t){if(!(e instanceof b))throw new TypeError("axis is not Vector3d object");const r=t.toRadians(),n=this.unit(),a=e.unit(),i=Math.sin(r),o=Math.cos(r),s=1-o,l=a.x,c=a.y,u=a.z,d=[[s*l*l+o,s*l*c-i*u,s*l*u+i*c],[s*l*c+i*u,s*c*c+o,s*c*u-i*l],[s*l*u-i*c,s*c*u+i*l,s*u*u+o]],h=[d[0][0]*n.x+d[0][1]*n.y+d[0][2]*n.z,d[1][0]*n.x+d[1][1]*n.y+d[1][2]*n.z,d[2][0]*n.x+d[2][1]*n.y+d[2][2]*n.z];return new b(h[0],h[1],h[2])}toString(e=3){return`[${this.x.toFixed(e)},${this.y.toFixed(e)},${this.z.toFixed(e)}]`}}Number.prototype.toRadians=function(){return this*Math.PI/180},Number.prototype.toDegrees=function(){return 180*this/Math.PI};const w={WGS84:{a:6378137,b:6356752.314245,f:1/298.257223563}},E={WGS84:{ellipsoid:w.WGS84}};Object.freeze(w.WGS84),Object.freeze(E.WGS84);class v{constructor(e,t,r=0){if(isNaN(e)||null==e)throw new TypeError(`invalid lat ‘${e}’`);if(isNaN(t)||null==t)throw new TypeError(`invalid lon ‘${t}’`);if(isNaN(r)||null==r)throw new TypeError(`invalid height ‘${r}’`);this._lat=y.wrap90(Number(e)),this._lon=y.wrap180(Number(t)),this._height=Number(r)}get lat(){return this._lat}get latitude(){return this._lat}set lat(e){if(this._lat=isNaN(e)?y.wrap90(y.parse(e)):y.wrap90(Number(e)),isNaN(this._lat))throw new TypeError(`invalid lat ‘${e}’`)}set latitude(e){if(this._lat=isNaN(e)?y.wrap90(y.parse(e)):y.wrap90(Number(e)),isNaN(this._lat))throw new TypeError(`invalid latitude ‘${e}’`)}get lon(){return this._lon}get lng(){return this._lon}get longitude(){return this._lon}set lon(e){if(this._lon=isNaN(e)?y.wrap180(y.parse(e)):y.wrap180(Number(e)),isNaN(this._lon))throw new TypeError(`invalid lon ‘${e}’`)}set lng(e){if(this._lon=isNaN(e)?y.wrap180(y.parse(e)):y.wrap180(Number(e)),isNaN(this._lon))throw new TypeError(`invalid lng ‘${e}’`)}set longitude(e){if(this._lon=isNaN(e)?y.wrap180(y.parse(e)):y.wrap180(Number(e)),isNaN(this._lon))throw new TypeError(`invalid longitude ‘${e}’`)}get height(){return this._height}set height(e){if(this._height=Number(e),isNaN(this._height))throw new TypeError(`invalid height ‘${e}’`)}get datum(){return this._datum}set datum(e){this._datum=e}static get ellipsoids(){return w}static get datums(){return E}static parse(...e){if(0==e.length)throw new TypeError("invalid (empty) point");let t,r,n;if("object"==typeof e[0]&&(1==e.length||!isNaN(parseFloat(e[1])))){const a=e[0];if("Point"==a.type&&Array.isArray(a.coordinates)?([r,t,n]=a.coordinates,n=n||0):(null!=a.latitude&&(t=a.latitude),null!=a.lat&&(t=a.lat),null!=a.longitude&&(r=a.longitude),null!=a.lng&&(r=a.lng),null!=a.lon&&(r=a.lon),null!=a.height&&(n=a.height),t=y.wrap90(y.parse(t)),r=y.wrap180(y.parse(r))),null!=e[1]&&(n=e[1]),isNaN(t)||isNaN(r))throw new TypeError(`invalid point ‘${JSON.stringify(e[0])}’`)}if("string"==typeof e[0]&&2==e[0].split(",").length&&([t,r]=e[0].split(","),t=y.wrap90(y.parse(t)),r=y.wrap180(y.parse(r)),n=e[1]||0,isNaN(t)||isNaN(r)))throw new TypeError(`invalid point ‘${e[0]}’`);if(null==t&&null==r&&([t,r]=e,t=y.wrap90(y.parse(t)),r=y.wrap180(y.parse(r)),n=e[2]||0,isNaN(t)||isNaN(r)))throw new TypeError(`invalid point ‘${e.toString()}’`);return new this(t,r,n)}toCartesian(){const e=this.datum?this.datum.ellipsoid:this.referenceFrame?this.referenceFrame.ellipsoid:w.WGS84,t=this.lat.toRadians(),r=this.lon.toRadians(),n=this.height,{a:a,f:i}=e,o=Math.sin(t),s=Math.cos(t),l=Math.sin(r),c=Math.cos(r),u=2*i-i*i,d=a/Math.sqrt(1-u*o*o);return new S((d+n)*s*c,(d+n)*s*l,(d*(1-u)+n)*o)}equals(e){if(!(e instanceof v))throw new TypeError(`invalid point ‘${e}’`);return!(Math.abs(this.lat-e.lat)>Number.EPSILON)&&(!(Math.abs(this.lon-e.lon)>Number.EPSILON)&&(!(Math.abs(this.height-e.height)>Number.EPSILON)&&(this.datum==e.datum&&(this.referenceFrame==e.referenceFrame&&this.epoch==e.epoch))))}toString(e="d",t=void 0,r=null){if(!["d","dm","dms","n"].includes(e))throw new RangeError(`invalid format ‘${e}’`);const n=(this.height>=0?" +":" ")+this.height.toFixed(r)+"m";if("n"==e){null==t&&(t=4);return`${this.lat.toFixed(t)}, ${this.lon.toFixed(t)}${null==r?"":n}`}return`${y.toLat(this.lat,e,t)}, ${y.toLon(this.lon,e,t)}${null==r?"":n}`}}class S extends b{constructor(e,t,r){super(e,t,r)}toLatLon(e=w.WGS84){if(!e||!e.a)throw new TypeError(`invalid ellipsoid ‘${e}’`);const{x:t,y:r,z:n}=this,{a:a,b:i,f:o}=e,s=2*o-o*o,l=s/(1-s),c=Math.sqrt(t*t+r*r),u=i*n/(a*c)*(1+l*i/Math.sqrt(c*c+n*n)),d=u/Math.sqrt(1+u*u),h=d/u,p=isNaN(h)?0:Math.atan2(n+l*i*d*d*d,c-s*a*h*h*h),f=Math.atan2(r,t),m=Math.sin(p),g=c*Math.cos(p)+n*m-a*a/(a/Math.sqrt(1-s*m*m));return new v(p.toDegrees(),f.toDegrees(),g)}toString(e=0){return`[${this.x.toFixed(e)},${this.y.toFixed(e)},${this.z.toFixed(e)}]`}}const O={WGS84:{a:6378137,b:6356752.314245,f:1/298.257223563},Airy1830:{a:6377563.396,b:6356256.909,f:1/299.3249646},AiryModified:{a:6377340.189,b:6356034.448,f:1/299.3249646},Bessel1841:{a:6377397.155,b:6356078.962818,f:1/299.1528128},Clarke1866:{a:6378206.4,b:6356583.8,f:1/294.978698214},Clarke1880IGN:{a:6378249.2,b:6356515,f:1/293.466021294},GRS80:{a:6378137,b:6356752.31414,f:1/298.257222101},Intl1924:{a:6378388,b:6356911.946,f:1/297},WGS72:{a:6378135,b:6356750.5,f:1/298.26}},N={ED50:{ellipsoid:O.Intl1924,transform:[89.5,93.8,123.1,-1.2,0,0,.156]},ETRS89:{ellipsoid:O.GRS80,transform:[0,0,0,0,0,0,0]},Irl1975:{ellipsoid:O.AiryModified,transform:[-482.53,130.596,-564.557,-8.15,1.042,.214,.631]},NAD27:{ellipsoid:O.Clarke1866,transform:[8,-160,-176,0,0,0,0]},NAD83:{ellipsoid:O.GRS80,transform:[.9956,-1.9103,-.5215,-62e-5,.025915,.009426,.011599]},NTF:{ellipsoid:O.Clarke1880IGN,transform:[168,60,-320,0,0,0,0]},OSGB36:{ellipsoid:O.Airy1830,transform:[-446.448,125.157,-542.06,20.4894,-.1502,-.247,-.8421]},Potsdam:{ellipsoid:O.Bessel1841,transform:[-582,-105,-414,-8.3,1.04,.35,-3.08]},TokyoJapan:{ellipsoid:O.Bessel1841,transform:[148,-507,-685,0,0,0,0]},WGS72:{ellipsoid:O.WGS72,transform:[0,0,-4.5,-.22,0,0,.554]},WGS84:{ellipsoid:O.WGS84,transform:[0,0,0,0,0,0,0]}};Object.keys(O).forEach(e=>Object.freeze(O[e])),Object.keys(N).forEach(e=>{Object.freeze(N[e]),Object.freeze(N[e].transform)});class T extends v{constructor(e,t,r=0,n=N.WGS84){if(!n||null==n.ellipsoid)throw new TypeError(`unrecognised datum ‘${n}’`);super(e,t,r),this._datum=n}get datum(){return this._datum}static get ellipsoids(){return O}static get datums(){return N}static parse(...e){let t=N.WGS84;if((4==e.length||3==e.length&&"object"==typeof e[2])&&(t=e.pop()),!t||null==t.ellipsoid)throw new TypeError(`unrecognised datum ‘${t}’`);const r=super.parse(...e);return r._datum=t,r}convertDatum(e){if(!e||null==e.ellipsoid)throw new TypeError(`unrecognised datum ‘${e}’`);return this.toCartesian().convertDatum(e).toLatLon()}toCartesian(){const e=super.toCartesian();return new _(e.x,e.y,e.z,this.datum)}}class _ extends S{constructor(e,t,r,n=void 0){if(n&&null==n.ellipsoid)throw new TypeError(`unrecognised datum ‘${n}’`);super(e,t,r),n&&(this._datum=n)}get datum(){return this._datum}set datum(e){if(!e||null==e.ellipsoid)throw new TypeError(`unrecognised datum ‘${e}’`);this._datum=e}toLatLon(e=void 0){e&&(console.info("datum parameter to Cartesian_Datum.toLatLon is deprecated: set datum before calling toLatLon()"),this.datum=e);const t=this.datum||N.WGS84;if(!t||null==t.ellipsoid)throw new TypeError(`unrecognised datum ‘${t}’`);const r=super.toLatLon(t.ellipsoid);return new T(r.lat,r.lon,r.height,this.datum)}convertDatum(e){if(!e||null==e.ellipsoid)throw new TypeError(`unrecognised datum ‘${e}’`);if(!this.datum)throw new TypeError("cartesian coordinate has no datum");let t=null,r=null;null!=this.datum&&this.datum!=N.WGS84||(t=this,r=e.transform),e==N.WGS84&&(t=this,r=this.datum.transform.map(e=>-e)),null==r&&(t=this.convertDatum(N.WGS84),r=e.transform);const n=t.applyTransform(r);return n.datum=e,n}applyTransform(e){const{x:t,y:r,z:n}=this,a=e[0],i=e[1],o=e[2],s=e[3]/1e6+1,l=(e[4]/3600).toRadians(),c=(e[5]/3600).toRadians(),u=(e[6]/3600).toRadians();return new _(a+t*s-r*u+n*c,i+t*u+r*s-n*l,o-t*c+r*l+n*s)}}const D={trueOrigin:{lat:49,lon:-2},scaleFactor:.9996012717,ellipsoid:T.ellipsoids.Airy1830};class x{constructor(e,t){if(this.easting=Number(e),this.northing=Number(t),isNaN(e)||this.easting<0||this.easting>7e5)throw new RangeError(`invalid easting ‘${e}’`);if(isNaN(t)||this.northing<0||this.northing>13e5)throw new RangeError(`invalid northing ‘${t}’`)}toLatLon(e=T.datums.WGS84){const{easting:t,northing:r}=this,{a:n,b:a}=D.ellipsoid,i=D.trueOrigin.lat.toRadians(),o=D.trueOrigin.lon.toRadians(),s=-1e5,l=D.scaleFactor,c=1-a*a/(n*n),u=(n-a)/(n+a),d=u*u,h=u*u*u;let p=i,f=0;do{p=(r-s-f)/(n*l)+p;f=a*l*((1+u+5/4*d+5/4*h)*(p-i)-(3*u+3*u*u+21/8*h)*Math.sin(p-i)*Math.cos(p+i)+(15/8*d+15/8*h)*Math.sin(2*(p-i))*Math.cos(2*(p+i))-35/24*h*Math.sin(3*(p-i))*Math.cos(3*(p+i)))}while(Math.abs(r-s-f)>=1e-5);const m=Math.cos(p),g=Math.sin(p),y=n*l/Math.sqrt(1-c*g*g),b=n*l*(1-c)/Math.pow(1-c*g*g,1.5),w=y/b-1,E=Math.tan(p),v=E*E,S=v*v,O=1/m,N=y*y*y,_=N*y*y,x=t-4e5,P=x*x,M=P*x,G=P*P,C=M*P;p=p-E/(2*b*y)*P+E/(24*b*N)*(5+3*v+w-9*v*w)*G-E/(720*b*_)*(61+90*v+45*S)*(G*P);const R=o+O/y*x-O/(6*N)*(y/b+2*v)*M+O/(120*_)*(5+28*v+24*S)*C-O/(5040*(_*y*y))*(61+662*v+1320*S+720*(S*v))*(C*P);let k=new j(p.toDegrees(),R.toDegrees(),0,T.datums.OSGB36);return e!=T.datums.OSGB36&&(k=k.convertDatum(e),k=new j(k.lat,k.lon,k.height,k.datum)),k}static parse(e){let t=(e=String(e).trim()).match(/^(\d+),\s*(\d+)$/);if(t)return new x(t[1],t[2]);if(t=e.match(/^[HNST][ABCDEFGHJKLMNOPQRSTUVWXYZ]\s*[0-9]+\s*[0-9]+$/i),!t)throw new Error(`invalid grid reference ‘${e}’`);let r=e.toUpperCase().charCodeAt(0)-"A".charCodeAt(0),n=e.toUpperCase().charCodeAt(1)-"A".charCodeAt(0);r>7&&r--,n>7&&n--;const a=(r-2)%5*5+n%5,i=19-5*Math.floor(r/5)-Math.floor(n/5);let o=e.slice(2).trim().split(/\s+/);if(1==o.length&&(o=[o[0].slice(0,o[0].length/2),o[0].slice(o[0].length/2)]),o[0].length!=o[1].length)throw new Error(`invalid grid reference ‘${e}’`);o[0]=o[0].padEnd(5,"0"),o[1]=o[1].padEnd(5,"0");const s=a+o[0],l=i+o[1];return new x(s,l)}toString(e=10){if(![0,2,4,6,8,10,12,14,16].includes(Number(e)))throw new RangeError(`invalid precision ‘${e}’`);let{easting:t,northing:r}=this;if(0==e){const e={useGrouping:!1,minimumIntegerDigits:6,maximumFractionDigits:3};return`${t.toLocaleString("en",e)},${r.toLocaleString("en",e)}`}const n=Math.floor(t/1e5),a=Math.floor(r/1e5);let i=19-a-(19-a)%5+Math.floor((n+10)/5),o=5*(19-a)%25+n%5;i>7&&i++,o>7&&o++;const s=String.fromCharCode(i+"A".charCodeAt(0),o+"A".charCodeAt(0));return t=Math.floor(t%1e5/Math.pow(10,5-e/2)),r=Math.floor(r%1e5/Math.pow(10,5-e/2)),t=t.toString().padStart(e/2,"0"),r=r.toString().padStart(e/2,"0"),`${s} ${t} ${r}`}}class j extends T{toOsGrid(){const e=this.datum==T.datums.OSGB36?this:this.convertDatum(T.datums.OSGB36),t=e.lat.toRadians(),r=e.lon.toRadians(),{a:n,b:a}=D.ellipsoid,i=D.trueOrigin.lat.toRadians(),o=D.trueOrigin.lon.toRadians(),s=D.scaleFactor,l=1-a*a/(n*n),c=(n-a)/(n+a),u=c*c,d=c*c*c,h=Math.cos(t),p=Math.sin(t),f=n*s/Math.sqrt(1-l*p*p),m=n*s*(1-l)/Math.pow(1-l*p*p,1.5),g=f/m-1,y=a*s*((1+c+5/4*u+5/4*d)*(t-i)-(3*c+3*c*c+21/8*d)*Math.sin(t-i)*Math.cos(t+i)+(15/8*u+15/8*d)*Math.sin(2*(t-i))*Math.cos(2*(t+i))-35/24*d*Math.sin(3*(t-i))*Math.cos(3*(t+i))),b=h*h*h,w=b*h*h,E=Math.tan(t)*Math.tan(t),v=E*E,S=r-o,O=S*S,N=O*S,_=N*S,j=_*S;let P=y+-1e5+f/2*p*h*O+f/24*p*b*(5-E+9*g)*_+f/720*p*w*(61-58*E+v)*(j*S),M=4e5+f*h*S+f/6*b*(f/m-E)*N+f/120*w*(5-18*E+v+14*g-58*E*g)*j;P=Number(P.toFixed(3)),M=Number(M.toFixed(3));try{return new x(M,P)}catch(t){throw new Error(`${t.message} from (${e.lat.toFixed(6)},${e.lon.toFixed(6)}).toOsGrid()`)}}convertDatum(e){const t=super.convertDatum(e);return new j(t.lat,t.lon,t.height,t.datum)}}var P;function M(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function G(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?M(Object(r),!0).forEach(function(t){a(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):M(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var C=500,R=(e,t)=>{var r,n,a,i,{MBR_XMIN:o,MBR_YMIN:s,MBR_XMAX:l,MBR_YMAX:c,GEOMETRY_X:u,GEOMETRY_Y:d}=t;if(null==o?(r=u-C,n=d-C,a=u+C,i=d+C):(r=o,n=s,a=l,i=c),"EPSG:27700"===e)return[r,n,a,i];if("EPSG:4326"===e){var h=new x(r,n).toLatLon(),p=new x(a,i).toLatLon();return[h.lon,h.lat,p.lon,p.lat].map(e=>Math.round(1e6*e)/1e6)}throw new Error("Unsupported CRS: ".concat(e))},k=(e,t)=>{var{GEOMETRY_X:r,GEOMETRY_Y:n}=t;if("EPSG:27700"===e)return[r,n];if("EPSG:4326"===e){var a=new x(r,n).toLatLon();return[Math.round(1e6*a.lon)/1e6,Math.round(1e6*a.lat)/1e6]}throw new Error("Unsupported CRS: ".concat(e))},I=(e,t,r)=>{var n;if(!e||e.error||0===(null===(n=e.header)||void 0===n?void 0:n.totalresults))return[];var a=e.results;return a=((e,t)=>{var r=t.toLowerCase().replace(/,/g,"").split(" ");return e.filter(e=>r.some(r=>{return e.GAZETTEER_ENTRY.NAME1.toLowerCase().includes(r)||(n=(n=t).replace(/\s/g,""),/^(([A-Z]{1,2}\d[A-Z\d]?|ASCN|STHL|TDCU|BBND|[BFS]IQQ|PCRN|TKCA) ?\d[A-Z]{2}|BFPO ?\d{1,4}|(KY\d|MSR|VG|AI)[ -]?\d{4}|[A-Z]{2} ?\d{2}|GE ?CX|GIR ?0A{2}|SAN ?TA1)$/i.test(n));var n}))})(a,t),(a=(a=(e=>Array.from(new Map(e.map(e=>[e.GAZETTEER_ENTRY.ID,e])).values()))(a)).slice(0,8)).map(e=>G(G({id:e.GAZETTEER_ENTRY.ID,bounds:R(r,e.GAZETTEER_ENTRY),point:k(r,e.GAZETTEER_ENTRY)},((e,t)=>{var r,n,a,o,{NAME1:s,COUNTY_UNITARY:l,DISTRICT_BOROUGH:c,POSTCODE_DISTRICT:u,LOCAL_TYPE:d}=t,h="".concat(["City","Postcode"].includes(d)?"":u+", ").concat("City"===d?"":l||c),p="".concat(s).concat(h?", "+h:"");return{text:p,marked:(r=p,n=e,a=n.replace(/\s+/g,"").split("").join(String.raw(P||(P=i(["s*"],["\\s*"])))),o=new RegExp("(".concat(a,")"),"i"),r.replace(o,"<mark>$1</mark>"))}})(t,e.GAZETTEER_ENTRY)),{},{type:"os-names"}))};var L=(e,t,r)=>{var n,a={url:null===(n=e.urlTemplate)||void 0===n?void 0:n.replace("{query}",encodeURIComponent(t)),options:{method:"GET"}};return"function"==typeof e.buildRequest?e.buildRequest(t,()=>a):"function"==typeof r?r(a,t):a},A=function(){var e=o(function*(e,t,r){try{var n=yield fetch(t.url,t.options);if(!n.ok)return console.error("Fetch error for ".concat(e.label||"dataset",": ").concat(n.status)),null;var a=yield n.json();return e.parseResults(a,r)}catch(t){return console.error("Network error for ".concat(e.label||"dataset",":"),t),null}});return function(t,r,n){return e.apply(this,arguments)}}(),$=function(){var e=o(function*(e,t,r,n){var a=(e=>e.replace(/[^a-zA-Z0-9\s\-.,]/g,"").trim())(e),i=t.filter(e=>{var t=!e.includeRegex||e.includeRegex.test(a),r=!!e.excludeRegex&&e.excludeRegex.test(a);return t&&!r}),o=[];for(var s of i){var l=L(s,a,n),c=yield A(s,l,a);if(null!=c&&c.length&&(o=[...o,...c],s.exclusive))break}return r({type:"UPDATE_SUGGESTIONS",payload:o}),{results:o,sanitisedValue:a}});return function(t,r,n,a){return e.apply(this,arguments)}}();function F(e){var{mapProvider:t,bounds:r,point:n,markers:a,showMarker:i,markerColor:o}=e;t.fitToBounds(r),i&&a.add("search",n,{color:o})}var W=3;function U(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function B(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){a(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}function z(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}var V=e=>{var{dispatch:t,services:r,mapProvider:n,markers:i,showMarker:o,markerColor:s}=e,l=(e,t)=>{var r;return t>=0?"".concat(null===(r=e[t])||void 0===r?void 0:r.text,". ").concat(t+1," of ").concat(e.length," is highlighted"):"".concat(e.length," suggestions available")};return{handleSuggestionClick(e,l){t({type:"SET_VALUE",payload:e.text}),t({type:"HIDE_SUGGESTIONS"}),t({type:"SET_SELECTED",payload:-1}),"mobile"===l.breakpoint&&(t({type:"TOGGLE_EXPANDED",payload:!1}),r.eventBus.emit("search:close")),F({mapProvider:n,bounds:e.bounds,point:e.point,markers:i,showMarker:o,markerColor:s}),r.eventBus.emit("search:match",function(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){a(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}({query:e.text},e))},handleInputKeyDown(e,n){var{suggestions:a,selectedIndex:i}=n;switch(e.key){case"ArrowDown":if(null==a||!a.length)return;if(e.preventDefault(),i<a.length-1){var o=i+1;r.announce(l(a,o)),t({type:"SET_SELECTED",payload:o}),t({type:"SET_KEYBOARD_FOCUS_WITHIN",payload:!1})}break;case"ArrowUp":if(null==a||!a.length)return;e.preventDefault();var s=i>0?i-1:-1;r.announce(l(a,s)),t({type:"SET_SELECTED",payload:s}),t({type:"SET_KEYBOARD_FOCUS_WITHIN",payload:s<0});break;case"Escape":e.preventDefault(),t({type:"HIDE_SUGGESTIONS"}),t({type:"SET_SELECTED",payload:-1})}}}};function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function H(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){a(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 q(e){var t,r,n,a,{dispatch:i,searchContainerRef:s}=e,l=(t=t=>$(t,e.datasets,i,e.transformRequest),r=350,n=null,a=function(){for(var e=arguments.length,a=new Array(e),i=0;i<e;i++)a[i]=arguments[i];clearTimeout(n),n=setTimeout(()=>{t(...a)},r)},a.cancel=()=>{n&&(clearTimeout(n),n=null)},a),c=(e=>{var{dispatch:t,services:r,viewportRef:n,mapProvider:a,markers:i,datasets:s,transformRequest:l,showMarker:c,markerColor:u}=e,d="";return{handleOpenClick(){t({type:"TOGGLE_EXPANDED",payload:!0}),r.eventBus.emit("search:open")},handleCloseClick(e,n){t({type:"TOGGLE_EXPANDED",payload:!1}),t({type:"UPDATE_SUGGESTIONS",payload:[]}),t({type:"SET_VALUE",payload:""}),setTimeout(()=>n.current.focus(),0),i.remove("search"),r.eventBus.emit("search:clear"),r.eventBus.emit("search:close")},handleSubmit:(e,h,p)=>o(function*(){e.preventDefault();var{suggestions:o,selectedIndex:f,value:m}=p,g=null==m?void 0:m.trim();if(t({type:"SET_SELECTED",payload:-1}),t({type:"HIDE_SUGGESTIONS"}),f>=0){var y,b=o[f];return t({type:"SET_VALUE",payload:b.text}),null===(y=n.current)||void 0===y||y.focus(),F({mapProvider:a,bounds:b.bounds,point:b.point,markers:i,showMarker:c,markerColor:u}),void r.eventBus.emit("search:match",B({query:b.text},b))}if(!((null==g?void 0:g.length)<W)){var w=o;if(!o.length||g!==d){var{results:E,sanitisedValue:v}=yield $(g,s,t,l);w=E,d=v}if(w.length){var S;"keyboard"===h.interfaceType&&(null===(S=n.current)||void 0===S||S.focus()),"mobile"===h.breakpoint&&(t({type:"TOGGLE_EXPANDED",payload:!1}),r.eventBus.emit("search:close"));var O=w[0];F({mapProvider:a,bounds:O.bounds,point:O.point,markers:i,showMarker:c,markerColor:u}),r.eventBus.emit("search:match",B({query:m},O))}}})()}})(e),u=(e=>{var{dispatch:t,debouncedFetchSuggestions:r}=e;return{handleInputClick(){t({type:"SHOW_SUGGESTIONS"})},handleInputFocus(e){t({type:"SET_KEYBOARD_FOCUS_WITHIN",payload:"keyboard"===e})},handleInputBlur(e){t({type:"INPUT_BLUR",payload:e})},handleInputChange(e){var n=e.target.value;if(t({type:"SET_VALUE",payload:n}),n.length<W)return r.cancel(),t({type:"UPDATE_SUGGESTIONS",payload:[]}),void t({type:"HIDE_SUGGESTIONS"});t({type:"SHOW_SUGGESTIONS"}),r(n)}}})(H(H({},e),{},{debouncedFetchSuggestions:l})),d=V(e);return H(H(H(H({},c),u),d),{},{handleOutside(t){s.current.contains(t.target)||(i({type:"TOGGLE_EXPANDED",payload:!1}),e.services.eventBus.emit("search:close"))}})}function K(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}var X={reducer:{initialState:{isExpanded:!1,hasKeyboardFocusWithin:!1,value:"",suggestions:[],areSuggestionsVisible:!1,selectedIndex:-1},actions:c},controls:[{id:"search",label:"Search",mobile:{slot:"top-right"},tablet:{slot:"top-left"},desktop:{slot:"top-left"},render:function(i){var{appConfig:o,iconRegistry:s,pluginState:l,pluginConfig:c,appState:d,mapState:h,services:p,mapProvider:g}=i,{id:y}=o,{interfaceType:b}=d,{isExpanded:w,customDatasets:E,osNamesURL:v}=c,{dispatch:S,isExpanded:O,areSuggestionsVisible:N,suggestions:T}=l,_=s.close,D=s.search,x=e(null),j=e(null),P=e(null),M=e(null),G=d.layoutRefs.viewportRef,C=function(e){var{customDatasets:t=[],osNamesURL:r,crs:n}=e;return[{name:"osNames",urlTemplate:r,parseResults:(e,t)=>I(e,t,n),includeRegex:/^[a-zA-Z0-9\s,-]+$/,excludeRegex:/^(?:[a-z]{2}\s*(?:\d{3}\s*\d{3}|\d{4}\s*\d{4}|\d{5}\s*\d{5})|\d+\s*,?\s*\d+)$/i},...t]}({customDatasets:E,osNamesURL:v,crs:g.crs}),R=e(null);R.current||(R.current=q(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?K(Object(r),!0).forEach(function(t){a(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):K(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({dispatch:S,datasets:C,services:p,mapProvider:g,viewportRef:G,searchContainerRef:x,markers:h.markers},c)));var k=R.current,L=O||!!(w&&N&&T.length);return t(()=>{var e;O&&(null===(e=P.current)||void 0===e||e.focus())},[O]),t(()=>{if(d.dispatch({type:"TOGGLE_HAS_EXCLUSIVE_CONTROL",payload:O}),L)return G.current.style.pointerEvents="none",document.addEventListener("focusin",k.handleOutside),document.addEventListener("pointerdown",k.handleOutside),()=>{G.current.style.pointerEvents="auto",document.removeEventListener("focusin",k.handleOutside),document.removeEventListener("pointerdown",k.handleOutside)}},[O,b,N,T]),n("div",{className:"im-c-search",ref:x,children:[!w&&r(u,{id:y,isExpanded:O,onClick:()=>k.handleOpenClick(d),buttonRef:j,searchIcon:D}),r(f,{id:y,pluginState:l,pluginConfig:c,appState:d,inputRef:P,events:k,children:r(m,{defaultExpanded:w,onClick:e=>k.handleCloseClick(e,j,d),closeIcon:_,ref:M})})]})}}],icons:[{id:"search",svgContent:'<path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle>'}]};export{X as manifest};
|