@adaas/a-utils 0.1.20 → 0.1.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,10 +1,10 @@
1
- import {A_Feature,A_Inject,A_Scope,A_Error,A_Dependency,A_Concept,A_Container,A_TypeGuards,A_Component,A_IdentityHelper,A_Context,A_FormatterHelper,A_Fragment,A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,A_CommonHelper,A_Entity,A_ScopeError}from'@adaas/a-concept';var He=Object.defineProperty;var at=Object.getOwnPropertyDescriptor;var i=(M,t)=>He(M,"name",{value:t,configurable:true});var l=(M,t,e,r)=>{for(var o=r>1?void 0:r?at(t,e):t,n=M.length-1,s;n>=0;n--)(s=M[n])&&(o=(r?s(t,e,o):s(o))||o);return r&&o&&He(t,e,o),o},c=(M,t)=>(e,r)=>t(e,r,M);var ue=class ue extends A_Fragment{constructor(t,e){super(),this.meta.set("name",t),this.meta.set("params",e||{});}get name(){return this._meta.get("name")||this._name}get result(){return this._meta.get("result")}get error(){return this._meta.get("error")}get params(){return this._meta.get("params")||{}}fail(t){this._meta.set("error",t);}succeed(t){this._meta.set("result",t);}toJSON(){return {name:this.name,params:this.params,result:this.result||{},error:this.error?.toJSON()}}};i(ue,"A_OperationContext");var p=ue;var te=class te extends A_Error{constructor(t,e){A_TypeGuards.isString(e)?super(t,e):super(t),e instanceof p&&(this._context=e);}get context(){return this._context}};i(te,"A_ChannelError"),te.MethodNotImplemented="A-Channel Method Not Implemented";var F=te;var _t=(y=>(y.onTimeout="onTimeout",y.onRetry="onRetry",y.onCircuitBreakerOpen="onCircuitBreakerOpen",y.onCache="onCache",y.onConnect="onConnect",y.onDisconnect="onDisconnect",y.onBeforeRequest="onBeforeRequest",y.onRequest="onRequest",y.onAfterRequest="onAfterRequest",y.onError="onError",y.onSend="onSend",y.onConsume="onConsume",y))(_t||{}),dt=(r=>(r.PENDING="PENDING",r.SUCCESS="SUCCESS",r.FAILED="FAILED",r))(dt||{});var ge=class ge extends p{constructor(t){super("request",t);}get status(){return this.result?.status}get data(){return this.result?.data}succeed(t){let e=this.result;super.succeed({...e,data:t,status:"SUCCESS"});}};i(ge,"A_ChannelRequest");var re=ge;var x=class x extends A_Component{constructor(){super();this._processing=false;this._cache=new Map;}get processing(){return this._processing}get initialize(){return this._initialized||(this._initialized=this.connect()),this._initialized}async onConnect(...e){}async onDisconnect(...e){}async onBeforeRequest(...e){}async onRequest(...e){}async onAfterRequest(...e){}async onError(...e){}async onSend(...e){}async connect(){await this.call("onConnect");}async disconnect(){await this.call("onDisconnect");}async request(e){await this.initialize,this._processing=true;let r=new A_Scope({name:`a-channel@scope:request:${A_IdentityHelper.generateTimeId()}`}),o=new re(e);try{return r.register(o),await this.call("onBeforeRequest",r),await this.call("onRequest",r),await this.call("onAfterRequest",r),this._processing=!1,o}catch(n){this._processing=false;let s=new F(n);throw o.fail(s),r.register(s),await this.call("onError",r),r.destroy(),s}}async send(e){await this.initialize,this._processing=true;let r=new A_Scope({name:`a-channel@scope:send:${A_IdentityHelper.generateTimeId()}`}),o=new p("send",e);try{r.inherit(A_Context.scope(this)),r.register(o),await this.call("onSend",r),this._processing=!1;}catch(n){this._processing=false;let s=new F(n);r.register(s),o.fail(s),await this.call("onError",r),r.destroy();}}async consume(){await this.initialize,this._processing=true;let e=new A_Scope({name:`a-channel@scope:consume:${A_IdentityHelper.generateTimeId()}`}),r=new p("consume",{});try{return e.inherit(A_Context.scope(this)),e.register(r),await this.call("onConsume",e),this._processing=!1,r}catch(o){this._processing=false;let n=new F(o);return r.fail(n),await this.call("onError",e),r}}};i(x,"A_Channel"),l([A_Feature.Extend({name:"onConnect"})],x.prototype,"onConnect",1),l([A_Feature.Extend({name:"onDisconnect"})],x.prototype,"onDisconnect",1),l([A_Feature.Extend({name:"onBeforeRequest"})],x.prototype,"onBeforeRequest",1),l([A_Feature.Extend({name:"onRequest"})],x.prototype,"onRequest",1),l([A_Feature.Extend({name:"onAfterRequest"})],x.prototype,"onAfterRequest",1),l([A_Feature.Extend({name:"onError"})],x.prototype,"onError",1),l([A_Feature.Extend({name:"onSend"})],x.prototype,"onSend",1);var Te=x;var ht=(s=>(s.CREATED="CREATED",s.INITIALIZED="INITIALIZED",s.COMPILED="COMPILED",s.EXECUTING="EXECUTING",s.COMPLETED="COMPLETED",s.FAILED="FAILED",s))(ht||{}),ft=(o=>(o.CREATED_TO_INITIALIZED="created_initialized",o.INITIALIZED_TO_EXECUTING="initialized_executing",o.EXECUTING_TO_COMPLETED="executing_completed",o.EXECUTING_TO_FAILED="executing_failed",o))(ft||{}),ut=(a=>(a.onInit="onInit",a.onBeforeExecute="onBeforeExecute",a.onExecute="onExecute",a.onAfterExecute="onAfterExecute",a.onComplete="onComplete",a.onFail="onFail",a.onError="onError",a))(ut||{});var z=class z extends A_Error{};i(z,"A_CommandError"),z.CommandScopeBindingError="A-Command Scope Binding Error",z.ExecutionError="A-Command Execution Error",z.ResultProcessingError="A-Command Result Processing Error",z.CommandInterruptedError="A-Command Interrupted Error";var P=z;var K=class K extends A_Error{};i(K,"A_StateMachineError"),K.InitializationError="A-StateMachine Initialization Error",K.TransitionError="A-StateMachine Transition Error";var X=K;var Ae=class Ae extends p{constructor(t){super("a-state-machine-transition",t),this._meta.set("from",t.from),this._meta.set("to",t.to);}get from(){return this._meta.get("from")}get to(){return this._meta.get("to")}};i(Ae,"A_StateMachineTransition");var R=Ae;var At,St,Ct,vt,U=class U extends A_Component{get ready(){return this._initialized||(this._initialized=this.call("onInitialize")),this._initialized}async[vt="onInitialize"](...t){}async[Ct="onBeforeTransition"](...t){}async[St="onAfterTransition"](...t){}async[At="onError"](...t){}async transition(t,e,r){await this.ready;let o=`${A_FormatterHelper.toCamelCase(String(t))}_${A_FormatterHelper.toCamelCase(String(e))}`,n=new R({from:String(t),to:String(e),props:r}),s=new A_Scope({name:`A-StateMachine-Transition-Scope-${o}`,fragments:[n]});try{return await this.call("onBeforeTransition",s),await this.call(o,s),await this.call("onAfterTransition",s),s.destroy(),n.result}catch(a){let d=new X({title:X.TransitionError,description:`An error occurred while transitioning to "${o}"`,originalError:a});throw s.register(d),await this.call("onError",s),s.destroy(),d}}};i(U,"A_StateMachine"),l([A_Feature.Extend()],U.prototype,vt,1),l([A_Feature.Extend()],U.prototype,Ct,1),l([A_Feature.Extend()],U.prototype,St,1),l([A_Feature.Extend()],U.prototype,At,1);var O=U;var yo={},B=[];var Ce=class Ce extends A_Fragment{constructor(e){super({name:"A_Config"});this.VARIABLES=new Map;this.DEFAULT_ALLOWED_TO_READ_PROPERTIES=[...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,...B];this.config=A_CommonHelper.deepCloneAndMerge(e,{strict:false,defaults:{},variables:A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY}),this.CONFIG_PROPERTIES=this.config.variables?this.config.variables:[],this.config.variables.forEach(r=>{this.VARIABLES.set(A_FormatterHelper.toUpperSnakeCase(r),this.config.defaults[r]);});}get(e){if(this.CONFIG_PROPERTIES.includes(e)||this.DEFAULT_ALLOWED_TO_READ_PROPERTIES.includes(e)||!this.config.strict)return this.VARIABLES.get(A_FormatterHelper.toUpperSnakeCase(e));throw new Error("Property not exists or not allowed to read")}set(e,r){let o=Array.isArray(e)?e:typeof e=="string"?[{property:e,value:r}]:Object.keys(e).map(n=>({property:n,value:e[n]}));for(let{property:n,value:s}of o){let a=s||(this.config?.defaults?this.config.defaults[n]:void 0);this.VARIABLES.set(A_FormatterHelper.toUpperSnakeCase(n),a);}}};i(Ce,"A_Config");var h=Ce;var Ze={red:"31",yellow:"33",green:"32",blue:"34",cyan:"36",magenta:"35",gray:"90",brightBlue:"94",brightCyan:"96",brightMagenta:"95",darkGray:"30",lightGray:"37",indigo:"38;5;54",violet:"38;5;93",purple:"38;5;129",lavender:"38;5;183",skyBlue:"38;5;117",steelBlue:"38;5;67",slateBlue:"38;5;62",deepBlue:"38;5;18",lightBlue:"38;5;153",periwinkle:"38;5;111",cornflower:"38;5;69",powder:"38;5;152",charcoal:"38;5;236",silver:"38;5;250",smoke:"38;5;244",slate:"38;5;240"},We=["blue","cyan","magenta","gray","brightBlue","brightCyan","brightMagenta","darkGray","lightGray","indigo","violet","purple","lavender","skyBlue","steelBlue","slateBlue","deepBlue","lightBlue","periwinkle","cornflower","powder","charcoal","silver","smoke","slate"],N={RESET:"\x1B[0m",PREFIX:"\x1B[",SUFFIX:"m"},V={MINUTES_PAD:2,SECONDS_PAD:2,MILLISECONDS_PAD:3,SEPARATOR:":"},E={SCOPE_OPEN:"[",SCOPE_CLOSE:"]",TIME_OPEN:"|",TIME_CLOSE:"|",SEPARATOR:"-------------------------------",PIPE:"| "},J={LOG_LEVEL:"A_LOGGER_LEVEL",DEFAULT_SCOPE_LENGTH:"A_LOGGER_DEFAULT_SCOPE_LENGTH",DEFAULT_SCOPE_COLOR:"A_LOGGER_DEFAULT_SCOPE_COLOR",DEFAULT_LOG_COLOR:"A_LOGGER_DEFAULT_LOG_COLOR"};var C=class extends A_Component{constructor(e,r){super();this.scope=e;this.config=r;this.COLORS=Ze,this.STANDARD_SCOPE_LENGTH=r?.get(J.DEFAULT_SCOPE_LENGTH)||20;let o=r?.get(J.DEFAULT_SCOPE_COLOR),n=r?.get(J.DEFAULT_LOG_COLOR);if(o||n)this.DEFAULT_SCOPE_COLOR=o||this.generateColorFromScopeName(this.scope.name),this.DEFAULT_LOG_COLOR=n||this.generateColorFromScopeName(this.scope.name);else {let s=this.generateComplementaryColorsFromScope(this.scope.name);this.DEFAULT_SCOPE_COLOR=s.scopeColor,this.DEFAULT_LOG_COLOR=s.logColor;}}simpleHash(e){let r=0;for(let o=0;o<e.length;o++){let n=e.charCodeAt(o);r=(r<<5)-r+n,r=r&r;}return Math.abs(r)}generateColorFromScopeName(e){let r=We,n=this.simpleHash(e)%r.length;return r[n]}generateComplementaryColorsFromScope(e){let r=[{scopeColor:"indigo",logColor:"lightBlue"},{scopeColor:"deepBlue",logColor:"cyan"},{scopeColor:"purple",logColor:"lavender"},{scopeColor:"steelBlue",logColor:"skyBlue"},{scopeColor:"slateBlue",logColor:"periwinkle"},{scopeColor:"charcoal",logColor:"silver"},{scopeColor:"violet",logColor:"brightMagenta"},{scopeColor:"darkGray",logColor:"lightGray"},{scopeColor:"cornflower",logColor:"powder"},{scopeColor:"slate",logColor:"smoke"}],n=this.simpleHash(e)%r.length;return r[n]}get scopeLength(){return Math.max(this.scope.name.length,this.STANDARD_SCOPE_LENGTH)}get formattedScope(){let e=this.scope.name,r=this.STANDARD_SCOPE_LENGTH;if(e.length>=r)return e.substring(0,r);let o=r-e.length,n=Math.floor(o/2),s=o-n;return " ".repeat(n)+e+" ".repeat(s)}compile(e,...r){let o=this.getTime(),n=" ".repeat(this.scopeLength+3),s=r.length>1;return [`${N.PREFIX}${this.COLORS[this.DEFAULT_SCOPE_COLOR]}${N.SUFFIX}${E.SCOPE_OPEN}${this.formattedScope}${E.SCOPE_CLOSE}${N.RESET} ${N.PREFIX}${this.COLORS[e]}${N.SUFFIX}${E.TIME_OPEN}${o}${E.TIME_CLOSE}`,s?`
2
- ${n}${E.TIME_OPEN}${E.SEPARATOR}`:"",...r.map((a,d)=>{let L=d>0||s;switch(true){case a instanceof A_Error:return this.compile_A_Error(a);case a instanceof Error:return this.compile_Error(a);case(typeof a=="object"&&a!==null):return this.formatObject(a,L,n);default:return this.formatString(String(a),L,n)}}),s?`
3
- ${n}${E.TIME_OPEN}${E.SEPARATOR}${N.RESET}`:N.RESET]}formatObject(e,r,o){let n;try{n=JSON.stringify(e,null,2);}catch{let d=new WeakSet;n=JSON.stringify(e,(L,b)=>{if(typeof b=="object"&&b!==null){if(d.has(b))return "[Circular Reference]";d.add(b);}return b},2);}let s=n.replace(/\n/g,`
4
- ${o}${E.PIPE}`);return r?`
5
- ${o}${E.PIPE}`+s:s}formatString(e,r,o){return ((r?`
1
+ import {A_Feature,A_Inject,A_Scope,A_Error,A_Dependency,A_Concept,A_Container,A_TypeGuards,A_Component,A_IdentityHelper,A_Context,A_FormatterHelper,A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,A_Entity,A_Fragment,A_Meta,A_ScopeError}from'@adaas/a-concept';var Je=Object.defineProperty;var lt=Object.getOwnPropertyDescriptor;var i=($,t)=>Je($,"name",{value:t,configurable:true});var p=($,t,e,r)=>{for(var o=r>1?void 0:r?lt(t,e):t,n=$.length-1,s;n>=0;n--)(s=$[n])&&(o=(r?s(t,e,o):s(o))||o);return r&&o&&Je(t,e,o),o},a=($,t)=>(e,r)=>t(e,r,$);var ue=class ue extends A_Fragment{constructor(t,e){super({name:t}),this._meta=new A_Meta;for(let r in e)this._meta.set(r,e[r]);}[Symbol.iterator](){return this._meta[Symbol.iterator]()}get meta(){return this._meta}get(t){return this._meta.get(t)}set(t,e){this._meta.set(t,e);}has(t){return this._meta.has(t)}drop(t){this._meta.delete(t);}clear(){this._meta.clear();}toRaw(){return this._meta.toJSON()}toJSON(){return {name:this.name,...this.meta.toJSON()}}};i(ue,"A_ExecutionContext");var R=ue;var Ee=class Ee extends R{constructor(t,e){super("operation-context"),this.meta.set("name",t),this.meta.set("params",e||{});}get name(){return this._meta.get("name")||this._name}get result(){return this._meta.get("result")}get error(){return this._meta.get("error")}get params(){return this._meta.get("params")||{}}fail(t){this._meta.set("error",t);}succeed(t){this._meta.set("result",t);}toJSON(){return {name:this.name,params:this.params,result:this.result||{},error:this.error?.toJSON()}}};i(Ee,"A_OperationContext");var l=Ee;var oe=class oe extends A_Error{constructor(t,e){A_TypeGuards.isString(e)?super(t,e):super(t),e instanceof l&&(this._context=e);}get context(){return this._context}};i(oe,"A_ChannelError"),oe.MethodNotImplemented="A-Channel Method Not Implemented";var F=oe;var ft=(E=>(E.onTimeout="onTimeout",E.onRetry="onRetry",E.onCircuitBreakerOpen="onCircuitBreakerOpen",E.onCache="onCache",E.onConnect="onConnect",E.onDisconnect="onDisconnect",E.onBeforeRequest="onBeforeRequest",E.onRequest="onRequest",E.onAfterRequest="onAfterRequest",E.onError="onError",E.onSend="onSend",E.onConsume="onConsume",E))(ft||{}),yt=(r=>(r.PENDING="PENDING",r.SUCCESS="SUCCESS",r.FAILED="FAILED",r))(yt||{});var Te=class Te extends l{constructor(t){super("request",t);}get status(){return this.result?.status}get data(){return this.result?.data}succeed(t){let e=this.result;super.succeed({...e,data:t,status:"SUCCESS"});}};i(Te,"A_ChannelRequest");var J=Te;var O=class O extends A_Component{constructor(){super();this._processing=false;this._cache=new Map;}get processing(){return this._processing}get initialize(){return this._initialized||(this._initialized=this.connect()),this._initialized}async onConnect(...e){}async onDisconnect(...e){}async onBeforeRequest(...e){}async onRequest(...e){}async onAfterRequest(...e){}async onError(...e){}async onSend(...e){}async connect(){await this.call("onConnect");}async disconnect(){await this.call("onDisconnect");}async request(e){await this.initialize,this._processing=true;let r=new A_Scope({name:`a-channel@scope:request:${A_IdentityHelper.generateTimeId()}`}),o=new J(e);try{return r.register(o),await this.call("onBeforeRequest",r),await this.call("onRequest",r),await this.call("onAfterRequest",r),this._processing=!1,o}catch(n){this._processing=false;let s=new F(n);throw o.fail(s),r.register(s),await this.call("onError",r),r.destroy(),s}}async send(e){await this.initialize,this._processing=true;let r=new A_Scope({name:`a-channel@scope:send:${A_IdentityHelper.generateTimeId()}`}),o=new l("send",e);try{r.inherit(A_Context.scope(this)),r.register(o),await this.call("onSend",r),this._processing=!1;}catch(n){this._processing=false;let s=new F(n);r.register(s),o.fail(s),await this.call("onError",r),r.destroy();}}async consume(){await this.initialize,this._processing=true;let e=new A_Scope({name:`a-channel@scope:consume:${A_IdentityHelper.generateTimeId()}`}),r=new l("consume",{});try{return e.inherit(A_Context.scope(this)),e.register(r),await this.call("onConsume",e),this._processing=!1,r}catch(o){this._processing=false;let n=new F(o);return r.fail(n),await this.call("onError",e),r}}};i(O,"A_Channel"),p([A_Feature.Extend({name:"onConnect"})],O.prototype,"onConnect",1),p([A_Feature.Extend({name:"onDisconnect"})],O.prototype,"onDisconnect",1),p([A_Feature.Extend({name:"onBeforeRequest"})],O.prototype,"onBeforeRequest",1),p([A_Feature.Extend({name:"onRequest"})],O.prototype,"onRequest",1),p([A_Feature.Extend({name:"onAfterRequest"})],O.prototype,"onAfterRequest",1),p([A_Feature.Extend({name:"onError"})],O.prototype,"onError",1),p([A_Feature.Extend({name:"onSend"})],O.prototype,"onSend",1);var xe=O;var ut=(s=>(s.CREATED="CREATED",s.INITIALIZED="INITIALIZED",s.COMPILED="COMPILED",s.EXECUTING="EXECUTING",s.COMPLETED="COMPLETED",s.FAILED="FAILED",s))(ut||{}),Et=(o=>(o.CREATED_TO_INITIALIZED="created_initialized",o.INITIALIZED_TO_EXECUTING="initialized_executing",o.EXECUTING_TO_COMPLETED="executing_completed",o.EXECUTING_TO_FAILED="executing_failed",o))(Et||{}),Tt=(c=>(c.onInit="onInit",c.onBeforeExecute="onBeforeExecute",c.onExecute="onExecute",c.onAfterExecute="onAfterExecute",c.onComplete="onComplete",c.onFail="onFail",c.onError="onError",c))(Tt||{});var z=class z extends A_Error{};i(z,"A_CommandError"),z.CommandScopeBindingError="A-Command Scope Binding Error",z.ExecutionError="A-Command Execution Error",z.ResultProcessingError="A-Command Result Processing Error",z.CommandInterruptedError="A-Command Interrupted Error";var b=z;var W=class W extends A_Error{};i(W,"A_StateMachineError"),W.InitializationError="A-StateMachine Initialization Error",W.TransitionError="A-StateMachine Transition Error";var V=W;var xt=(o=>(o.onError="onError",o.onInitialize="onInitialize",o.onBeforeTransition="onBeforeTransition",o.onAfterTransition="onAfterTransition",o))(xt||{});var Ce=class Ce extends l{constructor(t){super("a-state-machine-transition",t),this._meta.set("from",t.from),this._meta.set("to",t.to);}get from(){return this._meta.get("from")}get to(){return this._meta.get("to")}};i(Ce,"A_StateMachineTransition");var v=Ce;var vt,wt,Pt,Ot,Y=class Y extends A_Component{get ready(){return this._initialized||(this._initialized=this.call("onInitialize")),this._initialized}async[Ot="onInitialize"](...t){}async[Pt="onBeforeTransition"](...t){}async[wt="onAfterTransition"](...t){}async[vt="onError"](...t){}async transition(t,e,r){await this.ready;let o=`${A_FormatterHelper.toCamelCase(String(t))}_${A_FormatterHelper.toCamelCase(String(e))}`,n=new v({from:String(t),to:String(e),props:r}),s=new A_Scope({name:`A-StateMachine-Transition-Scope-${o}`,fragments:[n]});try{return await this.call("onBeforeTransition",s),await this.call(o,s),await this.call("onAfterTransition",s),s.destroy(),n.result}catch(c){let d=new V({title:V.TransitionError,description:`An error occurred while transitioning to "${o}"`,originalError:c});throw s.register(d),await this.call("onError",s),s.destroy(),d}}};i(Y,"A_StateMachine"),p([A_Feature.Extend()],Y.prototype,Ot,1),p([A_Feature.Extend()],Y.prototype,Pt,1),p([A_Feature.Extend()],Y.prototype,wt,1),p([A_Feature.Extend()],Y.prototype,vt,1);var L=Y;var wo={},j=[];var ne=class ne extends A_Error{};i(ne,"A_ConfigError"),ne.InitializationError="A-Config Initialization Error";var I=ne;var ve=class ve extends R{constructor(e){super("a-config");this.DEFAULT_ALLOWED_TO_READ_PROPERTIES=[...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,...j];this._strict=e.strict??false,this._configProperties=e.variables??[];for(let r in e.defaults)this.set(A_FormatterHelper.toUpperSnakeCase(r),e.defaults[r]);}get strict(){return this._strict}get(e){if(this._configProperties.includes(e)||this.DEFAULT_ALLOWED_TO_READ_PROPERTIES.includes(e)||!this._strict)return super.get(A_FormatterHelper.toUpperSnakeCase(e));throw new I("Property not exists or not allowed to read")}set(e,r){let o=Array.isArray(e)?e:typeof e=="string"?[{property:e,value:r}]:Object.keys(e).map(n=>({property:n,value:e[n]}));for(let{property:n,value:s}of o)super.set(A_FormatterHelper.toUpperSnakeCase(n),s);}};i(ve,"A_Config");var f=ve;var Qe=20,Fo="all",et={red:"31",yellow:"33",green:"32",blue:"34",cyan:"36",magenta:"35",gray:"90",brightBlue:"94",brightCyan:"96",brightMagenta:"95",darkGray:"30",lightGray:"37",indigo:"38;5;54",violet:"38;5;93",purple:"38;5;129",lavender:"38;5;183",skyBlue:"38;5;117",steelBlue:"38;5;67",slateBlue:"38;5;62",deepBlue:"38;5;18",lightBlue:"38;5;153",periwinkle:"38;5;111",cornflower:"38;5;69",powder:"38;5;152",charcoal:"38;5;236",silver:"38;5;250",smoke:"38;5;244",slate:"38;5;240"},tt=["blue","cyan","magenta","gray","brightBlue","brightCyan","brightMagenta","darkGray","lightGray","indigo","violet","purple","lavender","skyBlue","steelBlue","slateBlue","deepBlue","lightBlue","periwinkle","cornflower","powder","charcoal","silver","smoke","slate"],k={RESET:"\x1B[0m",PREFIX:"\x1B[",SUFFIX:"m"},q={MINUTES_PAD:2,SECONDS_PAD:2,MILLISECONDS_PAD:3,SEPARATOR:":"},T={SCOPE_OPEN:"[",SCOPE_CLOSE:"]",TIME_OPEN:"|",TIME_CLOSE:"|",SEPARATOR:"-------------------------------",INDENT_BASE:3,PIPE:"| "},Z={LOG_LEVEL:"A_LOGGER_LEVEL",DEFAULT_SCOPE_LENGTH:"A_LOGGER_DEFAULT_SCOPE_LENGTH",DEFAULT_SCOPE_COLOR:"A_LOGGER_DEFAULT_SCOPE_COLOR",DEFAULT_LOG_COLOR:"A_LOGGER_DEFAULT_LOG_COLOR"};var w=class extends A_Component{constructor(e,r){super();this.scope=e;this.config=r;this.COLORS=et,this.STANDARD_SCOPE_LENGTH=r?.get(Z.DEFAULT_SCOPE_LENGTH)||20;let o=r?.get(Z.DEFAULT_SCOPE_COLOR),n=r?.get(Z.DEFAULT_LOG_COLOR);if(o||n)this.DEFAULT_SCOPE_COLOR=o||this.generateColorFromScopeName(this.scope.name),this.DEFAULT_LOG_COLOR=n||this.generateColorFromScopeName(this.scope.name);else {let s=this.generateComplementaryColorsFromScope(this.scope.name);this.DEFAULT_SCOPE_COLOR=s.scopeColor,this.DEFAULT_LOG_COLOR=s.logColor;}}simpleHash(e){let r=0;for(let o=0;o<e.length;o++){let n=e.charCodeAt(o);r=(r<<5)-r+n,r=r&r;}return Math.abs(r)}generateColorFromScopeName(e){let r=tt,n=this.simpleHash(e)%r.length;return r[n]}generateComplementaryColorsFromScope(e){let r=[{scopeColor:"indigo",logColor:"lightBlue"},{scopeColor:"deepBlue",logColor:"cyan"},{scopeColor:"purple",logColor:"lavender"},{scopeColor:"steelBlue",logColor:"skyBlue"},{scopeColor:"slateBlue",logColor:"periwinkle"},{scopeColor:"charcoal",logColor:"silver"},{scopeColor:"violet",logColor:"brightMagenta"},{scopeColor:"darkGray",logColor:"lightGray"},{scopeColor:"cornflower",logColor:"powder"},{scopeColor:"slate",logColor:"smoke"}],n=this.simpleHash(e)%r.length;return r[n]}get scopeLength(){return Math.max(this.scope.name.length,this.STANDARD_SCOPE_LENGTH)}get formattedScope(){let e=this.scope.name,r=this.STANDARD_SCOPE_LENGTH;if(e.length>=r)return e.substring(0,r);let o=r-e.length,n=Math.floor(o/2),s=o-n;return " ".repeat(n)+e+" ".repeat(s)}compile(e,...r){let o=this.getTime(),n=" ".repeat(this.scopeLength+3),s=r.length>1;return [`${k.PREFIX}${this.COLORS[this.DEFAULT_SCOPE_COLOR]}${k.SUFFIX}${T.SCOPE_OPEN}${this.formattedScope}${T.SCOPE_CLOSE}${k.RESET} ${k.PREFIX}${this.COLORS[e]}${k.SUFFIX}${T.TIME_OPEN}${o}${T.TIME_CLOSE}`,s?`
2
+ ${n}${T.TIME_OPEN}${T.SEPARATOR}`:"",...r.map((c,d)=>{let D=d>0||s;switch(true){case c instanceof A_Error:return this.compile_A_Error(c);case c instanceof Error:return this.compile_Error(c);case(typeof c=="object"&&c!==null):return this.formatObject(c,D,n);default:return this.formatString(String(c),D,n)}}),s?`
3
+ ${n}${T.TIME_OPEN}${T.SEPARATOR}${k.RESET}`:k.RESET]}formatObject(e,r,o){let n;try{n=JSON.stringify(e,null,2);}catch{let d=new WeakSet;n=JSON.stringify(e,(D,m)=>{if(typeof m=="object"&&m!==null){if(d.has(m))return "[Circular Reference]";d.add(m);}return m},2);}let s=n.replace(/\n/g,`
4
+ ${o}${T.PIPE}`);return r?`
5
+ ${o}${T.PIPE}`+s:s}formatString(e,r,o){return ((r?`
6
6
  `:"")+e).replace(/\n/g,`
7
- ${o}${E.PIPE}`)}shouldLog(e){switch(this.config?.get(J.LOG_LEVEL)||"info"){case "debug":return true;case "info":return e==="info"||e==="warning"||e==="error";case "warn":return e==="warning"||e==="error";case "error":return e==="error";case "all":return true;default:return false}}debug(e,...r){this.shouldLog("debug")&&(typeof e=="string"&&this.COLORS[e]?console.log(...this.compile(e,...r)):console.log(...this.compile(this.DEFAULT_LOG_COLOR,e,...r)));}info(e,...r){this.shouldLog("info")&&(typeof e=="string"&&this.COLORS[e]?console.log(...this.compile(e,...r)):console.log(...this.compile(this.DEFAULT_LOG_COLOR,e,...r)));}log(e,...r){this.info(e,...r);}warning(...e){this.shouldLog("warning")&&console.log(...this.compile("yellow",...e));}error(...e){this.shouldLog("error")&&console.log(...this.compile("red",...e));}log_A_Error(e){let r=this.getTime(),o=" ".repeat(this.scopeLength+3);console.log(`\x1B[31m[${this.formattedScope}] |${r}| ERROR ${e.code}
7
+ ${o}${T.PIPE}`)}shouldLog(e){switch(this.config?.get(Z.LOG_LEVEL)||"info"){case "debug":return true;case "info":return e==="info"||e==="warning"||e==="error";case "warn":return e==="warning"||e==="error";case "error":return e==="error";case "all":return true;default:return false}}debug(e,...r){this.shouldLog("debug")&&(typeof e=="string"&&this.COLORS[e]?console.log(...this.compile(e,...r)):console.log(...this.compile(this.DEFAULT_LOG_COLOR,e,...r)));}info(e,...r){this.shouldLog("info")&&(typeof e=="string"&&this.COLORS[e]?console.log(...this.compile(e,...r)):console.log(...this.compile(this.DEFAULT_LOG_COLOR,e,...r)));}log(e,...r){this.info(e,...r);}warning(...e){this.shouldLog("warning")&&console.log(...this.compile("yellow",...e));}error(...e){this.shouldLog("error")&&console.log(...this.compile("red",...e));}log_A_Error(e){let r=this.getTime(),o=" ".repeat(this.scopeLength+3);console.log(`\x1B[31m[${this.formattedScope}] |${r}| ERROR ${e.code}
8
8
  ${o}| ${e.message}
9
9
  ${o}| ${e.description}
10
10
  ${o}|-------------------------------
@@ -40,6 +40,6 @@ ${r}|-------------------------------`:"")}compile_Error(e){let r=" ".repeat(this
40
40
  `).map((o,n)=>n===0?o:`${r}| ${o}`).join(`
41
41
  `)},null,2).replace(/\n/g,`
42
42
  ${r}| `).replace(/\\n/g,`
43
- `)}getTime(){let e=new Date,r=String(e.getMinutes()).padStart(V.MINUTES_PAD,"0"),o=String(e.getSeconds()).padStart(V.SECONDS_PAD,"0"),n=String(e.getMilliseconds()).padStart(V.MILLISECONDS_PAD,"0");return `${r}${V.SEPARATOR}${o}${V.SEPARATOR}${n}`}};i(C,"A_Logger"),C=l([c(0,A_Inject(A_Scope)),c(1,A_Inject(h))],C);var bt,Nt,Dt,$t,kt,Mt,Ft,Gt,zt,Ut,Bt,u=class u extends A_Entity{constructor(e){super(e);this._listeners=new Map;}static get code(){return super.entity}get duration(){return this._endTime&&this._startTime?this._endTime.getTime()-this._startTime.getTime():this._startTime?new Date().getTime()-this._startTime.getTime():void 0}get idleTime(){return this._startTime&&this._createdAt?this._startTime.getTime()-this._createdAt.getTime():void 0}get scope(){return this._executionScope}get code(){return this.constructor.code}get status(){return this._status}get createdAt(){return this._createdAt}get startedAt(){return this._startTime}get endedAt(){return this._endTime}get result(){return this._result}get error(){return this._error}get params(){return this._params}get isProcessed(){return this._status==="COMPLETED"||this._status==="FAILED"}async[Bt="onBeforeTransition"](e,r,...o){this.checkScopeInheritance(),r?.debug("yellow",`Command ${this.aseid.toString()} transitioning from ${e.from} to ${e.to}`);}async[Ut="created_initialized"](e,...r){this._status==="CREATED"&&(this._createdAt=new Date,this._status="INITIALIZED",this.emit("onInit"));}async[zt="initialized_executing"](e,...r){this._status!=="INITIALIZED"&&this._status!=="CREATED"||(this._startTime=new Date,this._status="EXECUTING",this.emit("onExecute"));}async[Gt="executing_completed"](e,...r){this._endTime=new Date,this._status="COMPLETED",this.emit("onComplete");}async[Ft="executing_failed"](e,r,...o){this._endTime=new Date,this._status="FAILED",this.emit("onFail");}async[Mt="onInit"](e,...r){await e.transition("CREATED","INITIALIZED");}async[kt="onBeforeExecute"](e,...r){await e.transition("INITIALIZED","EXECUTING");}async[$t="onExecute"](...e){}async[Dt="onAfterExecute"](...e){}async[Nt="onComplete"](e,...r){await e.transition("EXECUTING","COMPLETED");}async[bt="onFail"](e,r,...o){await e.transition("EXECUTING","FAILED");}async init(){await this.call("onInit",this.scope);}async execute(){if(!this.isProcessed)try{this.checkScopeInheritance();let e=new p("execute-command");this.scope.register(e),await new Promise(async(r,o)=>{try{let n=new A_Feature({name:"onBeforeExecute",component:this,scope:this.scope}),s=new A_Feature({name:"onExecute",component:this,scope:this.scope}),a=new A_Feature({name:"onAfterExecute",component:this,scope:this.scope});this.on("onComplete",()=>{n.interrupt(),s.interrupt(),a.interrupt(),r();}),await n.process(this.scope),await s.process(this.scope),await a.process(this.scope),this._origin==="invoked"&&await this.complete(),r();}catch(n){o(n);}});}catch(e){let r=e instanceof A_Error?e:new P({title:P.ExecutionError,description:`An error occurred while executing command "${this.aseid.toString()}".`,originalError:e});await this.fail(r);}}async complete(e){this.isProcessed||(this._status="COMPLETED",this._result=e,await this.call("onComplete",this.scope),this.scope.destroy());}async fail(e){this.isProcessed||(this._status="FAILED",e&&(this._error=e,this.scope.register(e)),await this.call("onFail",this.scope),this.scope.destroy());}on(e,r){this._listeners.has(e)||this._listeners.set(e,new Set),this._listeners.get(e).add(r);}off(e,r){this._listeners.get(e)?.delete(r);}emit(e){this._listeners.get(e)?.forEach(async r=>{r(this);});}fromNew(e){super.fromNew(e),this._origin="invoked",this._executionScope=new A_Scope({name:`A-Command-Execution-Scope-${this.aseid.toString()}`,components:[O]}),this._createdAt=new Date,this._params=e,this._status="CREATED";}fromJSON(e){super.fromJSON(e),this._origin="serialized",this._executionScope=new A_Scope({name:`A-Command-Execution-Scope-${this.aseid.toString()}`,components:[O]}),e.createdAt&&(this._createdAt=new Date(e.createdAt)),e.startedAt&&(this._startTime=new Date(e.startedAt)),e.endedAt&&(this._endTime=new Date(e.endedAt)),this._params=e.params,this._status=e.status,e.error&&(this._error=new P(e.error)),e.result&&(this._result=e.result);}toJSON(){return {...super.toJSON(),code:this.code,status:this._status,params:this._params,createdAt:this._createdAt.toISOString(),startedAt:this._startTime?this._startTime.toISOString():void 0,endedAt:this._endTime?this._endTime.toISOString():void 0,duration:this.duration,idleTime:this.idleTime,result:this.result,error:this.error?this.error.toJSON():void 0}}checkScopeInheritance(){let e;try{e=A_Context.scope(this);}catch(r){throw new P({title:P.CommandScopeBindingError,description:`Command ${this.aseid.toString()} is not bound to any context scope. Ensure the command is properly registered within a context before execution.`,originalError:r})}this.scope.isInheritedFrom(A_Context.scope(this))||this.scope.inherit(A_Context.scope(this));}};i(u,"A_Command"),l([A_Feature.Extend(),c(0,A_Inject(R)),c(1,A_Inject(C))],u.prototype,Bt,1),l([A_Feature.Extend(),c(0,A_Inject(R))],u.prototype,Ut,1),l([A_Feature.Extend(),c(0,A_Inject(R))],u.prototype,zt,1),l([A_Feature.Extend(),c(0,A_Inject(R))],u.prototype,Gt,1),l([A_Feature.Extend(),c(0,A_Inject(R)),c(1,A_Inject(A_Error))],u.prototype,Ft,1),l([A_Feature.Extend(),c(0,A_Inject(O))],u.prototype,Mt,1),l([A_Feature.Extend({after:/.*/}),c(0,A_Dependency.Required()),c(0,A_Inject(O))],u.prototype,kt,1),l([A_Feature.Extend()],u.prototype,$t,1),l([A_Feature.Extend()],u.prototype,Dt,1),l([A_Feature.Extend({after:/.*/}),c(0,A_Inject(O))],u.prototype,Nt,1),l([A_Feature.Extend({after:/.*/}),c(0,A_Dependency.Required()),c(0,A_Inject(O)),c(1,A_Inject(p))],u.prototype,bt,1);var we=u;var xe=class xe{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._fs}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){this._fs=await import('fs');}initBrowser(){this._fs={readFileSync:i((t,e)=>(this.logger.warning("fs.readFileSync not available in browser environment"),""),"readFileSync"),existsSync:i(t=>(this.logger.warning("fs.existsSync not available in browser environment"),false),"existsSync"),createReadStream:i(t=>(this.logger.warning("fs.createReadStream not available in browser environment"),null),"createReadStream")};}};i(xe,"A_FSPolyfillClass");var ie=xe;var Re=class Re{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(t){return this._initialized||(this._fsPolyfill=t,await this.init()),this._crypto}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('crypto');this._crypto={createTextHash:i((e,r="sha384")=>Promise.resolve(`${r}-${t.createHash(r).update(e).digest("base64")}`),"createTextHash"),createFileHash:i((e,r="sha384")=>new Promise(async(o,n)=>{try{if(!this._fsPolyfill)throw new Error("FS polyfill is required for file hashing");let s=t.createHash(r),a=this._fsPolyfill.createReadStream(e);a.on("data",d=>s.update(d)),a.on("end",()=>o(`${r}-${s.digest("base64")}`)),a.on("error",d=>n(d));}catch(s){n(s);}}),"createFileHash")};}initBrowser(){this._crypto={createFileHash:i(()=>(this.logger.warning("File hash not available in browser environment"),Promise.resolve("")),"createFileHash"),createTextHash:i((t,e="SHA-384")=>new Promise(async(r,o)=>{try{if(!crypto.subtle)throw new Error("SubtleCrypto not available");let s=new TextEncoder().encode(t),a=await crypto.subtle.digest(e,s),d=Array.from(new Uint8Array(a)),L=btoa(String.fromCharCode(...d));r(`${e}-${L}`);}catch(n){o(n);}}),"createTextHash")};}};i(Re,"A_CryptoPolyfillClass");var ne=Re;var Pe=class Pe{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._http}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('http');this._http={request:t.request,get:t.get,createServer:t.createServer};}initBrowser(){this._http={request:i((t,e)=>(this.logger.warning("http.request not available in browser/test environment, use fetch instead"),this.createMockRequest(t,e,false)),"request"),get:i((t,e)=>(this.logger.warning("http.get not available in browser/test environment, use fetch instead"),this.createMockRequest(typeof t=="string"?{hostname:t}:t,e,false)),"get"),createServer:i(()=>(this.logger.error("http.createServer not available in browser/test environment"),null),"createServer")};}createMockRequest(t,e,r=false){return {end:i(()=>{if(e){let n={statusCode:200,headers:{},on:i((s,a)=>{s==="data"?setTimeout(()=>a("mock data"),0):s==="end"&&setTimeout(()=>a(),0);},"on"),pipe:i(s=>{s.write&&s.write("mock data"),s.end&&s.end();},"pipe")};setTimeout(()=>e(n),0);}},"end"),write:i(n=>{},"write"),on:i((n,s)=>{},"on")}}};i(Pe,"A_HttpPolyfillClass");var se=Pe;var Oe=class Oe{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._https}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('https');this._https={request:t.request,get:t.get,createServer:t.createServer};}initBrowser(){this._https={request:i((t,e)=>(this.logger.warning("https.request not available in browser/test environment, use fetch instead"),this.createMockRequest(t,e,true)),"request"),get:i((t,e)=>(this.logger.warning("https.get not available in browser/test environment, use fetch instead"),this.createMockRequest(typeof t=="string"?{hostname:t}:t,e,true)),"get"),createServer:i(()=>(this.logger.error("https.createServer not available in browser/test environment"),null),"createServer")};}createMockRequest(t,e,r=true){return {end:i(()=>{if(e){let n={statusCode:200,headers:{},on:i((s,a)=>{s==="data"?setTimeout(()=>a("mock data"),0):s==="end"&&setTimeout(()=>a(),0);},"on"),pipe:i(s=>{s.write&&s.write("mock data"),s.end&&s.end();},"pipe")};setTimeout(()=>e(n),0);}},"end"),write:i(n=>{},"write"),on:i((n,s)=>{},"on")}}};i(Oe,"A_HttpsPolyfillClass");var ae=Oe;var Ie=class Ie{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._path}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){this._path=await import('path');}initBrowser(){this._path={join:i((...t)=>t.join("/").replace(/\/+/g,"/"),"join"),resolve:i((...t)=>{let e="";for(let r of t)r.startsWith("/")?e=r:e=this._path.join(e,r);return e||"/"},"resolve"),dirname:i(t=>t.split("/").slice(0,-1).join("/")||"/","dirname"),basename:i((t,e)=>{let r=t.split("/").pop()||"";return e&&r.endsWith(e)?r.slice(0,-e.length):r},"basename"),extname:i(t=>{let e=t.split(".");return e.length>1?"."+e.pop():""},"extname"),relative:i((t,e)=>e.replace(t,"").replace(/^\//,""),"relative"),normalize:i(t=>t.replace(/\/+/g,"/").replace(/\/$/,"")||"/","normalize"),isAbsolute:i(t=>t.startsWith("/")||/^[a-zA-Z]:/.test(t),"isAbsolute"),parse:i(t=>{let e=this._path.extname(t),r=this._path.basename(t),o=this._path.basename(t,e);return {root:"/",dir:this._path.dirname(t),base:r,ext:e,name:o}},"parse"),format:i(t=>this._path.join(t.dir||"",t.base||""),"format"),sep:"/",delimiter:":"};}};i(Ie,"A_PathPolyfillClass");var ce=Ie;var Le=class Le{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._url}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('url');this._url={parse:t.parse,format:t.format,resolve:t.resolve,URL:t.URL||globalThis.URL,URLSearchParams:t.URLSearchParams||globalThis.URLSearchParams};}initBrowser(){this._url={parse:i(t=>{try{let e=new URL(t);return {protocol:e.protocol,hostname:e.hostname,port:e.port,pathname:e.pathname,search:e.search,hash:e.hash,host:e.host,href:e.href}}catch{return {}}},"parse"),format:i(t=>{try{return new URL("",t.href||`${t.protocol}//${t.host}${t.pathname}${t.search}${t.hash}`).href}catch{return ""}},"format"),resolve:i((t,e)=>{try{return new URL(e,t).href}catch{return e}},"resolve"),URL:globalThis.URL,URLSearchParams:globalThis.URLSearchParams};}};i(Le,"A_UrlPolyfillClass");var le=Le;var be=class be{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._buffer}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('buffer');this._buffer={from:t.Buffer.from,alloc:t.Buffer.alloc,allocUnsafe:t.Buffer.allocUnsafe,isBuffer:t.Buffer.isBuffer,concat:t.Buffer.concat};}initBrowser(){this._buffer={from:i((t,e)=>typeof t=="string"?new TextEncoder().encode(t):new Uint8Array(t),"from"),alloc:i((t,e)=>{let r=new Uint8Array(t);return e!==void 0&&r.fill(e),r},"alloc"),allocUnsafe:i(t=>new Uint8Array(t),"allocUnsafe"),isBuffer:i(t=>t instanceof Uint8Array||t instanceof ArrayBuffer,"isBuffer"),concat:i((t,e)=>{let r=e||t.reduce((s,a)=>s+a.length,0),o=new Uint8Array(r),n=0;for(let s of t)o.set(s,n),n+=s.length;return o},"concat")};}};i(be,"A_BufferPolyfillClass");var pe=be;var Ne=class Ne{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._process}async init(){try{A_Context.environment==="server"?this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}initServer(){this._process={env:process.env,argv:process.argv,platform:process.platform,version:process.version,versions:process.versions,cwd:process.cwd,exit:process.exit,nextTick:process.nextTick};}initBrowser(){this._process={env:{NODE_ENV:"browser",...globalThis.process?.env||{}},argv:["browser"],platform:"browser",version:"browser",versions:{node:"browser"},cwd:i(()=>"/","cwd"),exit:i(t=>{throw this.logger.warning("process.exit not available in browser"),new Error(`Process exit with code ${t}`)},"exit"),nextTick:i((t,...e)=>{setTimeout(()=>t(...e),0);},"nextTick")};}};i(Ne,"A_ProcessPolyfillClass");var _e=Ne;var m=class extends A_Component{constructor(e){super();this.logger=e;this._initializing=null;}get ready(){return this._initialized||(this._initialized=this._loadInternal()),this._initialized}async load(){await this.ready;}async attachToWindow(){A_Context.environment==="browser"&&(globalThis.A_Polyfill=this,globalThis.process={env:{NODE_ENV:"production"},cwd:i(()=>"/","cwd")},globalThis.__dirname="/");}async _loadInternal(){this._fsPolyfill=new ie(this.logger),this._cryptoPolyfill=new ne(this.logger),this._httpPolyfill=new se(this.logger),this._httpsPolyfill=new ae(this.logger),this._pathPolyfill=new ce(this.logger),this._urlPolyfill=new le(this.logger),this._bufferPolyfill=new pe(this.logger),this._processPolyfill=new _e(this.logger),await this._fsPolyfill.get(),await this._cryptoPolyfill.get(await this._fsPolyfill.get()),await this._httpPolyfill.get(),await this._httpsPolyfill.get(),await this._pathPolyfill.get(),await this._urlPolyfill.get(),await this._bufferPolyfill.get(),await this._processPolyfill.get();}async fs(){return await this.ready,await this._fsPolyfill.get()}async crypto(){return await this.ready,await this._cryptoPolyfill.get()}async http(){return await this.ready,await this._httpPolyfill.get()}async https(){return await this.ready,await this._httpsPolyfill.get()}async path(){return await this.ready,await this._pathPolyfill.get()}async url(){return await this.ready,await this._urlPolyfill.get()}async buffer(){return await this.ready,await this._bufferPolyfill.get()}async process(){return await this.ready,await this._processPolyfill.get()}};i(m,"A_Polyfill"),l([A_Concept.Load()],m.prototype,"load",1),l([A_Concept.Load()],m.prototype,"attachToWindow",1),m=l([c(0,A_Inject(C))],m);var de=class de extends A_Error{};i(de,"A_ConfigError"),de.InitializationError="A-Config Initialization Error";var D=de;var g=class extends A_Component{constructor(e){super();this.polyfill=e;}async attachContext(e,r,o){o||(o=new h({variables:[...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,...B],defaults:{}}),e.scope.register(o));let n=await this.getProjectRoot();o.set("A_CONCEPT_ROOT_FOLDER",n);}async initialize(e){let r=await this.read([...e.CONFIG_PROPERTIES,...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,...B]);e.set(r);}resolve(e){return e}async read(e=[]){return {}}async getProjectRoot(e=__dirname){return process.cwd()}};i(g,"ConfigReader"),l([A_Concept.Load(),c(0,A_Inject(A_Container)),c(1,A_Inject(A_Feature)),c(2,A_Inject(h))],g.prototype,"attachContext",1),l([A_Concept.Load(),c(0,A_Inject(h))],g.prototype,"initialize",1),g=l([c(0,A_Inject(m))],g);var De=class De extends g{constructor(){super(...arguments);this.FileData=new Map;}getConfigurationProperty_File_Alias(e){return A_FormatterHelper.toCamelCase(e)}resolve(e){return this.FileData.get(this.getConfigurationProperty_File_Alias(e))}async read(e){let r=await this.polyfill.fs();try{let o=r.readFileSync(`${A_Context.concept}.conf.json`,"utf8"),n=JSON.parse(o);return this.FileData=new Map(Object.entries(n)),n}catch{return {}}}};i(De,"FileConfigReader");var W=De;var me=class me extends g{async readEnvFile(t,e,r){let o=await e.fs();o.existsSync(".env")&&o.readFileSync(`${t.get("A_CONCEPT_ROOT_FOLDER")}/.env`,"utf-8").split(`
44
- `).forEach(n=>{let[s,a]=n.split("=");s&&a&&(process.env[s.trim()]=a.trim());});}getConfigurationProperty_ENV_Alias(t){return A_FormatterHelper.toUpperSnakeCase(t)}resolve(t){return process.env[this.getConfigurationProperty_ENV_Alias(t)]}async read(t=[]){let e=[...t,...Object.keys(process.env)],r={};return e.forEach(o=>{r[o]=this.resolve(o);}),r}};i(me,"ENVConfigReader"),l([A_Concept.Load({before:["ENVConfigReader.initialize"]}),c(0,A_Inject(h)),c(1,A_Inject(m)),c(2,A_Inject(A_Feature))],me.prototype,"readEnvFile",1);var j=me;var he=class he extends A_Container{async prepare(t){if(!this.scope.has(h)){let r=new h({variables:[...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,...B],defaults:{}});this.scope.register(r);}let e=await t.fs();try{switch(!0){case(A_Context.environment==="server"&&!!e.existsSync(`${A_Context.concept}.conf.json`)):this.reader=this.scope.resolve(W);break;case(A_Context.environment==="server"&&!e.existsSync(`${A_Context.concept}.conf.json`)):this.reader=this.scope.resolve(j);break;case A_Context.environment==="browser":this.reader=this.scope.resolve(j);break;default:throw new D(D.InitializationError,`Environment ${A_Context.environment} is not supported`)}}catch(r){if(r instanceof A_ScopeError)throw new D({title:D.InitializationError,description:`Failed to initialize A_ConfigLoader. Reader not found for environment ${A_Context.environment}`,originalError:r})}}};i(he,"A_ConfigLoader"),l([A_Concept.Load({before:/.*/}),c(0,A_Inject(m))],he.prototype,"prepare",1);var ke=he;var hr=(M=>M)(hr||{});var fe=class fe extends A_Error{};i(fe,"A_ManifestError"),fe.ManifestInitializationError="A-Manifest Initialization Error";var $=fe;var Me=class Me{constructor(t,e,r,o=false){this.manifest=t;this.component=e;this.method=r;this.checkExclusion=o;}for(t){let e=this.manifest.internal_checkAccess({component:this.component,method:this.method,target:t});return this.checkExclusion?!e:e}};i(Me,"A_ManifestChecker");var q=Me;var Ge=class Ge extends A_Fragment{constructor(e=[]){super({name:"A-Manifest"});this.rules=[];this.prepare(e);}prepare(e){if(!A_TypeGuards.isArray(e))throw new $($.ManifestInitializationError,"A-Manifest configuration should be an array of configurations");for(let r of e)this.processConfigItem(r);}processConfigItem(e){if(!A_TypeGuards.isComponentConstructor(e.component))throw new $($.ManifestInitializationError,"A-Manifest configuration item should be a A-Component constructor");let r=this.constructorToRegex(e.component);if(e.apply||e.exclude){let o=/.*/;this.rules.push({componentRegex:r,methodRegex:o,applyRegex:e.apply?this.allowedComponentsToRegex(e.apply):void 0,excludeRegex:e.exclude?this.allowedComponentsToRegex(e.exclude):void 0});}if(e.methods&&e.methods.length>0)for(let o of e.methods){let n=this.methodToRegex(o.method);this.rules.push({componentRegex:r,methodRegex:n,applyRegex:o.apply?this.allowedComponentsToRegex(o.apply):void 0,excludeRegex:o.exclude?this.allowedComponentsToRegex(o.exclude):void 0});}}constructorToRegex(e){return new RegExp(`^${this.escapeRegex(e.name)}$`)}methodToRegex(e){return e instanceof RegExp?e:new RegExp(`^${this.escapeRegex(e)}$`)}allowedComponentsToRegex(e){if(e instanceof RegExp)return e;let r=e.map(o=>this.escapeRegex(o.name));return new RegExp(`^(${r.join("|")})$`)}escapeRegex(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}configItemToRegexp(e){return this.constructorToRegex(e)}ID(e,r){return `${e.name}.${r}`}isAllowed(e,r){let o=typeof e=="function"?e:e.constructor;return new q(this,o,r)}internal_checkAccess(e){let r=e.component.name,o=e.method,n=e.target.name,s=this.rules.filter(a=>a.componentRegex.test(r)&&a.methodRegex.test(o)).sort((a,d)=>{let L=a.methodRegex.source===".*",b=d.methodRegex.source===".*";return L&&!b?1:!L&&b?-1:0});if(s.length===0)return true;for(let a of s){if(a.excludeRegex&&a.excludeRegex.test(n))return false;if(a.applyRegex)return a.applyRegex.test(n)}return true}isExcluded(e,r){let o=typeof e=="function"?e:e.constructor;return new q(this,o,r,true)}};i(Ge,"A_Manifest");var Fe=Ge;var ze=class ze extends A_Fragment{set(t,e){super.set(t,e);}get(t){return super.get(t)}};i(ze,"A_MemoryContext");var v=ze;var w=class w extends A_Error{};i(w,"A_MemoryError"),w.MemoryInitializationError="Memory initialization error",w.MemoryDestructionError="Memory destruction error",w.MemoryGetError="Memory GET operation failed",w.MemorySetError="Memory SET operation failed",w.MemoryDropError="Memory DROP operation failed",w.MemoryClearError="Memory CLEAR operation failed",w.MemoryHasError="Memory HAS operation failed",w.MemorySerializeError="Memory toJSON operation failed";var _=w;var Tr,Ar,Sr,Cr,vr,wr,xr,Rr,Pr,S=class S extends A_Component{get ready(){return this._ready||(this._ready=this.init()),this._ready}async[Pr="onError"](...t){}async[Rr="onExpire"](...t){}async[xr="onInit"](t,...e){t||(t=new v,A_Context.scope(this).register(t));}async[wr="onDestroy"](t,...e){t.clear();}async[vr="onGet"](t,e,...r){t.succeed(e.get(t.params.key));}async[Cr="onHas"](t,e,...r){t.succeed(e.has(t.params.key));}async[Sr="onSet"](t,e,...r){e.set(t.params.key,t.params.value);}async[Ar="onDrop"](t,e,...r){e.drop(t.params.key);}async[Tr="onClear"](t,e,...r){e.clear();}async init(){if(this._ready)return this._ready;let t=new A_Scope({name:"A-Memory-Init-Scope"}).inherit(A_Context.scope(this));try{await this.call("onInit",t);}catch(e){let r=new _({title:_.MemoryInitializationError,description:"An error occurred during memory initialization",originalError:e});throw t.register(r),await this.call("onError",t),t.destroy(),r}}async destroy(){let t=new A_Scope({name:"A-Memory-Destroy-Scope"}).inherit(A_Context.scope(this));try{this._ready=void 0,await this.call("onDestroy",t);}catch(e){let r=new _({title:_.MemoryDestructionError,description:"An error occurred during memory destruction",originalError:e});throw t.register(r),await this.call("onError",t),t.destroy(),r}}async get(t){let e=new p("get",{key:t}),r=new A_Scope({name:"A-Memory-Get-Operation-Scope",fragments:[e]});try{return await this.call("onGet",r),r.destroy(),e.result}catch(o){let n=new _({title:_.MemoryGetError,description:`An error occurred while getting the value for key "${String(t)}"`,originalError:o});throw r.register(n),await this.call("onError",r),r.destroy(),n}}async has(t){let e=new p("has",{key:t}),r=new A_Scope({name:"A-Memory-Has-Operation-Scope",fragments:[e]});try{return await this.call("onHas",r),r.destroy(),e.result}catch(o){let n=new _({title:_.MemoryHasError,description:`An error occurred while checking existence for key "${String(t)}"`,originalError:o});throw r.register(n),await this.call("onError",r),r.destroy(),n}}async set(t,e){let r=new p("set",{key:t,value:e}),o=new A_Scope({name:"A-Memory-Set-Operation-Scope",fragments:[r]});try{await this.call("onSet",o);}catch(n){let s=new _({title:_.MemorySetError,description:`An error occurred while setting the value for key "${String(t)}"`,originalError:n});throw o.register(s),await this.call("onError",o),o.destroy(),s}}async drop(t){let e=new p("drop",{key:t}),r=new A_Scope({name:"A-Memory-Drop-Operation-Scope",fragments:[e]});try{await this.call("onDrop",r);}catch(o){let n=new _({title:_.MemoryDropError,description:`An error occurred while dropping the value for key "${String(t)}"`,originalError:o});throw r.register(n),await this.call("onError",r),r.destroy(),n}}async clear(){let t=new p("clear"),e=new A_Scope({name:"A-Memory-Clear-Operation-Scope",fragments:[t]});try{await this.call("onClear",e);}catch(r){let o=new _({title:_.MemoryClearError,description:"An error occurred while clearing the memory",originalError:r});throw e.register(o),await this.call("onError",e),e.destroy(),o}}async toJSON(){let t=new p("serialize"),e=new A_Scope({name:"A-Memory-Serialize-Operation-Scope",fragments:[t]});try{return await this.call("onSerialize",e),t.result}catch(r){let o=new _({title:_.MemorySerializeError,description:"An error occurred while serializing the memory",originalError:r});throw e.register(o),await this.call("onError",e),e.destroy(),o}}};i(S,"A_Memory"),l([A_Feature.Extend()],S.prototype,Pr,1),l([A_Feature.Extend()],S.prototype,Rr,1),l([A_Feature.Extend(),c(0,A_Inject(v))],S.prototype,xr,1),l([A_Feature.Extend(),c(0,A_Inject(v))],S.prototype,wr,1),l([A_Feature.Extend(),c(0,A_Dependency.Required()),c(0,A_Inject(p)),c(1,A_Inject(v))],S.prototype,vr,1),l([A_Feature.Extend(),c(0,A_Dependency.Required()),c(0,A_Inject(p)),c(1,A_Inject(v))],S.prototype,Cr,1),l([A_Feature.Extend(),c(0,A_Dependency.Required()),c(0,A_Inject(p)),c(1,A_Inject(v))],S.prototype,Sr,1),l([A_Feature.Extend(),c(0,A_Dependency.Required()),c(0,A_Inject(p)),c(1,A_Inject(v))],S.prototype,Ar,1),l([A_Feature.Extend(),c(0,A_Dependency.Required()),c(0,A_Inject(p)),c(1,A_Inject(v))],S.prototype,Tr,1);var Be=S;var Ye=class Ye{constructor(){this.promise=new Promise((t,e)=>{this.resolveFn=t,this.rejectFn=e;});}resolve(t){this.resolveFn(t);}reject(t){this.rejectFn(t);}};i(Ye,"A_Deferred");var ee=Ye;var Ve=class Ve{constructor(t,e,r){this.config={resolveOnClear:false};r&&(this.config={...this.config,...r}),this.deferred=new ee,this.timeout=setTimeout(()=>e().then((...o)=>this.deferred.resolve(...o)).catch((...o)=>this.deferred.reject(...o)),t);}get promise(){return this.deferred.promise}clear(){this.timeout&&(clearTimeout(this.timeout),this.config.resolveOnClear?this.deferred.resolve(void 0):this.deferred.reject(new A_Error("Timeout Cleared")));}};i(Ve,"A_ScheduleObject");var H=Ve;var qe=class qe extends A_Component{async schedule(t,e,r){let o=A_TypeGuards.isString(t)?new Date(t).getTime():t;return new H(o-Date.now(),e,r)}async delay(t,e,r){return new H(t,e,r)}};i(qe,"A_Schedule");var je=qe;export{yo as A_CONSTANTS__CONFIG_ENV_VARIABLES,B as A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY,Te as A_Channel,F as A_ChannelError,_t as A_ChannelFeatures,dt as A_ChannelRequestStatuses,we as A_Command,P as A_CommandError,ut as A_CommandFeatures,ft as A_CommandTransitions,ht as A_Command_Status,h as A_Config,D as A_ConfigError,ke as A_ConfigLoader,ee as A_Deferred,C as A_Logger,Fe as A_Manifest,q as A_ManifestChecker,$ as A_ManifestError,Be as A_Memory,m as A_Polyfill,je as A_Schedule,H as A_ScheduleObject,hr as A_TYPES__ConfigFeature,g as ConfigReader,j as ENVConfigReader,W as FileConfigReader};//# sourceMappingURL=index.mjs.map
43
+ `)}getTime(){let e=new Date,r=String(e.getMinutes()).padStart(q.MINUTES_PAD,"0"),o=String(e.getSeconds()).padStart(q.SECONDS_PAD,"0"),n=String(e.getMilliseconds()).padStart(q.MILLISECONDS_PAD,"0");return `${r}${q.SEPARATOR}${o}${q.SEPARATOR}${n}`}};i(w,"A_Logger"),w=p([a(0,A_Inject(A_Scope)),a(1,A_Inject(f))],w);var Gt,Mt,$t,Ft,Ut,zt,Yt,Bt,Vt,jt,qt,g=class g extends A_Entity{constructor(e){super(e);this._listeners=new Map;}static get code(){return super.entity}get duration(){return this._endTime&&this._startTime?this._endTime.getTime()-this._startTime.getTime():this._startTime?new Date().getTime()-this._startTime.getTime():void 0}get idleTime(){return this._startTime&&this._createdAt?this._startTime.getTime()-this._createdAt.getTime():void 0}get scope(){return this._executionScope}get context(){return this.scope.resolve(R)}get code(){return this.constructor.code}get status(){return this._status}get createdAt(){return this._createdAt}get startedAt(){return this._startTime}get endedAt(){return this._endTime}get result(){return this._result}get error(){return this._error}get params(){return this._params}get isProcessed(){return this._status==="COMPLETED"||this._status==="FAILED"}async[qt="onBeforeTransition"](e,r,...o){this.checkScopeInheritance(),r?.debug("yellow",`Command ${this.aseid.toString()} transitioning from ${e.from} to ${e.to}`);}async[jt="created_initialized"](e,...r){this._status==="CREATED"&&(this._createdAt=new Date,this._status="INITIALIZED",this.emit("onInit"));}async[Vt="initialized_executing"](e,...r){this._status!=="INITIALIZED"&&this._status!=="CREATED"||(this._startTime=new Date,this._status="EXECUTING",this.emit("onExecute"));}async[Bt="executing_completed"](e,...r){this._endTime=new Date,this._status="COMPLETED",this.emit("onComplete");}async[Yt="executing_failed"](e,r,...o){this._endTime=new Date,this._status="FAILED",this.emit("onFail");}async[zt="onInit"](e,...r){await e.transition("CREATED","INITIALIZED");}async[Ut="onBeforeExecute"](e,...r){await e.transition("INITIALIZED","EXECUTING");}async[Ft="onExecute"](...e){}async[$t="onAfterExecute"](...e){}async[Mt="onComplete"](e,...r){await e.transition("EXECUTING","COMPLETED");}async[Gt="onFail"](e,r,...o){await e.transition("EXECUTING","FAILED");}async init(){await this.call("onInit",this.scope);}async execute(){if(!this.isProcessed)try{this.checkScopeInheritance();let e=new R("execute-command");this.scope.register(e),await new Promise(async(r,o)=>{try{let n=new A_Feature({name:"onBeforeExecute",component:this,scope:this.scope}),s=new A_Feature({name:"onExecute",component:this,scope:this.scope}),c=new A_Feature({name:"onAfterExecute",component:this,scope:this.scope});this.on("onComplete",()=>{n.interrupt(),s.interrupt(),c.interrupt(),r();}),await n.process(this.scope),await s.process(this.scope),await c.process(this.scope),this._origin==="invoked"&&await this.complete(),r();}catch(n){o(n);}});}catch(e){let r=e instanceof A_Error?e:new b({title:b.ExecutionError,description:`An error occurred while executing command "${this.aseid.toString()}".`,originalError:e});await this.fail(r);}}async complete(e){this.isProcessed||(this._status="COMPLETED",this._result=e,await this.call("onComplete",this.scope),this.scope.destroy());}async fail(e){this.isProcessed||(this._status="FAILED",e&&(this._error=e,this.scope.register(e)),await this.call("onFail",this.scope),this.scope.destroy());}on(e,r){this._listeners.has(e)||this._listeners.set(e,new Set),this._listeners.get(e).add(r);}off(e,r){this._listeners.get(e)?.delete(r);}emit(e){this._listeners.get(e)?.forEach(async r=>{r(this);});}fromNew(e){super.fromNew(e),this._origin="invoked",this._executionScope=new A_Scope({name:`A-Command-Execution-Scope-${this.aseid.toString()}`,components:[L]}),this._createdAt=new Date,this._params=e,this._status="CREATED";}fromJSON(e){super.fromJSON(e),this._origin="serialized",this._executionScope=new A_Scope({name:`A-Command-Execution-Scope-${this.aseid.toString()}`,components:[L]}),e.createdAt&&(this._createdAt=new Date(e.createdAt)),e.startedAt&&(this._startTime=new Date(e.startedAt)),e.endedAt&&(this._endTime=new Date(e.endedAt)),this._params=e.params,this._status=e.status,e.error&&(this._error=new b(e.error)),e.result&&(this._result=e.result);}toJSON(){return {...super.toJSON(),code:this.code,status:this._status,params:this._params,createdAt:this._createdAt.toISOString(),startedAt:this._startTime?this._startTime.toISOString():void 0,endedAt:this._endTime?this._endTime.toISOString():void 0,duration:this.duration,idleTime:this.idleTime,result:this.result,error:this.error?this.error.toJSON():void 0}}checkScopeInheritance(){let e;try{e=A_Context.scope(this);}catch(r){throw new b({title:b.CommandScopeBindingError,description:`Command ${this.aseid.toString()} is not bound to any context scope. Ensure the command is properly registered within a context before execution.`,originalError:r})}this.scope.isInheritedFrom(A_Context.scope(this))||this.scope.inherit(A_Context.scope(this));}};i(g,"A_Command"),p([A_Feature.Extend(),a(0,A_Inject(v)),a(1,A_Inject(w))],g.prototype,qt,1),p([A_Feature.Extend(),a(0,A_Inject(v))],g.prototype,jt,1),p([A_Feature.Extend(),a(0,A_Inject(v))],g.prototype,Vt,1),p([A_Feature.Extend(),a(0,A_Inject(v))],g.prototype,Bt,1),p([A_Feature.Extend(),a(0,A_Inject(v)),a(1,A_Inject(A_Error))],g.prototype,Yt,1),p([A_Feature.Extend(),a(0,A_Inject(L))],g.prototype,zt,1),p([A_Feature.Extend({after:/.*/}),a(0,A_Dependency.Required()),a(0,A_Inject(L))],g.prototype,Ut,1),p([A_Feature.Extend()],g.prototype,Ft,1),p([A_Feature.Extend()],g.prototype,$t,1),p([A_Feature.Extend({after:/.*/}),a(0,A_Inject(L))],g.prototype,Mt,1),p([A_Feature.Extend({after:/.*/}),a(0,A_Dependency.Required()),a(0,A_Inject(L)),a(1,A_Inject(R))],g.prototype,Gt,1);var Pe=g;var Oe=class Oe{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._fs}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){this._fs=await import('fs');}initBrowser(){this._fs={readFileSync:i((t,e)=>(this.logger.warning("fs.readFileSync not available in browser environment"),""),"readFileSync"),existsSync:i(t=>(this.logger.warning("fs.existsSync not available in browser environment"),false),"existsSync"),createReadStream:i(t=>(this.logger.warning("fs.createReadStream not available in browser environment"),null),"createReadStream")};}};i(Oe,"A_FSPolyfillClass");var se=Oe;var Le=class Le{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(t){return this._initialized||(this._fsPolyfill=t,await this.init()),this._crypto}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('crypto');this._crypto={createTextHash:i((e,r="sha384")=>Promise.resolve(`${r}-${t.createHash(r).update(e).digest("base64")}`),"createTextHash"),createFileHash:i((e,r="sha384")=>new Promise(async(o,n)=>{try{if(!this._fsPolyfill)throw new Error("FS polyfill is required for file hashing");let s=t.createHash(r),c=this._fsPolyfill.createReadStream(e);c.on("data",d=>s.update(d)),c.on("end",()=>o(`${r}-${s.digest("base64")}`)),c.on("error",d=>n(d));}catch(s){n(s);}}),"createFileHash")};}initBrowser(){this._crypto={createFileHash:i(()=>(this.logger.warning("File hash not available in browser environment"),Promise.resolve("")),"createFileHash"),createTextHash:i((t,e="SHA-384")=>new Promise(async(r,o)=>{try{if(!crypto.subtle)throw new Error("SubtleCrypto not available");let s=new TextEncoder().encode(t),c=await crypto.subtle.digest(e,s),d=Array.from(new Uint8Array(c)),D=btoa(String.fromCharCode(...d));r(`${e}-${D}`);}catch(n){o(n);}}),"createTextHash")};}};i(Le,"A_CryptoPolyfillClass");var ae=Le;var Ie=class Ie{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._http}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('http');this._http={request:t.request,get:t.get,createServer:t.createServer};}initBrowser(){this._http={request:i((t,e)=>(this.logger.warning("http.request not available in browser/test environment, use fetch instead"),this.createMockRequest(t,e,false)),"request"),get:i((t,e)=>(this.logger.warning("http.get not available in browser/test environment, use fetch instead"),this.createMockRequest(typeof t=="string"?{hostname:t}:t,e,false)),"get"),createServer:i(()=>(this.logger.error("http.createServer not available in browser/test environment"),null),"createServer")};}createMockRequest(t,e,r=false){return {end:i(()=>{if(e){let n={statusCode:200,headers:{},on:i((s,c)=>{s==="data"?setTimeout(()=>c("mock data"),0):s==="end"&&setTimeout(()=>c(),0);},"on"),pipe:i(s=>{s.write&&s.write("mock data"),s.end&&s.end();},"pipe")};setTimeout(()=>e(n),0);}},"end"),write:i(n=>{},"write"),on:i((n,s)=>{},"on")}}};i(Ie,"A_HttpPolyfillClass");var ce=Ie;var be=class be{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._https}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('https');this._https={request:t.request,get:t.get,createServer:t.createServer};}initBrowser(){this._https={request:i((t,e)=>(this.logger.warning("https.request not available in browser/test environment, use fetch instead"),this.createMockRequest(t,e,true)),"request"),get:i((t,e)=>(this.logger.warning("https.get not available in browser/test environment, use fetch instead"),this.createMockRequest(typeof t=="string"?{hostname:t}:t,e,true)),"get"),createServer:i(()=>(this.logger.error("https.createServer not available in browser/test environment"),null),"createServer")};}createMockRequest(t,e,r=true){return {end:i(()=>{if(e){let n={statusCode:200,headers:{},on:i((s,c)=>{s==="data"?setTimeout(()=>c("mock data"),0):s==="end"&&setTimeout(()=>c(),0);},"on"),pipe:i(s=>{s.write&&s.write("mock data"),s.end&&s.end();},"pipe")};setTimeout(()=>e(n),0);}},"end"),write:i(n=>{},"write"),on:i((n,s)=>{},"on")}}};i(be,"A_HttpsPolyfillClass");var pe=be;var Ne=class Ne{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._path}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){this._path=await import('path');}initBrowser(){this._path={join:i((...t)=>t.join("/").replace(/\/+/g,"/"),"join"),resolve:i((...t)=>{let e="";for(let r of t)r.startsWith("/")?e=r:e=this._path.join(e,r);return e||"/"},"resolve"),dirname:i(t=>t.split("/").slice(0,-1).join("/")||"/","dirname"),basename:i((t,e)=>{let r=t.split("/").pop()||"";return e&&r.endsWith(e)?r.slice(0,-e.length):r},"basename"),extname:i(t=>{let e=t.split(".");return e.length>1?"."+e.pop():""},"extname"),relative:i((t,e)=>e.replace(t,"").replace(/^\//,""),"relative"),normalize:i(t=>t.replace(/\/+/g,"/").replace(/\/$/,"")||"/","normalize"),isAbsolute:i(t=>t.startsWith("/")||/^[a-zA-Z]:/.test(t),"isAbsolute"),parse:i(t=>{let e=this._path.extname(t),r=this._path.basename(t),o=this._path.basename(t,e);return {root:"/",dir:this._path.dirname(t),base:r,ext:e,name:o}},"parse"),format:i(t=>this._path.join(t.dir||"",t.base||""),"format"),sep:"/",delimiter:":"};}};i(Ne,"A_PathPolyfillClass");var le=Ne;var De=class De{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._url}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('url');this._url={parse:t.parse,format:t.format,resolve:t.resolve,URL:t.URL||globalThis.URL,URLSearchParams:t.URLSearchParams||globalThis.URLSearchParams};}initBrowser(){this._url={parse:i(t=>{try{let e=new URL(t);return {protocol:e.protocol,hostname:e.hostname,port:e.port,pathname:e.pathname,search:e.search,hash:e.hash,host:e.host,href:e.href}}catch{return {}}},"parse"),format:i(t=>{try{return new URL("",t.href||`${t.protocol}//${t.host}${t.pathname}${t.search}${t.hash}`).href}catch{return ""}},"format"),resolve:i((t,e)=>{try{return new URL(e,t).href}catch{return e}},"resolve"),URL:globalThis.URL,URLSearchParams:globalThis.URLSearchParams};}};i(De,"A_UrlPolyfillClass");var _e=De;var ke=class ke{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._buffer}async init(){try{A_Context.environment==="server"?await this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}async initServer(){let t=await import('buffer');this._buffer={from:t.Buffer.from,alloc:t.Buffer.alloc,allocUnsafe:t.Buffer.allocUnsafe,isBuffer:t.Buffer.isBuffer,concat:t.Buffer.concat};}initBrowser(){this._buffer={from:i((t,e)=>typeof t=="string"?new TextEncoder().encode(t):new Uint8Array(t),"from"),alloc:i((t,e)=>{let r=new Uint8Array(t);return e!==void 0&&r.fill(e),r},"alloc"),allocUnsafe:i(t=>new Uint8Array(t),"allocUnsafe"),isBuffer:i(t=>t instanceof Uint8Array||t instanceof ArrayBuffer,"isBuffer"),concat:i((t,e)=>{let r=e||t.reduce((s,c)=>s+c.length,0),o=new Uint8Array(r),n=0;for(let s of t)o.set(s,n),n+=s.length;return o},"concat")};}};i(ke,"A_BufferPolyfillClass");var me=ke;var Ge=class Ge{constructor(t){this.logger=t;this._initialized=false;}get isInitialized(){return this._initialized}async get(){return this._initialized||await this.init(),this._process}async init(){try{A_Context.environment==="server"?this.initServer():this.initBrowser(),this._initialized=!0;}catch{this.initBrowser(),this._initialized=true;}}initServer(){this._process={env:process.env,argv:process.argv,platform:process.platform,version:process.version,versions:process.versions,cwd:process.cwd,exit:process.exit,nextTick:process.nextTick};}initBrowser(){this._process={env:{NODE_ENV:"browser",...globalThis.process?.env||{}},argv:["browser"],platform:"browser",version:"browser",versions:{node:"browser"},cwd:i(()=>"/","cwd"),exit:i(t=>{throw this.logger.warning("process.exit not available in browser"),new Error(`Process exit with code ${t}`)},"exit"),nextTick:i((t,...e)=>{setTimeout(()=>t(...e),0);},"nextTick")};}};i(Ge,"A_ProcessPolyfillClass");var de=Ge;var h=class extends A_Component{constructor(e){super();this.logger=e;this._initializing=null;}get ready(){return this._initialized||(this._initialized=this._loadInternal()),this._initialized}async load(){await this.ready;}async attachToWindow(){A_Context.environment==="browser"&&(globalThis.A_Polyfill=this,globalThis.process={env:{NODE_ENV:"production"},cwd:i(()=>"/","cwd")},globalThis.__dirname="/");}async _loadInternal(){this._fsPolyfill=new se(this.logger),this._cryptoPolyfill=new ae(this.logger),this._httpPolyfill=new ce(this.logger),this._httpsPolyfill=new pe(this.logger),this._pathPolyfill=new le(this.logger),this._urlPolyfill=new _e(this.logger),this._bufferPolyfill=new me(this.logger),this._processPolyfill=new de(this.logger),await this._fsPolyfill.get(),await this._cryptoPolyfill.get(await this._fsPolyfill.get()),await this._httpPolyfill.get(),await this._httpsPolyfill.get(),await this._pathPolyfill.get(),await this._urlPolyfill.get(),await this._bufferPolyfill.get(),await this._processPolyfill.get();}async fs(){return await this.ready,await this._fsPolyfill.get()}async crypto(){return await this.ready,await this._cryptoPolyfill.get()}async http(){return await this.ready,await this._httpPolyfill.get()}async https(){return await this.ready,await this._httpsPolyfill.get()}async path(){return await this.ready,await this._pathPolyfill.get()}async url(){return await this.ready,await this._urlPolyfill.get()}async buffer(){return await this.ready,await this._bufferPolyfill.get()}async process(){return await this.ready,await this._processPolyfill.get()}};i(h,"A_Polyfill"),p([A_Concept.Load()],h.prototype,"load",1),p([A_Concept.Load()],h.prototype,"attachToWindow",1),h=p([a(0,A_Inject(w))],h);var u=class extends A_Component{constructor(e){super();this.polyfill=e;this.DEFAULT_ALLOWED_TO_READ_PROPERTIES=[...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,...j];}async attachContext(e,r,o){o||(o=new f({defaults:{}}),e.scope.register(o));let n=await this.getProjectRoot();o.set("A_CONCEPT_ROOT_FOLDER",n);}async initialize(e){let r=await this.read();for(let o in r)e.set(o,r[o]);}resolve(e){return e}async read(e=[]){return {}}async getProjectRoot(e=__dirname){return (await this.polyfill.process()).cwd()}};i(u,"ConfigReader"),p([A_Concept.Load(),a(0,A_Inject(A_Container)),a(1,A_Inject(A_Scope)),a(2,A_Inject(f))],u.prototype,"attachContext",1),p([A_Concept.Load(),a(0,A_Dependency.Required()),a(0,A_Inject(f))],u.prototype,"initialize",1),u=p([a(0,A_Dependency.Required()),a(0,A_Inject(h))],u);var Me=class Me extends u{constructor(){super(...arguments);this.FileData=new Map;}getConfigurationProperty_File_Alias(e){return A_FormatterHelper.toCamelCase(e)}resolve(e){return this.FileData.get(this.getConfigurationProperty_File_Alias(e))}async read(e){let r=await this.polyfill.fs();try{let o=r.readFileSync(`${A_Context.concept}.conf.json`,"utf8"),n=JSON.parse(o);return this.FileData=new Map(Object.entries(n)),n}catch{return {}}}};i(Me,"FileConfigReader");var ee=Me;var he=class he extends u{async readEnvFile(t,e,r){let o=await e.fs();o.existsSync(".env")&&o.readFileSync(`${t.get("A_CONCEPT_ROOT_FOLDER")}/.env`,"utf-8").split(`
44
+ `).forEach(n=>{let[s,c]=n.split("=");s&&c&&(process.env[s.trim()]=c.trim());});}getConfigurationProperty_ENV_Alias(t){return A_FormatterHelper.toUpperSnakeCase(t)}resolve(t){return process.env[this.getConfigurationProperty_ENV_Alias(t)]}async read(t=[]){let e=[...t,...Object.keys(process.env)],r={};return e.forEach(o=>{r[o]=this.resolve(o);}),r}};i(he,"ENVConfigReader"),p([A_Concept.Load({before:["ENVConfigReader.initialize"]}),a(0,A_Inject(f)),a(1,A_Inject(h)),a(2,A_Inject(A_Feature))],he.prototype,"readEnvFile",1);var H=he;var fe=class fe extends A_Container{async prepare(t){if(!this.scope.has(f)){let r=new f({variables:[...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY,...j],defaults:{}});this.scope.register(r);}let e=await t.fs();try{switch(!0){case(A_Context.environment==="server"&&!!e.existsSync(`${A_Context.concept}.conf.json`)):this.reader=this.scope.resolve(ee);break;case(A_Context.environment==="server"&&!e.existsSync(`${A_Context.concept}.conf.json`)):this.reader=this.scope.resolve(H);break;case A_Context.environment==="browser":this.reader=this.scope.resolve(H);break;default:throw new I(I.InitializationError,`Environment ${A_Context.environment} is not supported`)}}catch(r){if(r instanceof A_ScopeError)throw new I({title:I.InitializationError,description:`Failed to initialize A_ConfigLoader. Reader not found for environment ${A_Context.environment}`,originalError:r})}}};i(fe,"A_ConfigLoader"),p([A_Concept.Load({before:/.*/}),a(0,A_Inject(h))],fe.prototype,"prepare",1);var Fe=fe;var ur=($=>$)(ur||{});var ye={A_LOGGER_LEVEL:"A_LOGGER_LEVEL",A_LOGGER_DEFAULT_SCOPE_LENGTH:"A_LOGGER_DEFAULT_SCOPE_LENGTH",A_LOGGER_DEFAULT_SCOPE_COLOR:"A_LOGGER_DEFAULT_SCOPE_COLOR",A_LOGGER_DEFAULT_LOG_COLOR:"A_LOGGER_DEFAULT_LOG_COLOR"},fn=[ye.A_LOGGER_LEVEL,ye.A_LOGGER_DEFAULT_SCOPE_LENGTH,ye.A_LOGGER_DEFAULT_SCOPE_COLOR,ye.A_LOGGER_DEFAULT_LOG_COLOR];var ge=class ge extends A_Error{};i(ge,"A_ManifestError"),ge.ManifestInitializationError="A-Manifest Initialization Error";var G=ge;var Ue=class Ue{constructor(t,e,r,o=false){this.manifest=t;this.component=e;this.method=r;this.checkExclusion=o;}for(t){let e=this.manifest.internal_checkAccess({component:this.component,method:this.method,target:t});return this.checkExclusion?!e:e}};i(Ue,"A_ManifestChecker");var K=Ue;var Ye=class Ye extends A_Fragment{constructor(e=[]){super({name:"A-Manifest"});this.rules=[];this.prepare(e);}prepare(e){if(!A_TypeGuards.isArray(e))throw new G(G.ManifestInitializationError,"A-Manifest configuration should be an array of configurations");for(let r of e)this.processConfigItem(r);}processConfigItem(e){if(!A_TypeGuards.isComponentConstructor(e.component))throw new G(G.ManifestInitializationError,"A-Manifest configuration item should be a A-Component constructor");let r=this.constructorToRegex(e.component);if(e.apply||e.exclude){let o=/.*/;this.rules.push({componentRegex:r,methodRegex:o,applyRegex:e.apply?this.allowedComponentsToRegex(e.apply):void 0,excludeRegex:e.exclude?this.allowedComponentsToRegex(e.exclude):void 0});}if(e.methods&&e.methods.length>0)for(let o of e.methods){let n=this.methodToRegex(o.method);this.rules.push({componentRegex:r,methodRegex:n,applyRegex:o.apply?this.allowedComponentsToRegex(o.apply):void 0,excludeRegex:o.exclude?this.allowedComponentsToRegex(o.exclude):void 0});}}constructorToRegex(e){return new RegExp(`^${this.escapeRegex(e.name)}$`)}methodToRegex(e){return e instanceof RegExp?e:new RegExp(`^${this.escapeRegex(e)}$`)}allowedComponentsToRegex(e){if(e instanceof RegExp)return e;let r=e.map(o=>this.escapeRegex(o.name));return new RegExp(`^(${r.join("|")})$`)}escapeRegex(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}configItemToRegexp(e){return this.constructorToRegex(e)}ID(e,r){return `${e.name}.${r}`}isAllowed(e,r){let o=typeof e=="function"?e:e.constructor;return new K(this,o,r)}internal_checkAccess(e){let r=e.component.name,o=e.method,n=e.target.name,s=this.rules.filter(c=>c.componentRegex.test(r)&&c.methodRegex.test(o)).sort((c,d)=>{let D=c.methodRegex.source===".*",m=d.methodRegex.source===".*";return D&&!m?1:!D&&m?-1:0});if(s.length===0)return true;for(let c of s){if(c.excludeRegex&&c.excludeRegex.test(n))return false;if(c.applyRegex)return c.applyRegex.test(n)}return true}isExcluded(e,r){let o=typeof e=="function"?e:e.constructor;return new K(this,o,r,true)}};i(Ye,"A_Manifest");var ze=Ye;var Ar=(m=>(m.onInit="onInit",m.onDestroy="onDestroy",m.onExpire="onExpire",m.onError="onError",m.onSerialize="onSerialize",m.onSet="onSet",m.onGet="onGet",m.onDrop="onDrop",m.onClear="onClear",m.onHas="onHas",m))(Ar||{});var Be=class Be extends A_Fragment{constructor(){super(...arguments);this._storage=new Map;}set(e,r){this._storage.set(e,r);}get(e){return this._storage.get(e)}delete(e){this._storage.delete(e);}has(e){return this._storage.has(e)}clear(){this._storage.clear();}};i(Be,"A_MemoryContext");var S=Be;var P=class P extends A_Error{};i(P,"A_MemoryError"),P.MemoryInitializationError="Memory initialization error",P.MemoryDestructionError="Memory destruction error",P.MemoryGetError="Memory GET operation failed",P.MemorySetError="Memory SET operation failed",P.MemoryDropError="Memory DROP operation failed",P.MemoryClearError="Memory CLEAR operation failed",P.MemoryHasError="Memory HAS operation failed",P.MemorySerializeError="Memory toJSON operation failed";var _=P;var Rr,vr,wr,Pr,Or,Lr,Ir,br,Nr,C=class C extends A_Component{get ready(){return this._ready||(this._ready=this.init()),this._ready}async[Nr="onError"](...t){}async[br="onExpire"](...t){}async[Ir="onInit"](t,...e){t||(t=new S,A_Context.scope(this).register(t));}async[Lr="onDestroy"](t,...e){t.clear();}async[Or="onGet"](t,e,...r){t.succeed(e.get(t.params.key));}async[Pr="onHas"](t,e,...r){t.succeed(e.has(t.params.key));}async[wr="onSet"](t,e,...r){e.set(t.params.key,t.params.value);}async[vr="onDrop"](t,e,...r){e.delete(t.params.key);}async[Rr="onClear"](t,e,...r){e.clear();}async init(){if(this._ready)return this._ready;let t=new A_Scope({name:"A-Memory-Init-Scope"}).inherit(A_Context.scope(this));try{await this.call("onInit",t);}catch(e){let r=new _({title:_.MemoryInitializationError,description:"An error occurred during memory initialization",originalError:e});throw t.register(r),await this.call("onError",t),t.destroy(),r}}async destroy(){let t=new A_Scope({name:"A-Memory-Destroy-Scope"}).inherit(A_Context.scope(this));try{this._ready=void 0,await this.call("onDestroy",t);}catch(e){let r=new _({title:_.MemoryDestructionError,description:"An error occurred during memory destruction",originalError:e});throw t.register(r),await this.call("onError",t),t.destroy(),r}}async get(t){let e=new l("get",{key:t}),r=new A_Scope({name:"A-Memory-Get-Operation-Scope",fragments:[e]});try{return await this.call("onGet",r),r.destroy(),e.result}catch(o){let n=new _({title:_.MemoryGetError,description:`An error occurred while getting the value for key "${String(t)}"`,originalError:o});throw r.register(n),await this.call("onError",r),r.destroy(),n}}async has(t){let e=new l("has",{key:t}),r=new A_Scope({name:"A-Memory-Has-Operation-Scope",fragments:[e]});try{return await this.call("onHas",r),r.destroy(),e.result}catch(o){let n=new _({title:_.MemoryHasError,description:`An error occurred while checking existence for key "${String(t)}"`,originalError:o});throw r.register(n),await this.call("onError",r),r.destroy(),n}}async set(t,e){let r=new l("set",{key:t,value:e}),o=new A_Scope({name:"A-Memory-Set-Operation-Scope",fragments:[r]});try{await this.call("onSet",o);}catch(n){let s=new _({title:_.MemorySetError,description:`An error occurred while setting the value for key "${String(t)}"`,originalError:n});throw o.register(s),await this.call("onError",o),o.destroy(),s}}async drop(t){let e=new l("drop",{key:t}),r=new A_Scope({name:"A-Memory-Drop-Operation-Scope",fragments:[e]});try{await this.call("onDrop",r);}catch(o){let n=new _({title:_.MemoryDropError,description:`An error occurred while dropping the value for key "${String(t)}"`,originalError:o});throw r.register(n),await this.call("onError",r),r.destroy(),n}}async clear(){let t=new l("clear"),e=new A_Scope({name:"A-Memory-Clear-Operation-Scope",fragments:[t]});try{await this.call("onClear",e);}catch(r){let o=new _({title:_.MemoryClearError,description:"An error occurred while clearing the memory",originalError:r});throw e.register(o),await this.call("onError",e),e.destroy(),o}}async toJSON(){let t=new l("serialize"),e=new A_Scope({name:"A-Memory-Serialize-Operation-Scope",fragments:[t]});try{return await this.call("onSerialize",e),t.result}catch(r){let o=new _({title:_.MemorySerializeError,description:"An error occurred while serializing the memory",originalError:r});throw e.register(o),await this.call("onError",e),e.destroy(),o}}};i(C,"A_Memory"),p([A_Feature.Extend()],C.prototype,Nr,1),p([A_Feature.Extend()],C.prototype,br,1),p([A_Feature.Extend(),a(0,A_Inject(S))],C.prototype,Ir,1),p([A_Feature.Extend(),a(0,A_Inject(S))],C.prototype,Lr,1),p([A_Feature.Extend(),a(0,A_Dependency.Required()),a(0,A_Inject(l)),a(1,A_Inject(S))],C.prototype,Or,1),p([A_Feature.Extend(),a(0,A_Dependency.Required()),a(0,A_Inject(l)),a(1,A_Inject(S))],C.prototype,Pr,1),p([A_Feature.Extend(),a(0,A_Dependency.Required()),a(0,A_Inject(l)),a(1,A_Inject(S))],C.prototype,wr,1),p([A_Feature.Extend(),a(0,A_Dependency.Required()),a(0,A_Inject(l)),a(1,A_Inject(S))],C.prototype,vr,1),p([A_Feature.Extend(),a(0,A_Dependency.Required()),a(0,A_Inject(l)),a(1,A_Inject(S))],C.prototype,Rr,1);var je=C;var qe=class qe{constructor(){this.promise=new Promise((t,e)=>{this.resolveFn=t,this.rejectFn=e;});}resolve(t){this.resolveFn(t);}reject(t){this.rejectFn(t);}};i(qe,"A_Deferred");var re=qe;var He=class He{constructor(t,e,r){this.config={resolveOnClear:false};r&&(this.config={...this.config,...r}),this.deferred=new re,this.timeout=setTimeout(()=>e().then((...o)=>this.deferred.resolve(...o)).catch((...o)=>this.deferred.reject(...o)),t);}get promise(){return this.deferred.promise}clear(){this.timeout&&(clearTimeout(this.timeout),this.config.resolveOnClear?this.deferred.resolve(void 0):this.deferred.reject(new A_Error("Timeout Cleared")));}};i(He,"A_ScheduleObject");var X=He;var Xe=class Xe extends A_Component{async schedule(t,e,r){let o=A_TypeGuards.isString(t)?new Date(t).getTime():t;return new X(o-Date.now(),e,r)}async delay(t,e,r){return new X(t,e,r)}};i(Xe,"A_Schedule");var Ke=Xe;export{wo as A_CONSTANTS__CONFIG_ENV_VARIABLES,j as A_CONSTANTS__CONFIG_ENV_VARIABLES_ARRAY,xe as A_Channel,F as A_ChannelError,ft as A_ChannelFeatures,J as A_ChannelRequest,yt as A_ChannelRequestStatuses,Pe as A_Command,b as A_CommandError,Tt as A_CommandFeatures,Et as A_CommandTransitions,ut as A_Command_Status,f as A_Config,I as A_ConfigError,Fe as A_ConfigLoader,re as A_Deferred,R as A_ExecutionContext,k as A_LOGGER_ANSI,et as A_LOGGER_COLORS,Fo as A_LOGGER_DEFAULT_LEVEL,Qe as A_LOGGER_DEFAULT_SCOPE_LENGTH,Z as A_LOGGER_ENV_KEYS,T as A_LOGGER_FORMAT,tt as A_LOGGER_SAFE_RANDOM_COLORS,q as A_LOGGER_TIME_FORMAT,w as A_Logger,ye as A_LoggerEnvVariables,fn as A_LoggerEnvVariablesArray,ze as A_Manifest,K as A_ManifestChecker,G as A_ManifestError,je as A_Memory,S as A_MemoryContext,_ as A_MemoryError,Ar as A_MemoryFeatures,l as A_OperationContext,h as A_Polyfill,Ke as A_Schedule,X as A_ScheduleObject,L as A_StateMachine,V as A_StateMachineError,xt as A_StateMachineFeatures,v as A_StateMachineTransition,ur as A_TYPES__ConfigFeature,u as ConfigReader,H as ENVConfigReader,ee as FileConfigReader};//# sourceMappingURL=index.mjs.map
45
45
  //# sourceMappingURL=index.mjs.map