@ecopages/radiant 0.3.0-alpha.0 → 0.3.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (410) hide show
  1. package/README.md +5 -1
  2. package/dist/{chunk-scfk041e.js → chunk-0bswvy25.js} +3 -3
  3. package/dist/{chunk-scfk041e.js.map → chunk-0bswvy25.js.map} +1 -1
  4. package/dist/chunk-0btkzzyc.js +4 -0
  5. package/dist/{chunk-r75y7ydb.js.map → chunk-0btkzzyc.js.map} +1 -1
  6. package/dist/chunk-0g0j9re6.js +4 -0
  7. package/dist/{chunk-0zq7e1ne.js.map → chunk-0g0j9re6.js.map} +1 -1
  8. package/dist/chunk-1x26p09c.js +4 -0
  9. package/dist/{chunk-d4v5qpxa.js.map → chunk-1x26p09c.js.map} +1 -1
  10. package/dist/{chunk-jg20mzg8.js → chunk-21a7jask.js} +3 -3
  11. package/dist/{chunk-jg20mzg8.js.map → chunk-21a7jask.js.map} +1 -1
  12. package/dist/chunk-25zjh0kg.js +4 -0
  13. package/dist/{chunk-60q4y3k5.js.map → chunk-25zjh0kg.js.map} +1 -1
  14. package/dist/chunk-30x4hggg.js +4 -0
  15. package/dist/{chunk-zb7wh7w4.js.map → chunk-30x4hggg.js.map} +1 -1
  16. package/dist/chunk-3ryr5wx2.js +4 -0
  17. package/dist/{chunk-9554n9t4.js.map → chunk-3ryr5wx2.js.map} +2 -2
  18. package/dist/chunk-3xxvmd5c.js +4 -0
  19. package/dist/chunk-3xxvmd5c.js.map +10 -0
  20. package/dist/chunk-3ynk7e1e.js +4 -0
  21. package/dist/{chunk-d7hh3ze6.js.map → chunk-3ynk7e1e.js.map} +1 -1
  22. package/dist/chunk-4e559cy5.js +4 -0
  23. package/dist/chunk-4e559cy5.js.map +10 -0
  24. package/dist/chunk-5b1en9vz.js +4 -0
  25. package/dist/chunk-5b1en9vz.js.map +10 -0
  26. package/dist/chunk-5bkat72n.js +4 -0
  27. package/dist/{chunk-5td6v9k3.js.map → chunk-5bkat72n.js.map} +2 -2
  28. package/dist/{chunk-4srpf0y5.js → chunk-5qeaq3tj.js} +3 -3
  29. package/dist/{chunk-4srpf0y5.js.map → chunk-5qeaq3tj.js.map} +1 -1
  30. package/dist/{chunk-73x7jpdd.js → chunk-66e6s792.js} +2 -2
  31. package/dist/{chunk-73x7jpdd.js.map → chunk-66e6s792.js.map} +1 -1
  32. package/dist/{chunk-paehjz94.js → chunk-79jg8q67.js} +2 -2
  33. package/dist/{chunk-paehjz94.js.map → chunk-79jg8q67.js.map} +1 -1
  34. package/dist/{chunk-8vak8w5w.js → chunk-8d5ddvvf.js} +3 -3
  35. package/dist/{chunk-8vak8w5w.js.map → chunk-8d5ddvvf.js.map} +1 -1
  36. package/dist/{chunk-tyysm4gk.js → chunk-8e9fgtbn.js} +3 -3
  37. package/dist/{chunk-tyysm4gk.js.map → chunk-8e9fgtbn.js.map} +1 -1
  38. package/dist/{chunk-8dexhy6c.js → chunk-9mqtp3js.js} +2 -2
  39. package/dist/{chunk-8dexhy6c.js.map → chunk-9mqtp3js.js.map} +1 -1
  40. package/dist/chunk-9rj2rwes.js +4 -0
  41. package/dist/{chunk-3b033cgq.js.map → chunk-9rj2rwes.js.map} +1 -1
  42. package/dist/{chunk-x0522ksh.js → chunk-atms6yrh.js} +3 -3
  43. package/dist/{chunk-x0522ksh.js.map → chunk-atms6yrh.js.map} +1 -1
  44. package/dist/{chunk-qdj6r8jn.js → chunk-bk2nbmcd.js} +2 -2
  45. package/dist/{chunk-qdj6r8jn.js.map → chunk-bk2nbmcd.js.map} +1 -1
  46. package/dist/{chunk-qd28hvdx.js → chunk-bk6qkvfp.js} +2 -2
  47. package/dist/{chunk-qd28hvdx.js.map → chunk-bk6qkvfp.js.map} +1 -1
  48. package/dist/chunk-c0qyz98c.js +4 -0
  49. package/dist/chunk-c0qyz98c.js.map +10 -0
  50. package/dist/chunk-c52qhh0j.js +4 -0
  51. package/dist/{chunk-60015zxq.js.map → chunk-c52qhh0j.js.map} +1 -1
  52. package/dist/{chunk-8tvt04cm.js → chunk-cnyxrh9r.js} +2 -2
  53. package/dist/{chunk-8tvt04cm.js.map → chunk-cnyxrh9r.js.map} +1 -1
  54. package/dist/chunk-dabagjk6.js +4 -0
  55. package/dist/chunk-dabagjk6.js.map +10 -0
  56. package/dist/chunk-e0r6ca2g.js +4 -0
  57. package/dist/chunk-e0r6ca2g.js.map +10 -0
  58. package/dist/chunk-eevw1j2q.js +4 -0
  59. package/dist/{chunk-0y78f8hj.js.map → chunk-eevw1j2q.js.map} +2 -2
  60. package/dist/{chunk-s4qgct1z.js → chunk-ek664x1c.js} +3 -3
  61. package/dist/{chunk-s4qgct1z.js.map → chunk-ek664x1c.js.map} +1 -1
  62. package/dist/{chunk-9gjmqxp2.js → chunk-eyw14d6y.js} +2 -2
  63. package/dist/{chunk-9gjmqxp2.js.map → chunk-eyw14d6y.js.map} +1 -1
  64. package/dist/{chunk-hkmm3dj9.js → chunk-fs4j94bk.js} +3 -3
  65. package/dist/{chunk-hkmm3dj9.js.map → chunk-fs4j94bk.js.map} +1 -1
  66. package/dist/{chunk-chyn72n9.js → chunk-g2z3mm6b.js} +3 -3
  67. package/dist/{chunk-chyn72n9.js.map → chunk-g2z3mm6b.js.map} +1 -1
  68. package/dist/chunk-g5n3m11h.js +4 -0
  69. package/dist/chunk-g5n3m11h.js.map +10 -0
  70. package/dist/{chunk-84fc8cz9.js → chunk-gdkte2vd.js} +3 -3
  71. package/dist/{chunk-84fc8cz9.js.map → chunk-gdkte2vd.js.map} +1 -1
  72. package/dist/chunk-gg74gdpv.js +4 -0
  73. package/dist/chunk-gg74gdpv.js.map +10 -0
  74. package/dist/{chunk-hn4j8rt5.js → chunk-h9k7crjc.js} +3 -3
  75. package/dist/{chunk-hn4j8rt5.js.map → chunk-h9k7crjc.js.map} +1 -1
  76. package/dist/{chunk-ksv01cey.js → chunk-hpzgnxgq.js} +3 -3
  77. package/dist/{chunk-ksv01cey.js.map → chunk-hpzgnxgq.js.map} +1 -1
  78. package/dist/chunk-hrjc8b1y.js +4 -0
  79. package/dist/chunk-hrjc8b1y.js.map +10 -0
  80. package/dist/chunk-hvy4zvcc.js +4 -0
  81. package/dist/{chunk-t7a1bbxq.js.map → chunk-hvy4zvcc.js.map} +1 -1
  82. package/dist/{chunk-ms6a9zdt.js → chunk-hztr86b4.js} +2 -2
  83. package/dist/{chunk-ms6a9zdt.js.map → chunk-hztr86b4.js.map} +1 -1
  84. package/dist/chunk-j3v7rca5.js +4 -0
  85. package/dist/{chunk-4fqkmpra.js.map → chunk-j3v7rca5.js.map} +1 -1
  86. package/dist/chunk-j864sv4w.js +4 -0
  87. package/dist/{chunk-w50v38rv.js.map → chunk-j864sv4w.js.map} +1 -1
  88. package/dist/chunk-kakpjgzf.js +4 -0
  89. package/dist/{chunk-d98q3myg.js.map → chunk-kakpjgzf.js.map} +2 -2
  90. package/dist/{chunk-1w1dm68j.js → chunk-kmebacvv.js} +2 -2
  91. package/dist/{chunk-1w1dm68j.js.map → chunk-kmebacvv.js.map} +1 -1
  92. package/dist/chunk-knqsm6v3.js +4 -0
  93. package/dist/{chunk-5bym7y1d.js.map → chunk-knqsm6v3.js.map} +2 -2
  94. package/dist/chunk-mp2vtrkg.js +4 -0
  95. package/dist/{chunk-zj9ez73m.js.map → chunk-mp2vtrkg.js.map} +1 -1
  96. package/dist/chunk-mpsj3cjs.js +4 -0
  97. package/dist/{chunk-qe6sjr27.js.map → chunk-mpsj3cjs.js.map} +1 -1
  98. package/dist/{chunk-dscj0sk9.js → chunk-n4p2542b.js} +3 -3
  99. package/dist/{chunk-dscj0sk9.js.map → chunk-n4p2542b.js.map} +1 -1
  100. package/dist/{chunk-agjb2a3r.js → chunk-nctznxyz.js} +3 -3
  101. package/dist/{chunk-agjb2a3r.js.map → chunk-nctznxyz.js.map} +1 -1
  102. package/dist/chunk-ndw3hc3v.js +4 -0
  103. package/dist/{chunk-2tgrfv09.js.map → chunk-ndw3hc3v.js.map} +2 -2
  104. package/dist/{chunk-57w3vmme.js → chunk-nnnb6pac.js} +3 -3
  105. package/dist/{chunk-57w3vmme.js.map → chunk-nnnb6pac.js.map} +1 -1
  106. package/dist/{chunk-8n2dhx28.js → chunk-nssj2x13.js} +2 -2
  107. package/dist/{chunk-8n2dhx28.js.map → chunk-nssj2x13.js.map} +1 -1
  108. package/dist/chunk-nvr37vma.js +4 -0
  109. package/dist/{chunk-mqxmfvyp.js.map → chunk-nvr37vma.js.map} +1 -1
  110. package/dist/chunk-p8k4g99a.js +4 -0
  111. package/dist/{chunk-vpfm9yw8.js.map → chunk-p8k4g99a.js.map} +2 -2
  112. package/dist/chunk-pkszgjqf.js +4 -0
  113. package/dist/{chunk-c8vqg7r1.js.map → chunk-pkszgjqf.js.map} +1 -1
  114. package/dist/{chunk-nerd6fmg.js → chunk-q9z6tnzw.js} +2 -2
  115. package/dist/{chunk-nerd6fmg.js.map → chunk-q9z6tnzw.js.map} +1 -1
  116. package/dist/chunk-qdz5sncz.js +4 -0
  117. package/dist/{chunk-a7hzs37s.js.map → chunk-qdz5sncz.js.map} +1 -1
  118. package/dist/chunk-qe0eww1n.js +4 -0
  119. package/dist/{chunk-ak97hp4w.js.map → chunk-qe0eww1n.js.map} +2 -2
  120. package/dist/{chunk-d0n7njdy.js → chunk-r33zvvda.js} +3 -3
  121. package/dist/{chunk-d0n7njdy.js.map → chunk-r33zvvda.js.map} +1 -1
  122. package/dist/{chunk-xd1xn3vy.js → chunk-rkh1vkb9.js} +2 -2
  123. package/dist/{chunk-xd1xn3vy.js.map → chunk-rkh1vkb9.js.map} +1 -1
  124. package/dist/chunk-rrg759ht.js +4 -0
  125. package/dist/{chunk-42tyhfvh.js.map → chunk-rrg759ht.js.map} +1 -1
  126. package/dist/{chunk-par0t822.js → chunk-s09s5ayx.js} +3 -3
  127. package/dist/{chunk-par0t822.js.map → chunk-s09s5ayx.js.map} +1 -1
  128. package/dist/chunk-s5p5z3z4.js +4 -0
  129. package/dist/chunk-s5p5z3z4.js.map +10 -0
  130. package/dist/chunk-sf4a2gy5.js +4 -0
  131. package/dist/chunk-sf4a2gy5.js.map +10 -0
  132. package/dist/{chunk-dx1wqc00.js → chunk-ssnnxzrj.js} +3 -3
  133. package/dist/{chunk-dx1wqc00.js.map → chunk-ssnnxzrj.js.map} +1 -1
  134. package/dist/{chunk-4cc2syf5.js → chunk-t8xtvgyg.js} +2 -2
  135. package/dist/{chunk-4cc2syf5.js.map → chunk-t8xtvgyg.js.map} +1 -1
  136. package/dist/chunk-v3ta7hnv.js +4 -0
  137. package/dist/{chunk-aajhkdmn.js.map → chunk-v3ta7hnv.js.map} +1 -1
  138. package/dist/{chunk-bmhn4nbp.js → chunk-v92hp9g0.js} +3 -3
  139. package/dist/{chunk-bmhn4nbp.js.map → chunk-v92hp9g0.js.map} +1 -1
  140. package/dist/{chunk-8xy18qmz.js → chunk-vgtggzb6.js} +2 -2
  141. package/dist/{chunk-8xy18qmz.js.map → chunk-vgtggzb6.js.map} +1 -1
  142. package/dist/{chunk-5a2xez36.js → chunk-vk48hgm4.js} +3 -3
  143. package/dist/{chunk-5a2xez36.js.map → chunk-vk48hgm4.js.map} +1 -1
  144. package/dist/{chunk-k5hr781q.js → chunk-w8s5fnsq.js} +3 -3
  145. package/dist/{chunk-k5hr781q.js.map → chunk-w8s5fnsq.js.map} +1 -1
  146. package/dist/{chunk-13ydx769.js → chunk-wd23rn4q.js} +2 -2
  147. package/dist/{chunk-13ydx769.js.map → chunk-wd23rn4q.js.map} +1 -1
  148. package/dist/chunk-wds4href.js +4 -0
  149. package/dist/{chunk-147yvtsn.js.map → chunk-wds4href.js.map} +2 -2
  150. package/dist/{chunk-qbnedp0y.js → chunk-wvd1ffe4.js} +2 -2
  151. package/dist/{chunk-qbnedp0y.js.map → chunk-wvd1ffe4.js.map} +1 -1
  152. package/dist/{chunk-g0gz7ypq.js → chunk-wwbjz9k4.js} +2 -2
  153. package/dist/{chunk-g0gz7ypq.js.map → chunk-wwbjz9k4.js.map} +1 -1
  154. package/dist/{chunk-qaagk55a.js → chunk-x2k0ngpz.js} +3 -3
  155. package/dist/{chunk-qaagk55a.js.map → chunk-x2k0ngpz.js.map} +1 -1
  156. package/dist/{chunk-t6x9e177.js → chunk-x457d0ap.js} +3 -3
  157. package/dist/{chunk-t6x9e177.js.map → chunk-x457d0ap.js.map} +1 -1
  158. package/dist/chunk-xbhtzkre.js +4 -0
  159. package/dist/{chunk-p6pxdvkk.js.map → chunk-xbhtzkre.js.map} +1 -1
  160. package/dist/{chunk-cbvd18v1.js → chunk-y139ycfm.js} +2 -2
  161. package/dist/{chunk-cbvd18v1.js.map → chunk-y139ycfm.js.map} +1 -1
  162. package/dist/chunk-z9kxfckm.js +4 -0
  163. package/dist/{chunk-mpjnqmbq.js.map → chunk-z9kxfckm.js.map} +1 -1
  164. package/dist/chunk-zx5txex8.js +4 -0
  165. package/dist/chunk-zx5txex8.js.map +10 -0
  166. package/dist/client/hydrator.d.ts +19 -0
  167. package/dist/client/hydrator.js +3 -0
  168. package/dist/{core/slot-projection.js.map → client/hydrator.js.map} +1 -1
  169. package/dist/client/install-hydrator.d.ts +1 -0
  170. package/dist/client/install-hydrator.js +3 -0
  171. package/dist/client/install-hydrator.js.map +10 -0
  172. package/dist/context/context-consumer-bootstrap.js +2 -2
  173. package/dist/context/context-consumer-bootstrap.js.map +1 -1
  174. package/dist/context/context-consumer-runtime.js +2 -2
  175. package/dist/context/context-consumer-runtime.js.map +1 -1
  176. package/dist/context/context-provider.js +2 -2
  177. package/dist/context/context-provider.js.map +1 -1
  178. package/dist/context/context-ssr-bridge.js +2 -2
  179. package/dist/context/context-ssr-bridge.js.map +1 -1
  180. package/dist/context/create-context.js +2 -2
  181. package/dist/context/create-context.js.map +1 -1
  182. package/dist/context/decorators/consume-context.js +2 -2
  183. package/dist/context/decorators/consume-context.js.map +1 -1
  184. package/dist/context/decorators/context-selection-delivery.js +2 -2
  185. package/dist/context/decorators/context-selection-delivery.js.map +1 -1
  186. package/dist/context/decorators/context-selector.d.ts +0 -5
  187. package/dist/context/decorators/context-selector.js +2 -2
  188. package/dist/context/decorators/context-selector.js.map +1 -1
  189. package/dist/context/decorators/legacy/consume-context.js +2 -2
  190. package/dist/context/decorators/legacy/consume-context.js.map +1 -1
  191. package/dist/context/decorators/legacy/context-selector-field.js +2 -2
  192. package/dist/context/decorators/legacy/context-selector-field.js.map +1 -1
  193. package/dist/context/decorators/legacy/context-selector.js +2 -2
  194. package/dist/context/decorators/legacy/context-selector.js.map +1 -1
  195. package/dist/context/decorators/legacy/provide-context.js +2 -2
  196. package/dist/context/decorators/legacy/provide-context.js.map +1 -1
  197. package/dist/context/decorators/on-context-update.js +2 -2
  198. package/dist/context/decorators/on-context-update.js.map +1 -1
  199. package/dist/context/decorators/provide-context.js +2 -2
  200. package/dist/context/decorators/provide-context.js.map +1 -1
  201. package/dist/context/decorators/standard/consume-context.js +2 -2
  202. package/dist/context/decorators/standard/consume-context.js.map +1 -1
  203. package/dist/context/decorators/standard/context-selector-field.js +2 -2
  204. package/dist/context/decorators/standard/context-selector-field.js.map +1 -1
  205. package/dist/context/decorators/standard/context-selector.js +2 -2
  206. package/dist/context/decorators/standard/context-selector.js.map +1 -1
  207. package/dist/context/decorators/standard/provide-context.js +2 -2
  208. package/dist/context/decorators/standard/provide-context.js.map +1 -1
  209. package/dist/context/events.js +2 -2
  210. package/dist/context/events.js.map +1 -1
  211. package/dist/context/hydration-script.d.ts +0 -4
  212. package/dist/context/hydration-script.js +2 -2
  213. package/dist/context/hydration-script.js.map +1 -1
  214. package/dist/core/custom-element-metadata.js +2 -2
  215. package/dist/core/custom-element-metadata.js.map +1 -1
  216. package/dist/core/hydration-codec.js +2 -2
  217. package/dist/core/hydration-codec.js.map +1 -1
  218. package/dist/core/radiant-component-ssr-registry.d.ts +54 -0
  219. package/dist/core/radiant-component-ssr-registry.js +3 -0
  220. package/dist/core/radiant-component-ssr-registry.js.map +9 -0
  221. package/dist/core/radiant-component-ssr.js +2 -2
  222. package/dist/core/radiant-component-ssr.js.map +1 -1
  223. package/dist/core/radiant-component.d.ts +9 -2
  224. package/dist/core/radiant-component.js +2 -2
  225. package/dist/core/radiant-component.js.map +1 -1
  226. package/dist/core/radiant-element.js +2 -2
  227. package/dist/core/radiant-element.js.map +1 -1
  228. package/dist/core/radiant-hydrator-state.d.ts +20 -0
  229. package/dist/core/radiant-hydrator-state.js +3 -0
  230. package/dist/core/radiant-hydrator-state.js.map +9 -0
  231. package/dist/core/reactive-jsx-value.js +2 -2
  232. package/dist/core/reactive-jsx-value.js.map +1 -1
  233. package/dist/core/reactive-prop-metadata.js +2 -2
  234. package/dist/core/reactive-prop-metadata.js.map +1 -1
  235. package/dist/core/{slot-projection.d.ts → slot-projection-runtime.d.ts} +0 -20
  236. package/dist/core/slot-projection-runtime.js +3 -0
  237. package/dist/core/slot-projection-runtime.js.map +9 -0
  238. package/dist/core/ssr-preparation.js +2 -2
  239. package/dist/core/ssr-preparation.js.map +1 -1
  240. package/dist/decorators/bound.js +2 -2
  241. package/dist/decorators/bound.js.map +1 -1
  242. package/dist/decorators/bridge.js +2 -2
  243. package/dist/decorators/bridge.js.map +1 -1
  244. package/dist/decorators/custom-element.js +2 -2
  245. package/dist/decorators/custom-element.js.map +1 -1
  246. package/dist/decorators/debounce.js +2 -2
  247. package/dist/decorators/debounce.js.map +1 -1
  248. package/dist/decorators/event.js +2 -2
  249. package/dist/decorators/event.js.map +1 -1
  250. package/dist/decorators/legacy/bound.js +2 -2
  251. package/dist/decorators/legacy/bound.js.map +1 -1
  252. package/dist/decorators/legacy/custom-element.js +2 -2
  253. package/dist/decorators/legacy/custom-element.js.map +1 -1
  254. package/dist/decorators/legacy/debounce.js +2 -2
  255. package/dist/decorators/legacy/debounce.js.map +1 -1
  256. package/dist/decorators/legacy/event.js +2 -2
  257. package/dist/decorators/legacy/event.js.map +1 -1
  258. package/dist/decorators/legacy/instance-initializers.js +2 -2
  259. package/dist/decorators/legacy/instance-initializers.js.map +1 -1
  260. package/dist/decorators/legacy/on-event.js +2 -2
  261. package/dist/decorators/legacy/on-event.js.map +1 -1
  262. package/dist/decorators/legacy/on-updated.js +2 -2
  263. package/dist/decorators/legacy/on-updated.js.map +1 -1
  264. package/dist/decorators/legacy/query-slot.js +2 -2
  265. package/dist/decorators/legacy/query-slot.js.map +1 -1
  266. package/dist/decorators/legacy/query.js +2 -2
  267. package/dist/decorators/legacy/query.js.map +1 -1
  268. package/dist/decorators/legacy/reactive-field.js +2 -2
  269. package/dist/decorators/legacy/reactive-field.js.map +1 -1
  270. package/dist/decorators/legacy/reactive-prop.js +2 -2
  271. package/dist/decorators/legacy/reactive-prop.js.map +1 -1
  272. package/dist/decorators/legacy/signal.js +2 -2
  273. package/dist/decorators/legacy/signal.js.map +1 -1
  274. package/dist/decorators/on-event.js +2 -2
  275. package/dist/decorators/on-event.js.map +1 -1
  276. package/dist/decorators/on-updated.js +2 -2
  277. package/dist/decorators/on-updated.js.map +1 -1
  278. package/dist/decorators/prop.js +2 -2
  279. package/dist/decorators/prop.js.map +1 -1
  280. package/dist/decorators/query-slot.js +2 -2
  281. package/dist/decorators/query-slot.js.map +1 -1
  282. package/dist/decorators/query.js +2 -2
  283. package/dist/decorators/query.js.map +1 -1
  284. package/dist/decorators/signal.js +2 -2
  285. package/dist/decorators/signal.js.map +1 -1
  286. package/dist/decorators/standard/bound.js +2 -2
  287. package/dist/decorators/standard/bound.js.map +1 -1
  288. package/dist/decorators/standard/custom-element.js +2 -2
  289. package/dist/decorators/standard/custom-element.js.map +1 -1
  290. package/dist/decorators/standard/debounce.js +2 -2
  291. package/dist/decorators/standard/debounce.js.map +1 -1
  292. package/dist/decorators/standard/event.js +2 -2
  293. package/dist/decorators/standard/event.js.map +1 -1
  294. package/dist/decorators/standard/on-event.js +2 -2
  295. package/dist/decorators/standard/on-event.js.map +1 -1
  296. package/dist/decorators/standard/on-updated.js +2 -2
  297. package/dist/decorators/standard/on-updated.js.map +1 -1
  298. package/dist/decorators/standard/query-slot.js +2 -2
  299. package/dist/decorators/standard/query-slot.js.map +1 -1
  300. package/dist/decorators/standard/query.js +2 -2
  301. package/dist/decorators/standard/query.js.map +1 -1
  302. package/dist/decorators/standard/reactive-field.js +2 -2
  303. package/dist/decorators/standard/reactive-field.js.map +1 -1
  304. package/dist/decorators/standard/reactive-prop.js +2 -2
  305. package/dist/decorators/standard/reactive-prop.js.map +1 -1
  306. package/dist/decorators/standard/signal.js +2 -2
  307. package/dist/decorators/standard/signal.js.map +1 -1
  308. package/dist/decorators/state.js +2 -2
  309. package/dist/decorators/state.js.map +1 -1
  310. package/dist/helpers/create-event-listener.js +2 -2
  311. package/dist/helpers/create-event-listener.js.map +1 -1
  312. package/dist/helpers/create-event.js +2 -2
  313. package/dist/helpers/create-event.js.map +1 -1
  314. package/dist/helpers/create-query-slot.js +2 -2
  315. package/dist/helpers/create-query-slot.js.map +1 -1
  316. package/dist/helpers/create-query.js +2 -2
  317. package/dist/helpers/create-query.js.map +1 -1
  318. package/dist/helpers/debounce.js +2 -2
  319. package/dist/helpers/debounce.js.map +1 -1
  320. package/dist/helpers/index.js +2 -2
  321. package/dist/helpers/index.js.map +1 -1
  322. package/dist/index.d.ts +1 -0
  323. package/dist/index.js +2 -2
  324. package/dist/index.js.map +1 -1
  325. package/dist/server/context-ssr.js +2 -2
  326. package/dist/server/context-ssr.js.map +1 -1
  327. package/dist/server/html-parser.d.ts +21 -0
  328. package/dist/server/html-parser.js +3 -0
  329. package/dist/server/html-parser.js.map +9 -0
  330. package/dist/server/install-light-dom-shim.js +2 -2
  331. package/dist/server/install-light-dom-shim.js.map +2 -2
  332. package/dist/server/light-dom-shim.js +2 -2
  333. package/dist/server/light-dom-shim.js.map +1 -1
  334. package/dist/server/project-root.js +1 -1
  335. package/dist/server/radiant-component-ssr-runtime.d.ts +9 -0
  336. package/dist/server/radiant-component-ssr-runtime.js +3 -0
  337. package/dist/server/radiant-component-ssr-runtime.js.map +9 -0
  338. package/dist/server/render-component.d.ts +5 -5
  339. package/dist/server/render-component.js +2 -2
  340. package/dist/server/render-component.js.map +3 -3
  341. package/dist/server/slot-projection-html.d.ts +3 -0
  342. package/dist/server/slot-projection-html.js +3 -0
  343. package/dist/server/slot-projection-html.js.map +10 -0
  344. package/dist/signals/host-resource.js +1 -1
  345. package/dist/signals/host-signal.js +2 -2
  346. package/dist/signals/host-signal.js.map +1 -1
  347. package/dist/signals/hydration-script.d.ts +0 -4
  348. package/dist/signals/hydration-script.js +2 -2
  349. package/dist/signals/hydration-script.js.map +1 -1
  350. package/dist/tools/escape-script-json.js +2 -2
  351. package/dist/tools/escape-script-json.js.map +1 -1
  352. package/dist/tools/event-emitter.js +2 -2
  353. package/dist/tools/event-emitter.js.map +1 -1
  354. package/dist/tools/index.js +2 -2
  355. package/dist/tools/index.js.map +1 -1
  356. package/dist/tools/render-jsx-template.js +1 -1
  357. package/dist/tools/stringify-typed.js +1 -1
  358. package/dist/types.d.ts +0 -21
  359. package/dist/types.js +1 -1
  360. package/dist/types.js.map +2 -2
  361. package/dist/utils/attribute-utils.js +2 -2
  362. package/dist/utils/attribute-utils.js.map +1 -1
  363. package/dist/utils/index.js +2 -2
  364. package/dist/utils/index.js.map +1 -1
  365. package/package.json +14 -1
  366. package/size-budget.json +2 -8
  367. package/dist/chunk-0y78f8hj.js +0 -4
  368. package/dist/chunk-0zq7e1ne.js +0 -4
  369. package/dist/chunk-147yvtsn.js +0 -4
  370. package/dist/chunk-17earqbr.js +0 -4
  371. package/dist/chunk-17earqbr.js.map +0 -10
  372. package/dist/chunk-2tgrfv09.js +0 -4
  373. package/dist/chunk-3b033cgq.js +0 -4
  374. package/dist/chunk-42tyhfvh.js +0 -4
  375. package/dist/chunk-4fqkmpra.js +0 -4
  376. package/dist/chunk-5bym7y1d.js +0 -4
  377. package/dist/chunk-5td6v9k3.js +0 -4
  378. package/dist/chunk-60015zxq.js +0 -4
  379. package/dist/chunk-60q4y3k5.js +0 -4
  380. package/dist/chunk-6kdxrppw.js +0 -4
  381. package/dist/chunk-6kdxrppw.js.map +0 -10
  382. package/dist/chunk-6z34stya.js +0 -4
  383. package/dist/chunk-6z34stya.js.map +0 -10
  384. package/dist/chunk-9554n9t4.js +0 -4
  385. package/dist/chunk-9ascmjk3.js +0 -4
  386. package/dist/chunk-9ascmjk3.js.map +0 -10
  387. package/dist/chunk-a7hzs37s.js +0 -4
  388. package/dist/chunk-aajhkdmn.js +0 -4
  389. package/dist/chunk-ak97hp4w.js +0 -4
  390. package/dist/chunk-c8vqg7r1.js +0 -4
  391. package/dist/chunk-d4v5qpxa.js +0 -4
  392. package/dist/chunk-d7hh3ze6.js +0 -4
  393. package/dist/chunk-d98q3myg.js +0 -4
  394. package/dist/chunk-jce9gqqw.js +0 -4
  395. package/dist/chunk-jce9gqqw.js.map +0 -10
  396. package/dist/chunk-mpjnqmbq.js +0 -4
  397. package/dist/chunk-mqxmfvyp.js +0 -4
  398. package/dist/chunk-nw171z6m.js +0 -4
  399. package/dist/chunk-nw171z6m.js.map +0 -10
  400. package/dist/chunk-p6pxdvkk.js +0 -4
  401. package/dist/chunk-qe6sjr27.js +0 -4
  402. package/dist/chunk-r1cvaz1t.js +0 -4
  403. package/dist/chunk-r1cvaz1t.js.map +0 -10
  404. package/dist/chunk-r75y7ydb.js +0 -4
  405. package/dist/chunk-t7a1bbxq.js +0 -4
  406. package/dist/chunk-vpfm9yw8.js +0 -4
  407. package/dist/chunk-w50v38rv.js +0 -4
  408. package/dist/chunk-zb7wh7w4.js +0 -4
  409. package/dist/chunk-zj9ez73m.js +0 -4
  410. package/dist/core/slot-projection.js +0 -3
