@adaas/are 0.0.2 → 0.0.3
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 +25 -32
- package/.conf/tsconfig.browser.json +24 -32
- package/.conf/tsconfig.node.json +24 -33
- package/CHANGELOG.md +39 -0
- package/README.md +214 -2
- package/dist/browser/index.d.mts +1375 -727
- package/dist/browser/index.mjs +2812 -2170
- package/dist/browser/index.mjs.map +1 -1
- package/dist/node/Are.context-9Ija_fdC.d.ts +846 -0
- package/dist/node/Are.context-D7w32H1G.d.mts +846 -0
- package/dist/node/index.d.mts +32 -31
- package/dist/node/index.d.ts +32 -31
- package/dist/node/index.js +371 -42
- package/dist/node/index.mjs +61 -14
- package/dist/node/lib/AreAttribute/AreAttribute.constants.d.mts +24 -0
- package/dist/node/lib/AreAttribute/AreAttribute.constants.d.ts +24 -0
- package/dist/node/lib/AreAttribute/AreAttribute.constants.js +28 -0
- package/dist/node/lib/AreAttribute/AreAttribute.constants.js.map +1 -0
- package/dist/node/lib/AreAttribute/AreAttribute.constants.mjs +28 -0
- package/dist/node/lib/AreAttribute/AreAttribute.constants.mjs.map +1 -0
- package/dist/node/lib/AreAttribute/AreAttribute.entity.d.mts +14 -0
- package/dist/node/lib/AreAttribute/AreAttribute.entity.d.ts +14 -0
- package/dist/node/lib/AreAttribute/AreAttribute.entity.js +113 -0
- package/dist/node/lib/AreAttribute/AreAttribute.entity.js.map +1 -0
- package/dist/node/lib/AreAttribute/AreAttribute.entity.mjs +104 -0
- package/dist/node/lib/AreAttribute/AreAttribute.entity.mjs.map +1 -0
- package/dist/node/lib/AreAttribute/AreAttribute.types.d.mts +47 -0
- package/dist/node/lib/AreAttribute/AreAttribute.types.d.ts +47 -0
- package/dist/node/lib/AreAttribute/AreAttribute.types.js +4 -0
- package/dist/node/lib/AreAttribute/AreAttribute.types.js.map +1 -0
- package/dist/node/lib/AreAttribute/AreAttribute.types.mjs +3 -0
- package/dist/node/lib/AreAttribute/AreAttribute.types.mjs.map +1 -0
- package/dist/node/lib/AreCompiler/AreCompiler.component.d.mts +19 -224
- package/dist/node/lib/AreCompiler/AreCompiler.component.d.ts +19 -224
- package/dist/node/lib/AreCompiler/AreCompiler.component.js +31 -607
- package/dist/node/lib/AreCompiler/AreCompiler.component.js.map +1 -1
- package/dist/node/lib/AreCompiler/AreCompiler.component.mjs +29 -605
- package/dist/node/lib/AreCompiler/AreCompiler.component.mjs.map +1 -1
- package/dist/node/lib/AreComponent/Are.component.d.mts +59 -7
- package/dist/node/lib/AreComponent/Are.component.d.ts +59 -7
- package/dist/node/lib/AreComponent/Are.component.js +84 -25
- package/dist/node/lib/AreComponent/Are.component.js.map +1 -1
- package/dist/node/lib/AreComponent/Are.component.mjs +85 -26
- package/dist/node/lib/AreComponent/Are.component.mjs.map +1 -1
- package/dist/node/lib/AreComponent/Are.constants.d.mts +46 -30
- package/dist/node/lib/AreComponent/Are.constants.d.ts +46 -30
- package/dist/node/lib/AreComponent/Are.constants.js +58 -21
- package/dist/node/lib/AreComponent/Are.constants.js.map +1 -1
- package/dist/node/lib/AreComponent/Are.constants.mjs +58 -21
- package/dist/node/lib/AreComponent/Are.constants.mjs.map +1 -1
- package/dist/node/lib/AreComponent/Are.context.d.mts +13 -21
- package/dist/node/lib/AreComponent/Are.context.d.ts +13 -21
- package/dist/node/lib/AreComponent/Are.context.js +91 -2
- package/dist/node/lib/AreComponent/Are.context.js.map +1 -1
- package/dist/node/lib/AreComponent/Are.context.mjs +92 -3
- package/dist/node/lib/AreComponent/Are.context.mjs.map +1 -1
- package/dist/node/lib/AreComponent/Are.meta.d.mts +14 -0
- package/dist/node/lib/AreComponent/Are.meta.d.ts +14 -0
- package/dist/node/lib/AreComponent/Are.meta.js +10 -0
- package/dist/node/lib/AreComponent/Are.meta.js.map +1 -0
- package/dist/node/lib/AreComponent/Are.meta.mjs +9 -0
- package/dist/node/lib/AreComponent/Are.meta.mjs.map +1 -0
- package/dist/node/lib/AreComponent/Are.types.d.mts +30 -1
- package/dist/node/lib/AreComponent/Are.types.d.ts +30 -1
- package/dist/node/lib/AreEngine/AreEngine.component.d.mts +77 -0
- package/dist/node/lib/AreEngine/AreEngine.component.d.ts +77 -0
- package/dist/node/lib/AreEngine/AreEngine.component.js +259 -0
- package/dist/node/lib/AreEngine/AreEngine.component.js.map +1 -0
- package/dist/node/lib/AreEngine/AreEngine.component.mjs +249 -0
- package/dist/node/lib/AreEngine/AreEngine.component.mjs.map +1 -0
- package/dist/node/lib/AreEngine/AreEngine.constants.d.mts +7 -0
- package/dist/node/lib/AreEngine/AreEngine.constants.d.ts +7 -0
- package/dist/node/lib/AreEngine/AreEngine.constants.js +11 -0
- package/dist/node/lib/AreEngine/AreEngine.constants.js.map +1 -0
- package/dist/node/lib/AreEngine/AreEngine.constants.mjs +11 -0
- package/dist/node/lib/AreEngine/AreEngine.constants.mjs.map +1 -0
- package/dist/node/lib/AreEngine/AreEngine.error.d.mts +7 -0
- package/dist/node/lib/AreEngine/AreEngine.error.d.ts +7 -0
- package/dist/node/lib/AreEngine/AreEngine.error.js +11 -0
- package/dist/node/lib/AreEngine/AreEngine.error.js.map +1 -0
- package/dist/node/lib/AreEngine/AreEngine.error.mjs +10 -0
- package/dist/node/lib/AreEngine/AreEngine.error.mjs.map +1 -0
- package/dist/node/lib/AreEngine/AreEngine.types.d.mts +40 -0
- package/dist/node/lib/AreEngine/AreEngine.types.d.ts +40 -0
- package/dist/node/lib/AreEngine/AreEngine.types.js +4 -0
- package/dist/node/lib/AreEngine/AreEngine.types.js.map +1 -0
- package/dist/node/lib/AreEngine/AreEngine.types.mjs +3 -0
- package/dist/node/lib/AreEngine/AreEngine.types.mjs.map +1 -0
- package/dist/node/lib/AreEvent/AreEvent.context.d.mts +6 -8
- package/dist/node/lib/AreEvent/AreEvent.context.d.ts +6 -8
- package/dist/node/lib/AreEvent/AreEvent.context.js +2 -12
- package/dist/node/lib/AreEvent/AreEvent.context.js.map +1 -1
- package/dist/node/lib/AreEvent/AreEvent.context.mjs +2 -12
- package/dist/node/lib/AreEvent/AreEvent.context.mjs.map +1 -1
- package/dist/node/lib/AreInstruction/AreInstruction.constants.d.mts +21 -0
- package/dist/node/lib/AreInstruction/AreInstruction.constants.d.ts +21 -0
- package/dist/node/lib/AreInstruction/AreInstruction.constants.js +26 -0
- package/dist/node/lib/AreInstruction/AreInstruction.constants.js.map +1 -0
- package/dist/node/lib/AreInstruction/AreInstruction.constants.mjs +25 -0
- package/dist/node/lib/AreInstruction/AreInstruction.constants.mjs.map +1 -0
- package/dist/node/lib/AreInstruction/AreInstruction.entity.d.mts +14 -0
- package/dist/node/lib/AreInstruction/AreInstruction.entity.d.ts +14 -0
- package/dist/node/lib/AreInstruction/AreInstruction.entity.js +152 -0
- package/dist/node/lib/AreInstruction/AreInstruction.entity.js.map +1 -0
- package/dist/node/lib/AreInstruction/AreInstruction.entity.mjs +145 -0
- package/dist/node/lib/AreInstruction/AreInstruction.entity.mjs.map +1 -0
- package/dist/node/lib/AreInstruction/AreInstruction.error.d.mts +6 -0
- package/dist/node/lib/AreInstruction/AreInstruction.error.d.ts +6 -0
- package/dist/node/lib/AreInstruction/AreInstruction.error.js +10 -0
- package/dist/node/lib/AreInstruction/AreInstruction.error.js.map +1 -0
- package/dist/node/lib/AreInstruction/AreInstruction.error.mjs +9 -0
- package/dist/node/lib/AreInstruction/AreInstruction.error.mjs.map +1 -0
- package/dist/node/lib/AreInstruction/AreInstruction.types.d.mts +14 -0
- package/dist/node/lib/AreInstruction/AreInstruction.types.d.ts +14 -0
- package/dist/node/lib/AreInstruction/AreInstruction.types.js +4 -0
- package/dist/node/lib/AreInstruction/AreInstruction.types.js.map +1 -0
- package/dist/node/lib/AreInstruction/AreInstruction.types.mjs +3 -0
- package/dist/node/lib/AreInstruction/AreInstruction.types.mjs.map +1 -0
- package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.d.mts +14 -0
- package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.d.ts +14 -0
- package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.js +37 -0
- package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.js.map +1 -0
- package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.mjs +30 -0
- package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.mjs.map +1 -0
- package/dist/node/lib/AreInstruction/types/AreMutation.instruction.d.mts +14 -0
- package/dist/node/lib/AreInstruction/types/AreMutation.instruction.d.ts +14 -0
- package/dist/node/lib/AreInstruction/types/AreMutation.instruction.js +52 -0
- package/dist/node/lib/AreInstruction/types/AreMutation.instruction.js.map +1 -0
- package/dist/node/lib/AreInstruction/types/AreMutation.instruction.mjs +45 -0
- package/dist/node/lib/AreInstruction/types/AreMutation.instruction.mjs.map +1 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.component.d.mts +49 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.component.d.ts +49 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.component.js +164 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.component.js.map +1 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.component.mjs +154 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.component.mjs.map +1 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.constants.js +4 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.constants.js.map +1 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.constants.mjs +3 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.constants.mjs.map +1 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.error.d.mts +6 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.error.d.ts +6 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.error.js +10 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.error.js.map +1 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.error.mjs +9 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.error.mjs.map +1 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.types.js +4 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.types.js.map +1 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.types.mjs +3 -0
- package/dist/node/lib/AreInterpreter/AreInterpreter.types.mjs.map +1 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.component.d.mts +188 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.component.d.ts +188 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.component.js +349 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.component.js.map +1 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.component.mjs +339 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.component.mjs.map +1 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.constants.d.mts +2 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.constants.d.ts +2 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.constants.js +4 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.constants.js.map +1 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.constants.mjs +3 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.constants.mjs.map +1 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.error.d.mts +7 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.error.d.ts +7 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.error.js +11 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.error.js.map +1 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.error.mjs +10 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.error.mjs.map +1 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.types.d.mts +2 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.types.d.ts +2 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.types.js +4 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.types.js.map +1 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.types.mjs +3 -0
- package/dist/node/lib/AreLifecycle/AreLifecycle.types.mjs.map +1 -0
- package/dist/node/lib/AreLoader/AreLoader.component.d.mts +31 -0
- package/dist/node/lib/AreLoader/AreLoader.component.d.ts +31 -0
- package/dist/node/lib/AreLoader/AreLoader.component.js +64 -0
- package/dist/node/lib/AreLoader/AreLoader.component.js.map +1 -0
- package/dist/node/lib/AreLoader/AreLoader.component.mjs +54 -0
- package/dist/node/lib/AreLoader/AreLoader.component.mjs.map +1 -0
- package/dist/node/lib/AreLoader/AreLoader.constants.d.mts +2 -0
- package/dist/node/lib/AreLoader/AreLoader.constants.d.ts +2 -0
- package/dist/node/lib/AreLoader/AreLoader.constants.js +4 -0
- package/dist/node/lib/AreLoader/AreLoader.constants.js.map +1 -0
- package/dist/node/lib/AreLoader/AreLoader.constants.mjs +3 -0
- package/dist/node/lib/AreLoader/AreLoader.constants.mjs.map +1 -0
- package/dist/node/lib/AreLoader/AreLoader.error.d.mts +8 -0
- package/dist/node/lib/AreLoader/AreLoader.error.d.ts +8 -0
- package/dist/node/lib/AreLoader/AreLoader.error.js +12 -0
- package/dist/node/lib/AreLoader/AreLoader.error.js.map +1 -0
- package/dist/node/lib/AreLoader/AreLoader.error.mjs +11 -0
- package/dist/node/lib/AreLoader/AreLoader.error.mjs.map +1 -0
- package/dist/node/lib/AreLoader/AreLoader.types.d.mts +2 -0
- package/dist/node/lib/AreLoader/AreLoader.types.d.ts +2 -0
- package/dist/node/lib/AreLoader/AreLoader.types.js +4 -0
- package/dist/node/lib/AreLoader/AreLoader.types.js.map +1 -0
- package/dist/node/lib/AreLoader/AreLoader.types.mjs +3 -0
- package/dist/node/lib/AreLoader/AreLoader.types.mjs.map +1 -0
- package/dist/node/lib/AreNode/AreNode.constants.d.mts +87 -17
- package/dist/node/lib/AreNode/AreNode.constants.d.ts +87 -17
- package/dist/node/lib/AreNode/AreNode.constants.js +111 -11
- package/dist/node/lib/AreNode/AreNode.constants.js.map +1 -1
- package/dist/node/lib/AreNode/AreNode.constants.mjs +111 -12
- package/dist/node/lib/AreNode/AreNode.constants.mjs.map +1 -1
- package/dist/node/lib/AreNode/AreNode.entity.d.mts +12 -6
- package/dist/node/lib/AreNode/AreNode.entity.d.ts +12 -6
- package/dist/node/lib/AreNode/AreNode.entity.js +281 -49
- package/dist/node/lib/AreNode/AreNode.entity.js.map +1 -1
- package/dist/node/lib/AreNode/AreNode.entity.mjs +282 -50
- package/dist/node/lib/AreNode/AreNode.entity.mjs.map +1 -1
- package/dist/node/lib/AreNode/AreNode.types.d.mts +14 -13
- package/dist/node/lib/AreNode/AreNode.types.d.ts +14 -13
- package/dist/node/lib/AreScene/AreScene.constants.d.mts +7 -0
- package/dist/node/lib/AreScene/AreScene.constants.d.ts +7 -0
- package/dist/node/lib/AreScene/AreScene.constants.js +11 -0
- package/dist/node/lib/AreScene/AreScene.constants.js.map +1 -0
- package/dist/node/lib/AreScene/AreScene.constants.mjs +11 -0
- package/dist/node/lib/AreScene/AreScene.constants.mjs.map +1 -0
- package/dist/node/lib/AreScene/AreScene.context.d.mts +12 -6
- package/dist/node/lib/AreScene/AreScene.context.d.ts +12 -6
- package/dist/node/lib/AreScene/AreScene.context.js +284 -186
- package/dist/node/lib/AreScene/AreScene.context.js.map +1 -1
- package/dist/node/lib/AreScene/AreScene.context.mjs +277 -185
- package/dist/node/lib/AreScene/AreScene.context.mjs.map +1 -1
- package/dist/node/lib/AreScene/AreScene.error.d.mts +4 -0
- package/dist/node/lib/AreScene/AreScene.error.d.ts +4 -0
- package/dist/node/lib/AreScene/AreScene.error.js +4 -0
- package/dist/node/lib/AreScene/AreScene.error.js.map +1 -1
- package/dist/node/lib/AreScene/AreScene.error.mjs +4 -0
- package/dist/node/lib/AreScene/AreScene.error.mjs.map +1 -1
- package/dist/node/lib/AreScene/AreScene.types.d.mts +14 -9
- package/dist/node/lib/AreScene/AreScene.types.d.ts +14 -9
- package/dist/node/lib/AreSignals/AreSignal.entity.d.mts +6 -0
- package/dist/node/lib/AreSignals/AreSignal.entity.d.ts +6 -0
- package/dist/node/lib/AreSignals/AreSignal.entity.js +24 -0
- package/dist/node/lib/AreSignals/AreSignal.entity.js.map +1 -0
- package/dist/node/lib/AreSignals/AreSignal.entity.mjs +17 -0
- package/dist/node/lib/AreSignals/AreSignal.entity.mjs.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.component.d.mts +35 -0
- package/dist/node/lib/AreSignals/AreSignals.component.d.ts +35 -0
- package/dist/node/lib/AreSignals/AreSignals.component.js +90 -0
- package/dist/node/lib/AreSignals/AreSignals.component.js.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.component.mjs +80 -0
- package/dist/node/lib/AreSignals/AreSignals.component.mjs.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.constants.d.mts +2 -0
- package/dist/node/lib/AreSignals/AreSignals.constants.d.ts +2 -0
- package/dist/node/lib/AreSignals/AreSignals.constants.js +4 -0
- package/dist/node/lib/AreSignals/AreSignals.constants.js.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.constants.mjs +3 -0
- package/dist/node/lib/AreSignals/AreSignals.constants.mjs.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.context.d.mts +86 -0
- package/dist/node/lib/AreSignals/AreSignals.context.d.ts +86 -0
- package/dist/node/lib/AreSignals/AreSignals.context.js +153 -0
- package/dist/node/lib/AreSignals/AreSignals.context.js.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.context.mjs +146 -0
- package/dist/node/lib/AreSignals/AreSignals.context.mjs.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.meta.d.mts +15 -0
- package/dist/node/lib/AreSignals/AreSignals.meta.d.ts +15 -0
- package/dist/node/lib/AreSignals/AreSignals.meta.js +48 -0
- package/dist/node/lib/AreSignals/AreSignals.meta.js.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.meta.mjs +47 -0
- package/dist/node/lib/AreSignals/AreSignals.meta.mjs.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.types.d.mts +18 -0
- package/dist/node/lib/AreSignals/AreSignals.types.d.ts +18 -0
- package/dist/node/lib/AreSignals/AreSignals.types.js +4 -0
- package/dist/node/lib/AreSignals/AreSignals.types.js.map +1 -0
- package/dist/node/lib/AreSignals/AreSignals.types.mjs +3 -0
- package/dist/node/lib/AreSignals/AreSignals.types.mjs.map +1 -0
- package/dist/node/lib/AreSignals/entities/AreInit.signal.d.mts +8 -0
- package/dist/node/lib/AreSignals/entities/AreInit.signal.d.ts +8 -0
- package/dist/node/lib/AreSignals/entities/AreInit.signal.js +13 -0
- package/dist/node/lib/AreSignals/entities/AreInit.signal.js.map +1 -0
- package/dist/node/lib/AreSignals/entities/AreInit.signal.mjs +12 -0
- package/dist/node/lib/AreSignals/entities/AreInit.signal.mjs.map +1 -0
- package/dist/node/lib/AreSignals/entities/AreRoute.signal.d.mts +12 -0
- package/dist/node/lib/AreSignals/entities/AreRoute.signal.d.ts +12 -0
- package/dist/node/lib/AreSignals/entities/AreRoute.signal.js +25 -0
- package/dist/node/lib/AreSignals/entities/AreRoute.signal.js.map +1 -0
- package/dist/node/lib/AreSignals/entities/AreRoute.signal.mjs +24 -0
- package/dist/node/lib/AreSignals/entities/AreRoute.signal.mjs.map +1 -0
- package/dist/node/lib/AreStore/AreStore.constants.d.mts +5 -0
- package/dist/node/lib/AreStore/AreStore.constants.d.ts +5 -0
- package/dist/node/lib/AreStore/AreStore.constants.js +9 -0
- package/dist/node/lib/AreStore/AreStore.constants.js.map +1 -0
- package/dist/node/lib/AreStore/AreStore.constants.mjs +9 -0
- package/dist/node/lib/AreStore/AreStore.constants.mjs.map +1 -0
- package/dist/node/lib/AreStore/AreStore.context.d.mts +14 -10
- package/dist/node/lib/AreStore/AreStore.context.d.ts +14 -10
- package/dist/node/lib/AreStore/AreStore.context.js +162 -6
- package/dist/node/lib/AreStore/AreStore.context.js.map +1 -1
- package/dist/node/lib/AreStore/AreStore.context.mjs +162 -6
- package/dist/node/lib/AreStore/AreStore.context.mjs.map +1 -1
- package/dist/node/lib/AreStore/AreStore.types.d.mts +9 -0
- package/dist/node/lib/AreStore/AreStore.types.d.ts +9 -0
- package/dist/node/lib/AreStore/AreStore.types.js +4 -0
- package/dist/node/lib/AreStore/AreStore.types.js.map +1 -0
- package/dist/node/lib/AreStore/AreStore.types.mjs +3 -0
- package/dist/node/lib/AreStore/AreStore.types.mjs.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.constants.d.mts +2 -0
- package/dist/node/lib/AreSyntax/AreSyntax.constants.d.ts +2 -0
- package/dist/node/lib/AreSyntax/AreSyntax.constants.js +4 -0
- package/dist/node/lib/AreSyntax/AreSyntax.constants.js.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.constants.mjs +3 -0
- package/dist/node/lib/AreSyntax/AreSyntax.constants.mjs.map +1 -0
- package/dist/node/lib/AreSyntax/AreSyntax.context.d.mts +99 -51
- package/dist/node/lib/AreSyntax/AreSyntax.context.d.ts +99 -51
- package/dist/node/lib/AreSyntax/AreSyntax.context.js +305 -73
- package/dist/node/lib/AreSyntax/AreSyntax.context.js.map +1 -1
- package/dist/node/lib/AreSyntax/AreSyntax.context.mjs +306 -74
- package/dist/node/lib/AreSyntax/AreSyntax.context.mjs.map +1 -1
- package/dist/node/lib/AreSyntax/AreSyntax.types.d.mts +14 -132
- package/dist/node/lib/AreSyntax/AreSyntax.types.d.ts +14 -132
- package/dist/node/lib/AreSyntax/AreSyntax.types.js.map +1 -1
- package/dist/node/lib/AreSyntax/AreSyntax.types.mjs.map +1 -1
- package/dist/node/lib/AreTokenizer/AreTokenizer.component.d.mts +43 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.component.d.ts +43 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.component.js +238 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.component.js.map +1 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.component.mjs +228 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.component.mjs.map +1 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.error.d.mts +6 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.error.d.ts +6 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.error.js +10 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.error.js.map +1 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.error.mjs +9 -0
- package/dist/node/lib/AreTokenizer/AreTokenizer.error.mjs.map +1 -0
- package/dist/node/lib/AreTransformer/AreTransformer.component.d.mts +20 -0
- package/dist/node/lib/AreTransformer/AreTransformer.component.d.ts +20 -0
- package/dist/node/lib/AreTransformer/AreTransformer.component.js +48 -0
- package/dist/node/lib/AreTransformer/AreTransformer.component.js.map +1 -0
- package/dist/node/lib/AreTransformer/AreTransformer.component.mjs +38 -0
- package/dist/node/lib/AreTransformer/AreTransformer.component.mjs.map +1 -0
- package/dist/node/lib/AreTransformer/AreTransformer.constants.d.mts +2 -0
- package/dist/node/lib/AreTransformer/AreTransformer.constants.d.ts +2 -0
- package/dist/node/lib/AreTransformer/AreTransformer.constants.js +4 -0
- package/dist/node/lib/AreTransformer/AreTransformer.constants.js.map +1 -0
- package/dist/node/lib/AreTransformer/AreTransformer.constants.mjs +3 -0
- package/dist/node/lib/AreTransformer/AreTransformer.constants.mjs.map +1 -0
- package/dist/node/lib/AreTransformer/AreTransformer.types.d.mts +2 -0
- package/dist/node/lib/AreTransformer/AreTransformer.types.d.ts +2 -0
- package/dist/node/lib/AreTransformer/AreTransformer.types.js +4 -0
- package/dist/node/lib/AreTransformer/AreTransformer.types.js.map +1 -0
- package/dist/node/lib/AreTransformer/AreTransformer.types.mjs +3 -0
- package/dist/node/lib/AreTransformer/AreTransformer.types.mjs.map +1 -0
- package/dist/node/lib/AreWatcher/AreWatcher.component.d.mts +18 -0
- package/dist/node/lib/AreWatcher/AreWatcher.component.d.ts +18 -0
- package/dist/node/lib/AreWatcher/AreWatcher.component.js +78 -0
- package/dist/node/lib/AreWatcher/AreWatcher.component.js.map +1 -0
- package/dist/node/lib/AreWatcher/AreWatcher.component.mjs +71 -0
- package/dist/node/lib/AreWatcher/AreWatcher.component.mjs.map +1 -0
- package/dist/node/lib/AreWatcher/AreWatcher.constants.d.mts +2 -0
- package/dist/node/lib/AreWatcher/AreWatcher.constants.d.ts +2 -0
- package/dist/node/lib/AreWatcher/AreWatcher.constants.js +4 -0
- package/dist/node/lib/AreWatcher/AreWatcher.constants.js.map +1 -0
- package/dist/node/lib/AreWatcher/AreWatcher.constants.mjs +3 -0
- package/dist/node/lib/AreWatcher/AreWatcher.constants.mjs.map +1 -0
- package/dist/node/lib/AreWatcher/AreWatcher.context.d.mts +2 -0
- package/dist/node/lib/AreWatcher/AreWatcher.context.d.ts +2 -0
- package/dist/node/lib/AreWatcher/AreWatcher.context.js +4 -0
- package/dist/node/lib/AreWatcher/AreWatcher.context.js.map +1 -0
- package/dist/node/lib/AreWatcher/AreWatcher.context.mjs +3 -0
- package/dist/node/lib/AreWatcher/AreWatcher.context.mjs.map +1 -0
- package/dist/node/lib/AreWatcher/AreWatcher.types.d.mts +2 -0
- package/dist/node/lib/AreWatcher/AreWatcher.types.d.ts +2 -0
- package/dist/node/lib/AreWatcher/AreWatcher.types.js +4 -0
- package/dist/node/lib/AreWatcher/AreWatcher.types.js.map +1 -0
- package/dist/node/lib/AreWatcher/AreWatcher.types.mjs +3 -0
- package/dist/node/lib/AreWatcher/AreWatcher.types.mjs.map +1 -0
- package/jest.config.ts +30 -19
- package/package.json +10 -8
- package/src/index.ts +92 -15
- package/src/lib/AreAttribute/AreAttribute.constants.ts +22 -0
- package/src/lib/AreAttribute/AreAttribute.entity.ts +136 -0
- package/src/lib/AreAttribute/AreAttribute.types.ts +51 -0
- package/src/lib/AreCompiler/AreCompiler.component.ts +48 -980
- package/src/lib/AreComponent/Are.component.ts +102 -50
- package/src/lib/AreComponent/Are.constants.ts +59 -39
- package/src/lib/AreComponent/Are.context.ts +120 -8
- package/src/lib/AreComponent/Are.meta.ts +16 -0
- package/src/lib/AreComponent/Are.types.ts +30 -0
- package/src/lib/AreEngine/AreEngine.component.ts +317 -0
- package/src/lib/AreEngine/AreEngine.constants.ts +7 -0
- package/src/lib/AreEngine/AreEngine.error.ts +9 -0
- package/src/lib/AreEngine/AreEngine.types.ts +24 -0
- package/src/lib/AreEvent/AreEvent.context.ts +3 -27
- package/src/lib/AreInstruction/AreInstruction.constants.ts +23 -0
- package/src/lib/AreInstruction/AreInstruction.entity.ts +207 -0
- package/src/lib/AreInstruction/AreInstruction.error.ts +7 -0
- package/src/lib/AreInstruction/AreInstruction.types.ts +63 -0
- package/src/lib/AreInstruction/types/AreDeclaration.instruction.ts +77 -0
- package/src/lib/AreInstruction/types/AreMutation.instruction.ts +87 -0
- package/src/lib/AreInterpreter/AreInterpreter.component.ts +208 -0
- package/src/lib/AreInterpreter/AreInterpreter.error.ts +6 -0
- package/src/lib/AreLifecycle/AreLifecycle.component.ts +638 -0
- package/src/lib/AreLifecycle/AreLifecycle.constants.ts +0 -0
- package/src/lib/AreLifecycle/AreLifecycle.error.ts +9 -0
- package/src/lib/AreLifecycle/AreLifecycle.types.ts +0 -0
- package/src/lib/AreLoader/AreLoader.component.ts +89 -0
- package/src/lib/AreLoader/AreLoader.constants.ts +0 -0
- package/src/lib/AreLoader/AreLoader.error.ts +10 -0
- package/src/lib/AreLoader/AreLoader.types.ts +0 -0
- package/src/lib/AreNode/AreNode.constants.ts +111 -16
- package/src/lib/AreNode/AreNode.entity.ts +380 -91
- package/src/lib/AreNode/AreNode.types.ts +7 -11
- package/src/lib/AreScene/AreScene.constants.ts +7 -0
- package/src/lib/AreScene/AreScene.context.ts +305 -284
- package/src/lib/AreScene/AreScene.error.ts +9 -1
- package/src/lib/AreScene/AreScene.types.ts +21 -3
- package/src/lib/AreSignals/AreSignal.entity.ts +17 -0
- package/src/lib/AreSignals/AreSignals.component.ts +98 -0
- package/src/lib/AreSignals/AreSignals.constants.ts +0 -0
- package/src/lib/AreSignals/AreSignals.context.ts +196 -0
- package/src/lib/AreSignals/AreSignals.meta.ts +75 -0
- package/src/lib/AreSignals/AreSignals.types.ts +18 -0
- package/src/lib/AreSignals/entities/AreInit.signal.ts +7 -0
- package/src/lib/AreSignals/entities/AreRoute.signal.ts +27 -0
- package/src/lib/AreStore/AreStore.constants.ts +6 -0
- package/src/lib/AreStore/AreStore.context.ts +243 -14
- package/src/lib/AreStore/AreStore.types.ts +19 -0
- package/src/lib/AreSyntax/AreSyntax.constants.ts +0 -0
- package/src/lib/AreSyntax/AreSyntax.context.ts +352 -78
- package/src/lib/AreSyntax/AreSyntax.types.ts +75 -139
- package/src/lib/AreTokenizer/AreTokenizer.component.ts +289 -0
- package/src/lib/AreTokenizer/AreTokenizer.error.ts +7 -0
- package/src/lib/AreTransformer/AreTransformer.component.ts +46 -0
- package/src/lib/AreTransformer/AreTransformer.constants.ts +0 -0
- package/src/lib/AreTransformer/AreTransformer.types.ts +0 -0
- package/src/lib/AreWatcher/AreWatcher.component.ts +84 -0
- package/src/lib/AreWatcher/AreWatcher.constants.ts +0 -0
- package/src/lib/AreWatcher/AreWatcher.context.ts +0 -0
- package/src/lib/AreWatcher/AreWatcher.types.ts +0 -0
- package/tests/AreInstruction.test.ts +73 -0
- package/tests/AreScene.test.ts +62 -0
- package/tests/AreSignals.test.ts +55 -0
- package/tests/AreTokenizer.test.ts +254 -0
- package/tests/jest.setup.ts +30 -0
- package/tsconfig.json +19 -19
- package/tsup.config.ts +6 -0
- package/dist/node/engines/html/AreHTML.compiler.d.mts +0 -114
- package/dist/node/engines/html/AreHTML.compiler.d.ts +0 -114
- package/dist/node/engines/html/AreHTML.compiler.js +0 -408
- package/dist/node/engines/html/AreHTML.compiler.js.map +0 -1
- package/dist/node/engines/html/AreHTML.compiler.mjs +0 -398
- package/dist/node/engines/html/AreHTML.compiler.mjs.map +0 -1
- package/dist/node/engines/html/AreHTML.engine.d.mts +0 -36
- package/dist/node/engines/html/AreHTML.engine.d.ts +0 -36
- package/dist/node/engines/html/AreHTML.engine.js +0 -122
- package/dist/node/engines/html/AreHTML.engine.js.map +0 -1
- package/dist/node/engines/html/AreHTML.engine.mjs +0 -112
- package/dist/node/engines/html/AreHTML.engine.mjs.map +0 -1
- package/dist/node/engines/html/index.d.mts +0 -26
- package/dist/node/engines/html/index.d.ts +0 -26
- package/dist/node/engines/html/index.js +0 -17
- package/dist/node/engines/html/index.js.map +0 -1
- package/dist/node/engines/html/index.mjs +0 -5
- package/dist/node/engines/html/index.mjs.map +0 -1
- package/dist/node/engines/json/AreJSON.compiler.d.mts +0 -21
- package/dist/node/engines/json/AreJSON.compiler.d.ts +0 -21
- package/dist/node/engines/json/AreJSON.compiler.js +0 -24
- package/dist/node/engines/json/AreJSON.compiler.js.map +0 -1
- package/dist/node/engines/json/AreJSON.compiler.mjs +0 -17
- package/dist/node/engines/json/AreJSON.compiler.mjs.map +0 -1
- package/dist/node/index-BD-6iOuR.d.ts +0 -238
- package/dist/node/index-DMXWCL7R.d.mts +0 -238
- package/dist/node/lib/AreApp/AreApp.container.d.mts +0 -22
- package/dist/node/lib/AreApp/AreApp.container.d.ts +0 -22
- package/dist/node/lib/AreApp/AreApp.container.js +0 -60
- package/dist/node/lib/AreApp/AreApp.container.js.map +0 -1
- package/dist/node/lib/AreApp/AreApp.container.mjs +0 -48
- package/dist/node/lib/AreApp/AreApp.container.mjs.map +0 -1
- package/dist/node/lib/AreApp/AreApp.env.js +0 -4
- package/dist/node/lib/AreApp/AreApp.env.js.map +0 -1
- package/dist/node/lib/AreApp/AreApp.env.mjs +0 -3
- package/dist/node/lib/AreApp/AreApp.env.mjs.map +0 -1
- package/dist/node/lib/AreApp/AreApp.error.d.mts +0 -6
- package/dist/node/lib/AreApp/AreApp.error.d.ts +0 -6
- package/dist/node/lib/AreApp/AreApp.error.js +0 -10
- package/dist/node/lib/AreApp/AreApp.error.js.map +0 -1
- package/dist/node/lib/AreApp/AreApp.error.mjs +0 -9
- package/dist/node/lib/AreApp/AreApp.error.mjs.map +0 -1
- package/dist/node/lib/AreApp/AreApp.types.js +0 -4
- package/dist/node/lib/AreApp/AreApp.types.js.map +0 -1
- package/dist/node/lib/AreApp/AreApp.types.mjs +0 -3
- package/dist/node/lib/AreApp/AreApp.types.mjs.map +0 -1
- package/dist/node/lib/AreApp/index.d.mts +0 -17
- package/dist/node/lib/AreApp/index.d.ts +0 -17
- package/dist/node/lib/AreApp/index.js +0 -24
- package/dist/node/lib/AreApp/index.js.map +0 -1
- package/dist/node/lib/AreApp/index.mjs +0 -6
- package/dist/node/lib/AreApp/index.mjs.map +0 -1
- package/dist/node/lib/AreCompiler/index.d.mts +0 -17
- package/dist/node/lib/AreCompiler/index.d.ts +0 -17
- package/dist/node/lib/AreCompiler/index.js +0 -24
- package/dist/node/lib/AreCompiler/index.js.map +0 -1
- package/dist/node/lib/AreCompiler/index.mjs +0 -6
- package/dist/node/lib/AreCompiler/index.mjs.map +0 -1
- package/dist/node/lib/AreComponent/index.d.mts +0 -11
- package/dist/node/lib/AreComponent/index.d.ts +0 -11
- package/dist/node/lib/AreComponent/index.js +0 -31
- package/dist/node/lib/AreComponent/index.js.map +0 -1
- package/dist/node/lib/AreComponent/index.mjs +0 -7
- package/dist/node/lib/AreComponent/index.mjs.map +0 -1
- package/dist/node/lib/AreEvent/index.d.mts +0 -8
- package/dist/node/lib/AreEvent/index.d.ts +0 -8
- package/dist/node/lib/AreEvent/index.js +0 -19
- package/dist/node/lib/AreEvent/index.js.map +0 -1
- package/dist/node/lib/AreEvent/index.mjs +0 -5
- package/dist/node/lib/AreEvent/index.mjs.map +0 -1
- package/dist/node/lib/AreIndex/AreIndex.context.d.mts +0 -8
- package/dist/node/lib/AreIndex/AreIndex.context.d.ts +0 -8
- package/dist/node/lib/AreIndex/AreIndex.context.js +0 -142
- package/dist/node/lib/AreIndex/AreIndex.context.js.map +0 -1
- package/dist/node/lib/AreIndex/AreIndex.context.mjs +0 -141
- package/dist/node/lib/AreIndex/AreIndex.context.mjs.map +0 -1
- package/dist/node/lib/AreIndex/index.d.mts +0 -8
- package/dist/node/lib/AreIndex/index.d.ts +0 -8
- package/dist/node/lib/AreIndex/index.js +0 -12
- package/dist/node/lib/AreIndex/index.js.map +0 -1
- package/dist/node/lib/AreIndex/index.mjs +0 -4
- package/dist/node/lib/AreIndex/index.mjs.map +0 -1
- package/dist/node/lib/AreNode/index.d.mts +0 -9
- package/dist/node/lib/AreNode/index.d.ts +0 -9
- package/dist/node/lib/AreNode/index.js +0 -26
- package/dist/node/lib/AreNode/index.js.map +0 -1
- package/dist/node/lib/AreNode/index.mjs +0 -6
- package/dist/node/lib/AreNode/index.mjs.map +0 -1
- package/dist/node/lib/AreProps/AreProps.context.d.mts +0 -9
- package/dist/node/lib/AreProps/AreProps.context.d.ts +0 -9
- package/dist/node/lib/AreProps/AreProps.context.js +0 -32
- package/dist/node/lib/AreProps/AreProps.context.js.map +0 -1
- package/dist/node/lib/AreProps/AreProps.context.mjs +0 -25
- package/dist/node/lib/AreProps/AreProps.context.mjs.map +0 -1
- package/dist/node/lib/AreProps/index.d.mts +0 -3
- package/dist/node/lib/AreProps/index.d.ts +0 -3
- package/dist/node/lib/AreProps/index.js +0 -12
- package/dist/node/lib/AreProps/index.js.map +0 -1
- package/dist/node/lib/AreProps/index.mjs +0 -4
- package/dist/node/lib/AreProps/index.mjs.map +0 -1
- package/dist/node/lib/AreRoot/AreRoot.component.d.mts +0 -18
- package/dist/node/lib/AreRoot/AreRoot.component.d.ts +0 -18
- package/dist/node/lib/AreRoot/AreRoot.component.js +0 -53
- package/dist/node/lib/AreRoot/AreRoot.component.js.map +0 -1
- package/dist/node/lib/AreRoot/AreRoot.component.mjs +0 -41
- package/dist/node/lib/AreRoot/AreRoot.component.mjs.map +0 -1
- package/dist/node/lib/AreRoot/index.d.mts +0 -11
- package/dist/node/lib/AreRoot/index.d.ts +0 -11
- package/dist/node/lib/AreRoot/index.js +0 -12
- package/dist/node/lib/AreRoot/index.js.map +0 -1
- package/dist/node/lib/AreRoot/index.mjs +0 -4
- package/dist/node/lib/AreRoot/index.mjs.map +0 -1
- package/dist/node/lib/AreRouter/AreRouter.componeent.d.mts +0 -17
- package/dist/node/lib/AreRouter/AreRouter.componeent.d.ts +0 -17
- package/dist/node/lib/AreRouter/AreRouter.componeent.js +0 -37
- package/dist/node/lib/AreRouter/AreRouter.componeent.js.map +0 -1
- package/dist/node/lib/AreRouter/AreRouter.componeent.mjs +0 -25
- package/dist/node/lib/AreRouter/AreRouter.componeent.mjs.map +0 -1
- package/dist/node/lib/AreRouter/index.d.mts +0 -12
- package/dist/node/lib/AreRouter/index.d.ts +0 -12
- package/dist/node/lib/AreRouter/index.js +0 -12
- package/dist/node/lib/AreRouter/index.js.map +0 -1
- package/dist/node/lib/AreRouter/index.mjs +0 -4
- package/dist/node/lib/AreRouter/index.mjs.map +0 -1
- package/dist/node/lib/AreScene/index.d.mts +0 -9
- package/dist/node/lib/AreScene/index.d.ts +0 -9
- package/dist/node/lib/AreScene/index.js +0 -24
- package/dist/node/lib/AreScene/index.js.map +0 -1
- package/dist/node/lib/AreScene/index.mjs +0 -6
- package/dist/node/lib/AreScene/index.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.d.mts +0 -7
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.d.ts +0 -7
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.js +0 -12
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.mjs +0 -12
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.d.mts +0 -8
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.d.ts +0 -8
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.js +0 -95
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.mjs +0 -94
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.d.mts +0 -8
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.d.ts +0 -8
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.js +0 -4
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.mjs +0 -3
- package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/index.d.mts +0 -19
- package/dist/node/lib/AreSceneInstruction/index.d.ts +0 -19
- package/dist/node/lib/AreSceneInstruction/index.js +0 -33
- package/dist/node/lib/AreSceneInstruction/index.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/index.mjs +0 -7
- package/dist/node/lib/AreSceneInstruction/index.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.d.mts +0 -19
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.d.ts +0 -19
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.js +0 -27
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.mjs +0 -26
- package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.d.mts +0 -20
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.d.ts +0 -20
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.js +0 -27
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.mjs +0 -26
- package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.d.mts +0 -17
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.d.ts +0 -17
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.js +0 -23
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.mjs +0 -22
- package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.d.mts +0 -19
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.d.ts +0 -19
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.js +0 -27
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.mjs +0 -26
- package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.d.mts +0 -23
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.d.ts +0 -23
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.js +0 -41
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.mjs +0 -40
- package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.d.mts +0 -15
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.d.ts +0 -15
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.js +0 -21
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.mjs +0 -20
- package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.d.mts +0 -17
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.d.ts +0 -17
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.js +0 -23
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.mjs +0 -22
- package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.d.mts +0 -23
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.d.ts +0 -23
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.js +0 -34
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.mjs +0 -33
- package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.d.mts +0 -16
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.d.ts +0 -16
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.js +0 -20
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.mjs +0 -19
- package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.mjs.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/index.d.mts +0 -18
- package/dist/node/lib/AreSceneInstruction/types/index.d.ts +0 -18
- package/dist/node/lib/AreSceneInstruction/types/index.js +0 -52
- package/dist/node/lib/AreSceneInstruction/types/index.js.map +0 -1
- package/dist/node/lib/AreSceneInstruction/types/index.mjs +0 -12
- package/dist/node/lib/AreSceneInstruction/types/index.mjs.map +0 -1
- package/dist/node/lib/AreSlot/AreSlot.component.d.mts +0 -8
- package/dist/node/lib/AreSlot/AreSlot.component.d.ts +0 -8
- package/dist/node/lib/AreSlot/AreSlot.component.js +0 -37
- package/dist/node/lib/AreSlot/AreSlot.component.js.map +0 -1
- package/dist/node/lib/AreSlot/AreSlot.component.mjs +0 -36
- package/dist/node/lib/AreSlot/AreSlot.component.mjs.map +0 -1
- package/dist/node/lib/AreStore/index.d.mts +0 -3
- package/dist/node/lib/AreStore/index.d.ts +0 -3
- package/dist/node/lib/AreStore/index.js +0 -12
- package/dist/node/lib/AreStore/index.js.map +0 -1
- package/dist/node/lib/AreStore/index.mjs +0 -4
- package/dist/node/lib/AreStore/index.mjs.map +0 -1
- package/dist/node/lib/AreSyntax/AreSyntax.component.d.mts +0 -89
- package/dist/node/lib/AreSyntax/AreSyntax.component.d.ts +0 -89
- package/dist/node/lib/AreSyntax/AreSyntax.component.js +0 -241
- package/dist/node/lib/AreSyntax/AreSyntax.component.js.map +0 -1
- package/dist/node/lib/AreSyntax/AreSyntax.component.mjs +0 -232
- package/dist/node/lib/AreSyntax/AreSyntax.component.mjs.map +0 -1
- package/dist/node/lib/AreSyntax/index.d.mts +0 -12
- package/dist/node/lib/AreSyntax/index.d.ts +0 -12
- package/dist/node/lib/AreSyntax/index.js +0 -29
- package/dist/node/lib/AreSyntax/index.js.map +0 -1
- package/dist/node/lib/AreSyntax/index.mjs +0 -7
- package/dist/node/lib/AreSyntax/index.mjs.map +0 -1
- package/dist/node/signals/AreInit.signal.d.mts +0 -7
- package/dist/node/signals/AreInit.signal.d.ts +0 -7
- package/dist/node/signals/AreInit.signal.js +0 -13
- package/dist/node/signals/AreInit.signal.js.map +0 -1
- package/dist/node/signals/AreInit.signal.mjs +0 -12
- package/dist/node/signals/AreInit.signal.mjs.map +0 -1
- package/dist/node/signals/AreRoute.signal.d.mts +0 -12
- package/dist/node/signals/AreRoute.signal.d.ts +0 -12
- package/dist/node/signals/AreRoute.signal.js +0 -24
- package/dist/node/signals/AreRoute.signal.js.map +0 -1
- package/dist/node/signals/AreRoute.signal.mjs +0 -23
- package/dist/node/signals/AreRoute.signal.mjs.map +0 -1
- package/dist/node/signals/index.d.mts +0 -4
- package/dist/node/signals/index.d.ts +0 -4
- package/dist/node/signals/index.js +0 -17
- package/dist/node/signals/index.js.map +0 -1
- package/dist/node/signals/index.mjs +0 -5
- package/dist/node/signals/index.mjs.map +0 -1
- package/examples/jumpstart/concept.ts +0 -60
- package/examples/jumpstart/containers/UI.container.ts +0 -172
- package/examples/jumpstart/dist/index.html +0 -22
- package/examples/jumpstart/dist/mls3rrlq-lofs95.js +0 -129
- package/examples/jumpstart/dist/static/css/main.css +0 -40
- package/examples/jumpstart/dist/static/img/test.png +0 -0
- package/examples/jumpstart/public/index.html +0 -22
- package/examples/jumpstart/public/static/css/main.css +0 -40
- package/examples/jumpstart/public/static/img/test.png +0 -0
- package/examples/jumpstart/src/components/A-Btn.component.ts +0 -124
- package/examples/jumpstart/src/components/A-Input.component.ts +0 -78
- package/examples/jumpstart/src/components/A-Navigation.component.ts +0 -167
- package/examples/jumpstart/src/components/SignInComponent.component.ts +0 -127
- package/examples/jumpstart/src/concept.ts +0 -92
- package/src/engines/html/AreHTML.compiler.ts +0 -657
- package/src/engines/html/AreHTML.engine.ts +0 -62
- package/src/engines/html/index.ts +0 -2
- package/src/engines/json/AreJSON.compiler.ts +0 -13
- package/src/lib/AreApp/AreApp.container.ts +0 -77
- package/src/lib/AreApp/AreApp.error.ts +0 -7
- package/src/lib/AreApp/index.ts +0 -4
- package/src/lib/AreCompiler/index.ts +0 -3
- package/src/lib/AreComponent/index.ts +0 -4
- package/src/lib/AreEvent/index.ts +0 -2
- package/src/lib/AreIndex/AreIndex.context.ts +0 -174
- package/src/lib/AreIndex/index.ts +0 -1
- package/src/lib/AreNode/index.ts +0 -4
- package/src/lib/AreProps/AreProps.context.ts +0 -26
- package/src/lib/AreProps/index.ts +0 -1
- package/src/lib/AreRoot/AreRoot.component.ts +0 -54
- package/src/lib/AreRoot/index.ts +0 -1
- package/src/lib/AreRouter/AreRouter.componeent.ts +0 -24
- package/src/lib/AreRouter/index.ts +0 -1
- package/src/lib/AreScene/index.ts +0 -3
- package/src/lib/AreSceneInstruction/AreSceneInstruction.constants.ts +0 -7
- package/src/lib/AreSceneInstruction/AreSceneInstruction.entity.ts +0 -156
- package/src/lib/AreSceneInstruction/AreSceneInstruction.types.ts +0 -8
- package/src/lib/AreSceneInstruction/index.ts +0 -4
- package/src/lib/AreSceneInstruction/types/AddAttribute.instruction.ts +0 -34
- package/src/lib/AreSceneInstruction/types/AddDirective.instruction.ts +0 -36
- package/src/lib/AreSceneInstruction/types/AddStyle.instruction.ts +0 -26
- package/src/lib/AreSceneInstruction/types/AddStyleProperty.instruction.ts +0 -32
- package/src/lib/AreSceneInstruction/types/AttachListener.instruction.ts +0 -57
- package/src/lib/AreSceneInstruction/types/AttachRootNode.instruction.ts +0 -23
- package/src/lib/AreSceneInstruction/types/MountNode.instruction.ts +0 -29
- package/src/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.ts +0 -45
- package/src/lib/AreSceneInstruction/types/UnmountNode.instruction.ts +0 -22
- package/src/lib/AreSceneInstruction/types/index.ts +0 -10
- package/src/lib/AreSlot/AreSlot.component.ts +0 -48
- package/src/lib/AreStore/index.ts +0 -1
- package/src/lib/AreSyntax/AreSyntax.component.ts +0 -378
- package/src/lib/AreSyntax/index.ts +0 -4
- package/src/signals/AreInit.signal.ts +0 -7
- package/src/signals/AreRoute.signal.ts +0 -25
- package/src/signals/index.ts +0 -2
- package/tests/A-HttpChannel.test.ts +0 -204
- package/tests/A-HttpServerError.test.ts +0 -204
- package/tests/A-Request.test.ts +0 -742
- package/tests/A-Service.test.ts +0 -18
- /package/dist/node/lib/{AreApp/AreApp.env.d.mts → AreInterpreter/AreInterpreter.constants.d.mts} +0 -0
- /package/dist/node/lib/{AreApp/AreApp.env.d.ts → AreInterpreter/AreInterpreter.constants.d.ts} +0 -0
- /package/dist/node/lib/{AreApp/AreApp.types.d.mts → AreInterpreter/AreInterpreter.types.d.mts} +0 -0
- /package/dist/node/lib/{AreApp/AreApp.types.d.ts → AreInterpreter/AreInterpreter.types.d.ts} +0 -0
- /package/src/lib/{AreApp/AreApp.env.ts → AreInterpreter/AreInterpreter.constants.ts} +0 -0
- /package/src/lib/{AreApp/AreApp.types.ts → AreInterpreter/AreInterpreter.types.ts} +0 -0
package/dist/browser/index.d.mts
CHANGED
|
@@ -1,27 +1,149 @@
|
|
|
1
1
|
import * as _adaas_a_concept from '@adaas/a-concept';
|
|
2
|
-
import { A_Component,
|
|
2
|
+
import { A_Component, A_TYPES__Entity_Serialized, A_Entity, A_Scope, A_TYPES__Fragment_Serialized, A_Fragment, ASEID, A_TYPES__Paths, A_TYPES__Entity_Constructor, A_Error, A_Feature, A_TYPES__Ctor, A_ComponentMeta, A_TYPES__ComponentMeta } from '@adaas/a-concept';
|
|
3
|
+
import { A_SignalVector, A_Signal, A_SignalState } from '@adaas/a-utils/a-signal';
|
|
3
4
|
import { A_ExecutionContext } from '@adaas/a-utils/a-execution';
|
|
4
|
-
import { A_Service, A_ServiceFeatures } from '@adaas/a-utils/a-service';
|
|
5
5
|
import { A_Logger } from '@adaas/a-utils/a-logger';
|
|
6
|
-
import { A_SignalBus, A_SignalVector, A_SignalState, A_Signal } from '@adaas/a-utils/a-signal';
|
|
7
6
|
import { A_Route } from '@adaas/a-utils/a-route';
|
|
8
7
|
|
|
8
|
+
declare const AreFeatures: {
|
|
9
|
+
/**
|
|
10
|
+
* Allows to define a custom method for the component's initialization logic. This method is called before the component is initialized and can be used to perform any necessary setup or configuration before the component is rendered. It can also be used to implement custom logic for handling specific features or behaviors of the component during the initialization process.
|
|
11
|
+
*/
|
|
12
|
+
readonly onBeforeInit: "_Are_onBeforeInit";
|
|
13
|
+
/**
|
|
14
|
+
* Allows to define a custom method for the component's logic that should be executed after the component has been initialized. This method is called after the component has been initialized and can be used to perform any necessary setup or configuration based on the initial state of the component. It can also be used to implement custom logic for handling specific features or behaviors of the component during the post-initialization process.
|
|
15
|
+
*/
|
|
16
|
+
readonly onAfterInit: "_Are_onAfterInit";
|
|
17
|
+
/**
|
|
18
|
+
* Allows to define a custom method for the component's mounting logic. This method is called before the component is mounted to the DOM and can be used to perform any necessary setup or configuration before the component is rendered. It can also be used to implement custom logic for handling specific features or behaviors of the component during the mounting process.
|
|
19
|
+
*/
|
|
20
|
+
readonly onBeforeMount: "_Are_onBeforeMount";
|
|
21
|
+
/**
|
|
22
|
+
* Allows to define a custom method for the component's logic that should be executed after the component has been mounted to the DOM. This method is called after the component has been mounted and can be used to perform any necessary setup or configuration based on the initial state of the component and its presence in the DOM. It can also be used to implement custom logic for handling specific features or behaviors of the component during the post-mounting process.
|
|
23
|
+
*/
|
|
24
|
+
readonly onAfterMount: "_Are_onAfterMount";
|
|
25
|
+
/**
|
|
26
|
+
* Allows to define a custom method for the component's unmounting logic. This method is called before the component is unmounted from the DOM and can be used to perform any necessary cleanup or teardown before the component is removed. It can also be used to implement custom logic for handling specific features or behaviors of the component during the unmounting process.
|
|
27
|
+
*/
|
|
28
|
+
readonly onBeforeUnmount: "_Are_onBeforeUnmount";
|
|
29
|
+
/**
|
|
30
|
+
* Allows to define a custom method for the component's logic that should be executed after the component has been unmounted from the DOM. This method is called after the component has been unmounted and can be used to perform any necessary cleanup or teardown based on the final state of the component and its removal from the DOM. It can also be used to implement custom logic for handling specific features or behaviors of the component during the post-unmounting process.
|
|
31
|
+
*/
|
|
32
|
+
readonly onAfterUnmount: "_Are_onAfterUnmount";
|
|
33
|
+
/**
|
|
34
|
+
* Allows to define a custom method for the component's update logic. This method is called whenever the component's state changes and can be used to perform any necessary updates or side effects based on the new state. It can also be used to optimize performance by implementing custom logic for determining when the component should re-render based on specific state changes.
|
|
35
|
+
*/
|
|
36
|
+
readonly onBeforeUpdate: "_Are_onBeforeUpdate";
|
|
37
|
+
/**
|
|
38
|
+
* Allows to define a custom method for the component's logic that should be executed after the component's state has been updated. This method is called after the component has re-rendered in response to state changes, and can be used to perform any necessary side effects or additional updates based on the new state. It can also be used to implement custom logic for handling specific features or behaviors of the component during the post-update process.
|
|
39
|
+
*/
|
|
40
|
+
readonly onAfterUpdate: "_Are_onAfterUpdate";
|
|
41
|
+
/**
|
|
42
|
+
* Allows to define a custom method for the component's logic that should be executed before the component is destroyed. This method is called before the component is destroyed and can be used to perform any necessary cleanup or teardown based on the final state of the component. It can also be used to implement custom logic for handling specific features or behaviors of the component during the pre-destruction process.
|
|
43
|
+
*/
|
|
44
|
+
readonly onBeforeDestroy: "_Are_onBeforeDestroy";
|
|
45
|
+
/**
|
|
46
|
+
* Allows to define a custom method for the component's logic that should be executed after the component is destroyed. This method is called after the component has been destroyed and can be used to perform any necessary cleanup or teardown based on the final state of the component. It can also be used to implement custom logic for handling specific features or behaviors of the component during the post-destruction process.
|
|
47
|
+
*/
|
|
48
|
+
readonly onAfterDestroy: "_Are_onAfterDestroy";
|
|
49
|
+
readonly onTemplate: "_Are_onTemplate";
|
|
50
|
+
readonly onStyles: "_Are_onStyles";
|
|
51
|
+
readonly onData: "_Are_onData";
|
|
52
|
+
readonly onSignal: "_Are_onSignal";
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
type AreContextInit = {
|
|
56
|
+
/**
|
|
57
|
+
* The base template to be used for rendering and compilation.
|
|
58
|
+
*/
|
|
59
|
+
source?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Conditions Mapping between roots and signals associated with components rendered inside the roots. This can be used to manage complex rendering logic and to optimize performance by ensuring that components are only rendered when necessary based on the defined conditions.
|
|
62
|
+
*/
|
|
63
|
+
map: {
|
|
64
|
+
[rootName: string]: A_SignalVector;
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
type ArePropDefinition = {
|
|
68
|
+
/**
|
|
69
|
+
* The type of the property, which can be used for validation and parsing purposes. This can include basic types like 'string', 'number', 'boolean', as well as more complex types like 'object' or 'array'.
|
|
70
|
+
*/
|
|
71
|
+
type: string;
|
|
72
|
+
/**
|
|
73
|
+
* The default value of the property, which will be used if the property is not provided during the component's usage. This can help ensure that the component has a consistent behavior even when certain props are omitted.
|
|
74
|
+
*/
|
|
75
|
+
default: any;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* The names of the features that can be implemented by the AreComponent entity. These features correspond to specific methods that can be defined on the AreComponent class to provide custom behavior for handling signals, defining the component's template, styles, data, and other aspects of its functionality within the ARE framework. Each feature name is associated with a specific method that should be implemented to handle the corresponding aspect of the component's behavior and lifecycle within the ARE framework.
|
|
79
|
+
*/
|
|
80
|
+
type AreFeatureNames = typeof AreFeatures[keyof typeof AreFeatures];
|
|
81
|
+
|
|
9
82
|
declare class Are extends A_Component {
|
|
83
|
+
/**
|
|
84
|
+
* Allows to apply Signal Vector as a condition for rendering the component. The component will be rendered only if at least one of the signals in the vector is active. This can be used to manage complex rendering logic and to optimize performance by ensuring that components are only rendered when necessary based on the defined conditions.
|
|
85
|
+
*
|
|
86
|
+
* @param signals
|
|
87
|
+
* @returns
|
|
88
|
+
*/
|
|
89
|
+
static Condition(vector: A_SignalVector): any;
|
|
90
|
+
static Condition(vector: Array<A_Signal>): any;
|
|
91
|
+
/**
|
|
92
|
+
* Allows to define a custom method for the component's template. This method should return a string representing the HTML template of the component. The template can include dynamic content and bindings that will be processed during rendering to create the final DOM structure for the component.
|
|
93
|
+
*/
|
|
10
94
|
static get EventHandler(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
static get
|
|
95
|
+
/**
|
|
96
|
+
* Allows to define a custom method for the component's template. This method should return a string representing the HTML template of the component. The template can include dynamic content and bindings that will be processed during rendering to create the final DOM structure for the component.
|
|
97
|
+
*/
|
|
98
|
+
static get onBeforeInit(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
99
|
+
/**
|
|
100
|
+
* Allows to define a custom method for the component's initialization logic. This method is called after the component is instantiated but before it is rendered, and can be used to set up any necessary state, perform data fetching, or execute any other logic that needs to happen before the component is rendered for the first time.
|
|
101
|
+
*/
|
|
102
|
+
static get onAfterInit(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
103
|
+
/**
|
|
104
|
+
* Allows to define a custom method for the component's mounting logic. This method is called after the component has been rendered and added to the DOM, and can be used to perform any necessary setup or initialization that requires access to the DOM elements of the component. It can also be used to implement custom logic for handling specific features or behaviors of the component during the mounting process.
|
|
105
|
+
*/
|
|
15
106
|
static get onBeforeMount(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
107
|
+
/**
|
|
108
|
+
* Allows to define a custom method for the component's logic that should be executed after the component is mounted. This method is called after the component has been rendered and added to the DOM, and can be used to perform any necessary setup or initialization that requires access to the DOM elements of the component. It can also be used to implement custom logic for handling specific features or behaviors of the component during the post-mounting process.
|
|
109
|
+
*/
|
|
16
110
|
static get onAfterMount(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
111
|
+
/**
|
|
112
|
+
* Allows to define a custom method for the component's unmounting logic. This method is called before the component is removed from the DOM, and can be used to perform any necessary cleanup or teardown, such as removing event listeners, canceling timers, or releasing any resources that were allocated during the component's lifecycle. It can also be used to implement custom logic for handling specific features or behaviors of the component during the unmounting process.
|
|
113
|
+
*/
|
|
17
114
|
static get onBeforeUnmount(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
115
|
+
/**
|
|
116
|
+
* Allows to define a custom method for the component's logic that should be executed after the component is unmounted. This method is called after the component has been removed from the DOM, and can be used to perform any necessary cleanup or teardown that needs to happen after the component is no longer in the DOM. It can also be used to implement custom logic for handling specific features or behaviors of the component during the post-unmounting process.
|
|
117
|
+
*/
|
|
18
118
|
static get onAfterUnmount(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
119
|
+
/**
|
|
120
|
+
* Allows to define a custom method for the component's update logic. This method is called whenever the component's state changes and can be used to perform any necessary updates or side effects based on the new state. It can also be used to optimize performance by implementing custom logic for determining when the component should re-render based on specific state changes.
|
|
121
|
+
*/
|
|
19
122
|
static get onBeforeUpdate(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
123
|
+
/**
|
|
124
|
+
* Allows to define a custom method for the component's logic that should be executed after the component's state has been updated. This method is called after the component has re-rendered in response to state changes, and can be used to perform any necessary side effects or additional updates based on the new state. It can also be used to implement custom logic for handling specific features or behaviors of the component during the post-update process.
|
|
125
|
+
*/
|
|
20
126
|
static get onAfterUpdate(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
127
|
+
/**
|
|
128
|
+
* Allows to define a custom method for the component's template. This method should return a string representing the HTML template of the component. The template can include dynamic content and bindings that will be processed during rendering to create the final DOM structure for the component.
|
|
129
|
+
*/
|
|
21
130
|
static get Template(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
131
|
+
/**
|
|
132
|
+
* Allows to define a custom method for the component's styles. This method should return a string representing the CSS styles of the component. The styles can include dynamic content and can be processed during rendering to apply the appropriate styles to the component's DOM elements.
|
|
133
|
+
*/
|
|
22
134
|
static get Styles(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
135
|
+
/**
|
|
136
|
+
* Allows to define a custom method for the component's data. This method should return an object representing the initial state of the component. The data can include any properties that are needed to manage the component's state and can be reactive, allowing the component to re-render when the data changes.
|
|
137
|
+
*/
|
|
23
138
|
static get Data(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
139
|
+
/**
|
|
140
|
+
* Allows to define a custom method for handling signals emitted by the component or other parts of the application. This method can be used to implement custom logic for responding to specific signals, such as user interactions, state changes, or other events that may affect the component's behavior or appearance. By defining this method, developers can create more dynamic and interactive components that can react to changes in the application state or user input in a flexible and efficient way.
|
|
141
|
+
*/
|
|
24
142
|
static get Signal(): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
143
|
+
/**
|
|
144
|
+
* Props can be used to store any additional data or configuration for the component. They are not reactive by default but can be used in the component's methods and lifecycle hooks to manage state or pass information. Props can be defined as a simple object with key-value pairs, where keys are the prop names and values are the prop values. They can be accessed and modified within the component's methods to influence rendering or behavior based on the component's state or external inputs.
|
|
145
|
+
*/
|
|
146
|
+
props: Record<string, ArePropDefinition>;
|
|
25
147
|
/**
|
|
26
148
|
* Returns the template string for the component
|
|
27
149
|
*
|
|
@@ -29,7 +151,7 @@ declare class Are extends A_Component {
|
|
|
29
151
|
*
|
|
30
152
|
* @returns
|
|
31
153
|
*/
|
|
32
|
-
template(...args: any[]): Promise<void
|
|
154
|
+
template(...args: any[]): Promise<void> | void;
|
|
33
155
|
/**
|
|
34
156
|
* Returns the styles string for the component
|
|
35
157
|
*
|
|
@@ -37,7 +159,7 @@ declare class Are extends A_Component {
|
|
|
37
159
|
*
|
|
38
160
|
* @returns
|
|
39
161
|
*/
|
|
40
|
-
styles(...args: any[]): Promise<void
|
|
162
|
+
styles(...args: any[]): Promise<void> | void;
|
|
41
163
|
/**
|
|
42
164
|
* Returns the data object for the component
|
|
43
165
|
*
|
|
@@ -45,819 +167,1298 @@ declare class Are extends A_Component {
|
|
|
45
167
|
*
|
|
46
168
|
* @returns
|
|
47
169
|
*/
|
|
48
|
-
data(...args: any[]): Promise<void
|
|
170
|
+
data(...args: any[]): Promise<void> | void;
|
|
49
171
|
}
|
|
50
172
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
scope: string;
|
|
54
|
-
markup: string;
|
|
55
|
-
};
|
|
56
|
-
type AreNodeOptionalProps = {
|
|
57
|
-
id?: string;
|
|
58
|
-
styles?: string;
|
|
59
|
-
template?: string;
|
|
60
|
-
};
|
|
61
|
-
type AreNodeNewProps = AreNodeProps & AreNodeOptionalProps;
|
|
173
|
+
declare class AreEvent<T extends Record<string, any> = Record<string, any>> extends A_ExecutionContext<T> {
|
|
174
|
+
}
|
|
62
175
|
|
|
63
|
-
|
|
64
|
-
* Properties for the AreEvent context
|
|
65
|
-
*
|
|
66
|
-
*/
|
|
67
|
-
type AreEventProps<T = any> = {
|
|
176
|
+
type AreInstructionNewProps<T extends any = Record<string, any>> = {
|
|
68
177
|
/**
|
|
69
|
-
* The
|
|
178
|
+
* The deduplication ID that prevents duplicated instruction within the same node.
|
|
179
|
+
*
|
|
180
|
+
* For example to prevent duplicated AddAttribute instruction for the same attribute, we can use the attribute name as the deduplication ID, so if we have two AddAttribute instructions with the same attribute name, only the first one will be applied, and the second one will be ignored.
|
|
181
|
+
*
|
|
182
|
+
*
|
|
183
|
+
* [!] Note; By default it uses action name and group if provided
|
|
70
184
|
*/
|
|
71
|
-
data: T;
|
|
72
185
|
/**
|
|
73
|
-
*
|
|
186
|
+
* the Host operation to be performed. Exactly this name will be used to call a method from the Host class.
|
|
74
187
|
*/
|
|
75
|
-
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
declare class AreEvent<T extends any = any> extends A_Fragment {
|
|
79
|
-
protected _node?: AreNode;
|
|
80
|
-
protected _props: AreEventProps<T>;
|
|
81
|
-
constructor(eventName: string, props: AreEventProps<T>);
|
|
82
|
-
get data(): T;
|
|
83
|
-
get event(): string;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
declare class AreIndex<_PathType = any> extends A_Fragment {
|
|
87
|
-
constructor(aseid: string | ASEID);
|
|
88
|
-
/**
|
|
89
|
-
* Platform-agnostic element index
|
|
90
|
-
* Element can be DOM Element, PDF element, DOCX element, etc.
|
|
91
|
-
* The actual type depends on the compiler being used
|
|
92
|
-
*/
|
|
93
|
-
protected _index: {
|
|
94
|
-
ASEID_to_Path: Map<string, _PathType>;
|
|
95
|
-
Path_to_ASEID: Map<_PathType, string>;
|
|
96
|
-
Node_to_Path: Map<AreNode, _PathType>;
|
|
97
|
-
Path_to_Node: Map<_PathType, AreNode>;
|
|
98
|
-
};
|
|
188
|
+
name: string;
|
|
99
189
|
/**
|
|
100
|
-
*
|
|
101
|
-
* Can be used to identify changes in the index
|
|
190
|
+
* The parent instruction that created this instruction. For example, if we have a CreateElement instruction that creates a new element, and then we have an AddAttribute instruction that adds an attribute to that element, the AddAttribute instruction would have the CreateElement instruction as its parent. This can be used to track the hierarchy of instructions and their dependencies.
|
|
102
191
|
*/
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
192
|
+
parent?: AreInstruction | undefined;
|
|
193
|
+
/**
|
|
194
|
+
* Group is an optional property that can be used to group instructions together.
|
|
195
|
+
*
|
|
196
|
+
* For example a set of instructions that depend on create CreateElement instruction can be grouped together with the same group name, so if the CreateElement instruction is reverted, all the instructions in the same group will be reverted as well, and so on.
|
|
197
|
+
*
|
|
198
|
+
* This can be useful to manage complex changes that involve multiple instructions.
|
|
199
|
+
*
|
|
200
|
+
* [!] Note, the best option is to use ASEID of the Instruction as a group, so all instructions with the same ASEID will be treated as a single change, and will be applied and reverted together.
|
|
201
|
+
*/
|
|
202
|
+
group?: AreInstruction | undefined;
|
|
110
203
|
/**
|
|
111
|
-
*
|
|
112
|
-
*
|
|
113
|
-
*
|
|
204
|
+
* A set of additional parameters that may be needed for the rendering purpose.
|
|
205
|
+
*
|
|
206
|
+
* For example: for AddAttribute instruction, we may need to provide the attribute name and value as a payload, so the Host can use this information to add the attribute to the node.
|
|
114
207
|
*/
|
|
115
|
-
|
|
208
|
+
payload?: T;
|
|
209
|
+
};
|
|
210
|
+
type AreInstructionSerialized<T extends any = Record<string, any>> = {
|
|
116
211
|
/**
|
|
117
|
-
*
|
|
118
|
-
* @param node - AreNode to look up
|
|
119
|
-
* @returns Platform-specific element or undefined
|
|
212
|
+
* The name of the instruction, which corresponds to the operation that should be performed in the Host. This name is used to identify the specific method in the Host that should be called to execute the instruction, allowing for a clear mapping between instructions and their corresponding actions in the rendering process.
|
|
120
213
|
*/
|
|
121
|
-
|
|
214
|
+
name: string;
|
|
122
215
|
/**
|
|
123
|
-
*
|
|
124
|
-
* @param element - Platform-specific element to look up
|
|
125
|
-
* @returns AreNode or undefined
|
|
216
|
+
* The type of the instruction, which can be used to categorize instructions and determine how they should be processed. For example, we can have different types for declaration instructions (e.g., DeclarationInstruction or CreateElement) and mutation instructions (e.g., AddAttribute), allowing for better organization and management of instructions based on their purpose and behavior in the scene.
|
|
126
217
|
*/
|
|
127
|
-
|
|
218
|
+
type: string;
|
|
128
219
|
/**
|
|
129
|
-
*
|
|
130
|
-
* @param node - AreNode to remove from index
|
|
220
|
+
* The parent instruction that created this instruction. For example, if we have a CreateElement instruction that creates a new element, and then we have an AddAttribute instruction that adds an attribute to that element, the AddAttribute instruction would have the CreateElement instruction as its parent. This can be used to track the hierarchy of instructions and their dependencies.
|
|
131
221
|
*/
|
|
132
|
-
|
|
133
|
-
replaceByNode(oldNode: AreNode, newNode: AreNode): void;
|
|
134
|
-
replacePath(oldPath: _PathType, newPath: _PathType): void;
|
|
222
|
+
parent?: string | undefined;
|
|
135
223
|
/**
|
|
136
|
-
*
|
|
137
|
-
* @param path - Platform-specific element to remove from index
|
|
224
|
+
* Group is an optional property that can be used to group instructions together. For example a set of instructions that depend on create CreateElement instruction can be grouped together with the same group name, so if the CreateElement instruction is reverted, all the instructions in the same group will be reverted as well, and so on. This can be useful to manage complex changes that involve multiple instructions. The best option is to use ASEID of the Instruction as a group, so all instructions with the same ASEID will be treated as a single change, and will be applied and reverted together.
|
|
138
225
|
*/
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
[id: string]: AreSCene_Serialized;
|
|
146
|
-
};
|
|
147
|
-
} & A_TYPES__Fragment_Serialized;
|
|
148
|
-
|
|
149
|
-
declare class AreProps<T extends Record<string, any> = Record<string, any>> extends A_ExecutionContext<T> {
|
|
150
|
-
constructor(aseid: ASEID);
|
|
151
|
-
setMultiple(values: Partial<T>): void;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
declare class AreStore<T extends Record<string, any> = Record<string, any>> extends A_ExecutionContext<T> {
|
|
155
|
-
constructor(aseid: ASEID);
|
|
156
|
-
set<K extends keyof T>(values: Partial<T>): this;
|
|
157
|
-
set<K extends keyof T>(key: K, value: T[K]): this;
|
|
158
|
-
}
|
|
226
|
+
group?: string | undefined;
|
|
227
|
+
/**
|
|
228
|
+
* A set of additional parameters that may be needed for the rendering purpose. For example: for AddAttribute instruction, we may need to provide the attribute name and value as a payload, so the Host can use this information to add the attribute to the node.
|
|
229
|
+
*/
|
|
230
|
+
payload: T;
|
|
231
|
+
} & A_TYPES__Entity_Serialized;
|
|
159
232
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
action: string;
|
|
163
|
-
node: AreNode;
|
|
164
|
-
params?: T;
|
|
233
|
+
declare const AreStoreAreComponentMetaKeys: {
|
|
234
|
+
readonly StoreExtensions: "_AreStore_StoreExtensions";
|
|
165
235
|
};
|
|
166
236
|
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
get scene(): AreScene;
|
|
173
|
-
/**
|
|
174
|
-
* Generates even hash uses for deduplication
|
|
175
|
-
*
|
|
176
|
-
* @param str
|
|
177
|
-
*/
|
|
178
|
-
protected createHash(str?: string): string;
|
|
179
|
-
protected createHash(str?: undefined): string;
|
|
180
|
-
protected createHash(str?: Record<string, any>): string;
|
|
181
|
-
protected createHash(str?: Array<any>): string;
|
|
182
|
-
protected createHash(str?: number): string;
|
|
183
|
-
protected createHash(str?: boolean): string;
|
|
184
|
-
protected createHash(str?: null): string;
|
|
185
|
-
protected createHash(map?: Map<any, any>): string;
|
|
186
|
-
protected createHash(set?: Set<any>): string;
|
|
187
|
-
fromNew(newEntity: AreSceneInstructionNewProps<T>): void;
|
|
188
|
-
update(params: Partial<T>): void;
|
|
189
|
-
init(scope?: A_Scope): void;
|
|
190
|
-
apply(scope?: A_Scope): void;
|
|
191
|
-
revert(scope?: A_Scope): void;
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
declare class AddAttributeInstruction extends AreSceneInstruction<{
|
|
195
|
-
name: string;
|
|
196
|
-
value: string;
|
|
197
|
-
}> {
|
|
198
|
-
get name(): string;
|
|
199
|
-
get value(): string;
|
|
200
|
-
constructor(node: AreNode, name: string, value: string);
|
|
201
|
-
}
|
|
237
|
+
type AreStorePathValue<T, P extends string> = P extends `${infer K}.${infer Rest}` ? K extends keyof T ? AreStorePathValue<T[K], Rest> : never : P extends keyof T ? T[P] : never;
|
|
238
|
+
type AreStoreWatchingEntity = {
|
|
239
|
+
update(...args: any[]): void;
|
|
240
|
+
};
|
|
241
|
+
type AreStoreAreComponentMetaKeyNames = typeof AreStoreAreComponentMetaKeys[keyof typeof AreStoreAreComponentMetaKeys];
|
|
202
242
|
|
|
203
|
-
|
|
243
|
+
declare class AreInstruction<T extends Record<string, any> = Record<string, any>, S extends AreInstructionSerialized<T> = AreInstructionSerialized<T>> extends A_Entity<AreInstructionNewProps<T>, S> implements AreStoreWatchingEntity {
|
|
204
244
|
/**
|
|
205
|
-
*
|
|
206
|
-
* When enabled, additional logging and debugging information will be available.
|
|
207
|
-
* Default is false.
|
|
245
|
+
* The name of the instruction, for example "CreateElement", "AddAttribute", "RemoveNode", etc. This is used to identify the type of the instruction and how to process it. The name should be in PascalCase format, and should be unique across all instruction types. It is recommended to use a prefix that indicates the category of the instruction, for example "CreateElement" for instructions that create new elements, "UpdateAttribute" for instructions that update attributes, etc.
|
|
208
246
|
*/
|
|
209
|
-
|
|
247
|
+
protected _name: string;
|
|
210
248
|
/**
|
|
211
|
-
*
|
|
212
|
-
* Default is ['{{', '}}'].
|
|
249
|
+
* The payload of the instruction, which can contain any additional information that may be needed for the rendering purpose. For example, for CreateElement instruction, the payload can contain the tag name and parent information, so the Host can use this information to create the element in the correct place in the scene. The payload is optional and can be an empty object if no additional information is needed.
|
|
213
250
|
*/
|
|
214
|
-
|
|
251
|
+
protected _payload?: T;
|
|
215
252
|
/**
|
|
216
|
-
*
|
|
217
|
-
*
|
|
253
|
+
* Group is an optional property that can be used to group instructions together. For example a set of instructions that depend on create CreateElement instruction can be grouped together with the same group name, so if the CreateElement instruction is reverted, all the instructions in the same group will be reverted as well, and so on. This can be useful to manage complex changes that involve multiple instructions.
|
|
254
|
+
*
|
|
255
|
+
* [!] Note, the best option is to use ASEID of the Instruction as a group, so all instructions with the same ASEID will be treated as a single change, and will be applied and reverted together.
|
|
218
256
|
*/
|
|
219
|
-
|
|
257
|
+
protected _group: string | undefined;
|
|
220
258
|
/**
|
|
221
|
-
*
|
|
222
|
-
* Default is '@'.
|
|
259
|
+
* The parent instruction that created this instruction. For example, if we have a CreateElement instruction that creates a new element, and then we have an AddAttribute instruction that adds an attribute to that element, the AddAttribute instruction would have the CreateElement instruction as its parent. This can be used to track the hierarchy of instructions and their dependencies.
|
|
223
260
|
*/
|
|
224
|
-
|
|
261
|
+
protected _parent: string | undefined;
|
|
225
262
|
/**
|
|
226
|
-
*
|
|
227
|
-
* When enabled, the parser will throw errors for any syntax violations.
|
|
228
|
-
* Default is true.
|
|
263
|
+
* A set of properties that influence the behavior of the instruction, for example, for AddTextInstruction, we can interpolation dependent on some key in the store, so we can have a property called "interpolationKey" that will be used to track the dependencies of the instruction, and when the value of this key changes in the scope, we can update the instruction accordingly.
|
|
229
264
|
*/
|
|
230
|
-
|
|
265
|
+
protected _props: Set<string>;
|
|
231
266
|
/**
|
|
232
|
-
*
|
|
233
|
-
* Each directive should be a string representing the directive name.
|
|
234
|
-
* Default is an empty array.
|
|
267
|
+
* The name of the instruction, for example "CreateElement", "AddAttribute", "RemoveNode", etc. This is used to identify the type of the instruction and how to process it. The name should be in PascalCase format, and should be unique across all instruction types. It is recommended to use a prefix that indicates the category of the instruction, for example "CreateElement" for instructions that create new elements, "UpdateAttribute" for instructions that update attributes, etc.
|
|
235
268
|
*/
|
|
236
|
-
|
|
269
|
+
get name(): string;
|
|
237
270
|
/**
|
|
238
|
-
*
|
|
239
|
-
*
|
|
240
|
-
*
|
|
271
|
+
* The payload of the instruction, which can contain any additional information that may be needed for the rendering purpose. For example, for CreateElement instruction, the payload can contain the tag name and parent information, so the Host can use this information to create the element in the correct place in the scene. The payload is optional and can be an empty object if no additional information is needed.
|
|
272
|
+
*
|
|
273
|
+
* [!] Note, the payload should be serializable, so it can be stored and transmitted easily. It is recommended to use simple data structures for the payload, such as objects, arrays, strings, numbers, etc., and avoid using complex data types that may not be easily serializable.
|
|
241
274
|
*/
|
|
242
|
-
|
|
275
|
+
get payload(): T;
|
|
243
276
|
/**
|
|
244
|
-
*
|
|
277
|
+
* Group is an optional property that can be used to group instructions together. For example a set of instructions that depend on create CreateElement instruction can be grouped together with the same group name, so if the CreateElement instruction is reverted, all the instructions in the same group will be reverted as well, and so on. This can be useful to manage complex changes that involve multiple instructions.
|
|
278
|
+
*
|
|
279
|
+
* [!] Note, the best option is to use ASEID of the Instruction as a group, so all instructions with the same ASEID will be treated as a single change, and will be applied and reverted together.
|
|
245
280
|
*/
|
|
246
|
-
|
|
281
|
+
get group(): string | undefined;
|
|
247
282
|
/**
|
|
248
|
-
*
|
|
249
|
-
*
|
|
283
|
+
* The parent instruction ASEID that created this instruction. For example, if we have a CreateElement instruction that creates a new element, and then we have an AddAttribute instruction that adds an attribute to that element, the AddAttribute instruction would have the CreateElement instruction as its parent. This can be used to track the hierarchy of instructions and their dependencies.
|
|
284
|
+
*
|
|
285
|
+
* [!] Note, the parent should be provided as an ASEID string, so it can be easily referenced and tracked across different contexts and times.
|
|
250
286
|
*/
|
|
251
|
-
|
|
287
|
+
get parent(): string | undefined;
|
|
288
|
+
get id(): string;
|
|
289
|
+
get owner(): AreNode;
|
|
290
|
+
fromNew(newEntity: AreInstructionNewProps<T>): void;
|
|
291
|
+
fromUndefined(): void;
|
|
252
292
|
/**
|
|
253
|
-
*
|
|
293
|
+
* Group this instruction with another instruction. This means that when one of the instructions in the group is applied or reverted, all the instructions in the same group will be applied or reverted together. This can be useful to manage complex changes that involve multiple instructions.
|
|
294
|
+
*
|
|
295
|
+
* For example, if we have a CreateElement instruction that creates a new element, and then we have an AddAttribute instruction that adds an attribute to that element, we can group them together with the same group name, so if we revert the CreateElement instruction, the AddAttribute instruction will be reverted as well, and so on.
|
|
296
|
+
*
|
|
297
|
+
* @param instruction
|
|
298
|
+
* @returns
|
|
254
299
|
*/
|
|
255
|
-
|
|
256
|
-
};
|
|
257
|
-
type AreAttribute = {
|
|
300
|
+
groupWith(instruction: AreInstruction): this;
|
|
258
301
|
/**
|
|
259
|
-
*
|
|
302
|
+
* Ungroup this instruction from any group. This means that this instruction will be treated as an independent instruction, and will not be applied or reverted together with any other instructions. This can be useful when you want to separate an instruction from a group, so it can be applied or reverted independently.
|
|
303
|
+
*
|
|
304
|
+
* @returns
|
|
260
305
|
*/
|
|
261
|
-
|
|
306
|
+
unGroup(): this;
|
|
262
307
|
/**
|
|
263
|
-
*
|
|
308
|
+
* Attach this instruction to a parent instruction. This means that this instruction will be considered as a child of the parent instruction, and can be used to track the hierarchy of instructions and their dependencies.
|
|
309
|
+
*
|
|
310
|
+
* For example, if we have a CreateElement instruction that creates a new element, and then we have an AddAttribute instruction that adds an attribute to that element, we can attach the AddAttribute instruction to the CreateElement instruction as its parent, so we can track that the AddAttribute instruction is related to the CreateElement instruction.
|
|
311
|
+
*
|
|
312
|
+
* @param parent
|
|
313
|
+
* @returns
|
|
264
314
|
*/
|
|
265
|
-
|
|
315
|
+
attachTo(parent: AreInstruction): this;
|
|
266
316
|
/**
|
|
267
|
-
*
|
|
317
|
+
* Detach this instruction from its parent instruction. This means that this instruction will no longer be considered as a child of the parent instruction, and will not be related to it in any way. This can be useful when you want to separate an instruction from its parent, so it can be treated as an independent instruction.
|
|
318
|
+
*
|
|
319
|
+
* @returns
|
|
268
320
|
*/
|
|
269
|
-
|
|
321
|
+
detach(): this;
|
|
270
322
|
/**
|
|
271
|
-
*
|
|
323
|
+
* Apply this instruction to the scene. This means that the changes represented by this instruction will be applied to the scene, and the Host will perform the necessary operations to reflect these changes in the rendered output.
|
|
324
|
+
*
|
|
325
|
+
* For example, if this instruction is a CreateElement instruction, when we apply it, the Host will create a new element in the scene according to the information provided in the payload of the instruction. If this instruction is an AddAttribute instruction, when we apply it, the Host will add the specified attribute to the target element in the scene. The apply method can also accept an optional scope parameter, which can be used to provide additional context or information that may be needed for applying the instruction.
|
|
326
|
+
*
|
|
327
|
+
* @param scope
|
|
272
328
|
*/
|
|
273
|
-
|
|
329
|
+
apply(scope?: A_Scope): void;
|
|
274
330
|
/**
|
|
275
|
-
*
|
|
331
|
+
* Update this instruction in the scene. This means that the changes represented by this instruction will be updated in the scene, and the Host will perform the necessary operations to reflect these changes in the rendered output. This is particularly useful for instructions that have dynamic properties or effects that may change over time, allowing for adjustments to be made to the instruction's behavior or effects without needing to revert and reapply it entirely. The update method can also accept an optional scope parameter, which can be used to provide additional context or information that may be needed for updating the instruction.
|
|
332
|
+
*
|
|
333
|
+
* @param scope
|
|
276
334
|
*/
|
|
277
|
-
|
|
278
|
-
};
|
|
279
|
-
type AreInterpolation = {
|
|
335
|
+
update(scope?: A_Scope): void;
|
|
280
336
|
/**
|
|
281
|
-
*
|
|
337
|
+
* Revert this instruction from the scene. This means that the changes represented by this instruction will be reverted from the scene, and the Host will perform the necessary operations to undo these changes in the rendered output.
|
|
338
|
+
*
|
|
339
|
+
* @param scope
|
|
282
340
|
*/
|
|
283
|
-
|
|
341
|
+
revert(scope?: A_Scope): void;
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
/**
|
|
345
|
+
* This is a top-level instruction that represents the creation of a new element in the scene. It contains all the necessary information to create a new element, such as its tag and parent. This instruction can be applied to the scene to create a new element and can be reverted to remove the created element.
|
|
346
|
+
*/
|
|
347
|
+
declare class AreDeclaration<T extends Record<string, any> = Record<string, any>, S extends AreInstructionSerialized<T> = AreInstructionSerialized<T>> extends AreInstruction<T, S> {
|
|
348
|
+
constructor(
|
|
284
349
|
/**
|
|
285
|
-
*
|
|
350
|
+
* Serialized form of the instruction, used for deserialization and reconstruction of the instruction instance. This allows for the instruction to be easily stored, transmitted, and recreated in different contexts or at different times, while maintaining all the necessary information and relationships intact.
|
|
286
351
|
*/
|
|
287
|
-
|
|
352
|
+
serialized: AreInstructionSerialized);
|
|
353
|
+
constructor(
|
|
288
354
|
/**
|
|
289
|
-
*
|
|
355
|
+
* The name of the operation to be performed in Host. For example, for CreateElement instruction, the name can be "createElement", so the Host can have a method with the same name to handle this instruction.
|
|
290
356
|
*/
|
|
291
|
-
|
|
292
|
-
};
|
|
293
|
-
type AreListener = {
|
|
357
|
+
name: string,
|
|
294
358
|
/**
|
|
295
|
-
*
|
|
359
|
+
* In case this is a child instruction that is related to a declaration instruction, we can pass the parent declaration instruction to establish the relationship between them. This allows us to manage related instructions together and ensure that they are executed in the correct order in the scene.
|
|
296
360
|
*/
|
|
297
|
-
|
|
361
|
+
parent: AreDeclaration,
|
|
298
362
|
/**
|
|
299
|
-
*
|
|
363
|
+
* A set of additional parameters that may be needed for the rendering purpose. For example, for CreateElement instruction, the payload can contain the tag name and parent information, so the Host can use this information to create the element in the correct place in the scene.
|
|
300
364
|
*/
|
|
301
|
-
|
|
365
|
+
payload: T);
|
|
366
|
+
constructor(
|
|
302
367
|
/**
|
|
303
|
-
*
|
|
368
|
+
* The name of the operation to be performed in Host. For example, for CreateElement instruction, the name can be "createElement", so the Host can have a method with the same name to handle this instruction.
|
|
304
369
|
*/
|
|
305
|
-
|
|
370
|
+
name?: string,
|
|
306
371
|
/**
|
|
307
|
-
*
|
|
372
|
+
* A set of additional parameters that may be needed for the rendering purpose. For example, for CreateElement instruction, the payload can contain the tag name and parent information, so the Host can use this information to create the element in the correct place in the scene.
|
|
308
373
|
*/
|
|
309
|
-
|
|
374
|
+
payload?: T);
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
declare const AreSceneStatuses: {
|
|
378
|
+
Active: string;
|
|
379
|
+
Inactive: string;
|
|
380
|
+
Destroyed: string;
|
|
310
381
|
};
|
|
311
|
-
|
|
382
|
+
|
|
383
|
+
type AreSceneChanges = {
|
|
312
384
|
/**
|
|
313
|
-
*
|
|
385
|
+
* An array of instructions that are planned to be applied to the scene. These instructions represent the changes that will be made to the scene when they
|
|
314
386
|
*/
|
|
315
|
-
|
|
387
|
+
toApply: AreInstruction[];
|
|
316
388
|
/**
|
|
317
|
-
*
|
|
389
|
+
* An array of instructions that are planned to be reverted from the scene. These instructions represent the changes that will be undone from the scene when they are reverted, allowing for a rollback of changes if needed.
|
|
318
390
|
*/
|
|
319
|
-
|
|
391
|
+
toRevert: AreInstruction[];
|
|
392
|
+
};
|
|
393
|
+
type AreScene_Serialized = {
|
|
394
|
+
instructions: AreInstructionSerialized[];
|
|
395
|
+
} & A_TYPES__Fragment_Serialized;
|
|
396
|
+
type AreSceneStatusNames = typeof AreSceneStatuses[keyof typeof AreSceneStatuses];
|
|
397
|
+
|
|
398
|
+
declare class AreMutation<T extends Record<string, any> = Record<string, any>, S extends AreInstructionSerialized<T> = AreInstructionSerialized<T>> extends AreInstruction<T, S> {
|
|
399
|
+
get parent(): string;
|
|
400
|
+
get group(): string;
|
|
401
|
+
constructor(
|
|
320
402
|
/**
|
|
321
|
-
*
|
|
403
|
+
* Serialized form of the instruction, used for deserialization and reconstruction of the instruction instance. This allows for the instruction to be easily stored, transmitted, and recreated in different contexts or at different times, while maintaining all the necessary information and relationships intact.
|
|
322
404
|
*/
|
|
323
|
-
|
|
405
|
+
serialized: S);
|
|
406
|
+
constructor(
|
|
324
407
|
/**
|
|
325
|
-
* The
|
|
408
|
+
* The name of the operation to be performed in Host.
|
|
326
409
|
*/
|
|
327
|
-
|
|
410
|
+
name: string,
|
|
328
411
|
/**
|
|
329
|
-
*
|
|
412
|
+
* Parent instruction for grouping in case of mutations related to a specific declaration. This allows for better organization and management of instructions in the scene, as all mutations related to the same declaration will be executed together.
|
|
330
413
|
*/
|
|
331
|
-
|
|
332
|
-
|
|
414
|
+
parent: AreDeclaration,
|
|
415
|
+
/**
|
|
416
|
+
* A set of additional parameters that may be needed for the rendering purpose. For example, for AddAttribute instruction, the payload can contain the attribute name and value as a payload, so the Host can use this information to add the attribute to the node.
|
|
417
|
+
*/
|
|
418
|
+
payload?: T);
|
|
419
|
+
fromNew(newEntity: AreInstructionNewProps<T>): void;
|
|
420
|
+
}
|
|
333
421
|
|
|
334
|
-
declare class
|
|
422
|
+
declare class AreScene extends A_Fragment {
|
|
423
|
+
protected _groupToInstructionsMap: Map<string, Set<AreInstruction>>;
|
|
424
|
+
/**
|
|
425
|
+
* Plan is a queue of changes that should be applied to render the node
|
|
426
|
+
*
|
|
427
|
+
* It works as FIFO, so the first instruction that should be applied is the first one in the queue, and so on.
|
|
428
|
+
*/
|
|
429
|
+
protected _plan: Array<AreInstruction>;
|
|
430
|
+
/**
|
|
431
|
+
* State is a list of instructions that are currently applied to the node,
|
|
432
|
+
* so it represents the current state of the node in the scene.
|
|
433
|
+
*
|
|
434
|
+
* It always in a reverse order of the plan, so the last instruction in the state is the first one that should be reverted when we need to revert the changes, and so on.
|
|
435
|
+
*
|
|
436
|
+
* For example, if we have a node with two instructions in the plan: [Instruction A, Instruction B], and both of them are applied to the node, then the state will be [Instruction B, Instruction A], so when we need to revert the changes, we will revert Instruction B first, and then Instruction A.
|
|
437
|
+
*/
|
|
438
|
+
protected _state: Array<AreInstruction>;
|
|
439
|
+
protected _host: AreDeclaration | undefined;
|
|
335
440
|
/**
|
|
336
|
-
*
|
|
441
|
+
* Scene status is used to determine the current lifecycle stage of the scene, which can be 'active', 'inactive' or 'destroyed'. This status can be used to control the behavior of the scene and its instructions, for example, we can prevent applying new instructions to an inactive or destroyed scene, or we can trigger certain actions when the scene becomes active or inactive. The default status of the scene is 'inactive', which means that the scene is not yet rendered and its instructions are not applied, and it will become 'active' when it is mounted and its instructions are applied, and it will become 'destroyed' when it is unmounted and its instructions are reverted.
|
|
337
442
|
*/
|
|
338
|
-
protected
|
|
443
|
+
protected _status: AreSceneStatusNames;
|
|
339
444
|
constructor(
|
|
340
445
|
/**
|
|
341
|
-
*
|
|
446
|
+
* Scene identity will be used to identify mounting point in the parent scene
|
|
342
447
|
*/
|
|
343
|
-
|
|
448
|
+
id: string | ASEID);
|
|
344
449
|
/**
|
|
345
|
-
*
|
|
346
|
-
*
|
|
347
|
-
* @return {string} The root tag identifier.
|
|
450
|
+
* Scene ID that corresponds to the root node's ID (part of ASEID)
|
|
348
451
|
*/
|
|
349
|
-
get
|
|
452
|
+
get id(): string;
|
|
350
453
|
/**
|
|
351
|
-
*
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
454
|
+
* The scope where scene is registered. This scope is owned by AreNode
|
|
455
|
+
*/
|
|
456
|
+
get scope(): A_Scope;
|
|
457
|
+
/**
|
|
458
|
+
* The owner node of the scene, which is the node that registered the scene in its scope.
|
|
459
|
+
* This is typically the node that is responsible for rendering the scene and managing its lifecycle.
|
|
460
|
+
*/
|
|
461
|
+
get owner(): AreNode;
|
|
462
|
+
/**
|
|
463
|
+
* It's a primary declaration instruction that represents the node in the scene, so it should be registered as a host instruction for the scene, and it will be used to keep track of the node in the scene and to manage its lifecycle.
|
|
464
|
+
*/
|
|
465
|
+
get host(): AreDeclaration | undefined;
|
|
466
|
+
/**
|
|
467
|
+
* Scene status is used to determine the current lifecycle stage of the scene, which can be 'active', 'inactive' or 'destroyed'. This status can be used to control the behavior of the scene and its instructions, for example, we can prevent applying new instructions to an inactive or destroyed scene, or we can trigger certain actions when the scene becomes active or inactive. The default status of the scene is 'inactive', which means that the scene is not yet rendered and its instructions are not applied, and it will become 'active' when it is mounted and its instructions are applied, and it will become 'destroyed' when it is unmounted and its instructions are reverted.
|
|
468
|
+
*/
|
|
469
|
+
get status(): AreSceneStatusNames;
|
|
470
|
+
get isActive(): boolean;
|
|
471
|
+
get isInactive(): boolean;
|
|
472
|
+
/**
|
|
473
|
+
* Returns All declaration instructions are registered in the scene scope. Since declaration instructions are the main instructions that represent the structure of the node, we have a separate getter for them to easily access and manage them in the scene.
|
|
355
474
|
*/
|
|
356
|
-
get
|
|
475
|
+
get declarations(): AreDeclaration[];
|
|
357
476
|
/**
|
|
358
|
-
*
|
|
359
|
-
|
|
477
|
+
* Returns All mutation instructions are registered in the scene scope. Mutation instructions are the instructions that represent the changes to be applied to the node, so we have a separate getter for them to easily access and manage them in the scene, especially when we want to apply or revert changes based on the mutations.
|
|
478
|
+
*/
|
|
479
|
+
get mutations(): AreMutation[];
|
|
480
|
+
/**
|
|
481
|
+
* Returns All instructions are registered in the scene scope.
|
|
482
|
+
*/
|
|
483
|
+
get instructions(): AreInstruction[];
|
|
484
|
+
/**
|
|
485
|
+
* Plan is a queue of changes that should be applied to render the node
|
|
360
486
|
*
|
|
361
|
-
*
|
|
487
|
+
* It works as FIFO, so the first instruction that should be applied is the first one in the queue, and so on.
|
|
362
488
|
*/
|
|
363
|
-
get
|
|
489
|
+
get planned(): AreInstruction[];
|
|
364
490
|
/**
|
|
365
|
-
*
|
|
366
|
-
*
|
|
491
|
+
* State is a list of instructions that are currently applied to the node,
|
|
492
|
+
* so it represents the current state of the node in the scene.
|
|
367
493
|
*
|
|
368
|
-
*
|
|
494
|
+
* It always in a reverse order of the plan, so the last instruction in the state is the first one that should be reverted when we need to revert the changes, and so on.
|
|
495
|
+
*
|
|
496
|
+
* For example, if we have a node with two instructions in the plan: [Instruction A, Instruction B], and both of them are applied to the node, then the state will be [Instruction B, Instruction A], so when we need to revert the changes, we will revert Instruction B first, and then Instruction A.
|
|
369
497
|
*/
|
|
370
|
-
get
|
|
498
|
+
get applied(): AreInstruction[];
|
|
371
499
|
/**
|
|
372
|
-
*
|
|
373
|
-
*
|
|
374
|
-
*
|
|
500
|
+
* Should return instructions to be reverted and to be applied.
|
|
501
|
+
* A difference between plan vs state is that plan is what should be applied to the scene,
|
|
502
|
+
* while state is what currently applied to the scene.
|
|
503
|
+
*
|
|
375
504
|
*/
|
|
376
|
-
get
|
|
505
|
+
get changes(): AreSceneChanges;
|
|
506
|
+
activate(): void;
|
|
507
|
+
deactivate(): void;
|
|
377
508
|
/**
|
|
378
|
-
*
|
|
379
|
-
* Default is '@'.
|
|
509
|
+
* Each scene has a primary declaration instruction that represents the node in the scene, so it should be registered as a host instruction for the scene, and it will be used to keep track of the node in the scene and to manage its lifecycle. This method allows to set the host instruction for the scene, but it will throw an error if we try to set another host instruction while there is already a host instruction set, so we can ensure that there is only one host instruction for the scene at any given time.
|
|
380
510
|
*
|
|
381
|
-
* @
|
|
511
|
+
* @param instruction
|
|
382
512
|
*/
|
|
383
|
-
|
|
513
|
+
setHost(instruction: AreDeclaration): void;
|
|
384
514
|
/**
|
|
385
|
-
*
|
|
386
|
-
* When enabled, the parser will throw errors for any syntax violations.
|
|
387
|
-
* Default is true.
|
|
515
|
+
* Unsets the current host instruction from the scene.
|
|
388
516
|
*
|
|
389
|
-
*
|
|
517
|
+
* This method should be used when we want to remove the primary declaration instruction that represents the node in the scene, for example, when we want to unmount the node or when we want to replace it with another node. Unsetting the host instruction will allow us to set a new host instruction for the scene if needed.
|
|
390
518
|
*/
|
|
391
|
-
|
|
519
|
+
removeHost(): void;
|
|
392
520
|
/**
|
|
393
|
-
*
|
|
394
|
-
* When enabled, leading and trailing whitespace in template expressions will be trimmed.
|
|
395
|
-
* Default is true.
|
|
521
|
+
* Method that should register the instruction in the plan, so it will be rendered in the next render cycle.
|
|
396
522
|
*
|
|
397
|
-
* @
|
|
523
|
+
* @param instruction
|
|
398
524
|
*/
|
|
399
|
-
|
|
525
|
+
plan(instruction: AreInstruction): void;
|
|
526
|
+
planBefore(instruction: AreInstruction, beforeInstruction: AreInstruction): void;
|
|
527
|
+
planAfter(instruction: AreInstruction, afterInstruction: AreInstruction): void;
|
|
528
|
+
moveBefore(instruction: AreInstruction, beforeInstruction: AreInstruction): void;
|
|
529
|
+
moveAfter(instruction: AreInstruction, afterInstruction: AreInstruction): void;
|
|
400
530
|
/**
|
|
401
|
-
*
|
|
402
|
-
* Default is '$'.
|
|
531
|
+
* Allows to remove instruction from the plan, so it will not be rendered anymore, but it will still be registered in the scene scope, so it can be planned again if needed.
|
|
403
532
|
*
|
|
404
|
-
* @
|
|
533
|
+
* @param instruction
|
|
405
534
|
*/
|
|
406
|
-
|
|
407
|
-
get customDirectives(): string[];
|
|
408
|
-
}
|
|
409
|
-
|
|
410
|
-
declare class AreSyntax extends A_Component {
|
|
411
|
-
get config(): AreSyntaxContext;
|
|
535
|
+
unPlan(instruction: AreInstruction): void;
|
|
412
536
|
/**
|
|
413
|
-
*
|
|
537
|
+
* Checks if the instruction is already in the plan, so it will be rendered in the next render cycle.
|
|
414
538
|
*
|
|
415
|
-
* @param
|
|
539
|
+
* @param instruction
|
|
416
540
|
* @returns
|
|
417
541
|
*/
|
|
418
|
-
|
|
542
|
+
getPlanned(instruction: AreInstruction): AreInstruction | undefined;
|
|
419
543
|
/**
|
|
420
|
-
*
|
|
544
|
+
* Checks if the instruction is already in the plan, so it will be rendered in the next render cycle.
|
|
421
545
|
*
|
|
422
|
-
* @param
|
|
546
|
+
* @param instruction
|
|
423
547
|
* @returns
|
|
424
548
|
*/
|
|
425
|
-
|
|
549
|
+
isInPlan(instruction: AreInstruction): boolean;
|
|
426
550
|
/**
|
|
427
|
-
*
|
|
551
|
+
* Method moves the instruction to state to keep it applied and to be able to revert it later if needed. The instruction should be already registered in the scene scope and planned to be applied, otherwise it will not be applied.
|
|
428
552
|
*
|
|
429
|
-
* @
|
|
553
|
+
* @param instruction
|
|
430
554
|
*/
|
|
431
|
-
|
|
555
|
+
apply(instruction: AreInstruction): void;
|
|
432
556
|
/**
|
|
433
|
-
*
|
|
434
|
-
*
|
|
435
|
-
* Simply finds all interpolation patterns and returns their position, raw text, and name.
|
|
436
|
-
* Works with any template format - HTML, plain text, or any other syntax.
|
|
437
|
-
*
|
|
438
|
-
* Example: `Hello {{name}}, welcome to {{place}}!`
|
|
439
|
-
* Returns: [
|
|
440
|
-
* { raw: "{{name}}", name: "name", position: 6 },
|
|
441
|
-
* { raw: "{{place}}", name: "place", position: 26 }
|
|
442
|
-
* ]
|
|
557
|
+
* Method moves the instruction from state to unapply it and to be able to apply it later if needed. The instruction should be already registered in the scene scope and applied, otherwise it will not be unapplied.
|
|
443
558
|
*
|
|
444
|
-
* @param
|
|
559
|
+
* @param instruction
|
|
445
560
|
*/
|
|
446
|
-
|
|
561
|
+
unApply(instruction: AreInstruction): void;
|
|
447
562
|
/**
|
|
448
|
-
*
|
|
449
|
-
* Directives start with `$`
|
|
450
|
-
*
|
|
451
|
-
* Examples:
|
|
452
|
-
* $if="condition"
|
|
453
|
-
* $show
|
|
454
|
-
* $no-update=""
|
|
563
|
+
* Checks if the instruction is already in the state, so it is currently applied to the scene.
|
|
455
564
|
*
|
|
456
|
-
*
|
|
457
|
-
*
|
|
565
|
+
* @param instruction
|
|
566
|
+
* @returns
|
|
458
567
|
*/
|
|
459
|
-
|
|
568
|
+
getApplied(instruction: AreInstruction): AreInstruction | undefined;
|
|
460
569
|
/**
|
|
461
|
-
*
|
|
462
|
-
*
|
|
463
|
-
* Examples:
|
|
464
|
-
* label="Click"
|
|
465
|
-
* :label="'Click Me'"
|
|
570
|
+
* Checks if the instruction is already in the state, so it is currently applied to the scene.
|
|
466
571
|
*
|
|
467
|
-
*
|
|
468
|
-
*
|
|
469
|
-
* $if
|
|
572
|
+
* @param instruction
|
|
573
|
+
* @returns
|
|
470
574
|
*/
|
|
471
|
-
|
|
575
|
+
isApplied(instruction: AreInstruction): boolean;
|
|
472
576
|
/**
|
|
473
|
-
*
|
|
474
|
-
* Supports:
|
|
475
|
-
* - @event="handler"
|
|
476
|
-
* - @event='handler'
|
|
577
|
+
* Method that should reset the scene to the initial state, so it will clear the plan and state, but it will not deregister the instructions from the scene scope, so they will still be registered in the scene and can be planned and applied again if needed.
|
|
477
578
|
*
|
|
478
|
-
* Note: This method intentionally ignores nested elements and only processes
|
|
479
|
-
* the very first opening tag in the provided template string.
|
|
480
579
|
*/
|
|
481
|
-
|
|
482
|
-
isBindingProp(prop: AreAttribute): boolean;
|
|
483
|
-
extractPropValue(prop: AreAttribute, parentStore: AreStore): any;
|
|
484
|
-
replaceInterpolation(template: string, interpolation: AreInterpolation | string, value: any): string;
|
|
580
|
+
reset(): void;
|
|
485
581
|
}
|
|
486
582
|
|
|
487
|
-
declare
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
583
|
+
declare const AreAttributeFeatures: {
|
|
584
|
+
/**
|
|
585
|
+
* Initializes the attribute. This method is called when the attribute is first created and should set up any necessary state or perform any initial processing based on the provided content and context. It can also be used to validate the attribute's content and throw errors if it is invalid.
|
|
586
|
+
*/
|
|
587
|
+
readonly Init: "_AreAttribute_Init";
|
|
588
|
+
/**
|
|
589
|
+
* Uses to generate all rendering instructions for the attribute. This method is called during the compilation phase of the ARE component and should return an array of instructions that describe how to render the attribute based on its content and context. The instructions can include details such as which DOM properties to set, which events to listen for, and how to update the attribute when the underlying data changes.
|
|
590
|
+
*/
|
|
591
|
+
readonly Transform: "_AreAttribute_Transform";
|
|
592
|
+
/**
|
|
593
|
+
* Feature that should convert a directiveAttribute definition into a set of SceneInstructions to be rendered correctly
|
|
594
|
+
*/
|
|
595
|
+
readonly Compile: "_AreAttribute_Compile";
|
|
596
|
+
/**
|
|
597
|
+
* Feature that should update the directiveAttribute based on the changes in the store or other dependencies. This method is called during the update phase of the ARE component and should perform any necessary updates to the attribute based on changes in the underlying data or context. This can include tasks such as updating DOM properties, re-evaluating expressions, or modifying event listeners to ensure that the attribute remains in sync with the current state of the application.
|
|
598
|
+
*/
|
|
599
|
+
readonly Update: "_AreAttribute_Update";
|
|
600
|
+
/**
|
|
601
|
+
* Feature that should validate the attribute's content and context. This method is called during the validation phase of the ARE component and should check whether the attribute's content is valid based on its expected format, type, or other constraints. If the content is invalid, this method should throw an error with a descriptive message to help developers identify and fix the issue.
|
|
602
|
+
*/
|
|
603
|
+
readonly Validate: "_AreAttribute_Validate";
|
|
604
|
+
};
|
|
492
605
|
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
606
|
+
/**
|
|
607
|
+
* This file defines the types for the AreAttribute entity, which represents an attribute of a node in the ARE (Adaptive Rendering Engine) framework. The AreAttribute entity is responsible for managing the details of an attribute, such as its name, raw content, and value, as well as providing methods for initializing, transforming, compiling, updating, and validating the attribute based on its content and context. The types defined in this file include the initialization properties for creating a new AreAttribute instance, the serialized format for storing or transmitting an AreAttribute instance, and the names of the features that can be implemented by the AreAttribute entity.
|
|
608
|
+
*/
|
|
609
|
+
type AreAttribute_Init = {
|
|
610
|
+
/**
|
|
611
|
+
* Property name (e.g. "label")
|
|
612
|
+
*/
|
|
613
|
+
name: string;
|
|
614
|
+
/**
|
|
615
|
+
* Full raw attribute (e.g. ' :label="buttonLabel" ')
|
|
616
|
+
*/
|
|
617
|
+
raw: string;
|
|
618
|
+
/**
|
|
619
|
+
* Attribute content (e.g. "buttonLabel")
|
|
620
|
+
*/
|
|
621
|
+
content: string;
|
|
622
|
+
/**
|
|
623
|
+
* The prefix of the attribute, for example for ':label' it would be ':', for 'v-if' it would be 'v-'. This can be used to determine the type of the attribute and how to process it.
|
|
624
|
+
*/
|
|
625
|
+
prefix: string;
|
|
626
|
+
};
|
|
627
|
+
/**
|
|
628
|
+
* The evaluated value of the attribute, which can be different from the raw value depending on the context and type of the attribute. For example, for a directive like `v-if="condition"`, the raw value is "condition", but the evaluated value would be the result of evaluating "condition" in the current scope.
|
|
629
|
+
*/
|
|
630
|
+
type AreAttribute_Serialized = {
|
|
631
|
+
/**
|
|
632
|
+
* Property name (e.g. "label")
|
|
633
|
+
*/
|
|
634
|
+
name: string;
|
|
635
|
+
/**
|
|
636
|
+
* Full raw attribute (e.g. ' :label="buttonLabel" ')
|
|
637
|
+
*/
|
|
638
|
+
raw: string;
|
|
639
|
+
/**
|
|
640
|
+
* Attribute value (e.g. "buttonLabel")
|
|
641
|
+
*/
|
|
642
|
+
value: string;
|
|
643
|
+
} & A_TYPES__Entity_Serialized;
|
|
644
|
+
/**
|
|
645
|
+
* The names of the features that can be implemented by the AreAttribute entity. These features correspond to specific methods that can be defined on the AreAttribute class to provide custom behavior for initializing, transforming, compiling, updating, and validating the attribute based on its content and context. Each feature name is associated with a specific method that should be implemented to handle the corresponding aspect of the attribute's lifecycle and behavior within the ARE framework.
|
|
646
|
+
*/
|
|
647
|
+
type AreAttributeFeatureNames = typeof AreAttributeFeatures[keyof typeof AreAttributeFeatures];
|
|
501
648
|
|
|
502
|
-
declare class
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
649
|
+
declare class AreAttribute extends A_Entity<AreAttribute_Init, AreAttribute_Serialized> {
|
|
650
|
+
/**
|
|
651
|
+
* Property name (e.g. "label")
|
|
652
|
+
*/
|
|
653
|
+
name: string;
|
|
654
|
+
/**
|
|
655
|
+
* Full raw attribute (e.g. ' :label="buttonLabel" ')
|
|
656
|
+
*/
|
|
657
|
+
raw: string;
|
|
658
|
+
/**
|
|
659
|
+
* Attribute content (e.g. "buttonLabel")
|
|
660
|
+
* Example: For a directive like `v-if="condition"`, the raw value is "condition", but the content would be "condition" without the quotes, and the value would be the result of evaluating "condition" in the current scope.
|
|
661
|
+
*/
|
|
662
|
+
content: string;
|
|
663
|
+
/**
|
|
664
|
+
* The evaluated value of the attribute, which can be different from the raw value depending on the context and type of the attribute. For example, for a directive like `v-if="condition"`, the raw value is "condition", but the evaluated value would be the result of evaluating "condition" in the current scope.
|
|
665
|
+
*/
|
|
666
|
+
value: any;
|
|
667
|
+
/**
|
|
668
|
+
* The prefix of the attribute, for example for ':label' it would be ':', for 'v-if' it would be 'v-'. This can be used to determine the type of the attribute and how to process it.
|
|
669
|
+
*/
|
|
670
|
+
prefix: string;
|
|
671
|
+
/**
|
|
672
|
+
* The scope where the attribute is defined, which can be used to access other entities and features within the same scope. This is particularly useful for attributes that need to interact with other parts of the scene or component, as it allows them to access shared data and functionality without needing to pass it explicitly through parameters.
|
|
673
|
+
*/
|
|
674
|
+
get scope(): A_Scope<any, _adaas_a_concept.A_TYPES__Component_Constructor<_adaas_a_concept.A_Component>[], _adaas_a_concept.A_TYPES__Error_Constructor<_adaas_a_concept.A_Error<_adaas_a_concept.A_TYPES__Error_Init, _adaas_a_concept.A_TYPES__Error_Serialized>>[], _adaas_a_concept.A_TYPES__Entity_Constructor<A_Entity<any, _adaas_a_concept.A_TYPES__Entity_Serialized>>[], _adaas_a_concept.A_Fragment<_adaas_a_concept.A_TYPES__Fragment_Serialized>[]>;
|
|
675
|
+
/**
|
|
676
|
+
* The owner node of the attribute, which is the node that the attribute is attached to. This can be used to access the properties and features of the owner node, as well as to determine the context in which the attribute is being used. For example, if the attribute is attached to a button element, the owner would be that button node, and the attribute could use this information to modify the button's behavior or appearance based on its content and context.
|
|
677
|
+
*/
|
|
678
|
+
get owner(): AreNode;
|
|
679
|
+
/**
|
|
680
|
+
* Initializes the attribute based on the provided properties. This method is called when a new attribute is created and should set up the attribute's state based on the provided properties. It can also be used to generate a unique ASEID for the attribute based on its name and content, which can be used for caching and identification purposes within the ARE framework.
|
|
681
|
+
*
|
|
682
|
+
* @param newEntity
|
|
683
|
+
*/
|
|
684
|
+
fromNew(newEntity: AreAttribute_Init): void;
|
|
685
|
+
/**
|
|
686
|
+
* Creates a clone of the current attribute instance. This method can be used to create a new instance of the attribute with the same properties and state as the original, which can be useful in scenarios where you want to reuse an attribute's configuration or create variations of it without modifying the original instance.
|
|
687
|
+
*
|
|
688
|
+
* @returns
|
|
689
|
+
*/
|
|
690
|
+
clone(): this;
|
|
691
|
+
/**
|
|
692
|
+
* Initializes the attribute. This method is called when the attribute is first created and should set up any necessary state or perform any initial processing based on the provided content and context. It can also be used to validate the attribute's content and throw errors if it is invalid.
|
|
693
|
+
*
|
|
694
|
+
* @param scope
|
|
695
|
+
*/
|
|
696
|
+
init(scope?: A_Scope): void;
|
|
697
|
+
/**
|
|
698
|
+
* Generates all rendering instructions for the attribute. This method is called during the compilation phase of the ARE component and should return an array of instructions that describe how to render the attribute based on its content and context. The instructions can include details such as which DOM properties to set, which events to listen for, and how to update the attribute when the underlying data changes.
|
|
699
|
+
*
|
|
700
|
+
* @param scope
|
|
701
|
+
*/
|
|
702
|
+
transform(scope?: A_Scope): void;
|
|
703
|
+
/**
|
|
704
|
+
* Compiles the attribute. This method should transform attribute details into a set of SceneInstructions. It may also modify attribute value, since this field is editable during runtime.
|
|
705
|
+
*
|
|
706
|
+
* @param scope
|
|
707
|
+
*/
|
|
708
|
+
compile(scope?: A_Scope): void;
|
|
709
|
+
/**
|
|
710
|
+
* Updates the attribute based on changes in the store or other dependencies. This method is called during the update phase of the ARE component and should perform any necessary updates to the attribute based on changes in the underlying data or context. This can include tasks such as updating DOM properties, re-evaluating expressions, or modifying event listeners to ensure that the attribute remains in sync with the current state of the application.
|
|
711
|
+
*
|
|
712
|
+
* @param scope
|
|
713
|
+
*/
|
|
714
|
+
update(scope?: A_Scope): void;
|
|
715
|
+
/**
|
|
716
|
+
* Validates the attribute's content and context. This method is called during the validation phase of the ARE component and should check whether the attribute's content is valid based on its expected format, type, or other constraints. If the content is invalid, this method should throw an error with a descriptive message to help developers identify and fix the issue.
|
|
717
|
+
*
|
|
718
|
+
* @param scope
|
|
719
|
+
*/
|
|
720
|
+
validate(scope?: A_Scope): void;
|
|
507
721
|
}
|
|
508
722
|
|
|
509
|
-
declare class
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
723
|
+
declare class AreStore<T extends Record<string, any> = Record<string, any>> extends A_ExecutionContext<T> {
|
|
724
|
+
protected dependencies: Map<string, Set<AreStoreWatchingEntity>>;
|
|
725
|
+
protected _keys: Set<keyof T>;
|
|
726
|
+
/**
|
|
727
|
+
* Allows to define a pure function that will be executed in the context of the store, so it can access the store's data and methods, but it won't have access to the component's scope or other features. This can be useful for example for defining a function that will update the store's data based on some logic, without having access to the component's scope or other features, so we can keep the store's logic separate from the component's logic.
|
|
728
|
+
*/
|
|
729
|
+
static get Function(): <T extends Are>(target: T, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
|
|
730
|
+
get owner(): AreNode;
|
|
731
|
+
get parent(): AreStore | undefined;
|
|
732
|
+
get context(): AreContext;
|
|
733
|
+
constructor(aseid: ASEID | string);
|
|
734
|
+
get watchers(): Set<AreStoreWatchingEntity>;
|
|
735
|
+
get keys(): Set<keyof T>;
|
|
736
|
+
watch(instruction: AreStoreWatchingEntity): void;
|
|
737
|
+
unwatch(instruction: AreStoreWatchingEntity): void;
|
|
738
|
+
set<K extends keyof T>(values: Partial<T>): this;
|
|
739
|
+
set<P extends A_TYPES__Paths<T>>(key: P, value: AreStorePathValue<T, P>): this;
|
|
740
|
+
get<K extends keyof T>(key: K): T[K] | undefined;
|
|
741
|
+
protected setAsObject(values: Partial<T>): this;
|
|
742
|
+
protected setAsKeyValue<K extends keyof T, P extends A_TYPES__Paths<T>>(key: K | P, value: T[K] | AreStorePathValue<T, P>): this;
|
|
743
|
+
/**
|
|
744
|
+
* Notifies instructions — immediately or deferred if inside a batch.
|
|
745
|
+
*/
|
|
746
|
+
private notify;
|
|
747
|
+
/**
|
|
748
|
+
* Removes an instruction from all dependency sets.
|
|
749
|
+
* Called when an instruction is reverted/destroyed.
|
|
750
|
+
*/
|
|
751
|
+
unregister(instruction: AreStoreWatchingEntity): void;
|
|
752
|
+
/**
|
|
753
|
+
* Normalizes a path once — reused in both get and set.
|
|
754
|
+
*/
|
|
755
|
+
private normalizePath;
|
|
756
|
+
/**
|
|
757
|
+
* Extracts direct children of the current markup level into typed instances.
|
|
758
|
+
* No tree walking, recursion, or nested parsing — just direct children.
|
|
759
|
+
*/
|
|
760
|
+
extractPathSegments(path: string): string[];
|
|
761
|
+
/**
|
|
762
|
+
* Method allows to initialize all extensions defined in the component with @AreStore.Function decorator, so we can use them in the store's context. This method should be called in the component's constructor after super() call, so the store will have access to the component's instance and its properties.
|
|
763
|
+
*
|
|
764
|
+
* @param component
|
|
765
|
+
*/
|
|
766
|
+
loadExtensions(component: Are): void;
|
|
516
767
|
}
|
|
517
768
|
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
769
|
+
interface AreSyntaxTokenRules<T extends AreNode = AreNode> {
|
|
770
|
+
/** Opening delimiter e.g. '<', '{{', '<!--', '{' */
|
|
771
|
+
opening?: string;
|
|
772
|
+
/** Closing delimiter e.g. '>', '}}', '-->', '}' */
|
|
773
|
+
closing?: string;
|
|
774
|
+
/** Optional self-closing marker e.g. '/>' */
|
|
775
|
+
selfClosing?: string;
|
|
776
|
+
/** Regex that must match content immediately before the opening delimiter */
|
|
777
|
+
prefix?: RegExp;
|
|
778
|
+
/** Replaces open/close entirely — matches entire pattern via RegExp */
|
|
779
|
+
pattern?: RegExp;
|
|
780
|
+
/**
|
|
781
|
+
* Fully custom matcher — complete control over how a token is found.
|
|
782
|
+
* Receives (source, from, to, build) where build(raw, content, position, closing)
|
|
783
|
+
* constructs the AreSyntaxTokenMatch. Return null if no match found.
|
|
784
|
+
*/
|
|
785
|
+
matcher?: (source: string, from: number, to: number, build: (raw: string, content: string, position: number, closing: string) => AreSyntaxTokenMatch) => AreSyntaxTokenMatch | null;
|
|
786
|
+
/** Constructor to instantiate when this rule matches */
|
|
787
|
+
component: A_TYPES__Entity_Constructor<T>;
|
|
788
|
+
/** Higher = checked first. Default: 0 */
|
|
789
|
+
priority?: number;
|
|
790
|
+
/** Whether this token can contain nested tokens of same open/close. Default: true */
|
|
791
|
+
nested?: boolean;
|
|
792
|
+
/** Custom data extractor — called after match, result stored in match.meta */
|
|
793
|
+
extract?: (raw: string, match: AreSyntaxTokenMatch) => Record<string, any>;
|
|
528
794
|
}
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
795
|
+
type AreSyntaxTokenPayload = {
|
|
796
|
+
/**
|
|
797
|
+
* Allows to override ASEID generation for this token match. Useful when the token corresponds to an existing entity or needs a stable ID across parses. If not provided, ASEID will be generated based on position and content.
|
|
798
|
+
*/
|
|
799
|
+
id?: string;
|
|
800
|
+
/**
|
|
801
|
+
* Allows to override the entity type for this token match. Useful when the token corresponds to an existing entity or needs a specific entity type across parses. If not provided, the entity type will be inferred from the token.
|
|
802
|
+
*/
|
|
803
|
+
entity?: string;
|
|
804
|
+
/**
|
|
805
|
+
* Allows to override the scope for this token match. Useful when the token corresponds to an existing entity or needs a specific scope across parses. If not provided, the scope will be generated based on position and content.
|
|
806
|
+
*/
|
|
807
|
+
scope?: string;
|
|
808
|
+
[key: string]: any;
|
|
809
|
+
};
|
|
810
|
+
interface AreSyntaxTokenMatch {
|
|
811
|
+
/** Full matched string including delimiters */
|
|
812
|
+
raw: string;
|
|
813
|
+
/** Content between delimiters */
|
|
814
|
+
content: string;
|
|
815
|
+
/** The opening delimiter that matched */
|
|
816
|
+
opening: string;
|
|
817
|
+
/** The closing delimiter that matched */
|
|
818
|
+
closing: string;
|
|
819
|
+
/** Start position in source string */
|
|
820
|
+
position: number;
|
|
821
|
+
/** Data extracted via rule.extract */
|
|
822
|
+
payload: AreSyntaxTokenPayload;
|
|
823
|
+
/** @internal – the rule that produced this match (used by instantiate) */
|
|
824
|
+
_rule?: AreSyntaxTokenRules;
|
|
533
825
|
}
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
826
|
+
interface AreSyntaxInitOptions {
|
|
827
|
+
/**
|
|
828
|
+
* Array of token rules defining the syntax to be parsed. Each rule specifies how to identify and process a particular type of token (e.g. interpolation, directive, comment) within templates. The rules are checked in order of priority, allowing for flexible and customizable parsing behavior.
|
|
829
|
+
*/
|
|
830
|
+
rules: AreSyntaxTokenRules[];
|
|
831
|
+
/**
|
|
832
|
+
* Whether to trim leading/trailing whitespace from token content. Default: true. When enabled, any whitespace at the start or end of the content captured by a token will be removed before further processing. This can help prevent issues with unintended spaces affecting rendering or logic, especially in cases like interpolations or directives where extra whitespace may be common.
|
|
833
|
+
*/
|
|
834
|
+
trimWhitespace?: boolean;
|
|
835
|
+
/** Throw on unclosed tokens. Default: true */
|
|
836
|
+
strictMode?: boolean;
|
|
540
837
|
}
|
|
838
|
+
type AreSyntaxCompiledExpression = {
|
|
839
|
+
execute: (store: AreStore, scope?: Record<string, any>) => any;
|
|
840
|
+
isCallable: boolean;
|
|
841
|
+
};
|
|
541
842
|
|
|
542
|
-
declare
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
843
|
+
declare const AreNodeFeatures: {
|
|
844
|
+
/**
|
|
845
|
+
* Feature that is called to handle before init lifecycle of the element node
|
|
846
|
+
*/
|
|
847
|
+
readonly onBeforeInit: "_AreNode_onBeforeInit";
|
|
848
|
+
/**
|
|
849
|
+
* Feature that is called to init the element node
|
|
850
|
+
*/
|
|
851
|
+
readonly onInit: "_AreNode_onInit";
|
|
852
|
+
/**
|
|
853
|
+
*
|
|
854
|
+
*/
|
|
855
|
+
readonly onAfterInit: "_AreNode_onAfterInit";
|
|
856
|
+
/**
|
|
857
|
+
* Feature that is called to handle before mount lifecycle of the element node
|
|
858
|
+
*/
|
|
859
|
+
readonly onBeforeMount: "_AreNode_onBeforeMount";
|
|
860
|
+
/**
|
|
861
|
+
* Feature that is called to mount the element node
|
|
862
|
+
*/
|
|
863
|
+
readonly onMount: "_AreNode_onMount";
|
|
864
|
+
/**
|
|
865
|
+
* Feature that is called to handle after mount lifecycle of the element node
|
|
866
|
+
*/
|
|
867
|
+
readonly onAfterMount: "_AreNode_onAfterMount";
|
|
868
|
+
/**
|
|
869
|
+
* Feature that is called to handle before update lifecycle of the element node
|
|
870
|
+
*/
|
|
871
|
+
readonly onBeforeUpdate: "_AreNode_onBeforeUpdate";
|
|
872
|
+
/**
|
|
873
|
+
* Feature that is called to handle update lifecycle of the element node
|
|
874
|
+
*/
|
|
875
|
+
readonly onUpdate: "_AreNode_onUpdate";
|
|
876
|
+
/**
|
|
877
|
+
* Feature that is called to handle after update lifecycle of the element node
|
|
878
|
+
*/
|
|
879
|
+
readonly onAfterUpdate: "_AreNode_onAfterUpdate";
|
|
880
|
+
/**
|
|
881
|
+
* Feature that is called to handle before unmount lifecycle of the element node
|
|
882
|
+
*/
|
|
883
|
+
readonly onBeforeUnmount: "_AreNode_onBeforeUnmount";
|
|
884
|
+
/**
|
|
885
|
+
* Feature that is called to unmount the element node
|
|
886
|
+
*/
|
|
887
|
+
readonly onUnmount: "_AreNode_onUnmount";
|
|
888
|
+
/**
|
|
889
|
+
* Feature that is called to handle after unmount lifecycle of the element node
|
|
890
|
+
*/
|
|
891
|
+
readonly onAfterUnmount: "_AreNode_onAfterUnmount";
|
|
892
|
+
/**
|
|
893
|
+
* Feature that is called to handle before destroy lifecycle of the element node
|
|
894
|
+
*/
|
|
895
|
+
readonly onBeforeDestroy: "_AreNode_onBeforeDestroy";
|
|
896
|
+
/**
|
|
897
|
+
* Feature that is called to handle before destroy lifecycle of the element node
|
|
898
|
+
*/
|
|
899
|
+
readonly onDestroy: "_AreNode_onDestroy";
|
|
900
|
+
/**
|
|
901
|
+
* Feature that is called to handle after destroy lifecycle of the element node
|
|
902
|
+
*/
|
|
903
|
+
readonly onAfterDestroy: "_AreNode_onAfterDestroy";
|
|
904
|
+
/**
|
|
905
|
+
* Feature that is called to tokenize the element node template and extract its content, attributes, and child nodes.
|
|
906
|
+
*/
|
|
907
|
+
readonly onTokenize: "_AreNode_onTokenize";
|
|
908
|
+
/**
|
|
909
|
+
* Feature that is called to transform the element node template, markup, styles, and data into a format that can be used for compilation. This feature is responsible for processing the raw template and extracting the necessary information to create the render plan and instructions for the node.
|
|
910
|
+
*/
|
|
911
|
+
readonly onTransform: "_AreNode_onTransform";
|
|
912
|
+
/**
|
|
913
|
+
* Event fired when the element node is interpreted
|
|
914
|
+
*/
|
|
915
|
+
readonly onInterpret: "_AreNode_onInterpret";
|
|
916
|
+
/**
|
|
917
|
+
* Feature that is called to compile the element node
|
|
918
|
+
*/
|
|
919
|
+
readonly onCompile: "_AreNode_onCompile";
|
|
920
|
+
/**
|
|
921
|
+
* Feature that is called to handle events
|
|
922
|
+
*/
|
|
923
|
+
readonly onEmit: "_AreNode_onEmit";
|
|
924
|
+
};
|
|
925
|
+
declare const AreNodeStatuses: {
|
|
926
|
+
/**
|
|
927
|
+
* Status indicating that the node is pending compilation. When a node is in the pending status, it means that it has been created but has not yet been compiled. During this phase, the node is typically being prepared for compilation, which may involve setting up its template, markup, styles, and any associated data or context. Once the node is ready for compilation, its status will change to "compiling".
|
|
928
|
+
*/
|
|
929
|
+
readonly Pending: "pending";
|
|
930
|
+
/**
|
|
931
|
+
* Status indicating that the node is in the process of being compiled. During this status, the node is being analyzed and transformed based on its template, markup, and styles to generate the necessary instructions for rendering and updating the node in the scene.
|
|
932
|
+
*/
|
|
933
|
+
readonly Compiling: "compiling";
|
|
934
|
+
/**
|
|
935
|
+
* Status indicating that the node has been compiled and is ready to be rendered. In this status, the node has generated all the necessary instructions and is prepared to be mounted in the scene.
|
|
936
|
+
*/
|
|
937
|
+
readonly Compiled: "compiled";
|
|
938
|
+
/**
|
|
939
|
+
* Status indicating that the node is currently mounted in the scene. When a node is mounted, it means that it has been rendered and is actively part of the scene's structure and content.
|
|
940
|
+
*/
|
|
941
|
+
readonly Mounted: "mounted";
|
|
942
|
+
/**
|
|
943
|
+
* Status indicating that the node has been unmounted from the scene. When a node is unmounted, it means that it has been removed from the scene's structure and content, and is no longer actively rendered in the scene.
|
|
944
|
+
*/
|
|
945
|
+
readonly Unmounted: "unmounted";
|
|
946
|
+
};
|
|
553
947
|
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
constructor(node: AreNode, path: string);
|
|
558
|
-
}
|
|
948
|
+
type AreNodeNewProps = AreSyntaxTokenMatch;
|
|
949
|
+
type AreNodeFeatureNames = typeof AreNodeFeatures[keyof typeof AreNodeFeatures];
|
|
950
|
+
type AreNodeStatusNames = typeof AreNodeStatuses[keyof typeof AreNodeStatuses];
|
|
559
951
|
|
|
560
|
-
declare
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
952
|
+
declare class AreNode extends A_Entity<AreNodeNewProps> {
|
|
953
|
+
/**
|
|
954
|
+
* The current status of the node, which can be used to track the lifecycle and rendering state of the node within the scene.
|
|
955
|
+
*/
|
|
956
|
+
status: AreNodeStatusNames;
|
|
957
|
+
/**
|
|
958
|
+
* The opening string that defines the start of a node in the source. This is typically used for parsing and tokenizing the source to identify the structure and content of the node. The opening string can include the tag name, attributes, and other syntax that indicates the beginning of a node.
|
|
959
|
+
*/
|
|
960
|
+
protected _opening: string;
|
|
961
|
+
/**
|
|
962
|
+
* The closing string that defines the end of a node in the source. This is typically used for parsing and tokenizing the source to identify the structure and content of the node. The closing string can include the tag name, attributes, and other syntax that indicates the end of a node.
|
|
963
|
+
*/
|
|
964
|
+
protected _closing: string;
|
|
965
|
+
/**
|
|
966
|
+
* The position of the node in the source string, which can be used for error reporting, debugging, and other purposes related to tracking the location of the node within the original source. The position is a character index identifying where the node is defined.
|
|
967
|
+
*/
|
|
968
|
+
protected _position: number;
|
|
969
|
+
/**
|
|
970
|
+
* The payload associated with the node, which can include any additional data or metadata that is extracted during the tokenization process. The payload can be used to store custom information related to the node, such as directive arguments, binding expressions, or any other relevant data that may be needed for processing and rendering the node within the scene.
|
|
971
|
+
*/
|
|
972
|
+
protected _payload?: AreSyntaxTokenPayload;
|
|
973
|
+
/**
|
|
974
|
+
* Content string defined for the node — the inner content between delimiters.
|
|
975
|
+
* Example: `{{name}}`
|
|
976
|
+
*/
|
|
977
|
+
protected _content: string;
|
|
978
|
+
/**
|
|
979
|
+
* Markup string defined for the node
|
|
980
|
+
* Example: `<custom-component :prop="value"> <div>Inner Content</div> </custom-component>`
|
|
981
|
+
*/
|
|
982
|
+
protected _markup: string;
|
|
983
|
+
/**
|
|
984
|
+
* The scope associated with this node
|
|
985
|
+
* uses to store all nested fragments and entities like other AreNodes and Scene
|
|
986
|
+
*/
|
|
987
|
+
protected _scope: A_Scope;
|
|
988
|
+
/**
|
|
989
|
+
* Actual node identifier.
|
|
990
|
+
*/
|
|
991
|
+
get id(): string;
|
|
992
|
+
/**
|
|
993
|
+
* Actual node type.
|
|
994
|
+
* By default it's a tag name
|
|
995
|
+
*/
|
|
996
|
+
get type(): string;
|
|
997
|
+
/**
|
|
998
|
+
* Content string defined for the node — the inner content between delimiters.
|
|
999
|
+
* Example: `{{name}}`
|
|
1000
|
+
*/
|
|
1001
|
+
get content(): string;
|
|
1002
|
+
/**
|
|
1003
|
+
* Markup string defined for the node
|
|
1004
|
+
* Example: `<custom-component :prop="value"> <div>Inner Content</div> </custom-component>`
|
|
1005
|
+
*/
|
|
1006
|
+
get markup(): string;
|
|
1007
|
+
/**
|
|
1008
|
+
* The scope associated with this node
|
|
1009
|
+
* uses to store all nested fragments and entities like other AreNodes and Scene
|
|
1010
|
+
*/
|
|
1011
|
+
get scope(): A_Scope;
|
|
1012
|
+
/**
|
|
1013
|
+
* The attributes defined for the node, which can include static attributes, binding attributes, directive attributes, and event attributes. These attributes are extracted during tokenization and processed during the compilation phase to generate the corresponding SceneInstructions for rendering and updating the node in the scene.
|
|
1014
|
+
*/
|
|
1015
|
+
get attributes(): AreAttribute[];
|
|
1016
|
+
/**
|
|
1017
|
+
* A custom component associated with this node, which can be used to provide custom logic and behavior for the node. This component is typically defined in the context and can be resolved based on the node's type or other identifying information. The component can include its own content, markup, styles, and features that are specific to the functionality it provides.
|
|
1018
|
+
*
|
|
1019
|
+
* Example: If the node type is "custom-component", the corresponding component would be resolved from the context and can be used to provide custom rendering and behavior for nodes of that type.
|
|
1020
|
+
*
|
|
1021
|
+
* [!] Note: The component is optional and may not be defined for all nodes. If no component is associated with the node, it will be treated as a standard HTML element or a basic node without custom logic.
|
|
1022
|
+
*/
|
|
1023
|
+
get component(): Are | undefined;
|
|
1024
|
+
/**
|
|
1025
|
+
* The parent node of this node, which is the node that registered the current node in its scope. This is typically the node that is responsible for rendering the current node and managing its lifecycle within the scene. The parent node can be used to access shared context, propagate events, and manage interactions between nodes in a hierarchical structure.
|
|
1026
|
+
*
|
|
1027
|
+
* Example: For a node defined as `<div><span>Child Node</span></div>`, the parent node of the `<span>` element would be the `<div>` element, which is responsible for rendering the `<span>` and managing its lifecycle within the scene.
|
|
1028
|
+
*/
|
|
1029
|
+
get parent(): AreNode | undefined;
|
|
1030
|
+
/**
|
|
1031
|
+
* The child nodes of this node, which are typically defined in the markup and registered in the scope as child entities. These child nodes can represent nested elements or components within the node and can have their own content, markup, styles, and features. The child nodes are managed within the scope of the parent node and can be accessed and manipulated as needed for rendering, updating, and lifecycle management.
|
|
1032
|
+
*
|
|
1033
|
+
* Example: For a node defined as `<div><span>Child Node</span></div>`, the child node would be the `<span>` element, which is registered as a child entity in the scope of the parent `<div>` node.
|
|
1034
|
+
*/
|
|
1035
|
+
get children(): (AreNode)[];
|
|
1036
|
+
/**
|
|
1037
|
+
* It returns the scene where the node exists, so it should be the scene of the rootNode,
|
|
1038
|
+
* primary parent of this node.
|
|
1039
|
+
*/
|
|
1040
|
+
get scene(): AreScene;
|
|
1041
|
+
protected _scene: AreScene;
|
|
1042
|
+
fromNew(newEntity: AreNodeNewProps): void;
|
|
1043
|
+
fromASEID(aseid: string | ASEID): void;
|
|
1044
|
+
/**
|
|
1045
|
+
* Sets the content string for the node — the inner text/markup between the node's
|
|
1046
|
+
* opening and closing delimiters. Content is processed by the rendering engine to
|
|
1047
|
+
* generate the corresponding SceneInstructions for rendering the node.
|
|
1048
|
+
*
|
|
1049
|
+
* @param content
|
|
1050
|
+
*/
|
|
1051
|
+
setContent(content: string): void;
|
|
1052
|
+
/**
|
|
1053
|
+
* Sets the markup string for the node, which is the full raw matched string including delimiters. The markup can include HTML-like syntax, custom components, directives, and other features that are processed by the rendering engine to generate the corresponding SceneInstructions for rendering the node.
|
|
1054
|
+
*
|
|
1055
|
+
* @param markup
|
|
1056
|
+
*/
|
|
1057
|
+
setMarkup(markup: string): void;
|
|
1058
|
+
/**
|
|
1059
|
+
* Adds a child node to the current node's scope and ensures the child inherits from this node's scope.
|
|
1060
|
+
*
|
|
1061
|
+
* @param child - The node to add as a child
|
|
1062
|
+
*/
|
|
1063
|
+
addChild(child: AreNode): void;
|
|
1064
|
+
/**
|
|
1065
|
+
* Removes a child node from the current node's scope. This is typically used when a child node is no longer needed or should be detached from the parent node. The method ensures that the child node is properly deregistered from the scope and any associated resources are cleaned up as necessary.
|
|
1066
|
+
*
|
|
1067
|
+
* @param node - The child node to be removed from the current node's scope
|
|
1068
|
+
*/
|
|
1069
|
+
removeChild(node: AreNode): void;
|
|
1070
|
+
/**
|
|
1071
|
+
* Executes initialization logic for the node, which typically involves setting up the node's scope, registering any necessary entities, and preparing the node for rendering and interaction within the scene. This method is called during the initial phase of the node's lifecycle and is responsible for ensuring that the node is properly initialized before it is compiled and rendered in the scene.
|
|
1072
|
+
*/
|
|
1073
|
+
init(): void;
|
|
1074
|
+
/**
|
|
1075
|
+
* Loads the node, which typically involves executing any necessary setup or initialization logic to prepare the node for rendering and interaction within the scene. This may include processing the node's content, markup, styles, and features to generate the corresponding SceneInstructions, as well as setting up any event listeners or reactive properties as needed.
|
|
1076
|
+
*/
|
|
1077
|
+
load(): Promise<any>;
|
|
1078
|
+
/**
|
|
1079
|
+
* Tokenizes the node content, which typically involves parsing the raw content string to identify the structure, child nodes, attributes, directives, and other features. This process is essential for breaking down the content into its constituent parts and preparing it for further processing during the compilation phase. The tokenization process can involve creating child nodes, extracting attributes and their values, and identifying any directives or bindings that need to be processed during rendering.
|
|
1080
|
+
*/
|
|
1081
|
+
tokenize(): void;
|
|
1082
|
+
/**
|
|
1083
|
+
* Transforms the node, which typically involves executing any necessary logic to reshape the node's structure or content before it is compiled and rendered in the scene. This may include applying any transformations defined by directives, processing any dynamic content or expressions, and performing any other necessary tasks to ensure that the node is properly prepared for compilation and rendering based on its content, markup, styles, and features.
|
|
1084
|
+
*/
|
|
1085
|
+
transform(): void;
|
|
1086
|
+
/**
|
|
1087
|
+
* Compile the node. This method should transform the node's content, markup, and styles into a set of SceneInstructions that can be executed to render the node in the scene. The compile method is responsible for processing the node's features, attributes, directives, and other properties to generate the necessary instructions for rendering and updating the node in response to changes in state or context.
|
|
1088
|
+
*
|
|
1089
|
+
* [!] Note: The compile method should ensure that the node's scope is properly inherited from the context scope before processing, and it should handle any errors that may occur during compilation to ensure that the node can be rendered correctly in the scene.
|
|
1090
|
+
*/
|
|
1091
|
+
compile(): void;
|
|
1092
|
+
/**
|
|
1093
|
+
* Mounts the node, which typically involves executing any necessary logic to render the node in the scene and to set up any interactions or behaviors associated with the node. This may include applying the generated SceneInstructions from the compile phase, attaching event listeners, and performing any other necessary tasks to ensure that the node is properly rendered and functional within the scene.
|
|
1094
|
+
*
|
|
1095
|
+
* [!] Note: The mount method should ensure that the node's scope is properly inherited from the context scope before performing any mounting logic, and it should handle any errors that may occur during mounting to ensure that the node can be rendered correctly in the scene.
|
|
1096
|
+
*/
|
|
1097
|
+
mount(): void;
|
|
1098
|
+
/**
|
|
1099
|
+
* Interprets the node, which typically involves executing any necessary logic to process the node's features, attributes, directives, and other properties to generate the corresponding SceneInstructions for rendering and updating the node in response to changes in state or context. This method is responsible for ensuring that the node is properly interpreted based on its content, markup, styles, and features to enable dynamic behavior and responsiveness within the scene.
|
|
1100
|
+
*
|
|
1101
|
+
* [!] Note: The interpret method should NOT go though own child, since it may be used by both mount and update operations!
|
|
1102
|
+
*/
|
|
1103
|
+
interpret(): void;
|
|
1104
|
+
/**
|
|
1105
|
+
* Updates the node, which typically involves executing any necessary logic to update the node's rendering and behavior in response to changes in state, context, or other factors. This may include reapplying SceneInstructions, updating event listeners, and performing any other necessary tasks to ensure that the node remains functional and correctly rendered within the scene as changes occur.
|
|
1106
|
+
*
|
|
1107
|
+
* [!] Note: The update method should ensure that the node's scope is properly inherited from the context scope before performing any update logic, and it should handle any errors that may occur during updating to ensure that the node can be updated correctly in the scene.
|
|
1108
|
+
*/
|
|
1109
|
+
update(): void;
|
|
1110
|
+
/**
|
|
1111
|
+
* Unmounts the node, which typically involves executing any necessary logic to remove the node from the scene and to clean up any resources associated with the node. This may include reverting any applied SceneInstructions, detaching event listeners, and performing any other necessary tasks to ensure that the node is properly removed from the scene and that resources are released as needed.
|
|
1112
|
+
*
|
|
1113
|
+
* [!] Note: The unmount method should ensure that the node's scope is properly inherited from the context scope before performing any unmounting logic, and it should handle any errors that may occur during unmounting to ensure that the node can be removed correctly from the scene.
|
|
1114
|
+
*/
|
|
1115
|
+
unmount(): void;
|
|
1116
|
+
cloneWithScope<T extends AreNode = AreNode>(this: T): T;
|
|
1117
|
+
reset(): void;
|
|
1118
|
+
clone<T extends AreNode = AreNode>(this: T): T;
|
|
1119
|
+
/**
|
|
1120
|
+
* Emits an event or a scope to the node, which can be used to trigger event handlers or to provide additional context for processing within the node. The method can accept either an AreEvent instance or an A_Scope instance, and it will handle the emission accordingly. This allows for flexible communication and interaction within the node's context, enabling dynamic behavior and responsiveness based on events or changes in scope.
|
|
1121
|
+
*
|
|
1122
|
+
* @param scope - The scope or event to be emitted to the node
|
|
1123
|
+
*/
|
|
1124
|
+
emit(scope: A_Scope): any;
|
|
1125
|
+
emit(event: AreEvent): any;
|
|
1126
|
+
/**
|
|
1127
|
+
* Destroys the node, which typically involves executing any necessary cleanup logic to remove the node from the scene and to free up any resources associated with the node. This may include deregistering the node from its scope, removing any event listeners or reactive properties, and performing any other necessary cleanup tasks to ensure that the node is properly removed from the scene and that resources are released as needed.
|
|
1128
|
+
*
|
|
1129
|
+
* [!] Note: The destroy method should ensure that the node's scope is properly inherited from the context scope before performing any cleanup, and it should handle any errors that may occur during destruction to ensure that resources are released correctly.
|
|
1130
|
+
*/
|
|
1131
|
+
destroy(): Promise<any>;
|
|
1132
|
+
/**
|
|
1133
|
+
* Method to ensure that the current scope is inherited from the context scope
|
|
1134
|
+
*
|
|
1135
|
+
* @throws A_Error if the scope is not inherited from the context scope
|
|
1136
|
+
*/
|
|
1137
|
+
protected checkScopeInheritance(): void;
|
|
564
1138
|
}
|
|
565
1139
|
|
|
566
|
-
declare class
|
|
567
|
-
protected _state: Set<string>;
|
|
568
|
-
constructor(
|
|
1140
|
+
declare class AreContext extends A_ExecutionContext {
|
|
569
1141
|
/**
|
|
570
|
-
*
|
|
1142
|
+
* The source string represents the original template or input from which the ARE scene is generated. This can be used for debugging, error reporting, or any features that require access to the raw template data. The roots array holds references to the root nodes of the ARE scene, allowing for easy access and management of the top-level components in the rendering hierarchy. The signalsMap is a mapping between root nodes and their associated signal vectors, enabling efficient management of reactive updates and interactions within the ARE framework based on changes in the application state or user input.
|
|
571
1143
|
*/
|
|
572
|
-
|
|
573
|
-
get id(): string;
|
|
1144
|
+
protected _source: string;
|
|
574
1145
|
/**
|
|
575
|
-
*
|
|
1146
|
+
* The roots array holds references to the root nodes of the ARE scene, allowing for easy access and management of the top-level components in the rendering hierarchy. The signalsMap is a mapping between root nodes and their associated signal vectors, enabling efficient management of reactive updates and interactions within the ARE framework based on changes in the application state or user input.
|
|
576
1147
|
*/
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
get parent(): AreScene | undefined;
|
|
581
|
-
get children(): Array<AreScene>;
|
|
582
|
-
get depth(): number;
|
|
583
|
-
get instructions(): Array<AreSceneInstruction>;
|
|
584
|
-
nodes(filter?: (node: AreNode) => boolean): AreNode[];
|
|
585
|
-
renderPlanFor(node: AreNode, filter?: {
|
|
586
|
-
filter?: (instruction: AreSceneInstruction) => boolean;
|
|
587
|
-
changes?: Array<new (...args: any[]) => AreSceneInstruction>;
|
|
588
|
-
order?: Array<new (...args: any[]) => AreSceneInstruction>;
|
|
589
|
-
}): AreSceneInstruction<Record<string, any>>[];
|
|
590
|
-
get debugPrefix(): string;
|
|
591
|
-
get path(): string;
|
|
592
|
-
paths(): Iterable<string>;
|
|
593
|
-
plan(instruction: AreSceneInstruction): void;
|
|
594
|
-
unPlan(instruction: AreSceneInstruction): void;
|
|
595
|
-
isAttached(node: AreNode): boolean;
|
|
596
|
-
attach(node: AreNode): void;
|
|
597
|
-
sceneOf(node: AreNode): AreScene | undefined;
|
|
598
|
-
propsOf(node: AreNode): AreProps;
|
|
599
|
-
storeOf(node: AreNode): AreStore;
|
|
600
|
-
isPlanned(action: AreSceneInstruction): boolean;
|
|
601
|
-
/**
|
|
602
|
-
* It returns planned instruction instance from the scene
|
|
603
|
-
*
|
|
604
|
-
* [!] Only Planned instructions can be used for state checking
|
|
605
|
-
*
|
|
606
|
-
* @param instruction
|
|
607
|
-
* @returns
|
|
1148
|
+
protected _roots: Array<AreNode>;
|
|
1149
|
+
/**
|
|
1150
|
+
* This property stores a map between root node and conditions that should be met to render particular component inside the root node. This can be used to manage complex rendering logic and to optimize performance by ensuring that components are only rendered when necessary based on the defined conditions.
|
|
608
1151
|
*/
|
|
609
|
-
|
|
1152
|
+
protected _signalsMap: Map<string, A_SignalVector>;
|
|
1153
|
+
protected _performance: Map<string, number>;
|
|
1154
|
+
protected _performanceStart: Map<string, number>;
|
|
1155
|
+
protected _performanceDepth: Map<string, number>;
|
|
610
1156
|
/**
|
|
611
|
-
*
|
|
1157
|
+
* The global object can be used to store any global data or configurations that need to be accessed across different components and entities within the ARE framework. This can include things like theme settings, user preferences, or any other shared data that is relevant to the entire scene or application. By centralizing this information in the context, it allows for easier management and access to global state without needing to pass it through multiple layers of components or entities.
|
|
612
1158
|
*/
|
|
613
|
-
|
|
1159
|
+
get globals(): any;
|
|
1160
|
+
constructor(
|
|
614
1161
|
/**
|
|
615
|
-
*
|
|
616
|
-
*
|
|
617
|
-
* So only instructions presented in the plan can be moved to state
|
|
618
|
-
* State is a set of instructions that are currently applied to the scene
|
|
619
|
-
*
|
|
620
|
-
* @param instruction
|
|
1162
|
+
* The source string represents the original template or input from which the ARE scene is generated. This can be used for debugging, error reporting, or any features that require access to the raw template data. The roots array holds references to the root nodes of the ARE scene, allowing for easy access and management of the top-level components in the rendering hierarchy. The signalsMap is a mapping between root nodes and their associated signal vectors, enabling efficient management of reactive updates and interactions within the ARE framework based on changes in the application state or user input.
|
|
621
1163
|
*/
|
|
622
|
-
|
|
1164
|
+
source?: string);
|
|
623
1165
|
/**
|
|
624
|
-
*
|
|
1166
|
+
* The scope of the context, which can be used to access other entities and features within the same scope. This is particularly useful for components that need to interact with other parts of the scene or component, as it allows them to access shared data and functionality without needing to pass it explicitly through parameters.
|
|
625
1167
|
*/
|
|
626
|
-
|
|
627
|
-
dropState<T extends AreSceneInstruction>(
|
|
1168
|
+
get scope(): _adaas_a_concept.A_Scope<any, _adaas_a_concept.A_TYPES__Component_Constructor<_adaas_a_concept.A_Component>[], _adaas_a_concept.A_TYPES__Error_Constructor<_adaas_a_concept.A_Error<_adaas_a_concept.A_TYPES__Error_Init, _adaas_a_concept.A_TYPES__Error_Serialized>>[], _adaas_a_concept.A_TYPES__Entity_Constructor<_adaas_a_concept.A_Entity<any, _adaas_a_concept.A_TYPES__Entity_Serialized>>[], A_Fragment<_adaas_a_concept.A_TYPES__Fragment_Serialized>[]>;
|
|
628
1169
|
/**
|
|
629
|
-
*
|
|
1170
|
+
* The roots array holds references to the root nodes of the ARE scene, allowing for easy access and management of the top-level components in the rendering hierarchy. The signalsMap is a mapping between root nodes and their associated signal vectors, enabling efficient management of reactive updates and interactions within the ARE framework based on changes in the application state or user input.
|
|
630
1171
|
*/
|
|
631
|
-
|
|
632
|
-
resetPlan(node: AreNode): void;
|
|
633
|
-
resetState(node: AreNode): void;
|
|
634
|
-
getState<T extends AreSceneInstruction>(
|
|
1172
|
+
get roots(): Array<AreNode>;
|
|
635
1173
|
/**
|
|
636
|
-
*
|
|
1174
|
+
* This property stores a map between root node and conditions that should be met to render particular component inside the root node. This can be used to manage complex rendering logic and to optimize performance by ensuring that components are only rendered when necessary based on the defined conditions.
|
|
637
1175
|
*/
|
|
638
|
-
|
|
639
|
-
|
|
1176
|
+
get source(): string;
|
|
1177
|
+
get performance(): Array<string>;
|
|
1178
|
+
get stats(): string[];
|
|
1179
|
+
protected countInstructions(node: AreNode): number;
|
|
1180
|
+
protected countNodes(node: AreNode): number;
|
|
640
1181
|
/**
|
|
641
|
-
*
|
|
1182
|
+
* This property stores a map between root node and conditions that should be met to render particular component inside the root node. This can be used to manage complex rendering logic and to optimize performance by ensuring that components are only rendered when necessary based on the defined conditions.
|
|
1183
|
+
*
|
|
1184
|
+
* @param node
|
|
642
1185
|
*/
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
static readonly MountFailed = "AreSceneError.MountFailed";
|
|
653
|
-
static readonly UnmountFailed = "AreSceneError.UnmountFailed";
|
|
654
|
-
static readonly MountPointNotFound = "AreSceneError.MountPointNotFound";
|
|
655
|
-
static readonly InvalidTemplate = "AreSceneError.InvalidTemplate";
|
|
656
|
-
static readonly RenderFailed = "AreSceneError.RenderFailed";
|
|
1186
|
+
addRoot(node: AreNode): void;
|
|
1187
|
+
/**
|
|
1188
|
+
* This property stores a map between root node and conditions that should be met to render particular component inside the root node. This can be used to manage complex rendering logic and to optimize performance by ensuring that components are only rendered when necessary based on the defined conditions.
|
|
1189
|
+
*
|
|
1190
|
+
* @param node
|
|
1191
|
+
*/
|
|
1192
|
+
removeRoot(node: AreNode): void;
|
|
1193
|
+
startPerformance(label?: string): void;
|
|
1194
|
+
endPerformance(label: string): void;
|
|
657
1195
|
}
|
|
658
1196
|
|
|
659
|
-
declare class
|
|
1197
|
+
declare class AreSyntax extends A_Fragment {
|
|
660
1198
|
/**
|
|
661
|
-
*
|
|
662
|
-
* Example: `<div>{{name}}</div>`
|
|
1199
|
+
* Max allowed length of an expression string to prevent excessively long inputs that could lead to performance issues or abuse.
|
|
663
1200
|
*/
|
|
664
|
-
|
|
1201
|
+
private readonly MAX_LENGTH;
|
|
665
1202
|
/**
|
|
666
|
-
*
|
|
667
|
-
* Example: `<custom-component :prop="value"> <div>Inner Content</div> </custom-component>`
|
|
1203
|
+
* Max allowed nesting depth of parentheses, brackets, and braces in expressions to prevent excessively complex inputs that could lead to performance issues or abuse. Default is 5 levels of nesting.
|
|
668
1204
|
*/
|
|
669
|
-
|
|
1205
|
+
private readonly MAX_DEPTH;
|
|
670
1206
|
/**
|
|
671
|
-
*
|
|
1207
|
+
* List of regex patterns that are blocked in expressions to prevent access to unsafe or sensitive features. This includes patterns for global objects, functions, and syntax that could be used for malicious purposes (e.g. "eval", "Function", "fetch", "XMLHttpRequest", "import", "require", "document", "window", "globalThis", "global", "process", "__proto__", "constructor", "prototype"). Expressions containing any of these patterns will be rejected during validation.
|
|
672
1208
|
*/
|
|
673
|
-
|
|
1209
|
+
private readonly BLOCKED_PATTERNS;
|
|
674
1210
|
/**
|
|
675
|
-
*
|
|
676
|
-
* uses to store all nested fragments and entities like other AreNodes and Scene
|
|
1211
|
+
* Set of global identifiers that are blocked in expressions to prevent access to unsafe or sensitive features. This includes global objects and functions that could be used for malicious purposes (e.g. "eval", "Function", "fetch", "XMLHttpRequest", "document", "window", "globalThis", "global", "process", "setTimeout", "setInterval", "localStorage", "sessionStorage", "indexedDB", "WebSocket", "Worker"). Accessing any of these identifiers in an expression will be rejected during validation.
|
|
677
1212
|
*/
|
|
678
|
-
|
|
679
|
-
get id(): string;
|
|
680
|
-
get scope(): A_Scope;
|
|
681
|
-
get content(): AreScene;
|
|
682
|
-
get type(): string;
|
|
683
|
-
get template(): string;
|
|
684
|
-
get markup(): string;
|
|
685
|
-
get styles(): string;
|
|
686
|
-
fromNew(newEntity: AreNodeNewProps): void;
|
|
687
|
-
fromASEID(aseid: string | ASEID): void;
|
|
688
|
-
setTemplate(template: string): void;
|
|
689
|
-
setMarkup(markup: string): void;
|
|
690
|
-
setStyles(styles: string): void;
|
|
691
|
-
emit(scope: A_Scope): any;
|
|
692
|
-
emit(event: AreEvent): any;
|
|
693
|
-
compile(): void;
|
|
694
|
-
render(): void;
|
|
695
|
-
update(): Promise<void>;
|
|
696
|
-
reset(): Promise<void>;
|
|
697
|
-
unmount(): void;
|
|
698
|
-
load(): Promise<any>;
|
|
699
|
-
destroy(): Promise<any>;
|
|
1213
|
+
private readonly BLOCKED_GLOBALS;
|
|
700
1214
|
/**
|
|
701
|
-
*
|
|
702
|
-
*
|
|
703
|
-
* @throws A_Error if the scope is not inherited from the context scope
|
|
1215
|
+
* Regex pattern that defines the allowed characters in expressions. This pattern allows letters, digits, whitespace, and common operators and punctuation used in JavaScript expressions. Expressions containing characters that do not match this pattern will be rejected during validation to prevent injection of potentially harmful code.
|
|
704
1216
|
*/
|
|
705
|
-
|
|
706
|
-
}
|
|
707
|
-
|
|
708
|
-
declare enum AreNodeFeatures {
|
|
1217
|
+
private readonly ALLOWED_CHARS;
|
|
709
1218
|
/**
|
|
710
|
-
*
|
|
1219
|
+
* Simple dot-path identifier pattern (e.g. "name", "user.name", "user.profile.name").
|
|
1220
|
+
* Matches strings that consist solely of identifier characters separated by dots.
|
|
711
1221
|
*/
|
|
712
|
-
|
|
1222
|
+
private readonly SIMPLE_PATH;
|
|
713
1223
|
/**
|
|
714
|
-
*
|
|
1224
|
+
* Compiled expression — a pre-parsed function ready for repeated execution.
|
|
1225
|
+
* Created once via compile(), reused on every apply/click.
|
|
715
1226
|
*/
|
|
716
|
-
|
|
1227
|
+
private readonly _rules;
|
|
1228
|
+
private readonly _trimWhitespace;
|
|
1229
|
+
private readonly _strictMode;
|
|
1230
|
+
constructor(config?: Partial<AreSyntaxInitOptions>);
|
|
717
1231
|
/**
|
|
718
|
-
*
|
|
1232
|
+
* Get the array of token rules that define the syntax for parsing templates. Each rule specifies how to identify and process a particular type of token (e.g. interpolation, directive, comment) within templates. The rules are checked in order of priority, allowing for flexible and customizable parsing behavior.
|
|
719
1233
|
*/
|
|
720
|
-
|
|
1234
|
+
get rules(): AreSyntaxTokenRules<AreNode>[];
|
|
721
1235
|
/**
|
|
722
|
-
*
|
|
1236
|
+
* Indicates whether leading and trailing whitespace should be trimmed from token content. When enabled, any whitespace at the start or end of the content captured by a token will be removed before further processing. This can help prevent issues with unintended spaces affecting rendering or logic, especially in cases like interpolations or directives where extra whitespace may be common. Default is true.
|
|
723
1237
|
*/
|
|
724
|
-
|
|
1238
|
+
get trimWhitespace(): boolean;
|
|
725
1239
|
/**
|
|
726
|
-
*
|
|
1240
|
+
* Indicates whether the parser should throw an error when it encounters unclosed tokens. When enabled, if the parser finds an opening delimiter without a corresponding closing delimiter (e.g. an unclosed interpolation or directive), it will throw an error instead of silently ignoring it. This can help catch syntax errors and ensure that templates are well-formed. Default is true.
|
|
727
1241
|
*/
|
|
728
|
-
|
|
1242
|
+
get strictMode(): boolean;
|
|
729
1243
|
/**
|
|
730
|
-
*
|
|
1244
|
+
* Compiles an expression string into a reusable executor.
|
|
1245
|
+
* Performs validation and Function construction once.
|
|
1246
|
+
* Use when the same expression will be evaluated multiple times
|
|
1247
|
+
* e.g. event handlers, instructions that re-apply on store changes.
|
|
1248
|
+
*
|
|
1249
|
+
* @example
|
|
1250
|
+
* // compile once at apply() time
|
|
1251
|
+
* const compiled = AreCommonHelper.compile('(e) => !!pageTitle ? $testHandler(e, item) : null')
|
|
1252
|
+
*
|
|
1253
|
+
* // execute on every click — no re-parsing, no re-validation
|
|
1254
|
+
* element.addEventListener('click', (e) => {
|
|
1255
|
+
* const fn = compiled.execute(store, { $testHandler: handler, item })
|
|
1256
|
+
* if (typeof fn === 'function') fn(e)
|
|
1257
|
+
* })
|
|
731
1258
|
*/
|
|
732
|
-
|
|
1259
|
+
compile(expr: string): AreSyntaxCompiledExpression;
|
|
733
1260
|
/**
|
|
734
|
-
*
|
|
1261
|
+
* Evaluates an expression string against the provided store.
|
|
1262
|
+
* Automatically determines whether the result should be callable
|
|
1263
|
+
* based on the shape of the expression.
|
|
1264
|
+
*
|
|
1265
|
+
* Returns the raw value for plain expressions (interpolations, bindings).
|
|
1266
|
+
* Returns a bound function for callable expressions (event handlers).
|
|
1267
|
+
*
|
|
1268
|
+
* @param expr Expression string to evaluate.
|
|
1269
|
+
* @param store AreStore used for identifier resolution.
|
|
1270
|
+
* @param scope Optional extra bindings checked **before** the store.
|
|
1271
|
+
* Useful for injecting event-specific values (`$event`, `element`)
|
|
1272
|
+
* or emit wrappers (`$handleClick`).
|
|
1273
|
+
*
|
|
1274
|
+
* @example
|
|
1275
|
+
* // simple value
|
|
1276
|
+
* evaluate('user.name', store)
|
|
1277
|
+
*
|
|
1278
|
+
* // with emit wrapper
|
|
1279
|
+
* evaluate('$handleClick($event, user.name)', store, {
|
|
1280
|
+
* $event: domEvent,
|
|
1281
|
+
* $handleClick: (...args) => node.emit(new AreEvent('handleClick', args)),
|
|
1282
|
+
* })
|
|
1283
|
+
*
|
|
1284
|
+
* // arrow with conditional
|
|
1285
|
+
* evaluate('(e) => isValid(user.name) ? $handleClick(e) : null', store, {
|
|
1286
|
+
* $handleClick: (...args) => node.emit(new AreEvent('handleClick', args)),
|
|
1287
|
+
* })
|
|
735
1288
|
*/
|
|
736
|
-
|
|
1289
|
+
evaluate(expr: string, store: AreStore, scope?: Record<string, any>): any;
|
|
737
1290
|
/**
|
|
738
|
-
*
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
1291
|
+
* Extracts $-prefixed handler names from an expression.
|
|
1292
|
+
* These represent event emission targets, not store references.
|
|
1293
|
+
*
|
|
1294
|
+
* Examples:
|
|
1295
|
+
* "$handleClick" → Set(["handleClick"])
|
|
1296
|
+
* "$handleClick(user.name)" → Set(["handleClick"])
|
|
1297
|
+
* "(e) => isValid(user.name) ? $handleClick(e) : null" → Set(["handleClick"])
|
|
1298
|
+
*/
|
|
1299
|
+
extractEmitHandlers(expr: string): Set<string>;
|
|
1300
|
+
private isCallableExpression;
|
|
1301
|
+
private validate;
|
|
1302
|
+
private checkDepth;
|
|
1303
|
+
private createSandbox;
|
|
1304
|
+
private nestedHandler;
|
|
1305
|
+
private assertSafeKey;
|
|
1306
|
+
private execute;
|
|
752
1307
|
}
|
|
753
1308
|
|
|
754
|
-
declare
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
* Before template, styles and data are fetched
|
|
759
|
-
*/
|
|
760
|
-
onBeforeLoad = "_Are_onBeforeLoad",
|
|
761
|
-
/**
|
|
762
|
-
* Runs after the component is loaded into memory
|
|
763
|
-
*
|
|
764
|
-
* After template, styles and data are fetched
|
|
765
|
-
*/
|
|
766
|
-
onAfterLoad = "_Are_onAfterLoad",
|
|
767
|
-
onBeforeMount = "_Are_onBeforeMount",
|
|
768
|
-
onAfterMount = "_Are_onAfterMount",
|
|
769
|
-
onBeforeUnmount = "_Are_onBeforeUnmount",
|
|
770
|
-
onAfterUnmount = "_Are_onAfterUnmount",
|
|
771
|
-
onBeforeUpdate = "_Are_onBeforeUpdate",
|
|
772
|
-
onAfterUpdate = "_Are_onAfterUpdate",
|
|
773
|
-
onBeforeDestroy = "_Are_onBeforeDestroy",
|
|
774
|
-
onAfterDestroy = "_Are_onAfterDestroy",
|
|
775
|
-
onBeforeCompile = "_Are_onBeforeCompile",
|
|
776
|
-
onAfterCompile = "_Are_onAfterCompile",
|
|
777
|
-
onBeforeRender = "_Are_onBeforeRender",
|
|
778
|
-
onAfterRender = "_Are_onAfterRender",
|
|
779
|
-
onTemplate = "_Are_onTemplate",
|
|
780
|
-
onStyles = "_Are_onStyles",
|
|
781
|
-
onData = "_Are_onData",
|
|
782
|
-
onSignal = "_Are_onSignal"
|
|
1309
|
+
declare class AreSyntaxError extends A_Error {
|
|
1310
|
+
static readonly SyntaxParseError = "Are Syntax Parse Error";
|
|
1311
|
+
static readonly SyntaxNotSupportedError = "Are Syntax Not Supported Error";
|
|
1312
|
+
static readonly MethodNotImplementedError = "Are Syntax Method Not Implemented Error";
|
|
783
1313
|
}
|
|
784
1314
|
|
|
785
|
-
declare class
|
|
786
|
-
|
|
787
|
-
|
|
1315
|
+
declare class AreTokenizer extends A_Component {
|
|
1316
|
+
/**
|
|
1317
|
+
* Get the AreSyntax from the current scope. The AreSyntax defines the syntax rules and structures for tokenizing templates. It provides mechanisms for parsing and interpreting templates, attributes, directives, interpolations, and event listeners, enabling dynamic and interactive UI rendering within the ARE framework. If no AreSyntax is found in the scope, an error is thrown indicating that AreTokenizer requires an AreSyntax to function properly.
|
|
1318
|
+
*/
|
|
1319
|
+
protected get config(): AreSyntax;
|
|
1320
|
+
/**
|
|
1321
|
+
* Instantiate AreNodes based on the token matches obtained from scanning the source template. This method takes the raw source string from the context, scans it for tokens using the defined syntax rules, and creates corresponding AreNode instances for each matched token. The resulting array of AreNodes represents the structured representation of the template, which can then be used for further processing, such as rendering or applying scene instructions.
|
|
1322
|
+
*
|
|
1323
|
+
*
|
|
1324
|
+
* @param context
|
|
1325
|
+
* @returns
|
|
1326
|
+
*/
|
|
1327
|
+
instantiate<T extends AreNode>(context: AreContext): void;
|
|
1328
|
+
tokenize(node: AreNode, context: AreContext, logger?: A_Logger): void;
|
|
1329
|
+
protected scan(source: string, from: number, to: number, context: AreContext): AreSyntaxTokenMatch[];
|
|
1330
|
+
protected findNextMatch(source: string, from: number, to: number): AreSyntaxTokenMatch | null;
|
|
1331
|
+
protected matchRule(source: string, rule: AreSyntaxTokenRules, from: number, to: number): AreSyntaxTokenMatch | null;
|
|
1332
|
+
protected matchStandardRule(source: string, rule: AreSyntaxTokenRules, from: number, to: number): AreSyntaxTokenMatch | null;
|
|
1333
|
+
protected matchPrefixedRule(source: string, rule: AreSyntaxTokenRules, from: number, to: number): AreSyntaxTokenMatch | null;
|
|
1334
|
+
protected findMatchingClose(source: string, opening: string, closing: string, from: number, to: number): number;
|
|
1335
|
+
protected buildMatch(rule: AreSyntaxTokenRules, raw: string, content: string, position: number, closingUsed: string): AreSyntaxTokenMatch;
|
|
1336
|
+
protected tryPlainText(raw: string, position: number): AreSyntaxTokenMatch | null;
|
|
1337
|
+
protected findRuleForMatch(match: AreSyntaxTokenMatch): AreSyntaxTokenRules | undefined;
|
|
788
1338
|
}
|
|
789
1339
|
|
|
790
|
-
declare class
|
|
1340
|
+
declare class AreTokenizerError extends A_Error {
|
|
791
1341
|
}
|
|
792
1342
|
|
|
793
1343
|
declare class AreCompiler extends A_Component {
|
|
794
|
-
index(node: AreNode): void;
|
|
795
|
-
component(node: AreNode): Are | undefined;
|
|
796
1344
|
/**
|
|
797
|
-
*
|
|
1345
|
+
* Defines a custom method for compiling a node into a set of SceneInstructions. This method is called during the compilation phase of the ARE component and should perform any necessary transformations on the node and its attributes to generate the appropriate instructions for rendering. This can include tasks such as processing directives, evaluating expressions, and generating instructions for dynamic content based on the node's properties and context.
|
|
798
1346
|
*
|
|
799
1347
|
* @param node
|
|
800
|
-
* @param scope
|
|
801
|
-
* @param feature
|
|
802
|
-
* @param args
|
|
803
1348
|
*/
|
|
804
|
-
|
|
1349
|
+
static Compile<T extends AreNode>(node: A_TYPES__Entity_Constructor<T>): any;
|
|
805
1350
|
/**
|
|
806
|
-
*
|
|
1351
|
+
* Defines a custom method for compiling an attribute into a set of SceneInstructions. This method is called during the compilation phase of the ARE component and should perform any necessary transformations on the attribute to generate the appropriate instructions for rendering. This can include tasks such as processing directives, evaluating expressions, and generating instructions for dynamic content based on the attribute's properties and context.
|
|
807
1352
|
*
|
|
808
|
-
* @param
|
|
809
|
-
* @param scope
|
|
810
|
-
* @param syntax
|
|
811
|
-
* @param feature
|
|
812
|
-
* @param logger
|
|
813
|
-
* @param args
|
|
1353
|
+
* @param attribute
|
|
814
1354
|
*/
|
|
815
|
-
|
|
1355
|
+
static Compile<T extends AreAttribute>(attribute: A_TYPES__Entity_Constructor<T>): any;
|
|
1356
|
+
compile(node: AreNode, scene: AreScene, logger?: A_Logger, ...args: any[]): void;
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1359
|
+
declare class AreCompilerError extends A_Error {
|
|
1360
|
+
static readonly RenderError = "Are Compiler Render Error";
|
|
1361
|
+
static readonly CompilationError = "Are Compiler Compilation Error";
|
|
1362
|
+
}
|
|
1363
|
+
|
|
1364
|
+
declare class AreTransformer extends A_Component {
|
|
1365
|
+
transform(node: AreNode, scope: A_Scope, scene: AreScene, ...args: any[]): void;
|
|
1366
|
+
}
|
|
1367
|
+
|
|
1368
|
+
declare class AreInterpreter extends A_Component {
|
|
816
1369
|
/**
|
|
817
|
-
*
|
|
1370
|
+
* Decorator to mark a method as an instruction Apply handler for the specific instruction type. The method will be called during the render phase of the ARE component when the corresponding instruction needs to be applied. The method should contain logic to perform the necessary operations on the rendering target based on the instruction's content and context.
|
|
818
1371
|
*
|
|
819
|
-
* @param
|
|
820
|
-
* @
|
|
821
|
-
* @param scene
|
|
822
|
-
* @param feature
|
|
823
|
-
* @param args
|
|
1372
|
+
* @param action
|
|
1373
|
+
* @returns
|
|
824
1374
|
*/
|
|
825
|
-
|
|
1375
|
+
static Apply(action: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
826
1376
|
/**
|
|
827
|
-
*
|
|
1377
|
+
* Decorator to mark a method as an instruction Update handler for the specific instruction type. The method will be called during the render phase of the ARE component when the corresponding instruction has been updated. The method should contain logic to perform the necessary operations on the rendering target to update the effects of the instruction based on its new content and context.
|
|
828
1378
|
*
|
|
829
|
-
* @param
|
|
830
|
-
* @
|
|
831
|
-
* @param scene
|
|
832
|
-
* @param feature
|
|
833
|
-
* @param args
|
|
1379
|
+
* @param action
|
|
1380
|
+
* @returns
|
|
834
1381
|
*/
|
|
835
|
-
|
|
1382
|
+
static Update(action: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
836
1383
|
/**
|
|
837
|
-
*
|
|
1384
|
+
* Decorator to mark a method as an instruction Revert handler for the specific instruction type. The method will be called during the render phase of the ARE component when the corresponding instruction needs to be reverted. The method should contain logic to perform the necessary operations on the rendering target to undo the effects of the instruction based on its content and context.
|
|
838
1385
|
*
|
|
1386
|
+
* @param action
|
|
1387
|
+
* @returns
|
|
1388
|
+
*/
|
|
1389
|
+
static Revert(action: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => any;
|
|
1390
|
+
/**
|
|
1391
|
+
* The method responsible for executing the render operation based on the current state of the Scene. It processes the instructions that need to be applied and reverted, ensuring that the rendering target is updated accordingly. The method handles any errors that may occur during the application or reversion of instructions, maintaining the integrity of the rendering process.
|
|
839
1392
|
*
|
|
840
|
-
* @param
|
|
1393
|
+
* @param scene
|
|
841
1394
|
*/
|
|
842
|
-
|
|
1395
|
+
interpret(scene: AreScene): void;
|
|
1396
|
+
protected applyInstruction(instruction: AreInstruction, interpreter: AreInterpreter, store: AreStore, scope: A_Scope, feature: A_Feature, ...args: any[]): void;
|
|
1397
|
+
protected updateInstruction(instruction: AreInstruction, interpreter: AreInterpreter, store: AreStore, scope: A_Scope, feature: A_Feature, ...args: any[]): void;
|
|
1398
|
+
protected revertInstruction(instruction: AreInstruction, interpreter: AreInterpreter, store: AreStore, scope: A_Scope, feature: A_Feature, ...args: any[]): void;
|
|
1399
|
+
}
|
|
1400
|
+
|
|
1401
|
+
declare class AreInterpreterError extends A_Error {
|
|
1402
|
+
}
|
|
1403
|
+
|
|
1404
|
+
/**
|
|
1405
|
+
* Properties for the AreEvent context
|
|
1406
|
+
*
|
|
1407
|
+
*/
|
|
1408
|
+
type AreEventProps<T = any> = {
|
|
843
1409
|
/**
|
|
844
|
-
*
|
|
1410
|
+
* The data associated with the event
|
|
845
1411
|
*/
|
|
846
|
-
|
|
1412
|
+
data: T;
|
|
1413
|
+
/**
|
|
1414
|
+
* The name of the event
|
|
1415
|
+
*/
|
|
1416
|
+
event: string;
|
|
1417
|
+
};
|
|
1418
|
+
|
|
1419
|
+
declare class AreSceneError extends A_Error {
|
|
1420
|
+
static readonly SceneAlreadyInactive = "AreSceneError.SceneAlreadyInactive";
|
|
1421
|
+
static readonly SceneAlreadyActive = "AreSceneError.SceneAlreadyActive";
|
|
1422
|
+
static readonly HostInstructionHasConnectedInstructions = "AreSceneError.HostInstructionHasConnectedInstructions";
|
|
1423
|
+
static readonly SingleHostInstruction = "AreSceneError.SingleHostInstruction";
|
|
1424
|
+
static readonly SceneError = "AreSceneError.SceneError";
|
|
1425
|
+
static readonly RootNotFound = "AreSceneError.RootNotFound";
|
|
1426
|
+
static readonly UpdateFailed = "AreSceneError.UpdateFailed";
|
|
1427
|
+
static readonly MountFailed = "AreSceneError.MountFailed";
|
|
1428
|
+
static readonly UnmountFailed = "AreSceneError.UnmountFailed";
|
|
1429
|
+
static readonly MountPointNotFound = "AreSceneError.MountPointNotFound";
|
|
1430
|
+
static readonly InvalidTemplate = "AreSceneError.InvalidTemplate";
|
|
1431
|
+
static readonly RenderFailed = "AreSceneError.RenderFailed";
|
|
1432
|
+
}
|
|
1433
|
+
|
|
1434
|
+
declare const AreInstructionFeatures: {
|
|
847
1435
|
/**
|
|
848
|
-
*
|
|
1436
|
+
* The 'Apply' feature indicates that the instruction has been applied to the scene or component, meaning that its effects have been executed and are now reflected in the state of the scene or component. This status is typically used to track the lifecycle of an instruction, allowing for proper management and potential reversal of changes if needed.
|
|
849
1437
|
*/
|
|
850
|
-
|
|
1438
|
+
readonly Apply: "_AreInstruction_Apply";
|
|
851
1439
|
/**
|
|
852
|
-
*
|
|
1440
|
+
* The 'Update' feature indicates that the instruction has been updated, meaning that its properties or effects have been modified after it was initially applied. This status is important for managing dynamic changes in the scene or component, allowing for adjustments to be made to the instruction's behavior or effects without needing to revert and reapply it entirely.
|
|
853
1441
|
*/
|
|
854
|
-
|
|
1442
|
+
readonly Update: "_AreInstruction_Update";
|
|
855
1443
|
/**
|
|
856
|
-
*
|
|
1444
|
+
* The 'Revert' feature indicates that the instruction has been reverted, meaning that any changes or effects that were applied by the instruction have been undone, and the scene or component has been returned to its previous state before the instruction was applied. This status is crucial for managing the state of the scene or component, especially in cases where an instruction needs to be rolled back due to errors or changes in requirements.
|
|
857
1445
|
*/
|
|
858
|
-
|
|
1446
|
+
readonly Revert: "_AreInstruction_Revert";
|
|
1447
|
+
};
|
|
1448
|
+
declare const AreInstructionDefaultNames: {
|
|
1449
|
+
readonly Default: "_Are_DefaultInstruction";
|
|
1450
|
+
readonly Declaration: "_Are_DeclarationInstruction";
|
|
1451
|
+
readonly Mutation: "_Are_MutationInstruction";
|
|
1452
|
+
};
|
|
1453
|
+
|
|
1454
|
+
declare class AreInstructionError extends A_Error {
|
|
1455
|
+
}
|
|
1456
|
+
|
|
1457
|
+
declare class AreLifecycle extends A_Component {
|
|
1458
|
+
static Init<T extends AreNode>(node: A_TYPES__Entity_Constructor<T>): any;
|
|
1459
|
+
static Init<T extends AreAttribute>(attribute: A_TYPES__Entity_Constructor<T>): any;
|
|
859
1460
|
/**
|
|
860
|
-
*
|
|
1461
|
+
* Handles before init lifecycle of the AreNode
|
|
861
1462
|
*
|
|
862
1463
|
* @param node
|
|
863
1464
|
* @param scope
|
|
@@ -865,20 +1466,34 @@ declare class AreCompiler extends A_Component {
|
|
|
865
1466
|
* @param feature
|
|
866
1467
|
* @param args
|
|
867
1468
|
*/
|
|
868
|
-
|
|
1469
|
+
beforeInit(node: AreNode, scope: A_Scope, scene: AreScene, feature: A_Feature, ...args: any[]): void;
|
|
869
1470
|
/**
|
|
870
|
-
*
|
|
1471
|
+
* Initializes the AreNode and prepares it for mounting
|
|
1472
|
+
*
|
|
1473
|
+
* @param node
|
|
1474
|
+
* @param scope
|
|
1475
|
+
* @param syntax
|
|
1476
|
+
* @param feature
|
|
1477
|
+
* @param logger
|
|
1478
|
+
* @param args
|
|
1479
|
+
*/
|
|
1480
|
+
init(node: AreNode, scope: A_Scope, context: AreContext, logger?: A_Logger, ...args: any[]): void;
|
|
1481
|
+
/**
|
|
1482
|
+
* Handles after init lifecycle of the AreNode
|
|
871
1483
|
*
|
|
872
1484
|
* @param node
|
|
873
1485
|
* @param scope
|
|
874
|
-
* @param event
|
|
875
1486
|
* @param scene
|
|
876
1487
|
* @param feature
|
|
877
1488
|
* @param args
|
|
878
1489
|
*/
|
|
879
|
-
|
|
1490
|
+
afterInit(
|
|
1491
|
+
/**
|
|
1492
|
+
* Node to be mounted
|
|
1493
|
+
*/
|
|
1494
|
+
node: AreNode, scope: A_Scope, scene: AreScene, feature: A_Feature, ...args: any[]): void;
|
|
880
1495
|
/**
|
|
881
|
-
* Handles before
|
|
1496
|
+
* Handles before mount lifecycle of the AreNode
|
|
882
1497
|
*
|
|
883
1498
|
* @param node
|
|
884
1499
|
* @param scope
|
|
@@ -886,36 +1501,26 @@ declare class AreCompiler extends A_Component {
|
|
|
886
1501
|
* @param feature
|
|
887
1502
|
* @param args
|
|
888
1503
|
*/
|
|
889
|
-
|
|
1504
|
+
beforeMount(node: AreNode, scope: A_Scope, scene: AreScene, feature: A_Feature, ...args: any[]): void;
|
|
890
1505
|
/**
|
|
891
|
-
*
|
|
1506
|
+
* Mount the AreNode into the Host
|
|
892
1507
|
*
|
|
893
1508
|
* @param scope
|
|
894
1509
|
* @param node
|
|
895
1510
|
* @param scene
|
|
896
1511
|
* @param logger
|
|
897
1512
|
*/
|
|
898
|
-
|
|
1513
|
+
mount(
|
|
899
1514
|
/**
|
|
900
1515
|
* Node to be mounted
|
|
901
1516
|
*/
|
|
902
1517
|
node: AreNode,
|
|
903
|
-
/**
|
|
904
|
-
* Template Parsing Syntax to be used
|
|
905
|
-
*/
|
|
906
|
-
syntax: AreSyntax,
|
|
907
1518
|
/**
|
|
908
1519
|
* Node Content
|
|
909
1520
|
*/
|
|
910
|
-
scene: AreScene,
|
|
1521
|
+
scene: AreScene, logger?: A_Logger, ...args: any[]): void;
|
|
911
1522
|
/**
|
|
912
|
-
*
|
|
913
|
-
*
|
|
914
|
-
* [!] For Root Node it doesn't exists
|
|
915
|
-
*/
|
|
916
|
-
parentScene?: AreScene, logger?: A_Logger, ...args: any[]): void;
|
|
917
|
-
/**
|
|
918
|
-
* Handles after render lifecycle of the AreNode
|
|
1523
|
+
* Handles after mount lifecycle of the AreNode
|
|
919
1524
|
*
|
|
920
1525
|
* @param node
|
|
921
1526
|
* @param scope
|
|
@@ -923,9 +1528,9 @@ declare class AreCompiler extends A_Component {
|
|
|
923
1528
|
* @param feature
|
|
924
1529
|
* @param args
|
|
925
1530
|
*/
|
|
926
|
-
|
|
1531
|
+
afterMount(
|
|
927
1532
|
/**
|
|
928
|
-
* Node to be
|
|
1533
|
+
* Node to be mounted
|
|
929
1534
|
*/
|
|
930
1535
|
node: AreNode, scope: A_Scope, scene: AreScene, feature: A_Feature, ...args: any[]): void;
|
|
931
1536
|
/**
|
|
@@ -949,7 +1554,7 @@ declare class AreCompiler extends A_Component {
|
|
|
949
1554
|
/**
|
|
950
1555
|
* Node to be updated
|
|
951
1556
|
*/
|
|
952
|
-
node: AreNode,
|
|
1557
|
+
node: AreNode, context: AreContext, logger?: A_Logger, ...args: any[]): void;
|
|
953
1558
|
/**
|
|
954
1559
|
* Handles after update lifecycle of the AreNode
|
|
955
1560
|
*
|
|
@@ -971,164 +1576,207 @@ declare class AreCompiler extends A_Component {
|
|
|
971
1576
|
*/
|
|
972
1577
|
beforeUnmount(node: AreNode, scope: A_Scope, scene: AreScene, feature: A_Feature, ...args: any[]): void;
|
|
973
1578
|
/**
|
|
974
|
-
* Unmounts the AreNode from the
|
|
1579
|
+
* Unmounts the AreNode from the Host
|
|
975
1580
|
*
|
|
976
1581
|
* @param node
|
|
977
|
-
* @param syntax
|
|
978
1582
|
* @param scene
|
|
979
|
-
* @param
|
|
980
|
-
*
|
|
1583
|
+
* @param args
|
|
1584
|
+
*
|
|
981
1585
|
*/
|
|
982
|
-
unmount(
|
|
1586
|
+
unmount(node: AreNode, scene: AreScene, ...args: any[]): void;
|
|
983
1587
|
/**
|
|
984
|
-
*
|
|
1588
|
+
* Handles after unmount lifecycle of the AreNode
|
|
1589
|
+
*
|
|
1590
|
+
* @param node
|
|
1591
|
+
* @param scope
|
|
1592
|
+
* @param scene
|
|
1593
|
+
* @param feature
|
|
1594
|
+
* @param args
|
|
985
1595
|
*/
|
|
986
|
-
node: AreNode,
|
|
1596
|
+
afterUnmount(node: AreNode, scope: A_Scope, scene: AreScene, feature: A_Feature, ...args: any[]): void;
|
|
987
1597
|
/**
|
|
988
|
-
*
|
|
1598
|
+
* Handles before destroy lifecycle of the AreNode
|
|
1599
|
+
*
|
|
1600
|
+
* @param node
|
|
1601
|
+
* @param scope
|
|
1602
|
+
* @param scene
|
|
1603
|
+
* @param feature
|
|
1604
|
+
* @param args
|
|
989
1605
|
*/
|
|
990
|
-
|
|
1606
|
+
beforeDestroy(node: AreNode, scope: A_Scope, feature: A_Feature, ...args: any[]): void;
|
|
991
1607
|
/**
|
|
992
|
-
*
|
|
1608
|
+
* Destroys the AreNode from the Host
|
|
1609
|
+
*
|
|
1610
|
+
* @param node
|
|
1611
|
+
* @param scene
|
|
1612
|
+
* @param args
|
|
1613
|
+
*
|
|
993
1614
|
*/
|
|
994
|
-
scene: AreScene,
|
|
1615
|
+
destroy(node: AreNode, scene: AreScene, ...args: any[]): void;
|
|
995
1616
|
/**
|
|
996
|
-
*
|
|
1617
|
+
* Handles after destroy lifecycle of the AreNode
|
|
997
1618
|
*
|
|
998
|
-
*
|
|
1619
|
+
* @param node
|
|
1620
|
+
* @param scope
|
|
1621
|
+
* @param scene
|
|
1622
|
+
* @param feature
|
|
1623
|
+
* @param args
|
|
999
1624
|
*/
|
|
1000
|
-
|
|
1625
|
+
afterDestroy(node: AreNode, scope: A_Scope, feature: A_Feature, ...args: any[]): void;
|
|
1626
|
+
}
|
|
1627
|
+
|
|
1628
|
+
declare class AreLifecycleError extends A_Error {
|
|
1629
|
+
static readonly InvalidLifecycleMethod = "Invalid lifecycle method. Lifecycle method must be one of the following: onBeforeLoad, onLoad, onUpdate, onDestroy.";
|
|
1630
|
+
}
|
|
1631
|
+
|
|
1632
|
+
declare class AreLoader extends A_Component {
|
|
1001
1633
|
/**
|
|
1002
|
-
*
|
|
1634
|
+
* Loads the AreNode
|
|
1003
1635
|
*
|
|
1004
1636
|
* @param node
|
|
1005
1637
|
* @param scope
|
|
1006
|
-
* @param
|
|
1638
|
+
* @param syntax
|
|
1007
1639
|
* @param feature
|
|
1640
|
+
* @param logger
|
|
1008
1641
|
* @param args
|
|
1009
1642
|
*/
|
|
1010
|
-
|
|
1011
|
-
handleSignalVector(vector: A_SignalVector, context: AreContext, state: A_SignalState, scope: A_Scope, logger?: A_Logger): void;
|
|
1643
|
+
load(node: AreNode, scope: A_Scope, feature: A_Feature, logger?: A_Logger, context?: AreContext, ...args: any[]): Promise<void>;
|
|
1012
1644
|
}
|
|
1013
1645
|
|
|
1014
|
-
declare class
|
|
1015
|
-
static readonly
|
|
1016
|
-
static readonly
|
|
1646
|
+
declare class AreLoaderError extends A_Error {
|
|
1647
|
+
static readonly SyntaxError = "Are Loader Syntax Error";
|
|
1648
|
+
static readonly EmptyTemplateError = "Are Loader Empty Template Error";
|
|
1649
|
+
}
|
|
1650
|
+
|
|
1651
|
+
declare class AreWatcher extends A_Component {
|
|
1652
|
+
private readonly handlers;
|
|
1653
|
+
private current;
|
|
1654
|
+
constructor();
|
|
1655
|
+
onChange(handler: (url: URL) => void): () => void;
|
|
1656
|
+
get url(): URL;
|
|
1657
|
+
destroy(): void;
|
|
1658
|
+
private onPopState;
|
|
1659
|
+
private onHashChange;
|
|
1660
|
+
private onURLChange;
|
|
1661
|
+
private attachListeners;
|
|
1662
|
+
private patchHistory;
|
|
1663
|
+
private notify;
|
|
1017
1664
|
}
|
|
1018
1665
|
|
|
1019
|
-
declare class
|
|
1020
|
-
attachListeners(): Promise<void>;
|
|
1021
|
-
template(node: AreNode, store: AreStore): Promise<void>;
|
|
1022
|
-
onSignal(node: AreNode, store: AreStore, scene: AreScene, vector: A_SignalVector, event: AreEvent): Promise<void>;
|
|
1666
|
+
declare class AreSignal<_TSignalDataType extends Record<string, any> = Record<string, any>> extends A_Signal<_TSignalDataType> {
|
|
1023
1667
|
}
|
|
1024
1668
|
|
|
1025
|
-
|
|
1669
|
+
type AreSignalsContextConfig<T extends Are> = {
|
|
1670
|
+
[key in string]: {
|
|
1671
|
+
default: A_TYPES__Ctor<T>;
|
|
1672
|
+
pool: Array<A_TYPES__Ctor<T>>;
|
|
1673
|
+
conditions: Array<{
|
|
1674
|
+
vector: Array<A_Signal<any>>;
|
|
1675
|
+
component: A_TYPES__Ctor<T>;
|
|
1676
|
+
}>;
|
|
1677
|
+
};
|
|
1678
|
+
};
|
|
1679
|
+
|
|
1680
|
+
declare class AreSignalsMeta extends A_ComponentMeta<{
|
|
1681
|
+
vectorToComponent: Map<A_SignalVector, A_TYPES__Ctor<Are>>;
|
|
1682
|
+
componentToVector: Map<A_TYPES__Ctor<Are>, Set<A_SignalVector>>;
|
|
1683
|
+
} & A_TYPES__ComponentMeta> {
|
|
1684
|
+
registerCondition<T extends Are>(component: A_TYPES__Ctor<T>, vector: A_SignalVector): void;
|
|
1685
|
+
findComponentByVector(vector: A_SignalVector): A_TYPES__Ctor<Are> | undefined;
|
|
1686
|
+
}
|
|
1687
|
+
|
|
1688
|
+
declare class AreSignalsContext<T extends Are = Are> extends A_Fragment {
|
|
1689
|
+
/**
|
|
1690
|
+
* Where key is the root ID and the value is an Array of components that participate in conditional compilation.
|
|
1691
|
+
*/
|
|
1692
|
+
protected _componentMap: Map<string, Set<A_TYPES__Ctor<T>>>;
|
|
1693
|
+
protected _defaultsMap: Map<string, A_TYPES__Ctor<T>>;
|
|
1694
|
+
protected _conditionsMap: Map<string, Array<{
|
|
1695
|
+
vector: Array<any>;
|
|
1696
|
+
component: A_TYPES__Ctor<T>;
|
|
1697
|
+
}>>;
|
|
1698
|
+
protected _subscribers: Set<AreNode>;
|
|
1699
|
+
protected signalsMeta(): AreSignalsMeta;
|
|
1700
|
+
subscribe<S extends AreNode>(subscriber: S): void;
|
|
1701
|
+
unsubscribe<S extends AreNode>(subscriber: S): void;
|
|
1702
|
+
get subscribers(): Set<AreNode>;
|
|
1703
|
+
constructor(
|
|
1026
1704
|
/**
|
|
1027
|
-
*
|
|
1028
|
-
* Works with paths generated by the string-based parser
|
|
1705
|
+
* Where key is the root ID and the value is an Array of components that participate in conditional compilation.
|
|
1029
1706
|
*/
|
|
1030
|
-
|
|
1707
|
+
config?: Partial<AreSignalsContextConfig<T>>);
|
|
1031
1708
|
/**
|
|
1032
|
-
*
|
|
1709
|
+
* Returns the components associated with the given ID. If no components are found, returns an empty array.
|
|
1033
1710
|
*
|
|
1034
|
-
* @param
|
|
1035
|
-
* @returns
|
|
1711
|
+
* @param id The ID of the component group.
|
|
1712
|
+
* @returns An array of component constructors.
|
|
1036
1713
|
*/
|
|
1037
|
-
|
|
1714
|
+
getComponentById(id: string): Array<A_TYPES__Ctor<T>>;
|
|
1038
1715
|
/**
|
|
1039
|
-
*
|
|
1716
|
+
* Returns the components associated with the root ID of the given node. If no components are found, returns an empty array.
|
|
1040
1717
|
*
|
|
1041
|
-
* @param root
|
|
1042
|
-
* @
|
|
1043
|
-
* @param element
|
|
1718
|
+
* @param node The AreNode whose root ID is used to retrieve the components.
|
|
1719
|
+
* @returns An array of component constructors.
|
|
1044
1720
|
*/
|
|
1045
|
-
|
|
1721
|
+
getComponentByRoot(node: AreNode): Array<A_TYPES__Ctor<T>>;
|
|
1046
1722
|
/**
|
|
1047
|
-
*
|
|
1723
|
+
* Adds a new component to the specified root ID. If the root ID does not exist, it will be created.
|
|
1048
1724
|
*
|
|
1049
|
-
* @param
|
|
1050
|
-
* @param
|
|
1725
|
+
* @param rootId The ID of the root component group.
|
|
1726
|
+
* @param components An array of component constructors to add.
|
|
1051
1727
|
*/
|
|
1052
|
-
|
|
1728
|
+
extendRoot(rootId: string, components: Array<A_TYPES__Ctor<T>>): void;
|
|
1053
1729
|
/**
|
|
1054
|
-
*
|
|
1730
|
+
* Whether routing is configured for the given root ID.
|
|
1731
|
+
* When false, the root should leave its original template content untouched.
|
|
1055
1732
|
*
|
|
1056
|
-
* @param
|
|
1733
|
+
* @param rootId The id attribute of the <are-root> element.
|
|
1734
|
+
*/
|
|
1735
|
+
hasRoot(rootId: string): boolean;
|
|
1736
|
+
/**
|
|
1737
|
+
* Returns the default component associated with the given root ID, if any.
|
|
1738
|
+
*
|
|
1739
|
+
* @param rootId The ID of the root component group.
|
|
1740
|
+
*/
|
|
1741
|
+
getDefault(rootId: string): A_TYPES__Ctor<T> | undefined;
|
|
1742
|
+
/**
|
|
1743
|
+
* Finds the matching component for the given root ID and incoming signal vector.
|
|
1744
|
+
*
|
|
1745
|
+
* Matching priorities (mirroring AreSignalsMeta):
|
|
1746
|
+
* 1. Full equivalence — vector.equals(conditionVector)
|
|
1747
|
+
* 2. Logical match — vector.match(conditionVector)
|
|
1748
|
+
* 3. Inclusion — incoming vector contains every signal type from condition, checked with signal.compare()
|
|
1749
|
+
*
|
|
1750
|
+
* @param rootId The id attribute of the <are-root> element.
|
|
1751
|
+
* @param vector The incoming signal vector from the bus.
|
|
1057
1752
|
*/
|
|
1058
|
-
|
|
1059
|
-
/**
|
|
1060
|
-
* Create a position-based mapping by parsing the original template with DOM
|
|
1061
|
-
* This ensures 1:1 correspondence between DOM structure and original markup
|
|
1062
|
-
*/
|
|
1063
|
-
private createPositionBasedMarkupMap;
|
|
1064
|
-
/**
|
|
1065
|
-
* Recursively map DOM positions to their exact original markup
|
|
1066
|
-
*/
|
|
1067
|
-
private mapDOMPositions;
|
|
1068
|
-
/**
|
|
1069
|
-
* Index elements using actual DOM structure with position-based markup mapping
|
|
1070
|
-
*/
|
|
1071
|
-
private indexElementsFromDOM;
|
|
1072
|
-
applyAttachRootNodeInstruction(instruction: AttachRootNodeInstruction, logger?: A_Logger): void;
|
|
1073
|
-
applyMountNodeInstruction(instruction: MountNodeInstruction, context: A_ExecutionContext<{
|
|
1074
|
-
element: Element;
|
|
1075
|
-
mountPoint: Element;
|
|
1076
|
-
content: AreScene;
|
|
1077
|
-
}>, syntax: AreSyntax, logger?: A_Logger): void;
|
|
1078
|
-
applyUnmountNodeInstruction(instruction: UnmountNodeInstruction, context: A_ExecutionContext<{
|
|
1079
|
-
element: Element;
|
|
1080
|
-
mountPoint: Element;
|
|
1081
|
-
content: AreScene;
|
|
1082
|
-
}>, logger?: A_Logger): void;
|
|
1083
|
-
applyAddStyleInstruction(instruction: AddStyleInstruction, context: A_ExecutionContext<{
|
|
1084
|
-
element: Element;
|
|
1085
|
-
mountPoint: Element;
|
|
1086
|
-
content: AreScene;
|
|
1087
|
-
}>, logger?: A_Logger): void;
|
|
1088
|
-
applyAttachListenerInstruction(instruction: AttachListenerInstruction, context: A_ExecutionContext<{
|
|
1089
|
-
element: Element;
|
|
1090
|
-
mountPoint: Element;
|
|
1091
|
-
content: AreScene;
|
|
1092
|
-
}>, logger?: A_Logger): void;
|
|
1093
|
-
applyAddAttributeInstruction(instruction: AddAttributeInstruction, context: A_ExecutionContext<{
|
|
1094
|
-
element: Element;
|
|
1095
|
-
mountPoint: Element;
|
|
1096
|
-
content: AreScene;
|
|
1097
|
-
}>, scope: A_Scope, logger?: A_Logger): void;
|
|
1098
|
-
revertInstruction(instruction: ReplaceInterpolationInstruction): void;
|
|
1099
|
-
interpolationTextNodes: Map<string, Text>;
|
|
1100
|
-
applyReplaceInterpolationInstruction(instruction: ReplaceInterpolationInstruction, context: A_ExecutionContext<{
|
|
1101
|
-
element: Element;
|
|
1102
|
-
mountPoint: Element;
|
|
1103
|
-
content: AreScene;
|
|
1104
|
-
}>, scope: A_Scope, syntax: AreSyntax, logger?: A_Logger): void;
|
|
1105
|
-
initAddDirectiveInstruction(instruction: AddDirectiveInstruction, scope: A_Scope, logger?: A_Logger): void;
|
|
1106
|
-
applyAddDirectiveInstruction(instruction: AddDirectiveInstruction, context: A_ExecutionContext<{
|
|
1107
|
-
element: Element;
|
|
1108
|
-
mountPoint: Element;
|
|
1109
|
-
content: AreScene;
|
|
1110
|
-
}>, scope: A_Scope, logger?: A_Logger): void;
|
|
1753
|
+
findComponentByVector(rootId: string, vector: A_SignalVector): A_TYPES__Ctor<T> | undefined;
|
|
1111
1754
|
}
|
|
1112
1755
|
|
|
1113
|
-
declare class
|
|
1756
|
+
declare class AreSignals extends A_Component {
|
|
1757
|
+
handleSignalVector(vector: A_SignalVector, context: AreSignalsContext, state: A_SignalState, scope: A_Scope, logger?: A_Logger): Promise<void>;
|
|
1114
1758
|
/**
|
|
1115
|
-
*
|
|
1759
|
+
* Handles events triggered on the AreNode
|
|
1116
1760
|
*
|
|
1117
|
-
* @param
|
|
1761
|
+
* @param node
|
|
1762
|
+
* @param scope
|
|
1763
|
+
* @param event
|
|
1764
|
+
* @param scene
|
|
1765
|
+
* @param feature
|
|
1766
|
+
* @param args
|
|
1118
1767
|
*/
|
|
1119
|
-
|
|
1768
|
+
propagateEvent(node: AreNode, scope: A_Scope, event: AreEvent, feature: A_Feature, logger?: A_Logger, ...args: any[]): Promise<void>;
|
|
1120
1769
|
}
|
|
1121
1770
|
|
|
1122
|
-
declare class
|
|
1123
|
-
static default():
|
|
1771
|
+
declare class AreInit extends AreSignal {
|
|
1772
|
+
static default(): AreInit | undefined;
|
|
1124
1773
|
}
|
|
1125
1774
|
|
|
1126
|
-
declare class
|
|
1127
|
-
route: A_Route;
|
|
1128
|
-
}> {
|
|
1775
|
+
declare class AreRoute extends AreSignal<A_Route> {
|
|
1129
1776
|
constructor(path: string | RegExp);
|
|
1130
1777
|
get route(): A_Route;
|
|
1131
|
-
static default():
|
|
1778
|
+
static default(): AreRoute | undefined;
|
|
1779
|
+
compare(other: A_Signal<A_Route>): boolean;
|
|
1132
1780
|
}
|
|
1133
1781
|
|
|
1134
|
-
export {
|
|
1782
|
+
export { Are, AreAttribute, type AreAttributeFeatureNames, AreAttributeFeatures, type AreAttribute_Init, type AreAttribute_Serialized, AreCompiler, AreCompilerError, AreContext, type AreContextInit, AreDeclaration, AreEvent, type AreEventProps, type AreFeatureNames, AreFeatures, AreInit, AreInstruction, AreInstructionDefaultNames, AreInstructionError, AreInstructionFeatures, type AreInstructionNewProps, type AreInstructionSerialized, AreInterpreter, AreInterpreterError, AreLifecycle, AreLifecycleError, AreLoader, AreLoaderError, AreMutation, AreNode, type AreNodeFeatureNames, AreNodeFeatures, type AreNodeNewProps, type AreNodeStatusNames, AreNodeStatuses, type ArePropDefinition, AreRoute, AreScene, type AreSceneChanges, AreSceneError, type AreSceneStatusNames, AreSceneStatuses, type AreScene_Serialized, AreSignal, AreSignals, AreSignalsContext, type AreSignalsContextConfig, AreStore, type AreStoreAreComponentMetaKeyNames, AreStoreAreComponentMetaKeys, type AreStorePathValue, type AreStoreWatchingEntity, AreSyntax, type AreSyntaxCompiledExpression, AreSyntaxError, type AreSyntaxInitOptions, type AreSyntaxTokenMatch, type AreSyntaxTokenPayload, type AreSyntaxTokenRules, AreTokenizer, AreTokenizerError, AreTransformer, AreWatcher };
|