@adaas/are 0.0.2
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/.conf/tsconfig.base.json +110 -0
- package/.conf/tsconfig.browser.json +43 -0
- package/.conf/tsconfig.node.json +47 -0
- package/.nvmrc +1 -0
- package/LICENSE +22 -0
- package/README.md +2 -0
- package/dist/browser/index.d.mts +1134 -0
- package/dist/browser/index.mjs +2624 -0
- package/dist/browser/index.mjs.map +1 -0
- package/dist/node/chunk-EQQGB2QZ.mjs +15 -0
- package/dist/node/chunk-EQQGB2QZ.mjs.map +1 -0
- package/dist/node/engines/html/AreHTML.compiler.d.mts +114 -0
- package/dist/node/engines/html/AreHTML.compiler.d.ts +114 -0
- package/dist/node/engines/html/AreHTML.compiler.js +408 -0
- package/dist/node/engines/html/AreHTML.compiler.js.map +1 -0
- package/dist/node/engines/html/AreHTML.compiler.mjs +398 -0
- package/dist/node/engines/html/AreHTML.compiler.mjs.map +1 -0
- package/dist/node/engines/html/AreHTML.engine.d.mts +36 -0
- package/dist/node/engines/html/AreHTML.engine.d.ts +36 -0
- package/dist/node/engines/html/AreHTML.engine.js +122 -0
- package/dist/node/engines/html/AreHTML.engine.js.map +1 -0
- package/dist/node/engines/html/AreHTML.engine.mjs +112 -0
- package/dist/node/engines/html/AreHTML.engine.mjs.map +1 -0
- package/dist/node/engines/html/index.d.mts +26 -0
- package/dist/node/engines/html/index.d.ts +26 -0
- package/dist/node/engines/html/index.js +17 -0
- package/dist/node/engines/html/index.js.map +1 -0
- package/dist/node/engines/html/index.mjs +5 -0
- package/dist/node/engines/html/index.mjs.map +1 -0
- package/dist/node/engines/json/AreJSON.compiler.d.mts +21 -0
- package/dist/node/engines/json/AreJSON.compiler.d.ts +21 -0
- package/dist/node/engines/json/AreJSON.compiler.js +24 -0
- package/dist/node/engines/json/AreJSON.compiler.js.map +1 -0
- package/dist/node/engines/json/AreJSON.compiler.mjs +17 -0
- package/dist/node/engines/json/AreJSON.compiler.mjs.map +1 -0
- package/dist/node/index-BD-6iOuR.d.ts +238 -0
- package/dist/node/index-DMXWCL7R.d.mts +238 -0
- package/dist/node/index.d.mts +40 -0
- package/dist/node/index.d.ts +40 -0
- package/dist/node/index.js +105 -0
- package/dist/node/index.js.map +1 -0
- package/dist/node/index.mjs +16 -0
- package/dist/node/index.mjs.map +1 -0
- package/dist/node/lib/AreApp/AreApp.container.d.mts +22 -0
- package/dist/node/lib/AreApp/AreApp.container.d.ts +22 -0
- package/dist/node/lib/AreApp/AreApp.container.js +60 -0
- package/dist/node/lib/AreApp/AreApp.container.js.map +1 -0
- package/dist/node/lib/AreApp/AreApp.container.mjs +48 -0
- package/dist/node/lib/AreApp/AreApp.container.mjs.map +1 -0
- package/dist/node/lib/AreApp/AreApp.env.d.mts +2 -0
- package/dist/node/lib/AreApp/AreApp.env.d.ts +2 -0
- package/dist/node/lib/AreApp/AreApp.env.js +4 -0
- package/dist/node/lib/AreApp/AreApp.env.js.map +1 -0
- package/dist/node/lib/AreApp/AreApp.env.mjs +3 -0
- package/dist/node/lib/AreApp/AreApp.env.mjs.map +1 -0
- package/dist/node/lib/AreApp/AreApp.error.d.mts +6 -0
- package/dist/node/lib/AreApp/AreApp.error.d.ts +6 -0
- package/dist/node/lib/AreApp/AreApp.error.js +10 -0
- package/dist/node/lib/AreApp/AreApp.error.js.map +1 -0
- package/dist/node/lib/AreApp/AreApp.error.mjs +9 -0
- package/dist/node/lib/AreApp/AreApp.error.mjs.map +1 -0
- package/dist/node/lib/AreApp/AreApp.types.d.mts +2 -0
- package/dist/node/lib/AreApp/AreApp.types.d.ts +2 -0
- package/dist/node/lib/AreApp/AreApp.types.js +4 -0
- package/dist/node/lib/AreApp/AreApp.types.js.map +1 -0
- package/dist/node/lib/AreApp/AreApp.types.mjs +3 -0
- package/dist/node/lib/AreApp/AreApp.types.mjs.map +1 -0
- package/dist/node/lib/AreApp/index.d.mts +17 -0
- package/dist/node/lib/AreApp/index.d.ts +17 -0
- package/dist/node/lib/AreApp/index.js +24 -0
- package/dist/node/lib/AreApp/index.js.map +1 -0
- package/dist/node/lib/AreApp/index.mjs +6 -0
- package/dist/node/lib/AreApp/index.mjs.map +1 -0
- package/dist/node/lib/AreCompiler/AreCompiler.component.d.mts +238 -0
- package/dist/node/lib/AreCompiler/AreCompiler.component.d.ts +238 -0
- package/dist/node/lib/AreCompiler/AreCompiler.component.js +647 -0
- package/dist/node/lib/AreCompiler/AreCompiler.component.js.map +1 -0
- package/dist/node/lib/AreCompiler/AreCompiler.component.mjs +637 -0
- package/dist/node/lib/AreCompiler/AreCompiler.component.mjs.map +1 -0
- package/dist/node/lib/AreCompiler/AreCompiler.error.d.mts +8 -0
- package/dist/node/lib/AreCompiler/AreCompiler.error.d.ts +8 -0
- package/dist/node/lib/AreCompiler/AreCompiler.error.js +12 -0
- package/dist/node/lib/AreCompiler/AreCompiler.error.js.map +1 -0
- package/dist/node/lib/AreCompiler/AreCompiler.error.mjs +11 -0
- package/dist/node/lib/AreCompiler/AreCompiler.error.mjs.map +1 -0
- package/dist/node/lib/AreCompiler/AreCompiler.types.d.mts +2 -0
- package/dist/node/lib/AreCompiler/AreCompiler.types.d.ts +2 -0
- package/dist/node/lib/AreCompiler/AreCompiler.types.js +4 -0
- package/dist/node/lib/AreCompiler/AreCompiler.types.js.map +1 -0
- package/dist/node/lib/AreCompiler/AreCompiler.types.mjs +3 -0
- package/dist/node/lib/AreCompiler/AreCompiler.types.mjs.map +1 -0
- package/dist/node/lib/AreCompiler/index.d.mts +17 -0
- package/dist/node/lib/AreCompiler/index.d.ts +17 -0
- package/dist/node/lib/AreCompiler/index.js +24 -0
- package/dist/node/lib/AreCompiler/index.js.map +1 -0
- package/dist/node/lib/AreCompiler/index.mjs +6 -0
- package/dist/node/lib/AreCompiler/index.mjs.map +1 -0
- package/dist/node/lib/AreComponent/Are.component.d.mts +45 -0
- package/dist/node/lib/AreComponent/Are.component.d.ts +45 -0
- package/dist/node/lib/AreComponent/Are.component.js +165 -0
- package/dist/node/lib/AreComponent/Are.component.js.map +1 -0
- package/dist/node/lib/AreComponent/Are.component.mjs +156 -0
- package/dist/node/lib/AreComponent/Are.component.mjs.map +1 -0
- package/dist/node/lib/AreComponent/Are.constants.d.mts +32 -0
- package/dist/node/lib/AreComponent/Are.constants.d.ts +32 -0
- package/dist/node/lib/AreComponent/Are.constants.js +27 -0
- package/dist/node/lib/AreComponent/Are.constants.js.map +1 -0
- package/dist/node/lib/AreComponent/Are.constants.mjs +27 -0
- package/dist/node/lib/AreComponent/Are.constants.mjs.map +1 -0
- package/dist/node/lib/AreComponent/Are.context.d.mts +22 -0
- package/dist/node/lib/AreComponent/Are.context.d.ts +22 -0
- package/dist/node/lib/AreComponent/Are.context.js +45 -0
- package/dist/node/lib/AreComponent/Are.context.js.map +1 -0
- package/dist/node/lib/AreComponent/Are.context.mjs +38 -0
- package/dist/node/lib/AreComponent/Are.context.mjs.map +1 -0
- package/dist/node/lib/AreComponent/Are.types.d.mts +2 -0
- package/dist/node/lib/AreComponent/Are.types.d.ts +2 -0
- package/dist/node/lib/AreComponent/Are.types.js +4 -0
- package/dist/node/lib/AreComponent/Are.types.js.map +1 -0
- package/dist/node/lib/AreComponent/Are.types.mjs +3 -0
- package/dist/node/lib/AreComponent/Are.types.mjs.map +1 -0
- package/dist/node/lib/AreComponent/index.d.mts +11 -0
- package/dist/node/lib/AreComponent/index.d.ts +11 -0
- package/dist/node/lib/AreComponent/index.js +31 -0
- package/dist/node/lib/AreComponent/index.js.map +1 -0
- package/dist/node/lib/AreComponent/index.mjs +7 -0
- package/dist/node/lib/AreComponent/index.mjs.map +1 -0
- package/dist/node/lib/AreEvent/AreEvent.context.d.mts +8 -0
- package/dist/node/lib/AreEvent/AreEvent.context.d.ts +8 -0
- package/dist/node/lib/AreEvent/AreEvent.context.js +34 -0
- package/dist/node/lib/AreEvent/AreEvent.context.js.map +1 -0
- package/dist/node/lib/AreEvent/AreEvent.context.mjs +27 -0
- package/dist/node/lib/AreEvent/AreEvent.context.mjs.map +1 -0
- package/dist/node/lib/AreEvent/AreEvent.types.d.mts +16 -0
- package/dist/node/lib/AreEvent/AreEvent.types.d.ts +16 -0
- package/dist/node/lib/AreEvent/AreEvent.types.js +4 -0
- package/dist/node/lib/AreEvent/AreEvent.types.js.map +1 -0
- package/dist/node/lib/AreEvent/AreEvent.types.mjs +3 -0
- package/dist/node/lib/AreEvent/AreEvent.types.mjs.map +1 -0
- package/dist/node/lib/AreEvent/index.d.mts +8 -0
- package/dist/node/lib/AreEvent/index.d.ts +8 -0
- package/dist/node/lib/AreEvent/index.js +19 -0
- package/dist/node/lib/AreEvent/index.js.map +1 -0
- package/dist/node/lib/AreEvent/index.mjs +5 -0
- package/dist/node/lib/AreEvent/index.mjs.map +1 -0
- package/dist/node/lib/AreIndex/AreIndex.context.d.mts +8 -0
- package/dist/node/lib/AreIndex/AreIndex.context.d.ts +8 -0
- package/dist/node/lib/AreIndex/AreIndex.context.js +142 -0
- package/dist/node/lib/AreIndex/AreIndex.context.js.map +1 -0
- package/dist/node/lib/AreIndex/AreIndex.context.mjs +141 -0
- package/dist/node/lib/AreIndex/AreIndex.context.mjs.map +1 -0
- package/dist/node/lib/AreIndex/index.d.mts +8 -0
- package/dist/node/lib/AreIndex/index.d.ts +8 -0
- package/dist/node/lib/AreIndex/index.js +12 -0
- package/dist/node/lib/AreIndex/index.js.map +1 -0
- package/dist/node/lib/AreIndex/index.mjs +4 -0
- package/dist/node/lib/AreIndex/index.mjs.map +1 -0
- package/dist/node/lib/AreNode/AreNode.constants.d.mts +36 -0
- package/dist/node/lib/AreNode/AreNode.constants.d.ts +36 -0
- package/dist/node/lib/AreNode/AreNode.constants.js +17 -0
- package/dist/node/lib/AreNode/AreNode.constants.js.map +1 -0
- package/dist/node/lib/AreNode/AreNode.constants.mjs +17 -0
- package/dist/node/lib/AreNode/AreNode.constants.mjs.map +1 -0
- package/dist/node/lib/AreNode/AreNode.entity.d.mts +8 -0
- package/dist/node/lib/AreNode/AreNode.entity.d.ts +8 -0
- package/dist/node/lib/AreNode/AreNode.entity.js +164 -0
- package/dist/node/lib/AreNode/AreNode.entity.js.map +1 -0
- package/dist/node/lib/AreNode/AreNode.entity.mjs +157 -0
- package/dist/node/lib/AreNode/AreNode.entity.mjs.map +1 -0
- package/dist/node/lib/AreNode/AreNode.error.d.mts +2 -0
- package/dist/node/lib/AreNode/AreNode.error.d.ts +2 -0
- package/dist/node/lib/AreNode/AreNode.error.js +4 -0
- package/dist/node/lib/AreNode/AreNode.error.js.map +1 -0
- package/dist/node/lib/AreNode/AreNode.error.mjs +3 -0
- package/dist/node/lib/AreNode/AreNode.error.mjs.map +1 -0
- package/dist/node/lib/AreNode/AreNode.types.d.mts +13 -0
- package/dist/node/lib/AreNode/AreNode.types.d.ts +13 -0
- package/dist/node/lib/AreNode/AreNode.types.js +4 -0
- package/dist/node/lib/AreNode/AreNode.types.js.map +1 -0
- package/dist/node/lib/AreNode/AreNode.types.mjs +3 -0
- package/dist/node/lib/AreNode/AreNode.types.mjs.map +1 -0
- package/dist/node/lib/AreNode/index.d.mts +9 -0
- package/dist/node/lib/AreNode/index.d.ts +9 -0
- package/dist/node/lib/AreNode/index.js +26 -0
- package/dist/node/lib/AreNode/index.js.map +1 -0
- package/dist/node/lib/AreNode/index.mjs +6 -0
- package/dist/node/lib/AreNode/index.mjs.map +1 -0
- package/dist/node/lib/AreProps/AreProps.context.d.mts +9 -0
- package/dist/node/lib/AreProps/AreProps.context.d.ts +9 -0
- package/dist/node/lib/AreProps/AreProps.context.js +32 -0
- package/dist/node/lib/AreProps/AreProps.context.js.map +1 -0
- package/dist/node/lib/AreProps/AreProps.context.mjs +25 -0
- package/dist/node/lib/AreProps/AreProps.context.mjs.map +1 -0
- package/dist/node/lib/AreProps/index.d.mts +3 -0
- package/dist/node/lib/AreProps/index.d.ts +3 -0
- package/dist/node/lib/AreProps/index.js +12 -0
- package/dist/node/lib/AreProps/index.js.map +1 -0
- package/dist/node/lib/AreProps/index.mjs +4 -0
- package/dist/node/lib/AreProps/index.mjs.map +1 -0
- package/dist/node/lib/AreRoot/AreRoot.component.d.mts +18 -0
- package/dist/node/lib/AreRoot/AreRoot.component.d.ts +18 -0
- package/dist/node/lib/AreRoot/AreRoot.component.js +53 -0
- package/dist/node/lib/AreRoot/AreRoot.component.js.map +1 -0
- package/dist/node/lib/AreRoot/AreRoot.component.mjs +41 -0
- package/dist/node/lib/AreRoot/AreRoot.component.mjs.map +1 -0
- package/dist/node/lib/AreRoot/index.d.mts +11 -0
- package/dist/node/lib/AreRoot/index.d.ts +11 -0
- package/dist/node/lib/AreRoot/index.js +12 -0
- package/dist/node/lib/AreRoot/index.js.map +1 -0
- package/dist/node/lib/AreRoot/index.mjs +4 -0
- package/dist/node/lib/AreRoot/index.mjs.map +1 -0
- package/dist/node/lib/AreRouter/AreRouter.componeent.d.mts +17 -0
- package/dist/node/lib/AreRouter/AreRouter.componeent.d.ts +17 -0
- package/dist/node/lib/AreRouter/AreRouter.componeent.js +37 -0
- package/dist/node/lib/AreRouter/AreRouter.componeent.js.map +1 -0
- package/dist/node/lib/AreRouter/AreRouter.componeent.mjs +25 -0
- package/dist/node/lib/AreRouter/AreRouter.componeent.mjs.map +1 -0
- package/dist/node/lib/AreRouter/index.d.mts +12 -0
- package/dist/node/lib/AreRouter/index.d.ts +12 -0
- package/dist/node/lib/AreRouter/index.js +12 -0
- package/dist/node/lib/AreRouter/index.js.map +1 -0
- package/dist/node/lib/AreRouter/index.mjs +4 -0
- package/dist/node/lib/AreRouter/index.mjs.map +1 -0
- package/dist/node/lib/AreScene/AreScene.context.d.mts +8 -0
- package/dist/node/lib/AreScene/AreScene.context.d.ts +8 -0
- package/dist/node/lib/AreScene/AreScene.context.js +249 -0
- package/dist/node/lib/AreScene/AreScene.context.js.map +1 -0
- package/dist/node/lib/AreScene/AreScene.context.mjs +248 -0
- package/dist/node/lib/AreScene/AreScene.context.mjs.map +1 -0
- package/dist/node/lib/AreScene/AreScene.error.d.mts +14 -0
- package/dist/node/lib/AreScene/AreScene.error.d.ts +14 -0
- package/dist/node/lib/AreScene/AreScene.error.js +18 -0
- package/dist/node/lib/AreScene/AreScene.error.js.map +1 -0
- package/dist/node/lib/AreScene/AreScene.error.mjs +17 -0
- package/dist/node/lib/AreScene/AreScene.error.mjs.map +1 -0
- package/dist/node/lib/AreScene/AreScene.types.d.mts +9 -0
- package/dist/node/lib/AreScene/AreScene.types.d.ts +9 -0
- package/dist/node/lib/AreScene/AreScene.types.js +4 -0
- package/dist/node/lib/AreScene/AreScene.types.js.map +1 -0
- package/dist/node/lib/AreScene/AreScene.types.mjs +3 -0
- package/dist/node/lib/AreScene/AreScene.types.mjs.map +1 -0
- package/dist/node/lib/AreScene/index.d.mts +9 -0
- package/dist/node/lib/AreScene/index.d.ts +9 -0
- package/dist/node/lib/AreScene/index.js +24 -0
- package/dist/node/lib/AreScene/index.js.map +1 -0
- package/dist/node/lib/AreScene/index.mjs +6 -0
- package/dist/node/lib/AreScene/index.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.d.mts +7 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.d.ts +7 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.js +12 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.mjs +12 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.d.mts +8 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.d.ts +8 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.js +95 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.mjs +94 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.d.mts +8 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.d.ts +8 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.js +4 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.mjs +3 -0
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/index.d.mts +19 -0
- package/dist/node/lib/AreSceneInstruction/index.d.ts +19 -0
- package/dist/node/lib/AreSceneInstruction/index.js +33 -0
- package/dist/node/lib/AreSceneInstruction/index.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/index.mjs +7 -0
- package/dist/node/lib/AreSceneInstruction/index.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.d.mts +19 -0
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.d.ts +19 -0
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.js +27 -0
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.mjs +26 -0
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.d.mts +20 -0
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.d.ts +20 -0
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.js +27 -0
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.mjs +26 -0
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.d.mts +17 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.d.ts +17 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.js +23 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.mjs +22 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.d.mts +19 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.d.ts +19 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.js +27 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.mjs +26 -0
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.d.mts +23 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.d.ts +23 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.js +41 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.mjs +40 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.d.mts +15 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.d.ts +15 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.js +21 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.mjs +20 -0
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.d.mts +17 -0
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.d.ts +17 -0
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.js +23 -0
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.mjs +22 -0
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.d.mts +23 -0
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.d.ts +23 -0
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.js +34 -0
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.mjs +33 -0
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.d.mts +16 -0
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.d.ts +16 -0
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.js +20 -0
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.mjs +19 -0
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.mjs.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/index.d.mts +18 -0
- package/dist/node/lib/AreSceneInstruction/types/index.d.ts +18 -0
- package/dist/node/lib/AreSceneInstruction/types/index.js +52 -0
- package/dist/node/lib/AreSceneInstruction/types/index.js.map +1 -0
- package/dist/node/lib/AreSceneInstruction/types/index.mjs +12 -0
- package/dist/node/lib/AreSceneInstruction/types/index.mjs.map +1 -0
- package/dist/node/lib/AreSlot/AreSlot.component.d.mts +8 -0
- package/dist/node/lib/AreSlot/AreSlot.component.d.ts +8 -0
- package/dist/node/lib/AreSlot/AreSlot.component.js +37 -0
- package/dist/node/lib/AreSlot/AreSlot.component.js.map +1 -0
- package/dist/node/lib/AreSlot/AreSlot.component.mjs +36 -0
- package/dist/node/lib/AreSlot/AreSlot.component.mjs.map +1 -0
- package/dist/node/lib/AreStore/AreStore.context.d.mts +10 -0
- package/dist/node/lib/AreStore/AreStore.context.d.ts +10 -0
- package/dist/node/lib/AreStore/AreStore.context.js +35 -0
- package/dist/node/lib/AreStore/AreStore.context.js.map +1 -0
- package/dist/node/lib/AreStore/AreStore.context.mjs +28 -0
- package/dist/node/lib/AreStore/AreStore.context.mjs.map +1 -0
- package/dist/node/lib/AreStore/index.d.mts +3 -0
- package/dist/node/lib/AreStore/index.d.ts +3 -0
- package/dist/node/lib/AreStore/index.js +12 -0
- package/dist/node/lib/AreStore/index.js.map +1 -0
- package/dist/node/lib/AreStore/index.mjs +4 -0
- package/dist/node/lib/AreStore/index.mjs.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.component.d.mts +89 -0
- package/dist/node/lib/AreSyntax/AreSyntax.component.d.ts +89 -0
- package/dist/node/lib/AreSyntax/AreSyntax.component.js +241 -0
- package/dist/node/lib/AreSyntax/AreSyntax.component.js.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.component.mjs +232 -0
- package/dist/node/lib/AreSyntax/AreSyntax.component.mjs.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.context.d.mts +80 -0
- package/dist/node/lib/AreSyntax/AreSyntax.context.d.ts +80 -0
- package/dist/node/lib/AreSyntax/AreSyntax.context.js +117 -0
- package/dist/node/lib/AreSyntax/AreSyntax.context.js.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.context.mjs +110 -0
- package/dist/node/lib/AreSyntax/AreSyntax.context.mjs.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.error.d.mts +9 -0
- package/dist/node/lib/AreSyntax/AreSyntax.error.d.ts +9 -0
- package/dist/node/lib/AreSyntax/AreSyntax.error.js +13 -0
- package/dist/node/lib/AreSyntax/AreSyntax.error.js.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.error.mjs +12 -0
- package/dist/node/lib/AreSyntax/AreSyntax.error.mjs.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.types.d.mts +132 -0
- package/dist/node/lib/AreSyntax/AreSyntax.types.d.ts +132 -0
- package/dist/node/lib/AreSyntax/AreSyntax.types.js +4 -0
- package/dist/node/lib/AreSyntax/AreSyntax.types.js.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.types.mjs +3 -0
- package/dist/node/lib/AreSyntax/AreSyntax.types.mjs.map +1 -0
- package/dist/node/lib/AreSyntax/index.d.mts +12 -0
- package/dist/node/lib/AreSyntax/index.d.ts +12 -0
- package/dist/node/lib/AreSyntax/index.js +29 -0
- package/dist/node/lib/AreSyntax/index.js.map +1 -0
- package/dist/node/lib/AreSyntax/index.mjs +7 -0
- package/dist/node/lib/AreSyntax/index.mjs.map +1 -0
- package/dist/node/signals/AreInit.signal.d.mts +7 -0
- package/dist/node/signals/AreInit.signal.d.ts +7 -0
- package/dist/node/signals/AreInit.signal.js +13 -0
- package/dist/node/signals/AreInit.signal.js.map +1 -0
- package/dist/node/signals/AreInit.signal.mjs +12 -0
- package/dist/node/signals/AreInit.signal.mjs.map +1 -0
- package/dist/node/signals/AreRoute.signal.d.mts +12 -0
- package/dist/node/signals/AreRoute.signal.d.ts +12 -0
- package/dist/node/signals/AreRoute.signal.js +24 -0
- package/dist/node/signals/AreRoute.signal.js.map +1 -0
- package/dist/node/signals/AreRoute.signal.mjs +23 -0
- package/dist/node/signals/AreRoute.signal.mjs.map +1 -0
- package/dist/node/signals/index.d.mts +4 -0
- package/dist/node/signals/index.d.ts +4 -0
- package/dist/node/signals/index.js +17 -0
- package/dist/node/signals/index.js.map +1 -0
- package/dist/node/signals/index.mjs +5 -0
- package/dist/node/signals/index.mjs.map +1 -0
- package/docs/a-logo-docs.png +0 -0
- package/examples/jumpstart/concept.ts +60 -0
- package/examples/jumpstart/containers/UI.container.ts +172 -0
- package/examples/jumpstart/dist/index.html +22 -0
- package/examples/jumpstart/dist/mls3rrlq-lofs95.js +129 -0
- package/examples/jumpstart/dist/static/css/main.css +40 -0
- package/examples/jumpstart/dist/static/img/test.png +0 -0
- package/examples/jumpstart/public/index.html +22 -0
- package/examples/jumpstart/public/static/css/main.css +40 -0
- package/examples/jumpstart/public/static/img/test.png +0 -0
- package/examples/jumpstart/src/components/A-Btn.component.ts +124 -0
- package/examples/jumpstart/src/components/A-Input.component.ts +78 -0
- package/examples/jumpstart/src/components/A-Navigation.component.ts +167 -0
- package/examples/jumpstart/src/components/SignInComponent.component.ts +127 -0
- package/examples/jumpstart/src/concept.ts +92 -0
- package/jest.config.ts +26 -0
- package/package.json +92 -0
- package/src/engines/html/AreHTML.compiler.ts +657 -0
- package/src/engines/html/AreHTML.engine.ts +62 -0
- package/src/engines/html/index.ts +2 -0
- package/src/engines/json/AreJSON.compiler.ts +13 -0
- package/src/index.ts +15 -0
- package/src/lib/AreApp/AreApp.container.ts +77 -0
- package/src/lib/AreApp/AreApp.env.ts +0 -0
- package/src/lib/AreApp/AreApp.error.ts +7 -0
- package/src/lib/AreApp/AreApp.types.ts +0 -0
- package/src/lib/AreApp/index.ts +4 -0
- package/src/lib/AreCompiler/AreCompiler.component.ts +1023 -0
- package/src/lib/AreCompiler/AreCompiler.error.ts +9 -0
- package/src/lib/AreCompiler/AreCompiler.types.ts +0 -0
- package/src/lib/AreCompiler/index.ts +3 -0
- package/src/lib/AreComponent/Are.component.ts +203 -0
- package/src/lib/AreComponent/Are.constants.ts +39 -0
- package/src/lib/AreComponent/Are.context.ts +43 -0
- package/src/lib/AreComponent/Are.types.ts +0 -0
- package/src/lib/AreComponent/index.ts +4 -0
- package/src/lib/AreEvent/AreEvent.context.ts +38 -0
- package/src/lib/AreEvent/AreEvent.types.ts +16 -0
- package/src/lib/AreEvent/index.ts +2 -0
- package/src/lib/AreIndex/AreIndex.context.ts +174 -0
- package/src/lib/AreIndex/index.ts +1 -0
- package/src/lib/AreNode/AreNode.constants.ts +37 -0
- package/src/lib/AreNode/AreNode.entity.ts +249 -0
- package/src/lib/AreNode/AreNode.error.ts +0 -0
- package/src/lib/AreNode/AreNode.types.ts +15 -0
- package/src/lib/AreNode/index.ts +4 -0
- package/src/lib/AreProps/AreProps.context.ts +26 -0
- package/src/lib/AreProps/index.ts +1 -0
- package/src/lib/AreRoot/AreRoot.component.ts +54 -0
- package/src/lib/AreRoot/index.ts +1 -0
- package/src/lib/AreRouter/AreRouter.componeent.ts +24 -0
- package/src/lib/AreRouter/index.ts +1 -0
- package/src/lib/AreScene/AreScene.context.ts +382 -0
- package/src/lib/AreScene/AreScene.error.ts +22 -0
- package/src/lib/AreScene/AreScene.types.ts +7 -0
- package/src/lib/AreScene/index.ts +3 -0
- package/src/lib/AreSceneInstruction/AreSceneInstruction.constants.ts +7 -0
- package/src/lib/AreSceneInstruction/AreSceneInstruction.entity.ts +156 -0
- package/src/lib/AreSceneInstruction/AreSceneInstruction.types.ts +8 -0
- package/src/lib/AreSceneInstruction/index.ts +4 -0
- package/src/lib/AreSceneInstruction/types/AddAttribute.instruction.ts +34 -0
- package/src/lib/AreSceneInstruction/types/AddDirective.instruction.ts +36 -0
- package/src/lib/AreSceneInstruction/types/AddStyle.instruction.ts +26 -0
- package/src/lib/AreSceneInstruction/types/AddStyleProperty.instruction.ts +32 -0
- package/src/lib/AreSceneInstruction/types/AttachListener.instruction.ts +57 -0
- package/src/lib/AreSceneInstruction/types/AttachRootNode.instruction.ts +23 -0
- package/src/lib/AreSceneInstruction/types/MountNode.instruction.ts +29 -0
- package/src/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.ts +45 -0
- package/src/lib/AreSceneInstruction/types/UnmountNode.instruction.ts +22 -0
- package/src/lib/AreSceneInstruction/types/index.ts +10 -0
- package/src/lib/AreSlot/AreSlot.component.ts +48 -0
- package/src/lib/AreStore/AreStore.context.ts +36 -0
- package/src/lib/AreStore/index.ts +1 -0
- package/src/lib/AreSyntax/AreSyntax.component.ts +378 -0
- package/src/lib/AreSyntax/AreSyntax.context.ts +114 -0
- package/src/lib/AreSyntax/AreSyntax.error.ts +11 -0
- package/src/lib/AreSyntax/AreSyntax.types.ts +156 -0
- package/src/lib/AreSyntax/index.ts +4 -0
- package/src/signals/AreInit.signal.ts +7 -0
- package/src/signals/AreRoute.signal.ts +25 -0
- package/src/signals/index.ts +2 -0
- package/tests/A-HttpChannel.test.ts +204 -0
- package/tests/A-HttpServerError.test.ts +204 -0
- package/tests/A-Request.test.ts +742 -0
- package/tests/A-Service.test.ts +18 -0
- package/tsconfig.json +68 -0
- package/tslint.json +98 -0
- package/tsup.config.ts +78 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/AreCompiler/AreCompiler.component.ts"],"names":["AreCompiler","A_Component","A_Context","A_FormatterHelper","A_Logger","component","AreFeatures","AreScene","AreIndex","AreStore","AreProps","node","MountNodeInstruction","ReplaceInterpolationInstruction","AddAttributeInstruction","AddDirectiveInstruction","AddStyleInstruction","A_Dependency","AreNode","AttachListenerInstruction","AttachRootNodeInstruction","AreCompilerError","UnmountNodeInstruction","A_ExecutionContext","A_Scope","AreEvent","A_Feature","A_TYPES__EntityFeatures","A_Caller","AreSyntax","AreNodeFeatures","A_SignalBusFeatures","A_SignalVector","AreContext","A_SignalState","A_Frame"],"mappings":"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","file":"AreCompiler.component.js","sourcesContent":["import { A_Caller, A_Component, A_Container, A_Context, A_Dependency, A_Error, A_Feature, A_FormatterHelper, A_Inject, A_Scope, A_TYPES__EntityFeatures, ASEID } from \"@adaas/a-concept\";\nimport { A_Frame } from \"@adaas/a-frame\";\nimport { AreIndex } from \"@adaas/are/index\";\nimport { AreScene } from \"@adaas/are/scene\";\nimport { AreNode, AreNodeFeatures } from \"@adaas/are/node\";\nimport {\n AreSceneInstructionFeatures,\n AttachRootNodeInstruction,\n MountNodeInstruction,\n UnmountNodeInstruction,\n AddStyleInstruction,\n AttachListenerInstruction,\n AddAttributeInstruction,\n ReplaceInterpolationInstruction,\n AddDirectiveInstruction,\n} from \"@adaas/are/scene-instruction\";\nimport { AreSyntax } from \"@adaas/are/syntax\";\nimport { A_ExecutionContext } from \"@adaas/a-utils/a-execution\";\nimport { A_Logger } from \"@adaas/a-utils/a-logger\";\nimport { A_SignalBusFeatures, A_SignalState, A_SignalVector } from \"@adaas/a-utils/a-signal\";\nimport { Are, AreContext, AreFeatures } from \"@adaas/are/component\";\nimport { AreProps } from \"@adaas/are/props\";\nimport { AreStore } from \"@adaas/are/store\";\nimport { AreEvent } from \"@adaas/are/event\";\nimport { AreCompilerError } from \"./AreCompiler.error\";\n\n\n\n@A_Frame.Component({\n namespace: 'A-ARE',\n name: 'AreCompiler',\n description: 'AreCompiler is responsible for compiling AreNodes into their respective components, managing the compilation lifecycle, and ensuring that each node is processed according to its defined behavior within the A-Concept Rendering Engine (ARE) framework.'\n})\nexport class AreCompiler extends A_Component {\n\n\n\n // ==================================================================================\n // ========================= COMPONENT METHODS ======================================\n // ==================================================================================\n index(node: AreNode) {\n\n }\n\n component(node: AreNode): Are | undefined {\n let scope: A_Scope\n\n try {\n scope = node.scope\n } catch (error) {\n scope = A_Context.scope(this)\n }\n\n return scope.resolve<Are>(A_FormatterHelper.toPascalCase(node.aseid.entity)) as Are | undefined;\n }\n // ==================================================================================\n // ========================= ARE-NODE METHODS ======================================\n // ==================================================================================\n\n // -----------------------------------------------------------------------------------------\n // ----------------------------Are-Node Load Section----------------------------------------\n // -----------------------------------------------------------------------------------------\n /**\n * Handles before load lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: A_TYPES__EntityFeatures.LOAD,\n before: /.*/,\n scope: [AreNode]\n })\n async beforeLoad(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n\n\n const component = scope.resolveOnce<Are>(A_FormatterHelper.toPascalCase(node.aseid.entity));\n\n if (component)\n await feature.chain(component, AreFeatures.onBeforeLoad, node.scope);\n }\n\n /**\n * Loads the AreNode into the AreScene\n * \n * @param node \n * @param scope \n * @param syntax \n * @param feature \n * @param logger \n * @param args \n */\n @A_Feature.Extend({\n name: A_TYPES__EntityFeatures.LOAD,\n scope: [AreNode]\n })\n async load(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreSyntax) syntax: AreSyntax,\n @A_Inject(A_Feature) feature: A_Feature,\n\n @A_Inject(A_Logger) logger?: A_Logger,\n ...args: any[]\n ) {\n const loadTimerLabel = `Load Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()}`;\n console.time(loadTimerLabel);\n\n console.time(`Load: Component Resolution for <${node.aseid.entity}>`);\n const component = this.component(node);\n console.timeEnd(`Load: Component Resolution for <${node.aseid.entity}>`);\n\n\n if (!component && syntax.isCustomNode(node)) {\n logger?.warning(\n 'Component Not Found',\n `No component registered for entity: ${node.aseid.entity}. Please ensure that the component is registered in the scope before rendering.`\n );\n }\n\n console.time(`Load: Scene/Store/Props Creation for <${node.aseid.entity}>`);\n const newNodeScene = new AreScene(node.aseid);\n const newNodeIndex = new AreIndex(node.aseid);\n const newNodeStore = new AreStore(node.aseid);\n const newNodeProps = new AreProps(node.aseid);\n\n scope.register(newNodeScene);\n scope.register(newNodeIndex);\n\n if (syntax.isCustomNode(node)) {\n scope.register(newNodeStore);\n scope.register(newNodeProps);\n }\n console.timeEnd(`Load: Scene/Store/Props Creation for <${node.aseid.entity}>`);\n\n if (component) {\n console.time(`Load: Component Lifecycle Chains for <${node.aseid.entity}>`);\n await feature.chain(component, AreFeatures.onData, scope);\n await feature.chain(component, AreFeatures.onStyles, scope);\n await feature.chain(component, AreFeatures.onTemplate, scope);\n console.timeEnd(`Load: Component Lifecycle Chains for <${node.aseid.entity}>`);\n }\n\n console.time(`Load: Node Indexing for <${node.aseid.entity}>`);\n this.index(node);\n console.timeEnd(`Load: Node Indexing for <${node.aseid.entity}>`);\n\n logger?.debug(newNodeScene.debugPrefix + `Loaded component <${node.aseid.entity}> with ${this.constructor.name}`);\n\n console.time(`Load: Child Nodes Processing for <${node.aseid.entity}>`);\n const sceneNodes = newNodeScene.nodes();\n for (let i = 0; i < sceneNodes.length; i++) {\n const sceneNode = sceneNodes[i];\n const childTimerLabel = `Load: Child Node [${i}] <${sceneNode.aseid.entity}> for Parent <${node.aseid.entity}>`;\n console.time(childTimerLabel);\n\n if (!newNodeScene.isAttached(sceneNode)) {\n newNodeScene.attach(sceneNode)\n await sceneNode.load();\n }\n\n console.timeEnd(childTimerLabel);\n }\n console.timeEnd(`Load: Child Nodes Processing for <${node.aseid.entity}>`);\n\n console.timeEnd(loadTimerLabel);\n\n }\n /**\n * Handles after load lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param scene \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: A_TYPES__EntityFeatures.LOAD,\n after: /.*/,\n scope: [AreNode]\n })\n async afterLoad(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n\n logger?.debug(scene.debugPrefix + `[Load -> After] Component Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}}`);\n\n const component = this.component(node);\n\n if (component)\n await feature.chain(component, AreFeatures.onAfterLoad, node.scope);\n\n }\n\n // -----------------------------------------------------------------------------------------\n // ----------------------------Are-Node Compile Section----------------------------------------\n // -----------------------------------------------------------------------------------------\n /**\n * Handles before compile lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param scene \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onCompile,\n before: /.*/,\n scope: [AreNode]\n })\n beforeCompile(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n\n logger?.debug(scene.debugPrefix + `[Compile -> Before] Component Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}}`);\n\n const component = scope.resolveOnce<Are>(A_FormatterHelper.toPascalCase(node.aseid.entity));\n\n if (component)\n feature.chain(component, AreFeatures.onBeforeCompile, node.scope);\n }\n /**\n * Compiles the AreNode using AreCompiler\n * \n * \n * @param logger \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onCompile,\n scope: [AreNode]\n })\n compile(\n /**\n * Actual Node no be compiled\n */\n @A_Inject(A_Caller) node: AreNode,\n /**\n * Nodes owned Scene, Node content\n */\n @A_Dependency.Flat()\n @A_Inject(AreScene) scene: AreScene,\n /**\n * Parent Scene where the node is registered\n */\n @A_Dependency.Parent()\n @A_Inject(AreScene) parentScene: AreScene,\n /**\n * Global Syntax Definition for parsing markup\n */\n @A_Inject(AreSyntax) syntax: AreSyntax,\n\n @A_Inject(AreProps) props: AreProps,\n @A_Inject(AreStore) store: AreStore,\n\n @A_Dependency.Parent()\n @A_Inject(AreStore) parentStore: AreStore,\n\n @A_Inject(A_Logger) logger?: A_Logger,\n\n @A_Inject(A_Scope) scope?: A_Scope,\n ) {\n const compileTimerLabel = `Compile Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()}`;\n console.time(compileTimerLabel);\n\n try {\n // the case when it's NOT a RootNode\n if (!syntax.isRootNode(node)) {\n\n logger?.debug('violet', scene.debugPrefix + `Compiling node <${node.aseid.entity}> in Scene <${parentScene.name}>`);\n\n console.time(`Compile: Mount Instruction Planning for <${node.aseid.entity}>`);\n // -------------------------------------------------------\n // 1) index the scene and plan Mount Node instruction\n // -------------------------------------------------------\n const mountInstruction = new MountNodeInstruction(node, scene.path);\n\n if (!parentScene.isPlanned(mountInstruction)) {\n logger?.debug('red', scene.debugPrefix + `Planning Node Mount for Node <${node.type}> ASEID: <${node.aseid.entity}>`);\n\n parentScene.plan(mountInstruction);\n mountInstruction.init();\n }\n console.timeEnd(`Compile: Mount Instruction Planning for <${node.aseid.entity}>`);\n\n console.time(`Compile: Template Interpolation Processing for <${node.aseid.entity}>`);\n if (syntax.isCustomNode(node)) {\n const interpolations = syntax.extractInterpolations(node.template);\n for (let i = 0; i < interpolations.length; i++) {\n const interpolation = interpolations[i];\n console.time(`Compile: Interpolation [${i}] \"${interpolation.name}\" for <${node.aseid.entity}>`);\n\n const value = store.get(interpolation.name) || parentStore.get(interpolation.name);\n\n const instruction = new ReplaceInterpolationInstruction(node, interpolation, value);\n\n const stateInstruction = parentScene.getState(instruction);\n\n instruction.update({ value, prevValue: stateInstruction?.value });\n\n if (!parentScene.isPlanned(instruction)) {\n parentScene.plan(instruction);\n instruction.init();\n } else {\n parentScene.dropState(instruction);\n parentScene.unPlan(instruction);\n parentScene.plan(instruction);\n }\n\n console.timeEnd(`Compile: Interpolation [${i}] \"${interpolation.name}\" for <${node.aseid.entity}>`);\n }\n }\n console.timeEnd(`Compile: Template Interpolation Processing for <${node.aseid.entity}>`);\n\n console.time(`Compile: Attributes Processing for <${node.aseid.entity}>`);\n // 1) extract all props from the markup and set them in the props store\n const attributes = syntax.extractAttributes(node.markup);\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes[i];\n console.time(`Compile: Attribute [${i}] \"${attr.name}\" for <${node.aseid.entity}>`);\n\n const name = attr.name;\n const value = (syntax.isBindingProp(attr) ?\n store.get(attr.value) || parentStore.get(attr.value)\n : attr.value) || '';\n\n props.set(name, value);\n\n parentScene.plan(new AddAttributeInstruction(node, name, value));\n\n console.timeEnd(`Compile: Attribute [${i}] \"${attr.name}\" for <${node.aseid.entity}>`);\n }\n console.timeEnd(`Compile: Attributes Processing for <${node.aseid.entity}>`);\n\n console.time(`Compile: Directives Processing for <${node.aseid.entity}>`);\n // 3a) Process directives first before other operations\n const directives = syntax.extractDirectives(node.markup);\n for (let i = 0; i < directives.length; i++) {\n const directive = directives[i];\n console.time(`Compile: Directive [${i}] \"${directive.name}\" for <${node.aseid.entity}>`);\n\n let directiveValue: any;\n\n // Get the directive value from store or props\n if (directive.value) {\n directiveValue = store.get(directive.value) || parentStore.get(directive.value);\n }\n\n let instruction = new AddDirectiveInstruction(node, directive, directiveValue);\n\n const stateInstruction = parentScene.getState(instruction);\n\n if (!stateInstruction || stateInstruction.value !== directiveValue) {\n parentScene.unPlan(instruction);\n parentScene.plan(instruction);\n\n instruction.init();\n }\n\n console.timeEnd(`Compile: Directive [${i}] \"${directive.name}\" for <${node.aseid.entity}>`);\n }\n console.timeEnd(`Compile: Directives Processing for <${node.aseid.entity}>`);\n\n console.time(`Compile: Styles Processing for <${node.aseid.entity}>`);\n // -------------------------------------------------------\n // 2) replace all style interpolations in the styles\n // -------------------------------------------------------\n let styles = node.styles || '';\n const styleInterpolations = syntax.extractInterpolations(styles);\n for (let i = 0; i < styleInterpolations.length; i++) {\n const interpolation = styleInterpolations[i];\n console.time(`Compile: Style Interpolation [${i}] \"${interpolation.name}\" for <${node.aseid.entity}>`);\n\n const value = store.get(interpolation.name);\n styles = syntax.replaceInterpolation(styles, interpolation, value);\n\n console.timeEnd(`Compile: Style Interpolation [${i}] \"${interpolation.name}\" for <${node.aseid.entity}>`);\n }\n\n if (styles.trim()) {\n const instruction = new AddStyleInstruction(node, styles);\n\n if (!parentScene.isPlanned(instruction)) {\n parentScene.plan(instruction);\n instruction.init();\n }\n }\n console.timeEnd(`Compile: Styles Processing for <${node.aseid.entity}>`);\n\n console.time(`Compile: Listeners Processing for <${node.aseid.entity}>`);\n // -------------------------------------------------------\n // 3) go through all listeners and register them in the scene\n // -------------------------------------------------------\n const listeners = syntax.extractListeners(node.markup);\n for (let i = 0; i < listeners.length; i++) {\n const listener = listeners[i];\n console.time(`Compile: Listener [${i}] \"${listener.name}\" for <${node.aseid.entity}>`);\n\n // target emitter should be custom component that owns the listener\n let currentScene = scene;\n let targetNode = node\n\n while (!syntax.isCustomNode(targetNode) && currentScene.parent) {\n targetNode = currentScene.parent.scope.resolve<AreNode>(new A_Dependency(AreNode, {\n query: {\n aseid: currentScene.id\n }\n })) as AreNode\n\n currentScene = currentScene.parent;\n }\n\n const instruction = new AttachListenerInstruction(node, targetNode, listener);\n\n if (!parentScene.isPlanned(instruction)) {\n parentScene.plan(instruction);\n instruction.init();\n }\n\n console.timeEnd(`Compile: Listener [${i}] \"${listener.name}\" for <${node.aseid.entity}>`);\n }\n console.timeEnd(`Compile: Listeners Processing for <${node.aseid.entity}>`);\n }\n\n console.time(`Compile: Child Nodes Compilation for <${node.aseid.entity}>`);\n const sceneNodes = scene.nodes();\n for (let i = 0; i < sceneNodes.length; i++) {\n const sceneNode = sceneNodes[i];\n const childTimerLabel = `Compile: Child Node [${i}] <${sceneNode.aseid.entity}> for Parent <${node.aseid.entity}>`;\n console.time(childTimerLabel);\n\n sceneNode.compile();\n\n console.timeEnd(childTimerLabel);\n }\n console.timeEnd(`Compile: Child Nodes Compilation for <${node.aseid.entity}>`);\n\n } catch (error) {\n logger?.error(error);\n }\n\n console.timeEnd(compileTimerLabel);\n }\n /**\n * Handles after compile lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param scene \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onCompile,\n after: /.*/,\n scope: [AreNode]\n })\n afterCompile(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n const component = scope.resolveOnce<Are>(A_FormatterHelper.toPascalCase(node.aseid.entity));\n\n logger?.debug(scene.debugPrefix + `[Compile -> After] Component Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}}`);\n\n if (component)\n feature.chain(component, AreFeatures.onAfterCompile, node.scope);\n }\n\n\n // -----------------------------------------------------------------------------------------\n // ----------------------------Are-Node Event Section----------------------------------------\n // -----------------------------------------------------------------------------------------\n /**\n * Handles events triggered on the AreNode\n * \n * @param node \n * @param scope \n * @param event \n * @param scene \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onEvent,\n scope: [AreNode]\n })\n async event(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreEvent) event: AreEvent,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n\n logger?.debug(scene.debugPrefix + `Event Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}} for event: ${event.name}`);\n\n const component = scope.resolveOnce<Are>(A_FormatterHelper.toPascalCase(node.aseid.entity));\n\n if (component) {\n\n try {\n\n await feature.chain(component, event.name, scope);\n\n } catch (error) {\n logger?.error(error);\n }\n }\n }\n\n // -----------------------------------------------------------------------------------------\n // ----------------------------Are-Node Render Section----------------------------------------\n // -----------------------------------------------------------------------------------------\n /**\n * Handles before render lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param scene \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onBeforeRender,\n before: /.*/,\n scope: [AreNode]\n })\n beforeRender(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n const component = scope.resolveOnce<Are>(A_FormatterHelper.toPascalCase(node.aseid.entity));\n\n logger?.debug(scene.debugPrefix + `[Render -> Before] Component Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}}`);\n\n if (component)\n feature.chain(component, AreFeatures.onBeforeRender, node.scope);\n }\n /**\n * Renders the AreNode into the AreScene\n * \n * @param scope \n * @param node \n * @param scene \n * @param logger \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onRender,\n scope: [AreNode]\n })\n render(\n /**\n * Node to be mounted\n */\n @A_Inject(A_Caller) node: AreNode,\n /**\n * Template Parsing Syntax to be used\n */\n @A_Inject(AreSyntax) syntax: AreSyntax,\n /**\n * Node Content\n */\n @A_Dependency.Flat()\n @A_Inject(AreScene) scene: AreScene,\n /**\n * Scene where target node is registered\n * \n * [!] For Root Node it doesn't exists\n */\n @A_Dependency.Parent()\n @A_Inject(AreScene) parentScene?: AreScene,\n\n\n @A_Inject(A_Logger) logger?: A_Logger,\n ...args: any[]\n ) {\n const renderTimerLabel = `Render Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()}`;\n console.time(renderTimerLabel);\n\n if (syntax.isRootNode(node)) {\n logger?.debug('red', scene.debugPrefix + `Rendering Root Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()}`);\n\n console.time(`Render: Root Node Attachment for <${node.aseid.entity}>`);\n new AttachRootNodeInstruction(node).apply(node.scope);\n console.timeEnd(`Render: Root Node Attachment for <${node.aseid.entity}>`);\n } else {\n\n if (!parentScene) {\n throw new AreCompilerError(\n AreCompilerError.RenderError,\n `Parent Scene not found for Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()} during render process.`\n );\n }\n\n logger?.debug('red', scene.debugPrefix + `Rendering Child Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()}`, parentScene);\n\n console.time(`Render: Mount/Unmount Instructions Processing for <${node.aseid.entity}>`);\n // 1) should be mounted or unmounted\n const mountUnmountInstructions = parentScene.renderPlanFor(node, {\n filter: (inst) => inst instanceof MountNodeInstruction || inst instanceof UnmountNodeInstruction,\n });\n\n for (let i = 0; i < mountUnmountInstructions.length; i++) {\n const instruction = mountUnmountInstructions[i];\n const instructionTimerLabel = `Render: Mount/Unmount Instruction [${i}] \"${instruction.action}\" for <${node.aseid.entity}>`;\n console.time(instructionTimerLabel);\n\n if (parentScene.getState(instruction)) {\n logger?.debug('yellow', scene.debugPrefix + `Skipping Action '${instruction.action}' for Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()} already processed.`);\n console.timeEnd(instructionTimerLabel);\n continue;\n }\n\n logger?.debug('red', scene.debugPrefix + `Processing ${instruction.action} Instruction for Node <${node.aseid.entity}> `);\n\n instruction.apply();\n parentScene.setState(instruction);\n\n console.timeEnd(instructionTimerLabel);\n }\n console.timeEnd(`Render: Mount/Unmount Instructions Processing for <${node.aseid.entity}>`);\n\n // if There's no Mount Instruction planned, ite means that this node should not be rendered \n // and any other instructions related to it should be ignored\n if (!parentScene.isPlanned(new MountNodeInstruction(node, scene.path))) {\n logger?.debug('yellow', scene.debugPrefix + `No Mount Instruction found for Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()}. Skipping...`);\n console.timeEnd(renderTimerLabel);\n return;\n }\n\n console.time(`Render: Other Instructions Processing for <${node.aseid.entity}>`);\n // 2) process other instructions\n const otherInstructions = parentScene.renderPlanFor(node, {\n order: [\n AddStyleInstruction,\n AttachListenerInstruction,\n AddAttributeInstruction,\n ReplaceInterpolationInstruction\n ]\n });\n\n for (let i = 0; i < otherInstructions.length; i++) {\n const instruction = otherInstructions[i];\n const instructionTimerLabel = `Render: Instruction [${i}] \"${instruction.action}\" for <${node.aseid.entity}>`;\n console.time(instructionTimerLabel);\n\n if (parentScene.getState(instruction)) {\n logger?.debug('yellow', scene.debugPrefix + `Skipping Action '${instruction.action}' for Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()} already processed.`);\n console.timeEnd(instructionTimerLabel);\n continue;\n }\n\n try {\n console.time(`Render: Execution Context Creation for Instruction [${i}] <${node.aseid.entity}>`);\n const executionContext = new A_ExecutionContext('AreBrowserCompiler: Mount Node Instruction');\n executionContext.set('content', scene)\n const applyScope = new A_Scope({ fragments: [executionContext] }).inherit(node.scope);\n console.timeEnd(`Render: Execution Context Creation for Instruction [${i}] <${node.aseid.entity}>`);\n\n console.time(`Render: Instruction Apply for [${i}] \"${instruction.action}\" <${node.aseid.entity}>`);\n instruction.apply(applyScope);\n console.timeEnd(`Render: Instruction Apply for [${i}] \"${instruction.action}\" <${node.aseid.entity}>`);\n\n applyScope.destroy();\n parentScene.setState(instruction);\n\n } catch (error) {\n logger?.error(error);\n }\n\n console.timeEnd(instructionTimerLabel);\n }\n console.timeEnd(`Render: Other Instructions Processing for <${node.aseid.entity}>`);\n }\n\n console.time(`Render: Child Nodes Rendering for <${node.aseid.entity}>`);\n const childNodes = scene.nodes();\n for (let i = 0; i < childNodes.length; i++) {\n const child = childNodes[i];\n const childTimerLabel = `Render: Child Node [${i}] <${child.aseid.entity}> for Parent <${node.aseid.entity}>`;\n console.time(childTimerLabel);\n\n console.log(scene.debugPrefix + `Rendering Child Node <${child.aseid.entity}> ASEID: ${child.aseid.toString()}`);\n child.render();\n\n console.timeEnd(childTimerLabel);\n }\n console.timeEnd(`Render: Child Nodes Rendering for <${node.aseid.entity}>`);\n\n console.timeEnd(renderTimerLabel);\n }\n /**\n * Handles after render lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param scene \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onAfterRender,\n after: /.*/,\n scope: [AreNode]\n })\n afterRender(\n /**\n * Node to be rendered\n */\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n const component = this.component(node);\n\n logger?.debug(scene.debugPrefix + `[Render -> After] Component Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}}`);\n\n\n if (component)\n feature.chain(component, AreFeatures.onAfterRender, node.scope);\n\n }\n\n // -----------------------------------------------------------------------------------------\n // ----------------------------Are-Node Update Section----------------------------------------\n // -----------------------------------------------------------------------------------------\n /**\n * Handles before update lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param scene \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onUpdate,\n before: /.*/,\n scope: [AreNode]\n })\n beforeUpdate(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n\n logger?.debug(scene.debugPrefix + `[Update -> Before] Component Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}}`);\n\n const component = this.component(node);\n\n if (component)\n feature.chain(component, AreFeatures.onBeforeUpdate, node.scope);\n }\n /**\n * Updates the AreNode in the AreScene\n * \n * @param node \n * @param scene \n * @param args \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onUpdate,\n scope: [AreNode]\n })\n update(\n /**\n * Node to be updated\n */\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(AreScene) scene: AreScene,\n\n ...args: any[]\n ) {\n console.time(scene.debugPrefix + `Updating Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()}`);\n\n console.time(`Node Compile Time for <${node.aseid.entity}> ASEID: ${node.aseid.toString()}>`);\n node.compile();\n console.timeEnd(`Node Compile Time for <${node.aseid.entity}> ASEID: ${node.aseid.toString()}>`);\n\n console.time(`Node Render Time for <${node.aseid.entity}> ASEID: ${node.aseid.toString()}>`);\n node.render();\n console.timeEnd(`Node Render Time for <${node.aseid.entity}> ASEID: ${node.aseid.toString()}>`);\n\n console.timeEnd(scene.debugPrefix + `Updating Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()}`);\n\n }\n /**\n * Handles after update lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param scene \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onUpdate,\n after: /.*/,\n scope: [AreNode]\n })\n afterUpdate(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n\n logger?.debug(scene.debugPrefix + `[Update -> After] Component Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}}`);\n\n const component = this.component(node);\n\n if (component)\n feature.chain(component, AreFeatures.onAfterUpdate, node.scope);\n }\n\n // -----------------------------------------------------------------------------------------\n // ----------------------------Are-Node Unmount Section----------------------------------------\n // -----------------------------------------------------------------------------------------\n /**\n * Handles before unmount lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param scene \n * @param feature \n * @param args \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onUnmount,\n before: /.*/,\n scope: [AreNode]\n })\n beforeUnmount(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n\n logger?.debug(scene.debugPrefix + `[Unmount -> Before] Component Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}}`);\n\n const component = this.component(node);\n\n if (component)\n feature.chain(component, AreFeatures.onBeforeUnmount, node.scope);\n }\n /**\n * Unmounts the AreNode from the AreScene\n * \n * @param node \n * @param syntax \n * @param scene \n * @param parentScene \n * @param logger \n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onUnmount,\n scope: [AreNode]\n })\n unmount(\n /**\n * Node to be unmounted\n */\n @A_Inject(A_Caller) node: AreNode,\n /**\n * Template Parsing Syntax to be used\n */\n @A_Inject(AreSyntax) syntax: AreSyntax,\n /**\n * Node Content\n */\n @A_Dependency.Flat()\n @A_Inject(AreScene) scene: AreScene,\n /**\n * Scene where target node is registered\n * \n * [!] For Root Node it doesn't exists\n */\n @A_Dependency.Parent()\n @A_Inject(AreScene) parentScene?: AreScene,\n\n @A_Inject(A_Logger) logger?: A_Logger,\n ) {\n try {\n\n\n logger?.debug('red', scene.debugPrefix + `Unmounting Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()}`);\n\n if (!syntax.isRootNode(node)) {\n if (!parentScene) {\n throw new AreCompilerError(\n AreCompilerError.RenderError,\n `Parent Scene not found for Node <${node.aseid.entity}> ASEID: ${node.aseid.toString()} during unmount process.`\n );\n }\n\n for (const instruction of parentScene.renderPlanFor(node)) {\n if (instruction.node === node) {\n instruction.revert(node.scope);\n parentScene.dropState(instruction);\n parentScene.unPlan(instruction);\n }\n }\n }\n\n for (const child of scene.nodes()) {\n child.unmount();\n }\n\n // await node.reset();\n } catch (error) {\n logger?.error(error);\n }\n }\n /**\n * Handles after unmount lifecycle of the AreNode\n * \n * @param node \n * @param scope \n * @param scene \n * @param feature \n * @param args\n */\n @A_Feature.Extend({\n name: AreNodeFeatures.onUnmount,\n after: /.*/,\n scope: [AreNode]\n })\n afterUnmount(\n @A_Inject(A_Caller) node: AreNode,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(AreScene) scene: AreScene,\n @A_Inject(A_Feature) feature: A_Feature,\n ...args: any[]\n ) {\n const logger = scope.resolve<A_Logger>(A_Logger);\n\n logger?.debug(scene.debugPrefix + `[Unmount -> After] Component Trigger for <${node.aseid.entity}> with aseid :{${node.aseid.toString()}}`);\n\n const component = this.component(node);\n\n if (component)\n feature.chain(component, AreFeatures.onAfterUnmount, node.scope);\n }\n\n\n @A_Feature.Extend({\n name: A_SignalBusFeatures.onNext,\n })\n handleSignalVector(\n @A_Inject(A_SignalVector) vector: A_SignalVector,\n @A_Inject(AreContext) context: AreContext,\n @A_Inject(A_SignalState) state: A_SignalState,\n @A_Inject(A_Scope) scope: A_Scope,\n @A_Inject(A_Logger) logger?: A_Logger,\n ) {\n logger?.info(`Handling Signal Vector with ${context.roots.length} root nodes.`);\n\n try {\n for (const root of context.roots) {\n\n const callScope = new A_Scope({\n fragments: [new AreEvent(\n AreFeatures.onSignal, {\n event: 'SignalVectorNext',\n data: { vector }\n })]\n })\n .import(scope, root.scope);\n\n console.log('Emitting signal for root node:', vector);\n\n root.emit(callScope);\n\n callScope.destroy();\n }\n } catch (error) {\n logger?.error(error);\n }\n\n }\n\n}"]}
|