@askrjs/askr 0.0.51 → 0.0.52

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 (593) hide show
  1. package/dist/bench/components/benchmark-row.d.ts +2 -2
  2. package/dist/bench/components/benchmark-row.js +0 -2
  3. package/dist/bench/components/benchmark-table.js +0 -2
  4. package/dist/benchmark.d.ts +1 -2
  5. package/dist/benchmark.js +2 -4
  6. package/dist/bin/askr-ssg.d.ts +1 -2
  7. package/dist/bin/askr-ssg.js +21 -6
  8. package/dist/boot/hydration.js +10 -11
  9. package/dist/boot/index.d.ts +1 -2
  10. package/dist/boot/index.js +20 -11
  11. package/dist/boot/root-lifecycle.d.ts +6 -3
  12. package/dist/boot/root-lifecycle.js +14 -10
  13. package/dist/boot/route-startup.js +13 -4
  14. package/dist/boot/types.d.ts +1 -2
  15. package/dist/common/attr-names.js +0 -2
  16. package/dist/common/component.d.ts +1 -2
  17. package/dist/common/control.d.ts +1 -2
  18. package/dist/common/control.js +0 -2
  19. package/dist/common/dom-range.d.ts +13 -0
  20. package/dist/common/env.js +1 -7
  21. package/dist/common/error-boundary.d.ts +1 -2
  22. package/dist/common/invariant.js +0 -2
  23. package/dist/common/jsx.d.ts +1 -2
  24. package/dist/common/jsx.js +0 -2
  25. package/dist/common/logger.js +0 -2
  26. package/dist/common/promise.js +0 -2
  27. package/dist/common/props.d.ts +1 -2
  28. package/dist/common/render-context.js +0 -2
  29. package/dist/common/route-activity.js +0 -2
  30. package/dist/common/router-internal.js +0 -2
  31. package/dist/common/router.d.ts +1 -2
  32. package/dist/common/ssr-errors.d.ts +1 -2
  33. package/dist/common/ssr-errors.js +0 -2
  34. package/dist/common/ssr.d.ts +1 -2
  35. package/dist/common/ssr.js +0 -2
  36. package/dist/common/vnode.d.ts +1 -2
  37. package/dist/common/vnode.js +0 -2
  38. package/dist/components/error-boundary.d.ts +1 -2
  39. package/dist/components/error-boundary.js +0 -2
  40. package/dist/components/link.d.ts +2 -2
  41. package/dist/components/link.js +0 -2
  42. package/dist/control/case.d.ts +1 -2
  43. package/dist/control/case.js +0 -2
  44. package/dist/control/for.d.ts +1 -2
  45. package/dist/control/for.js +0 -2
  46. package/dist/control/shared.d.ts +1 -2
  47. package/dist/control/shared.js +0 -2
  48. package/dist/control/show.d.ts +1 -2
  49. package/dist/control/show.js +0 -2
  50. package/dist/data/data-runtime.d.ts +1 -2
  51. package/dist/data/data-runtime.js +3 -5
  52. package/dist/data/invalidation-listeners.js +0 -2
  53. package/dist/data/invalidation.d.ts +1 -2
  54. package/dist/data/invalidation.js +0 -2
  55. package/dist/data/mutation-cell.d.ts +1 -2
  56. package/dist/data/mutation-cell.js +6 -5
  57. package/dist/data/query-cell.d.ts +3 -2
  58. package/dist/data/query-cell.js +43 -9
  59. package/dist/data/query-key.js +0 -2
  60. package/dist/data/shared.js +2 -3
  61. package/dist/data/types.d.ts +1 -2
  62. package/dist/foundations/icon/icon.d.ts +1 -2
  63. package/dist/foundations/icon/icon.js +0 -2
  64. package/dist/foundations/icon/icon.types.d.ts +1 -2
  65. package/dist/foundations/interactions/dismissable.d.ts +1 -2
  66. package/dist/foundations/interactions/dismissable.js +0 -2
  67. package/dist/foundations/interactions/focusable.d.ts +1 -2
  68. package/dist/foundations/interactions/focusable.js +0 -2
  69. package/dist/foundations/interactions/hoverable.d.ts +1 -2
  70. package/dist/foundations/interactions/hoverable.js +0 -2
  71. package/dist/foundations/interactions/interaction-policy.d.ts +1 -2
  72. package/dist/foundations/interactions/interaction-policy.js +0 -2
  73. package/dist/foundations/interactions/pressable.d.ts +1 -2
  74. package/dist/foundations/interactions/pressable.js +0 -2
  75. package/dist/foundations/interactions/roving-focus.d.ts +1 -2
  76. package/dist/foundations/interactions/roving-focus.js +0 -2
  77. package/dist/foundations/state/controllable.d.ts +1 -2
  78. package/dist/foundations/state/controllable.js +0 -2
  79. package/dist/foundations/structures/collection.d.ts +1 -2
  80. package/dist/foundations/structures/collection.js +0 -2
  81. package/dist/foundations/structures/layer.d.ts +1 -2
  82. package/dist/foundations/structures/layer.js +0 -2
  83. package/dist/foundations/structures/layout.d.ts +1 -2
  84. package/dist/foundations/structures/layout.js +0 -2
  85. package/dist/foundations/structures/presence.d.ts +1 -2
  86. package/dist/foundations/structures/presence.js +0 -2
  87. package/dist/foundations/structures/slot.d.ts +1 -2
  88. package/dist/foundations/structures/slot.js +0 -2
  89. package/dist/foundations/utilities/aria.d.ts +1 -2
  90. package/dist/foundations/utilities/aria.js +0 -2
  91. package/dist/foundations/utilities/compose-handlers.d.ts +1 -2
  92. package/dist/foundations/utilities/compose-handlers.js +0 -2
  93. package/dist/foundations/utilities/compose-ref.d.ts +1 -2
  94. package/dist/foundations/utilities/compose-ref.js +0 -2
  95. package/dist/foundations/utilities/event-types.d.ts +1 -2
  96. package/dist/foundations/utilities/merge-props.d.ts +1 -2
  97. package/dist/foundations/utilities/merge-props.js +0 -2
  98. package/dist/foundations/utilities/use-id.d.ts +1 -2
  99. package/dist/foundations/utilities/use-id.js +0 -2
  100. package/dist/fx/fx.d.ts +1 -2
  101. package/dist/fx/fx.js +0 -2
  102. package/dist/fx/noop.js +0 -2
  103. package/dist/fx/timing.d.ts +1 -2
  104. package/dist/fx/timing.js +0 -2
  105. package/dist/index.d.ts +1 -1
  106. package/dist/index.js +0 -2
  107. package/dist/jsx/types.d.ts +1 -2
  108. package/dist/jsx/utils.d.ts +1 -2
  109. package/dist/jsx/utils.js +0 -2
  110. package/dist/jsx-dev-runtime.d.ts +16 -2
  111. package/dist/jsx-dev-runtime.js +3 -12
  112. package/dist/jsx-runtime.d.ts +16 -2
  113. package/dist/jsx-runtime.js +15 -24
  114. package/dist/jsx-runtime2.d.ts +1 -1
  115. package/dist/renderer/attributes.js +28 -6
  116. package/dist/renderer/boundaries.js +48 -172
  117. package/dist/renderer/boundary-materialization.js +72 -0
  118. package/dist/renderer/boundary-range-adoption.js +76 -0
  119. package/dist/renderer/boundary-range-sync.js +101 -0
  120. package/dist/renderer/boundary-state.js +50 -0
  121. package/dist/renderer/child-shape.js +0 -2
  122. package/dist/renderer/children-fastpath.js +3 -3
  123. package/dist/renderer/children.js +0 -2
  124. package/dist/renderer/cleanup.js +70 -13
  125. package/dist/renderer/component-host-cleanup.js +123 -48
  126. package/dist/renderer/component-host-instances.js +59 -8
  127. package/dist/renderer/component-host-replacement.js +105 -0
  128. package/dist/renderer/component-host-results.js +138 -0
  129. package/dist/renderer/component-host.js +94 -169
  130. package/dist/renderer/dom-host.js +0 -2
  131. package/dist/renderer/dom-internal.js +110 -53
  132. package/dist/renderer/dom-range.js +161 -0
  133. package/dist/renderer/dom.js +5 -4
  134. package/dist/renderer/element-children.js +112 -32
  135. package/dist/renderer/error-boundary-dom.js +19 -11
  136. package/dist/renderer/evaluate-dom-range.js +3 -4
  137. package/dist/renderer/evaluate-reconcile.js +12 -37
  138. package/dist/renderer/evaluate.js +14 -3
  139. package/dist/renderer/fastpath.js +4 -12
  140. package/dist/renderer/for-commit-dom-map.js +6 -18
  141. package/dist/renderer/for-commit-removal.js +7 -16
  142. package/dist/renderer/for-commit-reorder.js +0 -2
  143. package/dist/renderer/for-commit.js +172 -44
  144. package/dist/renderer/hydration-boundaries.js +60 -0
  145. package/dist/renderer/hydration-listener-transaction.js +49 -0
  146. package/dist/renderer/index.js +8 -7
  147. package/dist/renderer/intrinsic-blueprint-analysis.js +202 -0
  148. package/dist/renderer/intrinsic-blueprint-bindings.js +152 -0
  149. package/dist/renderer/intrinsic-blueprint-materialization.js +100 -0
  150. package/dist/renderer/intrinsic-blueprint.js +30 -0
  151. package/dist/renderer/intrinsic-hydration-adoption.js +66 -0
  152. package/dist/renderer/keyed-children.js +3 -9
  153. package/dist/renderer/keyed.js +10 -10
  154. package/dist/renderer/namespaces.js +0 -2
  155. package/dist/renderer/prop-bindings.js +56 -21
  156. package/dist/renderer/reactive-child-dom.js +10 -4
  157. package/dist/renderer/reactive-child-sources.js +0 -2
  158. package/dist/renderer/reactive-children.js +29 -20
  159. package/dist/renderer/reconcile-commit.js +0 -2
  160. package/dist/renderer/reconcile-fastpaths.js +4 -11
  161. package/dist/renderer/reconcile-resolution.js +31 -55
  162. package/dist/renderer/reconcile.js +0 -2
  163. package/dist/renderer/retained-element-rollback.js +159 -148
  164. package/dist/renderer/stable-patch.js +3 -4
  165. package/dist/renderer/static-reuse.js +0 -2
  166. package/dist/renderer/utils.js +18 -9
  167. package/dist/router/access.js +0 -2
  168. package/dist/router/activity.d.ts +1 -2
  169. package/dist/router/activity.js +0 -2
  170. package/dist/router/authoring.d.ts +1 -2
  171. package/dist/router/authoring.js +0 -2
  172. package/dist/router/internal-types.d.ts +1 -2
  173. package/dist/router/lazy.d.ts +1 -2
  174. package/dist/router/lazy.js +0 -2
  175. package/dist/router/manifest.d.ts +1 -2
  176. package/dist/router/manifest.js +0 -2
  177. package/dist/router/match.js +0 -2
  178. package/dist/router/navigate.d.ts +1 -2
  179. package/dist/router/navigate.js +4 -7
  180. package/dist/router/navigation-registry.d.ts +1 -2
  181. package/dist/router/navigation-registry.js +0 -2
  182. package/dist/router/navigation-scroll.d.ts +1 -2
  183. package/dist/router/navigation-scroll.js +0 -2
  184. package/dist/router/navigation-targets.d.ts +3 -4
  185. package/dist/router/navigation-targets.js +419 -40
  186. package/dist/router/policy.d.ts +1 -2
  187. package/dist/router/policy.js +0 -2
  188. package/dist/router/rendering.d.ts +1 -2
  189. package/dist/router/rendering.js +4 -3
  190. package/dist/router/resolution.d.ts +1 -2
  191. package/dist/router/resolution.js +0 -2
  192. package/dist/router/route-context.js +0 -2
  193. package/dist/router/route-matching.d.ts +1 -2
  194. package/dist/router/route-matching.js +0 -2
  195. package/dist/router/route-query.d.ts +1 -2
  196. package/dist/router/route-query.js +1 -3
  197. package/dist/router/store.d.ts +1 -2
  198. package/dist/router/store.js +0 -2
  199. package/dist/runtime/access.d.ts +1 -2
  200. package/dist/runtime/access.js +0 -2
  201. package/dist/runtime/child-scope.d.ts +21 -2
  202. package/dist/runtime/child-scope.js +101 -54
  203. package/dist/runtime/component-cleanup.d.ts +1 -2
  204. package/dist/runtime/component-cleanup.js +2 -4
  205. package/dist/runtime/component-commit.js +25 -23
  206. package/dist/runtime/component-facade.js +5 -3
  207. package/dist/runtime/component-internal.d.ts +11 -6
  208. package/dist/runtime/component-internal.js +63 -45
  209. package/dist/runtime/component-lifecycle.d.ts +2 -41
  210. package/dist/runtime/component-lifecycle.js +6 -149
  211. package/dist/runtime/component-scope.d.ts +3 -4
  212. package/dist/runtime/component-scope.js +27 -8
  213. package/dist/runtime/component.js +4 -3
  214. package/dist/runtime/context.d.ts +5 -2
  215. package/dist/runtime/context.js +29 -3
  216. package/dist/runtime/control.d.ts +22 -3
  217. package/dist/runtime/control.js +168 -55
  218. package/dist/runtime/derive.d.ts +1 -2
  219. package/dist/runtime/derive.js +0 -2
  220. package/dist/runtime/dev-namespace.d.ts +5 -6
  221. package/dist/runtime/dev-namespace.js +32 -25
  222. package/dist/runtime/effect.d.ts +8 -5
  223. package/dist/runtime/effect.js +158 -75
  224. package/dist/runtime/error-boundary.d.ts +1 -2
  225. package/dist/runtime/error-boundary.js +0 -2
  226. package/dist/runtime/events.d.ts +3 -3
  227. package/dist/runtime/events.js +66 -69
  228. package/dist/runtime/execution-model.d.ts +1 -2
  229. package/dist/runtime/execution-model.js +0 -2
  230. package/dist/runtime/fastlane.d.ts +1 -2
  231. package/dist/runtime/fastlane.js +0 -2
  232. package/dist/runtime/for-bench.d.ts +1 -2
  233. package/dist/runtime/for-bench.js +9 -167
  234. package/dist/runtime/for-internal.d.ts +68 -5
  235. package/dist/runtime/for-internal.js +201 -14
  236. package/dist/runtime/for-reconcile.d.ts +1 -2
  237. package/dist/runtime/for-reconcile.js +76 -23
  238. package/dist/runtime/for-scopes.d.ts +5 -5
  239. package/dist/runtime/for-scopes.js +168 -48
  240. package/dist/runtime/for-signals.d.ts +13 -4
  241. package/dist/runtime/for-signals.js +155 -81
  242. package/dist/runtime/for-types.d.ts +1 -2
  243. package/dist/runtime/for.d.ts +2 -2
  244. package/dist/runtime/for.js +3 -3
  245. package/dist/runtime/index.d.ts +5 -5
  246. package/dist/runtime/index.js +12 -10
  247. package/dist/runtime/lifecycle-batch.d.ts +59 -0
  248. package/dist/runtime/lifecycle-batch.js +178 -0
  249. package/dist/runtime/lifecycle-operation-settlement.d.ts +5 -0
  250. package/dist/runtime/lifecycle-operation-settlement.js +51 -0
  251. package/dist/runtime/lifecycle-operations.d.ts +1 -2
  252. package/dist/runtime/lifecycle-operations.js +5 -6
  253. package/dist/runtime/perf-metrics.d.ts +8 -7
  254. package/dist/runtime/perf-metrics.js +4 -68
  255. package/dist/runtime/portal.d.ts +1 -2
  256. package/dist/runtime/portal.js +103 -11
  257. package/dist/runtime/readable.d.ts +9 -4
  258. package/dist/runtime/readable.js +41 -17
  259. package/dist/runtime/resource-cell.js +2 -4
  260. package/dist/runtime/resource-operation.d.ts +1 -2
  261. package/dist/runtime/resource-operation.js +37 -34
  262. package/dist/runtime/runtime.d.ts +1 -2
  263. package/dist/runtime/runtime.js +0 -2
  264. package/dist/runtime/scheduler.d.ts +1 -2
  265. package/dist/runtime/scheduler.js +8 -11
  266. package/dist/runtime/selector-store.js +0 -2
  267. package/dist/runtime/selector.d.ts +1 -2
  268. package/dist/runtime/selector.js +3 -11
  269. package/dist/runtime/snapshot-source.d.ts +1 -2
  270. package/dist/runtime/snapshot-source.js +0 -2
  271. package/dist/runtime/state.d.ts +1 -2
  272. package/dist/runtime/state.js +1 -3
  273. package/dist/ssg/batch-render.js +0 -2
  274. package/dist/ssg/create-static-gen.d.ts +4 -2
  275. package/dist/ssg/create-static-gen.js +65 -14
  276. package/dist/ssg/generate-metadata.js +0 -2
  277. package/dist/ssg/generation-plan.js +0 -2
  278. package/dist/ssg/incremental-manifest.js +1 -3
  279. package/dist/ssg/resolve-ssg-data.js +0 -2
  280. package/dist/ssg/route-utils.js +0 -2
  281. package/dist/ssg/static-routes.js +0 -2
  282. package/dist/ssg/types.d.ts +2 -3
  283. package/dist/ssg/write-static-files.js +16 -12
  284. package/dist/ssr/attrs.js +0 -2
  285. package/dist/ssr/boundaries.js +16 -5
  286. package/dist/ssr/component-runtime.js +1 -27
  287. package/dist/ssr/context.d.ts +1 -2
  288. package/dist/ssr/context.js +0 -2
  289. package/dist/ssr/errors.d.ts +1 -2
  290. package/dist/ssr/errors.js +0 -2
  291. package/dist/ssr/escape.js +0 -2
  292. package/dist/ssr/hydration-data.js +0 -2
  293. package/dist/ssr/hydration-verify.d.ts +1 -2
  294. package/dist/ssr/hydration-verify.js +34 -7
  295. package/dist/ssr/index-internal.d.ts +1 -2
  296. package/dist/ssr/index-internal.js +0 -2
  297. package/dist/ssr/render-keys.js +0 -2
  298. package/dist/ssr/render-resolved.d.ts +1 -2
  299. package/dist/ssr/render-resolved.js +0 -2
  300. package/dist/ssr/render-sync.d.ts +1 -2
  301. package/dist/ssr/render-sync.js +27 -19
  302. package/dist/ssr/route-policy-resolution.js +0 -2
  303. package/dist/ssr/route-render.d.ts +1 -2
  304. package/dist/ssr/route-render.js +0 -2
  305. package/dist/ssr/sink.d.ts +1 -2
  306. package/dist/ssr/sink.js +0 -2
  307. package/dist/ssr/types.d.ts +1 -2
  308. package/dist/ssr/verify-hydration.js +0 -2
  309. package/dist/testing/index.d.ts +1 -2
  310. package/dist/testing/index.js +0 -2
  311. package/package.json +57 -44
  312. package/dist/bench/components/benchmark-row.d.ts.map +0 -1
  313. package/dist/bench/components/benchmark-row.js.map +0 -1
  314. package/dist/bench/components/benchmark-table.js.map +0 -1
  315. package/dist/benchmark.d.ts.map +0 -1
  316. package/dist/benchmark.js.map +0 -1
  317. package/dist/bin/askr-ssg.d.ts.map +0 -1
  318. package/dist/bin/askr-ssg.js.map +0 -1
  319. package/dist/boot/hydration.js.map +0 -1
  320. package/dist/boot/index.d.ts.map +0 -1
  321. package/dist/boot/index.js.map +0 -1
  322. package/dist/boot/root-lifecycle.d.ts.map +0 -1
  323. package/dist/boot/root-lifecycle.js.map +0 -1
  324. package/dist/boot/route-startup.js.map +0 -1
  325. package/dist/boot/types.d.ts.map +0 -1
  326. package/dist/common/attr-names.js.map +0 -1
  327. package/dist/common/component.d.ts.map +0 -1
  328. package/dist/common/control.d.ts.map +0 -1
  329. package/dist/common/control.js.map +0 -1
  330. package/dist/common/env.js.map +0 -1
  331. package/dist/common/error-boundary.d.ts.map +0 -1
  332. package/dist/common/invariant.js.map +0 -1
  333. package/dist/common/jsx.d.ts.map +0 -1
  334. package/dist/common/jsx.js.map +0 -1
  335. package/dist/common/logger.js.map +0 -1
  336. package/dist/common/promise.js.map +0 -1
  337. package/dist/common/props.d.ts.map +0 -1
  338. package/dist/common/render-context.js.map +0 -1
  339. package/dist/common/route-activity.js.map +0 -1
  340. package/dist/common/router-internal.js.map +0 -1
  341. package/dist/common/router.d.ts.map +0 -1
  342. package/dist/common/ssr-errors.d.ts.map +0 -1
  343. package/dist/common/ssr-errors.js.map +0 -1
  344. package/dist/common/ssr.d.ts.map +0 -1
  345. package/dist/common/ssr.js.map +0 -1
  346. package/dist/common/vnode.d.ts.map +0 -1
  347. package/dist/common/vnode.js.map +0 -1
  348. package/dist/components/error-boundary.d.ts.map +0 -1
  349. package/dist/components/error-boundary.js.map +0 -1
  350. package/dist/components/link.d.ts.map +0 -1
  351. package/dist/components/link.js.map +0 -1
  352. package/dist/control/case.d.ts.map +0 -1
  353. package/dist/control/case.js.map +0 -1
  354. package/dist/control/for.d.ts.map +0 -1
  355. package/dist/control/for.js.map +0 -1
  356. package/dist/control/shared.d.ts.map +0 -1
  357. package/dist/control/shared.js.map +0 -1
  358. package/dist/control/show.d.ts.map +0 -1
  359. package/dist/control/show.js.map +0 -1
  360. package/dist/data/data-runtime.d.ts.map +0 -1
  361. package/dist/data/data-runtime.js.map +0 -1
  362. package/dist/data/invalidation-listeners.js.map +0 -1
  363. package/dist/data/invalidation.d.ts.map +0 -1
  364. package/dist/data/invalidation.js.map +0 -1
  365. package/dist/data/mutation-cell.d.ts.map +0 -1
  366. package/dist/data/mutation-cell.js.map +0 -1
  367. package/dist/data/query-cell.d.ts.map +0 -1
  368. package/dist/data/query-cell.js.map +0 -1
  369. package/dist/data/query-key.js.map +0 -1
  370. package/dist/data/shared.js.map +0 -1
  371. package/dist/data/types.d.ts.map +0 -1
  372. package/dist/foundations/icon/icon.d.ts.map +0 -1
  373. package/dist/foundations/icon/icon.js.map +0 -1
  374. package/dist/foundations/icon/icon.types.d.ts.map +0 -1
  375. package/dist/foundations/interactions/dismissable.d.ts.map +0 -1
  376. package/dist/foundations/interactions/dismissable.js.map +0 -1
  377. package/dist/foundations/interactions/focusable.d.ts.map +0 -1
  378. package/dist/foundations/interactions/focusable.js.map +0 -1
  379. package/dist/foundations/interactions/hoverable.d.ts.map +0 -1
  380. package/dist/foundations/interactions/hoverable.js.map +0 -1
  381. package/dist/foundations/interactions/interaction-policy.d.ts.map +0 -1
  382. package/dist/foundations/interactions/interaction-policy.js.map +0 -1
  383. package/dist/foundations/interactions/pressable.d.ts.map +0 -1
  384. package/dist/foundations/interactions/pressable.js.map +0 -1
  385. package/dist/foundations/interactions/roving-focus.d.ts.map +0 -1
  386. package/dist/foundations/interactions/roving-focus.js.map +0 -1
  387. package/dist/foundations/state/controllable.d.ts.map +0 -1
  388. package/dist/foundations/state/controllable.js.map +0 -1
  389. package/dist/foundations/structures/collection.d.ts.map +0 -1
  390. package/dist/foundations/structures/collection.js.map +0 -1
  391. package/dist/foundations/structures/layer.d.ts.map +0 -1
  392. package/dist/foundations/structures/layer.js.map +0 -1
  393. package/dist/foundations/structures/layout.d.ts.map +0 -1
  394. package/dist/foundations/structures/layout.js.map +0 -1
  395. package/dist/foundations/structures/presence.d.ts.map +0 -1
  396. package/dist/foundations/structures/presence.js.map +0 -1
  397. package/dist/foundations/structures/slot.d.ts.map +0 -1
  398. package/dist/foundations/structures/slot.js.map +0 -1
  399. package/dist/foundations/utilities/aria.d.ts.map +0 -1
  400. package/dist/foundations/utilities/aria.js.map +0 -1
  401. package/dist/foundations/utilities/compose-handlers.d.ts.map +0 -1
  402. package/dist/foundations/utilities/compose-handlers.js.map +0 -1
  403. package/dist/foundations/utilities/compose-ref.d.ts.map +0 -1
  404. package/dist/foundations/utilities/compose-ref.js.map +0 -1
  405. package/dist/foundations/utilities/event-types.d.ts.map +0 -1
  406. package/dist/foundations/utilities/merge-props.d.ts.map +0 -1
  407. package/dist/foundations/utilities/merge-props.js.map +0 -1
  408. package/dist/foundations/utilities/use-id.d.ts.map +0 -1
  409. package/dist/foundations/utilities/use-id.js.map +0 -1
  410. package/dist/fx/fx.d.ts.map +0 -1
  411. package/dist/fx/fx.js.map +0 -1
  412. package/dist/fx/noop.js.map +0 -1
  413. package/dist/fx/timing.d.ts.map +0 -1
  414. package/dist/fx/timing.js.map +0 -1
  415. package/dist/index.js.map +0 -1
  416. package/dist/jsx/types.d.ts.map +0 -1
  417. package/dist/jsx/utils.d.ts.map +0 -1
  418. package/dist/jsx/utils.js.map +0 -1
  419. package/dist/jsx-dev-runtime.d.ts.map +0 -1
  420. package/dist/jsx-dev-runtime.js.map +0 -1
  421. package/dist/jsx-runtime.d.ts.map +0 -1
  422. package/dist/jsx-runtime.js.map +0 -1
  423. package/dist/renderer/attributes.js.map +0 -1
  424. package/dist/renderer/boundaries.js.map +0 -1
  425. package/dist/renderer/child-shape.js.map +0 -1
  426. package/dist/renderer/children-fastpath.js.map +0 -1
  427. package/dist/renderer/children.js.map +0 -1
  428. package/dist/renderer/cleanup.js.map +0 -1
  429. package/dist/renderer/component-host-cleanup.js.map +0 -1
  430. package/dist/renderer/component-host-instances.js.map +0 -1
  431. package/dist/renderer/component-host.js.map +0 -1
  432. package/dist/renderer/dom-host.js.map +0 -1
  433. package/dist/renderer/dom-internal.js.map +0 -1
  434. package/dist/renderer/element-children.js.map +0 -1
  435. package/dist/renderer/error-boundary-dom.js.map +0 -1
  436. package/dist/renderer/evaluate-dom-range.js.map +0 -1
  437. package/dist/renderer/evaluate-reconcile.js.map +0 -1
  438. package/dist/renderer/evaluate.js.map +0 -1
  439. package/dist/renderer/fastpath.js.map +0 -1
  440. package/dist/renderer/for-commit-dom-map.js.map +0 -1
  441. package/dist/renderer/for-commit-removal.js.map +0 -1
  442. package/dist/renderer/for-commit-reorder.js.map +0 -1
  443. package/dist/renderer/for-commit.js.map +0 -1
  444. package/dist/renderer/index.js.map +0 -1
  445. package/dist/renderer/keyed-children.js.map +0 -1
  446. package/dist/renderer/keyed.js.map +0 -1
  447. package/dist/renderer/namespaces.js.map +0 -1
  448. package/dist/renderer/prop-bindings.js.map +0 -1
  449. package/dist/renderer/reactive-child-dom.js.map +0 -1
  450. package/dist/renderer/reactive-child-sources.js.map +0 -1
  451. package/dist/renderer/reactive-children.js.map +0 -1
  452. package/dist/renderer/reconcile-commit.js.map +0 -1
  453. package/dist/renderer/reconcile-fastpaths.js.map +0 -1
  454. package/dist/renderer/reconcile-resolution.js.map +0 -1
  455. package/dist/renderer/reconcile.js.map +0 -1
  456. package/dist/renderer/retained-element-rollback.js.map +0 -1
  457. package/dist/renderer/stable-patch.js.map +0 -1
  458. package/dist/renderer/static-reuse.js.map +0 -1
  459. package/dist/renderer/utils.js.map +0 -1
  460. package/dist/router/access.js.map +0 -1
  461. package/dist/router/activity.d.ts.map +0 -1
  462. package/dist/router/activity.js.map +0 -1
  463. package/dist/router/authoring.d.ts.map +0 -1
  464. package/dist/router/authoring.js.map +0 -1
  465. package/dist/router/internal-types.d.ts.map +0 -1
  466. package/dist/router/lazy.d.ts.map +0 -1
  467. package/dist/router/lazy.js.map +0 -1
  468. package/dist/router/manifest.d.ts.map +0 -1
  469. package/dist/router/manifest.js.map +0 -1
  470. package/dist/router/match.js.map +0 -1
  471. package/dist/router/navigate.d.ts.map +0 -1
  472. package/dist/router/navigate.js.map +0 -1
  473. package/dist/router/navigation-registry.d.ts.map +0 -1
  474. package/dist/router/navigation-registry.js.map +0 -1
  475. package/dist/router/navigation-scroll.d.ts.map +0 -1
  476. package/dist/router/navigation-scroll.js.map +0 -1
  477. package/dist/router/navigation-targets.d.ts.map +0 -1
  478. package/dist/router/navigation-targets.js.map +0 -1
  479. package/dist/router/policy.d.ts.map +0 -1
  480. package/dist/router/policy.js.map +0 -1
  481. package/dist/router/rendering.d.ts.map +0 -1
  482. package/dist/router/rendering.js.map +0 -1
  483. package/dist/router/resolution.d.ts.map +0 -1
  484. package/dist/router/resolution.js.map +0 -1
  485. package/dist/router/route-context.js.map +0 -1
  486. package/dist/router/route-matching.d.ts.map +0 -1
  487. package/dist/router/route-matching.js.map +0 -1
  488. package/dist/router/route-query.d.ts.map +0 -1
  489. package/dist/router/route-query.js.map +0 -1
  490. package/dist/router/store.d.ts.map +0 -1
  491. package/dist/router/store.js.map +0 -1
  492. package/dist/runtime/access.d.ts.map +0 -1
  493. package/dist/runtime/access.js.map +0 -1
  494. package/dist/runtime/child-scope.d.ts.map +0 -1
  495. package/dist/runtime/child-scope.js.map +0 -1
  496. package/dist/runtime/component-cleanup.d.ts.map +0 -1
  497. package/dist/runtime/component-cleanup.js.map +0 -1
  498. package/dist/runtime/component-commit.js.map +0 -1
  499. package/dist/runtime/component-internal.d.ts.map +0 -1
  500. package/dist/runtime/component-internal.js.map +0 -1
  501. package/dist/runtime/component-lifecycle.d.ts.map +0 -1
  502. package/dist/runtime/component-lifecycle.js.map +0 -1
  503. package/dist/runtime/component-scope.d.ts.map +0 -1
  504. package/dist/runtime/component-scope.js.map +0 -1
  505. package/dist/runtime/context.d.ts.map +0 -1
  506. package/dist/runtime/context.js.map +0 -1
  507. package/dist/runtime/control.d.ts.map +0 -1
  508. package/dist/runtime/control.js.map +0 -1
  509. package/dist/runtime/derive.d.ts.map +0 -1
  510. package/dist/runtime/derive.js.map +0 -1
  511. package/dist/runtime/dev-namespace.d.ts.map +0 -1
  512. package/dist/runtime/dev-namespace.js.map +0 -1
  513. package/dist/runtime/effect.d.ts.map +0 -1
  514. package/dist/runtime/effect.js.map +0 -1
  515. package/dist/runtime/error-boundary.d.ts.map +0 -1
  516. package/dist/runtime/error-boundary.js.map +0 -1
  517. package/dist/runtime/events.d.ts.map +0 -1
  518. package/dist/runtime/events.js.map +0 -1
  519. package/dist/runtime/execution-model.d.ts.map +0 -1
  520. package/dist/runtime/execution-model.js.map +0 -1
  521. package/dist/runtime/fastlane.d.ts.map +0 -1
  522. package/dist/runtime/fastlane.js.map +0 -1
  523. package/dist/runtime/for-bench.d.ts.map +0 -1
  524. package/dist/runtime/for-bench.js.map +0 -1
  525. package/dist/runtime/for-internal.d.ts.map +0 -1
  526. package/dist/runtime/for-internal.js.map +0 -1
  527. package/dist/runtime/for-reconcile.d.ts.map +0 -1
  528. package/dist/runtime/for-reconcile.js.map +0 -1
  529. package/dist/runtime/for-scopes.d.ts.map +0 -1
  530. package/dist/runtime/for-scopes.js.map +0 -1
  531. package/dist/runtime/for-signals.d.ts.map +0 -1
  532. package/dist/runtime/for-signals.js.map +0 -1
  533. package/dist/runtime/for-types.d.ts.map +0 -1
  534. package/dist/runtime/lifecycle-operations.d.ts.map +0 -1
  535. package/dist/runtime/lifecycle-operations.js.map +0 -1
  536. package/dist/runtime/perf-metrics.d.ts.map +0 -1
  537. package/dist/runtime/perf-metrics.js.map +0 -1
  538. package/dist/runtime/portal.d.ts.map +0 -1
  539. package/dist/runtime/portal.js.map +0 -1
  540. package/dist/runtime/readable.d.ts.map +0 -1
  541. package/dist/runtime/readable.js.map +0 -1
  542. package/dist/runtime/resource-cell.js.map +0 -1
  543. package/dist/runtime/resource-operation.d.ts.map +0 -1
  544. package/dist/runtime/resource-operation.js.map +0 -1
  545. package/dist/runtime/runtime.d.ts.map +0 -1
  546. package/dist/runtime/runtime.js.map +0 -1
  547. package/dist/runtime/scheduler.d.ts.map +0 -1
  548. package/dist/runtime/scheduler.js.map +0 -1
  549. package/dist/runtime/selector-store.js.map +0 -1
  550. package/dist/runtime/selector.d.ts.map +0 -1
  551. package/dist/runtime/selector.js.map +0 -1
  552. package/dist/runtime/snapshot-source.d.ts.map +0 -1
  553. package/dist/runtime/snapshot-source.js.map +0 -1
  554. package/dist/runtime/state.d.ts.map +0 -1
  555. package/dist/runtime/state.js.map +0 -1
  556. package/dist/ssg/batch-render.js.map +0 -1
  557. package/dist/ssg/create-static-gen.d.ts.map +0 -1
  558. package/dist/ssg/create-static-gen.js.map +0 -1
  559. package/dist/ssg/generate-metadata.js.map +0 -1
  560. package/dist/ssg/generation-plan.js.map +0 -1
  561. package/dist/ssg/incremental-manifest.js.map +0 -1
  562. package/dist/ssg/resolve-ssg-data.js.map +0 -1
  563. package/dist/ssg/route-utils.js.map +0 -1
  564. package/dist/ssg/static-routes.js.map +0 -1
  565. package/dist/ssg/types.d.ts.map +0 -1
  566. package/dist/ssg/write-static-files.js.map +0 -1
  567. package/dist/ssr/attrs.js.map +0 -1
  568. package/dist/ssr/boundaries.js.map +0 -1
  569. package/dist/ssr/component-runtime.js.map +0 -1
  570. package/dist/ssr/context.d.ts.map +0 -1
  571. package/dist/ssr/context.js.map +0 -1
  572. package/dist/ssr/errors.d.ts.map +0 -1
  573. package/dist/ssr/errors.js.map +0 -1
  574. package/dist/ssr/escape.js.map +0 -1
  575. package/dist/ssr/hydration-data.js.map +0 -1
  576. package/dist/ssr/hydration-verify.d.ts.map +0 -1
  577. package/dist/ssr/hydration-verify.js.map +0 -1
  578. package/dist/ssr/index-internal.d.ts.map +0 -1
  579. package/dist/ssr/index-internal.js.map +0 -1
  580. package/dist/ssr/render-keys.js.map +0 -1
  581. package/dist/ssr/render-resolved.d.ts.map +0 -1
  582. package/dist/ssr/render-resolved.js.map +0 -1
  583. package/dist/ssr/render-sync.d.ts.map +0 -1
  584. package/dist/ssr/render-sync.js.map +0 -1
  585. package/dist/ssr/route-policy-resolution.js.map +0 -1
  586. package/dist/ssr/route-render.d.ts.map +0 -1
  587. package/dist/ssr/route-render.js.map +0 -1
  588. package/dist/ssr/sink.d.ts.map +0 -1
  589. package/dist/ssr/sink.js.map +0 -1
  590. package/dist/ssr/types.d.ts.map +0 -1
  591. package/dist/ssr/verify-hydration.js.map +0 -1
  592. package/dist/testing/index.d.ts.map +0 -1
  593. package/dist/testing/index.js.map +0 -1