@@ -5,6 +5,6 @@
5
5
  "export const CUSTOM_ELEMENT_TAG_NAME = Symbol.for('@ecopages/radiant.customElementTagName');\n\ntype CustomElementConstructorWithMetadata = CustomElementConstructor & {\n\t[CUSTOM_ELEMENT_TAG_NAME]?: string;\n};\n\nexport function setCustomElementTagName(target: CustomElementConstructor, tagName: string): void {\n\t(target as CustomElementConstructorWithMetadata)[CUSTOM_ELEMENT_TAG_NAME] = tagName;\n}\n\nexport function getCustomElementTagName(target: CustomElementConstructor): string | undefined {\n\treturn (target as CustomElementConstructorWithMetadata)[CUSTOM_ELEMENT_TAG_NAME];\n}\n"
6
6
  ],
7
7
  "mappings": "AAAO,IAAM,EAA0B,OAAO,IAAI,wCAAwC,EAMnF,SAAS,CAAuB,CAAC,EAAkC,EAAuB,CAC/F,EAAgD,GAA2B,EAGtE,SAAS,CAAuB,CAAC,EAAsD,CAC7F,OAAQ,EAAgD",
8
- "debugId": "F8D5F842D8F7D14264756E2164756E21",
8
+ "debugId": "DF04F4DED5A8A34364756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{Ka as q}from"./chunk-hvy4zvcc.js";import{La as z}from"./chunk-79jg8q67.js";import{Oa as j}from"./chunk-q9z6tnzw.js";function L(A,G){return j(z,q,A,G)}
2
+ export{L as Ja};
3
+
4
+ //# debugId=970C30549045923964756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { StandardOrLegacyFieldDecoratorArgs } from '../types';\nimport { reactiveField as legacyReactiveField } from './legacy/reactive-field';\nimport { reactiveField as standardReactiveField } from './standard/reactive-field';\nimport { fieldDecoratorBridge } from './bridge';\n\n/**\n * Declares internal mutable component state.\n *\n * Each write triggers `notifyUpdate` so update callbacks, bindings, and\n * `RadiantComponent` renders stay in sync. When no explicit binding option\n * is supplied, `RadiantComponent` hosts expose a JSX companion binding\n * accessor automatically while plain `RadiantElement` hosts keep binding\n * opt-in.\n */\nexport function state(\n\tprotoOrTarget: StandardOrLegacyFieldDecoratorArgs['protoOrTarget'],\n\tnameOrContext: StandardOrLegacyFieldDecoratorArgs['nameOrContext'],\n): any {\n\treturn fieldDecoratorBridge(standardReactiveField, legacyReactiveField, protoOrTarget, nameOrContext);\n}\n"
6
6
  ],
7
7
  "mappings": "uIAcO,GAAS,LAAK,CACpB,EACA,EACM,CACN,OAAO,EAAqB,EAAuB,EAAqB,EAAe,CAAa",
8
- "debugId": "D06059C72CCD77A564756E2164756E21",
8
+ "debugId": "970C30549045923964756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{ha as f}from"./chunk-y139ycfm.js";import{ia as j}from"./chunk-rkh1vkb9.js";import{Pa as k}from"./chunk-q9z6tnzw.js";function G(q,v,w){return k(j,f,q,v,w)}
2
+ export{G as ga};
3
+
4
+ //# debugId=E4B1403CDF7305CA64756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { StandardOrLegacyMethodDecoratorArgs } from '../types';\nimport { bound as legacyBound } from './legacy/bound';\nimport { bound as standardBound } from './standard/bound';\nimport { methodDecoratorBridge } from './bridge';\n\n/**\n * A decorator to bind a method to the instance.\n */\nexport function bound(\n\tprotoOrTarget: StandardOrLegacyMethodDecoratorArgs['protoOrTarget'],\n\tnameOrContext: StandardOrLegacyMethodDecoratorArgs['nameOrContext'],\n\tdescriptor?: StandardOrLegacyMethodDecoratorArgs['descriptor'],\n): any {\n\treturn methodDecoratorBridge(standardBound, legacyBound, protoOrTarget, nameOrContext, descriptor);\n}\n"
6
6
  ],
7
7
  "mappings": "uIAQO,GAAS,LAAK,CACpB,EACA,EACA,EACM,CACN,OAAO,EAAsB,EAAe,EAAa,EAAe,EAAe,CAAU",
