agviewermap-react
Version:
A tool designed to visualize geospatial data on a map, integrating custom layers fetched from a REST API, and displaying relevant time-series data. This project is built using React, with `react-map-gl` for map integration.
108 lines (102 loc) • 2.43 MB
JavaScript
(function(ga,F){typeof exports=="object"&&typeof module<"u"?F(exports,require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react","react-dom"],F):(ga=typeof globalThis<"u"?globalThis:ga||self,F(ga["agviewermap-react"]={},ga.React,ga.ReactDOM))})(this,function(ga,F,ya){"use strict";var $5e=Object.defineProperty;var V5e=(ga,F,ya)=>F in ga?$5e(ga,F,{enumerable:!0,configurable:!0,writable:!0,value:ya}):ga[F]=ya;var L9=(ga,F,ya)=>V5e(ga,typeof F!="symbol"?F+"":F,ya);var Kz;function wA(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}function R9(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const i in r)if(i!=="default"&&!(i in e)){const a=Object.getOwnPropertyDescriptor(r,i);a&&Object.defineProperty(e,i,a.get?a:{enumerable:!0,get:()=>r[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}const ae=wA(F),qx=wA(ya);var Tc=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function er(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Jx={exports:{}},wf={};/**
* @license React
* react-jsx-runtime.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var SA;function F9(){if(SA)return wf;SA=1;var e=F,t=Symbol.for("react.element"),n=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,i=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function o(s,h,f){var g,m={},v=null,b=null;f!==void 0&&(v=""+f),h.key!==void 0&&(v=""+h.key),h.ref!==void 0&&(b=h.ref);for(g in h)r.call(h,g)&&!a.hasOwnProperty(g)&&(m[g]=h[g]);if(s&&s.defaultProps)for(g in h=s.defaultProps,h)m[g]===void 0&&(m[g]=h[g]);return{$$typeof:t,type:s,key:v,ref:b,props:m,_owner:i.current}}return wf.Fragment=n,wf.jsx=o,wf.jsxs=o,wf}var Sf={};/**
* @license React
* react-jsx-runtime.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var CA;function B9(){return CA||(CA=1,process.env.NODE_ENV!=="production"&&function(){var e=F,t=Symbol.for("react.element"),n=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),o=Symbol.for("react.provider"),s=Symbol.for("react.context"),h=Symbol.for("react.forward_ref"),f=Symbol.for("react.suspense"),g=Symbol.for("react.suspense_list"),m=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),b=Symbol.for("react.offscreen"),_=Symbol.iterator,C="@@iterator";function M(Xe){if(Xe===null||typeof Xe!="object")return null;var Mt=_&&Xe[_]||Xe[C];return typeof Mt=="function"?Mt:null}var E=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function A(Xe){{for(var Mt=arguments.length,Pt=new Array(Mt>1?Mt-1:0),Ht=1;Ht<Mt;Ht++)Pt[Ht-1]=arguments[Ht];T("error",Xe,Pt)}}function T(Xe,Mt,Pt){{var Ht=E.ReactDebugCurrentFrame,nn=Ht.getStackAddendum();nn!==""&&(Mt+="%s",Pt=Pt.concat([nn]));var Sn=Pt.map(function(gn){return String(gn)});Sn.unshift("Warning: "+Mt),Function.prototype.apply.call(console[Xe],console,Sn)}}var k=!1,P=!1,N=!1,z=!1,Y=!1,te;te=Symbol.for("react.module.reference");function K(Xe){return!!(typeof Xe=="string"||typeof Xe=="function"||Xe===r||Xe===a||Y||Xe===i||Xe===f||Xe===g||z||Xe===b||k||P||N||typeof Xe=="object"&&Xe!==null&&(Xe.$$typeof===v||Xe.$$typeof===m||Xe.$$typeof===o||Xe.$$typeof===s||Xe.$$typeof===h||Xe.$$typeof===te||Xe.getModuleId!==void 0))}function V(Xe,Mt,Pt){var Ht=Xe.displayName;if(Ht)return Ht;var nn=Mt.displayName||Mt.name||"";return nn!==""?Pt+"("+nn+")":Pt}function U(Xe){return Xe.displayName||"Context"}function W(Xe){if(Xe==null)return null;if(typeof Xe.tag=="number"&&A("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof Xe=="function")return Xe.displayName||Xe.name||null;if(typeof Xe=="string")return Xe;switch(Xe){case r:return"Fragment";case n:return"Portal";case a:return"Profiler";case i:return"StrictMode";case f:return"Suspense";case g:return"SuspenseList"}if(typeof Xe=="object")switch(Xe.$$typeof){case s:var Mt=Xe;return U(Mt)+".Consumer";case o:var Pt=Xe;return U(Pt._context)+".Provider";case h:return V(Xe,Xe.render,"ForwardRef");case m:var Ht=Xe.displayName||null;return Ht!==null?Ht:W(Xe.type)||"Memo";case v:{var nn=Xe,Sn=nn._payload,gn=nn._init;try{return W(gn(Sn))}catch{return null}}}return null}var R=Object.assign,B=0,q,Q,ne,le,J,pe,Ce;function oe(){}oe.__reactDisabledLog=!0;function de(){{if(B===0){q=console.log,Q=console.info,ne=console.warn,le=console.error,J=console.group,pe=console.groupCollapsed,Ce=console.groupEnd;var Xe={configurable:!0,enumerable:!0,value:oe,writable:!0};Object.defineProperties(console,{info:Xe,log:Xe,warn:Xe,error:Xe,group:Xe,groupCollapsed:Xe,groupEnd:Xe})}B++}}function ye(){{if(B--,B===0){var Xe={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:R({},Xe,{value:q}),info:R({},Xe,{value:Q}),warn:R({},Xe,{value:ne}),error:R({},Xe,{value:le}),group:R({},Xe,{value:J}),groupCollapsed:R({},Xe,{value:pe}),groupEnd:R({},Xe,{value:Ce})})}B<0&&A("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var ve=E.ReactCurrentDispatcher,Oe;function se(Xe,Mt,Pt){{if(Oe===void 0)try{throw Error()}catch(nn){var Ht=nn.stack.trim().match(/\n( *(at )?)/);Oe=Ht&&Ht[1]||""}return`
`+Oe+Xe}}var ee=!1,he;{var Ee=typeof WeakMap=="function"?WeakMap:Map;he=new Ee}function X(Xe,Mt){if(!Xe||ee)return"";{var Pt=he.get(Xe);if(Pt!==void 0)return Pt}var Ht;ee=!0;var nn=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var Sn;Sn=ve.current,ve.current=null,de();try{if(Mt){var gn=function(){throw Error()};if(Object.defineProperty(gn.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(gn,[])}catch(kn){Ht=kn}Reflect.construct(Xe,[],gn)}else{try{gn.call()}catch(kn){Ht=kn}Xe.call(gn.prototype)}}else{try{throw Error()}catch(kn){Ht=kn}Xe()}}catch(kn){if(kn&&Ht&&typeof kn.stack=="string"){for(var Xt=kn.stack.split(`
`),En=Ht.stack.split(`
`),Tn=Xt.length-1,Nn=En.length-1;Tn>=1&&Nn>=0&&Xt[Tn]!==En[Nn];)Nn--;for(;Tn>=1&&Nn>=0;Tn--,Nn--)if(Xt[Tn]!==En[Nn]){if(Tn!==1||Nn!==1)do if(Tn--,Nn--,Nn<0||Xt[Tn]!==En[Nn]){var ir=`
`+Xt[Tn].replace(" at new "," at ");return Xe.displayName&&ir.includes("<anonymous>")&&(ir=ir.replace("<anonymous>",Xe.displayName)),typeof Xe=="function"&&he.set(Xe,ir),ir}while(Tn>=1&&Nn>=0);break}}}finally{ee=!1,ve.current=Sn,ye(),Error.prepareStackTrace=nn}var Gr=Xe?Xe.displayName||Xe.name:"",Wi=Gr?se(Gr):"";return typeof Xe=="function"&&he.set(Xe,Wi),Wi}function fe(Xe,Mt,Pt){return X(Xe,!1)}function ce(Xe){var Mt=Xe.prototype;return!!(Mt&&Mt.isReactComponent)}function Se(Xe,Mt,Pt){if(Xe==null)return"";if(typeof Xe=="function")return X(Xe,ce(Xe));if(typeof Xe=="string")return se(Xe);switch(Xe){case f:return se("Suspense");case g:return se("SuspenseList")}if(typeof Xe=="object")switch(Xe.$$typeof){case h:return fe(Xe.render);case m:return Se(Xe.type,Mt,Pt);case v:{var Ht=Xe,nn=Ht._payload,Sn=Ht._init;try{return Se(Sn(nn),Mt,Pt)}catch{}}}return""}var ue=Object.prototype.hasOwnProperty,De={},Fe=E.ReactDebugCurrentFrame;function Re(Xe){if(Xe){var Mt=Xe._owner,Pt=Se(Xe.type,Xe._source,Mt?Mt.type:null);Fe.setExtraStackFrame(Pt)}else Fe.setExtraStackFrame(null)}function He(Xe,Mt,Pt,Ht,nn){{var Sn=Function.call.bind(ue);for(var gn in Xe)if(Sn(Xe,gn)){var Xt=void 0;try{if(typeof Xe[gn]!="function"){var En=Error((Ht||"React class")+": "+Pt+" type `"+gn+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof Xe[gn]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw En.name="Invariant Violation",En}Xt=Xe[gn](Mt,gn,Ht,Pt,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(Tn){Xt=Tn}Xt&&!(Xt instanceof Error)&&(Re(nn),A("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",Ht||"React class",Pt,gn,typeof Xt),Re(null)),Xt instanceof Error&&!(Xt.message in De)&&(De[Xt.message]=!0,Re(nn),A("Failed %s type: %s",Pt,Xt.message),Re(null))}}}var ct=Array.isArray;function at(Xe){return ct(Xe)}function Ne(Xe){{var Mt=typeof Symbol=="function"&&Symbol.toStringTag,Pt=Mt&&Xe[Symbol.toStringTag]||Xe.constructor.name||"Object";return Pt}}function Ie(Xe){try{return je(Xe),!1}catch{return!0}}function je(Xe){return""+Xe}function Ve(Xe){if(Ie(Xe))return A("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",Ne(Xe)),je(Xe)}var Ke=E.ReactCurrentOwner,Ge={key:!0,ref:!0,__self:!0,__source:!0},rt,lt;function ft(Xe){if(ue.call(Xe,"ref")){var Mt=Object.getOwnPropertyDescriptor(Xe,"ref").get;if(Mt&&Mt.isReactWarning)return!1}return Xe.ref!==void 0}function xt(Xe){if(ue.call(Xe,"key")){var Mt=Object.getOwnPropertyDescriptor(Xe,"key").get;if(Mt&&Mt.isReactWarning)return!1}return Xe.key!==void 0}function it(Xe,Mt){typeof Xe.ref=="string"&&Ke.current}function vt(Xe,Mt){{var Pt=function(){rt||(rt=!0,A("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",Mt))};Pt.isReactWarning=!0,Object.defineProperty(Xe,"key",{get:Pt,configurable:!0})}}function St(Xe,Mt){{var Pt=function(){lt||(lt=!0,A("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",Mt))};Pt.isReactWarning=!0,Object.defineProperty(Xe,"ref",{get:Pt,configurable:!0})}}var Dt=function(Xe,Mt,Pt,Ht,nn,Sn,gn){var Xt={$$typeof:t,type:Xe,key:Mt,ref:Pt,props:gn,_owner:Sn};return Xt._store={},Object.defineProperty(Xt._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Xt,"_self",{configurable:!1,enumerable:!1,writable:!1,value:Ht}),Object.defineProperty(Xt,"_source",{configurable:!1,enumerable:!1,writable:!1,value:nn}),Object.freeze&&(Object.freeze(Xt.props),Object.freeze(Xt)),Xt};function kt(Xe,Mt,Pt,Ht,nn){{var Sn,gn={},Xt=null,En=null;Pt!==void 0&&(Ve(Pt),Xt=""+Pt),xt(Mt)&&(Ve(Mt.key),Xt=""+Mt.key),ft(Mt)&&(En=Mt.ref,it(Mt,nn));for(Sn in Mt)ue.call(Mt,Sn)&&!Ge.hasOwnProperty(Sn)&&(gn[Sn]=Mt[Sn]);if(Xe&&Xe.defaultProps){var Tn=Xe.defaultProps;for(Sn in Tn)gn[Sn]===void 0&&(gn[Sn]=Tn[Sn])}if(Xt||En){var Nn=typeof Xe=="function"?Xe.displayName||Xe.name||"Unknown":Xe;Xt&&vt(gn,Nn),En&&St(gn,Nn)}return Dt(Xe,Xt,En,nn,Ht,Ke.current,gn)}}var _t=E.ReactCurrentOwner,Lt=E.ReactDebugCurrentFrame;function Rt(Xe){if(Xe){var Mt=Xe._owner,Pt=Se(Xe.type,Xe._source,Mt?Mt.type:null);Lt.setExtraStackFrame(Pt)}else Lt.setExtraStackFrame(null)}var $t;$t=!1;function bn(Xe){return typeof Xe=="object"&&Xe!==null&&Xe.$$typeof===t}function We(){{if(_t.current){var Xe=W(_t.current.type);if(Xe)return`
Check the render method of \``+Xe+"`."}return""}}function Ae(Xe){return""}var xe={};function Pe(Xe){{var Mt=We();if(!Mt){var Pt=typeof Xe=="string"?Xe:Xe.displayName||Xe.name;Pt&&(Mt=`
Check the top-level render call using <`+Pt+">.")}return Mt}}function $e(Xe,Mt){{if(!Xe._store||Xe._store.validated||Xe.key!=null)return;Xe._store.validated=!0;var Pt=Pe(Mt);if(xe[Pt])return;xe[Pt]=!0;var Ht="";Xe&&Xe._owner&&Xe._owner!==_t.current&&(Ht=" It was passed a child from "+W(Xe._owner.type)+"."),Rt(Xe),A('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',Pt,Ht),Rt(null)}}function tt(Xe,Mt){{if(typeof Xe!="object")return;if(at(Xe))for(var Pt=0;Pt<Xe.length;Pt++){var Ht=Xe[Pt];bn(Ht)&&$e(Ht,Mt)}else if(bn(Xe))Xe._store&&(Xe._store.validated=!0);else if(Xe){var nn=M(Xe);if(typeof nn=="function"&&nn!==Xe.entries)for(var Sn=nn.call(Xe),gn;!(gn=Sn.next()).done;)bn(gn.value)&&$e(gn.value,Mt)}}}function ot(Xe){{var Mt=Xe.type;if(Mt==null||typeof Mt=="string")return;var Pt;if(typeof Mt=="function")Pt=Mt.propTypes;else if(typeof Mt=="object"&&(Mt.$$typeof===h||Mt.$$typeof===m))Pt=Mt.propTypes;else return;if(Pt){var Ht=W(Mt);He(Pt,Xe.props,"prop",Ht,Xe)}else if(Mt.PropTypes!==void 0&&!$t){$t=!0;var nn=W(Mt);A("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",nn||"Unknown")}typeof Mt.getDefaultProps=="function"&&!Mt.getDefaultProps.isReactClassApproved&&A("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function ht(Xe){{for(var Mt=Object.keys(Xe.props),Pt=0;Pt<Mt.length;Pt++){var Ht=Mt[Pt];if(Ht!=="children"&&Ht!=="key"){Rt(Xe),A("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",Ht),Rt(null);break}}Xe.ref!==null&&(Rt(Xe),A("Invalid attribute `ref` supplied to `React.Fragment`."),Rt(null))}}var Je={};function yt(Xe,Mt,Pt,Ht,nn,Sn){{var gn=K(Xe);if(!gn){var Xt="";(Xe===void 0||typeof Xe=="object"&&Xe!==null&&Object.keys(Xe).length===0)&&(Xt+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var En=Ae();En?Xt+=En:Xt+=We();var Tn;Xe===null?Tn="null":at(Xe)?Tn="array":Xe!==void 0&&Xe.$$typeof===t?(Tn="<"+(W(Xe.type)||"Unknown")+" />",Xt=" Did you accidentally export a JSX literal instead of a component?"):Tn=typeof Xe,A("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",Tn,Xt)}var Nn=kt(Xe,Mt,Pt,nn,Sn);if(Nn==null)return Nn;if(gn){var ir=Mt.children;if(ir!==void 0)if(Ht)if(at(ir)){for(var Gr=0;Gr<ir.length;Gr++)tt(ir[Gr],Xe);Object.freeze&&Object.freeze(ir)}else A("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else tt(ir,Xe)}if(ue.call(Mt,"key")){var Wi=W(Xe),kn=Object.keys(Mt).filter(function(Pi){return Pi!=="key"}),al=kn.length>0?"{key: someKey, "+kn.join(": ..., ")+": ...}":"{key: someKey}";if(!Je[Wi+al]){var hu=kn.length>0?"{"+kn.join(": ..., ")+": ...}":"{}";A(`A props object containing a "key" prop is being spread into JSX:
let props = %s;
<%s {...props} />
React keys must be passed directly to JSX without using spread:
let props = %s;
<%s key={someKey} {...props} />`,al,Wi,hu,Wi),Je[Wi+al]=!0}}return Xe===r?ht(Nn):ot(Nn),Nn}}function Et(Xe,Mt,Pt){return yt(Xe,Mt,Pt,!0)}function wt(Xe,Mt,Pt){return yt(Xe,Mt,Pt,!1)}var zt=wt,on=Et;Sf.Fragment=r,Sf.jsx=zt,Sf.jsxs=on}()),Sf}process.env.NODE_ENV==="production"?Jx.exports=F9():Jx.exports=B9();var j=Jx.exports;const MA=e=>{let t;const n=new Set,r=(g,m)=>{const v=typeof g=="function"?g(t):g;if(!Object.is(v,t)){const b=t;t=m??(typeof v!="object"||v===null)?v:Object.assign({},t,v),n.forEach(_=>_(t,b))}},i=()=>t,h={setState:r,getState:i,getInitialState:()=>f,subscribe:g=>(n.add(g),()=>n.delete(g)),destroy:()=>{n.clear()}},f=t=e(r,i,h);return h},z9=e=>e?MA(e):MA;var Kx={exports:{}},Qx={},Fg={exports:{}},e_={};/**
* @license React
* use-sync-external-store-shim.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var EA;function $9(){if(EA)return e_;EA=1;var e=F;function t(m,v){return m===v&&(m!==0||1/m===1/v)||m!==m&&v!==v}var n=typeof Object.is=="function"?Object.is:t,r=e.useState,i=e.useEffect,a=e.useLayoutEffect,o=e.useDebugValue;function s(m,v){var b=v(),_=r({inst:{value:b,getSnapshot:v}}),C=_[0].inst,M=_[1];return a(function(){C.value=b,C.getSnapshot=v,h(C)&&M({inst:C})},[m,b,v]),i(function(){return h(C)&&M({inst:C}),m(function(){h(C)&&M({inst:C})})},[m]),o(b),b}function h(m){var v=m.getSnapshot;m=m.value;try{var b=v();return!n(m,b)}catch{return!0}}function f(m,v){return v()}var g=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?f:s;return e_.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:g,e_}var t_={};/**
* @license React
* use-sync-external-store-shim.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var AA;function V9(){return AA||(AA=1,process.env.NODE_ENV!=="production"&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var e=F,t=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function n(T){{for(var k=arguments.length,P=new Array(k>1?k-1:0),N=1;N<k;N++)P[N-1]=arguments[N];r("error",T,P)}}function r(T,k,P){{var N=t.ReactDebugCurrentFrame,z=N.getStackAddendum();z!==""&&(k+="%s",P=P.concat([z]));var Y=P.map(function(te){return String(te)});Y.unshift("Warning: "+k),Function.prototype.apply.call(console[T],console,Y)}}function i(T,k){return T===k&&(T!==0||1/T===1/k)||T!==T&&k!==k}var a=typeof Object.is=="function"?Object.is:i,o=e.useState,s=e.useEffect,h=e.useLayoutEffect,f=e.useDebugValue,g=!1,m=!1;function v(T,k,P){g||e.startTransition!==void 0&&(g=!0,n("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var N=k();if(!m){var z=k();a(N,z)||(n("The result of getSnapshot should be cached to avoid an infinite loop"),m=!0)}var Y=o({inst:{value:N,getSnapshot:k}}),te=Y[0].inst,K=Y[1];return h(function(){te.value=N,te.getSnapshot=k,b(te)&&K({inst:te})},[T,N,k]),s(function(){b(te)&&K({inst:te});var V=function(){b(te)&&K({inst:te})};return T(V)},[T]),f(N),N}function b(T){var k=T.getSnapshot,P=T.value;try{var N=k();return!a(P,N)}catch{return!0}}function _(T,k,P){return k()}var C=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",M=!C,E=M?_:v,A=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:E;t_.useSyncExternalStore=A,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),t_}var TA;function IA(){return TA||(TA=1,process.env.NODE_ENV==="production"?Fg.exports=$9():Fg.exports=V9()),Fg.exports}/**
* @license React
* use-sync-external-store-shim/with-selector.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var PA;function G9(){if(PA)return Qx;PA=1;var e=F,t=IA();function n(f,g){return f===g&&(f!==0||1/f===1/g)||f!==f&&g!==g}var r=typeof Object.is=="function"?Object.is:n,i=t.useSyncExternalStore,a=e.useRef,o=e.useEffect,s=e.useMemo,h=e.useDebugValue;return Qx.useSyncExternalStoreWithSelector=function(f,g,m,v,b){var _=a(null);if(_.current===null){var C={hasValue:!1,value:null};_.current=C}else C=_.current;_=s(function(){function E(N){if(!A){if(A=!0,T=N,N=v(N),b!==void 0&&C.hasValue){var z=C.value;if(b(z,N))return k=z}return k=N}if(z=k,r(T,N))return z;var Y=v(N);return b!==void 0&&b(z,Y)?z:(T=N,k=Y)}var A=!1,T,k,P=m===void 0?null:m;return[function(){return E(g())},P===null?void 0:function(){return E(P())}]},[g,m,v,b]);var M=i(f,_[0],_[1]);return o(function(){C.hasValue=!0,C.value=M},[M]),h(M),M},Qx}var n_={};/**
* @license React
* use-sync-external-store-shim/with-selector.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var OA;function W9(){return OA||(OA=1,process.env.NODE_ENV!=="production"&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var e=F,t=IA();function n(g,m){return g===m&&(g!==0||1/g===1/m)||g!==g&&m!==m}var r=typeof Object.is=="function"?Object.is:n,i=t.useSyncExternalStore,a=e.useRef,o=e.useEffect,s=e.useMemo,h=e.useDebugValue;function f(g,m,v,b,_){var C=a(null),M;C.current===null?(M={hasValue:!1,value:null},C.current=M):M=C.current;var E=s(function(){var P=!1,N,z,Y=function(U){if(!P){P=!0,N=U;var W=b(U);if(_!==void 0&&M.hasValue){var R=M.value;if(_(R,W))return z=R,R}return z=W,W}var B=N,q=z;if(r(B,U))return q;var Q=b(U);return _!==void 0&&_(q,Q)?q:(N=U,z=Q,Q)},te=v===void 0?null:v,K=function(){return Y(m())},V=te===null?void 0:function(){return Y(te())};return[K,V]},[m,v,b,_]),A=E[0],T=E[1],k=i(g,A,T);return o(function(){M.hasValue=!0,M.value=k},[k]),h(k),k}n_.useSyncExternalStoreWithSelector=f,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),n_}process.env.NODE_ENV==="production"?Kx.exports=G9():Kx.exports=W9();var U9=Kx.exports;const H9=er(U9),{useDebugValue:X9}=F,{useSyncExternalStoreWithSelector:Z9}=H9,Y9=e=>e;function q9(e,t=Y9,n){const r=Z9(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return X9(r),r}const J9=e=>{const t=typeof e=="function"?z9(e):e,n=(r,i)=>q9(t,r,i);return Object.assign(n,t),n},K9=e=>J9(e),kA=`
//VERSION=3
function setup() {
return {
input: [{
bands: [
"B04",
"B08",
"SCL",
"dataMask"
]
}],
output: [
{
id: "data",
bands: 1
},
{
id: "dataMask",
bands: 1
}]
}
}
function evaluatePixel(samples) {
let ndvi = (samples.B08 - samples.B04)/(samples.B08 + samples.B04)
var validNDVIMask = 1
if (samples.B08 + samples.B04 == 0 ){
validNDVIMask = 0
}
var noWaterMask = 1
if (samples.SCL == 6 ){
noWaterMask = 0
}
return {
data: [ndvi],
// Exclude nodata pixels, pixels where ndvi is not defined and water pixels from statistics:
dataMask: [samples.dataMask * validNDVIMask * noWaterMask]
}
}
`;async function Q9(){var r,i;console.log("access Token",Ot.getState().configs);const t=await fetch("https://services.sentinel-hub.com/oauth/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"client_credentials",client_id:((r=Ot.getState().configs)==null?void 0:r.VITE_SENTINAL_HUB_CLIENT_ID)||localStorage.getItem("VITE_SENTINAL_HUB_CLIENT_ID")||"your-sentinal-hub-api-key",client_secret:((i=Ot.getState().configs)==null?void 0:i.VITE_SENTINAL_HUB_CLIENT_SECRET)||localStorage.getItem("VITE_SENTINAL_HUB_CLIENT_SECRET")||"your-sentinal-hub-client-secret"})});if(!t.ok)throw new Error("Failed to obtain access token");return(await t.json()).access_token}async function DA(e,t){var o,s;const n="https://services.sentinel-hub.com/oauth/token",r=new URLSearchParams({grant_type:"client_credentials",client_id:((o=Ot.getState().configs)==null?void 0:o.VITE_SENTINAL_HUB_CLIENT_ID)||e,client_secret:((s=Ot.getState().configs)==null?void 0:s.VITE_SENTINAL_HUB_CLIENT_SECRET)||t}),i=await fetch(n,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:r.toString()});if(!i.ok)throw new Error("Failed to fetch access token");const a=await i.json();return console.log("getAccessToken",a),a}async function r_(e,{accessToken:t,startDate:n,endDate:r}){const i=n||new Date(new Date().setMonth(new Date().getMonth()-3)).toISOString(),a=r||new Date().toISOString(),o="https://services.sentinel-hub.com/api/v1/statistics",s={input:{bounds:{geometry:{type:"Polygon",coordinates:e.geometry.coordinates},properties:{crs:"http://www.opengis.net/def/crs/EPSG/0/4326"}},data:[{type:"sentinel-2-l2a",dataFilter:{mosaickingOrder:"leastCC"}}]},aggregation:{timeRange:{from:i,to:a},aggregationInterval:{of:"P7D"},evalscript:kA,resx:10,resy:10}};try{const h=await fetch(o,{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},body:JSON.stringify(s)});if(!h.ok)throw console.error(h),new Error("Failed to fetch NDVI statistics");const f=await h.json();return console.log("ndvi data k",f),f==null?void 0:f.data}catch(h){return console.error("Error fetching NDVI statistics:",h),null}}async function i_(e,{accessToken:t,startDate:n,endDate:r}){const i=e.lng,a=e.lat,o=1e-4,s=n||new Date(new Date().setMonth(new Date().getMonth()-3)).toISOString(),h=r||new Date().toISOString(),f={type:"Polygon",coordinates:[[[i-o,a-o],[i+o,a-o],[i+o,a+o],[i-o,a+o],[i-o,a-o]]]},g="https://services.sentinel-hub.com/api/v1/statistics",m={input:{bounds:{geometry:f,properties:{crs:"http://www.opengis.net/def/crs/EPSG/0/4326"}},data:[{type:"sentinel-2-l2a",dataFilter:{mosaickingOrder:"leastCC"}}]},aggregation:{timeRange:{from:s,to:h},aggregationInterval:{of:"P7D"},evalscript:kA,resx:10,resy:10}};try{const v=await fetch(g,{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},body:JSON.stringify(m)});if(!v.ok)throw new Error("Failed to fetch NDVI statistics");const b=await v.json();return console.log("NDVI data for point:",b),b==null?void 0:b.data}catch(v){return console.error("Error fetching NDVI statistics for point:",v),null}}async function Bg({aoi:e,startDate:t,endDate:n,accessToken:r,limit:i=10,nextToken:a=null}){var g,m,v,b;if(!r)return console.warn("Access token is required"),{dates:[],nextToken:null};if(!t||!n){const _=new Date;t=new Date(_.setMonth(_.getMonth()-36)).toISOString(),n=new Date().toISOString()}const o=`${t}`,s=`${n}`,h="https://services.sentinel-hub.com/api/v1/catalog/1.0.0/search",f={Authorization:`Bearer ${r}`,"Content-Type":"application/json"};if(!e)return console.warn("aoi is not provided to getSatellitePassDates "),{dates:[],nextToken:null};try{const _={bbox:e,datetime:`${o}/${s}`,collections:["sentinel-2-l1c"],limit:i,filter:"eo:cloud_cover <= 20"};a&&(_.next=a);const C=await fetch(h,{method:"POST",headers:f,body:JSON.stringify(_)});if(!C.ok)throw new Error(`HTTP error! Status: ${C.status}`);const M=await C.json();console.log("API response data:",{featuresCount:(g=M.features)==null?void 0:g.length,linksCount:(m=M.links)==null?void 0:m.length,hasLinks:!!M.links,links:M.links});const E=(v=M.links)==null?void 0:v.find(k=>k.rel==="next"),A=(b=E==null?void 0:E.body)==null?void 0:b.next;console.log("Next token extraction:",{nextLink:E,nextTokenFromResponse:A});const T=M.features.map(k=>new Date(k.properties.datetime));return T.sort((k,P)=>P-k),console.log(`Found ${T.length} dates (limit: ${i}, hasNext: ${!!A})`),{dates:T,nextToken:A}}catch(_){return console.error("Error fetching data:",_),{dates:[],nextToken:null}}}const a_=Object.freeze(Object.defineProperty({__proto__:null,fetchAccessToken:DA,fetchMeanNDVI:r_,fetchMeanNDVIForPoint:i_,getAccessToken:Q9,getSatellitePassDates:Bg},Symbol.toStringTag,{value:"Module"}));var La=63710088e-1,e8={centimeters:La*100,centimetres:La*100,degrees:360/(2*Math.PI),feet:La*3.28084,inches:La*39.37,kilometers:La/1e3,kilometres:La/1e3,meters:La,metres:La,miles:La/1609.344,millimeters:La*1e3,millimetres:La*1e3,nauticalmiles:La/1852,radians:1,yards:La*1.0936};function t8(e,t="kilometers"){const n=e8[t];if(!n)throw new Error(t+" units is invalid");return e*n}function zg(e){return e%360*Math.PI/180}function NA(e){if(!e)throw new Error("coord is required");if(!Array.isArray(e)){if(e.type==="Feature"&&e.geometry!==null&&e.geometry.type==="Point")return[...e.geometry.coordinates];if(e.type==="Point")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")}function s_(e,t,n={}){var r=NA(e),i=NA(t),a=zg(i[1]-r[1]),o=zg(i[0]-r[0]),s=zg(r[1]),h=zg(i[1]),f=Math.pow(Math.sin(a/2),2)+Math.pow(Math.sin(o/2),2)*Math.cos(s)*Math.cos(h);return t8(2*Math.atan2(Math.sqrt(f),Math.sqrt(1-f)),n.units)}function LA(e,t,n){if(e!==null)for(var r,i,a,o,s,h,f,g=0,m=0,v,b=e.type,_=b==="FeatureCollection",C=b==="Feature",M=_?e.features.length:1,E=0;E<M;E++){f=_?e.features[E].geometry:C?e.geometry:e,v=f?f.type==="GeometryCollection":!1,s=v?f.geometries.length:1;for(var A=0;A<s;A++){var T=0,k=0;if(o=v?f.geometries[A]:f,o!==null){h=o.coordinates;var P=o.type;switch(g=0,P){case null:break;case"Point":if(t(h,m,E,T,k)===!1)return!1;m++,T++;break;case"LineString":case"MultiPoint":for(r=0;r<h.length;r++){if(t(h[r],m,E,T,k)===!1)return!1;m++,P==="MultiPoint"&&T++}P==="LineString"&&T++;break;case"Polygon":case"MultiLineString":for(r=0;r<h.length;r++){for(i=0;i<h[r].length-g;i++){if(t(h[r][i],m,E,T,k)===!1)return!1;m++}P==="MultiLineString"&&T++,P==="Polygon"&&k++}P==="Polygon"&&T++;break;case"MultiPolygon":for(r=0;r<h.length;r++){for(k=0,i=0;i<h[r].length;i++){for(a=0;a<h[r][i].length-g;a++){if(t(h[r][i][a],m,E,T,k)===!1)return!1;m++}k++}T++}break;case"GeometryCollection":for(r=0;r<o.geometries.length;r++)if(LA(o.geometries[r],t)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function Uu(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;const n=[1/0,1/0,-1/0,-1/0];return LA(e,r=>{n[0]>r[0]&&(n[0]=r[0]),n[1]>r[1]&&(n[1]=r[1]),n[2]<r[0]&&(n[2]=r[0]),n[3]<r[1]&&(n[3]=r[1])}),n}var n8=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t=="object"&&typeof n=="object"){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n};const jA=er(n8),r8=()=>{const e=Ot.getState().configs;return e!=null&&e.username?e.username:"pepe"},o_=e=>`${r8()}_${e}`,Hu=e=>{const t=o_(e);return localStorage.getItem(t)},Ic=(e,t)=>{const n=o_(e);localStorage.setItem(n,t)},RA=e=>{const t=o_(e);localStorage.removeItem(t)},l_=e=>{try{const t=Hu(e);return t?JSON.parse(t):null}catch(t){return console.error(`Failed to parse JSON from localStorage for key ${e}:`,t),null}},c_=(e,t)=>{try{const n=JSON.stringify(t);Ic(e,n)}catch(n){console.error(`Failed to stringify JSON for localStorage key ${e}:`,n)}};function i8(e,t){if(!e||!t||(e==null?void 0:e.length)!==4||(t==null?void 0:t.length)!==4)return!0;const[n,r,i,a]=e,[o,s,h,f]=t,g=[(n+i)/2,(r+a)/2],m=[(o+h)/2,(s+f)/2],v=s_(g,m,{units:"kilometers"}),b=s_([n,r],[i,a],{units:"kilometers"}),_=s_([o,s],[h,f],{units:"kilometers"}),C=Math.abs(_-b)/b;return v>2||C>1}const Xn={PICKER:"PICKER",NORMAL:"NORMAL",DRAW:"DRAW",EDIT_PLOT:"EDIT_PLOT",ADD_PLOT:"ADD_PLOT",ADD_MARKER:"ADD_MARKER",EDIT_MARKER:"EDIT_MARKER",ADD_NEW_FARM:"ADD_NEW_FARM"},ja={NORMAL:"NORMAL",COMPARISION_VIEW:"COMPARISION_VIEW"},FA={DEFAULT:"",POINTER:"pointer",CROSSHAIR:"crosshair",MOVE:"move",GRAB:"grab",GRABBING:"grabbing",TEXT:"text",WAIT:"wait",HELP:"help"},Ot=K9((e,t)=>({configs:{},setConfigs:n=>e({configs:n}),requestHeaders:void 0,setRequestHeaders:n=>e({requestHeaders:n}),setAccessToken:n=>e({accessToken:n}),sidebarExpanded:!0,setSidebarExpanded:n=>e({sidebarExpanded:n}),hoveredValue:null,setHoveredValue:n=>e({hoveredValue:n}),cursor:FA.DEFAULT,previousCursor:FA.DEFAULT,setCursor:n=>e({previousCursor:Ot.getState().cursor,cursor:n}),resetCursor:()=>e(n=>({cursor:n.previousCursor})),viewMode:Xn.NORMAL,pickerData:null,setPickerData:n=>e({pickerData:n}),loadingNDVIImages:[],addLoadingNDVIImage:n=>e(r=>({loadingNDVIImages:[...r.loadingNDVIImages,n]})),removeLoadingNDVIImage:n=>e(r=>({loadingNDVIImages:r.loadingNDVIImages.filter(i=>i!==n)})),isNDVIImageLoading:n=>Ot.getState().loadingNDVIImages.includes(n),setViewMode:n=>e({viewMode:n}),toPickerMode:()=>e({viewMode:Xn.PICKER}),toNormalMode:()=>e({viewMode:Xn.NORMAL}),toDrawMode:()=>e({viewMode:Xn.DRAW}),toggleNormalPickerMode:()=>e(n=>({viewMode:n.viewMode===Xn.NORMAL?Xn.PICKER:Xn.NORMAL})),cursorCords:[0,0],setCursorCords:n=>e({cursorCords:n}),rasterLayer:{value:"3_NDVI",label:"NDVI"},setRasterLayer:n=>e({rasterLayer:n}),rasterOpacity:100,setRasterOpacity:n=>e({rasterOpacity:n}),clickedMarker:null,setClickedMarker:n=>e({clickedMarker:n}),setShowCroppedImages:n=>e({showCroppedImages:n}),showCroppedImages:!0,datesLoading:!1,setDatesLoading:n=>e({datesLoading:n}),rasterLayerLoading:!1,setRasterLayerLoading:n=>e({rasterLayerLoading:n}),mapMode:(()=>{try{const n=Hu("map-mode");if(n&&Object.values(ja).includes(n))return n}catch(n){console.error("Failed to load mapMode from localStorage during store initialization:",n)}return ja.NORMAL})(),setMapMode:n=>e({mapMode:n}),dateRange:{start:new Date(Date.now()-30*24*60*60*1e3),end:new Date},dateRange2:{start:new Date(Date.now()-30*24*60*60*1e3),end:new Date},setDateRange:n=>{const r={start:n.start?typeof n.start=="string"?new Date(n.start):n.start:void 0,end:n.end?typeof n.end=="string"?new Date(n.end):n.end:void 0};e({dateRange:r})},setDateRange2:n=>{const r={start:n.start?typeof n.start=="string"?new Date(n.start):n.start:void 0,end:n.end?typeof n.end=="string"?new Date(n.end):n.end:void 0};e({dateRange2:r})},passDates:[],setPassDates:n=>e({passDates:n}),nextToken:null,setNextToken:n=>e({nextToken:n}),hasMoreDates:!0,setHasMoreDates:n=>e({hasMoreDates:n}),datesLoadingMore:!1,setDatesLoadingMore:n=>e({datesLoadingMore:n}),isFetchingDates:!1,setIsFetchingDates:n=>e({isFetchingDates:n}),cachedAccessToken:null,setCachedAccessToken:n=>e({cachedAccessToken:n}),lastLoadMoreTime:0,setLastLoadMoreTime:n=>e({lastLoadMoreTime:n}),previousBbox:null,setPreviousBbox:n=>e({previousBbox:n}),abortController:null,setAbortController:n=>e({abortController:n}),fetchPassDates:async(n,r={})=>{var m,v,b,_,C;const i=t();if(!n){console.log("No map instance found to load available dates");return}if(i.datesLoadingMore){console.log("fetchPassDates: Skipping because loadMoreDates is in progress");return}const a=Date.now()-i.lastLoadMoreTime;if(a<2e3){console.log("fetchPassDates: Skipping because loadMoreDates completed recently (",a,"ms ago)");return}if(i.isFetchingDates&&!(r!=null&&r.layerChanged)){console.log("Already fetching dates, skipping...");return}if((n==null?void 0:n.getZoom())<9){console.log("Layer is not visible or zoom is smaller than 9"),e({passDates:[]});return}const o=n==null?void 0:n.getBounds();let s=o?[o.getWest(),o.getSouth(),o.getEast(),o.getNorth()]:void 0;if(!s){console.warn("No bounds found. Not fetching available dates");return}if(!(r!=null&&r.layerChanged)&&((m=i.previousBbox)==null?void 0:m.length)>0&&!i8(i.previousBbox,s)){console.log("Setting previous bbox",s),e({previousBbox:s}),console.log("Bbox has not changed significantly");return}r!=null&&r.layerChanged&&e({nextToken:null,hasMoreDates:!0,datesLoadingMore:!1}),console.log("Setting previous bbox",s),e({previousBbox:s}),i.abortController&&(console.log("Aborting previous request"),i.abortController.abort());const h=new AbortController,{signal:f}=h;e({abortController:h}),e({datesLoading:!0,isFetchingDates:!0});let g=i.cachedAccessToken||((v=i.configs)==null?void 0:v.VITE_SENTINAL_HUB_ACCESS_TOKEN)||localStorage.getItem("accessToken");console.log("Access token inside mapStore",g);try{if(((b=i.rasterLayer)==null?void 0:b.value)==="ET"&&((_=i.rasterLayer)!=null&&_.getAvailableDates)){const T=await i.rasterLayer.getAvailableDates(s);if(f.aborted){console.log("Request was aborted, ignoring response");return}if(console.log("Setting pass dates",T),e({passDates:T}),T.length>0){T.sort((P,N)=>N-P);const k=T[0];e({dateRange:{start:k,end:k}})}e({datesLoading:!1,isFetchingDates:!1});return}const M=Wf.find(T=>{var k;return T.value===((k=i.rasterLayer)==null?void 0:k.value)});if(console.log("Current rasterLayer:",i.rasterLayer),console.log("Found layer in options:",M),M!=null&&M.getAvailableDates){console.log("Using getAvailableDates from layerOptions for",M.value);const T=await M.getAvailableDates(s);if(f.aborted){console.log("Request was aborted, ignoring response");return}if(console.log("Setting pass dates from layerOptions",T),e({passDates:T}),T.length>0){T.sort((P,N)=>N-P);const k=T[0];e({dateRange:{start:k,end:k}})}e({datesLoading:!1,isFetchingDates:!1});return}console.log("Using Sentinel Hub API for layer:",(C=i.rasterLayer)==null?void 0:C.value);let E=g;if(!E){console.log("No access token found, fetching new one...");try{const{getAccessToken:T}=await Promise.resolve().then(()=>a_);E=await T(),console.log("New access token fetched:",!!E),e({cachedAccessToken:E})}catch(T){console.error("Failed to fetch access token:",T),e({datesLoading:!1,isFetchingDates:!1});return}}const A=await Bg({aoi:s,accessToken:E,limit:10,nextToken:null});if(console.log("Setting pass dates from Sentinel Hub API",A),console.log("API response details:",{hasDates:!!(A.dates||A),datesLength:(A.dates||A).length,hasNextToken:!!A.nextToken,nextToken:A.nextToken}),e({passDates:A.dates||A,nextToken:A.nextToken||null,hasMoreDates:!!A.nextToken}),A.dates&&A.dates.length>0){A.dates.sort((k,P)=>P-k);const T=A.dates[0];e({dateRange:{start:T,end:T}})}else if(Array.isArray(A)&&A.length>0){A.sort((k,P)=>P-k);const T=A[0];e({dateRange:{start:T,end:T}})}}catch(M){M.name==="AbortError"?console.log("Previous request aborted"):console.error("Error fetching dates:",M)}finally{f.aborted||e({datesLoading:!1,isFetchingDates:!1})}},loadMoreDates:async n=>{var o,s,h;const r=t();if(console.log("loadMoreDates called:",{hasMapInstance:!!n,datesLoadingMore:r.datesLoadingMore,hasMoreDates:r.hasMoreDates,rasterLayer:(o=r.rasterLayer)==null?void 0:o.value,currentNextToken:r.nextToken,currentPassDatesLength:r.passDates.length}),!n||r.datesLoadingMore||!r.hasMoreDates||((s=r.rasterLayer)==null?void 0:s.value)==="ET")return console.log("loadMoreDates early return - conditions not met"),Promise.resolve();const i=n==null?void 0:n.getBounds();let a=i?[i.getWest(),i.getSouth(),i.getEast(),i.getNorth()]:void 0;if(!a)return console.warn("No bounds found. Not loading more dates"),Promise.resolve();console.log("loadMoreDates: Setting datesLoadingMore to true"),e({datesLoadingMore:!0});try{let f=r.cachedAccessToken||((h=r.configs)==null?void 0:h.VITE_SENTINAL_HUB_ACCESS_TOKEN)||localStorage.getItem("accessToken");if(!f){console.log("loadMoreDates: Fetching new access token");const{getAccessToken:m}=await Promise.resolve().then(()=>a_);f=await m(),e({cachedAccessToken:f})}console.log("loadMoreDates: Making API call with next token:",r.nextToken);const g=await Bg({aoi:a,accessToken:f,limit:10,nextToken:r.nextToken});if(console.log("loadMoreDates: API response received:",{datesLength:g.dates.length,nextToken:g.nextToken,hasMore:!!g.nextToken}),g.dates.length>0){const m=[...r.passDates,...g.dates];console.log("loadMoreDates: Merging dates - existing:",r.passDates.length,"new:",g.dates.length,"total:",m.length),e({passDates:m,nextToken:g.nextToken,hasMoreDates:!!g.nextToken}),console.log("Added",g.dates.length,"new dates, total:",m.length)}else e({hasMoreDates:!1}),console.log("No more dates available")}catch(f){console.error("Error loading more dates:",f)}finally{console.log("loadMoreDates: Setting datesLoadingMore to false"),e({datesLoadingMore:!1}),e({lastLoadMoreTime:Date.now()})}}}));function BA(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=BA(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function Jn(){for(var e,t,n=0,r="",i=arguments.length;n<i;n++)(e=arguments[n])&&(t=BA(e))&&(r&&(r+=" "),r+=t);return r}var zA={exports:{}};/**
* MapLibre GL JS
* @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt
*/(function(e,t){(function(n,r){e.exports=r()})(Tc,function(){var n={},r={};function i(o,s,h){if(r[o]=h,o==="index"){var f="var sharedModule = {}; ("+r.shared+")(sharedModule); ("+r.worker+")(sharedModule);",g={};return r.shared(g),r.index(n,g),typeof window<"u"&&n.setWorkerUrl(window.URL.createObjectURL(new Blob([f],{type:"text/javascript"}))),n}}i("shared",["exports"],function(o){function s(u,c,d,y){return new(d||(d=Promise))(function(S,D){function L(ie){try{H(y.next(ie))}catch(me){D(me)}}function $(ie){try{H(y.throw(ie))}catch(me){D(me)}}function H(ie){var me;ie.done?S(ie.value):(me=ie.value,me instanceof d?me:new d(function(be){be(me)})).then(L,$)}H((y=y.apply(u,c||[])).next())})}function h(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}typeof SuppressedError=="function"&&SuppressedError;var f=g;function g(u,c){this.x=u,this.y=c}g.prototype={clone:function(){return new g(this.x,this.y)},add:function(u){return this.clone()._add(u)},sub:function(u){return this.clone()._sub(u)},multByPoint:function(u){return this.clone()._multByPoint(u)},divByPoint:function(u){return this.clone()._divByPoint(u)},mult:function(u){return this.clone()._mult(u)},div:function(u){return this.clone()._div(u)},rotate:function(u){return this.clone()._rotate(u)},rotateAround:function(u,c){return this.clone()._rotateAround(u,c)},matMult:function(u){return this.clone()._matMult(u)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(u){return this.x===u.x&&this.y===u.y},dist:function(u){return Math.sqrt(this.distSqr(u))},distSqr:function(u){var c=u.x-this.x,d=u.y-this.y;return c*c+d*d},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(u){return Math.atan2(this.y-u.y,this.x-u.x)},angleWith:function(u){return this.angleWithSep(u.x,u.y)},angleWithSep:function(u,c){return Math.atan2(this.x*c-this.y*u,this.x*u+this.y*c)},_matMult:function(u){var c=u[2]*this.x+u[3]*this.y;return this.x=u[0]*this.x+u[1]*this.y,this.y=c,this},_add:function(u){return this.x+=u.x,this.y+=u.y,this},_sub:function(u){return this.x-=u.x,this.y-=u.y,this},_mult:function(u){return this.x*=u,this.y*=u,this},_div:function(u){return this.x/=u,this.y/=u,this},_multByPoint:function(u){return this.x*=u.x,this.y*=u.y,this},_divByPoint:function(u){return this.x/=u.x,this.y/=u.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var u=this.y;return this.y=this.x,this.x=-u,this},_rotate:function(u){var c=Math.cos(u),d=Math.sin(u),y=d*this.x+c*this.y;return this.x=c*this.x-d*this.y,this.y=y,this},_rotateAround:function(u,c){var d=Math.cos(u),y=Math.sin(u),S=c.y+y*(this.x-c.x)+d*(this.y-c.y);return this.x=c.x+d*(this.x-c.x)-y*(this.y-c.y),this.y=S,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},g.convert=function(u){return u instanceof g?u:Array.isArray(u)?new g(u[0],u[1]):u};var m=h(f),v=b;function b(u,c,d,y){this.cx=3*u,this.bx=3*(d-u)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*c,this.by=3*(y-c)-this.cy,this.ay=1-this.cy-this.by,this.p1x=u,this.p1y=c,this.p2x=d,this.p2y=y}b.prototype={sampleCurveX:function(u){return((this.ax*u+this.bx)*u+this.cx)*u},sampleCurveY:function(u){return((this.ay*u+this.by)*u+this.cy)*u},sampleCurveDerivativeX:function(u){return(3*this.ax*u+2*this.bx)*u+this.cx},solveCurveX:function(u,c){if(c===void 0&&(c=1e-6),u<0)return 0;if(u>1)return 1;for(var d=u,y=0;y<8;y++){var S=this.sampleCurveX(d)-u;if(Math.abs(S)<c)return d;var D=this.sampleCurveDerivativeX(d);if(Math.abs(D)<1e-6)break;d-=S/D}var L=0,$=1;for(d=u,y=0;y<20&&(S=this.sampleCurveX(d),!(Math.abs(S-u)<c));y++)u>S?L=d:$=d,d=.5*($-L)+L;return d},solve:function(u,c){return this.sampleCurveY(this.solveCurveX(u,c))}};var _=h(v);let C,M;function E(){return C==null&&(C=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),C}function A(){if(M==null&&(M=!1,E())){const c=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(c){for(let y=0;y<5*5;y++){const S=4*y;c.fillStyle=`rgb(${S},${S+1},${S+2})`,c.fillRect(y%5,Math.floor(y/5),1,1)}const d=c.getImageData(0,0,5,5).data;for(let y=0;y<5*5*4;y++)if(y%4!=3&&d[y]!==y){M=!0;break}}}return M||!1}function T(u,c,d,y){const S=new _(u,c,d,y);return D=>S.solve(D)}const k=T(.25,.1,.25,1);function P(u,c,d){return Math.min(d,Math.max(c,u))}function N(u,c,d){const y=d-c,S=((u-c)%y+y)%y+c;return S===c?d:S}function z(u,...c){for(const d of c)for(const y in d)u[y]=d[y];return u}let Y=1;function te(u,c,d){const y={};for(const S in u)y[S]=c.call(this,u[S],S,u);return y}function K(u,c,d){const y={};for(const S in u)c.call(this,u[S],S,u)&&(y[S]=u[S]);return y}function V(u){return Array.isArray(u)?u.map(V):typeof u=="object"&&u?te(u,V):u}const U={};function W(u){U[u]||(typeof console<"u"&&console.warn(u),U[u]=!0)}function R(u,c,d){return(d.y-u.y)*(c.x-u.x)>(c.y-u.y)*(d.x-u.x)}function B(u){return typeof WorkerGlobalScope<"u"&&u!==void 0&&u instanceof WorkerGlobalScope}let q=null;function Q(u){return typeof ImageBitmap<"u"&&u instanceof ImageBitmap}const ne="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function le(u,c,d,y,S){return s(this,void 0,void 0,function*(){if(typeof VideoFrame>"u")throw new Error("VideoFrame not supported");const D=new VideoFrame(u,{timestamp:0});try{const L=D==null?void 0:D.format;if(!L||!L.startsWith("BGR")&&!L.startsWith("RGB"))throw new Error(`Unrecognized format ${L}`);const $=L.startsWith("BGR"),H=new Uint8ClampedArray(y*S*4);if(yield D.copyTo(H,function(ie,me,be,Me,Te){const Le=4*Math.max(-me,0),Be=(Math.max(0,be)-be)*Me*4+Le,Ze=4*Me,Qe=Math.max(0,me),gt=Math.max(0,be);return{rect:{x:Qe,y:gt,width:Math.min(ie.width,me+Me)-Qe,height:Math.min(ie.height,be+Te)-gt},layout:[{offset:Be,stride:Ze}]}}(u,c,d,y,S)),$)for(let ie=0;ie<H.length;ie+=4){const me=H[ie];H[ie]=H[ie+2],H[ie+2]=me}return H}finally{D.close()}})}let J,pe;const Ce="AbortError";function oe(){return new Error(Ce)}const de={MAX_PARALLEL_IMAGE_REQUESTS:16,MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:8,MAX_TILE_CACHE_ZOOM_LEVELS:5,REGISTERED_PROTOCOLS:{},WORKER_URL:""};function ye(u){return de.REGISTERED_PROTOCOLS[u.substring(0,u.indexOf("://"))]}const ve="global-dispatcher";class Oe extends Error{constructor(c,d,y,S){super(`AJAXError: ${d} (${c}): ${y}`),this.status=c,this.statusText=d,this.url=y,this.body=S}}const se=()=>B(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,ee=function(u,c){if(/:\/\//.test(u.url)&&!/^https?:|^file:/.test(u.url)){const y=ye(u.url);if(y)return y(u,c);if(B(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:u,targetMapId:ve},c)}if(!(/^file:/.test(d=u.url)||/^file:/.test(se())&&!/^\w+:/.test(d))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(y,S){return s(this,void 0,void 0,function*(){const D=new Request(y.url,{method:y.method||"GET",body:y.body,credentials:y.credentials,headers:y.headers,cache:y.cache,referrer:se(),signal:S.signal});y.type!=="json"||D.headers.has("Accept")||D.headers.set("Accept","application/json");const L=yield fetch(D);if(!L.ok){const ie=yield L.blob();throw new Oe(L.status,L.statusText,y.url,ie)}let $;$=y.type==="arrayBuffer"||y.type==="image"?L.arrayBuffer():y.type==="json"?L.json():L.text();const H=yield $;if(S.signal.aborted)throw oe();return{data:H,cacheControl:L.headers.get("Cache-Control"),expires:L.headers.get("Expires")}})}(u,c);if(B(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:u,mustQueue:!0,targetMapId:ve},c)}var d;return function(y,S){return new Promise((D,L)=>{var $;const H=new XMLHttpRequest;H.open(y.method||"GET",y.url,!0),y.type!=="arrayBuffer"&&y.type!=="image"||(H.responseType="arraybuffer");for(const ie in y.headers)H.setRequestHeader(ie,y.headers[ie]);y.type==="json"&&(H.responseType="text",!(($=y.headers)===null||$===void 0)&&$.Accept||H.setRequestHeader("Accept","application/json")),H.withCredentials=y.credentials==="include",H.onerror=()=>{L(new Error(H.statusText))},H.onload=()=>{if(!S.signal.aborted)if((H.status>=200&&H.status<300||H.status===0)&&H.response!==null){let ie=H.response;if(y.type==="json")try{ie=JSON.parse(H.response)}catch(me){return void L(me)}D({data:ie,cacheControl:H.getResponseHeader("Cache-Control"),expires:H.getResponseHeader("Expires")})}else{const ie=new Blob([H.response],{type:H.getResponseHeader("Content-Type")});L(new Oe(H.status,H.statusText,y.url,ie))}},S.signal.addEventListener("abort",()=>{H.abort(),L(oe())}),H.send(y.body)})}(u,c)};function he(u){if(!u||u.indexOf("://")<=0||u.indexOf("data:image/")===0||u.indexOf("blob:")===0)return!0;const c=new URL(u),d=window.location;return c.p