@@ -28,5 +28,4 @@ interface FormatIdOptions {
28
28
  */
29
29
  declare function formatId(options: FormatIdOptions): string;
30
30
  //#endregion
31
- export { FormatIdOptions, formatId };
32
- //# sourceMappingURL=use-id.d.ts.map
31
+ export { FormatIdOptions, formatId };
@@ -25,5 +25,3 @@ function formatId(options) {
25
25
  }
26
26
  //#endregion
27
27
  export { formatId };
28
-
29
- //# sourceMappingURL=use-id.js.map
package/dist/fx/fx.d.ts CHANGED
@@ -29,5 +29,4 @@ declare function scheduleRetry<T>(fn: () => Promise<T>, options?: RetryOptions):
29
29
  cancel(): void;
30
30
  };
31
31
  //#endregion
32
- export { CancelFn, RetryOptions, debounceEvent, rafEvent, scheduleIdle, scheduleRetry, scheduleTimeout, throttleEvent };
33
- //# sourceMappingURL=fx.d.ts.map
32
+ export { CancelFn, RetryOptions, debounceEvent, rafEvent, scheduleIdle, scheduleRetry, scheduleTimeout, throttleEvent };
package/dist/fx/fx.js CHANGED
@@ -209,5 +209,3 @@ function scheduleRetry(fn, options) {
209
209
  }
