@kitelev/exocortex-cli 15.170.0 → 15.170.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +44 -44
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
- // @kitelev/exocortex-cli v15.170.0
2
+ // @kitelev/exocortex-cli v15.170.1
3
3
  // CLI tool for Exocortex knowledge management system - SPARQL queries, task management, and more
4
4
  // License: MIT
5
5
 
6
- "use strict";var iL=Object.create;var Pu=Object.defineProperty;var sL=Object.getOwnPropertyDescriptor;var aL=Object.getOwnPropertyNames;var oL=Object.getPrototypeOf,cL=Object.prototype.hasOwnProperty;var o=(n,e)=>Pu(n,"name",{value:e,configurable:!0});var lL=(n,e)=>()=>(n&&(e=n(n=0)),e);var S=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),Zy=(n,e)=>{for(var t in e)Pu(n,t,{get:e[t],enumerable:!0})},J2=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of aL(e))!cL.call(n,i)&&i!==t&&Pu(n,i,{get:()=>e[i],enumerable:!(r=sL(e,i))||r.enumerable});return n};var K=(n,e,t)=>(t=n!=null?iL(oL(n)):{},J2(e||!n||!n.__esModule?Pu(t,"default",{value:n,enumerable:!0}):t,n)),Yd=n=>J2(Pu({},"__esModule",{value:!0}),n);var Xd=S(()=>{var Z2;(function(n){(function(e){var t=typeof globalThis=="object"?globalThis:typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:c(),r=i(n);typeof t.Reflect<"u"&&(r=i(t.Reflect,r)),e(r,t),typeof t.Reflect>"u"&&(t.Reflect=n);function i(l,u){return function(f,d){Object.defineProperty(l,f,{configurable:!0,writable:!0,value:d}),u&&u(f,d)}}o(i,"makeExporter");function s(){try{return Function("return this;")()}catch{}}o(s,"functionThis");function a(){try{return(0,eval)("(function() { return this; })()")}catch{}}o(a,"indirectEvalThis");function c(){return s()||a()}o(c,"sloppyModeThis")})(function(e,t){var r=Object.prototype.hasOwnProperty,i=typeof Symbol=="function",s=i&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",a=i&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",c=typeof Object.create=="function",l={__proto__:[]}instanceof Array,u=!c&&!l,f={create:c?function(){return $e(Object.create(null))}:l?function(){return $e({__proto__:null})}:function(){return $e({})},has:u?function(E,T){return r.call(E,T)}:function(E,T){return T in E},get:u?function(E,T){return r.call(E,T)?E[T]:void 0}:function(E,T){return E[T]}},d=Object.getPrototypeOf(Function),h=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:we(),p=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:et(),y=typeof WeakMap=="function"?WeakMap:Qe(),v=i?Symbol.for("@reflect-metadata:registry"):void 0,w=Se(),b=ve(w);function A(E,T,x,O){if(H(x)){if(!Ve(E))throw new TypeError;if(!Ue(T))throw new TypeError;return Ye(E,T)}else{if(!Ve(E))throw new TypeError;if(!ne(T))throw new TypeError;if(!ne(O)&&!H(O)&&!Re(O))throw new TypeError;return Re(O)&&(O=void 0),x=Ce(x),at(E,T,x,O)}}o(A,"decorate"),e("decorate",A);function I(E,T){function x(O,Z){if(!ne(O))throw new TypeError;if(!H(Z)&&!He(Z))throw new TypeError;se(E,T,O,Z)}return o(x,"decorator"),x}o(I,"metadata"),e("metadata",I);function j(E,T,x,O){if(!ne(x))throw new TypeError;return H(O)||(O=Ce(O)),se(E,T,x,O)}o(j,"defineMetadata"),e("defineMetadata",j);function V(E,T,x){if(!ne(T))throw new TypeError;return H(x)||(x=Ce(x)),Ot(E,T,x)}o(V,"hasMetadata"),e("hasMetadata",V);function te(E,T,x){if(!ne(T))throw new TypeError;return H(x)||(x=Ce(x)),ot(E,T,x)}o(te,"hasOwnMetadata"),e("hasOwnMetadata",te);function z(E,T,x){if(!ne(T))throw new TypeError;return H(x)||(x=Ce(x)),lt(E,T,x)}o(z,"getMetadata"),e("getMetadata",z);function G(E,T,x){if(!ne(T))throw new TypeError;return H(x)||(x=Ce(x)),Xe(E,T,x)}o(G,"getOwnMetadata"),e("getOwnMetadata",G);function F(E,T){if(!ne(E))throw new TypeError;return H(T)||(T=Ce(T)),U(E,T)}o(F,"getMetadataKeys"),e("getMetadataKeys",F);function $(E,T){if(!ne(E))throw new TypeError;return H(T)||(T=Ce(T)),ut(E,T)}o($,"getOwnMetadataKeys"),e("getOwnMetadataKeys",$);function re(E,T,x){if(!ne(T))throw new TypeError;if(H(x)||(x=Ce(x)),!ne(T))throw new TypeError;H(x)||(x=Ce(x));var O=ce(T,x,!1);return H(O)?!1:O.OrdinaryDeleteMetadata(E,T,x)}o(re,"deleteMetadata"),e("deleteMetadata",re);function Ye(E,T){for(var x=E.length-1;x>=0;--x){var O=E[x],Z=O(T);if(!H(Z)&&!Re(Z)){if(!Ue(Z))throw new TypeError;T=Z}}return T}o(Ye,"DecorateConstructor");function at(E,T,x,O){for(var Z=E.length-1;Z>=0;--Z){var _t=E[Z],Ct=_t(T,x,O);if(!H(Ct)&&!Re(Ct)){if(!ne(Ct))throw new TypeError;O=Ct}}return O}o(at,"DecorateProperty");function Ot(E,T,x){var O=ot(E,T,x);if(O)return!0;var Z=ue(T);return Re(Z)?!1:Ot(E,Z,x)}o(Ot,"OrdinaryHasMetadata");function ot(E,T,x){var O=ce(T,x,!1);return H(O)?!1:Be(O.OrdinaryHasOwnMetadata(E,T,x))}o(ot,"OrdinaryHasOwnMetadata");function lt(E,T,x){var O=ot(E,T,x);if(O)return Xe(E,T,x);var Z=ue(T);if(!Re(Z))return lt(E,Z,x)}o(lt,"OrdinaryGetMetadata");function Xe(E,T,x){var O=ce(T,x,!1);if(!H(O))return O.OrdinaryGetOwnMetadata(E,T,x)}o(Xe,"OrdinaryGetOwnMetadata");function se(E,T,x,O){var Z=ce(x,O,!0);Z.OrdinaryDefineOwnMetadata(E,T,x,O)}o(se,"OrdinaryDefineOwnMetadata");function U(E,T){var x=ut(E,T),O=ue(E);if(O===null)return x;var Z=U(O,T);if(Z.length<=0)return x;if(x.length<=0)return Z;for(var _t=new p,Ct=[],De=0,q=x;De<q.length;De++){var W=q[De],Q=_t.has(W);Q||(_t.add(W),Ct.push(W))}for(var Y=0,Ie=Z;Y<Ie.length;Y++){var W=Ie[Y],Q=_t.has(W);Q||(_t.add(W),Ct.push(W))}return Ct}o(U,"OrdinaryMetadataKeys");function ut(E,T){var x=ce(E,T,!1);return x?x.OrdinaryOwnMetadataKeys(E,T):[]}o(ut,"OrdinaryOwnMetadataKeys");function pt(E){if(E===null)return 1;switch(typeof E){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return E===null?1:6;default:return 6}}o(pt,"Type");function H(E){return E===void 0}o(H,"IsUndefined");function Re(E){return E===null}o(Re,"IsNull");function qe(E){return typeof E=="symbol"}o(qe,"IsSymbol");function ne(E){return typeof E=="object"?E!==null:typeof E=="function"}o(ne,"IsObject");function We(E,T){switch(pt(E)){case 0:return E;case 1:return E;case 2:return E;case 3:return E;case 4:return E;case 5:return E}var x=T===3?"string":T===5?"number":"default",O=ge(E,s);if(O!==void 0){var Z=O.call(E,x);if(ne(Z))throw new TypeError;return Z}return Ge(E,x==="default"?"number":x)}o(We,"ToPrimitive");function Ge(E,T){if(T==="string"){var x=E.toString;if(Pe(x)){var O=x.call(E);if(!ne(O))return O}var Z=E.valueOf;if(Pe(Z)){var O=Z.call(E);if(!ne(O))return O}}else{var Z=E.valueOf;if(Pe(Z)){var O=Z.call(E);if(!ne(O))return O}var _t=E.toString;if(Pe(_t)){var O=_t.call(E);if(!ne(O))return O}}throw new TypeError}o(Ge,"OrdinaryToPrimitive");function Be(E){return!!E}o(Be,"ToBoolean");function ze(E){return""+E}o(ze,"ToString");function Ce(E){var T=We(E,3);return qe(T)?T:ze(T)}o(Ce,"ToPropertyKey");function Ve(E){return Array.isArray?Array.isArray(E):E instanceof Object?E instanceof Array:Object.prototype.toString.call(E)==="[object Array]"}o(Ve,"IsArray");function Pe(E){return typeof E=="function"}o(Pe,"IsCallable");function Ue(E){return typeof E=="function"}o(Ue,"IsConstructor");function He(E){switch(pt(E)){case 3:return!0;case 4:return!0;default:return!1}}o(He,"IsPropertyKey");function de(E,T){return E===T||E!==E&&T!==T}o(de,"SameValueZero");function ge(E,T){var x=E[T];if(x!=null){if(!Pe(x))throw new TypeError;return x}}o(ge,"GetMethod");function ye(E){var T=ge(E,a);if(!Pe(T))throw new TypeError;var x=T.call(E);if(!ne(x))throw new TypeError;return x}o(ye,"GetIterator");function he(E){return E.value}o(he,"IteratorValue");function pe(E){var T=E.next();return T.done?!1:T}o(pe,"IteratorStep");function me(E){var T=E.return;T&&T.call(E)}o(me,"IteratorClose");function ue(E){var T=Object.getPrototypeOf(E);if(typeof E!="function"||E===d||T!==d)return T;var x=E.prototype,O=x&&Object.getPrototypeOf(x);if(O==null||O===Object.prototype)return T;var Z=O.constructor;return typeof Z!="function"||Z===E?T:Z}o(ue,"OrdinaryGetPrototypeOf");function _e(){var E;!H(v)&&typeof t.Reflect<"u"&&!(v in t.Reflect)&&typeof t.Reflect.defineMetadata=="function"&&(E=be(t.Reflect));var T,x,O,Z=new y,_t={registerProvider:Ct,getProvider:q,setProvider:Q};return _t;function Ct(Y){if(!Object.isExtensible(_t))throw new Error("Cannot add provider to a frozen registry.");switch(!0){case E===Y:break;case H(T):T=Y;break;case T===Y:break;case H(x):x=Y;break;case x===Y:break;default:O===void 0&&(O=new p),O.add(Y);break}}function De(Y,Ie){if(!H(T)){if(T.isProviderFor(Y,Ie))return T;if(!H(x)){if(x.isProviderFor(Y,Ie))return T;if(!H(O))for(var rt=ye(O);;){var nt=pe(rt);if(!nt)return;var Rr=he(nt);if(Rr.isProviderFor(Y,Ie))return me(rt),Rr}}}if(!H(E)&&E.isProviderFor(Y,Ie))return E}function q(Y,Ie){var rt=Z.get(Y),nt;return H(rt)||(nt=rt.get(Ie)),H(nt)&&(nt=De(Y,Ie),H(nt)||(H(rt)&&(rt=new h,Z.set(Y,rt)),rt.set(Ie,nt))),nt}function W(Y){if(H(Y))throw new TypeError;return T===Y||x===Y||!H(O)&&O.has(Y)}function Q(Y,Ie,rt){if(!W(rt))throw new Error("Metadata provider not registered.");var nt=q(Y,Ie);if(nt!==rt){if(!H(nt))return!1;var Rr=Z.get(Y);H(Rr)&&(Rr=new h,Z.set(Y,Rr)),Rr.set(Ie,rt)}return!0}}o(_e,"CreateMetadataRegistry");function Se(){var E;return!H(v)&&ne(t.Reflect)&&Object.isExtensible(t.Reflect)&&(E=t.Reflect[v]),H(E)&&(E=_e()),!H(v)&&ne(t.Reflect)&&Object.isExtensible(t.Reflect)&&Object.defineProperty(t.Reflect,v,{enumerable:!1,configurable:!1,writable:!1,value:E}),E}o(Se,"GetOrCreateMetadataRegistry");function ve(E){var T=new y,x={isProviderFor:o(function(W,Q){var Y=T.get(W);return H(Y)?!1:Y.has(Q)},"isProviderFor"),OrdinaryDefineOwnMetadata:Ct,OrdinaryHasOwnMetadata:Z,OrdinaryGetOwnMetadata:_t,OrdinaryOwnMetadataKeys:De,OrdinaryDeleteMetadata:q};return w.registerProvider(x),x;function O(W,Q,Y){var Ie=T.get(W),rt=!1;if(H(Ie)){if(!Y)return;Ie=new h,T.set(W,Ie),rt=!0}var nt=Ie.get(Q);if(H(nt)){if(!Y)return;if(nt=new h,Ie.set(Q,nt),!E.setProvider(W,Q,x))throw Ie.delete(Q),rt&&T.delete(W),new Error("Wrong provider for target.")}return nt}o(O,"GetOrCreateMetadataMap");function Z(W,Q,Y){var Ie=O(Q,Y,!1);return H(Ie)?!1:Be(Ie.has(W))}o(Z,"OrdinaryHasOwnMetadata");function _t(W,Q,Y){var Ie=O(Q,Y,!1);if(!H(Ie))return Ie.get(W)}o(_t,"OrdinaryGetOwnMetadata");function Ct(W,Q,Y,Ie){var rt=O(Y,Ie,!0);rt.set(W,Q)}o(Ct,"OrdinaryDefineOwnMetadata");function De(W,Q){var Y=[],Ie=O(W,Q,!1);if(H(Ie))return Y;for(var rt=Ie.keys(),nt=ye(rt),Rr=0;;){var bn=pe(nt);if(!bn)return Y.length=Rr,Y;var kn=he(bn);try{Y[Rr]=kn}catch(sn){try{me(nt)}finally{throw sn}}Rr++}}o(De,"OrdinaryOwnMetadataKeys");function q(W,Q,Y){var Ie=O(Q,Y,!1);if(H(Ie)||!Ie.delete(W))return!1;if(Ie.size===0){var rt=T.get(Q);H(rt)||(rt.delete(Y),rt.size===0&&T.delete(rt))}return!0}o(q,"OrdinaryDeleteMetadata")}o(ve,"CreateMetadataProvider");function be(E){var T=E.defineMetadata,x=E.hasOwnMetadata,O=E.getOwnMetadata,Z=E.getOwnMetadataKeys,_t=E.deleteMetadata,Ct=new y,De={isProviderFor:o(function(q,W){var Q=Ct.get(q);return!H(Q)&&Q.has(W)?!0:Z(q,W).length?(H(Q)&&(Q=new p,Ct.set(q,Q)),Q.add(W),!0):!1},"isProviderFor"),OrdinaryDefineOwnMetadata:T,OrdinaryHasOwnMetadata:x,OrdinaryGetOwnMetadata:O,OrdinaryOwnMetadataKeys:Z,OrdinaryDeleteMetadata:_t};return De}o(be,"CreateFallbackProvider");function ce(E,T,x){var O=w.getProvider(E,T);if(!H(O))return O;if(x){if(w.setProvider(E,T,b))return b;throw new Error("Illegal state.")}}o(ce,"GetMetadataProvider");function we(){var E={},T=[],x=(function(){function De(q,W,Q){this._index=0,this._keys=q,this._values=W,this._selector=Q}return o(De,"MapIterator"),De.prototype["@@iterator"]=function(){return this},De.prototype[a]=function(){return this},De.prototype.next=function(){var q=this._index;if(q>=0&&q<this._keys.length){var W=this._selector(this._keys[q],this._values[q]);return q+1>=this._keys.length?(this._index=-1,this._keys=T,this._values=T):this._index++,{value:W,done:!1}}return{value:void 0,done:!0}},De.prototype.throw=function(q){throw this._index>=0&&(this._index=-1,this._keys=T,this._values=T),q},De.prototype.return=function(q){return this._index>=0&&(this._index=-1,this._keys=T,this._values=T),{value:q,done:!0}},De})(),O=(function(){function De(){this._keys=[],this._values=[],this._cacheKey=E,this._cacheIndex=-2}return o(De,"Map"),Object.defineProperty(De.prototype,"size",{get:o(function(){return this._keys.length},"get"),enumerable:!0,configurable:!0}),De.prototype.has=function(q){return this._find(q,!1)>=0},De.prototype.get=function(q){var W=this._find(q,!1);return W>=0?this._values[W]:void 0},De.prototype.set=function(q,W){var Q=this._find(q,!0);return this._values[Q]=W,this},De.prototype.delete=function(q){var W=this._find(q,!1);if(W>=0){for(var Q=this._keys.length,Y=W+1;Y<Q;Y++)this._keys[Y-1]=this._keys[Y],this._values[Y-1]=this._values[Y];return this._keys.length--,this._values.length--,de(q,this._cacheKey)&&(this._cacheKey=E,this._cacheIndex=-2),!0}return!1},De.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=E,this._cacheIndex=-2},De.prototype.keys=function(){return new x(this._keys,this._values,Z)},De.prototype.values=function(){return new x(this._keys,this._values,_t)},De.prototype.entries=function(){return new x(this._keys,this._values,Ct)},De.prototype["@@iterator"]=function(){return this.entries()},De.prototype[a]=function(){return this.entries()},De.prototype._find=function(q,W){if(!de(this._cacheKey,q)){this._cacheIndex=-1;for(var Q=0;Q<this._keys.length;Q++)if(de(this._keys[Q],q)){this._cacheIndex=Q;break}}return this._cacheIndex<0&&W&&(this._cacheIndex=this._keys.length,this._keys.push(q),this._values.push(void 0)),this._cacheIndex},De})();return O;function Z(De,q){return De}function _t(De,q){return q}function Ct(De,q){return[De,q]}}o(we,"CreateMapPolyfill");function et(){var E=(function(){function T(){this._map=new h}return o(T,"Set"),Object.defineProperty(T.prototype,"size",{get:o(function(){return this._map.size},"get"),enumerable:!0,configurable:!0}),T.prototype.has=function(x){return this._map.has(x)},T.prototype.add=function(x){return this._map.set(x,x),this},T.prototype.delete=function(x){return this._map.delete(x)},T.prototype.clear=function(){this._map.clear()},T.prototype.keys=function(){return this._map.keys()},T.prototype.values=function(){return this._map.keys()},T.prototype.entries=function(){return this._map.entries()},T.prototype["@@iterator"]=function(){return this.keys()},T.prototype[a]=function(){return this.keys()},T})();return E}o(et,"CreateSetPolyfill");function Qe(){var E=16,T=f.create(),x=O();return(function(){function q(){this._key=O()}return o(q,"WeakMap"),q.prototype.has=function(W){var Q=Z(W,!1);return Q!==void 0?f.has(Q,this._key):!1},q.prototype.get=function(W){var Q=Z(W,!1);return Q!==void 0?f.get(Q,this._key):void 0},q.prototype.set=function(W,Q){var Y=Z(W,!0);return Y[this._key]=Q,this},q.prototype.delete=function(W){var Q=Z(W,!1);return Q!==void 0?delete Q[this._key]:!1},q.prototype.clear=function(){this._key=O()},q})();function O(){var q;do q="@@WeakMap@@"+De();while(f.has(T,q));return T[q]=!0,q}function Z(q,W){if(!r.call(q,x)){if(!W)return;Object.defineProperty(q,x,{value:f.create()})}return q[x]}function _t(q,W){for(var Q=0;Q<W;++Q)q[Q]=Math.random()*255|0;return q}function Ct(q){if(typeof Uint8Array=="function"){var W=new Uint8Array(q);return typeof crypto<"u"?crypto.getRandomValues(W):typeof msCrypto<"u"?msCrypto.getRandomValues(W):_t(W,q),W}return _t(new Array(q),q)}function De(){var q=Ct(E);q[6]=q[6]&79|64,q[8]=q[8]&191|128;for(var W="",Q=0;Q<E;++Q){var Y=q[Q];(Q===4||Q===6||Q===8)&&(W+="-"),Y<16&&(W+="0"),W+=Y.toString(16).toLowerCase()}return W}}o(Qe,"CreateWeakMapPolyfill");function $e(E){return E.__=void 0,delete E.__,E}o($e,"MakeDictionary")})})(Z2||(Z2={}))});var Ou=S(t0=>{var Jd=class extends Error{static{o(this,"CommanderError")}constructor(e,t,r){super(r),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=t,this.exitCode=e,this.nestedError=void 0}},e0=class extends Jd{static{o(this,"InvalidArgumentError")}constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};t0.CommanderError=Jd;t0.InvalidArgumentError=e0});var Zd=S(n0=>{var{InvalidArgumentError:uL}=Ou(),r0=class{static{o(this,"Argument")}constructor(e,t){switch(this.description=t||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e;break}this._name.endsWith("...")&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_collectValue(e,t){return t===this.defaultValue||!Array.isArray(t)?[e]:(t.push(e),t)}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(t,r)=>{if(!this.argChoices.includes(t))throw new uL(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(t,r):t},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function fL(n){let e=n.name()+(n.variadic===!0?"...":"");return n.required?"<"+e+">":"["+e+"]"}o(fL,"humanReadableArgName");n0.Argument=r0;n0.humanReadableArgName=fL});var a0=S(s0=>{var{humanReadableArgName:dL}=Zd(),i0=class{static{o(this,"Help")}constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(e){this.helpWidth=this.helpWidth??e.helpWidth??80}visibleCommands(e){let t=e.commands.filter(i=>!i._hidden),r=e._getHelpCommand();return r&&!r._hidden&&t.push(r),this.sortSubcommands&&t.sort((i,s)=>i.name().localeCompare(s.name())),t}compareOptions(e,t){let r=o(i=>i.short?i.short.replace(/^-/,""):i.long.replace(/^--/,""),"getSortKey");return r(e).localeCompare(r(t))}visibleOptions(e){let t=e.options.filter(i=>!i.hidden),r=e._getHelpOption();if(r&&!r.hidden){let i=r.short&&e._findOption(r.short),s=r.long&&e._findOption(r.long);!i&&!s?t.push(r):r.long&&!s?t.push(e.createOption(r.long,r.description)):r.short&&!i&&t.push(e.createOption(r.short,r.description))}return this.sortOptions&&t.sort(this.compareOptions),t}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];let t=[];for(let r=e.parent;r;r=r.parent){let i=r.options.filter(s=>!s.hidden);t.push(...i)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleArguments(e){return e._argsDescription&&e.registeredArguments.forEach(t=>{t.description=t.description||e._argsDescription[t.name()]||""}),e.registeredArguments.find(t=>t.description)?e.registeredArguments:[]}subcommandTerm(e){let t=e.registeredArguments.map(r=>dL(r)).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(t?" "+t:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,t){return t.visibleCommands(e).reduce((r,i)=>Math.max(r,this.displayWidth(t.styleSubcommandTerm(t.subcommandTerm(i)))),0)}longestOptionTermLength(e,t){return t.visibleOptions(e).reduce((r,i)=>Math.max(r,this.displayWidth(t.styleOptionTerm(t.optionTerm(i)))),0)}longestGlobalOptionTermLength(e,t){return t.visibleGlobalOptions(e).reduce((r,i)=>Math.max(r,this.displayWidth(t.styleOptionTerm(t.optionTerm(i)))),0)}longestArgumentTermLength(e,t){return t.visibleArguments(e).reduce((r,i)=>Math.max(r,this.displayWidth(t.styleArgumentTerm(t.argumentTerm(i)))),0)}commandUsage(e){let t=e._name;e._aliases[0]&&(t=t+"|"+e._aliases[0]);let r="";for(let i=e.parent;i;i=i.parent)r=i.name()+" "+r;return r+t+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){let t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map(r=>JSON.stringify(r)).join(", ")}`),e.defaultValue!==void 0&&(e.required||e.optional||e.isBoolean()&&typeof e.defaultValue=="boolean")&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),e.presetArg!==void 0&&e.optional&&t.push(`preset: ${JSON.stringify(e.presetArg)}`),e.envVar!==void 0&&t.push(`env: ${e.envVar}`),t.length>0){let r=`(${t.join(", ")})`;return e.description?`${e.description} ${r}`:r}return e.description}argumentDescription(e){let t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map(r=>JSON.stringify(r)).join(", ")}`),e.defaultValue!==void 0&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),t.length>0){let r=`(${t.join(", ")})`;return e.description?`${e.description} ${r}`:r}return e.description}formatItemList(e,t,r){return t.length===0?[]:[r.styleTitle(e),...t,""]}groupItems(e,t,r){let i=new Map;return e.forEach(s=>{let a=r(s);i.has(a)||i.set(a,[])}),t.forEach(s=>{let a=r(s);i.has(a)||i.set(a,[]),i.get(a).push(s)}),i}formatHelp(e,t){let r=t.padWidth(e,t),i=t.helpWidth??80;function s(d,h){return t.formatItem(d,r,h,t)}o(s,"callFormatItem");let a=[`${t.styleTitle("Usage:")} ${t.styleUsage(t.commandUsage(e))}`,""],c=t.commandDescription(e);c.length>0&&(a=a.concat([t.boxWrap(t.styleCommandDescription(c),i),""]));let l=t.visibleArguments(e).map(d=>s(t.styleArgumentTerm(t.argumentTerm(d)),t.styleArgumentDescription(t.argumentDescription(d))));if(a=a.concat(this.formatItemList("Arguments:",l,t)),this.groupItems(e.options,t.visibleOptions(e),d=>d.helpGroupHeading??"Options:").forEach((d,h)=>{let p=d.map(y=>s(t.styleOptionTerm(t.optionTerm(y)),t.styleOptionDescription(t.optionDescription(y))));a=a.concat(this.formatItemList(h,p,t))}),t.showGlobalOptions){let d=t.visibleGlobalOptions(e).map(h=>s(t.styleOptionTerm(t.optionTerm(h)),t.styleOptionDescription(t.optionDescription(h))));a=a.concat(this.formatItemList("Global Options:",d,t))}return this.groupItems(e.commands,t.visibleCommands(e),d=>d.helpGroup()||"Commands:").forEach((d,h)=>{let p=d.map(y=>s(t.styleSubcommandTerm(t.subcommandTerm(y)),t.styleSubcommandDescription(t.subcommandDescription(y))));a=a.concat(this.formatItemList(h,p,t))}),a.join(`
6
+ "use strict";var iL=Object.create;var Pu=Object.defineProperty;var sL=Object.getOwnPropertyDescriptor;var aL=Object.getOwnPropertyNames;var oL=Object.getPrototypeOf,cL=Object.prototype.hasOwnProperty;var o=(n,e)=>Pu(n,"name",{value:e,configurable:!0});var lL=(n,e)=>()=>(n&&(e=n(n=0)),e);var S=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),Zy=(n,e)=>{for(var t in e)Pu(n,t,{get:e[t],enumerable:!0})},J2=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of aL(e))!cL.call(n,i)&&i!==t&&Pu(n,i,{get:()=>e[i],enumerable:!(r=sL(e,i))||r.enumerable});return n};var K=(n,e,t)=>(t=n!=null?iL(oL(n)):{},J2(e||!n||!n.__esModule?Pu(t,"default",{value:n,enumerable:!0}):t,n)),Yd=n=>J2(Pu({},"__esModule",{value:!0}),n);var Xd=S(()=>{var Z2;(function(n){(function(e){var t=typeof globalThis=="object"?globalThis:typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:c(),r=i(n);typeof t.Reflect<"u"&&(r=i(t.Reflect,r)),e(r,t),typeof t.Reflect>"u"&&(t.Reflect=n);function i(l,u){return function(f,d){Object.defineProperty(l,f,{configurable:!0,writable:!0,value:d}),u&&u(f,d)}}o(i,"makeExporter");function s(){try{return Function("return this;")()}catch{}}o(s,"functionThis");function a(){try{return(0,eval)("(function() { return this; })()")}catch{}}o(a,"indirectEvalThis");function c(){return s()||a()}o(c,"sloppyModeThis")})(function(e,t){var r=Object.prototype.hasOwnProperty,i=typeof Symbol=="function",s=i&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",a=i&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",c=typeof Object.create=="function",l={__proto__:[]}instanceof Array,u=!c&&!l,f={create:c?function(){return $e(Object.create(null))}:l?function(){return $e({__proto__:null})}:function(){return $e({})},has:u?function(E,T){return r.call(E,T)}:function(E,T){return T in E},get:u?function(E,T){return r.call(E,T)?E[T]:void 0}:function(E,T){return E[T]}},d=Object.getPrototypeOf(Function),h=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:we(),p=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:et(),y=typeof WeakMap=="function"?WeakMap:Qe(),v=i?Symbol.for("@reflect-metadata:registry"):void 0,w=Se(),b=ve(w);function A(E,T,x,O){if(H(x)){if(!Ve(E))throw new TypeError;if(!Ue(T))throw new TypeError;return Ye(E,T)}else{if(!Ve(E))throw new TypeError;if(!ne(T))throw new TypeError;if(!ne(O)&&!H(O)&&!Re(O))throw new TypeError;return Re(O)&&(O=void 0),x=Ce(x),at(E,T,x,O)}}o(A,"decorate"),e("decorate",A);function I(E,T){function x(O,Z){if(!ne(O))throw new TypeError;if(!H(Z)&&!He(Z))throw new TypeError;se(E,T,O,Z)}return o(x,"decorator"),x}o(I,"metadata"),e("metadata",I);function j(E,T,x,O){if(!ne(x))throw new TypeError;return H(O)||(O=Ce(O)),se(E,T,x,O)}o(j,"defineMetadata"),e("defineMetadata",j);function V(E,T,x){if(!ne(T))throw new TypeError;return H(x)||(x=Ce(x)),Ot(E,T,x)}o(V,"hasMetadata"),e("hasMetadata",V);function te(E,T,x){if(!ne(T))throw new TypeError;return H(x)||(x=Ce(x)),ot(E,T,x)}o(te,"hasOwnMetadata"),e("hasOwnMetadata",te);function z(E,T,x){if(!ne(T))throw new TypeError;return H(x)||(x=Ce(x)),lt(E,T,x)}o(z,"getMetadata"),e("getMetadata",z);function G(E,T,x){if(!ne(T))throw new TypeError;return H(x)||(x=Ce(x)),Xe(E,T,x)}o(G,"getOwnMetadata"),e("getOwnMetadata",G);function F(E,T){if(!ne(E))throw new TypeError;return H(T)||(T=Ce(T)),U(E,T)}o(F,"getMetadataKeys"),e("getMetadataKeys",F);function $(E,T){if(!ne(E))throw new TypeError;return H(T)||(T=Ce(T)),ut(E,T)}o($,"getOwnMetadataKeys"),e("getOwnMetadataKeys",$);function re(E,T,x){if(!ne(T))throw new TypeError;if(H(x)||(x=Ce(x)),!ne(T))throw new TypeError;H(x)||(x=Ce(x));var O=ce(T,x,!1);return H(O)?!1:O.OrdinaryDeleteMetadata(E,T,x)}o(re,"deleteMetadata"),e("deleteMetadata",re);function Ye(E,T){for(var x=E.length-1;x>=0;--x){var O=E[x],Z=O(T);if(!H(Z)&&!Re(Z)){if(!Ue(Z))throw new TypeError;T=Z}}return T}o(Ye,"DecorateConstructor");function at(E,T,x,O){for(var Z=E.length-1;Z>=0;--Z){var _t=E[Z],Ct=_t(T,x,O);if(!H(Ct)&&!Re(Ct)){if(!ne(Ct))throw new TypeError;O=Ct}}return O}o(at,"DecorateProperty");function Ot(E,T,x){var O=ot(E,T,x);if(O)return!0;var Z=ue(T);return Re(Z)?!1:Ot(E,Z,x)}o(Ot,"OrdinaryHasMetadata");function ot(E,T,x){var O=ce(T,x,!1);return H(O)?!1:Be(O.OrdinaryHasOwnMetadata(E,T,x))}o(ot,"OrdinaryHasOwnMetadata");function lt(E,T,x){var O=ot(E,T,x);if(O)return Xe(E,T,x);var Z=ue(T);if(!Re(Z))return lt(E,Z,x)}o(lt,"OrdinaryGetMetadata");function Xe(E,T,x){var O=ce(T,x,!1);if(!H(O))return O.OrdinaryGetOwnMetadata(E,T,x)}o(Xe,"OrdinaryGetOwnMetadata");function se(E,T,x,O){var Z=ce(x,O,!0);Z.OrdinaryDefineOwnMetadata(E,T,x,O)}o(se,"OrdinaryDefineOwnMetadata");function U(E,T){var x=ut(E,T),O=ue(E);if(O===null)return x;var Z=U(O,T);if(Z.length<=0)return x;if(x.length<=0)return Z;for(var _t=new p,Ct=[],De=0,q=x;De<q.length;De++){var W=q[De],Q=_t.has(W);Q||(_t.add(W),Ct.push(W))}for(var Y=0,Ie=Z;Y<Ie.length;Y++){var W=Ie[Y],Q=_t.has(W);Q||(_t.add(W),Ct.push(W))}return Ct}o(U,"OrdinaryMetadataKeys");function ut(E,T){var x=ce(E,T,!1);return x?x.OrdinaryOwnMetadataKeys(E,T):[]}o(ut,"OrdinaryOwnMetadataKeys");function pt(E){if(E===null)return 1;switch(typeof E){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return E===null?1:6;default:return 6}}o(pt,"Type");function H(E){return E===void 0}o(H,"IsUndefined");function Re(E){return E===null}o(Re,"IsNull");function qe(E){return typeof E=="symbol"}o(qe,"IsSymbol");function ne(E){return typeof E=="object"?E!==null:typeof E=="function"}o(ne,"IsObject");function We(E,T){switch(pt(E)){case 0:return E;case 1:return E;case 2:return E;case 3:return E;case 4:return E;case 5:return E}var x=T===3?"string":T===5?"number":"default",O=ge(E,s);if(O!==void 0){var Z=O.call(E,x);if(ne(Z))throw new TypeError;return Z}return Ge(E,x==="default"?"number":x)}o(We,"ToPrimitive");function Ge(E,T){if(T==="string"){var x=E.toString;if(Pe(x)){var O=x.call(E);if(!ne(O))return O}var Z=E.valueOf;if(Pe(Z)){var O=Z.call(E);if(!ne(O))return O}}else{var Z=E.valueOf;if(Pe(Z)){var O=Z.call(E);if(!ne(O))return O}var _t=E.toString;if(Pe(_t)){var O=_t.call(E);if(!ne(O))return O}}throw new TypeError}o(Ge,"OrdinaryToPrimitive");function Be(E){return!!E}o(Be,"ToBoolean");function ze(E){return""+E}o(ze,"ToString");function Ce(E){var T=We(E,3);return qe(T)?T:ze(T)}o(Ce,"ToPropertyKey");function Ve(E){return Array.isArray?Array.isArray(E):E instanceof Object?E instanceof Array:Object.prototype.toString.call(E)==="[object Array]"}o(Ve,"IsArray");function Pe(E){return typeof E=="function"}o(Pe,"IsCallable");function Ue(E){return typeof E=="function"}o(Ue,"IsConstructor");function He(E){switch(pt(E)){case 3:return!0;case 4:return!0;default:return!1}}o(He,"IsPropertyKey");function de(E,T){return E===T||E!==E&&T!==T}o(de,"SameValueZero");function ge(E,T){var x=E[T];if(x!=null){if(!Pe(x))throw new TypeError;return x}}o(ge,"GetMethod");function ye(E){var T=ge(E,a);if(!Pe(T))throw new TypeError;var x=T.call(E);if(!ne(x))throw new TypeError;return x}o(ye,"GetIterator");function he(E){return E.value}o(he,"IteratorValue");function pe(E){var T=E.next();return T.done?!1:T}o(pe,"IteratorStep");function me(E){var T=E.return;T&&T.call(E)}o(me,"IteratorClose");function ue(E){var T=Object.getPrototypeOf(E);if(typeof E!="function"||E===d||T!==d)return T;var x=E.prototype,O=x&&Object.getPrototypeOf(x);if(O==null||O===Object.prototype)return T;var Z=O.constructor;return typeof Z!="function"||Z===E?T:Z}o(ue,"OrdinaryGetPrototypeOf");function _e(){var E;!H(v)&&typeof t.Reflect<"u"&&!(v in t.Reflect)&&typeof t.Reflect.defineMetadata=="function"&&(E=be(t.Reflect));var T,x,O,Z=new y,_t={registerProvider:Ct,getProvider:q,setProvider:Q};return _t;function Ct(Y){if(!Object.isExtensible(_t))throw new Error("Cannot add provider to a frozen registry.");switch(!0){case E===Y:break;case H(T):T=Y;break;case T===Y:break;case H(x):x=Y;break;case x===Y:break;default:O===void 0&&(O=new p),O.add(Y);break}}function De(Y,Ie){if(!H(T)){if(T.isProviderFor(Y,Ie))return T;if(!H(x)){if(x.isProviderFor(Y,Ie))return T;if(!H(O))for(var rt=ye(O);;){var nt=pe(rt);if(!nt)return;var Pr=he(nt);if(Pr.isProviderFor(Y,Ie))return me(rt),Pr}}}if(!H(E)&&E.isProviderFor(Y,Ie))return E}function q(Y,Ie){var rt=Z.get(Y),nt;return H(rt)||(nt=rt.get(Ie)),H(nt)&&(nt=De(Y,Ie),H(nt)||(H(rt)&&(rt=new h,Z.set(Y,rt)),rt.set(Ie,nt))),nt}function W(Y){if(H(Y))throw new TypeError;return T===Y||x===Y||!H(O)&&O.has(Y)}function Q(Y,Ie,rt){if(!W(rt))throw new Error("Metadata provider not registered.");var nt=q(Y,Ie);if(nt!==rt){if(!H(nt))return!1;var Pr=Z.get(Y);H(Pr)&&(Pr=new h,Z.set(Y,Pr)),Pr.set(Ie,rt)}return!0}}o(_e,"CreateMetadataRegistry");function Se(){var E;return!H(v)&&ne(t.Reflect)&&Object.isExtensible(t.Reflect)&&(E=t.Reflect[v]),H(E)&&(E=_e()),!H(v)&&ne(t.Reflect)&&Object.isExtensible(t.Reflect)&&Object.defineProperty(t.Reflect,v,{enumerable:!1,configurable:!1,writable:!1,value:E}),E}o(Se,"GetOrCreateMetadataRegistry");function ve(E){var T=new y,x={isProviderFor:o(function(W,Q){var Y=T.get(W);return H(Y)?!1:Y.has(Q)},"isProviderFor"),OrdinaryDefineOwnMetadata:Ct,OrdinaryHasOwnMetadata:Z,OrdinaryGetOwnMetadata:_t,OrdinaryOwnMetadataKeys:De,OrdinaryDeleteMetadata:q};return w.registerProvider(x),x;function O(W,Q,Y){var Ie=T.get(W),rt=!1;if(H(Ie)){if(!Y)return;Ie=new h,T.set(W,Ie),rt=!0}var nt=Ie.get(Q);if(H(nt)){if(!Y)return;if(nt=new h,Ie.set(Q,nt),!E.setProvider(W,Q,x))throw Ie.delete(Q),rt&&T.delete(W),new Error("Wrong provider for target.")}return nt}o(O,"GetOrCreateMetadataMap");function Z(W,Q,Y){var Ie=O(Q,Y,!1);return H(Ie)?!1:Be(Ie.has(W))}o(Z,"OrdinaryHasOwnMetadata");function _t(W,Q,Y){var Ie=O(Q,Y,!1);if(!H(Ie))return Ie.get(W)}o(_t,"OrdinaryGetOwnMetadata");function Ct(W,Q,Y,Ie){var rt=O(Y,Ie,!0);rt.set(W,Q)}o(Ct,"OrdinaryDefineOwnMetadata");function De(W,Q){var Y=[],Ie=O(W,Q,!1);if(H(Ie))return Y;for(var rt=Ie.keys(),nt=ye(rt),Pr=0;;){var bn=pe(nt);if(!bn)return Y.length=Pr,Y;var kn=he(bn);try{Y[Pr]=kn}catch(sn){try{me(nt)}finally{throw sn}}Pr++}}o(De,"OrdinaryOwnMetadataKeys");function q(W,Q,Y){var Ie=O(Q,Y,!1);if(H(Ie)||!Ie.delete(W))return!1;if(Ie.size===0){var rt=T.get(Q);H(rt)||(rt.delete(Y),rt.size===0&&T.delete(rt))}return!0}o(q,"OrdinaryDeleteMetadata")}o(ve,"CreateMetadataProvider");function be(E){var T=E.defineMetadata,x=E.hasOwnMetadata,O=E.getOwnMetadata,Z=E.getOwnMetadataKeys,_t=E.deleteMetadata,Ct=new y,De={isProviderFor:o(function(q,W){var Q=Ct.get(q);return!H(Q)&&Q.has(W)?!0:Z(q,W).length?(H(Q)&&(Q=new p,Ct.set(q,Q)),Q.add(W),!0):!1},"isProviderFor"),OrdinaryDefineOwnMetadata:T,OrdinaryHasOwnMetadata:x,OrdinaryGetOwnMetadata:O,OrdinaryOwnMetadataKeys:Z,OrdinaryDeleteMetadata:_t};return De}o(be,"CreateFallbackProvider");function ce(E,T,x){var O=w.getProvider(E,T);if(!H(O))return O;if(x){if(w.setProvider(E,T,b))return b;throw new Error("Illegal state.")}}o(ce,"GetMetadataProvider");function we(){var E={},T=[],x=(function(){function De(q,W,Q){this._index=0,this._keys=q,this._values=W,this._selector=Q}return o(De,"MapIterator"),De.prototype["@@iterator"]=function(){return this},De.prototype[a]=function(){return this},De.prototype.next=function(){var q=this._index;if(q>=0&&q<this._keys.length){var W=this._selector(this._keys[q],this._values[q]);return q+1>=this._keys.length?(this._index=-1,this._keys=T,this._values=T):this._index++,{value:W,done:!1}}return{value:void 0,done:!0}},De.prototype.throw=function(q){throw this._index>=0&&(this._index=-1,this._keys=T,this._values=T),q},De.prototype.return=function(q){return this._index>=0&&(this._index=-1,this._keys=T,this._values=T),{value:q,done:!0}},De})(),O=(function(){function De(){this._keys=[],this._values=[],this._cacheKey=E,this._cacheIndex=-2}return o(De,"Map"),Object.defineProperty(De.prototype,"size",{get:o(function(){return this._keys.length},"get"),enumerable:!0,configurable:!0}),De.prototype.has=function(q){return this._find(q,!1)>=0},De.prototype.get=function(q){var W=this._find(q,!1);return W>=0?this._values[W]:void 0},De.prototype.set=function(q,W){var Q=this._find(q,!0);return this._values[Q]=W,this},De.prototype.delete=function(q){var W=this._find(q,!1);if(W>=0){for(var Q=this._keys.length,Y=W+1;Y<Q;Y++)this._keys[Y-1]=this._keys[Y],this._values[Y-1]=this._values[Y];return this._keys.length--,this._values.length--,de(q,this._cacheKey)&&(this._cacheKey=E,this._cacheIndex=-2),!0}return!1},De.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=E,this._cacheIndex=-2},De.prototype.keys=function(){return new x(this._keys,this._values,Z)},De.prototype.values=function(){return new x(this._keys,this._values,_t)},De.prototype.entries=function(){return new x(this._keys,this._values,Ct)},De.prototype["@@iterator"]=function(){return this.entries()},De.prototype[a]=function(){return this.entries()},De.prototype._find=function(q,W){if(!de(this._cacheKey,q)){this._cacheIndex=-1;for(var Q=0;Q<this._keys.length;Q++)if(de(this._keys[Q],q)){this._cacheIndex=Q;break}}return this._cacheIndex<0&&W&&(this._cacheIndex=this._keys.length,this._keys.push(q),this._values.push(void 0)),this._cacheIndex},De})();return O;function Z(De,q){return De}function _t(De,q){return q}function Ct(De,q){return[De,q]}}o(we,"CreateMapPolyfill");function et(){var E=(function(){function T(){this._map=new h}return o(T,"Set"),Object.defineProperty(T.prototype,"size",{get:o(function(){return this._map.size},"get"),enumerable:!0,configurable:!0}),T.prototype.has=function(x){return this._map.has(x)},T.prototype.add=function(x){return this._map.set(x,x),this},T.prototype.delete=function(x){return this._map.delete(x)},T.prototype.clear=function(){this._map.clear()},T.prototype.keys=function(){return this._map.keys()},T.prototype.values=function(){return this._map.keys()},T.prototype.entries=function(){return this._map.entries()},T.prototype["@@iterator"]=function(){return this.keys()},T.prototype[a]=function(){return this.keys()},T})();return E}o(et,"CreateSetPolyfill");function Qe(){var E=16,T=f.create(),x=O();return(function(){function q(){this._key=O()}return o(q,"WeakMap"),q.prototype.has=function(W){var Q=Z(W,!1);return Q!==void 0?f.has(Q,this._key):!1},q.prototype.get=function(W){var Q=Z(W,!1);return Q!==void 0?f.get(Q,this._key):void 0},q.prototype.set=function(W,Q){var Y=Z(W,!0);return Y[this._key]=Q,this},q.prototype.delete=function(W){var Q=Z(W,!1);return Q!==void 0?delete Q[this._key]:!1},q.prototype.clear=function(){this._key=O()},q})();function O(){var q;do q="@@WeakMap@@"+De();while(f.has(T,q));return T[q]=!0,q}function Z(q,W){if(!r.call(q,x)){if(!W)return;Object.defineProperty(q,x,{value:f.create()})}return q[x]}function _t(q,W){for(var Q=0;Q<W;++Q)q[Q]=Math.random()*255|0;return q}function Ct(q){if(typeof Uint8Array=="function"){var W=new Uint8Array(q);return typeof crypto<"u"?crypto.getRandomValues(W):typeof msCrypto<"u"?msCrypto.getRandomValues(W):_t(W,q),W}return _t(new Array(q),q)}function De(){var q=Ct(E);q[6]=q[6]&79|64,q[8]=q[8]&191|128;for(var W="",Q=0;Q<E;++Q){var Y=q[Q];(Q===4||Q===6||Q===8)&&(W+="-"),Y<16&&(W+="0"),W+=Y.toString(16).toLowerCase()}return W}}o(Qe,"CreateWeakMapPolyfill");function $e(E){return E.__=void 0,delete E.__,E}o($e,"MakeDictionary")})})(Z2||(Z2={}))});var Ou=S(t0=>{var Jd=class extends Error{static{o(this,"CommanderError")}constructor(e,t,r){super(r),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=t,this.exitCode=e,this.nestedError=void 0}},e0=class extends Jd{static{o(this,"InvalidArgumentError")}constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};t0.CommanderError=Jd;t0.InvalidArgumentError=e0});var Zd=S(n0=>{var{InvalidArgumentError:uL}=Ou(),r0=class{static{o(this,"Argument")}constructor(e,t){switch(this.description=t||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e;break}this._name.endsWith("...")&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_collectValue(e,t){return t===this.defaultValue||!Array.isArray(t)?[e]:(t.push(e),t)}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(t,r)=>{if(!this.argChoices.includes(t))throw new uL(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(t,r):t},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function fL(n){let e=n.name()+(n.variadic===!0?"...":"");return n.required?"<"+e+">":"["+e+"]"}o(fL,"humanReadableArgName");n0.Argument=r0;n0.humanReadableArgName=fL});var a0=S(s0=>{var{humanReadableArgName:dL}=Zd(),i0=class{static{o(this,"Help")}constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(e){this.helpWidth=this.helpWidth??e.helpWidth??80}visibleCommands(e){let t=e.commands.filter(i=>!i._hidden),r=e._getHelpCommand();return r&&!r._hidden&&t.push(r),this.sortSubcommands&&t.sort((i,s)=>i.name().localeCompare(s.name())),t}compareOptions(e,t){let r=o(i=>i.short?i.short.replace(/^-/,""):i.long.replace(/^--/,""),"getSortKey");return r(e).localeCompare(r(t))}visibleOptions(e){let t=e.options.filter(i=>!i.hidden),r=e._getHelpOption();if(r&&!r.hidden){let i=r.short&&e._findOption(r.short),s=r.long&&e._findOption(r.long);!i&&!s?t.push(r):r.long&&!s?t.push(e.createOption(r.long,r.description)):r.short&&!i&&t.push(e.createOption(r.short,r.description))}return this.sortOptions&&t.sort(this.compareOptions),t}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];let t=[];for(let r=e.parent;r;r=r.parent){let i=r.options.filter(s=>!s.hidden);t.push(...i)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleArguments(e){return e._argsDescription&&e.registeredArguments.forEach(t=>{t.description=t.description||e._argsDescription[t.name()]||""}),e.registeredArguments.find(t=>t.description)?e.registeredArguments:[]}subcommandTerm(e){let t=e.registeredArguments.map(r=>dL(r)).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(t?" "+t:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,t){return t.visibleCommands(e).reduce((r,i)=>Math.max(r,this.displayWidth(t.styleSubcommandTerm(t.subcommandTerm(i)))),0)}longestOptionTermLength(e,t){return t.visibleOptions(e).reduce((r,i)=>Math.max(r,this.displayWidth(t.styleOptionTerm(t.optionTerm(i)))),0)}longestGlobalOptionTermLength(e,t){return t.visibleGlobalOptions(e).reduce((r,i)=>Math.max(r,this.displayWidth(t.styleOptionTerm(t.optionTerm(i)))),0)}longestArgumentTermLength(e,t){return t.visibleArguments(e).reduce((r,i)=>Math.max(r,this.displayWidth(t.styleArgumentTerm(t.argumentTerm(i)))),0)}commandUsage(e){let t=e._name;e._aliases[0]&&(t=t+"|"+e._aliases[0]);let r="";for(let i=e.parent;i;i=i.parent)r=i.name()+" "+r;return r+t+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){let t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map(r=>JSON.stringify(r)).join(", ")}`),e.defaultValue!==void 0&&(e.required||e.optional||e.isBoolean()&&typeof e.defaultValue=="boolean")&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),e.presetArg!==void 0&&e.optional&&t.push(`preset: ${JSON.stringify(e.presetArg)}`),e.envVar!==void 0&&t.push(`env: ${e.envVar}`),t.length>0){let r=`(${t.join(", ")})`;return e.description?`${e.description} ${r}`:r}return e.description}argumentDescription(e){let t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map(r=>JSON.stringify(r)).join(", ")}`),e.defaultValue!==void 0&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),t.length>0){let r=`(${t.join(", ")})`;return e.description?`${e.description} ${r}`:r}return e.description}formatItemList(e,t,r){return t.length===0?[]:[r.styleTitle(e),...t,""]}groupItems(e,t,r){let i=new Map;return e.forEach(s=>{let a=r(s);i.has(a)||i.set(a,[])}),t.forEach(s=>{let a=r(s);i.has(a)||i.set(a,[]),i.get(a).push(s)}),i}formatHelp(e,t){let r=t.padWidth(e,t),i=t.helpWidth??80;function s(d,h){return t.formatItem(d,r,h,t)}o(s,"callFormatItem");let a=[`${t.styleTitle("Usage:")} ${t.styleUsage(t.commandUsage(e))}`,""],c=t.commandDescription(e);c.length>0&&(a=a.concat([t.boxWrap(t.styleCommandDescription(c),i),""]));let l=t.visibleArguments(e).map(d=>s(t.styleArgumentTerm(t.argumentTerm(d)),t.styleArgumentDescription(t.argumentDescription(d))));if(a=a.concat(this.formatItemList("Arguments:",l,t)),this.groupItems(e.options,t.visibleOptions(e),d=>d.helpGroupHeading??"Options:").forEach((d,h)=>{let p=d.map(y=>s(t.styleOptionTerm(t.optionTerm(y)),t.styleOptionDescription(t.optionDescription(y))));a=a.concat(this.formatItemList(h,p,t))}),t.showGlobalOptions){let d=t.visibleGlobalOptions(e).map(h=>s(t.styleOptionTerm(t.optionTerm(h)),t.styleOptionDescription(t.optionDescription(h))));a=a.concat(this.formatItemList("Global Options:",d,t))}return this.groupItems(e.commands,t.visibleCommands(e),d=>d.helpGroup()||"Commands:").forEach((d,h)=>{let p=d.map(y=>s(t.styleSubcommandTerm(t.subcommandTerm(y)),t.styleSubcommandDescription(t.subcommandDescription(y))));a=a.concat(this.formatItemList(h,p,t))}),a.join(`
7
7
  `)}displayWidth(e){return eT(e).length}styleTitle(e){return e}styleUsage(e){return e.split(" ").map(t=>t==="[options]"?this.styleOptionText(t):t==="[command]"?this.styleSubcommandText(t):t[0]==="["||t[0]==="<"?this.styleArgumentText(t):this.styleCommandText(t)).join(" ")}styleCommandDescription(e){return this.styleDescriptionText(e)}styleOptionDescription(e){return this.styleDescriptionText(e)}styleSubcommandDescription(e){return this.styleDescriptionText(e)}styleArgumentDescription(e){return this.styleDescriptionText(e)}styleDescriptionText(e){return e}styleOptionTerm(e){return this.styleOptionText(e)}styleSubcommandTerm(e){return e.split(" ").map(t=>t==="[options]"?this.styleOptionText(t):t[0]==="["||t[0]==="<"?this.styleArgumentText(t):this.styleSubcommandText(t)).join(" ")}styleArgumentTerm(e){return this.styleArgumentText(e)}styleOptionText(e){return e}styleArgumentText(e){return e}styleSubcommandText(e){return e}styleCommandText(e){return e}padWidth(e,t){return Math.max(t.longestOptionTermLength(e,t),t.longestGlobalOptionTermLength(e,t),t.longestSubcommandTermLength(e,t),t.longestArgumentTermLength(e,t))}preformatted(e){return/\n[^\S\r\n]/.test(e)}formatItem(e,t,r,i){let a=" ".repeat(2);if(!r)return a+e;let c=e.padEnd(t+e.length-i.displayWidth(e)),l=2,f=(this.helpWidth??80)-t-l-2,d;return f<this.minWidthToWrap||i.preformatted(r)?d=r:d=i.boxWrap(r,f).replace(/\n/g,`
8
8
  `+" ".repeat(t+l)),a+c+" ".repeat(l)+d.replace(/\n/g,`
9
9
  ${a}`)}boxWrap(e,t){if(t<this.minWidthToWrap)return e;let r=e.split(/\r\n|\n/),i=/[\s]*[^\s]+/g,s=[];return r.forEach(a=>{let c=a.match(i);if(c===null){s.push("");return}let l=[c.shift()],u=this.displayWidth(l[0]);c.forEach(f=>{let d=this.displayWidth(f);if(u+d<=t){l.push(f),u+=d;return}s.push(l.join(""));let h=f.trimStart();l=[h],u=this.displayWidth(h)}),s.push(l.join(""))}),s.join(`
@@ -28,11 +28,11 @@ Expecting one of '${r.join("', '")}'`);return this._lifeCycleHooks[e]?this._life
28
28
  `),this.outputHelp({error:!0}));let r=t||{},i=r.exitCode||1,s=r.code||"commander.error";this._exit(i,s,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in st.env){let t=e.attributeName();(this.getOptionValue(t)===void 0||["default","config","env"].includes(this.getOptionValueSource(t)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,st.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new wL(this.options),t=o(r=>this.getOptionValue(r)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(r)),"hasCustomOptionValue");this.options.filter(r=>r.implied!==void 0&&t(r.attributeName())&&e.valueFromOption(this.getOptionValue(r.attributeName()),r)).forEach(r=>{Object.keys(r.implied).filter(i=>!t(i)).forEach(i=>{this.setOptionValueWithSource(i,r.implied[i],"implied")})})}missingArgument(e){let t=`error: missing required argument '${e}'`;this.error(t,{code:"commander.missingArgument"})}optionMissingArgument(e){let t=`error: option '${e.flags}' argument missing`;this.error(t,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let t=`error: required option '${e.flags}' not specified`;this.error(t,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,t){let r=o(a=>{let c=a.attributeName(),l=this.getOptionValue(c),u=this.options.find(d=>d.negate&&c===d.attributeName()),f=this.options.find(d=>!d.negate&&c===d.attributeName());return u&&(u.presetArg===void 0&&l===!1||u.presetArg!==void 0&&l===u.presetArg)?u:f||a},"findBestOptionFromValue"),i=o(a=>{let c=r(a),l=c.attributeName();return this.getOptionValueSource(l)==="env"?`environment variable '${c.envVar}'`:`option '${c.flags}'`},"getErrorMessage"),s=`error: ${i(e)} cannot be used with ${i(t)}`;this.error(s,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let t="";if(e.startsWith("--")&&this._showSuggestionAfterError){let i=[],s=this;do{let a=s.createHelp().visibleOptions(s).filter(c=>c.long).map(c=>c.long);i=i.concat(a),s=s.parent}while(s&&!s._enablePositionalOptions);t=sT(e,i)}let r=`error: unknown option '${e}'${t}`;this.error(r,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let t=this.registeredArguments.length,r=t===1?"":"s",s=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${t} argument${r} but got ${e.length}.`;this.error(s,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],t="";if(this._showSuggestionAfterError){let i=[];this.createHelp().visibleCommands(this).forEach(s=>{i.push(s.name()),s.alias()&&i.push(s.alias())}),t=sT(e,i)}let r=`error: unknown command '${e}'${t}`;this.error(r,{code:"commander.unknownCommand"})}version(e,t,r){if(e===void 0)return this._version;this._version=e,t=t||"-V, --version",r=r||"output the version number";let i=this.createOption(t,r);return this._versionOptionName=i.attributeName(),this._registerOption(i),this.on("option:"+i.name(),()=>{this._outputConfiguration.writeOut(`${e}
29
29
  `),this._exit(0,"commander.version",e)}),this}description(e,t){return e===void 0&&t===void 0?this._description:(this._description=e,t&&(this._argsDescription=t),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let t=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(t=this.commands[this.commands.length-1]),e===t._name)throw new Error("Command alias can't be the same as its name");let r=this.parent?._findCommand(e);if(r){let i=[r.name()].concat(r.aliases()).join("|");throw new Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${i}'`)}return t._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(t=>this.alias(t)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let t=this.registeredArguments.map(r=>SL(r));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?t:[]).join(" ")}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}helpGroup(e){return e===void 0?this._helpGroupHeading??"":(this._helpGroupHeading=e,this)}commandsGroup(e){return e===void 0?this._defaultCommandGroup??"":(this._defaultCommandGroup=e,this)}optionsGroup(e){return e===void 0?this._defaultOptionGroup??"":(this._defaultOptionGroup=e,this)}_initOptionGroup(e){this._defaultOptionGroup&&!e.helpGroupHeading&&e.helpGroup(this._defaultOptionGroup)}_initCommandGroup(e){this._defaultCommandGroup&&!e.helpGroup()&&e.helpGroup(this._defaultCommandGroup)}nameFromFilename(e){return this._name=qs.basename(e,qs.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let t=this.createHelp(),r=this._getOutputContext(e);t.prepareContext({error:r.error,helpWidth:r.helpWidth,outputHasColors:r.hasColors});let i=t.formatHelp(this,t);return r.hasColors?i:this._outputConfiguration.stripColor(i)}_getOutputContext(e){e=e||{};let t=!!e.error,r,i,s;return t?(r=o(c=>this._outputConfiguration.writeErr(c),"baseWrite"),i=this._outputConfiguration.getErrHasColors(),s=this._outputConfiguration.getErrHelpWidth()):(r=o(c=>this._outputConfiguration.writeOut(c),"baseWrite"),i=this._outputConfiguration.getOutHasColors(),s=this._outputConfiguration.getOutHelpWidth()),{error:t,write:o(c=>(i||(c=this._outputConfiguration.stripColor(c)),r(c)),"write"),hasColors:i,helpWidth:s}}outputHelp(e){let t;typeof e=="function"&&(t=e,e=void 0);let r=this._getOutputContext(e),i={error:r.error,write:r.write,command:this};this._getCommandAndAncestors().reverse().forEach(a=>a.emit("beforeAllHelp",i)),this.emit("beforeHelp",i);let s=this.helpInformation({error:r.error});if(t&&(s=t(s),typeof s!="string"&&!Buffer.isBuffer(s)))throw new Error("outputHelp callback must return a string or a Buffer");r.write(s),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit("afterHelp",i),this._getCommandAndAncestors().forEach(a=>a.emit("afterAllHelp",i))}helpOption(e,t){return typeof e=="boolean"?(e?(this._helpOption===null&&(this._helpOption=void 0),this._defaultOptionGroup&&this._initOptionGroup(this._getHelpOption())):this._helpOption=null,this):(this._helpOption=this.createOption(e??"-h, --help",t??"display help for command"),(e||t)&&this._initOptionGroup(this._helpOption),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(e){return this._helpOption=e,this._initOptionGroup(e),this}help(e){this.outputHelp(e);let t=Number(st.exitCode??0);t===0&&e&&typeof e!="function"&&e.error&&(t=1),this._exit(t,"commander.help","(outputHelp)")}addHelpText(e,t){let r=["beforeAll","before","after","afterAll"];if(!r.includes(e))throw new Error(`Unexpected value for position to addHelpText.
30
30
  Expecting one of '${r.join("', '")}'`);let i=`${e}Help`;return this.on(i,s=>{let a;typeof t=="function"?a=t({error:s.error,command:s.command}):a=t,a&&s.write(`${a}
31
- `)}),this}_outputHelpIfRequested(e){let t=this._getHelpOption();t&&e.find(i=>t.is(i))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function aT(n){return n.map(e=>{if(!e.startsWith("--inspect"))return e;let t,r="127.0.0.1",i="9229",s;return(s=e.match(/^(--inspect(-brk)?)$/))!==null?t=s[1]:(s=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(t=s[1],/^\d+$/.test(s[3])?i=s[3]:r=s[3]):(s=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(t=s[1],r=s[3],i=s[4]),t&&i!=="0"?`${t}=${r}:${parseInt(i)+1}`:e})}o(aT,"incrementNodeInspectorPort");function p0(){if(st.env.NO_COLOR||st.env.FORCE_COLOR==="0"||st.env.FORCE_COLOR==="false")return!1;if(st.env.FORCE_COLOR||st.env.CLICOLOR_FORCE!==void 0)return!0}o(p0,"useColor");m0.Command=h0;m0.useColor=p0});var fT=S(Qn=>{var{Argument:cT}=Zd(),{Command:g0}=oT(),{CommanderError:EL,InvalidArgumentError:lT}=Ou(),{Help:TL}=a0(),{Option:uT}=u0();Qn.program=new g0;Qn.createCommand=n=>new g0(n);Qn.createOption=(n,e)=>new uT(n,e);Qn.createArgument=(n,e)=>new cT(n,e);Qn.Command=g0;Qn.Option=uT;Qn.Argument=cT;Qn.Help=TL;Qn.CommanderError=EL;Qn.InvalidArgumentError=lT;Qn.InvalidOptionArgumentError=lT});var Fu=S(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});th.AssetClass=void 0;var hT;(function(n){n.AREA="ems__Area",n.TASK="ems__Task",n.PROJECT="ems__Project",n.MEETING="ems__Meeting",n.INITIATIVE="ems__Initiative",n.TASK_PROTOTYPE="ems__TaskPrototype",n.MEETING_PROTOTYPE="ems__MeetingPrototype",n.EVENT_PROTOTYPE="exo__EventPrototype",n.PROJECT_PROTOTYPE="ems__ProjectPrototype",n.EVENT="exo__Event",n.DAILY_NOTE="pn__DailyNote",n.CONCEPT="ims__Concept",n.SESSION_START_EVENT="ems__SessionStartEvent",n.SESSION_END_EVENT="ems__SessionEndEvent",n.PROTOTYPE="exo__Prototype",n.CLASS="exo__Class",n.FLEETING_NOTE="ztlk__FleetingNote",n.WORKFLOW="ems__Workflow",n.WORKFLOW_STATE="ems__WorkflowState",n.WORKFLOW_TRANSITION="ems__WorkflowTransition",n.COMMAND="exocmd__Command",n.PRECONDITION="exocmd__Precondition",n.GROUNDING="exocmd__Grounding",n.COMMAND_BINDING="exocmd__CommandBinding"})(hT||(th.AssetClass=hT={}))});var Ec=S(rh=>{"use strict";Object.defineProperty(rh,"__esModule",{value:!0});rh.EffortStatus=void 0;var pT;(function(n){n.DRAFT="ems__EffortStatusDraft",n.BACKLOG="ems__EffortStatusBacklog",n.ANALYSIS="ems__EffortStatusAnalysis",n.TODO="ems__EffortStatusToDo",n.DOING="ems__EffortStatusDoing",n.DONE="ems__EffortStatusDone",n.TRASHED="ems__EffortStatusTrashed"})(pT||(rh.EffortStatus=pT={}))});var y0=S(Qt=>{"use strict";Object.defineProperty(Qt,"__esModule",{value:!0});Qt.EFFORT_STATUS_OPTIONS=Qt.STATUS_NAME_TO_WIKILINK=Qt.STATUS_NAME_TO_ENUM=Qt.EFFORT_STATUS_CONFIG=void 0;Qt.normalizeEffortStatus=AL;Qt.isDoneStatus=xL;Qt.isTrashedStatus=CL;Qt.getEffortStatusLabel=IL;var as=Ec();Qt.EFFORT_STATUS_CONFIG=[{name:"Draft",status:as.EffortStatus.DRAFT,wikilink:"[[ems__EffortStatusDraft]]"},{name:"Backlog",status:as.EffortStatus.BACKLOG,wikilink:"[[ems__EffortStatusBacklog]]"},{name:"Analysis",status:as.EffortStatus.ANALYSIS,wikilink:"[[ems__EffortStatusAnalysis]]"},{name:"To Do",status:as.EffortStatus.TODO,wikilink:"[[ems__EffortStatusToDo]]"},{name:"Doing",status:as.EffortStatus.DOING,wikilink:"[[ems__EffortStatusDoing]]"},{name:"Done",status:as.EffortStatus.DONE,wikilink:"[[ems__EffortStatusDone]]"},{name:"Trashed",status:as.EffortStatus.TRASHED,wikilink:"[[ems__EffortStatusTrashed]]"}];Qt.STATUS_NAME_TO_ENUM=Object.fromEntries(Qt.EFFORT_STATUS_CONFIG.map(n=>[n.name,n.status]));Qt.STATUS_NAME_TO_WIKILINK=Object.fromEntries(Qt.EFFORT_STATUS_CONFIG.map(n=>[n.name,n.wikilink]));Qt.EFFORT_STATUS_OPTIONS=Qt.EFFORT_STATUS_CONFIG.map(n=>({value:n.wikilink,label:n.name}));function AL(n,e=as.EffortStatus.DRAFT){if(n.startsWith("ems__")){let r=Qt.EFFORT_STATUS_CONFIG.find(i=>i.status===n);return r?r.status:e}return Qt.STATUS_NAME_TO_ENUM[n]??e}o(AL,"normalizeEffortStatus");function xL(n){return n===as.EffortStatus.DONE}o(xL,"isDoneStatus");function CL(n){return n===as.EffortStatus.TRASHED}o(CL,"isTrashedStatus");function IL(n){if(!n)return"-";let e=String(n);if(e==="")return"-";for(let r of Qt.EFFORT_STATUS_CONFIG)if(r.wikilink===e||`[[${e}]]`===r.wikilink||r.status===e||r.name===e)return r.name;let t=e.toLowerCase();for(let r of Qt.EFFORT_STATUS_CONFIG)if(r.name.toLowerCase()===t)return r.name;return e}o(IL,"getEffortStatusLabel")});var Tc=S(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});nh.GroundingType=void 0;var mT;(function(n){n.SPARQL_UPDATE="sparql_update",n.PROPERTY_DELETE="property_delete",n.PROPERTY_SET="property_set",n.COMPOSITE="composite",n.SERVICE_CALL="service_call",n.CREATE_INSTANCE="create_instance"})(mT||(nh.GroundingType=mT={}))});var _0=S(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.CommandBindingStyleProperty=Kn.CommandBindingProperty=Kn.GroundingProperty=Kn.PreconditionProperty=Kn.CommandProperty=void 0;Kn.CommandProperty={ICON:"exocmd__Command_icon",PRECONDITION:"exocmd__Command_precondition",GROUNDING:"exocmd__Command_grounding",CONFIRM_MESSAGE:"exocmd__Command_confirmMessage",SUCCESS_MESSAGE:"exocmd__Command_successMessage",CATEGORY:"exocmd__Command_category"};Kn.PreconditionProperty={SPARQL_ASK:"exocmd__Precondition_sparqlAsk",QUERY:"exocmd__Precondition_query"};Kn.GroundingProperty={TYPE:"exocmd__Grounding_type",SPARQL_UPDATE:"exocmd__Grounding_sparqlUpdate",TARGET_PROPERTY:"exocmd__Grounding_targetProperty",TARGET_VALUE:"exocmd__Grounding_targetValue",STEPS:"exocmd__Grounding_steps"};Kn.CommandBindingProperty={COMMAND:"exocmd__CommandBinding_command",TARGET_CLASS:"exocmd__CommandBinding_targetClass",TARGET_PROTOTYPE:"exocmd__CommandBinding_targetPrototype",TARGET_ASSET:"exocmd__CommandBinding_targetAsset",POSITION:"exocmd__CommandBinding_position",ORDER:"exocmd__CommandBinding_order",PRECONDITION:"exocmd__CommandBinding_precondition",STYLE:"exocmd__CommandBinding_style",VARIANT:"exocmd__CommandBinding_variant"};Kn.CommandBindingStyleProperty={VARIANT:"exocmd__CommandBindingStyle_variant",SHOW_ICON:"exocmd__CommandBindingStyle_showIcon",LABEL_CLASS:"exocmd__CommandBindingStyle_labelClass",ARIA_LABEL:"exocmd__CommandBindingStyle_ariaLabel",TOOLTIP:"exocmd__CommandBindingStyle_tooltip",KEYBOARD_SHORTCUT:"exocmd__CommandBindingStyle_keyboardShortcut",SOURCE:"exocmd__CommandBindingStyle_source"}});var S0=S(En=>{"use strict";Object.defineProperty(En,"__esModule",{value:!0});En.STYLE_SOURCE_VALUES=En.LABEL_CLASS_VALUES=En.COMMAND_VARIANT_VALUES=void 0;En.isCommandVariant=RL;En.isLabelClass=PL;En.isStyleSource=OL;En.COMMAND_VARIANT_VALUES=Object.freeze(["primary","secondary","success","warning","danger","muted"]);En.LABEL_CLASS_VALUES=Object.freeze(["muted","bold","uppercase","compact"]);En.STYLE_SOURCE_VALUES=Object.freeze(["vendor","user"]);function RL(n){return typeof n=="string"&&En.COMMAND_VARIANT_VALUES.includes(n)}o(RL,"isCommandVariant");function PL(n){return typeof n=="string"&&En.LABEL_CLASS_VALUES.includes(n)}o(PL,"isLabelClass");function OL(n){return typeof n=="string"&&En.STYLE_SOURCE_VALUES.includes(n)}o(OL,"isStyleSource")});var gT=S(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});Ac.isCommandFrontmatter=FL;Ac.isPreconditionFrontmatter=DL;Ac.isGroundingFrontmatter=NL;Ac.isCommandBindingFrontmatter=LL;function FL(n){return ih(n,"exocmd__Command")}o(FL,"isCommandFrontmatter");function DL(n){return ih(n,"exocmd__Precondition")}o(DL,"isPreconditionFrontmatter");function NL(n){return ih(n,"exocmd__Grounding")}o(NL,"isGroundingFrontmatter");function LL(n){return ih(n,"exocmd__CommandBinding")}o(LL,"isCommandBindingFrontmatter");function ih(n,e){let t=n.exo__Instance_class;if(t==null)return!1;let r=Array.isArray(t)?t:[t];for(let i of r){if(typeof i!="string")continue;let s=i.match(/\[\[([^|\]]+)/);if((s?s[1]:i)===e)return!0}return!1}o(ih,"hasInstanceClass")});var yT=S(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});sh.hasPosition=kL;sh.isFixed=ML;function kL(n){return typeof n.x=="number"&&typeof n.y=="number"}o(kL,"hasPosition");function ML(n){return n.fx!==null&&n.fx!==void 0&&n.fy!==null&&n.fy!==void 0}o(ML,"isFixed")});var _T=S(ah=>{"use strict";Object.defineProperty(ah,"__esModule",{value:!0});ah.createEmptyGraphData=jL;ah.mergeGraphData=$L;function jL(){return{nodes:[],edges:[],lastUpdated:Date.now(),version:0}}o(jL,"createEmptyGraphData");function $L(n,e){let t=new Map,r=new Set,i=[];for(let s of n.nodes)t.set(s.id,s);for(let s of e.nodes)t.set(s.id,s);for(let s of n.edges){let a=`${s.source}->${s.target}:${s.type}`;r.has(a)||(r.add(a),i.push(s))}for(let s of e.edges){let a=`${s.source}->${s.target}:${s.type}`;r.has(a)||(r.add(a),i.push(s))}return{nodes:Array.from(t.values()),edges:i,lastUpdated:Date.now(),version:Math.max(n.version??0,e.version??0)+1}}o($L,"mergeGraphData")});var v0=S(oh=>{"use strict";Object.defineProperty(oh,"__esModule",{value:!0});oh.createEdgeId=BL;oh.edgesEqual=VL;function BL(n,e,t,r){let i=r?`|${r}`:"";return`${n}->${e}:${t}${i}`}o(BL,"createEdgeId");function VL(n,e){return n.source===e.source&&n.target===e.target&&n.type===e.type&&n.predicate===e.predicate}o(VL,"edgesEqual")});var b0=S(Ut=>{"use strict";Object.defineProperty(Ut,"__esModule",{value:!0});Ut.BUILT_IN_EDGE_STYLES=Ut.BUILT_IN_NODE_STYLES=Ut.DEFAULT_EDGE_STYLE=Ut.DEFAULT_NODE_STYLE=Ut.RDF_TYPE_PREDICATES=void 0;Ut.mergeNodeStyles=UL;Ut.mergeEdgeStyles=qL;Ut.extractLocalName=WL;Ut.isClassType=GL;Ut.isTypePredicate=zL;Ut.isSubClassPredicate=HL;Ut.RDF_TYPE_PREDICATES={RDF_TYPE:"http://www.w3.org/1999/02/22-rdf-syntax-ns#type",RDFS_CLASS:"http://www.w3.org/2000/01/rdf-schema#Class",OWL_CLASS:"http://www.w3.org/2002/07/owl#Class",RDFS_SUBCLASS_OF:"http://www.w3.org/2000/01/rdf-schema#subClassOf",OWL_EQUIVALENT_CLASS:"http://www.w3.org/2002/07/owl#equivalentClass",RDFS_LABEL:"http://www.w3.org/2000/01/rdf-schema#label",RDFS_COMMENT:"http://www.w3.org/2000/01/rdf-schema#comment"};Ut.DEFAULT_NODE_STYLE={color:"#6366f1",borderColor:"#4f46e5",borderWidth:2,size:30,shape:"circle",icon:"",opacity:1,shadow:!1,animation:"none"};Ut.DEFAULT_EDGE_STYLE={color:"#9ca3af",width:1,lineStyle:"solid",arrow:"standard",curvature:0,opacity:.6,showLabel:!1,labelPosition:.5};Ut.BUILT_IN_NODE_STYLES={"http://www.w3.org/2000/01/rdf-schema#Class":{color:"#f59e0b",shape:"diamond",size:40},"http://www.w3.org/2002/07/owl#Class":{color:"#f59e0b",shape:"diamond",size:40},ems__Task:{color:"#22c55e",shape:"circle"},ems__Project:{color:"#3b82f6",shape:"square"},ems__Area:{color:"#8b5cf6",shape:"hexagon",size:40},ems__Meeting:{color:"#ec4899",shape:"circle"},exo__Class:{color:"#f59e0b",shape:"diamond"},ims__Person:{color:"#06b6d4",shape:"circle"}};Ut.BUILT_IN_EDGE_STYLES={"http://www.w3.org/1999/02/22-rdf-syntax-ns#type":{color:"#f59e0b",lineStyle:"dashed",arrow:"standard"},"http://www.w3.org/2000/01/rdf-schema#subClassOf":{color:"#8b5cf6",width:2,arrow:"triangle"},"https://exocortex.my/ontology/ems#Effort_parent":{color:"#6366f1",width:2,arrow:"standard"},"https://exocortex.my/ontology/exo#Asset_prototype":{color:"#f59e0b",lineStyle:"dashed",arrow:"circle"},"https://exocortex.my/ontology/exo#references":{color:"#22c55e",opacity:.4,arrow:"standard"}};function UL(n,e){return{...n,...Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}}o(UL,"mergeNodeStyles");function qL(n,e){return{...n,...Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}}o(qL,"mergeEdgeStyles");function WL(n){let e=n.lastIndexOf("#"),t=n.lastIndexOf("/"),r=Math.max(e,t);return r>=0?n.substring(r+1):n}o(WL,"extractLocalName");function GL(n){return n===Ut.RDF_TYPE_PREDICATES.RDFS_CLASS||n===Ut.RDF_TYPE_PREDICATES.OWL_CLASS}o(GL,"isClassType");function zL(n){return n===Ut.RDF_TYPE_PREDICATES.RDF_TYPE}o(zL,"isTypePredicate");function HL(n){return n===Ut.RDF_TYPE_PREDICATES.RDFS_SUBCLASS_OF}o(HL,"isSubClassPredicate")});var vT=S(ST=>{"use strict";Object.defineProperty(ST,"__esModule",{value:!0})});var Ae=S(ch=>{"use strict";Object.defineProperty(ch,"__esModule",{value:!0});ch.IRI=void 0;var w0=class n{static{o(this,"IRI")}constructor(e){let t=e.trim();if(t.length===0)throw new Error("IRI cannot be empty");if(!n.isValidIRI(t))throw new Error("Invalid IRI format");this._value=t}get value(){return this._value}equals(e){return this._value===e._value}toString(){return this._value}static isValidIRI(e){if(!e||e.trim().length===0||/\s/.test(e)||!/^[a-z][a-z0-9+.-]*:/i.test(e))return!1;let r=["http","https","ftp","ftps","file","mailto","tel","data","ws","wss","urn","obsidian"],i=e.match(/^([a-z][a-z0-9+.-]*?):/i);if(i){let s=i[1].toLowerCase();if(!r.includes(s))return!1}try{return new URL(e),!0}catch{return/^urn:[a-z0-9][a-z0-9-]{0,31}:[^\s]+$/i.test(e)}}};ch.IRI=w0});var Ne=S(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.Literal=void 0;bo.parseLanguageTag=bT;bo.createDirectionalLiteral=KL;bo.createLiteralFromLanguageTag=YL;var QL="http://www.w3.org/2001/XMLSchema#string",Du=class{static{o(this,"Literal")}constructor(e,t,r,i){if(e.length===0)throw new Error("Literal value cannot be empty");if(t&&r)throw new Error("Literal cannot have both datatype and language tag");if(i&&!r)throw new Error("Literal cannot have direction without language tag");if(i&&i!=="ltr"&&i!=="rtl")throw new Error('Direction must be "ltr" or "rtl"');this._value=e,this._datatype=t,this._language=r?r.toLowerCase():void 0,this._direction=i}get value(){return this._value}get datatype(){return this._datatype}get language(){return this._language}get direction(){return this._direction}hasDirection(){return this._direction!==void 0}equals(e){if(this._value!==e._value||this._language!==e._language||this._direction!==e._direction)return!1;let t=this.normalizedDatatype(),r=e.normalizedDatatype();return t===r}normalizedDatatype(){return!this._datatype||this._datatype.value===QL?null:this._datatype.value}toString(){let e=`"${this._value}"`;return this._datatype?e+=`^^<${this._datatype.value}>`:this._language&&(e+=`@${this._language}`,this._direction&&(e+=`--${this._direction}`)),e}};bo.Literal=Du;function bT(n){let t=n.lastIndexOf("--");if(t===-1)return{language:n.toLowerCase()};let r=n.substring(t+2),i=n.substring(0,t);return r==="ltr"||r==="rtl"?{language:i.toLowerCase(),direction:r}:{language:n.toLowerCase()}}o(bT,"parseLanguageTag");function KL(n,e,t){return new Du(n,void 0,e,t)}o(KL,"createDirectionalLiteral");function YL(n,e){let{language:t,direction:r}=bT(e);return new Du(n,void 0,t,r)}o(YL,"createLiteralFromLanguageTag")});var qt=S(uh=>{"use strict";Object.defineProperty(uh,"__esModule",{value:!0});uh.BlankNode=void 0;var lh=class n{static{o(this,"BlankNode")}constructor(e){let t=e.trim();if(t.length===0)throw new Error("BlankNode id cannot be empty");this._id=t}get id(){return this._id}equals(e){return this._id===e._id}toString(){return`_:${this._id}`}static generateId(){return`b${++n.counter}`}static create(){return new n(n.generateId())}};uh.BlankNode=lh;lh.counter=0});var yr=S(fh=>{"use strict";Object.defineProperty(fh,"__esModule",{value:!0});fh.Namespace=void 0;var wT=Ae(),Me=class n{static{o(this,"Namespace")}constructor(e,t){if(e.trim().length===0)throw new Error("Namespace prefix cannot be empty");this._prefix=e,this._iri=new wT.IRI(t)}get prefix(){return this._prefix}get iri(){return this._iri}term(e){return new wT.IRI(`${this._iri.value}${e}`)}expand(e){let t=e.split(":");if(t.length!==2)return null;let[r,i]=t;return r!==this._prefix?null:this.term(i)}static forPrefix(e){if(!/^[a-z][a-zA-Z0-9]*$/.test(e))return null;let t=n.KNOWN_NAMESPACES.find(r=>r.prefix===e);return t||new n(e,`${n.EXOCORTEX_ONTOLOGY_BASE}${e}#`)}static fromPropertyKey(e){let t=/^([a-z][a-zA-Z0-9]*)__(.+)$/.exec(e);if(!t)return null;let r=n.forPrefix(t[1]);return r?{namespace:r,localName:t[2]}:null}};fh.Namespace=Me;Me.RDF=new Me("rdf","http://www.w3.org/1999/02/22-rdf-syntax-ns#");Me.RDFS=new Me("rdfs","http://www.w3.org/2000/01/rdf-schema#");Me.OWL=new Me("owl","http://www.w3.org/2002/07/owl#");Me.XSD=new Me("xsd","http://www.w3.org/2001/XMLSchema#");Me.EXO=new Me("exo","https://exocortex.my/ontology/exo#");Me.EMS=new Me("ems","https://exocortex.my/ontology/ems#");Me.EXOCMD=new Me("exocmd","https://exocortex.my/ontology/exocmd#");Me.IMS=new Me("ims","https://exocortex.my/ontology/ims#");Me.ZTLK=new Me("ztlk","https://exocortex.my/ontology/ztlk#");Me.PTMS=new Me("ptms","https://exocortex.my/ontology/ptms#");Me.LIT=new Me("lit","https://exocortex.my/ontology/lit#");Me.INBOX=new Me("inbox","https://exocortex.my/ontology/inbox#");Me.PMBOK=new Me("pmbok","https://exocortex.my/ontology/pmbok#");Me.EXOCORTEX_ONTOLOGY_BASE="https://exocortex.my/ontology/";Me.KNOWN_NAMESPACES=[Me.EXO,Me.EMS,Me.EXOCMD,Me.IMS,Me.ZTLK,Me.PTMS,Me.LIT,Me.INBOX,Me.PMBOK]});var Yn=S(dh=>{"use strict";Object.defineProperty(dh,"__esModule",{value:!0});dh.Triple=void 0;var E0=Ae(),T0=Ne(),A0=qt(),x0=class{static{o(this,"Triple")}constructor(e,t,r){this._subject=e,this._predicate=t,this._object=r}get subject(){return this._subject}get predicate(){return this._predicate}get object(){return this._object}equals(e){return!(!this.equalsNode(this._subject,e._subject)||!this._predicate.equals(e._predicate)||!this.equalsNode(this._object,e._object))}equalsNode(e,t){return e instanceof E0.IRI&&t instanceof E0.IRI||e instanceof A0.BlankNode&&t instanceof A0.BlankNode||e instanceof T0.Literal&&t instanceof T0.Literal||this.isQuotedTriple(e)&&this.isQuotedTriple(t)?e.equals(t):!1}isQuotedTriple(e){return typeof e=="object"&&e!==null&&"termType"in e&&e.termType==="QuotedTriple"}toString(){let e=this.nodeToString(this._subject),t=`<${this._predicate.value}>`,r=this.nodeToString(this._object);return`${e} ${t} ${r} .`}nodeToString(e){return e instanceof E0.IRI?`<${e.value}>`:e instanceof A0.BlankNode||e instanceof T0.Literal||this.isQuotedTriple(e)?e.toString():""}};dh.Triple=x0});var Nu=S(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});hh.QuotedTriple=void 0;var C0=Ae(),I0=Ne(),R0=qt(),P0=class n{static{o(this,"QuotedTriple")}constructor(e,t,r){this._subject=e,this._predicate=t,this._object=r}get subject(){return this._subject}get predicate(){return this._predicate}get object(){return this._object}equals(e){return!(!this.equalsNode(this._subject,e._subject)||!this._predicate.equals(e._predicate)||!this.equalsNode(this._object,e._object))}equalsNode(e,t){return e instanceof C0.IRI&&t instanceof C0.IRI||e instanceof R0.BlankNode&&t instanceof R0.BlankNode||e instanceof I0.Literal&&t instanceof I0.Literal||e instanceof n&&t instanceof n?e.equals(t):!1}get termType(){return"QuotedTriple"}toString(){let e=this.nodeToString(this._subject),t=`<${this._predicate.value}>`,r=this.nodeToString(this._object);return`<< ${e} ${t} ${r} >>`}nodeToString(e){return e instanceof C0.IRI?`<${e.value}>`:e instanceof R0.BlankNode||e instanceof I0.Literal||e instanceof n?e.toString():""}};hh.QuotedTriple=P0});var ET=S(Zt=>{"use strict";Object.defineProperty(Zt,"__esModule",{value:!0});Zt.QuotedTriple=Zt.Triple=Zt.Namespace=Zt.BlankNode=Zt.createLiteralFromLanguageTag=Zt.createDirectionalLiteral=Zt.parseLanguageTag=Zt.Literal=Zt.IRI=void 0;var XL=Ae();Object.defineProperty(Zt,"IRI",{enumerable:!0,get:o(function(){return XL.IRI},"get")});var ph=Ne();Object.defineProperty(Zt,"Literal",{enumerable:!0,get:o(function(){return ph.Literal},"get")});Object.defineProperty(Zt,"parseLanguageTag",{enumerable:!0,get:o(function(){return ph.parseLanguageTag},"get")});Object.defineProperty(Zt,"createDirectionalLiteral",{enumerable:!0,get:o(function(){return ph.createDirectionalLiteral},"get")});Object.defineProperty(Zt,"createLiteralFromLanguageTag",{enumerable:!0,get:o(function(){return ph.createLiteralFromLanguageTag},"get")});var JL=qt();Object.defineProperty(Zt,"BlankNode",{enumerable:!0,get:o(function(){return JL.BlankNode},"get")});var ZL=yr();Object.defineProperty(Zt,"Namespace",{enumerable:!0,get:o(function(){return ZL.Namespace},"get")});var ek=Yn();Object.defineProperty(Zt,"Triple",{enumerable:!0,get:o(function(){return ek.Triple},"get")});var tk=Nu();Object.defineProperty(Zt,"QuotedTriple",{enumerable:!0,get:o(function(){return tk.QuotedTriple},"get")})});var mh=S(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});Jn.UUID_URL_NAMESPACE=Jn.DEFAULT_LANGUAGE_TAG=Jn.REQUIRED_PROPERTIES=Jn.ALLOWED_PROPERTIES=Jn.Exo003MetadataType=void 0;var Xn;(function(n){n.Namespace="namespace",n.Anchor="anchor",n.BlankNode="blank_node",n.Statement="statement",n.Body="body"})(Xn||(Jn.Exo003MetadataType=Xn={}));Jn.ALLOWED_PROPERTIES={[Xn.Namespace]:["metadata","uri","aliases"],[Xn.Anchor]:["metadata","uri","aliases"],[Xn.BlankNode]:["metadata","uri","aliases"],[Xn.Statement]:["metadata","subject","predicate","object","aliases"],[Xn.Body]:["metadata","subject","predicate","aliases"]};Jn.REQUIRED_PROPERTIES={[Xn.Namespace]:["metadata","uri"],[Xn.Anchor]:["metadata","uri"],[Xn.BlankNode]:["metadata","uri"],[Xn.Statement]:["metadata","subject","predicate","object"],[Xn.Body]:["metadata","subject","predicate"]};Jn.DEFAULT_LANGUAGE_TAG="ru";Jn.UUID_URL_NAMESPACE="6ba7b811-9dad-11d1-80b4-00c04fd430c8"});var TT=S(O0=>{"use strict";Object.defineProperty(O0,"__esModule",{value:!0});O0.default="ffffffff-ffff-ffff-ffff-ffffffffffff"});var AT=S(F0=>{"use strict";Object.defineProperty(F0,"__esModule",{value:!0});F0.default="00000000-0000-0000-0000-000000000000"});var xT=S(D0=>{"use strict";Object.defineProperty(D0,"__esModule",{value:!0});D0.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});var Lu=S(N0=>{"use strict";Object.defineProperty(N0,"__esModule",{value:!0});var rk=xT();function nk(n){return typeof n=="string"&&rk.default.test(n)}o(nk,"validate");N0.default=nk});var ku=S(L0=>{"use strict";Object.defineProperty(L0,"__esModule",{value:!0});var ik=Lu();function sk(n){if(!(0,ik.default)(n))throw TypeError("Invalid UUID");let e;return Uint8Array.of((e=parseInt(n.slice(0,8),16))>>>24,e>>>16&255,e>>>8&255,e&255,(e=parseInt(n.slice(9,13),16))>>>8,e&255,(e=parseInt(n.slice(14,18),16))>>>8,e&255,(e=parseInt(n.slice(19,23),16))>>>8,e&255,(e=parseInt(n.slice(24,36),16))/1099511627776&255,e/4294967296&255,e>>>24&255,e>>>16&255,e>>>8&255,e&255)}o(sk,"parse");L0.default=sk});var Ws=S(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});Mu.unsafeStringify=void 0;var ak=Lu(),Fr=[];for(let n=0;n<256;++n)Fr.push((n+256).toString(16).slice(1));function CT(n,e=0){return(Fr[n[e+0]]+Fr[n[e+1]]+Fr[n[e+2]]+Fr[n[e+3]]+"-"+Fr[n[e+4]]+Fr[n[e+5]]+"-"+Fr[n[e+6]]+Fr[n[e+7]]+"-"+Fr[n[e+8]]+Fr[n[e+9]]+"-"+Fr[n[e+10]]+Fr[n[e+11]]+Fr[n[e+12]]+Fr[n[e+13]]+Fr[n[e+14]]+Fr[n[e+15]]).toLowerCase()}o(CT,"unsafeStringify");Mu.unsafeStringify=CT;function ok(n,e=0){let t=CT(n,e);if(!(0,ak.default)(t))throw TypeError("Stringified UUID is invalid");return t}o(ok,"stringify");Mu.default=ok});var _h=S(k0=>{"use strict";Object.defineProperty(k0,"__esModule",{value:!0});var ck=require("crypto"),yh=new Uint8Array(256),gh=yh.length;function lk(){return gh>yh.length-16&&((0,ck.randomFillSync)(yh),gh=0),yh.slice(gh,gh+=16)}o(lk,"rng");k0.default=lk});var M0=S($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});$u.updateV1State=void 0;var IT=_h(),uk=Ws(),ju={};function fk(n,e,t){let r,i=n?._v6??!1;if(n){let s=Object.keys(n);s.length===1&&s[0]==="_v6"&&(n=void 0)}if(n)r=RT(n.random??n.rng?.()??(0,IT.default)(),n.msecs,n.nsecs,n.clockseq,n.node,e,t);else{let s=Date.now(),a=(0,IT.default)();PT(ju,s,a),r=RT(a,ju.msecs,ju.nsecs,i?void 0:ju.clockseq,i?void 0:ju.node,e,t)}return e??(0,uk.unsafeStringify)(r)}o(fk,"v1");function PT(n,e,t){return n.msecs??=-1/0,n.nsecs??=0,e===n.msecs?(n.nsecs++,n.nsecs>=1e4&&(n.node=void 0,n.nsecs=0)):e>n.msecs?n.nsecs=0:e<n.msecs&&(n.node=void 0),n.node||(n.node=t.slice(10,16),n.node[0]|=1,n.clockseq=(t[8]<<8|t[9])&16383),n.msecs=e,n}o(PT,"updateV1State");$u.updateV1State=PT;function RT(n,e,t,r,i,s,a=0){if(n.length<16)throw new Error("Random bytes length must be >= 16");if(!s)s=new Uint8Array(16),a=0;else if(a<0||a+16>s.length)throw new RangeError(`UUID byte range ${a}:${a+15} is out of buffer bounds`);e??=Date.now(),t??=0,r??=(n[8]<<8|n[9])&16383,i??=n.slice(10,16),e+=122192928e5;let c=((e&268435455)*1e4+t)%4294967296;s[a++]=c>>>24&255,s[a++]=c>>>16&255,s[a++]=c>>>8&255,s[a++]=c&255;let l=e/4294967296*1e4&268435455;s[a++]=l>>>8&255,s[a++]=l&255,s[a++]=l>>>24&15|16,s[a++]=l>>>16&255,s[a++]=r>>>8|128,s[a++]=r&255;for(let u=0;u<6;++u)s[a++]=i[u];return s}o(RT,"v1Bytes");$u.default=fk});var $0=S(j0=>{"use strict";Object.defineProperty(j0,"__esModule",{value:!0});var dk=ku(),hk=Ws();function pk(n){let e=typeof n=="string"?(0,dk.default)(n):n,t=mk(e);return typeof n=="string"?(0,hk.unsafeStringify)(t):t}o(pk,"v1ToV6");j0.default=pk;function mk(n){return Uint8Array.of((n[6]&15)<<4|n[7]>>4&15,(n[7]&15)<<4|(n[4]&240)>>4,(n[4]&15)<<4|(n[5]&240)>>4,(n[5]&15)<<4|(n[0]&240)>>4,(n[0]&15)<<4|(n[1]&240)>>4,(n[1]&15)<<4|(n[2]&240)>>4,96|n[2]&15,n[3],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15])}o(mk,"_v1ToV6")});var OT=S(B0=>{"use strict";Object.defineProperty(B0,"__esModule",{value:!0});var gk=require("crypto");function yk(n){return Array.isArray(n)?n=Buffer.from(n):typeof n=="string"&&(n=Buffer.from(n,"utf8")),(0,gk.createHash)("md5").update(n).digest()}o(yk,"md5");B0.default=yk});var Bu=S(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});Gs.URL=Gs.DNS=Gs.stringToBytes=void 0;var FT=ku(),_k=Ws();function DT(n){n=unescape(encodeURIComponent(n));let e=new Uint8Array(n.length);for(let t=0;t<n.length;++t)e[t]=n.charCodeAt(t);return e}o(DT,"stringToBytes");Gs.stringToBytes=DT;Gs.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8";Gs.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function Sk(n,e,t,r,i,s){let a=typeof t=="string"?DT(t):t,c=typeof r=="string"?(0,FT.default)(r):r;if(typeof r=="string"&&(r=(0,FT.default)(r)),r?.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let l=new Uint8Array(16+a.length);if(l.set(c),l.set(a,c.length),l=e(l),l[6]=l[6]&15|n,l[8]=l[8]&63|128,i){s=s||0;for(let u=0;u<16;++u)i[s+u]=l[u];return i}return(0,_k.unsafeStringify)(l)}o(Sk,"v35");Gs.default=Sk});var LT=S(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.URL=wo.DNS=void 0;var vk=OT(),V0=Bu(),NT=Bu();Object.defineProperty(wo,"DNS",{enumerable:!0,get:o(function(){return NT.DNS},"get")});Object.defineProperty(wo,"URL",{enumerable:!0,get:o(function(){return NT.URL},"get")});function U0(n,e,t,r){return(0,V0.default)(48,vk.default,n,e,t,r)}o(U0,"v3");U0.DNS=V0.DNS;U0.URL=V0.URL;wo.default=U0});var kT=S(q0=>{"use strict";Object.defineProperty(q0,"__esModule",{value:!0});var bk=require("crypto");q0.default={randomUUID:bk.randomUUID}});var jT=S(W0=>{"use strict";Object.defineProperty(W0,"__esModule",{value:!0});var MT=kT(),wk=_h(),Ek=Ws();function Tk(n,e,t){if(MT.default.randomUUID&&!e&&!n)return MT.default.randomUUID();n=n||{};let r=n.random??n.rng?.()??(0,wk.default)();if(r.length<16)throw new Error("Random bytes length must be >= 16");if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){if(t=t||0,t<0||t+16>e.length)throw new RangeError(`UUID byte range ${t}:${t+15} is out of buffer bounds`);for(let i=0;i<16;++i)e[t+i]=r[i];return e}return(0,Ek.unsafeStringify)(r)}o(Tk,"v4");W0.default=Tk});var $T=S(G0=>{"use strict";Object.defineProperty(G0,"__esModule",{value:!0});var Ak=require("crypto");function xk(n){return Array.isArray(n)?n=Buffer.from(n):typeof n=="string"&&(n=Buffer.from(n,"utf8")),(0,Ak.createHash)("sha1").update(n).digest()}o(xk,"sha1");G0.default=xk});var VT=S(Eo=>{"use strict";Object.defineProperty(Eo,"__esModule",{value:!0});Eo.URL=Eo.DNS=void 0;var Ck=$T(),z0=Bu(),BT=Bu();Object.defineProperty(Eo,"DNS",{enumerable:!0,get:o(function(){return BT.DNS},"get")});Object.defineProperty(Eo,"URL",{enumerable:!0,get:o(function(){return BT.URL},"get")});function H0(n,e,t,r){return(0,z0.default)(80,Ck.default,n,e,t,r)}o(H0,"v5");H0.DNS=z0.DNS;H0.URL=z0.URL;Eo.default=H0});var UT=S(Q0=>{"use strict";Object.defineProperty(Q0,"__esModule",{value:!0});var Ik=Ws(),Rk=M0(),Pk=$0();function Ok(n,e,t){n??={},t??=0;let r=(0,Rk.default)({...n,_v6:!0},new Uint8Array(16));if(r=(0,Pk.default)(r),e){for(let i=0;i<16;i++)e[t+i]=r[i];return e}return(0,Ik.unsafeStringify)(r)}o(Ok,"v6");Q0.default=Ok});var qT=S(K0=>{"use strict";Object.defineProperty(K0,"__esModule",{value:!0});var Fk=ku(),Dk=Ws();function Nk(n){let e=typeof n=="string"?(0,Fk.default)(n):n,t=Lk(e);return typeof n=="string"?(0,Dk.unsafeStringify)(t):t}o(Nk,"v6ToV1");K0.default=Nk;function Lk(n){return Uint8Array.of((n[3]&15)<<4|n[4]>>4&15,(n[4]&15)<<4|(n[5]&240)>>4,(n[5]&15)<<4|n[6]&15,n[7],(n[1]&15)<<4|(n[2]&240)>>4,(n[2]&15)<<4|(n[3]&240)>>4,16|(n[0]&240)>>4,(n[0]&15)<<4|(n[1]&240)>>4,n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15])}o(Lk,"_v6ToV1")});var HT=S(Vu=>{"use strict";Object.defineProperty(Vu,"__esModule",{value:!0});Vu.updateV7State=void 0;var WT=_h(),kk=Ws(),Y0={};function Mk(n,e,t){let r;if(n)r=GT(n.random??n.rng?.()??(0,WT.default)(),n.msecs,n.seq,e,t);else{let i=Date.now(),s=(0,WT.default)();zT(Y0,i,s),r=GT(s,Y0.msecs,Y0.seq,e,t)}return e??(0,kk.unsafeStringify)(r)}o(Mk,"v7");function zT(n,e,t){return n.msecs??=-1/0,n.seq??=0,e>n.msecs?(n.seq=t[6]<<23|t[7]<<16|t[8]<<8|t[9],n.msecs=e):(n.seq=n.seq+1|0,n.seq===0&&n.msecs++),n}o(zT,"updateV7State");Vu.updateV7State=zT;function GT(n,e,t,r,i=0){if(n.length<16)throw new Error("Random bytes length must be >= 16");if(!r)r=new Uint8Array(16),i=0;else if(i<0||i+16>r.length)throw new RangeError(`UUID byte range ${i}:${i+15} is out of buffer bounds`);return e??=Date.now(),t??=n[6]*127<<24|n[7]<<16|n[8]<<8|n[9],r[i++]=e/1099511627776&255,r[i++]=e/4294967296&255,r[i++]=e/16777216&255,r[i++]=e/65536&255,r[i++]=e/256&255,r[i++]=e&255,r[i++]=112|t>>>28&15,r[i++]=t>>>20&255,r[i++]=128|t>>>14&63,r[i++]=t>>>6&255,r[i++]=t<<2&255|n[10]&3,r[i++]=n[11],r[i++]=n[12],r[i++]=n[13],r[i++]=n[14],r[i++]=n[15],r}o(GT,"v7Bytes");Vu.default=Mk});var QT=S(X0=>{"use strict";Object.defineProperty(X0,"__esModule",{value:!0});var jk=Lu();function $k(n){if(!(0,jk.default)(n))throw TypeError("Invalid UUID");return parseInt(n.slice(14,15),16)}o($k,"version");X0.default=$k});var Tn=S(ct=>{"use strict";Object.defineProperty(ct,"__esModule",{value:!0});ct.version=ct.validate=ct.v7=ct.v6ToV1=ct.v6=ct.v5=ct.v4=ct.v3=ct.v1ToV6=ct.v1=ct.stringify=ct.parse=ct.NIL=ct.MAX=void 0;var Bk=TT();Object.defineProperty(ct,"MAX",{enumerable:!0,get:o(function(){return Bk.default},"get")});var Vk=AT();Object.defineProperty(ct,"NIL",{enumerable:!0,get:o(function(){return Vk.default},"get")});var Uk=ku();Object.defineProperty(ct,"parse",{enumerable:!0,get:o(function(){return Uk.default},"get")});var qk=Ws();Object.defineProperty(ct,"stringify",{enumerable:!0,get:o(function(){return qk.default},"get")});var Wk=M0();Object.defineProperty(ct,"v1",{enumerable:!0,get:o(function(){return Wk.default},"get")});var Gk=$0();Object.defineProperty(ct,"v1ToV6",{enumerable:!0,get:o(function(){return Gk.default},"get")});var zk=LT();Object.defineProperty(ct,"v3",{enumerable:!0,get:o(function(){return zk.default},"get")});var Hk=jT();Object.defineProperty(ct,"v4",{enumerable:!0,get:o(function(){return Hk.default},"get")});var Qk=VT();Object.defineProperty(ct,"v5",{enumerable:!0,get:o(function(){return Qk.default},"get")});var Kk=UT();Object.defineProperty(ct,"v6",{enumerable:!0,get:o(function(){return Kk.default},"get")});var Yk=qT();Object.defineProperty(ct,"v6ToV1",{enumerable:!0,get:o(function(){return Yk.default},"get")});var Xk=HT();Object.defineProperty(ct,"v7",{enumerable:!0,get:o(function(){return Xk.default},"get")});var Jk=Lu();Object.defineProperty(ct,"validate",{enumerable:!0,get:o(function(){return Jk.default},"get")});var Zk=QT();Object.defineProperty(ct,"version",{enumerable:!0,get:o(function(){return Zk.default},"get")})});var e_=S(Sh=>{"use strict";Object.defineProperty(Sh,"__esModule",{value:!0});Sh.Exo003UUIDGenerator=void 0;var J0=Tn(),KT=mh(),Z0=class{static{o(this,"Exo003UUIDGenerator")}static generateNamespaceUUID(e){if(!e||e.trim().length===0)throw new Error("Namespace URI cannot be empty");return(0,J0.v5)(e,KT.UUID_URL_NAMESPACE)}static generateAssetUUID(e,t){if(!t||t.trim().length===0)throw new Error("Local identifier cannot be empty");let r=this.generateNamespaceUUID(e);return(0,J0.v5)(t,r)}static generateFromIRI(e){if(!e||e.trim().length===0)throw new Error("IRI cannot be empty");let{namespace:t,localName:r}=this.splitIRI(e);return r?this.generateAssetUUID(t,r):(0,J0.v5)(e,KT.UUID_URL_NAMESPACE)}static generateBlankNodeUUID(e,t){if(!e||e.trim().length===0)throw new Error("Blank node ID cannot be empty");let r="urn:exocortex:blank-node:",i=t?`${t}#${e}`:e;return this.generateAssetUUID(r,i)}static generateStatementUUID(e,t,r){if(!e||!t||!r)throw new Error("Subject, predicate, and object cannot be empty");let i="urn:exocortex:statement:",s=`${e} ${t} ${r}`;return this.generateAssetUUID(i,s)}static generateBodyUUID(e,t){let r="urn:exocortex:body:",i=e;return t?.datatype?i+=`^^${t.datatype}`:t?.language&&(i+=`@${t.language}`,t.direction&&(i+=`--${t.direction}`)),this.generateAssetUUID(r,i)}static splitIRI(e){let t=e.lastIndexOf("#");if(t!==-1&&t<e.length-1)return{namespace:e.substring(0,t+1),localName:e.substring(t+1)};let r=e.lastIndexOf("/"),i=e.indexOf("://");return r!==-1&&r>i+2&&r<e.length-1?{namespace:e.substring(0,r+1),localName:e.substring(r+1)}:{namespace:e,localName:""}}static isValidUUID(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}};Sh.Exo003UUIDGenerator=Z0});var XT=S(bh=>{"use strict";Object.defineProperty(bh,"__esModule",{value:!0});bh.Exo003Parser=void 0;var mt=mh(),Uu=e_(),xa=Ae(),vh=Ne(),YT=qt(),eM=Yn(),t_=class{static{o(this,"Exo003Parser")}static parse(e,t){let r=this.validate(e);if(!r.valid)return{success:!1,errors:r.errors};let i=e.metadata;try{return{success:!0,metadata:this.parseByType(e,i),bodyContent:i===mt.Exo003MetadataType.Body?t:void 0}}catch(s){return{success:!1,errors:[s instanceof Error?s.message:String(s)]}}}static validate(e){let t=[],r=[];if(!e.metadata)return t.push("Missing required property: metadata"),{valid:!1,errors:t,warnings:r};let i=e.metadata;if(!Object.values(mt.Exo003MetadataType).includes(i))return t.push(`Invalid metadata: ${i}. Valid types: ${Object.values(mt.Exo003MetadataType).join(", ")}`),{valid:!1,errors:t,warnings:r};let s=i,a=mt.ALLOWED_PROPERTIES[s],c=mt.REQUIRED_PROPERTIES[s];for(let l of c)(e[l]===void 0||e[l]===null)&&t.push(`Missing required property: ${l}`);for(let l of Object.keys(e))a.includes(l)||t.push(`Forbidden property for ${s}: ${l}`);switch(s){case mt.Exo003MetadataType.Namespace:this.validateNamespaceMetadata(e,t);break;case mt.Exo003MetadataType.Anchor:this.validateAnchorMetadata(e,t);break;case mt.Exo003MetadataType.BlankNode:this.validateBlankNodeMetadata(e,t);break;case mt.Exo003MetadataType.Statement:this.validateStatementMetadata(e,t);break;case mt.Exo003MetadataType.Body:this.validateBodyMetadata(e,t,r);break}return{valid:t.length===0,errors:t,warnings:r}}static parseByType(e,t){let r={metadata:t,aliases:e.aliases};switch(t){case mt.Exo003MetadataType.Namespace:return{...r,metadata:mt.Exo003MetadataType.Namespace,uri:e.uri};case mt.Exo003MetadataType.Anchor:return{...r,metadata:mt.Exo003MetadataType.Anchor,uri:e.uri};case mt.Exo003MetadataType.BlankNode:return{...r,metadata:mt.Exo003MetadataType.BlankNode,uri:e.uri};case mt.Exo003MetadataType.Statement:return{...r,metadata:mt.Exo003MetadataType.Statement,subject:e.subject,predicate:e.predicate,object:e.object};case mt.Exo003MetadataType.Body:return{...r,metadata:mt.Exo003MetadataType.Body,subject:e.subject,predicate:e.predicate}}}static validateNamespaceMetadata(e,t){let r=e.uri;if(r&&typeof r!="string")t.push("uri must be a string");else if(r)try{new xa.IRI(r)}catch{t.push(`uri is not a valid IRI: ${String(r)}`)}}static validateAnchorMetadata(e,t){let r=e.uri;if(r&&typeof r!="string")t.push("uri must be a string");else if(r)try{new xa.IRI(r)}catch{t.push(`uri is not a valid IRI: ${String(r)}`)}}static validateBlankNodeMetadata(e,t){let r=e.uri;if(r&&typeof r!="string")t.push("uri must be a string");else if(r){let i=r;if(!i.startsWith("_:"))try{new xa.IRI(i)}catch{t.push(`uri is not a valid IRI or blank node identifier: ${String(r)}`)}}}static validateStatementMetadata(e,t){let r=e.subject,i=e.predicate,s=e.object,a=[["subject",r],["predicate",i],["object",s]];for(let[c,l]of a)l&&typeof l!="string"&&t.push(`${c} must be a string`)}static validateBodyMetadata(e,t,r){let i=e.subject,s=e.predicate;i&&typeof i!="string"&&t.push("subject must be a string"),s&&typeof s!="string"&&t.push("predicate must be a string")}static toTriple(e,t,r){let i=t(e.subject),s;if(i.type==="iri")s=new xa.IRI(i.value);else if(i.type==="blank")s=new YT.BlankNode(i.value);else throw new Error("Statement subject cannot be a literal");let a=t(e.predicate);if(a.type!=="iri")throw new Error("Statement predicate must be an IRI");let c=new xa.IRI(a.value),l=t(e.object),u;if(l.type==="iri")u=new xa.IRI(l.value);else if(l.type==="blank")u=new YT.BlankNode(l.value);else{let f=r||l.value;if(l.datatype)u=new vh.Literal(f,new xa.IRI(l.datatype));else{let d=l.language||mt.DEFAULT_LANGUAGE_TAG;u=(0,vh.createDirectionalLiteral)(f,d,l.direction)}}return new eM.Triple(s,c,u)}static toLiteral(e,t,r){if(r?.datatype)return new vh.Literal(t,new xa.IRI(r.datatype));let i=r?.language||mt.DEFAULT_LANGUAGE_TAG;return(0,vh.createDirectionalLiteral)(t,i,r?.direction)}static isExo003Format(e){let t=e.metadata;return typeof t=="string"&&Object.values(mt.Exo003MetadataType).includes(t)}static generateUUID(e,t){switch(e.metadata){case mt.Exo003MetadataType.Namespace:return Uu.Exo003UUIDGenerator.generateNamespaceUUID(e.uri);case mt.Exo003MetadataType.Anchor:return Uu.Exo003UUIDGenerator.generateNamespaceUUID(e.uri);case mt.Exo003MetadataType.BlankNode:return Uu.Exo003UUIDGenerator.generateNamespaceUUID(e.uri);case mt.Exo003MetadataType.Statement:{let r=e;return Uu.Exo003UUIDGenerator.generateStatementUUID(r.subject,r.predicate,r.object)}case mt.Exo003MetadataType.Body:{let r=e;return Uu.Exo003UUIDGenerator.generateBodyUUID(r.subject+"|"+r.predicate)}}}};bh.Exo003Parser=t_});var r_=S(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.Exo003Parser=qr.Exo003UUIDGenerator=qr.UUID_URL_NAMESPACE=qr.DEFAULT_LANGUAGE_TAG=qr.REQUIRED_PROPERTIES=qr.ALLOWED_PROPERTIES=qr.Exo003MetadataType=void 0;var qu=mh();Object.defineProperty(qr,"Exo003MetadataType",{enumerable:!0,get:o(function(){return qu.Exo003MetadataType},"get")});Object.defineProperty(qr,"ALLOWED_PROPERTIES",{enumerable:!0,get:o(function(){return qu.ALLOWED_PROPERTIES},"get")});Object.defineProperty(qr,"REQUIRED_PROPERTIES",{enumerable:!0,get:o(function(){return qu.REQUIRED_PROPERTIES},"get")});Object.defineProperty(qr,"DEFAULT_LANGUAGE_TAG",{enumerable:!0,get:o(function(){return qu.DEFAULT_LANGUAGE_TAG},"get")});Object.defineProperty(qr,"UUID_URL_NAMESPACE",{enumerable:!0,get:o(function(){return qu.UUID_URL_NAMESPACE},"get")});var tM=e_();Object.defineProperty(qr,"Exo003UUIDGenerator",{enumerable:!0,get:o(function(){return tM.Exo003UUIDGenerator},"get")});var rM=XT();Object.defineProperty(qr,"Exo003Parser",{enumerable:!0,get:o(function(){return rM.Exo003Parser},"get")})});var zs=S(wh=>{"use strict";Object.defineProperty(wh,"__esModule",{value:!0});wh.WikiLinkHelpers=void 0;var Wu=class{static{o(this,"WikiLinkHelpers")}static normalize(e){if(!e)return"";let t=e.replace(this.WIKI_LINK_PATTERN,"").trim();if(!t)return"";let r=t.indexOf("|");if(r===-1)return t;let i=t.substring(0,r).trim(),s=t.substring(r+1).trim();return this.UUID_PATTERN.test(i)&&s||i}static normalizeArray(e){return e?(Array.isArray(e)?e:[e]).map(r=>this.normalize(r)).filter(r=>r.length>0):[]}static equals(e,t){return this.normalize(e)===this.normalize(t)}static includes(e,t){let r=this.normalizeArray(e),i=this.normalize(t);return r.includes(i)}};wh.WikiLinkHelpers=Wu;Wu.WIKI_LINK_PATTERN=/\[\[|\]\]/g;Wu.UUID_PATTERN=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i});var Mn=S(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.CommandBindingProperty=tt.GroundingProperty=tt.PreconditionProperty=tt.CommandProperty=tt.GroundingType=tt.getEffortStatusLabel=tt.isTrashedStatus=tt.isDoneStatus=tt.normalizeEffortStatus=tt.EFFORT_STATUS_OPTIONS=tt.STATUS_NAME_TO_WIKILINK=tt.STATUS_NAME_TO_ENUM=tt.EFFORT_STATUS_CONFIG=tt.EffortStatus=tt.AssetClass=void 0;var nM=Fu();Object.defineProperty(tt,"AssetClass",{enumerable:!0,get:o(function(){return nM.AssetClass},"get")});var iM=Ec();Object.defineProperty(tt,"EffortStatus",{enumerable:!0,get:o(function(){return iM.EffortStatus},"get")});var Ca=y0();Object.defineProperty(tt,"EFFORT_STATUS_CONFIG",{enumerable:!0,get:o(function(){return Ca.EFFORT_STATUS_CONFIG},"get")});Object.defineProperty(tt,"STATUS_NAME_TO_ENUM",{enumerable:!0,get:o(function(){return Ca.STATUS_NAME_TO_ENUM},"get")});Object.defineProperty(tt,"STATUS_NAME_TO_WIKILINK",{enumerable:!0,get:o(function(){return Ca.STATUS_NAME_TO_WIKILINK},"get")});Object.defineProperty(tt,"EFFORT_STATUS_OPTIONS",{enumerable:!0,get:o(function(){return Ca.EFFORT_STATUS_OPTIONS},"get")});Object.defineProperty(tt,"normalizeEffortStatus",{enumerable:!0,get:o(function(){return Ca.normalizeEffortStatus},"get")});Object.defineProperty(tt,"isDoneStatus",{enumerable:!0,get:o(function(){return Ca.isDoneStatus},"get")});Object.defineProperty(tt,"isTrashedStatus",{enumerable:!0,get:o(function(){return Ca.isTrashedStatus},"get")});Object.defineProperty(tt,"getEffortStatusLabel",{enumerable:!0,get:o(function(){return Ca.getEffortStatusLabel},"get")});var sM=Tc();Object.defineProperty(tt,"GroundingType",{enumerable:!0,get:o(function(){return sM.GroundingType},"get")});var Eh=_0();Object.defineProperty(tt,"CommandProperty",{enumerable:!0,get:o(function(){return Eh.CommandProperty},"get")});Object.defineProperty(tt,"PreconditionProperty",{enumerable:!0,get:o(function(){return Eh.PreconditionProperty},"get")});Object.defineProperty(tt,"GroundingProperty",{enumerable:!0,get:o(function(){return Eh.GroundingProperty},"get")});Object.defineProperty(tt,"CommandBindingProperty",{enumerable:!0,get:o(function(){return Eh.CommandBindingProperty},"get")})});var xo=S(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.hasClass=Ao;Wr.isAreaOrProject=aM;Wr.isEffort=oM;Wr.hasStatus=cM;Wr.isAssetArchived=lM;Wr.hasEmptyProperties=uM;Wr.needsFolderRepair=fM;Wr.getTodayDateString=n_;Wr.isPlannedForToday=dM;Wr.hasPlannedStartTimestamp=hM;Wr.extractDailyNoteDate=pM;Wr.isCurrentDateGteDay=mM;Wr.inheritsFromPrototype=eA;Wr.isPrototypeClass=yM;var ZT=zs(),To=Mn();function Ao(n,e){return n?(Array.isArray(n)?n:[n]).some(r=>ZT.WikiLinkHelpers.normalize(r)===e):!1}o(Ao,"hasClass");function aM(n){return Ao(n,To.AssetClass.AREA)||Ao(n,To.AssetClass.PROJECT)}o(aM,"isAreaOrProject");function oM(n){return Ao(n,To.AssetClass.TASK)||Ao(n,To.AssetClass.PROJECT)||Ao(n,To.AssetClass.MEETING)}o(oM,"isEffort");function cM(n,e){if(!n)return!1;let t=Array.isArray(n)?n[0]:n;return t?ZT.WikiLinkHelpers.normalize(t)===e:!1}o(cM,"hasStatus");function lM(n){if(n===!0||n===1)return!0;if(typeof n=="string"){let e=n.toLowerCase();return e==="true"||e==="yes"}return!1}o(lM,"isAssetArchived");function uM(n){return!n||Object.keys(n).length===0?!1:Object.values(n).some(e=>!!(e==null||typeof e=="string"&&e.trim()===""||Array.isArray(e)&&e.length===0||typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0))}o(uM,"hasEmptyProperties");function fM(n,e){if(!e)return!1;let t=n.replace(/\/$/,""),r=e.replace(/\/$/,"");return t!==r}o(fM,"needsFolderRepair");function n_(){let n=new Date,e=n.getFullYear(),t=String(n.getMonth()+1).padStart(2,"0"),r=String(n.getDate()).padStart(2,"0");return`${e}-${t}-${r}`}o(n_,"getTodayDateString");function dM(n){let e=n.ems__Effort_plannedStartTimestamp;if(!e)return!1;let t=n_();return typeof e=="string"?e.split("T")[0]===t:Array.isArray(e)&&e.length>0?String(e[0]).split("T")[0]===t:!1}o(dM,"isPlannedForToday");function hM(n){let e=n.ems__Effort_plannedStartTimestamp;return e?typeof e=="string"?e.trim().length>0:Array.isArray(e)&&e.length>0?String(e[0]).trim().length>0:!1:!1}o(hM,"hasPlannedStartTimestamp");function pM(n){let e=n.pn__DailyNote_day;if(!e)return null;if(typeof e=="string"){let t=e.match(/\[\[([^\[\]]+)\]\]/);return t?t[1]:e}if(Array.isArray(e)&&e.length>0){let t=String(e[0]),r=t.match(/\[\[([^\[\]]+)\]\]/);return r?r[1]:t}return null}o(pM,"extractDailyNoteDate");function mM(n){return n_()>=n}o(mM,"isCurrentDateGteDay");function JT(n){return n?n.replace(/^["']|["']$/g,"").replace(/\[\[|\]\]/g,"").trim():""}o(JT,"normalizeWithQuotes");var gM=10;function eA(n,e=gM){let t=n.exo__Class_superClass;if(!t)return!1;let r=new Set,i=[],s=Array.isArray(t)?t:[t];for(let a of s){let c=JT(a);c&&i.push({className:c,depth:0})}for(;i.length>0;){let a=i.shift();if(!a)continue;let{className:c,depth:l}=a;if(l>e)continue;if(c===To.AssetClass.PROTOTYPE)return!0;if(r.has(c))continue;r.add(c);let u=`${c}__exo__Class_superClass`,f=n[u];if(f){let d=Array.isArray(f)?f:[f];for(let h of d){let p=JT(h);p&&!r.has(p)&&i.push({className:p,depth:l+1})}}}return!1}o(eA,"inheritsFromPrototype");function yM(n,e){return Ao(n,To.AssetClass.CLASS)?eA(e):!1}o(yM,"isPrototypeClass")});var tA=S(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});Cc.canCreateTask=_M;Cc.canCreateRelatedTask=SM;Cc.canConvertTaskToProject=vM;Cc.canSetCriticalityZone=bM;var xc=xo(),i_=Mn();function _M(n){return(0,xc.isAreaOrProject)(n.instanceClass)}o(_M,"canCreateTask");function SM(n){return!(!(0,xc.hasClass)(n.instanceClass,i_.AssetClass.TASK)||(0,xc.isAssetArchived)(n.isArchived))}o(SM,"canCreateRelatedTask");function vM(n){return(0,xc.hasClass)(n.instanceClass,i_.AssetClass.TASK)}o(vM,"canConvertTaskToProject");function bM(n){return!(!(0,xc.hasClass)(n.instanceClass,i_.AssetClass.TASK)||(0,xc.isAssetArchived)(n.isArchived))}o(bM,"canSetCriticalityZone")});var rA=S(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});Ic.canCreateProject=wM;Ic.canMoveToAnalysis=EM;Ic.canMoveToToDo=TM;Ic.canConvertProjectToTask=AM;var Ia=xo(),Ra=Mn();function wM(n){return(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.AREA)||(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.INITIATIVE)||(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.PROJECT)}o(wM,"canCreateProject");function EM(n){return(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.PROJECT)?(0,Ia.hasStatus)(n.currentStatus,Ra.EffortStatus.BACKLOG):!1}o(EM,"canMoveToAnalysis");function TM(n){return(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.PROJECT)?(0,Ia.hasStatus)(n.currentStatus,Ra.EffortStatus.ANALYSIS):!1}o(TM,"canMoveToToDo");function AM(n){return(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.PROJECT)}o(AM,"canConvertProjectToTask")});var sA=S(Th=>{"use strict";Object.defineProperty(Th,"__esModule",{value:!0});Th.canCreateChildArea=xM;Th.canSetActiveFocus=CM;var nA=xo(),iA=Mn();function xM(n){return(0,nA.hasClass)(n.instanceClass,iA.AssetClass.AREA)}o(xM,"canCreateChildArea");function CM(n){return(0,nA.hasClass)(n.instanceClass,iA.AssetClass.AREA)}o(CM,"canSetActiveFocus")});var oA=S(un=>{"use strict";Object.defineProperty(un,"__esModule",{value:!0});un.canPlanOnToday=IM;un.canPlanForEvening=RM;un.canShiftDayBackward=PM;un.canShiftDayForward=OM;un.canSetDraftStatus=FM;un.canMoveToBacklog=DM;un.canStartEffort=NM;un.canMarkDone=LM;un.canTrashEffort=kM;un.canVoteOnEffort=MM;un.canRollbackStatus=jM;un.canArchiveTask=$M;un.canMarkReviewed=BM;var aA=zs(),dt=xo(),ln=Mn();function IM(n){return!(!(0,dt.isEffort)(n.instanceClass)||(0,dt.isPlannedForToday)(n.metadata))}o(IM,"canPlanOnToday");function RM(n){return!(0,dt.hasClass)(n.instanceClass,ln.AssetClass.TASK)&&!(0,dt.hasClass)(n.instanceClass,ln.AssetClass.MEETING)?!1:(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.BACKLOG)}o(RM,"canPlanForEvening");function PM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasPlannedStartTimestamp)(n.metadata):!1}o(PM,"canShiftDayBackward");function OM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasPlannedStartTimestamp)(n.metadata):!1}o(OM,"canShiftDayForward");function FM(n){return(0,dt.isEffort)(n.instanceClass)?!n.currentStatus:!1}o(FM,"canSetDraftStatus");function DM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.DRAFT):!1}o(DM,"canMoveToBacklog");function NM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasClass)(n.instanceClass,ln.AssetClass.TASK)||(0,dt.hasClass)(n.instanceClass,ln.AssetClass.MEETING)?(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.BACKLOG):(0,dt.hasClass)(n.instanceClass,ln.AssetClass.PROJECT)?(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.TODO):!1:!1}o(NM,"canStartEffort");function LM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.DOING):!1}o(LM,"canMarkDone");function kM(n){return(0,dt.isEffort)(n.instanceClass)?n.currentStatus?!(Array.isArray(n.currentStatus)?n.currentStatus:[n.currentStatus]).some(r=>{let i=aA.WikiLinkHelpers.normalize(r);return i===ln.EffortStatus.TRASHED||i===ln.EffortStatus.DONE}):!0:!1}o(kM,"canTrashEffort");function MM(n){return!(!(0,dt.isEffort)(n.instanceClass)||(0,dt.isAssetArchived)(n.isArchived))}o(MM,"canVoteOnEffort");function jM(n){if(!(0,dt.isEffort)(n.instanceClass)||(0,dt.isAssetArchived)(n.isArchived)||!n.currentStatus)return!1;let e=Array.isArray(n.currentStatus)?n.currentStatus[0]:n.currentStatus;return!(!e||aA.WikiLinkHelpers.normalize(e)===ln.EffortStatus.TRASHED)}o(jM,"canRollbackStatus");function $M(n){return!(0,dt.isAssetArchived)(n.isArchived)}o($M,"canArchiveTask");function BM(n){return!(!(0,dt.hasClass)(n.instanceClass,ln.AssetClass.TASK)&&!(0,dt.hasClass)(n.instanceClass,ln.AssetClass.PROJECT)||(0,dt.isAssetArchived)(n.isArchived))}o(BM,"canMarkReviewed")});var cA=S(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.canCreateEvent=qM;Zn.canCreateInstance=WM;Zn.canCleanProperties=GM;Zn.canRepairFolder=zM;Zn.canRenameToUid=HM;Zn.canCopyLabelToAliases=QM;Zn.canCreateNarrowerConcept=KM;Zn.canCreateSubclass=YM;Zn.canCreateTaskForDailyNote=XM;Zn.canCopyFleetingNoteLabel=JM;var Gr=xo(),Hs=Mn(),VM="75302770-279e-4a59-ba85-09df29725713",UM="fca0a931-a01f-48e4-b72a-4af206c94bc7";function qM(n){return(0,Gr.isAreaOrProject)(n.instanceClass)}o(qM,"canCreateEvent");function WM(n){return(0,Gr.hasClass)(n.instanceClass,Hs.AssetClass.TASK_PROTOTYPE)||(0,Gr.hasClass)(n.instanceClass,VM)||(0,Gr.hasClass)(n.instanceClass,Hs.AssetClass.MEETING_PROTOTYPE)||(0,Gr.hasClass)(n.instanceClass,Hs.AssetClass.EVENT_PROTOTYPE)||(0,Gr.hasClass)(n.instanceClass,Hs.AssetClass.PROJECT_PROTOTYPE)||(0,Gr.hasClass)(n.instanceClass,Hs.AssetClass.PROTOTYPE)||n.classIsPrototype?!0:(0,Gr.isPrototypeClass)(n.instanceClass,n.metadata)}o(WM,"canCreateInstance");function GM(n){return(0,Gr.hasEmptyProperties)(n.metadata)}o(GM,"canCleanProperties");function zM(n){return(0,Gr.needsFolderRepair)(n.currentFolder,n.expectedFolder)}o(zM,"canRepairFolder");function HM(n,e){let t=n.metadata.exo__Asset_uid;return t?e!==t:!1}o(HM,"canRenameToUid");function QM(n){let e=n.metadata.exo__Asset_label;if(!e||typeof e!="string"||e.trim()==="")return!1;let t=e.trim(),r=n.metadata.aliases;return!r||!Array.isArray(r)||r.length===0?!0:!r.some(i=>typeof i!="string"?!1:i.trim()===t)}o(QM,"canCopyLabelToAliases");function KM(n){return(0,Gr.hasClass)(n.instanceClass,Hs.AssetClass.CONCEPT)}o(KM,"canCreateNarrowerConcept");function YM(n){return(0,Gr.hasClass)(n.instanceClass,Hs.AssetClass.CLASS)}o(YM,"canCreateSubclass");function XM(n){return!(!(0,Gr.hasClass)(n.instanceClass,Hs.AssetClass.DAILY_NOTE)||n.isArchived||!(0,Gr.extractDailyNoteDate)(n.metadata))}o(XM,"canCreateTaskForDailyNote");function JM(n){return(0,Gr.hasClass)(n.instanceClass,Hs.AssetClass.FLEETING_NOTE)||(0,Gr.hasClass)(n.instanceClass,UM)}o(JM,"canCopyFleetingNoteLabel")});var uA=S(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.canCopyFleetingNoteLabel=L.canCreateTaskForDailyNote=L.canCreateSubclass=L.canCreateNarrowerConcept=L.canCopyLabelToAliases=L.canRenameToUid=L.canRepairFolder=L.canCleanProperties=L.canCreateInstance=L.canCreateEvent=L.canMarkReviewed=L.canArchiveTask=L.canRollbackStatus=L.canVoteOnEffort=L.canTrashEffort=L.canMarkDone=L.canStartEffort=L.canMoveToBacklog=L.canSetDraftStatus=L.canShiftDayForward=L.canShiftDayBackward=L.canPlanForEvening=L.canPlanOnToday=L.canSetActiveFocus=L.canCreateChildArea=L.canConvertProjectToTask=L.canMoveToToDo=L.canMoveToAnalysis=L.canCreateProject=L.canSetCriticalityZone=L.canConvertTaskToProject=L.canCreateRelatedTask=L.canCreateTask=L.isPrototypeClass=L.inheritsFromPrototype=L.isCurrentDateGteDay=L.extractDailyNoteDate=L.hasPlannedStartTimestamp=L.isPlannedForToday=L.getTodayDateString=L.needsFolderRepair=L.hasEmptyProperties=L.isAssetArchived=L.hasStatus=L.isEffort=L.isAreaOrProject=L.hasClass=void 0;var An=xo();Object.defineProperty(L,"hasClass",{enumerable:!0,get:o(function(){return An.hasClass},"get")});Object.defineProperty(L,"isAreaOrProject",{enumerable:!0,get:o(function(){return An.isAreaOrProject},"get")});Object.defineProperty(L,"isEffort",{enumerable:!0,get:o(function(){return An.isEffort},"get")});Object.defineProperty(L,"hasStatus",{enumerable:!0,get:o(function(){return An.hasStatus},"get")});Object.defineProperty(L,"isAssetArchived",{enumerable:!0,get:o(function(){return An.isAssetArchived},"get")});Object.defineProperty(L,"hasEmptyProperties",{enumerable:!0,get:o(function(){return An.hasEmptyProperties},"get")});Object.defineProperty(L,"needsFolderRepair",{enumerable:!0,get:o(function(){return An.needsFolderRepair},"get")});Object.defineProperty(L,"getTodayDateString",{enumerable:!0,get:o(function(){return An.getTodayDateString},"get")});Object.defineProperty(L,"isPlannedForToday",{enumerable:!0,get:o(function(){return An.isPlannedForToday},"get")});Object.defineProperty(L,"hasPlannedStartTimestamp",{enumerable:!0,get:o(function(){return An.hasPlannedStartTimestamp},"get")});Object.defineProperty(L,"extractDailyNoteDate",{enumerable:!0,get:o(function(){return An.extractDailyNoteDate},"get")});Object.defineProperty(L,"isCurrentDateGteDay",{enumerable:!0,get:o(function(){return An.isCurrentDateGteDay},"get")});Object.defineProperty(L,"inheritsFromPrototype",{enumerable:!0,get:o(function(){return An.inheritsFromPrototype},"get")});Object.defineProperty(L,"isPrototypeClass",{enumerable:!0,get:o(function(){return An.isPrototypeClass},"get")});var Ah=tA();Object.defineProperty(L,"canCreateTask",{enumerable:!0,get:o(function(){return Ah.canCreateTask},"get")});Object.defineProperty(L,"canCreateRelatedTask",{enumerable:!0,get:o(function(){return Ah.canCreateRelatedTask},"get")});Object.defineProperty(L,"canConvertTaskToProject",{enumerable:!0,get:o(function(){return Ah.canConvertTaskToProject},"get")});Object.defineProperty(L,"canSetCriticalityZone",{enumerable:!0,get:o(function(){return Ah.canSetCriticalityZone},"get")});var xh=rA();Object.defineProperty(L,"canCreateProject",{enumerable:!0,get:o(function(){return xh.canCreateProject},"get")});Object.defineProperty(L,"canMoveToAnalysis",{enumerable:!0,get:o(function(){return xh.canMoveToAnalysis},"get")});Object.defineProperty(L,"canMoveToToDo",{enumerable:!0,get:o(function(){return xh.canMoveToToDo},"get")});Object.defineProperty(L,"canConvertProjectToTask",{enumerable:!0,get:o(function(){return xh.canConvertProjectToTask},"get")});var lA=sA();Object.defineProperty(L,"canCreateChildArea",{enumerable:!0,get:o(function(){return lA.canCreateChildArea},"get")});Object.defineProperty(L,"canSetActiveFocus",{enumerable:!0,get:o(function(){return lA.canSetActiveFocus},"get")});var jn=oA();Object.defineProperty(L,"canPlanOnToday",{enumerable:!0,get:o(function(){return jn.canPlanOnToday},"get")});Object.defineProperty(L,"canPlanForEvening",{enumerable:!0,get:o(function(){return jn.canPlanForEvening},"get")});Object.defineProperty(L,"canShiftDayBackward",{enumerable:!0,get:o(function(){return jn.canShiftDayBackward},"get")});Object.defineProperty(L,"canShiftDayForward",{enumerable:!0,get:o(function(){return jn.canShiftDayForward},"get")});Object.defineProperty(L,"canSetDraftStatus",{enumerable:!0,get:o(function(){return jn.canSetDraftStatus},"get")});Object.defineProperty(L,"canMoveToBacklog",{enumerable:!0,get:o(function(){return jn.canMoveToBacklog},"get")});Object.defineProperty(L,"canStartEffort",{enumerable:!0,get:o(function(){return jn.canStartEffort},"get")});Object.defineProperty(L,"canMarkDone",{enumerable:!0,get:o(function(){return jn.canMarkDone},"get")});Object.defineProperty(L,"canTrashEffort",{enumerable:!0,get:o(function(){return jn.canTrashEffort},"get")});Object.defineProperty(L,"canVoteOnEffort",{enumerable:!0,get:o(function(){return jn.canVoteOnEffort},"get")});Object.defineProperty(L,"canRollbackStatus",{enumerable:!0,get:o(function(){return jn.canRollbackStatus},"get")});Object.defineProperty(L,"canArchiveTask",{enumerable:!0,get:o(function(){return jn.canArchiveTask},"get")});Object.defineProperty(L,"canMarkReviewed",{enumerable:!0,get:o(function(){return jn.canMarkReviewed},"get")});var os=cA();Object.defineProperty(L,"canCreateEvent",{enumerable:!0,get:o(function(){return os.canCreateEvent},"get")});Object.defineProperty(L,"canCreateInstance",{enumerable:!0,get:o(function(){return os.canCreateInstance},"get")});Object.defineProperty(L,"canCleanProperties",{enumerable:!0,get:o(function(){return os.canCleanProperties},"get")});Object.defineProperty(L,"canRepairFolder",{enumerable:!0,get:o(function(){return os.canRepairFolder},"get")});Object.defineProperty(L,"canRenameToUid",{enumerable:!0,get:o(function(){return os.canRenameToUid},"get")});Object.defineProperty(L,"canCopyLabelToAliases",{enumerable:!0,get:o(function(){return os.canCopyLabelToAliases},"get")});Object.defineProperty(L,"canCreateNarrowerConcept",{enumerable:!0,get:o(function(){return os.canCreateNarrowerConcept},"get")});Object.defineProperty(L,"canCreateSubclass",{enumerable:!0,get:o(function(){return os.canCreateSubclass},"get")});Object.defineProperty(L,"canCreateTaskForDailyNote",{enumerable:!0,get:o(function(){return os.canCreateTaskForDailyNote},"get")});Object.defineProperty(L,"canCopyFleetingNoteLabel",{enumerable:!0,get:o(function(){return os.canCopyFleetingNoteLabel},"get")})});var fA=S(Co=>{"use strict";var ZM=Co&&Co.__createBinding||(Object.create?(function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(n,r,i)}):(function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]})),e4=Co&&Co.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&ZM(e,n,t)};Object.defineProperty(Co,"__esModule",{value:!0});e4(uA(),Co)});var Ch=S(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.PropertyFieldType=void 0;Gu.rangeToFieldType=n4;var Dr;(function(n){n.Text="text",n.Number="number",n.Date="date",n.DateTime="datetime",n.Boolean="boolean",n.Reference="reference",n.Enum="enum",n.StatusSelect="status-select",n.SizeSelect="size-select",n.Wikilink="wikilink",n.Timestamp="timestamp",n.Unknown="unknown"})(Dr||(Gu.PropertyFieldType=Dr={}));var dA="http://www.w3.org/2001/XMLSchema#",t4="https://exocortex.my/ontology/exo#",r4="https://exocortex.my/ontology/ems#";function n4(n){if(!n)return Dr.Unknown;let e=n.trim();if(!e)return Dr.Unknown;if(e.startsWith(dA)){let t=e.substring(dA.length);return s_(t)}if(e.startsWith("xsd:")){let t=e.substring(4);return s_(t)}if(e.includes("XMLSchema#")){let t=e.indexOf("XMLSchema#"),r=e.substring(t+10);return s_(r)}return e.startsWith(r4)||e.startsWith("ems:")?i4(e):e.startsWith(t4)||e.startsWith("exo:")||s4(e)?Dr.Reference:Dr.Text}o(n4,"rangeToFieldType");function s_(n){switch(n.toLowerCase()){case"string":case"normalizedstring":case"token":case"language":case"nmtoken":case"name":case"ncname":case"anyuri":return Dr.Text;case"integer":case"int":case"long":case"short":case"byte":case"nonnegativeinteger":case"positiveinteger":case"nonpositiveinteger":case"negativeinteger":case"unsignedlong":case"unsignedint":case"unsignedshort":case"unsignedbyte":case"decimal":case"float":case"double":return Dr.Number;case"date":return Dr.Date;case"datetime":case"datetimestamp":return Dr.DateTime;case"boolean":return Dr.Boolean;case"time":return Dr.Timestamp;default:return Dr.Text}}o(s_,"xsdTypeToFieldType");function i4(n){let e=n.toLowerCase();return e.includes("effortstatus")?Dr.StatusSelect:e.includes("tasksize")?Dr.SizeSelect:Dr.Reference}o(i4,"emsTypeToFieldType");function s4(n){let e=n.toLowerCase();return e.includes("exocortex.my/ontology")?!0:["asset","task","project","area","effort","class","property","concept"].some(r=>e.includes(r))}o(s4,"isClassReference")});var a_=S(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});zu.propertyNameToUri=a4;zu.uriToPropertyName=hA;zu.extractPropertyLabel=o4;function a4(n){return n.replace(/^([a-z]+)__/,"$1:")}o(a4,"propertyNameToUri");function hA(n){if(n.startsWith("http://")||n.startsWith("https://")){let e=n.match(/\/([a-z]+)#([A-Za-z0-9_]+)$/);if(e)return`${e[1]}__${e[2]}`;let t=n.lastIndexOf("#"),r=n.lastIndexOf("/"),i=Math.max(t,r);return i>=0?n.substring(i+1):n}return n.replace(/^([a-z]+):/,"$1__")}o(hA,"uriToPropertyName");function o4(n){let r=(n.includes(":")?hA(n):n).replace(/^[a-z]+__/,"").split("_");return(r.length>1?r.slice(1).join(" "):r[0]).replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^./,s=>s.toUpperCase())}o(o4,"extractPropertyLabel")});var Ih={};Zy(Ih,{__assign:()=>c_,__asyncDelegator:()=>v4,__asyncGenerator:()=>S4,__asyncValues:()=>b4,__await:()=>Hu,__awaiter:()=>h4,__classPrivateFieldGet:()=>A4,__classPrivateFieldSet:()=>x4,__createBinding:()=>m4,__decorate:()=>u4,__exportStar:()=>g4,__extends:()=>c4,__generator:()=>p4,__importDefault:()=>T4,__importStar:()=>E4,__makeTemplateObject:()=>w4,__metadata:()=>d4,__param:()=>f4,__read:()=>pA,__rest:()=>l4,__spread:()=>y4,__spreadArrays:()=>_4,__values:()=>l_});function c4(n,e){o_(n,e);function t(){this.constructor=n}o(t,"__"),n.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function l4(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(n);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(t[r[i]]=n[r[i]]);return t}function u4(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s}function f4(n,e){return function(t,r){e(t,r,n)}}function d4(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)}function h4(n,e,t,r){function i(s){return s instanceof t?s:new t(function(a){a(s)})}return o(i,"adopt"),new(t||(t=Promise))(function(s,a){function c(f){try{u(r.next(f))}catch(d){a(d)}}o(c,"fulfilled");function l(f){try{u(r.throw(f))}catch(d){a(d)}}o(l,"rejected");function u(f){f.done?s(f.value):i(f.value).then(c,l)}o(u,"step"),u((r=r.apply(n,e||[])).next())})}function p4(n,e){var t={label:0,sent:o(function(){if(s[0]&1)throw s[1];return s[1]},"sent"),trys:[],ops:[]},r,i,s,a;return a={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(u){return function(f){return l([u,f])}}function l(u){if(r)throw new TypeError("Generator is already executing.");for(;t;)try{if(r=1,i&&(s=u[0]&2?i.return:u[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,u[1])).done)return s;switch(i=0,s&&(u=[u[0]&2,s.value]),u[0]){case 0:case 1:s=u;break;case 4:return t.label++,{value:u[1],done:!1};case 5:t.label++,i=u[1],u=[0];continue;case 7:u=t.ops.pop(),t.trys.pop();continue;default:if(s=t.trys,!(s=s.length>0&&s[s.length-1])&&(u[0]===6||u[0]===2)){t=0;continue}if(u[0]===3&&(!s||u[1]>s[0]&&u[1]<s[3])){t.label=u[1];break}if(u[0]===6&&t.label<s[1]){t.label=s[1],s=u;break}if(s&&t.label<s[2]){t.label=s[2],t.ops.push(u);break}s[2]&&t.ops.pop(),t.trys.pop();continue}u=e.call(n,t)}catch(f){u=[6,f],i=0}finally{r=s=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}function m4(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}function g4(n,e){for(var t in n)t!=="default"&&!e.hasOwnProperty(t)&&(e[t]=n[t])}function l_(n){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&n[e],r=0;if(t)return t.call(n);if(n&&typeof n.length=="number")return{next:o(function(){return n&&r>=n.length&&(n=void 0),{value:n&&n[r++],done:!n}},"next")};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function pA(n,e){var t=typeof Symbol=="function"&&n[Symbol.iterator];if(!t)return n;var r=t.call(n),i,s=[],a;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(c){a={error:c}}finally{try{i&&!i.done&&(t=r.return)&&t.call(r)}finally{if(a)throw a.error}}return s}function y4(){for(var n=[],e=0;e<arguments.length;e++)n=n.concat(pA(arguments[e]));return n}function _4(){for(var n=0,e=0,t=arguments.length;e<t;e++)n+=arguments[e].length;for(var r=Array(n),i=0,e=0;e<t;e++)for(var s=arguments[e],a=0,c=s.length;a<c;a++,i++)r[i]=s[a];return r}function Hu(n){return this instanceof Hu?(this.v=n,this):new Hu(n)}function S4(n,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=t.apply(n,e||[]),i,s=[];return i={},a("next"),a("throw"),a("return"),i[Symbol.asyncIterator]=function(){return this},i;function a(h){r[h]&&(i[h]=function(p){return new Promise(function(y,v){s.push([h,p,y,v])>1||c(h,p)})})}function c(h,p){try{l(r[h](p))}catch(y){d(s[0][3],y)}}function l(h){h.value instanceof Hu?Promise.resolve(h.value.v).then(u,f):d(s[0][2],h)}function u(h){c("next",h)}function f(h){c("throw",h)}function d(h,p){h(p),s.shift(),s.length&&c(s[0][0],s[0][1])}}function v4(n){var e,t;return e={},r("next"),r("throw",function(i){throw i}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(i,s){e[i]=n[i]?function(a){return(t=!t)?{value:Hu(n[i](a)),done:i==="return"}:s?s(a):a}:s}}function b4(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=n[Symbol.asyncIterator],t;return e?e.call(n):(n=typeof l_=="function"?l_(n):n[Symbol.iterator](),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(s){t[s]=n[s]&&function(a){return new Promise(function(c,l){a=n[s](a),i(c,l,a.done,a.value)})}}function i(s,a,c,l){Promise.resolve(l).then(function(u){s({value:u,done:c})},a)}}function w4(n,e){return Object.defineProperty?Object.defineProperty(n,"raw",{value:e}):n.raw=e,n}function E4(n){if(n&&n.__esModule)return n;var e={};if(n!=null)for(var t in n)Object.hasOwnProperty.call(n,t)&&(e[t]=n[t]);return e.default=n,e}function T4(n){return n&&n.__esModule?n:{default:n}}function A4(n,e){if(!e.has(n))throw new TypeError("attempted to get private field on non-instance");return e.get(n)}function x4(n,e,t){if(!e.has(n))throw new TypeError("attempted to set private field on non-instance");return e.set(n,t),t}var o_,c_,Rh=lL(()=>{o_=o(function(n,e){return o_=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var i in r)r.hasOwnProperty(i)&&(t[i]=r[i])},o_(n,e)},"extendStatics");o(c4,"__extends");c_=o(function(){return c_=Object.assign||o(function(e){for(var t,r=1,i=arguments.length;r<i;r++){t=arguments[r];for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s])}return e},"__assign"),c_.apply(this,arguments)},"__assign");o(l4,"__rest");o(u4,"__decorate");o(f4,"__param");o(d4,"__metadata");o(h4,"__awaiter");o(p4,"__generator");o(m4,"__createBinding");o(g4,"__exportStar");o(l_,"__values");o(pA,"__read");o(y4,"__spread");o(_4,"__spreadArrays");o(Hu,"__await");o(S4,"__asyncGenerator");o(v4,"__asyncDelegator");o(b4,"__asyncValues");o(w4,"__makeTemplateObject");o(E4,"__importStar");o(T4,"__importDefault");o(A4,"__classPrivateFieldGet");o(x4,"__classPrivateFieldSet")});var d_=S(f_=>{"use strict";Object.defineProperty(f_,"__esModule",{value:!0});var u_;(function(n){n[n.Transient=0]="Transient",n[n.Singleton=1]="Singleton",n[n.ResolutionScoped=2]="ResolutionScoped",n[n.ContainerScoped=3]="ContainerScoped"})(u_||(u_={}));f_.default=u_});var mA=S(h_=>{"use strict";Object.defineProperty(h_,"__esModule",{value:!0});var C4=d_();Object.defineProperty(h_,"Lifecycle",{enumerable:!0,get:o(function(){return C4.default},"get")})});var Io=S(di=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});di.defineInjectionTokenMetadata=di.getParamInfo=di.INJECTION_TOKEN_METADATA_KEY=void 0;di.INJECTION_TOKEN_METADATA_KEY="injectionTokens";function I4(n){let e=Reflect.getMetadata("design:paramtypes",n)||[],t=Reflect.getOwnMetadata(di.INJECTION_TOKEN_METADATA_KEY,n)||{};return Object.keys(t).forEach(r=>{e[+r]=t[r]}),e}o(I4,"getParamInfo");di.getParamInfo=I4;function R4(n,e){return function(t,r,i){let s=Reflect.getOwnMetadata(di.INJECTION_TOKEN_METADATA_KEY,t)||{};s[i]=e?{token:n,transform:e.transformToken,transformArgs:e.args||[]}:n,Reflect.defineMetadata(di.INJECTION_TOKEN_METADATA_KEY,s,t)}}o(R4,"defineInjectionTokenMetadata");di.defineInjectionTokenMetadata=R4});var p_=S(Ph=>{"use strict";Object.defineProperty(Ph,"__esModule",{value:!0});Ph.isClassProvider=void 0;function P4(n){return!!n.useClass}o(P4,"isClassProvider");Ph.isClassProvider=P4});var m_=S(Oh=>{"use strict";Object.defineProperty(Oh,"__esModule",{value:!0});Oh.isFactoryProvider=void 0;function O4(n){return!!n.useFactory}o(O4,"isFactoryProvider");Oh.isFactoryProvider=O4});var Dh=S(Rc=>{"use strict";Object.defineProperty(Rc,"__esModule",{value:!0});Rc.delay=Rc.DelayedConstructor=void 0;var Fh=class{static{o(this,"DelayedConstructor")}constructor(e){this.wrap=e,this.reflectMethods=["get","getPrototypeOf","setPrototypeOf","getOwnPropertyDescriptor","defineProperty","has","set","deleteProperty","apply","construct","ownKeys"]}createProxy(e){let t={},r=!1,i,s=o(()=>(r||(i=e(this.wrap()),r=!0),i),"delayedObject");return new Proxy(t,this.createHandler(s))}createHandler(e){let t={},r=o(i=>{t[i]=(...s)=>{s[0]=e();let a=Reflect[i];return a(...s)}},"install");return this.reflectMethods.forEach(r),t}};Rc.DelayedConstructor=Fh;function F4(n){if(typeof n>"u")throw new Error("Attempt to `delay` undefined. Constructor must be wrapped in a callback");return new Fh(n)}o(F4,"delay");Rc.delay=F4});var Nh=S(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.isConstructorToken=cs.isTransformDescriptor=cs.isTokenDescriptor=cs.isNormalToken=void 0;var D4=Dh();function N4(n){return typeof n=="string"||typeof n=="symbol"}o(N4,"isNormalToken");cs.isNormalToken=N4;function L4(n){return typeof n=="object"&&"token"in n&&"multiple"in n}o(L4,"isTokenDescriptor");cs.isTokenDescriptor=L4;function k4(n){return typeof n=="object"&&"token"in n&&"transform"in n}o(k4,"isTransformDescriptor");cs.isTransformDescriptor=k4;function M4(n){return typeof n=="function"||n instanceof D4.DelayedConstructor}o(M4,"isConstructorToken");cs.isConstructorToken=M4});var g_=S(Lh=>{"use strict";Object.defineProperty(Lh,"__esModule",{value:!0});Lh.isTokenProvider=void 0;function j4(n){return!!n.useToken}o(j4,"isTokenProvider");Lh.isTokenProvider=j4});var y_=S(kh=>{"use strict";Object.defineProperty(kh,"__esModule",{value:!0});kh.isValueProvider=void 0;function $4(n){return n.useValue!=null}o($4,"isValueProvider");kh.isValueProvider=$4});var __=S(Ro=>{"use strict";Object.defineProperty(Ro,"__esModule",{value:!0});var B4=p_();Object.defineProperty(Ro,"isClassProvider",{enumerable:!0,get:o(function(){return B4.isClassProvider},"get")});var V4=m_();Object.defineProperty(Ro,"isFactoryProvider",{enumerable:!0,get:o(function(){return V4.isFactoryProvider},"get")});var U4=Nh();Object.defineProperty(Ro,"isNormalToken",{enumerable:!0,get:o(function(){return U4.isNormalToken},"get")});var q4=g_();Object.defineProperty(Ro,"isTokenProvider",{enumerable:!0,get:o(function(){return q4.isTokenProvider},"get")});var W4=y_();Object.defineProperty(Ro,"isValueProvider",{enumerable:!0,get:o(function(){return W4.isValueProvider},"get")})});var gA=S(Mh=>{"use strict";Object.defineProperty(Mh,"__esModule",{value:!0});Mh.isProvider=void 0;var G4=p_(),z4=y_(),H4=g_(),Q4=m_();function K4(n){return G4.isClassProvider(n)||z4.isValueProvider(n)||H4.isTokenProvider(n)||Q4.isFactoryProvider(n)}o(K4,"isProvider");Mh.isProvider=K4});var b_=S(v_=>{"use strict";Object.defineProperty(v_,"__esModule",{value:!0});var S_=class{static{o(this,"RegistryBase")}constructor(){this._registryMap=new Map}entries(){return this._registryMap.entries()}getAll(e){return this.ensure(e),this._registryMap.get(e)}get(e){this.ensure(e);let t=this._registryMap.get(e);return t[t.length-1]||null}set(e,t){this.ensure(e),this._registryMap.get(e).push(t)}setAll(e,t){this._registryMap.set(e,t)}has(e){return this.ensure(e),this._registryMap.get(e).length>0}clear(){this._registryMap.clear()}ensure(e){this._registryMap.has(e)||this._registryMap.set(e,[])}};v_.default=S_});var yA=S(E_=>{"use strict";Object.defineProperty(E_,"__esModule",{value:!0});var Y4=b_(),w_=class extends Y4.default{static{o(this,"Registry")}};E_.default=w_});var _A=S(A_=>{"use strict";Object.defineProperty(A_,"__esModule",{value:!0});var T_=class{static{o(this,"ResolutionContext")}constructor(){this.scopedResolutions=new Map}};A_.default=T_});var x_=S(jh=>{"use strict";Object.defineProperty(jh,"__esModule",{value:!0});jh.formatErrorCtor=void 0;function X4(n,e){return n===null?`at position #${e}`:`"${n.split(",")[e].trim()}" at position #${e}`}o(X4,"formatDependency");function J4(n,e,t=" "){return[n,...e.message.split(`
31
+ `)}),this}_outputHelpIfRequested(e){let t=this._getHelpOption();t&&e.find(i=>t.is(i))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function aT(n){return n.map(e=>{if(!e.startsWith("--inspect"))return e;let t,r="127.0.0.1",i="9229",s;return(s=e.match(/^(--inspect(-brk)?)$/))!==null?t=s[1]:(s=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(t=s[1],/^\d+$/.test(s[3])?i=s[3]:r=s[3]):(s=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(t=s[1],r=s[3],i=s[4]),t&&i!=="0"?`${t}=${r}:${parseInt(i)+1}`:e})}o(aT,"incrementNodeInspectorPort");function p0(){if(st.env.NO_COLOR||st.env.FORCE_COLOR==="0"||st.env.FORCE_COLOR==="false")return!1;if(st.env.FORCE_COLOR||st.env.CLICOLOR_FORCE!==void 0)return!0}o(p0,"useColor");m0.Command=h0;m0.useColor=p0});var fT=S(Qn=>{var{Argument:cT}=Zd(),{Command:g0}=oT(),{CommanderError:EL,InvalidArgumentError:lT}=Ou(),{Help:TL}=a0(),{Option:uT}=u0();Qn.program=new g0;Qn.createCommand=n=>new g0(n);Qn.createOption=(n,e)=>new uT(n,e);Qn.createArgument=(n,e)=>new cT(n,e);Qn.Command=g0;Qn.Option=uT;Qn.Argument=cT;Qn.Help=TL;Qn.CommanderError=EL;Qn.InvalidArgumentError=lT;Qn.InvalidOptionArgumentError=lT});var Fu=S(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});th.AssetClass=void 0;var hT;(function(n){n.AREA="ems__Area",n.TASK="ems__Task",n.PROJECT="ems__Project",n.MEETING="ems__Meeting",n.INITIATIVE="ems__Initiative",n.TASK_PROTOTYPE="ems__TaskPrototype",n.MEETING_PROTOTYPE="ems__MeetingPrototype",n.EVENT_PROTOTYPE="exo__EventPrototype",n.PROJECT_PROTOTYPE="ems__ProjectPrototype",n.EVENT="exo__Event",n.DAILY_NOTE="pn__DailyNote",n.CONCEPT="ims__Concept",n.SESSION_START_EVENT="ems__SessionStartEvent",n.SESSION_END_EVENT="ems__SessionEndEvent",n.PROTOTYPE="exo__Prototype",n.CLASS="exo__Class",n.FLEETING_NOTE="ztlk__FleetingNote",n.WORKFLOW="ems__Workflow",n.WORKFLOW_STATE="ems__WorkflowState",n.WORKFLOW_TRANSITION="ems__WorkflowTransition",n.COMMAND="exocmd__Command",n.PRECONDITION="exocmd__Precondition",n.GROUNDING="exocmd__Grounding",n.COMMAND_BINDING="exocmd__CommandBinding"})(hT||(th.AssetClass=hT={}))});var Ec=S(rh=>{"use strict";Object.defineProperty(rh,"__esModule",{value:!0});rh.EffortStatus=void 0;var pT;(function(n){n.DRAFT="ems__EffortStatusDraft",n.BACKLOG="ems__EffortStatusBacklog",n.ANALYSIS="ems__EffortStatusAnalysis",n.TODO="ems__EffortStatusToDo",n.DOING="ems__EffortStatusDoing",n.DONE="ems__EffortStatusDone",n.TRASHED="ems__EffortStatusTrashed"})(pT||(rh.EffortStatus=pT={}))});var y0=S(Qt=>{"use strict";Object.defineProperty(Qt,"__esModule",{value:!0});Qt.EFFORT_STATUS_OPTIONS=Qt.STATUS_NAME_TO_WIKILINK=Qt.STATUS_NAME_TO_ENUM=Qt.EFFORT_STATUS_CONFIG=void 0;Qt.normalizeEffortStatus=AL;Qt.isDoneStatus=xL;Qt.isTrashedStatus=CL;Qt.getEffortStatusLabel=IL;var as=Ec();Qt.EFFORT_STATUS_CONFIG=[{name:"Draft",status:as.EffortStatus.DRAFT,wikilink:"[[ems__EffortStatusDraft]]"},{name:"Backlog",status:as.EffortStatus.BACKLOG,wikilink:"[[ems__EffortStatusBacklog]]"},{name:"Analysis",status:as.EffortStatus.ANALYSIS,wikilink:"[[ems__EffortStatusAnalysis]]"},{name:"To Do",status:as.EffortStatus.TODO,wikilink:"[[ems__EffortStatusToDo]]"},{name:"Doing",status:as.EffortStatus.DOING,wikilink:"[[ems__EffortStatusDoing]]"},{name:"Done",status:as.EffortStatus.DONE,wikilink:"[[ems__EffortStatusDone]]"},{name:"Trashed",status:as.EffortStatus.TRASHED,wikilink:"[[ems__EffortStatusTrashed]]"}];Qt.STATUS_NAME_TO_ENUM=Object.fromEntries(Qt.EFFORT_STATUS_CONFIG.map(n=>[n.name,n.status]));Qt.STATUS_NAME_TO_WIKILINK=Object.fromEntries(Qt.EFFORT_STATUS_CONFIG.map(n=>[n.name,n.wikilink]));Qt.EFFORT_STATUS_OPTIONS=Qt.EFFORT_STATUS_CONFIG.map(n=>({value:n.wikilink,label:n.name}));function AL(n,e=as.EffortStatus.DRAFT){if(n.startsWith("ems__")){let r=Qt.EFFORT_STATUS_CONFIG.find(i=>i.status===n);return r?r.status:e}return Qt.STATUS_NAME_TO_ENUM[n]??e}o(AL,"normalizeEffortStatus");function xL(n){return n===as.EffortStatus.DONE}o(xL,"isDoneStatus");function CL(n){return n===as.EffortStatus.TRASHED}o(CL,"isTrashedStatus");function IL(n){if(!n)return"-";let e=String(n);if(e==="")return"-";for(let r of Qt.EFFORT_STATUS_CONFIG)if(r.wikilink===e||`[[${e}]]`===r.wikilink||r.status===e||r.name===e)return r.name;let t=e.toLowerCase();for(let r of Qt.EFFORT_STATUS_CONFIG)if(r.name.toLowerCase()===t)return r.name;return e}o(IL,"getEffortStatusLabel")});var Tc=S(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});nh.GroundingType=void 0;var mT;(function(n){n.SPARQL_UPDATE="sparql_update",n.PROPERTY_DELETE="property_delete",n.PROPERTY_SET="property_set",n.COMPOSITE="composite",n.SERVICE_CALL="service_call",n.CREATE_INSTANCE="create_instance"})(mT||(nh.GroundingType=mT={}))});var _0=S(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.CommandBindingStyleProperty=Kn.CommandBindingProperty=Kn.GroundingProperty=Kn.PreconditionProperty=Kn.CommandProperty=void 0;Kn.CommandProperty={ICON:"exocmd__Command_icon",PRECONDITION:"exocmd__Command_precondition",GROUNDING:"exocmd__Command_grounding",CONFIRM_MESSAGE:"exocmd__Command_confirmMessage",SUCCESS_MESSAGE:"exocmd__Command_successMessage",CATEGORY:"exocmd__Command_category"};Kn.PreconditionProperty={SPARQL_ASK:"exocmd__Precondition_sparqlAsk",QUERY:"exocmd__Precondition_query"};Kn.GroundingProperty={TYPE:"exocmd__Grounding_type",SPARQL_UPDATE:"exocmd__Grounding_sparqlUpdate",TARGET_PROPERTY:"exocmd__Grounding_targetProperty",TARGET_VALUE:"exocmd__Grounding_targetValue",STEPS:"exocmd__Grounding_steps"};Kn.CommandBindingProperty={COMMAND:"exocmd__CommandBinding_command",TARGET_CLASS:"exocmd__CommandBinding_targetClass",TARGET_PROTOTYPE:"exocmd__CommandBinding_targetPrototype",TARGET_ASSET:"exocmd__CommandBinding_targetAsset",POSITION:"exocmd__CommandBinding_position",ORDER:"exocmd__CommandBinding_order",PRECONDITION:"exocmd__CommandBinding_precondition",STYLE:"exocmd__CommandBinding_style",VARIANT:"exocmd__CommandBinding_variant"};Kn.CommandBindingStyleProperty={VARIANT:"exocmd__CommandBindingStyle_variant",SHOW_ICON:"exocmd__CommandBindingStyle_showIcon",LABEL_CLASS:"exocmd__CommandBindingStyle_labelClass",ARIA_LABEL:"exocmd__CommandBindingStyle_ariaLabel",TOOLTIP:"exocmd__CommandBindingStyle_tooltip",KEYBOARD_SHORTCUT:"exocmd__CommandBindingStyle_keyboardShortcut",SOURCE:"exocmd__CommandBindingStyle_source"}});var S0=S(En=>{"use strict";Object.defineProperty(En,"__esModule",{value:!0});En.STYLE_SOURCE_VALUES=En.LABEL_CLASS_VALUES=En.COMMAND_VARIANT_VALUES=void 0;En.isCommandVariant=RL;En.isLabelClass=PL;En.isStyleSource=OL;En.COMMAND_VARIANT_VALUES=Object.freeze(["primary","secondary","success","warning","danger","muted"]);En.LABEL_CLASS_VALUES=Object.freeze(["muted","bold","uppercase","compact"]);En.STYLE_SOURCE_VALUES=Object.freeze(["vendor","user"]);function RL(n){return typeof n=="string"&&En.COMMAND_VARIANT_VALUES.includes(n)}o(RL,"isCommandVariant");function PL(n){return typeof n=="string"&&En.LABEL_CLASS_VALUES.includes(n)}o(PL,"isLabelClass");function OL(n){return typeof n=="string"&&En.STYLE_SOURCE_VALUES.includes(n)}o(OL,"isStyleSource")});var gT=S(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});Ac.isCommandFrontmatter=FL;Ac.isPreconditionFrontmatter=DL;Ac.isGroundingFrontmatter=NL;Ac.isCommandBindingFrontmatter=LL;function FL(n){return ih(n,"exocmd__Command")}o(FL,"isCommandFrontmatter");function DL(n){return ih(n,"exocmd__Precondition")}o(DL,"isPreconditionFrontmatter");function NL(n){return ih(n,"exocmd__Grounding")}o(NL,"isGroundingFrontmatter");function LL(n){return ih(n,"exocmd__CommandBinding")}o(LL,"isCommandBindingFrontmatter");function ih(n,e){let t=n.exo__Instance_class;if(t==null)return!1;let r=Array.isArray(t)?t:[t];for(let i of r){if(typeof i!="string")continue;let s=i.match(/\[\[([^|\]]+)/);if((s?s[1]:i)===e)return!0}return!1}o(ih,"hasInstanceClass")});var yT=S(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});sh.hasPosition=kL;sh.isFixed=ML;function kL(n){return typeof n.x=="number"&&typeof n.y=="number"}o(kL,"hasPosition");function ML(n){return n.fx!==null&&n.fx!==void 0&&n.fy!==null&&n.fy!==void 0}o(ML,"isFixed")});var _T=S(ah=>{"use strict";Object.defineProperty(ah,"__esModule",{value:!0});ah.createEmptyGraphData=jL;ah.mergeGraphData=$L;function jL(){return{nodes:[],edges:[],lastUpdated:Date.now(),version:0}}o(jL,"createEmptyGraphData");function $L(n,e){let t=new Map,r=new Set,i=[];for(let s of n.nodes)t.set(s.id,s);for(let s of e.nodes)t.set(s.id,s);for(let s of n.edges){let a=`${s.source}->${s.target}:${s.type}`;r.has(a)||(r.add(a),i.push(s))}for(let s of e.edges){let a=`${s.source}->${s.target}:${s.type}`;r.has(a)||(r.add(a),i.push(s))}return{nodes:Array.from(t.values()),edges:i,lastUpdated:Date.now(),version:Math.max(n.version??0,e.version??0)+1}}o($L,"mergeGraphData")});var v0=S(oh=>{"use strict";Object.defineProperty(oh,"__esModule",{value:!0});oh.createEdgeId=BL;oh.edgesEqual=VL;function BL(n,e,t,r){let i=r?`|${r}`:"";return`${n}->${e}:${t}${i}`}o(BL,"createEdgeId");function VL(n,e){return n.source===e.source&&n.target===e.target&&n.type===e.type&&n.predicate===e.predicate}o(VL,"edgesEqual")});var b0=S(Ut=>{"use strict";Object.defineProperty(Ut,"__esModule",{value:!0});Ut.BUILT_IN_EDGE_STYLES=Ut.BUILT_IN_NODE_STYLES=Ut.DEFAULT_EDGE_STYLE=Ut.DEFAULT_NODE_STYLE=Ut.RDF_TYPE_PREDICATES=void 0;Ut.mergeNodeStyles=UL;Ut.mergeEdgeStyles=qL;Ut.extractLocalName=WL;Ut.isClassType=GL;Ut.isTypePredicate=zL;Ut.isSubClassPredicate=HL;Ut.RDF_TYPE_PREDICATES={RDF_TYPE:"http://www.w3.org/1999/02/22-rdf-syntax-ns#type",RDFS_CLASS:"http://www.w3.org/2000/01/rdf-schema#Class",OWL_CLASS:"http://www.w3.org/2002/07/owl#Class",RDFS_SUBCLASS_OF:"http://www.w3.org/2000/01/rdf-schema#subClassOf",OWL_EQUIVALENT_CLASS:"http://www.w3.org/2002/07/owl#equivalentClass",RDFS_LABEL:"http://www.w3.org/2000/01/rdf-schema#label",RDFS_COMMENT:"http://www.w3.org/2000/01/rdf-schema#comment"};Ut.DEFAULT_NODE_STYLE={color:"#6366f1",borderColor:"#4f46e5",borderWidth:2,size:30,shape:"circle",icon:"",opacity:1,shadow:!1,animation:"none"};Ut.DEFAULT_EDGE_STYLE={color:"#9ca3af",width:1,lineStyle:"solid",arrow:"standard",curvature:0,opacity:.6,showLabel:!1,labelPosition:.5};Ut.BUILT_IN_NODE_STYLES={"http://www.w3.org/2000/01/rdf-schema#Class":{color:"#f59e0b",shape:"diamond",size:40},"http://www.w3.org/2002/07/owl#Class":{color:"#f59e0b",shape:"diamond",size:40},ems__Task:{color:"#22c55e",shape:"circle"},ems__Project:{color:"#3b82f6",shape:"square"},ems__Area:{color:"#8b5cf6",shape:"hexagon",size:40},ems__Meeting:{color:"#ec4899",shape:"circle"},exo__Class:{color:"#f59e0b",shape:"diamond"},ims__Person:{color:"#06b6d4",shape:"circle"}};Ut.BUILT_IN_EDGE_STYLES={"http://www.w3.org/1999/02/22-rdf-syntax-ns#type":{color:"#f59e0b",lineStyle:"dashed",arrow:"standard"},"http://www.w3.org/2000/01/rdf-schema#subClassOf":{color:"#8b5cf6",width:2,arrow:"triangle"},"https://exocortex.my/ontology/ems#Effort_parent":{color:"#6366f1",width:2,arrow:"standard"},"https://exocortex.my/ontology/exo#Asset_prototype":{color:"#f59e0b",lineStyle:"dashed",arrow:"circle"},"https://exocortex.my/ontology/exo#references":{color:"#22c55e",opacity:.4,arrow:"standard"}};function UL(n,e){return{...n,...Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}}o(UL,"mergeNodeStyles");function qL(n,e){return{...n,...Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}}o(qL,"mergeEdgeStyles");function WL(n){let e=n.lastIndexOf("#"),t=n.lastIndexOf("/"),r=Math.max(e,t);return r>=0?n.substring(r+1):n}o(WL,"extractLocalName");function GL(n){return n===Ut.RDF_TYPE_PREDICATES.RDFS_CLASS||n===Ut.RDF_TYPE_PREDICATES.OWL_CLASS}o(GL,"isClassType");function zL(n){return n===Ut.RDF_TYPE_PREDICATES.RDF_TYPE}o(zL,"isTypePredicate");function HL(n){return n===Ut.RDF_TYPE_PREDICATES.RDFS_SUBCLASS_OF}o(HL,"isSubClassPredicate")});var vT=S(ST=>{"use strict";Object.defineProperty(ST,"__esModule",{value:!0})});var Ae=S(ch=>{"use strict";Object.defineProperty(ch,"__esModule",{value:!0});ch.IRI=void 0;var w0=class n{static{o(this,"IRI")}constructor(e){let t=e.trim();if(t.length===0)throw new Error("IRI cannot be empty");if(!n.isValidIRI(t))throw new Error("Invalid IRI format");this._value=t}get value(){return this._value}equals(e){return this._value===e._value}toString(){return this._value}static isValidIRI(e){if(!e||e.trim().length===0||/\s/.test(e)||!/^[a-z][a-z0-9+.-]*:/i.test(e))return!1;let r=["http","https","ftp","ftps","file","mailto","tel","data","ws","wss","urn","obsidian"],i=e.match(/^([a-z][a-z0-9+.-]*?):/i);if(i){let s=i[1].toLowerCase();if(!r.includes(s))return!1}try{return new URL(e),!0}catch{return/^urn:[a-z0-9][a-z0-9-]{0,31}:[^\s]+$/i.test(e)}}};ch.IRI=w0});var Ne=S(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.Literal=void 0;bo.parseLanguageTag=bT;bo.createDirectionalLiteral=KL;bo.createLiteralFromLanguageTag=YL;var QL="http://www.w3.org/2001/XMLSchema#string",Du=class{static{o(this,"Literal")}constructor(e,t,r,i){if(e.length===0)throw new Error("Literal value cannot be empty");if(t&&r)throw new Error("Literal cannot have both datatype and language tag");if(i&&!r)throw new Error("Literal cannot have direction without language tag");if(i&&i!=="ltr"&&i!=="rtl")throw new Error('Direction must be "ltr" or "rtl"');this._value=e,this._datatype=t,this._language=r?r.toLowerCase():void 0,this._direction=i}get value(){return this._value}get datatype(){return this._datatype}get language(){return this._language}get direction(){return this._direction}hasDirection(){return this._direction!==void 0}equals(e){if(this._value!==e._value||this._language!==e._language||this._direction!==e._direction)return!1;let t=this.normalizedDatatype(),r=e.normalizedDatatype();return t===r}normalizedDatatype(){return!this._datatype||this._datatype.value===QL?null:this._datatype.value}toString(){let e=`"${this._value}"`;return this._datatype?e+=`^^<${this._datatype.value}>`:this._language&&(e+=`@${this._language}`,this._direction&&(e+=`--${this._direction}`)),e}};bo.Literal=Du;function bT(n){let t=n.lastIndexOf("--");if(t===-1)return{language:n.toLowerCase()};let r=n.substring(t+2),i=n.substring(0,t);return r==="ltr"||r==="rtl"?{language:i.toLowerCase(),direction:r}:{language:n.toLowerCase()}}o(bT,"parseLanguageTag");function KL(n,e,t){return new Du(n,void 0,e,t)}o(KL,"createDirectionalLiteral");function YL(n,e){let{language:t,direction:r}=bT(e);return new Du(n,void 0,t,r)}o(YL,"createLiteralFromLanguageTag")});var qt=S(uh=>{"use strict";Object.defineProperty(uh,"__esModule",{value:!0});uh.BlankNode=void 0;var lh=class n{static{o(this,"BlankNode")}constructor(e){let t=e.trim();if(t.length===0)throw new Error("BlankNode id cannot be empty");this._id=t}get id(){return this._id}equals(e){return this._id===e._id}toString(){return`_:${this._id}`}static generateId(){return`b${++n.counter}`}static create(){return new n(n.generateId())}};uh.BlankNode=lh;lh.counter=0});var yr=S(fh=>{"use strict";Object.defineProperty(fh,"__esModule",{value:!0});fh.Namespace=void 0;var wT=Ae(),Me=class n{static{o(this,"Namespace")}constructor(e,t){if(e.trim().length===0)throw new Error("Namespace prefix cannot be empty");this._prefix=e,this._iri=new wT.IRI(t)}get prefix(){return this._prefix}get iri(){return this._iri}term(e){return new wT.IRI(`${this._iri.value}${e}`)}expand(e){let t=e.split(":");if(t.length!==2)return null;let[r,i]=t;return r!==this._prefix?null:this.term(i)}static forPrefix(e){if(!/^[a-z][a-zA-Z0-9]*$/.test(e))return null;let t=n.KNOWN_NAMESPACES.find(r=>r.prefix===e);return t||new n(e,`${n.EXOCORTEX_ONTOLOGY_BASE}${e}#`)}static fromPropertyKey(e){let t=/^([a-z][a-zA-Z0-9]*)__(.+)$/.exec(e);if(!t)return null;let r=n.forPrefix(t[1]);return r?{namespace:r,localName:t[2]}:null}};fh.Namespace=Me;Me.RDF=new Me("rdf","http://www.w3.org/1999/02/22-rdf-syntax-ns#");Me.RDFS=new Me("rdfs","http://www.w3.org/2000/01/rdf-schema#");Me.OWL=new Me("owl","http://www.w3.org/2002/07/owl#");Me.XSD=new Me("xsd","http://www.w3.org/2001/XMLSchema#");Me.EXO=new Me("exo","https://exocortex.my/ontology/exo#");Me.EMS=new Me("ems","https://exocortex.my/ontology/ems#");Me.EXOCMD=new Me("exocmd","https://exocortex.my/ontology/exocmd#");Me.IMS=new Me("ims","https://exocortex.my/ontology/ims#");Me.ZTLK=new Me("ztlk","https://exocortex.my/ontology/ztlk#");Me.PTMS=new Me("ptms","https://exocortex.my/ontology/ptms#");Me.LIT=new Me("lit","https://exocortex.my/ontology/lit#");Me.INBOX=new Me("inbox","https://exocortex.my/ontology/inbox#");Me.PMBOK=new Me("pmbok","https://exocortex.my/ontology/pmbok#");Me.EXOCORTEX_ONTOLOGY_BASE="https://exocortex.my/ontology/";Me.KNOWN_NAMESPACES=[Me.EXO,Me.EMS,Me.EXOCMD,Me.IMS,Me.ZTLK,Me.PTMS,Me.LIT,Me.INBOX,Me.PMBOK]});var Yn=S(dh=>{"use strict";Object.defineProperty(dh,"__esModule",{value:!0});dh.Triple=void 0;var E0=Ae(),T0=Ne(),A0=qt(),x0=class{static{o(this,"Triple")}constructor(e,t,r){this._subject=e,this._predicate=t,this._object=r}get subject(){return this._subject}get predicate(){return this._predicate}get object(){return this._object}equals(e){return!(!this.equalsNode(this._subject,e._subject)||!this._predicate.equals(e._predicate)||!this.equalsNode(this._object,e._object))}equalsNode(e,t){return e instanceof E0.IRI&&t instanceof E0.IRI||e instanceof A0.BlankNode&&t instanceof A0.BlankNode||e instanceof T0.Literal&&t instanceof T0.Literal||this.isQuotedTriple(e)&&this.isQuotedTriple(t)?e.equals(t):!1}isQuotedTriple(e){return typeof e=="object"&&e!==null&&"termType"in e&&e.termType==="QuotedTriple"}toString(){let e=this.nodeToString(this._subject),t=`<${this._predicate.value}>`,r=this.nodeToString(this._object);return`${e} ${t} ${r} .`}nodeToString(e){return e instanceof E0.IRI?`<${e.value}>`:e instanceof A0.BlankNode||e instanceof T0.Literal||this.isQuotedTriple(e)?e.toString():""}};dh.Triple=x0});var Nu=S(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});hh.QuotedTriple=void 0;var C0=Ae(),I0=Ne(),R0=qt(),P0=class n{static{o(this,"QuotedTriple")}constructor(e,t,r){this._subject=e,this._predicate=t,this._object=r}get subject(){return this._subject}get predicate(){return this._predicate}get object(){return this._object}equals(e){return!(!this.equalsNode(this._subject,e._subject)||!this._predicate.equals(e._predicate)||!this.equalsNode(this._object,e._object))}equalsNode(e,t){return e instanceof C0.IRI&&t instanceof C0.IRI||e instanceof R0.BlankNode&&t instanceof R0.BlankNode||e instanceof I0.Literal&&t instanceof I0.Literal||e instanceof n&&t instanceof n?e.equals(t):!1}get termType(){return"QuotedTriple"}toString(){let e=this.nodeToString(this._subject),t=`<${this._predicate.value}>`,r=this.nodeToString(this._object);return`<< ${e} ${t} ${r} >>`}nodeToString(e){return e instanceof C0.IRI?`<${e.value}>`:e instanceof R0.BlankNode||e instanceof I0.Literal||e instanceof n?e.toString():""}};hh.QuotedTriple=P0});var ET=S(Zt=>{"use strict";Object.defineProperty(Zt,"__esModule",{value:!0});Zt.QuotedTriple=Zt.Triple=Zt.Namespace=Zt.BlankNode=Zt.createLiteralFromLanguageTag=Zt.createDirectionalLiteral=Zt.parseLanguageTag=Zt.Literal=Zt.IRI=void 0;var XL=Ae();Object.defineProperty(Zt,"IRI",{enumerable:!0,get:o(function(){return XL.IRI},"get")});var ph=Ne();Object.defineProperty(Zt,"Literal",{enumerable:!0,get:o(function(){return ph.Literal},"get")});Object.defineProperty(Zt,"parseLanguageTag",{enumerable:!0,get:o(function(){return ph.parseLanguageTag},"get")});Object.defineProperty(Zt,"createDirectionalLiteral",{enumerable:!0,get:o(function(){return ph.createDirectionalLiteral},"get")});Object.defineProperty(Zt,"createLiteralFromLanguageTag",{enumerable:!0,get:o(function(){return ph.createLiteralFromLanguageTag},"get")});var JL=qt();Object.defineProperty(Zt,"BlankNode",{enumerable:!0,get:o(function(){return JL.BlankNode},"get")});var ZL=yr();Object.defineProperty(Zt,"Namespace",{enumerable:!0,get:o(function(){return ZL.Namespace},"get")});var ek=Yn();Object.defineProperty(Zt,"Triple",{enumerable:!0,get:o(function(){return ek.Triple},"get")});var tk=Nu();Object.defineProperty(Zt,"QuotedTriple",{enumerable:!0,get:o(function(){return tk.QuotedTriple},"get")})});var mh=S(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});Jn.UUID_URL_NAMESPACE=Jn.DEFAULT_LANGUAGE_TAG=Jn.REQUIRED_PROPERTIES=Jn.ALLOWED_PROPERTIES=Jn.Exo003MetadataType=void 0;var Xn;(function(n){n.Namespace="namespace",n.Anchor="anchor",n.BlankNode="blank_node",n.Statement="statement",n.Body="body"})(Xn||(Jn.Exo003MetadataType=Xn={}));Jn.ALLOWED_PROPERTIES={[Xn.Namespace]:["metadata","uri","aliases"],[Xn.Anchor]:["metadata","uri","aliases"],[Xn.BlankNode]:["metadata","uri","aliases"],[Xn.Statement]:["metadata","subject","predicate","object","aliases"],[Xn.Body]:["metadata","subject","predicate","aliases"]};Jn.REQUIRED_PROPERTIES={[Xn.Namespace]:["metadata","uri"],[Xn.Anchor]:["metadata","uri"],[Xn.BlankNode]:["metadata","uri"],[Xn.Statement]:["metadata","subject","predicate","object"],[Xn.Body]:["metadata","subject","predicate"]};Jn.DEFAULT_LANGUAGE_TAG="ru";Jn.UUID_URL_NAMESPACE="6ba7b811-9dad-11d1-80b4-00c04fd430c8"});var TT=S(O0=>{"use strict";Object.defineProperty(O0,"__esModule",{value:!0});O0.default="ffffffff-ffff-ffff-ffff-ffffffffffff"});var AT=S(F0=>{"use strict";Object.defineProperty(F0,"__esModule",{value:!0});F0.default="00000000-0000-0000-0000-000000000000"});var xT=S(D0=>{"use strict";Object.defineProperty(D0,"__esModule",{value:!0});D0.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});var Lu=S(N0=>{"use strict";Object.defineProperty(N0,"__esModule",{value:!0});var rk=xT();function nk(n){return typeof n=="string"&&rk.default.test(n)}o(nk,"validate");N0.default=nk});var ku=S(L0=>{"use strict";Object.defineProperty(L0,"__esModule",{value:!0});var ik=Lu();function sk(n){if(!(0,ik.default)(n))throw TypeError("Invalid UUID");let e;return Uint8Array.of((e=parseInt(n.slice(0,8),16))>>>24,e>>>16&255,e>>>8&255,e&255,(e=parseInt(n.slice(9,13),16))>>>8,e&255,(e=parseInt(n.slice(14,18),16))>>>8,e&255,(e=parseInt(n.slice(19,23),16))>>>8,e&255,(e=parseInt(n.slice(24,36),16))/1099511627776&255,e/4294967296&255,e>>>24&255,e>>>16&255,e>>>8&255,e&255)}o(sk,"parse");L0.default=sk});var Ws=S(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});Mu.unsafeStringify=void 0;var ak=Lu(),Dr=[];for(let n=0;n<256;++n)Dr.push((n+256).toString(16).slice(1));function CT(n,e=0){return(Dr[n[e+0]]+Dr[n[e+1]]+Dr[n[e+2]]+Dr[n[e+3]]+"-"+Dr[n[e+4]]+Dr[n[e+5]]+"-"+Dr[n[e+6]]+Dr[n[e+7]]+"-"+Dr[n[e+8]]+Dr[n[e+9]]+"-"+Dr[n[e+10]]+Dr[n[e+11]]+Dr[n[e+12]]+Dr[n[e+13]]+Dr[n[e+14]]+Dr[n[e+15]]).toLowerCase()}o(CT,"unsafeStringify");Mu.unsafeStringify=CT;function ok(n,e=0){let t=CT(n,e);if(!(0,ak.default)(t))throw TypeError("Stringified UUID is invalid");return t}o(ok,"stringify");Mu.default=ok});var _h=S(k0=>{"use strict";Object.defineProperty(k0,"__esModule",{value:!0});var ck=require("crypto"),yh=new Uint8Array(256),gh=yh.length;function lk(){return gh>yh.length-16&&((0,ck.randomFillSync)(yh),gh=0),yh.slice(gh,gh+=16)}o(lk,"rng");k0.default=lk});var M0=S($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});$u.updateV1State=void 0;var IT=_h(),uk=Ws(),ju={};function fk(n,e,t){let r,i=n?._v6??!1;if(n){let s=Object.keys(n);s.length===1&&s[0]==="_v6"&&(n=void 0)}if(n)r=RT(n.random??n.rng?.()??(0,IT.default)(),n.msecs,n.nsecs,n.clockseq,n.node,e,t);else{let s=Date.now(),a=(0,IT.default)();PT(ju,s,a),r=RT(a,ju.msecs,ju.nsecs,i?void 0:ju.clockseq,i?void 0:ju.node,e,t)}return e??(0,uk.unsafeStringify)(r)}o(fk,"v1");function PT(n,e,t){return n.msecs??=-1/0,n.nsecs??=0,e===n.msecs?(n.nsecs++,n.nsecs>=1e4&&(n.node=void 0,n.nsecs=0)):e>n.msecs?n.nsecs=0:e<n.msecs&&(n.node=void 0),n.node||(n.node=t.slice(10,16),n.node[0]|=1,n.clockseq=(t[8]<<8|t[9])&16383),n.msecs=e,n}o(PT,"updateV1State");$u.updateV1State=PT;function RT(n,e,t,r,i,s,a=0){if(n.length<16)throw new Error("Random bytes length must be >= 16");if(!s)s=new Uint8Array(16),a=0;else if(a<0||a+16>s.length)throw new RangeError(`UUID byte range ${a}:${a+15} is out of buffer bounds`);e??=Date.now(),t??=0,r??=(n[8]<<8|n[9])&16383,i??=n.slice(10,16),e+=122192928e5;let c=((e&268435455)*1e4+t)%4294967296;s[a++]=c>>>24&255,s[a++]=c>>>16&255,s[a++]=c>>>8&255,s[a++]=c&255;let l=e/4294967296*1e4&268435455;s[a++]=l>>>8&255,s[a++]=l&255,s[a++]=l>>>24&15|16,s[a++]=l>>>16&255,s[a++]=r>>>8|128,s[a++]=r&255;for(let u=0;u<6;++u)s[a++]=i[u];return s}o(RT,"v1Bytes");$u.default=fk});var $0=S(j0=>{"use strict";Object.defineProperty(j0,"__esModule",{value:!0});var dk=ku(),hk=Ws();function pk(n){let e=typeof n=="string"?(0,dk.default)(n):n,t=mk(e);return typeof n=="string"?(0,hk.unsafeStringify)(t):t}o(pk,"v1ToV6");j0.default=pk;function mk(n){return Uint8Array.of((n[6]&15)<<4|n[7]>>4&15,(n[7]&15)<<4|(n[4]&240)>>4,(n[4]&15)<<4|(n[5]&240)>>4,(n[5]&15)<<4|(n[0]&240)>>4,(n[0]&15)<<4|(n[1]&240)>>4,(n[1]&15)<<4|(n[2]&240)>>4,96|n[2]&15,n[3],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15])}o(mk,"_v1ToV6")});var OT=S(B0=>{"use strict";Object.defineProperty(B0,"__esModule",{value:!0});var gk=require("crypto");function yk(n){return Array.isArray(n)?n=Buffer.from(n):typeof n=="string"&&(n=Buffer.from(n,"utf8")),(0,gk.createHash)("md5").update(n).digest()}o(yk,"md5");B0.default=yk});var Bu=S(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});Gs.URL=Gs.DNS=Gs.stringToBytes=void 0;var FT=ku(),_k=Ws();function DT(n){n=unescape(encodeURIComponent(n));let e=new Uint8Array(n.length);for(let t=0;t<n.length;++t)e[t]=n.charCodeAt(t);return e}o(DT,"stringToBytes");Gs.stringToBytes=DT;Gs.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8";Gs.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function Sk(n,e,t,r,i,s){let a=typeof t=="string"?DT(t):t,c=typeof r=="string"?(0,FT.default)(r):r;if(typeof r=="string"&&(r=(0,FT.default)(r)),r?.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let l=new Uint8Array(16+a.length);if(l.set(c),l.set(a,c.length),l=e(l),l[6]=l[6]&15|n,l[8]=l[8]&63|128,i){s=s||0;for(let u=0;u<16;++u)i[s+u]=l[u];return i}return(0,_k.unsafeStringify)(l)}o(Sk,"v35");Gs.default=Sk});var LT=S(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.URL=wo.DNS=void 0;var vk=OT(),V0=Bu(),NT=Bu();Object.defineProperty(wo,"DNS",{enumerable:!0,get:o(function(){return NT.DNS},"get")});Object.defineProperty(wo,"URL",{enumerable:!0,get:o(function(){return NT.URL},"get")});function U0(n,e,t,r){return(0,V0.default)(48,vk.default,n,e,t,r)}o(U0,"v3");U0.DNS=V0.DNS;U0.URL=V0.URL;wo.default=U0});var kT=S(q0=>{"use strict";Object.defineProperty(q0,"__esModule",{value:!0});var bk=require("crypto");q0.default={randomUUID:bk.randomUUID}});var jT=S(W0=>{"use strict";Object.defineProperty(W0,"__esModule",{value:!0});var MT=kT(),wk=_h(),Ek=Ws();function Tk(n,e,t){if(MT.default.randomUUID&&!e&&!n)return MT.default.randomUUID();n=n||{};let r=n.random??n.rng?.()??(0,wk.default)();if(r.length<16)throw new Error("Random bytes length must be >= 16");if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){if(t=t||0,t<0||t+16>e.length)throw new RangeError(`UUID byte range ${t}:${t+15} is out of buffer bounds`);for(let i=0;i<16;++i)e[t+i]=r[i];return e}return(0,Ek.unsafeStringify)(r)}o(Tk,"v4");W0.default=Tk});var $T=S(G0=>{"use strict";Object.defineProperty(G0,"__esModule",{value:!0});var Ak=require("crypto");function xk(n){return Array.isArray(n)?n=Buffer.from(n):typeof n=="string"&&(n=Buffer.from(n,"utf8")),(0,Ak.createHash)("sha1").update(n).digest()}o(xk,"sha1");G0.default=xk});var VT=S(Eo=>{"use strict";Object.defineProperty(Eo,"__esModule",{value:!0});Eo.URL=Eo.DNS=void 0;var Ck=$T(),z0=Bu(),BT=Bu();Object.defineProperty(Eo,"DNS",{enumerable:!0,get:o(function(){return BT.DNS},"get")});Object.defineProperty(Eo,"URL",{enumerable:!0,get:o(function(){return BT.URL},"get")});function H0(n,e,t,r){return(0,z0.default)(80,Ck.default,n,e,t,r)}o(H0,"v5");H0.DNS=z0.DNS;H0.URL=z0.URL;Eo.default=H0});var UT=S(Q0=>{"use strict";Object.defineProperty(Q0,"__esModule",{value:!0});var Ik=Ws(),Rk=M0(),Pk=$0();function Ok(n,e,t){n??={},t??=0;let r=(0,Rk.default)({...n,_v6:!0},new Uint8Array(16));if(r=(0,Pk.default)(r),e){for(let i=0;i<16;i++)e[t+i]=r[i];return e}return(0,Ik.unsafeStringify)(r)}o(Ok,"v6");Q0.default=Ok});var qT=S(K0=>{"use strict";Object.defineProperty(K0,"__esModule",{value:!0});var Fk=ku(),Dk=Ws();function Nk(n){let e=typeof n=="string"?(0,Fk.default)(n):n,t=Lk(e);return typeof n=="string"?(0,Dk.unsafeStringify)(t):t}o(Nk,"v6ToV1");K0.default=Nk;function Lk(n){return Uint8Array.of((n[3]&15)<<4|n[4]>>4&15,(n[4]&15)<<4|(n[5]&240)>>4,(n[5]&15)<<4|n[6]&15,n[7],(n[1]&15)<<4|(n[2]&240)>>4,(n[2]&15)<<4|(n[3]&240)>>4,16|(n[0]&240)>>4,(n[0]&15)<<4|(n[1]&240)>>4,n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15])}o(Lk,"_v6ToV1")});var HT=S(Vu=>{"use strict";Object.defineProperty(Vu,"__esModule",{value:!0});Vu.updateV7State=void 0;var WT=_h(),kk=Ws(),Y0={};function Mk(n,e,t){let r;if(n)r=GT(n.random??n.rng?.()??(0,WT.default)(),n.msecs,n.seq,e,t);else{let i=Date.now(),s=(0,WT.default)();zT(Y0,i,s),r=GT(s,Y0.msecs,Y0.seq,e,t)}return e??(0,kk.unsafeStringify)(r)}o(Mk,"v7");function zT(n,e,t){return n.msecs??=-1/0,n.seq??=0,e>n.msecs?(n.seq=t[6]<<23|t[7]<<16|t[8]<<8|t[9],n.msecs=e):(n.seq=n.seq+1|0,n.seq===0&&n.msecs++),n}o(zT,"updateV7State");Vu.updateV7State=zT;function GT(n,e,t,r,i=0){if(n.length<16)throw new Error("Random bytes length must be >= 16");if(!r)r=new Uint8Array(16),i=0;else if(i<0||i+16>r.length)throw new RangeError(`UUID byte range ${i}:${i+15} is out of buffer bounds`);return e??=Date.now(),t??=n[6]*127<<24|n[7]<<16|n[8]<<8|n[9],r[i++]=e/1099511627776&255,r[i++]=e/4294967296&255,r[i++]=e/16777216&255,r[i++]=e/65536&255,r[i++]=e/256&255,r[i++]=e&255,r[i++]=112|t>>>28&15,r[i++]=t>>>20&255,r[i++]=128|t>>>14&63,r[i++]=t>>>6&255,r[i++]=t<<2&255|n[10]&3,r[i++]=n[11],r[i++]=n[12],r[i++]=n[13],r[i++]=n[14],r[i++]=n[15],r}o(GT,"v7Bytes");Vu.default=Mk});var QT=S(X0=>{"use strict";Object.defineProperty(X0,"__esModule",{value:!0});var jk=Lu();function $k(n){if(!(0,jk.default)(n))throw TypeError("Invalid UUID");return parseInt(n.slice(14,15),16)}o($k,"version");X0.default=$k});var Tn=S(ct=>{"use strict";Object.defineProperty(ct,"__esModule",{value:!0});ct.version=ct.validate=ct.v7=ct.v6ToV1=ct.v6=ct.v5=ct.v4=ct.v3=ct.v1ToV6=ct.v1=ct.stringify=ct.parse=ct.NIL=ct.MAX=void 0;var Bk=TT();Object.defineProperty(ct,"MAX",{enumerable:!0,get:o(function(){return Bk.default},"get")});var Vk=AT();Object.defineProperty(ct,"NIL",{enumerable:!0,get:o(function(){return Vk.default},"get")});var Uk=ku();Object.defineProperty(ct,"parse",{enumerable:!0,get:o(function(){return Uk.default},"get")});var qk=Ws();Object.defineProperty(ct,"stringify",{enumerable:!0,get:o(function(){return qk.default},"get")});var Wk=M0();Object.defineProperty(ct,"v1",{enumerable:!0,get:o(function(){return Wk.default},"get")});var Gk=$0();Object.defineProperty(ct,"v1ToV6",{enumerable:!0,get:o(function(){return Gk.default},"get")});var zk=LT();Object.defineProperty(ct,"v3",{enumerable:!0,get:o(function(){return zk.default},"get")});var Hk=jT();Object.defineProperty(ct,"v4",{enumerable:!0,get:o(function(){return Hk.default},"get")});var Qk=VT();Object.defineProperty(ct,"v5",{enumerable:!0,get:o(function(){return Qk.default},"get")});var Kk=UT();Object.defineProperty(ct,"v6",{enumerable:!0,get:o(function(){return Kk.default},"get")});var Yk=qT();Object.defineProperty(ct,"v6ToV1",{enumerable:!0,get:o(function(){return Yk.default},"get")});var Xk=HT();Object.defineProperty(ct,"v7",{enumerable:!0,get:o(function(){return Xk.default},"get")});var Jk=Lu();Object.defineProperty(ct,"validate",{enumerable:!0,get:o(function(){return Jk.default},"get")});var Zk=QT();Object.defineProperty(ct,"version",{enumerable:!0,get:o(function(){return Zk.default},"get")})});var e_=S(Sh=>{"use strict";Object.defineProperty(Sh,"__esModule",{value:!0});Sh.Exo003UUIDGenerator=void 0;var J0=Tn(),KT=mh(),Z0=class{static{o(this,"Exo003UUIDGenerator")}static generateNamespaceUUID(e){if(!e||e.trim().length===0)throw new Error("Namespace URI cannot be empty");return(0,J0.v5)(e,KT.UUID_URL_NAMESPACE)}static generateAssetUUID(e,t){if(!t||t.trim().length===0)throw new Error("Local identifier cannot be empty");let r=this.generateNamespaceUUID(e);return(0,J0.v5)(t,r)}static generateFromIRI(e){if(!e||e.trim().length===0)throw new Error("IRI cannot be empty");let{namespace:t,localName:r}=this.splitIRI(e);return r?this.generateAssetUUID(t,r):(0,J0.v5)(e,KT.UUID_URL_NAMESPACE)}static generateBlankNodeUUID(e,t){if(!e||e.trim().length===0)throw new Error("Blank node ID cannot be empty");let r="urn:exocortex:blank-node:",i=t?`${t}#${e}`:e;return this.generateAssetUUID(r,i)}static generateStatementUUID(e,t,r){if(!e||!t||!r)throw new Error("Subject, predicate, and object cannot be empty");let i="urn:exocortex:statement:",s=`${e} ${t} ${r}`;return this.generateAssetUUID(i,s)}static generateBodyUUID(e,t){let r="urn:exocortex:body:",i=e;return t?.datatype?i+=`^^${t.datatype}`:t?.language&&(i+=`@${t.language}`,t.direction&&(i+=`--${t.direction}`)),this.generateAssetUUID(r,i)}static splitIRI(e){let t=e.lastIndexOf("#");if(t!==-1&&t<e.length-1)return{namespace:e.substring(0,t+1),localName:e.substring(t+1)};let r=e.lastIndexOf("/"),i=e.indexOf("://");return r!==-1&&r>i+2&&r<e.length-1?{namespace:e.substring(0,r+1),localName:e.substring(r+1)}:{namespace:e,localName:""}}static isValidUUID(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}};Sh.Exo003UUIDGenerator=Z0});var XT=S(bh=>{"use strict";Object.defineProperty(bh,"__esModule",{value:!0});bh.Exo003Parser=void 0;var mt=mh(),Uu=e_(),xa=Ae(),vh=Ne(),YT=qt(),eM=Yn(),t_=class{static{o(this,"Exo003Parser")}static parse(e,t){let r=this.validate(e);if(!r.valid)return{success:!1,errors:r.errors};let i=e.metadata;try{return{success:!0,metadata:this.parseByType(e,i),bodyContent:i===mt.Exo003MetadataType.Body?t:void 0}}catch(s){return{success:!1,errors:[s instanceof Error?s.message:String(s)]}}}static validate(e){let t=[],r=[];if(!e.metadata)return t.push("Missing required property: metadata"),{valid:!1,errors:t,warnings:r};let i=e.metadata;if(!Object.values(mt.Exo003MetadataType).includes(i))return t.push(`Invalid metadata: ${i}. Valid types: ${Object.values(mt.Exo003MetadataType).join(", ")}`),{valid:!1,errors:t,warnings:r};let s=i,a=mt.ALLOWED_PROPERTIES[s],c=mt.REQUIRED_PROPERTIES[s];for(let l of c)(e[l]===void 0||e[l]===null)&&t.push(`Missing required property: ${l}`);for(let l of Object.keys(e))a.includes(l)||t.push(`Forbidden property for ${s}: ${l}`);switch(s){case mt.Exo003MetadataType.Namespace:this.validateNamespaceMetadata(e,t);break;case mt.Exo003MetadataType.Anchor:this.validateAnchorMetadata(e,t);break;case mt.Exo003MetadataType.BlankNode:this.validateBlankNodeMetadata(e,t);break;case mt.Exo003MetadataType.Statement:this.validateStatementMetadata(e,t);break;case mt.Exo003MetadataType.Body:this.validateBodyMetadata(e,t,r);break}return{valid:t.length===0,errors:t,warnings:r}}static parseByType(e,t){let r={metadata:t,aliases:e.aliases};switch(t){case mt.Exo003MetadataType.Namespace:return{...r,metadata:mt.Exo003MetadataType.Namespace,uri:e.uri};case mt.Exo003MetadataType.Anchor:return{...r,metadata:mt.Exo003MetadataType.Anchor,uri:e.uri};case mt.Exo003MetadataType.BlankNode:return{...r,metadata:mt.Exo003MetadataType.BlankNode,uri:e.uri};case mt.Exo003MetadataType.Statement:return{...r,metadata:mt.Exo003MetadataType.Statement,subject:e.subject,predicate:e.predicate,object:e.object};case mt.Exo003MetadataType.Body:return{...r,metadata:mt.Exo003MetadataType.Body,subject:e.subject,predicate:e.predicate}}}static validateNamespaceMetadata(e,t){let r=e.uri;if(r&&typeof r!="string")t.push("uri must be a string");else if(r)try{new xa.IRI(r)}catch{t.push(`uri is not a valid IRI: ${String(r)}`)}}static validateAnchorMetadata(e,t){let r=e.uri;if(r&&typeof r!="string")t.push("uri must be a string");else if(r)try{new xa.IRI(r)}catch{t.push(`uri is not a valid IRI: ${String(r)}`)}}static validateBlankNodeMetadata(e,t){let r=e.uri;if(r&&typeof r!="string")t.push("uri must be a string");else if(r){let i=r;if(!i.startsWith("_:"))try{new xa.IRI(i)}catch{t.push(`uri is not a valid IRI or blank node identifier: ${String(r)}`)}}}static validateStatementMetadata(e,t){let r=e.subject,i=e.predicate,s=e.object,a=[["subject",r],["predicate",i],["object",s]];for(let[c,l]of a)l&&typeof l!="string"&&t.push(`${c} must be a string`)}static validateBodyMetadata(e,t,r){let i=e.subject,s=e.predicate;i&&typeof i!="string"&&t.push("subject must be a string"),s&&typeof s!="string"&&t.push("predicate must be a string")}static toTriple(e,t,r){let i=t(e.subject),s;if(i.type==="iri")s=new xa.IRI(i.value);else if(i.type==="blank")s=new YT.BlankNode(i.value);else throw new Error("Statement subject cannot be a literal");let a=t(e.predicate);if(a.type!=="iri")throw new Error("Statement predicate must be an IRI");let c=new xa.IRI(a.value),l=t(e.object),u;if(l.type==="iri")u=new xa.IRI(l.value);else if(l.type==="blank")u=new YT.BlankNode(l.value);else{let f=r||l.value;if(l.datatype)u=new vh.Literal(f,new xa.IRI(l.datatype));else{let d=l.language||mt.DEFAULT_LANGUAGE_TAG;u=(0,vh.createDirectionalLiteral)(f,d,l.direction)}}return new eM.Triple(s,c,u)}static toLiteral(e,t,r){if(r?.datatype)return new vh.Literal(t,new xa.IRI(r.datatype));let i=r?.language||mt.DEFAULT_LANGUAGE_TAG;return(0,vh.createDirectionalLiteral)(t,i,r?.direction)}static isExo003Format(e){let t=e.metadata;return typeof t=="string"&&Object.values(mt.Exo003MetadataType).includes(t)}static generateUUID(e,t){switch(e.metadata){case mt.Exo003MetadataType.Namespace:return Uu.Exo003UUIDGenerator.generateNamespaceUUID(e.uri);case mt.Exo003MetadataType.Anchor:return Uu.Exo003UUIDGenerator.generateNamespaceUUID(e.uri);case mt.Exo003MetadataType.BlankNode:return Uu.Exo003UUIDGenerator.generateNamespaceUUID(e.uri);case mt.Exo003MetadataType.Statement:{let r=e;return Uu.Exo003UUIDGenerator.generateStatementUUID(r.subject,r.predicate,r.object)}case mt.Exo003MetadataType.Body:{let r=e;return Uu.Exo003UUIDGenerator.generateBodyUUID(r.subject+"|"+r.predicate)}}}};bh.Exo003Parser=t_});var r_=S(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.Exo003Parser=Wr.Exo003UUIDGenerator=Wr.UUID_URL_NAMESPACE=Wr.DEFAULT_LANGUAGE_TAG=Wr.REQUIRED_PROPERTIES=Wr.ALLOWED_PROPERTIES=Wr.Exo003MetadataType=void 0;var qu=mh();Object.defineProperty(Wr,"Exo003MetadataType",{enumerable:!0,get:o(function(){return qu.Exo003MetadataType},"get")});Object.defineProperty(Wr,"ALLOWED_PROPERTIES",{enumerable:!0,get:o(function(){return qu.ALLOWED_PROPERTIES},"get")});Object.defineProperty(Wr,"REQUIRED_PROPERTIES",{enumerable:!0,get:o(function(){return qu.REQUIRED_PROPERTIES},"get")});Object.defineProperty(Wr,"DEFAULT_LANGUAGE_TAG",{enumerable:!0,get:o(function(){return qu.DEFAULT_LANGUAGE_TAG},"get")});Object.defineProperty(Wr,"UUID_URL_NAMESPACE",{enumerable:!0,get:o(function(){return qu.UUID_URL_NAMESPACE},"get")});var tM=e_();Object.defineProperty(Wr,"Exo003UUIDGenerator",{enumerable:!0,get:o(function(){return tM.Exo003UUIDGenerator},"get")});var rM=XT();Object.defineProperty(Wr,"Exo003Parser",{enumerable:!0,get:o(function(){return rM.Exo003Parser},"get")})});var zs=S(wh=>{"use strict";Object.defineProperty(wh,"__esModule",{value:!0});wh.WikiLinkHelpers=void 0;var Wu=class{static{o(this,"WikiLinkHelpers")}static normalize(e){if(!e)return"";let t=e.replace(this.WIKI_LINK_PATTERN,"").trim();if(!t)return"";let r=t.indexOf("|");if(r===-1)return t;let i=t.substring(0,r).trim(),s=t.substring(r+1).trim();return this.UUID_PATTERN.test(i)&&s||i}static normalizeArray(e){return e?(Array.isArray(e)?e:[e]).map(r=>this.normalize(r)).filter(r=>r.length>0):[]}static equals(e,t){return this.normalize(e)===this.normalize(t)}static includes(e,t){let r=this.normalizeArray(e),i=this.normalize(t);return r.includes(i)}};wh.WikiLinkHelpers=Wu;Wu.WIKI_LINK_PATTERN=/\[\[|\]\]/g;Wu.UUID_PATTERN=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i});var Mn=S(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.CommandBindingProperty=tt.GroundingProperty=tt.PreconditionProperty=tt.CommandProperty=tt.GroundingType=tt.getEffortStatusLabel=tt.isTrashedStatus=tt.isDoneStatus=tt.normalizeEffortStatus=tt.EFFORT_STATUS_OPTIONS=tt.STATUS_NAME_TO_WIKILINK=tt.STATUS_NAME_TO_ENUM=tt.EFFORT_STATUS_CONFIG=tt.EffortStatus=tt.AssetClass=void 0;var nM=Fu();Object.defineProperty(tt,"AssetClass",{enumerable:!0,get:o(function(){return nM.AssetClass},"get")});var iM=Ec();Object.defineProperty(tt,"EffortStatus",{enumerable:!0,get:o(function(){return iM.EffortStatus},"get")});var Ca=y0();Object.defineProperty(tt,"EFFORT_STATUS_CONFIG",{enumerable:!0,get:o(function(){return Ca.EFFORT_STATUS_CONFIG},"get")});Object.defineProperty(tt,"STATUS_NAME_TO_ENUM",{enumerable:!0,get:o(function(){return Ca.STATUS_NAME_TO_ENUM},"get")});Object.defineProperty(tt,"STATUS_NAME_TO_WIKILINK",{enumerable:!0,get:o(function(){return Ca.STATUS_NAME_TO_WIKILINK},"get")});Object.defineProperty(tt,"EFFORT_STATUS_OPTIONS",{enumerable:!0,get:o(function(){return Ca.EFFORT_STATUS_OPTIONS},"get")});Object.defineProperty(tt,"normalizeEffortStatus",{enumerable:!0,get:o(function(){return Ca.normalizeEffortStatus},"get")});Object.defineProperty(tt,"isDoneStatus",{enumerable:!0,get:o(function(){return Ca.isDoneStatus},"get")});Object.defineProperty(tt,"isTrashedStatus",{enumerable:!0,get:o(function(){return Ca.isTrashedStatus},"get")});Object.defineProperty(tt,"getEffortStatusLabel",{enumerable:!0,get:o(function(){return Ca.getEffortStatusLabel},"get")});var sM=Tc();Object.defineProperty(tt,"GroundingType",{enumerable:!0,get:o(function(){return sM.GroundingType},"get")});var Eh=_0();Object.defineProperty(tt,"CommandProperty",{enumerable:!0,get:o(function(){return Eh.CommandProperty},"get")});Object.defineProperty(tt,"PreconditionProperty",{enumerable:!0,get:o(function(){return Eh.PreconditionProperty},"get")});Object.defineProperty(tt,"GroundingProperty",{enumerable:!0,get:o(function(){return Eh.GroundingProperty},"get")});Object.defineProperty(tt,"CommandBindingProperty",{enumerable:!0,get:o(function(){return Eh.CommandBindingProperty},"get")})});var xo=S(Gr=>{"use strict";Object.defineProperty(Gr,"__esModule",{value:!0});Gr.hasClass=Ao;Gr.isAreaOrProject=aM;Gr.isEffort=oM;Gr.hasStatus=cM;Gr.isAssetArchived=lM;Gr.hasEmptyProperties=uM;Gr.needsFolderRepair=fM;Gr.getTodayDateString=n_;Gr.isPlannedForToday=dM;Gr.hasPlannedStartTimestamp=hM;Gr.extractDailyNoteDate=pM;Gr.isCurrentDateGteDay=mM;Gr.inheritsFromPrototype=eA;Gr.isPrototypeClass=yM;var ZT=zs(),To=Mn();function Ao(n,e){return n?(Array.isArray(n)?n:[n]).some(r=>ZT.WikiLinkHelpers.normalize(r)===e):!1}o(Ao,"hasClass");function aM(n){return Ao(n,To.AssetClass.AREA)||Ao(n,To.AssetClass.PROJECT)}o(aM,"isAreaOrProject");function oM(n){return Ao(n,To.AssetClass.TASK)||Ao(n,To.AssetClass.PROJECT)||Ao(n,To.AssetClass.MEETING)}o(oM,"isEffort");function cM(n,e){if(!n)return!1;let t=Array.isArray(n)?n[0]:n;return t?ZT.WikiLinkHelpers.normalize(t)===e:!1}o(cM,"hasStatus");function lM(n){if(n===!0||n===1)return!0;if(typeof n=="string"){let e=n.toLowerCase();return e==="true"||e==="yes"}return!1}o(lM,"isAssetArchived");function uM(n){return!n||Object.keys(n).length===0?!1:Object.values(n).some(e=>!!(e==null||typeof e=="string"&&e.trim()===""||Array.isArray(e)&&e.length===0||typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0))}o(uM,"hasEmptyProperties");function fM(n,e){if(!e)return!1;let t=n.replace(/\/$/,""),r=e.replace(/\/$/,"");return t!==r}o(fM,"needsFolderRepair");function n_(){let n=new Date,e=n.getFullYear(),t=String(n.getMonth()+1).padStart(2,"0"),r=String(n.getDate()).padStart(2,"0");return`${e}-${t}-${r}`}o(n_,"getTodayDateString");function dM(n){let e=n.ems__Effort_plannedStartTimestamp;if(!e)return!1;let t=n_();return typeof e=="string"?e.split("T")[0]===t:Array.isArray(e)&&e.length>0?String(e[0]).split("T")[0]===t:!1}o(dM,"isPlannedForToday");function hM(n){let e=n.ems__Effort_plannedStartTimestamp;return e?typeof e=="string"?e.trim().length>0:Array.isArray(e)&&e.length>0?String(e[0]).trim().length>0:!1:!1}o(hM,"hasPlannedStartTimestamp");function pM(n){let e=n.pn__DailyNote_day;if(!e)return null;if(typeof e=="string"){let t=e.match(/\[\[([^\[\]]+)\]\]/);return t?t[1]:e}if(Array.isArray(e)&&e.length>0){let t=String(e[0]),r=t.match(/\[\[([^\[\]]+)\]\]/);return r?r[1]:t}return null}o(pM,"extractDailyNoteDate");function mM(n){return n_()>=n}o(mM,"isCurrentDateGteDay");function JT(n){return n?n.replace(/^["']|["']$/g,"").replace(/\[\[|\]\]/g,"").trim():""}o(JT,"normalizeWithQuotes");var gM=10;function eA(n,e=gM){let t=n.exo__Class_superClass;if(!t)return!1;let r=new Set,i=[],s=Array.isArray(t)?t:[t];for(let a of s){let c=JT(a);c&&i.push({className:c,depth:0})}for(;i.length>0;){let a=i.shift();if(!a)continue;let{className:c,depth:l}=a;if(l>e)continue;if(c===To.AssetClass.PROTOTYPE)return!0;if(r.has(c))continue;r.add(c);let u=`${c}__exo__Class_superClass`,f=n[u];if(f){let d=Array.isArray(f)?f:[f];for(let h of d){let p=JT(h);p&&!r.has(p)&&i.push({className:p,depth:l+1})}}}return!1}o(eA,"inheritsFromPrototype");function yM(n,e){return Ao(n,To.AssetClass.CLASS)?eA(e):!1}o(yM,"isPrototypeClass")});var tA=S(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});Cc.canCreateTask=_M;Cc.canCreateRelatedTask=SM;Cc.canConvertTaskToProject=vM;Cc.canSetCriticalityZone=bM;var xc=xo(),i_=Mn();function _M(n){return(0,xc.isAreaOrProject)(n.instanceClass)}o(_M,"canCreateTask");function SM(n){return!(!(0,xc.hasClass)(n.instanceClass,i_.AssetClass.TASK)||(0,xc.isAssetArchived)(n.isArchived))}o(SM,"canCreateRelatedTask");function vM(n){return(0,xc.hasClass)(n.instanceClass,i_.AssetClass.TASK)}o(vM,"canConvertTaskToProject");function bM(n){return!(!(0,xc.hasClass)(n.instanceClass,i_.AssetClass.TASK)||(0,xc.isAssetArchived)(n.isArchived))}o(bM,"canSetCriticalityZone")});var rA=S(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});Ic.canCreateProject=wM;Ic.canMoveToAnalysis=EM;Ic.canMoveToToDo=TM;Ic.canConvertProjectToTask=AM;var Ia=xo(),Ra=Mn();function wM(n){return(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.AREA)||(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.INITIATIVE)||(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.PROJECT)}o(wM,"canCreateProject");function EM(n){return(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.PROJECT)?(0,Ia.hasStatus)(n.currentStatus,Ra.EffortStatus.BACKLOG):!1}o(EM,"canMoveToAnalysis");function TM(n){return(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.PROJECT)?(0,Ia.hasStatus)(n.currentStatus,Ra.EffortStatus.ANALYSIS):!1}o(TM,"canMoveToToDo");function AM(n){return(0,Ia.hasClass)(n.instanceClass,Ra.AssetClass.PROJECT)}o(AM,"canConvertProjectToTask")});var sA=S(Th=>{"use strict";Object.defineProperty(Th,"__esModule",{value:!0});Th.canCreateChildArea=xM;Th.canSetActiveFocus=CM;var nA=xo(),iA=Mn();function xM(n){return(0,nA.hasClass)(n.instanceClass,iA.AssetClass.AREA)}o(xM,"canCreateChildArea");function CM(n){return(0,nA.hasClass)(n.instanceClass,iA.AssetClass.AREA)}o(CM,"canSetActiveFocus")});var oA=S(un=>{"use strict";Object.defineProperty(un,"__esModule",{value:!0});un.canPlanOnToday=IM;un.canPlanForEvening=RM;un.canShiftDayBackward=PM;un.canShiftDayForward=OM;un.canSetDraftStatus=FM;un.canMoveToBacklog=DM;un.canStartEffort=NM;un.canMarkDone=LM;un.canTrashEffort=kM;un.canVoteOnEffort=MM;un.canRollbackStatus=jM;un.canArchiveTask=$M;un.canMarkReviewed=BM;var aA=zs(),dt=xo(),ln=Mn();function IM(n){return!(!(0,dt.isEffort)(n.instanceClass)||(0,dt.isPlannedForToday)(n.metadata))}o(IM,"canPlanOnToday");function RM(n){return!(0,dt.hasClass)(n.instanceClass,ln.AssetClass.TASK)&&!(0,dt.hasClass)(n.instanceClass,ln.AssetClass.MEETING)?!1:(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.BACKLOG)}o(RM,"canPlanForEvening");function PM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasPlannedStartTimestamp)(n.metadata):!1}o(PM,"canShiftDayBackward");function OM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasPlannedStartTimestamp)(n.metadata):!1}o(OM,"canShiftDayForward");function FM(n){return(0,dt.isEffort)(n.instanceClass)?!n.currentStatus:!1}o(FM,"canSetDraftStatus");function DM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.DRAFT):!1}o(DM,"canMoveToBacklog");function NM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasClass)(n.instanceClass,ln.AssetClass.TASK)||(0,dt.hasClass)(n.instanceClass,ln.AssetClass.MEETING)?(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.BACKLOG):(0,dt.hasClass)(n.instanceClass,ln.AssetClass.PROJECT)?(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.TODO):!1:!1}o(NM,"canStartEffort");function LM(n){return(0,dt.isEffort)(n.instanceClass)?(0,dt.hasStatus)(n.currentStatus,ln.EffortStatus.DOING):!1}o(LM,"canMarkDone");function kM(n){return(0,dt.isEffort)(n.instanceClass)?n.currentStatus?!(Array.isArray(n.currentStatus)?n.currentStatus:[n.currentStatus]).some(r=>{let i=aA.WikiLinkHelpers.normalize(r);return i===ln.EffortStatus.TRASHED||i===ln.EffortStatus.DONE}):!0:!1}o(kM,"canTrashEffort");function MM(n){return!(!(0,dt.isEffort)(n.instanceClass)||(0,dt.isAssetArchived)(n.isArchived))}o(MM,"canVoteOnEffort");function jM(n){if(!(0,dt.isEffort)(n.instanceClass)||(0,dt.isAssetArchived)(n.isArchived)||!n.currentStatus)return!1;let e=Array.isArray(n.currentStatus)?n.currentStatus[0]:n.currentStatus;return!(!e||aA.WikiLinkHelpers.normalize(e)===ln.EffortStatus.TRASHED)}o(jM,"canRollbackStatus");function $M(n){return!(0,dt.isAssetArchived)(n.isArchived)}o($M,"canArchiveTask");function BM(n){return!(!(0,dt.hasClass)(n.instanceClass,ln.AssetClass.TASK)&&!(0,dt.hasClass)(n.instanceClass,ln.AssetClass.PROJECT)||(0,dt.isAssetArchived)(n.isArchived))}o(BM,"canMarkReviewed")});var cA=S(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.canCreateEvent=qM;Zn.canCreateInstance=WM;Zn.canCleanProperties=GM;Zn.canRepairFolder=zM;Zn.canRenameToUid=HM;Zn.canCopyLabelToAliases=QM;Zn.canCreateNarrowerConcept=KM;Zn.canCreateSubclass=YM;Zn.canCreateTaskForDailyNote=XM;Zn.canCopyFleetingNoteLabel=JM;var zr=xo(),Hs=Mn(),VM="75302770-279e-4a59-ba85-09df29725713",UM="fca0a931-a01f-48e4-b72a-4af206c94bc7";function qM(n){return(0,zr.isAreaOrProject)(n.instanceClass)}o(qM,"canCreateEvent");function WM(n){return(0,zr.hasClass)(n.instanceClass,Hs.AssetClass.TASK_PROTOTYPE)||(0,zr.hasClass)(n.instanceClass,VM)||(0,zr.hasClass)(n.instanceClass,Hs.AssetClass.MEETING_PROTOTYPE)||(0,zr.hasClass)(n.instanceClass,Hs.AssetClass.EVENT_PROTOTYPE)||(0,zr.hasClass)(n.instanceClass,Hs.AssetClass.PROJECT_PROTOTYPE)||(0,zr.hasClass)(n.instanceClass,Hs.AssetClass.PROTOTYPE)||n.classIsPrototype?!0:(0,zr.isPrototypeClass)(n.instanceClass,n.metadata)}o(WM,"canCreateInstance");function GM(n){return(0,zr.hasEmptyProperties)(n.metadata)}o(GM,"canCleanProperties");function zM(n){return(0,zr.needsFolderRepair)(n.currentFolder,n.expectedFolder)}o(zM,"canRepairFolder");function HM(n,e){let t=n.metadata.exo__Asset_uid;return t?e!==t:!1}o(HM,"canRenameToUid");function QM(n){let e=n.metadata.exo__Asset_label;if(!e||typeof e!="string"||e.trim()==="")return!1;let t=e.trim(),r=n.metadata.aliases;return!r||!Array.isArray(r)||r.length===0?!0:!r.some(i=>typeof i!="string"?!1:i.trim()===t)}o(QM,"canCopyLabelToAliases");function KM(n){return(0,zr.hasClass)(n.instanceClass,Hs.AssetClass.CONCEPT)}o(KM,"canCreateNarrowerConcept");function YM(n){return(0,zr.hasClass)(n.instanceClass,Hs.AssetClass.CLASS)}o(YM,"canCreateSubclass");function XM(n){return!(!(0,zr.hasClass)(n.instanceClass,Hs.AssetClass.DAILY_NOTE)||n.isArchived||!(0,zr.extractDailyNoteDate)(n.metadata))}o(XM,"canCreateTaskForDailyNote");function JM(n){return(0,zr.hasClass)(n.instanceClass,Hs.AssetClass.FLEETING_NOTE)||(0,zr.hasClass)(n.instanceClass,UM)}o(JM,"canCopyFleetingNoteLabel")});var uA=S(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.canCopyFleetingNoteLabel=L.canCreateTaskForDailyNote=L.canCreateSubclass=L.canCreateNarrowerConcept=L.canCopyLabelToAliases=L.canRenameToUid=L.canRepairFolder=L.canCleanProperties=L.canCreateInstance=L.canCreateEvent=L.canMarkReviewed=L.canArchiveTask=L.canRollbackStatus=L.canVoteOnEffort=L.canTrashEffort=L.canMarkDone=L.canStartEffort=L.canMoveToBacklog=L.canSetDraftStatus=L.canShiftDayForward=L.canShiftDayBackward=L.canPlanForEvening=L.canPlanOnToday=L.canSetActiveFocus=L.canCreateChildArea=L.canConvertProjectToTask=L.canMoveToToDo=L.canMoveToAnalysis=L.canCreateProject=L.canSetCriticalityZone=L.canConvertTaskToProject=L.canCreateRelatedTask=L.canCreateTask=L.isPrototypeClass=L.inheritsFromPrototype=L.isCurrentDateGteDay=L.extractDailyNoteDate=L.hasPlannedStartTimestamp=L.isPlannedForToday=L.getTodayDateString=L.needsFolderRepair=L.hasEmptyProperties=L.isAssetArchived=L.hasStatus=L.isEffort=L.isAreaOrProject=L.hasClass=void 0;var An=xo();Object.defineProperty(L,"hasClass",{enumerable:!0,get:o(function(){return An.hasClass},"get")});Object.defineProperty(L,"isAreaOrProject",{enumerable:!0,get:o(function(){return An.isAreaOrProject},"get")});Object.defineProperty(L,"isEffort",{enumerable:!0,get:o(function(){return An.isEffort},"get")});Object.defineProperty(L,"hasStatus",{enumerable:!0,get:o(function(){return An.hasStatus},"get")});Object.defineProperty(L,"isAssetArchived",{enumerable:!0,get:o(function(){return An.isAssetArchived},"get")});Object.defineProperty(L,"hasEmptyProperties",{enumerable:!0,get:o(function(){return An.hasEmptyProperties},"get")});Object.defineProperty(L,"needsFolderRepair",{enumerable:!0,get:o(function(){return An.needsFolderRepair},"get")});Object.defineProperty(L,"getTodayDateString",{enumerable:!0,get:o(function(){return An.getTodayDateString},"get")});Object.defineProperty(L,"isPlannedForToday",{enumerable:!0,get:o(function(){return An.isPlannedForToday},"get")});Object.defineProperty(L,"hasPlannedStartTimestamp",{enumerable:!0,get:o(function(){return An.hasPlannedStartTimestamp},"get")});Object.defineProperty(L,"extractDailyNoteDate",{enumerable:!0,get:o(function(){return An.extractDailyNoteDate},"get")});Object.defineProperty(L,"isCurrentDateGteDay",{enumerable:!0,get:o(function(){return An.isCurrentDateGteDay},"get")});Object.defineProperty(L,"inheritsFromPrototype",{enumerable:!0,get:o(function(){return An.inheritsFromPrototype},"get")});Object.defineProperty(L,"isPrototypeClass",{enumerable:!0,get:o(function(){return An.isPrototypeClass},"get")});var Ah=tA();Object.defineProperty(L,"canCreateTask",{enumerable:!0,get:o(function(){return Ah.canCreateTask},"get")});Object.defineProperty(L,"canCreateRelatedTask",{enumerable:!0,get:o(function(){return Ah.canCreateRelatedTask},"get")});Object.defineProperty(L,"canConvertTaskToProject",{enumerable:!0,get:o(function(){return Ah.canConvertTaskToProject},"get")});Object.defineProperty(L,"canSetCriticalityZone",{enumerable:!0,get:o(function(){return Ah.canSetCriticalityZone},"get")});var xh=rA();Object.defineProperty(L,"canCreateProject",{enumerable:!0,get:o(function(){return xh.canCreateProject},"get")});Object.defineProperty(L,"canMoveToAnalysis",{enumerable:!0,get:o(function(){return xh.canMoveToAnalysis},"get")});Object.defineProperty(L,"canMoveToToDo",{enumerable:!0,get:o(function(){return xh.canMoveToToDo},"get")});Object.defineProperty(L,"canConvertProjectToTask",{enumerable:!0,get:o(function(){return xh.canConvertProjectToTask},"get")});var lA=sA();Object.defineProperty(L,"canCreateChildArea",{enumerable:!0,get:o(function(){return lA.canCreateChildArea},"get")});Object.defineProperty(L,"canSetActiveFocus",{enumerable:!0,get:o(function(){return lA.canSetActiveFocus},"get")});var jn=oA();Object.defineProperty(L,"canPlanOnToday",{enumerable:!0,get:o(function(){return jn.canPlanOnToday},"get")});Object.defineProperty(L,"canPlanForEvening",{enumerable:!0,get:o(function(){return jn.canPlanForEvening},"get")});Object.defineProperty(L,"canShiftDayBackward",{enumerable:!0,get:o(function(){return jn.canShiftDayBackward},"get")});Object.defineProperty(L,"canShiftDayForward",{enumerable:!0,get:o(function(){return jn.canShiftDayForward},"get")});Object.defineProperty(L,"canSetDraftStatus",{enumerable:!0,get:o(function(){return jn.canSetDraftStatus},"get")});Object.defineProperty(L,"canMoveToBacklog",{enumerable:!0,get:o(function(){return jn.canMoveToBacklog},"get")});Object.defineProperty(L,"canStartEffort",{enumerable:!0,get:o(function(){return jn.canStartEffort},"get")});Object.defineProperty(L,"canMarkDone",{enumerable:!0,get:o(function(){return jn.canMarkDone},"get")});Object.defineProperty(L,"canTrashEffort",{enumerable:!0,get:o(function(){return jn.canTrashEffort},"get")});Object.defineProperty(L,"canVoteOnEffort",{enumerable:!0,get:o(function(){return jn.canVoteOnEffort},"get")});Object.defineProperty(L,"canRollbackStatus",{enumerable:!0,get:o(function(){return jn.canRollbackStatus},"get")});Object.defineProperty(L,"canArchiveTask",{enumerable:!0,get:o(function(){return jn.canArchiveTask},"get")});Object.defineProperty(L,"canMarkReviewed",{enumerable:!0,get:o(function(){return jn.canMarkReviewed},"get")});var os=cA();Object.defineProperty(L,"canCreateEvent",{enumerable:!0,get:o(function(){return os.canCreateEvent},"get")});Object.defineProperty(L,"canCreateInstance",{enumerable:!0,get:o(function(){return os.canCreateInstance},"get")});Object.defineProperty(L,"canCleanProperties",{enumerable:!0,get:o(function(){return os.canCleanProperties},"get")});Object.defineProperty(L,"canRepairFolder",{enumerable:!0,get:o(function(){return os.canRepairFolder},"get")});Object.defineProperty(L,"canRenameToUid",{enumerable:!0,get:o(function(){return os.canRenameToUid},"get")});Object.defineProperty(L,"canCopyLabelToAliases",{enumerable:!0,get:o(function(){return os.canCopyLabelToAliases},"get")});Object.defineProperty(L,"canCreateNarrowerConcept",{enumerable:!0,get:o(function(){return os.canCreateNarrowerConcept},"get")});Object.defineProperty(L,"canCreateSubclass",{enumerable:!0,get:o(function(){return os.canCreateSubclass},"get")});Object.defineProperty(L,"canCreateTaskForDailyNote",{enumerable:!0,get:o(function(){return os.canCreateTaskForDailyNote},"get")});Object.defineProperty(L,"canCopyFleetingNoteLabel",{enumerable:!0,get:o(function(){return os.canCopyFleetingNoteLabel},"get")})});var fA=S(Co=>{"use strict";var ZM=Co&&Co.__createBinding||(Object.create?(function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(n,r,i)}):(function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]})),e4=Co&&Co.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&ZM(e,n,t)};Object.defineProperty(Co,"__esModule",{value:!0});e4(uA(),Co)});var Ch=S(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.PropertyFieldType=void 0;Gu.rangeToFieldType=n4;var Nr;(function(n){n.Text="text",n.Number="number",n.Date="date",n.DateTime="datetime",n.Boolean="boolean",n.Reference="reference",n.Enum="enum",n.StatusSelect="status-select",n.SizeSelect="size-select",n.Wikilink="wikilink",n.Timestamp="timestamp",n.Unknown="unknown"})(Nr||(Gu.PropertyFieldType=Nr={}));var dA="http://www.w3.org/2001/XMLSchema#",t4="https://exocortex.my/ontology/exo#",r4="https://exocortex.my/ontology/ems#";function n4(n){if(!n)return Nr.Unknown;let e=n.trim();if(!e)return Nr.Unknown;if(e.startsWith(dA)){let t=e.substring(dA.length);return s_(t)}if(e.startsWith("xsd:")){let t=e.substring(4);return s_(t)}if(e.includes("XMLSchema#")){let t=e.indexOf("XMLSchema#"),r=e.substring(t+10);return s_(r)}return e.startsWith(r4)||e.startsWith("ems:")?i4(e):e.startsWith(t4)||e.startsWith("exo:")||s4(e)?Nr.Reference:Nr.Text}o(n4,"rangeToFieldType");function s_(n){switch(n.toLowerCase()){case"string":case"normalizedstring":case"token":case"language":case"nmtoken":case"name":case"ncname":case"anyuri":return Nr.Text;case"integer":case"int":case"long":case"short":case"byte":case"nonnegativeinteger":case"positiveinteger":case"nonpositiveinteger":case"negativeinteger":case"unsignedlong":case"unsignedint":case"unsignedshort":case"unsignedbyte":case"decimal":case"float":case"double":return Nr.Number;case"date":return Nr.Date;case"datetime":case"datetimestamp":return Nr.DateTime;case"boolean":return Nr.Boolean;case"time":return Nr.Timestamp;default:return Nr.Text}}o(s_,"xsdTypeToFieldType");function i4(n){let e=n.toLowerCase();return e.includes("effortstatus")?Nr.StatusSelect:e.includes("tasksize")?Nr.SizeSelect:Nr.Reference}o(i4,"emsTypeToFieldType");function s4(n){let e=n.toLowerCase();return e.includes("exocortex.my/ontology")?!0:["asset","task","project","area","effort","class","property","concept"].some(r=>e.includes(r))}o(s4,"isClassReference")});var a_=S(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});zu.propertyNameToUri=a4;zu.uriToPropertyName=hA;zu.extractPropertyLabel=o4;function a4(n){return n.replace(/^([a-z]+)__/,"$1:")}o(a4,"propertyNameToUri");function hA(n){if(n.startsWith("http://")||n.startsWith("https://")){let e=n.match(/\/([a-z]+)#([A-Za-z0-9_]+)$/);if(e)return`${e[1]}__${e[2]}`;let t=n.lastIndexOf("#"),r=n.lastIndexOf("/"),i=Math.max(t,r);return i>=0?n.substring(i+1):n}return n.replace(/^([a-z]+):/,"$1__")}o(hA,"uriToPropertyName");function o4(n){let r=(n.includes(":")?hA(n):n).replace(/^[a-z]+__/,"").split("_");return(r.length>1?r.slice(1).join(" "):r[0]).replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^./,s=>s.toUpperCase())}o(o4,"extractPropertyLabel")});var Ih={};Zy(Ih,{__assign:()=>c_,__asyncDelegator:()=>v4,__asyncGenerator:()=>S4,__asyncValues:()=>b4,__await:()=>Hu,__awaiter:()=>h4,__classPrivateFieldGet:()=>A4,__classPrivateFieldSet:()=>x4,__createBinding:()=>m4,__decorate:()=>u4,__exportStar:()=>g4,__extends:()=>c4,__generator:()=>p4,__importDefault:()=>T4,__importStar:()=>E4,__makeTemplateObject:()=>w4,__metadata:()=>d4,__param:()=>f4,__read:()=>pA,__rest:()=>l4,__spread:()=>y4,__spreadArrays:()=>_4,__values:()=>l_});function c4(n,e){o_(n,e);function t(){this.constructor=n}o(t,"__"),n.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function l4(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(n);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(t[r[i]]=n[r[i]]);return t}function u4(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s}function f4(n,e){return function(t,r){e(t,r,n)}}function d4(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)}function h4(n,e,t,r){function i(s){return s instanceof t?s:new t(function(a){a(s)})}return o(i,"adopt"),new(t||(t=Promise))(function(s,a){function c(f){try{u(r.next(f))}catch(d){a(d)}}o(c,"fulfilled");function l(f){try{u(r.throw(f))}catch(d){a(d)}}o(l,"rejected");function u(f){f.done?s(f.value):i(f.value).then(c,l)}o(u,"step"),u((r=r.apply(n,e||[])).next())})}function p4(n,e){var t={label:0,sent:o(function(){if(s[0]&1)throw s[1];return s[1]},"sent"),trys:[],ops:[]},r,i,s,a;return a={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(u){return function(f){return l([u,f])}}function l(u){if(r)throw new TypeError("Generator is already executing.");for(;t;)try{if(r=1,i&&(s=u[0]&2?i.return:u[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,u[1])).done)return s;switch(i=0,s&&(u=[u[0]&2,s.value]),u[0]){case 0:case 1:s=u;break;case 4:return t.label++,{value:u[1],done:!1};case 5:t.label++,i=u[1],u=[0];continue;case 7:u=t.ops.pop(),t.trys.pop();continue;default:if(s=t.trys,!(s=s.length>0&&s[s.length-1])&&(u[0]===6||u[0]===2)){t=0;continue}if(u[0]===3&&(!s||u[1]>s[0]&&u[1]<s[3])){t.label=u[1];break}if(u[0]===6&&t.label<s[1]){t.label=s[1],s=u;break}if(s&&t.label<s[2]){t.label=s[2],t.ops.push(u);break}s[2]&&t.ops.pop(),t.trys.pop();continue}u=e.call(n,t)}catch(f){u=[6,f],i=0}finally{r=s=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}function m4(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}function g4(n,e){for(var t in n)t!=="default"&&!e.hasOwnProperty(t)&&(e[t]=n[t])}function l_(n){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&n[e],r=0;if(t)return t.call(n);if(n&&typeof n.length=="number")return{next:o(function(){return n&&r>=n.length&&(n=void 0),{value:n&&n[r++],done:!n}},"next")};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function pA(n,e){var t=typeof Symbol=="function"&&n[Symbol.iterator];if(!t)return n;var r=t.call(n),i,s=[],a;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(c){a={error:c}}finally{try{i&&!i.done&&(t=r.return)&&t.call(r)}finally{if(a)throw a.error}}return s}function y4(){for(var n=[],e=0;e<arguments.length;e++)n=n.concat(pA(arguments[e]));return n}function _4(){for(var n=0,e=0,t=arguments.length;e<t;e++)n+=arguments[e].length;for(var r=Array(n),i=0,e=0;e<t;e++)for(var s=arguments[e],a=0,c=s.length;a<c;a++,i++)r[i]=s[a];return r}function Hu(n){return this instanceof Hu?(this.v=n,this):new Hu(n)}function S4(n,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=t.apply(n,e||[]),i,s=[];return i={},a("next"),a("throw"),a("return"),i[Symbol.asyncIterator]=function(){return this},i;function a(h){r[h]&&(i[h]=function(p){return new Promise(function(y,v){s.push([h,p,y,v])>1||c(h,p)})})}function c(h,p){try{l(r[h](p))}catch(y){d(s[0][3],y)}}function l(h){h.value instanceof Hu?Promise.resolve(h.value.v).then(u,f):d(s[0][2],h)}function u(h){c("next",h)}function f(h){c("throw",h)}function d(h,p){h(p),s.shift(),s.length&&c(s[0][0],s[0][1])}}function v4(n){var e,t;return e={},r("next"),r("throw",function(i){throw i}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(i,s){e[i]=n[i]?function(a){return(t=!t)?{value:Hu(n[i](a)),done:i==="return"}:s?s(a):a}:s}}function b4(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=n[Symbol.asyncIterator],t;return e?e.call(n):(n=typeof l_=="function"?l_(n):n[Symbol.iterator](),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(s){t[s]=n[s]&&function(a){return new Promise(function(c,l){a=n[s](a),i(c,l,a.done,a.value)})}}function i(s,a,c,l){Promise.resolve(l).then(function(u){s({value:u,done:c})},a)}}function w4(n,e){return Object.defineProperty?Object.defineProperty(n,"raw",{value:e}):n.raw=e,n}function E4(n){if(n&&n.__esModule)return n;var e={};if(n!=null)for(var t in n)Object.hasOwnProperty.call(n,t)&&(e[t]=n[t]);return e.default=n,e}function T4(n){return n&&n.__esModule?n:{default:n}}function A4(n,e){if(!e.has(n))throw new TypeError("attempted to get private field on non-instance");return e.get(n)}function x4(n,e,t){if(!e.has(n))throw new TypeError("attempted to set private field on non-instance");return e.set(n,t),t}var o_,c_,Rh=lL(()=>{o_=o(function(n,e){return o_=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var i in r)r.hasOwnProperty(i)&&(t[i]=r[i])},o_(n,e)},"extendStatics");o(c4,"__extends");c_=o(function(){return c_=Object.assign||o(function(e){for(var t,r=1,i=arguments.length;r<i;r++){t=arguments[r];for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s])}return e},"__assign"),c_.apply(this,arguments)},"__assign");o(l4,"__rest");o(u4,"__decorate");o(f4,"__param");o(d4,"__metadata");o(h4,"__awaiter");o(p4,"__generator");o(m4,"__createBinding");o(g4,"__exportStar");o(l_,"__values");o(pA,"__read");o(y4,"__spread");o(_4,"__spreadArrays");o(Hu,"__await");o(S4,"__asyncGenerator");o(v4,"__asyncDelegator");o(b4,"__asyncValues");o(w4,"__makeTemplateObject");o(E4,"__importStar");o(T4,"__importDefault");o(A4,"__classPrivateFieldGet");o(x4,"__classPrivateFieldSet")});var d_=S(f_=>{"use strict";Object.defineProperty(f_,"__esModule",{value:!0});var u_;(function(n){n[n.Transient=0]="Transient",n[n.Singleton=1]="Singleton",n[n.ResolutionScoped=2]="ResolutionScoped",n[n.ContainerScoped=3]="ContainerScoped"})(u_||(u_={}));f_.default=u_});var mA=S(h_=>{"use strict";Object.defineProperty(h_,"__esModule",{value:!0});var C4=d_();Object.defineProperty(h_,"Lifecycle",{enumerable:!0,get:o(function(){return C4.default},"get")})});var Io=S(di=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});di.defineInjectionTokenMetadata=di.getParamInfo=di.INJECTION_TOKEN_METADATA_KEY=void 0;di.INJECTION_TOKEN_METADATA_KEY="injectionTokens";function I4(n){let e=Reflect.getMetadata("design:paramtypes",n)||[],t=Reflect.getOwnMetadata(di.INJECTION_TOKEN_METADATA_KEY,n)||{};return Object.keys(t).forEach(r=>{e[+r]=t[r]}),e}o(I4,"getParamInfo");di.getParamInfo=I4;function R4(n,e){return function(t,r,i){let s=Reflect.getOwnMetadata(di.INJECTION_TOKEN_METADATA_KEY,t)||{};s[i]=e?{token:n,transform:e.transformToken,transformArgs:e.args||[]}:n,Reflect.defineMetadata(di.INJECTION_TOKEN_METADATA_KEY,s,t)}}o(R4,"defineInjectionTokenMetadata");di.defineInjectionTokenMetadata=R4});var p_=S(Ph=>{"use strict";Object.defineProperty(Ph,"__esModule",{value:!0});Ph.isClassProvider=void 0;function P4(n){return!!n.useClass}o(P4,"isClassProvider");Ph.isClassProvider=P4});var m_=S(Oh=>{"use strict";Object.defineProperty(Oh,"__esModule",{value:!0});Oh.isFactoryProvider=void 0;function O4(n){return!!n.useFactory}o(O4,"isFactoryProvider");Oh.isFactoryProvider=O4});var Dh=S(Rc=>{"use strict";Object.defineProperty(Rc,"__esModule",{value:!0});Rc.delay=Rc.DelayedConstructor=void 0;var Fh=class{static{o(this,"DelayedConstructor")}constructor(e){this.wrap=e,this.reflectMethods=["get","getPrototypeOf","setPrototypeOf","getOwnPropertyDescriptor","defineProperty","has","set","deleteProperty","apply","construct","ownKeys"]}createProxy(e){let t={},r=!1,i,s=o(()=>(r||(i=e(this.wrap()),r=!0),i),"delayedObject");return new Proxy(t,this.createHandler(s))}createHandler(e){let t={},r=o(i=>{t[i]=(...s)=>{s[0]=e();let a=Reflect[i];return a(...s)}},"install");return this.reflectMethods.forEach(r),t}};Rc.DelayedConstructor=Fh;function F4(n){if(typeof n>"u")throw new Error("Attempt to `delay` undefined. Constructor must be wrapped in a callback");return new Fh(n)}o(F4,"delay");Rc.delay=F4});var Nh=S(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.isConstructorToken=cs.isTransformDescriptor=cs.isTokenDescriptor=cs.isNormalToken=void 0;var D4=Dh();function N4(n){return typeof n=="string"||typeof n=="symbol"}o(N4,"isNormalToken");cs.isNormalToken=N4;function L4(n){return typeof n=="object"&&"token"in n&&"multiple"in n}o(L4,"isTokenDescriptor");cs.isTokenDescriptor=L4;function k4(n){return typeof n=="object"&&"token"in n&&"transform"in n}o(k4,"isTransformDescriptor");cs.isTransformDescriptor=k4;function M4(n){return typeof n=="function"||n instanceof D4.DelayedConstructor}o(M4,"isConstructorToken");cs.isConstructorToken=M4});var g_=S(Lh=>{"use strict";Object.defineProperty(Lh,"__esModule",{value:!0});Lh.isTokenProvider=void 0;function j4(n){return!!n.useToken}o(j4,"isTokenProvider");Lh.isTokenProvider=j4});var y_=S(kh=>{"use strict";Object.defineProperty(kh,"__esModule",{value:!0});kh.isValueProvider=void 0;function $4(n){return n.useValue!=null}o($4,"isValueProvider");kh.isValueProvider=$4});var __=S(Ro=>{"use strict";Object.defineProperty(Ro,"__esModule",{value:!0});var B4=p_();Object.defineProperty(Ro,"isClassProvider",{enumerable:!0,get:o(function(){return B4.isClassProvider},"get")});var V4=m_();Object.defineProperty(Ro,"isFactoryProvider",{enumerable:!0,get:o(function(){return V4.isFactoryProvider},"get")});var U4=Nh();Object.defineProperty(Ro,"isNormalToken",{enumerable:!0,get:o(function(){return U4.isNormalToken},"get")});var q4=g_();Object.defineProperty(Ro,"isTokenProvider",{enumerable:!0,get:o(function(){return q4.isTokenProvider},"get")});var W4=y_();Object.defineProperty(Ro,"isValueProvider",{enumerable:!0,get:o(function(){return W4.isValueProvider},"get")})});var gA=S(Mh=>{"use strict";Object.defineProperty(Mh,"__esModule",{value:!0});Mh.isProvider=void 0;var G4=p_(),z4=y_(),H4=g_(),Q4=m_();function K4(n){return G4.isClassProvider(n)||z4.isValueProvider(n)||H4.isTokenProvider(n)||Q4.isFactoryProvider(n)}o(K4,"isProvider");Mh.isProvider=K4});var b_=S(v_=>{"use strict";Object.defineProperty(v_,"__esModule",{value:!0});var S_=class{static{o(this,"RegistryBase")}constructor(){this._registryMap=new Map}entries(){return this._registryMap.entries()}getAll(e){return this.ensure(e),this._registryMap.get(e)}get(e){this.ensure(e);let t=this._registryMap.get(e);return t[t.length-1]||null}set(e,t){this.ensure(e),this._registryMap.get(e).push(t)}setAll(e,t){this._registryMap.set(e,t)}has(e){return this.ensure(e),this._registryMap.get(e).length>0}clear(){this._registryMap.clear()}ensure(e){this._registryMap.has(e)||this._registryMap.set(e,[])}};v_.default=S_});var yA=S(E_=>{"use strict";Object.defineProperty(E_,"__esModule",{value:!0});var Y4=b_(),w_=class extends Y4.default{static{o(this,"Registry")}};E_.default=w_});var _A=S(A_=>{"use strict";Object.defineProperty(A_,"__esModule",{value:!0});var T_=class{static{o(this,"ResolutionContext")}constructor(){this.scopedResolutions=new Map}};A_.default=T_});var x_=S(jh=>{"use strict";Object.defineProperty(jh,"__esModule",{value:!0});jh.formatErrorCtor=void 0;function X4(n,e){return n===null?`at position #${e}`:`"${n.split(",")[e].trim()}" at position #${e}`}o(X4,"formatDependency");function J4(n,e,t=" "){return[n,...e.message.split(`
32
32
  `).map(r=>t+r)].join(`
33
- `)}o(J4,"composeErrorMessage");function Z4(n,e,t){let[,r=null]=n.toString().match(/constructor\(([\w, ]+)\)/)||[],i=X4(r,e);return J4(`Cannot inject the dependency ${i} of "${n.name}" constructor. Reason:`,t)}o(Z4,"formatErrorCtor");jh.formatErrorCtor=Z4});var SA=S($h=>{"use strict";Object.defineProperty($h,"__esModule",{value:!0});$h.isDisposable=void 0;function ej(n){return!(typeof n.dispose!="function"||n.dispose.length>0)}o(ej,"isDisposable");$h.isDisposable=ej});var bA=S(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});Po.PostResolutionInterceptors=Po.PreResolutionInterceptors=void 0;var vA=b_(),Bh=class extends vA.default{static{o(this,"PreResolutionInterceptors")}};Po.PreResolutionInterceptors=Bh;var Vh=class extends vA.default{static{o(this,"PostResolutionInterceptors")}};Po.PostResolutionInterceptors=Vh;var C_=class{static{o(this,"Interceptors")}constructor(){this.preResolution=new Bh,this.postResolution=new Vh}};Po.default=C_});var Pa=S(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.instance=Qs.typeInfo=void 0;var tj=(Rh(),Yd(Ih)),fn=__(),rj=gA(),Uh=Nh(),nj=yA(),xn=d_(),qh=_A(),ij=x_(),sj=Dh(),aj=SA(),oj=bA();Qs.typeInfo=new Map;var I_=class n{static{o(this,"InternalDependencyContainer")}constructor(e){this.parent=e,this._registry=new nj.default,this.interceptors=new oj.default,this.disposed=!1,this.disposables=new Set}register(e,t,r={lifecycle:xn.default.Transient}){this.ensureNotDisposed();let i;if(rj.isProvider(t)?i=t:i={useClass:t},fn.isTokenProvider(i)){let s=[e],a=i;for(;a!=null;){let c=a.useToken;if(s.includes(c))throw new Error(`Token registration cycle detected! ${[...s,c].join(" -> ")}`);s.push(c);let l=this._registry.get(c);l&&fn.isTokenProvider(l.provider)?a=l.provider:a=null}}if((r.lifecycle===xn.default.Singleton||r.lifecycle==xn.default.ContainerScoped||r.lifecycle==xn.default.ResolutionScoped)&&(fn.isValueProvider(i)||fn.isFactoryProvider(i)))throw new Error(`Cannot use lifecycle "${xn.default[r.lifecycle]}" with ValueProviders or FactoryProviders`);return this._registry.set(e,{provider:i,options:r}),this}registerType(e,t){return this.ensureNotDisposed(),fn.isNormalToken(t)?this.register(e,{useToken:t}):this.register(e,{useClass:t})}registerInstance(e,t){return this.ensureNotDisposed(),this.register(e,{useValue:t})}registerSingleton(e,t){if(this.ensureNotDisposed(),fn.isNormalToken(e)){if(fn.isNormalToken(t))return this.register(e,{useToken:t},{lifecycle:xn.default.Singleton});if(t)return this.register(e,{useClass:t},{lifecycle:xn.default.Singleton});throw new Error('Cannot register a type name as a singleton without a "to" token')}let r=e;return t&&!fn.isNormalToken(t)&&(r=t),this.register(e,{useClass:r},{lifecycle:xn.default.Singleton})}resolve(e,t=new qh.default,r=!1){this.ensureNotDisposed();let i=this.getRegistration(e);if(!i&&fn.isNormalToken(e)){if(r)return;throw new Error(`Attempted to resolve unregistered dependency token: "${e.toString()}"`)}if(this.executePreResolutionInterceptor(e,"Single"),i){let s=this.resolveRegistration(i,t);return this.executePostResolutionInterceptor(e,s,"Single"),s}if(Uh.isConstructorToken(e)){let s=this.construct(e,t);return this.executePostResolutionInterceptor(e,s,"Single"),s}throw new Error("Attempted to construct an undefined constructor. Could mean a circular dependency problem. Try using `delay` function.")}executePreResolutionInterceptor(e,t){if(this.interceptors.preResolution.has(e)){let r=[];for(let i of this.interceptors.preResolution.getAll(e))i.options.frequency!="Once"&&r.push(i),i.callback(e,t);this.interceptors.preResolution.setAll(e,r)}}executePostResolutionInterceptor(e,t,r){if(this.interceptors.postResolution.has(e)){let i=[];for(let s of this.interceptors.postResolution.getAll(e))s.options.frequency!="Once"&&i.push(s),s.callback(e,t,r);this.interceptors.postResolution.setAll(e,i)}}resolveRegistration(e,t){if(this.ensureNotDisposed(),e.options.lifecycle===xn.default.ResolutionScoped&&t.scopedResolutions.has(e))return t.scopedResolutions.get(e);let r=e.options.lifecycle===xn.default.Singleton,i=e.options.lifecycle===xn.default.ContainerScoped,s=r||i,a;return fn.isValueProvider(e.provider)?a=e.provider.useValue:fn.isTokenProvider(e.provider)?a=s?e.instance||(e.instance=this.resolve(e.provider.useToken,t)):this.resolve(e.provider.useToken,t):fn.isClassProvider(e.provider)?a=s?e.instance||(e.instance=this.construct(e.provider.useClass,t)):this.construct(e.provider.useClass,t):fn.isFactoryProvider(e.provider)?a=e.provider.useFactory(this):a=this.construct(e.provider,t),e.options.lifecycle===xn.default.ResolutionScoped&&t.scopedResolutions.set(e,a),a}resolveAll(e,t=new qh.default,r=!1){this.ensureNotDisposed();let i=this.getAllRegistrations(e);if(!i&&fn.isNormalToken(e)){if(r)return[];throw new Error(`Attempted to resolve unregistered dependency token: "${e.toString()}"`)}if(this.executePreResolutionInterceptor(e,"All"),i){let a=i.map(c=>this.resolveRegistration(c,t));return this.executePostResolutionInterceptor(e,a,"All"),a}let s=[this.construct(e,t)];return this.executePostResolutionInterceptor(e,s,"All"),s}isRegistered(e,t=!1){return this.ensureNotDisposed(),this._registry.has(e)||t&&(this.parent||!1)&&this.parent.isRegistered(e,!0)}reset(){this.ensureNotDisposed(),this._registry.clear(),this.interceptors.preResolution.clear(),this.interceptors.postResolution.clear()}clearInstances(){this.ensureNotDisposed();for(let[e,t]of this._registry.entries())this._registry.setAll(e,t.filter(r=>!fn.isValueProvider(r.provider)).map(r=>(r.instance=void 0,r)))}createChildContainer(){this.ensureNotDisposed();let e=new n(this);for(let[t,r]of this._registry.entries())r.some(({options:i})=>i.lifecycle===xn.default.ContainerScoped)&&e._registry.setAll(t,r.map(i=>i.options.lifecycle===xn.default.ContainerScoped?{provider:i.provider,options:i.options}:i));return e}beforeResolution(e,t,r={frequency:"Always"}){this.interceptors.preResolution.set(e,{callback:t,options:r})}afterResolution(e,t,r={frequency:"Always"}){this.interceptors.postResolution.set(e,{callback:t,options:r})}dispose(){return tj.__awaiter(this,void 0,void 0,function*(){this.disposed=!0;let e=[];this.disposables.forEach(t=>{let r=t.dispose();r&&e.push(r)}),yield Promise.all(e)})}getRegistration(e){return this.isRegistered(e)?this._registry.get(e):this.parent?this.parent.getRegistration(e):null}getAllRegistrations(e){return this.isRegistered(e)?this._registry.getAll(e):this.parent?this.parent.getAllRegistrations(e):null}construct(e,t){if(e instanceof sj.DelayedConstructor)return e.createProxy(i=>this.resolve(i,t));let r=(()=>{let i=Qs.typeInfo.get(e);if(!i||i.length===0){if(e.length===0)return new e;throw new Error(`TypeInfo not known for "${e.name}"`)}let s=i.map(this.resolveParams(t,e));return new e(...s)})();return aj.isDisposable(r)&&this.disposables.add(r),r}resolveParams(e,t){return(r,i)=>{try{return Uh.isTokenDescriptor(r)?Uh.isTransformDescriptor(r)?r.multiple?this.resolve(r.transform).transform(this.resolveAll(r.token,new qh.default,r.isOptional),...r.transformArgs):this.resolve(r.transform).transform(this.resolve(r.token,e,r.isOptional),...r.transformArgs):r.multiple?this.resolveAll(r.token,new qh.default,r.isOptional):this.resolve(r.token,e,r.isOptional):Uh.isTransformDescriptor(r)?this.resolve(r.transform,e).transform(this.resolve(r.token,e),...r.transformArgs):this.resolve(r,e)}catch(s){throw new Error(ij.formatErrorCtor(t,i,s))}}}ensureNotDisposed(){if(this.disposed)throw new Error("This container has been disposed, you cannot interact with a disposed container")}};Qs.instance=new I_;Qs.default=Qs.instance});var wA=S(P_=>{"use strict";Object.defineProperty(P_,"__esModule",{value:!0});var cj=Io(),Ks=Pa(),R_=Nh(),lj=x_();function uj(){return function(n){let e=cj.getParamInfo(n);return class extends n{constructor(...t){super(...t.concat(e.slice(t.length).map((r,i)=>{try{return R_.isTokenDescriptor(r)?R_.isTransformDescriptor(r)?r.multiple?Ks.instance.resolve(r.transform).transform(Ks.instance.resolveAll(r.token),...r.transformArgs):Ks.instance.resolve(r.transform).transform(Ks.instance.resolve(r.token),...r.transformArgs):r.multiple?Ks.instance.resolveAll(r.token):Ks.instance.resolve(r.token):R_.isTransformDescriptor(r)?Ks.instance.resolve(r.transform).transform(Ks.instance.resolve(r.token),...r.transformArgs):Ks.instance.resolve(r)}catch(s){let a=i+t.length;throw new Error(lj.formatErrorCtor(n,a,s))}})))}}}}o(uj,"autoInjectable");P_.default=uj});var EA=S(O_=>{"use strict";Object.defineProperty(O_,"__esModule",{value:!0});var fj=Io();function dj(n,e){let t={token:n,multiple:!1,isOptional:e&&e.isOptional};return fj.defineInjectionTokenMetadata(t)}o(dj,"inject");O_.default=dj});var Wh=S(F_=>{"use strict";Object.defineProperty(F_,"__esModule",{value:!0});var hj=Io(),pj=Pa(),TA=Pa();function mj(n){return function(e){pj.typeInfo.set(e,hj.getParamInfo(e)),n&&n.token&&(Array.isArray(n.token)?n.token.forEach(t=>{TA.instance.register(t,e)}):TA.instance.register(n.token,e))}}o(mj,"injectable");F_.default=mj});var AA=S(D_=>{"use strict";Object.defineProperty(D_,"__esModule",{value:!0});var gj=(Rh(),Yd(Ih)),yj=Pa();function _j(n=[]){return function(e){return n.forEach(t=>{var{token:r,options:i}=t,s=gj.__rest(t,["token","options"]);return yj.instance.register(r,s,i)}),e}}o(_j,"registry");D_.default=_j});var xA=S(N_=>{"use strict";Object.defineProperty(N_,"__esModule",{value:!0});var Sj=Wh(),vj=Pa();function bj(){return function(n){Sj.default()(n),vj.instance.registerSingleton(n)}}o(bj,"singleton");N_.default=bj});var CA=S(L_=>{"use strict";Object.defineProperty(L_,"__esModule",{value:!0});var wj=Io();function Ej(n,e){let t={token:n,multiple:!0,isOptional:e&&e.isOptional};return wj.defineInjectionTokenMetadata(t)}o(Ej,"injectAll");L_.default=Ej});var IA=S(k_=>{"use strict";Object.defineProperty(k_,"__esModule",{value:!0});var Tj=Io();function Aj(n,e,...t){let r={token:n,multiple:!0,transform:e,transformArgs:t};return Tj.defineInjectionTokenMetadata(r)}o(Aj,"injectAllWithTransform");k_.default=Aj});var RA=S(M_=>{"use strict";Object.defineProperty(M_,"__esModule",{value:!0});var xj=Io();function Cj(n,e,...t){return xj.defineInjectionTokenMetadata(n,{transformToken:e,args:t})}o(Cj,"injectWithTransform");M_.default=Cj});var PA=S(j_=>{"use strict";Object.defineProperty(j_,"__esModule",{value:!0});var Ij=Wh(),Rj=Pa();function Pj(n,e){return function(t){Ij.default()(t),Rj.instance.register(e||t,t,{lifecycle:n})}}o(Pj,"scoped");j_.default=Pj});var OA=S(hi=>{"use strict";Object.defineProperty(hi,"__esModule",{value:!0});var Oj=wA();Object.defineProperty(hi,"autoInjectable",{enumerable:!0,get:o(function(){return Oj.default},"get")});var Fj=EA();Object.defineProperty(hi,"inject",{enumerable:!0,get:o(function(){return Fj.default},"get")});var Dj=Wh();Object.defineProperty(hi,"injectable",{enumerable:!0,get:o(function(){return Dj.default},"get")});var Nj=AA();Object.defineProperty(hi,"registry",{enumerable:!0,get:o(function(){return Nj.default},"get")});var Lj=xA();Object.defineProperty(hi,"singleton",{enumerable:!0,get:o(function(){return Lj.default},"get")});var kj=CA();Object.defineProperty(hi,"injectAll",{enumerable:!0,get:o(function(){return kj.default},"get")});var Mj=IA();Object.defineProperty(hi,"injectAllWithTransform",{enumerable:!0,get:o(function(){return Mj.default},"get")});var jj=RA();Object.defineProperty(hi,"injectWithTransform",{enumerable:!0,get:o(function(){return jj.default},"get")});var $j=PA();Object.defineProperty(hi,"scoped",{enumerable:!0,get:o(function(){return $j.default},"get")})});var FA=S($_=>{"use strict";Object.defineProperty($_,"__esModule",{value:!0});function Bj(n){let e;return t=>(e==null&&(e=n(t)),e)}o(Bj,"instanceCachingFactory");$_.default=Bj});var DA=S(B_=>{"use strict";Object.defineProperty(B_,"__esModule",{value:!0});function Vj(n){let e=new WeakMap;return t=>{let r=e.get(t);return r==null&&(r=n(t),e.set(t,r)),r}}o(Vj,"instancePerContainerCachingFactory");B_.default=Vj});var NA=S(V_=>{"use strict";Object.defineProperty(V_,"__esModule",{value:!0});function Uj(n,e,t,r=!0){let i,s;return a=>{let c=n(a);return(!r||s!==c)&&((s=c)?i=a.resolve(e):i=a.resolve(t)),i}}o(Uj,"predicateAwareClassFactory");V_.default=Uj});var LA=S(Qu=>{"use strict";Object.defineProperty(Qu,"__esModule",{value:!0});var qj=FA();Object.defineProperty(Qu,"instanceCachingFactory",{enumerable:!0,get:o(function(){return qj.default},"get")});var Wj=DA();Object.defineProperty(Qu,"instancePerContainerCachingFactory",{enumerable:!0,get:o(function(){return Wj.default},"get")});var Gj=NA();Object.defineProperty(Qu,"predicateAwareClassFactory",{enumerable:!0,get:o(function(){return Gj.default},"get")})});var fe=S(Oa=>{"use strict";Object.defineProperty(Oa,"__esModule",{value:!0});var U_=(Rh(),Yd(Ih));if(typeof Reflect>"u"||!Reflect.getMetadata)throw new Error(`tsyringe requires a reflect polyfill. Please add 'import "reflect-metadata"' to the top of your entry point.`);var zj=mA();Object.defineProperty(Oa,"Lifecycle",{enumerable:!0,get:o(function(){return zj.Lifecycle},"get")});U_.__exportStar(OA(),Oa);U_.__exportStar(LA(),Oa);U_.__exportStar(__(),Oa);var Hj=Dh();Object.defineProperty(Oa,"delay",{enumerable:!0,get:o(function(){return Hj.delay},"get")});var Qj=Pa();Object.defineProperty(Oa,"container",{enumerable:!0,get:o(function(){return Qj.instance},"get")})});var Pc=S(Gh=>{"use strict";Object.defineProperty(Gh,"__esModule",{value:!0});Gh.NullLogger=void 0;Gh.NullLogger={debug(){},info(){},warn(){},error(){}}});var q_=S((lre,kA)=>{var Oc=class{static{o(this,"Wildcard")}constructor(){return Kj||this}equals(e){return e&&this.termType===e.termType}};Object.defineProperty(Oc.prototype,"value",{enumerable:!0,value:"*"});Object.defineProperty(Oc.prototype,"termType",{enumerable:!0,value:"Wildcard"});var Kj=new Oc;kA.exports.Wildcard=Oc});var jA=S((fre,MA)=>{var Yj=(function(){var n=o(function(R,C,P,N){for(P=P||{},N=R.length;N--;P[R[N]]=C);return P},"o"),e=[6,12,13,15,16,24,32,36,41,45,100,110,113,115,116,123,126,131,197,224,229,308,329,330,331,332,333],t=[2,247],r=[100,110,113,115,116,123,126,131,329,330,331,332,333],i=[2,409],s=[1,18],a=[1,27],c=[13,16,45,197,224,229,308],l=[28,29,53],u=[28,53],f=[1,42],d=[1,45],h=[1,41],p=[1,44],y=[123,126],v=[1,67],w=[39,45,87],b=[13,16,45,197,224,308],A=[1,87],I=[2,281],j=[1,86],V=[13,16,45,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],te=[6,28,29,53,63,70,73,81,83,85],z=[6,13,16,28,29,53,63,70,73,81,83,85,87,308],G=[6,13,16,28,29,45,53,63,70,73,81,82,83,85,87,89,197,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314],F=[6,13,16,28,29,31,39,45,47,48,53,63,70,73,81,82,83,85,87,89,109,112,121,123,126,128,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,337,338,340,341,342,343,344,345,346],$=[13,16,308],re=[112,132,327,334],Ye=[13,16,112,132,308],at=[1,111],Ot=[1,117],ot=[112,132,327,328,334],lt=[13,16,112,132,308,328],Xe=[28,29,45,53,87],se=[1,138],U=[1,151],ut=[1,128],pt=[1,127],H=[1,129],Re=[1,140],qe=[1,141],ne=[1,142],We=[1,143],Ge=[1,144],Be=[1,145],ze=[1,147],Ce=[1,148],Ve=[2,457],Pe=[1,158],Ue=[1,159],He=[1,160],de=[1,152],ge=[1,153],ye=[1,156],he=[1,171],pe=[1,172],me=[1,173],ue=[1,174],_e=[1,175],Se=[1,176],ve=[1,167],be=[1,168],ce=[1,169],we=[1,170],et=[1,157],Qe=[1,166],$e=[1,161],E=[1,162],T=[1,163],x=[1,164],O=[1,165],Z=[6,13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335],_t=[1,195],Ct=[6,31,73,81,83,85],De=[2,285],q=[1,199],W=[1,201],Q=[6,31,70,73,81,83,85],Y=[2,283],Ie=[1,207],rt=[1,218],nt=[1,223],Rr=[1,219],bn=[1,225],kn=[1,226],sn=[1,224],u2=[6,63,70,73,81,83,85],f2=[1,236],d2=[2,334],h2=[1,243],p2=[1,241],Pr=[6,193],Id=[2,349],m2=[2,339],Ea=[28,128],g2=[47,48,193,272],Rd=[47,48,193,242,272],dc=[47,48,193,242,246,272],hc=[47,48,193,242,246,250,263,265,272,290,297,298,299,300,301,302,341,342,343,344,345,346],gr=[39,47,48,193,242,246,250,263,265,272,290,297,298,299,300,301,302,338,341,342,343,344,345,346],y2=[1,271],_2=[1,270],Xt=[6,13,16,29,31,39,45,47,48,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,338,341,342,343,344,345,346,347,348,349,350,351],S2=[1,281],v2=[1,280],an=[13,16,29,31,39,45,47,48,82,85,87,89,112,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346],vu=[45,89],Pd=[13,16,29,31,39,45,47,48,82,85,87,89,112,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346],Od=[13,16,31,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],Fd=[31,89],Dd=[48,87],uo=[6,13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337,338],es=[6,13,16,39,45,48,82,87,89,231,263,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337,338,340],b2=[1,313],pc=[6,85],Fy=[6,31,81,83,85],w2=[2,361],Ls=[2,353],fo=[1,343],bu=[31,112,335],ks=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],Dy=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335],E2=[6,109,193],ho=[31,112],Jt=[13,16,45,82,87,224,263,265,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312,346,347,348,349,350,351],Ny=[1,390],Ly=[1,391],Ta=[13,16,87,197,308,314],T2=[13,16,39,45,82,87,224,263,265,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312,346,347,348,349,350,351],Nd=[1,417],Ld=[1,418],A2=[13,16,48,197,229,308],Aa=[6,31,85],x2=[6,13,16,31,45,73,81,83,85,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],ky=[6,13,16,29,31,45,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,231,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,346,347,348,349,350,351],po=[29,31,85,112,159,160,161,163,164],kd=[1,443],Md=[1,444],C2=[1,449],mo=[31,112,193,232,318,335],jd=[13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],I2=[13,16,31,45,48,82,87,89,112,193,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],My=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],wu=[13,16,31,48,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],Eu=[31,45],R2=[1,507],P2=[1,508],O2=[6,13,16,29,31,39,45,47,48,63,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,336,338,341,342,343,344,345,346,347,348,349,350,351],$d=[29,31,85,112,159,160,161,163,164,335],go=[6,13,16,31,45,70,73,81,83,85,87,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],F2=[13,16,31,45,48,82,87,89,112,193,197,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],D2=[2,352],jy=[13,16,197,308,314],N2=[1,565],mc=[6,13,16,31,45,76,78,81,83,85,87,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],L2=[13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],Ms=[13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335],k2=[13,16,87,308],js=[2,364],gc=[29,31,85,112,159,160,161,163,164,193,232,318,335],Bd=[31,112,193,232,272,318,335],$s=[2,359],M2=[13,16,48,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],Vd=[29,31,85,112,159,160,161,163,164,193,232,272,318,335],j2=[13,16,31,45,82,87,89,112,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],$2=[2,347],$y={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,QueryOrUpdate:3,Prologue:4,QueryOrUpdate_group0:5,EOF:6,Query:7,Qry:8,Query_option0:9,Prologue_repetition0:10,BaseDecl:11,BASE:12,IRIREF:13,PrefixDecl:14,PREFIX:15,PNAME_NS:16,SelectClauseWildcard:17,Qry_repetition0:18,WhereClause:19,SolutionModifierNoGroup:20,SelectClauseVars:21,Qry_repetition1:22,SolutionModifier:23,CONSTRUCT:24,ConstructTemplate:25,Qry_repetition2:26,Qry_repetition3:27,WHERE:28,"{":29,Qry_option0:30,"}":31,DESCRIBE:32,Qry_group0:33,Qry_repetition4:34,Qry_option1:35,ASK:36,Qry_repetition5:37,SelectClauseBase:38,"*":39,SelectClauseVars_repetition_plus0:40,SELECT:41,SelectClauseBase_option0:42,SelectClauseItem:43,Var:44,"(":45,Expression:46,AS:47,")":48,SubSelect:49,SubSelect_option0:50,SubSelect_option1:51,DatasetClause:52,FROM:53,DatasetClause_option0:54,iri:55,WhereClause_option0:56,GroupGraphPattern:57,SolutionModifier_option0:58,SolutionModifierNoGroup_option0:59,SolutionModifierNoGroup_option1:60,SolutionModifierNoGroup_option2:61,GroupClause:62,GROUP:63,BY:64,GroupClause_repetition_plus0:65,GroupCondition:66,BuiltInCall:67,FunctionCall:68,HavingClause:69,HAVING:70,HavingClause_repetition_plus0:71,OrderClause:72,ORDER:73,OrderClause_repetition_plus0:74,OrderCondition:75,ASC:76,BrackettedExpression:77,DESC:78,Constraint:79,LimitOffsetClauses:80,LIMIT:81,INTEGER:82,OFFSET:83,ValuesClause:84,VALUES:85,InlineData:86,VAR:87,InlineData_repetition0:88,NIL:89,InlineData_repetition1:90,InlineData_repetition_plus2:91,InlineData_repetition3:92,DataBlock:93,DataBlockValueList:94,DataBlockValueList_repetition_plus0:95,Update:96,Update_repetition0:97,Update1:98,Update_option0:99,LOAD:100,Update1_option0:101,Update1_option1:102,Update1_group0:103,Update1_option2:104,GraphRefAll:105,Update1_group1:106,Update1_option3:107,GraphOrDefault:108,TO:109,CREATE:110,Update1_option4:111,GRAPH:112,INSERTDATA:113,QuadPattern:114,DELETEDATA:115,DELETEWHERE:116,Update1_option5:117,InsertDeleteClause:118,Update1_repetition0:119,IntoGraphClause:120,INTO:121,GraphRef:122,DELETE:123,InsertDeleteClause_option0:124,InsertClause:125,INSERT:126,UsingClause:127,USING:128,UsingClause_option0:129,WithClause:130,WITH:131,DEFAULT:132,GraphOrDefault_option0:133,GraphRefAll_group0:134,Quads:135,Quads_option0:136,Quads_repetition0:137,QuadsNotTriples:138,VarOrIri:139,QuadsNotTriples_option0:140,QuadsNotTriples_option1:141,QuadsNotTriples_option2:142,TriplesTemplate:143,TriplesTemplate_repetition0:144,TriplesSameSubject:145,TriplesTemplate_option0:146,GroupGraphPatternSub:147,GroupGraphPatternSub_option0:148,GroupGraphPatternSub_repetition0:149,GroupGraphPatternSubTail:150,GraphPatternNotTriples:151,GroupGraphPatternSubTail_option0:152,GroupGraphPatternSubTail_option1:153,TriplesBlock:154,TriplesBlock_repetition0:155,TriplesSameSubjectPath:156,TriplesBlock_option0:157,GroupOrUnionGraphPattern:158,OPTIONAL:159,MINUS:160,SERVICE:161,GraphPatternNotTriples_option0:162,FILTER:163,BIND:164,InlineDataOneVar:165,InlineDataFull:166,InlineDataOneVar_repetition0:167,InlineDataFull_repetition0:168,InlineDataFull_repetition_plus1:169,InlineDataFull_repetition2:170,DataBlockValue:171,Literal:172,QuotedTriple:173,UNDEF:174,GroupOrUnionGraphPattern_repetition0:175,ArgList:176,ArgList_option0:177,ArgList_repetition0:178,ExpressionList:179,ExpressionList_repetition0:180,ConstructTemplate_option0:181,ConstructTriples:182,ConstructTriples_repetition0:183,ConstructTriples_option0:184,VarOrTermOrQuotedTP:185,PropertyListNotEmpty:186,TriplesNode:187,PropertyList:188,PropertyList_option0:189,VerbObjectList:190,PropertyListNotEmpty_repetition0:191,SemiOptionalVerbObjectList:192,";":193,SemiOptionalVerbObjectList_option0:194,Verb:195,ObjectList:196,a:197,ObjectList_repetition0:198,Object:199,GraphNode:200,Object_option0:201,PropertyListPathNotEmpty:202,TriplesNodePath:203,TriplesSameSubjectPath_option0:204,O:205,PropertyListPathNotEmpty_repetition0:206,PropertyListPathNotEmptyTail:207,O_group0:208,ObjectListPath:209,ObjectListPath_repetition0:210,ObjectPath:211,GraphNodePath:212,ObjectPath_option0:213,Path:214,Path_repetition0:215,PathSequence:216,PathSequence_repetition0:217,PathEltOrInverse:218,PathElt:219,PathPrimary:220,PathElt_option0:221,PathEltOrInverse_option0:222,IriOrA:223,"!":224,PathNegatedPropertySet:225,PathOneInPropertySet:226,PathNegatedPropertySet_repetition0:227,PathNegatedPropertySet_option0:228,"^":229,TriplesNode_repetition_plus0:230,"[":231,"]":232,TriplesNodePath_repetition_plus0:233,VarOrTermOrQuotedTPExpr:234,VarOrTerm:235,GraphTerm:236,BlankNode:237,ConditionalOrExpression:238,ConditionalAndExpression:239,ConditionalOrExpression_repetition0:240,ConditionalOrExpressionTail:241,"||":242,RelationalExpression:243,ConditionalAndExpression_repetition0:244,ConditionalAndExpressionTail:245,"&&":246,NumericExpression:247,RelationalExpression_group0:248,RelationalExpression_option0:249,IN:250,MultiplicativeExpression:251,NumericExpression_repetition0:252,AdditiveExpressionTail:253,AdditiveExpressionTail_group0:254,NumericLiteralPositive:255,AdditiveExpressionTail_repetition0:256,NumericLiteralNegative:257,AdditiveExpressionTail_repetition1:258,UnaryExpression:259,MultiplicativeExpression_repetition0:260,MultiplicativeExpressionTail:261,MultiplicativeExpressionTail_group0:262,"+":263,PrimaryExpression:264,"-":265,ExprQuotedTP:266,Aggregate:267,FUNC_ARITY0:268,FUNC_ARITY1:269,FUNC_ARITY1_SPARQL_STAR:270,FUNC_ARITY2:271,",":272,FUNC_ARITY3:273,FUNC_ARITY3_SPARQL_STAR:274,BuiltInCall_group0:275,BOUND:276,BNODE:277,BuiltInCall_option0:278,EXISTS:279,COUNT:280,Aggregate_option0:281,Aggregate_group0:282,FUNC_AGGREGATE:283,Aggregate_option1:284,GROUP_CONCAT:285,Aggregate_option2:286,Aggregate_option3:287,GroupConcatSeparator:288,SEPARATOR:289,"=":290,String:291,LANGTAG:292,"^^":293,DECIMAL:294,DOUBLE:295,BOOLEAN:296,INTEGER_POSITIVE:297,DECIMAL_POSITIVE:298,DOUBLE_POSITIVE:299,INTEGER_NEGATIVE:300,DECIMAL_NEGATIVE:301,DOUBLE_NEGATIVE:302,STRING_LITERAL1:303,STRING_LITERAL2:304,STRING_LITERAL_LONG1:305,STRING_LITERAL_LONG2:306,PrefixedName:307,PNAME_LN:308,BLANK_NODE_LABEL:309,ANON:310,QuotedTP:311,"<<":312,qtSubjectOrObject:313,">>":314,DataValueTerm:315,AnnotationPattern:316,"{|":317,"|}":318,AnnotationPatternPath:319,ExprVarOrTerm:320,QueryOrUpdate_group0_option0:321,Prologue_repetition0_group0:322,Qry_group0_repetition_plus0:323,SelectClauseBase_option0_group0:324,DISTINCT:325,REDUCED:326,NAMED:327,SILENT:328,CLEAR:329,DROP:330,ADD:331,MOVE:332,COPY:333,ALL:334,".":335,UNION:336,"|":337,"/":338,PathElt_option0_group0:339,"?":340,"!=":341,"<":342,">":343,"<=":344,">=":345,NOT:346,CONCAT:347,COALESCE:348,SUBSTR:349,REGEX:350,REPLACE:351,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",12:"BASE",13:"IRIREF",15:"PREFIX",16:"PNAME_NS",24:"CONSTRUCT",28:"WHERE",29:"{",31:"}",32:"DESCRIBE",36:"ASK",39:"*",41:"SELECT",45:"(",47:"AS",48:")",53:"FROM",63:"GROUP",64:"BY",70:"HAVING",73:"ORDER",76:"ASC",78:"DESC",81:"LIMIT",82:"INTEGER",83:"OFFSET",85:"VALUES",87:"VAR",89:"NIL",100:"LOAD",109:"TO",110:"CREATE",112:"GRAPH",113:"INSERTDATA",115:"DELETEDATA",116:"DELETEWHERE",121:"INTO",123:"DELETE",126:"INSERT",128:"USING",131:"WITH",132:"DEFAULT",159:"OPTIONAL",160:"MINUS",161:"SERVICE",163:"FILTER",164:"BIND",174:"UNDEF",193:";",197:"a",224:"!",229:"^",231:"[",232:"]",242:"||",246:"&&",250:"IN",263:"+",265:"-",268:"FUNC_ARITY0",269:"FUNC_ARITY1",270:"FUNC_ARITY1_SPARQL_STAR",271:"FUNC_ARITY2",272:",",273:"FUNC_ARITY3",274:"FUNC_ARITY3_SPARQL_STAR",276:"BOUND",277:"BNODE",279:"EXISTS",280:"COUNT",283:"FUNC_AGGREGATE",285:"GROUP_CONCAT",289:"SEPARATOR",290:"=",292:"LANGTAG",293:"^^",294:"DECIMAL",295:"DOUBLE",296:"BOOLEAN",297:"INTEGER_POSITIVE",298:"DECIMAL_POSITIVE",299:"DOUBLE_POSITIVE",300:"INTEGER_NEGATIVE",301:"DECIMAL_NEGATIVE",302:"DOUBLE_NEGATIVE",303:"STRING_LITERAL1",304:"STRING_LITERAL2",305:"STRING_LITERAL_LONG1",306:"STRING_LITERAL_LONG2",308:"PNAME_LN",309:"BLANK_NODE_LABEL",310:"ANON",312:"<<",314:">>",317:"{|",318:"|}",325:"DISTINCT",326:"REDUCED",327:"NAMED",328:"SILENT",329:"CLEAR",330:"DROP",331:"ADD",332:"MOVE",333:"COPY",334:"ALL",335:".",336:"UNION",337:"|",338:"/",340:"?",341:"!=",342:"<",343:">",344:"<=",345:">=",346:"NOT",347:"CONCAT",348:"COALESCE",349:"SUBSTR",350:"REGEX",351:"REPLACE"},productions_:[0,[3,3],[7,2],[4,1],[11,2],[14,3],[8,4],[8,4],[8,5],[8,7],[8,5],[8,4],[17,2],[21,2],[38,2],[43,1],[43,5],[49,4],[49,4],[52,3],[19,2],[23,2],[20,3],[62,3],[66,1],[66,1],[66,3],[66,5],[66,1],[69,2],[72,3],[75,2],[75,2],[75,1],[75,1],[80,2],[80,2],[80,4],[80,4],[84,2],[86,4],[86,4],[86,6],[86,2],[94,3],[96,3],[98,4],[98,3],[98,5],[98,4],[98,2],[98,2],[98,2],[98,5],[120,2],[118,3],[118,1],[125,2],[127,3],[130,2],[108,1],[108,2],[122,2],[105,1],[105,1],[114,3],[135,2],[138,7],[143,3],[57,3],[57,3],[147,2],[150,3],[154,3],[151,1],[151,2],[151,2],[151,3],[151,4],[151,2],[151,6],[151,1],[93,1],[93,1],[165,4],[166,4],[166,6],[171,1],[171,1],[171,1],[171,1],[158,2],[79,1],[79,1],[79,1],[68,2],[176,1],[176,5],[179,1],[179,4],[25,3],[182,3],[145,2],[145,2],[188,1],[186,2],[192,2],[190,2],[195,1],[195,1],[196,2],[199,2],[156,2],[156,2],[202,2],[207,1],[207,2],[205,2],[209,2],[211,2],[214,2],[216,2],[219,2],[218,2],[220,1],[220,2],[220,3],[225,1],[225,1],[225,4],[226,1],[226,2],[187,3],[187,3],[203,3],[203,3],[200,1],[200,1],[212,1],[212,1],[234,1],[235,1],[235,1],[139,1],[139,1],[44,1],[236,1],[236,1],[236,1],[236,1],[46,1],[238,2],[241,2],[239,2],[245,2],[243,1],[243,3],[243,4],[247,2],[253,2],[253,2],[253,2],[251,2],[261,2],[259,2],[259,2],[259,2],[259,1],[264,1],[264,1],[264,1],[264,1],[264,1],[264,1],[264,1],[77,3],[67,1],[67,2],[67,4],[67,4],[67,6],[67,8],[67,8],[67,2],[67,4],[67,2],[67,4],[67,3],[267,5],[267,5],[267,6],[288,4],[172,1],[172,2],[172,3],[172,1],[172,1],[172,1],[172,1],[172,1],[172,1],[255,1],[255,1],[255,1],[257,1],[257,1],[257,1],[291,1],[291,1],[291,1],[291,1],[55,1],[55,1],[307,1],[307,1],[237,1],[237,1],[311,5],[173,5],[313,1],[313,1],[313,1],[313,1],[313,1],[315,1],[315,1],[315,1],[185,1],[185,1],[185,1],[316,3],[319,3],[266,5],[320,1],[320,1],[320,1],[223,1],[223,1],[321,0],[321,1],[5,1],[5,1],[5,1],[9,0],[9,1],[322,1],[322,1],[10,0],[10,2],[18,0],[18,2],[22,0],[22,2],[26,0],[26,2],[27,0],[27,2],[30,0],[30,1],[323,1],[323,2],[33,1],[33,1],[34,0],[34,2],[35,0],[35,1],[37,0],[37,2],[40,1],[40,2],[324,1],[324,1],[42,0],[42,1],[50,0],[50,1],[51,0],[51,1],[54,0],[54,1],[56,0],[56,1],[58,0],[58,1],[59,0],[59,1],[60,0],[60,1],[61,0],[61,1],[65,1],[65,2],[71,1],[71,2],[74,1],[74,2],[88,0],[88,2],[90,0],[90,2],[91,1],[91,2],[92,0],[92,2],[95,1],[95,2],[97,0],[97,4],[99,0],[99,2],[101,0],[101,1],[102,0],[102,1],[103,1],[103,1],[104,0],[104,1],[106,1],[106,1],[106,1],[107,0],[107,1],[111,0],[111,1],[117,0],[117,1],[119,0],[119,2],[124,0],[124,1],[129,0],[129,1],[133,0],[133,1],[134,1],[134,1],[134,1],[136,0],[136,1],[137,0],[137,2],[140,0],[140,1],[141,0],[141,1],[142,0],[142,1],[144,0],[144,3],[146,0],[146,1],[148,0],[148,1],[149,0],[149,2],[152,0],[152,1],[153,0],[153,1],[155,0],[155,3],[157,0],[157,1],[162,0],[162,1],[167,0],[167,2],[168,0],[168,2],[169,1],[169,2],[170,0],[170,2],[175,0],[175,3],[177,0],[177,1],[178,0],[178,3],[180,0],[180,3],[181,0],[181,1],[183,0],[183,3],[184,0],[184,1],[189,0],[189,1],[191,0],[191,2],[194,0],[194,1],[198,0],[198,3],[201,0],[201,1],[204,0],[204,1],[206,0],[206,2],[208,1],[208,1],[210,0],[210,3],[213,0],[213,1],[215,0],[215,3],[217,0],[217,3],[339,1],[339,1],[339,1],[221,0],[221,1],[222,0],[222,1],[227,0],[227,3],[228,0],[228,1],[230,1],[230,2],[233,1],[233,2],[240,0],[240,2],[244,0],[244,2],[248,1],[248,1],[248,1],[248,1],[248,1],[248,1],[249,0],[249,1],[252,0],[252,2],[254,1],[254,1],[256,0],[256,2],[258,0],[258,2],[260,0],[260,2],[262,1],[262,1],[275,1],[275,1],[275,1],[275,1],[275,1],[278,0],[278,1],[281,0],[281,1],[282,1],[282,1],[284,0],[284,1],[286,0],[286,1],[287,0],[287,1]],performAction:o(function(C,P,N,ie,Oe,g,cn){var _=g.length-1;switch(Oe){case 1:if(g[_-1]=g[_-1]||{},ke.base&&(g[_-1].base=ke.base),ke.base="",g[_-1].prefixes=ke.prefixes,ke.prefixes=null,ke.pathOnly){if(g[_-1].type==="path"||"termType"in g[_-1])return g[_-1];throw new Error("Received full SPARQL query in path only mode")}else if(g[_-1].type==="path"||"termType"in g[_-1])throw new Error("Received only path in full SPARQL mode");if(g[_-1].type==="update"){let St={};for(let jt of g[_-1].updates)if(jt.updateType==="insert"){let it={};for(let ft of jt.insert)if(ft.type==="bgp"||ft.type==="graph")for(let wn of ft.triples)wn.subject.termType==="BlankNode"&&(it[wn.subject.value]=!0),wn.predicate.termType==="BlankNode"&&(it[wn.predicate.value]=!0),wn.object.termType==="BlankNode"&&(it[wn.object.value]=!0);for(let ft of Object.keys(it)){if(St[ft])throw new Error("Detected reuse blank node across different INSERT DATA clauses");St[ft]=!0}}}return g[_-1];case 2:this.$={...g[_-1],...g[_],type:"query"};break;case 4:ke.base=Tu(g[_]);break;case 5:ke.prefixes||(ke.prefixes={}),g[_-1]=g[_-1].substr(0,g[_-1].length-1),g[_]=Tu(g[_]),ke.prefixes[g[_-1]]=g[_];break;case 6:this.$={...g[_-3],...So(g[_-2]),...g[_-1],...g[_]};break;case 7:if(!ke.skipValidation&&(Hy(g[_-3].variables.map(jt=>zy(jt.expression))).some(jt=>jt.aggregation==="count"&&!(jt.expression instanceof Ud))||g[_].group)){for(let jt of g[_-3].variables)if(jt.termType==="Variable"){if(!g[_].group||!g[_].group.map(it=>vc(it)).includes(vc(jt)))throw Error("Projection of ungrouped variable (?"+vc(jt)+")")}else if(zy(jt.expression).length===0){let it=tL(jt.expression);for(let ft of it)if(!g[_].group||!g[_].group.map||!g[_].group.map(wn=>vc(wn)).includes(vc(ft)))throw Error("Use of ungrouped variable in projection of operation (?"+vc(ft)+")")}}let is=g[_-1].where.filter(St=>St.type==="query");if(is.length>0){let St=g[_-3].variables.filter(it=>it.variable&&it.variable.value).map(it=>it.variable.value),jt=Hy(is.map(it=>it.variables)).map(it=>it.value||it.variable.value);for(let it of St)if(jt.indexOf(it)>=0)throw Error("Target id of 'AS' (?"+it+") already used in subquery")}this.$=Ht(g[_-3],So(g[_-2]),g[_-1],g[_]);break;case 8:this.$=Ht({queryType:"CONSTRUCT",template:g[_-3]},So(g[_-2]),g[_-1],g[_]);break;case 9:this.$=Ht({queryType:"CONSTRUCT",template:g[_-2]=g[_-2]?g[_-2].triples:[]},So(g[_-5]),{where:[{type:"bgp",triples:_o([],g[_-2])}]},g[_]);break;case 10:this.$=Ht({queryType:"DESCRIBE",variables:g[_-3]==="*"?[new Ud]:g[_-3]},So(g[_-2]),g[_-1],g[_]);break;case 11:this.$=Ht({queryType:"ASK"},So(g[_-2]),g[_-1],g[_]);break;case 12:this.$=Ht(g[_-1],{variables:[new Ud]});break;case 13:let Ru=g[_].map(St=>St.value||St.variable.value),bc=rL(Ru);if(bc.length>0)throw Error("Two or more of the resulting columns have the same name (?"+bc[0]+")");this.$=Ht(g[_-1],{variables:g[_]});break;case 14:this.$=Ht({queryType:"SELECT"},g[_]&&(g[_-1]=on(g[_]),g[_]={},g[_][g[_-1]]=!0,g[_]));break;case 16:case 27:this.$=yc(g[_-3],{variable:g[_-1]});break;case 17:case 18:this.$=Ht(g[_-3],g[_-2],g[_-1],g[_],{type:"query"});break;case 19:case 58:this.$={iri:g[_],named:!!g[_-1]};break;case 20:this.$={where:g[_].patterns};break;case 21:this.$=Ht(g[_-1],g[_]);break;case 22:this.$=Ht(g[_-2],g[_-1],g[_]);break;case 23:this.$={group:g[_]};break;case 24:case 25:case 28:case 31:case 33:case 34:this.$=yc(g[_]);break;case 26:this.$=yc(g[_-1]);break;case 29:this.$={having:g[_]};break;case 30:this.$={order:g[_]};break;case 32:this.$=yc(g[_],{descending:!0});break;case 35:this.$={limit:Sc(g[_])};break;case 36:this.$={offset:Sc(g[_])};break;case 37:this.$={limit:Sc(g[_-2]),offset:Sc(g[_])};break;case 38:this.$={limit:Sc(g[_]),offset:Sc(g[_-2])};break;case 39:case 43:this.$={type:"values",values:g[_]};break;case 40:case 84:this.$=g[_-1].map(St=>({[g[_-3]]:St}));break;case 41:case 85:this.$=g[_-1].map(()=>({}));break;case 42:case 86:var ns=g[_-4].length;g[_-4]=g[_-4].map(By),this.$=g[_-1].map(function(St){if(St.length!==ns)throw Error("Inconsistent VALUES length");for(var jt={},it=0;it<ns;it++)jt["?"+g[_-4][it].value]=St[it];return jt});break;case 44:case 65:case 100:case 126:case 175:this.$=g[_-1];break;case 45:this.$={type:"update",updates:Bs(g[_-2],g[_-1])};break;case 46:this.$=Ht({type:"load",silent:!!g[_-2],source:g[_-1]},g[_]&&{destination:g[_]});break;case 47:this.$={type:on(g[_-2]),silent:!!g[_-1],graph:g[_]};break;case 48:this.$={type:on(g[_-4]),silent:!!g[_-3],source:g[_-2],destination:g[_]};break;case 49:this.$={type:"create",silent:!!g[_-2],graph:{type:"graph",name:g[_]}};break;case 50:this.$={updateType:"insert",insert:Y2(g[_])};break;case 51:this.$={updateType:"delete",delete:Yy(Y2(g[_]))};break;case 52:this.$={updateType:"deletewhere",delete:Yy(g[_])};break;case 53:this.$={updateType:"insertdelete",...g[_-4],...g[_-3],...So(g[_-2],"using"),where:g[_].patterns};break;case 54:case 57:case 62:case 167:case 191:case 236:this.$=g[_];break;case 55:this.$={delete:Yy(g[_-1]),insert:g[_]||[]};break;case 56:this.$={delete:[],insert:g[_]};break;case 59:this.$={graph:g[_]};break;case 60:this.$={type:"graph",default:!0};break;case 61:case 63:this.$={type:"graph",name:g[_]};break;case 64:this.$={[on(g[_])]:!0};break;case 66:this.$=g[_-1]?ts(g[_],[g[_-1]]):ts(g[_]);break;case 67:var Cu=Ht(g[_-3]||{triples:[]},{type:"graph",name:g[_-5]});this.$=g[_]?[Cu,g[_]]:[Cu];break;case 68:case 73:this.$={type:"bgp",triples:ts(g[_-2],[g[_-1]])};break;case 69:this.$={type:"group",patterns:[g[_-1]]};break;case 70:for(let St of g[_-1].filter(jt=>jt.type==="bind")){let jt=g[_-1].indexOf(St),it=new Set;for(let ft of g[_-1].slice(0,jt))(ft.type==="group"||ft.type==="bgp")&&Q2(ft).forEach(wn=>it.add(wn));if(it.has(St.variable.value))throw Error("Variable used to bind is already bound (?"+St.variable.value+")")}this.$={type:"group",patterns:g[_-1]};break;case 71:this.$=g[_-1]?ts([g[_-1]],g[_]):ts(g[_]);break;case 72:this.$=g[_]?[g[_-2],g[_]]:g[_-2];break;case 75:this.$=Ht(g[_],{type:"optional"});break;case 76:this.$=Ht(g[_],{type:"minus"});break;case 77:this.$=Ht(g[_],{type:"graph",name:g[_-1]});break;case 78:this.$=Ht(g[_],{type:"service",name:g[_-1],silent:!!g[_-2]});break;case 79:this.$={type:"filter",expression:g[_]};break;case 80:this.$={type:"bind",variable:g[_-1],expression:g[_-3]};break;case 89:this.$=xu(g[_]);break;case 90:this.$=void 0;break;case 91:this.$=g[_-1].length?{type:"union",patterns:ts(g[_-1].map(Uy),[Uy(g[_])])}:g[_];break;case 95:this.$={...g[_],function:g[_-1]};break;case 96:this.$={type:"functionCall",args:[]};break;case 97:this.$={type:"functionCall",args:Bs(g[_-2],g[_-1]),distinct:!!g[_-3]};break;case 98:case 115:case 128:case 247:case 249:case 251:case 253:case 255:case 263:case 267:case 297:case 299:case 303:case 307:case 328:case 341:case 349:case 355:case 361:case 367:case 369:case 373:case 375:case 379:case 381:case 385:case 391:case 395:case 401:case 405:case 409:case 411:case 420:case 428:case 430:case 440:case 444:case 446:case 448:this.$=[];break;case 99:this.$=Bs(g[_-2],g[_-1]);break;case 101:this.$=ts(g[_-2],[g[_-1]]);break;case 102:case 112:this.$=Ky(g[_].map(St=>Ht(Vs(g[_-1]),St)));break;case 103:this.$=Ky(_o(g[_].map(St=>Ht(Vs(g[_-1].entity),St)),g[_-1].triples));break;case 105:this.$=ts([g[_-1]],g[_]);break;case 106:this.$=ts(g[_]);break;case 107:this.$=Gy(g[_-1],g[_]);break;case 109:case 237:this.$=ke.factory.namedNode(GN);break;case 110:case 118:this.$=Bs(g[_-1],g[_]);break;case 111:this.$=g[_]?{annotation:g[_],object:g[_-1]}:g[_-1];break;case 113:this.$=g[_]?Ky(_o(g[_].map(St=>Ht(Vs(g[_-1].entity),St)),g[_-1].triples)):g[_-1].triples;break;case 114:this.$=Gy(...g[_-1],g[_]);break;case 116:this.$=Gy(...g[_]);break;case 117:case 159:case 163:this.$=[g[_-1],g[_]];break;case 119:this.$=g[_]?{object:g[_-1],annotation:g[_]}:g[_-1];break;case 120:this.$=g[_-1].length?_c("|",Bs(g[_-1],g[_])):g[_];break;case 121:this.$=g[_-1].length?_c("/",Bs(g[_-1],g[_])):g[_];break;case 122:this.$=g[_]?_c(g[_],[g[_-1]]):g[_-1];break;case 123:this.$=g[_-1]?_c(g[_-1],[g[_]]):g[_];break;case 125:case 131:this.$=_c(g[_-1],[g[_]]);break;case 129:this.$=_c("|",Bs(g[_-2],g[_-1]));break;case 132:case 134:this.$=ZN(g[_-1]);break;case 133:case 135:this.$=eL(g[_-1]);break;case 140:this.$={entity:g[_],triples:[]};break;case 145:this.$=By(g[_]);break;case 149:this.$=ke.factory.namedNode(B2);break;case 151:case 153:case 158:case 162:this.$=Vy(g[_-1],g[_]);break;case 152:this.$=["||",g[_]];break;case 154:this.$=["&&",g[_]];break;case 156:this.$=Or(g[_-1],[g[_-2],g[_]]);break;case 157:this.$=Or(g[_-2]?"notin":"in",[g[_-3],g[_]]);break;case 160:this.$=["+",Vy(g[_-1],g[_])];break;case 161:var Gd=rs(g[_-1].value.replace("-",""),g[_-1].datatype);this.$=["-",Vy(Gd,g[_])];break;case 164:this.$=Or("UPLUS",[g[_]]);break;case 165:this.$=Or(g[_-1],[g[_]]);break;case 166:this.$=Or("UMINUS",[g[_]]);break;case 177:this.$=Or(on(g[_-1]));break;case 178:this.$=Or(on(g[_-3]),[g[_-1]]);break;case 179:this.$=xu(Or(on(g[_-3]),[g[_-1]]));break;case 180:this.$=Or(on(g[_-5]),[g[_-3],g[_-1]]);break;case 181:this.$=Or(on(g[_-7]),[g[_-5],g[_-3],g[_-1]]);break;case 182:this.$=xu(Or(on(g[_-7]),[g[_-5],g[_-3],g[_-1]]));break;case 183:this.$=Or(on(g[_-1]),g[_]);break;case 184:this.$=Or("bound",[By(g[_-1])]);break;case 185:this.$=Or(g[_-1],[]);break;case 186:this.$=Or(g[_-3],[g[_-1]]);break;case 187:this.$=Or(g[_-2]?"notexists":"exists",[Uy(g[_])]);break;case 188:case 189:this.$=yc(g[_-1],{type:"aggregate",aggregation:on(g[_-4]),distinct:!!g[_-2]});break;case 190:this.$=yc(g[_-2],{type:"aggregate",aggregation:on(g[_-5]),distinct:!!g[_-3],separator:typeof g[_-1]=="string"?g[_-1]:" "});break;case 192:this.$=rs(g[_]);break;case 193:this.$=KN(g[_-1],on(g[_].substr(1)));break;case 194:this.$=rs(g[_-2],g[_]);break;case 195:case 204:this.$=rs(g[_],V2);break;case 196:case 205:this.$=rs(g[_],U2);break;case 197:case 206:this.$=rs(on(g[_]),q2);break;case 200:this.$=rs(g[_].toLowerCase(),QN);break;case 201:this.$=rs(g[_].substr(1),V2);break;case 202:this.$=rs(g[_].substr(1),U2);break;case 203:this.$=rs(g[_].substr(1).toLowerCase(),q2);break;case 207:case 208:this.$=H2(g[_],1);break;case 209:case 210:this.$=H2(g[_],3);break;case 211:this.$=ke.factory.namedNode(Tu(g[_]));break;case 213:var zd=g[_].indexOf(":"),Iu=g[_].substr(0,zd),Hd=ke.prefixes[Iu];if(!Hd)throw new Error("Unknown prefix: "+Iu);var Vt=Tu(Hd+g[_].substr(zd+1));this.$=ke.factory.namedNode(Vt);break;case 214:if(g[_]=g[_].substr(0,g[_].length-1),!(g[_]in ke.prefixes))throw new Error("Unknown prefix: "+g[_]);var Vt=Tu(ke.prefixes[g[_]]);this.$=ke.factory.namedNode(Vt);break;case 215:this.$=Au(g[_].replace(/^(_:)/,""));break;case 216:this.$=Au();break;case 217:case 218:case 232:this.$=xu(qy(g[_-3],g[_-2],g[_-1]));break;case 230:case 231:this.$=xu(g[_-1]);break;case 248:case 250:case 252:case 254:case 256:case 260:case 264:case 268:case 270:case 292:case 294:case 296:case 298:case 300:case 302:case 304:case 306:case 329:case 342:case 356:case 368:case 370:case 372:case 374:case 392:case 402:case 425:case 427:case 429:case 431:case 441:case 445:case 447:case 449:g[_-1].push(g[_]);break;case 259:case 269:case 291:case 293:case 295:case 301:case 305:case 371:case 424:case 426:this.$=[g[_]];break;case 308:g[_-3].push(g[_-2]);break;case 350:case 362:case 376:case 380:case 382:case 386:case 396:case 406:case 410:case 412:case 421:g[_-2].push(g[_-1]);break}},"anonymous"),table:[n(e,t,{3:1,4:2,10:3}),{1:[3]},n(r,[2,307],{5:4,7:5,321:6,214:7,8:8,96:9,215:10,17:11,21:12,97:16,38:17,6:[2,238],13:i,16:i,45:i,197:i,224:i,229:i,308:i,24:[1,13],32:[1,14],36:[1,15],41:s}),n([6,13,16,24,32,36,41,45,100,110,113,115,116,123,126,131,197,224,229,308,329,330,331,332,333],[2,3],{322:19,11:20,14:21,12:[1,22],15:[1,23]}),{6:[1,24]},{6:[2,240]},{6:[2,241]},{6:[2,242]},{6:[2,243],9:25,84:26,85:a},{6:[2,239]},n(c,[2,411],{216:28,217:29}),n(l,[2,249],{18:30}),n(l,[2,251],{22:31}),n(u,[2,255],{25:32,27:33,29:[1,34]}),{13:f,16:d,33:35,39:[1,37],44:39,55:40,87:h,139:38,307:43,308:p,323:36},n(l,[2,267],{37:46}),n(y,[2,326],{98:47,103:49,106:50,117:55,130:61,100:[1,48],110:[1,51],113:[1,52],115:[1,53],116:[1,54],131:[1,62],329:[1,56],330:[1,57],331:[1,58],332:[1,59],333:[1,60]}),{39:[1,63],40:64,43:65,44:66,45:v,87:h},n(w,[2,273],{42:68,324:69,325:[1,70],326:[1,71]}),n(e,[2,248]),n(e,[2,245]),n(e,[2,246]),{13:[1,72]},{16:[1,73]},{1:[2,1]},{6:[2,2]},{6:[2,244]},{45:[1,77],85:[1,78],86:74,87:[1,75],89:[1,76]},n([6,13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],[2,120],{337:[1,79]}),n(b,[2,418],{218:80,222:81,229:[1,82]}),{19:83,28:A,29:I,52:84,53:j,56:85},{19:88,28:A,29:I,52:89,53:j,56:85},n(l,[2,253],{26:90}),{28:[1,91],52:92,53:j},n(V,[2,385],{181:93,182:94,183:95,31:[2,383]}),n(te,[2,263],{34:96}),n(te,[2,261],{44:39,55:40,307:43,139:97,13:f,16:d,87:h,308:p}),n(te,[2,262]),n(z,[2,259]),n(G,[2,143]),n(G,[2,144]),n([6,13,16,28,29,31,39,45,47,48,53,63,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346,347,348,349,350,351],[2,145]),n(F,[2,211]),n(F,[2,212]),n(F,[2,213]),n(F,[2,214]),{19:98,28:A,29:I,52:99,53:j,56:85},{6:[2,309],99:100,193:[1,101]},n($,[2,311],{101:102,328:[1,103]}),n(re,[2,317],{104:104,328:[1,105]}),n(Ye,[2,322],{107:106,328:[1,107]}),{111:108,112:[2,324],328:[1,109]},{29:at,114:110},{29:at,114:112},{29:at,114:113},{118:114,123:[1,115],125:116,126:Ot},n(ot,[2,315]),n(ot,[2,316]),n(lt,[2,319]),n(lt,[2,320]),n(lt,[2,321]),n(y,[2,327]),{13:f,16:d,55:118,307:43,308:p},n(l,[2,12]),n(l,[2,13],{44:66,43:119,45:v,87:h}),n(Xe,[2,269]),n(Xe,[2,15]),{13:f,16:d,44:136,45:se,46:120,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(w,[2,14]),n(w,[2,274]),n(w,[2,271]),n(w,[2,272]),n(e,[2,4]),{13:[1,177]},n(Z,[2,39]),{29:[1,178]},{29:[1,179]},{87:[1,181],91:180},{45:[1,187],87:[1,185],89:[1,186],93:182,165:183,166:184},n(c,[2,410]),n([6,13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337],[2,121],{338:[1,188]}),{13:f,16:d,45:[1,193],55:194,197:_t,219:189,220:190,223:191,224:[1,192],307:43,308:p},n(b,[2,419]),n(Ct,De,{20:196,59:197,69:198,70:q}),n(l,[2,250]),{29:W,57:200},n($,[2,279],{54:202,327:[1,203]}),{29:[2,282]},n(Q,Y,{23:204,58:205,62:206,63:Ie}),n(l,[2,252]),{19:208,28:A,29:I,52:209,53:j,56:85},{29:[1,210]},n(u,[2,256]),{31:[1,211]},{31:[2,384]},{13:f,16:d,44:215,45:rt,55:220,82:U,87:h,89:nt,145:212,172:221,185:213,187:214,231:Rr,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(u2,[2,265],{56:85,35:227,52:228,19:229,28:A,29:I,53:j}),n(z,[2,260]),n(Q,Y,{58:205,62:206,23:230,63:Ie}),n(l,[2,268]),{6:[2,45]},n(e,t,{10:3,4:231}),{13:f,16:d,55:232,307:43,308:p},n($,[2,312]),{105:233,112:f2,122:234,132:[1,237],134:235,327:[1,238],334:[1,239]},n(re,[2,318]),n($,d2,{108:240,133:242,112:h2,132:p2}),n(Ye,[2,323]),{112:[1,244]},{112:[2,325]},n(Pr,[2,50]),n(V,Id,{135:245,136:246,143:247,144:248,31:m2,112:m2}),n(Pr,[2,51]),n(Pr,[2,52]),n(Ea,[2,328],{119:249}),{29:at,114:250},n(Ea,[2,56]),{29:at,114:251},n(y,[2,59]),n(Xe,[2,270]),{47:[1,252]},n(g2,[2,150]),n(Rd,[2,428],{240:253}),n(dc,[2,430],{244:254}),n(dc,[2,155],{248:255,249:256,250:[2,438],290:[1,257],341:[1,258],342:[1,259],343:[1,260],344:[1,261],345:[1,262],346:[1,263]}),n(hc,[2,440],{252:264}),n(gr,[2,448],{260:265}),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,255:154,257:155,264:266,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,255:154,257:155,264:267,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,255:154,257:155,264:268,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(gr,[2,167]),n(gr,[2,168]),n(gr,[2,169]),n(gr,[2,170],{176:269,45:y2,89:_2}),n(gr,[2,171]),n(gr,[2,172]),n(gr,[2,173]),n(gr,[2,174]),{13:f,16:d,44:136,45:se,46:272,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Xt,[2,176]),{89:[1,273]},{45:[1,274]},{45:[1,275]},{45:[1,276]},{45:[1,277]},{45:[1,278]},{45:S2,89:v2,179:279},{45:[1,282]},{45:[1,284],89:[1,283]},{279:[1,285]},n(an,[2,192],{292:[1,286],293:[1,287]}),n(an,[2,195]),n(an,[2,196]),n(an,[2,197]),n(an,[2,198]),n(an,[2,199]),n(an,[2,200]),{13:f,16:d,44:39,55:40,82:U,87:h,139:289,172:291,255:154,257:155,266:290,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,320:288},{45:[1,292]},{45:[1,293]},{45:[1,294]},n(vu,[2,452]),n(vu,[2,453]),n(vu,[2,454]),n(vu,[2,455]),n(vu,[2,456]),{279:[2,458]},n(Pd,[2,207]),n(Pd,[2,208]),n(Pd,[2,209]),n(Pd,[2,210]),n(an,[2,201]),n(an,[2,202]),n(an,[2,203]),n(an,[2,204]),n(an,[2,205]),n(an,[2,206]),n(e,[2,5]),n(Od,[2,297],{88:295}),n(Fd,[2,299],{90:296}),{48:[1,297],87:[1,298]},n(Dd,[2,301]),n(Z,[2,43]),n(Z,[2,82]),n(Z,[2,83]),{29:[1,299]},{29:[1,300]},{87:[1,302],169:301},n(c,[2,412]),n(uo,[2,123]),n(uo,[2,416],{221:303,339:304,39:[1,306],263:[1,307],340:[1,305]}),n(es,[2,124]),{13:f,16:d,45:[1,311],55:194,89:[1,310],197:_t,223:312,225:308,226:309,229:b2,307:43,308:p},n(c,i,{215:10,214:314}),n(es,[2,236]),n(es,[2,237]),n(pc,[2,6]),n(Fy,[2,287],{60:315,72:316,73:[1,317]}),n(Ct,[2,286]),{13:f,16:d,45:se,55:323,67:321,68:322,71:318,77:320,79:319,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,307:43,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O},n([6,31,63,70,73,81,83,85],[2,20]),n(V,w2,{38:17,49:324,147:325,17:326,21:327,148:328,154:329,155:330,29:Ls,31:Ls,85:Ls,112:Ls,159:Ls,160:Ls,161:Ls,163:Ls,164:Ls,41:s}),{13:f,16:d,55:331,307:43,308:p},n($,[2,280]),n(pc,[2,7]),n(Ct,De,{59:197,69:198,20:332,70:q}),n(Q,[2,284]),{64:[1,333]},n(Q,Y,{58:205,62:206,23:334,63:Ie}),n(l,[2,254]),n(V,Id,{144:248,30:335,143:336,31:[2,257]}),n(l,[2,100]),{31:[2,387],184:337,335:[1,338]},{13:f,16:d,44:39,55:40,87:h,139:342,186:339,190:340,195:341,197:fo,307:43,308:p},n(bu,[2,389],{44:39,55:40,307:43,190:340,195:341,139:342,188:344,189:345,186:346,13:f,16:d,87:h,197:fo,308:p}),n(ks,[2,227]),n(ks,[2,228]),n(ks,[2,229]),{13:f,16:d,44:215,45:rt,55:220,82:U,87:h,89:nt,172:221,185:351,187:350,200:348,230:347,231:Rr,234:349,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},{13:f,16:d,44:39,55:40,87:h,139:342,186:352,190:340,195:341,197:fo,307:43,308:p},n(ks,[2,146]),n(ks,[2,147]),n(ks,[2,148]),n(ks,[2,149]),{13:f,16:d,44:354,55:355,82:U,87:h,172:357,237:356,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:358,312:sn,313:353},n(Dy,[2,215]),n(Dy,[2,216]),n(Q,Y,{58:205,62:206,23:359,63:Ie}),n(te,[2,264]),n(u2,[2,266]),n(pc,[2,11]),n(r,[2,308],{6:[2,310]}),n(Pr,[2,313],{102:360,120:361,121:[1,362]}),n(Pr,[2,47]),n(Pr,[2,63]),n(Pr,[2,64]),{13:f,16:d,55:363,307:43,308:p},n(Pr,[2,336]),n(Pr,[2,337]),n(Pr,[2,338]),{109:[1,364]},n(E2,[2,60]),{13:f,16:d,55:365,307:43,308:p},n($,[2,335]),{13:f,16:d,55:366,307:43,308:p},{31:[1,367]},n(ho,[2,341],{137:368}),n(ho,[2,340]),{13:f,16:d,44:215,45:rt,55:220,82:U,87:h,89:nt,145:369,172:221,185:213,187:214,231:Rr,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},{28:[1,370],127:371,128:[1,372]},n(Ea,[2,330],{124:373,125:374,126:Ot}),n(Ea,[2,57]),{44:375,87:h},n(g2,[2,151],{241:376,242:[1,377]}),n(Rd,[2,153],{245:378,246:[1,379]}),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,247:380,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{250:[1,381]},n(Jt,[2,432]),n(Jt,[2,433]),n(Jt,[2,434]),n(Jt,[2,435]),n(Jt,[2,436]),n(Jt,[2,437]),{250:[2,439]},n([47,48,193,242,246,250,272,290,341,342,343,344,345,346],[2,158],{253:382,254:383,255:384,257:385,263:[1,386],265:[1,387],297:he,298:pe,299:me,300:ue,301:_e,302:Se}),n(hc,[2,162],{261:388,262:389,39:Ny,338:Ly}),n(gr,[2,164]),n(gr,[2,165]),n(gr,[2,166]),n(Xt,[2,95]),n(Xt,[2,96]),n(Jt,[2,377],{177:392,325:[1,393]}),{48:[1,394]},n(Xt,[2,177]),{13:f,16:d,44:136,45:se,46:395,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:396,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:397,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:398,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:399,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Xt,[2,183]),n(Xt,[2,98]),n(Jt,[2,381],{180:400}),{87:[1,401]},n(Xt,[2,185]),{13:f,16:d,44:136,45:se,46:402,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{29:W,57:403},n(an,[2,193]),{13:f,16:d,55:404,307:43,308:p},{13:f,16:d,44:39,55:40,87:h,139:342,195:405,197:fo,307:43,308:p},n(Ta,[2,233]),n(Ta,[2,234]),n(Ta,[2,235]),n(T2,[2,459],{281:406,325:[1,407]}),n(Jt,[2,463],{284:408,325:[1,409]}),n(Jt,[2,465],{286:410,325:[1,411]}),{13:f,16:d,31:[1,412],55:414,82:U,171:413,172:415,173:416,174:Nd,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:Ld},{31:[1,419],89:[1,420]},{29:[1,421]},n(Dd,[2,302]),n(Od,[2,367],{167:422}),n(Fd,[2,369],{168:423}),{48:[1,424],87:[1,425]},n(Dd,[2,371]),n(uo,[2,122]),n(uo,[2,417]),n(uo,[2,413]),n(uo,[2,414]),n(uo,[2,415]),n(es,[2,125]),n(es,[2,127]),n(es,[2,128]),n(A2,[2,420],{227:426}),n(es,[2,130]),{13:f,16:d,55:194,197:_t,223:427,307:43,308:p},{48:[1,428]},n(Aa,[2,289],{61:429,80:430,81:[1,431],83:[1,432]}),n(Fy,[2,288]),{64:[1,433]},n(Ct,[2,29],{307:43,267:139,275:146,278:149,77:320,67:321,68:322,55:323,79:434,13:f,16:d,45:se,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,276:ze,277:Ce,279:Ve,280:Pe,283:Ue,285:He,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O}),n(x2,[2,293]),n(ky,[2,92]),n(ky,[2,93]),n(ky,[2,94]),{45:y2,89:_2,176:269},{31:[1,435]},{31:[1,436]},{19:437,28:A,29:I,56:85},{19:438,28:A,29:I,56:85},n(po,[2,355],{149:439}),n(po,[2,354]),{13:f,16:d,44:215,45:kd,55:220,82:U,87:h,89:nt,156:440,172:221,185:441,203:442,231:Md,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(te,[2,19]),n(Aa,[2,21]),{13:f,16:d,44:450,45:C2,55:323,65:445,66:446,67:447,68:448,87:h,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,307:43,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(pc,[2,8]),{31:[1,451]},{31:[2,258]},{31:[2,101]},n(V,[2,386],{31:[2,388]}),n(bu,[2,102]),n(mo,[2,391],{191:452}),n(V,[2,395],{196:453,198:454}),n(V,[2,108]),n(V,[2,109]),n(bu,[2,103]),n(bu,[2,104]),n(bu,[2,390]),{13:f,16:d,44:215,45:rt,48:[1,455],55:220,82:U,87:h,89:nt,172:221,185:351,187:350,200:456,231:Rr,234:349,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(jd,[2,424]),n(I2,[2,136]),n(I2,[2,137]),n(My,[2,140]),{232:[1,457]},{13:f,16:d,44:39,55:40,87:h,139:342,195:458,197:fo,307:43,308:p},n(Ta,[2,219]),n(Ta,[2,220]),n(Ta,[2,221]),n(Ta,[2,222]),n(Ta,[2,223]),n(pc,[2,10]),n(Pr,[2,46]),n(Pr,[2,314]),{112:f2,122:459},n(Pr,[2,62]),n($,d2,{133:242,108:460,112:h2,132:p2}),n(E2,[2,61]),n(Pr,[2,49]),n([6,28,126,128,193],[2,65]),{31:[2,66],112:[1,462],138:461},n(ho,[2,351],{146:463,335:[1,464]}),{29:W,57:465},n(Ea,[2,329]),n($,[2,332],{129:466,327:[1,467]}),n(Ea,[2,55]),n(Ea,[2,331]),{48:[1,468]},n(Rd,[2,429]),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,239:469,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(dc,[2,431]),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,243:470,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(dc,[2,156]),{45:S2,89:v2,179:471},n(hc,[2,441]),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,251:472,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(gr,[2,444],{256:473}),n(gr,[2,446],{258:474}),n(Jt,[2,442]),n(Jt,[2,443]),n(gr,[2,449]),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,255:154,257:155,259:475,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Jt,[2,450]),n(Jt,[2,451]),n(Jt,[2,379],{178:476}),n(Jt,[2,378]),n([6,13,16,29,31,39,45,47,48,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,338,341,342,343,344,345,346,347,348,349,350,351],[2,175]),{48:[1,477]},{48:[1,478]},{272:[1,479]},{272:[1,480]},{272:[1,481]},{13:f,16:d,44:136,45:se,46:482,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{48:[1,483]},{48:[1,484]},n(Xt,[2,187]),n(an,[2,194]),{13:f,16:d,44:39,55:40,82:U,87:h,139:289,172:291,255:154,257:155,266:290,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,320:485},{13:f,16:d,39:[1,487],44:136,45:se,46:488,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,282:486,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(T2,[2,460]),{13:f,16:d,44:136,45:se,46:489,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Jt,[2,464]),{13:f,16:d,44:136,45:se,46:490,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Jt,[2,466]),n(Z,[2,40]),n(Od,[2,298]),n(wu,[2,87]),n(wu,[2,88]),n(wu,[2,89]),n(wu,[2,90]),{13:f,16:d,55:492,82:U,172:493,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,311:494,312:sn,315:491},n(Z,[2,41]),n(Fd,[2,300]),n(Eu,[2,303],{92:495}),{13:f,16:d,31:[1,496],55:414,82:U,171:497,172:415,173:416,174:Nd,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:Ld},{31:[1,498],89:[1,499]},{29:[1,500]},n(Dd,[2,372]),{13:f,16:d,48:[2,422],55:194,197:_t,223:312,226:502,228:501,229:b2,307:43,308:p},n(es,[2,131]),n(es,[2,126]),n(Aa,[2,22]),n(Aa,[2,290]),{82:[1,503]},{82:[1,504]},{13:f,16:d,44:510,45:se,55:323,67:321,68:322,74:505,75:506,76:R2,77:320,78:P2,79:509,87:h,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,307:43,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(x2,[2,294]),n(O2,[2,69]),n(O2,[2,70]),n(Ct,De,{59:197,69:198,20:511,70:q}),n(Q,Y,{58:205,62:206,23:512,63:Ie}),{29:[2,375],31:[2,71],84:522,85:a,112:[1,518],150:513,151:514,158:515,159:[1,516],160:[1,517],161:[1,519],163:[1,520],164:[1,521],175:523},n(po,[2,363],{157:524,335:[1,525]}),n(c,i,{215:10,202:526,205:527,208:528,214:529,44:530,87:h}),n($d,[2,399],{215:10,205:527,208:528,214:529,44:530,204:531,202:532,13:i,16:i,45:i,197:i,224:i,229:i,308:i,87:h}),{13:f,16:d,44:215,45:kd,55:220,82:U,87:h,89:nt,172:221,185:351,203:536,212:534,231:Md,233:533,234:535,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(c,i,{215:10,205:527,208:528,214:529,44:530,202:537,87:h}),n(Q,[2,23],{307:43,267:139,275:146,278:149,55:323,67:447,68:448,44:450,66:538,13:f,16:d,45:C2,87:h,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,276:ze,277:Ce,279:Ve,280:Pe,283:Ue,285:He,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O}),n(go,[2,291]),n(go,[2,24]),n(go,[2,25]),{13:f,16:d,44:136,45:se,46:539,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(go,[2,28]),n(Q,Y,{58:205,62:206,23:540,63:Ie}),n([31,112,232,318,335],[2,105],{192:541,193:[1,542]}),n(mo,[2,107]),{13:f,16:d,44:215,45:rt,55:220,82:U,87:h,89:nt,172:221,185:351,187:350,199:543,200:544,231:Rr,234:349,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(F2,[2,132]),n(jd,[2,425]),n(F2,[2,133]),{13:f,16:d,44:354,55:355,82:U,87:h,172:357,237:356,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:358,312:sn,313:545},n(Pr,[2,54]),n(Pr,[2,48]),n(ho,[2,342]),{13:f,16:d,44:39,55:40,87:h,139:546,307:43,308:p},n(ho,[2,68]),n(V,[2,350],{31:D2,112:D2}),n(Pr,[2,53]),{13:f,16:d,55:547,307:43,308:p},n($,[2,333]),n(Xe,[2,16]),n(Rd,[2,152]),n(dc,[2,154]),n(dc,[2,157]),n(hc,[2,159]),n(hc,[2,160],{262:389,261:548,39:Ny,338:Ly}),n(hc,[2,161],{262:389,261:549,39:Ny,338:Ly}),n(gr,[2,163]),{13:f,16:d,44:136,45:se,46:550,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Xt,[2,178]),n(Xt,[2,179]),{13:f,16:d,44:136,45:se,46:551,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:552,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:553,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{48:[1,554],272:[1,555]},n(Xt,[2,184]),n(Xt,[2,186]),{314:[1,556]},{48:[1,557]},{48:[2,461]},{48:[2,462]},{48:[1,558]},{48:[2,467],193:[1,561],287:559,288:560},{13:f,16:d,55:194,197:_t,223:562,307:43,308:p},n(jy,[2,224]),n(jy,[2,225]),n(jy,[2,226]),{31:[1,563],45:N2,94:564},n(Z,[2,84]),n(Od,[2,368]),n(Z,[2,85]),n(Fd,[2,370]),n(Eu,[2,373],{170:566}),{48:[1,567]},{48:[2,423],337:[1,568]},n(Aa,[2,35],{83:[1,569]}),n(Aa,[2,36],{81:[1,570]}),n(Fy,[2,30],{307:43,267:139,275:146,278:149,77:320,67:321,68:322,55:323,79:509,44:510,75:571,13:f,16:d,45:se,76:R2,78:P2,87:h,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,276:ze,277:Ce,279:Ve,280:Pe,283:Ue,285:He,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O}),n(mc,[2,295]),{45:se,77:572},{45:se,77:573},n(mc,[2,33]),n(mc,[2,34]),{31:[2,275],50:574,84:575,85:a},{31:[2,277],51:576,84:577,85:a},n(po,[2,356]),n(L2,[2,357],{152:578,335:[1,579]}),n(Ms,[2,74]),{29:W,57:580},{29:W,57:581},{13:f,16:d,44:39,55:40,87:h,139:582,307:43,308:p},n(k2,[2,365],{162:583,328:[1,584]}),{13:f,16:d,45:se,55:323,67:321,68:322,77:320,79:585,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,307:43,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O},{45:[1,586]},n(Ms,[2,81]),{29:W,57:587},n(po,[2,73]),n(V,[2,362],{29:js,31:js,85:js,112:js,159:js,160:js,161:js,163:js,164:js}),n($d,[2,112]),n(gc,[2,401],{206:588}),n(V,[2,405],{209:589,210:590}),n(V,[2,403]),n(V,[2,404]),n($d,[2,113]),n($d,[2,400]),{13:f,16:d,44:215,45:kd,48:[1,591],55:220,82:U,87:h,89:nt,172:221,185:351,203:536,212:592,231:Md,234:535,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(jd,[2,426]),n(My,[2,138]),n(My,[2,139]),{232:[1,593]},n(go,[2,292]),{47:[1,595],48:[1,594]},n(pc,[2,9]),n(mo,[2,392]),n(mo,[2,393],{44:39,55:40,307:43,195:341,139:342,194:596,190:597,13:f,16:d,87:h,197:fo,308:p}),n(mo,[2,110],{272:[1,598]}),n(Bd,[2,397],{201:599,316:600,317:[1,601]}),{314:[1,602]},{29:[1,603]},n(Ea,[2,58]),n(gr,[2,445]),n(gr,[2,447]),{48:[1,604],272:[1,605]},{48:[1,606]},{272:[1,607]},{272:[1,608]},n(Xt,[2,99]),n(Jt,[2,382]),n([13,16,39,47,48,87,193,197,242,246,250,263,265,272,290,297,298,299,300,301,302,308,314,338,341,342,343,344,345,346],[2,232]),n(Xt,[2,188]),n(Xt,[2,189]),{48:[1,609]},{48:[2,468]},{289:[1,610]},{13:f,16:d,55:492,82:U,172:493,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,311:494,312:sn,315:611},n(Z,[2,42]),n(Eu,[2,304]),{13:f,16:d,55:414,82:U,95:612,171:613,172:415,173:416,174:Nd,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:Ld},{31:[1,614],45:N2,94:615},n(es,[2,129]),n(A2,[2,421]),{82:[1,616]},{82:[1,617]},n(mc,[2,296]),n(mc,[2,31]),n(mc,[2,32]),{31:[2,17]},{31:[2,276]},{31:[2,18]},{31:[2,278]},n(V,w2,{155:330,153:618,154:619,29:$s,31:$s,85:$s,112:$s,159:$s,160:$s,161:$s,163:$s,164:$s}),n(L2,[2,358]),n(Ms,[2,75]),n(Ms,[2,76]),{29:W,57:620},{13:f,16:d,44:39,55:40,87:h,139:621,307:43,308:p},n(k2,[2,366]),n(Ms,[2,79]),{13:f,16:d,44:136,45:se,46:622,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Ms,[2,91],{336:[1,623]}),n([29,31,85,112,159,160,161,163,164,232,318,335],[2,114],{207:624,193:[1,625]}),n(gc,[2,117]),{13:f,16:d,44:215,45:kd,55:220,82:U,87:h,89:nt,172:221,185:351,203:536,211:626,212:627,231:Md,234:535,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(ks,[2,134]),n(jd,[2,427]),n(ks,[2,135]),n(go,[2,26]),{44:628,87:h},n(mo,[2,106]),n(mo,[2,394]),n(V,[2,396]),n(Bd,[2,111]),n(Bd,[2,398]),{13:f,16:d,44:39,55:40,87:h,139:342,186:629,190:340,195:341,197:fo,307:43,308:p},n(Dy,[2,217]),n(V,Id,{144:248,140:630,143:631,31:[2,343]}),n(Xt,[2,97]),n(Jt,[2,380]),n(Xt,[2,180]),{13:f,16:d,44:136,45:se,46:632,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:633,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Xt,[2,190]),{290:[1,634]},{314:[1,635]},{13:f,16:d,48:[1,636],55:414,82:U,171:637,172:415,173:416,174:Nd,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:Ld},n(M2,[2,305]),n(Z,[2,86]),n(Eu,[2,374]),n(Aa,[2,37]),n(Aa,[2,38]),n(po,[2,72]),n(po,[2,360]),n(Ms,[2,77]),{29:W,57:638},{47:[1,639]},{29:[2,376]},n(gc,[2,402]),n(gc,[2,115],{215:10,208:528,214:529,44:530,205:640,13:i,16:i,45:i,197:i,224:i,229:i,308:i,87:h}),n(gc,[2,118],{272:[1,641]}),n(Vd,[2,407],{213:642,319:643,317:[1,644]}),{48:[1,645]},{318:[1,646]},{31:[1,647]},{31:[2,344]},{48:[1,648]},{48:[1,649]},{291:650,303:ve,304:be,305:ce,306:we},n(wu,[2,218]),n(Eu,[2,44]),n(M2,[2,306]),n(Ms,[2,78]),{44:651,87:h},n(gc,[2,116]),n(V,[2,406]),n(Vd,[2,119]),n(Vd,[2,408]),n(c,i,{215:10,205:527,208:528,214:529,44:530,202:652,87:h}),n(go,[2,27]),n(Bd,[2,230]),n(j2,[2,345],{141:653,335:[1,654]}),n(Xt,[2,181]),n(Xt,[2,182]),{48:[2,191]},{48:[1,655]},{318:[1,656]},n(V,Id,{144:248,142:657,143:658,31:$2,112:$2}),n(j2,[2,346]),n(Ms,[2,80]),n(Vd,[2,231]),n(ho,[2,67]),n(ho,[2,348])],defaultActions:{5:[2,240],6:[2,241],7:[2,242],9:[2,239],24:[2,1],25:[2,2],26:[2,244],87:[2,282],94:[2,384],100:[2,45],109:[2,325],166:[2,458],263:[2,439],336:[2,258],337:[2,101],487:[2,461],488:[2,462],560:[2,468],574:[2,17],575:[2,276],576:[2,18],577:[2,278],623:[2,376],631:[2,344],650:[2,191]},parseError:o(function(C,P){if(P.recoverable)this.trace(C);else{var N=new Error(C);throw N.hash=P,N}},"parseError"),parse:o(function(C){var P=this,N=[0],ie=[],Oe=[null],g=[],cn=this.table,_="",ns=0,Cu=0,Gd=0,zd=2,Iu=1,Hd=g.slice.call(arguments,1),Vt=Object.create(this.lexer),is={yy:{}};for(var Ru in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ru)&&(is.yy[Ru]=this.yy[Ru]);Vt.setInput(C,is.yy),is.yy.lexer=Vt,is.yy.parser=this,typeof Vt.yylloc>"u"&&(Vt.yylloc={});var bc=Vt.yylloc;g.push(bc);var St=Vt.options&&Vt.options.ranges;typeof is.yy.parseError=="function"?this.parseError=is.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function jt(ss){N.length=N.length-2*ss,Oe.length=Oe.length-ss,g.length=g.length-ss}o(jt,"popStack");for(var it=o(function(){var ss;return ss=Vt.lex()||Iu,typeof ss!="number"&&(ss=P.symbols_[ss]||ss),ss},"lex"),ft,wn,vo,Hn,xJ,Xy,wc={},Qd,Us,X2,Kd;;){if(vo=N[N.length-1],this.defaultActions[vo]?Hn=this.defaultActions[vo]:((ft===null||typeof ft>"u")&&(ft=it()),Hn=cn[vo]&&cn[vo][ft]),typeof Hn>"u"||!Hn.length||!Hn[0]){var Jy="";Kd=[];for(Qd in cn[vo])this.terminals_[Qd]&&Qd>zd&&Kd.push("'"+this.terminals_[Qd]+"'");Vt.showPosition?Jy="Parse error on line "+(ns+1)+`:
33
+ `)}o(J4,"composeErrorMessage");function Z4(n,e,t){let[,r=null]=n.toString().match(/constructor\(([\w, ]+)\)/)||[],i=X4(r,e);return J4(`Cannot inject the dependency ${i} of "${n.name}" constructor. Reason:`,t)}o(Z4,"formatErrorCtor");jh.formatErrorCtor=Z4});var SA=S($h=>{"use strict";Object.defineProperty($h,"__esModule",{value:!0});$h.isDisposable=void 0;function ej(n){return!(typeof n.dispose!="function"||n.dispose.length>0)}o(ej,"isDisposable");$h.isDisposable=ej});var bA=S(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});Po.PostResolutionInterceptors=Po.PreResolutionInterceptors=void 0;var vA=b_(),Bh=class extends vA.default{static{o(this,"PreResolutionInterceptors")}};Po.PreResolutionInterceptors=Bh;var Vh=class extends vA.default{static{o(this,"PostResolutionInterceptors")}};Po.PostResolutionInterceptors=Vh;var C_=class{static{o(this,"Interceptors")}constructor(){this.preResolution=new Bh,this.postResolution=new Vh}};Po.default=C_});var Pa=S(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.instance=Qs.typeInfo=void 0;var tj=(Rh(),Yd(Ih)),fn=__(),rj=gA(),Uh=Nh(),nj=yA(),xn=d_(),qh=_A(),ij=x_(),sj=Dh(),aj=SA(),oj=bA();Qs.typeInfo=new Map;var I_=class n{static{o(this,"InternalDependencyContainer")}constructor(e){this.parent=e,this._registry=new nj.default,this.interceptors=new oj.default,this.disposed=!1,this.disposables=new Set}register(e,t,r={lifecycle:xn.default.Transient}){this.ensureNotDisposed();let i;if(rj.isProvider(t)?i=t:i={useClass:t},fn.isTokenProvider(i)){let s=[e],a=i;for(;a!=null;){let c=a.useToken;if(s.includes(c))throw new Error(`Token registration cycle detected! ${[...s,c].join(" -> ")}`);s.push(c);let l=this._registry.get(c);l&&fn.isTokenProvider(l.provider)?a=l.provider:a=null}}if((r.lifecycle===xn.default.Singleton||r.lifecycle==xn.default.ContainerScoped||r.lifecycle==xn.default.ResolutionScoped)&&(fn.isValueProvider(i)||fn.isFactoryProvider(i)))throw new Error(`Cannot use lifecycle "${xn.default[r.lifecycle]}" with ValueProviders or FactoryProviders`);return this._registry.set(e,{provider:i,options:r}),this}registerType(e,t){return this.ensureNotDisposed(),fn.isNormalToken(t)?this.register(e,{useToken:t}):this.register(e,{useClass:t})}registerInstance(e,t){return this.ensureNotDisposed(),this.register(e,{useValue:t})}registerSingleton(e,t){if(this.ensureNotDisposed(),fn.isNormalToken(e)){if(fn.isNormalToken(t))return this.register(e,{useToken:t},{lifecycle:xn.default.Singleton});if(t)return this.register(e,{useClass:t},{lifecycle:xn.default.Singleton});throw new Error('Cannot register a type name as a singleton without a "to" token')}let r=e;return t&&!fn.isNormalToken(t)&&(r=t),this.register(e,{useClass:r},{lifecycle:xn.default.Singleton})}resolve(e,t=new qh.default,r=!1){this.ensureNotDisposed();let i=this.getRegistration(e);if(!i&&fn.isNormalToken(e)){if(r)return;throw new Error(`Attempted to resolve unregistered dependency token: "${e.toString()}"`)}if(this.executePreResolutionInterceptor(e,"Single"),i){let s=this.resolveRegistration(i,t);return this.executePostResolutionInterceptor(e,s,"Single"),s}if(Uh.isConstructorToken(e)){let s=this.construct(e,t);return this.executePostResolutionInterceptor(e,s,"Single"),s}throw new Error("Attempted to construct an undefined constructor. Could mean a circular dependency problem. Try using `delay` function.")}executePreResolutionInterceptor(e,t){if(this.interceptors.preResolution.has(e)){let r=[];for(let i of this.interceptors.preResolution.getAll(e))i.options.frequency!="Once"&&r.push(i),i.callback(e,t);this.interceptors.preResolution.setAll(e,r)}}executePostResolutionInterceptor(e,t,r){if(this.interceptors.postResolution.has(e)){let i=[];for(let s of this.interceptors.postResolution.getAll(e))s.options.frequency!="Once"&&i.push(s),s.callback(e,t,r);this.interceptors.postResolution.setAll(e,i)}}resolveRegistration(e,t){if(this.ensureNotDisposed(),e.options.lifecycle===xn.default.ResolutionScoped&&t.scopedResolutions.has(e))return t.scopedResolutions.get(e);let r=e.options.lifecycle===xn.default.Singleton,i=e.options.lifecycle===xn.default.ContainerScoped,s=r||i,a;return fn.isValueProvider(e.provider)?a=e.provider.useValue:fn.isTokenProvider(e.provider)?a=s?e.instance||(e.instance=this.resolve(e.provider.useToken,t)):this.resolve(e.provider.useToken,t):fn.isClassProvider(e.provider)?a=s?e.instance||(e.instance=this.construct(e.provider.useClass,t)):this.construct(e.provider.useClass,t):fn.isFactoryProvider(e.provider)?a=e.provider.useFactory(this):a=this.construct(e.provider,t),e.options.lifecycle===xn.default.ResolutionScoped&&t.scopedResolutions.set(e,a),a}resolveAll(e,t=new qh.default,r=!1){this.ensureNotDisposed();let i=this.getAllRegistrations(e);if(!i&&fn.isNormalToken(e)){if(r)return[];throw new Error(`Attempted to resolve unregistered dependency token: "${e.toString()}"`)}if(this.executePreResolutionInterceptor(e,"All"),i){let a=i.map(c=>this.resolveRegistration(c,t));return this.executePostResolutionInterceptor(e,a,"All"),a}let s=[this.construct(e,t)];return this.executePostResolutionInterceptor(e,s,"All"),s}isRegistered(e,t=!1){return this.ensureNotDisposed(),this._registry.has(e)||t&&(this.parent||!1)&&this.parent.isRegistered(e,!0)}reset(){this.ensureNotDisposed(),this._registry.clear(),this.interceptors.preResolution.clear(),this.interceptors.postResolution.clear()}clearInstances(){this.ensureNotDisposed();for(let[e,t]of this._registry.entries())this._registry.setAll(e,t.filter(r=>!fn.isValueProvider(r.provider)).map(r=>(r.instance=void 0,r)))}createChildContainer(){this.ensureNotDisposed();let e=new n(this);for(let[t,r]of this._registry.entries())r.some(({options:i})=>i.lifecycle===xn.default.ContainerScoped)&&e._registry.setAll(t,r.map(i=>i.options.lifecycle===xn.default.ContainerScoped?{provider:i.provider,options:i.options}:i));return e}beforeResolution(e,t,r={frequency:"Always"}){this.interceptors.preResolution.set(e,{callback:t,options:r})}afterResolution(e,t,r={frequency:"Always"}){this.interceptors.postResolution.set(e,{callback:t,options:r})}dispose(){return tj.__awaiter(this,void 0,void 0,function*(){this.disposed=!0;let e=[];this.disposables.forEach(t=>{let r=t.dispose();r&&e.push(r)}),yield Promise.all(e)})}getRegistration(e){return this.isRegistered(e)?this._registry.get(e):this.parent?this.parent.getRegistration(e):null}getAllRegistrations(e){return this.isRegistered(e)?this._registry.getAll(e):this.parent?this.parent.getAllRegistrations(e):null}construct(e,t){if(e instanceof sj.DelayedConstructor)return e.createProxy(i=>this.resolve(i,t));let r=(()=>{let i=Qs.typeInfo.get(e);if(!i||i.length===0){if(e.length===0)return new e;throw new Error(`TypeInfo not known for "${e.name}"`)}let s=i.map(this.resolveParams(t,e));return new e(...s)})();return aj.isDisposable(r)&&this.disposables.add(r),r}resolveParams(e,t){return(r,i)=>{try{return Uh.isTokenDescriptor(r)?Uh.isTransformDescriptor(r)?r.multiple?this.resolve(r.transform).transform(this.resolveAll(r.token,new qh.default,r.isOptional),...r.transformArgs):this.resolve(r.transform).transform(this.resolve(r.token,e,r.isOptional),...r.transformArgs):r.multiple?this.resolveAll(r.token,new qh.default,r.isOptional):this.resolve(r.token,e,r.isOptional):Uh.isTransformDescriptor(r)?this.resolve(r.transform,e).transform(this.resolve(r.token,e),...r.transformArgs):this.resolve(r,e)}catch(s){throw new Error(ij.formatErrorCtor(t,i,s))}}}ensureNotDisposed(){if(this.disposed)throw new Error("This container has been disposed, you cannot interact with a disposed container")}};Qs.instance=new I_;Qs.default=Qs.instance});var wA=S(P_=>{"use strict";Object.defineProperty(P_,"__esModule",{value:!0});var cj=Io(),Ks=Pa(),R_=Nh(),lj=x_();function uj(){return function(n){let e=cj.getParamInfo(n);return class extends n{constructor(...t){super(...t.concat(e.slice(t.length).map((r,i)=>{try{return R_.isTokenDescriptor(r)?R_.isTransformDescriptor(r)?r.multiple?Ks.instance.resolve(r.transform).transform(Ks.instance.resolveAll(r.token),...r.transformArgs):Ks.instance.resolve(r.transform).transform(Ks.instance.resolve(r.token),...r.transformArgs):r.multiple?Ks.instance.resolveAll(r.token):Ks.instance.resolve(r.token):R_.isTransformDescriptor(r)?Ks.instance.resolve(r.transform).transform(Ks.instance.resolve(r.token),...r.transformArgs):Ks.instance.resolve(r)}catch(s){let a=i+t.length;throw new Error(lj.formatErrorCtor(n,a,s))}})))}}}}o(uj,"autoInjectable");P_.default=uj});var EA=S(O_=>{"use strict";Object.defineProperty(O_,"__esModule",{value:!0});var fj=Io();function dj(n,e){let t={token:n,multiple:!1,isOptional:e&&e.isOptional};return fj.defineInjectionTokenMetadata(t)}o(dj,"inject");O_.default=dj});var Wh=S(F_=>{"use strict";Object.defineProperty(F_,"__esModule",{value:!0});var hj=Io(),pj=Pa(),TA=Pa();function mj(n){return function(e){pj.typeInfo.set(e,hj.getParamInfo(e)),n&&n.token&&(Array.isArray(n.token)?n.token.forEach(t=>{TA.instance.register(t,e)}):TA.instance.register(n.token,e))}}o(mj,"injectable");F_.default=mj});var AA=S(D_=>{"use strict";Object.defineProperty(D_,"__esModule",{value:!0});var gj=(Rh(),Yd(Ih)),yj=Pa();function _j(n=[]){return function(e){return n.forEach(t=>{var{token:r,options:i}=t,s=gj.__rest(t,["token","options"]);return yj.instance.register(r,s,i)}),e}}o(_j,"registry");D_.default=_j});var xA=S(N_=>{"use strict";Object.defineProperty(N_,"__esModule",{value:!0});var Sj=Wh(),vj=Pa();function bj(){return function(n){Sj.default()(n),vj.instance.registerSingleton(n)}}o(bj,"singleton");N_.default=bj});var CA=S(L_=>{"use strict";Object.defineProperty(L_,"__esModule",{value:!0});var wj=Io();function Ej(n,e){let t={token:n,multiple:!0,isOptional:e&&e.isOptional};return wj.defineInjectionTokenMetadata(t)}o(Ej,"injectAll");L_.default=Ej});var IA=S(k_=>{"use strict";Object.defineProperty(k_,"__esModule",{value:!0});var Tj=Io();function Aj(n,e,...t){let r={token:n,multiple:!0,transform:e,transformArgs:t};return Tj.defineInjectionTokenMetadata(r)}o(Aj,"injectAllWithTransform");k_.default=Aj});var RA=S(M_=>{"use strict";Object.defineProperty(M_,"__esModule",{value:!0});var xj=Io();function Cj(n,e,...t){return xj.defineInjectionTokenMetadata(n,{transformToken:e,args:t})}o(Cj,"injectWithTransform");M_.default=Cj});var PA=S(j_=>{"use strict";Object.defineProperty(j_,"__esModule",{value:!0});var Ij=Wh(),Rj=Pa();function Pj(n,e){return function(t){Ij.default()(t),Rj.instance.register(e||t,t,{lifecycle:n})}}o(Pj,"scoped");j_.default=Pj});var OA=S(hi=>{"use strict";Object.defineProperty(hi,"__esModule",{value:!0});var Oj=wA();Object.defineProperty(hi,"autoInjectable",{enumerable:!0,get:o(function(){return Oj.default},"get")});var Fj=EA();Object.defineProperty(hi,"inject",{enumerable:!0,get:o(function(){return Fj.default},"get")});var Dj=Wh();Object.defineProperty(hi,"injectable",{enumerable:!0,get:o(function(){return Dj.default},"get")});var Nj=AA();Object.defineProperty(hi,"registry",{enumerable:!0,get:o(function(){return Nj.default},"get")});var Lj=xA();Object.defineProperty(hi,"singleton",{enumerable:!0,get:o(function(){return Lj.default},"get")});var kj=CA();Object.defineProperty(hi,"injectAll",{enumerable:!0,get:o(function(){return kj.default},"get")});var Mj=IA();Object.defineProperty(hi,"injectAllWithTransform",{enumerable:!0,get:o(function(){return Mj.default},"get")});var jj=RA();Object.defineProperty(hi,"injectWithTransform",{enumerable:!0,get:o(function(){return jj.default},"get")});var $j=PA();Object.defineProperty(hi,"scoped",{enumerable:!0,get:o(function(){return $j.default},"get")})});var FA=S($_=>{"use strict";Object.defineProperty($_,"__esModule",{value:!0});function Bj(n){let e;return t=>(e==null&&(e=n(t)),e)}o(Bj,"instanceCachingFactory");$_.default=Bj});var DA=S(B_=>{"use strict";Object.defineProperty(B_,"__esModule",{value:!0});function Vj(n){let e=new WeakMap;return t=>{let r=e.get(t);return r==null&&(r=n(t),e.set(t,r)),r}}o(Vj,"instancePerContainerCachingFactory");B_.default=Vj});var NA=S(V_=>{"use strict";Object.defineProperty(V_,"__esModule",{value:!0});function Uj(n,e,t,r=!0){let i,s;return a=>{let c=n(a);return(!r||s!==c)&&((s=c)?i=a.resolve(e):i=a.resolve(t)),i}}o(Uj,"predicateAwareClassFactory");V_.default=Uj});var LA=S(Qu=>{"use strict";Object.defineProperty(Qu,"__esModule",{value:!0});var qj=FA();Object.defineProperty(Qu,"instanceCachingFactory",{enumerable:!0,get:o(function(){return qj.default},"get")});var Wj=DA();Object.defineProperty(Qu,"instancePerContainerCachingFactory",{enumerable:!0,get:o(function(){return Wj.default},"get")});var Gj=NA();Object.defineProperty(Qu,"predicateAwareClassFactory",{enumerable:!0,get:o(function(){return Gj.default},"get")})});var fe=S(Oa=>{"use strict";Object.defineProperty(Oa,"__esModule",{value:!0});var U_=(Rh(),Yd(Ih));if(typeof Reflect>"u"||!Reflect.getMetadata)throw new Error(`tsyringe requires a reflect polyfill. Please add 'import "reflect-metadata"' to the top of your entry point.`);var zj=mA();Object.defineProperty(Oa,"Lifecycle",{enumerable:!0,get:o(function(){return zj.Lifecycle},"get")});U_.__exportStar(OA(),Oa);U_.__exportStar(LA(),Oa);U_.__exportStar(__(),Oa);var Hj=Dh();Object.defineProperty(Oa,"delay",{enumerable:!0,get:o(function(){return Hj.delay},"get")});var Qj=Pa();Object.defineProperty(Oa,"container",{enumerable:!0,get:o(function(){return Qj.instance},"get")})});var Pc=S(Gh=>{"use strict";Object.defineProperty(Gh,"__esModule",{value:!0});Gh.NullLogger=void 0;Gh.NullLogger={debug(){},info(){},warn(){},error(){}}});var q_=S((lre,kA)=>{var Oc=class{static{o(this,"Wildcard")}constructor(){return Kj||this}equals(e){return e&&this.termType===e.termType}};Object.defineProperty(Oc.prototype,"value",{enumerable:!0,value:"*"});Object.defineProperty(Oc.prototype,"termType",{enumerable:!0,value:"Wildcard"});var Kj=new Oc;kA.exports.Wildcard=Oc});var jA=S((fre,MA)=>{var Yj=(function(){var n=o(function(R,C,P,N){for(P=P||{},N=R.length;N--;P[R[N]]=C);return P},"o"),e=[6,12,13,15,16,24,32,36,41,45,100,110,113,115,116,123,126,131,197,224,229,308,329,330,331,332,333],t=[2,247],r=[100,110,113,115,116,123,126,131,329,330,331,332,333],i=[2,409],s=[1,18],a=[1,27],c=[13,16,45,197,224,229,308],l=[28,29,53],u=[28,53],f=[1,42],d=[1,45],h=[1,41],p=[1,44],y=[123,126],v=[1,67],w=[39,45,87],b=[13,16,45,197,224,308],A=[1,87],I=[2,281],j=[1,86],V=[13,16,45,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],te=[6,28,29,53,63,70,73,81,83,85],z=[6,13,16,28,29,53,63,70,73,81,83,85,87,308],G=[6,13,16,28,29,45,53,63,70,73,81,82,83,85,87,89,197,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314],F=[6,13,16,28,29,31,39,45,47,48,53,63,70,73,81,82,83,85,87,89,109,112,121,123,126,128,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,337,338,340,341,342,343,344,345,346],$=[13,16,308],re=[112,132,327,334],Ye=[13,16,112,132,308],at=[1,111],Ot=[1,117],ot=[112,132,327,328,334],lt=[13,16,112,132,308,328],Xe=[28,29,45,53,87],se=[1,138],U=[1,151],ut=[1,128],pt=[1,127],H=[1,129],Re=[1,140],qe=[1,141],ne=[1,142],We=[1,143],Ge=[1,144],Be=[1,145],ze=[1,147],Ce=[1,148],Ve=[2,457],Pe=[1,158],Ue=[1,159],He=[1,160],de=[1,152],ge=[1,153],ye=[1,156],he=[1,171],pe=[1,172],me=[1,173],ue=[1,174],_e=[1,175],Se=[1,176],ve=[1,167],be=[1,168],ce=[1,169],we=[1,170],et=[1,157],Qe=[1,166],$e=[1,161],E=[1,162],T=[1,163],x=[1,164],O=[1,165],Z=[6,13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335],_t=[1,195],Ct=[6,31,73,81,83,85],De=[2,285],q=[1,199],W=[1,201],Q=[6,31,70,73,81,83,85],Y=[2,283],Ie=[1,207],rt=[1,218],nt=[1,223],Pr=[1,219],bn=[1,225],kn=[1,226],sn=[1,224],u2=[6,63,70,73,81,83,85],f2=[1,236],d2=[2,334],h2=[1,243],p2=[1,241],Or=[6,193],Id=[2,349],m2=[2,339],Ea=[28,128],g2=[47,48,193,272],Rd=[47,48,193,242,272],dc=[47,48,193,242,246,272],hc=[47,48,193,242,246,250,263,265,272,290,297,298,299,300,301,302,341,342,343,344,345,346],gr=[39,47,48,193,242,246,250,263,265,272,290,297,298,299,300,301,302,338,341,342,343,344,345,346],y2=[1,271],_2=[1,270],Xt=[6,13,16,29,31,39,45,47,48,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,338,341,342,343,344,345,346,347,348,349,350,351],S2=[1,281],v2=[1,280],an=[13,16,29,31,39,45,47,48,82,85,87,89,112,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346],vu=[45,89],Pd=[13,16,29,31,39,45,47,48,82,85,87,89,112,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346],Od=[13,16,31,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],Fd=[31,89],Dd=[48,87],uo=[6,13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337,338],es=[6,13,16,39,45,48,82,87,89,231,263,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337,338,340],b2=[1,313],pc=[6,85],Fy=[6,31,81,83,85],w2=[2,361],Ls=[2,353],fo=[1,343],bu=[31,112,335],ks=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],Dy=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335],E2=[6,109,193],ho=[31,112],Jt=[13,16,45,82,87,224,263,265,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312,346,347,348,349,350,351],Ny=[1,390],Ly=[1,391],Ta=[13,16,87,197,308,314],T2=[13,16,39,45,82,87,224,263,265,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312,346,347,348,349,350,351],Nd=[1,417],Ld=[1,418],A2=[13,16,48,197,229,308],Aa=[6,31,85],x2=[6,13,16,31,45,73,81,83,85,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],ky=[6,13,16,29,31,45,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,231,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,346,347,348,349,350,351],po=[29,31,85,112,159,160,161,163,164],kd=[1,443],Md=[1,444],C2=[1,449],mo=[31,112,193,232,318,335],jd=[13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],I2=[13,16,31,45,48,82,87,89,112,193,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],My=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],wu=[13,16,31,48,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],Eu=[31,45],R2=[1,507],P2=[1,508],O2=[6,13,16,29,31,39,45,47,48,63,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,336,338,341,342,343,344,345,346,347,348,349,350,351],$d=[29,31,85,112,159,160,161,163,164,335],go=[6,13,16,31,45,70,73,81,83,85,87,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],F2=[13,16,31,45,48,82,87,89,112,193,197,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],D2=[2,352],jy=[13,16,197,308,314],N2=[1,565],mc=[6,13,16,31,45,76,78,81,83,85,87,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],L2=[13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],Ms=[13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335],k2=[13,16,87,308],js=[2,364],gc=[29,31,85,112,159,160,161,163,164,193,232,318,335],Bd=[31,112,193,232,272,318,335],$s=[2,359],M2=[13,16,48,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],Vd=[29,31,85,112,159,160,161,163,164,193,232,272,318,335],j2=[13,16,31,45,82,87,89,112,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],$2=[2,347],$y={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,QueryOrUpdate:3,Prologue:4,QueryOrUpdate_group0:5,EOF:6,Query:7,Qry:8,Query_option0:9,Prologue_repetition0:10,BaseDecl:11,BASE:12,IRIREF:13,PrefixDecl:14,PREFIX:15,PNAME_NS:16,SelectClauseWildcard:17,Qry_repetition0:18,WhereClause:19,SolutionModifierNoGroup:20,SelectClauseVars:21,Qry_repetition1:22,SolutionModifier:23,CONSTRUCT:24,ConstructTemplate:25,Qry_repetition2:26,Qry_repetition3:27,WHERE:28,"{":29,Qry_option0:30,"}":31,DESCRIBE:32,Qry_group0:33,Qry_repetition4:34,Qry_option1:35,ASK:36,Qry_repetition5:37,SelectClauseBase:38,"*":39,SelectClauseVars_repetition_plus0:40,SELECT:41,SelectClauseBase_option0:42,SelectClauseItem:43,Var:44,"(":45,Expression:46,AS:47,")":48,SubSelect:49,SubSelect_option0:50,SubSelect_option1:51,DatasetClause:52,FROM:53,DatasetClause_option0:54,iri:55,WhereClause_option0:56,GroupGraphPattern:57,SolutionModifier_option0:58,SolutionModifierNoGroup_option0:59,SolutionModifierNoGroup_option1:60,SolutionModifierNoGroup_option2:61,GroupClause:62,GROUP:63,BY:64,GroupClause_repetition_plus0:65,GroupCondition:66,BuiltInCall:67,FunctionCall:68,HavingClause:69,HAVING:70,HavingClause_repetition_plus0:71,OrderClause:72,ORDER:73,OrderClause_repetition_plus0:74,OrderCondition:75,ASC:76,BrackettedExpression:77,DESC:78,Constraint:79,LimitOffsetClauses:80,LIMIT:81,INTEGER:82,OFFSET:83,ValuesClause:84,VALUES:85,InlineData:86,VAR:87,InlineData_repetition0:88,NIL:89,InlineData_repetition1:90,InlineData_repetition_plus2:91,InlineData_repetition3:92,DataBlock:93,DataBlockValueList:94,DataBlockValueList_repetition_plus0:95,Update:96,Update_repetition0:97,Update1:98,Update_option0:99,LOAD:100,Update1_option0:101,Update1_option1:102,Update1_group0:103,Update1_option2:104,GraphRefAll:105,Update1_group1:106,Update1_option3:107,GraphOrDefault:108,TO:109,CREATE:110,Update1_option4:111,GRAPH:112,INSERTDATA:113,QuadPattern:114,DELETEDATA:115,DELETEWHERE:116,Update1_option5:117,InsertDeleteClause:118,Update1_repetition0:119,IntoGraphClause:120,INTO:121,GraphRef:122,DELETE:123,InsertDeleteClause_option0:124,InsertClause:125,INSERT:126,UsingClause:127,USING:128,UsingClause_option0:129,WithClause:130,WITH:131,DEFAULT:132,GraphOrDefault_option0:133,GraphRefAll_group0:134,Quads:135,Quads_option0:136,Quads_repetition0:137,QuadsNotTriples:138,VarOrIri:139,QuadsNotTriples_option0:140,QuadsNotTriples_option1:141,QuadsNotTriples_option2:142,TriplesTemplate:143,TriplesTemplate_repetition0:144,TriplesSameSubject:145,TriplesTemplate_option0:146,GroupGraphPatternSub:147,GroupGraphPatternSub_option0:148,GroupGraphPatternSub_repetition0:149,GroupGraphPatternSubTail:150,GraphPatternNotTriples:151,GroupGraphPatternSubTail_option0:152,GroupGraphPatternSubTail_option1:153,TriplesBlock:154,TriplesBlock_repetition0:155,TriplesSameSubjectPath:156,TriplesBlock_option0:157,GroupOrUnionGraphPattern:158,OPTIONAL:159,MINUS:160,SERVICE:161,GraphPatternNotTriples_option0:162,FILTER:163,BIND:164,InlineDataOneVar:165,InlineDataFull:166,InlineDataOneVar_repetition0:167,InlineDataFull_repetition0:168,InlineDataFull_repetition_plus1:169,InlineDataFull_repetition2:170,DataBlockValue:171,Literal:172,QuotedTriple:173,UNDEF:174,GroupOrUnionGraphPattern_repetition0:175,ArgList:176,ArgList_option0:177,ArgList_repetition0:178,ExpressionList:179,ExpressionList_repetition0:180,ConstructTemplate_option0:181,ConstructTriples:182,ConstructTriples_repetition0:183,ConstructTriples_option0:184,VarOrTermOrQuotedTP:185,PropertyListNotEmpty:186,TriplesNode:187,PropertyList:188,PropertyList_option0:189,VerbObjectList:190,PropertyListNotEmpty_repetition0:191,SemiOptionalVerbObjectList:192,";":193,SemiOptionalVerbObjectList_option0:194,Verb:195,ObjectList:196,a:197,ObjectList_repetition0:198,Object:199,GraphNode:200,Object_option0:201,PropertyListPathNotEmpty:202,TriplesNodePath:203,TriplesSameSubjectPath_option0:204,O:205,PropertyListPathNotEmpty_repetition0:206,PropertyListPathNotEmptyTail:207,O_group0:208,ObjectListPath:209,ObjectListPath_repetition0:210,ObjectPath:211,GraphNodePath:212,ObjectPath_option0:213,Path:214,Path_repetition0:215,PathSequence:216,PathSequence_repetition0:217,PathEltOrInverse:218,PathElt:219,PathPrimary:220,PathElt_option0:221,PathEltOrInverse_option0:222,IriOrA:223,"!":224,PathNegatedPropertySet:225,PathOneInPropertySet:226,PathNegatedPropertySet_repetition0:227,PathNegatedPropertySet_option0:228,"^":229,TriplesNode_repetition_plus0:230,"[":231,"]":232,TriplesNodePath_repetition_plus0:233,VarOrTermOrQuotedTPExpr:234,VarOrTerm:235,GraphTerm:236,BlankNode:237,ConditionalOrExpression:238,ConditionalAndExpression:239,ConditionalOrExpression_repetition0:240,ConditionalOrExpressionTail:241,"||":242,RelationalExpression:243,ConditionalAndExpression_repetition0:244,ConditionalAndExpressionTail:245,"&&":246,NumericExpression:247,RelationalExpression_group0:248,RelationalExpression_option0:249,IN:250,MultiplicativeExpression:251,NumericExpression_repetition0:252,AdditiveExpressionTail:253,AdditiveExpressionTail_group0:254,NumericLiteralPositive:255,AdditiveExpressionTail_repetition0:256,NumericLiteralNegative:257,AdditiveExpressionTail_repetition1:258,UnaryExpression:259,MultiplicativeExpression_repetition0:260,MultiplicativeExpressionTail:261,MultiplicativeExpressionTail_group0:262,"+":263,PrimaryExpression:264,"-":265,ExprQuotedTP:266,Aggregate:267,FUNC_ARITY0:268,FUNC_ARITY1:269,FUNC_ARITY1_SPARQL_STAR:270,FUNC_ARITY2:271,",":272,FUNC_ARITY3:273,FUNC_ARITY3_SPARQL_STAR:274,BuiltInCall_group0:275,BOUND:276,BNODE:277,BuiltInCall_option0:278,EXISTS:279,COUNT:280,Aggregate_option0:281,Aggregate_group0:282,FUNC_AGGREGATE:283,Aggregate_option1:284,GROUP_CONCAT:285,Aggregate_option2:286,Aggregate_option3:287,GroupConcatSeparator:288,SEPARATOR:289,"=":290,String:291,LANGTAG:292,"^^":293,DECIMAL:294,DOUBLE:295,BOOLEAN:296,INTEGER_POSITIVE:297,DECIMAL_POSITIVE:298,DOUBLE_POSITIVE:299,INTEGER_NEGATIVE:300,DECIMAL_NEGATIVE:301,DOUBLE_NEGATIVE:302,STRING_LITERAL1:303,STRING_LITERAL2:304,STRING_LITERAL_LONG1:305,STRING_LITERAL_LONG2:306,PrefixedName:307,PNAME_LN:308,BLANK_NODE_LABEL:309,ANON:310,QuotedTP:311,"<<":312,qtSubjectOrObject:313,">>":314,DataValueTerm:315,AnnotationPattern:316,"{|":317,"|}":318,AnnotationPatternPath:319,ExprVarOrTerm:320,QueryOrUpdate_group0_option0:321,Prologue_repetition0_group0:322,Qry_group0_repetition_plus0:323,SelectClauseBase_option0_group0:324,DISTINCT:325,REDUCED:326,NAMED:327,SILENT:328,CLEAR:329,DROP:330,ADD:331,MOVE:332,COPY:333,ALL:334,".":335,UNION:336,"|":337,"/":338,PathElt_option0_group0:339,"?":340,"!=":341,"<":342,">":343,"<=":344,">=":345,NOT:346,CONCAT:347,COALESCE:348,SUBSTR:349,REGEX:350,REPLACE:351,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",12:"BASE",13:"IRIREF",15:"PREFIX",16:"PNAME_NS",24:"CONSTRUCT",28:"WHERE",29:"{",31:"}",32:"DESCRIBE",36:"ASK",39:"*",41:"SELECT",45:"(",47:"AS",48:")",53:"FROM",63:"GROUP",64:"BY",70:"HAVING",73:"ORDER",76:"ASC",78:"DESC",81:"LIMIT",82:"INTEGER",83:"OFFSET",85:"VALUES",87:"VAR",89:"NIL",100:"LOAD",109:"TO",110:"CREATE",112:"GRAPH",113:"INSERTDATA",115:"DELETEDATA",116:"DELETEWHERE",121:"INTO",123:"DELETE",126:"INSERT",128:"USING",131:"WITH",132:"DEFAULT",159:"OPTIONAL",160:"MINUS",161:"SERVICE",163:"FILTER",164:"BIND",174:"UNDEF",193:";",197:"a",224:"!",229:"^",231:"[",232:"]",242:"||",246:"&&",250:"IN",263:"+",265:"-",268:"FUNC_ARITY0",269:"FUNC_ARITY1",270:"FUNC_ARITY1_SPARQL_STAR",271:"FUNC_ARITY2",272:",",273:"FUNC_ARITY3",274:"FUNC_ARITY3_SPARQL_STAR",276:"BOUND",277:"BNODE",279:"EXISTS",280:"COUNT",283:"FUNC_AGGREGATE",285:"GROUP_CONCAT",289:"SEPARATOR",290:"=",292:"LANGTAG",293:"^^",294:"DECIMAL",295:"DOUBLE",296:"BOOLEAN",297:"INTEGER_POSITIVE",298:"DECIMAL_POSITIVE",299:"DOUBLE_POSITIVE",300:"INTEGER_NEGATIVE",301:"DECIMAL_NEGATIVE",302:"DOUBLE_NEGATIVE",303:"STRING_LITERAL1",304:"STRING_LITERAL2",305:"STRING_LITERAL_LONG1",306:"STRING_LITERAL_LONG2",308:"PNAME_LN",309:"BLANK_NODE_LABEL",310:"ANON",312:"<<",314:">>",317:"{|",318:"|}",325:"DISTINCT",326:"REDUCED",327:"NAMED",328:"SILENT",329:"CLEAR",330:"DROP",331:"ADD",332:"MOVE",333:"COPY",334:"ALL",335:".",336:"UNION",337:"|",338:"/",340:"?",341:"!=",342:"<",343:">",344:"<=",345:">=",346:"NOT",347:"CONCAT",348:"COALESCE",349:"SUBSTR",350:"REGEX",351:"REPLACE"},productions_:[0,[3,3],[7,2],[4,1],[11,2],[14,3],[8,4],[8,4],[8,5],[8,7],[8,5],[8,4],[17,2],[21,2],[38,2],[43,1],[43,5],[49,4],[49,4],[52,3],[19,2],[23,2],[20,3],[62,3],[66,1],[66,1],[66,3],[66,5],[66,1],[69,2],[72,3],[75,2],[75,2],[75,1],[75,1],[80,2],[80,2],[80,4],[80,4],[84,2],[86,4],[86,4],[86,6],[86,2],[94,3],[96,3],[98,4],[98,3],[98,5],[98,4],[98,2],[98,2],[98,2],[98,5],[120,2],[118,3],[118,1],[125,2],[127,3],[130,2],[108,1],[108,2],[122,2],[105,1],[105,1],[114,3],[135,2],[138,7],[143,3],[57,3],[57,3],[147,2],[150,3],[154,3],[151,1],[151,2],[151,2],[151,3],[151,4],[151,2],[151,6],[151,1],[93,1],[93,1],[165,4],[166,4],[166,6],[171,1],[171,1],[171,1],[171,1],[158,2],[79,1],[79,1],[79,1],[68,2],[176,1],[176,5],[179,1],[179,4],[25,3],[182,3],[145,2],[145,2],[188,1],[186,2],[192,2],[190,2],[195,1],[195,1],[196,2],[199,2],[156,2],[156,2],[202,2],[207,1],[207,2],[205,2],[209,2],[211,2],[214,2],[216,2],[219,2],[218,2],[220,1],[220,2],[220,3],[225,1],[225,1],[225,4],[226,1],[226,2],[187,3],[187,3],[203,3],[203,3],[200,1],[200,1],[212,1],[212,1],[234,1],[235,1],[235,1],[139,1],[139,1],[44,1],[236,1],[236,1],[236,1],[236,1],[46,1],[238,2],[241,2],[239,2],[245,2],[243,1],[243,3],[243,4],[247,2],[253,2],[253,2],[253,2],[251,2],[261,2],[259,2],[259,2],[259,2],[259,1],[264,1],[264,1],[264,1],[264,1],[264,1],[264,1],[264,1],[77,3],[67,1],[67,2],[67,4],[67,4],[67,6],[67,8],[67,8],[67,2],[67,4],[67,2],[67,4],[67,3],[267,5],[267,5],[267,6],[288,4],[172,1],[172,2],[172,3],[172,1],[172,1],[172,1],[172,1],[172,1],[172,1],[255,1],[255,1],[255,1],[257,1],[257,1],[257,1],[291,1],[291,1],[291,1],[291,1],[55,1],[55,1],[307,1],[307,1],[237,1],[237,1],[311,5],[173,5],[313,1],[313,1],[313,1],[313,1],[313,1],[315,1],[315,1],[315,1],[185,1],[185,1],[185,1],[316,3],[319,3],[266,5],[320,1],[320,1],[320,1],[223,1],[223,1],[321,0],[321,1],[5,1],[5,1],[5,1],[9,0],[9,1],[322,1],[322,1],[10,0],[10,2],[18,0],[18,2],[22,0],[22,2],[26,0],[26,2],[27,0],[27,2],[30,0],[30,1],[323,1],[323,2],[33,1],[33,1],[34,0],[34,2],[35,0],[35,1],[37,0],[37,2],[40,1],[40,2],[324,1],[324,1],[42,0],[42,1],[50,0],[50,1],[51,0],[51,1],[54,0],[54,1],[56,0],[56,1],[58,0],[58,1],[59,0],[59,1],[60,0],[60,1],[61,0],[61,1],[65,1],[65,2],[71,1],[71,2],[74,1],[74,2],[88,0],[88,2],[90,0],[90,2],[91,1],[91,2],[92,0],[92,2],[95,1],[95,2],[97,0],[97,4],[99,0],[99,2],[101,0],[101,1],[102,0],[102,1],[103,1],[103,1],[104,0],[104,1],[106,1],[106,1],[106,1],[107,0],[107,1],[111,0],[111,1],[117,0],[117,1],[119,0],[119,2],[124,0],[124,1],[129,0],[129,1],[133,0],[133,1],[134,1],[134,1],[134,1],[136,0],[136,1],[137,0],[137,2],[140,0],[140,1],[141,0],[141,1],[142,0],[142,1],[144,0],[144,3],[146,0],[146,1],[148,0],[148,1],[149,0],[149,2],[152,0],[152,1],[153,0],[153,1],[155,0],[155,3],[157,0],[157,1],[162,0],[162,1],[167,0],[167,2],[168,0],[168,2],[169,1],[169,2],[170,0],[170,2],[175,0],[175,3],[177,0],[177,1],[178,0],[178,3],[180,0],[180,3],[181,0],[181,1],[183,0],[183,3],[184,0],[184,1],[189,0],[189,1],[191,0],[191,2],[194,0],[194,1],[198,0],[198,3],[201,0],[201,1],[204,0],[204,1],[206,0],[206,2],[208,1],[208,1],[210,0],[210,3],[213,0],[213,1],[215,0],[215,3],[217,0],[217,3],[339,1],[339,1],[339,1],[221,0],[221,1],[222,0],[222,1],[227,0],[227,3],[228,0],[228,1],[230,1],[230,2],[233,1],[233,2],[240,0],[240,2],[244,0],[244,2],[248,1],[248,1],[248,1],[248,1],[248,1],[248,1],[249,0],[249,1],[252,0],[252,2],[254,1],[254,1],[256,0],[256,2],[258,0],[258,2],[260,0],[260,2],[262,1],[262,1],[275,1],[275,1],[275,1],[275,1],[275,1],[278,0],[278,1],[281,0],[281,1],[282,1],[282,1],[284,0],[284,1],[286,0],[286,1],[287,0],[287,1]],performAction:o(function(C,P,N,ie,Oe,g,cn){var _=g.length-1;switch(Oe){case 1:if(g[_-1]=g[_-1]||{},ke.base&&(g[_-1].base=ke.base),ke.base="",g[_-1].prefixes=ke.prefixes,ke.prefixes=null,ke.pathOnly){if(g[_-1].type==="path"||"termType"in g[_-1])return g[_-1];throw new Error("Received full SPARQL query in path only mode")}else if(g[_-1].type==="path"||"termType"in g[_-1])throw new Error("Received only path in full SPARQL mode");if(g[_-1].type==="update"){let St={};for(let jt of g[_-1].updates)if(jt.updateType==="insert"){let it={};for(let ft of jt.insert)if(ft.type==="bgp"||ft.type==="graph")for(let wn of ft.triples)wn.subject.termType==="BlankNode"&&(it[wn.subject.value]=!0),wn.predicate.termType==="BlankNode"&&(it[wn.predicate.value]=!0),wn.object.termType==="BlankNode"&&(it[wn.object.value]=!0);for(let ft of Object.keys(it)){if(St[ft])throw new Error("Detected reuse blank node across different INSERT DATA clauses");St[ft]=!0}}}return g[_-1];case 2:this.$={...g[_-1],...g[_],type:"query"};break;case 4:ke.base=Tu(g[_]);break;case 5:ke.prefixes||(ke.prefixes={}),g[_-1]=g[_-1].substr(0,g[_-1].length-1),g[_]=Tu(g[_]),ke.prefixes[g[_-1]]=g[_];break;case 6:this.$={...g[_-3],...So(g[_-2]),...g[_-1],...g[_]};break;case 7:if(!ke.skipValidation&&(Hy(g[_-3].variables.map(jt=>zy(jt.expression))).some(jt=>jt.aggregation==="count"&&!(jt.expression instanceof Ud))||g[_].group)){for(let jt of g[_-3].variables)if(jt.termType==="Variable"){if(!g[_].group||!g[_].group.map(it=>vc(it)).includes(vc(jt)))throw Error("Projection of ungrouped variable (?"+vc(jt)+")")}else if(zy(jt.expression).length===0){let it=tL(jt.expression);for(let ft of it)if(!g[_].group||!g[_].group.map||!g[_].group.map(wn=>vc(wn)).includes(vc(ft)))throw Error("Use of ungrouped variable in projection of operation (?"+vc(ft)+")")}}let is=g[_-1].where.filter(St=>St.type==="query");if(is.length>0){let St=g[_-3].variables.filter(it=>it.variable&&it.variable.value).map(it=>it.variable.value),jt=Hy(is.map(it=>it.variables)).map(it=>it.value||it.variable.value);for(let it of St)if(jt.indexOf(it)>=0)throw Error("Target id of 'AS' (?"+it+") already used in subquery")}this.$=Ht(g[_-3],So(g[_-2]),g[_-1],g[_]);break;case 8:this.$=Ht({queryType:"CONSTRUCT",template:g[_-3]},So(g[_-2]),g[_-1],g[_]);break;case 9:this.$=Ht({queryType:"CONSTRUCT",template:g[_-2]=g[_-2]?g[_-2].triples:[]},So(g[_-5]),{where:[{type:"bgp",triples:_o([],g[_-2])}]},g[_]);break;case 10:this.$=Ht({queryType:"DESCRIBE",variables:g[_-3]==="*"?[new Ud]:g[_-3]},So(g[_-2]),g[_-1],g[_]);break;case 11:this.$=Ht({queryType:"ASK"},So(g[_-2]),g[_-1],g[_]);break;case 12:this.$=Ht(g[_-1],{variables:[new Ud]});break;case 13:let Ru=g[_].map(St=>St.value||St.variable.value),bc=rL(Ru);if(bc.length>0)throw Error("Two or more of the resulting columns have the same name (?"+bc[0]+")");this.$=Ht(g[_-1],{variables:g[_]});break;case 14:this.$=Ht({queryType:"SELECT"},g[_]&&(g[_-1]=on(g[_]),g[_]={},g[_][g[_-1]]=!0,g[_]));break;case 16:case 27:this.$=yc(g[_-3],{variable:g[_-1]});break;case 17:case 18:this.$=Ht(g[_-3],g[_-2],g[_-1],g[_],{type:"query"});break;case 19:case 58:this.$={iri:g[_],named:!!g[_-1]};break;case 20:this.$={where:g[_].patterns};break;case 21:this.$=Ht(g[_-1],g[_]);break;case 22:this.$=Ht(g[_-2],g[_-1],g[_]);break;case 23:this.$={group:g[_]};break;case 24:case 25:case 28:case 31:case 33:case 34:this.$=yc(g[_]);break;case 26:this.$=yc(g[_-1]);break;case 29:this.$={having:g[_]};break;case 30:this.$={order:g[_]};break;case 32:this.$=yc(g[_],{descending:!0});break;case 35:this.$={limit:Sc(g[_])};break;case 36:this.$={offset:Sc(g[_])};break;case 37:this.$={limit:Sc(g[_-2]),offset:Sc(g[_])};break;case 38:this.$={limit:Sc(g[_]),offset:Sc(g[_-2])};break;case 39:case 43:this.$={type:"values",values:g[_]};break;case 40:case 84:this.$=g[_-1].map(St=>({[g[_-3]]:St}));break;case 41:case 85:this.$=g[_-1].map(()=>({}));break;case 42:case 86:var ns=g[_-4].length;g[_-4]=g[_-4].map(By),this.$=g[_-1].map(function(St){if(St.length!==ns)throw Error("Inconsistent VALUES length");for(var jt={},it=0;it<ns;it++)jt["?"+g[_-4][it].value]=St[it];return jt});break;case 44:case 65:case 100:case 126:case 175:this.$=g[_-1];break;case 45:this.$={type:"update",updates:Bs(g[_-2],g[_-1])};break;case 46:this.$=Ht({type:"load",silent:!!g[_-2],source:g[_-1]},g[_]&&{destination:g[_]});break;case 47:this.$={type:on(g[_-2]),silent:!!g[_-1],graph:g[_]};break;case 48:this.$={type:on(g[_-4]),silent:!!g[_-3],source:g[_-2],destination:g[_]};break;case 49:this.$={type:"create",silent:!!g[_-2],graph:{type:"graph",name:g[_]}};break;case 50:this.$={updateType:"insert",insert:Y2(g[_])};break;case 51:this.$={updateType:"delete",delete:Yy(Y2(g[_]))};break;case 52:this.$={updateType:"deletewhere",delete:Yy(g[_])};break;case 53:this.$={updateType:"insertdelete",...g[_-4],...g[_-3],...So(g[_-2],"using"),where:g[_].patterns};break;case 54:case 57:case 62:case 167:case 191:case 236:this.$=g[_];break;case 55:this.$={delete:Yy(g[_-1]),insert:g[_]||[]};break;case 56:this.$={delete:[],insert:g[_]};break;case 59:this.$={graph:g[_]};break;case 60:this.$={type:"graph",default:!0};break;case 61:case 63:this.$={type:"graph",name:g[_]};break;case 64:this.$={[on(g[_])]:!0};break;case 66:this.$=g[_-1]?ts(g[_],[g[_-1]]):ts(g[_]);break;case 67:var Cu=Ht(g[_-3]||{triples:[]},{type:"graph",name:g[_-5]});this.$=g[_]?[Cu,g[_]]:[Cu];break;case 68:case 73:this.$={type:"bgp",triples:ts(g[_-2],[g[_-1]])};break;case 69:this.$={type:"group",patterns:[g[_-1]]};break;case 70:for(let St of g[_-1].filter(jt=>jt.type==="bind")){let jt=g[_-1].indexOf(St),it=new Set;for(let ft of g[_-1].slice(0,jt))(ft.type==="group"||ft.type==="bgp")&&Q2(ft).forEach(wn=>it.add(wn));if(it.has(St.variable.value))throw Error("Variable used to bind is already bound (?"+St.variable.value+")")}this.$={type:"group",patterns:g[_-1]};break;case 71:this.$=g[_-1]?ts([g[_-1]],g[_]):ts(g[_]);break;case 72:this.$=g[_]?[g[_-2],g[_]]:g[_-2];break;case 75:this.$=Ht(g[_],{type:"optional"});break;case 76:this.$=Ht(g[_],{type:"minus"});break;case 77:this.$=Ht(g[_],{type:"graph",name:g[_-1]});break;case 78:this.$=Ht(g[_],{type:"service",name:g[_-1],silent:!!g[_-2]});break;case 79:this.$={type:"filter",expression:g[_]};break;case 80:this.$={type:"bind",variable:g[_-1],expression:g[_-3]};break;case 89:this.$=xu(g[_]);break;case 90:this.$=void 0;break;case 91:this.$=g[_-1].length?{type:"union",patterns:ts(g[_-1].map(Uy),[Uy(g[_])])}:g[_];break;case 95:this.$={...g[_],function:g[_-1]};break;case 96:this.$={type:"functionCall",args:[]};break;case 97:this.$={type:"functionCall",args:Bs(g[_-2],g[_-1]),distinct:!!g[_-3]};break;case 98:case 115:case 128:case 247:case 249:case 251:case 253:case 255:case 263:case 267:case 297:case 299:case 303:case 307:case 328:case 341:case 349:case 355:case 361:case 367:case 369:case 373:case 375:case 379:case 381:case 385:case 391:case 395:case 401:case 405:case 409:case 411:case 420:case 428:case 430:case 440:case 444:case 446:case 448:this.$=[];break;case 99:this.$=Bs(g[_-2],g[_-1]);break;case 101:this.$=ts(g[_-2],[g[_-1]]);break;case 102:case 112:this.$=Ky(g[_].map(St=>Ht(Vs(g[_-1]),St)));break;case 103:this.$=Ky(_o(g[_].map(St=>Ht(Vs(g[_-1].entity),St)),g[_-1].triples));break;case 105:this.$=ts([g[_-1]],g[_]);break;case 106:this.$=ts(g[_]);break;case 107:this.$=Gy(g[_-1],g[_]);break;case 109:case 237:this.$=ke.factory.namedNode(GN);break;case 110:case 118:this.$=Bs(g[_-1],g[_]);break;case 111:this.$=g[_]?{annotation:g[_],object:g[_-1]}:g[_-1];break;case 113:this.$=g[_]?Ky(_o(g[_].map(St=>Ht(Vs(g[_-1].entity),St)),g[_-1].triples)):g[_-1].triples;break;case 114:this.$=Gy(...g[_-1],g[_]);break;case 116:this.$=Gy(...g[_]);break;case 117:case 159:case 163:this.$=[g[_-1],g[_]];break;case 119:this.$=g[_]?{object:g[_-1],annotation:g[_]}:g[_-1];break;case 120:this.$=g[_-1].length?_c("|",Bs(g[_-1],g[_])):g[_];break;case 121:this.$=g[_-1].length?_c("/",Bs(g[_-1],g[_])):g[_];break;case 122:this.$=g[_]?_c(g[_],[g[_-1]]):g[_-1];break;case 123:this.$=g[_-1]?_c(g[_-1],[g[_]]):g[_];break;case 125:case 131:this.$=_c(g[_-1],[g[_]]);break;case 129:this.$=_c("|",Bs(g[_-2],g[_-1]));break;case 132:case 134:this.$=ZN(g[_-1]);break;case 133:case 135:this.$=eL(g[_-1]);break;case 140:this.$={entity:g[_],triples:[]};break;case 145:this.$=By(g[_]);break;case 149:this.$=ke.factory.namedNode(B2);break;case 151:case 153:case 158:case 162:this.$=Vy(g[_-1],g[_]);break;case 152:this.$=["||",g[_]];break;case 154:this.$=["&&",g[_]];break;case 156:this.$=Fr(g[_-1],[g[_-2],g[_]]);break;case 157:this.$=Fr(g[_-2]?"notin":"in",[g[_-3],g[_]]);break;case 160:this.$=["+",Vy(g[_-1],g[_])];break;case 161:var Gd=rs(g[_-1].value.replace("-",""),g[_-1].datatype);this.$=["-",Vy(Gd,g[_])];break;case 164:this.$=Fr("UPLUS",[g[_]]);break;case 165:this.$=Fr(g[_-1],[g[_]]);break;case 166:this.$=Fr("UMINUS",[g[_]]);break;case 177:this.$=Fr(on(g[_-1]));break;case 178:this.$=Fr(on(g[_-3]),[g[_-1]]);break;case 179:this.$=xu(Fr(on(g[_-3]),[g[_-1]]));break;case 180:this.$=Fr(on(g[_-5]),[g[_-3],g[_-1]]);break;case 181:this.$=Fr(on(g[_-7]),[g[_-5],g[_-3],g[_-1]]);break;case 182:this.$=xu(Fr(on(g[_-7]),[g[_-5],g[_-3],g[_-1]]));break;case 183:this.$=Fr(on(g[_-1]),g[_]);break;case 184:this.$=Fr("bound",[By(g[_-1])]);break;case 185:this.$=Fr(g[_-1],[]);break;case 186:this.$=Fr(g[_-3],[g[_-1]]);break;case 187:this.$=Fr(g[_-2]?"notexists":"exists",[Uy(g[_])]);break;case 188:case 189:this.$=yc(g[_-1],{type:"aggregate",aggregation:on(g[_-4]),distinct:!!g[_-2]});break;case 190:this.$=yc(g[_-2],{type:"aggregate",aggregation:on(g[_-5]),distinct:!!g[_-3],separator:typeof g[_-1]=="string"?g[_-1]:" "});break;case 192:this.$=rs(g[_]);break;case 193:this.$=KN(g[_-1],on(g[_].substr(1)));break;case 194:this.$=rs(g[_-2],g[_]);break;case 195:case 204:this.$=rs(g[_],V2);break;case 196:case 205:this.$=rs(g[_],U2);break;case 197:case 206:this.$=rs(on(g[_]),q2);break;case 200:this.$=rs(g[_].toLowerCase(),QN);break;case 201:this.$=rs(g[_].substr(1),V2);break;case 202:this.$=rs(g[_].substr(1),U2);break;case 203:this.$=rs(g[_].substr(1).toLowerCase(),q2);break;case 207:case 208:this.$=H2(g[_],1);break;case 209:case 210:this.$=H2(g[_],3);break;case 211:this.$=ke.factory.namedNode(Tu(g[_]));break;case 213:var zd=g[_].indexOf(":"),Iu=g[_].substr(0,zd),Hd=ke.prefixes[Iu];if(!Hd)throw new Error("Unknown prefix: "+Iu);var Vt=Tu(Hd+g[_].substr(zd+1));this.$=ke.factory.namedNode(Vt);break;case 214:if(g[_]=g[_].substr(0,g[_].length-1),!(g[_]in ke.prefixes))throw new Error("Unknown prefix: "+g[_]);var Vt=Tu(ke.prefixes[g[_]]);this.$=ke.factory.namedNode(Vt);break;case 215:this.$=Au(g[_].replace(/^(_:)/,""));break;case 216:this.$=Au();break;case 217:case 218:case 232:this.$=xu(qy(g[_-3],g[_-2],g[_-1]));break;case 230:case 231:this.$=xu(g[_-1]);break;case 248:case 250:case 252:case 254:case 256:case 260:case 264:case 268:case 270:case 292:case 294:case 296:case 298:case 300:case 302:case 304:case 306:case 329:case 342:case 356:case 368:case 370:case 372:case 374:case 392:case 402:case 425:case 427:case 429:case 431:case 441:case 445:case 447:case 449:g[_-1].push(g[_]);break;case 259:case 269:case 291:case 293:case 295:case 301:case 305:case 371:case 424:case 426:this.$=[g[_]];break;case 308:g[_-3].push(g[_-2]);break;case 350:case 362:case 376:case 380:case 382:case 386:case 396:case 406:case 410:case 412:case 421:g[_-2].push(g[_-1]);break}},"anonymous"),table:[n(e,t,{3:1,4:2,10:3}),{1:[3]},n(r,[2,307],{5:4,7:5,321:6,214:7,8:8,96:9,215:10,17:11,21:12,97:16,38:17,6:[2,238],13:i,16:i,45:i,197:i,224:i,229:i,308:i,24:[1,13],32:[1,14],36:[1,15],41:s}),n([6,13,16,24,32,36,41,45,100,110,113,115,116,123,126,131,197,224,229,308,329,330,331,332,333],[2,3],{322:19,11:20,14:21,12:[1,22],15:[1,23]}),{6:[1,24]},{6:[2,240]},{6:[2,241]},{6:[2,242]},{6:[2,243],9:25,84:26,85:a},{6:[2,239]},n(c,[2,411],{216:28,217:29}),n(l,[2,249],{18:30}),n(l,[2,251],{22:31}),n(u,[2,255],{25:32,27:33,29:[1,34]}),{13:f,16:d,33:35,39:[1,37],44:39,55:40,87:h,139:38,307:43,308:p,323:36},n(l,[2,267],{37:46}),n(y,[2,326],{98:47,103:49,106:50,117:55,130:61,100:[1,48],110:[1,51],113:[1,52],115:[1,53],116:[1,54],131:[1,62],329:[1,56],330:[1,57],331:[1,58],332:[1,59],333:[1,60]}),{39:[1,63],40:64,43:65,44:66,45:v,87:h},n(w,[2,273],{42:68,324:69,325:[1,70],326:[1,71]}),n(e,[2,248]),n(e,[2,245]),n(e,[2,246]),{13:[1,72]},{16:[1,73]},{1:[2,1]},{6:[2,2]},{6:[2,244]},{45:[1,77],85:[1,78],86:74,87:[1,75],89:[1,76]},n([6,13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],[2,120],{337:[1,79]}),n(b,[2,418],{218:80,222:81,229:[1,82]}),{19:83,28:A,29:I,52:84,53:j,56:85},{19:88,28:A,29:I,52:89,53:j,56:85},n(l,[2,253],{26:90}),{28:[1,91],52:92,53:j},n(V,[2,385],{181:93,182:94,183:95,31:[2,383]}),n(te,[2,263],{34:96}),n(te,[2,261],{44:39,55:40,307:43,139:97,13:f,16:d,87:h,308:p}),n(te,[2,262]),n(z,[2,259]),n(G,[2,143]),n(G,[2,144]),n([6,13,16,28,29,31,39,45,47,48,53,63,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346,347,348,349,350,351],[2,145]),n(F,[2,211]),n(F,[2,212]),n(F,[2,213]),n(F,[2,214]),{19:98,28:A,29:I,52:99,53:j,56:85},{6:[2,309],99:100,193:[1,101]},n($,[2,311],{101:102,328:[1,103]}),n(re,[2,317],{104:104,328:[1,105]}),n(Ye,[2,322],{107:106,328:[1,107]}),{111:108,112:[2,324],328:[1,109]},{29:at,114:110},{29:at,114:112},{29:at,114:113},{118:114,123:[1,115],125:116,126:Ot},n(ot,[2,315]),n(ot,[2,316]),n(lt,[2,319]),n(lt,[2,320]),n(lt,[2,321]),n(y,[2,327]),{13:f,16:d,55:118,307:43,308:p},n(l,[2,12]),n(l,[2,13],{44:66,43:119,45:v,87:h}),n(Xe,[2,269]),n(Xe,[2,15]),{13:f,16:d,44:136,45:se,46:120,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(w,[2,14]),n(w,[2,274]),n(w,[2,271]),n(w,[2,272]),n(e,[2,4]),{13:[1,177]},n(Z,[2,39]),{29:[1,178]},{29:[1,179]},{87:[1,181],91:180},{45:[1,187],87:[1,185],89:[1,186],93:182,165:183,166:184},n(c,[2,410]),n([6,13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337],[2,121],{338:[1,188]}),{13:f,16:d,45:[1,193],55:194,197:_t,219:189,220:190,223:191,224:[1,192],307:43,308:p},n(b,[2,419]),n(Ct,De,{20:196,59:197,69:198,70:q}),n(l,[2,250]),{29:W,57:200},n($,[2,279],{54:202,327:[1,203]}),{29:[2,282]},n(Q,Y,{23:204,58:205,62:206,63:Ie}),n(l,[2,252]),{19:208,28:A,29:I,52:209,53:j,56:85},{29:[1,210]},n(u,[2,256]),{31:[1,211]},{31:[2,384]},{13:f,16:d,44:215,45:rt,55:220,82:U,87:h,89:nt,145:212,172:221,185:213,187:214,231:Pr,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(u2,[2,265],{56:85,35:227,52:228,19:229,28:A,29:I,53:j}),n(z,[2,260]),n(Q,Y,{58:205,62:206,23:230,63:Ie}),n(l,[2,268]),{6:[2,45]},n(e,t,{10:3,4:231}),{13:f,16:d,55:232,307:43,308:p},n($,[2,312]),{105:233,112:f2,122:234,132:[1,237],134:235,327:[1,238],334:[1,239]},n(re,[2,318]),n($,d2,{108:240,133:242,112:h2,132:p2}),n(Ye,[2,323]),{112:[1,244]},{112:[2,325]},n(Or,[2,50]),n(V,Id,{135:245,136:246,143:247,144:248,31:m2,112:m2}),n(Or,[2,51]),n(Or,[2,52]),n(Ea,[2,328],{119:249}),{29:at,114:250},n(Ea,[2,56]),{29:at,114:251},n(y,[2,59]),n(Xe,[2,270]),{47:[1,252]},n(g2,[2,150]),n(Rd,[2,428],{240:253}),n(dc,[2,430],{244:254}),n(dc,[2,155],{248:255,249:256,250:[2,438],290:[1,257],341:[1,258],342:[1,259],343:[1,260],344:[1,261],345:[1,262],346:[1,263]}),n(hc,[2,440],{252:264}),n(gr,[2,448],{260:265}),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,255:154,257:155,264:266,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,255:154,257:155,264:267,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,255:154,257:155,264:268,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(gr,[2,167]),n(gr,[2,168]),n(gr,[2,169]),n(gr,[2,170],{176:269,45:y2,89:_2}),n(gr,[2,171]),n(gr,[2,172]),n(gr,[2,173]),n(gr,[2,174]),{13:f,16:d,44:136,45:se,46:272,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Xt,[2,176]),{89:[1,273]},{45:[1,274]},{45:[1,275]},{45:[1,276]},{45:[1,277]},{45:[1,278]},{45:S2,89:v2,179:279},{45:[1,282]},{45:[1,284],89:[1,283]},{279:[1,285]},n(an,[2,192],{292:[1,286],293:[1,287]}),n(an,[2,195]),n(an,[2,196]),n(an,[2,197]),n(an,[2,198]),n(an,[2,199]),n(an,[2,200]),{13:f,16:d,44:39,55:40,82:U,87:h,139:289,172:291,255:154,257:155,266:290,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,320:288},{45:[1,292]},{45:[1,293]},{45:[1,294]},n(vu,[2,452]),n(vu,[2,453]),n(vu,[2,454]),n(vu,[2,455]),n(vu,[2,456]),{279:[2,458]},n(Pd,[2,207]),n(Pd,[2,208]),n(Pd,[2,209]),n(Pd,[2,210]),n(an,[2,201]),n(an,[2,202]),n(an,[2,203]),n(an,[2,204]),n(an,[2,205]),n(an,[2,206]),n(e,[2,5]),n(Od,[2,297],{88:295}),n(Fd,[2,299],{90:296}),{48:[1,297],87:[1,298]},n(Dd,[2,301]),n(Z,[2,43]),n(Z,[2,82]),n(Z,[2,83]),{29:[1,299]},{29:[1,300]},{87:[1,302],169:301},n(c,[2,412]),n(uo,[2,123]),n(uo,[2,416],{221:303,339:304,39:[1,306],263:[1,307],340:[1,305]}),n(es,[2,124]),{13:f,16:d,45:[1,311],55:194,89:[1,310],197:_t,223:312,225:308,226:309,229:b2,307:43,308:p},n(c,i,{215:10,214:314}),n(es,[2,236]),n(es,[2,237]),n(pc,[2,6]),n(Fy,[2,287],{60:315,72:316,73:[1,317]}),n(Ct,[2,286]),{13:f,16:d,45:se,55:323,67:321,68:322,71:318,77:320,79:319,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,307:43,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O},n([6,31,63,70,73,81,83,85],[2,20]),n(V,w2,{38:17,49:324,147:325,17:326,21:327,148:328,154:329,155:330,29:Ls,31:Ls,85:Ls,112:Ls,159:Ls,160:Ls,161:Ls,163:Ls,164:Ls,41:s}),{13:f,16:d,55:331,307:43,308:p},n($,[2,280]),n(pc,[2,7]),n(Ct,De,{59:197,69:198,20:332,70:q}),n(Q,[2,284]),{64:[1,333]},n(Q,Y,{58:205,62:206,23:334,63:Ie}),n(l,[2,254]),n(V,Id,{144:248,30:335,143:336,31:[2,257]}),n(l,[2,100]),{31:[2,387],184:337,335:[1,338]},{13:f,16:d,44:39,55:40,87:h,139:342,186:339,190:340,195:341,197:fo,307:43,308:p},n(bu,[2,389],{44:39,55:40,307:43,190:340,195:341,139:342,188:344,189:345,186:346,13:f,16:d,87:h,197:fo,308:p}),n(ks,[2,227]),n(ks,[2,228]),n(ks,[2,229]),{13:f,16:d,44:215,45:rt,55:220,82:U,87:h,89:nt,172:221,185:351,187:350,200:348,230:347,231:Pr,234:349,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},{13:f,16:d,44:39,55:40,87:h,139:342,186:352,190:340,195:341,197:fo,307:43,308:p},n(ks,[2,146]),n(ks,[2,147]),n(ks,[2,148]),n(ks,[2,149]),{13:f,16:d,44:354,55:355,82:U,87:h,172:357,237:356,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:358,312:sn,313:353},n(Dy,[2,215]),n(Dy,[2,216]),n(Q,Y,{58:205,62:206,23:359,63:Ie}),n(te,[2,264]),n(u2,[2,266]),n(pc,[2,11]),n(r,[2,308],{6:[2,310]}),n(Or,[2,313],{102:360,120:361,121:[1,362]}),n(Or,[2,47]),n(Or,[2,63]),n(Or,[2,64]),{13:f,16:d,55:363,307:43,308:p},n(Or,[2,336]),n(Or,[2,337]),n(Or,[2,338]),{109:[1,364]},n(E2,[2,60]),{13:f,16:d,55:365,307:43,308:p},n($,[2,335]),{13:f,16:d,55:366,307:43,308:p},{31:[1,367]},n(ho,[2,341],{137:368}),n(ho,[2,340]),{13:f,16:d,44:215,45:rt,55:220,82:U,87:h,89:nt,145:369,172:221,185:213,187:214,231:Pr,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},{28:[1,370],127:371,128:[1,372]},n(Ea,[2,330],{124:373,125:374,126:Ot}),n(Ea,[2,57]),{44:375,87:h},n(g2,[2,151],{241:376,242:[1,377]}),n(Rd,[2,153],{245:378,246:[1,379]}),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,247:380,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{250:[1,381]},n(Jt,[2,432]),n(Jt,[2,433]),n(Jt,[2,434]),n(Jt,[2,435]),n(Jt,[2,436]),n(Jt,[2,437]),{250:[2,439]},n([47,48,193,242,246,250,272,290,341,342,343,344,345,346],[2,158],{253:382,254:383,255:384,257:385,263:[1,386],265:[1,387],297:he,298:pe,299:me,300:ue,301:_e,302:Se}),n(hc,[2,162],{261:388,262:389,39:Ny,338:Ly}),n(gr,[2,164]),n(gr,[2,165]),n(gr,[2,166]),n(Xt,[2,95]),n(Xt,[2,96]),n(Jt,[2,377],{177:392,325:[1,393]}),{48:[1,394]},n(Xt,[2,177]),{13:f,16:d,44:136,45:se,46:395,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:396,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:397,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:398,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:399,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Xt,[2,183]),n(Xt,[2,98]),n(Jt,[2,381],{180:400}),{87:[1,401]},n(Xt,[2,185]),{13:f,16:d,44:136,45:se,46:402,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{29:W,57:403},n(an,[2,193]),{13:f,16:d,55:404,307:43,308:p},{13:f,16:d,44:39,55:40,87:h,139:342,195:405,197:fo,307:43,308:p},n(Ta,[2,233]),n(Ta,[2,234]),n(Ta,[2,235]),n(T2,[2,459],{281:406,325:[1,407]}),n(Jt,[2,463],{284:408,325:[1,409]}),n(Jt,[2,465],{286:410,325:[1,411]}),{13:f,16:d,31:[1,412],55:414,82:U,171:413,172:415,173:416,174:Nd,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:Ld},{31:[1,419],89:[1,420]},{29:[1,421]},n(Dd,[2,302]),n(Od,[2,367],{167:422}),n(Fd,[2,369],{168:423}),{48:[1,424],87:[1,425]},n(Dd,[2,371]),n(uo,[2,122]),n(uo,[2,417]),n(uo,[2,413]),n(uo,[2,414]),n(uo,[2,415]),n(es,[2,125]),n(es,[2,127]),n(es,[2,128]),n(A2,[2,420],{227:426}),n(es,[2,130]),{13:f,16:d,55:194,197:_t,223:427,307:43,308:p},{48:[1,428]},n(Aa,[2,289],{61:429,80:430,81:[1,431],83:[1,432]}),n(Fy,[2,288]),{64:[1,433]},n(Ct,[2,29],{307:43,267:139,275:146,278:149,77:320,67:321,68:322,55:323,79:434,13:f,16:d,45:se,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,276:ze,277:Ce,279:Ve,280:Pe,283:Ue,285:He,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O}),n(x2,[2,293]),n(ky,[2,92]),n(ky,[2,93]),n(ky,[2,94]),{45:y2,89:_2,176:269},{31:[1,435]},{31:[1,436]},{19:437,28:A,29:I,56:85},{19:438,28:A,29:I,56:85},n(po,[2,355],{149:439}),n(po,[2,354]),{13:f,16:d,44:215,45:kd,55:220,82:U,87:h,89:nt,156:440,172:221,185:441,203:442,231:Md,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(te,[2,19]),n(Aa,[2,21]),{13:f,16:d,44:450,45:C2,55:323,65:445,66:446,67:447,68:448,87:h,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,307:43,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(pc,[2,8]),{31:[1,451]},{31:[2,258]},{31:[2,101]},n(V,[2,386],{31:[2,388]}),n(bu,[2,102]),n(mo,[2,391],{191:452}),n(V,[2,395],{196:453,198:454}),n(V,[2,108]),n(V,[2,109]),n(bu,[2,103]),n(bu,[2,104]),n(bu,[2,390]),{13:f,16:d,44:215,45:rt,48:[1,455],55:220,82:U,87:h,89:nt,172:221,185:351,187:350,200:456,231:Pr,234:349,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(jd,[2,424]),n(I2,[2,136]),n(I2,[2,137]),n(My,[2,140]),{232:[1,457]},{13:f,16:d,44:39,55:40,87:h,139:342,195:458,197:fo,307:43,308:p},n(Ta,[2,219]),n(Ta,[2,220]),n(Ta,[2,221]),n(Ta,[2,222]),n(Ta,[2,223]),n(pc,[2,10]),n(Or,[2,46]),n(Or,[2,314]),{112:f2,122:459},n(Or,[2,62]),n($,d2,{133:242,108:460,112:h2,132:p2}),n(E2,[2,61]),n(Or,[2,49]),n([6,28,126,128,193],[2,65]),{31:[2,66],112:[1,462],138:461},n(ho,[2,351],{146:463,335:[1,464]}),{29:W,57:465},n(Ea,[2,329]),n($,[2,332],{129:466,327:[1,467]}),n(Ea,[2,55]),n(Ea,[2,331]),{48:[1,468]},n(Rd,[2,429]),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,239:469,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(dc,[2,431]),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,243:470,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(dc,[2,156]),{45:S2,89:v2,179:471},n(hc,[2,441]),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,251:472,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(gr,[2,444],{256:473}),n(gr,[2,446],{258:474}),n(Jt,[2,442]),n(Jt,[2,443]),n(gr,[2,449]),{13:f,16:d,44:136,45:se,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,255:154,257:155,259:475,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Jt,[2,450]),n(Jt,[2,451]),n(Jt,[2,379],{178:476}),n(Jt,[2,378]),n([6,13,16,29,31,39,45,47,48,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,338,341,342,343,344,345,346,347,348,349,350,351],[2,175]),{48:[1,477]},{48:[1,478]},{272:[1,479]},{272:[1,480]},{272:[1,481]},{13:f,16:d,44:136,45:se,46:482,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{48:[1,483]},{48:[1,484]},n(Xt,[2,187]),n(an,[2,194]),{13:f,16:d,44:39,55:40,82:U,87:h,139:289,172:291,255:154,257:155,266:290,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,320:485},{13:f,16:d,39:[1,487],44:136,45:se,46:488,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,282:486,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(T2,[2,460]),{13:f,16:d,44:136,45:se,46:489,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Jt,[2,464]),{13:f,16:d,44:136,45:se,46:490,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Jt,[2,466]),n(Z,[2,40]),n(Od,[2,298]),n(wu,[2,87]),n(wu,[2,88]),n(wu,[2,89]),n(wu,[2,90]),{13:f,16:d,55:492,82:U,172:493,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,311:494,312:sn,315:491},n(Z,[2,41]),n(Fd,[2,300]),n(Eu,[2,303],{92:495}),{13:f,16:d,31:[1,496],55:414,82:U,171:497,172:415,173:416,174:Nd,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:Ld},{31:[1,498],89:[1,499]},{29:[1,500]},n(Dd,[2,372]),{13:f,16:d,48:[2,422],55:194,197:_t,223:312,226:502,228:501,229:b2,307:43,308:p},n(es,[2,131]),n(es,[2,126]),n(Aa,[2,22]),n(Aa,[2,290]),{82:[1,503]},{82:[1,504]},{13:f,16:d,44:510,45:se,55:323,67:321,68:322,74:505,75:506,76:R2,77:320,78:P2,79:509,87:h,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,307:43,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(x2,[2,294]),n(O2,[2,69]),n(O2,[2,70]),n(Ct,De,{59:197,69:198,20:511,70:q}),n(Q,Y,{58:205,62:206,23:512,63:Ie}),{29:[2,375],31:[2,71],84:522,85:a,112:[1,518],150:513,151:514,158:515,159:[1,516],160:[1,517],161:[1,519],163:[1,520],164:[1,521],175:523},n(po,[2,363],{157:524,335:[1,525]}),n(c,i,{215:10,202:526,205:527,208:528,214:529,44:530,87:h}),n($d,[2,399],{215:10,205:527,208:528,214:529,44:530,204:531,202:532,13:i,16:i,45:i,197:i,224:i,229:i,308:i,87:h}),{13:f,16:d,44:215,45:kd,55:220,82:U,87:h,89:nt,172:221,185:351,203:536,212:534,231:Md,233:533,234:535,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(c,i,{215:10,205:527,208:528,214:529,44:530,202:537,87:h}),n(Q,[2,23],{307:43,267:139,275:146,278:149,55:323,67:447,68:448,44:450,66:538,13:f,16:d,45:C2,87:h,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,276:ze,277:Ce,279:Ve,280:Pe,283:Ue,285:He,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O}),n(go,[2,291]),n(go,[2,24]),n(go,[2,25]),{13:f,16:d,44:136,45:se,46:539,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(go,[2,28]),n(Q,Y,{58:205,62:206,23:540,63:Ie}),n([31,112,232,318,335],[2,105],{192:541,193:[1,542]}),n(mo,[2,107]),{13:f,16:d,44:215,45:rt,55:220,82:U,87:h,89:nt,172:221,185:351,187:350,199:543,200:544,231:Pr,234:349,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(F2,[2,132]),n(jd,[2,425]),n(F2,[2,133]),{13:f,16:d,44:354,55:355,82:U,87:h,172:357,237:356,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:358,312:sn,313:545},n(Or,[2,54]),n(Or,[2,48]),n(ho,[2,342]),{13:f,16:d,44:39,55:40,87:h,139:546,307:43,308:p},n(ho,[2,68]),n(V,[2,350],{31:D2,112:D2}),n(Or,[2,53]),{13:f,16:d,55:547,307:43,308:p},n($,[2,333]),n(Xe,[2,16]),n(Rd,[2,152]),n(dc,[2,154]),n(dc,[2,157]),n(hc,[2,159]),n(hc,[2,160],{262:389,261:548,39:Ny,338:Ly}),n(hc,[2,161],{262:389,261:549,39:Ny,338:Ly}),n(gr,[2,163]),{13:f,16:d,44:136,45:se,46:550,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Xt,[2,178]),n(Xt,[2,179]),{13:f,16:d,44:136,45:se,46:551,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:552,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:553,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{48:[1,554],272:[1,555]},n(Xt,[2,184]),n(Xt,[2,186]),{314:[1,556]},{48:[1,557]},{48:[2,461]},{48:[2,462]},{48:[1,558]},{48:[2,467],193:[1,561],287:559,288:560},{13:f,16:d,55:194,197:_t,223:562,307:43,308:p},n(jy,[2,224]),n(jy,[2,225]),n(jy,[2,226]),{31:[1,563],45:N2,94:564},n(Z,[2,84]),n(Od,[2,368]),n(Z,[2,85]),n(Fd,[2,370]),n(Eu,[2,373],{170:566}),{48:[1,567]},{48:[2,423],337:[1,568]},n(Aa,[2,35],{83:[1,569]}),n(Aa,[2,36],{81:[1,570]}),n(Fy,[2,30],{307:43,267:139,275:146,278:149,77:320,67:321,68:322,55:323,79:509,44:510,75:571,13:f,16:d,45:se,76:R2,78:P2,87:h,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,276:ze,277:Ce,279:Ve,280:Pe,283:Ue,285:He,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O}),n(mc,[2,295]),{45:se,77:572},{45:se,77:573},n(mc,[2,33]),n(mc,[2,34]),{31:[2,275],50:574,84:575,85:a},{31:[2,277],51:576,84:577,85:a},n(po,[2,356]),n(L2,[2,357],{152:578,335:[1,579]}),n(Ms,[2,74]),{29:W,57:580},{29:W,57:581},{13:f,16:d,44:39,55:40,87:h,139:582,307:43,308:p},n(k2,[2,365],{162:583,328:[1,584]}),{13:f,16:d,45:se,55:323,67:321,68:322,77:320,79:585,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,307:43,308:p,346:Qe,347:$e,348:E,349:T,350:x,351:O},{45:[1,586]},n(Ms,[2,81]),{29:W,57:587},n(po,[2,73]),n(V,[2,362],{29:js,31:js,85:js,112:js,159:js,160:js,161:js,163:js,164:js}),n($d,[2,112]),n(gc,[2,401],{206:588}),n(V,[2,405],{209:589,210:590}),n(V,[2,403]),n(V,[2,404]),n($d,[2,113]),n($d,[2,400]),{13:f,16:d,44:215,45:kd,48:[1,591],55:220,82:U,87:h,89:nt,172:221,185:351,203:536,212:592,231:Md,234:535,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(jd,[2,426]),n(My,[2,138]),n(My,[2,139]),{232:[1,593]},n(go,[2,292]),{47:[1,595],48:[1,594]},n(pc,[2,9]),n(mo,[2,392]),n(mo,[2,393],{44:39,55:40,307:43,195:341,139:342,194:596,190:597,13:f,16:d,87:h,197:fo,308:p}),n(mo,[2,110],{272:[1,598]}),n(Bd,[2,397],{201:599,316:600,317:[1,601]}),{314:[1,602]},{29:[1,603]},n(Ea,[2,58]),n(gr,[2,445]),n(gr,[2,447]),{48:[1,604],272:[1,605]},{48:[1,606]},{272:[1,607]},{272:[1,608]},n(Xt,[2,99]),n(Jt,[2,382]),n([13,16,39,47,48,87,193,197,242,246,250,263,265,272,290,297,298,299,300,301,302,308,314,338,341,342,343,344,345,346],[2,232]),n(Xt,[2,188]),n(Xt,[2,189]),{48:[1,609]},{48:[2,468]},{289:[1,610]},{13:f,16:d,55:492,82:U,172:493,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,311:494,312:sn,315:611},n(Z,[2,42]),n(Eu,[2,304]),{13:f,16:d,55:414,82:U,95:612,171:613,172:415,173:416,174:Nd,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:Ld},{31:[1,614],45:N2,94:615},n(es,[2,129]),n(A2,[2,421]),{82:[1,616]},{82:[1,617]},n(mc,[2,296]),n(mc,[2,31]),n(mc,[2,32]),{31:[2,17]},{31:[2,276]},{31:[2,18]},{31:[2,278]},n(V,w2,{155:330,153:618,154:619,29:$s,31:$s,85:$s,112:$s,159:$s,160:$s,161:$s,163:$s,164:$s}),n(L2,[2,358]),n(Ms,[2,75]),n(Ms,[2,76]),{29:W,57:620},{13:f,16:d,44:39,55:40,87:h,139:621,307:43,308:p},n(k2,[2,366]),n(Ms,[2,79]),{13:f,16:d,44:136,45:se,46:622,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Ms,[2,91],{336:[1,623]}),n([29,31,85,112,159,160,161,163,164,232,318,335],[2,114],{207:624,193:[1,625]}),n(gc,[2,117]),{13:f,16:d,44:215,45:kd,55:220,82:U,87:h,89:nt,172:221,185:351,203:536,211:626,212:627,231:Md,234:535,236:216,237:222,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,309:bn,310:kn,311:217,312:sn},n(ks,[2,134]),n(jd,[2,427]),n(ks,[2,135]),n(go,[2,26]),{44:628,87:h},n(mo,[2,106]),n(mo,[2,394]),n(V,[2,396]),n(Bd,[2,111]),n(Bd,[2,398]),{13:f,16:d,44:39,55:40,87:h,139:342,186:629,190:340,195:341,197:fo,307:43,308:p},n(Dy,[2,217]),n(V,Id,{144:248,140:630,143:631,31:[2,343]}),n(Xt,[2,97]),n(Jt,[2,380]),n(Xt,[2,180]),{13:f,16:d,44:136,45:se,46:632,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},{13:f,16:d,44:136,45:se,46:633,55:133,67:132,68:134,77:131,82:U,87:h,172:135,224:ut,238:121,239:122,243:123,247:124,251:125,255:154,257:155,259:126,263:pt,264:130,265:H,266:137,267:139,268:Re,269:qe,270:ne,271:We,273:Ge,274:Be,275:146,276:ze,277:Ce,278:149,279:Ve,280:Pe,283:Ue,285:He,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:et,346:Qe,347:$e,348:E,349:T,350:x,351:O},n(Xt,[2,190]),{290:[1,634]},{314:[1,635]},{13:f,16:d,48:[1,636],55:414,82:U,171:637,172:415,173:416,174:Nd,255:154,257:155,291:150,294:de,295:ge,296:ye,297:he,298:pe,299:me,300:ue,301:_e,302:Se,303:ve,304:be,305:ce,306:we,307:43,308:p,312:Ld},n(M2,[2,305]),n(Z,[2,86]),n(Eu,[2,374]),n(Aa,[2,37]),n(Aa,[2,38]),n(po,[2,72]),n(po,[2,360]),n(Ms,[2,77]),{29:W,57:638},{47:[1,639]},{29:[2,376]},n(gc,[2,402]),n(gc,[2,115],{215:10,208:528,214:529,44:530,205:640,13:i,16:i,45:i,197:i,224:i,229:i,308:i,87:h}),n(gc,[2,118],{272:[1,641]}),n(Vd,[2,407],{213:642,319:643,317:[1,644]}),{48:[1,645]},{318:[1,646]},{31:[1,647]},{31:[2,344]},{48:[1,648]},{48:[1,649]},{291:650,303:ve,304:be,305:ce,306:we},n(wu,[2,218]),n(Eu,[2,44]),n(M2,[2,306]),n(Ms,[2,78]),{44:651,87:h},n(gc,[2,116]),n(V,[2,406]),n(Vd,[2,119]),n(Vd,[2,408]),n(c,i,{215:10,205:527,208:528,214:529,44:530,202:652,87:h}),n(go,[2,27]),n(Bd,[2,230]),n(j2,[2,345],{141:653,335:[1,654]}),n(Xt,[2,181]),n(Xt,[2,182]),{48:[2,191]},{48:[1,655]},{318:[1,656]},n(V,Id,{144:248,142:657,143:658,31:$2,112:$2}),n(j2,[2,346]),n(Ms,[2,80]),n(Vd,[2,231]),n(ho,[2,67]),n(ho,[2,348])],defaultActions:{5:[2,240],6:[2,241],7:[2,242],9:[2,239],24:[2,1],25:[2,2],26:[2,244],87:[2,282],94:[2,384],100:[2,45],109:[2,325],166:[2,458],263:[2,439],336:[2,258],337:[2,101],487:[2,461],488:[2,462],560:[2,468],574:[2,17],575:[2,276],576:[2,18],577:[2,278],623:[2,376],631:[2,344],650:[2,191]},parseError:o(function(C,P){if(P.recoverable)this.trace(C);else{var N=new Error(C);throw N.hash=P,N}},"parseError"),parse:o(function(C){var P=this,N=[0],ie=[],Oe=[null],g=[],cn=this.table,_="",ns=0,Cu=0,Gd=0,zd=2,Iu=1,Hd=g.slice.call(arguments,1),Vt=Object.create(this.lexer),is={yy:{}};for(var Ru in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ru)&&(is.yy[Ru]=this.yy[Ru]);Vt.setInput(C,is.yy),is.yy.lexer=Vt,is.yy.parser=this,typeof Vt.yylloc>"u"&&(Vt.yylloc={});var bc=Vt.yylloc;g.push(bc);var St=Vt.options&&Vt.options.ranges;typeof is.yy.parseError=="function"?this.parseError=is.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function jt(ss){N.length=N.length-2*ss,Oe.length=Oe.length-ss,g.length=g.length-ss}o(jt,"popStack");for(var it=o(function(){var ss;return ss=Vt.lex()||Iu,typeof ss!="number"&&(ss=P.symbols_[ss]||ss),ss},"lex"),ft,wn,vo,Hn,xJ,Xy,wc={},Qd,Us,X2,Kd;;){if(vo=N[N.length-1],this.defaultActions[vo]?Hn=this.defaultActions[vo]:((ft===null||typeof ft>"u")&&(ft=it()),Hn=cn[vo]&&cn[vo][ft]),typeof Hn>"u"||!Hn.length||!Hn[0]){var Jy="";Kd=[];for(Qd in cn[vo])this.terminals_[Qd]&&Qd>zd&&Kd.push("'"+this.terminals_[Qd]+"'");Vt.showPosition?Jy="Parse error on line "+(ns+1)+`:
34
34
  `+Vt.showPosition()+`
35
- Expecting `+Kd.join(", ")+", got '"+(this.terminals_[ft]||ft)+"'":Jy="Parse error on line "+(ns+1)+": Unexpected "+(ft==Iu?"end of input":"'"+(this.terminals_[ft]||ft)+"'"),this.parseError(Jy,{text:Vt.match,token:this.terminals_[ft]||ft,line:Vt.yylineno,loc:bc,expected:Kd})}if(Hn[0]instanceof Array&&Hn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+vo+", token: "+ft);switch(Hn[0]){case 1:N.push(ft),Oe.push(Vt.yytext),g.push(Vt.yylloc),N.push(Hn[1]),ft=null,wn?(ft=wn,wn=null):(Cu=Vt.yyleng,_=Vt.yytext,ns=Vt.yylineno,bc=Vt.yylloc,Gd>0&&Gd--);break;case 2:if(Us=this.productions_[Hn[1]][1],wc.$=Oe[Oe.length-Us],wc._$={first_line:g[g.length-(Us||1)].first_line,last_line:g[g.length-1].last_line,first_column:g[g.length-(Us||1)].first_column,last_column:g[g.length-1].last_column},St&&(wc._$.range=[g[g.length-(Us||1)].range[0],g[g.length-1].range[1]]),Xy=this.performAction.apply(wc,[_,Cu,ns,is.yy,Hn[1],Oe,g].concat(Hd)),typeof Xy<"u")return Xy;Us&&(N=N.slice(0,-1*Us*2),Oe=Oe.slice(0,-1*Us),g=g.slice(0,-1*Us)),N.push(this.productions_[Hn[1]][0]),Oe.push(wc.$),g.push(wc._$),X2=cn[N[N.length-2]][N[N.length-1]],N.push(X2);break;case 3:return!0}}return!0},"parse")},Ud=q_().Wildcard,qd="http://www.w3.org/1999/02/22-rdf-syntax-ns#",GN=qd+"type",zN=qd+"first",HN=qd+"rest",B2=qd+"nil",Wd="http://www.w3.org/2001/XMLSchema#",V2=Wd+"integer",U2=Wd+"decimal",q2=Wd+"double",QN=Wd+"boolean",yo="",W2="",G2="";function on(R){return R.toLowerCase()}o(on,"lowercase");function Bs(R,C){return R.push(C),R}o(Bs,"appendTo");function _o(R,C){return R.push.apply(R,C),R}o(_o,"appendAllTo");function Ht(R){R||(R={});for(var C=1,P=arguments.length,N;C<P&&(N=arguments[C]||{});C++)for(var ie in N)R[ie]=N[ie];return R}o(Ht,"extend");function ts(){for(var R=[],C=0,P=arguments.length;C<P;C++)R=R.concat.apply(R,arguments[C]);return R}o(ts,"unionAll");function Tu(R){if(R[0]==="<"&&(R=R.substring(1,R.length-1)),/^[a-z][a-z0-9.+-]*:/i.test(R))return R;if(!ke.base)throw new Error("Cannot resolve relative IRI "+R+" because no base IRI was set.");switch(yo!==ke.base&&(yo=ke.base,W2=yo.replace(/[^\/:]*$/,""),G2=yo.match(/^(?:[a-z]+:\/*)?[^\/]*/)[0]),R[0]){case void 0:return yo;case"#":return yo+R;case"?":return yo.replace(/(?:\?.*)?$/,R);case"/":return G2+R;default:return W2+R}}o(Tu,"resolveIRI");function By(R){if(R){var C=R[0];if(C==="?"||C==="$")return ke.factory.variable(R.substr(1))}return R}o(By,"toVar");function Or(R,C){return{type:"operation",operator:R,args:C||[]}}o(Or,"operation");function yc(R,C){var P={expression:R==="*"?new Ud:R};if(C)for(var N in C)P[N]=C[N];return P}o(yc,"expression");function _c(R,C){return{type:"path",pathType:R,items:C}}o(_c,"path");function Vy(R,C){for(var P=0,N=C.length,ie;P<N&&(ie=C[P]);P++)R=Or(ie[0],[R,ie[1]]);return R}o(Vy,"createOperationTree");function So(R,C){var P=[],N=[],ie=R.length,Oe,g={};if(!ie)return null;for(var cn=0;cn<ie&&(Oe=R[cn]);cn++)(Oe.named?N:P).push(Oe.iri);return g[C||"from"]={default:P,named:N},g}o(So,"groupDatasets");function Sc(R){return parseInt(R,10)}o(Sc,"toInt");function Uy(R){return R.type==="group"&&R.patterns.length===1?R.patterns[0]:R}o(Uy,"degroupSingle");function rs(R,C){return C&&C.termType!=="NamedNode"&&(C=ke.factory.namedNode(C)),ke.factory.literal(R,C)}o(rs,"createTypedLiteral");function KN(R,C){return ke.factory.literal(R,C)}o(KN,"createLangLiteral");function qy(R,C,P){if(!("termType"in C))throw new Error("Nested triples cannot contain paths");return ke.factory.quad(R,C,P)}o(qy,"nestedTriple");function Vs(R,C,P,N){var ie={};return R!=null&&(ie.subject=R),C!=null&&(ie.predicate=C),P!=null&&(ie.object=P),N!=null&&(ie.annotations=N),ie}o(Vs,"triple");function Au(R){return typeof R=="string"?R.startsWith("e_")?ke.factory.blankNode(R):ke.factory.blankNode("e_"+R):ke.factory.blankNode("g_"+z2++)}o(Au,"blank");var z2=0;ke._resetBlanks=function(){z2=0};var YN=/\\u([a-fA-F0-9]{4})|\\U([a-fA-F0-9]{8})|\\(.)/g,XN={"\\":"\\","'":"'",'"':'"',t:" ",b:"\b",n:`
35
+ Expecting `+Kd.join(", ")+", got '"+(this.terminals_[ft]||ft)+"'":Jy="Parse error on line "+(ns+1)+": Unexpected "+(ft==Iu?"end of input":"'"+(this.terminals_[ft]||ft)+"'"),this.parseError(Jy,{text:Vt.match,token:this.terminals_[ft]||ft,line:Vt.yylineno,loc:bc,expected:Kd})}if(Hn[0]instanceof Array&&Hn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+vo+", token: "+ft);switch(Hn[0]){case 1:N.push(ft),Oe.push(Vt.yytext),g.push(Vt.yylloc),N.push(Hn[1]),ft=null,wn?(ft=wn,wn=null):(Cu=Vt.yyleng,_=Vt.yytext,ns=Vt.yylineno,bc=Vt.yylloc,Gd>0&&Gd--);break;case 2:if(Us=this.productions_[Hn[1]][1],wc.$=Oe[Oe.length-Us],wc._$={first_line:g[g.length-(Us||1)].first_line,last_line:g[g.length-1].last_line,first_column:g[g.length-(Us||1)].first_column,last_column:g[g.length-1].last_column},St&&(wc._$.range=[g[g.length-(Us||1)].range[0],g[g.length-1].range[1]]),Xy=this.performAction.apply(wc,[_,Cu,ns,is.yy,Hn[1],Oe,g].concat(Hd)),typeof Xy<"u")return Xy;Us&&(N=N.slice(0,-1*Us*2),Oe=Oe.slice(0,-1*Us),g=g.slice(0,-1*Us)),N.push(this.productions_[Hn[1]][0]),Oe.push(wc.$),g.push(wc._$),X2=cn[N[N.length-2]][N[N.length-1]],N.push(X2);break;case 3:return!0}}return!0},"parse")},Ud=q_().Wildcard,qd="http://www.w3.org/1999/02/22-rdf-syntax-ns#",GN=qd+"type",zN=qd+"first",HN=qd+"rest",B2=qd+"nil",Wd="http://www.w3.org/2001/XMLSchema#",V2=Wd+"integer",U2=Wd+"decimal",q2=Wd+"double",QN=Wd+"boolean",yo="",W2="",G2="";function on(R){return R.toLowerCase()}o(on,"lowercase");function Bs(R,C){return R.push(C),R}o(Bs,"appendTo");function _o(R,C){return R.push.apply(R,C),R}o(_o,"appendAllTo");function Ht(R){R||(R={});for(var C=1,P=arguments.length,N;C<P&&(N=arguments[C]||{});C++)for(var ie in N)R[ie]=N[ie];return R}o(Ht,"extend");function ts(){for(var R=[],C=0,P=arguments.length;C<P;C++)R=R.concat.apply(R,arguments[C]);return R}o(ts,"unionAll");function Tu(R){if(R[0]==="<"&&(R=R.substring(1,R.length-1)),/^[a-z][a-z0-9.+-]*:/i.test(R))return R;if(!ke.base)throw new Error("Cannot resolve relative IRI "+R+" because no base IRI was set.");switch(yo!==ke.base&&(yo=ke.base,W2=yo.replace(/[^\/:]*$/,""),G2=yo.match(/^(?:[a-z]+:\/*)?[^\/]*/)[0]),R[0]){case void 0:return yo;case"#":return yo+R;case"?":return yo.replace(/(?:\?.*)?$/,R);case"/":return G2+R;default:return W2+R}}o(Tu,"resolveIRI");function By(R){if(R){var C=R[0];if(C==="?"||C==="$")return ke.factory.variable(R.substr(1))}return R}o(By,"toVar");function Fr(R,C){return{type:"operation",operator:R,args:C||[]}}o(Fr,"operation");function yc(R,C){var P={expression:R==="*"?new Ud:R};if(C)for(var N in C)P[N]=C[N];return P}o(yc,"expression");function _c(R,C){return{type:"path",pathType:R,items:C}}o(_c,"path");function Vy(R,C){for(var P=0,N=C.length,ie;P<N&&(ie=C[P]);P++)R=Fr(ie[0],[R,ie[1]]);return R}o(Vy,"createOperationTree");function So(R,C){var P=[],N=[],ie=R.length,Oe,g={};if(!ie)return null;for(var cn=0;cn<ie&&(Oe=R[cn]);cn++)(Oe.named?N:P).push(Oe.iri);return g[C||"from"]={default:P,named:N},g}o(So,"groupDatasets");function Sc(R){return parseInt(R,10)}o(Sc,"toInt");function Uy(R){return R.type==="group"&&R.patterns.length===1?R.patterns[0]:R}o(Uy,"degroupSingle");function rs(R,C){return C&&C.termType!=="NamedNode"&&(C=ke.factory.namedNode(C)),ke.factory.literal(R,C)}o(rs,"createTypedLiteral");function KN(R,C){return ke.factory.literal(R,C)}o(KN,"createLangLiteral");function qy(R,C,P){if(!("termType"in C))throw new Error("Nested triples cannot contain paths");return ke.factory.quad(R,C,P)}o(qy,"nestedTriple");function Vs(R,C,P,N){var ie={};return R!=null&&(ie.subject=R),C!=null&&(ie.predicate=C),P!=null&&(ie.object=P),N!=null&&(ie.annotations=N),ie}o(Vs,"triple");function Au(R){return typeof R=="string"?R.startsWith("e_")?ke.factory.blankNode(R):ke.factory.blankNode("e_"+R):ke.factory.blankNode("g_"+z2++)}o(Au,"blank");var z2=0;ke._resetBlanks=function(){z2=0};var YN=/\\u([a-fA-F0-9]{4})|\\U([a-fA-F0-9]{8})|\\(.)/g,XN={"\\":"\\","'":"'",'"':'"',t:" ",b:"\b",n:`
36
36
  `,r:"\r",f:"\f"},JN=/[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/,Wy=String.fromCharCode;function H2(R,C){R=R.substring(C,R.length-C);try{R=R.replace(YN,function(P,N,ie,Oe){var g;if(N){if(g=parseInt(N,16),isNaN(g))throw new Error;return Wy(g)}else if(ie){if(g=parseInt(ie,16),isNaN(g))throw new Error;return g<65535?Wy(g):Wy(55296+((g-=65536)>>10),56320+(g&1023))}else{var cn=XN[Oe];if(!cn)throw new Error;return cn}})}catch{return""}if(JN.exec(R))throw new Error("Invalid unicode codepoint of surrogate pair without corresponding codepoint in "+R);return R}o(H2,"unescapeString");function ZN(R){var C=Au(),P=C,N=[],ie,Oe=[];R.forEach(function(ns){N.push(ns.entity),_o(Oe,ns.triples)});for(var g=0,cn=0,_=N.length,ie=Array(_*2);g<_;)ie[cn++]=Vs(P,ke.factory.namedNode(zN),N[g]),ie[cn++]=Vs(P,ke.factory.namedNode(HN),P=++g<_?Au():ke.factory.namedNode(B2));return{entity:C,triples:_o(ie,Oe)}}o(ZN,"createList");function eL(R){var C=Au();return{entity:C,triples:R.map(function(P){return Ht(Vs(C),P)})}}o(eL,"createAnonymousObject");function Gy(R,C,P){var N=[],ie=[];return C.forEach(function(Oe){let g=null;Oe.annotation&&(g=Oe.annotation,Oe=Oe.object),N.push(Vs(null,R,Oe.entity,g)),_o(ie,Oe.triples)}),ts(N,P||[],ie)}o(Gy,"objectListToTriples");function TJ(R){for(var C=[],P,N=0,ie;ie=R[N];N++)switch(ie.type){case"bgp":ie.triples.length&&(P?_o(P.triples,ie.triples):Bs(C,P=ie));break;default:(!ie.patterns||ie.patterns.length>0)&&(Bs(C,ie),P=null)}return C}o(TJ,"mergeAdjacentBGPs");function vc(R){return R.variable?R.variable.value:R.value||R.expression.value}o(vc,"getExpressionId");function zy(R){if(!R)return[];if(R.type==="aggregate")return[R];if(R.type==="operation"){let C=[];for(let P of R.args)C.push(...zy(P));return C}return[]}o(zy,"getAggregatesOfExpression");function tL(R){let C=new Set,P=o(function(N){N&&(N.termType==="Variable"?C.add(N):N.type==="operation"&&N.args.forEach(P))},"visitExpression");return P(R),C}o(tL,"getVariablesFromExpression");function Hy(R,C=1,P=[]){for(let N of R)C>0&&N instanceof Array?Hy(N,C-1,P):P.push(N);return P}o(Hy,"flatten");function Qy(R){return R.termType==="Variable"}o(Qy,"isVariable");function Q2(R){if(R.triples){let C=[];for(let P of R.triples)Qy(P.subject)&&C.push(P.subject.value),Qy(P.predicate)&&C.push(P.predicate.value),Qy(P.object)&&C.push(P.object.value);return C}else if(R.patterns){let C=[];for(let P of R.patterns)C.push(...Q2(P));return C}return[]}o(Q2,"getBoundVarsFromGroupGraphPattern");function rL(R){let C=R.slice().sort(),P=[];for(let N=0;N<C.length-1;N++)C[N+1]==C[N]&&P.push(C[N]);return P}o(rL,"getDuplicatesInArray");function xu(R){if(!ke.sparqlStar)throw new Error("SPARQL-star support is not enabled");return R}o(xu,"ensureSparqlStar");function K2(R,C,P){for(let N of C){let ie=Vs("subject"in N?N.subject:R,N.predicate,N.object);P.push(ie),N.annotations&&K2(qy(R,N.predicate,N.object),N.annotations,P)}}o(K2,"_applyAnnotations");function Ky(R){if(ke.sparqlStar){let C=[];return R.forEach(P=>{let N=Vs(P.subject,P.predicate,P.object);C.push(N),P.annotations&&K2(qy(P.subject,P.predicate,P.object),P.annotations,C)}),C}return R}o(Ky,"applyAnnotations");function AJ(R){if(!ke.sparqlStarNestedQuads)throw new Error("Lenient SPARQL-star support with nested quads is not enabled");return R}o(AJ,"ensureSparqlStarNestedQuads");function Y2(R){for(let C of R){if(C.type==="graph"&&C.name.termType==="Variable")throw new Error("Detected illegal variable in GRAPH");if(C.type==="bgp"||C.type==="graph"){for(let P of C.triples)if(P.subject.termType==="Variable"||P.predicate.termType==="Variable"||P.object.termType==="Variable")throw new Error("Detected illegal variable in BGP")}}return R}o(Y2,"ensureNoVariables");function Yy(R){for(let C of R)if(C.type==="bgp"){for(let P of C.triples)if(P.subject.termType==="BlankNode"||P.predicate.termType==="BlankNode"||P.object.termType==="BlankNode")throw new Error("Detected illegal blank node in BGP")}return R}o(Yy,"ensureNoBnodes");var nL=(function(){var R={EOF:1,parseError:o(function(P,N){if(this.yy.parser)this.yy.parser.parseError(P,N);else throw new Error(P)},"parseError"),setInput:o(function(C,P){return this.yy=P||this.yy||{},this._input=C,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var P=C.match(/(?:\r\n?|\n).*/g);return P?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),C},"input"),unput:o(function(C){var P=C.length,N=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-P),this.offset-=P;var ie=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),N.length-1&&(this.yylineno-=N.length-1);var Oe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:N?(N.length===ie.length?this.yylloc.first_column:0)+ie[ie.length-N.length].length-N[0].length:this.yylloc.first_column-P},this.options.ranges&&(this.yylloc.range=[Oe[0],Oe[0]+this.yyleng-P]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
37
37
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(C){this.unput(this.match.slice(C))},"less"),pastInput:o(function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var C=this.match;return C.length<20&&(C+=this._input.substr(0,20-C.length)),(C.substr(0,20)+(C.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var C=this.pastInput(),P=new Array(C.length+1).join("-");return C+this.upcomingInput()+`
38
38
  `+P+"^"},"showPosition"),test_match:o(function(C,P){var N,ie,Oe;if(this.options.backtrack_lexer&&(Oe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Oe.yylloc.range=this.yylloc.range.slice(0))),ie=C[0].match(/(?:\r\n?|\n).*/g),ie&&(this.yylineno+=ie.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ie?ie[ie.length-1].length-ie[ie.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+C[0].length},this.yytext+=C[0],this.match+=C[0],this.matches=C,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(C[0].length),this.matched+=C[0],N=this.performAction.call(this,this.yy,this,P,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),N)return N;if(this._backtrack){for(var g in Oe)this[g]=Oe[g];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var C,P,N,ie;this._more||(this.yytext="",this.match="");for(var Oe=this._currentRules(),g=0;g<Oe.length;g++)if(N=this._input.match(this.rules[Oe[g]]),N&&(!P||N[0].length>P[0].length)){if(P=N,ie=g,this.options.backtrack_lexer){if(C=this.test_match(N,Oe[g]),C!==!1)return C;if(this._backtrack){P=!1;continue}else return!1}else if(!this.options.flex)break}return P?(C=this.test_match(P,Oe[ie]),C!==!1?C:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
@@ -45,7 +45,7 @@ Expecting `+Kd.join(", ")+", got '"+(this.terminals_[ft]||ft)+"'":Jy="Parse erro
45
45
  `)+`
46
46
  `+s.trimStart()),s}findPrefixStarDeclarations(e){let t=[],r=e.toUpperCase(),i=0;for(;i<e.length;){if(e[i]==="'"||e[i]==='"'){let s=e[i];for(i++;i<e.length&&e[i]!==s;)e[i]==="\\"&&i++,i++;i++;continue}if(r.substring(i,i+6)==="PREFIX"){let s=i;for(i+=6;i<e.length&&/\s/.test(e[i]);)i++;if(e[i]==="*"){for(i++;i<e.length&&/\s/.test(e[i]);)i++;if(e[i]==="<"){i++;let a=i;for(;i<e.length&&e[i]!==">";)i++;if(e[i]===">"){let c=e.substring(a,i);i++;let l=this.findDeclarationEnd(e,i);t.push({uri:c,startPos:s,endPos:l}),i=l;continue}else throw new Nc(`Unclosed IRI in PREFIX* declaration at position ${a}`)}else throw new Nc(`Expected IRI after PREFIX* at position ${i}`)}else continue}i++}return t}findDeclarationEnd(e,t){let r=t;for(;r<e.length;){let i=e[r];if(i===`
47
47
  `)return r+1;let s=e.substring(r).toUpperCase();if(s.startsWith("PREFIX")||s.startsWith("BASE")||s.startsWith("SELECT")||s.startsWith("CONSTRUCT")||s.startsWith("DESCRIBE")||s.startsWith("ASK"))return r;if(/\s/.test(i)){r++;continue}break}return r}extractPrefixFromUri(e){let t=e.replace(/^https?:\/\//,"");t=t.replace(/\/$/,"").replace(/#$/,"");let r=t.split(/[/.#]+/).filter(Boolean);if(r.length===0)return null;let i=r[r.length-1];return/^(ontology|vocab|schema|ns|core)$/i.test(i)&&r.length>1?r[r.length-2].toLowerCase():i.toLowerCase().replace(/[^a-z0-9]/g,"")}};Na.PrefixStarTransformer=n1;var Nc=class extends Error{static{o(this,"PrefixStarTransformerError")}constructor(e){super(`PREFIX* transformation error: ${e}`),this.name="PrefixStarTransformerError"}};Na.PrefixStarTransformerError=Nc});var i1=S(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});kc.DescribeOptionsTransformer=kc.DescribeOptionsTransformerError=void 0;var np=class extends Error{static{o(this,"DescribeOptionsTransformerError")}constructor(e){super(e),this.name="DescribeOptionsTransformerError"}};kc.DescribeOptionsTransformerError=np;var Lc=class n{static{o(this,"DescribeOptionsTransformer")}transform(e){if(!n.DESCRIBE_QUERY_PATTERN.test(e))return{query:e};let t=e,r={},i=!1,s=n.DEPTH_PATTERN.exec(e);if(s){let a=parseInt(s[1],10);if(a<0)throw new np(`DESCRIBE DEPTH must be a non-negative integer, got: ${a}`);r.depth=a,i=!0,n.DEPTH_PATTERN.lastIndex=0,t=t.replace(n.DEPTH_PATTERN,"")}return n.DEPTH_PATTERN.lastIndex=0,n.SYMMETRIC_PATTERN.test(e)&&(r.symmetric=!0,i=!0,n.SYMMETRIC_PATTERN.lastIndex=0,t=t.replace(n.SYMMETRIC_PATTERN,"")),n.SYMMETRIC_PATTERN.lastIndex=0,t=t.replace(/\s{2,}/g," ").trim(),{query:t,options:i?r:void 0}}hasDescribeOptions(e){let t=n.DEPTH_PATTERN.test(e);n.DEPTH_PATTERN.lastIndex=0;let r=n.SYMMETRIC_PATTERN.test(e);return n.SYMMETRIC_PATTERN.lastIndex=0,t||r}};kc.DescribeOptionsTransformer=Lc;Lc.DEPTH_PATTERN=/\bDEPTH\s+(\d+)/gi;Lc.SYMMETRIC_PATTERN=/\bSYMMETRIC\b/gi;Lc.DESCRIBE_QUERY_PATTERN=/\bDESCRIBE\b/i});var YA=S(Mc=>{"use strict";Object.defineProperty(Mc,"__esModule",{value:!0});Mc.DirectionalLangTagTransformerError=Mc.DirectionalLangTagTransformer=void 0;var ip=class n{static{o(this,"DirectionalLangTagTransformer")}constructor(){this.directionMappings=new Map}transform(e){return this.directionMappings.clear(),e.replace(n.DIRECTIONAL_TAG_REGEX,(t,r,i,s,a)=>{let c=s.toLowerCase();return this.directionMappings.set(c,a),`${r}${i}${r}@${s}`})}getDirection(e){return this.directionMappings.get(e.toLowerCase())}getAllMappings(){return new Map(this.directionMappings)}hasDirectionalTags(e){return n.DIRECTIONAL_TAG_REGEX.lastIndex=0,n.DIRECTIONAL_TAG_REGEX.test(e)}clearMappings(){this.directionMappings.clear()}};Mc.DirectionalLangTagTransformer=ip;ip.DIRECTIONAL_TAG_REGEX=/(["'])((?:[^\\]|\\.)*?)\1@([a-zA-Z]+(?:-[a-zA-Z0-9]+)*)--(ltr|rtl)/g;var s1=class extends Error{static{o(this,"DirectionalLangTagTransformerError")}constructor(e){super(`Directional language tag transformation error: ${e}`),this.name="DirectionalLangTagTransformerError"}};Mc.DirectionalLangTagTransformerError=s1});var XA=S($c=>{"use strict";Object.defineProperty($c,"__esModule",{value:!0});$c.TripleTermTransformerError=$c.TripleTermTransformer=void 0;var a1=class{static{o(this,"TripleTermTransformer")}transform(e){let t=e,r,i=0,s=100;do if(r=t,t=this.transformSinglePass(t),i++,i>s)throw new jc("Too many nested triple terms (max 100 iterations)");while(t!==r);return t}hasTripleTermSyntax(e){return this.findTripleTermPositions(e).length>0}transformSinglePass(e){let t=this.findTripleTermPositions(e);if(t.length===0)return e;let r=e;for(let i=t.length-1;i>=0;i--){let s=t[i],a=this.extractTripleTerm(r,s);if(a){let c=this.convertToStandardSyntax(a.content);r=r.substring(0,s)+c+r.substring(s+a.length)}}return r}findTripleTermPositions(e){let t=[],r=0;for(;r<e.length;){if(e[r]==="'"){r=this.skipStringLiteral(e,r,"'");continue}if(e[r]==='"'){r=this.skipStringLiteral(e,r,'"');continue}if(e.substring(r,r+2)==="<<"&&this.isParenthesizedTripleTerm(e,r)){t.push(r),r+=2;continue}r++}return t}skipStringLiteral(e,t,r){let i=r.repeat(3);if(e.substring(t,t+3)===i){for(t+=3;t<e.length;){if(e.substring(t,t+3)===i)return t+3;e[t]==="\\"&&t++,t++}return t}for(t++;t<e.length&&e[t]!==r;)e[t]==="\\"&&t++,t++;return t+1}isParenthesizedTripleTerm(e,t){let r=t+2;for(;r<e.length&&/\s/.test(e[r]);)r++;return e[r]==="("}extractTripleTerm(e,t){let r=t+2;for(;r<e.length&&/\s/.test(e[r]);)r++;if(e[r]!=="(")return null;r++;let i=1;for(;r<e.length&&i>0;){if(e[r]==="'"||e[r]==='"'){r=this.skipStringLiteral(e,r,e[r]);continue}if(e.substring(r,r+2)==="<<"&&this.isParenthesizedTripleTerm(e,r)){for(r+=2;r<e.length&&/\s/.test(e[r]);)r++;e[r]==="("&&(i++,r++);continue}if(e.substring(r,r+2)==="<<"){r+=2;let s=1;for(;r<e.length&&s>0;){if(e[r]==="'"||e[r]==='"'){r=this.skipStringLiteral(e,r,e[r]);continue}if(e.substring(r,r+2)==="<<"){s++,r+=2;continue}if(e.substring(r,r+2)===">>"){s--,r+=2;continue}r++}continue}if(e[r]==="("){i++,r++;continue}if(e[r]===")"){let s=r+1;for(;s<e.length&&/\s/.test(e[s]);)s++;if(e.substring(s,s+2)===">>"){if(i--,i===0){let a=e.substring(t,s+2);return{content:a,length:a.length}}r=s+2;continue}r++;continue}r++}if(i>0)throw new jc(`Unclosed triple term at position ${t}: missing )>>`);return null}convertToStandardSyntax(e){let t=e.match(/^<<\s*\(\s*([\s\S]*?)\s*\)\s*>>$/);if(!t)throw new jc(`Invalid triple term syntax: ${e.substring(0,50)}...`);return`<< ${t[1]} >>`}};$c.TripleTermTransformer=a1;var jc=class extends Error{static{o(this,"TripleTermTransformerError")}constructor(e){super(`Triple term transformation error: ${e}`),this.name="TripleTermTransformerError"}};$c.TripleTermTransformerError=jc});var c1=S(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});sp.VaultPrefixTransformer=void 0;var d9=/PREFIX\s+(\w+)\s*:/gi,h9=new Set(["mailto","http","https","urn","ftp","prefix","base","select","construct","describe","ask","where","filter","optional","union","graph","order","group","having","limit","offset","values","bind","minus","service","insert","delete","load","clear","drop","create","move","copy","add"]),o1=class{static{o(this,"VaultPrefixTransformer")}constructor(){this.vaultPrefixes=new Map}setVaultPrefixes(e){this.vaultPrefixes=new Map(e)}getVaultPrefixes(){return new Map(this.vaultPrefixes)}transform(e){if(this.vaultPrefixes.size===0)return e;let t=this.findDeclaredPrefixes(e),r=[];for(let[a,c]of this.vaultPrefixes)!t.has(a.toLowerCase())&&!h9.has(a.toLowerCase())&&r.push({prefix:a,baseIRI:c});if(r.length===0)return e;let i="",s=0;for(;s<e.length;){let a=e[s];if(a==='"'||a==="'"){let l=this.skipLiteral(e,s);i+=e.substring(s,l),s=l;continue}if(a==="<"){let l=e.indexOf(">",s);l!==-1?(i+=e.substring(s,l+1),s=l+1):(i+=a,s++);continue}if(a==="#"){let l=e.indexOf(`
48
- `,s);l!==-1?(i+=e.substring(s,l),s=l):(i+=e.substring(s),s=e.length);continue}let c=this.tryReplacePrefixedName(e,s,r);if(c){i+=c.iri,s=c.endIndex;continue}i+=a,s++}return i}tryReplacePrefixedName(e,t,r){if(t>0&&/[a-zA-Z0-9_]/.test(e[t-1]))return null;for(let{prefix:i,baseIRI:s}of r){if(e.substring(t,t+i.length+1)!==i+":")continue;let a=t+i.length+1,c=a;for(;c<e.length&&/[a-zA-Z0-9_.%-]/.test(e[c]);)c++;if(c===a)continue;let l=e.substring(a,c);return{iri:`<${s}${l}.md>`,endIndex:c}}return null}findDeclaredPrefixes(e){let t=new Set,r=new RegExp(d9.source,"gi"),i;for(;(i=r.exec(e))!==null;)t.add(i[1].toLowerCase());return t}skipLiteral(e,t){let r=e[t];if(t+2<e.length&&e.substring(t,t+3)===r+r+r){let s=e.indexOf(r+r+r,t+3);return s!==-1?s+3:e.length}let i=t+1;for(;i<e.length&&e[i]!==r;)e[i]==="\\"&&i++,i++;return i<e.length?i+1:e.length}};sp.VaultPrefixTransformer=o1});var Bc=S(Cn=>{"use strict";var p9=Cn&&Cn.__createBinding||(Object.create?(function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(n,r,i)}):(function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]})),m9=Cn&&Cn.__setModuleDefault||(Object.create?(function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}):function(n,e){n.default=e}),g9=Cn&&Cn.__importStar||(function(){var n=o(function(e){return n=Object.getOwnPropertyNames||function(t){var r=[];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r[r.length]=i);return r},n(e)},"ownKeys");return function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=n(e),i=0;i<r.length;i++)r[i]!=="default"&&p9(t,e,r[i]);return m9(t,e),t}})();Object.defineProperty(Cn,"__esModule",{value:!0});Cn.SPARQLParser=Cn.ExoQLParser=Cn.SPARQLParseError=void 0;var JA=g9(QA()),l1=t1(),u1=r1(),ZA=KA(),f1=i1(),y9=YA(),d1=XA(),_9=c1(),cr=class extends Error{static{o(this,"SPARQLParseError")}constructor(e,t,r,i){super(e,i?{cause:i}:void 0),this.name="SPARQLParseError",this.line=t,this.column=r}};Cn.SPARQLParseError=cr;var ap=class{static{o(this,"ExoQLParser")}constructor(e){this.lastDirectionMappings=new Map,this.parser=new JA.Parser({sparqlStar:!0}),this.generator=new JA.Generator({sparqlStar:!0}),this.caseWhenTransformer=new l1.CaseWhenTransformer,this.lateralTransformer=new u1.LateralTransformer,this.prefixStarTransformer=new ZA.PrefixStarTransformer(e?.vocabularyResolver),this.describeOptionsTransformer=new f1.DescribeOptionsTransformer,this.directionalLangTagTransformer=new y9.DirectionalLangTagTransformer,this.tripleTermTransformer=new d1.TripleTermTransformer,this.vaultPrefixTransformer=new _9.VaultPrefixTransformer}setVaultPrefixes(e){this.vaultPrefixTransformer.setVaultPrefixes(e)}parse(e){try{let t=this.vaultPrefixTransformer.transform(e),r=this.describeOptionsTransformer.transform(t);this.lastDescribeOptions=r.options;let i=r.query;i=this.directionalLangTagTransformer.transform(i),this.lastDirectionMappings=this.directionalLangTagTransformer.getAllMappings(),i=this.lateralTransformer.transform(i),i=this.caseWhenTransformer.transform(i),i=this.tripleTermTransformer.transform(i);let s=this.parser.parse(i);return this.validateQuery(s),this.lastDescribeOptions&&this.isDescribeQuery(s)&&(s.describeOptions=this.lastDescribeOptions),s}catch(t){if(t instanceof f1.DescribeOptionsTransformerError)throw new cr(t.message);if(t instanceof u1.LateralTransformerError)throw new cr(t.message);if(t instanceof l1.CaseWhenTransformerError)throw new cr(t.message);if(t instanceof d1.TripleTermTransformerError)throw new cr(t.message);if(t instanceof Error){let r=t.message.match(/line (\d+), column (\d+)/),i=r?parseInt(r[1],10):void 0,s=r?parseInt(r[2],10):void 0;throw new cr(`SPARQL syntax error: ${t.message}`,i,s,t)}throw t}}parseWithOptions(e){return{query:this.parse(e),describeOptions:this.lastDescribeOptions}}getLastDescribeOptions(){return this.lastDescribeOptions}async parseAsync(e){try{let t=this.vaultPrefixTransformer.transform(e),r=this.describeOptionsTransformer.transform(t);this.lastDescribeOptions=r.options;let i=r.query;i=this.directionalLangTagTransformer.transform(i),this.lastDirectionMappings=this.directionalLangTagTransformer.getAllMappings(),i=await this.prefixStarTransformer.transform(i),i=this.lateralTransformer.transform(i),i=this.caseWhenTransformer.transform(i),i=this.tripleTermTransformer.transform(i);let s=this.parser.parse(i);return this.validateQuery(s),this.lastDescribeOptions&&this.isDescribeQuery(s)&&(s.describeOptions=this.lastDescribeOptions),s}catch(t){if(t instanceof f1.DescribeOptionsTransformerError)throw new cr(t.message);if(t instanceof ZA.PrefixStarTransformerError)throw new cr(t.message);if(t instanceof u1.LateralTransformerError)throw new cr(t.message);if(t instanceof l1.CaseWhenTransformerError)throw new cr(t.message);if(t instanceof d1.TripleTermTransformerError)throw new cr(t.message);if(t instanceof Error){let r=t.message.match(/line (\d+), column (\d+)/),i=r?parseInt(r[1],10):void 0,s=r?parseInt(r[2],10):void 0;throw new cr(`SPARQL syntax error: ${t.message}`,i,s,t)}throw t}}async parseAsyncWithOptions(e){return{query:await this.parseAsync(e),describeOptions:this.lastDescribeOptions}}hasPrefixStar(e){return/PREFIX\s*\*/i.test(e)}hasLateral(e){return this.lateralTransformer.hasLateral(e)}hasDescribeOptions(e){return this.describeOptionsTransformer.hasDescribeOptions(e)}hasDirectionalLangTags(e){return this.directionalLangTagTransformer.hasDirectionalTags(e)}hasTripleTermSyntax(e){return this.tripleTermTransformer.hasTripleTermSyntax(e)}getLastDirectionMappings(){return new Map(this.lastDirectionMappings)}getDirectionForLanguage(e){return this.lastDirectionMappings.get(e.toLowerCase())}toString(e){try{return this.generator.stringify(e)}catch(t){throw t instanceof Error?new cr(`Failed to serialize SPARQL query: ${t.message}`,void 0,void 0,t):t}}getQueryType(e){if("queryType"in e&&e.type==="query")return e.queryType;throw new cr("Query does not have a valid queryType property")}isSelectQuery(e){return"queryType"in e&&e.type==="query"&&e.queryType==="SELECT"}isConstructQuery(e){return"queryType"in e&&e.type==="query"&&e.queryType==="CONSTRUCT"}isAskQuery(e){return"queryType"in e&&e.type==="query"&&e.queryType==="ASK"}isDescribeQuery(e){return"queryType"in e&&e.type==="query"&&e.queryType==="DESCRIBE"}isUpdateQuery(e){return e.type==="update"}isInsertDataOperation(e){return"updateType"in e&&e.updateType==="insert"}isDeleteDataOperation(e){return"updateType"in e&&e.updateType==="delete"}validateQuery(e){if(!e||typeof e!="object")throw new cr("Invalid query: not an object");if(e.type!=="query"&&e.type!=="update")throw new cr(`Invalid type: expected "query" or "update", got "${e.type}"`);if(e.type==="query"){let t=["SELECT","CONSTRUCT","ASK","DESCRIBE"];if(!t.includes(e.queryType))throw new cr(`Invalid query type: expected one of ${t.join(", ")}, got "${e.queryType}"`)}}};Cn.ExoQLParser=ap;Cn.SPARQLParser=ap});var Do=S(op=>{"use strict";Object.defineProperty(op,"__esModule",{value:!0});op.AlgebraTranslatorError=void 0;var h1=class extends Error{static{o(this,"AlgebraTranslatorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="AlgebraTranslatorError"}};op.AlgebraTranslatorError=h1});var cp=S(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});ls.isVariableExpression=S9;ls.isVariableTerm=v9;ls.isNamedNode=b9;ls.isLiteral=w9;ls.isPropertyPath=E9;ls.isAggregateExpression=T9;ls.isOperationExpression=A9;ls.isFunctionCallExpression=x9;function S9(n){return typeof n=="object"&&n!==null&&"expression"in n&&"variable"in n}o(S9,"isVariableExpression");function v9(n){return typeof n=="object"&&n!==null&&"termType"in n&&n.termType==="Variable"}o(v9,"isVariableTerm");function b9(n){return typeof n=="object"&&n!==null&&"termType"in n&&n.termType==="NamedNode"}o(b9,"isNamedNode");function w9(n){return typeof n=="object"&&n!==null&&"termType"in n&&n.termType==="Literal"}o(w9,"isLiteral");function E9(n){return typeof n=="object"&&n!==null&&"type"in n&&n.type==="path"}o(E9,"isPropertyPath");function T9(n){return typeof n=="object"&&n!==null&&"type"in n&&n.type==="aggregate"}o(T9,"isAggregateExpression");function A9(n){return typeof n=="object"&&n!==null&&"type"in n&&n.type==="operation"}o(A9,"isOperationExpression");function x9(n){return typeof n=="object"&&n!==null&&"type"in n&&(n.type==="functionCall"||n.type==="functioncall")}o(x9,"isFunctionCallExpression")});var ex=S(lp=>{"use strict";Object.defineProperty(lp,"__esModule",{value:!0});lp.TripleTranslator=void 0;var dn=Do(),p1=class{static{o(this,"TripleTranslator")}constructor(){this.directionMappings=new Map}setDirectionMappings(e){this.directionMappings=e}translateBGP(e){if(!("triples"in e)||!Array.isArray(e.triples))throw new dn.AlgebraTranslatorError("BGP pattern must have triples array");return{type:"bgp",triples:e.triples.map(t=>this.translateTriple(t))}}translateTriple(e){if(!e.subject||!e.predicate||!e.object)throw new dn.AlgebraTranslatorError("Triple must have subject, predicate, and object");return{subject:this.translateTripleElement(e.subject),predicate:this.translatePredicate(e.predicate),object:this.translateTripleElement(e.object)}}translateConstructTemplate(e){return!e||!Array.isArray(e)?[]:e.map(t=>this.translateTriple(t))}translatePredicate(e){return"type"in e&&e.type==="path"?this.translatePropertyPath(e):this.translateTripleElement(e)}translatePropertyPath(e){if(!("pathType"in e)||!e.pathType)throw new dn.AlgebraTranslatorError("Property path must have pathType");if(!("items"in e)||!Array.isArray(e.items))throw new dn.AlgebraTranslatorError("Property path must have items array");let t=e.items.map(r=>this.translatePathItem(r));switch(e.pathType){case"/":return{type:"path",pathType:"/",items:t};case"|":return{type:"path",pathType:"|",items:t};case"^":if(t.length!==1)throw new dn.AlgebraTranslatorError("Inverse path must have exactly one item");return{type:"path",pathType:"^",items:[t[0]]};case"+":if(t.length!==1)throw new dn.AlgebraTranslatorError("OneOrMore path must have exactly one item");return{type:"path",pathType:"+",items:[t[0]]};case"*":if(t.length!==1)throw new dn.AlgebraTranslatorError("ZeroOrMore path must have exactly one item");return{type:"path",pathType:"*",items:[t[0]]};case"?":if(t.length!==1)throw new dn.AlgebraTranslatorError("ZeroOrOne path must have exactly one item");return{type:"path",pathType:"?",items:[t[0]]};default:throw new dn.AlgebraTranslatorError(`Unsupported property path type: ${e.pathType}`)}}translatePathItem(e){if("type"in e&&e.type==="path")return this.translatePropertyPath(e);if("termType"in e&&e.termType==="NamedNode")return{type:"iri",value:e.value};let t="type"in e?e.type:"termType"in e?e.termType:"unknown";throw new dn.AlgebraTranslatorError(`Unsupported path item type: ${String(t)}`)}translateTripleElement(e){if(!e||!("termType"in e))throw new dn.AlgebraTranslatorError("Triple element must have termType");switch(e.termType){case"Variable":return{type:"variable",value:e.value};case"NamedNode":return{type:"iri",value:e.value};case"Literal":{let t={type:"literal",value:e.value,datatype:e.datatype?.value,language:e.language};if(e.language){let r=this.directionMappings.get(e.language.toLowerCase());r&&(t.direction=r)}return t}case"BlankNode":return{type:"blank",value:e.value};case"Quad":return this.translateQuotedTriple(e);default:throw new dn.AlgebraTranslatorError(`Unsupported term type: ${e.termType}`)}}translateQuotedTriple(e){if(!e.subject||!e.predicate||!e.object)throw new dn.AlgebraTranslatorError("Quoted triple must have subject, predicate, and object");return{type:"quoted",subject:this.translateTripleElement(e.subject),predicate:this.translateQuotedTriplePredicate(e.predicate),object:this.translateTripleElement(e.object)}}translateQuotedTriplePredicate(e){if(!e||!("termType"in e))throw new dn.AlgebraTranslatorError("Quoted triple predicate must have termType");switch(e.termType){case"Variable":return{type:"variable",value:e.value};case"NamedNode":return{type:"iri",value:e.value};default:throw new dn.AlgebraTranslatorError(`Quoted triple predicate must be IRI or Variable, got: ${e.termType}`)}}};lp.TripleTranslator=p1});var tx=S(up=>{"use strict";Object.defineProperty(up,"__esModule",{value:!0});up.ExpressionTranslator=void 0;var Vc=Do(),m1=class{static{o(this,"ExpressionTranslator")}constructor(e){this.translateWhereFn=e.translateWhere,this.translateBGPFn=e.translateBGP,this.translatePatternFn=e.translatePattern}translateExpression(e){if(!e)throw new Vc.AlgebraTranslatorError("Expression cannot be null or undefined");if("type"in e&&e.type==="operation")return this.translateOperationExpression(e);let t="type"in e?e.type:void 0;if(t==="functioncall"||t==="functionCall"){let r=e;return{type:"functionCall",function:r.function,args:r.args.map(i=>this.translateExpression(i))}}if("termType"in e)return this.translateTermExpression(e);throw new Vc.AlgebraTranslatorError(`Unsupported expression structure: ${JSON.stringify(e)}`)}translateFilter(e){if(!e.expression)throw new Vc.AlgebraTranslatorError("Filter pattern must have expression");let t={type:"bgp",triples:[]};return{type:"filter",expression:this.translateExpression(e.expression),input:t}}translateTermExpression(e){if(e.termType==="Variable")return{type:"variable",name:e.value};if(e.termType==="Literal"){let t=e.value;return e.datatype&&(e.datatype.value.includes("#integer")||e.datatype.value.includes("#decimal")?t=parseFloat(e.value):e.datatype.value.includes("#boolean")&&(t=e.value==="true")),{type:"literal",value:t,datatype:e.datatype?.value}}return{type:"literal",value:String(e.value||e)}}translateOperationExpression(e){let t=["=","!=","<",">","<=",">="],r=["&&","||","!"],i=["+","-","*","/"],s=e.args.filter(a=>!("patterns"in a)||"termType"in a);return t.includes(e.operator)?{type:"comparison",operator:e.operator,left:this.translateExpression(s[0]),right:this.translateExpression(s[1])}:r.includes(e.operator)?{type:"logical",operator:e.operator,operands:s.map(a=>this.translateExpression(a))}:i.includes(e.operator)?{type:"arithmetic",operator:e.operator,left:this.translateExpression(s[0]),right:this.translateExpression(s[1])}:e.operator==="exists"||e.operator==="notexists"?this.translateExistsExpression(e):e.operator==="in"||e.operator==="notin"?this.translateInExpression(e):{type:"function",function:e.operator,args:s.map(a=>this.translateExpression(a))}}translateExistsExpression(e){if(!e.args||e.args.length!==1)throw new Vc.AlgebraTranslatorError("EXISTS/NOT EXISTS must have exactly one pattern argument");let t=e.args[0],r;return t.type==="group"&&"patterns"in t&&t.patterns?r=this.translateWhereFn(t.patterns):t.type==="bgp"?r=this.translateBGPFn(t):r=this.translatePatternFn(t),{type:"exists",negated:e.operator==="notexists",pattern:r}}translateInExpression(e){if(!e.args||e.args.length!==2)throw new Vc.AlgebraTranslatorError("IN/NOT IN must have exactly 2 arguments (expression and list)");let t=e.args[0],r=e.args[1];if(!Array.isArray(r))throw new Vc.AlgebraTranslatorError("IN/NOT IN second argument must be an array of values");return{type:"in",expression:this.translateExpression(t),list:r.map(i=>this.translateExpression(i)),negated:e.operator==="notin"}}};up.ExpressionTranslator=m1});var ix=S(fp=>{"use strict";Object.defineProperty(fp,"__esModule",{value:!0});fp.PatternTranslator=void 0;var rx=r1(),Nr=Do(),nx=cp(),g1=class{static{o(this,"PatternTranslator")}constructor(e){this.directionMappings=new Map,this.translateExpressionFn=e.translateExpression,this.translateSelectFn=e.translateSelect,this.translateBGPFn=e.translateBGP}setDirectionMappings(e){this.directionMappings=e}translateWhere(e){if(e.length===0)throw new Nr.AlgebraTranslatorError("Empty WHERE clause");let t=e.filter(a=>a.type==="filter"),r=e.filter(a=>a.type==="bind"),i=e.filter(a=>a.type!=="filter"&&a.type!=="bind"),s;if(i.length===0)s={type:"bgp",triples:[]};else if(i.length===1)if(i[0].type==="optional"){let a=i[0].expression;s={type:"leftjoin",left:{type:"bgp",triples:[]},right:this.translateWhere(i[0].patterns),expression:a?this.translateExpressionFn(a):void 0}}else s=this.translatePattern(i[0]);else{if(i[0].type==="optional"){let a=i[0].expression;s={type:"leftjoin",left:{type:"bgp",triples:[]},right:this.translateWhere(i[0].patterns),expression:a?this.translateExpressionFn(a):void 0}}else s=this.translatePattern(i[0]);for(let a=1;a<i.length;a++){let c=i[a];if(this.isLateralPattern(c)){let l=this.extractLateralSubquery(c),u=this.removeLateralMarker(l),f=this.translateSelectFn(u);s={type:"lateraljoin",left:s,right:f}}else if(c.type==="optional"){let l=c.expression;s={type:"leftjoin",left:s,right:this.translateWhere(c.patterns),expression:l?this.translateExpressionFn(l):void 0}}else{let l=this.translatePattern(c);s={type:"join",left:s,right:l}}}}for(let a of r)s=this.translateBind(a,s);for(let a of t)s={type:"filter",expression:this.translateExpressionFn(a.expression),input:s};return s}translatePattern(e){if(!e||!e.type)throw new Nr.AlgebraTranslatorError("Invalid pattern: missing type");switch(e.type){case"bgp":return this.translateBGPFn(e);case"filter":return this.translateFilter(e);case"optional":return this.translateOptional(e);case"union":return this.translateUnion(e);case"minus":return this.translateMinus(e);case"values":return this.translateValues(e);case"group":return this.translateWhere(e.patterns);case"query":return this.translateSubquery(e);case"service":return this.translateService(e);case"graph":return this.translateGraph(e);default:throw new Nr.AlgebraTranslatorError(`Unsupported pattern type: ${e.type}`)}}translateFilter(e){if(!e.expression)throw new Nr.AlgebraTranslatorError("Filter pattern must have expression");let t={type:"bgp",triples:[]};return{type:"filter",expression:this.translateExpressionFn(e.expression),input:t}}translateOptional(e){if(!e.patterns||e.patterns.length===0)throw new Nr.AlgebraTranslatorError("OPTIONAL pattern must have patterns");let t=e.expression;return{type:"leftjoin",left:{type:"bgp",triples:[]},right:this.translateWhere(e.patterns),expression:t?this.translateExpressionFn(t):void 0}}translateUnion(e){if(!e.patterns||e.patterns.length<2)throw new Nr.AlgebraTranslatorError("UNION pattern must have at least 2 patterns");let t=o(i=>i.type==="graph"?this.translateGraph(i):i.type==="service"?this.translateService(i):"patterns"in i&&i.patterns&&Array.isArray(i.patterns)?this.translateWhere(i.patterns):this.translateWhere([i]),"translateBranch"),r={type:"union",left:t(e.patterns[0]),right:t(e.patterns[1])};for(let i=2;i<e.patterns.length;i++)r={type:"union",left:r,right:t(e.patterns[i])};return r}translateMinus(e){if(!e.patterns||e.patterns.length===0)throw new Nr.AlgebraTranslatorError("MINUS pattern must have patterns");return{type:"minus",left:{type:"bgp",triples:[]},right:this.translateWhere(e.patterns)}}translateValues(e){if(!e.values||!Array.isArray(e.values))throw new Nr.AlgebraTranslatorError("VALUES pattern must have values array");let t=new Set;for(let i of e.values)for(let s of Object.keys(i)){let a=s.startsWith("?")?s.slice(1):s;t.add(a)}let r=e.values.map(i=>this.translateValuesBinding(i));return{type:"values",variables:Array.from(t),bindings:r}}translateValuesBinding(e){let t={};for(let[r,i]of Object.entries(e)){let s=r.startsWith("?")?r.slice(1):r,a=i;if(a)if(a.termType==="NamedNode")t[s]={type:"iri",value:a.value};else if(a.termType==="Literal"){let c=a,l={type:"literal",value:c.value,datatype:c.datatype?.value,language:c.language||void 0};if(c.language){let u=this.directionMappings.get(c.language.toLowerCase());u&&(l.direction=u)}t[s]=l}else throw new Nr.AlgebraTranslatorError(`Unsupported VALUES term type: ${a.termType}`)}return t}translateBind(e,t){if(!e.variable||!e.expression)throw new Nr.AlgebraTranslatorError("BIND pattern must have variable and expression");return{type:"extend",variable:e.variable.value,expression:this.translateExpressionFn(e.expression),input:t}}translateSubquery(e){if(e.queryType!=="SELECT")throw new Nr.AlgebraTranslatorError(`Only SELECT subqueries are supported, got: ${String(e.queryType)}`);let t=this.removeLateralMarker(e);return{type:"subquery",query:this.translateSelectFn(t)}}translateService(e){if(!e.name||e.name.termType!=="NamedNode")throw new Nr.AlgebraTranslatorError("SERVICE pattern must have a NamedNode endpoint");if(!e.patterns||!Array.isArray(e.patterns))throw new Nr.AlgebraTranslatorError("SERVICE pattern must have patterns array");return{type:"service",endpoint:e.name.value,pattern:this.translateWhere(e.patterns),silent:e.silent||!1}}translateGraph(e){if(!e.name)throw new Nr.AlgebraTranslatorError("GRAPH pattern must have a name (IRI or variable)");if(!e.patterns||!Array.isArray(e.patterns))throw new Nr.AlgebraTranslatorError("GRAPH pattern must have patterns array");let t;if(e.name.termType==="NamedNode")t={type:"iri",value:e.name.value};else if(e.name.termType==="Variable")t={type:"variable",value:e.name.value};else throw new Nr.AlgebraTranslatorError(`GRAPH pattern name must be NamedNode or Variable, got: ${e.name.termType}`);return{type:"graph",name:t,pattern:this.translateWhere(e.patterns)}}isLateralPattern(e){if(e.type==="query"&&this.isLateralSubquery(e))return!0;if(e.type==="group"&&e.patterns?.length===1){let t=e.patterns[0];if(t.type==="query"&&this.isLateralSubquery(t))return!0}return!1}extractLateralSubquery(e){if(e.type==="query")return e;if(e.type==="group"&&e.patterns?.length===1){let t=e.patterns[0];if(t.type==="query")return t}throw new Nr.AlgebraTranslatorError("Invalid lateral pattern structure")}isLateralSubquery(e){return!("queryType"in e)||e.queryType!=="SELECT"||!("variables"in e)||!e.variables?!1:e.variables.some(i=>(0,nx.isVariableTerm)(i)&&i.value===rx.LateralTransformer.LATERAL_MARKER)}removeLateralMarker(e){if(!("variables"in e)||!e.variables)return e;let t=e,r=t.variables;return{...t,variables:r.filter(i=>!((0,nx.isVariableTerm)(i)&&i.value===rx.LateralTransformer.LATERAL_MARKER))}}};fp.PatternTranslator=g1});var ax=S(dp=>{"use strict";Object.defineProperty(dp,"__esModule",{value:!0});dp.AggregateTranslator=void 0;var sx=Do(),C9=cp(),y1=class{static{o(this,"AggregateTranslator")}constructor(e){this.aggregateCounter=0,this.translateExpressionFn=e.translateExpression}resetCounter(){this.aggregateCounter=0}extractAggregatesWithMapping(e,t){if(!e)return[];let r=[];for(let i of e)(0,C9.isVariableExpression)(i)&&("type"in i.expression&&i.expression.type==="aggregate"?(r.push({variable:i.variable.value,expression:this.translateAggregateExpression(i.expression)}),t.set(i.expression,i.variable.value)):this.collectNestedAggregates(i.expression,r,t));return r}extractGroupVariables(e){return e?e.filter(t=>t.expression&&"termType"in t.expression&&t.expression.termType==="Variable").map(t=>t.expression.value):[]}extractHavingExpressions(e,t,r){if(!e||e.length===0)return[];for(let i of e)this.collectNestedAggregates(i,t,r);return e.map(i=>this.transformExpressionWithAggregateVars(i,r))}transformExpressionWithAggregateVars(e,t){let r=t.get(e);if(r!==void 0)return{type:"variable",name:r};if("type"in e&&e.type==="operation"&&"args"in e){let i=e,s=i.args.filter(u=>!Array.isArray(u)&&!("patterns"in u)).map(u=>this.transformExpressionWithAggregateVars(u,t)),a=["=","!=","<",">","<=",">="],c=["&&","||","!"],l=["+","-","*","/"];return a.includes(i.operator)?{type:"comparison",operator:i.operator,left:s[0],right:s[1]}:c.includes(i.operator)?{type:"logical",operator:i.operator,operands:s}:l.includes(i.operator)?{type:"arithmetic",operator:i.operator,left:s[0],right:s[1]}:{type:"function",function:i.operator,args:s}}return this.translateExpressionFn(e)}translateOrderComparator(e){return{expression:this.translateExpressionFn(e.expression),descending:e.descending||!1}}translateAggregateExpression(e){let t=e.aggregation,r=o(()=>{if(e.expression&&!("termType"in e.expression&&e.expression.termType==="Wildcard"))return this.translateExpressionFn(e.expression)},"translateInnerExpr");if(typeof t=="string"){let s=t.toLowerCase();return["count","sum","avg","min","max","group_concat","sample"].includes(s)?{type:"aggregate",aggregation:s,expression:r(),distinct:e.distinct||!1,separator:e.separator}:{type:"aggregate",aggregation:{type:"custom",iri:t},expression:r(),distinct:e.distinct||!1,separator:e.separator}}let i=t;if(i&&typeof i=="object"){let s,a=i;if(a.termType==="NamedNode"&&typeof a.value=="string")s=a.value;else if("value"in a)s=String(a.value);else throw new sx.AlgebraTranslatorError(`Invalid custom aggregate: expected IRI but got ${JSON.stringify(i)}`);return{type:"aggregate",aggregation:{type:"custom",iri:s},expression:r(),distinct:e.distinct||!1,separator:e.separator}}throw new sx.AlgebraTranslatorError(`Unknown aggregate format: ${JSON.stringify(t)}`)}collectNestedAggregates(e,t,r){if(e){if("type"in e&&e.type==="aggregate"){let i=`__agg${this.aggregateCounter++}`;t.push({variable:i,expression:this.translateAggregateExpression(e)}),r.set(e,i)}else if("type"in e&&e.type==="operation"&&"args"in e){let i=e;for(let s of i.args)!Array.isArray(s)&&"type"in s&&!("patterns"in s)?this.collectNestedAggregates(s,t,r):"termType"in s&&this.collectNestedAggregates(s,t,r)}}}};dp.AggregateTranslator=y1});var Uc=S(La=>{"use strict";Object.defineProperty(La,"__esModule",{value:!0});La.AlgebraTranslator=La.ExoQLAlgebraTranslator=La.AlgebraTranslatorError=void 0;var hp=Do(),pp=cp(),I9=ex(),R9=tx(),P9=ix(),O9=ax(),F9=Do();Object.defineProperty(La,"AlgebraTranslatorError",{enumerable:!0,get:o(function(){return F9.AlgebraTranslatorError},"get")});var mp=class{static{o(this,"ExoQLAlgebraTranslator")}constructor(){this.tripleTranslator=new I9.TripleTranslator,this.expressionTranslator=new R9.ExpressionTranslator({translateWhere:o(e=>this.patternTranslator.translateWhere(e),"translateWhere"),translateBGP:o(e=>this.tripleTranslator.translateBGP(e),"translateBGP"),translatePattern:o(e=>this.patternTranslator.translatePattern(e),"translatePattern")}),this.patternTranslator=new P9.PatternTranslator({translateExpression:o(e=>this.expressionTranslator.translateExpression(e),"translateExpression"),translateSelect:o(e=>this.translateSelect(e),"translateSelect"),translateBGP:o(e=>this.tripleTranslator.translateBGP(e),"translateBGP")}),this.aggregateTranslator=new O9.AggregateTranslator({translateExpression:o(e=>this.expressionTranslator.translateExpression(e),"translateExpression")})}setDirectionMappings(e){this.tripleTranslator.setDirectionMappings(e),this.patternTranslator.setDirectionMappings(e)}translate(e){if(e.type!=="query")throw new hp.AlgebraTranslatorError("Only query operations are supported (not updates)");if(e.queryType==="SELECT")return this.translateSelect(e);if(e.queryType==="CONSTRUCT")return this.translateConstruct(e);if(e.queryType==="ASK")return this.translateAsk(e);if(e.queryType==="DESCRIBE")return this.translateDescribe(e);throw new hp.AlgebraTranslatorError(`Query type ${String(e.queryType)} not yet supported`)}translateSelect(e){if(!e.where||e.where.length===0)throw new hp.AlgebraTranslatorError("SELECT query must have WHERE clause");let t=this.patternTranslator.translateWhere(e.where);this.aggregateTranslator.resetCounter();let r=new Map,i=Array.isArray(e.variables)?e.variables.filter(l=>!("termType"in l&&l.termType==="Wildcard")):[],s=this.aggregateTranslator.extractAggregatesWithMapping(i,r),a=this.aggregateTranslator.extractGroupVariables(e.group),c=this.aggregateTranslator.extractHavingExpressions(e.having,s,r);if((s.length>0||a.length>0||c.length>0)&&(t={type:"group",variables:a,aggregates:s,having:c.length>0?c:void 0,input:t}),i.length>0){for(let u of i)if((0,pp.isVariableExpression)(u)){if("type"in u.expression&&u.expression.type==="aggregate")continue;let f=this.aggregateTranslator.transformExpressionWithAggregateVars(u.expression,r);t={type:"extend",variable:u.variable.value,expression:f,input:t}}let l=i.filter(u=>(0,pp.isVariableTerm)(u)||(0,pp.isVariableExpression)(u)).map(u=>(0,pp.isVariableTerm)(u)?u.value:u.variable.value);l.length>0&&(t={type:"project",variables:l,input:t})}return e.distinct&&(t={type:"distinct",input:t}),e.reduced&&(t={type:"reduced",input:t}),e.order&&e.order.length>0&&(t={type:"orderby",comparators:e.order.map(l=>this.aggregateTranslator.translateOrderComparator(l)),input:t}),(e.limit!==void 0||e.offset!==void 0)&&(t={type:"slice",limit:e.limit,offset:e.offset,input:t}),t}translateConstruct(e){let t=this.tripleTranslator.translateConstructTemplate(e.template??[]);if(!e.where||e.where.length===0)throw new hp.AlgebraTranslatorError("CONSTRUCT query must have WHERE clause");let r=this.patternTranslator.translateWhere(e.where),i=e;return(i.limit!==void 0||i.offset!==void 0)&&(r={type:"slice",limit:i.limit,offset:i.offset,input:r}),{type:"construct",template:t,where:r}}translateAsk(e){return{type:"ask",where:e.where&&e.where.length>0?this.patternTranslator.translateWhere(e.where):{type:"bgp",triples:[]}}}translateDescribe(e){let t=[];if(e.variables&&Array.isArray(e.variables)){let s=e.variables;for(let a of s)a.termType==="Wildcard"||a.value==="*"||(a.termType==="Variable"?t.push({type:"variable",value:a.value}):a.termType==="NamedNode"&&t.push({type:"iri",value:a.value}))}let r;e.where&&e.where.length>0&&(r=this.patternTranslator.translateWhere(e.where));let i=e.describeOptions;return{type:"describe",resources:t,where:r,depth:i?.depth,symmetric:i?.symmetric}}};La.ExoQLAlgebraTranslator=mp;La.AlgebraTranslator=mp});var us=S(gp=>{"use strict";Object.defineProperty(gp,"__esModule",{value:!0});gp.SolutionMapping=void 0;var ox=Ne(),cx=Ae(),lx=qt(),_1=class n{static{o(this,"SolutionMapping")}constructor(e){this.bindings=e?new Map(e):new Map}get(e){return this.bindings.get(e)}set(e,t){this.bindings.set(e,t)}has(e){return this.bindings.has(e)}variables(){return Array.from(this.bindings.keys())}getBindings(){return new Map(this.bindings)}isCompatibleWith(e){for(let[t,r]of this.bindings.entries()){let i=e.get(t);if(i!==void 0&&!this.areEqual(r,i))return!1}return!0}merge(e){if(!this.isCompatibleWith(e))return null;let t=new n(this.bindings);for(let[r,i]of e.getBindings().entries())t.set(r,i);return t}clone(){return new n(this.bindings)}areEqual(e,t){return e instanceof ox.Literal&&t instanceof ox.Literal?e.equals(t):e instanceof cx.IRI&&t instanceof cx.IRI?e.value===t.value:e instanceof lx.BlankNode&&t instanceof lx.BlankNode?e.id===t.id:!1}toJSON(){let e={};for(let[t,r]of this.bindings.entries())e[t]=r.toString();return e}size(){return this.bindings.size}};gp.SolutionMapping=_1});var fx=S(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.PropertyPathExecutor=qc.PropertyPathExecutorError=void 0;var D9=us(),yp=Ae(),ux=qt(),N9=Ne(),Ju=class extends Error{static{o(this,"PropertyPathExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="PropertyPathExecutorError"}};qc.PropertyPathExecutorError=Ju;var S1=class{static{o(this,"PropertyPathExecutor")}constructor(e){this.tripleStore=e,this.MAX_DEPTH=100}async*execute(e,t,r){if(this.isLiteralElement(e)||this.isLiteralElement(r)){let a=this.isLiteralElement(e)?"subject":"object",c=this.isLiteralElement(e)?e:r,l="value"in c?String(c.value):"<unknown>",u=l.length>80?`${l.slice(0,77)}...`:l;console.warn(`[PropertyPathExecutor] literal-safety guard fired: literal in ${a} position \u2014 yielding 0 solutions. value="${u}"`);return}let i=await this.resolveElement(e),s=this.isVariable(r)?null:await this.resolveElement(r);for(let a of i){let c=await this.evaluatePath(a,t,s);for(let l of c){let u=new D9.SolutionMapping;this.isVariable(e)&&u.set(e.value,a),this.isVariable(r)&&u.set(r.value,l),yield u}}}async*executeWithBindings(e,t){if(!this.isPropertyPath(e.predicate))throw new Ju("Predicate is not a property path");let r=this.instantiateElement(e.subject,t),i=this.instantiateElement(e.object,t);for await(let s of this.execute(r,e.predicate,i)){let a=t.merge(s);a!==null&&(yield a)}}async evaluatePath(e,t,r){switch(t.pathType){case"/":return this.evaluateSequencePath(e,t.items,r);case"|":return this.evaluateAlternativePath(e,t.items,r);case"^":return this.evaluateInversePath(e,t.items[0],r);case"+":return this.evaluateOneOrMorePath(e,t.items[0],r);case"*":return this.evaluateZeroOrMorePath(e,t.items[0],r);case"?":return this.evaluateZeroOrOnePath(e,t.items[0],r)}}async evaluateSequencePath(e,t,r){let i=new Set([e]);for(let s=0;s<t.length;s++){let a=t[s],c=s===t.length-1,l=new Set;for(let u of i){let f=await this.evaluatePathItem(u,a,c?r:null);for(let d of f)l.add(d)}if(i=l,i.size===0)break}return i}async evaluateAlternativePath(e,t,r){let i=new Set;for(let s of t){let a=await this.evaluatePathItem(e,s,r);for(let c of a)i.add(c)}return i}async evaluateInversePath(e,t,r){if(t.type==="iri"){let i=new yp.IRI(t.value),s=await this.tripleStore.match(void 0,i,e),a=new Set;for(let c of s)(r===null||this.nodeInSet(c.subject,r))&&a.add(c.subject);return a}else return this.evaluatePath(e,this.invertPath(t),r)}async evaluateOneOrMorePath(e,t,r){let i=new Set,s=new Set,a=[{node:e,depth:0}];for(;a.length>0;){let c=a.shift();if(!c)break;let{node:l,depth:u}=c;if(u>=this.MAX_DEPTH)continue;let f=await this.evaluatePathItem(l,t,null);for(let d of f){let h=this.nodeToKey(d);(r===null||this.nodeInSet(d,r))&&s.add(d),i.has(h)||(i.add(h),a.push({node:d,depth:u+1}))}}return s}async evaluateZeroOrMorePath(e,t,r){let i=await this.evaluateOneOrMorePath(e,t,r);return(r===null||this.nodeInSet(e,r))&&i.add(e),i}async evaluateZeroOrOnePath(e,t,r){let i=new Set;(r===null||this.nodeInSet(e,r))&&i.add(e);let s=await this.evaluatePathItem(e,t,r);for(let a of s)i.add(a);return i}async evaluatePathItem(e,t,r){if(t.type==="iri"){let i=new yp.IRI(t.value),s=await this.tripleStore.match(e,i,void 0),a=new Set;for(let c of s)(r===null||this.nodeInSet(c.object,r))&&a.add(c.object);return a}else return this.evaluatePath(e,t,r)}invertPath(e){switch(e.pathType){case"^":return e.items[0];case"/":return{type:"path",pathType:"/",items:[...e.items].reverse().map(t=>t.type==="iri"?{type:"path",pathType:"^",items:[t]}:this.invertPath(t))};case"|":return{type:"path",pathType:"|",items:e.items.map(t=>t.type==="iri"?{type:"path",pathType:"^",items:[t]}:this.invertPath(t))};case"+":case"*":case"?":{let t=e.items[0].type==="iri"?{type:"path",pathType:"^",items:[e.items[0]]}:this.invertPath(e.items[0]);return{type:"path",pathType:e.pathType,items:[t]}}}}async resolveElement(e){if(this.isVariable(e)){let r=new Set,i=await this.tripleStore.match(void 0,void 0,void 0);for(let s of i)r.add(s.subject),r.add(s.object);return r}let t=new Set;switch(e.type){case"iri":t.add(new yp.IRI(e.value));break;case"blank":t.add(new ux.BlankNode(e.value));break;default:throw new Ju(`Unsupported element type in subject/object position: ${e.type}`)}return t}instantiateElement(e,t){if(this.isVariable(e)){let r=t.get(e.value);if(r){if(r instanceof yp.IRI)return{type:"iri",value:r.value};if(r instanceof ux.BlankNode)return{type:"blank",value:r.id};if(r instanceof N9.Literal)return{type:"literal",value:r.value,datatype:r.datatype?.value,language:r.language,direction:r.direction}}}return e}isVariable(e){return e.type==="variable"}isLiteralElement(e){return e.type==="literal"}isPropertyPath(e){return e.type==="path"}nodeToKey(e){return e.toString()}nodeInSet(e,t){let r=this.nodeToKey(e);for(let i of t)if(this.nodeToKey(i)===r)return!0;return!1}};qc.PropertyPathExecutor=S1});var w1=S(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});Wc.BGPExecutor=Wc.BGPExecutorError=void 0;var _p=us(),ka=Ae(),v1=Ne(),Sp=qt(),vp=Nu(),L9=fx(),zr=class extends Error{static{o(this,"BGPExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="BGPExecutorError"}};Wc.BGPExecutorError=zr;var b1=class{static{o(this,"BGPExecutor")}constructor(e){this.tripleStore=e,this.propertyPathExecutor=new L9.PropertyPathExecutor(e)}async*execute(e){if(e.triples.length===0){yield new _p.SolutionMapping;return}let t=this.matchTriplePattern(e.triples[0]);for(let r=1;r<e.triples.length;r++)t=this.joinWithPattern(t,e.triples[r]);for await(let r of t)yield r}async executeAll(e){let t=[];for await(let r of this.execute(e))t.push(r);return t}async*executeInGraph(e,t){if(e.triples.length===0){yield new _p.SolutionMapping;return}let r=this.matchTriplePatternInGraph(e.triples[0],t);for(let i=1;i<e.triples.length;i++)r=this.joinWithPatternInGraph(r,e.triples[i],t);for await(let i of r)yield i}async*matchTriplePatternInGraph(e,t){if(this.isPropertyPath(e.predicate))throw new zr("Property paths within named graphs are not yet supported");let r=e.predicate;if(this.isLiteral(e.subject)||this.isLiteral(r)){this.warnLiteralGuard("matchTriplePatternInGraph",this.isLiteral(e.subject)?"subject":"predicate",this.isLiteral(e.subject)?e.subject:r);return}let i=this.isVariable(e.subject)?void 0:this.toRDFTermAsSubject(e.subject),s=this.isVariable(r)?void 0:this.toRDFTermAsPredicate(r),a=this.isVariable(e.object)?void 0:this.toRDFTerm(e.object);if(!this.tripleStore.matchInGraph)throw new zr("Triple store does not support named graph operations");let c=await this.tripleStore.matchInGraph(i,s,a,t);for(let l of c){let u=new _p.SolutionMapping;this.isVariable(e.subject)&&u.set(e.subject.value,l.subject),this.isVariable(r)&&u.set(r.value,l.predicate),this.isVariable(e.object)&&u.set(e.object.value,l.object),yield u}}async*joinWithPatternInGraph(e,t,r){let i=[];for await(let s of e)i.push(s);for(let s of i){let a=this.instantiatePattern(t,s);for await(let c of this.matchTriplePatternInGraph(a,r)){let l=s.merge(c);l!==null&&(yield l)}}}async*matchTriplePattern(e){if(this.isPropertyPath(e.predicate)){if(this.isLiteral(e.subject)||this.isLiteral(e.object)){this.warnLiteralGuard("matchTriplePattern.propertyPath",this.isLiteral(e.subject)?"subject":"object",this.isLiteral(e.subject)?e.subject:e.object);return}yield*this.propertyPathExecutor.execute(e.subject,e.predicate,e.object);return}let t=e.predicate;if(this.isLiteral(e.subject)||this.isLiteral(t)){this.warnLiteralGuard("matchTriplePattern",this.isLiteral(e.subject)?"subject":"predicate",this.isLiteral(e.subject)?e.subject:t);return}let r=this.isVariable(e.subject)||this.isQuotedTriple(e.subject)&&this.hasVariablesInQuotedTriple(e.subject)?void 0:this.toRDFTermAsSubject(e.subject),i=this.isVariable(t)?void 0:this.toRDFTermAsPredicate(t),s=this.isVariable(e.object)||this.isQuotedTriple(e.object)&&this.hasVariablesInQuotedTriple(e.object)?void 0:this.toRDFTerm(e.object),a=await this.tripleStore.match(r,i,s);for(let c of a){let l=new _p.SolutionMapping;if(this.isVariable(e.subject))l.set(e.subject.value,c.subject);else if(this.isQuotedTriple(e.subject)){let u=this.matchQuotedTriplePattern(e.subject,c.subject);if(u===null)continue;for(let[f,d]of u.entries())l.set(f,d)}if(this.isVariable(t)&&l.set(t.value,c.predicate),this.isVariable(e.object))l.set(e.object.value,c.object);else if(this.isQuotedTriple(e.object)){let u=this.matchQuotedTriplePattern(e.object,c.object);if(u===null)continue;for(let[f,d]of u.entries())l.set(f,d)}yield l}}hasVariablesInQuotedTriple(e){return!!(this.isVariable(e.subject)||e.predicate.type==="variable"||this.isVariable(e.object)||this.isQuotedTriple(e.subject)&&this.hasVariablesInQuotedTriple(e.subject)||this.isQuotedTriple(e.object)&&this.hasVariablesInQuotedTriple(e.object))}matchQuotedTriplePattern(e,t){if(!(t instanceof vp.QuotedTriple))return null;let r=new Map;if(this.isVariable(e.subject))r.set(e.subject.value,t.subject);else if(this.isQuotedTriple(e.subject)){let i=this.matchQuotedTriplePattern(e.subject,t.subject);if(i===null)return null;for(let[s,a]of i)r.set(s,a)}else if(!this.elementsMatch(e.subject,t.subject))return null;if(e.predicate.type==="variable")r.set(e.predicate.value,t.predicate);else if(e.predicate.value!==t.predicate.value)return null;if(this.isVariable(e.object))r.set(e.object.value,t.object);else if(this.isQuotedTriple(e.object)){let i=this.matchQuotedTriplePattern(e.object,t.object);if(i===null)return null;for(let[s,a]of i)r.set(s,a)}else if(!this.elementsMatch(e.object,t.object))return null;return r}elementsMatch(e,t){switch(e.type){case"iri":return t instanceof ka.IRI&&e.value===t.value;case"literal":return!(!(t instanceof v1.Literal)||e.value!==t.value||e.datatype!==t.datatype?.value||e.language!==t.language||e.direction!==t.direction);case"blank":return t instanceof Sp.BlankNode&&e.value===t.id;case"quoted":return t instanceof vp.QuotedTriple?this.toRDFQuotedTriple(e).equals(t):!1;default:return!1}}isPropertyPath(e){return e.type==="path"}async*joinWithPattern(e,t){let r=[];for await(let i of e)r.push(i);for(let i of r){let s=this.instantiatePattern(t,i);for await(let a of this.matchTriplePattern(s)){let c=i.merge(a);c!==null&&(yield c)}}}instantiatePattern(e,t){let r=this.isPropertyPath(e.predicate)?e.predicate:this.instantiateElement(e.predicate,t);return{subject:this.instantiateElement(e.subject,t),predicate:r,object:this.instantiateElement(e.object,t)}}instantiateElement(e,t){if(this.isVariable(e)){let r=t.get(e.value);if(r)return this.toAlgebraElement(r)}return this.isQuotedTriple(e)?this.instantiateQuotedTriple(e,t):e}instantiateQuotedTriple(e,t){let r=this.instantiateElement(e.subject,t),i=e.predicate.type==="variable"?this.instantiatePredicateVariable(e.predicate,t):e.predicate,s=this.instantiateElement(e.object,t);return{type:"quoted",subject:r,predicate:i,object:s}}instantiatePredicateVariable(e,t){let r=t.get(e.value);return r&&r instanceof ka.IRI?{type:"iri",value:r.value}:e}isVariable(e){return e.type==="variable"}isQuotedTriple(e){return e.type==="quoted"}isLiteral(e){return e.type==="literal"}warnLiteralGuard(e,t,r){let i="value"in r?String(r.value):"<unknown>",s=i.length>80?`${i.slice(0,77)}...`:i;console.warn(`[BGPExecutor] literal-safety guard fired in ${e}: literal in ${t} position \u2014 yielding 0 solutions. value="${s}"`)}toRDFTermAsSubject(e){switch(e.type){case"iri":return new ka.IRI(e.value);case"blank":return new Sp.BlankNode(e.value);case"literal":throw new zr("Literals cannot appear in subject position");case"variable":throw new zr(`Cannot convert variable to RDF term: ${e.value}`);case"quoted":return this.toRDFQuotedTriple(e);default:throw new zr(`Unknown element type: ${String(e)}`)}}toRDFQuotedTriple(e){let t=this.toRDFTermAsSubject(e.subject),r=e.predicate.type==="iri"?new ka.IRI(e.predicate.value):(()=>{throw new zr("Quoted triple predicate must be IRI")})(),i=this.toRDFTerm(e.object);return new vp.QuotedTriple(t,r,i)}toRDFTermAsPredicate(e){switch(e.type){case"iri":return new ka.IRI(e.value);case"literal":throw new zr("Literals cannot appear in predicate position");case"blank":throw new zr("Blank nodes cannot appear in predicate position");case"variable":throw new zr(`Cannot convert variable to RDF term: ${e.value}`);default:throw new zr(`Unknown element type: ${String(e)}`)}}toRDFTerm(e){switch(e.type){case"iri":return new ka.IRI(e.value);case"literal":return new v1.Literal(e.value,e.datatype?new ka.IRI(e.datatype):void 0,e.language,e.direction);case"blank":return new Sp.BlankNode(e.value);case"variable":throw new zr(`Cannot convert variable to RDF term: ${e.value}`);case"quoted":return this.toRDFQuotedTriple(e);default:throw new zr(`Unknown element type: ${String(e)}`)}}toAlgebraElement(e){if(e instanceof ka.IRI)return{type:"iri",value:e.value};if(e instanceof v1.Literal)return{type:"literal",value:e.value,datatype:e.datatype?.value,language:e.language,direction:e.direction};if(e instanceof Sp.BlankNode)return{type:"blank",value:e.id};if(e instanceof vp.QuotedTriple)return this.toAlgebraQuotedTriple(e);throw new zr(`Unknown RDF term type: ${String(e)}`)}toAlgebraQuotedTriple(e){return{type:"quoted",subject:this.toAlgebraElement(e.subject),predicate:{type:"iri",value:e.predicate.value},object:this.toAlgebraElement(e.object)}}};Wc.BGPExecutor=b1});var dx=S(bp=>{"use strict";Object.defineProperty(bp,"__esModule",{value:!0});bp.StringFunctions=void 0;var Gc=Ae(),Ma=Ne(),E1=qt(),Zu=class n{static{o(this,"StringFunctions")}static str(e){if(e===void 0)throw new Error("STR: argument is undefined");return e instanceof Gc.IRI||e instanceof Ma.Literal?e.value:e instanceof E1.BlankNode?e.id:String(e)}static lang(e){if(e===void 0)throw new Error("LANG: argument is undefined");return e instanceof Ma.Literal&&e.language?e.language:""}static langdir(e){if(e===void 0)throw new Error("LANGDIR: argument is undefined");return!(e instanceof Ma.Literal)||!e.language?"":e.direction?`${e.language}--${e.direction}`:e.language}static langMatches(e,t){let[r,i]=n.parseDirectionalLangTag(e),[s,a]=n.parseDirectionalLangTag(t),c=r.toLowerCase(),l=s.toLowerCase();return l==="*"?c!=="":c===""?l==="":a&&i!==a?!1:c===l?!0:c.startsWith(l+"-")}static parseDirectionalLangTag(e){let t=e.indexOf("--");if(t===-1)return[e,void 0];let r=e.substring(0,t),i=e.substring(t+2).toLowerCase();return[r,i]}static regex(e,t,r){try{let i=r?r.includes("u")?r:r+"u":"u";return new RegExp(t,i).test(e)}catch(i){throw new Error(`REGEX: invalid pattern '${t}': ${i.message}`)}}static contains(e,t){return e.includes(t)}static strStarts(e,t){return e.startsWith(t)}static strEnds(e,t){return e.endsWith(t)}static strlen(e){return e.length}static ucase(e){return e.toUpperCase()}static lcase(e){return e.toLowerCase()}static substr(e,t,r){let i=t-1;if(i<0){if(r!==void 0){let s=r+i;return s<=0?"":e.substring(0,s)}return e}return r!==void 0?e.substring(i,i+r):e.substring(i)}static strBefore(e,t){if(t==="")return"";let r=e.indexOf(t);return r===-1?"":e.substring(0,r)}static strAfter(e,t){if(t==="")return e;let r=e.indexOf(t);return r===-1?"":e.substring(r+t.length)}static concat(...e){return e.join("")}static replace(e,t,r,i){try{let s=i||"g",a=s.includes("u")?s:s+"u",c=new RegExp(t,a);return e.replace(c,r)}catch(s){throw new Error(`REPLACE: invalid pattern '${t}': ${s.message}`)}}static encodeForUri(e){return encodeURIComponent(e)}static normalize(e,t){if(e===void 0)throw new Error("NORMALIZE: string argument is undefined");let r;if(e instanceof Ma.Literal)r=e.value;else if(e instanceof Gc.IRI)r=e.value;else if(e instanceof E1.BlankNode)r=e.id;else if(typeof e=="string")r=e;else throw new Error("NORMALIZE: first argument must be a string or literal");let i="NFC";if(t!==void 0)if(t instanceof Ma.Literal)i=t.value.toUpperCase();else if(typeof t=="string")i=t.toUpperCase();else if(t instanceof Gc.IRI)i=t.value.toUpperCase();else throw new Error("NORMALIZE: second argument must be a string literal");if(!n.VALID_NORMALIZATION_FORMS.includes(i))throw new Error(`NORMALIZE: invalid normalization form '${i}'. Valid forms are: NFC, NFD, NFKC, NFKD`);let s=r.normalize(i);return new Ma.Literal(s,new Gc.IRI("http://www.w3.org/2001/XMLSchema#string"))}static fold(e){if(e===void 0)throw new Error("FOLD: string argument is undefined");let t;if(e instanceof Ma.Literal)t=e.value;else if(e instanceof Gc.IRI)t=e.value;else if(e instanceof E1.BlankNode)t=e.id;else if(typeof e=="string")t=e;else throw new Error("FOLD: argument must be a string or literal");let r=n.unicodeCaseFold(t);return new Ma.Literal(r,new Gc.IRI("http://www.w3.org/2001/XMLSchema#string"))}static unicodeCaseFold(e){let t="";for(let r of e){let i=n.CASE_FOLDING_MAP.get(r);i!==void 0?t+=i:t+=r.toLowerCase()}return t}};bp.StringFunctions=Zu;Zu.VALID_NORMALIZATION_FORMS=["NFC","NFD","NFKC","NFKD"];Zu.CASE_FOLDING_MAP=new Map([["\xDF","ss"],["\u1E9E","ss"],["\u03A3","\u03C3"],["\u03C2","\u03C3"],["\u0130","i\u0307"],["I","i"],["\u0587","\u0565\u0582"],["\uFB00","ff"],["\uFB01","fi"],["\uFB02","fl"],["\uFB03","ffi"],["\uFB04","ffl"],["\uFB05","st"],["\uFB06","st"],["\u0390","\u03B9\u0308\u0301"],["\u03B0","\u03C5\u0308\u0301"],["\u017F","s"],["\u1E9B","\u1E61"],["\u212A","k"],["\u212B","\xE5"]])});var hx=S(wp=>{"use strict";Object.defineProperty(wp,"__esModule",{value:!0});wp.MathFunctions=void 0;var T1=class{static{o(this,"MathFunctions")}static msToMinutes(e){return Math.round(e/(1e3*60))}static msToHours(e){return Math.round(e/(1e3*60*60)*100)/100}static msToSeconds(e){return Math.round(e/1e3)}static abs(e){return Math.abs(e)}static round(e){return Math.round(e)}static ceil(e){return Math.ceil(e)}static floor(e){return Math.floor(e)}static rand(){return Math.random()}};wp.MathFunctions=T1});var Tp=S(Ep=>{"use strict";Object.defineProperty(Ep,"__esModule",{value:!0});Ep.DateTimeParsing=void 0;var k9=Ae(),M9=Ne(),A1=class n{static{o(this,"DateTimeParsing")}static parseDate(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`PARSEDATE: invalid date string '${e}'`);return t.getTime()}static parseDayTimeDuration(e){if(!e)throw new Error("parseDayTimeDuration: duration string is empty");let t=!1,r=e.trim();if(r.startsWith("-")&&(t=!0,r=r.substring(1)),!r.startsWith("P"))throw new Error(`parseDayTimeDuration: invalid format, must start with 'P': '${e}'`);r=r.substring(1);let i=0,s=r.indexOf("T"),a="",c="";if(s===-1?a=r:(a=r.substring(0,s),c=r.substring(s+1)),a){let l=a.match(/^(\d+(?:\.\d+)?)D$/);if(l){let u=parseFloat(l[1]);i+=u*24*60*60*1e3}else if(a!=="")throw new Error(`parseDayTimeDuration: invalid day component: '${a}' in '${e}'`)}if(c){let l=c,u=l.match(/^(\d+(?:\.\d+)?)H/);if(u){let h=parseFloat(u[1]);i+=h*60*60*1e3,l=l.substring(u[0].length)}let f=l.match(/^(\d+(?:\.\d+)?)M/);if(f){let h=parseFloat(f[1]);i+=h*60*1e3,l=l.substring(f[0].length)}let d=l.match(/^(\d+(?:\.\d+)?)S$/);if(d){let h=parseFloat(d[1]);i+=h*1e3,l=l.substring(d[0].length)}if(l!=="")throw new Error(`parseDayTimeDuration: invalid time component: '${l}' in '${e}'`)}return t?-i:i}static formatDayTimeDuration(e){let t=e<0,r=Math.abs(e),i=Math.floor(r/(1440*60*1e3));r=r%(1440*60*1e3);let s=Math.floor(r/(3600*1e3));r=r%(3600*1e3);let a=Math.floor(r/(60*1e3));r=r%(60*1e3);let c=r/1e3,l=t?"-P":"P";return i>0&&(l+=`${i}D`),(s>0||a>0||c>0||i===0)&&(l+="T",s>0&&(l+=`${s}H`),a>0&&(l+=`${a}M`),(c>0||s===0&&a===0)&&(Number.isInteger(c)?l+=`${c}S`:l+=`${parseFloat(c.toFixed(3))}S`)),l}static xsdDayTimeDuration(e){return n.parseDayTimeDuration(e),new M9.Literal(e,new k9.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static parseXSDDate(e){let t=/^(-?\d{4})-(\d{2})-(\d{2})(Z|[+-]\d{2}:\d{2})?$/,r=e.match(t);if(!r){let u=new Date(e);return isNaN(u.getTime())?null:new Date(Date.UTC(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate()))}let i=parseInt(r[1],10),s=parseInt(r[2],10)-1,a=parseInt(r[3],10),c=r[4],l=new Date(Date.UTC(i,s,a));if(c&&c!=="Z"){let u=c.match(/([+-])(\d{2}):(\d{2})/);if(u){let f=u[1]==="+"?1:-1,d=parseInt(u[2],10),h=parseInt(u[3],10),p=f*(d*60+h)*60*1e3;l=new Date(l.getTime()-p)}}return l}static parseXSDTime(e){let t=/^(\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(Z|[+-]\d{2}:\d{2})?$/,r=e.match(t);if(!r)return null;let i=parseInt(r[1],10),s=parseInt(r[2],10),a=parseInt(r[3],10),c=r[4],l=r[5];if(i<0||i>24||s<0||s>59||a<0||a>59||i===24&&(s!==0||a!==0))return null;let u=0;if(c){let d=c.padEnd(3,"0").slice(0,3);u=parseInt(d,10)}let f=i*60*60*1e3+s*60*1e3+a*1e3+u;if(i===24&&(f=1440*60*1e3),l&&l!=="Z"){let d=l.match(/([+-])(\d{2}):(\d{2})/);if(d){let h=d[1]==="+"?1:-1,p=parseInt(d[2],10),y=parseInt(d[3],10),v=h*(p*60+y)*60*1e3;f-=v}}return f}static formatDateDuration(e){if(e===0)return"P0D";let t=e<0,r=Math.abs(e);return t?`-P${r}D`:`P${r}D`}static parseYearMonthDuration(e){let t=/^(-)?P(?:(\d+)Y)?(?:(\d+)M)?$/,r=e.match(t);if(!r)throw new Error(`parseYearMonthDuration: invalid format: '${e}'`);let i=r[1]==="-",s=parseInt(r[2]||"0",10),a=parseInt(r[3]||"0",10);if(!r[2]&&!r[3])throw new Error(`parseYearMonthDuration: invalid format (no duration components): '${e}'`);let c=s*12+a;return i?-c:c}static formatYearMonthDuration(e){let t=e<0,r=Math.abs(e),i=Math.floor(r/12),s=r%12,a=t?"-P":"P";return i>0&&(a+=`${i}Y`),(s>0||i===0)&&(a+=`${s}M`),a}static parseYearMonthDurationComponents(e){let t=/^(-)?P(?:(\d+)Y)?(?:(\d+)M)?$/,r=e.match(t);if(!r)throw new Error(`parseYearMonthDurationComponents: invalid format: '${e}'`);let i=r[1]==="-",s=parseInt(r[2]||"0",10),a=parseInt(r[3]||"0",10);if(!r[2]&&!r[3])throw new Error(`parseYearMonthDurationComponents: invalid format (no duration components): '${e}'`);return{years:s,months:a,negative:i}}static parseDurationComponents(e){if(!e)throw new Error("parseDurationComponents: duration string is empty");let t=!1,r=e.trim();if(r.startsWith("-")&&(t=!0,r=r.substring(1)),!r.startsWith("P"))throw new Error(`parseDurationComponents: invalid format, must start with 'P': '${e}'`);r=r.substring(1);let i=0,s=0,a=0,c=0,l=r.indexOf("T"),u="",f="";if(l===-1?u=r:(u=r.substring(0,l),f=r.substring(l+1)),u){let d=u.match(/^(\d+(?:\.\d+)?)D$/);if(d)i=parseFloat(d[1]);else if(u!=="")throw new Error(`parseDurationComponents: invalid day component: '${u}' in '${e}'`)}if(f){let d=f,h=d.match(/^(\d+(?:\.\d+)?)H/);h&&(s=parseFloat(h[1]),d=d.substring(h[0].length));let p=d.match(/^(\d+(?:\.\d+)?)M/);p&&(a=parseFloat(p[1]),d=d.substring(p[0].length));let y=d.match(/^(\d+(?:\.\d+)?)S$/);if(y&&(c=parseFloat(y[1]),d=d.substring(y[0].length)),d!=="")throw new Error(`parseDurationComponents: invalid time component: '${d}' in '${e}'`)}return{negative:t,days:i,hours:s,minutes:a,seconds:c}}};Ep.DateTimeParsing=A1});var px=S(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});Ap.DateTimeArithmetic=void 0;var hn=Ae(),xe=Ne(),Je=Tp(),x1=class{static{o(this,"DateTimeArithmetic")}static dateTimeDiff(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r),a=new Date(i);if(isNaN(s.getTime()))throw new Error(`dateTimeDiff: invalid first dateTime: '${r}'`);if(isNaN(a.getTime()))throw new Error(`dateTimeDiff: invalid second dateTime: '${i}'`);let c=s.getTime()-a.getTime(),l=Je.DateTimeParsing.formatDayTimeDuration(c);return new xe.Literal(l,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static dateTimeAdd(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r);if(isNaN(s.getTime()))throw new Error(`dateTimeAdd: invalid dateTime: '${r}'`);let a=Je.DateTimeParsing.parseDayTimeDuration(i),c=s.getTime()+a,l=new Date(c);return new xe.Literal(l.toISOString(),new hn.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static dateTimeSubtract(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r);if(isNaN(s.getTime()))throw new Error(`dateTimeSubtract: invalid dateTime: '${r}'`);let a=Je.DateTimeParsing.parseDayTimeDuration(i),c=s.getTime()-a,l=new Date(c);return new xe.Literal(l.toISOString(),new hn.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static dateAdd(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseXSDDate(r);if(s===null)throw new Error(`dateAdd: invalid date: '${r}'`);let a=Je.DateTimeParsing.parseDayTimeDuration(i),c=s.getTime()+a,l=new Date(c),u=l.getUTCFullYear(),f=String(l.getUTCMonth()+1).padStart(2,"0"),d=String(l.getUTCDate()).padStart(2,"0"),h=`${u}-${f}-${d}`;return new xe.Literal(h,new hn.IRI("http://www.w3.org/2001/XMLSchema#date"))}static dateSubtract(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseXSDDate(r);if(s===null)throw new Error(`dateSubtract: invalid date: '${r}'`);let a=Je.DateTimeParsing.parseDayTimeDuration(i),c=s.getTime()-a,l=new Date(c),u=l.getUTCFullYear(),f=String(l.getUTCMonth()+1).padStart(2,"0"),d=String(l.getUTCDate()).padStart(2,"0"),h=`${u}-${f}-${d}`;return new xe.Literal(h,new hn.IRI("http://www.w3.org/2001/XMLSchema#date"))}static dateTimeAddYearMonth(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r);if(isNaN(s.getTime()))throw new Error(`dateTimeAddYearMonth: invalid dateTime: '${r}'`);let a=Je.DateTimeParsing.parseYearMonthDuration(i),c=s.getUTCDate();return s.setUTCMonth(s.getUTCMonth()+a),s.getUTCDate()!==c&&s.setUTCDate(0),new xe.Literal(s.toISOString(),new hn.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static dateTimeSubtractYearMonth(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r);if(isNaN(s.getTime()))throw new Error(`dateTimeSubtractYearMonth: invalid dateTime: '${r}'`);let a=Je.DateTimeParsing.parseYearMonthDuration(i),c=s.getUTCDate();return s.setUTCMonth(s.getUTCMonth()-a),s.getUTCDate()!==c&&s.setUTCDate(0),new xe.Literal(s.toISOString(),new hn.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static dateAddYearMonth(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseXSDDate(r);if(s===null)throw new Error(`dateAddYearMonth: invalid date: '${r}'`);let a=Je.DateTimeParsing.parseYearMonthDuration(i),c=s.getUTCDate();s.setUTCMonth(s.getUTCMonth()+a),s.getUTCDate()!==c&&s.setUTCDate(0);let l=s.getUTCFullYear(),u=String(s.getUTCMonth()+1).padStart(2,"0"),f=String(s.getUTCDate()).padStart(2,"0"),d=`${l}-${u}-${f}`;return new xe.Literal(d,new hn.IRI("http://www.w3.org/2001/XMLSchema#date"))}static dateSubtractYearMonth(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseXSDDate(r);if(s===null)throw new Error(`dateSubtractYearMonth: invalid date: '${r}'`);let a=Je.DateTimeParsing.parseYearMonthDuration(i),c=s.getUTCDate();s.setUTCMonth(s.getUTCMonth()-a),s.getUTCDate()!==c&&s.setUTCDate(0);let l=s.getUTCFullYear(),u=String(s.getUTCMonth()+1).padStart(2,"0"),f=String(s.getUTCDate()).padStart(2,"0"),d=`${l}-${u}-${f}`;return new xe.Literal(d,new hn.IRI("http://www.w3.org/2001/XMLSchema#date"))}static durationAdd(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseDayTimeDuration(r),a=Je.DateTimeParsing.parseDayTimeDuration(i),c=Je.DateTimeParsing.formatDayTimeDuration(s+a);return new xe.Literal(c,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static durationSubtract(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseDayTimeDuration(r),a=Je.DateTimeParsing.parseDayTimeDuration(i),c=Je.DateTimeParsing.formatDayTimeDuration(s-a);return new xe.Literal(c,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static durationMultiply(e,t){let r=e instanceof xe.Literal?e.value:e,i=Je.DateTimeParsing.parseDayTimeDuration(r),s=Je.DateTimeParsing.formatDayTimeDuration(i*t);return new xe.Literal(s,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static durationDivide(e,t){if(t===0)throw new Error("durationDivide: division by zero");let r=e instanceof xe.Literal?e.value:e,i=Je.DateTimeParsing.parseDayTimeDuration(r),s=Je.DateTimeParsing.formatDayTimeDuration(i/t);return new xe.Literal(s,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static yearMonthDurationAdd(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseYearMonthDuration(r),a=Je.DateTimeParsing.parseYearMonthDuration(i),c=Je.DateTimeParsing.formatYearMonthDuration(s+a);return new xe.Literal(c,new hn.IRI("http://www.w3.org/2001/XMLSchema#yearMonthDuration"))}static yearMonthDurationSubtract(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseYearMonthDuration(r),a=Je.DateTimeParsing.parseYearMonthDuration(i),c=Je.DateTimeParsing.formatYearMonthDuration(s-a);return new xe.Literal(c,new hn.IRI("http://www.w3.org/2001/XMLSchema#yearMonthDuration"))}static durationToDays(e){let t=e instanceof xe.Literal?e.value:e;return Je.DateTimeParsing.parseDayTimeDuration(t)/(1440*60*1e3)}static durationToHours(e){let t=e instanceof xe.Literal?e.value:e;return Je.DateTimeParsing.parseDayTimeDuration(t)/(3600*1e3)}static durationToMinutes(e){let t=e instanceof xe.Literal?e.value:e;return Je.DateTimeParsing.parseDayTimeDuration(t)/(60*1e3)}static durationToSeconds(e){let t=e instanceof xe.Literal?e.value:e;return Je.DateTimeParsing.parseDayTimeDuration(t)/1e3}};Ap.DateTimeArithmetic=x1});var mx=S(xp=>{"use strict";Object.defineProperty(xp,"__esModule",{value:!0});xp.DateTimeAccessors=void 0;var ef=Ae(),$t=Ne(),Tt=Tp(),C1=class{static{o(this,"DateTimeAccessors")}static year(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`YEAR: invalid date string '${e}'`);return t.getFullYear()}static month(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`MONTH: invalid date string '${e}'`);return t.getMonth()+1}static day(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`DAY: invalid date string '${e}'`);return t.getDate()}static hours(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`HOURS: invalid date string '${e}'`);return t.getHours()}static minutes(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`MINUTES: invalid date string '${e}'`);return t.getMinutes()}static seconds(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`SECONDS: invalid date string '${e}'`);return t.getSeconds()+t.getMilliseconds()/1e3}static durationDays(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseDurationComponents(t),i=Math.floor(r.days);return r.negative?-i:i}static durationHours(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseDurationComponents(t),i=Math.floor(r.hours);return r.negative?-i:i}static durationMinutes(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseDurationComponents(t),i=Math.floor(r.minutes);return r.negative?-i:i}static durationSeconds(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseDurationComponents(t);return r.negative?-r.seconds:r.seconds}static durationYears(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseYearMonthDurationComponents(t);return r.negative?-r.years:r.years}static durationMonths(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseYearMonthDurationComponents(t);return r.negative?-r.months:r.months}static timezone(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`TIMEZONE: invalid date string '${e}'`);let r;if(e.endsWith("Z"))r="PT0S";else{let i=e.match(/([+-]\d{2}):?(\d{2})$/);if(i){let s=parseInt(i[1],10),a=parseInt(i[2],10),c=s>=0?"":"-",l=Math.abs(s);a===0?r=`${c}PT${l}H`:r=`${c}PT${l}H${a}M`}else{let s=-t.getTimezoneOffset(),a=Math.floor(Math.abs(s)/60),c=Math.abs(s)%60,l=s>=0?"":"-";c===0?r=`${l}PT${a}H`:r=`${l}PT${a}H${c}M`}}return new $t.Literal(r,new ef.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static tz(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`TZ: invalid date string '${e}'`);if(e.endsWith("Z"))return"Z";let r=e.match(/([+-]\d{2}:\d{2})$/);if(r)return r[1];let i=e.match(/([+-])(\d{2})(\d{2})$/);return i?`${i[1]}${i[2]}:${i[3]}`:""}static adjust(e,t){let r=e instanceof $t.Literal?e.value:e,i=new Date(r);if(isNaN(i.getTime()))throw new Error(`ADJUST: invalid dateTime: '${r}'`);if(t==null){let te=i.getUTCFullYear(),z=String(i.getUTCMonth()+1).padStart(2,"0"),G=String(i.getUTCDate()).padStart(2,"0"),F=String(i.getUTCHours()).padStart(2,"0"),$=String(i.getUTCMinutes()).padStart(2,"0"),re=String(i.getUTCSeconds()).padStart(2,"0"),Ye=i.getUTCMilliseconds(),at=`${te}-${z}-${G}T${F}:${$}:${re}`;return Ye>0&&(at+=`.${String(Ye).padStart(3,"0")}`),new $t.Literal(at,new ef.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}let s=t instanceof $t.Literal?t.value:t,a=Tt.DateTimeParsing.parseDayTimeDuration(s),c=840*60*1e3;if(Math.abs(a)>c)throw new Error(`ADJUST: timezone offset out of range: '${s}'`);let l=i.getTime(),u=new Date(l+a),f=u.getUTCFullYear(),d=String(u.getUTCMonth()+1).padStart(2,"0"),h=String(u.getUTCDate()).padStart(2,"0"),p=String(u.getUTCHours()).padStart(2,"0"),y=String(u.getUTCMinutes()).padStart(2,"0"),v=String(u.getUTCSeconds()).padStart(2,"0"),w=u.getUTCMilliseconds(),b=a>=0?"+":"-",A=Math.floor(Math.abs(a)/(3600*1e3)),I=Math.floor(Math.abs(a)%(3600*1e3)/(60*1e3)),j=`${b}${String(A).padStart(2,"0")}:${String(I).padStart(2,"0")}`,V=`${f}-${d}-${h}T${p}:${y}:${v}`;return w>0&&(V+=`.${String(w).padStart(3,"0")}`),V+=j,new $t.Literal(V,new ef.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static now(){return new Date().toISOString()}static dateBefore(e,t){let r=Tt.DateTimeParsing.parseDate(e),i=Tt.DateTimeParsing.parseDate(t);return r<i}static dateAfter(e,t){let r=Tt.DateTimeParsing.parseDate(e),i=Tt.DateTimeParsing.parseDate(t);return r>i}static dateInRange(e,t,r){let i=Tt.DateTimeParsing.parseDate(e),s=Tt.DateTimeParsing.parseDate(t),a=Tt.DateTimeParsing.parseDate(r);return i>=s&&i<=a}static compareDurations(e,t,r){let i=e instanceof $t.Literal?e.value:e,s=t instanceof $t.Literal?t.value:t,a=Tt.DateTimeParsing.parseDayTimeDuration(i),c=Tt.DateTimeParsing.parseDayTimeDuration(s);switch(r){case"=":return a===c;case"!=":return a!==c;case"<":return a<c;case">":return a>c;case"<=":return a<=c;case">=":return a>=c;default:throw new Error(`compareDurations: unknown operator: ${r}`)}}static dateDiffMinutes(e,t){let r=Tt.DateTimeParsing.parseDate(e),i=Tt.DateTimeParsing.parseDate(t),s=Math.abs(i-r);return Math.round(s/(1e3*60))}static dateDiffHours(e,t){let r=Tt.DateTimeParsing.parseDate(e),i=Tt.DateTimeParsing.parseDate(t),s=Math.abs(i-r);return Math.round(s/(1e3*60*60)*100)/100}static timeDiff(e,t){let r=e instanceof $t.Literal?e.value:e,i=t instanceof $t.Literal?t.value:t,s=Tt.DateTimeParsing.parseXSDTime(r),a=Tt.DateTimeParsing.parseXSDTime(i);if(s===null)throw new Error(`timeDiff: invalid first time: '${r}'`);if(a===null)throw new Error(`timeDiff: invalid second time: '${i}'`);let c=s-a,l=Tt.DateTimeParsing.formatDayTimeDuration(c);return new $t.Literal(l,new ef.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static isDayTimeDuration(e){return e instanceof $t.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#dayTimeDuration":!1}static isDate(e){return e instanceof $t.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#date":!1}static isYearMonthDuration(e){return e instanceof $t.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#yearMonthDuration":!1}static isTime(e){return e instanceof $t.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#time":!1}static dateDiff(e,t){let r=e instanceof $t.Literal?e.value:e,i=t instanceof $t.Literal?t.value:t,s=Tt.DateTimeParsing.parseXSDDate(r),a=Tt.DateTimeParsing.parseXSDDate(i);if(s===null)throw new Error(`dateDiff: invalid first date: '${r}'`);if(a===null)throw new Error(`dateDiff: invalid second date: '${i}'`);let c=s.getTime()-a.getTime(),l=Math.round(c/(1440*60*1e3)),u=Tt.DateTimeParsing.formatDateDuration(l);return new $t.Literal(u,new ef.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}};xp.DateTimeAccessors=C1});var Ip=S(Cp=>{"use strict";Object.defineProperty(Cp,"__esModule",{value:!0});Cp.DateTimeFunctions=void 0;var zc=Tp(),lr=px(),gt=mx(),I1=class{static{o(this,"DateTimeFunctions")}static parseDate(e){return zc.DateTimeParsing.parseDate(e)}static parseDayTimeDuration(e){return zc.DateTimeParsing.parseDayTimeDuration(e)}static formatDayTimeDuration(e){return zc.DateTimeParsing.formatDayTimeDuration(e)}static xsdDayTimeDuration(e){return zc.DateTimeParsing.xsdDayTimeDuration(e)}static parseYearMonthDuration(e){return zc.DateTimeParsing.parseYearMonthDuration(e)}static formatYearMonthDuration(e){return zc.DateTimeParsing.formatYearMonthDuration(e)}static year(e){return gt.DateTimeAccessors.year(e)}static month(e){return gt.DateTimeAccessors.month(e)}static day(e){return gt.DateTimeAccessors.day(e)}static hours(e){return gt.DateTimeAccessors.hours(e)}static minutes(e){return gt.DateTimeAccessors.minutes(e)}static seconds(e){return gt.DateTimeAccessors.seconds(e)}static durationDays(e){return gt.DateTimeAccessors.durationDays(e)}static durationHours(e){return gt.DateTimeAccessors.durationHours(e)}static durationMinutes(e){return gt.DateTimeAccessors.durationMinutes(e)}static durationSeconds(e){return gt.DateTimeAccessors.durationSeconds(e)}static durationYears(e){return gt.DateTimeAccessors.durationYears(e)}static durationMonths(e){return gt.DateTimeAccessors.durationMonths(e)}static timezone(e){return gt.DateTimeAccessors.timezone(e)}static tz(e){return gt.DateTimeAccessors.tz(e)}static adjust(e,t){return gt.DateTimeAccessors.adjust(e,t)}static now(){return gt.DateTimeAccessors.now()}static dateBefore(e,t){return gt.DateTimeAccessors.dateBefore(e,t)}static dateAfter(e,t){return gt.DateTimeAccessors.dateAfter(e,t)}static dateInRange(e,t,r){return gt.DateTimeAccessors.dateInRange(e,t,r)}static compareDurations(e,t,r){return gt.DateTimeAccessors.compareDurations(e,t,r)}static dateDiffMinutes(e,t){return gt.DateTimeAccessors.dateDiffMinutes(e,t)}static dateDiffHours(e,t){return gt.DateTimeAccessors.dateDiffHours(e,t)}static timeDiff(e,t){return gt.DateTimeAccessors.timeDiff(e,t)}static dateDiff(e,t){return gt.DateTimeAccessors.dateDiff(e,t)}static isDayTimeDuration(e){return gt.DateTimeAccessors.isDayTimeDuration(e)}static isDate(e){return gt.DateTimeAccessors.isDate(e)}static isYearMonthDuration(e){return gt.DateTimeAccessors.isYearMonthDuration(e)}static isTime(e){return gt.DateTimeAccessors.isTime(e)}static dateTimeDiff(e,t){return lr.DateTimeArithmetic.dateTimeDiff(e,t)}static dateTimeAdd(e,t){return lr.DateTimeArithmetic.dateTimeAdd(e,t)}static dateTimeSubtract(e,t){return lr.DateTimeArithmetic.dateTimeSubtract(e,t)}static dateAdd(e,t){return lr.DateTimeArithmetic.dateAdd(e,t)}static dateSubtract(e,t){return lr.DateTimeArithmetic.dateSubtract(e,t)}static dateTimeAddYearMonth(e,t){return lr.DateTimeArithmetic.dateTimeAddYearMonth(e,t)}static dateTimeSubtractYearMonth(e,t){return lr.DateTimeArithmetic.dateTimeSubtractYearMonth(e,t)}static dateAddYearMonth(e,t){return lr.DateTimeArithmetic.dateAddYearMonth(e,t)}static dateSubtractYearMonth(e,t){return lr.DateTimeArithmetic.dateSubtractYearMonth(e,t)}static durationAdd(e,t){return lr.DateTimeArithmetic.durationAdd(e,t)}static durationSubtract(e,t){return lr.DateTimeArithmetic.durationSubtract(e,t)}static durationMultiply(e,t){return lr.DateTimeArithmetic.durationMultiply(e,t)}static durationDivide(e,t){return lr.DateTimeArithmetic.durationDivide(e,t)}static yearMonthDurationAdd(e,t){return lr.DateTimeArithmetic.yearMonthDurationAdd(e,t)}static yearMonthDurationSubtract(e,t){return lr.DateTimeArithmetic.yearMonthDurationSubtract(e,t)}static durationToDays(e){return lr.DateTimeArithmetic.durationToDays(e)}static durationToHours(e){return lr.DateTimeArithmetic.durationToHours(e)}static durationToMinutes(e){return lr.DateTimeArithmetic.durationToMinutes(e)}static durationToSeconds(e){return lr.DateTimeArithmetic.durationToSeconds(e)}};Cp.DateTimeFunctions=I1});var gx=S(Pp=>{"use strict";Object.defineProperty(Pp,"__esModule",{value:!0});Pp.LogicalFunctions=void 0;var j9=Ae(),Hc=Ne(),$9=qt(),Rp=Ip(),R1=class n{static{o(this,"LogicalFunctions")}static compare(e,t,r){if(n.isDayTimeDurationValue(e)&&n.isDayTimeDurationValue(t))return Rp.DateTimeFunctions.compareDurations(e instanceof Hc.Literal?e:String(e),t instanceof Hc.Literal?t:String(t),r);if(n.isDayTimeDurationValue(e)&&typeof t=="string"&&/^-?P/.test(t))return Rp.DateTimeFunctions.compareDurations(e instanceof Hc.Literal?e:String(e),t,r);if(typeof e=="string"&&/^-?P/.test(e)&&n.isDayTimeDurationValue(t))return Rp.DateTimeFunctions.compareDurations(e,t instanceof Hc.Literal?t:String(t),r);let i=n.toComparableValue(e),s=n.toComparableValue(t);switch(r){case"=":return i===s;case"!=":return i!==s;case"<":return i<s;case">":return i>s;case"<=":return i<=s;case">=":return i>=s;default:throw new Error(`Unknown comparison operator: ${r}`)}}static isDayTimeDurationValue(e){return e instanceof Hc.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#dayTimeDuration":!1}static toComparableValue(e){if(typeof e=="string"||typeof e=="number")return e;if(e instanceof Hc.Literal){let t=e.datatype?.value;if(t?.includes("#integer")||t?.includes("#decimal")||t?.includes("#double")){let r=parseFloat(e.value);if(!isNaN(r))return r}if(t==="http://www.w3.org/2001/XMLSchema#dayTimeDuration")try{return Rp.DateTimeFunctions.parseDayTimeDuration(e.value)}catch{return e.value}return e.value}return e instanceof j9.IRI?e.value:e instanceof $9.BlankNode?e.id:String(e)}static logicalAnd(e){return e.every(t=>t===!0)}static logicalOr(e){return e.some(t=>t===!0)}static logicalNot(e){return!e}static coalesce(e){for(let t of e)if(t!=null)return t}static if(e,t,r){return e?t:r}};Pp.LogicalFunctions=R1});var yx=S(Op=>{"use strict";Object.defineProperty(Op,"__esModule",{value:!0});Op.RDFTermFunctions=void 0;var Lr=Ae(),vt=Ne(),pi=qt(),Qc=Nu(),P1=Tn(),O1=class n{static{o(this,"RDFTermFunctions")}static datatype(e){if(e===void 0)throw new Error("DATATYPE: argument is undefined");if(e instanceof vt.Literal)return e.datatype?e.datatype:e.language?new Lr.IRI("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"):new Lr.IRI("http://www.w3.org/2001/XMLSchema#string");throw new Error("DATATYPE: argument must be a literal")}static bound(e){return e!==void 0}static isIRI(e){return e===void 0?!1:e instanceof Lr.IRI}static isBlank(e){return e===void 0?!1:e instanceof pi.BlankNode}static isLiteral(e){return e===void 0?!1:e instanceof vt.Literal}static isTriple(e){return e===void 0?!1:e instanceof Qc.QuotedTriple}static hasLangdir(e){return e===void 0||!(e instanceof vt.Literal)?!1:!!e.language&&!!e.direction}static isNumeric(e){if(e===void 0||!(e instanceof vt.Literal))return!1;let t=e.datatype?.value;return t?["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float","http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedShort","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#positiveInteger"].includes(t):!1}static xsdDateTime(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`xsd:dateTime: invalid date string '${e}'`);return new vt.Literal(t.toISOString(),new Lr.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static xsdInteger(e){let t=parseInt(e,10);if(isNaN(t))throw new Error(`xsd:integer: cannot convert '${e}' to integer`);return new vt.Literal(String(t),new Lr.IRI("http://www.w3.org/2001/XMLSchema#integer"))}static xsdDecimal(e){let t=parseFloat(e);if(isNaN(t))throw new Error(`xsd:decimal: cannot convert '${e}' to decimal`);return new vt.Literal(String(t),new Lr.IRI("http://www.w3.org/2001/XMLSchema#decimal"))}static sameTerm(e,t){if(e===void 0&&t===void 0)return!0;if(e===void 0||t===void 0||e.constructor!==t.constructor)return!1;if(e instanceof Lr.IRI&&t instanceof Lr.IRI)return e.value===t.value;if(e instanceof pi.BlankNode&&t instanceof pi.BlankNode)return e.id===t.id;if(e instanceof vt.Literal&&t instanceof vt.Literal){if(e.value!==t.value||e.language!==t.language)return!1;let r=e.datatype?.value,i=t.datatype?.value;return r===i}return!1}static iri(e){if(e===void 0)throw new Error("IRI: argument is undefined");if(e instanceof Lr.IRI)return e;if(e instanceof vt.Literal)return new Lr.IRI(e.value);throw e instanceof pi.BlankNode?new Error("IRI: cannot convert blank node to IRI"):new Error("IRI: unsupported term type")}static uri(e){return n.iri(e)}static bnode(e){if(e===void 0){let t=`b${(0,P1.v4)().replace(/-/g,"").substring(0,12)}`;return new pi.BlankNode(t)}if(e instanceof vt.Literal)return new pi.BlankNode(e.value);if(e instanceof pi.BlankNode)return e;throw new Error("BNODE: argument must be a string literal or omitted")}static strdt(e,t){if(e===void 0)throw new Error("STRDT: lexical form is undefined");if(t===void 0)throw new Error("STRDT: datatype IRI is undefined");let r;if(e instanceof vt.Literal){if(e.language)throw new Error("STRDT: lexical form must not have a language tag");r=e.value}else if(typeof e=="string")r=e;else throw new Error("STRDT: lexical form must be a string literal");let i;if(t instanceof Lr.IRI)i=t;else if(t instanceof vt.Literal)i=new Lr.IRI(t.value);else throw new Error("STRDT: datatype must be an IRI");return new vt.Literal(r,i)}static strlang(e,t){if(e===void 0)throw new Error("STRLANG: lexical form is undefined");if(t===void 0)throw new Error("STRLANG: language tag is undefined");let r;if(e instanceof vt.Literal){if(e.language)throw new Error("STRLANG: lexical form must not already have a language tag");r=e.value}else if(typeof e=="string")r=e;else throw new Error("STRLANG: lexical form must be a string literal");let i;if(t instanceof vt.Literal)i=t.value;else if(typeof t=="string")i=t;else throw new Error("STRLANG: language tag must be a string literal");if(i==="")throw new Error("STRLANG: language tag cannot be empty");return new vt.Literal(r,void 0,i)}static strlangdir(e,t,r){if(e===void 0)throw new Error("STRLANGDIR: lexical form is undefined");if(t===void 0)throw new Error("STRLANGDIR: language tag is undefined");if(r===void 0)throw new Error("STRLANGDIR: direction is undefined");let i;if(e instanceof vt.Literal){if(e.language)throw new Error("STRLANGDIR: lexical form must not already have a language tag");i=e.value}else if(typeof e=="string")i=e;else throw new Error("STRLANGDIR: lexical form must be a string literal");let s;if(t instanceof vt.Literal)s=t.value;else if(typeof t=="string")s=t;else throw new Error("STRLANGDIR: language tag must be a string literal");if(s==="")throw new Error("STRLANGDIR: language tag cannot be empty");let a;if(r instanceof vt.Literal)a=r.value.toLowerCase();else throw new Error("STRLANGDIR: direction must be a string literal");if(a!=="ltr"&&a!=="rtl")throw new Error(`STRLANGDIR: invalid direction '${a}'. Must be 'ltr' or 'rtl'`);return new vt.Literal(i,void 0,s,a)}static uuid(){let e=(0,P1.v4)();return new Lr.IRI(`urn:uuid:${e}`)}static struuid(){let e=(0,P1.v4)();return new vt.Literal(e)}static triple(e,t,r){if(e===void 0)throw new Error("TRIPLE: subject is undefined");if(t===void 0)throw new Error("TRIPLE: predicate is undefined");if(r===void 0)throw new Error("TRIPLE: object is undefined");if(e instanceof vt.Literal)throw new Error("TRIPLE: subject must be IRI, BlankNode, or QuotedTriple, got Literal");if(!(t instanceof Lr.IRI)){let c=t instanceof vt.Literal?"Literal":t instanceof pi.BlankNode?"BlankNode":t instanceof Qc.QuotedTriple?"QuotedTriple":typeof t;throw new Error(`TRIPLE: predicate must be IRI, got ${c}`)}let i=e,s=t,a=r;return new Qc.QuotedTriple(i,s,a)}static subject(e){if(e===void 0)throw new Error("SUBJECT: argument is undefined");if(!(e instanceof Qc.QuotedTriple)){let t=e instanceof Lr.IRI?"IRI":e instanceof vt.Literal?"Literal":e instanceof pi.BlankNode?"BlankNode":typeof e;throw new Error(`SUBJECT: argument must be QuotedTriple, got ${t}`)}return e.subject}static predicate(e){if(e===void 0)throw new Error("PREDICATE: argument is undefined");if(!(e instanceof Qc.QuotedTriple)){let t=e instanceof Lr.IRI?"IRI":e instanceof vt.Literal?"Literal":e instanceof pi.BlankNode?"BlankNode":typeof e;throw new Error(`PREDICATE: argument must be QuotedTriple, got ${t}`)}return e.predicate}static object(e){if(e===void 0)throw new Error("OBJECT: argument is undefined");if(!(e instanceof Qc.QuotedTriple)){let t=e instanceof Lr.IRI?"IRI":e instanceof vt.Literal?"Literal":e instanceof pi.BlankNode?"BlankNode":typeof e;throw new Error(`OBJECT: argument must be QuotedTriple, got ${t}`)}return e.object}};Op.RDFTermFunctions=O1});var _x=S(Fp=>{"use strict";Object.defineProperty(Fp,"__esModule",{value:!0});Fp.HashFunctions=void 0;var F1=class{static{o(this,"HashFunctions")}static md5(e){return require("crypto").createHash("md5").update(e).digest("hex")}static sha1(e){return require("crypto").createHash("sha1").update(e).digest("hex")}static sha256(e){return require("crypto").createHash("sha256").update(e).digest("hex")}static sha384(e){return require("crypto").createHash("sha384").update(e).digest("hex")}static sha512(e){return require("crypto").createHash("sha512").update(e).digest("hex")}};Fp.HashFunctions=F1});var Np=S(Dp=>{"use strict";Object.defineProperty(Dp,"__esModule",{value:!0});Dp.BuiltInFunctions=void 0;var ur=dx(),ja=hx(),le=Ip(),Kc=gx(),Ft=yx(),tf=_x(),D1=class{static{o(this,"BuiltInFunctions")}static str(...e){return ur.StringFunctions.str(...e)}static lang(...e){return ur.StringFunctions.lang(...e)}static langdir(...e){return ur.StringFunctions.langdir(...e)}static langMatches(...e){return ur.StringFunctions.langMatches(...e)}static regex(...e){return ur.StringFunctions.regex(...e)}static contains(...e){return ur.StringFunctions.contains(...e)}static strStarts(...e){return ur.StringFunctions.strStarts(...e)}static strEnds(...e){return ur.StringFunctions.strEnds(...e)}static strlen(...e){return ur.StringFunctions.strlen(...e)}static ucase(...e){return ur.StringFunctions.ucase(...e)}static lcase(...e){return ur.StringFunctions.lcase(...e)}static substr(...e){return ur.StringFunctions.substr(...e)}static strBefore(...e){return ur.StringFunctions.strBefore(...e)}static strAfter(...e){return ur.StringFunctions.strAfter(...e)}static concat(...e){return ur.StringFunctions.concat(...e)}static replace(...e){return ur.StringFunctions.replace(...e)}static encodeForUri(...e){return ur.StringFunctions.encodeForUri(...e)}static normalize(...e){return ur.StringFunctions.normalize(...e)}static fold(...e){return ur.StringFunctions.fold(...e)}static abs(...e){return ja.MathFunctions.abs(...e)}static round(...e){return ja.MathFunctions.round(...e)}static ceil(...e){return ja.MathFunctions.ceil(...e)}static floor(...e){return ja.MathFunctions.floor(...e)}static rand(){return ja.MathFunctions.rand()}static msToMinutes(...e){return ja.MathFunctions.msToMinutes(...e)}static msToHours(...e){return ja.MathFunctions.msToHours(...e)}static msToSeconds(...e){return ja.MathFunctions.msToSeconds(...e)}static parseDate(...e){return le.DateTimeFunctions.parseDate(...e)}static dateBefore(...e){return le.DateTimeFunctions.dateBefore(...e)}static dateAfter(...e){return le.DateTimeFunctions.dateAfter(...e)}static dateInRange(...e){return le.DateTimeFunctions.dateInRange(...e)}static dateDiffMinutes(...e){return le.DateTimeFunctions.dateDiffMinutes(...e)}static dateDiffHours(...e){return le.DateTimeFunctions.dateDiffHours(...e)}static year(...e){return le.DateTimeFunctions.year(...e)}static month(...e){return le.DateTimeFunctions.month(...e)}static day(...e){return le.DateTimeFunctions.day(...e)}static hours(...e){return le.DateTimeFunctions.hours(...e)}static minutes(...e){return le.DateTimeFunctions.minutes(...e)}static seconds(...e){return le.DateTimeFunctions.seconds(...e)}static timezone(...e){return le.DateTimeFunctions.timezone(...e)}static tz(...e){return le.DateTimeFunctions.tz(...e)}static now(){return le.DateTimeFunctions.now()}static parseDayTimeDuration(...e){return le.DateTimeFunctions.parseDayTimeDuration(...e)}static formatDayTimeDuration(...e){return le.DateTimeFunctions.formatDayTimeDuration(...e)}static xsdDayTimeDuration(...e){return le.DateTimeFunctions.xsdDayTimeDuration(...e)}static compareDurations(...e){return le.DateTimeFunctions.compareDurations(...e)}static isDayTimeDuration(...e){return le.DateTimeFunctions.isDayTimeDuration(...e)}static isDate(...e){return le.DateTimeFunctions.isDate(...e)}static dateDiff(...e){return le.DateTimeFunctions.dateDiff(...e)}static dateTimeDiff(...e){return le.DateTimeFunctions.dateTimeDiff(...e)}static dateTimeAdd(...e){return le.DateTimeFunctions.dateTimeAdd(...e)}static dateTimeSubtract(...e){return le.DateTimeFunctions.dateTimeSubtract(...e)}static dateAdd(...e){return le.DateTimeFunctions.dateAdd(...e)}static dateSubtract(...e){return le.DateTimeFunctions.dateSubtract(...e)}static parseYearMonthDuration(...e){return le.DateTimeFunctions.parseYearMonthDuration(...e)}static isYearMonthDuration(...e){return le.DateTimeFunctions.isYearMonthDuration(...e)}static dateTimeAddYearMonth(...e){return le.DateTimeFunctions.dateTimeAddYearMonth(...e)}static dateTimeSubtractYearMonth(...e){return le.DateTimeFunctions.dateTimeSubtractYearMonth(...e)}static dateAddYearMonth(...e){return le.DateTimeFunctions.dateAddYearMonth(...e)}static dateSubtractYearMonth(...e){return le.DateTimeFunctions.dateSubtractYearMonth(...e)}static durationAdd(...e){return le.DateTimeFunctions.durationAdd(...e)}static durationSubtract(...e){return le.DateTimeFunctions.durationSubtract(...e)}static durationMultiply(...e){return le.DateTimeFunctions.durationMultiply(...e)}static durationDivide(...e){return le.DateTimeFunctions.durationDivide(...e)}static formatYearMonthDuration(...e){return le.DateTimeFunctions.formatYearMonthDuration(...e)}static yearMonthDurationAdd(...e){return le.DateTimeFunctions.yearMonthDurationAdd(...e)}static yearMonthDurationSubtract(...e){return le.DateTimeFunctions.yearMonthDurationSubtract(...e)}static durationYears(...e){return le.DateTimeFunctions.durationYears(...e)}static durationMonths(...e){return le.DateTimeFunctions.durationMonths(...e)}static durationToDays(...e){return le.DateTimeFunctions.durationToDays(...e)}static durationToHours(...e){return le.DateTimeFunctions.durationToHours(...e)}static durationToMinutes(...e){return le.DateTimeFunctions.durationToMinutes(...e)}static durationToSeconds(...e){return le.DateTimeFunctions.durationToSeconds(...e)}static durationDays(...e){return le.DateTimeFunctions.durationDays(...e)}static durationHours(...e){return le.DateTimeFunctions.durationHours(...e)}static durationMinutes(...e){return le.DateTimeFunctions.durationMinutes(...e)}static durationSeconds(...e){return le.DateTimeFunctions.durationSeconds(...e)}static adjust(...e){return le.DateTimeFunctions.adjust(...e)}static isTime(...e){return le.DateTimeFunctions.isTime(...e)}static timeDiff(...e){return le.DateTimeFunctions.timeDiff(...e)}static compare(...e){return Kc.LogicalFunctions.compare(...e)}static logicalAnd(...e){return Kc.LogicalFunctions.logicalAnd(...e)}static logicalOr(...e){return Kc.LogicalFunctions.logicalOr(...e)}static logicalNot(...e){return Kc.LogicalFunctions.logicalNot(...e)}static coalesce(...e){return Kc.LogicalFunctions.coalesce(...e)}static if(...e){return Kc.LogicalFunctions.if(...e)}static datatype(...e){return Ft.RDFTermFunctions.datatype(...e)}static bound(...e){return Ft.RDFTermFunctions.bound(...e)}static isIRI(...e){return Ft.RDFTermFunctions.isIRI(...e)}static isBlank(...e){return Ft.RDFTermFunctions.isBlank(...e)}static isLiteral(...e){return Ft.RDFTermFunctions.isLiteral(...e)}static isTriple(...e){return Ft.RDFTermFunctions.isTriple(...e)}static isNumeric(...e){return Ft.RDFTermFunctions.isNumeric(...e)}static hasLangdir(...e){return Ft.RDFTermFunctions.hasLangdir(...e)}static sameTerm(...e){return Ft.RDFTermFunctions.sameTerm(...e)}static iri(...e){return Ft.RDFTermFunctions.iri(...e)}static uri(...e){return Ft.RDFTermFunctions.uri(...e)}static bnode(...e){return Ft.RDFTermFunctions.bnode(...e)}static strdt(...e){return Ft.RDFTermFunctions.strdt(...e)}static strlang(...e){return Ft.RDFTermFunctions.strlang(...e)}static strlangdir(...e){return Ft.RDFTermFunctions.strlangdir(...e)}static uuid(){return Ft.RDFTermFunctions.uuid()}static struuid(){return Ft.RDFTermFunctions.struuid()}static xsdDateTime(...e){return Ft.RDFTermFunctions.xsdDateTime(...e)}static xsdInteger(...e){return Ft.RDFTermFunctions.xsdInteger(...e)}static xsdDecimal(...e){return Ft.RDFTermFunctions.xsdDecimal(...e)}static triple(...e){return Ft.RDFTermFunctions.triple(...e)}static subject(...e){return Ft.RDFTermFunctions.subject(...e)}static predicate(...e){return Ft.RDFTermFunctions.predicate(...e)}static object(...e){return Ft.RDFTermFunctions.object(...e)}static md5(...e){return tf.HashFunctions.md5(...e)}static sha1(...e){return tf.HashFunctions.sha1(...e)}static sha256(...e){return tf.HashFunctions.sha256(...e)}static sha384(...e){return tf.HashFunctions.sha384(...e)}static sha512(...e){return tf.HashFunctions.sha512(...e)}};Dp.BuiltInFunctions=D1});var rf=S(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});fs.ExoQLBudgetExceededError=fs.ExoQLCycleError=fs.ExoQLEvalDisabledError=fs.ExoQLForbiddenKeywordError=void 0;var N1=class extends Error{static{o(this,"ExoQLForbiddenKeywordError")}constructor(e,t){super(t??`ExoQLForbiddenKeywordError: keyword "${e}" is not permitted by the exoql__Query AST allowlist`),this.name="ExoQLForbiddenKeywordError",this.keyword=e}};fs.ExoQLForbiddenKeywordError=N1;var L1=class extends Error{static{o(this,"ExoQLEvalDisabledError")}constructor(e){super(e??"ExoQLEvalDisabledError: exoql.eval.enabled is false (default). Flip the feature flag to opt in."),this.name="ExoQLEvalDisabledError"}};fs.ExoQLEvalDisabledError=L1;var k1=class extends Error{static{o(this,"ExoQLCycleError")}constructor(e,t){super(t??`ExoQLCycleError: cycle detected in nested exo:eval invocations: ${e.join(" \u2192 ")}`),this.name="ExoQLCycleError",this.path=e}};fs.ExoQLCycleError=k1;var M1=class extends Error{static{o(this,"ExoQLBudgetExceededError")}constructor(e,t,r,i){super(i??`ExoQLBudgetExceededError: ${e} budget exceeded (limit=${t}, observed=${r})`),this.name="ExoQLBudgetExceededError",this.budget=e,this.limit=t,this.observed=r}};fs.ExoQLBudgetExceededError=M1});var Cx=S(M=>{"use strict";Object.defineProperty(M,"__esModule",{value:!0});M.functionHandlers=void 0;var k=Np();M.functionHandlers=new Map;M.functionHandlers.set("str",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.str(t)});M.functionHandlers.set("lang",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.lang(t)});M.functionHandlers.set("langmatches",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.langMatches(t,r)});M.functionHandlers.set("contains",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.contains(t,r)});M.functionHandlers.set("strstarts",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.strStarts(t,r)});M.functionHandlers.set("strends",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.strEnds(t,r)});M.functionHandlers.set("strlen",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.strlen(t)});M.functionHandlers.set("ucase",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.ucase(t)});M.functionHandlers.set("lcase",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.lcase(t)});M.functionHandlers.set("substr",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=Number(e.evaluateExpression(n[1],e.solution));if(n[2]){let i=Number(e.evaluateExpression(n[2],e.solution));return k.BuiltInFunctions.substr(t,r,i)}return k.BuiltInFunctions.substr(t,r)});M.functionHandlers.set("strbefore",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.strBefore(t,r)});M.functionHandlers.set("strafter",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.strAfter(t,r)});M.functionHandlers.set("concat",(n,e)=>{let t=n.map(r=>e.getStringValue(e.evaluateExpression(r,e.solution)));return k.BuiltInFunctions.concat(...t)});M.functionHandlers.set("replace",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=e.getStringValue(e.evaluateExpression(n[2],e.solution)),s=n[3]?e.getStringValue(e.evaluateExpression(n[3],e.solution)):void 0;return k.BuiltInFunctions.replace(t,r,i,s)});M.functionHandlers.set("regex",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=n[2]?e.getStringValue(e.evaluateExpression(n[2],e.solution)):void 0;return k.BuiltInFunctions.regex(t,r,i)});M.functionHandlers.set("encode_for_uri",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.encodeForUri(t)});M.functionHandlers.set("datatype",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.datatype(t).value});M.functionHandlers.set("bound",(n,e)=>{let t=n[0];if(t.type==="variable"&&t.name){let r=e.solution.get(t.name);return k.BuiltInFunctions.bound(r)}return!0});var Sx=o((n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isIRI(t)},"isIriHandler");M.functionHandlers.set("isiri",Sx);M.functionHandlers.set("isuri",Sx);M.functionHandlers.set("isblank",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isBlank(t)});M.functionHandlers.set("isliteral",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isLiteral(t)});M.functionHandlers.set("isnumeric",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isNumeric(t)});M.functionHandlers.set("haslangdir",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.hasLangdir(t)});M.functionHandlers.set("istriple",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isTriple(t)});M.functionHandlers.set("sameterm",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution),r=e.getTermFromExpression(n[1],e.solution);return k.BuiltInFunctions.sameTerm(t,r)});M.functionHandlers.set("abs",(n,e)=>{let t=Number(e.getStringValue(e.evaluateExpression(n[0],e.solution)));return k.BuiltInFunctions.abs(t)});M.functionHandlers.set("round",(n,e)=>{let t=Number(e.getStringValue(e.evaluateExpression(n[0],e.solution)));return k.BuiltInFunctions.round(t)});M.functionHandlers.set("ceil",(n,e)=>{let t=Number(e.getStringValue(e.evaluateExpression(n[0],e.solution)));return k.BuiltInFunctions.ceil(t)});M.functionHandlers.set("floor",(n,e)=>{let t=Number(e.getStringValue(e.evaluateExpression(n[0],e.solution)));return k.BuiltInFunctions.floor(t)});M.functionHandlers.set("rand",()=>k.BuiltInFunctions.rand());M.functionHandlers.set("parsedate",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.parseDate(t)});M.functionHandlers.set("datebefore",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.dateBefore(t,r)});M.functionHandlers.set("dateafter",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.dateAfter(t,r)});M.functionHandlers.set("dateinrange",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=e.getStringValue(e.evaluateExpression(n[2],e.solution));return k.BuiltInFunctions.dateInRange(t,r,i)});M.functionHandlers.set("datediffminutes",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.dateDiffMinutes(t,r)});M.functionHandlers.set("datediffhours",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.dateDiffHours(t,r)});var Yc=o((n,e,t)=>(r,i)=>{let s=i.evaluateExpression(r[0],i.solution);return e&&i.isYearMonthDurationValue(s)?e(s):t&&i.isDayTimeDurationValue(s)?t(s):n(i.getStringValue(s))},"createDateTimeAccessor"),vx=Yc(k.BuiltInFunctions.year.bind(k.BuiltInFunctions),k.BuiltInFunctions.durationYears.bind(k.BuiltInFunctions),null);M.functionHandlers.set("year",vx);M.functionHandlers.set("years",vx);var bx=Yc(k.BuiltInFunctions.month.bind(k.BuiltInFunctions),k.BuiltInFunctions.durationMonths.bind(k.BuiltInFunctions),null);M.functionHandlers.set("month",bx);M.functionHandlers.set("months",bx);var wx=Yc(k.BuiltInFunctions.day.bind(k.BuiltInFunctions),null,k.BuiltInFunctions.durationDays.bind(k.BuiltInFunctions));M.functionHandlers.set("day",wx);M.functionHandlers.set("days",wx);M.functionHandlers.set("hours",Yc(k.BuiltInFunctions.hours.bind(k.BuiltInFunctions),null,k.BuiltInFunctions.durationHours.bind(k.BuiltInFunctions)));M.functionHandlers.set("minutes",Yc(k.BuiltInFunctions.minutes.bind(k.BuiltInFunctions),null,k.BuiltInFunctions.durationMinutes.bind(k.BuiltInFunctions)));M.functionHandlers.set("seconds",Yc(k.BuiltInFunctions.seconds.bind(k.BuiltInFunctions),null,k.BuiltInFunctions.durationSeconds.bind(k.BuiltInFunctions)));M.functionHandlers.set("timezone",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.timezone(t)});M.functionHandlers.set("tz",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.tz(t)});M.functionHandlers.set("adjust",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution),r=n.length>1?e.evaluateExpression(n[1],e.solution):void 0;return k.BuiltInFunctions.adjust(t,r)});M.functionHandlers.set("now",()=>k.BuiltInFunctions.now());var Ex=o((n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.xsdDateTime(e.getStringValue(t))},"dateTimeHandler");M.functionHandlers.set("datetime",Ex);M.functionHandlers.set("xsd:datetime",Ex);var Tx=o((n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.xsdInteger(e.getStringValue(t))},"integerHandler");M.functionHandlers.set("integer",Tx);M.functionHandlers.set("xsd:integer",Tx);var Ax=o((n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.xsdDecimal(e.getStringValue(t))},"decimalHandler");M.functionHandlers.set("decimal",Ax);M.functionHandlers.set("xsd:decimal",Ax);var xx=o((n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.xsdDayTimeDuration(e.getStringValue(t))},"dayTimeDurationHandler");M.functionHandlers.set("daytimeduration",xx);M.functionHandlers.set("xsd:daytimeduration",xx);M.functionHandlers.set("durationtodays",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationToDays(t)});M.functionHandlers.set("durationtohours",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationToHours(t)});M.functionHandlers.set("durationtominutes",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationToMinutes(t)});M.functionHandlers.set("durationtoseconds",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationToSeconds(t)});M.functionHandlers.set("durationdays",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationDays(t)});M.functionHandlers.set("durationhours",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationHours(t)});M.functionHandlers.set("durationminutes",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationMinutes(t)});M.functionHandlers.set("durationseconds",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationSeconds(t)});M.functionHandlers.set("durationyears",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationYears(t)});M.functionHandlers.set("durationmonths",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationMonths(t)});M.functionHandlers.set("datetimediff",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution),r=e.evaluateExpression(n[1],e.solution);return k.BuiltInFunctions.dateTimeDiff(t,r)});M.functionHandlers.set("datetimeadd",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution),r=e.evaluateExpression(n[1],e.solution);return k.BuiltInFunctions.dateTimeAdd(t,r)});M.functionHandlers.set("datetimesubtract",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution),r=e.evaluateExpression(n[1],e.solution);return k.BuiltInFunctions.dateTimeSubtract(t,r)});M.functionHandlers.set("mstominutes",(n,e)=>{let t=Number(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.msToMinutes(t)});M.functionHandlers.set("mstohours",(n,e)=>{let t=Number(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.msToHours(t)});M.functionHandlers.set("mstoseconds",(n,e)=>{let t=Number(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.msToSeconds(t)});M.functionHandlers.set("md5",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.md5(t)});M.functionHandlers.set("sha1",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.sha1(t)});M.functionHandlers.set("sha256",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.sha256(t)});M.functionHandlers.set("sha384",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.sha384(t)});M.functionHandlers.set("sha512",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.sha512(t)});M.functionHandlers.set("subject",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.subject(t)});M.functionHandlers.set("predicate",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.predicate(t)});M.functionHandlers.set("object",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.object(t)});M.functionHandlers.set("triple",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution),r=e.getTermFromExpression(n[1],e.solution),i=e.getTermFromExpression(n[2],e.solution);return k.BuiltInFunctions.triple(t,r,i)});M.functionHandlers.set("days_between",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=new Date(t),s=new Date(r);return Math.floor((s.getTime()-i.getTime())/(1440*60*1e3))});M.functionHandlers.set("minutes_between",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=new Date(t),s=new Date(r);return Math.floor((s.getTime()-i.getTime())/(60*1e3))});M.functionHandlers.set("hours_between",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=new Date(t);return(new Date(r).getTime()-i.getTime())/(3600*1e3)});M.functionHandlers.set("age_days",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=new Date(t);return Math.floor((new Date().getTime()-r.getTime())/(1440*60*1e3))});M.functionHandlers.set("week_number",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=new Date(t),i=new Date(Date.UTC(r.getFullYear(),r.getMonth(),r.getDate()));i.setUTCDate(i.getUTCDate()+4-(i.getUTCDay()||7));let s=new Date(Date.UTC(i.getUTCFullYear(),0,1));return Math.ceil(((i.getTime()-s.getTime())/(1440*60*1e3)+1)/7)});M.functionHandlers.set("format_date",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=new Date(t);return r.replace("YYYY",String(i.getFullYear())).replace("MM",String(i.getMonth()+1).padStart(2,"0")).replace("DD",String(i.getDate()).padStart(2,"0")).replace("HH",String(i.getHours()).padStart(2,"0")).replace("mm",String(i.getMinutes()).padStart(2,"0")).replace("ss",String(i.getSeconds()).padStart(2,"0"))});M.functionHandlers.set("exo:eval",()=>{let{ExoQLEvalDisabledError:n}=rf();throw new n})});var Lp=S(Xc=>{"use strict";Object.defineProperty(Xc,"__esModule",{value:!0});Xc.FilterExecutor=Xc.FilterExecutorError=void 0;var yt=Np(),B9=Cx(),j1=Ae(),ds=Ne(),_r=class extends Error{static{o(this,"FilterExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="FilterExecutorError"}};Xc.FilterExecutorError=_r;var $1=class{static{o(this,"FilterExecutor")}constructor(){this.existsEvaluator=null,this.tripleStore=null,this.uuidCache=new Map}setExistsEvaluator(e){this.existsEvaluator=e}setTripleStore(e){this.tripleStore=e,this.uuidCache.clear()}async*execute(e,t){let r=this.expressionContainsExists(e.expression);for await(let i of t)try{let s;r?s=await this.evaluateExpressionAsync(e.expression,i):s=this.evaluateExpression(e.expression,i),s===!0&&(yield i)}catch{continue}}expressionContainsExists(e){if(!e||typeof e!="object")return!1;if(e.type==="exists")return!0;if(e.type==="logical")return e.operands.some(t=>this.expressionContainsExists(t));if(e.type==="comparison"){let t=e;return this.expressionContainsExists(t.left)||this.expressionContainsExists(t.right)}if(e.type==="arithmetic"){let t=e;return this.expressionContainsExists(t.left)||this.expressionContainsExists(t.right)}if(e.type==="in"){let t=e;return this.expressionContainsExists(t.expression)||t.list.some(r=>this.expressionContainsExists(r))}if(e.type==="function"||e.type==="functionCall"){let t=e;return Array.isArray(t.args)?t.args.some(r=>this.expressionContainsExists(r)):!1}return!1}async executeAll(e,t){let r=[];async function*i(){for(let s of t)yield s}o(i,"generator");for await(let s of this.execute(e,i()))r.push(s);return r}evaluateExpression(e,t){let r=e;if("termType"in e)switch(r.termType){case"Variable":return t.get(r.value);case"Literal":{let i=r.value,s=r.datatype,a=typeof s=="string"?s:s?.value;return a&&i.length>0&&this.shouldPreserveDatatype(a)?new ds.Literal(i,new j1.IRI(a)):i}case"NamedNode":return r.value;default:throw new _r(`Unsupported termType: ${String(r.termType)}`)}switch(e.type){case"comparison":return this.evaluateComparison(e,t);case"logical":return this.evaluateLogical(e,t);case"arithmetic":return this.evaluateArithmetic(e,t);case"function":case"functionCall":return this.evaluateFunction(e,t);case"variable":return t.get(e.name);case"literal":{let i=e;return i.datatype&&i.value.length>0&&this.shouldPreserveDatatype(i.datatype)?new ds.Literal(i.value,new j1.IRI(i.datatype)):i.value}case"in":return this.evaluateIn(e,t);case"exists":throw new _r("EXISTS expressions require async evaluation. Use evaluateExpressionAsync instead.");default:throw new _r(`Unsupported expression type: ${e.type}`)}}async evaluateExpressionAsync(e,t){if(!this.expressionContainsExists(e))return this.evaluateExpression(e,t);if(e.type==="exists")return this.evaluateExists(e,t);if(e.type==="logical")return this.evaluateLogicalAsync(e,t);if(e.type==="comparison"){let r=e,i=await this.evaluateExpressionAsync(r.left,t),s=await this.evaluateExpressionAsync(r.right,t);return yt.BuiltInFunctions.compare(i,s,r.operator)}return e.type==="in"?this.evaluateInAsync(e,t):e.type==="function"||e.type==="functionCall"?this.evaluateFunctionAsync(e,t):this.evaluateExpression(e,t)}async evaluateExists(e,t){if(!this.existsEvaluator)throw new _r("EXISTS evaluator not set. Call setExistsEvaluator before evaluating EXISTS expressions.");let r=await this.existsEvaluator(e.pattern,t);return e.negated?!r:r}async evaluateLogicalAsync(e,t){if(e.operator==="!"){let i=await this.evaluateExpressionAsync(e.operands[0],t);return yt.BuiltInFunctions.logicalNot(i)}let r=[];for(let i of e.operands){let s=await this.evaluateExpressionAsync(i,t);r.push(s)}if(e.operator==="&&")return yt.BuiltInFunctions.logicalAnd(r);if(e.operator==="||")return yt.BuiltInFunctions.logicalOr(r);throw new _r(`Unknown logical operator: ${String(e.operator)}`)}async evaluateInAsync(e,t){let r=await this.evaluateExpressionAsync(e.expression,t),i=!1;for(let s of e.list){let a=await this.evaluateExpressionAsync(s,t);if(yt.BuiltInFunctions.compare(r,a,"=")){i=!0;break}}return e.negated?!i:i}async evaluateFunctionAsync(e,t){let r=e,i=this.extractFunctionName(r.function),s=r.args??[];if(i==="if"){if(s.length!==3)throw new _r("IF requires exactly 3 arguments");let l=await this.evaluateExpressionAsync(s[0],t);return this.toBoolean(l)?this.evaluateExpressionAsync(s[1],t):this.evaluateExpressionAsync(s[2],t)}if(i==="coalesce"){for(let l of s)try{let u=await this.evaluateExpressionAsync(l,t);if(u!=null)return u}catch{continue}return}let a=[];for(let l of s){let u=await this.evaluateExpressionAsync(l,t);a.push(this.wrapAsLiteralExpression(u))}let c={...r,args:a};return this.evaluateFunction(c,t)}wrapAsLiteralExpression(e){return e==null?{type:"literal",value:""}:e!==null&&typeof e=="object"&&"termType"in e?e:e instanceof j1.IRI||e instanceof ds.Literal?{type:"literal",value:e.value}:typeof e=="number"||typeof e=="boolean"||typeof e=="string"?{type:"literal",value:e}:{type:"literal",value:String(e)}}evaluateComparison(e,t){let r=this.evaluateExpression(e.left,t),i=this.evaluateExpression(e.right,t);return yt.BuiltInFunctions.compare(r,i,e.operator)}evaluateLogical(e,t){if(e.operator==="!"){let i=this.evaluateExpression(e.operands[0],t);return yt.BuiltInFunctions.logicalNot(i)}let r=e.operands.map(i=>this.evaluateExpression(i,t));if(e.operator==="&&")return yt.BuiltInFunctions.logicalAnd(r);if(e.operator==="||")return yt.BuiltInFunctions.logicalOr(r);throw new _r(`Unknown logical operator: ${String(e.operator)}`)}evaluateIn(e,t){let r=this.evaluateExpression(e.expression,t),i=e.list.some(s=>{let a=this.evaluateExpression(s,t);return yt.BuiltInFunctions.compare(r,a,"=")});return e.negated?!i:i}evaluateArithmetic(e,t){let r=this.evaluateExpression(e.left,t),i=this.evaluateExpression(e.right,t);if(e.operator==="-"&&this.isDateValue(r)&&this.isDateValue(i))return yt.BuiltInFunctions.dateDiff(r,i);if(e.operator==="-"&&this.isTimeValue(r)&&this.isTimeValue(i))return yt.BuiltInFunctions.timeDiff(r,i);if(e.operator==="-"&&this.isDateTimeValue(r)&&this.isDateTimeValue(i))return yt.BuiltInFunctions.dateTimeDiff(r,i);if(e.operator==="+"&&this.isDateValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.dateAdd(r,i);if(e.operator==="-"&&this.isDateValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.dateSubtract(r,i);if(e.operator==="+"&&this.isDateValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.dateAddYearMonth(r,i);if(e.operator==="-"&&this.isDateValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.dateSubtractYearMonth(r,i);if(e.operator==="+"&&this.isDateTimeValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.dateTimeAdd(r,i);if(e.operator==="-"&&this.isDateTimeValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.dateTimeSubtract(r,i);if(e.operator==="+"&&this.isDateTimeValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.dateTimeAddYearMonth(r,i);if(e.operator==="-"&&this.isDateTimeValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.dateTimeSubtractYearMonth(r,i);if(e.operator==="+"&&this.isDayTimeDurationValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.durationAdd(r,i);if(e.operator==="-"&&this.isDayTimeDurationValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.durationSubtract(r,i);if(e.operator==="*"&&this.isDayTimeDurationValue(r)&&!this.isDayTimeDurationValue(i)){let c=this.toNumericValue(i);return yt.BuiltInFunctions.durationMultiply(r,c)}if(e.operator==="*"&&!this.isDayTimeDurationValue(r)&&this.isDayTimeDurationValue(i)){let c=this.toNumericValue(r);return yt.BuiltInFunctions.durationMultiply(i,c)}if(e.operator==="/"&&this.isDayTimeDurationValue(r)&&!this.isDayTimeDurationValue(i)){let c=this.toNumericValue(i);if(c===0)throw new _r("Division by zero");return yt.BuiltInFunctions.durationDivide(r,c)}if(e.operator==="+"&&this.isYearMonthDurationValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.yearMonthDurationAdd(r,i);if(e.operator==="-"&&this.isYearMonthDurationValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.yearMonthDurationSubtract(r,i);let s=this.toNumericValue(r),a=this.toNumericValue(i);switch(e.operator){case"+":return s+a;case"-":return s-a;case"*":return s*a;case"/":if(a===0)throw new _r("Division by zero");return s/a;default:throw new _r(`Unknown arithmetic operator: ${String(e.operator)}`)}}shouldPreserveDatatype(e){return e==="http://www.w3.org/2001/XMLSchema#dateTime"||e==="http://www.w3.org/2001/XMLSchema#date"||e==="http://www.w3.org/2001/XMLSchema#time"||e==="http://www.w3.org/2001/XMLSchema#dayTimeDuration"||e==="http://www.w3.org/2001/XMLSchema#yearMonthDuration"||e==="http://www.w3.org/2001/XMLSchema#duration"}isDayTimeDurationValue(e){return e instanceof ds.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#dayTimeDuration":!1}isYearMonthDurationValue(e){return e instanceof ds.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#yearMonthDuration":!1}toNumericValue(e){if(typeof e=="number")return e;if(e instanceof ds.Literal){let t=e.datatype?.value||"";if(t.includes("#integer")||t.includes("#decimal")||t.includes("#double")||t.includes("#float")){let i=parseFloat(e.value);if(!isNaN(i))return i}let r=parseFloat(e.value);if(!isNaN(r))return r}if(typeof e=="string"){let t=parseFloat(e);if(!isNaN(t))return t}if(e&&typeof e=="object"&&"value"in e){let t=parseFloat(String(e.value));if(!isNaN(t))return t}throw new _r(`Cannot convert to number: ${e}`)}isDateTimeValue(e){if(e instanceof ds.Literal){let t=e.datatype?.value||"";return t.includes("#dateTime")||t.includes("#date")?!0:/^\d{4}-\d{2}-\d{2}(T|\s)/.test(e.value)}return typeof e=="string"?/^\d{4}-\d{2}-\d{2}(T|\s)/.test(e):!1}isDateValue(e){return e instanceof ds.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#date":!1}isTimeValue(e){return e instanceof ds.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#time":!1}evaluateFunction(e,t){let r=e,i=this.extractFunctionName(r.function),s=this.evaluateSpecialFunction(i,r.args,t);if(s!==void 0)return s.value;let a=B9.functionHandlers.get(i);if(!a)throw new _r(`Unknown function: ${i}`);let c={evaluateExpression:o((l,u)=>this.evaluateExpression(l,u),"evaluateExpression"),getTermFromExpression:o((l,u)=>this.getTermFromExpression(l,u),"getTermFromExpression"),getStringValue:o(l=>this.getStringValue(l),"getStringValue"),solution:t,isYearMonthDurationValue:o(l=>this.isYearMonthDurationValue(l),"isYearMonthDurationValue"),isDayTimeDurationValue:o(l=>this.isDayTimeDurationValue(l),"isDayTimeDurationValue")};return a(r.args,c)}extractFunctionName(e){if(typeof e=="string")return e.toLowerCase();if(e&&typeof e=="object"&&"value"in e){let t=e.value;return((t.includes("#")?t.split("#").pop():t.split("/").pop())||t).toLowerCase()}throw new _r(`Unknown function format: ${String(e)}`)}evaluateSpecialFunction(e,t,r){switch(e){case"coalesce":for(let i of t)try{let s=this.evaluateExpression(i,r);if(s!=null)return{value:s}}catch{continue}return{value:void 0};case"if":{if(!t||t.length!==3)throw new _r("IF requires exactly 3 arguments");let i=this.evaluateExpression(t[0],r);return{value:this.toBoolean(i)?this.evaluateExpression(t[1],r):this.evaluateExpression(t[2],r)}}case"byuuid":return{value:this.evaluateByUUID({type:"function",function:"byuuid",args:t},r)};default:return}}getTermFromExpression(e,t){let r=e;if(r.type==="variable"&&r.name)return t.get(r.name)}getStringValue(e){return e==null?"":typeof e=="object"&&"value"in e?String(e.value):String(e)}toBoolean(e){if(typeof e=="boolean")return e;if(typeof e=="number")return!isNaN(e)&&e!==0;if(typeof e=="string")return e.length>0;if(e instanceof ds.Literal){let t=e.datatype?.value||"";if(t.includes("#boolean"))return e.value==="true"||e.value==="1";if(t.includes("#integer")||t.includes("#decimal")||t.includes("#double")||t.includes("#float")){let r=parseFloat(e.value);return!isNaN(r)&&r!==0}return e.value.length>0}return!!e}evaluateByUUID(e,t){if(!e.args||e.args.length!==1)throw new _r("exo:byUUID requires exactly 1 argument (UUID string)");let r=this.evaluateExpression(e.args[0],t),i=this.getStringValue(r);if(!i)return;let s=i.toLowerCase();if(this.uuidCache.has(s))return this.uuidCache.get(s)??void 0;if(!this.tripleStore){this.uuidCache.set(s,null);return}if(this.tripleStore.findSubjectsByUUIDSync){let a=this.tripleStore.findSubjectsByUUIDSync(s);if(a.length===0){this.uuidCache.set(s,null);return}let c=a[0];return this.uuidCache.set(s,c),c}this.uuidCache.set(s,null)}cacheUUIDResult(e,t){let r=e.toLowerCase();this.uuidCache.set(r,t)}getCachedUUID(e){let t=e.toLowerCase();if(this.uuidCache.has(t))return this.uuidCache.get(t)}};Xc.FilterExecutor=$1});var V1=S(kp=>{"use strict";Object.defineProperty(kp,"__esModule",{value:!0});kp.OptionalExecutor=void 0;var B1=class{static{o(this,"OptionalExecutor")}async*execute(e,t){let r=[];for await(let s of e)r.push(s);let i=[];for await(let s of t)i.push(s);yield*this.hashJoin(r,i)}async executeAll(e,t){let r=[];for(let i of this.hashJoin(e,t))r.push(i);return r}*hashJoin(e,t){if(e.length===0)return;if(t.length===0){yield*e;return}let r=new Set;for(let l of e)for(let u of l.variables())r.add(u);let i=new Set;for(let l of t)for(let u of l.variables())i.add(u);let s=[];for(let l of r)i.has(l)&&s.push(l);if(s.sort(),s.length===0){yield*this.nestedLoopJoin(e,t);return}let a="\0",c=new Map;for(let l of t){let u=this.computeHashKey(l,s,a),f=c.get(u);f||(f=[],c.set(u,f)),f.push(l)}for(let l of e){let u=this.computeHashKey(l,s,a),f=c.get(u),d=!1;if(f)for(let h of f){let p=l.merge(h);p!==null&&(yield p,d=!0)}d||(yield l)}}computeHashKey(e,t,r){let i=[];for(let s of t){let a=e.get(s);i.push(a!==void 0?a.toString():"UNBOUND")}return i.join(r)}*nestedLoopJoin(e,t){for(let r of e){let i=!1;for(let s of t){let a=r.merge(s);a!==null&&(yield a,i=!0)}i||(yield r)}}};kp.OptionalExecutor=B1});var q1=S(Mp=>{"use strict";Object.defineProperty(Mp,"__esModule",{value:!0});Mp.UnionExecutor=void 0;var U1=class{static{o(this,"UnionExecutor")}async*execute(e,t){let r=new Set;for await(let i of e){let s=this.getSolutionKey(i);r.has(s)||(r.add(s),yield i)}for await(let i of t){let s=this.getSolutionKey(i);r.has(s)||(r.add(s),yield i)}}async executeAll(e,t){let r=[];async function*i(){for(let a of e)yield a}o(i,"generateLeft");async function*s(){for(let a of t)yield a}o(s,"generateRight");for await(let a of this.execute(i(),s()))r.push(a);return r}getSolutionKey(e){let t=e.toJSON();return Object.keys(t).sort().map(i=>`${i}=${t[i]}`).join("|")}};Mp.UnionExecutor=U1});var Ix=S(jp=>{"use strict";Object.defineProperty(jp,"__esModule",{value:!0});jp.MinusExecutor=void 0;var W1=class{static{o(this,"MinusExecutor")}async*execute(e,t){let r=[];for await(let s of e)r.push(s);let i=[];for await(let s of t)i.push(s);for(let s of r){let a=!1;for(let c of i)if(this.areCompatible(s,c)){a=!0;break}a||(yield s)}}async executeAll(e,t){let r=[];async function*i(){for(let a of e)yield a}o(i,"generateLeft");async function*s(){for(let a of t)yield a}o(s,"generateRight");for await(let a of this.execute(i(),s()))r.push(a);return r}areCompatible(e,t){let r=e.variables(),i=new Set(t.variables()),s=r.filter(a=>i.has(a));if(s.length===0)return!1;for(let a of s){let c=e.get(a),l=t.get(a);if(c===void 0||l===void 0||c.toString()!==l.toString())return!1}return!0}};jp.MinusExecutor=W1});var Px=S(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});Jc.ValuesExecutor=Jc.ValuesExecutorError=void 0;var V9=us(),Rx=Ae(),U9=Ne(),$p=class extends Error{static{o(this,"ValuesExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="ValuesExecutorError"}};Jc.ValuesExecutorError=$p;var G1=class{static{o(this,"ValuesExecutor")}async*execute(e){if(e.bindings.length!==0)for(let t of e.bindings)yield this.createSolutionMapping(t)}async executeAll(e){let t=[];for await(let r of this.execute(e))t.push(r);return t}createSolutionMapping(e){let t=new V9.SolutionMapping;for(let[r,i]of Object.entries(e)){let s=this.toRDFTerm(i);t.set(r,s)}return t}toRDFTerm(e){if(e.type==="iri")return new Rx.IRI(e.value);if(e.type==="literal")return new U9.Literal(e.value,e.datatype?new Rx.IRI(e.datatype):void 0,e.language,e.direction);throw new $p(`Unknown term type: ${e.type}`)}};Jc.ValuesExecutor=G1});var z1=S(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});el.CustomAggregateRegistry=el.CustomAggregateError=void 0;var Zc=class extends Error{static{o(this,"CustomAggregateError")}constructor(e,t){super(e),this.iri=t,this.name="CustomAggregateError"}};el.CustomAggregateError=Zc;var Bp=class n{static{o(this,"CustomAggregateRegistry")}constructor(){this.aggregates=new Map}static getInstance(){return n.instance||(n.instance=new n),n.instance}static resetInstance(){n.instance&&n.instance.clear(),n.instance=null}register(e,t){if(!e||typeof e!="string")throw new Zc("Aggregate IRI must be a non-empty string");if(!t||typeof t.init!="function"||typeof t.step!="function"||typeof t.finalize!="function")throw new Zc("Aggregate must implement init(), step(), and finalize() methods",e);if(this.aggregates.has(e))throw new Zc(`Aggregate with IRI "${e}" is already registered`,e);this.aggregates.set(e,t)}unregister(e){return this.aggregates.delete(e)}get(e){return this.aggregates.get(e)}has(e){return this.aggregates.has(e)}getRegisteredIris(){return Array.from(this.aggregates.keys())}clear(){this.aggregates.clear()}get size(){return this.aggregates.size}};el.CustomAggregateRegistry=Bp;Bp.instance=null});var H1=S(Ze=>{"use strict";Object.defineProperty(Ze,"__esModule",{value:!0});Ze.BUILT_IN_AGGREGATES=Ze.modeAggregate=Ze.stddevAggregate=Ze.varianceAggregate=Ze.medianAggregate=Ze.EXO_AGGREGATE_NS=void 0;Ze.getNumericValue=Vp;Ze.createDecimalLiteral=mi;Ze.createDoubleLiteral=G9;Ze.createPercentileAggregate=No;var Lo=Ne(),tl=Ae(),q9=new tl.IRI("http://www.w3.org/2001/XMLSchema#decimal"),W9=new tl.IRI("http://www.w3.org/2001/XMLSchema#double");Ze.EXO_AGGREGATE_NS="https://exocortex.my/ontology/agg#";function Vp(n){return n==null?NaN:typeof n=="number"?n:typeof n=="string"?parseFloat(n):n instanceof Lo.Literal?parseFloat(n.value):n instanceof tl.IRI?NaN:typeof n=="boolean"?n?1:0:NaN}o(Vp,"getNumericValue");function mi(n){return new Lo.Literal(String(n),q9)}o(mi,"createDecimalLiteral");function G9(n){return new Lo.Literal(String(n),W9)}o(G9,"createDoubleLiteral");Ze.medianAggregate={init(){return{values:[]}},step(n,e){let t=n,r=Vp(e);isNaN(r)||t.values.push(r)},finalize(n){let e=n,{values:t}=e;if(t.length===0)return mi(0);let r=[...t].sort((a,c)=>a-c),i=Math.floor(r.length/2),s=r.length%2!==0?r[i]:(r[i-1]+r[i])/2;return mi(s)}};Ze.varianceAggregate={init(){return{values:[]}},step(n,e){let t=n,r=Vp(e);isNaN(r)||t.values.push(r)},finalize(n){let e=n,{values:t}=e;if(t.length===0)return mi(0);let r=t.reduce((s,a)=>s+a,0)/t.length,i=t.reduce((s,a)=>s+Math.pow(a-r,2),0)/t.length;return mi(i)}};Ze.stddevAggregate={init(){return{values:[]}},step(n,e){Ze.varianceAggregate.step(n,e)},finalize(n){let e=n,{values:t}=e;if(t.length===0)return mi(0);let r=t.reduce((s,a)=>s+a,0)/t.length,i=t.reduce((s,a)=>s+Math.pow(a-r,2),0)/t.length;return mi(Math.sqrt(i))}};Ze.modeAggregate={init(){return{counts:new Map,values:new Map}},step(n,e){if(e==null)return;let t=n,r=String(e instanceof Lo.Literal||e instanceof tl.IRI?e.value:e),i=t.counts.get(r)||0;t.counts.set(r,i+1),t.values.set(r,e)},finalize(n){let e=n;if(e.counts.size===0)return new Lo.Literal(" ",new tl.IRI("http://www.w3.org/2001/XMLSchema#string"));let t="",r=0;for(let[a,c]of e.counts)c>r&&(r=c,t=a);let i=e.values.get(t);if(i instanceof Lo.Literal)return i;let s=parseFloat(t);return isNaN(s)?new Lo.Literal(t,new tl.IRI("http://www.w3.org/2001/XMLSchema#string")):mi(s)}};function No(n){let e=Math.max(0,Math.min(100,n))/100;return{init(){return{values:[],percentile:e}},step(t,r){let i=t,s=Vp(r);isNaN(s)||i.values.push(s)},finalize(t){let r=t,{values:i}=r;if(i.length===0)return mi(0);let s=[...i].sort((d,h)=>d-h),a=r.percentile*(s.length-1),c=Math.floor(a),l=Math.ceil(a);if(c===l)return mi(s[c]);let u=a-c,f=s[c]*(1-u)+s[l]*u;return mi(f)}}}o(No,"createPercentileAggregate");Ze.BUILT_IN_AGGREGATES={[`${Ze.EXO_AGGREGATE_NS}median`]:Ze.medianAggregate,[`${Ze.EXO_AGGREGATE_NS}variance`]:Ze.varianceAggregate,[`${Ze.EXO_AGGREGATE_NS}stddev`]:Ze.stddevAggregate,[`${Ze.EXO_AGGREGATE_NS}mode`]:Ze.modeAggregate,[`${Ze.EXO_AGGREGATE_NS}percentile25`]:No(25),[`${Ze.EXO_AGGREGATE_NS}percentile50`]:No(50),[`${Ze.EXO_AGGREGATE_NS}percentile75`]:No(75),[`${Ze.EXO_AGGREGATE_NS}percentile90`]:No(90),[`${Ze.EXO_AGGREGATE_NS}percentile95`]:No(95),[`${Ze.EXO_AGGREGATE_NS}percentile99`]:No(99)}});var Dx=S(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.AggregateExecutor=rl.AggregateExecutorError=void 0;var fr=Ne(),K1=Ae(),z9=Lp(),H9=z1(),Q9=H1(),Ox=new K1.IRI("http://www.w3.org/2001/XMLSchema#integer"),ko=new K1.IRI("http://www.w3.org/2001/XMLSchema#decimal"),hs=new K1.IRI("http://www.w3.org/2001/XMLSchema#string");function Fx(n){return typeof n=="object"&&n.type==="custom"}o(Fx,"isCustomAggregation");var nf=class extends Error{static{o(this,"AggregateExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="AggregateExecutorError"}};rl.AggregateExecutorError=nf;var Q1=class{static{o(this,"AggregateExecutor")}constructor(){this.filterExecutor=new z9.FilterExecutor}execute(e,t){let r=this.groupSolutions(t,e.variables),i=[];for(let[s,a]of r.entries()){let c=new Map;for(let f of e.variables)if(a.length>0){let d=a[0].get(f);d&&c.set(f,d)}for(let f of e.aggregates){let d=this.computeAggregate(f.expression,a);c.set(f.variable,d)}let{SolutionMapping:l}=us(),u=new l;for(let[f,d]of c.entries())u.set(f,d);i.push(u)}if(i.length===0&&e.aggregates.length>0){let s=this.createEmptyAggregateResult(e);s&&i.push(s)}return i}groupSolutions(e,t){let r=new Map;if(t.length===0)return r.set("",e),r;for(let i of e){let s=this.computeGroupKey(i,t),a=r.get(s);a?a.push(i):r.set(s,[i])}return r}computeGroupKey(e,t){return t.map(r=>{let i=e.get(r);return i?this.termToString(i):""}).join("|")}termToString(e){if(e&&typeof e=="object"){if("value"in e)return String(e.value);if("id"in e)return String(e.id)}return String(e)}computeAggregate(e,t){if(Fx(e.aggregation))return this.computeCustomAggregate(e,t);let r=this.extractValues(e,t),i=e.aggregation;switch(i){case"count":{let s=this.computeCount(r,e.distinct);return new fr.Literal(String(s),Ox)}case"sum":{let s=this.computeSum(r);return new fr.Literal(String(s),ko)}case"avg":{let s=this.computeAvg(r);return new fr.Literal(String(s),ko)}case"min":{let s=this.computeMin(r);return s===void 0?new fr.Literal("",hs):typeof s=="number"?new fr.Literal(String(s),ko):new fr.Literal(String(s),hs)}case"max":{let s=this.computeMax(r);return s===void 0?new fr.Literal("",hs):typeof s=="number"?new fr.Literal(String(s),ko):new fr.Literal(String(s),hs)}case"group_concat":{let s=this.computeGroupConcat(r,e.separator||" ",e.distinct);return new fr.Literal(s||" ",hs)}case"sample":{let s=this.computeSample(r,e.distinct);return s===void 0?new fr.Literal(" ",hs):typeof s=="number"?new fr.Literal(String(s),ko):new fr.Literal(String(s),hs)}default:{let s=i;throw new nf(`Unknown aggregation function: ${s}`)}}}computeCustomAggregate(e,t){let i=e.aggregation.iri,a=H9.CustomAggregateRegistry.getInstance().get(i);if(a||(a=Q9.BUILT_IN_AGGREGATES[i]),!a)throw new nf(`Unknown custom aggregate function: ${i}. Register it with CustomAggregateRegistry.getInstance().register() or use a built-in aggregate.`);let c=a.init();for(let l of t){let u=null;if(e.expression){let f=this.evaluateExpression(e.expression,l);f!==void 0&&(u=f)}else u=1;a.step(c,u)}return a.finalize(c)}extractValues(e,t){if(!e.expression)return t.map(()=>1);let r=[];for(let i of t){let s=this.evaluateExpression(e.expression,i);s!=null&&r.push(s)}return r}evaluateExpression(e,t){if(e.type==="variable"){let r=t.get(e.name);return r==null?void 0:typeof r=="number"||typeof r=="string"||typeof r=="boolean"?r:typeof r=="object"&&"value"in r?r.value:r}if(e.type==="literal")return e.value;try{return this.filterExecutor.evaluateExpression(e,t)}catch{return}}computeCount(e,t){return t?new Set(e.map(r=>String(r))).size:e.length}computeSum(e){return e.map(r=>parseFloat(String(r))).filter(r=>!isNaN(r)).reduce((r,i)=>r+i,0)}computeAvg(e){let t=e.map(r=>parseFloat(String(r))).filter(r=>!isNaN(r));return t.length===0?0:t.reduce((r,i)=>r+i,0)/t.length}computeMin(e){if(e.length===0)return;let t=e.map(i=>parseFloat(String(i))).filter(i=>!isNaN(i));if(t.length>0)return Math.min(...t);let r=e.map(i=>String(i));return r.reduce((i,s)=>s<i?s:i,r[0])}computeMax(e){if(e.length===0)return;let t=e.map(i=>parseFloat(String(i))).filter(i=>!isNaN(i));if(t.length>0)return Math.max(...t);let r=e.map(i=>String(i));return r.reduce((i,s)=>s>i?s:i,r[0])}computeGroupConcat(e,t,r){let i=e.map(s=>String(s));return r&&(i=[...new Set(i)]),i.join(t)}computeSample(e,t){if(e.length===0)return;if(t){let s=[...new Set(e.map(l=>String(l)))];if(s.length===0)return;let a=s[0],c=parseFloat(a);return isNaN(c)?a:c}let r=e[0];if(typeof r=="number")return r;let i=parseFloat(String(r));return isNaN(i)?String(r):i}createEmptyAggregateResult(e){let{SolutionMapping:t}=us(),r=new t;for(let i of e.aggregates){let s=i.expression.aggregation;if(Fx(s)){r.set(i.variable,new fr.Literal("0",ko));continue}switch(s){case"count":r.set(i.variable,new fr.Literal("0",Ox));break;case"sum":case"avg":r.set(i.variable,new fr.Literal("0",ko));break;case"group_concat":r.set(i.variable,new fr.Literal(" ",hs));break;case"min":case"max":case"sample":r.set(i.variable,new fr.Literal("",hs));break;default:r.set(i.variable,new fr.Literal("",hs))}}return r}};rl.AggregateExecutor=Q1});var Z1=S(Up=>{"use strict";Object.defineProperty(Up,"__esModule",{value:!0});Up.ConstructExecutor=void 0;var K9=Yn(),Mo=Ae(),Y1=Ne(),X1=qt(),Y9=Nu(),J1=class{static{o(this,"ConstructExecutor")}async execute(e,t){let r=[],i=new Set;for(let s of t)for(let a of e)try{let c=this.instantiateTriple(a,s),l=`${c.subject.toString()}|${c.predicate.toString()}|${c.object.toString()}`;i.has(l)||(i.add(l),r.push(c))}catch{continue}return r}instantiateTriple(e,t){if(this.isPropertyPath(e.predicate))throw new Error("Property paths are not supported in CONSTRUCT templates");let r=this.instantiateElement(e.subject,t),i=this.instantiateElement(e.predicate,t),s=this.instantiateElement(e.object,t);return new K9.Triple(r,i,s)}isPropertyPath(e){return e.type==="path"}instantiateElement(e,t){if(e.type==="variable"){let r=t.get(e.value);if(!r)throw new Error(`Unbound variable: ${e.value}`);return r}if(e.type==="iri")return new Mo.IRI(e.value);if(e.type==="literal")return new Y1.Literal(e.value,e.datatype?new Mo.IRI(e.datatype):void 0,e.language);if(e.type==="blank")return new X1.BlankNode(e.value);if(e.type==="quoted")return this.instantiateQuotedTriple(e,t);throw new Error(`Unknown element type: ${e.type}`)}instantiateQuotedTriple(e,t){let r=this.instantiateQuotedSubject(e.subject,t),i=this.instantiateQuotedPredicate(e.predicate,t),s=this.instantiateQuotedObject(e.object,t);return new Y9.QuotedTriple(r,i,s)}instantiateQuotedSubject(e,t){if(e.type==="variable"){let r=t.get(e.value);if(!r)throw new Error(`Unbound variable in quoted triple subject: ${e.value}`);if(r instanceof Y1.Literal)throw new Error("Literals cannot appear in quoted triple subject position");return r}if(e.type==="iri")return new Mo.IRI(e.value);if(e.type==="blank")return new X1.BlankNode(e.value);if(e.type==="quoted")return this.instantiateQuotedTriple(e,t);throw new Error(`Invalid element type for quoted triple subject: ${e.type}`)}instantiateQuotedPredicate(e,t){if(e.type==="variable"){let r=t.get(e.value);if(!r)throw new Error(`Unbound variable in quoted triple predicate: ${e.value}`);if(!(r instanceof Mo.IRI))throw new Error("Quoted triple predicate must be an IRI");return r}return new Mo.IRI(e.value)}instantiateQuotedObject(e,t){if(e.type==="variable"){let i=t.get(e.value);if(!i)throw new Error(`Unbound variable in quoted triple object: ${e.value}`);return i}if(e.type==="iri")return new Mo.IRI(e.value);if(e.type==="blank")return new X1.BlankNode(e.value);if(e.type==="literal")return new Y1.Literal(e.value,e.datatype?new Mo.IRI(e.datatype):void 0,e.language);if(e.type==="quoted")return this.instantiateQuotedTriple(e,t);let r=e;throw new Error(`Invalid element type for quoted triple object: ${r.type}`)}};Up.ConstructExecutor=J1});var Lx=S(nl=>{"use strict";Object.defineProperty(nl,"__esModule",{value:!0});nl.ServiceExecutor=nl.ServiceExecutorError=void 0;var X9=us(),Nx=Ae(),J9=Ne(),Z9=qt(),jo=class extends Error{static{o(this,"ServiceExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="ServiceExecutorError"}};nl.ServiceExecutorError=jo;var eS=class{static{o(this,"ServiceExecutor")}constructor(e={}){this.timeout=e.timeout??3e4,this.httpClient=e.httpClient??((t,r)=>fetch(t,r)),this.maxRetries=e.maxRetries??2,this.retryDelay=e.retryDelay??1e3}async*execute(e,t){try{let r=t(e.pattern),i=await this.executeRemoteQuery(e.endpoint,r);for(let s of i)yield s}catch(r){if(e.silent)return;throw r}}async executeRemoteQuery(e,t){let r;for(let i=0;i<=this.maxRetries;i++)try{let s=new AbortController,a=setTimeout(()=>s.abort(),this.timeout);try{let c=await this.httpClient(e,{method:"POST",headers:{"Content-Type":"application/sparql-query",Accept:"application/sparql-results+json"},body:t,signal:s.signal});if(!c.ok)throw new jo(`Remote SPARQL endpoint returned ${c.status}: ${c.statusText}`);let l=await c.json();return this.parseJsonResults(l)}finally{clearTimeout(a)}}catch(s){if(r=s instanceof Error?s:new Error(String(s)),this.isRetryableError(r)&&i<this.maxRetries){await this.delay(this.retryDelay);continue}throw new jo(`Failed to query remote SPARQL endpoint ${e}: ${r.message}`,r)}throw new jo(`Failed to query remote SPARQL endpoint ${e} after ${this.maxRetries+1} attempts`,r)}parseJsonResults(e){return!e.results||!Array.isArray(e.results.bindings)?[]:e.results.bindings.map(t=>this.parseBinding(t))}parseBinding(e){let t=new X9.SolutionMapping;for(let[r,i]of Object.entries(e)){let s=this.parseRDFTerm(i);t.set(r,s)}return t}parseRDFTerm(e){switch(e.type){case"uri":return new Nx.IRI(e.value);case"literal":{let t=e.datatype?new Nx.IRI(e.datatype):void 0;return new J9.Literal(e.value,t,e["xml:lang"])}case"bnode":return new Z9.BlankNode(e.value);default:throw new jo(`Unknown RDF term type: ${e.type}`)}}isRetryableError(e){let t=e.message.toLowerCase();return!!(e.name==="AbortError"||t.includes("network")||t.includes("econnreset")||t.includes("econnrefused")||t.includes("etimedout")||t.includes("returned 5"))}delay(e){return new Promise(t=>setTimeout(t,e))}};nl.ServiceExecutor=eS});var Mx=S(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.GraphExecutor=il.GraphExecutorError=void 0;var kx=Ae(),qp=class extends Error{static{o(this,"GraphExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="GraphExecutorError"}};il.GraphExecutorError=qp;var tS=class{static{o(this,"GraphExecutor")}constructor(e){this.tripleStore=e}async*execute(e,t,r){let i=e.name;if(i.type==="iri")yield*this.executeWithGraph(e.pattern,i,t);else if(i.type==="variable")yield*this.executeWithGraphVariable(e,i,t,r);else throw new qp(`Invalid graph name type: ${i.type}`)}async*executeWithGraph(e,t,r){let i=new kx.IRI(t.value);this.tripleStore.hasGraph&&!await this.tripleStore.hasGraph(i)||(yield*r(e,i))}async*executeWithGraphVariable(e,t,r,i){if(i){let a=i.get(t.value);if(a&&a instanceof kx.IRI){yield*this.executeWithGraph(e.pattern,{type:"iri",value:a.value},r);return}}if(!this.tripleStore.getNamedGraphs)return;let s=await this.tripleStore.getNamedGraphs();for(let a of s)for await(let c of r(e.pattern,a)){let l=c.clone();l.set(t.value,a),yield l}}};il.GraphExecutor=tS});var jx=S(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.SPARQLGenerator=al.SPARQLGeneratorError=void 0;var sl=class extends Error{static{o(this,"SPARQLGeneratorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="SPARQLGeneratorError"}};al.SPARQLGeneratorError=sl;var rS=class{static{o(this,"SPARQLGenerator")}collectVariables(e){let t=new Set;return this.collectVariablesFromOperation(e,t),t}generateSelect(e){let t=this.collectVariables(e),r=t.size>0?Array.from(t).map(s=>`?${s}`).join(" "):"*",i=this.generateWhereClause(e);return`SELECT ${r} WHERE {
48
+ `,s);l!==-1?(i+=e.substring(s,l),s=l):(i+=e.substring(s),s=e.length);continue}let c=this.tryReplacePrefixedName(e,s,r);if(c){i+=c.iri,s=c.endIndex;continue}i+=a,s++}return i}tryReplacePrefixedName(e,t,r){if(t>0&&/[a-zA-Z0-9_]/.test(e[t-1]))return null;for(let{prefix:i,baseIRI:s}of r){if(e.substring(t,t+i.length+1)!==i+":")continue;let a=t+i.length+1,c=a;for(;c<e.length&&/[a-zA-Z0-9_.%-]/.test(e[c]);)c++;if(c===a)continue;let l=e.substring(a,c);return{iri:`<${s}${l}.md>`,endIndex:c}}return null}findDeclaredPrefixes(e){let t=new Set,r=new RegExp(d9.source,"gi"),i;for(;(i=r.exec(e))!==null;)t.add(i[1].toLowerCase());return t}skipLiteral(e,t){let r=e[t];if(t+2<e.length&&e.substring(t,t+3)===r+r+r){let s=e.indexOf(r+r+r,t+3);return s!==-1?s+3:e.length}let i=t+1;for(;i<e.length&&e[i]!==r;)e[i]==="\\"&&i++,i++;return i<e.length?i+1:e.length}};sp.VaultPrefixTransformer=o1});var Bc=S(Cn=>{"use strict";var p9=Cn&&Cn.__createBinding||(Object.create?(function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(n,r,i)}):(function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]})),m9=Cn&&Cn.__setModuleDefault||(Object.create?(function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}):function(n,e){n.default=e}),g9=Cn&&Cn.__importStar||(function(){var n=o(function(e){return n=Object.getOwnPropertyNames||function(t){var r=[];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r[r.length]=i);return r},n(e)},"ownKeys");return function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=n(e),i=0;i<r.length;i++)r[i]!=="default"&&p9(t,e,r[i]);return m9(t,e),t}})();Object.defineProperty(Cn,"__esModule",{value:!0});Cn.SPARQLParser=Cn.ExoQLParser=Cn.SPARQLParseError=void 0;var JA=g9(QA()),l1=t1(),u1=r1(),ZA=KA(),f1=i1(),y9=YA(),d1=XA(),_9=c1(),cr=class extends Error{static{o(this,"SPARQLParseError")}constructor(e,t,r,i){super(e,i?{cause:i}:void 0),this.name="SPARQLParseError",this.line=t,this.column=r}};Cn.SPARQLParseError=cr;var ap=class{static{o(this,"ExoQLParser")}constructor(e){this.lastDirectionMappings=new Map,this.parser=new JA.Parser({sparqlStar:!0}),this.generator=new JA.Generator({sparqlStar:!0}),this.caseWhenTransformer=new l1.CaseWhenTransformer,this.lateralTransformer=new u1.LateralTransformer,this.prefixStarTransformer=new ZA.PrefixStarTransformer(e?.vocabularyResolver),this.describeOptionsTransformer=new f1.DescribeOptionsTransformer,this.directionalLangTagTransformer=new y9.DirectionalLangTagTransformer,this.tripleTermTransformer=new d1.TripleTermTransformer,this.vaultPrefixTransformer=new _9.VaultPrefixTransformer}setVaultPrefixes(e){this.vaultPrefixTransformer.setVaultPrefixes(e)}parse(e){try{let t=this.vaultPrefixTransformer.transform(e),r=this.describeOptionsTransformer.transform(t);this.lastDescribeOptions=r.options;let i=r.query;i=this.directionalLangTagTransformer.transform(i),this.lastDirectionMappings=this.directionalLangTagTransformer.getAllMappings(),i=this.lateralTransformer.transform(i),i=this.caseWhenTransformer.transform(i),i=this.tripleTermTransformer.transform(i);let s=this.parser.parse(i);return this.validateQuery(s),this.lastDescribeOptions&&this.isDescribeQuery(s)&&(s.describeOptions=this.lastDescribeOptions),s}catch(t){if(t instanceof f1.DescribeOptionsTransformerError)throw new cr(t.message);if(t instanceof u1.LateralTransformerError)throw new cr(t.message);if(t instanceof l1.CaseWhenTransformerError)throw new cr(t.message);if(t instanceof d1.TripleTermTransformerError)throw new cr(t.message);if(t instanceof Error){let r=t.message.match(/line (\d+), column (\d+)/),i=r?parseInt(r[1],10):void 0,s=r?parseInt(r[2],10):void 0;throw new cr(`SPARQL syntax error: ${t.message}`,i,s,t)}throw t}}parseWithOptions(e){return{query:this.parse(e),describeOptions:this.lastDescribeOptions}}getLastDescribeOptions(){return this.lastDescribeOptions}async parseAsync(e){try{let t=this.vaultPrefixTransformer.transform(e),r=this.describeOptionsTransformer.transform(t);this.lastDescribeOptions=r.options;let i=r.query;i=this.directionalLangTagTransformer.transform(i),this.lastDirectionMappings=this.directionalLangTagTransformer.getAllMappings(),i=await this.prefixStarTransformer.transform(i),i=this.lateralTransformer.transform(i),i=this.caseWhenTransformer.transform(i),i=this.tripleTermTransformer.transform(i);let s=this.parser.parse(i);return this.validateQuery(s),this.lastDescribeOptions&&this.isDescribeQuery(s)&&(s.describeOptions=this.lastDescribeOptions),s}catch(t){if(t instanceof f1.DescribeOptionsTransformerError)throw new cr(t.message);if(t instanceof ZA.PrefixStarTransformerError)throw new cr(t.message);if(t instanceof u1.LateralTransformerError)throw new cr(t.message);if(t instanceof l1.CaseWhenTransformerError)throw new cr(t.message);if(t instanceof d1.TripleTermTransformerError)throw new cr(t.message);if(t instanceof Error){let r=t.message.match(/line (\d+), column (\d+)/),i=r?parseInt(r[1],10):void 0,s=r?parseInt(r[2],10):void 0;throw new cr(`SPARQL syntax error: ${t.message}`,i,s,t)}throw t}}async parseAsyncWithOptions(e){return{query:await this.parseAsync(e),describeOptions:this.lastDescribeOptions}}hasPrefixStar(e){return/PREFIX\s*\*/i.test(e)}hasLateral(e){return this.lateralTransformer.hasLateral(e)}hasDescribeOptions(e){return this.describeOptionsTransformer.hasDescribeOptions(e)}hasDirectionalLangTags(e){return this.directionalLangTagTransformer.hasDirectionalTags(e)}hasTripleTermSyntax(e){return this.tripleTermTransformer.hasTripleTermSyntax(e)}getLastDirectionMappings(){return new Map(this.lastDirectionMappings)}getDirectionForLanguage(e){return this.lastDirectionMappings.get(e.toLowerCase())}toString(e){try{return this.generator.stringify(e)}catch(t){throw t instanceof Error?new cr(`Failed to serialize SPARQL query: ${t.message}`,void 0,void 0,t):t}}getQueryType(e){if("queryType"in e&&e.type==="query")return e.queryType;throw new cr("Query does not have a valid queryType property")}isSelectQuery(e){return"queryType"in e&&e.type==="query"&&e.queryType==="SELECT"}isConstructQuery(e){return"queryType"in e&&e.type==="query"&&e.queryType==="CONSTRUCT"}isAskQuery(e){return"queryType"in e&&e.type==="query"&&e.queryType==="ASK"}isDescribeQuery(e){return"queryType"in e&&e.type==="query"&&e.queryType==="DESCRIBE"}isUpdateQuery(e){return e.type==="update"}isInsertDataOperation(e){return"updateType"in e&&e.updateType==="insert"}isDeleteDataOperation(e){return"updateType"in e&&e.updateType==="delete"}validateQuery(e){if(!e||typeof e!="object")throw new cr("Invalid query: not an object");if(e.type!=="query"&&e.type!=="update")throw new cr(`Invalid type: expected "query" or "update", got "${e.type}"`);if(e.type==="query"){let t=["SELECT","CONSTRUCT","ASK","DESCRIBE"];if(!t.includes(e.queryType))throw new cr(`Invalid query type: expected one of ${t.join(", ")}, got "${e.queryType}"`)}}};Cn.ExoQLParser=ap;Cn.SPARQLParser=ap});var Do=S(op=>{"use strict";Object.defineProperty(op,"__esModule",{value:!0});op.AlgebraTranslatorError=void 0;var h1=class extends Error{static{o(this,"AlgebraTranslatorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="AlgebraTranslatorError"}};op.AlgebraTranslatorError=h1});var cp=S(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});ls.isVariableExpression=S9;ls.isVariableTerm=v9;ls.isNamedNode=b9;ls.isLiteral=w9;ls.isPropertyPath=E9;ls.isAggregateExpression=T9;ls.isOperationExpression=A9;ls.isFunctionCallExpression=x9;function S9(n){return typeof n=="object"&&n!==null&&"expression"in n&&"variable"in n}o(S9,"isVariableExpression");function v9(n){return typeof n=="object"&&n!==null&&"termType"in n&&n.termType==="Variable"}o(v9,"isVariableTerm");function b9(n){return typeof n=="object"&&n!==null&&"termType"in n&&n.termType==="NamedNode"}o(b9,"isNamedNode");function w9(n){return typeof n=="object"&&n!==null&&"termType"in n&&n.termType==="Literal"}o(w9,"isLiteral");function E9(n){return typeof n=="object"&&n!==null&&"type"in n&&n.type==="path"}o(E9,"isPropertyPath");function T9(n){return typeof n=="object"&&n!==null&&"type"in n&&n.type==="aggregate"}o(T9,"isAggregateExpression");function A9(n){return typeof n=="object"&&n!==null&&"type"in n&&n.type==="operation"}o(A9,"isOperationExpression");function x9(n){return typeof n=="object"&&n!==null&&"type"in n&&(n.type==="functionCall"||n.type==="functioncall")}o(x9,"isFunctionCallExpression")});var ex=S(lp=>{"use strict";Object.defineProperty(lp,"__esModule",{value:!0});lp.TripleTranslator=void 0;var dn=Do(),p1=class{static{o(this,"TripleTranslator")}constructor(){this.directionMappings=new Map}setDirectionMappings(e){this.directionMappings=e}translateBGP(e){if(!("triples"in e)||!Array.isArray(e.triples))throw new dn.AlgebraTranslatorError("BGP pattern must have triples array");return{type:"bgp",triples:e.triples.map(t=>this.translateTriple(t))}}translateTriple(e){if(!e.subject||!e.predicate||!e.object)throw new dn.AlgebraTranslatorError("Triple must have subject, predicate, and object");return{subject:this.translateTripleElement(e.subject),predicate:this.translatePredicate(e.predicate),object:this.translateTripleElement(e.object)}}translateConstructTemplate(e){return!e||!Array.isArray(e)?[]:e.map(t=>this.translateTriple(t))}translatePredicate(e){return"type"in e&&e.type==="path"?this.translatePropertyPath(e):this.translateTripleElement(e)}translatePropertyPath(e){if(!("pathType"in e)||!e.pathType)throw new dn.AlgebraTranslatorError("Property path must have pathType");if(!("items"in e)||!Array.isArray(e.items))throw new dn.AlgebraTranslatorError("Property path must have items array");let t=e.items.map(r=>this.translatePathItem(r));switch(e.pathType){case"/":return{type:"path",pathType:"/",items:t};case"|":return{type:"path",pathType:"|",items:t};case"^":if(t.length!==1)throw new dn.AlgebraTranslatorError("Inverse path must have exactly one item");return{type:"path",pathType:"^",items:[t[0]]};case"+":if(t.length!==1)throw new dn.AlgebraTranslatorError("OneOrMore path must have exactly one item");return{type:"path",pathType:"+",items:[t[0]]};case"*":if(t.length!==1)throw new dn.AlgebraTranslatorError("ZeroOrMore path must have exactly one item");return{type:"path",pathType:"*",items:[t[0]]};case"?":if(t.length!==1)throw new dn.AlgebraTranslatorError("ZeroOrOne path must have exactly one item");return{type:"path",pathType:"?",items:[t[0]]};default:throw new dn.AlgebraTranslatorError(`Unsupported property path type: ${e.pathType}`)}}translatePathItem(e){if("type"in e&&e.type==="path")return this.translatePropertyPath(e);if("termType"in e&&e.termType==="NamedNode")return{type:"iri",value:e.value};let t="type"in e?e.type:"termType"in e?e.termType:"unknown";throw new dn.AlgebraTranslatorError(`Unsupported path item type: ${String(t)}`)}translateTripleElement(e){if(!e||!("termType"in e))throw new dn.AlgebraTranslatorError("Triple element must have termType");switch(e.termType){case"Variable":return{type:"variable",value:e.value};case"NamedNode":return{type:"iri",value:e.value};case"Literal":{let t={type:"literal",value:e.value,datatype:e.datatype?.value,language:e.language};if(e.language){let r=this.directionMappings.get(e.language.toLowerCase());r&&(t.direction=r)}return t}case"BlankNode":return{type:"blank",value:e.value};case"Quad":return this.translateQuotedTriple(e);default:throw new dn.AlgebraTranslatorError(`Unsupported term type: ${e.termType}`)}}translateQuotedTriple(e){if(!e.subject||!e.predicate||!e.object)throw new dn.AlgebraTranslatorError("Quoted triple must have subject, predicate, and object");return{type:"quoted",subject:this.translateTripleElement(e.subject),predicate:this.translateQuotedTriplePredicate(e.predicate),object:this.translateTripleElement(e.object)}}translateQuotedTriplePredicate(e){if(!e||!("termType"in e))throw new dn.AlgebraTranslatorError("Quoted triple predicate must have termType");switch(e.termType){case"Variable":return{type:"variable",value:e.value};case"NamedNode":return{type:"iri",value:e.value};default:throw new dn.AlgebraTranslatorError(`Quoted triple predicate must be IRI or Variable, got: ${e.termType}`)}}};lp.TripleTranslator=p1});var tx=S(up=>{"use strict";Object.defineProperty(up,"__esModule",{value:!0});up.ExpressionTranslator=void 0;var Vc=Do(),m1=class{static{o(this,"ExpressionTranslator")}constructor(e){this.translateWhereFn=e.translateWhere,this.translateBGPFn=e.translateBGP,this.translatePatternFn=e.translatePattern}translateExpression(e){if(!e)throw new Vc.AlgebraTranslatorError("Expression cannot be null or undefined");if("type"in e&&e.type==="operation")return this.translateOperationExpression(e);let t="type"in e?e.type:void 0;if(t==="functioncall"||t==="functionCall"){let r=e;return{type:"functionCall",function:r.function,args:r.args.map(i=>this.translateExpression(i))}}if("termType"in e)return this.translateTermExpression(e);throw new Vc.AlgebraTranslatorError(`Unsupported expression structure: ${JSON.stringify(e)}`)}translateFilter(e){if(!e.expression)throw new Vc.AlgebraTranslatorError("Filter pattern must have expression");let t={type:"bgp",triples:[]};return{type:"filter",expression:this.translateExpression(e.expression),input:t}}translateTermExpression(e){if(e.termType==="Variable")return{type:"variable",name:e.value};if(e.termType==="Literal"){let t=e.value;return e.datatype&&(e.datatype.value.includes("#integer")||e.datatype.value.includes("#decimal")?t=parseFloat(e.value):e.datatype.value.includes("#boolean")&&(t=e.value==="true")),{type:"literal",value:t,datatype:e.datatype?.value}}return{type:"literal",value:String(e.value||e)}}translateOperationExpression(e){let t=["=","!=","<",">","<=",">="],r=["&&","||","!"],i=["+","-","*","/"],s=e.args.filter(a=>!("patterns"in a)||"termType"in a);return t.includes(e.operator)?{type:"comparison",operator:e.operator,left:this.translateExpression(s[0]),right:this.translateExpression(s[1])}:r.includes(e.operator)?{type:"logical",operator:e.operator,operands:s.map(a=>this.translateExpression(a))}:i.includes(e.operator)?{type:"arithmetic",operator:e.operator,left:this.translateExpression(s[0]),right:this.translateExpression(s[1])}:e.operator==="exists"||e.operator==="notexists"?this.translateExistsExpression(e):e.operator==="in"||e.operator==="notin"?this.translateInExpression(e):{type:"function",function:e.operator,args:s.map(a=>this.translateExpression(a))}}translateExistsExpression(e){if(!e.args||e.args.length!==1)throw new Vc.AlgebraTranslatorError("EXISTS/NOT EXISTS must have exactly one pattern argument");let t=e.args[0],r;return t.type==="group"&&"patterns"in t&&t.patterns?r=this.translateWhereFn(t.patterns):t.type==="bgp"?r=this.translateBGPFn(t):r=this.translatePatternFn(t),{type:"exists",negated:e.operator==="notexists",pattern:r}}translateInExpression(e){if(!e.args||e.args.length!==2)throw new Vc.AlgebraTranslatorError("IN/NOT IN must have exactly 2 arguments (expression and list)");let t=e.args[0],r=e.args[1];if(!Array.isArray(r))throw new Vc.AlgebraTranslatorError("IN/NOT IN second argument must be an array of values");return{type:"in",expression:this.translateExpression(t),list:r.map(i=>this.translateExpression(i)),negated:e.operator==="notin"}}};up.ExpressionTranslator=m1});var ix=S(fp=>{"use strict";Object.defineProperty(fp,"__esModule",{value:!0});fp.PatternTranslator=void 0;var rx=r1(),Lr=Do(),nx=cp(),g1=class{static{o(this,"PatternTranslator")}constructor(e){this.directionMappings=new Map,this.translateExpressionFn=e.translateExpression,this.translateSelectFn=e.translateSelect,this.translateBGPFn=e.translateBGP}setDirectionMappings(e){this.directionMappings=e}translateWhere(e){if(e.length===0)throw new Lr.AlgebraTranslatorError("Empty WHERE clause");let t=e.filter(a=>a.type==="filter"),r=e.filter(a=>a.type==="bind"),i=e.filter(a=>a.type!=="filter"&&a.type!=="bind"),s;if(i.length===0)s={type:"bgp",triples:[]};else if(i.length===1)if(i[0].type==="optional"){let a=i[0].expression;s={type:"leftjoin",left:{type:"bgp",triples:[]},right:this.translateWhere(i[0].patterns),expression:a?this.translateExpressionFn(a):void 0}}else s=this.translatePattern(i[0]);else{if(i[0].type==="optional"){let a=i[0].expression;s={type:"leftjoin",left:{type:"bgp",triples:[]},right:this.translateWhere(i[0].patterns),expression:a?this.translateExpressionFn(a):void 0}}else s=this.translatePattern(i[0]);for(let a=1;a<i.length;a++){let c=i[a];if(this.isLateralPattern(c)){let l=this.extractLateralSubquery(c),u=this.removeLateralMarker(l),f=this.translateSelectFn(u);s={type:"lateraljoin",left:s,right:f}}else if(c.type==="optional"){let l=c.expression;s={type:"leftjoin",left:s,right:this.translateWhere(c.patterns),expression:l?this.translateExpressionFn(l):void 0}}else{let l=this.translatePattern(c);s={type:"join",left:s,right:l}}}}for(let a of r)s=this.translateBind(a,s);for(let a of t)s={type:"filter",expression:this.translateExpressionFn(a.expression),input:s};return s}translatePattern(e){if(!e||!e.type)throw new Lr.AlgebraTranslatorError("Invalid pattern: missing type");switch(e.type){case"bgp":return this.translateBGPFn(e);case"filter":return this.translateFilter(e);case"optional":return this.translateOptional(e);case"union":return this.translateUnion(e);case"minus":return this.translateMinus(e);case"values":return this.translateValues(e);case"group":return this.translateWhere(e.patterns);case"query":return this.translateSubquery(e);case"service":return this.translateService(e);case"graph":return this.translateGraph(e);default:throw new Lr.AlgebraTranslatorError(`Unsupported pattern type: ${e.type}`)}}translateFilter(e){if(!e.expression)throw new Lr.AlgebraTranslatorError("Filter pattern must have expression");let t={type:"bgp",triples:[]};return{type:"filter",expression:this.translateExpressionFn(e.expression),input:t}}translateOptional(e){if(!e.patterns||e.patterns.length===0)throw new Lr.AlgebraTranslatorError("OPTIONAL pattern must have patterns");let t=e.expression;return{type:"leftjoin",left:{type:"bgp",triples:[]},right:this.translateWhere(e.patterns),expression:t?this.translateExpressionFn(t):void 0}}translateUnion(e){if(!e.patterns||e.patterns.length<2)throw new Lr.AlgebraTranslatorError("UNION pattern must have at least 2 patterns");let t=o(i=>i.type==="graph"?this.translateGraph(i):i.type==="service"?this.translateService(i):"patterns"in i&&i.patterns&&Array.isArray(i.patterns)?this.translateWhere(i.patterns):this.translateWhere([i]),"translateBranch"),r={type:"union",left:t(e.patterns[0]),right:t(e.patterns[1])};for(let i=2;i<e.patterns.length;i++)r={type:"union",left:r,right:t(e.patterns[i])};return r}translateMinus(e){if(!e.patterns||e.patterns.length===0)throw new Lr.AlgebraTranslatorError("MINUS pattern must have patterns");return{type:"minus",left:{type:"bgp",triples:[]},right:this.translateWhere(e.patterns)}}translateValues(e){if(!e.values||!Array.isArray(e.values))throw new Lr.AlgebraTranslatorError("VALUES pattern must have values array");let t=new Set;for(let i of e.values)for(let s of Object.keys(i)){let a=s.startsWith("?")?s.slice(1):s;t.add(a)}let r=e.values.map(i=>this.translateValuesBinding(i));return{type:"values",variables:Array.from(t),bindings:r}}translateValuesBinding(e){let t={};for(let[r,i]of Object.entries(e)){let s=r.startsWith("?")?r.slice(1):r,a=i;if(a)if(a.termType==="NamedNode")t[s]={type:"iri",value:a.value};else if(a.termType==="Literal"){let c=a,l={type:"literal",value:c.value,datatype:c.datatype?.value,language:c.language||void 0};if(c.language){let u=this.directionMappings.get(c.language.toLowerCase());u&&(l.direction=u)}t[s]=l}else throw new Lr.AlgebraTranslatorError(`Unsupported VALUES term type: ${a.termType}`)}return t}translateBind(e,t){if(!e.variable||!e.expression)throw new Lr.AlgebraTranslatorError("BIND pattern must have variable and expression");return{type:"extend",variable:e.variable.value,expression:this.translateExpressionFn(e.expression),input:t}}translateSubquery(e){if(e.queryType!=="SELECT")throw new Lr.AlgebraTranslatorError(`Only SELECT subqueries are supported, got: ${String(e.queryType)}`);let t=this.removeLateralMarker(e);return{type:"subquery",query:this.translateSelectFn(t)}}translateService(e){if(!e.name||e.name.termType!=="NamedNode")throw new Lr.AlgebraTranslatorError("SERVICE pattern must have a NamedNode endpoint");if(!e.patterns||!Array.isArray(e.patterns))throw new Lr.AlgebraTranslatorError("SERVICE pattern must have patterns array");return{type:"service",endpoint:e.name.value,pattern:this.translateWhere(e.patterns),silent:e.silent||!1}}translateGraph(e){if(!e.name)throw new Lr.AlgebraTranslatorError("GRAPH pattern must have a name (IRI or variable)");if(!e.patterns||!Array.isArray(e.patterns))throw new Lr.AlgebraTranslatorError("GRAPH pattern must have patterns array");let t;if(e.name.termType==="NamedNode")t={type:"iri",value:e.name.value};else if(e.name.termType==="Variable")t={type:"variable",value:e.name.value};else throw new Lr.AlgebraTranslatorError(`GRAPH pattern name must be NamedNode or Variable, got: ${e.name.termType}`);return{type:"graph",name:t,pattern:this.translateWhere(e.patterns)}}isLateralPattern(e){if(e.type==="query"&&this.isLateralSubquery(e))return!0;if(e.type==="group"&&e.patterns?.length===1){let t=e.patterns[0];if(t.type==="query"&&this.isLateralSubquery(t))return!0}return!1}extractLateralSubquery(e){if(e.type==="query")return e;if(e.type==="group"&&e.patterns?.length===1){let t=e.patterns[0];if(t.type==="query")return t}throw new Lr.AlgebraTranslatorError("Invalid lateral pattern structure")}isLateralSubquery(e){return!("queryType"in e)||e.queryType!=="SELECT"||!("variables"in e)||!e.variables?!1:e.variables.some(i=>(0,nx.isVariableTerm)(i)&&i.value===rx.LateralTransformer.LATERAL_MARKER)}removeLateralMarker(e){if(!("variables"in e)||!e.variables)return e;let t=e,r=t.variables;return{...t,variables:r.filter(i=>!((0,nx.isVariableTerm)(i)&&i.value===rx.LateralTransformer.LATERAL_MARKER))}}};fp.PatternTranslator=g1});var ax=S(dp=>{"use strict";Object.defineProperty(dp,"__esModule",{value:!0});dp.AggregateTranslator=void 0;var sx=Do(),C9=cp(),y1=class{static{o(this,"AggregateTranslator")}constructor(e){this.aggregateCounter=0,this.translateExpressionFn=e.translateExpression}resetCounter(){this.aggregateCounter=0}extractAggregatesWithMapping(e,t){if(!e)return[];let r=[];for(let i of e)(0,C9.isVariableExpression)(i)&&("type"in i.expression&&i.expression.type==="aggregate"?(r.push({variable:i.variable.value,expression:this.translateAggregateExpression(i.expression)}),t.set(i.expression,i.variable.value)):this.collectNestedAggregates(i.expression,r,t));return r}extractGroupVariables(e){return e?e.filter(t=>t.expression&&"termType"in t.expression&&t.expression.termType==="Variable").map(t=>t.expression.value):[]}extractHavingExpressions(e,t,r){if(!e||e.length===0)return[];for(let i of e)this.collectNestedAggregates(i,t,r);return e.map(i=>this.transformExpressionWithAggregateVars(i,r))}transformExpressionWithAggregateVars(e,t){let r=t.get(e);if(r!==void 0)return{type:"variable",name:r};if("type"in e&&e.type==="operation"&&"args"in e){let i=e,s=i.args.filter(u=>!Array.isArray(u)&&!("patterns"in u)).map(u=>this.transformExpressionWithAggregateVars(u,t)),a=["=","!=","<",">","<=",">="],c=["&&","||","!"],l=["+","-","*","/"];return a.includes(i.operator)?{type:"comparison",operator:i.operator,left:s[0],right:s[1]}:c.includes(i.operator)?{type:"logical",operator:i.operator,operands:s}:l.includes(i.operator)?{type:"arithmetic",operator:i.operator,left:s[0],right:s[1]}:{type:"function",function:i.operator,args:s}}return this.translateExpressionFn(e)}translateOrderComparator(e){return{expression:this.translateExpressionFn(e.expression),descending:e.descending||!1}}translateAggregateExpression(e){let t=e.aggregation,r=o(()=>{if(e.expression&&!("termType"in e.expression&&e.expression.termType==="Wildcard"))return this.translateExpressionFn(e.expression)},"translateInnerExpr");if(typeof t=="string"){let s=t.toLowerCase();return["count","sum","avg","min","max","group_concat","sample"].includes(s)?{type:"aggregate",aggregation:s,expression:r(),distinct:e.distinct||!1,separator:e.separator}:{type:"aggregate",aggregation:{type:"custom",iri:t},expression:r(),distinct:e.distinct||!1,separator:e.separator}}let i=t;if(i&&typeof i=="object"){let s,a=i;if(a.termType==="NamedNode"&&typeof a.value=="string")s=a.value;else if("value"in a)s=String(a.value);else throw new sx.AlgebraTranslatorError(`Invalid custom aggregate: expected IRI but got ${JSON.stringify(i)}`);return{type:"aggregate",aggregation:{type:"custom",iri:s},expression:r(),distinct:e.distinct||!1,separator:e.separator}}throw new sx.AlgebraTranslatorError(`Unknown aggregate format: ${JSON.stringify(t)}`)}collectNestedAggregates(e,t,r){if(e){if("type"in e&&e.type==="aggregate"){let i=`__agg${this.aggregateCounter++}`;t.push({variable:i,expression:this.translateAggregateExpression(e)}),r.set(e,i)}else if("type"in e&&e.type==="operation"&&"args"in e){let i=e;for(let s of i.args)!Array.isArray(s)&&"type"in s&&!("patterns"in s)?this.collectNestedAggregates(s,t,r):"termType"in s&&this.collectNestedAggregates(s,t,r)}}}};dp.AggregateTranslator=y1});var Uc=S(La=>{"use strict";Object.defineProperty(La,"__esModule",{value:!0});La.AlgebraTranslator=La.ExoQLAlgebraTranslator=La.AlgebraTranslatorError=void 0;var hp=Do(),pp=cp(),I9=ex(),R9=tx(),P9=ix(),O9=ax(),F9=Do();Object.defineProperty(La,"AlgebraTranslatorError",{enumerable:!0,get:o(function(){return F9.AlgebraTranslatorError},"get")});var mp=class{static{o(this,"ExoQLAlgebraTranslator")}constructor(){this.tripleTranslator=new I9.TripleTranslator,this.expressionTranslator=new R9.ExpressionTranslator({translateWhere:o(e=>this.patternTranslator.translateWhere(e),"translateWhere"),translateBGP:o(e=>this.tripleTranslator.translateBGP(e),"translateBGP"),translatePattern:o(e=>this.patternTranslator.translatePattern(e),"translatePattern")}),this.patternTranslator=new P9.PatternTranslator({translateExpression:o(e=>this.expressionTranslator.translateExpression(e),"translateExpression"),translateSelect:o(e=>this.translateSelect(e),"translateSelect"),translateBGP:o(e=>this.tripleTranslator.translateBGP(e),"translateBGP")}),this.aggregateTranslator=new O9.AggregateTranslator({translateExpression:o(e=>this.expressionTranslator.translateExpression(e),"translateExpression")})}setDirectionMappings(e){this.tripleTranslator.setDirectionMappings(e),this.patternTranslator.setDirectionMappings(e)}translate(e){if(e.type!=="query")throw new hp.AlgebraTranslatorError("Only query operations are supported (not updates)");if(e.queryType==="SELECT")return this.translateSelect(e);if(e.queryType==="CONSTRUCT")return this.translateConstruct(e);if(e.queryType==="ASK")return this.translateAsk(e);if(e.queryType==="DESCRIBE")return this.translateDescribe(e);throw new hp.AlgebraTranslatorError(`Query type ${String(e.queryType)} not yet supported`)}translateSelect(e){if(!e.where||e.where.length===0)throw new hp.AlgebraTranslatorError("SELECT query must have WHERE clause");let t=this.patternTranslator.translateWhere(e.where);this.aggregateTranslator.resetCounter();let r=new Map,i=Array.isArray(e.variables)?e.variables.filter(l=>!("termType"in l&&l.termType==="Wildcard")):[],s=this.aggregateTranslator.extractAggregatesWithMapping(i,r),a=this.aggregateTranslator.extractGroupVariables(e.group),c=this.aggregateTranslator.extractHavingExpressions(e.having,s,r);if((s.length>0||a.length>0||c.length>0)&&(t={type:"group",variables:a,aggregates:s,having:c.length>0?c:void 0,input:t}),i.length>0){for(let u of i)if((0,pp.isVariableExpression)(u)){if("type"in u.expression&&u.expression.type==="aggregate")continue;let f=this.aggregateTranslator.transformExpressionWithAggregateVars(u.expression,r);t={type:"extend",variable:u.variable.value,expression:f,input:t}}let l=i.filter(u=>(0,pp.isVariableTerm)(u)||(0,pp.isVariableExpression)(u)).map(u=>(0,pp.isVariableTerm)(u)?u.value:u.variable.value);l.length>0&&(t={type:"project",variables:l,input:t})}return e.distinct&&(t={type:"distinct",input:t}),e.reduced&&(t={type:"reduced",input:t}),e.order&&e.order.length>0&&(t={type:"orderby",comparators:e.order.map(l=>this.aggregateTranslator.translateOrderComparator(l)),input:t}),(e.limit!==void 0||e.offset!==void 0)&&(t={type:"slice",limit:e.limit,offset:e.offset,input:t}),t}translateConstruct(e){let t=this.tripleTranslator.translateConstructTemplate(e.template??[]);if(!e.where||e.where.length===0)throw new hp.AlgebraTranslatorError("CONSTRUCT query must have WHERE clause");let r=this.patternTranslator.translateWhere(e.where),i=e;return(i.limit!==void 0||i.offset!==void 0)&&(r={type:"slice",limit:i.limit,offset:i.offset,input:r}),{type:"construct",template:t,where:r}}translateAsk(e){return{type:"ask",where:e.where&&e.where.length>0?this.patternTranslator.translateWhere(e.where):{type:"bgp",triples:[]}}}translateDescribe(e){let t=[];if(e.variables&&Array.isArray(e.variables)){let s=e.variables;for(let a of s)a.termType==="Wildcard"||a.value==="*"||(a.termType==="Variable"?t.push({type:"variable",value:a.value}):a.termType==="NamedNode"&&t.push({type:"iri",value:a.value}))}let r;e.where&&e.where.length>0&&(r=this.patternTranslator.translateWhere(e.where));let i=e.describeOptions;return{type:"describe",resources:t,where:r,depth:i?.depth,symmetric:i?.symmetric}}};La.ExoQLAlgebraTranslator=mp;La.AlgebraTranslator=mp});var us=S(gp=>{"use strict";Object.defineProperty(gp,"__esModule",{value:!0});gp.SolutionMapping=void 0;var ox=Ne(),cx=Ae(),lx=qt(),_1=class n{static{o(this,"SolutionMapping")}constructor(e){this.bindings=e?new Map(e):new Map}get(e){return this.bindings.get(e)}set(e,t){this.bindings.set(e,t)}has(e){return this.bindings.has(e)}variables(){return Array.from(this.bindings.keys())}getBindings(){return new Map(this.bindings)}isCompatibleWith(e){for(let[t,r]of this.bindings.entries()){let i=e.get(t);if(i!==void 0&&!this.areEqual(r,i))return!1}return!0}merge(e){if(!this.isCompatibleWith(e))return null;let t=new n(this.bindings);for(let[r,i]of e.getBindings().entries())t.set(r,i);return t}clone(){return new n(this.bindings)}areEqual(e,t){return e instanceof ox.Literal&&t instanceof ox.Literal?e.equals(t):e instanceof cx.IRI&&t instanceof cx.IRI?e.value===t.value:e instanceof lx.BlankNode&&t instanceof lx.BlankNode?e.id===t.id:!1}toJSON(){let e={};for(let[t,r]of this.bindings.entries())e[t]=r.toString();return e}size(){return this.bindings.size}};gp.SolutionMapping=_1});var fx=S(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.PropertyPathExecutor=qc.PropertyPathExecutorError=void 0;var D9=us(),yp=Ae(),ux=qt(),N9=Ne(),Ju=class extends Error{static{o(this,"PropertyPathExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="PropertyPathExecutorError"}};qc.PropertyPathExecutorError=Ju;var S1=class{static{o(this,"PropertyPathExecutor")}constructor(e){this.tripleStore=e,this.MAX_DEPTH=100}async*execute(e,t,r){if(this.isLiteralElement(e)||this.isLiteralElement(r)){let a=this.isLiteralElement(e)?"subject":"object",c=this.isLiteralElement(e)?e:r,l="value"in c?String(c.value):"<unknown>",u=l.length>80?`${l.slice(0,77)}...`:l;console.warn(`[PropertyPathExecutor] literal-safety guard fired: literal in ${a} position \u2014 yielding 0 solutions. value="${u}"`);return}let i=await this.resolveElement(e),s=this.isVariable(r)?null:await this.resolveElement(r);for(let a of i){let c=await this.evaluatePath(a,t,s);for(let l of c){let u=new D9.SolutionMapping;this.isVariable(e)&&u.set(e.value,a),this.isVariable(r)&&u.set(r.value,l),yield u}}}async*executeWithBindings(e,t){if(!this.isPropertyPath(e.predicate))throw new Ju("Predicate is not a property path");let r=this.instantiateElement(e.subject,t),i=this.instantiateElement(e.object,t);for await(let s of this.execute(r,e.predicate,i)){let a=t.merge(s);a!==null&&(yield a)}}async evaluatePath(e,t,r){switch(t.pathType){case"/":return this.evaluateSequencePath(e,t.items,r);case"|":return this.evaluateAlternativePath(e,t.items,r);case"^":return this.evaluateInversePath(e,t.items[0],r);case"+":return this.evaluateOneOrMorePath(e,t.items[0],r);case"*":return this.evaluateZeroOrMorePath(e,t.items[0],r);case"?":return this.evaluateZeroOrOnePath(e,t.items[0],r)}}async evaluateSequencePath(e,t,r){let i=new Set([e]);for(let s=0;s<t.length;s++){let a=t[s],c=s===t.length-1,l=new Set;for(let u of i){let f=await this.evaluatePathItem(u,a,c?r:null);for(let d of f)l.add(d)}if(i=l,i.size===0)break}return i}async evaluateAlternativePath(e,t,r){let i=new Set;for(let s of t){let a=await this.evaluatePathItem(e,s,r);for(let c of a)i.add(c)}return i}async evaluateInversePath(e,t,r){if(t.type==="iri"){let i=new yp.IRI(t.value),s=await this.tripleStore.match(void 0,i,e),a=new Set;for(let c of s)(r===null||this.nodeInSet(c.subject,r))&&a.add(c.subject);return a}else return this.evaluatePath(e,this.invertPath(t),r)}async evaluateOneOrMorePath(e,t,r){let i=new Set,s=new Set,a=[{node:e,depth:0}];for(;a.length>0;){let c=a.shift();if(!c)break;let{node:l,depth:u}=c;if(u>=this.MAX_DEPTH)continue;let f=await this.evaluatePathItem(l,t,null);for(let d of f){let h=this.nodeToKey(d);(r===null||this.nodeInSet(d,r))&&s.add(d),i.has(h)||(i.add(h),a.push({node:d,depth:u+1}))}}return s}async evaluateZeroOrMorePath(e,t,r){let i=await this.evaluateOneOrMorePath(e,t,r);return(r===null||this.nodeInSet(e,r))&&i.add(e),i}async evaluateZeroOrOnePath(e,t,r){let i=new Set;(r===null||this.nodeInSet(e,r))&&i.add(e);let s=await this.evaluatePathItem(e,t,r);for(let a of s)i.add(a);return i}async evaluatePathItem(e,t,r){if(t.type==="iri"){let i=new yp.IRI(t.value),s=await this.tripleStore.match(e,i,void 0),a=new Set;for(let c of s)(r===null||this.nodeInSet(c.object,r))&&a.add(c.object);return a}else return this.evaluatePath(e,t,r)}invertPath(e){switch(e.pathType){case"^":return e.items[0];case"/":return{type:"path",pathType:"/",items:[...e.items].reverse().map(t=>t.type==="iri"?{type:"path",pathType:"^",items:[t]}:this.invertPath(t))};case"|":return{type:"path",pathType:"|",items:e.items.map(t=>t.type==="iri"?{type:"path",pathType:"^",items:[t]}:this.invertPath(t))};case"+":case"*":case"?":{let t=e.items[0].type==="iri"?{type:"path",pathType:"^",items:[e.items[0]]}:this.invertPath(e.items[0]);return{type:"path",pathType:e.pathType,items:[t]}}}}async resolveElement(e){if(this.isVariable(e)){let r=new Set,i=await this.tripleStore.match(void 0,void 0,void 0);for(let s of i)r.add(s.subject),r.add(s.object);return r}let t=new Set;switch(e.type){case"iri":t.add(new yp.IRI(e.value));break;case"blank":t.add(new ux.BlankNode(e.value));break;default:throw new Ju(`Unsupported element type in subject/object position: ${e.type}`)}return t}instantiateElement(e,t){if(this.isVariable(e)){let r=t.get(e.value);if(r){if(r instanceof yp.IRI)return{type:"iri",value:r.value};if(r instanceof ux.BlankNode)return{type:"blank",value:r.id};if(r instanceof N9.Literal)return{type:"literal",value:r.value,datatype:r.datatype?.value,language:r.language,direction:r.direction}}}return e}isVariable(e){return e.type==="variable"}isLiteralElement(e){return e.type==="literal"}isPropertyPath(e){return e.type==="path"}nodeToKey(e){return e.toString()}nodeInSet(e,t){let r=this.nodeToKey(e);for(let i of t)if(this.nodeToKey(i)===r)return!0;return!1}};qc.PropertyPathExecutor=S1});var w1=S(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});Wc.BGPExecutor=Wc.BGPExecutorError=void 0;var _p=us(),ka=Ae(),v1=Ne(),Sp=qt(),vp=Nu(),L9=fx(),Hr=class extends Error{static{o(this,"BGPExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="BGPExecutorError"}};Wc.BGPExecutorError=Hr;var b1=class{static{o(this,"BGPExecutor")}constructor(e){this.tripleStore=e,this.propertyPathExecutor=new L9.PropertyPathExecutor(e)}async*execute(e){if(e.triples.length===0){yield new _p.SolutionMapping;return}let t=this.matchTriplePattern(e.triples[0]);for(let r=1;r<e.triples.length;r++)t=this.joinWithPattern(t,e.triples[r]);for await(let r of t)yield r}async executeAll(e){let t=[];for await(let r of this.execute(e))t.push(r);return t}async*executeInGraph(e,t){if(e.triples.length===0){yield new _p.SolutionMapping;return}let r=this.matchTriplePatternInGraph(e.triples[0],t);for(let i=1;i<e.triples.length;i++)r=this.joinWithPatternInGraph(r,e.triples[i],t);for await(let i of r)yield i}async*matchTriplePatternInGraph(e,t){if(this.isPropertyPath(e.predicate))throw new Hr("Property paths within named graphs are not yet supported");let r=e.predicate;if(this.isLiteral(e.subject)||this.isLiteral(r)){this.warnLiteralGuard("matchTriplePatternInGraph",this.isLiteral(e.subject)?"subject":"predicate",this.isLiteral(e.subject)?e.subject:r);return}let i=this.isVariable(e.subject)?void 0:this.toRDFTermAsSubject(e.subject),s=this.isVariable(r)?void 0:this.toRDFTermAsPredicate(r),a=this.isVariable(e.object)?void 0:this.toRDFTerm(e.object);if(!this.tripleStore.matchInGraph)throw new Hr("Triple store does not support named graph operations");let c=await this.tripleStore.matchInGraph(i,s,a,t);for(let l of c){let u=new _p.SolutionMapping;this.isVariable(e.subject)&&u.set(e.subject.value,l.subject),this.isVariable(r)&&u.set(r.value,l.predicate),this.isVariable(e.object)&&u.set(e.object.value,l.object),yield u}}async*joinWithPatternInGraph(e,t,r){let i=[];for await(let s of e)i.push(s);for(let s of i){let a=this.instantiatePattern(t,s);for await(let c of this.matchTriplePatternInGraph(a,r)){let l=s.merge(c);l!==null&&(yield l)}}}async*matchTriplePattern(e){if(this.isPropertyPath(e.predicate)){if(this.isLiteral(e.subject)||this.isLiteral(e.object)){this.warnLiteralGuard("matchTriplePattern.propertyPath",this.isLiteral(e.subject)?"subject":"object",this.isLiteral(e.subject)?e.subject:e.object);return}yield*this.propertyPathExecutor.execute(e.subject,e.predicate,e.object);return}let t=e.predicate;if(this.isLiteral(e.subject)||this.isLiteral(t)){this.warnLiteralGuard("matchTriplePattern",this.isLiteral(e.subject)?"subject":"predicate",this.isLiteral(e.subject)?e.subject:t);return}let r=this.isVariable(e.subject)||this.isQuotedTriple(e.subject)&&this.hasVariablesInQuotedTriple(e.subject)?void 0:this.toRDFTermAsSubject(e.subject),i=this.isVariable(t)?void 0:this.toRDFTermAsPredicate(t),s=this.isVariable(e.object)||this.isQuotedTriple(e.object)&&this.hasVariablesInQuotedTriple(e.object)?void 0:this.toRDFTerm(e.object),a=await this.tripleStore.match(r,i,s);for(let c of a){let l=new _p.SolutionMapping;if(this.isVariable(e.subject))l.set(e.subject.value,c.subject);else if(this.isQuotedTriple(e.subject)){let u=this.matchQuotedTriplePattern(e.subject,c.subject);if(u===null)continue;for(let[f,d]of u.entries())l.set(f,d)}if(this.isVariable(t)&&l.set(t.value,c.predicate),this.isVariable(e.object))l.set(e.object.value,c.object);else if(this.isQuotedTriple(e.object)){let u=this.matchQuotedTriplePattern(e.object,c.object);if(u===null)continue;for(let[f,d]of u.entries())l.set(f,d)}yield l}}hasVariablesInQuotedTriple(e){return!!(this.isVariable(e.subject)||e.predicate.type==="variable"||this.isVariable(e.object)||this.isQuotedTriple(e.subject)&&this.hasVariablesInQuotedTriple(e.subject)||this.isQuotedTriple(e.object)&&this.hasVariablesInQuotedTriple(e.object))}matchQuotedTriplePattern(e,t){if(!(t instanceof vp.QuotedTriple))return null;let r=new Map;if(this.isVariable(e.subject))r.set(e.subject.value,t.subject);else if(this.isQuotedTriple(e.subject)){let i=this.matchQuotedTriplePattern(e.subject,t.subject);if(i===null)return null;for(let[s,a]of i)r.set(s,a)}else if(!this.elementsMatch(e.subject,t.subject))return null;if(e.predicate.type==="variable")r.set(e.predicate.value,t.predicate);else if(e.predicate.value!==t.predicate.value)return null;if(this.isVariable(e.object))r.set(e.object.value,t.object);else if(this.isQuotedTriple(e.object)){let i=this.matchQuotedTriplePattern(e.object,t.object);if(i===null)return null;for(let[s,a]of i)r.set(s,a)}else if(!this.elementsMatch(e.object,t.object))return null;return r}elementsMatch(e,t){switch(e.type){case"iri":return t instanceof ka.IRI&&e.value===t.value;case"literal":return!(!(t instanceof v1.Literal)||e.value!==t.value||e.datatype!==t.datatype?.value||e.language!==t.language||e.direction!==t.direction);case"blank":return t instanceof Sp.BlankNode&&e.value===t.id;case"quoted":return t instanceof vp.QuotedTriple?this.toRDFQuotedTriple(e).equals(t):!1;default:return!1}}isPropertyPath(e){return e.type==="path"}async*joinWithPattern(e,t){let r=[];for await(let i of e)r.push(i);for(let i of r){let s=this.instantiatePattern(t,i);for await(let a of this.matchTriplePattern(s)){let c=i.merge(a);c!==null&&(yield c)}}}instantiatePattern(e,t){let r=this.isPropertyPath(e.predicate)?e.predicate:this.instantiateElement(e.predicate,t);return{subject:this.instantiateElement(e.subject,t),predicate:r,object:this.instantiateElement(e.object,t)}}instantiateElement(e,t){if(this.isVariable(e)){let r=t.get(e.value);if(r)return this.toAlgebraElement(r)}return this.isQuotedTriple(e)?this.instantiateQuotedTriple(e,t):e}instantiateQuotedTriple(e,t){let r=this.instantiateElement(e.subject,t),i=e.predicate.type==="variable"?this.instantiatePredicateVariable(e.predicate,t):e.predicate,s=this.instantiateElement(e.object,t);return{type:"quoted",subject:r,predicate:i,object:s}}instantiatePredicateVariable(e,t){let r=t.get(e.value);return r&&r instanceof ka.IRI?{type:"iri",value:r.value}:e}isVariable(e){return e.type==="variable"}isQuotedTriple(e){return e.type==="quoted"}isLiteral(e){return e.type==="literal"}warnLiteralGuard(e,t,r){let i="value"in r?String(r.value):"<unknown>",s=i.length>80?`${i.slice(0,77)}...`:i;console.warn(`[BGPExecutor] literal-safety guard fired in ${e}: literal in ${t} position \u2014 yielding 0 solutions. value="${s}"`)}toRDFTermAsSubject(e){switch(e.type){case"iri":return new ka.IRI(e.value);case"blank":return new Sp.BlankNode(e.value);case"literal":throw new Hr("Literals cannot appear in subject position");case"variable":throw new Hr(`Cannot convert variable to RDF term: ${e.value}`);case"quoted":return this.toRDFQuotedTriple(e);default:throw new Hr(`Unknown element type: ${String(e)}`)}}toRDFQuotedTriple(e){let t=this.toRDFTermAsSubject(e.subject),r=e.predicate.type==="iri"?new ka.IRI(e.predicate.value):(()=>{throw new Hr("Quoted triple predicate must be IRI")})(),i=this.toRDFTerm(e.object);return new vp.QuotedTriple(t,r,i)}toRDFTermAsPredicate(e){switch(e.type){case"iri":return new ka.IRI(e.value);case"literal":throw new Hr("Literals cannot appear in predicate position");case"blank":throw new Hr("Blank nodes cannot appear in predicate position");case"variable":throw new Hr(`Cannot convert variable to RDF term: ${e.value}`);default:throw new Hr(`Unknown element type: ${String(e)}`)}}toRDFTerm(e){switch(e.type){case"iri":return new ka.IRI(e.value);case"literal":return new v1.Literal(e.value,e.datatype?new ka.IRI(e.datatype):void 0,e.language,e.direction);case"blank":return new Sp.BlankNode(e.value);case"variable":throw new Hr(`Cannot convert variable to RDF term: ${e.value}`);case"quoted":return this.toRDFQuotedTriple(e);default:throw new Hr(`Unknown element type: ${String(e)}`)}}toAlgebraElement(e){if(e instanceof ka.IRI)return{type:"iri",value:e.value};if(e instanceof v1.Literal)return{type:"literal",value:e.value,datatype:e.datatype?.value,language:e.language,direction:e.direction};if(e instanceof Sp.BlankNode)return{type:"blank",value:e.id};if(e instanceof vp.QuotedTriple)return this.toAlgebraQuotedTriple(e);throw new Hr(`Unknown RDF term type: ${String(e)}`)}toAlgebraQuotedTriple(e){return{type:"quoted",subject:this.toAlgebraElement(e.subject),predicate:{type:"iri",value:e.predicate.value},object:this.toAlgebraElement(e.object)}}};Wc.BGPExecutor=b1});var dx=S(bp=>{"use strict";Object.defineProperty(bp,"__esModule",{value:!0});bp.StringFunctions=void 0;var Gc=Ae(),Ma=Ne(),E1=qt(),Zu=class n{static{o(this,"StringFunctions")}static str(e){if(e===void 0)throw new Error("STR: argument is undefined");return e instanceof Gc.IRI||e instanceof Ma.Literal?e.value:e instanceof E1.BlankNode?e.id:String(e)}static lang(e){if(e===void 0)throw new Error("LANG: argument is undefined");return e instanceof Ma.Literal&&e.language?e.language:""}static langdir(e){if(e===void 0)throw new Error("LANGDIR: argument is undefined");return!(e instanceof Ma.Literal)||!e.language?"":e.direction?`${e.language}--${e.direction}`:e.language}static langMatches(e,t){let[r,i]=n.parseDirectionalLangTag(e),[s,a]=n.parseDirectionalLangTag(t),c=r.toLowerCase(),l=s.toLowerCase();return l==="*"?c!=="":c===""?l==="":a&&i!==a?!1:c===l?!0:c.startsWith(l+"-")}static parseDirectionalLangTag(e){let t=e.indexOf("--");if(t===-1)return[e,void 0];let r=e.substring(0,t),i=e.substring(t+2).toLowerCase();return[r,i]}static regex(e,t,r){try{let i=r?r.includes("u")?r:r+"u":"u";return new RegExp(t,i).test(e)}catch(i){throw new Error(`REGEX: invalid pattern '${t}': ${i.message}`)}}static contains(e,t){return e.includes(t)}static strStarts(e,t){return e.startsWith(t)}static strEnds(e,t){return e.endsWith(t)}static strlen(e){return e.length}static ucase(e){return e.toUpperCase()}static lcase(e){return e.toLowerCase()}static substr(e,t,r){let i=t-1;if(i<0){if(r!==void 0){let s=r+i;return s<=0?"":e.substring(0,s)}return e}return r!==void 0?e.substring(i,i+r):e.substring(i)}static strBefore(e,t){if(t==="")return"";let r=e.indexOf(t);return r===-1?"":e.substring(0,r)}static strAfter(e,t){if(t==="")return e;let r=e.indexOf(t);return r===-1?"":e.substring(r+t.length)}static concat(...e){return e.join("")}static replace(e,t,r,i){try{let s=i||"g",a=s.includes("u")?s:s+"u",c=new RegExp(t,a);return e.replace(c,r)}catch(s){throw new Error(`REPLACE: invalid pattern '${t}': ${s.message}`)}}static encodeForUri(e){return encodeURIComponent(e)}static normalize(e,t){if(e===void 0)throw new Error("NORMALIZE: string argument is undefined");let r;if(e instanceof Ma.Literal)r=e.value;else if(e instanceof Gc.IRI)r=e.value;else if(e instanceof E1.BlankNode)r=e.id;else if(typeof e=="string")r=e;else throw new Error("NORMALIZE: first argument must be a string or literal");let i="NFC";if(t!==void 0)if(t instanceof Ma.Literal)i=t.value.toUpperCase();else if(typeof t=="string")i=t.toUpperCase();else if(t instanceof Gc.IRI)i=t.value.toUpperCase();else throw new Error("NORMALIZE: second argument must be a string literal");if(!n.VALID_NORMALIZATION_FORMS.includes(i))throw new Error(`NORMALIZE: invalid normalization form '${i}'. Valid forms are: NFC, NFD, NFKC, NFKD`);let s=r.normalize(i);return new Ma.Literal(s,new Gc.IRI("http://www.w3.org/2001/XMLSchema#string"))}static fold(e){if(e===void 0)throw new Error("FOLD: string argument is undefined");let t;if(e instanceof Ma.Literal)t=e.value;else if(e instanceof Gc.IRI)t=e.value;else if(e instanceof E1.BlankNode)t=e.id;else if(typeof e=="string")t=e;else throw new Error("FOLD: argument must be a string or literal");let r=n.unicodeCaseFold(t);return new Ma.Literal(r,new Gc.IRI("http://www.w3.org/2001/XMLSchema#string"))}static unicodeCaseFold(e){let t="";for(let r of e){let i=n.CASE_FOLDING_MAP.get(r);i!==void 0?t+=i:t+=r.toLowerCase()}return t}};bp.StringFunctions=Zu;Zu.VALID_NORMALIZATION_FORMS=["NFC","NFD","NFKC","NFKD"];Zu.CASE_FOLDING_MAP=new Map([["\xDF","ss"],["\u1E9E","ss"],["\u03A3","\u03C3"],["\u03C2","\u03C3"],["\u0130","i\u0307"],["I","i"],["\u0587","\u0565\u0582"],["\uFB00","ff"],["\uFB01","fi"],["\uFB02","fl"],["\uFB03","ffi"],["\uFB04","ffl"],["\uFB05","st"],["\uFB06","st"],["\u0390","\u03B9\u0308\u0301"],["\u03B0","\u03C5\u0308\u0301"],["\u017F","s"],["\u1E9B","\u1E61"],["\u212A","k"],["\u212B","\xE5"]])});var hx=S(wp=>{"use strict";Object.defineProperty(wp,"__esModule",{value:!0});wp.MathFunctions=void 0;var T1=class{static{o(this,"MathFunctions")}static msToMinutes(e){return Math.round(e/(1e3*60))}static msToHours(e){return Math.round(e/(1e3*60*60)*100)/100}static msToSeconds(e){return Math.round(e/1e3)}static abs(e){return Math.abs(e)}static round(e){return Math.round(e)}static ceil(e){return Math.ceil(e)}static floor(e){return Math.floor(e)}static rand(){return Math.random()}};wp.MathFunctions=T1});var Tp=S(Ep=>{"use strict";Object.defineProperty(Ep,"__esModule",{value:!0});Ep.DateTimeParsing=void 0;var k9=Ae(),M9=Ne(),A1=class n{static{o(this,"DateTimeParsing")}static parseDate(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`PARSEDATE: invalid date string '${e}'`);return t.getTime()}static parseDayTimeDuration(e){if(!e)throw new Error("parseDayTimeDuration: duration string is empty");let t=!1,r=e.trim();if(r.startsWith("-")&&(t=!0,r=r.substring(1)),!r.startsWith("P"))throw new Error(`parseDayTimeDuration: invalid format, must start with 'P': '${e}'`);r=r.substring(1);let i=0,s=r.indexOf("T"),a="",c="";if(s===-1?a=r:(a=r.substring(0,s),c=r.substring(s+1)),a){let l=a.match(/^(\d+(?:\.\d+)?)D$/);if(l){let u=parseFloat(l[1]);i+=u*24*60*60*1e3}else if(a!=="")throw new Error(`parseDayTimeDuration: invalid day component: '${a}' in '${e}'`)}if(c){let l=c,u=l.match(/^(\d+(?:\.\d+)?)H/);if(u){let h=parseFloat(u[1]);i+=h*60*60*1e3,l=l.substring(u[0].length)}let f=l.match(/^(\d+(?:\.\d+)?)M/);if(f){let h=parseFloat(f[1]);i+=h*60*1e3,l=l.substring(f[0].length)}let d=l.match(/^(\d+(?:\.\d+)?)S$/);if(d){let h=parseFloat(d[1]);i+=h*1e3,l=l.substring(d[0].length)}if(l!=="")throw new Error(`parseDayTimeDuration: invalid time component: '${l}' in '${e}'`)}return t?-i:i}static formatDayTimeDuration(e){let t=e<0,r=Math.abs(e),i=Math.floor(r/(1440*60*1e3));r=r%(1440*60*1e3);let s=Math.floor(r/(3600*1e3));r=r%(3600*1e3);let a=Math.floor(r/(60*1e3));r=r%(60*1e3);let c=r/1e3,l=t?"-P":"P";return i>0&&(l+=`${i}D`),(s>0||a>0||c>0||i===0)&&(l+="T",s>0&&(l+=`${s}H`),a>0&&(l+=`${a}M`),(c>0||s===0&&a===0)&&(Number.isInteger(c)?l+=`${c}S`:l+=`${parseFloat(c.toFixed(3))}S`)),l}static xsdDayTimeDuration(e){return n.parseDayTimeDuration(e),new M9.Literal(e,new k9.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static parseXSDDate(e){let t=/^(-?\d{4})-(\d{2})-(\d{2})(Z|[+-]\d{2}:\d{2})?$/,r=e.match(t);if(!r){let u=new Date(e);return isNaN(u.getTime())?null:new Date(Date.UTC(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate()))}let i=parseInt(r[1],10),s=parseInt(r[2],10)-1,a=parseInt(r[3],10),c=r[4],l=new Date(Date.UTC(i,s,a));if(c&&c!=="Z"){let u=c.match(/([+-])(\d{2}):(\d{2})/);if(u){let f=u[1]==="+"?1:-1,d=parseInt(u[2],10),h=parseInt(u[3],10),p=f*(d*60+h)*60*1e3;l=new Date(l.getTime()-p)}}return l}static parseXSDTime(e){let t=/^(\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(Z|[+-]\d{2}:\d{2})?$/,r=e.match(t);if(!r)return null;let i=parseInt(r[1],10),s=parseInt(r[2],10),a=parseInt(r[3],10),c=r[4],l=r[5];if(i<0||i>24||s<0||s>59||a<0||a>59||i===24&&(s!==0||a!==0))return null;let u=0;if(c){let d=c.padEnd(3,"0").slice(0,3);u=parseInt(d,10)}let f=i*60*60*1e3+s*60*1e3+a*1e3+u;if(i===24&&(f=1440*60*1e3),l&&l!=="Z"){let d=l.match(/([+-])(\d{2}):(\d{2})/);if(d){let h=d[1]==="+"?1:-1,p=parseInt(d[2],10),y=parseInt(d[3],10),v=h*(p*60+y)*60*1e3;f-=v}}return f}static formatDateDuration(e){if(e===0)return"P0D";let t=e<0,r=Math.abs(e);return t?`-P${r}D`:`P${r}D`}static parseYearMonthDuration(e){let t=/^(-)?P(?:(\d+)Y)?(?:(\d+)M)?$/,r=e.match(t);if(!r)throw new Error(`parseYearMonthDuration: invalid format: '${e}'`);let i=r[1]==="-",s=parseInt(r[2]||"0",10),a=parseInt(r[3]||"0",10);if(!r[2]&&!r[3])throw new Error(`parseYearMonthDuration: invalid format (no duration components): '${e}'`);let c=s*12+a;return i?-c:c}static formatYearMonthDuration(e){let t=e<0,r=Math.abs(e),i=Math.floor(r/12),s=r%12,a=t?"-P":"P";return i>0&&(a+=`${i}Y`),(s>0||i===0)&&(a+=`${s}M`),a}static parseYearMonthDurationComponents(e){let t=/^(-)?P(?:(\d+)Y)?(?:(\d+)M)?$/,r=e.match(t);if(!r)throw new Error(`parseYearMonthDurationComponents: invalid format: '${e}'`);let i=r[1]==="-",s=parseInt(r[2]||"0",10),a=parseInt(r[3]||"0",10);if(!r[2]&&!r[3])throw new Error(`parseYearMonthDurationComponents: invalid format (no duration components): '${e}'`);return{years:s,months:a,negative:i}}static parseDurationComponents(e){if(!e)throw new Error("parseDurationComponents: duration string is empty");let t=!1,r=e.trim();if(r.startsWith("-")&&(t=!0,r=r.substring(1)),!r.startsWith("P"))throw new Error(`parseDurationComponents: invalid format, must start with 'P': '${e}'`);r=r.substring(1);let i=0,s=0,a=0,c=0,l=r.indexOf("T"),u="",f="";if(l===-1?u=r:(u=r.substring(0,l),f=r.substring(l+1)),u){let d=u.match(/^(\d+(?:\.\d+)?)D$/);if(d)i=parseFloat(d[1]);else if(u!=="")throw new Error(`parseDurationComponents: invalid day component: '${u}' in '${e}'`)}if(f){let d=f,h=d.match(/^(\d+(?:\.\d+)?)H/);h&&(s=parseFloat(h[1]),d=d.substring(h[0].length));let p=d.match(/^(\d+(?:\.\d+)?)M/);p&&(a=parseFloat(p[1]),d=d.substring(p[0].length));let y=d.match(/^(\d+(?:\.\d+)?)S$/);if(y&&(c=parseFloat(y[1]),d=d.substring(y[0].length)),d!=="")throw new Error(`parseDurationComponents: invalid time component: '${d}' in '${e}'`)}return{negative:t,days:i,hours:s,minutes:a,seconds:c}}};Ep.DateTimeParsing=A1});var px=S(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});Ap.DateTimeArithmetic=void 0;var hn=Ae(),xe=Ne(),Je=Tp(),x1=class{static{o(this,"DateTimeArithmetic")}static dateTimeDiff(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r),a=new Date(i);if(isNaN(s.getTime()))throw new Error(`dateTimeDiff: invalid first dateTime: '${r}'`);if(isNaN(a.getTime()))throw new Error(`dateTimeDiff: invalid second dateTime: '${i}'`);let c=s.getTime()-a.getTime(),l=Je.DateTimeParsing.formatDayTimeDuration(c);return new xe.Literal(l,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static dateTimeAdd(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r);if(isNaN(s.getTime()))throw new Error(`dateTimeAdd: invalid dateTime: '${r}'`);let a=Je.DateTimeParsing.parseDayTimeDuration(i),c=s.getTime()+a,l=new Date(c);return new xe.Literal(l.toISOString(),new hn.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static dateTimeSubtract(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r);if(isNaN(s.getTime()))throw new Error(`dateTimeSubtract: invalid dateTime: '${r}'`);let a=Je.DateTimeParsing.parseDayTimeDuration(i),c=s.getTime()-a,l=new Date(c);return new xe.Literal(l.toISOString(),new hn.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static dateAdd(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseXSDDate(r);if(s===null)throw new Error(`dateAdd: invalid date: '${r}'`);let a=Je.DateTimeParsing.parseDayTimeDuration(i),c=s.getTime()+a,l=new Date(c),u=l.getUTCFullYear(),f=String(l.getUTCMonth()+1).padStart(2,"0"),d=String(l.getUTCDate()).padStart(2,"0"),h=`${u}-${f}-${d}`;return new xe.Literal(h,new hn.IRI("http://www.w3.org/2001/XMLSchema#date"))}static dateSubtract(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseXSDDate(r);if(s===null)throw new Error(`dateSubtract: invalid date: '${r}'`);let a=Je.DateTimeParsing.parseDayTimeDuration(i),c=s.getTime()-a,l=new Date(c),u=l.getUTCFullYear(),f=String(l.getUTCMonth()+1).padStart(2,"0"),d=String(l.getUTCDate()).padStart(2,"0"),h=`${u}-${f}-${d}`;return new xe.Literal(h,new hn.IRI("http://www.w3.org/2001/XMLSchema#date"))}static dateTimeAddYearMonth(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r);if(isNaN(s.getTime()))throw new Error(`dateTimeAddYearMonth: invalid dateTime: '${r}'`);let a=Je.DateTimeParsing.parseYearMonthDuration(i),c=s.getUTCDate();return s.setUTCMonth(s.getUTCMonth()+a),s.getUTCDate()!==c&&s.setUTCDate(0),new xe.Literal(s.toISOString(),new hn.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static dateTimeSubtractYearMonth(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=new Date(r);if(isNaN(s.getTime()))throw new Error(`dateTimeSubtractYearMonth: invalid dateTime: '${r}'`);let a=Je.DateTimeParsing.parseYearMonthDuration(i),c=s.getUTCDate();return s.setUTCMonth(s.getUTCMonth()-a),s.getUTCDate()!==c&&s.setUTCDate(0),new xe.Literal(s.toISOString(),new hn.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static dateAddYearMonth(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseXSDDate(r);if(s===null)throw new Error(`dateAddYearMonth: invalid date: '${r}'`);let a=Je.DateTimeParsing.parseYearMonthDuration(i),c=s.getUTCDate();s.setUTCMonth(s.getUTCMonth()+a),s.getUTCDate()!==c&&s.setUTCDate(0);let l=s.getUTCFullYear(),u=String(s.getUTCMonth()+1).padStart(2,"0"),f=String(s.getUTCDate()).padStart(2,"0"),d=`${l}-${u}-${f}`;return new xe.Literal(d,new hn.IRI("http://www.w3.org/2001/XMLSchema#date"))}static dateSubtractYearMonth(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseXSDDate(r);if(s===null)throw new Error(`dateSubtractYearMonth: invalid date: '${r}'`);let a=Je.DateTimeParsing.parseYearMonthDuration(i),c=s.getUTCDate();s.setUTCMonth(s.getUTCMonth()-a),s.getUTCDate()!==c&&s.setUTCDate(0);let l=s.getUTCFullYear(),u=String(s.getUTCMonth()+1).padStart(2,"0"),f=String(s.getUTCDate()).padStart(2,"0"),d=`${l}-${u}-${f}`;return new xe.Literal(d,new hn.IRI("http://www.w3.org/2001/XMLSchema#date"))}static durationAdd(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseDayTimeDuration(r),a=Je.DateTimeParsing.parseDayTimeDuration(i),c=Je.DateTimeParsing.formatDayTimeDuration(s+a);return new xe.Literal(c,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static durationSubtract(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseDayTimeDuration(r),a=Je.DateTimeParsing.parseDayTimeDuration(i),c=Je.DateTimeParsing.formatDayTimeDuration(s-a);return new xe.Literal(c,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static durationMultiply(e,t){let r=e instanceof xe.Literal?e.value:e,i=Je.DateTimeParsing.parseDayTimeDuration(r),s=Je.DateTimeParsing.formatDayTimeDuration(i*t);return new xe.Literal(s,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static durationDivide(e,t){if(t===0)throw new Error("durationDivide: division by zero");let r=e instanceof xe.Literal?e.value:e,i=Je.DateTimeParsing.parseDayTimeDuration(r),s=Je.DateTimeParsing.formatDayTimeDuration(i/t);return new xe.Literal(s,new hn.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static yearMonthDurationAdd(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseYearMonthDuration(r),a=Je.DateTimeParsing.parseYearMonthDuration(i),c=Je.DateTimeParsing.formatYearMonthDuration(s+a);return new xe.Literal(c,new hn.IRI("http://www.w3.org/2001/XMLSchema#yearMonthDuration"))}static yearMonthDurationSubtract(e,t){let r=e instanceof xe.Literal?e.value:e,i=t instanceof xe.Literal?t.value:t,s=Je.DateTimeParsing.parseYearMonthDuration(r),a=Je.DateTimeParsing.parseYearMonthDuration(i),c=Je.DateTimeParsing.formatYearMonthDuration(s-a);return new xe.Literal(c,new hn.IRI("http://www.w3.org/2001/XMLSchema#yearMonthDuration"))}static durationToDays(e){let t=e instanceof xe.Literal?e.value:e;return Je.DateTimeParsing.parseDayTimeDuration(t)/(1440*60*1e3)}static durationToHours(e){let t=e instanceof xe.Literal?e.value:e;return Je.DateTimeParsing.parseDayTimeDuration(t)/(3600*1e3)}static durationToMinutes(e){let t=e instanceof xe.Literal?e.value:e;return Je.DateTimeParsing.parseDayTimeDuration(t)/(60*1e3)}static durationToSeconds(e){let t=e instanceof xe.Literal?e.value:e;return Je.DateTimeParsing.parseDayTimeDuration(t)/1e3}};Ap.DateTimeArithmetic=x1});var mx=S(xp=>{"use strict";Object.defineProperty(xp,"__esModule",{value:!0});xp.DateTimeAccessors=void 0;var ef=Ae(),$t=Ne(),Tt=Tp(),C1=class{static{o(this,"DateTimeAccessors")}static year(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`YEAR: invalid date string '${e}'`);return t.getFullYear()}static month(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`MONTH: invalid date string '${e}'`);return t.getMonth()+1}static day(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`DAY: invalid date string '${e}'`);return t.getDate()}static hours(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`HOURS: invalid date string '${e}'`);return t.getHours()}static minutes(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`MINUTES: invalid date string '${e}'`);return t.getMinutes()}static seconds(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`SECONDS: invalid date string '${e}'`);return t.getSeconds()+t.getMilliseconds()/1e3}static durationDays(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseDurationComponents(t),i=Math.floor(r.days);return r.negative?-i:i}static durationHours(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseDurationComponents(t),i=Math.floor(r.hours);return r.negative?-i:i}static durationMinutes(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseDurationComponents(t),i=Math.floor(r.minutes);return r.negative?-i:i}static durationSeconds(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseDurationComponents(t);return r.negative?-r.seconds:r.seconds}static durationYears(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseYearMonthDurationComponents(t);return r.negative?-r.years:r.years}static durationMonths(e){let t=e instanceof $t.Literal?e.value:e,r=Tt.DateTimeParsing.parseYearMonthDurationComponents(t);return r.negative?-r.months:r.months}static timezone(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`TIMEZONE: invalid date string '${e}'`);let r;if(e.endsWith("Z"))r="PT0S";else{let i=e.match(/([+-]\d{2}):?(\d{2})$/);if(i){let s=parseInt(i[1],10),a=parseInt(i[2],10),c=s>=0?"":"-",l=Math.abs(s);a===0?r=`${c}PT${l}H`:r=`${c}PT${l}H${a}M`}else{let s=-t.getTimezoneOffset(),a=Math.floor(Math.abs(s)/60),c=Math.abs(s)%60,l=s>=0?"":"-";c===0?r=`${l}PT${a}H`:r=`${l}PT${a}H${c}M`}}return new $t.Literal(r,new ef.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static tz(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`TZ: invalid date string '${e}'`);if(e.endsWith("Z"))return"Z";let r=e.match(/([+-]\d{2}:\d{2})$/);if(r)return r[1];let i=e.match(/([+-])(\d{2})(\d{2})$/);return i?`${i[1]}${i[2]}:${i[3]}`:""}static adjust(e,t){let r=e instanceof $t.Literal?e.value:e,i=new Date(r);if(isNaN(i.getTime()))throw new Error(`ADJUST: invalid dateTime: '${r}'`);if(t==null){let te=i.getUTCFullYear(),z=String(i.getUTCMonth()+1).padStart(2,"0"),G=String(i.getUTCDate()).padStart(2,"0"),F=String(i.getUTCHours()).padStart(2,"0"),$=String(i.getUTCMinutes()).padStart(2,"0"),re=String(i.getUTCSeconds()).padStart(2,"0"),Ye=i.getUTCMilliseconds(),at=`${te}-${z}-${G}T${F}:${$}:${re}`;return Ye>0&&(at+=`.${String(Ye).padStart(3,"0")}`),new $t.Literal(at,new ef.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}let s=t instanceof $t.Literal?t.value:t,a=Tt.DateTimeParsing.parseDayTimeDuration(s),c=840*60*1e3;if(Math.abs(a)>c)throw new Error(`ADJUST: timezone offset out of range: '${s}'`);let l=i.getTime(),u=new Date(l+a),f=u.getUTCFullYear(),d=String(u.getUTCMonth()+1).padStart(2,"0"),h=String(u.getUTCDate()).padStart(2,"0"),p=String(u.getUTCHours()).padStart(2,"0"),y=String(u.getUTCMinutes()).padStart(2,"0"),v=String(u.getUTCSeconds()).padStart(2,"0"),w=u.getUTCMilliseconds(),b=a>=0?"+":"-",A=Math.floor(Math.abs(a)/(3600*1e3)),I=Math.floor(Math.abs(a)%(3600*1e3)/(60*1e3)),j=`${b}${String(A).padStart(2,"0")}:${String(I).padStart(2,"0")}`,V=`${f}-${d}-${h}T${p}:${y}:${v}`;return w>0&&(V+=`.${String(w).padStart(3,"0")}`),V+=j,new $t.Literal(V,new ef.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static now(){return new Date().toISOString()}static dateBefore(e,t){let r=Tt.DateTimeParsing.parseDate(e),i=Tt.DateTimeParsing.parseDate(t);return r<i}static dateAfter(e,t){let r=Tt.DateTimeParsing.parseDate(e),i=Tt.DateTimeParsing.parseDate(t);return r>i}static dateInRange(e,t,r){let i=Tt.DateTimeParsing.parseDate(e),s=Tt.DateTimeParsing.parseDate(t),a=Tt.DateTimeParsing.parseDate(r);return i>=s&&i<=a}static compareDurations(e,t,r){let i=e instanceof $t.Literal?e.value:e,s=t instanceof $t.Literal?t.value:t,a=Tt.DateTimeParsing.parseDayTimeDuration(i),c=Tt.DateTimeParsing.parseDayTimeDuration(s);switch(r){case"=":return a===c;case"!=":return a!==c;case"<":return a<c;case">":return a>c;case"<=":return a<=c;case">=":return a>=c;default:throw new Error(`compareDurations: unknown operator: ${r}`)}}static dateDiffMinutes(e,t){let r=Tt.DateTimeParsing.parseDate(e),i=Tt.DateTimeParsing.parseDate(t),s=Math.abs(i-r);return Math.round(s/(1e3*60))}static dateDiffHours(e,t){let r=Tt.DateTimeParsing.parseDate(e),i=Tt.DateTimeParsing.parseDate(t),s=Math.abs(i-r);return Math.round(s/(1e3*60*60)*100)/100}static timeDiff(e,t){let r=e instanceof $t.Literal?e.value:e,i=t instanceof $t.Literal?t.value:t,s=Tt.DateTimeParsing.parseXSDTime(r),a=Tt.DateTimeParsing.parseXSDTime(i);if(s===null)throw new Error(`timeDiff: invalid first time: '${r}'`);if(a===null)throw new Error(`timeDiff: invalid second time: '${i}'`);let c=s-a,l=Tt.DateTimeParsing.formatDayTimeDuration(c);return new $t.Literal(l,new ef.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}static isDayTimeDuration(e){return e instanceof $t.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#dayTimeDuration":!1}static isDate(e){return e instanceof $t.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#date":!1}static isYearMonthDuration(e){return e instanceof $t.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#yearMonthDuration":!1}static isTime(e){return e instanceof $t.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#time":!1}static dateDiff(e,t){let r=e instanceof $t.Literal?e.value:e,i=t instanceof $t.Literal?t.value:t,s=Tt.DateTimeParsing.parseXSDDate(r),a=Tt.DateTimeParsing.parseXSDDate(i);if(s===null)throw new Error(`dateDiff: invalid first date: '${r}'`);if(a===null)throw new Error(`dateDiff: invalid second date: '${i}'`);let c=s.getTime()-a.getTime(),l=Math.round(c/(1440*60*1e3)),u=Tt.DateTimeParsing.formatDateDuration(l);return new $t.Literal(u,new ef.IRI("http://www.w3.org/2001/XMLSchema#dayTimeDuration"))}};xp.DateTimeAccessors=C1});var Ip=S(Cp=>{"use strict";Object.defineProperty(Cp,"__esModule",{value:!0});Cp.DateTimeFunctions=void 0;var zc=Tp(),lr=px(),gt=mx(),I1=class{static{o(this,"DateTimeFunctions")}static parseDate(e){return zc.DateTimeParsing.parseDate(e)}static parseDayTimeDuration(e){return zc.DateTimeParsing.parseDayTimeDuration(e)}static formatDayTimeDuration(e){return zc.DateTimeParsing.formatDayTimeDuration(e)}static xsdDayTimeDuration(e){return zc.DateTimeParsing.xsdDayTimeDuration(e)}static parseYearMonthDuration(e){return zc.DateTimeParsing.parseYearMonthDuration(e)}static formatYearMonthDuration(e){return zc.DateTimeParsing.formatYearMonthDuration(e)}static year(e){return gt.DateTimeAccessors.year(e)}static month(e){return gt.DateTimeAccessors.month(e)}static day(e){return gt.DateTimeAccessors.day(e)}static hours(e){return gt.DateTimeAccessors.hours(e)}static minutes(e){return gt.DateTimeAccessors.minutes(e)}static seconds(e){return gt.DateTimeAccessors.seconds(e)}static durationDays(e){return gt.DateTimeAccessors.durationDays(e)}static durationHours(e){return gt.DateTimeAccessors.durationHours(e)}static durationMinutes(e){return gt.DateTimeAccessors.durationMinutes(e)}static durationSeconds(e){return gt.DateTimeAccessors.durationSeconds(e)}static durationYears(e){return gt.DateTimeAccessors.durationYears(e)}static durationMonths(e){return gt.DateTimeAccessors.durationMonths(e)}static timezone(e){return gt.DateTimeAccessors.timezone(e)}static tz(e){return gt.DateTimeAccessors.tz(e)}static adjust(e,t){return gt.DateTimeAccessors.adjust(e,t)}static now(){return gt.DateTimeAccessors.now()}static dateBefore(e,t){return gt.DateTimeAccessors.dateBefore(e,t)}static dateAfter(e,t){return gt.DateTimeAccessors.dateAfter(e,t)}static dateInRange(e,t,r){return gt.DateTimeAccessors.dateInRange(e,t,r)}static compareDurations(e,t,r){return gt.DateTimeAccessors.compareDurations(e,t,r)}static dateDiffMinutes(e,t){return gt.DateTimeAccessors.dateDiffMinutes(e,t)}static dateDiffHours(e,t){return gt.DateTimeAccessors.dateDiffHours(e,t)}static timeDiff(e,t){return gt.DateTimeAccessors.timeDiff(e,t)}static dateDiff(e,t){return gt.DateTimeAccessors.dateDiff(e,t)}static isDayTimeDuration(e){return gt.DateTimeAccessors.isDayTimeDuration(e)}static isDate(e){return gt.DateTimeAccessors.isDate(e)}static isYearMonthDuration(e){return gt.DateTimeAccessors.isYearMonthDuration(e)}static isTime(e){return gt.DateTimeAccessors.isTime(e)}static dateTimeDiff(e,t){return lr.DateTimeArithmetic.dateTimeDiff(e,t)}static dateTimeAdd(e,t){return lr.DateTimeArithmetic.dateTimeAdd(e,t)}static dateTimeSubtract(e,t){return lr.DateTimeArithmetic.dateTimeSubtract(e,t)}static dateAdd(e,t){return lr.DateTimeArithmetic.dateAdd(e,t)}static dateSubtract(e,t){return lr.DateTimeArithmetic.dateSubtract(e,t)}static dateTimeAddYearMonth(e,t){return lr.DateTimeArithmetic.dateTimeAddYearMonth(e,t)}static dateTimeSubtractYearMonth(e,t){return lr.DateTimeArithmetic.dateTimeSubtractYearMonth(e,t)}static dateAddYearMonth(e,t){return lr.DateTimeArithmetic.dateAddYearMonth(e,t)}static dateSubtractYearMonth(e,t){return lr.DateTimeArithmetic.dateSubtractYearMonth(e,t)}static durationAdd(e,t){return lr.DateTimeArithmetic.durationAdd(e,t)}static durationSubtract(e,t){return lr.DateTimeArithmetic.durationSubtract(e,t)}static durationMultiply(e,t){return lr.DateTimeArithmetic.durationMultiply(e,t)}static durationDivide(e,t){return lr.DateTimeArithmetic.durationDivide(e,t)}static yearMonthDurationAdd(e,t){return lr.DateTimeArithmetic.yearMonthDurationAdd(e,t)}static yearMonthDurationSubtract(e,t){return lr.DateTimeArithmetic.yearMonthDurationSubtract(e,t)}static durationToDays(e){return lr.DateTimeArithmetic.durationToDays(e)}static durationToHours(e){return lr.DateTimeArithmetic.durationToHours(e)}static durationToMinutes(e){return lr.DateTimeArithmetic.durationToMinutes(e)}static durationToSeconds(e){return lr.DateTimeArithmetic.durationToSeconds(e)}};Cp.DateTimeFunctions=I1});var gx=S(Pp=>{"use strict";Object.defineProperty(Pp,"__esModule",{value:!0});Pp.LogicalFunctions=void 0;var j9=Ae(),Hc=Ne(),$9=qt(),Rp=Ip(),R1=class n{static{o(this,"LogicalFunctions")}static compare(e,t,r){if(n.isDayTimeDurationValue(e)&&n.isDayTimeDurationValue(t))return Rp.DateTimeFunctions.compareDurations(e instanceof Hc.Literal?e:String(e),t instanceof Hc.Literal?t:String(t),r);if(n.isDayTimeDurationValue(e)&&typeof t=="string"&&/^-?P/.test(t))return Rp.DateTimeFunctions.compareDurations(e instanceof Hc.Literal?e:String(e),t,r);if(typeof e=="string"&&/^-?P/.test(e)&&n.isDayTimeDurationValue(t))return Rp.DateTimeFunctions.compareDurations(e,t instanceof Hc.Literal?t:String(t),r);let i=n.toComparableValue(e),s=n.toComparableValue(t);switch(r){case"=":return i===s;case"!=":return i!==s;case"<":return i<s;case">":return i>s;case"<=":return i<=s;case">=":return i>=s;default:throw new Error(`Unknown comparison operator: ${r}`)}}static isDayTimeDurationValue(e){return e instanceof Hc.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#dayTimeDuration":!1}static toComparableValue(e){if(typeof e=="string"||typeof e=="number")return e;if(e instanceof Hc.Literal){let t=e.datatype?.value;if(t?.includes("#integer")||t?.includes("#decimal")||t?.includes("#double")){let r=parseFloat(e.value);if(!isNaN(r))return r}if(t==="http://www.w3.org/2001/XMLSchema#dayTimeDuration")try{return Rp.DateTimeFunctions.parseDayTimeDuration(e.value)}catch{return e.value}return e.value}return e instanceof j9.IRI?e.value:e instanceof $9.BlankNode?e.id:String(e)}static logicalAnd(e){return e.every(t=>t===!0)}static logicalOr(e){return e.some(t=>t===!0)}static logicalNot(e){return!e}static coalesce(e){for(let t of e)if(t!=null)return t}static if(e,t,r){return e?t:r}};Pp.LogicalFunctions=R1});var yx=S(Op=>{"use strict";Object.defineProperty(Op,"__esModule",{value:!0});Op.RDFTermFunctions=void 0;var kr=Ae(),vt=Ne(),pi=qt(),Qc=Nu(),P1=Tn(),O1=class n{static{o(this,"RDFTermFunctions")}static datatype(e){if(e===void 0)throw new Error("DATATYPE: argument is undefined");if(e instanceof vt.Literal)return e.datatype?e.datatype:e.language?new kr.IRI("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"):new kr.IRI("http://www.w3.org/2001/XMLSchema#string");throw new Error("DATATYPE: argument must be a literal")}static bound(e){return e!==void 0}static isIRI(e){return e===void 0?!1:e instanceof kr.IRI}static isBlank(e){return e===void 0?!1:e instanceof pi.BlankNode}static isLiteral(e){return e===void 0?!1:e instanceof vt.Literal}static isTriple(e){return e===void 0?!1:e instanceof Qc.QuotedTriple}static hasLangdir(e){return e===void 0||!(e instanceof vt.Literal)?!1:!!e.language&&!!e.direction}static isNumeric(e){if(e===void 0||!(e instanceof vt.Literal))return!1;let t=e.datatype?.value;return t?["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float","http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedShort","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#positiveInteger"].includes(t):!1}static xsdDateTime(e){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`xsd:dateTime: invalid date string '${e}'`);return new vt.Literal(t.toISOString(),new kr.IRI("http://www.w3.org/2001/XMLSchema#dateTime"))}static xsdInteger(e){let t=parseInt(e,10);if(isNaN(t))throw new Error(`xsd:integer: cannot convert '${e}' to integer`);return new vt.Literal(String(t),new kr.IRI("http://www.w3.org/2001/XMLSchema#integer"))}static xsdDecimal(e){let t=parseFloat(e);if(isNaN(t))throw new Error(`xsd:decimal: cannot convert '${e}' to decimal`);return new vt.Literal(String(t),new kr.IRI("http://www.w3.org/2001/XMLSchema#decimal"))}static sameTerm(e,t){if(e===void 0&&t===void 0)return!0;if(e===void 0||t===void 0||e.constructor!==t.constructor)return!1;if(e instanceof kr.IRI&&t instanceof kr.IRI)return e.value===t.value;if(e instanceof pi.BlankNode&&t instanceof pi.BlankNode)return e.id===t.id;if(e instanceof vt.Literal&&t instanceof vt.Literal){if(e.value!==t.value||e.language!==t.language)return!1;let r=e.datatype?.value,i=t.datatype?.value;return r===i}return!1}static iri(e){if(e===void 0)throw new Error("IRI: argument is undefined");if(e instanceof kr.IRI)return e;if(e instanceof vt.Literal)return new kr.IRI(e.value);throw e instanceof pi.BlankNode?new Error("IRI: cannot convert blank node to IRI"):new Error("IRI: unsupported term type")}static uri(e){return n.iri(e)}static bnode(e){if(e===void 0){let t=`b${(0,P1.v4)().replace(/-/g,"").substring(0,12)}`;return new pi.BlankNode(t)}if(e instanceof vt.Literal)return new pi.BlankNode(e.value);if(e instanceof pi.BlankNode)return e;throw new Error("BNODE: argument must be a string literal or omitted")}static strdt(e,t){if(e===void 0)throw new Error("STRDT: lexical form is undefined");if(t===void 0)throw new Error("STRDT: datatype IRI is undefined");let r;if(e instanceof vt.Literal){if(e.language)throw new Error("STRDT: lexical form must not have a language tag");r=e.value}else if(typeof e=="string")r=e;else throw new Error("STRDT: lexical form must be a string literal");let i;if(t instanceof kr.IRI)i=t;else if(t instanceof vt.Literal)i=new kr.IRI(t.value);else throw new Error("STRDT: datatype must be an IRI");return new vt.Literal(r,i)}static strlang(e,t){if(e===void 0)throw new Error("STRLANG: lexical form is undefined");if(t===void 0)throw new Error("STRLANG: language tag is undefined");let r;if(e instanceof vt.Literal){if(e.language)throw new Error("STRLANG: lexical form must not already have a language tag");r=e.value}else if(typeof e=="string")r=e;else throw new Error("STRLANG: lexical form must be a string literal");let i;if(t instanceof vt.Literal)i=t.value;else if(typeof t=="string")i=t;else throw new Error("STRLANG: language tag must be a string literal");if(i==="")throw new Error("STRLANG: language tag cannot be empty");return new vt.Literal(r,void 0,i)}static strlangdir(e,t,r){if(e===void 0)throw new Error("STRLANGDIR: lexical form is undefined");if(t===void 0)throw new Error("STRLANGDIR: language tag is undefined");if(r===void 0)throw new Error("STRLANGDIR: direction is undefined");let i;if(e instanceof vt.Literal){if(e.language)throw new Error("STRLANGDIR: lexical form must not already have a language tag");i=e.value}else if(typeof e=="string")i=e;else throw new Error("STRLANGDIR: lexical form must be a string literal");let s;if(t instanceof vt.Literal)s=t.value;else if(typeof t=="string")s=t;else throw new Error("STRLANGDIR: language tag must be a string literal");if(s==="")throw new Error("STRLANGDIR: language tag cannot be empty");let a;if(r instanceof vt.Literal)a=r.value.toLowerCase();else throw new Error("STRLANGDIR: direction must be a string literal");if(a!=="ltr"&&a!=="rtl")throw new Error(`STRLANGDIR: invalid direction '${a}'. Must be 'ltr' or 'rtl'`);return new vt.Literal(i,void 0,s,a)}static uuid(){let e=(0,P1.v4)();return new kr.IRI(`urn:uuid:${e}`)}static struuid(){let e=(0,P1.v4)();return new vt.Literal(e)}static triple(e,t,r){if(e===void 0)throw new Error("TRIPLE: subject is undefined");if(t===void 0)throw new Error("TRIPLE: predicate is undefined");if(r===void 0)throw new Error("TRIPLE: object is undefined");if(e instanceof vt.Literal)throw new Error("TRIPLE: subject must be IRI, BlankNode, or QuotedTriple, got Literal");if(!(t instanceof kr.IRI)){let c=t instanceof vt.Literal?"Literal":t instanceof pi.BlankNode?"BlankNode":t instanceof Qc.QuotedTriple?"QuotedTriple":typeof t;throw new Error(`TRIPLE: predicate must be IRI, got ${c}`)}let i=e,s=t,a=r;return new Qc.QuotedTriple(i,s,a)}static subject(e){if(e===void 0)throw new Error("SUBJECT: argument is undefined");if(!(e instanceof Qc.QuotedTriple)){let t=e instanceof kr.IRI?"IRI":e instanceof vt.Literal?"Literal":e instanceof pi.BlankNode?"BlankNode":typeof e;throw new Error(`SUBJECT: argument must be QuotedTriple, got ${t}`)}return e.subject}static predicate(e){if(e===void 0)throw new Error("PREDICATE: argument is undefined");if(!(e instanceof Qc.QuotedTriple)){let t=e instanceof kr.IRI?"IRI":e instanceof vt.Literal?"Literal":e instanceof pi.BlankNode?"BlankNode":typeof e;throw new Error(`PREDICATE: argument must be QuotedTriple, got ${t}`)}return e.predicate}static object(e){if(e===void 0)throw new Error("OBJECT: argument is undefined");if(!(e instanceof Qc.QuotedTriple)){let t=e instanceof kr.IRI?"IRI":e instanceof vt.Literal?"Literal":e instanceof pi.BlankNode?"BlankNode":typeof e;throw new Error(`OBJECT: argument must be QuotedTriple, got ${t}`)}return e.object}};Op.RDFTermFunctions=O1});var _x=S(Fp=>{"use strict";Object.defineProperty(Fp,"__esModule",{value:!0});Fp.HashFunctions=void 0;var F1=class{static{o(this,"HashFunctions")}static md5(e){return require("crypto").createHash("md5").update(e).digest("hex")}static sha1(e){return require("crypto").createHash("sha1").update(e).digest("hex")}static sha256(e){return require("crypto").createHash("sha256").update(e).digest("hex")}static sha384(e){return require("crypto").createHash("sha384").update(e).digest("hex")}static sha512(e){return require("crypto").createHash("sha512").update(e).digest("hex")}};Fp.HashFunctions=F1});var Np=S(Dp=>{"use strict";Object.defineProperty(Dp,"__esModule",{value:!0});Dp.BuiltInFunctions=void 0;var ur=dx(),ja=hx(),le=Ip(),Kc=gx(),Ft=yx(),tf=_x(),D1=class{static{o(this,"BuiltInFunctions")}static str(...e){return ur.StringFunctions.str(...e)}static lang(...e){return ur.StringFunctions.lang(...e)}static langdir(...e){return ur.StringFunctions.langdir(...e)}static langMatches(...e){return ur.StringFunctions.langMatches(...e)}static regex(...e){return ur.StringFunctions.regex(...e)}static contains(...e){return ur.StringFunctions.contains(...e)}static strStarts(...e){return ur.StringFunctions.strStarts(...e)}static strEnds(...e){return ur.StringFunctions.strEnds(...e)}static strlen(...e){return ur.StringFunctions.strlen(...e)}static ucase(...e){return ur.StringFunctions.ucase(...e)}static lcase(...e){return ur.StringFunctions.lcase(...e)}static substr(...e){return ur.StringFunctions.substr(...e)}static strBefore(...e){return ur.StringFunctions.strBefore(...e)}static strAfter(...e){return ur.StringFunctions.strAfter(...e)}static concat(...e){return ur.StringFunctions.concat(...e)}static replace(...e){return ur.StringFunctions.replace(...e)}static encodeForUri(...e){return ur.StringFunctions.encodeForUri(...e)}static normalize(...e){return ur.StringFunctions.normalize(...e)}static fold(...e){return ur.StringFunctions.fold(...e)}static abs(...e){return ja.MathFunctions.abs(...e)}static round(...e){return ja.MathFunctions.round(...e)}static ceil(...e){return ja.MathFunctions.ceil(...e)}static floor(...e){return ja.MathFunctions.floor(...e)}static rand(){return ja.MathFunctions.rand()}static msToMinutes(...e){return ja.MathFunctions.msToMinutes(...e)}static msToHours(...e){return ja.MathFunctions.msToHours(...e)}static msToSeconds(...e){return ja.MathFunctions.msToSeconds(...e)}static parseDate(...e){return le.DateTimeFunctions.parseDate(...e)}static dateBefore(...e){return le.DateTimeFunctions.dateBefore(...e)}static dateAfter(...e){return le.DateTimeFunctions.dateAfter(...e)}static dateInRange(...e){return le.DateTimeFunctions.dateInRange(...e)}static dateDiffMinutes(...e){return le.DateTimeFunctions.dateDiffMinutes(...e)}static dateDiffHours(...e){return le.DateTimeFunctions.dateDiffHours(...e)}static year(...e){return le.DateTimeFunctions.year(...e)}static month(...e){return le.DateTimeFunctions.month(...e)}static day(...e){return le.DateTimeFunctions.day(...e)}static hours(...e){return le.DateTimeFunctions.hours(...e)}static minutes(...e){return le.DateTimeFunctions.minutes(...e)}static seconds(...e){return le.DateTimeFunctions.seconds(...e)}static timezone(...e){return le.DateTimeFunctions.timezone(...e)}static tz(...e){return le.DateTimeFunctions.tz(...e)}static now(){return le.DateTimeFunctions.now()}static parseDayTimeDuration(...e){return le.DateTimeFunctions.parseDayTimeDuration(...e)}static formatDayTimeDuration(...e){return le.DateTimeFunctions.formatDayTimeDuration(...e)}static xsdDayTimeDuration(...e){return le.DateTimeFunctions.xsdDayTimeDuration(...e)}static compareDurations(...e){return le.DateTimeFunctions.compareDurations(...e)}static isDayTimeDuration(...e){return le.DateTimeFunctions.isDayTimeDuration(...e)}static isDate(...e){return le.DateTimeFunctions.isDate(...e)}static dateDiff(...e){return le.DateTimeFunctions.dateDiff(...e)}static dateTimeDiff(...e){return le.DateTimeFunctions.dateTimeDiff(...e)}static dateTimeAdd(...e){return le.DateTimeFunctions.dateTimeAdd(...e)}static dateTimeSubtract(...e){return le.DateTimeFunctions.dateTimeSubtract(...e)}static dateAdd(...e){return le.DateTimeFunctions.dateAdd(...e)}static dateSubtract(...e){return le.DateTimeFunctions.dateSubtract(...e)}static parseYearMonthDuration(...e){return le.DateTimeFunctions.parseYearMonthDuration(...e)}static isYearMonthDuration(...e){return le.DateTimeFunctions.isYearMonthDuration(...e)}static dateTimeAddYearMonth(...e){return le.DateTimeFunctions.dateTimeAddYearMonth(...e)}static dateTimeSubtractYearMonth(...e){return le.DateTimeFunctions.dateTimeSubtractYearMonth(...e)}static dateAddYearMonth(...e){return le.DateTimeFunctions.dateAddYearMonth(...e)}static dateSubtractYearMonth(...e){return le.DateTimeFunctions.dateSubtractYearMonth(...e)}static durationAdd(...e){return le.DateTimeFunctions.durationAdd(...e)}static durationSubtract(...e){return le.DateTimeFunctions.durationSubtract(...e)}static durationMultiply(...e){return le.DateTimeFunctions.durationMultiply(...e)}static durationDivide(...e){return le.DateTimeFunctions.durationDivide(...e)}static formatYearMonthDuration(...e){return le.DateTimeFunctions.formatYearMonthDuration(...e)}static yearMonthDurationAdd(...e){return le.DateTimeFunctions.yearMonthDurationAdd(...e)}static yearMonthDurationSubtract(...e){return le.DateTimeFunctions.yearMonthDurationSubtract(...e)}static durationYears(...e){return le.DateTimeFunctions.durationYears(...e)}static durationMonths(...e){return le.DateTimeFunctions.durationMonths(...e)}static durationToDays(...e){return le.DateTimeFunctions.durationToDays(...e)}static durationToHours(...e){return le.DateTimeFunctions.durationToHours(...e)}static durationToMinutes(...e){return le.DateTimeFunctions.durationToMinutes(...e)}static durationToSeconds(...e){return le.DateTimeFunctions.durationToSeconds(...e)}static durationDays(...e){return le.DateTimeFunctions.durationDays(...e)}static durationHours(...e){return le.DateTimeFunctions.durationHours(...e)}static durationMinutes(...e){return le.DateTimeFunctions.durationMinutes(...e)}static durationSeconds(...e){return le.DateTimeFunctions.durationSeconds(...e)}static adjust(...e){return le.DateTimeFunctions.adjust(...e)}static isTime(...e){return le.DateTimeFunctions.isTime(...e)}static timeDiff(...e){return le.DateTimeFunctions.timeDiff(...e)}static compare(...e){return Kc.LogicalFunctions.compare(...e)}static logicalAnd(...e){return Kc.LogicalFunctions.logicalAnd(...e)}static logicalOr(...e){return Kc.LogicalFunctions.logicalOr(...e)}static logicalNot(...e){return Kc.LogicalFunctions.logicalNot(...e)}static coalesce(...e){return Kc.LogicalFunctions.coalesce(...e)}static if(...e){return Kc.LogicalFunctions.if(...e)}static datatype(...e){return Ft.RDFTermFunctions.datatype(...e)}static bound(...e){return Ft.RDFTermFunctions.bound(...e)}static isIRI(...e){return Ft.RDFTermFunctions.isIRI(...e)}static isBlank(...e){return Ft.RDFTermFunctions.isBlank(...e)}static isLiteral(...e){return Ft.RDFTermFunctions.isLiteral(...e)}static isTriple(...e){return Ft.RDFTermFunctions.isTriple(...e)}static isNumeric(...e){return Ft.RDFTermFunctions.isNumeric(...e)}static hasLangdir(...e){return Ft.RDFTermFunctions.hasLangdir(...e)}static sameTerm(...e){return Ft.RDFTermFunctions.sameTerm(...e)}static iri(...e){return Ft.RDFTermFunctions.iri(...e)}static uri(...e){return Ft.RDFTermFunctions.uri(...e)}static bnode(...e){return Ft.RDFTermFunctions.bnode(...e)}static strdt(...e){return Ft.RDFTermFunctions.strdt(...e)}static strlang(...e){return Ft.RDFTermFunctions.strlang(...e)}static strlangdir(...e){return Ft.RDFTermFunctions.strlangdir(...e)}static uuid(){return Ft.RDFTermFunctions.uuid()}static struuid(){return Ft.RDFTermFunctions.struuid()}static xsdDateTime(...e){return Ft.RDFTermFunctions.xsdDateTime(...e)}static xsdInteger(...e){return Ft.RDFTermFunctions.xsdInteger(...e)}static xsdDecimal(...e){return Ft.RDFTermFunctions.xsdDecimal(...e)}static triple(...e){return Ft.RDFTermFunctions.triple(...e)}static subject(...e){return Ft.RDFTermFunctions.subject(...e)}static predicate(...e){return Ft.RDFTermFunctions.predicate(...e)}static object(...e){return Ft.RDFTermFunctions.object(...e)}static md5(...e){return tf.HashFunctions.md5(...e)}static sha1(...e){return tf.HashFunctions.sha1(...e)}static sha256(...e){return tf.HashFunctions.sha256(...e)}static sha384(...e){return tf.HashFunctions.sha384(...e)}static sha512(...e){return tf.HashFunctions.sha512(...e)}};Dp.BuiltInFunctions=D1});var rf=S(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});fs.ExoQLBudgetExceededError=fs.ExoQLCycleError=fs.ExoQLEvalDisabledError=fs.ExoQLForbiddenKeywordError=void 0;var N1=class extends Error{static{o(this,"ExoQLForbiddenKeywordError")}constructor(e,t){super(t??`ExoQLForbiddenKeywordError: keyword "${e}" is not permitted by the exoql__Query AST allowlist`),this.name="ExoQLForbiddenKeywordError",this.keyword=e}};fs.ExoQLForbiddenKeywordError=N1;var L1=class extends Error{static{o(this,"ExoQLEvalDisabledError")}constructor(e){super(e??"ExoQLEvalDisabledError: exoql.eval.enabled is false (default). Flip the feature flag to opt in."),this.name="ExoQLEvalDisabledError"}};fs.ExoQLEvalDisabledError=L1;var k1=class extends Error{static{o(this,"ExoQLCycleError")}constructor(e,t){super(t??`ExoQLCycleError: cycle detected in nested exo:eval invocations: ${e.join(" \u2192 ")}`),this.name="ExoQLCycleError",this.path=e}};fs.ExoQLCycleError=k1;var M1=class extends Error{static{o(this,"ExoQLBudgetExceededError")}constructor(e,t,r,i){super(i??`ExoQLBudgetExceededError: ${e} budget exceeded (limit=${t}, observed=${r})`),this.name="ExoQLBudgetExceededError",this.budget=e,this.limit=t,this.observed=r}};fs.ExoQLBudgetExceededError=M1});var Cx=S(M=>{"use strict";Object.defineProperty(M,"__esModule",{value:!0});M.functionHandlers=void 0;var k=Np();M.functionHandlers=new Map;M.functionHandlers.set("str",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.str(t)});M.functionHandlers.set("lang",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.lang(t)});M.functionHandlers.set("langmatches",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.langMatches(t,r)});M.functionHandlers.set("contains",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.contains(t,r)});M.functionHandlers.set("strstarts",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.strStarts(t,r)});M.functionHandlers.set("strends",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.strEnds(t,r)});M.functionHandlers.set("strlen",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.strlen(t)});M.functionHandlers.set("ucase",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.ucase(t)});M.functionHandlers.set("lcase",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.lcase(t)});M.functionHandlers.set("substr",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=Number(e.evaluateExpression(n[1],e.solution));if(n[2]){let i=Number(e.evaluateExpression(n[2],e.solution));return k.BuiltInFunctions.substr(t,r,i)}return k.BuiltInFunctions.substr(t,r)});M.functionHandlers.set("strbefore",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.strBefore(t,r)});M.functionHandlers.set("strafter",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.strAfter(t,r)});M.functionHandlers.set("concat",(n,e)=>{let t=n.map(r=>e.getStringValue(e.evaluateExpression(r,e.solution)));return k.BuiltInFunctions.concat(...t)});M.functionHandlers.set("replace",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=e.getStringValue(e.evaluateExpression(n[2],e.solution)),s=n[3]?e.getStringValue(e.evaluateExpression(n[3],e.solution)):void 0;return k.BuiltInFunctions.replace(t,r,i,s)});M.functionHandlers.set("regex",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=n[2]?e.getStringValue(e.evaluateExpression(n[2],e.solution)):void 0;return k.BuiltInFunctions.regex(t,r,i)});M.functionHandlers.set("encode_for_uri",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.encodeForUri(t)});M.functionHandlers.set("datatype",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.datatype(t).value});M.functionHandlers.set("bound",(n,e)=>{let t=n[0];if(t.type==="variable"&&t.name){let r=e.solution.get(t.name);return k.BuiltInFunctions.bound(r)}return!0});var Sx=o((n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isIRI(t)},"isIriHandler");M.functionHandlers.set("isiri",Sx);M.functionHandlers.set("isuri",Sx);M.functionHandlers.set("isblank",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isBlank(t)});M.functionHandlers.set("isliteral",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isLiteral(t)});M.functionHandlers.set("isnumeric",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isNumeric(t)});M.functionHandlers.set("haslangdir",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.hasLangdir(t)});M.functionHandlers.set("istriple",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.isTriple(t)});M.functionHandlers.set("sameterm",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution),r=e.getTermFromExpression(n[1],e.solution);return k.BuiltInFunctions.sameTerm(t,r)});M.functionHandlers.set("abs",(n,e)=>{let t=Number(e.getStringValue(e.evaluateExpression(n[0],e.solution)));return k.BuiltInFunctions.abs(t)});M.functionHandlers.set("round",(n,e)=>{let t=Number(e.getStringValue(e.evaluateExpression(n[0],e.solution)));return k.BuiltInFunctions.round(t)});M.functionHandlers.set("ceil",(n,e)=>{let t=Number(e.getStringValue(e.evaluateExpression(n[0],e.solution)));return k.BuiltInFunctions.ceil(t)});M.functionHandlers.set("floor",(n,e)=>{let t=Number(e.getStringValue(e.evaluateExpression(n[0],e.solution)));return k.BuiltInFunctions.floor(t)});M.functionHandlers.set("rand",()=>k.BuiltInFunctions.rand());M.functionHandlers.set("parsedate",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.parseDate(t)});M.functionHandlers.set("datebefore",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.dateBefore(t,r)});M.functionHandlers.set("dateafter",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.dateAfter(t,r)});M.functionHandlers.set("dateinrange",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=e.getStringValue(e.evaluateExpression(n[2],e.solution));return k.BuiltInFunctions.dateInRange(t,r,i)});M.functionHandlers.set("datediffminutes",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.dateDiffMinutes(t,r)});M.functionHandlers.set("datediffhours",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution));return k.BuiltInFunctions.dateDiffHours(t,r)});var Yc=o((n,e,t)=>(r,i)=>{let s=i.evaluateExpression(r[0],i.solution);return e&&i.isYearMonthDurationValue(s)?e(s):t&&i.isDayTimeDurationValue(s)?t(s):n(i.getStringValue(s))},"createDateTimeAccessor"),vx=Yc(k.BuiltInFunctions.year.bind(k.BuiltInFunctions),k.BuiltInFunctions.durationYears.bind(k.BuiltInFunctions),null);M.functionHandlers.set("year",vx);M.functionHandlers.set("years",vx);var bx=Yc(k.BuiltInFunctions.month.bind(k.BuiltInFunctions),k.BuiltInFunctions.durationMonths.bind(k.BuiltInFunctions),null);M.functionHandlers.set("month",bx);M.functionHandlers.set("months",bx);var wx=Yc(k.BuiltInFunctions.day.bind(k.BuiltInFunctions),null,k.BuiltInFunctions.durationDays.bind(k.BuiltInFunctions));M.functionHandlers.set("day",wx);M.functionHandlers.set("days",wx);M.functionHandlers.set("hours",Yc(k.BuiltInFunctions.hours.bind(k.BuiltInFunctions),null,k.BuiltInFunctions.durationHours.bind(k.BuiltInFunctions)));M.functionHandlers.set("minutes",Yc(k.BuiltInFunctions.minutes.bind(k.BuiltInFunctions),null,k.BuiltInFunctions.durationMinutes.bind(k.BuiltInFunctions)));M.functionHandlers.set("seconds",Yc(k.BuiltInFunctions.seconds.bind(k.BuiltInFunctions),null,k.BuiltInFunctions.durationSeconds.bind(k.BuiltInFunctions)));M.functionHandlers.set("timezone",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.timezone(t)});M.functionHandlers.set("tz",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.tz(t)});M.functionHandlers.set("adjust",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution),r=n.length>1?e.evaluateExpression(n[1],e.solution):void 0;return k.BuiltInFunctions.adjust(t,r)});M.functionHandlers.set("now",()=>k.BuiltInFunctions.now());var Ex=o((n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.xsdDateTime(e.getStringValue(t))},"dateTimeHandler");M.functionHandlers.set("datetime",Ex);M.functionHandlers.set("xsd:datetime",Ex);var Tx=o((n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.xsdInteger(e.getStringValue(t))},"integerHandler");M.functionHandlers.set("integer",Tx);M.functionHandlers.set("xsd:integer",Tx);var Ax=o((n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.xsdDecimal(e.getStringValue(t))},"decimalHandler");M.functionHandlers.set("decimal",Ax);M.functionHandlers.set("xsd:decimal",Ax);var xx=o((n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.xsdDayTimeDuration(e.getStringValue(t))},"dayTimeDurationHandler");M.functionHandlers.set("daytimeduration",xx);M.functionHandlers.set("xsd:daytimeduration",xx);M.functionHandlers.set("durationtodays",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationToDays(t)});M.functionHandlers.set("durationtohours",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationToHours(t)});M.functionHandlers.set("durationtominutes",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationToMinutes(t)});M.functionHandlers.set("durationtoseconds",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationToSeconds(t)});M.functionHandlers.set("durationdays",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationDays(t)});M.functionHandlers.set("durationhours",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationHours(t)});M.functionHandlers.set("durationminutes",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationMinutes(t)});M.functionHandlers.set("durationseconds",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationSeconds(t)});M.functionHandlers.set("durationyears",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationYears(t)});M.functionHandlers.set("durationmonths",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution);return k.BuiltInFunctions.durationMonths(t)});M.functionHandlers.set("datetimediff",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution),r=e.evaluateExpression(n[1],e.solution);return k.BuiltInFunctions.dateTimeDiff(t,r)});M.functionHandlers.set("datetimeadd",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution),r=e.evaluateExpression(n[1],e.solution);return k.BuiltInFunctions.dateTimeAdd(t,r)});M.functionHandlers.set("datetimesubtract",(n,e)=>{let t=e.evaluateExpression(n[0],e.solution),r=e.evaluateExpression(n[1],e.solution);return k.BuiltInFunctions.dateTimeSubtract(t,r)});M.functionHandlers.set("mstominutes",(n,e)=>{let t=Number(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.msToMinutes(t)});M.functionHandlers.set("mstohours",(n,e)=>{let t=Number(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.msToHours(t)});M.functionHandlers.set("mstoseconds",(n,e)=>{let t=Number(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.msToSeconds(t)});M.functionHandlers.set("md5",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.md5(t)});M.functionHandlers.set("sha1",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.sha1(t)});M.functionHandlers.set("sha256",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.sha256(t)});M.functionHandlers.set("sha384",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.sha384(t)});M.functionHandlers.set("sha512",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution));return k.BuiltInFunctions.sha512(t)});M.functionHandlers.set("subject",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.subject(t)});M.functionHandlers.set("predicate",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.predicate(t)});M.functionHandlers.set("object",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution);return k.BuiltInFunctions.object(t)});M.functionHandlers.set("triple",(n,e)=>{let t=e.getTermFromExpression(n[0],e.solution),r=e.getTermFromExpression(n[1],e.solution),i=e.getTermFromExpression(n[2],e.solution);return k.BuiltInFunctions.triple(t,r,i)});M.functionHandlers.set("days_between",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=new Date(t),s=new Date(r);return Math.floor((s.getTime()-i.getTime())/(1440*60*1e3))});M.functionHandlers.set("minutes_between",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=new Date(t),s=new Date(r);return Math.floor((s.getTime()-i.getTime())/(60*1e3))});M.functionHandlers.set("hours_between",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=new Date(t);return(new Date(r).getTime()-i.getTime())/(3600*1e3)});M.functionHandlers.set("age_days",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=new Date(t);return Math.floor((new Date().getTime()-r.getTime())/(1440*60*1e3))});M.functionHandlers.set("week_number",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=new Date(t),i=new Date(Date.UTC(r.getFullYear(),r.getMonth(),r.getDate()));i.setUTCDate(i.getUTCDate()+4-(i.getUTCDay()||7));let s=new Date(Date.UTC(i.getUTCFullYear(),0,1));return Math.ceil(((i.getTime()-s.getTime())/(1440*60*1e3)+1)/7)});M.functionHandlers.set("format_date",(n,e)=>{let t=e.getStringValue(e.evaluateExpression(n[0],e.solution)),r=e.getStringValue(e.evaluateExpression(n[1],e.solution)),i=new Date(t);return r.replace("YYYY",String(i.getFullYear())).replace("MM",String(i.getMonth()+1).padStart(2,"0")).replace("DD",String(i.getDate()).padStart(2,"0")).replace("HH",String(i.getHours()).padStart(2,"0")).replace("mm",String(i.getMinutes()).padStart(2,"0")).replace("ss",String(i.getSeconds()).padStart(2,"0"))});M.functionHandlers.set("exo:eval",()=>{let{ExoQLEvalDisabledError:n}=rf();throw new n})});var Lp=S(Xc=>{"use strict";Object.defineProperty(Xc,"__esModule",{value:!0});Xc.FilterExecutor=Xc.FilterExecutorError=void 0;var yt=Np(),B9=Cx(),j1=Ae(),ds=Ne(),_r=class extends Error{static{o(this,"FilterExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="FilterExecutorError"}};Xc.FilterExecutorError=_r;var $1=class{static{o(this,"FilterExecutor")}constructor(){this.existsEvaluator=null,this.tripleStore=null,this.uuidCache=new Map}setExistsEvaluator(e){this.existsEvaluator=e}setTripleStore(e){this.tripleStore=e,this.uuidCache.clear()}async*execute(e,t){let r=this.expressionContainsExists(e.expression);for await(let i of t)try{let s;r?s=await this.evaluateExpressionAsync(e.expression,i):s=this.evaluateExpression(e.expression,i),s===!0&&(yield i)}catch{continue}}expressionContainsExists(e){if(!e||typeof e!="object")return!1;if(e.type==="exists")return!0;if(e.type==="logical")return e.operands.some(t=>this.expressionContainsExists(t));if(e.type==="comparison"){let t=e;return this.expressionContainsExists(t.left)||this.expressionContainsExists(t.right)}if(e.type==="arithmetic"){let t=e;return this.expressionContainsExists(t.left)||this.expressionContainsExists(t.right)}if(e.type==="in"){let t=e;return this.expressionContainsExists(t.expression)||t.list.some(r=>this.expressionContainsExists(r))}if(e.type==="function"||e.type==="functionCall"){let t=e;return Array.isArray(t.args)?t.args.some(r=>this.expressionContainsExists(r)):!1}return!1}async executeAll(e,t){let r=[];async function*i(){for(let s of t)yield s}o(i,"generator");for await(let s of this.execute(e,i()))r.push(s);return r}evaluateExpression(e,t){let r=e;if("termType"in e)switch(r.termType){case"Variable":return t.get(r.value);case"Literal":{let i=r.value,s=r.datatype,a=typeof s=="string"?s:s?.value;return a&&i.length>0&&this.shouldPreserveDatatype(a)?new ds.Literal(i,new j1.IRI(a)):i}case"NamedNode":return r.value;default:throw new _r(`Unsupported termType: ${String(r.termType)}`)}switch(e.type){case"comparison":return this.evaluateComparison(e,t);case"logical":return this.evaluateLogical(e,t);case"arithmetic":return this.evaluateArithmetic(e,t);case"function":case"functionCall":return this.evaluateFunction(e,t);case"variable":return t.get(e.name);case"literal":{let i=e;return i.datatype&&i.value.length>0&&this.shouldPreserveDatatype(i.datatype)?new ds.Literal(i.value,new j1.IRI(i.datatype)):i.value}case"in":return this.evaluateIn(e,t);case"exists":throw new _r("EXISTS expressions require async evaluation. Use evaluateExpressionAsync instead.");default:throw new _r(`Unsupported expression type: ${e.type}`)}}async evaluateExpressionAsync(e,t){if(!this.expressionContainsExists(e))return this.evaluateExpression(e,t);if(e.type==="exists")return this.evaluateExists(e,t);if(e.type==="logical")return this.evaluateLogicalAsync(e,t);if(e.type==="comparison"){let r=e,i=await this.evaluateExpressionAsync(r.left,t),s=await this.evaluateExpressionAsync(r.right,t);return yt.BuiltInFunctions.compare(i,s,r.operator)}return e.type==="in"?this.evaluateInAsync(e,t):e.type==="function"||e.type==="functionCall"?this.evaluateFunctionAsync(e,t):this.evaluateExpression(e,t)}async evaluateExists(e,t){if(!this.existsEvaluator)throw new _r("EXISTS evaluator not set. Call setExistsEvaluator before evaluating EXISTS expressions.");let r=await this.existsEvaluator(e.pattern,t);return e.negated?!r:r}async evaluateLogicalAsync(e,t){if(e.operator==="!"){let i=await this.evaluateExpressionAsync(e.operands[0],t);return yt.BuiltInFunctions.logicalNot(i)}let r=[];for(let i of e.operands){let s=await this.evaluateExpressionAsync(i,t);r.push(s)}if(e.operator==="&&")return yt.BuiltInFunctions.logicalAnd(r);if(e.operator==="||")return yt.BuiltInFunctions.logicalOr(r);throw new _r(`Unknown logical operator: ${String(e.operator)}`)}async evaluateInAsync(e,t){let r=await this.evaluateExpressionAsync(e.expression,t),i=!1;for(let s of e.list){let a=await this.evaluateExpressionAsync(s,t);if(yt.BuiltInFunctions.compare(r,a,"=")){i=!0;break}}return e.negated?!i:i}async evaluateFunctionAsync(e,t){let r=e,i=this.extractFunctionName(r.function),s=r.args??[];if(i==="if"){if(s.length!==3)throw new _r("IF requires exactly 3 arguments");let l=await this.evaluateExpressionAsync(s[0],t);return this.toBoolean(l)?this.evaluateExpressionAsync(s[1],t):this.evaluateExpressionAsync(s[2],t)}if(i==="coalesce"){for(let l of s)try{let u=await this.evaluateExpressionAsync(l,t);if(u!=null)return u}catch{continue}return}let a=[];for(let l of s){let u=await this.evaluateExpressionAsync(l,t);a.push(this.wrapAsLiteralExpression(u))}let c={...r,args:a};return this.evaluateFunction(c,t)}wrapAsLiteralExpression(e){return e==null?{type:"literal",value:""}:e!==null&&typeof e=="object"&&"termType"in e?e:e instanceof j1.IRI||e instanceof ds.Literal?{type:"literal",value:e.value}:typeof e=="number"||typeof e=="boolean"||typeof e=="string"?{type:"literal",value:e}:{type:"literal",value:String(e)}}evaluateComparison(e,t){let r=this.evaluateExpression(e.left,t),i=this.evaluateExpression(e.right,t);return yt.BuiltInFunctions.compare(r,i,e.operator)}evaluateLogical(e,t){if(e.operator==="!"){let i=this.evaluateExpression(e.operands[0],t);return yt.BuiltInFunctions.logicalNot(i)}let r=e.operands.map(i=>this.evaluateExpression(i,t));if(e.operator==="&&")return yt.BuiltInFunctions.logicalAnd(r);if(e.operator==="||")return yt.BuiltInFunctions.logicalOr(r);throw new _r(`Unknown logical operator: ${String(e.operator)}`)}evaluateIn(e,t){let r=this.evaluateExpression(e.expression,t),i=e.list.some(s=>{let a=this.evaluateExpression(s,t);return yt.BuiltInFunctions.compare(r,a,"=")});return e.negated?!i:i}evaluateArithmetic(e,t){let r=this.evaluateExpression(e.left,t),i=this.evaluateExpression(e.right,t);if(e.operator==="-"&&this.isDateValue(r)&&this.isDateValue(i))return yt.BuiltInFunctions.dateDiff(r,i);if(e.operator==="-"&&this.isTimeValue(r)&&this.isTimeValue(i))return yt.BuiltInFunctions.timeDiff(r,i);if(e.operator==="-"&&this.isDateTimeValue(r)&&this.isDateTimeValue(i))return yt.BuiltInFunctions.dateTimeDiff(r,i);if(e.operator==="+"&&this.isDateValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.dateAdd(r,i);if(e.operator==="-"&&this.isDateValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.dateSubtract(r,i);if(e.operator==="+"&&this.isDateValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.dateAddYearMonth(r,i);if(e.operator==="-"&&this.isDateValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.dateSubtractYearMonth(r,i);if(e.operator==="+"&&this.isDateTimeValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.dateTimeAdd(r,i);if(e.operator==="-"&&this.isDateTimeValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.dateTimeSubtract(r,i);if(e.operator==="+"&&this.isDateTimeValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.dateTimeAddYearMonth(r,i);if(e.operator==="-"&&this.isDateTimeValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.dateTimeSubtractYearMonth(r,i);if(e.operator==="+"&&this.isDayTimeDurationValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.durationAdd(r,i);if(e.operator==="-"&&this.isDayTimeDurationValue(r)&&this.isDayTimeDurationValue(i))return yt.BuiltInFunctions.durationSubtract(r,i);if(e.operator==="*"&&this.isDayTimeDurationValue(r)&&!this.isDayTimeDurationValue(i)){let c=this.toNumericValue(i);return yt.BuiltInFunctions.durationMultiply(r,c)}if(e.operator==="*"&&!this.isDayTimeDurationValue(r)&&this.isDayTimeDurationValue(i)){let c=this.toNumericValue(r);return yt.BuiltInFunctions.durationMultiply(i,c)}if(e.operator==="/"&&this.isDayTimeDurationValue(r)&&!this.isDayTimeDurationValue(i)){let c=this.toNumericValue(i);if(c===0)throw new _r("Division by zero");return yt.BuiltInFunctions.durationDivide(r,c)}if(e.operator==="+"&&this.isYearMonthDurationValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.yearMonthDurationAdd(r,i);if(e.operator==="-"&&this.isYearMonthDurationValue(r)&&this.isYearMonthDurationValue(i))return yt.BuiltInFunctions.yearMonthDurationSubtract(r,i);let s=this.toNumericValue(r),a=this.toNumericValue(i);switch(e.operator){case"+":return s+a;case"-":return s-a;case"*":return s*a;case"/":if(a===0)throw new _r("Division by zero");return s/a;default:throw new _r(`Unknown arithmetic operator: ${String(e.operator)}`)}}shouldPreserveDatatype(e){return e==="http://www.w3.org/2001/XMLSchema#dateTime"||e==="http://www.w3.org/2001/XMLSchema#date"||e==="http://www.w3.org/2001/XMLSchema#time"||e==="http://www.w3.org/2001/XMLSchema#dayTimeDuration"||e==="http://www.w3.org/2001/XMLSchema#yearMonthDuration"||e==="http://www.w3.org/2001/XMLSchema#duration"}isDayTimeDurationValue(e){return e instanceof ds.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#dayTimeDuration":!1}isYearMonthDurationValue(e){return e instanceof ds.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#yearMonthDuration":!1}toNumericValue(e){if(typeof e=="number")return e;if(e instanceof ds.Literal){let t=e.datatype?.value||"";if(t.includes("#integer")||t.includes("#decimal")||t.includes("#double")||t.includes("#float")){let i=parseFloat(e.value);if(!isNaN(i))return i}let r=parseFloat(e.value);if(!isNaN(r))return r}if(typeof e=="string"){let t=parseFloat(e);if(!isNaN(t))return t}if(e&&typeof e=="object"&&"value"in e){let t=parseFloat(String(e.value));if(!isNaN(t))return t}throw new _r(`Cannot convert to number: ${e}`)}isDateTimeValue(e){if(e instanceof ds.Literal){let t=e.datatype?.value||"";return t.includes("#dateTime")||t.includes("#date")?!0:/^\d{4}-\d{2}-\d{2}(T|\s)/.test(e.value)}return typeof e=="string"?/^\d{4}-\d{2}-\d{2}(T|\s)/.test(e):!1}isDateValue(e){return e instanceof ds.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#date":!1}isTimeValue(e){return e instanceof ds.Literal?(e.datatype?.value||"")==="http://www.w3.org/2001/XMLSchema#time":!1}evaluateFunction(e,t){let r=e,i=this.extractFunctionName(r.function),s=this.evaluateSpecialFunction(i,r.args,t);if(s!==void 0)return s.value;let a=B9.functionHandlers.get(i);if(!a)throw new _r(`Unknown function: ${i}`);let c={evaluateExpression:o((l,u)=>this.evaluateExpression(l,u),"evaluateExpression"),getTermFromExpression:o((l,u)=>this.getTermFromExpression(l,u),"getTermFromExpression"),getStringValue:o(l=>this.getStringValue(l),"getStringValue"),solution:t,isYearMonthDurationValue:o(l=>this.isYearMonthDurationValue(l),"isYearMonthDurationValue"),isDayTimeDurationValue:o(l=>this.isDayTimeDurationValue(l),"isDayTimeDurationValue")};return a(r.args,c)}extractFunctionName(e){if(typeof e=="string")return e.toLowerCase();if(e&&typeof e=="object"&&"value"in e){let t=e.value;return((t.includes("#")?t.split("#").pop():t.split("/").pop())||t).toLowerCase()}throw new _r(`Unknown function format: ${String(e)}`)}evaluateSpecialFunction(e,t,r){switch(e){case"coalesce":for(let i of t)try{let s=this.evaluateExpression(i,r);if(s!=null)return{value:s}}catch{continue}return{value:void 0};case"if":{if(!t||t.length!==3)throw new _r("IF requires exactly 3 arguments");let i=this.evaluateExpression(t[0],r);return{value:this.toBoolean(i)?this.evaluateExpression(t[1],r):this.evaluateExpression(t[2],r)}}case"byuuid":return{value:this.evaluateByUUID({type:"function",function:"byuuid",args:t},r)};default:return}}getTermFromExpression(e,t){let r=e;if(r.type==="variable"&&r.name)return t.get(r.name)}getStringValue(e){return e==null?"":typeof e=="object"&&"value"in e?String(e.value):String(e)}toBoolean(e){if(typeof e=="boolean")return e;if(typeof e=="number")return!isNaN(e)&&e!==0;if(typeof e=="string")return e.length>0;if(e instanceof ds.Literal){let t=e.datatype?.value||"";if(t.includes("#boolean"))return e.value==="true"||e.value==="1";if(t.includes("#integer")||t.includes("#decimal")||t.includes("#double")||t.includes("#float")){let r=parseFloat(e.value);return!isNaN(r)&&r!==0}return e.value.length>0}return!!e}evaluateByUUID(e,t){if(!e.args||e.args.length!==1)throw new _r("exo:byUUID requires exactly 1 argument (UUID string)");let r=this.evaluateExpression(e.args[0],t),i=this.getStringValue(r);if(!i)return;let s=i.toLowerCase();if(this.uuidCache.has(s))return this.uuidCache.get(s)??void 0;if(!this.tripleStore){this.uuidCache.set(s,null);return}if(this.tripleStore.findSubjectsByUUIDSync){let a=this.tripleStore.findSubjectsByUUIDSync(s);if(a.length===0){this.uuidCache.set(s,null);return}let c=a[0];return this.uuidCache.set(s,c),c}this.uuidCache.set(s,null)}cacheUUIDResult(e,t){let r=e.toLowerCase();this.uuidCache.set(r,t)}getCachedUUID(e){let t=e.toLowerCase();if(this.uuidCache.has(t))return this.uuidCache.get(t)}};Xc.FilterExecutor=$1});var V1=S(kp=>{"use strict";Object.defineProperty(kp,"__esModule",{value:!0});kp.OptionalExecutor=void 0;var B1=class{static{o(this,"OptionalExecutor")}async*execute(e,t){let r=[];for await(let s of e)r.push(s);let i=[];for await(let s of t)i.push(s);yield*this.hashJoin(r,i)}async executeAll(e,t){let r=[];for(let i of this.hashJoin(e,t))r.push(i);return r}*hashJoin(e,t){if(e.length===0)return;if(t.length===0){yield*e;return}let r=new Set;for(let l of e)for(let u of l.variables())r.add(u);let i=new Set;for(let l of t)for(let u of l.variables())i.add(u);let s=[];for(let l of r)i.has(l)&&s.push(l);if(s.sort(),s.length===0){yield*this.nestedLoopJoin(e,t);return}let a="\0",c=new Map;for(let l of t){let u=this.computeHashKey(l,s,a),f=c.get(u);f||(f=[],c.set(u,f)),f.push(l)}for(let l of e){let u=this.computeHashKey(l,s,a),f=c.get(u),d=!1;if(f)for(let h of f){let p=l.merge(h);p!==null&&(yield p,d=!0)}d||(yield l)}}computeHashKey(e,t,r){let i=[];for(let s of t){let a=e.get(s);i.push(a!==void 0?a.toString():"UNBOUND")}return i.join(r)}*nestedLoopJoin(e,t){for(let r of e){let i=!1;for(let s of t){let a=r.merge(s);a!==null&&(yield a,i=!0)}i||(yield r)}}};kp.OptionalExecutor=B1});var q1=S(Mp=>{"use strict";Object.defineProperty(Mp,"__esModule",{value:!0});Mp.UnionExecutor=void 0;var U1=class{static{o(this,"UnionExecutor")}async*execute(e,t){let r=new Set;for await(let i of e){let s=this.getSolutionKey(i);r.has(s)||(r.add(s),yield i)}for await(let i of t){let s=this.getSolutionKey(i);r.has(s)||(r.add(s),yield i)}}async executeAll(e,t){let r=[];async function*i(){for(let a of e)yield a}o(i,"generateLeft");async function*s(){for(let a of t)yield a}o(s,"generateRight");for await(let a of this.execute(i(),s()))r.push(a);return r}getSolutionKey(e){let t=e.toJSON();return Object.keys(t).sort().map(i=>`${i}=${t[i]}`).join("|")}};Mp.UnionExecutor=U1});var Ix=S(jp=>{"use strict";Object.defineProperty(jp,"__esModule",{value:!0});jp.MinusExecutor=void 0;var W1=class{static{o(this,"MinusExecutor")}async*execute(e,t){let r=[];for await(let s of e)r.push(s);let i=[];for await(let s of t)i.push(s);for(let s of r){let a=!1;for(let c of i)if(this.areCompatible(s,c)){a=!0;break}a||(yield s)}}async executeAll(e,t){let r=[];async function*i(){for(let a of e)yield a}o(i,"generateLeft");async function*s(){for(let a of t)yield a}o(s,"generateRight");for await(let a of this.execute(i(),s()))r.push(a);return r}areCompatible(e,t){let r=e.variables(),i=new Set(t.variables()),s=r.filter(a=>i.has(a));if(s.length===0)return!1;for(let a of s){let c=e.get(a),l=t.get(a);if(c===void 0||l===void 0||c.toString()!==l.toString())return!1}return!0}};jp.MinusExecutor=W1});var Px=S(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});Jc.ValuesExecutor=Jc.ValuesExecutorError=void 0;var V9=us(),Rx=Ae(),U9=Ne(),$p=class extends Error{static{o(this,"ValuesExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="ValuesExecutorError"}};Jc.ValuesExecutorError=$p;var G1=class{static{o(this,"ValuesExecutor")}async*execute(e){if(e.bindings.length!==0)for(let t of e.bindings)yield this.createSolutionMapping(t)}async executeAll(e){let t=[];for await(let r of this.execute(e))t.push(r);return t}createSolutionMapping(e){let t=new V9.SolutionMapping;for(let[r,i]of Object.entries(e)){let s=this.toRDFTerm(i);t.set(r,s)}return t}toRDFTerm(e){if(e.type==="iri")return new Rx.IRI(e.value);if(e.type==="literal")return new U9.Literal(e.value,e.datatype?new Rx.IRI(e.datatype):void 0,e.language,e.direction);throw new $p(`Unknown term type: ${e.type}`)}};Jc.ValuesExecutor=G1});var z1=S(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});el.CustomAggregateRegistry=el.CustomAggregateError=void 0;var Zc=class extends Error{static{o(this,"CustomAggregateError")}constructor(e,t){super(e),this.iri=t,this.name="CustomAggregateError"}};el.CustomAggregateError=Zc;var Bp=class n{static{o(this,"CustomAggregateRegistry")}constructor(){this.aggregates=new Map}static getInstance(){return n.instance||(n.instance=new n),n.instance}static resetInstance(){n.instance&&n.instance.clear(),n.instance=null}register(e,t){if(!e||typeof e!="string")throw new Zc("Aggregate IRI must be a non-empty string");if(!t||typeof t.init!="function"||typeof t.step!="function"||typeof t.finalize!="function")throw new Zc("Aggregate must implement init(), step(), and finalize() methods",e);if(this.aggregates.has(e))throw new Zc(`Aggregate with IRI "${e}" is already registered`,e);this.aggregates.set(e,t)}unregister(e){return this.aggregates.delete(e)}get(e){return this.aggregates.get(e)}has(e){return this.aggregates.has(e)}getRegisteredIris(){return Array.from(this.aggregates.keys())}clear(){this.aggregates.clear()}get size(){return this.aggregates.size}};el.CustomAggregateRegistry=Bp;Bp.instance=null});var H1=S(Ze=>{"use strict";Object.defineProperty(Ze,"__esModule",{value:!0});Ze.BUILT_IN_AGGREGATES=Ze.modeAggregate=Ze.stddevAggregate=Ze.varianceAggregate=Ze.medianAggregate=Ze.EXO_AGGREGATE_NS=void 0;Ze.getNumericValue=Vp;Ze.createDecimalLiteral=mi;Ze.createDoubleLiteral=G9;Ze.createPercentileAggregate=No;var Lo=Ne(),tl=Ae(),q9=new tl.IRI("http://www.w3.org/2001/XMLSchema#decimal"),W9=new tl.IRI("http://www.w3.org/2001/XMLSchema#double");Ze.EXO_AGGREGATE_NS="https://exocortex.my/ontology/agg#";function Vp(n){return n==null?NaN:typeof n=="number"?n:typeof n=="string"?parseFloat(n):n instanceof Lo.Literal?parseFloat(n.value):n instanceof tl.IRI?NaN:typeof n=="boolean"?n?1:0:NaN}o(Vp,"getNumericValue");function mi(n){return new Lo.Literal(String(n),q9)}o(mi,"createDecimalLiteral");function G9(n){return new Lo.Literal(String(n),W9)}o(G9,"createDoubleLiteral");Ze.medianAggregate={init(){return{values:[]}},step(n,e){let t=n,r=Vp(e);isNaN(r)||t.values.push(r)},finalize(n){let e=n,{values:t}=e;if(t.length===0)return mi(0);let r=[...t].sort((a,c)=>a-c),i=Math.floor(r.length/2),s=r.length%2!==0?r[i]:(r[i-1]+r[i])/2;return mi(s)}};Ze.varianceAggregate={init(){return{values:[]}},step(n,e){let t=n,r=Vp(e);isNaN(r)||t.values.push(r)},finalize(n){let e=n,{values:t}=e;if(t.length===0)return mi(0);let r=t.reduce((s,a)=>s+a,0)/t.length,i=t.reduce((s,a)=>s+Math.pow(a-r,2),0)/t.length;return mi(i)}};Ze.stddevAggregate={init(){return{values:[]}},step(n,e){Ze.varianceAggregate.step(n,e)},finalize(n){let e=n,{values:t}=e;if(t.length===0)return mi(0);let r=t.reduce((s,a)=>s+a,0)/t.length,i=t.reduce((s,a)=>s+Math.pow(a-r,2),0)/t.length;return mi(Math.sqrt(i))}};Ze.modeAggregate={init(){return{counts:new Map,values:new Map}},step(n,e){if(e==null)return;let t=n,r=String(e instanceof Lo.Literal||e instanceof tl.IRI?e.value:e),i=t.counts.get(r)||0;t.counts.set(r,i+1),t.values.set(r,e)},finalize(n){let e=n;if(e.counts.size===0)return new Lo.Literal(" ",new tl.IRI("http://www.w3.org/2001/XMLSchema#string"));let t="",r=0;for(let[a,c]of e.counts)c>r&&(r=c,t=a);let i=e.values.get(t);if(i instanceof Lo.Literal)return i;let s=parseFloat(t);return isNaN(s)?new Lo.Literal(t,new tl.IRI("http://www.w3.org/2001/XMLSchema#string")):mi(s)}};function No(n){let e=Math.max(0,Math.min(100,n))/100;return{init(){return{values:[],percentile:e}},step(t,r){let i=t,s=Vp(r);isNaN(s)||i.values.push(s)},finalize(t){let r=t,{values:i}=r;if(i.length===0)return mi(0);let s=[...i].sort((d,h)=>d-h),a=r.percentile*(s.length-1),c=Math.floor(a),l=Math.ceil(a);if(c===l)return mi(s[c]);let u=a-c,f=s[c]*(1-u)+s[l]*u;return mi(f)}}}o(No,"createPercentileAggregate");Ze.BUILT_IN_AGGREGATES={[`${Ze.EXO_AGGREGATE_NS}median`]:Ze.medianAggregate,[`${Ze.EXO_AGGREGATE_NS}variance`]:Ze.varianceAggregate,[`${Ze.EXO_AGGREGATE_NS}stddev`]:Ze.stddevAggregate,[`${Ze.EXO_AGGREGATE_NS}mode`]:Ze.modeAggregate,[`${Ze.EXO_AGGREGATE_NS}percentile25`]:No(25),[`${Ze.EXO_AGGREGATE_NS}percentile50`]:No(50),[`${Ze.EXO_AGGREGATE_NS}percentile75`]:No(75),[`${Ze.EXO_AGGREGATE_NS}percentile90`]:No(90),[`${Ze.EXO_AGGREGATE_NS}percentile95`]:No(95),[`${Ze.EXO_AGGREGATE_NS}percentile99`]:No(99)}});var Dx=S(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.AggregateExecutor=rl.AggregateExecutorError=void 0;var fr=Ne(),K1=Ae(),z9=Lp(),H9=z1(),Q9=H1(),Ox=new K1.IRI("http://www.w3.org/2001/XMLSchema#integer"),ko=new K1.IRI("http://www.w3.org/2001/XMLSchema#decimal"),hs=new K1.IRI("http://www.w3.org/2001/XMLSchema#string");function Fx(n){return typeof n=="object"&&n.type==="custom"}o(Fx,"isCustomAggregation");var nf=class extends Error{static{o(this,"AggregateExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="AggregateExecutorError"}};rl.AggregateExecutorError=nf;var Q1=class{static{o(this,"AggregateExecutor")}constructor(){this.filterExecutor=new z9.FilterExecutor}execute(e,t){let r=this.groupSolutions(t,e.variables),i=[];for(let[s,a]of r.entries()){let c=new Map;for(let f of e.variables)if(a.length>0){let d=a[0].get(f);d&&c.set(f,d)}for(let f of e.aggregates){let d=this.computeAggregate(f.expression,a);c.set(f.variable,d)}let{SolutionMapping:l}=us(),u=new l;for(let[f,d]of c.entries())u.set(f,d);i.push(u)}if(i.length===0&&e.aggregates.length>0){let s=this.createEmptyAggregateResult(e);s&&i.push(s)}return i}groupSolutions(e,t){let r=new Map;if(t.length===0)return r.set("",e),r;for(let i of e){let s=this.computeGroupKey(i,t),a=r.get(s);a?a.push(i):r.set(s,[i])}return r}computeGroupKey(e,t){return t.map(r=>{let i=e.get(r);return i?this.termToString(i):""}).join("|")}termToString(e){if(e&&typeof e=="object"){if("value"in e)return String(e.value);if("id"in e)return String(e.id)}return String(e)}computeAggregate(e,t){if(Fx(e.aggregation))return this.computeCustomAggregate(e,t);let r=this.extractValues(e,t),i=e.aggregation;switch(i){case"count":{let s=this.computeCount(r,e.distinct);return new fr.Literal(String(s),Ox)}case"sum":{let s=this.computeSum(r);return new fr.Literal(String(s),ko)}case"avg":{let s=this.computeAvg(r);return new fr.Literal(String(s),ko)}case"min":{let s=this.computeMin(r);return s===void 0?new fr.Literal("",hs):typeof s=="number"?new fr.Literal(String(s),ko):new fr.Literal(String(s),hs)}case"max":{let s=this.computeMax(r);return s===void 0?new fr.Literal("",hs):typeof s=="number"?new fr.Literal(String(s),ko):new fr.Literal(String(s),hs)}case"group_concat":{let s=this.computeGroupConcat(r,e.separator||" ",e.distinct);return new fr.Literal(s||" ",hs)}case"sample":{let s=this.computeSample(r,e.distinct);return s===void 0?new fr.Literal(" ",hs):typeof s=="number"?new fr.Literal(String(s),ko):new fr.Literal(String(s),hs)}default:{let s=i;throw new nf(`Unknown aggregation function: ${s}`)}}}computeCustomAggregate(e,t){let i=e.aggregation.iri,a=H9.CustomAggregateRegistry.getInstance().get(i);if(a||(a=Q9.BUILT_IN_AGGREGATES[i]),!a)throw new nf(`Unknown custom aggregate function: ${i}. Register it with CustomAggregateRegistry.getInstance().register() or use a built-in aggregate.`);let c=a.init();for(let l of t){let u=null;if(e.expression){let f=this.evaluateExpression(e.expression,l);f!==void 0&&(u=f)}else u=1;a.step(c,u)}return a.finalize(c)}extractValues(e,t){if(!e.expression)return t.map(()=>1);let r=[];for(let i of t){let s=this.evaluateExpression(e.expression,i);s!=null&&r.push(s)}return r}evaluateExpression(e,t){if(e.type==="variable"){let r=t.get(e.name);return r==null?void 0:typeof r=="number"||typeof r=="string"||typeof r=="boolean"?r:typeof r=="object"&&"value"in r?r.value:r}if(e.type==="literal")return e.value;try{return this.filterExecutor.evaluateExpression(e,t)}catch{return}}computeCount(e,t){return t?new Set(e.map(r=>String(r))).size:e.length}computeSum(e){return e.map(r=>parseFloat(String(r))).filter(r=>!isNaN(r)).reduce((r,i)=>r+i,0)}computeAvg(e){let t=e.map(r=>parseFloat(String(r))).filter(r=>!isNaN(r));return t.length===0?0:t.reduce((r,i)=>r+i,0)/t.length}computeMin(e){if(e.length===0)return;let t=e.map(i=>parseFloat(String(i))).filter(i=>!isNaN(i));if(t.length>0)return Math.min(...t);let r=e.map(i=>String(i));return r.reduce((i,s)=>s<i?s:i,r[0])}computeMax(e){if(e.length===0)return;let t=e.map(i=>parseFloat(String(i))).filter(i=>!isNaN(i));if(t.length>0)return Math.max(...t);let r=e.map(i=>String(i));return r.reduce((i,s)=>s>i?s:i,r[0])}computeGroupConcat(e,t,r){let i=e.map(s=>String(s));return r&&(i=[...new Set(i)]),i.join(t)}computeSample(e,t){if(e.length===0)return;if(t){let s=[...new Set(e.map(l=>String(l)))];if(s.length===0)return;let a=s[0],c=parseFloat(a);return isNaN(c)?a:c}let r=e[0];if(typeof r=="number")return r;let i=parseFloat(String(r));return isNaN(i)?String(r):i}createEmptyAggregateResult(e){let{SolutionMapping:t}=us(),r=new t;for(let i of e.aggregates){let s=i.expression.aggregation;if(Fx(s)){r.set(i.variable,new fr.Literal("0",ko));continue}switch(s){case"count":r.set(i.variable,new fr.Literal("0",Ox));break;case"sum":case"avg":r.set(i.variable,new fr.Literal("0",ko));break;case"group_concat":r.set(i.variable,new fr.Literal(" ",hs));break;case"min":case"max":case"sample":r.set(i.variable,new fr.Literal("",hs));break;default:r.set(i.variable,new fr.Literal("",hs))}}return r}};rl.AggregateExecutor=Q1});var Z1=S(Up=>{"use strict";Object.defineProperty(Up,"__esModule",{value:!0});Up.ConstructExecutor=void 0;var K9=Yn(),Mo=Ae(),Y1=Ne(),X1=qt(),Y9=Nu(),J1=class{static{o(this,"ConstructExecutor")}async execute(e,t){let r=[],i=new Set;for(let s of t)for(let a of e)try{let c=this.instantiateTriple(a,s),l=`${c.subject.toString()}|${c.predicate.toString()}|${c.object.toString()}`;i.has(l)||(i.add(l),r.push(c))}catch{continue}return r}instantiateTriple(e,t){if(this.isPropertyPath(e.predicate))throw new Error("Property paths are not supported in CONSTRUCT templates");let r=this.instantiateElement(e.subject,t),i=this.instantiateElement(e.predicate,t),s=this.instantiateElement(e.object,t);return new K9.Triple(r,i,s)}isPropertyPath(e){return e.type==="path"}instantiateElement(e,t){if(e.type==="variable"){let r=t.get(e.value);if(!r)throw new Error(`Unbound variable: ${e.value}`);return r}if(e.type==="iri")return new Mo.IRI(e.value);if(e.type==="literal")return new Y1.Literal(e.value,e.datatype?new Mo.IRI(e.datatype):void 0,e.language);if(e.type==="blank")return new X1.BlankNode(e.value);if(e.type==="quoted")return this.instantiateQuotedTriple(e,t);throw new Error(`Unknown element type: ${e.type}`)}instantiateQuotedTriple(e,t){let r=this.instantiateQuotedSubject(e.subject,t),i=this.instantiateQuotedPredicate(e.predicate,t),s=this.instantiateQuotedObject(e.object,t);return new Y9.QuotedTriple(r,i,s)}instantiateQuotedSubject(e,t){if(e.type==="variable"){let r=t.get(e.value);if(!r)throw new Error(`Unbound variable in quoted triple subject: ${e.value}`);if(r instanceof Y1.Literal)throw new Error("Literals cannot appear in quoted triple subject position");return r}if(e.type==="iri")return new Mo.IRI(e.value);if(e.type==="blank")return new X1.BlankNode(e.value);if(e.type==="quoted")return this.instantiateQuotedTriple(e,t);throw new Error(`Invalid element type for quoted triple subject: ${e.type}`)}instantiateQuotedPredicate(e,t){if(e.type==="variable"){let r=t.get(e.value);if(!r)throw new Error(`Unbound variable in quoted triple predicate: ${e.value}`);if(!(r instanceof Mo.IRI))throw new Error("Quoted triple predicate must be an IRI");return r}return new Mo.IRI(e.value)}instantiateQuotedObject(e,t){if(e.type==="variable"){let i=t.get(e.value);if(!i)throw new Error(`Unbound variable in quoted triple object: ${e.value}`);return i}if(e.type==="iri")return new Mo.IRI(e.value);if(e.type==="blank")return new X1.BlankNode(e.value);if(e.type==="literal")return new Y1.Literal(e.value,e.datatype?new Mo.IRI(e.datatype):void 0,e.language);if(e.type==="quoted")return this.instantiateQuotedTriple(e,t);let r=e;throw new Error(`Invalid element type for quoted triple object: ${r.type}`)}};Up.ConstructExecutor=J1});var Lx=S(nl=>{"use strict";Object.defineProperty(nl,"__esModule",{value:!0});nl.ServiceExecutor=nl.ServiceExecutorError=void 0;var X9=us(),Nx=Ae(),J9=Ne(),Z9=qt(),jo=class extends Error{static{o(this,"ServiceExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="ServiceExecutorError"}};nl.ServiceExecutorError=jo;var eS=class{static{o(this,"ServiceExecutor")}constructor(e={}){this.timeout=e.timeout??3e4,this.httpClient=e.httpClient??((t,r)=>fetch(t,r)),this.maxRetries=e.maxRetries??2,this.retryDelay=e.retryDelay??1e3}async*execute(e,t){try{let r=t(e.pattern),i=await this.executeRemoteQuery(e.endpoint,r);for(let s of i)yield s}catch(r){if(e.silent)return;throw r}}async executeRemoteQuery(e,t){let r;for(let i=0;i<=this.maxRetries;i++)try{let s=new AbortController,a=setTimeout(()=>s.abort(),this.timeout);try{let c=await this.httpClient(e,{method:"POST",headers:{"Content-Type":"application/sparql-query",Accept:"application/sparql-results+json"},body:t,signal:s.signal});if(!c.ok)throw new jo(`Remote SPARQL endpoint returned ${c.status}: ${c.statusText}`);let l=await c.json();return this.parseJsonResults(l)}finally{clearTimeout(a)}}catch(s){if(r=s instanceof Error?s:new Error(String(s)),this.isRetryableError(r)&&i<this.maxRetries){await this.delay(this.retryDelay);continue}throw new jo(`Failed to query remote SPARQL endpoint ${e}: ${r.message}`,r)}throw new jo(`Failed to query remote SPARQL endpoint ${e} after ${this.maxRetries+1} attempts`,r)}parseJsonResults(e){return!e.results||!Array.isArray(e.results.bindings)?[]:e.results.bindings.map(t=>this.parseBinding(t))}parseBinding(e){let t=new X9.SolutionMapping;for(let[r,i]of Object.entries(e)){let s=this.parseRDFTerm(i);t.set(r,s)}return t}parseRDFTerm(e){switch(e.type){case"uri":return new Nx.IRI(e.value);case"literal":{let t=e.datatype?new Nx.IRI(e.datatype):void 0;return new J9.Literal(e.value,t,e["xml:lang"])}case"bnode":return new Z9.BlankNode(e.value);default:throw new jo(`Unknown RDF term type: ${e.type}`)}}isRetryableError(e){let t=e.message.toLowerCase();return!!(e.name==="AbortError"||t.includes("network")||t.includes("econnreset")||t.includes("econnrefused")||t.includes("etimedout")||t.includes("returned 5"))}delay(e){return new Promise(t=>setTimeout(t,e))}};nl.ServiceExecutor=eS});var Mx=S(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.GraphExecutor=il.GraphExecutorError=void 0;var kx=Ae(),qp=class extends Error{static{o(this,"GraphExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="GraphExecutorError"}};il.GraphExecutorError=qp;var tS=class{static{o(this,"GraphExecutor")}constructor(e){this.tripleStore=e}async*execute(e,t,r){let i=e.name;if(i.type==="iri")yield*this.executeWithGraph(e.pattern,i,t);else if(i.type==="variable")yield*this.executeWithGraphVariable(e,i,t,r);else throw new qp(`Invalid graph name type: ${i.type}`)}async*executeWithGraph(e,t,r){let i=new kx.IRI(t.value);this.tripleStore.hasGraph&&!await this.tripleStore.hasGraph(i)||(yield*r(e,i))}async*executeWithGraphVariable(e,t,r,i){if(i){let a=i.get(t.value);if(a&&a instanceof kx.IRI){yield*this.executeWithGraph(e.pattern,{type:"iri",value:a.value},r);return}}if(!this.tripleStore.getNamedGraphs)return;let s=await this.tripleStore.getNamedGraphs();for(let a of s)for await(let c of r(e.pattern,a)){let l=c.clone();l.set(t.value,a),yield l}}};il.GraphExecutor=tS});var jx=S(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.SPARQLGenerator=al.SPARQLGeneratorError=void 0;var sl=class extends Error{static{o(this,"SPARQLGeneratorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="SPARQLGeneratorError"}};al.SPARQLGeneratorError=sl;var rS=class{static{o(this,"SPARQLGenerator")}collectVariables(e){let t=new Set;return this.collectVariablesFromOperation(e,t),t}generateSelect(e){let t=this.collectVariables(e),r=t.size>0?Array.from(t).map(s=>`?${s}`).join(" "):"*",i=this.generateWhereClause(e);return`SELECT ${r} WHERE {
49
49
  ${i}
50
50
  }`}generateWhereClause(e,t=2){let r=" ".repeat(t);switch(e.type){case"bgp":return this.generateBGP(e,t);case"filter":return`${this.generateWhereClause(e.input,t)}
51
51
  ${r}FILTER(${this.generateExpression(e.expression)})`;case"join":return`${this.generateWhereClause(e.left,t)}
@@ -67,7 +67,7 @@ ${r}}`}default:throw new sl(`Unsupported operation type for SPARQL generation: $
67
67
  `)}generateTriple(e){let t=this.generateElement(e.subject),r=this.generatePredicate(e.predicate),i=this.generateElement(e.object);return`${t} ${r} ${i}`}generatePredicate(e){return"pathType"in e?this.generatePropertyPath(e):this.generateElement(e)}generatePropertyPath(e){let t=e.items.map(r=>"pathType"in r?`(${this.generatePropertyPath(r)})`:`<${r.value}>`);switch(e.pathType){case"/":return t.join("/");case"|":return t.join("|");case"^":return`^${t[0]}`;case"+":return`${t[0]}+`;case"*":return`${t[0]}*`;case"?":return`${t[0]}?`}}generateElement(e){switch(e.type){case"variable":return`?${e.value}`;case"iri":return`<${e.value}>`;case"literal":{let r=`"${e.value.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t")}"`;return e.language?r+=`@${e.language}`:e.datatype&&(r+=`^^<${e.datatype}>`),r}case"blank":return`_:${e.value}`;default:throw new sl(`Unknown element type: ${e.type}`)}}generateValues(e,t){let r=" ".repeat(t);if(e.variables.length===0||e.bindings.length===0)return"";if(e.variables.length===1){let a=e.variables[0],c=e.bindings.map(l=>{let u=l[a];return u?this.generateValuesTerm(u):"UNDEF"}).join(" ");return`${r}VALUES ?${a} { ${c} }`}let i=e.variables.map(a=>`?${a}`).join(" "),s=e.bindings.map(a=>`(${e.variables.map(l=>{let u=a[l];return u?this.generateValuesTerm(u):"UNDEF"}).join(" ")})`);return`${r}VALUES (${i}) {
68
68
  ${s.map(a=>`${r} ${a}`).join(`
69
69
  `)}
70
- ${r}}`}generateValuesTerm(e){if(e.type==="iri")return`<${e.value}>`;let r=`"${e.value.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`;return e.language?r+=`@${e.language}`:e.datatype&&(r+=`^^<${e.datatype}>`),r}generateExpression(e){switch(e.type){case"variable":return`?${e.name}`;case"literal":return typeof e.value=="string"?`"${e.value.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`:typeof e.value=="boolean"?e.value?"true":"false":String(e.value);case"comparison":return`(${this.generateExpression(e.left)} ${e.operator} ${this.generateExpression(e.right)})`;case"logical":return e.operator==="!"?`!(${this.generateExpression(e.operands[0])})`:`(${e.operands.map(t=>this.generateExpression(t)).join(` ${e.operator} `)})`;case"arithmetic":return`(${this.generateExpression(e.left)} ${e.operator} ${this.generateExpression(e.right)})`;case"function":return`${e.function.toUpperCase()}(${e.args.map(t=>this.generateExpression(t)).join(", ")})`;case"functionCall":return`${(typeof e.function=="string"?e.function:e.function.value).toUpperCase()}(${e.args.map(r=>this.generateExpression(r)).join(", ")})`;case"exists":return`${e.negated?"NOT EXISTS":"EXISTS"} { ${this.generateWhereClause(e.pattern,0)} }`;case"in":{let t=this.generateExpression(e.expression),r=e.list.map(i=>this.generateExpression(i)).join(", ");return e.negated?`${t} NOT IN (${r})`:`${t} IN (${r})`}default:throw new sl(`Unknown expression type: ${e.type}`)}}collectVariablesFromOperation(e,t){switch(e.type){case"bgp":for(let r of e.triples)this.collectVariablesFromTriple(r,t);break;case"filter":this.collectVariablesFromOperation(e.input,t),this.collectVariablesFromExpression(e.expression,t);break;case"join":case"leftjoin":case"union":case"minus":this.collectVariablesFromOperation(e.left,t),this.collectVariablesFromOperation(e.right,t);break;case"values":for(let r of e.variables)t.add(r);break;case"project":for(let r of e.variables)t.add(r);this.collectVariablesFromOperation(e.input,t);break;case"extend":t.add(e.variable),this.collectVariablesFromOperation(e.input,t);break;case"orderby":case"slice":case"distinct":case"reduced":this.collectVariablesFromOperation(e.input,t);break;case"group":for(let r of e.variables)t.add(r);for(let r of e.aggregates)t.add(r.variable);this.collectVariablesFromOperation(e.input,t);break;case"subquery":this.collectVariablesFromOperation(e.query,t);break}}collectVariablesFromTriple(e,t){e.subject.type==="variable"&&t.add(e.subject.value),"type"in e.predicate&&e.predicate.type==="variable"&&t.add(e.predicate.value),e.object.type==="variable"&&t.add(e.object.value)}collectVariablesFromExpression(e,t){switch(e.type){case"variable":t.add(e.name);break;case"comparison":case"arithmetic":this.collectVariablesFromExpression(e.left,t),this.collectVariablesFromExpression(e.right,t);break;case"logical":for(let r of e.operands)this.collectVariablesFromExpression(r,t);break;case"function":case"functionCall":for(let r of e.args)this.collectVariablesFromExpression(r,t);break;case"exists":this.collectVariablesFromOperation(e.pattern,t);break;case"in":this.collectVariablesFromExpression(e.expression,t);for(let r of e.list)this.collectVariablesFromExpression(r,t);break}}};al.SPARQLGenerator=rS});var cl=S(In=>{"use strict";var e5=In&&In.__createBinding||(Object.create?(function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(n,r,i)}):(function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]})),t5=In&&In.__setModuleDefault||(Object.create?(function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}):function(n,e){n.default=e}),$x=In&&In.__importStar||(function(){var n=o(function(e){return n=Object.getOwnPropertyNames||function(t){var r=[];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r[r.length]=i);return r},n(e)},"ownKeys");return function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=n(e),i=0;i<r.length;i++)r[i]!=="default"&&e5(t,e,r[i]);return t5(t,e),t}})();Object.defineProperty(In,"__esModule",{value:!0});In.QueryExecutor=In.ExoQLQueryExecutor=In.QueryExecutorError=void 0;var r5=w1(),n5=Lp(),i5=V1(),s5=q1(),a5=Ix(),o5=Px(),c5=Dx(),l5=Z1(),u5=Lx(),f5=Mx(),d5=jx(),h5=Ae(),p5=Ne(),m5=Ip(),kr="http://www.w3.org/2001/XMLSchema#",g5=new Set([`${kr}integer`,`${kr}decimal`,`${kr}float`,`${kr}double`,`${kr}nonPositiveInteger`,`${kr}negativeInteger`,`${kr}long`,`${kr}int`,`${kr}short`,`${kr}byte`,`${kr}nonNegativeInteger`,`${kr}unsignedLong`,`${kr}unsignedInt`,`${kr}unsignedShort`,`${kr}unsignedByte`,`${kr}positiveInteger`]),ol=class extends Error{static{o(this,"QueryExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="QueryExecutorError"}};In.QueryExecutorError=ol;var Wp=class{static{o(this,"ExoQLQueryExecutor")}constructor(e,t={}){this.tripleStore=e,this.bgpExecutor=new r5.BGPExecutor(e),this.filterExecutor=new n5.FilterExecutor,this.optionalExecutor=new i5.OptionalExecutor,this.unionExecutor=new s5.UnionExecutor,this.minusExecutor=new a5.MinusExecutor,this.valuesExecutor=new o5.ValuesExecutor,this.aggregateExecutor=new c5.AggregateExecutor,this.constructExecutor=new l5.ConstructExecutor,this.serviceExecutor=new u5.ServiceExecutor(t.serviceConfig),this.graphExecutor=new f5.GraphExecutor(e),this.sparqlGenerator=new d5.SPARQLGenerator,this.filterExecutor.setExistsEvaluator(async(r,i)=>this.evaluateExistsPattern(r,i)),this.filterExecutor.setTripleStore(e)}async evaluateExistsPattern(e,t){for await(let r of this.execute(e))if(t.merge(r)!==null)return!0;return!1}async executeAll(e){let t=[];for await(let r of this.execute(e))t.push(r);return t}async*execute(e){switch(e.type){case"bgp":yield*this.executeBGP(e);break;case"filter":yield*this.executeFilter(e);break;case"join":yield*this.executeJoin(e);break;case"leftjoin":yield*this.executeLeftJoin(e);break;case"union":yield*this.executeUnion(e);break;case"minus":yield*this.executeMinus(e);break;case"values":yield*this.executeValues(e);break;case"project":yield*this.executeProject(e);break;case"orderby":yield*this.executeOrderBy(e);break;case"slice":yield*this.executeSlice(e);break;case"distinct":yield*this.executeDistinct(e);break;case"reduced":yield*this.executeReduced(e);break;case"group":yield*this.executeGroup(e);break;case"extend":yield*this.executeExtend(e);break;case"subquery":yield*this.executeSubquery(e);break;case"lateraljoin":yield*this.executeLateralJoin(e);break;case"service":yield*this.executeService(e);break;case"graph":yield*this.executeGraph(e);break;default:throw new ol(`Unknown operation type: ${e.type}`)}}async*executeBGP(e){yield*this.bgpExecutor.execute(e)}async*executeFilter(e){let t=this.execute(e.input);yield*this.filterExecutor.execute(e,t)}async*executeJoin(e){let t=[];for await(let a of this.execute(e.left))t.push(a);if(t.length===0)return;let r=new Set;for(let a of t)for(let c of a.variables())r.add(c);let i=this.collectOperationVariables(e.right);if([...r].some(a=>i.has(a)))for(let a of t){let c=this.substituteVariables(e.right,a);for await(let l of this.execute(c)){let u=a.merge(l);u!==null&&(yield u)}}else{let a=[];for await(let c of this.execute(e.right))a.push(c);for(let c of t)for(let l of a){let u=c.merge(l);u!==null&&(yield u)}}}async*executeLeftJoin(e){let t=[];for await(let a of this.execute(e.left))t.push(a);let r=[];for await(let a of this.execute(e.right))r.push(a);async function*i(){for(let a of t)yield a}o(i,"leftGen");async function*s(){for(let a of r)yield a}o(s,"rightGen"),yield*this.optionalExecutor.execute(i(),s())}async*executeUnion(e){let t=[];for await(let a of this.execute(e.left))t.push(a);let r=[];for await(let a of this.execute(e.right))r.push(a);async function*i(){for(let a of t)yield a}o(i,"leftGen");async function*s(){for(let a of r)yield a}o(s,"rightGen"),yield*this.unionExecutor.execute(i(),s())}async*executeMinus(e){let t=[];for await(let a of this.execute(e.left))t.push(a);let r=[];for await(let a of this.execute(e.right))r.push(a);async function*i(){for(let a of t)yield a}o(i,"leftGen");async function*s(){for(let a of r)yield a}o(s,"rightGen"),yield*this.minusExecutor.execute(i(),s())}async*executeValues(e){yield*this.valuesExecutor.execute(e)}async*executeProject(e){let{SolutionMapping:t}=await Promise.resolve().then(()=>$x(us())),r=new Set(e.variables);for await(let i of this.execute(e.input)){let s=new t;for(let a of i.variables())if(r.has(a)){let c=i.get(a);c!==void 0&&s.set(a,c)}yield s}}async*executeOrderBy(e){let t=[];for await(let r of this.execute(e.input))t.push(r);t.sort((r,i)=>{for(let s of e.comparators){let a=this.getExpressionValue(s.expression,r),c=this.getExpressionValue(s.expression,i),l=0;if(a===void 0&&c===void 0?l=0:a===void 0?l=1:c===void 0?l=-1:typeof a=="number"&&typeof c=="number"?l=a-c:l=String(a).localeCompare(String(c)),s.descending&&(l=-l),l!==0)return l}return 0});for(let r of t)yield r}async*executeSlice(e){let t=0,r=e.offset??0,i=e.limit;for await(let s of this.execute(e.input)){if(t>=r){if(i!==void 0&&t-r>=i)break;yield s}t++}}async*executeDistinct(e){let t=new Set;for await(let r of this.execute(e.input)){let i=this.getSolutionKey(r);t.has(i)||(t.add(i),yield r)}}async*executeReduced(e){let t=new Set;for await(let r of this.execute(e.input)){let i=this.getSolutionKey(r);t.has(i)||(t.add(i),yield r)}}async*executeGroup(e){let t=[];for await(let i of this.execute(e.input))t.push(i);let r=this.aggregateExecutor.execute(e,t);if(e.having&&e.having.length>0)for(let i of r)e.having.every(a=>this.filterExecutor.evaluateExpression(a,i)===!0)&&(yield i);else for(let i of r)yield i}async*executeExtend(e){let t=e.expression.type!=="aggregate"&&this.filterExecutor.expressionContainsExists(e.expression);for await(let r of this.execute(e.input)){let i=r.clone(),s=t?await this.evaluateExtendExpressionAsync(e.expression,r):this.evaluateExtendExpression(e.expression,r);s!==void 0&&i.set(e.variable,s),yield i}}async*executeSubquery(e){yield*this.execute(e.query)}async*executeLateralJoin(e){let t=[];for await(let r of this.execute(e.left))t.push(r);for(let r of t){let i=this.substituteVariables(e.right,r);for await(let s of this.execute(i)){let a=r.merge(s);a!==null&&(yield a)}}}substituteVariables(e,t){let r=JSON.parse(JSON.stringify(e));return this.substituteInOperation(r,t)}substituteInOperation(e,t){if(!e||typeof e!="object")return e;let r=e;return e.type==="bgp"&&e.triples?(e.triples=e.triples.map(i=>this.substituteInTriple(i,t)),e):(r.input&&(r.input=this.substituteInOperation(r.input,t)),r.left&&(r.left=this.substituteInOperation(r.left,t)),r.right&&(r.right=this.substituteInOperation(r.right,t)),r.pattern&&(r.pattern=this.substituteInOperation(r.pattern,t)),r.query&&(r.query=this.substituteInOperation(r.query,t)),r.where&&(r.where=this.substituteInOperation(r.where,t)),r.expression&&this.substituteInExpression(r.expression,t),e)}substituteInExpression(e,t){if(!(!e||typeof e!="object")){if(e.type==="exists"&&e.pattern&&(e.pattern=this.substituteInOperation(e.pattern,t)),e.left&&this.substituteInExpression(e.left,t),e.right&&this.substituteInExpression(e.right,t),e.operands)for(let r of e.operands)this.substituteInExpression(r,t);if(e.args)for(let r of e.args)this.substituteInExpression(r,t);if(e.expression&&this.substituteInExpression(e.expression,t),e.list)for(let r of e.list)this.substituteInExpression(r,t)}}substituteInTriple(e,t){return{subject:this.substituteInTripleElement(e.subject,t),predicate:e.predicate,object:this.substituteInTripleElement(e.object,t)}}substituteInTripleElement(e,t){if(e&&e.type==="variable"){let r=t.get(e.value);if(r!=null){let i=r;if(r instanceof h5.IRI||i.termType==="NamedNode")return{type:"iri",value:r.value};if(i.termType==="Literal"||typeof i.value=="string")return{type:"literal",value:i.value,datatype:i.datatype?.value??i._datatype?.value,language:i.language??i._language}}}return e}async*executeService(e){yield*this.serviceExecutor.execute(e,t=>this.sparqlGenerator.generateSelect(t))}async*executeGraph(e){let t=async function*(r,i){let s=this.currentGraphContext;this.currentGraphContext=i;try{r.type==="bgp"&&i&&this.tripleStore.matchInGraph?yield*this.executeBGPInGraph(r,i):yield*this.execute(r)}finally{this.currentGraphContext=s}}.bind(this);yield*this.graphExecutor.execute(e,t)}async*executeBGPInGraph(e,t){if(e.triples.length===0){let{SolutionMapping:r}=await Promise.resolve().then(()=>$x(us()));yield new r;return}yield*this.bgpExecutor.executeInGraph(e,t)}evaluateExtendExpression(e,t){if(e.type!=="aggregate")try{return this.filterExecutor.evaluateExpression(e,t)}catch{return}}async evaluateExtendExpressionAsync(e,t){if(e.type!=="aggregate")try{return await this.filterExecutor.evaluateExpressionAsync(e,t)}catch{return}}getExpressionValue(e,t){if(e.type==="variable"){let r=t.get(e.name);if(!r)return;if(r instanceof p5.Literal){let i=r.datatype?.value;if(i===`${kr}dayTimeDuration`)try{return m5.DateTimeFunctions.parseDayTimeDuration(r.value)}catch{return r.value}if(i&&g5.has(i)){let s=parseFloat(r.value);if(!Number.isNaN(s))return s}return r.value}return r.value??r.id??String(r)}if(e.type==="literal")return e.value}collectOperationVariables(e){let t=new Set;return this.collectVarsFromOperation(e,t),t}collectVarsFromOperation(e,t){if(!e||typeof e!="object")return;let r=e;if(r.type==="bgp"&&r.triples)for(let i of r.triples)this.collectVarsFromElement(i.subject,t),i.predicate?.type!=="path"&&this.collectVarsFromElement(i.predicate,t),this.collectVarsFromElement(i.object,t);if(r.type==="values"&&r.variables)for(let i of r.variables)t.add(i);r.expression&&this.collectVarsFromExpressionTree(r.expression,t),r.type==="extend"&&r.variable&&t.add(r.variable),r.input&&this.collectVarsFromOperation(r.input,t),r.left&&this.collectVarsFromOperation(r.left,t),r.right&&this.collectVarsFromOperation(r.right,t),r.pattern&&this.collectVarsFromOperation(r.pattern,t),r.query&&this.collectVarsFromOperation(r.query,t),r.where&&this.collectVarsFromOperation(r.where,t)}collectVarsFromElement(e,t){if(!e||typeof e!="object")return;let r=e;r.type==="variable"&&t.add(r.value),r.type==="quoted"&&(this.collectVarsFromElement(r.subject,t),this.collectVarsFromElement(r.predicate,t),this.collectVarsFromElement(r.object,t))}collectVarsFromExpressionTree(e,t){if(!e||typeof e!="object")return;let r=e;if(r.type==="variable"&&r.name&&t.add(r.name),r.type==="exists"&&r.pattern&&this.collectVarsFromOperation(r.pattern,t),r.left&&this.collectVarsFromExpressionTree(r.left,t),r.right&&this.collectVarsFromExpressionTree(r.right,t),r.operands)for(let i of r.operands)this.collectVarsFromExpressionTree(i,t);if(r.args)for(let i of r.args)this.collectVarsFromExpressionTree(i,t);if(r.expression&&this.collectVarsFromExpressionTree(r.expression,t),r.list)for(let i of r.list)this.collectVarsFromExpressionTree(i,t)}getSolutionKey(e){let t=e.toJSON();return Object.keys(t).sort().map(i=>`${i}=${t[i]}`).join("|")}isConstructQuery(e){return e.type==="construct"}async executeConstruct(e){if(e.type!=="construct")throw new ol("executeConstruct requires a CONSTRUCT operation");let t=await this.executeAll(e.where);return this.constructExecutor.execute(e.template,t)}isAskQuery(e){return e.type==="ask"}async executeAsk(e){if(e.type!=="ask")throw new ol("executeAsk requires an ASK operation");for await(let t of this.execute(e.where))return!0;return!1}};In.ExoQLQueryExecutor=Wp;In.QueryExecutor=Wp});var Bx=S(Js=>{"use strict";var y5=Js&&Js.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},_5=Js&&Js.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(Js,"__esModule",{value:!0});Js.CommandResolver=void 0;var S5=fe(),v5=Pc(),gi=Ae(),Vn=Ne(),ee=yr(),nS=Tc(),ll=S0(),b5=Bc(),w5=Uc(),E5=cl(),iS=10,sS=class{static{o(this,"CommandResolver")}constructor(e,t=v5.NullLogger){this.tripleStore=e,this.logger=t,this.cache=new Map,this.multiCache=new Map}async resolveForAssetMulti(e,t,r){if(t.length===0)return[];let i=[...t].sort().join(","),s=`${e}::${i}::${r??""}`,a=this.multiCache.get(s);if(a)return a;let c=new Set,l=[];for(let u of t){let f=await this.resolveForAsset(e,u,r);for(let d of f)c.has(d.binding.id)||(c.add(d.binding.id),l.push(d))}return l.sort((u,f)=>{let d=this.getBindingPriority(u.binding),h=this.getBindingPriority(f.binding);return d!==h?d-h:(u.binding.order??100)-(f.binding.order??100)}),this.multiCache.set(s,l),l}async resolveForAsset(e,t,r){let i=`${e}:${t}:${r??""}`,s=this.cache.get(i);if(s)return s;let a=await this.findBindings(t,r,e),c=[];for(let l of a){let u=await this.loadCommand(l.commandRef);if(!u)continue;let f=l.precondition?{...u,precondition:l.precondition}:u;c.push({command:f,binding:l})}return c.sort((l,u)=>{let f=this.getBindingPriority(l.binding),d=this.getBindingPriority(u.binding);return f!==d?f-d:(l.binding.order??100)-(u.binding.order??100)}),this.cache.set(i,c),c}async loadCommand(e){let t=await this.findSubjectByUID(e);if(!t||(await this.tripleStore.match(t,ee.Namespace.RDF.term("type"),ee.Namespace.EXOCMD.term("Command"))).length===0)return null;let i=await this.getLiteralValue(t,ee.Namespace.EXO.term("Asset_label"))??"Unknown Command",s=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_labelTemplate")),a=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_icon")),c=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_confirmMessage")),l=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_successMessage")),u=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_category")),f=await this.loadLinkedPrecondition(t),d=await this.loadLinkedGrounding(t,0);return d?{id:e,name:i,labelTemplate:s??void 0,icon:a??void 0,precondition:f??void 0,grounding:d,confirmMessage:c??void 0,successMessage:l??void 0,category:u??void 0}:null}async findBindings(e,t,r){let i=await this.tripleStore.match(void 0,ee.Namespace.RDF.term("type"),ee.Namespace.EXOCMD.term("CommandBinding")),s=[];for(let a of i){let c=a.subject,l=await this.loadBindingDefinition(c);l&&this.bindingMatches(l,e,t,r)&&s.push(l)}return s}invalidateCache(){this.cache.clear(),this.multiCache.clear()}async resolveLabel(e,t){if(!e.labelTemplate)return e.name;let r=e.labelTemplate,i=this.extractPlaceholders(e.labelTemplate);for(let{full:s,body:a}of i){let c=await this.evaluateSelectSnippet(a,t);r=r.replace(s,c)}return r}extractPlaceholders(e){let t=[],r=0;for(;r<e.length;)if(e[r]==="{"){let i=1,s=r+1;for(;s<e.length&&i>0;)e[s]==="{"?i++:e[s]==="}"&&i--,s++;if(i===0){let a=e.slice(r,s),c=e.slice(r+1,s-1);t.push({full:a,body:c})}r=s}else r++;return t}async evaluateSelectSnippet(e,t){try{let r=e.replace(/\$target/g,`<${t}>`),s=new b5.ExoQLParser().parse(r),c=new w5.ExoQLAlgebraTranslator().translate(s),u=await new E5.ExoQLQueryExecutor(this.tripleStore).executeAll(c);if(u.length===0)return"";let f=u[0],d=f.variables();if(d.length===0)return"";let h=f.get(d[0]);return h?h instanceof Vn.Literal||h instanceof gi.IRI?h.value:String(h):""}catch{return""}}async loadBindingDefinition(e){let t=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_uid"));if(!t)return null;let r=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_label"))??"",i=await this.getLinkedUID(e,ee.Namespace.EXOCMD.term("CommandBinding_command"));if(!i)return null;let s=await this.getLinkedValue(e,ee.Namespace.EXOCMD.term("CommandBinding_targetClass")),a=await this.getLinkedValue(e,ee.Namespace.EXOCMD.term("CommandBinding_targetPrototype")),c=await this.getLinkedValue(e,ee.Namespace.EXOCMD.term("CommandBinding_targetAsset"));if(!s&&!a&&!c)return null;let l=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBinding_position")),u=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBinding_order")),f=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBinding_variant")),d=f!==null?this.coerceVariant(f,t):void 0,h=await this.loadLinkedPreconditionFromProperty(e,ee.Namespace.EXOCMD.term("CommandBinding_precondition")),p=await this.loadLinkedStyle(e,t);return{id:t,label:r,commandRef:i,targetClass:s??void 0,targetPrototype:a??void 0,targetAsset:c??void 0,position:l??void 0,order:u?parseInt(u,10):void 0,variant:d,precondition:h??void 0,style:p??void 0}}async loadLinkedStyle(e,t){let r=await this.tripleStore.match(e,ee.Namespace.EXOCMD.term("CommandBinding_style"),void 0);if(r.length>0){let s=r[0].object,a=null;if(s instanceof gi.IRI)a=s;else if(s instanceof Vn.Literal){let c=this.normalizeWikilink(s.value);a=await this.findSubjectByUID(c)}if(a){let c=await this.loadStyleAsset(a);if(c)return c}this.logger.warn(this.capWarning(`CommandBinding ${t}: style reference unresolved, falling back to inline variant`))}let i=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBinding_variant"));if(i!==null){let s=this.coerceVariant(i,t);if(s!==void 0)return{id:`inline:${t}`,label:"",variant:s,inline:!0}}return null}async loadStyleAsset(e){let t=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_uid"));if(!t)return null;let r=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_label"))??"",i=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_variant")),s=i!==null?this.coerceVariant(i,t):void 0,a=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_showIcon")),c=this.coerceBoolean(a),l=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_labelClass")),u=l!==null?this.coerceLabelClass(l,t):void 0,f=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_ariaLabel")),d=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_tooltip")),h=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_keyboardShortcut")),p=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_source")),y=p!==null?this.coerceStyleSource(p,t):void 0;return{id:t,label:r,variant:s,showIcon:c,labelClass:u,ariaLabel:f??void 0,tooltip:d??void 0,keyboardShortcut:h??void 0,source:y,inline:!1}}coerceVariant(e,t){if(e==null)return;let r=String(e).trim().toLowerCase();if(r!==""){if(ll.COMMAND_VARIANT_VALUES.includes(r))return r;this.logger.warn(this.capWarning(`CommandBindingStyle variant "${r}" not in whitelist [${ll.COMMAND_VARIANT_VALUES.join(",")}]; dropped (asset ${t})`))}}coerceLabelClass(e,t){if(e==null)return;let r=String(e).trim().toLowerCase();if(r!==""){if(ll.LABEL_CLASS_VALUES.includes(r))return r;this.logger.warn(this.capWarning(`CommandBindingStyle labelClass "${r}" not in whitelist [${ll.LABEL_CLASS_VALUES.join(",")}]; dropped (asset ${t})`))}}coerceStyleSource(e,t){if(e==null)return;let r=String(e).trim().toLowerCase();if(r!==""){if(ll.STYLE_SOURCE_VALUES.includes(r))return r;this.logger.warn(this.capWarning(`CommandBindingStyle source "${r}" not in whitelist [${ll.STYLE_SOURCE_VALUES.join(",")}]; dropped (asset ${t})`))}}coerceBoolean(e){if(e===null)return;let t=e.trim().toLowerCase();if(t==="true")return!0;if(t==="false")return!1}capWarning(e){return e.length<=200?e:e.slice(0,197)+"..."}bindingMatches(e,t,r,i){return!!(e.targetAsset&&i&&this.matchesReference(e.targetAsset,i)||e.targetPrototype&&r&&this.matchesReference(e.targetPrototype,r)||e.targetClass&&t&&this.matchesReference(e.targetClass,t))}matchesReference(e,t){let r=this.normalizeWikilink(e),i=this.normalizeWikilink(t);if(r===i)return!0;let s=this.extractPathBasename(i);if(s&&s===r)return!0;let a=this.extractPathBasename(r);if(a&&a===i)return!0;let c=this.extractAlias(t);if(c&&r===c)return!0;let l=this.extractAlias(e);return!!(l&&l===i)}extractPathBasename(e){let t=e.match(/\/([^/]+)\.md$/);return t?t[1]:null}extractAlias(e){let t=e.replace(/["'[\]]/g,"").trim(),r=t.indexOf("|");return r>=0?t.substring(r+1).trim():null}getBindingPriority(e){return e.targetAsset?0:e.targetPrototype?1:2}async loadLinkedPrecondition(e){return this.loadLinkedPreconditionFromProperty(e,ee.Namespace.EXOCMD.term("Command_precondition"))}async loadLinkedPreconditionFromProperty(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object,s=null;if(i instanceof gi.IRI)s=i;else if(i instanceof Vn.Literal){let h=this.normalizeWikilink(i.value);s=await this.findSubjectByUID(h)}if(!s)return null;let a=await this.getLiteralValue(s,ee.Namespace.EXO.term("Asset_uid")),c=await this.getLiteralValue(s,ee.Namespace.EXO.term("Asset_label"))??"",l=await this.getLiteralValue(s,ee.Namespace.EXOCMD.term("Precondition_sparqlAsk")),u=await this.getLiteralValue(s,ee.Namespace.EXOCMD.term("Precondition_hostFunction")),f=await this.tripleStore.match(s,ee.Namespace.EXOCMD.term("Precondition_query"),void 0),d;if(f.length>0){let h=f[0].object;if(h instanceof gi.IRI){let p=await this.getLiteralValue(h,ee.Namespace.EXO.term("Asset_uid"));p&&(d=p)}else h instanceof Vn.Literal&&(d=this.normalizeWikilink(h.value))}return!a||!l&&!u&&!d?null:{id:a,label:c,...l&&{sparqlAsk:l},...u&&{hostFunction:u},...d&&{query:d}}}async loadLinkedGrounding(e,t){if(t>=iS)return null;let r=await this.tripleStore.match(e,ee.Namespace.EXOCMD.term("Command_grounding"),void 0);if(r.length===0)return null;let i=r[0].object,s=null;if(i instanceof gi.IRI)s=i;else if(i instanceof Vn.Literal){let a=this.normalizeWikilink(i.value);s=await this.findSubjectByUID(a)}return s?this.loadGroundingDefinition(s,t):null}async loadGroundingDefinition(e,t){if(t>=iS)return null;let r=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_uid"));if(!r)return null;let i=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_label"))??"",s=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_type"));if(!s)return null;let a=this.resolveGroundingType(s);if(!a)return null;let c=await this.getObsidianName(e,ee.Namespace.EXOCMD.term("Grounding_targetProperty"));if(a===nS.GroundingType.SERVICE_CALL){let b=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_serviceId"));b&&(c=b)}let l=await this.getObsidianWikilinkValue(e,ee.Namespace.EXOCMD.term("Grounding_targetValue")),u=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_sparqlUpdate")),f=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_targetClass")),d=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_targetPrototype")),h=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_targetFolder")),p=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_inputSchema")),y;a===nS.GroundingType.COMPOSITE&&(y=await this.loadCompositeSteps(e,t+1));let v;if(p)try{let b=JSON.parse(p);b?.properties&&(v=Object.entries(b.properties).map(([A,I])=>({name:A,type:I.type==="string"?"text":I.type,label:I.title??A,required:Array.isArray(b.required)&&b.required.includes(A)})))}catch{}let w={id:r,label:i,type:a,targetProperty:c??void 0,targetValue:l??void 0,sparqlUpdate:u??void 0,steps:y,targetClass:f??void 0,targetPrototype:d??void 0,targetFolder:h??void 0};return v&&(w.inputSchema=v),w}async loadCompositeSteps(e,t){if(t>=iS)return[];let r=await this.tripleStore.match(e,ee.Namespace.EXOCMD.term("Grounding_steps"),void 0),i=[];for(let s of r){let a=null;if(s.object instanceof gi.IRI)a=s.object;else if(s.object instanceof Vn.Literal){let l=this.normalizeWikilink(s.object.value);a=await this.findSubjectByUID(l)}if(!a)continue;let c=await this.loadGroundingDefinition(a,t);c&&i.push(c)}return i}resolveGroundingType(e){let t=e.toLowerCase().trim();return Object.values(nS.GroundingType).includes(t)?t:null}async findSubjectByUID(e){if(this.tripleStore.findSubjectsByUUID){let r=await this.tripleStore.findSubjectsByUUID(e);if(r.length>0)return r[0]}let t=await this.tripleStore.match(void 0,ee.Namespace.EXO.term("Asset_uid"),void 0);for(let r of t)if(r.object instanceof Vn.Literal&&r.object.value===e)return r.subject;return null}async getLiteralValue(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;return i instanceof Vn.Literal||i instanceof gi.IRI?i.value:null}async getLinkedUID(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;if(i instanceof gi.IRI){let s=await this.tripleStore.match(i,ee.Namespace.EXO.term("Asset_uid"),void 0);return s.length>0&&s[0].object instanceof Vn.Literal?s[0].object.value:i.value.split("/").pop()?.replace(".md","")??null}return i instanceof Vn.Literal?this.normalizeWikilink(i.value):null}async getLinkedValue(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;return i instanceof Vn.Literal?this.normalizeWikilink(i.value):i instanceof gi.IRI?this.iriToObsidianName(i.value)??i.value:null}async getObsidianName(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;return i instanceof Vn.Literal?i.value:i instanceof gi.IRI?this.iriToObsidianName(i.value)??i.value:null}async getObsidianWikilinkValue(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;if(i instanceof Vn.Literal)return this.resolveWikilinkAlias(i.value);if(i instanceof gi.IRI){let s=this.iriToObsidianName(i.value);return s?`"[[${s}]]"`:i.value}return null}async resolveWikilinkAlias(e){let t=e.match(/\[\[([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})\]\]/);if(!t)return e;let r=t[1],i=await this.findSubjectByUID(r);if(!i)return e;let s=await this.getLiteralValue(i,ee.Namespace.EXO.term("Asset_label"));return s?e.replace(`[[${r}]]`,`[[${r}|${s}]]`):e}iriToObsidianName(e){let t=e.lastIndexOf("#");if(t>=0){let i=e.substring(0,t+1),s=e.substring(t+1);if(i===ee.Namespace.EMS.iri.value)return`ems__${s}`;if(i===ee.Namespace.EXO.iri.value)return`exo__${s}`;if(i===ee.Namespace.EXOCMD.iri.value)return`exocmd__${s}`;if(i===ee.Namespace.IMS.iri.value)return`ims__${s}`;if(i===ee.Namespace.ZTLK.iri.value)return`ztlk__${s}`;if(i===ee.Namespace.PTMS.iri.value)return`ptms__${s}`;if(i===ee.Namespace.LIT.iri.value)return`lit__${s}`;if(i===ee.Namespace.INBOX.iri.value)return`inbox__${s}`}let r=e.match(/\/([^/]+)\.md$/);return r?r[1]:null}normalizeWikilink(e){let t=e.replace(/["'[\]]/g,"").trim(),r=t.indexOf("|");return r>=0?t.substring(0,r):t}};Js.CommandResolver=sS;Js.CommandResolver=sS=y5([(0,S5.injectable)(),_5("design:paramtypes",[Object,Object])],sS)});var oS=S(aS=>{"use strict";Object.defineProperty(aS,"__esModule",{value:!0});aS.validateExoQLAllowlist=T5;var Gp=rf();function T5(n){if(!n||typeof n!="object")return;let e=n;if(e.type==="update"){let t=n.updates??[];for(let r of t)if(r?.type==="load")throw new Gp.ExoQLForbiddenKeywordError("LOAD");throw new Gp.ExoQLForbiddenKeywordError("UPDATE")}if(e.type==="query"){if(e.from){let t=Array.isArray(e.from.default)&&e.from.default.length>0,r=Array.isArray(e.from.named)&&e.from.named.length>0;if(t||r)throw new Gp.ExoQLForbiddenKeywordError("FROM")}if(Array.isArray(e.where))for(let t of e.where)zp(t);if(Array.isArray(e.template))for(let t of e.template)zp(t)}}o(T5,"validateExoQLAllowlist");function zp(n){if(!n||typeof n!="object")return;if(n.type==="service")throw new Gp.ExoQLForbiddenKeywordError("SERVICE");if(Array.isArray(n.patterns))for(let t of n.patterns)zp(t);let e=n.where;if(Array.isArray(e))for(let t of e)zp(t)}o(zp,"walkPatternForBannedKeywords")});var cS=S(Hp=>{"use strict";Object.defineProperty(Hp,"__esModule",{value:!0});Hp.DEFAULT_EVAL_CONFIG=void 0;Hp.DEFAULT_EVAL_CONFIG=Object.freeze({enabled:!0,maxNestedEvalCount:100,maxAggregateEvalMillis:1e4})});var uS=S(lS=>{"use strict";Object.defineProperty(lS,"__esModule",{value:!0});lS.evaluateWithExoEval=O5;var A5=Bc(),x5=Uc(),C5=cl(),I5=oS(),R5=cS(),P5=rf();async function O5(n,e={}){if(typeof n!="string")throw new TypeError("evaluateWithExoEval: sparql must be a string");let r=new A5.ExoQLParser().parse(n);if((0,I5.validateExoQLAllowlist)(r),!{...R5.DEFAULT_EVAL_CONFIG,...e.config??{}}.enabled)throw new P5.ExoQLEvalDisabledError;let s="queryType"in r&&typeof r.queryType=="string"?r.queryType:"SELECT";if(!e.store)return s==="ASK"?{kind:"ask",result:!1}:s==="CONSTRUCT"?{kind:"construct",triples:[]}:{kind:"select",rows:[]};let c=new x5.ExoQLAlgebraTranslator().translate(r),l=new C5.ExoQLQueryExecutor(e.store);return l.isAskQuery(c)?{kind:"ask",result:await l.executeAsk(c)}:l.isConstructQuery(c)?{kind:"construct",triples:await l.executeConstruct(c)}:{kind:"select",rows:await l.executeAll(c)}}o(O5,"evaluateWithExoEval")});var Ux=S(Zs=>{"use strict";var F5=Zs&&Zs.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},D5=Zs&&Zs.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},sf;Object.defineProperty(Zs,"__esModule",{value:!0});Zs.PreconditionEvaluator=void 0;var N5=fe(),L5=Bc(),k5=Uc(),Vx=cl(),M5=uS(),af=sf=class{static{o(this,"PreconditionEvaluator")}constructor(e,t){this.hostFunctions=new Map,this.askCache=new Map,this.tripleStore=e,this.queryBodyResolver=t}async evaluate(e,t,r){return e?e.sparqlAsk?this.evaluateSparqlAsk(e.sparqlAsk,t):e.query?this.evaluateQueryRef(e.query,t):e.hostFunction?this.evaluateHostFunction(e.hostFunction,t,r):!0:!0}async evaluateQueryRef(e,t){if(!this.queryBodyResolver)return!1;try{let r=await this.queryBodyResolver.resolveSparql(e);if(!r)return!1;let i=this.substituteVariables(r,t),s=await(0,M5.evaluateWithExoEval)(i,{store:this.tripleStore});return s.kind!=="ask"?!1:s.result}catch{return!1}}registerHostFunction(e,t){this.hostFunctions.set(e,t)}hasHostFunction(e){return this.hostFunctions.has(e)}invalidateCache(){this.askCache.clear()}compileAsk(e){let t=this.substituteVariables(e,sf.SENTINEL_IRI),i=new L5.ExoQLParser().parse(t),a=new k5.ExoQLAlgebraTranslator().translate(i);return new Vx.ExoQLQueryExecutor(this.tripleStore).isAskQuery(a)?a:null}evaluateHostFunction(e,t,r){let i=this.hostFunctions.get(e);if(!i)return!0;let s=r?{...r,targetIRI:t}:{targetIRI:t};return i(s)}async evaluateSparqlAsk(e,t){try{let r=this.askCache.get(e);if(r===void 0){let a=this.compileAsk(e);if(!a)return!1;r=a,this.askCache.set(e,r)}let i=JSON.parse(JSON.stringify(r).replaceAll(sf.SENTINEL_IRI,t));return await new Vx.ExoQLQueryExecutor(this.tripleStore).executeAsk(i)}catch{return!1}}substituteVariables(e,t){let r=new Date().toISOString(),i=r.slice(0,10),s=new Date,a=new Date(s.getTime()+sf.ALMATY_OFFSET_MS),c=a.getUTCFullYear(),l=a.getUTCMonth(),u=a.getUTCDate(),f=a.getUTCDay(),h=new Date(Date.UTC(c,l,u-1)).toISOString().slice(0,10),p=(f+6)%7,y=new Date(Date.UTC(c,l,u-p)),v=y.toISOString().slice(0,10),b=new Date(y.getTime()-10080*60*1e3).toISOString().slice(0,10),A=`${c}-${String(l+1).padStart(2,"0")}-01`,I=l===0?11:l-1,V=`${l===0?c-1:c}-${String(I+1).padStart(2,"0")}-01`,te=`${c}-01-01`;return e.replace(/\$target/g,`<${t}>`).replace(/\$now/g,`"${r}"^^xsd:dateTime`).replace(/\$yesterday/g,`"${h}"^^xsd:date`).replace(/\$thisWeekStart/g,`"${v}"^^xsd:date`).replace(/\$lastWeekStart/g,`"${b}"^^xsd:date`).replace(/\$thisMonthStart/g,`"${A}"^^xsd:date`).replace(/\$lastMonthStart/g,`"${V}"^^xsd:date`).replace(/\$thisYearStart/g,`"${te}"^^xsd:date`).replace(/\$today/g,`"${i}"^^xsd:date`)}};Zs.PreconditionEvaluator=af;af.SENTINEL_IRI="urn:exocortex:cache-sentinel:target";af.ALMATY_OFFSET_MS=300*60*1e3;Zs.PreconditionEvaluator=af=sf=F5([(0,N5.injectable)(),D5("design:paramtypes",[Object,Object])],af)});var ei=S(Qp=>{"use strict";Object.defineProperty(Qp,"__esModule",{value:!0});Qp.FrontmatterService=void 0;var of=class n{static{o(this,"FrontmatterService")}parse(e){let t=e.match(n.FRONTMATTER_REGEX);return t?{exists:!0,content:t[1],originalContent:e}:{exists:!1,content:"",originalContent:e}}updateProperty(e,t,r){t=n.normalizeIRI(t),typeof r=="string"&&(r=n.normalizeIRIValue(r));let i=this.parse(e),s=this.serializeValue(t,r);if(!i.exists)return`---
70
+ ${r}}`}generateValuesTerm(e){if(e.type==="iri")return`<${e.value}>`;let r=`"${e.value.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`;return e.language?r+=`@${e.language}`:e.datatype&&(r+=`^^<${e.datatype}>`),r}generateExpression(e){switch(e.type){case"variable":return`?${e.name}`;case"literal":return typeof e.value=="string"?`"${e.value.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`:typeof e.value=="boolean"?e.value?"true":"false":String(e.value);case"comparison":return`(${this.generateExpression(e.left)} ${e.operator} ${this.generateExpression(e.right)})`;case"logical":return e.operator==="!"?`!(${this.generateExpression(e.operands[0])})`:`(${e.operands.map(t=>this.generateExpression(t)).join(` ${e.operator} `)})`;case"arithmetic":return`(${this.generateExpression(e.left)} ${e.operator} ${this.generateExpression(e.right)})`;case"function":return`${e.function.toUpperCase()}(${e.args.map(t=>this.generateExpression(t)).join(", ")})`;case"functionCall":return`${(typeof e.function=="string"?e.function:e.function.value).toUpperCase()}(${e.args.map(r=>this.generateExpression(r)).join(", ")})`;case"exists":return`${e.negated?"NOT EXISTS":"EXISTS"} { ${this.generateWhereClause(e.pattern,0)} }`;case"in":{let t=this.generateExpression(e.expression),r=e.list.map(i=>this.generateExpression(i)).join(", ");return e.negated?`${t} NOT IN (${r})`:`${t} IN (${r})`}default:throw new sl(`Unknown expression type: ${e.type}`)}}collectVariablesFromOperation(e,t){switch(e.type){case"bgp":for(let r of e.triples)this.collectVariablesFromTriple(r,t);break;case"filter":this.collectVariablesFromOperation(e.input,t),this.collectVariablesFromExpression(e.expression,t);break;case"join":case"leftjoin":case"union":case"minus":this.collectVariablesFromOperation(e.left,t),this.collectVariablesFromOperation(e.right,t);break;case"values":for(let r of e.variables)t.add(r);break;case"project":for(let r of e.variables)t.add(r);this.collectVariablesFromOperation(e.input,t);break;case"extend":t.add(e.variable),this.collectVariablesFromOperation(e.input,t);break;case"orderby":case"slice":case"distinct":case"reduced":this.collectVariablesFromOperation(e.input,t);break;case"group":for(let r of e.variables)t.add(r);for(let r of e.aggregates)t.add(r.variable);this.collectVariablesFromOperation(e.input,t);break;case"subquery":this.collectVariablesFromOperation(e.query,t);break}}collectVariablesFromTriple(e,t){e.subject.type==="variable"&&t.add(e.subject.value),"type"in e.predicate&&e.predicate.type==="variable"&&t.add(e.predicate.value),e.object.type==="variable"&&t.add(e.object.value)}collectVariablesFromExpression(e,t){switch(e.type){case"variable":t.add(e.name);break;case"comparison":case"arithmetic":this.collectVariablesFromExpression(e.left,t),this.collectVariablesFromExpression(e.right,t);break;case"logical":for(let r of e.operands)this.collectVariablesFromExpression(r,t);break;case"function":case"functionCall":for(let r of e.args)this.collectVariablesFromExpression(r,t);break;case"exists":this.collectVariablesFromOperation(e.pattern,t);break;case"in":this.collectVariablesFromExpression(e.expression,t);for(let r of e.list)this.collectVariablesFromExpression(r,t);break}}};al.SPARQLGenerator=rS});var cl=S(In=>{"use strict";var e5=In&&In.__createBinding||(Object.create?(function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(n,r,i)}):(function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]})),t5=In&&In.__setModuleDefault||(Object.create?(function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}):function(n,e){n.default=e}),$x=In&&In.__importStar||(function(){var n=o(function(e){return n=Object.getOwnPropertyNames||function(t){var r=[];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r[r.length]=i);return r},n(e)},"ownKeys");return function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=n(e),i=0;i<r.length;i++)r[i]!=="default"&&e5(t,e,r[i]);return t5(t,e),t}})();Object.defineProperty(In,"__esModule",{value:!0});In.QueryExecutor=In.ExoQLQueryExecutor=In.QueryExecutorError=void 0;var r5=w1(),n5=Lp(),i5=V1(),s5=q1(),a5=Ix(),o5=Px(),c5=Dx(),l5=Z1(),u5=Lx(),f5=Mx(),d5=jx(),h5=Ae(),p5=Ne(),m5=Ip(),Mr="http://www.w3.org/2001/XMLSchema#",g5=new Set([`${Mr}integer`,`${Mr}decimal`,`${Mr}float`,`${Mr}double`,`${Mr}nonPositiveInteger`,`${Mr}negativeInteger`,`${Mr}long`,`${Mr}int`,`${Mr}short`,`${Mr}byte`,`${Mr}nonNegativeInteger`,`${Mr}unsignedLong`,`${Mr}unsignedInt`,`${Mr}unsignedShort`,`${Mr}unsignedByte`,`${Mr}positiveInteger`]),ol=class extends Error{static{o(this,"QueryExecutorError")}constructor(e,t){super(e,t?{cause:t}:void 0),this.name="QueryExecutorError"}};In.QueryExecutorError=ol;var Wp=class{static{o(this,"ExoQLQueryExecutor")}constructor(e,t={}){this.tripleStore=e,this.bgpExecutor=new r5.BGPExecutor(e),this.filterExecutor=new n5.FilterExecutor,this.optionalExecutor=new i5.OptionalExecutor,this.unionExecutor=new s5.UnionExecutor,this.minusExecutor=new a5.MinusExecutor,this.valuesExecutor=new o5.ValuesExecutor,this.aggregateExecutor=new c5.AggregateExecutor,this.constructExecutor=new l5.ConstructExecutor,this.serviceExecutor=new u5.ServiceExecutor(t.serviceConfig),this.graphExecutor=new f5.GraphExecutor(e),this.sparqlGenerator=new d5.SPARQLGenerator,this.filterExecutor.setExistsEvaluator(async(r,i)=>this.evaluateExistsPattern(r,i)),this.filterExecutor.setTripleStore(e)}async evaluateExistsPattern(e,t){for await(let r of this.execute(e))if(t.merge(r)!==null)return!0;return!1}async executeAll(e){let t=[];for await(let r of this.execute(e))t.push(r);return t}async*execute(e){switch(e.type){case"bgp":yield*this.executeBGP(e);break;case"filter":yield*this.executeFilter(e);break;case"join":yield*this.executeJoin(e);break;case"leftjoin":yield*this.executeLeftJoin(e);break;case"union":yield*this.executeUnion(e);break;case"minus":yield*this.executeMinus(e);break;case"values":yield*this.executeValues(e);break;case"project":yield*this.executeProject(e);break;case"orderby":yield*this.executeOrderBy(e);break;case"slice":yield*this.executeSlice(e);break;case"distinct":yield*this.executeDistinct(e);break;case"reduced":yield*this.executeReduced(e);break;case"group":yield*this.executeGroup(e);break;case"extend":yield*this.executeExtend(e);break;case"subquery":yield*this.executeSubquery(e);break;case"lateraljoin":yield*this.executeLateralJoin(e);break;case"service":yield*this.executeService(e);break;case"graph":yield*this.executeGraph(e);break;default:throw new ol(`Unknown operation type: ${e.type}`)}}async*executeBGP(e){yield*this.bgpExecutor.execute(e)}async*executeFilter(e){let t=this.execute(e.input);yield*this.filterExecutor.execute(e,t)}async*executeJoin(e){let t=[];for await(let a of this.execute(e.left))t.push(a);if(t.length===0)return;let r=new Set;for(let a of t)for(let c of a.variables())r.add(c);let i=this.collectOperationVariables(e.right);if([...r].some(a=>i.has(a)))for(let a of t){let c=this.substituteVariables(e.right,a);for await(let l of this.execute(c)){let u=a.merge(l);u!==null&&(yield u)}}else{let a=[];for await(let c of this.execute(e.right))a.push(c);for(let c of t)for(let l of a){let u=c.merge(l);u!==null&&(yield u)}}}async*executeLeftJoin(e){let t=[];for await(let a of this.execute(e.left))t.push(a);let r=[];for await(let a of this.execute(e.right))r.push(a);async function*i(){for(let a of t)yield a}o(i,"leftGen");async function*s(){for(let a of r)yield a}o(s,"rightGen"),yield*this.optionalExecutor.execute(i(),s())}async*executeUnion(e){let t=[];for await(let a of this.execute(e.left))t.push(a);let r=[];for await(let a of this.execute(e.right))r.push(a);async function*i(){for(let a of t)yield a}o(i,"leftGen");async function*s(){for(let a of r)yield a}o(s,"rightGen"),yield*this.unionExecutor.execute(i(),s())}async*executeMinus(e){let t=[];for await(let a of this.execute(e.left))t.push(a);let r=[];for await(let a of this.execute(e.right))r.push(a);async function*i(){for(let a of t)yield a}o(i,"leftGen");async function*s(){for(let a of r)yield a}o(s,"rightGen"),yield*this.minusExecutor.execute(i(),s())}async*executeValues(e){yield*this.valuesExecutor.execute(e)}async*executeProject(e){let{SolutionMapping:t}=await Promise.resolve().then(()=>$x(us())),r=new Set(e.variables);for await(let i of this.execute(e.input)){let s=new t;for(let a of i.variables())if(r.has(a)){let c=i.get(a);c!==void 0&&s.set(a,c)}yield s}}async*executeOrderBy(e){let t=[];for await(let r of this.execute(e.input))t.push(r);t.sort((r,i)=>{for(let s of e.comparators){let a=this.getExpressionValue(s.expression,r),c=this.getExpressionValue(s.expression,i),l=0;if(a===void 0&&c===void 0?l=0:a===void 0?l=1:c===void 0?l=-1:typeof a=="number"&&typeof c=="number"?l=a-c:l=String(a).localeCompare(String(c)),s.descending&&(l=-l),l!==0)return l}return 0});for(let r of t)yield r}async*executeSlice(e){let t=0,r=e.offset??0,i=e.limit;for await(let s of this.execute(e.input)){if(t>=r){if(i!==void 0&&t-r>=i)break;yield s}t++}}async*executeDistinct(e){let t=new Set;for await(let r of this.execute(e.input)){let i=this.getSolutionKey(r);t.has(i)||(t.add(i),yield r)}}async*executeReduced(e){let t=new Set;for await(let r of this.execute(e.input)){let i=this.getSolutionKey(r);t.has(i)||(t.add(i),yield r)}}async*executeGroup(e){let t=[];for await(let i of this.execute(e.input))t.push(i);let r=this.aggregateExecutor.execute(e,t);if(e.having&&e.having.length>0)for(let i of r)e.having.every(a=>this.filterExecutor.evaluateExpression(a,i)===!0)&&(yield i);else for(let i of r)yield i}async*executeExtend(e){let t=e.expression.type!=="aggregate"&&this.filterExecutor.expressionContainsExists(e.expression);for await(let r of this.execute(e.input)){let i=r.clone(),s=t?await this.evaluateExtendExpressionAsync(e.expression,r):this.evaluateExtendExpression(e.expression,r);s!==void 0&&i.set(e.variable,s),yield i}}async*executeSubquery(e){yield*this.execute(e.query)}async*executeLateralJoin(e){let t=[];for await(let r of this.execute(e.left))t.push(r);for(let r of t){let i=this.substituteVariables(e.right,r);for await(let s of this.execute(i)){let a=r.merge(s);a!==null&&(yield a)}}}substituteVariables(e,t){let r=JSON.parse(JSON.stringify(e));return this.substituteInOperation(r,t)}substituteInOperation(e,t){if(!e||typeof e!="object")return e;let r=e;return e.type==="bgp"&&e.triples?(e.triples=e.triples.map(i=>this.substituteInTriple(i,t)),e):(r.input&&(r.input=this.substituteInOperation(r.input,t)),r.left&&(r.left=this.substituteInOperation(r.left,t)),r.right&&(r.right=this.substituteInOperation(r.right,t)),r.pattern&&(r.pattern=this.substituteInOperation(r.pattern,t)),r.query&&(r.query=this.substituteInOperation(r.query,t)),r.where&&(r.where=this.substituteInOperation(r.where,t)),r.expression&&this.substituteInExpression(r.expression,t),e)}substituteInExpression(e,t){if(!(!e||typeof e!="object")){if(e.type==="exists"&&e.pattern&&(e.pattern=this.substituteInOperation(e.pattern,t)),e.left&&this.substituteInExpression(e.left,t),e.right&&this.substituteInExpression(e.right,t),e.operands)for(let r of e.operands)this.substituteInExpression(r,t);if(e.args)for(let r of e.args)this.substituteInExpression(r,t);if(e.expression&&this.substituteInExpression(e.expression,t),e.list)for(let r of e.list)this.substituteInExpression(r,t)}}substituteInTriple(e,t){return{subject:this.substituteInTripleElement(e.subject,t),predicate:e.predicate,object:this.substituteInTripleElement(e.object,t)}}substituteInTripleElement(e,t){if(e&&e.type==="variable"){let r=t.get(e.value);if(r!=null){let i=r;if(r instanceof h5.IRI||i.termType==="NamedNode")return{type:"iri",value:r.value};if(i.termType==="Literal"||typeof i.value=="string")return{type:"literal",value:i.value,datatype:i.datatype?.value??i._datatype?.value,language:i.language??i._language}}}return e}async*executeService(e){yield*this.serviceExecutor.execute(e,t=>this.sparqlGenerator.generateSelect(t))}async*executeGraph(e){let t=async function*(r,i){let s=this.currentGraphContext;this.currentGraphContext=i;try{r.type==="bgp"&&i&&this.tripleStore.matchInGraph?yield*this.executeBGPInGraph(r,i):yield*this.execute(r)}finally{this.currentGraphContext=s}}.bind(this);yield*this.graphExecutor.execute(e,t)}async*executeBGPInGraph(e,t){if(e.triples.length===0){let{SolutionMapping:r}=await Promise.resolve().then(()=>$x(us()));yield new r;return}yield*this.bgpExecutor.executeInGraph(e,t)}evaluateExtendExpression(e,t){if(e.type!=="aggregate")try{return this.filterExecutor.evaluateExpression(e,t)}catch{return}}async evaluateExtendExpressionAsync(e,t){if(e.type!=="aggregate")try{return await this.filterExecutor.evaluateExpressionAsync(e,t)}catch{return}}getExpressionValue(e,t){if(e.type==="variable"){let r=t.get(e.name);if(!r)return;if(r instanceof p5.Literal){let i=r.datatype?.value;if(i===`${Mr}dayTimeDuration`)try{return m5.DateTimeFunctions.parseDayTimeDuration(r.value)}catch{return r.value}if(i&&g5.has(i)){let s=parseFloat(r.value);if(!Number.isNaN(s))return s}return r.value}return r.value??r.id??String(r)}if(e.type==="literal")return e.value}collectOperationVariables(e){let t=new Set;return this.collectVarsFromOperation(e,t),t}collectVarsFromOperation(e,t){if(!e||typeof e!="object")return;let r=e;if(r.type==="bgp"&&r.triples)for(let i of r.triples)this.collectVarsFromElement(i.subject,t),i.predicate?.type!=="path"&&this.collectVarsFromElement(i.predicate,t),this.collectVarsFromElement(i.object,t);if(r.type==="values"&&r.variables)for(let i of r.variables)t.add(i);r.expression&&this.collectVarsFromExpressionTree(r.expression,t),r.type==="extend"&&r.variable&&t.add(r.variable),r.input&&this.collectVarsFromOperation(r.input,t),r.left&&this.collectVarsFromOperation(r.left,t),r.right&&this.collectVarsFromOperation(r.right,t),r.pattern&&this.collectVarsFromOperation(r.pattern,t),r.query&&this.collectVarsFromOperation(r.query,t),r.where&&this.collectVarsFromOperation(r.where,t)}collectVarsFromElement(e,t){if(!e||typeof e!="object")return;let r=e;r.type==="variable"&&t.add(r.value),r.type==="quoted"&&(this.collectVarsFromElement(r.subject,t),this.collectVarsFromElement(r.predicate,t),this.collectVarsFromElement(r.object,t))}collectVarsFromExpressionTree(e,t){if(!e||typeof e!="object")return;let r=e;if(r.type==="variable"&&r.name&&t.add(r.name),r.type==="exists"&&r.pattern&&this.collectVarsFromOperation(r.pattern,t),r.left&&this.collectVarsFromExpressionTree(r.left,t),r.right&&this.collectVarsFromExpressionTree(r.right,t),r.operands)for(let i of r.operands)this.collectVarsFromExpressionTree(i,t);if(r.args)for(let i of r.args)this.collectVarsFromExpressionTree(i,t);if(r.expression&&this.collectVarsFromExpressionTree(r.expression,t),r.list)for(let i of r.list)this.collectVarsFromExpressionTree(i,t)}getSolutionKey(e){let t=e.toJSON();return Object.keys(t).sort().map(i=>`${i}=${t[i]}`).join("|")}isConstructQuery(e){return e.type==="construct"}async executeConstruct(e){if(e.type!=="construct")throw new ol("executeConstruct requires a CONSTRUCT operation");let t=await this.executeAll(e.where);return this.constructExecutor.execute(e.template,t)}isAskQuery(e){return e.type==="ask"}async executeAsk(e){if(e.type!=="ask")throw new ol("executeAsk requires an ASK operation");for await(let t of this.execute(e.where))return!0;return!1}};In.ExoQLQueryExecutor=Wp;In.QueryExecutor=Wp});var Bx=S(Js=>{"use strict";var y5=Js&&Js.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},_5=Js&&Js.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(Js,"__esModule",{value:!0});Js.CommandResolver=void 0;var S5=fe(),v5=Pc(),gi=Ae(),Vn=Ne(),ee=yr(),nS=Tc(),ll=S0(),b5=Bc(),w5=Uc(),E5=cl(),iS=10,sS=class{static{o(this,"CommandResolver")}constructor(e,t=v5.NullLogger){this.tripleStore=e,this.logger=t,this.cache=new Map,this.multiCache=new Map}async resolveForAssetMulti(e,t,r){if(t.length===0)return[];let i=[...t].sort().join(","),s=`${e}::${i}::${r??""}`,a=this.multiCache.get(s);if(a)return a;let c=new Set,l=[];for(let u of t){let f=await this.resolveForAsset(e,u,r);for(let d of f)c.has(d.binding.id)||(c.add(d.binding.id),l.push(d))}return l.sort((u,f)=>{let d=this.getBindingPriority(u.binding),h=this.getBindingPriority(f.binding);return d!==h?d-h:(u.binding.order??100)-(f.binding.order??100)}),this.multiCache.set(s,l),l}async resolveForAsset(e,t,r){let i=`${e}:${t}:${r??""}`,s=this.cache.get(i);if(s)return s;let a=await this.findBindings(t,r,e),c=[];for(let l of a){let u=await this.loadCommand(l.commandRef);if(!u)continue;let f=l.precondition?{...u,precondition:l.precondition}:u;c.push({command:f,binding:l})}return c.sort((l,u)=>{let f=this.getBindingPriority(l.binding),d=this.getBindingPriority(u.binding);return f!==d?f-d:(l.binding.order??100)-(u.binding.order??100)}),this.cache.set(i,c),c}async loadCommand(e){let t=await this.findSubjectByUID(e);if(!t||(await this.tripleStore.match(t,ee.Namespace.RDF.term("type"),ee.Namespace.EXOCMD.term("Command"))).length===0)return null;let i=await this.getLiteralValue(t,ee.Namespace.EXO.term("Asset_label"))??"Unknown Command",s=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_labelTemplate")),a=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_icon")),c=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_confirmMessage")),l=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_successMessage")),u=await this.getLiteralValue(t,ee.Namespace.EXOCMD.term("Command_category")),f=await this.loadLinkedPrecondition(t),d=await this.loadLinkedGrounding(t,0);return d?{id:e,name:i,labelTemplate:s??void 0,icon:a??void 0,precondition:f??void 0,grounding:d,confirmMessage:c??void 0,successMessage:l??void 0,category:u??void 0}:null}async findBindings(e,t,r){let i=await this.tripleStore.match(void 0,ee.Namespace.RDF.term("type"),ee.Namespace.EXOCMD.term("CommandBinding")),s=[];for(let a of i){let c=a.subject,l=await this.loadBindingDefinition(c);l&&this.bindingMatches(l,e,t,r)&&s.push(l)}return s}invalidateCache(){this.cache.clear(),this.multiCache.clear()}async resolveLabel(e,t){if(!e.labelTemplate)return e.name;let r=e.labelTemplate,i=this.extractPlaceholders(e.labelTemplate);for(let{full:s,body:a}of i){let c=await this.evaluateSelectSnippet(a,t);r=r.replace(s,c)}return r}extractPlaceholders(e){let t=[],r=0;for(;r<e.length;)if(e[r]==="{"){let i=1,s=r+1;for(;s<e.length&&i>0;)e[s]==="{"?i++:e[s]==="}"&&i--,s++;if(i===0){let a=e.slice(r,s),c=e.slice(r+1,s-1);t.push({full:a,body:c})}r=s}else r++;return t}async evaluateSelectSnippet(e,t){try{let r=e.replace(/\$target/g,`<${t}>`),s=new b5.ExoQLParser().parse(r),c=new w5.ExoQLAlgebraTranslator().translate(s),u=await new E5.ExoQLQueryExecutor(this.tripleStore).executeAll(c);if(u.length===0)return"";let f=u[0],d=f.variables();if(d.length===0)return"";let h=f.get(d[0]);return h?h instanceof Vn.Literal||h instanceof gi.IRI?h.value:String(h):""}catch{return""}}async loadBindingDefinition(e){let t=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_uid"));if(!t)return null;let r=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_label"))??"",i=await this.getLinkedUID(e,ee.Namespace.EXOCMD.term("CommandBinding_command"));if(!i)return null;let s=await this.getLinkedValue(e,ee.Namespace.EXOCMD.term("CommandBinding_targetClass")),a=await this.getLinkedValue(e,ee.Namespace.EXOCMD.term("CommandBinding_targetPrototype")),c=await this.getLinkedValue(e,ee.Namespace.EXOCMD.term("CommandBinding_targetAsset"));if(!s&&!a&&!c)return null;let l=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBinding_position")),u=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBinding_order")),f=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBinding_variant")),d=f!==null?this.coerceVariant(f,t):void 0,h=await this.loadLinkedPreconditionFromProperty(e,ee.Namespace.EXOCMD.term("CommandBinding_precondition")),p=await this.loadLinkedStyle(e,t);return{id:t,label:r,commandRef:i,targetClass:s??void 0,targetPrototype:a??void 0,targetAsset:c??void 0,position:l??void 0,order:u?parseInt(u,10):void 0,variant:d,precondition:h??void 0,style:p??void 0}}async loadLinkedStyle(e,t){let r=await this.tripleStore.match(e,ee.Namespace.EXOCMD.term("CommandBinding_style"),void 0);if(r.length>0){let s=r[0].object,a=null;if(s instanceof gi.IRI)a=s;else if(s instanceof Vn.Literal){let c=this.normalizeWikilink(s.value);a=await this.findSubjectByUID(c)}if(a){let c=await this.loadStyleAsset(a);if(c)return c}this.logger.warn(this.capWarning(`CommandBinding ${t}: style reference unresolved, falling back to inline variant`))}let i=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBinding_variant"));if(i!==null){let s=this.coerceVariant(i,t);if(s!==void 0)return{id:`inline:${t}`,label:"",variant:s,inline:!0}}return null}async loadStyleAsset(e){let t=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_uid"));if(!t)return null;let r=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_label"))??"",i=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_variant")),s=i!==null?this.coerceVariant(i,t):void 0,a=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_showIcon")),c=this.coerceBoolean(a),l=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_labelClass")),u=l!==null?this.coerceLabelClass(l,t):void 0,f=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_ariaLabel")),d=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_tooltip")),h=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_keyboardShortcut")),p=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("CommandBindingStyle_source")),y=p!==null?this.coerceStyleSource(p,t):void 0;return{id:t,label:r,variant:s,showIcon:c,labelClass:u,ariaLabel:f??void 0,tooltip:d??void 0,keyboardShortcut:h??void 0,source:y,inline:!1}}coerceVariant(e,t){if(e==null)return;let r=String(e).trim().toLowerCase();if(r!==""){if(ll.COMMAND_VARIANT_VALUES.includes(r))return r;this.logger.warn(this.capWarning(`CommandBindingStyle variant "${r}" not in whitelist [${ll.COMMAND_VARIANT_VALUES.join(",")}]; dropped (asset ${t})`))}}coerceLabelClass(e,t){if(e==null)return;let r=String(e).trim().toLowerCase();if(r!==""){if(ll.LABEL_CLASS_VALUES.includes(r))return r;this.logger.warn(this.capWarning(`CommandBindingStyle labelClass "${r}" not in whitelist [${ll.LABEL_CLASS_VALUES.join(",")}]; dropped (asset ${t})`))}}coerceStyleSource(e,t){if(e==null)return;let r=String(e).trim().toLowerCase();if(r!==""){if(ll.STYLE_SOURCE_VALUES.includes(r))return r;this.logger.warn(this.capWarning(`CommandBindingStyle source "${r}" not in whitelist [${ll.STYLE_SOURCE_VALUES.join(",")}]; dropped (asset ${t})`))}}coerceBoolean(e){if(e===null)return;let t=e.trim().toLowerCase();if(t==="true")return!0;if(t==="false")return!1}capWarning(e){return e.length<=200?e:e.slice(0,197)+"..."}bindingMatches(e,t,r,i){return!!(e.targetAsset&&i&&this.matchesReference(e.targetAsset,i)||e.targetPrototype&&r&&this.matchesReference(e.targetPrototype,r)||e.targetClass&&t&&this.matchesReference(e.targetClass,t))}matchesReference(e,t){let r=this.normalizeWikilink(e),i=this.normalizeWikilink(t);if(r===i)return!0;let s=this.extractPathBasename(i);if(s&&s===r)return!0;let a=this.extractPathBasename(r);if(a&&a===i)return!0;let c=this.extractAlias(t);if(c&&r===c)return!0;let l=this.extractAlias(e);return!!(l&&l===i)}extractPathBasename(e){let t=e.match(/\/([^/]+)\.md$/);return t?t[1]:null}extractAlias(e){let t=e.replace(/["'[\]]/g,"").trim(),r=t.indexOf("|");return r>=0?t.substring(r+1).trim():null}getBindingPriority(e){return e.targetAsset?0:e.targetPrototype?1:2}async loadLinkedPrecondition(e){return this.loadLinkedPreconditionFromProperty(e,ee.Namespace.EXOCMD.term("Command_precondition"))}async loadLinkedPreconditionFromProperty(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object,s=null;if(i instanceof gi.IRI)s=i;else if(i instanceof Vn.Literal){let h=this.normalizeWikilink(i.value);s=await this.findSubjectByUID(h)}if(!s)return null;let a=await this.getLiteralValue(s,ee.Namespace.EXO.term("Asset_uid")),c=await this.getLiteralValue(s,ee.Namespace.EXO.term("Asset_label"))??"",l=await this.getLiteralValue(s,ee.Namespace.EXOCMD.term("Precondition_sparqlAsk")),u=await this.getLiteralValue(s,ee.Namespace.EXOCMD.term("Precondition_hostFunction")),f=await this.tripleStore.match(s,ee.Namespace.EXOCMD.term("Precondition_query"),void 0),d;if(f.length>0){let h=f[0].object;if(h instanceof gi.IRI){let p=await this.getLiteralValue(h,ee.Namespace.EXO.term("Asset_uid"));p&&(d=p)}else h instanceof Vn.Literal&&(d=this.normalizeWikilink(h.value))}return!a||!l&&!u&&!d?null:{id:a,label:c,...l&&{sparqlAsk:l},...u&&{hostFunction:u},...d&&{query:d}}}async loadLinkedGrounding(e,t){if(t>=iS)return null;let r=await this.tripleStore.match(e,ee.Namespace.EXOCMD.term("Command_grounding"),void 0);if(r.length===0)return null;let i=r[0].object,s=null;if(i instanceof gi.IRI)s=i;else if(i instanceof Vn.Literal){let a=this.normalizeWikilink(i.value);s=await this.findSubjectByUID(a)}return s?this.loadGroundingDefinition(s,t):null}async loadGroundingDefinition(e,t){if(t>=iS)return null;let r=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_uid"));if(!r)return null;let i=await this.getLiteralValue(e,ee.Namespace.EXO.term("Asset_label"))??"",s=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_type"));if(!s)return null;let a=this.resolveGroundingType(s);if(!a)return null;let c=await this.getObsidianName(e,ee.Namespace.EXOCMD.term("Grounding_targetProperty"));if(a===nS.GroundingType.SERVICE_CALL){let b=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_serviceId"));b&&(c=b)}let l=await this.getObsidianWikilinkValue(e,ee.Namespace.EXOCMD.term("Grounding_targetValue")),u=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_sparqlUpdate")),f=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_targetClass")),d=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_targetPrototype")),h=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_targetFolder")),p=await this.getLiteralValue(e,ee.Namespace.EXOCMD.term("Grounding_inputSchema")),y;a===nS.GroundingType.COMPOSITE&&(y=await this.loadCompositeSteps(e,t+1));let v;if(p)try{let b=JSON.parse(p);b?.properties&&(v=Object.entries(b.properties).map(([A,I])=>({name:A,type:I.type==="string"?"text":I.type,label:I.title??A,required:Array.isArray(b.required)&&b.required.includes(A)})))}catch{}let w={id:r,label:i,type:a,targetProperty:c??void 0,targetValue:l??void 0,sparqlUpdate:u??void 0,steps:y,targetClass:f??void 0,targetPrototype:d??void 0,targetFolder:h??void 0};return v&&(w.inputSchema=v),w}async loadCompositeSteps(e,t){if(t>=iS)return[];let r=await this.tripleStore.match(e,ee.Namespace.EXOCMD.term("Grounding_steps"),void 0),i=[];for(let s of r){let a=null;if(s.object instanceof gi.IRI)a=s.object;else if(s.object instanceof Vn.Literal){let l=this.normalizeWikilink(s.object.value);a=await this.findSubjectByUID(l)}if(!a)continue;let c=await this.loadGroundingDefinition(a,t);c&&i.push(c)}return i}resolveGroundingType(e){let t=e.toLowerCase().trim();return Object.values(nS.GroundingType).includes(t)?t:null}async findSubjectByUID(e){if(this.tripleStore.findSubjectsByUUID){let r=await this.tripleStore.findSubjectsByUUID(e);if(r.length>0)return r[0]}let t=await this.tripleStore.match(void 0,ee.Namespace.EXO.term("Asset_uid"),void 0);for(let r of t)if(r.object instanceof Vn.Literal&&r.object.value===e)return r.subject;return null}async getLiteralValue(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;return i instanceof Vn.Literal||i instanceof gi.IRI?i.value:null}async getLinkedUID(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;if(i instanceof gi.IRI){let s=await this.tripleStore.match(i,ee.Namespace.EXO.term("Asset_uid"),void 0);return s.length>0&&s[0].object instanceof Vn.Literal?s[0].object.value:i.value.split("/").pop()?.replace(".md","")??null}return i instanceof Vn.Literal?this.normalizeWikilink(i.value):null}async getLinkedValue(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;return i instanceof Vn.Literal?this.normalizeWikilink(i.value):i instanceof gi.IRI?this.iriToObsidianName(i.value)??i.value:null}async getObsidianName(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;return i instanceof Vn.Literal?i.value:i instanceof gi.IRI?this.iriToObsidianName(i.value)??i.value:null}async getObsidianWikilinkValue(e,t){let r=await this.tripleStore.match(e,t,void 0);if(r.length===0)return null;let i=r[0].object;if(i instanceof Vn.Literal)return this.resolveWikilinkAlias(i.value);if(i instanceof gi.IRI){let s=this.iriToObsidianName(i.value);return s?`"[[${s}]]"`:i.value}return null}async resolveWikilinkAlias(e){let t=e.match(/\[\[([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})\]\]/);if(!t)return e;let r=t[1],i=await this.findSubjectByUID(r);if(!i)return e;let s=await this.getLiteralValue(i,ee.Namespace.EXO.term("Asset_label"));return s?e.replace(`[[${r}]]`,`[[${r}|${s}]]`):e}iriToObsidianName(e){let t=e.lastIndexOf("#");if(t>=0){let i=e.substring(0,t+1),s=e.substring(t+1);if(i===ee.Namespace.EMS.iri.value)return`ems__${s}`;if(i===ee.Namespace.EXO.iri.value)return`exo__${s}`;if(i===ee.Namespace.EXOCMD.iri.value)return`exocmd__${s}`;if(i===ee.Namespace.IMS.iri.value)return`ims__${s}`;if(i===ee.Namespace.ZTLK.iri.value)return`ztlk__${s}`;if(i===ee.Namespace.PTMS.iri.value)return`ptms__${s}`;if(i===ee.Namespace.LIT.iri.value)return`lit__${s}`;if(i===ee.Namespace.INBOX.iri.value)return`inbox__${s}`}let r=e.match(/\/([^/]+)\.md$/);return r?r[1]:null}normalizeWikilink(e){let t=e.replace(/["'[\]]/g,"").trim(),r=t.indexOf("|");return r>=0?t.substring(0,r):t}};Js.CommandResolver=sS;Js.CommandResolver=sS=y5([(0,S5.injectable)(),_5("design:paramtypes",[Object,Object])],sS)});var oS=S(aS=>{"use strict";Object.defineProperty(aS,"__esModule",{value:!0});aS.validateExoQLAllowlist=T5;var Gp=rf();function T5(n){if(!n||typeof n!="object")return;let e=n;if(e.type==="update"){let t=n.updates??[];for(let r of t)if(r?.type==="load")throw new Gp.ExoQLForbiddenKeywordError("LOAD");throw new Gp.ExoQLForbiddenKeywordError("UPDATE")}if(e.type==="query"){if(e.from){let t=Array.isArray(e.from.default)&&e.from.default.length>0,r=Array.isArray(e.from.named)&&e.from.named.length>0;if(t||r)throw new Gp.ExoQLForbiddenKeywordError("FROM")}if(Array.isArray(e.where))for(let t of e.where)zp(t);if(Array.isArray(e.template))for(let t of e.template)zp(t)}}o(T5,"validateExoQLAllowlist");function zp(n){if(!n||typeof n!="object")return;if(n.type==="service")throw new Gp.ExoQLForbiddenKeywordError("SERVICE");if(Array.isArray(n.patterns))for(let t of n.patterns)zp(t);let e=n.where;if(Array.isArray(e))for(let t of e)zp(t)}o(zp,"walkPatternForBannedKeywords")});var cS=S(Hp=>{"use strict";Object.defineProperty(Hp,"__esModule",{value:!0});Hp.DEFAULT_EVAL_CONFIG=void 0;Hp.DEFAULT_EVAL_CONFIG=Object.freeze({enabled:!0,maxNestedEvalCount:100,maxAggregateEvalMillis:1e4})});var uS=S(lS=>{"use strict";Object.defineProperty(lS,"__esModule",{value:!0});lS.evaluateWithExoEval=O5;var A5=Bc(),x5=Uc(),C5=cl(),I5=oS(),R5=cS(),P5=rf();async function O5(n,e={}){if(typeof n!="string")throw new TypeError("evaluateWithExoEval: sparql must be a string");let r=new A5.ExoQLParser().parse(n);if((0,I5.validateExoQLAllowlist)(r),!{...R5.DEFAULT_EVAL_CONFIG,...e.config??{}}.enabled)throw new P5.ExoQLEvalDisabledError;let s="queryType"in r&&typeof r.queryType=="string"?r.queryType:"SELECT";if(!e.store)return s==="ASK"?{kind:"ask",result:!1}:s==="CONSTRUCT"?{kind:"construct",triples:[]}:{kind:"select",rows:[]};let c=new x5.ExoQLAlgebraTranslator().translate(r),l=new C5.ExoQLQueryExecutor(e.store);return l.isAskQuery(c)?{kind:"ask",result:await l.executeAsk(c)}:l.isConstructQuery(c)?{kind:"construct",triples:await l.executeConstruct(c)}:{kind:"select",rows:await l.executeAll(c)}}o(O5,"evaluateWithExoEval")});var Ux=S(Zs=>{"use strict";var F5=Zs&&Zs.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},D5=Zs&&Zs.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},sf;Object.defineProperty(Zs,"__esModule",{value:!0});Zs.PreconditionEvaluator=void 0;var N5=fe(),L5=Bc(),k5=Uc(),Vx=cl(),M5=uS(),af=sf=class{static{o(this,"PreconditionEvaluator")}constructor(e,t){this.hostFunctions=new Map,this.askCache=new Map,this.tripleStore=e,this.queryBodyResolver=t}async evaluate(e,t,r){return e?e.sparqlAsk?this.evaluateSparqlAsk(e.sparqlAsk,t):e.query?this.evaluateQueryRef(e.query,t):e.hostFunction?this.evaluateHostFunction(e.hostFunction,t,r):!0:!0}async evaluateQueryRef(e,t){if(!this.queryBodyResolver)return!1;try{let r=await this.queryBodyResolver.resolveSparql(e);if(!r)return!1;let i=this.substituteVariables(r,t),s=await(0,M5.evaluateWithExoEval)(i,{store:this.tripleStore});return s.kind!=="ask"?!1:s.result}catch{return!1}}registerHostFunction(e,t){this.hostFunctions.set(e,t)}hasHostFunction(e){return this.hostFunctions.has(e)}invalidateCache(){this.askCache.clear()}compileAsk(e){let t=this.substituteVariables(e,sf.SENTINEL_IRI),i=new L5.ExoQLParser().parse(t),a=new k5.ExoQLAlgebraTranslator().translate(i);return new Vx.ExoQLQueryExecutor(this.tripleStore).isAskQuery(a)?a:null}evaluateHostFunction(e,t,r){let i=this.hostFunctions.get(e);if(!i)return!0;let s=r?{...r,targetIRI:t}:{targetIRI:t};return i(s)}async evaluateSparqlAsk(e,t){try{let r=this.askCache.get(e);if(r===void 0){let a=this.compileAsk(e);if(!a)return!1;r=a,this.askCache.set(e,r)}let i=JSON.parse(JSON.stringify(r).replaceAll(sf.SENTINEL_IRI,t));return await new Vx.ExoQLQueryExecutor(this.tripleStore).executeAsk(i)}catch{return!1}}substituteVariables(e,t){let r=new Date().toISOString(),i=r.slice(0,10),s=new Date,a=new Date(s.getTime()+sf.ALMATY_OFFSET_MS),c=a.getUTCFullYear(),l=a.getUTCMonth(),u=a.getUTCDate(),f=a.getUTCDay(),h=new Date(Date.UTC(c,l,u-1)).toISOString().slice(0,10),p=(f+6)%7,y=new Date(Date.UTC(c,l,u-p)),v=y.toISOString().slice(0,10),b=new Date(y.getTime()-10080*60*1e3).toISOString().slice(0,10),A=`${c}-${String(l+1).padStart(2,"0")}-01`,I=l===0?11:l-1,V=`${l===0?c-1:c}-${String(I+1).padStart(2,"0")}-01`,te=`${c}-01-01`;return e.replace(/\$target/g,`<${t}>`).replace(/\$now/g,`"${r}"^^xsd:dateTime`).replace(/\$yesterday/g,`"${h}"^^xsd:date`).replace(/\$thisWeekStart/g,`"${v}"^^xsd:date`).replace(/\$lastWeekStart/g,`"${b}"^^xsd:date`).replace(/\$thisMonthStart/g,`"${A}"^^xsd:date`).replace(/\$lastMonthStart/g,`"${V}"^^xsd:date`).replace(/\$thisYearStart/g,`"${te}"^^xsd:date`).replace(/\$today/g,`"${i}"^^xsd:date`)}};Zs.PreconditionEvaluator=af;af.SENTINEL_IRI="urn:exocortex:cache-sentinel:target";af.ALMATY_OFFSET_MS=300*60*1e3;Zs.PreconditionEvaluator=af=sf=F5([(0,N5.injectable)(),D5("design:paramtypes",[Object,Object])],af)});var ei=S(Qp=>{"use strict";Object.defineProperty(Qp,"__esModule",{value:!0});Qp.FrontmatterService=void 0;var of=class n{static{o(this,"FrontmatterService")}parse(e){let t=e.match(n.FRONTMATTER_REGEX);return t?{exists:!0,content:t[1],originalContent:e}:{exists:!1,content:"",originalContent:e}}updateProperty(e,t,r){t=n.normalizeIRI(t),typeof r=="string"&&(r=n.normalizeIRIValue(r));let i=this.parse(e),s=this.serializeValue(t,r);if(!i.exists)return`---
71
71
  ${s}
72
72
  ---
73
73
  ${e}`;let a=i.content;if(this.hasProperty(a,t)){let c=new RegExp(`${this.escapeRegex(t)}:.*(?:
@@ -85,10 +85,10 @@ ${Object.entries(t).map(([a,c])=>this.serializeValue(a,c)).join(`
85
85
  `)?"":`
86
86
  `;return`${i}${s}${e}`}getPropertyValue(e,t){let r=new RegExp(`${this.escapeRegex(t)}:\\s*(.*)$`,"m"),i=e.match(r);return i?i[1].trim():null}serializeValue(e,t){if(Array.isArray(t)){if(t.length===0)return`${e}:`;let r=t.map(i=>` - ${i}`).join(`
87
87
  `);return`${e}:
88
- ${r}`}return`${e}: ${String(t)}`}escapeRegex(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}};Qp.FrontmatterService=of;of.FRONTMATTER_REGEX=/^---\n([\s\S]*?)\n---/;of.IRI_PREFIX_MAP={"https://exocortex.my/ontology/ems#":"ems__","https://exocortex.my/ontology/exo#":"exo__","https://exocortex.my/ontology/exocmd#":"exocmd__","https://exocortex.my/ontology/ims#":"ims__","https://exocortex.my/ontology/ztlk#":"ztlk__","https://exocortex.my/ontology/ptms#":"ptms__","https://exocortex.my/ontology/lit#":"lit__","https://exocortex.my/ontology/inbox#":"inbox__","https://exocortex.my/ontology/pmbok#":"pmbok__"}});var Hr=S(Kp=>{"use strict";Object.defineProperty(Kp,"__esModule",{value:!0});Kp.DateFormatter=void 0;var fS=class n{static{o(this,"DateFormatter")}static toISOTimestamp(e){return e.toISOString().replace(/\.\d{3}Z$/,"Z")}static toLocalTimestamp(e){let t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),a=String(e.getMinutes()).padStart(2,"0"),c=String(e.getSeconds()).padStart(2,"0");return`${t}-${r}-${i}T${s}:${a}:${c}`}static toDateWikilink(e){let t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0");return`"[[${t}-${r}-${i}]]"`}static getTodayWikilink(){return n.toDateWikilink(new Date)}static toDateString(e){let t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0");return`${t}-${r}-${i}`}static parseWikilink(e){let r=e.replace(/^["']|["']$/g,"").match(/\[\[(\d{4}-\d{2}-\d{2})\]\]/);return r?r[1]:null}static addDays(e,t){let r=new Date(e);return r.setDate(r.getDate()+t),r}static isSameDay(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}static getTodayStartTimestamp(){let e=new Date;return e.setHours(0,0,0,0),n.toLocalTimestamp(e)}static toTimestampAtStartOfDay(e){let t=e.split("-").map(Number);if(t.length!==3||t.some(isNaN))throw new Error(`Invalid date format: ${e}. Expected YYYY-MM-DD`);let[r,i,s]=t,a=new Date(r,i-1,s,0,0,0,0);if(isNaN(a.getTime()))throw new Error(`Invalid date values: ${e}`);return n.toLocalTimestamp(a)}static normalizeTimestamp(e){if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/.test(e))return e;let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`Invalid timestamp format: ${e}`);return n.toISOTimestamp(t)}static isISOTimestamp(e){return/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/.test(e)}};Kp.DateFormatter=fS});var $a=S(Yp=>{"use strict";Object.defineProperty(Yp,"__esModule",{value:!0});Yp.LoggingService=void 0;var cf=class{static{o(this,"LoggingService")}static setVerbose(e){this.isVerbose=e}static setDevelopmentMode(e){this.isDevelopment=e}static checkIsDevelopment(){return this.isDevelopment!==void 0?this.isDevelopment:typeof process<"u"?(this.isDevelopment=!1,this.isDevelopment):(this.isDevelopment=!1,this.isDevelopment)}static debug(e,t){this.isVerbose&&console.debug(`[Exocortex] ${e}`,t??"")}static info(e,t){console.log(`[Exocortex] ${e}`,t??"")}static warn(e,t){console.warn(`[Exocortex] ${e}`,t??"")}static error(e,t,r){let i=this.checkIsDevelopment(),s=r?` [${r}]`:"";if(i){let a=t?.stack?`
88
+ ${r}`}return`${e}: ${String(t)}`}escapeRegex(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}};Qp.FrontmatterService=of;of.FRONTMATTER_REGEX=/^---\n([\s\S]*?)\n---/;of.IRI_PREFIX_MAP={"https://exocortex.my/ontology/ems#":"ems__","https://exocortex.my/ontology/exo#":"exo__","https://exocortex.my/ontology/exocmd#":"exocmd__","https://exocortex.my/ontology/ims#":"ims__","https://exocortex.my/ontology/ztlk#":"ztlk__","https://exocortex.my/ontology/ptms#":"ptms__","https://exocortex.my/ontology/lit#":"lit__","https://exocortex.my/ontology/inbox#":"inbox__","https://exocortex.my/ontology/pmbok#":"pmbok__"}});var Qr=S(Kp=>{"use strict";Object.defineProperty(Kp,"__esModule",{value:!0});Kp.DateFormatter=void 0;var fS=class n{static{o(this,"DateFormatter")}static toISOTimestamp(e){return e.toISOString().replace(/\.\d{3}Z$/,"Z")}static toLocalTimestamp(e){let t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),a=String(e.getMinutes()).padStart(2,"0"),c=String(e.getSeconds()).padStart(2,"0");return`${t}-${r}-${i}T${s}:${a}:${c}`}static toDateWikilink(e){let t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0");return`"[[${t}-${r}-${i}]]"`}static getTodayWikilink(){return n.toDateWikilink(new Date)}static toDateString(e){let t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0");return`${t}-${r}-${i}`}static parseWikilink(e){let r=e.replace(/^["']|["']$/g,"").match(/\[\[(\d{4}-\d{2}-\d{2})\]\]/);return r?r[1]:null}static addDays(e,t){let r=new Date(e);return r.setDate(r.getDate()+t),r}static isSameDay(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}static getTodayStartTimestamp(){let e=new Date;return e.setHours(0,0,0,0),n.toLocalTimestamp(e)}static toTimestampAtStartOfDay(e){let t=e.split("-").map(Number);if(t.length!==3||t.some(isNaN))throw new Error(`Invalid date format: ${e}. Expected YYYY-MM-DD`);let[r,i,s]=t,a=new Date(r,i-1,s,0,0,0,0);if(isNaN(a.getTime()))throw new Error(`Invalid date values: ${e}`);return n.toLocalTimestamp(a)}static normalizeTimestamp(e){if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/.test(e))return e;let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`Invalid timestamp format: ${e}`);return n.toISOTimestamp(t)}static isISOTimestamp(e){return/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/.test(e)}};Kp.DateFormatter=fS});var $a=S(Yp=>{"use strict";Object.defineProperty(Yp,"__esModule",{value:!0});Yp.LoggingService=void 0;var cf=class{static{o(this,"LoggingService")}static setVerbose(e){this.isVerbose=e}static setDevelopmentMode(e){this.isDevelopment=e}static checkIsDevelopment(){return this.isDevelopment!==void 0?this.isDevelopment:typeof process<"u"?(this.isDevelopment=!1,this.isDevelopment):(this.isDevelopment=!1,this.isDevelopment)}static debug(e,t){this.isVerbose&&console.debug(`[Exocortex] ${e}`,t??"")}static info(e,t){console.log(`[Exocortex] ${e}`,t??"")}static warn(e,t){console.warn(`[Exocortex] ${e}`,t??"")}static error(e,t,r){let i=this.checkIsDevelopment(),s=r?` [${r}]`:"";if(i){let a=t?.stack?`
89
89
  Stack trace:
90
90
  ${t.stack}`:"";console.error(`[Exocortex ERROR]${s} ${e}${a}`,t??"")}else{let a=t?.message?`
91
- Details: ${t.message}`:"";console.error(`[Exocortex ERROR]${s} ${e}${a}`)}}};Yp.LoggingService=cf;cf.isVerbose=!1;cf.isDevelopment=void 0});var Wx=S(yi=>{"use strict";var j5=yi&&yi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},$5=yi&&yi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(yi,"__esModule",{value:!0});yi.GroundingExecutor=yi.ServiceRegistry=void 0;var B5=fe(),V5=Tn(),$o=Tc(),U5=ei(),q5=Hr(),W5=$a();function G5(n){if(!n)return;let e=n.match(/^"?\[\[([^\]|]+)(?:\|[^\]]*)?\]\]"?$/);return e?e[1]:n}o(G5,"extractClassFromTargetValue");var Xp=class{static{o(this,"ServiceRegistry")}constructor(){this.services=new Map}register(e,t){this.services.set(e,t)}get(e){return this.services.get(e)}has(e){return this.services.has(e)}getRegisteredIds(){return Array.from(this.services.keys())}};yi.ServiceRegistry=Xp;var qx=20,dS=class{static{o(this,"GroundingExecutor")}constructor(e,t,r){this.frontmatterService=new U5.FrontmatterService,this.fileReader=e,this.fileWriter=t,this.serviceRegistry=r}async execute(e,t,r,i){try{switch(e.type){case $o.GroundingType.PROPERTY_SET:return await this.executePropertySet(e,t,r,i);case $o.GroundingType.PROPERTY_DELETE:return await this.executePropertyDelete(e,r);case $o.GroundingType.COMPOSITE:return await this.executeComposite(e,t,r,i,0);case $o.GroundingType.SERVICE_CALL:return await this.executeServiceCall(e,t,r,i);case $o.GroundingType.CREATE_INSTANCE:return await this.executeCreateInstance(e,t,i);case $o.GroundingType.SPARQL_UPDATE:return{success:!1,error:"sparql_update grounding not yet implemented. Use property_set/property_delete instead."};default:return{success:!1,error:`Unknown grounding type: ${e.type}`}}}catch(s){return{success:!1,error:s instanceof Error?s.message:String(s)}}}async executePropertySet(e,t,r,i){if(!e.targetProperty)return{success:!1,error:"property_set requires targetProperty"};if(e.targetValue===void 0)return{success:!1,error:"property_set requires targetValue"};if(/\$(input|value)\b/.test(e.targetValue)&&(i===void 0||i.value===void 0||i.value===null))return{success:!1,error:"property_set: targetValue contains $input/$value placeholder but no userInput.value provided"};let a=this.substituteVariables(e.targetValue,t,i),c=await this.fileReader.readFile(r),l=this.frontmatterService.updateProperty(c,e.targetProperty,a);return await this.fileWriter.updateFile(r,l),{success:!0}}async executePropertyDelete(e,t){if(!e.targetProperty)return{success:!1,error:"property_delete requires targetProperty"};let r=await this.fileReader.readFile(t),i=this.frontmatterService.removeProperty(r,e.targetProperty);return await this.fileWriter.updateFile(t,i),{success:!0}}async executeComposite(e,t,r,i,s){if(s>=qx)return{success:!1,error:`Composite grounding exceeded maximum depth of ${qx}`};let a=e.steps??[];if(a.length===0)return{success:!0};let c;try{c=await this.fileReader.readFile(r)}catch{}let l=[];try{for(let u=0;u<a.length;u++){let f=a[u],d=await this.executeStep(f,t,r,i,s+1);if(!d.success)return await this.rollback(c,r,l),{success:!1,error:`Composite step ${u} failed: ${d.error}`};l.push(u)}return{success:!0}}catch(u){return await this.rollback(c,r,l),{success:!1,error:`Composite execution failed: ${u instanceof Error?u.message:String(u)}`}}}async executeServiceCall(e,t,r,i){let s=e.targetProperty;if(!s)return{success:!1,error:"service_call requires targetProperty as serviceId"};if(s==="convertToTask")return await this.executeConvertToTask(r);if(s==="updateProperty"){let l=G5(e.targetValue);if(l==="ems__Task")return await this.executeConvertToTask(r);if(l==="ems__Project")return await this.executeConvertToProject(r)}let a=this.serviceRegistry.get(s);if(!a)return{success:!1,error:`Service not found: "${s}". Registered services: ${this.serviceRegistry.getRegisteredIds().join(", ")||"none"}`};let c=i;if(e.targetValue)try{let l=this.substituteVariables(e.targetValue,t,i),u=JSON.parse(l);typeof u=="object"&&u!==null&&(c={...u,...i??{}})}catch{}return await a.execute(t,c),{success:!0}}async executeConvertToTask(e){let t=await this.fileReader.readFile(e),r=this.frontmatterService.updateProperty(t,"exo__Instance_class",'["[[ems__Task]]"]');return await this.fileWriter.updateFile(e,r),{success:!0}}async executeConvertToProject(e){let t=await this.fileReader.readFile(e),r=this.frontmatterService.updateProperty(t,"exo__Instance_class",'["[[ems__Project]]"]');return await this.fileWriter.updateFile(e,r),{success:!0}}async executeCreateInstance(e,t,r){if(!e.targetFolder)return{success:!1,error:"create_instance requires targetFolder"};let i=(0,V5.v4)(),s=r?.label??"Untitled",a={exo__Asset_uid:i,exo__Asset_createdAt:new Date().toISOString(),exo__Asset_label:s};if(s!=="Untitled"&&(a.aliases=[s]),e.targetClass&&(a.exo__Instance_class=[`"[[${e.targetClass}]]"`]),e.targetPrototype&&(a.exo__Asset_prototype=`"[[${e.targetPrototype}]]"`),t&&(a.exo__Asset_source=`"[[${t}]]"`),r)for(let[u,f]of Object.entries(r))u!=="label"&&f!=null&&(a[u]=f);let c=this.frontmatterService.createFrontmatter("",a),l=`${e.targetFolder}/${i}.md`;return await this.fileWriter.createFile(l,c),{success:!0}}async executeStep(e,t,r,i,s){return e.type===$o.GroundingType.COMPOSITE?this.executeComposite(e,t,r,i,s):this.execute(e,t,r,i)}async rollback(e,t,r){if(e!==void 0)try{await this.fileWriter.updateFile(t,e)}catch(i){W5.LoggingService.error(`[GroundingExecutor] Rollback failed for ${t}`,i instanceof Error?i:new Error(String(i)))}}substituteVariables(e,t,r){let i=new Date,s=i.toISOString(),a=q5.DateFormatter.toLocalTimestamp(i),c=s.slice(0,10),l=e.replace(/\$target/g,t).replace(/\$nowLocal/g,a).replace(/\$now/g,s).replace(/\$today/g,c);if(r?.value!==void 0&&r.value!==null){let u=String(r.value);l=l.replace(/\$input\b/g,u).replace(/\$value\b/g,u)}return l}};yi.GroundingExecutor=dS;yi.GroundingExecutor=dS=j5([(0,B5.injectable)(),$5("design:paramtypes",[Object,Object,Xp])],dS)});var lf=S(ea=>{"use strict";var z5=ea&&ea.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},H5=ea&&ea.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ea,"__esModule",{value:!0});ea.WorkflowEngine=void 0;var Q5=fe(),hS=class{static{o(this,"WorkflowEngine")}constructor(e){this.definition=e}getAvailableTransitions(e){return this.definition.transitions.filter(t=>t.from===e&&!t.isRollback)}getRollbackTransitions(e){return this.definition.transitions.filter(t=>t.from===e&&t.isRollback)}getAllTransitions(e){return this.definition.transitions.filter(t=>t.from===e)}canTransition(e,t){return this.definition.transitions.some(r=>r.from===e&&r.to===t)}getPreviousStatus(e){return this.definition.transitions.find(r=>r.from===e&&r.isRollback)?.to??null}getNextStates(e){return this.getAvailableTransitions(e).map(t=>t.to)}isTerminalState(e){return this.definition.terminalStates.includes(e)}isInitialState(e){return this.definition.initialState===e}getTimestampsForStatus(e){return this.definition.states.find(r=>r.status===e)?.timestampOnEnter??[]}getTransition(e,t){return this.definition.transitions.find(r=>r.from===e&&r.to===t)}getOrderedStates(){return this.definition.states.map(e=>e.status)}getDefinition(){return this.definition}validate(){let e=[],t=new Set(this.definition.states.map(i=>i.status));this.definition.states.length===0&&e.push("Workflow must have at least one state"),t.has(this.definition.initialState)||e.push(`Initial state "${this.definition.initialState}" is not in the states list`);for(let i of this.definition.terminalStates)t.has(i)||e.push(`Terminal state "${i}" is not in the states list`);for(let i of this.definition.transitions)t.has(i.from)||e.push(`Transition "${i.label}" references unknown source state "${i.from}"`),t.has(i.to)||e.push(`Transition "${i.label}" references unknown target state "${i.to}"`);for(let i of this.definition.states){if(this.definition.terminalStates.includes(i.status))continue;this.definition.transitions.filter(a=>a.from===i.status&&!a.isRollback).length===0&&e.push(`State "${i.status}" has no outgoing forward transitions (dead end)`)}let r=new Set;for(let i of this.definition.transitions){let s=`${i.from}\u2192${i.to}`;r.has(s)&&e.push(`Duplicate transition: ${s}`),r.add(s)}return{valid:e.length===0,errors:e}}};ea.WorkflowEngine=hS;ea.WorkflowEngine=hS=z5([(0,Q5.injectable)(),H5("design:paramtypes",[Object])],hS)});var Gx=S(ps=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});ps.EFFORT_WORKFLOW_PROPERTY=ps.WorkflowTransitionProperty=ps.WorkflowStateProperty=ps.WorkflowProperty=void 0;ps.WorkflowProperty={TARGET_CLASS:"ems__Workflow_targetClass",INITIAL_STATE:"ems__Workflow_initialState",TERMINAL_STATES:"ems__Workflow_terminalStates",IS_DEFAULT:"ems__Workflow_isDefault"};ps.WorkflowStateProperty={WORKFLOW:"ems__WorkflowState_workflow",STATUS:"ems__WorkflowState_status",ORDER:"ems__WorkflowState_order",OPTIONAL:"ems__WorkflowState_optional",TIMESTAMP_ON_ENTER:"ems__WorkflowState_timestampOnEnter",BADGE_COLOR:"ems__WorkflowState_badgeColor"};ps.WorkflowTransitionProperty={WORKFLOW:"ems__WorkflowTransition_workflow",FROM:"ems__WorkflowTransition_from",TO:"ems__WorkflowTransition_to",LABEL:"ems__WorkflowTransition_label",ICON:"ems__WorkflowTransition_icon",IS_ROLLBACK:"ems__WorkflowTransition_isRollback"};ps.EFFORT_WORKFLOW_PROPERTY="ems__Effort_workflow"});var ms=S(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});Jp.MetadataHelpers=void 0;var pS=class{static{o(this,"MetadataHelpers")}static findAllReferencingProperties(e,t){let r=[];for(let[i,s]of Object.entries(e))this.containsReference(s,t)&&r.push(i);return r}static findReferencingProperty(e,t){for(let[r,i]of Object.entries(e))if(this.containsReference(i,t))return r}static containsReference(e,t){if(!e)return!1;let r=t.replace(/\.md$/,"");if(typeof e=="string"){let i=/\[\[([^\[\]]+)\]\]/g,s;for(;(s=i.exec(e))!==null;){let c=s[1].split("|")[0].trim();if(c===r||c.endsWith(`/${r}`))return!0}return!1}return Array.isArray(e)?e.some(i=>this.containsReference(i,t)):!1}static isAssetArchived(e){let t=e?.exo__Asset_isArchived;if(t!=null){if(t===!0||t===1)return!0;if(typeof t=="string"){let i=t.toLowerCase().trim();if(i==="true"||i==="yes"||i==="1")return!0}if(typeof t=="boolean")return t}let r=e?.archived;if(r==null)return!1;if(typeof r=="boolean")return r;if(typeof r=="number")return r!==0;if(typeof r=="string"){let i=r.toLowerCase().trim();return i==="true"||i==="yes"||i==="1"}return!1}static getPropertyValue(e,t){return t==="Name"||t==="title"?e.title:t==="created"?e.created:t==="modified"?e.modified:t==="path"?e.path:e.metadata?.[t]}static ensureQuoted(e){return!e||e==='""'?'""':e.startsWith('"')&&e.endsWith('"')?e:`"${e}"`}static buildFileContent(e,t){let r=Object.entries(e).map(([a,c])=>{if(Array.isArray(c)){let l=c.map(u=>` - ${u}`).join(`
91
+ Details: ${t.message}`:"";console.error(`[Exocortex ERROR]${s} ${e}${a}`)}}};Yp.LoggingService=cf;cf.isVerbose=!1;cf.isDevelopment=void 0});var Wx=S(yi=>{"use strict";var j5=yi&&yi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},$5=yi&&yi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(yi,"__esModule",{value:!0});yi.GroundingExecutor=yi.ServiceRegistry=void 0;var B5=fe(),V5=Tn(),$o=Tc(),U5=ei(),q5=Qr(),W5=$a();function G5(n){if(!n)return;let e=n.match(/^"?\[\[([^\]|]+)(?:\|[^\]]*)?\]\]"?$/);return e?e[1]:n}o(G5,"extractClassFromTargetValue");var Xp=class{static{o(this,"ServiceRegistry")}constructor(){this.services=new Map}register(e,t){this.services.set(e,t)}get(e){return this.services.get(e)}has(e){return this.services.has(e)}getRegisteredIds(){return Array.from(this.services.keys())}};yi.ServiceRegistry=Xp;var qx=20,dS=class{static{o(this,"GroundingExecutor")}constructor(e,t,r){this.frontmatterService=new U5.FrontmatterService,this.fileReader=e,this.fileWriter=t,this.serviceRegistry=r}async execute(e,t,r,i){try{switch(e.type){case $o.GroundingType.PROPERTY_SET:return await this.executePropertySet(e,t,r,i);case $o.GroundingType.PROPERTY_DELETE:return await this.executePropertyDelete(e,r);case $o.GroundingType.COMPOSITE:return await this.executeComposite(e,t,r,i,0);case $o.GroundingType.SERVICE_CALL:return await this.executeServiceCall(e,t,r,i);case $o.GroundingType.CREATE_INSTANCE:return await this.executeCreateInstance(e,t,i);case $o.GroundingType.SPARQL_UPDATE:return{success:!1,error:"sparql_update grounding not yet implemented. Use property_set/property_delete instead."};default:return{success:!1,error:`Unknown grounding type: ${e.type}`}}}catch(s){return{success:!1,error:s instanceof Error?s.message:String(s)}}}async executePropertySet(e,t,r,i){if(!e.targetProperty)return{success:!1,error:"property_set requires targetProperty"};if(e.targetValue===void 0)return{success:!1,error:"property_set requires targetValue"};if(/\$(input|value)\b/.test(e.targetValue)&&(i===void 0||i.value===void 0||i.value===null))return{success:!1,error:"property_set: targetValue contains $input/$value placeholder but no userInput.value provided"};let a=this.substituteVariables(e.targetValue,t,i),c=await this.fileReader.readFile(r),l=this.frontmatterService.updateProperty(c,e.targetProperty,a);return await this.fileWriter.updateFile(r,l),{success:!0}}async executePropertyDelete(e,t){if(!e.targetProperty)return{success:!1,error:"property_delete requires targetProperty"};let r=await this.fileReader.readFile(t),i=this.frontmatterService.removeProperty(r,e.targetProperty);return await this.fileWriter.updateFile(t,i),{success:!0}}async executeComposite(e,t,r,i,s){if(s>=qx)return{success:!1,error:`Composite grounding exceeded maximum depth of ${qx}`};let a=e.steps??[];if(a.length===0)return{success:!0};let c;try{c=await this.fileReader.readFile(r)}catch{}let l=[];try{for(let u=0;u<a.length;u++){let f=a[u],d=await this.executeStep(f,t,r,i,s+1);if(!d.success)return await this.rollback(c,r,l),{success:!1,error:`Composite step ${u} failed: ${d.error}`};l.push(u)}return{success:!0}}catch(u){return await this.rollback(c,r,l),{success:!1,error:`Composite execution failed: ${u instanceof Error?u.message:String(u)}`}}}async executeServiceCall(e,t,r,i){let s=e.targetProperty;if(!s)return{success:!1,error:"service_call requires targetProperty as serviceId"};if(s==="convertToTask")return await this.executeConvertToTask(r);if(s==="updateProperty"){let l=G5(e.targetValue);if(l==="ems__Task")return await this.executeConvertToTask(r);if(l==="ems__Project")return await this.executeConvertToProject(r)}let a=this.serviceRegistry.get(s);if(!a)return{success:!1,error:`Service not found: "${s}". Registered services: ${this.serviceRegistry.getRegisteredIds().join(", ")||"none"}`};let c=i;if(e.targetValue)try{let l=this.substituteVariables(e.targetValue,t,i),u=JSON.parse(l);typeof u=="object"&&u!==null&&(c={...u,...i??{}})}catch{}return await a.execute(t,c),{success:!0}}async executeConvertToTask(e){let t=await this.fileReader.readFile(e),r=this.frontmatterService.updateProperty(t,"exo__Instance_class",'["[[ems__Task]]"]');return await this.fileWriter.updateFile(e,r),{success:!0}}async executeConvertToProject(e){let t=await this.fileReader.readFile(e),r=this.frontmatterService.updateProperty(t,"exo__Instance_class",'["[[ems__Project]]"]');return await this.fileWriter.updateFile(e,r),{success:!0}}async executeCreateInstance(e,t,r){if(!e.targetFolder)return{success:!1,error:"create_instance requires targetFolder"};let i=(0,V5.v4)(),s=r?.label??"Untitled",a={exo__Asset_uid:i,exo__Asset_createdAt:new Date().toISOString(),exo__Asset_label:s};if(s!=="Untitled"&&(a.aliases=[s]),e.targetClass&&(a.exo__Instance_class=[`"[[${e.targetClass}]]"`]),e.targetPrototype&&(a.exo__Asset_prototype=`"[[${e.targetPrototype}]]"`),t&&(a.exo__Asset_source=`"[[${t}]]"`),r)for(let[u,f]of Object.entries(r))u!=="label"&&f!=null&&(a[u]=f);let c=this.frontmatterService.createFrontmatter("",a),l=`${e.targetFolder}/${i}.md`;return await this.fileWriter.createFile(l,c),{success:!0}}async executeStep(e,t,r,i,s){return e.type===$o.GroundingType.COMPOSITE?this.executeComposite(e,t,r,i,s):this.execute(e,t,r,i)}async rollback(e,t,r){if(e!==void 0)try{await this.fileWriter.updateFile(t,e)}catch(i){W5.LoggingService.error(`[GroundingExecutor] Rollback failed for ${t}`,i instanceof Error?i:new Error(String(i)))}}substituteVariables(e,t,r){let i=new Date,s=i.toISOString(),a=q5.DateFormatter.toLocalTimestamp(i),c=s.slice(0,10),l=e.replace(/\$target/g,t).replace(/\$nowLocal/g,a).replace(/\$now/g,s).replace(/\$today/g,c);if(r?.value!==void 0&&r.value!==null){let u=String(r.value);l=l.replace(/\$input\b/g,u).replace(/\$value\b/g,u)}return l}};yi.GroundingExecutor=dS;yi.GroundingExecutor=dS=j5([(0,B5.injectable)(),$5("design:paramtypes",[Object,Object,Xp])],dS)});var lf=S(ea=>{"use strict";var z5=ea&&ea.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},H5=ea&&ea.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ea,"__esModule",{value:!0});ea.WorkflowEngine=void 0;var Q5=fe(),hS=class{static{o(this,"WorkflowEngine")}constructor(e){this.definition=e}getAvailableTransitions(e){return this.definition.transitions.filter(t=>t.from===e&&!t.isRollback)}getRollbackTransitions(e){return this.definition.transitions.filter(t=>t.from===e&&t.isRollback)}getAllTransitions(e){return this.definition.transitions.filter(t=>t.from===e)}canTransition(e,t){return this.definition.transitions.some(r=>r.from===e&&r.to===t)}getPreviousStatus(e){return this.definition.transitions.find(r=>r.from===e&&r.isRollback)?.to??null}getNextStates(e){return this.getAvailableTransitions(e).map(t=>t.to)}isTerminalState(e){return this.definition.terminalStates.includes(e)}isInitialState(e){return this.definition.initialState===e}getTimestampsForStatus(e){return this.definition.states.find(r=>r.status===e)?.timestampOnEnter??[]}getTransition(e,t){return this.definition.transitions.find(r=>r.from===e&&r.to===t)}getOrderedStates(){return this.definition.states.map(e=>e.status)}getDefinition(){return this.definition}validate(){let e=[],t=new Set(this.definition.states.map(i=>i.status));this.definition.states.length===0&&e.push("Workflow must have at least one state"),t.has(this.definition.initialState)||e.push(`Initial state "${this.definition.initialState}" is not in the states list`);for(let i of this.definition.terminalStates)t.has(i)||e.push(`Terminal state "${i}" is not in the states list`);for(let i of this.definition.transitions)t.has(i.from)||e.push(`Transition "${i.label}" references unknown source state "${i.from}"`),t.has(i.to)||e.push(`Transition "${i.label}" references unknown target state "${i.to}"`);for(let i of this.definition.states){if(this.definition.terminalStates.includes(i.status))continue;this.definition.transitions.filter(a=>a.from===i.status&&!a.isRollback).length===0&&e.push(`State "${i.status}" has no outgoing forward transitions (dead end)`)}let r=new Set;for(let i of this.definition.transitions){let s=`${i.from}\u2192${i.to}`;r.has(s)&&e.push(`Duplicate transition: ${s}`),r.add(s)}return{valid:e.length===0,errors:e}}};ea.WorkflowEngine=hS;ea.WorkflowEngine=hS=z5([(0,Q5.injectable)(),H5("design:paramtypes",[Object])],hS)});var Gx=S(ps=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});ps.EFFORT_WORKFLOW_PROPERTY=ps.WorkflowTransitionProperty=ps.WorkflowStateProperty=ps.WorkflowProperty=void 0;ps.WorkflowProperty={TARGET_CLASS:"ems__Workflow_targetClass",INITIAL_STATE:"ems__Workflow_initialState",TERMINAL_STATES:"ems__Workflow_terminalStates",IS_DEFAULT:"ems__Workflow_isDefault"};ps.WorkflowStateProperty={WORKFLOW:"ems__WorkflowState_workflow",STATUS:"ems__WorkflowState_status",ORDER:"ems__WorkflowState_order",OPTIONAL:"ems__WorkflowState_optional",TIMESTAMP_ON_ENTER:"ems__WorkflowState_timestampOnEnter",BADGE_COLOR:"ems__WorkflowState_badgeColor"};ps.WorkflowTransitionProperty={WORKFLOW:"ems__WorkflowTransition_workflow",FROM:"ems__WorkflowTransition_from",TO:"ems__WorkflowTransition_to",LABEL:"ems__WorkflowTransition_label",ICON:"ems__WorkflowTransition_icon",IS_ROLLBACK:"ems__WorkflowTransition_isRollback"};ps.EFFORT_WORKFLOW_PROPERTY="ems__Effort_workflow"});var ms=S(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});Jp.MetadataHelpers=void 0;var pS=class{static{o(this,"MetadataHelpers")}static findAllReferencingProperties(e,t){let r=[];for(let[i,s]of Object.entries(e))this.containsReference(s,t)&&r.push(i);return r}static findReferencingProperty(e,t){for(let[r,i]of Object.entries(e))if(this.containsReference(i,t))return r}static containsReference(e,t){if(!e)return!1;let r=t.replace(/\.md$/,"");if(typeof e=="string"){let i=/\[\[([^\[\]]+)\]\]/g,s;for(;(s=i.exec(e))!==null;){let c=s[1].split("|")[0].trim();if(c===r||c.endsWith(`/${r}`))return!0}return!1}return Array.isArray(e)?e.some(i=>this.containsReference(i,t)):!1}static isAssetArchived(e){let t=e?.exo__Asset_isArchived;if(t!=null){if(t===!0||t===1)return!0;if(typeof t=="string"){let i=t.toLowerCase().trim();if(i==="true"||i==="yes"||i==="1")return!0}if(typeof t=="boolean")return t}let r=e?.archived;if(r==null)return!1;if(typeof r=="boolean")return r;if(typeof r=="number")return r!==0;if(typeof r=="string"){let i=r.toLowerCase().trim();return i==="true"||i==="yes"||i==="1"}return!1}static getPropertyValue(e,t){return t==="Name"||t==="title"?e.title:t==="created"?e.created:t==="modified"?e.modified:t==="path"?e.path:e.metadata?.[t]}static ensureQuoted(e){return!e||e==='""'?'""':e.startsWith('"')&&e.endsWith('"')?e:`"${e}"`}static buildFileContent(e,t){let r=Object.entries(e).map(([a,c])=>{if(Array.isArray(c)){let l=c.map(u=>` - ${u}`).join(`
92
92
  `);return`${a}:
93
93
  ${l}`}return`${a}: ${c}`}).join(`
94
94
  `),i=t;if(i===void 0){let a=e.exo__Asset_label;typeof a=="string"&&a.trim()!==""&&(i=`# ${a}`)}let s=i?`
@@ -97,12 +97,12 @@ ${i}
97
97
  `;return`---
98
98
  ${r}
99
99
  ---
100
- ${s}`}};Jp.MetadataHelpers=pS});var Hx=S(Bo=>{"use strict";Object.defineProperty(Bo,"__esModule",{value:!0});Bo.TASK_DEFAULT_WORKFLOW=Bo.PROJECT_DEFAULT_WORKFLOW=void 0;Bo.buildWorkflowAssetContent=K5;var zx=Tn(),uf=Fu(),Ee=Ec(),Qr=Gx(),mS=ms();Bo.PROJECT_DEFAULT_WORKFLOW={id:"a1b2c3d4-1111-4000-a000-000000000001",name:"Project Default Workflow",targetClass:uf.AssetClass.PROJECT,initialState:Ee.EffortStatus.DRAFT,terminalStates:[Ee.EffortStatus.DONE,Ee.EffortStatus.TRASHED],isDefault:!0,states:[{status:Ee.EffortStatus.DRAFT,order:1,optional:!1,timestampOnEnter:[]},{status:Ee.EffortStatus.BACKLOG,order:2,optional:!1,timestampOnEnter:[]},{status:Ee.EffortStatus.ANALYSIS,order:3,optional:!0,timestampOnEnter:[]},{status:Ee.EffortStatus.TODO,order:4,optional:!0,timestampOnEnter:[]},{status:Ee.EffortStatus.DOING,order:5,optional:!1,timestampOnEnter:["ems__Effort_startTimestamp"]},{status:Ee.EffortStatus.DONE,order:6,optional:!1,timestampOnEnter:["ems__Effort_endTimestamp","ems__Effort_resolutionTimestamp"]},{status:Ee.EffortStatus.TRASHED,order:7,optional:!1,timestampOnEnter:["ems__Effort_resolutionTimestamp"]}],transitions:[{from:Ee.EffortStatus.DRAFT,to:Ee.EffortStatus.BACKLOG,label:"\u2192 Backlog",isRollback:!1},{from:Ee.EffortStatus.BACKLOG,to:Ee.EffortStatus.ANALYSIS,label:"\u2192 Analysis",isRollback:!1},{from:Ee.EffortStatus.ANALYSIS,to:Ee.EffortStatus.TODO,label:"\u2192 ToDo",isRollback:!1},{from:Ee.EffortStatus.TODO,to:Ee.EffortStatus.DOING,label:"\u25B6 Start",isRollback:!1},{from:Ee.EffortStatus.DOING,to:Ee.EffortStatus.DONE,label:"\u2713 Done",isRollback:!1},{from:Ee.EffortStatus.BACKLOG,to:Ee.EffortStatus.DRAFT,label:"\u2190 Draft",isRollback:!0},{from:Ee.EffortStatus.ANALYSIS,to:Ee.EffortStatus.BACKLOG,label:"\u2190 Backlog",isRollback:!0},{from:Ee.EffortStatus.TODO,to:Ee.EffortStatus.ANALYSIS,label:"\u2190 Analysis",isRollback:!0},{from:Ee.EffortStatus.DOING,to:Ee.EffortStatus.TODO,label:"\u2190 ToDo",isRollback:!0},{from:Ee.EffortStatus.DONE,to:Ee.EffortStatus.DOING,label:"\u2190 Doing",isRollback:!0}]};Bo.TASK_DEFAULT_WORKFLOW={id:"a1b2c3d4-2222-4000-a000-000000000002",name:"Task Default Workflow",targetClass:uf.AssetClass.TASK,initialState:Ee.EffortStatus.DRAFT,terminalStates:[Ee.EffortStatus.DONE,Ee.EffortStatus.TRASHED],isDefault:!0,states:[{status:Ee.EffortStatus.DRAFT,order:1,optional:!1,timestampOnEnter:[]},{status:Ee.EffortStatus.BACKLOG,order:2,optional:!1,timestampOnEnter:[]},{status:Ee.EffortStatus.DOING,order:3,optional:!1,timestampOnEnter:["ems__Effort_startTimestamp"]},{status:Ee.EffortStatus.DONE,order:4,optional:!1,timestampOnEnter:["ems__Effort_endTimestamp","ems__Effort_resolutionTimestamp"]},{status:Ee.EffortStatus.TRASHED,order:5,optional:!1,timestampOnEnter:["ems__Effort_resolutionTimestamp"]}],transitions:[{from:Ee.EffortStatus.DRAFT,to:Ee.EffortStatus.BACKLOG,label:"\u2192 Backlog",isRollback:!1},{from:Ee.EffortStatus.BACKLOG,to:Ee.EffortStatus.DOING,label:"\u25B6 Start",isRollback:!1},{from:Ee.EffortStatus.DOING,to:Ee.EffortStatus.DONE,label:"\u2713 Done",isRollback:!1},{from:Ee.EffortStatus.BACKLOG,to:Ee.EffortStatus.DRAFT,label:"\u2190 Draft",isRollback:!0},{from:Ee.EffortStatus.DOING,to:Ee.EffortStatus.BACKLOG,label:"\u2190 Backlog",isRollback:!0},{from:Ee.EffortStatus.DONE,to:Ee.EffortStatus.DOING,label:"\u2190 Doing",isRollback:!0}]};function K5(n){let e=new Date().toISOString(),t=[],r=n.id,i={exo__Asset_uid:r,exo__Asset_label:`"${n.name}"`,exo__Asset_createdAt:e,exo__Instance_class:uf.AssetClass.WORKFLOW,[Qr.WorkflowProperty.TARGET_CLASS]:`"[[${n.targetClass}]]"`,[Qr.WorkflowProperty.INITIAL_STATE]:`"[[${n.initialState}]]"`,[Qr.WorkflowProperty.TERMINAL_STATES]:n.terminalStates.map(s=>`"[[${s}]]"`),[Qr.WorkflowProperty.IS_DEFAULT]:n.isDefault};t.push({filename:`${r}.md`,content:mS.MetadataHelpers.buildFileContent(i)});for(let s of n.states){let a=(0,zx.v4)(),c={exo__Asset_uid:a,exo__Asset_label:`"${n.name} - ${s.status}"`,exo__Asset_createdAt:e,exo__Instance_class:uf.AssetClass.WORKFLOW_STATE,[Qr.WorkflowStateProperty.WORKFLOW]:`"[[${r}]]"`,[Qr.WorkflowStateProperty.STATUS]:`"[[${s.status}]]"`,[Qr.WorkflowStateProperty.ORDER]:s.order,[Qr.WorkflowStateProperty.OPTIONAL]:s.optional};s.timestampOnEnter.length>0&&(c[Qr.WorkflowStateProperty.TIMESTAMP_ON_ENTER]=s.timestampOnEnter),s.badgeColor&&(c[Qr.WorkflowStateProperty.BADGE_COLOR]=`"${s.badgeColor}"`),t.push({filename:`${a}.md`,content:mS.MetadataHelpers.buildFileContent(c)})}for(let s of n.transitions){let a=(0,zx.v4)(),c={exo__Asset_uid:a,exo__Asset_label:`"${n.name} - ${s.label}"`,exo__Asset_createdAt:e,exo__Instance_class:uf.AssetClass.WORKFLOW_TRANSITION,[Qr.WorkflowTransitionProperty.WORKFLOW]:`"[[${r}]]"`,[Qr.WorkflowTransitionProperty.FROM]:`"[[${s.from}]]"`,[Qr.WorkflowTransitionProperty.TO]:`"[[${s.to}]]"`,[Qr.WorkflowTransitionProperty.LABEL]:`"${s.label}"`,[Qr.WorkflowTransitionProperty.IS_ROLLBACK]:s.isRollback};s.icon&&(c[Qr.WorkflowTransitionProperty.ICON]=`"${s.icon}"`),t.push({filename:`${a}.md`,content:mS.MetadataHelpers.buildFileContent(c)})}return t}o(K5,"buildWorkflowAssetContent")});var yS=S(ta=>{"use strict";var Y5=ta&&ta.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},X5=ta&&ta.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ta,"__esModule",{value:!0});ta.WorkflowResolver=void 0;var J5=fe(),ff=Ae(),pn=Ne(),bt=yr(),Vo=Fu(),Zp=Ec(),Qx=Hx(),gS=class{static{o(this,"WorkflowResolver")}constructor(e){this.tripleStore=e,this.cache=new Map}async resolveForClass(e){let t=`class:${e}`,r=this.cache.get(t);if(r)return r;let s=await this.findDefaultWorkflow(e)??this.getHardcodedFallback(e);return this.cache.set(t,s),s}async resolveForAsset(e,t){let r=await this.tripleStore.match(e,bt.Namespace.EMS.term("Effort_workflow"),void 0);if(r.length>0){let i=r[0].object;if(i instanceof ff.IRI){let s=await this.loadWorkflowBySubject(i);if(s)return s}}return this.resolveForClass(t)}invalidateCache(){this.cache.clear()}async findDefaultWorkflow(e){let t=await this.tripleStore.match(void 0,bt.Namespace.RDF.term("type"),bt.Namespace.EMS.term("Workflow"));for(let r of t){let i=r.subject;if(!(!(await this.tripleStore.match(i,bt.Namespace.EMS.term("Workflow_targetClass"),void 0)).some(u=>{let f=u.object;return f instanceof ff.IRI?f.value.endsWith(e.replace(/^ems__/,"")):f instanceof pn.Literal?this.normalizeWikilink(f.value)===e:!1})||!(await this.tripleStore.match(i,bt.Namespace.EMS.term("Workflow_isDefault"),void 0)).some(u=>{let f=u.object instanceof pn.Literal?u.object.value:"";return f==="true"||f==="1"})))return this.loadWorkflowBySubject(i)}return null}async loadWorkflowBySubject(e){let t=await this.tripleStore.match(e,bt.Namespace.EXO.term("Asset_label"),void 0),r=t.length>0&&t[0].object instanceof pn.Literal?t[0].object.value:"Unknown Workflow",i=await this.tripleStore.match(e,bt.Namespace.EXO.term("Asset_uid"),void 0),s=i.length>0&&i[0].object instanceof pn.Literal?i[0].object.value:e.value,a=await this.tripleStore.match(e,bt.Namespace.EMS.term("Workflow_targetClass"),void 0),c=this.resolveAssetClass(a),l=await this.tripleStore.match(e,bt.Namespace.EMS.term("Workflow_initialState"),void 0),u=this.resolveEffortStatus(l)??Zp.EffortStatus.DRAFT,f=await this.tripleStore.match(e,bt.Namespace.EMS.term("Workflow_terminalStates"),void 0),d=this.resolveEffortStatuses(f),p=(await this.tripleStore.match(e,bt.Namespace.EMS.term("Workflow_isDefault"),void 0)).some(w=>{let b=w.object instanceof pn.Literal?w.object.value:"";return b==="true"||b==="1"}),y=await this.loadStates(e),v=await this.loadTransitions(e);return y.length===0&&v.length===0?null:{id:s,name:r,targetClass:c,states:y,transitions:v,initialState:u,terminalStates:d.length>0?d:[Zp.EffortStatus.DONE,Zp.EffortStatus.TRASHED],isDefault:p}}async loadStates(e){let t=await this.tripleStore.match(void 0,bt.Namespace.RDF.term("type"),bt.Namespace.EMS.term("WorkflowState")),r=[];for(let i of t){let s=i.subject;if(!(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_workflow"),void 0)).some(A=>this.isSameSubject(A.object,e)))continue;let l=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_status"),void 0),u=this.resolveEffortStatus(l);if(!u)continue;let f=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_order"),void 0),d=f.length>0&&f[0].object instanceof pn.Literal&&parseInt(f[0].object.value,10)||0,p=(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_optional"),void 0)).some(A=>{let I=A.object instanceof pn.Literal?A.object.value:"";return I==="true"||I==="1"}),v=(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_timestampOnEnter"),void 0)).map(A=>A.object instanceof pn.Literal?A.object.value:"").filter(A=>A.length>0),w=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_badgeColor"),void 0),b=w.length>0&&w[0].object instanceof pn.Literal?w[0].object.value:void 0;r.push({status:u,order:d,optional:p,timestampOnEnter:v,badgeColor:b})}return r.sort((i,s)=>i.order-s.order)}async loadTransitions(e){let t=await this.tripleStore.match(void 0,bt.Namespace.RDF.term("type"),bt.Namespace.EMS.term("WorkflowTransition")),r=[];for(let i of t){let s=i.subject;if(!(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_workflow"),void 0)).some(A=>this.isSameSubject(A.object,e)))continue;let l=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_from"),void 0),u=this.resolveEffortStatus(l),f=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_to"),void 0),d=this.resolveEffortStatus(f);if(!u||!d)continue;let h=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_label"),void 0),p=h.length>0&&h[0].object instanceof pn.Literal?h[0].object.value:`${u} \u2192 ${d}`,y=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_icon"),void 0),v=y.length>0&&y[0].object instanceof pn.Literal?y[0].object.value:void 0,b=(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_isRollback"),void 0)).some(A=>{let I=A.object instanceof pn.Literal?A.object.value:"";return I==="true"||I==="1"});r.push({from:u,to:d,label:p,icon:v,isRollback:b})}return r}normalizeWikilink(e){return e.replace(/["'[\]]/g,"").trim()}resolveAssetClass(e){if(e.length===0)return Vo.AssetClass.TASK;let t=e[0].object;if(t instanceof ff.IRI){let i=`ems__${t.value.split("#").pop()??""}`;return Object.values(Vo.AssetClass).includes(i)?i:Vo.AssetClass.TASK}if(t instanceof pn.Literal){let r=this.normalizeWikilink(t.value);return Object.values(Vo.AssetClass).includes(r)?r:Vo.AssetClass.TASK}return Vo.AssetClass.TASK}resolveEffortStatus(e){if(e.length===0)return null;let t=e[0].object,r;if(t instanceof ff.IRI)r=`ems__${t.value.split("#").pop()??""}`;else if(t instanceof pn.Literal)r=this.normalizeWikilink(t.value);else return null;return Object.values(Zp.EffortStatus).includes(r)?r:null}resolveEffortStatuses(e){return e.map(t=>this.resolveEffortStatus([t])).filter(t=>t!==null)}isSameSubject(e,t){if(e instanceof ff.IRI)return e.value===t.value;if(e instanceof pn.Literal){let r=this.normalizeWikilink(e.value);return t.value.includes(r)}return!1}getHardcodedFallback(e){return e===Vo.AssetClass.PROJECT?{...Qx.PROJECT_DEFAULT_WORKFLOW}:{...Qx.TASK_DEFAULT_WORKFLOW}}};ta.WorkflowResolver=gS;ta.WorkflowResolver=gS=Y5([(0,J5.injectable)(),X5("design:paramtypes",[Object])],gS)});var bS=S(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.TransactionError=Ba.TripleNotFoundError=Ba.TripleAlreadyExistsError=void 0;var _S=class extends Error{static{o(this,"TripleAlreadyExistsError")}constructor(e){super(`Triple already exists: ${e.toString()}`),this.name="TripleAlreadyExistsError"}};Ba.TripleAlreadyExistsError=_S;var SS=class extends Error{static{o(this,"TripleNotFoundError")}constructor(e){super(`Triple not found: ${e.toString()}`),this.name="TripleNotFoundError"}};Ba.TripleNotFoundError=SS;var vS=class extends Error{static{o(this,"TransactionError")}constructor(e){super(e),this.name="TransactionError"}};Ba.TransactionError=vS});var tm=S(em=>{"use strict";Object.defineProperty(em,"__esModule",{value:!0});em.LRUCache=void 0;var wS=class{static{o(this,"LRUCache")}constructor(e){this.maxSize=e,this.cache=new Map}get(e){let t=this.cache.get(e);return t!==void 0&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.maxSize){let r=this.cache.keys().next().value;r!==void 0&&this.cache.delete(r)}this.cache.set(e,t)}clear(){this.cache.clear()}size(){return this.cache.size}};em.LRUCache=wS});var AS=S(nm=>{"use strict";Object.defineProperty(nm,"__esModule",{value:!0});nm.InMemoryTripleStore=void 0;var Va=bS(),rm=Ae(),Z5=qt(),e6=Ne(),t6=yr(),r6=tm(),n6=t6.Namespace.XSD.term("string").value,i6=/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/gi,ul="__default__",ES=class n{static{o(this,"InMemoryTripleStore")}constructor(){this.triples=new Map,this.spo=new Map,this.sop=new Map,this.pso=new Map,this.pos=new Map,this.osp=new Map,this.ops=new Map,this.queryCache=new r6.LRUCache(1e3),this.uuidIndex=new Map,this.namedGraphs=new Map}async add(e){let t=this.getTripleKey(e);if(this.triples.has(t))return;this.triples.set(t,e);let r=this.getNodeKey(e.subject),i=this.getNodeKey(e.predicate),s=this.getNodeKey(e.object);this.addToIndex(this.spo,r,i,s),this.addToIndex(this.sop,r,s,i),this.addToIndex(this.pso,i,r,s),this.addToIndex(this.pos,i,s,r),this.addToIndex(this.osp,s,r,i),this.addToIndex(this.ops,s,i,r),this.addToUUIDIndex(e.subject),this.queryCache.clear()}async remove(e){let t=this.getTripleKey(e);if(!this.triples.has(t))return!1;this.triples.delete(t);let r=this.getNodeKey(e.subject),i=this.getNodeKey(e.predicate),s=this.getNodeKey(e.object);return this.removeFromIndex(this.spo,r,i,s),this.removeFromIndex(this.sop,r,s,i),this.removeFromIndex(this.pso,i,r,s),this.removeFromIndex(this.pos,i,s,r),this.removeFromIndex(this.osp,s,r,i),this.removeFromIndex(this.ops,s,i,r),this.queryCache.clear(),!0}async has(e){let t=this.getTripleKey(e);return this.triples.has(t)}async match(e,t,r){let i=this.getMatchCacheKey(e,t,r),s=this.queryCache.get(i);if(s!==void 0)return s;let a;return!e&&!t&&!r?a=Array.from(this.triples.values()):e&&t&&r?a=this.matchSPO(e,t,r):e&&t?a=this.matchSP(e,t):e&&r?a=this.matchSO(e,r):t&&r?a=this.matchPO(t,r):e?a=this.matchS(e):t?a=this.matchP(t):r?a=this.matchO(r):a=[],this.queryCache.set(i,a),a}async addAll(e){for(let t of e)await this.add(t)}async removeAll(e){let t=0;for(let r of e)await this.remove(r)&&t++;return t}async clear(){this.triples.clear(),this.spo.clear(),this.sop.clear(),this.pso.clear(),this.pos.clear(),this.osp.clear(),this.ops.clear(),this.uuidIndex.clear(),this.queryCache.clear()}async count(){return this.triples.size}async subjects(){let e=new Set;for(let t of this.triples.values())e.add(t.subject);return Array.from(e)}async predicates(){let e=new Set;for(let t of this.triples.values())e.add(t.predicate);return Array.from(e)}async objects(){let e=new Set;for(let t of this.triples.values())e.add(t.object);return Array.from(e)}async beginTransaction(){return new TS(this)}async findSubjectsByUUID(e){return this.findSubjectsByUUIDSync(e)}findSubjectsByUUIDSync(e){let t=e.toLowerCase(),r=this.uuidIndex.get(t);if(!r||r.size===0)return[];let i=[];for(let s of r)this.spo.has(`i:${s}`)&&i.push(new rm.IRI(s));return i}addToUUIDIndex(e){if(!(e instanceof rm.IRI))return;let t=e.value,r=t.match(i6);if(r)for(let i of r){let s=i.toLowerCase();this.uuidIndex.has(s)||this.uuidIndex.set(s,new Set),this.uuidIndex.get(s).add(t)}}matchSPO(e,t,r){let i=this.getNodeKey(e),s=this.getNodeKey(t),a=this.getNodeKey(r),c=this.spo.get(i);if(!c)return[];let l=c.get(s);if(!l)return[];if(l.has(a)){let u=this.buildTripleKey(i,s,a),f=this.triples.get(u);return f?[f]:[]}return[]}matchSP(e,t){let r=this.getNodeKey(e),i=this.getNodeKey(t),s=this.spo.get(r);if(!s)return[];let a=s.get(i);return a?this.getTriplesByKeys(Array.from(a).map(c=>this.buildTripleKey(r,i,c))):[]}matchSO(e,t){let r=this.getNodeKey(e),i=this.getNodeKey(t),s=this.sop.get(r);if(!s)return[];let a=s.get(i);return a?this.getTriplesByKeys(Array.from(a).map(c=>this.buildTripleKey(r,c,i))):[]}matchPO(e,t){let r=this.getNodeKey(e),i=this.getNodeKey(t),s=this.pos.get(r);if(!s)return[];let a=s.get(i);return a?this.getTriplesByKeys(Array.from(a).map(c=>this.buildTripleKey(c,r,i))):[]}matchS(e){let t=this.getNodeKey(e),r=this.spo.get(t);if(!r)return[];let i=[];for(let[s,a]of r.entries())for(let c of a)i.push(this.buildTripleKey(t,s,c));return this.getTriplesByKeys(i)}matchP(e){let t=this.getNodeKey(e),r=this.pso.get(t);if(!r)return[];let i=[];for(let[s,a]of r.entries())for(let c of a)i.push(this.buildTripleKey(s,t,c));return this.getTriplesByKeys(i)}matchO(e){let t=this.getNodeKey(e),r=this.osp.get(t);if(!r)return[];let i=[];for(let[s,a]of r.entries())for(let c of a)i.push(this.buildTripleKey(s,c,t));return this.getTriplesByKeys(i)}getTriplesByKeys(e){let t=[];for(let r of e){let i=this.triples.get(r);i&&t.push(i)}return t}addToIndex(e,t,r,i){e.has(t)||e.set(t,new Map);let s=e.get(t);s.has(r)||s.set(r,new Set),s.get(r).add(i)}removeFromIndex(e,t,r,i){let s=e.get(t);if(!s)return;let a=s.get(r);a&&(a.delete(i),a.size===0&&s.delete(r),s.size===0&&e.delete(t))}getTripleKey(e){let t=this.getNodeKey(e.subject),r=this.getNodeKey(e.predicate),i=this.getNodeKey(e.object);return this.buildTripleKey(t,r,i)}buildTripleKey(e,t,r){return`${e}|${t}|${r}`}getNodeKey(e){if(e instanceof rm.IRI)return`i:${e.value}`;if(e instanceof Z5.BlankNode)return`b:${e.id}`;if(e instanceof e6.Literal){let t=`l:${e.value}`;return e.datatype&&e.datatype.value!==n6?t+=`^^${e.datatype.value}`:e.language&&(t+=`@${e.language}`),t}return""}getMatchCacheKey(e,t,r){let i=e?this.getNodeKey(e):"?",s=t?this.getNodeKey(t):"?",a=r?this.getNodeKey(r):"?";return`${i}|${s}|${a}`}getGraphKey(e){return e?e.value:ul}getOrCreateGraphStore(e){let t=this.getGraphKey(e);return t===ul?this:(this.namedGraphs.has(t)||this.namedGraphs.set(t,new n),this.namedGraphs.get(t))}async addToGraph(e,t){await this.getOrCreateGraphStore(t).add(e)}async removeFromGraph(e,t){let r=this.getGraphKey(t);if(r===ul)return this.remove(e);let i=this.namedGraphs.get(r);return i?i.remove(e):!1}async matchInGraph(e,t,r,i){let s=this.getGraphKey(i);if(s===ul)return this.match(e,t,r);let a=this.namedGraphs.get(s);return a?a.match(e,t,r):[]}async getNamedGraphs(){return Array.from(this.namedGraphs.keys()).map(e=>new rm.IRI(e))}async hasGraph(e){let t=this.namedGraphs.get(e.value);return t?await t.count()>0:!1}async clearGraph(e){let t=this.getGraphKey(e);if(t===ul){await this.clear();return}let r=this.namedGraphs.get(t);r&&(await r.clear(),this.namedGraphs.delete(t))}async countInGraph(e){let t=this.getGraphKey(e);if(t===ul)return this.count();let r=this.namedGraphs.get(t);return r?r.count():0}};nm.InMemoryTripleStore=ES;var TS=class{static{o(this,"InMemoryTransaction")}constructor(e){this.store=e,this.operations=[],this.committed=!1,this.rolledBack=!1}async add(e){if(this.committed)throw new Va.TransactionError("Transaction already committed");if(this.rolledBack)throw new Va.TransactionError("Transaction already rolled back");this.operations.push({type:"add",triple:e})}async remove(e){if(this.committed)throw new Va.TransactionError("Transaction already committed");if(this.rolledBack)throw new Va.TransactionError("Transaction already rolled back");return this.operations.push({type:"remove",triple:e}),!0}async commit(){if(this.committed)throw new Va.TransactionError("Transaction already committed");if(this.rolledBack)throw new Va.TransactionError("Transaction already rolled back");for(let e of this.operations)e.type==="add"?await this.store.add(e.triple):await this.store.remove(e.triple);this.committed=!0,this.operations=[]}async rollback(){if(this.committed)throw new Va.TransactionError("Transaction already committed");if(this.rolledBack)throw new Va.TransactionError("Transaction already rolled back");this.operations=[],this.rolledBack=!0}}});var sm=S(ra=>{"use strict";var s6=ra&&ra.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},a6=ra&&ra.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ra,"__esModule",{value:!0});ra.EffortStatusWorkflow=void 0;var o6=fe(),im=Mn(),c6=lf(),l6=yS(),u6=AS(),xS=class{static{o(this,"EffortStatusWorkflow")}constructor(){this.resolver=new l6.WorkflowResolver(new u6.InMemoryTripleStore)}getPreviousStatus(e,t){let r=this.normalizeStatus(e),i=this.resolveDefinition(t),s=new c6.WorkflowEngine(i);if(s.isInitialState(r))return null;let a=s.getPreviousStatus(r);if(a!==null)return this.wrapStatus(a)}normalizeStatus(e){return e.replace(/["'[\]]/g,"").trim()}wrapStatus(e){return`"[[${e}]]"`}resolveDefinition(e){return this.hasInstanceClass(e,im.AssetClass.TASK)||this.hasInstanceClass(e,im.AssetClass.MEETING)?this.resolver.getHardcodedFallback(im.AssetClass.TASK):this.resolver.getHardcodedFallback(im.AssetClass.PROJECT)}hasInstanceClass(e,t){return e?(Array.isArray(e)?e:[e]).some(i=>i.replace(/["'[\]]/g,"").trim()===t):!1}};ra.EffortStatusWorkflow=xS;ra.EffortStatusWorkflow=xS=s6([(0,o6.injectable)(),a6("design:paramtypes",[])],xS)});var wt=S(am=>{"use strict";Object.defineProperty(am,"__esModule",{value:!0});am.DI_TOKENS=void 0;am.DI_TOKENS={IFileSystemAdapter:Symbol.for("IFileSystemAdapter"),IVaultAdapter:Symbol.for("IVaultAdapter"),IVaultContext:Symbol.for("IVaultContext"),IMultiVaultManager:Symbol.for("IMultiVaultManager"),ILogger:Symbol.for("ILogger"),IEventBus:Symbol.for("IEventBus"),IConfiguration:Symbol.for("IConfiguration"),INotificationService:Symbol.for("INotificationService"),AreaCreationService:Symbol.for("AreaCreationService"),ClassCreationService:Symbol.for("ClassCreationService"),ConceptCreationService:Symbol.for("ConceptCreationService"),FleetingNoteCreationService:Symbol.for("FleetingNoteCreationService"),SupervisionCreationService:Symbol.for("SupervisionCreationService"),GenericAssetCreationService:Symbol.for("GenericAssetCreationService"),DynamicFrontmatterGenerator:Symbol.for("DynamicFrontmatterGenerator"),AlgorithmExtractor:Symbol.for("AlgorithmExtractor"),TaskStatusService:Symbol.for("TaskStatusService"),EffortStatusWorkflow:Symbol.for("EffortStatusWorkflow"),StatusTimestampService:Symbol.for("StatusTimestampService"),PropertyCleanupService:Symbol.for("PropertyCleanupService"),FolderRepairService:Symbol.for("FolderRepairService"),LabelToAliasService:Symbol.for("LabelToAliasService"),RenameToUidService:Symbol.for("RenameToUidService"),PlanningService:Symbol.for("PlanningService"),EffortVotingService:Symbol.for("EffortVotingService"),SessionEventService:Symbol.for("SessionEventService"),CriticalityZoneService:Symbol.for("CriticalityZoneService"),AssetConversionService:Symbol.for("AssetConversionService"),NoteToRDFConverter:Symbol.for("NoteToRDFConverter"),IVaultSettings:Symbol.for("IVaultSettings"),AreaHierarchyBuilder:Symbol.for("AreaHierarchyBuilder"),URIConstructionService:Symbol.for("URIConstructionService"),ClassHierarchyResolver:Symbol.for("ClassHierarchyResolver")}});var om=S(_i=>{"use strict";var f6=_i&&_i.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},d6=_i&&_i.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},h6=_i&&_i.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(_i,"__esModule",{value:!0});_i.StatusTimestampService=void 0;var Kx=fe(),p6=ei(),fl=Hr(),m6=wt(),CS=class{static{o(this,"StatusTimestampService")}constructor(e){this.vault=e,this.frontmatterService=new p6.FrontmatterService}async addStartTimestamp(e){let t=await this.vault.read(e),r=fl.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_startTimestamp",r);await this.vault.modify(e,i)}async addEndTimestamp(e,t){let r=await this.vault.read(e),i=t||new Date,s=fl.DateFormatter.toLocalTimestamp(i),a=this.frontmatterService.updateProperty(r,"ems__Effort_endTimestamp",s);await this.vault.modify(e,a)}async addResolutionTimestamp(e){let t=await this.vault.read(e),r=fl.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_resolutionTimestamp",r);await this.vault.modify(e,i)}async addReviewTimestamp(e){let t=await this.vault.read(e),r=fl.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_lastReviewTimestamp",r);await this.vault.modify(e,i)}async addEndAndResolutionTimestamps(e,t){let r=await this.vault.read(e),i=t||new Date,s=fl.DateFormatter.toLocalTimestamp(i),a=this.frontmatterService.updateProperty(r,"ems__Effort_endTimestamp",s);a=this.frontmatterService.updateProperty(a,"ems__Effort_resolutionTimestamp",s),await this.vault.modify(e,a)}async removeStartTimestamp(e){let t=await this.vault.read(e),r=this.frontmatterService.removeProperty(t,"ems__Effort_startTimestamp");await this.vault.modify(e,r)}async removeEndTimestamp(e){let t=await this.vault.read(e),r=this.frontmatterService.removeProperty(t,"ems__Effort_endTimestamp");await this.vault.modify(e,r)}async removeResolutionTimestamp(e){let t=await this.vault.read(e),r=this.frontmatterService.removeProperty(t,"ems__Effort_resolutionTimestamp");await this.vault.modify(e,r)}async removeEndAndResolutionTimestamps(e){let t=await this.vault.read(e),r=this.frontmatterService.removeProperty(t,"ems__Effort_endTimestamp");r=this.frontmatterService.removeProperty(r,"ems__Effort_resolutionTimestamp"),await this.vault.modify(e,r)}async shiftPlannedEndTimestamp(e,t){let r=await this.vault.read(e),i=this.frontmatterService.parse(r);if(!i.exists)return;let s=this.frontmatterService.getPropertyValue(i.content,"ems__Effort_plannedEndTimestamp");if(!s)return;let a=new Date(s.replace(/["']/g,""));if(isNaN(a.getTime()))return;let c=new Date(a.getTime()+t),l=fl.DateFormatter.toLocalTimestamp(c),u=this.frontmatterService.updateProperty(r,"ems__Effort_plannedEndTimestamp",l);await this.vault.modify(e,u)}};_i.StatusTimestampService=CS;_i.StatusTimestampService=CS=f6([(0,Kx.injectable)(),h6(0,(0,Kx.inject)(m6.DI_TOKENS.IVaultAdapter)),d6("design:paramtypes",[Object])],CS)});var RS=S(Si=>{"use strict";var g6=Si&&Si.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},y6=Si&&Si.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},_6=Si&&Si.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Si,"__esModule",{value:!0});Si.TaskStatusService=void 0;var Yx=fe(),S6=ei(),Uo=Hr(),v6=sm(),b6=om(),w6=wt(),IS=class{static{o(this,"TaskStatusService")}constructor(e,t,r){this.vault=e,this.workflow=t,this.timestampService=r,this.frontmatterService=new S6.FrontmatterService}async setDraftStatus(e){await this.updateStatus(e,"ems__EffortStatusDraft")}async moveToBacklog(e){await this.updateStatus(e,"ems__EffortStatusBacklog")}async moveToAnalysis(e){await this.updateStatus(e,"ems__EffortStatusAnalysis")}async moveToToDo(e){await this.updateStatus(e,"ems__EffortStatusToDo")}async startEffort(e){let t=await this.vault.read(e),r=Uo.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_status",'"[[ems__EffortStatusDoing]]"');i=this.frontmatterService.updateProperty(i,"ems__Effort_startTimestamp",r),await this.vault.modify(e,i)}async markTaskAsDone(e){let t=await this.vault.read(e),r=Uo.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_status",'"[[ems__EffortStatusDone]]"');i=this.frontmatterService.updateProperty(i,"ems__Effort_endTimestamp",r),i=this.frontmatterService.updateProperty(i,"ems__Effort_resolutionTimestamp",r),await this.vault.modify(e,i)}async syncEffortEndTimestamp(e,t){await this.timestampService.addEndAndResolutionTimestamps(e,t)}async shiftPlannedEndTimestamp(e,t){await this.timestampService.shiftPlannedEndTimestamp(e,t)}async trashEffort(e,t){let r=await this.vault.read(e),i=Uo.DateFormatter.toLocalTimestamp(new Date),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusTrashed]]"');s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),t&&(s=this.appendTrashReason(s,t)),await this.vault.modify(e,s)}appendTrashReason(e,t){let r=`
100
+ ${s}`}};Jp.MetadataHelpers=pS});var Hx=S(Bo=>{"use strict";Object.defineProperty(Bo,"__esModule",{value:!0});Bo.TASK_DEFAULT_WORKFLOW=Bo.PROJECT_DEFAULT_WORKFLOW=void 0;Bo.buildWorkflowAssetContent=K5;var zx=Tn(),uf=Fu(),Ee=Ec(),Kr=Gx(),mS=ms();Bo.PROJECT_DEFAULT_WORKFLOW={id:"a1b2c3d4-1111-4000-a000-000000000001",name:"Project Default Workflow",targetClass:uf.AssetClass.PROJECT,initialState:Ee.EffortStatus.DRAFT,terminalStates:[Ee.EffortStatus.DONE,Ee.EffortStatus.TRASHED],isDefault:!0,states:[{status:Ee.EffortStatus.DRAFT,order:1,optional:!1,timestampOnEnter:[]},{status:Ee.EffortStatus.BACKLOG,order:2,optional:!1,timestampOnEnter:[]},{status:Ee.EffortStatus.ANALYSIS,order:3,optional:!0,timestampOnEnter:[]},{status:Ee.EffortStatus.TODO,order:4,optional:!0,timestampOnEnter:[]},{status:Ee.EffortStatus.DOING,order:5,optional:!1,timestampOnEnter:["ems__Effort_startTimestamp"]},{status:Ee.EffortStatus.DONE,order:6,optional:!1,timestampOnEnter:["ems__Effort_endTimestamp","ems__Effort_resolutionTimestamp"]},{status:Ee.EffortStatus.TRASHED,order:7,optional:!1,timestampOnEnter:["ems__Effort_resolutionTimestamp"]}],transitions:[{from:Ee.EffortStatus.DRAFT,to:Ee.EffortStatus.BACKLOG,label:"\u2192 Backlog",isRollback:!1},{from:Ee.EffortStatus.BACKLOG,to:Ee.EffortStatus.ANALYSIS,label:"\u2192 Analysis",isRollback:!1},{from:Ee.EffortStatus.ANALYSIS,to:Ee.EffortStatus.TODO,label:"\u2192 ToDo",isRollback:!1},{from:Ee.EffortStatus.TODO,to:Ee.EffortStatus.DOING,label:"\u25B6 Start",isRollback:!1},{from:Ee.EffortStatus.DOING,to:Ee.EffortStatus.DONE,label:"\u2713 Done",isRollback:!1},{from:Ee.EffortStatus.BACKLOG,to:Ee.EffortStatus.DRAFT,label:"\u2190 Draft",isRollback:!0},{from:Ee.EffortStatus.ANALYSIS,to:Ee.EffortStatus.BACKLOG,label:"\u2190 Backlog",isRollback:!0},{from:Ee.EffortStatus.TODO,to:Ee.EffortStatus.ANALYSIS,label:"\u2190 Analysis",isRollback:!0},{from:Ee.EffortStatus.DOING,to:Ee.EffortStatus.TODO,label:"\u2190 ToDo",isRollback:!0},{from:Ee.EffortStatus.DONE,to:Ee.EffortStatus.DOING,label:"\u2190 Doing",isRollback:!0}]};Bo.TASK_DEFAULT_WORKFLOW={id:"a1b2c3d4-2222-4000-a000-000000000002",name:"Task Default Workflow",targetClass:uf.AssetClass.TASK,initialState:Ee.EffortStatus.DRAFT,terminalStates:[Ee.EffortStatus.DONE,Ee.EffortStatus.TRASHED],isDefault:!0,states:[{status:Ee.EffortStatus.DRAFT,order:1,optional:!1,timestampOnEnter:[]},{status:Ee.EffortStatus.BACKLOG,order:2,optional:!1,timestampOnEnter:[]},{status:Ee.EffortStatus.DOING,order:3,optional:!1,timestampOnEnter:["ems__Effort_startTimestamp"]},{status:Ee.EffortStatus.DONE,order:4,optional:!1,timestampOnEnter:["ems__Effort_endTimestamp","ems__Effort_resolutionTimestamp"]},{status:Ee.EffortStatus.TRASHED,order:5,optional:!1,timestampOnEnter:["ems__Effort_resolutionTimestamp"]}],transitions:[{from:Ee.EffortStatus.DRAFT,to:Ee.EffortStatus.BACKLOG,label:"\u2192 Backlog",isRollback:!1},{from:Ee.EffortStatus.BACKLOG,to:Ee.EffortStatus.DOING,label:"\u25B6 Start",isRollback:!1},{from:Ee.EffortStatus.DOING,to:Ee.EffortStatus.DONE,label:"\u2713 Done",isRollback:!1},{from:Ee.EffortStatus.BACKLOG,to:Ee.EffortStatus.DRAFT,label:"\u2190 Draft",isRollback:!0},{from:Ee.EffortStatus.DOING,to:Ee.EffortStatus.BACKLOG,label:"\u2190 Backlog",isRollback:!0},{from:Ee.EffortStatus.DONE,to:Ee.EffortStatus.DOING,label:"\u2190 Doing",isRollback:!0}]};function K5(n){let e=new Date().toISOString(),t=[],r=n.id,i={exo__Asset_uid:r,exo__Asset_label:`"${n.name}"`,exo__Asset_createdAt:e,exo__Instance_class:uf.AssetClass.WORKFLOW,[Kr.WorkflowProperty.TARGET_CLASS]:`"[[${n.targetClass}]]"`,[Kr.WorkflowProperty.INITIAL_STATE]:`"[[${n.initialState}]]"`,[Kr.WorkflowProperty.TERMINAL_STATES]:n.terminalStates.map(s=>`"[[${s}]]"`),[Kr.WorkflowProperty.IS_DEFAULT]:n.isDefault};t.push({filename:`${r}.md`,content:mS.MetadataHelpers.buildFileContent(i)});for(let s of n.states){let a=(0,zx.v4)(),c={exo__Asset_uid:a,exo__Asset_label:`"${n.name} - ${s.status}"`,exo__Asset_createdAt:e,exo__Instance_class:uf.AssetClass.WORKFLOW_STATE,[Kr.WorkflowStateProperty.WORKFLOW]:`"[[${r}]]"`,[Kr.WorkflowStateProperty.STATUS]:`"[[${s.status}]]"`,[Kr.WorkflowStateProperty.ORDER]:s.order,[Kr.WorkflowStateProperty.OPTIONAL]:s.optional};s.timestampOnEnter.length>0&&(c[Kr.WorkflowStateProperty.TIMESTAMP_ON_ENTER]=s.timestampOnEnter),s.badgeColor&&(c[Kr.WorkflowStateProperty.BADGE_COLOR]=`"${s.badgeColor}"`),t.push({filename:`${a}.md`,content:mS.MetadataHelpers.buildFileContent(c)})}for(let s of n.transitions){let a=(0,zx.v4)(),c={exo__Asset_uid:a,exo__Asset_label:`"${n.name} - ${s.label}"`,exo__Asset_createdAt:e,exo__Instance_class:uf.AssetClass.WORKFLOW_TRANSITION,[Kr.WorkflowTransitionProperty.WORKFLOW]:`"[[${r}]]"`,[Kr.WorkflowTransitionProperty.FROM]:`"[[${s.from}]]"`,[Kr.WorkflowTransitionProperty.TO]:`"[[${s.to}]]"`,[Kr.WorkflowTransitionProperty.LABEL]:`"${s.label}"`,[Kr.WorkflowTransitionProperty.IS_ROLLBACK]:s.isRollback};s.icon&&(c[Kr.WorkflowTransitionProperty.ICON]=`"${s.icon}"`),t.push({filename:`${a}.md`,content:mS.MetadataHelpers.buildFileContent(c)})}return t}o(K5,"buildWorkflowAssetContent")});var yS=S(ta=>{"use strict";var Y5=ta&&ta.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},X5=ta&&ta.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ta,"__esModule",{value:!0});ta.WorkflowResolver=void 0;var J5=fe(),ff=Ae(),pn=Ne(),bt=yr(),Vo=Fu(),Zp=Ec(),Qx=Hx(),gS=class{static{o(this,"WorkflowResolver")}constructor(e){this.tripleStore=e,this.cache=new Map}async resolveForClass(e){let t=`class:${e}`,r=this.cache.get(t);if(r)return r;let s=await this.findDefaultWorkflow(e)??this.getHardcodedFallback(e);return this.cache.set(t,s),s}async resolveForAsset(e,t){let r=await this.tripleStore.match(e,bt.Namespace.EMS.term("Effort_workflow"),void 0);if(r.length>0){let i=r[0].object;if(i instanceof ff.IRI){let s=await this.loadWorkflowBySubject(i);if(s)return s}}return this.resolveForClass(t)}invalidateCache(){this.cache.clear()}async findDefaultWorkflow(e){let t=await this.tripleStore.match(void 0,bt.Namespace.RDF.term("type"),bt.Namespace.EMS.term("Workflow"));for(let r of t){let i=r.subject;if(!(!(await this.tripleStore.match(i,bt.Namespace.EMS.term("Workflow_targetClass"),void 0)).some(u=>{let f=u.object;return f instanceof ff.IRI?f.value.endsWith(e.replace(/^ems__/,"")):f instanceof pn.Literal?this.normalizeWikilink(f.value)===e:!1})||!(await this.tripleStore.match(i,bt.Namespace.EMS.term("Workflow_isDefault"),void 0)).some(u=>{let f=u.object instanceof pn.Literal?u.object.value:"";return f==="true"||f==="1"})))return this.loadWorkflowBySubject(i)}return null}async loadWorkflowBySubject(e){let t=await this.tripleStore.match(e,bt.Namespace.EXO.term("Asset_label"),void 0),r=t.length>0&&t[0].object instanceof pn.Literal?t[0].object.value:"Unknown Workflow",i=await this.tripleStore.match(e,bt.Namespace.EXO.term("Asset_uid"),void 0),s=i.length>0&&i[0].object instanceof pn.Literal?i[0].object.value:e.value,a=await this.tripleStore.match(e,bt.Namespace.EMS.term("Workflow_targetClass"),void 0),c=this.resolveAssetClass(a),l=await this.tripleStore.match(e,bt.Namespace.EMS.term("Workflow_initialState"),void 0),u=this.resolveEffortStatus(l)??Zp.EffortStatus.DRAFT,f=await this.tripleStore.match(e,bt.Namespace.EMS.term("Workflow_terminalStates"),void 0),d=this.resolveEffortStatuses(f),p=(await this.tripleStore.match(e,bt.Namespace.EMS.term("Workflow_isDefault"),void 0)).some(w=>{let b=w.object instanceof pn.Literal?w.object.value:"";return b==="true"||b==="1"}),y=await this.loadStates(e),v=await this.loadTransitions(e);return y.length===0&&v.length===0?null:{id:s,name:r,targetClass:c,states:y,transitions:v,initialState:u,terminalStates:d.length>0?d:[Zp.EffortStatus.DONE,Zp.EffortStatus.TRASHED],isDefault:p}}async loadStates(e){let t=await this.tripleStore.match(void 0,bt.Namespace.RDF.term("type"),bt.Namespace.EMS.term("WorkflowState")),r=[];for(let i of t){let s=i.subject;if(!(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_workflow"),void 0)).some(A=>this.isSameSubject(A.object,e)))continue;let l=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_status"),void 0),u=this.resolveEffortStatus(l);if(!u)continue;let f=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_order"),void 0),d=f.length>0&&f[0].object instanceof pn.Literal&&parseInt(f[0].object.value,10)||0,p=(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_optional"),void 0)).some(A=>{let I=A.object instanceof pn.Literal?A.object.value:"";return I==="true"||I==="1"}),v=(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_timestampOnEnter"),void 0)).map(A=>A.object instanceof pn.Literal?A.object.value:"").filter(A=>A.length>0),w=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowState_badgeColor"),void 0),b=w.length>0&&w[0].object instanceof pn.Literal?w[0].object.value:void 0;r.push({status:u,order:d,optional:p,timestampOnEnter:v,badgeColor:b})}return r.sort((i,s)=>i.order-s.order)}async loadTransitions(e){let t=await this.tripleStore.match(void 0,bt.Namespace.RDF.term("type"),bt.Namespace.EMS.term("WorkflowTransition")),r=[];for(let i of t){let s=i.subject;if(!(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_workflow"),void 0)).some(A=>this.isSameSubject(A.object,e)))continue;let l=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_from"),void 0),u=this.resolveEffortStatus(l),f=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_to"),void 0),d=this.resolveEffortStatus(f);if(!u||!d)continue;let h=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_label"),void 0),p=h.length>0&&h[0].object instanceof pn.Literal?h[0].object.value:`${u} \u2192 ${d}`,y=await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_icon"),void 0),v=y.length>0&&y[0].object instanceof pn.Literal?y[0].object.value:void 0,b=(await this.tripleStore.match(s,bt.Namespace.EMS.term("WorkflowTransition_isRollback"),void 0)).some(A=>{let I=A.object instanceof pn.Literal?A.object.value:"";return I==="true"||I==="1"});r.push({from:u,to:d,label:p,icon:v,isRollback:b})}return r}normalizeWikilink(e){return e.replace(/["'[\]]/g,"").trim()}resolveAssetClass(e){if(e.length===0)return Vo.AssetClass.TASK;let t=e[0].object;if(t instanceof ff.IRI){let i=`ems__${t.value.split("#").pop()??""}`;return Object.values(Vo.AssetClass).includes(i)?i:Vo.AssetClass.TASK}if(t instanceof pn.Literal){let r=this.normalizeWikilink(t.value);return Object.values(Vo.AssetClass).includes(r)?r:Vo.AssetClass.TASK}return Vo.AssetClass.TASK}resolveEffortStatus(e){if(e.length===0)return null;let t=e[0].object,r;if(t instanceof ff.IRI)r=`ems__${t.value.split("#").pop()??""}`;else if(t instanceof pn.Literal)r=this.normalizeWikilink(t.value);else return null;return Object.values(Zp.EffortStatus).includes(r)?r:null}resolveEffortStatuses(e){return e.map(t=>this.resolveEffortStatus([t])).filter(t=>t!==null)}isSameSubject(e,t){if(e instanceof ff.IRI)return e.value===t.value;if(e instanceof pn.Literal){let r=this.normalizeWikilink(e.value);return t.value.includes(r)}return!1}getHardcodedFallback(e){return e===Vo.AssetClass.PROJECT?{...Qx.PROJECT_DEFAULT_WORKFLOW}:{...Qx.TASK_DEFAULT_WORKFLOW}}};ta.WorkflowResolver=gS;ta.WorkflowResolver=gS=Y5([(0,J5.injectable)(),X5("design:paramtypes",[Object])],gS)});var bS=S(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.TransactionError=Ba.TripleNotFoundError=Ba.TripleAlreadyExistsError=void 0;var _S=class extends Error{static{o(this,"TripleAlreadyExistsError")}constructor(e){super(`Triple already exists: ${e.toString()}`),this.name="TripleAlreadyExistsError"}};Ba.TripleAlreadyExistsError=_S;var SS=class extends Error{static{o(this,"TripleNotFoundError")}constructor(e){super(`Triple not found: ${e.toString()}`),this.name="TripleNotFoundError"}};Ba.TripleNotFoundError=SS;var vS=class extends Error{static{o(this,"TransactionError")}constructor(e){super(e),this.name="TransactionError"}};Ba.TransactionError=vS});var tm=S(em=>{"use strict";Object.defineProperty(em,"__esModule",{value:!0});em.LRUCache=void 0;var wS=class{static{o(this,"LRUCache")}constructor(e){this.maxSize=e,this.cache=new Map}get(e){let t=this.cache.get(e);return t!==void 0&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.maxSize){let r=this.cache.keys().next().value;r!==void 0&&this.cache.delete(r)}this.cache.set(e,t)}clear(){this.cache.clear()}size(){return this.cache.size}};em.LRUCache=wS});var AS=S(nm=>{"use strict";Object.defineProperty(nm,"__esModule",{value:!0});nm.InMemoryTripleStore=void 0;var Va=bS(),rm=Ae(),Z5=qt(),e6=Ne(),t6=yr(),r6=tm(),n6=t6.Namespace.XSD.term("string").value,i6=/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/gi,ul="__default__",ES=class n{static{o(this,"InMemoryTripleStore")}constructor(){this.triples=new Map,this.spo=new Map,this.sop=new Map,this.pso=new Map,this.pos=new Map,this.osp=new Map,this.ops=new Map,this.queryCache=new r6.LRUCache(1e3),this.uuidIndex=new Map,this.namedGraphs=new Map}async add(e){let t=this.getTripleKey(e);if(this.triples.has(t))return;this.triples.set(t,e);let r=this.getNodeKey(e.subject),i=this.getNodeKey(e.predicate),s=this.getNodeKey(e.object);this.addToIndex(this.spo,r,i,s),this.addToIndex(this.sop,r,s,i),this.addToIndex(this.pso,i,r,s),this.addToIndex(this.pos,i,s,r),this.addToIndex(this.osp,s,r,i),this.addToIndex(this.ops,s,i,r),this.addToUUIDIndex(e.subject),this.queryCache.clear()}async remove(e){let t=this.getTripleKey(e);if(!this.triples.has(t))return!1;this.triples.delete(t);let r=this.getNodeKey(e.subject),i=this.getNodeKey(e.predicate),s=this.getNodeKey(e.object);return this.removeFromIndex(this.spo,r,i,s),this.removeFromIndex(this.sop,r,s,i),this.removeFromIndex(this.pso,i,r,s),this.removeFromIndex(this.pos,i,s,r),this.removeFromIndex(this.osp,s,r,i),this.removeFromIndex(this.ops,s,i,r),this.queryCache.clear(),!0}async has(e){let t=this.getTripleKey(e);return this.triples.has(t)}async match(e,t,r){let i=this.getMatchCacheKey(e,t,r),s=this.queryCache.get(i);if(s!==void 0)return s;let a;return!e&&!t&&!r?a=Array.from(this.triples.values()):e&&t&&r?a=this.matchSPO(e,t,r):e&&t?a=this.matchSP(e,t):e&&r?a=this.matchSO(e,r):t&&r?a=this.matchPO(t,r):e?a=this.matchS(e):t?a=this.matchP(t):r?a=this.matchO(r):a=[],this.queryCache.set(i,a),a}async addAll(e){for(let t of e)await this.add(t)}async removeAll(e){let t=0;for(let r of e)await this.remove(r)&&t++;return t}async clear(){this.triples.clear(),this.spo.clear(),this.sop.clear(),this.pso.clear(),this.pos.clear(),this.osp.clear(),this.ops.clear(),this.uuidIndex.clear(),this.queryCache.clear()}async count(){return this.triples.size}async subjects(){let e=new Set;for(let t of this.triples.values())e.add(t.subject);return Array.from(e)}async predicates(){let e=new Set;for(let t of this.triples.values())e.add(t.predicate);return Array.from(e)}async objects(){let e=new Set;for(let t of this.triples.values())e.add(t.object);return Array.from(e)}async beginTransaction(){return new TS(this)}async findSubjectsByUUID(e){return this.findSubjectsByUUIDSync(e)}findSubjectsByUUIDSync(e){let t=e.toLowerCase(),r=this.uuidIndex.get(t);if(!r||r.size===0)return[];let i=[];for(let s of r)this.spo.has(`i:${s}`)&&i.push(new rm.IRI(s));return i}addToUUIDIndex(e){if(!(e instanceof rm.IRI))return;let t=e.value,r=t.match(i6);if(r)for(let i of r){let s=i.toLowerCase();this.uuidIndex.has(s)||this.uuidIndex.set(s,new Set),this.uuidIndex.get(s).add(t)}}matchSPO(e,t,r){let i=this.getNodeKey(e),s=this.getNodeKey(t),a=this.getNodeKey(r),c=this.spo.get(i);if(!c)return[];let l=c.get(s);if(!l)return[];if(l.has(a)){let u=this.buildTripleKey(i,s,a),f=this.triples.get(u);return f?[f]:[]}return[]}matchSP(e,t){let r=this.getNodeKey(e),i=this.getNodeKey(t),s=this.spo.get(r);if(!s)return[];let a=s.get(i);return a?this.getTriplesByKeys(Array.from(a).map(c=>this.buildTripleKey(r,i,c))):[]}matchSO(e,t){let r=this.getNodeKey(e),i=this.getNodeKey(t),s=this.sop.get(r);if(!s)return[];let a=s.get(i);return a?this.getTriplesByKeys(Array.from(a).map(c=>this.buildTripleKey(r,c,i))):[]}matchPO(e,t){let r=this.getNodeKey(e),i=this.getNodeKey(t),s=this.pos.get(r);if(!s)return[];let a=s.get(i);return a?this.getTriplesByKeys(Array.from(a).map(c=>this.buildTripleKey(c,r,i))):[]}matchS(e){let t=this.getNodeKey(e),r=this.spo.get(t);if(!r)return[];let i=[];for(let[s,a]of r.entries())for(let c of a)i.push(this.buildTripleKey(t,s,c));return this.getTriplesByKeys(i)}matchP(e){let t=this.getNodeKey(e),r=this.pso.get(t);if(!r)return[];let i=[];for(let[s,a]of r.entries())for(let c of a)i.push(this.buildTripleKey(s,t,c));return this.getTriplesByKeys(i)}matchO(e){let t=this.getNodeKey(e),r=this.osp.get(t);if(!r)return[];let i=[];for(let[s,a]of r.entries())for(let c of a)i.push(this.buildTripleKey(s,c,t));return this.getTriplesByKeys(i)}getTriplesByKeys(e){let t=[];for(let r of e){let i=this.triples.get(r);i&&t.push(i)}return t}addToIndex(e,t,r,i){e.has(t)||e.set(t,new Map);let s=e.get(t);s.has(r)||s.set(r,new Set),s.get(r).add(i)}removeFromIndex(e,t,r,i){let s=e.get(t);if(!s)return;let a=s.get(r);a&&(a.delete(i),a.size===0&&s.delete(r),s.size===0&&e.delete(t))}getTripleKey(e){let t=this.getNodeKey(e.subject),r=this.getNodeKey(e.predicate),i=this.getNodeKey(e.object);return this.buildTripleKey(t,r,i)}buildTripleKey(e,t,r){return`${e}|${t}|${r}`}getNodeKey(e){if(e instanceof rm.IRI)return`i:${e.value}`;if(e instanceof Z5.BlankNode)return`b:${e.id}`;if(e instanceof e6.Literal){let t=`l:${e.value}`;return e.datatype&&e.datatype.value!==n6?t+=`^^${e.datatype.value}`:e.language&&(t+=`@${e.language}`),t}return""}getMatchCacheKey(e,t,r){let i=e?this.getNodeKey(e):"?",s=t?this.getNodeKey(t):"?",a=r?this.getNodeKey(r):"?";return`${i}|${s}|${a}`}getGraphKey(e){return e?e.value:ul}getOrCreateGraphStore(e){let t=this.getGraphKey(e);return t===ul?this:(this.namedGraphs.has(t)||this.namedGraphs.set(t,new n),this.namedGraphs.get(t))}async addToGraph(e,t){await this.getOrCreateGraphStore(t).add(e)}async removeFromGraph(e,t){let r=this.getGraphKey(t);if(r===ul)return this.remove(e);let i=this.namedGraphs.get(r);return i?i.remove(e):!1}async matchInGraph(e,t,r,i){let s=this.getGraphKey(i);if(s===ul)return this.match(e,t,r);let a=this.namedGraphs.get(s);return a?a.match(e,t,r):[]}async getNamedGraphs(){return Array.from(this.namedGraphs.keys()).map(e=>new rm.IRI(e))}async hasGraph(e){let t=this.namedGraphs.get(e.value);return t?await t.count()>0:!1}async clearGraph(e){let t=this.getGraphKey(e);if(t===ul){await this.clear();return}let r=this.namedGraphs.get(t);r&&(await r.clear(),this.namedGraphs.delete(t))}async countInGraph(e){let t=this.getGraphKey(e);if(t===ul)return this.count();let r=this.namedGraphs.get(t);return r?r.count():0}};nm.InMemoryTripleStore=ES;var TS=class{static{o(this,"InMemoryTransaction")}constructor(e){this.store=e,this.operations=[],this.committed=!1,this.rolledBack=!1}async add(e){if(this.committed)throw new Va.TransactionError("Transaction already committed");if(this.rolledBack)throw new Va.TransactionError("Transaction already rolled back");this.operations.push({type:"add",triple:e})}async remove(e){if(this.committed)throw new Va.TransactionError("Transaction already committed");if(this.rolledBack)throw new Va.TransactionError("Transaction already rolled back");return this.operations.push({type:"remove",triple:e}),!0}async commit(){if(this.committed)throw new Va.TransactionError("Transaction already committed");if(this.rolledBack)throw new Va.TransactionError("Transaction already rolled back");for(let e of this.operations)e.type==="add"?await this.store.add(e.triple):await this.store.remove(e.triple);this.committed=!0,this.operations=[]}async rollback(){if(this.committed)throw new Va.TransactionError("Transaction already committed");if(this.rolledBack)throw new Va.TransactionError("Transaction already rolled back");this.operations=[],this.rolledBack=!0}}});var sm=S(ra=>{"use strict";var s6=ra&&ra.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},a6=ra&&ra.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ra,"__esModule",{value:!0});ra.EffortStatusWorkflow=void 0;var o6=fe(),im=Mn(),c6=lf(),l6=yS(),u6=AS(),xS=class{static{o(this,"EffortStatusWorkflow")}constructor(){this.resolver=new l6.WorkflowResolver(new u6.InMemoryTripleStore)}getPreviousStatus(e,t){let r=this.normalizeStatus(e),i=this.resolveDefinition(t),s=new c6.WorkflowEngine(i);if(s.isInitialState(r))return null;let a=s.getPreviousStatus(r);if(a!==null)return this.wrapStatus(a)}normalizeStatus(e){return e.replace(/["'[\]]/g,"").trim()}wrapStatus(e){return`"[[${e}]]"`}resolveDefinition(e){return this.hasInstanceClass(e,im.AssetClass.TASK)||this.hasInstanceClass(e,im.AssetClass.MEETING)?this.resolver.getHardcodedFallback(im.AssetClass.TASK):this.resolver.getHardcodedFallback(im.AssetClass.PROJECT)}hasInstanceClass(e,t){return e?(Array.isArray(e)?e:[e]).some(i=>i.replace(/["'[\]]/g,"").trim()===t):!1}};ra.EffortStatusWorkflow=xS;ra.EffortStatusWorkflow=xS=s6([(0,o6.injectable)(),a6("design:paramtypes",[])],xS)});var wt=S(am=>{"use strict";Object.defineProperty(am,"__esModule",{value:!0});am.DI_TOKENS=void 0;am.DI_TOKENS={IFileSystemAdapter:Symbol.for("IFileSystemAdapter"),IVaultAdapter:Symbol.for("IVaultAdapter"),IVaultContext:Symbol.for("IVaultContext"),IMultiVaultManager:Symbol.for("IMultiVaultManager"),ILogger:Symbol.for("ILogger"),IEventBus:Symbol.for("IEventBus"),IConfiguration:Symbol.for("IConfiguration"),INotificationService:Symbol.for("INotificationService"),AreaCreationService:Symbol.for("AreaCreationService"),ClassCreationService:Symbol.for("ClassCreationService"),ConceptCreationService:Symbol.for("ConceptCreationService"),FleetingNoteCreationService:Symbol.for("FleetingNoteCreationService"),SupervisionCreationService:Symbol.for("SupervisionCreationService"),GenericAssetCreationService:Symbol.for("GenericAssetCreationService"),DynamicFrontmatterGenerator:Symbol.for("DynamicFrontmatterGenerator"),AlgorithmExtractor:Symbol.for("AlgorithmExtractor"),TaskStatusService:Symbol.for("TaskStatusService"),EffortStatusWorkflow:Symbol.for("EffortStatusWorkflow"),StatusTimestampService:Symbol.for("StatusTimestampService"),PropertyCleanupService:Symbol.for("PropertyCleanupService"),FolderRepairService:Symbol.for("FolderRepairService"),LabelToAliasService:Symbol.for("LabelToAliasService"),RenameToUidService:Symbol.for("RenameToUidService"),PlanningService:Symbol.for("PlanningService"),EffortVotingService:Symbol.for("EffortVotingService"),SessionEventService:Symbol.for("SessionEventService"),CriticalityZoneService:Symbol.for("CriticalityZoneService"),AssetConversionService:Symbol.for("AssetConversionService"),NoteToRDFConverter:Symbol.for("NoteToRDFConverter"),IVaultSettings:Symbol.for("IVaultSettings"),AreaHierarchyBuilder:Symbol.for("AreaHierarchyBuilder"),URIConstructionService:Symbol.for("URIConstructionService"),ClassHierarchyResolver:Symbol.for("ClassHierarchyResolver")}});var om=S(_i=>{"use strict";var f6=_i&&_i.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},d6=_i&&_i.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},h6=_i&&_i.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(_i,"__esModule",{value:!0});_i.StatusTimestampService=void 0;var Kx=fe(),p6=ei(),fl=Qr(),m6=wt(),CS=class{static{o(this,"StatusTimestampService")}constructor(e){this.vault=e,this.frontmatterService=new p6.FrontmatterService}async addStartTimestamp(e){let t=await this.vault.read(e),r=fl.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_startTimestamp",r);await this.vault.modify(e,i)}async addEndTimestamp(e,t){let r=await this.vault.read(e),i=t||new Date,s=fl.DateFormatter.toLocalTimestamp(i),a=this.frontmatterService.updateProperty(r,"ems__Effort_endTimestamp",s);await this.vault.modify(e,a)}async addResolutionTimestamp(e){let t=await this.vault.read(e),r=fl.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_resolutionTimestamp",r);await this.vault.modify(e,i)}async addReviewTimestamp(e){let t=await this.vault.read(e),r=fl.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_lastReviewTimestamp",r);await this.vault.modify(e,i)}async addEndAndResolutionTimestamps(e,t){let r=await this.vault.read(e),i=t||new Date,s=fl.DateFormatter.toLocalTimestamp(i),a=this.frontmatterService.updateProperty(r,"ems__Effort_endTimestamp",s);a=this.frontmatterService.updateProperty(a,"ems__Effort_resolutionTimestamp",s),await this.vault.modify(e,a)}async removeStartTimestamp(e){let t=await this.vault.read(e),r=this.frontmatterService.removeProperty(t,"ems__Effort_startTimestamp");await this.vault.modify(e,r)}async removeEndTimestamp(e){let t=await this.vault.read(e),r=this.frontmatterService.removeProperty(t,"ems__Effort_endTimestamp");await this.vault.modify(e,r)}async removeResolutionTimestamp(e){let t=await this.vault.read(e),r=this.frontmatterService.removeProperty(t,"ems__Effort_resolutionTimestamp");await this.vault.modify(e,r)}async removeEndAndResolutionTimestamps(e){let t=await this.vault.read(e),r=this.frontmatterService.removeProperty(t,"ems__Effort_endTimestamp");r=this.frontmatterService.removeProperty(r,"ems__Effort_resolutionTimestamp"),await this.vault.modify(e,r)}async shiftPlannedEndTimestamp(e,t){let r=await this.vault.read(e),i=this.frontmatterService.parse(r);if(!i.exists)return;let s=this.frontmatterService.getPropertyValue(i.content,"ems__Effort_plannedEndTimestamp");if(!s)return;let a=new Date(s.replace(/["']/g,""));if(isNaN(a.getTime()))return;let c=new Date(a.getTime()+t),l=fl.DateFormatter.toLocalTimestamp(c),u=this.frontmatterService.updateProperty(r,"ems__Effort_plannedEndTimestamp",l);await this.vault.modify(e,u)}};_i.StatusTimestampService=CS;_i.StatusTimestampService=CS=f6([(0,Kx.injectable)(),h6(0,(0,Kx.inject)(m6.DI_TOKENS.IVaultAdapter)),d6("design:paramtypes",[Object])],CS)});var RS=S(Si=>{"use strict";var g6=Si&&Si.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},y6=Si&&Si.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},_6=Si&&Si.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Si,"__esModule",{value:!0});Si.TaskStatusService=void 0;var Yx=fe(),S6=ei(),Uo=Qr(),v6=sm(),b6=om(),w6=wt(),IS=class{static{o(this,"TaskStatusService")}constructor(e,t,r){this.vault=e,this.workflow=t,this.timestampService=r,this.frontmatterService=new S6.FrontmatterService}async setDraftStatus(e){await this.updateStatus(e,"ems__EffortStatusDraft")}async moveToBacklog(e){await this.updateStatus(e,"ems__EffortStatusBacklog")}async moveToAnalysis(e){await this.updateStatus(e,"ems__EffortStatusAnalysis")}async moveToToDo(e){await this.updateStatus(e,"ems__EffortStatusToDo")}async startEffort(e){let t=await this.vault.read(e),r=Uo.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_status",'"[[ems__EffortStatusDoing]]"');i=this.frontmatterService.updateProperty(i,"ems__Effort_startTimestamp",r),await this.vault.modify(e,i)}async markTaskAsDone(e){let t=await this.vault.read(e),r=Uo.DateFormatter.toLocalTimestamp(new Date),i=this.frontmatterService.updateProperty(t,"ems__Effort_status",'"[[ems__EffortStatusDone]]"');i=this.frontmatterService.updateProperty(i,"ems__Effort_endTimestamp",r),i=this.frontmatterService.updateProperty(i,"ems__Effort_resolutionTimestamp",r),await this.vault.modify(e,i)}async syncEffortEndTimestamp(e,t){await this.timestampService.addEndAndResolutionTimestamps(e,t)}async shiftPlannedEndTimestamp(e,t){await this.timestampService.shiftPlannedEndTimestamp(e,t)}async trashEffort(e,t){let r=await this.vault.read(e),i=Uo.DateFormatter.toLocalTimestamp(new Date),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusTrashed]]"');s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),t&&(s=this.appendTrashReason(s,t)),await this.vault.modify(e,s)}appendTrashReason(e,t){let r=`
101
101
 
102
102
  ## Trash Reason
103
103
 
104
104
  ${t}`;return e.trimEnd()+r}async archiveTask(e){let t=await this.vault.read(e),r=this.frontmatterService.updateProperty(t,"archived","true");r=this.frontmatterService.removeProperty(r,"aliases"),await this.vault.modify(e,r)}async planOnToday(e){let t=await this.vault.read(e),r=Uo.DateFormatter.getTodayStartTimestamp(),i=this.frontmatterService.updateProperty(t,"ems__Effort_plannedStartTimestamp",r);await this.vault.modify(e,i)}async planForEvening(e){let t=await this.vault.read(e),r=new Date;r.setHours(19,0,0,0);let i=Uo.DateFormatter.toLocalTimestamp(r),s=this.frontmatterService.updateProperty(t,"ems__Effort_plannedStartTimestamp",i);await this.vault.modify(e,s)}async shiftDayBackward(e){await this.shiftDay(e,-1)}async shiftDayForward(e){await this.shiftDay(e,1)}async markAsReviewed(e){await this.timestampService.addReviewTimestamp(e)}async rollbackStatus(e){let t=await this.vault.read(e),r=this.extractCurrentStatus(t),i=this.extractInstanceClass(t);if(!r)throw new Error("No current status to rollback from");let s=this.workflow.getPreviousStatus(r,i);if(s===void 0)throw new Error("Cannot rollback from current status");let a=t;s===null?a=this.frontmatterService.removeProperty(a,"ems__Effort_status"):a=this.frontmatterService.updateProperty(a,"ems__Effort_status",s);let c=this.workflow.normalizeStatus(r);c==="ems__EffortStatusDone"?(a=this.frontmatterService.removeProperty(a,"ems__Effort_endTimestamp"),a=this.frontmatterService.removeProperty(a,"ems__Effort_resolutionTimestamp")):c==="ems__EffortStatusDoing"&&(a=this.frontmatterService.removeProperty(a,"ems__Effort_startTimestamp")),await this.vault.modify(e,a)}async updateStatus(e,t){let r=await this.vault.read(e),i=this.frontmatterService.updateProperty(r,"ems__Effort_status",`"[[${t}]]"`);await this.vault.modify(e,i)}async shiftDay(e,t){let r=await this.vault.read(e),i=this.extractPlannedStartTimestamp(r);if(!i)throw new Error("ems__Effort_plannedStartTimestamp property not found");let s=this.parseDateFromTimestamp(i);if(!s)throw new Error("Invalid date format in ems__Effort_plannedStartTimestamp");let a=Uo.DateFormatter.addDays(s,t);a.setHours(0,0,0,0);let c=Uo.DateFormatter.toLocalTimestamp(a),l=this.frontmatterService.updateProperty(r,"ems__Effort_plannedStartTimestamp",c);await this.vault.modify(e,l)}parseDateFromTimestamp(e){let t=new Date(e);return isNaN(t.getTime())?null:t}extractPlannedStartTimestamp(e){let t=this.frontmatterService.parse(e);return t.exists?this.frontmatterService.getPropertyValue(t.content,"ems__Effort_plannedStartTimestamp"):null}extractCurrentStatus(e){let t=this.frontmatterService.parse(e);return t.exists?this.frontmatterService.getPropertyValue(t.content,"ems__Effort_status"):null}extractInstanceClass(e){let t=this.frontmatterService.parse(e);if(!t.exists)return null;let r=t.content.match(/exo__Instance_class:\s*\n((?:\s*-\s*.*\n?)+)/);return r?r[1].split(`
105
- `).filter(s=>s.trim()).map(s=>s.replace(/^\s*-\s*/,"").trim()):this.frontmatterService.getPropertyValue(t.content,"exo__Instance_class")}};Si.TaskStatusService=IS;Si.TaskStatusService=IS=g6([(0,Yx.injectable)(),_6(0,(0,Yx.inject)(w6.DI_TOKENS.IVaultAdapter)),y6("design:paramtypes",[Object,v6.EffortStatusWorkflow,b6.StatusTimestampService])],IS)});var OS=S(cm=>{"use strict";Object.defineProperty(cm,"__esModule",{value:!0});cm.MetadataExtractor=void 0;var E6=ms(),PS=class{static{o(this,"MetadataExtractor")}constructor(e){this.vault=e}extractMetadata(e){return e?this.vault.getFrontmatter(e)||{}:{}}extractInstanceClass(e){return e.exo__Instance_class||null}extractStatus(e){return e.ems__Effort_status||null}extractIsArchived(e){return E6.MetadataHelpers.isAssetArchived(e)}static extractIsDefinedBy(e){let t=e.exo__Asset_isDefinedBy||'""';return Array.isArray(t)&&(t=t[0]||'""'),String(t)}extractExpectedFolder(e){let t=e.exo__Asset_isDefinedBy;if(!t)return null;let r=Array.isArray(t)?t[0]:t;if(!r||typeof r!="string")return null;let i=r.replace(/["'[\]]/g,"").trim();if(!i)return null;let s=i.split("/");return s.pop(),s.join("/")}extractCommandVisibilityContext(e){let t=this.extractMetadata(e),r=this.extractInstanceClass(t),i=this.extractStatus(t),s=this.extractIsArchived(t),a=e.parent?.path||"",c=this.extractExpectedFolder(t);return{instanceClass:r,currentStatus:i,metadata:t,isArchived:s,currentFolder:a,expectedFolder:c}}extractCache(e){return e?this.vault.getFrontmatter(e):null}};cm.MetadataExtractor=PS});var DS=S(vi=>{"use strict";var T6=vi&&vi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},A6=vi&&vi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},x6=vi&&vi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(vi,"__esModule",{value:!0});vi.AreaCreationService=void 0;var Xx=fe(),Jx=Tn(),C6=Mn(),I6=Hr(),R6=OS(),Zx=ms(),P6=wt(),FS=class{static{o(this,"AreaCreationService")}constructor(e){this.vault=e}async createChildArea(e,t,r){let i=(0,Jx.v4)(),s=`${i}.md`,a=this.generateChildAreaFrontmatter(t,e.basename,r,i),c=Zx.MetadataHelpers.buildFileContent(a),l=e.parent?.path||"",u=l?`${l}/${s}`:s;return await this.vault.create(u,c)}generateChildAreaFrontmatter(e,t,r,i){let s=new Date,a=I6.DateFormatter.toLocalTimestamp(s),c=R6.MetadataExtractor.extractIsDefinedBy(e),l={};if(l.exo__Asset_isDefinedBy=Zx.MetadataHelpers.ensureQuoted(c),l.exo__Asset_uid=i||(0,Jx.v4)(),l.exo__Asset_createdAt=a,l.exo__Instance_class=[`"[[${C6.AssetClass.AREA}]]"`],l.ems__Area_parent=`"[[${t}]]"`,r&&r.trim()!==""){let u=r.trim();l.exo__Asset_label=u,l.aliases=[u]}return l}};vi.AreaCreationService=FS;vi.AreaCreationService=FS=T6([(0,Xx.injectable)(),x6(0,(0,Xx.inject)(P6.DI_TOKENS.IVaultAdapter)),A6("design:paramtypes",[Object])],FS)});var LS=S(bi=>{"use strict";var O6=bi&&bi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},F6=bi&&bi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},D6=bi&&bi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(bi,"__esModule",{value:!0});bi.AreaHierarchyBuilder=void 0;var e3=fe(),t3=Mn(),N6=wt(),lm=zs(),NS=class{static{o(this,"AreaHierarchyBuilder")}constructor(e){this.vault=e}buildHierarchy(e,t){let r=this.vault.getAbstractFileByPath(e);if(!this.isFile(r))return null;let i=this.vault.getFrontmatter(r)||{};if(this.extractInstanceClass(i)!==t3.AssetClass.AREA)return null;let a=this.collectAllAreasFromVault(),c=new Set;return this.buildTree(e,a,c,0)}isFile(e){return!!e&&typeof e=="object"&&"basename"in e&&"path"in e}extractInstanceClass(e){let t=e.exo__Instance_class||"";return Array.isArray(t)?lm.WikiLinkHelpers.normalize(String(t[0]||"")):lm.WikiLinkHelpers.normalize(String(t))}collectAllAreasFromVault(){let e=new Map,t=new Map,r=this.vault.getAllFiles();for(let i of r){let s=this.vault.getFrontmatter(i)||{};if(this.extractInstanceClass(s)===t3.AssetClass.AREA){let c=this.extractParentPath(s);e.set(i.path,{path:i.path,title:i.basename,label:s.exo__Asset_label||void 0,isArchived:this.isArchived(s),depth:0,parentPath:c||void 0}),t.set(i.basename,i.path)}}for(let[,i]of e.entries())i.parentPath&&t.has(i.parentPath)&&(i.parentPath=t.get(i.parentPath));return e}extractParentPath(e){let t=e.ems__Area_parent;if(!t)return null;if(Array.isArray(t)){let r=t[0]||"";return lm.WikiLinkHelpers.normalize(String(r))}return lm.WikiLinkHelpers.normalize(String(t))}isArchived(e){let t=e.exo__Asset_archived;if(t===!0||t==="true")return!0;if(Array.isArray(t)&&t.length>0){let r=t[0];return r===!0||r==="true"}return!1}buildTree(e,t,r,i){if(r.has(e))return null;r.add(e);let s=t.get(e);if(!s)return null;let a=[];for(let[c,l]of t.entries())if(l.parentPath===e){let u=this.buildTree(c,t,r,i+1);u&&a.push(u)}return a.sort((c,l)=>{let u=c.label||c.title,f=l.label||l.title;return u.localeCompare(f)}),{path:s.path,title:s.title,label:s.label,isArchived:s.isArchived,depth:i,parentPath:s.parentPath,children:a}}};bi.AreaHierarchyBuilder=NS;bi.AreaHierarchyBuilder=NS=O6([(0,e3.injectable)(),D6(0,(0,e3.inject)(N6.DI_TOKENS.IVaultAdapter)),F6("design:paramtypes",[Object])],NS)});var MS=S(wi=>{"use strict";var L6=wi&&wi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},k6=wi&&wi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},M6=wi&&wi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(wi,"__esModule",{value:!0});wi.ClassCreationService=void 0;var r3=fe(),j6=Tn(),$6=Hr(),B6=ms(),V6=wt(),kS=class{static{o(this,"ClassCreationService")}constructor(e){this.vault=e}async createSubclass(e,t,r){let i=(0,j6.v4)(),s=this.generateFileName(t),a=s.endsWith(".md")?s:`${s}.md`,c=this.generateClassFrontmatter(e.basename,t,i,r),l=B6.MetadataHelpers.buildFileContent(c),u="classes",f=`${u}/${a}`;return this.vault.getAbstractFileByPath(u)||await this.vault.createFolder(u),await this.vault.create(f,l)}generateFileName(e){let t=e.toLowerCase().replace(/[^a-z0-9]+/g,"-");for(;t.startsWith("-");)t=t.slice(1);for(;t.endsWith("-");)t=t.slice(0,-1);return t}generateClassFrontmatter(e,t,r,i){let s=new Date,a=$6.DateFormatter.toLocalTimestamp(s),c={};c.exo__Asset_uid=r,c.exo__Asset_label=t,c.exo__Asset_createdAt=a,c.exo__Instance_class=['"[[exo__Class]]"'],c.exo__Class_superClass=`"[[${e}]]"`;let l=i.exo__Asset_isDefinedBy||'"[[Ontology/EXO]]"';return c.exo__Asset_isDefinedBy=l,c.aliases=[t],c}};wi.ClassCreationService=kS;wi.ClassCreationService=kS=L6([(0,r3.injectable)(),M6(0,(0,r3.inject)(V6.DI_TOKENS.IVaultAdapter)),k6("design:paramtypes",[Object])],kS)});var $S=S(Ei=>{"use strict";var U6=Ei&&Ei.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},q6=Ei&&Ei.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},W6=Ei&&Ei.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Ei,"__esModule",{value:!0});Ei.ConceptCreationService=void 0;var n3=fe(),G6=Tn(),z6=Hr(),H6=ms(),Q6=Mn(),K6=wt(),jS=class{static{o(this,"ConceptCreationService")}constructor(e){this.vault=e}async createNarrowerConcept(e,t,r,i){let s=(0,G6.v4)(),a=t.endsWith(".md")?t:`${t}.md`,c=this.generateConceptFrontmatter(e.basename,r,i,s),l=H6.MetadataHelpers.buildFileContent(c),u="concepts",f=`${u}/${a}`;return this.vault.getAbstractFileByPath(u)||await this.vault.createFolder(u),await this.vault.create(f,l)}generateConceptFrontmatter(e,t,r,i){let s=new Date,a=z6.DateFormatter.toLocalTimestamp(s),c={};return c.exo__Asset_isDefinedBy='"[[!concepts]]"',c.exo__Asset_uid=i,c.exo__Asset_createdAt=a,c.exo__Instance_class=[`"[[${Q6.AssetClass.CONCEPT}]]"`],c.ims__Concept_broader=`"[[${e}]]"`,c.ims__Concept_definition=t,r.length>0&&(c.aliases=r),c}};Ei.ConceptCreationService=jS;Ei.ConceptCreationService=jS=U6([(0,n3.injectable)(),W6(0,(0,n3.inject)(K6.DI_TOKENS.IVaultAdapter)),q6("design:paramtypes",[Object])],jS)});var i3=S(ia=>{"use strict";var Y6=ia&&ia.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},X6=ia&&ia.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ia,"__esModule",{value:!0});ia.InstantiationRuleResolver=void 0;var J6=fe(),BS=Ae(),dl=Ne(),na=yr(),VS=class{static{o(this,"InstantiationRuleResolver")}constructor(e){this.tripleStore=e,this.cache=new Map}async getRule(e){let t=this.cache.get(e);if(t!==void 0)return t;let r=await this.findRuleForClass(e);return this.cache.set(e,r),r}invalidateCache(){this.cache.clear()}async findRuleForClass(e){let t=await this.tripleStore.match(void 0,na.Namespace.RDF.term("type"),na.Namespace.EXO.term("InstantiationRule"));for(let r of t){let i=r.subject;if((await this.tripleStore.match(i,na.Namespace.EXO.term("rule_targetClass"),void 0)).some(c=>this.matchesTargetClass(c.object,e)))return this.loadRule(i)}return null}async loadRule(e){let t=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_prototypeUID"),void 0),r=t.length>0&&t[0].object instanceof dl.Literal?t[0].object.value:null,i=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_defaultFolder"),void 0),s=i.length>0&&i[0].object instanceof dl.Literal?i[0].object.value:null,a=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_propertySetRules"),void 0),c=[];for(let l of a){let u=l.object;if(!(u instanceof BS.IRI))continue;let f=await this.loadPropertySetRule(u);f&&c.push(f)}return{prototypeUID:r,defaultFolder:s,propertySetRules:c}}async loadPropertySetRule(e){let t=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_property"),void 0);if(t.length===0)return null;let r=t[0].object,i=r instanceof BS.IRI?this.extractLocalName(r):r instanceof dl.Literal?this.normalizeWikilink(r.value):null;if(!i)return null;let s=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_value"),void 0),a=s.length>0&&s[0].object instanceof dl.Literal?s[0].object.value:"",c=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_valueType"),void 0),l=c.length>0&&c[0].object instanceof dl.Literal?c[0].object.value:"literal";return{property:i,value:a,valueType:l}}matchesTargetClass(e,t){return e instanceof BS.IRI?this.extractLocalName(e)===t:e instanceof dl.Literal?this.normalizeWikilink(e.value)===t:!1}extractLocalName(e){let t=e.value,r=t.lastIndexOf("#");if(r>=0){let s=t.substring(r+1);return t.includes("/ems#")?`ems__${s}`:t.includes("/exo#")?`exo__${s}`:t.includes("/ims#")?`ims__${s}`:s}let i=t.lastIndexOf("/");return i>=0?t.substring(i+1):t}normalizeWikilink(e){return e.replace(/["'[\]]/g,"").trim()}};ia.InstantiationRuleResolver=VS;ia.InstantiationRuleResolver=VS=Y6([(0,J6.injectable)(),X6("design:paramtypes",[Object])],VS)});var s3=S(sa=>{"use strict";var Z6=sa&&sa.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},e7=sa&&sa.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(sa,"__esModule",{value:!0});sa.VisibilityGenerator=void 0;var t7=fe(),r7=lf(),US=class{static{o(this,"VisibilityGenerator")}constructor(e){this.engine=e}getVisibleCommands(e){return this.engine.getAllTransitions(e).map(t=>this.toCommand(t))}getForwardCommands(e){return this.engine.getAvailableTransitions(e).map(t=>this.toCommand(t))}getRollbackCommands(e){return this.engine.getRollbackTransitions(e).map(t=>this.toCommand(t))}toCommand(e){let t=e.from.replace("ems__EffortStatus","").toLowerCase(),r=e.to.replace("ems__EffortStatus","").toLowerCase();return{commandId:`workflow-${t}-to-${r}`,label:e.label,icon:e.icon,targetStatus:e.to,isRollback:e.isRollback}}};sa.VisibilityGenerator=US;sa.VisibilityGenerator=US=Z6([(0,t7.injectable)(),e7("design:paramtypes",[r7.WorkflowEngine])],US)});var a3=S(aa=>{"use strict";var n7=aa&&aa.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},i7=aa&&aa.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(aa,"__esModule",{value:!0});aa.WorkflowCommandAdapter=void 0;var s7=fe(),qS=Tc(),a7=lf(),WS=class{static{o(this,"WorkflowCommandAdapter")}constructor(e){this.workflow=e,this.engine=new a7.WorkflowEngine(e)}adaptTransitions(e){return this.engine.getAllTransitions(e).map(r=>this.transitionToCommand(r))}adaptForwardTransitions(e){return this.engine.getAvailableTransitions(e).map(r=>this.transitionToCommand(r))}adaptRollbackTransitions(e){return this.engine.getRollbackTransitions(e).map(r=>this.transitionToCommand(r))}getEngine(){return this.engine}getWorkflow(){return this.workflow}transitionToCommand(e){let t=this.generateCommandId(e),r=this.buildPrecondition(e),i=this.buildGrounding(e),s=e.isRollback?"rollback":"workflow";return{id:t,name:e.label,icon:e.icon,precondition:r,grounding:i,category:s,confirmMessage:e.isRollback?`Rollback to ${this.shortStatus(e.to)}?`:void 0,successMessage:`Status changed to ${this.shortStatus(e.to)}`}}generateCommandId(e){let t=this.shortStatus(e.from),r=this.shortStatus(e.to);return`workflow-${t}-to-${r}`}buildPrecondition(e){return{id:`precond-${this.generateCommandId(e)}`,label:`Asset status is ${this.shortStatus(e.from)}`,sparqlAsk:`ASK { $target ems:Effort_status "${e.from}" }`}}buildGrounding(e){let t=[];t.push({id:`gnd-status-${this.shortStatus(e.to)}`,label:`Set status to ${this.shortStatus(e.to)}`,type:qS.GroundingType.PROPERTY_SET,targetProperty:"ems__Effort_status",targetValue:e.to});let r=this.engine.getTimestampsForStatus(e.to);for(let i of r)t.push({id:`gnd-ts-${i}`,label:`Set ${i}`,type:qS.GroundingType.PROPERTY_SET,targetProperty:i,targetValue:"$now"});return t.length===1?t[0]:{id:`gnd-composite-${this.generateCommandId(e)}`,label:`Transition to ${this.shortStatus(e.to)}`,type:qS.GroundingType.COMPOSITE,steps:t}}shortStatus(e){return e.replace("ems__EffortStatus","").toLowerCase()}};aa.WorkflowCommandAdapter=WS;aa.WorkflowCommandAdapter=WS=n7([(0,s7.injectable)(),i7("design:paramtypes",[Object])],WS)});var zS=S(Ti=>{"use strict";var o7=Ti&&Ti.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},c7=Ti&&Ti.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},l7=Ti&&Ti.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Ti,"__esModule",{value:!0});Ti.EffortVotingService=void 0;var o3=fe(),u7=wt(),GS=class{static{o(this,"EffortVotingService")}constructor(e){this.vault=e}async incrementEffortVotes(e){let t=await this.vault.read(e),i=this.extractVoteCount(t)+1,s=this.updateFrontmatterWithVotes(t,i);return await this.vault.modify(e,s),i}extractVoteCount(e){let t=/^---\r?\n([\s\S]*?)\r?\n---/,r=e.match(t);if(!r)return 0;let s=r[1].match(/ems__Effort_votes:\s*(\d+)/);return s&&s[1]?parseInt(s[1],10):0}updateFrontmatterWithVotes(e,t){let r=/^---\r?\n([\s\S]*?)\r?\n---/,i=e.match(r),s=e.includes(`\r
105
+ `).filter(s=>s.trim()).map(s=>s.replace(/^\s*-\s*/,"").trim()):this.frontmatterService.getPropertyValue(t.content,"exo__Instance_class")}};Si.TaskStatusService=IS;Si.TaskStatusService=IS=g6([(0,Yx.injectable)(),_6(0,(0,Yx.inject)(w6.DI_TOKENS.IVaultAdapter)),y6("design:paramtypes",[Object,v6.EffortStatusWorkflow,b6.StatusTimestampService])],IS)});var OS=S(cm=>{"use strict";Object.defineProperty(cm,"__esModule",{value:!0});cm.MetadataExtractor=void 0;var E6=ms(),PS=class{static{o(this,"MetadataExtractor")}constructor(e){this.vault=e}extractMetadata(e){return e?this.vault.getFrontmatter(e)||{}:{}}extractInstanceClass(e){return e.exo__Instance_class||null}extractStatus(e){return e.ems__Effort_status||null}extractIsArchived(e){return E6.MetadataHelpers.isAssetArchived(e)}static extractIsDefinedBy(e){let t=e.exo__Asset_isDefinedBy||'""';return Array.isArray(t)&&(t=t[0]||'""'),String(t)}extractExpectedFolder(e){let t=e.exo__Asset_isDefinedBy;if(!t)return null;let r=Array.isArray(t)?t[0]:t;if(!r||typeof r!="string")return null;let i=r.replace(/["'[\]]/g,"").trim();if(!i)return null;let s=i.split("/");return s.pop(),s.join("/")}extractCommandVisibilityContext(e){let t=this.extractMetadata(e),r=this.extractInstanceClass(t),i=this.extractStatus(t),s=this.extractIsArchived(t),a=e.parent?.path||"",c=this.extractExpectedFolder(t);return{instanceClass:r,currentStatus:i,metadata:t,isArchived:s,currentFolder:a,expectedFolder:c}}extractCache(e){return e?this.vault.getFrontmatter(e):null}};cm.MetadataExtractor=PS});var DS=S(vi=>{"use strict";var T6=vi&&vi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},A6=vi&&vi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},x6=vi&&vi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(vi,"__esModule",{value:!0});vi.AreaCreationService=void 0;var Xx=fe(),Jx=Tn(),C6=Mn(),I6=Qr(),R6=OS(),Zx=ms(),P6=wt(),FS=class{static{o(this,"AreaCreationService")}constructor(e){this.vault=e}async createChildArea(e,t,r){let i=(0,Jx.v4)(),s=`${i}.md`,a=this.generateChildAreaFrontmatter(t,e.basename,r,i),c=Zx.MetadataHelpers.buildFileContent(a),l=e.parent?.path||"",u=l?`${l}/${s}`:s;return await this.vault.create(u,c)}generateChildAreaFrontmatter(e,t,r,i){let s=new Date,a=I6.DateFormatter.toLocalTimestamp(s),c=R6.MetadataExtractor.extractIsDefinedBy(e),l={};if(l.exo__Asset_isDefinedBy=Zx.MetadataHelpers.ensureQuoted(c),l.exo__Asset_uid=i||(0,Jx.v4)(),l.exo__Asset_createdAt=a,l.exo__Instance_class=[`"[[${C6.AssetClass.AREA}]]"`],l.ems__Area_parent=`"[[${t}]]"`,r&&r.trim()!==""){let u=r.trim();l.exo__Asset_label=u,l.aliases=[u]}return l}};vi.AreaCreationService=FS;vi.AreaCreationService=FS=T6([(0,Xx.injectable)(),x6(0,(0,Xx.inject)(P6.DI_TOKENS.IVaultAdapter)),A6("design:paramtypes",[Object])],FS)});var LS=S(bi=>{"use strict";var O6=bi&&bi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},F6=bi&&bi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},D6=bi&&bi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(bi,"__esModule",{value:!0});bi.AreaHierarchyBuilder=void 0;var e3=fe(),t3=Mn(),N6=wt(),lm=zs(),NS=class{static{o(this,"AreaHierarchyBuilder")}constructor(e){this.vault=e}buildHierarchy(e,t){let r=this.vault.getAbstractFileByPath(e);if(!this.isFile(r))return null;let i=this.vault.getFrontmatter(r)||{};if(this.extractInstanceClass(i)!==t3.AssetClass.AREA)return null;let a=this.collectAllAreasFromVault(),c=new Set;return this.buildTree(e,a,c,0)}isFile(e){return!!e&&typeof e=="object"&&"basename"in e&&"path"in e}extractInstanceClass(e){let t=e.exo__Instance_class||"";return Array.isArray(t)?lm.WikiLinkHelpers.normalize(String(t[0]||"")):lm.WikiLinkHelpers.normalize(String(t))}collectAllAreasFromVault(){let e=new Map,t=new Map,r=this.vault.getAllFiles();for(let i of r){let s=this.vault.getFrontmatter(i)||{};if(this.extractInstanceClass(s)===t3.AssetClass.AREA){let c=this.extractParentPath(s);e.set(i.path,{path:i.path,title:i.basename,label:s.exo__Asset_label||void 0,isArchived:this.isArchived(s),depth:0,parentPath:c||void 0}),t.set(i.basename,i.path)}}for(let[,i]of e.entries())i.parentPath&&t.has(i.parentPath)&&(i.parentPath=t.get(i.parentPath));return e}extractParentPath(e){let t=e.ems__Area_parent;if(!t)return null;if(Array.isArray(t)){let r=t[0]||"";return lm.WikiLinkHelpers.normalize(String(r))}return lm.WikiLinkHelpers.normalize(String(t))}isArchived(e){let t=e.exo__Asset_archived;if(t===!0||t==="true")return!0;if(Array.isArray(t)&&t.length>0){let r=t[0];return r===!0||r==="true"}return!1}buildTree(e,t,r,i){if(r.has(e))return null;r.add(e);let s=t.get(e);if(!s)return null;let a=[];for(let[c,l]of t.entries())if(l.parentPath===e){let u=this.buildTree(c,t,r,i+1);u&&a.push(u)}return a.sort((c,l)=>{let u=c.label||c.title,f=l.label||l.title;return u.localeCompare(f)}),{path:s.path,title:s.title,label:s.label,isArchived:s.isArchived,depth:i,parentPath:s.parentPath,children:a}}};bi.AreaHierarchyBuilder=NS;bi.AreaHierarchyBuilder=NS=O6([(0,e3.injectable)(),D6(0,(0,e3.inject)(N6.DI_TOKENS.IVaultAdapter)),F6("design:paramtypes",[Object])],NS)});var MS=S(wi=>{"use strict";var L6=wi&&wi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},k6=wi&&wi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},M6=wi&&wi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(wi,"__esModule",{value:!0});wi.ClassCreationService=void 0;var r3=fe(),j6=Tn(),$6=Qr(),B6=ms(),V6=wt(),kS=class{static{o(this,"ClassCreationService")}constructor(e){this.vault=e}async createSubclass(e,t,r){let i=(0,j6.v4)(),s=this.generateFileName(t),a=s.endsWith(".md")?s:`${s}.md`,c=this.generateClassFrontmatter(e.basename,t,i,r),l=B6.MetadataHelpers.buildFileContent(c),u="classes",f=`${u}/${a}`;return this.vault.getAbstractFileByPath(u)||await this.vault.createFolder(u),await this.vault.create(f,l)}generateFileName(e){let t=e.toLowerCase().replace(/[^a-z0-9]+/g,"-");for(;t.startsWith("-");)t=t.slice(1);for(;t.endsWith("-");)t=t.slice(0,-1);return t}generateClassFrontmatter(e,t,r,i){let s=new Date,a=$6.DateFormatter.toLocalTimestamp(s),c={};c.exo__Asset_uid=r,c.exo__Asset_label=t,c.exo__Asset_createdAt=a,c.exo__Instance_class=['"[[exo__Class]]"'],c.exo__Class_superClass=`"[[${e}]]"`;let l=i.exo__Asset_isDefinedBy||'"[[Ontology/EXO]]"';return c.exo__Asset_isDefinedBy=l,c.aliases=[t],c}};wi.ClassCreationService=kS;wi.ClassCreationService=kS=L6([(0,r3.injectable)(),M6(0,(0,r3.inject)(V6.DI_TOKENS.IVaultAdapter)),k6("design:paramtypes",[Object])],kS)});var $S=S(Ei=>{"use strict";var U6=Ei&&Ei.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},q6=Ei&&Ei.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},W6=Ei&&Ei.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Ei,"__esModule",{value:!0});Ei.ConceptCreationService=void 0;var n3=fe(),G6=Tn(),z6=Qr(),H6=ms(),Q6=Mn(),K6=wt(),jS=class{static{o(this,"ConceptCreationService")}constructor(e){this.vault=e}async createNarrowerConcept(e,t,r,i){let s=(0,G6.v4)(),a=t.endsWith(".md")?t:`${t}.md`,c=this.generateConceptFrontmatter(e.basename,r,i,s),l=H6.MetadataHelpers.buildFileContent(c),u="concepts",f=`${u}/${a}`;return this.vault.getAbstractFileByPath(u)||await this.vault.createFolder(u),await this.vault.create(f,l)}generateConceptFrontmatter(e,t,r,i){let s=new Date,a=z6.DateFormatter.toLocalTimestamp(s),c={};return c.exo__Asset_isDefinedBy='"[[!concepts]]"',c.exo__Asset_uid=i,c.exo__Asset_createdAt=a,c.exo__Instance_class=[`"[[${Q6.AssetClass.CONCEPT}]]"`],c.ims__Concept_broader=`"[[${e}]]"`,c.ims__Concept_definition=t,r.length>0&&(c.aliases=r),c}};Ei.ConceptCreationService=jS;Ei.ConceptCreationService=jS=U6([(0,n3.injectable)(),W6(0,(0,n3.inject)(K6.DI_TOKENS.IVaultAdapter)),q6("design:paramtypes",[Object])],jS)});var i3=S(ia=>{"use strict";var Y6=ia&&ia.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},X6=ia&&ia.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ia,"__esModule",{value:!0});ia.InstantiationRuleResolver=void 0;var J6=fe(),BS=Ae(),dl=Ne(),na=yr(),VS=class{static{o(this,"InstantiationRuleResolver")}constructor(e){this.tripleStore=e,this.cache=new Map}async getRule(e){let t=this.cache.get(e);if(t!==void 0)return t;let r=await this.findRuleForClass(e);return this.cache.set(e,r),r}invalidateCache(){this.cache.clear()}async findRuleForClass(e){let t=await this.tripleStore.match(void 0,na.Namespace.RDF.term("type"),na.Namespace.EXO.term("InstantiationRule"));for(let r of t){let i=r.subject;if((await this.tripleStore.match(i,na.Namespace.EXO.term("rule_targetClass"),void 0)).some(c=>this.matchesTargetClass(c.object,e)))return this.loadRule(i)}return null}async loadRule(e){let t=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_prototypeUID"),void 0),r=t.length>0&&t[0].object instanceof dl.Literal?t[0].object.value:null,i=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_defaultFolder"),void 0),s=i.length>0&&i[0].object instanceof dl.Literal?i[0].object.value:null,a=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_propertySetRules"),void 0),c=[];for(let l of a){let u=l.object;if(!(u instanceof BS.IRI))continue;let f=await this.loadPropertySetRule(u);f&&c.push(f)}return{prototypeUID:r,defaultFolder:s,propertySetRules:c}}async loadPropertySetRule(e){let t=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_property"),void 0);if(t.length===0)return null;let r=t[0].object,i=r instanceof BS.IRI?this.extractLocalName(r):r instanceof dl.Literal?this.normalizeWikilink(r.value):null;if(!i)return null;let s=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_value"),void 0),a=s.length>0&&s[0].object instanceof dl.Literal?s[0].object.value:"",c=await this.tripleStore.match(e,na.Namespace.EXO.term("rule_valueType"),void 0),l=c.length>0&&c[0].object instanceof dl.Literal?c[0].object.value:"literal";return{property:i,value:a,valueType:l}}matchesTargetClass(e,t){return e instanceof BS.IRI?this.extractLocalName(e)===t:e instanceof dl.Literal?this.normalizeWikilink(e.value)===t:!1}extractLocalName(e){let t=e.value,r=t.lastIndexOf("#");if(r>=0){let s=t.substring(r+1);return t.includes("/ems#")?`ems__${s}`:t.includes("/exo#")?`exo__${s}`:t.includes("/ims#")?`ims__${s}`:s}let i=t.lastIndexOf("/");return i>=0?t.substring(i+1):t}normalizeWikilink(e){return e.replace(/["'[\]]/g,"").trim()}};ia.InstantiationRuleResolver=VS;ia.InstantiationRuleResolver=VS=Y6([(0,J6.injectable)(),X6("design:paramtypes",[Object])],VS)});var s3=S(sa=>{"use strict";var Z6=sa&&sa.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},e7=sa&&sa.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(sa,"__esModule",{value:!0});sa.VisibilityGenerator=void 0;var t7=fe(),r7=lf(),US=class{static{o(this,"VisibilityGenerator")}constructor(e){this.engine=e}getVisibleCommands(e){return this.engine.getAllTransitions(e).map(t=>this.toCommand(t))}getForwardCommands(e){return this.engine.getAvailableTransitions(e).map(t=>this.toCommand(t))}getRollbackCommands(e){return this.engine.getRollbackTransitions(e).map(t=>this.toCommand(t))}toCommand(e){let t=e.from.replace("ems__EffortStatus","").toLowerCase(),r=e.to.replace("ems__EffortStatus","").toLowerCase();return{commandId:`workflow-${t}-to-${r}`,label:e.label,icon:e.icon,targetStatus:e.to,isRollback:e.isRollback}}};sa.VisibilityGenerator=US;sa.VisibilityGenerator=US=Z6([(0,t7.injectable)(),e7("design:paramtypes",[r7.WorkflowEngine])],US)});var a3=S(aa=>{"use strict";var n7=aa&&aa.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},i7=aa&&aa.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(aa,"__esModule",{value:!0});aa.WorkflowCommandAdapter=void 0;var s7=fe(),qS=Tc(),a7=lf(),WS=class{static{o(this,"WorkflowCommandAdapter")}constructor(e){this.workflow=e,this.engine=new a7.WorkflowEngine(e)}adaptTransitions(e){return this.engine.getAllTransitions(e).map(r=>this.transitionToCommand(r))}adaptForwardTransitions(e){return this.engine.getAvailableTransitions(e).map(r=>this.transitionToCommand(r))}adaptRollbackTransitions(e){return this.engine.getRollbackTransitions(e).map(r=>this.transitionToCommand(r))}getEngine(){return this.engine}getWorkflow(){return this.workflow}transitionToCommand(e){let t=this.generateCommandId(e),r=this.buildPrecondition(e),i=this.buildGrounding(e),s=e.isRollback?"rollback":"workflow";return{id:t,name:e.label,icon:e.icon,precondition:r,grounding:i,category:s,confirmMessage:e.isRollback?`Rollback to ${this.shortStatus(e.to)}?`:void 0,successMessage:`Status changed to ${this.shortStatus(e.to)}`}}generateCommandId(e){let t=this.shortStatus(e.from),r=this.shortStatus(e.to);return`workflow-${t}-to-${r}`}buildPrecondition(e){return{id:`precond-${this.generateCommandId(e)}`,label:`Asset status is ${this.shortStatus(e.from)}`,sparqlAsk:`ASK { $target ems:Effort_status "${e.from}" }`}}buildGrounding(e){let t=[];t.push({id:`gnd-status-${this.shortStatus(e.to)}`,label:`Set status to ${this.shortStatus(e.to)}`,type:qS.GroundingType.PROPERTY_SET,targetProperty:"ems__Effort_status",targetValue:e.to});let r=this.engine.getTimestampsForStatus(e.to);for(let i of r)t.push({id:`gnd-ts-${i}`,label:`Set ${i}`,type:qS.GroundingType.PROPERTY_SET,targetProperty:i,targetValue:"$now"});return t.length===1?t[0]:{id:`gnd-composite-${this.generateCommandId(e)}`,label:`Transition to ${this.shortStatus(e.to)}`,type:qS.GroundingType.COMPOSITE,steps:t}}shortStatus(e){return e.replace("ems__EffortStatus","").toLowerCase()}};aa.WorkflowCommandAdapter=WS;aa.WorkflowCommandAdapter=WS=n7([(0,s7.injectable)(),i7("design:paramtypes",[Object])],WS)});var zS=S(Ti=>{"use strict";var o7=Ti&&Ti.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},c7=Ti&&Ti.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},l7=Ti&&Ti.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Ti,"__esModule",{value:!0});Ti.EffortVotingService=void 0;var o3=fe(),u7=wt(),GS=class{static{o(this,"EffortVotingService")}constructor(e){this.vault=e}async incrementEffortVotes(e){let t=await this.vault.read(e),i=this.extractVoteCount(t)+1,s=this.updateFrontmatterWithVotes(t,i);return await this.vault.modify(e,s),i}extractVoteCount(e){let t=/^---\r?\n([\s\S]*?)\r?\n---/,r=e.match(t);if(!r)return 0;let s=r[1].match(/ems__Effort_votes:\s*(\d+)/);return s&&s[1]?parseInt(s[1],10):0}updateFrontmatterWithVotes(e,t){let r=/^---\r?\n([\s\S]*?)\r?\n---/,i=e.match(r),s=e.includes(`\r
106
106
  `)?`\r
107
107
  `:`
108
108
  `;if(!i)return`---${s}ems__Effort_votes: ${t}${s}---${s}${e}`;let c=i[1];return c.includes("ems__Effort_votes:")?c=c.replace(/ems__Effort_votes:.*$/m,`ems__Effort_votes: ${t}`):c+=`${s}ems__Effort_votes: ${t}`,e.replace(r,`---${s}${c}${s}---`)}};Ti.EffortVotingService=GS;Ti.EffortVotingService=GS=o7([(0,o3.injectable)(),l7(0,(0,o3.inject)(u7.DI_TOKENS.IVaultAdapter)),c7("design:paramtypes",[Object])],GS)});var QS=S(Ai=>{"use strict";var f7=Ai&&Ai.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},d7=Ai&&Ai.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},h7=Ai&&Ai.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Ai,"__esModule",{value:!0});Ai.FolderRepairService=void 0;var c3=fe(),p7=wt(),HS=class{static{o(this,"FolderRepairService")}constructor(e){this.vault=e}async getExpectedFolder(e,t){let r=t?.exo__Asset_isDefinedBy;if(!r)return null;let i=this.extractReference(r);if(!i)return null;let s=this.vault.getFirstLinkpathDest(i,e.path);return s?this.getFileFolder(s):null}async repairFolder(e,t){let r=`${t}/${e.name}`;if(this.vault.getAbstractFileByPath(r))throw new Error(`Cannot move file: ${r} already exists`);await this.ensureFolderExists(t),await this.vault.rename(e,r)}getFileFolder(e){return e.parent?.path||""}extractReference(e){if(typeof e!="string")return null;let t=e.trim().replace(/^["']|["']$/g,"");return t=t.replace(/^\[\[|\]\]$/g,""),t||null}async ensureFolderExists(e){if(!e)return;let t=this.vault.getAbstractFileByPath(e);if(!(t&&"children"in t))try{await this.vault.createFolder(e)}catch(r){if(r instanceof Error&&r.message.includes("Folder already exists"))return;throw r}}};Ai.FolderRepairService=HS;Ai.FolderRepairService=HS=f7([(0,c3.injectable)(),h7(0,(0,c3.inject)(p7.DI_TOKENS.IVaultAdapter)),d7("design:paramtypes",[Object])],HS)});var YS=S(xi=>{"use strict";var m7=xi&&xi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},g7=xi&&xi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},y7=xi&&xi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(xi,"__esModule",{value:!0});xi.LabelToAliasService=void 0;var l3=fe(),_7=wt(),KS=class{static{o(this,"LabelToAliasService")}constructor(e){this.vault=e}async copyLabelToAliases(e){let t=await this.vault.read(e),r=this.extractLabel(t);if(!r)throw new Error("No exo__Asset_label found in file");let i=this.addLabelToAliases(t,r);await this.vault.modify(e,i)}extractLabel(e){let t=/^---\r?\n([\s\S]*?)\r?\n---/,r=e.match(t);if(!r)return null;let s=r[1].match(/exo__Asset_label:\s*["']?([^"'\r\n]+)["']?/);return s&&s[1]?s[1].trim():null}addLabelToAliases(e,t){let r=/^---\r?\n([\s\S]*?)\r?\n---/,i=e.match(r),s=e.includes(`\r
@@ -122,7 +122,7 @@ aliases:
122
122
  - ${t}
123
123
  `;return e.replace(s[1],d)}let a=/^aliases\s*:\s*\[([^\]]*)\]/m,c=e.match(a);if(c){let u=c[1].trim();return u===""?e.replace(a,`aliases:
124
124
  - ${t}`):u.split(",").map(d=>d.trim().replace(/^["']|["']$/g,"")).includes(t)?e:e.replace(a,`aliases: [${u}, ${t}]`)}let l=/^aliases\s*:\s*(?:null|~)?\s*$/m;return e.replace(l,`aliases:
125
- - ${t}`)}isAssetArchived(e){if(e?.exo__Asset_isArchived===!0)return!0;let t=e?.archived;if(t==null)return!1;if(typeof t=="boolean")return t;if(typeof t=="number")return t!==0;if(typeof t=="string"){let r=t.toLowerCase().trim();return r==="true"||r==="yes"||r==="1"}return!1}};Ii.RenameToUidService=ev;Ii.RenameToUidService=ev=w7([(0,d3.injectable)(),T7(0,(0,d3.inject)(A7.DI_TOKENS.IVaultAdapter)),E7("design:paramtypes",[Object])],ev)});var iv=S(Ri=>{"use strict";var x7=Ri&&Ri.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},C7=Ri&&Ri.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},h3=Ri&&Ri.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Ri,"__esModule",{value:!0});Ri.SupervisionCreationService=void 0;var rv=fe(),I7=Tn(),R7=Hr(),p3=wt(),nv=class{static{o(this,"SupervisionCreationService")}constructor(e,t){this.vault=e,this.vaultSettings=t}async createSupervision(e){let t=(0,I7.v4)(),r=`${t}.md`,i=this.generateFrontmatter(t),s=this.generateBody(e),a=this.buildFileContent(i,s),c=this.vaultSettings.getDefaultInboxFolder(),l=`${c}/${r}`;return await this.ensureFolderExists(c),await this.vault.create(l,a)}async ensureFolderExists(e){await this.vault.exists(e)||await this.vault.createFolder(e)}generateFrontmatter(e){let t=new Date,r=R7.DateFormatter.toLocalTimestamp(t);return{exo__Asset_isDefinedBy:this.vaultSettings.getOwnerIdentity(),exo__Asset_uid:e,exo__Asset_createdAt:r,exo__Instance_class:[`"[[${this.vaultSettings.getFleetingNoteClassUID()}]]"`],ztlk__FleetingNote_type:'"[[CBT-Diary Record]]"'}}generateBody(e){return[{label:"\u0421\u0438\u0442\u0443\u0430\u0446\u0438\u044F/\u0442\u0440\u0438\u0433\u0433\u0435\u0440",value:e.situation},{label:"\u042D\u043C\u043E\u0446\u0438\u0438",value:e.emotions},{label:"\u041C\u044B\u0441\u043B\u0438",value:e.thoughts},{label:"\u041F\u043E\u0432\u0435\u0434\u0435\u043D\u0438\u0435",value:e.behavior},{label:"\u041A\u0440\u0430\u0442\u043A\u043E\u0441\u0440\u043E\u0447\u043D\u044B\u0435 \u043F\u043E\u0441\u043B\u0435\u0434\u0441\u0442\u0432\u0438\u044F \u043F\u043E\u0432\u0435\u0434\u0435\u043D\u0438\u044F",value:e.shortTermConsequences},{label:"\u0414\u043E\u043B\u0433\u043E\u0441\u0440\u043E\u0447\u043D\u044B\u0435 \u043F\u043E\u0441\u043B\u0435\u0434\u0441\u0442\u0432\u0438\u044F \u043F\u043E\u0432\u0435\u0434\u0435\u043D\u0438\u044F",value:e.longTermConsequences}].map(r=>`- ${r.label}: ${r.value}`).join(`
125
+ - ${t}`)}isAssetArchived(e){if(e?.exo__Asset_isArchived===!0)return!0;let t=e?.archived;if(t==null)return!1;if(typeof t=="boolean")return t;if(typeof t=="number")return t!==0;if(typeof t=="string"){let r=t.toLowerCase().trim();return r==="true"||r==="yes"||r==="1"}return!1}};Ii.RenameToUidService=ev;Ii.RenameToUidService=ev=w7([(0,d3.injectable)(),T7(0,(0,d3.inject)(A7.DI_TOKENS.IVaultAdapter)),E7("design:paramtypes",[Object])],ev)});var iv=S(Ri=>{"use strict";var x7=Ri&&Ri.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},C7=Ri&&Ri.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},h3=Ri&&Ri.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Ri,"__esModule",{value:!0});Ri.SupervisionCreationService=void 0;var rv=fe(),I7=Tn(),R7=Qr(),p3=wt(),nv=class{static{o(this,"SupervisionCreationService")}constructor(e,t){this.vault=e,this.vaultSettings=t}async createSupervision(e){let t=(0,I7.v4)(),r=`${t}.md`,i=this.generateFrontmatter(t),s=this.generateBody(e),a=this.buildFileContent(i,s),c=this.vaultSettings.getDefaultInboxFolder(),l=`${c}/${r}`;return await this.ensureFolderExists(c),await this.vault.create(l,a)}async ensureFolderExists(e){await this.vault.exists(e)||await this.vault.createFolder(e)}generateFrontmatter(e){let t=new Date,r=R7.DateFormatter.toLocalTimestamp(t);return{exo__Asset_isDefinedBy:this.vaultSettings.getOwnerIdentity(),exo__Asset_uid:e,exo__Asset_createdAt:r,exo__Instance_class:[`"[[${this.vaultSettings.getFleetingNoteClassUID()}]]"`],ztlk__FleetingNote_type:'"[[CBT-Diary Record]]"'}}generateBody(e){return[{label:"\u0421\u0438\u0442\u0443\u0430\u0446\u0438\u044F/\u0442\u0440\u0438\u0433\u0433\u0435\u0440",value:e.situation},{label:"\u042D\u043C\u043E\u0446\u0438\u0438",value:e.emotions},{label:"\u041C\u044B\u0441\u043B\u0438",value:e.thoughts},{label:"\u041F\u043E\u0432\u0435\u0434\u0435\u043D\u0438\u0435",value:e.behavior},{label:"\u041A\u0440\u0430\u0442\u043A\u043E\u0441\u0440\u043E\u0447\u043D\u044B\u0435 \u043F\u043E\u0441\u043B\u0435\u0434\u0441\u0442\u0432\u0438\u044F \u043F\u043E\u0432\u0435\u0434\u0435\u043D\u0438\u044F",value:e.shortTermConsequences},{label:"\u0414\u043E\u043B\u0433\u043E\u0441\u0440\u043E\u0447\u043D\u044B\u0435 \u043F\u043E\u0441\u043B\u0435\u0434\u0441\u0442\u0432\u0438\u044F \u043F\u043E\u0432\u0435\u0434\u0435\u043D\u0438\u044F",value:e.longTermConsequences}].map(r=>`- ${r.label}: ${r.value}`).join(`
126
126
  `)}buildFileContent(e,t){return`---
127
127
  ${Object.entries(e).map(([i,s])=>{if(Array.isArray(s)){let a=s.map(c=>` - ${c}`).join(`
128
128
  `);return`${i}:
@@ -131,14 +131,14 @@ ${a}`}return`${i}: ${String(s)}`}).join(`
131
131
  ---
132
132
 
133
133
  ${t}
134
- `}};Ri.SupervisionCreationService=nv;Ri.SupervisionCreationService=nv=x7([(0,rv.injectable)(),h3(0,(0,rv.inject)(p3.DI_TOKENS.IVaultAdapter)),h3(1,(0,rv.inject)(p3.DI_TOKENS.IVaultSettings)),C7("design:paramtypes",[Object,Object])],nv)});var ov=S(Pi=>{"use strict";var P7=Pi&&Pi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},O7=Pi&&Pi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},m3=Pi&&Pi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Pi,"__esModule",{value:!0});Pi.FleetingNoteCreationService=void 0;var sv=fe(),F7=Tn(),D7=Hr(),N7=ms(),g3=wt(),av=class{static{o(this,"FleetingNoteCreationService")}constructor(e,t){this.vault=e,this.vaultSettings=t}async createFleetingNote(e){let t=(0,F7.v4)(),r=`${t}.md`,i=this.generateFrontmatter(t,e),s=N7.MetadataHelpers.buildFileContent(i),a=this.vaultSettings.getDefaultInboxFolder(),c=`${a}/${r}`;return await this.ensureFolderExists(a),await this.vault.create(c,s)}async ensureFolderExists(e){await this.vault.exists(e)||await this.vault.createFolder(e)}generateFrontmatter(e,t){let r=new Date,i=D7.DateFormatter.toLocalTimestamp(r),s=t.trim();return{exo__Asset_isDefinedBy:this.vaultSettings.getOwnerIdentity(),exo__Asset_uid:e,exo__Asset_createdAt:i,exo__Instance_class:[`"[[${this.vaultSettings.getFleetingNoteClassUID()}]]"`],exo__Asset_label:s,aliases:[s]}}};Pi.FleetingNoteCreationService=av;Pi.FleetingNoteCreationService=av=P7([(0,sv.injectable)(),m3(0,(0,sv.inject)(g3.DI_TOKENS.IVaultAdapter)),m3(1,(0,sv.inject)(g3.DI_TOKENS.IVaultSettings)),O7("design:paramtypes",[Object,Object])],av)});var lv=S(qo=>{"use strict";var L7=qo&&qo.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s};Object.defineProperty(qo,"__esModule",{value:!0});qo.DynamicFrontmatterGenerator=void 0;var k7=fe(),M7=Tn(),df=Hr(),cv=class{static{o(this,"DynamicFrontmatterGenerator")}generate(e,t,r,i){let s={},a=new Date;i?.isDefinedBy&&(s.exo__Asset_isDefinedBy=this.ensureQuoted(i.isDefinedBy)),s.exo__Asset_uid=i?.uid||(0,M7.v4)(),s.exo__Asset_createdAt=i?.createdAt||df.DateFormatter.toLocalTimestamp(a),s.exo__Instance_class=[this.formatWikilink(e)];let c=new Map;for(let u of r)c.set(u.name,u.type);for(let[u,f]of Object.entries(t)){if(f==null||u==="exo__Asset_uid"||u==="exo__Asset_createdAt"||u==="exo__Instance_class"||u==="exo__Asset_isDefinedBy")continue;let d=c.get(u);s[u]=this.formatValue(f,d)}let l=t.exo__Asset_label;if(l&&typeof l=="string"&&l.trim()!==""){let u=l.trim();s.exo__Asset_label=u,s.aliases=[u]}return s}formatValue(e,t){if(e==null)return null;if(!t)return this.formatInferredValue(e);switch(t){case"text":return this.formatText(e);case"wikilink":return this.formatWikilink(e);case"status-select":case"size-select":return this.formatWikilink(e);case"number":return this.formatNumber(e);case"boolean":return this.formatBoolean(e);case"timestamp":return this.formatTimestamp(e);default:return this.formatText(e)}}formatText(e){return typeof e=="string"?e:String(e)}formatWikilink(e){let t=String(e);return t.startsWith('"[[')&&t.endsWith(']]"')?t:t.startsWith("[[")&&t.endsWith("]]")?`"${t}"`:`"[[${t}]]"`}formatNumber(e){if(typeof e=="number")return e;let t=Number(e);return isNaN(t)?0:t}formatBoolean(e){if(typeof e=="boolean")return e;if(typeof e=="string"){let t=e.toLowerCase().trim();return t==="true"||t==="yes"||t==="1"}return typeof e=="number"?e!==0:!!e}formatTimestamp(e){if(e instanceof Date)return df.DateFormatter.toLocalTimestamp(e);if(typeof e=="string"){if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$/.test(e))return e;if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/.test(e))return e.replace("Z","");let t=new Date(e);return isNaN(t.getTime())?e:df.DateFormatter.toLocalTimestamp(t)}if(typeof e=="number"){let t=new Date(e);if(!isNaN(t.getTime()))return df.DateFormatter.toLocalTimestamp(t)}return String(e)}formatInferredValue(e){return typeof e=="boolean"||typeof e=="number"?e:e instanceof Date?df.DateFormatter.toLocalTimestamp(e):typeof e=="string"?e.startsWith("[[")||e.startsWith('"[[')?this.formatWikilink(e):e:String(e)}ensureQuoted(e){return!e||e==='""'?'""':e.startsWith('"')&&e.endsWith('"')?e:`"${e}"`}generateYAML(e,t,r,i){let s=this.generate(e,t,r,i);return this.toYAML(s)}toYAML(e){return`---
134
+ `}};Ri.SupervisionCreationService=nv;Ri.SupervisionCreationService=nv=x7([(0,rv.injectable)(),h3(0,(0,rv.inject)(p3.DI_TOKENS.IVaultAdapter)),h3(1,(0,rv.inject)(p3.DI_TOKENS.IVaultSettings)),C7("design:paramtypes",[Object,Object])],nv)});var ov=S(Pi=>{"use strict";var P7=Pi&&Pi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},O7=Pi&&Pi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},m3=Pi&&Pi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Pi,"__esModule",{value:!0});Pi.FleetingNoteCreationService=void 0;var sv=fe(),F7=Tn(),D7=Qr(),N7=ms(),g3=wt(),av=class{static{o(this,"FleetingNoteCreationService")}constructor(e,t){this.vault=e,this.vaultSettings=t}async createFleetingNote(e){let t=(0,F7.v4)(),r=`${t}.md`,i=this.generateFrontmatter(t,e),s=N7.MetadataHelpers.buildFileContent(i),a=this.vaultSettings.getDefaultInboxFolder(),c=`${a}/${r}`;return await this.ensureFolderExists(a),await this.vault.create(c,s)}async ensureFolderExists(e){await this.vault.exists(e)||await this.vault.createFolder(e)}generateFrontmatter(e,t){let r=new Date,i=D7.DateFormatter.toLocalTimestamp(r),s=t.trim();return{exo__Asset_isDefinedBy:this.vaultSettings.getOwnerIdentity(),exo__Asset_uid:e,exo__Asset_createdAt:i,exo__Instance_class:[`"[[${this.vaultSettings.getFleetingNoteClassUID()}]]"`],exo__Asset_label:s,aliases:[s]}}};Pi.FleetingNoteCreationService=av;Pi.FleetingNoteCreationService=av=P7([(0,sv.injectable)(),m3(0,(0,sv.inject)(g3.DI_TOKENS.IVaultAdapter)),m3(1,(0,sv.inject)(g3.DI_TOKENS.IVaultSettings)),O7("design:paramtypes",[Object,Object])],av)});var lv=S(qo=>{"use strict";var L7=qo&&qo.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s};Object.defineProperty(qo,"__esModule",{value:!0});qo.DynamicFrontmatterGenerator=void 0;var k7=fe(),M7=Tn(),df=Qr(),cv=class{static{o(this,"DynamicFrontmatterGenerator")}generate(e,t,r,i){let s={},a=new Date;i?.isDefinedBy&&(s.exo__Asset_isDefinedBy=this.ensureQuoted(i.isDefinedBy)),s.exo__Asset_uid=i?.uid||(0,M7.v4)(),s.exo__Asset_createdAt=i?.createdAt||df.DateFormatter.toLocalTimestamp(a),s.exo__Instance_class=[this.formatWikilink(e)];let c=new Map;for(let u of r)c.set(u.name,u.type);for(let[u,f]of Object.entries(t)){if(f==null||u==="exo__Asset_uid"||u==="exo__Asset_createdAt"||u==="exo__Instance_class"||u==="exo__Asset_isDefinedBy")continue;let d=c.get(u);s[u]=this.formatValue(f,d)}let l=t.exo__Asset_label;if(l&&typeof l=="string"&&l.trim()!==""){let u=l.trim();s.exo__Asset_label=u,s.aliases=[u]}return s}formatValue(e,t){if(e==null)return null;if(!t)return this.formatInferredValue(e);switch(t){case"text":return this.formatText(e);case"wikilink":return this.formatWikilink(e);case"status-select":case"size-select":return this.formatWikilink(e);case"number":return this.formatNumber(e);case"boolean":return this.formatBoolean(e);case"timestamp":return this.formatTimestamp(e);default:return this.formatText(e)}}formatText(e){return typeof e=="string"?e:String(e)}formatWikilink(e){let t=String(e);return t.startsWith('"[[')&&t.endsWith(']]"')?t:t.startsWith("[[")&&t.endsWith("]]")?`"${t}"`:`"[[${t}]]"`}formatNumber(e){if(typeof e=="number")return e;let t=Number(e);return isNaN(t)?0:t}formatBoolean(e){if(typeof e=="boolean")return e;if(typeof e=="string"){let t=e.toLowerCase().trim();return t==="true"||t==="yes"||t==="1"}return typeof e=="number"?e!==0:!!e}formatTimestamp(e){if(e instanceof Date)return df.DateFormatter.toLocalTimestamp(e);if(typeof e=="string"){if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$/.test(e))return e;if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/.test(e))return e.replace("Z","");let t=new Date(e);return isNaN(t.getTime())?e:df.DateFormatter.toLocalTimestamp(t)}if(typeof e=="number"){let t=new Date(e);if(!isNaN(t.getTime()))return df.DateFormatter.toLocalTimestamp(t)}return String(e)}formatInferredValue(e){return typeof e=="boolean"||typeof e=="number"?e:e instanceof Date?df.DateFormatter.toLocalTimestamp(e):typeof e=="string"?e.startsWith("[[")||e.startsWith('"[[')?this.formatWikilink(e):e:String(e)}ensureQuoted(e){return!e||e==='""'?'""':e.startsWith('"')&&e.endsWith('"')?e:`"${e}"`}generateYAML(e,t,r,i){let s=this.generate(e,t,r,i);return this.toYAML(s)}toYAML(e){return`---
135
135
  ${Object.entries(e).map(([r,i])=>{if(Array.isArray(i)){let s=i.map(a=>` - ${a}`).join(`
136
136
  `);return`${r}:
137
137
  ${s}`}return`${r}: ${i}`}).join(`
138
138
  `)}
139
139
  ---`}};qo.DynamicFrontmatterGenerator=cv;qo.DynamicFrontmatterGenerator=cv=L7([(0,k7.injectable)()],cv)});var fv=S(Wo=>{"use strict";var j7=Wo&&Wo.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s};Object.defineProperty(Wo,"__esModule",{value:!0});Wo.AlgorithmExtractor=void 0;var $7=fe(),uv=class{static{o(this,"AlgorithmExtractor")}extractH2Section(e,t){let r=e.split(`
140
140
  `),i=`## ${t}`,s=!1,a=[];for(let l of r){if(l.trim()===i){s=!0;continue}if(s){if(l.startsWith("## ")||l.startsWith("# "))break;a.push(l)}}return a.length===0?null:a.join(`
141
- `).trim()||null}};Wo.AlgorithmExtractor=uv;Wo.AlgorithmExtractor=uv=j7([(0,$7.injectable)()],uv)});var hv=S(Oi=>{"use strict";var B7=Oi&&Oi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},V7=Oi&&Oi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},U7=Oi&&Oi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Oi,"__esModule",{value:!0});Oi.PlanningService=void 0;var y3=fe(),q7=ei(),W7=Hr(),G7=wt(),dv=class{static{o(this,"PlanningService")}constructor(e){this.vault=e,this.frontmatterService=new q7.FrontmatterService}async planOnToday(e){let t=this.vault.getAbstractFileByPath(e);if(!t||!this.isFile(t))throw new Error(`File not found: ${e}`);let r=await this.vault.read(t),i=W7.DateFormatter.getTodayStartTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_plannedStartTimestamp",i);await this.vault.modify(t,s)}isFile(e){return typeof e=="object"&&e!==null&&"basename"in e}};Oi.PlanningService=dv;Oi.PlanningService=dv=B7([(0,y3.injectable)(),U7(0,(0,y3.inject)(G7.DI_TOKENS.IVaultAdapter)),V7("design:paramtypes",[Object])],dv)});var S3=S(oa=>{"use strict";var z7=oa&&oa.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},H7=oa&&oa.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(oa,"__esModule",{value:!0});oa.PropertySchemaResolver=void 0;var Q7=fe(),_3=Ch(),K7=a_(),pv=class{static{o(this,"PropertySchemaResolver")}constructor(e,t){this.sparqlService=e,this.logger=t,this.cache=new Map,this.allSchemasLoaded=!1}async getSchema(e){let t=this.normalizeIRI(e),r=this.cache.get(t);if(r)return r;try{let i=await this.loadSchemaFromStore(t);return i&&this.cache.set(t,i),i}catch(i){return this.logger?.warn(`Failed to load schema for ${e}`,{error:String(i)}),null}}async getAllSchemas(){if(this.allSchemasLoaded)return new Map(this.cache);try{let e=await this.loadAllSchemasFromStore();for(let[t,r]of e)this.cache.set(t,r);return this.allSchemasLoaded=!0,new Map(this.cache)}catch(e){return this.logger?.warn("Failed to load all schemas",{error:String(e)}),new Map(this.cache)}}invalidateCache(){this.cache.clear(),this.allSchemasLoaded=!1}async loadSchemaFromStore(e){let t=this.toFullIRI(e),r=`
141
+ `).trim()||null}};Wo.AlgorithmExtractor=uv;Wo.AlgorithmExtractor=uv=j7([(0,$7.injectable)()],uv)});var hv=S(Oi=>{"use strict";var B7=Oi&&Oi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},V7=Oi&&Oi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},U7=Oi&&Oi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Oi,"__esModule",{value:!0});Oi.PlanningService=void 0;var y3=fe(),q7=ei(),W7=Qr(),G7=wt(),dv=class{static{o(this,"PlanningService")}constructor(e){this.vault=e,this.frontmatterService=new q7.FrontmatterService}async planOnToday(e){let t=this.vault.getAbstractFileByPath(e);if(!t||!this.isFile(t))throw new Error(`File not found: ${e}`);let r=await this.vault.read(t),i=W7.DateFormatter.getTodayStartTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_plannedStartTimestamp",i);await this.vault.modify(t,s)}isFile(e){return typeof e=="object"&&e!==null&&"basename"in e}};Oi.PlanningService=dv;Oi.PlanningService=dv=B7([(0,y3.injectable)(),U7(0,(0,y3.inject)(G7.DI_TOKENS.IVaultAdapter)),V7("design:paramtypes",[Object])],dv)});var S3=S(oa=>{"use strict";var z7=oa&&oa.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},H7=oa&&oa.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(oa,"__esModule",{value:!0});oa.PropertySchemaResolver=void 0;var Q7=fe(),_3=Ch(),K7=a_(),pv=class{static{o(this,"PropertySchemaResolver")}constructor(e,t){this.sparqlService=e,this.logger=t,this.cache=new Map,this.allSchemasLoaded=!1}async getSchema(e){let t=this.normalizeIRI(e),r=this.cache.get(t);if(r)return r;try{let i=await this.loadSchemaFromStore(t);return i&&this.cache.set(t,i),i}catch(i){return this.logger?.warn(`Failed to load schema for ${e}`,{error:String(i)}),null}}async getAllSchemas(){if(this.allSchemasLoaded)return new Map(this.cache);try{let e=await this.loadAllSchemasFromStore();for(let[t,r]of e)this.cache.set(t,r);return this.allSchemasLoaded=!0,new Map(this.cache)}catch(e){return this.logger?.warn("Failed to load all schemas",{error:String(e)}),new Map(this.cache)}}invalidateCache(){this.cache.clear(),this.allSchemasLoaded=!1}async loadSchemaFromStore(e){let t=this.toFullIRI(e),r=`
142
142
  PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
143
143
  PREFIX owl: <http://www.w3.org/2002/07/owl#>
144
144
  PREFIX exo: <https://exocortex.my/ontology/exo#>
@@ -214,7 +214,7 @@ ${s}`}return`${r}: ${i}`}).join(`
214
214
  `,a=await this.sparqlService.query(s);return this.buildEnumValues(a)}buildEnumValues(e){let t=[],r=new Set;for(let i of e){let s=this.getBindingValue(i,"instance");if(!s||r.has(s))continue;r.add(s);let a=this.getBindingValue(i,"label")??s,l=`[[${this.fromFullIRI(s)}]]`;t.push({value:l,label:a})}return t}buildRankProperty(e){let t=e.match(/^([a-z]+)__(.+)$/);if(!t)return null;let[,r,i]=t;return`${r}__${i}_rank`}normalizeClassName(e){return e.replace(/\[\[|\]\]/g,"").trim()}getBindingValue(e,t){let r=e.get(t);if(r!=null)return String(r)}toFullIRI(e){if(e.startsWith("http://")||e.startsWith("https://"))return e;let t=e.match(/^([a-z]+)__(.+)$/);if(t){let[,r,i]=t;return`https://exocortex.my/ontology/${r}#${i}`}return e}fromFullIRI(e){let t=e.match(/https:\/\/exocortex\.my\/ontology\/([a-z]+)#(.+)$/);if(t){let[,r,i]=t;return`${r}__${i}`}return e}};la.EnumValueResolver=gv;la.EnumValueResolver=gv=Z7([(0,t8.injectable)(),e8("design:paramtypes",[Object,Object])],gv)});var _v=S(Fi=>{"use strict";var r8=Fi&&Fi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},n8=Fi&&Fi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},i8=Fi&&Fi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Fi,"__esModule",{value:!0});Fi.AssetConversionService=void 0;var w3=fe(),E3=Mn(),s8=ei(),um=$a(),a8=wt(),yv=class{static{o(this,"AssetConversionService")}constructor(e){this.vault=e,this.frontmatterService=new s8.FrontmatterService}async convertTaskToProject(e){try{let t=await this.vault.read(e),r=this.removeInstanceClassProperty(t);return r=this.frontmatterService.updateProperty(r,"exo__Instance_class",`["[[${E3.AssetClass.PROJECT}]]"]`),await this.vault.modify(e,r),um.LoggingService.info(`Converted Task to Project: ${e.basename} (${e.path})`),e}catch(t){let r=`Failed to convert Task to Project: ${e.path}`;throw um.LoggingService.error(r,t instanceof Error?t:void 0),new Error(r)}}async convertProjectToTask(e){try{let t=await this.vault.read(e),r=this.removeInstanceClassProperty(t);return r=this.frontmatterService.updateProperty(r,"exo__Instance_class",`["[[${E3.AssetClass.TASK}]]"]`),await this.vault.modify(e,r),um.LoggingService.info(`Converted Project to Task: ${e.basename} (${e.path})`),e}catch(t){let r=`Failed to convert Project to Task: ${e.path}`;throw um.LoggingService.error(r,t instanceof Error?t:void 0),new Error(r)}}removeInstanceClassProperty(e){let t=this.frontmatterService.parse(e);if(!t.exists)return e;let r=/^exo__Instance_class:.*$(\n -.*$)*/gm,i=t.content.replace(r,"").replace(/\n\n+/g,`
215
215
  `).trim();return e.replace(/^---\n[\s\S]*?\n---/,`---
216
216
  ${i}
217
- ---`)}};Fi.AssetConversionService=yv;Fi.AssetConversionService=yv=r8([(0,w3.injectable)(),i8(0,(0,w3.inject)(a8.DI_TOKENS.IVaultAdapter)),n8("design:paramtypes",[Object])],yv)});var bv=S(Di=>{"use strict";var o8=Di&&Di.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},c8=Di&&Di.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},T3=Di&&Di.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Di,"__esModule",{value:!0});Di.SessionEventService=void 0;var Sv=fe(),l8=Tn(),A3=Mn(),u8=Hr(),f8=ms(),x3=wt(),vv=class{static{o(this,"SessionEventService")}constructor(e,t){this.vault=e,this.vaultSettings=t,this.folderPathCache=null}async createSessionStartEvent(e){return this.createSessionEvent(e,A3.AssetClass.SESSION_START_EVENT)}async createSessionEndEvent(e){return this.createSessionEvent(e,A3.AssetClass.SESSION_END_EVENT)}getSessionEventFolder(){if(this.folderPathCache!==null)return this.folderPathCache;let e=this.vault.getDefaultNewFileParent();return this.folderPathCache=e?.path||"",this.folderPathCache}async createSessionEvent(e,t){let r=(0,l8.v4)(),i=u8.DateFormatter.toLocalTimestamp(new Date),s={exo__Asset_uid:r,exo__Asset_createdAt:i,exo__Asset_isDefinedBy:this.vaultSettings.getOwnerIdentity(),exo__Instance_class:[`"[[${t}]]"`],ems__SessionEvent_timestamp:i,ems__Session_area:`"[[${e}]]"`},a=f8.MetadataHelpers.buildFileContent(s),c=this.getSessionEventFolder();c&&!await this.vault.exists(c)&&await this.vault.createFolder(c);let l=c?`${c}/${r}.md`:`${r}.md`;return await this.vault.create(l,a)}};Di.SessionEventService=vv;Di.SessionEventService=vv=o8([(0,Sv.injectable)(),T3(0,(0,Sv.inject)(x3.DI_TOKENS.IVaultAdapter)),T3(1,(0,Sv.inject)(x3.DI_TOKENS.IVaultSettings)),c8("design:paramtypes",[Object,Object])],vv)});var Tv=S(Ni=>{"use strict";var d8=Ni&&Ni.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},h8=Ni&&Ni.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},C3=Ni&&Ni.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Ni,"__esModule",{value:!0});Ni.URIConstructionService=void 0;var wv=fe(),I3=wt(),p8=Pc(),Ev=class{static{o(this,"URIConstructionService")}constructor(e,t=p8.NullLogger){this.fileSystem=e,this.logger=t,this.defaultOntologyURL="https://exocortex.my/default/",this.strictValidation=!0}configure(e){e?.defaultOntologyURL&&(this.defaultOntologyURL=e.defaultOntologyURL),e?.strictValidation!==void 0&&(this.strictValidation=e.strictValidation)}async constructAssetURI(e){let t=this.extractUID(e);if(!t){if(this.strictValidation)throw new Error(`Asset missing exo__Asset_uid: ${e.path}`);return this.logger.warn(`Asset ${e.path} missing UID, using filename fallback`),this.constructFallbackURI(e)}let r=await this.resolveOntologyURL(e);if(!this.validateOntologyURL(r))throw new Error(`Invalid ontology URL: ${r}`);return`${r.endsWith("/")?r:`${r}/`}${t}`}validateOntologyURL(e){if(!e)return!1;try{let t=new URL(e);return t.protocol==="http:"||t.protocol==="https:"}catch{return!1}}async resolveOntologyURL(e){let t=e.frontmatter?.exo__Asset_isDefinedBy;if(!t||typeof t!="string")return this.defaultOntologyURL;let r=this.extractWikiLink(t),i=r,s=await this.fileSystem.fileExists(r);return!s&&!r.endsWith(".md")&&(i=`${r}.md`,s=await this.fileSystem.fileExists(i)),s?(await this.fileSystem.getFileMetadata(i))?.exo__Ontology_url||this.defaultOntologyURL:(this.logger.warn(`Ontology file not found: ${r}, using default`),this.defaultOntologyURL)}extractUID(e){let t=e.frontmatter?.exo__Asset_uid;return typeof t=="string"?t:null}extractWikiLink(e){return e.replace(/^\[\[|\]\]$/g,"")}constructFallbackURI(e){let t=e.path.split("/").pop()?.replace(".md","")||"unknown";return`${this.defaultOntologyURL}${t}`}};Ni.URIConstructionService=Ev;Ni.URIConstructionService=Ev=d8([(0,wv.injectable)(),C3(0,(0,wv.inject)(I3.DI_TOKENS.IFileSystemAdapter)),C3(1,(0,wv.inject)(I3.DI_TOKENS.ILogger)),h8("design:paramtypes",[Object,Object])],Ev)});var xv=S(Li=>{"use strict";var m8=Li&&Li.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},g8=Li&&Li.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},y8=Li&&Li.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Li,"__esModule",{value:!0});Li.GenericAssetCreationService=void 0;var R3=fe(),_8=Tn(),hf=Hr(),S8=ms(),v8=wt(),gs=Ch(),Av=class{static{o(this,"GenericAssetCreationService")}constructor(e){this.vault=e}async createAsset(e,t){let r=(0,_8.v4)(),i=`${r}.md`,s=this.generateFrontmatter(e,t||[],r),a=S8.MetadataHelpers.buildFileContent(s),c=e.folderPath||this.getDefaultFolderPath(e);this.vault.getAbstractFileByPath(c)||await this.vault.createFolder(c);let u=c?`${c}/${i}`:i;return await this.vault.create(u,a)}generateFrontmatter(e,t,r){let i=new Date,s={},a=new Map;for(let c of t)a.set(c.name,c.fieldType);if(s.exo__Asset_uid=r,s.exo__Asset_createdAt=hf.DateFormatter.toLocalTimestamp(i),s.exo__Instance_class=[this.formatWikilink(e.className)],e.label&&e.label.trim()!==""){let c=e.label.trim();s.exo__Asset_label=c,s.aliases=[c]}if(e.parentFile&&e.parentMetadata&&this.inheritParentContext(s,e),e.propertyValues)for(let[c,l]of Object.entries(e.propertyValues)){if(c==="exo__Asset_uid"||c==="exo__Asset_createdAt"||c==="exo__Instance_class"||c==="exo__Asset_label"||c==="aliases"||l==null)continue;let u=a.get(c);s[c]=this.formatValue(l,u)}return s}inheritParentContext(e,t){let r=t.parentMetadata||{},i=t.parentFile?.basename;if(t.className==="ems__Task"||t.className.startsWith("ems__Task")){let s=r.exo__Instance_class,c=this.isAreaClass(s)?"ems__Effort_area":"ems__Effort_parent";e[c]=i?this.formatWikilink(i):null}if(t.className==="ems__Project"||t.className.startsWith("ems__Project")){let s=r.exo__Instance_class,c=this.isAreaClass(s)?"ems__Effort_area":"ems__Effort_parent";e[c]=i?this.formatWikilink(i):null}if(r.exo__Asset_isDefinedBy){let s=r.exo__Asset_isDefinedBy;e.exo__Asset_isDefinedBy=typeof s=="string"?this.formatWikilink(s):s}}isAreaClass(e){return e?(Array.isArray(e)?e:[e]).some(r=>String(r).includes("Area")||String(r).includes("ems__Area")):!1}getDefaultFolderPath(e){if(e.parentFile?.parent?.path)return e.parentFile.parent.path;let t={ems__Task:"tasks",ems__Project:"projects",ems__Area:"areas",ems__Meeting:"meetings",exo__Event:"events",ims__Concept:"concepts"};if(t[e.className])return t[e.className];for(let[r,i]of Object.entries(t))if(e.className.startsWith(r))return i;return"assets"}formatValue(e,t){if(e==null)return null;if(!t)return this.formatInferredValue(e);switch(t){case gs.PropertyFieldType.Text:return String(e);case gs.PropertyFieldType.Wikilink:case gs.PropertyFieldType.Reference:case gs.PropertyFieldType.StatusSelect:case gs.PropertyFieldType.SizeSelect:return this.formatWikilink(String(e));case gs.PropertyFieldType.Number:return typeof e=="number"?e:Number(e)||0;case gs.PropertyFieldType.Boolean:return this.formatBoolean(e);case gs.PropertyFieldType.Date:case gs.PropertyFieldType.DateTime:case gs.PropertyFieldType.Timestamp:return this.formatTimestamp(e);default:return String(e)}}formatInferredValue(e){return typeof e=="boolean"||typeof e=="number"?e:e instanceof Date?hf.DateFormatter.toLocalTimestamp(e):typeof e=="string"?e.startsWith("[[")||e.startsWith('"[[')?this.formatWikilink(e):e:String(e)}formatWikilink(e){return e.startsWith('"[[')&&e.endsWith(']]"')?e:e.startsWith("[[")&&e.endsWith("]]")?`"${e}"`:`"[[${e}]]"`}formatBoolean(e){if(typeof e=="boolean")return e;if(typeof e=="string"){let t=e.toLowerCase().trim();return t==="true"||t==="yes"||t==="1"}return typeof e=="number"?e!==0:!!e}formatTimestamp(e){if(e instanceof Date)return hf.DateFormatter.toLocalTimestamp(e);if(typeof e=="string"){if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$/.test(e))return e;if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/.test(e))return e.replace("Z","");let t=new Date(e);return isNaN(t.getTime())?e:hf.DateFormatter.toLocalTimestamp(t)}if(typeof e=="number"){let t=new Date(e);if(!isNaN(t.getTime()))return hf.DateFormatter.toLocalTimestamp(t)}return String(e)}};Li.GenericAssetCreationService=Av;Li.GenericAssetCreationService=Av=m8([(0,R3.injectable)(),y8(0,(0,R3.inject)(v8.DI_TOKENS.IVaultAdapter)),g8("design:paramtypes",[Object])],Av)});var O3=S(ki=>{"use strict";var b8=ki&&ki.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},w8=ki&&ki.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},E8=ki&&ki.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(ki,"__esModule",{value:!0});ki.ArchiveAssetService=void 0;var P3=fe(),T8=wt(),A8=ei(),Cv=class{static{o(this,"ArchiveAssetService")}constructor(e){this.vault=e,this.frontmatterService=new A8.FrontmatterService}async archiveAsset(e){let t=await this.vault.read(e),r=this.frontmatterService.updateProperty(t,"archived","true");r=this.frontmatterService.removeProperty(r,"aliases"),r!==t&&await this.vault.modify(e,r)}};ki.ArchiveAssetService=Cv;ki.ArchiveAssetService=Cv=b8([(0,P3.injectable)(),E8(0,(0,P3.inject)(T8.DI_TOKENS.IVaultAdapter)),w8("design:paramtypes",[Object])],Cv)});var D3=S(Mi=>{"use strict";var x8=Mi&&Mi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},C8=Mi&&Mi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},I8=Mi&&Mi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Mi,"__esModule",{value:!0});Mi.FixMissingLabelService=void 0;var F3=fe(),R8=wt(),P8=ei(),Iv=class{static{o(this,"FixMissingLabelService")}constructor(e){this.vault=e,this.frontmatterService=new P8.FrontmatterService}async fixMissingLabel(e){let t=await this.vault.read(e);if(this.hasNonEmptyLabel(t))return;let r=this.frontmatterService.updateProperty(t,"exo__Asset_label",e.basename);r!==t&&await this.vault.modify(e,r)}hasNonEmptyLabel(e){let t=this.frontmatterService.parse(e);if(!t.exists)return!1;let r=t.content.match(/^exo__Asset_label:\s*(.*)$/m);if(!r)return!1;let i=r[1].trim();return!(i===""||i==='""'||i==="''")}};Mi.FixMissingLabelService=Iv;Mi.FixMissingLabelService=Iv=x8([(0,F3.injectable)(),I8(0,(0,F3.inject)(R8.DI_TOKENS.IVaultAdapter)),C8("design:paramtypes",[Object])],Iv)});var N3=S(ua=>{"use strict";var O8=ua&&ua.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},F8=ua&&ua.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ua,"__esModule",{value:!0});ua.GraphQueryService=void 0;var D8=fe(),pf=Ae(),N8=Ne(),Ua=yr(),L8=v0(),ys={INSTANCE_CLASS:Ua.Namespace.EXO.term("Instance_class"),ASSET_LABEL:Ua.Namespace.EXO.term("Asset_label"),ASSET_PROTOTYPE:Ua.Namespace.EXO.term("Asset_prototype"),ASSET_IS_ARCHIVED:Ua.Namespace.EXO.term("Asset_isArchived"),EFFORT_PARENT:Ua.Namespace.EMS.term("Effort_parent"),REFERENCES:Ua.Namespace.EXO.term("references"),REFERENCED_BY:Ua.Namespace.EXO.term("referencedBy"),RDF_TYPE:Ua.Namespace.RDF.term("type")},Rv=class{static{o(this,"GraphQueryService")}constructor(e,t={},r){this.subscribers=new Set,this.nodeCache=new Map,this.lastCacheUpdate=0,this.tripleStore=e,this.logger=r,this.config={defaultLimit:t.defaultLimit??100,maxLimit:t.maxLimit??1e4,defaultDepth:t.defaultDepth??2,maxDepth:t.maxDepth??10,includeArchivedByDefault:t.includeArchivedByDefault??!1,cacheTTL:t.cacheTTL??3e4}}async loadGraphData(e={}){let t=Date.now(),r=await this.loadNodes(e),i=await this.loadEdges(r,e),s=this.computeStats(r,i),a=Date.now()-t;return a>100&&r.length>0&&this.logger?.debug(`GraphQueryService: loaded ${r.length} nodes in ${a}ms (${(a/r.length).toFixed(2)}ms/node)`),{nodes:r,edges:i,stats:s,lastUpdated:Date.now(),version:1}}async loadNodesIncremental(e={}){let t=Math.min(e.limit??this.config.defaultLimit,this.config.maxLimit),r=e.offset??0,i=await this.loadNodes({...e,limit:t+1,offset:r}),s=i.length>t,a=s?i.slice(0,t):i,c=await this.loadEdges(a,e);return{nodes:a,edges:c,hasMore:s,totalCount:void 0,cursor:s?String(r+t):void 0}}async loadConnectedNodes(e,t={}){let r=Math.min(t.depth??this.config.defaultDepth,this.config.maxDepth),i=Math.min(t.limit??this.config.maxLimit,this.config.maxLimit),s=new Set,a=[{id:e,currentDepth:0}],c=[];for(;a.length>0&&c.length<i;){let u=a.shift();if(!u)break;let{id:f,currentDepth:d}=u;if(s.has(f))continue;s.add(f);let h=await this.getNodeById(f,t);if(h&&(c.push(h),d<r)){let p=await this.getConnectedNodeIds(f);for(let y of p)s.has(y)||a.push({id:y,currentDepth:d+1})}}let l=await this.loadEdges(c,t);return{nodes:c,edges:l,hasMore:a.length>0,totalCount:s.size+a.length}}async getNodeById(e,t={}){let r=this.getCachedNode(e);if(r)return{...r};let i=this.idToIRI(e),s=await this.tripleStore.match(i,void 0,void 0);if(s.length===0)return null;let a=this.triplesToNode(e,s,t);return a&&this.cacheNode(a),a}subscribe(e){return this.subscribers.add(e),{unsubscribe:o(()=>{this.subscribers.delete(e)},"unsubscribe")}}notifyChange(e){for(let t of this.subscribers)try{t(e)}catch(r){this.logger?.error("GraphQueryService: error in subscriber callback",r instanceof Error?r:new Error(String(r)))}this.invalidateCache()}async getStats(){let e=await this.loadNodes({includeArchived:!0}),t=await this.loadEdges(e,{});return this.computeStats(e,t)}clearCache(){this.nodeCache.clear(),this.lastCacheUpdate=0}async loadNodes(e){let t=e.includeArchived??this.config.includeArchivedByDefault,r=e.limit??this.config.maxLimit,i=e.offset??0,s=await this.tripleStore.match(void 0,ys.INSTANCE_CLASS,void 0),a=s;if(e.classes&&e.classes.length>0){let p=new Set(e.classes);a=s.filter(y=>{let v=this.getObjectValue(y.object);return v&&p.has(v)})}let c=new Set;for(let p of a)c.add(this.subjectToId(p.subject));let f=Array.from(c).slice(i,i+r).map(p=>this.getNodeById(p,e));return(await Promise.all(f)).filter(p=>!(!p||!t&&p.isArchived))}async loadEdges(e,t){let r=new Set(e.map(a=>a.id)),i=[],s=new Set;for(let a of e){let c=this.idToIRI(a.id),l=await this.tripleStore.match(c,void 0,void 0);for(let u of l){let f=this.tripleToEdge(a.id,u,r);f&&f.id&&!s.has(f.id)&&(!t.edgeTypes||t.edgeTypes.includes(f.type))&&(s.add(f.id),i.push(f))}}return i}async getConnectedNodeIds(e){let t=this.idToIRI(e),r=[],i=await this.tripleStore.match(t,void 0,void 0);for(let a of i){let c=this.objectToId(a.object);c&&r.push(c)}let s=await this.tripleStore.match(void 0,void 0,t);for(let a of s)r.push(this.subjectToId(a.subject));return[...new Set(r)]}triplesToNode(e,t,r){let i={},s,a,c,l,u=!1;for(let h of t){let p=h.predicate.value,y=this.getObjectValue(h.object);if(p===ys.INSTANCE_CLASS.value)s=y;else if(p===ys.ASSET_LABEL.value)a=y;else if(p===ys.ASSET_PROTOTYPE.value)c=this.objectToId(h.object)??y;else if(p===ys.EFFORT_PARENT.value)l=this.objectToId(h.object)??y;else if(p===ys.ASSET_IS_ARCHIVED.value)u=y==="true"||y==="1";else{let v=this.predicateToPropertyName(p);v&&(i[v]=y)}}if(u&&!(r.includeArchived??this.config.includeArchivedByDefault))return null;let f=this.idToPath(e),d=a??this.pathToTitle(f);return{id:e,path:f,title:d,label:d,assetClass:s,isArchived:u,uri:e.startsWith("http")?e:void 0,prototype:c,parent:l,properties:Object.keys(i).length>0?i:void 0}}tripleToEdge(e,t,r){let i=t.predicate.value,s=this.objectToId(t.object);if(!s||!r.has(s)||s===e)return null;let a=this.predicateToEdgeType(i);if(!a)return null;let c=(0,L8.createEdgeId)(e,s,a,i),l=this.predicateToLabel(i);return{id:c,source:e,target:s,type:a,predicate:i,label:l}}predicateToEdgeType(e){return e===ys.EFFORT_PARENT.value?"hierarchy":e===ys.ASSET_PROTOTYPE.value?"prototype":e===ys.REFERENCES.value?"forward-link":e===ys.REFERENCED_BY.value?"backlink":e.includes("Asset_")||e.includes("Instance_")?null:"semantic"}predicateToLabel(e){let t=e.lastIndexOf("#"),r=e.lastIndexOf("/"),i=Math.max(t,r);return i>=0?e.substring(i+1):e}predicateToPropertyName(e){return this.predicateToLabel(e).replace(/_/g,"__").replace(/#/g,"_")}computeStats(e,t){let r={},i={backlink:0,"forward-link":0,hierarchy:0,prototype:0,semantic:0,reference:0};for(let c of e){let l=c.assetClass??"unknown";r[l]=(r[l]??0)+1}for(let c of t)i[c.type]=(i[c.type]??0)+1;let s=new Map,a=new Map;for(let c of t)a.set(c.source,(a.get(c.source)??0)+1),s.set(c.target,(s.get(c.target)??0)+1);for(let c of e)c.inDegree=s.get(c.id)??0,c.outDegree=a.get(c.id)??0,c.weight=c.inDegree+c.outDegree;return{nodeCount:e.length,edgeCount:t.length,nodesByClass:r,edgesByType:i,computedAt:Date.now()}}idToIRI(e){return e.startsWith("http://")||e.startsWith("https://")?new pf.IRI(e):new pf.IRI(`obsidian://vault/${encodeURIComponent(e)}`)}subjectToId(e){if(e instanceof pf.IRI){let t=e.value;return t.startsWith("obsidian://vault/")?decodeURIComponent(t.replace("obsidian://vault/","")):t}return e.toString()}objectToId(e){if(e instanceof pf.IRI){let t=e.value;return t.startsWith("obsidian://vault/")?decodeURIComponent(t.replace("obsidian://vault/","")):t}return null}getObjectValue(e){if(e instanceof N8.Literal||e instanceof pf.IRI)return e.value}idToPath(e){if(e.startsWith("obsidian://vault/"))return decodeURIComponent(e.replace("obsidian://vault/",""));if(e.startsWith("http://")||e.startsWith("https://")){let t=e.match(/\/([^/]+\.md)$/);if(t)return t[1]}return e}pathToTitle(e){return(e.split("/").pop()??e).replace(/\.md$/,"")}getCachedNode(e){return Date.now()-this.lastCacheUpdate>this.config.cacheTTL?(this.clearCache(),null):this.nodeCache.get(e)??null}cacheNode(e){this.nodeCache.set(e.id,e),this.lastCacheUpdate===0&&(this.lastCacheUpdate=Date.now())}invalidateCache(){this.clearCache()}};ua.GraphQueryService=Rv;ua.GraphQueryService=Rv=O8([(0,D8.injectable)(),F8("design:paramtypes",[Object,Object,Object])],Rv)});var k3=S(fa=>{"use strict";var k8=fa&&fa.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},M8=fa&&fa.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(fa,"__esModule",{value:!0});fa.TypeRegistry=void 0;var j8=fe(),_s=Ae(),L3=qt(),$8=Ne(),B8=$a(),ht=b0(),Pv=class{static{o(this,"TypeRegistry")}constructor(e=null,t={}){this.nodeTypes=new Map,this.edgeTypes=new Map,this.typeHierarchy=new Map,this.subscribers=new Set,this.discoveryComplete=!1,this.tripleStore=e,this.config={autoDiscoverTypes:t.autoDiscoverTypes??!0,includeBuiltInStyles:t.includeBuiltInStyles??!0,styleResolution:t.styleResolution??{mergeStyles:!0,inheritParentStyles:!0,defaultNodeStyle:ht.DEFAULT_NODE_STYLE,defaultEdgeStyle:ht.DEFAULT_EDGE_STYLE},maxInheritanceDepth:t.maxInheritanceDepth??10},this.config.includeBuiltInStyles&&this.registerBuiltInTypes()}registerNodeType(e){let r=this.nodeTypes.get(e.uri)?"type-updated":"type-added";this.nodeTypes.set(e.uri,e),e.parentTypes&&e.parentTypes.length>0&&this.typeHierarchy.set(e.uri,e.parentTypes),this.emit({type:r,typeUri:e.uri,definition:e})}registerEdgeType(e){let r=this.edgeTypes.get(e.uri)?"type-updated":"type-added";this.edgeTypes.set(e.uri,e),this.emit({type:r,typeUri:e.uri,definition:e})}unregisterType(e){let t=this.nodeTypes.delete(e),r=this.edgeTypes.delete(e);this.typeHierarchy.delete(e),(t||r)&&this.emit({type:"type-removed",typeUri:e})}getNodeType(e){return this.nodeTypes.get(e)}getEdgeType(e){return this.edgeTypes.get(e)}getAllNodeTypes(){return Array.from(this.nodeTypes.values())}getAllEdgeTypes(){return Array.from(this.edgeTypes.values())}getParentTypes(e,t=this.config.maxInheritanceDepth){let r=[],i=new Set,s=[{uri:e,currentDepth:0}];for(;s.length>0;){let a=s.shift();if(!a)break;let{uri:c,currentDepth:l}=a;if(i.has(c)||(i.add(c),l>=t))continue;let u=this.typeHierarchy.get(c)??[];for(let f of u)i.has(f)||(r.push(f),s.push({uri:f,currentDepth:l+1}))}return r}getChildTypes(e){let t=[];for(let[r,i]of this.typeHierarchy)i.includes(e)&&t.push(r);return t}isSubtypeOf(e,t){return e===t?!0:this.getParentTypes(e).includes(t)}resolveNodeType(e){let t=[],r="unknown",i="custom";if(e.assetClass){let c=this.normalizeTypeUri(e.assetClass);t.push(c),r=c,i="exo:Instance_class"}let s=e.properties?.[ht.RDF_TYPE_PREDICATES.RDF_TYPE];s&&!t.includes(s)&&(t.push(s),r==="unknown"&&(r=s,i="rdf:type"));for(let c of[...t]){let l=this.getParentTypes(c);for(let u of l)t.includes(u)||t.push(u)}let a=this.resolveNodeStyle(t);return{primaryType:r,types:t,resolvedStyle:a,source:i}}resolveEdgeType(e){let t=e.predicate??e.type,r=e.predicate?"rdf:type":"custom",i=this.resolveEdgeStyle(t);return{primaryType:t,resolvedStyle:i,source:r}}resolveNodeStyle(e){let{mergeStyles:t,defaultNodeStyle:r}=this.config.styleResolution,i={...r},s=[];for(let a of e){let c=this.nodeTypes.get(a);c&&s.push(c)}if(s.sort((a,c)=>a.priority-c.priority),t)for(let a of s)i=(0,ht.mergeNodeStyles)(i,a.style);else if(s.length>0){let a=s[s.length-1];i=(0,ht.mergeNodeStyles)(i,a.style)}return i}resolveEdgeStyle(e){let{defaultEdgeStyle:t}=this.config.styleResolution,r={...t},i=this.edgeTypes.get(e);return i&&(r=(0,ht.mergeEdgeStyles)(r,i.style)),r}filterNodes(e,t){return e.filter(r=>{let i=this.resolveNodeType(r);return!(t.includeNodeTypes&&t.includeNodeTypes.length>0&&!t.includeNodeTypes.some(a=>i.types.includes(a)||t.includeInferred&&this.isSubtypeOf(i.primaryType,a))||t.excludeNodeTypes&&t.excludeNodeTypes.length>0&&t.excludeNodeTypes.some(a=>i.types.includes(a)||t.includeInferred&&this.isSubtypeOf(i.primaryType,a))||!t.includeDeprecated&&this.nodeTypes.get(i.primaryType)?.deprecated)})}filterEdges(e,t){return e.filter(r=>{let i=r.predicate??r.type;return!(t.includeEdgeTypes&&t.includeEdgeTypes.length>0&&!t.includeEdgeTypes.includes(i)||t.excludeEdgeTypes&&t.excludeEdgeTypes.length>0&&t.excludeEdgeTypes.includes(i))})}groupNodesByType(e,t,r={}){let{groupByNodeType:i=!0,groupByParentType:s=!1,groupLevel:a=0,maxGroups:c=20,customGroupFn:l}=r,u=new Map;for(let h of e){let p=this.resolveNodeType(h),y;if(l?y=l(p.types):s&&p.types.length>a?y=p.types[a]??p.primaryType:i?y=p.primaryType:y="all",!u.has(y)){let b=this.nodeTypes.get(y)?.label??(0,ht.extractLocalName)(y);u.set(y,{nodeIds:new Set,label:b})}let v=u.get(y);v&&v.nodeIds.add(h.id)}let f=Array.from(u.entries()).map(([h,p])=>({id:h,label:p.label,nodeIds:Array.from(p.nodeIds)}));if(f.length>c){f.sort((y,v)=>v.nodeIds.length-y.nodeIds.length);let h=f.slice(0,c-1),p=f.slice(c-1).flatMap(y=>y.nodeIds);h.push({id:"other",label:"Other",nodeIds:p}),f=h}let d=new Map;for(let h of f)for(let p of h.nodeIds)d.set(p,h.id);return f.map((h,p)=>{let y=new Set(h.nodeIds),v=[],w=[];for(let I of t){let j=y.has(I.source),V=y.has(I.target);j&&V?I.id&&v.push(I.id):(j||V)&&I.id&&w.push(I.id)}let A=`hsl(${p*137.5%360}, 70%, 50%)`;return{id:h.id,label:h.label,nodeIds:h.nodeIds,internalEdgeIds:v,externalEdgeIds:w,color:A,stats:{nodeCount:h.nodeIds.length,internalEdgeCount:v.length,externalEdgeCount:w.length}}})}validateTypes(e,t){let r=[],i=[];for(let s of e){let a=this.resolveNodeType(s);if(a.primaryType!=="unknown"){let c=this.nodeTypes.get(a.primaryType);!c&&a.source!=="inferred"&&i.push({code:"UNREGISTERED_NODE_TYPE",message:`Node type "${a.primaryType}" is not registered`,elementId:s.id,suggestion:"Register the type with registerNodeType()"}),c?.deprecated&&i.push({code:"DEPRECATED_NODE_TYPE",message:`Node uses deprecated type "${a.primaryType}"`,elementId:s.id,suggestion:"Migrate to a non-deprecated type"})}else i.push({code:"MISSING_NODE_TYPE",message:"Node has no type information",elementId:s.id,suggestion:"Add exo:Instance_class or rdf:type to the node"})}for(let s of t){let a=s.predicate??s.type,c=this.edgeTypes.get(a);if(c?.domain&&c.domain.length>0){let l=e.find(u=>u.id===s.source);if(l){let u=this.resolveNodeType(l);c.domain.some(d=>u.types.includes(d))||r.push({code:"DOMAIN_VIOLATION",message:"Edge source does not match expected domain",elementId:s.id,expected:c.domain,actual:u.types})}}if(c?.range&&c.range.length>0){let l=e.find(u=>u.id===s.target);if(l){let u=this.resolveNodeType(l);c.range.some(d=>u.types.includes(d))||r.push({code:"RANGE_VIOLATION",message:"Edge target does not match expected range",elementId:s.id,expected:c.range,actual:u.types})}}}return{valid:r.length===0,errors:r,warnings:i}}async discoverTypes(){if(!this.tripleStore||this.discoveryComplete)return;let e=await this.tripleStore.match(void 0,new _s.IRI(ht.RDF_TYPE_PREDICATES.RDF_TYPE),void 0);for(let r of e){let i=this.getObjectValue(r.object);if(i&&(0,ht.isClassType)(i)){let s=this.getSubjectValue(r.subject);s&&await this.discoverNodeType(s)}}let t=await this.tripleStore.match(void 0,new _s.IRI(ht.RDF_TYPE_PREDICATES.RDFS_SUBCLASS_OF),void 0);for(let r of t){let i=this.getSubjectValue(r.subject),s=this.getObjectValue(r.object);if(i&&s){let a=this.typeHierarchy.get(i)??[];if(!a.includes(s)){a.push(s),this.typeHierarchy.set(i,a);let c=this.nodeTypes.get(i);c&&(c.parentTypes=a)}}}this.discoveryComplete=!0,this.emit({type:"hierarchy-updated",rootTypes:this.getRootTypes()})}subscribe(e){return this.subscribers.add(e),()=>this.subscribers.delete(e)}clear(){this.nodeTypes.clear(),this.edgeTypes.clear(),this.typeHierarchy.clear(),this.discoveryComplete=!1,this.config.includeBuiltInStyles&&this.registerBuiltInTypes()}registerBuiltInTypes(){for(let[e,t]of Object.entries(ht.BUILT_IN_NODE_STYLES))this.nodeTypes.set(e,{uri:e,label:(0,ht.extractLocalName)(e),source:"custom",style:(0,ht.mergeNodeStyles)(ht.DEFAULT_NODE_STYLE,t),priority:1});for(let[e,t]of Object.entries(ht.BUILT_IN_EDGE_STYLES))this.edgeTypes.set(e,{uri:e,label:(0,ht.extractLocalName)(e),source:"custom",style:(0,ht.mergeEdgeStyles)(ht.DEFAULT_EDGE_STYLE,t),priority:1})}async discoverNodeType(e){if(this.nodeTypes.has(e)||!this.tripleStore)return;let t=await this.tripleStore.match(new _s.IRI(e),new _s.IRI(ht.RDF_TYPE_PREDICATES.RDFS_LABEL),void 0),r=await this.tripleStore.match(new _s.IRI(e),new _s.IRI(ht.RDF_TYPE_PREDICATES.RDFS_COMMENT),void 0),i=t.length>0?this.getObjectValue(t[0].object)??(0,ht.extractLocalName)(e):(0,ht.extractLocalName)(e),s=r.length>0?this.getObjectValue(r[0].object):void 0,a="rdfs:Class",c=await this.tripleStore.match(new _s.IRI(e),new _s.IRI(ht.RDF_TYPE_PREDICATES.RDF_TYPE),void 0);for(let f of c)if(this.getObjectValue(f.object)===ht.RDF_TYPE_PREDICATES.OWL_CLASS){a="owl:Class";break}let l=ht.BUILT_IN_NODE_STYLES[e]??ht.BUILT_IN_NODE_STYLES[(0,ht.extractLocalName)(e)],u={uri:e,label:i,description:s,source:a,style:(0,ht.mergeNodeStyles)(ht.DEFAULT_NODE_STYLE,l??{}),priority:1};this.registerNodeType(u)}normalizeTypeUri(e){let t=e.match(/^\[\[(.+?)\]\]$/);return t?t[1]:e}getSubjectValue(e){if(e instanceof _s.IRI)return e.value;if(e instanceof L3.BlankNode)return`_:${e.id}`;if(typeof e=="object"&&e!==null&&"termType"in e)return e.toString()}getObjectValue(e){if(e instanceof $8.Literal||e instanceof _s.IRI)return e.value;if(e instanceof L3.BlankNode)return`_:${e.id}`}getRootTypes(){let e=new Set;for(let r of this.typeHierarchy.values())for(let i of r)e.add(i);let t=[];for(let r of this.nodeTypes.keys()){let i=this.typeHierarchy.get(r);(!i||i.length===0)&&e.has(r)&&t.push(r)}return t}emit(e){for(let t of this.subscribers)try{t(e)}catch(r){B8.LoggingService.error("TypeRegistry: error in subscriber callback",r instanceof Error?r:new Error(String(r)))}}};fa.TypeRegistry=Pv;fa.TypeRegistry=Pv=k8([(0,j8.injectable)(),M8("design:paramtypes",[Object,Object])],Pv)});var Ov=S(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.SPARQL_TEMPLATES=B.KNOWN_CLASSES=B.KNOWN_PROTOTYPES=B.EFFORT_STATUSES=B.ASSET_CLASSES=B.PREDICATES=B.SPARQL_PREFIXES=void 0;B.findClassByTerm=V8;B.getTemplateByName=U8;B.findMatchingTemplates=q8;B.fillTemplate=W8;B.validateParameters=G8;B.SPARQL_PREFIXES=`PREFIX exo: <https://exocortex.my/ontology/exo#>
217
+ ---`)}};Fi.AssetConversionService=yv;Fi.AssetConversionService=yv=r8([(0,w3.injectable)(),i8(0,(0,w3.inject)(a8.DI_TOKENS.IVaultAdapter)),n8("design:paramtypes",[Object])],yv)});var bv=S(Di=>{"use strict";var o8=Di&&Di.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},c8=Di&&Di.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},T3=Di&&Di.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Di,"__esModule",{value:!0});Di.SessionEventService=void 0;var Sv=fe(),l8=Tn(),A3=Mn(),u8=Qr(),f8=ms(),x3=wt(),vv=class{static{o(this,"SessionEventService")}constructor(e,t){this.vault=e,this.vaultSettings=t,this.folderPathCache=null}async createSessionStartEvent(e){return this.createSessionEvent(e,A3.AssetClass.SESSION_START_EVENT)}async createSessionEndEvent(e){return this.createSessionEvent(e,A3.AssetClass.SESSION_END_EVENT)}getSessionEventFolder(){if(this.folderPathCache!==null)return this.folderPathCache;let e=this.vault.getDefaultNewFileParent();return this.folderPathCache=e?.path||"",this.folderPathCache}async createSessionEvent(e,t){let r=(0,l8.v4)(),i=u8.DateFormatter.toLocalTimestamp(new Date),s={exo__Asset_uid:r,exo__Asset_createdAt:i,exo__Asset_isDefinedBy:this.vaultSettings.getOwnerIdentity(),exo__Instance_class:[`"[[${t}]]"`],ems__SessionEvent_timestamp:i,ems__Session_area:`"[[${e}]]"`},a=f8.MetadataHelpers.buildFileContent(s),c=this.getSessionEventFolder();c&&!await this.vault.exists(c)&&await this.vault.createFolder(c);let l=c?`${c}/${r}.md`:`${r}.md`;return await this.vault.create(l,a)}};Di.SessionEventService=vv;Di.SessionEventService=vv=o8([(0,Sv.injectable)(),T3(0,(0,Sv.inject)(x3.DI_TOKENS.IVaultAdapter)),T3(1,(0,Sv.inject)(x3.DI_TOKENS.IVaultSettings)),c8("design:paramtypes",[Object,Object])],vv)});var Tv=S(Ni=>{"use strict";var d8=Ni&&Ni.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},h8=Ni&&Ni.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},C3=Ni&&Ni.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Ni,"__esModule",{value:!0});Ni.URIConstructionService=void 0;var wv=fe(),I3=wt(),p8=Pc(),Ev=class{static{o(this,"URIConstructionService")}constructor(e,t=p8.NullLogger){this.fileSystem=e,this.logger=t,this.defaultOntologyURL="https://exocortex.my/default/",this.strictValidation=!0}configure(e){e?.defaultOntologyURL&&(this.defaultOntologyURL=e.defaultOntologyURL),e?.strictValidation!==void 0&&(this.strictValidation=e.strictValidation)}async constructAssetURI(e){let t=this.extractUID(e);if(!t){if(this.strictValidation)throw new Error(`Asset missing exo__Asset_uid: ${e.path}`);return this.logger.warn(`Asset ${e.path} missing UID, using filename fallback`),this.constructFallbackURI(e)}let r=await this.resolveOntologyURL(e);if(!this.validateOntologyURL(r))throw new Error(`Invalid ontology URL: ${r}`);return`${r.endsWith("/")?r:`${r}/`}${t}`}validateOntologyURL(e){if(!e)return!1;try{let t=new URL(e);return t.protocol==="http:"||t.protocol==="https:"}catch{return!1}}async resolveOntologyURL(e){let t=e.frontmatter?.exo__Asset_isDefinedBy;if(!t||typeof t!="string")return this.defaultOntologyURL;let r=this.extractWikiLink(t),i=r,s=await this.fileSystem.fileExists(r);return!s&&!r.endsWith(".md")&&(i=`${r}.md`,s=await this.fileSystem.fileExists(i)),s?(await this.fileSystem.getFileMetadata(i))?.exo__Ontology_url||this.defaultOntologyURL:(this.logger.warn(`Ontology file not found: ${r}, using default`),this.defaultOntologyURL)}extractUID(e){let t=e.frontmatter?.exo__Asset_uid;return typeof t=="string"?t:null}extractWikiLink(e){return e.replace(/^\[\[|\]\]$/g,"")}constructFallbackURI(e){let t=e.path.split("/").pop()?.replace(".md","")||"unknown";return`${this.defaultOntologyURL}${t}`}};Ni.URIConstructionService=Ev;Ni.URIConstructionService=Ev=d8([(0,wv.injectable)(),C3(0,(0,wv.inject)(I3.DI_TOKENS.IFileSystemAdapter)),C3(1,(0,wv.inject)(I3.DI_TOKENS.ILogger)),h8("design:paramtypes",[Object,Object])],Ev)});var xv=S(Li=>{"use strict";var m8=Li&&Li.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},g8=Li&&Li.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},y8=Li&&Li.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Li,"__esModule",{value:!0});Li.GenericAssetCreationService=void 0;var R3=fe(),_8=Tn(),hf=Qr(),S8=ms(),v8=wt(),gs=Ch(),Av=class{static{o(this,"GenericAssetCreationService")}constructor(e){this.vault=e}async createAsset(e,t){let r=(0,_8.v4)(),i=`${r}.md`,s=this.generateFrontmatter(e,t||[],r),a=S8.MetadataHelpers.buildFileContent(s),c=e.folderPath||this.getDefaultFolderPath(e);this.vault.getAbstractFileByPath(c)||await this.vault.createFolder(c);let u=c?`${c}/${i}`:i;return await this.vault.create(u,a)}generateFrontmatter(e,t,r){let i=new Date,s={},a=new Map;for(let c of t)a.set(c.name,c.fieldType);if(s.exo__Asset_uid=r,s.exo__Asset_createdAt=hf.DateFormatter.toLocalTimestamp(i),s.exo__Instance_class=[this.formatWikilink(e.className)],e.label&&e.label.trim()!==""){let c=e.label.trim();s.exo__Asset_label=c,s.aliases=[c]}if(e.parentFile&&e.parentMetadata&&this.inheritParentContext(s,e),e.propertyValues)for(let[c,l]of Object.entries(e.propertyValues)){if(c==="exo__Asset_uid"||c==="exo__Asset_createdAt"||c==="exo__Instance_class"||c==="exo__Asset_label"||c==="aliases"||l==null)continue;let u=a.get(c);s[c]=this.formatValue(l,u)}return s}inheritParentContext(e,t){let r=t.parentMetadata||{},i=t.parentFile?.basename;if(t.className==="ems__Task"||t.className.startsWith("ems__Task")){let s=r.exo__Instance_class,c=this.isAreaClass(s)?"ems__Effort_area":"ems__Effort_parent";e[c]=i?this.formatWikilink(i):null}if(t.className==="ems__Project"||t.className.startsWith("ems__Project")){let s=r.exo__Instance_class,c=this.isAreaClass(s)?"ems__Effort_area":"ems__Effort_parent";e[c]=i?this.formatWikilink(i):null}if(r.exo__Asset_isDefinedBy){let s=r.exo__Asset_isDefinedBy;e.exo__Asset_isDefinedBy=typeof s=="string"?this.formatWikilink(s):s}}isAreaClass(e){return e?(Array.isArray(e)?e:[e]).some(r=>String(r).includes("Area")||String(r).includes("ems__Area")):!1}getDefaultFolderPath(e){if(e.parentFile?.parent?.path)return e.parentFile.parent.path;let t={ems__Task:"tasks",ems__Project:"projects",ems__Area:"areas",ems__Meeting:"meetings",exo__Event:"events",ims__Concept:"concepts"};if(t[e.className])return t[e.className];for(let[r,i]of Object.entries(t))if(e.className.startsWith(r))return i;return"assets"}formatValue(e,t){if(e==null)return null;if(!t)return this.formatInferredValue(e);switch(t){case gs.PropertyFieldType.Text:return String(e);case gs.PropertyFieldType.Wikilink:case gs.PropertyFieldType.Reference:case gs.PropertyFieldType.StatusSelect:case gs.PropertyFieldType.SizeSelect:return this.formatWikilink(String(e));case gs.PropertyFieldType.Number:return typeof e=="number"?e:Number(e)||0;case gs.PropertyFieldType.Boolean:return this.formatBoolean(e);case gs.PropertyFieldType.Date:case gs.PropertyFieldType.DateTime:case gs.PropertyFieldType.Timestamp:return this.formatTimestamp(e);default:return String(e)}}formatInferredValue(e){return typeof e=="boolean"||typeof e=="number"?e:e instanceof Date?hf.DateFormatter.toLocalTimestamp(e):typeof e=="string"?e.startsWith("[[")||e.startsWith('"[[')?this.formatWikilink(e):e:String(e)}formatWikilink(e){return e.startsWith('"[[')&&e.endsWith(']]"')?e:e.startsWith("[[")&&e.endsWith("]]")?`"${e}"`:`"[[${e}]]"`}formatBoolean(e){if(typeof e=="boolean")return e;if(typeof e=="string"){let t=e.toLowerCase().trim();return t==="true"||t==="yes"||t==="1"}return typeof e=="number"?e!==0:!!e}formatTimestamp(e){if(e instanceof Date)return hf.DateFormatter.toLocalTimestamp(e);if(typeof e=="string"){if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$/.test(e))return e;if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/.test(e))return e.replace("Z","");let t=new Date(e);return isNaN(t.getTime())?e:hf.DateFormatter.toLocalTimestamp(t)}if(typeof e=="number"){let t=new Date(e);if(!isNaN(t.getTime()))return hf.DateFormatter.toLocalTimestamp(t)}return String(e)}};Li.GenericAssetCreationService=Av;Li.GenericAssetCreationService=Av=m8([(0,R3.injectable)(),y8(0,(0,R3.inject)(v8.DI_TOKENS.IVaultAdapter)),g8("design:paramtypes",[Object])],Av)});var O3=S(ki=>{"use strict";var b8=ki&&ki.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},w8=ki&&ki.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},E8=ki&&ki.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(ki,"__esModule",{value:!0});ki.ArchiveAssetService=void 0;var P3=fe(),T8=wt(),A8=ei(),Cv=class{static{o(this,"ArchiveAssetService")}constructor(e){this.vault=e,this.frontmatterService=new A8.FrontmatterService}async archiveAsset(e){let t=await this.vault.read(e),r=this.frontmatterService.updateProperty(t,"archived","true");r=this.frontmatterService.removeProperty(r,"aliases"),r!==t&&await this.vault.modify(e,r)}};ki.ArchiveAssetService=Cv;ki.ArchiveAssetService=Cv=b8([(0,P3.injectable)(),E8(0,(0,P3.inject)(T8.DI_TOKENS.IVaultAdapter)),w8("design:paramtypes",[Object])],Cv)});var D3=S(Mi=>{"use strict";var x8=Mi&&Mi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},C8=Mi&&Mi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},I8=Mi&&Mi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Mi,"__esModule",{value:!0});Mi.FixMissingLabelService=void 0;var F3=fe(),R8=wt(),P8=ei(),Iv=class{static{o(this,"FixMissingLabelService")}constructor(e){this.vault=e,this.frontmatterService=new P8.FrontmatterService}async fixMissingLabel(e){let t=await this.vault.read(e);if(this.hasNonEmptyLabel(t))return;let r=this.frontmatterService.updateProperty(t,"exo__Asset_label",e.basename);r!==t&&await this.vault.modify(e,r)}hasNonEmptyLabel(e){let t=this.frontmatterService.parse(e);if(!t.exists)return!1;let r=t.content.match(/^exo__Asset_label:\s*(.*)$/m);if(!r)return!1;let i=r[1].trim();return!(i===""||i==='""'||i==="''")}};Mi.FixMissingLabelService=Iv;Mi.FixMissingLabelService=Iv=x8([(0,F3.injectable)(),I8(0,(0,F3.inject)(R8.DI_TOKENS.IVaultAdapter)),C8("design:paramtypes",[Object])],Iv)});var N3=S(ua=>{"use strict";var O8=ua&&ua.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},F8=ua&&ua.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ua,"__esModule",{value:!0});ua.GraphQueryService=void 0;var D8=fe(),pf=Ae(),N8=Ne(),Ua=yr(),L8=v0(),ys={INSTANCE_CLASS:Ua.Namespace.EXO.term("Instance_class"),ASSET_LABEL:Ua.Namespace.EXO.term("Asset_label"),ASSET_PROTOTYPE:Ua.Namespace.EXO.term("Asset_prototype"),ASSET_IS_ARCHIVED:Ua.Namespace.EXO.term("Asset_isArchived"),EFFORT_PARENT:Ua.Namespace.EMS.term("Effort_parent"),REFERENCES:Ua.Namespace.EXO.term("references"),REFERENCED_BY:Ua.Namespace.EXO.term("referencedBy"),RDF_TYPE:Ua.Namespace.RDF.term("type")},Rv=class{static{o(this,"GraphQueryService")}constructor(e,t={},r){this.subscribers=new Set,this.nodeCache=new Map,this.lastCacheUpdate=0,this.tripleStore=e,this.logger=r,this.config={defaultLimit:t.defaultLimit??100,maxLimit:t.maxLimit??1e4,defaultDepth:t.defaultDepth??2,maxDepth:t.maxDepth??10,includeArchivedByDefault:t.includeArchivedByDefault??!1,cacheTTL:t.cacheTTL??3e4}}async loadGraphData(e={}){let t=Date.now(),r=await this.loadNodes(e),i=await this.loadEdges(r,e),s=this.computeStats(r,i),a=Date.now()-t;return a>100&&r.length>0&&this.logger?.debug(`GraphQueryService: loaded ${r.length} nodes in ${a}ms (${(a/r.length).toFixed(2)}ms/node)`),{nodes:r,edges:i,stats:s,lastUpdated:Date.now(),version:1}}async loadNodesIncremental(e={}){let t=Math.min(e.limit??this.config.defaultLimit,this.config.maxLimit),r=e.offset??0,i=await this.loadNodes({...e,limit:t+1,offset:r}),s=i.length>t,a=s?i.slice(0,t):i,c=await this.loadEdges(a,e);return{nodes:a,edges:c,hasMore:s,totalCount:void 0,cursor:s?String(r+t):void 0}}async loadConnectedNodes(e,t={}){let r=Math.min(t.depth??this.config.defaultDepth,this.config.maxDepth),i=Math.min(t.limit??this.config.maxLimit,this.config.maxLimit),s=new Set,a=[{id:e,currentDepth:0}],c=[];for(;a.length>0&&c.length<i;){let u=a.shift();if(!u)break;let{id:f,currentDepth:d}=u;if(s.has(f))continue;s.add(f);let h=await this.getNodeById(f,t);if(h&&(c.push(h),d<r)){let p=await this.getConnectedNodeIds(f);for(let y of p)s.has(y)||a.push({id:y,currentDepth:d+1})}}let l=await this.loadEdges(c,t);return{nodes:c,edges:l,hasMore:a.length>0,totalCount:s.size+a.length}}async getNodeById(e,t={}){let r=this.getCachedNode(e);if(r)return{...r};let i=this.idToIRI(e),s=await this.tripleStore.match(i,void 0,void 0);if(s.length===0)return null;let a=this.triplesToNode(e,s,t);return a&&this.cacheNode(a),a}subscribe(e){return this.subscribers.add(e),{unsubscribe:o(()=>{this.subscribers.delete(e)},"unsubscribe")}}notifyChange(e){for(let t of this.subscribers)try{t(e)}catch(r){this.logger?.error("GraphQueryService: error in subscriber callback",r instanceof Error?r:new Error(String(r)))}this.invalidateCache()}async getStats(){let e=await this.loadNodes({includeArchived:!0}),t=await this.loadEdges(e,{});return this.computeStats(e,t)}clearCache(){this.nodeCache.clear(),this.lastCacheUpdate=0}async loadNodes(e){let t=e.includeArchived??this.config.includeArchivedByDefault,r=e.limit??this.config.maxLimit,i=e.offset??0,s=await this.tripleStore.match(void 0,ys.INSTANCE_CLASS,void 0),a=s;if(e.classes&&e.classes.length>0){let p=new Set(e.classes);a=s.filter(y=>{let v=this.getObjectValue(y.object);return v&&p.has(v)})}let c=new Set;for(let p of a)c.add(this.subjectToId(p.subject));let f=Array.from(c).slice(i,i+r).map(p=>this.getNodeById(p,e));return(await Promise.all(f)).filter(p=>!(!p||!t&&p.isArchived))}async loadEdges(e,t){let r=new Set(e.map(a=>a.id)),i=[],s=new Set;for(let a of e){let c=this.idToIRI(a.id),l=await this.tripleStore.match(c,void 0,void 0);for(let u of l){let f=this.tripleToEdge(a.id,u,r);f&&f.id&&!s.has(f.id)&&(!t.edgeTypes||t.edgeTypes.includes(f.type))&&(s.add(f.id),i.push(f))}}return i}async getConnectedNodeIds(e){let t=this.idToIRI(e),r=[],i=await this.tripleStore.match(t,void 0,void 0);for(let a of i){let c=this.objectToId(a.object);c&&r.push(c)}let s=await this.tripleStore.match(void 0,void 0,t);for(let a of s)r.push(this.subjectToId(a.subject));return[...new Set(r)]}triplesToNode(e,t,r){let i={},s,a,c,l,u=!1;for(let h of t){let p=h.predicate.value,y=this.getObjectValue(h.object);if(p===ys.INSTANCE_CLASS.value)s=y;else if(p===ys.ASSET_LABEL.value)a=y;else if(p===ys.ASSET_PROTOTYPE.value)c=this.objectToId(h.object)??y;else if(p===ys.EFFORT_PARENT.value)l=this.objectToId(h.object)??y;else if(p===ys.ASSET_IS_ARCHIVED.value)u=y==="true"||y==="1";else{let v=this.predicateToPropertyName(p);v&&(i[v]=y)}}if(u&&!(r.includeArchived??this.config.includeArchivedByDefault))return null;let f=this.idToPath(e),d=a??this.pathToTitle(f);return{id:e,path:f,title:d,label:d,assetClass:s,isArchived:u,uri:e.startsWith("http")?e:void 0,prototype:c,parent:l,properties:Object.keys(i).length>0?i:void 0}}tripleToEdge(e,t,r){let i=t.predicate.value,s=this.objectToId(t.object);if(!s||!r.has(s)||s===e)return null;let a=this.predicateToEdgeType(i);if(!a)return null;let c=(0,L8.createEdgeId)(e,s,a,i),l=this.predicateToLabel(i);return{id:c,source:e,target:s,type:a,predicate:i,label:l}}predicateToEdgeType(e){return e===ys.EFFORT_PARENT.value?"hierarchy":e===ys.ASSET_PROTOTYPE.value?"prototype":e===ys.REFERENCES.value?"forward-link":e===ys.REFERENCED_BY.value?"backlink":e.includes("Asset_")||e.includes("Instance_")?null:"semantic"}predicateToLabel(e){let t=e.lastIndexOf("#"),r=e.lastIndexOf("/"),i=Math.max(t,r);return i>=0?e.substring(i+1):e}predicateToPropertyName(e){return this.predicateToLabel(e).replace(/_/g,"__").replace(/#/g,"_")}computeStats(e,t){let r={},i={backlink:0,"forward-link":0,hierarchy:0,prototype:0,semantic:0,reference:0};for(let c of e){let l=c.assetClass??"unknown";r[l]=(r[l]??0)+1}for(let c of t)i[c.type]=(i[c.type]??0)+1;let s=new Map,a=new Map;for(let c of t)a.set(c.source,(a.get(c.source)??0)+1),s.set(c.target,(s.get(c.target)??0)+1);for(let c of e)c.inDegree=s.get(c.id)??0,c.outDegree=a.get(c.id)??0,c.weight=c.inDegree+c.outDegree;return{nodeCount:e.length,edgeCount:t.length,nodesByClass:r,edgesByType:i,computedAt:Date.now()}}idToIRI(e){return e.startsWith("http://")||e.startsWith("https://")?new pf.IRI(e):new pf.IRI(`obsidian://vault/${encodeURIComponent(e)}`)}subjectToId(e){if(e instanceof pf.IRI){let t=e.value;return t.startsWith("obsidian://vault/")?decodeURIComponent(t.replace("obsidian://vault/","")):t}return e.toString()}objectToId(e){if(e instanceof pf.IRI){let t=e.value;return t.startsWith("obsidian://vault/")?decodeURIComponent(t.replace("obsidian://vault/","")):t}return null}getObjectValue(e){if(e instanceof N8.Literal||e instanceof pf.IRI)return e.value}idToPath(e){if(e.startsWith("obsidian://vault/"))return decodeURIComponent(e.replace("obsidian://vault/",""));if(e.startsWith("http://")||e.startsWith("https://")){let t=e.match(/\/([^/]+\.md)$/);if(t)return t[1]}return e}pathToTitle(e){return(e.split("/").pop()??e).replace(/\.md$/,"")}getCachedNode(e){return Date.now()-this.lastCacheUpdate>this.config.cacheTTL?(this.clearCache(),null):this.nodeCache.get(e)??null}cacheNode(e){this.nodeCache.set(e.id,e),this.lastCacheUpdate===0&&(this.lastCacheUpdate=Date.now())}invalidateCache(){this.clearCache()}};ua.GraphQueryService=Rv;ua.GraphQueryService=Rv=O8([(0,D8.injectable)(),F8("design:paramtypes",[Object,Object,Object])],Rv)});var k3=S(fa=>{"use strict";var k8=fa&&fa.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},M8=fa&&fa.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(fa,"__esModule",{value:!0});fa.TypeRegistry=void 0;var j8=fe(),_s=Ae(),L3=qt(),$8=Ne(),B8=$a(),ht=b0(),Pv=class{static{o(this,"TypeRegistry")}constructor(e=null,t={}){this.nodeTypes=new Map,this.edgeTypes=new Map,this.typeHierarchy=new Map,this.subscribers=new Set,this.discoveryComplete=!1,this.tripleStore=e,this.config={autoDiscoverTypes:t.autoDiscoverTypes??!0,includeBuiltInStyles:t.includeBuiltInStyles??!0,styleResolution:t.styleResolution??{mergeStyles:!0,inheritParentStyles:!0,defaultNodeStyle:ht.DEFAULT_NODE_STYLE,defaultEdgeStyle:ht.DEFAULT_EDGE_STYLE},maxInheritanceDepth:t.maxInheritanceDepth??10},this.config.includeBuiltInStyles&&this.registerBuiltInTypes()}registerNodeType(e){let r=this.nodeTypes.get(e.uri)?"type-updated":"type-added";this.nodeTypes.set(e.uri,e),e.parentTypes&&e.parentTypes.length>0&&this.typeHierarchy.set(e.uri,e.parentTypes),this.emit({type:r,typeUri:e.uri,definition:e})}registerEdgeType(e){let r=this.edgeTypes.get(e.uri)?"type-updated":"type-added";this.edgeTypes.set(e.uri,e),this.emit({type:r,typeUri:e.uri,definition:e})}unregisterType(e){let t=this.nodeTypes.delete(e),r=this.edgeTypes.delete(e);this.typeHierarchy.delete(e),(t||r)&&this.emit({type:"type-removed",typeUri:e})}getNodeType(e){return this.nodeTypes.get(e)}getEdgeType(e){return this.edgeTypes.get(e)}getAllNodeTypes(){return Array.from(this.nodeTypes.values())}getAllEdgeTypes(){return Array.from(this.edgeTypes.values())}getParentTypes(e,t=this.config.maxInheritanceDepth){let r=[],i=new Set,s=[{uri:e,currentDepth:0}];for(;s.length>0;){let a=s.shift();if(!a)break;let{uri:c,currentDepth:l}=a;if(i.has(c)||(i.add(c),l>=t))continue;let u=this.typeHierarchy.get(c)??[];for(let f of u)i.has(f)||(r.push(f),s.push({uri:f,currentDepth:l+1}))}return r}getChildTypes(e){let t=[];for(let[r,i]of this.typeHierarchy)i.includes(e)&&t.push(r);return t}isSubtypeOf(e,t){return e===t?!0:this.getParentTypes(e).includes(t)}resolveNodeType(e){let t=[],r="unknown",i="custom";if(e.assetClass){let c=this.normalizeTypeUri(e.assetClass);t.push(c),r=c,i="exo:Instance_class"}let s=e.properties?.[ht.RDF_TYPE_PREDICATES.RDF_TYPE];s&&!t.includes(s)&&(t.push(s),r==="unknown"&&(r=s,i="rdf:type"));for(let c of[...t]){let l=this.getParentTypes(c);for(let u of l)t.includes(u)||t.push(u)}let a=this.resolveNodeStyle(t);return{primaryType:r,types:t,resolvedStyle:a,source:i}}resolveEdgeType(e){let t=e.predicate??e.type,r=e.predicate?"rdf:type":"custom",i=this.resolveEdgeStyle(t);return{primaryType:t,resolvedStyle:i,source:r}}resolveNodeStyle(e){let{mergeStyles:t,defaultNodeStyle:r}=this.config.styleResolution,i={...r},s=[];for(let a of e){let c=this.nodeTypes.get(a);c&&s.push(c)}if(s.sort((a,c)=>a.priority-c.priority),t)for(let a of s)i=(0,ht.mergeNodeStyles)(i,a.style);else if(s.length>0){let a=s[s.length-1];i=(0,ht.mergeNodeStyles)(i,a.style)}return i}resolveEdgeStyle(e){let{defaultEdgeStyle:t}=this.config.styleResolution,r={...t},i=this.edgeTypes.get(e);return i&&(r=(0,ht.mergeEdgeStyles)(r,i.style)),r}filterNodes(e,t){return e.filter(r=>{let i=this.resolveNodeType(r);return!(t.includeNodeTypes&&t.includeNodeTypes.length>0&&!t.includeNodeTypes.some(a=>i.types.includes(a)||t.includeInferred&&this.isSubtypeOf(i.primaryType,a))||t.excludeNodeTypes&&t.excludeNodeTypes.length>0&&t.excludeNodeTypes.some(a=>i.types.includes(a)||t.includeInferred&&this.isSubtypeOf(i.primaryType,a))||!t.includeDeprecated&&this.nodeTypes.get(i.primaryType)?.deprecated)})}filterEdges(e,t){return e.filter(r=>{let i=r.predicate??r.type;return!(t.includeEdgeTypes&&t.includeEdgeTypes.length>0&&!t.includeEdgeTypes.includes(i)||t.excludeEdgeTypes&&t.excludeEdgeTypes.length>0&&t.excludeEdgeTypes.includes(i))})}groupNodesByType(e,t,r={}){let{groupByNodeType:i=!0,groupByParentType:s=!1,groupLevel:a=0,maxGroups:c=20,customGroupFn:l}=r,u=new Map;for(let h of e){let p=this.resolveNodeType(h),y;if(l?y=l(p.types):s&&p.types.length>a?y=p.types[a]??p.primaryType:i?y=p.primaryType:y="all",!u.has(y)){let b=this.nodeTypes.get(y)?.label??(0,ht.extractLocalName)(y);u.set(y,{nodeIds:new Set,label:b})}let v=u.get(y);v&&v.nodeIds.add(h.id)}let f=Array.from(u.entries()).map(([h,p])=>({id:h,label:p.label,nodeIds:Array.from(p.nodeIds)}));if(f.length>c){f.sort((y,v)=>v.nodeIds.length-y.nodeIds.length);let h=f.slice(0,c-1),p=f.slice(c-1).flatMap(y=>y.nodeIds);h.push({id:"other",label:"Other",nodeIds:p}),f=h}let d=new Map;for(let h of f)for(let p of h.nodeIds)d.set(p,h.id);return f.map((h,p)=>{let y=new Set(h.nodeIds),v=[],w=[];for(let I of t){let j=y.has(I.source),V=y.has(I.target);j&&V?I.id&&v.push(I.id):(j||V)&&I.id&&w.push(I.id)}let A=`hsl(${p*137.5%360}, 70%, 50%)`;return{id:h.id,label:h.label,nodeIds:h.nodeIds,internalEdgeIds:v,externalEdgeIds:w,color:A,stats:{nodeCount:h.nodeIds.length,internalEdgeCount:v.length,externalEdgeCount:w.length}}})}validateTypes(e,t){let r=[],i=[];for(let s of e){let a=this.resolveNodeType(s);if(a.primaryType!=="unknown"){let c=this.nodeTypes.get(a.primaryType);!c&&a.source!=="inferred"&&i.push({code:"UNREGISTERED_NODE_TYPE",message:`Node type "${a.primaryType}" is not registered`,elementId:s.id,suggestion:"Register the type with registerNodeType()"}),c?.deprecated&&i.push({code:"DEPRECATED_NODE_TYPE",message:`Node uses deprecated type "${a.primaryType}"`,elementId:s.id,suggestion:"Migrate to a non-deprecated type"})}else i.push({code:"MISSING_NODE_TYPE",message:"Node has no type information",elementId:s.id,suggestion:"Add exo:Instance_class or rdf:type to the node"})}for(let s of t){let a=s.predicate??s.type,c=this.edgeTypes.get(a);if(c?.domain&&c.domain.length>0){let l=e.find(u=>u.id===s.source);if(l){let u=this.resolveNodeType(l);c.domain.some(d=>u.types.includes(d))||r.push({code:"DOMAIN_VIOLATION",message:"Edge source does not match expected domain",elementId:s.id,expected:c.domain,actual:u.types})}}if(c?.range&&c.range.length>0){let l=e.find(u=>u.id===s.target);if(l){let u=this.resolveNodeType(l);c.range.some(d=>u.types.includes(d))||r.push({code:"RANGE_VIOLATION",message:"Edge target does not match expected range",elementId:s.id,expected:c.range,actual:u.types})}}}return{valid:r.length===0,errors:r,warnings:i}}async discoverTypes(){if(!this.tripleStore||this.discoveryComplete)return;let e=await this.tripleStore.match(void 0,new _s.IRI(ht.RDF_TYPE_PREDICATES.RDF_TYPE),void 0);for(let r of e){let i=this.getObjectValue(r.object);if(i&&(0,ht.isClassType)(i)){let s=this.getSubjectValue(r.subject);s&&await this.discoverNodeType(s)}}let t=await this.tripleStore.match(void 0,new _s.IRI(ht.RDF_TYPE_PREDICATES.RDFS_SUBCLASS_OF),void 0);for(let r of t){let i=this.getSubjectValue(r.subject),s=this.getObjectValue(r.object);if(i&&s){let a=this.typeHierarchy.get(i)??[];if(!a.includes(s)){a.push(s),this.typeHierarchy.set(i,a);let c=this.nodeTypes.get(i);c&&(c.parentTypes=a)}}}this.discoveryComplete=!0,this.emit({type:"hierarchy-updated",rootTypes:this.getRootTypes()})}subscribe(e){return this.subscribers.add(e),()=>this.subscribers.delete(e)}clear(){this.nodeTypes.clear(),this.edgeTypes.clear(),this.typeHierarchy.clear(),this.discoveryComplete=!1,this.config.includeBuiltInStyles&&this.registerBuiltInTypes()}registerBuiltInTypes(){for(let[e,t]of Object.entries(ht.BUILT_IN_NODE_STYLES))this.nodeTypes.set(e,{uri:e,label:(0,ht.extractLocalName)(e),source:"custom",style:(0,ht.mergeNodeStyles)(ht.DEFAULT_NODE_STYLE,t),priority:1});for(let[e,t]of Object.entries(ht.BUILT_IN_EDGE_STYLES))this.edgeTypes.set(e,{uri:e,label:(0,ht.extractLocalName)(e),source:"custom",style:(0,ht.mergeEdgeStyles)(ht.DEFAULT_EDGE_STYLE,t),priority:1})}async discoverNodeType(e){if(this.nodeTypes.has(e)||!this.tripleStore)return;let t=await this.tripleStore.match(new _s.IRI(e),new _s.IRI(ht.RDF_TYPE_PREDICATES.RDFS_LABEL),void 0),r=await this.tripleStore.match(new _s.IRI(e),new _s.IRI(ht.RDF_TYPE_PREDICATES.RDFS_COMMENT),void 0),i=t.length>0?this.getObjectValue(t[0].object)??(0,ht.extractLocalName)(e):(0,ht.extractLocalName)(e),s=r.length>0?this.getObjectValue(r[0].object):void 0,a="rdfs:Class",c=await this.tripleStore.match(new _s.IRI(e),new _s.IRI(ht.RDF_TYPE_PREDICATES.RDF_TYPE),void 0);for(let f of c)if(this.getObjectValue(f.object)===ht.RDF_TYPE_PREDICATES.OWL_CLASS){a="owl:Class";break}let l=ht.BUILT_IN_NODE_STYLES[e]??ht.BUILT_IN_NODE_STYLES[(0,ht.extractLocalName)(e)],u={uri:e,label:i,description:s,source:a,style:(0,ht.mergeNodeStyles)(ht.DEFAULT_NODE_STYLE,l??{}),priority:1};this.registerNodeType(u)}normalizeTypeUri(e){let t=e.match(/^\[\[(.+?)\]\]$/);return t?t[1]:e}getSubjectValue(e){if(e instanceof _s.IRI)return e.value;if(e instanceof L3.BlankNode)return`_:${e.id}`;if(typeof e=="object"&&e!==null&&"termType"in e)return e.toString()}getObjectValue(e){if(e instanceof $8.Literal||e instanceof _s.IRI)return e.value;if(e instanceof L3.BlankNode)return`_:${e.id}`}getRootTypes(){let e=new Set;for(let r of this.typeHierarchy.values())for(let i of r)e.add(i);let t=[];for(let r of this.nodeTypes.keys()){let i=this.typeHierarchy.get(r);(!i||i.length===0)&&e.has(r)&&t.push(r)}return t}emit(e){for(let t of this.subscribers)try{t(e)}catch(r){B8.LoggingService.error("TypeRegistry: error in subscriber callback",r instanceof Error?r:new Error(String(r)))}}};fa.TypeRegistry=Pv;fa.TypeRegistry=Pv=k8([(0,j8.injectable)(),M8("design:paramtypes",[Object,Object])],Pv)});var Ov=S(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.SPARQL_TEMPLATES=B.KNOWN_CLASSES=B.KNOWN_PROTOTYPES=B.EFFORT_STATUSES=B.ASSET_CLASSES=B.PREDICATES=B.SPARQL_PREFIXES=void 0;B.findClassByTerm=V8;B.getTemplateByName=U8;B.findMatchingTemplates=q8;B.fillTemplate=W8;B.validateParameters=G8;B.SPARQL_PREFIXES=`PREFIX exo: <https://exocortex.my/ontology/exo#>
218
218
  PREFIX ems: <https://exocortex.my/ontology/ems#>
219
219
  PREFIX ims: <https://exocortex.my/ontology/ims#>
220
220
  PREFIX gtd: <https://exocortex.my/ontology/gtd#>
@@ -367,14 +367,14 @@ SELECT ?s ?label ?class WHERE {
367
367
  FILTER NOT EXISTS { ?s exo:Asset_deprecatedBy ?newer }
368
368
  }
369
369
  ORDER BY ?label
370
- LIMIT ${this.config.defaultLimit}`,s="\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0442\u043E\u0447\u043D\u043E \u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0438\u0442\u044C \u0442\u0438\u043F \u0437\u0430\u043F\u0440\u043E\u0441\u0430. \u0412\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F \u043F\u043E\u0438\u0441\u043A \u043F\u043E \u043A\u043B\u044E\u0447\u0435\u0432\u043E\u043C\u0443 \u0441\u043B\u043E\u0432\u0443.";return t?.template&&t?.missingParams&&(s+=` \u0414\u043B\u044F \u0448\u0430\u0431\u043B\u043E\u043D\u0430 "${t.template.name}" \u043D\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432: ${t.missingParams.join(", ")}.`),{query:i,templateName:null,parameters:{keyword:r},confidence:.3,explanation:s,isFallback:!0,alternatives:[]}}calculateConfidence(e,t,r){let i=.5;for(let c of t.keywords)e.includes(c.toLowerCase())&&(i+=.1);let s=t.parameters.filter(c=>c.required),a=s.filter(c=>r[c.name]&&r[c.name].length>0);s.length>0?i+=a.length/s.length*.2:i+=.2;for(let[c]of Object.entries(this.prototypeMapping))if(e.includes(c)){i+=.1;break}return Math.min(i,1)}generateExplanation(e,t){let r=e.description;return Object.keys(t).length>0&&(r+=". \u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B: ",r+=Object.entries(t).filter(([,i])=>i&&i.length>0).map(([i,s])=>`${i}="${s}"`).join(", ")),r}getAvailableTemplates(){return[...Et.SPARQL_TEMPLATES]}getTemplate(e){return(0,Et.getTemplateByName)(e)}setConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}addTemplate(e){Et.SPARQL_TEMPLATES.push(e),K8.LoggingService.debug(`Added custom template: ${e.name}`)}getSuggestions(e){let t=[];return(e.includes("\u0441\u043A\u043E\u043B\u044C\u043A\u043E")||e.includes("\u0441\u0440\u0435\u0434\u043D")||e.includes("\u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043A"))&&!e.match(/\b20\d{2}\b/)&&!this.containsMonth(e)&&t.push("\u0414\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043F\u0435\u0440\u0438\u043E\u0434 \u0432\u0440\u0435\u043C\u0435\u043D\u0438 (\u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440: '\u0437\u0430 \u0434\u0435\u043A\u0430\u0431\u0440\u044C' \u0438\u043B\u0438 '\u0437\u0430 2025-12')"),(e.includes("\u0437\u0430\u0434\u0430\u0447")||e.includes("\u0430\u043A\u0442\u0438\u0432\u043D\u043E\u0441\u0442"))&&t.push("\u0414\u043B\u044F \u0442\u043E\u0447\u043D\u043E\u0433\u043E \u043F\u043E\u0438\u0441\u043A\u0430 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 UUID \u043F\u0440\u043E\u0442\u043E\u0442\u0438\u043F\u0430 \u0432\u043C\u0435\u0441\u0442\u043E \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F"),e.length<10&&t.push("\u0423\u0442\u043E\u0447\u043D\u0438\u0442\u0435 \u0437\u0430\u043F\u0440\u043E\u0441: \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u0435 \u0430\u043A\u0442\u0438\u0432\u043D\u043E\u0441\u0442\u0438 \u0438\u043B\u0438 \u0442\u0438\u043F \u0434\u0430\u043D\u043D\u044B\u0445"),t}containsMonth(e){return Object.keys(this.monthNames).some(t=>e.includes(t))}};ti.NLToSPARQLService=Fv;ti.NLToSPARQLService=Fv=z8([(0,Q8.injectable)(),H8("design:paramtypes",[Object])],Fv)});var $3=S(ji=>{"use strict";var Y8=ji&&ji.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},X8=ji&&ji.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},J8=ji&&ji.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(ji,"__esModule",{value:!0});ji.AnalyticsService=void 0;var j3=fe(),Z8=wt(),e$=Hr(),t$=ei(),Dv=class{static{o(this,"AnalyticsService")}constructor(e){this.vault=e,this.frontmatterService=new t$.FrontmatterService}getDefaultPeriod(){let e=new Date,t=new Date;return t.setDate(t.getDate()-30),{startDate:t,endDate:e}}async getEffortsInPeriod(e,t){let i=this.vault.getAllFiles().filter(a=>a.path.endsWith(".md")),s=[];for(let a of i)try{let c=await this.vault.read(a),l=this.extractEffortData(a,c);if(!l)continue;if(l.startTimestamp){if(l.startTimestamp<e.startDate||l.startTimestamp>e.endDate)continue}else continue;if(t?.prototypeUri&&l.prototypeUri!==t.prototypeUri||t?.labelContains&&!l.label.toLowerCase().includes(t.labelContains.toLowerCase())||t?.status&&l.status&&!t.status.includes(l.status))continue;s.push(l)}catch{continue}return s}extractEffortData(e,t){let r=this.frontmatterService.parse(t);if(!r.exists)return null;let i=this.frontmatterService.getPropertyValue(r.content,"exo__Asset_label");if(!i)return null;let s=this.frontmatterService.getPropertyValue(r.content,"ems__Effort_status"),a=this.frontmatterService.getPropertyValue(r.content,"ems__Effort_startTimestamp"),c=this.frontmatterService.getPropertyValue(r.content,"ems__Effort_endTimestamp"),l=this.frontmatterService.getPropertyValue(r.content,"exo__Asset_prototype"),u=this.extractInstanceClass(r.content);return{path:e.path,label:this.cleanWikiLink(i),status:s?this.cleanWikiLink(s):null,startTimestamp:a?this.parseTimestamp(a):null,endTimestamp:c?this.parseTimestamp(c):null,prototypeUri:l?this.cleanWikiLink(l):null,instanceClass:u}}extractInstanceClass(e){let t=e.match(/exo__Instance_class:\s*\n((?:\s*-\s*.*\n?)+)/);if(t)return t[1].split(`
371
- `).filter(s=>s.trim()).map(s=>this.cleanWikiLink(s.replace(/^\s*-\s*/,"").trim()));let r=this.frontmatterService.getPropertyValue(e,"exo__Instance_class");return r?this.cleanWikiLink(r):null}cleanWikiLink(e){return e.replace(/^\[\[/,"").replace(/\]\]$/,"").replace(/^"/,"").replace(/"$/,"")}parseTimestamp(e){if(!e)return null;let t=e.replace(/^"/,"").replace(/"$/,""),r=new Date(t);return isNaN(r.getTime())?null:r}calculateDurationStats(e){let t=e.filter(f=>f.startTimestamp&&f.endTimestamp).map(f=>(f.endTimestamp.getTime()-f.startTimestamp.getTime())/6e4).filter(f=>f>0);if(t.length===0)return{count:0,totalMinutes:0,averageMinutes:0,minMinutes:0,maxMinutes:0,stdDevMinutes:0};let r=t.reduce((f,d)=>f+d,0),i=r/t.length,s=Math.min(...t),a=Math.max(...t),l=t.map(f=>Math.pow(f-i,2)).reduce((f,d)=>f+d,0)/t.length,u=Math.sqrt(l);return{count:t.length,totalMinutes:Math.round(r),averageMinutes:Math.round(i*10)/10,minMinutes:Math.round(s),maxMinutes:Math.round(a),stdDevMinutes:Math.round(u*10)/10}}calculateDailyAggregates(e){let t=new Map;for(let r of e){if(!r.startTimestamp)continue;let i=e$.DateFormatter.toDateString(r.startTimestamp);t.has(i)||t.set(i,{count:0,totalMinutes:0});let s=t.get(i);if(s.count++,r.endTimestamp){let a=r.endTimestamp.getTime()-r.startTimestamp.getTime();s.totalMinutes+=a/6e4}}return Array.from(t.entries()).map(([r,i])=>({date:r,count:i.count,totalMinutes:Math.round(i.totalMinutes),averageMinutes:i.count>0?Math.round(i.totalMinutes/i.count*10)/10:0})).sort((r,i)=>r.date.localeCompare(i.date))}calculateHourlyDistribution(e){let t=new Array(24).fill(0);for(let i of e){if(!i.startTimestamp)continue;let s=i.startTimestamp.getHours();t[s]++}let r=t.reduce((i,s)=>i+s,0);return t.map((i,s)=>({hour:s,count:i,percentage:r>0?Math.round(i/r*1e3)/10:0}))}calculateWeekdayDistribution(e){let t=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],r=new Array(7).fill(0);for(let s of e){if(!s.startTimestamp)continue;let a=s.startTimestamp.getDay();r[a]++}let i=r.reduce((s,a)=>s+a,0);return r.map((s,a)=>({dayOfWeek:a,dayName:t[a],count:s,percentage:i>0?Math.round(s/i*1e3)/10:0}))}async analyzeSleep(e=this.getDefaultPeriod()){let t=await this.getEffortsInPeriod(e,{labelContains:"\u041F\u043E\u0441\u043F\u0430\u0442\u044C"}),r=this.calculateDurationStats(t),i=this.calculateDailyAggregates(t),s=[],a=[];for(let d of t){if(d.startTimestamp){let h=d.startTimestamp.getHours()*60+d.startTimestamp.getMinutes();s.push(h<360?h+1440:h)}if(d.endTimestamp){let h=d.endTimestamp.getHours()*60+d.endTimestamp.getMinutes();a.push(h)}}let c=s.length>0?s.reduce((d,h)=>d+h,0)/s.length:0,l=a.length>0?a.reduce((d,h)=>d+h,0)/a.length:0,u=s.length>1?Math.sqrt(s.map(d=>Math.pow(d-c,2)).reduce((d,h)=>d+h,0)/s.length):0,f=a.length>1?Math.sqrt(a.map(d=>Math.pow(d-l,2)).reduce((d,h)=>d+h,0)/a.length):0;return{period:e,stats:r,dailyData:i,averageBedtime:this.minutesToTimeString(c%1440),averageWakeTime:this.minutesToTimeString(l),bedtimeVariabilityMinutes:Math.round(u),wakeTimeVariabilityMinutes:Math.round(f)}}minutesToTimeString(e){let t=Math.floor(e/60),r=Math.round(e%60);return`${String(t).padStart(2,"0")}:${String(r).padStart(2,"0")}`}async analyzeTaskCompletion(e=this.getDefaultPeriod()){let r=(await this.getEffortsInPeriod(e)).filter(u=>Array.isArray(u.instanceClass)?u.instanceClass.some(f=>f.includes("ems__Task")):u.instanceClass?.includes("ems__Task")??!1),i=r.filter(u=>u.status?.includes("ems__EffortStatusDone")),s=r.filter(u=>u.status?.includes("ems__EffortStatusTrashed")),a=i.filter(u=>u.startTimestamp&&u.endTimestamp).map(u=>(u.endTimestamp.getTime()-u.startTimestamp.getTime())/6e4),c=a.length>0?a.reduce((u,f)=>u+f,0)/a.length:0,l=this.calculateDailyAggregates(i);return{period:e,totalTasks:r.length,completedTasks:i.length,trashedTasks:s.length,completionRate:r.length>0?Math.round(i.length/r.length*1e3)/10:0,averageCompletionTimeMinutes:Math.round(c*10)/10,dailyCompletions:l}}async analyzeActivityFrequency(e,t=this.getDefaultPeriod()){let r=await this.getEffortsInPeriod(t,{labelContains:e}),i=this.calculateDurationStats(r),s=this.calculateDailyAggregates(r),a=this.calculateHourlyDistribution(r),c=this.calculateWeekdayDistribution(r);return{activityLabel:e,period:t,stats:i,dailyData:s,hourlyDistribution:a,weekdayDistribution:c}}async getActivitySummary(e=this.getDefaultPeriod()){let t=await this.getEffortsInPeriod(e),r=new Map;for(let s of t){let a=s.label.split(" ")[0];r.has(a)||r.set(a,[]),r.get(a).push(s)}let i=new Map;for(let[s,a]of r)i.set(s,this.calculateDurationStats(a));return i}};ji.AnalyticsService=Dv;ji.AnalyticsService=Dv=Y8([(0,j3.injectable)(),J8(0,(0,j3.inject)(Z8.DI_TOKENS.IVaultAdapter)),X8("design:paramtypes",[Object])],Dv)});var B3=S(Go=>{"use strict";var r$=Go&&Go.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s};Object.defineProperty(Go,"__esModule",{value:!0});Go.TrendDetectionService=void 0;var n$=fe(),Nv=class{static{o(this,"TrendDetectionService")}constructor(){this.TREND_THRESHOLD=.05,this.ANOMALY_THRESHOLD_STD=2,this.STRONG_CORRELATION_THRESHOLD=.7,this.MODERATE_CORRELATION_THRESHOLD=.4}analyzeTrend(e,t="averageMinutes"){if(e.length<3)return{direction:"stable",strength:"none",slope:0,rSquared:0,changePercentage:0,insight:"Insufficient data for trend analysis (need at least 3 data points)"};let r=e.map(h=>h[t]),{slope:i,rSquared:s}=this.linearRegression(r),a=r[0]||1,l=((r[r.length-1]||0)-a)/a*100,u;Math.abs(l)<this.TREND_THRESHOLD*100?u="stable":i>0?u="increasing":u="decreasing";let f;s>=.7?f="strong":s>=.4?f="moderate":s>=.2?f="weak":f="none";let d=this.generateTrendInsight(u,f,l);return{direction:u,strength:f,slope:Math.round(i*100)/100,rSquared:Math.round(s*100)/100,changePercentage:Math.round(l*10)/10,insight:d}}linearRegression(e){let t=e.length;if(t===0)return{slope:0,intercept:0,rSquared:0};let r=(t-1)/2,i=e.reduce((h,p)=>h+p,0)/t,s=0,a=0;for(let h=0;h<t;h++)s+=(h-r)*(e[h]-i),a+=Math.pow(h-r,2);let c=a!==0?s/a:0,l=i-c*r,u=0,f=0;for(let h=0;h<t;h++){let p=l+c*h;u+=Math.pow(e[h]-p,2),f+=Math.pow(e[h]-i,2)}let d=f!==0?1-u/f:0;return{slope:c,intercept:l,rSquared:Math.max(0,d)}}generateTrendInsight(e,t,r){if(t==="none"||e==="stable")return"Metric is relatively stable with no significant trend.";let i=t==="strong"?"clearly":t==="moderate"?"moderately":"slightly",s=e==="increasing"?"increasing":"decreasing",a=`${Math.abs(Math.round(r))}%`;return`Metric is ${i} ${s} (${a} change over the period).`}detectAnomalies(e,t="averageMinutes"){if(e.length<5)return[];let r=e.map(c=>c[t]),{mean:i,stdDev:s}=this.calculateStats(r),a=[];for(let c=0;c<e.length;c++){let l=r[c],u=(l-i)/(s||1);if(Math.abs(u)>=this.ANOMALY_THRESHOLD_STD){let f=this.determineAnomalySeverity(u),d=this.determineAnomalyType(u,l,i);a.push({date:e[c].date,value:l,expectedValue:Math.round(i*10)/10,deviation:Math.round(u*100)/100,severity:f,type:d,description:this.generateAnomalyDescription(d,f,u,l,i)})}}return a}calculateStats(e){if(e.length===0)return{mean:0,stdDev:0};let t=e.reduce((a,c)=>a+c,0)/e.length,i=e.map(a=>Math.pow(a-t,2)).reduce((a,c)=>a+c,0)/e.length,s=Math.sqrt(i);return{mean:t,stdDev:s}}determineAnomalySeverity(e){let t=Math.abs(e);return t>=3?"critical":t>=2.5?"warning":"info"}determineAnomalyType(e,t,r){return t>r&&e>0?"spike":t<r&&e<0?"drop":"outlier"}generateAnomalyDescription(e,t,r,i,s){let a=t==="critical"?"Significant":t==="warning"?"Notable":"Minor",c=e==="spike"?"spike":e==="drop"?"drop":"unusual value",l=Math.round((i-s)/s*100);return`${a} ${c} detected: ${Math.round(i)} (${l>0?"+":""}${l}% from average of ${Math.round(s)}, ${r.toFixed(1)}\u03C3 from mean).`}calculateCorrelation(e,t,r,i){let s=Math.min(e.length,t.length);if(s<5)return{metric1:r,metric2:i,coefficient:0,strength:"none",direction:"none",insight:"Insufficient data for correlation analysis."};let{mean:a,stdDev:c}=this.calculateStats(e.slice(0,s)),{mean:l,stdDev:u}=this.calculateStats(t.slice(0,s));if(c===0||u===0)return{metric1:r,metric2:i,coefficient:0,strength:"none",direction:"none",insight:"One or both metrics have no variation."};let f=0;for(let w=0;w<s;w++)f+=(e[w]-a)/c*((t[w]-l)/u);let d=f/s,h=Math.abs(d),p;h>=this.STRONG_CORRELATION_THRESHOLD?p="strong":h>=this.MODERATE_CORRELATION_THRESHOLD?p="moderate":h>=.2?p="weak":p="none";let y=p==="none"?"none":d>0?"positive":"negative",v=this.generateCorrelationInsight(r,i,d,p,y);return{metric1:r,metric2:i,coefficient:Math.round(d*100)/100,strength:p,direction:y,insight:v}}generateCorrelationInsight(e,t,r,i,s){if(i==="none")return`No significant correlation found between ${e} and ${t}.`;let a=i==="strong"?"strongly":i==="moderate"?"moderately":"weakly",c=s==="positive"?"When one increases, the other tends to increase":"When one increases, the other tends to decrease";return`${e} and ${t} are ${a} ${s}ly correlated (r=${r.toFixed(2)}). ${c}.`}analyzeWeeklyPattern(e,t="averageMinutes"){let r=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],i={};for(let l of e){let f=new Date(l.date).getDay();i[f]||(i[f]=[]),i[f].push(l[t])}let s=[],a=0,c=1/0;for(let l=0;l<7;l++){let u=i[l]||[],{mean:f,stdDev:d}=this.calculateStats(u);f>a&&(a=f),f<c&&u.length>0&&(c=f),s.push({dayOfWeek:l,dayName:r[l],averageValue:Math.round(f*10)/10,deviation:Math.round(d*10)/10,isHighPoint:!1,isLowPoint:!1})}for(let l of s)l.averageValue===a&&a>0&&(l.isHighPoint=!0),l.averageValue===c&&c!==1/0&&(l.isLowPoint=!0);return s}generateInsights(e,t,r,i,s){let a=[];t.strength!=="none"&&t.direction!=="stable"&&a.push({type:"trend",severity:t.direction==="decreasing"?"warning":"info",title:`${s} is ${t.direction}`,description:t.insight,metric:s,value:t.changePercentage,actionable:t.direction==="decreasing"});let c=r.filter(f=>f.severity==="critical");if(c.length>0)for(let f of c)a.push({type:"anomaly",severity:"critical",title:`Unusual ${f.type} detected on ${f.date}`,description:f.description,metric:s,value:f.value,actionable:!0});let l=i.filter(f=>f.isHighPoint).map(f=>f.dayName),u=i.filter(f=>f.isLowPoint).map(f=>f.dayName);return l.length>0&&u.length>0&&a.push({type:"pattern",severity:"info",title:"Weekly pattern detected",description:`${s} tends to be highest on ${l.join(", ")} and lowest on ${u.join(", ")}.`,metric:s,actionable:!1}),e.stdDevMinutes>e.averageMinutes*.5&&a.push({type:"recommendation",severity:"warning",title:"High variability detected",description:`${s} shows high variability (std dev: ${e.stdDevMinutes} min). Consider maintaining a more consistent schedule.`,metric:s,value:e.stdDevMinutes,actionable:!0}),a}detectSuddenChanges(e,t="averageMinutes",r=50){let i=[];for(let s=1;s<e.length;s++){let a=e[s-1][t],c=e[s][t];if(a===0)continue;let l=(c-a)/a*100;Math.abs(l)>=r&&i.push({date:e[s].date,previousValue:a,currentValue:c,changePercent:Math.round(l*10)/10})}return i}};Go.TrendDetectionService=Nv;Go.TrendDetectionService=Nv=r$([(0,n$.injectable)()],Nv)});var U3=S(ri=>{"use strict";var i$=ri&&ri.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},s$=ri&&ri.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ri,"__esModule",{value:!0});ri.AutocompleteService=ri.DEFAULT_AUTOCOMPLETE_CONFIG=void 0;var a$=fe(),fm=yr(),mf=Ae(),V3=Ne();ri.DEFAULT_AUTOCOMPLETE_CONFIG={limit:10,activeBoost:20,recencyBoost:10,recencyDays:7};var Lv=class{static{o(this,"AutocompleteService")}constructor(e,t){this.tripleStore=e,this.config={...ri.DEFAULT_AUTOCOMPLETE_CONFIG,...t}}async getSuggestions(e,t,r){let i={...this.config,...r},s=await this.getPropertyRange(e);if(s.length===0){let l=this.inferClassFromProperty(e);l&&s.push(l)}let a=[];for(let l of s){let u=await this.getAssetsOfClass(l);a.push(...u)}return a.map(l=>({...l,matchScore:this.calculateMatchScore(l,t,i)})).filter(l=>l.matchScore>0).sort((l,u)=>u.matchScore-l.matchScore).slice(0,i.limit)}async getSuggestionsByClass(e,t,r){let i={...this.config,...r},s=[];for(let c of e){let l=await this.getAssetsOfClass(c);s.push(...l)}return s.map(c=>({...c,matchScore:this.calculateMatchScore(c,t,i)})).filter(c=>c.matchScore>0).sort((c,l)=>l.matchScore-c.matchScore).slice(0,i.limit)}async getPropertyRange(e){let t=this.toFullIri(e),r=[],i=await this.tripleStore.match(new mf.IRI(t),fm.Namespace.RDFS.term("range"),void 0);for(let s of i)if(s.object instanceof mf.IRI){let a=this.toClassName(s.object.value);a&&r.push(a)}return r}async getAssetsOfClass(e){let t=this.toFullIri(e),r=[],i=await this.tripleStore.match(void 0,fm.Namespace.RDF.term("type"),new mf.IRI(t));for(let s of i)if(s.subject instanceof mf.IRI){let a=await this.buildSuggestion(s.subject,e);a&&r.push(a)}return r}async buildSuggestion(e,t){let r=await this.tripleStore.match(e,fm.Namespace.EXO.term("Asset_label"),void 0),i="";for(let c of r)if(c.object instanceof V3.Literal){i=c.object.value;break}if(i||(i=this.extractLabelFromUri(e.value)),!i)return null;let s=await this.checkIfActive(e),a=this.extractPathFromUri(e.value);return{label:i,uri:e.value,path:a,assetClass:t,isActive:s,matchScore:0}}async checkIfActive(e){let t=await this.tripleStore.match(e,fm.Namespace.EMS.term("Effort_status"),void 0);for(let r of t){let i=r.object instanceof V3.Literal||r.object instanceof mf.IRI?r.object.value:"";if(i.includes("Active")||i.includes("EffortStatus_Active"))return!0}return!1}calculateMatchScore(e,t,r){if(!t||t.length===0)return e.isActive?100+r.activeBoost:100;let i=e.label.toLowerCase(),s=t.toLowerCase(),a=0;if(i===s)a=100;else if(i.startsWith(s))a=80;else if(i.includes(s))a=60;else if(this.fuzzyMatch(s,i))a=40;else return 0;if(e.isActive&&(a+=r.activeBoost),e.lastModified){let c=(Date.now()-e.lastModified)/864e5;c<=r.recencyDays&&(a+=r.recencyBoost*(1-c/r.recencyDays))}return a}fuzzyMatch(e,t){let r=0;for(let i=0;i<t.length&&r<e.length;i++)t[i]===e[r]&&r++;return r===e.length}inferClassFromProperty(e){let t=e.toLowerCase();return t.includes("project")?"ems__Project":t.includes("area")?"ems__Area":t.includes("task")?"ems__Task":t.includes("effort")?"ems__Effort":null}toFullIri(e){if(e.startsWith("http://")||e.startsWith("https://"))return e;let t=e.match(/^([a-z]+)__(.+)$/);if(t){let[,r,i]=t;switch(r){case"ems":return`https://exocortex.my/ontology/ems#${i}`;case"exo":return`https://exocortex.my/ontology/exo#${i}`;default:return`https://exocortex.my/ontology/${r}#${i}`}}return e}toClassName(e){let t=e.match(/https:\/\/exocortex\.my\/ontology\/([a-z]+)#(.+)$/);if(t){let[,r,i]=t;return`${r}__${i}`}return null}extractLabelFromUri(e){if(e.startsWith("obsidian://")){let r=decodeURIComponent(e),i=r.lastIndexOf("/");if(i>=0){let s=r.substring(i+1);return s.endsWith(".md")&&(s=s.substring(0,s.length-3)),s}}let t=e.lastIndexOf("/");if(t>=0){let r=e.substring(t+1);return r.endsWith(".md")&&(r=r.substring(0,r.length-3)),r}return""}extractPathFromUri(e){if(e.startsWith("obsidian://vault/")){let t=decodeURIComponent(e.substring(17)),r=t.indexOf("/");return r>=0?t.substring(r+1):t}return e}};ri.AutocompleteService=Lv;ri.AutocompleteService=Lv=i$([(0,a$.injectable)(),s$("design:paramtypes",[Object,Object])],Lv)});var W3=S($i=>{"use strict";var o$=$i&&$i.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},c$=$i&&$i.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},l$=$i&&$i.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty($i,"__esModule",{value:!0});$i.DailyReviewService=void 0;var q3=fe(),u$=wt(),hl=Hr(),f$=ei(),d$=Tn(),kv=class{static{o(this,"DailyReviewService")}constructor(e){this.vault=e,this.frontmatterService=new f$.FrontmatterService}async getPractices(){let e=this.vault.getAllFiles(),t=[],r=hl.DateFormatter.toDateString(new Date);for(let i of e)if(i.path.endsWith(".md"))try{let s=await this.vault.read(i),a=this.frontmatterService.parse(s);if(!a.exists)continue;let c=this.frontmatterService.getPropertyValue(a.content,"exo__Instance_class");if(!this.isTaskPrototype(c))continue;let l=this.frontmatterService.getPropertyValue(a.content,"exo__Asset_uid");if(!l)continue;let u=l.replace(/"/g,""),f=this.frontmatterService.getPropertyValue(a.content,"exo__Asset_label");if(!f)continue;let d=f.replace(/"/g,""),p=this.frontmatterService.getPropertyValue(a.content,"ems__Recurring_rule")?.replace(/"/g,"")||null,y=this.frontmatterService.getPropertyValue(a.content,"ems__Task_estimatedDuration"),v=null;if(y){let b=parseInt(y,10);isNaN(b)||(v=b)}let w=await this.findTodayInstance(u,r);t.push({uid:u,label:d,path:i.path,recurringRule:p,estimatedDuration:v,doneToday:w?.status==="done",inProgressToday:w?.status==="doing",todayInstancePath:w?.path||null})}catch{continue}return t.sort((i,s)=>i.label.localeCompare(s.label))}async getDailyReviewSummary(e){let t=e||new Date,r=hl.DateFormatter.toDateString(t),i=new Date(t);i.setHours(0,0,0,0);let s=new Date(t);s.setHours(23,59,59,999);let a=this.vault.getAllFiles(),c=0,l=0,u=0,f=0;for(let y of a)if(y.path.endsWith(".md"))try{let v=await this.vault.read(y),w=this.frontmatterService.parse(v);if(!w.exists)continue;let b=this.frontmatterService.getPropertyValue(w.content,"exo__Instance_class");if(!this.isTask(b))continue;let A=this.frontmatterService.getPropertyValue(w.content,"ems__Effort_plannedStartTimestamp"),I=this.frontmatterService.getPropertyValue(w.content,"ems__Effort_startTimestamp"),j=I?new Date(I):null,V=A?new Date(A):null;if(!(V&&V>=i&&V<=s||j&&j>=i&&j<=s))continue;c++;let z=this.frontmatterService.getPropertyValue(w.content,"ems__Effort_status");if(this.isDoneStatus(z)){l++;let G=this.frontmatterService.getPropertyValue(w.content,"ems__Effort_endTimestamp");if(I&&G){let F=this.calculateDurationMinutes(I,G);f+=F}}else this.isDoingStatus(z)&&u++}catch{continue}let h=(await this.getPractices()).filter(y=>!y.doneToday&&y.recurringRule),p=c>0?Math.round(l/c*100):0;return{date:r,plannedCount:c,completedCount:l,inProgressCount:u,practicesDue:h,completionPercentage:p,totalTimeMinutes:Math.round(f)}}async quickCapture(e,t=!0,r){let i=(0,d$.v4)(),s=hl.DateFormatter.toISOTimestamp(new Date),a=`${i}.md`,c="03 Knowledge/kitelev",l=["---",`exo__Asset_uid: "${i}"`,`exo__Asset_label: "${e}"`,'exo__Instance_class: "[[ems__Task]]"'];if(r?.prototypeUid){let d=this.buildPrototypeUri(r.prototypeUid);l.push(`exo__Asset_prototype: "${d}"`)}if(r?.areaUid){let d=this.buildAssetUri(r.areaUid);l.push(`ems__Effort_area: "${d}"`)}if(r?.parentUid){let d=this.buildAssetUri(r.parentUid);l.push(`ems__Effort_parent: "${d}"`)}t?(l.push('ems__Effort_status: "[[ems__EffortStatusDoing]]"'),l.push(`ems__Effort_startTimestamp: ${s}`)):l.push('ems__Effort_status: "[[ems__EffortStatusBacklog]]"'),l.push("---","","");let u=l.join(`
372
- `),f=`${c}/${a}`;return await this.vault.create(f,u),{path:f,uid:i,label:e,started:t}}async createFromPractice(e){let r=(await this.getPractices()).find(a=>a.uid===e.prototypeUid);if(!r)throw new Error(`Practice not found: ${e.prototypeUid}`);if(r.doneToday)throw new Error(`Practice "${r.label}" already completed today`);if(r.inProgressToday&&r.todayInstancePath)return{path:r.todayInstancePath,uid:e.prototypeUid,label:r.label,started:!0};let i=hl.DateFormatter.toDateString(new Date),s=e.label||`${r.label} ${i}`;return this.quickCapture(s,e.startImmediately??!0,{prototypeUid:e.prototypeUid,areaUid:e.areaUid,parentUid:e.parentUid})}async markPracticeDone(e){let r=(await this.getPractices()).find(u=>u.uid===e);if(!r)throw new Error(`Practice not found: ${e}`);if(r.doneToday)return;if(!r.todayInstancePath)throw new Error(`No active instance for practice "${r.label}" today`);let i=this.vault.getAbstractFileByPath(r.todayInstancePath);if(!i||!("basename"in i))throw new Error(`File not found: ${r.todayInstancePath}`);let s=i,a=await this.vault.read(s),c=hl.DateFormatter.toISOTimestamp(new Date),l=this.frontmatterService.updateProperty(a,"ems__Effort_status",'"[[ems__EffortStatusDone]]"');l=this.frontmatterService.updateProperty(l,"ems__Effort_endTimestamp",c),l=this.frontmatterService.updateProperty(l,"ems__Effort_resolutionTimestamp",c),await this.vault.modify(s,l)}async findTodayInstance(e,t){let r=this.vault.getAllFiles();for(let i of r)if(i.path.endsWith(".md"))try{let s=await this.vault.read(i),a=this.frontmatterService.parse(s);if(!a.exists)continue;let c=this.frontmatterService.getPropertyValue(a.content,"exo__Asset_prototype");if(!c||!c.includes(e))continue;let l=this.frontmatterService.getPropertyValue(a.content,"exo__Asset_label"),u=this.frontmatterService.getPropertyValue(a.content,"ems__Effort_startTimestamp"),f=l?.includes(t),d=u?new Date(u):null,h=d&&hl.DateFormatter.toDateString(d)===t;if(!f&&!h)continue;let p=this.frontmatterService.getPropertyValue(a.content,"ems__Effort_status");return this.isDoneStatus(p)?{path:i.path,status:"done"}:this.isDoingStatus(p)?{path:i.path,status:"doing"}:{path:i.path,status:"other"}}catch{continue}return null}isTaskPrototype(e){return e?e.includes("ems__TaskPrototype")||e.includes("TaskPrototype"):!1}isTask(e){return e?(e.includes("ems__Task")||e.includes("[[ems__Task]]"))&&!e.includes("Prototype"):!1}isDoneStatus(e){return e?e.includes("Done")||e.includes("EffortStatusDone"):!1}isDoingStatus(e){return e?e.includes("Doing")||e.includes("EffortStatusDoing"):!1}calculateDurationMinutes(e,t){let r=new Date(e);return(new Date(t).getTime()-r.getTime())/1e3/60}buildPrototypeUri(e){return`obsidian://vault/03%20Knowledge%2Fkitelev%2F${e}.md`}buildAssetUri(e){return`obsidian://vault/03%20Knowledge%2Fkitelev%2F${e}.md`}};$i.DailyReviewService=kv;$i.DailyReviewService=kv=o$([(0,q3.injectable)(),l$(0,(0,q3.inject)(u$.DI_TOKENS.IVaultAdapter)),c$("design:paramtypes",[Object])],kv)});var jv=S(Kr=>{"use strict";var h$=Kr&&Kr.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},p$=Kr&&Kr.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},m$=Kr&&Kr.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Kr,"__esModule",{value:!0});Kr.CriticalityZoneService=Kr.CriticalityZoneUUIDs=void 0;var G3=fe(),g$=ei(),y$=wt();Kr.CriticalityZoneUUIDs={TODAY:"e266a2e9-9eb0-431d-b1fe-b95b9d3e9a3f",THIS_WEEK:"c7f1a968-0959-4ac7-ac82-31b0cdc2aba7",SOMEDAY:"6968a0fc-7a41-4393-82b1-17d767c7ad7c"};var Mv=class{static{o(this,"CriticalityZoneService")}constructor(e){this.vault=e,this.frontmatterService=new g$.FrontmatterService}async setZoneToday(e){await this.setZone(e,Kr.CriticalityZoneUUIDs.TODAY)}async setZoneThisWeek(e){await this.setZone(e,Kr.CriticalityZoneUUIDs.THIS_WEEK)}async setZoneSomeday(e){await this.setZone(e,Kr.CriticalityZoneUUIDs.SOMEDAY)}async setZone(e,t){let r=await this.vault.read(e),i=this.frontmatterService.updateProperty(r,"ems__Task_zone",`"[[${t}]]"`);await this.vault.modify(e,i)}};Kr.CriticalityZoneService=Mv;Kr.CriticalityZoneService=Mv=h$([(0,G3.injectable)(),m$(0,(0,G3.inject)(y$.DI_TOKENS.IVaultAdapter)),p$("design:paramtypes",[Object])],Mv)});var z3=S(dm=>{"use strict";Object.defineProperty(dm,"__esModule",{value:!0});dm.EffortSortingHelpers=void 0;var $v=class n{static{o(this,"EffortSortingHelpers")}static getTimeFromTimestamp(e){if(!e)return"00:00:00";let t=new Date(e);if(isNaN(t.getTime()))return"00:00:00";let r=String(t.getHours()).padStart(2,"0"),i=String(t.getMinutes()).padStart(2,"0"),s=String(t.getSeconds()).padStart(2,"0");return`${r}:${i}:${s}`}static sortByStartTime(e,t){let r=n.getTimeFromTimestamp(e.startTimestamp),i=n.getTimeFromTimestamp(t.startTimestamp),s=r==="00:00:00",a=i==="00:00:00";return s&&!a?1:!s&&a?-1:r.localeCompare(i)}static sortByPriority(e,t){if(e.isTrashed!==t.isTrashed)return e.isTrashed?1:-1;if(e.isDone!==t.isDone)return e.isDone?1:-1;let r=typeof e.metadata.ems__Effort_votes=="number"?e.metadata.ems__Effort_votes:0,i=typeof t.metadata.ems__Effort_votes=="number"?t.metadata.ems__Effort_votes:0;return r!==i?i-r:e.startTime&&t.startTime?e.startTime.localeCompare(t.startTime):e.startTime?-1:t.startTime?1:0}};dm.EffortSortingHelpers=$v});var H3=S(hm=>{"use strict";Object.defineProperty(hm,"__esModule",{value:!0});hm.FilenameValidator=void 0;var zo=class{static{o(this,"FilenameValidator")}static validate(e,t={}){let{maxLength:r=this.DEFAULT_MAX_LENGTH,replacementChar:i=this.DEFAULT_REPLACEMENT,allowEmpty:s=!1}=t,a=[];if(!e||e.trim().length===0)return s||a.push("Filename cannot be empty"),{valid:a.length===0,sanitized:"",errors:a};e.endsWith(" ")&&a.push("Filename should not end with a space");let c=e.trim();this.INVALID_CHARS_PATTERN.test(c)&&a.push('Filename contains invalid characters: / \\ : * ? " < > |');let l=this.getBaseName(c);this.RESERVED_NAMES.has(l.toUpperCase())&&a.push(`"${l}" is a reserved filename on Windows`),c.length>r&&a.push(`Filename exceeds maximum length of ${r} characters`),c.startsWith(".")&&a.push("Filename should not start with a dot"),c.endsWith(".")&&a.push("Filename should not end with a dot");let u=this.sanitize(e,{maxLength:r,replacementChar:i});return{valid:a.length===0,sanitized:u,errors:a}}static sanitize(e,t={}){let{maxLength:r=this.DEFAULT_MAX_LENGTH,replacementChar:i=this.DEFAULT_REPLACEMENT}=t;if(!e||e.trim().length===0)return"";let s=e.trim();for(s=s.replace(this.INVALID_CHARS_PATTERN,i);s.startsWith(".")&&s.length>1;)s=s.substring(1);for(;s.length>0&&(s.endsWith(".")||s.endsWith(" "));)s=s.slice(0,-1);for(s.includes(i)&&(s=s.split(i).filter(u=>u!=="").join(i));s.startsWith(i);)s=s.slice(i.length);for(;s.endsWith(i);)s=s.slice(0,-i.length);let a=this.getBaseName(s);if(this.RESERVED_NAMES.has(a.toUpperCase())){let c=this.getExtension(s);s=a+i+c}if(s.length>r)for(s=s.slice(0,r);s.endsWith(i);)s=s.slice(0,-i.length);return s}static hasInvalidChars(e){return this.INVALID_CHARS_PATTERN.test(e)}static getInvalidChars(e){let t=e.match(this.INVALID_CHARS_PATTERN);return t?[...new Set(t)]:[]}static getBaseName(e){let t=e.lastIndexOf(".");return t===-1||t===0?e:e.substring(0,t)}static getExtension(e){let t=e.lastIndexOf(".");return t===-1||t===0?"":e.substring(t)}};hm.FilenameValidator=zo;zo.INVALID_CHARS_PATTERN=/[/\\:*?"<>|\x00-\x1F]/g;zo.RESERVED_NAMES=new Set(["CON","PRN","AUX","NUL","COM1","COM2","COM3","COM4","COM5","COM6","COM7","COM8","COM9","LPT1","LPT2","LPT3","LPT4","LPT5","LPT6","LPT7","LPT8","LPT9"]);zo.DEFAULT_MAX_LENGTH=200;zo.DEFAULT_REPLACEMENT="_"});var Vv=S(pm=>{"use strict";Object.defineProperty(pm,"__esModule",{value:!0});pm.NTriplesSerializer=void 0;var Bv=class{static{o(this,"NTriplesSerializer")}serialize(e,t={}){let r=t.newline??`
370
+ LIMIT ${this.config.defaultLimit}`,s="\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0442\u043E\u0447\u043D\u043E \u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0438\u0442\u044C \u0442\u0438\u043F \u0437\u0430\u043F\u0440\u043E\u0441\u0430. \u0412\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F \u043F\u043E\u0438\u0441\u043A \u043F\u043E \u043A\u043B\u044E\u0447\u0435\u0432\u043E\u043C\u0443 \u0441\u043B\u043E\u0432\u0443.";return t?.template&&t?.missingParams&&(s+=` \u0414\u043B\u044F \u0448\u0430\u0431\u043B\u043E\u043D\u0430 "${t.template.name}" \u043D\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432: ${t.missingParams.join(", ")}.`),{query:i,templateName:null,parameters:{keyword:r},confidence:.3,explanation:s,isFallback:!0,alternatives:[]}}calculateConfidence(e,t,r){let i=.5;for(let c of t.keywords)e.includes(c.toLowerCase())&&(i+=.1);let s=t.parameters.filter(c=>c.required),a=s.filter(c=>r[c.name]&&r[c.name].length>0);s.length>0?i+=a.length/s.length*.2:i+=.2;for(let[c]of Object.entries(this.prototypeMapping))if(e.includes(c)){i+=.1;break}return Math.min(i,1)}generateExplanation(e,t){let r=e.description;return Object.keys(t).length>0&&(r+=". \u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B: ",r+=Object.entries(t).filter(([,i])=>i&&i.length>0).map(([i,s])=>`${i}="${s}"`).join(", ")),r}getAvailableTemplates(){return[...Et.SPARQL_TEMPLATES]}getTemplate(e){return(0,Et.getTemplateByName)(e)}setConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}addTemplate(e){Et.SPARQL_TEMPLATES.push(e),K8.LoggingService.debug(`Added custom template: ${e.name}`)}getSuggestions(e){let t=[];return(e.includes("\u0441\u043A\u043E\u043B\u044C\u043A\u043E")||e.includes("\u0441\u0440\u0435\u0434\u043D")||e.includes("\u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043A"))&&!e.match(/\b20\d{2}\b/)&&!this.containsMonth(e)&&t.push("\u0414\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043F\u0435\u0440\u0438\u043E\u0434 \u0432\u0440\u0435\u043C\u0435\u043D\u0438 (\u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440: '\u0437\u0430 \u0434\u0435\u043A\u0430\u0431\u0440\u044C' \u0438\u043B\u0438 '\u0437\u0430 2025-12')"),(e.includes("\u0437\u0430\u0434\u0430\u0447")||e.includes("\u0430\u043A\u0442\u0438\u0432\u043D\u043E\u0441\u0442"))&&t.push("\u0414\u043B\u044F \u0442\u043E\u0447\u043D\u043E\u0433\u043E \u043F\u043E\u0438\u0441\u043A\u0430 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 UUID \u043F\u0440\u043E\u0442\u043E\u0442\u0438\u043F\u0430 \u0432\u043C\u0435\u0441\u0442\u043E \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044F"),e.length<10&&t.push("\u0423\u0442\u043E\u0447\u043D\u0438\u0442\u0435 \u0437\u0430\u043F\u0440\u043E\u0441: \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u0435 \u0430\u043A\u0442\u0438\u0432\u043D\u043E\u0441\u0442\u0438 \u0438\u043B\u0438 \u0442\u0438\u043F \u0434\u0430\u043D\u043D\u044B\u0445"),t}containsMonth(e){return Object.keys(this.monthNames).some(t=>e.includes(t))}};ti.NLToSPARQLService=Fv;ti.NLToSPARQLService=Fv=z8([(0,Q8.injectable)(),H8("design:paramtypes",[Object])],Fv)});var $3=S(ji=>{"use strict";var Y8=ji&&ji.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},X8=ji&&ji.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},J8=ji&&ji.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(ji,"__esModule",{value:!0});ji.AnalyticsService=void 0;var j3=fe(),Z8=wt(),e$=Qr(),t$=ei(),Dv=class{static{o(this,"AnalyticsService")}constructor(e){this.vault=e,this.frontmatterService=new t$.FrontmatterService}getDefaultPeriod(){let e=new Date,t=new Date;return t.setDate(t.getDate()-30),{startDate:t,endDate:e}}async getEffortsInPeriod(e,t){let i=this.vault.getAllFiles().filter(a=>a.path.endsWith(".md")),s=[];for(let a of i)try{let c=await this.vault.read(a),l=this.extractEffortData(a,c);if(!l)continue;if(l.startTimestamp){if(l.startTimestamp<e.startDate||l.startTimestamp>e.endDate)continue}else continue;if(t?.prototypeUri&&l.prototypeUri!==t.prototypeUri||t?.labelContains&&!l.label.toLowerCase().includes(t.labelContains.toLowerCase())||t?.status&&l.status&&!t.status.includes(l.status))continue;s.push(l)}catch{continue}return s}extractEffortData(e,t){let r=this.frontmatterService.parse(t);if(!r.exists)return null;let i=this.frontmatterService.getPropertyValue(r.content,"exo__Asset_label");if(!i)return null;let s=this.frontmatterService.getPropertyValue(r.content,"ems__Effort_status"),a=this.frontmatterService.getPropertyValue(r.content,"ems__Effort_startTimestamp"),c=this.frontmatterService.getPropertyValue(r.content,"ems__Effort_endTimestamp"),l=this.frontmatterService.getPropertyValue(r.content,"exo__Asset_prototype"),u=this.extractInstanceClass(r.content);return{path:e.path,label:this.cleanWikiLink(i),status:s?this.cleanWikiLink(s):null,startTimestamp:a?this.parseTimestamp(a):null,endTimestamp:c?this.parseTimestamp(c):null,prototypeUri:l?this.cleanWikiLink(l):null,instanceClass:u}}extractInstanceClass(e){let t=e.match(/exo__Instance_class:\s*\n((?:\s*-\s*.*\n?)+)/);if(t)return t[1].split(`
371
+ `).filter(s=>s.trim()).map(s=>this.cleanWikiLink(s.replace(/^\s*-\s*/,"").trim()));let r=this.frontmatterService.getPropertyValue(e,"exo__Instance_class");return r?this.cleanWikiLink(r):null}cleanWikiLink(e){return e.replace(/^\[\[/,"").replace(/\]\]$/,"").replace(/^"/,"").replace(/"$/,"")}parseTimestamp(e){if(!e)return null;let t=e.replace(/^"/,"").replace(/"$/,""),r=new Date(t);return isNaN(r.getTime())?null:r}calculateDurationStats(e){let t=e.filter(f=>f.startTimestamp&&f.endTimestamp).map(f=>(f.endTimestamp.getTime()-f.startTimestamp.getTime())/6e4).filter(f=>f>0);if(t.length===0)return{count:0,totalMinutes:0,averageMinutes:0,minMinutes:0,maxMinutes:0,stdDevMinutes:0};let r=t.reduce((f,d)=>f+d,0),i=r/t.length,s=Math.min(...t),a=Math.max(...t),l=t.map(f=>Math.pow(f-i,2)).reduce((f,d)=>f+d,0)/t.length,u=Math.sqrt(l);return{count:t.length,totalMinutes:Math.round(r),averageMinutes:Math.round(i*10)/10,minMinutes:Math.round(s),maxMinutes:Math.round(a),stdDevMinutes:Math.round(u*10)/10}}calculateDailyAggregates(e){let t=new Map;for(let r of e){if(!r.startTimestamp)continue;let i=e$.DateFormatter.toDateString(r.startTimestamp);t.has(i)||t.set(i,{count:0,totalMinutes:0});let s=t.get(i);if(s.count++,r.endTimestamp){let a=r.endTimestamp.getTime()-r.startTimestamp.getTime();s.totalMinutes+=a/6e4}}return Array.from(t.entries()).map(([r,i])=>({date:r,count:i.count,totalMinutes:Math.round(i.totalMinutes),averageMinutes:i.count>0?Math.round(i.totalMinutes/i.count*10)/10:0})).sort((r,i)=>r.date.localeCompare(i.date))}calculateHourlyDistribution(e){let t=new Array(24).fill(0);for(let i of e){if(!i.startTimestamp)continue;let s=i.startTimestamp.getHours();t[s]++}let r=t.reduce((i,s)=>i+s,0);return t.map((i,s)=>({hour:s,count:i,percentage:r>0?Math.round(i/r*1e3)/10:0}))}calculateWeekdayDistribution(e){let t=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],r=new Array(7).fill(0);for(let s of e){if(!s.startTimestamp)continue;let a=s.startTimestamp.getDay();r[a]++}let i=r.reduce((s,a)=>s+a,0);return r.map((s,a)=>({dayOfWeek:a,dayName:t[a],count:s,percentage:i>0?Math.round(s/i*1e3)/10:0}))}async analyzeSleep(e=this.getDefaultPeriod()){let t=await this.getEffortsInPeriod(e,{labelContains:"\u041F\u043E\u0441\u043F\u0430\u0442\u044C"}),r=this.calculateDurationStats(t),i=this.calculateDailyAggregates(t),s=[],a=[];for(let d of t){if(d.startTimestamp){let h=d.startTimestamp.getHours()*60+d.startTimestamp.getMinutes();s.push(h<360?h+1440:h)}if(d.endTimestamp){let h=d.endTimestamp.getHours()*60+d.endTimestamp.getMinutes();a.push(h)}}let c=s.length>0?s.reduce((d,h)=>d+h,0)/s.length:0,l=a.length>0?a.reduce((d,h)=>d+h,0)/a.length:0,u=s.length>1?Math.sqrt(s.map(d=>Math.pow(d-c,2)).reduce((d,h)=>d+h,0)/s.length):0,f=a.length>1?Math.sqrt(a.map(d=>Math.pow(d-l,2)).reduce((d,h)=>d+h,0)/a.length):0;return{period:e,stats:r,dailyData:i,averageBedtime:this.minutesToTimeString(c%1440),averageWakeTime:this.minutesToTimeString(l),bedtimeVariabilityMinutes:Math.round(u),wakeTimeVariabilityMinutes:Math.round(f)}}minutesToTimeString(e){let t=Math.floor(e/60),r=Math.round(e%60);return`${String(t).padStart(2,"0")}:${String(r).padStart(2,"0")}`}async analyzeTaskCompletion(e=this.getDefaultPeriod()){let r=(await this.getEffortsInPeriod(e)).filter(u=>Array.isArray(u.instanceClass)?u.instanceClass.some(f=>f.includes("ems__Task")):u.instanceClass?.includes("ems__Task")??!1),i=r.filter(u=>u.status?.includes("ems__EffortStatusDone")),s=r.filter(u=>u.status?.includes("ems__EffortStatusTrashed")),a=i.filter(u=>u.startTimestamp&&u.endTimestamp).map(u=>(u.endTimestamp.getTime()-u.startTimestamp.getTime())/6e4),c=a.length>0?a.reduce((u,f)=>u+f,0)/a.length:0,l=this.calculateDailyAggregates(i);return{period:e,totalTasks:r.length,completedTasks:i.length,trashedTasks:s.length,completionRate:r.length>0?Math.round(i.length/r.length*1e3)/10:0,averageCompletionTimeMinutes:Math.round(c*10)/10,dailyCompletions:l}}async analyzeActivityFrequency(e,t=this.getDefaultPeriod()){let r=await this.getEffortsInPeriod(t,{labelContains:e}),i=this.calculateDurationStats(r),s=this.calculateDailyAggregates(r),a=this.calculateHourlyDistribution(r),c=this.calculateWeekdayDistribution(r);return{activityLabel:e,period:t,stats:i,dailyData:s,hourlyDistribution:a,weekdayDistribution:c}}async getActivitySummary(e=this.getDefaultPeriod()){let t=await this.getEffortsInPeriod(e),r=new Map;for(let s of t){let a=s.label.split(" ")[0];r.has(a)||r.set(a,[]),r.get(a).push(s)}let i=new Map;for(let[s,a]of r)i.set(s,this.calculateDurationStats(a));return i}};ji.AnalyticsService=Dv;ji.AnalyticsService=Dv=Y8([(0,j3.injectable)(),J8(0,(0,j3.inject)(Z8.DI_TOKENS.IVaultAdapter)),X8("design:paramtypes",[Object])],Dv)});var B3=S(Go=>{"use strict";var r$=Go&&Go.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s};Object.defineProperty(Go,"__esModule",{value:!0});Go.TrendDetectionService=void 0;var n$=fe(),Nv=class{static{o(this,"TrendDetectionService")}constructor(){this.TREND_THRESHOLD=.05,this.ANOMALY_THRESHOLD_STD=2,this.STRONG_CORRELATION_THRESHOLD=.7,this.MODERATE_CORRELATION_THRESHOLD=.4}analyzeTrend(e,t="averageMinutes"){if(e.length<3)return{direction:"stable",strength:"none",slope:0,rSquared:0,changePercentage:0,insight:"Insufficient data for trend analysis (need at least 3 data points)"};let r=e.map(h=>h[t]),{slope:i,rSquared:s}=this.linearRegression(r),a=r[0]||1,l=((r[r.length-1]||0)-a)/a*100,u;Math.abs(l)<this.TREND_THRESHOLD*100?u="stable":i>0?u="increasing":u="decreasing";let f;s>=.7?f="strong":s>=.4?f="moderate":s>=.2?f="weak":f="none";let d=this.generateTrendInsight(u,f,l);return{direction:u,strength:f,slope:Math.round(i*100)/100,rSquared:Math.round(s*100)/100,changePercentage:Math.round(l*10)/10,insight:d}}linearRegression(e){let t=e.length;if(t===0)return{slope:0,intercept:0,rSquared:0};let r=(t-1)/2,i=e.reduce((h,p)=>h+p,0)/t,s=0,a=0;for(let h=0;h<t;h++)s+=(h-r)*(e[h]-i),a+=Math.pow(h-r,2);let c=a!==0?s/a:0,l=i-c*r,u=0,f=0;for(let h=0;h<t;h++){let p=l+c*h;u+=Math.pow(e[h]-p,2),f+=Math.pow(e[h]-i,2)}let d=f!==0?1-u/f:0;return{slope:c,intercept:l,rSquared:Math.max(0,d)}}generateTrendInsight(e,t,r){if(t==="none"||e==="stable")return"Metric is relatively stable with no significant trend.";let i=t==="strong"?"clearly":t==="moderate"?"moderately":"slightly",s=e==="increasing"?"increasing":"decreasing",a=`${Math.abs(Math.round(r))}%`;return`Metric is ${i} ${s} (${a} change over the period).`}detectAnomalies(e,t="averageMinutes"){if(e.length<5)return[];let r=e.map(c=>c[t]),{mean:i,stdDev:s}=this.calculateStats(r),a=[];for(let c=0;c<e.length;c++){let l=r[c],u=(l-i)/(s||1);if(Math.abs(u)>=this.ANOMALY_THRESHOLD_STD){let f=this.determineAnomalySeverity(u),d=this.determineAnomalyType(u,l,i);a.push({date:e[c].date,value:l,expectedValue:Math.round(i*10)/10,deviation:Math.round(u*100)/100,severity:f,type:d,description:this.generateAnomalyDescription(d,f,u,l,i)})}}return a}calculateStats(e){if(e.length===0)return{mean:0,stdDev:0};let t=e.reduce((a,c)=>a+c,0)/e.length,i=e.map(a=>Math.pow(a-t,2)).reduce((a,c)=>a+c,0)/e.length,s=Math.sqrt(i);return{mean:t,stdDev:s}}determineAnomalySeverity(e){let t=Math.abs(e);return t>=3?"critical":t>=2.5?"warning":"info"}determineAnomalyType(e,t,r){return t>r&&e>0?"spike":t<r&&e<0?"drop":"outlier"}generateAnomalyDescription(e,t,r,i,s){let a=t==="critical"?"Significant":t==="warning"?"Notable":"Minor",c=e==="spike"?"spike":e==="drop"?"drop":"unusual value",l=Math.round((i-s)/s*100);return`${a} ${c} detected: ${Math.round(i)} (${l>0?"+":""}${l}% from average of ${Math.round(s)}, ${r.toFixed(1)}\u03C3 from mean).`}calculateCorrelation(e,t,r,i){let s=Math.min(e.length,t.length);if(s<5)return{metric1:r,metric2:i,coefficient:0,strength:"none",direction:"none",insight:"Insufficient data for correlation analysis."};let{mean:a,stdDev:c}=this.calculateStats(e.slice(0,s)),{mean:l,stdDev:u}=this.calculateStats(t.slice(0,s));if(c===0||u===0)return{metric1:r,metric2:i,coefficient:0,strength:"none",direction:"none",insight:"One or both metrics have no variation."};let f=0;for(let w=0;w<s;w++)f+=(e[w]-a)/c*((t[w]-l)/u);let d=f/s,h=Math.abs(d),p;h>=this.STRONG_CORRELATION_THRESHOLD?p="strong":h>=this.MODERATE_CORRELATION_THRESHOLD?p="moderate":h>=.2?p="weak":p="none";let y=p==="none"?"none":d>0?"positive":"negative",v=this.generateCorrelationInsight(r,i,d,p,y);return{metric1:r,metric2:i,coefficient:Math.round(d*100)/100,strength:p,direction:y,insight:v}}generateCorrelationInsight(e,t,r,i,s){if(i==="none")return`No significant correlation found between ${e} and ${t}.`;let a=i==="strong"?"strongly":i==="moderate"?"moderately":"weakly",c=s==="positive"?"When one increases, the other tends to increase":"When one increases, the other tends to decrease";return`${e} and ${t} are ${a} ${s}ly correlated (r=${r.toFixed(2)}). ${c}.`}analyzeWeeklyPattern(e,t="averageMinutes"){let r=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],i={};for(let l of e){let f=new Date(l.date).getDay();i[f]||(i[f]=[]),i[f].push(l[t])}let s=[],a=0,c=1/0;for(let l=0;l<7;l++){let u=i[l]||[],{mean:f,stdDev:d}=this.calculateStats(u);f>a&&(a=f),f<c&&u.length>0&&(c=f),s.push({dayOfWeek:l,dayName:r[l],averageValue:Math.round(f*10)/10,deviation:Math.round(d*10)/10,isHighPoint:!1,isLowPoint:!1})}for(let l of s)l.averageValue===a&&a>0&&(l.isHighPoint=!0),l.averageValue===c&&c!==1/0&&(l.isLowPoint=!0);return s}generateInsights(e,t,r,i,s){let a=[];t.strength!=="none"&&t.direction!=="stable"&&a.push({type:"trend",severity:t.direction==="decreasing"?"warning":"info",title:`${s} is ${t.direction}`,description:t.insight,metric:s,value:t.changePercentage,actionable:t.direction==="decreasing"});let c=r.filter(f=>f.severity==="critical");if(c.length>0)for(let f of c)a.push({type:"anomaly",severity:"critical",title:`Unusual ${f.type} detected on ${f.date}`,description:f.description,metric:s,value:f.value,actionable:!0});let l=i.filter(f=>f.isHighPoint).map(f=>f.dayName),u=i.filter(f=>f.isLowPoint).map(f=>f.dayName);return l.length>0&&u.length>0&&a.push({type:"pattern",severity:"info",title:"Weekly pattern detected",description:`${s} tends to be highest on ${l.join(", ")} and lowest on ${u.join(", ")}.`,metric:s,actionable:!1}),e.stdDevMinutes>e.averageMinutes*.5&&a.push({type:"recommendation",severity:"warning",title:"High variability detected",description:`${s} shows high variability (std dev: ${e.stdDevMinutes} min). Consider maintaining a more consistent schedule.`,metric:s,value:e.stdDevMinutes,actionable:!0}),a}detectSuddenChanges(e,t="averageMinutes",r=50){let i=[];for(let s=1;s<e.length;s++){let a=e[s-1][t],c=e[s][t];if(a===0)continue;let l=(c-a)/a*100;Math.abs(l)>=r&&i.push({date:e[s].date,previousValue:a,currentValue:c,changePercent:Math.round(l*10)/10})}return i}};Go.TrendDetectionService=Nv;Go.TrendDetectionService=Nv=r$([(0,n$.injectable)()],Nv)});var U3=S(ri=>{"use strict";var i$=ri&&ri.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},s$=ri&&ri.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(ri,"__esModule",{value:!0});ri.AutocompleteService=ri.DEFAULT_AUTOCOMPLETE_CONFIG=void 0;var a$=fe(),fm=yr(),mf=Ae(),V3=Ne();ri.DEFAULT_AUTOCOMPLETE_CONFIG={limit:10,activeBoost:20,recencyBoost:10,recencyDays:7};var Lv=class{static{o(this,"AutocompleteService")}constructor(e,t){this.tripleStore=e,this.config={...ri.DEFAULT_AUTOCOMPLETE_CONFIG,...t}}async getSuggestions(e,t,r){let i={...this.config,...r},s=await this.getPropertyRange(e);if(s.length===0){let l=this.inferClassFromProperty(e);l&&s.push(l)}let a=[];for(let l of s){let u=await this.getAssetsOfClass(l);a.push(...u)}return a.map(l=>({...l,matchScore:this.calculateMatchScore(l,t,i)})).filter(l=>l.matchScore>0).sort((l,u)=>u.matchScore-l.matchScore).slice(0,i.limit)}async getSuggestionsByClass(e,t,r){let i={...this.config,...r},s=[];for(let c of e){let l=await this.getAssetsOfClass(c);s.push(...l)}return s.map(c=>({...c,matchScore:this.calculateMatchScore(c,t,i)})).filter(c=>c.matchScore>0).sort((c,l)=>l.matchScore-c.matchScore).slice(0,i.limit)}async getPropertyRange(e){let t=this.toFullIri(e),r=[],i=await this.tripleStore.match(new mf.IRI(t),fm.Namespace.RDFS.term("range"),void 0);for(let s of i)if(s.object instanceof mf.IRI){let a=this.toClassName(s.object.value);a&&r.push(a)}return r}async getAssetsOfClass(e){let t=this.toFullIri(e),r=[],i=await this.tripleStore.match(void 0,fm.Namespace.RDF.term("type"),new mf.IRI(t));for(let s of i)if(s.subject instanceof mf.IRI){let a=await this.buildSuggestion(s.subject,e);a&&r.push(a)}return r}async buildSuggestion(e,t){let r=await this.tripleStore.match(e,fm.Namespace.EXO.term("Asset_label"),void 0),i="";for(let c of r)if(c.object instanceof V3.Literal){i=c.object.value;break}if(i||(i=this.extractLabelFromUri(e.value)),!i)return null;let s=await this.checkIfActive(e),a=this.extractPathFromUri(e.value);return{label:i,uri:e.value,path:a,assetClass:t,isActive:s,matchScore:0}}async checkIfActive(e){let t=await this.tripleStore.match(e,fm.Namespace.EMS.term("Effort_status"),void 0);for(let r of t){let i=r.object instanceof V3.Literal||r.object instanceof mf.IRI?r.object.value:"";if(i.includes("Active")||i.includes("EffortStatus_Active"))return!0}return!1}calculateMatchScore(e,t,r){if(!t||t.length===0)return e.isActive?100+r.activeBoost:100;let i=e.label.toLowerCase(),s=t.toLowerCase(),a=0;if(i===s)a=100;else if(i.startsWith(s))a=80;else if(i.includes(s))a=60;else if(this.fuzzyMatch(s,i))a=40;else return 0;if(e.isActive&&(a+=r.activeBoost),e.lastModified){let c=(Date.now()-e.lastModified)/864e5;c<=r.recencyDays&&(a+=r.recencyBoost*(1-c/r.recencyDays))}return a}fuzzyMatch(e,t){let r=0;for(let i=0;i<t.length&&r<e.length;i++)t[i]===e[r]&&r++;return r===e.length}inferClassFromProperty(e){let t=e.toLowerCase();return t.includes("project")?"ems__Project":t.includes("area")?"ems__Area":t.includes("task")?"ems__Task":t.includes("effort")?"ems__Effort":null}toFullIri(e){if(e.startsWith("http://")||e.startsWith("https://"))return e;let t=e.match(/^([a-z]+)__(.+)$/);if(t){let[,r,i]=t;switch(r){case"ems":return`https://exocortex.my/ontology/ems#${i}`;case"exo":return`https://exocortex.my/ontology/exo#${i}`;default:return`https://exocortex.my/ontology/${r}#${i}`}}return e}toClassName(e){let t=e.match(/https:\/\/exocortex\.my\/ontology\/([a-z]+)#(.+)$/);if(t){let[,r,i]=t;return`${r}__${i}`}return null}extractLabelFromUri(e){if(e.startsWith("obsidian://")){let r=decodeURIComponent(e),i=r.lastIndexOf("/");if(i>=0){let s=r.substring(i+1);return s.endsWith(".md")&&(s=s.substring(0,s.length-3)),s}}let t=e.lastIndexOf("/");if(t>=0){let r=e.substring(t+1);return r.endsWith(".md")&&(r=r.substring(0,r.length-3)),r}return""}extractPathFromUri(e){if(e.startsWith("obsidian://vault/")){let t=decodeURIComponent(e.substring(17)),r=t.indexOf("/");return r>=0?t.substring(r+1):t}return e}};ri.AutocompleteService=Lv;ri.AutocompleteService=Lv=i$([(0,a$.injectable)(),s$("design:paramtypes",[Object,Object])],Lv)});var W3=S($i=>{"use strict";var o$=$i&&$i.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},c$=$i&&$i.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},l$=$i&&$i.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty($i,"__esModule",{value:!0});$i.DailyReviewService=void 0;var q3=fe(),u$=wt(),hl=Qr(),f$=ei(),d$=Tn(),kv=class{static{o(this,"DailyReviewService")}constructor(e){this.vault=e,this.frontmatterService=new f$.FrontmatterService}async getPractices(){let e=this.vault.getAllFiles(),t=[],r=hl.DateFormatter.toDateString(new Date);for(let i of e)if(i.path.endsWith(".md"))try{let s=await this.vault.read(i),a=this.frontmatterService.parse(s);if(!a.exists)continue;let c=this.frontmatterService.getPropertyValue(a.content,"exo__Instance_class");if(!this.isTaskPrototype(c))continue;let l=this.frontmatterService.getPropertyValue(a.content,"exo__Asset_uid");if(!l)continue;let u=l.replace(/"/g,""),f=this.frontmatterService.getPropertyValue(a.content,"exo__Asset_label");if(!f)continue;let d=f.replace(/"/g,""),p=this.frontmatterService.getPropertyValue(a.content,"ems__Recurring_rule")?.replace(/"/g,"")||null,y=this.frontmatterService.getPropertyValue(a.content,"ems__Task_estimatedDuration"),v=null;if(y){let b=parseInt(y,10);isNaN(b)||(v=b)}let w=await this.findTodayInstance(u,r);t.push({uid:u,label:d,path:i.path,recurringRule:p,estimatedDuration:v,doneToday:w?.status==="done",inProgressToday:w?.status==="doing",todayInstancePath:w?.path||null})}catch{continue}return t.sort((i,s)=>i.label.localeCompare(s.label))}async getDailyReviewSummary(e){let t=e||new Date,r=hl.DateFormatter.toDateString(t),i=new Date(t);i.setHours(0,0,0,0);let s=new Date(t);s.setHours(23,59,59,999);let a=this.vault.getAllFiles(),c=0,l=0,u=0,f=0;for(let y of a)if(y.path.endsWith(".md"))try{let v=await this.vault.read(y),w=this.frontmatterService.parse(v);if(!w.exists)continue;let b=this.frontmatterService.getPropertyValue(w.content,"exo__Instance_class");if(!this.isTask(b))continue;let A=this.frontmatterService.getPropertyValue(w.content,"ems__Effort_plannedStartTimestamp"),I=this.frontmatterService.getPropertyValue(w.content,"ems__Effort_startTimestamp"),j=I?new Date(I):null,V=A?new Date(A):null;if(!(V&&V>=i&&V<=s||j&&j>=i&&j<=s))continue;c++;let z=this.frontmatterService.getPropertyValue(w.content,"ems__Effort_status");if(this.isDoneStatus(z)){l++;let G=this.frontmatterService.getPropertyValue(w.content,"ems__Effort_endTimestamp");if(I&&G){let F=this.calculateDurationMinutes(I,G);f+=F}}else this.isDoingStatus(z)&&u++}catch{continue}let h=(await this.getPractices()).filter(y=>!y.doneToday&&y.recurringRule),p=c>0?Math.round(l/c*100):0;return{date:r,plannedCount:c,completedCount:l,inProgressCount:u,practicesDue:h,completionPercentage:p,totalTimeMinutes:Math.round(f)}}async quickCapture(e,t=!0,r){let i=(0,d$.v4)(),s=hl.DateFormatter.toISOTimestamp(new Date),a=`${i}.md`,c="03 Knowledge/kitelev",l=["---",`exo__Asset_uid: "${i}"`,`exo__Asset_label: "${e}"`,'exo__Instance_class: "[[ems__Task]]"'];if(r?.prototypeUid){let d=this.buildPrototypeUri(r.prototypeUid);l.push(`exo__Asset_prototype: "${d}"`)}if(r?.areaUid){let d=this.buildAssetUri(r.areaUid);l.push(`ems__Effort_area: "${d}"`)}if(r?.parentUid){let d=this.buildAssetUri(r.parentUid);l.push(`ems__Effort_parent: "${d}"`)}t?(l.push('ems__Effort_status: "[[ems__EffortStatusDoing]]"'),l.push(`ems__Effort_startTimestamp: ${s}`)):l.push('ems__Effort_status: "[[ems__EffortStatusBacklog]]"'),l.push("---","","");let u=l.join(`
372
+ `),f=`${c}/${a}`;return await this.vault.create(f,u),{path:f,uid:i,label:e,started:t}}async createFromPractice(e){let r=(await this.getPractices()).find(a=>a.uid===e.prototypeUid);if(!r)throw new Error(`Practice not found: ${e.prototypeUid}`);if(r.doneToday)throw new Error(`Practice "${r.label}" already completed today`);if(r.inProgressToday&&r.todayInstancePath)return{path:r.todayInstancePath,uid:e.prototypeUid,label:r.label,started:!0};let i=hl.DateFormatter.toDateString(new Date),s=e.label||`${r.label} ${i}`;return this.quickCapture(s,e.startImmediately??!0,{prototypeUid:e.prototypeUid,areaUid:e.areaUid,parentUid:e.parentUid})}async markPracticeDone(e){let r=(await this.getPractices()).find(u=>u.uid===e);if(!r)throw new Error(`Practice not found: ${e}`);if(r.doneToday)return;if(!r.todayInstancePath)throw new Error(`No active instance for practice "${r.label}" today`);let i=this.vault.getAbstractFileByPath(r.todayInstancePath);if(!i||!("basename"in i))throw new Error(`File not found: ${r.todayInstancePath}`);let s=i,a=await this.vault.read(s),c=hl.DateFormatter.toISOTimestamp(new Date),l=this.frontmatterService.updateProperty(a,"ems__Effort_status",'"[[ems__EffortStatusDone]]"');l=this.frontmatterService.updateProperty(l,"ems__Effort_endTimestamp",c),l=this.frontmatterService.updateProperty(l,"ems__Effort_resolutionTimestamp",c),await this.vault.modify(s,l)}async findTodayInstance(e,t){let r=this.vault.getAllFiles();for(let i of r)if(i.path.endsWith(".md"))try{let s=await this.vault.read(i),a=this.frontmatterService.parse(s);if(!a.exists)continue;let c=this.frontmatterService.getPropertyValue(a.content,"exo__Asset_prototype");if(!c||!c.includes(e))continue;let l=this.frontmatterService.getPropertyValue(a.content,"exo__Asset_label"),u=this.frontmatterService.getPropertyValue(a.content,"ems__Effort_startTimestamp"),f=l?.includes(t),d=u?new Date(u):null,h=d&&hl.DateFormatter.toDateString(d)===t;if(!f&&!h)continue;let p=this.frontmatterService.getPropertyValue(a.content,"ems__Effort_status");return this.isDoneStatus(p)?{path:i.path,status:"done"}:this.isDoingStatus(p)?{path:i.path,status:"doing"}:{path:i.path,status:"other"}}catch{continue}return null}isTaskPrototype(e){return e?e.includes("ems__TaskPrototype")||e.includes("TaskPrototype"):!1}isTask(e){return e?(e.includes("ems__Task")||e.includes("[[ems__Task]]"))&&!e.includes("Prototype"):!1}isDoneStatus(e){return e?e.includes("Done")||e.includes("EffortStatusDone"):!1}isDoingStatus(e){return e?e.includes("Doing")||e.includes("EffortStatusDoing"):!1}calculateDurationMinutes(e,t){let r=new Date(e);return(new Date(t).getTime()-r.getTime())/1e3/60}buildPrototypeUri(e){return`obsidian://vault/03%20Knowledge%2Fkitelev%2F${e}.md`}buildAssetUri(e){return`obsidian://vault/03%20Knowledge%2Fkitelev%2F${e}.md`}};$i.DailyReviewService=kv;$i.DailyReviewService=kv=o$([(0,q3.injectable)(),l$(0,(0,q3.inject)(u$.DI_TOKENS.IVaultAdapter)),c$("design:paramtypes",[Object])],kv)});var jv=S(Yr=>{"use strict";var h$=Yr&&Yr.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},p$=Yr&&Yr.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},m$=Yr&&Yr.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Yr,"__esModule",{value:!0});Yr.CriticalityZoneService=Yr.CriticalityZoneUUIDs=void 0;var G3=fe(),g$=ei(),y$=wt();Yr.CriticalityZoneUUIDs={TODAY:"e266a2e9-9eb0-431d-b1fe-b95b9d3e9a3f",THIS_WEEK:"c7f1a968-0959-4ac7-ac82-31b0cdc2aba7",SOMEDAY:"6968a0fc-7a41-4393-82b1-17d767c7ad7c"};var Mv=class{static{o(this,"CriticalityZoneService")}constructor(e){this.vault=e,this.frontmatterService=new g$.FrontmatterService}async setZoneToday(e){await this.setZone(e,Yr.CriticalityZoneUUIDs.TODAY)}async setZoneThisWeek(e){await this.setZone(e,Yr.CriticalityZoneUUIDs.THIS_WEEK)}async setZoneSomeday(e){await this.setZone(e,Yr.CriticalityZoneUUIDs.SOMEDAY)}async setZone(e,t){let r=await this.vault.read(e),i=this.frontmatterService.updateProperty(r,"ems__Task_zone",`"[[${t}]]"`);await this.vault.modify(e,i)}};Yr.CriticalityZoneService=Mv;Yr.CriticalityZoneService=Mv=h$([(0,G3.injectable)(),m$(0,(0,G3.inject)(y$.DI_TOKENS.IVaultAdapter)),p$("design:paramtypes",[Object])],Mv)});var z3=S(dm=>{"use strict";Object.defineProperty(dm,"__esModule",{value:!0});dm.EffortSortingHelpers=void 0;var $v=class n{static{o(this,"EffortSortingHelpers")}static getTimeFromTimestamp(e){if(!e)return"00:00:00";let t=new Date(e);if(isNaN(t.getTime()))return"00:00:00";let r=String(t.getHours()).padStart(2,"0"),i=String(t.getMinutes()).padStart(2,"0"),s=String(t.getSeconds()).padStart(2,"0");return`${r}:${i}:${s}`}static sortByStartTime(e,t){let r=n.getTimeFromTimestamp(e.startTimestamp),i=n.getTimeFromTimestamp(t.startTimestamp),s=r==="00:00:00",a=i==="00:00:00";return s&&!a?1:!s&&a?-1:r.localeCompare(i)}static sortByPriority(e,t){if(e.isTrashed!==t.isTrashed)return e.isTrashed?1:-1;if(e.isDone!==t.isDone)return e.isDone?1:-1;let r=typeof e.metadata.ems__Effort_votes=="number"?e.metadata.ems__Effort_votes:0,i=typeof t.metadata.ems__Effort_votes=="number"?t.metadata.ems__Effort_votes:0;return r!==i?i-r:e.startTime&&t.startTime?e.startTime.localeCompare(t.startTime):e.startTime?-1:t.startTime?1:0}};dm.EffortSortingHelpers=$v});var H3=S(hm=>{"use strict";Object.defineProperty(hm,"__esModule",{value:!0});hm.FilenameValidator=void 0;var zo=class{static{o(this,"FilenameValidator")}static validate(e,t={}){let{maxLength:r=this.DEFAULT_MAX_LENGTH,replacementChar:i=this.DEFAULT_REPLACEMENT,allowEmpty:s=!1}=t,a=[];if(!e||e.trim().length===0)return s||a.push("Filename cannot be empty"),{valid:a.length===0,sanitized:"",errors:a};e.endsWith(" ")&&a.push("Filename should not end with a space");let c=e.trim();this.INVALID_CHARS_PATTERN.test(c)&&a.push('Filename contains invalid characters: / \\ : * ? " < > |');let l=this.getBaseName(c);this.RESERVED_NAMES.has(l.toUpperCase())&&a.push(`"${l}" is a reserved filename on Windows`),c.length>r&&a.push(`Filename exceeds maximum length of ${r} characters`),c.startsWith(".")&&a.push("Filename should not start with a dot"),c.endsWith(".")&&a.push("Filename should not end with a dot");let u=this.sanitize(e,{maxLength:r,replacementChar:i});return{valid:a.length===0,sanitized:u,errors:a}}static sanitize(e,t={}){let{maxLength:r=this.DEFAULT_MAX_LENGTH,replacementChar:i=this.DEFAULT_REPLACEMENT}=t;if(!e||e.trim().length===0)return"";let s=e.trim();for(s=s.replace(this.INVALID_CHARS_PATTERN,i);s.startsWith(".")&&s.length>1;)s=s.substring(1);for(;s.length>0&&(s.endsWith(".")||s.endsWith(" "));)s=s.slice(0,-1);for(s.includes(i)&&(s=s.split(i).filter(u=>u!=="").join(i));s.startsWith(i);)s=s.slice(i.length);for(;s.endsWith(i);)s=s.slice(0,-i.length);let a=this.getBaseName(s);if(this.RESERVED_NAMES.has(a.toUpperCase())){let c=this.getExtension(s);s=a+i+c}if(s.length>r)for(s=s.slice(0,r);s.endsWith(i);)s=s.slice(0,-i.length);return s}static hasInvalidChars(e){return this.INVALID_CHARS_PATTERN.test(e)}static getInvalidChars(e){let t=e.match(this.INVALID_CHARS_PATTERN);return t?[...new Set(t)]:[]}static getBaseName(e){let t=e.lastIndexOf(".");return t===-1||t===0?e:e.substring(0,t)}static getExtension(e){let t=e.lastIndexOf(".");return t===-1||t===0?"":e.substring(t)}};hm.FilenameValidator=zo;zo.INVALID_CHARS_PATTERN=/[/\\:*?"<>|\x00-\x1F]/g;zo.RESERVED_NAMES=new Set(["CON","PRN","AUX","NUL","COM1","COM2","COM3","COM4","COM5","COM6","COM7","COM8","COM9","LPT1","LPT2","LPT3","LPT4","LPT5","LPT6","LPT7","LPT8","LPT9"]);zo.DEFAULT_MAX_LENGTH=200;zo.DEFAULT_REPLACEMENT="_"});var Vv=S(pm=>{"use strict";Object.defineProperty(pm,"__esModule",{value:!0});pm.NTriplesSerializer=void 0;var Bv=class{static{o(this,"NTriplesSerializer")}serialize(e,t={}){let r=t.newline??`
373
373
  `;return e.length===0?"":e.map(i=>i.toString()).join(r)+r}serializeChunk(e,t){return e.length===0?"":e.map(r=>r.toString()).join(t)+t}};pm.NTriplesSerializer=Bv});var Q3=S(mm=>{"use strict";Object.defineProperty(mm,"__esModule",{value:!0});mm.TurtleSerializer=void 0;var pl=yr(),_$=Vv(),S$={rdf:pl.Namespace.RDF.iri.value,rdfs:pl.Namespace.RDFS.iri.value,owl:pl.Namespace.OWL.iri.value,xsd:pl.Namespace.XSD.iri.value,exo:pl.Namespace.EXO.iri.value,ems:pl.Namespace.EMS.iri.value},Uv=class{static{o(this,"TurtleSerializer")}constructor(){this.nTriplesSerializer=new _$.NTriplesSerializer}serialize(e,t={}){let r=t.newline??`
374
374
  `,i=this.composePrefixes(t),s=this.serializePrefixes(i,r),a=this.nTriplesSerializer.serialize(e,{newline:r}).trimEnd();return s?a?`${s}${r}${r}${a}${r}`:`${s}${r}`:a?`${a}${r}`:""}serializePrefixes(e,t){let r=Object.entries(e);return r.length===0?"":r.map(([i,s])=>`@prefix ${i}: <${s}> .`).join(t)}composePrefixes(e){return e.includeDefaultPrefixes??!0?{...S$,...e.prefixes??{}}:{...e.prefixes??{}}}serializeTriplesOnly(e,t){return this.nTriplesSerializer.serializeChunk(e,t).trimEnd()}};mm.TurtleSerializer=Uv});var X3=S(gm=>{"use strict";Object.defineProperty(gm,"__esModule",{value:!0});gm.JSONLDSerializer=void 0;var K3=Ae(),Y3=qt(),v$=Ne(),ml=yr(),b$={rdf:ml.Namespace.RDF.iri.value,rdfs:ml.Namespace.RDFS.iri.value,owl:ml.Namespace.OWL.iri.value,xsd:ml.Namespace.XSD.iri.value,exo:ml.Namespace.EXO.iri.value,ems:ml.Namespace.EMS.iri.value},qv=class{static{o(this,"JSONLDSerializer")}toDocument(e,t={}){let r={...b$,...t.context??{}},i=new Map;for(let s of e){let a=this.subjectToId(s.subject),c=this.compactIri(s.predicate.value,r),l=this.objectToJSONLD(s.object,r),u=i.get(a)??{"@id":a},f=u[c];f===void 0?u[c]=l:Array.isArray(f)?f.push(l):u[c]=[f,l],i.set(a,u)}return{"@context":r,"@graph":Array.from(i.values())}}serialize(e,t={}){let r=this.toDocument(e,t),i=t.pretty?t.indent??2:void 0;return JSON.stringify(r,null,i)}subjectToId(e){return e instanceof K3.IRI?e.value:e instanceof Y3.BlankNode?`_:${e.id}`:String(e)}compactIri(e,t){for(let[r,i]of Object.entries(t))if(e.startsWith(i)){let s=e.slice(i.length);if(s.length>0)return`${r}:${s}`}return e}objectToJSONLD(e,t){if(e instanceof K3.IRI)return{"@id":e.value};if(e instanceof Y3.BlankNode)return{"@id":`_:${e.id}`};if(e instanceof v$.Literal){let r={"@value":e.value};return e.datatype?r["@type"]=this.compactIri(e.datatype.value,t):e.language&&(r["@language"]=e.language,e.hasDirection()&&e.direction&&(r["@direction"]=e.direction)),r}return e}};gm.JSONLDSerializer=qv});var zv=S(ym=>{"use strict";Object.defineProperty(ym,"__esModule",{value:!0});ym.NTriplesParser=void 0;var w$=Yn(),J3=Ae(),Wv=Ne(),E$=qt(),gl=yr(),T$={rdf:gl.Namespace.RDF.iri.value,rdfs:gl.Namespace.RDFS.iri.value,owl:gl.Namespace.OWL.iri.value,xsd:gl.Namespace.XSD.iri.value,exo:gl.Namespace.EXO.iri.value,ems:gl.Namespace.EMS.iri.value},Gv=class{static{o(this,"NTriplesParser")}parse(e,t={}){let r={prefixes:{...T$,...t.prefixes??{}},strict:t.strict??!1},i=[];return e.split(/\r?\n/).forEach((a,c)=>{let l=a.trim();!l||l.startsWith("#")||i.push(this.parseLine(l,c+1,r))}),i}parseLine(e,t,r){if(!e.endsWith("."))throw new Error(`Invalid RDF statement at line ${t}: missing '.' terminator`);let s=e.slice(0,-1).trim(),a=this.parseSubject(s,t,r);s=a.rest.trim();let c=this.parsePredicate(s,t,r);s=c.rest.trim();let l=this.parseObject(s,t,r);if(s=l.rest.trim(),s.length>0)throw new Error(`Unexpected tokens after object at line ${t}`);return new w$.Triple(a.node,c.node,l.node)}parseSubject(e,t,r){return e.startsWith("<")?this.consumeIRI(e,t,r):e.startsWith("_:")?this.consumeBlankNode(e,t):this.consumePrefixedName(e,t,r)}parsePredicate(e,t,r){return e.startsWith("<")?this.consumeIRI(e,t,r):this.consumePrefixedName(e,t,r)}parseObject(e,t,r){return e.startsWith("<")?this.consumeIRI(e,t,r):e.startsWith("_:")?this.consumeBlankNode(e,t):e.startsWith('"')?this.consumeLiteral(e,t,r):this.consumePrefixedName(e,t,r)}consumePrefixedName(e,t,r){let i=e.match(/^([a-zA-Z_][\w-]*):([^\s]+)(?:\s+(.*))?$/);if(!i)throw new Error(`Invalid token at line ${t}: ${e}`);let[,s,a,c]=i,l=r.prefixes[s];if(!l)throw new Error(`Unknown prefix "${s}" at line ${t}`);return{node:new J3.IRI(`${l}${a}`),rest:(c??"").trimStart()}}consumeIRI(e,t,r){let i=this.findClosingBracket(e,"<",">");if(i===-1)throw new Error(`Invalid IRI at line ${t}`);let s=e.slice(1,i),a=new J3.IRI(s),c=e.slice(i+1).trimStart();return{node:a,rest:c}}consumeBlankNode(e,t){let r=e.match(/^_:(\w+)(?:\s+(.*))?$/);if(!r)throw new Error(`Invalid blank node identifier at line ${t}`);let[,i,s]=r;return{node:new E$.BlankNode(i),rest:(s??"").trimStart()}}consumeLiteral(e,t,r){let{value:i,rest:s}=this.consumeQuotedString(e,t),a=s.trimStart();if(a.startsWith("^^")){a=a.slice(2).trimStart();let c=a.startsWith("<")?this.consumeIRI(a,t,r):this.consumePrefixedName(a,t,r);return{node:new Wv.Literal(i,c.node),rest:c.rest}}if(a.startsWith("@")){let c=a.match(/^@([a-zA-Z-]+)(?:\s+(.*))?$/);if(!c)throw new Error(`Invalid language tag at line ${t}`);let[,l,u]=c;return{node:new Wv.Literal(i,void 0,l),rest:(u??"").trimStart()}}return{node:new Wv.Literal(i),rest:a}}consumeQuotedString(e,t){if(!e.startsWith('"'))throw new Error(`Expected quoted string at line ${t}`);let r="";for(let i=1;i<e.length;i++){let s=e[i];if(s==="\\"){if(i+1>=e.length)throw new Error(`Invalid escape sequence at line ${t}`);let a=e[i+1];switch(a){case"t":r+=" ",i+=1;break;case"b":r+="\b",i+=1;break;case"n":r+=`
375
375
  `,i+=1;break;case"r":r+="\r",i+=1;break;case"f":r+="\f",i+=1;break;case'"':r+='"',i+=1;break;case"\\":r+="\\",i+=1;break;case"u":{let c=e.slice(i+2,i+6);if(c.length!==4||!/^[0-9a-fA-F]{4}$/.test(c))throw new Error(`Invalid \\u escape at line ${t}`);r+=String.fromCharCode(parseInt(c,16)),i+=5;break}case"U":{let c=e.slice(i+2,i+10);if(c.length!==8||!/^[0-9a-fA-F]{8}$/.test(c))throw new Error(`Invalid \\U escape at line ${t}`);r+=String.fromCodePoint(parseInt(c,16)),i+=9;break}default:throw new Error(`Unknown escape sequence \\${a} at line ${t}`)}continue}if(s==='"'){let a=e.slice(i+1);return{value:r,rest:a}}r+=s}throw new Error(`Unterminated string literal at line ${t}`)}findClosingBracket(e,t,r){let i=0;for(let s=0;s<e.length;s++){let a=e[s];if(a===t){i++;continue}if(a===r&&(i--,i===0))return s}return-1}};ym.NTriplesParser=Gv});var Z3=S(_m=>{"use strict";Object.defineProperty(_m,"__esModule",{value:!0});_m.TurtleParser=void 0;var yl=yr(),A$=zv(),x$={rdf:yl.Namespace.RDF.iri.value,rdfs:yl.Namespace.RDFS.iri.value,owl:yl.Namespace.OWL.iri.value,xsd:yl.Namespace.XSD.iri.value,exo:yl.Namespace.EXO.iri.value,ems:yl.Namespace.EMS.iri.value},C$=/^@prefix\s+([a-zA-Z_][\w-]*):\s*<([^>]+)>\s*\.$/,Hv=class{static{o(this,"TurtleParser")}constructor(){this.nTriplesParser=new A$.NTriplesParser}parse(e,t={}){let r={...x$,...t.prefixes??{}},i=this.collectStatements(e),s=[];return i.forEach(({statement:a,lineNumber:c})=>{if(this.isPrefixStatement(a)){let u=a.match(C$);if(!u)throw new Error(`Invalid prefix declaration at line ${c}`);let[,f,d]=u;r[f]=d;return}if(a.includes(";")||a.includes(","))throw new Error(`Complex Turtle statements with ';' or ',' are not supported (line ${c})`);let l=this.normalizeShortcuts(a);s.push(this.nTriplesParser.parseLine(l,c,{prefixes:r,strict:!1}))}),s}collectStatements(e){let t=e.split(/\r?\n/),r=[],i="",s=0;if(t.forEach((a,c)=>{let l=a.trim();!l||l.startsWith("#")||(i||(s=c+1),i=i?`${i} ${l}`:l,l.endsWith(".")&&(r.push({statement:i,lineNumber:s}),i=""))}),i)throw new Error(`Unterminated Turtle statement near line ${s}`);return r}isPrefixStatement(e){return e.startsWith("@prefix")}normalizeShortcuts(e){return e.includes(" a ")?e.replace(/\sa\s/g," rdf:type "):e}};_m.TurtleParser=Hv});var eC=S(Sm=>{"use strict";Object.defineProperty(Sm,"__esModule",{value:!0});Sm.RDFSerializer=void 0;var _l=Yn(),Ho=Ae(),Qo=Ne(),Qv=qt(),Ss=yr(),I$=Q3(),R$=Vv(),P$=X3(),O$=Z3(),F$=zv(),D$=1024,N$=`
376
376
  `,L$={rdf:Ss.Namespace.RDF.iri.value,rdfs:Ss.Namespace.RDFS.iri.value,owl:Ss.Namespace.OWL.iri.value,xsd:Ss.Namespace.XSD.iri.value,exo:Ss.Namespace.EXO.iri.value,ems:Ss.Namespace.EMS.iri.value},Kv=class{static{o(this,"RDFSerializer")}constructor(e){this.store=e,this.turtleSerializer=new I$.TurtleSerializer,this.nTriplesSerializer=new R$.NTriplesSerializer,this.jsonldSerializer=new P$.JSONLDSerializer,this.turtleParser=new O$.TurtleParser,this.nTriplesParser=new F$.NTriplesParser}async serialize(e,t={}){let r=await this.store.match();return this.serializeTriples(r,e,t)}serializeTriples(e,t,r={}){switch(t){case"turtle":return this.turtleSerializer.serialize(e,{prefixes:r.prefixes,includeDefaultPrefixes:r.includeDefaultPrefixes,newline:r.newline});case"n-triples":return this.nTriplesSerializer.serialize(e,{newline:r.newline});case"json-ld":return this.jsonldSerializer.serialize(e,{context:r.prefixes,pretty:r.pretty,indent:r.indent});default:throw new Error(`Unsupported serialization format: ${t}`)}}stream(e,t={}){let r=t.newline??N$,i=t.batchSize??D$,s=t.includeDefaultPrefixes,a=t.prefixes,c=this,l=!1,u=[],f=[],d=0,h=o(async()=>{if(!l){if(f=await c.store.match(),e==="json-ld"){let y=c.jsonldSerializer.toDocument(f,{context:a,pretty:!1});u.push(...c.buildJsonLdChunks(y))}else if(e==="turtle"){let y=c.turtleSerializer.serializePrefixes(c.composePrefixes(a,s),r);y&&u.push(`${y}${r}${r}`)}l=!0}},"ensureInitialized");return{async next(){if(await h(),u.length>0)return{value:u.shift(),done:!1};if(e==="json-ld")return{value:void 0,done:!0};if(d>=f.length)return{value:void 0,done:!0};let y=f.slice(d,d+i);d+=y.length;let v="";if(e==="turtle"){let w=c.turtleSerializer.serializeTriplesOnly(y,r);w&&(v=`${w}${r}`)}else e==="n-triples"&&(v=c.nTriplesSerializer.serializeChunk(y,r));return v?{value:v,done:!1}:this.next()},async return(){return u=[],f=[],d=0,{value:void 0,done:!0}},[Symbol.asyncIterator](){return this}}}async load(e,t,r={}){let i=this.parse(e,t,r);return r.mode!=="append"&&await this.store.clear(),await this.store.addAll(i),i.length}parse(e,t,r={}){switch(t){case"turtle":return this.turtleParser.parse(e,this.buildTurtleParseOptions(r));case"n-triples":return this.nTriplesParser.parse(e,this.buildNTriplesParseOptions(r));case"json-ld":return this.parseJsonLd(e,r);default:throw new Error(`Unsupported serialization format: ${t}`)}}buildTurtleParseOptions(e){return{prefixes:this.composePrefixes(e.prefixes,!0),strict:e.strict}}buildNTriplesParseOptions(e){return{prefixes:this.composePrefixes(e.prefixes,!0),strict:e.strict}}composePrefixes(e,t){return t??!0?{...L$,...e??{}}:{...e??{}}}parseJsonLd(e,t){let r;try{r=JSON.parse(e)}catch(u){throw new Error(`Invalid JSON-LD document: ${u.message}`)}let i=this.composePrefixes(t.prefixes,!0),s=this.extractContext(r),a={...i,...s},c=this.extractGraph(r),l=[];return c.forEach((u,f)=>{if(!u||typeof u!="object"||Array.isArray(u))throw new Error(`Invalid JSON-LD node at index ${f}`);let d=this.parseSubjectFromNode(u,a,f),h=Object.entries(u);for(let[p,y]of h){if(p==="@id"||p==="@context")continue;if(p==="@type"){this.collectTypeTriples(d,y,l,a);continue}let v=this.expandTerm(p,a),w=new Ho.IRI(v);this.collectTriplesForValue(d,w,y,l,a)}}),l}extractContext(e){if(!e||typeof e!="object"||Array.isArray(e))return{};let t=e["@context"];if(!t||typeof t!="object"||Array.isArray(t))return{};let r={};return Object.entries(t).forEach(([i,s])=>{typeof s=="string"&&(r[i]=s)}),r}extractGraph(e){if(Array.isArray(e))return e;if(!e||typeof e!="object")return[];let t=e["@graph"];return Array.isArray(t)?t:[e]}parseSubjectFromNode(e,t,r){let i=e["@id"];if(typeof i=="string"){if(i.startsWith("_:"))return new Qv.BlankNode(i.slice(2));if(this.isAbsoluteIri(i))return new Ho.IRI(i);let s=this.expandTerm(i,t);return new Ho.IRI(s)}return new Qv.BlankNode(`jsonld_${r}`)}collectTypeTriples(e,t,r,i){let s=Ss.Namespace.RDF.term("type");(Array.isArray(t)?t:[t]).forEach(c=>{if(typeof c!="string")throw new Error("Invalid @type value in JSON-LD node");let l=this.expandTerm(c,i);r.push(new _l.Triple(e,s,new Ho.IRI(l)))})}collectTriplesForValue(e,t,r,i,s){if(r!=null){if(Array.isArray(r)){r.forEach(a=>this.collectTriplesForValue(e,t,a,i,s));return}if(typeof r=="object"){let a=r;if(typeof a["@id"]=="string"){let c=this.parseIdNode(a["@id"],s);i.push(new _l.Triple(e,t,c));return}if(a["@value"]!==void 0){let c=this.parseLiteralObject(a,s);i.push(new _l.Triple(e,t,c));return}}if(typeof r=="string"){i.push(new _l.Triple(e,t,new Qo.Literal(r)));return}if(typeof r=="number"){let a=Number.isInteger(r)?Ss.Namespace.XSD.term("integer"):Ss.Namespace.XSD.term("decimal");i.push(new _l.Triple(e,t,new Qo.Literal(r.toString(),a)));return}if(typeof r=="boolean"){let a=Ss.Namespace.XSD.term("boolean");i.push(new _l.Triple(e,t,new Qo.Literal(r.toString(),a)));return}throw new Error("Unsupported JSON-LD value encountered")}}parseIdNode(e,t){if(e.startsWith("_:"))return new Qv.BlankNode(e.slice(2));if(this.isAbsoluteIri(e))return new Ho.IRI(e);let r=this.expandTerm(e,t);return new Ho.IRI(r)}parseLiteralObject(e,t){let r=e["@value"];if(typeof r!="string")throw new Error("JSON-LD literal values must be strings");if(typeof e["@language"]=="string"){let i=e["@direction"];return i==="ltr"||i==="rtl"?new Qo.Literal(r,void 0,e["@language"],i):new Qo.Literal(r,void 0,e["@language"])}if(typeof e["@type"]=="string"){let i=this.expandTerm(e["@type"],t);return new Qo.Literal(r,new Ho.IRI(i))}return new Qo.Literal(r)}expandTerm(e,t){if(this.isAbsoluteIri(e))return e;let r=e.indexOf(":");if(r>0){let s=e.slice(0,r),a=e.slice(r+1),c=t[s];if(!c)throw new Error(`Unknown prefix "${s}" in JSON-LD document`);return`${c}${a}`}let i=t["@vocab"];if(i)return`${i}${e}`;throw new Error(`Unable to expand JSON-LD term "${e}"`)}isAbsoluteIri(e){return/^[a-z][a-z0-9+.-]*:/i.test(e)}buildJsonLdChunks(e){let t=[],r=JSON.stringify(e["@context"]);return t.push(`{"@context":${r},"@graph":[`),e["@graph"].forEach((i,s)=>{let a=JSON.stringify(i);s>0?t.push(`,${a}`):t.push(a)}),t.push(`]}
377
- `),t}};Sm.RDFSerializer=Kv});var Yv=S(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});Sl.OBSIDIAN_VAULT_SCHEME=void 0;Sl.vaultPathToIRI=k$;Sl.OBSIDIAN_VAULT_SCHEME="obsidian://vault/";function k$(n){let e=n.startsWith("./")?n.slice(2):n;return`${Sl.OBSIDIAN_VAULT_SCHEME}${encodeURI(e)}`}o(k$,"vaultPathToIRI")});var Jv=S(vm=>{"use strict";Object.defineProperty(vm,"__esModule",{value:!0});vm.RDFVocabularyMapper=void 0;var er=Yn(),tC=Ae(),J=yr(),Xv=class{static{o(this,"RDFVocabularyMapper")}constructor(){this.propertyMappings=new Map([["exo__Instance_class",J.Namespace.RDF.term("type")],["exo__Asset_isDefinedBy",J.Namespace.RDFS.term("isDefinedBy")],["exo__Class_superClass",J.Namespace.RDFS.term("subClassOf")],["exo__Property_range",J.Namespace.RDFS.term("range")],["exo__Property_domain",J.Namespace.RDFS.term("domain")],["exo__Property_superProperty",J.Namespace.RDFS.term("subPropertyOf")]])}generateClassHierarchyTriples(){let e=[];return e.push(new er.Triple(J.Namespace.EXO.term("Asset"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.RDFS.term("Resource"))),e.push(new er.Triple(J.Namespace.EXO.term("Class"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.RDFS.term("Class"))),e.push(new er.Triple(J.Namespace.EXO.term("Property"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.RDF.term("Property"))),e.push(new er.Triple(J.Namespace.EMS.term("Task"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("Project"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("Area"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("Workflow"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("WorkflowState"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("WorkflowTransition"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EXOCMD.term("Command"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EXOCMD.term("Precondition"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EXOCMD.term("Grounding"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EXOCMD.term("CommandBinding"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e}generatePropertyHierarchyTriples(){let e=[];return e.push(new er.Triple(J.Namespace.EXO.term("Instance_class"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDF.term("type"))),e.push(new er.Triple(J.Namespace.EXO.term("Asset_isDefinedBy"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("isDefinedBy"))),e.push(new er.Triple(J.Namespace.EXO.term("Class_superClass"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("subClassOf"))),e.push(new er.Triple(J.Namespace.EXO.term("Property_range"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("range"))),e.push(new er.Triple(J.Namespace.EXO.term("Property_domain"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("domain"))),e.push(new er.Triple(J.Namespace.EXO.term("Property_superProperty"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("subPropertyOf"))),e}generateMappedTriple(e,t,r){let i=this.propertyMappings.get(t);if(!i)return null;let s;if(r instanceof tC.IRI)s=r;else{let a=r.match(/^(ems|exo|exocmd)__(.+)$/);if(a){let[,c,l]=a;s=(c==="ems"?J.Namespace.EMS:c==="exocmd"?J.Namespace.EXOCMD:J.Namespace.EXO).term(l)}else s=new tC.IRI(r)}return new er.Triple(e,i,s)}hasMappingFor(e){return this.propertyMappings.has(e)}};vm.RDFVocabularyMapper=Xv});var rC=S(wm=>{"use strict";Object.defineProperty(wm,"__esModule",{value:!0});wm.RDFSInferenceEngine=void 0;var M$=Yn(),bm=Ae(),Zv=class{static{o(this,"RDFSInferenceEngine")}async materialize(e){let t=await e.predicates(),r=t.find(d=>d.value.includes("Class_superClass")),i=t.find(d=>d.value.includes("Instance_class"));if(!r||!i)return 0;let s=await this.buildDirectParentMap(e,r);if(s.size===0)return 0;let a=this.computeAllAncestors(s),c=await e.count(),l=await e.match(void 0,i),u=[];for(let d of l)if(d.object instanceof bm.IRI){let h=a.get(d.object.value);if(h)for(let p of h)u.push(new M$.Triple(d.subject,i,new bm.IRI(p)))}return u.length>0&&await e.addAll(u),await e.count()-c}async buildDirectParentMap(e,t){let r=await e.match(void 0,t),i=new Map;for(let s of r)if(s.subject instanceof bm.IRI&&s.object instanceof bm.IRI){let a=s.subject.value,c=s.object.value;i.has(a)||i.set(a,new Set),i.get(a).add(c)}return i}computeAllAncestors(e){let t=new Map;for(let r of e.keys())t.has(r)||t.set(r,this.computeAncestorsBFS(r,e));return t}computeAncestorsBFS(e,t){let r=new Set,i=new Set,s=[],a=t.get(e);if(a)for(let c of a)s.push(c);for(;s.length>0;){let c=s.shift();if(i.has(c))continue;i.add(c),r.add(c);let l=t.get(c);if(l)for(let u of l)i.has(u)||s.push(u)}return r}};wm.RDFSInferenceEngine=Zv});var rb=S(Ko=>{"use strict";var j$=Ko&&Ko.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s};Object.defineProperty(Ko,"__esModule",{value:!0});Ko.NonInheritablePropertyRegistry=void 0;var $$=fe(),nC=Ae(),iC=Ne(),eb=yr(),tb=class{static{o(this,"NonInheritablePropertyRegistry")}constructor(){this.nonInheritableIRIs=new Set,this.initialized=!1}async initialize(e){this.nonInheritableIRIs.clear();try{let t=await e.predicates(),r=t.find(c=>c.value.includes("Instance_class"));if(!r){this.initialized=!0;return}let i=await this.findNonInheritableClassIRI(e,t);if(!i){this.initialized=!0;return}let s=await e.match(void 0,r,i);if(s.length===0){this.initialized=!0;return}let a=t.find(c=>c.value.includes("Asset_label"));if(!a){this.initialized=!0;return}for(let c of s){let l=await e.match(c.subject,a,void 0);for(let u of l)if(u.object instanceof iC.Literal){let f=u.object.value,d=this.propertyKeyToIRI(f);d&&this.nonInheritableIRIs.add(d)}}}catch{}this.initialized=!0}isNonInheritable(e){return this.nonInheritableIRIs.has(e)}get size(){return this.nonInheritableIRIs.size}get isInitialized(){return this.initialized}async findNonInheritableClassIRI(e,t){let r=t.find(a=>a.value.includes("Asset_label"));if(!r)return null;let i=await e.match(void 0,r,new iC.Literal("exo__NonInheritableProperty"));if(i.length>0&&i[0].subject instanceof nC.IRI)return i[0].subject;let s=t.find(a=>a.value.includes("Instance_class"));if(s){let a=await e.match(void 0,s,void 0);for(let c of a)if(c.object instanceof nC.IRI&&c.object.value.includes("NonInheritableProperty"))return c.object}return null}propertyKeyToIRI(e){return e.startsWith("exo__")?eb.Namespace.EXO.term(e.substring(5)).value:e.startsWith("ems__")?eb.Namespace.EMS.term(e.substring(5)).value:e.startsWith("exocmd__")?eb.Namespace.EXOCMD.term(e.substring(8)).value:null}};Ko.NonInheritablePropertyRegistry=tb;Ko.NonInheritablePropertyRegistry=tb=j$([(0,$$.injectable)()],tb)});var sb=S(Yo=>{"use strict";var B$=Yo&&Yo.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s};Object.defineProperty(Yo,"__esModule",{value:!0});Yo.PropertyCardinalityRegistry=void 0;var V$=fe(),sC=Ae(),aC=Ne(),nb=yr(),ib=class{static{o(this,"PropertyCardinalityRegistry")}constructor(){this.multiValuedIRIs=new Set,this.initialized=!1}async initialize(e){this.multiValuedIRIs.clear();try{let t=await e.predicates(),r=t.find(c=>c.value.includes("Property_cardinality"));if(!r){this.initialized=!0;return}let i=await this.findMultipleCardinalityIRI(e,t);if(!i){this.initialized=!0;return}let s=await e.match(void 0,r,i);if(s.length===0){this.initialized=!0;return}let a=t.find(c=>c.value.includes("Asset_label"));if(!a){this.initialized=!0;return}for(let c of s){let l=await e.match(c.subject,a,void 0);for(let u of l)if(u.object instanceof aC.Literal){let f=u.object.value,d=this.propertyKeyToIRI(f);d&&this.multiValuedIRIs.add(d)}}}catch{}this.initialized=!0}isMultiValued(e){return this.multiValuedIRIs.has(e)}get size(){return this.multiValuedIRIs.size}get isInitialized(){return this.initialized}async findMultipleCardinalityIRI(e,t){let r=t.find(a=>a.value.includes("Asset_label"));if(!r)return null;let i=await e.match(void 0,r,new aC.Literal("exo__PropertyCardinalityMultiple"));if(i.length>0&&i[0].subject instanceof sC.IRI)return i[0].subject;let s=t.find(a=>a.value.includes("Instance_class"));if(s){let a=await e.match(void 0,s,void 0);for(let c of a)if(c.object instanceof sC.IRI&&c.object.value.includes("PropertyCardinalityMultiple"))return c.object}return null}propertyKeyToIRI(e){return e.startsWith("exo__")?nb.Namespace.EXO.term(e.substring(5)).value:e.startsWith("ems__")?nb.Namespace.EMS.term(e.substring(5)).value:e.startsWith("exocmd__")?nb.Namespace.EXOCMD.term(e.substring(8)).value:null}};Yo.PropertyCardinalityRegistry=ib;Yo.PropertyCardinalityRegistry=ib=B$([(0,V$.injectable)()],ib)});var cb=S(Sr=>{"use strict";var U$=Sr&&Sr.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},q$=Sr&&Sr.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(Sr,"__esModule",{value:!0});Sr.PrototypeChainMaterializer=Sr.MAX_PROTOTYPE_DEPTH=Sr.INFERRED_GRAPH=void 0;Sr.inferredGraphForDepth=ab;var W$=fe(),oC=Yn(),qa=Ae(),G$=rb(),z$=sb();Sr.INFERRED_GRAPH=new qa.IRI("https://exocortex.my/ontology/exo#inferred");var H$="https://exocortex.my/ontology/exo#inferred/";function ab(n){return new qa.IRI(`${H$}${n}`)}o(ab,"inferredGraphForDepth");Sr.MAX_PROTOTYPE_DEPTH=10;var ob=class{static{o(this,"PrototypeChainMaterializer")}constructor(e,t){this.registry=e,this.cardinalityRegistry=t??null}async materialize(e){let r=(await e.predicates()).find(c=>c.value.includes("Asset_prototype"));if(!r)return 0;let i=await e.match(void 0,r,void 0);if(i.length===0)return 0;let s=new Map;for(let c of i)if(c.subject instanceof qa.IRI&&c.object instanceof qa.IRI){let l=c.subject.value,u=c.object.value;l!==u&&s.set(l,c.object)}if(s.size===0)return 0;let a=0;for(let[c]of s){let l=new qa.IRI(c),u=this.resolveChain(c,s);if(u.length===0)continue;let f=await e.match(l,void 0,void 0),d=new Set,h=new Map;for(let p of f)if(d.add(p.predicate.value),this.isMultiValued(p.predicate.value)){let y=p.object instanceof qa.IRI?p.object.value:String(p.object),v=h.get(p.predicate.value);v||(v=new Set,h.set(p.predicate.value,v)),v.add(y)}for(let p=0;p<u.length;p++){let y=u[p],v=p+1,w=new qa.IRI(y),b=await e.match(w,void 0,void 0),A=new Set;if(e.matchInGraph){let I=await e.matchInGraph(w,void 0,void 0,Sr.INFERRED_GRAPH);for(let j of I)A.add(j.predicate.value)}for(let I of b){let j=I.predicate.value;if(this.registry.isNonInheritable(j)||A.has(j))continue;if(d.has(j)&&this.isMultiValued(j)){let te=I.object instanceof qa.IRI?I.object.value:String(I.object);if(h.get(j)?.has(te))continue;let G=h.get(j);G||(G=new Set,h.set(j,G)),G.add(te);let F=new oC.Triple(l,I.predicate,I.object);await e.add(F),e.addToGraph&&(await e.addToGraph(F,Sr.INFERRED_GRAPH),await e.addToGraph(F,ab(v))),a++;continue}if(d.has(j))continue;let V=new oC.Triple(l,I.predicate,I.object);await e.add(V),e.addToGraph&&(await e.addToGraph(V,Sr.INFERRED_GRAPH),await e.addToGraph(V,ab(v))),d.add(j),a++}}}return a}isMultiValued(e){return this.cardinalityRegistry?this.cardinalityRegistry.isMultiValued(e):!1}resolveChain(e,t){let r=[],i=new Set;i.add(e);let s=[],a=t.get(e);for(a&&s.push(a.value);s.length>0&&r.length<Sr.MAX_PROTOTYPE_DEPTH;){let c=s.shift();if(c===void 0)break;if(i.has(c))continue;i.add(c),r.push(c);let l=t.get(c);l&&!i.has(l.value)&&s.push(l.value)}return r}};Sr.PrototypeChainMaterializer=ob;Sr.PrototypeChainMaterializer=ob=U$([(0,W$.injectable)(),q$("design:paramtypes",[G$.NonInheritablePropertyRegistry,z$.PropertyCardinalityRegistry])],ob)});var ub=S(dr=>{"use strict";var Q$=dr&&dr.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},K$=dr&&dr.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(dr,"__esModule",{value:!0});dr.SourceAnnotator=dr.DEPTH_VARIABLE=dr.SOURCE_VARIABLE=void 0;var Y$=fe(),vl=Ne(),X$=Ae(),Em=cb();dr.SOURCE_VARIABLE="_source";dr.DEPTH_VARIABLE="_depth";var lb=class{static{o(this,"SourceAnnotator")}constructor(e){this.tripleStore=e}async annotate(e,t,r,i){if(!this.tripleStore.matchInGraph)return e.map(a=>{let c=a.clone();return c.set(dr.SOURCE_VARIABLE,new vl.Literal("own")),c});let s=[];for(let a of e){let c=a.get(t),l=a.get(r),u=a.get(i),f=a.clone();if(!c||!l||!u)f.set(dr.SOURCE_VARIABLE,new vl.Literal("own"));else{let d=await this.determineSource(c,l,u);f.set(dr.SOURCE_VARIABLE,new vl.Literal(d))}s.push(f)}return s}async annotateSingle(e,t,r,i){return(await this.annotate([e],t,r,i))[0]}async determineSource(e,t,r){return this.tripleStore.matchInGraph&&(await this.tripleStore.matchInGraph(e,t,r,Em.INFERRED_GRAPH)).length>0?"inherited":"own"}async getInheritanceDepth(e,t,r){if(!this.tripleStore.matchInGraph)return 0;for(let i=1;i<=Em.MAX_PROTOTYPE_DEPTH;i++){let s=(0,Em.inferredGraphForDepth)(i);if((await this.tripleStore.matchInGraph(e,t,r,s)).length>0)return i}return 0}async annotateBySubject(e,t){if(!this.tripleStore.matchInGraph)return e.map(s=>{let a=s.clone();return a.set(dr.SOURCE_VARIABLE,new vl.Literal("own")),a});let r=[],i=new Map;for(let s of e){let a=s.get(t),c=s.clone();if(!a||!(a instanceof X$.IRI))c.set(dr.SOURCE_VARIABLE,new vl.Literal("own"));else{let l=a.value;if(!i.has(l)){let f=await this.tripleStore.matchInGraph(a,void 0,void 0,Em.INFERRED_GRAPH);i.set(l,f.length>0?"inherited":"own")}let u=i.get(l)??"own";c.set(dr.SOURCE_VARIABLE,new vl.Literal(u))}r.push(c)}return r}};dr.SourceAnnotator=lb;dr.SourceAnnotator=lb=Q$([(0,Y$.injectable)(),K$("design:paramtypes",[Object])],lb)});var db=S(Bi=>{"use strict";var J$=Bi&&Bi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},Z$=Bi&&Bi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},cC=Bi&&Bi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Bi,"__esModule",{value:!0});Bi.NoteToRDFConverter=void 0;var fb=fe(),Yr=Yn(),Wa=Ae(),Rn=Ne(),lC=qt(),Mr=yr(),uC=wt(),eB=Jv(),tB=Pc(),fC=Yv(),Pn=r_(),bl=class{static{o(this,"NoteToRDFConverter")}constructor(e,t=tB.NullLogger){this.vault=e,this.logger=t,this.BODY_WIKILINK_PATTERN=/(?<!!)\[\[([^\]|]+)(?:\|[^\]]+)?\]\]/g,this.pendingExtraTriples=[],this.vocabularyMapper=new eB.RDFVocabularyMapper}async convertNote(e){let t=this.vault.getFrontmatter(e);return t?Pn.Exo003Parser.isExo003Format(t)?this.convertExo003Note(e,t):this.convertLegacyNote(e,t):[]}async convertLegacyNote(e,t){this.pendingExtraTriples=[];let r=[],i=this.notePathToIRI(e.path),s=Mr.Namespace.EXO.term("Asset_fileName");r.push(new Yr.Triple(i,s,new Rn.Literal(e.basename)));for(let[c,l]of Object.entries(t)){if(!this.isExocortexProperty(c))continue;let u=this.propertyKeyToIRI(c),f=Array.isArray(l)?l:[l];for(let d of f)if(c==="exo__Instance_class"){let h=this.valueToClassURI(d);r.push(new Yr.Triple(i,u,h))}else{let h=await this.valueToRDFObject(d,e,u);for(let p of h)if(r.push(new Yr.Triple(i,u,p)),this.vocabularyMapper.hasMappingFor(c)&&p instanceof Wa.IRI){let y=this.vocabularyMapper.generateMappedTriple(i,c,p);y&&r.push(y)}}if(c==="exo__Instance_class")for(let d of f){let h=this.valueToClassURI(d);if(h instanceof Wa.IRI){let p=Mr.Namespace.RDF.term("type");r.push(new Yr.Triple(i,p,h))}}if(c==="exo__Asset_label"){let d=Mr.Namespace.RDFS.term("label");for(let h of f)typeof h=="string"&&h.length>0&&r.push(new Yr.Triple(i,d,new Rn.Literal(h)))}}r.push(...this.pendingExtraTriples),this.pendingExtraTriples=[];let a=await this.convertBodyWikilinks(e,i);return r.push(...a),r}async convertExo003Note(e,t){let r=Pn.Exo003Parser.parse(t);if(!r.success||!r.metadata)return[];let i=r.metadata,s=[];switch(i.metadata){case Pn.Exo003MetadataType.Namespace:break;case Pn.Exo003MetadataType.Anchor:s.push(...this.convertExo003Anchor(e,i));break;case Pn.Exo003MetadataType.BlankNode:s.push(...this.convertExo003BlankNode(e,i));break;case Pn.Exo003MetadataType.Statement:s.push(...this.convertExo003Statement(e,i));break;case Pn.Exo003MetadataType.Body:s.push(...await this.convertExo003Body(e,i));break}return s}convertExo003Anchor(e,t){let r=this.notePathToIRI(e.path),i=new Wa.IRI(t.uri);return[new Yr.Triple(r,Mr.Namespace.OWL.term("sameAs"),i),new Yr.Triple(i,Mr.Namespace.OWL.term("sameAs"),r)]}convertExo003BlankNode(e,t){let r=this.notePathToIRI(e.path),i=t.uri.replace(/[^a-zA-Z0-9_-]/g,"_");return[new Yr.Triple(r,Mr.Namespace.OWL.term("sameAs"),new lC.BlankNode(i))]}convertExo003Statement(e,t){let r=[];try{let i=this.createExo003ReferenceResolver(e),s=Pn.Exo003Parser.toTriple(t,i);r.push(s);let a=this.notePathToIRI(e.path);r.push(new Yr.Triple(a,Mr.Namespace.RDF.term("value"),s.subject))}catch{}return r}async convertExo003Body(e,t){let r=[];try{let i=await this.vault.read(e),s=this.extractBodyContent(i),a=this.createExo003ReferenceResolver(e),c=a(t.subject),l=a(t.predicate);if(c.type==="literal")throw new Error("Body subject cannot be a literal");if(l.type!=="iri")throw new Error("Body predicate must be an IRI");let u=c.type==="iri"?new Wa.IRI(c.value):new lC.BlankNode(c.value),f=new Wa.IRI(l.value),d=Pn.Exo003Parser.toLiteral(t,s.trim());r.push(new Yr.Triple(u,f,d));let h=this.notePathToIRI(e.path);r.push(new Yr.Triple(h,Mr.Namespace.RDF.term("value"),u))}catch{}return r}createExo003ReferenceResolver(e){return t=>{let r=this.extractWikilink(t),i=r||t,s=this.vault.getFirstLinkpathDest(i,e.path);if(s){let a=this.vault.getFrontmatter(s);if(a&&Pn.Exo003Parser.isExo003Format(a)){let c=Pn.Exo003Parser.parse(a);if(c.success&&c.metadata){let l=c.metadata;if(l.metadata===Pn.Exo003MetadataType.Anchor||l.metadata===Pn.Exo003MetadataType.Namespace)return{type:"iri",value:l.uri};if(l.metadata===Pn.Exo003MetadataType.BlankNode)return{type:"blank",value:l.uri.replace(/[^a-zA-Z0-9_-]/g,"_")}}}return{type:"iri",value:this.notePathToIRI(s.path).value}}return!r&&t.includes("://")?{type:"iri",value:t}:{type:"literal",value:t}}}async convertVault(){return(await this.convertVaultWithValidation({strict:!1})).triples}async convertVaultWithValidation(e={}){let t=this.vault.getAllFiles(),r=[],i=[],s=e.strict??!1;for(let a of t)try{let c=this.vault.getFrontmatter(a),l=c?this.validateExocortexAsset(c):null;if(l){if(s)throw new Error(`Invariant violation in "${a.path}": ${l.message}`);i.push({path:a.path,reason:`Invariant violation: ${l.message}`}),this.logger.warn(`Skipping file with invariant violation: ${a.path}`,{code:l.code,property:l.property,reason:l.message});continue}let u=await this.convertNote(a);r.push(...u)}catch(c){let l=c instanceof Error?c.message:String(c);if(s)throw new Error(`Invalid IRI for file "${a.path}": ${l}`);i.push({path:a.path,reason:`Invalid IRI: ${l}`}),this.logger.warn(`Skipping file with invalid IRI: ${a.path}`,{reason:l})}return{triples:r,skippedFiles:i,summary:{total:t.length,indexed:t.length-i.length,skipped:i.length}}}validateExocortexAsset(e){let t=o(l=>l==null?!0:typeof l=="string"?l.trim()==="":Array.isArray(l)?l.length===0||l.every(t):!1,"isEmpty");if(!("exo__Instance_class"in e||"exo__Asset_uid"in e))return null;let i=["exo__Asset_uid","exo__Asset_isDefinedBy","exo__Asset_label","exo__Instance_class"];for(let l of i){if(!(l in e))return{code:"MISSING_PROPERTY",property:l,message:`Required property "${l}" is missing`};if(t(e[l]))return{code:"EMPTY_PROPERTY",property:l,message:`Required property "${l}" is empty`}}let s=["ems__Effort_status","ems__Effort_parent","ems__Effort_lockedBy","ems__Effort_lockExpires","exo__Asset_updatedAt","ems__Effort_startTimestamp"];for(let l of s)if(l in e&&t(e[l]))return{code:"EMPTY_OPTIONAL_PROPERTY",property:l,message:`Optional property "${l}" is present but empty`};let a=e.exo__Instance_class,c=Array.isArray(a)?a:[a];for(let l of c){if(typeof l!="string")continue;let u=this.removeQuotes(l),d=(this.extractWikilink(u)??u).trim();if(/^[a-z][a-zA-Z0-9]*__/.test(d)&&/[\s()]/.test(d))return{code:"INVALID_INSTANCE_CLASS_IRI",property:"exo__Instance_class",message:`Invalid Instance_class IRI: "${l}"`}}return null}async validateVault(){let e=this.vault.getAllFiles(),t=[];for(let r of e){let i=(0,fC.vaultPathToIRI)(r.path);Wa.IRI.isValidIRI(i)||t.push({path:r.path,reason:`Path "${r.path}" cannot be converted to a valid IRI`})}return t}notePathToIRI(e){return new Wa.IRI((0,fC.vaultPathToIRI)(e))}isExocortexProperty(e){return Mr.Namespace.fromPropertyKey(e)!==null}propertyKeyToIRI(e){let t=Mr.Namespace.fromPropertyKey(e);if(!t)throw new Error(`Invalid property key: ${e}`);return t.namespace.term(t.localName)}emitTypeTripleForEnumInstance(e,t){let r=this.vault.getFrontmatter(t);if(!r)return;let i=r.exo__Instance_class,s=Array.isArray(i)?i[0]:i;if(typeof s!="string")return;let a=this.valueToClassURI(s);a instanceof Wa.IRI&&this.pendingExtraTriples.push(new Yr.Triple(e,Mr.Namespace.RDF.term("type"),a))}async valueToRDFObject(e,t,r){if(typeof e=="string"){let i=this.removeQuotes(e),s=this.extractWikilink(i);if(s){let a=this.vault.getFirstLinkpathDest(s,t.path);if(a){let c=this.notePathToIRI(a.path),l=s.includes("|")?s.split("|")[0]:s;if(this.isUUID(l)){let f=new Rn.Literal(l),d=this.expandClassValue(a.basename);if(d)return this.emitTypeTripleForEnumInstance(d,a),[d];let h=this.vault.getFrontmatter(a);if(h){let y=h.exo__Asset_label;if(typeof y=="string"){let v=this.expandClassValue(y);if(v)return[v]}}return r?.value.endsWith("#Asset_prototype")||r?.value.endsWith("/Asset_prototype")?[c,f]:[c]}let u=this.expandClassValue(a.basename);return u?(this.emitTypeTripleForEnumInstance(u,a),[u]):[c]}if(this.isClassReference(s)){let c=this.expandClassValue(s);if(c)return[c]}return[new Rn.Literal(i)]}if(this.isClassReference(i)){let a=this.expandClassValue(i);if(a)return[a]}return this.isISO8601DateTime(i)?[new Rn.Literal(i,Mr.Namespace.XSD.term("dateTime"))]:[new Rn.Literal(i)]}return typeof e=="boolean"?[new Rn.Literal(e.toString())]:typeof e=="number"?[new Rn.Literal(e.toString(),Mr.Namespace.XSD.term("decimal"))]:e instanceof Date?[new Rn.Literal(e.toISOString(),Mr.Namespace.XSD.term("dateTime"))]:[new Rn.Literal(String(e))]}isISO8601DateTime(e){return/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-]\d{2}:\d{2})?$/.test(e)}removeQuotes(e){let t=e.trim();return t.startsWith('"')&&t.endsWith('"')||t.startsWith("'")&&t.endsWith("'")?t.substring(1,t.length-1):e}extractWikilink(e){let t=e.match(/^\[\[([^\]]+)\]\]$/);if(!t)return null;let r=t[1];return r.includes("|")?r.split("|")[0]:r}extractWikilinkAlias(e){let t=e.match(/^\[\[([^\]]+)\]\]$/);if(!t)return null;let r=t[1],i=r.indexOf("|");return i>=0?r.substring(i+1).trim():null}valueToClassURI(e){if(typeof e!="string")return new Rn.Literal(String(e));let t=this.removeQuotes(e),i=this.extractWikilink(t)||t,s=this.expandClassValue(i);if(s)return s;let a=this.extractWikilinkAlias(t);if(a){let c=this.expandClassValue(a);if(c)return c}if(this.isUUID(i)){let c=this.vault.getFirstLinkpathDest(i,"");if(c){let l=this.expandClassValue(c.basename);if(l)return l;let u=this.vault.getFrontmatter(c);if(u){let f=u.exo__Asset_label;if(typeof f=="string"){let d=this.expandClassValue(f);if(d)return d}}}}return new Rn.Literal(t)}isClassReference(e){return/\s/.test(e)?!1:Mr.Namespace.fromPropertyKey(e)!==null}isUUID(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}expandClassValue(e){let t=this.removeQuotes(e),r=Mr.Namespace.fromPropertyKey(t);return r?r.namespace.term(r.localName):null}extractBodyContent(e){let t=/^---\r?\n[\s\S]*?\r?\n---\r?\n?/;return e.replace(t,"")}extractBodyWikilinks(e){let t=new Set,r,i=new RegExp(this.BODY_WIKILINK_PATTERN.source,"g");for(;(r=i.exec(e))!==null;)r[1]&&t.add(r[1]);return Array.from(t)}async convertBodyWikilinks(e,t){let r=[];try{let i=await this.vault.read(e),s=this.extractBodyContent(i),a=this.extractBodyWikilinks(s),c=Mr.Namespace.EXO.term("Asset_bodyLink");for(let l of a){let u=this.vault.getFirstLinkpathDest(l,e.path);if(u){let f=this.notePathToIRI(u.path);r.push(new Yr.Triple(t,c,f))}else if(this.isClassReference(l)){let f=this.expandClassValue(l);f?r.push(new Yr.Triple(t,c,f)):r.push(new Yr.Triple(t,c,new Rn.Literal(l)))}else r.push(new Yr.Triple(t,c,new Rn.Literal(l)))}}catch{}return r}};Bi.NoteToRDFConverter=bl;bl.SkippedFileInfo=class{constructor(n,e){this.path=n,this.reason=e}};bl.VaultValidationResult=class{constructor(n,e,t){this.triples=n,this.skippedFiles=e,this.summary=t}};bl.VaultValidationOptions=class{constructor(n=!1){this.strict=n}};Bi.NoteToRDFConverter=bl=J$([(0,fb.injectable)(),cC(0,(0,fb.inject)(uC.DI_TOKENS.IVaultAdapter)),cC(1,(0,fb.inject)(uC.DI_TOKENS.ILogger)),Z$("design:paramtypes",[Object,Object])],bl)});var pb=S(Tm=>{"use strict";Object.defineProperty(Tm,"__esModule",{value:!0});Tm.FilterContainsOptimizer=void 0;var rB=Ae(),nB=/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i,hb=class{static{o(this,"FilterContainsOptimizer")}constructor(){this.tripleStore=null,this.lastOptimizationHints=[]}setTripleStore(e){this.tripleStore=e}getLastOptimizationHints(){return this.lastOptimizationHints}clearHints(){this.lastOptimizationHints=[]}async optimize(e){return this.clearHints(),this.optimizeRecursive(e)}optimizeSync(e,t){return this.clearHints(),this.optimizeSyncRecursive(e,t)}async optimizeRecursive(e){return e.type==="filter"?this.optimizeFilter(e):e.type==="join"?{type:"join",left:await this.optimizeRecursive(e.left),right:await this.optimizeRecursive(e.right)}:e.type==="leftjoin"?{...e,left:await this.optimizeRecursive(e.left),right:await this.optimizeRecursive(e.right)}:e.type==="union"?{type:"union",left:await this.optimizeRecursive(e.left),right:await this.optimizeRecursive(e.right)}:e.type==="minus"?{...e,left:await this.optimizeRecursive(e.left),right:await this.optimizeRecursive(e.right)}:e.type==="project"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="orderby"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="slice"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="distinct"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="reduced"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="group"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="extend"?{...e,input:await this.optimizeRecursive(e.input)}:e}optimizeSyncRecursive(e,t){return e.type==="filter"?this.optimizeFilterSync(e,t):e.type==="join"?{type:"join",left:this.optimizeSyncRecursive(e.left,t),right:this.optimizeSyncRecursive(e.right,t)}:e.type==="leftjoin"?{...e,left:this.optimizeSyncRecursive(e.left,t),right:this.optimizeSyncRecursive(e.right,t)}:e.type==="union"?{type:"union",left:this.optimizeSyncRecursive(e.left,t),right:this.optimizeSyncRecursive(e.right,t)}:e.type==="minus"?{...e,left:this.optimizeSyncRecursive(e.left,t),right:this.optimizeSyncRecursive(e.right,t)}:e.type==="project"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="orderby"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="slice"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="distinct"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="reduced"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="group"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="extend"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e}async optimizeFilter(e){let t=this.detectContainsUUIDPattern(e.expression);if(!t)return{type:"filter",expression:e.expression,input:await this.optimizeRecursive(e.input)};let r=[];return this.tripleStore&&(r=await this.findSubjectsContainingUUID(t.uuid)),this.rewriteFilter(e,t,r)}optimizeFilterSync(e,t){let r=this.detectContainsUUIDPattern(e.expression);if(!r)return{type:"filter",expression:e.expression,input:this.optimizeSyncRecursive(e.input,t)};let i=t?t.filter(s=>s.includes(r.uuid)):[];return this.rewriteFilter(e,r,i)}rewriteFilter(e,t,r){if(this.lastOptimizationHints.push({type:"uuid-index-lookup",originalPattern:`FILTER(CONTAINS(STR(?${t.variable}), "${t.uuid}"))`,suggestedRewrite:r.length===1?`VALUES ?${t.variable} { <${r[0]}> }`:r.length>1?`VALUES ?${t.variable} { ${r.map(i=>`<${i}>`).join(" ")} }`:"No matching URIs found for UUID",estimatedSpeedup:r.length>0?"O(n) \u2192 O(1)":"N/A",matchedUri:r.length===1?r[0]:void 0}),r.length===0)return{type:"filter",expression:e.expression,input:this.optimizeSyncRecursive(e.input)};if(r.length===1){let i=this.injectSubjectConstraint(e.input,t.variable,r[0]);if(i!==e.input)return i}return this.createValuesJoin(e,t,r)}detectContainsUUIDPattern(e){if(e.type==="function"||e.type==="functionCall"){let t=e;if((typeof t.function=="string"?t.function.toLowerCase():t.function?.value?.toLowerCase()??"")==="contains"&&t.args.length===2)return this.analyzeContainsArgs(t.args[0],t.args[1],e)}if(e.type==="logical"&&e.operator==="&&")for(let t of e.operands){let r=this.detectContainsUUIDPattern(t);if(r)return r}return null}analyzeContainsArgs(e,t,r){let i=null;if(e.type==="function"||e.type==="functionCall"){let s=e;if((typeof s.function=="string"?s.function.toLowerCase():s.function?.value?.toLowerCase()??"")==="str"&&s.args.length===1){let c=s.args[0];c.type==="variable"&&(i=c.name)}}if(!i&&e.type==="variable"&&(i=e.name),!i)return null;if(t.type==="literal"){let c=String(t.value).match(nB);if(c)return{variable:i,uuid:c[0].toLowerCase(),originalExpression:r}}return null}async findSubjectsContainingUUID(e){if(!this.tripleStore)return[];if(this.tripleStore.findSubjectsByUUID)return(await this.tripleStore.findSubjectsByUUID(e)).map(s=>s.value);let t=await this.tripleStore.subjects(),r=[];for(let i of t)i instanceof rB.IRI&&i.value.toLowerCase().includes(e.toLowerCase())&&r.push(i.value);return r}injectSubjectConstraint(e,t,r){if(e.type==="bgp"){let i=e.triples.map(a=>a.subject.type==="variable"&&a.subject.value===t?{...a,subject:{type:"iri",value:r}}:a);if(i.some((a,c)=>a.subject!==e.triples[c].subject))return{type:"bgp",triples:i}}if(e.type==="join"){let i=this.injectSubjectConstraint(e.left,t,r),s=this.injectSubjectConstraint(e.right,t,r);if(i!==e.left||s!==e.right)return{type:"join",left:i,right:s}}if(e.type==="filter"){let i=this.injectSubjectConstraint(e.input,t,r);if(i!==e.input)return{...e,input:i}}return e}createValuesJoin(e,t,r){return{type:"join",left:{type:"values",variables:[t.variable],bindings:r.map(a=>({[t.variable]:{type:"iri",value:a}}))},right:this.optimizeSyncRecursive(e.input)}}analyzeQuery(e){let t=[];return this.analyzeRecursive(e,t),t}analyzeRecursive(e,t){if(e.type==="filter"){let r=this.detectContainsUUIDPattern(e.expression);r&&t.push({type:"uuid-index-lookup",originalPattern:`FILTER(CONTAINS(STR(?${r.variable}), "${r.uuid}"))`,suggestedRewrite:`Use --optimize flag or rewrite as VALUES ?${r.variable} { <uri-containing-uuid> }`,estimatedSpeedup:"O(n) \u2192 O(1) with UUID index lookup"}),this.analyzeRecursive(e.input,t);return}e.type==="join"?(this.analyzeRecursive(e.left,t),this.analyzeRecursive(e.right,t)):e.type==="leftjoin"?(this.analyzeRecursive(e.left,t),this.analyzeRecursive(e.right,t)):e.type==="union"?(this.analyzeRecursive(e.left,t),this.analyzeRecursive(e.right,t)):e.type==="minus"?(this.analyzeRecursive(e.left,t),this.analyzeRecursive(e.right,t)):e.type==="project"?this.analyzeRecursive(e.input,t):e.type==="orderby"?this.analyzeRecursive(e.input,t):e.type==="slice"?this.analyzeRecursive(e.input,t):e.type==="distinct"?this.analyzeRecursive(e.input,t):e.type==="reduced"?this.analyzeRecursive(e.input,t):e.type==="group"?this.analyzeRecursive(e.input,t):e.type==="extend"&&this.analyzeRecursive(e.input,t)}};Tm.FilterContainsOptimizer=hb});var dC=S(Am=>{"use strict";Object.defineProperty(Am,"__esModule",{value:!0});Am.AlgebraOptimizer=void 0;var iB=pb(),mb=class{static{o(this,"AlgebraOptimizer")}constructor(){this.stats=new Map,this.tripleStore=null,this.filterContainsOptimizer=new iB.FilterContainsOptimizer}setTripleStore(e){this.tripleStore=e,this.filterContainsOptimizer.setTripleStore(e)}getOptimizationHints(){return this.filterContainsOptimizer.getLastOptimizationHints()}analyzeQuery(e){return this.filterContainsOptimizer.analyzeQuery(e)}optimize(e){let t=e;return t=this.eliminateEmptyBGPInFilterJoin(t),t=this.filterPushDown(t),t=this.joinReordering(t),t}async optimizeAsync(e){let t=e;return t=this.eliminateEmptyBGPInFilterJoin(t),this.tripleStore&&(t=await this.filterContainsOptimizer.optimize(t)),t=this.filterPushDown(t),t=this.joinReordering(t),t}optimizeWithSubjects(e,t){let r=e;return r=this.eliminateEmptyBGPInFilterJoin(r),r=this.filterContainsOptimizer.optimizeSync(r,t),r=this.filterPushDown(r),r=this.joinReordering(r),r}eliminateEmptyBGPInFilterJoin(e){if(e.type==="join"){if(e.left.type==="filter"){let t=e.left;if(t.input.type==="bgp"&&t.input.triples.length===0)return{type:"filter",expression:t.expression,input:this.eliminateEmptyBGPInFilterJoin(e.right)}}if(e.right.type==="filter"){let t=e.right;if(t.input.type==="bgp"&&t.input.triples.length===0)return{type:"filter",expression:t.expression,input:this.eliminateEmptyBGPInFilterJoin(e.left)}}return{type:"join",left:this.eliminateEmptyBGPInFilterJoin(e.left),right:this.eliminateEmptyBGPInFilterJoin(e.right)}}return e.type==="filter"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e.type==="leftjoin"?{...e,left:this.eliminateEmptyBGPInFilterJoin(e.left),right:this.eliminateEmptyBGPInFilterJoin(e.right)}:e.type==="union"?{...e,left:this.eliminateEmptyBGPInFilterJoin(e.left),right:this.eliminateEmptyBGPInFilterJoin(e.right)}:e.type==="minus"?{...e,left:this.eliminateEmptyBGPInFilterJoin(e.left),right:this.eliminateEmptyBGPInFilterJoin(e.right)}:e.type==="project"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e.type==="orderby"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e.type==="slice"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e.type==="distinct"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e}filterPushDown(e){return e.type==="filter"?this.pushDownFilter(e):e.type==="join"?{type:"join",left:this.filterPushDown(e.left),right:this.filterPushDown(e.right)}:e.type==="leftjoin"?{...e,left:this.filterPushDown(e.left),right:this.filterPushDown(e.right)}:e.type==="union"?{type:"union",left:this.filterPushDown(e.left),right:this.filterPushDown(e.right)}:e.type==="minus"?{...e,left:this.filterPushDown(e.left),right:this.filterPushDown(e.right)}:e.type==="project"?{...e,input:this.filterPushDown(e.input)}:e.type==="orderby"?{...e,input:this.filterPushDown(e.input)}:e.type==="slice"?{...e,input:this.filterPushDown(e.input)}:e.type==="distinct"?{...e,input:this.filterPushDown(e.input)}:e}pushDownFilter(e){let t=e.input;if(t.type==="join"){let r=this.getFilterVariables(e.expression),i=this.getOperationVariables(t.left),s=this.getOperationVariables(t.right),a=r.every(l=>i.has(l)),c=r.every(l=>s.has(l));return a&&!c?{type:"join",left:{type:"filter",expression:e.expression,input:this.filterPushDown(t.left)},right:this.filterPushDown(t.right)}:c&&!a?{type:"join",left:this.filterPushDown(t.left),right:{type:"filter",expression:e.expression,input:this.filterPushDown(t.right)}}:{type:"filter",expression:e.expression,input:{type:"join",left:this.filterPushDown(t.left),right:this.filterPushDown(t.right)}}}return t.type==="union"?{type:"union",left:{type:"filter",expression:e.expression,input:this.filterPushDown(t.left)},right:{type:"filter",expression:e.expression,input:this.filterPushDown(t.right)}}:{type:"filter",expression:e.expression,input:this.filterPushDown(t)}}getFilterVariables(e){let t=[];if(e.type==="variable")t.push(e.name);else if(e.type==="comparison")t.push(...this.getFilterVariables(e.left)),t.push(...this.getFilterVariables(e.right));else if(e.type==="logical")for(let r of e.operands)t.push(...this.getFilterVariables(r));else if(e.type==="function")for(let r of e.args)t.push(...this.getFilterVariables(r));return Array.from(new Set(t))}getOperationVariables(e){let t=new Set;if(e.type==="bgp")for(let r of e.triples)r.subject.type==="variable"&&t.add(r.subject.value),r.predicate.type==="variable"&&t.add(r.predicate.value),r.object.type==="variable"&&t.add(r.object.value);else if(e.type==="join"){let r=this.getOperationVariables(e.left),i=this.getOperationVariables(e.right);return new Set([...r,...i])}else{if(e.type==="filter")return this.getOperationVariables(e.input);if(e.type==="leftjoin"){let r=this.getOperationVariables(e.left),i=this.getOperationVariables(e.right);return new Set([...r,...i])}else if(e.type==="union"){let r=this.getOperationVariables(e.left),i=this.getOperationVariables(e.right);return new Set([...r,...i])}else{if(e.type==="minus")return this.getOperationVariables(e.left);if(e.type==="project")return new Set(e.variables)}}return t}joinReordering(e){return e.type==="join"?this.reorderJoin(e):e.type==="filter"?{...e,input:this.joinReordering(e.input)}:e.type==="leftjoin"?{...e,left:this.joinReordering(e.left),right:this.joinReordering(e.right)}:e.type==="union"?{...e,left:this.joinReordering(e.left),right:this.joinReordering(e.right)}:e.type==="minus"?{...e,left:this.joinReordering(e.left),right:this.joinReordering(e.right)}:e.type==="project"?{...e,input:this.joinReordering(e.input)}:e.type==="orderby"?{...e,input:this.joinReordering(e.input)}:e.type==="slice"?{...e,input:this.joinReordering(e.input)}:e.type==="distinct"?{...e,input:this.joinReordering(e.input)}:e}reorderJoin(e){let t=this.isConstrained(e.left),r=this.isConstrained(e.right);if(r&&!t)return{type:"join",left:this.joinReordering(e.right),right:this.joinReordering(e.left)};if(t&&!r)return{type:"join",left:this.joinReordering(e.left),right:this.joinReordering(e.right)};let i=this.estimateCost(e.left);return this.estimateCost(e.right)<i?{type:"join",left:this.joinReordering(e.right),right:this.joinReordering(e.left)}:{type:"join",left:this.joinReordering(e.left),right:this.joinReordering(e.right)}}isConstrained(e){return e.type==="values"?!0:e.type==="bgp"?e.triples.some(t=>t.object.type!=="variable"||t.subject.type!=="variable"):e.type==="filter"?this.isConstrained(e.input):e.type==="join"?this.isConstrained(e.left)||this.isConstrained(e.right):e.type==="union"?this.isConstrained(e.left)&&this.isConstrained(e.right):!1}estimateCost(e){if(e.type==="bgp"){let t=0;for(let r of e.triples){let i=10;r.subject.type==="variable"&&(i*=10),r.predicate.type==="variable"&&(i*=20),r.object.type==="variable"&&(i*=5),t+=i}return t}if(e.type==="filter")return this.estimateCost(e.input)*.3;if(e.type==="join"){let t=this.estimateCost(e.left),r=this.estimateCost(e.right);return e.left.type==="values"||e.right.type==="values"?Math.min(t,r)*2:t*r}if(e.type==="leftjoin")return this.estimateCost(e.left)+this.estimateCost(e.right)*.5;if(e.type==="union")return this.estimateCost(e.left)+this.estimateCost(e.right);if(e.type==="values"){let t=e.bindings;return Array.isArray(t)?t.length*5:10}return e.type==="minus"?this.estimateCost(e.left)+this.estimateCost(e.right)*.3:100}setStatistics(e,t){this.stats.set(e,t)}getStatistics(e){return this.stats.get(e)}};Am.AlgebraOptimizer=mb});var hC=S(xm=>{"use strict";Object.defineProperty(xm,"__esModule",{value:!0});xm.AlgebraSerializer=void 0;var gb=class{static{o(this,"AlgebraSerializer")}toString(e,t=0){let r=" ".repeat(t);switch(e.type){case"bgp":return`${r}BGP [
377
+ `),t}};Sm.RDFSerializer=Kv});var Yv=S(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});Sl.OBSIDIAN_VAULT_SCHEME=void 0;Sl.vaultPathToIRI=k$;Sl.OBSIDIAN_VAULT_SCHEME="obsidian://vault/";function k$(n){let e=n.startsWith("./")?n.slice(2):n;return`${Sl.OBSIDIAN_VAULT_SCHEME}${encodeURI(e)}`}o(k$,"vaultPathToIRI")});var Jv=S(vm=>{"use strict";Object.defineProperty(vm,"__esModule",{value:!0});vm.RDFVocabularyMapper=void 0;var er=Yn(),tC=Ae(),J=yr(),Xv=class{static{o(this,"RDFVocabularyMapper")}constructor(){this.propertyMappings=new Map([["exo__Instance_class",J.Namespace.RDF.term("type")],["exo__Asset_isDefinedBy",J.Namespace.RDFS.term("isDefinedBy")],["exo__Class_superClass",J.Namespace.RDFS.term("subClassOf")],["exo__Property_range",J.Namespace.RDFS.term("range")],["exo__Property_domain",J.Namespace.RDFS.term("domain")],["exo__Property_superProperty",J.Namespace.RDFS.term("subPropertyOf")]])}generateClassHierarchyTriples(){let e=[];return e.push(new er.Triple(J.Namespace.EXO.term("Asset"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.RDFS.term("Resource"))),e.push(new er.Triple(J.Namespace.EXO.term("Class"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.RDFS.term("Class"))),e.push(new er.Triple(J.Namespace.EXO.term("Property"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.RDF.term("Property"))),e.push(new er.Triple(J.Namespace.EMS.term("Task"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("Project"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("Area"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("Workflow"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("WorkflowState"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EMS.term("WorkflowTransition"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EXOCMD.term("Command"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EXOCMD.term("Precondition"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EXOCMD.term("Grounding"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e.push(new er.Triple(J.Namespace.EXOCMD.term("CommandBinding"),J.Namespace.RDFS.term("subClassOf"),J.Namespace.EXO.term("Asset"))),e}generatePropertyHierarchyTriples(){let e=[];return e.push(new er.Triple(J.Namespace.EXO.term("Instance_class"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDF.term("type"))),e.push(new er.Triple(J.Namespace.EXO.term("Asset_isDefinedBy"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("isDefinedBy"))),e.push(new er.Triple(J.Namespace.EXO.term("Class_superClass"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("subClassOf"))),e.push(new er.Triple(J.Namespace.EXO.term("Property_range"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("range"))),e.push(new er.Triple(J.Namespace.EXO.term("Property_domain"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("domain"))),e.push(new er.Triple(J.Namespace.EXO.term("Property_superProperty"),J.Namespace.RDFS.term("subPropertyOf"),J.Namespace.RDFS.term("subPropertyOf"))),e}generateMappedTriple(e,t,r){let i=this.propertyMappings.get(t);if(!i)return null;let s;if(r instanceof tC.IRI)s=r;else{let a=r.match(/^(ems|exo|exocmd)__(.+)$/);if(a){let[,c,l]=a;s=(c==="ems"?J.Namespace.EMS:c==="exocmd"?J.Namespace.EXOCMD:J.Namespace.EXO).term(l)}else s=new tC.IRI(r)}return new er.Triple(e,i,s)}hasMappingFor(e){return this.propertyMappings.has(e)}};vm.RDFVocabularyMapper=Xv});var rC=S(wm=>{"use strict";Object.defineProperty(wm,"__esModule",{value:!0});wm.RDFSInferenceEngine=void 0;var M$=Yn(),bm=Ae(),Zv=class{static{o(this,"RDFSInferenceEngine")}async materialize(e){let t=await e.predicates(),r=t.find(d=>d.value.includes("Class_superClass")),i=t.find(d=>d.value.includes("Instance_class"));if(!r||!i)return 0;let s=await this.buildDirectParentMap(e,r);if(s.size===0)return 0;let a=this.computeAllAncestors(s),c=await e.count(),l=await e.match(void 0,i),u=[];for(let d of l)if(d.object instanceof bm.IRI){let h=a.get(d.object.value);if(h)for(let p of h)u.push(new M$.Triple(d.subject,i,new bm.IRI(p)))}return u.length>0&&await e.addAll(u),await e.count()-c}async buildDirectParentMap(e,t){let r=await e.match(void 0,t),i=new Map;for(let s of r)if(s.subject instanceof bm.IRI&&s.object instanceof bm.IRI){let a=s.subject.value,c=s.object.value;i.has(a)||i.set(a,new Set),i.get(a).add(c)}return i}computeAllAncestors(e){let t=new Map;for(let r of e.keys())t.has(r)||t.set(r,this.computeAncestorsBFS(r,e));return t}computeAncestorsBFS(e,t){let r=new Set,i=new Set,s=[],a=t.get(e);if(a)for(let c of a)s.push(c);for(;s.length>0;){let c=s.shift();if(i.has(c))continue;i.add(c),r.add(c);let l=t.get(c);if(l)for(let u of l)i.has(u)||s.push(u)}return r}};wm.RDFSInferenceEngine=Zv});var rb=S(Ko=>{"use strict";var j$=Ko&&Ko.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s};Object.defineProperty(Ko,"__esModule",{value:!0});Ko.NonInheritablePropertyRegistry=void 0;var $$=fe(),nC=Ae(),iC=Ne(),eb=yr(),tb=class{static{o(this,"NonInheritablePropertyRegistry")}constructor(){this.nonInheritableIRIs=new Set,this.initialized=!1}async initialize(e){this.nonInheritableIRIs.clear();try{let t=await e.predicates(),r=t.find(c=>c.value.includes("Instance_class"));if(!r){this.initialized=!0;return}let i=await this.findNonInheritableClassIRI(e,t);if(!i){this.initialized=!0;return}let s=await e.match(void 0,r,i);if(s.length===0){this.initialized=!0;return}let a=t.find(c=>c.value.includes("Asset_label"));if(!a){this.initialized=!0;return}for(let c of s){let l=await e.match(c.subject,a,void 0);for(let u of l)if(u.object instanceof iC.Literal){let f=u.object.value,d=this.propertyKeyToIRI(f);d&&this.nonInheritableIRIs.add(d)}}}catch{}this.initialized=!0}isNonInheritable(e){return this.nonInheritableIRIs.has(e)}get size(){return this.nonInheritableIRIs.size}get isInitialized(){return this.initialized}async findNonInheritableClassIRI(e,t){let r=t.find(a=>a.value.includes("Asset_label"));if(!r)return null;let i=await e.match(void 0,r,new iC.Literal("exo__NonInheritableProperty"));if(i.length>0&&i[0].subject instanceof nC.IRI)return i[0].subject;let s=t.find(a=>a.value.includes("Instance_class"));if(s){let a=await e.match(void 0,s,void 0);for(let c of a)if(c.object instanceof nC.IRI&&c.object.value.includes("NonInheritableProperty"))return c.object}return null}propertyKeyToIRI(e){return e.startsWith("exo__")?eb.Namespace.EXO.term(e.substring(5)).value:e.startsWith("ems__")?eb.Namespace.EMS.term(e.substring(5)).value:e.startsWith("exocmd__")?eb.Namespace.EXOCMD.term(e.substring(8)).value:null}};Ko.NonInheritablePropertyRegistry=tb;Ko.NonInheritablePropertyRegistry=tb=j$([(0,$$.injectable)()],tb)});var sb=S(Yo=>{"use strict";var B$=Yo&&Yo.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s};Object.defineProperty(Yo,"__esModule",{value:!0});Yo.PropertyCardinalityRegistry=void 0;var V$=fe(),sC=Ae(),aC=Ne(),nb=yr(),ib=class{static{o(this,"PropertyCardinalityRegistry")}constructor(){this.multiValuedIRIs=new Set,this.initialized=!1}async initialize(e){this.multiValuedIRIs.clear();try{let t=await e.predicates(),r=t.find(c=>c.value.includes("Property_cardinality"));if(!r){this.initialized=!0;return}let i=await this.findMultipleCardinalityIRI(e,t);if(!i){this.initialized=!0;return}let s=await e.match(void 0,r,i);if(s.length===0){this.initialized=!0;return}let a=t.find(c=>c.value.includes("Asset_label"));if(!a){this.initialized=!0;return}for(let c of s){let l=await e.match(c.subject,a,void 0);for(let u of l)if(u.object instanceof aC.Literal){let f=u.object.value,d=this.propertyKeyToIRI(f);d&&this.multiValuedIRIs.add(d)}}}catch{}this.initialized=!0}isMultiValued(e){return this.multiValuedIRIs.has(e)}get size(){return this.multiValuedIRIs.size}get isInitialized(){return this.initialized}async findMultipleCardinalityIRI(e,t){let r=t.find(a=>a.value.includes("Asset_label"));if(!r)return null;let i=await e.match(void 0,r,new aC.Literal("exo__PropertyCardinalityMultiple"));if(i.length>0&&i[0].subject instanceof sC.IRI)return i[0].subject;let s=t.find(a=>a.value.includes("Instance_class"));if(s){let a=await e.match(void 0,s,void 0);for(let c of a)if(c.object instanceof sC.IRI&&c.object.value.includes("PropertyCardinalityMultiple"))return c.object}return null}propertyKeyToIRI(e){return e.startsWith("exo__")?nb.Namespace.EXO.term(e.substring(5)).value:e.startsWith("ems__")?nb.Namespace.EMS.term(e.substring(5)).value:e.startsWith("exocmd__")?nb.Namespace.EXOCMD.term(e.substring(8)).value:null}};Yo.PropertyCardinalityRegistry=ib;Yo.PropertyCardinalityRegistry=ib=B$([(0,V$.injectable)()],ib)});var cb=S(Sr=>{"use strict";var U$=Sr&&Sr.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},q$=Sr&&Sr.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(Sr,"__esModule",{value:!0});Sr.PrototypeChainMaterializer=Sr.MAX_PROTOTYPE_DEPTH=Sr.INFERRED_GRAPH=void 0;Sr.inferredGraphForDepth=ab;var W$=fe(),oC=Yn(),qa=Ae(),G$=rb(),z$=sb();Sr.INFERRED_GRAPH=new qa.IRI("https://exocortex.my/ontology/exo#inferred");var H$="https://exocortex.my/ontology/exo#inferred/";function ab(n){return new qa.IRI(`${H$}${n}`)}o(ab,"inferredGraphForDepth");Sr.MAX_PROTOTYPE_DEPTH=10;var ob=class{static{o(this,"PrototypeChainMaterializer")}constructor(e,t){this.registry=e,this.cardinalityRegistry=t??null}async materialize(e){let r=(await e.predicates()).find(c=>c.value.includes("Asset_prototype"));if(!r)return 0;let i=await e.match(void 0,r,void 0);if(i.length===0)return 0;let s=new Map;for(let c of i)if(c.subject instanceof qa.IRI&&c.object instanceof qa.IRI){let l=c.subject.value,u=c.object.value;l!==u&&s.set(l,c.object)}if(s.size===0)return 0;let a=0;for(let[c]of s){let l=new qa.IRI(c),u=this.resolveChain(c,s);if(u.length===0)continue;let f=await e.match(l,void 0,void 0),d=new Set,h=new Map;for(let p of f)if(d.add(p.predicate.value),this.isMultiValued(p.predicate.value)){let y=p.object instanceof qa.IRI?p.object.value:String(p.object),v=h.get(p.predicate.value);v||(v=new Set,h.set(p.predicate.value,v)),v.add(y)}for(let p=0;p<u.length;p++){let y=u[p],v=p+1,w=new qa.IRI(y),b=await e.match(w,void 0,void 0),A=new Set;if(e.matchInGraph){let I=await e.matchInGraph(w,void 0,void 0,Sr.INFERRED_GRAPH);for(let j of I)A.add(j.predicate.value)}for(let I of b){let j=I.predicate.value;if(this.registry.isNonInheritable(j)||A.has(j))continue;if(d.has(j)&&this.isMultiValued(j)){let te=I.object instanceof qa.IRI?I.object.value:String(I.object);if(h.get(j)?.has(te))continue;let G=h.get(j);G||(G=new Set,h.set(j,G)),G.add(te);let F=new oC.Triple(l,I.predicate,I.object);await e.add(F),e.addToGraph&&(await e.addToGraph(F,Sr.INFERRED_GRAPH),await e.addToGraph(F,ab(v))),a++;continue}if(d.has(j))continue;let V=new oC.Triple(l,I.predicate,I.object);await e.add(V),e.addToGraph&&(await e.addToGraph(V,Sr.INFERRED_GRAPH),await e.addToGraph(V,ab(v))),d.add(j),a++}}}return a}isMultiValued(e){return this.cardinalityRegistry?this.cardinalityRegistry.isMultiValued(e):!1}resolveChain(e,t){let r=[],i=new Set;i.add(e);let s=[],a=t.get(e);for(a&&s.push(a.value);s.length>0&&r.length<Sr.MAX_PROTOTYPE_DEPTH;){let c=s.shift();if(c===void 0)break;if(i.has(c))continue;i.add(c),r.push(c);let l=t.get(c);l&&!i.has(l.value)&&s.push(l.value)}return r}};Sr.PrototypeChainMaterializer=ob;Sr.PrototypeChainMaterializer=ob=U$([(0,W$.injectable)(),q$("design:paramtypes",[G$.NonInheritablePropertyRegistry,z$.PropertyCardinalityRegistry])],ob)});var ub=S(dr=>{"use strict";var Q$=dr&&dr.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},K$=dr&&dr.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(dr,"__esModule",{value:!0});dr.SourceAnnotator=dr.DEPTH_VARIABLE=dr.SOURCE_VARIABLE=void 0;var Y$=fe(),vl=Ne(),X$=Ae(),Em=cb();dr.SOURCE_VARIABLE="_source";dr.DEPTH_VARIABLE="_depth";var lb=class{static{o(this,"SourceAnnotator")}constructor(e){this.tripleStore=e}async annotate(e,t,r,i){if(!this.tripleStore.matchInGraph)return e.map(a=>{let c=a.clone();return c.set(dr.SOURCE_VARIABLE,new vl.Literal("own")),c});let s=[];for(let a of e){let c=a.get(t),l=a.get(r),u=a.get(i),f=a.clone();if(!c||!l||!u)f.set(dr.SOURCE_VARIABLE,new vl.Literal("own"));else{let d=await this.determineSource(c,l,u);f.set(dr.SOURCE_VARIABLE,new vl.Literal(d))}s.push(f)}return s}async annotateSingle(e,t,r,i){return(await this.annotate([e],t,r,i))[0]}async determineSource(e,t,r){return this.tripleStore.matchInGraph&&(await this.tripleStore.matchInGraph(e,t,r,Em.INFERRED_GRAPH)).length>0?"inherited":"own"}async getInheritanceDepth(e,t,r){if(!this.tripleStore.matchInGraph)return 0;for(let i=1;i<=Em.MAX_PROTOTYPE_DEPTH;i++){let s=(0,Em.inferredGraphForDepth)(i);if((await this.tripleStore.matchInGraph(e,t,r,s)).length>0)return i}return 0}async annotateBySubject(e,t){if(!this.tripleStore.matchInGraph)return e.map(s=>{let a=s.clone();return a.set(dr.SOURCE_VARIABLE,new vl.Literal("own")),a});let r=[],i=new Map;for(let s of e){let a=s.get(t),c=s.clone();if(!a||!(a instanceof X$.IRI))c.set(dr.SOURCE_VARIABLE,new vl.Literal("own"));else{let l=a.value;if(!i.has(l)){let f=await this.tripleStore.matchInGraph(a,void 0,void 0,Em.INFERRED_GRAPH);i.set(l,f.length>0?"inherited":"own")}let u=i.get(l)??"own";c.set(dr.SOURCE_VARIABLE,new vl.Literal(u))}r.push(c)}return r}};dr.SourceAnnotator=lb;dr.SourceAnnotator=lb=Q$([(0,Y$.injectable)(),K$("design:paramtypes",[Object])],lb)});var db=S(Bi=>{"use strict";var J$=Bi&&Bi.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},Z$=Bi&&Bi.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)},cC=Bi&&Bi.__param||function(n,e){return function(t,r){e(t,r,n)}};Object.defineProperty(Bi,"__esModule",{value:!0});Bi.NoteToRDFConverter=void 0;var fb=fe(),jr=Yn(),Wa=Ae(),Rn=Ne(),lC=qt(),vr=yr(),uC=wt(),eB=Jv(),tB=Pc(),fC=Yv(),Pn=r_(),bl=class{static{o(this,"NoteToRDFConverter")}constructor(e,t=tB.NullLogger){this.vault=e,this.logger=t,this.BODY_WIKILINK_PATTERN=/(?<!!)\[\[([^\]|]+)(?:\|[^\]]+)?\]\]/g,this.pendingExtraTriples=[],this.vocabularyMapper=new eB.RDFVocabularyMapper}async convertNote(e){let t=this.vault.getFrontmatter(e);return t?Pn.Exo003Parser.isExo003Format(t)?this.convertExo003Note(e,t):this.convertLegacyNote(e,t):[]}async convertLegacyNote(e,t){this.pendingExtraTriples=[];let r=[],i=this.notePathToIRI(e.path),s=vr.Namespace.EXO.term("Asset_fileName");r.push(new jr.Triple(i,s,new Rn.Literal(e.basename)));for(let[c,l]of Object.entries(t)){if(!this.isExocortexProperty(c))continue;let u=this.propertyKeyToIRI(c),f=Array.isArray(l)?l:[l];for(let d of f)if(c==="exo__Instance_class"){let h=this.valueToClassURI(d);r.push(new jr.Triple(i,u,h))}else{let h=await this.valueToRDFObject(d,e,u);for(let p of h)if(r.push(new jr.Triple(i,u,p)),this.vocabularyMapper.hasMappingFor(c)&&p instanceof Wa.IRI){let y=this.vocabularyMapper.generateMappedTriple(i,c,p);y&&r.push(y)}}if(c==="exo__Instance_class")for(let d of f){let h=this.valueToClassURI(d);if(h instanceof Wa.IRI){let p=vr.Namespace.RDF.term("type");r.push(new jr.Triple(i,p,h))}}if(c==="exo__Asset_label"){let d=vr.Namespace.RDFS.term("label");for(let h of f)typeof h=="string"&&h.length>0&&r.push(new jr.Triple(i,d,new Rn.Literal(h)))}}r.push(...this.pendingExtraTriples),this.pendingExtraTriples=[];let a=await this.convertBodyWikilinks(e,i);return r.push(...a),r}async convertExo003Note(e,t){let r=Pn.Exo003Parser.parse(t);if(!r.success||!r.metadata)return[];let i=r.metadata,s=[];switch(i.metadata){case Pn.Exo003MetadataType.Namespace:break;case Pn.Exo003MetadataType.Anchor:s.push(...this.convertExo003Anchor(e,i));break;case Pn.Exo003MetadataType.BlankNode:s.push(...this.convertExo003BlankNode(e,i));break;case Pn.Exo003MetadataType.Statement:s.push(...this.convertExo003Statement(e,i));break;case Pn.Exo003MetadataType.Body:s.push(...await this.convertExo003Body(e,i));break}return s}convertExo003Anchor(e,t){let r=this.notePathToIRI(e.path),i=new Wa.IRI(t.uri);return[new jr.Triple(r,vr.Namespace.OWL.term("sameAs"),i),new jr.Triple(i,vr.Namespace.OWL.term("sameAs"),r)]}convertExo003BlankNode(e,t){let r=this.notePathToIRI(e.path),i=t.uri.replace(/[^a-zA-Z0-9_-]/g,"_");return[new jr.Triple(r,vr.Namespace.OWL.term("sameAs"),new lC.BlankNode(i))]}convertExo003Statement(e,t){let r=[];try{let i=this.createExo003ReferenceResolver(e),s=Pn.Exo003Parser.toTriple(t,i);r.push(s);let a=this.notePathToIRI(e.path);r.push(new jr.Triple(a,vr.Namespace.RDF.term("value"),s.subject))}catch{}return r}async convertExo003Body(e,t){let r=[];try{let i=await this.vault.read(e),s=this.extractBodyContent(i),a=this.createExo003ReferenceResolver(e),c=a(t.subject),l=a(t.predicate);if(c.type==="literal")throw new Error("Body subject cannot be a literal");if(l.type!=="iri")throw new Error("Body predicate must be an IRI");let u=c.type==="iri"?new Wa.IRI(c.value):new lC.BlankNode(c.value),f=new Wa.IRI(l.value),d=Pn.Exo003Parser.toLiteral(t,s.trim());r.push(new jr.Triple(u,f,d));let h=this.notePathToIRI(e.path);r.push(new jr.Triple(h,vr.Namespace.RDF.term("value"),u))}catch{}return r}createExo003ReferenceResolver(e){return t=>{let r=this.extractWikilink(t),i=r||t,s=this.vault.getFirstLinkpathDest(i,e.path);if(s){let a=this.vault.getFrontmatter(s);if(a&&Pn.Exo003Parser.isExo003Format(a)){let c=Pn.Exo003Parser.parse(a);if(c.success&&c.metadata){let l=c.metadata;if(l.metadata===Pn.Exo003MetadataType.Anchor||l.metadata===Pn.Exo003MetadataType.Namespace)return{type:"iri",value:l.uri};if(l.metadata===Pn.Exo003MetadataType.BlankNode)return{type:"blank",value:l.uri.replace(/[^a-zA-Z0-9_-]/g,"_")}}}return{type:"iri",value:this.notePathToIRI(s.path).value}}return!r&&t.includes("://")?{type:"iri",value:t}:{type:"literal",value:t}}}async convertVault(){return(await this.convertVaultWithValidation({strict:!1})).triples}async convertVaultWithValidation(e={}){let t=this.vault.getAllFiles(),r=[],i=[],s=e.strict??!1;for(let a of t)try{let c=this.vault.getFrontmatter(a),l=c?this.validateExocortexAsset(c):null;if(l){if(s)throw new Error(`Invariant violation in "${a.path}": ${l.message}`);i.push({path:a.path,reason:`Invariant violation: ${l.message}`}),this.logger.warn(`Skipping file with invariant violation: ${a.path}`,{code:l.code,property:l.property,reason:l.message});continue}let u=await this.convertNote(a);r.push(...u)}catch(c){let l=c instanceof Error?c.message:String(c);if(s)throw new Error(`Invalid IRI for file "${a.path}": ${l}`);i.push({path:a.path,reason:`Invalid IRI: ${l}`}),this.logger.warn(`Skipping file with invalid IRI: ${a.path}`,{reason:l})}return{triples:r,skippedFiles:i,summary:{total:t.length,indexed:t.length-i.length,skipped:i.length}}}validateExocortexAsset(e){let t=o(l=>l==null?!0:typeof l=="string"?l.trim()==="":Array.isArray(l)?l.length===0||l.every(t):!1,"isEmpty");if(!("exo__Instance_class"in e||"exo__Asset_uid"in e))return null;let i=["exo__Asset_uid","exo__Asset_isDefinedBy","exo__Asset_label","exo__Instance_class"];for(let l of i){if(!(l in e))return{code:"MISSING_PROPERTY",property:l,message:`Required property "${l}" is missing`};if(t(e[l]))return{code:"EMPTY_PROPERTY",property:l,message:`Required property "${l}" is empty`}}let s=["ems__Effort_status","ems__Effort_parent","ems__Effort_lockedBy","ems__Effort_lockExpires","exo__Asset_updatedAt","ems__Effort_startTimestamp"];for(let l of s)if(l in e&&t(e[l]))return{code:"EMPTY_OPTIONAL_PROPERTY",property:l,message:`Optional property "${l}" is present but empty`};let a=e.exo__Instance_class,c=Array.isArray(a)?a:[a];for(let l of c){if(typeof l!="string")continue;let u=this.removeQuotes(l),d=(this.extractWikilink(u)??u).trim();if(/^[a-z][a-zA-Z0-9]*__/.test(d)&&/[\s()]/.test(d))return{code:"INVALID_INSTANCE_CLASS_IRI",property:"exo__Instance_class",message:`Invalid Instance_class IRI: "${l}"`}}return null}async validateVault(){let e=this.vault.getAllFiles(),t=[];for(let r of e){let i=(0,fC.vaultPathToIRI)(r.path);Wa.IRI.isValidIRI(i)||t.push({path:r.path,reason:`Path "${r.path}" cannot be converted to a valid IRI`})}return t}notePathToIRI(e){return new Wa.IRI((0,fC.vaultPathToIRI)(e))}isExocortexProperty(e){return vr.Namespace.fromPropertyKey(e)!==null}propertyKeyToIRI(e){let t=vr.Namespace.fromPropertyKey(e);if(!t)throw new Error(`Invalid property key: ${e}`);return t.namespace.term(t.localName)}emitTypeTripleForEnumInstance(e,t){let r=this.vault.getFrontmatter(t);if(!r)return;let i=r.exo__Instance_class,s=Array.isArray(i)?i[0]:i;if(typeof s!="string")return;let a=this.valueToClassURI(s);a instanceof Wa.IRI&&(this.pendingExtraTriples.push(new jr.Triple(e,vr.Namespace.RDF.term("type"),a)),this.pendingExtraTriples.push(new jr.Triple(e,vr.Namespace.EXO.term("Instance_class"),a)))}async valueToRDFObject(e,t,r){if(typeof e=="string"){let i=this.removeQuotes(e),s=this.extractWikilink(i);if(s){let a=this.vault.getFirstLinkpathDest(s,t.path);if(a){let c=this.notePathToIRI(a.path),l=s.includes("|")?s.split("|")[0]:s;if(this.isUUID(l)){let f=new Rn.Literal(l),d=this.expandClassValue(a.basename);if(d)return this.emitTypeTripleForEnumInstance(d,a),[d];let h=this.vault.getFrontmatter(a);if(h){let y=h.exo__Asset_label;if(typeof y=="string"){let v=this.expandClassValue(y);if(v)return this.emitTypeTripleForEnumInstance(v,a),[v]}}return r?.value.endsWith("#Asset_prototype")||r?.value.endsWith("/Asset_prototype")?[c,f]:[c]}let u=this.expandClassValue(a.basename);return u?(this.emitTypeTripleForEnumInstance(u,a),[u]):[c]}if(this.isClassReference(s)){let c=this.expandClassValue(s);if(c)return[c]}return[new Rn.Literal(i)]}if(this.isClassReference(i)){let a=this.expandClassValue(i);if(a)return[a]}return this.isISO8601DateTime(i)?[new Rn.Literal(i,vr.Namespace.XSD.term("dateTime"))]:[new Rn.Literal(i)]}return typeof e=="boolean"?[new Rn.Literal(e.toString())]:typeof e=="number"?[new Rn.Literal(e.toString(),vr.Namespace.XSD.term("decimal"))]:e instanceof Date?[new Rn.Literal(e.toISOString(),vr.Namespace.XSD.term("dateTime"))]:[new Rn.Literal(String(e))]}isISO8601DateTime(e){return/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-]\d{2}:\d{2})?$/.test(e)}removeQuotes(e){let t=e.trim();return t.startsWith('"')&&t.endsWith('"')||t.startsWith("'")&&t.endsWith("'")?t.substring(1,t.length-1):e}extractWikilink(e){let t=e.match(/^\[\[([^\]]+)\]\]$/);if(!t)return null;let r=t[1];return r.includes("|")?r.split("|")[0]:r}extractWikilinkAlias(e){let t=e.match(/^\[\[([^\]]+)\]\]$/);if(!t)return null;let r=t[1],i=r.indexOf("|");return i>=0?r.substring(i+1).trim():null}valueToClassURI(e){if(typeof e!="string")return new Rn.Literal(String(e));let t=this.removeQuotes(e),i=this.extractWikilink(t)||t,s=this.expandClassValue(i);if(s)return s;let a=this.extractWikilinkAlias(t);if(a){let c=this.expandClassValue(a);if(c)return c}if(this.isUUID(i)){let c=this.vault.getFirstLinkpathDest(i,"");if(c){let l=this.expandClassValue(c.basename);if(l)return l;let u=this.vault.getFrontmatter(c);if(u){let f=u.exo__Asset_label;if(typeof f=="string"){let d=this.expandClassValue(f);if(d)return d}}}}return new Rn.Literal(t)}isClassReference(e){return/\s/.test(e)?!1:vr.Namespace.fromPropertyKey(e)!==null}isUUID(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}expandClassValue(e){let t=this.removeQuotes(e),r=vr.Namespace.fromPropertyKey(t);return r?r.namespace.term(r.localName):null}extractBodyContent(e){let t=/^---\r?\n[\s\S]*?\r?\n---\r?\n?/;return e.replace(t,"")}extractBodyWikilinks(e){let t=new Set,r,i=new RegExp(this.BODY_WIKILINK_PATTERN.source,"g");for(;(r=i.exec(e))!==null;)r[1]&&t.add(r[1]);return Array.from(t)}async convertBodyWikilinks(e,t){let r=[];try{let i=await this.vault.read(e),s=this.extractBodyContent(i),a=this.extractBodyWikilinks(s),c=vr.Namespace.EXO.term("Asset_bodyLink");for(let l of a){let u=this.vault.getFirstLinkpathDest(l,e.path);if(u){let f=this.notePathToIRI(u.path);r.push(new jr.Triple(t,c,f))}else if(this.isClassReference(l)){let f=this.expandClassValue(l);f?r.push(new jr.Triple(t,c,f)):r.push(new jr.Triple(t,c,new Rn.Literal(l)))}else r.push(new jr.Triple(t,c,new Rn.Literal(l)))}}catch{}return r}};Bi.NoteToRDFConverter=bl;bl.SkippedFileInfo=class{constructor(n,e){this.path=n,this.reason=e}};bl.VaultValidationResult=class{constructor(n,e,t){this.triples=n,this.skippedFiles=e,this.summary=t}};bl.VaultValidationOptions=class{constructor(n=!1){this.strict=n}};Bi.NoteToRDFConverter=bl=J$([(0,fb.injectable)(),cC(0,(0,fb.inject)(uC.DI_TOKENS.IVaultAdapter)),cC(1,(0,fb.inject)(uC.DI_TOKENS.ILogger)),Z$("design:paramtypes",[Object,Object])],bl)});var pb=S(Tm=>{"use strict";Object.defineProperty(Tm,"__esModule",{value:!0});Tm.FilterContainsOptimizer=void 0;var rB=Ae(),nB=/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i,hb=class{static{o(this,"FilterContainsOptimizer")}constructor(){this.tripleStore=null,this.lastOptimizationHints=[]}setTripleStore(e){this.tripleStore=e}getLastOptimizationHints(){return this.lastOptimizationHints}clearHints(){this.lastOptimizationHints=[]}async optimize(e){return this.clearHints(),this.optimizeRecursive(e)}optimizeSync(e,t){return this.clearHints(),this.optimizeSyncRecursive(e,t)}async optimizeRecursive(e){return e.type==="filter"?this.optimizeFilter(e):e.type==="join"?{type:"join",left:await this.optimizeRecursive(e.left),right:await this.optimizeRecursive(e.right)}:e.type==="leftjoin"?{...e,left:await this.optimizeRecursive(e.left),right:await this.optimizeRecursive(e.right)}:e.type==="union"?{type:"union",left:await this.optimizeRecursive(e.left),right:await this.optimizeRecursive(e.right)}:e.type==="minus"?{...e,left:await this.optimizeRecursive(e.left),right:await this.optimizeRecursive(e.right)}:e.type==="project"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="orderby"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="slice"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="distinct"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="reduced"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="group"?{...e,input:await this.optimizeRecursive(e.input)}:e.type==="extend"?{...e,input:await this.optimizeRecursive(e.input)}:e}optimizeSyncRecursive(e,t){return e.type==="filter"?this.optimizeFilterSync(e,t):e.type==="join"?{type:"join",left:this.optimizeSyncRecursive(e.left,t),right:this.optimizeSyncRecursive(e.right,t)}:e.type==="leftjoin"?{...e,left:this.optimizeSyncRecursive(e.left,t),right:this.optimizeSyncRecursive(e.right,t)}:e.type==="union"?{type:"union",left:this.optimizeSyncRecursive(e.left,t),right:this.optimizeSyncRecursive(e.right,t)}:e.type==="minus"?{...e,left:this.optimizeSyncRecursive(e.left,t),right:this.optimizeSyncRecursive(e.right,t)}:e.type==="project"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="orderby"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="slice"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="distinct"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="reduced"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="group"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e.type==="extend"?{...e,input:this.optimizeSyncRecursive(e.input,t)}:e}async optimizeFilter(e){let t=this.detectContainsUUIDPattern(e.expression);if(!t)return{type:"filter",expression:e.expression,input:await this.optimizeRecursive(e.input)};let r=[];return this.tripleStore&&(r=await this.findSubjectsContainingUUID(t.uuid)),this.rewriteFilter(e,t,r)}optimizeFilterSync(e,t){let r=this.detectContainsUUIDPattern(e.expression);if(!r)return{type:"filter",expression:e.expression,input:this.optimizeSyncRecursive(e.input,t)};let i=t?t.filter(s=>s.includes(r.uuid)):[];return this.rewriteFilter(e,r,i)}rewriteFilter(e,t,r){if(this.lastOptimizationHints.push({type:"uuid-index-lookup",originalPattern:`FILTER(CONTAINS(STR(?${t.variable}), "${t.uuid}"))`,suggestedRewrite:r.length===1?`VALUES ?${t.variable} { <${r[0]}> }`:r.length>1?`VALUES ?${t.variable} { ${r.map(i=>`<${i}>`).join(" ")} }`:"No matching URIs found for UUID",estimatedSpeedup:r.length>0?"O(n) \u2192 O(1)":"N/A",matchedUri:r.length===1?r[0]:void 0}),r.length===0)return{type:"filter",expression:e.expression,input:this.optimizeSyncRecursive(e.input)};if(r.length===1){let i=this.injectSubjectConstraint(e.input,t.variable,r[0]);if(i!==e.input)return i}return this.createValuesJoin(e,t,r)}detectContainsUUIDPattern(e){if(e.type==="function"||e.type==="functionCall"){let t=e;if((typeof t.function=="string"?t.function.toLowerCase():t.function?.value?.toLowerCase()??"")==="contains"&&t.args.length===2)return this.analyzeContainsArgs(t.args[0],t.args[1],e)}if(e.type==="logical"&&e.operator==="&&")for(let t of e.operands){let r=this.detectContainsUUIDPattern(t);if(r)return r}return null}analyzeContainsArgs(e,t,r){let i=null;if(e.type==="function"||e.type==="functionCall"){let s=e;if((typeof s.function=="string"?s.function.toLowerCase():s.function?.value?.toLowerCase()??"")==="str"&&s.args.length===1){let c=s.args[0];c.type==="variable"&&(i=c.name)}}if(!i&&e.type==="variable"&&(i=e.name),!i)return null;if(t.type==="literal"){let c=String(t.value).match(nB);if(c)return{variable:i,uuid:c[0].toLowerCase(),originalExpression:r}}return null}async findSubjectsContainingUUID(e){if(!this.tripleStore)return[];if(this.tripleStore.findSubjectsByUUID)return(await this.tripleStore.findSubjectsByUUID(e)).map(s=>s.value);let t=await this.tripleStore.subjects(),r=[];for(let i of t)i instanceof rB.IRI&&i.value.toLowerCase().includes(e.toLowerCase())&&r.push(i.value);return r}injectSubjectConstraint(e,t,r){if(e.type==="bgp"){let i=e.triples.map(a=>a.subject.type==="variable"&&a.subject.value===t?{...a,subject:{type:"iri",value:r}}:a);if(i.some((a,c)=>a.subject!==e.triples[c].subject))return{type:"bgp",triples:i}}if(e.type==="join"){let i=this.injectSubjectConstraint(e.left,t,r),s=this.injectSubjectConstraint(e.right,t,r);if(i!==e.left||s!==e.right)return{type:"join",left:i,right:s}}if(e.type==="filter"){let i=this.injectSubjectConstraint(e.input,t,r);if(i!==e.input)return{...e,input:i}}return e}createValuesJoin(e,t,r){return{type:"join",left:{type:"values",variables:[t.variable],bindings:r.map(a=>({[t.variable]:{type:"iri",value:a}}))},right:this.optimizeSyncRecursive(e.input)}}analyzeQuery(e){let t=[];return this.analyzeRecursive(e,t),t}analyzeRecursive(e,t){if(e.type==="filter"){let r=this.detectContainsUUIDPattern(e.expression);r&&t.push({type:"uuid-index-lookup",originalPattern:`FILTER(CONTAINS(STR(?${r.variable}), "${r.uuid}"))`,suggestedRewrite:`Use --optimize flag or rewrite as VALUES ?${r.variable} { <uri-containing-uuid> }`,estimatedSpeedup:"O(n) \u2192 O(1) with UUID index lookup"}),this.analyzeRecursive(e.input,t);return}e.type==="join"?(this.analyzeRecursive(e.left,t),this.analyzeRecursive(e.right,t)):e.type==="leftjoin"?(this.analyzeRecursive(e.left,t),this.analyzeRecursive(e.right,t)):e.type==="union"?(this.analyzeRecursive(e.left,t),this.analyzeRecursive(e.right,t)):e.type==="minus"?(this.analyzeRecursive(e.left,t),this.analyzeRecursive(e.right,t)):e.type==="project"?this.analyzeRecursive(e.input,t):e.type==="orderby"?this.analyzeRecursive(e.input,t):e.type==="slice"?this.analyzeRecursive(e.input,t):e.type==="distinct"?this.analyzeRecursive(e.input,t):e.type==="reduced"?this.analyzeRecursive(e.input,t):e.type==="group"?this.analyzeRecursive(e.input,t):e.type==="extend"&&this.analyzeRecursive(e.input,t)}};Tm.FilterContainsOptimizer=hb});var dC=S(Am=>{"use strict";Object.defineProperty(Am,"__esModule",{value:!0});Am.AlgebraOptimizer=void 0;var iB=pb(),mb=class{static{o(this,"AlgebraOptimizer")}constructor(){this.stats=new Map,this.tripleStore=null,this.filterContainsOptimizer=new iB.FilterContainsOptimizer}setTripleStore(e){this.tripleStore=e,this.filterContainsOptimizer.setTripleStore(e)}getOptimizationHints(){return this.filterContainsOptimizer.getLastOptimizationHints()}analyzeQuery(e){return this.filterContainsOptimizer.analyzeQuery(e)}optimize(e){let t=e;return t=this.eliminateEmptyBGPInFilterJoin(t),t=this.filterPushDown(t),t=this.joinReordering(t),t}async optimizeAsync(e){let t=e;return t=this.eliminateEmptyBGPInFilterJoin(t),this.tripleStore&&(t=await this.filterContainsOptimizer.optimize(t)),t=this.filterPushDown(t),t=this.joinReordering(t),t}optimizeWithSubjects(e,t){let r=e;return r=this.eliminateEmptyBGPInFilterJoin(r),r=this.filterContainsOptimizer.optimizeSync(r,t),r=this.filterPushDown(r),r=this.joinReordering(r),r}eliminateEmptyBGPInFilterJoin(e){if(e.type==="join"){if(e.left.type==="filter"){let t=e.left;if(t.input.type==="bgp"&&t.input.triples.length===0)return{type:"filter",expression:t.expression,input:this.eliminateEmptyBGPInFilterJoin(e.right)}}if(e.right.type==="filter"){let t=e.right;if(t.input.type==="bgp"&&t.input.triples.length===0)return{type:"filter",expression:t.expression,input:this.eliminateEmptyBGPInFilterJoin(e.left)}}return{type:"join",left:this.eliminateEmptyBGPInFilterJoin(e.left),right:this.eliminateEmptyBGPInFilterJoin(e.right)}}return e.type==="filter"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e.type==="leftjoin"?{...e,left:this.eliminateEmptyBGPInFilterJoin(e.left),right:this.eliminateEmptyBGPInFilterJoin(e.right)}:e.type==="union"?{...e,left:this.eliminateEmptyBGPInFilterJoin(e.left),right:this.eliminateEmptyBGPInFilterJoin(e.right)}:e.type==="minus"?{...e,left:this.eliminateEmptyBGPInFilterJoin(e.left),right:this.eliminateEmptyBGPInFilterJoin(e.right)}:e.type==="project"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e.type==="orderby"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e.type==="slice"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e.type==="distinct"?{...e,input:this.eliminateEmptyBGPInFilterJoin(e.input)}:e}filterPushDown(e){return e.type==="filter"?this.pushDownFilter(e):e.type==="join"?{type:"join",left:this.filterPushDown(e.left),right:this.filterPushDown(e.right)}:e.type==="leftjoin"?{...e,left:this.filterPushDown(e.left),right:this.filterPushDown(e.right)}:e.type==="union"?{type:"union",left:this.filterPushDown(e.left),right:this.filterPushDown(e.right)}:e.type==="minus"?{...e,left:this.filterPushDown(e.left),right:this.filterPushDown(e.right)}:e.type==="project"?{...e,input:this.filterPushDown(e.input)}:e.type==="orderby"?{...e,input:this.filterPushDown(e.input)}:e.type==="slice"?{...e,input:this.filterPushDown(e.input)}:e.type==="distinct"?{...e,input:this.filterPushDown(e.input)}:e}pushDownFilter(e){let t=e.input;if(t.type==="join"){let r=this.getFilterVariables(e.expression),i=this.getOperationVariables(t.left),s=this.getOperationVariables(t.right),a=r.every(l=>i.has(l)),c=r.every(l=>s.has(l));return a&&!c?{type:"join",left:{type:"filter",expression:e.expression,input:this.filterPushDown(t.left)},right:this.filterPushDown(t.right)}:c&&!a?{type:"join",left:this.filterPushDown(t.left),right:{type:"filter",expression:e.expression,input:this.filterPushDown(t.right)}}:{type:"filter",expression:e.expression,input:{type:"join",left:this.filterPushDown(t.left),right:this.filterPushDown(t.right)}}}return t.type==="union"?{type:"union",left:{type:"filter",expression:e.expression,input:this.filterPushDown(t.left)},right:{type:"filter",expression:e.expression,input:this.filterPushDown(t.right)}}:{type:"filter",expression:e.expression,input:this.filterPushDown(t)}}getFilterVariables(e){let t=[];if(e.type==="variable")t.push(e.name);else if(e.type==="comparison")t.push(...this.getFilterVariables(e.left)),t.push(...this.getFilterVariables(e.right));else if(e.type==="logical")for(let r of e.operands)t.push(...this.getFilterVariables(r));else if(e.type==="function")for(let r of e.args)t.push(...this.getFilterVariables(r));return Array.from(new Set(t))}getOperationVariables(e){let t=new Set;if(e.type==="bgp")for(let r of e.triples)r.subject.type==="variable"&&t.add(r.subject.value),r.predicate.type==="variable"&&t.add(r.predicate.value),r.object.type==="variable"&&t.add(r.object.value);else if(e.type==="join"){let r=this.getOperationVariables(e.left),i=this.getOperationVariables(e.right);return new Set([...r,...i])}else{if(e.type==="filter")return this.getOperationVariables(e.input);if(e.type==="leftjoin"){let r=this.getOperationVariables(e.left),i=this.getOperationVariables(e.right);return new Set([...r,...i])}else if(e.type==="union"){let r=this.getOperationVariables(e.left),i=this.getOperationVariables(e.right);return new Set([...r,...i])}else{if(e.type==="minus")return this.getOperationVariables(e.left);if(e.type==="project")return new Set(e.variables)}}return t}joinReordering(e){return e.type==="join"?this.reorderJoin(e):e.type==="filter"?{...e,input:this.joinReordering(e.input)}:e.type==="leftjoin"?{...e,left:this.joinReordering(e.left),right:this.joinReordering(e.right)}:e.type==="union"?{...e,left:this.joinReordering(e.left),right:this.joinReordering(e.right)}:e.type==="minus"?{...e,left:this.joinReordering(e.left),right:this.joinReordering(e.right)}:e.type==="project"?{...e,input:this.joinReordering(e.input)}:e.type==="orderby"?{...e,input:this.joinReordering(e.input)}:e.type==="slice"?{...e,input:this.joinReordering(e.input)}:e.type==="distinct"?{...e,input:this.joinReordering(e.input)}:e}reorderJoin(e){let t=this.isConstrained(e.left),r=this.isConstrained(e.right);if(r&&!t)return{type:"join",left:this.joinReordering(e.right),right:this.joinReordering(e.left)};if(t&&!r)return{type:"join",left:this.joinReordering(e.left),right:this.joinReordering(e.right)};let i=this.estimateCost(e.left);return this.estimateCost(e.right)<i?{type:"join",left:this.joinReordering(e.right),right:this.joinReordering(e.left)}:{type:"join",left:this.joinReordering(e.left),right:this.joinReordering(e.right)}}isConstrained(e){return e.type==="values"?!0:e.type==="bgp"?e.triples.some(t=>t.object.type!=="variable"||t.subject.type!=="variable"):e.type==="filter"?this.isConstrained(e.input):e.type==="join"?this.isConstrained(e.left)||this.isConstrained(e.right):e.type==="union"?this.isConstrained(e.left)&&this.isConstrained(e.right):!1}estimateCost(e){if(e.type==="bgp"){let t=0;for(let r of e.triples){let i=10;r.subject.type==="variable"&&(i*=10),r.predicate.type==="variable"&&(i*=20),r.object.type==="variable"&&(i*=5),t+=i}return t}if(e.type==="filter")return this.estimateCost(e.input)*.3;if(e.type==="join"){let t=this.estimateCost(e.left),r=this.estimateCost(e.right);return e.left.type==="values"||e.right.type==="values"?Math.min(t,r)*2:t*r}if(e.type==="leftjoin")return this.estimateCost(e.left)+this.estimateCost(e.right)*.5;if(e.type==="union")return this.estimateCost(e.left)+this.estimateCost(e.right);if(e.type==="values"){let t=e.bindings;return Array.isArray(t)?t.length*5:10}return e.type==="minus"?this.estimateCost(e.left)+this.estimateCost(e.right)*.3:100}setStatistics(e,t){this.stats.set(e,t)}getStatistics(e){return this.stats.get(e)}};Am.AlgebraOptimizer=mb});var hC=S(xm=>{"use strict";Object.defineProperty(xm,"__esModule",{value:!0});xm.AlgebraSerializer=void 0;var gb=class{static{o(this,"AlgebraSerializer")}toString(e,t=0){let r=" ".repeat(t);switch(e.type){case"bgp":return`${r}BGP [
378
378
  ${e.triples.map(u=>`${r} ${this.tripleToString(u)}`).join(`
379
379
  `)}
380
380
  ${r}]`;case"filter":return`${r}Filter(
@@ -410,7 +410,7 @@ ${r})`;default:return`${r}Unknown(${e.type})`}}tripleToString(e){return`${this.e
410
410
  `)}termToXML(e){return e instanceof Dm.IRI?`<uri>${this.escapeXML(e.value)}</uri>`:e instanceof Nm.BlankNode?`<bnode>${this.escapeXML(e.id)}</bnode>`:e instanceof Fm.Literal?this.literalToXML(e):`<literal>${this.escapeXML(String(e))}</literal>`}literalToXML(e){let t=this.escapeXML(e.value);if(e.datatype)return`<literal datatype="${this.escapeXML(e.datatype.value)}">${t}</literal>`;if(e.language){let r=`xml:lang="${this.escapeXML(e.language)}"`;return e.hasDirection()&&e.direction&&(r+=` direction="${e.direction}"`),`<literal ${r}>${t}</literal>`}return`<literal>${t}</literal>`}serializeCSV(e,t={}){let r=new Set;for(let a of e)for(let c of a.variables())r.add(c);let i=t.variables??Array.from(r).sort(),s=[];s.push(i.map(a=>this.escapeCSV(a)).join(","));for(let a of e){let c=i.map(l=>{let u=a.get(l);return u===void 0?"":this.escapeCSV(this.termToCSV(u))});s.push(c.join(","))}return s.join(`
411
411
  `)}termToCSV(e){return e instanceof Dm.IRI?e.value:e instanceof Nm.BlankNode?`_:${e.id}`:e instanceof Fm.Literal?this.literalToCSV(e):String(e)}literalToCSV(e){if(e.datatype)return`${e.value}^^<${e.datatype.value}>`;if(e.language){let t=e.language;return e.hasDirection()&&e.direction&&(t+=`--${e.direction}`),`${e.value}@${t}`}return e.value}serializeTurtle(e,t={}){let r=new Set;for(let a of e)for(let c of a.variables())r.add(c);let i=t.variables??Array.from(r).sort(),s=[];s.push(`# SPARQL Results - ${e.length} solution(s)`),s.push(`# Variables: ${i.join(", ")}`),s.push("");for(let a=0;a<e.length;a++){let c=e[a];s.push(`# Solution ${a+1}`);for(let l of i){let u=c.get(l);u!==void 0&&s.push(`?${l} = ${this.termToTurtle(u)}`)}s.push("")}return s.join(`
412
412
  `).trimEnd()}termToTurtle(e){return e instanceof Dm.IRI?`<${e.value}>`:e instanceof Nm.BlankNode?`_:${e.id}`:e instanceof Fm.Literal?e.toString():`"${String(e)}"`}escapeXML(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}escapeCSV(e){return e.includes(",")||e.includes('"')||e.includes(`
413
- `)?`"${e.replace(/"/g,'""')}"`:e}};Lm.ResultSerializer=Eb});var TC=S(Tl=>{"use strict";Object.defineProperty(Tl,"__esModule",{value:!0});Tl.FileAlreadyExistsError=Tl.FileNotFoundError=void 0;var Tb=class extends Error{static{o(this,"FileNotFoundError")}constructor(e){super(`File not found: ${e}`),this.name="FileNotFoundError"}};Tl.FileNotFoundError=Tb;var Ab=class extends Error{static{o(this,"FileAlreadyExistsError")}constructor(e){super(`File already exists: ${e}`),this.name="FileAlreadyExistsError"}};Tl.FileAlreadyExistsError=Ab});var Cb=S(vr=>{"use strict";var hB=vr&&vr.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},pB=vr&&vr.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(vr,"__esModule",{value:!0});vr.VaultSettings=vr.DEFAULT_FLEETING_NOTE_CLASS_UID=vr.DEFAULT_INBOX_FOLDER=vr.DEFAULT_OWNER_IDENTITY=void 0;var mB=fe();vr.DEFAULT_OWNER_IDENTITY='"[[!kitelev]]"';vr.DEFAULT_INBOX_FOLDER="01 Inbox";vr.DEFAULT_FLEETING_NOTE_CLASS_UID="fca0a931-a01f-48e4-b72a-4af206c94bc7";var xb=class{static{o(this,"VaultSettings")}constructor(e){this.ownerIdentity=e?.ownerIdentity??vr.DEFAULT_OWNER_IDENTITY,this.defaultInboxFolder=e?.defaultInboxFolder??vr.DEFAULT_INBOX_FOLDER,this.fleetingNoteClassUID=e?.fleetingNoteClassUID??vr.DEFAULT_FLEETING_NOTE_CLASS_UID}getOwnerIdentity(){return this.ownerIdentity}getDefaultInboxFolder(){return this.defaultInboxFolder}getFleetingNoteClassUID(){return this.fleetingNoteClassUID}};vr.VaultSettings=xb;vr.VaultSettings=xb=hB([(0,mB.injectable)(),pB("design:paramtypes",[Object])],xb)});var AC=S(Ga=>{"use strict";Object.defineProperty(Ga,"__esModule",{value:!0});Ga.container=void 0;Ga.registerCoreServices=BB;Ga.createChildContainer=VB;Ga.getContainer=UB;Ga.resetContainer=qB;Xd();var _f=fe();Object.defineProperty(Ga,"container",{enumerable:!0,get:o(function(){return _f.container},"get")});var Rt=wt(),gB=lv(),yB=fv(),_B=ZS(),SB=DS(),vB=RS(),bB=sm(),wB=om(),EB=QS(),TB=YS(),AB=tv(),xB=zS(),CB=hv(),IB=bv(),RB=_v(),PB=MS(),OB=$S(),FB=ov(),DB=iv(),NB=db(),LB=LS(),kB=Tv(),MB=xv(),jB=jv(),$B=Cb();function BB(n){let e=n||_f.container;e.registerSingleton(Rt.DI_TOKENS.DynamicFrontmatterGenerator,gB.DynamicFrontmatterGenerator),e.registerSingleton(Rt.DI_TOKENS.AlgorithmExtractor,yB.AlgorithmExtractor),e.isRegistered(Rt.DI_TOKENS.IVaultSettings)||e.register(Rt.DI_TOKENS.IVaultSettings,{useValue:new $B.VaultSettings}),e.registerSingleton(Rt.DI_TOKENS.EffortStatusWorkflow,bB.EffortStatusWorkflow),e.registerSingleton(Rt.DI_TOKENS.StatusTimestampService,wB.StatusTimestampService),e.registerSingleton(Rt.DI_TOKENS.TaskStatusService,vB.TaskStatusService),e.registerSingleton(Rt.DI_TOKENS.AreaCreationService,SB.AreaCreationService),e.registerSingleton(Rt.DI_TOKENS.ClassCreationService,PB.ClassCreationService),e.registerSingleton(Rt.DI_TOKENS.ConceptCreationService,OB.ConceptCreationService),e.registerSingleton(Rt.DI_TOKENS.FleetingNoteCreationService,FB.FleetingNoteCreationService),e.registerSingleton(Rt.DI_TOKENS.SupervisionCreationService,DB.SupervisionCreationService),e.registerSingleton(Rt.DI_TOKENS.GenericAssetCreationService,MB.GenericAssetCreationService),e.registerSingleton(Rt.DI_TOKENS.PropertyCleanupService,_B.PropertyCleanupService),e.registerSingleton(Rt.DI_TOKENS.FolderRepairService,EB.FolderRepairService),e.registerSingleton(Rt.DI_TOKENS.LabelToAliasService,TB.LabelToAliasService),e.registerSingleton(Rt.DI_TOKENS.RenameToUidService,AB.RenameToUidService),e.registerSingleton(Rt.DI_TOKENS.PlanningService,CB.PlanningService),e.registerSingleton(Rt.DI_TOKENS.EffortVotingService,xB.EffortVotingService),e.registerSingleton(Rt.DI_TOKENS.SessionEventService,IB.SessionEventService),e.registerSingleton(Rt.DI_TOKENS.AssetConversionService,RB.AssetConversionService),e.registerSingleton(Rt.DI_TOKENS.NoteToRDFConverter,NB.NoteToRDFConverter),e.registerSingleton(Rt.DI_TOKENS.AreaHierarchyBuilder,LB.AreaHierarchyBuilder),e.registerSingleton(Rt.DI_TOKENS.URIConstructionService,kB.URIConstructionService),e.registerSingleton(Rt.DI_TOKENS.CriticalityZoneService,jB.CriticalityZoneService)}o(BB,"registerCoreServices");function VB(){return _f.container.createChildContainer()}o(VB,"createChildContainer");function UB(){return _f.container}o(UB,"getContainer");function qB(){_f.container.reset()}o(qB,"resetContainer")});var Ib=S(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});Al.DEFAULT_COLORS=Al.NODE_FLAGS=void 0;Al.NODE_FLAGS={PINNED:1,VISIBLE:2,SELECTED:4,HOVERED:8,ARCHIVED:16,SEARCH_MATCH:32,HIGHLIGHTED:64};Al.DEFAULT_COLORS={NODE:1251006975,NODE_SELECTED:4290840575,NODE_HOVERED:1723558655,EDGE:2576980479,EDGE_SELECTED:4288151807,EDGE_HIERARCHY:2619846911}});var Pb=S(km=>{"use strict";Object.defineProperty(km,"__esModule",{value:!0});km.StringTable=void 0;var Rb=class n{static{o(this,"StringTable")}constructor(e){if(this.stringToIndex=new Map,this.strings=[],this.memoryBytes=0,e)for(let t of e)this.intern(t)}intern(e){let t=this.stringToIndex.get(e);if(t!==void 0)return t;let r=this.strings.length;return this.strings.push(e),this.stringToIndex.set(e,r),this.memoryBytes+=e.length*2+50,r}getIndex(e){return this.stringToIndex.get(e)??-1}getString(e){if(e<0||e>=this.strings.length)throw new RangeError(`StringTable index out of bounds: ${e}`);return this.strings[e]}has(e){return this.stringToIndex.has(e)}hasIndex(e){return e>=0&&e<this.strings.length}get size(){return this.strings.length}getMemoryBytes(){return this.memoryBytes}*entries(){for(let e=0;e<this.strings.length;e++)yield[e,this.strings[e]]}*values(){for(let e of this.strings)yield e}toArray(){return[...this.strings]}clear(){this.stringToIndex.clear(),this.strings=[],this.memoryBytes=0}static fromJSON(e){return new n(e)}toJSON(){return this.strings}internAll(e){return e.map(t=>this.intern(t))}getStrings(e){return e.map(t=>this.getString(t))}search(e){let t=typeof e=="string"?new RegExp(e):e,r=[];for(let i=0;i<this.strings.length;i++)t.test(this.strings[i])&&r.push([i,this.strings[i]]);return r}getStats(){let e=this.strings.reduce((t,r)=>t+r.length,0);return{count:this.strings.length,memoryBytes:this.memoryBytes,avgStringLength:this.strings.length>0?e/this.strings.length:0}}};km.StringTable=Rb});var xC=S(jm=>{"use strict";Object.defineProperty(jm,"__esModule",{value:!0});jm.CompactGraphStore=void 0;var Mm=Pb(),On=Ib(),WB={initialNodeCapacity:1e4,initialEdgeCapacity:5e4,growthFactor:2,maxCapacity:1e6};function Ob(n,e){if(n===void 0)return e;if(typeof n=="number")return n;if(n.startsWith("#")){let t=n.slice(1);if(t.length===6)return parseInt(t,16)<<8|255;if(t.length===8)return parseInt(t,16)}return e}o(Ob,"parseColor");var Fb=class{static{o(this,"CompactGraphStore")}constructor(e){this.nodeCount=0,this.edgeCount=0,this.nodeIdToIndex=new Map,this.indexToNodeId=[],this.edgeIdToIndex=new Map,this.config={...WB,...e},this.nodeCapacity=this.config.initialNodeCapacity,this.edgeCapacity=this.config.initialEdgeCapacity,this.nodes=this.allocateNodeArrays(this.nodeCapacity),this.edges=this.allocateEdgeArrays(this.edgeCapacity),this.uriTable=new Mm.StringTable,this.labelTable=new Mm.StringTable,this.typeTable=new Mm.StringTable,this.predicateTable=new Mm.StringTable}allocateNodeArrays(e){return{positions:new Float32Array(e*2),radii:new Float32Array(e),colors:new Uint32Array(e),types:new Uint16Array(e),flags:new Uint8Array(e)}}allocateEdgeArrays(e){return{sourceIndices:new Uint32Array(e),targetIndices:new Uint32Array(e),predicateIndices:new Uint16Array(e),widths:new Float32Array(e),colors:new Uint32Array(e)}}resizeNodeArrays(e){if(e<=this.nodeCapacity)return;if(e>this.config.maxCapacity)throw new Error(`Cannot resize beyond max capacity (${this.config.maxCapacity})`);let t=this.allocateNodeArrays(e);t.positions.set(this.nodes.positions.subarray(0,this.nodeCount*2)),t.radii.set(this.nodes.radii.subarray(0,this.nodeCount)),t.colors.set(this.nodes.colors.subarray(0,this.nodeCount)),t.types.set(this.nodes.types.subarray(0,this.nodeCount)),t.flags.set(this.nodes.flags.subarray(0,this.nodeCount)),this.nodes=t,this.nodeCapacity=e}resizeEdgeArrays(e){if(e<=this.edgeCapacity)return;if(e>this.config.maxCapacity)throw new Error(`Cannot resize beyond max capacity (${this.config.maxCapacity})`);let t=this.allocateEdgeArrays(e);t.sourceIndices.set(this.edges.sourceIndices.subarray(0,this.edgeCount)),t.targetIndices.set(this.edges.targetIndices.subarray(0,this.edgeCount)),t.predicateIndices.set(this.edges.predicateIndices.subarray(0,this.edgeCount)),t.widths.set(this.edges.widths.subarray(0,this.edgeCount)),t.colors.set(this.edges.colors.subarray(0,this.edgeCount)),this.edges=t,this.edgeCapacity=e}ensureNodeCapacity(e){let t=this.nodeCount+e;if(t>this.nodeCapacity){let r=Math.max(t,Math.floor(this.nodeCapacity*this.config.growthFactor));this.resizeNodeArrays(r)}}ensureEdgeCapacity(e){let t=this.edgeCount+e;if(t>this.edgeCapacity){let r=Math.max(t,Math.floor(this.edgeCapacity*this.config.growthFactor));this.resizeEdgeArrays(r)}}addNode(e){let t=this.nodeIdToIndex.get(e.id);if(t!==void 0)return this.updateNodeAt(t,e),t;this.ensureNodeCapacity(1);let r=this.nodeCount++,i=r*2;this.nodes.positions[i]=e.x??Math.random()*1e3-500,this.nodes.positions[i+1]=e.y??Math.random()*1e3-500,this.nodes.radii[r]=e.radius??8,this.nodes.colors[r]=Ob(e.color,On.DEFAULT_COLORS.NODE),e.assetClass?this.nodes.types[r]=this.typeTable.intern(e.assetClass):this.nodes.types[r]=0;let s=On.NODE_FLAGS.VISIBLE;return e.isPinned&&(s|=On.NODE_FLAGS.PINNED),e.isArchived&&(s|=On.NODE_FLAGS.ARCHIVED),this.nodes.flags[r]=s,this.nodeIdToIndex.set(e.id,r),this.indexToNodeId[r]=e.id,this.uriTable.intern(e.id),e.label&&this.labelTable.intern(e.label),r}updateNodeAt(e,t){let r=e*2;t.x!==void 0&&(this.nodes.positions[r]=t.x),t.y!==void 0&&(this.nodes.positions[r+1]=t.y),t.radius!==void 0&&(this.nodes.radii[e]=t.radius),t.color!==void 0&&(this.nodes.colors[e]=Ob(t.color,On.DEFAULT_COLORS.NODE)),t.assetClass!==void 0&&(this.nodes.types[e]=this.typeTable.intern(t.assetClass));let i=this.nodes.flags[e];t.isPinned!==void 0&&(i=t.isPinned?i|On.NODE_FLAGS.PINNED:i&~On.NODE_FLAGS.PINNED),t.isArchived!==void 0&&(i=t.isArchived?i|On.NODE_FLAGS.ARCHIVED:i&~On.NODE_FLAGS.ARCHIVED),this.nodes.flags[e]=i}addEdge(e){let t=this.nodeIdToIndex.get(e.sourceId),r=this.nodeIdToIndex.get(e.targetId);if(t===void 0||r===void 0)return-1;let i=`${e.sourceId}->${e.targetId}:${e.predicate??"link"}`,s=this.edgeIdToIndex.get(i);if(s!==void 0)return s;this.ensureEdgeCapacity(1);let a=this.edgeCount++;return this.edges.sourceIndices[a]=t,this.edges.targetIndices[a]=r,this.edges.widths[a]=e.width??1,this.edges.colors[a]=Ob(e.color,On.DEFAULT_COLORS.EDGE),e.predicate?this.edges.predicateIndices[a]=this.predicateTable.intern(e.predicate):this.edges.predicateIndices[a]=0,this.edgeIdToIndex.set(i,a),a}addNodes(e){return this.ensureNodeCapacity(e.length),e.map(t=>this.addNode(t))}addEdges(e){return this.ensureEdgeCapacity(e.length),e.map(t=>this.addEdge(t))}loadChunk(e){let r=this.addNodes(e.nodes).filter(a=>a>=0).length,s=this.addEdges(e.edges).filter(a=>a>=0).length;return{nodesAdded:r,edgesAdded:s}}getNodePosition(e){let t=this.nodeIdToIndex.get(e);if(t===void 0)return null;let r=t*2;return{x:this.nodes.positions[r],y:this.nodes.positions[r+1]}}getNodePositionByIndex(e){let t=e*2;return{x:this.nodes.positions[t],y:this.nodes.positions[t+1]}}setNodePosition(e,t,r){let i=this.nodeIdToIndex.get(e);if(i===void 0)return!1;let s=i*2;return this.nodes.positions[s]=t,this.nodes.positions[s+1]=r,!0}setNodePositionByIndex(e,t,r){let i=e*2;this.nodes.positions[i]=t,this.nodes.positions[i+1]=r}updateNodePositions(e){let t=0;for(let[r,i]of e)this.setNodePosition(r,i.x,i.y)&&t++;return t}applyNodeUpdates(e){let t=performance.now(),r=0;for(let i of e){let s=i.index;if(!(s<0||s>=this.nodeCount)){if(i.x!==void 0||i.y!==void 0){let a=s*2;i.x!==void 0&&(this.nodes.positions[a]=i.x),i.y!==void 0&&(this.nodes.positions[a+1]=i.y)}i.radius!==void 0&&(this.nodes.radii[s]=i.radius),i.color!==void 0&&(this.nodes.colors[s]=i.color),i.setFlags!==void 0&&(this.nodes.flags[s]|=i.setFlags),i.clearFlags!==void 0&&(this.nodes.flags[s]&=~i.clearFlags),r++}}return{nodesUpdated:r,edgesUpdated:0,timeMs:performance.now()-t}}getNodeFlags(e){let t=this.nodeIdToIndex.get(e);return t===void 0?0:this.nodes.flags[t]}setNodeFlag(e,t){let r=this.nodeIdToIndex.get(e);return r===void 0?!1:(this.nodes.flags[r]|=t,!0)}clearNodeFlag(e,t){let r=this.nodeIdToIndex.get(e);return r===void 0?!1:(this.nodes.flags[r]&=~t,!0)}hasNodeFlag(e,t){return(this.getNodeFlags(e)&t)!==0}selectNode(e){return this.setNodeFlag(e,On.NODE_FLAGS.SELECTED)}deselectNode(e){return this.clearNodeFlag(e,On.NODE_FLAGS.SELECTED)}clearSelection(){for(let e=0;e<this.nodeCount;e++)this.nodes.flags[e]&=~On.NODE_FLAGS.SELECTED}getSelectedNodeIds(){let e=[];for(let t=0;t<this.nodeCount;t++)this.nodes.flags[t]&On.NODE_FLAGS.SELECTED&&e.push(this.indexToNodeId[t]);return e}getNodeId(e){return this.indexToNodeId[e]}getNodeIndex(e){return this.nodeIdToIndex.get(e)}hasNode(e){return this.nodeIdToIndex.has(e)}getNodeCount(){return this.nodeCount}getEdgeCount(){return this.edgeCount}getNodeEdges(e){let t=this.nodeIdToIndex.get(e);if(t===void 0)return[];let r=[];for(let i=0;i<this.edgeCount;i++)this.edges.sourceIndices[i]===t?r.push({edgeIndex:i,isSource:!0}):this.edges.targetIndices[i]===t&&r.push({edgeIndex:i,isSource:!1});return r}getNeighbors(e){let t=this.nodeIdToIndex.get(e);if(t===void 0)return[];let r=new Set;for(let i=0;i<this.edgeCount;i++)if(this.edges.sourceIndices[i]===t){let s=this.edges.targetIndices[i];r.add(this.indexToNodeId[s])}else if(this.edges.targetIndices[i]===t){let s=this.edges.sourceIndices[i];r.add(this.indexToNodeId[s])}return Array.from(r)}getRawArrays(){return{nodes:this.nodes,edges:this.edges,nodeCount:this.nodeCount,edgeCount:this.edgeCount}}getPositionsArray(){return this.nodes.positions.subarray(0,this.nodeCount*2)}getMemoryStats(){let e=this.nodeCapacity*2*4+this.nodeCapacity*4+this.nodeCapacity*4+this.nodeCapacity*2+this.nodeCapacity,t=this.edgeCapacity*4+this.edgeCapacity*4+this.edgeCapacity*2+this.edgeCapacity*4+this.edgeCapacity*4,r=this.uriTable.getMemoryBytes()+this.labelTable.getMemoryBytes()+this.typeTable.getMemoryBytes()+this.predicateTable.getMemoryBytes();return{nodeCount:this.nodeCount,edgeCount:this.edgeCount,nodeCapacity:this.nodeCapacity,edgeCapacity:this.edgeCapacity,nodeMemoryBytes:e,edgeMemoryBytes:t,stringTableBytes:r,totalBytes:e+t+r,internedStringCount:this.uriTable.size+this.labelTable.size+this.typeTable.size+this.predicateTable.size}}clear(){this.nodeCount=0,this.edgeCount=0,this.nodeIdToIndex.clear(),this.indexToNodeId=[],this.edgeIdToIndex.clear(),this.uriTable.clear(),this.labelTable.clear(),this.typeTable.clear(),this.predicateTable.clear(),this.nodeCapacity=this.config.initialNodeCapacity,this.edgeCapacity=this.config.initialEdgeCapacity,this.nodes=this.allocateNodeArrays(this.nodeCapacity),this.edges=this.allocateEdgeArrays(this.edgeCapacity)}getTypeTable(){return this.typeTable}getLabelTable(){return this.labelTable}getUriTable(){return this.uriTable}getPredicateTable(){return this.predicateTable}};jm.CompactGraphStore=Fb});var CC=S(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});Cl.MemoryPool=void 0;Cl.getGlobalPool=zB;Cl.resetGlobalPool=HB;var GB={maxPooledArrays:16,sizeBuckets:[64,256,1024,4096,16384,65536,262144],autoCleanup:!0,maxPoolMemory:50*1024*1024},$m=class{static{o(this,"MemoryPool")}constructor(e){this.float32Pool=new Map,this.uint32Pool=new Map,this.uint16Pool=new Map,this.uint8Pool=new Map,this.stats={poolHits:0,poolMisses:0,pooledArrays:0,pooledMemory:0,returned:0,rejected:0},this.config={...GB,...e};for(let t of this.config.sizeBuckets)this.float32Pool.set(t,[]),this.uint32Pool.set(t,[]),this.uint16Pool.set(t,[]),this.uint8Pool.set(t,[])}getBucketSize(e){for(let t of this.config.sizeBuckets)if(t>=e)return t;return e}getFloat32(e){let t=this.getBucketSize(e),r=this.float32Pool.get(t);if(r&&r.length>0){this.stats.poolHits++,this.stats.pooledArrays--,this.stats.pooledMemory-=t*4;let i=r.pop();return i.fill(0),i}return this.stats.poolMisses++,new Float32Array(t)}getUint32(e){let t=this.getBucketSize(e),r=this.uint32Pool.get(t);if(r&&r.length>0){this.stats.poolHits++,this.stats.pooledArrays--,this.stats.pooledMemory-=t*4;let i=r.pop();return i.fill(0),i}return this.stats.poolMisses++,new Uint32Array(t)}getUint16(e){let t=this.getBucketSize(e),r=this.uint16Pool.get(t);if(r&&r.length>0){this.stats.poolHits++,this.stats.pooledArrays--,this.stats.pooledMemory-=t*2;let i=r.pop();return i.fill(0),i}return this.stats.poolMisses++,new Uint16Array(t)}getUint8(e){let t=this.getBucketSize(e),r=this.uint8Pool.get(t);if(r&&r.length>0){this.stats.poolHits++,this.stats.pooledArrays--,this.stats.pooledMemory-=t;let i=r.pop();return i.fill(0),i}return this.stats.poolMisses++,new Uint8Array(t)}releaseFloat32(e){this.releaseToPool(this.float32Pool,e,4)}releaseUint32(e){this.releaseToPool(this.uint32Pool,e,4)}releaseUint16(e){this.releaseToPool(this.uint16Pool,e,2)}releaseUint8(e){this.releaseToPool(this.uint8Pool,e,1)}releaseToPool(e,t,r){let i=t.length,s=e.get(i);if(s&&s.length<this.config.maxPooledArrays){if(this.config.autoCleanup&&this.stats.pooledMemory+i*r>this.config.maxPoolMemory){this.stats.rejected++;return}s.push(t),this.stats.returned++,this.stats.pooledArrays++,this.stats.pooledMemory+=i*r}else this.stats.rejected++}getStats(){return{...this.stats}}getHitRatio(){let e=this.stats.poolHits+this.stats.poolMisses;return e>0?this.stats.poolHits/e:0}clear(){for(let e of this.float32Pool.values())e.length=0;for(let e of this.uint32Pool.values())e.length=0;for(let e of this.uint16Pool.values())e.length=0;for(let e of this.uint8Pool.values())e.length=0;this.stats.pooledArrays=0,this.stats.pooledMemory=0}cleanup(e){if(this.stats.pooledMemory<=e)return;let t=[...this.config.sizeBuckets].sort((r,i)=>i-r);for(let r of t){if(this.stats.pooledMemory<=e)break;for(let[i,s]of[[this.float32Pool,4],[this.uint32Pool,4],[this.uint16Pool,2],[this.uint8Pool,1]]){let a=i.get(r);if(a)for(;a.length>0&&this.stats.pooledMemory>e;)a.pop(),this.stats.pooledArrays--,this.stats.pooledMemory-=r*s}}}resetStats(){this.stats.poolHits=0,this.stats.poolMisses=0,this.stats.returned=0,this.stats.rejected=0}};Cl.MemoryPool=$m;var xl=null;function zB(){return xl||(xl=new $m),xl}o(zB,"getGlobalPool");function HB(){xl&&xl.clear(),xl=null}o(HB,"resetGlobalPool")});var IC=S(Sf=>{"use strict";Object.defineProperty(Sf,"__esModule",{value:!0});Sf.StreamingLoader=void 0;Sf.createStreamingSource=KB;var QB={chunkSize:1e3,chunkDelay:0,autoResolveEdges:!0,maxConcurrency:1},Db=class{static{o(this,"StreamingLoader")}constructor(e,t){this.state="idle",this.pendingEdges=[],this.nodesLoaded=0,this.edgesLoaded=0,this.chunksProcessed=0,this.progressCallbacks=[],this.abortController=null,this.store=e,this.config={...QB,...t}}getState(){return this.state}getProgress(){let e=this.totalChunks!==void 0&&this.totalChunks>0?this.chunksProcessed/this.totalChunks:0;return{currentChunk:this.chunksProcessed,totalChunks:this.totalChunks,nodesLoaded:this.nodesLoaded,edgesLoaded:this.edgesLoaded,progress:e,isComplete:this.state==="completed"}}onProgress(e){return this.progressCallbacks.push(e),()=>{let t=this.progressCallbacks.indexOf(e);t>=0&&this.progressCallbacks.splice(t,1)}}notifyProgress(){let e=this.getProgress();for(let t of this.progressCallbacks)t(e)}loadChunk(e){if(this.state==="error")throw new Error("Loader is in error state");this.state="loading",e.totalChunks!==void 0&&(this.totalChunks=e.totalChunks);for(let t of e.nodes)this.store.addNode(t),this.nodesLoaded++;for(let t of e.edges)this.store.addEdge(t)>=0?this.edgesLoaded++:this.pendingEdges.push(t);this.chunksProcessed++,e.isLast&&this.finishLoading(),this.notifyProgress()}finishLoading(){if(this.config.autoResolveEdges&&this.pendingEdges.length>0){for(let e of this.pendingEdges)this.store.addEdge(e)>=0&&this.edgesLoaded++;this.pendingEdges=[]}this.state="completed",this.notifyProgress()}async loadFromIterator(e){this.reset(),this.state="loading",this.abortController=new AbortController;try{for await(let r of e){if(this.abortController.signal.aborted){this.state="paused";return}this.loadChunk(r),this.config.chunkDelay>0&&await this.delay(this.config.chunkDelay)}this.state!=="completed"&&this.finishLoading()}catch(t){throw this.state="error",t}finally{this.abortController=null}}async loadFromArrays(e,t){let r=this.createChunks(e,t);await this.loadFromIterator(this.arrayToAsyncIterator(r))}createChunks(e,t){let r=[],{chunkSize:i}=this.config,s=Math.ceil(e.length/i),a=Array(s).fill(null).map(()=>[]);for(let c of t){let l=e.findIndex(u=>u.id===c.sourceId);if(l>=0){let u=Math.floor(l/i);a[u].push(c)}}for(let c=0;c<s;c++){let l=c*i,u=Math.min(l+i,e.length);r.push({chunkIndex:c,totalChunks:s,nodes:e.slice(l,u),edges:a[c],isLast:c===s-1})}return r}async*arrayToAsyncIterator(e){for(let t of e)yield t}delay(e){return new Promise(t=>setTimeout(t,e))}cancel(){this.abortController&&this.abortController.abort(),this.state="paused"}reset(){this.state="idle",this.pendingEdges=[],this.nodesLoaded=0,this.edgesLoaded=0,this.chunksProcessed=0,this.totalChunks=void 0,this.abortController=null}getPendingEdgeCount(){return this.pendingEdges.length}getStats(){return{state:this.state,nodesLoaded:this.nodesLoaded,edgesLoaded:this.edgesLoaded,chunksProcessed:this.chunksProcessed,totalChunks:this.totalChunks,pendingEdges:this.pendingEdges.length,storeStats:this.store.getMemoryStats()}}};Sf.StreamingLoader=Db;async function*KB(n,e,t=1e3){let r=0,i=0,s;for(;;){let a=await e(n,r,t);if(a.totalCount!==void 0&&s===void 0&&(s=Math.ceil(a.totalCount/t)),yield{chunkIndex:i,totalChunks:s,nodes:a.nodes,edges:a.edges,isLast:!a.hasMore},!a.hasMore)break;r+=t,i++}}o(KB,"createStreamingSource")});var OC=S(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.createStreamingSource=tr.StreamingLoader=tr.resetGlobalPool=tr.getGlobalPool=tr.MemoryPool=tr.CompactGraphStore=tr.StringTable=tr.DEFAULT_COLORS=tr.NODE_FLAGS=void 0;var RC=Ib();Object.defineProperty(tr,"NODE_FLAGS",{enumerable:!0,get:o(function(){return RC.NODE_FLAGS},"get")});Object.defineProperty(tr,"DEFAULT_COLORS",{enumerable:!0,get:o(function(){return RC.DEFAULT_COLORS},"get")});var YB=Pb();Object.defineProperty(tr,"StringTable",{enumerable:!0,get:o(function(){return YB.StringTable},"get")});var XB=xC();Object.defineProperty(tr,"CompactGraphStore",{enumerable:!0,get:o(function(){return XB.CompactGraphStore},"get")});var Nb=CC();Object.defineProperty(tr,"MemoryPool",{enumerable:!0,get:o(function(){return Nb.MemoryPool},"get")});Object.defineProperty(tr,"getGlobalPool",{enumerable:!0,get:o(function(){return Nb.getGlobalPool},"get")});Object.defineProperty(tr,"resetGlobalPool",{enumerable:!0,get:o(function(){return Nb.resetGlobalPool},"get")});var PC=IC();Object.defineProperty(tr,"StreamingLoader",{enumerable:!0,get:o(function(){return PC.StreamingLoader},"get")});Object.defineProperty(tr,"createStreamingSource",{enumerable:!0,get:o(function(){return PC.createStreamingSource},"get")})});var FC=S(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.ExoQLError=rr.ExoQL=rr.ExoQLBudgetExceededError=rr.ExoQLCycleError=rr.ExoQLEvalDisabledError=rr.ExoQLForbiddenKeywordError=rr.DEFAULT_EVAL_CONFIG=rr.validateExoQLAllowlist=rr.evaluateWithExoEval=void 0;var JB=Bc(),ZB=Uc(),eV=cl(),Lb=ub(),tV=Ne(),rV=uS();Object.defineProperty(rr,"evaluateWithExoEval",{enumerable:!0,get:o(function(){return rV.evaluateWithExoEval},"get")});var nV=oS();Object.defineProperty(rr,"validateExoQLAllowlist",{enumerable:!0,get:o(function(){return nV.validateExoQLAllowlist},"get")});var iV=cS();Object.defineProperty(rr,"DEFAULT_EVAL_CONFIG",{enumerable:!0,get:o(function(){return iV.DEFAULT_EVAL_CONFIG},"get")});var Bm=rf();Object.defineProperty(rr,"ExoQLForbiddenKeywordError",{enumerable:!0,get:o(function(){return Bm.ExoQLForbiddenKeywordError},"get")});Object.defineProperty(rr,"ExoQLEvalDisabledError",{enumerable:!0,get:o(function(){return Bm.ExoQLEvalDisabledError},"get")});Object.defineProperty(rr,"ExoQLCycleError",{enumerable:!0,get:o(function(){return Bm.ExoQLCycleError},"get")});Object.defineProperty(rr,"ExoQLBudgetExceededError",{enumerable:!0,get:o(function(){return Bm.ExoQLBudgetExceededError},"get")});var kb=class n{static{o(this,"ExoQL")}static async query(e,t,r){let{algebra:i,executor:s}=n.prepare(e,t,r);return s.executeAll(i)}static async ask(e,t,r){let{algebra:i,executor:s}=n.prepare(e,t,r);if(!s.isAskQuery(i))throw new vf("ExoQL.ask() requires an ASK query");return s.executeAsk(i)}static async construct(e,t,r){let{algebra:i,executor:s}=n.prepare(e,t,r);if(!s.isConstructQuery(i))throw new vf("ExoQL.construct() requires a CONSTRUCT query");return s.executeConstruct(i)}static async queryOwn(e,t,r,i){let s=await n.query(e,t,i);if(s.length===0)return[];let a=r?.subjectVar??"s",c=r?.predicateVar??"p",l=r?.objectVar??"o";return(await new Lb.SourceAnnotator(t).annotate(s,a,c,l)).filter(d=>{let h=d.get(Lb.SOURCE_VARIABLE);return h instanceof tV.Literal&&h.value==="own"})}static async isOwn(e,t,r,i){return await new Lb.SourceAnnotator(i).determineSource(e,t,r)==="own"}static prepare(e,t,r){let i=new JB.ExoQLParser,s=new ZB.ExoQLAlgebraTranslator,a=i.parse(e),c=s.translate(a),l=new eV.ExoQLQueryExecutor(t,r);return{algebra:c,executor:l}}};rr.ExoQL=kb;var vf=class extends Error{static{o(this,"ExoQLError")}constructor(e){super(e),this.name="ExoQLError"}};rr.ExoQLError=vf});var bf=S(ni=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.RELATION_COLUMN_SET_CLASS_UID=ni.RELATION_COLUMN_SET_CLASS_IRI=void 0;ni.normalizeRef=Mb;ni.createRelationColumnSetFromFrontmatter=aV;ni.isRelationColumnSet=oV;ni.isRelationColumnSetFrontmatter=lV;var DC=zs();function Mb(n){if(typeof n!="string")return null;let e=DC.WikiLinkHelpers.normalize(n);return e.length>0?e:null}o(Mb,"normalizeRef");function jb(n){return n==null?[]:Array.isArray(n)?n.filter(e=>typeof e=="string"):typeof n=="string"?[n]:[]}o(jb,"toStringArray");function sV(n){let e=n.lastIndexOf("/"),t=e>=0?n.slice(e+1):n,r=t.lastIndexOf(".");return r>=0?t.slice(0,r):t}o(sV,"basenameFromPath");function aV(n,e){let t=e.warn??(()=>{}),r=e.sourcePath;if(!n||typeof n!="object")return t(`RelationColumnSet: missing frontmatter at ${r}`),null;let i=n.exo__Asset_uid,s=typeof i=="string"?i.trim():"";if(s.length===0)return t(`RelationColumnSet: exo__Asset_uid missing at ${r}`),null;let a=jb(n.ui__RelationColumnSet_targetClass),c=[];for(let w of a){let b=Mb(w);b!==null&&c.push(b)}let l=c.length>0?c:null,u=Mb(n.ui__RelationColumnSet_referencingProperty);if(l===null&&u===null)return t(`RelationColumnSet ${s}: at least one of targetClass / referencingProperty required (${r})`),null;let f=jb(n.ui__RelationColumnSet_columns),d=[];for(let w of f){let b=DC.WikiLinkHelpers.normalize(w);b.length>0&&d.push(b)}if(d.length===0)return t(`RelationColumnSet ${s}: columns array must contain at least one entry (${r})`),null;let h=n.ui__RelationColumnSet_label,p=typeof h=="string"&&h.trim().length>0?h.trim():sV(r),y=n.ui__RelationColumnSet_priority,v=0;if(typeof y=="number"&&Number.isFinite(y))v=y;else if(typeof y=="string"){let w=Number.parseFloat(y);Number.isFinite(w)&&(v=w)}return{uid:s,label:p,targetClasses:l,referencingProperty:u,columns:d,priority:v,sourcePath:r}}o(aV,"createRelationColumnSetFromFrontmatter");function oV(n){if(!n||typeof n!="object")return!1;let e=n;return!(typeof e.uid!="string"||e.uid.length===0||typeof e.label!="string"||e.targetClasses!==null&&(!Array.isArray(e.targetClasses)||e.targetClasses.some(t=>typeof t!="string"))||e.referencingProperty!==null&&typeof e.referencingProperty!="string"||!Array.isArray(e.columns)||e.columns.length===0||e.columns.some(t=>typeof t!="string")||typeof e.priority!="number"||!Number.isFinite(e.priority)||typeof e.sourcePath!="string")}o(oV,"isRelationColumnSet");ni.RELATION_COLUMN_SET_CLASS_IRI="ui__RelationColumnSet";ni.RELATION_COLUMN_SET_CLASS_UID="97fc9862-c886-4d86-9a60-e0cf9d778575";function cV(n){let e=n.trim();if(e.length===0)return[];let t=e.match(/^\[\[([^\]]+)\]\]$/);return(t?t[1]:e).split("|").map(s=>s.trim()).filter(s=>s.length>0)}o(cV,"extractClassIdentifiers");function lV(n){if(!n)return!1;let e=n.exo__Instance_class,t=jb(e);for(let r of t)for(let i of cV(r))if(i===ni.RELATION_COLUMN_SET_CLASS_IRI||i===ni.RELATION_COLUMN_SET_CLASS_UID)return!0;return!1}o(lV,"isRelationColumnSetFrontmatter")});var LC=S(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.LAYOUT_CLASS_UID=Vi.LAYOUT_CLASS_IRI=void 0;Vi.createLayoutFromFrontmatter=mV;Vi.isLayout=gV;Vi.isLayoutFrontmatter=_V;var uV=zs(),fV=bf();Vi.LAYOUT_CLASS_IRI="exo__Layout";Vi.LAYOUT_CLASS_UID="08d00289-a5c8-4df1-8885-40a00a014004";function NC(n){return n==null?[]:Array.isArray(n)?n.filter(e=>typeof e=="string"):typeof n=="string"?[n]:[]}o(NC,"toStringArray");function dV(n){let e=n.lastIndexOf("/"),t=e>=0?n.slice(e+1):n,r=t.lastIndexOf(".");return r>=0?t.slice(0,r):t}o(dV,"basenameFromPath");function hV(n,e){if(typeof n=="boolean")return n;if(typeof n=="string"){let t=n.trim().toLowerCase();if(t==="true")return!0;if(t==="false")return!1}return e}o(hV,"parseBoolean");function pV(n){if(typeof n=="number"&&Number.isFinite(n))return n;if(typeof n=="string"){let e=Number.parseFloat(n);if(Number.isFinite(e))return e}return 0}o(pV,"parsePriority");function mV(n,e){let t=e.warn??(()=>{}),r=e.sourcePath;if(!n||typeof n!="object")return t(`Layout: missing frontmatter at ${r}`),null;let i=n.exo__Asset_uid,s=typeof i=="string"?i.trim():"";if(s.length===0)return t(`Layout: exo__Asset_uid missing at ${r}`),null;let a=(0,fV.normalizeRef)(n.exo__Layout_targetClass);if(a===null)return t(`Layout ${s}: exo__Layout_targetClass required (${r})`),null;let c=NC(n.exo__Layout_blocks),l=[];for(let p of c){let y=uV.WikiLinkHelpers.normalize(p);y.length>0&&l.push(y)}if(l.length===0)return t(`Layout ${s}: exo__Layout_blocks must contain at least one block (${r})`),null;let u=n.exo__Asset_label,f=typeof u=="string"&&u.trim().length>0?u.trim():dV(r),d=pV(n.exo__Layout_priority),h=hV(n.exo__Layout_coexistsWithDefault,!1);return{uid:s,label:f,targetClass:a,blocks:l,priority:d,coexistsWithDefault:h,sourcePath:r}}o(mV,"createLayoutFromFrontmatter");function gV(n){if(!n||typeof n!="object")return!1;let e=n;return!(typeof e.uid!="string"||e.uid.length===0||typeof e.label!="string"||typeof e.targetClass!="string"||e.targetClass.length===0||!Array.isArray(e.blocks)||e.blocks.length===0||e.blocks.some(t=>typeof t!="string")||typeof e.priority!="number"||!Number.isFinite(e.priority)||typeof e.coexistsWithDefault!="boolean"||typeof e.sourcePath!="string")}o(gV,"isLayout");function yV(n){let e=n.trim();if(e.length===0)return[];let t=e.match(/^\[\[([^\]]+)\]\]$/);return(t?t[1]:e).split("|").map(i=>i.trim()).filter(i=>i.length>0)}o(yV,"extractClassIdentifiers");function _V(n){if(!n)return!1;let e=NC(n.exo__Instance_class);for(let t of e)for(let r of yV(t))if(r===Vi.LAYOUT_CLASS_IRI||r===Vi.LAYOUT_CLASS_UID)return!0;return!1}o(_V,"isLayoutFrontmatter")});var jC=S(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.BACKLINKS_TABLE_BLOCK_CLASS_UID=Wt.BACKLINKS_TABLE_BLOCK_CLASS_IRI=Wt.PROPERTIES_BLOCK_CLASS_UID=Wt.PROPERTIES_BLOCK_CLASS_IRI=void 0;Wt.createLayoutBlockFromFrontmatter=TV;Wt.isLayoutBlockFrontmatter=AV;Wt.isPropertiesBlock=xV;Wt.isBacklinksTableBlock=CV;var SV=zs(),$b=bf();Wt.PROPERTIES_BLOCK_CLASS_IRI="exo__PropertiesBlock";Wt.PROPERTIES_BLOCK_CLASS_UID="fd039b3c-ed2b-41c2-a42e-bbfcdd074bfe";Wt.BACKLINKS_TABLE_BLOCK_CLASS_IRI="exo__BacklinksTableBlock";Wt.BACKLINKS_TABLE_BLOCK_CLASS_UID="2e868956-d81e-43fd-9817-1addde9cb311";function kC(n){return n==null?[]:Array.isArray(n)?n.filter(e=>typeof e=="string"):typeof n=="string"?[n]:[]}o(kC,"toStringArray");function vV(n){let e=n.lastIndexOf("/"),t=e>=0?n.slice(e+1):n,r=t.lastIndexOf(".");return r>=0?t.slice(0,r):t}o(vV,"basenameFromPath");function MC(n,e){if(typeof n=="boolean")return n;if(typeof n=="string"){let t=n.trim().toLowerCase();if(t==="true")return!0;if(t==="false")return!1}return e}o(MC,"parseBoolean");function bV(n){if(typeof n=="number"&&Number.isFinite(n)&&Number.isInteger(n))return n;if(typeof n=="string"){let e=Number.parseInt(n,10);if(Number.isFinite(e))return e}return null}o(bV,"parseInteger");function wV(n){let e=n.trim();if(e.length===0)return[];let t=e.match(/^\[\[([^\]]+)\]\]$/);return(t?t[1]:e).split("|").map(i=>i.trim()).filter(i=>i.length>0)}o(wV,"extractClassIdentifiers");function Vm(n,e,t){let r=kC(n.exo__Instance_class);for(let i of r)for(let s of wV(i))if(s===e||s===t)return!0;return!1}o(Vm,"classOf");function EV(n,e){let t=e.warn??(()=>{}),r=n.exo__Asset_uid,i=typeof r=="string"?r.trim():"";if(i.length===0)return t(`LayoutBlock: exo__Asset_uid missing at ${e.sourcePath}`),null;let s=n.exo__LayoutBlock_title,a=n.exo__Asset_label,c=typeof s=="string"&&s.trim().length>0?s.trim():typeof a=="string"&&a.trim().length>0?a.trim():vV(e.sourcePath),l=MC(n.exo__LayoutBlock_collapsed,!1);return{uid:i,title:c,collapsed:l,sourcePath:e.sourcePath}}o(EV,"extractBase");function TV(n,e){let t=e.warn??(()=>{});if(!n||typeof n!="object")return t(`LayoutBlock: missing frontmatter at ${e.sourcePath}`),null;let r=EV(n,e);if(r===null)return null;if(Vm(n,Wt.PROPERTIES_BLOCK_CLASS_IRI,Wt.PROPERTIES_BLOCK_CLASS_UID))return{...r,kind:"properties"};if(Vm(n,Wt.BACKLINKS_TABLE_BLOCK_CLASS_IRI,Wt.BACKLINKS_TABLE_BLOCK_CLASS_UID)){let i=(0,$b.normalizeRef)(n.exo__BacklinksTableBlock_rowClass),s=(0,$b.normalizeRef)(n.exo__BacklinksTableBlock_referencingProperty);if(i===null||s===null)return t(`BacklinksTableBlock ${r.uid}: rowClass and referencingProperty required (${e.sourcePath})`),null;let a=kC(n.exo__BacklinksTableBlock_columns),c=[];for(let p of a){let y=SV.WikiLinkHelpers.normalize(p);y.length>0&&c.push(y)}let l=(0,$b.normalizeRef)(n.exo__BacklinksTableBlock_sortBy),u=n.exo__BacklinksTableBlock_sortOrder,f=typeof u=="string"&&u.trim().toLowerCase()==="desc"?"desc":"asc",d=bV(n.exo__BacklinksTableBlock_limit),h=MC(n.exo__BacklinksTableBlock_showArchived,!1);return{...r,kind:"backlinks-table",rowClass:i,referencingProperty:s,columns:c,sortBy:l,sortOrder:f,limit:d,showArchived:h}}return t(`LayoutBlock ${r.uid}: unknown block class at ${e.sourcePath} \u2014 expected exo__PropertiesBlock or exo__BacklinksTableBlock`),null}o(TV,"createLayoutBlockFromFrontmatter");function AV(n){return n?Vm(n,Wt.PROPERTIES_BLOCK_CLASS_IRI,Wt.PROPERTIES_BLOCK_CLASS_UID)||Vm(n,Wt.BACKLINKS_TABLE_BLOCK_CLASS_IRI,Wt.BACKLINKS_TABLE_BLOCK_CLASS_UID):!1}o(AV,"isLayoutBlockFrontmatter");function xV(n){return n.kind==="properties"}o(xV,"isPropertiesBlock");function CV(n){return n.kind==="backlinks-table"}o(CV,"isBacklinksTableBlock")});var Um=S(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.isPropertiesBlock=je.isLayoutBlockFrontmatter=je.isBacklinksTableBlock=je.createLayoutBlockFromFrontmatter=je.PROPERTIES_BLOCK_CLASS_UID=je.PROPERTIES_BLOCK_CLASS_IRI=je.BACKLINKS_TABLE_BLOCK_CLASS_UID=je.BACKLINKS_TABLE_BLOCK_CLASS_IRI=je.isLayoutFrontmatter=je.isLayout=je.createLayoutFromFrontmatter=je.LAYOUT_CLASS_UID=je.LAYOUT_CLASS_IRI=je.normalizeRef=je.isRelationColumnSetFrontmatter=je.isRelationColumnSet=je.createRelationColumnSetFromFrontmatter=je.RELATION_COLUMN_SET_CLASS_UID=je.RELATION_COLUMN_SET_CLASS_IRI=void 0;var Il=bf();Object.defineProperty(je,"RELATION_COLUMN_SET_CLASS_IRI",{enumerable:!0,get:o(function(){return Il.RELATION_COLUMN_SET_CLASS_IRI},"get")});Object.defineProperty(je,"RELATION_COLUMN_SET_CLASS_UID",{enumerable:!0,get:o(function(){return Il.RELATION_COLUMN_SET_CLASS_UID},"get")});Object.defineProperty(je,"createRelationColumnSetFromFrontmatter",{enumerable:!0,get:o(function(){return Il.createRelationColumnSetFromFrontmatter},"get")});Object.defineProperty(je,"isRelationColumnSet",{enumerable:!0,get:o(function(){return Il.isRelationColumnSet},"get")});Object.defineProperty(je,"isRelationColumnSetFrontmatter",{enumerable:!0,get:o(function(){return Il.isRelationColumnSetFrontmatter},"get")});Object.defineProperty(je,"normalizeRef",{enumerable:!0,get:o(function(){return Il.normalizeRef},"get")});var wf=LC();Object.defineProperty(je,"LAYOUT_CLASS_IRI",{enumerable:!0,get:o(function(){return wf.LAYOUT_CLASS_IRI},"get")});Object.defineProperty(je,"LAYOUT_CLASS_UID",{enumerable:!0,get:o(function(){return wf.LAYOUT_CLASS_UID},"get")});Object.defineProperty(je,"createLayoutFromFrontmatter",{enumerable:!0,get:o(function(){return wf.createLayoutFromFrontmatter},"get")});Object.defineProperty(je,"isLayout",{enumerable:!0,get:o(function(){return wf.isLayout},"get")});Object.defineProperty(je,"isLayoutFrontmatter",{enumerable:!0,get:o(function(){return wf.isLayoutFrontmatter},"get")});var za=jC();Object.defineProperty(je,"BACKLINKS_TABLE_BLOCK_CLASS_IRI",{enumerable:!0,get:o(function(){return za.BACKLINKS_TABLE_BLOCK_CLASS_IRI},"get")});Object.defineProperty(je,"BACKLINKS_TABLE_BLOCK_CLASS_UID",{enumerable:!0,get:o(function(){return za.BACKLINKS_TABLE_BLOCK_CLASS_UID},"get")});Object.defineProperty(je,"PROPERTIES_BLOCK_CLASS_IRI",{enumerable:!0,get:o(function(){return za.PROPERTIES_BLOCK_CLASS_IRI},"get")});Object.defineProperty(je,"PROPERTIES_BLOCK_CLASS_UID",{enumerable:!0,get:o(function(){return za.PROPERTIES_BLOCK_CLASS_UID},"get")});Object.defineProperty(je,"createLayoutBlockFromFrontmatter",{enumerable:!0,get:o(function(){return za.createLayoutBlockFromFrontmatter},"get")});Object.defineProperty(je,"isBacklinksTableBlock",{enumerable:!0,get:o(function(){return za.isBacklinksTableBlock},"get")});Object.defineProperty(je,"isLayoutBlockFrontmatter",{enumerable:!0,get:o(function(){return za.isLayoutBlockFrontmatter},"get")});Object.defineProperty(je,"isPropertiesBlock",{enumerable:!0,get:o(function(){return za.isPropertiesBlock},"get")})});var BC=S(qm=>{"use strict";Object.defineProperty(qm,"__esModule",{value:!0});qm.RelationColumnSetResolver=void 0;var $C=bf(),IV={warn:o(()=>{},"warn")},Bb=class{static{o(this,"RelationColumnSetResolver")}constructor(e,t={}){this.provider=e,this.logger=t.logger??IV}resolve(e,t){if(!e||e.length===0)return null;let r=t!=null?(0,$C.normalizeRef)(t):null,i=this.provider();if(i.length===0)return null;for(let s of e){let a=(0,$C.normalizeRef)(s);if(a===null)continue;if(r!==null){let l=this.filterTier1(i,a,r);if(l.length>0)return this.tiebreak(l,1)}let c=this.filterTier2(i,a);if(c.length>0)return this.tiebreak(c,2);if(r!==null){let l=this.filterTier3(i,r);if(l.length>0)return this.tiebreak(l,3)}}return null}filterTier1(e,t,r){let i=[];for(let s of e)s.targetClasses!==null&&s.referencingProperty===r&&s.targetClasses.includes(t)&&i.push(s);return i}filterTier2(e,t){let r=[];for(let i of e)i.targetClasses!==null&&i.referencingProperty===null&&i.targetClasses.includes(t)&&r.push(i);return r}filterTier3(e,t){let r=[];for(let i of e)i.targetClasses===null&&i.referencingProperty===t&&r.push(i);return r}tiebreak(e,t){let r=e.slice().sort((s,a)=>{let c=a.priority-s.priority;return c!==0?c:s.uid.localeCompare(a.uid)}),i=r[0];if(r.length>1){let s=i.priority,a=r.filter(c=>c.priority===s);if(a.length>1){let c=a.slice(1).map(l=>l.uid).join(", ");this.logger.warn(`RelationColumnSetResolver: tier=${t} priority=${s} collision \u2014 selected ${i.uid}; tied losers: ${c}`)}}return i}};qm.RelationColumnSetResolver=Bb});var VC=S(Wm=>{"use strict";Object.defineProperty(Wm,"__esModule",{value:!0});Wm.RelationColumnSetResolver=void 0;var RV=BC();Object.defineProperty(Wm,"RelationColumnSetResolver",{enumerable:!0,get:o(function(){return RV.RelationColumnSetResolver},"get")})});var qC=S(Ef=>{"use strict";Object.defineProperty(Ef,"__esModule",{value:!0});Ef.LayoutSelector=void 0;Ef.selectByPriority=UC;var PV=zs(),Vb=class{static{o(this,"LayoutSelector")}constructor(e){this.source=e}resolve(e){if(!Array.isArray(e)||e.length===0)return null;let t=this.source.all;if(t.length===0)return null;for(let r of e){if(typeof r!="string")continue;let i=PV.WikiLinkHelpers.normalize(r);if(i.length===0)continue;let s=t.filter(a=>a.targetClass===i);if(s.length!==0)return UC(s)}return null}};Ef.LayoutSelector=Vb;function UC(n){if(n.length===0)throw new Error("selectByPriority: expected at least one candidate");return n.length===1?n[0]:[...n].sort((t,r)=>t.priority!==r.priority?r.priority-t.priority:t.uid<r.uid?-1:t.uid>r.uid?1:0)[0]}o(UC,"selectByPriority")});var vs=S(Gm=>{"use strict";Object.defineProperty(Gm,"__esModule",{value:!0});Gm.ErrorCode=void 0;var WC;(function(n){n[n.INVALID_INPUT=1e3]="INVALID_INPUT",n[n.INVALID_FORMAT=1001]="INVALID_FORMAT",n[n.MISSING_REQUIRED_FIELD=1002]="MISSING_REQUIRED_FIELD",n[n.INVALID_SCHEMA=1003]="INVALID_SCHEMA",n[n.NETWORK_ERROR=2e3]="NETWORK_ERROR",n[n.REQUEST_TIMEOUT=2001]="REQUEST_TIMEOUT",n[n.CONNECTION_FAILED=2002]="CONNECTION_FAILED",n[n.FILE_READ_ERROR=2003]="FILE_READ_ERROR",n[n.FILE_WRITE_ERROR=2004]="FILE_WRITE_ERROR",n[n.INVALID_STATE=3e3]="INVALID_STATE",n[n.INVALID_TRANSITION=3001]="INVALID_TRANSITION",n[n.OPERATION_FAILED=3002]="OPERATION_FAILED",n[n.CONCURRENT_MODIFICATION=3003]="CONCURRENT_MODIFICATION",n[n.PERMISSION_DENIED=4e3]="PERMISSION_DENIED",n[n.UNAUTHORIZED=4001]="UNAUTHORIZED",n[n.FORBIDDEN=4003]="FORBIDDEN",n[n.NOT_FOUND=5e3]="NOT_FOUND",n[n.RESOURCE_EXHAUSTED=5001]="RESOURCE_EXHAUSTED",n[n.ALREADY_EXISTS=5002]="ALREADY_EXISTS",n[n.UNKNOWN_ERROR=9e3]="UNKNOWN_ERROR",n[n.INTERNAL_ERROR=9001]="INTERNAL_ERROR"})(WC||(Gm.ErrorCode=WC={}))});var bs=S(zm=>{"use strict";Object.defineProperty(zm,"__esModule",{value:!0});zm.ApplicationError=void 0;var Ub=class extends Error{static{o(this,"ApplicationError")}constructor(e,t){super(e),this.name=this.constructor.name,this.context=t,this.timestamp=new Date,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}format(){let e=`\u274C ${this.name}: ${this.message}`;if(this.guidance&&(e+=`
413
+ `)?`"${e.replace(/"/g,'""')}"`:e}};Lm.ResultSerializer=Eb});var TC=S(Tl=>{"use strict";Object.defineProperty(Tl,"__esModule",{value:!0});Tl.FileAlreadyExistsError=Tl.FileNotFoundError=void 0;var Tb=class extends Error{static{o(this,"FileNotFoundError")}constructor(e){super(`File not found: ${e}`),this.name="FileNotFoundError"}};Tl.FileNotFoundError=Tb;var Ab=class extends Error{static{o(this,"FileAlreadyExistsError")}constructor(e){super(`File already exists: ${e}`),this.name="FileAlreadyExistsError"}};Tl.FileAlreadyExistsError=Ab});var Cb=S(br=>{"use strict";var hB=br&&br.__decorate||function(n,e,t,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,r);else for(var c=n.length-1;c>=0;c--)(a=n[c])&&(s=(i<3?a(s):i>3?a(e,t,s):a(e,t))||s);return i>3&&s&&Object.defineProperty(e,t,s),s},pB=br&&br.__metadata||function(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)};Object.defineProperty(br,"__esModule",{value:!0});br.VaultSettings=br.DEFAULT_FLEETING_NOTE_CLASS_UID=br.DEFAULT_INBOX_FOLDER=br.DEFAULT_OWNER_IDENTITY=void 0;var mB=fe();br.DEFAULT_OWNER_IDENTITY='"[[!kitelev]]"';br.DEFAULT_INBOX_FOLDER="01 Inbox";br.DEFAULT_FLEETING_NOTE_CLASS_UID="fca0a931-a01f-48e4-b72a-4af206c94bc7";var xb=class{static{o(this,"VaultSettings")}constructor(e){this.ownerIdentity=e?.ownerIdentity??br.DEFAULT_OWNER_IDENTITY,this.defaultInboxFolder=e?.defaultInboxFolder??br.DEFAULT_INBOX_FOLDER,this.fleetingNoteClassUID=e?.fleetingNoteClassUID??br.DEFAULT_FLEETING_NOTE_CLASS_UID}getOwnerIdentity(){return this.ownerIdentity}getDefaultInboxFolder(){return this.defaultInboxFolder}getFleetingNoteClassUID(){return this.fleetingNoteClassUID}};br.VaultSettings=xb;br.VaultSettings=xb=hB([(0,mB.injectable)(),pB("design:paramtypes",[Object])],xb)});var AC=S(Ga=>{"use strict";Object.defineProperty(Ga,"__esModule",{value:!0});Ga.container=void 0;Ga.registerCoreServices=BB;Ga.createChildContainer=VB;Ga.getContainer=UB;Ga.resetContainer=qB;Xd();var _f=fe();Object.defineProperty(Ga,"container",{enumerable:!0,get:o(function(){return _f.container},"get")});var Rt=wt(),gB=lv(),yB=fv(),_B=ZS(),SB=DS(),vB=RS(),bB=sm(),wB=om(),EB=QS(),TB=YS(),AB=tv(),xB=zS(),CB=hv(),IB=bv(),RB=_v(),PB=MS(),OB=$S(),FB=ov(),DB=iv(),NB=db(),LB=LS(),kB=Tv(),MB=xv(),jB=jv(),$B=Cb();function BB(n){let e=n||_f.container;e.registerSingleton(Rt.DI_TOKENS.DynamicFrontmatterGenerator,gB.DynamicFrontmatterGenerator),e.registerSingleton(Rt.DI_TOKENS.AlgorithmExtractor,yB.AlgorithmExtractor),e.isRegistered(Rt.DI_TOKENS.IVaultSettings)||e.register(Rt.DI_TOKENS.IVaultSettings,{useValue:new $B.VaultSettings}),e.registerSingleton(Rt.DI_TOKENS.EffortStatusWorkflow,bB.EffortStatusWorkflow),e.registerSingleton(Rt.DI_TOKENS.StatusTimestampService,wB.StatusTimestampService),e.registerSingleton(Rt.DI_TOKENS.TaskStatusService,vB.TaskStatusService),e.registerSingleton(Rt.DI_TOKENS.AreaCreationService,SB.AreaCreationService),e.registerSingleton(Rt.DI_TOKENS.ClassCreationService,PB.ClassCreationService),e.registerSingleton(Rt.DI_TOKENS.ConceptCreationService,OB.ConceptCreationService),e.registerSingleton(Rt.DI_TOKENS.FleetingNoteCreationService,FB.FleetingNoteCreationService),e.registerSingleton(Rt.DI_TOKENS.SupervisionCreationService,DB.SupervisionCreationService),e.registerSingleton(Rt.DI_TOKENS.GenericAssetCreationService,MB.GenericAssetCreationService),e.registerSingleton(Rt.DI_TOKENS.PropertyCleanupService,_B.PropertyCleanupService),e.registerSingleton(Rt.DI_TOKENS.FolderRepairService,EB.FolderRepairService),e.registerSingleton(Rt.DI_TOKENS.LabelToAliasService,TB.LabelToAliasService),e.registerSingleton(Rt.DI_TOKENS.RenameToUidService,AB.RenameToUidService),e.registerSingleton(Rt.DI_TOKENS.PlanningService,CB.PlanningService),e.registerSingleton(Rt.DI_TOKENS.EffortVotingService,xB.EffortVotingService),e.registerSingleton(Rt.DI_TOKENS.SessionEventService,IB.SessionEventService),e.registerSingleton(Rt.DI_TOKENS.AssetConversionService,RB.AssetConversionService),e.registerSingleton(Rt.DI_TOKENS.NoteToRDFConverter,NB.NoteToRDFConverter),e.registerSingleton(Rt.DI_TOKENS.AreaHierarchyBuilder,LB.AreaHierarchyBuilder),e.registerSingleton(Rt.DI_TOKENS.URIConstructionService,kB.URIConstructionService),e.registerSingleton(Rt.DI_TOKENS.CriticalityZoneService,jB.CriticalityZoneService)}o(BB,"registerCoreServices");function VB(){return _f.container.createChildContainer()}o(VB,"createChildContainer");function UB(){return _f.container}o(UB,"getContainer");function qB(){_f.container.reset()}o(qB,"resetContainer")});var Ib=S(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});Al.DEFAULT_COLORS=Al.NODE_FLAGS=void 0;Al.NODE_FLAGS={PINNED:1,VISIBLE:2,SELECTED:4,HOVERED:8,ARCHIVED:16,SEARCH_MATCH:32,HIGHLIGHTED:64};Al.DEFAULT_COLORS={NODE:1251006975,NODE_SELECTED:4290840575,NODE_HOVERED:1723558655,EDGE:2576980479,EDGE_SELECTED:4288151807,EDGE_HIERARCHY:2619846911}});var Pb=S(km=>{"use strict";Object.defineProperty(km,"__esModule",{value:!0});km.StringTable=void 0;var Rb=class n{static{o(this,"StringTable")}constructor(e){if(this.stringToIndex=new Map,this.strings=[],this.memoryBytes=0,e)for(let t of e)this.intern(t)}intern(e){let t=this.stringToIndex.get(e);if(t!==void 0)return t;let r=this.strings.length;return this.strings.push(e),this.stringToIndex.set(e,r),this.memoryBytes+=e.length*2+50,r}getIndex(e){return this.stringToIndex.get(e)??-1}getString(e){if(e<0||e>=this.strings.length)throw new RangeError(`StringTable index out of bounds: ${e}`);return this.strings[e]}has(e){return this.stringToIndex.has(e)}hasIndex(e){return e>=0&&e<this.strings.length}get size(){return this.strings.length}getMemoryBytes(){return this.memoryBytes}*entries(){for(let e=0;e<this.strings.length;e++)yield[e,this.strings[e]]}*values(){for(let e of this.strings)yield e}toArray(){return[...this.strings]}clear(){this.stringToIndex.clear(),this.strings=[],this.memoryBytes=0}static fromJSON(e){return new n(e)}toJSON(){return this.strings}internAll(e){return e.map(t=>this.intern(t))}getStrings(e){return e.map(t=>this.getString(t))}search(e){let t=typeof e=="string"?new RegExp(e):e,r=[];for(let i=0;i<this.strings.length;i++)t.test(this.strings[i])&&r.push([i,this.strings[i]]);return r}getStats(){let e=this.strings.reduce((t,r)=>t+r.length,0);return{count:this.strings.length,memoryBytes:this.memoryBytes,avgStringLength:this.strings.length>0?e/this.strings.length:0}}};km.StringTable=Rb});var xC=S(jm=>{"use strict";Object.defineProperty(jm,"__esModule",{value:!0});jm.CompactGraphStore=void 0;var Mm=Pb(),On=Ib(),WB={initialNodeCapacity:1e4,initialEdgeCapacity:5e4,growthFactor:2,maxCapacity:1e6};function Ob(n,e){if(n===void 0)return e;if(typeof n=="number")return n;if(n.startsWith("#")){let t=n.slice(1);if(t.length===6)return parseInt(t,16)<<8|255;if(t.length===8)return parseInt(t,16)}return e}o(Ob,"parseColor");var Fb=class{static{o(this,"CompactGraphStore")}constructor(e){this.nodeCount=0,this.edgeCount=0,this.nodeIdToIndex=new Map,this.indexToNodeId=[],this.edgeIdToIndex=new Map,this.config={...WB,...e},this.nodeCapacity=this.config.initialNodeCapacity,this.edgeCapacity=this.config.initialEdgeCapacity,this.nodes=this.allocateNodeArrays(this.nodeCapacity),this.edges=this.allocateEdgeArrays(this.edgeCapacity),this.uriTable=new Mm.StringTable,this.labelTable=new Mm.StringTable,this.typeTable=new Mm.StringTable,this.predicateTable=new Mm.StringTable}allocateNodeArrays(e){return{positions:new Float32Array(e*2),radii:new Float32Array(e),colors:new Uint32Array(e),types:new Uint16Array(e),flags:new Uint8Array(e)}}allocateEdgeArrays(e){return{sourceIndices:new Uint32Array(e),targetIndices:new Uint32Array(e),predicateIndices:new Uint16Array(e),widths:new Float32Array(e),colors:new Uint32Array(e)}}resizeNodeArrays(e){if(e<=this.nodeCapacity)return;if(e>this.config.maxCapacity)throw new Error(`Cannot resize beyond max capacity (${this.config.maxCapacity})`);let t=this.allocateNodeArrays(e);t.positions.set(this.nodes.positions.subarray(0,this.nodeCount*2)),t.radii.set(this.nodes.radii.subarray(0,this.nodeCount)),t.colors.set(this.nodes.colors.subarray(0,this.nodeCount)),t.types.set(this.nodes.types.subarray(0,this.nodeCount)),t.flags.set(this.nodes.flags.subarray(0,this.nodeCount)),this.nodes=t,this.nodeCapacity=e}resizeEdgeArrays(e){if(e<=this.edgeCapacity)return;if(e>this.config.maxCapacity)throw new Error(`Cannot resize beyond max capacity (${this.config.maxCapacity})`);let t=this.allocateEdgeArrays(e);t.sourceIndices.set(this.edges.sourceIndices.subarray(0,this.edgeCount)),t.targetIndices.set(this.edges.targetIndices.subarray(0,this.edgeCount)),t.predicateIndices.set(this.edges.predicateIndices.subarray(0,this.edgeCount)),t.widths.set(this.edges.widths.subarray(0,this.edgeCount)),t.colors.set(this.edges.colors.subarray(0,this.edgeCount)),this.edges=t,this.edgeCapacity=e}ensureNodeCapacity(e){let t=this.nodeCount+e;if(t>this.nodeCapacity){let r=Math.max(t,Math.floor(this.nodeCapacity*this.config.growthFactor));this.resizeNodeArrays(r)}}ensureEdgeCapacity(e){let t=this.edgeCount+e;if(t>this.edgeCapacity){let r=Math.max(t,Math.floor(this.edgeCapacity*this.config.growthFactor));this.resizeEdgeArrays(r)}}addNode(e){let t=this.nodeIdToIndex.get(e.id);if(t!==void 0)return this.updateNodeAt(t,e),t;this.ensureNodeCapacity(1);let r=this.nodeCount++,i=r*2;this.nodes.positions[i]=e.x??Math.random()*1e3-500,this.nodes.positions[i+1]=e.y??Math.random()*1e3-500,this.nodes.radii[r]=e.radius??8,this.nodes.colors[r]=Ob(e.color,On.DEFAULT_COLORS.NODE),e.assetClass?this.nodes.types[r]=this.typeTable.intern(e.assetClass):this.nodes.types[r]=0;let s=On.NODE_FLAGS.VISIBLE;return e.isPinned&&(s|=On.NODE_FLAGS.PINNED),e.isArchived&&(s|=On.NODE_FLAGS.ARCHIVED),this.nodes.flags[r]=s,this.nodeIdToIndex.set(e.id,r),this.indexToNodeId[r]=e.id,this.uriTable.intern(e.id),e.label&&this.labelTable.intern(e.label),r}updateNodeAt(e,t){let r=e*2;t.x!==void 0&&(this.nodes.positions[r]=t.x),t.y!==void 0&&(this.nodes.positions[r+1]=t.y),t.radius!==void 0&&(this.nodes.radii[e]=t.radius),t.color!==void 0&&(this.nodes.colors[e]=Ob(t.color,On.DEFAULT_COLORS.NODE)),t.assetClass!==void 0&&(this.nodes.types[e]=this.typeTable.intern(t.assetClass));let i=this.nodes.flags[e];t.isPinned!==void 0&&(i=t.isPinned?i|On.NODE_FLAGS.PINNED:i&~On.NODE_FLAGS.PINNED),t.isArchived!==void 0&&(i=t.isArchived?i|On.NODE_FLAGS.ARCHIVED:i&~On.NODE_FLAGS.ARCHIVED),this.nodes.flags[e]=i}addEdge(e){let t=this.nodeIdToIndex.get(e.sourceId),r=this.nodeIdToIndex.get(e.targetId);if(t===void 0||r===void 0)return-1;let i=`${e.sourceId}->${e.targetId}:${e.predicate??"link"}`,s=this.edgeIdToIndex.get(i);if(s!==void 0)return s;this.ensureEdgeCapacity(1);let a=this.edgeCount++;return this.edges.sourceIndices[a]=t,this.edges.targetIndices[a]=r,this.edges.widths[a]=e.width??1,this.edges.colors[a]=Ob(e.color,On.DEFAULT_COLORS.EDGE),e.predicate?this.edges.predicateIndices[a]=this.predicateTable.intern(e.predicate):this.edges.predicateIndices[a]=0,this.edgeIdToIndex.set(i,a),a}addNodes(e){return this.ensureNodeCapacity(e.length),e.map(t=>this.addNode(t))}addEdges(e){return this.ensureEdgeCapacity(e.length),e.map(t=>this.addEdge(t))}loadChunk(e){let r=this.addNodes(e.nodes).filter(a=>a>=0).length,s=this.addEdges(e.edges).filter(a=>a>=0).length;return{nodesAdded:r,edgesAdded:s}}getNodePosition(e){let t=this.nodeIdToIndex.get(e);if(t===void 0)return null;let r=t*2;return{x:this.nodes.positions[r],y:this.nodes.positions[r+1]}}getNodePositionByIndex(e){let t=e*2;return{x:this.nodes.positions[t],y:this.nodes.positions[t+1]}}setNodePosition(e,t,r){let i=this.nodeIdToIndex.get(e);if(i===void 0)return!1;let s=i*2;return this.nodes.positions[s]=t,this.nodes.positions[s+1]=r,!0}setNodePositionByIndex(e,t,r){let i=e*2;this.nodes.positions[i]=t,this.nodes.positions[i+1]=r}updateNodePositions(e){let t=0;for(let[r,i]of e)this.setNodePosition(r,i.x,i.y)&&t++;return t}applyNodeUpdates(e){let t=performance.now(),r=0;for(let i of e){let s=i.index;if(!(s<0||s>=this.nodeCount)){if(i.x!==void 0||i.y!==void 0){let a=s*2;i.x!==void 0&&(this.nodes.positions[a]=i.x),i.y!==void 0&&(this.nodes.positions[a+1]=i.y)}i.radius!==void 0&&(this.nodes.radii[s]=i.radius),i.color!==void 0&&(this.nodes.colors[s]=i.color),i.setFlags!==void 0&&(this.nodes.flags[s]|=i.setFlags),i.clearFlags!==void 0&&(this.nodes.flags[s]&=~i.clearFlags),r++}}return{nodesUpdated:r,edgesUpdated:0,timeMs:performance.now()-t}}getNodeFlags(e){let t=this.nodeIdToIndex.get(e);return t===void 0?0:this.nodes.flags[t]}setNodeFlag(e,t){let r=this.nodeIdToIndex.get(e);return r===void 0?!1:(this.nodes.flags[r]|=t,!0)}clearNodeFlag(e,t){let r=this.nodeIdToIndex.get(e);return r===void 0?!1:(this.nodes.flags[r]&=~t,!0)}hasNodeFlag(e,t){return(this.getNodeFlags(e)&t)!==0}selectNode(e){return this.setNodeFlag(e,On.NODE_FLAGS.SELECTED)}deselectNode(e){return this.clearNodeFlag(e,On.NODE_FLAGS.SELECTED)}clearSelection(){for(let e=0;e<this.nodeCount;e++)this.nodes.flags[e]&=~On.NODE_FLAGS.SELECTED}getSelectedNodeIds(){let e=[];for(let t=0;t<this.nodeCount;t++)this.nodes.flags[t]&On.NODE_FLAGS.SELECTED&&e.push(this.indexToNodeId[t]);return e}getNodeId(e){return this.indexToNodeId[e]}getNodeIndex(e){return this.nodeIdToIndex.get(e)}hasNode(e){return this.nodeIdToIndex.has(e)}getNodeCount(){return this.nodeCount}getEdgeCount(){return this.edgeCount}getNodeEdges(e){let t=this.nodeIdToIndex.get(e);if(t===void 0)return[];let r=[];for(let i=0;i<this.edgeCount;i++)this.edges.sourceIndices[i]===t?r.push({edgeIndex:i,isSource:!0}):this.edges.targetIndices[i]===t&&r.push({edgeIndex:i,isSource:!1});return r}getNeighbors(e){let t=this.nodeIdToIndex.get(e);if(t===void 0)return[];let r=new Set;for(let i=0;i<this.edgeCount;i++)if(this.edges.sourceIndices[i]===t){let s=this.edges.targetIndices[i];r.add(this.indexToNodeId[s])}else if(this.edges.targetIndices[i]===t){let s=this.edges.sourceIndices[i];r.add(this.indexToNodeId[s])}return Array.from(r)}getRawArrays(){return{nodes:this.nodes,edges:this.edges,nodeCount:this.nodeCount,edgeCount:this.edgeCount}}getPositionsArray(){return this.nodes.positions.subarray(0,this.nodeCount*2)}getMemoryStats(){let e=this.nodeCapacity*2*4+this.nodeCapacity*4+this.nodeCapacity*4+this.nodeCapacity*2+this.nodeCapacity,t=this.edgeCapacity*4+this.edgeCapacity*4+this.edgeCapacity*2+this.edgeCapacity*4+this.edgeCapacity*4,r=this.uriTable.getMemoryBytes()+this.labelTable.getMemoryBytes()+this.typeTable.getMemoryBytes()+this.predicateTable.getMemoryBytes();return{nodeCount:this.nodeCount,edgeCount:this.edgeCount,nodeCapacity:this.nodeCapacity,edgeCapacity:this.edgeCapacity,nodeMemoryBytes:e,edgeMemoryBytes:t,stringTableBytes:r,totalBytes:e+t+r,internedStringCount:this.uriTable.size+this.labelTable.size+this.typeTable.size+this.predicateTable.size}}clear(){this.nodeCount=0,this.edgeCount=0,this.nodeIdToIndex.clear(),this.indexToNodeId=[],this.edgeIdToIndex.clear(),this.uriTable.clear(),this.labelTable.clear(),this.typeTable.clear(),this.predicateTable.clear(),this.nodeCapacity=this.config.initialNodeCapacity,this.edgeCapacity=this.config.initialEdgeCapacity,this.nodes=this.allocateNodeArrays(this.nodeCapacity),this.edges=this.allocateEdgeArrays(this.edgeCapacity)}getTypeTable(){return this.typeTable}getLabelTable(){return this.labelTable}getUriTable(){return this.uriTable}getPredicateTable(){return this.predicateTable}};jm.CompactGraphStore=Fb});var CC=S(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});Cl.MemoryPool=void 0;Cl.getGlobalPool=zB;Cl.resetGlobalPool=HB;var GB={maxPooledArrays:16,sizeBuckets:[64,256,1024,4096,16384,65536,262144],autoCleanup:!0,maxPoolMemory:50*1024*1024},$m=class{static{o(this,"MemoryPool")}constructor(e){this.float32Pool=new Map,this.uint32Pool=new Map,this.uint16Pool=new Map,this.uint8Pool=new Map,this.stats={poolHits:0,poolMisses:0,pooledArrays:0,pooledMemory:0,returned:0,rejected:0},this.config={...GB,...e};for(let t of this.config.sizeBuckets)this.float32Pool.set(t,[]),this.uint32Pool.set(t,[]),this.uint16Pool.set(t,[]),this.uint8Pool.set(t,[])}getBucketSize(e){for(let t of this.config.sizeBuckets)if(t>=e)return t;return e}getFloat32(e){let t=this.getBucketSize(e),r=this.float32Pool.get(t);if(r&&r.length>0){this.stats.poolHits++,this.stats.pooledArrays--,this.stats.pooledMemory-=t*4;let i=r.pop();return i.fill(0),i}return this.stats.poolMisses++,new Float32Array(t)}getUint32(e){let t=this.getBucketSize(e),r=this.uint32Pool.get(t);if(r&&r.length>0){this.stats.poolHits++,this.stats.pooledArrays--,this.stats.pooledMemory-=t*4;let i=r.pop();return i.fill(0),i}return this.stats.poolMisses++,new Uint32Array(t)}getUint16(e){let t=this.getBucketSize(e),r=this.uint16Pool.get(t);if(r&&r.length>0){this.stats.poolHits++,this.stats.pooledArrays--,this.stats.pooledMemory-=t*2;let i=r.pop();return i.fill(0),i}return this.stats.poolMisses++,new Uint16Array(t)}getUint8(e){let t=this.getBucketSize(e),r=this.uint8Pool.get(t);if(r&&r.length>0){this.stats.poolHits++,this.stats.pooledArrays--,this.stats.pooledMemory-=t;let i=r.pop();return i.fill(0),i}return this.stats.poolMisses++,new Uint8Array(t)}releaseFloat32(e){this.releaseToPool(this.float32Pool,e,4)}releaseUint32(e){this.releaseToPool(this.uint32Pool,e,4)}releaseUint16(e){this.releaseToPool(this.uint16Pool,e,2)}releaseUint8(e){this.releaseToPool(this.uint8Pool,e,1)}releaseToPool(e,t,r){let i=t.length,s=e.get(i);if(s&&s.length<this.config.maxPooledArrays){if(this.config.autoCleanup&&this.stats.pooledMemory+i*r>this.config.maxPoolMemory){this.stats.rejected++;return}s.push(t),this.stats.returned++,this.stats.pooledArrays++,this.stats.pooledMemory+=i*r}else this.stats.rejected++}getStats(){return{...this.stats}}getHitRatio(){let e=this.stats.poolHits+this.stats.poolMisses;return e>0?this.stats.poolHits/e:0}clear(){for(let e of this.float32Pool.values())e.length=0;for(let e of this.uint32Pool.values())e.length=0;for(let e of this.uint16Pool.values())e.length=0;for(let e of this.uint8Pool.values())e.length=0;this.stats.pooledArrays=0,this.stats.pooledMemory=0}cleanup(e){if(this.stats.pooledMemory<=e)return;let t=[...this.config.sizeBuckets].sort((r,i)=>i-r);for(let r of t){if(this.stats.pooledMemory<=e)break;for(let[i,s]of[[this.float32Pool,4],[this.uint32Pool,4],[this.uint16Pool,2],[this.uint8Pool,1]]){let a=i.get(r);if(a)for(;a.length>0&&this.stats.pooledMemory>e;)a.pop(),this.stats.pooledArrays--,this.stats.pooledMemory-=r*s}}}resetStats(){this.stats.poolHits=0,this.stats.poolMisses=0,this.stats.returned=0,this.stats.rejected=0}};Cl.MemoryPool=$m;var xl=null;function zB(){return xl||(xl=new $m),xl}o(zB,"getGlobalPool");function HB(){xl&&xl.clear(),xl=null}o(HB,"resetGlobalPool")});var IC=S(Sf=>{"use strict";Object.defineProperty(Sf,"__esModule",{value:!0});Sf.StreamingLoader=void 0;Sf.createStreamingSource=KB;var QB={chunkSize:1e3,chunkDelay:0,autoResolveEdges:!0,maxConcurrency:1},Db=class{static{o(this,"StreamingLoader")}constructor(e,t){this.state="idle",this.pendingEdges=[],this.nodesLoaded=0,this.edgesLoaded=0,this.chunksProcessed=0,this.progressCallbacks=[],this.abortController=null,this.store=e,this.config={...QB,...t}}getState(){return this.state}getProgress(){let e=this.totalChunks!==void 0&&this.totalChunks>0?this.chunksProcessed/this.totalChunks:0;return{currentChunk:this.chunksProcessed,totalChunks:this.totalChunks,nodesLoaded:this.nodesLoaded,edgesLoaded:this.edgesLoaded,progress:e,isComplete:this.state==="completed"}}onProgress(e){return this.progressCallbacks.push(e),()=>{let t=this.progressCallbacks.indexOf(e);t>=0&&this.progressCallbacks.splice(t,1)}}notifyProgress(){let e=this.getProgress();for(let t of this.progressCallbacks)t(e)}loadChunk(e){if(this.state==="error")throw new Error("Loader is in error state");this.state="loading",e.totalChunks!==void 0&&(this.totalChunks=e.totalChunks);for(let t of e.nodes)this.store.addNode(t),this.nodesLoaded++;for(let t of e.edges)this.store.addEdge(t)>=0?this.edgesLoaded++:this.pendingEdges.push(t);this.chunksProcessed++,e.isLast&&this.finishLoading(),this.notifyProgress()}finishLoading(){if(this.config.autoResolveEdges&&this.pendingEdges.length>0){for(let e of this.pendingEdges)this.store.addEdge(e)>=0&&this.edgesLoaded++;this.pendingEdges=[]}this.state="completed",this.notifyProgress()}async loadFromIterator(e){this.reset(),this.state="loading",this.abortController=new AbortController;try{for await(let r of e){if(this.abortController.signal.aborted){this.state="paused";return}this.loadChunk(r),this.config.chunkDelay>0&&await this.delay(this.config.chunkDelay)}this.state!=="completed"&&this.finishLoading()}catch(t){throw this.state="error",t}finally{this.abortController=null}}async loadFromArrays(e,t){let r=this.createChunks(e,t);await this.loadFromIterator(this.arrayToAsyncIterator(r))}createChunks(e,t){let r=[],{chunkSize:i}=this.config,s=Math.ceil(e.length/i),a=Array(s).fill(null).map(()=>[]);for(let c of t){let l=e.findIndex(u=>u.id===c.sourceId);if(l>=0){let u=Math.floor(l/i);a[u].push(c)}}for(let c=0;c<s;c++){let l=c*i,u=Math.min(l+i,e.length);r.push({chunkIndex:c,totalChunks:s,nodes:e.slice(l,u),edges:a[c],isLast:c===s-1})}return r}async*arrayToAsyncIterator(e){for(let t of e)yield t}delay(e){return new Promise(t=>setTimeout(t,e))}cancel(){this.abortController&&this.abortController.abort(),this.state="paused"}reset(){this.state="idle",this.pendingEdges=[],this.nodesLoaded=0,this.edgesLoaded=0,this.chunksProcessed=0,this.totalChunks=void 0,this.abortController=null}getPendingEdgeCount(){return this.pendingEdges.length}getStats(){return{state:this.state,nodesLoaded:this.nodesLoaded,edgesLoaded:this.edgesLoaded,chunksProcessed:this.chunksProcessed,totalChunks:this.totalChunks,pendingEdges:this.pendingEdges.length,storeStats:this.store.getMemoryStats()}}};Sf.StreamingLoader=Db;async function*KB(n,e,t=1e3){let r=0,i=0,s;for(;;){let a=await e(n,r,t);if(a.totalCount!==void 0&&s===void 0&&(s=Math.ceil(a.totalCount/t)),yield{chunkIndex:i,totalChunks:s,nodes:a.nodes,edges:a.edges,isLast:!a.hasMore},!a.hasMore)break;r+=t,i++}}o(KB,"createStreamingSource")});var OC=S(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.createStreamingSource=tr.StreamingLoader=tr.resetGlobalPool=tr.getGlobalPool=tr.MemoryPool=tr.CompactGraphStore=tr.StringTable=tr.DEFAULT_COLORS=tr.NODE_FLAGS=void 0;var RC=Ib();Object.defineProperty(tr,"NODE_FLAGS",{enumerable:!0,get:o(function(){return RC.NODE_FLAGS},"get")});Object.defineProperty(tr,"DEFAULT_COLORS",{enumerable:!0,get:o(function(){return RC.DEFAULT_COLORS},"get")});var YB=Pb();Object.defineProperty(tr,"StringTable",{enumerable:!0,get:o(function(){return YB.StringTable},"get")});var XB=xC();Object.defineProperty(tr,"CompactGraphStore",{enumerable:!0,get:o(function(){return XB.CompactGraphStore},"get")});var Nb=CC();Object.defineProperty(tr,"MemoryPool",{enumerable:!0,get:o(function(){return Nb.MemoryPool},"get")});Object.defineProperty(tr,"getGlobalPool",{enumerable:!0,get:o(function(){return Nb.getGlobalPool},"get")});Object.defineProperty(tr,"resetGlobalPool",{enumerable:!0,get:o(function(){return Nb.resetGlobalPool},"get")});var PC=IC();Object.defineProperty(tr,"StreamingLoader",{enumerable:!0,get:o(function(){return PC.StreamingLoader},"get")});Object.defineProperty(tr,"createStreamingSource",{enumerable:!0,get:o(function(){return PC.createStreamingSource},"get")})});var FC=S(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.ExoQLError=rr.ExoQL=rr.ExoQLBudgetExceededError=rr.ExoQLCycleError=rr.ExoQLEvalDisabledError=rr.ExoQLForbiddenKeywordError=rr.DEFAULT_EVAL_CONFIG=rr.validateExoQLAllowlist=rr.evaluateWithExoEval=void 0;var JB=Bc(),ZB=Uc(),eV=cl(),Lb=ub(),tV=Ne(),rV=uS();Object.defineProperty(rr,"evaluateWithExoEval",{enumerable:!0,get:o(function(){return rV.evaluateWithExoEval},"get")});var nV=oS();Object.defineProperty(rr,"validateExoQLAllowlist",{enumerable:!0,get:o(function(){return nV.validateExoQLAllowlist},"get")});var iV=cS();Object.defineProperty(rr,"DEFAULT_EVAL_CONFIG",{enumerable:!0,get:o(function(){return iV.DEFAULT_EVAL_CONFIG},"get")});var Bm=rf();Object.defineProperty(rr,"ExoQLForbiddenKeywordError",{enumerable:!0,get:o(function(){return Bm.ExoQLForbiddenKeywordError},"get")});Object.defineProperty(rr,"ExoQLEvalDisabledError",{enumerable:!0,get:o(function(){return Bm.ExoQLEvalDisabledError},"get")});Object.defineProperty(rr,"ExoQLCycleError",{enumerable:!0,get:o(function(){return Bm.ExoQLCycleError},"get")});Object.defineProperty(rr,"ExoQLBudgetExceededError",{enumerable:!0,get:o(function(){return Bm.ExoQLBudgetExceededError},"get")});var kb=class n{static{o(this,"ExoQL")}static async query(e,t,r){let{algebra:i,executor:s}=n.prepare(e,t,r);return s.executeAll(i)}static async ask(e,t,r){let{algebra:i,executor:s}=n.prepare(e,t,r);if(!s.isAskQuery(i))throw new vf("ExoQL.ask() requires an ASK query");return s.executeAsk(i)}static async construct(e,t,r){let{algebra:i,executor:s}=n.prepare(e,t,r);if(!s.isConstructQuery(i))throw new vf("ExoQL.construct() requires a CONSTRUCT query");return s.executeConstruct(i)}static async queryOwn(e,t,r,i){let s=await n.query(e,t,i);if(s.length===0)return[];let a=r?.subjectVar??"s",c=r?.predicateVar??"p",l=r?.objectVar??"o";return(await new Lb.SourceAnnotator(t).annotate(s,a,c,l)).filter(d=>{let h=d.get(Lb.SOURCE_VARIABLE);return h instanceof tV.Literal&&h.value==="own"})}static async isOwn(e,t,r,i){return await new Lb.SourceAnnotator(i).determineSource(e,t,r)==="own"}static prepare(e,t,r){let i=new JB.ExoQLParser,s=new ZB.ExoQLAlgebraTranslator,a=i.parse(e),c=s.translate(a),l=new eV.ExoQLQueryExecutor(t,r);return{algebra:c,executor:l}}};rr.ExoQL=kb;var vf=class extends Error{static{o(this,"ExoQLError")}constructor(e){super(e),this.name="ExoQLError"}};rr.ExoQLError=vf});var bf=S(ni=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.RELATION_COLUMN_SET_CLASS_UID=ni.RELATION_COLUMN_SET_CLASS_IRI=void 0;ni.normalizeRef=Mb;ni.createRelationColumnSetFromFrontmatter=aV;ni.isRelationColumnSet=oV;ni.isRelationColumnSetFrontmatter=lV;var DC=zs();function Mb(n){if(typeof n!="string")return null;let e=DC.WikiLinkHelpers.normalize(n);return e.length>0?e:null}o(Mb,"normalizeRef");function jb(n){return n==null?[]:Array.isArray(n)?n.filter(e=>typeof e=="string"):typeof n=="string"?[n]:[]}o(jb,"toStringArray");function sV(n){let e=n.lastIndexOf("/"),t=e>=0?n.slice(e+1):n,r=t.lastIndexOf(".");return r>=0?t.slice(0,r):t}o(sV,"basenameFromPath");function aV(n,e){let t=e.warn??(()=>{}),r=e.sourcePath;if(!n||typeof n!="object")return t(`RelationColumnSet: missing frontmatter at ${r}`),null;let i=n.exo__Asset_uid,s=typeof i=="string"?i.trim():"";if(s.length===0)return t(`RelationColumnSet: exo__Asset_uid missing at ${r}`),null;let a=jb(n.ui__RelationColumnSet_targetClass),c=[];for(let w of a){let b=Mb(w);b!==null&&c.push(b)}let l=c.length>0?c:null,u=Mb(n.ui__RelationColumnSet_referencingProperty);if(l===null&&u===null)return t(`RelationColumnSet ${s}: at least one of targetClass / referencingProperty required (${r})`),null;let f=jb(n.ui__RelationColumnSet_columns),d=[];for(let w of f){let b=DC.WikiLinkHelpers.normalize(w);b.length>0&&d.push(b)}if(d.length===0)return t(`RelationColumnSet ${s}: columns array must contain at least one entry (${r})`),null;let h=n.ui__RelationColumnSet_label,p=typeof h=="string"&&h.trim().length>0?h.trim():sV(r),y=n.ui__RelationColumnSet_priority,v=0;if(typeof y=="number"&&Number.isFinite(y))v=y;else if(typeof y=="string"){let w=Number.parseFloat(y);Number.isFinite(w)&&(v=w)}return{uid:s,label:p,targetClasses:l,referencingProperty:u,columns:d,priority:v,sourcePath:r}}o(aV,"createRelationColumnSetFromFrontmatter");function oV(n){if(!n||typeof n!="object")return!1;let e=n;return!(typeof e.uid!="string"||e.uid.length===0||typeof e.label!="string"||e.targetClasses!==null&&(!Array.isArray(e.targetClasses)||e.targetClasses.some(t=>typeof t!="string"))||e.referencingProperty!==null&&typeof e.referencingProperty!="string"||!Array.isArray(e.columns)||e.columns.length===0||e.columns.some(t=>typeof t!="string")||typeof e.priority!="number"||!Number.isFinite(e.priority)||typeof e.sourcePath!="string")}o(oV,"isRelationColumnSet");ni.RELATION_COLUMN_SET_CLASS_IRI="ui__RelationColumnSet";ni.RELATION_COLUMN_SET_CLASS_UID="97fc9862-c886-4d86-9a60-e0cf9d778575";function cV(n){let e=n.trim();if(e.length===0)return[];let t=e.match(/^\[\[([^\]]+)\]\]$/);return(t?t[1]:e).split("|").map(s=>s.trim()).filter(s=>s.length>0)}o(cV,"extractClassIdentifiers");function lV(n){if(!n)return!1;let e=n.exo__Instance_class,t=jb(e);for(let r of t)for(let i of cV(r))if(i===ni.RELATION_COLUMN_SET_CLASS_IRI||i===ni.RELATION_COLUMN_SET_CLASS_UID)return!0;return!1}o(lV,"isRelationColumnSetFrontmatter")});var LC=S(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.LAYOUT_CLASS_UID=Vi.LAYOUT_CLASS_IRI=void 0;Vi.createLayoutFromFrontmatter=mV;Vi.isLayout=gV;Vi.isLayoutFrontmatter=_V;var uV=zs(),fV=bf();Vi.LAYOUT_CLASS_IRI="exo__Layout";Vi.LAYOUT_CLASS_UID="08d00289-a5c8-4df1-8885-40a00a014004";function NC(n){return n==null?[]:Array.isArray(n)?n.filter(e=>typeof e=="string"):typeof n=="string"?[n]:[]}o(NC,"toStringArray");function dV(n){let e=n.lastIndexOf("/"),t=e>=0?n.slice(e+1):n,r=t.lastIndexOf(".");return r>=0?t.slice(0,r):t}o(dV,"basenameFromPath");function hV(n,e){if(typeof n=="boolean")return n;if(typeof n=="string"){let t=n.trim().toLowerCase();if(t==="true")return!0;if(t==="false")return!1}return e}o(hV,"parseBoolean");function pV(n){if(typeof n=="number"&&Number.isFinite(n))return n;if(typeof n=="string"){let e=Number.parseFloat(n);if(Number.isFinite(e))return e}return 0}o(pV,"parsePriority");function mV(n,e){let t=e.warn??(()=>{}),r=e.sourcePath;if(!n||typeof n!="object")return t(`Layout: missing frontmatter at ${r}`),null;let i=n.exo__Asset_uid,s=typeof i=="string"?i.trim():"";if(s.length===0)return t(`Layout: exo__Asset_uid missing at ${r}`),null;let a=(0,fV.normalizeRef)(n.exo__Layout_targetClass);if(a===null)return t(`Layout ${s}: exo__Layout_targetClass required (${r})`),null;let c=NC(n.exo__Layout_blocks),l=[];for(let p of c){let y=uV.WikiLinkHelpers.normalize(p);y.length>0&&l.push(y)}if(l.length===0)return t(`Layout ${s}: exo__Layout_blocks must contain at least one block (${r})`),null;let u=n.exo__Asset_label,f=typeof u=="string"&&u.trim().length>0?u.trim():dV(r),d=pV(n.exo__Layout_priority),h=hV(n.exo__Layout_coexistsWithDefault,!1);return{uid:s,label:f,targetClass:a,blocks:l,priority:d,coexistsWithDefault:h,sourcePath:r}}o(mV,"createLayoutFromFrontmatter");function gV(n){if(!n||typeof n!="object")return!1;let e=n;return!(typeof e.uid!="string"||e.uid.length===0||typeof e.label!="string"||typeof e.targetClass!="string"||e.targetClass.length===0||!Array.isArray(e.blocks)||e.blocks.length===0||e.blocks.some(t=>typeof t!="string")||typeof e.priority!="number"||!Number.isFinite(e.priority)||typeof e.coexistsWithDefault!="boolean"||typeof e.sourcePath!="string")}o(gV,"isLayout");function yV(n){let e=n.trim();if(e.length===0)return[];let t=e.match(/^\[\[([^\]]+)\]\]$/);return(t?t[1]:e).split("|").map(i=>i.trim()).filter(i=>i.length>0)}o(yV,"extractClassIdentifiers");function _V(n){if(!n)return!1;let e=NC(n.exo__Instance_class);for(let t of e)for(let r of yV(t))if(r===Vi.LAYOUT_CLASS_IRI||r===Vi.LAYOUT_CLASS_UID)return!0;return!1}o(_V,"isLayoutFrontmatter")});var jC=S(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.BACKLINKS_TABLE_BLOCK_CLASS_UID=Wt.BACKLINKS_TABLE_BLOCK_CLASS_IRI=Wt.PROPERTIES_BLOCK_CLASS_UID=Wt.PROPERTIES_BLOCK_CLASS_IRI=void 0;Wt.createLayoutBlockFromFrontmatter=TV;Wt.isLayoutBlockFrontmatter=AV;Wt.isPropertiesBlock=xV;Wt.isBacklinksTableBlock=CV;var SV=zs(),$b=bf();Wt.PROPERTIES_BLOCK_CLASS_IRI="exo__PropertiesBlock";Wt.PROPERTIES_BLOCK_CLASS_UID="fd039b3c-ed2b-41c2-a42e-bbfcdd074bfe";Wt.BACKLINKS_TABLE_BLOCK_CLASS_IRI="exo__BacklinksTableBlock";Wt.BACKLINKS_TABLE_BLOCK_CLASS_UID="2e868956-d81e-43fd-9817-1addde9cb311";function kC(n){return n==null?[]:Array.isArray(n)?n.filter(e=>typeof e=="string"):typeof n=="string"?[n]:[]}o(kC,"toStringArray");function vV(n){let e=n.lastIndexOf("/"),t=e>=0?n.slice(e+1):n,r=t.lastIndexOf(".");return r>=0?t.slice(0,r):t}o(vV,"basenameFromPath");function MC(n,e){if(typeof n=="boolean")return n;if(typeof n=="string"){let t=n.trim().toLowerCase();if(t==="true")return!0;if(t==="false")return!1}return e}o(MC,"parseBoolean");function bV(n){if(typeof n=="number"&&Number.isFinite(n)&&Number.isInteger(n))return n;if(typeof n=="string"){let e=Number.parseInt(n,10);if(Number.isFinite(e))return e}return null}o(bV,"parseInteger");function wV(n){let e=n.trim();if(e.length===0)return[];let t=e.match(/^\[\[([^\]]+)\]\]$/);return(t?t[1]:e).split("|").map(i=>i.trim()).filter(i=>i.length>0)}o(wV,"extractClassIdentifiers");function Vm(n,e,t){let r=kC(n.exo__Instance_class);for(let i of r)for(let s of wV(i))if(s===e||s===t)return!0;return!1}o(Vm,"classOf");function EV(n,e){let t=e.warn??(()=>{}),r=n.exo__Asset_uid,i=typeof r=="string"?r.trim():"";if(i.length===0)return t(`LayoutBlock: exo__Asset_uid missing at ${e.sourcePath}`),null;let s=n.exo__LayoutBlock_title,a=n.exo__Asset_label,c=typeof s=="string"&&s.trim().length>0?s.trim():typeof a=="string"&&a.trim().length>0?a.trim():vV(e.sourcePath),l=MC(n.exo__LayoutBlock_collapsed,!1);return{uid:i,title:c,collapsed:l,sourcePath:e.sourcePath}}o(EV,"extractBase");function TV(n,e){let t=e.warn??(()=>{});if(!n||typeof n!="object")return t(`LayoutBlock: missing frontmatter at ${e.sourcePath}`),null;let r=EV(n,e);if(r===null)return null;if(Vm(n,Wt.PROPERTIES_BLOCK_CLASS_IRI,Wt.PROPERTIES_BLOCK_CLASS_UID))return{...r,kind:"properties"};if(Vm(n,Wt.BACKLINKS_TABLE_BLOCK_CLASS_IRI,Wt.BACKLINKS_TABLE_BLOCK_CLASS_UID)){let i=(0,$b.normalizeRef)(n.exo__BacklinksTableBlock_rowClass),s=(0,$b.normalizeRef)(n.exo__BacklinksTableBlock_referencingProperty);if(i===null||s===null)return t(`BacklinksTableBlock ${r.uid}: rowClass and referencingProperty required (${e.sourcePath})`),null;let a=kC(n.exo__BacklinksTableBlock_columns),c=[];for(let p of a){let y=SV.WikiLinkHelpers.normalize(p);y.length>0&&c.push(y)}let l=(0,$b.normalizeRef)(n.exo__BacklinksTableBlock_sortBy),u=n.exo__BacklinksTableBlock_sortOrder,f=typeof u=="string"&&u.trim().toLowerCase()==="desc"?"desc":"asc",d=bV(n.exo__BacklinksTableBlock_limit),h=MC(n.exo__BacklinksTableBlock_showArchived,!1);return{...r,kind:"backlinks-table",rowClass:i,referencingProperty:s,columns:c,sortBy:l,sortOrder:f,limit:d,showArchived:h}}return t(`LayoutBlock ${r.uid}: unknown block class at ${e.sourcePath} \u2014 expected exo__PropertiesBlock or exo__BacklinksTableBlock`),null}o(TV,"createLayoutBlockFromFrontmatter");function AV(n){return n?Vm(n,Wt.PROPERTIES_BLOCK_CLASS_IRI,Wt.PROPERTIES_BLOCK_CLASS_UID)||Vm(n,Wt.BACKLINKS_TABLE_BLOCK_CLASS_IRI,Wt.BACKLINKS_TABLE_BLOCK_CLASS_UID):!1}o(AV,"isLayoutBlockFrontmatter");function xV(n){return n.kind==="properties"}o(xV,"isPropertiesBlock");function CV(n){return n.kind==="backlinks-table"}o(CV,"isBacklinksTableBlock")});var Um=S(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.isPropertiesBlock=je.isLayoutBlockFrontmatter=je.isBacklinksTableBlock=je.createLayoutBlockFromFrontmatter=je.PROPERTIES_BLOCK_CLASS_UID=je.PROPERTIES_BLOCK_CLASS_IRI=je.BACKLINKS_TABLE_BLOCK_CLASS_UID=je.BACKLINKS_TABLE_BLOCK_CLASS_IRI=je.isLayoutFrontmatter=je.isLayout=je.createLayoutFromFrontmatter=je.LAYOUT_CLASS_UID=je.LAYOUT_CLASS_IRI=je.normalizeRef=je.isRelationColumnSetFrontmatter=je.isRelationColumnSet=je.createRelationColumnSetFromFrontmatter=je.RELATION_COLUMN_SET_CLASS_UID=je.RELATION_COLUMN_SET_CLASS_IRI=void 0;var Il=bf();Object.defineProperty(je,"RELATION_COLUMN_SET_CLASS_IRI",{enumerable:!0,get:o(function(){return Il.RELATION_COLUMN_SET_CLASS_IRI},"get")});Object.defineProperty(je,"RELATION_COLUMN_SET_CLASS_UID",{enumerable:!0,get:o(function(){return Il.RELATION_COLUMN_SET_CLASS_UID},"get")});Object.defineProperty(je,"createRelationColumnSetFromFrontmatter",{enumerable:!0,get:o(function(){return Il.createRelationColumnSetFromFrontmatter},"get")});Object.defineProperty(je,"isRelationColumnSet",{enumerable:!0,get:o(function(){return Il.isRelationColumnSet},"get")});Object.defineProperty(je,"isRelationColumnSetFrontmatter",{enumerable:!0,get:o(function(){return Il.isRelationColumnSetFrontmatter},"get")});Object.defineProperty(je,"normalizeRef",{enumerable:!0,get:o(function(){return Il.normalizeRef},"get")});var wf=LC();Object.defineProperty(je,"LAYOUT_CLASS_IRI",{enumerable:!0,get:o(function(){return wf.LAYOUT_CLASS_IRI},"get")});Object.defineProperty(je,"LAYOUT_CLASS_UID",{enumerable:!0,get:o(function(){return wf.LAYOUT_CLASS_UID},"get")});Object.defineProperty(je,"createLayoutFromFrontmatter",{enumerable:!0,get:o(function(){return wf.createLayoutFromFrontmatter},"get")});Object.defineProperty(je,"isLayout",{enumerable:!0,get:o(function(){return wf.isLayout},"get")});Object.defineProperty(je,"isLayoutFrontmatter",{enumerable:!0,get:o(function(){return wf.isLayoutFrontmatter},"get")});var za=jC();Object.defineProperty(je,"BACKLINKS_TABLE_BLOCK_CLASS_IRI",{enumerable:!0,get:o(function(){return za.BACKLINKS_TABLE_BLOCK_CLASS_IRI},"get")});Object.defineProperty(je,"BACKLINKS_TABLE_BLOCK_CLASS_UID",{enumerable:!0,get:o(function(){return za.BACKLINKS_TABLE_BLOCK_CLASS_UID},"get")});Object.defineProperty(je,"PROPERTIES_BLOCK_CLASS_IRI",{enumerable:!0,get:o(function(){return za.PROPERTIES_BLOCK_CLASS_IRI},"get")});Object.defineProperty(je,"PROPERTIES_BLOCK_CLASS_UID",{enumerable:!0,get:o(function(){return za.PROPERTIES_BLOCK_CLASS_UID},"get")});Object.defineProperty(je,"createLayoutBlockFromFrontmatter",{enumerable:!0,get:o(function(){return za.createLayoutBlockFromFrontmatter},"get")});Object.defineProperty(je,"isBacklinksTableBlock",{enumerable:!0,get:o(function(){return za.isBacklinksTableBlock},"get")});Object.defineProperty(je,"isLayoutBlockFrontmatter",{enumerable:!0,get:o(function(){return za.isLayoutBlockFrontmatter},"get")});Object.defineProperty(je,"isPropertiesBlock",{enumerable:!0,get:o(function(){return za.isPropertiesBlock},"get")})});var BC=S(qm=>{"use strict";Object.defineProperty(qm,"__esModule",{value:!0});qm.RelationColumnSetResolver=void 0;var $C=bf(),IV={warn:o(()=>{},"warn")},Bb=class{static{o(this,"RelationColumnSetResolver")}constructor(e,t={}){this.provider=e,this.logger=t.logger??IV}resolve(e,t){if(!e||e.length===0)return null;let r=t!=null?(0,$C.normalizeRef)(t):null,i=this.provider();if(i.length===0)return null;for(let s of e){let a=(0,$C.normalizeRef)(s);if(a===null)continue;if(r!==null){let l=this.filterTier1(i,a,r);if(l.length>0)return this.tiebreak(l,1)}let c=this.filterTier2(i,a);if(c.length>0)return this.tiebreak(c,2);if(r!==null){let l=this.filterTier3(i,r);if(l.length>0)return this.tiebreak(l,3)}}return null}filterTier1(e,t,r){let i=[];for(let s of e)s.targetClasses!==null&&s.referencingProperty===r&&s.targetClasses.includes(t)&&i.push(s);return i}filterTier2(e,t){let r=[];for(let i of e)i.targetClasses!==null&&i.referencingProperty===null&&i.targetClasses.includes(t)&&r.push(i);return r}filterTier3(e,t){let r=[];for(let i of e)i.targetClasses===null&&i.referencingProperty===t&&r.push(i);return r}tiebreak(e,t){let r=e.slice().sort((s,a)=>{let c=a.priority-s.priority;return c!==0?c:s.uid.localeCompare(a.uid)}),i=r[0];if(r.length>1){let s=i.priority,a=r.filter(c=>c.priority===s);if(a.length>1){let c=a.slice(1).map(l=>l.uid).join(", ");this.logger.warn(`RelationColumnSetResolver: tier=${t} priority=${s} collision \u2014 selected ${i.uid}; tied losers: ${c}`)}}return i}};qm.RelationColumnSetResolver=Bb});var VC=S(Wm=>{"use strict";Object.defineProperty(Wm,"__esModule",{value:!0});Wm.RelationColumnSetResolver=void 0;var RV=BC();Object.defineProperty(Wm,"RelationColumnSetResolver",{enumerable:!0,get:o(function(){return RV.RelationColumnSetResolver},"get")})});var qC=S(Ef=>{"use strict";Object.defineProperty(Ef,"__esModule",{value:!0});Ef.LayoutSelector=void 0;Ef.selectByPriority=UC;var PV=zs(),Vb=class{static{o(this,"LayoutSelector")}constructor(e){this.source=e}resolve(e){if(!Array.isArray(e)||e.length===0)return null;let t=this.source.all;if(t.length===0)return null;for(let r of e){if(typeof r!="string")continue;let i=PV.WikiLinkHelpers.normalize(r);if(i.length===0)continue;let s=t.filter(a=>a.targetClass===i);if(s.length!==0)return UC(s)}return null}};Ef.LayoutSelector=Vb;function UC(n){if(n.length===0)throw new Error("selectByPriority: expected at least one candidate");return n.length===1?n[0]:[...n].sort((t,r)=>t.priority!==r.priority?r.priority-t.priority:t.uid<r.uid?-1:t.uid>r.uid?1:0)[0]}o(UC,"selectByPriority")});var vs=S(Gm=>{"use strict";Object.defineProperty(Gm,"__esModule",{value:!0});Gm.ErrorCode=void 0;var WC;(function(n){n[n.INVALID_INPUT=1e3]="INVALID_INPUT",n[n.INVALID_FORMAT=1001]="INVALID_FORMAT",n[n.MISSING_REQUIRED_FIELD=1002]="MISSING_REQUIRED_FIELD",n[n.INVALID_SCHEMA=1003]="INVALID_SCHEMA",n[n.NETWORK_ERROR=2e3]="NETWORK_ERROR",n[n.REQUEST_TIMEOUT=2001]="REQUEST_TIMEOUT",n[n.CONNECTION_FAILED=2002]="CONNECTION_FAILED",n[n.FILE_READ_ERROR=2003]="FILE_READ_ERROR",n[n.FILE_WRITE_ERROR=2004]="FILE_WRITE_ERROR",n[n.INVALID_STATE=3e3]="INVALID_STATE",n[n.INVALID_TRANSITION=3001]="INVALID_TRANSITION",n[n.OPERATION_FAILED=3002]="OPERATION_FAILED",n[n.CONCURRENT_MODIFICATION=3003]="CONCURRENT_MODIFICATION",n[n.PERMISSION_DENIED=4e3]="PERMISSION_DENIED",n[n.UNAUTHORIZED=4001]="UNAUTHORIZED",n[n.FORBIDDEN=4003]="FORBIDDEN",n[n.NOT_FOUND=5e3]="NOT_FOUND",n[n.RESOURCE_EXHAUSTED=5001]="RESOURCE_EXHAUSTED",n[n.ALREADY_EXISTS=5002]="ALREADY_EXISTS",n[n.UNKNOWN_ERROR=9e3]="UNKNOWN_ERROR",n[n.INTERNAL_ERROR=9001]="INTERNAL_ERROR"})(WC||(Gm.ErrorCode=WC={}))});var bs=S(zm=>{"use strict";Object.defineProperty(zm,"__esModule",{value:!0});zm.ApplicationError=void 0;var Ub=class extends Error{static{o(this,"ApplicationError")}constructor(e,t){super(e),this.name=this.constructor.name,this.context=t,this.timestamp=new Date,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}format(){let e=`\u274C ${this.name}: ${this.message}`;if(this.guidance&&(e+=`
414
414
 
415
415
  \u{1F4A1} ${this.guidance}`),this.context&&Object.keys(this.context).length>0){e+=`
416
416
 
@@ -454,20 +454,20 @@ To resolve:
454
454
  \u2022 Contact support if the issue persists`}};Zm.ServiceError=Kb});var JC=S(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.ServiceError=nr.ResourceExhaustedError=nr.NotFoundError=nr.PermissionError=nr.StateTransitionError=nr.NetworkError=nr.ValidationError=nr.ApplicationError=nr.ErrorCode=void 0;var GV=vs();Object.defineProperty(nr,"ErrorCode",{enumerable:!0,get:o(function(){return GV.ErrorCode},"get")});var zV=bs();Object.defineProperty(nr,"ApplicationError",{enumerable:!0,get:o(function(){return zV.ApplicationError},"get")});var HV=GC();Object.defineProperty(nr,"ValidationError",{enumerable:!0,get:o(function(){return HV.ValidationError},"get")});var QV=zC();Object.defineProperty(nr,"NetworkError",{enumerable:!0,get:o(function(){return QV.NetworkError},"get")});var KV=HC();Object.defineProperty(nr,"StateTransitionError",{enumerable:!0,get:o(function(){return KV.StateTransitionError},"get")});var YV=QC();Object.defineProperty(nr,"PermissionError",{enumerable:!0,get:o(function(){return YV.PermissionError},"get")});var XV=KC();Object.defineProperty(nr,"NotFoundError",{enumerable:!0,get:o(function(){return XV.NotFoundError},"get")});var JV=YC();Object.defineProperty(nr,"ResourceExhaustedError",{enumerable:!0,get:o(function(){return JV.ResourceExhaustedError},"get")});var ZV=XC();Object.defineProperty(nr,"ServiceError",{enumerable:!0,get:o(function(){return ZV.ServiceError},"get")})});var Xb=S(eg=>{"use strict";Object.defineProperty(eg,"__esModule",{value:!0});eg.ShapeRegistry=void 0;var Yb=class{static{o(this,"ShapeRegistry")}constructor(){this.shapes=new Map}get(e){return this.shapes.get(e)}register(e){this.shapes.set(e.propertyIRI,e)}getAll(){return Array.from(this.shapes.values())}get size(){return this.shapes.size}};eg.ShapeRegistry=Yb});var tw=S(ws=>{"use strict";var eU=ws&&ws.__createBinding||(Object.create?(function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(n,r,i)}):(function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]})),tU=ws&&ws.__setModuleDefault||(Object.create?(function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}):function(n,e){n.default=e}),Jb=ws&&ws.__importStar||(function(){var n=o(function(e){return n=Object.getOwnPropertyNames||function(t){var r=[];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r[r.length]=i);return r},n(e)},"ownKeys");return function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r=n(e),i=0;i<r.length;i++)r[i]!=="default"&&eU(t,e,r[i]);return tU(t,e),t}})();Object.defineProperty(ws,"__esModule",{value:!0});ws.ShapeLoader=void 0;var Zb=Xb(),Rl=Ae(),ZC=Ne(),Un=yr(),tg="http://www.w3.org/ns/shacl#",lle=[["exo__",Un.Namespace.EXO],["ems__",Un.Namespace.EMS],["exocmd__",Un.Namespace.EXOCMD],["ims__",Un.Namespace.IMS],["ztlk__",Un.Namespace.ZTLK],["ptms__",Un.Namespace.PTMS],["lit__",Un.Namespace.LIT],["inbox__",Un.Namespace.INBOX],["pmbok__",Un.Namespace.PMBOK]],ew=class n{static{o(this,"ShapeLoader")}static async loadFromVaultFS(e){let{readdir:t,readFile:r}=await Promise.resolve().then(()=>Jb(require("fs/promises"))),i=await Promise.resolve().then(()=>Jb(require("path"))),s=new Zb.ShapeRegistry;return await n.scanDir(e,s,{readdir:t,readFile:r,path:i}),s}static async loadFromRDFGraph(e){let t=new Zb.ShapeRegistry,r=Un.Namespace.EXO,i=Un.Namespace.RDFS,s=Un.Namespace.RDF,[a,c]=await Promise.all([e.match(void 0,s.term("type"),r.term("ObjectProperty")),e.match(void 0,s.term("type"),r.term("Property"))]),l=new Set;for(let u of[...a,...c])u.subject instanceof Rl.IRI&&l.add(u.subject.value);for(let u of l){let f=new Rl.IRI(u),[d,h,p,y,v]=await Promise.all([e.match(f,i.term("domain"),void 0),e.match(f,i.term("range"),void 0),e.match(f,r.term("Property_cardinality"),void 0),e.match(f,r.term("Property_severity"),void 0),e.match(f,r.term("Asset_label"),void 0)]);if(d.length===0)continue;let w=v[0]?.object;if(!(w instanceof ZC.Literal))continue;let b=n.labelToIRI(w.value);if(!b)continue;let A=d.map(te=>te.object instanceof Rl.IRI?te.object.value:null).filter(te=>te!==null),I=h.map(te=>te.object instanceof Rl.IRI?te.object.value:null).filter(te=>te!==null),j=n.cardinalityFromIRI(p[0]?.object instanceof Rl.IRI?p[0].object.value:void 0),V=n.severityFromValue(y[0]?.object instanceof ZC.Literal||y[0]?.object instanceof Rl.IRI?y[0].object.value:void 0);t.register({propertyIRI:b,domain:A,range:I.length>0?I:void 0,cardinality:j,severity:V})}return t}static async loadFromShapeJSON(e){let{readFile:t}=await Promise.resolve().then(()=>Jb(require("fs/promises"))),r=await t(e,"utf-8"),i=JSON.parse(r),s=new Zb.ShapeRegistry;for(let a of Object.values(i.shapes))s.register(a);return s}static async scanDir(e,t,r){let i;try{i=await r.readdir(e,{withFileTypes:!0})}catch{return}for(let s of i){let a=r.path.join(e,s.name);s.isDirectory()?await n.scanDir(a,t,r):s.isFile()&&s.name.endsWith(".md")&&await n.processFile(a,t,r.readFile)}}static async processFile(e,t,r){let i;try{i=await r(e,"utf-8")}catch{return}let s=n.parseFrontmatter(i);if(!s||!n.asArray(s.exo__Instance_class).some(I=>{let j=n.extractWikilinkRef(I);return j==="exo__Property"||j==="exo__ObjectProperty"||j?.includes("|exo__Property")||j?.includes("|exo__ObjectProperty")}))return;let l=s.exo__Asset_label;if(!l||typeof l!="string")return;let u=l.trim(),f=n.labelToIRI(u);if(!f)return;let d=s.exo__Property_domain,h=s.exo__Property_range,p=s.exo__Property_cardinality,y=s.exo__Property_severity,v=n.asArray(d).map(I=>n.wikilinkToIRI(I)).filter(I=>I!==null);if(v.length===0)return;let w=n.asArray(h).map(I=>n.wikilinkToIRI(I)).filter(I=>I!==null),b=n.cardinalityFromLabel(typeof p=="string"?p:void 0),A=n.severityFromValue(typeof y=="string"?y:void 0);t.register({propertyIRI:f,domain:v,range:w.length>0?w:void 0,cardinality:b,severity:A})}static parseFrontmatter(e){let t=/^---\r?\n([\s\S]*?)\r?\n---/.exec(e);if(!t)return null;let r=t[1],i={},s=r.split(/\r?\n/),a=null,c=null;for(let l of s){let u=/^ {2}- (.*)$/.exec(l);if(u){a&&c&&c.push(u[1].trim());continue}a&&c&&(i[a]=c,a=null,c=null);let f=/^([^:]+):\s*(.*)$/.exec(l);if(!f)continue;let d=f[1].trim(),h=f[2].trim();h===""?(a=d,c=[]):i[d]=h}return a&&c&&(i[a]=c),i}static labelToIRI(e){let t=Un.Namespace.fromPropertyKey(e);return t?t.namespace.term(t.localName).value:null}static extractWikilinkRef(e){let t=e.replace(/^["']|["']$/g,""),r=/\[\[([^\]]+)\]\]/.exec(t);return r?r[1]:t}static wikilinkToIRI(e){let t=n.extractWikilinkRef(e);if(!t)return null;let r=t.split("|"),i=r.length>1?[r[1],r[0]]:[r[0]];for(let s of i){let a=n.labelToIRI(s.trim());if(a)return a}return t.startsWith("http")?t:t.startsWith("sh:")?tg+t.substring(3):null}static asArray(e){return Array.isArray(e)?e.map(String):typeof e=="string"?[e]:[]}static cardinalityFromIRI(e){if(e){if(e.endsWith("PropertyCardinalitySingle"))return"Single";if(e.endsWith("PropertyCardinalityMultiple"))return"Multiple"}}static cardinalityFromLabel(e){if(!e)return;let t=n.extractWikilinkRef(e)??e,r=t.split("|").pop()??t;if(r.includes("Single"))return"Single";if(r.includes("Multiple"))return"Multiple"}static severityFromValue(e){return!e||e.includes("Violation")||e===tg+"Violation"?"sh:Violation":e.includes("Warning")||e===tg+"Warning"?"sh:Warning":e.includes("Info")||e===tg+"Info"?"sh:Info":"sh:Violation"}};ws.ShapeLoader=ew});var nw=S(Tf=>{"use strict";Object.defineProperty(Tf,"__esModule",{value:!0});Tf.ShapeRegistry=void 0;Tf.validate=rU;var rw=class{static{o(this,"ShapeRegistry")}constructor(e=[],t="https://exocortex.my/ontology/exo#Instance_class"){this.shapeMap=new Map(e.map(r=>[r.propertyIRI,r])),this.typePredicateIRI=t}getShape(e){return this.shapeMap.get(e)}getAllShapes(){return Array.from(this.shapeMap.values())}hasShape(e){return this.shapeMap.has(e)}};Tf.ShapeRegistry=rw;function rU(n,e,t,r){let i=new Map,s=new Map;for(let l of n){let{subject:u,predicate:f,object:d}=l;if(u.type!=="iri"||f.type!=="iri"||d.type!=="iri"&&d.type!=="literal")continue;let h=u.value,p=f.value,y=d;if(p===e.typePredicateIRI){if(y.type==="iri"){let v=i.get(h)??[];v.push(y.value),i.set(h,v)}}else{let v=s.get(h);v||(v=new Map,s.set(h,v));let w=v.get(p)??[];w.push(y),v.set(p,w)}}let a=[],c=new Set([...i.keys(),...s.keys()]);for(let l of c){let u=i.get(l)??[],f=s.get(l)??new Map;for(let d of e.getAllShapes()){if(!(d.domain.length===0||d.domain.some(y=>u.some(v=>v===y||t.isSubClassOf(v,y)))))continue;let p=f.get(d.propertyIRI)??[];if(d.minCount!==void 0&&d.minCount>0&&p.length<d.minCount){a.push({focusNode:l,propertyPath:d.propertyIRI,severity:d.severity,message:d.message??`sh:minCount violation: expected at least ${d.minCount} value(s) for <${d.propertyIRI}>`});continue}if(p.length!==0){if(d.cardinality==="Single"&&p.length>1){a.push({focusNode:l,propertyPath:d.propertyIRI,severity:d.severity,message:d.message??`sh:maxCount violation: expected at most 1 value for <${d.propertyIRI}>, got ${p.length}`});continue}if(d.range&&d.range.length>0){for(let y of p)if(y.type==="iri"){let v=i.get(y.value)??[];d.range.some(b=>v.some(A=>A===b||t.isSubClassOf(A,b)))||a.push({focusNode:l,propertyPath:d.propertyIRI,severity:d.severity,message:d.message??`sh:class violation: <${y.value}> does not conform to expected class ${d.range.join(" | ")}`,actualValue:y.value,expectedRange:d.range.join(" | ")})}else if(y.type==="literal"){let v=y.datatype??"http://www.w3.org/2001/XMLSchema#string";d.range.some(b=>b===v)||a.push({focusNode:l,propertyPath:d.propertyIRI,severity:d.severity,message:d.message??`sh:datatype violation: literal "${y.value}" has datatype <${v}>, expected ${d.range.join(" | ")}`,actualValue:y.value,expectedRange:d.range.join(" | ")})}}}}}if(r?.closedWorldMode)for(let l of c){let u=s.get(l)??new Map;for(let f of u.keys())e.hasShape(f)||a.push({focusNode:l,propertyPath:f,severity:"sh:Warning",message:`Unknown property: <${f}> has no registered shape`})}return a.sort((l,u)=>{let f=l.focusNode.localeCompare(u.focusNode);return f!==0?f:l.propertyPath.localeCompare(u.propertyPath)}),{conforms:!a.some(l=>l.severity==="sh:Violation"),violations:a}}o(rU,"validate")});var eI=S(rg=>{"use strict";Object.defineProperty(rg,"__esModule",{value:!0});rg.ApplicationErrorHandler=void 0;var iw=bs(),nU=vs(),iU=$a(),sw=class{static{o(this,"ApplicationErrorHandler")}constructor(e={},t,r){this.logger=t,this.notifier=r,this.telemetryHooks=new Set,this.retryConfig={maxRetries:e.maxRetries??3,initialDelayMs:e.initialDelayMs??1e3,backoffMultiplier:e.backoffMultiplier??2,maxDelayMs:e.maxDelayMs??1e4}}handle(e,t){let r=this.ensureApplicationError(e,t);return this.notifier&&this.notifier.error(r.message),this.callTelemetryHooks("onError",r,t),this.formatError(r)}async executeWithRetry(e,t){let r,i=0;for(;i<=this.retryConfig.maxRetries;)try{return await e()}catch(s){if(r=this.ensureApplicationError(s,t),!r.retriable||i>=this.retryConfig.maxRetries)throw this.callTelemetryHooks("onError",r,t),i>=this.retryConfig.maxRetries&&r.retriable&&this.callTelemetryHooks("onRetryExhausted",r,i+1),r;let a=this.calculateDelay(i);this.callTelemetryHooks("onRetry",r,i+1,a),this.logger?.debug(`Retrying after ${a}ms (attempt ${i+1}/${this.retryConfig.maxRetries})`),await this.sleep(a),i++}throw r}registerTelemetryHook(e){this.telemetryHooks.add(e)}unregisterTelemetryHook(e){this.telemetryHooks.delete(e)}ensureApplicationError(e,t){if(e instanceof iw.ApplicationError){if(t){let i=e,s={...e.context,...t};return new class extends iw.ApplicationError{constructor(){super(...arguments),this.code=i.code,this.retriable=i.retriable,this.guidance=i.guidance}}(e.message,s)}return e}return new class extends iw.ApplicationError{static{o(this,"UnknownError")}constructor(s,a){super(s,{originalError:a.name,...t}),this.code=nU.ErrorCode.UNKNOWN_ERROR,this.retriable=!1,this.guidance="An unexpected error occurred"}}(e.message,e)}formatError(e){let t=[];return t.push(`\u274C ${e.name}: ${e.message}`),e.guidance&&t.push(`\u{1F4A1} ${e.guidance}`),e.context&&Object.keys(e.context).length>0&&t.push(`Context: ${JSON.stringify(e.context,null,2)}`),t.join(`
455
455
  `)}calculateDelay(e){let t=this.retryConfig.initialDelayMs*Math.pow(this.retryConfig.backoffMultiplier,e);return Math.min(t,this.retryConfig.maxDelayMs)}sleep(e){return new Promise(t=>setTimeout(t,e))}callTelemetryHooks(e,...t){for(let r of this.telemetryHooks)try{let i=r[e];i&&i.apply(r,t)}catch(i){iU.LoggingService.error("Error in telemetry hook",i instanceof Error?i:new Error(String(i)))}}};rg.ApplicationErrorHandler=sw});var tI=S(ng=>{"use strict";Object.defineProperty(ng,"__esModule",{value:!0});ng.ApplicationErrorHandler=void 0;var sU=eI();Object.defineProperty(ng,"ApplicationErrorHandler",{enumerable:!0,get:o(function(){return sU.ApplicationErrorHandler},"get")})});var ow=S(ig=>{"use strict";Object.defineProperty(ig,"__esModule",{value:!0});ig.ClassHierarchy=void 0;var aU="http://www.w3.org/2000/01/rdf-schema#subClassOf",aw=class{static{o(this,"ClassHierarchy")}constructor(e){this.adjacency=new Map;for(let t of e){if(t.predicate.type!=="iri"||t.predicate.value!==aU||t.subject.type!=="iri"||t.object.type!=="iri")continue;let r=t.subject.value,i=t.object.value,s=this.adjacency.get(r);s||(s=new Set,this.adjacency.set(r,s)),s.add(i)}}isSubClassOf(e,t){if(e===t)return!0;let r=new Set,i=[e];for(;i.length>0;){let s=i.shift();if(s===void 0)break;if(r.has(s))continue;r.add(s);let a=this.adjacency.get(s);if(a)for(let c of a){if(c===t)return!0;r.has(c)||i.push(c)}}return!1}getAncestors(e){let t=new Set,r=new Set,i=[e];for(;i.length>0;){let s=i.shift();if(s===void 0)break;if(r.has(s))continue;r.add(s);let a=this.adjacency.get(s);if(a)for(let c of a)t.add(c),r.has(c)||i.push(c)}return t}};ig.ClassHierarchy=aw});var nI=S(Es=>{"use strict";Object.defineProperty(Es,"__esModule",{value:!0});Es.ValidatorDaemon=Es.IDLE_TIMEOUT_MS=Es.DEFAULT_SOCKET_PATH=void 0;var rI=nw(),oU=tw(),cU=ow();Es.DEFAULT_SOCKET_PATH=`${process.env.HOME??process.env.USERPROFILE??"/tmp"}/.cache/exocortex/validator.sock`;Es.IDLE_TIMEOUT_MS=300*1e3;var cw=class{static{o(this,"ValidatorDaemon")}constructor(e=Es.DEFAULT_SOCKET_PATH,t=Es.IDLE_TIMEOUT_MS){this.registryCache=new Map,this.server=null,this.idleTimer=null,this.socketPath=e,this.idleTimeoutMs=t}async start(){let e=require("net"),t=require("fs/promises"),r=require("path");await t.mkdir(r.dirname(this.socketPath),{recursive:!0});try{await t.unlink(this.socketPath)}catch{}this.server=e.createServer(a=>{this.handleConnection(a)});let i=this.server;await new Promise((a,c)=>{i.on("error",c),i.listen(this.socketPath,a)}),this.resetIdleTimer();let s=o(()=>{this.stop()},"handleSignal");process.once("SIGTERM",s),process.once("SIGINT",s)}async stop(){if(this.idleTimer!==null&&(clearTimeout(this.idleTimer),this.idleTimer=null),!this.server)return;let e=this.server;this.server=null,await new Promise(t=>{e.close(()=>t())})}resetIdleTimer(){this.idleTimer!==null&&clearTimeout(this.idleTimer),this.idleTimer=setTimeout(()=>{process.exit(0)},this.idleTimeoutMs)}handleConnection(e){let t="";e.setEncoding("utf-8"),e.on("data",r=>{t+=r;let i=t.split(`
456
456
  `);t=i.pop()??"";for(let s of i){let a=s.trim();a&&this.handleRequest(a,e)}}),e.on("error",()=>{e.destroy()})}async handleRequest(e,t){this.resetIdleTimer();let r;try{let i=JSON.parse(e),s=await this.getRegistry(i.registryPath),a=new cU.ClassHierarchy(i.subclassTriples??[]);r={report:(0,rI.validate)(i.triples,s,a,{closedWorldMode:i.closedWorldMode})}}catch(i){r={error:i instanceof Error?i.message:String(i)}}t.destroyed||t.write(JSON.stringify(r)+`
457
- `)}async getRegistry(e){let t=this.registryCache.get(e);if(t)return t;let r=await oU.ShapeLoader.loadFromShapeJSON(e),i=new rI.ShapeRegistry(r.getAll());return this.registryCache.set(e,i),i}};Es.ValidatorDaemon=cw});var Dt=S(m=>{"use strict";var lU=m&&m.__createBinding||(Object.create?(function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(n,r,i)}):(function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]})),ii=m&&m.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&lU(e,n,t)};Object.defineProperty(m,"__esModule",{value:!0});m.RenameToUidService=m.PropertyCleanupService=m.LoggingService=m.LabelToAliasService=m.FolderRepairService=m.EffortVotingService=m.WorkflowCommandAdapter=m.VisibilityGenerator=m.InstantiationRuleResolver=m.WorkflowResolver=m.WorkflowEngine=m.EffortStatusWorkflow=m.ConceptCreationService=m.ClassCreationService=m.AreaHierarchyBuilder=m.AreaCreationService=m.TaskStatusService=m.ServiceRegistry=m.GroundingExecutor=m.PreconditionEvaluator=m.CommandResolver=m.extractPropertyLabel=m.uriToPropertyName=m.propertyNameToUri=m.rangeToFieldType=m.PropertyFieldType=m.isCommandBindingFrontmatter=m.isGroundingFrontmatter=m.isPreconditionFrontmatter=m.isCommandFrontmatter=m.isStyleSource=m.isLabelClass=m.isCommandVariant=m.STYLE_SOURCE_VALUES=m.LABEL_CLASS_VALUES=m.COMMAND_VARIANT_VALUES=m.CommandBindingStyleProperty=m.CommandBindingProperty=m.GroundingProperty=m.PreconditionProperty=m.CommandProperty=m.GroundingType=m.getEffortStatusLabel=m.isTrashedStatus=m.isDoneStatus=m.normalizeEffortStatus=m.EFFORT_STATUS_OPTIONS=m.STATUS_NAME_TO_WIKILINK=m.STATUS_NAME_TO_ENUM=m.EFFORT_STATUS_CONFIG=void 0;m.InMemoryTripleStore=m.OBSIDIAN_VAULT_SCHEME=m.vaultPathToIRI=m.NullLogger=m.RDFSerializer=m.FilenameValidator=m.EffortSortingHelpers=m.MetadataExtractor=m.MetadataHelpers=m.WikiLinkHelpers=m.DateFormatter=m.FrontmatterService=m.CriticalityZoneUUIDs=m.CriticalityZoneService=m.DailyReviewService=m.DEFAULT_AUTOCOMPLETE_CONFIG=m.AutocompleteService=m.TrendDetectionService=m.AnalyticsService=m.getTemplateByName=m.validateParameters=m.fillTemplate=m.findMatchingTemplates=m.findClassByTerm=m.KNOWN_CLASSES=m.KNOWN_PROTOTYPES=m.EFFORT_STATUSES=m.ASSET_CLASSES=m.PREDICATES=m.SPARQL_PREFIXES=m.SPARQL_TEMPLATES=m.DEFAULT_NL_TO_SPARQL_CONFIG=m.NLToSPARQLService=m.TypeRegistry=m.GraphQueryService=m.FixMissingLabelService=m.ArchiveAssetService=m.GenericAssetCreationService=m.URIConstructionService=m.SessionEventService=m.AssetConversionService=m.EnumValueResolver=m.ClassHierarchyResolver=m.PropertySchemaResolver=m.PlanningService=m.AlgorithmExtractor=m.DynamicFrontmatterGenerator=m.FleetingNoteCreationService=m.SupervisionCreationService=m.StatusTimestampService=void 0;m.createSPARQLResultCache=m.SPARQLResultCache=m.QueryPlanCache=m.createDoubleLiteral=m.createDecimalLiteral=m.getNumericValue=m.createPercentileAggregate=m.modeAggregate=m.stddevAggregate=m.varianceAggregate=m.medianAggregate=m.EXO_AGGREGATE_NS=m.BUILT_IN_AGGREGATES=m.CustomAggregateError=m.CustomAggregateRegistry=m.AggregateFunctions=m.BuiltInFunctions=m.SolutionMapping=m.UpdateExecutorError=m.UpdateExecutor=m.QueryExecutor=m.ExoQLQueryExecutor=m.DescribeExecutor=m.ConstructExecutor=m.UnionExecutor=m.OptionalExecutor=m.FilterExecutor=m.BGPExecutor=m.AlgebraSerializer=m.AlgebraOptimizer=m.AlgebraTranslator=m.ExoQLAlgebraTranslator=m.DescribeOptionsTransformerError=m.DescribeOptionsTransformer=m.SPARQLParseError=m.SPARQLParser=m.ExoQLParser=m.NoteToRDFConverter=m.SOURCE_VARIABLE=m.SourceAnnotator=m.INFERRED_GRAPH=m.PrototypeChainMaterializer=m.PropertyCardinalityRegistry=m.NonInheritablePropertyRegistry=m.RDFSInferenceEngine=m.RDFVocabularyMapper=m.DomainTriple=m.DomainBlankNode=m.DomainLiteral=m.DomainIRI=void 0;m.createLayoutBlockFromFrontmatter=m.PROPERTIES_BLOCK_CLASS_UID=m.PROPERTIES_BLOCK_CLASS_IRI=m.BACKLINKS_TABLE_BLOCK_CLASS_UID=m.BACKLINKS_TABLE_BLOCK_CLASS_IRI=m.isLayoutFrontmatter=m.isLayout=m.createLayoutFromFrontmatter=m.LAYOUT_CLASS_UID=m.LAYOUT_CLASS_IRI=m.RelationColumnSetResolver=m.normalizeRelationColumnSetRef=m.isRelationColumnSetFrontmatter=m.isRelationColumnSet=m.createRelationColumnSetFromFrontmatter=m.RELATION_COLUMN_SET_CLASS_UID=m.RELATION_COLUMN_SET_CLASS_IRI=m.ExoQLError=m.ExoQL=m.createStreamingSource=m.StreamingLoader=m.resetGlobalPool=m.getGlobalPool=m.MemoryPool=m.CompactGraphStore=m.StringTable=m.DEFAULT_COLORS=m.NODE_FLAGS=m.container=m.resetContainer=m.getContainer=m.createChildContainer=m.registerCoreServices=m.DI_TOKENS=m.DEFAULT_FLEETING_NOTE_CLASS_UID=m.DEFAULT_INBOX_FOLDER=m.DEFAULT_OWNER_IDENTITY=m.VaultSettings=m.TransactionError=m.TripleNotFoundError=m.TripleAlreadyExistsError=m.FileAlreadyExistsError=m.FileNotFoundError=m.FilterContainsOptimizer=m.VaultPrefixTransformer=m.CaseWhenTransformerError=m.CaseWhenTransformer=m.ResultSerializer=m.createIncrementalIndexer=m.IncrementalIndexer=void 0;m.TripleClassHierarchy=m.IDLE_TIMEOUT_MS=m.DEFAULT_SOCKET_PATH=m.ValidatorDaemon=m.ShaclShapeRegistry=m.shaclValidate=m.ShapeRegistry=m.ShapeLoader=m.selectByPriority=m.LayoutSelector=m.isPropertiesBlock=m.isLayoutBlockFrontmatter=m.isBacklinksTableBlock=void 0;ii(Fu(),m);ii(Ec(),m);var Ha=y0();Object.defineProperty(m,"EFFORT_STATUS_CONFIG",{enumerable:!0,get:o(function(){return Ha.EFFORT_STATUS_CONFIG},"get")});Object.defineProperty(m,"STATUS_NAME_TO_ENUM",{enumerable:!0,get:o(function(){return Ha.STATUS_NAME_TO_ENUM},"get")});Object.defineProperty(m,"STATUS_NAME_TO_WIKILINK",{enumerable:!0,get:o(function(){return Ha.STATUS_NAME_TO_WIKILINK},"get")});Object.defineProperty(m,"EFFORT_STATUS_OPTIONS",{enumerable:!0,get:o(function(){return Ha.EFFORT_STATUS_OPTIONS},"get")});Object.defineProperty(m,"normalizeEffortStatus",{enumerable:!0,get:o(function(){return Ha.normalizeEffortStatus},"get")});Object.defineProperty(m,"isDoneStatus",{enumerable:!0,get:o(function(){return Ha.isDoneStatus},"get")});Object.defineProperty(m,"isTrashedStatus",{enumerable:!0,get:o(function(){return Ha.isTrashedStatus},"get")});Object.defineProperty(m,"getEffortStatusLabel",{enumerable:!0,get:o(function(){return Ha.getEffortStatusLabel},"get")});var uU=Tc();Object.defineProperty(m,"GroundingType",{enumerable:!0,get:o(function(){return uU.GroundingType},"get")});var Af=_0();Object.defineProperty(m,"CommandProperty",{enumerable:!0,get:o(function(){return Af.CommandProperty},"get")});Object.defineProperty(m,"PreconditionProperty",{enumerable:!0,get:o(function(){return Af.PreconditionProperty},"get")});Object.defineProperty(m,"GroundingProperty",{enumerable:!0,get:o(function(){return Af.GroundingProperty},"get")});Object.defineProperty(m,"CommandBindingProperty",{enumerable:!0,get:o(function(){return Af.CommandBindingProperty},"get")});Object.defineProperty(m,"CommandBindingStyleProperty",{enumerable:!0,get:o(function(){return Af.CommandBindingStyleProperty},"get")});var Pl=S0();Object.defineProperty(m,"COMMAND_VARIANT_VALUES",{enumerable:!0,get:o(function(){return Pl.COMMAND_VARIANT_VALUES},"get")});Object.defineProperty(m,"LABEL_CLASS_VALUES",{enumerable:!0,get:o(function(){return Pl.LABEL_CLASS_VALUES},"get")});Object.defineProperty(m,"STYLE_SOURCE_VALUES",{enumerable:!0,get:o(function(){return Pl.STYLE_SOURCE_VALUES},"get")});Object.defineProperty(m,"isCommandVariant",{enumerable:!0,get:o(function(){return Pl.isCommandVariant},"get")});Object.defineProperty(m,"isLabelClass",{enumerable:!0,get:o(function(){return Pl.isLabelClass},"get")});Object.defineProperty(m,"isStyleSource",{enumerable:!0,get:o(function(){return Pl.isStyleSource},"get")});var sg=gT();Object.defineProperty(m,"isCommandFrontmatter",{enumerable:!0,get:o(function(){return sg.isCommandFrontmatter},"get")});Object.defineProperty(m,"isPreconditionFrontmatter",{enumerable:!0,get:o(function(){return sg.isPreconditionFrontmatter},"get")});Object.defineProperty(m,"isGroundingFrontmatter",{enumerable:!0,get:o(function(){return sg.isGroundingFrontmatter},"get")});Object.defineProperty(m,"isCommandBindingFrontmatter",{enumerable:!0,get:o(function(){return sg.isCommandBindingFrontmatter},"get")});ii(yT(),m);ii(_T(),m);ii(v0(),m);ii(b0(),m);ii(vT(),m);ii(ET(),m);ii(r_(),m);ii(fA(),m);var iI=Ch();Object.defineProperty(m,"PropertyFieldType",{enumerable:!0,get:o(function(){return iI.PropertyFieldType},"get")});Object.defineProperty(m,"rangeToFieldType",{enumerable:!0,get:o(function(){return iI.rangeToFieldType},"get")});var lw=a_();Object.defineProperty(m,"propertyNameToUri",{enumerable:!0,get:o(function(){return lw.propertyNameToUri},"get")});Object.defineProperty(m,"uriToPropertyName",{enumerable:!0,get:o(function(){return lw.uriToPropertyName},"get")});Object.defineProperty(m,"extractPropertyLabel",{enumerable:!0,get:o(function(){return lw.extractPropertyLabel},"get")});var fU=Bx();Object.defineProperty(m,"CommandResolver",{enumerable:!0,get:o(function(){return fU.CommandResolver},"get")});var dU=Ux();Object.defineProperty(m,"PreconditionEvaluator",{enumerable:!0,get:o(function(){return dU.PreconditionEvaluator},"get")});var sI=Wx();Object.defineProperty(m,"GroundingExecutor",{enumerable:!0,get:o(function(){return sI.GroundingExecutor},"get")});Object.defineProperty(m,"ServiceRegistry",{enumerable:!0,get:o(function(){return sI.ServiceRegistry},"get")});var hU=RS();Object.defineProperty(m,"TaskStatusService",{enumerable:!0,get:o(function(){return hU.TaskStatusService},"get")});var pU=DS();Object.defineProperty(m,"AreaCreationService",{enumerable:!0,get:o(function(){return pU.AreaCreationService},"get")});var mU=LS();Object.defineProperty(m,"AreaHierarchyBuilder",{enumerable:!0,get:o(function(){return mU.AreaHierarchyBuilder},"get")});var gU=MS();Object.defineProperty(m,"ClassCreationService",{enumerable:!0,get:o(function(){return gU.ClassCreationService},"get")});var yU=$S();Object.defineProperty(m,"ConceptCreationService",{enumerable:!0,get:o(function(){return yU.ConceptCreationService},"get")});var _U=sm();Object.defineProperty(m,"EffortStatusWorkflow",{enumerable:!0,get:o(function(){return _U.EffortStatusWorkflow},"get")});var SU=lf();Object.defineProperty(m,"WorkflowEngine",{enumerable:!0,get:o(function(){return SU.WorkflowEngine},"get")});var vU=yS();Object.defineProperty(m,"WorkflowResolver",{enumerable:!0,get:o(function(){return vU.WorkflowResolver},"get")});var bU=i3();Object.defineProperty(m,"InstantiationRuleResolver",{enumerable:!0,get:o(function(){return bU.InstantiationRuleResolver},"get")});var wU=s3();Object.defineProperty(m,"VisibilityGenerator",{enumerable:!0,get:o(function(){return wU.VisibilityGenerator},"get")});var EU=a3();Object.defineProperty(m,"WorkflowCommandAdapter",{enumerable:!0,get:o(function(){return EU.WorkflowCommandAdapter},"get")});var TU=zS();Object.defineProperty(m,"EffortVotingService",{enumerable:!0,get:o(function(){return TU.EffortVotingService},"get")});var AU=QS();Object.defineProperty(m,"FolderRepairService",{enumerable:!0,get:o(function(){return AU.FolderRepairService},"get")});var xU=YS();Object.defineProperty(m,"LabelToAliasService",{enumerable:!0,get:o(function(){return xU.LabelToAliasService},"get")});var CU=$a();Object.defineProperty(m,"LoggingService",{enumerable:!0,get:o(function(){return CU.LoggingService},"get")});var IU=ZS();Object.defineProperty(m,"PropertyCleanupService",{enumerable:!0,get:o(function(){return IU.PropertyCleanupService},"get")});var RU=tv();Object.defineProperty(m,"RenameToUidService",{enumerable:!0,get:o(function(){return RU.RenameToUidService},"get")});var PU=om();Object.defineProperty(m,"StatusTimestampService",{enumerable:!0,get:o(function(){return PU.StatusTimestampService},"get")});var OU=iv();Object.defineProperty(m,"SupervisionCreationService",{enumerable:!0,get:o(function(){return OU.SupervisionCreationService},"get")});var FU=ov();Object.defineProperty(m,"FleetingNoteCreationService",{enumerable:!0,get:o(function(){return FU.FleetingNoteCreationService},"get")});var DU=lv();Object.defineProperty(m,"DynamicFrontmatterGenerator",{enumerable:!0,get:o(function(){return DU.DynamicFrontmatterGenerator},"get")});var NU=fv();Object.defineProperty(m,"AlgorithmExtractor",{enumerable:!0,get:o(function(){return NU.AlgorithmExtractor},"get")});var LU=hv();Object.defineProperty(m,"PlanningService",{enumerable:!0,get:o(function(){return LU.PlanningService},"get")});var kU=S3();Object.defineProperty(m,"PropertySchemaResolver",{enumerable:!0,get:o(function(){return kU.PropertySchemaResolver},"get")});var MU=v3();Object.defineProperty(m,"ClassHierarchyResolver",{enumerable:!0,get:o(function(){return MU.ClassHierarchyResolver},"get")});var jU=b3();Object.defineProperty(m,"EnumValueResolver",{enumerable:!0,get:o(function(){return jU.EnumValueResolver},"get")});var $U=_v();Object.defineProperty(m,"AssetConversionService",{enumerable:!0,get:o(function(){return $U.AssetConversionService},"get")});var BU=bv();Object.defineProperty(m,"SessionEventService",{enumerable:!0,get:o(function(){return BU.SessionEventService},"get")});var VU=Tv();Object.defineProperty(m,"URIConstructionService",{enumerable:!0,get:o(function(){return VU.URIConstructionService},"get")});var UU=xv();Object.defineProperty(m,"GenericAssetCreationService",{enumerable:!0,get:o(function(){return UU.GenericAssetCreationService},"get")});var qU=O3();Object.defineProperty(m,"ArchiveAssetService",{enumerable:!0,get:o(function(){return qU.ArchiveAssetService},"get")});var WU=D3();Object.defineProperty(m,"FixMissingLabelService",{enumerable:!0,get:o(function(){return WU.FixMissingLabelService},"get")});var GU=N3();Object.defineProperty(m,"GraphQueryService",{enumerable:!0,get:o(function(){return GU.GraphQueryService},"get")});var zU=k3();Object.defineProperty(m,"TypeRegistry",{enumerable:!0,get:o(function(){return zU.TypeRegistry},"get")});var aI=M3();Object.defineProperty(m,"NLToSPARQLService",{enumerable:!0,get:o(function(){return aI.NLToSPARQLService},"get")});Object.defineProperty(m,"DEFAULT_NL_TO_SPARQL_CONFIG",{enumerable:!0,get:o(function(){return aI.DEFAULT_NL_TO_SPARQL_CONFIG},"get")});var si=Ov();Object.defineProperty(m,"SPARQL_TEMPLATES",{enumerable:!0,get:o(function(){return si.SPARQL_TEMPLATES},"get")});Object.defineProperty(m,"SPARQL_PREFIXES",{enumerable:!0,get:o(function(){return si.SPARQL_PREFIXES},"get")});Object.defineProperty(m,"PREDICATES",{enumerable:!0,get:o(function(){return si.PREDICATES},"get")});Object.defineProperty(m,"ASSET_CLASSES",{enumerable:!0,get:o(function(){return si.ASSET_CLASSES},"get")});Object.defineProperty(m,"EFFORT_STATUSES",{enumerable:!0,get:o(function(){return si.EFFORT_STATUSES},"get")});Object.defineProperty(m,"KNOWN_PROTOTYPES",{enumerable:!0,get:o(function(){return si.KNOWN_PROTOTYPES},"get")});Object.defineProperty(m,"KNOWN_CLASSES",{enumerable:!0,get:o(function(){return si.KNOWN_CLASSES},"get")});Object.defineProperty(m,"findClassByTerm",{enumerable:!0,get:o(function(){return si.findClassByTerm},"get")});Object.defineProperty(m,"findMatchingTemplates",{enumerable:!0,get:o(function(){return si.findMatchingTemplates},"get")});Object.defineProperty(m,"fillTemplate",{enumerable:!0,get:o(function(){return si.fillTemplate},"get")});Object.defineProperty(m,"validateParameters",{enumerable:!0,get:o(function(){return si.validateParameters},"get")});Object.defineProperty(m,"getTemplateByName",{enumerable:!0,get:o(function(){return si.getTemplateByName},"get")});var HU=$3();Object.defineProperty(m,"AnalyticsService",{enumerable:!0,get:o(function(){return HU.AnalyticsService},"get")});var QU=B3();Object.defineProperty(m,"TrendDetectionService",{enumerable:!0,get:o(function(){return QU.TrendDetectionService},"get")});var oI=U3();Object.defineProperty(m,"AutocompleteService",{enumerable:!0,get:o(function(){return oI.AutocompleteService},"get")});Object.defineProperty(m,"DEFAULT_AUTOCOMPLETE_CONFIG",{enumerable:!0,get:o(function(){return oI.DEFAULT_AUTOCOMPLETE_CONFIG},"get")});var KU=W3();Object.defineProperty(m,"DailyReviewService",{enumerable:!0,get:o(function(){return KU.DailyReviewService},"get")});var cI=jv();Object.defineProperty(m,"CriticalityZoneService",{enumerable:!0,get:o(function(){return cI.CriticalityZoneService},"get")});Object.defineProperty(m,"CriticalityZoneUUIDs",{enumerable:!0,get:o(function(){return cI.CriticalityZoneUUIDs},"get")});var YU=ei();Object.defineProperty(m,"FrontmatterService",{enumerable:!0,get:o(function(){return YU.FrontmatterService},"get")});var XU=Hr();Object.defineProperty(m,"DateFormatter",{enumerable:!0,get:o(function(){return XU.DateFormatter},"get")});var JU=zs();Object.defineProperty(m,"WikiLinkHelpers",{enumerable:!0,get:o(function(){return JU.WikiLinkHelpers},"get")});var ZU=ms();Object.defineProperty(m,"MetadataHelpers",{enumerable:!0,get:o(function(){return ZU.MetadataHelpers},"get")});var eq=OS();Object.defineProperty(m,"MetadataExtractor",{enumerable:!0,get:o(function(){return eq.MetadataExtractor},"get")});var tq=z3();Object.defineProperty(m,"EffortSortingHelpers",{enumerable:!0,get:o(function(){return tq.EffortSortingHelpers},"get")});var rq=H3();Object.defineProperty(m,"FilenameValidator",{enumerable:!0,get:o(function(){return rq.FilenameValidator},"get")});var nq=eC();Object.defineProperty(m,"RDFSerializer",{enumerable:!0,get:o(function(){return nq.RDFSerializer},"get")});var iq=Pc();Object.defineProperty(m,"NullLogger",{enumerable:!0,get:o(function(){return iq.NullLogger},"get")});var lI=Yv();Object.defineProperty(m,"vaultPathToIRI",{enumerable:!0,get:o(function(){return lI.vaultPathToIRI},"get")});Object.defineProperty(m,"OBSIDIAN_VAULT_SCHEME",{enumerable:!0,get:o(function(){return lI.OBSIDIAN_VAULT_SCHEME},"get")});var sq=AS();Object.defineProperty(m,"InMemoryTripleStore",{enumerable:!0,get:o(function(){return sq.InMemoryTripleStore},"get")});var aq=Ae();Object.defineProperty(m,"DomainIRI",{enumerable:!0,get:o(function(){return aq.IRI},"get")});var oq=Ne();Object.defineProperty(m,"DomainLiteral",{enumerable:!0,get:o(function(){return oq.Literal},"get")});var cq=qt();Object.defineProperty(m,"DomainBlankNode",{enumerable:!0,get:o(function(){return cq.BlankNode},"get")});var lq=Yn();Object.defineProperty(m,"DomainTriple",{enumerable:!0,get:o(function(){return lq.Triple},"get")});var uq=Jv();Object.defineProperty(m,"RDFVocabularyMapper",{enumerable:!0,get:o(function(){return uq.RDFVocabularyMapper},"get")});var fq=rC();Object.defineProperty(m,"RDFSInferenceEngine",{enumerable:!0,get:o(function(){return fq.RDFSInferenceEngine},"get")});var dq=rb();Object.defineProperty(m,"NonInheritablePropertyRegistry",{enumerable:!0,get:o(function(){return dq.NonInheritablePropertyRegistry},"get")});var hq=sb();Object.defineProperty(m,"PropertyCardinalityRegistry",{enumerable:!0,get:o(function(){return hq.PropertyCardinalityRegistry},"get")});var uI=cb();Object.defineProperty(m,"PrototypeChainMaterializer",{enumerable:!0,get:o(function(){return uI.PrototypeChainMaterializer},"get")});Object.defineProperty(m,"INFERRED_GRAPH",{enumerable:!0,get:o(function(){return uI.INFERRED_GRAPH},"get")});var fI=ub();Object.defineProperty(m,"SourceAnnotator",{enumerable:!0,get:o(function(){return fI.SourceAnnotator},"get")});Object.defineProperty(m,"SOURCE_VARIABLE",{enumerable:!0,get:o(function(){return fI.SOURCE_VARIABLE},"get")});var pq=db();Object.defineProperty(m,"NoteToRDFConverter",{enumerable:!0,get:o(function(){return pq.NoteToRDFConverter},"get")});var uw=Bc();Object.defineProperty(m,"ExoQLParser",{enumerable:!0,get:o(function(){return uw.ExoQLParser},"get")});Object.defineProperty(m,"SPARQLParser",{enumerable:!0,get:o(function(){return uw.SPARQLParser},"get")});Object.defineProperty(m,"SPARQLParseError",{enumerable:!0,get:o(function(){return uw.SPARQLParseError},"get")});var dI=i1();Object.defineProperty(m,"DescribeOptionsTransformer",{enumerable:!0,get:o(function(){return dI.DescribeOptionsTransformer},"get")});Object.defineProperty(m,"DescribeOptionsTransformerError",{enumerable:!0,get:o(function(){return dI.DescribeOptionsTransformerError},"get")});var hI=Uc();Object.defineProperty(m,"ExoQLAlgebraTranslator",{enumerable:!0,get:o(function(){return hI.ExoQLAlgebraTranslator},"get")});Object.defineProperty(m,"AlgebraTranslator",{enumerable:!0,get:o(function(){return hI.AlgebraTranslator},"get")});var mq=dC();Object.defineProperty(m,"AlgebraOptimizer",{enumerable:!0,get:o(function(){return mq.AlgebraOptimizer},"get")});var gq=hC();Object.defineProperty(m,"AlgebraSerializer",{enumerable:!0,get:o(function(){return gq.AlgebraSerializer},"get")});var yq=w1();Object.defineProperty(m,"BGPExecutor",{enumerable:!0,get:o(function(){return yq.BGPExecutor},"get")});var _q=Lp();Object.defineProperty(m,"FilterExecutor",{enumerable:!0,get:o(function(){return _q.FilterExecutor},"get")});var Sq=V1();Object.defineProperty(m,"OptionalExecutor",{enumerable:!0,get:o(function(){return Sq.OptionalExecutor},"get")});var vq=q1();Object.defineProperty(m,"UnionExecutor",{enumerable:!0,get:o(function(){return vq.UnionExecutor},"get")});var bq=Z1();Object.defineProperty(m,"ConstructExecutor",{enumerable:!0,get:o(function(){return bq.ConstructExecutor},"get")});var wq=mC();Object.defineProperty(m,"DescribeExecutor",{enumerable:!0,get:o(function(){return wq.DescribeExecutor},"get")});var pI=cl();Object.defineProperty(m,"ExoQLQueryExecutor",{enumerable:!0,get:o(function(){return pI.ExoQLQueryExecutor},"get")});Object.defineProperty(m,"QueryExecutor",{enumerable:!0,get:o(function(){return pI.QueryExecutor},"get")});var mI=yC();Object.defineProperty(m,"UpdateExecutor",{enumerable:!0,get:o(function(){return mI.UpdateExecutor},"get")});Object.defineProperty(m,"UpdateExecutorError",{enumerable:!0,get:o(function(){return mI.UpdateExecutorError},"get")});var Eq=us();Object.defineProperty(m,"SolutionMapping",{enumerable:!0,get:o(function(){return Eq.SolutionMapping},"get")});var Tq=Np();Object.defineProperty(m,"BuiltInFunctions",{enumerable:!0,get:o(function(){return Tq.BuiltInFunctions},"get")});var Aq=SC();Object.defineProperty(m,"AggregateFunctions",{enumerable:!0,get:o(function(){return Aq.AggregateFunctions},"get")});var gI=z1();Object.defineProperty(m,"CustomAggregateRegistry",{enumerable:!0,get:o(function(){return gI.CustomAggregateRegistry},"get")});Object.defineProperty(m,"CustomAggregateError",{enumerable:!0,get:o(function(){return gI.CustomAggregateError},"get")});var Ts=H1();Object.defineProperty(m,"BUILT_IN_AGGREGATES",{enumerable:!0,get:o(function(){return Ts.BUILT_IN_AGGREGATES},"get")});Object.defineProperty(m,"EXO_AGGREGATE_NS",{enumerable:!0,get:o(function(){return Ts.EXO_AGGREGATE_NS},"get")});Object.defineProperty(m,"medianAggregate",{enumerable:!0,get:o(function(){return Ts.medianAggregate},"get")});Object.defineProperty(m,"varianceAggregate",{enumerable:!0,get:o(function(){return Ts.varianceAggregate},"get")});Object.defineProperty(m,"stddevAggregate",{enumerable:!0,get:o(function(){return Ts.stddevAggregate},"get")});Object.defineProperty(m,"modeAggregate",{enumerable:!0,get:o(function(){return Ts.modeAggregate},"get")});Object.defineProperty(m,"createPercentileAggregate",{enumerable:!0,get:o(function(){return Ts.createPercentileAggregate},"get")});Object.defineProperty(m,"getNumericValue",{enumerable:!0,get:o(function(){return Ts.getNumericValue},"get")});Object.defineProperty(m,"createDecimalLiteral",{enumerable:!0,get:o(function(){return Ts.createDecimalLiteral},"get")});Object.defineProperty(m,"createDoubleLiteral",{enumerable:!0,get:o(function(){return Ts.createDoubleLiteral},"get")});var xq=vC();Object.defineProperty(m,"QueryPlanCache",{enumerable:!0,get:o(function(){return xq.QueryPlanCache},"get")});var yI=bC();Object.defineProperty(m,"SPARQLResultCache",{enumerable:!0,get:o(function(){return yI.SPARQLResultCache},"get")});Object.defineProperty(m,"createSPARQLResultCache",{enumerable:!0,get:o(function(){return yI.createSPARQLResultCache},"get")});var _I=wC();Object.defineProperty(m,"IncrementalIndexer",{enumerable:!0,get:o(function(){return _I.IncrementalIndexer},"get")});Object.defineProperty(m,"createIncrementalIndexer",{enumerable:!0,get:o(function(){return _I.createIncrementalIndexer},"get")});var Cq=EC();Object.defineProperty(m,"ResultSerializer",{enumerable:!0,get:o(function(){return Cq.ResultSerializer},"get")});var SI=t1();Object.defineProperty(m,"CaseWhenTransformer",{enumerable:!0,get:o(function(){return SI.CaseWhenTransformer},"get")});Object.defineProperty(m,"CaseWhenTransformerError",{enumerable:!0,get:o(function(){return SI.CaseWhenTransformerError},"get")});var Iq=c1();Object.defineProperty(m,"VaultPrefixTransformer",{enumerable:!0,get:o(function(){return Iq.VaultPrefixTransformer},"get")});var Rq=pb();Object.defineProperty(m,"FilterContainsOptimizer",{enumerable:!0,get:o(function(){return Rq.FilterContainsOptimizer},"get")});var vI=TC();Object.defineProperty(m,"FileNotFoundError",{enumerable:!0,get:o(function(){return vI.FileNotFoundError},"get")});Object.defineProperty(m,"FileAlreadyExistsError",{enumerable:!0,get:o(function(){return vI.FileAlreadyExistsError},"get")});var fw=bS();Object.defineProperty(m,"TripleAlreadyExistsError",{enumerable:!0,get:o(function(){return fw.TripleAlreadyExistsError},"get")});Object.defineProperty(m,"TripleNotFoundError",{enumerable:!0,get:o(function(){return fw.TripleNotFoundError},"get")});Object.defineProperty(m,"TransactionError",{enumerable:!0,get:o(function(){return fw.TransactionError},"get")});var ag=Cb();Object.defineProperty(m,"VaultSettings",{enumerable:!0,get:o(function(){return ag.VaultSettings},"get")});Object.defineProperty(m,"DEFAULT_OWNER_IDENTITY",{enumerable:!0,get:o(function(){return ag.DEFAULT_OWNER_IDENTITY},"get")});Object.defineProperty(m,"DEFAULT_INBOX_FOLDER",{enumerable:!0,get:o(function(){return ag.DEFAULT_INBOX_FOLDER},"get")});Object.defineProperty(m,"DEFAULT_FLEETING_NOTE_CLASS_UID",{enumerable:!0,get:o(function(){return ag.DEFAULT_FLEETING_NOTE_CLASS_UID},"get")});var Pq=wt();Object.defineProperty(m,"DI_TOKENS",{enumerable:!0,get:o(function(){return Pq.DI_TOKENS},"get")});var xf=AC();Object.defineProperty(m,"registerCoreServices",{enumerable:!0,get:o(function(){return xf.registerCoreServices},"get")});Object.defineProperty(m,"createChildContainer",{enumerable:!0,get:o(function(){return xf.createChildContainer},"get")});Object.defineProperty(m,"getContainer",{enumerable:!0,get:o(function(){return xf.getContainer},"get")});Object.defineProperty(m,"resetContainer",{enumerable:!0,get:o(function(){return xf.resetContainer},"get")});Object.defineProperty(m,"container",{enumerable:!0,get:o(function(){return xf.container},"get")});var da=OC();Object.defineProperty(m,"NODE_FLAGS",{enumerable:!0,get:o(function(){return da.NODE_FLAGS},"get")});Object.defineProperty(m,"DEFAULT_COLORS",{enumerable:!0,get:o(function(){return da.DEFAULT_COLORS},"get")});Object.defineProperty(m,"StringTable",{enumerable:!0,get:o(function(){return da.StringTable},"get")});Object.defineProperty(m,"CompactGraphStore",{enumerable:!0,get:o(function(){return da.CompactGraphStore},"get")});Object.defineProperty(m,"MemoryPool",{enumerable:!0,get:o(function(){return da.MemoryPool},"get")});Object.defineProperty(m,"getGlobalPool",{enumerable:!0,get:o(function(){return da.getGlobalPool},"get")});Object.defineProperty(m,"resetGlobalPool",{enumerable:!0,get:o(function(){return da.resetGlobalPool},"get")});Object.defineProperty(m,"StreamingLoader",{enumerable:!0,get:o(function(){return da.StreamingLoader},"get")});Object.defineProperty(m,"createStreamingSource",{enumerable:!0,get:o(function(){return da.createStreamingSource},"get")});var bI=FC();Object.defineProperty(m,"ExoQL",{enumerable:!0,get:o(function(){return bI.ExoQL},"get")});Object.defineProperty(m,"ExoQLError",{enumerable:!0,get:o(function(){return bI.ExoQLError},"get")});var Ol=Um();Object.defineProperty(m,"RELATION_COLUMN_SET_CLASS_IRI",{enumerable:!0,get:o(function(){return Ol.RELATION_COLUMN_SET_CLASS_IRI},"get")});Object.defineProperty(m,"RELATION_COLUMN_SET_CLASS_UID",{enumerable:!0,get:o(function(){return Ol.RELATION_COLUMN_SET_CLASS_UID},"get")});Object.defineProperty(m,"createRelationColumnSetFromFrontmatter",{enumerable:!0,get:o(function(){return Ol.createRelationColumnSetFromFrontmatter},"get")});Object.defineProperty(m,"isRelationColumnSet",{enumerable:!0,get:o(function(){return Ol.isRelationColumnSet},"get")});Object.defineProperty(m,"isRelationColumnSetFrontmatter",{enumerable:!0,get:o(function(){return Ol.isRelationColumnSetFrontmatter},"get")});Object.defineProperty(m,"normalizeRelationColumnSetRef",{enumerable:!0,get:o(function(){return Ol.normalizeRef},"get")});var Oq=VC();Object.defineProperty(m,"RelationColumnSetResolver",{enumerable:!0,get:o(function(){return Oq.RelationColumnSetResolver},"get")});var Cf=Um();Object.defineProperty(m,"LAYOUT_CLASS_IRI",{enumerable:!0,get:o(function(){return Cf.LAYOUT_CLASS_IRI},"get")});Object.defineProperty(m,"LAYOUT_CLASS_UID",{enumerable:!0,get:o(function(){return Cf.LAYOUT_CLASS_UID},"get")});Object.defineProperty(m,"createLayoutFromFrontmatter",{enumerable:!0,get:o(function(){return Cf.createLayoutFromFrontmatter},"get")});Object.defineProperty(m,"isLayout",{enumerable:!0,get:o(function(){return Cf.isLayout},"get")});Object.defineProperty(m,"isLayoutFrontmatter",{enumerable:!0,get:o(function(){return Cf.isLayoutFrontmatter},"get")});var Qa=Um();Object.defineProperty(m,"BACKLINKS_TABLE_BLOCK_CLASS_IRI",{enumerable:!0,get:o(function(){return Qa.BACKLINKS_TABLE_BLOCK_CLASS_IRI},"get")});Object.defineProperty(m,"BACKLINKS_TABLE_BLOCK_CLASS_UID",{enumerable:!0,get:o(function(){return Qa.BACKLINKS_TABLE_BLOCK_CLASS_UID},"get")});Object.defineProperty(m,"PROPERTIES_BLOCK_CLASS_IRI",{enumerable:!0,get:o(function(){return Qa.PROPERTIES_BLOCK_CLASS_IRI},"get")});Object.defineProperty(m,"PROPERTIES_BLOCK_CLASS_UID",{enumerable:!0,get:o(function(){return Qa.PROPERTIES_BLOCK_CLASS_UID},"get")});Object.defineProperty(m,"createLayoutBlockFromFrontmatter",{enumerable:!0,get:o(function(){return Qa.createLayoutBlockFromFrontmatter},"get")});Object.defineProperty(m,"isBacklinksTableBlock",{enumerable:!0,get:o(function(){return Qa.isBacklinksTableBlock},"get")});Object.defineProperty(m,"isLayoutBlockFrontmatter",{enumerable:!0,get:o(function(){return Qa.isLayoutBlockFrontmatter},"get")});Object.defineProperty(m,"isPropertiesBlock",{enumerable:!0,get:o(function(){return Qa.isPropertiesBlock},"get")});var wI=qC();Object.defineProperty(m,"LayoutSelector",{enumerable:!0,get:o(function(){return wI.LayoutSelector},"get")});Object.defineProperty(m,"selectByPriority",{enumerable:!0,get:o(function(){return wI.selectByPriority},"get")});ii(JC(),m);var Fq=tw();Object.defineProperty(m,"ShapeLoader",{enumerable:!0,get:o(function(){return Fq.ShapeLoader},"get")});var Dq=Xb();Object.defineProperty(m,"ShapeRegistry",{enumerable:!0,get:o(function(){return Dq.ShapeRegistry},"get")});var EI=nw();Object.defineProperty(m,"shaclValidate",{enumerable:!0,get:o(function(){return EI.validate},"get")});Object.defineProperty(m,"ShaclShapeRegistry",{enumerable:!0,get:o(function(){return EI.ShapeRegistry},"get")});ii(tI(),m);var dw=nI();Object.defineProperty(m,"ValidatorDaemon",{enumerable:!0,get:o(function(){return dw.ValidatorDaemon},"get")});Object.defineProperty(m,"DEFAULT_SOCKET_PATH",{enumerable:!0,get:o(function(){return dw.DEFAULT_SOCKET_PATH},"get")});Object.defineProperty(m,"IDLE_TIMEOUT_MS",{enumerable:!0,get:o(function(){return dw.IDLE_TIMEOUT_MS},"get")});var Nq=ow();Object.defineProperty(m,"TripleClassHierarchy",{enumerable:!0,get:o(function(){return Nq.ClassHierarchy},"get")})});var br=S(hw=>{"use strict";hw.fromCallback=function(n){return Object.defineProperty(function(...e){if(typeof e[e.length-1]=="function")n.apply(this,e);else return new Promise((t,r)=>{e.push((i,s)=>i!=null?r(i):t(s)),n.apply(this,e)})},"name",{value:n.name})};hw.fromPromise=function(n){return Object.defineProperty(function(...e){let t=e[e.length-1];if(typeof t!="function")return n.apply(this,e);e.pop(),n.apply(this,e).then(r=>t(null,r),t)},"name",{value:n.name})}});var AI=S((Cle,TI)=>{var Ka=require("constants"),Lq=process.cwd,og=null,kq=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return og||(og=Lq.call(process)),og};try{process.cwd()}catch{}typeof process.chdir=="function"&&(pw=process.chdir,process.chdir=function(n){og=null,pw.call(process,n)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,pw));var pw;TI.exports=Mq;function Mq(n){Ka.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&e(n),n.lutimes||t(n),n.chown=s(n.chown),n.fchown=s(n.fchown),n.lchown=s(n.lchown),n.chmod=r(n.chmod),n.fchmod=r(n.fchmod),n.lchmod=r(n.lchmod),n.chownSync=a(n.chownSync),n.fchownSync=a(n.fchownSync),n.lchownSync=a(n.lchownSync),n.chmodSync=i(n.chmodSync),n.fchmodSync=i(n.fchmodSync),n.lchmodSync=i(n.lchmodSync),n.stat=c(n.stat),n.fstat=c(n.fstat),n.lstat=c(n.lstat),n.statSync=l(n.statSync),n.fstatSync=l(n.fstatSync),n.lstatSync=l(n.lstatSync),n.chmod&&!n.lchmod&&(n.lchmod=function(f,d,h){h&&process.nextTick(h)},n.lchmodSync=function(){}),n.chown&&!n.lchown&&(n.lchown=function(f,d,h,p){p&&process.nextTick(p)},n.lchownSync=function(){}),kq==="win32"&&(n.rename=typeof n.rename!="function"?n.rename:(function(f){function d(h,p,y){var v=Date.now(),w=0;f(h,p,o(function b(A){if(A&&(A.code==="EACCES"||A.code==="EPERM"||A.code==="EBUSY")&&Date.now()-v<6e4){setTimeout(function(){n.stat(p,function(I,j){I&&I.code==="ENOENT"?f(h,p,b):y(A)})},w),w<100&&(w+=10);return}y&&y(A)},"CB"))}return o(d,"rename"),Object.setPrototypeOf&&Object.setPrototypeOf(d,f),d})(n.rename)),n.read=typeof n.read!="function"?n.read:(function(f){function d(h,p,y,v,w,b){var A;if(b&&typeof b=="function"){var I=0;A=o(function(j,V,te){if(j&&j.code==="EAGAIN"&&I<10)return I++,f.call(n,h,p,y,v,w,A);b.apply(this,arguments)},"callback")}return f.call(n,h,p,y,v,w,A)}return o(d,"read"),Object.setPrototypeOf&&Object.setPrototypeOf(d,f),d})(n.read),n.readSync=typeof n.readSync!="function"?n.readSync:(function(f){return function(d,h,p,y,v){for(var w=0;;)try{return f.call(n,d,h,p,y,v)}catch(b){if(b.code==="EAGAIN"&&w<10){w++;continue}throw b}}})(n.readSync);function e(f){f.lchmod=function(d,h,p){f.open(d,Ka.O_WRONLY|Ka.O_SYMLINK,h,function(y,v){if(y){p&&p(y);return}f.fchmod(v,h,function(w){f.close(v,function(b){p&&p(w||b)})})})},f.lchmodSync=function(d,h){var p=f.openSync(d,Ka.O_WRONLY|Ka.O_SYMLINK,h),y=!0,v;try{v=f.fchmodSync(p,h),y=!1}finally{if(y)try{f.closeSync(p)}catch{}else f.closeSync(p)}return v}}o(e,"patchLchmod");function t(f){Ka.hasOwnProperty("O_SYMLINK")&&f.futimes?(f.lutimes=function(d,h,p,y){f.open(d,Ka.O_SYMLINK,function(v,w){if(v){y&&y(v);return}f.futimes(w,h,p,function(b){f.close(w,function(A){y&&y(b||A)})})})},f.lutimesSync=function(d,h,p){var y=f.openSync(d,Ka.O_SYMLINK),v,w=!0;try{v=f.futimesSync(y,h,p),w=!1}finally{if(w)try{f.closeSync(y)}catch{}else f.closeSync(y)}return v}):f.futimes&&(f.lutimes=function(d,h,p,y){y&&process.nextTick(y)},f.lutimesSync=function(){})}o(t,"patchLutimes");function r(f){return f&&function(d,h,p){return f.call(n,d,h,function(y){u(y)&&(y=null),p&&p.apply(this,arguments)})}}o(r,"chmodFix");function i(f){return f&&function(d,h){try{return f.call(n,d,h)}catch(p){if(!u(p))throw p}}}o(i,"chmodFixSync");function s(f){return f&&function(d,h,p,y){return f.call(n,d,h,p,function(v){u(v)&&(v=null),y&&y.apply(this,arguments)})}}o(s,"chownFix");function a(f){return f&&function(d,h,p){try{return f.call(n,d,h,p)}catch(y){if(!u(y))throw y}}}o(a,"chownFixSync");function c(f){return f&&function(d,h,p){typeof h=="function"&&(p=h,h=null);function y(v,w){w&&(w.uid<0&&(w.uid+=4294967296),w.gid<0&&(w.gid+=4294967296)),p&&p.apply(this,arguments)}return o(y,"callback"),h?f.call(n,d,h,y):f.call(n,d,y)}}o(c,"statFix");function l(f){return f&&function(d,h){var p=h?f.call(n,d,h):f.call(n,d);return p&&(p.uid<0&&(p.uid+=4294967296),p.gid<0&&(p.gid+=4294967296)),p}}o(l,"statFixSync");function u(f){if(!f||f.code==="ENOSYS")return!0;var d=!process.getuid||process.getuid()!==0;return!!(d&&(f.code==="EINVAL"||f.code==="EPERM"))}o(u,"chownErOk")}o(Mq,"patch")});var II=S((Rle,CI)=>{var xI=require("stream").Stream;CI.exports=jq;function jq(n){return{ReadStream:e,WriteStream:t};function e(r,i){if(!(this instanceof e))return new e(r,i);xI.call(this);var s=this;this.path=r,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,i=i||{};for(var a=Object.keys(i),c=0,l=a.length;c<l;c++){var u=a[c];this[u]=i[u]}if(this.encoding&&this.setEncoding(this.encoding),this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!="number")throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){s._read()});return}n.open(this.path,this.flags,this.mode,function(f,d){if(f){s.emit("error",f),s.readable=!1;return}s.fd=d,s.emit("open",d),s._read()})}function t(r,i){if(!(this instanceof t))return new t(r,i);xI.call(this),this.path=r,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var s=Object.keys(i),a=0,c=s.length;a<c;a++){var l=s[a];this[l]=i[l]}if(this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=n.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}o(jq,"legacy")});var PI=S((Ole,RI)=>{"use strict";RI.exports=Bq;var $q=Object.getPrototypeOf||function(n){return n.__proto__};function Bq(n){if(n===null||typeof n!="object")return n;if(n instanceof Object)var e={__proto__:$q(n)};else var e=Object.create(null);return Object.getOwnPropertyNames(n).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}),e}o(Bq,"clone")});var Dl=S((Dle,yw)=>{var Bt=require("fs"),Vq=AI(),Uq=II(),qq=PI(),cg=require("util"),jr,ug;typeof Symbol=="function"&&typeof Symbol.for=="function"?(jr=Symbol.for("graceful-fs.queue"),ug=Symbol.for("graceful-fs.previous")):(jr="___graceful-fs.queue",ug="___graceful-fs.previous");function Wq(){}o(Wq,"noop");function DI(n,e){Object.defineProperty(n,jr,{get:o(function(){return e},"get")})}o(DI,"publishQueue");var Xo=Wq;cg.debuglog?Xo=cg.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(Xo=o(function(){var n=cg.format.apply(cg,arguments);n="GFS4: "+n.split(/\n/).join(`
458
- GFS4: `),console.error(n)},"debug"));Bt[jr]||(OI=global[jr]||[],DI(Bt,OI),Bt.close=(function(n){function e(t,r){return n.call(Bt,t,function(i){i||FI(),typeof r=="function"&&r.apply(this,arguments)})}return o(e,"close"),Object.defineProperty(e,ug,{value:n}),e})(Bt.close),Bt.closeSync=(function(n){function e(t){n.apply(Bt,arguments),FI()}return o(e,"closeSync"),Object.defineProperty(e,ug,{value:n}),e})(Bt.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){Xo(Bt[jr]),require("assert").equal(Bt[jr].length,0)}));var OI;global[jr]||DI(global,Bt[jr]);yw.exports=mw(qq(Bt));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!Bt.__patched&&(yw.exports=mw(Bt),Bt.__patched=!0);function mw(n){Vq(n),n.gracefulify=mw,n.createReadStream=V,n.createWriteStream=te;var e=n.readFile;n.readFile=t;function t(F,$,re){return typeof $=="function"&&(re=$,$=null),Ye(F,$,re);function Ye(at,Ot,ot,lt){return e(at,Ot,function(Xe){Xe&&(Xe.code==="EMFILE"||Xe.code==="ENFILE")?Fl([Ye,[at,Ot,ot],Xe,lt||Date.now(),Date.now()]):typeof ot=="function"&&ot.apply(this,arguments)})}o(Ye,"go$readFile")}o(t,"readFile");var r=n.writeFile;n.writeFile=i;function i(F,$,re,Ye){return typeof re=="function"&&(Ye=re,re=null),at(F,$,re,Ye);function at(Ot,ot,lt,Xe,se){return r(Ot,ot,lt,function(U){U&&(U.code==="EMFILE"||U.code==="ENFILE")?Fl([at,[Ot,ot,lt,Xe],U,se||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}o(at,"go$writeFile")}o(i,"writeFile");var s=n.appendFile;s&&(n.appendFile=a);function a(F,$,re,Ye){return typeof re=="function"&&(Ye=re,re=null),at(F,$,re,Ye);function at(Ot,ot,lt,Xe,se){return s(Ot,ot,lt,function(U){U&&(U.code==="EMFILE"||U.code==="ENFILE")?Fl([at,[Ot,ot,lt,Xe],U,se||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}o(at,"go$appendFile")}o(a,"appendFile");var c=n.copyFile;c&&(n.copyFile=l);function l(F,$,re,Ye){return typeof re=="function"&&(Ye=re,re=0),at(F,$,re,Ye);function at(Ot,ot,lt,Xe,se){return c(Ot,ot,lt,function(U){U&&(U.code==="EMFILE"||U.code==="ENFILE")?Fl([at,[Ot,ot,lt,Xe],U,se||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}o(at,"go$copyFile")}o(l,"copyFile");var u=n.readdir;n.readdir=d;var f=/^v[0-5]\./;function d(F,$,re){typeof $=="function"&&(re=$,$=null);var Ye=f.test(process.version)?o(function(ot,lt,Xe,se){return u(ot,at(ot,lt,Xe,se))},"go$readdir"):o(function(ot,lt,Xe,se){return u(ot,lt,at(ot,lt,Xe,se))},"go$readdir");return Ye(F,$,re);function at(Ot,ot,lt,Xe){return function(se,U){se&&(se.code==="EMFILE"||se.code==="ENFILE")?Fl([Ye,[Ot,ot,lt],se,Xe||Date.now(),Date.now()]):(U&&U.sort&&U.sort(),typeof lt=="function"&&lt.call(this,se,U))}}}if(o(d,"readdir"),process.version.substr(0,4)==="v0.8"){var h=Uq(n);b=h.ReadStream,I=h.WriteStream}var p=n.ReadStream;p&&(b.prototype=Object.create(p.prototype),b.prototype.open=A);var y=n.WriteStream;y&&(I.prototype=Object.create(y.prototype),I.prototype.open=j),Object.defineProperty(n,"ReadStream",{get:o(function(){return b},"get"),set:o(function(F){b=F},"set"),enumerable:!0,configurable:!0}),Object.defineProperty(n,"WriteStream",{get:o(function(){return I},"get"),set:o(function(F){I=F},"set"),enumerable:!0,configurable:!0});var v=b;Object.defineProperty(n,"FileReadStream",{get:o(function(){return v},"get"),set:o(function(F){v=F},"set"),enumerable:!0,configurable:!0});var w=I;Object.defineProperty(n,"FileWriteStream",{get:o(function(){return w},"get"),set:o(function(F){w=F},"set"),enumerable:!0,configurable:!0});function b(F,$){return this instanceof b?(p.apply(this,arguments),this):b.apply(Object.create(b.prototype),arguments)}o(b,"ReadStream");function A(){var F=this;G(F.path,F.flags,F.mode,function($,re){$?(F.autoClose&&F.destroy(),F.emit("error",$)):(F.fd=re,F.emit("open",re),F.read())})}o(A,"ReadStream$open");function I(F,$){return this instanceof I?(y.apply(this,arguments),this):I.apply(Object.create(I.prototype),arguments)}o(I,"WriteStream");function j(){var F=this;G(F.path,F.flags,F.mode,function($,re){$?(F.destroy(),F.emit("error",$)):(F.fd=re,F.emit("open",re))})}o(j,"WriteStream$open");function V(F,$){return new n.ReadStream(F,$)}o(V,"createReadStream");function te(F,$){return new n.WriteStream(F,$)}o(te,"createWriteStream");var z=n.open;n.open=G;function G(F,$,re,Ye){return typeof re=="function"&&(Ye=re,re=null),at(F,$,re,Ye);function at(Ot,ot,lt,Xe,se){return z(Ot,ot,lt,function(U,ut){U&&(U.code==="EMFILE"||U.code==="ENFILE")?Fl([at,[Ot,ot,lt,Xe],U,se||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}o(at,"go$open")}return o(G,"open"),n}o(mw,"patch");function Fl(n){Xo("ENQUEUE",n[0].name,n[1]),Bt[jr].push(n),gw()}o(Fl,"enqueue");var lg;function FI(){for(var n=Date.now(),e=0;e<Bt[jr].length;++e)Bt[jr][e].length>2&&(Bt[jr][e][3]=n,Bt[jr][e][4]=n);gw()}o(FI,"resetQueue");function gw(){if(clearTimeout(lg),lg=void 0,Bt[jr].length!==0){var n=Bt[jr].shift(),e=n[0],t=n[1],r=n[2],i=n[3],s=n[4];if(i===void 0)Xo("RETRY",e.name,t),e.apply(null,t);else if(Date.now()-i>=6e4){Xo("TIMEOUT",e.name,t);var a=t.pop();typeof a=="function"&&a.call(null,r)}else{var c=Date.now()-s,l=Math.max(s-i,1),u=Math.min(l*1.2,100);c>=u?(Xo("RETRY",e.name,t),e.apply(null,t.concat([i]))):Bt[jr].push(n)}lg===void 0&&(lg=setTimeout(gw,0))}}o(gw,"retry")});var gn=S(ha=>{"use strict";var NI=br().fromCallback,mn=Dl(),Gq=["access","appendFile","chmod","chown","close","copyFile","cp","fchmod","fchown","fdatasync","fstat","fsync","ftruncate","futimes","glob","lchmod","lchown","lutimes","link","lstat","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","statfs","symlink","truncate","unlink","utimes","writeFile"].filter(n=>typeof mn[n]=="function");Object.assign(ha,mn);Gq.forEach(n=>{ha[n]=NI(mn[n])});ha.exists=function(n,e){return typeof e=="function"?mn.exists(n,e):new Promise(t=>mn.exists(n,t))};ha.read=function(n,e,t,r,i,s){return typeof s=="function"?mn.read(n,e,t,r,i,s):new Promise((a,c)=>{mn.read(n,e,t,r,i,(l,u,f)=>{if(l)return c(l);a({bytesRead:u,buffer:f})})})};ha.write=function(n,e,...t){return typeof t[t.length-1]=="function"?mn.write(n,e,...t):new Promise((r,i)=>{mn.write(n,e,...t,(s,a,c)=>{if(s)return i(s);r({bytesWritten:a,buffer:c})})})};ha.readv=function(n,e,...t){return typeof t[t.length-1]=="function"?mn.readv(n,e,...t):new Promise((r,i)=>{mn.readv(n,e,...t,(s,a,c)=>{if(s)return i(s);r({bytesRead:a,buffers:c})})})};ha.writev=function(n,e,...t){return typeof t[t.length-1]=="function"?mn.writev(n,e,...t):new Promise((r,i)=>{mn.writev(n,e,...t,(s,a,c)=>{if(s)return i(s);r({bytesWritten:a,buffers:c})})})};typeof mn.realpath.native=="function"?ha.realpath.native=NI(mn.realpath.native):process.emitWarning("fs.realpath.native is not a function. Is fs being monkey-patched?","Warning","fs-extra-WARN0003")});var kI=S((kle,LI)=>{"use strict";var zq=require("path");LI.exports.checkPath=o(function(e){if(process.platform==="win32"&&/[<>:"|?*]/.test(e.replace(zq.parse(e).root,""))){let r=new Error(`Path contains invalid characters: ${e}`);throw r.code="EINVAL",r}},"checkPath")});var BI=S((jle,_w)=>{"use strict";var MI=gn(),{checkPath:jI}=kI(),$I=o(n=>{let e={mode:511};return typeof n=="number"?n:{...e,...n}.mode},"getMode");_w.exports.makeDir=async(n,e)=>(jI(n),MI.mkdir(n,{mode:$I(e),recursive:!0}));_w.exports.makeDirSync=(n,e)=>(jI(n),MI.mkdirSync(n,{mode:$I(e),recursive:!0}))});var Ui=S((Ble,VI)=>{"use strict";var Hq=br().fromPromise,{makeDir:Qq,makeDirSync:Sw}=BI(),vw=Hq(Qq);VI.exports={mkdirs:vw,mkdirsSync:Sw,mkdirp:vw,mkdirpSync:Sw,ensureDir:vw,ensureDirSync:Sw}});var Ya=S((Vle,qI)=>{"use strict";var Kq=br().fromPromise,UI=gn();function Yq(n){return UI.access(n).then(()=>!0).catch(()=>!1)}o(Yq,"pathExists");qI.exports={pathExists:Kq(Yq),pathExistsSync:UI.existsSync}});var bw=S((qle,WI)=>{"use strict";var Nl=gn(),Xq=br().fromPromise;async function Jq(n,e,t){let r=await Nl.open(n,"r+"),i=null;try{await Nl.futimes(r,e,t)}finally{try{await Nl.close(r)}catch(s){i=s}}if(i)throw i}o(Jq,"utimesMillis");function Zq(n,e,t){let r=Nl.openSync(n,"r+");return Nl.futimesSync(r,e,t),Nl.closeSync(r)}o(Zq,"utimesMillisSync");WI.exports={utimesMillis:Xq(Jq),utimesMillisSync:Zq}});var Jo=S((Gle,QI)=>{"use strict";var Ll=gn(),wr=require("path"),GI=br().fromPromise;function eW(n,e,t){let r=t.dereference?i=>Ll.stat(i,{bigint:!0}):i=>Ll.lstat(i,{bigint:!0});return Promise.all([r(n),r(e).catch(i=>{if(i.code==="ENOENT")return null;throw i})]).then(([i,s])=>({srcStat:i,destStat:s}))}o(eW,"getStats");function tW(n,e,t){let r,i=t.dereference?a=>Ll.statSync(a,{bigint:!0}):a=>Ll.lstatSync(a,{bigint:!0}),s=i(n);try{r=i(e)}catch(a){if(a.code==="ENOENT")return{srcStat:s,destStat:null};throw a}return{srcStat:s,destStat:r}}o(tW,"getStatsSync");async function rW(n,e,t,r){let{srcStat:i,destStat:s}=await eW(n,e,r);if(s){if(If(i,s)){let a=wr.basename(n),c=wr.basename(e);if(t==="move"&&a!==c&&a.toLowerCase()===c.toLowerCase())return{srcStat:i,destStat:s,isChangingCase:!0};throw new Error("Source and destination must not be the same.")}if(i.isDirectory()&&!s.isDirectory())throw new Error(`Cannot overwrite non-directory '${e}' with directory '${n}'.`);if(!i.isDirectory()&&s.isDirectory())throw new Error(`Cannot overwrite directory '${e}' with non-directory '${n}'.`)}if(i.isDirectory()&&ww(n,e))throw new Error(fg(n,e,t));return{srcStat:i,destStat:s}}o(rW,"checkPaths");function nW(n,e,t,r){let{srcStat:i,destStat:s}=tW(n,e,r);if(s){if(If(i,s)){let a=wr.basename(n),c=wr.basename(e);if(t==="move"&&a!==c&&a.toLowerCase()===c.toLowerCase())return{srcStat:i,destStat:s,isChangingCase:!0};throw new Error("Source and destination must not be the same.")}if(i.isDirectory()&&!s.isDirectory())throw new Error(`Cannot overwrite non-directory '${e}' with directory '${n}'.`);if(!i.isDirectory()&&s.isDirectory())throw new Error(`Cannot overwrite directory '${e}' with non-directory '${n}'.`)}if(i.isDirectory()&&ww(n,e))throw new Error(fg(n,e,t));return{srcStat:i,destStat:s}}o(nW,"checkPathsSync");async function zI(n,e,t,r){let i=wr.resolve(wr.dirname(n)),s=wr.resolve(wr.dirname(t));if(s===i||s===wr.parse(s).root)return;let a;try{a=await Ll.stat(s,{bigint:!0})}catch(c){if(c.code==="ENOENT")return;throw c}if(If(e,a))throw new Error(fg(n,t,r));return zI(n,e,s,r)}o(zI,"checkParentPaths");function HI(n,e,t,r){let i=wr.resolve(wr.dirname(n)),s=wr.resolve(wr.dirname(t));if(s===i||s===wr.parse(s).root)return;let a;try{a=Ll.statSync(s,{bigint:!0})}catch(c){if(c.code==="ENOENT")return;throw c}if(If(e,a))throw new Error(fg(n,t,r));return HI(n,e,s,r)}o(HI,"checkParentPathsSync");function If(n,e){return e.ino!==void 0&&e.dev!==void 0&&e.ino===n.ino&&e.dev===n.dev}o(If,"areIdentical");function ww(n,e){let t=wr.resolve(n).split(wr.sep).filter(i=>i),r=wr.resolve(e).split(wr.sep).filter(i=>i);return t.every((i,s)=>r[s]===i)}o(ww,"isSrcSubdir");function fg(n,e,t){return`Cannot ${t} '${n}' to a subdirectory of itself, '${e}'.`}o(fg,"errMsg");QI.exports={checkPaths:GI(rW),checkPathsSync:nW,checkParentPaths:GI(zI),checkParentPathsSync:HI,isSrcSubdir:ww,areIdentical:If}});var YI=S((Hle,KI)=>{"use strict";async function iW(n,e){let t=[];for await(let r of n)t.push(e(r).then(()=>null,i=>i??new Error("unknown error")));await Promise.all(t.map(r=>r.then(i=>{if(i!==null)throw i})))}o(iW,"asyncIteratorConcurrentProcess");KI.exports={asyncIteratorConcurrentProcess:iW}});var tR=S((Kle,eR)=>{"use strict";var Jr=gn(),Rf=require("path"),{mkdirs:sW}=Ui(),{pathExists:aW}=Ya(),{utimesMillis:oW}=bw(),Pf=Jo(),{asyncIteratorConcurrentProcess:cW}=YI();async function lW(n,e,t={}){typeof t=="function"&&(t={filter:t}),t.clobber="clobber"in t?!!t.clobber:!0,t.overwrite="overwrite"in t?!!t.overwrite:t.clobber,t.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning(`Using the preserveTimestamps option in 32-bit node is not recommended;
457
+ `)}async getRegistry(e){let t=this.registryCache.get(e);if(t)return t;let r=await oU.ShapeLoader.loadFromShapeJSON(e),i=new rI.ShapeRegistry(r.getAll());return this.registryCache.set(e,i),i}};Es.ValidatorDaemon=cw});var Dt=S(m=>{"use strict";var lU=m&&m.__createBinding||(Object.create?(function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[t]},"get")}),Object.defineProperty(n,r,i)}):(function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]})),ii=m&&m.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&lU(e,n,t)};Object.defineProperty(m,"__esModule",{value:!0});m.RenameToUidService=m.PropertyCleanupService=m.LoggingService=m.LabelToAliasService=m.FolderRepairService=m.EffortVotingService=m.WorkflowCommandAdapter=m.VisibilityGenerator=m.InstantiationRuleResolver=m.WorkflowResolver=m.WorkflowEngine=m.EffortStatusWorkflow=m.ConceptCreationService=m.ClassCreationService=m.AreaHierarchyBuilder=m.AreaCreationService=m.TaskStatusService=m.ServiceRegistry=m.GroundingExecutor=m.PreconditionEvaluator=m.CommandResolver=m.extractPropertyLabel=m.uriToPropertyName=m.propertyNameToUri=m.rangeToFieldType=m.PropertyFieldType=m.isCommandBindingFrontmatter=m.isGroundingFrontmatter=m.isPreconditionFrontmatter=m.isCommandFrontmatter=m.isStyleSource=m.isLabelClass=m.isCommandVariant=m.STYLE_SOURCE_VALUES=m.LABEL_CLASS_VALUES=m.COMMAND_VARIANT_VALUES=m.CommandBindingStyleProperty=m.CommandBindingProperty=m.GroundingProperty=m.PreconditionProperty=m.CommandProperty=m.GroundingType=m.getEffortStatusLabel=m.isTrashedStatus=m.isDoneStatus=m.normalizeEffortStatus=m.EFFORT_STATUS_OPTIONS=m.STATUS_NAME_TO_WIKILINK=m.STATUS_NAME_TO_ENUM=m.EFFORT_STATUS_CONFIG=void 0;m.InMemoryTripleStore=m.OBSIDIAN_VAULT_SCHEME=m.vaultPathToIRI=m.NullLogger=m.RDFSerializer=m.FilenameValidator=m.EffortSortingHelpers=m.MetadataExtractor=m.MetadataHelpers=m.WikiLinkHelpers=m.DateFormatter=m.FrontmatterService=m.CriticalityZoneUUIDs=m.CriticalityZoneService=m.DailyReviewService=m.DEFAULT_AUTOCOMPLETE_CONFIG=m.AutocompleteService=m.TrendDetectionService=m.AnalyticsService=m.getTemplateByName=m.validateParameters=m.fillTemplate=m.findMatchingTemplates=m.findClassByTerm=m.KNOWN_CLASSES=m.KNOWN_PROTOTYPES=m.EFFORT_STATUSES=m.ASSET_CLASSES=m.PREDICATES=m.SPARQL_PREFIXES=m.SPARQL_TEMPLATES=m.DEFAULT_NL_TO_SPARQL_CONFIG=m.NLToSPARQLService=m.TypeRegistry=m.GraphQueryService=m.FixMissingLabelService=m.ArchiveAssetService=m.GenericAssetCreationService=m.URIConstructionService=m.SessionEventService=m.AssetConversionService=m.EnumValueResolver=m.ClassHierarchyResolver=m.PropertySchemaResolver=m.PlanningService=m.AlgorithmExtractor=m.DynamicFrontmatterGenerator=m.FleetingNoteCreationService=m.SupervisionCreationService=m.StatusTimestampService=void 0;m.createSPARQLResultCache=m.SPARQLResultCache=m.QueryPlanCache=m.createDoubleLiteral=m.createDecimalLiteral=m.getNumericValue=m.createPercentileAggregate=m.modeAggregate=m.stddevAggregate=m.varianceAggregate=m.medianAggregate=m.EXO_AGGREGATE_NS=m.BUILT_IN_AGGREGATES=m.CustomAggregateError=m.CustomAggregateRegistry=m.AggregateFunctions=m.BuiltInFunctions=m.SolutionMapping=m.UpdateExecutorError=m.UpdateExecutor=m.QueryExecutor=m.ExoQLQueryExecutor=m.DescribeExecutor=m.ConstructExecutor=m.UnionExecutor=m.OptionalExecutor=m.FilterExecutor=m.BGPExecutor=m.AlgebraSerializer=m.AlgebraOptimizer=m.AlgebraTranslator=m.ExoQLAlgebraTranslator=m.DescribeOptionsTransformerError=m.DescribeOptionsTransformer=m.SPARQLParseError=m.SPARQLParser=m.ExoQLParser=m.NoteToRDFConverter=m.SOURCE_VARIABLE=m.SourceAnnotator=m.INFERRED_GRAPH=m.PrototypeChainMaterializer=m.PropertyCardinalityRegistry=m.NonInheritablePropertyRegistry=m.RDFSInferenceEngine=m.RDFVocabularyMapper=m.DomainTriple=m.DomainBlankNode=m.DomainLiteral=m.DomainIRI=void 0;m.createLayoutBlockFromFrontmatter=m.PROPERTIES_BLOCK_CLASS_UID=m.PROPERTIES_BLOCK_CLASS_IRI=m.BACKLINKS_TABLE_BLOCK_CLASS_UID=m.BACKLINKS_TABLE_BLOCK_CLASS_IRI=m.isLayoutFrontmatter=m.isLayout=m.createLayoutFromFrontmatter=m.LAYOUT_CLASS_UID=m.LAYOUT_CLASS_IRI=m.RelationColumnSetResolver=m.normalizeRelationColumnSetRef=m.isRelationColumnSetFrontmatter=m.isRelationColumnSet=m.createRelationColumnSetFromFrontmatter=m.RELATION_COLUMN_SET_CLASS_UID=m.RELATION_COLUMN_SET_CLASS_IRI=m.ExoQLError=m.ExoQL=m.createStreamingSource=m.StreamingLoader=m.resetGlobalPool=m.getGlobalPool=m.MemoryPool=m.CompactGraphStore=m.StringTable=m.DEFAULT_COLORS=m.NODE_FLAGS=m.container=m.resetContainer=m.getContainer=m.createChildContainer=m.registerCoreServices=m.DI_TOKENS=m.DEFAULT_FLEETING_NOTE_CLASS_UID=m.DEFAULT_INBOX_FOLDER=m.DEFAULT_OWNER_IDENTITY=m.VaultSettings=m.TransactionError=m.TripleNotFoundError=m.TripleAlreadyExistsError=m.FileAlreadyExistsError=m.FileNotFoundError=m.FilterContainsOptimizer=m.VaultPrefixTransformer=m.CaseWhenTransformerError=m.CaseWhenTransformer=m.ResultSerializer=m.createIncrementalIndexer=m.IncrementalIndexer=void 0;m.TripleClassHierarchy=m.IDLE_TIMEOUT_MS=m.DEFAULT_SOCKET_PATH=m.ValidatorDaemon=m.ShaclShapeRegistry=m.shaclValidate=m.ShapeRegistry=m.ShapeLoader=m.selectByPriority=m.LayoutSelector=m.isPropertiesBlock=m.isLayoutBlockFrontmatter=m.isBacklinksTableBlock=void 0;ii(Fu(),m);ii(Ec(),m);var Ha=y0();Object.defineProperty(m,"EFFORT_STATUS_CONFIG",{enumerable:!0,get:o(function(){return Ha.EFFORT_STATUS_CONFIG},"get")});Object.defineProperty(m,"STATUS_NAME_TO_ENUM",{enumerable:!0,get:o(function(){return Ha.STATUS_NAME_TO_ENUM},"get")});Object.defineProperty(m,"STATUS_NAME_TO_WIKILINK",{enumerable:!0,get:o(function(){return Ha.STATUS_NAME_TO_WIKILINK},"get")});Object.defineProperty(m,"EFFORT_STATUS_OPTIONS",{enumerable:!0,get:o(function(){return Ha.EFFORT_STATUS_OPTIONS},"get")});Object.defineProperty(m,"normalizeEffortStatus",{enumerable:!0,get:o(function(){return Ha.normalizeEffortStatus},"get")});Object.defineProperty(m,"isDoneStatus",{enumerable:!0,get:o(function(){return Ha.isDoneStatus},"get")});Object.defineProperty(m,"isTrashedStatus",{enumerable:!0,get:o(function(){return Ha.isTrashedStatus},"get")});Object.defineProperty(m,"getEffortStatusLabel",{enumerable:!0,get:o(function(){return Ha.getEffortStatusLabel},"get")});var uU=Tc();Object.defineProperty(m,"GroundingType",{enumerable:!0,get:o(function(){return uU.GroundingType},"get")});var Af=_0();Object.defineProperty(m,"CommandProperty",{enumerable:!0,get:o(function(){return Af.CommandProperty},"get")});Object.defineProperty(m,"PreconditionProperty",{enumerable:!0,get:o(function(){return Af.PreconditionProperty},"get")});Object.defineProperty(m,"GroundingProperty",{enumerable:!0,get:o(function(){return Af.GroundingProperty},"get")});Object.defineProperty(m,"CommandBindingProperty",{enumerable:!0,get:o(function(){return Af.CommandBindingProperty},"get")});Object.defineProperty(m,"CommandBindingStyleProperty",{enumerable:!0,get:o(function(){return Af.CommandBindingStyleProperty},"get")});var Pl=S0();Object.defineProperty(m,"COMMAND_VARIANT_VALUES",{enumerable:!0,get:o(function(){return Pl.COMMAND_VARIANT_VALUES},"get")});Object.defineProperty(m,"LABEL_CLASS_VALUES",{enumerable:!0,get:o(function(){return Pl.LABEL_CLASS_VALUES},"get")});Object.defineProperty(m,"STYLE_SOURCE_VALUES",{enumerable:!0,get:o(function(){return Pl.STYLE_SOURCE_VALUES},"get")});Object.defineProperty(m,"isCommandVariant",{enumerable:!0,get:o(function(){return Pl.isCommandVariant},"get")});Object.defineProperty(m,"isLabelClass",{enumerable:!0,get:o(function(){return Pl.isLabelClass},"get")});Object.defineProperty(m,"isStyleSource",{enumerable:!0,get:o(function(){return Pl.isStyleSource},"get")});var sg=gT();Object.defineProperty(m,"isCommandFrontmatter",{enumerable:!0,get:o(function(){return sg.isCommandFrontmatter},"get")});Object.defineProperty(m,"isPreconditionFrontmatter",{enumerable:!0,get:o(function(){return sg.isPreconditionFrontmatter},"get")});Object.defineProperty(m,"isGroundingFrontmatter",{enumerable:!0,get:o(function(){return sg.isGroundingFrontmatter},"get")});Object.defineProperty(m,"isCommandBindingFrontmatter",{enumerable:!0,get:o(function(){return sg.isCommandBindingFrontmatter},"get")});ii(yT(),m);ii(_T(),m);ii(v0(),m);ii(b0(),m);ii(vT(),m);ii(ET(),m);ii(r_(),m);ii(fA(),m);var iI=Ch();Object.defineProperty(m,"PropertyFieldType",{enumerable:!0,get:o(function(){return iI.PropertyFieldType},"get")});Object.defineProperty(m,"rangeToFieldType",{enumerable:!0,get:o(function(){return iI.rangeToFieldType},"get")});var lw=a_();Object.defineProperty(m,"propertyNameToUri",{enumerable:!0,get:o(function(){return lw.propertyNameToUri},"get")});Object.defineProperty(m,"uriToPropertyName",{enumerable:!0,get:o(function(){return lw.uriToPropertyName},"get")});Object.defineProperty(m,"extractPropertyLabel",{enumerable:!0,get:o(function(){return lw.extractPropertyLabel},"get")});var fU=Bx();Object.defineProperty(m,"CommandResolver",{enumerable:!0,get:o(function(){return fU.CommandResolver},"get")});var dU=Ux();Object.defineProperty(m,"PreconditionEvaluator",{enumerable:!0,get:o(function(){return dU.PreconditionEvaluator},"get")});var sI=Wx();Object.defineProperty(m,"GroundingExecutor",{enumerable:!0,get:o(function(){return sI.GroundingExecutor},"get")});Object.defineProperty(m,"ServiceRegistry",{enumerable:!0,get:o(function(){return sI.ServiceRegistry},"get")});var hU=RS();Object.defineProperty(m,"TaskStatusService",{enumerable:!0,get:o(function(){return hU.TaskStatusService},"get")});var pU=DS();Object.defineProperty(m,"AreaCreationService",{enumerable:!0,get:o(function(){return pU.AreaCreationService},"get")});var mU=LS();Object.defineProperty(m,"AreaHierarchyBuilder",{enumerable:!0,get:o(function(){return mU.AreaHierarchyBuilder},"get")});var gU=MS();Object.defineProperty(m,"ClassCreationService",{enumerable:!0,get:o(function(){return gU.ClassCreationService},"get")});var yU=$S();Object.defineProperty(m,"ConceptCreationService",{enumerable:!0,get:o(function(){return yU.ConceptCreationService},"get")});var _U=sm();Object.defineProperty(m,"EffortStatusWorkflow",{enumerable:!0,get:o(function(){return _U.EffortStatusWorkflow},"get")});var SU=lf();Object.defineProperty(m,"WorkflowEngine",{enumerable:!0,get:o(function(){return SU.WorkflowEngine},"get")});var vU=yS();Object.defineProperty(m,"WorkflowResolver",{enumerable:!0,get:o(function(){return vU.WorkflowResolver},"get")});var bU=i3();Object.defineProperty(m,"InstantiationRuleResolver",{enumerable:!0,get:o(function(){return bU.InstantiationRuleResolver},"get")});var wU=s3();Object.defineProperty(m,"VisibilityGenerator",{enumerable:!0,get:o(function(){return wU.VisibilityGenerator},"get")});var EU=a3();Object.defineProperty(m,"WorkflowCommandAdapter",{enumerable:!0,get:o(function(){return EU.WorkflowCommandAdapter},"get")});var TU=zS();Object.defineProperty(m,"EffortVotingService",{enumerable:!0,get:o(function(){return TU.EffortVotingService},"get")});var AU=QS();Object.defineProperty(m,"FolderRepairService",{enumerable:!0,get:o(function(){return AU.FolderRepairService},"get")});var xU=YS();Object.defineProperty(m,"LabelToAliasService",{enumerable:!0,get:o(function(){return xU.LabelToAliasService},"get")});var CU=$a();Object.defineProperty(m,"LoggingService",{enumerable:!0,get:o(function(){return CU.LoggingService},"get")});var IU=ZS();Object.defineProperty(m,"PropertyCleanupService",{enumerable:!0,get:o(function(){return IU.PropertyCleanupService},"get")});var RU=tv();Object.defineProperty(m,"RenameToUidService",{enumerable:!0,get:o(function(){return RU.RenameToUidService},"get")});var PU=om();Object.defineProperty(m,"StatusTimestampService",{enumerable:!0,get:o(function(){return PU.StatusTimestampService},"get")});var OU=iv();Object.defineProperty(m,"SupervisionCreationService",{enumerable:!0,get:o(function(){return OU.SupervisionCreationService},"get")});var FU=ov();Object.defineProperty(m,"FleetingNoteCreationService",{enumerable:!0,get:o(function(){return FU.FleetingNoteCreationService},"get")});var DU=lv();Object.defineProperty(m,"DynamicFrontmatterGenerator",{enumerable:!0,get:o(function(){return DU.DynamicFrontmatterGenerator},"get")});var NU=fv();Object.defineProperty(m,"AlgorithmExtractor",{enumerable:!0,get:o(function(){return NU.AlgorithmExtractor},"get")});var LU=hv();Object.defineProperty(m,"PlanningService",{enumerable:!0,get:o(function(){return LU.PlanningService},"get")});var kU=S3();Object.defineProperty(m,"PropertySchemaResolver",{enumerable:!0,get:o(function(){return kU.PropertySchemaResolver},"get")});var MU=v3();Object.defineProperty(m,"ClassHierarchyResolver",{enumerable:!0,get:o(function(){return MU.ClassHierarchyResolver},"get")});var jU=b3();Object.defineProperty(m,"EnumValueResolver",{enumerable:!0,get:o(function(){return jU.EnumValueResolver},"get")});var $U=_v();Object.defineProperty(m,"AssetConversionService",{enumerable:!0,get:o(function(){return $U.AssetConversionService},"get")});var BU=bv();Object.defineProperty(m,"SessionEventService",{enumerable:!0,get:o(function(){return BU.SessionEventService},"get")});var VU=Tv();Object.defineProperty(m,"URIConstructionService",{enumerable:!0,get:o(function(){return VU.URIConstructionService},"get")});var UU=xv();Object.defineProperty(m,"GenericAssetCreationService",{enumerable:!0,get:o(function(){return UU.GenericAssetCreationService},"get")});var qU=O3();Object.defineProperty(m,"ArchiveAssetService",{enumerable:!0,get:o(function(){return qU.ArchiveAssetService},"get")});var WU=D3();Object.defineProperty(m,"FixMissingLabelService",{enumerable:!0,get:o(function(){return WU.FixMissingLabelService},"get")});var GU=N3();Object.defineProperty(m,"GraphQueryService",{enumerable:!0,get:o(function(){return GU.GraphQueryService},"get")});var zU=k3();Object.defineProperty(m,"TypeRegistry",{enumerable:!0,get:o(function(){return zU.TypeRegistry},"get")});var aI=M3();Object.defineProperty(m,"NLToSPARQLService",{enumerable:!0,get:o(function(){return aI.NLToSPARQLService},"get")});Object.defineProperty(m,"DEFAULT_NL_TO_SPARQL_CONFIG",{enumerable:!0,get:o(function(){return aI.DEFAULT_NL_TO_SPARQL_CONFIG},"get")});var si=Ov();Object.defineProperty(m,"SPARQL_TEMPLATES",{enumerable:!0,get:o(function(){return si.SPARQL_TEMPLATES},"get")});Object.defineProperty(m,"SPARQL_PREFIXES",{enumerable:!0,get:o(function(){return si.SPARQL_PREFIXES},"get")});Object.defineProperty(m,"PREDICATES",{enumerable:!0,get:o(function(){return si.PREDICATES},"get")});Object.defineProperty(m,"ASSET_CLASSES",{enumerable:!0,get:o(function(){return si.ASSET_CLASSES},"get")});Object.defineProperty(m,"EFFORT_STATUSES",{enumerable:!0,get:o(function(){return si.EFFORT_STATUSES},"get")});Object.defineProperty(m,"KNOWN_PROTOTYPES",{enumerable:!0,get:o(function(){return si.KNOWN_PROTOTYPES},"get")});Object.defineProperty(m,"KNOWN_CLASSES",{enumerable:!0,get:o(function(){return si.KNOWN_CLASSES},"get")});Object.defineProperty(m,"findClassByTerm",{enumerable:!0,get:o(function(){return si.findClassByTerm},"get")});Object.defineProperty(m,"findMatchingTemplates",{enumerable:!0,get:o(function(){return si.findMatchingTemplates},"get")});Object.defineProperty(m,"fillTemplate",{enumerable:!0,get:o(function(){return si.fillTemplate},"get")});Object.defineProperty(m,"validateParameters",{enumerable:!0,get:o(function(){return si.validateParameters},"get")});Object.defineProperty(m,"getTemplateByName",{enumerable:!0,get:o(function(){return si.getTemplateByName},"get")});var HU=$3();Object.defineProperty(m,"AnalyticsService",{enumerable:!0,get:o(function(){return HU.AnalyticsService},"get")});var QU=B3();Object.defineProperty(m,"TrendDetectionService",{enumerable:!0,get:o(function(){return QU.TrendDetectionService},"get")});var oI=U3();Object.defineProperty(m,"AutocompleteService",{enumerable:!0,get:o(function(){return oI.AutocompleteService},"get")});Object.defineProperty(m,"DEFAULT_AUTOCOMPLETE_CONFIG",{enumerable:!0,get:o(function(){return oI.DEFAULT_AUTOCOMPLETE_CONFIG},"get")});var KU=W3();Object.defineProperty(m,"DailyReviewService",{enumerable:!0,get:o(function(){return KU.DailyReviewService},"get")});var cI=jv();Object.defineProperty(m,"CriticalityZoneService",{enumerable:!0,get:o(function(){return cI.CriticalityZoneService},"get")});Object.defineProperty(m,"CriticalityZoneUUIDs",{enumerable:!0,get:o(function(){return cI.CriticalityZoneUUIDs},"get")});var YU=ei();Object.defineProperty(m,"FrontmatterService",{enumerable:!0,get:o(function(){return YU.FrontmatterService},"get")});var XU=Qr();Object.defineProperty(m,"DateFormatter",{enumerable:!0,get:o(function(){return XU.DateFormatter},"get")});var JU=zs();Object.defineProperty(m,"WikiLinkHelpers",{enumerable:!0,get:o(function(){return JU.WikiLinkHelpers},"get")});var ZU=ms();Object.defineProperty(m,"MetadataHelpers",{enumerable:!0,get:o(function(){return ZU.MetadataHelpers},"get")});var eq=OS();Object.defineProperty(m,"MetadataExtractor",{enumerable:!0,get:o(function(){return eq.MetadataExtractor},"get")});var tq=z3();Object.defineProperty(m,"EffortSortingHelpers",{enumerable:!0,get:o(function(){return tq.EffortSortingHelpers},"get")});var rq=H3();Object.defineProperty(m,"FilenameValidator",{enumerable:!0,get:o(function(){return rq.FilenameValidator},"get")});var nq=eC();Object.defineProperty(m,"RDFSerializer",{enumerable:!0,get:o(function(){return nq.RDFSerializer},"get")});var iq=Pc();Object.defineProperty(m,"NullLogger",{enumerable:!0,get:o(function(){return iq.NullLogger},"get")});var lI=Yv();Object.defineProperty(m,"vaultPathToIRI",{enumerable:!0,get:o(function(){return lI.vaultPathToIRI},"get")});Object.defineProperty(m,"OBSIDIAN_VAULT_SCHEME",{enumerable:!0,get:o(function(){return lI.OBSIDIAN_VAULT_SCHEME},"get")});var sq=AS();Object.defineProperty(m,"InMemoryTripleStore",{enumerable:!0,get:o(function(){return sq.InMemoryTripleStore},"get")});var aq=Ae();Object.defineProperty(m,"DomainIRI",{enumerable:!0,get:o(function(){return aq.IRI},"get")});var oq=Ne();Object.defineProperty(m,"DomainLiteral",{enumerable:!0,get:o(function(){return oq.Literal},"get")});var cq=qt();Object.defineProperty(m,"DomainBlankNode",{enumerable:!0,get:o(function(){return cq.BlankNode},"get")});var lq=Yn();Object.defineProperty(m,"DomainTriple",{enumerable:!0,get:o(function(){return lq.Triple},"get")});var uq=Jv();Object.defineProperty(m,"RDFVocabularyMapper",{enumerable:!0,get:o(function(){return uq.RDFVocabularyMapper},"get")});var fq=rC();Object.defineProperty(m,"RDFSInferenceEngine",{enumerable:!0,get:o(function(){return fq.RDFSInferenceEngine},"get")});var dq=rb();Object.defineProperty(m,"NonInheritablePropertyRegistry",{enumerable:!0,get:o(function(){return dq.NonInheritablePropertyRegistry},"get")});var hq=sb();Object.defineProperty(m,"PropertyCardinalityRegistry",{enumerable:!0,get:o(function(){return hq.PropertyCardinalityRegistry},"get")});var uI=cb();Object.defineProperty(m,"PrototypeChainMaterializer",{enumerable:!0,get:o(function(){return uI.PrototypeChainMaterializer},"get")});Object.defineProperty(m,"INFERRED_GRAPH",{enumerable:!0,get:o(function(){return uI.INFERRED_GRAPH},"get")});var fI=ub();Object.defineProperty(m,"SourceAnnotator",{enumerable:!0,get:o(function(){return fI.SourceAnnotator},"get")});Object.defineProperty(m,"SOURCE_VARIABLE",{enumerable:!0,get:o(function(){return fI.SOURCE_VARIABLE},"get")});var pq=db();Object.defineProperty(m,"NoteToRDFConverter",{enumerable:!0,get:o(function(){return pq.NoteToRDFConverter},"get")});var uw=Bc();Object.defineProperty(m,"ExoQLParser",{enumerable:!0,get:o(function(){return uw.ExoQLParser},"get")});Object.defineProperty(m,"SPARQLParser",{enumerable:!0,get:o(function(){return uw.SPARQLParser},"get")});Object.defineProperty(m,"SPARQLParseError",{enumerable:!0,get:o(function(){return uw.SPARQLParseError},"get")});var dI=i1();Object.defineProperty(m,"DescribeOptionsTransformer",{enumerable:!0,get:o(function(){return dI.DescribeOptionsTransformer},"get")});Object.defineProperty(m,"DescribeOptionsTransformerError",{enumerable:!0,get:o(function(){return dI.DescribeOptionsTransformerError},"get")});var hI=Uc();Object.defineProperty(m,"ExoQLAlgebraTranslator",{enumerable:!0,get:o(function(){return hI.ExoQLAlgebraTranslator},"get")});Object.defineProperty(m,"AlgebraTranslator",{enumerable:!0,get:o(function(){return hI.AlgebraTranslator},"get")});var mq=dC();Object.defineProperty(m,"AlgebraOptimizer",{enumerable:!0,get:o(function(){return mq.AlgebraOptimizer},"get")});var gq=hC();Object.defineProperty(m,"AlgebraSerializer",{enumerable:!0,get:o(function(){return gq.AlgebraSerializer},"get")});var yq=w1();Object.defineProperty(m,"BGPExecutor",{enumerable:!0,get:o(function(){return yq.BGPExecutor},"get")});var _q=Lp();Object.defineProperty(m,"FilterExecutor",{enumerable:!0,get:o(function(){return _q.FilterExecutor},"get")});var Sq=V1();Object.defineProperty(m,"OptionalExecutor",{enumerable:!0,get:o(function(){return Sq.OptionalExecutor},"get")});var vq=q1();Object.defineProperty(m,"UnionExecutor",{enumerable:!0,get:o(function(){return vq.UnionExecutor},"get")});var bq=Z1();Object.defineProperty(m,"ConstructExecutor",{enumerable:!0,get:o(function(){return bq.ConstructExecutor},"get")});var wq=mC();Object.defineProperty(m,"DescribeExecutor",{enumerable:!0,get:o(function(){return wq.DescribeExecutor},"get")});var pI=cl();Object.defineProperty(m,"ExoQLQueryExecutor",{enumerable:!0,get:o(function(){return pI.ExoQLQueryExecutor},"get")});Object.defineProperty(m,"QueryExecutor",{enumerable:!0,get:o(function(){return pI.QueryExecutor},"get")});var mI=yC();Object.defineProperty(m,"UpdateExecutor",{enumerable:!0,get:o(function(){return mI.UpdateExecutor},"get")});Object.defineProperty(m,"UpdateExecutorError",{enumerable:!0,get:o(function(){return mI.UpdateExecutorError},"get")});var Eq=us();Object.defineProperty(m,"SolutionMapping",{enumerable:!0,get:o(function(){return Eq.SolutionMapping},"get")});var Tq=Np();Object.defineProperty(m,"BuiltInFunctions",{enumerable:!0,get:o(function(){return Tq.BuiltInFunctions},"get")});var Aq=SC();Object.defineProperty(m,"AggregateFunctions",{enumerable:!0,get:o(function(){return Aq.AggregateFunctions},"get")});var gI=z1();Object.defineProperty(m,"CustomAggregateRegistry",{enumerable:!0,get:o(function(){return gI.CustomAggregateRegistry},"get")});Object.defineProperty(m,"CustomAggregateError",{enumerable:!0,get:o(function(){return gI.CustomAggregateError},"get")});var Ts=H1();Object.defineProperty(m,"BUILT_IN_AGGREGATES",{enumerable:!0,get:o(function(){return Ts.BUILT_IN_AGGREGATES},"get")});Object.defineProperty(m,"EXO_AGGREGATE_NS",{enumerable:!0,get:o(function(){return Ts.EXO_AGGREGATE_NS},"get")});Object.defineProperty(m,"medianAggregate",{enumerable:!0,get:o(function(){return Ts.medianAggregate},"get")});Object.defineProperty(m,"varianceAggregate",{enumerable:!0,get:o(function(){return Ts.varianceAggregate},"get")});Object.defineProperty(m,"stddevAggregate",{enumerable:!0,get:o(function(){return Ts.stddevAggregate},"get")});Object.defineProperty(m,"modeAggregate",{enumerable:!0,get:o(function(){return Ts.modeAggregate},"get")});Object.defineProperty(m,"createPercentileAggregate",{enumerable:!0,get:o(function(){return Ts.createPercentileAggregate},"get")});Object.defineProperty(m,"getNumericValue",{enumerable:!0,get:o(function(){return Ts.getNumericValue},"get")});Object.defineProperty(m,"createDecimalLiteral",{enumerable:!0,get:o(function(){return Ts.createDecimalLiteral},"get")});Object.defineProperty(m,"createDoubleLiteral",{enumerable:!0,get:o(function(){return Ts.createDoubleLiteral},"get")});var xq=vC();Object.defineProperty(m,"QueryPlanCache",{enumerable:!0,get:o(function(){return xq.QueryPlanCache},"get")});var yI=bC();Object.defineProperty(m,"SPARQLResultCache",{enumerable:!0,get:o(function(){return yI.SPARQLResultCache},"get")});Object.defineProperty(m,"createSPARQLResultCache",{enumerable:!0,get:o(function(){return yI.createSPARQLResultCache},"get")});var _I=wC();Object.defineProperty(m,"IncrementalIndexer",{enumerable:!0,get:o(function(){return _I.IncrementalIndexer},"get")});Object.defineProperty(m,"createIncrementalIndexer",{enumerable:!0,get:o(function(){return _I.createIncrementalIndexer},"get")});var Cq=EC();Object.defineProperty(m,"ResultSerializer",{enumerable:!0,get:o(function(){return Cq.ResultSerializer},"get")});var SI=t1();Object.defineProperty(m,"CaseWhenTransformer",{enumerable:!0,get:o(function(){return SI.CaseWhenTransformer},"get")});Object.defineProperty(m,"CaseWhenTransformerError",{enumerable:!0,get:o(function(){return SI.CaseWhenTransformerError},"get")});var Iq=c1();Object.defineProperty(m,"VaultPrefixTransformer",{enumerable:!0,get:o(function(){return Iq.VaultPrefixTransformer},"get")});var Rq=pb();Object.defineProperty(m,"FilterContainsOptimizer",{enumerable:!0,get:o(function(){return Rq.FilterContainsOptimizer},"get")});var vI=TC();Object.defineProperty(m,"FileNotFoundError",{enumerable:!0,get:o(function(){return vI.FileNotFoundError},"get")});Object.defineProperty(m,"FileAlreadyExistsError",{enumerable:!0,get:o(function(){return vI.FileAlreadyExistsError},"get")});var fw=bS();Object.defineProperty(m,"TripleAlreadyExistsError",{enumerable:!0,get:o(function(){return fw.TripleAlreadyExistsError},"get")});Object.defineProperty(m,"TripleNotFoundError",{enumerable:!0,get:o(function(){return fw.TripleNotFoundError},"get")});Object.defineProperty(m,"TransactionError",{enumerable:!0,get:o(function(){return fw.TransactionError},"get")});var ag=Cb();Object.defineProperty(m,"VaultSettings",{enumerable:!0,get:o(function(){return ag.VaultSettings},"get")});Object.defineProperty(m,"DEFAULT_OWNER_IDENTITY",{enumerable:!0,get:o(function(){return ag.DEFAULT_OWNER_IDENTITY},"get")});Object.defineProperty(m,"DEFAULT_INBOX_FOLDER",{enumerable:!0,get:o(function(){return ag.DEFAULT_INBOX_FOLDER},"get")});Object.defineProperty(m,"DEFAULT_FLEETING_NOTE_CLASS_UID",{enumerable:!0,get:o(function(){return ag.DEFAULT_FLEETING_NOTE_CLASS_UID},"get")});var Pq=wt();Object.defineProperty(m,"DI_TOKENS",{enumerable:!0,get:o(function(){return Pq.DI_TOKENS},"get")});var xf=AC();Object.defineProperty(m,"registerCoreServices",{enumerable:!0,get:o(function(){return xf.registerCoreServices},"get")});Object.defineProperty(m,"createChildContainer",{enumerable:!0,get:o(function(){return xf.createChildContainer},"get")});Object.defineProperty(m,"getContainer",{enumerable:!0,get:o(function(){return xf.getContainer},"get")});Object.defineProperty(m,"resetContainer",{enumerable:!0,get:o(function(){return xf.resetContainer},"get")});Object.defineProperty(m,"container",{enumerable:!0,get:o(function(){return xf.container},"get")});var da=OC();Object.defineProperty(m,"NODE_FLAGS",{enumerable:!0,get:o(function(){return da.NODE_FLAGS},"get")});Object.defineProperty(m,"DEFAULT_COLORS",{enumerable:!0,get:o(function(){return da.DEFAULT_COLORS},"get")});Object.defineProperty(m,"StringTable",{enumerable:!0,get:o(function(){return da.StringTable},"get")});Object.defineProperty(m,"CompactGraphStore",{enumerable:!0,get:o(function(){return da.CompactGraphStore},"get")});Object.defineProperty(m,"MemoryPool",{enumerable:!0,get:o(function(){return da.MemoryPool},"get")});Object.defineProperty(m,"getGlobalPool",{enumerable:!0,get:o(function(){return da.getGlobalPool},"get")});Object.defineProperty(m,"resetGlobalPool",{enumerable:!0,get:o(function(){return da.resetGlobalPool},"get")});Object.defineProperty(m,"StreamingLoader",{enumerable:!0,get:o(function(){return da.StreamingLoader},"get")});Object.defineProperty(m,"createStreamingSource",{enumerable:!0,get:o(function(){return da.createStreamingSource},"get")});var bI=FC();Object.defineProperty(m,"ExoQL",{enumerable:!0,get:o(function(){return bI.ExoQL},"get")});Object.defineProperty(m,"ExoQLError",{enumerable:!0,get:o(function(){return bI.ExoQLError},"get")});var Ol=Um();Object.defineProperty(m,"RELATION_COLUMN_SET_CLASS_IRI",{enumerable:!0,get:o(function(){return Ol.RELATION_COLUMN_SET_CLASS_IRI},"get")});Object.defineProperty(m,"RELATION_COLUMN_SET_CLASS_UID",{enumerable:!0,get:o(function(){return Ol.RELATION_COLUMN_SET_CLASS_UID},"get")});Object.defineProperty(m,"createRelationColumnSetFromFrontmatter",{enumerable:!0,get:o(function(){return Ol.createRelationColumnSetFromFrontmatter},"get")});Object.defineProperty(m,"isRelationColumnSet",{enumerable:!0,get:o(function(){return Ol.isRelationColumnSet},"get")});Object.defineProperty(m,"isRelationColumnSetFrontmatter",{enumerable:!0,get:o(function(){return Ol.isRelationColumnSetFrontmatter},"get")});Object.defineProperty(m,"normalizeRelationColumnSetRef",{enumerable:!0,get:o(function(){return Ol.normalizeRef},"get")});var Oq=VC();Object.defineProperty(m,"RelationColumnSetResolver",{enumerable:!0,get:o(function(){return Oq.RelationColumnSetResolver},"get")});var Cf=Um();Object.defineProperty(m,"LAYOUT_CLASS_IRI",{enumerable:!0,get:o(function(){return Cf.LAYOUT_CLASS_IRI},"get")});Object.defineProperty(m,"LAYOUT_CLASS_UID",{enumerable:!0,get:o(function(){return Cf.LAYOUT_CLASS_UID},"get")});Object.defineProperty(m,"createLayoutFromFrontmatter",{enumerable:!0,get:o(function(){return Cf.createLayoutFromFrontmatter},"get")});Object.defineProperty(m,"isLayout",{enumerable:!0,get:o(function(){return Cf.isLayout},"get")});Object.defineProperty(m,"isLayoutFrontmatter",{enumerable:!0,get:o(function(){return Cf.isLayoutFrontmatter},"get")});var Qa=Um();Object.defineProperty(m,"BACKLINKS_TABLE_BLOCK_CLASS_IRI",{enumerable:!0,get:o(function(){return Qa.BACKLINKS_TABLE_BLOCK_CLASS_IRI},"get")});Object.defineProperty(m,"BACKLINKS_TABLE_BLOCK_CLASS_UID",{enumerable:!0,get:o(function(){return Qa.BACKLINKS_TABLE_BLOCK_CLASS_UID},"get")});Object.defineProperty(m,"PROPERTIES_BLOCK_CLASS_IRI",{enumerable:!0,get:o(function(){return Qa.PROPERTIES_BLOCK_CLASS_IRI},"get")});Object.defineProperty(m,"PROPERTIES_BLOCK_CLASS_UID",{enumerable:!0,get:o(function(){return Qa.PROPERTIES_BLOCK_CLASS_UID},"get")});Object.defineProperty(m,"createLayoutBlockFromFrontmatter",{enumerable:!0,get:o(function(){return Qa.createLayoutBlockFromFrontmatter},"get")});Object.defineProperty(m,"isBacklinksTableBlock",{enumerable:!0,get:o(function(){return Qa.isBacklinksTableBlock},"get")});Object.defineProperty(m,"isLayoutBlockFrontmatter",{enumerable:!0,get:o(function(){return Qa.isLayoutBlockFrontmatter},"get")});Object.defineProperty(m,"isPropertiesBlock",{enumerable:!0,get:o(function(){return Qa.isPropertiesBlock},"get")});var wI=qC();Object.defineProperty(m,"LayoutSelector",{enumerable:!0,get:o(function(){return wI.LayoutSelector},"get")});Object.defineProperty(m,"selectByPriority",{enumerable:!0,get:o(function(){return wI.selectByPriority},"get")});ii(JC(),m);var Fq=tw();Object.defineProperty(m,"ShapeLoader",{enumerable:!0,get:o(function(){return Fq.ShapeLoader},"get")});var Dq=Xb();Object.defineProperty(m,"ShapeRegistry",{enumerable:!0,get:o(function(){return Dq.ShapeRegistry},"get")});var EI=nw();Object.defineProperty(m,"shaclValidate",{enumerable:!0,get:o(function(){return EI.validate},"get")});Object.defineProperty(m,"ShaclShapeRegistry",{enumerable:!0,get:o(function(){return EI.ShapeRegistry},"get")});ii(tI(),m);var dw=nI();Object.defineProperty(m,"ValidatorDaemon",{enumerable:!0,get:o(function(){return dw.ValidatorDaemon},"get")});Object.defineProperty(m,"DEFAULT_SOCKET_PATH",{enumerable:!0,get:o(function(){return dw.DEFAULT_SOCKET_PATH},"get")});Object.defineProperty(m,"IDLE_TIMEOUT_MS",{enumerable:!0,get:o(function(){return dw.IDLE_TIMEOUT_MS},"get")});var Nq=ow();Object.defineProperty(m,"TripleClassHierarchy",{enumerable:!0,get:o(function(){return Nq.ClassHierarchy},"get")})});var wr=S(hw=>{"use strict";hw.fromCallback=function(n){return Object.defineProperty(function(...e){if(typeof e[e.length-1]=="function")n.apply(this,e);else return new Promise((t,r)=>{e.push((i,s)=>i!=null?r(i):t(s)),n.apply(this,e)})},"name",{value:n.name})};hw.fromPromise=function(n){return Object.defineProperty(function(...e){let t=e[e.length-1];if(typeof t!="function")return n.apply(this,e);e.pop(),n.apply(this,e).then(r=>t(null,r),t)},"name",{value:n.name})}});var AI=S((Cle,TI)=>{var Ka=require("constants"),Lq=process.cwd,og=null,kq=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return og||(og=Lq.call(process)),og};try{process.cwd()}catch{}typeof process.chdir=="function"&&(pw=process.chdir,process.chdir=function(n){og=null,pw.call(process,n)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,pw));var pw;TI.exports=Mq;function Mq(n){Ka.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&e(n),n.lutimes||t(n),n.chown=s(n.chown),n.fchown=s(n.fchown),n.lchown=s(n.lchown),n.chmod=r(n.chmod),n.fchmod=r(n.fchmod),n.lchmod=r(n.lchmod),n.chownSync=a(n.chownSync),n.fchownSync=a(n.fchownSync),n.lchownSync=a(n.lchownSync),n.chmodSync=i(n.chmodSync),n.fchmodSync=i(n.fchmodSync),n.lchmodSync=i(n.lchmodSync),n.stat=c(n.stat),n.fstat=c(n.fstat),n.lstat=c(n.lstat),n.statSync=l(n.statSync),n.fstatSync=l(n.fstatSync),n.lstatSync=l(n.lstatSync),n.chmod&&!n.lchmod&&(n.lchmod=function(f,d,h){h&&process.nextTick(h)},n.lchmodSync=function(){}),n.chown&&!n.lchown&&(n.lchown=function(f,d,h,p){p&&process.nextTick(p)},n.lchownSync=function(){}),kq==="win32"&&(n.rename=typeof n.rename!="function"?n.rename:(function(f){function d(h,p,y){var v=Date.now(),w=0;f(h,p,o(function b(A){if(A&&(A.code==="EACCES"||A.code==="EPERM"||A.code==="EBUSY")&&Date.now()-v<6e4){setTimeout(function(){n.stat(p,function(I,j){I&&I.code==="ENOENT"?f(h,p,b):y(A)})},w),w<100&&(w+=10);return}y&&y(A)},"CB"))}return o(d,"rename"),Object.setPrototypeOf&&Object.setPrototypeOf(d,f),d})(n.rename)),n.read=typeof n.read!="function"?n.read:(function(f){function d(h,p,y,v,w,b){var A;if(b&&typeof b=="function"){var I=0;A=o(function(j,V,te){if(j&&j.code==="EAGAIN"&&I<10)return I++,f.call(n,h,p,y,v,w,A);b.apply(this,arguments)},"callback")}return f.call(n,h,p,y,v,w,A)}return o(d,"read"),Object.setPrototypeOf&&Object.setPrototypeOf(d,f),d})(n.read),n.readSync=typeof n.readSync!="function"?n.readSync:(function(f){return function(d,h,p,y,v){for(var w=0;;)try{return f.call(n,d,h,p,y,v)}catch(b){if(b.code==="EAGAIN"&&w<10){w++;continue}throw b}}})(n.readSync);function e(f){f.lchmod=function(d,h,p){f.open(d,Ka.O_WRONLY|Ka.O_SYMLINK,h,function(y,v){if(y){p&&p(y);return}f.fchmod(v,h,function(w){f.close(v,function(b){p&&p(w||b)})})})},f.lchmodSync=function(d,h){var p=f.openSync(d,Ka.O_WRONLY|Ka.O_SYMLINK,h),y=!0,v;try{v=f.fchmodSync(p,h),y=!1}finally{if(y)try{f.closeSync(p)}catch{}else f.closeSync(p)}return v}}o(e,"patchLchmod");function t(f){Ka.hasOwnProperty("O_SYMLINK")&&f.futimes?(f.lutimes=function(d,h,p,y){f.open(d,Ka.O_SYMLINK,function(v,w){if(v){y&&y(v);return}f.futimes(w,h,p,function(b){f.close(w,function(A){y&&y(b||A)})})})},f.lutimesSync=function(d,h,p){var y=f.openSync(d,Ka.O_SYMLINK),v,w=!0;try{v=f.futimesSync(y,h,p),w=!1}finally{if(w)try{f.closeSync(y)}catch{}else f.closeSync(y)}return v}):f.futimes&&(f.lutimes=function(d,h,p,y){y&&process.nextTick(y)},f.lutimesSync=function(){})}o(t,"patchLutimes");function r(f){return f&&function(d,h,p){return f.call(n,d,h,function(y){u(y)&&(y=null),p&&p.apply(this,arguments)})}}o(r,"chmodFix");function i(f){return f&&function(d,h){try{return f.call(n,d,h)}catch(p){if(!u(p))throw p}}}o(i,"chmodFixSync");function s(f){return f&&function(d,h,p,y){return f.call(n,d,h,p,function(v){u(v)&&(v=null),y&&y.apply(this,arguments)})}}o(s,"chownFix");function a(f){return f&&function(d,h,p){try{return f.call(n,d,h,p)}catch(y){if(!u(y))throw y}}}o(a,"chownFixSync");function c(f){return f&&function(d,h,p){typeof h=="function"&&(p=h,h=null);function y(v,w){w&&(w.uid<0&&(w.uid+=4294967296),w.gid<0&&(w.gid+=4294967296)),p&&p.apply(this,arguments)}return o(y,"callback"),h?f.call(n,d,h,y):f.call(n,d,y)}}o(c,"statFix");function l(f){return f&&function(d,h){var p=h?f.call(n,d,h):f.call(n,d);return p&&(p.uid<0&&(p.uid+=4294967296),p.gid<0&&(p.gid+=4294967296)),p}}o(l,"statFixSync");function u(f){if(!f||f.code==="ENOSYS")return!0;var d=!process.getuid||process.getuid()!==0;return!!(d&&(f.code==="EINVAL"||f.code==="EPERM"))}o(u,"chownErOk")}o(Mq,"patch")});var II=S((Rle,CI)=>{var xI=require("stream").Stream;CI.exports=jq;function jq(n){return{ReadStream:e,WriteStream:t};function e(r,i){if(!(this instanceof e))return new e(r,i);xI.call(this);var s=this;this.path=r,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,i=i||{};for(var a=Object.keys(i),c=0,l=a.length;c<l;c++){var u=a[c];this[u]=i[u]}if(this.encoding&&this.setEncoding(this.encoding),this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!="number")throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){s._read()});return}n.open(this.path,this.flags,this.mode,function(f,d){if(f){s.emit("error",f),s.readable=!1;return}s.fd=d,s.emit("open",d),s._read()})}function t(r,i){if(!(this instanceof t))return new t(r,i);xI.call(this),this.path=r,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var s=Object.keys(i),a=0,c=s.length;a<c;a++){var l=s[a];this[l]=i[l]}if(this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=n.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}o(jq,"legacy")});var PI=S((Ole,RI)=>{"use strict";RI.exports=Bq;var $q=Object.getPrototypeOf||function(n){return n.__proto__};function Bq(n){if(n===null||typeof n!="object")return n;if(n instanceof Object)var e={__proto__:$q(n)};else var e=Object.create(null);return Object.getOwnPropertyNames(n).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}),e}o(Bq,"clone")});var Dl=S((Dle,yw)=>{var Bt=require("fs"),Vq=AI(),Uq=II(),qq=PI(),cg=require("util"),$r,ug;typeof Symbol=="function"&&typeof Symbol.for=="function"?($r=Symbol.for("graceful-fs.queue"),ug=Symbol.for("graceful-fs.previous")):($r="___graceful-fs.queue",ug="___graceful-fs.previous");function Wq(){}o(Wq,"noop");function DI(n,e){Object.defineProperty(n,$r,{get:o(function(){return e},"get")})}o(DI,"publishQueue");var Xo=Wq;cg.debuglog?Xo=cg.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(Xo=o(function(){var n=cg.format.apply(cg,arguments);n="GFS4: "+n.split(/\n/).join(`
458
+ GFS4: `),console.error(n)},"debug"));Bt[$r]||(OI=global[$r]||[],DI(Bt,OI),Bt.close=(function(n){function e(t,r){return n.call(Bt,t,function(i){i||FI(),typeof r=="function"&&r.apply(this,arguments)})}return o(e,"close"),Object.defineProperty(e,ug,{value:n}),e})(Bt.close),Bt.closeSync=(function(n){function e(t){n.apply(Bt,arguments),FI()}return o(e,"closeSync"),Object.defineProperty(e,ug,{value:n}),e})(Bt.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){Xo(Bt[$r]),require("assert").equal(Bt[$r].length,0)}));var OI;global[$r]||DI(global,Bt[$r]);yw.exports=mw(qq(Bt));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!Bt.__patched&&(yw.exports=mw(Bt),Bt.__patched=!0);function mw(n){Vq(n),n.gracefulify=mw,n.createReadStream=V,n.createWriteStream=te;var e=n.readFile;n.readFile=t;function t(F,$,re){return typeof $=="function"&&(re=$,$=null),Ye(F,$,re);function Ye(at,Ot,ot,lt){return e(at,Ot,function(Xe){Xe&&(Xe.code==="EMFILE"||Xe.code==="ENFILE")?Fl([Ye,[at,Ot,ot],Xe,lt||Date.now(),Date.now()]):typeof ot=="function"&&ot.apply(this,arguments)})}o(Ye,"go$readFile")}o(t,"readFile");var r=n.writeFile;n.writeFile=i;function i(F,$,re,Ye){return typeof re=="function"&&(Ye=re,re=null),at(F,$,re,Ye);function at(Ot,ot,lt,Xe,se){return r(Ot,ot,lt,function(U){U&&(U.code==="EMFILE"||U.code==="ENFILE")?Fl([at,[Ot,ot,lt,Xe],U,se||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}o(at,"go$writeFile")}o(i,"writeFile");var s=n.appendFile;s&&(n.appendFile=a);function a(F,$,re,Ye){return typeof re=="function"&&(Ye=re,re=null),at(F,$,re,Ye);function at(Ot,ot,lt,Xe,se){return s(Ot,ot,lt,function(U){U&&(U.code==="EMFILE"||U.code==="ENFILE")?Fl([at,[Ot,ot,lt,Xe],U,se||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}o(at,"go$appendFile")}o(a,"appendFile");var c=n.copyFile;c&&(n.copyFile=l);function l(F,$,re,Ye){return typeof re=="function"&&(Ye=re,re=0),at(F,$,re,Ye);function at(Ot,ot,lt,Xe,se){return c(Ot,ot,lt,function(U){U&&(U.code==="EMFILE"||U.code==="ENFILE")?Fl([at,[Ot,ot,lt,Xe],U,se||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}o(at,"go$copyFile")}o(l,"copyFile");var u=n.readdir;n.readdir=d;var f=/^v[0-5]\./;function d(F,$,re){typeof $=="function"&&(re=$,$=null);var Ye=f.test(process.version)?o(function(ot,lt,Xe,se){return u(ot,at(ot,lt,Xe,se))},"go$readdir"):o(function(ot,lt,Xe,se){return u(ot,lt,at(ot,lt,Xe,se))},"go$readdir");return Ye(F,$,re);function at(Ot,ot,lt,Xe){return function(se,U){se&&(se.code==="EMFILE"||se.code==="ENFILE")?Fl([Ye,[Ot,ot,lt],se,Xe||Date.now(),Date.now()]):(U&&U.sort&&U.sort(),typeof lt=="function"&&lt.call(this,se,U))}}}if(o(d,"readdir"),process.version.substr(0,4)==="v0.8"){var h=Uq(n);b=h.ReadStream,I=h.WriteStream}var p=n.ReadStream;p&&(b.prototype=Object.create(p.prototype),b.prototype.open=A);var y=n.WriteStream;y&&(I.prototype=Object.create(y.prototype),I.prototype.open=j),Object.defineProperty(n,"ReadStream",{get:o(function(){return b},"get"),set:o(function(F){b=F},"set"),enumerable:!0,configurable:!0}),Object.defineProperty(n,"WriteStream",{get:o(function(){return I},"get"),set:o(function(F){I=F},"set"),enumerable:!0,configurable:!0});var v=b;Object.defineProperty(n,"FileReadStream",{get:o(function(){return v},"get"),set:o(function(F){v=F},"set"),enumerable:!0,configurable:!0});var w=I;Object.defineProperty(n,"FileWriteStream",{get:o(function(){return w},"get"),set:o(function(F){w=F},"set"),enumerable:!0,configurable:!0});function b(F,$){return this instanceof b?(p.apply(this,arguments),this):b.apply(Object.create(b.prototype),arguments)}o(b,"ReadStream");function A(){var F=this;G(F.path,F.flags,F.mode,function($,re){$?(F.autoClose&&F.destroy(),F.emit("error",$)):(F.fd=re,F.emit("open",re),F.read())})}o(A,"ReadStream$open");function I(F,$){return this instanceof I?(y.apply(this,arguments),this):I.apply(Object.create(I.prototype),arguments)}o(I,"WriteStream");function j(){var F=this;G(F.path,F.flags,F.mode,function($,re){$?(F.destroy(),F.emit("error",$)):(F.fd=re,F.emit("open",re))})}o(j,"WriteStream$open");function V(F,$){return new n.ReadStream(F,$)}o(V,"createReadStream");function te(F,$){return new n.WriteStream(F,$)}o(te,"createWriteStream");var z=n.open;n.open=G;function G(F,$,re,Ye){return typeof re=="function"&&(Ye=re,re=null),at(F,$,re,Ye);function at(Ot,ot,lt,Xe,se){return z(Ot,ot,lt,function(U,ut){U&&(U.code==="EMFILE"||U.code==="ENFILE")?Fl([at,[Ot,ot,lt,Xe],U,se||Date.now(),Date.now()]):typeof Xe=="function"&&Xe.apply(this,arguments)})}o(at,"go$open")}return o(G,"open"),n}o(mw,"patch");function Fl(n){Xo("ENQUEUE",n[0].name,n[1]),Bt[$r].push(n),gw()}o(Fl,"enqueue");var lg;function FI(){for(var n=Date.now(),e=0;e<Bt[$r].length;++e)Bt[$r][e].length>2&&(Bt[$r][e][3]=n,Bt[$r][e][4]=n);gw()}o(FI,"resetQueue");function gw(){if(clearTimeout(lg),lg=void 0,Bt[$r].length!==0){var n=Bt[$r].shift(),e=n[0],t=n[1],r=n[2],i=n[3],s=n[4];if(i===void 0)Xo("RETRY",e.name,t),e.apply(null,t);else if(Date.now()-i>=6e4){Xo("TIMEOUT",e.name,t);var a=t.pop();typeof a=="function"&&a.call(null,r)}else{var c=Date.now()-s,l=Math.max(s-i,1),u=Math.min(l*1.2,100);c>=u?(Xo("RETRY",e.name,t),e.apply(null,t.concat([i]))):Bt[$r].push(n)}lg===void 0&&(lg=setTimeout(gw,0))}}o(gw,"retry")});var gn=S(ha=>{"use strict";var NI=wr().fromCallback,mn=Dl(),Gq=["access","appendFile","chmod","chown","close","copyFile","cp","fchmod","fchown","fdatasync","fstat","fsync","ftruncate","futimes","glob","lchmod","lchown","lutimes","link","lstat","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","statfs","symlink","truncate","unlink","utimes","writeFile"].filter(n=>typeof mn[n]=="function");Object.assign(ha,mn);Gq.forEach(n=>{ha[n]=NI(mn[n])});ha.exists=function(n,e){return typeof e=="function"?mn.exists(n,e):new Promise(t=>mn.exists(n,t))};ha.read=function(n,e,t,r,i,s){return typeof s=="function"?mn.read(n,e,t,r,i,s):new Promise((a,c)=>{mn.read(n,e,t,r,i,(l,u,f)=>{if(l)return c(l);a({bytesRead:u,buffer:f})})})};ha.write=function(n,e,...t){return typeof t[t.length-1]=="function"?mn.write(n,e,...t):new Promise((r,i)=>{mn.write(n,e,...t,(s,a,c)=>{if(s)return i(s);r({bytesWritten:a,buffer:c})})})};ha.readv=function(n,e,...t){return typeof t[t.length-1]=="function"?mn.readv(n,e,...t):new Promise((r,i)=>{mn.readv(n,e,...t,(s,a,c)=>{if(s)return i(s);r({bytesRead:a,buffers:c})})})};ha.writev=function(n,e,...t){return typeof t[t.length-1]=="function"?mn.writev(n,e,...t):new Promise((r,i)=>{mn.writev(n,e,...t,(s,a,c)=>{if(s)return i(s);r({bytesWritten:a,buffers:c})})})};typeof mn.realpath.native=="function"?ha.realpath.native=NI(mn.realpath.native):process.emitWarning("fs.realpath.native is not a function. Is fs being monkey-patched?","Warning","fs-extra-WARN0003")});var kI=S((kle,LI)=>{"use strict";var zq=require("path");LI.exports.checkPath=o(function(e){if(process.platform==="win32"&&/[<>:"|?*]/.test(e.replace(zq.parse(e).root,""))){let r=new Error(`Path contains invalid characters: ${e}`);throw r.code="EINVAL",r}},"checkPath")});var BI=S((jle,_w)=>{"use strict";var MI=gn(),{checkPath:jI}=kI(),$I=o(n=>{let e={mode:511};return typeof n=="number"?n:{...e,...n}.mode},"getMode");_w.exports.makeDir=async(n,e)=>(jI(n),MI.mkdir(n,{mode:$I(e),recursive:!0}));_w.exports.makeDirSync=(n,e)=>(jI(n),MI.mkdirSync(n,{mode:$I(e),recursive:!0}))});var Ui=S((Ble,VI)=>{"use strict";var Hq=wr().fromPromise,{makeDir:Qq,makeDirSync:Sw}=BI(),vw=Hq(Qq);VI.exports={mkdirs:vw,mkdirsSync:Sw,mkdirp:vw,mkdirpSync:Sw,ensureDir:vw,ensureDirSync:Sw}});var Ya=S((Vle,qI)=>{"use strict";var Kq=wr().fromPromise,UI=gn();function Yq(n){return UI.access(n).then(()=>!0).catch(()=>!1)}o(Yq,"pathExists");qI.exports={pathExists:Kq(Yq),pathExistsSync:UI.existsSync}});var bw=S((qle,WI)=>{"use strict";var Nl=gn(),Xq=wr().fromPromise;async function Jq(n,e,t){let r=await Nl.open(n,"r+"),i=null;try{await Nl.futimes(r,e,t)}finally{try{await Nl.close(r)}catch(s){i=s}}if(i)throw i}o(Jq,"utimesMillis");function Zq(n,e,t){let r=Nl.openSync(n,"r+");return Nl.futimesSync(r,e,t),Nl.closeSync(r)}o(Zq,"utimesMillisSync");WI.exports={utimesMillis:Xq(Jq),utimesMillisSync:Zq}});var Jo=S((Gle,QI)=>{"use strict";var Ll=gn(),Er=require("path"),GI=wr().fromPromise;function eW(n,e,t){let r=t.dereference?i=>Ll.stat(i,{bigint:!0}):i=>Ll.lstat(i,{bigint:!0});return Promise.all([r(n),r(e).catch(i=>{if(i.code==="ENOENT")return null;throw i})]).then(([i,s])=>({srcStat:i,destStat:s}))}o(eW,"getStats");function tW(n,e,t){let r,i=t.dereference?a=>Ll.statSync(a,{bigint:!0}):a=>Ll.lstatSync(a,{bigint:!0}),s=i(n);try{r=i(e)}catch(a){if(a.code==="ENOENT")return{srcStat:s,destStat:null};throw a}return{srcStat:s,destStat:r}}o(tW,"getStatsSync");async function rW(n,e,t,r){let{srcStat:i,destStat:s}=await eW(n,e,r);if(s){if(If(i,s)){let a=Er.basename(n),c=Er.basename(e);if(t==="move"&&a!==c&&a.toLowerCase()===c.toLowerCase())return{srcStat:i,destStat:s,isChangingCase:!0};throw new Error("Source and destination must not be the same.")}if(i.isDirectory()&&!s.isDirectory())throw new Error(`Cannot overwrite non-directory '${e}' with directory '${n}'.`);if(!i.isDirectory()&&s.isDirectory())throw new Error(`Cannot overwrite directory '${e}' with non-directory '${n}'.`)}if(i.isDirectory()&&ww(n,e))throw new Error(fg(n,e,t));return{srcStat:i,destStat:s}}o(rW,"checkPaths");function nW(n,e,t,r){let{srcStat:i,destStat:s}=tW(n,e,r);if(s){if(If(i,s)){let a=Er.basename(n),c=Er.basename(e);if(t==="move"&&a!==c&&a.toLowerCase()===c.toLowerCase())return{srcStat:i,destStat:s,isChangingCase:!0};throw new Error("Source and destination must not be the same.")}if(i.isDirectory()&&!s.isDirectory())throw new Error(`Cannot overwrite non-directory '${e}' with directory '${n}'.`);if(!i.isDirectory()&&s.isDirectory())throw new Error(`Cannot overwrite directory '${e}' with non-directory '${n}'.`)}if(i.isDirectory()&&ww(n,e))throw new Error(fg(n,e,t));return{srcStat:i,destStat:s}}o(nW,"checkPathsSync");async function zI(n,e,t,r){let i=Er.resolve(Er.dirname(n)),s=Er.resolve(Er.dirname(t));if(s===i||s===Er.parse(s).root)return;let a;try{a=await Ll.stat(s,{bigint:!0})}catch(c){if(c.code==="ENOENT")return;throw c}if(If(e,a))throw new Error(fg(n,t,r));return zI(n,e,s,r)}o(zI,"checkParentPaths");function HI(n,e,t,r){let i=Er.resolve(Er.dirname(n)),s=Er.resolve(Er.dirname(t));if(s===i||s===Er.parse(s).root)return;let a;try{a=Ll.statSync(s,{bigint:!0})}catch(c){if(c.code==="ENOENT")return;throw c}if(If(e,a))throw new Error(fg(n,t,r));return HI(n,e,s,r)}o(HI,"checkParentPathsSync");function If(n,e){return e.ino!==void 0&&e.dev!==void 0&&e.ino===n.ino&&e.dev===n.dev}o(If,"areIdentical");function ww(n,e){let t=Er.resolve(n).split(Er.sep).filter(i=>i),r=Er.resolve(e).split(Er.sep).filter(i=>i);return t.every((i,s)=>r[s]===i)}o(ww,"isSrcSubdir");function fg(n,e,t){return`Cannot ${t} '${n}' to a subdirectory of itself, '${e}'.`}o(fg,"errMsg");QI.exports={checkPaths:GI(rW),checkPathsSync:nW,checkParentPaths:GI(zI),checkParentPathsSync:HI,isSrcSubdir:ww,areIdentical:If}});var YI=S((Hle,KI)=>{"use strict";async function iW(n,e){let t=[];for await(let r of n)t.push(e(r).then(()=>null,i=>i??new Error("unknown error")));await Promise.all(t.map(r=>r.then(i=>{if(i!==null)throw i})))}o(iW,"asyncIteratorConcurrentProcess");KI.exports={asyncIteratorConcurrentProcess:iW}});var tR=S((Kle,eR)=>{"use strict";var Jr=gn(),Rf=require("path"),{mkdirs:sW}=Ui(),{pathExists:aW}=Ya(),{utimesMillis:oW}=bw(),Pf=Jo(),{asyncIteratorConcurrentProcess:cW}=YI();async function lW(n,e,t={}){typeof t=="function"&&(t={filter:t}),t.clobber="clobber"in t?!!t.clobber:!0,t.overwrite="overwrite"in t?!!t.overwrite:t.clobber,t.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning(`Using the preserveTimestamps option in 32-bit node is not recommended;
459
459
 
460
460
  see https://github.com/jprichardson/node-fs-extra/issues/269`,"Warning","fs-extra-WARN0001");let{srcStat:r,destStat:i}=await Pf.checkPaths(n,e,"copy",t);if(await Pf.checkParentPaths(n,r,e,"copy"),!await JI(n,e,t))return;let a=Rf.dirname(e);await aW(a)||await sW(a),await ZI(i,n,e,t)}o(lW,"copy");async function JI(n,e,t){return t.filter?t.filter(n,e):!0}o(JI,"runFilter");async function ZI(n,e,t,r){let s=await(r.dereference?Jr.stat:Jr.lstat)(e);if(s.isDirectory())return hW(s,n,e,t,r);if(s.isFile()||s.isCharacterDevice()||s.isBlockDevice())return uW(s,n,e,t,r);if(s.isSymbolicLink())return pW(n,e,t,r);throw s.isSocket()?new Error(`Cannot copy a socket file: ${e}`):s.isFIFO()?new Error(`Cannot copy a FIFO pipe: ${e}`):new Error(`Unknown file: ${e}`)}o(ZI,"getStatsAndPerformCopy");async function uW(n,e,t,r,i){if(!e)return XI(n,t,r,i);if(i.overwrite)return await Jr.unlink(r),XI(n,t,r,i);if(i.errorOnExist)throw new Error(`'${r}' already exists`)}o(uW,"onFile");async function XI(n,e,t,r){if(await Jr.copyFile(e,t),r.preserveTimestamps){fW(n.mode)&&await dW(t,n.mode);let i=await Jr.stat(e);await oW(t,i.atime,i.mtime)}return Jr.chmod(t,n.mode)}o(XI,"copyFile");function fW(n){return(n&128)===0}o(fW,"fileIsNotWritable");function dW(n,e){return Jr.chmod(n,e|128)}o(dW,"makeFileWritable");async function hW(n,e,t,r,i){e||await Jr.mkdir(r),await cW(await Jr.opendir(t),async s=>{let a=Rf.join(t,s.name),c=Rf.join(r,s.name);if(await JI(a,c,i)){let{destStat:u}=await Pf.checkPaths(a,c,"copy",i);await ZI(u,a,c,i)}}),e||await Jr.chmod(r,n.mode)}o(hW,"onDir");async function pW(n,e,t,r){let i=await Jr.readlink(e);if(r.dereference&&(i=Rf.resolve(process.cwd(),i)),!n)return Jr.symlink(i,t);let s=null;try{s=await Jr.readlink(t)}catch(a){if(a.code==="EINVAL"||a.code==="UNKNOWN")return Jr.symlink(i,t);throw a}if(r.dereference&&(s=Rf.resolve(process.cwd(),s)),Pf.isSrcSubdir(i,s))throw new Error(`Cannot copy '${i}' to a subdirectory of itself, '${s}'.`);if(Pf.isSrcSubdir(s,i))throw new Error(`Cannot overwrite '${s}' with '${i}'.`);return await Jr.unlink(t),Jr.symlink(i,t)}o(pW,"onLink");eR.exports=lW});var aR=S((Xle,sR)=>{"use strict";var yn=Dl(),Of=require("path"),mW=Ui().mkdirsSync,gW=bw().utimesMillisSync,Ff=Jo();function yW(n,e,t){typeof t=="function"&&(t={filter:t}),t=t||{},t.clobber="clobber"in t?!!t.clobber:!0,t.overwrite="overwrite"in t?!!t.overwrite:t.clobber,t.preserveTimestamps&&process.arch==="ia32"&&process.emitWarning(`Using the preserveTimestamps option in 32-bit node is not recommended;
461
461
 
462
- see https://github.com/jprichardson/node-fs-extra/issues/269`,"Warning","fs-extra-WARN0002");let{srcStat:r,destStat:i}=Ff.checkPathsSync(n,e,"copy",t);if(Ff.checkParentPathsSync(n,r,e,"copy"),t.filter&&!t.filter(n,e))return;let s=Of.dirname(e);return yn.existsSync(s)||mW(s),rR(i,n,e,t)}o(yW,"copySync");function rR(n,e,t,r){let s=(r.dereference?yn.statSync:yn.lstatSync)(e);if(s.isDirectory())return TW(s,n,e,t,r);if(s.isFile()||s.isCharacterDevice()||s.isBlockDevice())return _W(s,n,e,t,r);if(s.isSymbolicLink())return CW(n,e,t,r);throw s.isSocket()?new Error(`Cannot copy a socket file: ${e}`):s.isFIFO()?new Error(`Cannot copy a FIFO pipe: ${e}`):new Error(`Unknown file: ${e}`)}o(rR,"getStats");function _W(n,e,t,r,i){return e?SW(n,t,r,i):nR(n,t,r,i)}o(_W,"onFile");function SW(n,e,t,r){if(r.overwrite)return yn.unlinkSync(t),nR(n,e,t,r);if(r.errorOnExist)throw new Error(`'${t}' already exists`)}o(SW,"mayCopyFile");function nR(n,e,t,r){return yn.copyFileSync(e,t),r.preserveTimestamps&&vW(n.mode,e,t),Ew(t,n.mode)}o(nR,"copyFile");function vW(n,e,t){return bW(n)&&wW(t,n),EW(e,t)}o(vW,"handleTimestamps");function bW(n){return(n&128)===0}o(bW,"fileIsNotWritable");function wW(n,e){return Ew(n,e|128)}o(wW,"makeFileWritable");function Ew(n,e){return yn.chmodSync(n,e)}o(Ew,"setDestMode");function EW(n,e){let t=yn.statSync(n);return gW(e,t.atime,t.mtime)}o(EW,"setDestTimestamps");function TW(n,e,t,r,i){return e?iR(t,r,i):AW(n.mode,t,r,i)}o(TW,"onDir");function AW(n,e,t,r){return yn.mkdirSync(t),iR(e,t,r),Ew(t,n)}o(AW,"mkDirAndCopy");function iR(n,e,t){let r=yn.opendirSync(n);try{let i;for(;(i=r.readSync())!==null;)xW(i.name,n,e,t)}finally{r.closeSync()}}o(iR,"copyDir");function xW(n,e,t,r){let i=Of.join(e,n),s=Of.join(t,n);if(r.filter&&!r.filter(i,s))return;let{destStat:a}=Ff.checkPathsSync(i,s,"copy",r);return rR(a,i,s,r)}o(xW,"copyDirItem");function CW(n,e,t,r){let i=yn.readlinkSync(e);if(r.dereference&&(i=Of.resolve(process.cwd(),i)),n){let s;try{s=yn.readlinkSync(t)}catch(a){if(a.code==="EINVAL"||a.code==="UNKNOWN")return yn.symlinkSync(i,t);throw a}if(r.dereference&&(s=Of.resolve(process.cwd(),s)),Ff.isSrcSubdir(i,s))throw new Error(`Cannot copy '${i}' to a subdirectory of itself, '${s}'.`);if(Ff.isSrcSubdir(s,i))throw new Error(`Cannot overwrite '${s}' with '${i}'.`);return IW(i,t)}else return yn.symlinkSync(i,t)}o(CW,"onLink");function IW(n,e){return yn.unlinkSync(e),yn.symlinkSync(n,e)}o(IW,"copyLink");sR.exports=yW});var dg=S((Zle,oR)=>{"use strict";var RW=br().fromPromise;oR.exports={copy:RW(tR()),copySync:aR()}});var Df=S((eue,lR)=>{"use strict";var cR=Dl(),PW=br().fromCallback;function OW(n,e){cR.rm(n,{recursive:!0,force:!0},e)}o(OW,"remove");function FW(n){cR.rmSync(n,{recursive:!0,force:!0})}o(FW,"removeSync");lR.exports={remove:PW(OW),removeSync:FW}});var yR=S((rue,gR)=>{"use strict";var DW=br().fromPromise,dR=gn(),hR=require("path"),pR=Ui(),mR=Df(),uR=DW(o(async function(e){let t;try{t=await dR.readdir(e)}catch{return pR.mkdirs(e)}return Promise.all(t.map(r=>mR.remove(hR.join(e,r))))},"emptyDir"));function fR(n){let e;try{e=dR.readdirSync(n)}catch{return pR.mkdirsSync(n)}e.forEach(t=>{t=hR.join(n,t),mR.removeSync(t)})}o(fR,"emptyDirSync");gR.exports={emptyDirSync:fR,emptydirSync:fR,emptyDir:uR,emptydir:uR}});var bR=S((iue,vR)=>{"use strict";var NW=br().fromPromise,_R=require("path"),pa=gn(),SR=Ui();async function LW(n){let e;try{e=await pa.stat(n)}catch{}if(e&&e.isFile())return;let t=_R.dirname(n),r=null;try{r=await pa.stat(t)}catch(i){if(i.code==="ENOENT"){await SR.mkdirs(t),await pa.writeFile(n,"");return}else throw i}r.isDirectory()?await pa.writeFile(n,""):await pa.readdir(t)}o(LW,"createFile");function kW(n){let e;try{e=pa.statSync(n)}catch{}if(e&&e.isFile())return;let t=_R.dirname(n);try{pa.statSync(t).isDirectory()||pa.readdirSync(t)}catch(r){if(r&&r.code==="ENOENT")SR.mkdirsSync(t);else throw r}pa.writeFileSync(n,"")}o(kW,"createFileSync");vR.exports={createFile:NW(LW),createFileSync:kW}});var xR=S((aue,AR)=>{"use strict";var MW=br().fromPromise,wR=require("path"),Xa=gn(),ER=Ui(),{pathExists:jW}=Ya(),{areIdentical:TR}=Jo();async function $W(n,e){let t;try{t=await Xa.lstat(e)}catch{}let r;try{r=await Xa.lstat(n)}catch(a){throw a.message=a.message.replace("lstat","ensureLink"),a}if(t&&TR(r,t))return;let i=wR.dirname(e);await jW(i)||await ER.mkdirs(i),await Xa.link(n,e)}o($W,"createLink");function BW(n,e){let t;try{t=Xa.lstatSync(e)}catch{}try{let s=Xa.lstatSync(n);if(t&&TR(s,t))return}catch(s){throw s.message=s.message.replace("lstat","ensureLink"),s}let r=wR.dirname(e);return Xa.existsSync(r)||ER.mkdirsSync(r),Xa.linkSync(n,e)}o(BW,"createLinkSync");AR.exports={createLink:MW($W),createLinkSync:BW}});var IR=S((cue,CR)=>{"use strict";var Ja=require("path"),Nf=gn(),{pathExists:VW}=Ya(),UW=br().fromPromise;async function qW(n,e){if(Ja.isAbsolute(n)){try{await Nf.lstat(n)}catch(s){throw s.message=s.message.replace("lstat","ensureSymlink"),s}return{toCwd:n,toDst:n}}let t=Ja.dirname(e),r=Ja.join(t,n);if(await VW(r))return{toCwd:r,toDst:n};try{await Nf.lstat(n)}catch(s){throw s.message=s.message.replace("lstat","ensureSymlink"),s}return{toCwd:n,toDst:Ja.relative(t,n)}}o(qW,"symlinkPaths");function WW(n,e){if(Ja.isAbsolute(n)){if(!Nf.existsSync(n))throw new Error("absolute srcpath does not exist");return{toCwd:n,toDst:n}}let t=Ja.dirname(e),r=Ja.join(t,n);if(Nf.existsSync(r))return{toCwd:r,toDst:n};if(!Nf.existsSync(n))throw new Error("relative srcpath does not exist");return{toCwd:n,toDst:Ja.relative(t,n)}}o(WW,"symlinkPathsSync");CR.exports={symlinkPaths:UW(qW),symlinkPathsSync:WW}});var OR=S((uue,PR)=>{"use strict";var RR=gn(),GW=br().fromPromise;async function zW(n,e){if(e)return e;let t;try{t=await RR.lstat(n)}catch{return"file"}return t&&t.isDirectory()?"dir":"file"}o(zW,"symlinkType");function HW(n,e){if(e)return e;let t;try{t=RR.lstatSync(n)}catch{return"file"}return t&&t.isDirectory()?"dir":"file"}o(HW,"symlinkTypeSync");PR.exports={symlinkType:GW(zW),symlinkTypeSync:HW}});var LR=S((due,NR)=>{"use strict";var QW=br().fromPromise,FR=require("path"),As=gn(),{mkdirs:KW,mkdirsSync:YW}=Ui(),{symlinkPaths:XW,symlinkPathsSync:JW}=IR(),{symlinkType:ZW,symlinkTypeSync:eG}=OR(),{pathExists:tG}=Ya(),{areIdentical:DR}=Jo();async function rG(n,e,t){let r;try{r=await As.lstat(e)}catch{}if(r&&r.isSymbolicLink()){let[c,l]=await Promise.all([As.stat(n),As.stat(e)]);if(DR(c,l))return}let i=await XW(n,e);n=i.toDst;let s=await ZW(i.toCwd,t),a=FR.dirname(e);return await tG(a)||await KW(a),As.symlink(n,e,s)}o(rG,"createSymlink");function nG(n,e,t){let r;try{r=As.lstatSync(e)}catch{}if(r&&r.isSymbolicLink()){let c=As.statSync(n),l=As.statSync(e);if(DR(c,l))return}let i=JW(n,e);n=i.toDst,t=eG(i.toCwd,t);let s=FR.dirname(e);return As.existsSync(s)||YW(s),As.symlinkSync(n,e,t)}o(nG,"createSymlinkSync");NR.exports={createSymlink:QW(rG),createSymlinkSync:nG}});var qR=S((pue,UR)=>{"use strict";var{createFile:kR,createFileSync:MR}=bR(),{createLink:jR,createLinkSync:$R}=xR(),{createSymlink:BR,createSymlinkSync:VR}=LR();UR.exports={createFile:kR,createFileSync:MR,ensureFile:kR,ensureFileSync:MR,createLink:jR,createLinkSync:$R,ensureLink:jR,ensureLinkSync:$R,createSymlink:BR,createSymlinkSync:VR,ensureSymlink:BR,ensureSymlinkSync:VR}});var hg=S((mue,WR)=>{function iG(n,{EOL:e=`
463
- `,finalEOL:t=!0,replacer:r=null,spaces:i}={}){let s=t?e:"";return JSON.stringify(n,r,i).replace(/\n/g,e)+s}o(iG,"stringify");function sG(n){return Buffer.isBuffer(n)&&(n=n.toString("utf8")),n.replace(/^\uFEFF/,"")}o(sG,"stripBom");WR.exports={stringify:iG,stripBom:sG}});var QR=S((yue,HR)=>{var kl;try{kl=Dl()}catch{kl=require("fs")}var pg=br(),{stringify:GR,stripBom:zR}=hg();async function aG(n,e={}){typeof e=="string"&&(e={encoding:e});let t=e.fs||kl,r="throws"in e?e.throws:!0,i=await pg.fromCallback(t.readFile)(n,e);i=zR(i);let s;try{s=JSON.parse(i,e?e.reviver:null)}catch(a){if(r)throw a.message=`${n}: ${a.message}`,a;return null}return s}o(aG,"_readFile");var oG=pg.fromPromise(aG);function cG(n,e={}){typeof e=="string"&&(e={encoding:e});let t=e.fs||kl,r="throws"in e?e.throws:!0;try{let i=t.readFileSync(n,e);return i=zR(i),JSON.parse(i,e.reviver)}catch(i){if(r)throw i.message=`${n}: ${i.message}`,i;return null}}o(cG,"readFileSync");async function lG(n,e,t={}){let r=t.fs||kl,i=GR(e,t);await pg.fromCallback(r.writeFile)(n,i,t)}o(lG,"_writeFile");var uG=pg.fromPromise(lG);function fG(n,e,t={}){let r=t.fs||kl,i=GR(e,t);return r.writeFileSync(n,i,t)}o(fG,"writeFileSync");HR.exports={readFile:oG,readFileSync:cG,writeFile:uG,writeFileSync:fG}});var YR=S((Sue,KR)=>{"use strict";var mg=QR();KR.exports={readJson:mg.readFile,readJsonSync:mg.readFileSync,writeJson:mg.writeFile,writeJsonSync:mg.writeFileSync}});var gg=S((vue,ZR)=>{"use strict";var dG=br().fromPromise,Tw=gn(),XR=require("path"),JR=Ui(),hG=Ya().pathExists;async function pG(n,e,t="utf-8"){let r=XR.dirname(n);return await hG(r)||await JR.mkdirs(r),Tw.writeFile(n,e,t)}o(pG,"outputFile");function mG(n,...e){let t=XR.dirname(n);Tw.existsSync(t)||JR.mkdirsSync(t),Tw.writeFileSync(n,...e)}o(mG,"outputFileSync");ZR.exports={outputFile:dG(pG),outputFileSync:mG}});var tP=S((wue,eP)=>{"use strict";var{stringify:gG}=hg(),{outputFile:yG}=gg();async function _G(n,e,t={}){let r=gG(e,t);await yG(n,r,t)}o(_G,"outputJson");eP.exports=_G});var nP=S((Tue,rP)=>{"use strict";var{stringify:SG}=hg(),{outputFileSync:vG}=gg();function bG(n,e,t){let r=SG(e,t);vG(n,r,t)}o(bG,"outputJsonSync");rP.exports=bG});var sP=S((xue,iP)=>{"use strict";var wG=br().fromPromise,_n=YR();_n.outputJson=wG(tP());_n.outputJsonSync=nP();_n.outputJSON=_n.outputJson;_n.outputJSONSync=_n.outputJsonSync;_n.writeJSON=_n.writeJson;_n.writeJSONSync=_n.writeJsonSync;_n.readJSON=_n.readJson;_n.readJSONSync=_n.readJsonSync;iP.exports=_n});var uP=S((Cue,lP)=>{"use strict";var EG=gn(),aP=require("path"),{copy:TG}=dg(),{remove:cP}=Df(),{mkdirp:AG}=Ui(),{pathExists:xG}=Ya(),oP=Jo();async function CG(n,e,t={}){let r=t.overwrite||t.clobber||!1,{srcStat:i,isChangingCase:s=!1}=await oP.checkPaths(n,e,"move",t);await oP.checkParentPaths(n,i,e,"move");let a=aP.dirname(e);return aP.parse(a).root!==a&&await AG(a),IG(n,e,r,s)}o(CG,"move");async function IG(n,e,t,r){if(!r){if(t)await cP(e);else if(await xG(e))throw new Error("dest already exists.")}try{await EG.rename(n,e)}catch(i){if(i.code!=="EXDEV")throw i;await RG(n,e,t)}}o(IG,"doRename");async function RG(n,e,t){return await TG(n,e,{overwrite:t,errorOnExist:!0,preserveTimestamps:!0}),cP(n)}o(RG,"moveAcrossDevice");lP.exports=CG});var mP=S((Rue,pP)=>{"use strict";var dP=Dl(),xw=require("path"),PG=dg().copySync,hP=Df().removeSync,OG=Ui().mkdirpSync,fP=Jo();function FG(n,e,t){t=t||{};let r=t.overwrite||t.clobber||!1,{srcStat:i,isChangingCase:s=!1}=fP.checkPathsSync(n,e,"move",t);return fP.checkParentPathsSync(n,i,e,"move"),DG(e)||OG(xw.dirname(e)),NG(n,e,r,s)}o(FG,"moveSync");function DG(n){let e=xw.dirname(n);return xw.parse(e).root===e}o(DG,"isParentRoot");function NG(n,e,t,r){if(r)return Aw(n,e,t);if(t)return hP(e),Aw(n,e,t);if(dP.existsSync(e))throw new Error("dest already exists.");return Aw(n,e,t)}o(NG,"doRename");function Aw(n,e,t){try{dP.renameSync(n,e)}catch(r){if(r.code!=="EXDEV")throw r;return LG(n,e,t)}}o(Aw,"rename");function LG(n,e,t){return PG(n,e,{overwrite:t,errorOnExist:!0,preserveTimestamps:!0}),hP(n)}o(LG,"moveAcrossDevice");pP.exports=FG});var yP=S((Oue,gP)=>{"use strict";var kG=br().fromPromise;gP.exports={move:kG(uP()),moveSync:mP()}});var Za=S((Fue,_P)=>{"use strict";_P.exports={...gn(),...dg(),...yR(),...qR(),...sP(),...Ui(),...yP(),...gg(),...Ya(),...Df()}});var uF=S((ume,lF)=>{"use strict";lF.exports=oF;function oF(n,e,t){n instanceof RegExp&&(n=aF(n,t)),e instanceof RegExp&&(e=aF(e,t));var r=cF(n,e,t);return r&&{start:r[0],end:r[1],pre:t.slice(0,r[0]),body:t.slice(r[0]+n.length,r[1]),post:t.slice(r[1]+e.length)}}o(oF,"balanced");function aF(n,e){var t=e.match(n);return t?t[0]:null}o(aF,"maybeMatch");oF.range=cF;function cF(n,e,t){var r,i,s,a,c,l=t.indexOf(n),u=t.indexOf(e,l+1),f=l;if(l>=0&&u>0){if(n===e)return[l,u];for(r=[],s=t.length;f>=0&&!c;)f==l?(r.push(f),l=t.indexOf(n,f+1)):r.length==1?c=[r.pop(),u]:(i=r.pop(),i<s&&(s=i,a=u),u=t.indexOf(e,f+1)),f=l<u&&l>=0?l:u;r.length&&(c=[s,a])}return c}o(cF,"range")});var _F=S((dme,yF)=>{var fF=uF();yF.exports=SK;var dF="\0SLASH"+Math.random()+"\0",hF="\0OPEN"+Math.random()+"\0",_E="\0CLOSE"+Math.random()+"\0",pF="\0COMMA"+Math.random()+"\0",mF="\0PERIOD"+Math.random()+"\0";function yE(n){return parseInt(n,10)==n?parseInt(n,10):n.charCodeAt(0)}o(yE,"numeric");function yK(n){return n.split("\\\\").join(dF).split("\\{").join(hF).split("\\}").join(_E).split("\\,").join(pF).split("\\.").join(mF)}o(yK,"escapeBraces");function _K(n){return n.split(dF).join("\\").split(hF).join("{").split(_E).join("}").split(pF).join(",").split(mF).join(".")}o(_K,"unescapeBraces");function gF(n){if(!n)return[""];var e=[],t=fF("{","}",n);if(!t)return n.split(",");var r=t.pre,i=t.body,s=t.post,a=r.split(",");a[a.length-1]+="{"+i+"}";var c=gF(s);return s.length&&(a[a.length-1]+=c.shift(),a.push.apply(a,c)),e.push.apply(e,a),e}o(gF,"parseCommaParts");function SK(n){return n?(n.substr(0,2)==="{}"&&(n="\\{\\}"+n.substr(2)),td(yK(n),!0).map(_K)):[]}o(SK,"expandTop");function vK(n){return"{"+n+"}"}o(vK,"embrace");function bK(n){return/^-?0\d/.test(n)}o(bK,"isPadded");function wK(n,e){return n<=e}o(wK,"lte");function EK(n,e){return n>=e}o(EK,"gte");function td(n,e){var t=[],r=fF("{","}",n);if(!r)return[n];var i=r.pre,s=r.post.length?td(r.post,!1):[""];if(/\$$/.test(r.pre))for(var a=0;a<s.length;a++){var c=i+"{"+r.body+"}"+s[a];t.push(c)}else{var l=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(r.body),u=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(r.body),f=l||u,d=r.body.indexOf(",")>=0;if(!f&&!d)return r.post.match(/,(?!,).*\}/)?(n=r.pre+"{"+r.body+_E+r.post,td(n)):[n];var h;if(f)h=r.body.split(/\.\./);else if(h=gF(r.body),h.length===1&&(h=td(h[0],!1).map(vK),h.length===1))return s.map(function($){return r.pre+h[0]+$});var p;if(f){var y=yE(h[0]),v=yE(h[1]),w=Math.max(h[0].length,h[1].length),b=h.length==3?Math.max(Math.abs(yE(h[2])),1):1,A=wK,I=v<y;I&&(b*=-1,A=EK);var j=h.some(bK);p=[];for(var V=y;A(V,v);V+=b){var te;if(u)te=String.fromCharCode(V),te==="\\"&&(te="");else if(te=String(V),j){var z=w-te.length;if(z>0){var G=new Array(z+1).join("0");V<0?te="-"+G+te.slice(1):te=G+te}}p.push(te)}}else{p=[];for(var F=0;F<h.length;F++)p.push.apply(p,td(h[F],!1))}for(var F=0;F<p.length;F++)for(var a=0;a<s.length;a++){var c=i+p[F]+s[a];(!e||f||c)&&t.push(c)}}return t}o(td,"expand")});var oN=S(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.createPathBasedTargetResolver=wa;Ln.createCreateRelatedTaskService=bX;Ln.createCreateRelatedProjectService=wX;Ln.createArchiveAssetService=EX;Ln.createCleanPropertiesService=TX;Ln.createFixMissingLabelService=AX;Ln.createRenameToUidService=xX;Ln.createRepairFolderService=CX;Ln.createPlanForEveningService=IX;Ln.createUpdatePropertyService=RX;Ln.createRemovePropertyService=PX;Ln.createSetStatusService=OX;function wa(n){return{resolveFile(e){let t=n.getAbstractFileByPath(`${e}.md`);if(!t||!("basename"in t))throw new Error(`Cannot resolve target file for IRI: ${e}`);return t}}}o(wa,"createPathBasedTargetResolver");function bX(n,e,t=wa(n)){return{async execute(r,i){let s=i?.label;if(!s)throw new Error("createRelatedTask requires userInput.label");let a=t.resolveFile(r),c=n.getFrontmatter(a)??{},l=a.parent?.path||"",u={ems__Effort_status:'"[[ems__EffortStatusDraft]]"'},f=i?.parentProperty;f&&a.basename&&(u[f]=`"[[${a.basename}]]"`),await e.createAsset({className:"ems__Task",label:s,folderPath:l,propertyValues:u,parentFile:a,parentMetadata:c})}}}o(bX,"createCreateRelatedTaskService");function wX(n,e,t=wa(n)){return{async execute(r,i){let s=i?.label;if(!s)throw new Error("createRelatedProject requires userInput.label");let a=t.resolveFile(r),c=n.getFrontmatter(a)??{},l=a.parent?.path||"",u={ems__Effort_status:'"[[ems__EffortStatusDraft]]"'},f=i?.parentProperty;f&&a.basename&&(u[f]=`"[[${a.basename}]]"`),await e.createAsset({className:"ems__Project",label:s,folderPath:l,propertyValues:u,parentFile:a,parentMetadata:c})}}}o(wX,"createCreateRelatedProjectService");function EX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r);await e.archiveAsset(i)}}}o(EX,"createArchiveAssetService");function TX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r);await e.cleanEmptyProperties(i)}}}o(TX,"createCleanPropertiesService");function AX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r);await e.fixMissingLabel(i)}}}o(AX,"createFixMissingLabelService");function xX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r),s=n.getFrontmatter(i)??{};await e.renameToUid(i,s)}}}o(xX,"createRenameToUidService");function CX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r),s=n.getFrontmatter(i)??{},a=await e.getExpectedFolder(i,s);if(a===null)throw new Error("repairFolder: cannot determine expected folder (missing exo__Asset_isDefinedBy or referenced asset not found)");(i.parent?.path??"")!==a&&await e.repairFolder(i,a)}}}o(CX,"createRepairFolderService");function IX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r);await e.planForEvening(i)}}}o(IX,"createPlanForEveningService");function RX(n,e,t){return{async execute(r,i){let s=i?.property,a=i?.value;if(!s)throw new Error("updateProperty requires userInput.property");if(a===void 0)throw new Error("updateProperty requires userInput.value");let c=await t.resolveTargetPath(r),l=await n.readFile(c),u=e.updateProperty(l,s,a);await n.updateFile(c,u)}}}o(RX,"createUpdatePropertyService");function PX(n,e,t){return{async execute(r,i){let s=i?.property;if(!s)throw new Error("removeProperty requires userInput.property");let a=await t.resolveTargetPath(r),c=await n.readFile(a),l=e.removeProperty(c,s);await n.updateFile(a,l)}}}o(PX,"createRemovePropertyService");function OX(n,e,t){return{async execute(r,i){let s=i?.statusUID;if(!s)throw new Error("setStatus requires userInput.statusUID");let a=await t.resolveTargetPath(r),c=await n.readFile(a),l=e.updateProperty(c,"ems__Effort_status",`"[[${s}]]"`);await n.updateFile(a,l)}}}o(OX,"createSetStatusService")});var cN=S(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.createPathBasedTargetResolver=xt.createSetStatusService=xt.createRemovePropertyService=xt.createUpdatePropertyService=xt.createPlanForEveningService=xt.createRepairFolderService=xt.createRenameToUidService=xt.createFixMissingLabelService=xt.createCleanPropertiesService=xt.createArchiveAssetService=xt.createCreateRelatedProjectService=xt.createCreateRelatedTaskService=void 0;var fi=oN();Object.defineProperty(xt,"createCreateRelatedTaskService",{enumerable:!0,get:o(function(){return fi.createCreateRelatedTaskService},"get")});Object.defineProperty(xt,"createCreateRelatedProjectService",{enumerable:!0,get:o(function(){return fi.createCreateRelatedProjectService},"get")});Object.defineProperty(xt,"createArchiveAssetService",{enumerable:!0,get:o(function(){return fi.createArchiveAssetService},"get")});Object.defineProperty(xt,"createCleanPropertiesService",{enumerable:!0,get:o(function(){return fi.createCleanPropertiesService},"get")});Object.defineProperty(xt,"createFixMissingLabelService",{enumerable:!0,get:o(function(){return fi.createFixMissingLabelService},"get")});Object.defineProperty(xt,"createRenameToUidService",{enumerable:!0,get:o(function(){return fi.createRenameToUidService},"get")});Object.defineProperty(xt,"createRepairFolderService",{enumerable:!0,get:o(function(){return fi.createRepairFolderService},"get")});Object.defineProperty(xt,"createPlanForEveningService",{enumerable:!0,get:o(function(){return fi.createPlanForEveningService},"get")});Object.defineProperty(xt,"createUpdatePropertyService",{enumerable:!0,get:o(function(){return fi.createUpdatePropertyService},"get")});Object.defineProperty(xt,"createRemovePropertyService",{enumerable:!0,get:o(function(){return fi.createRemovePropertyService},"get")});Object.defineProperty(xt,"createSetStatusService",{enumerable:!0,get:o(function(){return fi.createSetStatusService},"get")});Object.defineProperty(xt,"createPathBasedTargetResolver",{enumerable:!0,get:o(function(){return fi.createPathBasedTargetResolver},"get")})});var EJ={};Zy(EJ,{createProgram:()=>WN});module.exports=Yd(EJ);var ove=K(Xd());var dT=K(fT(),1),{program:WJ,createCommand:GJ,createArgument:zJ,createOption:HJ,CommanderError:QJ,InvalidArgumentError:KJ,InvalidOptionArgumentError:YJ,Command:ae,Argument:XJ,Option:JJ,Help:ZJ}=dT.default;var Yl=require("fs"),ed=require("path"),Gt=K(Dt());var ar=K(Za()),or=K(require("path"));function NP(n){return typeof n>"u"||n===null}o(NP,"isNothing");function MG(n){return typeof n=="object"&&n!==null}o(MG,"isObject");function jG(n){return Array.isArray(n)?n:NP(n)?[]:[n]}o(jG,"toArray");function $G(n,e){var t,r,i,s;if(e)for(s=Object.keys(e),t=0,r=s.length;t<r;t+=1)i=s[t],n[i]=e[i];return n}o($G,"extend");function BG(n,e){var t="",r;for(r=0;r<e;r+=1)t+=n;return t}o(BG,"repeat");function VG(n){return n===0&&Number.NEGATIVE_INFINITY===1/n}o(VG,"isNegativeZero");var UG=NP,qG=MG,WG=jG,GG=BG,zG=VG,HG=$G,hr={isNothing:UG,isObject:qG,toArray:WG,repeat:GG,isNegativeZero:zG,extend:HG};function LP(n,e){var t="",r=n.reason||"(unknown reason)";return n.mark?(n.mark.name&&(t+='in "'+n.mark.name+'" '),t+="("+(n.mark.line+1)+":"+(n.mark.column+1)+")",!e&&n.mark.snippet&&(t+=`
462
+ see https://github.com/jprichardson/node-fs-extra/issues/269`,"Warning","fs-extra-WARN0002");let{srcStat:r,destStat:i}=Ff.checkPathsSync(n,e,"copy",t);if(Ff.checkParentPathsSync(n,r,e,"copy"),t.filter&&!t.filter(n,e))return;let s=Of.dirname(e);return yn.existsSync(s)||mW(s),rR(i,n,e,t)}o(yW,"copySync");function rR(n,e,t,r){let s=(r.dereference?yn.statSync:yn.lstatSync)(e);if(s.isDirectory())return TW(s,n,e,t,r);if(s.isFile()||s.isCharacterDevice()||s.isBlockDevice())return _W(s,n,e,t,r);if(s.isSymbolicLink())return CW(n,e,t,r);throw s.isSocket()?new Error(`Cannot copy a socket file: ${e}`):s.isFIFO()?new Error(`Cannot copy a FIFO pipe: ${e}`):new Error(`Unknown file: ${e}`)}o(rR,"getStats");function _W(n,e,t,r,i){return e?SW(n,t,r,i):nR(n,t,r,i)}o(_W,"onFile");function SW(n,e,t,r){if(r.overwrite)return yn.unlinkSync(t),nR(n,e,t,r);if(r.errorOnExist)throw new Error(`'${t}' already exists`)}o(SW,"mayCopyFile");function nR(n,e,t,r){return yn.copyFileSync(e,t),r.preserveTimestamps&&vW(n.mode,e,t),Ew(t,n.mode)}o(nR,"copyFile");function vW(n,e,t){return bW(n)&&wW(t,n),EW(e,t)}o(vW,"handleTimestamps");function bW(n){return(n&128)===0}o(bW,"fileIsNotWritable");function wW(n,e){return Ew(n,e|128)}o(wW,"makeFileWritable");function Ew(n,e){return yn.chmodSync(n,e)}o(Ew,"setDestMode");function EW(n,e){let t=yn.statSync(n);return gW(e,t.atime,t.mtime)}o(EW,"setDestTimestamps");function TW(n,e,t,r,i){return e?iR(t,r,i):AW(n.mode,t,r,i)}o(TW,"onDir");function AW(n,e,t,r){return yn.mkdirSync(t),iR(e,t,r),Ew(t,n)}o(AW,"mkDirAndCopy");function iR(n,e,t){let r=yn.opendirSync(n);try{let i;for(;(i=r.readSync())!==null;)xW(i.name,n,e,t)}finally{r.closeSync()}}o(iR,"copyDir");function xW(n,e,t,r){let i=Of.join(e,n),s=Of.join(t,n);if(r.filter&&!r.filter(i,s))return;let{destStat:a}=Ff.checkPathsSync(i,s,"copy",r);return rR(a,i,s,r)}o(xW,"copyDirItem");function CW(n,e,t,r){let i=yn.readlinkSync(e);if(r.dereference&&(i=Of.resolve(process.cwd(),i)),n){let s;try{s=yn.readlinkSync(t)}catch(a){if(a.code==="EINVAL"||a.code==="UNKNOWN")return yn.symlinkSync(i,t);throw a}if(r.dereference&&(s=Of.resolve(process.cwd(),s)),Ff.isSrcSubdir(i,s))throw new Error(`Cannot copy '${i}' to a subdirectory of itself, '${s}'.`);if(Ff.isSrcSubdir(s,i))throw new Error(`Cannot overwrite '${s}' with '${i}'.`);return IW(i,t)}else return yn.symlinkSync(i,t)}o(CW,"onLink");function IW(n,e){return yn.unlinkSync(e),yn.symlinkSync(n,e)}o(IW,"copyLink");sR.exports=yW});var dg=S((Zle,oR)=>{"use strict";var RW=wr().fromPromise;oR.exports={copy:RW(tR()),copySync:aR()}});var Df=S((eue,lR)=>{"use strict";var cR=Dl(),PW=wr().fromCallback;function OW(n,e){cR.rm(n,{recursive:!0,force:!0},e)}o(OW,"remove");function FW(n){cR.rmSync(n,{recursive:!0,force:!0})}o(FW,"removeSync");lR.exports={remove:PW(OW),removeSync:FW}});var yR=S((rue,gR)=>{"use strict";var DW=wr().fromPromise,dR=gn(),hR=require("path"),pR=Ui(),mR=Df(),uR=DW(o(async function(e){let t;try{t=await dR.readdir(e)}catch{return pR.mkdirs(e)}return Promise.all(t.map(r=>mR.remove(hR.join(e,r))))},"emptyDir"));function fR(n){let e;try{e=dR.readdirSync(n)}catch{return pR.mkdirsSync(n)}e.forEach(t=>{t=hR.join(n,t),mR.removeSync(t)})}o(fR,"emptyDirSync");gR.exports={emptyDirSync:fR,emptydirSync:fR,emptyDir:uR,emptydir:uR}});var bR=S((iue,vR)=>{"use strict";var NW=wr().fromPromise,_R=require("path"),pa=gn(),SR=Ui();async function LW(n){let e;try{e=await pa.stat(n)}catch{}if(e&&e.isFile())return;let t=_R.dirname(n),r=null;try{r=await pa.stat(t)}catch(i){if(i.code==="ENOENT"){await SR.mkdirs(t),await pa.writeFile(n,"");return}else throw i}r.isDirectory()?await pa.writeFile(n,""):await pa.readdir(t)}o(LW,"createFile");function kW(n){let e;try{e=pa.statSync(n)}catch{}if(e&&e.isFile())return;let t=_R.dirname(n);try{pa.statSync(t).isDirectory()||pa.readdirSync(t)}catch(r){if(r&&r.code==="ENOENT")SR.mkdirsSync(t);else throw r}pa.writeFileSync(n,"")}o(kW,"createFileSync");vR.exports={createFile:NW(LW),createFileSync:kW}});var xR=S((aue,AR)=>{"use strict";var MW=wr().fromPromise,wR=require("path"),Xa=gn(),ER=Ui(),{pathExists:jW}=Ya(),{areIdentical:TR}=Jo();async function $W(n,e){let t;try{t=await Xa.lstat(e)}catch{}let r;try{r=await Xa.lstat(n)}catch(a){throw a.message=a.message.replace("lstat","ensureLink"),a}if(t&&TR(r,t))return;let i=wR.dirname(e);await jW(i)||await ER.mkdirs(i),await Xa.link(n,e)}o($W,"createLink");function BW(n,e){let t;try{t=Xa.lstatSync(e)}catch{}try{let s=Xa.lstatSync(n);if(t&&TR(s,t))return}catch(s){throw s.message=s.message.replace("lstat","ensureLink"),s}let r=wR.dirname(e);return Xa.existsSync(r)||ER.mkdirsSync(r),Xa.linkSync(n,e)}o(BW,"createLinkSync");AR.exports={createLink:MW($W),createLinkSync:BW}});var IR=S((cue,CR)=>{"use strict";var Ja=require("path"),Nf=gn(),{pathExists:VW}=Ya(),UW=wr().fromPromise;async function qW(n,e){if(Ja.isAbsolute(n)){try{await Nf.lstat(n)}catch(s){throw s.message=s.message.replace("lstat","ensureSymlink"),s}return{toCwd:n,toDst:n}}let t=Ja.dirname(e),r=Ja.join(t,n);if(await VW(r))return{toCwd:r,toDst:n};try{await Nf.lstat(n)}catch(s){throw s.message=s.message.replace("lstat","ensureSymlink"),s}return{toCwd:n,toDst:Ja.relative(t,n)}}o(qW,"symlinkPaths");function WW(n,e){if(Ja.isAbsolute(n)){if(!Nf.existsSync(n))throw new Error("absolute srcpath does not exist");return{toCwd:n,toDst:n}}let t=Ja.dirname(e),r=Ja.join(t,n);if(Nf.existsSync(r))return{toCwd:r,toDst:n};if(!Nf.existsSync(n))throw new Error("relative srcpath does not exist");return{toCwd:n,toDst:Ja.relative(t,n)}}o(WW,"symlinkPathsSync");CR.exports={symlinkPaths:UW(qW),symlinkPathsSync:WW}});var OR=S((uue,PR)=>{"use strict";var RR=gn(),GW=wr().fromPromise;async function zW(n,e){if(e)return e;let t;try{t=await RR.lstat(n)}catch{return"file"}return t&&t.isDirectory()?"dir":"file"}o(zW,"symlinkType");function HW(n,e){if(e)return e;let t;try{t=RR.lstatSync(n)}catch{return"file"}return t&&t.isDirectory()?"dir":"file"}o(HW,"symlinkTypeSync");PR.exports={symlinkType:GW(zW),symlinkTypeSync:HW}});var LR=S((due,NR)=>{"use strict";var QW=wr().fromPromise,FR=require("path"),As=gn(),{mkdirs:KW,mkdirsSync:YW}=Ui(),{symlinkPaths:XW,symlinkPathsSync:JW}=IR(),{symlinkType:ZW,symlinkTypeSync:eG}=OR(),{pathExists:tG}=Ya(),{areIdentical:DR}=Jo();async function rG(n,e,t){let r;try{r=await As.lstat(e)}catch{}if(r&&r.isSymbolicLink()){let[c,l]=await Promise.all([As.stat(n),As.stat(e)]);if(DR(c,l))return}let i=await XW(n,e);n=i.toDst;let s=await ZW(i.toCwd,t),a=FR.dirname(e);return await tG(a)||await KW(a),As.symlink(n,e,s)}o(rG,"createSymlink");function nG(n,e,t){let r;try{r=As.lstatSync(e)}catch{}if(r&&r.isSymbolicLink()){let c=As.statSync(n),l=As.statSync(e);if(DR(c,l))return}let i=JW(n,e);n=i.toDst,t=eG(i.toCwd,t);let s=FR.dirname(e);return As.existsSync(s)||YW(s),As.symlinkSync(n,e,t)}o(nG,"createSymlinkSync");NR.exports={createSymlink:QW(rG),createSymlinkSync:nG}});var qR=S((pue,UR)=>{"use strict";var{createFile:kR,createFileSync:MR}=bR(),{createLink:jR,createLinkSync:$R}=xR(),{createSymlink:BR,createSymlinkSync:VR}=LR();UR.exports={createFile:kR,createFileSync:MR,ensureFile:kR,ensureFileSync:MR,createLink:jR,createLinkSync:$R,ensureLink:jR,ensureLinkSync:$R,createSymlink:BR,createSymlinkSync:VR,ensureSymlink:BR,ensureSymlinkSync:VR}});var hg=S((mue,WR)=>{function iG(n,{EOL:e=`
463
+ `,finalEOL:t=!0,replacer:r=null,spaces:i}={}){let s=t?e:"";return JSON.stringify(n,r,i).replace(/\n/g,e)+s}o(iG,"stringify");function sG(n){return Buffer.isBuffer(n)&&(n=n.toString("utf8")),n.replace(/^\uFEFF/,"")}o(sG,"stripBom");WR.exports={stringify:iG,stripBom:sG}});var QR=S((yue,HR)=>{var kl;try{kl=Dl()}catch{kl=require("fs")}var pg=wr(),{stringify:GR,stripBom:zR}=hg();async function aG(n,e={}){typeof e=="string"&&(e={encoding:e});let t=e.fs||kl,r="throws"in e?e.throws:!0,i=await pg.fromCallback(t.readFile)(n,e);i=zR(i);let s;try{s=JSON.parse(i,e?e.reviver:null)}catch(a){if(r)throw a.message=`${n}: ${a.message}`,a;return null}return s}o(aG,"_readFile");var oG=pg.fromPromise(aG);function cG(n,e={}){typeof e=="string"&&(e={encoding:e});let t=e.fs||kl,r="throws"in e?e.throws:!0;try{let i=t.readFileSync(n,e);return i=zR(i),JSON.parse(i,e.reviver)}catch(i){if(r)throw i.message=`${n}: ${i.message}`,i;return null}}o(cG,"readFileSync");async function lG(n,e,t={}){let r=t.fs||kl,i=GR(e,t);await pg.fromCallback(r.writeFile)(n,i,t)}o(lG,"_writeFile");var uG=pg.fromPromise(lG);function fG(n,e,t={}){let r=t.fs||kl,i=GR(e,t);return r.writeFileSync(n,i,t)}o(fG,"writeFileSync");HR.exports={readFile:oG,readFileSync:cG,writeFile:uG,writeFileSync:fG}});var YR=S((Sue,KR)=>{"use strict";var mg=QR();KR.exports={readJson:mg.readFile,readJsonSync:mg.readFileSync,writeJson:mg.writeFile,writeJsonSync:mg.writeFileSync}});var gg=S((vue,ZR)=>{"use strict";var dG=wr().fromPromise,Tw=gn(),XR=require("path"),JR=Ui(),hG=Ya().pathExists;async function pG(n,e,t="utf-8"){let r=XR.dirname(n);return await hG(r)||await JR.mkdirs(r),Tw.writeFile(n,e,t)}o(pG,"outputFile");function mG(n,...e){let t=XR.dirname(n);Tw.existsSync(t)||JR.mkdirsSync(t),Tw.writeFileSync(n,...e)}o(mG,"outputFileSync");ZR.exports={outputFile:dG(pG),outputFileSync:mG}});var tP=S((wue,eP)=>{"use strict";var{stringify:gG}=hg(),{outputFile:yG}=gg();async function _G(n,e,t={}){let r=gG(e,t);await yG(n,r,t)}o(_G,"outputJson");eP.exports=_G});var nP=S((Tue,rP)=>{"use strict";var{stringify:SG}=hg(),{outputFileSync:vG}=gg();function bG(n,e,t){let r=SG(e,t);vG(n,r,t)}o(bG,"outputJsonSync");rP.exports=bG});var sP=S((xue,iP)=>{"use strict";var wG=wr().fromPromise,_n=YR();_n.outputJson=wG(tP());_n.outputJsonSync=nP();_n.outputJSON=_n.outputJson;_n.outputJSONSync=_n.outputJsonSync;_n.writeJSON=_n.writeJson;_n.writeJSONSync=_n.writeJsonSync;_n.readJSON=_n.readJson;_n.readJSONSync=_n.readJsonSync;iP.exports=_n});var uP=S((Cue,lP)=>{"use strict";var EG=gn(),aP=require("path"),{copy:TG}=dg(),{remove:cP}=Df(),{mkdirp:AG}=Ui(),{pathExists:xG}=Ya(),oP=Jo();async function CG(n,e,t={}){let r=t.overwrite||t.clobber||!1,{srcStat:i,isChangingCase:s=!1}=await oP.checkPaths(n,e,"move",t);await oP.checkParentPaths(n,i,e,"move");let a=aP.dirname(e);return aP.parse(a).root!==a&&await AG(a),IG(n,e,r,s)}o(CG,"move");async function IG(n,e,t,r){if(!r){if(t)await cP(e);else if(await xG(e))throw new Error("dest already exists.")}try{await EG.rename(n,e)}catch(i){if(i.code!=="EXDEV")throw i;await RG(n,e,t)}}o(IG,"doRename");async function RG(n,e,t){return await TG(n,e,{overwrite:t,errorOnExist:!0,preserveTimestamps:!0}),cP(n)}o(RG,"moveAcrossDevice");lP.exports=CG});var mP=S((Rue,pP)=>{"use strict";var dP=Dl(),xw=require("path"),PG=dg().copySync,hP=Df().removeSync,OG=Ui().mkdirpSync,fP=Jo();function FG(n,e,t){t=t||{};let r=t.overwrite||t.clobber||!1,{srcStat:i,isChangingCase:s=!1}=fP.checkPathsSync(n,e,"move",t);return fP.checkParentPathsSync(n,i,e,"move"),DG(e)||OG(xw.dirname(e)),NG(n,e,r,s)}o(FG,"moveSync");function DG(n){let e=xw.dirname(n);return xw.parse(e).root===e}o(DG,"isParentRoot");function NG(n,e,t,r){if(r)return Aw(n,e,t);if(t)return hP(e),Aw(n,e,t);if(dP.existsSync(e))throw new Error("dest already exists.");return Aw(n,e,t)}o(NG,"doRename");function Aw(n,e,t){try{dP.renameSync(n,e)}catch(r){if(r.code!=="EXDEV")throw r;return LG(n,e,t)}}o(Aw,"rename");function LG(n,e,t){return PG(n,e,{overwrite:t,errorOnExist:!0,preserveTimestamps:!0}),hP(n)}o(LG,"moveAcrossDevice");pP.exports=FG});var yP=S((Oue,gP)=>{"use strict";var kG=wr().fromPromise;gP.exports={move:kG(uP()),moveSync:mP()}});var Za=S((Fue,_P)=>{"use strict";_P.exports={...gn(),...dg(),...yR(),...qR(),...sP(),...Ui(),...yP(),...gg(),...Ya(),...Df()}});var uF=S((ume,lF)=>{"use strict";lF.exports=oF;function oF(n,e,t){n instanceof RegExp&&(n=aF(n,t)),e instanceof RegExp&&(e=aF(e,t));var r=cF(n,e,t);return r&&{start:r[0],end:r[1],pre:t.slice(0,r[0]),body:t.slice(r[0]+n.length,r[1]),post:t.slice(r[1]+e.length)}}o(oF,"balanced");function aF(n,e){var t=e.match(n);return t?t[0]:null}o(aF,"maybeMatch");oF.range=cF;function cF(n,e,t){var r,i,s,a,c,l=t.indexOf(n),u=t.indexOf(e,l+1),f=l;if(l>=0&&u>0){if(n===e)return[l,u];for(r=[],s=t.length;f>=0&&!c;)f==l?(r.push(f),l=t.indexOf(n,f+1)):r.length==1?c=[r.pop(),u]:(i=r.pop(),i<s&&(s=i,a=u),u=t.indexOf(e,f+1)),f=l<u&&l>=0?l:u;r.length&&(c=[s,a])}return c}o(cF,"range")});var _F=S((dme,yF)=>{var fF=uF();yF.exports=SK;var dF="\0SLASH"+Math.random()+"\0",hF="\0OPEN"+Math.random()+"\0",_E="\0CLOSE"+Math.random()+"\0",pF="\0COMMA"+Math.random()+"\0",mF="\0PERIOD"+Math.random()+"\0";function yE(n){return parseInt(n,10)==n?parseInt(n,10):n.charCodeAt(0)}o(yE,"numeric");function yK(n){return n.split("\\\\").join(dF).split("\\{").join(hF).split("\\}").join(_E).split("\\,").join(pF).split("\\.").join(mF)}o(yK,"escapeBraces");function _K(n){return n.split(dF).join("\\").split(hF).join("{").split(_E).join("}").split(pF).join(",").split(mF).join(".")}o(_K,"unescapeBraces");function gF(n){if(!n)return[""];var e=[],t=fF("{","}",n);if(!t)return n.split(",");var r=t.pre,i=t.body,s=t.post,a=r.split(",");a[a.length-1]+="{"+i+"}";var c=gF(s);return s.length&&(a[a.length-1]+=c.shift(),a.push.apply(a,c)),e.push.apply(e,a),e}o(gF,"parseCommaParts");function SK(n){return n?(n.substr(0,2)==="{}"&&(n="\\{\\}"+n.substr(2)),td(yK(n),!0).map(_K)):[]}o(SK,"expandTop");function vK(n){return"{"+n+"}"}o(vK,"embrace");function bK(n){return/^-?0\d/.test(n)}o(bK,"isPadded");function wK(n,e){return n<=e}o(wK,"lte");function EK(n,e){return n>=e}o(EK,"gte");function td(n,e){var t=[],r=fF("{","}",n);if(!r)return[n];var i=r.pre,s=r.post.length?td(r.post,!1):[""];if(/\$$/.test(r.pre))for(var a=0;a<s.length;a++){var c=i+"{"+r.body+"}"+s[a];t.push(c)}else{var l=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(r.body),u=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(r.body),f=l||u,d=r.body.indexOf(",")>=0;if(!f&&!d)return r.post.match(/,(?!,).*\}/)?(n=r.pre+"{"+r.body+_E+r.post,td(n)):[n];var h;if(f)h=r.body.split(/\.\./);else if(h=gF(r.body),h.length===1&&(h=td(h[0],!1).map(vK),h.length===1))return s.map(function($){return r.pre+h[0]+$});var p;if(f){var y=yE(h[0]),v=yE(h[1]),w=Math.max(h[0].length,h[1].length),b=h.length==3?Math.max(Math.abs(yE(h[2])),1):1,A=wK,I=v<y;I&&(b*=-1,A=EK);var j=h.some(bK);p=[];for(var V=y;A(V,v);V+=b){var te;if(u)te=String.fromCharCode(V),te==="\\"&&(te="");else if(te=String(V),j){var z=w-te.length;if(z>0){var G=new Array(z+1).join("0");V<0?te="-"+G+te.slice(1):te=G+te}}p.push(te)}}else{p=[];for(var F=0;F<h.length;F++)p.push.apply(p,td(h[F],!1))}for(var F=0;F<p.length;F++)for(var a=0;a<s.length;a++){var c=i+p[F]+s[a];(!e||f||c)&&t.push(c)}}return t}o(td,"expand")});var oN=S(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.createPathBasedTargetResolver=wa;Ln.createCreateRelatedTaskService=bX;Ln.createCreateRelatedProjectService=wX;Ln.createArchiveAssetService=EX;Ln.createCleanPropertiesService=TX;Ln.createFixMissingLabelService=AX;Ln.createRenameToUidService=xX;Ln.createRepairFolderService=CX;Ln.createPlanForEveningService=IX;Ln.createUpdatePropertyService=RX;Ln.createRemovePropertyService=PX;Ln.createSetStatusService=OX;function wa(n){return{resolveFile(e){let t=n.getAbstractFileByPath(`${e}.md`);if(!t||!("basename"in t))throw new Error(`Cannot resolve target file for IRI: ${e}`);return t}}}o(wa,"createPathBasedTargetResolver");function bX(n,e,t=wa(n)){return{async execute(r,i){let s=i?.label;if(!s)throw new Error("createRelatedTask requires userInput.label");let a=t.resolveFile(r),c=n.getFrontmatter(a)??{},l=a.parent?.path||"",u={ems__Effort_status:'"[[ems__EffortStatusDraft]]"'},f=i?.parentProperty;f&&a.basename&&(u[f]=`"[[${a.basename}]]"`),await e.createAsset({className:"ems__Task",label:s,folderPath:l,propertyValues:u,parentFile:a,parentMetadata:c})}}}o(bX,"createCreateRelatedTaskService");function wX(n,e,t=wa(n)){return{async execute(r,i){let s=i?.label;if(!s)throw new Error("createRelatedProject requires userInput.label");let a=t.resolveFile(r),c=n.getFrontmatter(a)??{},l=a.parent?.path||"",u={ems__Effort_status:'"[[ems__EffortStatusDraft]]"'},f=i?.parentProperty;f&&a.basename&&(u[f]=`"[[${a.basename}]]"`),await e.createAsset({className:"ems__Project",label:s,folderPath:l,propertyValues:u,parentFile:a,parentMetadata:c})}}}o(wX,"createCreateRelatedProjectService");function EX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r);await e.archiveAsset(i)}}}o(EX,"createArchiveAssetService");function TX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r);await e.cleanEmptyProperties(i)}}}o(TX,"createCleanPropertiesService");function AX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r);await e.fixMissingLabel(i)}}}o(AX,"createFixMissingLabelService");function xX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r),s=n.getFrontmatter(i)??{};await e.renameToUid(i,s)}}}o(xX,"createRenameToUidService");function CX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r),s=n.getFrontmatter(i)??{},a=await e.getExpectedFolder(i,s);if(a===null)throw new Error("repairFolder: cannot determine expected folder (missing exo__Asset_isDefinedBy or referenced asset not found)");(i.parent?.path??"")!==a&&await e.repairFolder(i,a)}}}o(CX,"createRepairFolderService");function IX(n,e,t=wa(n)){return{async execute(r){let i=t.resolveFile(r);await e.planForEvening(i)}}}o(IX,"createPlanForEveningService");function RX(n,e,t){return{async execute(r,i){let s=i?.property,a=i?.value;if(!s)throw new Error("updateProperty requires userInput.property");if(a===void 0)throw new Error("updateProperty requires userInput.value");let c=await t.resolveTargetPath(r),l=await n.readFile(c),u=e.updateProperty(l,s,a);await n.updateFile(c,u)}}}o(RX,"createUpdatePropertyService");function PX(n,e,t){return{async execute(r,i){let s=i?.property;if(!s)throw new Error("removeProperty requires userInput.property");let a=await t.resolveTargetPath(r),c=await n.readFile(a),l=e.removeProperty(c,s);await n.updateFile(a,l)}}}o(PX,"createRemovePropertyService");function OX(n,e,t){return{async execute(r,i){let s=i?.statusUID;if(!s)throw new Error("setStatus requires userInput.statusUID");let a=await t.resolveTargetPath(r),c=await n.readFile(a),l=e.updateProperty(c,"ems__Effort_status",`"[[${s}]]"`);await n.updateFile(a,l)}}}o(OX,"createSetStatusService")});var cN=S(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.createPathBasedTargetResolver=xt.createSetStatusService=xt.createRemovePropertyService=xt.createUpdatePropertyService=xt.createPlanForEveningService=xt.createRepairFolderService=xt.createRenameToUidService=xt.createFixMissingLabelService=xt.createCleanPropertiesService=xt.createArchiveAssetService=xt.createCreateRelatedProjectService=xt.createCreateRelatedTaskService=void 0;var fi=oN();Object.defineProperty(xt,"createCreateRelatedTaskService",{enumerable:!0,get:o(function(){return fi.createCreateRelatedTaskService},"get")});Object.defineProperty(xt,"createCreateRelatedProjectService",{enumerable:!0,get:o(function(){return fi.createCreateRelatedProjectService},"get")});Object.defineProperty(xt,"createArchiveAssetService",{enumerable:!0,get:o(function(){return fi.createArchiveAssetService},"get")});Object.defineProperty(xt,"createCleanPropertiesService",{enumerable:!0,get:o(function(){return fi.createCleanPropertiesService},"get")});Object.defineProperty(xt,"createFixMissingLabelService",{enumerable:!0,get:o(function(){return fi.createFixMissingLabelService},"get")});Object.defineProperty(xt,"createRenameToUidService",{enumerable:!0,get:o(function(){return fi.createRenameToUidService},"get")});Object.defineProperty(xt,"createRepairFolderService",{enumerable:!0,get:o(function(){return fi.createRepairFolderService},"get")});Object.defineProperty(xt,"createPlanForEveningService",{enumerable:!0,get:o(function(){return fi.createPlanForEveningService},"get")});Object.defineProperty(xt,"createUpdatePropertyService",{enumerable:!0,get:o(function(){return fi.createUpdatePropertyService},"get")});Object.defineProperty(xt,"createRemovePropertyService",{enumerable:!0,get:o(function(){return fi.createRemovePropertyService},"get")});Object.defineProperty(xt,"createSetStatusService",{enumerable:!0,get:o(function(){return fi.createSetStatusService},"get")});Object.defineProperty(xt,"createPathBasedTargetResolver",{enumerable:!0,get:o(function(){return fi.createPathBasedTargetResolver},"get")})});var EJ={};Zy(EJ,{createProgram:()=>WN});module.exports=Yd(EJ);var ove=K(Xd());var dT=K(fT(),1),{program:WJ,createCommand:GJ,createArgument:zJ,createOption:HJ,CommanderError:QJ,InvalidArgumentError:KJ,InvalidOptionArgumentError:YJ,Command:ae,Argument:XJ,Option:JJ,Help:ZJ}=dT.default;var Yl=require("fs"),ed=require("path"),Gt=K(Dt());var ar=K(Za()),or=K(require("path"));function NP(n){return typeof n>"u"||n===null}o(NP,"isNothing");function MG(n){return typeof n=="object"&&n!==null}o(MG,"isObject");function jG(n){return Array.isArray(n)?n:NP(n)?[]:[n]}o(jG,"toArray");function $G(n,e){var t,r,i,s;if(e)for(s=Object.keys(e),t=0,r=s.length;t<r;t+=1)i=s[t],n[i]=e[i];return n}o($G,"extend");function BG(n,e){var t="",r;for(r=0;r<e;r+=1)t+=n;return t}o(BG,"repeat");function VG(n){return n===0&&Number.NEGATIVE_INFINITY===1/n}o(VG,"isNegativeZero");var UG=NP,qG=MG,WG=jG,GG=BG,zG=VG,HG=$G,hr={isNothing:UG,isObject:qG,toArray:WG,repeat:GG,isNegativeZero:zG,extend:HG};function LP(n,e){var t="",r=n.reason||"(unknown reason)";return n.mark?(n.mark.name&&(t+='in "'+n.mark.name+'" '),t+="("+(n.mark.line+1)+":"+(n.mark.column+1)+")",!e&&n.mark.snippet&&(t+=`
464
464
 
465
465
  `+n.mark.snippet),r+" "+t):r}o(LP,"formatError");function kf(n,e){Error.call(this),this.name="YAMLException",this.reason=n,this.mark=e,this.message=LP(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}o(kf,"YAMLException$1");kf.prototype=Object.create(Error.prototype);kf.prototype.constructor=kf;kf.prototype.toString=o(function(e){return this.name+": "+LP(this,e)},"toString");var Sn=kf;function Cw(n,e,t,r,i){var s="",a="",c=Math.floor(i/2)-1;return r-e>c&&(s=" ... ",e=r-c+s.length),t-r>c&&(a=" ...",t=r+c-a.length),{str:s+n.slice(e,t).replace(/\t/g,"\u2192")+a,pos:r-e+s.length}}o(Cw,"getLine");function Iw(n,e){return hr.repeat(" ",e-n.length)+n}o(Iw,"padStart");function QG(n,e){if(e=Object.create(e||null),!n.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var t=/\r?\n|\r|\0/g,r=[0],i=[],s,a=-1;s=t.exec(n.buffer);)i.push(s.index),r.push(s.index+s[0].length),n.position<=s.index&&a<0&&(a=r.length-2);a<0&&(a=r.length-1);var c="",l,u,f=Math.min(n.line+e.linesAfter,i.length).toString().length,d=e.maxLength-(e.indent+f+3);for(l=1;l<=e.linesBefore&&!(a-l<0);l++)u=Cw(n.buffer,r[a-l],i[a-l],n.position-(r[a]-r[a-l]),d),c=hr.repeat(" ",e.indent)+Iw((n.line-l+1).toString(),f)+" | "+u.str+`
466
466
  `+c;for(u=Cw(n.buffer,r[a],i[a],n.position,d),c+=hr.repeat(" ",e.indent)+Iw((n.line+1).toString(),f)+" | "+u.str+`
467
467
  `,c+=hr.repeat("-",e.indent+f+3+u.pos)+`^
468
468
  `,l=1;l<=e.linesAfter&&!(a+l>=i.length);l++)u=Cw(n.buffer,r[a+l],i[a+l],n.position-(r[a]-r[a+l]),d),c+=hr.repeat(" ",e.indent)+Iw((n.line+l+1).toString(),f)+" | "+u.str+`
469
- `;return c.replace(/\n$/,"")}o(QG,"makeSnippet");var KG=QG,YG=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],XG=["scalar","sequence","mapping"];function JG(n){var e={};return n!==null&&Object.keys(n).forEach(function(t){n[t].forEach(function(r){e[String(r)]=t})}),e}o(JG,"compileStyleAliases");function ZG(n,e){if(e=e||{},Object.keys(e).forEach(function(t){if(YG.indexOf(t)===-1)throw new Sn('Unknown option "'+t+'" is met in definition of "'+n+'" YAML type.')}),this.options=e,this.tag=n,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=JG(e.styleAliases||null),XG.indexOf(this.kind)===-1)throw new Sn('Unknown kind "'+this.kind+'" is specified for "'+n+'" YAML type.')}o(ZG,"Type$1");var $r=ZG;function SP(n,e){var t=[];return n[e].forEach(function(r){var i=t.length;t.forEach(function(s,a){s.tag===r.tag&&s.kind===r.kind&&s.multi===r.multi&&(i=a)}),t[i]=r}),t}o(SP,"compileList");function ez(){var n={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,t;function r(i){i.multi?(n.multi[i.kind].push(i),n.multi.fallback.push(i)):n[i.kind][i.tag]=n.fallback[i.tag]=i}for(o(r,"collectType"),e=0,t=arguments.length;e<t;e+=1)arguments[e].forEach(r);return n}o(ez,"compileMap");function Pw(n){return this.extend(n)}o(Pw,"Schema$1");Pw.prototype.extend=o(function(e){var t=[],r=[];if(e instanceof $r)r.push(e);else if(Array.isArray(e))r=r.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(t=t.concat(e.implicit)),e.explicit&&(r=r.concat(e.explicit));else throw new Sn("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");t.forEach(function(s){if(!(s instanceof $r))throw new Sn("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(s.loadKind&&s.loadKind!=="scalar")throw new Sn("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(s.multi)throw new Sn("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(s){if(!(s instanceof $r))throw new Sn("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(Pw.prototype);return i.implicit=(this.implicit||[]).concat(t),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=SP(i,"implicit"),i.compiledExplicit=SP(i,"explicit"),i.compiledTypeMap=ez(i.compiledImplicit,i.compiledExplicit),i},"extend");var kP=Pw,MP=new $r("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(n){return n!==null?n:""},"construct")}),jP=new $r("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(n){return n!==null?n:[]},"construct")}),$P=new $r("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(n){return n!==null?n:{}},"construct")}),BP=new kP({explicit:[MP,jP,$P]});function tz(n){if(n===null)return!0;var e=n.length;return e===1&&n==="~"||e===4&&(n==="null"||n==="Null"||n==="NULL")}o(tz,"resolveYamlNull");function rz(){return null}o(rz,"constructYamlNull");function nz(n){return n===null}o(nz,"isNull");var VP=new $r("tag:yaml.org,2002:null",{kind:"scalar",resolve:tz,construct:rz,predicate:nz,represent:{canonical:o(function(){return"~"},"canonical"),lowercase:o(function(){return"null"},"lowercase"),uppercase:o(function(){return"NULL"},"uppercase"),camelcase:o(function(){return"Null"},"camelcase"),empty:o(function(){return""},"empty")},defaultStyle:"lowercase"});function iz(n){if(n===null)return!1;var e=n.length;return e===4&&(n==="true"||n==="True"||n==="TRUE")||e===5&&(n==="false"||n==="False"||n==="FALSE")}o(iz,"resolveYamlBoolean");function sz(n){return n==="true"||n==="True"||n==="TRUE"}o(sz,"constructYamlBoolean");function az(n){return Object.prototype.toString.call(n)==="[object Boolean]"}o(az,"isBoolean");var UP=new $r("tag:yaml.org,2002:bool",{kind:"scalar",resolve:iz,construct:sz,predicate:az,represent:{lowercase:o(function(n){return n?"true":"false"},"lowercase"),uppercase:o(function(n){return n?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(n){return n?"True":"False"},"camelcase")},defaultStyle:"lowercase"});function oz(n){return 48<=n&&n<=57||65<=n&&n<=70||97<=n&&n<=102}o(oz,"isHexCode");function cz(n){return 48<=n&&n<=55}o(cz,"isOctCode");function lz(n){return 48<=n&&n<=57}o(lz,"isDecCode");function uz(n){if(n===null)return!1;var e=n.length,t=0,r=!1,i;if(!e)return!1;if(i=n[t],(i==="-"||i==="+")&&(i=n[++t]),i==="0"){if(t+1===e)return!0;if(i=n[++t],i==="b"){for(t++;t<e;t++)if(i=n[t],i!=="_"){if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){for(t++;t<e;t++)if(i=n[t],i!=="_"){if(!oz(n.charCodeAt(t)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(t++;t<e;t++)if(i=n[t],i!=="_"){if(!cz(n.charCodeAt(t)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;t<e;t++)if(i=n[t],i!=="_"){if(!lz(n.charCodeAt(t)))return!1;r=!0}return!(!r||i==="_")}o(uz,"resolveYamlInteger");function fz(n){var e=n,t=1,r;if(e.indexOf("_")!==-1&&(e=e.replace(/_/g,"")),r=e[0],(r==="-"||r==="+")&&(r==="-"&&(t=-1),e=e.slice(1),r=e[0]),e==="0")return 0;if(r==="0"){if(e[1]==="b")return t*parseInt(e.slice(2),2);if(e[1]==="x")return t*parseInt(e.slice(2),16);if(e[1]==="o")return t*parseInt(e.slice(2),8)}return t*parseInt(e,10)}o(fz,"constructYamlInteger");function dz(n){return Object.prototype.toString.call(n)==="[object Number]"&&n%1===0&&!hr.isNegativeZero(n)}o(dz,"isInteger");var qP=new $r("tag:yaml.org,2002:int",{kind:"scalar",resolve:uz,construct:fz,predicate:dz,represent:{binary:o(function(n){return n>=0?"0b"+n.toString(2):"-0b"+n.toString(2).slice(1)},"binary"),octal:o(function(n){return n>=0?"0o"+n.toString(8):"-0o"+n.toString(8).slice(1)},"octal"),decimal:o(function(n){return n.toString(10)},"decimal"),hexadecimal:o(function(n){return n>=0?"0x"+n.toString(16).toUpperCase():"-0x"+n.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),hz=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function pz(n){return!(n===null||!hz.test(n)||n[n.length-1]==="_")}o(pz,"resolveYamlFloat");function mz(n){var e,t;return e=n.replace(/_/g,"").toLowerCase(),t=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?t===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:t*parseFloat(e,10)}o(mz,"constructYamlFloat");var gz=/^[-+]?[0-9]+e/;function yz(n,e){var t;if(isNaN(n))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===n)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===n)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(hr.isNegativeZero(n))return"-0.0";return t=n.toString(10),gz.test(t)?t.replace("e",".e"):t}o(yz,"representYamlFloat");function _z(n){return Object.prototype.toString.call(n)==="[object Number]"&&(n%1!==0||hr.isNegativeZero(n))}o(_z,"isFloat");var WP=new $r("tag:yaml.org,2002:float",{kind:"scalar",resolve:pz,construct:mz,predicate:_z,represent:yz,defaultStyle:"lowercase"}),GP=BP.extend({implicit:[VP,UP,qP,WP]}),zP=GP,HP=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),QP=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Sz(n){return n===null?!1:HP.exec(n)!==null||QP.exec(n)!==null}o(Sz,"resolveYamlTimestamp");function vz(n){var e,t,r,i,s,a,c,l=0,u=null,f,d,h;if(e=HP.exec(n),e===null&&(e=QP.exec(n)),e===null)throw new Error("Date resolve error");if(t=+e[1],r=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(t,r,i));if(s=+e[4],a=+e[5],c=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(f=+e[10],d=+(e[11]||0),u=(f*60+d)*6e4,e[9]==="-"&&(u=-u)),h=new Date(Date.UTC(t,r,i,s,a,c,l)),u&&h.setTime(h.getTime()-u),h}o(vz,"constructYamlTimestamp");function bz(n){return n.toISOString()}o(bz,"representYamlTimestamp");var KP=new $r("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Sz,construct:vz,instanceOf:Date,represent:bz});function wz(n){return n==="<<"||n===null}o(wz,"resolveYamlMerge");var YP=new $r("tag:yaml.org,2002:merge",{kind:"scalar",resolve:wz}),Lw=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
470
- \r`;function Ez(n){if(n===null)return!1;var e,t,r=0,i=n.length,s=Lw;for(t=0;t<i;t++)if(e=s.indexOf(n.charAt(t)),!(e>64)){if(e<0)return!1;r+=6}return r%8===0}o(Ez,"resolveYamlBinary");function Tz(n){var e,t,r=n.replace(/[\r\n=]/g,""),i=r.length,s=Lw,a=0,c=[];for(e=0;e<i;e++)e%4===0&&e&&(c.push(a>>16&255),c.push(a>>8&255),c.push(a&255)),a=a<<6|s.indexOf(r.charAt(e));return t=i%4*6,t===0?(c.push(a>>16&255),c.push(a>>8&255),c.push(a&255)):t===18?(c.push(a>>10&255),c.push(a>>2&255)):t===12&&c.push(a>>4&255),new Uint8Array(c)}o(Tz,"constructYamlBinary");function Az(n){var e="",t=0,r,i,s=n.length,a=Lw;for(r=0;r<s;r++)r%3===0&&r&&(e+=a[t>>18&63],e+=a[t>>12&63],e+=a[t>>6&63],e+=a[t&63]),t=(t<<8)+n[r];return i=s%3,i===0?(e+=a[t>>18&63],e+=a[t>>12&63],e+=a[t>>6&63],e+=a[t&63]):i===2?(e+=a[t>>10&63],e+=a[t>>4&63],e+=a[t<<2&63],e+=a[64]):i===1&&(e+=a[t>>2&63],e+=a[t<<4&63],e+=a[64],e+=a[64]),e}o(Az,"representYamlBinary");function xz(n){return Object.prototype.toString.call(n)==="[object Uint8Array]"}o(xz,"isBinary");var XP=new $r("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Ez,construct:Tz,predicate:xz,represent:Az}),Cz=Object.prototype.hasOwnProperty,Iz=Object.prototype.toString;function Rz(n){if(n===null)return!0;var e=[],t,r,i,s,a,c=n;for(t=0,r=c.length;t<r;t+=1){if(i=c[t],a=!1,Iz.call(i)!=="[object Object]")return!1;for(s in i)if(Cz.call(i,s))if(!a)a=!0;else return!1;if(!a)return!1;if(e.indexOf(s)===-1)e.push(s);else return!1}return!0}o(Rz,"resolveYamlOmap");function Pz(n){return n!==null?n:[]}o(Pz,"constructYamlOmap");var JP=new $r("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Rz,construct:Pz}),Oz=Object.prototype.toString;function Fz(n){if(n===null)return!0;var e,t,r,i,s,a=n;for(s=new Array(a.length),e=0,t=a.length;e<t;e+=1){if(r=a[e],Oz.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;s[e]=[i[0],r[i[0]]]}return!0}o(Fz,"resolveYamlPairs");function Dz(n){if(n===null)return[];var e,t,r,i,s,a=n;for(s=new Array(a.length),e=0,t=a.length;e<t;e+=1)r=a[e],i=Object.keys(r),s[e]=[i[0],r[i[0]]];return s}o(Dz,"constructYamlPairs");var ZP=new $r("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Fz,construct:Dz}),Nz=Object.prototype.hasOwnProperty;function Lz(n){if(n===null)return!0;var e,t=n;for(e in t)if(Nz.call(t,e)&&t[e]!==null)return!1;return!0}o(Lz,"resolveYamlSet");function kz(n){return n!==null?n:{}}o(kz,"constructYamlSet");var eO=new $r("tag:yaml.org,2002:set",{kind:"mapping",resolve:Lz,construct:kz}),kw=zP.extend({implicit:[KP,YP],explicit:[XP,JP,ZP,eO]}),to=Object.prototype.hasOwnProperty,yg=1,tO=2,rO=3,_g=4,Rw=1,Mz=2,vP=3,jz=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,$z=/[\x85\u2028\u2029]/,Bz=/[,\[\]\{\}]/,nO=/^(?:!|!!|![a-z\-]+!)$/i,iO=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function bP(n){return Object.prototype.toString.call(n)}o(bP,"_class");function xs(n){return n===10||n===13}o(xs,"is_EOL");function ec(n){return n===9||n===32}o(ec,"is_WHITE_SPACE");function Fn(n){return n===9||n===32||n===10||n===13}o(Fn,"is_WS_OR_EOL");function jl(n){return n===44||n===91||n===93||n===123||n===125}o(jl,"is_FLOW_INDICATOR");function Vz(n){var e;return 48<=n&&n<=57?n-48:(e=n|32,97<=e&&e<=102?e-97+10:-1)}o(Vz,"fromHexCode");function Uz(n){return n===120?2:n===117?4:n===85?8:0}o(Uz,"escapedHexLen");function qz(n){return 48<=n&&n<=57?n-48:-1}o(qz,"fromDecimalCode");function wP(n){return n===48?"\0":n===97?"\x07":n===98?"\b":n===116||n===9?" ":n===110?`
469
+ `;return c.replace(/\n$/,"")}o(QG,"makeSnippet");var KG=QG,YG=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],XG=["scalar","sequence","mapping"];function JG(n){var e={};return n!==null&&Object.keys(n).forEach(function(t){n[t].forEach(function(r){e[String(r)]=t})}),e}o(JG,"compileStyleAliases");function ZG(n,e){if(e=e||{},Object.keys(e).forEach(function(t){if(YG.indexOf(t)===-1)throw new Sn('Unknown option "'+t+'" is met in definition of "'+n+'" YAML type.')}),this.options=e,this.tag=n,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=JG(e.styleAliases||null),XG.indexOf(this.kind)===-1)throw new Sn('Unknown kind "'+this.kind+'" is specified for "'+n+'" YAML type.')}o(ZG,"Type$1");var Br=ZG;function SP(n,e){var t=[];return n[e].forEach(function(r){var i=t.length;t.forEach(function(s,a){s.tag===r.tag&&s.kind===r.kind&&s.multi===r.multi&&(i=a)}),t[i]=r}),t}o(SP,"compileList");function ez(){var n={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,t;function r(i){i.multi?(n.multi[i.kind].push(i),n.multi.fallback.push(i)):n[i.kind][i.tag]=n.fallback[i.tag]=i}for(o(r,"collectType"),e=0,t=arguments.length;e<t;e+=1)arguments[e].forEach(r);return n}o(ez,"compileMap");function Pw(n){return this.extend(n)}o(Pw,"Schema$1");Pw.prototype.extend=o(function(e){var t=[],r=[];if(e instanceof Br)r.push(e);else if(Array.isArray(e))r=r.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(t=t.concat(e.implicit)),e.explicit&&(r=r.concat(e.explicit));else throw new Sn("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");t.forEach(function(s){if(!(s instanceof Br))throw new Sn("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(s.loadKind&&s.loadKind!=="scalar")throw new Sn("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(s.multi)throw new Sn("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(s){if(!(s instanceof Br))throw new Sn("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(Pw.prototype);return i.implicit=(this.implicit||[]).concat(t),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=SP(i,"implicit"),i.compiledExplicit=SP(i,"explicit"),i.compiledTypeMap=ez(i.compiledImplicit,i.compiledExplicit),i},"extend");var kP=Pw,MP=new Br("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(n){return n!==null?n:""},"construct")}),jP=new Br("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(n){return n!==null?n:[]},"construct")}),$P=new Br("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(n){return n!==null?n:{}},"construct")}),BP=new kP({explicit:[MP,jP,$P]});function tz(n){if(n===null)return!0;var e=n.length;return e===1&&n==="~"||e===4&&(n==="null"||n==="Null"||n==="NULL")}o(tz,"resolveYamlNull");function rz(){return null}o(rz,"constructYamlNull");function nz(n){return n===null}o(nz,"isNull");var VP=new Br("tag:yaml.org,2002:null",{kind:"scalar",resolve:tz,construct:rz,predicate:nz,represent:{canonical:o(function(){return"~"},"canonical"),lowercase:o(function(){return"null"},"lowercase"),uppercase:o(function(){return"NULL"},"uppercase"),camelcase:o(function(){return"Null"},"camelcase"),empty:o(function(){return""},"empty")},defaultStyle:"lowercase"});function iz(n){if(n===null)return!1;var e=n.length;return e===4&&(n==="true"||n==="True"||n==="TRUE")||e===5&&(n==="false"||n==="False"||n==="FALSE")}o(iz,"resolveYamlBoolean");function sz(n){return n==="true"||n==="True"||n==="TRUE"}o(sz,"constructYamlBoolean");function az(n){return Object.prototype.toString.call(n)==="[object Boolean]"}o(az,"isBoolean");var UP=new Br("tag:yaml.org,2002:bool",{kind:"scalar",resolve:iz,construct:sz,predicate:az,represent:{lowercase:o(function(n){return n?"true":"false"},"lowercase"),uppercase:o(function(n){return n?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(n){return n?"True":"False"},"camelcase")},defaultStyle:"lowercase"});function oz(n){return 48<=n&&n<=57||65<=n&&n<=70||97<=n&&n<=102}o(oz,"isHexCode");function cz(n){return 48<=n&&n<=55}o(cz,"isOctCode");function lz(n){return 48<=n&&n<=57}o(lz,"isDecCode");function uz(n){if(n===null)return!1;var e=n.length,t=0,r=!1,i;if(!e)return!1;if(i=n[t],(i==="-"||i==="+")&&(i=n[++t]),i==="0"){if(t+1===e)return!0;if(i=n[++t],i==="b"){for(t++;t<e;t++)if(i=n[t],i!=="_"){if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){for(t++;t<e;t++)if(i=n[t],i!=="_"){if(!oz(n.charCodeAt(t)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(t++;t<e;t++)if(i=n[t],i!=="_"){if(!cz(n.charCodeAt(t)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;t<e;t++)if(i=n[t],i!=="_"){if(!lz(n.charCodeAt(t)))return!1;r=!0}return!(!r||i==="_")}o(uz,"resolveYamlInteger");function fz(n){var e=n,t=1,r;if(e.indexOf("_")!==-1&&(e=e.replace(/_/g,"")),r=e[0],(r==="-"||r==="+")&&(r==="-"&&(t=-1),e=e.slice(1),r=e[0]),e==="0")return 0;if(r==="0"){if(e[1]==="b")return t*parseInt(e.slice(2),2);if(e[1]==="x")return t*parseInt(e.slice(2),16);if(e[1]==="o")return t*parseInt(e.slice(2),8)}return t*parseInt(e,10)}o(fz,"constructYamlInteger");function dz(n){return Object.prototype.toString.call(n)==="[object Number]"&&n%1===0&&!hr.isNegativeZero(n)}o(dz,"isInteger");var qP=new Br("tag:yaml.org,2002:int",{kind:"scalar",resolve:uz,construct:fz,predicate:dz,represent:{binary:o(function(n){return n>=0?"0b"+n.toString(2):"-0b"+n.toString(2).slice(1)},"binary"),octal:o(function(n){return n>=0?"0o"+n.toString(8):"-0o"+n.toString(8).slice(1)},"octal"),decimal:o(function(n){return n.toString(10)},"decimal"),hexadecimal:o(function(n){return n>=0?"0x"+n.toString(16).toUpperCase():"-0x"+n.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),hz=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function pz(n){return!(n===null||!hz.test(n)||n[n.length-1]==="_")}o(pz,"resolveYamlFloat");function mz(n){var e,t;return e=n.replace(/_/g,"").toLowerCase(),t=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?t===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:t*parseFloat(e,10)}o(mz,"constructYamlFloat");var gz=/^[-+]?[0-9]+e/;function yz(n,e){var t;if(isNaN(n))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===n)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===n)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(hr.isNegativeZero(n))return"-0.0";return t=n.toString(10),gz.test(t)?t.replace("e",".e"):t}o(yz,"representYamlFloat");function _z(n){return Object.prototype.toString.call(n)==="[object Number]"&&(n%1!==0||hr.isNegativeZero(n))}o(_z,"isFloat");var WP=new Br("tag:yaml.org,2002:float",{kind:"scalar",resolve:pz,construct:mz,predicate:_z,represent:yz,defaultStyle:"lowercase"}),GP=BP.extend({implicit:[VP,UP,qP,WP]}),zP=GP,HP=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),QP=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Sz(n){return n===null?!1:HP.exec(n)!==null||QP.exec(n)!==null}o(Sz,"resolveYamlTimestamp");function vz(n){var e,t,r,i,s,a,c,l=0,u=null,f,d,h;if(e=HP.exec(n),e===null&&(e=QP.exec(n)),e===null)throw new Error("Date resolve error");if(t=+e[1],r=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(t,r,i));if(s=+e[4],a=+e[5],c=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(f=+e[10],d=+(e[11]||0),u=(f*60+d)*6e4,e[9]==="-"&&(u=-u)),h=new Date(Date.UTC(t,r,i,s,a,c,l)),u&&h.setTime(h.getTime()-u),h}o(vz,"constructYamlTimestamp");function bz(n){return n.toISOString()}o(bz,"representYamlTimestamp");var KP=new Br("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Sz,construct:vz,instanceOf:Date,represent:bz});function wz(n){return n==="<<"||n===null}o(wz,"resolveYamlMerge");var YP=new Br("tag:yaml.org,2002:merge",{kind:"scalar",resolve:wz}),Lw=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
470
+ \r`;function Ez(n){if(n===null)return!1;var e,t,r=0,i=n.length,s=Lw;for(t=0;t<i;t++)if(e=s.indexOf(n.charAt(t)),!(e>64)){if(e<0)return!1;r+=6}return r%8===0}o(Ez,"resolveYamlBinary");function Tz(n){var e,t,r=n.replace(/[\r\n=]/g,""),i=r.length,s=Lw,a=0,c=[];for(e=0;e<i;e++)e%4===0&&e&&(c.push(a>>16&255),c.push(a>>8&255),c.push(a&255)),a=a<<6|s.indexOf(r.charAt(e));return t=i%4*6,t===0?(c.push(a>>16&255),c.push(a>>8&255),c.push(a&255)):t===18?(c.push(a>>10&255),c.push(a>>2&255)):t===12&&c.push(a>>4&255),new Uint8Array(c)}o(Tz,"constructYamlBinary");function Az(n){var e="",t=0,r,i,s=n.length,a=Lw;for(r=0;r<s;r++)r%3===0&&r&&(e+=a[t>>18&63],e+=a[t>>12&63],e+=a[t>>6&63],e+=a[t&63]),t=(t<<8)+n[r];return i=s%3,i===0?(e+=a[t>>18&63],e+=a[t>>12&63],e+=a[t>>6&63],e+=a[t&63]):i===2?(e+=a[t>>10&63],e+=a[t>>4&63],e+=a[t<<2&63],e+=a[64]):i===1&&(e+=a[t>>2&63],e+=a[t<<4&63],e+=a[64],e+=a[64]),e}o(Az,"representYamlBinary");function xz(n){return Object.prototype.toString.call(n)==="[object Uint8Array]"}o(xz,"isBinary");var XP=new Br("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Ez,construct:Tz,predicate:xz,represent:Az}),Cz=Object.prototype.hasOwnProperty,Iz=Object.prototype.toString;function Rz(n){if(n===null)return!0;var e=[],t,r,i,s,a,c=n;for(t=0,r=c.length;t<r;t+=1){if(i=c[t],a=!1,Iz.call(i)!=="[object Object]")return!1;for(s in i)if(Cz.call(i,s))if(!a)a=!0;else return!1;if(!a)return!1;if(e.indexOf(s)===-1)e.push(s);else return!1}return!0}o(Rz,"resolveYamlOmap");function Pz(n){return n!==null?n:[]}o(Pz,"constructYamlOmap");var JP=new Br("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Rz,construct:Pz}),Oz=Object.prototype.toString;function Fz(n){if(n===null)return!0;var e,t,r,i,s,a=n;for(s=new Array(a.length),e=0,t=a.length;e<t;e+=1){if(r=a[e],Oz.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;s[e]=[i[0],r[i[0]]]}return!0}o(Fz,"resolveYamlPairs");function Dz(n){if(n===null)return[];var e,t,r,i,s,a=n;for(s=new Array(a.length),e=0,t=a.length;e<t;e+=1)r=a[e],i=Object.keys(r),s[e]=[i[0],r[i[0]]];return s}o(Dz,"constructYamlPairs");var ZP=new Br("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Fz,construct:Dz}),Nz=Object.prototype.hasOwnProperty;function Lz(n){if(n===null)return!0;var e,t=n;for(e in t)if(Nz.call(t,e)&&t[e]!==null)return!1;return!0}o(Lz,"resolveYamlSet");function kz(n){return n!==null?n:{}}o(kz,"constructYamlSet");var eO=new Br("tag:yaml.org,2002:set",{kind:"mapping",resolve:Lz,construct:kz}),kw=zP.extend({implicit:[KP,YP],explicit:[XP,JP,ZP,eO]}),to=Object.prototype.hasOwnProperty,yg=1,tO=2,rO=3,_g=4,Rw=1,Mz=2,vP=3,jz=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,$z=/[\x85\u2028\u2029]/,Bz=/[,\[\]\{\}]/,nO=/^(?:!|!!|![a-z\-]+!)$/i,iO=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function bP(n){return Object.prototype.toString.call(n)}o(bP,"_class");function xs(n){return n===10||n===13}o(xs,"is_EOL");function ec(n){return n===9||n===32}o(ec,"is_WHITE_SPACE");function Fn(n){return n===9||n===32||n===10||n===13}o(Fn,"is_WS_OR_EOL");function jl(n){return n===44||n===91||n===93||n===123||n===125}o(jl,"is_FLOW_INDICATOR");function Vz(n){var e;return 48<=n&&n<=57?n-48:(e=n|32,97<=e&&e<=102?e-97+10:-1)}o(Vz,"fromHexCode");function Uz(n){return n===120?2:n===117?4:n===85?8:0}o(Uz,"escapedHexLen");function qz(n){return 48<=n&&n<=57?n-48:-1}o(qz,"fromDecimalCode");function wP(n){return n===48?"\0":n===97?"\x07":n===98?"\b":n===116||n===9?" ":n===110?`
471
471
  `:n===118?"\v":n===102?"\f":n===114?"\r":n===101?"\x1B":n===32?" ":n===34?'"':n===47?"/":n===92?"\\":n===78?"\x85":n===95?"\xA0":n===76?"\u2028":n===80?"\u2029":""}o(wP,"simpleEscapeSequence");function Wz(n){return n<=65535?String.fromCharCode(n):String.fromCharCode((n-65536>>10)+55296,(n-65536&1023)+56320)}o(Wz,"charFromCodepoint");function sO(n,e,t){e==="__proto__"?Object.defineProperty(n,e,{configurable:!0,enumerable:!0,writable:!0,value:t}):n[e]=t}o(sO,"setProperty");var aO=new Array(256),oO=new Array(256);for(Zo=0;Zo<256;Zo++)aO[Zo]=wP(Zo)?1:0,oO[Zo]=wP(Zo);var Zo;function Gz(n,e){this.input=n,this.filename=e.filename||null,this.schema=e.schema||kw,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=n.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}o(Gz,"State$1");function cO(n,e){var t={name:n.filename,buffer:n.input.slice(0,-1),position:n.position,line:n.line,column:n.position-n.lineStart};return t.snippet=KG(t),new Sn(e,t)}o(cO,"generateError");function oe(n,e){throw cO(n,e)}o(oe,"throwError");function Sg(n,e){n.onWarning&&n.onWarning.call(null,cO(n,e))}o(Sg,"throwWarning");var EP={YAML:o(function(e,t,r){var i,s,a;e.version!==null&&oe(e,"duplication of %YAML directive"),r.length!==1&&oe(e,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&oe(e,"ill-formed argument of the YAML directive"),s=parseInt(i[1],10),a=parseInt(i[2],10),s!==1&&oe(e,"unacceptable YAML version of the document"),e.version=r[0],e.checkLineBreaks=a<2,a!==1&&a!==2&&Sg(e,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(e,t,r){var i,s;r.length!==2&&oe(e,"TAG directive accepts exactly two arguments"),i=r[0],s=r[1],nO.test(i)||oe(e,"ill-formed tag handle (first argument) of the TAG directive"),to.call(e.tagMap,i)&&oe(e,'there is a previously declared suffix for "'+i+'" tag handle'),iO.test(s)||oe(e,"ill-formed tag prefix (second argument) of the TAG directive");try{s=decodeURIComponent(s)}catch{oe(e,"tag prefix is malformed: "+s)}e.tagMap[i]=s},"handleTagDirective")};function eo(n,e,t,r){var i,s,a,c;if(e<t){if(c=n.input.slice(e,t),r)for(i=0,s=c.length;i<s;i+=1)a=c.charCodeAt(i),a===9||32<=a&&a<=1114111||oe(n,"expected valid JSON character");else jz.test(c)&&oe(n,"the stream contains non-printable characters");n.result+=c}}o(eo,"captureSegment");function TP(n,e,t,r){var i,s,a,c;for(hr.isObject(t)||oe(n,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(t),a=0,c=i.length;a<c;a+=1)s=i[a],to.call(e,s)||(sO(e,s,t[s]),r[s]=!0)}o(TP,"mergeMappings");function $l(n,e,t,r,i,s,a,c,l){var u,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),u=0,f=i.length;u<f;u+=1)Array.isArray(i[u])&&oe(n,"nested arrays are not supported inside keys"),typeof i=="object"&&bP(i[u])==="[object Object]"&&(i[u]="[object Object]");if(typeof i=="object"&&bP(i)==="[object Object]"&&(i="[object Object]"),i=String(i),e===null&&(e={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(s))for(u=0,f=s.length;u<f;u+=1)TP(n,e,s[u],t);else TP(n,e,s,t);else!n.json&&!to.call(t,i)&&to.call(e,i)&&(n.line=a||n.line,n.lineStart=c||n.lineStart,n.position=l||n.position,oe(n,"duplicated mapping key")),sO(e,i,s),delete t[i];return e}o($l,"storeMappingPair");function Mw(n){var e;e=n.input.charCodeAt(n.position),e===10?n.position++:e===13?(n.position++,n.input.charCodeAt(n.position)===10&&n.position++):oe(n,"a line break is expected"),n.line+=1,n.lineStart=n.position,n.firstTabInLine=-1}o(Mw,"readLineBreak");function ir(n,e,t){for(var r=0,i=n.input.charCodeAt(n.position);i!==0;){for(;ec(i);)i===9&&n.firstTabInLine===-1&&(n.firstTabInLine=n.position),i=n.input.charCodeAt(++n.position);if(e&&i===35)do i=n.input.charCodeAt(++n.position);while(i!==10&&i!==13&&i!==0);if(xs(i))for(Mw(n),i=n.input.charCodeAt(n.position),r++,n.lineIndent=0;i===32;)n.lineIndent++,i=n.input.charCodeAt(++n.position);else break}return t!==-1&&r!==0&&n.lineIndent<t&&Sg(n,"deficient indentation"),r}o(ir,"skipSeparationSpace");function wg(n){var e=n.position,t;return t=n.input.charCodeAt(e),!!((t===45||t===46)&&t===n.input.charCodeAt(e+1)&&t===n.input.charCodeAt(e+2)&&(e+=3,t=n.input.charCodeAt(e),t===0||Fn(t)))}o(wg,"testDocumentSeparator");function jw(n,e){e===1?n.result+=" ":e>1&&(n.result+=hr.repeat(`
472
472
  `,e-1))}o(jw,"writeFoldedLines");function zz(n,e,t){var r,i,s,a,c,l,u,f,d=n.kind,h=n.result,p;if(p=n.input.charCodeAt(n.position),Fn(p)||jl(p)||p===35||p===38||p===42||p===33||p===124||p===62||p===39||p===34||p===37||p===64||p===96||(p===63||p===45)&&(i=n.input.charCodeAt(n.position+1),Fn(i)||t&&jl(i)))return!1;for(n.kind="scalar",n.result="",s=a=n.position,c=!1;p!==0;){if(p===58){if(i=n.input.charCodeAt(n.position+1),Fn(i)||t&&jl(i))break}else if(p===35){if(r=n.input.charCodeAt(n.position-1),Fn(r))break}else{if(n.position===n.lineStart&&wg(n)||t&&jl(p))break;if(xs(p))if(l=n.line,u=n.lineStart,f=n.lineIndent,ir(n,!1,-1),n.lineIndent>=e){c=!0,p=n.input.charCodeAt(n.position);continue}else{n.position=a,n.line=l,n.lineStart=u,n.lineIndent=f;break}}c&&(eo(n,s,a,!1),jw(n,n.line-l),s=a=n.position,c=!1),ec(p)||(a=n.position+1),p=n.input.charCodeAt(++n.position)}return eo(n,s,a,!1),n.result?!0:(n.kind=d,n.result=h,!1)}o(zz,"readPlainScalar");function Hz(n,e){var t,r,i;if(t=n.input.charCodeAt(n.position),t!==39)return!1;for(n.kind="scalar",n.result="",n.position++,r=i=n.position;(t=n.input.charCodeAt(n.position))!==0;)if(t===39)if(eo(n,r,n.position,!0),t=n.input.charCodeAt(++n.position),t===39)r=n.position,n.position++,i=n.position;else return!0;else xs(t)?(eo(n,r,i,!0),jw(n,ir(n,!1,e)),r=i=n.position):n.position===n.lineStart&&wg(n)?oe(n,"unexpected end of the document within a single quoted scalar"):(n.position++,i=n.position);oe(n,"unexpected end of the stream within a single quoted scalar")}o(Hz,"readSingleQuotedScalar");function Qz(n,e){var t,r,i,s,a,c;if(c=n.input.charCodeAt(n.position),c!==34)return!1;for(n.kind="scalar",n.result="",n.position++,t=r=n.position;(c=n.input.charCodeAt(n.position))!==0;){if(c===34)return eo(n,t,n.position,!0),n.position++,!0;if(c===92){if(eo(n,t,n.position,!0),c=n.input.charCodeAt(++n.position),xs(c))ir(n,!1,e);else if(c<256&&aO[c])n.result+=oO[c],n.position++;else if((a=Uz(c))>0){for(i=a,s=0;i>0;i--)c=n.input.charCodeAt(++n.position),(a=Vz(c))>=0?s=(s<<4)+a:oe(n,"expected hexadecimal character");n.result+=Wz(s),n.position++}else oe(n,"unknown escape sequence");t=r=n.position}else xs(c)?(eo(n,t,r,!0),jw(n,ir(n,!1,e)),t=r=n.position):n.position===n.lineStart&&wg(n)?oe(n,"unexpected end of the document within a double quoted scalar"):(n.position++,r=n.position)}oe(n,"unexpected end of the stream within a double quoted scalar")}o(Qz,"readDoubleQuotedScalar");function Kz(n,e){var t=!0,r,i,s,a=n.tag,c,l=n.anchor,u,f,d,h,p,y=Object.create(null),v,w,b,A;if(A=n.input.charCodeAt(n.position),A===91)f=93,p=!1,c=[];else if(A===123)f=125,p=!0,c={};else return!1;for(n.anchor!==null&&(n.anchorMap[n.anchor]=c),A=n.input.charCodeAt(++n.position);A!==0;){if(ir(n,!0,e),A=n.input.charCodeAt(n.position),A===f)return n.position++,n.tag=a,n.anchor=l,n.kind=p?"mapping":"sequence",n.result=c,!0;t?A===44&&oe(n,"expected the node content, but found ','"):oe(n,"missed comma between flow collection entries"),w=v=b=null,d=h=!1,A===63&&(u=n.input.charCodeAt(n.position+1),Fn(u)&&(d=h=!0,n.position++,ir(n,!0,e))),r=n.line,i=n.lineStart,s=n.position,Bl(n,e,yg,!1,!0),w=n.tag,v=n.result,ir(n,!0,e),A=n.input.charCodeAt(n.position),(h||n.line===r)&&A===58&&(d=!0,A=n.input.charCodeAt(++n.position),ir(n,!0,e),Bl(n,e,yg,!1,!0),b=n.result),p?$l(n,c,y,w,v,b,r,i,s):d?c.push($l(n,null,y,w,v,b,r,i,s)):c.push(v),ir(n,!0,e),A=n.input.charCodeAt(n.position),A===44?(t=!0,A=n.input.charCodeAt(++n.position)):t=!1}oe(n,"unexpected end of the stream within a flow collection")}o(Kz,"readFlowCollection");function Yz(n,e){var t,r,i=Rw,s=!1,a=!1,c=e,l=0,u=!1,f,d;if(d=n.input.charCodeAt(n.position),d===124)r=!1;else if(d===62)r=!0;else return!1;for(n.kind="scalar",n.result="";d!==0;)if(d=n.input.charCodeAt(++n.position),d===43||d===45)Rw===i?i=d===43?vP:Mz:oe(n,"repeat of a chomping mode identifier");else if((f=qz(d))>=0)f===0?oe(n,"bad explicit indentation width of a block scalar; it cannot be less than one"):a?oe(n,"repeat of an indentation width identifier"):(c=e+f-1,a=!0);else break;if(ec(d)){do d=n.input.charCodeAt(++n.position);while(ec(d));if(d===35)do d=n.input.charCodeAt(++n.position);while(!xs(d)&&d!==0)}for(;d!==0;){for(Mw(n),n.lineIndent=0,d=n.input.charCodeAt(n.position);(!a||n.lineIndent<c)&&d===32;)n.lineIndent++,d=n.input.charCodeAt(++n.position);if(!a&&n.lineIndent>c&&(c=n.lineIndent),xs(d)){l++;continue}if(n.lineIndent<c){i===vP?n.result+=hr.repeat(`
473
473
  `,s?1+l:l):i===Rw&&s&&(n.result+=`
@@ -491,7 +491,7 @@ GFS4: `),console.error(n)},"debug"));Bt[jr]||(OI=global[jr]||[],DI(Bt,OI),Bt.clo
491
491
  `+n.slice(i,s),i=s+1),a=c;return l+=`
492
492
  `,n.length-i>e&&a>i?l+=n.slice(i,a)+`
493
493
  `+n.slice(a+1):l+=n.slice(i),l.slice(1)}o(OP,"foldLine");function NH(n){for(var e="",t=0,r,i=0;i<n.length;t>=65536?i+=2:i++)t=Lf(n,i),r=Zr[t],!r&&$f(t)?(e+=n[i],t>=65536&&(e+=n[i+1])):e+=r||AH(t);return e}o(NH,"escapeString");function LH(n,e,t){var r="",i=n.tag,s,a,c;for(s=0,a=t.length;s<a;s+=1)c=t[s],n.replacer&&(c=n.replacer.call(t,String(s),c)),(ma(n,e,c,!1,!1)||typeof c>"u"&&ma(n,e,null,!1,!1))&&(r!==""&&(r+=","+(n.condenseFlow?"":" ")),r+=n.dump);n.tag=i,n.dump="["+r+"]"}o(LH,"writeFlowSequence");function FP(n,e,t,r){var i="",s=n.tag,a,c,l;for(a=0,c=t.length;a<c;a+=1)l=t[a],n.replacer&&(l=n.replacer.call(t,String(a),l)),(ma(n,e+1,l,!0,!0,!1,!0)||typeof l>"u"&&ma(n,e+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=Fw(n,e)),n.dump&&Mf===n.dump.charCodeAt(0)?i+="-":i+="- ",i+=n.dump);n.tag=s,n.dump=i||"[]"}o(FP,"writeBlockSequence");function kH(n,e,t){var r="",i=n.tag,s=Object.keys(t),a,c,l,u,f;for(a=0,c=s.length;a<c;a+=1)f="",r!==""&&(f+=", "),n.condenseFlow&&(f+='"'),l=s[a],u=t[l],n.replacer&&(u=n.replacer.call(t,l,u)),ma(n,e,l,!1,!1)&&(n.dump.length>1024&&(f+="? "),f+=n.dump+(n.condenseFlow?'"':"")+":"+(n.condenseFlow?"":" "),ma(n,e,u,!1,!1)&&(f+=n.dump,r+=f));n.tag=i,n.dump="{"+r+"}"}o(kH,"writeFlowMapping");function MH(n,e,t,r){var i="",s=n.tag,a=Object.keys(t),c,l,u,f,d,h;if(n.sortKeys===!0)a.sort();else if(typeof n.sortKeys=="function")a.sort(n.sortKeys);else if(n.sortKeys)throw new Sn("sortKeys must be a boolean or a function");for(c=0,l=a.length;c<l;c+=1)h="",(!r||i!=="")&&(h+=Fw(n,e)),u=a[c],f=t[u],n.replacer&&(f=n.replacer.call(t,u,f)),ma(n,e+1,u,!0,!0,!0)&&(d=n.tag!==null&&n.tag!=="?"||n.dump&&n.dump.length>1024,d&&(n.dump&&Mf===n.dump.charCodeAt(0)?h+="?":h+="? "),h+=n.dump,d&&(h+=Fw(n,e)),ma(n,e+1,f,!0,d)&&(n.dump&&Mf===n.dump.charCodeAt(0)?h+=":":h+=": ",h+=n.dump,i+=h));n.tag=s,n.dump=i||"{}"}o(MH,"writeBlockMapping");function DP(n,e,t){var r,i,s,a,c,l;for(i=t?n.explicitTypes:n.implicitTypes,s=0,a=i.length;s<a;s+=1)if(c=i[s],(c.instanceOf||c.predicate)&&(!c.instanceOf||typeof e=="object"&&e instanceof c.instanceOf)&&(!c.predicate||c.predicate(e))){if(t?c.multi&&c.representName?n.tag=c.representName(e):n.tag=c.tag:n.tag="?",c.represent){if(l=n.styleMap[c.tag]||c.defaultStyle,fO.call(c.represent)==="[object Function]")r=c.represent(e,l);else if(dO.call(c.represent,l))r=c.represent[l](e,l);else throw new Sn("!<"+c.tag+'> tag resolver accepts not "'+l+'" style');n.dump=r}return!0}return!1}o(DP,"detectType");function ma(n,e,t,r,i,s,a){n.tag=null,n.dump=t,DP(n,t,!1)||DP(n,t,!0);var c=fO.call(n.dump),l=r,u;r&&(r=n.flowLevel<0||n.flowLevel>e);var f=c==="[object Object]"||c==="[object Array]",d,h;if(f&&(d=n.duplicates.indexOf(t),h=d!==-1),(n.tag!==null&&n.tag!=="?"||h||n.indent!==2&&e>0)&&(i=!1),h&&n.usedDuplicates[d])n.dump="*ref_"+d;else{if(f&&h&&!n.usedDuplicates[d]&&(n.usedDuplicates[d]=!0),c==="[object Object]")r&&Object.keys(n.dump).length!==0?(MH(n,e,n.dump,i),h&&(n.dump="&ref_"+d+n.dump)):(kH(n,e,n.dump),h&&(n.dump="&ref_"+d+" "+n.dump));else if(c==="[object Array]")r&&n.dump.length!==0?(n.noArrayIndent&&!a&&e>0?FP(n,e-1,n.dump,i):FP(n,e,n.dump,i),h&&(n.dump="&ref_"+d+n.dump)):(LH(n,e,n.dump),h&&(n.dump="&ref_"+d+" "+n.dump));else if(c==="[object String]")n.tag!=="?"&&FH(n,n.dump,e,s,l);else{if(c==="[object Undefined]")return!1;if(n.skipInvalid)return!1;throw new Sn("unacceptable kind of an object to dump "+c)}n.tag!==null&&n.tag!=="?"&&(u=encodeURI(n.tag[0]==="!"?n.tag.slice(1):n.tag).replace(/!/g,"%21"),n.tag[0]==="!"?u="!"+u:u.slice(0,18)==="tag:yaml.org,2002:"?u="!!"+u.slice(18):u="!<"+u+">",n.dump=u+" "+n.dump)}return!0}o(ma,"writeNode");function jH(n,e){var t=[],r=[],i,s;for(Nw(n,t,r),i=0,s=r.length;i<s;i+=1)e.duplicates.push(t[r[i]]);e.usedDuplicates=new Array(s)}o(jH,"getDuplicateReferences");function Nw(n,e,t){var r,i,s;if(n!==null&&typeof n=="object")if(i=e.indexOf(n),i!==-1)t.indexOf(i)===-1&&t.push(i);else if(e.push(n),Array.isArray(n))for(i=0,s=n.length;i<s;i+=1)Nw(n[i],e,t);else for(r=Object.keys(n),i=0,s=r.length;i<s;i+=1)Nw(n[r[i]],e,t)}o(Nw,"inspectNode");function $H(n,e){e=e||{};var t=new CH(e);t.noRefs||jH(n,t);var r=n;return t.replacer&&(r=t.replacer.call({"":r},"",r)),ma(t,0,r,!0,!0)?t.dump+`
494
- `:""}o($H,"dump$1");var BH=$H,VH={dump:BH};function Bw(n,e){return function(){throw new Error("Function yaml."+n+" is removed in js-yaml 4. Use yaml."+e+" instead, which is now safe by default.")}}o(Bw,"renamed");var UH=$r,qH=kP,WH=BP,GH=GP,zH=zP,HH=kw,QH=uO.load,KH=uO.loadAll,YH=VH.dump,XH=Sn,JH={binary:XP,float:WP,map:$P,null:VP,pairs:ZP,set:eO,timestamp:KP,bool:UP,int:qP,merge:YP,omap:JP,seq:jP,str:MP},ZH=Bw("safeLoad","load"),eQ=Bw("safeLoadAll","loadAll"),tQ=Bw("safeDump","dump"),sr={Type:UH,Schema:qH,FAILSAFE_SCHEMA:WH,JSON_SCHEMA:GH,CORE_SCHEMA:zH,DEFAULT_SCHEMA:HH,load:QH,loadAll:KH,dump:YH,YAMLException:XH,types:JH,safeLoad:ZH,safeLoadAll:eQ,safeDump:tQ};var rQ=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,Nt=class{constructor(e){this.rootPath=e;this.uuidIndex=null;this.basenameIndex=null;this.aliasIndex=null}static{o(this,"FileSystemVaultAdapter")}async read(e){let t=this.resolvePath(e.path);if(!await ar.default.pathExists(t))throw new Error(`File not found: ${e.path}`);return ar.default.readFile(t,"utf-8")}async create(e,t){let r=this.resolvePath(e);if(await ar.default.pathExists(r))throw new Error(`File already exists: ${e}`);return await ar.default.ensureDir(or.default.dirname(r)),await ar.default.writeFile(r,t,"utf-8"),this.createFileObject(e)}async modify(e,t){let r=this.resolvePath(e.path);if(!await ar.default.pathExists(r))throw new Error(`File not found: ${e.path}`);await ar.default.writeFile(r,t,"utf-8")}async delete(e){let t=this.resolvePath(e.path);if(!await ar.default.pathExists(t))throw new Error(`File not found: ${e.path}`);await ar.default.remove(t)}async exists(e){let t=this.resolvePath(e);return ar.default.pathExists(t)}getAbstractFileByPath(e){let t=this.resolvePath(e);try{let r=ar.default.statSync(t);if(r.isFile())return this.createFileObject(e);if(r.isDirectory())return this.createFolderObject(e)}catch{return null}return null}getAllFiles(){let e=[];return this.walkDirectory(this.rootPath,t=>{if(t.endsWith(".md")){let r=or.default.relative(this.rootPath,t);e.push(this.createFileObject(r))}}),e}getFrontmatter(e){try{let t=ar.default.readFileSync(this.resolvePath(e.path),"utf-8");return this.extractFrontmatter(t)}catch{return null}}async updateFrontmatter(e,t){let r=await this.read(e),i=this.extractFrontmatter(r)||{},s=t(i),a=this.replaceFrontmatter(r,s);await this.modify(e,a)}async rename(e,t){let r=this.resolvePath(e.path),i=this.resolvePath(t);if(!await ar.default.pathExists(r))throw new Error(`File not found: ${e.path}`);await ar.default.ensureDir(or.default.dirname(i)),await ar.default.move(r,i)}async createFolder(e){let t=this.resolvePath(e);await ar.default.ensureDir(t)}getFirstLinkpathDest(e,t){let r=e.split("|")[0].trim();if(!r)return null;if(rQ.test(r)){this.uuidIndex===null&&this.buildUuidIndex();let u=r.toLowerCase(),f=this.uuidIndex.get(u);return f?this.createFileObject(f):null}let i=or.default.dirname(this.resolvePath(t)),s;if(or.default.isAbsolute(r)?s=this.resolvePath(r):s=or.default.resolve(i,r),r.endsWith(".md")||(s+=".md"),ar.default.existsSync(s)){let u=or.default.relative(this.rootPath,s);return this.createFileObject(u)}(this.basenameIndex===null||this.aliasIndex===null)&&this.buildLinkpathIndex();let a=r.toLowerCase(),c=this.basenameIndex.get(a);if(c)return this.createFileObject(c);let l=this.aliasIndex.get(a);return l?this.createFileObject(l):null}buildLinkpathIndex(){this.basenameIndex=new Map,this.aliasIndex=new Map,this.walkDirectory(this.rootPath,e=>{if(!e.endsWith(".md"))return;let t=or.default.relative(this.rootPath,e),r=or.default.basename(e,".md").toLowerCase();this.basenameIndex.has(r)||this.basenameIndex.set(r,t);let i;try{i=ar.default.readFileSync(e,"utf-8")}catch{return}let s=this.extractFrontmatter(i);if(!s)return;let a=s.aliases,c=Array.isArray(a)?a:typeof a=="string"?[a]:[];for(let l of c){if(typeof l!="string")continue;let u=l.trim().toLowerCase();u&&(this.aliasIndex.has(u)||this.aliasIndex.set(u,t))}})}buildUuidIndex(){this.uuidIndex=new Map,this.walkDirectory(this.rootPath,e=>{if(e.endsWith(".md")){let r=or.default.basename(e,".md").match(/^([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})/i);if(r){let i=r[1].toLowerCase(),s=or.default.relative(this.rootPath,e);this.uuidIndex.set(i,s)}}})}async process(e,t){let r=await this.read(e),i=t(r);return await this.modify(e,i),i}getDefaultNewFileParent(){return{path:"",name:""}}async updateLinks(e,t,r){return Promise.resolve()}resolvePath(e){return or.default.isAbsolute(e)?e:or.default.join(this.rootPath,e)}createFileObject(e){let t=or.default.basename(e),r=or.default.basename(e,or.default.extname(e)),i=or.default.dirname(e);return{path:e,basename:r,name:t,parent:i!=="."?this.createFolderObject(i):null}}createFolderObject(e){return{path:e,name:or.default.basename(e)}}extractFrontmatter(e){let t=/^---\n([\s\S]*?)\n---/,r=e.match(t);if(!r)return null;try{let i=sr.load(r[1]);return typeof i=="object"&&i!==null?i:null}catch{return null}}replaceFrontmatter(e,t){let r=sr.dump(t,{lineWidth:-1,noRefs:!0,quotingType:'"'}),i=/^---\n([\s\S]*?)\n---/;return e.match(i)?e.replace(i,`---
494
+ `:""}o($H,"dump$1");var BH=$H,VH={dump:BH};function Bw(n,e){return function(){throw new Error("Function yaml."+n+" is removed in js-yaml 4. Use yaml."+e+" instead, which is now safe by default.")}}o(Bw,"renamed");var UH=Br,qH=kP,WH=BP,GH=GP,zH=zP,HH=kw,QH=uO.load,KH=uO.loadAll,YH=VH.dump,XH=Sn,JH={binary:XP,float:WP,map:$P,null:VP,pairs:ZP,set:eO,timestamp:KP,bool:UP,int:qP,merge:YP,omap:JP,seq:jP,str:MP},ZH=Bw("safeLoad","load"),eQ=Bw("safeLoadAll","loadAll"),tQ=Bw("safeDump","dump"),sr={Type:UH,Schema:qH,FAILSAFE_SCHEMA:WH,JSON_SCHEMA:GH,CORE_SCHEMA:zH,DEFAULT_SCHEMA:HH,load:QH,loadAll:KH,dump:YH,YAMLException:XH,types:JH,safeLoad:ZH,safeLoadAll:eQ,safeDump:tQ};var rQ=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,Nt=class{constructor(e){this.rootPath=e;this.uuidIndex=null;this.basenameIndex=null;this.aliasIndex=null}static{o(this,"FileSystemVaultAdapter")}async read(e){let t=this.resolvePath(e.path);if(!await ar.default.pathExists(t))throw new Error(`File not found: ${e.path}`);return ar.default.readFile(t,"utf-8")}async create(e,t){let r=this.resolvePath(e);if(await ar.default.pathExists(r))throw new Error(`File already exists: ${e}`);return await ar.default.ensureDir(or.default.dirname(r)),await ar.default.writeFile(r,t,"utf-8"),this.createFileObject(e)}async modify(e,t){let r=this.resolvePath(e.path);if(!await ar.default.pathExists(r))throw new Error(`File not found: ${e.path}`);await ar.default.writeFile(r,t,"utf-8")}async delete(e){let t=this.resolvePath(e.path);if(!await ar.default.pathExists(t))throw new Error(`File not found: ${e.path}`);await ar.default.remove(t)}async exists(e){let t=this.resolvePath(e);return ar.default.pathExists(t)}getAbstractFileByPath(e){let t=this.resolvePath(e);try{let r=ar.default.statSync(t);if(r.isFile())return this.createFileObject(e);if(r.isDirectory())return this.createFolderObject(e)}catch{return null}return null}getAllFiles(){let e=[];return this.walkDirectory(this.rootPath,t=>{if(t.endsWith(".md")){let r=or.default.relative(this.rootPath,t);e.push(this.createFileObject(r))}}),e}getFrontmatter(e){try{let t=ar.default.readFileSync(this.resolvePath(e.path),"utf-8");return this.extractFrontmatter(t)}catch{return null}}async updateFrontmatter(e,t){let r=await this.read(e),i=this.extractFrontmatter(r)||{},s=t(i),a=this.replaceFrontmatter(r,s);await this.modify(e,a)}async rename(e,t){let r=this.resolvePath(e.path),i=this.resolvePath(t);if(!await ar.default.pathExists(r))throw new Error(`File not found: ${e.path}`);await ar.default.ensureDir(or.default.dirname(i)),await ar.default.move(r,i)}async createFolder(e){let t=this.resolvePath(e);await ar.default.ensureDir(t)}getFirstLinkpathDest(e,t){let r=e.split("|")[0].trim();if(!r)return null;if(rQ.test(r)){this.uuidIndex===null&&this.buildUuidIndex();let u=r.toLowerCase(),f=this.uuidIndex.get(u);return f?this.createFileObject(f):null}let i=or.default.dirname(this.resolvePath(t)),s;if(or.default.isAbsolute(r)?s=this.resolvePath(r):s=or.default.resolve(i,r),r.endsWith(".md")||(s+=".md"),ar.default.existsSync(s)){let u=or.default.relative(this.rootPath,s);return this.createFileObject(u)}(this.basenameIndex===null||this.aliasIndex===null)&&this.buildLinkpathIndex();let a=r.toLowerCase(),c=this.basenameIndex.get(a);if(c)return this.createFileObject(c);let l=this.aliasIndex.get(a);return l?this.createFileObject(l):null}buildLinkpathIndex(){this.basenameIndex=new Map,this.aliasIndex=new Map,this.walkDirectory(this.rootPath,e=>{if(!e.endsWith(".md"))return;let t=or.default.relative(this.rootPath,e),r=or.default.basename(e,".md").toLowerCase();this.basenameIndex.has(r)||this.basenameIndex.set(r,t);let i;try{i=ar.default.readFileSync(e,"utf-8")}catch{return}let s=this.extractFrontmatter(i);if(!s)return;let a=s.aliases,c=Array.isArray(a)?a:typeof a=="string"?[a]:[];for(let l of c){if(typeof l!="string")continue;let u=l.trim().toLowerCase();u&&(this.aliasIndex.has(u)||this.aliasIndex.set(u,t))}})}buildUuidIndex(){this.uuidIndex=new Map,this.walkDirectory(this.rootPath,e=>{if(e.endsWith(".md")){let r=or.default.basename(e,".md").match(/^([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})/i);if(r){let i=r[1].toLowerCase(),s=or.default.relative(this.rootPath,e);this.uuidIndex.set(i,s)}}})}async process(e,t){let r=await this.read(e),i=t(r);return await this.modify(e,i),i}getDefaultNewFileParent(){return{path:"",name:""}}async updateLinks(e,t,r){return Promise.resolve()}resolvePath(e){return or.default.isAbsolute(e)?e:or.default.join(this.rootPath,e)}createFileObject(e){let t=or.default.basename(e),r=or.default.basename(e,or.default.extname(e)),i=or.default.dirname(e);return{path:e,basename:r,name:t,parent:i!=="."?this.createFolderObject(i):null}}createFolderObject(e){return{path:e,name:or.default.basename(e)}}extractFrontmatter(e){let t=/^---\n([\s\S]*?)\n---/,r=e.match(t);if(!r)return null;try{let i=sr.load(r[1]);return typeof i=="object"&&i!==null?i:null}catch{return null}}replaceFrontmatter(e,t){let r=sr.dump(t,{lineWidth:-1,noRefs:!0,quotingType:'"'}),i=/^---\n([\s\S]*?)\n---/;return e.match(i)?e.replace(i,`---
495
495
  ${r.trim()}
496
496
  ---`):`---
497
497
  ${r.trim()}
@@ -501,24 +501,24 @@ ${e}`}shouldSkipDirectory(e){return e.startsWith(".")}walkDirectory(e,t){let r;t
501
501
  `)}getAllVariables(e){let t=new Set;for(let r of e)for(let i of r.variables())t.add(i);return Array.from(t).sort()}escapeValue(e){return e.includes(",")||e.includes('"')||e.includes(`
502
502
  `)||e.includes("\r")?`"${e.replace(/"/g,'""')}"`:e}};var ql=class{static{o(this,"TriplesFormatter")}formatNTriples(e){return e.map(t=>t.toString()).join(`
503
503
  `)}formatTable(e){if(e.length===0)return"No triples generated.";let t=[];t.push("Subject | Predicate | Object"),t.push("------- | --------- | ------");for(let r of e){let i=this.formatNode(r.subject),s=this.formatNode(r.predicate),a=this.formatNode(r.object);t.push(`${i} | ${s} | ${a}`)}return t.join(`
504
- `)}formatJson(e){let t=e.map(r=>({subject:this.nodeToJson(r.subject),predicate:this.nodeToJson(r.predicate),object:this.nodeToJson(r.object)}));return JSON.stringify(t,null,2)}formatNode(e){return e.value!==void 0?String(e.value):String(e)}nodeToJson(e){return"datatype"in e||"language"in e?{type:"literal",value:String(e.value),...e.datatype&&{datatype:e.datatype.value||String(e.datatype)},...e.language&&{language:e.language}}:"id"in e&&String(e.id).startsWith("_:")?{type:"bnode",value:String(e.id)}:{type:"uri",value:String(e.value)}}};function wO(n){return n.startsWith("VALIDATION_")?"validation":n.startsWith("PERMISSION_")?"permission":n.startsWith("STATE_")?"state":"internal"}o(wO,"getErrorCategory");var X=class{static{o(this,"ResponseBuilder")}static success(e,t){return{success:!0,data:e,...t&&{meta:t}}}static error(e,t,r,i){return{success:!1,error:{code:e,category:wO(e),message:t,exitCode:r,...i?.recovery&&{recovery:i.recovery},...i?.context&&{context:i.context},...i?.stack&&{stack:i.stack}}}}};var Er=class extends Error{static{o(this,"CLIError")}constructor(e,t,r){super(e),this.name=this.constructor.name,this.context=t,this.recoveryHint=r,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}format(){let e=`\u274C ${this.name}: ${this.message}`;if(this.guidance&&(e+=`
504
+ `)}formatJson(e){let t=e.map(r=>({subject:this.nodeToJson(r.subject),predicate:this.nodeToJson(r.predicate),object:this.nodeToJson(r.object)}));return JSON.stringify(t,null,2)}formatNode(e){return e.value!==void 0?String(e.value):String(e)}nodeToJson(e){return"datatype"in e||"language"in e?{type:"literal",value:String(e.value),...e.datatype&&{datatype:e.datatype.value||String(e.datatype)},...e.language&&{language:e.language}}:"id"in e&&String(e.id).startsWith("_:")?{type:"bnode",value:String(e.id)}:{type:"uri",value:String(e.value)}}};function wO(n){return n.startsWith("VALIDATION_")?"validation":n.startsWith("PERMISSION_")?"permission":n.startsWith("STATE_")?"state":"internal"}o(wO,"getErrorCategory");var X=class{static{o(this,"ResponseBuilder")}static success(e,t){return{success:!0,data:e,...t&&{meta:t}}}static error(e,t,r,i){return{success:!1,error:{code:e,category:wO(e),message:t,exitCode:r,...i?.recovery&&{recovery:i.recovery},...i?.context&&{context:i.context},...i?.stack&&{stack:i.stack}}}}};var Tr=class extends Error{static{o(this,"CLIError")}constructor(e,t,r){super(e),this.name=this.constructor.name,this.context=t,this.recoveryHint=r,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}format(){let e=`\u274C ${this.name}: ${this.message}`;if(this.guidance&&(e+=`
505
505
 
506
506
  \u{1F4A1} ${this.guidance}`),this.context&&Object.keys(this.context).length>0){e+=`
507
507
 
508
508
  \u{1F4CB} Context:`;for(let[t,r]of Object.entries(this.context))e+=`
509
- ${t}: ${JSON.stringify(r)}`}return e}toStructuredResponse(e=!1){return X.error(this.errorCode,this.message,this.exitCode,{recovery:this.recoveryHint||{message:this.guidance},context:this.context,stack:e?this.stack:void 0})}formatJson(e=!1){return JSON.stringify(this.toStructuredResponse(e),null,2)}};var D=class n{static{o(this,"ErrorHandler")}static{this.outputFormat="text"}static setFormat(e){n.outputFormat=e}static getFormat(){return n.outputFormat}static isDebugMode(){return!!process.env.DEBUG}static handle(e){if(e instanceof Er){if(n.outputFormat==="json"){let i=e.toStructuredResponse(n.isDebugMode());console.log(JSON.stringify(i,null,2))}else console.error(e.format()),n.isDebugMode()&&(console.error(`
510
- \u{1F4CD} Stack trace:`),console.error(e.stack));process.exit(e.exitCode)}let{exitCode:t,errorCode:r}=n.classifyError(e);if(n.outputFormat==="json"){let i=n.buildErrorResponse(r,e.message,t,n.isDebugMode()?e.stack:void 0);console.log(JSON.stringify(i,null,2))}else console.error(`\u274C Error: ${e.message}`),n.isDebugMode()&&console.error(e.stack);process.exit(t)}static handleWithMessage(e,t=1,r="INTERNAL_UNKNOWN"){if(n.outputFormat==="json"){let i=n.buildErrorResponse(r,e,t);console.log(JSON.stringify(i,null,2))}else console.error(`\u274C Error: ${e}`);process.exit(t)}static classifyError(e){let t=e.message.toLowerCase();return t.includes("transition")?{exitCode:6,errorCode:"STATE_INVALID_TRANSITION"}:t.includes("transaction")?{exitCode:7,errorCode:"INTERNAL_TRANSACTION_FAILED"}:t.includes("concurrent")||t.includes("modified")?{exitCode:8,errorCode:"STATE_CONCURRENT_MODIFICATION"}:e.message.includes("not found")||e.message.includes("ENOENT")?{exitCode:3,errorCode:"VALIDATION_FILE_NOT_FOUND"}:e.message.includes("EACCES")||e.message.includes("permission denied")?{exitCode:4,errorCode:"PERMISSION_DENIED"}:e.message.includes("Invalid")||e.message.includes("outside vault")||e.message.includes("Not a")?{exitCode:2,errorCode:"VALIDATION_INVALID_ARGUMENTS"}:{exitCode:1,errorCode:"INTERNAL_UNKNOWN"}}static buildErrorResponse(e,t,r,i){return X.error(e,t,r,{recovery:n.getRecoveryHint(e),stack:i})}static getRecoveryHint(e){switch(e){case"VALIDATION_FILE_NOT_FOUND":return{message:"Verify the file path is correct and the file exists",suggestion:"Check file path spelling and ensure the file is in the vault"};case"VALIDATION_VAULT_NOT_FOUND":return{message:"Verify the vault path is correct",suggestion:"Check --vault option or current directory"};case"VALIDATION_INVALID_ARGUMENTS":return{message:"Check command syntax and argument format",suggestion:"Use --help for usage information"};case"STATE_INVALID_TRANSITION":return{message:"The requested state transition is not allowed",suggestion:"Check the current asset state and valid transitions"};case"STATE_CONCURRENT_MODIFICATION":return{message:"File was modified by another process",suggestion:"Wait and retry the command"};case"PERMISSION_DENIED":return{message:"Check file permissions",suggestion:"Ensure you have write access to the vault"};case"INTERNAL_TRANSACTION_FAILED":return{message:"Transaction could not complete",suggestion:"Check for locked files and retry"};default:return{message:"An unexpected error occurred",suggestion:"Check the error details and retry"}}}};var Bf=class extends Er{constructor(t,r){super(`File not found: ${t}`,{filepath:t,...r},{message:"Verify the file path is correct and the file exists",suggestion:`ls -la "${t}" or find . -name "$(basename ${t})"`});this.exitCode=3;this.errorCode="VALIDATION_FILE_NOT_FOUND";this.guidance=`Verify the file path is correct and the file exists.
509
+ ${t}: ${JSON.stringify(r)}`}return e}toStructuredResponse(e=!1){return X.error(this.errorCode,this.message,this.exitCode,{recovery:this.recoveryHint||{message:this.guidance},context:this.context,stack:e?this.stack:void 0})}formatJson(e=!1){return JSON.stringify(this.toStructuredResponse(e),null,2)}};var D=class n{static{o(this,"ErrorHandler")}static{this.outputFormat="text"}static setFormat(e){n.outputFormat=e}static getFormat(){return n.outputFormat}static isDebugMode(){return!!process.env.DEBUG}static handle(e){if(e instanceof Tr){if(n.outputFormat==="json"){let i=e.toStructuredResponse(n.isDebugMode());console.log(JSON.stringify(i,null,2))}else console.error(e.format()),n.isDebugMode()&&(console.error(`
510
+ \u{1F4CD} Stack trace:`),console.error(e.stack));process.exit(e.exitCode)}let{exitCode:t,errorCode:r}=n.classifyError(e);if(n.outputFormat==="json"){let i=n.buildErrorResponse(r,e.message,t,n.isDebugMode()?e.stack:void 0);console.log(JSON.stringify(i,null,2))}else console.error(`\u274C Error: ${e.message}`),n.isDebugMode()&&console.error(e.stack);process.exit(t)}static handleWithMessage(e,t=1,r="INTERNAL_UNKNOWN"){if(n.outputFormat==="json"){let i=n.buildErrorResponse(r,e,t);console.log(JSON.stringify(i,null,2))}else console.error(`\u274C Error: ${e}`);process.exit(t)}static classifyError(e){let t=e.message.toLowerCase();return t.includes("transition")?{exitCode:6,errorCode:"STATE_INVALID_TRANSITION"}:t.includes("transaction")?{exitCode:7,errorCode:"INTERNAL_TRANSACTION_FAILED"}:t.includes("concurrent")||t.includes("modified")?{exitCode:8,errorCode:"STATE_CONCURRENT_MODIFICATION"}:e.message.includes("not found")||e.message.includes("ENOENT")?{exitCode:3,errorCode:"VALIDATION_FILE_NOT_FOUND"}:e.message.includes("EACCES")||e.message.includes("permission denied")?{exitCode:4,errorCode:"PERMISSION_DENIED"}:e.message.includes("Invalid")||e.message.includes("outside vault")||e.message.includes("Not a")?{exitCode:2,errorCode:"VALIDATION_INVALID_ARGUMENTS"}:{exitCode:1,errorCode:"INTERNAL_UNKNOWN"}}static buildErrorResponse(e,t,r,i){return X.error(e,t,r,{recovery:n.getRecoveryHint(e),stack:i})}static getRecoveryHint(e){switch(e){case"VALIDATION_FILE_NOT_FOUND":return{message:"Verify the file path is correct and the file exists",suggestion:"Check file path spelling and ensure the file is in the vault"};case"VALIDATION_VAULT_NOT_FOUND":return{message:"Verify the vault path is correct",suggestion:"Check --vault option or current directory"};case"VALIDATION_INVALID_ARGUMENTS":return{message:"Check command syntax and argument format",suggestion:"Use --help for usage information"};case"STATE_INVALID_TRANSITION":return{message:"The requested state transition is not allowed",suggestion:"Check the current asset state and valid transitions"};case"STATE_CONCURRENT_MODIFICATION":return{message:"File was modified by another process",suggestion:"Wait and retry the command"};case"PERMISSION_DENIED":return{message:"Check file permissions",suggestion:"Ensure you have write access to the vault"};case"INTERNAL_TRANSACTION_FAILED":return{message:"Transaction could not complete",suggestion:"Check for locked files and retry"};default:return{message:"An unexpected error occurred",suggestion:"Check the error details and retry"}}}};var Bf=class extends Tr{constructor(t,r){super(`File not found: ${t}`,{filepath:t,...r},{message:"Verify the file path is correct and the file exists",suggestion:`ls -la "${t}" or find . -name "$(basename ${t})"`});this.exitCode=3;this.errorCode="VALIDATION_FILE_NOT_FOUND";this.guidance=`Verify the file path is correct and the file exists.
511
511
  Check:
512
512
  \u2022 File path spelling
513
513
  \u2022 File is in the vault directory
514
- \u2022 File has .md extension`}static{o(this,"FileNotFoundError")}};var Ke=class extends Er{constructor(t,r,i){let s=`Check command syntax and argument format.
515
- Use: exocortex command --help for usage information.`;super(t,i,{message:r||"Check command syntax and argument format",suggestion:"exocortex command --help"});this.exitCode=2;this.errorCode="VALIDATION_INVALID_ARGUMENTS";this.guidance=r||s}static{o(this,"InvalidArgumentsError")}};var Te=class extends Er{constructor(t,r){super(`Vault not found: ${t}`,{vaultPath:t,...r},{message:"Verify the vault path is correct and the directory exists",suggestion:`ls -la "${t}" or check --vault option`});this.exitCode=3;this.errorCode="VALIDATION_VAULT_NOT_FOUND";this.guidance=`The specified vault directory does not exist.
514
+ \u2022 File has .md extension`}static{o(this,"FileNotFoundError")}};var Ke=class extends Tr{constructor(t,r,i){let s=`Check command syntax and argument format.
515
+ Use: exocortex command --help for usage information.`;super(t,i,{message:r||"Check command syntax and argument format",suggestion:"exocortex command --help"});this.exitCode=2;this.errorCode="VALIDATION_INVALID_ARGUMENTS";this.guidance=r||s}static{o(this,"InvalidArgumentsError")}};var Te=class extends Tr{constructor(t,r){super(`Vault not found: ${t}`,{vaultPath:t,...r},{message:"Verify the vault path is correct and the directory exists",suggestion:`ls -la "${t}" or check --vault option`});this.exitCode=3;this.errorCode="VALIDATION_VAULT_NOT_FOUND";this.guidance=`The specified vault directory does not exist.
516
516
  Check:
517
517
  \u2022 Path spelling and case sensitivity
518
518
  \u2022 Directory exists and is accessible
519
- \u2022 You have read permissions for the directory`}static{o(this,"VaultNotFoundError")}};var Vf=class extends Er{constructor(t,r,i,s){super(`Operation "${t}" failed: ${r}`,{operation:t,reason:r,...s},{message:i||"Check the error details and retry",suggestion:i});this.exitCode=5;this.errorCode="INTERNAL_OPERATION_FAILED";this.guidance=i||`The operation "${t}" could not be completed.
519
+ \u2022 You have read permissions for the directory`}static{o(this,"VaultNotFoundError")}};var Vf=class extends Tr{constructor(t,r,i,s){super(`Operation "${t}" failed: ${r}`,{operation:t,reason:r,...s},{message:i||"Check the error details and retry",suggestion:i});this.exitCode=5;this.errorCode="INTERNAL_OPERATION_FAILED";this.guidance=i||`The operation "${t}" could not be completed.
520
520
  Reason: ${r}
521
- Try checking file permissions and vault configuration.`}static{o(this,"OperationFailedError")}};var Uf=class extends Er{constructor(t,r,i){let s=Math.round(t/1e3),c=`Query timeout after ${r!==void 0?Math.round(r/1e3):s}s (limit: ${s}s)`;super(c,{timeoutMs:t,elapsedMs:r??t,partialResultsCount:i},{message:"Increase timeout with --timeout <duration> (e.g., --timeout 60s)",suggestion:`exocortex sparql query --timeout ${s*2}s "..."`});this.exitCode=5;this.errorCode="INTERNAL_QUERY_TIMEOUT";this.guidance=`Query exceeded the ${s}s timeout limit.
521
+ Try checking file permissions and vault configuration.`}static{o(this,"OperationFailedError")}};var Uf=class extends Tr{constructor(t,r,i){let s=Math.round(t/1e3),c=`Query timeout after ${r!==void 0?Math.round(r/1e3):s}s (limit: ${s}s)`;super(c,{timeoutMs:t,elapsedMs:r??t,partialResultsCount:i},{message:"Increase timeout with --timeout <duration> (e.g., --timeout 60s)",suggestion:`exocortex sparql query --timeout ${s*2}s "..."`});this.exitCode=5;this.errorCode="INTERNAL_QUERY_TIMEOUT";this.guidance=`Query exceeded the ${s}s timeout limit.
522
522
 
523
523
  To fix this:
524
524
  1. Increase timeout: --timeout ${s*2}s
@@ -526,7 +526,7 @@ To fix this:
526
526
  3. Simplify query: reduce WHERE clauses or add LIMIT
527
527
  4. Use cache: --use-cache for faster vault loading${i!==void 0?`
528
528
 
529
- Partial results: ${i} result(s) were collected before timeout.`:""}`}static{o(this,"QueryTimeoutError")}};var qf=K(require("path")),en=K(Za()),Tr=K(Dt());var qn=class{constructor(e){this.cliVersion="1.0.0";this.vaultPath=qf.default.resolve(e),this.cachePath=qf.default.join(this.vaultPath,".exocortex","cache","triples.json")}static{o(this,"CacheManager")}getCachePath(){return this.cachePath}async isCacheValid(){try{if(!await en.default.pathExists(this.cachePath))return!1;let e=await en.default.readJson(this.cachePath);return!(!e.metadata||typeof e.metadata.vaultMtime!="number"||typeof e.metadata.tripleCount!="number"||(await en.default.stat(this.vaultPath)).mtimeMs!==e.metadata.vaultMtime)}catch{return!1}}async loadOrBuild(){let e=Date.now();if(await this.isCacheValid())return{triples:await this.loadFromCache(),cacheHit:!0,durationMs:Date.now()-e};let{tripleCount:t}=await this.buildCache();return{triples:await this.loadFromCache(),cacheHit:!1,durationMs:Date.now()-e}}async loadFromCache(){return(await en.default.readJson(this.cachePath)).triples.map(this.deserializeTriple)}async buildCache(){let e=await this.buildCacheWithValidation({strict:!1});return{tripleCount:e.tripleCount,durationMs:e.durationMs}}async buildCacheWithValidation(e={}){let t=Date.now(),r=new Nt(this.vaultPath),s=await new Tr.NoteToRDFConverter(r).convertVaultWithValidation({strict:e.strict??!1}),a=await en.default.stat(this.vaultPath),c=s.triples.map(this.serializeTriple),l={metadata:{version:this.cliVersion,timestamp:Date.now(),vaultPath:this.vaultPath,tripleCount:s.triples.length,vaultMtime:a.mtimeMs},triples:c};return await en.default.ensureDir(qf.default.dirname(this.cachePath)),await en.default.writeJson(this.cachePath,l,{spaces:0}),{tripleCount:s.triples.length,durationMs:Date.now()-t,skippedFiles:s.skippedFiles,summary:s.summary}}async validateVault(){let e=new Nt(this.vaultPath);return new Tr.NoteToRDFConverter(e).validateVault()}async invalidate(){await en.default.pathExists(this.cachePath)&&await en.default.remove(this.cachePath)}async getCacheStats(){try{if(!await en.default.pathExists(this.cachePath))return null;let e=await en.default.readJson(this.cachePath),t=await en.default.stat(this.cachePath),r=await this.isCacheValid();return{tripleCount:e.metadata.tripleCount,createdAt:new Date(e.metadata.timestamp),isValid:r,sizeBytes:t.size}}catch{return null}}async saveTriples(e){let t=await en.default.stat(this.vaultPath),r=e.map(this.serializeTriple),i={metadata:{version:this.cliVersion,timestamp:Date.now(),vaultPath:this.vaultPath,tripleCount:e.length,vaultMtime:t.mtimeMs},triples:r};await en.default.ensureDir(qf.default.dirname(this.cachePath)),await en.default.writeJson(this.cachePath,i,{spaces:0})}serializeTriple(e){return{subject:Vw(e.subject),predicate:Vw(e.predicate),object:Vw(e.object)}}deserializeTriple(e){return new Tr.Triple(Uw(e.subject),Uw(e.predicate),Uw(e.object))}};function Vw(n){if(n instanceof Tr.IRI)return{type:"IRI",value:n.value};if(n instanceof Tr.Literal){let e={type:"Literal",value:n.value};return n.datatype&&(e.datatype=n.datatype.value),n.language&&(e.language=n.language),e}return n instanceof Tr.BlankNode?{type:"BlankNode",value:n.value}:{type:"IRI",value:String(n)}}o(Vw,"serializeNode");function Uw(n){switch(n.type){case"IRI":return new Tr.IRI(n.value);case"Literal":return n.datatype?new Tr.Literal(n.value,new Tr.IRI(n.datatype)):n.language?new Tr.Literal(n.value,void 0,n.language):new Tr.Literal(n.value);case"BlankNode":return new Tr.BlankNode(n.value);default:return new Tr.IRI(n.value)}}o(Uw,"deserializeNode");var EO=K(require("crypto")),Wf=K(require("path")),TO=K(require("os")),Wn=K(Za());var Wl=class{static{o(this,"QueryResultCache")}constructor(e={}){this.cacheDir=e.cacheDir??Wf.default.join(TO.default.homedir(),".exocortex","cache","query-results")}getCacheDir(){return this.cacheDir}getCacheKey(e){let t=e.trim().replace(/\s+/g," ");return EO.default.createHash("sha256").update(t).digest("hex")}async get(e,t){let r=this.getCacheKey(e),i=this.getCachePath(r);try{if(!await Wn.default.pathExists(i))return null;let s=await Wn.default.readJson(i),a=Date.now()-s.timestamp,c=t*1e3;return a>c?(await Wn.default.remove(i),null):s.result}catch{return null}}async set(e,t,r){let i=this.getCacheKey(e),s=this.getCachePath(i);await Wn.default.ensureDir(this.cacheDir);let a={timestamp:Date.now(),result:t};await Wn.default.writeJson(s,a,{spaces:0})}async isCached(e,t){return await this.get(e,t)!==null}async invalidate(e){let t=this.getCacheKey(e),r=this.getCachePath(t);try{await Wn.default.remove(r)}catch{}}async clear(){try{if(await Wn.default.pathExists(this.cacheDir)){let e=await Wn.default.readdir(this.cacheDir);await Promise.all(e.filter(t=>t.endsWith(".json")).map(t=>Wn.default.remove(Wf.default.join(this.cacheDir,t))))}}catch{}}async getCacheStats(){try{if(!await Wn.default.pathExists(this.cacheDir))return{entryCount:0,totalSizeBytes:0};let t=(await Wn.default.readdir(this.cacheDir)).filter(i=>i.endsWith(".json")),r=0;for(let i of t){let s=await Wn.default.stat(Wf.default.join(this.cacheDir,i));r+=s.size}return{entryCount:t.length,totalSizeBytes:r}}catch{return{entryCount:0,totalSizeBytes:0}}}getCachePath(e){return Wf.default.join(this.cacheDir,`${e}.json`)}};var Xf=K(require("node:process"),1);var AO=o((n=0)=>e=>`\x1B[${e+n}m`,"wrapAnsi16"),xO=o((n=0)=>e=>`\x1B[${38+n};5;${e}m`,"wrapAnsi256"),CO=o((n=0)=>(e,t,r)=>`\x1B[${38+n};2;${e};${t};${r}m`,"wrapAnsi16m"),Lt={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},fde=Object.keys(Lt.modifier),nQ=Object.keys(Lt.color),iQ=Object.keys(Lt.bgColor),dde=[...nQ,...iQ];function sQ(){let n=new Map;for(let[e,t]of Object.entries(Lt)){for(let[r,i]of Object.entries(t))Lt[r]={open:`\x1B[${i[0]}m`,close:`\x1B[${i[1]}m`},t[r]=Lt[r],n.set(i[0],i[1]);Object.defineProperty(Lt,e,{value:t,enumerable:!1})}return Object.defineProperty(Lt,"codes",{value:n,enumerable:!1}),Lt.color.close="\x1B[39m",Lt.bgColor.close="\x1B[49m",Lt.color.ansi=AO(),Lt.color.ansi256=xO(),Lt.color.ansi16m=CO(),Lt.bgColor.ansi=AO(10),Lt.bgColor.ansi256=xO(10),Lt.bgColor.ansi16m=CO(10),Object.defineProperties(Lt,{rgbToAnsi256:{value(e,t,r){return e===t&&t===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(r/255*5)},enumerable:!1},hexToRgb:{value(e){let t=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!t)return[0,0,0];let[r]=t;r.length===3&&(r=[...r].map(s=>s+s).join(""));let i=Number.parseInt(r,16);return[i>>16&255,i>>8&255,i&255]},enumerable:!1},hexToAnsi256:{value:o(e=>Lt.rgbToAnsi256(...Lt.hexToRgb(e)),"value"),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let t,r,i;if(e>=232)t=((e-232)*10+8)/255,r=t,i=t;else{e-=16;let c=e%36;t=Math.floor(e/36)/5,r=Math.floor(c/6)/5,i=c%6/5}let s=Math.max(t,r,i)*2;if(s===0)return 30;let a=30+(Math.round(i)<<2|Math.round(r)<<1|Math.round(t));return s===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:o((e,t,r)=>Lt.ansi256ToAnsi(Lt.rgbToAnsi256(e,t,r)),"value"),enumerable:!1},hexToAnsi:{value:o(e=>Lt.ansi256ToAnsi(Lt.hexToAnsi256(e)),"value"),enumerable:!1}}),Lt}o(sQ,"assembleStyles");var aQ=sQ(),qi=aQ;var Ag=K(require("node:process"),1),RO=K(require("node:os"),1),qw=K(require("node:tty"),1);function oi(n,e=globalThis.Deno?globalThis.Deno.args:Ag.default.argv){let t=n.startsWith("-")?"":n.length===1?"-":"--",r=e.indexOf(t+n),i=e.indexOf("--");return r!==-1&&(i===-1||r<i)}o(oi,"hasFlag");var{env:kt}=Ag.default,Tg;oi("no-color")||oi("no-colors")||oi("color=false")||oi("color=never")?Tg=0:(oi("color")||oi("colors")||oi("color=true")||oi("color=always"))&&(Tg=1);function oQ(){if("FORCE_COLOR"in kt)return kt.FORCE_COLOR==="true"?1:kt.FORCE_COLOR==="false"?0:kt.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(kt.FORCE_COLOR,10),3)}o(oQ,"envForceColor");function cQ(n){return n===0?!1:{level:n,hasBasic:!0,has256:n>=2,has16m:n>=3}}o(cQ,"translateLevel");function lQ(n,{streamIsTTY:e,sniffFlags:t=!0}={}){let r=oQ();r!==void 0&&(Tg=r);let i=t?Tg:r;if(i===0)return 0;if(t){if(oi("color=16m")||oi("color=full")||oi("color=truecolor"))return 3;if(oi("color=256"))return 2}if("TF_BUILD"in kt&&"AGENT_NAME"in kt)return 1;if(n&&!e&&i===void 0)return 0;let s=i||0;if(kt.TERM==="dumb")return s;if(Ag.default.platform==="win32"){let a=RO.default.release().split(".");return Number(a[0])>=10&&Number(a[2])>=10586?Number(a[2])>=14931?3:2:1}if("CI"in kt)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(a=>a in kt)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(a=>a in kt)||kt.CI_NAME==="codeship"?1:s;if("TEAMCITY_VERSION"in kt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(kt.TEAMCITY_VERSION)?1:0;if(kt.COLORTERM==="truecolor"||kt.TERM==="xterm-kitty"||kt.TERM==="xterm-ghostty"||kt.TERM==="wezterm")return 3;if("TERM_PROGRAM"in kt){let a=Number.parseInt((kt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(kt.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(kt.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(kt.TERM)||"COLORTERM"in kt?1:s}o(lQ,"_supportsColor");function IO(n,e={}){let t=lQ(n,{streamIsTTY:n&&n.isTTY,...e});return cQ(t)}o(IO,"createSupportsColor");var uQ={stdout:IO({isTTY:qw.default.isatty(1)}),stderr:IO({isTTY:qw.default.isatty(2)})},PO=uQ;function OO(n,e,t){let r=n.indexOf(e);if(r===-1)return n;let i=e.length,s=0,a="";do a+=n.slice(s,r)+e+t,s=r+i,r=n.indexOf(e,s);while(r!==-1);return a+=n.slice(s),a}o(OO,"stringReplaceAll");function FO(n,e,t,r){let i=0,s="";do{let a=n[r-1]==="\r";s+=n.slice(i,a?r-1:r)+e+(a?`\r
529
+ Partial results: ${i} result(s) were collected before timeout.`:""}`}static{o(this,"QueryTimeoutError")}};var qf=K(require("path")),en=K(Za()),Ar=K(Dt());var qn=class{constructor(e){this.cliVersion="1.0.0";this.vaultPath=qf.default.resolve(e),this.cachePath=qf.default.join(this.vaultPath,".exocortex","cache","triples.json")}static{o(this,"CacheManager")}getCachePath(){return this.cachePath}async isCacheValid(){try{if(!await en.default.pathExists(this.cachePath))return!1;let e=await en.default.readJson(this.cachePath);return!(!e.metadata||typeof e.metadata.vaultMtime!="number"||typeof e.metadata.tripleCount!="number"||(await en.default.stat(this.vaultPath)).mtimeMs!==e.metadata.vaultMtime)}catch{return!1}}async loadOrBuild(){let e=Date.now();if(await this.isCacheValid())return{triples:await this.loadFromCache(),cacheHit:!0,durationMs:Date.now()-e};let{tripleCount:t}=await this.buildCache();return{triples:await this.loadFromCache(),cacheHit:!1,durationMs:Date.now()-e}}async loadFromCache(){return(await en.default.readJson(this.cachePath)).triples.map(this.deserializeTriple)}async buildCache(){let e=await this.buildCacheWithValidation({strict:!1});return{tripleCount:e.tripleCount,durationMs:e.durationMs}}async buildCacheWithValidation(e={}){let t=Date.now(),r=new Nt(this.vaultPath),s=await new Ar.NoteToRDFConverter(r).convertVaultWithValidation({strict:e.strict??!1}),a=await en.default.stat(this.vaultPath),c=s.triples.map(this.serializeTriple),l={metadata:{version:this.cliVersion,timestamp:Date.now(),vaultPath:this.vaultPath,tripleCount:s.triples.length,vaultMtime:a.mtimeMs},triples:c};return await en.default.ensureDir(qf.default.dirname(this.cachePath)),await en.default.writeJson(this.cachePath,l,{spaces:0}),{tripleCount:s.triples.length,durationMs:Date.now()-t,skippedFiles:s.skippedFiles,summary:s.summary}}async validateVault(){let e=new Nt(this.vaultPath);return new Ar.NoteToRDFConverter(e).validateVault()}async invalidate(){await en.default.pathExists(this.cachePath)&&await en.default.remove(this.cachePath)}async getCacheStats(){try{if(!await en.default.pathExists(this.cachePath))return null;let e=await en.default.readJson(this.cachePath),t=await en.default.stat(this.cachePath),r=await this.isCacheValid();return{tripleCount:e.metadata.tripleCount,createdAt:new Date(e.metadata.timestamp),isValid:r,sizeBytes:t.size}}catch{return null}}async saveTriples(e){let t=await en.default.stat(this.vaultPath),r=e.map(this.serializeTriple),i={metadata:{version:this.cliVersion,timestamp:Date.now(),vaultPath:this.vaultPath,tripleCount:e.length,vaultMtime:t.mtimeMs},triples:r};await en.default.ensureDir(qf.default.dirname(this.cachePath)),await en.default.writeJson(this.cachePath,i,{spaces:0})}serializeTriple(e){return{subject:Vw(e.subject),predicate:Vw(e.predicate),object:Vw(e.object)}}deserializeTriple(e){return new Ar.Triple(Uw(e.subject),Uw(e.predicate),Uw(e.object))}};function Vw(n){if(n instanceof Ar.IRI)return{type:"IRI",value:n.value};if(n instanceof Ar.Literal){let e={type:"Literal",value:n.value};return n.datatype&&(e.datatype=n.datatype.value),n.language&&(e.language=n.language),e}return n instanceof Ar.BlankNode?{type:"BlankNode",value:n.value}:{type:"IRI",value:String(n)}}o(Vw,"serializeNode");function Uw(n){switch(n.type){case"IRI":return new Ar.IRI(n.value);case"Literal":return n.datatype?new Ar.Literal(n.value,new Ar.IRI(n.datatype)):n.language?new Ar.Literal(n.value,void 0,n.language):new Ar.Literal(n.value);case"BlankNode":return new Ar.BlankNode(n.value);default:return new Ar.IRI(n.value)}}o(Uw,"deserializeNode");var EO=K(require("crypto")),Wf=K(require("path")),TO=K(require("os")),Wn=K(Za());var Wl=class{static{o(this,"QueryResultCache")}constructor(e={}){this.cacheDir=e.cacheDir??Wf.default.join(TO.default.homedir(),".exocortex","cache","query-results")}getCacheDir(){return this.cacheDir}getCacheKey(e){let t=e.trim().replace(/\s+/g," ");return EO.default.createHash("sha256").update(t).digest("hex")}async get(e,t){let r=this.getCacheKey(e),i=this.getCachePath(r);try{if(!await Wn.default.pathExists(i))return null;let s=await Wn.default.readJson(i),a=Date.now()-s.timestamp,c=t*1e3;return a>c?(await Wn.default.remove(i),null):s.result}catch{return null}}async set(e,t,r){let i=this.getCacheKey(e),s=this.getCachePath(i);await Wn.default.ensureDir(this.cacheDir);let a={timestamp:Date.now(),result:t};await Wn.default.writeJson(s,a,{spaces:0})}async isCached(e,t){return await this.get(e,t)!==null}async invalidate(e){let t=this.getCacheKey(e),r=this.getCachePath(t);try{await Wn.default.remove(r)}catch{}}async clear(){try{if(await Wn.default.pathExists(this.cacheDir)){let e=await Wn.default.readdir(this.cacheDir);await Promise.all(e.filter(t=>t.endsWith(".json")).map(t=>Wn.default.remove(Wf.default.join(this.cacheDir,t))))}}catch{}}async getCacheStats(){try{if(!await Wn.default.pathExists(this.cacheDir))return{entryCount:0,totalSizeBytes:0};let t=(await Wn.default.readdir(this.cacheDir)).filter(i=>i.endsWith(".json")),r=0;for(let i of t){let s=await Wn.default.stat(Wf.default.join(this.cacheDir,i));r+=s.size}return{entryCount:t.length,totalSizeBytes:r}}catch{return{entryCount:0,totalSizeBytes:0}}}getCachePath(e){return Wf.default.join(this.cacheDir,`${e}.json`)}};var Xf=K(require("node:process"),1);var AO=o((n=0)=>e=>`\x1B[${e+n}m`,"wrapAnsi16"),xO=o((n=0)=>e=>`\x1B[${38+n};5;${e}m`,"wrapAnsi256"),CO=o((n=0)=>(e,t,r)=>`\x1B[${38+n};2;${e};${t};${r}m`,"wrapAnsi16m"),Lt={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},fde=Object.keys(Lt.modifier),nQ=Object.keys(Lt.color),iQ=Object.keys(Lt.bgColor),dde=[...nQ,...iQ];function sQ(){let n=new Map;for(let[e,t]of Object.entries(Lt)){for(let[r,i]of Object.entries(t))Lt[r]={open:`\x1B[${i[0]}m`,close:`\x1B[${i[1]}m`},t[r]=Lt[r],n.set(i[0],i[1]);Object.defineProperty(Lt,e,{value:t,enumerable:!1})}return Object.defineProperty(Lt,"codes",{value:n,enumerable:!1}),Lt.color.close="\x1B[39m",Lt.bgColor.close="\x1B[49m",Lt.color.ansi=AO(),Lt.color.ansi256=xO(),Lt.color.ansi16m=CO(),Lt.bgColor.ansi=AO(10),Lt.bgColor.ansi256=xO(10),Lt.bgColor.ansi16m=CO(10),Object.defineProperties(Lt,{rgbToAnsi256:{value(e,t,r){return e===t&&t===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(r/255*5)},enumerable:!1},hexToRgb:{value(e){let t=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!t)return[0,0,0];let[r]=t;r.length===3&&(r=[...r].map(s=>s+s).join(""));let i=Number.parseInt(r,16);return[i>>16&255,i>>8&255,i&255]},enumerable:!1},hexToAnsi256:{value:o(e=>Lt.rgbToAnsi256(...Lt.hexToRgb(e)),"value"),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let t,r,i;if(e>=232)t=((e-232)*10+8)/255,r=t,i=t;else{e-=16;let c=e%36;t=Math.floor(e/36)/5,r=Math.floor(c/6)/5,i=c%6/5}let s=Math.max(t,r,i)*2;if(s===0)return 30;let a=30+(Math.round(i)<<2|Math.round(r)<<1|Math.round(t));return s===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:o((e,t,r)=>Lt.ansi256ToAnsi(Lt.rgbToAnsi256(e,t,r)),"value"),enumerable:!1},hexToAnsi:{value:o(e=>Lt.ansi256ToAnsi(Lt.hexToAnsi256(e)),"value"),enumerable:!1}}),Lt}o(sQ,"assembleStyles");var aQ=sQ(),qi=aQ;var Ag=K(require("node:process"),1),RO=K(require("node:os"),1),qw=K(require("node:tty"),1);function oi(n,e=globalThis.Deno?globalThis.Deno.args:Ag.default.argv){let t=n.startsWith("-")?"":n.length===1?"-":"--",r=e.indexOf(t+n),i=e.indexOf("--");return r!==-1&&(i===-1||r<i)}o(oi,"hasFlag");var{env:kt}=Ag.default,Tg;oi("no-color")||oi("no-colors")||oi("color=false")||oi("color=never")?Tg=0:(oi("color")||oi("colors")||oi("color=true")||oi("color=always"))&&(Tg=1);function oQ(){if("FORCE_COLOR"in kt)return kt.FORCE_COLOR==="true"?1:kt.FORCE_COLOR==="false"?0:kt.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(kt.FORCE_COLOR,10),3)}o(oQ,"envForceColor");function cQ(n){return n===0?!1:{level:n,hasBasic:!0,has256:n>=2,has16m:n>=3}}o(cQ,"translateLevel");function lQ(n,{streamIsTTY:e,sniffFlags:t=!0}={}){let r=oQ();r!==void 0&&(Tg=r);let i=t?Tg:r;if(i===0)return 0;if(t){if(oi("color=16m")||oi("color=full")||oi("color=truecolor"))return 3;if(oi("color=256"))return 2}if("TF_BUILD"in kt&&"AGENT_NAME"in kt)return 1;if(n&&!e&&i===void 0)return 0;let s=i||0;if(kt.TERM==="dumb")return s;if(Ag.default.platform==="win32"){let a=RO.default.release().split(".");return Number(a[0])>=10&&Number(a[2])>=10586?Number(a[2])>=14931?3:2:1}if("CI"in kt)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(a=>a in kt)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(a=>a in kt)||kt.CI_NAME==="codeship"?1:s;if("TEAMCITY_VERSION"in kt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(kt.TEAMCITY_VERSION)?1:0;if(kt.COLORTERM==="truecolor"||kt.TERM==="xterm-kitty"||kt.TERM==="xterm-ghostty"||kt.TERM==="wezterm")return 3;if("TERM_PROGRAM"in kt){let a=Number.parseInt((kt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(kt.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(kt.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(kt.TERM)||"COLORTERM"in kt?1:s}o(lQ,"_supportsColor");function IO(n,e={}){let t=lQ(n,{streamIsTTY:n&&n.isTTY,...e});return cQ(t)}o(IO,"createSupportsColor");var uQ={stdout:IO({isTTY:qw.default.isatty(1)}),stderr:IO({isTTY:qw.default.isatty(2)})},PO=uQ;function OO(n,e,t){let r=n.indexOf(e);if(r===-1)return n;let i=e.length,s=0,a="";do a+=n.slice(s,r)+e+t,s=r+i,r=n.indexOf(e,s);while(r!==-1);return a+=n.slice(s),a}o(OO,"stringReplaceAll");function FO(n,e,t,r){let i=0,s="";do{let a=n[r-1]==="\r";s+=n.slice(i,a?r-1:r)+e+(a?`\r
530
530
  `:`
531
531
  `)+t,i=r+1,r=n.indexOf(`
532
532
  `,i)}while(r!==-1);return s+=n.slice(i),s}o(FO,"stringEncaseCRLFWithFirstIndex");var{stdout:DO,stderr:NO}=PO,Ww=Symbol("GENERATOR"),Gl=Symbol("STYLER"),Gf=Symbol("IS_EMPTY"),LO=["ansi","ansi","ansi256","ansi16m"],zl=Object.create(null),fQ=o((n,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let t=DO?DO.level:0;n.level=e.level===void 0?t:e.level},"applyOptions");var dQ=o(n=>{let e=o((...t)=>t.join(" "),"chalk");return fQ(e,n),Object.setPrototypeOf(e,zf.prototype),e},"chalkFactory");function zf(n){return dQ(n)}o(zf,"createChalk");Object.setPrototypeOf(zf.prototype,Function.prototype);for(let[n,e]of Object.entries(qi))zl[n]={get(){let t=xg(this,zw(e.open,e.close,this[Gl]),this[Gf]);return Object.defineProperty(this,n,{value:t}),t}};zl.visible={get(){let n=xg(this,this[Gl],!0);return Object.defineProperty(this,"visible",{value:n}),n}};var Gw=o((n,e,t,...r)=>n==="rgb"?e==="ansi16m"?qi[t].ansi16m(...r):e==="ansi256"?qi[t].ansi256(qi.rgbToAnsi256(...r)):qi[t].ansi(qi.rgbToAnsi(...r)):n==="hex"?Gw("rgb",e,t,...qi.hexToRgb(...r)):qi[t][n](...r),"getModelAnsi"),hQ=["rgb","hex","ansi256"];for(let n of hQ){zl[n]={get(){let{level:t}=this;return function(...r){let i=zw(Gw(n,LO[t],"color",...r),qi.color.close,this[Gl]);return xg(this,i,this[Gf])}}};let e="bg"+n[0].toUpperCase()+n.slice(1);zl[e]={get(){let{level:t}=this;return function(...r){let i=zw(Gw(n,LO[t],"bgColor",...r),qi.bgColor.close,this[Gl]);return xg(this,i,this[Gf])}}}}var pQ=Object.defineProperties(()=>{},{...zl,level:{enumerable:!0,get(){return this[Ww].level},set(n){this[Ww].level=n}}}),zw=o((n,e,t)=>{let r,i;return t===void 0?(r=n,i=e):(r=t.openAll+n,i=e+t.closeAll),{open:n,close:e,openAll:r,closeAll:i,parent:t}},"createStyler"),xg=o((n,e,t)=>{let r=o((...i)=>mQ(r,i.length===1?""+i[0]:i.join(" ")),"builder");return Object.setPrototypeOf(r,pQ),r[Ww]=n,r[Gl]=e,r[Gf]=t,r},"createBuilder"),mQ=o((n,e)=>{if(n.level<=0||!e)return n[Gf]?"":e;let t=n[Gl];if(t===void 0)return e;let{openAll:r,closeAll:i}=t;if(e.includes("\x1B"))for(;t!==void 0;)e=OO(e,t.close,t.open),t=t.parent;let s=e.indexOf(`
@@ -614,15 +614,15 @@ Available prefixes: ${u}`,this.wellKnownPrefixes[r]&&c.push(`Add: PREFIX ${r}: <
614
614
  \u{1F4CA} Execution Statistics:`),console.log(` Vault loading: ${y}ms${d?" (from cache)":""}`),console.log(` Query execution: ${G}ms`),console.log(` Total time: ${F}ms`),console.log(` Triples scanned: ${f.length}`),console.log(` Results returned: ${z.length}`),e.useCache&&console.log(` Triple cache: ${d?"HIT":"MISS (rebuilt)"}`),c&&console.log(" Query result cache: MISS (cached for next run)"))}}catch(i){tF(i,r,t)}})}o(eF,"sparqlQueryCommand");function tF(n,e,t){let r=new Lg;if(r.classifyError(n)!=="unknown"){let s=r.enhanceError(n,e);if(t==="json"){let a=X.error("VALIDATION_INVALID_FORMAT",s.message,2,{context:{errorType:s.type,suggestions:s.suggestions,line:s.line,column:s.column,queryContext:s.context?{startLine:s.context.startLine,endLine:s.context.endLine,errorLine:s.context.errorLine}:void 0},recovery:{message:s.suggestions?.[0]||"Check query syntax"}});console.log(JSON.stringify(a,null,2)),process.exit(2)}else console.error(r.formatForText(s)),process.exit(2)}D.handle(n)}o(tF,"handleSparqlError");function cK(n){if(n.includes("SELECT")||n.includes("CONSTRUCT")||n.includes("INSERT")||n.includes("DELETE"))return n;let e=(0,ed.resolve)(n);return(0,Yl.existsSync)(e)?(0,Yl.readFileSync)(e,"utf-8"):n}o(cK,"loadQuery");async function lK(n,e,t){if(e.explain){let i=new Dg,s=await i.analyze(n,{includeAlgebraPlan:!0,optimize:!e.noOptimize});if(t==="json"){let a=X.success(s);console.log(JSON.stringify(a,null,2))}else s.valid?(console.log(`\u2705 Query syntax is valid
615
615
  `),console.log(i.formatAnalysis(s,"text"))):(console.log(i.formatAnalysis(s,"text")),process.exit(2));return}let r=new Gt.ExoQLParser;try{let i=r.parse(n);if(i.type!=="update"){let a=new Gt.ExoQLAlgebraTranslator().translate(i);if(!e.noOptimize&&a.type!=="construct")a=new Gt.AlgebraOptimizer().optimize(a);else if(!e.noOptimize&&a.type==="construct"){let c=new Gt.AlgebraOptimizer,l=a;a={...l,where:c.optimize(l.where)}}}if(t==="json"){let s=X.success({valid:!0,queryType:ZO(i),message:"Query syntax is valid"});console.log(JSON.stringify(s,null,2))}else console.log("\u2705 Query syntax is valid"),console.log(` Query type: ${ZO(i)}`)}catch(i){tF(i,n,t)}}o(lK,"executeDryRun");function ZO(n){return n.type==="update"?"UPDATE":"queryType"in n?n.queryType:"UNKNOWN"}o(ZO,"getQueryType");function uK(n,e){switch(e){case"json":let t=new Ul;console.log(t.format(n));break;case"csv":let r=new Eg;console.log(r.format(n));break;case"table":default:let i=new Vl;console.log(i.format(n));break}}o(uK,"formatSelectResults");function fK(n,e){let t=new ql;switch(e){case"json":console.log(t.formatJson(n));break;case"ntriples":console.log(t.formatNTriples(n));break;case"table":default:console.log(t.formatTable(n));break}}o(fK,"formatConstructResults");function dK(n,e){switch(e){case"json":console.log(JSON.stringify(n,null,2));break;case"csv":if(n.length===0){console.log("");return}let t=Object.keys(n[0]);console.log(t.join(","));for(let i of n){let s=t.map(a=>{let c=i[a];return c==null?"":String(c).includes(",")?`"${c}"`:String(c)});console.log(s.join(","))}break;case"table":default:if(n.length===0){console.log("No results.");return}let r=Object.keys(n[0]);console.log(r.join(" ")),console.log(r.map(()=>"---").join(" "));for(let i of n){let s=r.map(a=>String(i[a]??""));console.log(s.join(" "))}break}}o(dK,"formatCachedSelectResults");function hK(n,e){switch(e){case"json":console.log(JSON.stringify(n,null,2));break;case"ntriples":for(let t of n)console.log(`<${t.subject}> <${t.predicate}> ${pK(t.object)} .`);break;case"table":default:console.log("Subject Predicate Object"),console.log("--- --- ---");for(let t of n)console.log(`${t.subject} ${t.predicate} ${t.object}`);break}}o(hK,"formatCachedConstructResults");function pK(n){return kg.formatObject(n)}o(pK,"formatNTriplesObject");function mK(n,e){for(let t of n){let r=[`${t.type.toUpperCase()}`];switch(t.inserted!==void 0&&r.push(`inserted: ${t.inserted}`),t.deleted!==void 0&&r.push(`deleted: ${t.deleted}`),r.push(t.success?"OK":"FAILED"),e){case"json":console.log(JSON.stringify(t,null,2));break;case"csv":n.indexOf(t)===0&&console.log("type,inserted,deleted,success"),console.log(`${t.type},${t.inserted??""},${t.deleted??""},${t.success}`);break;case"table":default:console.log(`\u2705 ${r.join(" | ")}`);break}}}o(mK,"formatUpdateResults");var rF=require("fs"),nF=require("path"),Is=K(Dt());function iF(){return new ae("index").description("Build or refresh the triple cache for faster SPARQL queries").option("--vault <path>","Path to Obsidian vault",process.cwd()).option("--output <type>","Response format: text|json (for MCP tools)","text").option("--stats","Show cache statistics after building").option("--force","Force rebuild even if cache is valid").option("--strict","Fail on first invalid IRI instead of skipping").option("--no-inference","Disable RDFS subClassOf inference materialization").action(async n=>{let e=n.output||"text";D.setFormat(e);try{let t=(0,nF.resolve)(n.vault);if(!(0,rF.existsSync)(t))throw new Te(t);let r=new qn(t),i=r.getCachePath();n.force&&(e==="text"&&console.log("\u{1F5D1}\uFE0F Invalidating existing cache..."),await r.invalidate()),e==="text"&&console.log(`\u{1F4E6} Building triple cache for: ${t}...`);let s=Date.now(),a=await r.buildCacheWithValidation({strict:n.strict??!1}),c=0;if(n.inference!==!1){let{triples:u}=await r.loadOrBuild(),f=new Is.InMemoryTripleStore;await f.addAll(u),c=await new Is.RDFSInferenceEngine().materialize(f);let h=new Is.NonInheritablePropertyRegistry;await h.initialize(f);let p=new Is.PropertyCardinalityRegistry;await p.initialize(f);let v=await new Is.PrototypeChainMaterializer(h,p).materialize(f);if(c+=v,c>0){let w=await f.match();await r.saveTriples(w),a.tripleCount+=c}e==="text"&&c>0&&console.log(`\u{1F9E0} Materialized ${c} inferred triples (RDFS + prototype chain)`)}let l=Date.now()-s;if(e==="json"){let u={action:"build",cachePath:i,tripleCount:a.tripleCount,durationMs:a.durationMs},f={summary:a.summary,skippedFiles:a.skippedFiles};if(n.stats){let d=await r.getCacheStats();if(d){let h={tripleCount:d.tripleCount,createdAt:d.createdAt.toISOString(),isValid:d.isValid,sizeBytes:d.sizeBytes,cachePath:i},p=X.success({cache:u,stats:h,validation:f},{durationMs:l});console.log(JSON.stringify(p,null,2))}}else{let d=X.success({cache:u,validation:f},{durationMs:l});console.log(JSON.stringify(d,null,2))}}else{if(a.skippedFiles.length>0){console.log(`
616
616
  \u26A0\uFE0F Files skipped due to IRI issues:`);for(let u of a.skippedFiles)console.log(` - ${u.path}`),console.log(` ${u.reason}`);console.log("")}if(console.log(`\u2705 Indexed ${a.summary.indexed} files, skipped ${a.summary.skipped} (total: ${a.summary.total})`),console.log(`\u{1F4CA} Created cache with ${a.tripleCount.toLocaleString()} triples at ${i}`),console.log(`\u23F1\uFE0F Build time: ${a.durationMs}ms`),n.stats){let u=await r.getCacheStats();u&&(console.log(`
617
- \u{1F4CA} Cache Statistics:`),console.log(` Triples: ${u.tripleCount.toLocaleString()}`),console.log(` Created: ${u.createdAt.toISOString()}`),console.log(` Valid: ${u.isValid?"\u2705 Yes":"\u274C No"}`),console.log(` Size: ${gK(u.sizeBytes)}`))}}}catch(t){D.handle(t)}})}o(iF,"sparqlIndexCommand");function gK(n){return n<1024?`${n} B`:n<1024*1024?`${(n/1024).toFixed(1)} KB`:`${(n/(1024*1024)).toFixed(1)} MB`}o(gK,"formatBytes");function sF(){return new ae("templates").description("List available SPARQL query templates").option("--output <type>","Response format: text|json (for MCP tools)","text").action(async n=>{let e=n.output||"text";D.setFormat(e);try{let t=new Ql,r=t.listTemplates();if(e==="json"){let i=X.success({templates:r,count:r.length});console.log(JSON.stringify(i,null,2))}else console.log(t.formatList("text"))}catch(t){D.handle(t)}})}o(sF,"sparqlTemplatesCommand");var dD=require("path");var mr=K(Za()),ao=K(require("path"));var CF=K(_F(),1);var rd=o(n=>{if(typeof n!="string")throw new TypeError("invalid pattern");if(n.length>65536)throw new TypeError("pattern is too long")},"assertValidPattern");var TK={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},nd=o(n=>n.replace(/[[\]\\-]/g,"\\$&"),"braceEscape"),AK=o(n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"regexpEscape"),SF=o(n=>n.join(""),"rangesToString"),vF=o((n,e)=>{let t=e;if(n.charAt(t)!=="[")throw new Error("not in a brace expression");let r=[],i=[],s=t+1,a=!1,c=!1,l=!1,u=!1,f=t,d="";e:for(;s<n.length;){let v=n.charAt(s);if((v==="!"||v==="^")&&s===t+1){u=!0,s++;continue}if(v==="]"&&a&&!l){f=s+1;break}if(a=!0,v==="\\"&&!l){l=!0,s++;continue}if(v==="["&&!l){for(let[w,[b,A,I]]of Object.entries(TK))if(n.startsWith(w,s)){if(d)return["$.",!1,n.length-t,!0];s+=w.length,I?i.push(b):r.push(b),c=c||A;continue e}}if(l=!1,d){v>d?r.push(nd(d)+"-"+nd(v)):v===d&&r.push(nd(v)),d="",s++;continue}if(n.startsWith("-]",s+1)){r.push(nd(v+"-")),s+=2;continue}if(n.startsWith("-",s+1)){d=v,s+=2;continue}r.push(nd(v)),s++}if(f<s)return["",!1,0,!1];if(!r.length&&!i.length)return["$.",!1,n.length-t,!0];if(i.length===0&&r.length===1&&/^\\?.$/.test(r[0])&&!u){let v=r[0].length===2?r[0].slice(-1):r[0];return[AK(v),!1,f-t,!1]}let h="["+(u?"^":"")+SF(r)+"]",p="["+(u?"":"^")+SF(i)+"]";return[r.length&&i.length?"("+h+"|"+p+")":r.length?h:p,c,f-t,!0]},"parseClass");var Gi=o((n,{windowsPathsNoEscape:e=!1}={})=>e?n.replace(/\[([^\/\\])\]/g,"$1"):n.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"),"unescape");var Dn,xK=new Set(["!","?","+","*","@"]),SE=o(n=>xK.has(n),"isExtglobType"),bF=o(n=>SE(n.type),"isExtglobAST"),CK=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),IK=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),RK=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),wF=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),PK="(?!(?:^|/)\\.\\.?(?:$|/))",jg="(?!\\.)",OK=new Set(["[","."]),FK=new Set(["..","."]),DK=new Set("().*{}+?[]^$\\!"),NK=o(n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"regExpEscape"),vE="[^/]",EF=vE+"*?",TF=vE+"+?",ic=class{static{o(this,"AST")}type;#e;#n;#r=!1;#t=[];#c;#_;#i;#u=!1;#s;#l;#a=!1;constructor(e,t,r={}){this.type=e,e&&(this.#n=!0),this.#c=t,this.#e=this.#c?this.#c.#e:this,this.#s=this.#e===this?r:this.#e.#s,this.#i=this.#e===this?[]:this.#e.#i,e==="!"&&!this.#e.#u&&this.#i.push(this),this.#_=this.#c?this.#c.#t.length:0}get hasMagic(){if(this.#n!==void 0)return this.#n;for(let e of this.#t)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#n=!0;return this.#n}toString(){return this.#l!==void 0?this.#l:this.type?this.#l=this.type+"("+this.#t.map(e=>String(e)).join("|")+")":this.#l=this.#t.map(e=>String(e)).join("")}#p(){if(this!==this.#e)throw new Error("should only call on root");if(this.#u)return this;this.toString(),this.#u=!0;let e;for(;e=this.#i.pop();){if(e.type!=="!")continue;let t=e,r=t.#c;for(;r;){for(let i=t.#_+1;!r.type&&i<r.#t.length;i++)for(let s of e.#t){if(typeof s=="string")throw new Error("string part in extglob AST??");s.copyIn(r.#t[i])}t=r,r=t.#c}}return this}push(...e){for(let t of e)if(t!==""){if(typeof t!="string"&&!(t instanceof Dn&&t.#c===this))throw new Error("invalid part: "+t);this.#t.push(t)}}toJSON(){let e=this.type===null?this.#t.slice().map(t=>typeof t=="string"?t:t.toJSON()):[this.type,...this.#t.map(t=>t.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#u&&this.#c?.type==="!")&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#c?.isStart())return!1;if(this.#_===0)return!0;let e=this.#c;for(let t=0;t<this.#_;t++){let r=e.#t[t];if(!(r instanceof Dn&&r.type==="!"))return!1}return!0}isEnd(){if(this.#e===this||this.#c?.type==="!")return!0;if(!this.#c?.isEnd())return!1;if(!this.type)return this.#c?.isEnd();let e=this.#c?this.#c.#t.length:0;return this.#_===e-1}copyIn(e){typeof e=="string"?this.push(e):this.push(e.clone(this))}clone(e){let t=new Dn(this.type,e);for(let r of this.#t)t.copyIn(r);return t}static#g(e,t,r,i,s){let a=i.maxExtglobRecursion??2,c=!1,l=!1,u=-1,f=!1;if(t.type===null){let v=r,w="";for(;v<e.length;){let b=e.charAt(v++);if(c||b==="\\"){c=!c,w+=b;continue}if(l){v===u+1?(b==="^"||b==="!")&&(f=!0):b==="]"&&!(v===u+2&&f)&&(l=!1),w+=b;continue}else if(b==="["){l=!0,u=v,f=!1,w+=b;continue}if(!i.noext&&SE(b)&&e.charAt(v)==="("&&s<=a){t.push(w),w="";let I=new Dn(b,t);v=Dn.#g(e,I,v,i,s+1),t.push(I);continue}w+=b}return t.push(w),v}let d=r+1,h=new Dn(null,t),p=[],y="";for(;d<e.length;){let v=e.charAt(d++);if(c||v==="\\"){c=!c,y+=v;continue}if(l){d===u+1?(v==="^"||v==="!")&&(f=!0):v==="]"&&!(d===u+2&&f)&&(l=!1),y+=v;continue}else if(v==="["){l=!0,u=d,f=!1,y+=v;continue}if(SE(v)&&e.charAt(d)==="("&&(s<=a||t&&t.#y(v))){let b=t&&t.#y(v)?0:1;h.push(y),y="";let A=new Dn(v,h);h.push(A),d=Dn.#g(e,A,d,i,s+b);continue}if(v==="|"){h.push(y),y="",p.push(h),h=new Dn(null,t);continue}if(v===")")return y===""&&t.#t.length===0&&(t.#a=!0),h.push(y),y="",t.push(...p,h),d;y+=v}return t.type=null,t.#n=void 0,t.#t=[e.substring(r-1)],d}#d(e){return this.#m(e,IK)}#m(e,t=CK){if(!e||typeof e!="object"||e.type!==null||e.#t.length!==1||this.type===null)return!1;let r=e.#t[0];return!r||typeof r!="object"||r.type===null?!1:this.#y(r.type,t)}#y(e,t=RK){return!!t.get(this.type)?.includes(e)}#f(e,t){let r=e.#t[0],i=new Dn(null,r,this.options);i.#t.push(""),r.push(i),this.#E(e,t)}#E(e,t){let r=e.#t[0];this.#t.splice(t,1,...r.#t);for(let i of r.#t)typeof i=="object"&&(i.#c=this);this.#l=void 0}#T(e){return!!wF.get(this.type)?.has(e)}#S(e){if(!e||typeof e!="object"||e.type!==null||e.#t.length!==1||this.type===null||this.#t.length!==1)return!1;let t=e.#t[0];return!t||typeof t!="object"||t.type===null?!1:this.#T(t.type)}#w(e){let t=wF.get(this.type),r=e.#t[0],i=t?.get(r.type);if(!i)return!1;this.#t=r.#t;for(let s of this.#t)typeof s=="object"&&(s.#c=this);this.type=i,this.#l=void 0,this.#a=!1}#v(){if(bF(this)){let e=0,t=!1;do{t=!0;for(let r=0;r<this.#t.length;r++){let i=this.#t[r];typeof i=="object"&&(i.#v(),this.#m(i)?(t=!1,this.#E(i,r)):this.#d(i)?(t=!1,this.#f(i,r)):this.#S(i)&&(t=!1,this.#w(i)))}}while(!t&&++e<10)}else for(let e of this.#t)typeof e=="object"&&e.#v();this.#l=void 0}static fromGlob(e,t={}){let r=new Dn(null,void 0,t);return Dn.#g(e,r,0,t,0),r}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();let e=this.toString(),[t,r,i,s]=this.toRegExpSource();if(!(i||this.#n||this.#s.nocase&&!this.#s.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return r;let c=(this.#s.nocase?"i":"")+(s?"u":"");return Object.assign(new RegExp(`^${t}$`,c),{_src:t,_glob:e})}get options(){return this.#s}toRegExpSource(e){let t=e??!!this.#s.dot;if(this.#e===this&&(this.#v(),this.#p()),!bF(this)){let l=this.isStart()&&this.isEnd(),u=this.#t.map(p=>{let[y,v,w,b]=typeof p=="string"?Dn.#x(p,this.#n,l):p.toRegExpSource(e);return this.#n=this.#n||w,this.#r=this.#r||b,y}).join(""),f="";if(this.isStart()&&typeof this.#t[0]=="string"&&!(this.#t.length===1&&FK.has(this.#t[0]))){let y=OK,v=t&&y.has(u.charAt(0))||u.startsWith("\\.")&&y.has(u.charAt(2))||u.startsWith("\\.\\.")&&y.has(u.charAt(4)),w=!t&&!e&&y.has(u.charAt(0));f=v?PK:w?jg:""}let d="";return this.isEnd()&&this.#e.#u&&this.#c?.type==="!"&&(d="(?:$|\\/)"),[f+u+d,Gi(u),this.#n=!!this.#n,this.#r]}let r=this.type==="*"||this.type==="+",i=this.type==="!"?"(?:(?!(?:":"(?:",s=this.#b(t);if(this.isStart()&&this.isEnd()&&!s&&this.type!=="!"){let l=this.toString(),u=this;return u.#t=[l],u.type=null,u.#n=void 0,[l,Gi(this.toString()),!1,!1]}let a=!r||e||t||!jg?"":this.#b(!0);a===s&&(a=""),a&&(s=`(?:${s})(?:${a})*?`);let c="";if(this.type==="!"&&this.#a)c=(this.isStart()&&!t?jg:"")+TF;else{let l=this.type==="!"?"))"+(this.isStart()&&!t&&!e?jg:"")+EF+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&a?")":this.type==="*"&&a?")?":`)${this.type}`;c=i+s+l}return[c,Gi(s),this.#n=!!this.#n,this.#r]}#b(e){return this.#t.map(t=>{if(typeof t=="string")throw new Error("string type in extglob ast??");let[r,i,s,a]=t.toRegExpSource(e);return this.#r=this.#r||a,r}).filter(t=>!(this.isStart()&&this.isEnd())||!!t).join("|")}static#x(e,t,r=!1){let i=!1,s="",a=!1,c=!1;for(let l=0;l<e.length;l++){let u=e.charAt(l);if(i){i=!1,s+=(DK.has(u)?"\\":"")+u,c=!1;continue}if(u==="\\"){l===e.length-1?s+="\\\\":i=!0;continue}if(u==="["){let[f,d,h,p]=vF(e,l);if(h){s+=f,a=a||d,l+=h-1,t=t||p,c=!1;continue}}if(u==="*"){if(c)continue;c=!0,s+=r&&/^[*]+$/.test(e)?TF:EF,t=!0;continue}else c=!1;if(u==="?"){s+=vE,t=!0;continue}s+=NK(u)}return[s,Gi(e),!!t,a]}};Dn=ic;var Xl=o((n,{windowsPathsNoEscape:e=!1}={})=>e?n.replace(/[?*()[\]]/g,"[$&]"):n.replace(/[?*()[\]\\]/g,"\\$&"),"escape");var Br=o((n,e,t={})=>(rd(e),!t.nocomment&&e.charAt(0)==="#"?!1:new Gn(e,t).match(n)),"minimatch"),LK=/^\*+([^+@!?\*\[\(]*)$/,kK=o(n=>e=>!e.startsWith(".")&&e.endsWith(n),"starDotExtTest"),MK=o(n=>e=>e.endsWith(n),"starDotExtTestDot"),jK=o(n=>(n=n.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(n)),"starDotExtTestNocase"),$K=o(n=>(n=n.toLowerCase(),e=>e.toLowerCase().endsWith(n)),"starDotExtTestNocaseDot"),BK=/^\*+\.\*+$/,VK=o(n=>!n.startsWith(".")&&n.includes("."),"starDotStarTest"),UK=o(n=>n!=="."&&n!==".."&&n.includes("."),"starDotStarTestDot"),qK=/^\.\*+$/,WK=o(n=>n!=="."&&n!==".."&&n.startsWith("."),"dotStarTest"),GK=/^\*+$/,zK=o(n=>n.length!==0&&!n.startsWith("."),"starTest"),HK=o(n=>n.length!==0&&n!=="."&&n!=="..","starTestDot"),QK=/^\?+([^+@!?\*\[\(]*)?$/,KK=o(([n,e=""])=>{let t=IF([n]);return e?(e=e.toLowerCase(),r=>t(r)&&r.toLowerCase().endsWith(e)):t},"qmarksTestNocase"),YK=o(([n,e=""])=>{let t=RF([n]);return e?(e=e.toLowerCase(),r=>t(r)&&r.toLowerCase().endsWith(e)):t},"qmarksTestNocaseDot"),XK=o(([n,e=""])=>{let t=RF([n]);return e?r=>t(r)&&r.endsWith(e):t},"qmarksTestDot"),JK=o(([n,e=""])=>{let t=IF([n]);return e?r=>t(r)&&r.endsWith(e):t},"qmarksTest"),IF=o(([n])=>{let e=n.length;return t=>t.length===e&&!t.startsWith(".")},"qmarksTestNoExt"),RF=o(([n])=>{let e=n.length;return t=>t.length===e&&t!=="."&&t!==".."},"qmarksTestNoExtDot"),PF=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",AF={win32:{sep:"\\"},posix:{sep:"/"}},ZK=PF==="win32"?AF.win32.sep:AF.posix.sep;Br.sep=ZK;var Kt=Symbol("globstar **");Br.GLOBSTAR=Kt;var eY="[^/]",tY=eY+"*?",rY="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",nY="(?:(?!(?:\\/|^)\\.).)*?",iY=o((n,e={})=>t=>Br(t,n,e),"filter");Br.filter=iY;var ci=o((n,e={})=>Object.assign({},n,e),"ext"),sY=o(n=>{if(!n||typeof n!="object"||!Object.keys(n).length)return Br;let e=Br;return Object.assign(o((r,i,s={})=>e(r,i,ci(n,s)),"m"),{Minimatch:class extends e.Minimatch{static{o(this,"Minimatch")}constructor(i,s={}){super(i,ci(n,s))}static defaults(i){return e.defaults(ci(n,i)).Minimatch}},AST:class extends e.AST{static{o(this,"AST")}constructor(i,s,a={}){super(i,s,ci(n,a))}static fromGlob(i,s={}){return e.AST.fromGlob(i,ci(n,s))}},unescape:o((r,i={})=>e.unescape(r,ci(n,i)),"unescape"),escape:o((r,i={})=>e.escape(r,ci(n,i)),"escape"),filter:o((r,i={})=>e.filter(r,ci(n,i)),"filter"),defaults:o(r=>e.defaults(ci(n,r)),"defaults"),makeRe:o((r,i={})=>e.makeRe(r,ci(n,i)),"makeRe"),braceExpand:o((r,i={})=>e.braceExpand(r,ci(n,i)),"braceExpand"),match:o((r,i,s={})=>e.match(r,i,ci(n,s)),"match"),sep:e.sep,GLOBSTAR:Kt})},"defaults");Br.defaults=sY;var OF=o((n,e={})=>(rd(n),e.nobrace||!/\{(?:(?!\{).)*\}/.test(n)?[n]:(0,CF.default)(n)),"braceExpand");Br.braceExpand=OF;var aY=o((n,e={})=>new Gn(n,e).makeRe(),"makeRe");Br.makeRe=aY;var oY=o((n,e,t={})=>{let r=new Gn(e,t);return n=n.filter(i=>r.match(i)),r.options.nonull&&!n.length&&n.push(e),n},"match");Br.match=oY;var xF=/[?*]|[+@!]\(.*?\)|\[|\]/,cY=o(n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"regExpEscape"),Gn=class{static{o(this,"Minimatch")}options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,t={}){rd(e),t=t||{},this.options=t,this.maxGlobstarRecursion=t.maxGlobstarRecursion??200,this.pattern=e,this.platform=t.platform||PF,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!t.nonegate,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=t.windowsNoMagicRoot!==void 0?t.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let t of e)if(typeof t!="string")return!0;return!1}debug(...e){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...s)=>console.error(...s)),this.debug(this.pattern,this.globSet);let r=this.globSet.map(s=>this.slashSplit(s));this.globParts=this.preprocess(r),this.debug(this.pattern,this.globParts);let i=this.globParts.map((s,a,c)=>{if(this.isWindows&&this.windowsNoMagicRoot){let l=s[0]===""&&s[1]===""&&(s[2]==="?"||!xF.test(s[2]))&&!xF.test(s[3]),u=/^[a-z]:/i.test(s[0]);if(l)return[...s.slice(0,4),...s.slice(4).map(f=>this.parse(f))];if(u)return[s[0],...s.slice(1).map(f=>this.parse(f))]}return s.map(l=>this.parse(l))});if(this.debug(this.pattern,i),this.set=i.filter(s=>s.indexOf(!1)===-1),this.isWindows)for(let s=0;s<this.set.length;s++){let a=this.set[s];a[0]===""&&a[1]===""&&this.globParts[s][2]==="?"&&typeof a[3]=="string"&&/^[a-z]:$/i.test(a[3])&&(a[2]="?")}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let r=0;r<e.length;r++)for(let i=0;i<e[r].length;i++)e[r][i]==="**"&&(e[r][i]="*");let{optimizationLevel:t=1}=this.options;return t>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):t>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(t=>{let r=-1;for(;(r=t.indexOf("**",r+1))!==-1;){let i=r;for(;t[i+1]==="**";)i++;i!==r&&t.splice(r,i-r)}return t})}levelOneOptimize(e){return e.map(t=>(t=t.reduce((r,i)=>{let s=r[r.length-1];return i==="**"&&s==="**"?r:i===".."&&s&&s!==".."&&s!=="."&&s!=="**"?(r.pop(),r):(r.push(i),r)},[]),t.length===0?[""]:t))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let t=!1;do{if(t=!1,!this.preserveMultipleSlashes){for(let i=1;i<e.length-1;i++){let s=e[i];i===1&&s===""&&e[0]===""||(s==="."||s==="")&&(t=!0,e.splice(i,1),i--)}e[0]==="."&&e.length===2&&(e[1]==="."||e[1]==="")&&(t=!0,e.pop())}let r=0;for(;(r=e.indexOf("..",r+1))!==-1;){let i=e[r-1];i&&i!=="."&&i!==".."&&i!=="**"&&(t=!0,e.splice(r-1,2),r-=2)}}while(t);return e.length===0?[""]:e}firstPhasePreProcess(e){let t=!1;do{t=!1;for(let r of e){let i=-1;for(;(i=r.indexOf("**",i+1))!==-1;){let a=i;for(;r[a+1]==="**";)a++;a>i&&r.splice(i+1,a-i);let c=r[i+1],l=r[i+2],u=r[i+3];if(c!==".."||!l||l==="."||l===".."||!u||u==="."||u==="..")continue;t=!0,r.splice(i,1);let f=r.slice(0);f[i]="**",e.push(f),i--}if(!this.preserveMultipleSlashes){for(let a=1;a<r.length-1;a++){let c=r[a];a===1&&c===""&&r[0]===""||(c==="."||c==="")&&(t=!0,r.splice(a,1),a--)}r[0]==="."&&r.length===2&&(r[1]==="."||r[1]==="")&&(t=!0,r.pop())}let s=0;for(;(s=r.indexOf("..",s+1))!==-1;){let a=r[s-1];if(a&&a!=="."&&a!==".."&&a!=="**"){t=!0;let l=s===1&&r[s+1]==="**"?["."]:[];r.splice(s-1,2,...l),r.length===0&&r.push(""),s-=2}}}}while(t);return e}secondPhasePreProcess(e){for(let t=0;t<e.length-1;t++)for(let r=t+1;r<e.length;r++){let i=this.partsMatch(e[t],e[r],!this.preserveMultipleSlashes);if(i){e[t]=[],e[r]=i;break}}return e.filter(t=>t.length)}partsMatch(e,t,r=!1){let i=0,s=0,a=[],c="";for(;i<e.length&&s<t.length;)if(e[i]===t[s])a.push(c==="b"?t[s]:e[i]),i++,s++;else if(r&&e[i]==="**"&&t[s]===e[i+1])a.push(e[i]),i++;else if(r&&t[s]==="**"&&e[i]===t[s+1])a.push(t[s]),s++;else if(e[i]==="*"&&t[s]&&(this.options.dot||!t[s].startsWith("."))&&t[s]!=="**"){if(c==="b")return!1;c="a",a.push(e[i]),i++,s++}else if(t[s]==="*"&&e[i]&&(this.options.dot||!e[i].startsWith("."))&&e[i]!=="**"){if(c==="a")return!1;c="b",a.push(t[s]),i++,s++}else return!1;return e.length===t.length&&a}parseNegate(){if(this.nonegate)return;let e=this.pattern,t=!1,r=0;for(let i=0;i<e.length&&e.charAt(i)==="!";i++)t=!t,r++;r&&(this.pattern=e.slice(r)),this.negate=t}matchOne(e,t,r=!1){let i=0,s=0;if(this.isWindows){let c=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),l=!c&&e[0]===""&&e[1]===""&&e[2]==="?"&&/^[a-z]:$/i.test(e[3]),u=typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0]),f=!u&&t[0]===""&&t[1]===""&&t[2]==="?"&&typeof t[3]=="string"&&/^[a-z]:$/i.test(t[3]),d=l?3:c?0:void 0,h=f?3:u?0:void 0;if(typeof d=="number"&&typeof h=="number"){let[p,y]=[e[d],t[h]];p.toLowerCase()===y.toLowerCase()&&(t[h]=p,s=h,i=d)}}let{optimizationLevel:a=1}=this.options;return a>=2&&(e=this.levelTwoFileOptimize(e)),t.includes(Kt)?this.#e(e,t,r,i,s):this.#r(e,t,r,i,s)}#e(e,t,r,i,s){let a=t.indexOf(Kt,s),c=t.lastIndexOf(Kt),[l,u,f]=r?[t.slice(s,a),t.slice(a+1),[]]:[t.slice(s,a),t.slice(a+1,c),t.slice(c+1)];if(l.length){let A=e.slice(i,i+l.length);if(!this.#r(A,l,r,0,0))return!1;i+=l.length}let d=0;if(f.length){if(f.length+i>e.length)return!1;let A=e.length-f.length;if(this.#r(e,f,r,A,0))d=f.length;else{if(e[e.length-1]!==""||i+f.length===e.length||(A--,!this.#r(e,f,r,A,0)))return!1;d=f.length+1}}if(!u.length){let A=!!d;for(let I=i;I<e.length-d;I++){let j=String(e[I]);if(A=!0,j==="."||j===".."||!this.options.dot&&j.startsWith("."))return!1}return r||A}let h=[[[],0]],p=h[0],y=0,v=[0];for(let A of u)A===Kt?(v.push(y),p=[[],0],h.push(p)):(p[0].push(A),y++);let w=h.length-1,b=e.length-d;for(let A of h)A[1]=b-(v[w--]+A[0].length);return!!this.#n(e,h,i,0,r,0,!!d)}#n(e,t,r,i,s,a,c){let l=t[i];if(!l){for(let d=r;d<e.length;d++){c=!0;let h=e[d];if(h==="."||h===".."||!this.options.dot&&h.startsWith("."))return!1}return c}let[u,f]=l;for(;r<=f;){if(this.#r(e.slice(0,r+u.length),u,s,r,0)&&a<this.maxGlobstarRecursion){let p=this.#n(e,t,r+u.length,i+1,s,a+1,c);if(p!==!1)return p}let h=e[r];if(h==="."||h===".."||!this.options.dot&&h.startsWith("."))return!1;r++}return s||null}#r(e,t,r,i,s){let a,c,l,u;for(a=i,c=s,u=e.length,l=t.length;a<u&&c<l;a++,c++){this.debug("matchOne loop");let f=t[c],d=e[a];if(this.debug(t,f,d),f===!1||f===Kt)return!1;let h;if(typeof f=="string"?(h=d===f,this.debug("string match",f,d,h)):(h=f.test(d),this.debug("pattern match",f,d,h)),!h)return!1}if(a===u&&c===l)return!0;if(a===u)return r;if(c===l)return a===u-1&&e[a]==="";throw new Error("wtf?")}braceExpand(){return OF(this.pattern,this.options)}parse(e){rd(e);let t=this.options;if(e==="**")return Kt;if(e==="")return"";let r,i=null;(r=e.match(GK))?i=t.dot?HK:zK:(r=e.match(LK))?i=(t.nocase?t.dot?$K:jK:t.dot?MK:kK)(r[1]):(r=e.match(QK))?i=(t.nocase?t.dot?YK:KK:t.dot?XK:JK)(r):(r=e.match(BK))?i=t.dot?UK:VK:(r=e.match(qK))&&(i=WK);let s=ic.fromGlob(e,this.options).toMMPattern();return i&&typeof s=="object"&&Reflect.defineProperty(s,"test",{value:i}),s}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let t=this.options,r=t.noglobstar?tY:t.dot?rY:nY,i=new Set(t.nocase?["i"]:[]),s=e.map(l=>{let u=l.map(f=>{if(f instanceof RegExp)for(let d of f.flags.split(""))i.add(d);return typeof f=="string"?cY(f):f===Kt?Kt:f._src});return u.forEach((f,d)=>{let h=u[d+1],p=u[d-1];f!==Kt||p===Kt||(p===void 0?h!==void 0&&h!==Kt?u[d+1]="(?:\\/|"+r+"\\/)?"+h:u[d]=r:h===void 0?u[d-1]=p+"(?:\\/|"+r+")?":h!==Kt&&(u[d-1]=p+"(?:\\/|\\/"+r+"\\/)"+h,u[d+1]=Kt))}),u.filter(f=>f!==Kt).join("/")}).join("|"),[a,c]=e.length>1?["(?:",")"]:["",""];s="^"+a+s+c+"$",this.negate&&(s="^(?!"+s+").+$");try{this.regexp=new RegExp(s,[...i].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&t)return!0;let r=this.options;this.isWindows&&(e=e.split("\\").join("/"));let i=this.slashSplit(e);this.debug(this.pattern,"split",i);let s=this.set;this.debug(this.pattern,"set",s);let a=i[i.length-1];if(!a)for(let c=i.length-2;!a&&c>=0;c--)a=i[c];for(let c=0;c<s.length;c++){let l=s[c],u=i;if(r.matchBase&&l.length===1&&(u=[a]),this.matchOne(u,l,t))return r.flipNegate?!0:!this.negate}return r.flipNegate?!1:this.negate}static defaults(e){return Br.defaults(e).Minimatch}};Br.AST=ic;Br.Minimatch=Gn;Br.escape=Xl;Br.unescape=Gi;var tD=require("node:url");var Jl=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,DF=new Set,bE=typeof process=="object"&&process?process:{},NF=o((n,e,t,r)=>{typeof bE.emitWarning=="function"?bE.emitWarning(n,e,t,r):console.error(`[${t}] ${e}: ${n}`)},"emitWarning"),$g=globalThis.AbortController,FF=globalThis.AbortSignal;if(typeof $g>"u"){FF=class{static{o(this,"AbortSignal")}onabort;_onabort=[];reason;aborted=!1;addEventListener(r,i){this._onabort.push(i)}},$g=class{static{o(this,"AbortController")}constructor(){e()}signal=new FF;abort(r){if(!this.signal.aborted){this.signal.reason=r,this.signal.aborted=!0;for(let i of this.signal._onabort)i(r);this.signal.onabort?.(r)}}};let n=bE.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=o(()=>{n&&(n=!1,NF("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))},"warnACPolyfill")}var lY=o(n=>!DF.has(n),"shouldWarn");var ro=o(n=>n&&n===Math.floor(n)&&n>0&&isFinite(n),"isPosInt"),LF=o(n=>ro(n)?n<=Math.pow(2,8)?Uint8Array:n<=Math.pow(2,16)?Uint16Array:n<=Math.pow(2,32)?Uint32Array:n<=Number.MAX_SAFE_INTEGER?Zl:null:null,"getUintArray"),Zl=class extends Array{static{o(this,"ZeroArray")}constructor(e){super(e),this.fill(0)}},wE=class n{static{o(this,"Stack")}heap;length;static#e=!1;static create(e){let t=LF(e);if(!t)return[];n.#e=!0;let r=new n(e,t);return n.#e=!1,r}constructor(e,t){if(!n.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new t(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},id=class n{static{o(this,"LRUCache")}#e;#n;#r;#t;#c;#_;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#i;#u;#s;#l;#a;#p;#g;#d;#m;#y;#f;#E;#T;#S;#w;#v;#b;static unsafeExposeInternals(e){return{starts:e.#T,ttls:e.#S,sizes:e.#E,keyMap:e.#s,keyList:e.#l,valList:e.#a,next:e.#p,prev:e.#g,get head(){return e.#d},get tail(){return e.#m},free:e.#y,isBackgroundFetch:o(t=>e.#h(t),"isBackgroundFetch"),backgroundFetch:o((t,r,i,s)=>e.#j(t,r,i,s),"backgroundFetch"),moveToTail:o(t=>e.#B(t),"moveToTail"),indexes:o(t=>e.#I(t),"indexes"),rindexes:o(t=>e.#R(t),"rindexes"),isStale:o(t=>e.#A(t),"isStale")}}get max(){return this.#e}get maxSize(){return this.#n}get calculatedSize(){return this.#u}get size(){return this.#i}get fetchMethod(){return this.#c}get memoMethod(){return this.#_}get dispose(){return this.#r}get disposeAfter(){return this.#t}constructor(e){let{max:t=0,ttl:r,ttlResolution:i=1,ttlAutopurge:s,updateAgeOnGet:a,updateAgeOnHas:c,allowStale:l,dispose:u,disposeAfter:f,noDisposeOnSet:d,noUpdateTTL:h,maxSize:p=0,maxEntrySize:y=0,sizeCalculation:v,fetchMethod:w,memoMethod:b,noDeleteOnFetchRejection:A,noDeleteOnStaleGet:I,allowStaleOnFetchRejection:j,allowStaleOnFetchAbort:V,ignoreFetchAbort:te}=e;if(t!==0&&!ro(t))throw new TypeError("max option must be a nonnegative integer");let z=t?LF(t):Array;if(!z)throw new Error("invalid max value: "+t);if(this.#e=t,this.#n=p,this.maxEntrySize=y||this.#n,this.sizeCalculation=v,this.sizeCalculation){if(!this.#n&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(b!==void 0&&typeof b!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#_=b,w!==void 0&&typeof w!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#c=w,this.#v=!!w,this.#s=new Map,this.#l=new Array(t).fill(void 0),this.#a=new Array(t).fill(void 0),this.#p=new z(t),this.#g=new z(t),this.#d=0,this.#m=0,this.#y=wE.create(t),this.#i=0,this.#u=0,typeof u=="function"&&(this.#r=u),typeof f=="function"?(this.#t=f,this.#f=[]):(this.#t=void 0,this.#f=void 0),this.#w=!!this.#r,this.#b=!!this.#t,this.noDisposeOnSet=!!d,this.noUpdateTTL=!!h,this.noDeleteOnFetchRejection=!!A,this.allowStaleOnFetchRejection=!!j,this.allowStaleOnFetchAbort=!!V,this.ignoreFetchAbort=!!te,this.maxEntrySize!==0){if(this.#n!==0&&!ro(this.#n))throw new TypeError("maxSize must be a positive integer if specified");if(!ro(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#P()}if(this.allowStale=!!l,this.noDeleteOnStaleGet=!!I,this.updateAgeOnGet=!!a,this.updateAgeOnHas=!!c,this.ttlResolution=ro(i)||i===0?i:1,this.ttlAutopurge=!!s,this.ttl=r||0,this.ttl){if(!ro(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#x()}if(this.#e===0&&this.ttl===0&&this.#n===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#n){let G="LRU_CACHE_UNBOUNDED";lY(G)&&(DF.add(G),NF("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",G,n))}}getRemainingTTL(e){return this.#s.has(e)?1/0:0}#x(){let e=new Zl(this.#e),t=new Zl(this.#e);this.#S=e,this.#T=t,this.#F=(s,a,c=Jl.now())=>{if(t[s]=a!==0?c:0,e[s]=a,a!==0&&this.ttlAutopurge){let l=setTimeout(()=>{this.#A(s)&&this.#O(this.#l[s],"expire")},a+1);l.unref&&l.unref()}},this.#C=s=>{t[s]=e[s]!==0?Jl.now():0},this.#o=(s,a)=>{if(e[a]){let c=e[a],l=t[a];if(!c||!l)return;s.ttl=c,s.start=l,s.now=r||i();let u=s.now-l;s.remainingTTL=c-u}};let r=0,i=o(()=>{let s=Jl.now();if(this.ttlResolution>0){r=s;let a=setTimeout(()=>r=0,this.ttlResolution);a.unref&&a.unref()}return s},"getNow");this.getRemainingTTL=s=>{let a=this.#s.get(s);if(a===void 0)return 0;let c=e[a],l=t[a];if(!c||!l)return 1/0;let u=(r||i())-l;return c-u},this.#A=s=>{let a=t[s],c=e[s];return!!c&&!!a&&(r||i())-a>c}}#C=o(()=>{},"#updateItemAge");#o=o(()=>{},"#statusTTL");#F=o(()=>{},"#setItemTTL");#A=o(()=>!1,"#isStale");#P(){let e=new Zl(this.#e);this.#u=0,this.#E=e,this.#D=t=>{this.#u-=e[t],e[t]=0},this.#L=(t,r,i,s)=>{if(this.#h(r))return 0;if(!ro(i))if(s){if(typeof s!="function")throw new TypeError("sizeCalculation must be a function");if(i=s(r,t),!ro(i))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i},this.#N=(t,r,i)=>{if(e[t]=r,this.#n){let s=this.#n-e[t];for(;this.#u>s;)this.#M(!0)}this.#u+=e[t],i&&(i.entrySize=r,i.totalCalculatedSize=this.#u)}}#D=o(e=>{},"#removeItemSize");#N=o((e,t,r)=>{},"#addItemSize");#L=o((e,t,r,i)=>{if(r||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0},"#requireSize");*#I({allowStale:e=this.allowStale}={}){if(this.#i)for(let t=this.#m;!(!this.#k(t)||((e||!this.#A(t))&&(yield t),t===this.#d));)t=this.#g[t]}*#R({allowStale:e=this.allowStale}={}){if(this.#i)for(let t=this.#d;!(!this.#k(t)||((e||!this.#A(t))&&(yield t),t===this.#m));)t=this.#p[t]}#k(e){return e!==void 0&&this.#s.get(this.#l[e])===e}*entries(){for(let e of this.#I())this.#a[e]!==void 0&&this.#l[e]!==void 0&&!this.#h(this.#a[e])&&(yield[this.#l[e],this.#a[e]])}*rentries(){for(let e of this.#R())this.#a[e]!==void 0&&this.#l[e]!==void 0&&!this.#h(this.#a[e])&&(yield[this.#l[e],this.#a[e]])}*keys(){for(let e of this.#I()){let t=this.#l[e];t!==void 0&&!this.#h(this.#a[e])&&(yield t)}}*rkeys(){for(let e of this.#R()){let t=this.#l[e];t!==void 0&&!this.#h(this.#a[e])&&(yield t)}}*values(){for(let e of this.#I())this.#a[e]!==void 0&&!this.#h(this.#a[e])&&(yield this.#a[e])}*rvalues(){for(let e of this.#R())this.#a[e]!==void 0&&!this.#h(this.#a[e])&&(yield this.#a[e])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,t={}){for(let r of this.#I()){let i=this.#a[r],s=this.#h(i)?i.__staleWhileFetching:i;if(s!==void 0&&e(s,this.#l[r],this))return this.get(this.#l[r],t)}}forEach(e,t=this){for(let r of this.#I()){let i=this.#a[r],s=this.#h(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(t,s,this.#l[r],this)}}rforEach(e,t=this){for(let r of this.#R()){let i=this.#a[r],s=this.#h(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(t,s,this.#l[r],this)}}purgeStale(){let e=!1;for(let t of this.#R({allowStale:!0}))this.#A(t)&&(this.#O(this.#l[t],"expire"),e=!0);return e}info(e){let t=this.#s.get(e);if(t===void 0)return;let r=this.#a[t],i=this.#h(r)?r.__staleWhileFetching:r;if(i===void 0)return;let s={value:i};if(this.#S&&this.#T){let a=this.#S[t],c=this.#T[t];if(a&&c){let l=a-(Jl.now()-c);s.ttl=l,s.start=Date.now()}}return this.#E&&(s.size=this.#E[t]),s}dump(){let e=[];for(let t of this.#I({allowStale:!0})){let r=this.#l[t],i=this.#a[t],s=this.#h(i)?i.__staleWhileFetching:i;if(s===void 0||r===void 0)continue;let a={value:s};if(this.#S&&this.#T){a.ttl=this.#S[t];let c=Jl.now()-this.#T[t];a.start=Math.floor(Date.now()-c)}this.#E&&(a.size=this.#E[t]),e.unshift([r,a])}return e}load(e){this.clear();for(let[t,r]of e){if(r.start){let i=Date.now()-r.start;r.start=Jl.now()-i}this.set(t,r.value,r)}}set(e,t,r={}){if(t===void 0)return this.delete(e),this;let{ttl:i=this.ttl,start:s,noDisposeOnSet:a=this.noDisposeOnSet,sizeCalculation:c=this.sizeCalculation,status:l}=r,{noUpdateTTL:u=this.noUpdateTTL}=r,f=this.#L(e,t,r.size||0,c);if(this.maxEntrySize&&f>this.maxEntrySize)return l&&(l.set="miss",l.maxEntrySizeExceeded=!0),this.#O(e,"set"),this;let d=this.#i===0?void 0:this.#s.get(e);if(d===void 0)d=this.#i===0?this.#m:this.#y.length!==0?this.#y.pop():this.#i===this.#e?this.#M(!1):this.#i,this.#l[d]=e,this.#a[d]=t,this.#s.set(e,d),this.#p[this.#m]=d,this.#g[d]=this.#m,this.#m=d,this.#i++,this.#N(d,f,l),l&&(l.set="add"),u=!1;else{this.#B(d);let h=this.#a[d];if(t!==h){if(this.#v&&this.#h(h)){h.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:p}=h;p!==void 0&&!a&&(this.#w&&this.#r?.(p,e,"set"),this.#b&&this.#f?.push([p,e,"set"]))}else a||(this.#w&&this.#r?.(h,e,"set"),this.#b&&this.#f?.push([h,e,"set"]));if(this.#D(d),this.#N(d,f,l),this.#a[d]=t,l){l.set="replace";let p=h&&this.#h(h)?h.__staleWhileFetching:h;p!==void 0&&(l.oldValue=p)}}else l&&(l.set="update")}if(i!==0&&!this.#S&&this.#x(),this.#S&&(u||this.#F(d,i,s),l&&this.#o(l,d)),!a&&this.#b&&this.#f){let h=this.#f,p;for(;p=h?.shift();)this.#t?.(...p)}return this}pop(){try{for(;this.#i;){let e=this.#a[this.#d];if(this.#M(!0),this.#h(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(e!==void 0)return e}}finally{if(this.#b&&this.#f){let e=this.#f,t;for(;t=e?.shift();)this.#t?.(...t)}}}#M(e){let t=this.#d,r=this.#l[t],i=this.#a[t];return this.#v&&this.#h(i)?i.__abortController.abort(new Error("evicted")):(this.#w||this.#b)&&(this.#w&&this.#r?.(i,r,"evict"),this.#b&&this.#f?.push([i,r,"evict"])),this.#D(t),e&&(this.#l[t]=void 0,this.#a[t]=void 0,this.#y.push(t)),this.#i===1?(this.#d=this.#m=0,this.#y.length=0):this.#d=this.#p[t],this.#s.delete(r),this.#i--,t}has(e,t={}){let{updateAgeOnHas:r=this.updateAgeOnHas,status:i}=t,s=this.#s.get(e);if(s!==void 0){let a=this.#a[s];if(this.#h(a)&&a.__staleWhileFetching===void 0)return!1;if(this.#A(s))i&&(i.has="stale",this.#o(i,s));else return r&&this.#C(s),i&&(i.has="hit",this.#o(i,s)),!0}else i&&(i.has="miss");return!1}peek(e,t={}){let{allowStale:r=this.allowStale}=t,i=this.#s.get(e);if(i===void 0||!r&&this.#A(i))return;let s=this.#a[i];return this.#h(s)?s.__staleWhileFetching:s}#j(e,t,r,i){let s=t===void 0?void 0:this.#a[t];if(this.#h(s))return s;let a=new $g,{signal:c}=r;c?.addEventListener("abort",()=>a.abort(c.reason),{signal:a.signal});let l={signal:a.signal,options:r,context:i},u=o((v,w=!1)=>{let{aborted:b}=a.signal,A=r.ignoreFetchAbort&&v!==void 0;if(r.status&&(b&&!w?(r.status.fetchAborted=!0,r.status.fetchError=a.signal.reason,A&&(r.status.fetchAbortIgnored=!0)):r.status.fetchResolved=!0),b&&!A&&!w)return d(a.signal.reason);let I=p;return this.#a[t]===p&&(v===void 0?I.__staleWhileFetching?this.#a[t]=I.__staleWhileFetching:this.#O(e,"fetch"):(r.status&&(r.status.fetchUpdated=!0),this.set(e,v,l.options))),v},"cb"),f=o(v=>(r.status&&(r.status.fetchRejected=!0,r.status.fetchError=v),d(v)),"eb"),d=o(v=>{let{aborted:w}=a.signal,b=w&&r.allowStaleOnFetchAbort,A=b||r.allowStaleOnFetchRejection,I=A||r.noDeleteOnFetchRejection,j=p;if(this.#a[t]===p&&(!I||j.__staleWhileFetching===void 0?this.#O(e,"fetch"):b||(this.#a[t]=j.__staleWhileFetching)),A)return r.status&&j.__staleWhileFetching!==void 0&&(r.status.returnedStale=!0),j.__staleWhileFetching;if(j.__returned===j)throw v},"fetchFail"),h=o((v,w)=>{let b=this.#c?.(e,s,l);b&&b instanceof Promise&&b.then(A=>v(A===void 0?void 0:A),w),a.signal.addEventListener("abort",()=>{(!r.ignoreFetchAbort||r.allowStaleOnFetchAbort)&&(v(void 0),r.allowStaleOnFetchAbort&&(v=o(A=>u(A,!0),"res")))})},"pcall");r.status&&(r.status.fetchDispatched=!0);let p=new Promise(h).then(u,f),y=Object.assign(p,{__abortController:a,__staleWhileFetching:s,__returned:void 0});return t===void 0?(this.set(e,y,{...l.options,status:void 0}),t=this.#s.get(e)):this.#a[t]=y,y}#h(e){if(!this.#v)return!1;let t=e;return!!t&&t instanceof Promise&&t.hasOwnProperty("__staleWhileFetching")&&t.__abortController instanceof $g}async fetch(e,t={}){let{allowStale:r=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:a=this.ttl,noDisposeOnSet:c=this.noDisposeOnSet,size:l=0,sizeCalculation:u=this.sizeCalculation,noUpdateTTL:f=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:h=this.allowStaleOnFetchRejection,ignoreFetchAbort:p=this.ignoreFetchAbort,allowStaleOnFetchAbort:y=this.allowStaleOnFetchAbort,context:v,forceRefresh:w=!1,status:b,signal:A}=t;if(!this.#v)return b&&(b.fetch="get"),this.get(e,{allowStale:r,updateAgeOnGet:i,noDeleteOnStaleGet:s,status:b});let I={allowStale:r,updateAgeOnGet:i,noDeleteOnStaleGet:s,ttl:a,noDisposeOnSet:c,size:l,sizeCalculation:u,noUpdateTTL:f,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:h,allowStaleOnFetchAbort:y,ignoreFetchAbort:p,status:b,signal:A},j=this.#s.get(e);if(j===void 0){b&&(b.fetch="miss");let V=this.#j(e,j,I,v);return V.__returned=V}else{let V=this.#a[j];if(this.#h(V)){let $=r&&V.__staleWhileFetching!==void 0;return b&&(b.fetch="inflight",$&&(b.returnedStale=!0)),$?V.__staleWhileFetching:V.__returned=V}let te=this.#A(j);if(!w&&!te)return b&&(b.fetch="hit"),this.#B(j),i&&this.#C(j),b&&this.#o(b,j),V;let z=this.#j(e,j,I,v),F=z.__staleWhileFetching!==void 0&&r;return b&&(b.fetch=te?"stale":"refresh",F&&te&&(b.returnedStale=!0)),F?z.__staleWhileFetching:z.__returned=z}}async forceFetch(e,t={}){let r=await this.fetch(e,t);if(r===void 0)throw new Error("fetch() returned undefined");return r}memo(e,t={}){let r=this.#_;if(!r)throw new Error("no memoMethod provided to constructor");let{context:i,forceRefresh:s,...a}=t,c=this.get(e,a);if(!s&&c!==void 0)return c;let l=r(e,c,{options:a,context:i});return this.set(e,l,a),l}get(e,t={}){let{allowStale:r=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:a}=t,c=this.#s.get(e);if(c!==void 0){let l=this.#a[c],u=this.#h(l);return a&&this.#o(a,c),this.#A(c)?(a&&(a.get="stale"),u?(a&&r&&l.__staleWhileFetching!==void 0&&(a.returnedStale=!0),r?l.__staleWhileFetching:void 0):(s||this.#O(e,"expire"),a&&r&&(a.returnedStale=!0),r?l:void 0)):(a&&(a.get="hit"),u?l.__staleWhileFetching:(this.#B(c),i&&this.#C(c),l))}else a&&(a.get="miss")}#$(e,t){this.#g[t]=e,this.#p[e]=t}#B(e){e!==this.#m&&(e===this.#d?this.#d=this.#p[e]:this.#$(this.#g[e],this.#p[e]),this.#$(this.#m,e),this.#m=e)}delete(e){return this.#O(e,"delete")}#O(e,t){let r=!1;if(this.#i!==0){let i=this.#s.get(e);if(i!==void 0)if(r=!0,this.#i===1)this.#V(t);else{this.#D(i);let s=this.#a[i];if(this.#h(s)?s.__abortController.abort(new Error("deleted")):(this.#w||this.#b)&&(this.#w&&this.#r?.(s,e,t),this.#b&&this.#f?.push([s,e,t])),this.#s.delete(e),this.#l[i]=void 0,this.#a[i]=void 0,i===this.#m)this.#m=this.#g[i];else if(i===this.#d)this.#d=this.#p[i];else{let a=this.#g[i];this.#p[a]=this.#p[i];let c=this.#p[i];this.#g[c]=this.#g[i]}this.#i--,this.#y.push(i)}}if(this.#b&&this.#f?.length){let i=this.#f,s;for(;s=i?.shift();)this.#t?.(...s)}return r}clear(){return this.#V("delete")}#V(e){for(let t of this.#R({allowStale:!0})){let r=this.#a[t];if(this.#h(r))r.__abortController.abort(new Error("deleted"));else{let i=this.#l[t];this.#w&&this.#r?.(r,i,e),this.#b&&this.#f?.push([r,i,e])}}if(this.#s.clear(),this.#a.fill(void 0),this.#l.fill(void 0),this.#S&&this.#T&&(this.#S.fill(0),this.#T.fill(0)),this.#E&&this.#E.fill(0),this.#d=0,this.#m=0,this.#y.length=0,this.#u=0,this.#i=0,this.#b&&this.#f){let t=this.#f,r;for(;r=t?.shift();)this.#t?.(...r)}}};var ru=require("node:path"),GF=require("node:url"),Os=require("fs"),SY=K(require("node:fs"),1),so=require("node:fs/promises");var zg=require("node:events"),RE=K(require("node:stream"),1),BF=require("node:string_decoder");var kF=typeof process=="object"&&process?process:{stdout:null,stderr:null},uY=o(n=>!!n&&typeof n=="object"&&(n instanceof io||n instanceof RE.default||fY(n)||dY(n)),"isStream"),fY=o(n=>!!n&&typeof n=="object"&&n instanceof zg.EventEmitter&&typeof n.pipe=="function"&&n.pipe!==RE.default.Writable.prototype.pipe,"isReadable"),dY=o(n=>!!n&&typeof n=="object"&&n instanceof zg.EventEmitter&&typeof n.write=="function"&&typeof n.end=="function","isWritable"),ga=Symbol("EOF"),ya=Symbol("maybeEmitEnd"),no=Symbol("emittedEnd"),Bg=Symbol("emittingEnd"),sd=Symbol("emittedError"),Vg=Symbol("closed"),MF=Symbol("read"),Ug=Symbol("flush"),jF=Symbol("flushChunk"),zi=Symbol("encoding"),eu=Symbol("decoder"),Ar=Symbol("flowing"),ad=Symbol("paused"),tu=Symbol("resume"),xr=Symbol("buffer"),vn=Symbol("pipes"),Cr=Symbol("bufferLength"),EE=Symbol("bufferPush"),qg=Symbol("bufferShift"),tn=Symbol("objectMode"),Yt=Symbol("destroyed"),TE=Symbol("error"),AE=Symbol("emitData"),$F=Symbol("emitEnd"),xE=Symbol("emitEnd2"),Rs=Symbol("async"),CE=Symbol("abort"),Wg=Symbol("aborted"),od=Symbol("signal"),sc=Symbol("dataListeners"),zn=Symbol("discarded"),cd=o(n=>Promise.resolve().then(n),"defer"),hY=o(n=>n(),"nodefer"),pY=o(n=>n==="end"||n==="finish"||n==="prefinish","isEndish"),mY=o(n=>n instanceof ArrayBuffer||!!n&&typeof n=="object"&&n.constructor&&n.constructor.name==="ArrayBuffer"&&n.byteLength>=0,"isArrayBufferLike"),gY=o(n=>!Buffer.isBuffer(n)&&ArrayBuffer.isView(n),"isArrayBufferView"),Gg=class{static{o(this,"Pipe")}src;dest;opts;ondrain;constructor(e,t,r){this.src=e,this.dest=t,this.opts=r,this.ondrain=()=>e[tu](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},IE=class extends Gg{static{o(this,"PipeProxyErrors")}unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,t,r){super(e,t,r),this.proxyErrors=i=>t.emit("error",i),e.on("error",this.proxyErrors)}},yY=o(n=>!!n.objectMode,"isObjectModeOptions"),_Y=o(n=>!n.objectMode&&!!n.encoding&&n.encoding!=="buffer","isEncodingOptions"),io=class extends zg.EventEmitter{static{o(this,"Minipass")}[Ar]=!1;[ad]=!1;[vn]=[];[xr]=[];[tn];[zi];[Rs];[eu];[ga]=!1;[no]=!1;[Bg]=!1;[Vg]=!1;[sd]=null;[Cr]=0;[Yt]=!1;[od];[Wg]=!1;[sc]=0;[zn]=!1;writable=!0;readable=!0;constructor(...e){let t=e[0]||{};if(super(),t.objectMode&&typeof t.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");yY(t)?(this[tn]=!0,this[zi]=null):_Y(t)?(this[zi]=t.encoding,this[tn]=!1):(this[tn]=!1,this[zi]=null),this[Rs]=!!t.async,this[eu]=this[zi]?new BF.StringDecoder(this[zi]):null,t&&t.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:o(()=>this[xr],"get")}),t&&t.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:o(()=>this[vn],"get")});let{signal:r}=t;r&&(this[od]=r,r.aborted?this[CE]():r.addEventListener("abort",()=>this[CE]()))}get bufferLength(){return this[Cr]}get encoding(){return this[zi]}set encoding(e){throw new Error("Encoding must be set at instantiation time")}setEncoding(e){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[tn]}set objectMode(e){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Rs]}set async(e){this[Rs]=this[Rs]||!!e}[CE](){this[Wg]=!0,this.emit("abort",this[od]?.reason),this.destroy(this[od]?.reason)}get aborted(){return this[Wg]}set aborted(e){}write(e,t,r){if(this[Wg])return!1;if(this[ga])throw new Error("write after end");if(this[Yt])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof t=="function"&&(r=t,t="utf8"),t||(t="utf8");let i=this[Rs]?cd:hY;if(!this[tn]&&!Buffer.isBuffer(e)){if(gY(e))e=Buffer.from(e.buffer,e.byteOffset,e.byteLength);else if(mY(e))e=Buffer.from(e);else if(typeof e!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[tn]?(this[Ar]&&this[Cr]!==0&&this[Ug](!0),this[Ar]?this.emit("data",e):this[EE](e),this[Cr]!==0&&this.emit("readable"),r&&i(r),this[Ar]):e.length?(typeof e=="string"&&!(t===this[zi]&&!this[eu]?.lastNeed)&&(e=Buffer.from(e,t)),Buffer.isBuffer(e)&&this[zi]&&(e=this[eu].write(e)),this[Ar]&&this[Cr]!==0&&this[Ug](!0),this[Ar]?this.emit("data",e):this[EE](e),this[Cr]!==0&&this.emit("readable"),r&&i(r),this[Ar]):(this[Cr]!==0&&this.emit("readable"),r&&i(r),this[Ar])}read(e){if(this[Yt])return null;if(this[zn]=!1,this[Cr]===0||e===0||e&&e>this[Cr])return this[ya](),null;this[tn]&&(e=null),this[xr].length>1&&!this[tn]&&(this[xr]=[this[zi]?this[xr].join(""):Buffer.concat(this[xr],this[Cr])]);let t=this[MF](e||null,this[xr][0]);return this[ya](),t}[MF](e,t){if(this[tn])this[qg]();else{let r=t;e===r.length||e===null?this[qg]():typeof r=="string"?(this[xr][0]=r.slice(e),t=r.slice(0,e),this[Cr]-=e):(this[xr][0]=r.subarray(e),t=r.subarray(0,e),this[Cr]-=e)}return this.emit("data",t),!this[xr].length&&!this[ga]&&this.emit("drain"),t}end(e,t,r){return typeof e=="function"&&(r=e,e=void 0),typeof t=="function"&&(r=t,t="utf8"),e!==void 0&&this.write(e,t),r&&this.once("end",r),this[ga]=!0,this.writable=!1,(this[Ar]||!this[ad])&&this[ya](),this}[tu](){this[Yt]||(!this[sc]&&!this[vn].length&&(this[zn]=!0),this[ad]=!1,this[Ar]=!0,this.emit("resume"),this[xr].length?this[Ug]():this[ga]?this[ya]():this.emit("drain"))}resume(){return this[tu]()}pause(){this[Ar]=!1,this[ad]=!0,this[zn]=!1}get destroyed(){return this[Yt]}get flowing(){return this[Ar]}get paused(){return this[ad]}[EE](e){this[tn]?this[Cr]+=1:this[Cr]+=e.length,this[xr].push(e)}[qg](){return this[tn]?this[Cr]-=1:this[Cr]-=this[xr][0].length,this[xr].shift()}[Ug](e=!1){do;while(this[jF](this[qg]())&&this[xr].length);!e&&!this[xr].length&&!this[ga]&&this.emit("drain")}[jF](e){return this.emit("data",e),this[Ar]}pipe(e,t){if(this[Yt])return e;this[zn]=!1;let r=this[no];return t=t||{},e===kF.stdout||e===kF.stderr?t.end=!1:t.end=t.end!==!1,t.proxyErrors=!!t.proxyErrors,r?t.end&&e.end():(this[vn].push(t.proxyErrors?new IE(this,e,t):new Gg(this,e,t)),this[Rs]?cd(()=>this[tu]()):this[tu]()),e}unpipe(e){let t=this[vn].find(r=>r.dest===e);t&&(this[vn].length===1?(this[Ar]&&this[sc]===0&&(this[Ar]=!1),this[vn]=[]):this[vn].splice(this[vn].indexOf(t),1),t.unpipe())}addListener(e,t){return this.on(e,t)}on(e,t){let r=super.on(e,t);if(e==="data")this[zn]=!1,this[sc]++,!this[vn].length&&!this[Ar]&&this[tu]();else if(e==="readable"&&this[Cr]!==0)super.emit("readable");else if(pY(e)&&this[no])super.emit(e),this.removeAllListeners(e);else if(e==="error"&&this[sd]){let i=t;this[Rs]?cd(()=>i.call(this,this[sd])):i.call(this,this[sd])}return r}removeListener(e,t){return this.off(e,t)}off(e,t){let r=super.off(e,t);return e==="data"&&(this[sc]=this.listeners("data").length,this[sc]===0&&!this[zn]&&!this[vn].length&&(this[Ar]=!1)),r}removeAllListeners(e){let t=super.removeAllListeners(e);return(e==="data"||e===void 0)&&(this[sc]=0,!this[zn]&&!this[vn].length&&(this[Ar]=!1)),t}get emittedEnd(){return this[no]}[ya](){!this[Bg]&&!this[no]&&!this[Yt]&&this[xr].length===0&&this[ga]&&(this[Bg]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Vg]&&this.emit("close"),this[Bg]=!1)}emit(e,...t){let r=t[0];if(e!=="error"&&e!=="close"&&e!==Yt&&this[Yt])return!1;if(e==="data")return!this[tn]&&!r?!1:this[Rs]?(cd(()=>this[AE](r)),!0):this[AE](r);if(e==="end")return this[$F]();if(e==="close"){if(this[Vg]=!0,!this[no]&&!this[Yt])return!1;let s=super.emit("close");return this.removeAllListeners("close"),s}else if(e==="error"){this[sd]=r,super.emit(TE,r);let s=!this[od]||this.listeners("error").length?super.emit("error",r):!1;return this[ya](),s}else if(e==="resume"){let s=super.emit("resume");return this[ya](),s}else if(e==="finish"||e==="prefinish"){let s=super.emit(e);return this.removeAllListeners(e),s}let i=super.emit(e,...t);return this[ya](),i}[AE](e){for(let r of this[vn])r.dest.write(e)===!1&&this.pause();let t=this[zn]?!1:super.emit("data",e);return this[ya](),t}[$F](){return this[no]?!1:(this[no]=!0,this.readable=!1,this[Rs]?(cd(()=>this[xE]()),!0):this[xE]())}[xE](){if(this[eu]){let t=this[eu].end();if(t){for(let r of this[vn])r.dest.write(t);this[zn]||super.emit("data",t)}}for(let t of this[vn])t.end();let e=super.emit("end");return this.removeAllListeners("end"),e}async collect(){let e=Object.assign([],{dataLength:0});this[tn]||(e.dataLength=0);let t=this.promise();return this.on("data",r=>{e.push(r),this[tn]||(e.dataLength+=r.length)}),await t,e}async concat(){if(this[tn])throw new Error("cannot concat in objectMode");let e=await this.collect();return this[zi]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise((e,t)=>{this.on(Yt,()=>t(new Error("stream destroyed"))),this.on("error",r=>t(r)),this.on("end",()=>e())})}[Symbol.asyncIterator](){this[zn]=!1;let e=!1,t=o(async()=>(this.pause(),e=!0,{value:void 0,done:!0}),"stop");return{next:o(()=>{if(e)return t();let i=this.read();if(i!==null)return Promise.resolve({done:!1,value:i});if(this[ga])return t();let s,a,c=o(d=>{this.off("data",l),this.off("end",u),this.off(Yt,f),t(),a(d)},"onerr"),l=o(d=>{this.off("error",c),this.off("end",u),this.off(Yt,f),this.pause(),s({value:d,done:!!this[ga]})},"ondata"),u=o(()=>{this.off("error",c),this.off("data",l),this.off(Yt,f),t(),s({done:!0,value:void 0})},"onend"),f=o(()=>c(new Error("stream destroyed")),"ondestroy");return new Promise((d,h)=>{a=h,s=d,this.once(Yt,f),this.once("error",c),this.once("end",u),this.once("data",l)})},"next"),throw:t,return:t,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[zn]=!1;let e=!1,t=o(()=>(this.pause(),this.off(TE,t),this.off(Yt,t),this.off("end",t),e=!0,{done:!0,value:void 0}),"stop"),r=o(()=>{if(e)return t();let i=this.read();return i===null?t():{done:!1,value:i}},"next");return this.once("end",t),this.once(TE,t),this.once(Yt,t),{next:r,throw:t,return:t,[Symbol.iterator](){return this}}}destroy(e){if(this[Yt])return e?this.emit("error",e):this.emit(Yt),this;this[Yt]=!0,this[zn]=!0,this[xr].length=0,this[Cr]=0;let t=this;return typeof t.close=="function"&&!this[Vg]&&t.close(),e?this.emit("error",e):this.emit(Yt),this}static get isStream(){return uY}};var vY=Os.realpathSync.native,ud={lstatSync:Os.lstatSync,readdir:Os.readdir,readdirSync:Os.readdirSync,readlinkSync:Os.readlinkSync,realpathSync:vY,promises:{lstat:so.lstat,readdir:so.readdir,readlink:so.readlink,realpath:so.realpath}},zF=o(n=>!n||n===ud||n===SY?ud:{...ud,...n,promises:{...ud.promises,...n.promises||{}}},"fsFromOption"),HF=/^\\\\\?\\([a-z]:)\\?$/i,bY=o(n=>n.replace(/\//g,"\\").replace(HF,"$1\\"),"uncToDrive"),wY=/[\\\/]/,ui=0,QF=1,KF=2,Ps=4,YF=6,XF=8,ac=10,JF=12,li=15,ld=~li,PE=16,VF=32,fd=64,Hi=128,Hg=256,Kg=512,UF=fd|Hi|Kg,EY=1023,OE=o(n=>n.isFile()?XF:n.isDirectory()?Ps:n.isSymbolicLink()?ac:n.isCharacterDevice()?KF:n.isBlockDevice()?YF:n.isSocket()?JF:n.isFIFO()?QF:ui,"entToType"),qF=new Map,dd=o(n=>{let e=qF.get(n);if(e)return e;let t=n.normalize("NFKD");return qF.set(n,t),t},"normalize"),WF=new Map,Qg=o(n=>{let e=WF.get(n);if(e)return e;let t=dd(n.toLowerCase());return WF.set(n,t),t},"normalizeNocase"),Yg=class extends id{static{o(this,"ResolveCache")}constructor(){super({max:256})}},FE=class extends id{static{o(this,"ChildrenCache")}constructor(e=16*1024){super({maxSize:e,sizeCalculation:o(t=>t.length+1,"sizeCalculation")})}},ZF=Symbol("PathScurry setAsCwd"),rn=class{static{o(this,"PathBase")}name;root;roots;parent;nocase;isCWD=!1;#e;#n;get dev(){return this.#n}#r;get mode(){return this.#r}#t;get nlink(){return this.#t}#c;get uid(){return this.#c}#_;get gid(){return this.#_}#i;get rdev(){return this.#i}#u;get blksize(){return this.#u}#s;get ino(){return this.#s}#l;get size(){return this.#l}#a;get blocks(){return this.#a}#p;get atimeMs(){return this.#p}#g;get mtimeMs(){return this.#g}#d;get ctimeMs(){return this.#d}#m;get birthtimeMs(){return this.#m}#y;get atime(){return this.#y}#f;get mtime(){return this.#f}#E;get ctime(){return this.#E}#T;get birthtime(){return this.#T}#S;#w;#v;#b;#x;#C;#o;#F;#A;#P;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(e,t=ui,r,i,s,a,c){this.name=e,this.#S=s?Qg(e):dd(e),this.#o=t&EY,this.nocase=s,this.roots=i,this.root=r||this,this.#F=a,this.#v=c.fullpath,this.#x=c.relative,this.#C=c.relativePosix,this.parent=c.parent,this.parent?this.#e=this.parent.#e:this.#e=zF(c.fs)}depth(){return this.#w!==void 0?this.#w:this.parent?this.#w=this.parent.depth()+1:this.#w=0}childrenCache(){return this.#F}resolve(e){if(!e)return this;let t=this.getRootString(e),i=e.substring(t.length).split(this.splitSep);return t?this.getRoot(t).#D(i):this.#D(i)}#D(e){let t=this;for(let r of e)t=t.child(r);return t}children(){let e=this.#F.get(this);if(e)return e;let t=Object.assign([],{provisional:0});return this.#F.set(this,t),this.#o&=~PE,t}child(e,t){if(e===""||e===".")return this;if(e==="..")return this.parent||this;let r=this.children(),i=this.nocase?Qg(e):dd(e);for(let l of r)if(l.#S===i)return l;let s=this.parent?this.sep:"",a=this.#v?this.#v+s+e:void 0,c=this.newChild(e,ui,{...t,parent:this,fullpath:a});return this.canReaddir()||(c.#o|=Hi),r.push(c),c}relative(){if(this.isCWD)return"";if(this.#x!==void 0)return this.#x;let e=this.name,t=this.parent;if(!t)return this.#x=this.name;let r=t.relative();return r+(!r||!t.parent?"":this.sep)+e}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#C!==void 0)return this.#C;let e=this.name,t=this.parent;if(!t)return this.#C=this.fullpathPosix();let r=t.relativePosix();return r+(!r||!t.parent?"":"/")+e}fullpath(){if(this.#v!==void 0)return this.#v;let e=this.name,t=this.parent;if(!t)return this.#v=this.name;let i=t.fullpath()+(t.parent?this.sep:"")+e;return this.#v=i}fullpathPosix(){if(this.#b!==void 0)return this.#b;if(this.sep==="/")return this.#b=this.fullpath();if(!this.parent){let i=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(i)?this.#b=`//?/${i}`:this.#b=i}let e=this.parent,t=e.fullpathPosix(),r=t+(!t||!e.parent?"":"/")+this.name;return this.#b=r}isUnknown(){return(this.#o&li)===ui}isType(e){return this[`is${e}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#o&li)===XF}isDirectory(){return(this.#o&li)===Ps}isCharacterDevice(){return(this.#o&li)===KF}isBlockDevice(){return(this.#o&li)===YF}isFIFO(){return(this.#o&li)===QF}isSocket(){return(this.#o&li)===JF}isSymbolicLink(){return(this.#o&ac)===ac}lstatCached(){return this.#o&VF?this:void 0}readlinkCached(){return this.#A}realpathCached(){return this.#P}readdirCached(){let e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(this.#A)return!0;if(!this.parent)return!1;let e=this.#o&li;return!(e!==ui&&e!==ac||this.#o&Hg||this.#o&Hi)}calledReaddir(){return!!(this.#o&PE)}isENOENT(){return!!(this.#o&Hi)}isNamed(e){return this.nocase?this.#S===Qg(e):this.#S===dd(e)}async readlink(){let e=this.#A;if(e)return e;if(this.canReadlink()&&this.parent)try{let t=await this.#e.promises.readlink(this.fullpath()),r=(await this.parent.realpath())?.resolve(t);if(r)return this.#A=r}catch(t){this.#h(t.code);return}}readlinkSync(){let e=this.#A;if(e)return e;if(this.canReadlink()&&this.parent)try{let t=this.#e.readlinkSync(this.fullpath()),r=this.parent.realpathSync()?.resolve(t);if(r)return this.#A=r}catch(t){this.#h(t.code);return}}#N(e){this.#o|=PE;for(let t=e.provisional;t<e.length;t++){let r=e[t];r&&r.#L()}}#L(){this.#o&Hi||(this.#o=(this.#o|Hi)&ld,this.#I())}#I(){let e=this.children();e.provisional=0;for(let t of e)t.#L()}#R(){this.#o|=Kg,this.#k()}#k(){if(this.#o&fd)return;let e=this.#o;(e&li)===Ps&&(e&=ld),this.#o=e|fd,this.#I()}#M(e=""){e==="ENOTDIR"||e==="EPERM"?this.#k():e==="ENOENT"?this.#L():this.children().provisional=0}#j(e=""){e==="ENOTDIR"?this.parent.#k():e==="ENOENT"&&this.#L()}#h(e=""){let t=this.#o;t|=Hg,e==="ENOENT"&&(t|=Hi),(e==="EINVAL"||e==="UNKNOWN")&&(t&=ld),this.#o=t,e==="ENOTDIR"&&this.parent&&this.parent.#k()}#$(e,t){return this.#O(e,t)||this.#B(e,t)}#B(e,t){let r=OE(e),i=this.newChild(e.name,r,{parent:this}),s=i.#o&li;return s!==Ps&&s!==ac&&s!==ui&&(i.#o|=fd),t.unshift(i),t.provisional++,i}#O(e,t){for(let r=t.provisional;r<t.length;r++){let i=t[r];if((this.nocase?Qg(e.name):dd(e.name))===i.#S)return this.#V(e,i,r,t)}}#V(e,t,r,i){let s=t.name;return t.#o=t.#o&ld|OE(e),s!==e.name&&(t.name=e.name),r!==i.provisional&&(r===i.length-1?i.pop():i.splice(r,1),i.unshift(t)),i.provisional++,t}async lstat(){if((this.#o&Hi)===0)try{return this.#G(await this.#e.promises.lstat(this.fullpath())),this}catch(e){this.#j(e.code)}}lstatSync(){if((this.#o&Hi)===0)try{return this.#G(this.#e.lstatSync(this.fullpath())),this}catch(e){this.#j(e.code)}}#G(e){let{atime:t,atimeMs:r,birthtime:i,birthtimeMs:s,blksize:a,blocks:c,ctime:l,ctimeMs:u,dev:f,gid:d,ino:h,mode:p,mtime:y,mtimeMs:v,nlink:w,rdev:b,size:A,uid:I}=e;this.#y=t,this.#p=r,this.#T=i,this.#m=s,this.#u=a,this.#a=c,this.#E=l,this.#d=u,this.#n=f,this.#_=d,this.#s=h,this.#r=p,this.#f=y,this.#g=v,this.#t=w,this.#i=b,this.#l=A,this.#c=I;let j=OE(e);this.#o=this.#o&ld|j|VF,j!==ui&&j!==Ps&&j!==ac&&(this.#o|=fd)}#q=[];#W=!1;#z(e){this.#W=!1;let t=this.#q.slice();this.#q.length=0,t.forEach(r=>r(null,e))}readdirCB(e,t=!1){if(!this.canReaddir()){t?e(null,[]):queueMicrotask(()=>e(null,[]));return}let r=this.children();if(this.calledReaddir()){let s=r.slice(0,r.provisional);t?e(null,s):queueMicrotask(()=>e(null,s));return}if(this.#q.push(e),this.#W)return;this.#W=!0;let i=this.fullpath();this.#e.readdir(i,{withFileTypes:!0},(s,a)=>{if(s)this.#M(s.code),r.provisional=0;else{for(let c of a)this.#$(c,r);this.#N(r)}this.#z(r.slice(0,r.provisional))})}#U;async readdir(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let t=this.fullpath();if(this.#U)await this.#U;else{let r=o(()=>{},"resolve");this.#U=new Promise(i=>r=i);try{for(let i of await this.#e.promises.readdir(t,{withFileTypes:!0}))this.#$(i,e);this.#N(e)}catch(i){this.#M(i.code),e.provisional=0}this.#U=void 0,r()}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let t=this.fullpath();try{for(let r of this.#e.readdirSync(t,{withFileTypes:!0}))this.#$(r,e);this.#N(e)}catch(r){this.#M(r.code),e.provisional=0}return e.slice(0,e.provisional)}canReaddir(){if(this.#o&UF)return!1;let e=li&this.#o;return e===ui||e===Ps||e===ac}shouldWalk(e,t){return(this.#o&Ps)===Ps&&!(this.#o&UF)&&!e.has(this)&&(!t||t(this))}async realpath(){if(this.#P)return this.#P;if(!((Kg|Hg|Hi)&this.#o))try{let e=await this.#e.promises.realpath(this.fullpath());return this.#P=this.resolve(e)}catch{this.#R()}}realpathSync(){if(this.#P)return this.#P;if(!((Kg|Hg|Hi)&this.#o))try{let e=this.#e.realpathSync(this.fullpath());return this.#P=this.resolve(e)}catch{this.#R()}}[ZF](e){if(e===this)return;e.isCWD=!1,this.isCWD=!0;let t=new Set([]),r=[],i=this;for(;i&&i.parent;)t.add(i),i.#x=r.join(this.sep),i.#C=r.join("/"),i=i.parent,r.push("..");for(i=e;i&&i.parent&&!t.has(i);)i.#x=void 0,i.#C=void 0,i=i.parent}},Xg=class n extends rn{static{o(this,"PathWin32")}sep="\\";splitSep=wY;constructor(e,t=ui,r,i,s,a,c){super(e,t,r,i,s,a,c)}newChild(e,t=ui,r={}){return new n(e,t,this.root,this.roots,this.nocase,this.childrenCache(),r)}getRootString(e){return ru.win32.parse(e).root}getRoot(e){if(e=bY(e.toUpperCase()),e===this.root.name)return this.root;for(let[t,r]of Object.entries(this.roots))if(this.sameRoot(e,t))return this.roots[e]=r;return this.roots[e]=new nu(e,this).root}sameRoot(e,t=this.root.name){return e=e.toUpperCase().replace(/\//g,"\\").replace(HF,"$1\\"),e===t}},Jg=class n extends rn{static{o(this,"PathPosix")}splitSep="/";sep="/";constructor(e,t=ui,r,i,s,a,c){super(e,t,r,i,s,a,c)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(e,t=ui,r={}){return new n(e,t,this.root,this.roots,this.nocase,this.childrenCache(),r)}},Zg=class{static{o(this,"PathScurryBase")}root;rootPath;roots;cwd;#e;#n;#r;nocase;#t;constructor(e=process.cwd(),t,r,{nocase:i,childrenCacheSize:s=16*1024,fs:a=ud}={}){this.#t=zF(a),(e instanceof URL||e.startsWith("file://"))&&(e=(0,GF.fileURLToPath)(e));let c=t.resolve(e);this.roots=Object.create(null),this.rootPath=this.parseRootPath(c),this.#e=new Yg,this.#n=new Yg,this.#r=new FE(s);let l=c.substring(this.rootPath.length).split(r);if(l.length===1&&!l[0]&&l.pop(),i===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=i,this.root=this.newRoot(this.#t),this.roots[this.rootPath]=this.root;let u=this.root,f=l.length-1,d=t.sep,h=this.rootPath,p=!1;for(let y of l){let v=f--;u=u.child(y,{relative:new Array(v).fill("..").join(d),relativePosix:new Array(v).fill("..").join("/"),fullpath:h+=(p?"":d)+y}),p=!0}this.cwd=u}depth(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.depth()}childrenCache(){return this.#r}resolve(...e){let t="";for(let s=e.length-1;s>=0;s--){let a=e[s];if(!(!a||a===".")&&(t=t?`${a}/${t}`:a,this.isAbsolute(a)))break}let r=this.#e.get(t);if(r!==void 0)return r;let i=this.cwd.resolve(t).fullpath();return this.#e.set(t,i),i}resolvePosix(...e){let t="";for(let s=e.length-1;s>=0;s--){let a=e[s];if(!(!a||a===".")&&(t=t?`${a}/${t}`:a,this.isAbsolute(a)))break}let r=this.#n.get(t);if(r!==void 0)return r;let i=this.cwd.resolve(t).fullpathPosix();return this.#n.set(t,i),i}relative(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relative()}relativePosix(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relativePosix()}basename(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.name}dirname(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),(e.parent||e).fullpath()}async readdir(e=this.cwd,t={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r}=t;if(e.canReaddir()){let i=await e.readdir();return r?i:i.map(s=>s.name)}else return[]}readdirSync(e=this.cwd,t={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0}=t;return e.canReaddir()?r?e.readdirSync():e.readdirSync().map(i=>i.name):[]}async lstat(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstat()}lstatSync(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e.withFileTypes,e=this.cwd);let r=await e.readlink();return t?r:r?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e.withFileTypes,e=this.cwd);let r=e.readlinkSync();return t?r:r?.fullpath()}async realpath(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e.withFileTypes,e=this.cwd);let r=await e.realpath();return t?r:r?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e.withFileTypes,e=this.cwd);let r=e.realpathSync();return t?r:r?.fullpath()}async walk(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t,c=[];(!s||s(e))&&c.push(r?e:e.fullpath());let l=new Set,u=o((d,h)=>{l.add(d),d.readdirCB((p,y)=>{if(p)return h(p);let v=y.length;if(!v)return h();let w=o(()=>{--v===0&&h()},"next");for(let b of y)(!s||s(b))&&c.push(r?b:b.fullpath()),i&&b.isSymbolicLink()?b.realpath().then(A=>A?.isUnknown()?A.lstat():A).then(A=>A?.shouldWalk(l,a)?u(A,w):w()):b.shouldWalk(l,a)?u(b,w):w()},!0)},"walk"),f=e;return new Promise((d,h)=>{u(f,p=>{if(p)return h(p);d(c)})})}walkSync(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t,c=[];(!s||s(e))&&c.push(r?e:e.fullpath());let l=new Set([e]);for(let u of l){let f=u.readdirSync();for(let d of f){(!s||s(d))&&c.push(r?d:d.fullpath());let h=d;if(d.isSymbolicLink()){if(!(i&&(h=d.realpathSync())))continue;h.isUnknown()&&h.lstatSync()}h.shouldWalk(l,a)&&l.add(h)}}return c}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,t={}){return typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd),this.stream(e,t)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t;(!s||s(e))&&(yield r?e:e.fullpath());let c=new Set([e]);for(let l of c){let u=l.readdirSync();for(let f of u){(!s||s(f))&&(yield r?f:f.fullpath());let d=f;if(f.isSymbolicLink()){if(!(i&&(d=f.realpathSync())))continue;d.isUnknown()&&d.lstatSync()}d.shouldWalk(c,a)&&c.add(d)}}}stream(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t,c=new io({objectMode:!0});(!s||s(e))&&c.write(r?e:e.fullpath());let l=new Set,u=[e],f=0,d=o(()=>{let h=!1;for(;!h;){let p=u.shift();if(!p){f===0&&c.end();return}f++,l.add(p);let y=o((w,b,A=!1)=>{if(w)return c.emit("error",w);if(i&&!A){let I=[];for(let j of b)j.isSymbolicLink()&&I.push(j.realpath().then(V=>V?.isUnknown()?V.lstat():V));if(I.length){Promise.all(I).then(()=>y(null,b,!0));return}}for(let I of b)I&&(!s||s(I))&&(c.write(r?I:I.fullpath())||(h=!0));f--;for(let I of b){let j=I.realpathCached()||I;j.shouldWalk(l,a)&&u.push(j)}h&&!c.flowing?c.once("drain",d):v||d()},"onReaddir"),v=!0;p.readdirCB(y,!0),v=!1}},"process");return d(),c}streamSync(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t,c=new io({objectMode:!0}),l=new Set;(!s||s(e))&&c.write(r?e:e.fullpath());let u=[e],f=0,d=o(()=>{let h=!1;for(;!h;){let p=u.shift();if(!p){f===0&&c.end();return}f++,l.add(p);let y=p.readdirSync();for(let v of y)(!s||s(v))&&(c.write(r?v:v.fullpath())||(h=!0));f--;for(let v of y){let w=v;if(v.isSymbolicLink()){if(!(i&&(w=v.realpathSync())))continue;w.isUnknown()&&w.lstatSync()}w.shouldWalk(l,a)&&u.push(w)}}h&&!c.flowing&&c.once("drain",d)},"process");return d(),c}chdir(e=this.cwd){let t=this.cwd;this.cwd=typeof e=="string"?this.cwd.resolve(e):e,this.cwd[ZF](t)}},nu=class extends Zg{static{o(this,"PathScurryWin32")}sep="\\";constructor(e=process.cwd(),t={}){let{nocase:r=!0}=t;super(e,ru.win32,"\\",{...t,nocase:r}),this.nocase=r;for(let i=this.cwd;i;i=i.parent)i.nocase=this.nocase}parseRootPath(e){return ru.win32.parse(e).root.toUpperCase()}newRoot(e){return new Xg(this.rootPath,Ps,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")||e.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(e)}},iu=class extends Zg{static{o(this,"PathScurryPosix")}sep="/";constructor(e=process.cwd(),t={}){let{nocase:r=!1}=t;super(e,ru.posix,"/",{...t,nocase:r}),this.nocase=r}parseRootPath(e){return"/"}newRoot(e){return new Jg(this.rootPath,Ps,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")}},hd=class extends iu{static{o(this,"PathScurryDarwin")}constructor(e=process.cwd(),t={}){let{nocase:r=!0}=t;super(e,{...t,nocase:r})}},Gme=process.platform==="win32"?Xg:Jg,eD=process.platform==="win32"?nu:process.platform==="darwin"?hd:iu;var TY=o(n=>n.length>=1,"isPatternList"),AY=o(n=>n.length>=1,"isGlobList"),su=class n{static{o(this,"Pattern")}#e;#n;#r;length;#t;#c;#_;#i;#u;#s;#l=!0;constructor(e,t,r,i){if(!TY(e))throw new TypeError("empty pattern list");if(!AY(t))throw new TypeError("empty glob list");if(t.length!==e.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=e.length,r<0||r>=this.length)throw new TypeError("index out of range");if(this.#e=e,this.#n=t,this.#r=r,this.#t=i,this.#r===0){if(this.isUNC()){let[s,a,c,l,...u]=this.#e,[f,d,h,p,...y]=this.#n;u[0]===""&&(u.shift(),y.shift());let v=[s,a,c,l,""].join("/"),w=[f,d,h,p,""].join("/");this.#e=[v,...u],this.#n=[w,...y],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[s,...a]=this.#e,[c,...l]=this.#n;a[0]===""&&(a.shift(),l.shift());let u=s+"/",f=c+"/";this.#e=[u,...a],this.#n=[f,...l],this.length=this.#e.length}}}pattern(){return this.#e[this.#r]}isString(){return typeof this.#e[this.#r]=="string"}isGlobstar(){return this.#e[this.#r]===Kt}isRegExp(){return this.#e[this.#r]instanceof RegExp}globString(){return this.#_=this.#_||(this.#r===0?this.isAbsolute()?this.#n[0]+this.#n.slice(1).join("/"):this.#n.join("/"):this.#n.slice(this.#r).join("/"))}hasMore(){return this.length>this.#r+1}rest(){return this.#c!==void 0?this.#c:this.hasMore()?(this.#c=new n(this.#e,this.#n,this.#r+1,this.#t),this.#c.#s=this.#s,this.#c.#u=this.#u,this.#c.#i=this.#i,this.#c):this.#c=null}isUNC(){let e=this.#e;return this.#u!==void 0?this.#u:this.#u=this.#t==="win32"&&this.#r===0&&e[0]===""&&e[1]===""&&typeof e[2]=="string"&&!!e[2]&&typeof e[3]=="string"&&!!e[3]}isDrive(){let e=this.#e;return this.#i!==void 0?this.#i:this.#i=this.#t==="win32"&&this.#r===0&&this.length>1&&typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0])}isAbsolute(){let e=this.#e;return this.#s!==void 0?this.#s:this.#s=e[0]===""&&e.length>1||this.isDrive()||this.isUNC()}root(){let e=this.#e[0];return typeof e=="string"&&this.isAbsolute()&&this.#r===0?e:""}checkFollowGlobstar(){return!(this.#r===0||!this.isGlobstar()||!this.#l)}markFollowGlobstar(){return this.#r===0||!this.isGlobstar()||!this.#l?!1:(this.#l=!1,!0)}};var xY=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",au=class{static{o(this,"Ignore")}relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(e,{nobrace:t,nocase:r,noext:i,noglobstar:s,platform:a=xY}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=a,this.mmopts={dot:!0,nobrace:t,nocase:r,noext:i,noglobstar:s,optimizationLevel:2,platform:a,nocomment:!0,nonegate:!0};for(let c of e)this.add(c)}add(e){let t=new Gn(e,this.mmopts);for(let r=0;r<t.set.length;r++){let i=t.set[r],s=t.globParts[r];if(!i||!s)throw new Error("invalid pattern object");for(;i[0]==="."&&s[0]===".";)i.shift(),s.shift();let a=new su(i,s,0,this.platform),c=new Gn(a.globString(),this.mmopts),l=s[s.length-1]==="**",u=a.isAbsolute();u?this.absolute.push(c):this.relative.push(c),l&&(u?this.absoluteChildren.push(c):this.relativeChildren.push(c))}}ignored(e){let t=e.fullpath(),r=`${t}/`,i=e.relative()||".",s=`${i}/`;for(let a of this.relative)if(a.match(i)||a.match(s))return!0;for(let a of this.absolute)if(a.match(t)||a.match(r))return!0;return!1}childrenIgnored(e){let t=e.fullpath()+"/",r=(e.relative()||".")+"/";for(let i of this.relativeChildren)if(i.match(r))return!0;for(let i of this.absoluteChildren)if(i.match(t))return!0;return!1}};var DE=class n{static{o(this,"HasWalkedCache")}store;constructor(e=new Map){this.store=e}copy(){return new n(new Map(this.store))}hasWalked(e,t){return this.store.get(e.fullpath())?.has(t.globString())}storeWalked(e,t){let r=e.fullpath(),i=this.store.get(r);i?i.add(t.globString()):this.store.set(r,new Set([t.globString()]))}},NE=class{static{o(this,"MatchRecord")}store=new Map;add(e,t,r){let i=(t?2:0)|(r?1:0),s=this.store.get(e);this.store.set(e,s===void 0?i:i&s)}entries(){return[...this.store.entries()].map(([e,t])=>[e,!!(t&2),!!(t&1)])}},LE=class{static{o(this,"SubWalks")}store=new Map;add(e,t){if(!e.canReaddir())return;let r=this.store.get(e);r?r.find(i=>i.globString()===t.globString())||r.push(t):this.store.set(e,[t])}get(e){let t=this.store.get(e);if(!t)throw new Error("attempting to walk unknown path");return t}entries(){return this.keys().map(e=>[e,this.store.get(e)])}keys(){return[...this.store.keys()].filter(e=>e.canReaddir())}},pd=class n{static{o(this,"Processor")}hasWalkedCache;matches=new NE;subwalks=new LE;patterns;follow;dot;opts;constructor(e,t){this.opts=e,this.follow=!!e.follow,this.dot=!!e.dot,this.hasWalkedCache=t?t.copy():new DE}processPatterns(e,t){this.patterns=t;let r=t.map(i=>[e,i]);for(let[i,s]of r){this.hasWalkedCache.storeWalked(i,s);let a=s.root(),c=s.isAbsolute()&&this.opts.absolute!==!1;if(a){i=i.resolve(a==="/"&&this.opts.root!==void 0?this.opts.root:a);let d=s.rest();if(d)s=d;else{this.matches.add(i,!0,!1);continue}}if(i.isENOENT())continue;let l,u,f=!1;for(;typeof(l=s.pattern())=="string"&&(u=s.rest());)i=i.resolve(l),s=u,f=!0;if(l=s.pattern(),u=s.rest(),f){if(this.hasWalkedCache.hasWalked(i,s))continue;this.hasWalkedCache.storeWalked(i,s)}if(typeof l=="string"){let d=l===".."||l===""||l===".";this.matches.add(i.resolve(l),c,d);continue}else if(l===Kt){(!i.isSymbolicLink()||this.follow||s.checkFollowGlobstar())&&this.subwalks.add(i,s);let d=u?.pattern(),h=u?.rest();if(!u||(d===""||d===".")&&!h)this.matches.add(i,c,d===""||d===".");else if(d===".."){let p=i.parent||i;h?this.hasWalkedCache.hasWalked(p,h)||this.subwalks.add(p,h):this.matches.add(p,c,!0)}}else l instanceof RegExp&&this.subwalks.add(i,s)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new n(this.opts,this.hasWalkedCache)}filterEntries(e,t){let r=this.subwalks.get(e),i=this.child();for(let s of t)for(let a of r){let c=a.isAbsolute(),l=a.pattern(),u=a.rest();l===Kt?i.testGlobstar(s,a,u,c):l instanceof RegExp?i.testRegExp(s,l,u,c):i.testString(s,l,u,c)}return i}testGlobstar(e,t,r,i){if((this.dot||!e.name.startsWith("."))&&(t.hasMore()||this.matches.add(e,i,!1),e.canReaddir()&&(this.follow||!e.isSymbolicLink()?this.subwalks.add(e,t):e.isSymbolicLink()&&(r&&t.checkFollowGlobstar()?this.subwalks.add(e,r):t.markFollowGlobstar()&&this.subwalks.add(e,t)))),r){let s=r.pattern();if(typeof s=="string"&&s!==".."&&s!==""&&s!==".")this.testString(e,s,r.rest(),i);else if(s===".."){let a=e.parent||e;this.subwalks.add(a,r)}else s instanceof RegExp&&this.testRegExp(e,s,r.rest(),i)}}testRegExp(e,t,r,i){t.test(e.name)&&(r?this.subwalks.add(e,r):this.matches.add(e,i,!1))}testString(e,t,r,i){e.isNamed(t)&&(r?this.subwalks.add(e,r):this.matches.add(e,i,!1))}};var CY=o((n,e)=>typeof n=="string"?new au([n],e):Array.isArray(n)?new au(n,e):n,"makeIgnore"),ey=class{static{o(this,"GlobUtil")}path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#n;#r;signal;maxDepth;includeChildMatches;constructor(e,t,r){if(this.patterns=e,this.path=t,this.opts=r,this.#r=!r.posix&&r.platform==="win32"?"\\":"/",this.includeChildMatches=r.includeChildMatches!==!1,(r.ignore||!this.includeChildMatches)&&(this.#n=CY(r.ignore??[],r),!this.includeChildMatches&&typeof this.#n.add!="function")){let i="cannot ignore child matches, ignore lacks add() method.";throw new Error(i)}this.maxDepth=r.maxDepth||1/0,r.signal&&(this.signal=r.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#t(e){return this.seen.has(e)||!!this.#n?.ignored?.(e)}#c(e){return!!this.#n?.childrenIgnored?.(e)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let e;for(;!this.paused&&(e=this.#e.shift());)e()}onResume(e){this.signal?.aborted||(this.paused?this.#e.push(e):e())}async matchCheck(e,t){if(t&&this.opts.nodir)return;let r;if(this.opts.realpath){if(r=e.realpathCached()||await e.realpath(),!r)return;e=r}let s=e.isUnknown()||this.opts.stat?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let a=await s.realpath();a&&(a.isUnknown()||this.opts.stat)&&await a.lstat()}return this.matchCheckTest(s,t)}matchCheckTest(e,t){return e&&(this.maxDepth===1/0||e.depth()<=this.maxDepth)&&(!t||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!this.#t(e)?e:void 0}matchCheckSync(e,t){if(t&&this.opts.nodir)return;let r;if(this.opts.realpath){if(r=e.realpathCached()||e.realpathSync(),!r)return;e=r}let s=e.isUnknown()||this.opts.stat?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let a=s.realpathSync();a&&(a?.isUnknown()||this.opts.stat)&&a.lstatSync()}return this.matchCheckTest(s,t)}matchFinish(e,t){if(this.#t(e))return;if(!this.includeChildMatches&&this.#n?.add){let s=`${e.relativePosix()}/**`;this.#n.add(s)}let r=this.opts.absolute===void 0?t:this.opts.absolute;this.seen.add(e);let i=this.opts.mark&&e.isDirectory()?this.#r:"";if(this.opts.withFileTypes)this.matchEmit(e);else if(r){let s=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(s+i)}else{let s=this.opts.posix?e.relativePosix():e.relative(),a=this.opts.dotRelative&&!s.startsWith(".."+this.#r)?"."+this.#r:"";this.matchEmit(s?a+s+i:"."+i)}}async match(e,t,r){let i=await this.matchCheck(e,r);i&&this.matchFinish(i,t)}matchSync(e,t,r){let i=this.matchCheckSync(e,r);i&&this.matchFinish(i,t)}walkCB(e,t,r){this.signal?.aborted&&r(),this.walkCB2(e,t,new pd(this.opts),r)}walkCB2(e,t,r,i){if(this.#c(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2(e,t,r,i));return}r.processPatterns(e,t);let s=1,a=o(()=>{--s===0&&i()},"next");for(let[c,l,u]of r.matches.entries())this.#t(c)||(s++,this.match(c,l,u).then(()=>a()));for(let c of r.subwalkTargets()){if(this.maxDepth!==1/0&&c.depth()>=this.maxDepth)continue;s++;let l=c.readdirCached();c.calledReaddir()?this.walkCB3(c,l,r,a):c.readdirCB((u,f)=>this.walkCB3(c,f,r,a),!0)}a()}walkCB3(e,t,r,i){r=r.filterEntries(e,t);let s=1,a=o(()=>{--s===0&&i()},"next");for(let[c,l,u]of r.matches.entries())this.#t(c)||(s++,this.match(c,l,u).then(()=>a()));for(let[c,l]of r.subwalks.entries())s++,this.walkCB2(c,l,r.child(),a);a()}walkCBSync(e,t,r){this.signal?.aborted&&r(),this.walkCB2Sync(e,t,new pd(this.opts),r)}walkCB2Sync(e,t,r,i){if(this.#c(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2Sync(e,t,r,i));return}r.processPatterns(e,t);let s=1,a=o(()=>{--s===0&&i()},"next");for(let[c,l,u]of r.matches.entries())this.#t(c)||this.matchSync(c,l,u);for(let c of r.subwalkTargets()){if(this.maxDepth!==1/0&&c.depth()>=this.maxDepth)continue;s++;let l=c.readdirSync();this.walkCB3Sync(c,l,r,a)}a()}walkCB3Sync(e,t,r,i){r=r.filterEntries(e,t);let s=1,a=o(()=>{--s===0&&i()},"next");for(let[c,l,u]of r.matches.entries())this.#t(c)||this.matchSync(c,l,u);for(let[c,l]of r.subwalks.entries())s++,this.walkCB2Sync(c,l,r.child(),a);a()}},md=class extends ey{static{o(this,"GlobWalker")}matches=new Set;constructor(e,t,r){super(e,t,r)}matchEmit(e){this.matches.add(e)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((e,t)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?t(this.signal.reason):e(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},gd=class extends ey{static{o(this,"GlobStream")}results;constructor(e,t,r){super(e,t,r),this.results=new io({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(e){this.results.write(e),this.results.flowing||this.pause()}stream(){let e=this.path;return e.isUnknown()?e.lstat().then(()=>{this.walkCB(e,this.patterns,()=>this.results.end())}):this.walkCB(e,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};var IY=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Qi=class{static{o(this,"Glob")}absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(e,t){if(!t)throw new TypeError("glob options required");if(this.withFileTypes=!!t.withFileTypes,this.signal=t.signal,this.follow=!!t.follow,this.dot=!!t.dot,this.dotRelative=!!t.dotRelative,this.nodir=!!t.nodir,this.mark=!!t.mark,t.cwd?(t.cwd instanceof URL||t.cwd.startsWith("file://"))&&(t.cwd=(0,tD.fileURLToPath)(t.cwd)):this.cwd="",this.cwd=t.cwd||"",this.root=t.root,this.magicalBraces=!!t.magicalBraces,this.nobrace=!!t.nobrace,this.noext=!!t.noext,this.realpath=!!t.realpath,this.absolute=t.absolute,this.includeChildMatches=t.includeChildMatches!==!1,this.noglobstar=!!t.noglobstar,this.matchBase=!!t.matchBase,this.maxDepth=typeof t.maxDepth=="number"?t.maxDepth:1/0,this.stat=!!t.stat,this.ignore=t.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof e=="string"&&(e=[e]),this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(e=e.map(l=>l.replace(/\\/g,"/"))),this.matchBase){if(t.noglobstar)throw new TypeError("base matching requires globstar");e=e.map(l=>l.includes("/")?l:`./**/${l}`)}if(this.pattern=e,this.platform=t.platform||IY,this.opts={...t,platform:this.platform},t.scurry){if(this.scurry=t.scurry,t.nocase!==void 0&&t.nocase!==t.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let l=t.platform==="win32"?nu:t.platform==="darwin"?hd:t.platform?iu:eD;this.scurry=new l(this.cwd,{nocase:t.nocase,fs:t.fs})}this.nocase=this.scurry.nocase;let r=this.platform==="darwin"||this.platform==="win32",i={...t,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:r,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},s=this.pattern.map(l=>new Gn(l,i)),[a,c]=s.reduce((l,u)=>(l[0].push(...u.set),l[1].push(...u.globParts),l),[[],[]]);this.patterns=a.map((l,u)=>{let f=c[u];if(!f)throw new Error("invalid pattern object");return new su(l,f,0,this.platform)})}async walk(){return[...await new md(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new md(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new gd(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new gd(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};var kE=o((n,e={})=>{Array.isArray(n)||(n=[n]);for(let t of n)if(new Gn(t,e).hasMagic())return!0;return!1},"hasMagic");function ry(n,e={}){return new Qi(n,e).streamSync()}o(ry,"globStreamSync");function nD(n,e={}){return new Qi(n,e).stream()}o(nD,"globStream");function iD(n,e={}){return new Qi(n,e).walkSync()}o(iD,"globSync");async function rD(n,e={}){return new Qi(n,e).walk()}o(rD,"glob_");function ny(n,e={}){return new Qi(n,e).iterateSync()}o(ny,"globIterateSync");function sD(n,e={}){return new Qi(n,e).iterate()}o(sD,"globIterate");var RY=ry,PY=Object.assign(nD,{sync:ry}),OY=ny,FY=Object.assign(sD,{sync:ny}),DY=Object.assign(iD,{stream:ry,iterate:ny}),ty=Object.assign(rD,{glob:rD,globSync:iD,sync:DY,globStream:nD,stream:PY,globStreamSync:ry,streamSync:RY,globIterate:sD,iterate:FY,globIterateSync:ny,iterateSync:OY,Glob:Qi,hasMagic:kE,escape:Xl,unescape:Gi});ty.glob=ty;var oc=K(Dt());var Pt=class{constructor(e){this.rootPath=e}static{o(this,"NodeFsAdapter")}async readFile(e){let t=this.resolvePath(e);if(!await mr.default.pathExists(t))throw new oc.FileNotFoundError(e);return mr.default.readFile(t,"utf-8")}async fileExists(e){let t=this.resolvePath(e);return mr.default.pathExists(t)}async getFileMetadata(e){let t=await this.readFile(e);return this.extractFrontmatter(t)}async createFile(e,t){let r=this.resolvePath(e);if(await mr.default.pathExists(r))throw new oc.FileAlreadyExistsError(e);return await mr.default.ensureDir(ao.default.dirname(r)),await mr.default.writeFile(r,t,"utf-8"),e}async updateFile(e,t){let r=this.resolvePath(e);if(!await mr.default.pathExists(r))throw new oc.FileNotFoundError(e);await mr.default.writeFile(r,t,"utf-8")}async writeFile(e,t){let r=this.resolvePath(e);await mr.default.ensureDir(ao.default.dirname(r)),await mr.default.writeFile(r,t,"utf-8")}async deleteFile(e){let t=this.resolvePath(e);if(!await mr.default.pathExists(t))throw new oc.FileNotFoundError(e);await mr.default.remove(t)}async renameFile(e,t){let r=this.resolvePath(e),i=this.resolvePath(t);if(!await mr.default.pathExists(r))throw new oc.FileNotFoundError(e);await mr.default.ensureDir(ao.default.dirname(i)),await mr.default.move(r,i)}async createDirectory(e){let t=this.resolvePath(e);await mr.default.ensureDir(t)}async directoryExists(e){let t=this.resolvePath(e);return await mr.default.pathExists(t)?(await mr.default.stat(t)).isDirectory():!1}async getMarkdownFiles(e){let t=e?this.resolvePath(e):this.rootPath,r=ao.default.join(t,"**/*.md");return(await ty(r,{nodir:!0})).map(a=>ao.default.relative(this.rootPath,a))}async findFilesByMetadata(e){let t=await this.getMarkdownFiles(),r=[];for(let i of t)try{let s=await this.getFileMetadata(i);this.matchesQuery(s,e)&&r.push(i)}catch{continue}return r}async findFileByUID(e){let t=await this.findFilesByMetadata({exo__Asset_uid:e});return t.length>0?t[0]:null}resolvePath(e){return ao.default.isAbsolute(e)?e:ao.default.join(this.rootPath,e)}extractFrontmatter(e){let t=/^---\n([\s\S]*?)\n---/,r=e.match(t);if(!r)return{};try{let i=sr.load(r[1]);return typeof i=="object"&&i!==null?i:{}}catch{return{}}}matchesQuery(e,t){for(let[r,i]of Object.entries(t)){let s=e[r];if(Array.isArray(s)){if(!s.some(a=>this.normalizeValue(a)===this.normalizeValue(i)))return!1}else if(this.normalizeValue(s)!==this.normalizeValue(i))return!1}return!0}normalizeValue(e){return e==null?"":String(e).replace(/["'[\]]/g,"").trim()}};var yd=K(require("path")),ME=K(Za());var ou=class{constructor(e){this.vaultRoot=e}static{o(this,"PathResolver")}resolve(e){if(!yd.default.isAbsolute(e))return yd.default.resolve(this.vaultRoot,e);let t=yd.default.resolve(e),r=yd.default.resolve(this.vaultRoot);if(!t.startsWith(r))throw new Ke(`File path ${e} is outside vault root ${this.vaultRoot}`,"Provide a file path within the vault directory.",{filepath:e,vaultRoot:this.vaultRoot});return t}validate(e){if(!ME.default.existsSync(e))throw new Bf(e);if(!ME.default.statSync(e).isFile())throw new Ke(`Not a file: ${e}`,"Provide a path to a file, not a directory.",{filepath:e});if(!e.endsWith(".md"))throw new Ke(`Not a Markdown file: ${e}`,"Provide a path to a .md file.",{filepath:e})}getVaultRoot(){return this.vaultRoot}};var fD=K(Dt());var aD=K(Dt());var Ki=class{static{o(this,"BaseCommandExecutor")}constructor(e){this.pathResolver=e.pathResolver,this.fsAdapter=e.fsAdapter,this.frontmatterService=e.frontmatterService,this.dryRun=e.dryRun}resolveAndValidate(e){let t=this.pathResolver.resolve(e);this.pathResolver.validate(t);let r=t.replace(this.pathResolver.getVaultRoot()+"/","");return{resolvedPath:t,relativePath:r}}getCurrentTimestamp(){return aD.DateFormatter.toLocalTimestamp(new Date)}isAssetArchived(e){if(e?.exo__Asset_isArchived===!0)return!0;let t=e?.archived;if(t==null)return!1;if(typeof t=="boolean")return t;if(typeof t=="number")return t!==0;if(typeof t=="string"){let r=t.toLowerCase().trim();return r==="true"||r==="yes"||r==="1"}return!1}extractAliasesFromFrontmatter(e){let t=e.match(/aliases:\s*\n((?: - .*\n?)*)/);return t?t[1].split(`
618
- `).filter(i=>i.trim()).map(i=>i.replace(/^\s*-\s*/,"").trim()):[]}};var _d=class extends Ki{static{o(this,"StatusCommandExecutor")}constructor(e){super(e)}async executeStart(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.readFile(t),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusDoing]]"');s=this.frontmatterService.updateProperty(s,"ems__Effort_startTimestamp",i),await this.fsAdapter.updateFile(t,s),console.log(`\u2705 Started: ${e}`),console.log(" Status: Doing"),console.log(` Start time: ${i}`),process.exit(0)}catch(t){D.handle(t)}}async executeComplete(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.readFile(t),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusDone]]"');s=this.frontmatterService.updateProperty(s,"ems__Effort_endTimestamp",i),s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),await this.fsAdapter.updateFile(t,s),console.log(`\u2705 Completed: ${e}`),console.log(" Status: Done"),console.log(` Completion time: ${i}`),process.exit(0)}catch(t){D.handle(t)}}async executeTrash(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.readFile(t),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusTrashed]]"');s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),await this.fsAdapter.updateFile(t,s),console.log(`\u2705 Trashed: ${e}`),console.log(" Status: Trashed"),console.log(` Resolution time: ${i}`),process.exit(0)}catch(t){D.handle(t)}}async executeArchive(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.readFile(t),i=this.frontmatterService.updateProperty(r,"archived","true");i=this.frontmatterService.removeProperty(i,"aliases"),await this.fsAdapter.updateFile(t,i),console.log(`\u2705 Archived: ${e}`),console.log(" Archived: true"),console.log(" Aliases removed"),process.exit(0)}catch(t){D.handle(t)}}async executeMoveToBacklog(e){try{await this.updateStatus(e,"ems__EffortStatusBacklog","Backlog"),process.exit(0)}catch(t){D.handle(t)}}async executeMoveToAnalysis(e){try{await this.updateStatus(e,"ems__EffortStatusAnalysis","Analysis"),process.exit(0)}catch(t){D.handle(t)}}async executeMoveToToDo(e){try{await this.updateStatus(e,"ems__EffortStatusToDo","ToDo"),process.exit(0)}catch(t){D.handle(t)}}async updateStatus(e,t,r){let{relativePath:i}=this.resolveAndValidate(e),s=await this.fsAdapter.readFile(i),a=this.frontmatterService.updateProperty(s,"ems__Effort_status",`"[[${t}]]"`);await this.fsAdapter.updateFile(i,a),console.log(`\u2705 Moved to ${r}: ${e}`),console.log(` Status: ${r}`)}};var Vr=[];for(let n=0;n<256;++n)Vr.push((n+256).toString(16).slice(1));function oD(n,e=0){return(Vr[n[e+0]]+Vr[n[e+1]]+Vr[n[e+2]]+Vr[n[e+3]]+"-"+Vr[n[e+4]]+Vr[n[e+5]]+"-"+Vr[n[e+6]]+Vr[n[e+7]]+"-"+Vr[n[e+8]]+Vr[n[e+9]]+"-"+Vr[n[e+10]]+Vr[n[e+11]]+Vr[n[e+12]]+Vr[n[e+13]]+Vr[n[e+14]]+Vr[n[e+15]]).toLowerCase()}o(oD,"unsafeStringify");var cD=require("node:crypto");var sy=new Uint8Array(256),iy=sy.length;function jE(){return iy>sy.length-16&&((0,cD.randomFillSync)(sy),iy=0),sy.slice(iy,iy+=16)}o(jE,"rng");var lD=require("node:crypto"),$E={randomUUID:lD.randomUUID};function LY(n,e,t){n=n||{};let r=n.random??n.rng?.()??jE();if(r.length<16)throw new Error("Random bytes length must be >= 16");if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){if(t=t||0,t<0||t+16>e.length)throw new RangeError(`UUID byte range ${t}:${t+15} is out of buffer bounds`);for(let i=0;i<16;++i)e[t+i]=r[i];return e}return oD(r)}o(LY,"_v4");function kY(n,e,t){return $E.randomUUID&&!e&&!n?$E.randomUUID():LY(n,e,t)}o(kY,"v4");var Sd=kY;var cu=K(Dt());var vd=class extends Ki{static{o(this,"AssetCreationExecutor")}constructor(e){super(e)}async executeCreateTask(e,t,r={}){try{await this.createAsset(e,t,"ems__Task",r),process.exit(0)}catch(i){D.handle(i)}}async executeCreateMeeting(e,t,r={}){try{await this.createAsset(e,t,"ems__Meeting",r),process.exit(0)}catch(i){D.handle(i)}}async executeCreateProject(e,t,r={}){try{await this.createAsset(e,t,"ems__Project",r),process.exit(0)}catch(i){D.handle(i)}}async executeCreateArea(e,t,r={}){try{await this.createAsset(e,t,"ems__Area",r),process.exit(0)}catch(i){D.handle(i)}}async createAsset(e,t,r,i={}){if(!t||t.trim().length===0)throw new Error("Label cannot be empty");let s=t.trim(),{relativePath:a}=this.resolveAndValidate(e);if(await this.fsAdapter.fileExists(a))throw new cu.FileAlreadyExistsError(e);let l=Sd(),u=this.buildAssetFrontmatter(r,l,s,i),f=cu.MetadataHelpers.buildFileContent(u);await this.fsAdapter.createFile(a,f),console.log(`\u2705 Created ${this.getAssetTypeName(r)}: ${e}`),console.log(` UID: ${l}`),console.log(` Label: ${s}`),console.log(` Class: ${r}`)}buildAssetFrontmatter(e,t,r,i={}){let s=cu.DateFormatter.toLocalTimestamp(new Date),a={exo__Asset_isDefinedBy:'"[[Ontology/EMS]]"',exo__Asset_uid:t,exo__Asset_label:r,exo__Asset_createdAt:s,exo__Instance_class:[`"[[${e}]]"`],aliases:[r]};return(e==="ems__Task"||e==="ems__Project"||e==="ems__Meeting")&&(a.ems__Effort_status='"[[ems__EffortStatusDraft]]"'),i.prototype&&(a.exo__Asset_prototype=`"[[${i.prototype}]]"`),i.area&&(a.ems__Effort_area=`"[[${i.area}]]"`),i.parent&&(a.ems__Effort_parent=`"[[${i.parent}]]"`),a}getAssetTypeName(e){return{ems__Task:"task",ems__Meeting:"meeting",ems__Project:"project",ems__Area:"area"}[e]||"asset"}};var BE=K(require("path"));var uD=K(Dt());var bd=class extends Ki{static{o(this,"PropertyCommandExecutor")}constructor(e){super(e)}async executeRenameToUid(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.getFileMetadata(t);if(!r.exo__Asset_uid)throw new Error("Asset missing exo__Asset_uid property");let i=BE.default.basename(t,".md"),s=r.exo__Asset_uid;if(i===s&&(console.log(`\u2705 Already renamed: ${e}`),console.log(` Current filename matches UID: ${s}.md`),process.exit(0)),!r.exo__Asset_label||r.exo__Asset_label.trim()===""){let l=await this.fsAdapter.readFile(t),u=this.frontmatterService.updateProperty(l,"exo__Asset_label",i),f=this.isAssetArchived(r),d=u;f||(d=this.frontmatterService.updateProperty(u,"aliases",`
617
+ \u{1F4CA} Cache Statistics:`),console.log(` Triples: ${u.tripleCount.toLocaleString()}`),console.log(` Created: ${u.createdAt.toISOString()}`),console.log(` Valid: ${u.isValid?"\u2705 Yes":"\u274C No"}`),console.log(` Size: ${gK(u.sizeBytes)}`))}}}catch(t){D.handle(t)}})}o(iF,"sparqlIndexCommand");function gK(n){return n<1024?`${n} B`:n<1024*1024?`${(n/1024).toFixed(1)} KB`:`${(n/(1024*1024)).toFixed(1)} MB`}o(gK,"formatBytes");function sF(){return new ae("templates").description("List available SPARQL query templates").option("--output <type>","Response format: text|json (for MCP tools)","text").action(async n=>{let e=n.output||"text";D.setFormat(e);try{let t=new Ql,r=t.listTemplates();if(e==="json"){let i=X.success({templates:r,count:r.length});console.log(JSON.stringify(i,null,2))}else console.log(t.formatList("text"))}catch(t){D.handle(t)}})}o(sF,"sparqlTemplatesCommand");var dD=require("path");var mr=K(Za()),ao=K(require("path"));var CF=K(_F(),1);var rd=o(n=>{if(typeof n!="string")throw new TypeError("invalid pattern");if(n.length>65536)throw new TypeError("pattern is too long")},"assertValidPattern");var TK={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},nd=o(n=>n.replace(/[[\]\\-]/g,"\\$&"),"braceEscape"),AK=o(n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"regexpEscape"),SF=o(n=>n.join(""),"rangesToString"),vF=o((n,e)=>{let t=e;if(n.charAt(t)!=="[")throw new Error("not in a brace expression");let r=[],i=[],s=t+1,a=!1,c=!1,l=!1,u=!1,f=t,d="";e:for(;s<n.length;){let v=n.charAt(s);if((v==="!"||v==="^")&&s===t+1){u=!0,s++;continue}if(v==="]"&&a&&!l){f=s+1;break}if(a=!0,v==="\\"&&!l){l=!0,s++;continue}if(v==="["&&!l){for(let[w,[b,A,I]]of Object.entries(TK))if(n.startsWith(w,s)){if(d)return["$.",!1,n.length-t,!0];s+=w.length,I?i.push(b):r.push(b),c=c||A;continue e}}if(l=!1,d){v>d?r.push(nd(d)+"-"+nd(v)):v===d&&r.push(nd(v)),d="",s++;continue}if(n.startsWith("-]",s+1)){r.push(nd(v+"-")),s+=2;continue}if(n.startsWith("-",s+1)){d=v,s+=2;continue}r.push(nd(v)),s++}if(f<s)return["",!1,0,!1];if(!r.length&&!i.length)return["$.",!1,n.length-t,!0];if(i.length===0&&r.length===1&&/^\\?.$/.test(r[0])&&!u){let v=r[0].length===2?r[0].slice(-1):r[0];return[AK(v),!1,f-t,!1]}let h="["+(u?"^":"")+SF(r)+"]",p="["+(u?"":"^")+SF(i)+"]";return[r.length&&i.length?"("+h+"|"+p+")":r.length?h:p,c,f-t,!0]},"parseClass");var Gi=o((n,{windowsPathsNoEscape:e=!1}={})=>e?n.replace(/\[([^\/\\])\]/g,"$1"):n.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"),"unescape");var Dn,xK=new Set(["!","?","+","*","@"]),SE=o(n=>xK.has(n),"isExtglobType"),bF=o(n=>SE(n.type),"isExtglobAST"),CK=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),IK=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),RK=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),wF=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),PK="(?!(?:^|/)\\.\\.?(?:$|/))",jg="(?!\\.)",OK=new Set(["[","."]),FK=new Set(["..","."]),DK=new Set("().*{}+?[]^$\\!"),NK=o(n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"regExpEscape"),vE="[^/]",EF=vE+"*?",TF=vE+"+?",ic=class{static{o(this,"AST")}type;#e;#n;#r=!1;#t=[];#c;#_;#i;#u=!1;#s;#l;#a=!1;constructor(e,t,r={}){this.type=e,e&&(this.#n=!0),this.#c=t,this.#e=this.#c?this.#c.#e:this,this.#s=this.#e===this?r:this.#e.#s,this.#i=this.#e===this?[]:this.#e.#i,e==="!"&&!this.#e.#u&&this.#i.push(this),this.#_=this.#c?this.#c.#t.length:0}get hasMagic(){if(this.#n!==void 0)return this.#n;for(let e of this.#t)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#n=!0;return this.#n}toString(){return this.#l!==void 0?this.#l:this.type?this.#l=this.type+"("+this.#t.map(e=>String(e)).join("|")+")":this.#l=this.#t.map(e=>String(e)).join("")}#p(){if(this!==this.#e)throw new Error("should only call on root");if(this.#u)return this;this.toString(),this.#u=!0;let e;for(;e=this.#i.pop();){if(e.type!=="!")continue;let t=e,r=t.#c;for(;r;){for(let i=t.#_+1;!r.type&&i<r.#t.length;i++)for(let s of e.#t){if(typeof s=="string")throw new Error("string part in extglob AST??");s.copyIn(r.#t[i])}t=r,r=t.#c}}return this}push(...e){for(let t of e)if(t!==""){if(typeof t!="string"&&!(t instanceof Dn&&t.#c===this))throw new Error("invalid part: "+t);this.#t.push(t)}}toJSON(){let e=this.type===null?this.#t.slice().map(t=>typeof t=="string"?t:t.toJSON()):[this.type,...this.#t.map(t=>t.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#u&&this.#c?.type==="!")&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#c?.isStart())return!1;if(this.#_===0)return!0;let e=this.#c;for(let t=0;t<this.#_;t++){let r=e.#t[t];if(!(r instanceof Dn&&r.type==="!"))return!1}return!0}isEnd(){if(this.#e===this||this.#c?.type==="!")return!0;if(!this.#c?.isEnd())return!1;if(!this.type)return this.#c?.isEnd();let e=this.#c?this.#c.#t.length:0;return this.#_===e-1}copyIn(e){typeof e=="string"?this.push(e):this.push(e.clone(this))}clone(e){let t=new Dn(this.type,e);for(let r of this.#t)t.copyIn(r);return t}static#g(e,t,r,i,s){let a=i.maxExtglobRecursion??2,c=!1,l=!1,u=-1,f=!1;if(t.type===null){let v=r,w="";for(;v<e.length;){let b=e.charAt(v++);if(c||b==="\\"){c=!c,w+=b;continue}if(l){v===u+1?(b==="^"||b==="!")&&(f=!0):b==="]"&&!(v===u+2&&f)&&(l=!1),w+=b;continue}else if(b==="["){l=!0,u=v,f=!1,w+=b;continue}if(!i.noext&&SE(b)&&e.charAt(v)==="("&&s<=a){t.push(w),w="";let I=new Dn(b,t);v=Dn.#g(e,I,v,i,s+1),t.push(I);continue}w+=b}return t.push(w),v}let d=r+1,h=new Dn(null,t),p=[],y="";for(;d<e.length;){let v=e.charAt(d++);if(c||v==="\\"){c=!c,y+=v;continue}if(l){d===u+1?(v==="^"||v==="!")&&(f=!0):v==="]"&&!(d===u+2&&f)&&(l=!1),y+=v;continue}else if(v==="["){l=!0,u=d,f=!1,y+=v;continue}if(SE(v)&&e.charAt(d)==="("&&(s<=a||t&&t.#y(v))){let b=t&&t.#y(v)?0:1;h.push(y),y="";let A=new Dn(v,h);h.push(A),d=Dn.#g(e,A,d,i,s+b);continue}if(v==="|"){h.push(y),y="",p.push(h),h=new Dn(null,t);continue}if(v===")")return y===""&&t.#t.length===0&&(t.#a=!0),h.push(y),y="",t.push(...p,h),d;y+=v}return t.type=null,t.#n=void 0,t.#t=[e.substring(r-1)],d}#d(e){return this.#m(e,IK)}#m(e,t=CK){if(!e||typeof e!="object"||e.type!==null||e.#t.length!==1||this.type===null)return!1;let r=e.#t[0];return!r||typeof r!="object"||r.type===null?!1:this.#y(r.type,t)}#y(e,t=RK){return!!t.get(this.type)?.includes(e)}#f(e,t){let r=e.#t[0],i=new Dn(null,r,this.options);i.#t.push(""),r.push(i),this.#E(e,t)}#E(e,t){let r=e.#t[0];this.#t.splice(t,1,...r.#t);for(let i of r.#t)typeof i=="object"&&(i.#c=this);this.#l=void 0}#T(e){return!!wF.get(this.type)?.has(e)}#S(e){if(!e||typeof e!="object"||e.type!==null||e.#t.length!==1||this.type===null||this.#t.length!==1)return!1;let t=e.#t[0];return!t||typeof t!="object"||t.type===null?!1:this.#T(t.type)}#w(e){let t=wF.get(this.type),r=e.#t[0],i=t?.get(r.type);if(!i)return!1;this.#t=r.#t;for(let s of this.#t)typeof s=="object"&&(s.#c=this);this.type=i,this.#l=void 0,this.#a=!1}#v(){if(bF(this)){let e=0,t=!1;do{t=!0;for(let r=0;r<this.#t.length;r++){let i=this.#t[r];typeof i=="object"&&(i.#v(),this.#m(i)?(t=!1,this.#E(i,r)):this.#d(i)?(t=!1,this.#f(i,r)):this.#S(i)&&(t=!1,this.#w(i)))}}while(!t&&++e<10)}else for(let e of this.#t)typeof e=="object"&&e.#v();this.#l=void 0}static fromGlob(e,t={}){let r=new Dn(null,void 0,t);return Dn.#g(e,r,0,t,0),r}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();let e=this.toString(),[t,r,i,s]=this.toRegExpSource();if(!(i||this.#n||this.#s.nocase&&!this.#s.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return r;let c=(this.#s.nocase?"i":"")+(s?"u":"");return Object.assign(new RegExp(`^${t}$`,c),{_src:t,_glob:e})}get options(){return this.#s}toRegExpSource(e){let t=e??!!this.#s.dot;if(this.#e===this&&(this.#v(),this.#p()),!bF(this)){let l=this.isStart()&&this.isEnd(),u=this.#t.map(p=>{let[y,v,w,b]=typeof p=="string"?Dn.#x(p,this.#n,l):p.toRegExpSource(e);return this.#n=this.#n||w,this.#r=this.#r||b,y}).join(""),f="";if(this.isStart()&&typeof this.#t[0]=="string"&&!(this.#t.length===1&&FK.has(this.#t[0]))){let y=OK,v=t&&y.has(u.charAt(0))||u.startsWith("\\.")&&y.has(u.charAt(2))||u.startsWith("\\.\\.")&&y.has(u.charAt(4)),w=!t&&!e&&y.has(u.charAt(0));f=v?PK:w?jg:""}let d="";return this.isEnd()&&this.#e.#u&&this.#c?.type==="!"&&(d="(?:$|\\/)"),[f+u+d,Gi(u),this.#n=!!this.#n,this.#r]}let r=this.type==="*"||this.type==="+",i=this.type==="!"?"(?:(?!(?:":"(?:",s=this.#b(t);if(this.isStart()&&this.isEnd()&&!s&&this.type!=="!"){let l=this.toString(),u=this;return u.#t=[l],u.type=null,u.#n=void 0,[l,Gi(this.toString()),!1,!1]}let a=!r||e||t||!jg?"":this.#b(!0);a===s&&(a=""),a&&(s=`(?:${s})(?:${a})*?`);let c="";if(this.type==="!"&&this.#a)c=(this.isStart()&&!t?jg:"")+TF;else{let l=this.type==="!"?"))"+(this.isStart()&&!t&&!e?jg:"")+EF+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&a?")":this.type==="*"&&a?")?":`)${this.type}`;c=i+s+l}return[c,Gi(s),this.#n=!!this.#n,this.#r]}#b(e){return this.#t.map(t=>{if(typeof t=="string")throw new Error("string type in extglob ast??");let[r,i,s,a]=t.toRegExpSource(e);return this.#r=this.#r||a,r}).filter(t=>!(this.isStart()&&this.isEnd())||!!t).join("|")}static#x(e,t,r=!1){let i=!1,s="",a=!1,c=!1;for(let l=0;l<e.length;l++){let u=e.charAt(l);if(i){i=!1,s+=(DK.has(u)?"\\":"")+u,c=!1;continue}if(u==="\\"){l===e.length-1?s+="\\\\":i=!0;continue}if(u==="["){let[f,d,h,p]=vF(e,l);if(h){s+=f,a=a||d,l+=h-1,t=t||p,c=!1;continue}}if(u==="*"){if(c)continue;c=!0,s+=r&&/^[*]+$/.test(e)?TF:EF,t=!0;continue}else c=!1;if(u==="?"){s+=vE,t=!0;continue}s+=NK(u)}return[s,Gi(e),!!t,a]}};Dn=ic;var Xl=o((n,{windowsPathsNoEscape:e=!1}={})=>e?n.replace(/[?*()[\]]/g,"[$&]"):n.replace(/[?*()[\]\\]/g,"\\$&"),"escape");var Vr=o((n,e,t={})=>(rd(e),!t.nocomment&&e.charAt(0)==="#"?!1:new Gn(e,t).match(n)),"minimatch"),LK=/^\*+([^+@!?\*\[\(]*)$/,kK=o(n=>e=>!e.startsWith(".")&&e.endsWith(n),"starDotExtTest"),MK=o(n=>e=>e.endsWith(n),"starDotExtTestDot"),jK=o(n=>(n=n.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(n)),"starDotExtTestNocase"),$K=o(n=>(n=n.toLowerCase(),e=>e.toLowerCase().endsWith(n)),"starDotExtTestNocaseDot"),BK=/^\*+\.\*+$/,VK=o(n=>!n.startsWith(".")&&n.includes("."),"starDotStarTest"),UK=o(n=>n!=="."&&n!==".."&&n.includes("."),"starDotStarTestDot"),qK=/^\.\*+$/,WK=o(n=>n!=="."&&n!==".."&&n.startsWith("."),"dotStarTest"),GK=/^\*+$/,zK=o(n=>n.length!==0&&!n.startsWith("."),"starTest"),HK=o(n=>n.length!==0&&n!=="."&&n!=="..","starTestDot"),QK=/^\?+([^+@!?\*\[\(]*)?$/,KK=o(([n,e=""])=>{let t=IF([n]);return e?(e=e.toLowerCase(),r=>t(r)&&r.toLowerCase().endsWith(e)):t},"qmarksTestNocase"),YK=o(([n,e=""])=>{let t=RF([n]);return e?(e=e.toLowerCase(),r=>t(r)&&r.toLowerCase().endsWith(e)):t},"qmarksTestNocaseDot"),XK=o(([n,e=""])=>{let t=RF([n]);return e?r=>t(r)&&r.endsWith(e):t},"qmarksTestDot"),JK=o(([n,e=""])=>{let t=IF([n]);return e?r=>t(r)&&r.endsWith(e):t},"qmarksTest"),IF=o(([n])=>{let e=n.length;return t=>t.length===e&&!t.startsWith(".")},"qmarksTestNoExt"),RF=o(([n])=>{let e=n.length;return t=>t.length===e&&t!=="."&&t!==".."},"qmarksTestNoExtDot"),PF=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",AF={win32:{sep:"\\"},posix:{sep:"/"}},ZK=PF==="win32"?AF.win32.sep:AF.posix.sep;Vr.sep=ZK;var Kt=Symbol("globstar **");Vr.GLOBSTAR=Kt;var eY="[^/]",tY=eY+"*?",rY="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",nY="(?:(?!(?:\\/|^)\\.).)*?",iY=o((n,e={})=>t=>Vr(t,n,e),"filter");Vr.filter=iY;var ci=o((n,e={})=>Object.assign({},n,e),"ext"),sY=o(n=>{if(!n||typeof n!="object"||!Object.keys(n).length)return Vr;let e=Vr;return Object.assign(o((r,i,s={})=>e(r,i,ci(n,s)),"m"),{Minimatch:class extends e.Minimatch{static{o(this,"Minimatch")}constructor(i,s={}){super(i,ci(n,s))}static defaults(i){return e.defaults(ci(n,i)).Minimatch}},AST:class extends e.AST{static{o(this,"AST")}constructor(i,s,a={}){super(i,s,ci(n,a))}static fromGlob(i,s={}){return e.AST.fromGlob(i,ci(n,s))}},unescape:o((r,i={})=>e.unescape(r,ci(n,i)),"unescape"),escape:o((r,i={})=>e.escape(r,ci(n,i)),"escape"),filter:o((r,i={})=>e.filter(r,ci(n,i)),"filter"),defaults:o(r=>e.defaults(ci(n,r)),"defaults"),makeRe:o((r,i={})=>e.makeRe(r,ci(n,i)),"makeRe"),braceExpand:o((r,i={})=>e.braceExpand(r,ci(n,i)),"braceExpand"),match:o((r,i,s={})=>e.match(r,i,ci(n,s)),"match"),sep:e.sep,GLOBSTAR:Kt})},"defaults");Vr.defaults=sY;var OF=o((n,e={})=>(rd(n),e.nobrace||!/\{(?:(?!\{).)*\}/.test(n)?[n]:(0,CF.default)(n)),"braceExpand");Vr.braceExpand=OF;var aY=o((n,e={})=>new Gn(n,e).makeRe(),"makeRe");Vr.makeRe=aY;var oY=o((n,e,t={})=>{let r=new Gn(e,t);return n=n.filter(i=>r.match(i)),r.options.nonull&&!n.length&&n.push(e),n},"match");Vr.match=oY;var xF=/[?*]|[+@!]\(.*?\)|\[|\]/,cY=o(n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"regExpEscape"),Gn=class{static{o(this,"Minimatch")}options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,t={}){rd(e),t=t||{},this.options=t,this.maxGlobstarRecursion=t.maxGlobstarRecursion??200,this.pattern=e,this.platform=t.platform||PF,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!t.nonegate,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=t.windowsNoMagicRoot!==void 0?t.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let t of e)if(typeof t!="string")return!0;return!1}debug(...e){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...s)=>console.error(...s)),this.debug(this.pattern,this.globSet);let r=this.globSet.map(s=>this.slashSplit(s));this.globParts=this.preprocess(r),this.debug(this.pattern,this.globParts);let i=this.globParts.map((s,a,c)=>{if(this.isWindows&&this.windowsNoMagicRoot){let l=s[0]===""&&s[1]===""&&(s[2]==="?"||!xF.test(s[2]))&&!xF.test(s[3]),u=/^[a-z]:/i.test(s[0]);if(l)return[...s.slice(0,4),...s.slice(4).map(f=>this.parse(f))];if(u)return[s[0],...s.slice(1).map(f=>this.parse(f))]}return s.map(l=>this.parse(l))});if(this.debug(this.pattern,i),this.set=i.filter(s=>s.indexOf(!1)===-1),this.isWindows)for(let s=0;s<this.set.length;s++){let a=this.set[s];a[0]===""&&a[1]===""&&this.globParts[s][2]==="?"&&typeof a[3]=="string"&&/^[a-z]:$/i.test(a[3])&&(a[2]="?")}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let r=0;r<e.length;r++)for(let i=0;i<e[r].length;i++)e[r][i]==="**"&&(e[r][i]="*");let{optimizationLevel:t=1}=this.options;return t>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):t>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(t=>{let r=-1;for(;(r=t.indexOf("**",r+1))!==-1;){let i=r;for(;t[i+1]==="**";)i++;i!==r&&t.splice(r,i-r)}return t})}levelOneOptimize(e){return e.map(t=>(t=t.reduce((r,i)=>{let s=r[r.length-1];return i==="**"&&s==="**"?r:i===".."&&s&&s!==".."&&s!=="."&&s!=="**"?(r.pop(),r):(r.push(i),r)},[]),t.length===0?[""]:t))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let t=!1;do{if(t=!1,!this.preserveMultipleSlashes){for(let i=1;i<e.length-1;i++){let s=e[i];i===1&&s===""&&e[0]===""||(s==="."||s==="")&&(t=!0,e.splice(i,1),i--)}e[0]==="."&&e.length===2&&(e[1]==="."||e[1]==="")&&(t=!0,e.pop())}let r=0;for(;(r=e.indexOf("..",r+1))!==-1;){let i=e[r-1];i&&i!=="."&&i!==".."&&i!=="**"&&(t=!0,e.splice(r-1,2),r-=2)}}while(t);return e.length===0?[""]:e}firstPhasePreProcess(e){let t=!1;do{t=!1;for(let r of e){let i=-1;for(;(i=r.indexOf("**",i+1))!==-1;){let a=i;for(;r[a+1]==="**";)a++;a>i&&r.splice(i+1,a-i);let c=r[i+1],l=r[i+2],u=r[i+3];if(c!==".."||!l||l==="."||l===".."||!u||u==="."||u==="..")continue;t=!0,r.splice(i,1);let f=r.slice(0);f[i]="**",e.push(f),i--}if(!this.preserveMultipleSlashes){for(let a=1;a<r.length-1;a++){let c=r[a];a===1&&c===""&&r[0]===""||(c==="."||c==="")&&(t=!0,r.splice(a,1),a--)}r[0]==="."&&r.length===2&&(r[1]==="."||r[1]==="")&&(t=!0,r.pop())}let s=0;for(;(s=r.indexOf("..",s+1))!==-1;){let a=r[s-1];if(a&&a!=="."&&a!==".."&&a!=="**"){t=!0;let l=s===1&&r[s+1]==="**"?["."]:[];r.splice(s-1,2,...l),r.length===0&&r.push(""),s-=2}}}}while(t);return e}secondPhasePreProcess(e){for(let t=0;t<e.length-1;t++)for(let r=t+1;r<e.length;r++){let i=this.partsMatch(e[t],e[r],!this.preserveMultipleSlashes);if(i){e[t]=[],e[r]=i;break}}return e.filter(t=>t.length)}partsMatch(e,t,r=!1){let i=0,s=0,a=[],c="";for(;i<e.length&&s<t.length;)if(e[i]===t[s])a.push(c==="b"?t[s]:e[i]),i++,s++;else if(r&&e[i]==="**"&&t[s]===e[i+1])a.push(e[i]),i++;else if(r&&t[s]==="**"&&e[i]===t[s+1])a.push(t[s]),s++;else if(e[i]==="*"&&t[s]&&(this.options.dot||!t[s].startsWith("."))&&t[s]!=="**"){if(c==="b")return!1;c="a",a.push(e[i]),i++,s++}else if(t[s]==="*"&&e[i]&&(this.options.dot||!e[i].startsWith("."))&&e[i]!=="**"){if(c==="a")return!1;c="b",a.push(t[s]),i++,s++}else return!1;return e.length===t.length&&a}parseNegate(){if(this.nonegate)return;let e=this.pattern,t=!1,r=0;for(let i=0;i<e.length&&e.charAt(i)==="!";i++)t=!t,r++;r&&(this.pattern=e.slice(r)),this.negate=t}matchOne(e,t,r=!1){let i=0,s=0;if(this.isWindows){let c=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),l=!c&&e[0]===""&&e[1]===""&&e[2]==="?"&&/^[a-z]:$/i.test(e[3]),u=typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0]),f=!u&&t[0]===""&&t[1]===""&&t[2]==="?"&&typeof t[3]=="string"&&/^[a-z]:$/i.test(t[3]),d=l?3:c?0:void 0,h=f?3:u?0:void 0;if(typeof d=="number"&&typeof h=="number"){let[p,y]=[e[d],t[h]];p.toLowerCase()===y.toLowerCase()&&(t[h]=p,s=h,i=d)}}let{optimizationLevel:a=1}=this.options;return a>=2&&(e=this.levelTwoFileOptimize(e)),t.includes(Kt)?this.#e(e,t,r,i,s):this.#r(e,t,r,i,s)}#e(e,t,r,i,s){let a=t.indexOf(Kt,s),c=t.lastIndexOf(Kt),[l,u,f]=r?[t.slice(s,a),t.slice(a+1),[]]:[t.slice(s,a),t.slice(a+1,c),t.slice(c+1)];if(l.length){let A=e.slice(i,i+l.length);if(!this.#r(A,l,r,0,0))return!1;i+=l.length}let d=0;if(f.length){if(f.length+i>e.length)return!1;let A=e.length-f.length;if(this.#r(e,f,r,A,0))d=f.length;else{if(e[e.length-1]!==""||i+f.length===e.length||(A--,!this.#r(e,f,r,A,0)))return!1;d=f.length+1}}if(!u.length){let A=!!d;for(let I=i;I<e.length-d;I++){let j=String(e[I]);if(A=!0,j==="."||j===".."||!this.options.dot&&j.startsWith("."))return!1}return r||A}let h=[[[],0]],p=h[0],y=0,v=[0];for(let A of u)A===Kt?(v.push(y),p=[[],0],h.push(p)):(p[0].push(A),y++);let w=h.length-1,b=e.length-d;for(let A of h)A[1]=b-(v[w--]+A[0].length);return!!this.#n(e,h,i,0,r,0,!!d)}#n(e,t,r,i,s,a,c){let l=t[i];if(!l){for(let d=r;d<e.length;d++){c=!0;let h=e[d];if(h==="."||h===".."||!this.options.dot&&h.startsWith("."))return!1}return c}let[u,f]=l;for(;r<=f;){if(this.#r(e.slice(0,r+u.length),u,s,r,0)&&a<this.maxGlobstarRecursion){let p=this.#n(e,t,r+u.length,i+1,s,a+1,c);if(p!==!1)return p}let h=e[r];if(h==="."||h===".."||!this.options.dot&&h.startsWith("."))return!1;r++}return s||null}#r(e,t,r,i,s){let a,c,l,u;for(a=i,c=s,u=e.length,l=t.length;a<u&&c<l;a++,c++){this.debug("matchOne loop");let f=t[c],d=e[a];if(this.debug(t,f,d),f===!1||f===Kt)return!1;let h;if(typeof f=="string"?(h=d===f,this.debug("string match",f,d,h)):(h=f.test(d),this.debug("pattern match",f,d,h)),!h)return!1}if(a===u&&c===l)return!0;if(a===u)return r;if(c===l)return a===u-1&&e[a]==="";throw new Error("wtf?")}braceExpand(){return OF(this.pattern,this.options)}parse(e){rd(e);let t=this.options;if(e==="**")return Kt;if(e==="")return"";let r,i=null;(r=e.match(GK))?i=t.dot?HK:zK:(r=e.match(LK))?i=(t.nocase?t.dot?$K:jK:t.dot?MK:kK)(r[1]):(r=e.match(QK))?i=(t.nocase?t.dot?YK:KK:t.dot?XK:JK)(r):(r=e.match(BK))?i=t.dot?UK:VK:(r=e.match(qK))&&(i=WK);let s=ic.fromGlob(e,this.options).toMMPattern();return i&&typeof s=="object"&&Reflect.defineProperty(s,"test",{value:i}),s}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let t=this.options,r=t.noglobstar?tY:t.dot?rY:nY,i=new Set(t.nocase?["i"]:[]),s=e.map(l=>{let u=l.map(f=>{if(f instanceof RegExp)for(let d of f.flags.split(""))i.add(d);return typeof f=="string"?cY(f):f===Kt?Kt:f._src});return u.forEach((f,d)=>{let h=u[d+1],p=u[d-1];f!==Kt||p===Kt||(p===void 0?h!==void 0&&h!==Kt?u[d+1]="(?:\\/|"+r+"\\/)?"+h:u[d]=r:h===void 0?u[d-1]=p+"(?:\\/|"+r+")?":h!==Kt&&(u[d-1]=p+"(?:\\/|\\/"+r+"\\/)"+h,u[d+1]=Kt))}),u.filter(f=>f!==Kt).join("/")}).join("|"),[a,c]=e.length>1?["(?:",")"]:["",""];s="^"+a+s+c+"$",this.negate&&(s="^(?!"+s+").+$");try{this.regexp=new RegExp(s,[...i].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&t)return!0;let r=this.options;this.isWindows&&(e=e.split("\\").join("/"));let i=this.slashSplit(e);this.debug(this.pattern,"split",i);let s=this.set;this.debug(this.pattern,"set",s);let a=i[i.length-1];if(!a)for(let c=i.length-2;!a&&c>=0;c--)a=i[c];for(let c=0;c<s.length;c++){let l=s[c],u=i;if(r.matchBase&&l.length===1&&(u=[a]),this.matchOne(u,l,t))return r.flipNegate?!0:!this.negate}return r.flipNegate?!1:this.negate}static defaults(e){return Vr.defaults(e).Minimatch}};Vr.AST=ic;Vr.Minimatch=Gn;Vr.escape=Xl;Vr.unescape=Gi;var tD=require("node:url");var Jl=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,DF=new Set,bE=typeof process=="object"&&process?process:{},NF=o((n,e,t,r)=>{typeof bE.emitWarning=="function"?bE.emitWarning(n,e,t,r):console.error(`[${t}] ${e}: ${n}`)},"emitWarning"),$g=globalThis.AbortController,FF=globalThis.AbortSignal;if(typeof $g>"u"){FF=class{static{o(this,"AbortSignal")}onabort;_onabort=[];reason;aborted=!1;addEventListener(r,i){this._onabort.push(i)}},$g=class{static{o(this,"AbortController")}constructor(){e()}signal=new FF;abort(r){if(!this.signal.aborted){this.signal.reason=r,this.signal.aborted=!0;for(let i of this.signal._onabort)i(r);this.signal.onabort?.(r)}}};let n=bE.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=o(()=>{n&&(n=!1,NF("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))},"warnACPolyfill")}var lY=o(n=>!DF.has(n),"shouldWarn");var ro=o(n=>n&&n===Math.floor(n)&&n>0&&isFinite(n),"isPosInt"),LF=o(n=>ro(n)?n<=Math.pow(2,8)?Uint8Array:n<=Math.pow(2,16)?Uint16Array:n<=Math.pow(2,32)?Uint32Array:n<=Number.MAX_SAFE_INTEGER?Zl:null:null,"getUintArray"),Zl=class extends Array{static{o(this,"ZeroArray")}constructor(e){super(e),this.fill(0)}},wE=class n{static{o(this,"Stack")}heap;length;static#e=!1;static create(e){let t=LF(e);if(!t)return[];n.#e=!0;let r=new n(e,t);return n.#e=!1,r}constructor(e,t){if(!n.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new t(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},id=class n{static{o(this,"LRUCache")}#e;#n;#r;#t;#c;#_;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#i;#u;#s;#l;#a;#p;#g;#d;#m;#y;#f;#E;#T;#S;#w;#v;#b;static unsafeExposeInternals(e){return{starts:e.#T,ttls:e.#S,sizes:e.#E,keyMap:e.#s,keyList:e.#l,valList:e.#a,next:e.#p,prev:e.#g,get head(){return e.#d},get tail(){return e.#m},free:e.#y,isBackgroundFetch:o(t=>e.#h(t),"isBackgroundFetch"),backgroundFetch:o((t,r,i,s)=>e.#j(t,r,i,s),"backgroundFetch"),moveToTail:o(t=>e.#B(t),"moveToTail"),indexes:o(t=>e.#I(t),"indexes"),rindexes:o(t=>e.#R(t),"rindexes"),isStale:o(t=>e.#A(t),"isStale")}}get max(){return this.#e}get maxSize(){return this.#n}get calculatedSize(){return this.#u}get size(){return this.#i}get fetchMethod(){return this.#c}get memoMethod(){return this.#_}get dispose(){return this.#r}get disposeAfter(){return this.#t}constructor(e){let{max:t=0,ttl:r,ttlResolution:i=1,ttlAutopurge:s,updateAgeOnGet:a,updateAgeOnHas:c,allowStale:l,dispose:u,disposeAfter:f,noDisposeOnSet:d,noUpdateTTL:h,maxSize:p=0,maxEntrySize:y=0,sizeCalculation:v,fetchMethod:w,memoMethod:b,noDeleteOnFetchRejection:A,noDeleteOnStaleGet:I,allowStaleOnFetchRejection:j,allowStaleOnFetchAbort:V,ignoreFetchAbort:te}=e;if(t!==0&&!ro(t))throw new TypeError("max option must be a nonnegative integer");let z=t?LF(t):Array;if(!z)throw new Error("invalid max value: "+t);if(this.#e=t,this.#n=p,this.maxEntrySize=y||this.#n,this.sizeCalculation=v,this.sizeCalculation){if(!this.#n&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(b!==void 0&&typeof b!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#_=b,w!==void 0&&typeof w!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#c=w,this.#v=!!w,this.#s=new Map,this.#l=new Array(t).fill(void 0),this.#a=new Array(t).fill(void 0),this.#p=new z(t),this.#g=new z(t),this.#d=0,this.#m=0,this.#y=wE.create(t),this.#i=0,this.#u=0,typeof u=="function"&&(this.#r=u),typeof f=="function"?(this.#t=f,this.#f=[]):(this.#t=void 0,this.#f=void 0),this.#w=!!this.#r,this.#b=!!this.#t,this.noDisposeOnSet=!!d,this.noUpdateTTL=!!h,this.noDeleteOnFetchRejection=!!A,this.allowStaleOnFetchRejection=!!j,this.allowStaleOnFetchAbort=!!V,this.ignoreFetchAbort=!!te,this.maxEntrySize!==0){if(this.#n!==0&&!ro(this.#n))throw new TypeError("maxSize must be a positive integer if specified");if(!ro(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#P()}if(this.allowStale=!!l,this.noDeleteOnStaleGet=!!I,this.updateAgeOnGet=!!a,this.updateAgeOnHas=!!c,this.ttlResolution=ro(i)||i===0?i:1,this.ttlAutopurge=!!s,this.ttl=r||0,this.ttl){if(!ro(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#x()}if(this.#e===0&&this.ttl===0&&this.#n===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#n){let G="LRU_CACHE_UNBOUNDED";lY(G)&&(DF.add(G),NF("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",G,n))}}getRemainingTTL(e){return this.#s.has(e)?1/0:0}#x(){let e=new Zl(this.#e),t=new Zl(this.#e);this.#S=e,this.#T=t,this.#F=(s,a,c=Jl.now())=>{if(t[s]=a!==0?c:0,e[s]=a,a!==0&&this.ttlAutopurge){let l=setTimeout(()=>{this.#A(s)&&this.#O(this.#l[s],"expire")},a+1);l.unref&&l.unref()}},this.#C=s=>{t[s]=e[s]!==0?Jl.now():0},this.#o=(s,a)=>{if(e[a]){let c=e[a],l=t[a];if(!c||!l)return;s.ttl=c,s.start=l,s.now=r||i();let u=s.now-l;s.remainingTTL=c-u}};let r=0,i=o(()=>{let s=Jl.now();if(this.ttlResolution>0){r=s;let a=setTimeout(()=>r=0,this.ttlResolution);a.unref&&a.unref()}return s},"getNow");this.getRemainingTTL=s=>{let a=this.#s.get(s);if(a===void 0)return 0;let c=e[a],l=t[a];if(!c||!l)return 1/0;let u=(r||i())-l;return c-u},this.#A=s=>{let a=t[s],c=e[s];return!!c&&!!a&&(r||i())-a>c}}#C=o(()=>{},"#updateItemAge");#o=o(()=>{},"#statusTTL");#F=o(()=>{},"#setItemTTL");#A=o(()=>!1,"#isStale");#P(){let e=new Zl(this.#e);this.#u=0,this.#E=e,this.#D=t=>{this.#u-=e[t],e[t]=0},this.#L=(t,r,i,s)=>{if(this.#h(r))return 0;if(!ro(i))if(s){if(typeof s!="function")throw new TypeError("sizeCalculation must be a function");if(i=s(r,t),!ro(i))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i},this.#N=(t,r,i)=>{if(e[t]=r,this.#n){let s=this.#n-e[t];for(;this.#u>s;)this.#M(!0)}this.#u+=e[t],i&&(i.entrySize=r,i.totalCalculatedSize=this.#u)}}#D=o(e=>{},"#removeItemSize");#N=o((e,t,r)=>{},"#addItemSize");#L=o((e,t,r,i)=>{if(r||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0},"#requireSize");*#I({allowStale:e=this.allowStale}={}){if(this.#i)for(let t=this.#m;!(!this.#k(t)||((e||!this.#A(t))&&(yield t),t===this.#d));)t=this.#g[t]}*#R({allowStale:e=this.allowStale}={}){if(this.#i)for(let t=this.#d;!(!this.#k(t)||((e||!this.#A(t))&&(yield t),t===this.#m));)t=this.#p[t]}#k(e){return e!==void 0&&this.#s.get(this.#l[e])===e}*entries(){for(let e of this.#I())this.#a[e]!==void 0&&this.#l[e]!==void 0&&!this.#h(this.#a[e])&&(yield[this.#l[e],this.#a[e]])}*rentries(){for(let e of this.#R())this.#a[e]!==void 0&&this.#l[e]!==void 0&&!this.#h(this.#a[e])&&(yield[this.#l[e],this.#a[e]])}*keys(){for(let e of this.#I()){let t=this.#l[e];t!==void 0&&!this.#h(this.#a[e])&&(yield t)}}*rkeys(){for(let e of this.#R()){let t=this.#l[e];t!==void 0&&!this.#h(this.#a[e])&&(yield t)}}*values(){for(let e of this.#I())this.#a[e]!==void 0&&!this.#h(this.#a[e])&&(yield this.#a[e])}*rvalues(){for(let e of this.#R())this.#a[e]!==void 0&&!this.#h(this.#a[e])&&(yield this.#a[e])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,t={}){for(let r of this.#I()){let i=this.#a[r],s=this.#h(i)?i.__staleWhileFetching:i;if(s!==void 0&&e(s,this.#l[r],this))return this.get(this.#l[r],t)}}forEach(e,t=this){for(let r of this.#I()){let i=this.#a[r],s=this.#h(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(t,s,this.#l[r],this)}}rforEach(e,t=this){for(let r of this.#R()){let i=this.#a[r],s=this.#h(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(t,s,this.#l[r],this)}}purgeStale(){let e=!1;for(let t of this.#R({allowStale:!0}))this.#A(t)&&(this.#O(this.#l[t],"expire"),e=!0);return e}info(e){let t=this.#s.get(e);if(t===void 0)return;let r=this.#a[t],i=this.#h(r)?r.__staleWhileFetching:r;if(i===void 0)return;let s={value:i};if(this.#S&&this.#T){let a=this.#S[t],c=this.#T[t];if(a&&c){let l=a-(Jl.now()-c);s.ttl=l,s.start=Date.now()}}return this.#E&&(s.size=this.#E[t]),s}dump(){let e=[];for(let t of this.#I({allowStale:!0})){let r=this.#l[t],i=this.#a[t],s=this.#h(i)?i.__staleWhileFetching:i;if(s===void 0||r===void 0)continue;let a={value:s};if(this.#S&&this.#T){a.ttl=this.#S[t];let c=Jl.now()-this.#T[t];a.start=Math.floor(Date.now()-c)}this.#E&&(a.size=this.#E[t]),e.unshift([r,a])}return e}load(e){this.clear();for(let[t,r]of e){if(r.start){let i=Date.now()-r.start;r.start=Jl.now()-i}this.set(t,r.value,r)}}set(e,t,r={}){if(t===void 0)return this.delete(e),this;let{ttl:i=this.ttl,start:s,noDisposeOnSet:a=this.noDisposeOnSet,sizeCalculation:c=this.sizeCalculation,status:l}=r,{noUpdateTTL:u=this.noUpdateTTL}=r,f=this.#L(e,t,r.size||0,c);if(this.maxEntrySize&&f>this.maxEntrySize)return l&&(l.set="miss",l.maxEntrySizeExceeded=!0),this.#O(e,"set"),this;let d=this.#i===0?void 0:this.#s.get(e);if(d===void 0)d=this.#i===0?this.#m:this.#y.length!==0?this.#y.pop():this.#i===this.#e?this.#M(!1):this.#i,this.#l[d]=e,this.#a[d]=t,this.#s.set(e,d),this.#p[this.#m]=d,this.#g[d]=this.#m,this.#m=d,this.#i++,this.#N(d,f,l),l&&(l.set="add"),u=!1;else{this.#B(d);let h=this.#a[d];if(t!==h){if(this.#v&&this.#h(h)){h.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:p}=h;p!==void 0&&!a&&(this.#w&&this.#r?.(p,e,"set"),this.#b&&this.#f?.push([p,e,"set"]))}else a||(this.#w&&this.#r?.(h,e,"set"),this.#b&&this.#f?.push([h,e,"set"]));if(this.#D(d),this.#N(d,f,l),this.#a[d]=t,l){l.set="replace";let p=h&&this.#h(h)?h.__staleWhileFetching:h;p!==void 0&&(l.oldValue=p)}}else l&&(l.set="update")}if(i!==0&&!this.#S&&this.#x(),this.#S&&(u||this.#F(d,i,s),l&&this.#o(l,d)),!a&&this.#b&&this.#f){let h=this.#f,p;for(;p=h?.shift();)this.#t?.(...p)}return this}pop(){try{for(;this.#i;){let e=this.#a[this.#d];if(this.#M(!0),this.#h(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(e!==void 0)return e}}finally{if(this.#b&&this.#f){let e=this.#f,t;for(;t=e?.shift();)this.#t?.(...t)}}}#M(e){let t=this.#d,r=this.#l[t],i=this.#a[t];return this.#v&&this.#h(i)?i.__abortController.abort(new Error("evicted")):(this.#w||this.#b)&&(this.#w&&this.#r?.(i,r,"evict"),this.#b&&this.#f?.push([i,r,"evict"])),this.#D(t),e&&(this.#l[t]=void 0,this.#a[t]=void 0,this.#y.push(t)),this.#i===1?(this.#d=this.#m=0,this.#y.length=0):this.#d=this.#p[t],this.#s.delete(r),this.#i--,t}has(e,t={}){let{updateAgeOnHas:r=this.updateAgeOnHas,status:i}=t,s=this.#s.get(e);if(s!==void 0){let a=this.#a[s];if(this.#h(a)&&a.__staleWhileFetching===void 0)return!1;if(this.#A(s))i&&(i.has="stale",this.#o(i,s));else return r&&this.#C(s),i&&(i.has="hit",this.#o(i,s)),!0}else i&&(i.has="miss");return!1}peek(e,t={}){let{allowStale:r=this.allowStale}=t,i=this.#s.get(e);if(i===void 0||!r&&this.#A(i))return;let s=this.#a[i];return this.#h(s)?s.__staleWhileFetching:s}#j(e,t,r,i){let s=t===void 0?void 0:this.#a[t];if(this.#h(s))return s;let a=new $g,{signal:c}=r;c?.addEventListener("abort",()=>a.abort(c.reason),{signal:a.signal});let l={signal:a.signal,options:r,context:i},u=o((v,w=!1)=>{let{aborted:b}=a.signal,A=r.ignoreFetchAbort&&v!==void 0;if(r.status&&(b&&!w?(r.status.fetchAborted=!0,r.status.fetchError=a.signal.reason,A&&(r.status.fetchAbortIgnored=!0)):r.status.fetchResolved=!0),b&&!A&&!w)return d(a.signal.reason);let I=p;return this.#a[t]===p&&(v===void 0?I.__staleWhileFetching?this.#a[t]=I.__staleWhileFetching:this.#O(e,"fetch"):(r.status&&(r.status.fetchUpdated=!0),this.set(e,v,l.options))),v},"cb"),f=o(v=>(r.status&&(r.status.fetchRejected=!0,r.status.fetchError=v),d(v)),"eb"),d=o(v=>{let{aborted:w}=a.signal,b=w&&r.allowStaleOnFetchAbort,A=b||r.allowStaleOnFetchRejection,I=A||r.noDeleteOnFetchRejection,j=p;if(this.#a[t]===p&&(!I||j.__staleWhileFetching===void 0?this.#O(e,"fetch"):b||(this.#a[t]=j.__staleWhileFetching)),A)return r.status&&j.__staleWhileFetching!==void 0&&(r.status.returnedStale=!0),j.__staleWhileFetching;if(j.__returned===j)throw v},"fetchFail"),h=o((v,w)=>{let b=this.#c?.(e,s,l);b&&b instanceof Promise&&b.then(A=>v(A===void 0?void 0:A),w),a.signal.addEventListener("abort",()=>{(!r.ignoreFetchAbort||r.allowStaleOnFetchAbort)&&(v(void 0),r.allowStaleOnFetchAbort&&(v=o(A=>u(A,!0),"res")))})},"pcall");r.status&&(r.status.fetchDispatched=!0);let p=new Promise(h).then(u,f),y=Object.assign(p,{__abortController:a,__staleWhileFetching:s,__returned:void 0});return t===void 0?(this.set(e,y,{...l.options,status:void 0}),t=this.#s.get(e)):this.#a[t]=y,y}#h(e){if(!this.#v)return!1;let t=e;return!!t&&t instanceof Promise&&t.hasOwnProperty("__staleWhileFetching")&&t.__abortController instanceof $g}async fetch(e,t={}){let{allowStale:r=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:a=this.ttl,noDisposeOnSet:c=this.noDisposeOnSet,size:l=0,sizeCalculation:u=this.sizeCalculation,noUpdateTTL:f=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:h=this.allowStaleOnFetchRejection,ignoreFetchAbort:p=this.ignoreFetchAbort,allowStaleOnFetchAbort:y=this.allowStaleOnFetchAbort,context:v,forceRefresh:w=!1,status:b,signal:A}=t;if(!this.#v)return b&&(b.fetch="get"),this.get(e,{allowStale:r,updateAgeOnGet:i,noDeleteOnStaleGet:s,status:b});let I={allowStale:r,updateAgeOnGet:i,noDeleteOnStaleGet:s,ttl:a,noDisposeOnSet:c,size:l,sizeCalculation:u,noUpdateTTL:f,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:h,allowStaleOnFetchAbort:y,ignoreFetchAbort:p,status:b,signal:A},j=this.#s.get(e);if(j===void 0){b&&(b.fetch="miss");let V=this.#j(e,j,I,v);return V.__returned=V}else{let V=this.#a[j];if(this.#h(V)){let $=r&&V.__staleWhileFetching!==void 0;return b&&(b.fetch="inflight",$&&(b.returnedStale=!0)),$?V.__staleWhileFetching:V.__returned=V}let te=this.#A(j);if(!w&&!te)return b&&(b.fetch="hit"),this.#B(j),i&&this.#C(j),b&&this.#o(b,j),V;let z=this.#j(e,j,I,v),F=z.__staleWhileFetching!==void 0&&r;return b&&(b.fetch=te?"stale":"refresh",F&&te&&(b.returnedStale=!0)),F?z.__staleWhileFetching:z.__returned=z}}async forceFetch(e,t={}){let r=await this.fetch(e,t);if(r===void 0)throw new Error("fetch() returned undefined");return r}memo(e,t={}){let r=this.#_;if(!r)throw new Error("no memoMethod provided to constructor");let{context:i,forceRefresh:s,...a}=t,c=this.get(e,a);if(!s&&c!==void 0)return c;let l=r(e,c,{options:a,context:i});return this.set(e,l,a),l}get(e,t={}){let{allowStale:r=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:a}=t,c=this.#s.get(e);if(c!==void 0){let l=this.#a[c],u=this.#h(l);return a&&this.#o(a,c),this.#A(c)?(a&&(a.get="stale"),u?(a&&r&&l.__staleWhileFetching!==void 0&&(a.returnedStale=!0),r?l.__staleWhileFetching:void 0):(s||this.#O(e,"expire"),a&&r&&(a.returnedStale=!0),r?l:void 0)):(a&&(a.get="hit"),u?l.__staleWhileFetching:(this.#B(c),i&&this.#C(c),l))}else a&&(a.get="miss")}#$(e,t){this.#g[t]=e,this.#p[e]=t}#B(e){e!==this.#m&&(e===this.#d?this.#d=this.#p[e]:this.#$(this.#g[e],this.#p[e]),this.#$(this.#m,e),this.#m=e)}delete(e){return this.#O(e,"delete")}#O(e,t){let r=!1;if(this.#i!==0){let i=this.#s.get(e);if(i!==void 0)if(r=!0,this.#i===1)this.#V(t);else{this.#D(i);let s=this.#a[i];if(this.#h(s)?s.__abortController.abort(new Error("deleted")):(this.#w||this.#b)&&(this.#w&&this.#r?.(s,e,t),this.#b&&this.#f?.push([s,e,t])),this.#s.delete(e),this.#l[i]=void 0,this.#a[i]=void 0,i===this.#m)this.#m=this.#g[i];else if(i===this.#d)this.#d=this.#p[i];else{let a=this.#g[i];this.#p[a]=this.#p[i];let c=this.#p[i];this.#g[c]=this.#g[i]}this.#i--,this.#y.push(i)}}if(this.#b&&this.#f?.length){let i=this.#f,s;for(;s=i?.shift();)this.#t?.(...s)}return r}clear(){return this.#V("delete")}#V(e){for(let t of this.#R({allowStale:!0})){let r=this.#a[t];if(this.#h(r))r.__abortController.abort(new Error("deleted"));else{let i=this.#l[t];this.#w&&this.#r?.(r,i,e),this.#b&&this.#f?.push([r,i,e])}}if(this.#s.clear(),this.#a.fill(void 0),this.#l.fill(void 0),this.#S&&this.#T&&(this.#S.fill(0),this.#T.fill(0)),this.#E&&this.#E.fill(0),this.#d=0,this.#m=0,this.#y.length=0,this.#u=0,this.#i=0,this.#b&&this.#f){let t=this.#f,r;for(;r=t?.shift();)this.#t?.(...r)}}};var ru=require("node:path"),GF=require("node:url"),Os=require("fs"),SY=K(require("node:fs"),1),so=require("node:fs/promises");var zg=require("node:events"),RE=K(require("node:stream"),1),BF=require("node:string_decoder");var kF=typeof process=="object"&&process?process:{stdout:null,stderr:null},uY=o(n=>!!n&&typeof n=="object"&&(n instanceof io||n instanceof RE.default||fY(n)||dY(n)),"isStream"),fY=o(n=>!!n&&typeof n=="object"&&n instanceof zg.EventEmitter&&typeof n.pipe=="function"&&n.pipe!==RE.default.Writable.prototype.pipe,"isReadable"),dY=o(n=>!!n&&typeof n=="object"&&n instanceof zg.EventEmitter&&typeof n.write=="function"&&typeof n.end=="function","isWritable"),ga=Symbol("EOF"),ya=Symbol("maybeEmitEnd"),no=Symbol("emittedEnd"),Bg=Symbol("emittingEnd"),sd=Symbol("emittedError"),Vg=Symbol("closed"),MF=Symbol("read"),Ug=Symbol("flush"),jF=Symbol("flushChunk"),zi=Symbol("encoding"),eu=Symbol("decoder"),xr=Symbol("flowing"),ad=Symbol("paused"),tu=Symbol("resume"),Cr=Symbol("buffer"),vn=Symbol("pipes"),Ir=Symbol("bufferLength"),EE=Symbol("bufferPush"),qg=Symbol("bufferShift"),tn=Symbol("objectMode"),Yt=Symbol("destroyed"),TE=Symbol("error"),AE=Symbol("emitData"),$F=Symbol("emitEnd"),xE=Symbol("emitEnd2"),Rs=Symbol("async"),CE=Symbol("abort"),Wg=Symbol("aborted"),od=Symbol("signal"),sc=Symbol("dataListeners"),zn=Symbol("discarded"),cd=o(n=>Promise.resolve().then(n),"defer"),hY=o(n=>n(),"nodefer"),pY=o(n=>n==="end"||n==="finish"||n==="prefinish","isEndish"),mY=o(n=>n instanceof ArrayBuffer||!!n&&typeof n=="object"&&n.constructor&&n.constructor.name==="ArrayBuffer"&&n.byteLength>=0,"isArrayBufferLike"),gY=o(n=>!Buffer.isBuffer(n)&&ArrayBuffer.isView(n),"isArrayBufferView"),Gg=class{static{o(this,"Pipe")}src;dest;opts;ondrain;constructor(e,t,r){this.src=e,this.dest=t,this.opts=r,this.ondrain=()=>e[tu](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},IE=class extends Gg{static{o(this,"PipeProxyErrors")}unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,t,r){super(e,t,r),this.proxyErrors=i=>t.emit("error",i),e.on("error",this.proxyErrors)}},yY=o(n=>!!n.objectMode,"isObjectModeOptions"),_Y=o(n=>!n.objectMode&&!!n.encoding&&n.encoding!=="buffer","isEncodingOptions"),io=class extends zg.EventEmitter{static{o(this,"Minipass")}[xr]=!1;[ad]=!1;[vn]=[];[Cr]=[];[tn];[zi];[Rs];[eu];[ga]=!1;[no]=!1;[Bg]=!1;[Vg]=!1;[sd]=null;[Ir]=0;[Yt]=!1;[od];[Wg]=!1;[sc]=0;[zn]=!1;writable=!0;readable=!0;constructor(...e){let t=e[0]||{};if(super(),t.objectMode&&typeof t.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");yY(t)?(this[tn]=!0,this[zi]=null):_Y(t)?(this[zi]=t.encoding,this[tn]=!1):(this[tn]=!1,this[zi]=null),this[Rs]=!!t.async,this[eu]=this[zi]?new BF.StringDecoder(this[zi]):null,t&&t.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:o(()=>this[Cr],"get")}),t&&t.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:o(()=>this[vn],"get")});let{signal:r}=t;r&&(this[od]=r,r.aborted?this[CE]():r.addEventListener("abort",()=>this[CE]()))}get bufferLength(){return this[Ir]}get encoding(){return this[zi]}set encoding(e){throw new Error("Encoding must be set at instantiation time")}setEncoding(e){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[tn]}set objectMode(e){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Rs]}set async(e){this[Rs]=this[Rs]||!!e}[CE](){this[Wg]=!0,this.emit("abort",this[od]?.reason),this.destroy(this[od]?.reason)}get aborted(){return this[Wg]}set aborted(e){}write(e,t,r){if(this[Wg])return!1;if(this[ga])throw new Error("write after end");if(this[Yt])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof t=="function"&&(r=t,t="utf8"),t||(t="utf8");let i=this[Rs]?cd:hY;if(!this[tn]&&!Buffer.isBuffer(e)){if(gY(e))e=Buffer.from(e.buffer,e.byteOffset,e.byteLength);else if(mY(e))e=Buffer.from(e);else if(typeof e!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[tn]?(this[xr]&&this[Ir]!==0&&this[Ug](!0),this[xr]?this.emit("data",e):this[EE](e),this[Ir]!==0&&this.emit("readable"),r&&i(r),this[xr]):e.length?(typeof e=="string"&&!(t===this[zi]&&!this[eu]?.lastNeed)&&(e=Buffer.from(e,t)),Buffer.isBuffer(e)&&this[zi]&&(e=this[eu].write(e)),this[xr]&&this[Ir]!==0&&this[Ug](!0),this[xr]?this.emit("data",e):this[EE](e),this[Ir]!==0&&this.emit("readable"),r&&i(r),this[xr]):(this[Ir]!==0&&this.emit("readable"),r&&i(r),this[xr])}read(e){if(this[Yt])return null;if(this[zn]=!1,this[Ir]===0||e===0||e&&e>this[Ir])return this[ya](),null;this[tn]&&(e=null),this[Cr].length>1&&!this[tn]&&(this[Cr]=[this[zi]?this[Cr].join(""):Buffer.concat(this[Cr],this[Ir])]);let t=this[MF](e||null,this[Cr][0]);return this[ya](),t}[MF](e,t){if(this[tn])this[qg]();else{let r=t;e===r.length||e===null?this[qg]():typeof r=="string"?(this[Cr][0]=r.slice(e),t=r.slice(0,e),this[Ir]-=e):(this[Cr][0]=r.subarray(e),t=r.subarray(0,e),this[Ir]-=e)}return this.emit("data",t),!this[Cr].length&&!this[ga]&&this.emit("drain"),t}end(e,t,r){return typeof e=="function"&&(r=e,e=void 0),typeof t=="function"&&(r=t,t="utf8"),e!==void 0&&this.write(e,t),r&&this.once("end",r),this[ga]=!0,this.writable=!1,(this[xr]||!this[ad])&&this[ya](),this}[tu](){this[Yt]||(!this[sc]&&!this[vn].length&&(this[zn]=!0),this[ad]=!1,this[xr]=!0,this.emit("resume"),this[Cr].length?this[Ug]():this[ga]?this[ya]():this.emit("drain"))}resume(){return this[tu]()}pause(){this[xr]=!1,this[ad]=!0,this[zn]=!1}get destroyed(){return this[Yt]}get flowing(){return this[xr]}get paused(){return this[ad]}[EE](e){this[tn]?this[Ir]+=1:this[Ir]+=e.length,this[Cr].push(e)}[qg](){return this[tn]?this[Ir]-=1:this[Ir]-=this[Cr][0].length,this[Cr].shift()}[Ug](e=!1){do;while(this[jF](this[qg]())&&this[Cr].length);!e&&!this[Cr].length&&!this[ga]&&this.emit("drain")}[jF](e){return this.emit("data",e),this[xr]}pipe(e,t){if(this[Yt])return e;this[zn]=!1;let r=this[no];return t=t||{},e===kF.stdout||e===kF.stderr?t.end=!1:t.end=t.end!==!1,t.proxyErrors=!!t.proxyErrors,r?t.end&&e.end():(this[vn].push(t.proxyErrors?new IE(this,e,t):new Gg(this,e,t)),this[Rs]?cd(()=>this[tu]()):this[tu]()),e}unpipe(e){let t=this[vn].find(r=>r.dest===e);t&&(this[vn].length===1?(this[xr]&&this[sc]===0&&(this[xr]=!1),this[vn]=[]):this[vn].splice(this[vn].indexOf(t),1),t.unpipe())}addListener(e,t){return this.on(e,t)}on(e,t){let r=super.on(e,t);if(e==="data")this[zn]=!1,this[sc]++,!this[vn].length&&!this[xr]&&this[tu]();else if(e==="readable"&&this[Ir]!==0)super.emit("readable");else if(pY(e)&&this[no])super.emit(e),this.removeAllListeners(e);else if(e==="error"&&this[sd]){let i=t;this[Rs]?cd(()=>i.call(this,this[sd])):i.call(this,this[sd])}return r}removeListener(e,t){return this.off(e,t)}off(e,t){let r=super.off(e,t);return e==="data"&&(this[sc]=this.listeners("data").length,this[sc]===0&&!this[zn]&&!this[vn].length&&(this[xr]=!1)),r}removeAllListeners(e){let t=super.removeAllListeners(e);return(e==="data"||e===void 0)&&(this[sc]=0,!this[zn]&&!this[vn].length&&(this[xr]=!1)),t}get emittedEnd(){return this[no]}[ya](){!this[Bg]&&!this[no]&&!this[Yt]&&this[Cr].length===0&&this[ga]&&(this[Bg]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Vg]&&this.emit("close"),this[Bg]=!1)}emit(e,...t){let r=t[0];if(e!=="error"&&e!=="close"&&e!==Yt&&this[Yt])return!1;if(e==="data")return!this[tn]&&!r?!1:this[Rs]?(cd(()=>this[AE](r)),!0):this[AE](r);if(e==="end")return this[$F]();if(e==="close"){if(this[Vg]=!0,!this[no]&&!this[Yt])return!1;let s=super.emit("close");return this.removeAllListeners("close"),s}else if(e==="error"){this[sd]=r,super.emit(TE,r);let s=!this[od]||this.listeners("error").length?super.emit("error",r):!1;return this[ya](),s}else if(e==="resume"){let s=super.emit("resume");return this[ya](),s}else if(e==="finish"||e==="prefinish"){let s=super.emit(e);return this.removeAllListeners(e),s}let i=super.emit(e,...t);return this[ya](),i}[AE](e){for(let r of this[vn])r.dest.write(e)===!1&&this.pause();let t=this[zn]?!1:super.emit("data",e);return this[ya](),t}[$F](){return this[no]?!1:(this[no]=!0,this.readable=!1,this[Rs]?(cd(()=>this[xE]()),!0):this[xE]())}[xE](){if(this[eu]){let t=this[eu].end();if(t){for(let r of this[vn])r.dest.write(t);this[zn]||super.emit("data",t)}}for(let t of this[vn])t.end();let e=super.emit("end");return this.removeAllListeners("end"),e}async collect(){let e=Object.assign([],{dataLength:0});this[tn]||(e.dataLength=0);let t=this.promise();return this.on("data",r=>{e.push(r),this[tn]||(e.dataLength+=r.length)}),await t,e}async concat(){if(this[tn])throw new Error("cannot concat in objectMode");let e=await this.collect();return this[zi]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise((e,t)=>{this.on(Yt,()=>t(new Error("stream destroyed"))),this.on("error",r=>t(r)),this.on("end",()=>e())})}[Symbol.asyncIterator](){this[zn]=!1;let e=!1,t=o(async()=>(this.pause(),e=!0,{value:void 0,done:!0}),"stop");return{next:o(()=>{if(e)return t();let i=this.read();if(i!==null)return Promise.resolve({done:!1,value:i});if(this[ga])return t();let s,a,c=o(d=>{this.off("data",l),this.off("end",u),this.off(Yt,f),t(),a(d)},"onerr"),l=o(d=>{this.off("error",c),this.off("end",u),this.off(Yt,f),this.pause(),s({value:d,done:!!this[ga]})},"ondata"),u=o(()=>{this.off("error",c),this.off("data",l),this.off(Yt,f),t(),s({done:!0,value:void 0})},"onend"),f=o(()=>c(new Error("stream destroyed")),"ondestroy");return new Promise((d,h)=>{a=h,s=d,this.once(Yt,f),this.once("error",c),this.once("end",u),this.once("data",l)})},"next"),throw:t,return:t,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[zn]=!1;let e=!1,t=o(()=>(this.pause(),this.off(TE,t),this.off(Yt,t),this.off("end",t),e=!0,{done:!0,value:void 0}),"stop"),r=o(()=>{if(e)return t();let i=this.read();return i===null?t():{done:!1,value:i}},"next");return this.once("end",t),this.once(TE,t),this.once(Yt,t),{next:r,throw:t,return:t,[Symbol.iterator](){return this}}}destroy(e){if(this[Yt])return e?this.emit("error",e):this.emit(Yt),this;this[Yt]=!0,this[zn]=!0,this[Cr].length=0,this[Ir]=0;let t=this;return typeof t.close=="function"&&!this[Vg]&&t.close(),e?this.emit("error",e):this.emit(Yt),this}static get isStream(){return uY}};var vY=Os.realpathSync.native,ud={lstatSync:Os.lstatSync,readdir:Os.readdir,readdirSync:Os.readdirSync,readlinkSync:Os.readlinkSync,realpathSync:vY,promises:{lstat:so.lstat,readdir:so.readdir,readlink:so.readlink,realpath:so.realpath}},zF=o(n=>!n||n===ud||n===SY?ud:{...ud,...n,promises:{...ud.promises,...n.promises||{}}},"fsFromOption"),HF=/^\\\\\?\\([a-z]:)\\?$/i,bY=o(n=>n.replace(/\//g,"\\").replace(HF,"$1\\"),"uncToDrive"),wY=/[\\\/]/,ui=0,QF=1,KF=2,Ps=4,YF=6,XF=8,ac=10,JF=12,li=15,ld=~li,PE=16,VF=32,fd=64,Hi=128,Hg=256,Kg=512,UF=fd|Hi|Kg,EY=1023,OE=o(n=>n.isFile()?XF:n.isDirectory()?Ps:n.isSymbolicLink()?ac:n.isCharacterDevice()?KF:n.isBlockDevice()?YF:n.isSocket()?JF:n.isFIFO()?QF:ui,"entToType"),qF=new Map,dd=o(n=>{let e=qF.get(n);if(e)return e;let t=n.normalize("NFKD");return qF.set(n,t),t},"normalize"),WF=new Map,Qg=o(n=>{let e=WF.get(n);if(e)return e;let t=dd(n.toLowerCase());return WF.set(n,t),t},"normalizeNocase"),Yg=class extends id{static{o(this,"ResolveCache")}constructor(){super({max:256})}},FE=class extends id{static{o(this,"ChildrenCache")}constructor(e=16*1024){super({maxSize:e,sizeCalculation:o(t=>t.length+1,"sizeCalculation")})}},ZF=Symbol("PathScurry setAsCwd"),rn=class{static{o(this,"PathBase")}name;root;roots;parent;nocase;isCWD=!1;#e;#n;get dev(){return this.#n}#r;get mode(){return this.#r}#t;get nlink(){return this.#t}#c;get uid(){return this.#c}#_;get gid(){return this.#_}#i;get rdev(){return this.#i}#u;get blksize(){return this.#u}#s;get ino(){return this.#s}#l;get size(){return this.#l}#a;get blocks(){return this.#a}#p;get atimeMs(){return this.#p}#g;get mtimeMs(){return this.#g}#d;get ctimeMs(){return this.#d}#m;get birthtimeMs(){return this.#m}#y;get atime(){return this.#y}#f;get mtime(){return this.#f}#E;get ctime(){return this.#E}#T;get birthtime(){return this.#T}#S;#w;#v;#b;#x;#C;#o;#F;#A;#P;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(e,t=ui,r,i,s,a,c){this.name=e,this.#S=s?Qg(e):dd(e),this.#o=t&EY,this.nocase=s,this.roots=i,this.root=r||this,this.#F=a,this.#v=c.fullpath,this.#x=c.relative,this.#C=c.relativePosix,this.parent=c.parent,this.parent?this.#e=this.parent.#e:this.#e=zF(c.fs)}depth(){return this.#w!==void 0?this.#w:this.parent?this.#w=this.parent.depth()+1:this.#w=0}childrenCache(){return this.#F}resolve(e){if(!e)return this;let t=this.getRootString(e),i=e.substring(t.length).split(this.splitSep);return t?this.getRoot(t).#D(i):this.#D(i)}#D(e){let t=this;for(let r of e)t=t.child(r);return t}children(){let e=this.#F.get(this);if(e)return e;let t=Object.assign([],{provisional:0});return this.#F.set(this,t),this.#o&=~PE,t}child(e,t){if(e===""||e===".")return this;if(e==="..")return this.parent||this;let r=this.children(),i=this.nocase?Qg(e):dd(e);for(let l of r)if(l.#S===i)return l;let s=this.parent?this.sep:"",a=this.#v?this.#v+s+e:void 0,c=this.newChild(e,ui,{...t,parent:this,fullpath:a});return this.canReaddir()||(c.#o|=Hi),r.push(c),c}relative(){if(this.isCWD)return"";if(this.#x!==void 0)return this.#x;let e=this.name,t=this.parent;if(!t)return this.#x=this.name;let r=t.relative();return r+(!r||!t.parent?"":this.sep)+e}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#C!==void 0)return this.#C;let e=this.name,t=this.parent;if(!t)return this.#C=this.fullpathPosix();let r=t.relativePosix();return r+(!r||!t.parent?"":"/")+e}fullpath(){if(this.#v!==void 0)return this.#v;let e=this.name,t=this.parent;if(!t)return this.#v=this.name;let i=t.fullpath()+(t.parent?this.sep:"")+e;return this.#v=i}fullpathPosix(){if(this.#b!==void 0)return this.#b;if(this.sep==="/")return this.#b=this.fullpath();if(!this.parent){let i=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(i)?this.#b=`//?/${i}`:this.#b=i}let e=this.parent,t=e.fullpathPosix(),r=t+(!t||!e.parent?"":"/")+this.name;return this.#b=r}isUnknown(){return(this.#o&li)===ui}isType(e){return this[`is${e}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#o&li)===XF}isDirectory(){return(this.#o&li)===Ps}isCharacterDevice(){return(this.#o&li)===KF}isBlockDevice(){return(this.#o&li)===YF}isFIFO(){return(this.#o&li)===QF}isSocket(){return(this.#o&li)===JF}isSymbolicLink(){return(this.#o&ac)===ac}lstatCached(){return this.#o&VF?this:void 0}readlinkCached(){return this.#A}realpathCached(){return this.#P}readdirCached(){let e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(this.#A)return!0;if(!this.parent)return!1;let e=this.#o&li;return!(e!==ui&&e!==ac||this.#o&Hg||this.#o&Hi)}calledReaddir(){return!!(this.#o&PE)}isENOENT(){return!!(this.#o&Hi)}isNamed(e){return this.nocase?this.#S===Qg(e):this.#S===dd(e)}async readlink(){let e=this.#A;if(e)return e;if(this.canReadlink()&&this.parent)try{let t=await this.#e.promises.readlink(this.fullpath()),r=(await this.parent.realpath())?.resolve(t);if(r)return this.#A=r}catch(t){this.#h(t.code);return}}readlinkSync(){let e=this.#A;if(e)return e;if(this.canReadlink()&&this.parent)try{let t=this.#e.readlinkSync(this.fullpath()),r=this.parent.realpathSync()?.resolve(t);if(r)return this.#A=r}catch(t){this.#h(t.code);return}}#N(e){this.#o|=PE;for(let t=e.provisional;t<e.length;t++){let r=e[t];r&&r.#L()}}#L(){this.#o&Hi||(this.#o=(this.#o|Hi)&ld,this.#I())}#I(){let e=this.children();e.provisional=0;for(let t of e)t.#L()}#R(){this.#o|=Kg,this.#k()}#k(){if(this.#o&fd)return;let e=this.#o;(e&li)===Ps&&(e&=ld),this.#o=e|fd,this.#I()}#M(e=""){e==="ENOTDIR"||e==="EPERM"?this.#k():e==="ENOENT"?this.#L():this.children().provisional=0}#j(e=""){e==="ENOTDIR"?this.parent.#k():e==="ENOENT"&&this.#L()}#h(e=""){let t=this.#o;t|=Hg,e==="ENOENT"&&(t|=Hi),(e==="EINVAL"||e==="UNKNOWN")&&(t&=ld),this.#o=t,e==="ENOTDIR"&&this.parent&&this.parent.#k()}#$(e,t){return this.#O(e,t)||this.#B(e,t)}#B(e,t){let r=OE(e),i=this.newChild(e.name,r,{parent:this}),s=i.#o&li;return s!==Ps&&s!==ac&&s!==ui&&(i.#o|=fd),t.unshift(i),t.provisional++,i}#O(e,t){for(let r=t.provisional;r<t.length;r++){let i=t[r];if((this.nocase?Qg(e.name):dd(e.name))===i.#S)return this.#V(e,i,r,t)}}#V(e,t,r,i){let s=t.name;return t.#o=t.#o&ld|OE(e),s!==e.name&&(t.name=e.name),r!==i.provisional&&(r===i.length-1?i.pop():i.splice(r,1),i.unshift(t)),i.provisional++,t}async lstat(){if((this.#o&Hi)===0)try{return this.#G(await this.#e.promises.lstat(this.fullpath())),this}catch(e){this.#j(e.code)}}lstatSync(){if((this.#o&Hi)===0)try{return this.#G(this.#e.lstatSync(this.fullpath())),this}catch(e){this.#j(e.code)}}#G(e){let{atime:t,atimeMs:r,birthtime:i,birthtimeMs:s,blksize:a,blocks:c,ctime:l,ctimeMs:u,dev:f,gid:d,ino:h,mode:p,mtime:y,mtimeMs:v,nlink:w,rdev:b,size:A,uid:I}=e;this.#y=t,this.#p=r,this.#T=i,this.#m=s,this.#u=a,this.#a=c,this.#E=l,this.#d=u,this.#n=f,this.#_=d,this.#s=h,this.#r=p,this.#f=y,this.#g=v,this.#t=w,this.#i=b,this.#l=A,this.#c=I;let j=OE(e);this.#o=this.#o&ld|j|VF,j!==ui&&j!==Ps&&j!==ac&&(this.#o|=fd)}#q=[];#W=!1;#z(e){this.#W=!1;let t=this.#q.slice();this.#q.length=0,t.forEach(r=>r(null,e))}readdirCB(e,t=!1){if(!this.canReaddir()){t?e(null,[]):queueMicrotask(()=>e(null,[]));return}let r=this.children();if(this.calledReaddir()){let s=r.slice(0,r.provisional);t?e(null,s):queueMicrotask(()=>e(null,s));return}if(this.#q.push(e),this.#W)return;this.#W=!0;let i=this.fullpath();this.#e.readdir(i,{withFileTypes:!0},(s,a)=>{if(s)this.#M(s.code),r.provisional=0;else{for(let c of a)this.#$(c,r);this.#N(r)}this.#z(r.slice(0,r.provisional))})}#U;async readdir(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let t=this.fullpath();if(this.#U)await this.#U;else{let r=o(()=>{},"resolve");this.#U=new Promise(i=>r=i);try{for(let i of await this.#e.promises.readdir(t,{withFileTypes:!0}))this.#$(i,e);this.#N(e)}catch(i){this.#M(i.code),e.provisional=0}this.#U=void 0,r()}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let t=this.fullpath();try{for(let r of this.#e.readdirSync(t,{withFileTypes:!0}))this.#$(r,e);this.#N(e)}catch(r){this.#M(r.code),e.provisional=0}return e.slice(0,e.provisional)}canReaddir(){if(this.#o&UF)return!1;let e=li&this.#o;return e===ui||e===Ps||e===ac}shouldWalk(e,t){return(this.#o&Ps)===Ps&&!(this.#o&UF)&&!e.has(this)&&(!t||t(this))}async realpath(){if(this.#P)return this.#P;if(!((Kg|Hg|Hi)&this.#o))try{let e=await this.#e.promises.realpath(this.fullpath());return this.#P=this.resolve(e)}catch{this.#R()}}realpathSync(){if(this.#P)return this.#P;if(!((Kg|Hg|Hi)&this.#o))try{let e=this.#e.realpathSync(this.fullpath());return this.#P=this.resolve(e)}catch{this.#R()}}[ZF](e){if(e===this)return;e.isCWD=!1,this.isCWD=!0;let t=new Set([]),r=[],i=this;for(;i&&i.parent;)t.add(i),i.#x=r.join(this.sep),i.#C=r.join("/"),i=i.parent,r.push("..");for(i=e;i&&i.parent&&!t.has(i);)i.#x=void 0,i.#C=void 0,i=i.parent}},Xg=class n extends rn{static{o(this,"PathWin32")}sep="\\";splitSep=wY;constructor(e,t=ui,r,i,s,a,c){super(e,t,r,i,s,a,c)}newChild(e,t=ui,r={}){return new n(e,t,this.root,this.roots,this.nocase,this.childrenCache(),r)}getRootString(e){return ru.win32.parse(e).root}getRoot(e){if(e=bY(e.toUpperCase()),e===this.root.name)return this.root;for(let[t,r]of Object.entries(this.roots))if(this.sameRoot(e,t))return this.roots[e]=r;return this.roots[e]=new nu(e,this).root}sameRoot(e,t=this.root.name){return e=e.toUpperCase().replace(/\//g,"\\").replace(HF,"$1\\"),e===t}},Jg=class n extends rn{static{o(this,"PathPosix")}splitSep="/";sep="/";constructor(e,t=ui,r,i,s,a,c){super(e,t,r,i,s,a,c)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(e,t=ui,r={}){return new n(e,t,this.root,this.roots,this.nocase,this.childrenCache(),r)}},Zg=class{static{o(this,"PathScurryBase")}root;rootPath;roots;cwd;#e;#n;#r;nocase;#t;constructor(e=process.cwd(),t,r,{nocase:i,childrenCacheSize:s=16*1024,fs:a=ud}={}){this.#t=zF(a),(e instanceof URL||e.startsWith("file://"))&&(e=(0,GF.fileURLToPath)(e));let c=t.resolve(e);this.roots=Object.create(null),this.rootPath=this.parseRootPath(c),this.#e=new Yg,this.#n=new Yg,this.#r=new FE(s);let l=c.substring(this.rootPath.length).split(r);if(l.length===1&&!l[0]&&l.pop(),i===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=i,this.root=this.newRoot(this.#t),this.roots[this.rootPath]=this.root;let u=this.root,f=l.length-1,d=t.sep,h=this.rootPath,p=!1;for(let y of l){let v=f--;u=u.child(y,{relative:new Array(v).fill("..").join(d),relativePosix:new Array(v).fill("..").join("/"),fullpath:h+=(p?"":d)+y}),p=!0}this.cwd=u}depth(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.depth()}childrenCache(){return this.#r}resolve(...e){let t="";for(let s=e.length-1;s>=0;s--){let a=e[s];if(!(!a||a===".")&&(t=t?`${a}/${t}`:a,this.isAbsolute(a)))break}let r=this.#e.get(t);if(r!==void 0)return r;let i=this.cwd.resolve(t).fullpath();return this.#e.set(t,i),i}resolvePosix(...e){let t="";for(let s=e.length-1;s>=0;s--){let a=e[s];if(!(!a||a===".")&&(t=t?`${a}/${t}`:a,this.isAbsolute(a)))break}let r=this.#n.get(t);if(r!==void 0)return r;let i=this.cwd.resolve(t).fullpathPosix();return this.#n.set(t,i),i}relative(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relative()}relativePosix(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relativePosix()}basename(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.name}dirname(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),(e.parent||e).fullpath()}async readdir(e=this.cwd,t={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r}=t;if(e.canReaddir()){let i=await e.readdir();return r?i:i.map(s=>s.name)}else return[]}readdirSync(e=this.cwd,t={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0}=t;return e.canReaddir()?r?e.readdirSync():e.readdirSync().map(i=>i.name):[]}async lstat(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstat()}lstatSync(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e.withFileTypes,e=this.cwd);let r=await e.readlink();return t?r:r?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e.withFileTypes,e=this.cwd);let r=e.readlinkSync();return t?r:r?.fullpath()}async realpath(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e.withFileTypes,e=this.cwd);let r=await e.realpath();return t?r:r?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e.withFileTypes,e=this.cwd);let r=e.realpathSync();return t?r:r?.fullpath()}async walk(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t,c=[];(!s||s(e))&&c.push(r?e:e.fullpath());let l=new Set,u=o((d,h)=>{l.add(d),d.readdirCB((p,y)=>{if(p)return h(p);let v=y.length;if(!v)return h();let w=o(()=>{--v===0&&h()},"next");for(let b of y)(!s||s(b))&&c.push(r?b:b.fullpath()),i&&b.isSymbolicLink()?b.realpath().then(A=>A?.isUnknown()?A.lstat():A).then(A=>A?.shouldWalk(l,a)?u(A,w):w()):b.shouldWalk(l,a)?u(b,w):w()},!0)},"walk"),f=e;return new Promise((d,h)=>{u(f,p=>{if(p)return h(p);d(c)})})}walkSync(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t,c=[];(!s||s(e))&&c.push(r?e:e.fullpath());let l=new Set([e]);for(let u of l){let f=u.readdirSync();for(let d of f){(!s||s(d))&&c.push(r?d:d.fullpath());let h=d;if(d.isSymbolicLink()){if(!(i&&(h=d.realpathSync())))continue;h.isUnknown()&&h.lstatSync()}h.shouldWalk(l,a)&&l.add(h)}}return c}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,t={}){return typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd),this.stream(e,t)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t;(!s||s(e))&&(yield r?e:e.fullpath());let c=new Set([e]);for(let l of c){let u=l.readdirSync();for(let f of u){(!s||s(f))&&(yield r?f:f.fullpath());let d=f;if(f.isSymbolicLink()){if(!(i&&(d=f.realpathSync())))continue;d.isUnknown()&&d.lstatSync()}d.shouldWalk(c,a)&&c.add(d)}}}stream(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t,c=new io({objectMode:!0});(!s||s(e))&&c.write(r?e:e.fullpath());let l=new Set,u=[e],f=0,d=o(()=>{let h=!1;for(;!h;){let p=u.shift();if(!p){f===0&&c.end();return}f++,l.add(p);let y=o((w,b,A=!1)=>{if(w)return c.emit("error",w);if(i&&!A){let I=[];for(let j of b)j.isSymbolicLink()&&I.push(j.realpath().then(V=>V?.isUnknown()?V.lstat():V));if(I.length){Promise.all(I).then(()=>y(null,b,!0));return}}for(let I of b)I&&(!s||s(I))&&(c.write(r?I:I.fullpath())||(h=!0));f--;for(let I of b){let j=I.realpathCached()||I;j.shouldWalk(l,a)&&u.push(j)}h&&!c.flowing?c.once("drain",d):v||d()},"onReaddir"),v=!0;p.readdirCB(y,!0),v=!1}},"process");return d(),c}streamSync(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof rn||(t=e,e=this.cwd);let{withFileTypes:r=!0,follow:i=!1,filter:s,walkFilter:a}=t,c=new io({objectMode:!0}),l=new Set;(!s||s(e))&&c.write(r?e:e.fullpath());let u=[e],f=0,d=o(()=>{let h=!1;for(;!h;){let p=u.shift();if(!p){f===0&&c.end();return}f++,l.add(p);let y=p.readdirSync();for(let v of y)(!s||s(v))&&(c.write(r?v:v.fullpath())||(h=!0));f--;for(let v of y){let w=v;if(v.isSymbolicLink()){if(!(i&&(w=v.realpathSync())))continue;w.isUnknown()&&w.lstatSync()}w.shouldWalk(l,a)&&u.push(w)}}h&&!c.flowing&&c.once("drain",d)},"process");return d(),c}chdir(e=this.cwd){let t=this.cwd;this.cwd=typeof e=="string"?this.cwd.resolve(e):e,this.cwd[ZF](t)}},nu=class extends Zg{static{o(this,"PathScurryWin32")}sep="\\";constructor(e=process.cwd(),t={}){let{nocase:r=!0}=t;super(e,ru.win32,"\\",{...t,nocase:r}),this.nocase=r;for(let i=this.cwd;i;i=i.parent)i.nocase=this.nocase}parseRootPath(e){return ru.win32.parse(e).root.toUpperCase()}newRoot(e){return new Xg(this.rootPath,Ps,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")||e.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(e)}},iu=class extends Zg{static{o(this,"PathScurryPosix")}sep="/";constructor(e=process.cwd(),t={}){let{nocase:r=!1}=t;super(e,ru.posix,"/",{...t,nocase:r}),this.nocase=r}parseRootPath(e){return"/"}newRoot(e){return new Jg(this.rootPath,Ps,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")}},hd=class extends iu{static{o(this,"PathScurryDarwin")}constructor(e=process.cwd(),t={}){let{nocase:r=!0}=t;super(e,{...t,nocase:r})}},Gme=process.platform==="win32"?Xg:Jg,eD=process.platform==="win32"?nu:process.platform==="darwin"?hd:iu;var TY=o(n=>n.length>=1,"isPatternList"),AY=o(n=>n.length>=1,"isGlobList"),su=class n{static{o(this,"Pattern")}#e;#n;#r;length;#t;#c;#_;#i;#u;#s;#l=!0;constructor(e,t,r,i){if(!TY(e))throw new TypeError("empty pattern list");if(!AY(t))throw new TypeError("empty glob list");if(t.length!==e.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=e.length,r<0||r>=this.length)throw new TypeError("index out of range");if(this.#e=e,this.#n=t,this.#r=r,this.#t=i,this.#r===0){if(this.isUNC()){let[s,a,c,l,...u]=this.#e,[f,d,h,p,...y]=this.#n;u[0]===""&&(u.shift(),y.shift());let v=[s,a,c,l,""].join("/"),w=[f,d,h,p,""].join("/");this.#e=[v,...u],this.#n=[w,...y],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[s,...a]=this.#e,[c,...l]=this.#n;a[0]===""&&(a.shift(),l.shift());let u=s+"/",f=c+"/";this.#e=[u,...a],this.#n=[f,...l],this.length=this.#e.length}}}pattern(){return this.#e[this.#r]}isString(){return typeof this.#e[this.#r]=="string"}isGlobstar(){return this.#e[this.#r]===Kt}isRegExp(){return this.#e[this.#r]instanceof RegExp}globString(){return this.#_=this.#_||(this.#r===0?this.isAbsolute()?this.#n[0]+this.#n.slice(1).join("/"):this.#n.join("/"):this.#n.slice(this.#r).join("/"))}hasMore(){return this.length>this.#r+1}rest(){return this.#c!==void 0?this.#c:this.hasMore()?(this.#c=new n(this.#e,this.#n,this.#r+1,this.#t),this.#c.#s=this.#s,this.#c.#u=this.#u,this.#c.#i=this.#i,this.#c):this.#c=null}isUNC(){let e=this.#e;return this.#u!==void 0?this.#u:this.#u=this.#t==="win32"&&this.#r===0&&e[0]===""&&e[1]===""&&typeof e[2]=="string"&&!!e[2]&&typeof e[3]=="string"&&!!e[3]}isDrive(){let e=this.#e;return this.#i!==void 0?this.#i:this.#i=this.#t==="win32"&&this.#r===0&&this.length>1&&typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0])}isAbsolute(){let e=this.#e;return this.#s!==void 0?this.#s:this.#s=e[0]===""&&e.length>1||this.isDrive()||this.isUNC()}root(){let e=this.#e[0];return typeof e=="string"&&this.isAbsolute()&&this.#r===0?e:""}checkFollowGlobstar(){return!(this.#r===0||!this.isGlobstar()||!this.#l)}markFollowGlobstar(){return this.#r===0||!this.isGlobstar()||!this.#l?!1:(this.#l=!1,!0)}};var xY=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",au=class{static{o(this,"Ignore")}relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(e,{nobrace:t,nocase:r,noext:i,noglobstar:s,platform:a=xY}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=a,this.mmopts={dot:!0,nobrace:t,nocase:r,noext:i,noglobstar:s,optimizationLevel:2,platform:a,nocomment:!0,nonegate:!0};for(let c of e)this.add(c)}add(e){let t=new Gn(e,this.mmopts);for(let r=0;r<t.set.length;r++){let i=t.set[r],s=t.globParts[r];if(!i||!s)throw new Error("invalid pattern object");for(;i[0]==="."&&s[0]===".";)i.shift(),s.shift();let a=new su(i,s,0,this.platform),c=new Gn(a.globString(),this.mmopts),l=s[s.length-1]==="**",u=a.isAbsolute();u?this.absolute.push(c):this.relative.push(c),l&&(u?this.absoluteChildren.push(c):this.relativeChildren.push(c))}}ignored(e){let t=e.fullpath(),r=`${t}/`,i=e.relative()||".",s=`${i}/`;for(let a of this.relative)if(a.match(i)||a.match(s))return!0;for(let a of this.absolute)if(a.match(t)||a.match(r))return!0;return!1}childrenIgnored(e){let t=e.fullpath()+"/",r=(e.relative()||".")+"/";for(let i of this.relativeChildren)if(i.match(r))return!0;for(let i of this.absoluteChildren)if(i.match(t))return!0;return!1}};var DE=class n{static{o(this,"HasWalkedCache")}store;constructor(e=new Map){this.store=e}copy(){return new n(new Map(this.store))}hasWalked(e,t){return this.store.get(e.fullpath())?.has(t.globString())}storeWalked(e,t){let r=e.fullpath(),i=this.store.get(r);i?i.add(t.globString()):this.store.set(r,new Set([t.globString()]))}},NE=class{static{o(this,"MatchRecord")}store=new Map;add(e,t,r){let i=(t?2:0)|(r?1:0),s=this.store.get(e);this.store.set(e,s===void 0?i:i&s)}entries(){return[...this.store.entries()].map(([e,t])=>[e,!!(t&2),!!(t&1)])}},LE=class{static{o(this,"SubWalks")}store=new Map;add(e,t){if(!e.canReaddir())return;let r=this.store.get(e);r?r.find(i=>i.globString()===t.globString())||r.push(t):this.store.set(e,[t])}get(e){let t=this.store.get(e);if(!t)throw new Error("attempting to walk unknown path");return t}entries(){return this.keys().map(e=>[e,this.store.get(e)])}keys(){return[...this.store.keys()].filter(e=>e.canReaddir())}},pd=class n{static{o(this,"Processor")}hasWalkedCache;matches=new NE;subwalks=new LE;patterns;follow;dot;opts;constructor(e,t){this.opts=e,this.follow=!!e.follow,this.dot=!!e.dot,this.hasWalkedCache=t?t.copy():new DE}processPatterns(e,t){this.patterns=t;let r=t.map(i=>[e,i]);for(let[i,s]of r){this.hasWalkedCache.storeWalked(i,s);let a=s.root(),c=s.isAbsolute()&&this.opts.absolute!==!1;if(a){i=i.resolve(a==="/"&&this.opts.root!==void 0?this.opts.root:a);let d=s.rest();if(d)s=d;else{this.matches.add(i,!0,!1);continue}}if(i.isENOENT())continue;let l,u,f=!1;for(;typeof(l=s.pattern())=="string"&&(u=s.rest());)i=i.resolve(l),s=u,f=!0;if(l=s.pattern(),u=s.rest(),f){if(this.hasWalkedCache.hasWalked(i,s))continue;this.hasWalkedCache.storeWalked(i,s)}if(typeof l=="string"){let d=l===".."||l===""||l===".";this.matches.add(i.resolve(l),c,d);continue}else if(l===Kt){(!i.isSymbolicLink()||this.follow||s.checkFollowGlobstar())&&this.subwalks.add(i,s);let d=u?.pattern(),h=u?.rest();if(!u||(d===""||d===".")&&!h)this.matches.add(i,c,d===""||d===".");else if(d===".."){let p=i.parent||i;h?this.hasWalkedCache.hasWalked(p,h)||this.subwalks.add(p,h):this.matches.add(p,c,!0)}}else l instanceof RegExp&&this.subwalks.add(i,s)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new n(this.opts,this.hasWalkedCache)}filterEntries(e,t){let r=this.subwalks.get(e),i=this.child();for(let s of t)for(let a of r){let c=a.isAbsolute(),l=a.pattern(),u=a.rest();l===Kt?i.testGlobstar(s,a,u,c):l instanceof RegExp?i.testRegExp(s,l,u,c):i.testString(s,l,u,c)}return i}testGlobstar(e,t,r,i){if((this.dot||!e.name.startsWith("."))&&(t.hasMore()||this.matches.add(e,i,!1),e.canReaddir()&&(this.follow||!e.isSymbolicLink()?this.subwalks.add(e,t):e.isSymbolicLink()&&(r&&t.checkFollowGlobstar()?this.subwalks.add(e,r):t.markFollowGlobstar()&&this.subwalks.add(e,t)))),r){let s=r.pattern();if(typeof s=="string"&&s!==".."&&s!==""&&s!==".")this.testString(e,s,r.rest(),i);else if(s===".."){let a=e.parent||e;this.subwalks.add(a,r)}else s instanceof RegExp&&this.testRegExp(e,s,r.rest(),i)}}testRegExp(e,t,r,i){t.test(e.name)&&(r?this.subwalks.add(e,r):this.matches.add(e,i,!1))}testString(e,t,r,i){e.isNamed(t)&&(r?this.subwalks.add(e,r):this.matches.add(e,i,!1))}};var CY=o((n,e)=>typeof n=="string"?new au([n],e):Array.isArray(n)?new au(n,e):n,"makeIgnore"),ey=class{static{o(this,"GlobUtil")}path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#n;#r;signal;maxDepth;includeChildMatches;constructor(e,t,r){if(this.patterns=e,this.path=t,this.opts=r,this.#r=!r.posix&&r.platform==="win32"?"\\":"/",this.includeChildMatches=r.includeChildMatches!==!1,(r.ignore||!this.includeChildMatches)&&(this.#n=CY(r.ignore??[],r),!this.includeChildMatches&&typeof this.#n.add!="function")){let i="cannot ignore child matches, ignore lacks add() method.";throw new Error(i)}this.maxDepth=r.maxDepth||1/0,r.signal&&(this.signal=r.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#t(e){return this.seen.has(e)||!!this.#n?.ignored?.(e)}#c(e){return!!this.#n?.childrenIgnored?.(e)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let e;for(;!this.paused&&(e=this.#e.shift());)e()}onResume(e){this.signal?.aborted||(this.paused?this.#e.push(e):e())}async matchCheck(e,t){if(t&&this.opts.nodir)return;let r;if(this.opts.realpath){if(r=e.realpathCached()||await e.realpath(),!r)return;e=r}let s=e.isUnknown()||this.opts.stat?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let a=await s.realpath();a&&(a.isUnknown()||this.opts.stat)&&await a.lstat()}return this.matchCheckTest(s,t)}matchCheckTest(e,t){return e&&(this.maxDepth===1/0||e.depth()<=this.maxDepth)&&(!t||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!this.#t(e)?e:void 0}matchCheckSync(e,t){if(t&&this.opts.nodir)return;let r;if(this.opts.realpath){if(r=e.realpathCached()||e.realpathSync(),!r)return;e=r}let s=e.isUnknown()||this.opts.stat?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let a=s.realpathSync();a&&(a?.isUnknown()||this.opts.stat)&&a.lstatSync()}return this.matchCheckTest(s,t)}matchFinish(e,t){if(this.#t(e))return;if(!this.includeChildMatches&&this.#n?.add){let s=`${e.relativePosix()}/**`;this.#n.add(s)}let r=this.opts.absolute===void 0?t:this.opts.absolute;this.seen.add(e);let i=this.opts.mark&&e.isDirectory()?this.#r:"";if(this.opts.withFileTypes)this.matchEmit(e);else if(r){let s=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(s+i)}else{let s=this.opts.posix?e.relativePosix():e.relative(),a=this.opts.dotRelative&&!s.startsWith(".."+this.#r)?"."+this.#r:"";this.matchEmit(s?a+s+i:"."+i)}}async match(e,t,r){let i=await this.matchCheck(e,r);i&&this.matchFinish(i,t)}matchSync(e,t,r){let i=this.matchCheckSync(e,r);i&&this.matchFinish(i,t)}walkCB(e,t,r){this.signal?.aborted&&r(),this.walkCB2(e,t,new pd(this.opts),r)}walkCB2(e,t,r,i){if(this.#c(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2(e,t,r,i));return}r.processPatterns(e,t);let s=1,a=o(()=>{--s===0&&i()},"next");for(let[c,l,u]of r.matches.entries())this.#t(c)||(s++,this.match(c,l,u).then(()=>a()));for(let c of r.subwalkTargets()){if(this.maxDepth!==1/0&&c.depth()>=this.maxDepth)continue;s++;let l=c.readdirCached();c.calledReaddir()?this.walkCB3(c,l,r,a):c.readdirCB((u,f)=>this.walkCB3(c,f,r,a),!0)}a()}walkCB3(e,t,r,i){r=r.filterEntries(e,t);let s=1,a=o(()=>{--s===0&&i()},"next");for(let[c,l,u]of r.matches.entries())this.#t(c)||(s++,this.match(c,l,u).then(()=>a()));for(let[c,l]of r.subwalks.entries())s++,this.walkCB2(c,l,r.child(),a);a()}walkCBSync(e,t,r){this.signal?.aborted&&r(),this.walkCB2Sync(e,t,new pd(this.opts),r)}walkCB2Sync(e,t,r,i){if(this.#c(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2Sync(e,t,r,i));return}r.processPatterns(e,t);let s=1,a=o(()=>{--s===0&&i()},"next");for(let[c,l,u]of r.matches.entries())this.#t(c)||this.matchSync(c,l,u);for(let c of r.subwalkTargets()){if(this.maxDepth!==1/0&&c.depth()>=this.maxDepth)continue;s++;let l=c.readdirSync();this.walkCB3Sync(c,l,r,a)}a()}walkCB3Sync(e,t,r,i){r=r.filterEntries(e,t);let s=1,a=o(()=>{--s===0&&i()},"next");for(let[c,l,u]of r.matches.entries())this.#t(c)||this.matchSync(c,l,u);for(let[c,l]of r.subwalks.entries())s++,this.walkCB2Sync(c,l,r.child(),a);a()}},md=class extends ey{static{o(this,"GlobWalker")}matches=new Set;constructor(e,t,r){super(e,t,r)}matchEmit(e){this.matches.add(e)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((e,t)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?t(this.signal.reason):e(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},gd=class extends ey{static{o(this,"GlobStream")}results;constructor(e,t,r){super(e,t,r),this.results=new io({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(e){this.results.write(e),this.results.flowing||this.pause()}stream(){let e=this.path;return e.isUnknown()?e.lstat().then(()=>{this.walkCB(e,this.patterns,()=>this.results.end())}):this.walkCB(e,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};var IY=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Qi=class{static{o(this,"Glob")}absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(e,t){if(!t)throw new TypeError("glob options required");if(this.withFileTypes=!!t.withFileTypes,this.signal=t.signal,this.follow=!!t.follow,this.dot=!!t.dot,this.dotRelative=!!t.dotRelative,this.nodir=!!t.nodir,this.mark=!!t.mark,t.cwd?(t.cwd instanceof URL||t.cwd.startsWith("file://"))&&(t.cwd=(0,tD.fileURLToPath)(t.cwd)):this.cwd="",this.cwd=t.cwd||"",this.root=t.root,this.magicalBraces=!!t.magicalBraces,this.nobrace=!!t.nobrace,this.noext=!!t.noext,this.realpath=!!t.realpath,this.absolute=t.absolute,this.includeChildMatches=t.includeChildMatches!==!1,this.noglobstar=!!t.noglobstar,this.matchBase=!!t.matchBase,this.maxDepth=typeof t.maxDepth=="number"?t.maxDepth:1/0,this.stat=!!t.stat,this.ignore=t.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof e=="string"&&(e=[e]),this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(e=e.map(l=>l.replace(/\\/g,"/"))),this.matchBase){if(t.noglobstar)throw new TypeError("base matching requires globstar");e=e.map(l=>l.includes("/")?l:`./**/${l}`)}if(this.pattern=e,this.platform=t.platform||IY,this.opts={...t,platform:this.platform},t.scurry){if(this.scurry=t.scurry,t.nocase!==void 0&&t.nocase!==t.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let l=t.platform==="win32"?nu:t.platform==="darwin"?hd:t.platform?iu:eD;this.scurry=new l(this.cwd,{nocase:t.nocase,fs:t.fs})}this.nocase=this.scurry.nocase;let r=this.platform==="darwin"||this.platform==="win32",i={...t,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:r,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},s=this.pattern.map(l=>new Gn(l,i)),[a,c]=s.reduce((l,u)=>(l[0].push(...u.set),l[1].push(...u.globParts),l),[[],[]]);this.patterns=a.map((l,u)=>{let f=c[u];if(!f)throw new Error("invalid pattern object");return new su(l,f,0,this.platform)})}async walk(){return[...await new md(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new md(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new gd(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new gd(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};var kE=o((n,e={})=>{Array.isArray(n)||(n=[n]);for(let t of n)if(new Gn(t,e).hasMagic())return!0;return!1},"hasMagic");function ry(n,e={}){return new Qi(n,e).streamSync()}o(ry,"globStreamSync");function nD(n,e={}){return new Qi(n,e).stream()}o(nD,"globStream");function iD(n,e={}){return new Qi(n,e).walkSync()}o(iD,"globSync");async function rD(n,e={}){return new Qi(n,e).walk()}o(rD,"glob_");function ny(n,e={}){return new Qi(n,e).iterateSync()}o(ny,"globIterateSync");function sD(n,e={}){return new Qi(n,e).iterate()}o(sD,"globIterate");var RY=ry,PY=Object.assign(nD,{sync:ry}),OY=ny,FY=Object.assign(sD,{sync:ny}),DY=Object.assign(iD,{stream:ry,iterate:ny}),ty=Object.assign(rD,{glob:rD,globSync:iD,sync:DY,globStream:nD,stream:PY,globStreamSync:ry,streamSync:RY,globIterate:sD,iterate:FY,globIterateSync:ny,iterateSync:OY,Glob:Qi,hasMagic:kE,escape:Xl,unescape:Gi});ty.glob=ty;var oc=K(Dt());var Pt=class{constructor(e){this.rootPath=e}static{o(this,"NodeFsAdapter")}async readFile(e){let t=this.resolvePath(e);if(!await mr.default.pathExists(t))throw new oc.FileNotFoundError(e);return mr.default.readFile(t,"utf-8")}async fileExists(e){let t=this.resolvePath(e);return mr.default.pathExists(t)}async getFileMetadata(e){let t=await this.readFile(e);return this.extractFrontmatter(t)}async createFile(e,t){let r=this.resolvePath(e);if(await mr.default.pathExists(r))throw new oc.FileAlreadyExistsError(e);return await mr.default.ensureDir(ao.default.dirname(r)),await mr.default.writeFile(r,t,"utf-8"),e}async updateFile(e,t){let r=this.resolvePath(e);if(!await mr.default.pathExists(r))throw new oc.FileNotFoundError(e);await mr.default.writeFile(r,t,"utf-8")}async writeFile(e,t){let r=this.resolvePath(e);await mr.default.ensureDir(ao.default.dirname(r)),await mr.default.writeFile(r,t,"utf-8")}async deleteFile(e){let t=this.resolvePath(e);if(!await mr.default.pathExists(t))throw new oc.FileNotFoundError(e);await mr.default.remove(t)}async renameFile(e,t){let r=this.resolvePath(e),i=this.resolvePath(t);if(!await mr.default.pathExists(r))throw new oc.FileNotFoundError(e);await mr.default.ensureDir(ao.default.dirname(i)),await mr.default.move(r,i)}async createDirectory(e){let t=this.resolvePath(e);await mr.default.ensureDir(t)}async directoryExists(e){let t=this.resolvePath(e);return await mr.default.pathExists(t)?(await mr.default.stat(t)).isDirectory():!1}async getMarkdownFiles(e){let t=e?this.resolvePath(e):this.rootPath,r=ao.default.join(t,"**/*.md");return(await ty(r,{nodir:!0})).map(a=>ao.default.relative(this.rootPath,a))}async findFilesByMetadata(e){let t=await this.getMarkdownFiles(),r=[];for(let i of t)try{let s=await this.getFileMetadata(i);this.matchesQuery(s,e)&&r.push(i)}catch{continue}return r}async findFileByUID(e){let t=await this.findFilesByMetadata({exo__Asset_uid:e});return t.length>0?t[0]:null}resolvePath(e){return ao.default.isAbsolute(e)?e:ao.default.join(this.rootPath,e)}extractFrontmatter(e){let t=/^---\n([\s\S]*?)\n---/,r=e.match(t);if(!r)return{};try{let i=sr.load(r[1]);return typeof i=="object"&&i!==null?i:{}}catch{return{}}}matchesQuery(e,t){for(let[r,i]of Object.entries(t)){let s=e[r];if(Array.isArray(s)){if(!s.some(a=>this.normalizeValue(a)===this.normalizeValue(i)))return!1}else if(this.normalizeValue(s)!==this.normalizeValue(i))return!1}return!0}normalizeValue(e){return e==null?"":String(e).replace(/["'[\]]/g,"").trim()}};var yd=K(require("path")),ME=K(Za());var ou=class{constructor(e){this.vaultRoot=e}static{o(this,"PathResolver")}resolve(e){if(!yd.default.isAbsolute(e))return yd.default.resolve(this.vaultRoot,e);let t=yd.default.resolve(e),r=yd.default.resolve(this.vaultRoot);if(!t.startsWith(r))throw new Ke(`File path ${e} is outside vault root ${this.vaultRoot}`,"Provide a file path within the vault directory.",{filepath:e,vaultRoot:this.vaultRoot});return t}validate(e){if(!ME.default.existsSync(e))throw new Bf(e);if(!ME.default.statSync(e).isFile())throw new Ke(`Not a file: ${e}`,"Provide a path to a file, not a directory.",{filepath:e});if(!e.endsWith(".md"))throw new Ke(`Not a Markdown file: ${e}`,"Provide a path to a .md file.",{filepath:e})}getVaultRoot(){return this.vaultRoot}};var fD=K(Dt());var aD=K(Dt());var Ki=class{static{o(this,"BaseCommandExecutor")}constructor(e){this.pathResolver=e.pathResolver,this.fsAdapter=e.fsAdapter,this.frontmatterService=e.frontmatterService,this.dryRun=e.dryRun}resolveAndValidate(e){let t=this.pathResolver.resolve(e);this.pathResolver.validate(t);let r=t.replace(this.pathResolver.getVaultRoot()+"/","");return{resolvedPath:t,relativePath:r}}getCurrentTimestamp(){return aD.DateFormatter.toLocalTimestamp(new Date)}isAssetArchived(e){if(e?.exo__Asset_isArchived===!0)return!0;let t=e?.archived;if(t==null)return!1;if(typeof t=="boolean")return t;if(typeof t=="number")return t!==0;if(typeof t=="string"){let r=t.toLowerCase().trim();return r==="true"||r==="yes"||r==="1"}return!1}extractAliasesFromFrontmatter(e){let t=e.match(/aliases:\s*\n((?: - .*\n?)*)/);return t?t[1].split(`
618
+ `).filter(i=>i.trim()).map(i=>i.replace(/^\s*-\s*/,"").trim()):[]}};var _d=class extends Ki{static{o(this,"StatusCommandExecutor")}constructor(e){super(e)}async executeStart(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.readFile(t),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusDoing]]"');s=this.frontmatterService.updateProperty(s,"ems__Effort_startTimestamp",i),await this.fsAdapter.updateFile(t,s),console.log(`\u2705 Started: ${e}`),console.log(" Status: Doing"),console.log(` Start time: ${i}`),process.exit(0)}catch(t){D.handle(t)}}async executeComplete(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.readFile(t),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusDone]]"');s=this.frontmatterService.updateProperty(s,"ems__Effort_endTimestamp",i),s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),await this.fsAdapter.updateFile(t,s),console.log(`\u2705 Completed: ${e}`),console.log(" Status: Done"),console.log(` Completion time: ${i}`),process.exit(0)}catch(t){D.handle(t)}}async executeTrash(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.readFile(t),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusTrashed]]"');s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),await this.fsAdapter.updateFile(t,s),console.log(`\u2705 Trashed: ${e}`),console.log(" Status: Trashed"),console.log(` Resolution time: ${i}`),process.exit(0)}catch(t){D.handle(t)}}async executeArchive(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.readFile(t),i=this.frontmatterService.updateProperty(r,"archived","true");i=this.frontmatterService.removeProperty(i,"aliases"),await this.fsAdapter.updateFile(t,i),console.log(`\u2705 Archived: ${e}`),console.log(" Archived: true"),console.log(" Aliases removed"),process.exit(0)}catch(t){D.handle(t)}}async executeMoveToBacklog(e){try{await this.updateStatus(e,"ems__EffortStatusBacklog","Backlog"),process.exit(0)}catch(t){D.handle(t)}}async executeMoveToAnalysis(e){try{await this.updateStatus(e,"ems__EffortStatusAnalysis","Analysis"),process.exit(0)}catch(t){D.handle(t)}}async executeMoveToToDo(e){try{await this.updateStatus(e,"ems__EffortStatusToDo","ToDo"),process.exit(0)}catch(t){D.handle(t)}}async updateStatus(e,t,r){let{relativePath:i}=this.resolveAndValidate(e),s=await this.fsAdapter.readFile(i),a=this.frontmatterService.updateProperty(s,"ems__Effort_status",`"[[${t}]]"`);await this.fsAdapter.updateFile(i,a),console.log(`\u2705 Moved to ${r}: ${e}`),console.log(` Status: ${r}`)}};var Ur=[];for(let n=0;n<256;++n)Ur.push((n+256).toString(16).slice(1));function oD(n,e=0){return(Ur[n[e+0]]+Ur[n[e+1]]+Ur[n[e+2]]+Ur[n[e+3]]+"-"+Ur[n[e+4]]+Ur[n[e+5]]+"-"+Ur[n[e+6]]+Ur[n[e+7]]+"-"+Ur[n[e+8]]+Ur[n[e+9]]+"-"+Ur[n[e+10]]+Ur[n[e+11]]+Ur[n[e+12]]+Ur[n[e+13]]+Ur[n[e+14]]+Ur[n[e+15]]).toLowerCase()}o(oD,"unsafeStringify");var cD=require("node:crypto");var sy=new Uint8Array(256),iy=sy.length;function jE(){return iy>sy.length-16&&((0,cD.randomFillSync)(sy),iy=0),sy.slice(iy,iy+=16)}o(jE,"rng");var lD=require("node:crypto"),$E={randomUUID:lD.randomUUID};function LY(n,e,t){n=n||{};let r=n.random??n.rng?.()??jE();if(r.length<16)throw new Error("Random bytes length must be >= 16");if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){if(t=t||0,t<0||t+16>e.length)throw new RangeError(`UUID byte range ${t}:${t+15} is out of buffer bounds`);for(let i=0;i<16;++i)e[t+i]=r[i];return e}return oD(r)}o(LY,"_v4");function kY(n,e,t){return $E.randomUUID&&!e&&!n?$E.randomUUID():LY(n,e,t)}o(kY,"v4");var Sd=kY;var cu=K(Dt());var vd=class extends Ki{static{o(this,"AssetCreationExecutor")}constructor(e){super(e)}async executeCreateTask(e,t,r={}){try{await this.createAsset(e,t,"ems__Task",r),process.exit(0)}catch(i){D.handle(i)}}async executeCreateMeeting(e,t,r={}){try{await this.createAsset(e,t,"ems__Meeting",r),process.exit(0)}catch(i){D.handle(i)}}async executeCreateProject(e,t,r={}){try{await this.createAsset(e,t,"ems__Project",r),process.exit(0)}catch(i){D.handle(i)}}async executeCreateArea(e,t,r={}){try{await this.createAsset(e,t,"ems__Area",r),process.exit(0)}catch(i){D.handle(i)}}async createAsset(e,t,r,i={}){if(!t||t.trim().length===0)throw new Error("Label cannot be empty");let s=t.trim(),{relativePath:a}=this.resolveAndValidate(e);if(await this.fsAdapter.fileExists(a))throw new cu.FileAlreadyExistsError(e);let l=Sd(),u=this.buildAssetFrontmatter(r,l,s,i),f=cu.MetadataHelpers.buildFileContent(u);await this.fsAdapter.createFile(a,f),console.log(`\u2705 Created ${this.getAssetTypeName(r)}: ${e}`),console.log(` UID: ${l}`),console.log(` Label: ${s}`),console.log(` Class: ${r}`)}buildAssetFrontmatter(e,t,r,i={}){let s=cu.DateFormatter.toLocalTimestamp(new Date),a={exo__Asset_isDefinedBy:'"[[Ontology/EMS]]"',exo__Asset_uid:t,exo__Asset_label:r,exo__Asset_createdAt:s,exo__Instance_class:[`"[[${e}]]"`],aliases:[r]};return(e==="ems__Task"||e==="ems__Project"||e==="ems__Meeting")&&(a.ems__Effort_status='"[[ems__EffortStatusDraft]]"'),i.prototype&&(a.exo__Asset_prototype=`"[[${i.prototype}]]"`),i.area&&(a.ems__Effort_area=`"[[${i.area}]]"`),i.parent&&(a.ems__Effort_parent=`"[[${i.parent}]]"`),a}getAssetTypeName(e){return{ems__Task:"task",ems__Meeting:"meeting",ems__Project:"project",ems__Area:"area"}[e]||"asset"}};var BE=K(require("path"));var uD=K(Dt());var bd=class extends Ki{static{o(this,"PropertyCommandExecutor")}constructor(e){super(e)}async executeRenameToUid(e){try{let{relativePath:t}=this.resolveAndValidate(e),r=await this.fsAdapter.getFileMetadata(t);if(!r.exo__Asset_uid)throw new Error("Asset missing exo__Asset_uid property");let i=BE.default.basename(t,".md"),s=r.exo__Asset_uid;if(i===s&&(console.log(`\u2705 Already renamed: ${e}`),console.log(` Current filename matches UID: ${s}.md`),process.exit(0)),!r.exo__Asset_label||r.exo__Asset_label.trim()===""){let l=await this.fsAdapter.readFile(t),u=this.frontmatterService.updateProperty(l,"exo__Asset_label",i),f=this.isAssetArchived(r),d=u;f||(d=this.frontmatterService.updateProperty(u,"aliases",`
619
619
  - ${i}`)),await this.fsAdapter.updateFile(t,d),console.log(` Updated label: "${i}"`)}let a=BE.default.dirname(t),c=a!=="."?`${a}/${s}.md`:`${s}.md`;await this.fsAdapter.renameFile(t,c),console.log("\u2705 Renamed to UID format"),console.log(` Old: ${t}`),console.log(` New: ${c}`),process.exit(0)}catch(t){D.handle(t)}}async executeUpdateLabel(e,t){try{if(!t||t.trim().length===0)throw new Error("Label cannot be empty");let r=t.trim(),{relativePath:i}=this.resolveAndValidate(e),s=await this.fsAdapter.readFile(i),a=this.frontmatterService.updateProperty(s,"exo__Asset_label",r),c=this.frontmatterService.parse(a),l=this.extractAliasesFromFrontmatter(c.content);if(l.includes(r)||(l.length===0?a=this.frontmatterService.updateProperty(a,"aliases",`
620
620
  - ${r}`):a=this.frontmatterService.updateProperty(a,"aliases",`${l.map(u=>`
621
621
  - ${u}`).join("")}
622
622
  - ${r}`)),this.dryRun){if(console.log("\u{1F50D} DRY RUN: Preview of changes (not applied)"),console.log(` File: ${e}`),console.log(" Changes:"),console.log(` \u2022 exo__Asset_label: "${r}"`),l.includes(r))console.log(" \u2022 aliases: unchanged (label already present)");else{let u=l.length===0?[r]:[...l,r];console.log(` \u2022 aliases: [${u.map(f=>`"${f}"`).join(", ")}]`)}console.log(`
623
623
  \u{1F4A1} Run without --dry-run to apply changes`),process.exit(0)}await this.fsAdapter.updateFile(i,a),console.log("\u2705 Updated label"),console.log(` File: ${e}`),console.log(` New label: "${r}"`),console.log(" Aliases synchronized"),process.exit(0)}catch(r){D.handle(r)}}async executeSchedule(e,t){try{await this.updatePlannedTimestamp(e,t,"ems__Effort_plannedStartTimestamp"),process.exit(0)}catch(r){D.handle(r)}}async executeSetDeadline(e,t){try{await this.updatePlannedTimestamp(e,t,"ems__Effort_plannedEndTimestamp"),process.exit(0)}catch(r){D.handle(r)}}async updatePlannedTimestamp(e,t,r){let{relativePath:i}=this.resolveAndValidate(e);if(!await this.fsAdapter.fileExists(i))throw new Error(`File not found: ${e}`);if(!/^\d{4}-\d{2}-\d{2}$/.test(t))throw new Error(`Invalid date format: ${t}. Expected YYYY-MM-DD (e.g., 2025-11-25)`);let a=uD.DateFormatter.toTimestampAtStartOfDay(t),c=await this.fsAdapter.readFile(i),l=this.frontmatterService.updateProperty(c,r,a);await this.fsAdapter.writeFile(i,l),console.log(`\u2705 ${r==="ems__Effort_plannedStartTimestamp"?"Scheduled":"Set deadline for"}: ${e}`),console.log(` Date: ${t}`),console.log(` Timestamp: ${a}`)}};var oo=K(require("path"));var wd=class extends Ki{static{o(this,"FolderRepairExecutor")}constructor(e){super(e)}async executeRepairFolder(e){try{let{relativePath:t}=this.resolveAndValidate(e),i=(await this.fsAdapter.getFileMetadata(t))?.exo__Asset_isDefinedBy;if(!i)throw new Error("Cannot determine expected folder: missing exo__Asset_isDefinedBy");let s=this.extractReference(i);if(!s)throw new Error("Cannot determine expected folder: invalid exo__Asset_isDefinedBy format");let a=await this.findReferencedFile(s,t);if(!a)throw new Error(`Cannot determine expected folder: referenced asset not found: ${s}`);let c=oo.default.dirname(a),l=c==="."?"":c,u=oo.default.dirname(t),f=u==="."?"":u;if(this.normalizePath(f)===this.normalizePath(l))return console.log("\u2705 Already in correct folder"),console.log(` File: ${e}`),console.log(` Folder: ${l||"(root)"}`),process.exit(0),{moved:!1,oldPath:t,newPath:t,expectedFolder:l};if(this.dryRun){let y=oo.default.basename(t),v=l?`${l}/${y}`:y;return console.log("\u{1F50D} DRY RUN: Preview of changes (not applied)"),console.log(` File: ${e}`),console.log(` Current folder: ${f||"(root)"}`),console.log(` Expected folder: ${l||"(root)"}`),console.log(` Would move to: ${v}`),console.log(`
624
624
  \u{1F4A1} Run without --dry-run to apply changes`),process.exit(0),{moved:!1,oldPath:t,newPath:v,expectedFolder:l}}let d=oo.default.basename(t),h=l?`${l}/${d}`:d;if(await this.fsAdapter.fileExists(h))throw new Error(`Cannot move file: ${h} already exists`);return l&&(await this.fsAdapter.directoryExists(l)||await this.fsAdapter.createDirectory(l)),await this.fsAdapter.renameFile(t,h),console.log("\u2705 Moved to correct folder"),console.log(` Old path: ${t}`),console.log(` New path: ${h}`),console.log(` Expected folder: ${l||"(root)"}`),process.exit(0),{moved:!0,oldPath:t,newPath:h,expectedFolder:l}}catch(t){D.handle(t)}}extractReference(e){if(typeof e!="string")return null;let t=e.trim().replace(/^["']|["']$/g,"");return t=t.replace(/^\[\[|\]\]$/g,""),t||null}async findReferencedFile(e,t){let r=e.endsWith(".md")?e:`${e}.md`;if(e.includes("/")&&await this.fsAdapter.fileExists(r))return r;let i=oo.default.dirname(t),s=i?`${i}/${r}`:r;if(await this.fsAdapter.fileExists(s))return s;let c=await this.fsAdapter.findFileByUID(e);return c||(await this.fsAdapter.getMarkdownFiles()).find(f=>{let d=oo.default.basename(f,".md"),h=oo.default.basename(r,".md");return d===h})||null}normalizePath(e){return e.replace(/\\/g,"/").replace(/^\.\//,"").replace(/\/$/,"")}};var ay=class{static{o(this,"CommandExecutor")}constructor(e,t=!1){this.context={pathResolver:new ou(e),fsAdapter:new Pt(e),frontmatterService:new fD.FrontmatterService,dryRun:t},this.statusExecutor=new _d(this.context),this.creationExecutor=new vd(this.context),this.propertyExecutor=new bd(this.context),this.folderRepairExecutor=new wd(this.context)}async execute(e,t,r){try{let i=this.context.pathResolver.resolve(t);this.context.pathResolver.validate(i),await this.context.fsAdapter.readFile(i.replace(this.context.pathResolver.getVaultRoot()+"/","")),console.log("\u2705 Command infrastructure verified"),console.log(` Command: ${e}`),console.log(` File: ${i}`),console.log(` Vault: ${this.context.pathResolver.getVaultRoot()}`),Object.keys(r).length>0&&console.log(` Options: ${JSON.stringify(r,null,2)}`),console.log(`
625
- \u{1F4DD} Note: Actual command execution will be implemented in follow-up issues.`),console.log(" This PR establishes the infrastructure foundation."),process.exit(0)}catch(i){D.handle(i)}}getVaultRoot(){return this.context.pathResolver.getVaultRoot()}async executeStart(e){return this.statusExecutor.executeStart(e)}async executeComplete(e){return this.statusExecutor.executeComplete(e)}async executeTrash(e){return this.statusExecutor.executeTrash(e)}async executeArchive(e){return this.statusExecutor.executeArchive(e)}async executeMoveToBacklog(e){return this.statusExecutor.executeMoveToBacklog(e)}async executeMoveToAnalysis(e){return this.statusExecutor.executeMoveToAnalysis(e)}async executeMoveToToDo(e){return this.statusExecutor.executeMoveToToDo(e)}async executeCreateTask(e,t,r={}){return this.creationExecutor.executeCreateTask(e,t,r)}async executeCreateMeeting(e,t,r={}){return this.creationExecutor.executeCreateMeeting(e,t,r)}async executeCreateProject(e,t,r={}){return this.creationExecutor.executeCreateProject(e,t,r)}async executeCreateArea(e,t,r={}){return this.creationExecutor.executeCreateArea(e,t,r)}async executeRenameToUid(e){return this.propertyExecutor.executeRenameToUid(e)}async executeUpdateLabel(e,t){return this.propertyExecutor.executeUpdateLabel(e,t)}async executeSchedule(e,t){return this.propertyExecutor.executeSchedule(e,t)}async executeSetDeadline(e,t){return this.propertyExecutor.executeSetDeadline(e,t)}async executeRepairFolder(e){return this.folderRepairExecutor.executeRepairFolder(e)}};function Ur(n,e,t,r,i){if(n==="json"){let s={command:e,filepath:t,action:r,...i&&{changes:i}},a=X.success(s);console.log(JSON.stringify(a,null,2))}else console.log(`\u2705 ${r}`)}o(Ur,"outputResult");function cc(n,e,t,r){let i=new Ke(`--${e} option is required for ${t} command`,r,{command:t,missingOption:e});D.handle(i)}o(cc,"handleMissingOption");function hD(){return new ae("command").description("Execute plugin command on single asset").argument("<command-name>","Command to execute (rename-to-uid, start, complete, schedule, set-deadline, etc.)").argument("<filepath>","Path to asset file (relative to vault root or absolute)").option("--vault <path>","Path to Obsidian vault",process.cwd()).option("--label <value>","Asset label (required for update-label and creation commands)").option("--prototype <uid>","Prototype UID for inheritance (creation commands)").option("--area <uid>","Area UID for effort linkage (creation commands)").option("--parent <uid>","Parent UID for effort linkage (creation commands)").option("--date <value>","Date in YYYY-MM-DD format (required for schedule and set-deadline commands)").option("--dry-run","Preview changes without modifying files").option("--format <type>","Output format: text|json (default: text)","text").action(async(n,e,t)=>{let r=t.format||"text";D.setFormat(r),n==="start"&&console.error("\u26A0\uFE0F DEPRECATED: `command start <path>` is deprecated. Use `dyncommand exec <uid>` instead. `command start <path>` will be removed in 2 minor releases (T7.3).");try{let i=(0,dD.resolve)(t.vault),s=new ay(i,t.dryRun);switch(n){case"rename-to-uid":await s.executeRenameToUid(e),Ur(r,n,e,"Renamed file to UID-based name");break;case"update-label":t.label||cc(r,"label","update-label",'exocortex command update-label <filepath> --label "<value>"'),await s.executeUpdateLabel(e,t.label),Ur(r,n,e,`Updated label to "${t.label}"`,{label:t.label});break;case"start":await s.executeStart(e),Ur(r,n,e,"Started task");break;case"complete":await s.executeComplete(e),Ur(r,n,e,"Completed task");break;case"trash":await s.executeTrash(e),Ur(r,n,e,"Moved task to trash");break;case"archive":await s.executeArchive(e),Ur(r,n,e,"Archived task");break;case"move-to-backlog":await s.executeMoveToBacklog(e),Ur(r,n,e,"Moved task to backlog");break;case"move-to-analysis":await s.executeMoveToAnalysis(e),Ur(r,n,e,"Moved task to analysis");break;case"move-to-todo":await s.executeMoveToToDo(e),Ur(r,n,e,"Moved task to todo");break;case"create-task":t.label||cc(r,"label","create-task",'exocortex command create-task <filepath> --label "<value>"'),await s.executeCreateTask(e,t.label,{prototype:t.prototype,area:t.area,parent:t.parent}),Ur(r,n,e,`Created task "${t.label}"`,{label:t.label,prototype:t.prototype,area:t.area,parent:t.parent});break;case"create-meeting":t.label||cc(r,"label","create-meeting",'exocortex command create-meeting <filepath> --label "<value>"'),await s.executeCreateMeeting(e,t.label,{prototype:t.prototype,area:t.area,parent:t.parent}),Ur(r,n,e,`Created meeting "${t.label}"`,{label:t.label,prototype:t.prototype,area:t.area,parent:t.parent});break;case"create-project":t.label||cc(r,"label","create-project",'exocortex command create-project <filepath> --label "<value>"'),await s.executeCreateProject(e,t.label,{prototype:t.prototype,area:t.area,parent:t.parent}),Ur(r,n,e,`Created project "${t.label}"`,{label:t.label,prototype:t.prototype,area:t.area,parent:t.parent});break;case"create-area":t.label||cc(r,"label","create-area",'exocortex command create-area <filepath> --label "<value>"'),await s.executeCreateArea(e,t.label,{prototype:t.prototype,area:t.area,parent:t.parent}),Ur(r,n,e,`Created area "${t.label}"`,{label:t.label,prototype:t.prototype,area:t.area,parent:t.parent});break;case"schedule":t.date||cc(r,"date","schedule",'exocortex command schedule <filepath> --date "YYYY-MM-DD"'),await s.executeSchedule(e,t.date),Ur(r,n,e,`Scheduled task for ${t.date}`,{date:t.date});break;case"set-deadline":t.date||cc(r,"date","set-deadline",'exocortex command set-deadline <filepath> --date "YYYY-MM-DD"'),await s.executeSetDeadline(e,t.date),Ur(r,n,e,`Set deadline to ${t.date}`,{date:t.date});break;case"repair-folder":{let a=await s.executeRepairFolder(e);Ur(r,n,e,a.moved?`Moved to correct folder: ${a.newPath}`:"Already in correct folder",{moved:a.moved,oldPath:a.oldPath,newPath:a.newPath,expectedFolder:a.expectedFolder});break}default:await s.execute(n,e,t),Ur(r,n,e,`Executed ${n}`);break}}catch(i){D.handle(i)}})}o(hD,"commandCommand");var mD=require("path");var _a=K(require("fs")),VE=K(require("path")),pD=require("events");var MY={watch:_a.default.watch.bind(_a.default),existsSync:_a.default.existsSync.bind(_a.default),statSync:_a.default.statSync.bind(_a.default),readFileSync:_a.default.readFileSync.bind(_a.default)},oy=class extends pD.EventEmitter{constructor(t,r={}){super();this.watcher=null;this.debounceTimers=new Map;this.isRunning=!1;this.vaultPath=VE.default.resolve(t),this.fsAdapter=r.fsAdapter??MY,this.options={pattern:r.pattern??"**/*.md",assetType:r.assetType??"",debounceMs:r.debounceMs??100,recursive:r.recursive??!0}}static{o(this,"FileSystemWatcher")}start(){this.isRunning||(this.watcher=this.fsAdapter.watch(this.vaultPath,{recursive:this.options.recursive},(t,r)=>{r&&this.handleFileEvent(t,r.toString())}),this.watcher.on("error",t=>{this.emit("error",t)}),this.isRunning=!0,this.emit("started"))}stop(){if(this.isRunning){for(let t of this.debounceTimers.values())clearTimeout(t);this.debounceTimers.clear(),this.watcher&&(this.watcher.close(),this.watcher=null),this.isRunning=!1,this.emit("stopped")}}isWatching(){return this.isRunning}handleFileEvent(t,r){let i=VE.default.join(this.vaultPath,r),s=r;if(!this.matchesPattern(s))return;let a=this.debounceTimers.get(i);a&&clearTimeout(a);let c=setTimeout(()=>{this.debounceTimers.delete(i),this.processFileEvent(i,s)},this.options.debounceMs);this.debounceTimers.set(i,c)}processFileEvent(t,r){let i=this.fsAdapter.existsSync(t),s;if(!i)s="delete";else{let l=this.fsAdapter.statSync(t);s=Date.now()-l.birthtimeMs<1e3?"create":"modify"}let a;if(i&&t.endsWith(".md")&&(a=this.extractAssetType(t)),this.options.assetType&&a!==this.options.assetType)return;let c={type:s,path:t,relativePath:r,timestamp:new Date().toISOString(),assetType:a};this.emit("change",c)}matchesPattern(t){return this.options.pattern?Br(t,this.options.pattern):!0}extractAssetType(t){try{let i=this.fsAdapter.readFileSync(t,"utf-8").match(/^---\n([\s\S]*?)\n---/);if(!i)return;let a=i[1].match(/exo__Instance_class:\s*(?:\[?"?\[\[([^\]]+)\]\]"?\]?|"?\[\[([^\]]+)\]\]"?)/);return a?a[1]||a[2]:void 0}catch{return}}};var UE=K(require("fs"));function gD(){return new ae("watch").description("Watch vault for file changes and emit NDJSON events").option("--vault <path>","Path to Obsidian vault",process.cwd()).option("--pattern <glob>","Glob pattern to filter files (e.g., '*.md', 'tasks/**')").option("--asset-type <type>","Filter by asset type (e.g., 'ems__Task', 'ems__Project')").option("--debounce <ms>","Debounce interval in milliseconds","100").action(async n=>{D.setFormat("json");try{let e=(0,mD.resolve)(n.vault);if(!UE.default.existsSync(e))throw new Te(e);if(!UE.default.statSync(e).isDirectory())throw new Ke(`Vault path is not a directory: ${e}`,"Provide a path to a directory, not a file",{vaultPath:e});let t=parseInt(n.debounce?.toString()??"100",10);if(isNaN(t)||t<0)throw new Ke("--debounce must be a non-negative integer","Use a positive integer value for debounce",{debounce:n.debounce});let r=new oy(e,{pattern:n.pattern,assetType:n.assetType,debounceMs:t});r.on("change",s=>{console.log(JSON.stringify(s))}),r.on("error",s=>{let a=X.error("INTERNAL_OPERATION_FAILED",s.message,5,{recovery:{message:"Check file permissions and vault access",suggestion:"Ensure the vault directory is accessible"}});console.log(JSON.stringify(a))});let i=o(()=>{r.stop(),process.exit(0)},"shutdown");process.on("SIGINT",i),process.on("SIGTERM",i),console.error(`Watching vault: ${e}`),n.pattern&&console.error(` Pattern filter: ${n.pattern}`),n.assetType&&console.error(` Asset type filter: ${n.assetType}`),console.error(` Debounce: ${t}ms`),console.error("Press Ctrl+C to stop"),r.start()}catch(e){D.handle(e)}})}o(gD,"watchCommand");var WE=require("path"),GE=K(Za());var lc=K(require("path"));var lu=K(Dt());var Yi=K(Za()),qE=K(require("crypto"));var cy=class{constructor(){this.backups=new Map;this.fileHashes=new Map}static{o(this,"TransactionManager")}async begin(e){if(!Yi.default.existsSync(e))throw new Error(`Cannot backup non-existent file: ${e}`);let t=await Yi.default.readFile(e,"utf-8"),r=qE.default.createHash("sha256").update(t).digest("hex");this.fileHashes.set(e,r);let i=`${e}.backup.${Date.now()}`;await Yi.default.writeFile(i,t,"utf-8"),this.backups.set(e,i)}async verify(e){let t=this.fileHashes.get(e);if(!t)return!0;if(!Yi.default.existsSync(e))return!1;let r=await Yi.default.readFile(e,"utf-8");return qE.default.createHash("sha256").update(r).digest("hex")===t}async commit(){for(let e of this.backups.values())Yi.default.existsSync(e)&&await Yi.default.remove(e);this.backups.clear(),this.fileHashes.clear()}async rollback(){for(let[e,t]of this.backups.entries())Yi.default.existsSync(t)&&(await Yi.default.copy(t,e,{overwrite:!0}),await Yi.default.remove(t));this.backups.clear(),this.fileHashes.clear()}getTrackedFiles(){return Array.from(this.backups.keys())}};var uc=class{static{o(this,"BatchExecutor")}constructor(e,t=!1){this.pathResolver=new ou(e),this.fsAdapter=new Pt(e),this.frontmatterService=new lu.FrontmatterService,this.transactionManager=new cy,this.dryRun=t}async executeBatch(e,t=!1){let r=Date.now(),i=[],s=0,a=0;if(e.length===0)return{success:!0,total:0,succeeded:0,failed:0,results:[],durationMs:Date.now()-r,atomic:t};if(t&&!this.dryRun)try{await this.backupAllFiles(e)}catch(l){return{success:!1,total:e.length,succeeded:0,failed:e.length,results:e.map(u=>({success:!1,command:u.command,filepath:u.filepath,error:`Backup failed: ${l.message}`})),durationMs:Date.now()-r,atomic:t}}for(let l of e){let u=await this.executeSingleOperation(l);if(i.push(u),u.success)s++;else if(a++,t&&!this.dryRun){await this.transactionManager.rollback();let f=i.length;for(let d=f;d<e.length;d++)i.push({success:!1,command:e[d].command,filepath:e[d].filepath,error:"Not executed due to atomic rollback"}),a++;return{success:!1,total:e.length,succeeded:0,failed:e.length,results:i,durationMs:Date.now()-r,atomic:t,rolledBack:!0}}}return t&&!this.dryRun&&await this.transactionManager.commit(),{success:a===0,total:e.length,succeeded:s,failed:a,results:i,durationMs:Date.now()-r,atomic:t,...t&&{rolledBack:!1}}}static parseInput(e){try{let t=JSON.parse(e);if(!Array.isArray(t))throw new Ke("Batch input must be a JSON array of operations",`exo batch --input '[{"command":"start","filepath":"task.md"}]'`);for(let r of t){if(!r.command||typeof r.command!="string")throw new Ke('Each operation must have a "command" string property','{"command":"start","filepath":"task.md"}');if(!r.filepath||typeof r.filepath!="string")throw new Ke('Each operation must have a "filepath" string property','{"command":"start","filepath":"task.md"}')}return t}catch(t){throw t instanceof Ke?t:new Ke(`Failed to parse batch input: ${t.message}`,`exo batch --input '[{"command":"start","filepath":"task.md"}]'`)}}async backupAllFiles(e){let t=new Set;for(let r of e){let i=this.pathResolver.resolve(r.filepath);t.add(i)}for(let r of t)await this.transactionManager.begin(r)}async executeSingleOperation(e){try{let t=this.pathResolver.resolve(e.filepath);this.pathResolver.validate(t);let r=t.replace(this.pathResolver.getVaultRoot()+"/","");if(await this.fsAdapter.readFile(r),this.dryRun)return{success:!0,command:e.command,filepath:e.filepath,action:`Would execute ${e.command} (dry-run)`};switch(e.command){case"start":return await this.executeStart(r,e);case"complete":return await this.executeComplete(r,e);case"trash":return await this.executeTrash(r,e);case"archive":return await this.executeArchive(r,e);case"move-to-backlog":return await this.executeStatusUpdate(r,e,"ems__EffortStatusBacklog","Moved to backlog");case"move-to-analysis":return await this.executeStatusUpdate(r,e,"ems__EffortStatusAnalysis","Moved to analysis");case"move-to-todo":return await this.executeStatusUpdate(r,e,"ems__EffortStatusToDo","Moved to todo");case"update-label":return await this.executeUpdateLabel(r,e);case"schedule":return await this.executeSchedule(r,e);case"set-deadline":return await this.executeSetDeadline(r,e);case"repair-folder":return await this.executeRepairFolder(r,e);default:return{success:!1,command:e.command,filepath:e.filepath,error:`Unknown command: ${e.command}`}}}catch(t){return{success:!1,command:e.command,filepath:e.filepath,error:t.message}}}getCurrentTimestamp(){return lu.DateFormatter.toLocalTimestamp(new Date)}async executeStart(e,t){let r=await this.fsAdapter.readFile(e),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusDoing]]"');return s=this.frontmatterService.updateProperty(s,"ems__Effort_startTimestamp",i),await this.fsAdapter.updateFile(e,s),{success:!0,command:t.command,filepath:t.filepath,action:"Started task",changes:{status:"Doing",startTimestamp:i}}}async executeComplete(e,t){let r=await this.fsAdapter.readFile(e),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusDone]]"');return s=this.frontmatterService.updateProperty(s,"ems__Effort_endTimestamp",i),s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),await this.fsAdapter.updateFile(e,s),{success:!0,command:t.command,filepath:t.filepath,action:"Completed task",changes:{status:"Done",endTimestamp:i,resolutionTimestamp:i}}}async executeTrash(e,t){let r=await this.fsAdapter.readFile(e),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusTrashed]]"');return s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),await this.fsAdapter.updateFile(e,s),{success:!0,command:t.command,filepath:t.filepath,action:"Trashed task",changes:{status:"Trashed",resolutionTimestamp:i}}}async executeArchive(e,t){let r=await this.fsAdapter.readFile(e),i=this.frontmatterService.updateProperty(r,"archived","true");return i=this.frontmatterService.removeProperty(i,"aliases"),await this.fsAdapter.updateFile(e,i),{success:!0,command:t.command,filepath:t.filepath,action:"Archived task",changes:{archived:!0,aliasesRemoved:!0}}}async executeStatusUpdate(e,t,r,i){let s=await this.fsAdapter.readFile(e),a=this.frontmatterService.updateProperty(s,"ems__Effort_status",`"[[${r}]]"`);return await this.fsAdapter.updateFile(e,a),{success:!0,command:t.command,filepath:t.filepath,action:i,changes:{status:r.replace("ems__EffortStatus","")}}}async executeUpdateLabel(e,t){let r=t.options?.label;if(!r||r.trim()==="")return{success:!1,command:t.command,filepath:t.filepath,error:'Missing required option: "label"'};let i=r.trim(),s=await this.fsAdapter.readFile(e),a=this.frontmatterService.updateProperty(s,"exo__Asset_label",`"${i}"`);return await this.fsAdapter.updateFile(e,a),{success:!0,command:t.command,filepath:t.filepath,action:`Updated label to "${i}"`,changes:{label:i}}}async executeSchedule(e,t){let r=t.options?.date;if(!r)return{success:!1,command:t.command,filepath:t.filepath,error:'Missing required option: "date"'};if(!/^\d{4}-\d{2}-\d{2}$/.test(r))return{success:!1,command:t.command,filepath:t.filepath,error:`Invalid date format: ${r}. Expected YYYY-MM-DD`};let i=await this.fsAdapter.readFile(e),s=lu.DateFormatter.toTimestampAtStartOfDay(r),a=this.frontmatterService.updateProperty(i,"ems__Effort_scheduledTimestamp",s);return await this.fsAdapter.updateFile(e,a),{success:!0,command:t.command,filepath:t.filepath,action:`Scheduled for ${r}`,changes:{scheduledTimestamp:s}}}async executeSetDeadline(e,t){let r=t.options?.date;if(!r)return{success:!1,command:t.command,filepath:t.filepath,error:'Missing required option: "date"'};if(!/^\d{4}-\d{2}-\d{2}$/.test(r))return{success:!1,command:t.command,filepath:t.filepath,error:`Invalid date format: ${r}. Expected YYYY-MM-DD`};let i=await this.fsAdapter.readFile(e),s=lu.DateFormatter.toTimestampAtStartOfDay(r),a=this.frontmatterService.updateProperty(i,"ems__Effort_deadlineTimestamp",s);return await this.fsAdapter.updateFile(e,a),{success:!0,command:t.command,filepath:t.filepath,action:`Set deadline to ${r}`,changes:{deadlineTimestamp:s}}}async executeRepairFolder(e,t){let i=(await this.fsAdapter.getFileMetadata(e))?.exo__Asset_isDefinedBy;if(!i)return{success:!1,command:t.command,filepath:t.filepath,error:"Cannot determine expected folder: missing exo__Asset_isDefinedBy"};let s=this.extractReference(i);if(!s)return{success:!1,command:t.command,filepath:t.filepath,error:"Cannot determine expected folder: invalid exo__Asset_isDefinedBy format"};let a=await this.findReferencedFile(s,e);if(!a)return{success:!1,command:t.command,filepath:t.filepath,error:`Cannot determine expected folder: referenced asset not found: ${s}`};let c=lc.default.dirname(a),l=c==="."?"":c,u=lc.default.dirname(e),f=u==="."?"":u;if(this.normalizePath(f)===this.normalizePath(l))return{success:!0,command:t.command,filepath:t.filepath,action:"Already in correct folder",changes:{moved:!1,folder:l||"(root)"}};let d=lc.default.basename(e),h=l?`${l}/${d}`:d;return await this.fsAdapter.fileExists(h)?{success:!1,command:t.command,filepath:t.filepath,error:`Cannot move file: ${h} already exists`}:(await this.fsAdapter.renameFile(e,h),{success:!0,command:t.command,filepath:t.filepath,action:`Moved to ${l||"(root)"}`,changes:{moved:!0,oldPath:e,newPath:h,expectedFolder:l||"(root)"}})}extractReference(e){if(typeof e!="string")return null;let t=e.trim().replace(/^["']|["']$/g,"");return t=t.replace(/^\[\[|\]\]$/g,""),t||null}async findReferencedFile(e,t){let r=e.endsWith(".md")?e:`${e}.md`;if(e.includes("/")&&await this.fsAdapter.fileExists(r))return r;let i=lc.default.dirname(t),s=i!=="."?`${i}/${r}`:r;if(await this.fsAdapter.fileExists(s))return s;let c=await this.fsAdapter.findFileByUID(e);return c||(await this.fsAdapter.getMarkdownFiles()).find(f=>{let d=lc.default.basename(f,".md"),h=lc.default.basename(r,".md");return d===h})||null}normalizePath(e){return e.replace(/\\/g,"/").replace(/^\.\//,"").replace(/\/$/,"")}};function jY(n,e){if(n==="json"){let t=X.success(e,{durationMs:e.durationMs,itemCount:e.total});console.log(JSON.stringify(t,null,2))}else{if(console.log(`
625
+ \u{1F4DD} Note: Actual command execution will be implemented in follow-up issues.`),console.log(" This PR establishes the infrastructure foundation."),process.exit(0)}catch(i){D.handle(i)}}getVaultRoot(){return this.context.pathResolver.getVaultRoot()}async executeStart(e){return this.statusExecutor.executeStart(e)}async executeComplete(e){return this.statusExecutor.executeComplete(e)}async executeTrash(e){return this.statusExecutor.executeTrash(e)}async executeArchive(e){return this.statusExecutor.executeArchive(e)}async executeMoveToBacklog(e){return this.statusExecutor.executeMoveToBacklog(e)}async executeMoveToAnalysis(e){return this.statusExecutor.executeMoveToAnalysis(e)}async executeMoveToToDo(e){return this.statusExecutor.executeMoveToToDo(e)}async executeCreateTask(e,t,r={}){return this.creationExecutor.executeCreateTask(e,t,r)}async executeCreateMeeting(e,t,r={}){return this.creationExecutor.executeCreateMeeting(e,t,r)}async executeCreateProject(e,t,r={}){return this.creationExecutor.executeCreateProject(e,t,r)}async executeCreateArea(e,t,r={}){return this.creationExecutor.executeCreateArea(e,t,r)}async executeRenameToUid(e){return this.propertyExecutor.executeRenameToUid(e)}async executeUpdateLabel(e,t){return this.propertyExecutor.executeUpdateLabel(e,t)}async executeSchedule(e,t){return this.propertyExecutor.executeSchedule(e,t)}async executeSetDeadline(e,t){return this.propertyExecutor.executeSetDeadline(e,t)}async executeRepairFolder(e){return this.folderRepairExecutor.executeRepairFolder(e)}};function qr(n,e,t,r,i){if(n==="json"){let s={command:e,filepath:t,action:r,...i&&{changes:i}},a=X.success(s);console.log(JSON.stringify(a,null,2))}else console.log(`\u2705 ${r}`)}o(qr,"outputResult");function cc(n,e,t,r){let i=new Ke(`--${e} option is required for ${t} command`,r,{command:t,missingOption:e});D.handle(i)}o(cc,"handleMissingOption");function hD(){return new ae("command").description("Execute plugin command on single asset").argument("<command-name>","Command to execute (rename-to-uid, start, complete, schedule, set-deadline, etc.)").argument("<filepath>","Path to asset file (relative to vault root or absolute)").option("--vault <path>","Path to Obsidian vault",process.cwd()).option("--label <value>","Asset label (required for update-label and creation commands)").option("--prototype <uid>","Prototype UID for inheritance (creation commands)").option("--area <uid>","Area UID for effort linkage (creation commands)").option("--parent <uid>","Parent UID for effort linkage (creation commands)").option("--date <value>","Date in YYYY-MM-DD format (required for schedule and set-deadline commands)").option("--dry-run","Preview changes without modifying files").option("--format <type>","Output format: text|json (default: text)","text").action(async(n,e,t)=>{let r=t.format||"text";D.setFormat(r),n==="start"&&console.error("\u26A0\uFE0F DEPRECATED: `command start <path>` is deprecated. Use `dyncommand exec <uid>` instead. `command start <path>` will be removed in 2 minor releases (T7.3).");try{let i=(0,dD.resolve)(t.vault),s=new ay(i,t.dryRun);switch(n){case"rename-to-uid":await s.executeRenameToUid(e),qr(r,n,e,"Renamed file to UID-based name");break;case"update-label":t.label||cc(r,"label","update-label",'exocortex command update-label <filepath> --label "<value>"'),await s.executeUpdateLabel(e,t.label),qr(r,n,e,`Updated label to "${t.label}"`,{label:t.label});break;case"start":await s.executeStart(e),qr(r,n,e,"Started task");break;case"complete":await s.executeComplete(e),qr(r,n,e,"Completed task");break;case"trash":await s.executeTrash(e),qr(r,n,e,"Moved task to trash");break;case"archive":await s.executeArchive(e),qr(r,n,e,"Archived task");break;case"move-to-backlog":await s.executeMoveToBacklog(e),qr(r,n,e,"Moved task to backlog");break;case"move-to-analysis":await s.executeMoveToAnalysis(e),qr(r,n,e,"Moved task to analysis");break;case"move-to-todo":await s.executeMoveToToDo(e),qr(r,n,e,"Moved task to todo");break;case"create-task":t.label||cc(r,"label","create-task",'exocortex command create-task <filepath> --label "<value>"'),await s.executeCreateTask(e,t.label,{prototype:t.prototype,area:t.area,parent:t.parent}),qr(r,n,e,`Created task "${t.label}"`,{label:t.label,prototype:t.prototype,area:t.area,parent:t.parent});break;case"create-meeting":t.label||cc(r,"label","create-meeting",'exocortex command create-meeting <filepath> --label "<value>"'),await s.executeCreateMeeting(e,t.label,{prototype:t.prototype,area:t.area,parent:t.parent}),qr(r,n,e,`Created meeting "${t.label}"`,{label:t.label,prototype:t.prototype,area:t.area,parent:t.parent});break;case"create-project":t.label||cc(r,"label","create-project",'exocortex command create-project <filepath> --label "<value>"'),await s.executeCreateProject(e,t.label,{prototype:t.prototype,area:t.area,parent:t.parent}),qr(r,n,e,`Created project "${t.label}"`,{label:t.label,prototype:t.prototype,area:t.area,parent:t.parent});break;case"create-area":t.label||cc(r,"label","create-area",'exocortex command create-area <filepath> --label "<value>"'),await s.executeCreateArea(e,t.label,{prototype:t.prototype,area:t.area,parent:t.parent}),qr(r,n,e,`Created area "${t.label}"`,{label:t.label,prototype:t.prototype,area:t.area,parent:t.parent});break;case"schedule":t.date||cc(r,"date","schedule",'exocortex command schedule <filepath> --date "YYYY-MM-DD"'),await s.executeSchedule(e,t.date),qr(r,n,e,`Scheduled task for ${t.date}`,{date:t.date});break;case"set-deadline":t.date||cc(r,"date","set-deadline",'exocortex command set-deadline <filepath> --date "YYYY-MM-DD"'),await s.executeSetDeadline(e,t.date),qr(r,n,e,`Set deadline to ${t.date}`,{date:t.date});break;case"repair-folder":{let a=await s.executeRepairFolder(e);qr(r,n,e,a.moved?`Moved to correct folder: ${a.newPath}`:"Already in correct folder",{moved:a.moved,oldPath:a.oldPath,newPath:a.newPath,expectedFolder:a.expectedFolder});break}default:await s.execute(n,e,t),qr(r,n,e,`Executed ${n}`);break}}catch(i){D.handle(i)}})}o(hD,"commandCommand");var mD=require("path");var _a=K(require("fs")),VE=K(require("path")),pD=require("events");var MY={watch:_a.default.watch.bind(_a.default),existsSync:_a.default.existsSync.bind(_a.default),statSync:_a.default.statSync.bind(_a.default),readFileSync:_a.default.readFileSync.bind(_a.default)},oy=class extends pD.EventEmitter{constructor(t,r={}){super();this.watcher=null;this.debounceTimers=new Map;this.isRunning=!1;this.vaultPath=VE.default.resolve(t),this.fsAdapter=r.fsAdapter??MY,this.options={pattern:r.pattern??"**/*.md",assetType:r.assetType??"",debounceMs:r.debounceMs??100,recursive:r.recursive??!0}}static{o(this,"FileSystemWatcher")}start(){this.isRunning||(this.watcher=this.fsAdapter.watch(this.vaultPath,{recursive:this.options.recursive},(t,r)=>{r&&this.handleFileEvent(t,r.toString())}),this.watcher.on("error",t=>{this.emit("error",t)}),this.isRunning=!0,this.emit("started"))}stop(){if(this.isRunning){for(let t of this.debounceTimers.values())clearTimeout(t);this.debounceTimers.clear(),this.watcher&&(this.watcher.close(),this.watcher=null),this.isRunning=!1,this.emit("stopped")}}isWatching(){return this.isRunning}handleFileEvent(t,r){let i=VE.default.join(this.vaultPath,r),s=r;if(!this.matchesPattern(s))return;let a=this.debounceTimers.get(i);a&&clearTimeout(a);let c=setTimeout(()=>{this.debounceTimers.delete(i),this.processFileEvent(i,s)},this.options.debounceMs);this.debounceTimers.set(i,c)}processFileEvent(t,r){let i=this.fsAdapter.existsSync(t),s;if(!i)s="delete";else{let l=this.fsAdapter.statSync(t);s=Date.now()-l.birthtimeMs<1e3?"create":"modify"}let a;if(i&&t.endsWith(".md")&&(a=this.extractAssetType(t)),this.options.assetType&&a!==this.options.assetType)return;let c={type:s,path:t,relativePath:r,timestamp:new Date().toISOString(),assetType:a};this.emit("change",c)}matchesPattern(t){return this.options.pattern?Vr(t,this.options.pattern):!0}extractAssetType(t){try{let i=this.fsAdapter.readFileSync(t,"utf-8").match(/^---\n([\s\S]*?)\n---/);if(!i)return;let a=i[1].match(/exo__Instance_class:\s*(?:\[?"?\[\[([^\]]+)\]\]"?\]?|"?\[\[([^\]]+)\]\]"?)/);return a?a[1]||a[2]:void 0}catch{return}}};var UE=K(require("fs"));function gD(){return new ae("watch").description("Watch vault for file changes and emit NDJSON events").option("--vault <path>","Path to Obsidian vault",process.cwd()).option("--pattern <glob>","Glob pattern to filter files (e.g., '*.md', 'tasks/**')").option("--asset-type <type>","Filter by asset type (e.g., 'ems__Task', 'ems__Project')").option("--debounce <ms>","Debounce interval in milliseconds","100").action(async n=>{D.setFormat("json");try{let e=(0,mD.resolve)(n.vault);if(!UE.default.existsSync(e))throw new Te(e);if(!UE.default.statSync(e).isDirectory())throw new Ke(`Vault path is not a directory: ${e}`,"Provide a path to a directory, not a file",{vaultPath:e});let t=parseInt(n.debounce?.toString()??"100",10);if(isNaN(t)||t<0)throw new Ke("--debounce must be a non-negative integer","Use a positive integer value for debounce",{debounce:n.debounce});let r=new oy(e,{pattern:n.pattern,assetType:n.assetType,debounceMs:t});r.on("change",s=>{console.log(JSON.stringify(s))}),r.on("error",s=>{let a=X.error("INTERNAL_OPERATION_FAILED",s.message,5,{recovery:{message:"Check file permissions and vault access",suggestion:"Ensure the vault directory is accessible"}});console.log(JSON.stringify(a))});let i=o(()=>{r.stop(),process.exit(0)},"shutdown");process.on("SIGINT",i),process.on("SIGTERM",i),console.error(`Watching vault: ${e}`),n.pattern&&console.error(` Pattern filter: ${n.pattern}`),n.assetType&&console.error(` Asset type filter: ${n.assetType}`),console.error(` Debounce: ${t}ms`),console.error("Press Ctrl+C to stop"),r.start()}catch(e){D.handle(e)}})}o(gD,"watchCommand");var WE=require("path"),GE=K(Za());var lc=K(require("path"));var lu=K(Dt());var Yi=K(Za()),qE=K(require("crypto"));var cy=class{constructor(){this.backups=new Map;this.fileHashes=new Map}static{o(this,"TransactionManager")}async begin(e){if(!Yi.default.existsSync(e))throw new Error(`Cannot backup non-existent file: ${e}`);let t=await Yi.default.readFile(e,"utf-8"),r=qE.default.createHash("sha256").update(t).digest("hex");this.fileHashes.set(e,r);let i=`${e}.backup.${Date.now()}`;await Yi.default.writeFile(i,t,"utf-8"),this.backups.set(e,i)}async verify(e){let t=this.fileHashes.get(e);if(!t)return!0;if(!Yi.default.existsSync(e))return!1;let r=await Yi.default.readFile(e,"utf-8");return qE.default.createHash("sha256").update(r).digest("hex")===t}async commit(){for(let e of this.backups.values())Yi.default.existsSync(e)&&await Yi.default.remove(e);this.backups.clear(),this.fileHashes.clear()}async rollback(){for(let[e,t]of this.backups.entries())Yi.default.existsSync(t)&&(await Yi.default.copy(t,e,{overwrite:!0}),await Yi.default.remove(t));this.backups.clear(),this.fileHashes.clear()}getTrackedFiles(){return Array.from(this.backups.keys())}};var uc=class{static{o(this,"BatchExecutor")}constructor(e,t=!1){this.pathResolver=new ou(e),this.fsAdapter=new Pt(e),this.frontmatterService=new lu.FrontmatterService,this.transactionManager=new cy,this.dryRun=t}async executeBatch(e,t=!1){let r=Date.now(),i=[],s=0,a=0;if(e.length===0)return{success:!0,total:0,succeeded:0,failed:0,results:[],durationMs:Date.now()-r,atomic:t};if(t&&!this.dryRun)try{await this.backupAllFiles(e)}catch(l){return{success:!1,total:e.length,succeeded:0,failed:e.length,results:e.map(u=>({success:!1,command:u.command,filepath:u.filepath,error:`Backup failed: ${l.message}`})),durationMs:Date.now()-r,atomic:t}}for(let l of e){let u=await this.executeSingleOperation(l);if(i.push(u),u.success)s++;else if(a++,t&&!this.dryRun){await this.transactionManager.rollback();let f=i.length;for(let d=f;d<e.length;d++)i.push({success:!1,command:e[d].command,filepath:e[d].filepath,error:"Not executed due to atomic rollback"}),a++;return{success:!1,total:e.length,succeeded:0,failed:e.length,results:i,durationMs:Date.now()-r,atomic:t,rolledBack:!0}}}return t&&!this.dryRun&&await this.transactionManager.commit(),{success:a===0,total:e.length,succeeded:s,failed:a,results:i,durationMs:Date.now()-r,atomic:t,...t&&{rolledBack:!1}}}static parseInput(e){try{let t=JSON.parse(e);if(!Array.isArray(t))throw new Ke("Batch input must be a JSON array of operations",`exo batch --input '[{"command":"start","filepath":"task.md"}]'`);for(let r of t){if(!r.command||typeof r.command!="string")throw new Ke('Each operation must have a "command" string property','{"command":"start","filepath":"task.md"}');if(!r.filepath||typeof r.filepath!="string")throw new Ke('Each operation must have a "filepath" string property','{"command":"start","filepath":"task.md"}')}return t}catch(t){throw t instanceof Ke?t:new Ke(`Failed to parse batch input: ${t.message}`,`exo batch --input '[{"command":"start","filepath":"task.md"}]'`)}}async backupAllFiles(e){let t=new Set;for(let r of e){let i=this.pathResolver.resolve(r.filepath);t.add(i)}for(let r of t)await this.transactionManager.begin(r)}async executeSingleOperation(e){try{let t=this.pathResolver.resolve(e.filepath);this.pathResolver.validate(t);let r=t.replace(this.pathResolver.getVaultRoot()+"/","");if(await this.fsAdapter.readFile(r),this.dryRun)return{success:!0,command:e.command,filepath:e.filepath,action:`Would execute ${e.command} (dry-run)`};switch(e.command){case"start":return await this.executeStart(r,e);case"complete":return await this.executeComplete(r,e);case"trash":return await this.executeTrash(r,e);case"archive":return await this.executeArchive(r,e);case"move-to-backlog":return await this.executeStatusUpdate(r,e,"ems__EffortStatusBacklog","Moved to backlog");case"move-to-analysis":return await this.executeStatusUpdate(r,e,"ems__EffortStatusAnalysis","Moved to analysis");case"move-to-todo":return await this.executeStatusUpdate(r,e,"ems__EffortStatusToDo","Moved to todo");case"update-label":return await this.executeUpdateLabel(r,e);case"schedule":return await this.executeSchedule(r,e);case"set-deadline":return await this.executeSetDeadline(r,e);case"repair-folder":return await this.executeRepairFolder(r,e);default:return{success:!1,command:e.command,filepath:e.filepath,error:`Unknown command: ${e.command}`}}}catch(t){return{success:!1,command:e.command,filepath:e.filepath,error:t.message}}}getCurrentTimestamp(){return lu.DateFormatter.toLocalTimestamp(new Date)}async executeStart(e,t){let r=await this.fsAdapter.readFile(e),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusDoing]]"');return s=this.frontmatterService.updateProperty(s,"ems__Effort_startTimestamp",i),await this.fsAdapter.updateFile(e,s),{success:!0,command:t.command,filepath:t.filepath,action:"Started task",changes:{status:"Doing",startTimestamp:i}}}async executeComplete(e,t){let r=await this.fsAdapter.readFile(e),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusDone]]"');return s=this.frontmatterService.updateProperty(s,"ems__Effort_endTimestamp",i),s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),await this.fsAdapter.updateFile(e,s),{success:!0,command:t.command,filepath:t.filepath,action:"Completed task",changes:{status:"Done",endTimestamp:i,resolutionTimestamp:i}}}async executeTrash(e,t){let r=await this.fsAdapter.readFile(e),i=this.getCurrentTimestamp(),s=this.frontmatterService.updateProperty(r,"ems__Effort_status",'"[[ems__EffortStatusTrashed]]"');return s=this.frontmatterService.updateProperty(s,"ems__Effort_resolutionTimestamp",i),await this.fsAdapter.updateFile(e,s),{success:!0,command:t.command,filepath:t.filepath,action:"Trashed task",changes:{status:"Trashed",resolutionTimestamp:i}}}async executeArchive(e,t){let r=await this.fsAdapter.readFile(e),i=this.frontmatterService.updateProperty(r,"archived","true");return i=this.frontmatterService.removeProperty(i,"aliases"),await this.fsAdapter.updateFile(e,i),{success:!0,command:t.command,filepath:t.filepath,action:"Archived task",changes:{archived:!0,aliasesRemoved:!0}}}async executeStatusUpdate(e,t,r,i){let s=await this.fsAdapter.readFile(e),a=this.frontmatterService.updateProperty(s,"ems__Effort_status",`"[[${r}]]"`);return await this.fsAdapter.updateFile(e,a),{success:!0,command:t.command,filepath:t.filepath,action:i,changes:{status:r.replace("ems__EffortStatus","")}}}async executeUpdateLabel(e,t){let r=t.options?.label;if(!r||r.trim()==="")return{success:!1,command:t.command,filepath:t.filepath,error:'Missing required option: "label"'};let i=r.trim(),s=await this.fsAdapter.readFile(e),a=this.frontmatterService.updateProperty(s,"exo__Asset_label",`"${i}"`);return await this.fsAdapter.updateFile(e,a),{success:!0,command:t.command,filepath:t.filepath,action:`Updated label to "${i}"`,changes:{label:i}}}async executeSchedule(e,t){let r=t.options?.date;if(!r)return{success:!1,command:t.command,filepath:t.filepath,error:'Missing required option: "date"'};if(!/^\d{4}-\d{2}-\d{2}$/.test(r))return{success:!1,command:t.command,filepath:t.filepath,error:`Invalid date format: ${r}. Expected YYYY-MM-DD`};let i=await this.fsAdapter.readFile(e),s=lu.DateFormatter.toTimestampAtStartOfDay(r),a=this.frontmatterService.updateProperty(i,"ems__Effort_scheduledTimestamp",s);return await this.fsAdapter.updateFile(e,a),{success:!0,command:t.command,filepath:t.filepath,action:`Scheduled for ${r}`,changes:{scheduledTimestamp:s}}}async executeSetDeadline(e,t){let r=t.options?.date;if(!r)return{success:!1,command:t.command,filepath:t.filepath,error:'Missing required option: "date"'};if(!/^\d{4}-\d{2}-\d{2}$/.test(r))return{success:!1,command:t.command,filepath:t.filepath,error:`Invalid date format: ${r}. Expected YYYY-MM-DD`};let i=await this.fsAdapter.readFile(e),s=lu.DateFormatter.toTimestampAtStartOfDay(r),a=this.frontmatterService.updateProperty(i,"ems__Effort_deadlineTimestamp",s);return await this.fsAdapter.updateFile(e,a),{success:!0,command:t.command,filepath:t.filepath,action:`Set deadline to ${r}`,changes:{deadlineTimestamp:s}}}async executeRepairFolder(e,t){let i=(await this.fsAdapter.getFileMetadata(e))?.exo__Asset_isDefinedBy;if(!i)return{success:!1,command:t.command,filepath:t.filepath,error:"Cannot determine expected folder: missing exo__Asset_isDefinedBy"};let s=this.extractReference(i);if(!s)return{success:!1,command:t.command,filepath:t.filepath,error:"Cannot determine expected folder: invalid exo__Asset_isDefinedBy format"};let a=await this.findReferencedFile(s,e);if(!a)return{success:!1,command:t.command,filepath:t.filepath,error:`Cannot determine expected folder: referenced asset not found: ${s}`};let c=lc.default.dirname(a),l=c==="."?"":c,u=lc.default.dirname(e),f=u==="."?"":u;if(this.normalizePath(f)===this.normalizePath(l))return{success:!0,command:t.command,filepath:t.filepath,action:"Already in correct folder",changes:{moved:!1,folder:l||"(root)"}};let d=lc.default.basename(e),h=l?`${l}/${d}`:d;return await this.fsAdapter.fileExists(h)?{success:!1,command:t.command,filepath:t.filepath,error:`Cannot move file: ${h} already exists`}:(await this.fsAdapter.renameFile(e,h),{success:!0,command:t.command,filepath:t.filepath,action:`Moved to ${l||"(root)"}`,changes:{moved:!0,oldPath:e,newPath:h,expectedFolder:l||"(root)"}})}extractReference(e){if(typeof e!="string")return null;let t=e.trim().replace(/^["']|["']$/g,"");return t=t.replace(/^\[\[|\]\]$/g,""),t||null}async findReferencedFile(e,t){let r=e.endsWith(".md")?e:`${e}.md`;if(e.includes("/")&&await this.fsAdapter.fileExists(r))return r;let i=lc.default.dirname(t),s=i!=="."?`${i}/${r}`:r;if(await this.fsAdapter.fileExists(s))return s;let c=await this.fsAdapter.findFileByUID(e);return c||(await this.fsAdapter.getMarkdownFiles()).find(f=>{let d=lc.default.basename(f,".md"),h=lc.default.basename(r,".md");return d===h})||null}normalizePath(e){return e.replace(/\\/g,"/").replace(/^\.\//,"").replace(/\/$/,"")}};function jY(n,e){if(n==="json"){let t=X.success(e,{durationMs:e.durationMs,itemCount:e.total});console.log(JSON.stringify(t,null,2))}else{if(console.log(`
626
626
  \u{1F4E6} Batch Execution ${e.success?"Complete":"Failed"}`),console.log(` Total: ${e.total} operations`),console.log(` \u2705 Succeeded: ${e.succeeded}`),console.log(` \u274C Failed: ${e.failed}`),console.log(` \u23F1\uFE0F Duration: ${e.durationMs}ms`),e.atomic&&console.log(` \u{1F512} Atomic mode: ${e.rolledBack?"Rolled back":"Committed"}`),e.failed>0){console.log(`
627
627
  \u{1F4CB} Failed Operations:`);for(let t of e.results.filter(r=>!r.success))console.log(` \u274C ${t.command} ${t.filepath}: ${t.error}`)}if(e.succeeded>0&&n==="text"){console.log(`
628
628
  \u{1F4CB} Successful Operations:`);for(let t of e.results.filter(r=>r.success))console.log(` \u2705 ${t.command} ${t.filepath}: ${t.action}`)}}}o(jY,"outputResult");function yD(){return new ae("batch").description("Execute multiple operations in a single CLI invocation").option("--vault <path>","Path to Obsidian vault",process.cwd()).option("--input <json>","JSON array of operations to execute").option("--file <path>","Path to JSON file containing operations").option("--atomic","All-or-nothing execution (rollback on any failure)").option("--dry-run","Preview changes without modifying files").option("--format <type>","Output format: text|json (default: text)","text").action(async n=>{let e=n.format||"text";D.setFormat(e);try{let t=(0,WE.resolve)(n.vault),r;if(n.input)r=n.input;else if(n.file){let c=(0,WE.resolve)(n.file);if(!GE.default.existsSync(c))throw new Ke(`Batch file not found: ${c}`,"exocortex batch --file operations.json");r=await GE.default.readFile(c,"utf-8")}else throw new Ke("Either --input or --file option is required",`exocortex batch --input '[{"command":"start","filepath":"task.md"}]' or exocortex batch --file operations.json`);let i=uc.parseInput(r);if(i.length===0)throw new Ke("Batch input contains no operations",`exocortex batch --input '[{"command":"start","filepath":"task.md"}]'`);let a=await new uc(t,n.dryRun).executeBatch(i,n.atomic);jY(e,a),process.exit(a.success?0:5)}catch(t){D.handle(t)}})}o(yD,"batchCommand");var _D=require("path");function $Y(n,e){if(n==="json"){let t=X.success(e,{durationMs:e.durationMs,itemCount:e.total});console.log(JSON.stringify(t,null,2))}else{if(console.log(`
@@ -670,8 +670,8 @@ Continue? (y/n): `,s=>{r.close(),i(s.toLowerCase()==="y"||s.toLowerCase()==="yes
670
670
  \u26A0\uFE0F Found ${i.length} file(s) with IRI issues:
671
671
  `);for(let s of i)console.log(` \u274C ${s.path}`),console.log(` ${s.reason}`);console.log(`
672
672
  \u{1F4DD} To fix these issues:`),console.log(" - Rename files to remove spaces and special characters"),console.log(" - Use dashes (-) or underscores (_) instead of spaces"),console.log(" - Avoid angle brackets (<>) and other special characters"),console.log(`
673
- \u{1F4A1} Run 'exocortex sparql index --strict' to fail on first issue`)}i.length>0&&(process.exitCode=1)}catch(t){D.handle(t)}})}o(lX,"validateIriCommand");function UD(){let n=new ae("validate").description("Validate vault files (IRI checks, schema linting, frontmatter shapes)");return n.addCommand(lX()),n.addCommand(ND()),n.addCommand($D()),n}o(UD,"validateCommand");var qD=require("fs"),WD=require("path"),Ir=K(Dt());function GD(){return new ae("classes").description("List RDF classes in Obsidian vault or show class details").argument("[class-name]","Optional class name to show details (e.g., ems__Task)").option("--vault <path>","Path to Obsidian vault",process.cwd()).option("--format <type>","Output format: table|json","table").option("--output <type>","Response format: text|json (for MCP tools)","text").option("--use-cache","Use persistent cache (faster for repeated queries)").action(async(n,e)=>{let t=e.output||"text";D.setFormat(t);try{let r=Date.now(),i=(0,WD.resolve)(e.vault);if(!(0,qD.existsSync)(i))throw new Te(i);t==="text"&&console.log(`\u{1F4E6} Loading vault: ${i}...`);let s,a=!1;if(e.useCache){let f=await new qn(i).loadOrBuild();s=f.triples,a=f.cacheHit,t==="text"&&a&&console.log("\u{1F680} Cache hit! Loading from persistent cache...")}else{let u=new Nt(i);s=await new Ir.NoteToRDFConverter(u).convertVault()}let c=new Ir.InMemoryTripleStore;await c.addAll(s);let l=Date.now()-r;if(t==="text"){let u=a?" (from cache)":"";console.log(`\u2705 Loaded ${s.length} triples in ${l}ms${u}
674
- `)}n?await fX(c,n,e,t):await uX(c,e,t)}catch(r){D.handle(r)}})}o(GD,"classesCommand");async function uX(n,e,t){let s=new Ir.ExoQLParser().parse(`
673
+ \u{1F4A1} Run 'exocortex sparql index --strict' to fail on first issue`)}i.length>0&&(process.exitCode=1)}catch(t){D.handle(t)}})}o(lX,"validateIriCommand");function UD(){let n=new ae("validate").description("Validate vault files (IRI checks, schema linting, frontmatter shapes)");return n.addCommand(lX()),n.addCommand(ND()),n.addCommand($D()),n}o(UD,"validateCommand");var qD=require("fs"),WD=require("path"),Rr=K(Dt());function GD(){return new ae("classes").description("List RDF classes in Obsidian vault or show class details").argument("[class-name]","Optional class name to show details (e.g., ems__Task)").option("--vault <path>","Path to Obsidian vault",process.cwd()).option("--format <type>","Output format: table|json","table").option("--output <type>","Response format: text|json (for MCP tools)","text").option("--use-cache","Use persistent cache (faster for repeated queries)").action(async(n,e)=>{let t=e.output||"text";D.setFormat(t);try{let r=Date.now(),i=(0,WD.resolve)(e.vault);if(!(0,qD.existsSync)(i))throw new Te(i);t==="text"&&console.log(`\u{1F4E6} Loading vault: ${i}...`);let s,a=!1;if(e.useCache){let f=await new qn(i).loadOrBuild();s=f.triples,a=f.cacheHit,t==="text"&&a&&console.log("\u{1F680} Cache hit! Loading from persistent cache...")}else{let u=new Nt(i);s=await new Rr.NoteToRDFConverter(u).convertVault()}let c=new Rr.InMemoryTripleStore;await c.addAll(s);let l=Date.now()-r;if(t==="text"){let u=a?" (from cache)":"";console.log(`\u2705 Loaded ${s.length} triples in ${l}ms${u}
674
+ `)}n?await fX(c,n,e,t):await uX(c,e,t)}catch(r){D.handle(r)}})}o(GD,"classesCommand");async function uX(n,e,t){let s=new Rr.ExoQLParser().parse(`
675
675
  PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
676
676
  SELECT ?class (COUNT(?instance) AS ?count)
677
677
  WHERE {
@@ -679,7 +679,7 @@ Continue? (y/n): `,s=>{r.close(),i(s.toLowerCase()==="y"||s.toLowerCase()==="yes
679
679
  }
680
680
  GROUP BY ?class
681
681
  ORDER BY DESC(?count)
682
- `),c=new Ir.ExoQLAlgebraTranslator().translate(s);c=new Ir.AlgebraOptimizer().optimize(c);let d=(await new Ir.ExoQLQueryExecutor(n).executeAll(c)).map(h=>{let p=h.get("class"),y=h.get("count");return{name:p?zD(p.toString()):"unknown",count:y?parseInt(y.toString(),10):0}});if(t==="json"||e.format==="json"){let h=X.success({classes:d,totalClasses:d.length});console.log(JSON.stringify(h,null,2))}else{if(console.log(`\u{1F4CA} Found ${d.length} RDF class(es):
682
+ `),c=new Rr.ExoQLAlgebraTranslator().translate(s);c=new Rr.AlgebraOptimizer().optimize(c);let d=(await new Rr.ExoQLQueryExecutor(n).executeAll(c)).map(h=>{let p=h.get("class"),y=h.get("count");return{name:p?zD(p.toString()):"unknown",count:y?parseInt(y.toString(),10):0}});if(t==="json"||e.format==="json"){let h=X.success({classes:d,totalClasses:d.length});console.log(JSON.stringify(h,null,2))}else{if(console.log(`\u{1F4CA} Found ${d.length} RDF class(es):
683
683
  `),d.length===0){console.log("No classes found in vault.");return}let h=Math.max(...d.map(p=>p.name.length),10);console.log("\u250C"+"\u2500".repeat(h+2)+"\u252C"+"\u2500".repeat(12)+"\u2510"),console.log("\u2502 "+"Class".padEnd(h)+" \u2502 "+"Instances".padEnd(10)+" \u2502"),console.log("\u251C"+"\u2500".repeat(h+2)+"\u253C"+"\u2500".repeat(12)+"\u2524");for(let p of d)console.log("\u2502 "+p.name.padEnd(h)+" \u2502 "+p.count.toString().padStart(10)+" \u2502");console.log("\u2514"+"\u2500".repeat(h+2)+"\u2534"+"\u2500".repeat(12)+"\u2518")}}o(uX,"listAllClasses");async function fX(n,e,t,r){let i=`
684
684
  PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
685
685
  SELECT (COUNT(?instance) AS ?count)
@@ -687,7 +687,7 @@ Continue? (y/n): `,s=>{r.close(),i(s.toLowerCase()==="y"||s.toLowerCase()==="yes
687
687
  ?instance rdf:type ?class .
688
688
  FILTER(CONTAINS(STR(?class), "${e}"))
689
689
  }
690
- `,s=new Ir.ExoQLParser,a=s.parse(i),c=new Ir.ExoQLAlgebraTranslator,l=c.translate(a),u=new Ir.AlgebraOptimizer;l=u.optimize(l);let f=new Ir.ExoQLQueryExecutor(n),d=await f.executeAll(l),h=d.length>0?parseInt(d[0].get("count")?.toString()||"0",10):0,p=`
690
+ `,s=new Rr.ExoQLParser,a=s.parse(i),c=new Rr.ExoQLAlgebraTranslator,l=c.translate(a),u=new Rr.AlgebraOptimizer;l=u.optimize(l);let f=new Rr.ExoQLQueryExecutor(n),d=await f.executeAll(l),h=d.length>0?parseInt(d[0].get("count")?.toString()||"0",10):0,p=`
691
691
  PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
692
692
  SELECT ?property (COUNT(?value) AS ?usageCount)
693
693
  WHERE {
@@ -698,7 +698,7 @@ Continue? (y/n): `,s=>{r.close(),i(s.toLowerCase()==="y"||s.toLowerCase()==="yes
698
698
  }
699
699
  GROUP BY ?property
700
700
  ORDER BY DESC(?usageCount)
701
- `;a=s.parse(p),c=new Ir.ExoQLAlgebraTranslator,l=c.translate(a),u=new Ir.AlgebraOptimizer,l=u.optimize(l);let v=(await f.executeAll(l)).map(b=>{let A=b.get("property"),I=b.get("usageCount");return{name:A?zD(A.toString()):"unknown",usageCount:I?parseInt(I.toString(),10):0}}),w={name:e,instanceCount:h,properties:v};if(r==="json"||t.format==="json"){let b=X.success(w);console.log(JSON.stringify(b,null,2))}else{if(console.log(`\u{1F4CB} Class: ${e}
701
+ `;a=s.parse(p),c=new Rr.ExoQLAlgebraTranslator,l=c.translate(a),u=new Rr.AlgebraOptimizer,l=u.optimize(l);let v=(await f.executeAll(l)).map(b=>{let A=b.get("property"),I=b.get("usageCount");return{name:A?zD(A.toString()):"unknown",usageCount:I?parseInt(I.toString(),10):0}}),w={name:e,instanceCount:h,properties:v};if(r==="json"||t.format==="json"){let b=X.success(w);console.log(JSON.stringify(b,null,2))}else{if(console.log(`\u{1F4CB} Class: ${e}
702
702
  `),console.log(` Instances: ${h}`),console.log(` Properties: ${v.length}
703
703
  `),v.length===0){console.log(" No properties found.");return}let b=Math.max(...v.map(A=>A.name.length),10);console.log(" \u250C"+"\u2500".repeat(b+2)+"\u252C"+"\u2500".repeat(10)+"\u2510"),console.log(" \u2502 "+"Property".padEnd(b)+" \u2502 "+"Usage".padEnd(8)+" \u2502"),console.log(" \u251C"+"\u2500".repeat(b+2)+"\u253C"+"\u2500".repeat(10)+"\u2524");for(let A of v)console.log(" \u2502 "+A.name.padEnd(b)+" \u2502 "+A.usageCount.toString().padStart(8)+" \u2502");console.log(" \u2514"+"\u2500".repeat(b+2)+"\u2534"+"\u2500".repeat(10)+"\u2518")}}o(fX,"showClassDetails");function zD(n){let e=n.replace(/^<|>$/g,""),t=e.lastIndexOf("#");if(t!==-1)return e.substring(t+1);let r=e.lastIndexOf("/");return r!==-1?e.substring(r+1):e}o(zD,"extractLocalName");var QD=require("path"),KE=require("fs"),KD=require("fs");var HE=class extends Error{static{o(this,"ClassNotFoundError")}constructor(e,t){let r=`Class '${e}' not found in vault`;t&&t.length>0&&(r+=`
704
704
  Available classes: ${t.join(", ")}`),super(r),this.name="ClassNotFoundError"}},hu=class{constructor(e){this.fsAdapter=e;this.cache=new Map}static{o(this,"ClassResolverService")}async resolve(e,t){if(this.isUUID(t))return t;let r=await this.getOrBuildIndex(e),i=r.get(t);if(!i){let s=Array.from(r.keys()).filter(a=>!this.isUUID(a));throw new HE(t,s)}return i}async listClasses(e){let t=await this.getOrBuildIndex(e);return Array.from(t.keys())}async getOrBuildIndex(e){if(this.cache.has(e))return this.cache.get(e);let t=await this.buildIndex(e);return this.cache.set(e,t),t}async buildIndex(e){let t=new Map,r=await this.fsAdapter.getMarkdownFiles();for(let i of r)try{let s=await this.fsAdapter.getFileMetadata(i);if(!this.isClassDefinition(s))continue;let a=this.getBasename(i),c=s.exo__Asset_uid;if(!c&&this.isUUID(a)&&(c=a),!c)continue;let l=String(c);a&&t.set(a,l);let u=s.exo__Asset_label;u&&typeof u=="string"&&u!==a&&t.set(u,l)}catch{continue}return t}isClassDefinition(e){let t=e.exo__Instance_class;return t?(Array.isArray(t)?t:[t]).some(i=>{let s=String(i);return s.includes("ims__Class")||s.includes("exo__Class")}):!1}getBasename(e){let t=e.split("/");return t[t.length-1].replace(/\.md$/,"")}isUUID(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}};var QE=class extends Error{static{o(this,"WikilinkNotFoundError")}constructor(e,t){let r=t?`|${t}`:"";super(`Wikilink [[${e}${r}]] \u2014 file not found in vault`),this.name="WikilinkNotFoundError"}},gy=class{constructor(e){this.fsAdapter=e}static{o(this,"WikilinkValidator")}static{this.WIKILINK_PATTERN=/\[\[([^\]|]+)(?:\|[^\]]*)?]]/g}async validatePropertyValues(e){for(let[,t]of Object.entries(e))await this.validateValue(t)}async validateValue(e){let t=this.extractWikilinks(e);for(let r of t)await this.validateWikilink(r.uuid,r.label)}extractWikilinks(e){let t=[],r=/\[\[([^\]|]+)(?:\|([^\]]*))?\]\]/g,i;for(;(i=r.exec(e))!==null;)t.push({uuid:i[1].trim(),label:i[2]?.trim()});return t}async validateWikilink(e,t){if(!this.looksLikeUUID(e))return;if(!await this.fsAdapter.fileExists(`${e}.md`)&&!await this.fsAdapter.findFileByUID(e))throw new QE(e,t)}looksLikeUUID(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}};var HD=K(Dt());var dX="de20a3f1-7483-4714-ab28-b45f5cf02c76",hX="Asia/Almaty",yy=class{constructor(e,t,r){this.fsAdapter=e;this.classResolver=t;this.wikilinkValidator=r}static{o(this,"AssetCreationService")}async create(e){if(!e.label||e.label.trim().length===0)throw new Error("Label cannot be empty");let t=e.label.trim(),r=await this.classResolver.resolve(e.vault,e.classShortName);e.properties&&!e.skipWikilinkValidation&&await this.wikilinkValidator.validatePropertyValues(e.properties);let i=Sd(),s=this.generateTimestamp(e.timezone),a=this.buildFrontmatter({assetUuid:i,classShortName:e.classShortName,classUuid:r,label:t,aliases:e.aliases,properties:e.properties,createdBy:e.createdBy||dX,timestamp:s}),c=HD.MetadataHelpers.buildFileContent(a,e.body),l=`01 Inbox/${i}.md`;return e.dryRun||await this.fsAdapter.createFile(l,c),{uuid:i,path:l,label:t,frontmatter:a}}buildFrontmatter(e){let t={};t.exo__Asset_uid=e.assetUuid,t.exo__Asset_label=e.label,t.exo__Asset_createdAt=e.timestamp,t.exo__Asset_createdBy=`"[[${e.createdBy}]]"`,t.exo__Instance_class=[`"[[${e.classUuid}|${e.classShortName}]]"`];let r=[e.label];if(e.aliases&&e.aliases.length>0)for(let i of e.aliases)r.includes(i)||r.push(i);if(t.aliases=r,e.properties)for(let[i,s]of Object.entries(e.properties))i==="exo__Asset_uid"||i==="exo__Asset_label"||i==="exo__Asset_createdAt"||i==="exo__Asset_createdBy"||i==="exo__Instance_class"||i==="aliases"||(t[i]=this.formatPropertyValue(s));return t}formatPropertyValue(e){return e.includes("[[")?[e.startsWith('"')&&e.endsWith('"')?e:`"${e}"`]:e}generateTimestamp(e){let t=e||hX,r=new Date,s=new Intl.DateTimeFormat("en-CA",{timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1}).formatToParts(r),a=o(c=>s.find(l=>l.type===c)?.value||"00","get");return`${a("year")}-${a("month")}-${a("day")}T${a("hour")}:${a("minute")}:${a("second")}`}};function pX(n){if(!n||n.length===0)return{};let e={};for(let t of n){let r=t.indexOf("=");if(r===-1)throw new Error(`Invalid property format: "${t}". Expected "key=value" format.`);let i=t.substring(0,r).trim(),s=t.substring(r+1).trim();if(!i)throw new Error(`Invalid property format: "${t}". Key cannot be empty.`);e[i]=s}return e}o(pX,"parseProperties");async function mX(n){if(n.bodyFile){if(!(0,KE.existsSync)(n.bodyFile))throw new Error(`Body file not found: ${n.bodyFile}`);return(0,KD.readFileSync)(n.bodyFile,"utf-8")}if(n.body==="-")return gX(3e4);if(n.body)return n.body}o(mX,"resolveBody");function gX(n){return new Promise((e,t)=>{let r=[],i=setTimeout(()=>{process.stdin.removeAllListeners(),process.stdin.destroy(),t(new Error(`Stdin read timed out after ${n}ms. Ensure you pipe content to stdin or close the pipe.`))},n);process.stdin.on("data",s=>{r.push(s)}),process.stdin.on("end",()=>{clearTimeout(i),e(Buffer.concat(r).toString("utf-8"))}),process.stdin.on("error",s=>{clearTimeout(i),t(s)}),process.stdin.isTTY&&(clearTimeout(i),e("")),process.stdin.resume()})}o(gX,"readStdin");function YD(){return new ae("create").description("Create a new vault asset with auto-generated UUID, timestamp, and frontmatter").requiredOption("--class <name>","Class short name (e.g. ztlk__PermanentNote) or UUID").requiredOption("--label <text>","Human-readable label for the asset").option("--vault <path>","Path to Obsidian vault",process.cwd()).option("--aliases <names...>","Additional aliases for the asset").option("--property <key=value...>","Property key-value pairs (repeatable)",yX,[]).option("--body <text>","Markdown body content (use '-' to read from stdin)").option("--body-file <path>","Read body content from file").option("--dry-run","Preview frontmatter without writing file").option("--created-by <uuid>","Creator UUID (defaults to ExoAssistant)").option("--timezone <tz>","Timezone for timestamps (defaults to Asia/Almaty)").option("--skip-wikilink-validation","Skip wikilink existence validation").action(async n=>{try{let e=(0,QD.resolve)(n.vault);if(!(0,KE.existsSync)(e))throw new Te(e);let t=pX(n.property),r=await mX(n);r&&(r=r.replace(/\\n/g,`
@@ -805,7 +805,7 @@ exo__BacklinksTableBlock_columns:${f==="[]"?" []":f}
805
805
  `),console.log(`${"Rank".padEnd(6)}${"Term".padEnd(30)}${"Freq".padEnd(8)}Sample UIDs`),console.log("-".repeat(90)),c.forEach((u,f)=>{let d=`#${f+1}`.padEnd(6),h=u.term.padEnd(30),p=String(u.frequency).padEnd(8),y=u.sample_uids.join(", ");console.log(`${d}${h}${p}${y}`)})})}o(ON,"backfillOrphanTermsCommand");function FN(){let n=new ae("backfill").description("Concept backfill tools for aiKnow assets");return n.addCommand(PN()),n.addCommand(ON()),n}o(FN,"backfillCommand");var Oy=require("path"),BN=require("fs"),VN=require("os");var Ry=require("child_process"),Py=require("fs"),kN=require("path");var Zi=require("fs"),Iy=K(require("path")),NN=require("crypto");var pJ=/^---\s*\r?\n([\s\S]*?)\r?\n---\s*(?:\r?\n([\s\S]*))?$/;function DN(n){let e=n.match(pJ);if(!e)return null;let[,t,r=""]=e,i=sr.load(t);if(i==null)return{frontmatter:{},body:r};if(typeof i!="object"||Array.isArray(i))throw new Error("frontmatter is not a YAML mapping");return{frontmatter:i,body:r}}o(DN,"parseFile");function mJ(n,e){let t=sr.dump(n,{lineWidth:-1,quotingType:'"',forceQuotes:!1,noRefs:!0}),r=e.length>0?e:"";return`---
806
806
  ${t}---
807
807
  ${r}`}o(mJ,"serializeFile");function LN(n,e,t={}){let r=Iy.default.dirname(n),i=Iy.default.basename(n),s=Iy.default.join(r,`.${i}.tmp.${process.pid}.${(0,NN.randomBytes)(6).toString("hex")}`);try{let a=(0,Zi.readFileSync)(n,"utf8"),c;try{c=DN(a)}catch(f){return{success:!1,verified:!1,reason:"parse-error",error:f.message}}if(!c)return{success:!1,verified:!1,reason:"no-frontmatter"};let l={...c.frontmatter,...e},u=mJ(l,c.body);if((0,Zi.writeFileSync)(s,u,"utf8"),(0,Zi.renameSync)(s,n),t.verifyKey!==void 0){let f=(0,Zi.readFileSync)(n,"utf8"),d;try{d=DN(f)}catch(p){return{success:!1,verified:!1,reason:"parse-error",error:p.message}}if(!d)return{success:!1,verified:!1,reason:"no-frontmatter"};let h=d.frontmatter[t.verifyKey];return h!==t.verifyValue?{success:!1,verified:!1,reason:"verify-mismatch",error:`expected ${t.verifyKey}=${String(t.verifyValue)}, got ${String(h)}`}:{success:!0,verified:!0}}return{success:!0,verified:!0}}catch(a){if((0,Zi.existsSync)(s))try{(0,Zi.unlinkSync)(s)}catch{}return{success:!1,verified:!1,reason:"fs-error",error:a.message}}}o(LN,"atomicUpdateFrontmatter");var gJ=/^claude-child-([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$/,yJ=/^claude-child-([0-9a-f]{8})-(\d+)$/,_J="EffortStatusDoing";function MN(n){return e=>new Promise((t,r)=>{n(e,(i,s,a)=>{i?r(Object.assign(i,{stdout:s,stderr:a})):t(s)})})}o(MN,"makeExecPromise");async function SJ(n=Ry.exec){let e=MN(n),t;try{t=await e("tmux list-sessions -F '#{session_name}' 2>/dev/null")}catch{return[]}let r=[];for(let i of t.split(`
808
- `).map(s=>s.trim()).filter(Boolean)){let s=gJ.exec(i);if(s){r.push({sessionName:i,uuid:s[1],type:"full"});continue}let a=yJ.exec(i);a&&r.push({sessionName:i,uuid:a[1],type:"short"})}return r}o(SJ,"listClaudeChildSessions");function vJ(n,e,t){let r=null,i=e.toLowerCase();function s(a){if(r)return;let c;try{c=(0,Py.readdirSync)(a,{withFileTypes:!0})}catch{return}for(let l of c){if(r)return;if(l.name.startsWith(".")||l.name==="node_modules")continue;let u=(0,kN.join)(a,l.name);if(l.isDirectory())s(u);else if(l.name.endsWith(".md")){let f=l.name.slice(0,-3).toLowerCase();(t==="full"&&f===i||t==="short"&&f.startsWith(i))&&(r=u)}}}return o(s,"walk"),s(n),r}o(vJ,"findVaultFile");function bJ(n,e){try{let i=(e??(s=>(0,Py.readFileSync)(s,"utf8")))(n).match(/ems__Effort_status\s*:.*\[\[([^\]]+)\]\]/);return i?i[1].includes(_J):!1}catch{return!1}}o(bJ,"isTaskDoing");async function jN(n,e=Ry.exec,t){let r=await SJ(e),i=[];for(let s of r){let a=vJ(n,s.uuid,s.type);if(!a){i.push({sessionName:s.sessionName,taskUuid:s.uuid,taskFilePath:null,reason:"vault task not found"});continue}bJ(a,t)||i.push({sessionName:s.sessionName,taskUuid:s.uuid,taskFilePath:a,reason:"vault task status != Doing"})}return i}o(jN,"detectOrphans");async function $N(n,e,t=Ry.exec,r=LN){let i=MN(t);if(e)return{ok:!0};let s=new Date().toISOString();if(n.taskFilePath)try{r(n.taskFilePath,{ems__Effort_status:"[[ems__EffortStatusFailed]]",aiTask__Task_lastError:`orphan recovery: ${n.reason}`,exo__Asset_updatedAt:s})}catch(a){return{ok:!1,error:`vault update failed: ${a.message}`}}try{await i(`tmux kill-session -t ${JSON.stringify(n.sessionName)}`)}catch{}return{ok:!0}}o($N,"recoverOrphan");function wJ(){return process.env.EXOCORTEX_VAULT??(0,Oy.join)((0,VN.homedir)(),"vault-2025")}o(wJ,"defaultVault");function UN(){return new ae("recover").description("Detect and recover orphaned claude-child tmux sessions. A session is orphaned when the corresponding vault task is not in Doing status. Default mode: dry-run (no changes). Use --apply to perform recovery.").option("--vault <path>","Path to Obsidian vault",wJ()).option("--dry-run","List orphans without applying changes (default)",!1).option("--apply","Apply orphan recovery: set Failed + kill tmux session",!1).action(async n=>{let e=(0,Oy.resolve)(n.vault);if(!(0,BN.existsSync)(e)){console.error(`[recover] vault not found: ${e}`),process.exitCode=1;return}let t=!n.apply;console.log(`[recover] vault=${e} mode=${t?"dry-run":"apply"}`);let r=await jN(e);if(r.length===0){console.log("[recover] No orphaned claude-child sessions found.");return}console.log(`[recover] Found ${r.length} orphan(s):`);for(let a of r){let c=a.taskFilePath??"(not found in vault)";console.log(` session=${a.sessionName} uuid=${a.taskUuid} reason=${a.reason}`),console.log(` file=${c}`)}if(t){console.log("[recover] Dry-run mode: no changes applied. Use --apply to recover.");return}let i=0,s=0;for(let a of r){let c=await $N(a,!1);c.ok?(i++,console.log(`[recover] RECOVERED: ${a.sessionName}`)):(s++,console.error(`[recover] ERROR recovering ${a.sessionName}: ${c.error}`))}console.log(`[recover] Done: recovered=${i} errors=${s}`),s>0&&(process.exitCode=1)})}o(UN,"recoverCommand");function qN(n){n.addCommand(eF()),n.addCommand(iF()),n.addCommand(sF())}o(qN,"addQuerySubcommands");function WN(n){let e=new ae;e.name("exocortex").description("CLI tool for Exocortex knowledge management system").version(n??"15.170.0");let t=e.command("exoql").description("ExoQL query execution and cache management");qN(t);let r=e.command("sparql").description("(deprecated) Use 'exoql' instead");return qN(r),r.hook("preAction",()=>{console.error('\u26A0\uFE0F "sparql" is deprecated. Use "exoql" instead.')}),e.addCommand(hD()),e.addCommand(gD()),e.addCommand(yD()),e.addCommand(SD()),e.addCommand(vD()),e.addCommand(AD()),e.addCommand(RD()),e.addCommand(UD()),e.addCommand(GD()),e.addCommand(YD()),e.addCommand(ZD()),e.addCommand(eN()),e.addCommand(rN()),e.addCommand(hN()),e.addCommand(yN()),e.addCommand(TN()),e.addCommand(AN()),e.addCommand(FN()),e.addCommand(UN()),e}o(WN,"createProgram");WN().parse();0&&(module.exports={createProgram});
808
+ `).map(s=>s.trim()).filter(Boolean)){let s=gJ.exec(i);if(s){r.push({sessionName:i,uuid:s[1],type:"full"});continue}let a=yJ.exec(i);a&&r.push({sessionName:i,uuid:a[1],type:"short"})}return r}o(SJ,"listClaudeChildSessions");function vJ(n,e,t){let r=null,i=e.toLowerCase();function s(a){if(r)return;let c;try{c=(0,Py.readdirSync)(a,{withFileTypes:!0})}catch{return}for(let l of c){if(r)return;if(l.name.startsWith(".")||l.name==="node_modules")continue;let u=(0,kN.join)(a,l.name);if(l.isDirectory())s(u);else if(l.name.endsWith(".md")){let f=l.name.slice(0,-3).toLowerCase();(t==="full"&&f===i||t==="short"&&f.startsWith(i))&&(r=u)}}}return o(s,"walk"),s(n),r}o(vJ,"findVaultFile");function bJ(n,e){try{let i=(e??(s=>(0,Py.readFileSync)(s,"utf8")))(n).match(/ems__Effort_status\s*:.*\[\[([^\]]+)\]\]/);return i?i[1].includes(_J):!1}catch{return!1}}o(bJ,"isTaskDoing");async function jN(n,e=Ry.exec,t){let r=await SJ(e),i=[];for(let s of r){let a=vJ(n,s.uuid,s.type);if(!a){i.push({sessionName:s.sessionName,taskUuid:s.uuid,taskFilePath:null,reason:"vault task not found"});continue}bJ(a,t)||i.push({sessionName:s.sessionName,taskUuid:s.uuid,taskFilePath:a,reason:"vault task status != Doing"})}return i}o(jN,"detectOrphans");async function $N(n,e,t=Ry.exec,r=LN){let i=MN(t);if(e)return{ok:!0};let s=new Date().toISOString();if(n.taskFilePath)try{r(n.taskFilePath,{ems__Effort_status:"[[ems__EffortStatusFailed]]",aiTask__Task_lastError:`orphan recovery: ${n.reason}`,exo__Asset_updatedAt:s})}catch(a){return{ok:!1,error:`vault update failed: ${a.message}`}}try{await i(`tmux kill-session -t ${JSON.stringify(n.sessionName)}`)}catch{}return{ok:!0}}o($N,"recoverOrphan");function wJ(){return process.env.EXOCORTEX_VAULT??(0,Oy.join)((0,VN.homedir)(),"vault-2025")}o(wJ,"defaultVault");function UN(){return new ae("recover").description("Detect and recover orphaned claude-child tmux sessions. A session is orphaned when the corresponding vault task is not in Doing status. Default mode: dry-run (no changes). Use --apply to perform recovery.").option("--vault <path>","Path to Obsidian vault",wJ()).option("--dry-run","List orphans without applying changes (default)",!1).option("--apply","Apply orphan recovery: set Failed + kill tmux session",!1).action(async n=>{let e=(0,Oy.resolve)(n.vault);if(!(0,BN.existsSync)(e)){console.error(`[recover] vault not found: ${e}`),process.exitCode=1;return}let t=!n.apply;console.log(`[recover] vault=${e} mode=${t?"dry-run":"apply"}`);let r=await jN(e);if(r.length===0){console.log("[recover] No orphaned claude-child sessions found.");return}console.log(`[recover] Found ${r.length} orphan(s):`);for(let a of r){let c=a.taskFilePath??"(not found in vault)";console.log(` session=${a.sessionName} uuid=${a.taskUuid} reason=${a.reason}`),console.log(` file=${c}`)}if(t){console.log("[recover] Dry-run mode: no changes applied. Use --apply to recover.");return}let i=0,s=0;for(let a of r){let c=await $N(a,!1);c.ok?(i++,console.log(`[recover] RECOVERED: ${a.sessionName}`)):(s++,console.error(`[recover] ERROR recovering ${a.sessionName}: ${c.error}`))}console.log(`[recover] Done: recovered=${i} errors=${s}`),s>0&&(process.exitCode=1)})}o(UN,"recoverCommand");function qN(n){n.addCommand(eF()),n.addCommand(iF()),n.addCommand(sF())}o(qN,"addQuerySubcommands");function WN(n){let e=new ae;e.name("exocortex").description("CLI tool for Exocortex knowledge management system").version(n??"15.170.1");let t=e.command("exoql").description("ExoQL query execution and cache management");qN(t);let r=e.command("sparql").description("(deprecated) Use 'exoql' instead");return qN(r),r.hook("preAction",()=>{console.error('\u26A0\uFE0F "sparql" is deprecated. Use "exoql" instead.')}),e.addCommand(hD()),e.addCommand(gD()),e.addCommand(yD()),e.addCommand(SD()),e.addCommand(vD()),e.addCommand(AD()),e.addCommand(RD()),e.addCommand(UD()),e.addCommand(GD()),e.addCommand(YD()),e.addCommand(ZD()),e.addCommand(eN()),e.addCommand(rN()),e.addCommand(hN()),e.addCommand(yN()),e.addCommand(TN()),e.addCommand(AN()),e.addCommand(FN()),e.addCommand(UN()),e}o(WN,"createProgram");WN().parse();0&&(module.exports={createProgram});
809
809
  /*! Bundled license information:
810
810
 
811
811
  reflect-metadata/Reflect.js: