@alloy-js/core 0.24.0-dev.1 → 0.24.0-dev.6

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 (532) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/dev/src/components/AccessExpression.test.js +1 -1
  3. package/dist/dev/src/components/AccessExpression.test.js.map +1 -1
  4. package/dist/dev/src/components/Output.js +3 -2
  5. package/dist/dev/src/components/Output.js.map +1 -1
  6. package/dist/dev/src/components/SourceFile.js.map +1 -1
  7. package/dist/dev/src/content-slot.test.js +1 -1
  8. package/dist/dev/src/content-slot.test.js.map +1 -1
  9. package/dist/dev/src/context.js +30 -3
  10. package/dist/dev/src/context.js.map +1 -1
  11. package/dist/dev/src/debug/cli.browser.js +14 -0
  12. package/dist/dev/src/debug/cli.browser.js.map +1 -0
  13. package/dist/dev/src/debug/diagnostics.test.js +1 -1
  14. package/dist/dev/src/debug/diagnostics.test.js.map +1 -1
  15. package/dist/dev/src/debug/effects.test.js +1 -1
  16. package/dist/dev/src/debug/effects.test.js.map +1 -1
  17. package/dist/dev/src/debug/file-streaming.js +103 -0
  18. package/dist/dev/src/debug/file-streaming.js.map +1 -0
  19. package/dist/dev/src/debug/files.test.js +4 -5
  20. package/dist/dev/src/debug/files.test.js.map +1 -1
  21. package/dist/dev/src/debug/index.js +4 -6
  22. package/dist/dev/src/debug/index.js.map +1 -1
  23. package/dist/dev/src/debug/message-format.test.js +50 -52
  24. package/dist/dev/src/debug/message-format.test.js.map +1 -1
  25. package/dist/dev/src/debug/render-tree-orphans.test.js +13 -23
  26. package/dist/dev/src/debug/render-tree-orphans.test.js.map +1 -1
  27. package/dist/dev/src/debug/render.js +529 -352
  28. package/dist/dev/src/debug/render.js.map +1 -1
  29. package/dist/dev/src/debug/render.test.js +171 -92
  30. package/dist/dev/src/debug/render.test.js.map +1 -1
  31. package/dist/dev/src/debug/trace-db.browser.js +11 -0
  32. package/dist/dev/src/debug/trace-db.browser.js.map +1 -0
  33. package/dist/dev/src/debug/trace-db.js +40 -0
  34. package/dist/dev/src/debug/trace-db.js.map +1 -0
  35. package/dist/dev/src/debug/trace-writer.js +130 -39
  36. package/dist/dev/src/debug/trace-writer.js.map +1 -1
  37. package/dist/dev/src/debug/trace.js +0 -36
  38. package/dist/dev/src/debug/trace.js.map +1 -1
  39. package/dist/dev/src/devtools/devtools-server.js +55 -32
  40. package/dist/dev/src/devtools/devtools-server.js.map +1 -1
  41. package/dist/dev/src/devtools-entry.browser.js.map +1 -1
  42. package/dist/dev/src/devtools-entry.js.map +1 -1
  43. package/dist/dev/src/diagnostics.js +19 -1
  44. package/dist/dev/src/diagnostics.js.map +1 -1
  45. package/dist/dev/src/index.js +5 -2
  46. package/dist/dev/src/index.js.map +1 -1
  47. package/dist/dev/src/jsx-runtime.js +14 -8
  48. package/dist/dev/src/jsx-runtime.js.map +1 -1
  49. package/dist/dev/src/output-types.js +2 -0
  50. package/dist/dev/src/output-types.js.map +1 -0
  51. package/dist/dev/src/reactivity.js +155 -13
  52. package/dist/dev/src/reactivity.js.map +1 -1
  53. package/dist/dev/src/render/get-string-width.js +61 -0
  54. package/dist/dev/src/render/get-string-width.js.map +1 -0
  55. package/dist/dev/src/render/index.js +2 -0
  56. package/dist/dev/src/render/index.js.map +1 -0
  57. package/dist/dev/src/render/node-context.js +7 -0
  58. package/dist/dev/src/render/node-context.js.map +1 -0
  59. package/dist/dev/src/render/node.js +386 -0
  60. package/dist/dev/src/render/node.js.map +1 -0
  61. package/dist/dev/src/render/printer-support.js +180 -0
  62. package/dist/dev/src/render/printer-support.js.map +1 -0
  63. package/dist/dev/src/render/printer.js +797 -0
  64. package/dist/dev/src/render/printer.js.map +1 -0
  65. package/dist/dev/src/render-error.js +79 -0
  66. package/dist/dev/src/render-error.js.map +1 -0
  67. package/dist/dev/src/render-output.js +209 -0
  68. package/dist/dev/src/render-output.js.map +1 -0
  69. package/dist/dev/src/runtime/create-intrinsic.js +53 -0
  70. package/dist/dev/src/runtime/create-intrinsic.js.map +1 -0
  71. package/dist/dev/src/runtime/fragment.js +21 -0
  72. package/dist/dev/src/runtime/fragment.js.map +1 -0
  73. package/dist/dev/src/runtime/index.js +13 -0
  74. package/dist/dev/src/runtime/index.js.map +1 -0
  75. package/dist/dev/src/runtime/insert.js +453 -0
  76. package/dist/dev/src/runtime/insert.js.map +1 -0
  77. package/dist/dev/src/runtime/intrinsic.js +1 -11
  78. package/dist/dev/src/runtime/intrinsic.js.map +1 -1
  79. package/dist/dev/src/scheduler.js +38 -14
  80. package/dist/dev/src/scheduler.js.map +1 -1
  81. package/dist/dev/src/stc.js +2 -0
  82. package/dist/dev/src/stc.js.map +1 -1
  83. package/dist/dev/src/sti.js +1 -1
  84. package/dist/dev/src/sti.js.map +1 -1
  85. package/dist/dev/src/symbols/symbol-slot.test.js +1 -1
  86. package/dist/dev/src/symbols/symbol-slot.test.js.map +1 -1
  87. package/dist/dev/src/test-render.js +78 -0
  88. package/dist/dev/src/test-render.js.map +1 -0
  89. package/dist/dev/src/utils.js +47 -35
  90. package/dist/dev/src/utils.js.map +1 -1
  91. package/dist/dev/test/babel-e2e.test.js +218 -0
  92. package/dist/dev/test/babel-e2e.test.js.map +1 -0
  93. package/dist/dev/test/browser-build.test.js +70 -9
  94. package/dist/dev/test/browser-build.test.js.map +1 -1
  95. package/dist/dev/test/components/block.test.js +1 -1
  96. package/dist/dev/test/components/block.test.js.map +1 -1
  97. package/dist/dev/test/components/copy-file.test.js +7 -7
  98. package/dist/dev/test/components/copy-file.test.js.map +1 -1
  99. package/dist/dev/test/components/update-file.test.js +1 -1
  100. package/dist/dev/test/components/update-file.test.js.map +1 -1
  101. package/dist/dev/test/components/wrap.test.js +1 -1
  102. package/dist/dev/test/components/wrap.test.js.map +1 -1
  103. package/dist/dev/test/control-flow/match.test.js +1 -1
  104. package/dist/dev/test/control-flow/match.test.js.map +1 -1
  105. package/dist/dev/test/control-flow/show.test.js +1 -1
  106. package/dist/dev/test/control-flow/show.test.js.map +1 -1
  107. package/dist/dev/test/lazy-isempty.test.js +6 -6
  108. package/dist/dev/test/lazy-isempty.test.js.map +1 -1
  109. package/dist/dev/test/node.test.js +80 -0
  110. package/dist/dev/test/node.test.js.map +1 -0
  111. package/dist/dev/test/output-e2e.test.js +194 -0
  112. package/dist/dev/test/output-e2e.test.js.map +1 -0
  113. package/dist/dev/test/reactivity/circular-reactives.test.js +1 -1
  114. package/dist/dev/test/reactivity/circular-reactives.test.js.map +1 -1
  115. package/dist/dev/test/reactivity/cleanup.test.js +1 -1
  116. package/dist/dev/test/reactivity/cleanup.test.js.map +1 -1
  117. package/dist/dev/test/rendering/memoization.test.js +6 -1
  118. package/dist/dev/test/rendering/memoization.test.js.map +1 -1
  119. package/dist/dev/test/rendering/render-output-diagnostics.test.js +102 -0
  120. package/dist/dev/test/rendering/render-output-diagnostics.test.js.map +1 -0
  121. package/dist/dev/test/runtime.test.js +385 -0
  122. package/dist/dev/test/runtime.test.js.map +1 -0
  123. package/dist/dev/test/tree-test-utils.js +16 -0
  124. package/dist/dev/test/tree-test-utils.js.map +1 -0
  125. package/dist/dev/test/utils.test.js +1 -1
  126. package/dist/dev/test/utils.test.js.map +1 -1
  127. package/dist/dev/testing/devtools-utils.js +1 -1
  128. package/dist/dev/testing/devtools-utils.js.map +1 -1
  129. package/dist/dev/testing/extend-expect.js +7 -33
  130. package/dist/dev/testing/extend-expect.js.map +1 -1
  131. package/dist/dev/testing/render.js +7 -17
  132. package/dist/dev/testing/render.js.map +1 -1
  133. package/dist/devtools/index.html +17 -17
  134. package/dist/src/components/AccessExpression.test.js +1 -1
  135. package/dist/src/components/AccessExpression.test.js.map +1 -1
  136. package/dist/src/components/Output.d.ts +1 -1
  137. package/dist/src/components/Output.d.ts.map +1 -1
  138. package/dist/src/components/Output.js +2 -1
  139. package/dist/src/components/Output.js.map +1 -1
  140. package/dist/src/components/ReferenceOrContent.d.ts +1 -1
  141. package/dist/src/components/ReferenceOrContent.d.ts.map +1 -1
  142. package/dist/src/components/SourceFile.d.ts +1 -1
  143. package/dist/src/components/SourceFile.d.ts.map +1 -1
  144. package/dist/src/components/SourceFile.js.map +1 -1
  145. package/dist/src/content-slot.test.js +1 -1
  146. package/dist/src/content-slot.test.js.map +1 -1
  147. package/dist/src/context/format-options.d.ts +1 -1
  148. package/dist/src/context/format-options.d.ts.map +1 -1
  149. package/dist/src/context.d.ts +9 -1
  150. package/dist/src/context.d.ts.map +1 -1
  151. package/dist/src/context.js +30 -3
  152. package/dist/src/context.js.map +1 -1
  153. package/dist/src/debug/cli.browser.d.ts +13 -0
  154. package/dist/src/debug/cli.browser.d.ts.map +1 -0
  155. package/dist/src/debug/cli.browser.js +14 -0
  156. package/dist/src/debug/cli.browser.js.map +1 -0
  157. package/dist/src/debug/diagnostics.test.js +1 -1
  158. package/dist/src/debug/diagnostics.test.js.map +1 -1
  159. package/dist/src/debug/effects.test.js +1 -1
  160. package/dist/src/debug/effects.test.js.map +1 -1
  161. package/dist/src/debug/file-streaming.d.ts +22 -0
  162. package/dist/src/debug/file-streaming.d.ts.map +1 -0
  163. package/dist/src/debug/file-streaming.js +103 -0
  164. package/dist/src/debug/file-streaming.js.map +1 -0
  165. package/dist/src/debug/files.test.js +4 -5
  166. package/dist/src/debug/files.test.js.map +1 -1
  167. package/dist/src/debug/index.d.ts +5 -7
  168. package/dist/src/debug/index.d.ts.map +1 -1
  169. package/dist/src/debug/index.js +4 -6
  170. package/dist/src/debug/index.js.map +1 -1
  171. package/dist/src/debug/message-format.test.js +16 -18
  172. package/dist/src/debug/message-format.test.js.map +1 -1
  173. package/dist/src/debug/render-tree-orphans.test.js +8 -18
  174. package/dist/src/debug/render-tree-orphans.test.js.map +1 -1
  175. package/dist/src/debug/render.d.ts +71 -21
  176. package/dist/src/debug/render.d.ts.map +1 -1
  177. package/dist/src/debug/render.js +529 -352
  178. package/dist/src/debug/render.js.map +1 -1
  179. package/dist/src/debug/render.test.js +137 -74
  180. package/dist/src/debug/render.test.js.map +1 -1
  181. package/dist/src/debug/trace-db.browser.d.ts +9 -0
  182. package/dist/src/debug/trace-db.browser.d.ts.map +1 -0
  183. package/dist/src/debug/trace-db.browser.js +11 -0
  184. package/dist/src/debug/trace-db.browser.js.map +1 -0
  185. package/dist/src/debug/trace-db.d.ts +16 -0
  186. package/dist/src/debug/trace-db.d.ts.map +1 -0
  187. package/dist/src/debug/trace-db.js +40 -0
  188. package/dist/src/debug/trace-db.js.map +1 -0
  189. package/dist/src/debug/trace-writer.d.ts +6 -1
  190. package/dist/src/debug/trace-writer.d.ts.map +1 -1
  191. package/dist/src/debug/trace-writer.js +130 -39
  192. package/dist/src/debug/trace-writer.js.map +1 -1
  193. package/dist/src/debug/trace.d.ts +0 -36
  194. package/dist/src/debug/trace.d.ts.map +1 -1
  195. package/dist/src/debug/trace.js +0 -36
  196. package/dist/src/debug/trace.js.map +1 -1
  197. package/dist/src/devtools/devtools-protocol.d.ts +34 -1
  198. package/dist/src/devtools/devtools-protocol.d.ts.map +1 -1
  199. package/dist/src/devtools/devtools-server.d.ts.map +1 -1
  200. package/dist/src/devtools/devtools-server.js +55 -32
  201. package/dist/src/devtools/devtools-server.js.map +1 -1
  202. package/dist/src/devtools-entry.browser.d.ts +1 -1
  203. package/dist/src/devtools-entry.browser.d.ts.map +1 -1
  204. package/dist/src/devtools-entry.browser.js.map +1 -1
  205. package/dist/src/devtools-entry.d.ts +1 -1
  206. package/dist/src/devtools-entry.d.ts.map +1 -1
  207. package/dist/src/devtools-entry.js.map +1 -1
  208. package/dist/src/diagnostics.d.ts +4 -0
  209. package/dist/src/diagnostics.d.ts.map +1 -1
  210. package/dist/src/diagnostics.js +19 -1
  211. package/dist/src/diagnostics.js.map +1 -1
  212. package/dist/src/index.d.ts +5 -2
  213. package/dist/src/index.d.ts.map +1 -1
  214. package/dist/src/index.js +5 -2
  215. package/dist/src/index.js.map +1 -1
  216. package/dist/src/jsx-runtime.d.ts +13 -4
  217. package/dist/src/jsx-runtime.d.ts.map +1 -1
  218. package/dist/src/jsx-runtime.js +14 -8
  219. package/dist/src/jsx-runtime.js.map +1 -1
  220. package/dist/src/output-types.d.ts +40 -0
  221. package/dist/src/output-types.d.ts.map +1 -0
  222. package/dist/src/output-types.js +2 -0
  223. package/dist/src/output-types.js.map +1 -0
  224. package/dist/src/reactivity.d.ts +49 -18
  225. package/dist/src/reactivity.d.ts.map +1 -1
  226. package/dist/src/reactivity.js +155 -13
  227. package/dist/src/reactivity.js.map +1 -1
  228. package/dist/src/render/get-string-width.d.ts +19 -0
  229. package/dist/src/render/get-string-width.d.ts.map +1 -0
  230. package/dist/src/render/get-string-width.js +61 -0
  231. package/dist/src/render/get-string-width.js.map +1 -0
  232. package/dist/src/render/index.d.ts +2 -0
  233. package/dist/src/render/index.d.ts.map +1 -0
  234. package/dist/src/render/index.js +2 -0
  235. package/dist/src/render/index.js.map +1 -0
  236. package/dist/src/render/node-context.d.ts +5 -0
  237. package/dist/src/render/node-context.d.ts.map +1 -0
  238. package/dist/src/render/node-context.js +7 -0
  239. package/dist/src/render/node-context.js.map +1 -0
  240. package/dist/src/render/node.d.ts +146 -0
  241. package/dist/src/render/node.d.ts.map +1 -0
  242. package/dist/src/render/node.js +386 -0
  243. package/dist/src/render/node.js.map +1 -0
  244. package/dist/src/render/printer-support.d.ts +50 -0
  245. package/dist/src/render/printer-support.d.ts.map +1 -0
  246. package/dist/src/render/printer-support.js +180 -0
  247. package/dist/src/render/printer-support.js.map +1 -0
  248. package/dist/src/render/printer.d.ts +35 -0
  249. package/dist/src/render/printer.d.ts.map +1 -0
  250. package/dist/src/render/printer.js +797 -0
  251. package/dist/src/render/printer.js.map +1 -0
  252. package/dist/src/render-error.d.ts +4 -0
  253. package/dist/src/render-error.d.ts.map +1 -0
  254. package/dist/src/render-error.js +79 -0
  255. package/dist/src/render-error.js.map +1 -0
  256. package/dist/src/render-output.d.ts +42 -0
  257. package/dist/src/render-output.d.ts.map +1 -0
  258. package/dist/src/render-output.js +209 -0
  259. package/dist/src/render-output.js.map +1 -0
  260. package/dist/src/runtime/component.d.ts +2 -2
  261. package/dist/src/runtime/component.d.ts.map +1 -1
  262. package/dist/src/runtime/create-intrinsic.d.ts +28 -0
  263. package/dist/src/runtime/create-intrinsic.d.ts.map +1 -0
  264. package/dist/src/runtime/create-intrinsic.js +53 -0
  265. package/dist/src/runtime/create-intrinsic.js.map +1 -0
  266. package/dist/src/runtime/fragment.d.ts +16 -0
  267. package/dist/src/runtime/fragment.d.ts.map +1 -0
  268. package/dist/src/runtime/fragment.js +21 -0
  269. package/dist/src/runtime/fragment.js.map +1 -0
  270. package/dist/src/runtime/index.d.ts +12 -0
  271. package/dist/src/runtime/index.d.ts.map +1 -0
  272. package/dist/src/runtime/index.js +13 -0
  273. package/dist/src/runtime/index.js.map +1 -0
  274. package/dist/src/runtime/insert.d.ts +29 -0
  275. package/dist/src/runtime/insert.d.ts.map +1 -0
  276. package/dist/src/runtime/insert.js +453 -0
  277. package/dist/src/runtime/insert.js.map +1 -0
  278. package/dist/src/runtime/intrinsic.d.ts +12 -29
  279. package/dist/src/runtime/intrinsic.d.ts.map +1 -1
  280. package/dist/src/runtime/intrinsic.js +1 -11
  281. package/dist/src/runtime/intrinsic.js.map +1 -1
  282. package/dist/src/scheduler.d.ts.map +1 -1
  283. package/dist/src/scheduler.js +38 -14
  284. package/dist/src/scheduler.js.map +1 -1
  285. package/dist/src/stc.d.ts.map +1 -1
  286. package/dist/src/stc.js +2 -0
  287. package/dist/src/stc.js.map +1 -1
  288. package/dist/src/sti.d.ts +7 -6
  289. package/dist/src/sti.d.ts.map +1 -1
  290. package/dist/src/sti.js +1 -1
  291. package/dist/src/sti.js.map +1 -1
  292. package/dist/src/symbols/symbol-slot.test.js +1 -1
  293. package/dist/src/symbols/symbol-slot.test.js.map +1 -1
  294. package/dist/src/test-render.d.ts +31 -0
  295. package/dist/src/test-render.d.ts.map +1 -0
  296. package/dist/src/test-render.js +78 -0
  297. package/dist/src/test-render.js.map +1 -0
  298. package/dist/src/utils.d.ts +1 -1
  299. package/dist/src/utils.d.ts.map +1 -1
  300. package/dist/src/utils.js +40 -28
  301. package/dist/src/utils.js.map +1 -1
  302. package/dist/src/write-output.d.ts +1 -1
  303. package/dist/src/write-output.d.ts.map +1 -1
  304. package/dist/test/babel-e2e.test.d.ts +13 -0
  305. package/dist/test/babel-e2e.test.d.ts.map +1 -0
  306. package/dist/test/babel-e2e.test.js +218 -0
  307. package/dist/test/babel-e2e.test.js.map +1 -0
  308. package/dist/test/browser-build.test.js +70 -9
  309. package/dist/test/browser-build.test.js.map +1 -1
  310. package/dist/test/components/block.test.js +1 -1
  311. package/dist/test/components/block.test.js.map +1 -1
  312. package/dist/test/components/copy-file.test.d.ts.map +1 -1
  313. package/dist/test/components/copy-file.test.js +1 -1
  314. package/dist/test/components/copy-file.test.js.map +1 -1
  315. package/dist/test/components/update-file.test.js +1 -1
  316. package/dist/test/components/update-file.test.js.map +1 -1
  317. package/dist/test/components/wrap.test.js +1 -1
  318. package/dist/test/components/wrap.test.js.map +1 -1
  319. package/dist/test/control-flow/match.test.js +1 -1
  320. package/dist/test/control-flow/match.test.js.map +1 -1
  321. package/dist/test/control-flow/show.test.js +1 -1
  322. package/dist/test/control-flow/show.test.js.map +1 -1
  323. package/dist/test/lazy-isempty.test.js +6 -6
  324. package/dist/test/lazy-isempty.test.js.map +1 -1
  325. package/dist/test/node.test.d.ts +2 -0
  326. package/dist/test/node.test.d.ts.map +1 -0
  327. package/dist/test/node.test.js +80 -0
  328. package/dist/test/node.test.js.map +1 -0
  329. package/dist/test/output-e2e.test.d.ts +13 -0
  330. package/dist/test/output-e2e.test.d.ts.map +1 -0
  331. package/dist/test/output-e2e.test.js +194 -0
  332. package/dist/test/output-e2e.test.js.map +1 -0
  333. package/dist/test/reactivity/circular-reactives.test.js +1 -1
  334. package/dist/test/reactivity/circular-reactives.test.js.map +1 -1
  335. package/dist/test/reactivity/cleanup.test.js +1 -1
  336. package/dist/test/reactivity/cleanup.test.js.map +1 -1
  337. package/dist/test/rendering/memoization.test.js +6 -1
  338. package/dist/test/rendering/memoization.test.js.map +1 -1
  339. package/dist/test/rendering/render-output-diagnostics.test.d.ts +2 -0
  340. package/dist/test/rendering/render-output-diagnostics.test.d.ts.map +1 -0
  341. package/dist/test/rendering/render-output-diagnostics.test.js +82 -0
  342. package/dist/test/rendering/render-output-diagnostics.test.js.map +1 -0
  343. package/dist/test/runtime.test.d.ts +11 -0
  344. package/dist/test/runtime.test.d.ts.map +1 -0
  345. package/dist/test/runtime.test.js +385 -0
  346. package/dist/test/runtime.test.js.map +1 -0
  347. package/dist/test/tree-test-utils.d.ts +3 -0
  348. package/dist/test/tree-test-utils.d.ts.map +1 -0
  349. package/dist/test/tree-test-utils.js +16 -0
  350. package/dist/test/tree-test-utils.js.map +1 -0
  351. package/dist/test/utils.test.js +1 -1
  352. package/dist/test/utils.test.js.map +1 -1
  353. package/dist/testing/devtools-utils.d.ts.map +1 -1
  354. package/dist/testing/devtools-utils.js +1 -1
  355. package/dist/testing/devtools-utils.js.map +1 -1
  356. package/dist/testing/extend-expect.d.ts.map +1 -1
  357. package/dist/testing/extend-expect.js +7 -33
  358. package/dist/testing/extend-expect.js.map +1 -1
  359. package/dist/testing/render.d.ts +7 -9
  360. package/dist/testing/render.d.ts.map +1 -1
  361. package/dist/testing/render.js +7 -17
  362. package/dist/testing/render.js.map +1 -1
  363. package/dist/tsconfig.tsbuildinfo +1 -1
  364. package/docs/api/components/Output.md +0 -3
  365. package/docs/api/components/SourceFile.md +0 -3
  366. package/docs/api/functions/createComment.md +18 -0
  367. package/docs/api/functions/createElement.md +19 -0
  368. package/docs/api/functions/createFragment.md +17 -0
  369. package/docs/api/functions/createTextNode.md +18 -0
  370. package/docs/api/functions/emitDiagnosticForTree.md +19 -0
  371. package/docs/api/functions/ensureIsEmpty.md +1 -1
  372. package/docs/api/functions/getContextForNode.md +18 -0
  373. package/docs/api/functions/getContextForRenderNode.md +4 -4
  374. package/docs/api/functions/getDiagnosticsForTree.md +7 -5
  375. package/docs/api/functions/getRegisteredDiagnosticsForTree.md +18 -0
  376. package/docs/api/functions/index.md +17 -12
  377. package/docs/api/functions/isCustomContext.md +4 -4
  378. package/docs/api/functions/notifyContentState.md +6 -0
  379. package/docs/api/functions/printTree.md +6 -16
  380. package/docs/api/functions/registerDiagnosticsForTree.md +19 -0
  381. package/docs/api/functions/render.md +1 -2
  382. package/docs/api/functions/renderAsync.md +1 -2
  383. package/docs/api/functions/renderTree.md +8 -5
  384. package/docs/api/functions/reportDiagnosticsForTree.md +18 -0
  385. package/docs/api/functions/runInContext.md +28 -0
  386. package/docs/api/functions/sourceFilesForTree.md +6 -16
  387. package/docs/api/index.md +3 -3
  388. package/docs/api/testing/functions/index.md +1 -1
  389. package/docs/api/testing/functions/renderToString.md +1 -1
  390. package/docs/api/types/AlloyNode.md +22 -0
  391. package/docs/api/types/Child.md +1 -1
  392. package/docs/api/types/CommentNode.md +15 -0
  393. package/docs/api/types/Context.md +13 -15
  394. package/docs/api/types/ElementNode.md +18 -0
  395. package/docs/api/types/FragmentNode.md +12 -0
  396. package/docs/api/types/Insertable.md +7 -0
  397. package/docs/api/types/NodeType.md +5 -0
  398. package/docs/api/types/OutputDirectory.md +0 -50
  399. package/docs/api/types/PrintTreeOptions.md +0 -1
  400. package/docs/api/types/RenderTreeOptions.md +7 -0
  401. package/docs/api/types/StiComponentCreator.md +4 -4
  402. package/docs/api/types/StiSignature.md +1 -1
  403. package/docs/api/types/TextNode.md +16 -0
  404. package/docs/api/types/index.md +10 -28
  405. package/docs/api/variables/COMMENT_NODE.md +5 -0
  406. package/docs/api/variables/ELEMENT_NODE.md +11 -0
  407. package/docs/api/variables/FRAGMENT_NODE.md +5 -0
  408. package/docs/api/variables/TEXT_NODE.md +5 -0
  409. package/docs/api/variables/index.md +4 -2
  410. package/docs/formatting.md +1 -1
  411. package/docs/rendering.md +4 -4
  412. package/package.json +11 -7
  413. package/src/components/AccessExpression.test.tsx +1 -1
  414. package/src/components/Output.tsx +2 -1
  415. package/src/components/SourceFile.tsx +1 -1
  416. package/src/content-slot.test.tsx +1 -1
  417. package/src/context/format-options.ts +1 -1
  418. package/src/context.ts +37 -4
  419. package/src/debug/cli.browser.ts +17 -0
  420. package/src/debug/diagnostics.test.tsx +1 -1
  421. package/src/debug/effects.test.tsx +1 -1
  422. package/src/debug/file-streaming.ts +115 -0
  423. package/src/debug/files.test.tsx +15 -11
  424. package/src/debug/index.ts +11 -11
  425. package/src/debug/message-format.test.tsx +32 -19
  426. package/src/debug/render-tree-orphans.test.tsx +10 -19
  427. package/src/debug/render.test.tsx +206 -78
  428. package/src/debug/render.ts +642 -495
  429. package/src/debug/trace-db.browser.ts +12 -0
  430. package/src/debug/trace-db.ts +42 -0
  431. package/src/debug/trace-writer.ts +173 -41
  432. package/src/debug/trace.ts +0 -20
  433. package/src/devtools/devtools-protocol.ts +43 -0
  434. package/src/devtools/devtools-server.ts +57 -32
  435. package/src/devtools-entry.browser.ts +5 -0
  436. package/src/devtools-entry.ts +5 -0
  437. package/src/diagnostics.ts +31 -0
  438. package/src/index.ts +66 -2
  439. package/src/jsx-runtime.ts +16 -14
  440. package/src/output-types.ts +47 -0
  441. package/src/reactivity.ts +186 -40
  442. package/src/render/get-string-width.ts +201 -0
  443. package/src/render/index.ts +1 -0
  444. package/src/render/node-context.ts +14 -0
  445. package/src/render/node.ts +442 -0
  446. package/src/render/printer-support.ts +209 -0
  447. package/src/render/printer.ts +817 -0
  448. package/src/render-error.ts +98 -0
  449. package/src/render-output.ts +243 -0
  450. package/src/runtime/component.ts +2 -2
  451. package/src/runtime/create-intrinsic.ts +56 -0
  452. package/src/runtime/fragment.ts +22 -0
  453. package/src/runtime/index.ts +12 -0
  454. package/src/runtime/insert.ts +569 -0
  455. package/src/runtime/intrinsic.ts +14 -70
  456. package/src/scheduler.ts +40 -25
  457. package/src/stc.ts +3 -0
  458. package/src/sti.ts +17 -20
  459. package/src/symbols/symbol-slot.test.tsx +1 -1
  460. package/src/test-render.ts +103 -0
  461. package/src/utils.tsx +55 -37
  462. package/src/write-output.ts +1 -1
  463. package/temp/api-testing.json +390 -14
  464. package/temp/api.json +4320 -4144
  465. package/test/babel-e2e.test.ts +224 -0
  466. package/test/browser-build.test.ts +81 -9
  467. package/test/components/block.test.tsx +1 -1
  468. package/test/components/copy-file.test.tsx +2 -1
  469. package/test/components/update-file.test.tsx +1 -1
  470. package/test/components/wrap.test.tsx +1 -1
  471. package/test/control-flow/match.test.tsx +1 -1
  472. package/test/control-flow/show.test.tsx +1 -1
  473. package/test/lazy-isempty.test.tsx +6 -6
  474. package/test/node.test.ts +90 -0
  475. package/test/output-e2e.test.ts +198 -0
  476. package/test/reactivity/circular-reactives.test.tsx +1 -1
  477. package/test/reactivity/cleanup.test.tsx +1 -1
  478. package/test/rendering/memoization.test.tsx +6 -1
  479. package/test/rendering/render-output-diagnostics.test.tsx +120 -0
  480. package/test/runtime.test.ts +448 -0
  481. package/test/tree-test-utils.ts +23 -0
  482. package/test/utils.test.tsx +1 -1
  483. package/testing/devtools-utils.ts +2 -0
  484. package/testing/extend-expect.ts +8 -46
  485. package/testing/render.ts +17 -21
  486. package/dist/dev/src/print-hook.js +0 -10
  487. package/dist/dev/src/print-hook.js.map +0 -1
  488. package/dist/dev/src/render.js +0 -872
  489. package/dist/dev/src/render.js.map +0 -1
  490. package/dist/src/print-hook.d.ts +0 -14
  491. package/dist/src/print-hook.d.ts.map +0 -1
  492. package/dist/src/print-hook.js +0 -10
  493. package/dist/src/print-hook.js.map +0 -1
  494. package/dist/src/render.d.ts +0 -155
  495. package/dist/src/render.d.ts.map +0 -1
  496. package/dist/src/render.js +0 -872
  497. package/dist/src/render.js.map +0 -1
  498. package/docs/api/functions/createIntrinsic.md +0 -19
  499. package/docs/api/functions/createRenderTreeHook.md +0 -19
  500. package/docs/api/functions/getElementCache.md +0 -17
  501. package/docs/api/functions/isIntrinsicElement.md +0 -18
  502. package/docs/api/functions/isPrintHook.md +0 -18
  503. package/docs/api/types/AlignIntrinsicElement.md +0 -5
  504. package/docs/api/types/BrIntrinsicElement.md +0 -5
  505. package/docs/api/types/BreakParentIntrinsicElement.md +0 -5
  506. package/docs/api/types/DedentIntrinsicElement.md +0 -5
  507. package/docs/api/types/DedentToRootIntrinsicElement.md +0 -5
  508. package/docs/api/types/ElementCache.md +0 -5
  509. package/docs/api/types/ElementCacheKey.md +0 -5
  510. package/docs/api/types/FillIntrinsicElement.md +0 -5
  511. package/docs/api/types/GroupIntrinsicElement.md +0 -5
  512. package/docs/api/types/HardlineIntrinsicElement.md +0 -5
  513. package/docs/api/types/HbrIntrinsicElement.md +0 -5
  514. package/docs/api/types/IfBreakIntrinsicElement.md +0 -5
  515. package/docs/api/types/IndentIfBreakIntrinsicElement.md +0 -5
  516. package/docs/api/types/IndentIntrinsicElement.md +0 -5
  517. package/docs/api/types/IntrinsicElement.md +0 -5
  518. package/docs/api/types/IntrinsicElementBase.md +0 -9
  519. package/docs/api/types/LbrIntrinsicElement.md +0 -5
  520. package/docs/api/types/LineIntrinsicElement.md +0 -5
  521. package/docs/api/types/LineSuffixBoundaryIntrinsicElement.md +0 -5
  522. package/docs/api/types/LineSuffixIntrinsicElement.md +0 -5
  523. package/docs/api/types/LiterallineIntrinsicElement.md +0 -5
  524. package/docs/api/types/MarkAsRootIntrinsicElement.md +0 -5
  525. package/docs/api/types/PrintHook.md +0 -10
  526. package/docs/api/types/RenderedTextTree.md +0 -5
  527. package/docs/api/types/SbrIntrinsicElement.md +0 -5
  528. package/docs/api/types/SoftlineIntrinsicElement.md +0 -5
  529. package/docs/api/variables/intrinsicElementKey.md +0 -5
  530. package/docs/api/variables/printHookTag.md +0 -7
  531. package/src/print-hook.ts +0 -22
  532. package/src/render.ts +0 -1154