210
210
  //#endregion
211
211
  export { debounceEvent, rafEvent, scheduleIdle, scheduleRetry, scheduleTimeout, throttleEvent };
212
-
213
- //# sourceMappingURL=fx.js.map
package/dist/fx/noop.js CHANGED
@@ -5,5 +5,3 @@ const noopEventListenerWithFlush = Object.assign((_ev) => {}, {
5
5
  });
6
6
  //#endregion
7
7
  export { noopEventListener, noopEventListenerWithFlush };
8
-
9
- //# sourceMappingURL=noop.js.map
@@ -155,5 +155,4 @@ declare function timeout(ms: number): Promise<void>;
155
155
  */
156
156
  declare function retry<T>(fn: () => Promise<T>, options?: RetryOptions): Promise<T>;
157
157
  //#endregion
158
- export { DebounceOptions, RetryOptions, ThrottleOptions, debounce, defer, idle, once, raf, retry, throttle, timeout };
159
- //# sourceMappingURL=timing.d.ts.map
158
+ export { DebounceOptions, RetryOptions, ThrottleOptions, debounce, defer, idle, once, raf, retry, throttle, timeout };
package/dist/fx/timing.js CHANGED
@@ -239,5 +239,3 @@ async function retry(fn, options) {
239
239
  }
