smart-lifecycle 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (887) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +275 -0
  3. package/dist/behaviors/initializer-factory.d.ts +101 -0
  4. package/dist/behaviors/initializer-factory.d.ts.map +1 -0
  5. package/dist/behaviors/initializer-factory.js +183 -0
  6. package/dist/behaviors/initializer-factory.js.map +1 -0
  7. package/dist/behaviors/initializer.base.d.ts +21 -0
  8. package/dist/behaviors/initializer.base.d.ts.map +1 -0
  9. package/dist/behaviors/initializer.base.js +32 -0
  10. package/dist/behaviors/initializer.base.js.map +1 -0
  11. package/dist/behaviors/initializer.d.ts +21 -0
  12. package/dist/behaviors/initializer.d.ts.map +1 -0
  13. package/dist/behaviors/initializer.interface.d.ts +2 -0
  14. package/dist/behaviors/initializer.interface.d.ts.map +1 -0
  15. package/dist/behaviors/initializer.interface.js +2 -0
  16. package/dist/behaviors/initializer.interface.js.map +1 -0
  17. package/dist/behaviors/initializer.js +26 -0
  18. package/dist/behaviors/initializer.js.map +1 -0
  19. package/dist/behaviors/injection-helper.d.ts +90 -0
  20. package/dist/behaviors/injection-helper.d.ts.map +1 -0
  21. package/dist/behaviors/injection-helper.js +136 -0
  22. package/dist/behaviors/injection-helper.js.map +1 -0
  23. package/dist/behaviors/lifecycle-manager-factory.d.ts +126 -0
  24. package/dist/behaviors/lifecycle-manager-factory.d.ts.map +1 -0
  25. package/dist/behaviors/lifecycle-manager-factory.js +211 -0
  26. package/dist/behaviors/lifecycle-manager-factory.js.map +1 -0
  27. package/dist/behaviors/lifecycle-manager.base.d.ts +115 -0
  28. package/dist/behaviors/lifecycle-manager.base.d.ts.map +1 -0
  29. package/dist/behaviors/lifecycle-manager.base.js +156 -0
  30. package/dist/behaviors/lifecycle-manager.base.js.map +1 -0
  31. package/dist/behaviors/lifecycle-manager.d.ts +114 -0
  32. package/dist/behaviors/lifecycle-manager.d.ts.map +1 -0
  33. package/dist/behaviors/lifecycle-manager.interface.d.ts +2 -0
  34. package/dist/behaviors/lifecycle-manager.interface.d.ts.map +1 -0
  35. package/dist/behaviors/lifecycle-manager.interface.js +2 -0
  36. package/dist/behaviors/lifecycle-manager.interface.js.map +1 -0
  37. package/dist/behaviors/lifecycle-manager.js +157 -0
  38. package/dist/behaviors/lifecycle-manager.js.map +1 -0
  39. package/dist/bootstrap.d.ts +9 -0
  40. package/dist/bootstrap.d.ts.map +1 -0
  41. package/dist/bootstrap.js +8 -0
  42. package/dist/bootstrap.js.map +1 -0
  43. package/dist/cli/index.d.ts +3 -0
  44. package/dist/cli/index.d.ts.map +1 -0
  45. package/dist/cli/index.js +228 -0
  46. package/dist/cli/index.js.map +1 -0
  47. package/dist/components/smart-action/smart-action-element.d.ts +15 -0
  48. package/dist/components/smart-action/smart-action-element.d.ts.map +1 -0
  49. package/dist/components/smart-action/smart-action-element.js +149 -0
  50. package/dist/components/smart-action/smart-action-element.js.map +1 -0
  51. package/dist/components/smart-action/smart-action.component.d.ts +10 -0
  52. package/dist/components/smart-action/smart-action.component.d.ts.map +1 -0
  53. package/dist/components/smart-action/smart-action.component.js +68 -0
  54. package/dist/components/smart-action/smart-action.component.js.map +1 -0
  55. package/dist/components/smart-action/smart-action.lifecycle-manager.d.ts +27 -0
  56. package/dist/components/smart-action/smart-action.lifecycle-manager.d.ts.map +1 -0
  57. package/dist/components/smart-action/smart-action.lifecycle-manager.js +140 -0
  58. package/dist/components/smart-action/smart-action.lifecycle-manager.js.map +1 -0
  59. package/dist/components/smart-action.d.ts +66 -0
  60. package/dist/components/smart-action.d.ts.map +1 -0
  61. package/dist/components/smart-action.js +111 -0
  62. package/dist/components/smart-action.js.map +1 -0
  63. package/dist/components/smart-for/diff-keys.d.ts +36 -0
  64. package/dist/components/smart-for/diff-keys.d.ts.map +1 -0
  65. package/dist/components/smart-for/diff-keys.js +39 -0
  66. package/dist/components/smart-for/diff-keys.js.map +1 -0
  67. package/dist/components/smart-for/item-dom-context.d.ts +27 -0
  68. package/dist/components/smart-for/item-dom-context.d.ts.map +1 -0
  69. package/dist/components/smart-for/item-dom-context.js +52 -0
  70. package/dist/components/smart-for/item-dom-context.js.map +1 -0
  71. package/dist/components/smart-for/smart-for-element.d.ts +38 -0
  72. package/dist/components/smart-for/smart-for-element.d.ts.map +1 -0
  73. package/dist/components/smart-for/smart-for-element.js +216 -0
  74. package/dist/components/smart-for/smart-for-element.js.map +1 -0
  75. package/dist/components/smart-for/smart-for-item-scope.d.ts +52 -0
  76. package/dist/components/smart-for/smart-for-item-scope.d.ts.map +1 -0
  77. package/dist/components/smart-for/smart-for-item-scope.js +94 -0
  78. package/dist/components/smart-for/smart-for-item-scope.js.map +1 -0
  79. package/dist/components/smart-for/smart-for.component.d.ts +10 -0
  80. package/dist/components/smart-for/smart-for.component.d.ts.map +1 -0
  81. package/dist/components/smart-for/smart-for.component.js +69 -0
  82. package/dist/components/smart-for/smart-for.component.js.map +1 -0
  83. package/dist/components/smart-for/smart-for.lifecycle-manager.d.ts +97 -0
  84. package/dist/components/smart-for/smart-for.lifecycle-manager.d.ts.map +1 -0
  85. package/dist/components/smart-for/smart-for.lifecycle-manager.js +369 -0
  86. package/dist/components/smart-for/smart-for.lifecycle-manager.js.map +1 -0
  87. package/dist/components/smart-link/smart-link-element.d.ts +36 -0
  88. package/dist/components/smart-link/smart-link-element.d.ts.map +1 -0
  89. package/dist/components/smart-link/smart-link-element.js +101 -0
  90. package/dist/components/smart-link/smart-link-element.js.map +1 -0
  91. package/dist/components/smart-link/smart-link.component.d.ts +21 -0
  92. package/dist/components/smart-link/smart-link.component.d.ts.map +1 -0
  93. package/dist/components/smart-link/smart-link.component.js +78 -0
  94. package/dist/components/smart-link/smart-link.component.js.map +1 -0
  95. package/dist/components/smart-link/smart-link.lifecycle-manager.d.ts +23 -0
  96. package/dist/components/smart-link/smart-link.lifecycle-manager.d.ts.map +1 -0
  97. package/dist/components/smart-link/smart-link.lifecycle-manager.js +53 -0
  98. package/dist/components/smart-link/smart-link.lifecycle-manager.js.map +1 -0
  99. package/dist/components/smart-link.d.ts +2 -0
  100. package/dist/components/smart-link.d.ts.map +1 -0
  101. package/dist/components/smart-link.js +2 -0
  102. package/dist/components/smart-link.js.map +1 -0
  103. package/dist/components/smart-router/navigation-service.interface.d.ts +22 -0
  104. package/dist/components/smart-router/navigation-service.interface.d.ts.map +1 -0
  105. package/dist/components/smart-router/navigation-service.interface.js +2 -0
  106. package/dist/components/smart-router/navigation-service.interface.js.map +1 -0
  107. package/dist/components/smart-router/navigation.d.ts +57 -0
  108. package/dist/components/smart-router/navigation.d.ts.map +1 -0
  109. package/dist/components/smart-router/navigation.js +75 -0
  110. package/dist/components/smart-router/navigation.js.map +1 -0
  111. package/dist/components/smart-router/smart-router-element.d.ts +42 -0
  112. package/dist/components/smart-router/smart-router-element.d.ts.map +1 -0
  113. package/dist/components/smart-router/smart-router-element.js +188 -0
  114. package/dist/components/smart-router/smart-router-element.js.map +1 -0
  115. package/dist/components/smart-router/smart-router.component.d.ts +27 -0
  116. package/dist/components/smart-router/smart-router.component.d.ts.map +1 -0
  117. package/dist/components/smart-router/smart-router.component.js +89 -0
  118. package/dist/components/smart-router/smart-router.component.js.map +1 -0
  119. package/dist/components/smart-router/smart-router.lifecycle-manager.d.ts +25 -0
  120. package/dist/components/smart-router/smart-router.lifecycle-manager.d.ts.map +1 -0
  121. package/dist/components/smart-router/smart-router.lifecycle-manager.js +115 -0
  122. package/dist/components/smart-router/smart-router.lifecycle-manager.js.map +1 -0
  123. package/dist/components/smart-router.d.ts +28 -0
  124. package/dist/components/smart-router.d.ts.map +1 -0
  125. package/dist/components/smart-router.js +45 -0
  126. package/dist/components/smart-router.js.map +1 -0
  127. package/dist/components/smart-select/smart-select-element.d.ts +49 -0
  128. package/dist/components/smart-select/smart-select-element.d.ts.map +1 -0
  129. package/dist/components/smart-select/smart-select-element.js +130 -0
  130. package/dist/components/smart-select/smart-select-element.js.map +1 -0
  131. package/dist/components/smart-select/smart-select.component.d.ts +35 -0
  132. package/dist/components/smart-select/smart-select.component.d.ts.map +1 -0
  133. package/dist/components/smart-select/smart-select.component.js +92 -0
  134. package/dist/components/smart-select/smart-select.component.js.map +1 -0
  135. package/dist/components/smart-select/smart-select.lifecycle-manager.d.ts +52 -0
  136. package/dist/components/smart-select/smart-select.lifecycle-manager.d.ts.map +1 -0
  137. package/dist/components/smart-select/smart-select.lifecycle-manager.js +144 -0
  138. package/dist/components/smart-select/smart-select.lifecycle-manager.js.map +1 -0
  139. package/dist/components/smart-select.d.ts +3 -0
  140. package/dist/components/smart-select.d.ts.map +1 -0
  141. package/dist/components/smart-select.js +3 -0
  142. package/dist/components/smart-select.js.map +1 -0
  143. package/dist/core/component-instance-registry.d.ts +102 -0
  144. package/dist/core/component-instance-registry.d.ts.map +1 -0
  145. package/dist/core/component-instance-registry.js +85 -0
  146. package/dist/core/component-instance-registry.js.map +1 -0
  147. package/dist/core/component-metadata-registry.d.ts +100 -0
  148. package/dist/core/component-metadata-registry.d.ts.map +1 -0
  149. package/dist/core/component-metadata-registry.interface.d.ts +44 -0
  150. package/dist/core/component-metadata-registry.interface.d.ts.map +1 -0
  151. package/dist/core/component-metadata-registry.interface.js +2 -0
  152. package/dist/core/component-metadata-registry.interface.js.map +1 -0
  153. package/dist/core/component-metadata-registry.js +113 -0
  154. package/dist/core/component-metadata-registry.js.map +1 -0
  155. package/dist/core/component-metadata-source.interface.d.ts +40 -0
  156. package/dist/core/component-metadata-source.interface.d.ts.map +1 -0
  157. package/dist/core/component-metadata-source.interface.js +2 -0
  158. package/dist/core/component-metadata-source.interface.js.map +1 -0
  159. package/dist/core/component-metadata.d.ts +57 -0
  160. package/dist/core/component-metadata.d.ts.map +1 -0
  161. package/dist/core/component-metadata.js +2 -0
  162. package/dist/core/component-metadata.js.map +1 -0
  163. package/dist/core/smart-component.d.ts +80 -0
  164. package/dist/core/smart-component.d.ts.map +1 -0
  165. package/dist/core/smart-component.js +86 -0
  166. package/dist/core/smart-component.js.map +1 -0
  167. package/dist/decorators/component.decorator.d.ts +136 -0
  168. package/dist/decorators/component.decorator.d.ts.map +1 -0
  169. package/dist/decorators/component.decorator.js +35 -0
  170. package/dist/decorators/component.decorator.js.map +1 -0
  171. package/dist/decorators/host-listener.decorator.d.ts +30 -0
  172. package/dist/decorators/host-listener.decorator.d.ts.map +1 -0
  173. package/dist/decorators/host-listener.decorator.js +117 -0
  174. package/dist/decorators/host-listener.decorator.js.map +1 -0
  175. package/dist/decorators/index.d.ts +13 -0
  176. package/dist/decorators/index.d.ts.map +1 -0
  177. package/dist/decorators/index.js +8 -0
  178. package/dist/decorators/index.js.map +1 -0
  179. package/dist/decorators/listen/listener-initializer.d.ts +23 -0
  180. package/dist/decorators/listen/listener-initializer.d.ts.map +1 -0
  181. package/dist/decorators/listen/listener-initializer.interface.d.ts +20 -0
  182. package/dist/decorators/listen/listener-initializer.interface.d.ts.map +1 -0
  183. package/dist/decorators/listen/listener-initializer.interface.js +2 -0
  184. package/dist/decorators/listen/listener-initializer.interface.js.map +1 -0
  185. package/dist/decorators/listen/listener-initializer.js +53 -0
  186. package/dist/decorators/listen/listener-initializer.js.map +1 -0
  187. package/dist/decorators/listen/listener-metadata-registry.d.ts +27 -0
  188. package/dist/decorators/listen/listener-metadata-registry.d.ts.map +1 -0
  189. package/dist/decorators/listen/listener-metadata-registry.interface.d.ts +26 -0
  190. package/dist/decorators/listen/listener-metadata-registry.interface.d.ts.map +1 -0
  191. package/dist/decorators/listen/listener-metadata-registry.interface.js +2 -0
  192. package/dist/decorators/listen/listener-metadata-registry.interface.js.map +1 -0
  193. package/dist/decorators/listen/listener-metadata-registry.js +51 -0
  194. package/dist/decorators/listen/listener-metadata-registry.js.map +1 -0
  195. package/dist/decorators/listen.decorator.d.ts +66 -0
  196. package/dist/decorators/listen.decorator.d.ts.map +1 -0
  197. package/dist/decorators/listen.decorator.js +72 -0
  198. package/dist/decorators/listen.decorator.js.map +1 -0
  199. package/dist/decorators/listener-initializer.d.ts +33 -0
  200. package/dist/decorators/listener-initializer.d.ts.map +1 -0
  201. package/dist/decorators/listener-initializer.js +67 -0
  202. package/dist/decorators/listener-initializer.js.map +1 -0
  203. package/dist/decorators/reactive.decorator.d.ts +45 -0
  204. package/dist/decorators/reactive.decorator.d.ts.map +1 -0
  205. package/dist/decorators/reactive.decorator.js +86 -0
  206. package/dist/decorators/reactive.decorator.js.map +1 -0
  207. package/dist/decorators/smart/capture-config.d.ts +10 -0
  208. package/dist/decorators/smart/capture-config.d.ts.map +1 -0
  209. package/dist/decorators/smart/capture-config.js +70 -0
  210. package/dist/decorators/smart/capture-config.js.map +1 -0
  211. package/dist/decorators/smart/dynamic-initializer.d.ts +14 -0
  212. package/dist/decorators/smart/dynamic-initializer.d.ts.map +1 -0
  213. package/dist/decorators/smart/dynamic-initializer.js +35 -0
  214. package/dist/decorators/smart/dynamic-initializer.js.map +1 -0
  215. package/dist/decorators/smart/dynamic-lifecycle.d.ts +17 -0
  216. package/dist/decorators/smart/dynamic-lifecycle.d.ts.map +1 -0
  217. package/dist/decorators/smart/dynamic-lifecycle.js +45 -0
  218. package/dist/decorators/smart/dynamic-lifecycle.js.map +1 -0
  219. package/dist/decorators/smart/enhanced-class.d.ts +21 -0
  220. package/dist/decorators/smart/enhanced-class.d.ts.map +1 -0
  221. package/dist/decorators/smart/enhanced-class.js +93 -0
  222. package/dist/decorators/smart/enhanced-class.js.map +1 -0
  223. package/dist/decorators/smart/smart-component-factory.d.ts +59 -0
  224. package/dist/decorators/smart/smart-component-factory.d.ts.map +1 -0
  225. package/dist/decorators/smart/smart-component-factory.interface.d.ts +48 -0
  226. package/dist/decorators/smart/smart-component-factory.interface.d.ts.map +1 -0
  227. package/dist/decorators/smart/smart-component-factory.interface.js +2 -0
  228. package/dist/decorators/smart/smart-component-factory.interface.js.map +1 -0
  229. package/dist/decorators/smart/smart-component-factory.js +271 -0
  230. package/dist/decorators/smart/smart-component-factory.js.map +1 -0
  231. package/dist/decorators/smart/types.d.ts +81 -0
  232. package/dist/decorators/smart/types.d.ts.map +1 -0
  233. package/dist/decorators/smart/types.js +2 -0
  234. package/dist/decorators/smart/types.js.map +1 -0
  235. package/dist/decorators/smart-render.decorator.d.ts +27 -0
  236. package/dist/decorators/smart-render.decorator.d.ts.map +1 -0
  237. package/dist/decorators/smart-render.decorator.js +41 -0
  238. package/dist/decorators/smart-render.decorator.js.map +1 -0
  239. package/dist/decorators/smart.decorator.d.ts +20 -0
  240. package/dist/decorators/smart.decorator.d.ts.map +1 -0
  241. package/dist/decorators/smart.decorator.js +45 -0
  242. package/dist/decorators/smart.decorator.js.map +1 -0
  243. package/dist/decorators/view-child.decorator.d.ts +21 -0
  244. package/dist/decorators/view-child.decorator.d.ts.map +1 -0
  245. package/dist/decorators/view-child.decorator.js +56 -0
  246. package/dist/decorators/view-child.decorator.js.map +1 -0
  247. package/dist/events/action-publisher.interface.d.ts +69 -0
  248. package/dist/events/action-publisher.interface.d.ts.map +1 -0
  249. package/dist/events/action-publisher.interface.js +2 -0
  250. package/dist/events/action-publisher.interface.js.map +1 -0
  251. package/dist/events/event-bus.d.ts +11 -0
  252. package/dist/events/event-bus.d.ts.map +1 -0
  253. package/dist/events/event-bus.interface.d.ts +66 -0
  254. package/dist/events/event-bus.interface.d.ts.map +1 -0
  255. package/dist/events/event-bus.interface.js +2 -0
  256. package/dist/events/event-bus.interface.js.map +1 -0
  257. package/dist/events/event-bus.js +11 -0
  258. package/dist/events/event-bus.js.map +1 -0
  259. package/dist/events/event-object.d.ts +33 -0
  260. package/dist/events/event-object.d.ts.map +1 -0
  261. package/dist/events/event-object.js +35 -0
  262. package/dist/events/event-object.js.map +1 -0
  263. package/dist/events/event-payload.d.ts +16 -0
  264. package/dist/events/event-payload.d.ts.map +1 -0
  265. package/dist/events/event-payload.js +2 -0
  266. package/dist/events/event-payload.js.map +1 -0
  267. package/dist/events/event-store.d.ts +99 -0
  268. package/dist/events/event-store.d.ts.map +1 -0
  269. package/dist/events/event-store.js +95 -0
  270. package/dist/events/event-store.js.map +1 -0
  271. package/dist/events/rx-event-bus.d.ts +109 -0
  272. package/dist/events/rx-event-bus.d.ts.map +1 -0
  273. package/dist/events/rx-event-bus.js +210 -0
  274. package/dist/events/rx-event-bus.js.map +1 -0
  275. package/dist/html/register-smart-behavior.d.ts +27 -0
  276. package/dist/html/register-smart-behavior.d.ts.map +1 -0
  277. package/dist/html/register-smart-behavior.js +42 -0
  278. package/dist/html/register-smart-behavior.js.map +1 -0
  279. package/dist/html/register-smart-element.d.ts +26 -0
  280. package/dist/html/register-smart-element.d.ts.map +1 -0
  281. package/dist/html/register-smart-element.js +28 -0
  282. package/dist/html/register-smart-element.js.map +1 -0
  283. package/dist/html/services-bootstrap.d.ts +17 -0
  284. package/dist/html/services-bootstrap.d.ts.map +1 -0
  285. package/dist/html/services-bootstrap.js +40 -0
  286. package/dist/html/services-bootstrap.js.map +1 -0
  287. package/dist/html/smart-element-factory.d.ts +51 -0
  288. package/dist/html/smart-element-factory.d.ts.map +1 -0
  289. package/dist/html/smart-element-factory.interface.d.ts +17 -0
  290. package/dist/html/smart-element-factory.interface.d.ts.map +1 -0
  291. package/dist/html/smart-element-factory.interface.js +2 -0
  292. package/dist/html/smart-element-factory.interface.js.map +1 -0
  293. package/dist/html/smart-element-factory.js +118 -0
  294. package/dist/html/smart-element-factory.js.map +1 -0
  295. package/dist/html/smart-element-registrar.d.ts +43 -0
  296. package/dist/html/smart-element-registrar.d.ts.map +1 -0
  297. package/dist/html/smart-element-registrar.interface.d.ts +17 -0
  298. package/dist/html/smart-element-registrar.interface.d.ts.map +1 -0
  299. package/dist/html/smart-element-registrar.interface.js +2 -0
  300. package/dist/html/smart-element-registrar.interface.js.map +1 -0
  301. package/dist/html/smart-element-registrar.js +77 -0
  302. package/dist/html/smart-element-registrar.js.map +1 -0
  303. package/dist/html/smart-tags.d.ts +16 -0
  304. package/dist/html/smart-tags.d.ts.map +1 -0
  305. package/dist/html/smart-tags.js +30 -0
  306. package/dist/html/smart-tags.js.map +1 -0
  307. package/dist/index.d.ts +37 -0
  308. package/dist/index.d.ts.map +1 -0
  309. package/dist/index.js +31 -0
  310. package/dist/index.js.map +1 -0
  311. package/dist/observers/document-locale-observer.d.ts +15 -0
  312. package/dist/observers/document-locale-observer.d.ts.map +1 -0
  313. package/dist/observers/document-locale-observer.js +43 -0
  314. package/dist/observers/document-locale-observer.js.map +1 -0
  315. package/dist/observers/document-theme-observer.d.ts +17 -0
  316. package/dist/observers/document-theme-observer.d.ts.map +1 -0
  317. package/dist/observers/document-theme-observer.js +64 -0
  318. package/dist/observers/document-theme-observer.js.map +1 -0
  319. package/dist/observers/locale-observer.interface.d.ts +21 -0
  320. package/dist/observers/locale-observer.interface.d.ts.map +1 -0
  321. package/dist/observers/locale-observer.interface.js +2 -0
  322. package/dist/observers/locale-observer.interface.js.map +1 -0
  323. package/dist/observers/theme-observer.interface.d.ts +21 -0
  324. package/dist/observers/theme-observer.interface.d.ts.map +1 -0
  325. package/dist/observers/theme-observer.interface.js +2 -0
  326. package/dist/observers/theme-observer.interface.js.map +1 -0
  327. package/dist/providers/adapters/index.d.ts +19 -0
  328. package/dist/providers/adapters/index.d.ts.map +1 -0
  329. package/dist/providers/adapters/index.js +19 -0
  330. package/dist/providers/adapters/index.js.map +1 -0
  331. package/dist/providers/adapters/tsyringe-adapter.d.ts +139 -0
  332. package/dist/providers/adapters/tsyringe-adapter.d.ts.map +1 -0
  333. package/dist/providers/adapters/tsyringe-adapter.js +151 -0
  334. package/dist/providers/adapters/tsyringe-adapter.js.map +1 -0
  335. package/dist/providers/app-services.d.ts +131 -0
  336. package/dist/providers/app-services.d.ts.map +1 -0
  337. package/dist/providers/app-services.js +174 -0
  338. package/dist/providers/app-services.js.map +1 -0
  339. package/dist/providers/default-service-provider.d.ts +57 -0
  340. package/dist/providers/default-service-provider.d.ts.map +1 -0
  341. package/dist/providers/default-service-provider.js +89 -0
  342. package/dist/providers/default-service-provider.js.map +1 -0
  343. package/dist/providers/framework-bootstrap.d.ts +58 -0
  344. package/dist/providers/framework-bootstrap.d.ts.map +1 -0
  345. package/dist/providers/framework-bootstrap.js +153 -0
  346. package/dist/providers/framework-bootstrap.js.map +1 -0
  347. package/dist/providers/framework-element-registration.d.ts +2 -0
  348. package/dist/providers/framework-element-registration.d.ts.map +1 -0
  349. package/dist/providers/framework-element-registration.js +42 -0
  350. package/dist/providers/framework-element-registration.js.map +1 -0
  351. package/dist/providers/service-provider.d.ts +70 -0
  352. package/dist/providers/service-provider.d.ts.map +1 -0
  353. package/dist/providers/service-provider.interface.d.ts +55 -0
  354. package/dist/providers/service-provider.interface.d.ts.map +1 -0
  355. package/dist/providers/service-provider.interface.js +2 -0
  356. package/dist/providers/service-provider.interface.js.map +1 -0
  357. package/dist/providers/service-provider.js +102 -0
  358. package/dist/providers/service-provider.js.map +1 -0
  359. package/dist/reactive/dependency-tracker.d.ts +34 -0
  360. package/dist/reactive/dependency-tracker.d.ts.map +1 -0
  361. package/dist/reactive/dependency-tracker.interface.d.ts +34 -0
  362. package/dist/reactive/dependency-tracker.interface.d.ts.map +1 -0
  363. package/dist/reactive/dependency-tracker.interface.js +2 -0
  364. package/dist/reactive/dependency-tracker.interface.js.map +1 -0
  365. package/dist/reactive/dependency-tracker.js +47 -0
  366. package/dist/reactive/dependency-tracker.js.map +1 -0
  367. package/dist/reactive/index.d.ts +5 -0
  368. package/dist/reactive/index.d.ts.map +1 -0
  369. package/dist/reactive/index.js +4 -0
  370. package/dist/reactive/index.js.map +1 -0
  371. package/dist/reactive/observable.d.ts +15 -0
  372. package/dist/reactive/observable.d.ts.map +1 -0
  373. package/dist/reactive/observable.js +2 -0
  374. package/dist/reactive/observable.js.map +1 -0
  375. package/dist/reactive/operators.d.ts +6 -0
  376. package/dist/reactive/operators.d.ts.map +1 -0
  377. package/dist/reactive/operators.js +11 -0
  378. package/dist/reactive/operators.js.map +1 -0
  379. package/dist/reactive/signal.d.ts +41 -0
  380. package/dist/reactive/signal.d.ts.map +1 -0
  381. package/dist/reactive/signal.js +37 -0
  382. package/dist/reactive/signal.js.map +1 -0
  383. package/dist/reactive/subject.d.ts +30 -0
  384. package/dist/reactive/subject.d.ts.map +1 -0
  385. package/dist/reactive/subject.js +53 -0
  386. package/dist/reactive/subject.js.map +1 -0
  387. package/dist/reactive/subscription.d.ts +33 -0
  388. package/dist/reactive/subscription.d.ts.map +1 -0
  389. package/dist/reactive/subscription.js +53 -0
  390. package/dist/reactive/subscription.js.map +1 -0
  391. package/dist/registration/register-smart-behavior.d.ts +27 -0
  392. package/dist/registration/register-smart-behavior.d.ts.map +1 -0
  393. package/dist/registration/register-smart-behavior.js +42 -0
  394. package/dist/registration/register-smart-behavior.js.map +1 -0
  395. package/dist/registration/register-smart-element.d.ts +27 -0
  396. package/dist/registration/register-smart-element.d.ts.map +1 -0
  397. package/dist/registration/register-smart-element.js +26 -0
  398. package/dist/registration/register-smart-element.js.map +1 -0
  399. package/dist/registration/smart-element-factory.d.ts +46 -0
  400. package/dist/registration/smart-element-factory.d.ts.map +1 -0
  401. package/dist/registration/smart-element-factory.interface.d.ts +17 -0
  402. package/dist/registration/smart-element-factory.interface.d.ts.map +1 -0
  403. package/dist/registration/smart-element-factory.interface.js +2 -0
  404. package/dist/registration/smart-element-factory.interface.js.map +1 -0
  405. package/dist/registration/smart-element-factory.js +146 -0
  406. package/dist/registration/smart-element-factory.js.map +1 -0
  407. package/dist/registration/smart-element-registrar.d.ts +41 -0
  408. package/dist/registration/smart-element-registrar.d.ts.map +1 -0
  409. package/dist/registration/smart-element-registrar.interface.d.ts +17 -0
  410. package/dist/registration/smart-element-registrar.interface.d.ts.map +1 -0
  411. package/dist/registration/smart-element-registrar.interface.js +2 -0
  412. package/dist/registration/smart-element-registrar.interface.js.map +1 -0
  413. package/dist/registration/smart-element-registrar.js +56 -0
  414. package/dist/registration/smart-element-registrar.js.map +1 -0
  415. package/dist/registration/smart-tags.d.ts +16 -0
  416. package/dist/registration/smart-tags.d.ts.map +1 -0
  417. package/dist/registration/smart-tags.js +30 -0
  418. package/dist/registration/smart-tags.js.map +1 -0
  419. package/dist/rendering/bindings/binding-resolver.d.ts +90 -0
  420. package/dist/rendering/bindings/binding-resolver.d.ts.map +1 -0
  421. package/dist/rendering/bindings/binding-resolver.interface.d.ts +31 -0
  422. package/dist/rendering/bindings/binding-resolver.interface.d.ts.map +1 -0
  423. package/dist/rendering/bindings/binding-resolver.interface.js +2 -0
  424. package/dist/rendering/bindings/binding-resolver.interface.js.map +1 -0
  425. package/dist/rendering/bindings/binding-resolver.js +232 -0
  426. package/dist/rendering/bindings/binding-resolver.js.map +1 -0
  427. package/dist/rendering/bindings/expresion-resolver.d.ts +55 -0
  428. package/dist/rendering/bindings/expresion-resolver.d.ts.map +1 -0
  429. package/dist/rendering/bindings/expresion-resolver.interface.d.ts +25 -0
  430. package/dist/rendering/bindings/expresion-resolver.interface.d.ts.map +1 -0
  431. package/dist/rendering/bindings/expresion-resolver.interface.js +2 -0
  432. package/dist/rendering/bindings/expresion-resolver.interface.js.map +1 -0
  433. package/dist/rendering/bindings/expresion-resolver.js +175 -0
  434. package/dist/rendering/bindings/expresion-resolver.js.map +1 -0
  435. package/dist/rendering/bindings/expression-resolver.d.ts +48 -0
  436. package/dist/rendering/bindings/expression-resolver.d.ts.map +1 -0
  437. package/dist/rendering/bindings/expression-resolver.interface.d.ts +25 -0
  438. package/dist/rendering/bindings/expression-resolver.interface.d.ts.map +1 -0
  439. package/dist/rendering/bindings/expression-resolver.interface.js +2 -0
  440. package/dist/rendering/bindings/expression-resolver.interface.js.map +1 -0
  441. package/dist/rendering/bindings/expression-resolver.js +169 -0
  442. package/dist/rendering/bindings/expression-resolver.js.map +1 -0
  443. package/dist/rendering/bindings/property-extractor.d.ts +36 -0
  444. package/dist/rendering/bindings/property-extractor.d.ts.map +1 -0
  445. package/dist/rendering/bindings/property-extractor.interface.d.ts +21 -0
  446. package/dist/rendering/bindings/property-extractor.interface.d.ts.map +1 -0
  447. package/dist/rendering/bindings/property-extractor.interface.js +2 -0
  448. package/dist/rendering/bindings/property-extractor.interface.js.map +1 -0
  449. package/dist/rendering/bindings/property-extractor.js +69 -0
  450. package/dist/rendering/bindings/property-extractor.js.map +1 -0
  451. package/dist/rendering/bindings/rules-resolver.d.ts +29 -0
  452. package/dist/rendering/bindings/rules-resolver.d.ts.map +1 -0
  453. package/dist/rendering/bindings/rules-resolver.interface.d.ts +16 -0
  454. package/dist/rendering/bindings/rules-resolver.interface.d.ts.map +1 -0
  455. package/dist/rendering/bindings/rules-resolver.interface.js +2 -0
  456. package/dist/rendering/bindings/rules-resolver.interface.js.map +1 -0
  457. package/dist/rendering/bindings/rules-resolver.js +69 -0
  458. package/dist/rendering/bindings/rules-resolver.js.map +1 -0
  459. package/dist/rendering/bindings/smart-input-store.d.ts +11 -0
  460. package/dist/rendering/bindings/smart-input-store.d.ts.map +1 -0
  461. package/dist/rendering/bindings/smart-input-store.interface.d.ts +54 -0
  462. package/dist/rendering/bindings/smart-input-store.interface.d.ts.map +1 -0
  463. package/dist/rendering/bindings/smart-input-store.interface.js +5 -0
  464. package/dist/rendering/bindings/smart-input-store.interface.js.map +1 -0
  465. package/dist/rendering/bindings/smart-input-store.js +92 -0
  466. package/dist/rendering/bindings/smart-input-store.js.map +1 -0
  467. package/dist/rendering/bindings/static-binding-resolver.d.ts +28 -0
  468. package/dist/rendering/bindings/static-binding-resolver.d.ts.map +1 -0
  469. package/dist/rendering/bindings/static-binding-resolver.interface.d.ts +15 -0
  470. package/dist/rendering/bindings/static-binding-resolver.interface.d.ts.map +1 -0
  471. package/dist/rendering/bindings/static-binding-resolver.interface.js +2 -0
  472. package/dist/rendering/bindings/static-binding-resolver.interface.js.map +1 -0
  473. package/dist/rendering/bindings/static-binding-resolver.js +65 -0
  474. package/dist/rendering/bindings/static-binding-resolver.js.map +1 -0
  475. package/dist/rendering/dom/browser-dom-adapter.d.ts +30 -0
  476. package/dist/rendering/dom/browser-dom-adapter.d.ts.map +1 -0
  477. package/dist/rendering/dom/browser-dom-adapter.js +40 -0
  478. package/dist/rendering/dom/browser-dom-adapter.js.map +1 -0
  479. package/dist/rendering/dom/dom-adapter.interface.d.ts +39 -0
  480. package/dist/rendering/dom/dom-adapter.interface.d.ts.map +1 -0
  481. package/dist/rendering/dom/dom-adapter.interface.js +2 -0
  482. package/dist/rendering/dom/dom-adapter.interface.js.map +1 -0
  483. package/dist/rendering/dom/index.d.ts +9 -0
  484. package/dist/rendering/dom/index.d.ts.map +1 -0
  485. package/dist/rendering/dom/index.js +8 -0
  486. package/dist/rendering/dom/index.js.map +1 -0
  487. package/dist/rendering/dom/node-types.d.ts +21 -0
  488. package/dist/rendering/dom/node-types.d.ts.map +1 -0
  489. package/dist/rendering/dom/node-types.js +21 -0
  490. package/dist/rendering/dom/node-types.js.map +1 -0
  491. package/dist/rendering/dom-context/dom-context-factory.d.ts +31 -0
  492. package/dist/rendering/dom-context/dom-context-factory.d.ts.map +1 -0
  493. package/dist/rendering/dom-context/dom-context-factory.interface.d.ts +14 -0
  494. package/dist/rendering/dom-context/dom-context-factory.interface.d.ts.map +1 -0
  495. package/dist/rendering/dom-context/dom-context-factory.interface.js +2 -0
  496. package/dist/rendering/dom-context/dom-context-factory.interface.js.map +1 -0
  497. package/dist/rendering/dom-context/dom-context-factory.js +20 -0
  498. package/dist/rendering/dom-context/dom-context-factory.js.map +1 -0
  499. package/dist/rendering/dom-context/dom-context-host-resolver.d.ts +55 -0
  500. package/dist/rendering/dom-context/dom-context-host-resolver.d.ts.map +1 -0
  501. package/dist/rendering/dom-context/dom-context-host-resolver.js +90 -0
  502. package/dist/rendering/dom-context/dom-context-host-resolver.js.map +1 -0
  503. package/dist/rendering/dom-context/dom-context.d.ts +168 -0
  504. package/dist/rendering/dom-context/dom-context.d.ts.map +1 -0
  505. package/dist/rendering/dom-context/dom-context.interface.d.ts +156 -0
  506. package/dist/rendering/dom-context/dom-context.interface.d.ts.map +1 -0
  507. package/dist/rendering/dom-context/dom-context.interface.js +17 -0
  508. package/dist/rendering/dom-context/dom-context.interface.js.map +1 -0
  509. package/dist/rendering/dom-context/dom-context.js +225 -0
  510. package/dist/rendering/dom-context/dom-context.js.map +1 -0
  511. package/dist/rendering/dom-context/host-resolver.interface.d.ts +47 -0
  512. package/dist/rendering/dom-context/host-resolver.interface.d.ts.map +1 -0
  513. package/dist/rendering/dom-context/host-resolver.interface.js +2 -0
  514. package/dist/rendering/dom-context/host-resolver.interface.js.map +1 -0
  515. package/dist/rendering/dom-context/index.d.ts +5 -0
  516. package/dist/rendering/dom-context/index.d.ts.map +1 -0
  517. package/dist/rendering/dom-context/index.js +4 -0
  518. package/dist/rendering/dom-context/index.js.map +1 -0
  519. package/dist/rendering/errors/error-render-options.interface.d.ts +29 -0
  520. package/dist/rendering/errors/error-render-options.interface.d.ts.map +1 -0
  521. package/dist/rendering/errors/error-render-options.interface.js +2 -0
  522. package/dist/rendering/errors/error-render-options.interface.js.map +1 -0
  523. package/dist/rendering/errors/error-renderer.d.ts +71 -0
  524. package/dist/rendering/errors/error-renderer.d.ts.map +1 -0
  525. package/dist/rendering/errors/error-renderer.interface.d.ts +29 -0
  526. package/dist/rendering/errors/error-renderer.interface.d.ts.map +1 -0
  527. package/dist/rendering/errors/error-renderer.interface.js +2 -0
  528. package/dist/rendering/errors/error-renderer.interface.js.map +1 -0
  529. package/dist/rendering/errors/error-renderer.js +127 -0
  530. package/dist/rendering/errors/error-renderer.js.map +1 -0
  531. package/dist/rendering/expression-parser/dependency-extractor.d.ts +36 -0
  532. package/dist/rendering/expression-parser/dependency-extractor.d.ts.map +1 -0
  533. package/dist/rendering/expression-parser/dependency-extractor.js +83 -0
  534. package/dist/rendering/expression-parser/dependency-extractor.js.map +1 -0
  535. package/dist/rendering/expression-parser/evaluators/ast.evaluator.d.ts +54 -0
  536. package/dist/rendering/expression-parser/evaluators/ast.evaluator.d.ts.map +1 -0
  537. package/dist/rendering/expression-parser/evaluators/ast.evaluator.js +92 -0
  538. package/dist/rendering/expression-parser/evaluators/ast.evaluator.js.map +1 -0
  539. package/dist/rendering/expression-parser/evaluators/base.d.ts +20 -0
  540. package/dist/rendering/expression-parser/evaluators/base.d.ts.map +1 -0
  541. package/dist/rendering/expression-parser/evaluators/base.js +2 -0
  542. package/dist/rendering/expression-parser/evaluators/base.js.map +1 -0
  543. package/dist/rendering/expression-parser/evaluators/binary.evaluator.d.ts +29 -0
  544. package/dist/rendering/expression-parser/evaluators/binary.evaluator.d.ts.map +1 -0
  545. package/dist/rendering/expression-parser/evaluators/binary.evaluator.js +55 -0
  546. package/dist/rendering/expression-parser/evaluators/binary.evaluator.js.map +1 -0
  547. package/dist/rendering/expression-parser/evaluators/call.evaluator.d.ts +38 -0
  548. package/dist/rendering/expression-parser/evaluators/call.evaluator.d.ts.map +1 -0
  549. package/dist/rendering/expression-parser/evaluators/call.evaluator.js +62 -0
  550. package/dist/rendering/expression-parser/evaluators/call.evaluator.js.map +1 -0
  551. package/dist/rendering/expression-parser/evaluators/conditional.evaluator.d.ts +29 -0
  552. package/dist/rendering/expression-parser/evaluators/conditional.evaluator.d.ts.map +1 -0
  553. package/dist/rendering/expression-parser/evaluators/conditional.evaluator.js +38 -0
  554. package/dist/rendering/expression-parser/evaluators/conditional.evaluator.js.map +1 -0
  555. package/dist/rendering/expression-parser/evaluators/identifier.evaluator.d.ts +28 -0
  556. package/dist/rendering/expression-parser/evaluators/identifier.evaluator.d.ts.map +1 -0
  557. package/dist/rendering/expression-parser/evaluators/identifier.evaluator.js +33 -0
  558. package/dist/rendering/expression-parser/evaluators/identifier.evaluator.js.map +1 -0
  559. package/dist/rendering/expression-parser/evaluators/index.d.ts +10 -0
  560. package/dist/rendering/expression-parser/evaluators/index.d.ts.map +1 -0
  561. package/dist/rendering/expression-parser/evaluators/index.js +9 -0
  562. package/dist/rendering/expression-parser/evaluators/index.js.map +1 -0
  563. package/dist/rendering/expression-parser/evaluators/literal.evaluator.d.ts +27 -0
  564. package/dist/rendering/expression-parser/evaluators/literal.evaluator.d.ts.map +1 -0
  565. package/dist/rendering/expression-parser/evaluators/literal.evaluator.js +29 -0
  566. package/dist/rendering/expression-parser/evaluators/literal.evaluator.js.map +1 -0
  567. package/dist/rendering/expression-parser/evaluators/member.evaluator.d.ts +29 -0
  568. package/dist/rendering/expression-parser/evaluators/member.evaluator.d.ts.map +1 -0
  569. package/dist/rendering/expression-parser/evaluators/member.evaluator.js +39 -0
  570. package/dist/rendering/expression-parser/evaluators/member.evaluator.js.map +1 -0
  571. package/dist/rendering/expression-parser/evaluators/unary.evaluator.d.ts +29 -0
  572. package/dist/rendering/expression-parser/evaluators/unary.evaluator.d.ts.map +1 -0
  573. package/dist/rendering/expression-parser/evaluators/unary.evaluator.js +44 -0
  574. package/dist/rendering/expression-parser/evaluators/unary.evaluator.js.map +1 -0
  575. package/dist/rendering/expression-parser/expression-cache.d.ts +65 -0
  576. package/dist/rendering/expression-parser/expression-cache.d.ts.map +1 -0
  577. package/dist/rendering/expression-parser/expression-cache.js +79 -0
  578. package/dist/rendering/expression-parser/expression-cache.js.map +1 -0
  579. package/dist/rendering/expression-parser/expression-parser.factory.d.ts +105 -0
  580. package/dist/rendering/expression-parser/expression-parser.factory.d.ts.map +1 -0
  581. package/dist/rendering/expression-parser/expression-parser.factory.js +113 -0
  582. package/dist/rendering/expression-parser/expression-parser.factory.js.map +1 -0
  583. package/dist/rendering/expression-parser/expression-parser.service.d.ts +30 -0
  584. package/dist/rendering/expression-parser/expression-parser.service.d.ts.map +1 -0
  585. package/dist/rendering/expression-parser/expression-parser.service.js +96 -0
  586. package/dist/rendering/expression-parser/expression-parser.service.js.map +1 -0
  587. package/dist/rendering/expression-parser/host-projector.d.ts +80 -0
  588. package/dist/rendering/expression-parser/host-projector.d.ts.map +1 -0
  589. package/dist/rendering/expression-parser/host-projector.js +97 -0
  590. package/dist/rendering/expression-parser/host-projector.js.map +1 -0
  591. package/dist/rendering/expression-parser/index.d.ts +6 -0
  592. package/dist/rendering/expression-parser/index.d.ts.map +1 -0
  593. package/dist/rendering/expression-parser/index.js +15 -0
  594. package/dist/rendering/expression-parser/index.js.map +1 -0
  595. package/dist/rendering/expression-parser/interfaces.d.ts +41 -0
  596. package/dist/rendering/expression-parser/interfaces.d.ts.map +1 -0
  597. package/dist/rendering/expression-parser/interfaces.js +2 -0
  598. package/dist/rendering/expression-parser/interfaces.js.map +1 -0
  599. package/dist/rendering/expression-parser/parser.d.ts +135 -0
  600. package/dist/rendering/expression-parser/parser.d.ts.map +1 -0
  601. package/dist/rendering/expression-parser/parser.js +345 -0
  602. package/dist/rendering/expression-parser/parser.js.map +1 -0
  603. package/dist/rendering/expression-parser/safe-method-validator.interface.d.ts +23 -0
  604. package/dist/rendering/expression-parser/safe-method-validator.interface.d.ts.map +1 -0
  605. package/dist/rendering/expression-parser/safe-method-validator.interface.js +2 -0
  606. package/dist/rendering/expression-parser/safe-method-validator.interface.js.map +1 -0
  607. package/dist/rendering/expression-parser/safe-methods.d.ts +29 -0
  608. package/dist/rendering/expression-parser/safe-methods.d.ts.map +1 -0
  609. package/dist/rendering/expression-parser/safe-methods.js +136 -0
  610. package/dist/rendering/expression-parser/safe-methods.js.map +1 -0
  611. package/dist/rendering/expression-parser/tokenizer.d.ts +68 -0
  612. package/dist/rendering/expression-parser/tokenizer.d.ts.map +1 -0
  613. package/dist/rendering/expression-parser/tokenizer.js +282 -0
  614. package/dist/rendering/expression-parser/tokenizer.js.map +1 -0
  615. package/dist/rendering/expression-parser/types.d.ts +234 -0
  616. package/dist/rendering/expression-parser/types.d.ts.map +1 -0
  617. package/dist/rendering/expression-parser/types.js +33 -0
  618. package/dist/rendering/expression-parser/types.js.map +1 -0
  619. package/dist/rendering/host-projection/host-projection-registry.interface.d.ts +54 -0
  620. package/dist/rendering/host-projection/host-projection-registry.interface.d.ts.map +1 -0
  621. package/dist/rendering/host-projection/host-projection-registry.interface.js +2 -0
  622. package/dist/rendering/host-projection/host-projection-registry.interface.js.map +1 -0
  623. package/dist/rendering/host-projection/host-projection.registry.d.ts +67 -0
  624. package/dist/rendering/host-projection/host-projection.registry.d.ts.map +1 -0
  625. package/dist/rendering/host-projection/host-projection.registry.js +96 -0
  626. package/dist/rendering/host-projection/host-projection.registry.js.map +1 -0
  627. package/dist/rendering/host-projection/index.d.ts +3 -0
  628. package/dist/rendering/host-projection/index.d.ts.map +1 -0
  629. package/dist/rendering/host-projection/index.js +2 -0
  630. package/dist/rendering/host-projection/index.js.map +1 -0
  631. package/dist/rendering/host-resolver/dom-context-host-resolver.d.ts +55 -0
  632. package/dist/rendering/host-resolver/dom-context-host-resolver.d.ts.map +1 -0
  633. package/dist/rendering/host-resolver/dom-context-host-resolver.js +90 -0
  634. package/dist/rendering/host-resolver/dom-context-host-resolver.js.map +1 -0
  635. package/dist/rendering/host-resolver/host-resolver.interface.d.ts +47 -0
  636. package/dist/rendering/host-resolver/host-resolver.interface.d.ts.map +1 -0
  637. package/dist/rendering/host-resolver/host-resolver.interface.js +2 -0
  638. package/dist/rendering/host-resolver/host-resolver.interface.js.map +1 -0
  639. package/dist/rendering/host-resolver/index.d.ts +3 -0
  640. package/dist/rendering/host-resolver/index.d.ts.map +1 -0
  641. package/dist/rendering/host-resolver/index.js +2 -0
  642. package/dist/rendering/host-resolver/index.js.map +1 -0
  643. package/dist/rendering/index.d.ts +34 -0
  644. package/dist/rendering/index.d.ts.map +1 -0
  645. package/dist/rendering/index.js +27 -0
  646. package/dist/rendering/index.js.map +1 -0
  647. package/dist/rendering/inputs/smart-input-store.d.ts +11 -0
  648. package/dist/rendering/inputs/smart-input-store.d.ts.map +1 -0
  649. package/dist/rendering/inputs/smart-input-store.interface.d.ts +54 -0
  650. package/dist/rendering/inputs/smart-input-store.interface.d.ts.map +1 -0
  651. package/dist/rendering/inputs/smart-input-store.interface.js +5 -0
  652. package/dist/rendering/inputs/smart-input-store.interface.js.map +1 -0
  653. package/dist/rendering/inputs/smart-input-store.js +92 -0
  654. package/dist/rendering/inputs/smart-input-store.js.map +1 -0
  655. package/dist/rendering/lifecycle/lifecycle-coordinator.d.ts +94 -0
  656. package/dist/rendering/lifecycle/lifecycle-coordinator.d.ts.map +1 -0
  657. package/dist/rendering/lifecycle/lifecycle-coordinator.js +142 -0
  658. package/dist/rendering/lifecycle/lifecycle-coordinator.js.map +1 -0
  659. package/dist/rendering/lifecycle/mount-context.interface.d.ts +50 -0
  660. package/dist/rendering/lifecycle/mount-context.interface.d.ts.map +1 -0
  661. package/dist/rendering/lifecycle/mount-context.interface.js +2 -0
  662. package/dist/rendering/lifecycle/mount-context.interface.js.map +1 -0
  663. package/dist/rendering/lifecycle/mount-session.d.ts +49 -0
  664. package/dist/rendering/lifecycle/mount-session.d.ts.map +1 -0
  665. package/dist/rendering/lifecycle/mount-session.js +71 -0
  666. package/dist/rendering/lifecycle/mount-session.js.map +1 -0
  667. package/dist/rendering/managed-host/host-style-migrator.d.ts +55 -0
  668. package/dist/rendering/managed-host/host-style-migrator.d.ts.map +1 -0
  669. package/dist/rendering/managed-host/host-style-migrator.interface.d.ts +42 -0
  670. package/dist/rendering/managed-host/host-style-migrator.interface.d.ts.map +1 -0
  671. package/dist/rendering/managed-host/host-style-migrator.interface.js +2 -0
  672. package/dist/rendering/managed-host/host-style-migrator.interface.js.map +1 -0
  673. package/dist/rendering/managed-host/host-style-migrator.js +105 -0
  674. package/dist/rendering/managed-host/host-style-migrator.js.map +1 -0
  675. package/dist/rendering/managed-host/index.d.ts +18 -0
  676. package/dist/rendering/managed-host/index.d.ts.map +1 -0
  677. package/dist/rendering/managed-host/index.js +14 -0
  678. package/dist/rendering/managed-host/index.js.map +1 -0
  679. package/dist/rendering/managed-host/input-attribute-policy.d.ts +60 -0
  680. package/dist/rendering/managed-host/input-attribute-policy.d.ts.map +1 -0
  681. package/dist/rendering/managed-host/input-attribute-policy.interface.d.ts +43 -0
  682. package/dist/rendering/managed-host/input-attribute-policy.interface.d.ts.map +1 -0
  683. package/dist/rendering/managed-host/input-attribute-policy.interface.js +2 -0
  684. package/dist/rendering/managed-host/input-attribute-policy.interface.js.map +1 -0
  685. package/dist/rendering/managed-host/input-attribute-policy.js +114 -0
  686. package/dist/rendering/managed-host/input-attribute-policy.js.map +1 -0
  687. package/dist/rendering/managed-host/managed-element-registry.d.ts +35 -0
  688. package/dist/rendering/managed-host/managed-element-registry.d.ts.map +1 -0
  689. package/dist/rendering/managed-host/managed-element-registry.js +103 -0
  690. package/dist/rendering/managed-host/managed-element-registry.js.map +1 -0
  691. package/dist/rendering/managed-host/managed-element-resolver.d.ts +27 -0
  692. package/dist/rendering/managed-host/managed-element-resolver.d.ts.map +1 -0
  693. package/dist/rendering/managed-host/managed-element-resolver.interface.d.ts +36 -0
  694. package/dist/rendering/managed-host/managed-element-resolver.interface.d.ts.map +1 -0
  695. package/dist/rendering/managed-host/managed-element-resolver.interface.js +2 -0
  696. package/dist/rendering/managed-host/managed-element-resolver.interface.js.map +1 -0
  697. package/dist/rendering/managed-host/managed-element-resolver.js +31 -0
  698. package/dist/rendering/managed-host/managed-element-resolver.js.map +1 -0
  699. package/dist/rendering/managed-host/managed-host-context.interface.d.ts +31 -0
  700. package/dist/rendering/managed-host/managed-host-context.interface.d.ts.map +1 -0
  701. package/dist/rendering/managed-host/managed-host-context.interface.js +2 -0
  702. package/dist/rendering/managed-host/managed-host-context.interface.js.map +1 -0
  703. package/dist/rendering/managed-host/outlet-resolver.d.ts +43 -0
  704. package/dist/rendering/managed-host/outlet-resolver.d.ts.map +1 -0
  705. package/dist/rendering/managed-host/outlet-resolver.interface.d.ts +28 -0
  706. package/dist/rendering/managed-host/outlet-resolver.interface.d.ts.map +1 -0
  707. package/dist/rendering/managed-host/outlet-resolver.interface.js +2 -0
  708. package/dist/rendering/managed-host/outlet-resolver.interface.js.map +1 -0
  709. package/dist/rendering/managed-host/outlet-resolver.js +59 -0
  710. package/dist/rendering/managed-host/outlet-resolver.js.map +1 -0
  711. package/dist/rendering/pipeline/error-renderer.d.ts +107 -0
  712. package/dist/rendering/pipeline/error-renderer.d.ts.map +1 -0
  713. package/dist/rendering/pipeline/error-renderer.js +127 -0
  714. package/dist/rendering/pipeline/error-renderer.js.map +1 -0
  715. package/dist/rendering/pipeline/render-pipeline.d.ts +87 -0
  716. package/dist/rendering/pipeline/render-pipeline.d.ts.map +1 -0
  717. package/dist/rendering/pipeline/render-pipeline.interface.d.ts +54 -0
  718. package/dist/rendering/pipeline/render-pipeline.interface.d.ts.map +1 -0
  719. package/dist/rendering/pipeline/render-pipeline.interface.js +2 -0
  720. package/dist/rendering/pipeline/render-pipeline.interface.js.map +1 -0
  721. package/dist/rendering/pipeline/render-pipeline.js +201 -0
  722. package/dist/rendering/pipeline/render-pipeline.js.map +1 -0
  723. package/dist/rendering/refs/get-component-host.d.ts +25 -0
  724. package/dist/rendering/refs/get-component-host.d.ts.map +1 -0
  725. package/dist/rendering/refs/get-component-host.js +27 -0
  726. package/dist/rendering/refs/get-component-host.js.map +1 -0
  727. package/dist/rendering/refs/host-ref-registry.d.ts +43 -0
  728. package/dist/rendering/refs/host-ref-registry.d.ts.map +1 -0
  729. package/dist/rendering/refs/host-ref-registry.js +38 -0
  730. package/dist/rendering/refs/host-ref-registry.js.map +1 -0
  731. package/dist/rendering/refs/ref-resolver.d.ts +44 -0
  732. package/dist/rendering/refs/ref-resolver.d.ts.map +1 -0
  733. package/dist/rendering/refs/ref-resolver.js +54 -0
  734. package/dist/rendering/refs/ref-resolver.js.map +1 -0
  735. package/dist/rendering/render-engine-facade.d.ts +80 -0
  736. package/dist/rendering/render-engine-facade.d.ts.map +1 -0
  737. package/dist/rendering/render-engine-facade.js +90 -0
  738. package/dist/rendering/render-engine-facade.js.map +1 -0
  739. package/dist/rendering/render-engine-factory.d.ts +158 -0
  740. package/dist/rendering/render-engine-factory.d.ts.map +1 -0
  741. package/dist/rendering/render-engine-factory.js +225 -0
  742. package/dist/rendering/render-engine-factory.js.map +1 -0
  743. package/dist/rendering/render-engine.d.ts +200 -0
  744. package/dist/rendering/render-engine.d.ts.map +1 -0
  745. package/dist/rendering/render-engine.js +205 -0
  746. package/dist/rendering/render-engine.js.map +1 -0
  747. package/dist/rendering/skeleton/skeleton-renderer.d.ts +91 -0
  748. package/dist/rendering/skeleton/skeleton-renderer.d.ts.map +1 -0
  749. package/dist/rendering/skeleton/skeleton-renderer.interface.d.ts +33 -0
  750. package/dist/rendering/skeleton/skeleton-renderer.interface.d.ts.map +1 -0
  751. package/dist/rendering/skeleton/skeleton-renderer.interface.js +2 -0
  752. package/dist/rendering/skeleton/skeleton-renderer.interface.js.map +1 -0
  753. package/dist/rendering/skeleton/skeleton-renderer.js +188 -0
  754. package/dist/rendering/skeleton/skeleton-renderer.js.map +1 -0
  755. package/dist/rendering/skeleton/skeleton-validator.d.ts +51 -0
  756. package/dist/rendering/skeleton/skeleton-validator.d.ts.map +1 -0
  757. package/dist/rendering/skeleton/skeleton-validator.interface.d.ts +23 -0
  758. package/dist/rendering/skeleton/skeleton-validator.interface.d.ts.map +1 -0
  759. package/dist/rendering/skeleton/skeleton-validator.interface.js +2 -0
  760. package/dist/rendering/skeleton/skeleton-validator.interface.js.map +1 -0
  761. package/dist/rendering/skeleton/skeleton-validator.js +215 -0
  762. package/dist/rendering/skeleton/skeleton-validator.js.map +1 -0
  763. package/dist/rendering/slots/index.d.ts +2 -0
  764. package/dist/rendering/slots/index.d.ts.map +1 -0
  765. package/dist/rendering/slots/index.js +2 -0
  766. package/dist/rendering/slots/index.js.map +1 -0
  767. package/dist/rendering/slots/slot-content.registry.d.ts +58 -0
  768. package/dist/rendering/slots/slot-content.registry.d.ts.map +1 -0
  769. package/dist/rendering/slots/slot-content.registry.js +77 -0
  770. package/dist/rendering/slots/slot-content.registry.js.map +1 -0
  771. package/dist/rendering/styles/shared-styles-registry.d.ts +68 -0
  772. package/dist/rendering/styles/shared-styles-registry.d.ts.map +1 -0
  773. package/dist/rendering/styles/shared-styles-registry.js +55 -0
  774. package/dist/rendering/styles/shared-styles-registry.js.map +1 -0
  775. package/dist/rendering/support/error-render-options.interface.d.ts +29 -0
  776. package/dist/rendering/support/error-render-options.interface.d.ts.map +1 -0
  777. package/dist/rendering/support/error-render-options.interface.js +2 -0
  778. package/dist/rendering/support/error-render-options.interface.js.map +1 -0
  779. package/dist/rendering/support/error-renderer.d.ts +56 -0
  780. package/dist/rendering/support/error-renderer.d.ts.map +1 -0
  781. package/dist/rendering/support/error-renderer.interface.d.ts +29 -0
  782. package/dist/rendering/support/error-renderer.interface.d.ts.map +1 -0
  783. package/dist/rendering/support/error-renderer.interface.js +2 -0
  784. package/dist/rendering/support/error-renderer.interface.js.map +1 -0
  785. package/dist/rendering/support/error-renderer.js +92 -0
  786. package/dist/rendering/support/error-renderer.js.map +1 -0
  787. package/dist/rendering/support/safe-methods.d.ts +46 -0
  788. package/dist/rendering/support/safe-methods.d.ts.map +1 -0
  789. package/dist/rendering/support/safe-methods.js +138 -0
  790. package/dist/rendering/support/safe-methods.js.map +1 -0
  791. package/dist/rendering/support/smart-input-store.d.ts +11 -0
  792. package/dist/rendering/support/smart-input-store.d.ts.map +1 -0
  793. package/dist/rendering/support/smart-input-store.interface.d.ts +54 -0
  794. package/dist/rendering/support/smart-input-store.interface.d.ts.map +1 -0
  795. package/dist/rendering/support/smart-input-store.interface.js +5 -0
  796. package/dist/rendering/support/smart-input-store.interface.js.map +1 -0
  797. package/dist/rendering/support/smart-input-store.js +92 -0
  798. package/dist/rendering/support/smart-input-store.js.map +1 -0
  799. package/dist/rendering/templates/compiled-template.interface.d.ts +34 -0
  800. package/dist/rendering/templates/compiled-template.interface.d.ts.map +1 -0
  801. package/dist/rendering/templates/compiled-template.interface.js +2 -0
  802. package/dist/rendering/templates/compiled-template.interface.js.map +1 -0
  803. package/dist/rendering/templates/composite-token-extractor.d.ts +10 -0
  804. package/dist/rendering/templates/composite-token-extractor.d.ts.map +1 -0
  805. package/dist/rendering/templates/composite-token-extractor.js +16 -0
  806. package/dist/rendering/templates/composite-token-extractor.js.map +1 -0
  807. package/dist/rendering/templates/delimited-token-extractor.d.ts +12 -0
  808. package/dist/rendering/templates/delimited-token-extractor.d.ts.map +1 -0
  809. package/dist/rendering/templates/delimited-token-extractor.js +44 -0
  810. package/dist/rendering/templates/delimited-token-extractor.js.map +1 -0
  811. package/dist/rendering/templates/host-projector.interface.d.ts +25 -0
  812. package/dist/rendering/templates/host-projector.interface.d.ts.map +1 -0
  813. package/dist/rendering/templates/host-projector.interface.js +2 -0
  814. package/dist/rendering/templates/host-projector.interface.js.map +1 -0
  815. package/dist/rendering/templates/html-aware-token-extractor.d.ts +56 -0
  816. package/dist/rendering/templates/html-aware-token-extractor.d.ts.map +1 -0
  817. package/dist/rendering/templates/html-aware-token-extractor.js +78 -0
  818. package/dist/rendering/templates/html-aware-token-extractor.js.map +1 -0
  819. package/dist/rendering/templates/html-fragment-parser.interface.d.ts +19 -0
  820. package/dist/rendering/templates/html-fragment-parser.interface.d.ts.map +1 -0
  821. package/dist/rendering/templates/html-fragment-parser.interface.js +2 -0
  822. package/dist/rendering/templates/html-fragment-parser.interface.js.map +1 -0
  823. package/dist/rendering/templates/interpolable-content-selector.interface.d.ts +33 -0
  824. package/dist/rendering/templates/interpolable-content-selector.interface.d.ts.map +1 -0
  825. package/dist/rendering/templates/interpolable-content-selector.interface.js +2 -0
  826. package/dist/rendering/templates/interpolable-content-selector.interface.js.map +1 -0
  827. package/dist/rendering/templates/parse5-fragment-parser.d.ts +31 -0
  828. package/dist/rendering/templates/parse5-fragment-parser.d.ts.map +1 -0
  829. package/dist/rendering/templates/parse5-fragment-parser.js +36 -0
  830. package/dist/rendering/templates/parse5-fragment-parser.js.map +1 -0
  831. package/dist/rendering/templates/safe-content-selector.d.ts +50 -0
  832. package/dist/rendering/templates/safe-content-selector.d.ts.map +1 -0
  833. package/dist/rendering/templates/safe-content-selector.js +138 -0
  834. package/dist/rendering/templates/safe-content-selector.js.map +1 -0
  835. package/dist/rendering/templates/simple-template-analyzer.d.ts +29 -0
  836. package/dist/rendering/templates/simple-template-analyzer.d.ts.map +1 -0
  837. package/dist/rendering/templates/simple-template-analyzer.js +59 -0
  838. package/dist/rendering/templates/simple-template-analyzer.js.map +1 -0
  839. package/dist/rendering/templates/template-analyzer.d.ts +60 -0
  840. package/dist/rendering/templates/template-analyzer.d.ts.map +1 -0
  841. package/dist/rendering/templates/template-analyzer.interface.d.ts +15 -0
  842. package/dist/rendering/templates/template-analyzer.interface.d.ts.map +1 -0
  843. package/dist/rendering/templates/template-analyzer.interface.js +2 -0
  844. package/dist/rendering/templates/template-analyzer.interface.js.map +1 -0
  845. package/dist/rendering/templates/template-analyzer.js +74 -0
  846. package/dist/rendering/templates/template-analyzer.js.map +1 -0
  847. package/dist/rendering/templates/template-compilation-cache.d.ts +96 -0
  848. package/dist/rendering/templates/template-compilation-cache.d.ts.map +1 -0
  849. package/dist/rendering/templates/template-compilation-cache.js +125 -0
  850. package/dist/rendering/templates/template-compilation-cache.js.map +1 -0
  851. package/dist/rendering/templates/template-compiler.d.ts +76 -0
  852. package/dist/rendering/templates/template-compiler.d.ts.map +1 -0
  853. package/dist/rendering/templates/template-compiler.interface.d.ts +35 -0
  854. package/dist/rendering/templates/template-compiler.interface.d.ts.map +1 -0
  855. package/dist/rendering/templates/template-compiler.interface.js +2 -0
  856. package/dist/rendering/templates/template-compiler.interface.js.map +1 -0
  857. package/dist/rendering/templates/template-compiler.js +136 -0
  858. package/dist/rendering/templates/template-compiler.js.map +1 -0
  859. package/dist/rendering/templates/template-provider.d.ts +112 -0
  860. package/dist/rendering/templates/template-provider.d.ts.map +1 -0
  861. package/dist/rendering/templates/template-provider.factory.d.ts +35 -0
  862. package/dist/rendering/templates/template-provider.factory.d.ts.map +1 -0
  863. package/dist/rendering/templates/template-provider.factory.js +42 -0
  864. package/dist/rendering/templates/template-provider.factory.js.map +1 -0
  865. package/dist/rendering/templates/template-provider.interface.d.ts +32 -0
  866. package/dist/rendering/templates/template-provider.interface.d.ts.map +1 -0
  867. package/dist/rendering/templates/template-provider.interface.js +2 -0
  868. package/dist/rendering/templates/template-provider.interface.js.map +1 -0
  869. package/dist/rendering/templates/template-provider.js +104 -0
  870. package/dist/rendering/templates/template-provider.js.map +1 -0
  871. package/dist/rendering/templates/template-token.interface.d.ts +38 -0
  872. package/dist/rendering/templates/template-token.interface.d.ts.map +1 -0
  873. package/dist/rendering/templates/template-token.interface.js +2 -0
  874. package/dist/rendering/templates/template-token.interface.js.map +1 -0
  875. package/dist/types/interfaces.d.ts +204 -0
  876. package/dist/types/interfaces.d.ts.map +1 -0
  877. package/dist/types/interfaces.js +2 -0
  878. package/dist/types/interfaces.js.map +1 -0
  879. package/dist/utils/dom-utils.d.ts +71 -0
  880. package/dist/utils/dom-utils.d.ts.map +1 -0
  881. package/dist/utils/dom-utils.js +119 -0
  882. package/dist/utils/dom-utils.js.map +1 -0
  883. package/dist/utils/object-registry.d.ts +71 -0
  884. package/dist/utils/object-registry.d.ts.map +1 -0
  885. package/dist/utils/object-registry.js +126 -0
  886. package/dist/utils/object-registry.js.map +1 -0
  887. package/package.json +79 -0
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Implements the responsibility of evaluating binary expression AST nodes.
3
+ * Handles arithmetic, comparison, and logical operations between two operands.
4
+ */
5
+ export class BinaryExpressionEvaluator {
6
+ operators = {
7
+ "+": (l, r) => l + r,
8
+ "-": (l, r) => l - r,
9
+ "*": (l, r) => l * r,
10
+ "/": (l, r) => l / r,
11
+ "%": (l, r) => l % r,
12
+ "===": (l, r) => l === r,
13
+ "!==": (l, r) => l !== r,
14
+ ">": (l, r) => l > r,
15
+ "<": (l, r) => l < r,
16
+ ">=": (l, r) => l >= r,
17
+ "<=": (l, r) => l <= r,
18
+ "&&": (l, r) => l && r,
19
+ "||": (l, r) => l || r,
20
+ };
21
+ /**
22
+ * Evaluates a binary expression AST node by applying the operator to both operands.
23
+ *
24
+ * @param node - The binary expression AST node to evaluate
25
+ * @param scope - The evaluation scope containing variable bindings
26
+ * @param evaluator - The main evaluator instance for recursive evaluation
27
+ * @returns The result of applying the binary operator to the operands
28
+ * @throws Error if node, scope, or evaluator is null/undefined, or if operator is unknown
29
+ *
30
+ * @example
31
+ * ```typescript
32
+ * const evaluator = new BinaryExpressionEvaluator();
33
+ * const scope = { a: 5, b: 3 };
34
+ * const result = evaluator.evaluate(binaryNode, scope, evaluator);
35
+ * // Returns 8 for a + b
36
+ * ```
37
+ */
38
+ evaluate(node, scope, evaluator) {
39
+ if (!node)
40
+ throw new Error("Node is required");
41
+ if (!scope)
42
+ throw new Error("Scope is required");
43
+ if (!evaluator)
44
+ throw new Error("Evaluator is required");
45
+ const binaryExpr = node;
46
+ const left = evaluator.evaluate(binaryExpr.left, scope);
47
+ const right = evaluator.evaluate(binaryExpr.right, scope);
48
+ const operation = this.operators[binaryExpr.operator];
49
+ if (!operation) {
50
+ throw new Error(`Unknown operator: ${binaryExpr.operator}`);
51
+ }
52
+ return operation(left, right);
53
+ }
54
+ }
55
+ //# sourceMappingURL=binary.evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binary.evaluator.js","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/binary.evaluator.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,OAAO,yBAAyB;IACnB,SAAS,GAGtB;QACF,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAY,GAAI,CAAY;QAC5C,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAY,GAAI,CAAY;QAC5C,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAY,GAAI,CAAY;QAC5C,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAY,GAAI,CAAY;QAC5C,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAY,GAAI,CAAY;QAC5C,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC;QACxB,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC;QACxB,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAY,GAAI,CAAY;QAC5C,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAY,GAAI,CAAY;QAC5C,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAY,IAAK,CAAY;QAC9C,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAY,IAAK,CAAY;QAC9C,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACtB,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;KACvB,CAAC;IAEF;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CACN,IAAa,EACb,KAA8B,EAC9B,SAAqB;QAErB,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAEzD,MAAM,UAAU,GAAG,IAA4B,CAAC;QAChD,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE1D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,qBAAqB,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;CACF"}
@@ -0,0 +1,38 @@
1
+ import type { ISafeMethodValidator } from "../safe-method-validator.interface.js";
2
+ import type { ASTNode } from "../types.js";
3
+ import type { IEvaluator } from "../interfaces.js";
4
+ import type { INodeEvaluatorStrategy } from "./base.js";
5
+ /**
6
+ * Implements the responsibility of evaluating call expression AST nodes.
7
+ * Handles method calls on objects with security validation to prevent unsafe operations.
8
+ */
9
+ export declare class CallExpressionEvaluator implements INodeEvaluatorStrategy {
10
+ private readonly safeMethodValidator;
11
+ /**
12
+ * Creates a CallExpressionEvaluator instance.
13
+ *
14
+ * @param safeMethodValidator - Validator for safe method invocation in expressions
15
+ */
16
+ constructor(safeMethodValidator: ISafeMethodValidator);
17
+ /**
18
+ * Evaluates a call expression AST node by invoking a method on an object.
19
+ * Includes security checks to ensure only safe methods can be called.
20
+ *
21
+ * @param node - The call expression AST node to evaluate
22
+ * @param scope - The evaluation scope containing variable bindings
23
+ * @param evaluator - The main evaluator instance for recursive evaluation
24
+ * @returns The result of the method call
25
+ * @throws Error if node, scope, or evaluator is null/undefined, if the method is not safe,
26
+ * if the target is null/undefined, or if the property is not a function
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * const evaluator = new CallExpressionEvaluator(safeMethodValidator);
31
+ * const scope = { str: 'hello' };
32
+ * const result = evaluator.evaluate(callNode, scope, evaluator);
33
+ * // Returns result of calling safe method like str.toUpperCase()
34
+ * ```
35
+ */
36
+ evaluate(node: ASTNode, scope: Record<string, unknown>, evaluator: IEvaluator): unknown;
37
+ }
38
+ //# sourceMappingURL=call.evaluator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call.evaluator.d.ts","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/call.evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,KAAK,EAAE,OAAO,EAAsB,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD;;;GAGG;AACH,qBAAa,uBAAwB,YAAW,sBAAsB;IACpE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAuB;IAE3D;;;;OAIG;gBACS,mBAAmB,EAAE,oBAAoB;IAMrD;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CACN,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,SAAS,EAAE,UAAU,GACpB,OAAO;CAgCX"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Implements the responsibility of evaluating call expression AST nodes.
3
+ * Handles method calls on objects with security validation to prevent unsafe operations.
4
+ */
5
+ export class CallExpressionEvaluator {
6
+ safeMethodValidator;
7
+ /**
8
+ * Creates a CallExpressionEvaluator instance.
9
+ *
10
+ * @param safeMethodValidator - Validator for safe method invocation in expressions
11
+ */
12
+ constructor(safeMethodValidator) {
13
+ if (!safeMethodValidator)
14
+ throw new Error("SafeMethodValidator is required");
15
+ this.safeMethodValidator = safeMethodValidator;
16
+ }
17
+ /**
18
+ * Evaluates a call expression AST node by invoking a method on an object.
19
+ * Includes security checks to ensure only safe methods can be called.
20
+ *
21
+ * @param node - The call expression AST node to evaluate
22
+ * @param scope - The evaluation scope containing variable bindings
23
+ * @param evaluator - The main evaluator instance for recursive evaluation
24
+ * @returns The result of the method call
25
+ * @throws Error if node, scope, or evaluator is null/undefined, if the method is not safe,
26
+ * if the target is null/undefined, or if the property is not a function
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * const evaluator = new CallExpressionEvaluator(safeMethodValidator);
31
+ * const scope = { str: 'hello' };
32
+ * const result = evaluator.evaluate(callNode, scope, evaluator);
33
+ * // Returns result of calling safe method like str.toUpperCase()
34
+ * ```
35
+ */
36
+ evaluate(node, scope, evaluator) {
37
+ if (!node)
38
+ throw new Error("Node is required");
39
+ if (!scope)
40
+ throw new Error("Scope is required");
41
+ if (!evaluator)
42
+ throw new Error("Evaluator is required");
43
+ const callExpr = node;
44
+ const obj = evaluator.evaluate(callExpr.callee.object, scope);
45
+ if (obj == null) {
46
+ throw new Error(`Cannot call method on null or undefined`);
47
+ }
48
+ const methodName = callExpr.callee.property.name;
49
+ if (!this.safeMethodValidator.isSafeMethod(obj, methodName)) {
50
+ const safeMethods = this.safeMethodValidator.getSafeMethodsForType(obj);
51
+ throw new Error(`Method "${methodName}" is not allowed for security reasons.\n` +
52
+ `Allowed methods: ${safeMethods.join(", ")}`);
53
+ }
54
+ const method = obj[methodName];
55
+ if (typeof method !== "function") {
56
+ throw new Error(`"${methodName}" is not a function`);
57
+ }
58
+ const args = callExpr.arguments.map((arg) => evaluator.evaluate(arg, scope));
59
+ return method.apply(obj, args);
60
+ }
61
+ }
62
+ //# sourceMappingURL=call.evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call.evaluator.js","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/call.evaluator.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,MAAM,OAAO,uBAAuB;IACjB,mBAAmB,CAAuB;IAE3D;;;;OAIG;IACH,YAAY,mBAAyC;QACnD,IAAI,CAAC,mBAAmB;YACtB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACjD,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CACN,IAAa,EACb,KAA8B,EAC9B,SAAqB;QAErB,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAEzD,MAAM,QAAQ,GAAG,IAA0B,CAAC;QAC5C,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAE9D,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAEjD,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,CAAC;YAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YACxE,MAAM,IAAI,KAAK,CACb,WAAW,UAAU,0CAA0C;gBAC7D,oBAAoB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/C,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAI,GAA+B,CAAC,UAAU,CAAC,CAAC;QAC5D,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,IAAI,UAAU,qBAAqB,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC1C,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAC/B,CAAC;QACF,OAAQ,MAA0C,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACtE,CAAC;CACF"}
@@ -0,0 +1,29 @@
1
+ import type { ASTNode } from "../types.js";
2
+ import type { IEvaluator } from "../interfaces.js";
3
+ import type { INodeEvaluatorStrategy } from "./base.js";
4
+ /**
5
+ * Implements the responsibility of evaluating conditional (ternary) expression AST nodes.
6
+ * Handles the conditional operator (condition ? consequent : alternate) evaluation.
7
+ */
8
+ export declare class ConditionalExpressionEvaluator implements INodeEvaluatorStrategy {
9
+ /**
10
+ * Evaluates a conditional expression AST node by testing the condition
11
+ * and returning either the consequent or alternate value.
12
+ *
13
+ * @param node - The conditional expression AST node to evaluate
14
+ * @param scope - The evaluation scope containing variable bindings
15
+ * @param evaluator - The main evaluator instance for recursive evaluation
16
+ * @returns The result of the conditional expression (consequent if test is truthy, alternate otherwise)
17
+ * @throws Error if node, scope, or evaluator is null/undefined
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * const evaluator = new ConditionalExpressionEvaluator();
22
+ * const scope = { condition: true, a: 1, b: 2 };
23
+ * const result = evaluator.evaluate(conditionalNode, scope, evaluator);
24
+ * // Returns 1 for condition ? a : b when condition is true
25
+ * ```
26
+ */
27
+ evaluate(node: ASTNode, scope: Record<string, unknown>, evaluator: IEvaluator): unknown;
28
+ }
29
+ //# sourceMappingURL=conditional.evaluator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conditional.evaluator.d.ts","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/conditional.evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAA6B,MAAM,aAAa,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD;;;GAGG;AACH,qBAAa,8BAA+B,YAAW,sBAAsB;IAC3E;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CACN,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,SAAS,EAAE,UAAU,GACpB,OAAO;CAWX"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Implements the responsibility of evaluating conditional (ternary) expression AST nodes.
3
+ * Handles the conditional operator (condition ? consequent : alternate) evaluation.
4
+ */
5
+ export class ConditionalExpressionEvaluator {
6
+ /**
7
+ * Evaluates a conditional expression AST node by testing the condition
8
+ * and returning either the consequent or alternate value.
9
+ *
10
+ * @param node - The conditional expression AST node to evaluate
11
+ * @param scope - The evaluation scope containing variable bindings
12
+ * @param evaluator - The main evaluator instance for recursive evaluation
13
+ * @returns The result of the conditional expression (consequent if test is truthy, alternate otherwise)
14
+ * @throws Error if node, scope, or evaluator is null/undefined
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const evaluator = new ConditionalExpressionEvaluator();
19
+ * const scope = { condition: true, a: 1, b: 2 };
20
+ * const result = evaluator.evaluate(conditionalNode, scope, evaluator);
21
+ * // Returns 1 for condition ? a : b when condition is true
22
+ * ```
23
+ */
24
+ evaluate(node, scope, evaluator) {
25
+ if (!node)
26
+ throw new Error("Node is required");
27
+ if (!scope)
28
+ throw new Error("Scope is required");
29
+ if (!evaluator)
30
+ throw new Error("Evaluator is required");
31
+ const conditionalExpr = node;
32
+ const test = evaluator.evaluate(conditionalExpr.test, scope);
33
+ return test
34
+ ? evaluator.evaluate(conditionalExpr.consequent, scope)
35
+ : evaluator.evaluate(conditionalExpr.alternate, scope);
36
+ }
37
+ }
38
+ //# sourceMappingURL=conditional.evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conditional.evaluator.js","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/conditional.evaluator.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,OAAO,8BAA8B;IACzC;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CACN,IAAa,EACb,KAA8B,EAC9B,SAAqB;QAErB,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAEzD,MAAM,eAAe,GAAG,IAAiC,CAAC;QAC1D,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7D,OAAO,IAAI;YACT,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC;YACvD,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;CACF"}
@@ -0,0 +1,28 @@
1
+ import type { ASTNode } from "../types.js";
2
+ import type { IEvaluator } from "../interfaces.js";
3
+ import type { INodeEvaluatorStrategy } from "./base.js";
4
+ /**
5
+ * Implements the responsibility of evaluating identifier AST nodes.
6
+ * Resolves variable names by looking them up in the evaluation scope.
7
+ */
8
+ export declare class IdentifierEvaluator implements INodeEvaluatorStrategy {
9
+ /**
10
+ * Evaluates an identifier AST node by resolving its name in the scope.
11
+ *
12
+ * @param node - The identifier AST node to evaluate
13
+ * @param scope - The evaluation scope containing variable bindings
14
+ * @param _evaluator - The main evaluator instance (not used for identifiers)
15
+ * @returns The value of the identifier from the scope
16
+ * @throws Error if node or scope is null/undefined
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const evaluator = new IdentifierEvaluator();
21
+ * const scope = { x: 42 };
22
+ * const result = evaluator.evaluate(identifierNode, scope, evaluator);
23
+ * // Returns 42 for identifier 'x'
24
+ * ```
25
+ */
26
+ evaluate(node: ASTNode, scope: Record<string, unknown>, _evaluator: IEvaluator): unknown;
27
+ }
28
+ //# sourceMappingURL=identifier.evaluator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identifier.evaluator.d.ts","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/identifier.evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAkB,MAAM,aAAa,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,sBAAsB;IAChE;;;;;;;;;;;;;;;;OAgBG;IAEH,QAAQ,CACN,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,UAAU,EAAE,UAAU,GACrB,OAAO;CAOX"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Implements the responsibility of evaluating identifier AST nodes.
3
+ * Resolves variable names by looking them up in the evaluation scope.
4
+ */
5
+ export class IdentifierEvaluator {
6
+ /**
7
+ * Evaluates an identifier AST node by resolving its name in the scope.
8
+ *
9
+ * @param node - The identifier AST node to evaluate
10
+ * @param scope - The evaluation scope containing variable bindings
11
+ * @param _evaluator - The main evaluator instance (not used for identifiers)
12
+ * @returns The value of the identifier from the scope
13
+ * @throws Error if node or scope is null/undefined
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * const evaluator = new IdentifierEvaluator();
18
+ * const scope = { x: 42 };
19
+ * const result = evaluator.evaluate(identifierNode, scope, evaluator);
20
+ * // Returns 42 for identifier 'x'
21
+ * ```
22
+ */
23
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
24
+ evaluate(node, scope, _evaluator) {
25
+ if (!node)
26
+ throw new Error("Node is required");
27
+ if (!scope)
28
+ throw new Error("Scope is required");
29
+ const identifier = node;
30
+ return scope[identifier.name];
31
+ }
32
+ }
33
+ //# sourceMappingURL=identifier.evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identifier.evaluator.js","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/identifier.evaluator.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,OAAO,mBAAmB;IAC9B;;;;;;;;;;;;;;;;OAgBG;IACH,6DAA6D;IAC7D,QAAQ,CACN,IAAa,EACb,KAA8B,EAC9B,UAAsB;QAEtB,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAEjD,MAAM,UAAU,GAAG,IAAsB,CAAC;QAC1C,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ export type { INodeEvaluatorStrategy } from "./base.js";
2
+ export { LiteralEvaluator } from "./literal.evaluator.js";
3
+ export { IdentifierEvaluator } from "./identifier.evaluator.js";
4
+ export { MemberExpressionEvaluator } from "./member.evaluator.js";
5
+ export { CallExpressionEvaluator } from "./call.evaluator.js";
6
+ export { BinaryExpressionEvaluator } from "./binary.evaluator.js";
7
+ export { UnaryExpressionEvaluator } from "./unary.evaluator.js";
8
+ export { ConditionalExpressionEvaluator } from "./conditional.evaluator.js";
9
+ export { ASTEvaluator } from "./ast.evaluator.js";
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,9 @@
1
+ export { LiteralEvaluator } from "./literal.evaluator.js";
2
+ export { IdentifierEvaluator } from "./identifier.evaluator.js";
3
+ export { MemberExpressionEvaluator } from "./member.evaluator.js";
4
+ export { CallExpressionEvaluator } from "./call.evaluator.js";
5
+ export { BinaryExpressionEvaluator } from "./binary.evaluator.js";
6
+ export { UnaryExpressionEvaluator } from "./unary.evaluator.js";
7
+ export { ConditionalExpressionEvaluator } from "./conditional.evaluator.js";
8
+ export { ASTEvaluator } from "./ast.evaluator.js";
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { ASTNode } from "../types.js";
2
+ import type { IEvaluator } from "../interfaces.js";
3
+ import type { INodeEvaluatorStrategy } from "./base.js";
4
+ /**
5
+ * Implements the responsibility of evaluating literal AST nodes.
6
+ * Handles evaluation of primitive values like strings, numbers, booleans, etc.
7
+ */
8
+ export declare class LiteralEvaluator implements INodeEvaluatorStrategy {
9
+ /**
10
+ * Evaluates a literal AST node by returning its primitive value.
11
+ *
12
+ * @param node - The literal AST node to evaluate
13
+ * @param _scope - The evaluation scope (not used for literals)
14
+ * @param _evaluator - The main evaluator instance (not used for literals)
15
+ * @returns The primitive value of the literal node
16
+ * @throws Error if node is null or undefined
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const evaluator = new LiteralEvaluator();
21
+ * const result = evaluator.evaluate(literalNode, scope, evaluator);
22
+ * // Returns the primitive value (string, number, boolean, etc.)
23
+ * ```
24
+ */
25
+ evaluate(node: ASTNode, _scope: Record<string, unknown>, _evaluator: IEvaluator): unknown;
26
+ }
27
+ //# sourceMappingURL=literal.evaluator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"literal.evaluator.d.ts","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/literal.evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAe,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,sBAAsB;IAC7D;;;;;;;;;;;;;;;OAeG;IAEH,QAAQ,CACN,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,UAAU,EAAE,UAAU,GACrB,OAAO;CAKX"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Implements the responsibility of evaluating literal AST nodes.
3
+ * Handles evaluation of primitive values like strings, numbers, booleans, etc.
4
+ */
5
+ export class LiteralEvaluator {
6
+ /**
7
+ * Evaluates a literal AST node by returning its primitive value.
8
+ *
9
+ * @param node - The literal AST node to evaluate
10
+ * @param _scope - The evaluation scope (not used for literals)
11
+ * @param _evaluator - The main evaluator instance (not used for literals)
12
+ * @returns The primitive value of the literal node
13
+ * @throws Error if node is null or undefined
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * const evaluator = new LiteralEvaluator();
18
+ * const result = evaluator.evaluate(literalNode, scope, evaluator);
19
+ * // Returns the primitive value (string, number, boolean, etc.)
20
+ * ```
21
+ */
22
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
23
+ evaluate(node, _scope, _evaluator) {
24
+ if (!node)
25
+ throw new Error("Node is required");
26
+ return node.value;
27
+ }
28
+ }
29
+ //# sourceMappingURL=literal.evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"literal.evaluator.js","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/literal.evaluator.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,OAAO,gBAAgB;IAC3B;;;;;;;;;;;;;;;OAeG;IACH,6DAA6D;IAC7D,QAAQ,CACN,IAAa,EACb,MAA+B,EAC/B,UAAsB;QAEtB,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAE/C,OAAQ,IAAoB,CAAC,KAAK,CAAC;IACrC,CAAC;CACF"}
@@ -0,0 +1,29 @@
1
+ import type { ASTNode } from "../types.js";
2
+ import type { IEvaluator } from "../interfaces.js";
3
+ import type { INodeEvaluatorStrategy } from "./base.js";
4
+ /**
5
+ * Implements the responsibility of evaluating member expression AST nodes.
6
+ * Handles property access on objects with support for optional chaining.
7
+ */
8
+ export declare class MemberExpressionEvaluator implements INodeEvaluatorStrategy {
9
+ /**
10
+ * Evaluates a member expression AST node by accessing a property on an object.
11
+ * Supports optional chaining where accessing properties on null/undefined returns undefined.
12
+ *
13
+ * @param node - The member expression AST node to evaluate
14
+ * @param scope - The evaluation scope containing variable bindings
15
+ * @param evaluator - The main evaluator instance for recursive evaluation
16
+ * @returns The value of the accessed property, or undefined for optional chaining on null/undefined
17
+ * @throws Error if node, scope, or evaluator is null/undefined
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * const evaluator = new MemberExpressionEvaluator();
22
+ * const scope = { obj: { prop: 'value' } };
23
+ * const result = evaluator.evaluate(memberNode, scope, evaluator);
24
+ * // Returns 'value' for obj.prop
25
+ * ```
26
+ */
27
+ evaluate(node: ASTNode, scope: Record<string, unknown>, evaluator: IEvaluator): unknown;
28
+ }
29
+ //# sourceMappingURL=member.evaluator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member.evaluator.d.ts","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/member.evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAwB,MAAM,aAAa,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD;;;GAGG;AACH,qBAAa,yBAA0B,YAAW,sBAAsB;IACtE;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CACN,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,SAAS,EAAE,UAAU,GACpB,OAAO;CAcX"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Implements the responsibility of evaluating member expression AST nodes.
3
+ * Handles property access on objects with support for optional chaining.
4
+ */
5
+ export class MemberExpressionEvaluator {
6
+ /**
7
+ * Evaluates a member expression AST node by accessing a property on an object.
8
+ * Supports optional chaining where accessing properties on null/undefined returns undefined.
9
+ *
10
+ * @param node - The member expression AST node to evaluate
11
+ * @param scope - The evaluation scope containing variable bindings
12
+ * @param evaluator - The main evaluator instance for recursive evaluation
13
+ * @returns The value of the accessed property, or undefined for optional chaining on null/undefined
14
+ * @throws Error if node, scope, or evaluator is null/undefined
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const evaluator = new MemberExpressionEvaluator();
19
+ * const scope = { obj: { prop: 'value' } };
20
+ * const result = evaluator.evaluate(memberNode, scope, evaluator);
21
+ * // Returns 'value' for obj.prop
22
+ * ```
23
+ */
24
+ evaluate(node, scope, evaluator) {
25
+ if (!node)
26
+ throw new Error("Node is required");
27
+ if (!scope)
28
+ throw new Error("Scope is required");
29
+ if (!evaluator)
30
+ throw new Error("Evaluator is required");
31
+ const memberExpr = node;
32
+ const obj = evaluator.evaluate(memberExpr.object, scope);
33
+ if (obj == null) {
34
+ return memberExpr.optional ? undefined : obj;
35
+ }
36
+ return obj[memberExpr.property.name];
37
+ }
38
+ }
39
+ //# sourceMappingURL=member.evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member.evaluator.js","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/member.evaluator.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,OAAO,yBAAyB;IACpC;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CACN,IAAa,EACb,KAA8B,EAC9B,SAAqB;QAErB,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAEzD,MAAM,UAAU,GAAG,IAA4B,CAAC;QAChD,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEzD,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAChB,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;QAC/C,CAAC;QAED,OAAQ,GAA+B,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;CACF"}
@@ -0,0 +1,29 @@
1
+ import type { ASTNode } from "../types.js";
2
+ import type { IEvaluator } from "../interfaces.js";
3
+ import type { INodeEvaluatorStrategy } from "./base.js";
4
+ /**
5
+ * Implements the responsibility of evaluating unary expression AST nodes.
6
+ * Handles logical negation, numeric negation, and numeric coercion operations.
7
+ */
8
+ export declare class UnaryExpressionEvaluator implements INodeEvaluatorStrategy {
9
+ private readonly operators;
10
+ /**
11
+ * Evaluates a unary expression AST node by applying the operator to its operand.
12
+ *
13
+ * @param node - The unary expression AST node to evaluate
14
+ * @param scope - The evaluation scope containing variable bindings
15
+ * @param evaluator - The main evaluator instance for recursive evaluation
16
+ * @returns The result of applying the unary operator to the operand
17
+ * @throws Error if node, scope, or evaluator is null/undefined, or if operator is unknown
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * const evaluator = new UnaryExpressionEvaluator();
22
+ * const scope = { x: 5 };
23
+ * const result = evaluator.evaluate(unaryNode, scope, evaluator);
24
+ * // Returns -5 for -x
25
+ * ```
26
+ */
27
+ evaluate(node: ASTNode, scope: Record<string, unknown>, evaluator: IEvaluator): unknown;
28
+ }
29
+ //# sourceMappingURL=unary.evaluator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unary.evaluator.d.ts","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/unary.evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAuB,MAAM,aAAa,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAExD;;;GAGG;AACH,qBAAa,wBAAyB,YAAW,sBAAsB;IACrE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAIxB;IAEF;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CACN,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,SAAS,EAAE,UAAU,GACpB,OAAO;CAeX"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Implements the responsibility of evaluating unary expression AST nodes.
3
+ * Handles logical negation, numeric negation, and numeric coercion operations.
4
+ */
5
+ export class UnaryExpressionEvaluator {
6
+ operators = {
7
+ "!": (arg) => !arg,
8
+ "-": (arg) => -arg,
9
+ "+": (arg) => +arg,
10
+ };
11
+ /**
12
+ * Evaluates a unary expression AST node by applying the operator to its operand.
13
+ *
14
+ * @param node - The unary expression AST node to evaluate
15
+ * @param scope - The evaluation scope containing variable bindings
16
+ * @param evaluator - The main evaluator instance for recursive evaluation
17
+ * @returns The result of applying the unary operator to the operand
18
+ * @throws Error if node, scope, or evaluator is null/undefined, or if operator is unknown
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * const evaluator = new UnaryExpressionEvaluator();
23
+ * const scope = { x: 5 };
24
+ * const result = evaluator.evaluate(unaryNode, scope, evaluator);
25
+ * // Returns -5 for -x
26
+ * ```
27
+ */
28
+ evaluate(node, scope, evaluator) {
29
+ if (!node)
30
+ throw new Error("Node is required");
31
+ if (!scope)
32
+ throw new Error("Scope is required");
33
+ if (!evaluator)
34
+ throw new Error("Evaluator is required");
35
+ const unaryExpr = node;
36
+ const arg = evaluator.evaluate(unaryExpr.argument, scope);
37
+ const operation = this.operators[unaryExpr.operator];
38
+ if (!operation) {
39
+ throw new Error(`Unknown unary operator: ${unaryExpr.operator}`);
40
+ }
41
+ return operation(arg);
42
+ }
43
+ }
44
+ //# sourceMappingURL=unary.evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unary.evaluator.js","sourceRoot":"","sources":["../../../../src/rendering/expression-parser/evaluators/unary.evaluator.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IAClB,SAAS,GAA8C;QACtE,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG;QAClB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAE,GAAc;QAC9B,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAE,GAAc;KAC/B,CAAC;IAEF;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CACN,IAAa,EACb,KAA8B,EAC9B,SAAqB;QAErB,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAEzD,MAAM,SAAS,GAAG,IAA2B,CAAC;QAC9C,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAE1D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;CACF"}