@alloy-js/core 0.24.0-dev.2 → 0.24.0-dev.7

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 (656) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/dev/src/components/AccessExpression.test.js +30 -38
  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 +16 -18
  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/diagnostics.test.js +1 -1
  12. package/dist/dev/src/debug/diagnostics.test.js.map +1 -1
  13. package/dist/dev/src/debug/effects.test.js +1 -1
  14. package/dist/dev/src/debug/effects.test.js.map +1 -1
  15. package/dist/dev/src/debug/file-streaming.js +103 -0
  16. package/dist/dev/src/debug/file-streaming.js.map +1 -0
  17. package/dist/dev/src/debug/files.test.js +4 -5
  18. package/dist/dev/src/debug/files.test.js.map +1 -1
  19. package/dist/dev/src/debug/index.js +4 -6
  20. package/dist/dev/src/debug/index.js.map +1 -1
  21. package/dist/dev/src/debug/message-format.test.js +50 -52
  22. package/dist/dev/src/debug/message-format.test.js.map +1 -1
  23. package/dist/dev/src/debug/render-tree-orphans.test.js +13 -23
  24. package/dist/dev/src/debug/render-tree-orphans.test.js.map +1 -1
  25. package/dist/dev/src/debug/render.js +529 -352
  26. package/dist/dev/src/debug/render.js.map +1 -1
  27. package/dist/dev/src/debug/render.test.js +171 -92
  28. package/dist/dev/src/debug/render.test.js.map +1 -1
  29. package/dist/dev/src/debug/trace-writer.js +127 -15
  30. package/dist/dev/src/debug/trace-writer.js.map +1 -1
  31. package/dist/dev/src/debug/trace.js +0 -36
  32. package/dist/dev/src/debug/trace.js.map +1 -1
  33. package/dist/dev/src/devtools/devtools-server.js +55 -32
  34. package/dist/dev/src/devtools/devtools-server.js.map +1 -1
  35. package/dist/dev/src/devtools-entry.browser.js.map +1 -1
  36. package/dist/dev/src/devtools-entry.js.map +1 -1
  37. package/dist/dev/src/diagnostics.js +19 -1
  38. package/dist/dev/src/diagnostics.js.map +1 -1
  39. package/dist/dev/src/index.js +5 -2
  40. package/dist/dev/src/index.js.map +1 -1
  41. package/dist/dev/src/jsx-runtime.js +14 -8
  42. package/dist/dev/src/jsx-runtime.js.map +1 -1
  43. package/dist/dev/src/output-types.js +2 -0
  44. package/dist/dev/src/output-types.js.map +1 -0
  45. package/dist/dev/src/reactivity.js +155 -13
  46. package/dist/dev/src/reactivity.js.map +1 -1
  47. package/dist/dev/src/render/get-string-width.js +61 -0
  48. package/dist/dev/src/render/get-string-width.js.map +1 -0
  49. package/dist/dev/src/render/index.js +2 -0
  50. package/dist/dev/src/render/index.js.map +1 -0
  51. package/dist/dev/src/render/node-context.js +7 -0
  52. package/dist/dev/src/render/node-context.js.map +1 -0
  53. package/dist/dev/src/render/node.js +386 -0
  54. package/dist/dev/src/render/node.js.map +1 -0
  55. package/dist/dev/src/render/printer-support.js +180 -0
  56. package/dist/dev/src/render/printer-support.js.map +1 -0
  57. package/dist/dev/src/render/printer.js +797 -0
  58. package/dist/dev/src/render/printer.js.map +1 -0
  59. package/dist/dev/src/render-error.js +79 -0
  60. package/dist/dev/src/render-error.js.map +1 -0
  61. package/dist/dev/src/render-output.js +209 -0
  62. package/dist/dev/src/render-output.js.map +1 -0
  63. package/dist/dev/src/runtime/create-intrinsic.js +53 -0
  64. package/dist/dev/src/runtime/create-intrinsic.js.map +1 -0
  65. package/dist/dev/src/runtime/fragment.js +21 -0
  66. package/dist/dev/src/runtime/fragment.js.map +1 -0
  67. package/dist/dev/src/runtime/index.js +13 -0
  68. package/dist/dev/src/runtime/index.js.map +1 -0
  69. package/dist/dev/src/runtime/insert.js +453 -0
  70. package/dist/dev/src/runtime/insert.js.map +1 -0
  71. package/dist/dev/src/runtime/intrinsic.js +1 -11
  72. package/dist/dev/src/runtime/intrinsic.js.map +1 -1
  73. package/dist/dev/src/scheduler.js +38 -14
  74. package/dist/dev/src/scheduler.js.map +1 -1
  75. package/dist/dev/src/stc.js +2 -0
  76. package/dist/dev/src/stc.js.map +1 -1
  77. package/dist/dev/src/sti.js +1 -1
  78. package/dist/dev/src/sti.js.map +1 -1
  79. package/dist/dev/src/symbols/symbol-slot.test.js +5 -5
  80. package/dist/dev/src/symbols/symbol-slot.test.js.map +1 -1
  81. package/dist/dev/src/test-render.js +78 -0
  82. package/dist/dev/src/test-render.js.map +1 -0
  83. package/dist/dev/src/utils.js +47 -35
  84. package/dist/dev/src/utils.js.map +1 -1
  85. package/dist/dev/test/babel-e2e.test.js +218 -0
  86. package/dist/dev/test/babel-e2e.test.js.map +1 -0
  87. package/dist/dev/test/children.test.js +9 -11
  88. package/dist/dev/test/children.test.js.map +1 -1
  89. package/dist/dev/test/components/append-file.test.js +26 -27
  90. package/dist/dev/test/components/append-file.test.js.map +1 -1
  91. package/dist/dev/test/components/block.test.js +9 -11
  92. package/dist/dev/test/components/block.test.js.map +1 -1
  93. package/dist/dev/test/components/copy-file.test.js +1 -2
  94. package/dist/dev/test/components/copy-file.test.js.map +1 -1
  95. package/dist/dev/test/components/declaration.test.js +2 -2
  96. package/dist/dev/test/components/declaration.test.js.map +1 -1
  97. package/dist/dev/test/components/list.test.js +41 -43
  98. package/dist/dev/test/components/list.test.js.map +1 -1
  99. package/dist/dev/test/components/prose.test.js +4 -5
  100. package/dist/dev/test/components/prose.test.js.map +1 -1
  101. package/dist/dev/test/components/reference-or-content.test.js +32 -33
  102. package/dist/dev/test/components/reference-or-content.test.js.map +1 -1
  103. package/dist/dev/test/components/source-file.test.js +8 -7
  104. package/dist/dev/test/components/source-file.test.js.map +1 -1
  105. package/dist/dev/test/components/template-file.test.js +16 -17
  106. package/dist/dev/test/components/template-file.test.js.map +1 -1
  107. package/dist/dev/test/components/update-file.test.js +11 -12
  108. package/dist/dev/test/components/update-file.test.js.map +1 -1
  109. package/dist/dev/test/components/wrap.test.js +6 -8
  110. package/dist/dev/test/components/wrap.test.js.map +1 -1
  111. package/dist/dev/test/control-flow/for.test.js +58 -42
  112. package/dist/dev/test/control-flow/for.test.js.map +1 -1
  113. package/dist/dev/test/control-flow/match.test.js +15 -17
  114. package/dist/dev/test/control-flow/match.test.js.map +1 -1
  115. package/dist/dev/test/control-flow/show.test.js +5 -8
  116. package/dist/dev/test/control-flow/show.test.js.map +1 -1
  117. package/dist/dev/test/lazy-isempty.test.js +29 -31
  118. package/dist/dev/test/lazy-isempty.test.js.map +1 -1
  119. package/dist/dev/test/name-policy.test.js +2 -3
  120. package/dist/dev/test/name-policy.test.js.map +1 -1
  121. package/dist/dev/test/node.test.js +80 -0
  122. package/dist/dev/test/node.test.js.map +1 -0
  123. package/dist/dev/test/output-e2e.test.js +194 -0
  124. package/dist/dev/test/output-e2e.test.js.map +1 -0
  125. package/dist/dev/test/reactivity/circular-reactives.test.js +9 -9
  126. package/dist/dev/test/reactivity/circular-reactives.test.js.map +1 -1
  127. package/dist/dev/test/reactivity/cleanup.test.js +5 -6
  128. package/dist/dev/test/reactivity/cleanup.test.js.map +1 -1
  129. package/dist/dev/test/reactivity/ref-rendering.test.js +15 -15
  130. package/dist/dev/test/reactivity/ref-rendering.test.js.map +1 -1
  131. package/dist/dev/test/reactivity/test.test.js +18 -18
  132. package/dist/dev/test/reactivity/test.test.js.map +1 -1
  133. package/dist/dev/test/rendering/basic.test.js +18 -19
  134. package/dist/dev/test/rendering/basic.test.js.map +1 -1
  135. package/dist/dev/test/rendering/code.test.js +2 -3
  136. package/dist/dev/test/rendering/code.test.js.map +1 -1
  137. package/dist/dev/test/rendering/formatting.test.js +115 -121
  138. package/dist/dev/test/rendering/formatting.test.js.map +1 -1
  139. package/dist/dev/test/rendering/indent.test.js +23 -24
  140. package/dist/dev/test/rendering/indent.test.js.map +1 -1
  141. package/dist/dev/test/rendering/memoization.test.js +9 -5
  142. package/dist/dev/test/rendering/memoization.test.js.map +1 -1
  143. package/dist/dev/test/rendering/print-render-stack.test.js +20 -21
  144. package/dist/dev/test/rendering/print-render-stack.test.js.map +1 -1
  145. package/dist/dev/test/rendering/refkeys.test.js +1 -2
  146. package/dist/dev/test/rendering/refkeys.test.js.map +1 -1
  147. package/dist/dev/test/rendering/render-output-diagnostics.test.js +102 -0
  148. package/dist/dev/test/rendering/render-output-diagnostics.test.js.map +1 -0
  149. package/dist/dev/test/runtime.test.js +385 -0
  150. package/dist/dev/test/runtime.test.js.map +1 -0
  151. package/dist/dev/test/stc.test.js +0 -1
  152. package/dist/dev/test/stc.test.js.map +1 -1
  153. package/dist/dev/test/tree-test-utils.js +16 -0
  154. package/dist/dev/test/tree-test-utils.js.map +1 -0
  155. package/dist/dev/test/utils.test.js +34 -33
  156. package/dist/dev/test/utils.test.js.map +1 -1
  157. package/dist/dev/test/vitest.setup.js +2 -0
  158. package/dist/dev/test/vitest.setup.js.map +1 -0
  159. package/dist/dev/testing/devtools-utils.js +1 -1
  160. package/dist/dev/testing/devtools-utils.js.map +1 -1
  161. package/dist/dev/testing/extend-expect.js +30 -34
  162. package/dist/dev/testing/extend-expect.js.map +1 -1
  163. package/dist/dev/testing/render.js +7 -17
  164. package/dist/dev/testing/render.js.map +1 -1
  165. package/dist/devtools/index.html +17 -17
  166. package/dist/src/components/AccessExpression.test.d.ts +1 -1
  167. package/dist/src/components/AccessExpression.test.d.ts.map +1 -1
  168. package/dist/src/components/AccessExpression.test.js +5 -13
  169. package/dist/src/components/AccessExpression.test.js.map +1 -1
  170. package/dist/src/components/Output.d.ts +1 -1
  171. package/dist/src/components/Output.d.ts.map +1 -1
  172. package/dist/src/components/Output.js +2 -1
  173. package/dist/src/components/Output.js.map +1 -1
  174. package/dist/src/components/ReferenceOrContent.d.ts +1 -1
  175. package/dist/src/components/ReferenceOrContent.d.ts.map +1 -1
  176. package/dist/src/components/SourceFile.d.ts +1 -1
  177. package/dist/src/components/SourceFile.d.ts.map +1 -1
  178. package/dist/src/components/SourceFile.js.map +1 -1
  179. package/dist/src/content-slot.test.d.ts +1 -1
  180. package/dist/src/content-slot.test.d.ts.map +1 -1
  181. package/dist/src/content-slot.test.js +8 -10
  182. package/dist/src/content-slot.test.js.map +1 -1
  183. package/dist/src/context/format-options.d.ts +1 -1
  184. package/dist/src/context/format-options.d.ts.map +1 -1
  185. package/dist/src/context.d.ts +9 -1
  186. package/dist/src/context.d.ts.map +1 -1
  187. package/dist/src/context.js +30 -3
  188. package/dist/src/context.js.map +1 -1
  189. package/dist/src/debug/diagnostics.test.js +1 -1
  190. package/dist/src/debug/diagnostics.test.js.map +1 -1
  191. package/dist/src/debug/effects.test.js +1 -1
  192. package/dist/src/debug/effects.test.js.map +1 -1
  193. package/dist/src/debug/file-streaming.d.ts +22 -0
  194. package/dist/src/debug/file-streaming.d.ts.map +1 -0
  195. package/dist/src/debug/file-streaming.js +103 -0
  196. package/dist/src/debug/file-streaming.js.map +1 -0
  197. package/dist/src/debug/files.test.js +4 -5
  198. package/dist/src/debug/files.test.js.map +1 -1
  199. package/dist/src/debug/index.d.ts +5 -7
  200. package/dist/src/debug/index.d.ts.map +1 -1
  201. package/dist/src/debug/index.js +4 -6
  202. package/dist/src/debug/index.js.map +1 -1
  203. package/dist/src/debug/message-format.test.js +16 -18
  204. package/dist/src/debug/message-format.test.js.map +1 -1
  205. package/dist/src/debug/render-tree-orphans.test.js +8 -18
  206. package/dist/src/debug/render-tree-orphans.test.js.map +1 -1
  207. package/dist/src/debug/render.d.ts +71 -21
  208. package/dist/src/debug/render.d.ts.map +1 -1
  209. package/dist/src/debug/render.js +529 -352
  210. package/dist/src/debug/render.js.map +1 -1
  211. package/dist/src/debug/render.test.js +137 -74
  212. package/dist/src/debug/render.test.js.map +1 -1
  213. package/dist/src/debug/trace-writer.d.ts +6 -1
  214. package/dist/src/debug/trace-writer.d.ts.map +1 -1
  215. package/dist/src/debug/trace-writer.js +127 -15
  216. package/dist/src/debug/trace-writer.js.map +1 -1
  217. package/dist/src/debug/trace.d.ts +0 -36
  218. package/dist/src/debug/trace.d.ts.map +1 -1
  219. package/dist/src/debug/trace.js +0 -36
  220. package/dist/src/debug/trace.js.map +1 -1
  221. package/dist/src/devtools/devtools-protocol.d.ts +34 -1
  222. package/dist/src/devtools/devtools-protocol.d.ts.map +1 -1
  223. package/dist/src/devtools/devtools-server.d.ts.map +1 -1
  224. package/dist/src/devtools/devtools-server.js +55 -32
  225. package/dist/src/devtools/devtools-server.js.map +1 -1
  226. package/dist/src/devtools-entry.browser.d.ts +1 -1
  227. package/dist/src/devtools-entry.browser.d.ts.map +1 -1
  228. package/dist/src/devtools-entry.browser.js.map +1 -1
  229. package/dist/src/devtools-entry.d.ts +1 -1
  230. package/dist/src/devtools-entry.d.ts.map +1 -1
  231. package/dist/src/devtools-entry.js.map +1 -1
  232. package/dist/src/diagnostics.d.ts +4 -0
  233. package/dist/src/diagnostics.d.ts.map +1 -1
  234. package/dist/src/diagnostics.js +19 -1
  235. package/dist/src/diagnostics.js.map +1 -1
  236. package/dist/src/index.d.ts +5 -2
  237. package/dist/src/index.d.ts.map +1 -1
  238. package/dist/src/index.js +5 -2
  239. package/dist/src/index.js.map +1 -1
  240. package/dist/src/jsx-runtime.d.ts +13 -4
  241. package/dist/src/jsx-runtime.d.ts.map +1 -1
  242. package/dist/src/jsx-runtime.js +14 -8
  243. package/dist/src/jsx-runtime.js.map +1 -1
  244. package/dist/src/output-types.d.ts +40 -0
  245. package/dist/src/output-types.d.ts.map +1 -0
  246. package/dist/src/output-types.js +2 -0
  247. package/dist/src/output-types.js.map +1 -0
  248. package/dist/src/reactivity.d.ts +49 -18
  249. package/dist/src/reactivity.d.ts.map +1 -1
  250. package/dist/src/reactivity.js +155 -13
  251. package/dist/src/reactivity.js.map +1 -1
  252. package/dist/src/render/get-string-width.d.ts +19 -0
  253. package/dist/src/render/get-string-width.d.ts.map +1 -0
  254. package/dist/src/render/get-string-width.js +61 -0
  255. package/dist/src/render/get-string-width.js.map +1 -0
  256. package/dist/src/render/index.d.ts +2 -0
  257. package/dist/src/render/index.d.ts.map +1 -0
  258. package/dist/src/render/index.js +2 -0
  259. package/dist/src/render/index.js.map +1 -0
  260. package/dist/src/render/node-context.d.ts +5 -0
  261. package/dist/src/render/node-context.d.ts.map +1 -0
  262. package/dist/src/render/node-context.js +7 -0
  263. package/dist/src/render/node-context.js.map +1 -0
  264. package/dist/src/render/node.d.ts +146 -0
  265. package/dist/src/render/node.d.ts.map +1 -0
  266. package/dist/src/render/node.js +386 -0
  267. package/dist/src/render/node.js.map +1 -0
  268. package/dist/src/render/printer-support.d.ts +50 -0
  269. package/dist/src/render/printer-support.d.ts.map +1 -0
  270. package/dist/src/render/printer-support.js +180 -0
  271. package/dist/src/render/printer-support.js.map +1 -0
  272. package/dist/src/render/printer.d.ts +35 -0
  273. package/dist/src/render/printer.d.ts.map +1 -0
  274. package/dist/src/render/printer.js +797 -0
  275. package/dist/src/render/printer.js.map +1 -0
  276. package/dist/src/render-error.d.ts +4 -0
  277. package/dist/src/render-error.d.ts.map +1 -0
  278. package/dist/src/render-error.js +79 -0
  279. package/dist/src/render-error.js.map +1 -0
  280. package/dist/src/render-output.d.ts +42 -0
  281. package/dist/src/render-output.d.ts.map +1 -0
  282. package/dist/src/render-output.js +209 -0
  283. package/dist/src/render-output.js.map +1 -0
  284. package/dist/src/runtime/component.d.ts +2 -2
  285. package/dist/src/runtime/component.d.ts.map +1 -1
  286. package/dist/src/runtime/create-intrinsic.d.ts +28 -0
  287. package/dist/src/runtime/create-intrinsic.d.ts.map +1 -0
  288. package/dist/src/runtime/create-intrinsic.js +53 -0
  289. package/dist/src/runtime/create-intrinsic.js.map +1 -0
  290. package/dist/src/runtime/fragment.d.ts +16 -0
  291. package/dist/src/runtime/fragment.d.ts.map +1 -0
  292. package/dist/src/runtime/fragment.js +21 -0
  293. package/dist/src/runtime/fragment.js.map +1 -0
  294. package/dist/src/runtime/index.d.ts +12 -0
  295. package/dist/src/runtime/index.d.ts.map +1 -0
  296. package/dist/src/runtime/index.js +13 -0
  297. package/dist/src/runtime/index.js.map +1 -0
  298. package/dist/src/runtime/insert.d.ts +29 -0
  299. package/dist/src/runtime/insert.d.ts.map +1 -0
  300. package/dist/src/runtime/insert.js +453 -0
  301. package/dist/src/runtime/insert.js.map +1 -0
  302. package/dist/src/runtime/intrinsic.d.ts +12 -29
  303. package/dist/src/runtime/intrinsic.d.ts.map +1 -1
  304. package/dist/src/runtime/intrinsic.js +1 -11
  305. package/dist/src/runtime/intrinsic.js.map +1 -1
  306. package/dist/src/scheduler.d.ts.map +1 -1
  307. package/dist/src/scheduler.js +38 -14
  308. package/dist/src/scheduler.js.map +1 -1
  309. package/dist/src/stc.d.ts.map +1 -1
  310. package/dist/src/stc.js +2 -0
  311. package/dist/src/stc.js.map +1 -1
  312. package/dist/src/sti.d.ts +7 -6
  313. package/dist/src/sti.d.ts.map +1 -1
  314. package/dist/src/sti.js +1 -1
  315. package/dist/src/sti.js.map +1 -1
  316. package/dist/src/symbols/symbol-slot.test.js +5 -5
  317. package/dist/src/symbols/symbol-slot.test.js.map +1 -1
  318. package/dist/src/test-render.d.ts +31 -0
  319. package/dist/src/test-render.d.ts.map +1 -0
  320. package/dist/src/test-render.js +78 -0
  321. package/dist/src/test-render.js.map +1 -0
  322. package/dist/src/utils.d.ts +1 -1
  323. package/dist/src/utils.d.ts.map +1 -1
  324. package/dist/src/utils.js +40 -28
  325. package/dist/src/utils.js.map +1 -1
  326. package/dist/src/write-output.d.ts +1 -1
  327. package/dist/src/write-output.d.ts.map +1 -1
  328. package/dist/test/babel-e2e.test.d.ts +13 -0
  329. package/dist/test/babel-e2e.test.d.ts.map +1 -0
  330. package/dist/test/babel-e2e.test.js +218 -0
  331. package/dist/test/babel-e2e.test.js.map +1 -0
  332. package/dist/test/children.test.js +5 -7
  333. package/dist/test/children.test.js.map +1 -1
  334. package/dist/test/components/append-file.test.d.ts +1 -1
  335. package/dist/test/components/append-file.test.d.ts.map +1 -1
  336. package/dist/test/components/append-file.test.js +0 -1
  337. package/dist/test/components/append-file.test.js.map +1 -1
  338. package/dist/test/components/block.test.d.ts +1 -1
  339. package/dist/test/components/block.test.d.ts.map +1 -1
  340. package/dist/test/components/block.test.js +4 -6
  341. package/dist/test/components/block.test.js.map +1 -1
  342. package/dist/test/components/copy-file.test.d.ts +1 -1
  343. package/dist/test/components/copy-file.test.d.ts.map +1 -1
  344. package/dist/test/components/copy-file.test.js +1 -2
  345. package/dist/test/components/copy-file.test.js.map +1 -1
  346. package/dist/test/components/declaration.test.js +2 -2
  347. package/dist/test/components/declaration.test.js.map +1 -1
  348. package/dist/test/components/list.test.d.ts +1 -1
  349. package/dist/test/components/list.test.d.ts.map +1 -1
  350. package/dist/test/components/list.test.js +20 -22
  351. package/dist/test/components/list.test.js.map +1 -1
  352. package/dist/test/components/prose.test.d.ts +1 -1
  353. package/dist/test/components/prose.test.d.ts.map +1 -1
  354. package/dist/test/components/prose.test.js +0 -1
  355. package/dist/test/components/prose.test.js.map +1 -1
  356. package/dist/test/components/reference-or-content.test.js +8 -9
  357. package/dist/test/components/reference-or-content.test.js.map +1 -1
  358. package/dist/test/components/source-file.test.d.ts +1 -1
  359. package/dist/test/components/source-file.test.d.ts.map +1 -1
  360. package/dist/test/components/source-file.test.js +5 -4
  361. package/dist/test/components/source-file.test.js.map +1 -1
  362. package/dist/test/components/template-file.test.d.ts +1 -1
  363. package/dist/test/components/template-file.test.d.ts.map +1 -1
  364. package/dist/test/components/template-file.test.js +0 -1
  365. package/dist/test/components/template-file.test.js.map +1 -1
  366. package/dist/test/components/update-file.test.d.ts +1 -1
  367. package/dist/test/components/update-file.test.d.ts.map +1 -1
  368. package/dist/test/components/update-file.test.js +1 -2
  369. package/dist/test/components/update-file.test.js.map +1 -1
  370. package/dist/test/components/wrap.test.d.ts +1 -1
  371. package/dist/test/components/wrap.test.d.ts.map +1 -1
  372. package/dist/test/components/wrap.test.js +3 -5
  373. package/dist/test/components/wrap.test.js.map +1 -1
  374. package/dist/test/control-flow/for.test.d.ts +1 -1
  375. package/dist/test/control-flow/for.test.d.ts.map +1 -1
  376. package/dist/test/control-flow/for.test.js +40 -24
  377. package/dist/test/control-flow/for.test.js.map +1 -1
  378. package/dist/test/control-flow/match.test.d.ts +1 -1
  379. package/dist/test/control-flow/match.test.d.ts.map +1 -1
  380. package/dist/test/control-flow/match.test.js +4 -6
  381. package/dist/test/control-flow/match.test.js.map +1 -1
  382. package/dist/test/control-flow/show.test.d.ts +1 -1
  383. package/dist/test/control-flow/show.test.d.ts.map +1 -1
  384. package/dist/test/control-flow/show.test.js +3 -6
  385. package/dist/test/control-flow/show.test.js.map +1 -1
  386. package/dist/test/lazy-isempty.test.d.ts +1 -1
  387. package/dist/test/lazy-isempty.test.d.ts.map +1 -1
  388. package/dist/test/lazy-isempty.test.js +16 -18
  389. package/dist/test/lazy-isempty.test.js.map +1 -1
  390. package/dist/test/name-policy.test.d.ts +1 -1
  391. package/dist/test/name-policy.test.d.ts.map +1 -1
  392. package/dist/test/name-policy.test.js +0 -1
  393. package/dist/test/name-policy.test.js.map +1 -1
  394. package/dist/test/node.test.d.ts +2 -0
  395. package/dist/test/node.test.d.ts.map +1 -0
  396. package/dist/test/node.test.js +80 -0
  397. package/dist/test/node.test.js.map +1 -0
  398. package/dist/test/output-e2e.test.d.ts +13 -0
  399. package/dist/test/output-e2e.test.d.ts.map +1 -0
  400. package/dist/test/output-e2e.test.js +194 -0
  401. package/dist/test/output-e2e.test.js.map +1 -0
  402. package/dist/test/reactivity/circular-reactives.test.js +6 -6
  403. package/dist/test/reactivity/circular-reactives.test.js.map +1 -1
  404. package/dist/test/reactivity/cleanup.test.js +2 -3
  405. package/dist/test/reactivity/cleanup.test.js.map +1 -1
  406. package/dist/test/reactivity/ref-rendering.test.js +15 -15
  407. package/dist/test/reactivity/ref-rendering.test.js.map +1 -1
  408. package/dist/test/reactivity/test.test.js +15 -15
  409. package/dist/test/reactivity/test.test.js.map +1 -1
  410. package/dist/test/rendering/basic.test.d.ts +1 -1
  411. package/dist/test/rendering/basic.test.d.ts.map +1 -1
  412. package/dist/test/rendering/basic.test.js +0 -1
  413. package/dist/test/rendering/basic.test.js.map +1 -1
  414. package/dist/test/rendering/code.test.d.ts +1 -1
  415. package/dist/test/rendering/code.test.d.ts.map +1 -1
  416. package/dist/test/rendering/code.test.js +0 -1
  417. package/dist/test/rendering/code.test.js.map +1 -1
  418. package/dist/test/rendering/formatting.test.d.ts +1 -1
  419. package/dist/test/rendering/formatting.test.d.ts.map +1 -1
  420. package/dist/test/rendering/formatting.test.js +17 -23
  421. package/dist/test/rendering/formatting.test.js.map +1 -1
  422. package/dist/test/rendering/indent.test.d.ts +1 -1
  423. package/dist/test/rendering/indent.test.d.ts.map +1 -1
  424. package/dist/test/rendering/indent.test.js +0 -1
  425. package/dist/test/rendering/indent.test.js.map +1 -1
  426. package/dist/test/rendering/memoization.test.js +7 -3
  427. package/dist/test/rendering/memoization.test.js.map +1 -1
  428. package/dist/test/rendering/print-render-stack.test.d.ts +1 -1
  429. package/dist/test/rendering/print-render-stack.test.d.ts.map +1 -1
  430. package/dist/test/rendering/print-render-stack.test.js +0 -1
  431. package/dist/test/rendering/print-render-stack.test.js.map +1 -1
  432. package/dist/test/rendering/refkeys.test.d.ts +1 -1
  433. package/dist/test/rendering/refkeys.test.d.ts.map +1 -1
  434. package/dist/test/rendering/refkeys.test.js +0 -1
  435. package/dist/test/rendering/refkeys.test.js.map +1 -1
  436. package/dist/test/rendering/render-output-diagnostics.test.d.ts +2 -0
  437. package/dist/test/rendering/render-output-diagnostics.test.d.ts.map +1 -0
  438. package/dist/test/rendering/render-output-diagnostics.test.js +82 -0
  439. package/dist/test/rendering/render-output-diagnostics.test.js.map +1 -0
  440. package/dist/test/runtime.test.d.ts +11 -0
  441. package/dist/test/runtime.test.d.ts.map +1 -0
  442. package/dist/test/runtime.test.js +385 -0
  443. package/dist/test/runtime.test.js.map +1 -0
  444. package/dist/test/stc.test.d.ts +1 -1
  445. package/dist/test/stc.test.d.ts.map +1 -1
  446. package/dist/test/stc.test.js +0 -1
  447. package/dist/test/stc.test.js.map +1 -1
  448. package/dist/test/tree-test-utils.d.ts +3 -0
  449. package/dist/test/tree-test-utils.d.ts.map +1 -0
  450. package/dist/test/tree-test-utils.js +16 -0
  451. package/dist/test/tree-test-utils.js.map +1 -0
  452. package/dist/test/utils.test.d.ts +1 -1
  453. package/dist/test/utils.test.d.ts.map +1 -1
  454. package/dist/test/utils.test.js +12 -11
  455. package/dist/test/utils.test.js.map +1 -1
  456. package/dist/test/vitest.setup.d.ts +2 -0
  457. package/dist/test/vitest.setup.d.ts.map +1 -0
  458. package/dist/test/vitest.setup.js +2 -0
  459. package/dist/test/vitest.setup.js.map +1 -0
  460. package/dist/testing/devtools-utils.d.ts.map +1 -1
  461. package/dist/testing/devtools-utils.js +1 -1
  462. package/dist/testing/devtools-utils.js.map +1 -1
  463. package/dist/testing/extend-expect.d.ts.map +1 -1
  464. package/dist/testing/extend-expect.js +30 -34
  465. package/dist/testing/extend-expect.js.map +1 -1
  466. package/dist/testing/render.d.ts +7 -9
  467. package/dist/testing/render.d.ts.map +1 -1
  468. package/dist/testing/render.js +7 -17
  469. package/dist/testing/render.js.map +1 -1
  470. package/dist/tsconfig.tsbuildinfo +1 -1
  471. package/docs/api/components/Output.md +0 -3
  472. package/docs/api/components/SourceFile.md +0 -3
  473. package/docs/api/functions/createComment.md +18 -0
  474. package/docs/api/functions/createElement.md +19 -0
  475. package/docs/api/functions/createFragment.md +17 -0
  476. package/docs/api/functions/createTextNode.md +18 -0
  477. package/docs/api/functions/emitDiagnosticForTree.md +19 -0
  478. package/docs/api/functions/ensureIsEmpty.md +1 -1
  479. package/docs/api/functions/getContextForNode.md +18 -0
  480. package/docs/api/functions/getContextForRenderNode.md +4 -4
  481. package/docs/api/functions/getDiagnosticsForTree.md +7 -5
  482. package/docs/api/functions/getRegisteredDiagnosticsForTree.md +18 -0
  483. package/docs/api/functions/index.md +17 -12
  484. package/docs/api/functions/isCustomContext.md +4 -4
  485. package/docs/api/functions/notifyContentState.md +6 -0
  486. package/docs/api/functions/printTree.md +6 -16
  487. package/docs/api/functions/registerDiagnosticsForTree.md +19 -0
  488. package/docs/api/functions/render.md +1 -2
  489. package/docs/api/functions/renderAsync.md +1 -2
  490. package/docs/api/functions/renderTree.md +8 -5
  491. package/docs/api/functions/reportDiagnosticsForTree.md +18 -0
  492. package/docs/api/functions/runInContext.md +28 -0
  493. package/docs/api/functions/sourceFilesForTree.md +6 -16
  494. package/docs/api/index.md +3 -3
  495. package/docs/api/testing/functions/index.md +1 -1
  496. package/docs/api/testing/functions/renderToString.md +1 -1
  497. package/docs/api/types/AlloyNode.md +22 -0
  498. package/docs/api/types/Child.md +1 -1
  499. package/docs/api/types/CommentNode.md +15 -0
  500. package/docs/api/types/Context.md +13 -15
  501. package/docs/api/types/ElementNode.md +18 -0
  502. package/docs/api/types/FragmentNode.md +12 -0
  503. package/docs/api/types/Insertable.md +7 -0
  504. package/docs/api/types/NodeType.md +5 -0
  505. package/docs/api/types/OutputDirectory.md +0 -50
  506. package/docs/api/types/PrintTreeOptions.md +0 -1
  507. package/docs/api/types/RenderTreeOptions.md +7 -0
  508. package/docs/api/types/StiComponentCreator.md +4 -4
  509. package/docs/api/types/StiSignature.md +1 -1
  510. package/docs/api/types/TextNode.md +16 -0
  511. package/docs/api/types/index.md +10 -28
  512. package/docs/api/variables/COMMENT_NODE.md +5 -0
  513. package/docs/api/variables/ELEMENT_NODE.md +11 -0
  514. package/docs/api/variables/FRAGMENT_NODE.md +5 -0
  515. package/docs/api/variables/TEXT_NODE.md +5 -0
  516. package/docs/api/variables/index.md +4 -2
  517. package/docs/formatting.md +1 -1
  518. package/docs/rendering.md +4 -4
  519. package/package.json +6 -6
  520. package/src/components/AccessExpression.test.tsx +5 -13
  521. package/src/components/Output.tsx +2 -1
  522. package/src/components/SourceFile.tsx +1 -1
  523. package/src/content-slot.test.tsx +8 -10
  524. package/src/context/format-options.ts +1 -1
  525. package/src/context.ts +37 -4
  526. package/src/debug/diagnostics.test.tsx +1 -1
  527. package/src/debug/effects.test.tsx +1 -1
  528. package/src/debug/file-streaming.ts +115 -0
  529. package/src/debug/files.test.tsx +15 -11
  530. package/src/debug/index.ts +11 -11
  531. package/src/debug/message-format.test.tsx +32 -19
  532. package/src/debug/render-tree-orphans.test.tsx +10 -19
  533. package/src/debug/render.test.tsx +206 -78
  534. package/src/debug/render.ts +642 -495
  535. package/src/debug/trace-writer.ts +168 -14
  536. package/src/debug/trace.ts +0 -20
  537. package/src/devtools/devtools-protocol.ts +43 -0
  538. package/src/devtools/devtools-server.ts +57 -32
  539. package/src/devtools-entry.browser.ts +5 -0
  540. package/src/devtools-entry.ts +5 -0
  541. package/src/diagnostics.ts +31 -0
  542. package/src/index.ts +66 -2
  543. package/src/jsx-runtime.ts +16 -14
  544. package/src/output-types.ts +47 -0
  545. package/src/reactivity.ts +186 -40
  546. package/src/render/get-string-width.ts +201 -0
  547. package/src/render/index.ts +1 -0
  548. package/src/render/node-context.ts +14 -0
  549. package/src/render/node.ts +442 -0
  550. package/src/render/printer-support.ts +209 -0
  551. package/src/render/printer.ts +817 -0
  552. package/src/render-error.ts +98 -0
  553. package/src/render-output.ts +243 -0
  554. package/src/runtime/component.ts +2 -2
  555. package/src/runtime/create-intrinsic.ts +56 -0
  556. package/src/runtime/fragment.ts +22 -0
  557. package/src/runtime/index.ts +12 -0
  558. package/src/runtime/insert.ts +569 -0
  559. package/src/runtime/intrinsic.ts +14 -70
  560. package/src/scheduler.ts +40 -25
  561. package/src/stc.ts +3 -0
  562. package/src/sti.ts +17 -20
  563. package/src/symbols/symbol-slot.test.tsx +5 -5
  564. package/src/test-render.ts +103 -0
  565. package/src/utils.tsx +55 -37
  566. package/src/write-output.ts +1 -1
  567. package/temp/api-testing.json +390 -14
  568. package/temp/api.json +4320 -4144
  569. package/test/babel-e2e.test.ts +224 -0
  570. package/test/children.test.tsx +4 -7
  571. package/test/components/append-file.test.tsx +0 -1
  572. package/test/components/block.test.tsx +4 -6
  573. package/test/components/copy-file.test.tsx +2 -2
  574. package/test/components/declaration.test.tsx +2 -2
  575. package/test/components/list.test.tsx +20 -29
  576. package/test/components/prose.test.tsx +0 -1
  577. package/test/components/reference-or-content.test.tsx +8 -9
  578. package/test/components/source-file.test.tsx +4 -4
  579. package/test/components/template-file.test.tsx +0 -1
  580. package/test/components/update-file.test.tsx +1 -2
  581. package/test/components/wrap.test.tsx +3 -5
  582. package/test/control-flow/for.test.tsx +39 -31
  583. package/test/control-flow/match.test.tsx +4 -6
  584. package/test/control-flow/show.test.tsx +3 -6
  585. package/test/lazy-isempty.test.tsx +17 -19
  586. package/test/name-policy.test.tsx +0 -1
  587. package/test/node.test.ts +90 -0
  588. package/test/output-e2e.test.ts +198 -0
  589. package/test/reactivity/circular-reactives.test.tsx +6 -6
  590. package/test/reactivity/cleanup.test.tsx +2 -3
  591. package/test/reactivity/ref-rendering.test.tsx +15 -15
  592. package/test/reactivity/test.test.tsx +14 -14
  593. package/test/rendering/basic.test.tsx +0 -1
  594. package/test/rendering/code.test.tsx +0 -1
  595. package/test/rendering/formatting.test.tsx +21 -29
  596. package/test/rendering/indent.test.tsx +0 -1
  597. package/test/rendering/memoization.test.tsx +7 -3
  598. package/test/rendering/print-render-stack.test.tsx +0 -1
  599. package/test/rendering/refkeys.test.tsx +0 -1
  600. package/test/rendering/render-output-diagnostics.test.tsx +120 -0
  601. package/test/runtime.test.ts +448 -0
  602. package/test/stc.test.tsx +0 -1
  603. package/test/tree-test-utils.ts +23 -0
  604. package/test/utils.test.tsx +10 -9
  605. package/test/vitest.setup.ts +1 -0
  606. package/testing/devtools-utils.ts +2 -0
  607. package/testing/extend-expect.ts +32 -47
  608. package/testing/render.ts +17 -21
  609. package/vitest.config.ts +3 -0
  610. package/dist/dev/src/print-hook.js +0 -10
  611. package/dist/dev/src/print-hook.js.map +0 -1
  612. package/dist/dev/src/render.js +0 -872
  613. package/dist/dev/src/render.js.map +0 -1
  614. package/dist/src/print-hook.d.ts +0 -14
  615. package/dist/src/print-hook.d.ts.map +0 -1
  616. package/dist/src/print-hook.js +0 -10
  617. package/dist/src/print-hook.js.map +0 -1
  618. package/dist/src/render.d.ts +0 -155
  619. package/dist/src/render.d.ts.map +0 -1
  620. package/dist/src/render.js +0 -872
  621. package/dist/src/render.js.map +0 -1
  622. package/docs/api/functions/createIntrinsic.md +0 -19
  623. package/docs/api/functions/createRenderTreeHook.md +0 -19
  624. package/docs/api/functions/getElementCache.md +0 -17
  625. package/docs/api/functions/isIntrinsicElement.md +0 -18
  626. package/docs/api/functions/isPrintHook.md +0 -18
  627. package/docs/api/types/AlignIntrinsicElement.md +0 -5
  628. package/docs/api/types/BrIntrinsicElement.md +0 -5
  629. package/docs/api/types/BreakParentIntrinsicElement.md +0 -5
  630. package/docs/api/types/DedentIntrinsicElement.md +0 -5
  631. package/docs/api/types/DedentToRootIntrinsicElement.md +0 -5
  632. package/docs/api/types/ElementCache.md +0 -5
  633. package/docs/api/types/ElementCacheKey.md +0 -5
  634. package/docs/api/types/FillIntrinsicElement.md +0 -5
  635. package/docs/api/types/GroupIntrinsicElement.md +0 -5
  636. package/docs/api/types/HardlineIntrinsicElement.md +0 -5
  637. package/docs/api/types/HbrIntrinsicElement.md +0 -5
  638. package/docs/api/types/IfBreakIntrinsicElement.md +0 -5
  639. package/docs/api/types/IndentIfBreakIntrinsicElement.md +0 -5
  640. package/docs/api/types/IndentIntrinsicElement.md +0 -5
  641. package/docs/api/types/IntrinsicElement.md +0 -5
  642. package/docs/api/types/IntrinsicElementBase.md +0 -9
  643. package/docs/api/types/LbrIntrinsicElement.md +0 -5
  644. package/docs/api/types/LineIntrinsicElement.md +0 -5
  645. package/docs/api/types/LineSuffixBoundaryIntrinsicElement.md +0 -5
  646. package/docs/api/types/LineSuffixIntrinsicElement.md +0 -5
  647. package/docs/api/types/LiterallineIntrinsicElement.md +0 -5
  648. package/docs/api/types/MarkAsRootIntrinsicElement.md +0 -5
  649. package/docs/api/types/PrintHook.md +0 -10
  650. package/docs/api/types/RenderedTextTree.md +0 -5
  651. package/docs/api/types/SbrIntrinsicElement.md +0 -5
  652. package/docs/api/types/SoftlineIntrinsicElement.md +0 -5
  653. package/docs/api/variables/intrinsicElementKey.md +0 -5
  654. package/docs/api/variables/printHookTag.md +0 -7
  655. package/src/print-hook.ts +0 -22
  656. package/src/render.ts +0 -1154
