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,46 @@
1
+ import { SmartComponent } from "../core/smart-component.js";
2
+ import type { IRenderEngine } from "../rendering/index.js";
3
+ import type { IServiceProvider } from "../providers/service-provider.interface.js";
4
+ import type { InitializerFactory, LifecycleFactory } from "../core/component-metadata.js";
5
+ import type { ISmartElementFactory } from "./smart-element-factory.interface.js";
6
+ /**
7
+ * Defines the responsibility of configuring a smart element registration.
8
+ */
9
+ export interface SmartElementOptions<_T extends SmartComponent = SmartComponent> {
10
+ /** Factory function that creates the component initializer */
11
+ initializer?: InitializerFactory;
12
+ /** Factory function that creates the lifecycle manager */
13
+ lifecycle?: LifecycleFactory;
14
+ /** Custom render engine instance (defaults to container-resolved IRenderEngine) */
15
+ renderEngine?: IRenderEngine;
16
+ }
17
+ /**
18
+ * Implements the responsibility of creating CustomElementConstructor classes for SmartComponents.
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * const factory = new SmartElementFactory(serviceProvider);
23
+ * const ElementClass = factory.create(CounterComponent);
24
+ * customElements.define('my-counter', ElementClass);
25
+ * ```
26
+ */
27
+ export declare class SmartElementFactory implements ISmartElementFactory {
28
+ private readonly serviceProvider;
29
+ /**
30
+ * Initializes a new instance of SmartElementFactory.
31
+ *
32
+ * @param serviceProvider - Service provider for resolving dependencies
33
+ * @throws Error if serviceProvider is null or undefined
34
+ */
35
+ constructor(serviceProvider: IServiceProvider);
36
+ /**
37
+ * Creates a CustomElementConstructor class bound to the given SmartComponent.
38
+ *
39
+ * @param componentCtor - Constructor of the SmartComponent to wrap
40
+ * @param options - Optional configuration for the element
41
+ * @throws Error if componentCtor is null or undefined
42
+ * @returns A CustomElementConstructor ready to be passed to customElements.define
43
+ */
44
+ create<T extends SmartComponent>(componentCtor: new (...args: unknown[]) => T, options?: SmartElementOptions<T>): CustomElementConstructor;
45
+ }
46
+ //# sourceMappingURL=smart-element-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-element-factory.d.ts","sourceRoot":"","sources":["../../src/registration/smart-element-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAEnF,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAEjF;;GAEG;AAEH,MAAM,WAAW,mBAAmB,CAClC,EAAE,SAAS,cAAc,GAAG,cAAc;IAE1C,8DAA8D;IAC9D,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,0DAA0D;IAC1D,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,mFAAmF;IACnF,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B;AAED;;;;;;;;;GASG;AACH,qBAAa,mBAAoB,YAAW,oBAAoB;IAC9D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAmB;IAEnD;;;;;OAKG;gBACS,eAAe,EAAE,gBAAgB;IAM7C;;;;;;;OAOG;IACH,MAAM,CAAC,CAAC,SAAS,cAAc,EAC7B,aAAa,EAAE,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,EAC5C,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC/B,wBAAwB;CA8J5B"}
@@ -0,0 +1,17 @@
1
+ import type { SmartComponent } from "../core/smart-component.js";
2
+ import type { SmartElementOptions } from "./smart-element-factory.js";
3
+ /**
4
+ * Defines the responsibility of creating CustomElementConstructor classes for SmartComponents.
5
+ */
6
+ export interface ISmartElementFactory {
7
+ /**
8
+ * Creates a CustomElementConstructor class bound to the given SmartComponent.
9
+ *
10
+ * @param componentCtor - Constructor of the SmartComponent to wrap
11
+ * @param options - Optional configuration for the element
12
+ * @throws Error if componentCtor is null or undefined
13
+ * @returns A CustomElementConstructor ready to be passed to customElements.define
14
+ */
15
+ create<T extends SmartComponent>(componentCtor: new (...args: unknown[]) => T, options?: SmartElementOptions<T>): CustomElementConstructor;
16
+ }
17
+ //# sourceMappingURL=smart-element-factory.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-element-factory.interface.d.ts","sourceRoot":"","sources":["../../src/registration/smart-element-factory.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;;;OAOG;IACH,MAAM,CAAC,CAAC,SAAS,cAAc,EAC7B,aAAa,EAAE,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,EAC5C,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC/B,wBAAwB,CAAC;CAC7B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=smart-element-factory.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-element-factory.interface.js","sourceRoot":"","sources":["../../src/registration/smart-element-factory.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,146 @@
1
+ /**
2
+ * Implements the responsibility of creating CustomElementConstructor classes for SmartComponents.
3
+ *
4
+ * @example
5
+ * ```typescript
6
+ * const factory = new SmartElementFactory(serviceProvider);
7
+ * const ElementClass = factory.create(CounterComponent);
8
+ * customElements.define('my-counter', ElementClass);
9
+ * ```
10
+ */
11
+ export class SmartElementFactory {
12
+ serviceProvider;
13
+ /**
14
+ * Initializes a new instance of SmartElementFactory.
15
+ *
16
+ * @param serviceProvider - Service provider for resolving dependencies
17
+ * @throws Error if serviceProvider is null or undefined
18
+ */
19
+ constructor(serviceProvider) {
20
+ if (!serviceProvider)
21
+ throw new Error("Service provider is required");
22
+ this.serviceProvider = serviceProvider;
23
+ }
24
+ /**
25
+ * Creates a CustomElementConstructor class bound to the given SmartComponent.
26
+ *
27
+ * @param componentCtor - Constructor of the SmartComponent to wrap
28
+ * @param options - Optional configuration for the element
29
+ * @throws Error if componentCtor is null or undefined
30
+ * @returns A CustomElementConstructor ready to be passed to customElements.define
31
+ */
32
+ create(componentCtor, options) {
33
+ if (!componentCtor)
34
+ throw new Error("Component constructor is required");
35
+ const { renderEngine } = options ?? {};
36
+ const engine = renderEngine || this.serviceProvider.get("IRenderEngine");
37
+ const objectRegistry = this.serviceProvider.get("IObjectRegistry");
38
+ // Collect reactive props from both the instance (TC39 field form) and the
39
+ // prototype (TC39 accessor form and legacy/Babel decorator mode).
40
+ // Only accessors with BOTH get AND set are picked from the prototype
41
+ // to avoid capturing plain getters (which lack a setter) or methods.
42
+ const instance = new componentCtor();
43
+ const instanceProps = Object.keys(instance).filter((key) => !key.startsWith("_"));
44
+ const proto = Object.getPrototypeOf(instance);
45
+ const protoProps = proto
46
+ ? Object.entries(Object.getOwnPropertyDescriptors(proto))
47
+ .filter(([key, desc]) => !key.startsWith("_") &&
48
+ key !== "constructor" &&
49
+ typeof desc.get === "function" &&
50
+ typeof desc.set === "function")
51
+ .map(([key]) => key)
52
+ : [];
53
+ const observableProps = [...new Set([...instanceProps, ...protoProps])];
54
+ return class SmartElement extends HTMLElement {
55
+ component = null;
56
+ renderResult = null;
57
+ static get observedAttributes() {
58
+ return observableProps;
59
+ }
60
+ handleSmartAction = (event) => {
61
+ if (!this.component)
62
+ return;
63
+ const originalTarget = event.composedPath()[0];
64
+ if (originalTarget === this)
65
+ return;
66
+ const customEvent = event;
67
+ const detail = customEvent.detail;
68
+ const nameCandidate = detail?.name;
69
+ if (typeof nameCandidate !== "string" || nameCandidate.length === 0) {
70
+ return;
71
+ }
72
+ const value = detail?.value;
73
+ const maybeGetViewActions = this.component.getViewActions;
74
+ if (typeof maybeGetViewActions === "function") {
75
+ const actions = maybeGetViewActions.call(this.component);
76
+ const candidate = actions?.[nameCandidate];
77
+ if (typeof candidate === "function") {
78
+ candidate.call(this.component, value, event);
79
+ return;
80
+ }
81
+ }
82
+ if (nameCandidate in this.component) {
83
+ const candidate = this.component[nameCandidate];
84
+ if (typeof candidate === "function") {
85
+ candidate.call(this.component, value, event);
86
+ }
87
+ }
88
+ };
89
+ async connectedCallback() {
90
+ if (this.component) {
91
+ return;
92
+ }
93
+ this.component = new componentCtor();
94
+ const component = this.component;
95
+ Array.from(this.attributes).forEach((attr) => {
96
+ const propName = attr.name;
97
+ if (propName in component) {
98
+ const fromRegistry = objectRegistry.get(attr.value);
99
+ component[propName] =
100
+ fromRegistry !== undefined ? fromRegistry : attr.value;
101
+ }
102
+ });
103
+ const componentId = this.tagName.toLowerCase();
104
+ const targetRoot = this.attachShadow({ mode: "open" });
105
+ // Inherit the document-level data-theme so that Shadow DOM CSS rules
106
+ // (e.g. Pico CSS :host(:not([data-theme=dark]))) respect the current theme.
107
+ const docTheme = document.documentElement.getAttribute("data-theme");
108
+ if (docTheme) {
109
+ this.setAttribute("data-theme", docTheme);
110
+ }
111
+ try {
112
+ const result = await engine.render({
113
+ componentId,
114
+ component: this.component,
115
+ targetRoot,
116
+ hostElement: this,
117
+ });
118
+ this.renderResult = result;
119
+ }
120
+ catch (error) {
121
+ this.component = null;
122
+ throw error;
123
+ }
124
+ this.addEventListener("smart-action", this.handleSmartAction);
125
+ }
126
+ attributeChangedCallback(name, _oldValue, newValue) {
127
+ if (!this.component || newValue === null)
128
+ return;
129
+ if (name in this.component) {
130
+ const resolved = objectRegistry.get(newValue);
131
+ this.component[name] =
132
+ resolved !== undefined ? resolved : newValue;
133
+ }
134
+ }
135
+ disconnectedCallback() {
136
+ this.removeEventListener("smart-action", this.handleSmartAction);
137
+ if (this.renderResult) {
138
+ this.renderResult.cleanup();
139
+ this.renderResult = null;
140
+ }
141
+ this.component = null;
142
+ }
143
+ };
144
+ }
145
+ }
146
+ //# sourceMappingURL=smart-element-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-element-factory.js","sourceRoot":"","sources":["../../src/registration/smart-element-factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import type { SmartComponent } from "../core/smart-component.js";
2
+ import type { IServiceRegistry } from "../providers/service-provider.interface.js";
3
+ import type { SmartElementOptions } from "./smart-element-factory.js";
4
+ import type { ISmartElementRegistrar } from "./smart-element-registrar.interface.js";
5
+ import type { ISmartElementFactory } from "./smart-element-factory.interface.js";
6
+ /**
7
+ * Implements the responsibility of registering SmartComponents as native custom elements.
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * const registrar = new SmartElementRegistrar(serviceRegistry, elementFactory);
12
+ * registrar.register('my-counter', CounterComponent);
13
+ * ```
14
+ */
15
+ export declare class SmartElementRegistrar implements ISmartElementRegistrar {
16
+ private readonly elementFactory;
17
+ /**
18
+ * Initializes a new instance of SmartElementRegistrar.
19
+ *
20
+ * @param _serviceRegistry - Registry for resolving and registering services (reserved for future use)
21
+ * @param elementFactory - Factory for creating CustomElementConstructor classes
22
+ * @throws Error if serviceRegistry or elementFactory are null or undefined
23
+ */
24
+ constructor(_serviceRegistry: IServiceRegistry, elementFactory: ISmartElementFactory);
25
+ /**
26
+ * Registers a SmartComponent as a native custom element.
27
+ *
28
+ * @param tagName - HTML tag name for the element (e.g. 'my-component')
29
+ * @param componentCtor - Constructor of the SmartComponent to register
30
+ * @param options - Optional configuration: lifecycle, initializer, shadow DOM, render engine
31
+ * @throws Error if tagName or componentCtor are null or undefined
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * const registrar = new SmartElementRegistrar(serviceRegistry);
36
+ * registrar.register('my-counter', CounterComponent);
37
+ * ```
38
+ */
39
+ register<T extends SmartComponent>(tagName: string, componentCtor: new (...args: unknown[]) => T, options?: SmartElementOptions<T>): void;
40
+ }
41
+ //# sourceMappingURL=smart-element-registrar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-element-registrar.d.ts","sourceRoot":"","sources":["../../src/registration/smart-element-registrar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAEjF;;;;;;;;GAQG;AACH,qBAAa,qBAAsB,YAAW,sBAAsB;IAClE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuB;IAEtD;;;;;;OAMG;gBAED,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,oBAAoB;IAQtC;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,CAAC,SAAS,cAAc,EAC/B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,EAC5C,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC/B,IAAI;CAoBR"}
@@ -0,0 +1,17 @@
1
+ import type { SmartComponent } from "../core/smart-component.js";
2
+ import type { SmartElementOptions } from "./smart-element-factory.js";
3
+ /**
4
+ * Defines the responsibility of registering SmartComponents as native custom elements.
5
+ */
6
+ export interface ISmartElementRegistrar {
7
+ /**
8
+ * Registers a SmartComponent as a native custom element.
9
+ *
10
+ * @param tagName - HTML tag name for the element (e.g. 'my-component')
11
+ * @param componentCtor - Constructor of the SmartComponent to register
12
+ * @param options - Optional configuration: lifecycle, initializer, shadow DOM, render engine
13
+ * @throws Error if tagName or componentCtor are null or undefined
14
+ */
15
+ register<T extends SmartComponent>(tagName: string, componentCtor: new (...args: unknown[]) => T, options?: SmartElementOptions<T>): void;
16
+ }
17
+ //# sourceMappingURL=smart-element-registrar.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-element-registrar.interface.d.ts","sourceRoot":"","sources":["../../src/registration/smart-element-registrar.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;;;OAOG;IACH,QAAQ,CAAC,CAAC,SAAS,cAAc,EAC/B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,EAC5C,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC/B,IAAI,CAAC;CACT"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=smart-element-registrar.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-element-registrar.interface.js","sourceRoot":"","sources":["../../src/registration/smart-element-registrar.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Implements the responsibility of registering SmartComponents as native custom elements.
3
+ *
4
+ * @example
5
+ * ```typescript
6
+ * const registrar = new SmartElementRegistrar(serviceRegistry, elementFactory);
7
+ * registrar.register('my-counter', CounterComponent);
8
+ * ```
9
+ */
10
+ export class SmartElementRegistrar {
11
+ elementFactory;
12
+ /**
13
+ * Initializes a new instance of SmartElementRegistrar.
14
+ *
15
+ * @param _serviceRegistry - Registry for resolving and registering services (reserved for future use)
16
+ * @param elementFactory - Factory for creating CustomElementConstructor classes
17
+ * @throws Error if serviceRegistry or elementFactory are null or undefined
18
+ */
19
+ constructor(_serviceRegistry, elementFactory) {
20
+ if (!_serviceRegistry)
21
+ throw new Error("Service registry is required");
22
+ if (!elementFactory)
23
+ throw new Error("Element factory is required");
24
+ this.elementFactory = elementFactory;
25
+ }
26
+ /**
27
+ * Registers a SmartComponent as a native custom element.
28
+ *
29
+ * @param tagName - HTML tag name for the element (e.g. 'my-component')
30
+ * @param componentCtor - Constructor of the SmartComponent to register
31
+ * @param options - Optional configuration: lifecycle, initializer, shadow DOM, render engine
32
+ * @throws Error if tagName or componentCtor are null or undefined
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * const registrar = new SmartElementRegistrar(serviceRegistry);
37
+ * registrar.register('my-counter', CounterComponent);
38
+ * ```
39
+ */
40
+ register(tagName, componentCtor, options) {
41
+ if (!tagName)
42
+ throw new Error("Tag name is required");
43
+ if (!componentCtor)
44
+ throw new Error("Component constructor is required");
45
+ const normalizedTag = tagName.toLowerCase();
46
+ if (typeof customElements === "undefined") {
47
+ return;
48
+ }
49
+ if (customElements.get(normalizedTag)) {
50
+ return;
51
+ }
52
+ const SmartElementClass = this.elementFactory.create(componentCtor, options);
53
+ customElements.define(normalizedTag, SmartElementClass);
54
+ }
55
+ }
56
+ //# sourceMappingURL=smart-element-registrar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-element-registrar.js","sourceRoot":"","sources":["../../src/registration/smart-element-registrar.ts"],"names":[],"mappings":"AAMA;;;;;;;;GAQG;AACH,MAAM,OAAO,qBAAqB;IACf,cAAc,CAAuB;IAEtD;;;;;;OAMG;IACH,YACE,gBAAkC,EAClC,cAAoC;QAEpC,IAAI,CAAC,gBAAgB;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACvE,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAEpE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,QAAQ,CACN,OAAe,EACf,aAA4C,EAC5C,OAAgC;QAEhC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACtD,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAEzE,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAE5C,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,IAAI,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAClD,aAAa,EACb,OAAO,CACR,CAAC;QACF,cAAc,CAAC,MAAM,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC;IAC1D,CAAC;CACF"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Registers a tag name as a smart component tag.
3
+ *
4
+ * @param tagName - HTML tag name to register (e.g. 'my-counter')
5
+ * @throws Error if tagName is null or undefined
6
+ */
7
+ export declare function markSmartTag(tagName: string): void;
8
+ /**
9
+ * Checks whether a tag name is registered as a smart component.
10
+ *
11
+ * @param tagName - HTML tag name to check
12
+ * @throws Error if tagName is null or undefined
13
+ * @returns true if the tag is a registered smart component
14
+ */
15
+ export declare function isSmartTag(tagName: string): boolean;
16
+ //# sourceMappingURL=smart-tags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-tags.d.ts","sourceRoot":"","sources":["../../src/registration/smart-tags.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAIlD;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAInD"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Registry of known smart component tag names.
3
+ * Used by the template compiler to detect smart elements and route
4
+ * object values through SmartInputStore.
5
+ */
6
+ const smartTags = new Set();
7
+ /**
8
+ * Registers a tag name as a smart component tag.
9
+ *
10
+ * @param tagName - HTML tag name to register (e.g. 'my-counter')
11
+ * @throws Error if tagName is null or undefined
12
+ */
13
+ export function markSmartTag(tagName) {
14
+ if (!tagName)
15
+ throw new Error('tagName is required');
16
+ smartTags.add(tagName.toLowerCase());
17
+ }
18
+ /**
19
+ * Checks whether a tag name is registered as a smart component.
20
+ *
21
+ * @param tagName - HTML tag name to check
22
+ * @throws Error if tagName is null or undefined
23
+ * @returns true if the tag is a registered smart component
24
+ */
25
+ export function isSmartTag(tagName) {
26
+ if (!tagName)
27
+ throw new Error('tagName is required');
28
+ return smartTags.has(tagName.toLowerCase());
29
+ }
30
+ //# sourceMappingURL=smart-tags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-tags.js","sourceRoot":"","sources":["../../src/registration/smart-tags.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;AAEpC;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAErD,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAErD,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,90 @@
1
+ import { SmartComponent } from "../../core/smart-component.js";
2
+ import { IExpressionResolver } from "./expression-resolver.interface.js";
3
+ import { IPropertyExtractor } from "./property-extractor.interface.js";
4
+ import { IManagedElementResolver } from "../managed-host/managed-element-resolver.interface.js";
5
+ import { Unsubscribe } from "../../reactive/signal.js";
6
+ import type { IDependencyTracker } from "../../reactive/dependency-tracker.interface.js";
7
+ import type { IObjectRegistry } from "../../utils/object-registry.js";
8
+ /**
9
+ * Defines the responsibility of managing reactive state bindings in DOM elements.
10
+ */
11
+ export interface IBindingResolver {
12
+ /**
13
+ * Binds reactive state to a DOM element and its children.
14
+ *
15
+ * @param element - Root element to bind reactively
16
+ * @param component - Component instance providing state observables
17
+ * @param bindingTarget - Target for managing subscriptions (e.g., DomContext)
18
+ * @throws Error if element or component are null/undefined
19
+ */
20
+ bindElement(element: Element, component: SmartComponent, bindingTarget: {
21
+ addSubscription(subscription: Unsubscribe): void;
22
+ }): void;
23
+ }
24
+ /**
25
+ * Implements the responsibility of managing reactive state bindings and subscriptions.
26
+ */
27
+ export declare class BindingResolver implements IBindingResolver {
28
+ private readonly expressionResolver;
29
+ private readonly propertyExtractor;
30
+ private readonly managedElementResolver;
31
+ private readonly dependencyTracker;
32
+ private readonly objectRegistry;
33
+ /**
34
+ * Creates a BindingResolver instance.
35
+ *
36
+ * @param expressionResolver - Resolver for {{expression}} evaluation
37
+ * @param propertyExtractor - Extractor for property dependencies from templates
38
+ * @param managedElementResolver - Resolver for managed element detection
39
+ * @param dependencyTracker - Tracker for reactive property access discovery
40
+ * @param objectRegistry - Registry for object reference management
41
+ */
42
+ constructor(expressionResolver: IExpressionResolver, propertyExtractor: IPropertyExtractor, managedElementResolver: IManagedElementResolver, dependencyTracker: IDependencyTracker, objectRegistry: IObjectRegistry);
43
+ /**
44
+ * Binds reactive state to a DOM element and its children.
45
+ *
46
+ * @param element - Element to compile (recursively processes children)
47
+ * @param component - Component instance for state binding
48
+ * @param bindingTarget - DOM context for subscription management
49
+ * @throws Error if element, component, or bindingTarget are null/undefined
50
+ */
51
+ bindElement(element: Element, component: SmartComponent, bindingTarget: {
52
+ addSubscription(subscription: Unsubscribe): void;
53
+ }): void;
54
+ /**
55
+ * Binds attribute value to component state.
56
+ *
57
+ * @param attr - Attribute to bind (e.g., class="{{status}}")
58
+ * @param component - Component instance for property access
59
+ * @param bindingTarget - DOM context for subscription management
60
+ */
61
+ private bindAttribute;
62
+ /**
63
+ * Binds text node to component state.
64
+ *
65
+ * @param node - Text node to bind (e.g., "Count: {{count}}")
66
+ * @param component - Component instance for property access
67
+ * @param bindingTarget - DOM context for subscription management
68
+ */
69
+ private bindTextNode;
70
+ /**
71
+ * Subscribes to a property's observable, with automatic computed-getter support.
72
+ *
73
+ * @description
74
+ * If the property is a plain getter (not a @Reactive accessor), discovers which
75
+ * @Reactive properties it reads and subscribes the update callback to those instead.
76
+ * This enables {{icon}} to update when this.mode changes, even though 'icon' is
77
+ * a plain getter that derives from the @Reactive 'mode' accessor.
78
+ *
79
+ * @param prop - Property name from the template expression
80
+ * @param component - Component instance
81
+ * @param bindingTarget - DOM context for subscription management
82
+ * @param updateCallback - Callback to invoke when the property value changes
83
+ */
84
+ private subscribeWithComputedSupport;
85
+ /**
86
+ * Walks the prototype chain to find a property descriptor.
87
+ */
88
+ private getPropertyDescriptor;
89
+ }
90
+ //# sourceMappingURL=binding-resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binding-resolver.d.ts","sourceRoot":"","sources":["../../../src/rendering/bindings/binding-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAEhG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;OAOG;IACH,WAAW,CACT,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,cAAc,EACzB,aAAa,EAAE;QAAE,eAAe,CAAC,YAAY,EAAE,WAAW,GAAG,IAAI,CAAA;KAAE,GAClE,IAAI,CAAC;CACT;AAwBD;;GAEG;AACH,qBAAa,eAAgB,YAAW,gBAAgB;IACtD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAsB;IACzD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqB;IACvD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAA0B;IACjE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqB;IACvD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IAEjD;;;;;;;;OAQG;gBAED,kBAAkB,EAAE,mBAAmB,EACvC,iBAAiB,EAAE,kBAAkB,EACrC,sBAAsB,EAAE,uBAAuB,EAC/C,iBAAiB,EAAE,kBAAkB,EACrC,cAAc,EAAE,eAAe;IAgBjC;;;;;;;OAOG;IACH,WAAW,CACT,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,cAAc,EACzB,aAAa,EAAE;QAAE,eAAe,CAAC,YAAY,EAAE,WAAW,GAAG,IAAI,CAAA;KAAE,GAClE,IAAI;IA8BP;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAoFrB;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IA6BpB;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,4BAA4B;IAgCpC;;OAEG;IACH,OAAO,CAAC,qBAAqB;CAc9B"}
@@ -0,0 +1,31 @@
1
+ import { SmartComponent } from '../../core/smart-component.js';
2
+ /**
3
+ * Defines the responsibility of managing reactive state bindings in DOM elements.
4
+ *
5
+ * @description
6
+ * Defines the contract for managing reactive state bindings in DOM elements,
7
+ * including attribute and text node bindings with subscription management.
8
+ */
9
+ export interface IBindingResolver {
10
+ /**
11
+ * Binds reactive state to a DOM element and its children.
12
+ *
13
+ * @param element - Root element to bind reactively
14
+ * @param component - Component instance providing state observables
15
+ * @param bindingTarget - Target for managing subscriptions (e.g., DomContext)
16
+ * @throws Error if element or component are null/undefined
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * bindingResolver.bindElement(
21
+ * element,
22
+ * component,
23
+ * domContext
24
+ * );
25
+ * ```
26
+ */
27
+ bindElement(element: Element, component: SmartComponent, bindingTarget: {
28
+ addSubscription(subscription: unknown): void;
29
+ }): void;
30
+ }
31
+ //# sourceMappingURL=binding-resolver.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binding-resolver.interface.d.ts","sourceRoot":"","sources":["../../../src/rendering/bindings/binding-resolver.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;;;;;;;OAgBG;IACH,WAAW,CACT,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,cAAc,EACzB,aAAa,EAAE;QAAE,eAAe,CAAC,YAAY,EAAE,OAAO,GAAG,IAAI,CAAA;KAAE,GAC9D,IAAI,CAAC;CACT"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=binding-resolver.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binding-resolver.interface.js","sourceRoot":"","sources":["../../../src/rendering/bindings/binding-resolver.interface.ts"],"names":[],"mappings":""}