@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.
Files changed (759) hide show
  1. package/.conf/tsconfig.base.json +25 -32
  2. package/.conf/tsconfig.browser.json +24 -32
  3. package/.conf/tsconfig.node.json +24 -33
  4. package/CHANGELOG.md +39 -0
  5. package/README.md +214 -2
  6. package/dist/browser/index.d.mts +1375 -727
  7. package/dist/browser/index.mjs +2812 -2170
  8. package/dist/browser/index.mjs.map +1 -1
  9. package/dist/node/Are.context-9Ija_fdC.d.ts +846 -0
  10. package/dist/node/Are.context-D7w32H1G.d.mts +846 -0
  11. package/dist/node/index.d.mts +32 -31
  12. package/dist/node/index.d.ts +32 -31
  13. package/dist/node/index.js +371 -42
  14. package/dist/node/index.mjs +61 -14
  15. package/dist/node/lib/AreAttribute/AreAttribute.constants.d.mts +24 -0
  16. package/dist/node/lib/AreAttribute/AreAttribute.constants.d.ts +24 -0
  17. package/dist/node/lib/AreAttribute/AreAttribute.constants.js +28 -0
  18. package/dist/node/lib/AreAttribute/AreAttribute.constants.js.map +1 -0
  19. package/dist/node/lib/AreAttribute/AreAttribute.constants.mjs +28 -0
  20. package/dist/node/lib/AreAttribute/AreAttribute.constants.mjs.map +1 -0
  21. package/dist/node/lib/AreAttribute/AreAttribute.entity.d.mts +14 -0
  22. package/dist/node/lib/AreAttribute/AreAttribute.entity.d.ts +14 -0
  23. package/dist/node/lib/AreAttribute/AreAttribute.entity.js +113 -0
  24. package/dist/node/lib/AreAttribute/AreAttribute.entity.js.map +1 -0
  25. package/dist/node/lib/AreAttribute/AreAttribute.entity.mjs +104 -0
  26. package/dist/node/lib/AreAttribute/AreAttribute.entity.mjs.map +1 -0
  27. package/dist/node/lib/AreAttribute/AreAttribute.types.d.mts +47 -0
  28. package/dist/node/lib/AreAttribute/AreAttribute.types.d.ts +47 -0
  29. package/dist/node/lib/AreAttribute/AreAttribute.types.js +4 -0
  30. package/dist/node/lib/AreAttribute/AreAttribute.types.js.map +1 -0
  31. package/dist/node/lib/AreAttribute/AreAttribute.types.mjs +3 -0
  32. package/dist/node/lib/AreAttribute/AreAttribute.types.mjs.map +1 -0
  33. package/dist/node/lib/AreCompiler/AreCompiler.component.d.mts +19 -224
  34. package/dist/node/lib/AreCompiler/AreCompiler.component.d.ts +19 -224
  35. package/dist/node/lib/AreCompiler/AreCompiler.component.js +31 -607
  36. package/dist/node/lib/AreCompiler/AreCompiler.component.js.map +1 -1
  37. package/dist/node/lib/AreCompiler/AreCompiler.component.mjs +29 -605
  38. package/dist/node/lib/AreCompiler/AreCompiler.component.mjs.map +1 -1
  39. package/dist/node/lib/AreComponent/Are.component.d.mts +59 -7
  40. package/dist/node/lib/AreComponent/Are.component.d.ts +59 -7
  41. package/dist/node/lib/AreComponent/Are.component.js +84 -25
  42. package/dist/node/lib/AreComponent/Are.component.js.map +1 -1
  43. package/dist/node/lib/AreComponent/Are.component.mjs +85 -26
  44. package/dist/node/lib/AreComponent/Are.component.mjs.map +1 -1
  45. package/dist/node/lib/AreComponent/Are.constants.d.mts +46 -30
  46. package/dist/node/lib/AreComponent/Are.constants.d.ts +46 -30
  47. package/dist/node/lib/AreComponent/Are.constants.js +58 -21
  48. package/dist/node/lib/AreComponent/Are.constants.js.map +1 -1
  49. package/dist/node/lib/AreComponent/Are.constants.mjs +58 -21
  50. package/dist/node/lib/AreComponent/Are.constants.mjs.map +1 -1
  51. package/dist/node/lib/AreComponent/Are.context.d.mts +13 -21
  52. package/dist/node/lib/AreComponent/Are.context.d.ts +13 -21
  53. package/dist/node/lib/AreComponent/Are.context.js +91 -2
  54. package/dist/node/lib/AreComponent/Are.context.js.map +1 -1
  55. package/dist/node/lib/AreComponent/Are.context.mjs +92 -3
  56. package/dist/node/lib/AreComponent/Are.context.mjs.map +1 -1
  57. package/dist/node/lib/AreComponent/Are.meta.d.mts +14 -0
  58. package/dist/node/lib/AreComponent/Are.meta.d.ts +14 -0
  59. package/dist/node/lib/AreComponent/Are.meta.js +10 -0
  60. package/dist/node/lib/AreComponent/Are.meta.js.map +1 -0
  61. package/dist/node/lib/AreComponent/Are.meta.mjs +9 -0
  62. package/dist/node/lib/AreComponent/Are.meta.mjs.map +1 -0
  63. package/dist/node/lib/AreComponent/Are.types.d.mts +30 -1
  64. package/dist/node/lib/AreComponent/Are.types.d.ts +30 -1
  65. package/dist/node/lib/AreEngine/AreEngine.component.d.mts +77 -0
  66. package/dist/node/lib/AreEngine/AreEngine.component.d.ts +77 -0
  67. package/dist/node/lib/AreEngine/AreEngine.component.js +259 -0
  68. package/dist/node/lib/AreEngine/AreEngine.component.js.map +1 -0
  69. package/dist/node/lib/AreEngine/AreEngine.component.mjs +249 -0
  70. package/dist/node/lib/AreEngine/AreEngine.component.mjs.map +1 -0
  71. package/dist/node/lib/AreEngine/AreEngine.constants.d.mts +7 -0
  72. package/dist/node/lib/AreEngine/AreEngine.constants.d.ts +7 -0
  73. package/dist/node/lib/AreEngine/AreEngine.constants.js +11 -0
  74. package/dist/node/lib/AreEngine/AreEngine.constants.js.map +1 -0
  75. package/dist/node/lib/AreEngine/AreEngine.constants.mjs +11 -0
  76. package/dist/node/lib/AreEngine/AreEngine.constants.mjs.map +1 -0
  77. package/dist/node/lib/AreEngine/AreEngine.error.d.mts +7 -0
  78. package/dist/node/lib/AreEngine/AreEngine.error.d.ts +7 -0
  79. package/dist/node/lib/AreEngine/AreEngine.error.js +11 -0
  80. package/dist/node/lib/AreEngine/AreEngine.error.js.map +1 -0
  81. package/dist/node/lib/AreEngine/AreEngine.error.mjs +10 -0
  82. package/dist/node/lib/AreEngine/AreEngine.error.mjs.map +1 -0
  83. package/dist/node/lib/AreEngine/AreEngine.types.d.mts +40 -0
  84. package/dist/node/lib/AreEngine/AreEngine.types.d.ts +40 -0
  85. package/dist/node/lib/AreEngine/AreEngine.types.js +4 -0
  86. package/dist/node/lib/AreEngine/AreEngine.types.js.map +1 -0
  87. package/dist/node/lib/AreEngine/AreEngine.types.mjs +3 -0
  88. package/dist/node/lib/AreEngine/AreEngine.types.mjs.map +1 -0
  89. package/dist/node/lib/AreEvent/AreEvent.context.d.mts +6 -8
  90. package/dist/node/lib/AreEvent/AreEvent.context.d.ts +6 -8
  91. package/dist/node/lib/AreEvent/AreEvent.context.js +2 -12
  92. package/dist/node/lib/AreEvent/AreEvent.context.js.map +1 -1
  93. package/dist/node/lib/AreEvent/AreEvent.context.mjs +2 -12
  94. package/dist/node/lib/AreEvent/AreEvent.context.mjs.map +1 -1
  95. package/dist/node/lib/AreInstruction/AreInstruction.constants.d.mts +21 -0
  96. package/dist/node/lib/AreInstruction/AreInstruction.constants.d.ts +21 -0
  97. package/dist/node/lib/AreInstruction/AreInstruction.constants.js +26 -0
  98. package/dist/node/lib/AreInstruction/AreInstruction.constants.js.map +1 -0
  99. package/dist/node/lib/AreInstruction/AreInstruction.constants.mjs +25 -0
  100. package/dist/node/lib/AreInstruction/AreInstruction.constants.mjs.map +1 -0
  101. package/dist/node/lib/AreInstruction/AreInstruction.entity.d.mts +14 -0
  102. package/dist/node/lib/AreInstruction/AreInstruction.entity.d.ts +14 -0
  103. package/dist/node/lib/AreInstruction/AreInstruction.entity.js +152 -0
  104. package/dist/node/lib/AreInstruction/AreInstruction.entity.js.map +1 -0
  105. package/dist/node/lib/AreInstruction/AreInstruction.entity.mjs +145 -0
  106. package/dist/node/lib/AreInstruction/AreInstruction.entity.mjs.map +1 -0
  107. package/dist/node/lib/AreInstruction/AreInstruction.error.d.mts +6 -0
  108. package/dist/node/lib/AreInstruction/AreInstruction.error.d.ts +6 -0
  109. package/dist/node/lib/AreInstruction/AreInstruction.error.js +10 -0
  110. package/dist/node/lib/AreInstruction/AreInstruction.error.js.map +1 -0
  111. package/dist/node/lib/AreInstruction/AreInstruction.error.mjs +9 -0
  112. package/dist/node/lib/AreInstruction/AreInstruction.error.mjs.map +1 -0
  113. package/dist/node/lib/AreInstruction/AreInstruction.types.d.mts +14 -0
  114. package/dist/node/lib/AreInstruction/AreInstruction.types.d.ts +14 -0
  115. package/dist/node/lib/AreInstruction/AreInstruction.types.js +4 -0
  116. package/dist/node/lib/AreInstruction/AreInstruction.types.js.map +1 -0
  117. package/dist/node/lib/AreInstruction/AreInstruction.types.mjs +3 -0
  118. package/dist/node/lib/AreInstruction/AreInstruction.types.mjs.map +1 -0
  119. package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.d.mts +14 -0
  120. package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.d.ts +14 -0
  121. package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.js +37 -0
  122. package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.js.map +1 -0
  123. package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.mjs +30 -0
  124. package/dist/node/lib/AreInstruction/types/AreDeclaration.instruction.mjs.map +1 -0
  125. package/dist/node/lib/AreInstruction/types/AreMutation.instruction.d.mts +14 -0
  126. package/dist/node/lib/AreInstruction/types/AreMutation.instruction.d.ts +14 -0
  127. package/dist/node/lib/AreInstruction/types/AreMutation.instruction.js +52 -0
  128. package/dist/node/lib/AreInstruction/types/AreMutation.instruction.js.map +1 -0
  129. package/dist/node/lib/AreInstruction/types/AreMutation.instruction.mjs +45 -0
  130. package/dist/node/lib/AreInstruction/types/AreMutation.instruction.mjs.map +1 -0
  131. package/dist/node/lib/AreInterpreter/AreInterpreter.component.d.mts +49 -0
  132. package/dist/node/lib/AreInterpreter/AreInterpreter.component.d.ts +49 -0
  133. package/dist/node/lib/AreInterpreter/AreInterpreter.component.js +164 -0
  134. package/dist/node/lib/AreInterpreter/AreInterpreter.component.js.map +1 -0
  135. package/dist/node/lib/AreInterpreter/AreInterpreter.component.mjs +154 -0
  136. package/dist/node/lib/AreInterpreter/AreInterpreter.component.mjs.map +1 -0
  137. package/dist/node/lib/AreInterpreter/AreInterpreter.constants.js +4 -0
  138. package/dist/node/lib/AreInterpreter/AreInterpreter.constants.js.map +1 -0
  139. package/dist/node/lib/AreInterpreter/AreInterpreter.constants.mjs +3 -0
  140. package/dist/node/lib/AreInterpreter/AreInterpreter.constants.mjs.map +1 -0
  141. package/dist/node/lib/AreInterpreter/AreInterpreter.error.d.mts +6 -0
  142. package/dist/node/lib/AreInterpreter/AreInterpreter.error.d.ts +6 -0
  143. package/dist/node/lib/AreInterpreter/AreInterpreter.error.js +10 -0
  144. package/dist/node/lib/AreInterpreter/AreInterpreter.error.js.map +1 -0
  145. package/dist/node/lib/AreInterpreter/AreInterpreter.error.mjs +9 -0
  146. package/dist/node/lib/AreInterpreter/AreInterpreter.error.mjs.map +1 -0
  147. package/dist/node/lib/AreInterpreter/AreInterpreter.types.js +4 -0
  148. package/dist/node/lib/AreInterpreter/AreInterpreter.types.js.map +1 -0
  149. package/dist/node/lib/AreInterpreter/AreInterpreter.types.mjs +3 -0
  150. package/dist/node/lib/AreInterpreter/AreInterpreter.types.mjs.map +1 -0
  151. package/dist/node/lib/AreLifecycle/AreLifecycle.component.d.mts +188 -0
  152. package/dist/node/lib/AreLifecycle/AreLifecycle.component.d.ts +188 -0
  153. package/dist/node/lib/AreLifecycle/AreLifecycle.component.js +349 -0
  154. package/dist/node/lib/AreLifecycle/AreLifecycle.component.js.map +1 -0
  155. package/dist/node/lib/AreLifecycle/AreLifecycle.component.mjs +339 -0
  156. package/dist/node/lib/AreLifecycle/AreLifecycle.component.mjs.map +1 -0
  157. package/dist/node/lib/AreLifecycle/AreLifecycle.constants.d.mts +2 -0
  158. package/dist/node/lib/AreLifecycle/AreLifecycle.constants.d.ts +2 -0
  159. package/dist/node/lib/AreLifecycle/AreLifecycle.constants.js +4 -0
  160. package/dist/node/lib/AreLifecycle/AreLifecycle.constants.js.map +1 -0
  161. package/dist/node/lib/AreLifecycle/AreLifecycle.constants.mjs +3 -0
  162. package/dist/node/lib/AreLifecycle/AreLifecycle.constants.mjs.map +1 -0
  163. package/dist/node/lib/AreLifecycle/AreLifecycle.error.d.mts +7 -0
  164. package/dist/node/lib/AreLifecycle/AreLifecycle.error.d.ts +7 -0
  165. package/dist/node/lib/AreLifecycle/AreLifecycle.error.js +11 -0
  166. package/dist/node/lib/AreLifecycle/AreLifecycle.error.js.map +1 -0
  167. package/dist/node/lib/AreLifecycle/AreLifecycle.error.mjs +10 -0
  168. package/dist/node/lib/AreLifecycle/AreLifecycle.error.mjs.map +1 -0
  169. package/dist/node/lib/AreLifecycle/AreLifecycle.types.d.mts +2 -0
  170. package/dist/node/lib/AreLifecycle/AreLifecycle.types.d.ts +2 -0
  171. package/dist/node/lib/AreLifecycle/AreLifecycle.types.js +4 -0
  172. package/dist/node/lib/AreLifecycle/AreLifecycle.types.js.map +1 -0
  173. package/dist/node/lib/AreLifecycle/AreLifecycle.types.mjs +3 -0
  174. package/dist/node/lib/AreLifecycle/AreLifecycle.types.mjs.map +1 -0
  175. package/dist/node/lib/AreLoader/AreLoader.component.d.mts +31 -0
  176. package/dist/node/lib/AreLoader/AreLoader.component.d.ts +31 -0
  177. package/dist/node/lib/AreLoader/AreLoader.component.js +64 -0
  178. package/dist/node/lib/AreLoader/AreLoader.component.js.map +1 -0
  179. package/dist/node/lib/AreLoader/AreLoader.component.mjs +54 -0
  180. package/dist/node/lib/AreLoader/AreLoader.component.mjs.map +1 -0
  181. package/dist/node/lib/AreLoader/AreLoader.constants.d.mts +2 -0
  182. package/dist/node/lib/AreLoader/AreLoader.constants.d.ts +2 -0
  183. package/dist/node/lib/AreLoader/AreLoader.constants.js +4 -0
  184. package/dist/node/lib/AreLoader/AreLoader.constants.js.map +1 -0
  185. package/dist/node/lib/AreLoader/AreLoader.constants.mjs +3 -0
  186. package/dist/node/lib/AreLoader/AreLoader.constants.mjs.map +1 -0
  187. package/dist/node/lib/AreLoader/AreLoader.error.d.mts +8 -0
  188. package/dist/node/lib/AreLoader/AreLoader.error.d.ts +8 -0
  189. package/dist/node/lib/AreLoader/AreLoader.error.js +12 -0
  190. package/dist/node/lib/AreLoader/AreLoader.error.js.map +1 -0
  191. package/dist/node/lib/AreLoader/AreLoader.error.mjs +11 -0
  192. package/dist/node/lib/AreLoader/AreLoader.error.mjs.map +1 -0
  193. package/dist/node/lib/AreLoader/AreLoader.types.d.mts +2 -0
  194. package/dist/node/lib/AreLoader/AreLoader.types.d.ts +2 -0
  195. package/dist/node/lib/AreLoader/AreLoader.types.js +4 -0
  196. package/dist/node/lib/AreLoader/AreLoader.types.js.map +1 -0
  197. package/dist/node/lib/AreLoader/AreLoader.types.mjs +3 -0
  198. package/dist/node/lib/AreLoader/AreLoader.types.mjs.map +1 -0
  199. package/dist/node/lib/AreNode/AreNode.constants.d.mts +87 -17
  200. package/dist/node/lib/AreNode/AreNode.constants.d.ts +87 -17
  201. package/dist/node/lib/AreNode/AreNode.constants.js +111 -11
  202. package/dist/node/lib/AreNode/AreNode.constants.js.map +1 -1
  203. package/dist/node/lib/AreNode/AreNode.constants.mjs +111 -12
  204. package/dist/node/lib/AreNode/AreNode.constants.mjs.map +1 -1
  205. package/dist/node/lib/AreNode/AreNode.entity.d.mts +12 -6
  206. package/dist/node/lib/AreNode/AreNode.entity.d.ts +12 -6
  207. package/dist/node/lib/AreNode/AreNode.entity.js +281 -49
  208. package/dist/node/lib/AreNode/AreNode.entity.js.map +1 -1
  209. package/dist/node/lib/AreNode/AreNode.entity.mjs +282 -50
  210. package/dist/node/lib/AreNode/AreNode.entity.mjs.map +1 -1
  211. package/dist/node/lib/AreNode/AreNode.types.d.mts +14 -13
  212. package/dist/node/lib/AreNode/AreNode.types.d.ts +14 -13
  213. package/dist/node/lib/AreScene/AreScene.constants.d.mts +7 -0
  214. package/dist/node/lib/AreScene/AreScene.constants.d.ts +7 -0
  215. package/dist/node/lib/AreScene/AreScene.constants.js +11 -0
  216. package/dist/node/lib/AreScene/AreScene.constants.js.map +1 -0
  217. package/dist/node/lib/AreScene/AreScene.constants.mjs +11 -0
  218. package/dist/node/lib/AreScene/AreScene.constants.mjs.map +1 -0
  219. package/dist/node/lib/AreScene/AreScene.context.d.mts +12 -6
  220. package/dist/node/lib/AreScene/AreScene.context.d.ts +12 -6
  221. package/dist/node/lib/AreScene/AreScene.context.js +284 -186
  222. package/dist/node/lib/AreScene/AreScene.context.js.map +1 -1
  223. package/dist/node/lib/AreScene/AreScene.context.mjs +277 -185
  224. package/dist/node/lib/AreScene/AreScene.context.mjs.map +1 -1
  225. package/dist/node/lib/AreScene/AreScene.error.d.mts +4 -0
  226. package/dist/node/lib/AreScene/AreScene.error.d.ts +4 -0
  227. package/dist/node/lib/AreScene/AreScene.error.js +4 -0
  228. package/dist/node/lib/AreScene/AreScene.error.js.map +1 -1
  229. package/dist/node/lib/AreScene/AreScene.error.mjs +4 -0
  230. package/dist/node/lib/AreScene/AreScene.error.mjs.map +1 -1
  231. package/dist/node/lib/AreScene/AreScene.types.d.mts +14 -9
  232. package/dist/node/lib/AreScene/AreScene.types.d.ts +14 -9
  233. package/dist/node/lib/AreSignals/AreSignal.entity.d.mts +6 -0
  234. package/dist/node/lib/AreSignals/AreSignal.entity.d.ts +6 -0
  235. package/dist/node/lib/AreSignals/AreSignal.entity.js +24 -0
  236. package/dist/node/lib/AreSignals/AreSignal.entity.js.map +1 -0
  237. package/dist/node/lib/AreSignals/AreSignal.entity.mjs +17 -0
  238. package/dist/node/lib/AreSignals/AreSignal.entity.mjs.map +1 -0
  239. package/dist/node/lib/AreSignals/AreSignals.component.d.mts +35 -0
  240. package/dist/node/lib/AreSignals/AreSignals.component.d.ts +35 -0
  241. package/dist/node/lib/AreSignals/AreSignals.component.js +90 -0
  242. package/dist/node/lib/AreSignals/AreSignals.component.js.map +1 -0
  243. package/dist/node/lib/AreSignals/AreSignals.component.mjs +80 -0
  244. package/dist/node/lib/AreSignals/AreSignals.component.mjs.map +1 -0
  245. package/dist/node/lib/AreSignals/AreSignals.constants.d.mts +2 -0
  246. package/dist/node/lib/AreSignals/AreSignals.constants.d.ts +2 -0
  247. package/dist/node/lib/AreSignals/AreSignals.constants.js +4 -0
  248. package/dist/node/lib/AreSignals/AreSignals.constants.js.map +1 -0
  249. package/dist/node/lib/AreSignals/AreSignals.constants.mjs +3 -0
  250. package/dist/node/lib/AreSignals/AreSignals.constants.mjs.map +1 -0
  251. package/dist/node/lib/AreSignals/AreSignals.context.d.mts +86 -0
  252. package/dist/node/lib/AreSignals/AreSignals.context.d.ts +86 -0
  253. package/dist/node/lib/AreSignals/AreSignals.context.js +153 -0
  254. package/dist/node/lib/AreSignals/AreSignals.context.js.map +1 -0
  255. package/dist/node/lib/AreSignals/AreSignals.context.mjs +146 -0
  256. package/dist/node/lib/AreSignals/AreSignals.context.mjs.map +1 -0
  257. package/dist/node/lib/AreSignals/AreSignals.meta.d.mts +15 -0
  258. package/dist/node/lib/AreSignals/AreSignals.meta.d.ts +15 -0
  259. package/dist/node/lib/AreSignals/AreSignals.meta.js +48 -0
  260. package/dist/node/lib/AreSignals/AreSignals.meta.js.map +1 -0
  261. package/dist/node/lib/AreSignals/AreSignals.meta.mjs +47 -0
  262. package/dist/node/lib/AreSignals/AreSignals.meta.mjs.map +1 -0
  263. package/dist/node/lib/AreSignals/AreSignals.types.d.mts +18 -0
  264. package/dist/node/lib/AreSignals/AreSignals.types.d.ts +18 -0
  265. package/dist/node/lib/AreSignals/AreSignals.types.js +4 -0
  266. package/dist/node/lib/AreSignals/AreSignals.types.js.map +1 -0
  267. package/dist/node/lib/AreSignals/AreSignals.types.mjs +3 -0
  268. package/dist/node/lib/AreSignals/AreSignals.types.mjs.map +1 -0
  269. package/dist/node/lib/AreSignals/entities/AreInit.signal.d.mts +8 -0
  270. package/dist/node/lib/AreSignals/entities/AreInit.signal.d.ts +8 -0
  271. package/dist/node/lib/AreSignals/entities/AreInit.signal.js +13 -0
  272. package/dist/node/lib/AreSignals/entities/AreInit.signal.js.map +1 -0
  273. package/dist/node/lib/AreSignals/entities/AreInit.signal.mjs +12 -0
  274. package/dist/node/lib/AreSignals/entities/AreInit.signal.mjs.map +1 -0
  275. package/dist/node/lib/AreSignals/entities/AreRoute.signal.d.mts +12 -0
  276. package/dist/node/lib/AreSignals/entities/AreRoute.signal.d.ts +12 -0
  277. package/dist/node/lib/AreSignals/entities/AreRoute.signal.js +25 -0
  278. package/dist/node/lib/AreSignals/entities/AreRoute.signal.js.map +1 -0
  279. package/dist/node/lib/AreSignals/entities/AreRoute.signal.mjs +24 -0
  280. package/dist/node/lib/AreSignals/entities/AreRoute.signal.mjs.map +1 -0
  281. package/dist/node/lib/AreStore/AreStore.constants.d.mts +5 -0
  282. package/dist/node/lib/AreStore/AreStore.constants.d.ts +5 -0
  283. package/dist/node/lib/AreStore/AreStore.constants.js +9 -0
  284. package/dist/node/lib/AreStore/AreStore.constants.js.map +1 -0
  285. package/dist/node/lib/AreStore/AreStore.constants.mjs +9 -0
  286. package/dist/node/lib/AreStore/AreStore.constants.mjs.map +1 -0
  287. package/dist/node/lib/AreStore/AreStore.context.d.mts +14 -10
  288. package/dist/node/lib/AreStore/AreStore.context.d.ts +14 -10
  289. package/dist/node/lib/AreStore/AreStore.context.js +162 -6
  290. package/dist/node/lib/AreStore/AreStore.context.js.map +1 -1
  291. package/dist/node/lib/AreStore/AreStore.context.mjs +162 -6
  292. package/dist/node/lib/AreStore/AreStore.context.mjs.map +1 -1
  293. package/dist/node/lib/AreStore/AreStore.types.d.mts +9 -0
  294. package/dist/node/lib/AreStore/AreStore.types.d.ts +9 -0
  295. package/dist/node/lib/AreStore/AreStore.types.js +4 -0
  296. package/dist/node/lib/AreStore/AreStore.types.js.map +1 -0
  297. package/dist/node/lib/AreStore/AreStore.types.mjs +3 -0
  298. package/dist/node/lib/AreStore/AreStore.types.mjs.map +1 -0
  299. package/dist/node/lib/AreSyntax/AreSyntax.constants.d.mts +2 -0
  300. package/dist/node/lib/AreSyntax/AreSyntax.constants.d.ts +2 -0
  301. package/dist/node/lib/AreSyntax/AreSyntax.constants.js +4 -0
  302. package/dist/node/lib/AreSyntax/AreSyntax.constants.js.map +1 -0
  303. package/dist/node/lib/AreSyntax/AreSyntax.constants.mjs +3 -0
  304. package/dist/node/lib/AreSyntax/AreSyntax.constants.mjs.map +1 -0
  305. package/dist/node/lib/AreSyntax/AreSyntax.context.d.mts +99 -51
  306. package/dist/node/lib/AreSyntax/AreSyntax.context.d.ts +99 -51
  307. package/dist/node/lib/AreSyntax/AreSyntax.context.js +305 -73
  308. package/dist/node/lib/AreSyntax/AreSyntax.context.js.map +1 -1
  309. package/dist/node/lib/AreSyntax/AreSyntax.context.mjs +306 -74
  310. package/dist/node/lib/AreSyntax/AreSyntax.context.mjs.map +1 -1
  311. package/dist/node/lib/AreSyntax/AreSyntax.types.d.mts +14 -132
  312. package/dist/node/lib/AreSyntax/AreSyntax.types.d.ts +14 -132
  313. package/dist/node/lib/AreSyntax/AreSyntax.types.js.map +1 -1
  314. package/dist/node/lib/AreSyntax/AreSyntax.types.mjs.map +1 -1
  315. package/dist/node/lib/AreTokenizer/AreTokenizer.component.d.mts +43 -0
  316. package/dist/node/lib/AreTokenizer/AreTokenizer.component.d.ts +43 -0
  317. package/dist/node/lib/AreTokenizer/AreTokenizer.component.js +238 -0
  318. package/dist/node/lib/AreTokenizer/AreTokenizer.component.js.map +1 -0
  319. package/dist/node/lib/AreTokenizer/AreTokenizer.component.mjs +228 -0
  320. package/dist/node/lib/AreTokenizer/AreTokenizer.component.mjs.map +1 -0
  321. package/dist/node/lib/AreTokenizer/AreTokenizer.error.d.mts +6 -0
  322. package/dist/node/lib/AreTokenizer/AreTokenizer.error.d.ts +6 -0
  323. package/dist/node/lib/AreTokenizer/AreTokenizer.error.js +10 -0
  324. package/dist/node/lib/AreTokenizer/AreTokenizer.error.js.map +1 -0
  325. package/dist/node/lib/AreTokenizer/AreTokenizer.error.mjs +9 -0
  326. package/dist/node/lib/AreTokenizer/AreTokenizer.error.mjs.map +1 -0
  327. package/dist/node/lib/AreTransformer/AreTransformer.component.d.mts +20 -0
  328. package/dist/node/lib/AreTransformer/AreTransformer.component.d.ts +20 -0
  329. package/dist/node/lib/AreTransformer/AreTransformer.component.js +48 -0
  330. package/dist/node/lib/AreTransformer/AreTransformer.component.js.map +1 -0
  331. package/dist/node/lib/AreTransformer/AreTransformer.component.mjs +38 -0
  332. package/dist/node/lib/AreTransformer/AreTransformer.component.mjs.map +1 -0
  333. package/dist/node/lib/AreTransformer/AreTransformer.constants.d.mts +2 -0
  334. package/dist/node/lib/AreTransformer/AreTransformer.constants.d.ts +2 -0
  335. package/dist/node/lib/AreTransformer/AreTransformer.constants.js +4 -0
  336. package/dist/node/lib/AreTransformer/AreTransformer.constants.js.map +1 -0
  337. package/dist/node/lib/AreTransformer/AreTransformer.constants.mjs +3 -0
  338. package/dist/node/lib/AreTransformer/AreTransformer.constants.mjs.map +1 -0
  339. package/dist/node/lib/AreTransformer/AreTransformer.types.d.mts +2 -0
  340. package/dist/node/lib/AreTransformer/AreTransformer.types.d.ts +2 -0
  341. package/dist/node/lib/AreTransformer/AreTransformer.types.js +4 -0
  342. package/dist/node/lib/AreTransformer/AreTransformer.types.js.map +1 -0
  343. package/dist/node/lib/AreTransformer/AreTransformer.types.mjs +3 -0
  344. package/dist/node/lib/AreTransformer/AreTransformer.types.mjs.map +1 -0
  345. package/dist/node/lib/AreWatcher/AreWatcher.component.d.mts +18 -0
  346. package/dist/node/lib/AreWatcher/AreWatcher.component.d.ts +18 -0
  347. package/dist/node/lib/AreWatcher/AreWatcher.component.js +78 -0
  348. package/dist/node/lib/AreWatcher/AreWatcher.component.js.map +1 -0
  349. package/dist/node/lib/AreWatcher/AreWatcher.component.mjs +71 -0
  350. package/dist/node/lib/AreWatcher/AreWatcher.component.mjs.map +1 -0
  351. package/dist/node/lib/AreWatcher/AreWatcher.constants.d.mts +2 -0
  352. package/dist/node/lib/AreWatcher/AreWatcher.constants.d.ts +2 -0
  353. package/dist/node/lib/AreWatcher/AreWatcher.constants.js +4 -0
  354. package/dist/node/lib/AreWatcher/AreWatcher.constants.js.map +1 -0
  355. package/dist/node/lib/AreWatcher/AreWatcher.constants.mjs +3 -0
  356. package/dist/node/lib/AreWatcher/AreWatcher.constants.mjs.map +1 -0
  357. package/dist/node/lib/AreWatcher/AreWatcher.context.d.mts +2 -0
  358. package/dist/node/lib/AreWatcher/AreWatcher.context.d.ts +2 -0
  359. package/dist/node/lib/AreWatcher/AreWatcher.context.js +4 -0
  360. package/dist/node/lib/AreWatcher/AreWatcher.context.js.map +1 -0
  361. package/dist/node/lib/AreWatcher/AreWatcher.context.mjs +3 -0
  362. package/dist/node/lib/AreWatcher/AreWatcher.context.mjs.map +1 -0
  363. package/dist/node/lib/AreWatcher/AreWatcher.types.d.mts +2 -0
  364. package/dist/node/lib/AreWatcher/AreWatcher.types.d.ts +2 -0
  365. package/dist/node/lib/AreWatcher/AreWatcher.types.js +4 -0
  366. package/dist/node/lib/AreWatcher/AreWatcher.types.js.map +1 -0
  367. package/dist/node/lib/AreWatcher/AreWatcher.types.mjs +3 -0
  368. package/dist/node/lib/AreWatcher/AreWatcher.types.mjs.map +1 -0
  369. package/jest.config.ts +30 -19
  370. package/package.json +10 -8
  371. package/src/index.ts +92 -15
  372. package/src/lib/AreAttribute/AreAttribute.constants.ts +22 -0
  373. package/src/lib/AreAttribute/AreAttribute.entity.ts +136 -0
  374. package/src/lib/AreAttribute/AreAttribute.types.ts +51 -0
  375. package/src/lib/AreCompiler/AreCompiler.component.ts +48 -980
  376. package/src/lib/AreComponent/Are.component.ts +102 -50
  377. package/src/lib/AreComponent/Are.constants.ts +59 -39
  378. package/src/lib/AreComponent/Are.context.ts +120 -8
  379. package/src/lib/AreComponent/Are.meta.ts +16 -0
  380. package/src/lib/AreComponent/Are.types.ts +30 -0
  381. package/src/lib/AreEngine/AreEngine.component.ts +317 -0
  382. package/src/lib/AreEngine/AreEngine.constants.ts +7 -0
  383. package/src/lib/AreEngine/AreEngine.error.ts +9 -0
  384. package/src/lib/AreEngine/AreEngine.types.ts +24 -0
  385. package/src/lib/AreEvent/AreEvent.context.ts +3 -27
  386. package/src/lib/AreInstruction/AreInstruction.constants.ts +23 -0
  387. package/src/lib/AreInstruction/AreInstruction.entity.ts +207 -0
  388. package/src/lib/AreInstruction/AreInstruction.error.ts +7 -0
  389. package/src/lib/AreInstruction/AreInstruction.types.ts +63 -0
  390. package/src/lib/AreInstruction/types/AreDeclaration.instruction.ts +77 -0
  391. package/src/lib/AreInstruction/types/AreMutation.instruction.ts +87 -0
  392. package/src/lib/AreInterpreter/AreInterpreter.component.ts +208 -0
  393. package/src/lib/AreInterpreter/AreInterpreter.error.ts +6 -0
  394. package/src/lib/AreLifecycle/AreLifecycle.component.ts +638 -0
  395. package/src/lib/AreLifecycle/AreLifecycle.constants.ts +0 -0
  396. package/src/lib/AreLifecycle/AreLifecycle.error.ts +9 -0
  397. package/src/lib/AreLifecycle/AreLifecycle.types.ts +0 -0
  398. package/src/lib/AreLoader/AreLoader.component.ts +89 -0
  399. package/src/lib/AreLoader/AreLoader.constants.ts +0 -0
  400. package/src/lib/AreLoader/AreLoader.error.ts +10 -0
  401. package/src/lib/AreLoader/AreLoader.types.ts +0 -0
  402. package/src/lib/AreNode/AreNode.constants.ts +111 -16
  403. package/src/lib/AreNode/AreNode.entity.ts +380 -91
  404. package/src/lib/AreNode/AreNode.types.ts +7 -11
  405. package/src/lib/AreScene/AreScene.constants.ts +7 -0
  406. package/src/lib/AreScene/AreScene.context.ts +305 -284
  407. package/src/lib/AreScene/AreScene.error.ts +9 -1
  408. package/src/lib/AreScene/AreScene.types.ts +21 -3
  409. package/src/lib/AreSignals/AreSignal.entity.ts +17 -0
  410. package/src/lib/AreSignals/AreSignals.component.ts +98 -0
  411. package/src/lib/AreSignals/AreSignals.constants.ts +0 -0
  412. package/src/lib/AreSignals/AreSignals.context.ts +196 -0
  413. package/src/lib/AreSignals/AreSignals.meta.ts +75 -0
  414. package/src/lib/AreSignals/AreSignals.types.ts +18 -0
  415. package/src/lib/AreSignals/entities/AreInit.signal.ts +7 -0
  416. package/src/lib/AreSignals/entities/AreRoute.signal.ts +27 -0
  417. package/src/lib/AreStore/AreStore.constants.ts +6 -0
  418. package/src/lib/AreStore/AreStore.context.ts +243 -14
  419. package/src/lib/AreStore/AreStore.types.ts +19 -0
  420. package/src/lib/AreSyntax/AreSyntax.constants.ts +0 -0
  421. package/src/lib/AreSyntax/AreSyntax.context.ts +352 -78
  422. package/src/lib/AreSyntax/AreSyntax.types.ts +75 -139
  423. package/src/lib/AreTokenizer/AreTokenizer.component.ts +289 -0
  424. package/src/lib/AreTokenizer/AreTokenizer.error.ts +7 -0
  425. package/src/lib/AreTransformer/AreTransformer.component.ts +46 -0
  426. package/src/lib/AreTransformer/AreTransformer.constants.ts +0 -0
  427. package/src/lib/AreTransformer/AreTransformer.types.ts +0 -0
  428. package/src/lib/AreWatcher/AreWatcher.component.ts +84 -0
  429. package/src/lib/AreWatcher/AreWatcher.constants.ts +0 -0
  430. package/src/lib/AreWatcher/AreWatcher.context.ts +0 -0
  431. package/src/lib/AreWatcher/AreWatcher.types.ts +0 -0
  432. package/tests/AreInstruction.test.ts +73 -0
  433. package/tests/AreScene.test.ts +62 -0
  434. package/tests/AreSignals.test.ts +55 -0
  435. package/tests/AreTokenizer.test.ts +254 -0
  436. package/tests/jest.setup.ts +30 -0
  437. package/tsconfig.json +19 -19
  438. package/tsup.config.ts +6 -0
  439. package/dist/node/engines/html/AreHTML.compiler.d.mts +0 -114
  440. package/dist/node/engines/html/AreHTML.compiler.d.ts +0 -114
  441. package/dist/node/engines/html/AreHTML.compiler.js +0 -408
  442. package/dist/node/engines/html/AreHTML.compiler.js.map +0 -1
  443. package/dist/node/engines/html/AreHTML.compiler.mjs +0 -398
  444. package/dist/node/engines/html/AreHTML.compiler.mjs.map +0 -1
  445. package/dist/node/engines/html/AreHTML.engine.d.mts +0 -36
  446. package/dist/node/engines/html/AreHTML.engine.d.ts +0 -36
  447. package/dist/node/engines/html/AreHTML.engine.js +0 -122
  448. package/dist/node/engines/html/AreHTML.engine.js.map +0 -1
  449. package/dist/node/engines/html/AreHTML.engine.mjs +0 -112
  450. package/dist/node/engines/html/AreHTML.engine.mjs.map +0 -1
  451. package/dist/node/engines/html/index.d.mts +0 -26
  452. package/dist/node/engines/html/index.d.ts +0 -26
  453. package/dist/node/engines/html/index.js +0 -17
  454. package/dist/node/engines/html/index.js.map +0 -1
  455. package/dist/node/engines/html/index.mjs +0 -5
  456. package/dist/node/engines/html/index.mjs.map +0 -1
  457. package/dist/node/engines/json/AreJSON.compiler.d.mts +0 -21
  458. package/dist/node/engines/json/AreJSON.compiler.d.ts +0 -21
  459. package/dist/node/engines/json/AreJSON.compiler.js +0 -24
  460. package/dist/node/engines/json/AreJSON.compiler.js.map +0 -1
  461. package/dist/node/engines/json/AreJSON.compiler.mjs +0 -17
  462. package/dist/node/engines/json/AreJSON.compiler.mjs.map +0 -1
  463. package/dist/node/index-BD-6iOuR.d.ts +0 -238
  464. package/dist/node/index-DMXWCL7R.d.mts +0 -238
  465. package/dist/node/lib/AreApp/AreApp.container.d.mts +0 -22
  466. package/dist/node/lib/AreApp/AreApp.container.d.ts +0 -22
  467. package/dist/node/lib/AreApp/AreApp.container.js +0 -60
  468. package/dist/node/lib/AreApp/AreApp.container.js.map +0 -1
  469. package/dist/node/lib/AreApp/AreApp.container.mjs +0 -48
  470. package/dist/node/lib/AreApp/AreApp.container.mjs.map +0 -1
  471. package/dist/node/lib/AreApp/AreApp.env.js +0 -4
  472. package/dist/node/lib/AreApp/AreApp.env.js.map +0 -1
  473. package/dist/node/lib/AreApp/AreApp.env.mjs +0 -3
  474. package/dist/node/lib/AreApp/AreApp.env.mjs.map +0 -1
  475. package/dist/node/lib/AreApp/AreApp.error.d.mts +0 -6
  476. package/dist/node/lib/AreApp/AreApp.error.d.ts +0 -6
  477. package/dist/node/lib/AreApp/AreApp.error.js +0 -10
  478. package/dist/node/lib/AreApp/AreApp.error.js.map +0 -1
  479. package/dist/node/lib/AreApp/AreApp.error.mjs +0 -9
  480. package/dist/node/lib/AreApp/AreApp.error.mjs.map +0 -1
  481. package/dist/node/lib/AreApp/AreApp.types.js +0 -4
  482. package/dist/node/lib/AreApp/AreApp.types.js.map +0 -1
  483. package/dist/node/lib/AreApp/AreApp.types.mjs +0 -3
  484. package/dist/node/lib/AreApp/AreApp.types.mjs.map +0 -1
  485. package/dist/node/lib/AreApp/index.d.mts +0 -17
  486. package/dist/node/lib/AreApp/index.d.ts +0 -17
  487. package/dist/node/lib/AreApp/index.js +0 -24
  488. package/dist/node/lib/AreApp/index.js.map +0 -1
  489. package/dist/node/lib/AreApp/index.mjs +0 -6
  490. package/dist/node/lib/AreApp/index.mjs.map +0 -1
  491. package/dist/node/lib/AreCompiler/index.d.mts +0 -17
  492. package/dist/node/lib/AreCompiler/index.d.ts +0 -17
  493. package/dist/node/lib/AreCompiler/index.js +0 -24
  494. package/dist/node/lib/AreCompiler/index.js.map +0 -1
  495. package/dist/node/lib/AreCompiler/index.mjs +0 -6
  496. package/dist/node/lib/AreCompiler/index.mjs.map +0 -1
  497. package/dist/node/lib/AreComponent/index.d.mts +0 -11
  498. package/dist/node/lib/AreComponent/index.d.ts +0 -11
  499. package/dist/node/lib/AreComponent/index.js +0 -31
  500. package/dist/node/lib/AreComponent/index.js.map +0 -1
  501. package/dist/node/lib/AreComponent/index.mjs +0 -7
  502. package/dist/node/lib/AreComponent/index.mjs.map +0 -1
  503. package/dist/node/lib/AreEvent/index.d.mts +0 -8
  504. package/dist/node/lib/AreEvent/index.d.ts +0 -8
  505. package/dist/node/lib/AreEvent/index.js +0 -19
  506. package/dist/node/lib/AreEvent/index.js.map +0 -1
  507. package/dist/node/lib/AreEvent/index.mjs +0 -5
  508. package/dist/node/lib/AreEvent/index.mjs.map +0 -1
  509. package/dist/node/lib/AreIndex/AreIndex.context.d.mts +0 -8
  510. package/dist/node/lib/AreIndex/AreIndex.context.d.ts +0 -8
  511. package/dist/node/lib/AreIndex/AreIndex.context.js +0 -142
  512. package/dist/node/lib/AreIndex/AreIndex.context.js.map +0 -1
  513. package/dist/node/lib/AreIndex/AreIndex.context.mjs +0 -141
  514. package/dist/node/lib/AreIndex/AreIndex.context.mjs.map +0 -1
  515. package/dist/node/lib/AreIndex/index.d.mts +0 -8
  516. package/dist/node/lib/AreIndex/index.d.ts +0 -8
  517. package/dist/node/lib/AreIndex/index.js +0 -12
  518. package/dist/node/lib/AreIndex/index.js.map +0 -1
  519. package/dist/node/lib/AreIndex/index.mjs +0 -4
  520. package/dist/node/lib/AreIndex/index.mjs.map +0 -1
  521. package/dist/node/lib/AreNode/index.d.mts +0 -9
  522. package/dist/node/lib/AreNode/index.d.ts +0 -9
  523. package/dist/node/lib/AreNode/index.js +0 -26
  524. package/dist/node/lib/AreNode/index.js.map +0 -1
  525. package/dist/node/lib/AreNode/index.mjs +0 -6
  526. package/dist/node/lib/AreNode/index.mjs.map +0 -1
  527. package/dist/node/lib/AreProps/AreProps.context.d.mts +0 -9
  528. package/dist/node/lib/AreProps/AreProps.context.d.ts +0 -9
  529. package/dist/node/lib/AreProps/AreProps.context.js +0 -32
  530. package/dist/node/lib/AreProps/AreProps.context.js.map +0 -1
  531. package/dist/node/lib/AreProps/AreProps.context.mjs +0 -25
  532. package/dist/node/lib/AreProps/AreProps.context.mjs.map +0 -1
  533. package/dist/node/lib/AreProps/index.d.mts +0 -3
  534. package/dist/node/lib/AreProps/index.d.ts +0 -3
  535. package/dist/node/lib/AreProps/index.js +0 -12
  536. package/dist/node/lib/AreProps/index.js.map +0 -1
  537. package/dist/node/lib/AreProps/index.mjs +0 -4
  538. package/dist/node/lib/AreProps/index.mjs.map +0 -1
  539. package/dist/node/lib/AreRoot/AreRoot.component.d.mts +0 -18
  540. package/dist/node/lib/AreRoot/AreRoot.component.d.ts +0 -18
  541. package/dist/node/lib/AreRoot/AreRoot.component.js +0 -53
  542. package/dist/node/lib/AreRoot/AreRoot.component.js.map +0 -1
  543. package/dist/node/lib/AreRoot/AreRoot.component.mjs +0 -41
  544. package/dist/node/lib/AreRoot/AreRoot.component.mjs.map +0 -1
  545. package/dist/node/lib/AreRoot/index.d.mts +0 -11
  546. package/dist/node/lib/AreRoot/index.d.ts +0 -11
  547. package/dist/node/lib/AreRoot/index.js +0 -12
  548. package/dist/node/lib/AreRoot/index.js.map +0 -1
  549. package/dist/node/lib/AreRoot/index.mjs +0 -4
  550. package/dist/node/lib/AreRoot/index.mjs.map +0 -1
  551. package/dist/node/lib/AreRouter/AreRouter.componeent.d.mts +0 -17
  552. package/dist/node/lib/AreRouter/AreRouter.componeent.d.ts +0 -17
  553. package/dist/node/lib/AreRouter/AreRouter.componeent.js +0 -37
  554. package/dist/node/lib/AreRouter/AreRouter.componeent.js.map +0 -1
  555. package/dist/node/lib/AreRouter/AreRouter.componeent.mjs +0 -25
  556. package/dist/node/lib/AreRouter/AreRouter.componeent.mjs.map +0 -1
  557. package/dist/node/lib/AreRouter/index.d.mts +0 -12
  558. package/dist/node/lib/AreRouter/index.d.ts +0 -12
  559. package/dist/node/lib/AreRouter/index.js +0 -12
  560. package/dist/node/lib/AreRouter/index.js.map +0 -1
  561. package/dist/node/lib/AreRouter/index.mjs +0 -4
  562. package/dist/node/lib/AreRouter/index.mjs.map +0 -1
  563. package/dist/node/lib/AreScene/index.d.mts +0 -9
  564. package/dist/node/lib/AreScene/index.d.ts +0 -9
  565. package/dist/node/lib/AreScene/index.js +0 -24
  566. package/dist/node/lib/AreScene/index.js.map +0 -1
  567. package/dist/node/lib/AreScene/index.mjs +0 -6
  568. package/dist/node/lib/AreScene/index.mjs.map +0 -1
  569. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.d.mts +0 -7
  570. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.d.ts +0 -7
  571. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.js +0 -12
  572. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.js.map +0 -1
  573. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.mjs +0 -12
  574. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.constants.mjs.map +0 -1
  575. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.d.mts +0 -8
  576. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.d.ts +0 -8
  577. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.js +0 -95
  578. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.js.map +0 -1
  579. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.mjs +0 -94
  580. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.entity.mjs.map +0 -1
  581. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.d.mts +0 -8
  582. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.d.ts +0 -8
  583. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.js +0 -4
  584. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.js.map +0 -1
  585. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.mjs +0 -3
  586. package/dist/node/lib/AreSceneInstruction/AreSceneInstruction.types.mjs.map +0 -1
  587. package/dist/node/lib/AreSceneInstruction/index.d.mts +0 -19
  588. package/dist/node/lib/AreSceneInstruction/index.d.ts +0 -19
  589. package/dist/node/lib/AreSceneInstruction/index.js +0 -33
  590. package/dist/node/lib/AreSceneInstruction/index.js.map +0 -1
  591. package/dist/node/lib/AreSceneInstruction/index.mjs +0 -7
  592. package/dist/node/lib/AreSceneInstruction/index.mjs.map +0 -1
  593. package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.d.mts +0 -19
  594. package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.d.ts +0 -19
  595. package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.js +0 -27
  596. package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.js.map +0 -1
  597. package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.mjs +0 -26
  598. package/dist/node/lib/AreSceneInstruction/types/AddAttribute.instruction.mjs.map +0 -1
  599. package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.d.mts +0 -20
  600. package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.d.ts +0 -20
  601. package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.js +0 -27
  602. package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.js.map +0 -1
  603. package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.mjs +0 -26
  604. package/dist/node/lib/AreSceneInstruction/types/AddDirective.instruction.mjs.map +0 -1
  605. package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.d.mts +0 -17
  606. package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.d.ts +0 -17
  607. package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.js +0 -23
  608. package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.js.map +0 -1
  609. package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.mjs +0 -22
  610. package/dist/node/lib/AreSceneInstruction/types/AddStyle.instruction.mjs.map +0 -1
  611. package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.d.mts +0 -19
  612. package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.d.ts +0 -19
  613. package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.js +0 -27
  614. package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.js.map +0 -1
  615. package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.mjs +0 -26
  616. package/dist/node/lib/AreSceneInstruction/types/AddStyleProperty.instruction.mjs.map +0 -1
  617. package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.d.mts +0 -23
  618. package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.d.ts +0 -23
  619. package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.js +0 -41
  620. package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.js.map +0 -1
  621. package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.mjs +0 -40
  622. package/dist/node/lib/AreSceneInstruction/types/AttachListener.instruction.mjs.map +0 -1
  623. package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.d.mts +0 -15
  624. package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.d.ts +0 -15
  625. package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.js +0 -21
  626. package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.js.map +0 -1
  627. package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.mjs +0 -20
  628. package/dist/node/lib/AreSceneInstruction/types/AttachRootNode.instruction.mjs.map +0 -1
  629. package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.d.mts +0 -17
  630. package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.d.ts +0 -17
  631. package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.js +0 -23
  632. package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.js.map +0 -1
  633. package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.mjs +0 -22
  634. package/dist/node/lib/AreSceneInstruction/types/MountNode.instruction.mjs.map +0 -1
  635. package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.d.mts +0 -23
  636. package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.d.ts +0 -23
  637. package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.js +0 -34
  638. package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.js.map +0 -1
  639. package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.mjs +0 -33
  640. package/dist/node/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.mjs.map +0 -1
  641. package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.d.mts +0 -16
  642. package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.d.ts +0 -16
  643. package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.js +0 -20
  644. package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.js.map +0 -1
  645. package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.mjs +0 -19
  646. package/dist/node/lib/AreSceneInstruction/types/UnmountNode.instruction.mjs.map +0 -1
  647. package/dist/node/lib/AreSceneInstruction/types/index.d.mts +0 -18
  648. package/dist/node/lib/AreSceneInstruction/types/index.d.ts +0 -18
  649. package/dist/node/lib/AreSceneInstruction/types/index.js +0 -52
  650. package/dist/node/lib/AreSceneInstruction/types/index.js.map +0 -1
  651. package/dist/node/lib/AreSceneInstruction/types/index.mjs +0 -12
  652. package/dist/node/lib/AreSceneInstruction/types/index.mjs.map +0 -1
  653. package/dist/node/lib/AreSlot/AreSlot.component.d.mts +0 -8
  654. package/dist/node/lib/AreSlot/AreSlot.component.d.ts +0 -8
  655. package/dist/node/lib/AreSlot/AreSlot.component.js +0 -37
  656. package/dist/node/lib/AreSlot/AreSlot.component.js.map +0 -1
  657. package/dist/node/lib/AreSlot/AreSlot.component.mjs +0 -36
  658. package/dist/node/lib/AreSlot/AreSlot.component.mjs.map +0 -1
  659. package/dist/node/lib/AreStore/index.d.mts +0 -3
  660. package/dist/node/lib/AreStore/index.d.ts +0 -3
  661. package/dist/node/lib/AreStore/index.js +0 -12
  662. package/dist/node/lib/AreStore/index.js.map +0 -1
  663. package/dist/node/lib/AreStore/index.mjs +0 -4
  664. package/dist/node/lib/AreStore/index.mjs.map +0 -1
  665. package/dist/node/lib/AreSyntax/AreSyntax.component.d.mts +0 -89
  666. package/dist/node/lib/AreSyntax/AreSyntax.component.d.ts +0 -89
  667. package/dist/node/lib/AreSyntax/AreSyntax.component.js +0 -241
  668. package/dist/node/lib/AreSyntax/AreSyntax.component.js.map +0 -1
  669. package/dist/node/lib/AreSyntax/AreSyntax.component.mjs +0 -232
  670. package/dist/node/lib/AreSyntax/AreSyntax.component.mjs.map +0 -1
  671. package/dist/node/lib/AreSyntax/index.d.mts +0 -12
  672. package/dist/node/lib/AreSyntax/index.d.ts +0 -12
  673. package/dist/node/lib/AreSyntax/index.js +0 -29
  674. package/dist/node/lib/AreSyntax/index.js.map +0 -1
  675. package/dist/node/lib/AreSyntax/index.mjs +0 -7
  676. package/dist/node/lib/AreSyntax/index.mjs.map +0 -1
  677. package/dist/node/signals/AreInit.signal.d.mts +0 -7
  678. package/dist/node/signals/AreInit.signal.d.ts +0 -7
  679. package/dist/node/signals/AreInit.signal.js +0 -13
  680. package/dist/node/signals/AreInit.signal.js.map +0 -1
  681. package/dist/node/signals/AreInit.signal.mjs +0 -12
  682. package/dist/node/signals/AreInit.signal.mjs.map +0 -1
  683. package/dist/node/signals/AreRoute.signal.d.mts +0 -12
  684. package/dist/node/signals/AreRoute.signal.d.ts +0 -12
  685. package/dist/node/signals/AreRoute.signal.js +0 -24
  686. package/dist/node/signals/AreRoute.signal.js.map +0 -1
  687. package/dist/node/signals/AreRoute.signal.mjs +0 -23
  688. package/dist/node/signals/AreRoute.signal.mjs.map +0 -1
  689. package/dist/node/signals/index.d.mts +0 -4
  690. package/dist/node/signals/index.d.ts +0 -4
  691. package/dist/node/signals/index.js +0 -17
  692. package/dist/node/signals/index.js.map +0 -1
  693. package/dist/node/signals/index.mjs +0 -5
  694. package/dist/node/signals/index.mjs.map +0 -1
  695. package/examples/jumpstart/concept.ts +0 -60
  696. package/examples/jumpstart/containers/UI.container.ts +0 -172
  697. package/examples/jumpstart/dist/index.html +0 -22
  698. package/examples/jumpstart/dist/mls3rrlq-lofs95.js +0 -129
  699. package/examples/jumpstart/dist/static/css/main.css +0 -40
  700. package/examples/jumpstart/dist/static/img/test.png +0 -0
  701. package/examples/jumpstart/public/index.html +0 -22
  702. package/examples/jumpstart/public/static/css/main.css +0 -40
  703. package/examples/jumpstart/public/static/img/test.png +0 -0
  704. package/examples/jumpstart/src/components/A-Btn.component.ts +0 -124
  705. package/examples/jumpstart/src/components/A-Input.component.ts +0 -78
  706. package/examples/jumpstart/src/components/A-Navigation.component.ts +0 -167
  707. package/examples/jumpstart/src/components/SignInComponent.component.ts +0 -127
  708. package/examples/jumpstart/src/concept.ts +0 -92
  709. package/src/engines/html/AreHTML.compiler.ts +0 -657
  710. package/src/engines/html/AreHTML.engine.ts +0 -62
  711. package/src/engines/html/index.ts +0 -2
  712. package/src/engines/json/AreJSON.compiler.ts +0 -13
  713. package/src/lib/AreApp/AreApp.container.ts +0 -77
  714. package/src/lib/AreApp/AreApp.error.ts +0 -7
  715. package/src/lib/AreApp/index.ts +0 -4
  716. package/src/lib/AreCompiler/index.ts +0 -3
  717. package/src/lib/AreComponent/index.ts +0 -4
  718. package/src/lib/AreEvent/index.ts +0 -2
  719. package/src/lib/AreIndex/AreIndex.context.ts +0 -174
  720. package/src/lib/AreIndex/index.ts +0 -1
  721. package/src/lib/AreNode/index.ts +0 -4
  722. package/src/lib/AreProps/AreProps.context.ts +0 -26
  723. package/src/lib/AreProps/index.ts +0 -1
  724. package/src/lib/AreRoot/AreRoot.component.ts +0 -54
  725. package/src/lib/AreRoot/index.ts +0 -1
  726. package/src/lib/AreRouter/AreRouter.componeent.ts +0 -24
  727. package/src/lib/AreRouter/index.ts +0 -1
  728. package/src/lib/AreScene/index.ts +0 -3
  729. package/src/lib/AreSceneInstruction/AreSceneInstruction.constants.ts +0 -7
  730. package/src/lib/AreSceneInstruction/AreSceneInstruction.entity.ts +0 -156
  731. package/src/lib/AreSceneInstruction/AreSceneInstruction.types.ts +0 -8
  732. package/src/lib/AreSceneInstruction/index.ts +0 -4
  733. package/src/lib/AreSceneInstruction/types/AddAttribute.instruction.ts +0 -34
  734. package/src/lib/AreSceneInstruction/types/AddDirective.instruction.ts +0 -36
  735. package/src/lib/AreSceneInstruction/types/AddStyle.instruction.ts +0 -26
  736. package/src/lib/AreSceneInstruction/types/AddStyleProperty.instruction.ts +0 -32
  737. package/src/lib/AreSceneInstruction/types/AttachListener.instruction.ts +0 -57
  738. package/src/lib/AreSceneInstruction/types/AttachRootNode.instruction.ts +0 -23
  739. package/src/lib/AreSceneInstruction/types/MountNode.instruction.ts +0 -29
  740. package/src/lib/AreSceneInstruction/types/ReplaceInterpolation.instruction.ts +0 -45
  741. package/src/lib/AreSceneInstruction/types/UnmountNode.instruction.ts +0 -22
  742. package/src/lib/AreSceneInstruction/types/index.ts +0 -10
  743. package/src/lib/AreSlot/AreSlot.component.ts +0 -48
  744. package/src/lib/AreStore/index.ts +0 -1
  745. package/src/lib/AreSyntax/AreSyntax.component.ts +0 -378
  746. package/src/lib/AreSyntax/index.ts +0 -4
  747. package/src/signals/AreInit.signal.ts +0 -7
  748. package/src/signals/AreRoute.signal.ts +0 -25
  749. package/src/signals/index.ts +0 -2
  750. package/tests/A-HttpChannel.test.ts +0 -204
  751. package/tests/A-HttpServerError.test.ts +0 -204
  752. package/tests/A-Request.test.ts +0 -742
  753. package/tests/A-Service.test.ts +0 -18
  754. /package/dist/node/lib/{AreApp/AreApp.env.d.mts → AreInterpreter/AreInterpreter.constants.d.mts} +0 -0
  755. /package/dist/node/lib/{AreApp/AreApp.env.d.ts → AreInterpreter/AreInterpreter.constants.d.ts} +0 -0
  756. /package/dist/node/lib/{AreApp/AreApp.types.d.mts → AreInterpreter/AreInterpreter.types.d.mts} +0 -0
  757. /package/dist/node/lib/{AreApp/AreApp.types.d.ts → AreInterpreter/AreInterpreter.types.d.ts} +0 -0
  758. /package/src/lib/{AreApp/AreApp.env.ts → AreInterpreter/AreInterpreter.constants.ts} +0 -0
  759. /package/src/lib/{AreApp/AreApp.types.ts → AreInterpreter/AreInterpreter.types.ts} +0 -0