8
- "debugId": "DE309055D57D2A9164756E2164756E21",
8
+ "debugId": "E4B1403CDF7305CA64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{G}from"./chunk-5bkat72n.js";import{I as F,K as A}from"./chunk-p8k4g99a.js";import{Ma as E}from"./chunk-cnyxrh9r.js";function T({context:j,select:k,subscribe:B=!0,requestUpdate:H=!0}){return(J,O,D)=>{let K=D.value;return E(J,(f)=>{let w=G(f,(N)=>{K.call(f,N)},H);F(f,j,w,k),f.registerConnectedCallback(()=>{if(A(f,j,w,{select:k,subscribe:B}))return;queueMicrotask(()=>{A(f,j,w,{select:k,subscribe:B})})})}),D}}
2
+ export{T as F};
3
+
4
+ //# debugId=09677386ECB9CD8C64756E2164756E21
@@ -4,7 +4,7 @@
4
4
  "sourcesContent": [
5
5
  "import type { RadiantElement } from '../../../core/radiant-element';\nimport { registerLegacyInstanceInitializer } from '../../../decorators/legacy/instance-initializers';\nimport { bootstrapSsrContextSelection, connectContextSelection } from '../../context-consumer-bootstrap';\nimport type { Context, ContextType } from '../../types';\nimport type { OnContextUpdateOptions } from '../on-context-update';\nimport { createContextSelectionDelivery } from '../context-selection-delivery';\n\nexport function contextSelector<T extends Context<unknown, unknown>, Selected = ContextType<T>>({\n\tcontext,\n\tselect,\n\tsubscribe = true,\n\trequestUpdate = true,\n}: OnContextUpdateOptions<T, Selected>) {\n\treturn (proto: RadiantElement, _: string, descriptor: PropertyDescriptor) => {\n\t\tconst originalMethod = descriptor.value;\n\n\t\tregisterLegacyInstanceInitializer(proto, (element) => {\n\t\t\tconst applySelectedContext = createContextSelectionDelivery(\n\t\t\t\telement,\n\t\t\t\t(value) => {\n\t\t\t\t\toriginalMethod.call(element, value);\n\t\t\t\t},\n\t\t\t\trequestUpdate,\n\t\t\t);\n\n\t\t\tbootstrapSsrContextSelection(element, context, applySelectedContext, select);\n\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tif (\n\t\t\t\t\tconnectContextSelection(element, context, applySelectedContext, {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tsubscribe,\n\t\t\t\t\t})\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tqueueMicrotask(() => {\n\t\t\t\t\tconnectContextSelection(element, context, applySelectedContext, {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tsubscribe,\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\n\t\treturn descriptor;\n\t};\n}\n"
6
6
  ],
7
- "mappings": "4IAOO,GAAS,LAA+E,EAC9F,UACA,SACA,YAAY,GACZ,gBAAgB,IACuB,CACvC,MAAO,CAAC,EAAuB,EAAW,IAAmC,CAC5E,IAAM,EAAiB,EAAW,MAgClC,OA9BA,EAAkC,EAAO,CAAC,IAAY,CACrD,IAAM,EAAuB,EAC5B,EACA,CAAC,IAAU,CACV,EAAe,KAAK,EAAS,CAAK,GAEnC,CACD,EAEA,EAA6B,EAAS,EAAS,EAAsB,CAAM,EAE3E,EAAQ,0BAA0B,IAAM,CACvC,GACC,EAAwB,EAAS,EAAS,EAAsB,CAC/D,SACA,WACD,CAAC,EAED,OAGD,eAAe,IAAM,CACpB,EAAwB,EAAS,EAAS,EAAsB,CAC/D,SACA,WACD,CAAC,EACD,EACD,EACD,EAEM",
8
- "debugId": "EFF9D81C3F3096B064756E2164756E21",
7
+ "mappings": "uIAOO,GAAS,LAA+E,EAC9F,UACA,SACA,YAAY,GACZ,gBAAgB,IACuB,CACvC,MAAO,CAAC,EAAuB,EAAW,IAAmC,CAC5E,IAAM,EAAiB,EAAW,MAgClC,OA9BA,EAAkC,EAAO,CAAC,IAAY,CACrD,IAAM,EAAuB,EAC5B,EACA,CAAC,IAAU,CACV,EAAe,KAAK,EAAS,CAAK,GAEnC,CACD,EAEA,EAA6B,EAAS,EAAS,EAAsB,CAAM,EAE3E,EAAQ,0BAA0B,IAAM,CACvC,GACC,EAAwB,EAAS,EAAS,EAAsB,CAC/D,SACA,WACD,CAAC,EAED,OAGD,eAAe,IAAM,CACpB,EAAwB,EAAS,EAAS,EAAsB,CAC/D,SACA,WACD,CAAC,EACD,EACD,EACD,EAEM",
8
+ "debugId": "09677386ECB9CD8C64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
1
  var z;((j)=>{j.SUBSCRIPTION_REQUEST="context-subscription-request";j.CONTEXT_REQUEST="context-request";j.ON_MOUNT="context-on-mount";j.MOUNTED="context-mounted"})(z||={});class B extends Event{context;callback;subscribe;constructor(k,q,w){super("context-request",{bubbles:!0,composed:!0});this.context=k;this.callback=q;this.subscribe=w}}class D extends CustomEvent{constructor(k){super("context-on-mount",{detail:{context:k},bubbles:!0,composed:!0})}}class F extends Event{context;callback;select;subscribe;constructor(k,q,w,G){super("context-subscription-request",{bubbles:!0,composed:!0});this.context=k;this.callback=q;this.select=w;this.subscribe=G}}
2
- export{z as C,B as D,D as E,F};
2
+ export{z as S,B as T,D as U,F as V};
3
3
 
4
- //# debugId=EBE34A5EDD44DA4464756E2164756E21
4
+ //# debugId=4862E3DBD58F036564756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { Context, ContextCallback, ContextType, UnknownContext } from './types';\n\n/**\n * List of events which can be emitted by a context provider or requester.\n */\nexport enum ContextEventsTypes {\n\tSUBSCRIPTION_REQUEST = 'context-subscription-request',\n\tCONTEXT_REQUEST = 'context-request',\n\tON_MOUNT = 'context-on-mount',\n\tMOUNTED = 'context-mounted',\n}\n\n/**\n * An event fired by a context requester to signal it desires a named context.\n *\n * A provider should inspect the `context` property of the event to determine if it has a value that can\n * satisfy the request, calling the `callback` with the requested value if so.\n *\n * If the requested context event contains a truthy `subscribe` value, then a provider can call the callback\n * multiple times if the value is changed, if this is the case the provider should pass an `unsubscribe`\n * function to the callback which requesters can invoke to indicate they no longer wish to receive these updates.\n */\nexport class ContextRequestEvent<T extends UnknownContext> extends Event {\n\tpublic constructor(\n\t\tpublic readonly context: T,\n\t\tpublic readonly callback: ContextCallback<ContextType<T>>,\n\t\tpublic readonly subscribe?: boolean,\n\t) {\n\t\tsuper(ContextEventsTypes.CONTEXT_REQUEST, { bubbles: true, composed: true });\n\t}\n}\n\n/**\n * A type which represents a subscription to a context value.\n */\nexport type ContextSubscription<T extends UnknownContext> = {\n\tselect?: (context: ContextType<T>) => unknown;\n\tcallback: (value: unknown) => void;\n};\n\n/**\n * An event fired by a context provider to signal that a context value has been mounted and is available for consumption.\n */\nexport class ContextOnMountEvent extends CustomEvent<{ context: UnknownContext }> {\n\tpublic constructor(context: UnknownContext) {\n\t\tsuper(ContextEventsTypes.ON_MOUNT, {\n\t\t\tdetail: { context },\n\t\t\tbubbles: true,\n\t\t\tcomposed: true,\n\t\t});\n\t}\n}\n\n/**\n * An event fired by a context requester to signal it desires a named context.\n *\n * A provider should inspect the `context` property of the event to determine if it has a value that can\n * satisfy the request, calling the `callback` with the requested value if so.\n *\n * If the requested context event contains a truthy `subscribe` value, then a provider can call the callback\n * multiple times if the value is changed, if this is the case the provider should pass an `unsubscribe`\n * function to the callback which requesters can invoke to indicate they no longer wish to receive these updates.\n *\n * It accepts a `selector` property which can be used to request a specific property of the context value.\n */\nexport class ContextSubscriptionRequestEvent<T extends UnknownContext> extends Event {\n\tpublic constructor(\n\t\tpublic readonly context: T,\n\t\tpublic readonly callback: (value: ContextType<T> | { [K in keyof ContextType<T>]: ContextType<T>[K] }) => void,\n\t\tpublic readonly select?: (context: ContextType<T>) => unknown,\n\t\tpublic readonly subscribe?: boolean,\n\t) {\n\t\tsuper(ContextEventsTypes.SUBSCRIPTION_REQUEST, {\n\t\t\tbubbles: true,\n\t\t\tcomposed: true,\n\t\t});\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementEventMap {\n\t\t/**\n\t\t * A 'context-request-subscription' event can be emitted by any element which desires\n\t\t * a context value to be injected by an external provider.\n\t\t */\n\t\t[ContextEventsTypes.SUBSCRIPTION_REQUEST]: ContextSubscriptionRequestEvent<UnknownContext>;\n\t\t/**\n\t\t * A context-request-provider event can be emitted by a context requester to signal\n\t\t * that it desires a context value to be provided by a context provider.\n\t\t */\n\t\t[ContextEventsTypes.CONTEXT_REQUEST]: ContextRequestEvent<Context<unknown, unknown>>;\n\t\t/**\n\t\t * A 'context-mount' event can be emitted by a context provider to signal\n\t\t * that a context value has been mounted and is available for consumption.\n\t\t */\n\t\t[ContextEventsTypes.ON_MOUNT]: ContextOnMountEvent;\n\t}\n}\n"
6
6
  ],
7
7
  "mappings": "AAKO,IAAK,GAAL,CAAK,IAAL,CACN,uBAAuB,+BACvB,kBAAkB,kBAClB,WAAW,mBACX,UAAU,oBAJC,QAiBL,MAAM,UAAsD,KAAM,CAEvD,QACA,SACA,UAHV,WAAW,CACD,EACA,EACA,EACf,CACD,MAAM,kBAAoC,CAAE,QAAS,GAAM,SAAU,EAAK,CAAC,EAJ3D,eACA,gBACA,iBAIlB,CAaO,MAAM,UAA4B,WAAyC,CAC1E,WAAW,CAAC,EAAyB,CAC3C,MAAM,mBAA6B,CAClC,OAAQ,CAAE,SAAQ,EAClB,QAAS,GACT,SAAU,EACX,CAAC,EAEH,CAcO,MAAM,UAAkE,KAAM,CAEnE,QACA,SACA,OACA,UAJV,WAAW,CACD,EACA,EACA,EACA,EACf,CACD,MAAM,+BAAyC,CAC9C,QAAS,GACT,SAAU,EACX,CAAC,EARe,eACA,gBACA,cACA,iBAOlB",
8
- "debugId": "EBE34A5EDD44DA4464756E2164756E21",
8
+ "debugId": "4862E3DBD58F036564756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{ya as F}from"./chunk-eyw14d6y.js";import{Ma as E}from"./chunk-cnyxrh9r.js";import{Ab as k}from"./chunk-bk6qkvfp.js";function N(q={}){return(v,j)=>{let G=(b)=>{return typeof Object.getOwnPropertyDescriptor(b,j)?.get==="function"},w=(b)=>{if(G(b))return;let B=k(b,q);Object.defineProperty(b,j,{get(){return B.value},enumerable:!0,configurable:!0})},x=new WeakMap;Object.defineProperty(v,j,{get(){let b=x.get(this);if(!b)b=k(this,q),x.set(this,b);return b.value},enumerable:!0,configurable:!0}),E(v,(b)=>{F(b,()=>{w(b)}),b.registerConnectedCallback(()=>{w(b)})})}}
2
+ export{N as wa};
3
+
4
+ //# debugId=94FE48B057E72F0864756E2164756E21
@@ -4,7 +4,7 @@
4
4
  "sourcesContent": [
5
5
  "import type { RadiantElement } from '../../core/radiant-element';\nimport { createQuerySlot } from '../../helpers/create-query-slot';\nimport { registerSsrPreparationCallback } from '../../core/ssr-preparation';\nimport type { QuerySlotConfig } from '../query-slot';\nimport { registerLegacyInstanceInitializer } from './instance-initializers';\n\ntype SlotQueryHost = RadiantElement & {\n\tgetSlotElement<T extends Element = Element>(name?: string): T | null;\n\tgetSlotElements<T extends Element = Element>(name?: string): T[];\n\tslotProjectionVersion?: number;\n};\n\nexport function querySlot<T extends Element | Element[]>(\n\toptions: QuerySlotConfig = {},\n): (proto: RadiantElement, propertyName: string | symbol) => void {\n\treturn (proto: RadiantElement, propertyKey: string | symbol) => {\n\t\tconst hasDefinedInstanceQuery = (instance: SlotQueryHost) => {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(instance, propertyKey);\n\t\t\treturn typeof descriptor?.get === 'function';\n\t\t};\n\n\t\tconst defineSlotQueryProperty = (instance: SlotQueryHost) => {\n\t\t\tif (hasDefinedInstanceQuery(instance)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst accessor = createQuerySlot<T>(instance, options);\n\n\t\t\tObject.defineProperty(instance, propertyKey, {\n\t\t\t\tget() {\n\t\t\t\t\treturn accessor.value;\n\t\t\t\t},\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true,\n\t\t\t});\n\t\t};\n\n\t\tconst protoAccessorCache = new WeakMap<SlotQueryHost, ReturnType<typeof createQuerySlot<T>>>();\n\n\t\tObject.defineProperty(proto, propertyKey, {\n\t\t\tget(this: SlotQueryHost) {\n\t\t\t\tlet accessor = protoAccessorCache.get(this);\n\t\t\t\tif (!accessor) {\n\t\t\t\t\taccessor = createQuerySlot<T>(this, options);\n\t\t\t\t\tprotoAccessorCache.set(this, accessor);\n\t\t\t\t}\n\t\t\t\treturn accessor.value;\n\t\t\t},\n\t\t\tenumerable: true,\n\t\t\tconfigurable: true,\n\t\t});\n\n\t\tregisterLegacyInstanceInitializer(proto, (element) => {\n\t\t\tregisterSsrPreparationCallback(element, () => {\n\t\t\t\tdefineSlotQueryProperty(element as SlotQueryHost);\n\t\t\t});\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tdefineSlotQueryProperty(element as SlotQueryHost);\n\t\t\t});\n\t\t});\n\t};\n}\n"
6
6
  ],
7
- "mappings": "sIAYO,GAAS,LAAwC,CACvD,EAA2B,CAAC,EACqC,CACjE,MAAO,CAAC,EAAuB,IAAiC,CAC/D,IAAM,EAA0B,CAAC,IAA4B,CAE5D,OAAO,OADY,OAAO,yBAAyB,EAAU,CAAW,GAC9C,MAAQ,YAG7B,EAA0B,CAAC,IAA4B,CAC5D,GAAI,EAAwB,CAAQ,EACnC,OAGD,IAAM,EAAW,EAAmB,EAAU,CAAO,EAErD,OAAO,eAAe,EAAU,EAAa,CAC5C,GAAG,EAAG,CACL,OAAO,EAAS,OAEjB,WAAY,GACZ,aAAc,EACf,CAAC,GAGI,EAAqB,IAAI,QAE/B,OAAO,eAAe,EAAO,EAAa,CACzC,GAAG,EAAsB,CACxB,IAAI,EAAW,EAAmB,IAAI,IAAI,EAC1C,GAAI,CAAC,EACJ,EAAW,EAAmB,KAAM,CAAO,EAC3C,EAAmB,IAAI,KAAM,CAAQ,EAEtC,OAAO,EAAS,OAEjB,WAAY,GACZ,aAAc,EACf,CAAC,EAED,EAAkC,EAAO,CAAC,IAAY,CACrD,EAA+B,EAAS,IAAM,CAC7C,EAAwB,CAAwB,EAChD,EACD,EAAQ,0BAA0B,IAAM,CACvC,EAAwB,CAAwB,EAChD,EACD",
8
- "debugId": "353A6780E7C5628B64756E2164756E21",
7
+ "mappings": "uIAYO,GAAS,LAAwC,CACvD,EAA2B,CAAC,EACqC,CACjE,MAAO,CAAC,EAAuB,IAAiC,CAC/D,IAAM,EAA0B,CAAC,IAA4B,CAE5D,OAAO,OADY,OAAO,yBAAyB,EAAU,CAAW,GAC9C,MAAQ,YAG7B,EAA0B,CAAC,IAA4B,CAC5D,GAAI,EAAwB,CAAQ,EACnC,OAGD,IAAM,EAAW,EAAmB,EAAU,CAAO,EAErD,OAAO,eAAe,EAAU,EAAa,CAC5C,GAAG,EAAG,CACL,OAAO,EAAS,OAEjB,WAAY,GACZ,aAAc,EACf,CAAC,GAGI,EAAqB,IAAI,QAE/B,OAAO,eAAe,EAAO,EAAa,CACzC,GAAG,EAAsB,CACxB,IAAI,EAAW,EAAmB,IAAI,IAAI,EAC1C,GAAI,CAAC,EACJ,EAAW,EAAmB,KAAM,CAAO,EAC3C,EAAmB,IAAI,KAAM,CAAQ,EAEtC,OAAO,EAAS,OAEjB,WAAY,GACZ,aAAc,EACf,CAAC,EAED,EAAkC,EAAO,CAAC,IAAY,CACrD,EAA+B,EAAS,IAAM,CAC7C,EAAwB,CAAwB,EAChD,EACD,EAAQ,0BAA0B,IAAM,CACvC,EAAwB,CAAwB,EAChD,EACD",
8
+ "debugId": "94FE48B057E72F0864756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{Wa as f}from"./chunk-hztr86b4.js";function v(b,h){return function(k,j){j.addInitializer(function(){if(f(this,b),!window.customElements.get(b))customElements.define(b,this,h)})}}
2
+ export{v as ra};
3
+
4
+ //# debugId=4A2DABCAE882703064756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import { setCustomElementTagName } from '../../core/custom-element-metadata';\n\nexport function customElement(name: string, options?: ElementDefinitionOptions) {\n\treturn function <T extends CustomElementConstructor>(_: T, context: ClassDecoratorContext<T>) {\n\t\tcontext.addInitializer(function () {\n\t\t\tsetCustomElementTagName(this, name);\n\n\t\t\tif (!window.customElements.get(name)) {\n\t\t\t\tcustomElements.define(name, this, options);\n\t\t\t}\n\t\t});\n\t};\n}\n"
6
6
  ],