240
240
  //#endregion
241
241
  export { debounce, defer, idle, once, raf, retry, throttle, timeout };
242
-
243
- //# sourceMappingURL=timing.js.map
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Props } from "./common/props.js";
2
2
  import { Fragment } from "./common/jsx.js";
3
+ import { jsx, jsxs } from "./jsx-runtime.js";
3
4
  import { State, StateSetter, StateTuple, state } from "./runtime/state.js";
4
5
  import { Context, defineContext, readContext } from "./runtime/context.js";
5
6
  import { getSignal } from "./runtime/component-scope.js";
@@ -9,5 +10,4 @@ import { Selector, selector } from "./runtime/selector.js";
9
10
  import { For, ForProps } from "./control/for.js";
10
11
  import { Show, ShowProps } from "./control/show.js";
11
12
  import { Case, CaseProps, Match, MatchProps } from "./control/case.js";
12
- import { jsx, jsxs } from "./jsx-runtime.js";
13
13
  export { AskrRuntime, type AskrRuntimeOptions, Case, type CaseProps, type Context, type Derived, For, type ForProps, Fragment, Match, type MatchProps, type Props, type RuntimeKeyedReorderDecision, type RuntimeRendererHost, type Selector, Show, type ShowProps, type State, type StateSetter, type StateTuple, createRuntime, defineContext, derive, getDefaultRuntime, getSignal, jsx, jsxs, readContext, selector, state };