@@ -1 +1 @@
1
- {"version":3,"names":["watch","devalue","isDevtoolsEnabled","registerDevtoolsMessageHandler","isPrintHook","getContext","untrack","flushJobsAsync","sanitizeRecord","resolveComponentSource","deleteDirectory","deleteOutputFile","insertDirectory","insertOutputFile","insertRenderError","insertRenderNode","isTraceEnabled","notifyFlushComplete","notifyRenderComplete","notifyRenderReset","deleteRenderNode","traceDeleteRenderNode","updateRenderNodeProps","traceUpdateRenderNodeProps","updateEffectComponentByContext","updateRenderNodeContext","isDebugEnabled","logDevtoolsMessage","nodeIds","WeakMap","idToNode","Map","entryIds","nodeKinds","fileNodes","directoryNodes","nodeProps","rerenderActions","nextId","handlerRegistered","serializeRenderTreeProps","input","undefined","children","_children","rest","sanitized","stringify","emitNodeRemoved","parentId","id","clearRenderTreeChildrenForId","delete","fileInfo","get","path","dirInfo","getEntryList","parent","list","set","getOrCreateNodeId","node","existing","getRenderNodeId","setEntryId","index","initialize","root","ensureDevtoolsHandler","rootId","registerRenderNodeActions","actions","unregisterRenderNodeActions","message","type","rawId","Number","isFinite","rerender","rerenderAndBreak","recordTextNode","value","recordNodeAdded","info","propsSerialized","kind","name","source","fileName","lineNumber","columnNumber","recordSubtreeAdded","parentNode","subtree","existingId","isCached","savedKind","Array","isArray","push","recordCachedSubtreeChildrenRecursively","clearRenderTreeChildren","length","i","child","subtreeId","hookList","recordNodePropsUpdated","previous","recordDirectoryNode","has","recordFileNode","filetype","removeFileEntriesForNode","beginComponent","options","component","propsSource","isExisting","recordDirectory","recordFile","dispose","componentName","contextName","resolvedSource","ctx","stopWatch","propKeys","Object","keys","filter","key","map","nextSerialized","appendCustomContext","appendPrintHook","hook","appendFragmentChild","appendTextNode","prepareMemoNode","nextErrorId","error","componentStack","serializedStack","entry","renderNodeId","stack","JSON","complete","flushJobsComplete"],"sources":["../../../../src/debug/render.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["watch","devalue","isDevtoolsEnabled","registerDevtoolsMessageHandler","getContext","untrack","getContextForNode","AlloyNode","CommentNode","ELEMENT_NODE","FRAGMENT_NODE","setMutationListener","TEXT_NODE","flushJobsAsync","flushAllDirtyFiles","markFileDirtyForNode","reset","resetFileStreaming","sanitizeRecord","resolveComponentSource","deleteComponentInstance","deleteComponentRoot","insertComponentInstance","insertComponentRoot","insertDirectory","insertOutputFile","insertRenderError","isTraceEnabled","notifyFlushComplete","notifyRenderComplete","notifyRenderReset","deleteRenderNode","traceDeleteRenderNode","insertRenderNode","traceInsertRenderNode","updateComponentInstanceProps","updateEffectComponentByContext","isDebugEnabled","logDevtoolsMessage","isRerenderEnabled","nodeIds","WeakMap","tracked","WeakSet","pendingOwnerComponent","pendingRootComponents","nodeKinds","Map","fileNodes","directoryNodes","nodeProps","rerenderActions","componentStack","componentsById","componentByContextId","ownerComponentByNodeId","childComponentsById","rootComponentsByNodeId","renderChildIds","id","parentId","kind","name","props","sourceFile","sourceLine","sourceCol","contextId","value","set","get","Set","add","nextId","nextErrorId","handlerRegistered","initialize","root","frame","values","stopWatch","ensureDevtoolsHandler","attached","nodeAttached","detached","nodeDetached","rootId","getOrCreateNodeId","undefined","complete","type","flushJobsComplete","node","existing","getRenderNodeId","SKIPPED_COMMENT_DATAS","shouldExposeNode","has","data","classifyNode","t","nodeType","ln","localName","slice","length","currentComponentFrame","currentContextComponentFrame","ctx","findRootComponentsForAttach","parent","frames","i","hostParent","unshift","ownerFrameForAttach","inheritedOwner","active","contextFrame","parentOwner","recordComponentRoot","renderNodeId","rootSet","ordinal","roots","push","components","file","path","filetype","directory","actions","removeComponentRoot","deleteWhenEmpty","delete","filter","size","deleteComponentFrame","children","childId","child","parentComponentId","siblings","resolveParentId","attachedParent","ownerFrame","rootFrames","attachWithSelf","inheritedRoots","pendingOwner","pendingRoots","c","firstChild","nextSibling","existingId","emitAdded","rootFrame","cls","entry","source","fileName","lineNumber","columnNumber","formerParent","detachRecursive","emitRemoved","componentIds","componentId","component","serializeRenderTreeProps","input","_children","rest","sanitized","stringify","beginComponent","options","recordDirectory","recordFile","dispose","propsSource","componentName","contextName","propsSerialized","resolvedSource","parentComponent","owner","propKeys","Object","keys","k","map","next","previous","disposed","splice","message","rawId","Number","isFinite","rerender","rerenderAndBreak","error","err","serializedStack","stack","JSON"],"sources":["../../../../src/debug/render.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,KAAK,QAAQ,iBAAiB;AACvC,OAAO,KAAKC,OAAO,MAAM,SAAS;AAKlC,SACEC,iBAAiB,EACjBC,8BAA8B,QACzB,gCAAgC;AACvC,SAASC,UAAU,EAAEC,OAAO,QAAQ,kBAAkB;AACtD,SAASC,iBAAiB,QAAQ,2BAA2B;AAC7D,SACEC,SAAS,EACTC,WAAW,EACXC,YAAY,EAEZC,aAAa,EACbC,mBAAmB,EACnBC,SAAS,QAEJ,mBAAmB;AAC1B,SAASC,cAAc,QAAQ,iBAAiB;AAEhD,SACEC,kBAAkB,EAClBC,oBAAoB,EACpBC,KAAK,IAAIC,kBAAkB,QACtB,qBAAqB;AAC5B,SAASC,cAAc,QAAQ,gBAAgB;AAC/C,SAASC,sBAAsB,QAAQ,iBAAiB;AACxD,SACEC,uBAAuB,EACvBC,mBAAmB,EACnBC,uBAAuB,EACvBC,mBAAmB,EACnBC,eAAe,EACfC,gBAAgB,EAChBC,iBAAiB,EACjBC,cAAc,EACdC,mBAAmB,EACnBC,oBAAoB,EACpBC,iBAAiB,EACjBC,gBAAgB,IAAIC,qBAAqB,EACzCC,gBAAgB,IAAIC,qBAAqB,EACzCC,4BAA4B,EAC5BC,8BAA8B,QACzB,mBAAmB;AAC1B,SAASC,cAAc,EAAEC,kBAAkB,QAAQ,YAAY;;AAE/D;;AAEA;;AAGA;;AAwBA,OAAO,SAASC,iBAAiBA,CAAA,EAAY;EAC3C,OAAOrC,iBAAiB,CAAC,CAAC;AAC5B;AAkBA;;AAEA;;AAEA;AACA,IAAIsC,OAAO,GAAG,IAAIC,OAAO,CAAoB,CAAC;AAC9C;AACA,IAAIC,OAAO,GAAG,IAAIC,OAAO,CAAY,CAAC;AACtC;AACA,IAAIC,qBAAqB,GAAG,IAAIH,OAAO,CAA4B,CAAC;AACpE;AACA,IAAII,qBAAqB,GAAG,IAAIJ,OAAO,CAA8B,CAAC;AACtE;AACA,IAAIK,SAAS,GAAG,IAAIC,GAAG,CAGrB,CAAC;AACH;AACA,IAAIC,SAAS,GAAG,IAAID,GAAG,CAA6C,CAAC;AACrE,IAAIE,cAAc,GAAG,IAAIF,GAAG,CAA2B,CAAC;AACxD;AACA,IAAIG,SAAS,GAAG,IAAIH,GAAG,CAA6B,CAAC;AACrD;AACA,IAAII,eAAe,GAAG,IAAIJ,GAAG,CAA4B,CAAC;AAiB1D,IAAIK,cAAgC,GAAG,EAAE;AACzC,IAAIC,cAAc,GAAG,IAAIN,GAAG,CAAyB,CAAC;AACtD,IAAIO,oBAAoB,GAAG,IAAIP,GAAG,CAAyB,CAAC;AAC5D,IAAIQ,sBAAsB,GAAG,IAAIR,GAAG,CAAiB,CAAC;AACtD,IAAIS,mBAAmB,GAAG,IAAIT,GAAG,CAAsB,CAAC;AACxD,IAAIU,sBAAsB,GAAG,IAAIV,GAAG,CAAsB,CAAC;;AAE3D;AACA;AACA;AACA;AACA;AACA;AACA,IAAIW,cAAc,GAAG,IAAIX,GAAG,CAAsB,CAAC;AAEnD,SAASd,gBAAgBA,CACvB0B,EAAU,EACVC,QAAuB,EACvBC,IAAY,EACZC,IAAwB,EACxBC,KAAyB,EACzBC,UAA8B,EAC9BC,UAA8B,EAC9BC,SAA6B,EAC7BC,SAAwB,EACxBC,KAAyB,EACnB;EACN,IAAIR,QAAQ,KAAK,IAAI,EAAE;IACrB,IAAIS,GAAG,GAAGX,cAAc,CAACY,GAAG,CAACV,QAAQ,CAAC;IACtC,IAAI,CAACS,GAAG,EAAE;MACRA,GAAG,GAAG,IAAIE,GAAG,CAAC,CAAC;MACfb,cAAc,CAACW,GAAG,CAACT,QAAQ,EAAES,GAAG,CAAC;IACnC;IACAA,GAAG,CAACG,GAAG,CAACb,EAAE,CAAC;EACb;EACAzB,qBAAqB,CACnByB,EAAE,EACFC,QAAQ,EACRC,IAAI,EACJC,IAAI,EACJC,KAAK,EACLC,UAAU,EACVC,UAAU,EACVC,SAAS,EACTC,SAAS,EACTC,KACF,CAAC;AACH;AAEA,IAAIK,MAAM,GAAG,CAAC;AACd,IAAIC,WAAW,GAAG,CAAC;AACnB,IAAIC,iBAAiB,GAAG,KAAK;;AAE7B;;AAEA;;AAEA,OAAO,SAASC,UAAUA,CAACC,IAAe,EAAE;EAC1C,KAAK,MAAMC,KAAK,IAAIzB,cAAc,CAAC0B,MAAM,CAAC,CAAC,EAAE;IAC3CD,KAAK,CAACE,SAAS,GAAG,CAAC;EACrB;EACA,IAAI,CAAC3C,cAAc,CAAC,CAAC,EAAE;IACrB1B,mBAAmB,CAAC,IAAI,CAAC;IACzB;EACF;EACAsE,qBAAqB,CAAC,CAAC;EACvBzC,OAAO,GAAG,IAAIC,OAAO,CAAC,CAAC;EACvBC,OAAO,GAAG,IAAIC,OAAO,CAAC,CAAC;EACvBC,qBAAqB,GAAG,IAAIH,OAAO,CAAC,CAAC;EACrCI,qBAAqB,GAAG,IAAIJ,OAAO,CAAC,CAAC;EACrCiB,cAAc,GAAG,IAAIX,GAAG,CAAC,CAAC;EAC1BD,SAAS,GAAG,IAAIC,GAAG,CAAC,CAAC;EACrBC,SAAS,GAAG,IAAID,GAAG,CAAC,CAAC;EACrBE,cAAc,GAAG,IAAIF,GAAG,CAAC,CAAC;EAC1BG,SAAS,GAAG,IAAIH,GAAG,CAAC,CAAC;EACrBI,eAAe,GAAG,IAAIJ,GAAG,CAAC,CAAC;EAC3BK,cAAc,GAAG,EAAE;EACnBC,cAAc,GAAG,IAAIN,GAAG,CAAC,CAAC;EAC1BO,oBAAoB,GAAG,IAAIP,GAAG,CAAC,CAAC;EAChCQ,sBAAsB,GAAG,IAAIR,GAAG,CAAC,CAAC;EAClCS,mBAAmB,GAAG,IAAIT,GAAG,CAAC,CAAC;EAC/BU,sBAAsB,GAAG,IAAIV,GAAG,CAAC,CAAC;EAClC0B,MAAM,GAAG,CAAC;EACVxD,kBAAkB,CAAC,CAAC;EACpBN,mBAAmB,CAAC;IAAEuE,QAAQ,EAAEC,YAAY;IAAEC,QAAQ,EAAEC;EAAa,CAAC,CAAC;EACvEvD,iBAAiB,CAAC,CAAC;EACnB,MAAMwD,MAAM,GAAGC,iBAAiB,CAACV,IAAI,CAAC;EACtCnC,OAAO,CAAC8B,GAAG,CAACK,IAAI,CAAC;EACjB/B,SAAS,CAACuB,GAAG,CAACiB,MAAM,EAAE;IAAEzB,IAAI,EAAE;EAAO,CAAC,CAAC;EACvC5B,gBAAgB,CACdqD,MAAM,EACN,IAAI,EACJ,MAAM,EACNE,SAAS,EACTA,SAAS,EACTA,SAAS,EACTA,SAAS,EACTA,SAAS,EACT,IAAI,EACJA,SACF,CAAC;AACH;AAEA,OAAO,SAASC,QAAQA,CAAA,EAAG;EACzB3E,kBAAkB,CAAC,CAAC;EACpBwB,kBAAkB,CAAC;IAAEoD,IAAI,EAAE;EAAkB,CAAC,CAAC;EAC/C7D,oBAAoB,CAAC,CAAC;AACxB;AAEA,OAAO,SAAS8D,iBAAiBA,CAAA,EAAG;EAClCrD,kBAAkB,CAAC;IAAEoD,IAAI,EAAE;EAAqB,CAAC,CAAC;EAClD9D,mBAAmB,CAAC,CAAC;AACvB;;AAEA;;AAEA;;AAEA,SAAS2D,iBAAiBA,CAACK,IAAe,EAAU;EAClD,MAAMC,QAAQ,GAAGrD,OAAO,CAAC8B,GAAG,CAACsB,IAAI,CAAC;EAClC,IAAIC,QAAQ,KAAKL,SAAS,EAAE,OAAOK,QAAQ;EAC3C,MAAMlC,EAAE,GAAGc,MAAM,EAAE;EACnBjC,OAAO,CAAC6B,GAAG,CAACuB,IAAI,EAAEjC,EAAE,CAAC;EACrB,OAAOA,EAAE;AACX;AAEA,OAAO,SAASmC,eAAeA,CAACF,IAAyB,EAAsB;EAC7E,IAAI,CAACvD,cAAc,CAAC,CAAC,EAAE,OAAOmD,SAAS;EACvC,IAAI,EAAEI,IAAI,YAAYrF,SAAS,CAAC,EAAE,OAAOiF,SAAS;EAClD,OAAOhD,OAAO,CAAC8B,GAAG,CAACsB,IAAI,CAAC;AAC1B;;AAEA;;AAEA;;AAEA,MAAMG,qBAAqB,GAAG,IAAIxB,GAAG,CAAC,CACpC,YAAY,EACZ,UAAU,EACV,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,eAAe,CAChB,CAAC;AAEF,SAASyB,gBAAgBA,CAACJ,IAAe,EAAW;EAClD,IAAIA,IAAI,YAAYpF,WAAW,EAAE;IAC/B;IACA,OAAO,CAACuF,qBAAqB,CAACE,GAAG,CAACL,IAAI,CAACM,IAAI,CAAC;EAC9C;EACA,OAAO,IAAI;AACb;AAEA,SAASC,YAAYA,CAACP,IAAe,EAInC;EACA,MAAMQ,CAAC,GAAGR,IAAI,CAACS,QAAQ;EACvB,IAAID,CAAC,KAAKxF,SAAS,EAAE;IACnB,OAAO;MAAEiD,IAAI,EAAE,MAAM;MAAEO,KAAK,EAAGwB,IAAI,CAAcM;IAAK,CAAC;EACzD;EACA,IAAIE,CAAC,KAAK1F,aAAa,EAAE;IACvB,OAAO;MAAEmD,IAAI,EAAE;IAAW,CAAC;EAC7B;EACA,IAAIuC,CAAC,KAAK3F,YAAY,EAAE;IACtB,MAAM6F,EAAE,GAAIV,IAAI,CAAiBW,SAAS;IAC1C,IACED,EAAE,KAAK,mBAAmB,IAC1BA,EAAE,KAAK,iBAAiB,IACxBA,EAAE,KAAK,iBAAiB,EACxB;MACA,OAAO;QAAEzC,IAAI,EAAEyC,EAAE,CAACE,KAAK,CAAC,QAAQ,CAACC,MAAM,CAAC;QAAE3C,IAAI,EAAEwC;MAAG,CAAC;IACtD;IACA,OAAO;MAAEzC,IAAI,EAAE,WAAW;MAAEC,IAAI,EAAEwC;IAAG,CAAC;EACxC;EACA;EACA;EACA,OAAO;IAAEzC,IAAI,EAAE,SAAS;IAAEO,KAAK,EAAGwB,IAAI,CAAiBM;EAAK,CAAC;AAC/D;;AAEA;;AAEA;;AAEA,SAASQ,qBAAqBA,CAAA,EAA+B;EAC3D,OAAOtD,cAAc,CAACA,cAAc,CAACqD,MAAM,GAAG,CAAC,CAAC;AAClD;AAEA,SAASE,4BAA4BA,CAAA,EAA+B;EAClE,MAAMC,GAAG,GAAGxG,UAAU,CAAC,CAAC;EACxB,OAAOwG,GAAG,GAAGtD,oBAAoB,CAACgB,GAAG,CAACsC,GAAG,CAACjD,EAAE,CAAC,GAAG6B,SAAS;AAC3D;AAEA,SAASqB,2BAA2BA,CAACC,MAAiB,EAAoB;EACxE,MAAMC,MAAwB,GAAG,EAAE;EACnC,KAAK,IAAIC,CAAC,GAAG5D,cAAc,CAACqD,MAAM,GAAG,CAAC,EAAEO,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IACnD,MAAMlC,KAAK,GAAG1B,cAAc,CAAC4D,CAAC,CAAC;IAC/B,IAAIlC,KAAK,CAACmC,UAAU,KAAKH,MAAM,EAAEC,MAAM,CAACG,OAAO,CAACpC,KAAK,CAAC;EACxD;EACA,OAAOiC,MAAM;AACf;AAEA,SAASI,mBAAmBA,CAC1BvD,QAAuB,EACvBwD,cAA0C,EACd;EAC5B,IAAIA,cAAc,EAAE,OAAOA,cAAc;EACzC,MAAMC,MAAM,GAAGX,qBAAqB,CAAC,CAAC;EACtC,IAAIW,MAAM,EAAE,OAAOA,MAAM;EACzB,MAAMC,YAAY,GAAGX,4BAA4B,CAAC,CAAC;EACnD,IAAIW,YAAY,EAAE,OAAOA,YAAY;EACrC,IAAI1D,QAAQ,KAAK,IAAI,EAAE;IACrB,MAAM2D,WAAW,GAAGhE,sBAAsB,CAACe,GAAG,CAACV,QAAQ,CAAC;IACxD,IAAI2D,WAAW,KAAK/B,SAAS,EAAE,OAAOnC,cAAc,CAACiB,GAAG,CAACiD,WAAW,CAAC;EACvE;EACA,OAAO/B,SAAS;AAClB;AAEA,SAASgC,mBAAmBA,CAC1B1C,KAAqB,EACrB2C,YAAoB,EACd;EACN,IAAI3C,KAAK,CAAC4C,OAAO,CAACzB,GAAG,CAACwB,YAAY,CAAC,EAAE;EACrC3C,KAAK,CAAC4C,OAAO,CAAClD,GAAG,CAACiD,YAAY,CAAC;EAC/B,MAAME,OAAO,GAAG7C,KAAK,CAAC8C,KAAK,CAACnB,MAAM;EAClC3B,KAAK,CAAC8C,KAAK,CAACC,IAAI,CAACJ,YAAY,CAAC;EAC9B,IAAIK,UAAU,GAAGrE,sBAAsB,CAACa,GAAG,CAACmD,YAAY,CAAC;EACzD,IAAI,CAACK,UAAU,EAAE;IACfA,UAAU,GAAG,IAAIvD,GAAG,CAAC,CAAC;IACtBd,sBAAsB,CAACY,GAAG,CAACoD,YAAY,EAAEK,UAAU,CAAC;EACtD;EACAA,UAAU,CAACtD,GAAG,CAACM,KAAK,CAACnB,EAAE,CAAC;EACxBpC,mBAAmB,CAACuD,KAAK,CAACnB,EAAE,EAAE8D,YAAY,EAAEE,OAAO,CAAC;EACpD,IAAIA,OAAO,KAAK,CAAC,EAAE;IACjB,IAAI7C,KAAK,CAACiD,IAAI,EAAE;MACd/E,SAAS,CAACqB,GAAG,CAACoD,YAAY,EAAE3C,KAAK,CAACiD,IAAI,CAAC;MACvCtG,gBAAgB,CAACqD,KAAK,CAACiD,IAAI,CAACC,IAAI,EAAElD,KAAK,CAACiD,IAAI,CAACE,QAAQ,EAAER,YAAY,CAAC;IACtE;IACA,IAAI3C,KAAK,CAACoD,SAAS,EAAE;MACnBjF,cAAc,CAACoB,GAAG,CAACoD,YAAY,EAAE3C,KAAK,CAACoD,SAAS,CAAC;IACnD;EACF;EACA,IAAIpD,KAAK,CAACqD,OAAO,EAAEhF,eAAe,CAACkB,GAAG,CAACoD,YAAY,EAAE3C,KAAK,CAACqD,OAAO,CAAC;AACrE;AAEA,SAASC,mBAAmBA,CAC1BtD,KAAqB,EACrB2C,YAAoB,EACpBY,eAAe,GAAG,IAAI,EAChB;EACN,IAAI,CAACvD,KAAK,CAAC4C,OAAO,CAACY,MAAM,CAACb,YAAY,CAAC,EAAE;EACzC3C,KAAK,CAAC8C,KAAK,GAAG9C,KAAK,CAAC8C,KAAK,CAACW,MAAM,CAAE5E,EAAE,IAAKA,EAAE,KAAK8D,YAAY,CAAC;EAC7D,MAAMK,UAAU,GAAGrE,sBAAsB,CAACa,GAAG,CAACmD,YAAY,CAAC;EAC3D,IAAIK,UAAU,EAAE;IACdA,UAAU,CAACQ,MAAM,CAACxD,KAAK,CAACnB,EAAE,CAAC;IAC3B,IAAImE,UAAU,CAACU,IAAI,KAAK,CAAC,EAAE/E,sBAAsB,CAAC6E,MAAM,CAACb,YAAY,CAAC;EACxE;EACApG,mBAAmB,CAACyD,KAAK,CAACnB,EAAE,EAAE8D,YAAY,CAAC;EAC3C,IAAIY,eAAe,IAAIvD,KAAK,CAAC4C,OAAO,CAACc,IAAI,KAAK,CAAC,EAAE;IAC/CC,oBAAoB,CAAC3D,KAAK,CAAC;EAC7B;AACF;AAEA,SAAS2D,oBAAoBA,CAAC3D,KAAqB,EAAQ;EACzD,IAAI,CAACzB,cAAc,CAACiF,MAAM,CAACxD,KAAK,CAACnB,EAAE,CAAC,EAAE;EAEtC,MAAM+E,QAAQ,GAAGlF,mBAAmB,CAACc,GAAG,CAACQ,KAAK,CAACnB,EAAE,CAAC;EAClD,IAAI+E,QAAQ,EAAE;IACZlF,mBAAmB,CAAC8E,MAAM,CAACxD,KAAK,CAACnB,EAAE,CAAC;IACpC,KAAK,MAAMgF,OAAO,IAAI,CAAC,GAAGD,QAAQ,CAAC,EAAE;MACnC,MAAME,KAAK,GAAGvF,cAAc,CAACiB,GAAG,CAACqE,OAAO,CAAC;MACzC,IAAIC,KAAK,EAAEH,oBAAoB,CAACG,KAAK,CAAC;IACxC;EACF;EAEA,KAAK,MAAMtD,MAAM,IAAI,CAAC,GAAGR,KAAK,CAAC8C,KAAK,CAAC,EAAE;IACrCQ,mBAAmB,CAACtD,KAAK,EAAEQ,MAAM,EAAE,KAAK,CAAC;EAC3C;EAEA,IAAIR,KAAK,CAAC+D,iBAAiB,KAAK,IAAI,EAAE;IACpC,MAAMC,QAAQ,GAAGtF,mBAAmB,CAACc,GAAG,CAACQ,KAAK,CAAC+D,iBAAiB,CAAC;IACjEC,QAAQ,EAAER,MAAM,CAACxD,KAAK,CAACnB,EAAE,CAAC;EAC5B;EACA,IACEmB,KAAK,CAACX,SAAS,KAAK,IAAI,IACxBb,oBAAoB,CAACgB,GAAG,CAACQ,KAAK,CAACX,SAAS,CAAC,EAAER,EAAE,KAAKmB,KAAK,CAACnB,EAAE,EAC1D;IACAL,oBAAoB,CAACgF,MAAM,CAACxD,KAAK,CAACX,SAAS,CAAC;EAC9C;EACAjB,SAAS,CAACoF,MAAM,CAACxD,KAAK,CAACnB,EAAE,CAAC;EAC1BmB,KAAK,CAACE,SAAS,GAAG,CAAC;EACnB5D,uBAAuB,CAAC0D,KAAK,CAACnB,EAAE,CAAC;AACnC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASoF,eAAeA,CACtBnD,IAAe,EACfoD,cAAyB,EACE;EAC3B,IAAItG,OAAO,CAACuD,GAAG,CAAC+C,cAAc,CAAC,EAAE;IAC/B,MAAMrF,EAAE,GAAGnB,OAAO,CAAC8B,GAAG,CAAC0E,cAAc,CAAC;IACtC,OAAOrF,EAAE,KAAK6B,SAAS,GAAG,IAAI,GAAG7B,EAAE;EACrC;EACA,OAAO6B,SAAS;AAClB;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASL,YAAYA,CAACS,IAAe,EAAEkB,MAAiB,EAAQ;EACrE,IAAI,CAACzE,cAAc,CAAC,CAAC,EAAE;EACvBtB,oBAAoB,CAAC+F,MAAM,CAAC;EAC5B,MAAMlD,QAAQ,GAAGmF,eAAe,CAACnD,IAAI,EAAEkB,MAAM,CAAC;EAC9C,MAAMmC,UAAU,GAAGvC,qBAAqB,CAAC,CAAC,IAAIC,4BAA4B,CAAC,CAAC;EAC5E,IAAIuC,UAAU,GAAGrC,2BAA2B,CAACC,MAAM,CAAC;EACpD,IACEoC,UAAU,CAACzC,MAAM,KAAK,CAAC,IACvBwC,UAAU,KAAKzD,SAAS,IACxB5B,QAAQ,KAAK4B,SAAS,KACrB5B,QAAQ,KAAK,IAAI,IAChBL,sBAAsB,CAACe,GAAG,CAACV,QAAQ,CAAC,KAAKqF,UAAU,CAACtF,EAAE,CAAC,EACzD;IACAuF,UAAU,GAAG,CAACD,UAAU,CAAC;EAC3B;EACA,IAAIrF,QAAQ,KAAK4B,SAAS,EAAE;IAC1B,IAAIyD,UAAU,EAAErG,qBAAqB,CAACyB,GAAG,CAACuB,IAAI,EAAEqD,UAAU,CAAC;IAC3D,IAAIC,UAAU,CAACzC,MAAM,GAAG,CAAC,EAAE5D,qBAAqB,CAACwB,GAAG,CAACuB,IAAI,EAAEsD,UAAU,CAAC;IACtE;EACF;EACAC,cAAc,CAACvD,IAAI,EAAEhC,QAAQ,EAAEqF,UAAU,EAAEC,UAAU,CAAC;AACxD;AAEA,SAASC,cAAcA,CACrBvD,IAAe,EACfhC,QAAuB,EACvBwD,cAA0C,EAC1CgC,cAAgC,EAC1B;EACN,MAAMC,YAAY,GAAGzG,qBAAqB,CAAC0B,GAAG,CAACsB,IAAI,CAAC;EACpD,IAAIyD,YAAY,KAAK7D,SAAS,EAAE;IAC9B5C,qBAAqB,CAAC0F,MAAM,CAAC1C,IAAI,CAAC;EACpC;EACA,MAAM0D,YAAY,GAAGzG,qBAAqB,CAACyB,GAAG,CAACsB,IAAI,CAAC;EACpD,IAAI0D,YAAY,KAAK9D,SAAS,EAAE;IAC9B3C,qBAAqB,CAACyF,MAAM,CAAC1C,IAAI,CAAC;EACpC;EACA,MAAMqD,UAAU,GAAG9B,mBAAmB,CACpCvD,QAAQ,EACRyF,YAAY,IAAIjC,cAClB,CAAC;EACD,MAAM8B,UAAU,GAAGI,YAAY,IAAIF,cAAc;EACjD,IAAI,CAACpD,gBAAgB,CAACJ,IAAI,CAAC,EAAE;IAC3B,KAAK,IAAI2D,CAAC,GAAG3D,IAAI,CAAC4D,UAAU,EAAED,CAAC,KAAK,IAAI,EAAEA,CAAC,GAAGA,CAAC,CAACE,WAAW,EAAE;MAC3DN,cAAc,CAACI,CAAC,EAAE3F,QAAQ,EAAEqF,UAAU,EAAEC,UAAU,CAAC;IACrD;IACA;EACF;EACA,IAAIxG,OAAO,CAACuD,GAAG,CAACL,IAAI,CAAC,EAAE;IACrB;IACA;IACA;IACA,MAAM8D,UAAU,GAAGlH,OAAO,CAAC8B,GAAG,CAACsB,IAAI,CAAE;IACrC,KAAK,IAAI2D,CAAC,GAAG3D,IAAI,CAAC4D,UAAU,EAAED,CAAC,KAAK,IAAI,EAAEA,CAAC,GAAGA,CAAC,CAACE,WAAW,EAAE;MAC3D,IAAI,CAAC/G,OAAO,CAACuD,GAAG,CAACsD,CAAC,CAAC,EAAE;QACnBJ,cAAc,CAACI,CAAC,EAAEG,UAAU,EAAET,UAAU,EAAE,EAAE,CAAC;MAC/C;IACF;IACA;EACF;EACA,MAAMtF,EAAE,GAAG4B,iBAAiB,CAACK,IAAI,CAAC;EAClC+D,SAAS,CAAC/D,IAAI,EAAEjC,EAAE,EAAEC,QAAQ,CAAC;EAC7BlB,OAAO,CAAC8B,GAAG,CAACoB,IAAI,CAAC;EACjB,IAAIqD,UAAU,KAAKzD,SAAS,EAAE;IAC5BjC,sBAAsB,CAACc,GAAG,CAACV,EAAE,EAAEsF,UAAU,CAACtF,EAAE,CAAC;EAC/C;EACA,KAAK,MAAMiG,SAAS,IAAIV,UAAU,EAAE;IAClC1B,mBAAmB,CAACoC,SAAS,EAAEjG,EAAE,CAAC;EACpC;EACA,KAAK,IAAI4F,CAAC,GAAG3D,IAAI,CAAC4D,UAAU,EAAED,CAAC,KAAK,IAAI,EAAEA,CAAC,GAAGA,CAAC,CAACE,WAAW,EAAE;IAC3D,IAAI,CAAC/G,OAAO,CAACuD,GAAG,CAACsD,CAAC,CAAC,EAAEJ,cAAc,CAACI,CAAC,EAAE5F,EAAE,EAAEsF,UAAU,EAAE,EAAE,CAAC;EAC5D;AACF;AAEA,SAASU,SAASA,CAAC/D,IAAe,EAAEjC,EAAU,EAAEC,QAAuB,EAAQ;EAC7E,MAAMiG,GAAG,GAAG1D,YAAY,CAACP,IAAI,CAAC;EAC9B;EACA;EACA,IAAIkE,KAAK,GAAGhH,SAAS,CAACwB,GAAG,CAACX,EAAE,CAAC;EAC7B,IAAI,CAACmG,KAAK,EAAE;IACVA,KAAK,GAAG;MAAEjG,IAAI,EAAEgG,GAAG,CAAChG,IAAI;MAAEC,IAAI,EAAE+F,GAAG,CAAC/F;IAAK,CAAC;IAC1ChB,SAAS,CAACuB,GAAG,CAACV,EAAE,EAAEmG,KAAK,CAAC;EAC1B,CAAC,MAAM;IACLA,KAAK,CAACjG,IAAI,GAAGgG,GAAG,CAAChG,IAAI;IACrB,IAAIgG,GAAG,CAAC/F,IAAI,KAAK0B,SAAS,EAAEsE,KAAK,CAAChG,IAAI,GAAG+F,GAAG,CAAC/F,IAAI;EACnD;EACA,MAAMC,KAAK,GAAGb,SAAS,CAACoB,GAAG,CAACX,EAAE,CAAC;EAC/B1B,gBAAgB,CACd0B,EAAE,EACFC,QAAQ,EACRiG,GAAG,CAAChG,IAAI,EACRgG,GAAG,CAAC/F,IAAI,EACRC,KAAK,EACL+F,KAAK,CAACC,MAAM,EAAEC,QAAQ,EACtBF,KAAK,CAACC,MAAM,EAAEE,UAAU,EACxBH,KAAK,CAACC,MAAM,EAAEG,YAAY,EAC1B5J,iBAAiB,CAACsF,IAAI,CAAC,EAAEjC,EAAE,IAAI,IAAI,EACnCkG,GAAG,CAACzF,KACN,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASiB,YAAYA,CAACO,IAAe,EAAEuE,YAAuB,EAAQ;EAC3E,IAAI,CAAC9H,cAAc,CAAC,CAAC,EAAE;EACvBtB,oBAAoB,CAACoJ,YAAY,CAAC;EAClCC,eAAe,CAACxE,IAAI,CAAC;AACvB;AAEA,SAASwE,eAAeA,CAACxE,IAAe,EAAQ;EAC9C,KAAK,IAAI2D,CAAC,GAAG3D,IAAI,CAAC4D,UAAU,EAAED,CAAC,KAAK,IAAI,EAAEA,CAAC,GAAGA,CAAC,CAACE,WAAW,EAAE;IAC3DW,eAAe,CAACb,CAAC,CAAC;EACpB;EACA,IAAI,CAAC7G,OAAO,CAACuD,GAAG,CAACL,IAAI,CAAC,EAAE;EACxBlD,OAAO,CAAC4F,MAAM,CAAC1C,IAAI,CAAC;EACpB,IAAI,CAACI,gBAAgB,CAACJ,IAAI,CAAC,EAAE;EAC7B,MAAMjC,EAAE,GAAGnB,OAAO,CAAC8B,GAAG,CAACsB,IAAI,CAAC;EAC5B,IAAIjC,EAAE,KAAK6B,SAAS,EAAE;EACtB6E,WAAW,CAAC1G,EAAE,CAAC;AACjB;AAEA,SAAS0G,WAAWA,CAAC1G,EAAU,EAAQ;EACrC,MAAM2G,YAAY,GAAG7G,sBAAsB,CAACa,GAAG,CAACX,EAAE,CAAC;EACnD,IAAI2G,YAAY,EAAE;IAChB,KAAK,MAAMC,WAAW,IAAI,CAAC,GAAGD,YAAY,CAAC,EAAE;MAC3C,MAAME,SAAS,GAAGnH,cAAc,CAACiB,GAAG,CAACiG,WAAW,CAAC;MACjD,IAAIC,SAAS,EAAEpC,mBAAmB,CAACoC,SAAS,EAAE7G,EAAE,CAAC;IACnD;EACF;EACA3B,qBAAqB,CAAC2B,EAAE,CAAC;EACzBR,eAAe,CAACmF,MAAM,CAAC3E,EAAE,CAAC;EAC1BT,SAAS,CAACoF,MAAM,CAAC3E,EAAE,CAAC;EACpBb,SAAS,CAACwF,MAAM,CAAC3E,EAAE,CAAC;EACpB;EACAX,SAAS,CAACsF,MAAM,CAAC3E,EAAE,CAAC;EACpBV,cAAc,CAACqF,MAAM,CAAC3E,EAAE,CAAC;EACzBJ,sBAAsB,CAAC+E,MAAM,CAAC3E,EAAE,CAAC;EACjC;EACA,MAAM+E,QAAQ,GAAGhF,cAAc,CAACY,GAAG,CAACX,EAAE,CAAC;EACvC,IAAI+E,QAAQ,KAAKlD,SAAS,EAAE;IAC1B9B,cAAc,CAAC4E,MAAM,CAAC3E,EAAE,CAAC;IACzB,KAAK,MAAMgF,OAAO,IAAID,QAAQ,EAAE;MAC9B2B,WAAW,CAAC1B,OAAO,CAAC;IACtB;EACF;AACF;;AAEA;;AAEA;;AAEA,SAAS8B,wBAAwBA,CAACC,KAA0C,EAAE;EAC5E,OAAOrK,OAAO,CAAC,MAAM;IACnB,IAAI,CAACqK,KAAK,EAAE,OAAOlF,SAAS;IAC5B,MAAM;MAAEkD,QAAQ,EAAEiC,SAAS;MAAE,GAAGC;IAAK,CAAC,GAAGF,KAAK;IAC9C,MAAMG,SAAS,GAAG3J,cAAc,CAAC0J,IAAI,CAAC;IACtC,IAAI,CAACC,SAAS,EAAE,OAAOrF,SAAS;IAChC,IAAI;MACF,OAAOvF,OAAO,CAAC6K,SAAS,CAACD,SAAS,CAAC;IACrC,CAAC,CAAC,MAAM;MACN,OAAOrF,SAAS;IAClB;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,SAASuF,cAAcA,CAC5BC,OAA8B,EACP;EACvB,IAAI,CAAC3I,cAAc,CAAC,CAAC,EAAE;IACrB,OAAO;MACL4I,eAAeA,CAAA,EAAG,CAAC,CAAC;MACpBC,UAAUA,CAAA,EAAG,CAAC,CAAC;MACfC,OAAOA,CAAA,EAAG,CAAC;IACb,CAAC;EACH;EAEA,MAAM;IAAEX,SAAS;IAAEY,WAAW;IAAErB,MAAM;IAAEjD,MAAM;IAAEqB;EAAQ,CAAC,GAAG6C,OAAO;EAEnE,OAAO3K,OAAO,CAAC,MAAM;IACnB,IAAIgL,aAAa,GAAGb,SAAS,CAACA,SAAS,CAAC1G,IAAI;IAC5C,IAAIuH,aAAa,KAAK,UAAU,EAAE;MAChC,MAAMC,WAAW,GAAId,SAAS,CAACA,SAAS,CACrCc,WAAW;MACd,IAAIA,WAAW,EAAE;QACfD,aAAa,GAAG,WAAWC,WAAW,EAAE;MAC1C;IACF;IACA,MAAMC,eAAe,GAAGd,wBAAwB,CAACW,WAAW,CAAC;IAC7D,MAAMI,cAAc,GAAGrK,sBAAsB,CAAC4I,MAAM,CAAC;IAErD,MAAMpG,EAAE,GAAGc,MAAM,EAAE;IACnB,MAAMmC,GAAG,GAAGxG,UAAU,CAAC,CAAC;IACxB,MAAMqL,eAAe,GACnBrI,cAAc,CAACA,cAAc,CAACqD,MAAM,GAAG,CAAC,CAAC,KACxCG,GAAG,EAAE8E,KAAK,GAAGpI,oBAAoB,CAACgB,GAAG,CAACsC,GAAG,CAAC8E,KAAK,CAAC/H,EAAE,CAAC,GAAG6B,SAAS,CAAC;IACnE,MAAMV,KAAqB,GAAG;MAC5BnB,EAAE;MACFkF,iBAAiB,EAAE4C,eAAe,EAAE9H,EAAE,IAAI,IAAI;MAC9CsD,UAAU,EAAEH,MAAM;MAClBhD,IAAI,EAAEuH,aAAa;MACnBE,eAAe;MACfxB,MAAM,EAAEyB,cAAc;MACtBrH,SAAS,EAAEyC,GAAG,EAAEjD,EAAE,IAAI,IAAI;MAC1BiE,KAAK,EAAE,EAAE;MACTF,OAAO,EAAE,IAAInD,GAAG,CAAC,CAAC;MAClB4D;IACF,CAAC;IACD9E,cAAc,CAACgB,GAAG,CAACV,EAAE,EAAEmB,KAAK,CAAC;IAC7B,IAAIA,KAAK,CAAC+D,iBAAiB,KAAK,IAAI,EAAE;MACpC,IAAIH,QAAQ,GAAGlF,mBAAmB,CAACc,GAAG,CAACQ,KAAK,CAAC+D,iBAAiB,CAAC;MAC/D,IAAI,CAACH,QAAQ,EAAE;QACbA,QAAQ,GAAG,IAAInE,GAAG,CAAC,CAAC;QACpBf,mBAAmB,CAACa,GAAG,CAACS,KAAK,CAAC+D,iBAAiB,EAAEH,QAAQ,CAAC;MAC5D;MACAA,QAAQ,CAAClE,GAAG,CAACb,EAAE,CAAC;IAClB;IACAP,cAAc,CAACyE,IAAI,CAAC/C,KAAK,CAAC;IAC1B,IAAI8B,GAAG,EAAEtD,oBAAoB,CAACe,GAAG,CAACuC,GAAG,CAACjD,EAAE,EAAEmB,KAAK,CAAC;IAChD,IAAIyG,eAAe,KAAK/F,SAAS,EAAEtC,SAAS,CAACmB,GAAG,CAACV,EAAE,EAAE4H,eAAe,CAAC;IACrEjK,uBAAuB,CACrBqC,EAAE,EACFmB,KAAK,CAAC+D,iBAAiB,EACvBwC,aAAa,EACbE,eAAe,EACfC,cAAc,EAAExB,QAAQ,EACxBwB,cAAc,EAAEvB,UAAU,EAC1BuB,cAAc,EAAEtB,YAAY,EAC5BpF,KAAK,CAACX,SACR,CAAC;IACD,IAAIxC,cAAc,CAAC,CAAC,IAAIiF,GAAG,EAAE;MAC3BxE,8BAA8B,CAACwE,GAAG,CAACjD,EAAE,EAAE0H,aAAa,CAAC;IACvD;;IAEA;IACA,IAAIrG,SAAmC;IACvC,IAAIoG,WAAW,EAAE;MACf,MAAMO,QAAQ,GAAGC,MAAM,CAACC,IAAI,CAACT,WAAW,CAAC,CAAC7C,MAAM,CAAEuD,CAAC,IAAKA,CAAC,KAAK,UAAU,CAAC;MACzE,IAAIH,QAAQ,CAAClF,MAAM,GAAG,CAAC,EAAE;QACvBzB,SAAS,GAAGhF,KAAK,CACf,MAAM2L,QAAQ,CAACI,GAAG,CAAED,CAAC,IAAKV,WAAW,CAACU,CAAC,CAAC,CAAC,EACzC,MAAM;UACJ,MAAME,IAAI,GAAGvB,wBAAwB,CAACW,WAAW,CAAC;UAClD,MAAMa,QAAQ,GAAG/I,SAAS,CAACoB,GAAG,CAACX,EAAE,CAAC;UAClC,IAAIsI,QAAQ,KAAKD,IAAI,EAAE;UACvB9I,SAAS,CAACmB,GAAG,CAACV,EAAE,EAAEqI,IAAI,CAAC;UACvB7J,4BAA4B,CAACwB,EAAE,EAAEqI,IAAI,CAAC;QACxC,CACF,CAAC;MACH;IACF;IACAlH,KAAK,CAACE,SAAS,GAAGA,SAAS;IAE3B,IAAIkH,QAAQ,GAAG,KAAK;IACpB,OAAO;MACLjB,eAAeA,CAACjD,IAAY,EAAE;QAC5B,IAAIlD,KAAK,CAACoD,SAAS,EAAE;QACrBpD,KAAK,CAACoD,SAAS,GAAG;UAAEF;QAAK,CAAC;QAC1BxG,eAAe,CAACwG,IAAI,CAAC;MACvB,CAAC;MACDkD,UAAUA,CAAClD,IAAY,EAAEC,QAAgB,EAAE;QACzC,IAAInD,KAAK,CAACiD,IAAI,EAAE;QAChBjD,KAAK,CAACiD,IAAI,GAAG;UAAEC,IAAI;UAAEC;QAAS,CAAC;MACjC,CAAC;MACDkD,OAAOA,CAAA,EAAG;QACR,IAAIe,QAAQ,EAAE;QACdA,QAAQ,GAAG,IAAI;QACf,KAAK,IAAIlF,CAAC,GAAG5D,cAAc,CAACqD,MAAM,GAAG,CAAC,EAAEO,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;UACnD,IAAI5D,cAAc,CAAC4D,CAAC,CAAC,CAACrD,EAAE,KAAKA,EAAE,EAAE;YAC/BP,cAAc,CAAC+I,MAAM,CAACnF,CAAC,EAAE,CAAC,CAAC;YAC3B;UACF;QACF;MACF;IACF,CAAC;EACH,CAAC,CAAC;AACJ;;AAEA;;AAEA;;AAEA,SAAS/B,qBAAqBA,CAAA,EAAG;EAC/B,IAAIN,iBAAiB,IAAI,CAACzE,iBAAiB,CAAC,CAAC,EAAE;EAC/CyE,iBAAiB,GAAG,IAAI;EACxBxE,8BAA8B,CAAEiM,OAAO,IAAK;IAC1C,IACEA,OAAO,CAAC1G,IAAI,KAAK,iBAAiB,IAClC0G,OAAO,CAAC1G,IAAI,KAAK,yBAAyB,EAC1C;MACA;IACF;IACA,MAAM2G,KAAK,GAAID,OAAO,CAAsBzI,EAAE;IAC9C,IAAI,OAAO0I,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC5D,MAAM1I,EAAE,GAAG2I,MAAM,CAACD,KAAK,CAAC;IACxB,IAAI,CAACC,MAAM,CAACC,QAAQ,CAAC5I,EAAE,CAAC,EAAE;IAC1B,MAAMwE,OAAO,GAAGhF,eAAe,CAACmB,GAAG,CAACX,EAAE,CAAC;IACvC,IAAI,CAACwE,OAAO,EAAE;IACd,IAAIiE,OAAO,CAAC1G,IAAI,KAAK,iBAAiB,EAAE;MACtCyC,OAAO,CAACqE,QAAQ,CAAC,CAAC;IACpB,CAAC,MAAM;MACLrE,OAAO,CAACsE,gBAAgB,CAAC,CAAC;IAC5B;IACA,KAAK5L,cAAc,CAAC,CAAC;EACvB,CAAC,CAAC;AACJ;;AAEA;;AAEA;;AAEA,OAAO,SAAS6L,KAAKA,CACnBC,GAAoB,EACpBvJ,cAAuC,EACvC;EACA,IAAI,CAACf,cAAc,CAAC,CAAC,EAAE;EACvB,MAAMuK,eAAe,GAAGvM,OAAO,CAAC,MAC9B+C,cAAc,CAAC2I,GAAG,CAAEjC,KAAK,KAAM;IAC7BhG,IAAI,EAAEgG,KAAK,CAAChG,IAAI;IAChByH,eAAe,EAAEzB,KAAK,CAACyB,eAAe;IACtC9D,YAAY,EAAEqC,KAAK,CAACrC,YAAY;IAChCsC,MAAM,EAAED,KAAK,CAACC;EAChB,CAAC,CAAC,CACJ,CAAC;EACDzH,kBAAkB,CAAC;IACjBoD,IAAI,EAAE,cAAuB;IAC7B/B,EAAE,EAAEe,WAAW,EAAE;IACjBZ,IAAI,EAAE6I,GAAG,CAAC7I,IAAI;IACdsI,OAAO,EAAEO,GAAG,CAACP,OAAO;IACpBS,KAAK,EAAEF,GAAG,CAACE,KAAK;IAChBzJ,cAAc,EAAEwJ;EAClB,CAAC,CAAC;EACFlL,iBAAiB,CACfiL,GAAG,CAAC7I,IAAI,EACR6I,GAAG,CAACP,OAAO,EACXO,GAAG,CAACE,KAAK,EACTC,IAAI,CAAChC,SAAS,CAAC8B,eAAe,CAChC,CAAC;AACH;;AAEA","ignoreList":[]}
@@ -1,14 +1,19 @@
1
1
  import { createComponent as _$createComponent, createIntrinsic as _$createIntrinsic, memo as _$memo } from "@alloy-js/core/jsx-runtime";
2
+ import * as devalue from "devalue";
2
3
  import { afterEach, beforeEach, expect, it } from "vitest";
3
4
  import WebSocket from "ws";
4
5
  import { createMessageCollector, filterRenderTreeMessages } from "../../testing/devtools-utils.js";
5
6
  import { For } from "../components/For.js";
6
7
  import { Output } from "../components/Output.js";
8
+ import { Show } from "../components/Show.js";
7
9
  import { enableDevtools, resetDevtoolsServerForTests } from "../devtools/devtools-server.js";
8
10
  import { ref } from "../reactivity.js";
9
- import { renderAsync } from "../render.js";
11
+ import { renderAsync } from "../render-output.js";
10
12
  import { flushJobsAsync } from "../scheduler.js";
11
13
  let socket;
14
+ function componentMessages(messages) {
15
+ return messages.filter(m => m.type.startsWith("component:"));
16
+ }
12
17
  beforeEach(async () => {
13
18
  const server = await enableDevtools({
14
19
  port: 0
@@ -30,7 +35,7 @@ it("emits render:complete on successful render", async () => {
30
35
  const collector = await createMessageCollector(socket);
31
36
  await renderAsync(_$createComponent(Output, {}, {
32
37
  fileName: import.meta.url,
33
- lineNumber: 42,
38
+ lineNumber: 48,
34
39
  columnNumber: 21
35
40
  }));
36
41
  const messages = await collector.waitForRender();
@@ -48,13 +53,13 @@ it("emits render:error on render failure", async () => {
48
53
  get children() {
49
54
  return _$createComponent(Boom, {}, {
50
55
  fileName: import.meta.url,
51
- lineNumber: 60,
56
+ lineNumber: 66,
52
57
  columnNumber: 9
53
58
  });
54
59
  }
55
60
  }, {
56
61
  fileName: import.meta.url,
57
- lineNumber: 59,
62
+ lineNumber: 65,
58
63
  columnNumber: 7
59
64
  }))).rejects.toThrow("Boom");
60
65
  const messages = await collector.waitForRender();
@@ -70,7 +75,7 @@ it("sends render tree messages during render", async () => {
70
75
  function Foo() {
71
76
  return ["Hello", _$createIntrinsic("br", {}, {
72
77
  fileName: import.meta.url,
73
- lineNumber: 82,
78
+ lineNumber: 88,
74
79
  columnNumber: 9
75
80
  }), () => "World"];
76
81
  }
@@ -79,13 +84,13 @@ it("sends render tree messages during render", async () => {
79
84
  get children() {
80
85
  return _$createComponent(Foo, {}, {
81
86
  fileName: import.meta.url,
82
- lineNumber: 92,
87
+ lineNumber: 98,
83
88
  columnNumber: 7
84
89
  });
85
90
  }
86
91
  }, {
87
92
  fileName: import.meta.url,
88
- lineNumber: 91,
93
+ lineNumber: 97,
89
94
  columnNumber: 5
90
95
  }));
91
96
  const messages = await collector.waitForRender();
@@ -99,86 +104,85 @@ it("sends render tree messages during render", async () => {
99
104
  type: "render:node_added",
100
105
  parent_id: null
101
106
  });
102
- expect(nodeAdded[1]).toMatchObject({
103
- type: "render:node_added",
104
- name: "Output"
105
- });
106
- expect(nodeAdded[2]).toMatchObject({
107
- type: "render:node_added",
108
- name: "Context Binder"
109
- });
110
- expect(nodeAdded[3]).toMatchObject({
111
- type: "render:node_added"
112
- });
113
- expect(nodeAdded[4]).toMatchObject({
114
- type: "render:node_added",
115
- name: expect.stringMatching(/^Context FormatOptions/)
116
- });
117
- expect(nodeAdded[5]).toMatchObject({
118
- type: "render:node_added"
119
- });
120
- expect(nodeAdded[6]).toMatchObject({
121
- type: "render:node_added",
122
- name: "SourceDirectory"
123
- });
124
- expect(nodeAdded[7]).toMatchObject({
125
- type: "render:node_added",
126
- name: "Context SourceDirectory"
127
- });
128
- expect(nodeAdded[8]).toMatchObject({
129
- type: "render:node_added"
130
- });
131
- expect(nodeAdded[9]).toMatchObject({
132
- type: "render:node_added",
133
- name: "Foo"
134
- });
135
- expect(nodeAdded[10]).toMatchObject({
136
- type: "render:node_added",
137
- value: "Hello"
138
- });
139
- expect(nodeAdded[11]).toMatchObject({
140
- type: "render:node_added",
141
- name: "br"
142
- });
143
- expect(nodeAdded[12]).toMatchObject({
144
- type: "render:node_added"
145
- });
146
- expect(nodeAdded[13]).toMatchObject({
147
- type: "render:node_added",
148
- value: "World"
149
- });
107
+ expect(nodeAdded.map(m => m.kind)).not.toContain("component");
108
+ expect(nodeAdded.map(m => m.kind)).not.toContain("memo");
109
+
110
+ // Component invocations are canonical component messages, not
111
+ // render-node rows. Exact ordering is not contractual.
112
+ const components = componentMessages(messages);
113
+ const componentNames = components.filter(m => m.type === "component:added").map(m => m.name);
114
+ expect(componentNames).toContain("Output");
115
+ expect(componentNames).toContain("Context Binder");
116
+ expect(componentNames.some(n => typeof n === "string" && n.startsWith("Context FormatOptions"))).toBe(true);
117
+ expect(componentNames).toContain("SourceDirectory");
118
+ expect(componentNames).toContain("Context SourceDirectory");
119
+ expect(componentNames).toContain("Foo");
120
+ expect(nodeAdded.map(m => m.name)).toContain("br");
121
+ const foo = components.find(m => m.type === "component:added" && m.name === "Foo");
122
+ expect(foo).toBeDefined();
123
+ const fooRoots = components.filter(m => m.type === "component:root_added" && m.component_id === foo.id);
124
+ expect(fooRoots.length).toBeGreaterThan(1);
125
+
126
+ // Text content from Foo's body is also exposed as text nodes.
127
+ const values = nodeAdded.map(m => m.value);
128
+ expect(values).toContain("Hello");
129
+ expect(values).toContain("World");
150
130
  });
151
131
  it("rerenders when devtools requests rerender", async () => {
152
- let renderCount = 0;
153
- function Display() {
154
- renderCount += 1;
155
- return "Hi";
156
- }
132
+ let value = "before";
157
133
  const collector = await createMessageCollector(socket);
134
+ function Rerendered() {
135
+ return value;
136
+ }
158
137
  await renderAsync(_$createComponent(Output, {
159
138
  get children() {
160
- return _$createComponent(Display, {}, {
139
+ return _$createComponent(Rerendered, {}, {
161
140
  fileName: import.meta.url,
162
- lineNumber: 171,
141
+ lineNumber: 161,
163
142
  columnNumber: 7
164
143
  });
165
144
  }
166
145
  }, {
167
146
  fileName: import.meta.url,
168
- lineNumber: 170,
147
+ lineNumber: 160,
169
148
  columnNumber: 5
170
149
  }));
171
- const messages = await collector.waitForRender();
172
- const renderMessages = filterRenderTreeMessages(messages);
173
- const displayNode = renderMessages.find(message => message.type === "render:node_added" && message.name === "Display");
174
- expect(renderCount).toBe(1);
175
- expect(displayNode?.id).toEqual(expect.any(Number));
150
+ const initialMessages = await collector.waitForRender();
151
+ const component = componentMessages(initialMessages).find(m => m.type === "component:added" && m.name === "Rerendered");
152
+ expect(component).toBeDefined();
153
+ const root = componentMessages(initialMessages).find(m => m.type === "component:root_added" && m.component_id === component.id);
154
+ expect(root).toBeDefined();
155
+ value = "after";
176
156
  socket.send(JSON.stringify({
177
157
  type: "render:rerender",
178
- id: displayNode.id
158
+ id: root.render_node_id
179
159
  }));
180
- await collector.waitForFlush();
181
- expect(renderCount).toBe(2);
160
+ const updateMessages = await collector.waitForFlush();
161
+ const renderMessages = filterRenderTreeMessages(updateMessages);
162
+ expect(renderMessages).toEqual(expect.arrayContaining([expect.objectContaining({
163
+ type: "render:node_removed",
164
+ id: root.render_node_id
165
+ }), expect.objectContaining({
166
+ type: "render:node_added",
167
+ value: "after"
168
+ })]));
169
+ expect(renderMessages).not.toEqual(expect.arrayContaining([expect.objectContaining({
170
+ type: "render:node_added",
171
+ value: "before"
172
+ })]));
173
+ expect(componentMessages(updateMessages)).toEqual(expect.arrayContaining([expect.objectContaining({
174
+ type: "component:root_removed",
175
+ component_id: component.id,
176
+ render_node_id: root.render_node_id
177
+ }), expect.objectContaining({
178
+ type: "component:removed",
179
+ id: component.id
180
+ }), expect.objectContaining({
181
+ type: "component:added",
182
+ name: "Rerendered"
183
+ }), expect.objectContaining({
184
+ type: "component:root_added"
185
+ })]));
182
186
  collector.stop();
183
187
  });
184
188
  it("sends render tree messages during render with For component", async () => {
@@ -194,18 +198,18 @@ it("sends render tree messages during render with For component", async () => {
194
198
  item: item
195
199
  }, {
196
200
  fileName: import.meta.url,
197
- lineNumber: 202,
201
+ lineNumber: 236,
198
202
  columnNumber: 41
199
203
  })
200
204
  }, {
201
205
  fileName: import.meta.url,
202
- lineNumber: 202,
206
+ lineNumber: 236,
203
207
  columnNumber: 7
204
208
  });
205
209
  }
206
210
  }, {
207
211
  fileName: import.meta.url,
208
- lineNumber: 201,
212
+ lineNumber: 235,
209
213
  columnNumber: 5
210
214
  }));
211
215
  const messages = await collector.waitForRender();
@@ -214,10 +218,11 @@ it("sends render tree messages during render with For component", async () => {
214
218
  expect(renderMessages[0]).toMatchObject({
215
219
  type: "render:reset"
216
220
  });
217
- expect(renderMessages).toEqual(expect.arrayContaining([expect.objectContaining({
218
- type: "render:node_added",
221
+ expect(componentMessages(messages)).toEqual(expect.arrayContaining([expect.objectContaining({
222
+ type: "component:added",
219
223
  name: "For"
220
- }), expect.objectContaining({
224
+ })]));
225
+ expect(renderMessages).toEqual(expect.arrayContaining([expect.objectContaining({
221
226
  type: "render:node_added",
222
227
  value: "a"
223
228
  }), expect.objectContaining({
@@ -225,7 +230,7 @@ it("sends render tree messages during render with For component", async () => {
225
230
  value: "b"
226
231
  })]));
227
232
  });
228
- it("emits nodeUpdated during render for context updates", async () => {
233
+ it("emits component metadata separately from render nodes", async () => {
229
234
  const collector = await createMessageCollector(socket);
230
235
  function Counter(props) {
231
236
  return `Count: ${props.value}`;
@@ -236,25 +241,99 @@ it("emits nodeUpdated during render for context updates", async () => {
236
241
  value: 1
237
242
  }, {
238
243
  fileName: import.meta.url,
239
- lineNumber: 238,
244
+ lineNumber: 276,
240
245
  columnNumber: 7
241
246
  });
242
247
  }
243
248
  }, {
244
249
  fileName: import.meta.url,
245
- lineNumber: 237,
250
+ lineNumber: 275,
246
251
  columnNumber: 5
247
252
  }));
248
253
  const messages = await collector.waitForRender();
249
254
  const renderMessages = filterRenderTreeMessages(messages);
250
-
251
- // Context updates during the initial render produce render:node_updated messages
252
- const nodeUpdated = renderMessages.filter(m => m.type === "render:node_updated");
253
- expect(nodeUpdated.length).toBeGreaterThan(0);
254
- expect(nodeUpdated[0]).toMatchObject({
255
- type: "render:node_updated",
256
- id: expect.any(Number)
255
+ const components = componentMessages(messages);
256
+ expect(renderMessages.some(m => m.type === "render:node_added" && (m.kind === "component" || m.kind === "memo"))).toBe(false);
257
+ expect(components).toEqual(expect.arrayContaining([expect.objectContaining({
258
+ type: "component:added",
259
+ name: "Counter"
260
+ }), expect.objectContaining({
261
+ type: "component:root_added"
262
+ })]));
263
+ collector.stop();
264
+ });
265
+ it("removes component metadata when its render roots are removed", async () => {
266
+ const show = ref(true);
267
+ const collector = await createMessageCollector(socket);
268
+ function Child() {
269
+ return "visible";
270
+ }
271
+ await renderAsync(_$createComponent(Output, {
272
+ children: () => show.value ? _$createComponent(Child, {}, {
273
+ fileName: import.meta.url,
274
+ lineNumber: 313,
275
+ columnNumber: 50
276
+ }) : null
277
+ }, {
278
+ fileName: import.meta.url,
279
+ lineNumber: 313,
280
+ columnNumber: 21
281
+ }));
282
+ const initialMessages = await collector.waitForRender();
283
+ const child = componentMessages(initialMessages).find(m => m.type === "component:added" && m.name === "Child");
284
+ expect(child).toBeDefined();
285
+ expect(componentMessages(initialMessages)).toEqual(expect.arrayContaining([expect.objectContaining({
286
+ type: "component:root_added",
287
+ component_id: child.id
288
+ })]));
289
+ show.value = false;
290
+ await flushJobsAsync();
291
+ const updateMessages = await collector.waitForFlush();
292
+ expect(componentMessages(updateMessages)).toEqual(expect.arrayContaining([expect.objectContaining({
293
+ type: "component:root_removed",
294
+ component_id: child.id
295
+ }), expect.objectContaining({
296
+ type: "component:removed",
297
+ id: child.id
298
+ })]));
299
+ collector.stop();
300
+ });
301
+ it("emits component prop updates while reactive children update", async () => {
302
+ const visible = ref(true);
303
+ const collector = await createMessageCollector(socket);
304
+ await renderAsync(_$createComponent(Output, {
305
+ get children() {
306
+ return _$createComponent(Show, {
307
+ get when() {
308
+ return visible.value;
309
+ },
310
+ children: "visible"
311
+ }, {
312
+ fileName: import.meta.url,
313
+ lineNumber: 354,
314
+ columnNumber: 7
315
+ });
316
+ }
317
+ }, {
318
+ fileName: import.meta.url,
319
+ lineNumber: 353,
320
+ columnNumber: 5
321
+ }));
322
+ const initialMessages = await collector.waitForRender();
323
+ const show = componentMessages(initialMessages).find(m => m.type === "component:added" && m.name === "Show");
324
+ expect(show).toBeDefined();
325
+ visible.value = false;
326
+ await flushJobsAsync();
327
+ const updateMessages = await collector.waitForFlush();
328
+ const showUpdate = componentMessages(updateMessages).find(m => m.type === "component:updated" && m.id === show.id);
329
+ expect(showUpdate).toBeDefined();
330
+ expect(devalue.parse(showUpdate.props)).toMatchObject({
331
+ when: false
257
332
  });
333
+ expect(componentMessages(updateMessages)).toEqual(expect.arrayContaining([expect.objectContaining({
334
+ type: "component:root_removed",
335
+ component_id: show.id
336
+ })]));
258
337
  collector.stop();
259
338
  });
260
339
  it("tracks render tree nodes during initial render", async () => {
@@ -267,13 +346,13 @@ it("tracks render tree nodes during initial render", async () => {
267
346
  children: item => [item]
268
347
  }, {
269
348
  fileName: import.meta.url,
270
- lineNumber: 264,
349
+ lineNumber: 392,
271
350
  columnNumber: 7
272
351
  });
273
352
  }
274
353
  }, {
275
354
  fileName: import.meta.url,
276
- lineNumber: 263,
355
+ lineNumber: 391,
277
356
  columnNumber: 5
278
357
  }));
279
358
  const messages = await collector.waitForRender();
@@ -304,18 +383,18 @@ it("emits proper events when items are added/removed in For component", async ()
304
383
  item: item
305
384
  }, {
306
385
  fileName: import.meta.url,
307
- lineNumber: 299,
386
+ lineNumber: 427,
308
387
  columnNumber: 36
309
388
  })
310
389
  }, {
311
390
  fileName: import.meta.url,
312
- lineNumber: 299,
391
+ lineNumber: 427,
313
392
  columnNumber: 7
314
393
  });
315
394
  }
316
395
  }, {
317
396
  fileName: import.meta.url,
318
- lineNumber: 298,
397
+ lineNumber: 426,
319
398
  columnNumber: 5
320
399
  }));
321
400
  const originalMessages = await collector.waitForRender();
@@ -1 +1 @@
1
- {"version":3,"names":["afterEach","beforeEach","expect","it","WebSocket","createMessageCollector","filterRenderTreeMessages","For","Output","enableDevtools","resetDevtoolsServerForTests","ref","renderAsync","flushJobsAsync","socket","server","port","Promise","resolve","reject","once","close","undefined","collector","_$createComponent","fileName","import","meta","url","lineNumber","columnNumber","messages","waitForRender","at","toMatchObject","type","stop","Boom","Error","children","rejects","toThrow","renderMessages","filter","m","startsWith","name","any","String","message","Foo","_$createIntrinsic","nodeAdded","parent_id","stringMatching","value","renderCount","Display","displayNode","find","toBe","id","toEqual","Number","send","JSON","stringify","waitForFlush","props","_$memo","item","each","arrayContaining","objectContaining","Counter","nodeUpdated","length","toBeGreaterThan","items","itemValues","map","toContain","originalMessages","activeNodes","Map","processMessages","msg","nodeId","parentId","has","kind","keys","join","set","delete","push","unshift","updateMessages","updateRenderMessages"],"sources":["../../../../src/debug/render.test.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,SAAS,EAAEC,UAAU,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AAC1D,OAAOC,SAAS,MAAM,IAAI;AAC1B,SACEC,sBAAsB,EACtBC,wBAAwB,QAEnB,iCAAiC;AACxC,SAASC,GAAG;AACZ,SAASC,MAAM;AACf,SACEC,cAAc,EACdC,2BAA2B,QACtB,gCAAgC;AACvC,SAASC,GAAG,QAAQ,kBAAkB;AACtC,SAASC,WAAW,QAAQ,cAAc;AAC1C,SAASC,cAAc,QAAQ,iBAAiB;AAEhD,IAAIC,MAA6B;AAEjCb,UAAU,CAAC,YAAY;EACrB,MAAMc,MAAM,GAAG,MAAMN,cAAc,CAAC;IAAEO,IAAI,EAAE;EAAE,CAAC,CAAC;EAChDF,MAAM,GAAG,IAAIV,SAAS,CAAC,kBAAkBW,MAAM,CAACC,IAAI,EAAE,CAAC;EAEvD,MAAM,IAAIC,OAAO,CAAO,CAACC,OAAO,EAAEC,MAAM,KAAK;IAC3CL,MAAM,EAAEM,IAAI,CAAC,MAAM,EAAEF,OAAO,CAAC;IAC7BJ,MAAM,EAAEM,IAAI,CAAC,OAAO,EAAED,MAAM,CAAC;EAC/B,CAAC,CAAC;AACJ,CAAC,CAAC;AAEFnB,SAAS,CAAC,YAAY;EACpB,IAAIc,MAAM,EAAE;IACVA,MAAM,CAACO,KAAK,CAAC,CAAC;IACdP,MAAM,GAAGQ,SAAS;EACpB;EAEA,MAAMZ,2BAA2B,CAAC,CAAC;AACrC,CAAC,CAAC;AAEFP,EAAE,CAAC,4CAA4C,EAAE,YAAY;EAC3D,MAAMoB,SAAS,GAAG,MAAMlB,sBAAsB,CAACS,MAAO,CAAC;EAEvD,MAAMF,WAAW,CAAAY,iBAAA,CAAEhB,MAAM;IAAAiB,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,EAAG,CAAC;EAE7B,MAAMC,QAAQ,GAAG,MAAMR,SAAS,CAACS,aAAa,CAAC,CAAC;EAEhD9B,MAAM,CAAC6B,QAAQ,CAACE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAACC,aAAa,CAAC;IAAEC,IAAI,EAAE;EAAkB,CAAC,CAAC;EAClEZ,SAAS,CAACa,IAAI,CAAC,CAAC;AAClB,CAAC,CAAC;AAEFjC,EAAE,CAAC,sCAAsC,EAAE,YAAY;EACrD,SAASkC,IAAIA,CAAA,EAAG;IACd,MAAM,IAAIC,KAAK,CAAC,MAAM,CAAC;EACzB;EAEA,MAAMf,SAAS,GAAG,MAAMlB,sBAAsB,CAACS,MAAO,CAAC;EAEvD,MAAMZ,MAAM,CACVU,WAAW,CAAAY,iBAAA,CACRhB,MAAM;IAAA,IAAA+B,SAAA;MAAA,OAAAf,iBAAA,CACJa,IAAI;QAAAZ,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA;IAAA;EAAA;IAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,EAET,CACF,CAAC,CAACU,OAAO,CAACC,OAAO,CAAC,MAAM,CAAC;EAEzB,MAAMV,QAAQ,GAAG,MAAMR,SAAS,CAACS,aAAa,CAAC,CAAC;EAChD,MAAMU,cAAc,GAAGX,QAAQ,CAACY,MAAM,CAAEC,CAAkB,IACxDA,CAAC,CAACT,IAAI,CAACU,UAAU,CAAC,SAAS,CAC7B,CAAC;EACD3C,MAAM,CAACwC,cAAc,CAACT,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAACC,aAAa,CAAC;IAC1CC,IAAI,EAAE,cAAc;IACpBW,IAAI,EAAE5C,MAAM,CAAC6C,GAAG,CAACC,MAAM,CAAC;IACxBC,OAAO,EAAE/C,MAAM,CAAC6C,GAAG,CAACC,MAAM;EAC5B,CAAC,CAAC;EACFzB,SAAS,CAACa,IAAI,CAAC,CAAC;AAClB,CAAC,CAAC;AAEFjC,EAAE,CAAC,0CAA0C,EAAE,YAAY;EACzD,SAAS+C,GAAGA,CAAA,EAAG;IACb,iBAAAC,iBAAA;MAAA1B,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,IAIK,MAAM,OAAO;EAGpB;EAEA,MAAMP,SAAS,GAAG,MAAMlB,sBAAsB,CAACS,MAAO,CAAC;EAEvD,MAAMF,WAAW,CAAAY,iBAAA,CACdhB,MAAM;IAAA,IAAA+B,SAAA;MAAA,OAAAf,iBAAA,CACJ0B,GAAG;QAAAzB,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA;IAAA;EAAA;IAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,EAER,CAAC;EAED,MAAMC,QAAQ,GAAG,MAAMR,SAAS,CAACS,aAAa,CAAC,CAAC;EAChD,MAAMU,cAAc,GAAGpC,wBAAwB,CAACyB,QAAQ,CAAC;EACzDR,SAAS,CAACa,IAAI,CAAC,CAAC;EAEhBlC,MAAM,CAACwC,cAAc,CAAC,CAAC,CAAC,CAAC,CAACR,aAAa,CAAC;IAAEC,IAAI,EAAE;EAAe,CAAC,CAAC;EAEjE,MAAMiB,SAAS,GAAGV,cAAc,CAACC,MAAM,CACpCC,CAAC,IAAKA,CAAC,CAACT,IAAI,KAAK,mBACpB,CAAC;EACDjC,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE,mBAAmB;IACzBkB,SAAS,EAAE;EACb,CAAC,CAAC;EACFnD,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE,mBAAmB;IACzBW,IAAI,EAAE;EACR,CAAC,CAAC;EACF5C,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE,mBAAmB;IACzBW,IAAI,EAAE;EACR,CAAC,CAAC;EACF5C,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE;EACR,CAAC,CAAC;EACFjC,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE,mBAAmB;IACzBW,IAAI,EAAE5C,MAAM,CAACoD,cAAc,CAAC,wBAAwB;EACtD,CAAC,CAAC;EACFpD,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE;EACR,CAAC,CAAC;EACFjC,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE,mBAAmB;IACzBW,IAAI,EAAE;EACR,CAAC,CAAC;EACF5C,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE,mBAAmB;IACzBW,IAAI,EAAE;EACR,CAAC,CAAC;EACF5C,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE;EACR,CAAC,CAAC;EACFjC,MAAM,CAACkD,SAAS,CAAC,CAAC,CAAC,CAAC,CAAClB,aAAa,CAAC;IACjCC,IAAI,EAAE,mBAAmB;IACzBW,IAAI,EAAE;EACR,CAAC,CAAC;EACF5C,MAAM,CAACkD,SAAS,CAAC,EAAE,CAAC,CAAC,CAAClB,aAAa,CAAC;IAClCC,IAAI,EAAE,mBAAmB;IACzBoB,KAAK,EAAE;EACT,CAAC,CAAC;EACFrD,MAAM,CAACkD,SAAS,CAAC,EAAE,CAAC,CAAC,CAAClB,aAAa,CAAC;IAClCC,IAAI,EAAE,mBAAmB;IACzBW,IAAI,EAAE;EACR,CAAC,CAAC;EACF5C,MAAM,CAACkD,SAAS,CAAC,EAAE,CAAC,CAAC,CAAClB,aAAa,CAAC;IAClCC,IAAI,EAAE;EACR,CAAC,CAAC;EACFjC,MAAM,CAACkD,SAAS,CAAC,EAAE,CAAC,CAAC,CAAClB,aAAa,CAAC;IAClCC,IAAI,EAAE,mBAAmB;IACzBoB,KAAK,EAAE;EACT,CAAC,CAAC;AACJ,CAAC,CAAC;AAEFpD,EAAE,CAAC,2CAA2C,EAAE,YAAY;EAC1D,IAAIqD,WAAW,GAAG,CAAC;EAEnB,SAASC,OAAOA,CAAA,EAAG;IACjBD,WAAW,IAAI,CAAC;IAChB,OAAO,IAAI;EACb;EAEA,MAAMjC,SAAS,GAAG,MAAMlB,sBAAsB,CAACS,MAAO,CAAC;EAEvD,MAAMF,WAAW,CAAAY,iBAAA,CACdhB,MAAM;IAAA,IAAA+B,SAAA;MAAA,OAAAf,iBAAA,CACJiC,OAAO;QAAAhC,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA;IAAA;EAAA;IAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,EAEZ,CAAC;EAED,MAAMC,QAAQ,GAAG,MAAMR,SAAS,CAACS,aAAa,CAAC,CAAC;EAChD,MAAMU,cAAc,GAAGpC,wBAAwB,CAACyB,QAAQ,CAAC;EACzD,MAAM2B,WAAW,GAAGhB,cAAc,CAACiB,IAAI,CACpCV,OAAwB,IACvBA,OAAO,CAACd,IAAI,KAAK,mBAAmB,IAAIc,OAAO,CAACH,IAAI,KAAK,SAC7D,CAAC;EAED5C,MAAM,CAACsD,WAAW,CAAC,CAACI,IAAI,CAAC,CAAC,CAAC;EAC3B1D,MAAM,CAACwD,WAAW,EAAEG,EAAE,CAAC,CAACC,OAAO,CAAC5D,MAAM,CAAC6C,GAAG,CAACgB,MAAM,CAAC,CAAC;EAEnDjD,MAAM,CAAEkD,IAAI,CACVC,IAAI,CAACC,SAAS,CAAC;IAAE/B,IAAI,EAAE,iBAAiB;IAAE0B,EAAE,EAAEH,WAAW,CAAEG;EAAG,CAAC,CACjE,CAAC;EAED,MAAMtC,SAAS,CAAC4C,YAAY,CAAC,CAAC;EAE9BjE,MAAM,CAACsD,WAAW,CAAC,CAACI,IAAI,CAAC,CAAC,CAAC;EAC3BrC,SAAS,CAACa,IAAI,CAAC,CAAC;AAClB,CAAC,CAAC;AAEFjC,EAAE,CAAC,6DAA6D,EAAE,YAAY;EAC5E,MAAMoB,SAAS,GAAG,MAAMlB,sBAAsB,CAACS,MAAO,CAAC;EACvD,SAAS2C,OAAOA,CAACW,KAAU,EAAE;IAC3B,iBAAAC,MAAA,OAAeD,KAAK,CAACE,IAAI;EAC3B;EACA,MAAM1D,WAAW,CAAAY,iBAAA,CACdhB,MAAM;IAAA,IAAA+B,SAAA;MAAA,OAAAf,iBAAA,CACJjB,GAAG;QAACgE,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QAAAhC,QAAA,EAAI+B,IAAI,IAAA9C,iBAAA,CAAMiC,OAAO;UAACa,IAAI,EAAEA;QAAI;UAAA7C,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA;MAAI;QAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA;IAAA;EAAA;IAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,EAE7D,CAAC;EAED,MAAMC,QAAQ,GAAG,MAAMR,SAAS,CAACS,aAAa,CAAC,CAAC;EAChD,MAAMU,cAAc,GAAGpC,wBAAwB,CAACyB,QAAQ,CAAC;EACzDR,SAAS,CAACa,IAAI,CAAC,CAAC;EAEhBlC,MAAM,CAACwC,cAAc,CAAC,CAAC,CAAC,CAAC,CAACR,aAAa,CAAC;IAAEC,IAAI,EAAE;EAAe,CAAC,CAAC;EACjEjC,MAAM,CAACwC,cAAc,CAAC,CAACoB,OAAO,CAC5B5D,MAAM,CAACsE,eAAe,CAAC,CACrBtE,MAAM,CAACuE,gBAAgB,CAAC;IACtBtC,IAAI,EAAE,mBAAmB;IACzBW,IAAI,EAAE;EACR,CAAC,CAAC,EACF5C,MAAM,CAACuE,gBAAgB,CAAC;IACtBtC,IAAI,EAAE,mBAAmB;IACzBoB,KAAK,EAAE;EACT,CAAC,CAAC,EACFrD,MAAM,CAACuE,gBAAgB,CAAC;IACtBtC,IAAI,EAAE,mBAAmB;IACzBoB,KAAK,EAAE;EACT,CAAC,CAAC,CACH,CACH,CAAC;AACH,CAAC,CAAC;AAEFpD,EAAE,CAAC,qDAAqD,EAAE,YAAY;EACpE,MAAMoB,SAAS,GAAG,MAAMlB,sBAAsB,CAACS,MAAO,CAAC;EAEvD,SAAS4D,OAAOA,CAACN,KAAwB,EAAE;IACzC,OAAO,UAAUA,KAAK,CAACb,KAAK,EAAE;EAChC;EAEA,MAAM3C,WAAW,CAAAY,iBAAA,CACdhB,MAAM;IAAA,IAAA+B,SAAA;MAAA,OAAAf,iBAAA,CACJkD,OAAO;QAACnB,KAAK,EAAE;MAAC;QAAA9B,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA;IAAA;EAAA;IAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,EAErB,CAAC;EAED,MAAMC,QAAQ,GAAG,MAAMR,SAAS,CAACS,aAAa,CAAC,CAAC;EAChD,MAAMU,cAAc,GAAGpC,wBAAwB,CAACyB,QAAQ,CAAC;;EAEzD;EACA,MAAM4C,WAAW,GAAGjC,cAAc,CAACC,MAAM,CACtCC,CAAkB,IAAKA,CAAC,CAACT,IAAI,KAAK,qBACrC,CAAC;EAEDjC,MAAM,CAACyE,WAAW,CAACC,MAAM,CAAC,CAACC,eAAe,CAAC,CAAC,CAAC;EAC7C3E,MAAM,CAACyE,WAAW,CAAC,CAAC,CAAC,CAAC,CAACzC,aAAa,CAAC;IACnCC,IAAI,EAAE,qBAAqB;IAC3B0B,EAAE,EAAE3D,MAAM,CAAC6C,GAAG,CAACgB,MAAM;EACvB,CAAC,CAAC;EACFxC,SAAS,CAACa,IAAI,CAAC,CAAC;AAClB,CAAC,CAAC;AAEFjC,EAAE,CAAC,gDAAgD,EAAE,YAAY;EAC/D,MAAM2E,KAAK,GAAGnE,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;EAClC,MAAMY,SAAS,GAAG,MAAMlB,sBAAsB,CAACS,MAAO,CAAC;EAEvD,MAAMF,WAAW,CAAAY,iBAAA,CACdhB,MAAM;IAAA,IAAA+B,SAAA;MAAA,OAAAf,iBAAA,CACJjB,GAAG;QAACgE,IAAI,EAAEO,KAAK;QAAAvC,QAAA,EAAI+B,IAAI,KAAQA,IAAI;MAAI;QAAA7C,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA;IAAA;EAAA;IAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,EAE5C,CAAC;EAED,MAAMC,QAAQ,GAAG,MAAMR,SAAS,CAACS,aAAa,CAAC,CAAC;EAChD,MAAMU,cAAc,GAAGpC,wBAAwB,CAACyB,QAAQ,CAAC;;EAEzD;EACA,MAAMqB,SAAS,GAAGV,cAAc,CAACC,MAAM,CACpCC,CAAkB,IAAKA,CAAC,CAACT,IAAI,KAAK,mBACrC,CAAC;EACDjC,MAAM,CAACkD,SAAS,CAACwB,MAAM,CAAC,CAACC,eAAe,CAAC,CAAC,CAAC;;EAE3C;EACA,MAAME,UAAU,GAAG3B,SAAS,CACzBT,MAAM,CACJC,CAAkB,IACjBA,CAAC,CAACW,KAAK,KAAK,GAAG,IAAIX,CAAC,CAACW,KAAK,KAAK,GAAG,IAAIX,CAAC,CAACW,KAAK,KAAK,GACtD,CAAC,CACAyB,GAAG,CAAEpC,CAAkB,IAAKA,CAAC,CAACW,KAAK,CAAC;EACvCrD,MAAM,CAAC6E,UAAU,CAAC,CAACE,SAAS,CAAC,GAAG,CAAC;EACjC/E,MAAM,CAAC6E,UAAU,CAAC,CAACE,SAAS,CAAC,GAAG,CAAC;EACjC/E,MAAM,CAAC6E,UAAU,CAAC,CAACE,SAAS,CAAC,GAAG,CAAC;EACjC1D,SAAS,CAACa,IAAI,CAAC,CAAC;AAClB,CAAC,CAAC;AAEFjC,EAAE,CAAC,mEAAmE,EAAE,YAAY;EAClF,MAAM2E,KAAK,GAAGnE,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;EAC7B,MAAMY,SAAS,GAAG,MAAMlB,sBAAsB,CAACS,MAAO,CAAC;EAEvD,SAAS2C,OAAOA,CAACW,KAAU,EAAE;IAC3B,iBAAAC,MAAA,OAAeD,KAAK,CAACE,IAAI;EAC3B;EACA,MAAM1D,WAAW,CAAAY,iBAAA,CACdhB,MAAM;IAAA,IAAA+B,SAAA;MAAA,OAAAf,iBAAA,CACJjB,GAAG;QAACgE,IAAI,EAAEO,KAAK;QAAAvC,QAAA,EAAI+B,IAAI,IAAA9C,iBAAA,CAAMiC,OAAO;UAACa,IAAI,EAAEA;QAAI;UAAA7C,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA;MAAI;QAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA;IAAA;EAAA;IAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,EAExD,CAAC;EAED,MAAMoD,gBAAgB,GAAG,MAAM3D,SAAS,CAACS,aAAa,CAAC,CAAC;;EAExD;EACA,MAAMmD,WAAW,GAAG,IAAIC,GAAG,CAGzB,CAAC;EAEH,SAASC,eAAeA,CAACtD,QAAe,EAAE;IACxC,KAAK,MAAMuD,GAAG,IAAIvD,QAAQ,EAAE;MAC1B,IAAIuD,GAAG,CAACnD,IAAI,KAAK,mBAAmB,EAAE;QACpC,MAAMoD,MAAM,GAAGD,GAAG,CAACzB,EAAE;QACrB,MAAM2B,QAAQ,GAAGF,GAAG,CAACjC,SAAS;;QAE9B;QACA,IAAImC,QAAQ,KAAK,IAAI,IAAI,CAACL,WAAW,CAACM,GAAG,CAACD,QAAQ,CAAC,EAAE;UACnD,MAAM,IAAIlD,KAAK,CACb,QAAQiD,MAAM,KAAKD,GAAG,CAACI,IAAI,GAAGJ,GAAG,CAACxC,IAAI,GAAG,KAAKwC,GAAG,CAACxC,IAAI,EAAE,GAAG,EAAE,IAAI,GAC/D,qBAAqB0C,QAAQ,sCAAsC,GACnE,iBAAiB,CAAC,GAAGL,WAAW,CAACQ,IAAI,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,EACvD,CAAC;QACH;QAEAT,WAAW,CAACU,GAAG,CAACN,MAAM,EAAE;UACtBC,QAAQ;UACRE,IAAI,EAAEJ,GAAG,CAACI,IAAI;UACd5C,IAAI,EAAEwC,GAAG,CAACxC;QACZ,CAAC,CAAC;MACJ,CAAC,MAAM,IAAIwC,GAAG,CAACnD,IAAI,KAAK,qBAAqB,EAAE;QAC7C,MAAMoD,MAAM,GAAGD,GAAG,CAACzB,EAAE;QACrB,IAAI,CAACsB,WAAW,CAACM,GAAG,CAACF,MAAM,CAAC,EAAE;UAC5B,MAAM,IAAIjD,KAAK,CACb,QAAQiD,MAAM,wCAAwC,GACpD,iBAAiB,CAAC,GAAGJ,WAAW,CAACQ,IAAI,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,EACvD,CAAC;QACH;QACAT,WAAW,CAACW,MAAM,CAACP,MAAM,CAAC;MAC5B;IACF;EACF;;EAEA;EACAF,eAAe,CAAC/E,wBAAwB,CAAC4E,gBAAgB,CAAC,CAAC;;EAE3D;EACAJ,KAAK,CAACvB,KAAK,CAACwC,IAAI,CAAC,GAAG,CAAC;EACrBjB,KAAK,CAACvB,KAAK,CAACyC,OAAO,CAAC,GAAG,CAAC;EACxB,MAAMnF,cAAc,CAAC,CAAC;EAEtB,MAAMoF,cAAc,GAAG,MAAM1E,SAAS,CAAC4C,YAAY,CAAC,CAAC;EACrD,MAAM+B,oBAAoB,GAAG5F,wBAAwB,CAAC2F,cAAc,CAAC;;EAErE;EACAZ,eAAe,CAACa,oBAAoB,CAAC;AACvC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["devalue","afterEach","beforeEach","expect","it","WebSocket","createMessageCollector","filterRenderTreeMessages","For","Output","Show","enableDevtools","resetDevtoolsServerForTests","ref","renderAsync","flushJobsAsync","socket","componentMessages","messages","filter","m","type","startsWith","server","port","Promise","resolve","reject","once","close","undefined","collector","_$createComponent","fileName","import","meta","url","lineNumber","columnNumber","waitForRender","at","toMatchObject","stop","Boom","Error","children","rejects","toThrow","renderMessages","name","any","String","message","Foo","_$createIntrinsic","nodeAdded","parent_id","map","kind","not","toContain","components","componentNames","some","n","toBe","foo","find","toBeDefined","fooRoots","component_id","id","length","toBeGreaterThan","values","value","Rerendered","initialMessages","component","root","send","JSON","stringify","render_node_id","updateMessages","waitForFlush","toEqual","arrayContaining","objectContaining","Display","props","_$memo","item","each","Counter","show","Child","child","visible","when","showUpdate","parse","items","itemValues","originalMessages","activeNodes","Map","processMessages","msg","nodeId","parentId","has","keys","join","set","delete","push","unshift","updateRenderMessages"],"sources":["../../../../src/debug/render.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}