7
7
  "mappings": "yCAEO,SAAS,CAAa,CAAC,EAAc,EAAoC,CAC/E,OAAO,QAA6C,CAAC,EAAM,EAAmC,CAC7F,EAAQ,eAAe,QAAS,EAAG,CAGlC,GAFA,EAAwB,KAAM,CAAI,EAE9B,CAAC,OAAO,eAAe,IAAI,CAAI,EAClC,eAAe,OAAO,EAAM,KAAM,CAAO,EAE1C",
8
- "debugId": "9FCE29F579B9006464756E2164756E21",
8
+ "debugId": "4A2DABCAE882703064756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{Ma as f}from"./chunk-cnyxrh9r.js";import{Bb as j}from"./chunk-wwbjz9k4.js";function E({cache:k=!0,...q}){return(v,w)=>{f(v,(b)=>{b.registerConnectedCallback(()=>{let x=j(b,{cache:k,...q});Object.defineProperty(b,w,{get(){return x.value},enumerable:!0,configurable:!0})})})}}
2
+ export{E as _};
3
+
4
+ //# debugId=A418A61805EA696D64756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { RadiantElement } from '../../core/radiant-element';\nimport { createQuery } from '../../helpers/create-query';\nimport type { QueryConfig } from '../query';\nimport { registerLegacyInstanceInitializer } from './instance-initializers';\n\n/**\n * A decorator to query by CSS selector or data-ref attribute.\n * By default it queries for the first element that matches the selector, but it can be configured to query for all elements.\n *\n * @param {QueryConfig} options - The configuration object for the query.\n * @param {boolean} [options.all] - A flag to query for all elements that match the selector. Defaults to `false`.\n * @param {boolean} [options.cache] - A flag to cache the query result. Defaults to `true`.\n * @param {string} [options.selector] - A CSS selector to match elements against. This property is mutually exclusive with `options.ref`.\n * @param {string} [options.ref] - A reference to an element. This property is mutually exclusive with `options.selector`.\n *\n * @returns {Function} A decorator function that, when applied to a class property, will replace it with a getter. The getter will return the result of the query when accessed.\n *\n * @example\n * class MyElement extends HTMLElement {\n * @query({ selector: '.my-class' })\n * myElement;\n * }\n *\n * // Now, `myElement` will return the first element in the light DOM of `MyElement` that matches the selector '.my-class'.\n */\nexport function query<T extends Element | Element[]>({\n\tcache: shouldBeCached = true,\n\t...options\n}: QueryConfig): (proto: RadiantElement, propertyName: string | symbol) => void {\n\treturn (proto: RadiantElement, propertyKey: string | symbol) => {\n\t\tregisterLegacyInstanceInitializer(proto, (element) => {\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tconst accessor = createQuery<T>(element, { cache: shouldBeCached, ...options });\n\n\t\t\t\tObject.defineProperty(element, propertyKey, {\n\t\t\t\t\tget() {\n\t\t\t\t\t\treturn accessor.value;\n\t\t\t\t\t},\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tconfigurable: true,\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t};\n}\n"
6
6
  ],
7
7
  "mappings": "wFAyBO,GAAS,CAAoC,EACnD,MAAO,EAAiB,MACrB,GAC4E,CAC/E,MAAO,CAAC,EAAuB,IAAiC,CAC/D,EAAkC,EAAO,CAAC,IAAY,CACrD,EAAQ,0BAA0B,IAAM,CACvC,IAAM,EAAW,EAAe,EAAS,CAAE,MAAO,KAAmB,CAAQ,CAAC,EAE9E,OAAO,eAAe,EAAS,EAAa,CAC3C,GAAG,EAAG,CACL,OAAO,EAAS,OAEjB,WAAY,GACZ,aAAc,EACf,CAAC,EACD,EACD",
8
- "debugId": "A08F45D03760947E64756E2164756E21",
8
+ "debugId": "A418A61805EA696D64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
- import{fa as G}from"./chunk-8dexhy6c.js";import{Ua as F}from"./chunk-73x7jpdd.js";function Q({type:j,attribute:H,reflect:w,defaultValue:h,bind:A}){if(h!==void 0&&!F(j,h))throw Error(`defaultValue does not match the expected type for ${j.name}`);return function(J,B){let k=String(B.name),C=H??k,E=Symbol(`@ecopages/radiant/reactive-prop:${k}:initializer`);return B.addInitializer(function(){let q=this[E],I=h===void 0?q:h;G(this,k,{type:j,reflect:w,attribute:C,defaultValue:h,bind:A}),this.createReactiveProp(k,{type:j,reflect:w,attribute:C,defaultValue:I,bind:A})}),function(q){return this[E]=q,q}}}
2
- export{Q as ea};
1
+ import{Ya as G}from"./chunk-9mqtp3js.js";import{fb as F}from"./chunk-66e6s792.js";function Q({type:j,attribute:H,reflect:w,defaultValue:h,bind:A}){if(h!==void 0&&!F(j,h))throw Error(`defaultValue does not match the expected type for ${j.name}`);return function(J,B){let k=String(B.name),C=H??k,E=Symbol(`@ecopages/radiant/reactive-prop:${k}:initializer`);return B.addInitializer(function(){let q=this[E],I=h===void 0?q:h;G(this,k,{type:j,reflect:w,attribute:C,defaultValue:h,bind:A}),this.createReactiveProp(k,{type:j,reflect:w,attribute:C,defaultValue:I,bind:A})}),function(q){return this[E]=q,q}}}
2
+ export{Q as Da};
3
3
 
4
- //# debugId=92FEC1ED84282E1E64756E2164756E21
4
+ //# debugId=C67B9CC0E78E579D64756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { RadiantElement, ReactivePropertyOptions } from '../../core/radiant-element.js';\nimport { registerReactivePropDefinition } from '../../core/reactive-prop-metadata';\nimport { isValueOfType } from '../../utils/attribute-utils';\n\nexport function reactiveProp<P = unknown>({\n\ttype,\n\tattribute,\n\treflect,\n\tdefaultValue,\n\tbind,\n}: ReactivePropertyOptions<P>) {\n\tif (defaultValue !== undefined && !isValueOfType(type, defaultValue)) {\n\t\tthrow new Error(`defaultValue does not match the expected type for ${type.name}`);\n\t}\n\treturn function <T extends RadiantElement, V>(_: undefined, context: ClassFieldDecoratorContext<T, V>) {\n\t\tconst propertyName = String(context.name);\n\t\tconst attributeKey = attribute ?? propertyName;\n\t\tconst initializerValueKey = Symbol(`@ecopages/radiant/reactive-prop:${propertyName}:initializer`);\n\n\t\tcontext.addInitializer(function (this: T) {\n\t\t\tconst initializerValue = (this as T & Record<PropertyKey, V | undefined>)[initializerValueKey];\n\t\t\tconst resolvedDefaultValue = (defaultValue === undefined ? initializerValue : defaultValue) as\n\t\t\t\t| P\n\t\t\t\t| undefined;\n\n\t\t\tregisterReactivePropDefinition(this, propertyName, {\n\t\t\t\ttype,\n\t\t\t\treflect,\n\t\t\t\tattribute: attributeKey,\n\t\t\t\tdefaultValue,\n\t\t\t\tbind,\n\t\t\t});\n\t\t\tthis.createReactiveProp(propertyName, {\n\t\t\t\ttype,\n\t\t\t\treflect,\n\t\t\t\tattribute: attributeKey,\n\t\t\t\tdefaultValue: resolvedDefaultValue,\n\t\t\t\tbind,\n\t\t\t});\n\t\t});\n\n\t\treturn function (this: T, value: V) {\n\t\t\t(this as Record<PropertyKey, V | undefined>)[initializerValueKey] = value;\n\t\t\treturn value;\n\t\t};\n\t};\n}\n"
6
6
  ],
7
7
  "mappings": "wFAIO,GAAS,CAAyB,EACxC,OACA,YACA,UACA,eACA,QAC8B,CAC9B,GAAI,IAAiB,QAAa,CAAC,EAAc,EAAM,CAAY,EAClE,MAAU,MAAM,qDAAqD,EAAK,MAAM,EAEjF,OAAO,QAAsC,CAAC,EAAc,EAA2C,CACtG,IAAM,EAAe,OAAO,EAAQ,IAAI,EAClC,EAAe,GAAa,EAC5B,EAAsB,OAAO,mCAAmC,eAA0B,EAwBhG,OAtBA,EAAQ,eAAe,QAAS,EAAU,CACzC,IAAM,EAAoB,KAAgD,GACpE,EAAwB,IAAiB,OAAY,EAAmB,EAI9E,EAA+B,KAAM,EAAc,CAClD,OACA,UACA,UAAW,EACX,eACA,MACD,CAAC,EACD,KAAK,mBAAmB,EAAc,CACrC,OACA,UACA,UAAW,EACX,aAAc,EACd,MACD,CAAC,EACD,EAEM,QAAS,CAAU,EAAU,CAEnC,OADC,KAA4C,GAAuB,EAC7D",
8
- "debugId": "92FEC1ED84282E1E64756E2164756E21",
8
+ "debugId": "C67B9CC0E78E579D64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
- import{u as w,w as y}from"./chunk-vpfm9yw8.js";import{La as q}from"./chunk-8tvt04cm.js";function G(f){return(A,h)=>{let j=(b,c)=>{b[h]=c},k=(b,c={})=>{if(b[h])return!0;return y(b,f,(B)=>{j(b,B)},c)};q(A,(b)=>{w(b,f,(c)=>{j(b,c)}),b.registerConnectedCallback(()=>{if(k(b,{emitMounted:!0}))return;queueMicrotask(()=>{k(b,{emitMounted:!0})})})})}}
2
- export{G as i};
1
+ import{H as w,J as y}from"./chunk-p8k4g99a.js";import{Ma as q}from"./chunk-cnyxrh9r.js";function G(f){return(A,h)=>{let j=(b,c)=>{b[h]=c},k=(b,c={})=>{if(b[h])return!0;return y(b,f,(B)=>{j(b,B)},c)};q(A,(b)=>{w(b,f,(c)=>{j(b,c)}),b.registerConnectedCallback(()=>{if(k(b,{emitMounted:!0}))return;queueMicrotask(()=>{k(b,{emitMounted:!0})})})})}}
2
+ export{G as u};
3
3
 
4
- //# debugId=26A41C95431F5F9B64756E2164756E21
4
+ //# debugId=C969449EEF34F5CD64756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { RadiantElement } from '../../../core/radiant-element';\nimport { registerLegacyInstanceInitializer } from '../../../decorators/legacy/instance-initializers';\nimport { bootstrapSsrConsumedContext, connectConsumedContext } from '../../context-consumer-bootstrap';\nimport type { UnknownContext } from '../../types';\n\nexport function consumeContext(context: UnknownContext) {\n\treturn (proto: RadiantElement, propertyKey: string) => {\n\t\tconst assignContextProvider = (element: RadiantElement, provider: unknown) => {\n\t\t\t(element as any)[propertyKey] = provider;\n\t\t};\n\t\tconst initializeConsumedContextForHost = (element: RadiantElement, options: { emitMounted?: boolean } = {}) => {\n\t\t\tif ((element as any)[propertyKey]) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\treturn connectConsumedContext(\n\t\t\t\telement,\n\t\t\t\tcontext,\n\t\t\t\t(provider) => {\n\t\t\t\t\tassignContextProvider(element, provider);\n\t\t\t\t},\n\t\t\t\toptions,\n\t\t\t);\n\t\t};\n\n\t\tregisterLegacyInstanceInitializer(proto, (element) => {\n\t\t\tbootstrapSsrConsumedContext(element, context, (provider) => {\n\t\t\t\tassignContextProvider(element, provider);\n\t\t\t});\n\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tif (initializeConsumedContextForHost(element, { emitMounted: true })) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tqueueMicrotask(() => {\n\t\t\t\t\tinitializeConsumedContextForHost(element, { emitMounted: true });\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t};\n}\n"
6
6
  ],
7
7
  "mappings": "8FAKO,GAAS,CAAc,CAAC,EAAyB,CACvD,MAAO,CAAC,EAAuB,IAAwB,CACtD,IAAM,EAAwB,CAAC,EAAyB,IAAsB,CAC5E,EAAgB,GAAe,GAE3B,EAAmC,CAAC,EAAyB,EAAqC,CAAC,IAAM,CAC9G,GAAK,EAAgB,GACpB,MAAO,GAGR,OAAO,EACN,EACA,EACA,CAAC,IAAa,CACb,EAAsB,EAAS,CAAQ,GAExC,CACD,GAGD,EAAkC,EAAO,CAAC,IAAY,CACrD,EAA4B,EAAS,EAAS,CAAC,IAAa,CAC3D,EAAsB,EAAS,CAAQ,EACvC,EAED,EAAQ,0BAA0B,IAAM,CACvC,GAAI,EAAiC,EAAS,CAAE,YAAa,EAAK,CAAC,EAClE,OAGD,eAAe,IAAM,CACpB,EAAiC,EAAS,CAAE,YAAa,EAAK,CAAC,EAC/D,EACD,EACD",
8
- "debugId": "26A41C95431F5F9B64756E2164756E21",
8
+ "debugId": "C969449EEF34F5CD64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{_ as E}from"./chunk-mpsj3cjs.js";import{$ as F}from"./chunk-0bswvy25.js";import{Oa as z}from"./chunk-q9z6tnzw.js";function N(j){return function(G,H){return z(F(j),E(j),G,H)}}
2
+ export{N as Z};
3
+
4
+ //# debugId=C26428BC6AB60B5B64756E2164756E21
@@ -4,7 +4,7 @@
4
4
  "sourcesContent": [
5
5
  "import type { StandardOrLegacyFieldDecoratorArgs } from '../types';\nimport type { QueryConfig, QueryScope } from '../helpers/create-query';\nimport { query as legacyQuery } from './legacy/query';\nimport { query as standardQuery } from './standard/query';\nimport { fieldDecoratorBridge } from './bridge';\n\nexport type { QueryConfig, QueryScope };\n\n/**\n * A decorator to query by CSS selector or data-ref attribute.\n * By default it queries for the first element that matches the selector, but it can be configured to query for all elements.\n * It caches the result only when `cache` is enabled.\n * Queries run against the host light DOM by default, but can be directed to the shadow root or both trees.\n * @param options {@link QueryConfig} The options for the reactive property.\n */\nexport function query<T extends Element | Element[]>(options: QueryConfig) {\n\treturn function (\n\t\tprotoOrTarget: StandardOrLegacyFieldDecoratorArgs['protoOrTarget'],\n\t\tnameOrContext: StandardOrLegacyFieldDecoratorArgs['nameOrContext'],\n\t): any {\n\t\treturn fieldDecoratorBridge(standardQuery(options), legacyQuery<T>(options), protoOrTarget, nameOrContext);\n\t};\n}\n"
6
6
  ],