package/dist/index.js CHANGED
@@ -22,5 +22,3 @@ import "./jsx-runtime2.js";
22
22
  installRendererBridge();
23
23
  //#endregion
24
24
  export { AskrRuntime, Case, For, Fragment, Match, Show, createRuntime, defineContext, derive, getDefaultRuntime, getSignal, jsx, jsxs, readContext, selector, state };
25
-
26
- //# sourceMappingURL=index.js.map
@@ -19,5 +19,4 @@ declare global {
19
19
  }
20
20
  } //# sourceMappingURL=types.d.ts.map
21
21
  //#endregion
22
- export { Fragment, type JSXComponent, type JSXElement, type JSXElementType };
23
- //# sourceMappingURL=types.d.ts.map
22
+ export { Fragment, type JSXComponent, type JSXElement, type JSXElementType };
@@ -1,5 +1,4 @@
1
1
  import { JSXElement } from "../common/jsx.js";
2
2
  //#region src/jsx/utils.d.ts
3
3
  declare function isElement(value: unknown): value is JSXElement;
4
- declare function cloneElement(element: JSXElement, props: Record<string, unknown>): JSXElement;
5
- //# sourceMappingURL=utils.d.ts.map
4
+ declare function cloneElement(element: JSXElement, props: Record<string, unknown>): JSXElement;
package/dist/jsx/utils.js CHANGED
@@ -15,5 +15,3 @@ function cloneElement(element, props) {
15
15
  }
16
16
  //#endregion
17
17
  export { cloneElement, isElement };
18
-
19
- //# sourceMappingURL=utils.js.map
@@ -1,12 +1,26 @@
1
1
  import { IntrinsicFallbackProps, KnownIntrinsicElementProps, Props } from "./common/props.js";
2
2
  import { Fragment, JSXComponent, JSXElement, JSXElementType } from "./common/jsx.js";
3
3
  import { EagerControlPrimitive } from "./common/control.js";
4
+
4
5
  //#region src/jsx/jsx-dev-runtime.d.ts
6
+ declare namespace JSX {
7
+ interface Element extends JSXElement {
8
+ readonly __askrJsxElementBrand?: never;
9
+ }
10
+ interface IntrinsicElements extends KnownIntrinsicElementProps {
11
+ [elem: string]: IntrinsicFallbackProps | KnownIntrinsicElementProps[keyof KnownIntrinsicElementProps];
12
+ }
13
+ interface ElementAttributesProperty {
14
+ props: Props;
15
+ }
16
+ interface ElementChildrenAttribute {
17
+ children: unknown;
18
+ }
19
+ }
5
20
  declare function jsxDEV(type: EagerControlPrimitive, props: Props | null, key?: string | number, isStaticChildren?: boolean): unknown;
6
21
  declare function jsxDEV<TTag extends keyof KnownIntrinsicElementProps>(type: TTag, props: KnownIntrinsicElementProps[TTag] | null, key?: string | number, isStaticChildren?: boolean): JSXElement;
7
22
  declare function jsxDEV<TTag extends string>(type: Exclude<TTag, keyof KnownIntrinsicElementProps>, props: IntrinsicFallbackProps | null, key?: string | number, isStaticChildren?: boolean): JSXElement;
8
23
  declare function jsxDEV<TProps extends object>(type: (props: TProps) => unknown, props: TProps | null, key?: string | number, isStaticChildren?: boolean): JSXElement;
9
24
  declare function jsxDEV(type: symbol, props: Props | null, key?: string | number, isStaticChildren?: boolean): JSXElement;
10
25
  //#endregion
11
- export { Fragment, type JSXComponent, type JSXElement, type JSXElementType, jsxDEV };
12
- //# sourceMappingURL=jsx-dev-runtime.d.ts.map
26
+ export { Fragment, JSX, type JSXComponent, type JSXElement, type JSXElementType, jsxDEV };
@@ -1,19 +1,12 @@
1
1
  import { isEagerControlPrimitive } from "./common/control.js";