@@ -9,13 +9,11 @@
9
9
  import { ALL_CHANNELS, closeTrace, initTrace, isTraceEnabled, queryChannel, setChangeListener } from "../debug/trace-writer.js";
10
10
  import { createTransport, getAlloyVersion } from "./devtools-transport.js";
11
11
 
12
- // ─────────────────────────────────────────────────────────────────────────────
13
- // Public types
14
- // ─────────────────────────────────────────────────────────────────────────────
12
+ // #region Public types
15
13
 
16
- // ─────────────────────────────────────────────────────────────────────────────
17
- // Session state
18
- // ─────────────────────────────────────────────────────────────────────────────
14
+ // #endregion
15
+
16
+ // #region Session state
19
17
 
20
18
  let transportState = null;
21
19
  let transportPromise = null;
@@ -29,9 +27,9 @@ let tempDbPath = null;
29
27
  let subscribedPromise = null;
30
28
  let resolveSubscribed = null;
31
29
 
32
- // ─────────────────────────────────────────────────────────────────────────────
33
- // Per-client subscription state
34
- // ─────────────────────────────────────────────────────────────────────────────
30
+ // #endregion
31
+
32
+ // #region Per-client subscription state
35
33
 
36
34
  const clientStates = new Map();
37
35
  function eventToMessageType(event) {
@@ -42,6 +40,15 @@ function eventToMessageType(event) {
42
40
  removed: "render:node_removed",
43
41
  reset: "render:reset"
44
42
  },
43
+ components: {
44
+ added: "component:added",
45
+ updated: "component:updated",
46
+ removed: "component:removed"
47
+ },
48
+ component_roots: {
49
+ added: "component:root_added",
50
+ removed: "component:root_removed"
51
+ },
45
52
  effects: {
46
53
  added: "effect:added",
47
54
  updated: "effect:updated"
@@ -89,6 +96,8 @@ function eventToMessageType(event) {
89
96
  function channelToInitialMessageType(channel, row) {
90
97
  const map = {
91
98
  render: "render:node_added",
99
+ components: "component:added",
100
+ component_roots: "component:root_added",
92
101
  effects: "effect:added",
93
102
  refs: "ref:added",
94
103
  symbols: "symbol:added",
@@ -124,9 +133,9 @@ function sendInitialState(socket, channels) {
124
133
  }
125
134
  }
126
135
 
127
- // ─────────────────────────────────────────────────────────────────────────────
128
- // Environment helpers
129
- // ─────────────────────────────────────────────────────────────────────────────
136
+ // #endregion
137
+
138
+ // #region Environment helpers
130
139
 
131
140
  function isNodeEnvironment() {
132
141
  return typeof process !== "undefined" && typeof process.versions === "object" && Boolean(process.versions?.node);
@@ -136,12 +145,22 @@ function isNodeEnvironment() {
136
145
  // process.env.ALLOY_DEBUG dynamically must call refreshDebugState() afterward.
137
146
  let _envDebugEnabled = isNodeEnvironment() && Boolean(process.env.ALLOY_DEBUG);
138
147
 
148
+ // Cached value of `devtoolsExplicitlyEnabled || _envDebugEnabled`. This
149
+ // function is called on hot paths (every effect/scheduler tick), so we
150
+ // avoid recomputing the OR + the `isNodeEnvironment` check on every call.
151
+ // The cache is invalidated whenever either underlying flag mutates.
152
+ let _devtoolsEnabledCache = isNodeEnvironment() && _envDebugEnabled;
153
+ function refreshDevtoolsEnabledCache() {
154
+ _devtoolsEnabledCache = isNodeEnvironment() && (devtoolsExplicitlyEnabled || _envDebugEnabled);
155
+ }
156
+
139
157
  /**
140
158
  * Invalidates the cached env-var result for isDevtoolsEnabled(). Call this in
141
159
  * test beforeEach hooks after modifying process.env.ALLOY_DEBUG.
142
160
  */
143
161
  export function refreshDebugState() {
144
162
  _envDebugEnabled = isNodeEnvironment() && Boolean(process.env.ALLOY_DEBUG);
163
+ refreshDevtoolsEnabledCache();
145
164
  }
146
165
  function getCwd() {
147
166
  if (!isNodeEnvironment()) return undefined;
@@ -159,14 +178,13 @@ function resolveDebugPort() {
159
178
  return parsed;
160
179
  }
161
180
 
162
- // ─────────────────────────────────────────────────────────────────────────────
163
- // Query functions
164
- // ─────────────────────────────────────────────────────────────────────────────
181
+ // #endregion
182
+
183
+ // #region Query functions
165
184
 
166
185
  /** Returns true when devtools are enabled (via env var or explicit call). */
167
186
  export function isDevtoolsEnabled() {
168
- if (!isNodeEnvironment()) return false;
169
- return devtoolsExplicitlyEnabled || _envDebugEnabled;
187
+ return _devtoolsEnabledCache;
170
188
  }
171
189
 
172
190
  /** Returns true when a devtools client is currently connected. */
@@ -183,9 +201,9 @@ export function getDevtoolsServerInfo() {
183
201
  };
184
202
  }
185
203
 
186
- // ─────────────────────────────────────────────────────────────────────────────
187
- // Temp SQLite for devtools
188
- // ─────────────────────────────────────────────────────────────────────────────
204
+ // #endregion
205
+
206
+ // #region Temp SQLite for devtools
189
207
 
190
208
  async function ensureSqliteForDevtools() {
191
209
  if (isTraceEnabled()) return;
@@ -215,9 +233,9 @@ async function ensureSqliteForDevtools() {
215
233
  });
216
234
  }
217
235
 
218
- // ─────────────────────────────────────────────────────────────────────────────
219
- // Server lifecycle
220
- // ─────────────────────────────────────────────────────────────────────────────
236
+ // #endregion
237
+
238
+ // #region Server lifecycle
221
239
 
222
240
  async function ensureServer() {
223
241
  if (transportState) return transportState;
@@ -326,9 +344,9 @@ async function ensureServer() {
326
344
  return transportPromise;
327
345
  }
328
346
 
329
- // ─────────────────────────────────────────────────────────────────────────────
330
- // Public API
331
- // ─────────────────────────────────────────────────────────────────────────────
347
+ // #endregion
348
+
349
+ // #region Public API
332
350
 
333
351
  /**
334
352
  * Wait for a devtools client to connect before proceeding.
@@ -347,6 +365,7 @@ async function ensureServer() {
347
365
  */
348
366
  export async function waitForDevtoolsConnection() {
349
367
  devtoolsExplicitlyEnabled = true;
368
+ refreshDevtoolsEnabledCache();
350
369
  const server = await ensureServer();
351
370
  if (!server.connected) {
352
371
  await server.ready;
@@ -366,6 +385,7 @@ export async function waitForDevtoolsConnection() {
366
385
  */
367
386
  export async function enableDevtools(options) {
368
387
  devtoolsExplicitlyEnabled = true;
388
+ refreshDevtoolsEnabledCache();
369
389
  devtoolsInitialized = true;
370
390
  if (options?.port !== undefined) {
371
391
  configuredPort = options.port;
@@ -413,9 +433,9 @@ export async function enableDevtoolsAndConnect(options) {
413
433
  };
414
434
  }
415
435
 
416
- // ─────────────────────────────────────────────────────────────────────────────
417
- // Messaging
418
- // ─────────────────────────────────────────────────────────────────────────────
436
+ // #endregion
437
+
438
+ // #region Messaging
419
439
 
420
440
  /** Register a handler for incoming devtools messages. Returns an unsubscribe function. */
421
441
  export function registerDevtoolsMessageHandler(handler) {
@@ -431,9 +451,9 @@ export function assertDevtoolsConnectedForSyncRender() {
431
451
  }
432
452
  }
433
453
 
434
- // ─────────────────────────────────────────────────────────────────────────────
435
- // Test utilities
436
- // ─────────────────────────────────────────────────────────────────────────────
454
+ // #endregion
455
+
456
+ // #region Test utilities
437
457
 
438
458
  /** Reset all devtools state. For use in tests only. */
439
459
  export async function resetDevtoolsServerForTests() {
@@ -445,6 +465,7 @@ export async function resetDevtoolsServerForTests() {
445
465
  transportState = null;
446
466
  transportPromise = null;
447
467
  devtoolsExplicitlyEnabled = false;
468
+ refreshDevtoolsEnabledCache();
448
469
  devtoolsInitialized = false;
449
470
  configuredPort = undefined;
450
471
  loggedDevtoolsLinks = false;
@@ -455,4 +476,6 @@ export async function resetDevtoolsServerForTests() {
455
476
  // Close the trace DB so each test starts fresh
456
477
  closeTrace();
457
478
  }
479
+
480
+ // #endregion
458
481
  //# sourceMappingURL=devtools-server.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ALL_CHANNELS","closeTrace","initTrace","isTraceEnabled","queryChannel","setChangeListener","createTransport","getAlloyVersion","transportState","transportPromise","messageHandlers","Set","devtoolsExplicitlyEnabled","devtoolsInitialized","loggedDevtoolsLinks","waitingForConnection","configuredPort","tempDbPath","subscribedPromise","resolveSubscribed","clientStates","Map","eventToMessageType","event","map","render","added","updated","removed","reset","effects","refs","edges","data","edge_type","symbols","scopes","files","directories","diagnostics","errors","lifecycle","scheduler","channel","action","channelToInitialMessageType","row","type","sendInitialState","socket","channels","rows","msgType","undefined","effect_type","msg","send","JSON","stringify","isNodeEnvironment","process","versions","Boolean","node","_envDebugEnabled","env","ALLOY_DEBUG","refreshDebugState","getCwd","cwd","resolveDebugPort","raw","ALLOY_DEBUG_PORT","parsed","Number","parseInt","isNaN","isDevtoolsEnabled","isDevtoolsConnected","connected","getDevtoolsServerInfo","port","ensureSqliteForDevtools","os","path","join","tmpdir","pid","on","fs","require","unlinkSync","ensureServer","onConnection","set","subscriptions","Promise","resolve","stdout","write","version","sourceMapEnabled","execArgv","includes","onMessage","message","state","get","Array","isArray","validChannels","filter","ch","delete","handler","onDisconnect","then","signalType","_signal","payload","client","clients","readyState","OPEN","clientState","has","console","log","waitForDevtoolsConnection","server","ready","enableDevtools","options","initDevtoolsIfEnabled","enableDevtoolsAndConnect","info","registerDevtoolsMessageHandler","add","assertDevtoolsConnectedForSyncRender","Error","resetDevtoolsServerForTests","clear","close"],"sources":["../../../../src/devtools/devtools-server.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["ALL_CHANNELS","closeTrace","initTrace","isTraceEnabled","queryChannel","setChangeListener","createTransport","getAlloyVersion","transportState","transportPromise","messageHandlers","Set","devtoolsExplicitlyEnabled","devtoolsInitialized","loggedDevtoolsLinks","waitingForConnection","configuredPort","tempDbPath","subscribedPromise","resolveSubscribed","clientStates","Map","eventToMessageType","event","map","render","added","updated","removed","reset","components","component_roots","effects","refs","edges","data","edge_type","symbols","scopes","files","directories","diagnostics","errors","lifecycle","scheduler","channel","action","channelToInitialMessageType","row","type","sendInitialState","socket","channels","rows","msgType","undefined","effect_type","msg","send","JSON","stringify","isNodeEnvironment","process","versions","Boolean","node","_envDebugEnabled","env","ALLOY_DEBUG","_devtoolsEnabledCache","refreshDevtoolsEnabledCache","refreshDebugState","getCwd","cwd","resolveDebugPort","raw","ALLOY_DEBUG_PORT","parsed","Number","parseInt","isNaN","isDevtoolsEnabled","isDevtoolsConnected","connected","getDevtoolsServerInfo","port","ensureSqliteForDevtools","os","path","join","tmpdir","pid","on","fs","require","unlinkSync","ensureServer","onConnection","set","subscriptions","Promise","resolve","stdout","write","version","sourceMapEnabled","execArgv","includes","onMessage","message","state","get","Array","isArray","validChannels","filter","ch","delete","handler","onDisconnect","then","signalType","_signal","payload","client","clients","readyState","OPEN","clientState","has","console","log","waitForDevtoolsConnection","server","ready","enableDevtools","options","initDevtoolsIfEnabled","enableDevtoolsAndConnect","info","registerDevtoolsMessageHandler","add","assertDevtoolsConnectedForSyncRender","Error","resetDevtoolsServerForTests","clear","close"],"sources":["../../../../src/devtools/devtools-server.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["enableDevtools","enableDevtoolsAndConnect","resetDevtoolsServerForTests","waitForDevtoolsConnection"],"sources":["../../../src/devtools-entry.browser.ts"],"sourcesContent":[null],"mappings":"AAsCA,SACEA,cAAc,EACdC,wBAAwB,EACxBC,2BAA2B,EAC3BC,yBAAyB,QACpB,uCAAuC","ignoreList":[]}
1
+ {"version":3,"names":["enableDevtools","enableDevtoolsAndConnect","resetDevtoolsServerForTests","waitForDevtoolsConnection"],"sources":["../../../src/devtools-entry.browser.ts"],"sourcesContent":[null],"mappings":"AA2CA,SACEA,cAAc,EACdC,wBAAwB,EACxBC,2BAA2B,EAC3BC,yBAAyB,QACpB,uCAAuC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["enableDevtools","enableDevtoolsAndConnect","resetDevtoolsServerForTests","waitForDevtoolsConnection"],"sources":["../../../src/devtools-entry.ts"],"sourcesContent":[null],"mappings":"AAsCA,SACEA,cAAc,EACdC,wBAAwB,EACxBC,2BAA2B,EAC3BC,yBAAyB,QACpB,+BAA+B","ignoreList":[]}
1
+ {"version":3,"names":["enableDevtools","enableDevtoolsAndConnect","resetDevtoolsServerForTests","waitForDevtoolsConnection"],"sources":["../../../src/devtools-entry.ts"],"sourcesContent":[null],"mappings":"AA2CA,SACEA,cAAc,EACdC,wBAAwB,EACxBC,2BAA2B,EAC3BC,yBAAyB,QACpB,+BAA+B","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import { getRenderNodeId } from "./debug/index.js";
2
- import { deleteDiagnostic, insertDiagnostic, isTraceEnabled } from "./debug/trace-writer.js";
2
+ import { deleteDiagnostic, insertDiagnostic, isTraceEnabled, notifyDiagnosticsReport } from "./debug/trace-writer.js";
3
3
  import { getContext } from "./reactivity.js";
4
4
  import { getRenderStackSnapshot } from "./render-stack.js";
5
5
  function buildComponentStack() {
@@ -52,6 +52,24 @@ export class DiagnosticsCollector {
52
52
  }
53
53
  }
54
54
  const DIAGNOSTICS_META_KEY = "diagnostics";
55
+ const diagnosticsByTree = new WeakMap();
56
+ export function registerDiagnosticsForTree(tree, collector) {
57
+ diagnosticsByTree.set(tree, collector);
58
+ }
59
+ export function getRegisteredDiagnosticsForTree(tree) {
60
+ return diagnosticsByTree.get(tree)?.getDiagnostics() ?? [];
61
+ }
62
+ export function emitDiagnosticForTree(tree, input) {
63
+ return diagnosticsByTree.get(tree)?.emit(input) ?? emitDiagnostic(input);
64
+ }
65
+ export function reportDiagnosticsForTree(tree) {
66
+ const collector = diagnosticsByTree.get(tree);
67
+ if (!collector) return;
68
+ const diagnostics = collector.getDiagnostics();
69
+ if (diagnostics.length === 0) return;
70
+ reportDiagnostics(collector);
71
+ notifyDiagnosticsReport(diagnostics);
72
+ }
55
73
  export function attachDiagnosticsCollector(collector) {
56
74
  const context = getContext();
57
75
  if (!context) return;
@@ -1 +1 @@
1
- {"version":3,"names":["getRenderNodeId","deleteDiagnostic","insertDiagnostic","isTraceEnabled","getContext","getRenderStackSnapshot","buildComponentStack","map","entry","name","displayName","renderNodeId","context","meta","renderNode","undefined","source","DiagnosticsCollector","entries","Map","order","traceRowIds","emit","input","traceEnabled","componentStack","at","id","length","Date","now","diagnostic","message","severity","set","push","rowId","fileName","lineNumber","columnNumber","JSON","stringify","dismiss","delete","get","getDiagnostics","filter","Boolean","DIAGNOSTICS_META_KEY","attachDiagnosticsCollector","collector","getDiagnosticsCollectorFromContext","owner","emitDiagnostic","reportDiagnostics","diagnostics","location","line","console","error","warn","log"],"sources":["../../../src/diagnostics.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getRenderNodeId","deleteDiagnostic","insertDiagnostic","isTraceEnabled","notifyDiagnosticsReport","getContext","getRenderStackSnapshot","buildComponentStack","map","entry","name","displayName","renderNodeId","context","meta","renderNode","undefined","source","DiagnosticsCollector","entries","Map","order","traceRowIds","emit","input","traceEnabled","componentStack","at","id","length","Date","now","diagnostic","message","severity","set","push","rowId","fileName","lineNumber","columnNumber","JSON","stringify","dismiss","delete","get","getDiagnostics","filter","Boolean","DIAGNOSTICS_META_KEY","diagnosticsByTree","WeakMap","registerDiagnosticsForTree","tree","collector","getRegisteredDiagnosticsForTree","emitDiagnosticForTree","emitDiagnostic","reportDiagnosticsForTree","diagnostics","reportDiagnostics","attachDiagnosticsCollector","getDiagnosticsCollectorFromContext","owner","location","line","console","error","warn","log"],"sources":["../../../src/diagnostics.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -8,11 +8,13 @@ export * from "./context/index.js";
8
8
  export * from "./diagnostics.js";
9
9
  export * from "./library-symbol-reference.js";
10
10
  export * from "./name-policy.js";
11
+ export * from "./output-types.js";
11
12
  export * from "./props-combinators.js";
12
13
  export * from "./reactive-union-set.js";
13
- export * from "./reactivity.js";
14
+ export { computed, createCustomContext, effect, ensureIsEmpty, findCurrentEffectId, formatReactivePropertyLabel, getContext, getEffectDebugId, getReactiveCreationLocation, isCustomContext, memo, nextReactiveId, notifyContentState, onCleanup, reactivePropertyRefId, ref, refId, resetRefIdCounter, root, runInContext, shallowReactive, shallowRef, toRef, toRefs, untrack } from "./reactivity.js";
14
15
  export * from "./refkey.js";
15
- export * from "./render.js";
16
+ export { getContextForNode, getContextForRenderNode, render, renderAsync, sourceFilesForTree } from "./render-output.js";
17
+ export { AlloyNode, COMMENT_NODE, CommentNode, ELEMENT_NODE, ElementNode, FRAGMENT_NODE, FragmentNode, TEXT_NODE, TextNode, createComment, createElement, createFragment, createTextNode } from "./render/node.js";
16
18
  export * from "./resource.js";
17
19
  export * from "./runtime/component.js";
18
20
  export * from "./runtime/intrinsic.js";
@@ -21,6 +23,7 @@ export * from "./sti.js";
21
23
  export * from "./symbols/index.js";
22
24
  export * from "./symbols/symbol-flow.js";
23
25
  export * from "./tap.js";
26
+ export { getDiagnosticsForTree, printTree, renderTree } from "./test-render.js";
24
27
  export * from "./utils.js";
25
28
  export * from "./write-output.js";
26
29
  import "./debug/index.js";
@@ -1 +1 @@
1
- {"version":3,"names":["TrackOpTypes","TriggerOpTypes","isProxy","isReactive","isRef","reactive","toRaw","track","trigger","watch"],"sources":["../../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SACEA,YAAY,EACZC,cAAc,EACdC,OAAO,EACPC,UAAU,EACVC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACLC,KAAK,EACLC,OAAO,EACPC,KAAK,QAOA,iBAAiB;AACxB,cAAc,aAAa;AAC3B,cAAc,WAAW;AACzB,cAAc,uBAAuB;AACrC,cAAc,mBAAmB;AACjC,cAAc,cAAc;AAC5B,cAAc,oBAAoB;AAClC,cAAc,kBAAkB;AAChC,cAAc,+BAA+B;AAC7C,cAAc,kBAAkB;AAChC,cAAc,wBAAwB;AACtC,cAAc,yBAAyB;AACvC,cAAc,iBAAiB;AAC/B,cAAc,aAAa;AAC3B,cAAc,aAAa;AAC3B,cAAc,eAAe;AAC7B,cAAc,wBAAwB;AACtC,cAAc,wBAAwB;AACtC,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,oBAAoB;AAClC,cAAc,0BAA0B;AACxC,cAAc,UAAU;AACxB,cAAc,YAAY;AAC1B,cAAc,mBAAmB;AACjC,OAAO,kBAAkB","ignoreList":[]}
1
+ {"version":3,"names":["TrackOpTypes","TriggerOpTypes","isProxy","isReactive","isRef","reactive","toRaw","track","trigger","watch","computed","createCustomContext","effect","ensureIsEmpty","findCurrentEffectId","formatReactivePropertyLabel","getContext","getEffectDebugId","getReactiveCreationLocation","isCustomContext","memo","nextReactiveId","notifyContentState","onCleanup","reactivePropertyRefId","ref","refId","resetRefIdCounter","root","runInContext","shallowReactive","shallowRef","toRef","toRefs","untrack","getContextForNode","getContextForRenderNode","render","renderAsync","sourceFilesForTree","AlloyNode","COMMENT_NODE","CommentNode","ELEMENT_NODE","ElementNode","FRAGMENT_NODE","FragmentNode","TEXT_NODE","TextNode","createComment","createElement","createFragment","createTextNode","getDiagnosticsForTree","printTree","renderTree"],"sources":["../../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SACEA,YAAY,EACZC,cAAc,EACdC,OAAO,EACPC,UAAU,EACVC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACLC,KAAK,EACLC,OAAO,EACPC,KAAK,QAOA,iBAAiB;AACxB,cAAc,aAAa;AAC3B,cAAc,WAAW;AACzB,cAAc,uBAAuB;AACrC,cAAc,mBAAmB;AACjC,cAAc,cAAc;AAC5B,cAAc,oBAAoB;AAClC,cAAc,kBAAkB;AAChC,cAAc,+BAA+B;AAC7C,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,wBAAwB;AACtC,cAAc,yBAAyB;AACvC,SACEC,QAAQ,EACRC,mBAAmB,EACnBC,MAAM,EACNC,aAAa,EACbC,mBAAmB,EACnBC,2BAA2B,EAC3BC,UAAU,EACVC,gBAAgB,EAChBC,2BAA2B,EAC3BC,eAAe,EACfC,IAAI,EACJC,cAAc,EACdC,kBAAkB,EAClBC,SAAS,EACTC,qBAAqB,EACrBC,GAAG,EACHC,KAAK,EACLC,iBAAiB,EACjBC,IAAI,EACJC,YAAY,EACZC,eAAe,EACfC,UAAU,EACVC,KAAK,EACLC,MAAM,EACNC,OAAO,QAQF,iBAAiB;AACxB,cAAc,aAAa;AAE3B,SACEC,iBAAiB,EACjBC,uBAAuB,EACvBC,MAAM,EACNC,WAAW,EACXC,kBAAkB,QACb,oBAAoB;AAC3B,SACEC,SAAS,EACTC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,WAAW,EACXC,aAAa,EACbC,YAAY,EACZC,SAAS,EACTC,QAAQ,EACRC,aAAa,EACbC,aAAa,EACbC,cAAc,EACdC,cAAc,QAGT,kBAAkB;AACzB,cAAc,eAAe;AAC7B,cAAc,wBAAwB;AACtC,cAAc,wBAAwB;AACtC,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,oBAAoB;AAClC,cAAc,0BAA0B;AACxC,cAAc,UAAU;AACxB,SACEC,qBAAqB,EACrBC,SAAS,EACTC,UAAU,QAEL,kBAAkB;AACzB,cAAc,YAAY;AAC1B,cAAc,mBAAmB;AACjC,OAAO,kBAAkB","ignoreList":[]}
@@ -1,13 +1,19 @@
1
- // Much of the implementations in this file are inspired by vuerx-js
2
- // See: https://github.com/ryansolid/vuerx-jsx.
3
-
4
- import { createComponent } from "@alloy-js/core";
5
- export { createComponent, createIntrinsic, memo, mergeProps } from "@alloy-js/core";
6
-
7
1
  /**
8
- * This namespace is predominantly for interop with React tooling in VSCode
9
- * and controls the type of JSX elements, components, and the like.
2
+ * JSX runtime.
3
+ *
4
+ * Imported by code compiled with `@alloy-js/babel-preset` (which sets the
5
+ * babel plugin's `moduleName` to `@alloy-js/core/jsx-runtime`). The
6
+ * auto-imported runtime helpers (`createComponent`, `createIntrinsic`,
7
+ * `memo`, `mergeProps`) resolve here, plus the `Children` type for
8
+ * manual imports.
10
9
  */
10
+
11
+ import { createComponent } from "./runtime/component.js";
12
+ export { mergeProps } from "./props-combinators.js";
13
+ export { memo } from "./reactivity.js";
14
+ export { createComponent } from "./runtime/component.js";
15
+ export { createIntrinsic } from "./runtime/create-intrinsic.js";
16
+
11
17
  // eslint-disable-next-line @typescript-eslint/no-namespace
12
18
  export let JSX;
13
19
  export function jsx(type, props) {
@@ -1 +1 @@
1
- {"version":3,"names":["createComponent","createIntrinsic","memo","mergeProps","JSX","jsx","type","props","jsxs"],"sources":["../../../src/jsx-runtime.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;;AAOA,SAASA,eAAe,QAAQ,gBAAgB;AAChD,SACEA,eAAe,EACfC,eAAe,EACfC,IAAI,EACJC,UAAU,QAEL,gBAAgB;;AAEvB;AACA;AACA;AACA;AACA;AAAA,WACiBC,GAAG;AAYpB,OAAO,SAASC,GAAGA,CAACC,IAAoB,EAAEC,KAA8B,EAAE;EACxE,OAAOP,eAAe,CAACM,IAAI,EAAEC,KAAK,CAAC;AACrC;AAEA,OAAO,MAAMC,IAAI,GAAGH,GAAG","ignoreList":[]}
1
+ {"version":3,"names":["createComponent","mergeProps","memo","createIntrinsic","JSX","jsx","type","props","jsxs"],"sources":["../../../src/jsx-runtime.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAQA,SAASA,eAAe,QAAQ,wBAAwB;AAExD,SAASC,UAAU,QAAQ,wBAAwB;AACnD,SAASC,IAAI,QAAQ,iBAAiB;AACtC,SAASF,eAAe,QAAQ,wBAAwB;AACxD,SAASG,eAAe,QAAQ,+BAA+B;;AAE/D;AAAA,WACiBC,GAAG;AAYpB,OAAO,SAASC,GAAGA,CAACC,IAAoB,EAAEC,KAA8B,EAAE;EACxE,OAAOP,eAAe,CAACM,IAAI,EAAEC,KAAK,CAAC;AACrC;AAEA,OAAO,MAAMC,IAAI,GAAGH,GAAG","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=output-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -5,10 +5,6 @@ if (globalThis.__ALLOY__) {
5
5
  throw new Error("Multiple versions of Alloy are loaded for this project. This will likely cause undesirable behavior.");
6
6
  }
7
7
  globalThis.__ALLOY__ = true;
8
- export function getElementCache() {
9
- const ctx = getContext();
10
- return ctx.elementCache ??= new Map();
11
- }
12
8
  let contextIdCounter = 0;
13
9
  let globalContext = null;
14
10
  export function getContext() {
@@ -35,7 +31,8 @@ function resolveOwnerEffectContextId(context) {
35
31
  /**
36
32
  * Ensure that a context has an isEmpty ref, creating one if needed.
37
33
  * Only call this when you need to reactively observe isEmpty (e.g.,
38
- * ContentSlot, mapJoin). Most contexts don't need an isEmpty ref.
34
+ * `ContentSlot`). `mapJoin` does not call this — it uses an internal
35
+ * empty-change callback directly so most slots never allocate a Ref at all.
39
36
  */
40
37
  export function ensureIsEmpty(context) {
41
38
  context.isEmpty ??= ref(context.childrenWithContent === 0, {
@@ -43,6 +40,80 @@ export function ensureIsEmpty(context) {
43
40
  });
44
41
  return context.isEmpty;
45
42
  }
43
+
44
+ /**
45
+ * Increment the current context's `childrenWithContent` counter. Caller
46
+ * should follow with {@link notifyContentState} so that observers
47
+ * (`ContentSlot.isEmpty`, etc.) and ancestor counters stay in sync.
48
+ */
49
+ export function contentAdded() {
50
+ const context = globalContext;
51
+ if (context) context.childrenWithContent++;
52
+ }
53
+
54
+ /**
55
+ * Decrement the current context's `childrenWithContent` counter (clamped
56
+ * at zero). Pair with {@link notifyContentState} to propagate.
57
+ */
58
+ export function contentRemoved() {
59
+ const context = globalContext;
60
+ if (context && context.childrenWithContent > 0) {
61
+ context.childrenWithContent--;
62
+ }
63
+ }
64
+ export function setContextEmptyChangeListener(context, listener) {
65
+ context.onEmptyChange = listener;
66
+ }
67
+
68
+ /**
69
+ * Reconcile the current context's last-empty flag and `isEmpty` ref
70
+ * with its current `childrenWithContent` count, propagating changes up
71
+ * the owner chain.
72
+ *
73
+ * Call after mutating `childrenWithContent`. Safe to call when there is no
74
+ * active context — it just no-ops.
75
+ *
76
+ * On every transition, both write the (lazily-allocated) `isEmpty` Ref
77
+ * (if present) AND invoke the internal empty-change callback (if present).
78
+ * Order is ref-first so external observers see the new Ref value
79
+ * before any internal mapJoin bookkeeping mutates dependent Refs.
80
+ */
81
+ export function notifyContentState() {
82
+ const startContext = globalContext;
83
+ if (!startContext) return;
84
+ untrack(() => {
85
+ if (startContext.childrenWithContent === 0) {
86
+ if (startContext.lastEmpty) return;
87
+ startContext.lastEmpty = true;
88
+ if (startContext.isEmpty) startContext.isEmpty.value = true;
89
+ startContext.onEmptyChange?.(true);
90
+ let current = startContext.owner;
91
+ while (current) {
92
+ if (current.childrenWithContent === 0) break;
93
+ current.childrenWithContent--;
94
+ if (current.childrenWithContent > 0) break;
95
+ current.lastEmpty = true;
96
+ if (current.isEmpty) current.isEmpty.value = true;
97
+ current.onEmptyChange?.(true);
98
+ current = current.owner;
99
+ }
100
+ } else {
101
+ if (!startContext.lastEmpty) return;
102
+ startContext.lastEmpty = false;
103
+ if (startContext.isEmpty) startContext.isEmpty.value = false;
104
+ startContext.onEmptyChange?.(false);
105
+ let current = startContext.owner;
106
+ while (current) {
107
+ current.childrenWithContent++;
108
+ if (current.childrenWithContent > 1) break;
109
+ current.lastEmpty = false;
110
+ if (current.isEmpty) current.isEmpty.value = false;
111
+ current.onEmptyChange?.(false);
112
+ current = current.owner;
113
+ }
114
+ }
115
+ });
116
+ }
46
117
  export function root(fn, options) {
47
118
  const context = {
48
119
  id: contextIdCounter++,
@@ -51,7 +122,7 @@ export function root(fn, options) {
51
122
  takesSymbols: false,
52
123
  takenSymbols: undefined,
53
124
  childrenWithContent: 0,
54
- _lastEmpty: true,
125
+ lastEmpty: true,
55
126
  isRoot: true
56
127
  };
57
128
  globalContext = context;
@@ -104,20 +175,20 @@ export function findCurrentEffectId() {
104
175
  * ```
105
176
  */
106
177
  export function memo(fn, equal, name) {
107
- const memoLabel = name ? `memo:${name}` : "memo";
108
- const o = shallowRef(undefined, {
109
- label: memoLabel
110
- });
178
+ const dbg = isDebugEnabled();
179
+ const o = dbg ? shallowRef(undefined, {
180
+ label: name ? `memo:${name}` : "memo"
181
+ }) : shallowRef(undefined);
111
182
  effect(prev => {
112
183
  const res = fn();
113
184
  // eslint-disable-next-line @typescript-eslint/no-unused-expressions
114
185
  (!equal || prev !== res) && (o.value = res);
115
186
  return res;
116
- }, undefined, {
187
+ }, undefined, dbg ? {
117
188
  debug: {
118
189
  name: name ? `memo:${name}` : "memo"
119
190
  }
120
- });
191
+ } : undefined);
121
192
  const getter = () => o.value;
122
193
  if (name) {
123
194
  Object.defineProperty(getter, "name", {
@@ -134,7 +205,7 @@ export function effect(fn, current, options) {
134
205
  takesSymbols: false,
135
206
  takenSymbols: undefined,
136
207
  childrenWithContent: 0,
137
- _lastEmpty: true,
208
+ lastEmpty: true,
138
209
  isRoot: false
139
210
  };
140
211
  const debugInfo = options?.debug;
@@ -267,6 +338,77 @@ export function effect(fn, current, options) {
267
338
  }
268
339
  }
269
340
 
341
+ /**
342
+ * Run `fn` in a fresh child Context (just like {@link effect}) but **without**
343
+ * a tracking ReactiveEffect wrapper. Use this when the caller knows the body
344
+ * does not establish reactive subscriptions at its top level (e.g. it wraps
345
+ * its only reactive reads in `untrack()` or function children) — typically
346
+ * for component-invocation plumbing where the outer "effect" never re-fires.
347
+ *
348
+ * Compared to {@link effect}:
349
+ * - No `vueEffect` allocation, no scheduler binding.
350
+ * - The body runs synchronously to completion exactly once.
351
+ * - Disposables registered via `onCleanup` inside `fn` (or its descendants)
352
+ * are still registered on the new context, and disposed via the parent
353
+ * context's cleanup chain.
354
+ *
355
+ * Returns the value returned by `fn`.
356
+ */
357
+ export function runInContext(fn) {
358
+ const context = {
359
+ id: contextIdCounter++,
360
+ owner: globalContext,
361
+ takesSymbols: false,
362
+ takenSymbols: undefined,
363
+ childrenWithContent: 0,
364
+ lastEmpty: true,
365
+ isRoot: false
366
+ };
367
+
368
+ // Hook this context's disposables into the parent's cleanup chain so
369
+ // when the parent disposes, our disposables run too.
370
+ onCleanup(() => {
371
+ const d = context.disposables;
372
+ context.disposables = undefined;
373
+ if (d) {
374
+ for (let k = 0, len = d.length; k < len; k++) untrack(d[k]);
375
+ }
376
+ });
377
+ const oldContext = globalContext;
378
+ globalContext = context;
379
+ try {
380
+ return fn();
381
+ } finally {
382
+ globalContext = oldContext;
383
+ }
384
+ }
385
+ export function runInContextWithDisposer(fn) {
386
+ const context = {
387
+ id: contextIdCounter++,
388
+ owner: globalContext,
389
+ takesSymbols: false,
390
+ takenSymbols: undefined,
391
+ childrenWithContent: 0,
392
+ lastEmpty: true,
393
+ isRoot: false
394
+ };
395
+ const dispose = () => {
396
+ const d = context.disposables;
397
+ context.disposables = undefined;
398
+ if (d) {
399
+ for (let k = 0, len = d.length; k < len; k++) untrack(d[k]);
400
+ }
401
+ };
402
+ onCleanup(dispose);
403
+ const oldContext = globalContext;
404
+ globalContext = context;
405
+ try {
406
+ return fn(dispose);
407
+ } finally {
408
+ globalContext = oldContext;
409
+ }
410
+ }
411
+
270
412
  /**
271
413
  * Register a cleanup function which is called when the current reactive scope
272
414
  * is recalculated or disposed. This is useful to clean up any side effects