7
- "mappings": "uIAeO,GAAS,LAAoC,CAAC,EAAsB,CAC1E,OAAO,QAAS,CACf,EACA,EACM,CACN,OAAO,EAAqB,EAAc,CAAO,EAAG,EAAe,CAAO,EAAG,EAAe,CAAa",
8
- "debugId": "32E7E97F8742520364756E2164756E21",
7
+ "mappings": "qIAeO,GAAS,LAAoC,CAAC,EAAsB,CAC1E,OAAO,QAAS,CACf,EACA,EACM,CACN,OAAO,EAAqB,EAAc,CAAO,EAAG,EAAe,CAAO,EAAG,EAAe,CAAa",
8
+ "debugId": "C26428BC6AB60B5B64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
- import{eb as F,fb as G}from"./chunk-6z34stya.js";import{lb as C,mb as D}from"./chunk-ksv01cey.js";import{createMarkupNodeLike as K}from"@ecopages/jsx";import{state as O}from"@ecopages/signals";function Y(q){return typeof q==="object"&&q!==null&&typeof q.get==="function"&&typeof q.set==="function"&&typeof q.subscribe==="function"&&typeof q.update==="function"}class I{host;hydrate;hydrationKey;property;source;currentValue;hasAppliedHostHydration=!1;sourceUnsubscribe;constructor(q){this.host=q.host,this.hydrate=q.hydrate,this.hydrationKey=q.hydrationKey,this.property=q.property,this.source=q.source??O(this.resolveInitialValue(q.initialValue)),this.currentValue=this.source.get()}get(){return this.source.get()}set(q){this.source.set(q)}subscribe(q){return this.source.subscribe(q)}update(q){this.set(q(this.get()))}connectToSource(){if(this.sourceUnsubscribe)return;let q=this.source.get();if(!Object.is(this.currentValue,q)){let A=this.currentValue;this.currentValue=q,this.host.notifyUpdate(this.property,A,q)}this.sourceUnsubscribe=this.source.subscribe((A)=>{this.handleSourceChange(A)})}disconnectFromSource(){this.sourceUnsubscribe?.(),this.sourceUnsubscribe=void 0}hydrateFromHost(){if(!this.hydrate||this.hasAppliedHostHydration)return;this.hasAppliedHostHydration=!0;let q=this.source.get(),A=this.resolveInitialValue(q);if(!Object.is(q,A))this.source.set(A),this.currentValue=this.source.get(),this.host.notifyUpdate(this.property,q,this.currentValue)}renderHydrationScript(){let q=this.renderHydrationScriptTag();if(!q)return;return K(q)}renderHydrationScriptTag(){let q=this.serializeHydrationValue();if(!q)return;return F({hydrationKey:this.hydrationKey,serializedValue:q})}findHydrationScriptElement(){return D(this.host,"signal",this.hydrationKey)}isObject(q){return typeof q==="object"&&!Array.isArray(q)&&q!==null}resolveInitialValue(q){if(!this.hydrate)return q;let A=this.findHydrationScriptElement();if(!A)return q;let B=C(A,q);if(this.hydrate===Object&&this.isObject(B)&&this.isObject(q))return{...q,...B};return B}serializeHydrationValue(){if(!this.hydrate)return;let q=JSON.stringify(this.get());if(typeof q!=="string")return;return G(q)}handleSourceChange(q){let A=this.currentValue;if(this.currentValue=q,!Object.is(A,q))this.host.notifyUpdate(this.property,A,q)}}function Z(q){return new I(q)}
2
- export{Y as qa,I as ra,Z as sa};
1
+ import{Ha as F,Ia as G}from"./chunk-dabagjk6.js";import{ub as C,vb as D}from"./chunk-hpzgnxgq.js";import{createMarkupNodeLike as K}from"@ecopages/jsx";import{state as O}from"@ecopages/signals";function Y(q){return typeof q==="object"&&q!==null&&typeof q.get==="function"&&typeof q.set==="function"&&typeof q.subscribe==="function"&&typeof q.update==="function"}class I{host;hydrate;hydrationKey;property;source;currentValue;hasAppliedHostHydration=!1;sourceUnsubscribe;constructor(q){this.host=q.host,this.hydrate=q.hydrate,this.hydrationKey=q.hydrationKey,this.property=q.property,this.source=q.source??O(this.resolveInitialValue(q.initialValue)),this.currentValue=this.source.get()}get(){return this.source.get()}set(q){this.source.set(q)}subscribe(q){return this.source.subscribe(q)}update(q){this.set(q(this.get()))}connectToSource(){if(this.sourceUnsubscribe)return;let q=this.source.get();if(!Object.is(this.currentValue,q)){let A=this.currentValue;this.currentValue=q,this.host.notifyUpdate(this.property,A,q)}this.sourceUnsubscribe=this.source.subscribe((A)=>{this.handleSourceChange(A)})}disconnectFromSource(){this.sourceUnsubscribe?.(),this.sourceUnsubscribe=void 0}hydrateFromHost(){if(!this.hydrate||this.hasAppliedHostHydration)return;this.hasAppliedHostHydration=!0;let q=this.source.get(),A=this.resolveInitialValue(q);if(!Object.is(q,A))this.source.set(A),this.currentValue=this.source.get(),this.host.notifyUpdate(this.property,q,this.currentValue)}renderHydrationScript(){let q=this.renderHydrationScriptTag();if(!q)return;return K(q)}renderHydrationScriptTag(){let q=this.serializeHydrationValue();if(!q)return;return F({hydrationKey:this.hydrationKey,serializedValue:q})}findHydrationScriptElement(){return D(this.host,"signal",this.hydrationKey)}isObject(q){return typeof q==="object"&&!Array.isArray(q)&&q!==null}resolveInitialValue(q){if(!this.hydrate)return q;let A=this.findHydrationScriptElement();if(!A)return q;let B=C(A,q);if(this.hydrate===Object&&this.isObject(B)&&this.isObject(q))return{...q,...B};return B}serializeHydrationValue(){if(!this.hydrate)return;let q=JSON.stringify(this.get());if(typeof q!=="string")return;return G(q)}handleSourceChange(q){let A=this.currentValue;if(this.currentValue=q,!Object.is(A,q))this.host.notifyUpdate(this.property,A,q)}}function Z(q){return new I(q)}
2
+ export{Y as Ea,I as Fa,Z as Ga};
3
3
 
4
- //# debugId=4FD4DA4B0A9FE79564756E2164756E21
4
+ //# debugId=FF7C4716227882D764756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import { createMarkupNodeLike, type JsxRenderable } from '@ecopages/jsx';\nimport { state, type WritableSignal } from '@ecopages/signals';\nimport type { SsrSerializableHydrationBinding } from '../core/ssr-hydration-binding';\nimport type { RadiantElement } from '../core/radiant-element';\nimport type { AttributeTypeConstant } from '../utils/attribute-utils';\nimport { findHydrationScript, parseHydrationPayload } from '../core/hydration-codec';\nimport { createSignalHydrationScriptTag, escapeSignalHydrationJson } from './hydration-script';\n\ntype HostSignalOptions<Value> = {\n\thost: RadiantElement;\n\thydrate?: AttributeTypeConstant;\n\thydrationKey?: string;\n\tinitialValue?: Value;\n\tproperty: string;\n\tsource?: WritableSignal<Value>;\n};\n\nexport function isWritableSignalLike<Value>(value: unknown): value is WritableSignal<Value> {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\ttypeof (value as WritableSignal<Value>).get === 'function' &&\n\t\ttypeof (value as WritableSignal<Value>).set === 'function' &&\n\t\ttypeof (value as WritableSignal<Value>).subscribe === 'function' &&\n\t\ttypeof (value as WritableSignal<Value>).update === 'function'\n\t);\n}\n\n/**\n * Host-owned writable signal that bridges signal updates back into Radiant's\n * update callback channel and optional SSR hydration pipeline.\n */\nexport class HostSignal<Value> implements WritableSignal<Value>, SsrSerializableHydrationBinding {\n\tprivate readonly host: RadiantElement;\n\tprivate readonly hydrate?: AttributeTypeConstant;\n\tprivate readonly hydrationKey?: string;\n\tprivate readonly property: string;\n\tprivate readonly source: WritableSignal<Value>;\n\tprivate currentValue: Value;\n\tprivate hasAppliedHostHydration = false;\n\tprivate sourceUnsubscribe?: () => void;\n\n\tconstructor(options: HostSignalOptions<Value>) {\n\t\tthis.host = options.host;\n\t\tthis.hydrate = options.hydrate;\n\t\tthis.hydrationKey = options.hydrationKey;\n\t\tthis.property = options.property;\n\t\tthis.source = options.source ?? state(this.resolveInitialValue(options.initialValue as Value));\n\t\tthis.currentValue = this.source.get();\n\t}\n\n\tpublic get(): Value {\n\t\treturn this.source.get();\n\t}\n\n\tpublic set(nextValue: Value): void {\n\t\tthis.source.set(nextValue);\n\t}\n\n\tpublic subscribe(notify: (value: Value) => void): () => void {\n\t\treturn this.source.subscribe(notify);\n\t}\n\n\tpublic update(updater: (value: Value) => Value): void {\n\t\tthis.set(updater(this.get()));\n\t}\n\n\tpublic connectToSource(): void {\n\t\tif (this.sourceUnsubscribe) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst nextValue = this.source.get();\n\n\t\tif (!Object.is(this.currentValue, nextValue)) {\n\t\t\tconst previousValue = this.currentValue;\n\t\t\tthis.currentValue = nextValue;\n\t\t\tthis.host.notifyUpdate(this.property, previousValue, nextValue);\n\t\t}\n\n\t\tthis.sourceUnsubscribe = this.source.subscribe((value) => {\n\t\t\tthis.handleSourceChange(value);\n\t\t});\n\t}\n\n\tpublic disconnectFromSource(): void {\n\t\tthis.sourceUnsubscribe?.();\n\t\tthis.sourceUnsubscribe = undefined;\n\t}\n\n\tpublic hydrateFromHost(): void {\n\t\tif (!this.hydrate || this.hasAppliedHostHydration) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.hasAppliedHostHydration = true;\n\n\t\tconst previousValue = this.source.get();\n\t\tconst hydratedValue = this.resolveInitialValue(previousValue);\n\n\t\tif (!Object.is(previousValue, hydratedValue)) {\n\t\t\tthis.source.set(hydratedValue);\n\t\t\tthis.currentValue = this.source.get();\n\t\t\tthis.host.notifyUpdate(this.property, previousValue, this.currentValue);\n\t\t}\n\t}\n\n\tpublic renderHydrationScript(): JsxRenderable | undefined {\n\t\tconst outerHTML = this.renderHydrationScriptTag();\n\n\t\tif (!outerHTML) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn createMarkupNodeLike(outerHTML);\n\t}\n\n\tpublic renderHydrationScriptTag(): string | undefined {\n\t\tconst serializedValue = this.serializeHydrationValue();\n\n\t\tif (!serializedValue) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn createSignalHydrationScriptTag({\n\t\t\thydrationKey: this.hydrationKey,\n\t\t\tserializedValue,\n\t\t});\n\t}\n\n\tprivate findHydrationScriptElement(): Element | null {\n\t\treturn findHydrationScript(this.host, 'signal', this.hydrationKey);\n\t}\n\n\tprivate isObject(value: unknown): value is Record<string, unknown> {\n\t\treturn typeof value === 'object' && !Array.isArray(value) && value !== null;\n\t}\n\n\tprivate resolveInitialValue(initialValue: Value): Value {\n\t\tif (!this.hydrate) {\n\t\t\treturn initialValue;\n\t\t}\n\n\t\tconst hydrationScriptElement = this.findHydrationScriptElement();\n\n\t\tif (!hydrationScriptElement) {\n\t\t\treturn initialValue;\n\t\t}\n\n\t\tconst parsedHydrationValue = parseHydrationPayload(hydrationScriptElement, initialValue);\n\n\t\tif (this.hydrate === Object && this.isObject(parsedHydrationValue) && this.isObject(initialValue)) {\n\t\t\treturn {\n\t\t\t\t...initialValue,\n\t\t\t\t...parsedHydrationValue,\n\t\t\t} as Value;\n\t\t}\n\n\t\treturn parsedHydrationValue;\n\t}\n\n\tprivate serializeHydrationValue(): string | undefined {\n\t\tif (!this.hydrate) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst serializedValue = JSON.stringify(this.get());\n\n\t\tif (typeof serializedValue !== 'string') {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn escapeSignalHydrationJson(serializedValue);\n\t}\n\n\tprivate handleSourceChange(nextValue: Value): void {\n\t\tconst previousValue = this.currentValue;\n\t\tthis.currentValue = nextValue;\n\n\t\tif (!Object.is(previousValue, nextValue)) {\n\t\t\tthis.host.notifyUpdate(this.property, previousValue, nextValue);\n\t\t}\n\t}\n}\n\nexport function createHostSignal<Value>(options: HostSignalOptions<Value>): HostSignal<Value> {\n\treturn new HostSignal(options);\n}\n"
6
6
  ],
7
7
  "mappings": "wGAAA,yBAAS,sBACT,gBAAS,0BAgBF,SAAS,CAA2B,CAAC,EAAgD,CAC3F,OACC,OAAO,IAAU,UACjB,IAAU,MACV,OAAQ,EAAgC,MAAQ,YAChD,OAAQ,EAAgC,MAAQ,YAChD,OAAQ,EAAgC,YAAc,YACtD,OAAQ,EAAgC,SAAW,WAQ9C,MAAM,CAAoF,CAC/E,KACA,QACA,aACA,SACA,OACT,aACA,wBAA0B,GAC1B,kBAER,WAAW,CAAC,EAAmC,CAC9C,KAAK,KAAO,EAAQ,KACpB,KAAK,QAAU,EAAQ,QACvB,KAAK,aAAe,EAAQ,aAC5B,KAAK,SAAW,EAAQ,SACxB,KAAK,OAAS,EAAQ,QAAU,EAAM,KAAK,oBAAoB,EAAQ,YAAqB,CAAC,EAC7F,KAAK,aAAe,KAAK,OAAO,IAAI,EAG9B,GAAG,EAAU,CACnB,OAAO,KAAK,OAAO,IAAI,EAGjB,GAAG,CAAC,EAAwB,CAClC,KAAK,OAAO,IAAI,CAAS,EAGnB,SAAS,CAAC,EAA4C,CAC5D,OAAO,KAAK,OAAO,UAAU,CAAM,EAG7B,MAAM,CAAC,EAAwC,CACrD,KAAK,IAAI,EAAQ,KAAK,IAAI,CAAC,CAAC,EAGtB,eAAe,EAAS,CAC9B,GAAI,KAAK,kBACR,OAGD,IAAM,EAAY,KAAK,OAAO,IAAI,EAElC,GAAI,CAAC,OAAO,GAAG,KAAK,aAAc,CAAS,EAAG,CAC7C,IAAM,EAAgB,KAAK,aAC3B,KAAK,aAAe,EACpB,KAAK,KAAK,aAAa,KAAK,SAAU,EAAe,CAAS,EAG/D,KAAK,kBAAoB,KAAK,OAAO,UAAU,CAAC,IAAU,CACzD,KAAK,mBAAmB,CAAK,EAC7B,EAGK,oBAAoB,EAAS,CACnC,KAAK,oBAAoB,EACzB,KAAK,kBAAoB,OAGnB,eAAe,EAAS,CAC9B,GAAI,CAAC,KAAK,SAAW,KAAK,wBACzB,OAGD,KAAK,wBAA0B,GAE/B,IAAM,EAAgB,KAAK,OAAO,IAAI,EAChC,EAAgB,KAAK,oBAAoB,CAAa,EAE5D,GAAI,CAAC,OAAO,GAAG,EAAe,CAAa,EAC1C,KAAK,OAAO,IAAI,CAAa,EAC7B,KAAK,aAAe,KAAK,OAAO,IAAI,EACpC,KAAK,KAAK,aAAa,KAAK,SAAU,EAAe,KAAK,YAAY,EAIjE,qBAAqB,EAA8B,CACzD,IAAM,EAAY,KAAK,yBAAyB,EAEhD,GAAI,CAAC,EACJ,OAGD,OAAO,EAAqB,CAAS,EAG/B,wBAAwB,EAAuB,CACrD,IAAM,EAAkB,KAAK,wBAAwB,EAErD,GAAI,CAAC,EACJ,OAGD,OAAO,EAA+B,CACrC,aAAc,KAAK,aACnB,iBACD,CAAC,EAGM,0BAA0B,EAAmB,CACpD,OAAO,EAAoB,KAAK,KAAM,SAAU,KAAK,YAAY,EAG1D,QAAQ,CAAC,EAAkD,CAClE,OAAO,OAAO,IAAU,UAAY,CAAC,MAAM,QAAQ,CAAK,GAAK,IAAU,KAGhE,mBAAmB,CAAC,EAA4B,CACvD,GAAI,CAAC,KAAK,QACT,OAAO,EAGR,IAAM,EAAyB,KAAK,2BAA2B,EAE/D,GAAI,CAAC,EACJ,OAAO,EAGR,IAAM,EAAuB,EAAsB,EAAwB,CAAY,EAEvF,GAAI,KAAK,UAAY,QAAU,KAAK,SAAS,CAAoB,GAAK,KAAK,SAAS,CAAY,EAC/F,MAAO,IACH,KACA,CACJ,EAGD,OAAO,EAGA,uBAAuB,EAAuB,CACrD,GAAI,CAAC,KAAK,QACT,OAGD,IAAM,EAAkB,KAAK,UAAU,KAAK,IAAI,CAAC,EAEjD,GAAI,OAAO,IAAoB,SAC9B,OAGD,OAAO,EAA0B,CAAe,EAGzC,kBAAkB,CAAC,EAAwB,CAClD,IAAM,EAAgB,KAAK,aAG3B,GAFA,KAAK,aAAe,EAEhB,CAAC,OAAO,GAAG,EAAe,CAAS,EACtC,KAAK,KAAK,aAAa,KAAK,SAAU,EAAe,CAAS,EAGjE,CAEO,SAAS,CAAuB,CAAC,EAAsD,CAC7F,OAAO,IAAI,EAAW,CAAO",
8
- "debugId": "4FD4DA4B0A9FE79564756E2164756E21",
8
+ "debugId": "FF7C4716227882D764756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
1
  function r(e){return e.replace(/&/g,"\\u0026").replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}
2
- export{r as nb};
2
+ export{r as wb};
3
3
 
4
- //# debugId=2176A8278CFFD96A64756E2164756E21
4
+ //# debugId=0C6A194314FA70CB64756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "/**\n * Escapes serialized JSON so it remains safe when embedded inside an HTML\n * `<script>` tag.\n */\nexport function escapeScriptJson(value: string): string {\n\treturn value\n\t\t.replace(/&/g, '\\\\u0026')\n\t\t.replace(/</g, '\\\\u003c')\n\t\t.replace(/>/g, '\\\\u003e')\n\t\t.replace(/\\u2028/g, '\\\\u2028')\n\t\t.replace(/\\u2029/g, '\\\\u2029');\n}\n"
6
6
  ],
7
7
  "mappings": "AAIO,SAAS,CAAgB,CAAC,EAAuB,CACvD,OAAO,EACL,QAAQ,KAAM,SAAS,EACvB,QAAQ,KAAM,SAAS,EACvB,QAAQ,KAAM,SAAS,EACvB,QAAQ,UAAW,SAAS,EAC5B,QAAQ,UAAW,SAAS",
8
- "debugId": "2176A8278CFFD96A64756E2164756E21",
8
+ "debugId": "0C6A194314FA70CB64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{ka as k}from"./chunk-h9k7crjc.js";import{la as q}from"./chunk-8d5ddvvf.js";import{Pa as j}from"./chunk-q9z6tnzw.js";function H(f){return function(v,w,z){return j(q(f),k(f),v,w,z)}}
2
+ export{H as ja};
3
+
4
+ //# debugId=EE8FCDE8C69DD19764756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { StandardOrLegacyMethodDecoratorArgs } from '../types';\nimport { debounce as legacyDebounce } from './legacy/debounce';\nimport { debounce as standardDebounce } from './standard/debounce';\nimport { methodDecoratorBridge } from './bridge';\n\n/**\n * A decorator to debounce a method.\n * @param timeout The debounce timeout in milliseconds.\n */\nexport function debounce(timeout: number) {\n\treturn function (\n\t\tprotoOrTarget: StandardOrLegacyMethodDecoratorArgs['protoOrTarget'],\n\t\tnameOrContext: StandardOrLegacyMethodDecoratorArgs['nameOrContext'],\n\t\tdescriptor?: StandardOrLegacyMethodDecoratorArgs['descriptor'],\n\t): any {\n\t\treturn methodDecoratorBridge(\n\t\t\tstandardDebounce(timeout),\n\t\t\tlegacyDebounce(timeout),\n\t\t\tprotoOrTarget,\n\t\t\tnameOrContext,\n\t\t\tdescriptor,\n\t\t);\n\t};\n}\n"
6
6
  ],