2
- import { ELEMENT_TYPE, Fragment, STATIC_CHILDREN } from "./common/jsx.js";
3
- import { markReadableUsage } from "./runtime/readable.js";
2
+ import { ELEMENT_TYPE, Fragment } from "./common/jsx.js";
3
+ import "./runtime/readable.js";
4
4
  import "./runtime/index.js";
5
5
  import "./jsx/types.js";
6
- //#region src/jsx/jsx-dev-runtime.ts
7
6
  function annotatePropsUsage(props) {
8
- const normalizedProps = props ?? {};
9
- for (const value of Object.values(normalizedProps)) markReadableUsage(value);
10
- return normalizedProps;
7
+ return props ?? {};
11
8
  }
12
9
  function markStaticChildren(props) {
13
- if (Array.isArray(props.children)) Object.defineProperty(props.children, STATIC_CHILDREN, {
14
- value: true,
15
- configurable: true
16
- });
17
10
  return props;
18
11
  }
19
12
  function jsxDEV(type, props, key, isStaticChildren = false) {
@@ -29,5 +22,3 @@ function jsxDEV(type, props, key, isStaticChildren = false) {
29
22
  }
30
23
  //#endregion
31
24
  export { Fragment, jsxDEV };
32
-
33
- //# sourceMappingURL=jsx-dev-runtime.js.map
@@ -1,7 +1,22 @@
1
1
  import { IntrinsicFallbackProps, KnownIntrinsicElementProps, Props } from "./common/props.js";
2
2
  import { Fragment, JSXComponent, JSXElement, JSXElementType } from "./common/jsx.js";
3
3
  import { EagerControlPrimitive } from "./common/control.js";
4
+
4
5
  //#region src/jsx/jsx-runtime.d.ts
6
+ declare namespace JSX {
7
+ interface Element extends JSXElement {
8
+ readonly __askrJsxElementBrand?: never;
9
+ }
10
+ interface IntrinsicElements extends KnownIntrinsicElementProps {
11
+ [elem: string]: IntrinsicFallbackProps | KnownIntrinsicElementProps[keyof KnownIntrinsicElementProps];
12
+ }
13
+ interface ElementAttributesProperty {
14
+ props: Props;
15
+ }
16
+ interface ElementChildrenAttribute {
17
+ children: unknown;
18
+ }
19
+ }
5
20
  declare function jsxDEV(type: EagerControlPrimitive, props: Props | null, key?: string | number, isStaticChildren?: boolean): unknown;
6
21
  declare function jsxDEV<TTag extends keyof KnownIntrinsicElementProps>(type: TTag, props: KnownIntrinsicElementProps[TTag] | null, key?: string | number, isStaticChildren?: boolean): JSXElement;
7
22
  declare function jsxDEV<TTag extends string>(type: Exclude<TTag, keyof KnownIntrinsicElementProps>, props: IntrinsicFallbackProps | null, key?: string | number, isStaticChildren?: boolean): JSXElement;
@@ -18,5 +33,4 @@ declare function jsxs<TTag extends string>(type: Exclude<TTag, keyof KnownIntrin
18
33
  declare function jsxs<TProps extends object>(type: (props: TProps) => unknown, props: TProps | null, key?: string | number): JSXElement;
19
34
  declare function jsxs(type: symbol, props: Props | null, key?: string | number): JSXElement;
20
35
  //#endregion
21
- export { Fragment, type JSXComponent, type JSXElement, type JSXElementType, jsx, jsxDEV, jsxs };
22
- //# sourceMappingURL=jsx-runtime.d.ts.map
36
+ export { Fragment, JSX, type JSXComponent, type JSXElement, type JSXElementType, jsx, jsxDEV, jsxs };
@@ -1,38 +1,31 @@
1
1
  import { isEagerControlPrimitive } from "./common/control.js";
2
- import { ELEMENT_TYPE, Fragment, STATIC_CHILDREN } from "./common/jsx.js";
3
- import { markReadableUsage } from "./runtime/readable.js";
2
+ import { ELEMENT_TYPE, Fragment } from "./common/jsx.js";
3
+ import "./runtime/readable.js";
4
4
  import "./runtime/index.js";
5
5
  import "./jsx/types.js";
6
- //#region src/jsx/jsx-runtime.ts
7
- function annotatePropsUsage(props) {
8
- const normalizedProps = props ?? {};
9
- for (const value of Object.values(normalizedProps)) markReadableUsage(value);
10
- return normalizedProps;
11
- }
12
- function markStaticChildren(props) {
13
- if (Array.isArray(props.children)) Object.defineProperty(props.children, STATIC_CHILDREN, {
14
- value: true,
15
- configurable: true
16
- });
17
- return props;
18
- }
19
6
  function jsxDEV(type, props, key, isStaticChildren = false) {
20
- const normalizedProps = annotatePropsUsage(props);
21
- const preparedProps = isStaticChildren ? markStaticChildren(normalizedProps) : normalizedProps;
22
- if (isEagerControlPrimitive(type)) return type(preparedProps);
7
+ const normalizedProps = props ?? {};
8
+ if (typeof type === "function" && isEagerControlPrimitive(type)) return type(normalizedProps);
23
9
  return {
24
10
  $$typeof: ELEMENT_TYPE,
25
11
  type,
26
- props: preparedProps,
12
+ props: normalizedProps,
27
13
  key: key ?? null
28
14
  };
29
15
  }
30
16
  function jsx(type, props, key) {
31
- return jsxDEV(type, props, key);
17
+ const normalizedProps = props ?? {};
18
+ if (typeof type === "function" && isEagerControlPrimitive(type)) return type(normalizedProps);
19
+ return {
20
+ $$typeof: ELEMENT_TYPE,
21
+ type,
22
+ props: normalizedProps,
23
+ key: key ?? null
24
+ };
32
25
  }
33
26
  function jsxs(type, props, key) {
34
- const normalizedProps = markStaticChildren(annotatePropsUsage(props));
35
- if (isEagerControlPrimitive(type)) return type(normalizedProps);
27
+ const normalizedProps = props ?? {};
28
+ if (typeof type === "function" && isEagerControlPrimitive(type)) return type(normalizedProps);
36
29
  return {
37
30
  $$typeof: ELEMENT_TYPE,
38
31
  type,
@@ -42,5 +35,3 @@ function jsxs(type, props, key) {
42
35
  }
43
36
  //#endregion
44
37
  export { Fragment, jsx, jsxDEV, jsxs };
45
-
46
- //# sourceMappingURL=jsx-runtime.js.map
@@ -1,3 +1,3 @@
1
1
  import { Fragment, JSXComponent, JSXElement, JSXElementType } from "./common/jsx.js";
2
- import { jsx, jsxDEV, jsxs } from "./jsx-runtime.js";
2
+ import { JSX, jsx, jsxDEV, jsxs } from "./jsx-runtime.js";
3
3
  export { Fragment, jsx, jsxs };
@@ -174,7 +174,10 @@ function applyScalarPropValue(el, key, value, tagName, previousValue, descriptor
174
174
  }
175
175
  function removeStaleAttributes(el, vnode, props) {
176
176
  const desiredAttributes = /* @__PURE__ */ new Set();
177
- if (extractKey(vnode) !== void 0) desiredAttributes.add("data-key");
177
+ if (extractKey(vnode) !== void 0) {
178
+ desiredAttributes.add("data-key");
179
+ desiredAttributes.add("data-askr-key-kind");
180
+ }
178
181
  for (const propName in props) {
179
182
  if (isSkippedProp(propName)) continue;
180
183
  if (parseEventName(propName)) continue;
@@ -190,15 +193,30 @@ function materializeKey(el, vnode, props) {
190
193
  if (vnodeKey !== void 0) {
191
194
  const nextKey = String(vnodeKey);
192
195
  if (el.getAttribute("data-key") !== nextKey) el.setAttribute("data-key", nextKey);
196
+ const keyKind = typeof vnodeKey;
197
+ if (el.getAttribute("data-askr-key-kind") !== keyKind) el.setAttribute("data-askr-key-kind", keyKind);
193
198
  }
194
199
  }
195
- function hasMatchingStaticProps(el, props, vnodeType) {
200
+ /** @internal Materialize keyed metadata on a newly created or cloned node. */
201
+ function materializeFreshKey(el, vnode, props) {
202
+ const rawKey = vnode.key ?? props.key;
203
+ if (rawKey === null || rawKey === void 0) return;
204
+ const vnodeKey = typeof rawKey === "symbol" ? String(rawKey) : rawKey;
205
+ el.setAttribute("data-key", String(vnodeKey));
206
+ const keyKind = typeof vnodeKey;
207
+ if (el.getAttribute("data-askr-key-kind") !== keyKind) el.setAttribute("data-askr-key-kind", keyKind);
208
+ }
209
+ function hasMatchingStaticPropsInternal(el, props, vnodeType, ignoreEventProps) {
196
210
  let staticPropCount = 0;
197
211
  for (const key in props) {
198
212
  if (isSkippedProp(key)) continue;
199
213
  const value = props[key];
200
214
  if (value === void 0 || value === null || value === false) return false;
201
- if (parseEventName(key) || typeof value === "function") return false;
215
+ if (parseEventName(key)) {
216
+ if (ignoreEventProps) continue;
217
+ return false;
218
+ }
219
+ if (typeof value === "function") return false;
202
220
  if (key === "class" || key === "className") {
203
221
  if (readElementClassName(el) !== String(value)) return false;
204
222
  staticPropCount += 1;
@@ -226,7 +244,11 @@ function hasMatchingStaticProps(el, props, vnodeType) {
226
244
  }
227
245
  return el.attributes.length === staticPropCount;
228
246
  }
247
+ function hasMatchingStaticProps(el, props, vnodeType) {
248
+ return hasMatchingStaticPropsInternal(el, props, vnodeType, false);
249
+ }
250
+ function hasMatchingStaticPropsIgnoringEvents(el, props, vnodeType) {
251
+ return hasMatchingStaticPropsInternal(el, props, vnodeType, true);
252
+ }
229
253
  //#endregion
230
- export { applyClassPropValue, applyFormControlProp, applyScalarPropValue, applyStaticScalarPropsToElement, applyStylePropValue, hasMatchingStaticProps, materializeKey, removeStaleAttributes };
231
-
232
- //# sourceMappingURL=attributes.js.map
254
+ export { applyClassPropValue, applyFormControlProp, applyScalarPropValue, applyStaticScalarPropsToElement, applyStylePropValue, hasMatchingStaticProps, hasMatchingStaticPropsIgnoringEvents, materializeFreshKey, materializeKey, removeStaleAttributes };
@@ -1,87 +1,29 @@
1
- import { __FOR_BOUNDARY__, _isDOMElement } from "../common/vnode.js";
2
- import "./types.js";
1
+ import { __FOR_BOUNDARY__ } from "../common/vnode.js";
3
2
  import { getRuntimeEnv } from "../common/env.js";
4
- import { logger } from "../common/logger.js";
5
3
  import { enqueueRuntimeTask } from "../runtime/access.js";
6
- import { clearCaseDomUpdateState, clearShowDomUpdateState, evaluateCaseState, evaluateShowState } from "../runtime/control.js";
4
+ import { beginLifecycleCommitBatch, discardLifecycleCommitBatch, flushLifecycleCommitBatch } from "../runtime/lifecycle-batch.js";
7
5
  import { recordBenchEvent } from "../runtime/for-bench.js";
8
- import { clearForDomUpdateState, evaluateForState } from "../runtime/for-internal.js";
9
6
  import "../runtime/index.js";
10
7
  import { teardownNodeSubtree } from "./cleanup.js";
11
8
  import "./env.js";
12
- import { tagNamesEqualIgnoreCase } from "./utils.js";
13
9
  import { keyedElements } from "./keyed.js";
10
+ import { getRangeNodes, insertRangeBefore, rangeContains, removeRange } from "./dom-range.js";
14
11
  import { commitForStateBoundaryChildren } from "./for-commit.js";
15
- import { getParentNamespace } from "./namespaces.js";
12
+ import { configureBoundaryRangeHost } from "./boundary-range-adoption.js";
13
+ import { syncControlBoundaryInMixedParent, syncControlBoundaryScopeDom, syncControlBoundaryScopeNode } from "./boundary-range-sync.js";
14
+ import { clearControlBoundaryDomUpdateState, evaluateControlBoundaryState, getControlBoundaryCommitChildren, getControlBoundaryState, getDirectControlBoundaryVNode } from "./boundary-state.js";
15
+ import { createForBoundary } from "./boundary-materialization.js";
16
16
  //#region src/renderer/boundaries.ts
17
17
  let boundaryDOMHost = null;
18
18
  const controlBoundaryOwners = /* @__PURE__ */ new WeakMap();
19
19
  function configureBoundaryDOMHost(host) {
20
20
  boundaryDOMHost = host;
21
+ configureBoundaryRangeHost(host);
21
22
  }
22
23
  function getBoundaryDOMHost() {
23
24
  if (!boundaryDOMHost) throw new Error("[askr] Control boundary DOM host is not configured.");
24
25
  return boundaryDOMHost;
25
26
  }
26
- function checkVNodeShapeChanged(dom, vnode) {
27
- if (!_isDOMElement(vnode)) return true;
28
- if (!(dom instanceof Element)) return true;
29
- const vnodeType = vnode.type;
30
- if (typeof vnodeType !== "string") return true;
31
- return dom.tagName.toLowerCase() !== vnodeType.toLowerCase();
32
- }
33
- function materializeChildScopeDom(vnode, parentNamespace) {
34
- if (vnode === null || vnode === void 0 || vnode === false) return document.createComment("");
35
- const dom = getBoundaryDOMHost().createDOMNode(vnode, parentNamespace);
36
- if (!(dom instanceof DocumentFragment)) return dom;
37
- const firstChild = dom.firstChild;
38
- const secondChild = firstChild?.nextSibling ?? null;
39
- if (!firstChild) return document.createComment("");
40
- if (secondChild) throw new Error("[askr] Child scopes must render a single DOM root node.");
41
- return firstChild;
42
- }
43
- function evaluateControlBoundaryState(controlState) {
44
- if (controlState.kind === "for") return evaluateForState(controlState);
45
- if (controlState.kind === "show") return evaluateShowState(controlState);
46
- return evaluateCaseState(controlState);
47
- }
48
- function clearControlBoundaryDomUpdateState(controlState) {
49
- if (controlState.kind === "for") {
50
- clearForDomUpdateState(controlState);
51
- return;
52
- }
53
- if (controlState.kind === "show") {
54
- clearShowDomUpdateState(controlState);
55
- return;
56
- }
57
- clearCaseDomUpdateState(controlState);
58
- }
59
- function getControlBoundaryState(node) {
60
- return node._controlState ?? node._forState ?? null;
61
- }
62
- function getDirectControlBoundaryVNode(children) {
63
- if (!Array.isArray(children) && _isDOMElement(children) && children.type === __FOR_BOUNDARY__) return children;
64
- if (Array.isArray(children) && children.length === 1 && _isDOMElement(children[0]) && children[0].type === __FOR_BOUNDARY__) return children[0];
65
- return null;
66
- }
67
- function getControlBoundaryCommitChildren(controlState) {
68
- if (controlState.kind === "for" && controlState._needsSourceReconcile) return evaluateForState(controlState);
69
- if (controlState.kind !== "for") {
70
- const activeVNode = controlState.activeScope?.vnode;
71
- return activeVNode == null || activeVNode === false ? [] : [activeVNode];
72
- }
73
- if (controlState.orderedKeys.length === 0) {
74
- const fallbackVNode = controlState.fallbackScope?.vnode;
75
- return fallbackVNode == null || fallbackVNode === false ? [] : [fallbackVNode];
76
- }
77
- const childrenVNodes = [];
78
- for (let index = 0; index < controlState.orderedKeys.length; index += 1) {
79
- const itemKey = controlState.orderedKeys[index];
80
- const itemInstance = controlState.items.get(itemKey);
81
- childrenVNodes.push(itemInstance?.scope.vnode ?? null);
82
- }
83
- return childrenVNodes;
84
- }
85
27
  function clearControlBoundaryCommitOwner(parent) {
86
28
  const owner = controlBoundaryOwners.get(parent);
87
29
  if (owner) {
@@ -109,110 +51,30 @@ function registerControlBoundaryCommitOwner(parent, controlState) {
109
51
  enqueueRuntimeTask(() => {
110
52
  controlState._hasPendingBoundaryCommit = false;
111
53
  if (controlBoundaryOwners.get(parent) !== controlState) return;
112
- commitForBoundaryChildren(parent, controlState, getControlBoundaryCommitChildren(controlState));
54
+ const lifecycleBatch = beginLifecycleCommitBatch();
55
+ try {
56
+ commitForBoundaryChildren(parent, controlState, getControlBoundaryCommitChildren(controlState));
57
+ flushLifecycleCommitBatch(lifecycleBatch);
58
+ } catch (error) {
59
+ discardLifecycleCommitBatch(lifecycleBatch);
60
+ throw error;
61
+ }
113
62
  });
114
63
  };
115
64
  }
116
- /**
117
- * Create DOM from For/Show/Case control boundaries.
118
- *
119
- * DOM order is reconstructed from the current vnode list on every render.
120
- * Reusing DOM nodes never implies preserving their position; appending an
121
- * existing node to the fragment expresses reordering per the DOM spec.
122
- */
123
- function createForBoundary(node, props, parentNamespace) {
124
- const controlState = getControlBoundaryState(node);
125
- if (!controlState) {
126
- if (getRuntimeEnv().NODE_ENV !== "production") logger.warn("[Askr] Control boundary missing state");
127
- return document.createDocumentFragment();
128
- }
129
- const childrenVNodes = evaluateControlBoundaryState(controlState);
130
- const fragment = document.createDocumentFragment();
131
- if (controlState.kind !== "for") {
132
- const activeScope = controlState.activeScope;
133
- const vnode = childrenVNodes[0];
134
- if (activeScope && vnode !== void 0) {
135
- const dom = materializeChildScopeDom(vnode, parentNamespace);
136
- activeScope.dom = dom ?? void 0;
137
- if (dom) fragment.appendChild(dom);
138
- }
139
- clearControlBoundaryDomUpdateState(controlState);
140
- return fragment;
141
- }
142
- const forState = controlState;
143
- if (forState.orderedKeys.length === 0) {
144
- const fallbackScope = forState.fallbackScope;
145
- const fallbackVNode = childrenVNodes[0];
146
- if (fallbackScope && fallbackVNode !== void 0) {
147
- const dom = materializeChildScopeDom(fallbackVNode, parentNamespace);
148
- fallbackScope.dom = dom ?? void 0;
149
- if (dom) fragment.appendChild(dom);
150
- }
151
- clearControlBoundaryDomUpdateState(controlState);
152
- return fragment;
153
- }
154
- for (let i = 0; i < childrenVNodes.length; i++) {
155
- const childVNode = childrenVNodes[i];
156
- const itemKey = forState.orderedKeys[i];
157
- const itemInstance = itemKey != null ? forState.items.get(itemKey) : null;
158
- let dom = null;
159
- if (itemInstance && itemInstance.scope.dom) {
160
- const cachedDom = itemInstance.scope.dom;
161
- if (!checkVNodeShapeChanged(cachedDom, childVNode)) dom = cachedDom;
162
- }
163
- if (!dom) {
164
- dom = materializeChildScopeDom(childVNode, parentNamespace);
165
- if (itemInstance) itemInstance.scope.dom = dom ?? void 0;
166
- }
167
- if (dom) fragment.appendChild(dom);
168
- }
169
- clearControlBoundaryDomUpdateState(controlState);
170
- return fragment;
171
- }
172
- function syncControlBoundaryScopeDom(parent, scope, vnode) {
173
- let dom = scope.dom ?? null;
174
- const parentNamespace = getParentNamespace(parent);
175
- const host = getBoundaryDOMHost();
176
- if (_isDOMElement(vnode) && typeof vnode.type === "function") {
177
- const syncedComponentDom = host.syncComponentElement(dom, vnode, vnode.type, vnode.props ?? {}, parentNamespace);
178
- if (syncedComponentDom) {
179
- scope.dom = syncedComponentDom ?? void 0;
180
- return syncedComponentDom;
181
- }
182
- }
183
- if (!dom) {
184
- dom = materializeChildScopeDom(vnode, parentNamespace);
185
- scope.dom = dom ?? void 0;
186
- return dom;
187
- }
188
- if (dom.nodeType === 3 && (typeof vnode === "string" || typeof vnode === "number")) {
189
- dom.data = String(vnode);
190
- return dom;
191
- }
192
- if (dom.nodeType === 8 && (vnode === null || vnode === void 0 || vnode === false)) return dom;
193
- if (dom instanceof Element && _isDOMElement(vnode) && typeof vnode.type === "string" && tagNamesEqualIgnoreCase(dom.tagName, vnode.type)) {
194
- host.updateElementFromVnode(dom, vnode, true);
195
- return dom;
196
- }
197
- const nextDom = materializeChildScopeDom(vnode, parentNamespace);
198
- if (!nextDom) {
199
- if (dom.parentNode === parent) {
200
- teardownNodeSubtree(dom);
201
- dom.parentNode.removeChild(dom);
202
- }
203
- scope.dom = void 0;
204
- return null;
205
- }
206
- if (dom.parentNode === parent) parent.replaceChild(nextDom, dom);
207
- teardownNodeSubtree(dom);
208
- scope.dom = nextDom;
209
- return nextDom;
210
- }
211
65
  function commitForBoundaryChildren(parent, controlState, childrenVNodes) {
212
66
  if (controlState.kind !== "for") {
213
67
  const activeScope = controlState.activeScope;
214
68
  const activeVNode = childrenVNodes[0];
215
- const nextDom = activeScope && activeVNode !== void 0 ? syncControlBoundaryScopeDom(parent, activeScope, activeVNode) : null;
69
+ const nextDom = activeScope && activeVNode !== void 0 ? syncControlBoundaryScopeDom(parent, activeScope, activeVNode, parent.firstChild, controlState.lastRemovedRanges.length === 0) : null;
70
+ for (const removedRange of controlState.lastRemovedRanges) removeRange(removedRange, (node) => {
71
+ if (!removedRange.single && (node === removedRange.start || node === removedRange.end)) {
72
+ node.parentNode?.removeChild(node);
73
+ return;
74
+ }
75
+ teardownNodeSubtree(node);
76
+ node.parentNode?.removeChild(node);
77
+ });
216
78
  for (let i = 0; i < controlState.lastRemovedNodes.length; i++) {
217
79
  const removedNode = controlState.lastRemovedNodes[i];
218
80
  if (removedNode instanceof Element) teardownNodeSubtree(removedNode);
@@ -222,7 +84,14 @@ function commitForBoundaryChildren(parent, controlState, childrenVNodes) {
222
84
  }
223
85
  }
224
86
  if (nextDom) {
225
- if (parent.childNodes.length !== 1 || parent.firstChild !== nextDom || controlState.lastRemovedNodes.length > 0) parent.replaceChildren(nextDom);
87
+ if (parent.childNodes.length !== (nextDom.single ? 1 : getRangeNodes(nextDom).length + 2) || parent.firstChild !== nextDom.start || controlState.lastRemovedNodes.length > 0 || controlState.lastRemovedRanges.length > 0) {
88
+ const nodes = nextDom.single ? [nextDom.start] : [
89
+ nextDom.start,
90
+ ...getRangeNodes(nextDom),
91
+ nextDom.end
92
+ ];
93
+ parent.replaceChildren(...nodes);
94
+ }
226
95
  } else if (parent.firstChild) parent.textContent = "";
227
96
  keyedElements.delete(parent);
228
97
  clearControlBoundaryDomUpdateState(controlState);
@@ -230,7 +99,7 @@ function commitForBoundaryChildren(parent, controlState, childrenVNodes) {
230
99
  }
231
100
  commitForStateBoundaryChildren(parent, controlState, childrenVNodes, {
232
101
  isProduction: () => getRuntimeEnv().NODE_ENV === "production",
233
- syncForItemDom: syncControlBoundaryScopeDom,
102
+ syncForItemDom: syncControlBoundaryScopeNode,
234
103
  tryPatchStableForDirtyItem: (scope) => getBoundaryDOMHost().tryPatchStableForDirtyItem(scope)
235
104
  });
236
105
  }
@@ -242,17 +111,26 @@ function trySyncControlBoundaryChild(parent, currentNode, next) {
242
111
  const activeScope = controlState.activeScope;
243
112
  const activeVNode = childrenVNodes[0];
244
113
  const nextDom = activeScope && activeVNode !== void 0 ? syncControlBoundaryScopeDom(parent, activeScope, activeVNode) : null;
114
+ for (const removedRange of controlState.lastRemovedRanges) removeRange(removedRange, (node) => {
115
+ if (!removedRange.single && (node === removedRange.start || node === removedRange.end)) {
116
+ node.parentNode?.removeChild(node);
117
+ return;
118
+ }
119
+ teardownNodeSubtree(node);
120
+ node.parentNode?.removeChild(node);
121
+ });
245
122
  for (let i = 0; i < controlState.lastRemovedNodes.length; i++) {
246
123
  const removedNode = controlState.lastRemovedNodes[i];
247
124
  if (removedNode.parentNode !== parent) continue;
248
125
  teardownNodeSubtree(removedNode);
249
- if (nextDom && nextDom !== removedNode && !nextDom.parentNode) parent.replaceChild(nextDom, removedNode);
126
+ if (nextDom && !rangeContains(nextDom, removedNode) && !nextDom.start.parentNode) insertRangeBefore(parent, nextDom, removedNode);
250
127
  else parent.removeChild(removedNode);
251
128
  }
252
- if (nextDom && !nextDom.parentNode) if (currentNode?.parentNode === parent) {
129
+ if (nextDom && nextDom.start.parentNode !== parent) if (currentNode?.parentNode === parent && !rangeContains(nextDom, currentNode)) {
253
130
  teardownNodeSubtree(currentNode);
254
- parent.replaceChild(nextDom, currentNode);
255
- } else parent.appendChild(nextDom);
131
+ insertRangeBefore(parent, nextDom, currentNode);
132
+ currentNode.parentNode?.removeChild(currentNode);
133
+ } else insertRangeBefore(parent, nextDom);
256
134
  else if (!nextDom && currentNode?.parentNode === parent) {
257
135
  teardownNodeSubtree(currentNode);
258
136
  parent.removeChild(currentNode);
@@ -261,6 +139,4 @@ function trySyncControlBoundaryChild(parent, currentNode, next) {
261
139
  return true;
262
140
  }
263
141
  //#endregion
264
- export { clearControlBoundaryCommitOwner, commitForBoundaryChildren, configureBoundaryDOMHost, createForBoundary, evaluateControlBoundaryState, getControlBoundaryState, getDirectControlBoundaryVNode, registerControlBoundaryCommitOwner, syncControlBoundaryScopeDom, trySyncControlBoundaryChild };
265
-
266
- //# sourceMappingURL=boundaries.js.map
142
+ export { clearControlBoundaryCommitOwner, commitForBoundaryChildren, configureBoundaryDOMHost, createForBoundary, evaluateControlBoundaryState, getControlBoundaryState, getDirectControlBoundaryVNode, registerControlBoundaryCommitOwner, syncControlBoundaryInMixedParent, syncControlBoundaryScopeDom, trySyncControlBoundaryChild };