@magmacomputing/tempo-plugin-geo 1.2.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +38 -0
- package/README.md +28 -62
- package/dist/index.d.ts +18 -16
- package/dist/index.global.min.js +1 -1
- package/dist/index.js +355 -196
- package/dist/install.global.min.js +1 -1
- package/dist/install.js +355 -196
- package/package.json +8 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Magma;((Magma||={}).plugins||={}).geo=(()=>{var Vr=Object.create;var Ze=Object.defineProperty;var Xr=Object.getOwnPropertyDescriptor;var Qr=Object.getOwnPropertyNames;var en=Object.getPrototypeOf,tn=Object.prototype.hasOwnProperty;var E=(e,t,r)=>()=>{if(r)throw r[0];try{return e&&(t=e(e=0)),t}catch(n){throw r=[n],n}};var rn=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(r){throw t=0,r}},ge=(e,t)=>{for(var r in t)Ze(e,r,{get:t[r],enumerable:!0})},Be=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Qr(t))!tn.call(e,o)&&o!==r&&Ze(e,o,{get:()=>t[o],enumerable:!(n=Xr(t,o))||n.enumerable});return e},Ee=(e,t,r)=>(Be(e,t,"default"),r&&Be(r,t,"default")),jt=(e,t,r)=>(r=e!=null?Vr(en(e)):{},Be(t||!e||!e.__esModule?Ze(r,"default",{value:e,enumerable:!0}):r,e)),nn=e=>Be(Ze({},"__esModule",{value:!0}),e);var dt=rn((ao,Yt)=>{"use strict";Yt.exports=window.Magma.pluginSdk});var sn,an,cn,ln,un,fn,pn,dn,qt,mn,Ht,w,Z=E(()=>{"use strict";sn=Symbol.for("$LibraryTarget"),an=Symbol.for("$LibraryDiscover"),cn=Symbol.for("$LibraryExtensible"),ln=Symbol.for("nodejs.util.inspect.custom"),un=Symbol.for("$LibraryLogConfig"),fn=Symbol.for("$LibraryRegistry"),pn=Symbol.for("$LibraryRegister"),dn=Symbol.for("$LibrarySerializerRegistry"),qt=Symbol.for("$LibraryMutable"),mn=Symbol.for("$LibraryIdentity"),Ht=Symbol.for("$LibraryUnwrapped"),w={$Target:sn,$Discover:an,$Extensible:cn,$Inspect:ln,$LogConfig:un,$Registry:fn,$Register:pn,$SerializerRegistry:dn,$Identity:mn,$Mutable:qt,$Unwrapped:Ht}});function he(e){let t=e,r=0,n=50;for(;t;){let o=t[w.$Target];if(!o||r>=n)break;t=o,r++}return t}function C(e,t=!1){if(!e||typeof e!="object")return[];let r=he(e);if(!t){let u=Reflect.ownKeys(r),f=[];for(let d of u){let h=Object.getOwnPropertyDescriptor(r,d);h&&h.enumerable&&f.push([d,r[d]])}return f}let n=[],o=50,s=0,i=r;for(;i&&i!==Object.prototype&&s++<o;)n.push(he(i)),i=Object.getPrototypeOf(i);let a=[],c=new Set;for(let u of n.reverse()){let f=Reflect.ownKeys(u);for(let d of f){if(c.has(d))continue;let h=Object.getOwnPropertyDescriptor(u,d);!h||!h.enumerable||(c.add(d),a.push([d,r[d]]))}}return a}function je(e,t=!1){return C(e,t).map(([r])=>r)}function Vt(e,t=!1){return C(e,t).map(([r,n])=>n)}function Ye(e,t,r){return t?Ye(e.map(t,r)):Array.from(new Set(e))}var K=E(()=>{"use strict";Z()});var gt,ht,qe,ue,V,gn,hn,He,J=E(()=>{"use strict";Z();K();gt=[],ht=e=>{if(e===null)return"Null";if(e===void 0)return"Undefined";let t=typeof e;if(t==="string")return"String";if(t==="number")return"Number";if(t==="boolean")return"Boolean";if(t==="bigint")return"BigInt";if(t==="symbol")return"Symbol";try{let r=t==="object"?he(e):e;return Object.prototype.toString.call(r).slice(8,-1)}catch{return t==="function"?"Function":"Object"}},qe=e=>{try{let t=e?.[Symbol.toStringTag]??e?.prototype?.[Symbol.toStringTag];if(typeof t=="string")return t}catch{}},ue=(e,...t)=>{let r=e;try{r=e?.[w.$Target]??e}catch{r=e}let n=ht(r);switch(n){case"Function":try{return hn(r)?"Class":"Function"}catch{return"Function"}case"Object":{try{if("length"in r&&Object.keys(r).every(s=>s==="length"||Number.isFinite(Number(s))))return"ArrayLike";for(let s of t){let i=s.class?.[w.$Target]??s.class;if(r===i||i&&r instanceof i)return s.type}let o=globalThis[w.$Registry]??[];for(let s of[...gt,...o]){let i=s.class?.[w.$Target]??s.class;if(r===i||i&&r instanceof i)return s.type}}catch{return"Object"}return"Object"}default:return n}},V=(e,...t)=>({type:ue(e,...t),value:e}),gn=/^\s*(class\s|\[native code\])/,hn=e=>{if(typeof e!="function")return!1;let t=e?.[w.$Target]??e;if(!("prototype"in t))return!1;let r=t?.name,n=qe(t);if(t?.[w.$Identity]||t?.prototype?.[w.$Identity]||typeof n=="string"&&n.startsWith("Temporal."))return!0;if(typeof n=="string"&&n.endsWith("Function"))return!1;if((globalThis[w.$Registry]??[]).some(s=>(s.class?.[w.$Target]??s.class)===t||r&&s.type===r||n&&s.type===n))return!0;try{let s=Function.prototype.toString.call(t);if(gn.test(s))return!0;let i=Object.getOwnPropertyDescriptor(t,"prototype");if(i&&i.writable===!1&&!Object.isFrozen(t))return!0;let a=t.prototype;if(a&&Object.getOwnPropertyNames(a).length>2)return!0}catch{return!1}return!1},He=(e,t)=>{if(typeof e!="function")return;let r=qe(e),n=t??r??e.name;n&&!["Object","Function",""].includes(n)&&(gt.some(o=>o.class===e)||gt.push({class:e,type:n}))}});function Ve(e){switch(typeof e){case"number":return Number.isFinite(e);case"bigint":return!0;case"string":{let r=e.trim();return r.length===0?!1:yn.test(r)||g(Number(r))}default:return!1}}var k,X,$,Xt,m,Qt,g,yn,yt,fe,er,T,_e,tr,Q,wt,U,_,j,N,S,A,Ne,Pe,Xe,De,R,P=E(()=>{"use strict";Z();J();k=(e,...t)=>t.includes(ue(e)),X=e=>e===null||typeof e!="object"&&typeof e!="function",$=e=>!X(e),Xt=e=>Symbol.iterator in Object(e)&&!m(e),m=e=>typeof e=="string",Qt=e=>typeof e=="string"&&e.trim().length>0,g=e=>Number.isFinite(e),yn=/^[+-]?[0-9]+n$/;yt=e=>typeof e=="bigint",fe=e=>Array.isArray(e),er=e=>ht(e)==="Object"&&"length"in e&&Object.keys(e).every(t=>t==="length"||g(Number(t))),T=e=>k(e,"Object"),_e=e=>k(e,"Date"),tr=e=>k(e,"RegExp"),Q=e=>typeof e=="symbol",wt=e=>typeof e=="symbol"&&Symbol.keyFor(e)!==void 0,U=e=>e!=="__proto__"&&e!=="constructor"&&e!=="prototype",_=e=>e==null||k(e,"Void","Empty"),j=e=>e===void 0||k(e,"Void","Empty"),N=e=>e!=null&&!_(e),S=e=>k(e,"Function","AsyncFunction","GeneratorFunction","AsyncGeneratorFunction"),A=e=>typeof e=="function",Ne=e=>k(e,"Map"),Pe=e=>k(e,"Set"),Xe=(e,t)=>k(e,"Error")&&(t?e instanceof t:!0),De=e=>typeof Intl<"u"&&typeof Intl.Locale=="function"&&e instanceof Intl.Locale,R=e=>_(e)||T(e)&&Reflect.ownKeys(e).length===0||m(e)&&e.trim().length===0||typeof e=="number"&&Number.isNaN(e)||fe(e)&&e.length===0||Pe(e)&&e.size===0||Ne(e)&&e.size===0||ArrayBuffer.isView(e)&&e.byteLength===0||_e(e)&&Number.isNaN(e.getTime())});function St(e,t,r=new WeakSet){let n=t instanceof WeakSet?t:t?.skip??wn;return X(e)||r.has(e)||n.has(e)||e instanceof Date||e instanceof RegExp||e instanceof Error||e instanceof Map||e instanceof Set||e instanceof Promise||e?.[Symbol.toStringTag]==="Enumify"||e[w.$Extensible]?e:(r.add(e),C(e).forEach(([o,s])=>{U(o)&&St(s,{skip:n},r)}),Object.freeze(e))}var x,ye,wn,Ie=E(()=>{"use strict";K();P();Z();x={Unknown:"unknown",Browser:"browser",WebWorker:"web-worker",NodeJS:"nodejs",Deno:"deno",GoogleAppsScript:"google-apps-script"},ye=()=>{let e=globalThis;try{if(N(e.SpreadsheetApp))return{global:e,type:x.GoogleAppsScript};if(N(e.window?.document))return{global:e,type:x.Browser};if(S(e.importScripts)||N(e.WorkerGlobalScope)&&e instanceof e.WorkerGlobalScope)return{global:e,type:x.WebWorker};if(N(e.Deno))return{global:e,type:x.Deno};if(N(e.process?.versions?.node)&&e.process?.release?.name==="node")return{global:e,type:x.NodeJS}}catch{}return{global:e,type:x.Unknown}},wn=new WeakSet});function rr(e){return Object.fromEntries(C(e,!0))}var nr=E(()=>{"use strict";K();J();P()});function ir(e,t={},r=!1){let{frozen:n,lock:o,appendOnly:s,onGet:i,keys:a,bind:c,skip:u}=t,f=new Set,d,h,b=he(e);o&&St(b,u?{skip:u}:void 0),He(b);let O={isExtensible:l=>Reflect.isExtensible(l),getPrototypeOf:l=>Reflect.getPrototypeOf(l),setPrototypeOf:(l,p)=>{if(n)throw new TypeError("Security: Prototype mutation attempt on protected object");return Reflect.setPrototypeOf(l,p)},getOwnPropertyDescriptor:(l,p)=>{if(!(a&&!a.includes(p))){if(a){if(i&&!Q(p)&&!f.has(p)){f.add(p);try{let y=i(p,l);if(N(y))return{enumerable:!0,configurable:!0,value:y}}finally{f.delete(p)}}return{enumerable:!0,configurable:!0}}return Reflect.getOwnPropertyDescriptor(l,p)}},ownKeys:l=>{if(a)return a;if(i&&!f.has(w.$Discover)){f.add(w.$Discover);try{i(w.$Discover,l)}finally{f.delete(w.$Discover)}}return Reflect.ownKeys(l)},has:(l,p)=>a?a.includes(p):Reflect.has(l,p),deleteProperty:(l,p)=>{if(n)throw new TypeError(`Cannot delete property '${String(p)}' from a protected object.`);if(s&&Reflect.has(l,p))throw new Error(`Security: Deletion attempt on protected key '${String(p)}'`);return Reflect.deleteProperty(l,p)},defineProperty:(l,p,y)=>{if(n&&!Object.isFrozen(l))throw new TypeError(`Cannot define property '${String(p)}' on a frozen object.`);if(s&&Reflect.has(l,p))throw new Error(`Security: Mutation attempt on protected key '${String(p)}'`);return Reflect.defineProperty(l,p,y)},set:(l,p,y,I)=>{if(n&&I===h)throw new TypeError(`Cannot set property '${String(p)}' on a frozen object.`);if(s){if(Array.isArray(l)&&p==="length"&&y<l.length)throw new Error("Security: Truncation attempt on protected array.");if(!(Array.isArray(l)&&p==="length")&&Reflect.has(l,p))throw new Error(`Security: Mutation attempt on protected key '${String(p)}'`)}return Reflect.set(l,p,y,I)},get:(l,p,y)=>{if(p===w.$Target)return y===h?l:void 0;if(n&&(p===w.$Inspect||p==="toJSON")){let v=Object.getOwnPropertyDescriptor(l,p);return v&&S(v.value)?v.value:(d||(d=()=>rr(l)),d)}if(a&&!a.includes(p))return;if(i&&!Q(p)&&!Reflect.has(l,p)&&!f.has(p)){f.add(p);try{let v=i(p,l);if(N(v))return v}finally{f.delete(p)}}let I=Reflect.get(l,p,y);if(c&&p!=="constructor"&&S(I)){let v=Object.getOwnPropertyDescriptor(l,p);if(v&&!v.configurable&&!v.writable)return I;let ce=or.get(I);ce||(ce=new WeakMap,or.set(I,ce));let le=ce.get(l);if(le)return le;let Kt=I.bind(l);return ce.set(l,Kt),Kt}return I}};if(r){let l=Proxy.revocable(b,O);return h=l.proxy,{proxy:l.proxy,revoke:l.revoke}}return h=new Proxy(b,O),h}function sr(e,t=!0,r=t,n=new WeakSet){return ir(e,{frozen:t,lock:r,skip:n,bind:t})}function ve(e,t=new WeakSet){return ir(e,{frozen:!0,lock:!0,skip:t,bind:!0})}var or,Qe=E(()=>{"use strict";Z();nr();Ie();K();P();J();or=new WeakMap});function Re(e,t=new WeakSet){return JSON.stringify(e,function(r,n){if(n===void 0)return"\0__undefined__\0";if(yt(n))return`\0__bigint:${n}__\0`;if(S(n))return`function:${n.name||"anonymous"}`;if($(n)){if(t.has(n))return"<Circular>";if(t.add(n),De(n))return n.toString();if(Ne(n))return`map:[${Array.from(n.entries()).map(o=>Re(o,t)).sort().join(",")}]`;if(Pe(n))return`set:[${Array.from(n).map(o=>Re(o,t)).sort().join(",")}]`}return n})}function cr(e){return function t(...r){return r.length>=e.length?e(...r):(...n)=>t(...r,...n)}}function M(e){let t=new Map;return function(...r){let n=Re(this!==void 0&&this!==globalThis?[this,...r]:r);if(!t.has(n)){let o=e.apply(this,r);t.set(n,o)}return t.get(n)}}function Ce(e,t){return{enumerable:!1,configurable:!1,writable:!1,value:function(...r){let n=`${String(e)},${Re(r)}`,o=ar.get(this);if(o||(o=new Map,ar.set(this,o)),!o.has(n)){let s=t.apply(this,r);ve(s),o.set(n,s)}return o.get(n)}}}var ar,et=E(()=>{"use strict";Qe();P();ar=new WeakMap});function lr(e){try{return JSON.parse(JSON.stringify(e))}catch(t){throw console.warn("Could not clean object:",t?.message??t),t}}var ur=E(()=>{"use strict";P()});function te(e){return N(e)?S(e)?e():e:t=>S(t)?t():t}var bn,ee,bt=E(()=>{"use strict";K();P();J();bn=e=>{let t=new Set,r=e,n=0;for(;r&&r!==Object.prototype&&n++<10;){let o=Object.getOwnPropertyDescriptors(r);for(let[s,i]of Object.entries(o))U(s)&&(i.enumerable||S(i.get))&&t.add(s);r=Object.getPrototypeOf(r)}return Array.from(t)},ee=e=>{if(X(e)||S(e))return e;if(fe(e))return e.map(r=>ee(r));if(_e(e)||tr(e)||Ne(e)||Pe(e))return e;try{if(S(e.toJSON))return ee(e.toJSON())}catch{}let t={};for(let r of bn(e))try{t[r]=ee(e[r])}catch{}return t};te.stringSymbol=te();te.symbolRegExp=te();te.symbolString=te();te.stringString=te()});function mr(e,t){try{return globalThis.structuredClone(e,t)}catch{return lr(e)}}function xn(e,t){return On(t)}function pr(e){let t=encodeURI(e);return t.includes("%")&&(t=t.replace(Tn,r=>gr[r.toUpperCase()]??decodeURI(r))),t}function On(e){if(m(e))try{return decodeURI(e)}catch{}return e}function Ae(e){return!k(e,"Function","AsyncFunction","WeakMap","WeakSet","WeakRef")}function En(e,t){return`{"$${e}":${t}}`}function _n(e){return z(Q(e)?`${wt(e)?"@":""}@(${e.description??""})`:e)}function xt(e){let[t,r,n]=e.toString().match(Nn)||[null,void 0,void 0];switch(!0){case Q(e):case _(t):case(N(r)&&j(n)):return e;case N(r):return Symbol.for(n);case j(r):default:return Symbol(n)}}function B(e,t){let r=pe;pe=t?.compact!==!1;try{let n=z(e,!1);if(t?.signed){if(!m(t.secret)||!t.secret)throw new TypeError("stringify: signed serialization requires an explicit secret string");return`$sig:${hr(n,t.secret)}:${n}`}return n}finally{pe=r}}function z(e,t=!0){let r=V(e),n=cr(En)(r.type);switch(r.type){case"String":{let o=r.value;return o.startsWith("~")&&(o=`~${o}`),t||(t=o==="true"||o==="false"||o==="null"||parseFloat(o).toString()===o||o.startsWith("~")),t?JSON.stringify(pr(o)):pr(o)}case"Boolean":case"Null":case"Number":return JSON.stringify(r.value);case"Void":case"Undefined":return pe?JSON.stringify("~u"):n(JSON.stringify("void"));case"BigInt":return pe?JSON.stringify(`~n${r.value.toString()}`):n(r.value.toString());case"Date":return pe?JSON.stringify(`~t${r.value.getTime()}`):n(z(r.value.toJSON()));case"Object":return`{${C(r.value).filter(([,s])=>Ae(s)).map(([s,i])=>`${_n(s)}: ${z(i)}`).join(",")}}`;case"Array":return`[${r.value.filter(s=>Ae(s)).map(s=>z(s)).join(",")}]`;case"Map":{let o=Array.from(r.value.entries()).filter(([,s])=>Ae(s)).map(([s,i])=>`[${z(s)}, ${z(i)}]`).join(",");return n(`[${o}]`)}case"Set":{let o=Array.from(r.value.values()).filter(s=>Ae(s)).map(s=>z(s)).join(",");return n(`[${o}]`)}case"Symbol":{let o=`${wt(r.value)?"@":""}@(${r.value.description??""})`;return pe?JSON.stringify(`~y${o}`):n(JSON.stringify(o))}case"RegExp":return n(z({source:r.value.source,flags:r.value.flags}));default:{let o=r.value;switch(!0){case!Ae(o):return;case S(o.toJSON):return n(z(o.toJSON()));case(S(o.toString)&&o.toString!==Object.prototype.toString):{let s=o.toString();return n(s.includes('"')?s:JSON.stringify(s))}case(S(o.valueOf)&&o.valueOf!==Object.prototype.valueOf):return n(JSON.stringify(o.valueOf()));default:{let s=ee(o);return $(s)&&Object.keys(s).length>0?z(s):n(JSON.stringify(o,(i,a)=>R(i)?a:z(a)))}}}}}function de(e,t){if(!m(e))return e;let r=S(t)?{sentinel:t}:t??{};if(e.startsWith("$sig:")){let o=e.indexOf(":",5);if(o!==-1){let s=e.substring(5,o),i=e.substring(o+1);if(!m(r.secret)||!r.secret){if(console.warn("objectify: signature verification requires an explicit secret string"),r.throwOnError)throw new TypeError("objectify: signature verification requires an explicit secret string");return e}let a=hr(i,r.secret);if(!Dn(s,a)){if(console.warn("objectify: signature verification failed"),r.throwOnError)throw new Error("objectify: signature verification failed");return e}e=i}else if(r.requireSigned){if(console.warn("objectify: malformed signed payload"),r.throwOnError)throw new Error("objectify: malformed signed payload");return e}}else if(r.requireSigned){if(console.warn("objectify: unsigned string rejected by requireSigned policy"),r.throwOnError)throw new Error("objectify: unsigned string rejected by requireSigned policy");return e}let n;try{n=JSON.parse(e,xn)}catch(o){return e.startsWith('"')&&e.endsWith('"')?(console.warn(`objectify.parse: -> ${e}, ${o.message}`),e):de(`"${e}"`,r.requireSigned?{...r,requireSigned:!1}:r)}switch(!0){case(e.startsWith("{")&&e.endsWith("}")):case(e.startsWith("[")&&e.endsWith("]")):return Tt(n,r,0);default:return $e(n,r)}}function Tt(e,t,r=0){let n=t.maxDepth??In;return r>=n?e:T(e)?$e(C(e).filter(([o])=>U(o)).reduce((o,[s,i])=>Object.assign(o,{[xt(s)]:$e(Tt(i,t,r+1),t)}),{}),t):fe(e)?Vt(e).map(o=>$e(Tt(o,t,r+1),t)):$e(e,t)}function $e(e,t){if(m(e)&&e.startsWith("~"))try{if(e.startsWith("~~"))return e.substring(1);if(e.startsWith("~n"))return BigInt(e.substring(2));if(e.startsWith("~t")){let s=e.substring(2),i=new Date(Ve(s)?Number(s):s);return isNaN(i.getTime())?e:i}if(e==="~u")return t.sentinel?.();if(e.startsWith("~y"))return xt(e.substring(2))}catch{return e}if(!T(e)||je(e).length!==1)return e;let[r,n]=C(e)[0];if(!String(r).startsWith("$"))return e;let o=r.substring(1);try{switch(o){case"String":case"Boolean":case"Object":case"Array":return n;case"Number":return Number(n);case"BigInt":return BigInt(n);case"Null":return null;case"Undefined":case"Empty":case"Void":return t.sentinel?.();case"Date":return new Date(n);case"RegExp":return t.allowRegExp===!1||!T(n)||!m(n.source)||n.source.length>vn?e:new RegExp(n.source,n.flags);case"Symbol":return xt(n);case"Map":return fe(n)?new Map(n):e;case"Set":return fe(n)?new Set(n):e;default:{if(t.allowClasses===!1||t.allowedClasses&&!(t.allowedClasses instanceof Set?t.allowedClasses.has(r)||t.allowedClasses.has(o):t.allowedClasses.includes(r)||t.allowedClasses.includes(o)))return e;let s=tt.get(r);return s?Reflect.construct(s,[n]):(console.warn(`objectify: dont know how to deserialize '${o}'`),e)}}}catch{return e}}var tt,fr,dr,gr,Tn,Nn,Pn,hr,Dn,pe,In,vn,we=E(()=>{"use strict";et();K();ur();bt();J();P();Z();tt=globalThis[w.$SerializerRegistry]??=new Map,fr=e=>{try{let t=e?.prototype?.[Symbol.toStringTag]??e?.[Symbol.toStringTag];return m(t)?t:void 0}catch{return}},dr=(e,t)=>{let r=e.startsWith("$")?e:`$${e}`;if(tt.has(r)){let n=tt.get(r),o=fr(n),s=fr(t),i=n.name||o,a=t.name||s||(e.startsWith("$")?e.slice(1):e);if(n===t||n.toString()===t.toString()||!!t[w.$Identity]&&n[w.$Identity]===t[w.$Identity]||!!t[w.$Target]&&n[w.$Target]===t[w.$Target]||!!i&&!!a&&i===a)return;throw new Error(`[registerSerializable] Collision: '${r}' is already registered with ${n.name||"anonymous constructor"}`)}tt.set(r,t)};gr={"%20":" ","%22":'"',"%3B":";","%3C":"<","%3E":">","%5B":"[","%5D":"]","%5E":"^","%7B":"{","%7C":"|","%7D":"}"},Tn=new RegExp(Object.keys(gr).join("|"),"gi");Nn=/^@(@)?\(([^\)]*)\)$/;Pn=globalThis.crypto?.randomUUID?globalThis.crypto.randomUUID().split("-")[0]:Math.random().toString(36).slice(2,10),hr=(e,t=Pn)=>{let r=2166136261,n=2654435769,o=`${t}:${e}`;for(let s=0;s<o.length;s++){let i=o.charCodeAt(s);r=Math.imul(r^i,16777619),n=Math.imul(n^i,2246822507)}return(r>>>0).toString(16).padStart(8,"0")+(n>>>0).toString(16).padStart(8,"0")},Dn=(e,t)=>{if(!m(e)||!m(t)||e.length!==t.length)return!1;let r=0;for(let n=0;n<e.length;n++)r|=e.charCodeAt(n)^t.charCodeAt(n);return r===0},pe=!0;In=64,vn=512});function re(e,t,r,n,o,s){function i(y){if(y!==void 0&&typeof y!="function")throw new TypeError("Function expected");return y}for(var a=n.kind,c=a==="getter"?"get":a==="setter"?"set":"value",u=!t&&e?n.static?e:e.prototype:null,f=t||(u?Object.getOwnPropertyDescriptor(u,n.name):{}),d,h=!1,b=r.length-1;b>=0;b--){var O={};for(var l in n)O[l]=l==="access"?{}:n[l];for(var l in n.access)O.access[l]=n.access[l];O.addInitializer=function(y){if(h)throw new TypeError("Cannot add initializers after decoration has completed");s.push(i(y||null))};var p=(0,r[b])(a==="accessor"?{get:f.get,set:f.set}:f[c],O);if(a==="accessor"){if(p===void 0)continue;if(p===null||typeof p!="object")throw new TypeError("Object expected");(d=i(p.get))&&(f.get=d),(d=i(p.set))&&(f.set=d),(d=i(p.init))&&o.unshift(d)}else(d=i(p))&&(a==="field"?o.unshift(d):f[c]=d)}u&&Object.defineProperty(u,n.name,f),h=!0}function ne(e,t,r){for(var n=arguments.length>2,o=0;o<t.length;o++)r=n?t[o].call(e,r):t[o].call(e);return n?r:void 0}var Me=E(()=>{"use strict"});function yr(e,t){return qe(e)??(j(t)?e.name||void 0:String(t))}function wr(e,{kind:t,name:r,addInitializer:n}){let o=yr(e,r);if(o&&He(e,o),t==="class")return o&&n(()=>dr(o,e)),e;throw new Error(`@Serializable decorating unknown 'kind': ${t} (${r})`)}function oe(e,t){let r=(n,o,s)=>{let i=n.prototype,a=o??yr(n,s);if(a&&(i&&!Object.hasOwn(i,Symbol.toStringTag)&&Object.defineProperty(i,Symbol.toStringTag,{value:a,configurable:!0,writable:!1,enumerable:!1}),!n.name||n.name!==a))try{Object.defineProperty(n,"name",{value:a,configurable:!0,writable:!1,enumerable:!1})}catch{}return n};return A(e)&&t?.kind==="class"?r(e,void 0,t.name):(n,o)=>r(n,m(e)?e:void 0,o?.name)}var Le=E(()=>{"use strict";Z();Qe();P();we();J()});var Ot,Sr=E(()=>{"use strict";Me();P();Le();Ot=(()=>{let e=[oe("BoundedCache")],t,r=[],n,o=Map;var s=class extends o{static{n=this}static{let i=typeof Symbol=="function"&&Symbol.metadata?Object.create(o[Symbol.metadata]??null):void 0;re(null,t={value:n},e,{kind:"class",name:n.name,metadata:i},null,r),s=n=t.value,i&&Object.defineProperty(n,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i}),ne(n,r)}#t=new Map;#e=new Set;#r=new Map;maxSize;ttl;constructor(i=1e3,a=1440*60*1e3){super(),this.maxSize=i,this.ttl=a}get isBoundedCache(){return!0}#n(i){let a=this.#t.get(i);return a===void 0?!1:Date.now()>a}evictExpired(){if(this.#t.size===0)return;let i=Date.now();for(let[a,c]of this.#t.entries())i>c&&this.delete(a)}setStatic(i,a){return super.has(i)&&super.delete(i),super.set(i,a),this.#e.add(i),this.#t.delete(i),this.#r.delete(i),this}isStatic(i){return this.#e.has(i)}get(i){if(this.#n(i)){this.delete(i);return}if(!super.has(i))return;let a=super.get(i);return super.delete(i),super.set(i,a),a}has(i){return this.#n(i)?(this.delete(i),!1):super.has(i)}get size(){return this.evictExpired(),super.size}forEach(i,a){this.evictExpired(),super.forEach(i,a)}set(i,a,c){this.evictExpired();let u=this.#t.get(i);for(super.has(i)&&super.delete(i),super.set(i,a),this.#e.delete(i),N(c)?c!==1/0?(this.#t.set(i,Date.now()+c),this.#r.set(i,c)):(this.#t.delete(i),this.#r.delete(i)):u!==void 0?this.#t.set(i,u):this.ttl!==1/0?(this.#t.set(i,Date.now()+this.ttl),this.#r.delete(i)):(this.#t.delete(i),this.#r.delete(i));this.size-this.#e.size>this.maxSize;){let f=!1,d=super.keys(),h=d.next();for(;!h.done;){let b=h.value;if(!this.#e.has(b)){this.delete(b),f=!0;break}h=d.next()}if(!f)break}return this}delete(i){return this.#e.delete(i),this.#t.delete(i),this.#r.delete(i),super.delete(i)}deletePrefix(i){let a=String(i).trim().toLowerCase();if(R(a))return 0;let c=[];for(let u of super.keys())m(u)&&u.toLowerCase().startsWith(a)&&c.push(u);for(let u of c)this.delete(u);return c.length}clear(i){if(i===void 0){this.#e.clear(),this.#t.clear(),this.#r.clear(),super.clear();return}let a=0;for(let c of super.keys()){if(a>=i)break;this.#e.has(c)||(this.delete(c),a++)}}keys(){return this.evictExpired(),super.keys()}values(){return this.evictExpired(),super.values()}entries(){return this.evictExpired(),super.entries()}[Symbol.iterator](){return this.evictExpired(),super[Symbol.iterator]()}toJSON(){this.evictExpired();let i=[];for(let[a,c]of super.entries())m(a)&&i.push([a,c]);return Object.fromEntries(i)}static fromEntries(i,a=1e3,c=1440*60*1e3){let u=new s(a,c);for(let[f,d]of i)u.set(f,d);return u}};return s=n})()});function Tr(e,t){let r;if(j(e))return t??{};switch(G.type){case x.Browser:r=Et.getItem(e);break;case x.NodeJS:r=Fe.has(e)?Fe.get(e):Rn(e);break;case x.Deno:r=G.global.Deno.env.get(e);break;case x.GoogleAppsScript:r=G.global.PropertiesService?.getUserProperties().getProperty(e);break;case x.WebWorker:case x.Unknown:r=void 0;break;default:throw new Error(`Cannot determine Javascript context: ${G.type}`)}return m(r)?de(r):t}function Pt(e,t,r){let n=N(t)?B(t):void 0,o=N(n);switch(G.type){case x.Browser:try{o?Et.setItem(e,n):Et.removeItem(e)}catch(s){console.warn(`[Storage] Failed to ${o?"setItem":"removeItem"} for key '${e}':`,s)}break;case x.NodeJS:o?r?.static?Fe.setStatic(e,n):Fe.set(e,n,r?.ttl):Fe.set(e,void 0,r?.ttl);break;case x.Deno:o?G.global.Deno.env.set(e,n):G.global.Deno.env.delete(e);break;case x.GoogleAppsScript:o?G.global.PropertiesService?.getUserProperties().setProperty(e,n):G.global.PropertiesService?.getUserProperties().deleteProperty(e);break;case x.WebWorker:case x.Unknown:break;default:throw new Error(`Cannot determine Javascript context: ${G.type}`)}}var G,xr,br,_t,Nt,Et,Fe,Rn,Dt=E(()=>{"use strict";we();Ie();P();Sr();G=ye(),xr=(e=1e3,t=1/0)=>{let r=new Ot(e,t);return{get length(){return r.size},clear:()=>r.clear(),getItem:n=>r.get(n)??null,key:n=>Array.from(r.keys())[n]??null,removeItem:n=>{r.delete(n)},setItem:(n,o)=>{r.set(n,String(o))}}},br=new Map,_t=e=>{let t=br.get(e);return t||(t=xr(),br.set(e,t)),t},Nt=(e="localStorage")=>{try{let t=globalThis?.[e];if(t&&A(t.getItem)&&A(t.setItem)&&A(t.removeItem)&&A(t.clear)&&A(t.key)&&g(t.length))return t}catch{}return _t(e)},Et=G.type===x.Browser?Nt():xr(),Fe=new Ot(1e3,1/0),Rn=e=>{try{let t=Reflect.get(G.global,"process");if(!t||typeof t!="object")return;let r=Reflect.get(t,"env");return!r||typeof r!="object"?void 0:Reflect.get(r,e)}catch{return}}});var Or=E(()=>{"use strict";we();P()});function Er(e=[],t){let r=n=>j(t)||N(n)?n:mr(t);return er(e)||Xt(e)&&!m(e)?Array.from(e,r):[e]}function _r(e){if(Xe(e))return e;let t=new Error(T(e)&&m(e.message)?e.message:String(e));return T(e)&&(t.name=m(e.name)?e.name:"Error","code"in e&&(m(e.code)||g(e.code))&&(t.code=e.code),"stack"in e&&m(e.stack)&&(t.stack=e.stack)),t}var Pi,Di,It=E(()=>{"use strict";we();J();P();Or();Pi=BigInt(Number.MAX_SAFE_INTEGER),Di=BigInt(Number.MIN_SAFE_INTEGER)});var Nr=E(()=>{"use strict";It();if(typeof globalThis.Temporal>"u")throw new Error("Temporal API is not available. Node 20+ with a polyfill (e.g. @js-temporal/polyfill) is highly recommended. Native Temporal is fully reliable only on Node 26+ (while Node 22 may have instabilities).");try{if(typeof Temporal.Now.zonedDateTimeISO=="function"&&typeof Temporal.Now.zonedDateTimeISO().add!="function")throw new Error("Incomplete Temporal implementation")}catch(e){let t=_r(e);if(console.warn("Tempo: Native Temporal implementation appears incomplete. Consider loading a polyfill.",t),t.message!=="Incomplete Temporal implementation")throw t}});function Pr(){return Temporal.Now.instant()}function Dr(e,t=2024){let r=Temporal.ZonedDateTime.from({year:t,month:1,day:1,hour:0,minute:0,second:0,timeZone:e}).offsetNanoseconds,n=Temporal.ZonedDateTime.from({year:t,month:7,day:1,hour:0,minute:0,second:0,timeZone:e}).offsetNanoseconds;return{jan:r,jul:n}}var vt=E(()=>{"use strict";Nr();P()});function ze(e,t,r){if(e){if(A(e[t]))return e[t]();if(r&&r in e)return e[r]}}function Bn(e){return e?Fn.has(e)?5:Ln.has(e)?6:Mn.has(e)?7:1:1}function Zn(e){return e?e==="IR"?Un:e==="AF"?Jn:zn.has(e)?kn:Ir:Ir}function Kn(e,t){let r=e?.script??(A(e?.maximize)?e.maximize().script:void 0);return r&&Wn.has(r)||t&&Gn.has(t)?"rtl":"ltr"}var Cn,An,Se,se,Gi,Wi,Ct,ki,$n,Ui,Mn,Ln,Fn,zn,Gn,Wn,Ir,kn,Un,Jn,Rt,Ji,Bi,jn,Yn,vr,Zi,rt,Ki,At=E(()=>{"use strict";vt();et();P();It();Cn=/_/g,An=/[.@]/,Se=e=>typeof Intl<"u"&&(!e||Object.hasOwn(Intl,e)&&A(Intl[e])),se=e=>{if(De(e)&&(e=e.toString()),!m(e))return;let t=e.trim();if(R(t))return;let r=t.split(An)[0];if(!R(r))return r.replace(Cn,"-")},Gi=M((e,t)=>new Intl.RelativeTimeFormat(se(e),t)),Wi=M((e,t)=>new Intl.ListFormat(se(e),t)),Ct=M((e,t)=>new Intl.DateTimeFormat(se(e),t)),ki=M((e,t)=>{try{return new Intl.PluralRules(se(e),t)}catch{return{select:()=>"other"}}}),$n=M((e,t)=>new Intl.NumberFormat(se(e),t)),Ui=M((e,t)=>{try{let r=new Intl.DurationFormat(se(e),t);if(S(r.format))return r;throw new Error("No format method")}catch{return{format:n=>String(n)}}});Mn=new Set(["US","CA","MX","BR","IL","JP","TW","HK","MO","PH","SG","TH","IN","KR","CO","PE","VE","ZA"]),Ln=new Set(["SA","AF","BH","DJ","DZ","EG","IQ","IR","JO","KW","LY","OM","QA","SD","SY","YE"]),Fn=new Set(["MV"]),zn=new Set(["SA","BH","DJ","DZ","EG","IQ","JO","KW","LY","OM","QA","SD","SY","YE"]),Gn=new Set(["ar","he","fa","ur","yi","ps","sd","ug","ckb"]),Wn=new Set(["Arab","Hebr","Thaa","Syrc","Mand","Samr","Nkoo"]),Ir=Object.freeze([6,7]),kn=Object.freeze([5,6]),Un=Object.freeze([5]),Jn=Object.freeze([4,5]);Rt=M(e=>{if(De(e))return e;if(Se("Locale"))try{let t=se(e);return new Intl.Locale(t||"en-US")}catch{return}}),Ji=M(e=>{let t=Rt(e)??Rt("en-US"),r=t?.baseName??vr(e)??"en-US",n=t?.language??r.split("-")[0]?.toLowerCase(),o=[];for(let le of r.split("-").slice(1)){if(le.length===1)break;o.push(le)}let s=t?.region??(A(t?.maximize)?t.maximize().region:void 0)??o.find(le=>/^[a-zA-Z]{2}$|^\d{3}$/.test(le))?.toUpperCase(),i=t?.script??(A(t?.maximize)?t.maximize().script:void 0),a=ze(t,"getWeekInfo","weekInfo"),c=a?.firstDay??Bn(s),u=Array.isArray(a?.weekend)?Object.freeze([...a.weekend]):Zn(s),d=ze(t,"getHourCycles","hourCycles")??t?.hourCycle??(Se("DateTimeFormat")?Ct(r,{hour:"numeric"}).resolvedOptions().hourCycle:void 0),h=Array.isArray(d)&&d.length>0?Object.freeze([...d]):m(d)?Object.freeze([d]):Object.freeze(["h23"]),b=ze(t,"getTextInfo","textInfo"),O=b?.direction==="rtl"||b?.direction==="ltr"?b.direction:Kn(t,n),p=ze(t,"getNumberingSystems","numberingSystems")??t?.numberingSystem??(Se("NumberFormat")?$n(r).resolvedOptions().numberingSystem:void 0),y=Array.isArray(p)&&p.length>0?Object.freeze([...p]):m(p)?Object.freeze([p]):Object.freeze(["latn"]),I=ze(t,"getTimeZones","timeZones"),v=Array.isArray(I)&&I.length>0?Object.freeze([...I]):Object.freeze([]),ce=Object.freeze({firstDay:c,weekend:u});return Object.freeze({locale:t,baseName:r,language:n,region:s,script:i,weekInfo:ce,firstDay:c,weekend:u,hourCycle:h[0],hourCycles:h,direction:O,numberingSystem:y[0],numberingSystems:y,timeZones:v})}),Bi=M((e="latn")=>{if(!(!e||e==="latn"||!Se("NumberFormat")))try{let t=new Intl.NumberFormat(`en-u-nu-${e}`,{useGrouping:!1}),r=Array.from({length:10},(n,o)=>t.format(o));return r[0]==="0"&&r[9]==="9"?void 0:Object.freeze(r)}catch{return}}),jn=Object.freeze({locale:"en-US",calendar:"iso8601",numberingSystem:"latn",timeZone:"UTC"}),Yn=M(()=>Se("DateTimeFormat")?Object.freeze(Ct().resolvedOptions()):jn),vr=M(e=>{let t=se(e);if(t){if(Se("getCanonicalLocales"))try{return Intl.getCanonicalLocales(t)[0]}catch{return}return Rt(t)?.baseName??t}}),Zi=M(e=>Object.freeze(Er(e).map(t=>vr(t)).filter(Boolean))),rt=M((e=Yn().timeZone)=>{try{let{jan:t,jul:r}=Dr(e),o=["Australia","Antarctica","Africa/Johannesburg","America/Argentina/Buenos_Aires","America/Sao_Paulo"].some(s=>e.startsWith(s));switch(!0){case r>t:return"north";case r<t:return"south";default:return o?"south":void 0}}catch{return}}),Ki=M(e=>{try{let t=new Date(2024,11,24),r=Ct(e).formatToParts(t);return r[0].type==="month"&&r[0].value==="12"}catch{return!1}})});function Y(e){return{enumerable:!1,configurable:!1,writable:!1,value:e}}function be(e,t=!0){let n=ue(this)!=="Module"&&S(this?.has)?this:Hn,o=V(e),s=Object.create(n);switch(o.type){case"Enumify":case"Object":Object.defineProperties(s,Object.getOwnPropertyDescriptors(o.value));break;case"Array":o.value.forEach((i,a)=>{if(g(i))throw new Error("Enumify: numeric keys are not supported");s[i]=a});break;default:throw new Error(`Enumify: invalid argument type: ${o.type}`)}return sr(s,!0,t)}var qn,Hn,ts,Rr=E(()=>{"use strict";Me();J();P();K();Qe();Le();et();qn="Enumify",Hn=ve(Object.create(null,{keys:Ce("keys",function(){return C(this,!0).map(([e])=>e)}),values:Ce("values",function(){return C(this,!0).map(([e,t])=>t)}),entries:Ce("entries",function(){return C(this,!0).map(([e,t])=>Object.freeze([e,t]))}),invert:Ce("invert",function(){return Object.fromEntries(this.entries().map(([e,t])=>[t,e]))}),has:Y(function(e){return this.keys().includes(e)}),count:Y(function(){return this.keys().length}),includes:Y(function(e){return this.values().includes(e)}),keyOf:Y(function(e){return this.invert()[e]}),extend:Y(function(e,t){return be.call(this,e,t)}),forEach:Y(function(e,t){this.entries().forEach((r,n)=>e.call(t,r,n,this))}),filter:Y(function(e,t){return be(this.entries().reduce((r,n,o)=>e.call(t,n,o,this)?Object.assign(r,{[n[0]]:n[1]}):r,{}))}),map:Y(function(e,t){return be(this.entries().reduce((r,n,o)=>Object.assign(r,{[n[0]]:e.call(t,n,o,this)}),{}))}),[Symbol.iterator]:Y(function*(){for(let e of this.entries())yield e}),[Symbol.toStringTag]:{enumerable:!1,configurable:!1,writable:!1,value:qn}}));ts=(()=>{let e=[wr,oe("Enumify")],t,r=[],n;var o=class{static{n=this}static{let s=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;re(null,t={value:n},e,{kind:"class",name:n.name,metadata:s},null,r),o=n=t.value,s&&Object.defineProperty(n,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:s}),ne(n,r)}constructor(s){return be(s)}};return o=n})()});function Vn(e,t=W.Info){return g(e)?e>=W.Off&&e<=W.Trace?e:t:m(e)?Cr[e.toLowerCase()]??t:t}var W,F,Cr,nt,$t=E(()=>{"use strict";Me();P();Rr();Z();Le();W=be(["Off","Error","Warn","Info","Debug","Trace"]),F={Off:"off",Log:"log",Info:"info",Warn:"warn",Debug:"debug",Trace:"trace",Error:"error"},Cr={[F.Off]:W.Off,[F.Error]:W.Error,[F.Warn]:W.Warn,[F.Info]:W.Info,[F.Log]:W.Info,[F.Debug]:W.Debug,[F.Trace]:W.Trace};nt=(()=>{let e=[oe("Logger")],t,r=[],n;var o=class{static{n=this}static{let s=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;re(null,t={value:n},e,{kind:"class",name:n.name,metadata:s},null,r),o=n=t.value,s&&Object.defineProperty(n,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:s}),ne(n,r)}#t;level;constructor(s,i=W.Info){this.#t=s.startsWith("[")?s:`[${s}]`,this.level=i}#e(s,...i){let a;if(i.length>0&&T(i[0]))try{i[0][w.$LogConfig]&&(a=i.shift())}catch{}let c=this.level;if(a){if(a.silent===!0)return;a.debug!==void 0&&(c=Vn(a.debug,c))}if(c===W.Off||(Cr[s]??0)>c)return;let f=i.map(d=>{if(Xe(d))return d.message;if(T(d))try{let h=d.constructor?.name??"Object";if(h==="Object"){let b=Object.keys(d);return`{ ${b.slice(0,3).join(", ")}${b.length>3?`, ... (+${b.length-3} more)`:""} }`}return`[${h}]`}catch{return"[Object]"}return String(d)}).filter(d=>!R(d)).join(" ");R(f)||console[s](`${this.#t} ${f}`)}log=(...s)=>this.#e(F.Log,...s);info=(...s)=>this.#e(F.Info,...s);warn=(...s)=>this.#e(F.Warn,...s);debug=(...s)=>this.#e(F.Debug,...s);trace=(...s)=>this.#e(F.Trace,...s);error=(...s)=>this.#e(F.Error,...s)};return o=n})()});var Ar={};ge(Ar,{WebStore:()=>Xn});var Ge,Xn,$r=E(()=>{"use strict";Me();K();we();J();P();Dt();Le();Ge={Local:"local",Session:"session"},Xn=(()=>{let e=[oe("WebStore")],t,r=[],n;var o=class{static{n=this}static{let s=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;re(null,t={value:n},e,{kind:"class",name:n.name,metadata:s},null,r),o=n=t.value,s&&Object.defineProperty(n,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:s}),ne(n,r)}static _localInstance;static _sessionInstance;static get local(){return o._localInstance??=new o(Ge.Local)}static get session(){return o._sessionInstance??=new o(Ge.Session)}#t;#e;get#r(){if(this.#e)return this.#e;let s=this.#t===Ge.Local?"localStorage":"sessionStorage";return this.#e=Nt(s)}#n(s){try{return s(this.#r)}catch{let a=this.#t===Ge.Local?"localStorage":"sessionStorage",c=_t(a);return this.#e=c,s(c)}}constructor(s=Ge.Local){this.#t=s}get(s,i){let a=this.#n(c=>c.getItem(B(s)));return m(a)?de(a):i??null}set(s,i,a={merge:!0}){if(_(s))return this.clear();let c=this.get(s),u=V(i);switch(u.type){case"Undefined":return this.del(s);case"Object":return c??={},this.#o(s,a.merge?Object.assign(c,u.value):u.value);case"Array":return c??=[],this.#o(s,a.merge?Ye(c.concat(u.value)):i);case"Map":return c??=new Map,a.merge?(u.value.forEach((f,d)=>c.set(d,f)),this.#o(s,c)):this.#o(s,u.value);case"Set":return c??=new Set,a.merge?(u.value.forEach(f=>c.add(f)),this.#o(s,c)):this.#o(s,u.value);default:return this.#o(s,u.value)}}clear(){try{this.#n(s=>s.clear())}catch(s){console.warn("[WebStore] Failed to clear storage:",s)}return this}del(...s){return s.forEach(i=>{try{this.#n(a=>a.removeItem(B(i)))}catch(a){console.warn(`[WebStore] Failed to removeItem for key '${String(i)}':`,a)}}),this}keys(...s){return this.entries(...s).map(([i])=>i)}values(...s){return this.entries(...s).map(([,i])=>i)}entries(...s){let i=new Set(s.map(c=>B(c))),a=[];return this.#n(c=>{for(let u=0;u<c.length;u++){let f=c.key(u);if(f!==null&&(R(s)||i.has(f))){let d=c.getItem(f);a.push([de(f),de(d)])}}}),a}from(s){return C(s).forEach(([i,a])=>this.set(i,a)),this}#o(s,i){try{this.#n(a=>a.setItem(B(s),B(i)))}catch(a){console.warn(`[WebStore] Failed to setItem for key '${String(s)}':`,a)}return this}};return o=n})()});var Fr={};ge(Fr,{geoCoords:()=>Lr,geoLocation:()=>We,mapAddress:()=>eo,mapHemisphere:()=>Qn,mapQuery:()=>Ft});var it,Mr,D,Lt,q,Mt,ot,We,Lr,Ft,Qn,eo,zt=E(()=>{"use strict";bt();Ie();P();vt();At();$t();it={catch:!0,debug:0},Mr=ye(),D={},Lt="_magma_browser_map_",q=new nt("[Mapper]"),Mt=null,ot=()=>(Mt||(Mt=new Promise((e,t)=>{Mr.type===x.Browser?Promise.resolve().then(()=>($r(),Ar)).then(({WebStore:r})=>{let n=new r("local"),o=n.get(Lt,{});$(o)&&(o.geolocation&&(!o.geolocation.coords||o.geolocation.$GeolocationPosition)&&delete o.geolocation,Object.assign(D,o)),e(n)}).catch(t):e(void 0)})),Mt),We=(e={})=>ot().then(()=>new Promise((t,r)=>{e=Object.assign({},it,e);let n=e.catch?t:r;typeof navigator<"u"&&"geolocation"in navigator?navigator.geolocation.getCurrentPosition(o=>{let s=D.geolocation?.coords,i=s?.latitude?.toFixed(3),a=s?.longitude?.toFixed(3),c=D.geolocation?.timestamp??0,u=o.coords.latitude.toFixed(3)!==i,f=o.coords.longitude.toFixed(3)!==a,d=c<Pr().epochMilliseconds-36e5;(u||f||d)&&(Object.assign(D,{georesponse:null}),q.info(e,"GeoLocation: device update")),Object.assign(D,{geolocation:ee(o)}),t(D.geolocation)},o=>{Object.assign(D,{geolocation:{error:o.message},georesponse:null}),n(D.geolocation)}):(Object.assign(D,{geolocation:{error:"Not Supported"},georesponse:null}),n(D.geolocation))})).finally(()=>{(D.geolocation?.error?q.error:q.info)(e,"geoLocation: ",D.geolocation),ot().then(r=>r?.set(Lt,D))}),Lr=e=>new Promise((t,r)=>{if(!_(e))return t(e);We().then(n=>_(n.error)?{location:{lat:n.coords.latitude,lng:n.coords.longitude}}:null).then(n=>t(n)).catch(n=>r(n))}),Ft=(e,t={})=>ot().then(()=>new Promise((r,n)=>{t=Object.assign({},it,t);let o=t.catch?r:n;Lr(e).then(s=>{switch(!0){case(Mr.type!==x.Browser||!window.google?.maps):throw new Error("Google Maps API not configured");case _(s):throw new Error("Cannot determine Coordinates");case _(e):{let i=D.geolocation&&D.georesponse,a=_(D.geolocation?.error)&&_(D.georesponse?.error);if(i&&a)return t.debug&&q.debug(t,"mapQuery: cache"),r(D.georesponse)}default:new window.google.maps.Geocoder().geocode(s).then(i=>r(D.georesponse=ee(i)))}}).catch(s=>{Object.assign(D,{georesponse:{error:s.message}}),o(D.georesponse)})})).finally(()=>{t.debug&&(D.georesponse?.error?q.error:q.debug)(t,"mapQuery: ",D.georesponse),ot().then(r=>r?.set(Lt,D))}),Qn=(e,t={})=>Ft(e,t).then(r=>{if(t=Object.assign({},it,t),_(r.error))return t.debug&&q.debug(t,"sphere: ",r),r.results[0].geometry.location.lat()>=0?"north":"south";let n=rt();if(_(n)&&t.catch===!1)throw new Error("Cannot determine Hemisphere");return n}).catch(r=>{if(t.debug&&q.warn(t,"mapHemisphere: ",r.message),t.catch===!1)throw r;return null}),eo=(e,t={})=>Ft(e,t).then(r=>{if(!_(r.error))throw new Error(r.error);return r.results[0]}).then(({formatted_address:r,address_components:n})=>n.reduce((o,s)=>(s.types.filter(i=>i!=="political").forEach(i=>o[i]=(o[i]?o[i]+",":"").concat(s.short_name)),o),{formatted_address:r})).catch(r=>{if(t=Object.assign({},it,t),t.debug&&q.warn(t,"mapAddress: ",r.message),t.catch===!1)throw r;return null})});var Ur={};ge(Ur,{HTTP:()=>Wr,HttpError:()=>H,METHOD:()=>kr,fetchHead:()=>ro,fetchRequest:()=>to});var Gt,zr,Wr,kr,H,Gr,to,ro,Jr=E(()=>{"use strict";P();Gt=2e3,zr=/\);?$/,Wr={Ok:200,PermRedirect:301,TempRedirect:302,BadRequest:400,Unauthorised:401,Forbidden:403},kr={Head:"HEAD",Get:"GET",Put:"PUT",Delete:"DELETE",Post:"POST"},H=class extends Error{status;statusText;body;constructor(t,r,n){super(`${t}: ${r}`),this.status=t,this.statusText=r,this.body=n,this.name="HttpError"}},Gr=async(e,t)=>{let r=e.headers?.get?.("Content-Length")||e.headers?.get?.("content-length");if(r){let a=parseInt(r,10);if(g(a)&&a>t){try{await e.body?.cancel()}catch{}throw new H(413,`Content-Length (${a}) exceeds limit (${t} bytes)`,null)}}if(!e.body){let a;if(S(e.text))a=await e.text();else if(S(e.json)){let u=await e.json();a=JSON.stringify(u)??""}else a="";let c=new TextEncoder().encode(a).byteLength;if(c>t)throw new H(413,`Payload length (${c}) exceeds limit (${t} bytes)`,null);return a}let n=e.body.getReader(),o=new TextDecoder,s=0,i="";try{for(;;){let{done:a,value:c}=await n.read();if(a)break;if(c){if(s+=c.byteLength,s>t){try{await n.cancel()}catch{}throw new H(413,`Streamed payload exceeded limit (${t} bytes)`,null)}i+=o.decode(c,{stream:!0})}}return i+=o.decode(),i}finally{try{n.releaseLock()}catch{}}},to=(e,t={},r={})=>{let n={...t,signal:t.signal?AbortSignal.any([t.signal,AbortSignal.timeout(r.timeout??Gt)]):AbortSignal.timeout(r.timeout??Gt)};return fetch(e,n).then(async o=>{if(o.ok){let a=(o.headers?.get?.("Content-Type")||o.headers?.get?.("content-type")||"").includes("application/json");if(N(r.maxBytes)){let c=await Gr(o,r.maxBytes);if(r.rawText)return c;if(r.prefix){let u=c.startsWith(r.prefix)?c.substring(r.prefix.length).replace(zr,""):c;return JSON.parse(u)}if(a)return JSON.parse(c);try{return JSON.parse(c)}catch{return c}}if(r.rawText)return S(o.text)?await o.text():"";if(r.prefix){let c=await o.text(),u=c.startsWith(r.prefix)?c.substring(r.prefix.length).replace(zr,""):c;return JSON.parse(u)}if(S(o.text)){let c=await o.text();try{return JSON.parse(c)}catch{return c}}return S(o.json)?await o.json():""}let s=null;try{let i=N(r.maxBytes)?await Gr(o,r.maxBytes):S(o.text)?await o.text():"";try{s=JSON.parse(i)}catch{s=i}}catch(i){if(i instanceof H&&i.status===413)throw i}throw new H(o.status,o.statusText,s)})},ro=e=>{let t=AbortSignal.timeout(Gt),r={method:kr.Head,signal:t};return fetch(e,r).then(({ok:n,status:o,statusText:s,headers:i})=>{if(n||o===Wr.Forbidden)return{status:o,headers:i};throw new H(o,s,null)})}});var Zr={};ge(Zr,{serverGeoCoords:()=>st,serverGeoLocation:()=>ke,serverMapHemisphere:()=>Jt});var Br,Ut,Wt,kt,no,ke,st,Jt,Bt=E(()=>{"use strict";P();At();$t();Br=new nt("[ServerMapper]"),Ut="https://ipwho.is",Wt={endpoint:`${Ut}/`,timeout:3e3,catch:!0,debug:0},kt=null,no=()=>(kt||(kt=Promise.resolve().then(()=>(Jr(),Ur))),kt),ke=async(e={})=>{let t={...Wt,...e},r=t.catch!==!1;try{let n=t.endpoint||Wt.endpoint;if(m(t.ip)){let d=encodeURIComponent(t.ip.trim());if((n.endsWith("/")?n.slice(0,-1):n)===Ut)n=`${Ut}/${d}`;else if(n.includes("{ip}"))n=n.replace("{ip}",d);else if(d!=="")throw new Error(`Custom endpoint must include an '{ip}' placeholder to resolve a specific IP: ${n}`)}let o=t.timeout??Wt.timeout,{fetchRequest:s}=await no(),i=await s(n,{},{...g(o)?{timeout:o}:{},maxBytes:64*1024});if(typeof i!="object"||_(i))throw new Error("Geolocation lookup failed");if(i.status==="fail"||i.success===!1)throw new Error(i.message||i.reason||"Geolocation lookup failed");let a=g(i.lat)?i.lat:i.latitude,c=g(i.lon)?i.lon:i.lng??i.longitude;if(!g(a)||!g(c))throw new Error("Geolocation lookup failed");let u=m(i.timezone)?i.timezone:i.timezone?.id??i.timeZone,f={lat:a,lng:c,latitude:a,longitude:c,...m(i.country||i.countryName||i.country_name)?{country:i.country||i.countryName||i.country_name}:{},...m(i.city||i.cityName||i.city_name)?{city:i.city||i.cityName||i.city_name}:{},...m(u)?{timezone:u}:{},...m(i.query||i.ip||i.ip_address)?{query:i.query||i.ip||i.ip_address}:{},status:"success"};return t.debug&&Br.info(t,"serverGeoLocation success: ",f),f}catch(n){let o=n?.message||"Server geolocation error";if(t.debug&&Br.error(t,"serverGeoLocation error: ",o),!r)throw n;return{error:o,status:"fail"}}},st=async(e,t)=>{if(!_(e)){let n=e.latitude??e.lat,o=e.longitude??e.lng??e.lon??e.long;if(g(n)&&g(o))return{lat:n,lng:o}}let r=await ke(t);return _(r.error)&&g(r.lat)&&g(r.lng)?{lat:r.lat,lng:r.lng}:null},Jt=async(e,t)=>{let r=await st(e,t);return r?r.lat>=0?"north":"south":rt()??null}});var io={};ge(io,{GEO_PROPERTIES:()=>Ue,GeoPlugin:()=>Oe,clearStashedGeo:()=>lt,coerceGeo:()=>ae,default:()=>Hr,geoLocation:()=>We,geoLookup:()=>ut,geoPlugin:()=>qr,getStashedGeo:()=>Te,haversineDistance:()=>ft,resolveGeoCoordinates:()=>Je,serverGeoCoords:()=>st,serverGeoLocation:()=>ke,serverMapHemisphere:()=>Jt,solarOffset:()=>pt,stashGeo:()=>ct});var L={};ge(L,{definePlugin:()=>mt,defineTerm:()=>on});Ee(L,jt(dt()));var Ke=jt(dt()),mt=e=>(0,Ke.definePlugin)({...e,version:"1.2.0"}),on=e=>(0,Ke.defineTerm)({...e,version:"1.2.0"});Ie();P();Dt();P();function ie(...e){for(let t of e){let r=S(t)?t():t;if(r!==void 0)return r}}var at="_magma_geo_",Kr=1440*60*1e3,Ue=["latitude","lat","longitude","lng","lon","long","elevation","sphere","country","city","timezone","tz"],jr=e=>g(e)&&e>=-90&&e<=90?Math.round(e*1e3)/1e3:void 0,Yr=e=>g(e)&&e>=-180&&e<=180?Math.round(e*1e3)/1e3:void 0,xe=(e,t)=>{let r=jr(e),n=Yr(t);return r!==void 0&&n!==void 0?{lat:r,lng:n}:void 0},me=(e,t)=>{if(e==="north"||e==="south"||e==="equator")return e;if(g(t))return t>.001?"north":t<-.001?"south":"equator"},ae=e=>{if(m(e)&&e.includes(",")){let p=e.split(",").map(y=>y.trim()).map(y=>y===""?NaN:Number(y));if(p.length>=2&&!isNaN(p[0])&&!isNaN(p[1])){let y=xe(p[0],p[1]);if(y){let I={latitude:y.lat,longitude:y.lng},v=me(void 0,y.lat);return v&&(I.sphere=v),I}}return}if(X(e))return;if(Array.isArray(e)&&e.length>=2){let l=xe(e[0],e[1]);if(l){let p={latitude:l.lat,longitude:l.lng},y=me(void 0,l.lat);return y&&(p.sphere=y),p}return}let t=e.geo??e,r=e.config?.geo??e.config,n=ie(t?.latitude,t?.lat,e.latitude,e.lat,r?.latitude,r?.lat),o=ie(t?.longitude,t?.lng,t?.lon,t?.long,e.longitude,e.lng,e.lon,e.long,r?.longitude,r?.lng,r?.lon,r?.long),s=ie(t?.elevation,e.elevation,r?.elevation),i=ie(t?.sphere,e.sphere,r?.sphere),a=ie(t?.country,e.country,r?.country),c=ie(t?.city,e.city,r?.city),u=ie(t?.timezone,t?.tz,e.timezone,e.tz,r?.timezone,r?.tz),f={},d=jr(n),h=Yr(o);d!==void 0&&(f.latitude=d),h!==void 0&&(f.longitude=h),g(s)&&(f.elevation=Math.round(s*1e3)/1e3);let b=me(i,f.latitude);b&&(f.sphere=b),m(a)&&(f.country=a),m(c)&&(f.city=c),m(u)&&(f.timezone=u);let O=$(e.geo)?e.geo:$(e.config?.geo)?e.config.geo:void 0;if($(O))for(let l of Object.keys(O))U(l)&&!Ue.includes(l)&&(f[l]=O[l]);return Object.keys(f).length>0?f:void 0},Zt=e=>{if(m(e)&&!R(e)){let t=e.trim();return t.startsWith(at)?t:`${at}:${t}`}if(e&&T(e)){let t=e.key??e.ip??e.query;if(m(t)&&!R(t))return`${at}:${t.trim()}`}return at},Te=e=>{let t=Zt(e);try{let r=Tr(t)??(typeof localStorage<"u"?localStorage.getItem(t):void 0);if(!r)return;let n=m(r)&&(r.startsWith("{")||r.startsWith("["))?JSON.parse(r):r;if(T(n)&&g(n._expires)&&Date.now()>n._expires){lt(e);return}if(m(n)&&n.includes(",")){let o=n.split(",").map(i=>parseFloat(i.trim())),s=xe(o[0],o[1]);if(s)return{latitude:s.lat,longitude:s.lng,sphere:me(void 0,s.lat)}}if(T(n)){let o=n.geolocation?.coords??n.coords??n,s=o?.latitude??o?.lat,i=o?.longitude??o?.lng??o?.lon??o?.long,a=xe(s,i);if(a){let c={latitude:a.lat,longitude:a.lng},u=n.elevation??o.elevation;return g(u)&&(c.elevation=Math.round(u*1e3)/1e3),c.sphere=me(n.sphere,a.lat),m(n.country)&&(c.country=n.country),m(n.city)&&(c.city=n.city),m(n.timezone)&&(c.timezone=n.timezone),c}}}catch{}},ct=(e,t=Kr,r)=>{let n=Zt(r),o=g(t)&&t>0?{...e,_expires:Date.now()+t}:e;Pt(n,o,{ttl:t})},lt=e=>{let t=Zt(e);Pt(t,void 0)},ut=async(e={})=>{if(e.refresh!==!0){let a=Te(e);if(a&&g(a.latitude)&&g(a.longitude)){let{latitude:c,longitude:u,...f}=a;return{...f,status:"cached",lat:c,lng:u,latitude:c,longitude:u}}}let{type:r}=ye(),n;switch(r){case x.Browser:{let{geoLocation:a}=await Promise.resolve().then(()=>(zt(),Fr)),c=await a(e);if(c.error)return{error:c.error};let u=c.coords?.latitude,f=c.coords?.longitude;n={...c,lat:u,lng:f,latitude:u,longitude:f};break}case x.WebWorker:case x.NodeJS:case x.Deno:default:{let{serverGeoLocation:a}=await Promise.resolve().then(()=>(Bt(),Zr));n=await a(e);break}}let o=n.latitude??n.lat,s=n.longitude??n.lng,i=xe(o,s);if(_(n.error)&&i){let a=me(n.sphere,i.lat);n.lat=i.lat,n.lng=i.lng,n.latitude=i.lat,n.longitude=i.lng,n.sphere=a;let c={latitude:i.lat,longitude:i.lng,sphere:a,...m(n.city)?{city:n.city}:{},...m(n.country)?{country:n.country}:{},...g(n.elevation)?{elevation:Math.round(n.elevation*1e3)/1e3}:{},...m(n.timezone)?{timezone:n.timezone}:{}};try{let u=g(e.ttl)?e.ttl:Kr;ct(c,u,e)}catch{}}return n},Je=async(e,t={})=>{let r=ae(e);if(r&&g(r.latitude)&&g(r.longitude))return{...r,lat:r.latitude,lng:r.longitude};let n=t.refresh===!0?void 0:Te(t);if(n&&g(n.latitude)&&g(n.longitude))return{...n,lat:n.latitude,lng:n.longitude};let o=await ut(t),s=xe(o.lat,o.lng);if(_(o.error)&&s){let i=me(o.sphere,s.lat);return{...o,lat:s.lat,lng:s.lng,latitude:s.lat,longitude:s.lng,sphere:i}}return null};function ft(e,t,r="km"){let n=ae(e),o=ae(t);if(!n||!o||!g(n.latitude)||!g(n.longitude)||!g(o.latitude)||!g(o.longitude))return NaN;let s=Math.PI/180,i=n.latitude*s,a=n.longitude*s,c=o.latitude*s,u=o.longitude*s,f=c-i,d=u-a,h=Math.sin(f/2)**2+Math.cos(i)*Math.cos(c)*Math.sin(d/2)**2,b=2*Math.atan2(Math.sqrt(h),Math.sqrt(1-h)),O;r==="miles"?O=3958.7613:r==="m"?O=63710088e-1:O=6371.0088;let l=O*b;return r==="m"?Math.round(l):Math.round(l*1e3)/1e3}var oo=(e,t)=>{try{if(typeof Temporal<"u"&&typeof Temporal.Instant?.fromEpochMilliseconds=="function")return Temporal.Instant.fromEpochMilliseconds(t).toZonedDateTimeISO(e).offsetNanoseconds/6e10;let n=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset",year:"numeric"}).formatToParts(new Date(t)).find(o=>o.type==="timeZoneName")?.value;if(n){if(n==="GMT"||n==="UTC")return 0;let o=n.match(/GMT([+-])(\d{2}):(\d{2})/);if(o)return(o[1]==="-"?-1:1)*(parseInt(o[2],10)*60+parseInt(o[3],10))}}catch{}};function pt(e,t){let r=ae(e);if(!r||!g(r.latitude)||!g(r.longitude)||isNaN(r.latitude)||isNaN(r.longitude))return NaN;let n=r.longitude,o=t?.timeZone??($(e)?e.timezone??e.tz:void 0)??r.timezone,s=t?.date??($(e)&&g(e.epoch?.ms)?e.epoch.ms:Date.now()),i=typeof s=="number"?s:m(s)?Date.parse(s):_e(s)?s.getTime():$(s)&&g(s?.epoch?.ms)?s.epoch.ms:Date.now();if(!Number.isFinite(i))return NaN;let a=Qt(o)?oo(o,i):void 0,c=a!==void 0?a/60*15:Math.round(n/15)*15,f=(n-c)*4;if(t?.apparent){let l=new Date(i),p=Date.UTC(l.getUTCFullYear(),0,1),y=Math.floor((i-p)/864e5)+1,I=2*Math.PI/365*(y-1),v=229.18*(75e-6+.001868*Math.cos(I)-.032077*Math.sin(I)-.014615*Math.cos(2*I)-.040849*Math.sin(2*I));f+=v}let d=t?.unit??"minutes",h;d==="seconds"?h=f*60:d==="hours"?h=f/60:h=f;let b=t?.precision??2,O=Math.pow(10,b);return Math.round(h*O)/O}Bt();zt();P();var Oe=mt({name:"geo",install(e,t){let r=e||this,n=(o,s)=>{let i=r.config?.pluginOptions?.geo,a=s?.config?.pluginOptions?.geo;return{...T(t)?t:{},...T(i)?i:{},...T(a)?a:{},...T(o)?o:{}}};Object.hasOwn(r,"geo")||Object.defineProperty(r,"geo",{value:(0,L.deepFreeze)({lookup:s=>ut(n(s)),resolve:(s,i)=>Je(s,n(i,s)),coerce:ae,distance:ft,solarOffset:pt,stash:ct,clear:lt,get:Te,server:ke,browser:We,get current(){return Te()??r.config?.geo}}),writable:!1,configurable:!1,enumerable:!1}),e.prototype.geoLocate=async function(o){let s=n(o,this),i=s?.setTimezone!==!1,a=await Je(this,s);if(a){let c=T(this.config.geo)?this.config.geo:{},u={};for(let l of Object.keys(c))U(l)&&!Ue.includes(l)&&(u[l]=c[l]);let f=ae(o)??{};if(T(o))for(let l of Object.keys(o))U(l)&&!["setTimezone","refresh","ttl","endpoint","timeout","catch","debug","geo"].includes(l)&&(Ue.includes(l)||(u[l]=o[l]));let d=g(a?.elevation)?a.elevation:g(c.elevation)?c.elevation:void 0,h={...u,...a,...g(d)?{elevation:d}:{},...f};g(h.latitude)&&(h.latitude=Math.round(h.latitude*1e3)/1e3),g(h.longitude)&&(h.longitude=Math.round(h.longitude*1e3)/1e3),!h.sphere&&g(h.latitude)&&(h.sphere=h.latitude>.001?"north":h.latitude<-.001?"south":"equator");let b=this,O=h.timezone;return i&&m(O)&&!R(O)&&(b=this.set({timeZone:O})),new e(b,{...b.config,geo:(0,L.deepFreeze)(h),...h.sphere?{sphere:h.sphere}:{}})}return this},e.prototype.geoLookup=async function(o){return Je(this,n(o,this))},e.prototype.geoDistance=function(o,s){return ft(this,o,s)},e.prototype.geoSolarOffset=function(o){return pt(this,o)}}}),qr=Oe,Hr=Oe;(0,L.autoInstall)(Oe);return nn(io);})();
|
|
1
|
+
"use strict";var Magma;((Magma||={}).plugins||={}).geo=(()=>{var gn=Object.create;var Ye=Object.defineProperty;var yn=Object.getOwnPropertyDescriptor;var hn=Object.getOwnPropertyNames;var wn=Object.getPrototypeOf,bn=Object.prototype.hasOwnProperty;var v=(e,t,r)=>()=>{if(r)throw r[0];try{return e&&(t=e(e=0)),t}catch(n){throw r=[n],n}};var cr=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(r){throw t=0,r}},he=(e,t)=>{for(var r in t)Ye(e,r,{get:t[r],enumerable:!0})},He=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of hn(t))!bn.call(e,o)&&o!==r&&Ye(e,o,{get:()=>t[o],enumerable:!(n=yn(t,o))||n.enumerable});return e},Pe=(e,t,r)=>(He(e,t,"default"),r&&He(r,t,"default")),ht=(e,t,r)=>(r=e!=null?gn(wn(e)):{},He(t||!e||!e.__esModule?Ye(r,"default",{value:e,enumerable:!0}):r,e)),Sn=e=>He(Ye({},"__esModule",{value:!0}),e);var wt=cr((Io,lr)=>{"use strict";lr.exports=window.Magma.pluginSdk});var Tn,En,On,_n,vn,Pn,Nn,In,ur,Rn,fr,b,H=v(()=>{"use strict";Tn=Symbol.for("$LibraryTarget"),En=Symbol.for("$LibraryDiscover"),On=Symbol.for("$LibraryExtensible"),_n=Symbol.for("nodejs.util.inspect.custom"),vn=Symbol.for("$LibraryLogConfig"),Pn=Symbol.for("$LibraryRegistry"),Nn=Symbol.for("$LibraryRegister"),In=Symbol.for("$LibrarySerializerRegistry"),ur=Symbol.for("$LibraryMutable"),Rn=Symbol.for("$LibraryIdentity"),fr=Symbol.for("$LibraryUnwrapped"),b={$Target:Tn,$Discover:En,$Extensible:On,$Inspect:_n,$LogConfig:vn,$Registry:Pn,$Register:Nn,$SerializerRegistry:In,$Identity:Rn,$Mutable:ur,$Unwrapped:fr}});function we(e){let t=e,r=0,n=50;for(;t;){let o=t[b.$Target];if(!o||r>=n)break;t=o,r++}return t}function C(e,t=!1){if(!e||typeof e!="object")return[];let r=we(e);if(!t){let l=Reflect.ownKeys(r),m=[];for(let f of l){let h=Object.getOwnPropertyDescriptor(r,f);h&&h.enumerable&&m.push([f,r[f]])}return m}let n=[],o=50,s=0,i=r;for(;i&&i!==Object.prototype&&s++<o;)n.push(we(i)),i=Object.getPrototypeOf(i);let a=[],c=new Set;for(let l of n.reverse()){let m=Reflect.ownKeys(l);for(let f of m){if(c.has(f))continue;let h=Object.getOwnPropertyDescriptor(l,f);!h||!h.enumerable||(c.add(f),a.push([f,r[f]]))}}return a}function Ve(e,t=!1){return C(e,t).map(([r])=>r)}function pr(e,t=!1){return C(e,t).map(([r,n])=>n)}function Xe(e,t,r){return t?Xe(e.map(t,r)):Array.from(new Set(e))}var Y=v(()=>{"use strict";H()});var St,xt,Qe,pe,ee,Dn,$n,et,K=v(()=>{"use strict";H();Y();St=[],xt=e=>{if(e===null)return"Null";if(e===void 0)return"Undefined";let t=typeof e;if(t==="string")return"String";if(t==="number")return"Number";if(t==="boolean")return"Boolean";if(t==="bigint")return"BigInt";if(t==="symbol")return"Symbol";try{let r=t==="object"?we(e):e;return Object.prototype.toString.call(r).slice(8,-1)}catch{return t==="function"?"Function":"Object"}},Qe=e=>{try{let t=e?.[Symbol.toStringTag]??e?.prototype?.[Symbol.toStringTag];if(typeof t=="string")return t}catch{}},pe=(e,...t)=>{let r=e;try{r=e?.[b.$Target]??e}catch{r=e}let n=xt(r);switch(n){case"Function":try{return $n(r)?"Class":"Function"}catch{return"Function"}case"Object":{try{if("length"in r&&Object.keys(r).every(s=>s==="length"||Number.isFinite(Number(s))))return"ArrayLike";for(let s of t){let i=s.class?.[b.$Target]??s.class;if(r===i||i&&r instanceof i)return s.type}let o=globalThis[b.$Registry]??[];for(let s of[...St,...o]){let i=s.class?.[b.$Target]??s.class;if(r===i||i&&r instanceof i)return s.type}}catch{return"Object"}return"Object"}default:return n}},ee=(e,...t)=>({type:pe(e,...t),value:e}),Dn=/^\s*(class\s|\[native code\])/,$n=e=>{if(typeof e!="function")return!1;let t=e?.[b.$Target]??e;if(!("prototype"in t))return!1;let r=t?.name,n=Qe(t);if(t?.[b.$Identity]||t?.prototype?.[b.$Identity]||typeof n=="string"&&n.startsWith("Temporal."))return!0;if(typeof n=="string"&&n.endsWith("Function"))return!1;if((globalThis[b.$Registry]??[]).some(s=>(s.class?.[b.$Target]??s.class)===t||r&&s.type===r||n&&s.type===n))return!0;try{let s=Function.prototype.toString.call(t);if(Dn.test(s))return!0;let i=Object.getOwnPropertyDescriptor(t,"prototype");if(i&&i.writable===!1&&!Object.isFrozen(t))return!0;let a=t.prototype;if(a&&Object.getOwnPropertyNames(a).length>2)return!0}catch{return!1}return!1},et=(e,t)=>{if(typeof e!="function")return;let r=Qe(e),n=t??r??e.name;n&&!["Object","Function",""].includes(n)&&(St.some(o=>o.class===e)||St.push({class:e,type:n}))}});function tt(e){switch(typeof e){case"number":return Number.isFinite(e);case"bigint":return!0;case"string":{let r=e.trim();return r.length===0?!1:Cn.test(r)||y(Number(r))}default:return!1}}var B,te,F,dr,d,G,y,Cn,Tt,mr,de,gr,S,Et,yr,re,Ot,J,P,q,x,w,$,Ne,Ie,rt,Re,O,N=v(()=>{"use strict";H();K();B=(e,...t)=>t.includes(pe(e)),te=e=>e===null||typeof e!="object"&&typeof e!="function",F=e=>!te(e),dr=e=>Symbol.iterator in Object(e)&&!d(e),d=e=>typeof e=="string",G=e=>typeof e=="string"&&e.trim().length>0,y=e=>Number.isFinite(e),Cn=/^[+-]?[0-9]+n$/;Tt=e=>typeof e=="bigint",mr=e=>typeof e=="boolean",de=e=>Array.isArray(e),gr=e=>xt(e)==="Object"&&"length"in e&&Object.keys(e).every(t=>t==="length"||y(Number(t))),S=e=>B(e,"Object"),Et=e=>B(e,"Date"),yr=e=>B(e,"RegExp"),re=e=>typeof e=="symbol",Ot=e=>typeof e=="symbol"&&Symbol.keyFor(e)!==void 0,J=e=>e!=="__proto__"&&e!=="constructor"&&e!=="prototype",P=e=>e==null||B(e,"Void","Empty"),q=e=>e===void 0||B(e,"Void","Empty"),x=e=>e!=null&&!P(e),w=e=>B(e,"Function","AsyncFunction","GeneratorFunction","AsyncGeneratorFunction"),$=e=>typeof e=="function",Ne=e=>B(e,"Map"),Ie=e=>B(e,"Set"),rt=(e,t)=>B(e,"Error")&&(t?e instanceof t:!0),Re=e=>typeof Intl<"u"&&typeof Intl.Locale=="function"&&e instanceof Intl.Locale,O=e=>P(e)||S(e)&&Reflect.ownKeys(e).length===0||d(e)&&e.trim().length===0||typeof e=="number"&&Number.isNaN(e)||de(e)&&e.length===0||Ie(e)&&e.size===0||Ne(e)&&e.size===0||ArrayBuffer.isView(e)&&e.byteLength===0||Et(e)&&Number.isNaN(e.getTime())});function _t(e,t,r=new WeakSet){let n=t instanceof WeakSet?t:t?.skip??An;return te(e)||r.has(e)||n.has(e)||e instanceof Date||e instanceof RegExp||e instanceof Error||e instanceof Map||e instanceof Set||e instanceof Promise||e?.[Symbol.toStringTag]==="Enumify"||e[b.$Extensible]?e:(r.add(e),C(e).forEach(([o,s])=>{J(o)&&_t(s,{skip:n},r)}),Object.freeze(e))}var E,be,An,De=v(()=>{"use strict";Y();N();H();E={Unknown:"unknown",Browser:"browser",WebWorker:"web-worker",NodeJS:"nodejs",Deno:"deno",GoogleAppsScript:"google-apps-script"},be=()=>{let e=globalThis;try{if(x(e.SpreadsheetApp))return{global:e,type:E.GoogleAppsScript};if(x(e.window?.document))return{global:e,type:E.Browser};if(w(e.importScripts)||x(e.WorkerGlobalScope)&&e instanceof e.WorkerGlobalScope)return{global:e,type:E.WebWorker};if(x(e.Deno))return{global:e,type:E.Deno};if(x(e.process?.versions?.node)&&e.process?.release?.name==="node")return{global:e,type:E.NodeJS}}catch{}return{global:e,type:E.Unknown}},An=new WeakSet});function hr(e){return Object.fromEntries(C(e,!0))}var wr=v(()=>{"use strict";Y();K();N()});function Sr(e,t={},r=!1){let{frozen:n,lock:o,appendOnly:s,onGet:i,keys:a,bind:c,skip:l}=t,m=new Set,f,h,p=we(e);o&&_t(p,l?{skip:l}:void 0),et(p);let R={isExtensible:g=>Reflect.isExtensible(g),getPrototypeOf:g=>Reflect.getPrototypeOf(g),setPrototypeOf:(g,u)=>{if(n)throw new TypeError("Security: Prototype mutation attempt on protected object");return Reflect.setPrototypeOf(g,u)},getOwnPropertyDescriptor:(g,u)=>{if(!(a&&!a.includes(u))){if(a){if(i&&!re(u)&&!m.has(u)){m.add(u);try{let T=i(u,g);if(x(T))return{enumerable:!0,configurable:!0,value:T}}finally{m.delete(u)}}return{enumerable:!0,configurable:!0}}return Reflect.getOwnPropertyDescriptor(g,u)}},ownKeys:g=>{if(a)return a;if(i&&!m.has(b.$Discover)){m.add(b.$Discover);try{i(b.$Discover,g)}finally{m.delete(b.$Discover)}}return Reflect.ownKeys(g)},has:(g,u)=>a?a.includes(u):Reflect.has(g,u),deleteProperty:(g,u)=>{if(n)throw new TypeError(`Cannot delete property '${String(u)}' from a protected object.`);if(s&&Reflect.has(g,u))throw new Error(`Security: Deletion attempt on protected key '${String(u)}'`);return Reflect.deleteProperty(g,u)},defineProperty:(g,u,T)=>{if(n&&!Object.isFrozen(g))throw new TypeError(`Cannot define property '${String(u)}' on a frozen object.`);if(s&&Reflect.has(g,u))throw new Error(`Security: Mutation attempt on protected key '${String(u)}'`);return Reflect.defineProperty(g,u,T)},set:(g,u,T,D)=>{if(n&&D===h)throw new TypeError(`Cannot set property '${String(u)}' on a frozen object.`);if(s){if(Array.isArray(g)&&u==="length"&&T<g.length)throw new Error("Security: Truncation attempt on protected array.");if(!(Array.isArray(g)&&u==="length")&&Reflect.has(g,u))throw new Error(`Security: Mutation attempt on protected key '${String(u)}'`)}return Reflect.set(g,u,T,D)},get:(g,u,T)=>{if(u===b.$Target)return T===h?g:void 0;if(n&&(u===b.$Inspect||u==="toJSON")){let _=Object.getOwnPropertyDescriptor(g,u);return _&&w(_.value)?_.value:(f||(f=()=>hr(g)),f)}if(a&&!a.includes(u))return;if(i&&!re(u)&&!Reflect.has(g,u)&&!m.has(u)){m.add(u);try{let _=i(u,g);if(x(_))return _}finally{m.delete(u)}}let D=Reflect.get(g,u,T);if(c&&u!=="constructor"&&w(D)){let _=Object.getOwnPropertyDescriptor(g,u);if(_&&!_.configurable&&!_.writable)return D;let j=br.get(D);j||(j=new WeakMap,br.set(D,j));let fe=j.get(g);if(fe)return fe;let ar=D.bind(g);return j.set(g,ar),ar}return D}};if(r){let g=Proxy.revocable(p,R);return h=g.proxy,{proxy:g.proxy,revoke:g.revoke}}return h=new Proxy(p,R),h}function xr(e,t=!0,r=t,n=new WeakSet){return Sr(e,{frozen:t,lock:r,skip:n,bind:t})}function $e(e,t=new WeakSet){return Sr(e,{frozen:!0,lock:!0,skip:t,bind:!0})}var br,nt=v(()=>{"use strict";H();wr();De();Y();N();K();br=new WeakMap});function Ce(e,t=new WeakSet){return JSON.stringify(e,function(r,n){if(n===void 0)return"\0__undefined__\0";if(Tt(n))return`\0__bigint:${n}__\0`;if(w(n))return`function:${n.name||"anonymous"}`;if(F(n)){if(t.has(n))return"<Circular>";if(t.add(n),Re(n))return n.toString();if(Ne(n))return`map:[${Array.from(n.entries()).map(o=>Ce(o,t)).sort().join(",")}]`;if(Ie(n))return`set:[${Array.from(n).map(o=>Ce(o,t)).sort().join(",")}]`}return n})}function Er(e){return function t(...r){return r.length>=e.length?e(...r):(...n)=>t(...r,...n)}}function A(e){let t=new Map;return function(...r){let n=Ce(this!==void 0&&this!==globalThis?[this,...r]:r);if(!t.has(n)){let o=e.apply(this,r);t.set(n,o)}return t.get(n)}}function Ae(e,t){return{enumerable:!1,configurable:!1,writable:!1,value:function(...r){let n=`${String(e)},${Ce(r)}`,o=Tr.get(this);if(o||(o=new Map,Tr.set(this,o)),!o.has(n)){let s=t.apply(this,r);$e(s),o.set(n,s)}return o.get(n)}}}var Tr,ot=v(()=>{"use strict";nt();N();Tr=new WeakMap});function Or(e){try{return JSON.parse(JSON.stringify(e))}catch(t){throw console.warn("Could not clean object:",t?.message??t),t}}var _r=v(()=>{"use strict";N()});function oe(e){return x(e)?w(e)?e():e:t=>w(t)?t():t}var Mn,ne,vt=v(()=>{"use strict";Y();N();K();Mn=e=>{let t=new Set,r=e,n=0;for(;r&&r!==Object.prototype&&n++<10;){let o=Object.getOwnPropertyDescriptors(r);for(let[s,i]of Object.entries(o))J(s)&&(i.enumerable||w(i.get))&&t.add(s);r=Object.getPrototypeOf(r)}return Array.from(t)},ne=e=>{if(te(e)||w(e))return e;if(de(e))return e.map(r=>ne(r));if(Et(e)||yr(e)||Ne(e)||Ie(e))return e;try{if(w(e.toJSON))return ne(e.toJSON())}catch{}let t={};for(let r of Mn(e))try{t[r]=ne(e[r])}catch{}return t};oe.stringSymbol=oe();oe.symbolRegExp=oe();oe.symbolString=oe();oe.stringString=oe()});function Ir(e,t){try{return globalThis.structuredClone(e,t)}catch{return Or(e)}}function zn(e,t){return Gn(t)}function Pr(e){let t=encodeURI(e);return t.includes("%")&&(t=t.replace(Fn,r=>Rr[r.toUpperCase()]??decodeURI(r))),t}function Gn(e){if(d(e))try{return decodeURI(e)}catch{}return e}function Le(e){return!B(e,"Function","AsyncFunction","WeakMap","WeakSet","WeakRef")}function kn(e,t){return`{"$${e}":${t}}`}function Wn(e){return k(re(e)?`${Ot(e)?"@":""}@(${e.description??""})`:e)}function Pt(e){let[t,r,n]=e.toString().match(Un)||[null,void 0,void 0];switch(!0){case re(e):case P(t):case(x(r)&&q(n)):return e;case x(r):return Symbol.for(n);case q(r):default:return Symbol(n)}}function Z(e,t){let r=me;me=t?.compact!==!1;try{let n=k(e,!1);if(t?.signed){if(!d(t.secret)||!t.secret)throw new TypeError("stringify: signed serialization requires an explicit secret string");return`$sig:${Dr(n,t.secret)}:${n}`}return n}finally{me=r}}function k(e,t=!0){let r=ee(e),n=Er(kn)(r.type);switch(r.type){case"String":{let o=r.value;return o.startsWith("~")&&(o=`~${o}`),t||(t=o==="true"||o==="false"||o==="null"||parseFloat(o).toString()===o||o.startsWith("~")),t?JSON.stringify(Pr(o)):Pr(o)}case"Boolean":case"Null":case"Number":return JSON.stringify(r.value);case"Void":case"Undefined":return me?JSON.stringify("~u"):n(JSON.stringify("void"));case"BigInt":return me?JSON.stringify(`~n${r.value.toString()}`):n(r.value.toString());case"Date":return me?JSON.stringify(`~t${r.value.getTime()}`):n(k(r.value.toJSON()));case"Object":return`{${C(r.value).filter(([,s])=>Le(s)).map(([s,i])=>`${Wn(s)}: ${k(i)}`).join(",")}}`;case"Array":return`[${r.value.filter(s=>Le(s)).map(s=>k(s)).join(",")}]`;case"Map":{let o=Array.from(r.value.entries()).filter(([,s])=>Le(s)).map(([s,i])=>`[${k(s)}, ${k(i)}]`).join(",");return n(`[${o}]`)}case"Set":{let o=Array.from(r.value.values()).filter(s=>Le(s)).map(s=>k(s)).join(",");return n(`[${o}]`)}case"Symbol":{let o=`${Ot(r.value)?"@":""}@(${r.value.description??""})`;return me?JSON.stringify(`~y${o}`):n(JSON.stringify(o))}case"RegExp":return n(k({source:r.value.source,flags:r.value.flags}));default:{let o=r.value;switch(!0){case!Le(o):return;case w(o.toJSON):return n(k(o.toJSON()));case(w(o.toString)&&o.toString!==Object.prototype.toString):{let s=o.toString();return n(s.includes('"')?s:JSON.stringify(s))}case(w(o.valueOf)&&o.valueOf!==Object.prototype.valueOf):return n(JSON.stringify(o.valueOf()));default:{let s=ne(o);return F(s)&&Object.keys(s).length>0?k(s):n(JSON.stringify(o,(i,a)=>O(i)?a:k(a)))}}}}}function ge(e,t){if(!d(e))return e;let r=w(t)?{sentinel:t}:t??{};if(e.startsWith("$sig:")){let o=e.indexOf(":",5);if(o!==-1){let s=e.substring(5,o),i=e.substring(o+1);if(!d(r.secret)||!r.secret){if(console.warn("objectify: signature verification requires an explicit secret string"),r.throwOnError)throw new TypeError("objectify: signature verification requires an explicit secret string");return e}let a=Dr(i,r.secret);if(!Jn(s,a)){if(console.warn("objectify: signature verification failed"),r.throwOnError)throw new Error("objectify: signature verification failed");return e}e=i}else if(r.requireSigned){if(console.warn("objectify: malformed signed payload"),r.throwOnError)throw new Error("objectify: malformed signed payload");return e}}else if(r.requireSigned){if(console.warn("objectify: unsigned string rejected by requireSigned policy"),r.throwOnError)throw new Error("objectify: unsigned string rejected by requireSigned policy");return e}let n;try{n=JSON.parse(e,zn)}catch(o){return e.startsWith('"')&&e.endsWith('"')?(console.warn(`objectify.parse: -> ${e}, ${o.message}`),e):ge(`"${e}"`,r.requireSigned?{...r,requireSigned:!1}:r)}switch(!0){case(e.startsWith("{")&&e.endsWith("}")):case(e.startsWith("[")&&e.endsWith("]")):return Nt(n,r,0);default:return Me(n,r)}}function Nt(e,t,r=0){let n=t.maxDepth??Kn;return r>=n?e:S(e)?Me(C(e).filter(([o])=>J(o)).reduce((o,[s,i])=>Object.assign(o,{[Pt(s)]:Me(Nt(i,t,r+1),t)}),{}),t):de(e)?pr(e).map(o=>Me(Nt(o,t,r+1),t)):Me(e,t)}function Me(e,t){if(d(e)&&e.startsWith("~"))try{if(e.startsWith("~~"))return e.substring(1);if(e.startsWith("~n"))return BigInt(e.substring(2));if(e.startsWith("~t")){let s=e.substring(2),i=new Date(tt(s)?Number(s):s);return isNaN(i.getTime())?e:i}if(e==="~u")return t.sentinel?.();if(e.startsWith("~y"))return Pt(e.substring(2))}catch{return e}if(!S(e)||Ve(e).length!==1)return e;let[r,n]=C(e)[0];if(!String(r).startsWith("$"))return e;let o=r.substring(1);try{switch(o){case"String":case"Boolean":case"Object":case"Array":return n;case"Number":return Number(n);case"BigInt":return BigInt(n);case"Null":return null;case"Undefined":case"Empty":case"Void":return t.sentinel?.();case"Date":return new Date(n);case"RegExp":return t.allowRegExp===!1||!S(n)||!d(n.source)||n.source.length>Zn?e:new RegExp(n.source,n.flags);case"Symbol":return Pt(n);case"Map":return de(n)?new Map(n):e;case"Set":return de(n)?new Set(n):e;default:{if(t.allowClasses===!1||t.allowedClasses&&!(t.allowedClasses instanceof Set?t.allowedClasses.has(r)||t.allowedClasses.has(o):t.allowedClasses.includes(r)||t.allowedClasses.includes(o)))return e;let s=it.get(r);return s?Reflect.construct(s,[n]):(console.warn(`objectify: dont know how to deserialize '${o}'`),e)}}}catch{return e}}var it,vr,Nr,Rr,Fn,Un,Bn,Dr,Jn,me,Kn,Zn,Se=v(()=>{"use strict";ot();Y();_r();vt();K();N();H();it=globalThis[b.$SerializerRegistry]??=new Map,vr=e=>{try{let t=e?.prototype?.[Symbol.toStringTag]??e?.[Symbol.toStringTag];return d(t)?t:void 0}catch{return}},Nr=(e,t)=>{let r=e.startsWith("$")?e:`$${e}`;if(it.has(r)){let n=it.get(r),o=vr(n),s=vr(t),i=n.name||o,a=t.name||s||(e.startsWith("$")?e.slice(1):e);if(n===t||n.toString()===t.toString()||!!t[b.$Identity]&&n[b.$Identity]===t[b.$Identity]||!!t[b.$Target]&&n[b.$Target]===t[b.$Target]||!!i&&!!a&&i===a)return;throw new Error(`[registerSerializable] Collision: '${r}' is already registered with ${n.name||"anonymous constructor"}`)}it.set(r,t)};Rr={"%20":" ","%22":'"',"%3B":";","%3C":"<","%3E":">","%5B":"[","%5D":"]","%5E":"^","%7B":"{","%7C":"|","%7D":"}"},Fn=new RegExp(Object.keys(Rr).join("|"),"gi");Un=/^@(@)?\(([^\)]*)\)$/;Bn=globalThis.crypto?.randomUUID?globalThis.crypto.randomUUID().split("-")[0]:Math.random().toString(36).slice(2,10),Dr=(e,t=Bn)=>{let r=2166136261,n=2654435769,o=`${t}:${e}`;for(let s=0;s<o.length;s++){let i=o.charCodeAt(s);r=Math.imul(r^i,16777619),n=Math.imul(n^i,2246822507)}return(r>>>0).toString(16).padStart(8,"0")+(n>>>0).toString(16).padStart(8,"0")},Jn=(e,t)=>{if(!d(e)||!d(t)||e.length!==t.length)return!1;let r=0;for(let n=0;n<e.length;n++)r|=e.charCodeAt(n)^t.charCodeAt(n);return r===0},me=!0;Kn=64,Zn=512});function ie(e,t,r,n,o,s){function i(T){if(T!==void 0&&typeof T!="function")throw new TypeError("Function expected");return T}for(var a=n.kind,c=a==="getter"?"get":a==="setter"?"set":"value",l=!t&&e?n.static?e:e.prototype:null,m=t||(l?Object.getOwnPropertyDescriptor(l,n.name):{}),f,h=!1,p=r.length-1;p>=0;p--){var R={};for(var g in n)R[g]=g==="access"?{}:n[g];for(var g in n.access)R.access[g]=n.access[g];R.addInitializer=function(T){if(h)throw new TypeError("Cannot add initializers after decoration has completed");s.push(i(T||null))};var u=(0,r[p])(a==="accessor"?{get:m.get,set:m.set}:m[c],R);if(a==="accessor"){if(u===void 0)continue;if(u===null||typeof u!="object")throw new TypeError("Object expected");(f=i(u.get))&&(m.get=f),(f=i(u.set))&&(m.set=f),(f=i(u.init))&&o.unshift(f)}else(f=i(u))&&(a==="field"?o.unshift(f):m[c]=f)}l&&Object.defineProperty(l,n.name,m),h=!0}function se(e,t,r){for(var n=arguments.length>2,o=0;o<t.length;o++)r=n?t[o].call(e,r):t[o].call(e);return n?r:void 0}var ze=v(()=>{"use strict"});function $r(e,t){return Qe(e)??(q(t)?e.name||void 0:String(t))}function Cr(e,{kind:t,name:r,addInitializer:n}){let o=$r(e,r);if(o&&et(e,o),t==="class")return o&&n(()=>Nr(o,e)),e;throw new Error(`@Serializable decorating unknown 'kind': ${t} (${r})`)}function ae(e,t){let r=(n,o,s)=>{let i=n.prototype,a=o??$r(n,s);if(a&&(i&&!Object.hasOwn(i,Symbol.toStringTag)&&Object.defineProperty(i,Symbol.toStringTag,{value:a,configurable:!0,writable:!1,enumerable:!1}),!n.name||n.name!==a))try{Object.defineProperty(n,"name",{value:a,configurable:!0,writable:!1,enumerable:!1})}catch{}return n};return $(e)&&t?.kind==="class"?r(e,void 0,t.name):(n,o)=>r(n,d(e)?e:void 0,o?.name)}var Fe=v(()=>{"use strict";H();nt();N();Se();K()});var Ge,It=v(()=>{"use strict";ze();N();Fe();Ge=(()=>{let e=[ae("BoundedCache")],t,r=[],n,o=Map;var s=class extends o{static{n=this}static{let i=typeof Symbol=="function"&&Symbol.metadata?Object.create(o[Symbol.metadata]??null):void 0;ie(null,t={value:n},e,{kind:"class",name:n.name,metadata:i},null,r),s=n=t.value,i&&Object.defineProperty(n,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i}),se(n,r)}#t=new Map;#e=new Set;#r=new Map;maxSize;ttl;constructor(i=1e3,a=1440*60*1e3){super(),this.maxSize=i,this.ttl=a}get isBoundedCache(){return!0}#n(i){let a=this.#t.get(i);return a===void 0?!1:Date.now()>a}evictExpired(){if(this.#t.size===0)return;let i=Date.now();for(let[a,c]of this.#t.entries())i>c&&this.delete(a)}setStatic(i,a){return super.has(i)&&super.delete(i),super.set(i,a),this.#e.add(i),this.#t.delete(i),this.#r.delete(i),this}isStatic(i){return this.#e.has(i)}get(i){if(this.#n(i)){this.delete(i);return}if(!super.has(i))return;let a=super.get(i);return super.delete(i),super.set(i,a),a}has(i){return this.#n(i)?(this.delete(i),!1):super.has(i)}get size(){return this.evictExpired(),super.size}forEach(i,a){this.evictExpired(),super.forEach(i,a)}set(i,a,c){this.evictExpired();let l=this.#t.get(i);for(super.has(i)&&super.delete(i),super.set(i,a),this.#e.delete(i),x(c)?c!==1/0?(this.#t.set(i,Date.now()+c),this.#r.set(i,c)):(this.#t.delete(i),this.#r.delete(i)):l!==void 0?this.#t.set(i,l):this.ttl!==1/0?(this.#t.set(i,Date.now()+this.ttl),this.#r.delete(i)):(this.#t.delete(i),this.#r.delete(i));this.size-this.#e.size>this.maxSize;){let m=!1,f=super.keys(),h=f.next();for(;!h.done;){let p=h.value;if(!this.#e.has(p)){this.delete(p),m=!0;break}h=f.next()}if(!m)break}return this}delete(i){return this.#e.delete(i),this.#t.delete(i),this.#r.delete(i),super.delete(i)}deletePrefix(i){let a=String(i).trim().toLowerCase();if(O(a))return 0;let c=[];for(let l of super.keys())d(l)&&l.toLowerCase().startsWith(a)&&c.push(l);for(let l of c)this.delete(l);return c.length}clear(i){if(i===void 0){this.#e.clear(),this.#t.clear(),this.#r.clear(),super.clear();return}let a=0;for(let c of super.keys()){if(a>=i)break;this.#e.has(c)||(this.delete(c),a++)}}keys(){return this.evictExpired(),super.keys()}values(){return this.evictExpired(),super.values()}entries(){return this.evictExpired(),super.entries()}[Symbol.iterator](){return this.evictExpired(),super[Symbol.iterator]()}toJSON(){this.evictExpired();let i=[];for(let[a,c]of super.entries())d(a)&&i.push([a,c]);return Object.fromEntries(i)}static fromEntries(i,a=1e3,c=1440*60*1e3){let l=new s(a,c);for(let[m,f]of i)l.set(m,f);return l}};return s=n})()});function Mr(e,t){let r;if(q(e))return t??{};switch(W.type){case E.Browser:r=Rt.getItem(e);break;case E.NodeJS:r=ke.has(e)?ke.get(e):jn(e);break;case E.Deno:r=W.global.Deno.env.get(e);break;case E.GoogleAppsScript:r=W.global.PropertiesService?.getUserProperties().getProperty(e);break;case E.WebWorker:case E.Unknown:r=void 0;break;default:throw new Error(`Cannot determine Javascript context: ${W.type}`)}return d(r)?ge(r):t}function Ct(e,t,r){let n=x(t)?Z(t):void 0,o=x(n);switch(W.type){case E.Browser:try{o?Rt.setItem(e,n):Rt.removeItem(e)}catch(s){console.warn(`[Storage] Failed to ${o?"setItem":"removeItem"} for key '${e}':`,s)}break;case E.NodeJS:o?r?.static?ke.setStatic(e,n):ke.set(e,n,r?.ttl):ke.set(e,void 0,r?.ttl);break;case E.Deno:o?W.global.Deno.env.set(e,n):W.global.Deno.env.delete(e);break;case E.GoogleAppsScript:o?W.global.PropertiesService?.getUserProperties().setProperty(e,n):W.global.PropertiesService?.getUserProperties().deleteProperty(e);break;case E.WebWorker:case E.Unknown:break;default:throw new Error(`Cannot determine Javascript context: ${W.type}`)}}var W,Lr,Ar,Dt,$t,Rt,ke,jn,At=v(()=>{"use strict";Se();De();N();It();W=be(),Lr=(e=1e3,t=1/0)=>{let r=new Ge(e,t);return{get length(){return r.size},clear:()=>r.clear(),getItem:n=>r.get(n)??null,key:n=>Array.from(r.keys())[n]??null,removeItem:n=>{r.delete(n)},setItem:(n,o)=>{r.set(n,String(o))}}},Ar=new Map,Dt=e=>{let t=Ar.get(e);return t||(t=Lr(),Ar.set(e,t)),t},$t=(e="localStorage")=>{try{let t=globalThis?.[e];if(t&&$(t.getItem)&&$(t.setItem)&&$(t.removeItem)&&$(t.clear)&&$(t.key)&&y(t.length))return t}catch{}return Dt(e)},Rt=W.type===E.Browser?$t():Lr(),ke=new Ge(1e3,1/0),jn=e=>{try{let t=Reflect.get(W.global,"process");if(!t||typeof t!="object")return;let r=Reflect.get(t,"env");return!r||typeof r!="object"?void 0:Reflect.get(r,e)}catch{return}}});var zr=v(()=>{"use strict";Se();N()});function Fr(e=[],t){let r=n=>q(t)||x(n)?n:Ir(t);return gr(e)||dr(e)&&!d(e)?Array.from(e,r):[e]}function Gr(e){if(rt(e))return e;let t=new Error(S(e)&&d(e.message)?e.message:String(e));return S(e)&&(t.name=d(e.name)?e.name:"Error","code"in e&&(d(e.code)||y(e.code))&&(t.code=e.code),"stack"in e&&d(e.stack)&&(t.stack=e.stack)),t}var Hi,Yi,Lt=v(()=>{"use strict";Se();K();N();zr();Hi=BigInt(Number.MAX_SAFE_INTEGER),Yi=BigInt(Number.MIN_SAFE_INTEGER)});var kr=v(()=>{"use strict";Lt();if(typeof globalThis.Temporal>"u")throw new Error("Temporal API is not available. Node 20+ with a polyfill (e.g. @js-temporal/polyfill) is highly recommended. Native Temporal is fully reliable only on Node 26+ (while Node 22 may have instabilities).");try{if(typeof Temporal.Now.zonedDateTimeISO=="function"&&typeof Temporal.Now.zonedDateTimeISO().add!="function")throw new Error("Incomplete Temporal implementation")}catch(e){let t=Gr(e);if(console.warn("Tempo: Native Temporal implementation appears incomplete. Consider loading a polyfill.",t),t.message!=="Incomplete Temporal implementation")throw t}});function Wr(){return Temporal.Now.instant()}function Ur(e,t=2024){let r=Temporal.ZonedDateTime.from({year:t,month:1,day:1,hour:0,minute:0,second:0,timeZone:e}).offsetNanoseconds,n=Temporal.ZonedDateTime.from({year:t,month:7,day:1,hour:0,minute:0,second:0,timeZone:e}).offsetNanoseconds;return{jan:r,jul:n}}var Mt=v(()=>{"use strict";kr();N()});function We(e,t,r){if(e){if($(e[t]))return e[t]();if(r&&r in e)return e[r]}}function so(e){return e?Qn.has(e)?5:Xn.has(e)?6:Vn.has(e)?7:1:1}function ao(e){return e?e==="IR"?oo:e==="AF"?io:eo.has(e)?no:Br:Br}function co(e,t){let r=e?.script??($(e?.maximize)?e.maximize().script:void 0);return r&&ro.has(r)||t&&to.has(t)?"rtl":"ltr"}var Hn,Yn,xe,le,ss,as,Ft,cs,qn,ls,Vn,Xn,Qn,eo,to,ro,Br,no,oo,io,zt,us,fs,lo,uo,Jr,ps,st,ds,Gt=v(()=>{"use strict";Mt();ot();N();Lt();Hn=/_/g,Yn=/[.@]/,xe=e=>typeof Intl<"u"&&(!e||Object.hasOwn(Intl,e)&&$(Intl[e])),le=e=>{if(Re(e)&&(e=e.toString()),!d(e))return;let t=e.trim();if(O(t))return;let r=t.split(Yn)[0];if(!O(r))return r.replace(Hn,"-")},ss=A((e,t)=>new Intl.RelativeTimeFormat(le(e),t)),as=A((e,t)=>new Intl.ListFormat(le(e),t)),Ft=A((e,t)=>new Intl.DateTimeFormat(le(e),t)),cs=A((e,t)=>{try{return new Intl.PluralRules(le(e),t)}catch{return{select:()=>"other"}}}),qn=A((e,t)=>new Intl.NumberFormat(le(e),t)),ls=A((e,t)=>{try{let r=new Intl.DurationFormat(le(e),t);if(w(r.format))return r;throw new Error("No format method")}catch{return{format:n=>String(n)}}});Vn=new Set(["US","CA","MX","BR","IL","JP","TW","HK","MO","PH","SG","TH","IN","KR","CO","PE","VE","ZA"]),Xn=new Set(["SA","AF","BH","DJ","DZ","EG","IQ","IR","JO","KW","LY","OM","QA","SD","SY","YE"]),Qn=new Set(["MV"]),eo=new Set(["SA","BH","DJ","DZ","EG","IQ","JO","KW","LY","OM","QA","SD","SY","YE"]),to=new Set(["ar","he","fa","ur","yi","ps","sd","ug","ckb"]),ro=new Set(["Arab","Hebr","Thaa","Syrc","Mand","Samr","Nkoo"]),Br=Object.freeze([6,7]),no=Object.freeze([5,6]),oo=Object.freeze([5]),io=Object.freeze([4,5]);zt=A(e=>{if(Re(e))return e;if(xe("Locale"))try{let t=le(e);return new Intl.Locale(t||"en-US")}catch{return}}),us=A(e=>{let t=zt(e)??zt("en-US"),r=t?.baseName??Jr(e)??"en-US",n=t?.language??r.split("-")[0]?.toLowerCase(),o=[];for(let fe of r.split("-").slice(1)){if(fe.length===1)break;o.push(fe)}let s=t?.region??($(t?.maximize)?t.maximize().region:void 0)??o.find(fe=>/^[a-zA-Z]{2}$|^\d{3}$/.test(fe))?.toUpperCase(),i=t?.script??($(t?.maximize)?t.maximize().script:void 0),a=We(t,"getWeekInfo","weekInfo"),c=a?.firstDay??so(s),l=Array.isArray(a?.weekend)?Object.freeze([...a.weekend]):ao(s),f=We(t,"getHourCycles","hourCycles")??t?.hourCycle??(xe("DateTimeFormat")?Ft(r,{hour:"numeric"}).resolvedOptions().hourCycle:void 0),h=Array.isArray(f)&&f.length>0?Object.freeze([...f]):d(f)?Object.freeze([f]):Object.freeze(["h23"]),p=We(t,"getTextInfo","textInfo"),R=p?.direction==="rtl"||p?.direction==="ltr"?p.direction:co(t,n),u=We(t,"getNumberingSystems","numberingSystems")??t?.numberingSystem??(xe("NumberFormat")?qn(r).resolvedOptions().numberingSystem:void 0),T=Array.isArray(u)&&u.length>0?Object.freeze([...u]):d(u)?Object.freeze([u]):Object.freeze(["latn"]),D=We(t,"getTimeZones","timeZones"),_=Array.isArray(D)&&D.length>0?Object.freeze([...D]):Object.freeze([]),j=Object.freeze({firstDay:c,weekend:l});return Object.freeze({locale:t,baseName:r,language:n,region:s,script:i,weekInfo:j,firstDay:c,weekend:l,hourCycle:h[0],hourCycles:h,direction:R,numberingSystem:T[0],numberingSystems:T,timeZones:_})}),fs=A((e="latn")=>{if(!(!e||e==="latn"||!xe("NumberFormat")))try{let t=new Intl.NumberFormat(`en-u-nu-${e}`,{useGrouping:!1}),r=Array.from({length:10},(n,o)=>t.format(o));return r[0]==="0"&&r[9]==="9"?void 0:Object.freeze(r)}catch{return}}),lo=Object.freeze({locale:"en-US",calendar:"iso8601",numberingSystem:"latn",timeZone:"UTC"}),uo=A(()=>xe("DateTimeFormat")?Object.freeze(Ft().resolvedOptions()):lo),Jr=A(e=>{let t=le(e);if(t){if(xe("getCanonicalLocales"))try{return Intl.getCanonicalLocales(t)[0]}catch{return}return zt(t)?.baseName??t}}),ps=A(e=>Object.freeze(Fr(e).map(t=>Jr(t)).filter(Boolean))),st=A((e=uo().timeZone)=>{try{let{jan:t,jul:r}=Ur(e),o=["Australia","Antarctica","Africa/Johannesburg","America/Argentina/Buenos_Aires","America/Sao_Paulo"].some(s=>e.startsWith(s));switch(!0){case r>t:return"north";case r<t:return"south";default:return o?"south":void 0}}catch{return}}),ds=A(e=>{try{let t=new Date(2024,11,24),r=Ft(e).formatToParts(t);return r[0].type==="month"&&r[0].value==="12"}catch{return!1}})});function V(e){return{enumerable:!1,configurable:!1,writable:!1,value:e}}function Te(e,t=!0){let n=pe(this)!=="Module"&&w(this?.has)?this:po,o=ee(e),s=Object.create(n);switch(o.type){case"Enumify":case"Object":Object.defineProperties(s,Object.getOwnPropertyDescriptors(o.value));break;case"Array":o.value.forEach((i,a)=>{if(y(i))throw new Error("Enumify: numeric keys are not supported");s[i]=a});break;default:throw new Error(`Enumify: invalid argument type: ${o.type}`)}return xr(s,!0,t)}var fo,po,Ts,Kr=v(()=>{"use strict";ze();K();N();Y();nt();Fe();ot();fo="Enumify",po=$e(Object.create(null,{keys:Ae("keys",function(){return C(this,!0).map(([e])=>e)}),values:Ae("values",function(){return C(this,!0).map(([e,t])=>t)}),entries:Ae("entries",function(){return C(this,!0).map(([e,t])=>Object.freeze([e,t]))}),invert:Ae("invert",function(){return Object.fromEntries(this.entries().map(([e,t])=>[t,e]))}),has:V(function(e){return this.keys().includes(e)}),count:V(function(){return this.keys().length}),includes:V(function(e){return this.values().includes(e)}),keyOf:V(function(e){return this.invert()[e]}),extend:V(function(e,t){return Te.call(this,e,t)}),forEach:V(function(e,t){this.entries().forEach((r,n)=>e.call(t,r,n,this))}),filter:V(function(e,t){return Te(this.entries().reduce((r,n,o)=>e.call(t,n,o,this)?Object.assign(r,{[n[0]]:n[1]}):r,{}))}),map:V(function(e,t){return Te(this.entries().reduce((r,n,o)=>Object.assign(r,{[n[0]]:e.call(t,n,o,this)}),{}))}),[Symbol.iterator]:V(function*(){for(let e of this.entries())yield e}),[Symbol.toStringTag]:{enumerable:!1,configurable:!1,writable:!1,value:fo}}));Ts=(()=>{let e=[Cr,ae("Enumify")],t,r=[],n;var o=class{static{n=this}static{let s=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;ie(null,t={value:n},e,{kind:"class",name:n.name,metadata:s},null,r),o=n=t.value,s&&Object.defineProperty(n,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:s}),se(n,r)}constructor(s){return Te(s)}};return o=n})()});function mo(e,t=U.Info){return y(e)?e>=U.Off&&e<=U.Trace?e:t:d(e)?Zr[e.toLowerCase()]??t:t}var U,z,Zr,at,kt=v(()=>{"use strict";ze();N();Kr();H();Fe();U=Te(["Off","Error","Warn","Info","Debug","Trace"]),z={Off:"off",Log:"log",Info:"info",Warn:"warn",Debug:"debug",Trace:"trace",Error:"error"},Zr={[z.Off]:U.Off,[z.Error]:U.Error,[z.Warn]:U.Warn,[z.Info]:U.Info,[z.Log]:U.Info,[z.Debug]:U.Debug,[z.Trace]:U.Trace};at=(()=>{let e=[ae("Logger")],t,r=[],n;var o=class{static{n=this}static{let s=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;ie(null,t={value:n},e,{kind:"class",name:n.name,metadata:s},null,r),o=n=t.value,s&&Object.defineProperty(n,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:s}),se(n,r)}#t;level;constructor(s,i=U.Info){this.#t=s.startsWith("[")?s:`[${s}]`,this.level=i}#e(s,...i){let a;if(i.length>0&&S(i[0]))try{i[0][b.$LogConfig]&&(a=i.shift())}catch{}let c=this.level;if(a){if(a.silent===!0)return;a.debug!==void 0&&(c=mo(a.debug,c))}if(c===U.Off||(Zr[s]??0)>c)return;let m=i.map(f=>{if(rt(f))return f.message;if(S(f))try{let h=f.constructor?.name??"Object";if(h==="Object"){let p=Object.keys(f);return`{ ${p.slice(0,3).join(", ")}${p.length>3?`, ... (+${p.length-3} more)`:""} }`}return`[${h}]`}catch{return"[Object]"}return String(f)}).filter(f=>!O(f)).join(" ");O(m)||console[s](`${this.#t} ${m}`)}log=(...s)=>this.#e(z.Log,...s);info=(...s)=>this.#e(z.Info,...s);warn=(...s)=>this.#e(z.Warn,...s);debug=(...s)=>this.#e(z.Debug,...s);trace=(...s)=>this.#e(z.Trace,...s);error=(...s)=>this.#e(z.Error,...s)};return o=n})()});var jr={};he(jr,{WebStore:()=>go});var Ue,go,Hr=v(()=>{"use strict";ze();Y();Se();K();N();At();Fe();Ue={Local:"local",Session:"session"},go=(()=>{let e=[ae("WebStore")],t,r=[],n;var o=class{static{n=this}static{let s=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;ie(null,t={value:n},e,{kind:"class",name:n.name,metadata:s},null,r),o=n=t.value,s&&Object.defineProperty(n,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:s}),se(n,r)}static _localInstance;static _sessionInstance;static get local(){return o._localInstance??=new o(Ue.Local)}static get session(){return o._sessionInstance??=new o(Ue.Session)}#t;#e;get#r(){if(this.#e)return this.#e;let s=this.#t===Ue.Local?"localStorage":"sessionStorage";return this.#e=$t(s)}#n(s){try{return s(this.#r)}catch{let a=this.#t===Ue.Local?"localStorage":"sessionStorage",c=Dt(a);return this.#e=c,s(c)}}constructor(s=Ue.Local){this.#t=s}get(s,i){let a=this.#n(c=>c.getItem(Z(s)));return d(a)?ge(a):i??null}set(s,i,a={merge:!0}){if(P(s))return this.clear();let c=this.get(s),l=ee(i);switch(l.type){case"Undefined":return this.del(s);case"Object":return c??={},this.#o(s,a.merge?Object.assign(c,l.value):l.value);case"Array":return c??=[],this.#o(s,a.merge?Xe(c.concat(l.value)):i);case"Map":return c??=new Map,a.merge?(l.value.forEach((m,f)=>c.set(f,m)),this.#o(s,c)):this.#o(s,l.value);case"Set":return c??=new Set,a.merge?(l.value.forEach(m=>c.add(m)),this.#o(s,c)):this.#o(s,l.value);default:return this.#o(s,l.value)}}clear(){try{this.#n(s=>s.clear())}catch(s){console.warn("[WebStore] Failed to clear storage:",s)}return this}del(...s){return s.forEach(i=>{try{this.#n(a=>a.removeItem(Z(i)))}catch(a){console.warn(`[WebStore] Failed to removeItem for key '${String(i)}':`,a)}}),this}keys(...s){return this.entries(...s).map(([i])=>i)}values(...s){return this.entries(...s).map(([,i])=>i)}entries(...s){let i=new Set(s.map(c=>Z(c))),a=[];return this.#n(c=>{for(let l=0;l<c.length;l++){let m=c.key(l);if(m!==null&&(O(s)||i.has(m))){let f=c.getItem(m);a.push([ge(m),ge(f)])}}}),a}from(s){return C(s).forEach(([i,a])=>this.set(i,a)),this}#o(s,i){try{this.#n(a=>a.setItem(Z(s),Z(i)))}catch(a){console.warn(`[WebStore] Failed to setItem for key '${String(s)}':`,a)}return this}};return o=n})()});var Vr={};he(Vr,{geoCoords:()=>qr,geoLocation:()=>Be,mapAddress:()=>ho,mapHemisphere:()=>yo,mapQuery:()=>Bt});var lt,Yr,I,Ut,X,Wt,ct,Be,qr,Bt,yo,ho,Jt=v(()=>{"use strict";vt();De();N();Mt();Gt();kt();lt={catch:!0,debug:0},Yr=be(),I={},Ut="_magma_browser_map_",X=new at("[Mapper]"),Wt=null,ct=()=>(Wt||(Wt=new Promise((e,t)=>{Yr.type===E.Browser?Promise.resolve().then(()=>(Hr(),jr)).then(({WebStore:r})=>{let n=new r("local"),o=n.get(Ut,{});F(o)&&(o.geolocation&&(!o.geolocation.coords||o.geolocation.$GeolocationPosition)&&delete o.geolocation,Object.assign(I,o)),e(n)}).catch(t):e(void 0)})),Wt),Be=(e={})=>ct().then(()=>new Promise((t,r)=>{e=Object.assign({},lt,e);let n=e.catch?t:r;typeof navigator<"u"&&"geolocation"in navigator?navigator.geolocation.getCurrentPosition(o=>{let s=I.geolocation?.coords,i=s?.latitude?.toFixed(3),a=s?.longitude?.toFixed(3),c=I.geolocation?.timestamp??0,l=o.coords.latitude.toFixed(3)!==i,m=o.coords.longitude.toFixed(3)!==a,f=c<Wr().epochMilliseconds-36e5;(l||m||f)&&(Object.assign(I,{georesponse:null}),X.info(e,"GeoLocation: device update")),Object.assign(I,{geolocation:ne(o)}),t(I.geolocation)},o=>{Object.assign(I,{geolocation:{error:o.message},georesponse:null}),n(I.geolocation)}):(Object.assign(I,{geolocation:{error:"Not Supported"},georesponse:null}),n(I.geolocation))})).finally(()=>{(I.geolocation?.error?X.error:X.info)(e,"geoLocation: ",I.geolocation),ct().then(r=>r?.set(Ut,I))}),qr=e=>new Promise((t,r)=>{if(!P(e))return t(e);Be().then(n=>P(n.error)?{location:{lat:n.coords.latitude,lng:n.coords.longitude}}:null).then(n=>t(n)).catch(n=>r(n))}),Bt=(e,t={})=>ct().then(()=>new Promise((r,n)=>{t=Object.assign({},lt,t);let o=t.catch?r:n;qr(e).then(s=>{switch(!0){case(Yr.type!==E.Browser||!window.google?.maps):throw new Error("Google Maps API not configured");case P(s):throw new Error("Cannot determine Coordinates");case P(e):{let i=I.geolocation&&I.georesponse,a=P(I.geolocation?.error)&&P(I.georesponse?.error);if(i&&a)return t.debug&&X.debug(t,"mapQuery: cache"),r(I.georesponse)}default:new window.google.maps.Geocoder().geocode(s).then(i=>r(I.georesponse=ne(i)))}}).catch(s=>{Object.assign(I,{georesponse:{error:s.message}}),o(I.georesponse)})})).finally(()=>{t.debug&&(I.georesponse?.error?X.error:X.debug)(t,"mapQuery: ",I.georesponse),ct().then(r=>r?.set(Ut,I))}),yo=(e,t={})=>Bt(e,t).then(r=>{if(t=Object.assign({},lt,t),P(r.error))return t.debug&&X.debug(t,"sphere: ",r),r.results[0].geometry.location.lat()>=0?"north":"south";let n=st();if(P(n)&&t.catch===!1)throw new Error("Cannot determine Hemisphere");return n}).catch(r=>{if(t.debug&&X.warn(t,"mapHemisphere: ",r.message),t.catch===!1)throw r;return null}),ho=(e,t={})=>Bt(e,t).then(r=>{if(!P(r.error))throw new Error(r.error);return r.results[0]}).then(({formatted_address:r,address_components:n})=>n.reduce((o,s)=>(s.types.filter(i=>i!=="political").forEach(i=>o[i]=(o[i]?o[i]+",":"").concat(s.short_name)),o),{formatted_address:r})).catch(r=>{if(t=Object.assign({},lt,t),t.debug&&X.warn(t,"mapAddress: ",r.message),t.catch===!1)throw r;return null})});var Zt={};he(Zt,{HTTP:()=>en,HttpError:()=>Q,METHOD:()=>tn,fetchHead:()=>bo,fetchRequest:()=>wo});var Kt,Xr,en,tn,Q,Qr,wo,bo,jt=v(()=>{"use strict";N();Kt=2e3,Xr=/\);?$/,en={Ok:200,PermRedirect:301,TempRedirect:302,BadRequest:400,Unauthorised:401,Forbidden:403},tn={Head:"HEAD",Get:"GET",Put:"PUT",Delete:"DELETE",Post:"POST"},Q=class extends Error{status;statusText;body;constructor(t,r,n){super(`${t}: ${r}`),this.status=t,this.statusText=r,this.body=n,this.name="HttpError"}},Qr=async(e,t)=>{let r=e.headers?.get?.("Content-Length")||e.headers?.get?.("content-length");if(r){let a=parseInt(r,10);if(y(a)&&a>t){try{await e.body?.cancel()}catch{}throw new Q(413,`Content-Length (${a}) exceeds limit (${t} bytes)`,null)}}if(!e.body){let a;if(w(e.text))a=await e.text();else if(w(e.json)){let l=await e.json();a=JSON.stringify(l)??""}else a="";let c=new TextEncoder().encode(a).byteLength;if(c>t)throw new Q(413,`Payload length (${c}) exceeds limit (${t} bytes)`,null);return a}let n=e.body.getReader(),o=new TextDecoder,s=0,i="";try{for(;;){let{done:a,value:c}=await n.read();if(a)break;if(c){if(s+=c.byteLength,s>t){try{await n.cancel()}catch{}throw new Q(413,`Streamed payload exceeded limit (${t} bytes)`,null)}i+=o.decode(c,{stream:!0})}}return i+=o.decode(),i}finally{try{n.releaseLock()}catch{}}},wo=(e,t={},r={})=>{let n={...t,signal:t.signal?AbortSignal.any([t.signal,AbortSignal.timeout(r.timeout??Kt)]):AbortSignal.timeout(r.timeout??Kt)};return fetch(e,n).then(async o=>{if(o.ok){let a=(o.headers?.get?.("Content-Type")||o.headers?.get?.("content-type")||"").includes("application/json");if(x(r.maxBytes)){let c=await Qr(o,r.maxBytes);if(r.rawText)return c;if(r.prefix){let l=c.startsWith(r.prefix)?c.substring(r.prefix.length).replace(Xr,""):c;return JSON.parse(l)}if(a)return JSON.parse(c);try{return JSON.parse(c)}catch{return c}}if(r.rawText)return w(o.text)?await o.text():"";if(r.prefix){let c=await o.text(),l=c.startsWith(r.prefix)?c.substring(r.prefix.length).replace(Xr,""):c;return JSON.parse(l)}if(w(o.text)){let c=await o.text();try{return JSON.parse(c)}catch{return c}}return w(o.json)?await o.json():""}let s=null;try{let i=x(r.maxBytes)?await Qr(o,r.maxBytes):w(o.text)?await o.text():"";try{s=JSON.parse(i)}catch{s=i}}catch(i){if(i instanceof Q&&i.status===413)throw i}throw new Q(o.status,o.statusText,s)})},bo=e=>{let t=AbortSignal.timeout(Kt),r={method:tn.Head,signal:t};return fetch(e,r).then(({ok:n,status:o,statusText:s,headers:i})=>{if(n||o===en.Forbidden)return{status:o,headers:i};throw new Q(o,s,null)})}});var nn={};he(nn,{serverGeoCoords:()=>ut,serverGeoLocation:()=>Je,serverMapHemisphere:()=>Vt});var rn,qt,Ht,Yt,So,Je,ut,Vt,Xt=v(()=>{"use strict";N();Gt();kt();rn=new at("[ServerMapper]"),qt="https://ipwho.is",Ht={endpoint:`${qt}/`,timeout:3e3,catch:!0,debug:0},Yt=null,So=()=>(Yt||(Yt=Promise.resolve().then(()=>(jt(),Zt))),Yt),Je=async(e={})=>{let t={...Ht,...e},r=t.catch!==!1;try{let n=t.endpoint||Ht.endpoint;if(d(t.ip)){let f=encodeURIComponent(t.ip.trim());if((n.endsWith("/")?n.slice(0,-1):n)===qt)n=`${qt}/${f}`;else if(n.includes("{ip}"))n=n.replace("{ip}",f);else if(f!=="")throw new Error(`Custom endpoint must include an '{ip}' placeholder to resolve a specific IP: ${n}`)}let o=t.timeout??Ht.timeout,{fetchRequest:s}=await So(),i=await s(n,{},{...y(o)?{timeout:o}:{},maxBytes:64*1024});if(typeof i!="object"||P(i))throw new Error("Geolocation lookup failed");if(i.status==="fail"||i.success===!1)throw new Error(i.message||i.reason||"Geolocation lookup failed");let a=y(i.lat)?i.lat:i.latitude,c=y(i.lon)?i.lon:i.lng??i.longitude;if(!y(a)||!y(c))throw new Error("Geolocation lookup failed");let l=d(i.timezone)?i.timezone:i.timezone?.id??i.timeZone,m={lat:a,lng:c,latitude:a,longitude:c,...d(i.country||i.countryName||i.country_name)?{country:i.country||i.countryName||i.country_name}:{},...d(i.city||i.cityName||i.city_name)?{city:i.city||i.cityName||i.city_name}:{},...d(l)?{timezone:l}:{},...d(i.query||i.ip||i.ip_address)?{query:i.query||i.ip||i.ip_address}:{},status:"success"};return t.debug&&rn.info(t,"serverGeoLocation success: ",m),m}catch(n){let o=n?.message||"Server geolocation error";if(t.debug&&rn.error(t,"serverGeoLocation error: ",o),!r)throw n;return{error:o,status:"fail"}}},ut=async(e,t)=>{if(!P(e)){let n=e.latitude??e.lat,o=e.longitude??e.lng??e.lon??e.long;if(y(n)&&y(o))return{lat:n,lng:o}}let r=await Je(t);return P(r.error)&&y(r.lat)&&y(r.lng)?{lat:r.lat,lng:r.lng}:null},Vt=async(e,t)=>{let r=await ut(e,t);return r?r.lat>=0?"north":"south":st()??null}});var fn=cr((ra,un)=>{"use strict";un.exports=window.undefined});var Po={};he(Po,{GEO_PROPERTIES:()=>Ze,GeoPlugin:()=>ve,NON_GEO_CONTROL_KEYS:()=>pn,clearStashedGeo:()=>dt,coerceGeo:()=>Oe,default:()=>mn,forwardGeocode:()=>ir,geoLocation:()=>Be,geoLookup:()=>gt,geoPlugin:()=>dn,getGeoProvider:()=>or,getStashedGeo:()=>_e,resolveCulturalLocale:()=>sr.resolveCulturalLocale,resolveGeoCoordinates:()=>je,reverseGeocode:()=>yt,serverGeoCoords:()=>ut,serverGeoLocation:()=>Je,serverMapHemisphere:()=>Vt,setGeoProvider:()=>mt,stashGeo:()=>pt});var M={};he(M,{definePlugin:()=>bt,defineTerm:()=>xn});Pe(M,ht(wt()));var qe=ht(wt()),bt=e=>(0,qe.definePlugin)({...e,version:"1.4.0"}),xn=e=>(0,qe.defineTerm)({...e,version:"1.4.0"});De();N();At();N();function ce(...e){for(let t of e){let r=w(t)?t():t;if(r!==void 0)return r}}It();var ye="_magma_geo_",er=1440*60*1e3,xo="https://api.bigdatacloud.net/data/reverse-geocode-client",To=3e3,Eo=64*1024,Oo=1e3,Ze=["latitude","lat","longitude","lng","lon","long","elevation","sphere","country","city","timezone","tz"],sn=e=>{if(!x(e)||mr(e))return NaN;if(d(e)){let t=e.trim();return t.length>0?Number(t):NaN}return y(e)?e:NaN},tr=(e,t=!0)=>{let r=sn(e);if(!(!y(r)||r<-90||r>90))return t?Math.round(r*1e3)/1e3:r},rr=(e,t=!0)=>{let r=sn(e);if(!(!y(r)||r<-180||r>180))return t?Math.round(r*1e3)/1e3:r},Ke=(e,t,r=!0)=>{let n=tr(e,r),o=rr(t,r);return x(n)&&x(o)?{lat:n,lng:o}:void 0},an=e=>y(e)?Math.round(e*1e3)/1e3:void 0,Ee=(e,t)=>{if(e==="north"||e==="south"||e==="equator")return e;if(y(t))return t>.001?"north":t<-.001?"south":"equator"},cn=(e,t=!0)=>{if(d(e)&&e.includes(",")){let r=e.split(",").map(n=>n.trim());return r.length>=2?Ke(r[0],r[1],t):void 0}return Array.isArray(e)&&e.length>=2?Ke(e[0],e[1],t):void 0},ue=(e,t)=>{let r="lat"in e?e.lat:e.latitude,n="lng"in e?e.lng:e.longitude,o=tr(r),s=rr(n),i=Ee(t?.sphere,o??r),a=an(t?.elevation);return{latitude:o??r,longitude:s??n,...i?{sphere:i}:{},...d(t?.city)&&!O(t.city)?{city:t.city.trim()}:{},...d(t?.country)&&!O(t.country)?{country:t.country.trim()}:{},...a!==void 0?{elevation:a}:{},...d(t?.timezone)&&!O(t.timezone)?{timezone:t.timezone.trim()}:{}}},_o=(e,t=Ze)=>{let r={};if(F(e))for(let n of Object.keys(e))J(n)&&!t.includes(n)&&(r[n]=e[n]);return r},Oe=e=>{let t=cn(e);if(t)return ue(t);if(te(e))return;let r=e.geo??e,n=e.config?.geo??e.config,o=ce(r?.latitude,r?.lat,e.latitude,e.lat,n?.latitude,n?.lat),s=ce(r?.longitude,r?.lng,r?.lon,r?.long,e.longitude,e.lng,e.lon,e.long,n?.longitude,n?.lng,n?.lon,n?.long),i=ce(r?.elevation,e.elevation,n?.elevation),a=ce(r?.sphere,e.sphere,n?.sphere),c=ce(r?.country,e.country,n?.country),l=ce(r?.city,e.city,n?.city),m=ce(r?.timezone,r?.tz,e.timezone,e.tz,n?.timezone,n?.tz),f={},h=tr(o),p=rr(s);h!==void 0&&(f.latitude=h),p!==void 0&&(f.longitude=p);let R=an(i);R!==void 0&&(f.elevation=R);let g=Ee(a,f.latitude);g&&(f.sphere=g),d(c)&&(f.country=c),d(l)&&(f.city=l),d(m)&&(f.timezone=m);let u=F(e.geo)?e.geo:F(e.config?.geo)?e.config.geo:void 0,T=_o(u);return Object.assign(f,T),Object.keys(f).length>0?f:void 0},nr=e=>{if(d(e)&&!O(e)){let t=e.trim();return t.startsWith(ye)?t:`${ye}:${t}`}if(e&&S(e)){let t=e.provider??L,r=t&&d(t.name)&&!O(t.name)?`provider:${t.name}`:void 0,n=e.key??e.ip??e.query;if(d(n)&&!O(n)){let o=n.trim();return r?`${ye}:${r}:${o}`:`${ye}:${o}`}if(r)return`${ye}:${r}`}else if(L&&d(L.name)&&!O(L.name))return`${ye}:provider:${L.name}`;return ye},_e=e=>{let t=nr(e);try{let r=Mr(t)??($(globalThis.localStorage?.getItem)?globalThis.localStorage.getItem(t):void 0);if(!r)return;let n=d(r)&&(r.startsWith("{")||r.startsWith("["))?JSON.parse(r):r;if(S(n)&&y(n._expires)&&Date.now()>n._expires){dt(e);return}let o=cn(n);if(o)return ue(o);if(S(n)){let s=n.geolocation?.coords??n.coords??n,i=s?.latitude??s?.lat,a=s?.longitude??s?.lng??s?.lon??s?.long,c=Ke(i,a);if(c){let l=n.elevation??s.elevation;return ue(c,{elevation:l,sphere:n.sphere,country:n.country,city:n.city,timezone:n.timezone})}}}catch{}},pt=(e,t=er,r)=>{let n=nr(r),o=y(t)&&t>0?{...e,_expires:Date.now()+t}:e;Ct(n,o,{ttl:t})},dt=e=>{let t=nr(e);Ct(t,void 0)},L;function mt(e){L=e}function or(){return L}var gt=async(e={})=>{let t=e.provider??L;if(e.refresh!==!0){let a=_e(e);if(a&&y(a.latitude)&&y(a.longitude)){let{latitude:c,longitude:l,...m}=a;return{...m,status:"cached",lat:c,lng:l,latitude:c,longitude:l}}}let n;if(t&&w(t.lookup))try{let a=await t.lookup(e);if(a){if(n=a,a.error&&e.fallback===!1)return a}else if(e.fallback===!1)return{error:"Provider returned null and fallback is disabled"}}catch(a){if(e.fallback===!1)return{error:a?.message??"Provider lookup failed"}}if(!n||n.error){if(e.fallback===!1&&(t||n?.error))return n&&n.error?n:{error:"Geolocation resolution failed and fallback is disabled"};let{type:a}=be();switch(a){case E.Browser:{let{geoLocation:c}=await Promise.resolve().then(()=>(Jt(),Vr)),l=await c(e);if(l.error)return{error:l.error};let m=l.coords?.latitude,f=l.coords?.longitude;n={...l,lat:m,lng:f,latitude:m,longitude:f};break}case E.WebWorker:case E.NodeJS:case E.Deno:default:{let{serverGeoLocation:c}=await Promise.resolve().then(()=>(Xt(),nn));n=await c(e);break}}}let o=n.latitude??n.lat,s=n.longitude??n.lng,i=Ke(o,s);if(P(n.error)&&i){let a=Ee(n.sphere,i.lat);n.lat=i.lat,n.lng=i.lng,n.latitude=i.lat,n.longitude=i.lng,n.sphere=a;let c=ue(i,n);try{let l=y(e.ttl)?e.ttl:er;pt(c,l,e)}catch{}}return n},Qt=null,vo=()=>(Qt||(Qt=Promise.resolve().then(()=>(jt(),Zt))),Qt),ft=new Ge(Oo,er),ln=e=>{try{let t=new URL(e);return t.protocol==="https:"||t.hostname==="localhost"||t.hostname==="127.0.0.1"}catch{return!1}};var on=(e,t,r)=>{let n=`${e.toFixed(2)},${t.toFixed(2)}`;if(d(r)&&!O(r))return`${n}:${r.trim()}`;if(S(r)){let s=Object.hasOwn(r,"provider")?r.provider:L,i=s&&d(s.name)&&!O(s.name)?s.name.trim():void 0,a=d(r.reverseEndpoint??r.reverseGeoEndpoint)&&!O(r.reverseEndpoint??r.reverseGeoEndpoint)?(r.reverseEndpoint??r.reverseGeoEndpoint).trim():void 0,c=a&&ln(a)?a:void 0;if(i&&c)return`${n}:${i}:${c}`;if(i)return`${n}:${i}`;if(c)return`${n}:${c}`}else if(L&&d(L.name)&&!O(L.name))return`${n}:${L.name.trim()}`;return n};async function yt(e,t){let r=Oe(e);if(!r||!y(r.latitude)||!y(r.longitude))return null;let n=r.latitude,o=r.longitude,s=on(n,o,t),i=t?.refresh!==!0;if(i){let p=ft.get(s);if(p)return{...p,latitude:n,longitude:o,sphere:Ee(p.sphere,n),elevation:y(p.elevation)?p.elevation:r.elevation,timezone:d(p.timezone)?p.timezone:r.timezone}}let a=S(t)&&Object.hasOwn(t,"provider"),c=a?t.provider:L;if(c&&w(c.reverseGeocode))try{let p=await c.reverseGeocode(r,t);if(p&&S(p)){let R=ue({lat:n,lng:o},{sphere:p.sphere,city:p.city,country:p.country,elevation:y(p.elevation)?p.elevation:r.elevation,timezone:d(p.timezone)?p.timezone:r.timezone}),g=ue({lat:n,lng:o},{sphere:p.sphere,city:p.city,country:p.country,timezone:p.timezone});return ft.set(s,g),R}if(t?.fallback===!1)return null}catch(p){if(t?.fallback===!1)throw p}else if(t?.fallback===!1&&(c||a))return null;let l=t?.reverseEndpoint??t?.reverseGeoEndpoint;if(G(l)){let p=l.trim();if(!ln(p))return t?.fallback===!1?null:r}let m=G(l)?l.trim():void 0,f=on(n,o,m??"default");if(i){let p=ft.get(f);if(p)return{...p,latitude:n,longitude:o,sphere:Ee(p.sphere,n),elevation:y(p.elevation)?p.elevation:r.elevation,timezone:d(p.timezone)?p.timezone:r.timezone}}let h;if(m)if(/\{(?:latitude|lat|longitude|lng|lon)\}/i.test(m))h=m.replace(/\{latitude\}/gi,encodeURIComponent(n)).replace(/\{lat\}/gi,encodeURIComponent(n)).replace(/\{longitude\}/gi,encodeURIComponent(o)).replace(/\{lng\}/gi,encodeURIComponent(o)).replace(/\{lon\}/gi,encodeURIComponent(o));else{let p=m.includes("?")?"&":"?";h=`${m}${p}latitude=${encodeURIComponent(n)}&longitude=${encodeURIComponent(o)}`}else h=`${xo}?latitude=${n}&longitude=${o}&localityLanguage=en`;try{let p=y(t?.timeout)&&t.timeout>0?t.timeout:To,R=y(t?.maxBytes)&&t.maxBytes>0?t.maxBytes:Eo,{fetchRequest:g}=await vo(),u=await g(h,{},{timeout:p,maxBytes:R});if(S(u)){let T=G(u.city)?u.city.trim():G(u.locality)?u.locality.trim():G(u.principalSubdivision)?u.principalSubdivision.trim():void 0,D=G(u.countryCode)?u.countryCode.trim():G(u.countryName)?u.countryName.trim():void 0,_=ue({lat:n,lng:o},{city:T,country:D,elevation:r.elevation,timezone:r.timezone});if(G(T)||G(D)){let j=ue({lat:n,lng:o},{city:T,country:D});ft.set(f,j)}return _}}catch{}return r}async function ir(e,t){let r=t?.provider??L;return r&&w(r.forwardGeocode)?r.forwardGeocode(e,t):null}var je=async(e,t={})=>{let r=Oe(e);if(r&&y(r.latitude)&&y(r.longitude)){if((t.reverse===!0||t.autoReverse===!0)&&(!r.city||!r.country)){let a=await yt(r,t);if(a)return{...a,...r,city:G(r.city)?r.city:a.city,country:G(r.country)?r.country:a.country,lat:r.latitude,lng:r.longitude,latitude:r.latitude,longitude:r.longitude}}return{...r,lat:r.latitude,lng:r.longitude}}let n=t.refresh===!0?void 0:_e(t);if(n&&y(n.latitude)&&y(n.longitude))return{...n,lat:n.latitude,lng:n.longitude};let o=await gt(t),s=Ke(o.lat,o.lng);if(P(o.error)&&s){let i=Ee(o.sphere,s.lat);return{...o,lat:s.lat,lng:s.lng,latitude:s.lat,longitude:s.lng,sphere:i}}return null};var sr=ht(fn(),1);Xt();Jt();N();var pn=["setTimezone","setLocale","refresh","ttl","endpoint","timeout","maxBytes","highAccuracy","catch","debug","geo","provider","fallback","reverse","autoReverse"];var ve=bt({name:"geo",install(e,t){let r=e||this;t?.provider&&mt(t.provider);let n=(o,s)=>{let i=r.config?.pluginOptions?.geo,a=s?.config?.pluginOptions?.geo;return{...S(t)?t:{},...S(i)?i:{},...S(a)?a:{},...S(o)?o:{}}};Object.hasOwn(r,"geo")||Object.defineProperty(r,"geo",{value:(0,M.deepFreeze)({lookup:s=>gt(n(s)),resolve:(s,i)=>je(s,n(i,s)),coerce:Oe,stash:pt,clear:dt,get:_e,setProvider:mt,getProvider:or,reverse:(s,i)=>yt(s,n(i)),forward:(s,i)=>ir(s,n(i)),server:Je,browser:Be,get current(){return _e()??r.config?.geo}}),writable:!1,configurable:!1,enumerable:!1}),e.prototype.geoLocate=async function(o){let s=n(o,this),i=s?.setTimezone!==!1,a=s?.setLocale??!0,c=await je(this,s);if(c){let l=S(this.config.geo)?this.config.geo:{},m={};for(let _ of Object.keys(l))J(_)&&!Ze.includes(_)&&(m[_]=l[_]);let f=Oe(o)??{};if(S(o))for(let _ of Object.keys(o))J(_)&&!pn.includes(_)&&(Ze.includes(_)||(m[_]=o[_]));let h=y(c?.elevation)?c.elevation:y(l.elevation)?l.elevation:void 0,p={...m,...c,...y(h)?{elevation:h}:{},...f},R=p.latitude,g=p.longitude;y(R)&&(p.latitude=Math.round(R*1e3)/1e3),y(g)&&(p.longitude=Math.round(g*1e3)/1e3),!p.sphere&&y(R)&&(p.sphere=R>.001?"north":R<-.001?"south":"equator");let u=this,T=p.timezone;i&&d(T)&&!O(T)&&(u=this.set({timeZone:T}));let D=p.country||d(a)?(0,sr.resolveCulturalLocale)(this.locale??this.config.locale,p.country,a):void 0;return new e(u,{...u.config,...D?{locale:D}:{},geo:(0,M.deepFreeze)(p),...p.sphere?{sphere:p.sphere}:{}})}return this},e.prototype.geoLookup=async function(o){return je(this,n(o,this))}}}),dn=ve,mn=ve;(0,M.autoInstall)(ve);return Sn(Po);})();
|