7
7
  "mappings": "uIASO,GAAS,LAAQ,CAAC,EAAiB,CACzC,OAAO,QAAS,CACf,EACA,EACA,EACM,CACN,OAAO,EACN,EAAiB,CAAO,EACxB,EAAe,CAAO,EACtB,EACA,EACA,CACD",
8
- "debugId": "E2D6A5F7A4F8500164756E2164756E21",
8
+ "debugId": "EE8FCDE8C69DD19764756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{L as D,M as G,N as E,O as H}from"./chunk-ek664x1c.js";import{ya as F}from"./chunk-eyw14d6y.js";function L(j,f,w,y={}){return I(j,()=>D(j,f,w,y))}function M(j,f,w,y){return I(j,()=>E(f,w,y))}function N(j,f,w,y={}){if(D(j,f,w,y))return!0;return G(j,f,w,y),!1}function O(j,f,w,y={}){if(E(f,w,y.select))return!0;return H(j,f,w,y),!1}function I(j,f){return F(j,f),f()}
2
+ export{L as H,M as I,N as J,O as K};
3
+
4
+ //# debugId=CC91456931A8600264756E2164756E21
@@ -4,7 +4,7 @@
4
4
  "sourcesContent": [
5
5
  "import type { RadiantElement } from '../core/radiant-element';\nimport { registerSsrPreparationCallback } from '../core/ssr-preparation';\nimport {\n\tinitializeConsumedContext,\n\tinitializeContextSelection,\n\trequestConsumedContext,\n\trequestContextSelection,\n} from './context-consumer-runtime';\nimport type { ContextType, UnknownContext } from './types';\n\ntype ConsumedContextAssignment = (provider: unknown) => void;\n\n/**\n * Resolves a consumed context immediately and registers the same resolution to\n * run again during the later SSR preparation phase.\n *\n * This keeps constructor-time state and pre-serialization state aligned after\n * instance fields, props, or authored host content change during SSR setup.\n */\nexport function bootstrapSsrConsumedContext(\n\thost: RadiantElement,\n\tcontext: UnknownContext,\n\tassign: ConsumedContextAssignment,\n\toptions: { emitMounted?: boolean } = {},\n): boolean {\n\treturn registerAndResolveConsumerBootstrap(host, () => initializeConsumedContext(host, context, assign, options));\n}\n\n/**\n * Resolves a selected context value immediately and registers the same\n * selection for the later SSR preparation phase.\n *\n * This lets nested SSR renders recompute selector-backed state after the host\n * has finished construction and any server-side configuration hooks have run.\n */\nexport function bootstrapSsrContextSelection<TContext extends UnknownContext>(\n\thost: object,\n\tcontext: TContext,\n\tcallback: (value: unknown) => void,\n\tselect?: (context: ContextType<TContext>) => unknown,\n): boolean {\n\treturn registerAndResolveConsumerBootstrap(host, () => initializeContextSelection(context, callback, select));\n}\n\n/**\n * Resolves a consumed context from SSR when available, otherwise requests it\n * through the DOM event channel for the current client-side lifecycle pass.\n *\n * @returns `true` when the value was satisfied synchronously from SSR state.\n */\nexport function connectConsumedContext(\n\thost: RadiantElement,\n\tcontext: UnknownContext,\n\tassign: ConsumedContextAssignment,\n\toptions: { emitMounted?: boolean } = {},\n): boolean {\n\tif (initializeConsumedContext(host, context, assign, options)) {\n\t\treturn true;\n\t}\n\n\trequestConsumedContext(host, context, assign, options);\n\treturn false;\n}\n\n/**\n * Resolves a selected context value from SSR when available, otherwise requests\n * it through the DOM event channel for the current client-side lifecycle pass.\n *\n * @returns `true` when the value was satisfied synchronously from SSR state.\n */\nexport function connectContextSelection<TContext extends UnknownContext>(\n\thost: RadiantElement,\n\tcontext: TContext,\n\tcallback: (value: unknown) => void,\n\toptions: {\n\t\tselect?: (context: ContextType<TContext>) => unknown;\n\t\tsubscribe?: boolean;\n\t} = {},\n): boolean {\n\tif (initializeContextSelection(context, callback, options.select)) {\n\t\treturn true;\n\t}\n\n\trequestContextSelection(host, context, callback, options);\n\treturn false;\n}\n\nfunction registerAndResolveConsumerBootstrap<TResult>(host: object, resolve: () => TResult): TResult {\n\tregisterSsrPreparationCallback(host, resolve);\n\treturn resolve();\n}\n"
6
6
  ],
7
- "mappings": "2GAmBO,GAAS,CAA2B,CAC1C,EACA,EACA,EACA,EAAqC,CAAC,EAC5B,CACV,OAAO,EAAoC,EAAM,IAAM,EAA0B,EAAM,EAAS,EAAQ,CAAO,CAAC,EAU1G,SAAS,CAA6D,CAC5E,EACA,EACA,EACA,EACU,CACV,OAAO,EAAoC,EAAM,IAAM,EAA2B,EAAS,EAAU,CAAM,CAAC,EAStG,SAAS,CAAsB,CACrC,EACA,EACA,EACA,EAAqC,CAAC,EAC5B,CACV,GAAI,EAA0B,EAAM,EAAS,EAAQ,CAAO,EAC3D,MAAO,GAIR,OADA,EAAuB,EAAM,EAAS,EAAQ,CAAO,EAC9C,GASD,SAAS,CAAwD,CACvE,EACA,EACA,EACA,EAGI,CAAC,EACK,CACV,GAAI,EAA2B,EAAS,EAAU,EAAQ,MAAM,EAC/D,MAAO,GAIR,OADA,EAAwB,EAAM,EAAS,EAAU,CAAO,EACjD,GAGR,SAAS,CAA4C,CAAC,EAAc,EAAiC,CAEpG,OADA,EAA+B,EAAM,CAAO,EACrC,EAAQ",
8
- "debugId": "A9ED5E9A13C35EF164756E2164756E21",
7
+ "mappings": "4GAmBO,GAAS,CAA2B,CAC1C,EACA,EACA,EACA,EAAqC,CAAC,EAC5B,CACV,OAAO,EAAoC,EAAM,IAAM,EAA0B,EAAM,EAAS,EAAQ,CAAO,CAAC,EAU1G,SAAS,CAA6D,CAC5E,EACA,EACA,EACA,EACU,CACV,OAAO,EAAoC,EAAM,IAAM,EAA2B,EAAS,EAAU,CAAM,CAAC,EAStG,SAAS,CAAsB,CACrC,EACA,EACA,EACA,EAAqC,CAAC,EAC5B,CACV,GAAI,EAA0B,EAAM,EAAS,EAAQ,CAAO,EAC3D,MAAO,GAIR,OADA,EAAuB,EAAM,EAAS,EAAQ,CAAO,EAC9C,GASD,SAAS,CAAwD,CACvE,EACA,EACA,EACA,EAGI,CAAC,EACK,CACV,GAAI,EAA2B,EAAS,EAAU,EAAQ,MAAM,EAC/D,MAAO,GAIR,OADA,EAAwB,EAAM,EAAS,EAAU,CAAO,EACjD,GAGR,SAAS,CAA4C,CAAC,EAAc,EAAiC,CAEpG,OADA,EAA+B,EAAM,CAAO,EACrC,EAAQ",
8
+ "debugId": "CC91456931A8600264756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{ba as E}from"./chunk-x457d0ap.js";import{ca as F}from"./chunk-vk48hgm4.js";function L(q,j){if(typeof j<"u"){if(typeof j==="object")return F()(q,j);return E()(q,j)}let G=q??{};return function(H,A){if(typeof A==="object")return F(G)(H,A);return E(G)(H,A)}}
2
+ export{L as aa};
3
+
4
+ //# debugId=B0D7E14A4522220E64756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type {\n\tLegacyFieldDecoratorArgs,\n\tStandardFieldDecoratorArgs,\n\tStandardOrLegacyFieldDecoratorArgs,\n} from '../types';\nimport { signal as legacySignal, type SignalDecoratorOptions } from './legacy/signal';\nimport { signal as standardSignal } from './standard/signal';\n\nexport type { SignalDecoratorOptions } from './standard/signal';\n\n/**\n * Declares a host-aware writable signal field.\n *\n * The decorated member becomes a real `WritableSignal` instance that JSX can\n * consume directly in child or attribute positions. By default the decorator\n * creates a host-owned signal, but it can also connect an existing shared\n * signal through the `source` option or a signal-valued field initializer.\n *\n * Connected signals still flow through Radiant's update callback channel so\n * `@onUpdated(...)` and `this.$.name` bindings continue to work. On\n * `RadiantComponent`, any signal or store reads performed during `render()`\n * now participate in rerender invalidation directly, which makes module-level\n * shared stores a natural fit without prop-bridging them through a second\n * reactive layer.\n *\n * When `hydrate` is provided, SSR host output appends a keyed JSON script so\n * the client can restore the signal's initial value during hydration.\n */\nexport function signal(\n\tprotoOrTarget: StandardOrLegacyFieldDecoratorArgs['protoOrTarget'],\n\tnameOrContext: StandardOrLegacyFieldDecoratorArgs['nameOrContext'],\n): any;\nexport function signal(options?: SignalDecoratorOptions): any;\nexport function signal(\n\tprotoOrOptions?: StandardOrLegacyFieldDecoratorArgs['protoOrTarget'] | SignalDecoratorOptions,\n\tnameOrContext?: StandardOrLegacyFieldDecoratorArgs['nameOrContext'],\n): any {\n\tif (typeof nameOrContext !== 'undefined') {\n\t\tif (typeof nameOrContext === 'object') {\n\t\t\treturn standardSignal()(protoOrOptions as StandardFieldDecoratorArgs['protoOrTarget'], nameOrContext);\n\t\t}\n\n\t\treturn legacySignal()(protoOrOptions as LegacyFieldDecoratorArgs['protoOrTarget'], nameOrContext);\n\t}\n\n\tconst options = (protoOrOptions ?? {}) as SignalDecoratorOptions;\n\n\treturn function (\n\t\tprotoOrTarget: StandardOrLegacyFieldDecoratorArgs['protoOrTarget'],\n\t\tcontextOrName: StandardOrLegacyFieldDecoratorArgs['nameOrContext'],\n\t): any {\n\t\tif (typeof contextOrName === 'object') {\n\t\t\treturn standardSignal(options)(\n\t\t\t\tprotoOrTarget as StandardFieldDecoratorArgs['protoOrTarget'],\n\t\t\t\tcontextOrName as StandardFieldDecoratorArgs['nameOrContext'],\n\t\t\t);\n\t\t}\n\n\t\treturn legacySignal(options)(\n\t\t\tprotoOrTarget as LegacyFieldDecoratorArgs['protoOrTarget'],\n\t\t\tcontextOrName as LegacyFieldDecoratorArgs['nameOrContext'],\n\t\t);\n\t};\n}\n"
6
6
  ],
7
7
  "mappings": "wFAiCO,GAAS,CAAM,CACrB,EACA,EACM,CACN,GAAI,OAAO,EAAkB,IAAa,CACzC,GAAI,OAAO,IAAkB,SAC5B,OAAO,EAAe,EAAE,EAA+D,CAAa,EAGrG,OAAO,EAAa,EAAE,EAA6D,CAAa,EAGjG,IAAM,EAAW,GAAkB,CAAC,EAEpC,OAAO,QAAS,CACf,EACA,EACM,CACN,GAAI,OAAO,IAAkB,SAC5B,OAAO,EAAe,CAAO,EAC5B,EACA,CACD,EAGD,OAAO,EAAa,CAAO,EAC1B,EACA,CACD",
8
- "debugId": "C219C5D63128E17C64756E2164756E21",
8
+ "debugId": "B0D7E14A4522220E64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
1
  function d(t,a,e,r){if(typeof r==="object")return t(e,r);return a(e,r)}function c(t,a,e,r,o){if(typeof r==="object")return t(e,r);return a(e,r,o)}
2
- export{d as Na,c as Oa};
2
+ export{d as Oa,c as Pa};
3
3
 
4
- //# debugId=D5F8FA4A7E28826464756E2164756E21
4
+ //# debugId=D2CC43EB923EB13264756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type {\n\tLegacyFieldDecoratorArgs,\n\tLegacyMethodDecoratorArgs,\n\tStandardMethodDecoratorArgs,\n\tStandardOrLegacyFieldDecoratorArgs,\n\tStandardOrLegacyMethodDecoratorArgs,\n} from '../types';\n\ntype StandardFieldFn = (target: undefined, context: ClassFieldDecoratorContext<any, any>) => any;\n\ntype LegacyFieldFn = (\n\tproto: LegacyFieldDecoratorArgs['protoOrTarget'],\n\tname: LegacyFieldDecoratorArgs['nameOrContext'],\n) => any;\n\ntype StandardMethodFn = (\n\ttarget: StandardMethodDecoratorArgs['protoOrTarget'],\n\tcontext: StandardMethodDecoratorArgs['nameOrContext'],\n) => any;\n\ntype LegacyMethodFn = (\n\tproto: LegacyMethodDecoratorArgs['protoOrTarget'],\n\tname: LegacyMethodDecoratorArgs['nameOrContext'],\n\tdescriptor: LegacyMethodDecoratorArgs['descriptor'],\n) => any;\n\nexport function fieldDecoratorBridge(\n\tstandard: StandardFieldFn,\n\tlegacy: LegacyFieldFn,\n\tprotoOrTarget: StandardOrLegacyFieldDecoratorArgs['protoOrTarget'],\n\tnameOrContext: StandardOrLegacyFieldDecoratorArgs['nameOrContext'],\n): any {\n\tif (typeof nameOrContext === 'object') {\n\t\treturn standard(protoOrTarget as undefined, nameOrContext as ClassFieldDecoratorContext<any, any>);\n\t}\n\treturn legacy(\n\t\tprotoOrTarget as LegacyFieldDecoratorArgs['protoOrTarget'],\n\t\tnameOrContext as LegacyFieldDecoratorArgs['nameOrContext'],\n\t);\n}\n\nexport function methodDecoratorBridge(\n\tstandard: StandardMethodFn,\n\tlegacy: LegacyMethodFn,\n\tprotoOrTarget: StandardOrLegacyMethodDecoratorArgs['protoOrTarget'],\n\tnameOrContext: StandardOrLegacyMethodDecoratorArgs['nameOrContext'],\n\tdescriptor?: StandardOrLegacyMethodDecoratorArgs['descriptor'],\n): any {\n\tif (typeof nameOrContext === 'object') {\n\t\treturn standard(\n\t\t\tprotoOrTarget as StandardMethodDecoratorArgs['protoOrTarget'],\n\t\t\tnameOrContext as StandardMethodDecoratorArgs['nameOrContext'],\n\t\t);\n\t}\n\treturn legacy(\n\t\tprotoOrTarget as LegacyMethodDecoratorArgs['protoOrTarget'],\n\t\tnameOrContext as LegacyMethodDecoratorArgs['nameOrContext'],\n\t\tdescriptor as LegacyMethodDecoratorArgs['descriptor'],\n\t);\n}\n"
6
6
  ],
7
7
  "mappings": "AA0BO,SAAS,CAAoB,CACnC,EACA,EACA,EACA,EACM,CACN,GAAI,OAAO,IAAkB,SAC5B,OAAO,EAAS,EAA4B,CAAqD,EAElG,OAAO,EACN,EACA,CACD,EAGM,SAAS,CAAqB,CACpC,EACA,EACA,EACA,EACA,EACM,CACN,GAAI,OAAO,IAAkB,SAC5B,OAAO,EACN,EACA,CACD,EAED,OAAO,EACN,EACA,EACA,CACD",
8
- "debugId": "D5F8FA4A7E28826464756E2164756E21",
8
+ "debugId": "D2CC43EB923EB13264756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{Ma as d}from"./chunk-cnyxrh9r.js";import{xb as h}from"./chunk-rrg759ht.js";function A(j){return(k,q)=>{d(k,(b)=>{let u=h(b,j);b.registerConnectedCallback(()=>{Object.defineProperty(b,q,{get(){return u},enumerable:!0,configurable:!0})})})}}
2
+ export{A as ea};
3
+
4
+ //# debugId=E29727BF3027842A64756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { RadiantElement } from '../../core/radiant-element';\nimport { createEvent } from '../../helpers/create-event';\nimport type { EventEmitterConfig } from '../../tools/event-emitter';\nimport { registerLegacyInstanceInitializer } from './instance-initializers';\n\n/**\n * Decorator that attaches an EventEmitter to the class field property.\n * The EventEmitter can be used to dispatch custom events from the target element.\n * @param eventConfig Configuration for the event emitter.\n * @see {@link EventEmitter} for more details about how the EventEmitter works.\n */\nexport function event(eventConfig: EventEmitterConfig) {\n\treturn (proto: RadiantElement, propertyKey: string) => {\n\t\tregisterLegacyInstanceInitializer(proto, (element) => {\n\t\t\tconst emitter = createEvent(element, eventConfig);\n\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tObject.defineProperty(element, propertyKey, {\n\t\t\t\t\tget() {\n\t\t\t\t\t\treturn emitter;\n\t\t\t\t\t},\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tconfigurable: true,\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t};\n}\n"
6
6
  ],
7
7
  "mappings": "wFAWO,GAAS,CAAK,CAAC,EAAiC,CACtD,MAAO,CAAC,EAAuB,IAAwB,CACtD,EAAkC,EAAO,CAAC,IAAY,CACrD,IAAM,EAAU,EAAY,EAAS,CAAW,EAEhD,EAAQ,0BAA0B,IAAM,CACvC,OAAO,eAAe,EAAS,EAAa,CAC3C,GAAG,EAAG,CACL,OAAO,GAER,WAAY,GACZ,aAAc,EACf,CAAC,EACD,EACD",