@@ -1,156 +1,92 @@
1
-
2
-
3
- export type AreSyntaxInitOptions = {
4
- /**
5
- * Enable or disable debug mode for AreSyntax.
6
- * When enabled, additional logging and debugging information will be available.
7
- * Default is false.
8
- */
9
- debugMode?: boolean;
10
-
11
- /**
12
- * Custom interpolation delimiters for template parsing.
13
- * Default is ['{{', '}}'].
14
- */
15
- interpolationDelimiters?: [string, string];
16
-
17
- /**
18
- * Custom binding delimiters for data binding parsing.
19
- * Default is ':'.
20
- */
21
- bindingDelimiter?: string;
22
-
23
-
24
- /**
25
- * Custom listener delimiters for event binding parsing.
26
- * Default is '@'.
27
- */
28
- listenerDelimiter?: string;
29
-
30
-
31
-
1
+ import { A_TYPES__Entity_Constructor } from "@adaas/a-concept";
2
+ import { AreAttribute } from "@adaas/are/attribute/AreAttribute.entity";
3
+ import { AreNode } from "@adaas/are/node/AreNode.entity";
4
+ import { AreStore } from "@adaas/are/store/AreStore.context";
5
+ // ── Token Rule ────────────────────────────────────────────────────────────────
6
+
7
+ export interface AreSyntaxTokenRules<T extends AreNode = AreNode> {
8
+ /** Opening delimiter e.g. '<', '{{', '<!--', '{' */
9
+ opening?: string
10
+ /** Closing delimiter e.g. '>', '}}', '-->', '}' */
11
+ closing?: string
12
+ /** Optional self-closing marker e.g. '/>' */
13
+ selfClosing?: string
14
+ /** Regex that must match content immediately before the opening delimiter */
15
+ prefix?: RegExp
16
+ /** Replaces open/close entirely — matches entire pattern via RegExp */
17
+ pattern?: RegExp
18
+ /**
19
+ * Fully custom matcher — complete control over how a token is found.
20
+ * Receives (source, from, to, build) where build(raw, content, position, closing)
21
+ * constructs the AreSyntaxTokenMatch. Return null if no match found.
22
+ */
23
+ matcher?: (
24
+ source: string,
25
+ from: number,
26
+ to: number,
27
+ build: (raw: string, content: string, position: number, closing: string) => AreSyntaxTokenMatch
28
+ ) => AreSyntaxTokenMatch | null
29
+ /** Constructor to instantiate when this rule matches */
30
+ component: A_TYPES__Entity_Constructor<T>
31
+ /** Higher = checked first. Default: 0 */
32
+ priority?: number
33
+ /** Whether this token can contain nested tokens of same open/close. Default: true */
34
+ nested?: boolean
35
+ /** Custom data extractor — called after match, result stored in match.meta */
36
+ extract?: (raw: string, match: AreSyntaxTokenMatch) => Record<string, any>
37
+ }
38
+ // ── Token Payload ───────────────────────────────────────────────────────────────
39
+ export type AreSyntaxTokenPayload = {
32
40
  /**
33
- * Enable or disable strict mode for syntax parsing.
34
- * When enabled, the parser will throw errors for any syntax violations.
35
- * Default is true.
41
+ * 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.
36
42
  */
37
- strictMode?: boolean;
38
-
43
+ id?: string;
39
44
  /**
40
- * A list of custom directives to be recognized by the syntax parser.
41
- * Each directive should be a string representing the directive name.
42
- * Default is an empty array.
45
+ * 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.
43
46
  */
44
- customDirectives?: string[];
45
-
47
+ entity?: string;
46
48
  /**
47
- * Enable or disable whitespace trimming in templates.
48
- * When enabled, leading and trailing whitespace in template expressions will be trimmed.
49
- * Default is true.
49
+ * 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.
50
50
  */
51
- trimWhitespace?: boolean;
52
-
51
+ scope?: string;
52
+ [key: string]: any
53
+ }
53
54
 
54
- /**
55
- * identifier of the root tag to use when compiling in browser context.
56
- */
57
- rootTag?: string;
55
+ // ── Token Match ───────────────────────────────────────────────────────────────
56
+
57
+ export interface AreSyntaxTokenMatch {
58
+ /** Full matched string including delimiters */
59
+ raw: string
60
+ /** Content between delimiters */
61
+ content: string
62
+ /** The opening delimiter that matched */
63
+ opening: string
64
+ /** The closing delimiter that matched */
65
+ closing: string
66
+ /** Start position in source string */
67
+ position: number
68
+ /** Data extracted via rule.extract */
69
+ payload: AreSyntaxTokenPayload
70
+ /** @internal – the rule that produced this match (used by instantiate) */
71
+ _rule?: AreSyntaxTokenRules
72
+ }
58
73
 
74
+ export interface AreSyntaxInitOptions {
59
75
  /**
60
- * Custom directive delimiter for directive parsing.
61
- * Default is '$'.
76
+ * 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.
62
77
  */
63
- directiveDelimiter?: string;
64
-
78
+ rules: AreSyntaxTokenRules[]
65
79
  /**
66
- * List of standard HTML tags to recognize.
80
+ * 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.
67
81
  */
68
- standardTags?: string[]
82
+ trimWhitespace?: boolean
83
+ /** Throw on unclosed tokens. Default: true */
84
+ strictMode?: boolean
69
85
  };
70
86
 
71
87
 
72
- // ==================================================================================
73
- // ========================= SYNTAX Structures TYPES ================================
74
- // ==================================================================================
75
-
76
- export type AreAttribute = {
77
- /**
78
- * Tag name where the attribute was found
79
- */
80
- tag: string;
81
- /**
82
- * Property name (e.g. "label")
83
- */
84
- name: string;
85
- /**
86
- * Full raw attribute (e.g. ' :label="buttonLabel" ')
87
- */
88
- raw: string;
89
- /**
90
- * Attribute value (e.g. "buttonLabel")
91
- */
92
- value: string;
93
- /**
94
- * True if the attribute is a binding (e.g. :prop), false otherwise (e.g. prop="value")
95
- */
96
- binding: boolean;
97
- };
98
88
 
99
- export type AreInterpolation = {
100
- /**
101
- * Tag name where the interpolation was found
102
- */
103
- raw: string;
104
- /**
105
- * Name of the interpolation (e.g. "userName")
106
- */
107
- name: string;
108
- /**
109
- * Position in the template where this interpolation was found
110
- */
111
- position: number;
89
+ export type AreSyntaxCompiledExpression = {
90
+ execute: (store: AreStore, scope?: Record<string, any>) => any
91
+ isCallable: boolean
112
92
  }
113
-
114
-
115
- export type AreListener = {
116
- /**
117
- * tag name where listener was found
118
- */
119
- tag: string;
120
- /**
121
- * event name (e.g. "input")
122
- */
123
- name: string;
124
- /**
125
- * full raw attribute (e.g. ' @input="onChange"')
126
- */
127
- raw: string;
128
- /**
129
- * handler expression (e.g. "onChange")
130
- */
131
- handler: string;
132
- };
133
-
134
-
135
- export type AreDirective = {
136
- /**
137
- * The tag name where the directive was found
138
- */
139
- tag: string;
140
- /**
141
- * The name of the directive (e.g. "$if")
142
- */
143
- name: string;
144
- /**
145
- * The full raw attribute text (e.g. '$if="condition"')
146
- */
147
- raw: string;
148
- /**
149
- * The value expression associated with the directive (e.g. "condition")
150
- */
151
- value?: string;
152
- /**
153
- * The full tag template where the directive was found
154
- */
155
- template: string;
156
- };
@@ -0,0 +1,289 @@
1
+ import { A_Caller, A_Component, A_Context, A_Feature, A_Inject, A_Scope } from "@adaas/a-concept";
2
+ import { A_Frame } from "@adaas/a-frame";
3
+ import { AreNode } from "@adaas/are/node/AreNode.entity";
4
+ import { AreSyntaxTokenMatch, AreSyntaxTokenRules } from "@adaas/are/syntax/AreSyntax.types";
5
+ import { AreSyntax } from "@adaas/are/syntax/AreSyntax.context";
6
+ import { AreContext } from "@adaas/are/component/Are.context";
7
+ // import { AreEngine } from "@adaas/are/engine/AreEngine.component";
8
+ import { AreEngineFeatures } from "@adaas/are/engine/AreEngine.constants";
9
+ import { AreTokenizerError } from "./AreTokenizer.error";
10
+ import { AreNodeFeatures } from "@adaas/are/node/AreNode.constants";
11
+ import { A_Logger } from "@adaas/a-utils/a-logger";
12
+
13
+
14
+ @A_Frame.Component({
15
+ namespace: 'A-ARE',
16
+ name: 'AreTokenizer',
17
+ description: 'AreTokenizer is responsible for scanning and tokenizing template source strings using the syntax rules defined in AreSyntax. It converts raw template strings into AreNode instances that represent the structured AST of the template, enabling downstream compilation and rendering within the ARE framework.'
18
+ })
19
+ export class AreTokenizer extends A_Component {
20
+
21
+ /**
22
+ * 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.
23
+ */
24
+ protected get config(): AreSyntax {
25
+ const syntax = A_Context.scope(this).resolve(AreSyntax);
26
+
27
+ if (!syntax) throw new AreTokenizerError({
28
+ title: 'Syntax Context Not Found',
29
+ description: 'AreTokenizer requires an AreSyntax to be present in the same scope. Ensure that an AreSyntax fragment is included in the concept and is accessible from the scope where AreTokenizer is used.'
30
+ });
31
+
32
+ return syntax
33
+ }
34
+
35
+ /**
36
+ * 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.
37
+ *
38
+ *
39
+ * @param context
40
+ * @returns
41
+ */
42
+ @A_Feature.Extend({
43
+ name: AreEngineFeatures.Load,
44
+ // scope: [AreEngine]
45
+ })
46
+ instantiate<T extends AreNode>(
47
+ @A_Inject(AreContext) context: AreContext,
48
+ ): void {
49
+ context.startPerformance('Tokenizer Instantiate');
50
+
51
+ const source = context.source;
52
+
53
+ const nodes = this
54
+ .scan(source, 0, source.length, context)
55
+ .map(match => {
56
+ const rule = this.findRuleForMatch(match)
57
+ if (!rule) throw new Error(`No rule found for match at position ${match.position}`)
58
+ return new (rule.component as typeof AreNode)(match)
59
+ })
60
+
61
+ for (const node of nodes) {
62
+ context.addRoot(node)
63
+ }
64
+
65
+ context.endPerformance('Tokenizer Instantiate');
66
+ }
67
+
68
+
69
+ @A_Feature.Extend({
70
+ name: AreNodeFeatures.onTokenize,
71
+ scope: [AreNode]
72
+ })
73
+ tokenize(
74
+ @A_Inject(A_Caller) node: AreNode,
75
+ @A_Inject(AreContext) context: AreContext,
76
+ @A_Inject(A_Logger) logger?: A_Logger,
77
+ ) {
78
+ context.startPerformance(`Tokenize method`);
79
+
80
+ const source = node.content
81
+ const content = this
82
+ .scan(source, 0, source.length, context)
83
+ .map(match => {
84
+ const rule = this.findRuleForMatch(match)
85
+ if (!rule) throw new Error(`No rule found for match at position ${match.position}`)
86
+ return new (rule.component as typeof AreNode)(match)
87
+ })
88
+
89
+ logger?.debug('red', `Tokenized node <${node.aseid.toString()}> with content:`, content.length);
90
+
91
+ context.endPerformance(`Tokenize method`);
92
+
93
+ context.startPerformance(`Tokenize node Create Children`);
94
+ for (const child of content) {
95
+ node.addChild(child);
96
+
97
+ context.startPerformance('AreTokenizer.tokenize child init');
98
+ child.init();
99
+ // child.call(AreNodeFeatures.onInit, child.scope);
100
+
101
+ context.endPerformance('AreTokenizer.tokenize child init');
102
+ }
103
+
104
+ context.endPerformance(`Tokenize node Create Children`);
105
+
106
+
107
+ }
108
+
109
+ protected scan(source: string, from: number, to: number, context: AreContext): AreSyntaxTokenMatch[] {
110
+ context.startPerformance('Tokenizer Scan');
111
+
112
+ const tokens: AreSyntaxTokenMatch[] = []
113
+ let index = from
114
+ let hasMatchBefore = false
115
+
116
+ while (index < to) {
117
+ const match = this.findNextMatch(source, index, to)
118
+ if (!match) {
119
+ const rest = source.slice(index, to)
120
+ /**
121
+ * Trailing text (after the last match). When trimWhitespace is on,
122
+ * discard it if it is whitespace-only — it is edge indentation/newlines.
123
+ */
124
+ const t = this.tryPlainText(rest, index)
125
+ if (t && !(this.config.trimWhitespace && !rest.trim())) tokens.push(t)
126
+ break
127
+ }
128
+ if (match.position > index) {
129
+ const plain = source.slice(index, match.position)
130
+ const t = this.tryPlainText(plain, index)
131
+ if (t) {
132
+ /**
133
+ * When trimWhitespace is on and the text is whitespace-only:
134
+ * - Discard if it is leading text (before the first match)
135
+ * - Preserve (collapse to single space) if it is between two matches
136
+ */
137
+ if (this.config.trimWhitespace && !plain.trim()) {
138
+ if (hasMatchBefore) {
139
+ t.content = ' '
140
+ tokens.push(t)
141
+ }
142
+ // else: leading whitespace — skip
143
+ } else {
144
+ tokens.push(t)
145
+ }
146
+ }
147
+ }
148
+ tokens.push(match)
149
+ hasMatchBefore = true
150
+ index = match.position + match.raw.length
151
+ }
152
+
153
+ context.endPerformance('Tokenizer Scan');
154
+
155
+
156
+ return tokens
157
+ }
158
+
159
+ protected findNextMatch(source: string, from: number, to: number): AreSyntaxTokenMatch | null {
160
+ let earliest: AreSyntaxTokenMatch | null = null
161
+ for (const rule of this.config.rules) {
162
+ if (!rule.opening && !rule.closing && !rule.pattern && !rule.matcher) continue
163
+ const match = this.matchRule(source, rule, from, to)
164
+ if (!match) continue
165
+ if (!earliest || match.position < earliest.position) earliest = match
166
+ }
167
+ return earliest
168
+ }
169
+
170
+ protected matchRule(source: string, rule: AreSyntaxTokenRules, from: number, to: number): AreSyntaxTokenMatch | null {
171
+ if (rule.matcher) {
172
+ return rule.matcher(source, from, to, (raw, content, position, closing) =>
173
+ this.buildMatch(rule, raw, content, position, closing)
174
+ )
175
+ }
176
+ if (rule.pattern) {
177
+ const slice = source.slice(from, to)
178
+ rule.pattern.lastIndex = 0
179
+ const m = rule.pattern.exec(slice)
180
+ if (!m) return null
181
+ return this.buildMatch(rule, m[0], m[0], from + m.index, '')
182
+ }
183
+ if (!rule.opening || !rule.closing) return null
184
+ if (rule.prefix) return this.matchPrefixedRule(source, rule, from, to)
185
+ return this.matchStandardRule(source, rule, from, to)
186
+ }
187
+
188
+ protected matchStandardRule(source: string, rule: AreSyntaxTokenRules, from: number, to: number): AreSyntaxTokenMatch | null {
189
+ const opening = rule.opening!
190
+ const closing = rule.closing!
191
+ const openPos = source.indexOf(opening, from)
192
+ if (openPos === -1 || openPos >= to) return null
193
+ const contentStart = openPos + opening.length
194
+
195
+ if (rule.selfClosing) {
196
+ const selfClosePos = source.indexOf(rule.selfClosing, contentStart)
197
+ const normalClosePos = source.indexOf(closing, contentStart)
198
+ if (selfClosePos !== -1 && (normalClosePos === -1 || selfClosePos < normalClosePos)) {
199
+ const closeEnd = selfClosePos + rule.selfClosing.length
200
+ return this.buildMatch(rule, source.slice(openPos, closeEnd), source.slice(contentStart, selfClosePos), openPos, rule.selfClosing)
201
+ }
202
+ }
203
+
204
+ const closePos = rule.nested !== false
205
+ ? this.findMatchingClose(source, opening, closing, contentStart, to)
206
+ : source.indexOf(closing, contentStart)
207
+
208
+ if (closePos === -1) {
209
+ if (this.config.strictMode) throw new Error(`Unclosed token '${opening}' at position ${openPos}`)
210
+ return null
211
+ }
212
+
213
+ return this.buildMatch(rule, source.slice(openPos, closePos + closing.length), source.slice(contentStart, closePos), openPos, closing)
214
+ }
215
+
216
+ protected matchPrefixedRule(source: string, rule: AreSyntaxTokenRules, from: number, to: number): AreSyntaxTokenMatch | null {
217
+ const opening = rule.opening!
218
+ const closing = rule.closing!
219
+ let searchFrom = from
220
+
221
+ while (searchFrom < to) {
222
+ const openPos = source.indexOf(opening, searchFrom)
223
+ if (openPos === -1 || openPos >= to) return null
224
+
225
+ const before = source.slice(from, openPos)
226
+ const prefixRe = new RegExp(rule.prefix!.source + '$')
227
+ const prefixM = prefixRe.exec(before)
228
+
229
+ if (prefixM) {
230
+ const actualStart = openPos - prefixM[0].length
231
+ const contentStart = openPos + opening.length
232
+ const closePos = rule.nested !== false
233
+ ? this.findMatchingClose(source, opening, closing, contentStart, to)
234
+ : source.indexOf(closing, contentStart)
235
+
236
+ if (closePos === -1) {
237
+ if (this.config.strictMode) throw new Error(`Unclosed token '${opening}' at position ${openPos}`)
238
+ return null
239
+ }
240
+
241
+ return this.buildMatch(rule, source.slice(actualStart, closePos + closing.length), source.slice(contentStart, closePos), actualStart, closing)
242
+ }
243
+ searchFrom = openPos + 1
244
+ }
245
+ return null
246
+ }
247
+
248
+ protected findMatchingClose(source: string, opening: string, closing: string, from: number, to: number): number {
249
+ let level = 1
250
+ let index = from
251
+ while (index < to) {
252
+ const nextOpen = source.indexOf(opening, index)
253
+ const nextClose = source.indexOf(closing, index)
254
+ if (nextClose === -1) return -1
255
+ if (nextOpen !== -1 && nextOpen < nextClose) {
256
+ level++
257
+ index = nextOpen + opening.length
258
+ continue
259
+ }
260
+ level--
261
+ if (level === 0) return nextClose
262
+ index = nextClose + closing.length
263
+ }
264
+ return -1
265
+ }
266
+
267
+ protected buildMatch(rule: AreSyntaxTokenRules, raw: string, content: string, position: number, closingUsed: string): AreSyntaxTokenMatch {
268
+ const trimmed = this.config.trimWhitespace ? content.trim() : content
269
+ const match: AreSyntaxTokenMatch = { raw, content: trimmed, opening: rule.opening ?? '', closing: closingUsed, position, payload: {}, _rule: rule }
270
+ if (rule.extract) match.payload = rule.extract(raw, match)
271
+ return match
272
+ }
273
+
274
+ protected tryPlainText(raw: string, position: number): AreSyntaxTokenMatch | null {
275
+ if (!raw) return null
276
+ const rule = this.config.rules.find(r => !r.opening && !r.closing && !r.pattern && !r.matcher)
277
+ if (!rule) return null
278
+ const match = this.buildMatch(rule, raw, raw, position, '')
279
+ match._rule = rule
280
+ return match
281
+ }
282
+
283
+ protected findRuleForMatch(match: AreSyntaxTokenMatch): AreSyntaxTokenRules | undefined {
284
+ // Fast path: the rule that produced this match is already stored
285
+ if (match._rule) return match._rule
286
+ // Fallback: match by opening/closing (for externally constructed AreSyntaxTokenMatch objects)
287
+ return this.config.rules.find(r => (r.opening ?? '') === match.opening && (r.closing ?? '') === match.closing)
288
+ }
289
+ }
@@ -0,0 +1,7 @@
1
+ import { A_Error } from "@adaas/a-concept";
2
+
3
+
4
+
5
+ export class AreTokenizerError extends A_Error {
6
+
7
+ }
@@ -0,0 +1,46 @@
1
+ import { A_Caller, A_Component, A_Feature, A_FormatterHelper, A_Inject, A_Scope } from "@adaas/a-concept";
2
+ import { A_Frame } from "@adaas/a-frame";
3
+ import { A_Logger } from "@adaas/a-utils/a-logger";
4
+ import { AreNode } from "@adaas/are/node/AreNode.entity";
5
+ import { AreNodeFeatures } from "@adaas/are/node/AreNode.constants";
6
+ import { AreScene } from "@adaas/are/scene/AreScene.context";
7
+
8
+
9
+
10
+ @A_Frame.Component({
11
+ description: 'Reshapes the AreNode tree before compilation without changing its abstraction level. Responsible for structural rewrites that would complicate the compiler if left unhandled — converting $for nodes into AreGroupNode, extracting AreText and AreInterpolation from raw text, sorting directives via TopologicalSorter, and flagging static nodes.'
12
+ })
13
+ export class AreTransformer extends A_Component {
14
+
15
+ @A_Feature.Extend({
16
+ name: AreNodeFeatures.onTransform,
17
+ scope: [AreNode]
18
+ })
19
+ transform(
20
+ @A_Inject(A_Caller) node: AreNode,
21
+ @A_Inject(A_Scope) scope: A_Scope,
22
+ @A_Inject(AreScene) scene: AreScene,
23
+ ...args: any[]
24
+ ) {
25
+ // walk entire tree inside one feature — no recursive feature calls
26
+ const queue = [node]
27
+ while (queue.length > 0) {
28
+ const current = queue.shift()!
29
+ // const scene = current.scene;
30
+ // if (scene.isInactive)
31
+ // continue;
32
+
33
+ /**
34
+ * 2. Prepare Instructions for directives and add then to render plan.
35
+ */
36
+ for (let i = 0; i < current.attributes.length; i++) {
37
+
38
+ const attribute = current.attributes[i];
39
+ attribute.transform();
40
+ }
41
+
42
+ queue.push(...current.children)
43
+ }
44
+
45
+ }
46
+ }
File without changes
@@ -0,0 +1,84 @@
1
+ import { A_Component } from "@adaas/a-concept";
2
+ import { A_Frame } from "@adaas/a-frame";
3
+
4
+ @A_Frame.Component({
5
+ namespace: 'A-ARE',
6
+ name: 'AreWatcher',
7
+ description: 'AreWatcher is a component that observes browser navigation events (history pushState, replaceState, and popstate) and notifies registered handlers when the URL changes, enabling client-side routing and reactive route-based rendering within the ARE framework.'
8
+ })
9
+ export class AreWatcher extends A_Component {
10
+
11
+ private readonly handlers: Set<(url: URL) => void> = new Set();
12
+ private current: URL = new URL(window.location.href);
13
+
14
+ constructor() {
15
+ super();
16
+ this.patchHistory();
17
+ this.attachListeners();
18
+ }
19
+
20
+ // ── Public ────────────────────────────────────────────────────────────────
21
+
22
+ onChange(handler: (url: URL) => void): () => void {
23
+ this.handlers.add(handler);
24
+ return () => this.handlers.delete(handler); // returns unsubscribe fn
25
+ }
26
+
27
+ get url(): URL {
28
+ return this.current;
29
+ }
30
+
31
+ destroy(): void {
32
+ window.removeEventListener('popstate', this.onPopState);
33
+ window.removeEventListener('hashchange', this.onHashChange);
34
+ window.removeEventListener('urlchange', this.onURLChange);
35
+ this.handlers.clear();
36
+ }
37
+
38
+ // ── Listeners ─────────────────────────────────────────────────────────────
39
+
40
+ private onPopState = (): void => {
41
+ this.notify();
42
+ }
43
+
44
+ private onHashChange = (): void => {
45
+ this.notify();
46
+ }
47
+
48
+ private onURLChange = (): void => {
49
+ this.notify();
50
+ }
51
+
52
+ private attachListeners(): void {
53
+ window.addEventListener('popstate', this.onPopState);
54
+ window.addEventListener('hashchange', this.onHashChange);
55
+ window.addEventListener('urlchange', this.onURLChange); // custom event from patch
56
+ }
57
+
58
+ // ── Patch pushState / replaceState ────────────────────────────────────────
59
+
60
+ private patchHistory(): void {
61
+ const patch = (original: typeof history.pushState) =>
62
+ function (this: History, ...args: Parameters<typeof history.pushState>) {
63
+ original.apply(this, args);
64
+ window.dispatchEvent(new Event('urlchange'));
65
+ };
66
+
67
+ history.pushState = patch(history.pushState);
68
+ history.replaceState = patch(history.replaceState);
69
+ }
70
+
71
+ // ── Notify ────────────────────────────────────────────────────────────────
72
+
73
+ private notify(): void {
74
+ const next = new URL(window.location.href);
75
+
76
+ if (next.href === this.current.href) return; // no actual change
77
+
78
+ this.current = next;
79
+
80
+ for (const handler of this.handlers) {
81
+ handler(this.current);
82
+ }
83
+ }
84
+ }
File without changes
File without changes
File without changes