8
- "debugId": "35F6D559C1C015C164756E2164756E21",
8
+ "debugId": "E29727BF3027842A64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{E}from"./chunk-x2k0ngpz.js";import{F as A}from"./chunk-kakpjgzf.js";import{Pa as z}from"./chunk-q9z6tnzw.js";function L(j){return function(F,G,H){return z(E(j),A(j),F,G,H)}}
2
+ export{L as A};
3
+
4
+ //# debugId=E63D15B4F122B2CD64756E2164756E21
@@ -4,7 +4,7 @@
4
4
  "sourcesContent": [
5
5
  "import type { StandardOrLegacyMethodDecoratorArgs } from '../../types';\nimport type { RadiantElement } from '../../core/radiant-element';\nimport type { Context, ContextType, UnknownContext } from '../types';\nimport { contextSelector as legacyContextSelectorMethod } from './legacy/context-selector';\nimport { contextSelector as standardContextSelectorMethod } from './standard/context-selector';\nimport { methodDecoratorBridge } from '../../decorators/bridge';\n\ntype ContextUpdateMethod<Selected> = (value: Selected) => unknown;\n\ntype OnContextUpdateDecorator<Selected> = {\n\t<Host extends RadiantElement, TMethod extends ContextUpdateMethod<Selected>>(\n\t\tprotoOrTarget: TMethod,\n\t\tnameOrContext: ClassMethodDecoratorContext<Host, TMethod>,\n\t): void;\n\t(\n\t\tprotoOrTarget: RadiantElement,\n\t\tnameOrContext: string,\n\t\tdescriptor: TypedPropertyDescriptor<ContextUpdateMethod<Selected>>,\n\t): TypedPropertyDescriptor<ContextUpdateMethod<Selected>> | void;\n};\n\nexport type OnContextUpdateOptions<T extends UnknownContext, Selected = ContextType<T>> = {\n\t/** Context token to resolve from ancestor providers. */\n\tcontext: T;\n\t/** Optional projection that narrows the resolved context before delivery. */\n\tselect?: (context: ContextType<T>) => Selected;\n\t/** Whether client-side event-channel subscriptions should stay active after the first value. */\n\tsubscribe?: boolean;\n\t/** Whether RadiantComponent hosts should schedule `requestUpdate()` after delivery. */\n\trequestUpdate?: boolean;\n};\n\n/**\n * Subscribes a method to the current value, or a selected slice, of a context.\n *\n * The decorated method is invoked during SSR when an ambient provider is\n * available, and on the client it keeps receiving updates according to the\n * `subscribe` option.\n *\n * On `RadiantComponent` hosts, each delivery also schedules `requestUpdate()`\n * unless `requestUpdate: false` is set explicitly.\n *\n * @param options Context subscription configuration.\n */\nexport function onContextUpdate<T extends Context<unknown, unknown>, Selected = ContextType<T>>(\n\toptions: OnContextUpdateOptions<T, Selected>,\n): OnContextUpdateDecorator<Selected> {\n\treturn function (\n\t\tprotoOrTarget: StandardOrLegacyMethodDecoratorArgs['protoOrTarget'],\n\t\tnameOrContext: StandardOrLegacyMethodDecoratorArgs['nameOrContext'],\n\t\tdescriptor?: StandardOrLegacyMethodDecoratorArgs['descriptor'],\n\t): TypedPropertyDescriptor<ContextUpdateMethod<Selected>> | void {\n\t\treturn methodDecoratorBridge(\n\t\t\tstandardContextSelectorMethod(options),\n\t\t\tlegacyContextSelectorMethod(options),\n\t\t\tprotoOrTarget,\n\t\t\tnameOrContext,\n\t\t\tdescriptor,\n\t\t) as TypedPropertyDescriptor<ContextUpdateMethod<Selected>> | void;\n\t} as OnContextUpdateDecorator<Selected>;\n}\n"
6
6
  ],
7
- "mappings": "qIA4CO,GAAS,LAA+E,CAC9F,EACqC,CACrC,OAAO,QAAS,CACf,EACA,EACA,EACgE,CAChE,OAAO,EACN,EAA8B,CAAO,EACrC,EAA4B,CAAO,EACnC,EACA,EACA,CACD",
8
- "debugId": "7E2D0322C77E94BB64756E2164756E21",
7
+ "mappings": "gIA4CO,GAAS,LAA+E,CAC9F,EACqC,CACrC,OAAO,QAAS,CACf,EACA,EACA,EACgE,CAChE,OAAO,EACN,EAA8B,CAAO,EACrC,EAA4B,CAAO,EACnC,EACA,EACA,CACD",
8
+ "debugId": "E63D15B4F122B2CD64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
- import{o as A}from"./chunk-jg20mzg8.js";import{La as w}from"./chunk-8tvt04cm.js";function H({context:j,initialValue:B,hydrate:C,serialize:D}){return(E,f)=>{let k=(b)=>{if(b[f])return;let q=new A(b,{context:j,hydrationKey:f,initialValue:B,hydrate:C,serialize:D});b[f]=q,b.registerContextProvider(f,q),b.connectedContextCallback(j)};w(E,(b)=>{k(b),b.registerConnectedCallback(()=>{k(b)})})}}
2
- export{H as k};
1
+ import{R as A}from"./chunk-21a7jask.js";import{Ma as w}from"./chunk-cnyxrh9r.js";function H({context:j,initialValue:B,hydrate:C,serialize:D}){return(E,f)=>{let k=(b)=>{if(b[f])return;let q=new A(b,{context:j,hydrationKey:f,initialValue:B,hydrate:C,serialize:D});b[f]=q,b.registerContextProvider(f,q),b.connectedContextCallback(j)};w(E,(b)=>{k(b),b.registerConnectedCallback(()=>{k(b)})})}}
2
+ export{H as w};
3
3
 
4
- //# debugId=F36478E0A3334CDE64756E2164756E21
4
+ //# debugId=FA5A6E529695847664756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import { ContextProvider } from '../../../context/context-provider';\nimport type { UnknownContext } from '../../../context/types';\nimport type { RadiantElement } from '../../../core/radiant-element';\nimport { registerLegacyInstanceInitializer } from '../../../decorators/legacy/instance-initializers';\nimport type { ProvideContextOptions } from '../provide-context';\n\nexport function provideContext<T extends UnknownContext>({\n\tcontext,\n\tinitialValue,\n\thydrate,\n\tserialize,\n}: ProvideContextOptions<T>) {\n\treturn (proto: RadiantElement, propertyKey: string) => {\n\t\tconst initializeProvider = (element: RadiantElement) => {\n\t\t\tif ((element as any)[propertyKey]) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst provider = new ContextProvider<T>(element, {\n\t\t\t\tcontext,\n\t\t\t\thydrationKey: propertyKey,\n\t\t\t\tinitialValue,\n\t\t\t\thydrate,\n\t\t\t\tserialize,\n\t\t\t});\n\t\t\t(element as any)[propertyKey] = provider;\n\t\t\telement.registerContextProvider(propertyKey, provider);\n\t\t\telement.connectedContextCallback(context);\n\t\t};\n\n\t\tregisterLegacyInstanceInitializer(proto, (element) => {\n\t\t\tinitializeProvider(element);\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tinitializeProvider(element);\n\t\t\t});\n\t\t});\n\t};\n}\n"
6
6
  ],
7
7
  "mappings": "uFAMO,GAAS,CAAwC,EACvD,UACA,eACA,UACA,aAC4B,CAC5B,MAAO,CAAC,EAAuB,IAAwB,CACtD,IAAM,EAAqB,CAAC,IAA4B,CACvD,GAAK,EAAgB,GACpB,OAGD,IAAM,EAAW,IAAI,EAAmB,EAAS,CAChD,UACA,aAAc,EACd,eACA,UACA,WACD,CAAC,EACA,EAAgB,GAAe,EAChC,EAAQ,wBAAwB,EAAa,CAAQ,EACrD,EAAQ,yBAAyB,CAAO,GAGzC,EAAkC,EAAO,CAAC,IAAY,CACrD,EAAmB,CAAO,EAC1B,EAAQ,0BAA0B,IAAM,CACvC,EAAmB,CAAO,EAC1B,EACD",
8
- "debugId": "F36478E0A3334CDE64756E2164756E21",
8
+ "debugId": "FA5A6E529695847664756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
1
  function o(i,t){let e=String(t.name);if(t.private)throw Error(`'bound' cannot decorate private properties like ${e}.`);t.addInitializer(function(){this[e]=this[e].bind(this)})}
2
- export{o as ya};
2
+ export{o as ia};
3
3
 
4
- //# debugId=A417C3E188982D7964756E2164756E21
4
+ //# debugId=543AC0E8DE660B4864756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { Method } from '../../types';\n\nexport function bound<T extends Method>(_: T, context: ClassMethodDecoratorContext) {\n\tconst methodName = String(context.name);\n\tif (context.private) {\n\t\tthrow new Error(`'bound' cannot decorate private properties like ${methodName as string}.`);\n\t}\n\tcontext.addInitializer(function (this: any) {\n\t\tthis[methodName] = this[methodName].bind(this);\n\t});\n}\n"
6
6
  ],
7
7
  "mappings": "AAEO,SAAS,CAAuB,CAAC,EAAM,EAAsC,CACnF,IAAM,EAAa,OAAO,EAAQ,IAAI,EACtC,GAAI,EAAQ,QACX,MAAU,MAAM,mDAAmD,IAAuB,EAE3F,EAAQ,eAAe,QAAS,EAAY,CAC3C,KAAK,GAAc,KAAK,GAAY,KAAK,IAAI,EAC7C",
8
- "debugId": "A417C3E188982D7964756E2164756E21",
8
+ "debugId": "543AC0E8DE660B4864756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{yb as z}from"./chunk-wvd1ffe4.js";function B(j,x){let y=new z(j,x);return j.registerEventEmitter(x.name,y),y}
2
+ export{B as xb};
3
+
4
+ //# debugId=B632339BCFF34DA564756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { RadiantElement } from '../core/radiant-element';\nimport { EventEmitter, type EventEmitterConfig } from '../tools/event-emitter';\n\n/**\n * Creates an EventEmitter bound to a host element and registers it on the host.\n * Functional equivalent of the `@event` decorator for vanilla JS usage.\n * @param host The host element that will dispatch the events.\n * @param config {@link EventEmitterConfig} The event emitter configuration.\n */\nexport function createEvent<T = unknown>(host: RadiantElement, config: EventEmitterConfig): EventEmitter<T> {\n\tconst emitter = new EventEmitter<T>(host, config);\n\thost.registerEventEmitter(config.name, emitter);\n\treturn emitter;\n}\n"
6
6
  ],
7
7
  "mappings": "yCASO,SAAS,CAAwB,CAAC,EAAsB,EAA6C,CAC3G,IAAM,EAAU,IAAI,EAAgB,EAAM,CAAM,EAEhD,OADA,EAAK,qBAAqB,EAAO,KAAM,CAAO,EACvC",
8
- "debugId": "F3608E2E8957998F64756E2164756E21",
8
+ "debugId": "B632339BCFF34DA564756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,4 +1,4 @@
1
- import{t as B}from"./chunk-5td6v9k3.js";import{v as A,x as k}from"./chunk-vpfm9yw8.js";import{La as w}from"./chunk-8tvt04cm.js";function M(D){let{context:f,select:h,subscribe:q=!0}=D;return(E,F)=>{w(E,(d)=>{let j=B(d,(G)=>{d[F]=G},!0);A(d,f,j,h),d.registerConnectedCallback(()=>{if(k(d,f,j,{select:h,subscribe:q}))return;queueMicrotask(()=>{k(d,f,j,{select:h,subscribe:q})})})})}}
2
- export{M as g};
1
+ import{G as B}from"./chunk-5bkat72n.js";import{I as A,K as k}from"./chunk-p8k4g99a.js";import{Ma as w}from"./chunk-cnyxrh9r.js";function M(D){let{context:f,select:h,subscribe:q=!0}=D;return(E,F)=>{w(E,(d)=>{let j=B(d,(G)=>{d[F]=G},!0);A(d,f,j,h),d.registerConnectedCallback(()=>{if(k(d,f,j,{select:h,subscribe:q}))return;queueMicrotask(()=>{k(d,f,j,{select:h,subscribe:q})})})})}}
2
+ export{M as C};
3
3
 
4
- //# debugId=F4648066BC399D0364756E2164756E21
4
+ //# debugId=AAAD552D0788280D64756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import type { RadiantElement } from '../../../core/radiant-element';\nimport { registerLegacyInstanceInitializer } from '../../../decorators/legacy/instance-initializers';\nimport { bootstrapSsrContextSelection, connectContextSelection } from '../../context-consumer-bootstrap';\nimport type { Context, ContextType } from '../../types';\nimport { createContextSelectionDelivery } from '../context-selection-delivery';\n\nexport type ContextSelectorFieldOptions<T extends Context<unknown, unknown>, Selected = ContextType<T>> = {\n\tcontext: T;\n\tselect?: (context: ContextType<T>) => Selected;\n\tsubscribe?: boolean;\n};\n\nexport function contextSelectorField<T extends Context<unknown, unknown>, Selected = ContextType<T>>(\n\toptions: ContextSelectorFieldOptions<T, Selected>,\n) {\n\tconst { context, select, subscribe = true } = options;\n\n\treturn (target: RadiantElement, propertyName: string) => {\n\t\tregisterLegacyInstanceInitializer(target, (element) => {\n\t\t\tconst applyValue = createContextSelectionDelivery(\n\t\t\t\telement,\n\t\t\t\t(value) => {\n\t\t\t\t\t(element as unknown as Record<string, unknown>)[propertyName] = value as Selected;\n\t\t\t\t},\n\t\t\t\ttrue,\n\t\t\t);\n\n\t\t\tbootstrapSsrContextSelection(element, context, applyValue, select as any);\n\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tif (\n\t\t\t\t\tconnectContextSelection(element, context, applyValue, {\n\t\t\t\t\t\tselect: select as any,\n\t\t\t\t\t\tsubscribe,\n\t\t\t\t\t})\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tqueueMicrotask(() => {\n\t\t\t\t\tconnectContextSelection(element, context, applyValue, {\n\t\t\t\t\t\tselect: select as any,\n\t\t\t\t\t\tsubscribe,\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t};\n}\n"
6
6
  ],
7
7
  "mappings": "4IAYO,GAAS,LAAoF,CACnG,EACC,CACD,IAAQ,UAAS,SAAQ,YAAY,IAAS,EAE9C,MAAO,CAAC,EAAwB,IAAyB,CACxD,EAAkC,EAAQ,CAAC,IAAY,CACtD,IAAM,EAAa,EAClB,EACA,CAAC,IAAU,CACT,EAA+C,GAAgB,GAEjE,EACD,EAEA,EAA6B,EAAS,EAAS,EAAY,CAAa,EAExE,EAAQ,0BAA0B,IAAM,CACvC,GACC,EAAwB,EAAS,EAAS,EAAY,CACrD,OAAQ,EACR,WACD,CAAC,EAED,OAGD,eAAe,IAAM,CACpB,EAAwB,EAAS,EAAS,EAAY,CACrD,OAAQ,EACR,WACD,CAAC,EACD,EACD,EACD",
8
- "debugId": "F4648066BC399D0364756E2164756E21",
8
+ "debugId": "AAAD552D0788280D64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,4 @@
1
+ import{Y as K}from"./chunk-gdkte2vd.js";import{Sa as X}from"./chunk-gg74gdpv.js";import{Ta as Y}from"./chunk-e0r6ca2g.js";import{hb as D,ib as F,jb as O,kb as Q,lb as T,mb as U,nb as V,ob as W}from"./chunk-3xxvmd5c.js";import{pb as L}from"./chunk-hpzgnxgq.js";import{hasHydrationMarkers as Z,hydrate as _,jsx as $,render as A}from"@ecopages/jsx";import{Computed as E,subtle as I}from"@ecopages/signals";class G extends K{isRendering=!1;isFirstConnectPending=!1;isRenderScheduled=!1;needsRender=!1;projectedSlotContent=new Map;renderSignal;renderWatcher=new I.Watcher(()=>{this.requestUpdate()});slotProjectionObserver;slotProjectionVersion=0;connectedCallback(){if(super.connectedCallback(),this.isFirstConnectPending)return;this.isFirstConnectPending=!0,queueMicrotask(()=>{if(this.isFirstConnectPending=!1,!this.isConnected)return;if(this.ensureSlotProjectionState(),this.observeSlotProjection(),J(this)){if(this.needsRender=!1,this.hydrate(),this.needsRender)this.update();return}this.update()})}render(){return $("slot",{})}renderToString(f={}){return this.prepareForSsr(),B().renderView(this,f)}renderHost(){return B().renderHost(this)}renderHostToString(f={}){return B().renderHostToString(this,f)}hydrate(){if(!this.isConnected||this.isRendering)return;this.isRendering=!0,this.disconnectSlotProjectionObserver();try{_(this.resolveTrackedRenderOutput().value,this)}finally{this.isRendering=!1,this.observeSlotProjection()}}requestUpdate(){if(this.needsRender=!0,this.isRenderScheduled)return;this.isRenderScheduled=!0,queueMicrotask(()=>{if(this.isRenderScheduled=!1,!this.needsRender)return;this.update()})}update(){if(this.needsRender=!0,!this.isConnected||this.isRendering)return;if(this.isFirstConnectPending&&J(this))return;while(this.needsRender&&this.isConnected){this.needsRender=!1,this.isRendering=!0,this.disconnectSlotProjectionObserver();try{A(this.resolveTrackedRenderOutput().value,this)}finally{this.isRendering=!1,this.observeSlotProjection()}}}disconnectedCallback(){this.disconnectSlotProjectionObserver(),this.disconnectRenderWatcher(),super.disconnectedCallback()}getSlotElement(f){return this.getSlotElements(f)[0]??null}getSlotElements(f){return this.ensureSlotProjectionState(),(this.projectedSlotContent.get(f??D)??[]).filter((q)=>typeof Node<"u"&&q instanceof Element)}shouldAutoBindReactiveMembers(){return!0}getHostSsrAttributes(){return B().getHostAttributes(this)}resolveSsrRenderBridge(){let f={};if(this.renderHostToString===G.prototype.renderHostToString)f.renderHostToString=(q)=>this.renderHostToString(q);if(this.renderHost===G.prototype.renderHost)f.renderHost=()=>this.renderHost();return f}ensureSlotProjectionState(){if(this.projectedSlotContent.size>0)return;let f=this.isConnected?W(this):void 0;if(typeof f==="string"&&f!==""){this.projectedSlotContent=Q(f),this.slotProjectionVersion+=1;return}if(this.getHostChildNodeCount()>0)this.projectedSlotContent=O(this),this.slotProjectionVersion+=1}getHostChildNodeCount(){return"childNodes"in this&&this.childNodes?this.childNodes.length:0}getSlotProjectionScriptTag(){this.ensureSlotProjectionState();let f=U(this.projectedSlotContent);if(!f)return;return`<script type="application/json" ${F}>${v(f)}</script>`}getAuthoredHydrationScriptMarkup(){let f=T(this);if(f)return f;return}handleSlotProjectionMutations(f){let q=!1;for(let w of f){for(let z of Array.from(w.removedNodes))if(this.removeProjectedSlotNode(z))q=!0;for(let z of Array.from(w.addedNodes)){if(z.parentNode!==this)continue;if(this.addProjectedSlotNode(z))q=!0}}if(q)this.slotProjectionVersion+=1,this.update()}addProjectedSlotNode(f){if(f instanceof HTMLScriptElement&&(f.hasAttribute(F)||f.hasAttribute(L)))return!1;let q=f instanceof Element?f.getAttribute("slot")??D:D,w=this.projectedSlotContent.get(q);if(w){if(w.includes(f))return!1;return w.push(f),!0}return this.projectedSlotContent.set(q,[f]),!0}removeProjectedSlotNode(f){for(let[q,w]of this.projectedSlotContent.entries()){let z=w.indexOf(f);if(z===-1)continue;if(w.splice(z,1),w.length===0)this.projectedSlotContent.delete(q);return!0}return!1}observeSlotProjection(){if(typeof MutationObserver>"u"||this.slotProjectionObserver||!this.isConnected)return;this.slotProjectionObserver=new MutationObserver((f)=>this.handleSlotProjectionMutations(f)),this.slotProjectionObserver.observe(this,{childList:!0})}disconnectSlotProjectionObserver(){this.slotProjectionObserver?.disconnect(),this.slotProjectionObserver=void 0}disconnectRenderWatcher(){if(!this.renderSignal)return;this.renderWatcher.unwatch(this.renderSignal),this.renderSignal=void 0}resolveTrackedRenderOutput(){let f=new E(()=>this.resolveRenderOutput()),q=f.get();if(!this.isConnected)return q;if(this.renderSignal)this.renderWatcher.unwatch(this.renderSignal);return this.renderSignal=f,this.renderWatcher.watch(f),q}resolveRenderOutput(){return this.ensureSlotProjectionState(),V(this.render(),this.projectedSlotContent)}}function B(){let f=Y();if(!f)throw Error("Radiant SSR runtime is unavailable. Import `@ecopages/radiant/server/render-component` before using instance SSR methods.");return f}function J(f){return X()&&Z(f)}function v(f){return f.replace(/</g,"\\u003c")}
2
+ export{G as P};
3
+
4
+ //# debugId=55107CFC631DC79E64756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/core/radiant-component.ts"],
4
+ "sourcesContent": [
5
+ "import {\n\thasHydrationMarkers,\n\thydrate as hydrateJsx,\n\tjsx,\n\trender as renderJsx,\n\ttype JsxRenderable,\n} from '@ecopages/jsx';\nimport type { RenderToStringOptions } from '@ecopages/jsx/server';\nimport { Computed, subtle } from '@ecopages/signals';\nimport { RadiantElement } from './radiant-element';\nimport {\n\tDEFAULT_SLOT_NAME,\n\tSLOT_PROJECTION_SCRIPT_ATTRIBUTE,\n\tcollectAuthoredHydrationScriptMarkup,\n\tcaptureProjectedSlotRenderables,\n\tdeserializeProjectedSlotRenderables,\n\tresolveSlotProjection,\n\tserializeProjectedSlotRenderables,\n\ttakeSlotProjectionScriptPayload,\n} from './slot-projection-runtime';\nimport { HYDRATION_ATTRIBUTE } from './hydration-codec';\nimport { isRadiantHydratorInstalled } from './radiant-hydrator-state';\nimport {\n\tgetRadiantComponentSsrRuntime,\n\ttype RadiantComponentRenderBridge,\n\ttype RadiantComponentSsrCapable,\n} from './radiant-component-ssr-registry';\n\n/**\n * A structured JSX-first Radiant base class.\n * @typeParam Bindings - Explicit internal bindable shape. Include only the\n * prop/state keys that JSX bindings should accept.\n *\n * Treat this as the component's internal reactive/bindable surface, not as the\n * default public custom-element attribute contract. When a component exposes a\n * narrower external API than its internal state, declare a separate public\n * props type for the JSX intrinsic element and keep internal-only state out of\n * that contract.\n *\n * Reusing the same type for both is fine only when the public props and the\n * bindable reactive members are intentionally the same surface.\n *\n * - `render()` describes the view.\n * - `update()` commits the current view into the host.\n * - first render happens automatically on connect.\n * - plain `@prop`, `@state`, and `@signal` reads performed during `render()`\n * participate in tracked rerender invalidation.\n * - `update()` and `requestUpdate()` remain available when a rerender should be\n * scheduled from imperative work outside those tracked reads.\n */\nexport class RadiantComponent<Bindings extends object = {}> extends RadiantElement<Bindings> {\n\tprivate isRendering = false;\n\tprivate isFirstConnectPending = false;\n\tprivate isRenderScheduled = false;\n\tprivate needsRender = false;\n\tprivate projectedSlotContent = new Map<string, JsxRenderable[]>();\n\tprivate renderSignal?: Computed<{ containsSlots: boolean; value: JsxRenderable }>;\n\tprivate readonly renderWatcher = new subtle.Watcher(() => {\n\t\tthis.requestUpdate();\n\t});\n\tprivate slotProjectionObserver?: MutationObserver;\n\tprivate slotProjectionVersion = 0;\n\n\toverride connectedCallback() {\n\t\tsuper.connectedCallback();\n\n\t\tif (this.isFirstConnectPending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.isFirstConnectPending = true;\n\n\t\tqueueMicrotask(() => {\n\t\t\tthis.isFirstConnectPending = false;\n\n\t\t\tif (!this.isConnected) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.ensureSlotProjectionState();\n\t\t\tthis.observeSlotProjection();\n\n\t\t\tif (shouldHydrateOnConnect(this)) {\n\t\t\t\tthis.needsRender = false;\n\t\t\t\tthis.hydrate();\n\n\t\t\t\tif (this.needsRender) {\n\t\t\t\t\tthis.update();\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.update();\n\t\t});\n\t}\n\n\t/**\n\t * Returns the current component view.\n\t *\n\t * The base implementation behaves like `<slot />`, so authored host children\n\t * pass through unchanged when a subclass does not override `render()`.\n\t */\n\tpublic render(): JsxRenderable {\n\t\treturn jsx('slot', {});\n\t}\n\n\t/**\n\t * Serializes the current component view into HTML.\n\t */\n\tpublic renderToString(options: RenderToStringOptions = {}): string {\n\t\tthis.prepareForSsr();\n\n\t\treturn requireRadiantComponentSsrRuntime().renderView(this as unknown as RadiantComponentSsrCapable, options);\n\t}\n\n\t/**\n\t * Returns the component host and current view as a JSX element.\n\t */\n\tpublic renderHost(): JsxRenderable {\n\t\treturn requireRadiantComponentSsrRuntime().renderHost(this as unknown as RadiantComponentSsrCapable);\n\t}\n\n\t/**\n\t * Serializes the component host and current view into HTML.\n\t */\n\tpublic renderHostToString(options: RenderToStringOptions = {}): string {\n\t\treturn requireRadiantComponentSsrRuntime().renderHostToString(\n\t\t\tthis as unknown as RadiantComponentSsrCapable,\n\t\t\toptions,\n\t\t);\n\t}\n\n\t/**\n\t * Hydrates an SSR-rendered component view in place.\n\t */\n\tpublic hydrate(): void {\n\t\tif (!this.isConnected || this.isRendering) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.isRendering = true;\n\t\tthis.disconnectSlotProjectionObserver();\n\n\t\ttry {\n\t\t\thydrateJsx(this.resolveTrackedRenderOutput().value, this);\n\t\t} finally {\n\t\t\tthis.isRendering = false;\n\t\t\tthis.observeSlotProjection();\n\t\t}\n\t}\n\n\t/**\n\t * Queues a component rerender and coalesces repeated requests into the same\n\t * microtask.\n\t *\n\t * Use this when reactive state may change multiple times in the same turn and\n\t * the current view should refresh once with the final values.\n\t */\n\tpublic requestUpdate(): void {\n\t\tthis.needsRender = true;\n\n\t\tif (this.isRenderScheduled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.isRenderScheduled = true;\n\n\t\tqueueMicrotask(() => {\n\t\t\tthis.isRenderScheduled = false;\n\n\t\t\tif (!this.needsRender) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.update();\n\t\t});\n\t}\n\n\t/**\n\t * Explicitly rerenders the component into its host.\n\t */\n\tpublic update(): void {\n\t\tthis.needsRender = true;\n\n\t\tif (!this.isConnected || this.isRendering) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.isFirstConnectPending && shouldHydrateOnConnect(this)) {\n\t\t\treturn;\n\t\t}\n\n\t\twhile (this.needsRender && this.isConnected) {\n\t\t\tthis.needsRender = false;\n\t\t\tthis.isRendering = true;\n\t\t\tthis.disconnectSlotProjectionObserver();\n\n\t\t\ttry {\n\t\t\t\trenderJsx(this.resolveTrackedRenderOutput().value, this);\n\t\t\t} finally {\n\t\t\t\tthis.isRendering = false;\n\t\t\t\tthis.observeSlotProjection();\n\t\t\t}\n\t\t}\n\t}\n\n\toverride disconnectedCallback() {\n\t\tthis.disconnectSlotProjectionObserver();\n\t\tthis.disconnectRenderWatcher();\n\t\tsuper.disconnectedCallback();\n\t}\n\n\t/**\n\t * Returns the first projected element assigned to the default or named slot.\n\t *\n\t * Use this when component logic needs direct access to authored light-DOM\n\t * content after projection.\n\t *\n\t * @param name Optional slot name. Omit for the default slot.\n\t */\n\tpublic getSlotElement<T extends Element = Element>(name?: string): T | null {\n\t\treturn (this.getSlotElements<T>(name)[0] ?? null) as T | null;\n\t}\n\n\t/**\n\t * Returns all projected elements assigned to the default or named slot.\n\t *\n\t * Text nodes are intentionally excluded so the result matches the element-\n\t * oriented query semantics used by Radiant decorators.\n\t *\n\t * @param name Optional slot name. Omit for the default slot.\n\t */\n\tpublic getSlotElements<T extends Element = Element>(name?: string): T[] {\n\t\tthis.ensureSlotProjectionState();\n\n\t\treturn (this.projectedSlotContent.get(name ?? DEFAULT_SLOT_NAME) ?? []).filter(\n\t\t\t(renderable): renderable is T => typeof Node !== 'undefined' && renderable instanceof Element,\n\t\t);\n\t}\n\n\tprotected override shouldAutoBindReactiveMembers(): boolean {\n\t\treturn true;\n\t}\n\n\tprotected getHostSsrAttributes(): Record<string, string> {\n\t\treturn requireRadiantComponentSsrRuntime().getHostAttributes(this as unknown as RadiantComponentSsrCapable);\n\t}\n\n\t/**\n\t * Exposes the inherited SSR helper path to internal server renderers.\n\t *\n\t * The bridge is intentionally empty when a subclass overrides the host SSR\n\t * methods so that custom host serialization remains the source of truth.\n\t */\n\tprotected resolveSsrRenderBridge(): RadiantComponentRenderBridge {\n\t\tconst bridge: RadiantComponentRenderBridge = {};\n\n\t\tif (this.renderHostToString === RadiantComponent.prototype.renderHostToString) {\n\t\t\tbridge.renderHostToString = (options: RenderToStringOptions | undefined) =>\n\t\t\t\tthis.renderHostToString(options);\n\t\t}\n\n\t\tif (this.renderHost === RadiantComponent.prototype.renderHost) {\n\t\t\tbridge.renderHost = () => this.renderHost();\n\t\t}\n\n\t\treturn bridge;\n\t}\n\n\tprivate ensureSlotProjectionState(): void {\n\t\tif (this.projectedSlotContent.size > 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst scriptPayload = this.isConnected ? takeSlotProjectionScriptPayload(this) : undefined;\n\n\t\tif (typeof scriptPayload === 'string' && scriptPayload !== '') {\n\t\t\tthis.projectedSlotContent = deserializeProjectedSlotRenderables(scriptPayload);\n\t\t\tthis.slotProjectionVersion += 1;\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.getHostChildNodeCount() > 0) {\n\t\t\tthis.projectedSlotContent = captureProjectedSlotRenderables(this);\n\t\t\tthis.slotProjectionVersion += 1;\n\t\t}\n\t}\n\n\tprivate getHostChildNodeCount(): number {\n\t\treturn 'childNodes' in this && this.childNodes ? this.childNodes.length : 0;\n\t}\n\n\tprivate getSlotProjectionScriptTag(): string | undefined {\n\t\tthis.ensureSlotProjectionState();\n\t\tconst payload = serializeProjectedSlotRenderables(this.projectedSlotContent);\n\n\t\tif (!payload) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn `<script type=\"application/json\" ${SLOT_PROJECTION_SCRIPT_ATTRIBUTE}>${escapeScriptText(payload)}</script>`;\n\t}\n\n\tprivate getAuthoredHydrationScriptMarkup(): string | undefined {\n\t\tconst authoredHydrationMarkup = collectAuthoredHydrationScriptMarkup(this);\n\n\t\tif (authoredHydrationMarkup) {\n\t\t\treturn authoredHydrationMarkup;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tprivate handleSlotProjectionMutations(records: MutationRecord[]): void {\n\t\tlet hasProjectionChanges = false;\n\n\t\tfor (const record of records) {\n\t\t\tfor (const removedNode of Array.from(record.removedNodes)) {\n\t\t\t\tif (this.removeProjectedSlotNode(removedNode)) {\n\t\t\t\t\thasProjectionChanges = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor (const addedNode of Array.from(record.addedNodes)) {\n\t\t\t\tif (addedNode.parentNode !== this) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (this.addProjectedSlotNode(addedNode)) {\n\t\t\t\t\thasProjectionChanges = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (hasProjectionChanges) {\n\t\t\tthis.slotProjectionVersion += 1;\n\t\t\tthis.update();\n\t\t}\n\t}\n\n\tprivate addProjectedSlotNode(node: Node): boolean {\n\t\tif (\n\t\t\tnode instanceof HTMLScriptElement &&\n\t\t\t(node.hasAttribute(SLOT_PROJECTION_SCRIPT_ATTRIBUTE) || node.hasAttribute(HYDRATION_ATTRIBUTE))\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst slotName = node instanceof Element ? (node.getAttribute('slot') ?? DEFAULT_SLOT_NAME) : DEFAULT_SLOT_NAME;\n\t\tconst bucket = this.projectedSlotContent.get(slotName);\n\n\t\tif (bucket) {\n\t\t\tif (bucket.includes(node)) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tbucket.push(node);\n\t\t\treturn true;\n\t\t}\n\n\t\tthis.projectedSlotContent.set(slotName, [node]);\n\t\treturn true;\n\t}\n\n\tprivate removeProjectedSlotNode(node: Node): boolean {\n\t\tfor (const [slotName, bucket] of this.projectedSlotContent.entries()) {\n\t\t\tconst nodeIndex = bucket.indexOf(node);\n\n\t\t\tif (nodeIndex === -1) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tbucket.splice(nodeIndex, 1);\n\n\t\t\tif (bucket.length === 0) {\n\t\t\t\tthis.projectedSlotContent.delete(slotName);\n\t\t\t}\n\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\t}\n\n\tprivate observeSlotProjection(): void {\n\t\tif (typeof MutationObserver === 'undefined' || this.slotProjectionObserver || !this.isConnected) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.slotProjectionObserver = new MutationObserver((records) => this.handleSlotProjectionMutations(records));\n\t\tthis.slotProjectionObserver.observe(this, { childList: true });\n\t}\n\n\tprivate disconnectSlotProjectionObserver(): void {\n\t\tthis.slotProjectionObserver?.disconnect();\n\t\tthis.slotProjectionObserver = undefined;\n\t}\n\n\tprivate disconnectRenderWatcher(): void {\n\t\tif (!this.renderSignal) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.renderWatcher.unwatch(this.renderSignal);\n\t\tthis.renderSignal = undefined;\n\t}\n\n\tprivate resolveTrackedRenderOutput(): { containsSlots: boolean; value: JsxRenderable } {\n\t\tconst nextRenderSignal = new Computed(() => this.resolveRenderOutput());\n\t\tconst output = nextRenderSignal.get();\n\n\t\tif (!this.isConnected) {\n\t\t\treturn output;\n\t\t}\n\n\t\tif (this.renderSignal) {\n\t\t\tthis.renderWatcher.unwatch(this.renderSignal);\n\t\t}\n\n\t\tthis.renderSignal = nextRenderSignal;\n\t\tthis.renderWatcher.watch(nextRenderSignal);\n\t\treturn output;\n\t}\n\n\tprivate resolveRenderOutput(): { containsSlots: boolean; value: JsxRenderable } {\n\t\tthis.ensureSlotProjectionState();\n\t\treturn resolveSlotProjection(this.render(), this.projectedSlotContent);\n\t}\n}\n\nfunction requireRadiantComponentSsrRuntime() {\n\tconst runtime = getRadiantComponentSsrRuntime();\n\n\tif (!runtime) {\n\t\tthrow new Error(\n\t\t\t'Radiant SSR runtime is unavailable. Import `@ecopages/radiant/server/render-component` before using instance SSR methods.',\n\t\t);\n\t}\n\n\treturn runtime;\n}\n\nfunction shouldHydrateOnConnect(component: HTMLElement): boolean {\n\treturn isRadiantHydratorInstalled() && hasHydrationMarkers(component);\n}\n\nfunction escapeScriptText(value: string): string {\n\treturn value.replace(/</g, '\\\\u003c');\n}\n"
6
+ ],
7
+ "mappings": "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",
8
+ "debugId": "55107CFC631DC79E64756E2164756E21",
9
+ "names": []
10
+ }