@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
@@ -1 +1 @@
1
- {"version":3,"names":["isRef","pauseTracking","resetTracking","stop","computed","vueComputed","effect","vueEffect","ref","vueRef","shallowReactive","vueShallowReactive","shallowRef","vueShallowRef","toRef","vueToRef","toRefs","vueToRefs","captureSourceLocation","debug","isDebugEnabled","scheduler","setLastTriggerRef","globalThis","__ALLOY__","Error","getElementCache","ctx","getContext","elementCache","Map","contextIdCounter","globalContext","resolveOwnerEffectContextId","context","owner","meta","effectId","undefined","id","ensureIsEmpty","isEmpty","childrenWithContent","isInfrastructure","root","fn","options","componentOwner","takesSymbols","takenSymbols","_lastEmpty","isRoot","ret","untrack","d","disposables","v","findCurrentEffectId","memo","equal","name","memoLabel","o","label","prev","res","value","getter","Object","defineProperty","configurable","current","debugInfo","register","type","createdAt","contextId","ownerContextId","cleanupFn","final","k","len","length","runner","onCleanup","effectOpts","flags","onTrack","event","targetKey","key","toString","target","refId","ensureRef","kind","track","reactivePropertyRefId","ensureReactivePropertyRef","onTrigger","producerEffectId","causedBy","trigger","oldContext","effectIdMap","set","push","CUSTOM_CONTEXT_SYM","Symbol","createCustomContext","useCallback","useCustomContext","useCb","isCustomContext","child","hasOwn","result","registerRef","createdByEffectId","reactiveCreationLocations","WeakMap","getReactiveCreationLocation","get","object","defaultValue","refValue","values","seenRefs","refIdCounter","reactivePropertyIds","keys","formatReactivePropertyLabel","ownerLabel","str","String","slice","Array","isArray","nextReactiveId","resetRefIdCounter","getEffectDebugId"],"sources":["../../../src/reactivity.ts"],"sourcesContent":[null],"mappings":"AAAA,SACEA,KAAK,EACLC,aAAa,EAGbC,aAAa,EAEbC,IAAI,EACJC,QAAQ,IAAIC,WAAW,EACvBC,MAAM,IAAIC,SAAS,EACnBC,GAAG,IAAIC,MAAM,EACbC,eAAe,IAAIC,kBAAkB,EACrCC,UAAU,IAAIC,aAAa,EAC3BC,KAAK,IAAIC,QAAQ,EACjBC,MAAM,IAAIC,SAAS,QACd,iBAAiB;AACxB,SAASC,qBAAqB,EAAEC,KAAK,EAAEC,cAAc,QAAQ,kBAAkB;AAG/E,SAASC,SAAS,EAAEC,iBAAiB,QAAQ,gBAAgB;AAG7D,IAAKC,UAAU,CAASC,SAAS,EAAE;EACjC,MAAM,IAAIC,KAAK,CACb,sGACF,CAAC;AACH;AACCF,UAAU,CAASC,SAAS,GAAG,IAAI;AAEpC,OAAO,SAASE,eAAeA,CAAA,EAAG;EAChC,MAAMC,GAAG,GAAGC,UAAU,CAAC,CAAE;EACzB,OAAQD,GAAG,CAACE,YAAY,KAAK,IAAIC,GAAG,CAAC,CAAC;AACxC;AAaA,IAAIC,gBAAgB,GAAG,CAAC;AA4DxB,IAAIC,aAA6B,GAAG,IAAI;AACxC,OAAO,SAASJ,UAAUA,CAAA,EAAG;EAC3B,OAAOI,aAAa;AACtB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,2BAA2BA,CAACC,OAAgB,EAAiB;EACpE,IAAIC,KAAK,GAAGD,OAAO,CAACC,KAAK;EACzB,OAAOA,KAAK,EAAE;IACZ,IAAIA,KAAK,CAACC,IAAI,EAAEC,QAAQ,KAAKC,SAAS,EAAE;MACtC,OAAOH,KAAK,CAACI,EAAE;IACjB;IACAJ,KAAK,GAAGA,KAAK,CAACA,KAAK;EACrB;EACA,OAAOD,OAAO,CAACC,KAAK,EAAEI,EAAE,IAAI,IAAI;AAClC;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAACN,OAAgB,EAAgB;EAC5DA,OAAO,CAACO,OAAO,KAAKjC,GAAG,CAAC0B,OAAO,CAACQ,mBAAmB,KAAK,CAAC,EAAE;IACzDC,gBAAgB,EAAE;EACpB,CAAC,CAAC;EACF,OAAOT,OAAO,CAACO,OAAO;AACxB;AAMA,OAAO,SAASG,IAAIA,CAAIC,EAAwB,EAAEC,OAAqB,EAAK;EAC1E,MAAMZ,OAAgB,GAAG;IACvBK,EAAE,EAAER,gBAAgB,EAAE;IACtBgB,cAAc,EAAED,OAAO,EAAEC,cAAc;IACvCZ,KAAK,EAAEH,aAAa;IACpBgB,YAAY,EAAE,KAAK;IACnBC,YAAY,EAAEX,SAAS;IACvBI,mBAAmB,EAAE,CAAC;IACtBQ,UAAU,EAAE,IAAI;IAChBC,MAAM,EAAE;EACV,CAAC;EAEDnB,aAAa,GAAGE,OAAO;EACvB,IAAIkB,GAAG;EACP,IAAI;IACFA,GAAG,GAAGC,OAAO,CAAC,MACZR,EAAE,CAAC,MAAM;MACP,KAAK,MAAMS,CAAC,IAAIpB,OAAO,CAAEqB,WAAW,IAAI,EAAE,EAAE;QAC1CF,OAAO,CAACC,CAAC,CAAC;MACZ;IACF,CAAC,CACH,CAAC;EACH,CAAC,SAAS;IACRtB,aAAa,GAAGA,aAAa,CAAEG,KAAK;EACtC;EAEA,OAAOiB,GAAG;AACZ;AAWA,OAAO,SAASC,OAAOA,CAAIR,EAAW,EAAK;EACzC5C,aAAa,CAAC,CAAC;EACf,MAAMuD,CAAC,GAAGX,EAAE,CAAC,CAAC;EACd3C,aAAa,CAAC,CAAC;EACf,OAAOsD,CAAC;AACV;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CAAA,EAAuB;EACxD,IAAI9B,GAAG,GAAGK,aAAa;EACvB,OAAOL,GAAG,EAAE;IACV,MAAMY,EAAE,GAAGZ,GAAG,CAACS,IAAI,EAAEC,QAAQ;IAC7B,IAAIE,EAAE,KAAKD,SAAS,IAAIC,EAAE,KAAK,CAAC,CAAC,EAAE,OAAOA,EAAE;IAC5CZ,GAAG,GAAGA,GAAG,CAACQ,KAAK;EACjB;EACA,OAAOG,SAAS;AAClB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASoB,IAAIA,CAAIb,EAAW,EAAEc,KAAe,EAAEC,IAAa,EAAW;EAC5E,MAAMC,SAAS,GAAGD,IAAI,GAAG,QAAQA,IAAI,EAAE,GAAG,MAAM;EAChD,MAAME,CAAC,GAAGlD,UAAU,CAAI0B,SAAS,EAAO;IACtCyB,KAAK,EAAEF;EACT,CAAC,CAAC;EACFvD,MAAM,CACH0D,IAAI,IAAK;IACR,MAAMC,GAAG,GAAGpB,EAAE,CAAC,CAAC;IAChB;IACA,CAAC,CAACc,KAAK,IAAIK,IAAI,KAAKC,GAAG,MAAMH,CAAC,CAACI,KAAK,GAAGD,GAAG,CAAC;IAC3C,OAAOA,GAAG;EACZ,CAAC,EACD3B,SAAS,EACT;IACEnB,KAAK,EAAE;MAAEyC,IAAI,EAAEA,IAAI,GAAG,QAAQA,IAAI,EAAE,GAAG;IAAO;EAChD,CACF,CAAC;EACD,MAAMO,MAAM,GAAIA,CAAA,KAAML,CAAC,CAACI,KAAsB;EAC9C,IAAIN,IAAI,EAAE;IACRQ,MAAM,CAACC,cAAc,CAACF,MAAM,EAAE,MAAM,EAAE;MAAED,KAAK,EAAEN,IAAI;MAAEU,YAAY,EAAE;IAAK,CAAC,CAAC;EAC5E;EACA,OAAOH,MAAM;AACf;AAEA,OAAO,SAAS7D,MAAMA,CACpBuC,EAAmB,EACnB0B,OAAW,EACXzB,OAAuB,EACvB;EACA,MAAMZ,OAAgB,GAAG;IACvBK,EAAE,EAAER,gBAAgB,EAAE;IACtBI,KAAK,EAAEH,aAAa;IACpBgB,YAAY,EAAE,KAAK;IACnBC,YAAY,EAAEX,SAAS;IACvBI,mBAAmB,EAAE,CAAC;IACtBQ,UAAU,EAAE,IAAI;IAChBC,MAAM,EAAE;EACV,CAAC;EAED,MAAMqB,SAAS,GAAG1B,OAAO,EAAE3B,KAAK;EAChC,MAAMkB,QAAQ,GACZjB,cAAc,CAAC,CAAC,GACdD,KAAK,CAACb,MAAM,CAACmE,QAAQ,CAAC;IACpBb,IAAI,EAAEY,SAAS,EAAEZ,IAAI,IAAIf,EAAE,CAACe,IAAI;IAChCc,IAAI,EAAEF,SAAS,EAAEE,IAAI;IACrBC,SAAS,EAAEzD,qBAAqB,CAAC,CAAC;IAClC0D,SAAS,EAAE1C,OAAO,CAACK,EAAE;IACrBsC,cAAc,EAAE5C,2BAA2B,CAACC,OAAO;EACrD,CAAC,CAAC,GACF,CAAC,CAAC;EAEN,IAAIG,QAAQ,KAAK,CAAC,CAAC,EAAE;IACnBH,OAAO,CAACE,IAAI,KAAK,CAAC,CAAC;IACnBF,OAAO,CAACE,IAAI,CAACC,QAAQ,GAAGA,QAAQ;EAClC;EAEA,MAAMyC,SAAS,GAAIC,KAAc,IAAK;IACpC,MAAMzB,CAAC,GAAGpB,OAAO,CAACqB,WAAW;IAC7BrB,OAAO,CAACqB,WAAW,GAAGjB,SAAS;IAC/B,IAAIgB,CAAC,EAAE;MACL,KAAK,IAAI0B,CAAC,GAAG,CAAC,EAAEC,GAAG,GAAG3B,CAAC,CAAC4B,MAAM,EAAEF,CAAC,GAAGC,GAAG,EAAED,CAAC,EAAE,EAAE3B,OAAO,CAACC,CAAC,CAAC0B,CAAC,CAAC,CAAC;IAC7D;;IAEA;IACAD,KAAK,IAAI5E,IAAI,CAACgF,MAAM,CAAC;EACvB,CAAC;EAEDC,SAAS,CAAC,MAAMN,SAAS,CAAC,IAAI,CAAC,CAAC;EAChC,MAAMO,UAAmC,GAAG;IAC1C;IACAC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE;IACjBjE,SAAS,EAAEA,SAAS,CAAC;EACvB,CAAC;EAED,IAAIgB,QAAQ,KAAK,CAAC,CAAC,EAAE;IACnBgD,UAAU,CAACE,OAAO,GAAIC,KAAU,IAAK;MACnC,MAAMC,SAAS,GACb,OAAOD,KAAK,CAACE,GAAG,KAAK,QAAQ,GAAGF,KAAK,CAACE,GAAG,CAACC,QAAQ,CAAC,CAAC,GAAGH,KAAK,CAACE,GAAG;MAClE,IAAI1F,KAAK,CAACwF,KAAK,CAACI,MAAM,CAAC,EAAE;QACvB,MAAMrD,EAAE,GAAGsD,KAAK,CAACL,KAAK,CAACI,MAAM,CAAC;QAC9BzE,KAAK,CAACb,MAAM,CAACwF,SAAS,CAAC;UAAEvD,EAAE;UAAEwD,IAAI,EAAE;QAAM,CAAC,CAAC;QAC3C5E,KAAK,CAACb,MAAM,CAAC0F,KAAK,CAAC;UACjB3D,QAAQ;UACRuD,MAAM,EAAEJ,KAAK,CAACI,MAAM;UACpBC,KAAK,EAAEtD,EAAE;UACTkD;QACF,CAAC,CAAC;MACJ,CAAC,MAAM,IACL,OAAOD,KAAK,CAACI,MAAM,KAAK,QAAQ,IAChCJ,KAAK,CAACI,MAAM,KAAK,IAAI,IACrBH,SAAS,KAAKnD,SAAS,EACvB;QACA,MAAMC,EAAE,GAAG0D,qBAAqB,CAACT,KAAK,CAACI,MAAM,EAAEH,SAAS,CAAC;QACzDtE,KAAK,CAACb,MAAM,CAAC4F,yBAAyB,CAAC;UACrC3D,EAAE;UACFqD,MAAM,EAAEJ,KAAK,CAACI,MAAM;UACpBF,GAAG,EAAED;QACP,CAAC,CAAC;QACFtE,KAAK,CAACb,MAAM,CAAC0F,KAAK,CAAC;UACjB3D,QAAQ;UACRuD,MAAM,EAAEJ,KAAK,CAACI,MAAM;UACpBC,KAAK,EAAEtD,EAAE;UACTkD;QACF,CAAC,CAAC;MACJ,CAAC,MAAM;QACLtE,KAAK,CAACb,MAAM,CAAC0F,KAAK,CAAC;UACjB3D,QAAQ;UACRuD,MAAM,EAAEJ,KAAK,CAACI,MAAM;UACpBH;QACF,CAAC,CAAC;MACJ;IACF,CAAC;IACDJ,UAAU,CAACc,SAAS,GAAIX,KAAU,IAAK;MACrC,IAAI,EAAE,QAAQ,IAAIA,KAAK,CAAC,EAAE;QACxB;QACA;QACA;QACA;MACF;MACA,MAAMC,SAAS,GACb,OAAOD,KAAK,CAACE,GAAG,KAAK,QAAQ,GAAGF,KAAK,CAACE,GAAG,CAACC,QAAQ,CAAC,CAAC,GAAGH,KAAK,CAACE,GAAG;MAClE;MACA;MACA,MAAMU,gBAAgB,GAAG3C,mBAAmB,CAAC,CAAC;MAC9C,MAAM4C,QAAQ,GACZD,gBAAgB,KAAK9D,SAAS,IAAI8D,gBAAgB,KAAK/D,QAAQ,GAC7D+D,gBAAgB,GAChB9D,SAAS;MACb,IAAItC,KAAK,CAACwF,KAAK,CAACI,MAAM,CAAC,EAAE;QACvB,MAAMrD,EAAE,GAAGsD,KAAK,CAACL,KAAK,CAACI,MAAM,CAAC;QAC9BzE,KAAK,CAACb,MAAM,CAACwF,SAAS,CAAC;UAAEvD,EAAE;UAAEwD,IAAI,EAAE;QAAM,CAAC,CAAC;QAC3C5E,KAAK,CAACb,MAAM,CAACgG,OAAO,CAAC;UACnBjE,QAAQ;UACRuD,MAAM,EAAEJ,KAAK,CAACI,MAAM;UACpBC,KAAK,EAAEtD,EAAE;UACTkD,SAAS;UACTY;QACF,CAAC,CAAC;QACF/E,iBAAiB,CAACe,QAAQ,EAAEE,EAAE,CAAC;MACjC,CAAC,MAAM,IACL,OAAOiD,KAAK,CAACI,MAAM,KAAK,QAAQ,IAChCJ,KAAK,CAACI,MAAM,KAAK,IAAI,IACrBH,SAAS,KAAKnD,SAAS,EACvB;QACA,MAAMC,EAAE,GAAG0D,qBAAqB,CAACT,KAAK,CAACI,MAAM,EAAEH,SAAS,CAAC;QACzDtE,KAAK,CAACb,MAAM,CAAC4F,yBAAyB,CAAC;UACrC3D,EAAE;UACFqD,MAAM,EAAEJ,KAAK,CAACI,MAAM;UACpBF,GAAG,EAAED;QACP,CAAC,CAAC;QACFtE,KAAK,CAACb,MAAM,CAACgG,OAAO,CAAC;UACnBjE,QAAQ;UACRuD,MAAM,EAAEJ,KAAK,CAACI,MAAM;UACpBC,KAAK,EAAEtD,EAAE;UACTkD,SAAS;UACTY;QACF,CAAC,CAAC;QACF/E,iBAAiB,CAACe,QAAQ,EAAEE,EAAE,CAAC;MACjC,CAAC,MAAM;QACLpB,KAAK,CAACb,MAAM,CAACgG,OAAO,CAAC;UACnBjE,QAAQ;UACRuD,MAAM,EAAEJ,KAAK,CAACI,MAAM;UACpBH,SAAS;UACTY;QACF,CAAC,CAAC;MACJ;IACF,CAAC;EACH;EAEA,MAAMlB,MAAkC,GAAG5E,SAAS,CAAC,MAAM;IACzDuE,SAAS,CAAC,KAAK,CAAC;IAEhB,MAAMyB,UAAU,GAAGvE,aAAa;IAChCA,aAAa,GAAGE,OAAO;IACvB,IAAI;MACFqC,OAAO,GAAG1B,EAAE,CAAC0B,OAAO,CAAC;IACvB,CAAC,SAAS;MACRvC,aAAa,GAAGuE,UAAU;IAC5B;EACF,CAAC,EAAElB,UAAiB,CAAC;EAErB,IAAIhD,QAAQ,KAAK,CAAC,CAAC,EAAE;IACnBmE,WAAW,CAACC,GAAG,CAACtB,MAAM,CAAC7E,MAAM,EAAE+B,QAAQ,CAAC;EAC1C;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAS+C,SAASA,CAACvC,EAAc,EAAE;EACxC,IAAIb,aAAa,IAAI,IAAI,EAAE;IACzB,CAACA,aAAa,CAACuB,WAAW,KAAK,EAAE,EAAEmD,IAAI,CAAC7D,EAAE,CAAC;EAC7C;AACF;;AAEA;AACA;AACA;AACA;;AAOA,MAAM8D,kBAAkB,GAAGC,MAAM,CAAC,CAAC;AAEnC,OAAO,SAASC,mBAAmBA,CACjCC,WAAiE,EAClD;EACf,OAAO;IACL,CAACH,kBAAkB,GAAG,IAAI;IAC1BI,gBAAgBA,CAACC,KAAmC,EAAQ;MAC1DF,WAAW,CAACE,KAAK,CAAC;IACpB;EACF,CAAC;AACH;AAEA,OAAO,SAASC,eAAeA,CAACC,KAAe,EAA0B;EACvE,OACE,OAAOA,KAAK,KAAK,QAAQ,IACzBA,KAAK,KAAK,IAAI,IACd9C,MAAM,CAAC+C,MAAM,CAACD,KAAK,EAAEP,kBAAkB,CAAC;AAE5C;AAEA,OAAO,SAASnG,GAAGA,CACjB0D,KAAS,EACTpB,OAAwC,EAChC;EACR,MAAMsE,MAAM,GAAG3G,MAAM,CAACyD,KAAK,CAAW;EACtC,IAAI9C,cAAc,CAAC,CAAC,EAAE;IACpBD,KAAK,CAACb,MAAM,CAAC+G,WAAW,CAAC;MACvB9E,EAAE,EAAEsD,KAAK,CAACuB,MAAM,CAAC;MACjBrB,IAAI,EAAE,KAAK;MACXpB,SAAS,EAAEzD,qBAAqB,CAAC,CAAC;MAClCoG,iBAAiB,EAAEtF,aAAa,EAAEI,IAAI,EAAEC,QAAQ;MAChDM,gBAAgB,EAAEG,OAAO,EAAEH;IAC7B,CAAC,CAAC;EACJ;EACA,OAAOyE,MAAM;AACf;;AAEA;AACA;AACA,MAAMG,yBAAyB,GAAG,IAAIC,OAAO,CAG3C,CAAC;AAEH,OAAO,SAASC,2BAA2BA,CAAC7B,MAAc,EAAE;EAC1D,OAAO2B,yBAAyB,CAACG,GAAG,CAAC9B,MAAM,CAAC;AAC9C;AAEA,OAAO,SAASlF,eAAeA,CAC7BkF,MAAS,EACW;EACpB,MAAMwB,MAAM,GAAGzG,kBAAkB,CAACiF,MAAM,CAAC;EACzC,IAAIxE,cAAc,CAAC,CAAC,EAAE;IACpB;IACAmG,yBAAyB,CAACd,GAAG,CAACb,MAAM,EAAE1E,qBAAqB,CAAC,CAAC,CAAC;EAChE;EACA,OAAOkG,MAAM;AACf;AAEA,OAAO,SAASxG,UAAUA,CAAIsD,KAAS,EAAEpB,OAA4B,EAAU;EAC7E,MAAMsE,MAAM,GAAGvG,aAAa,CAACqD,KAAK,CAAW;EAC7C,IAAI9C,cAAc,CAAC,CAAC,EAAE;IACpBD,KAAK,CAACb,MAAM,CAAC+G,WAAW,CAAC;MACvB9E,EAAE,EAAEsD,KAAK,CAACuB,MAAM,CAAC;MACjBrB,IAAI,EAAE,YAAY;MAClBhC,KAAK,EAAEjB,OAAO,EAAEiB,KAAK;MACrBY,SAAS,EAAEzD,qBAAqB,CAAC,CAAC;MAClCoG,iBAAiB,EAAEtF,aAAa,EAAEI,IAAI,EAAEC;IAC1C,CAAC,CAAC;EACJ;EACA,OAAO+E,MAAM;AACf;AAEA,OAAO,SAAShH,QAAQA,CAAI+D,MAAe,EAAU;EACnD,MAAMiD,MAAM,GAAG/G,WAAW,CAAC8D,MAAM,CAAW;EAC5C,IAAI/C,cAAc,CAAC,CAAC,EAAE;IACpBD,KAAK,CAACb,MAAM,CAAC+G,WAAW,CAAC;MACvB9E,EAAE,EAAEsD,KAAK,CAACuB,MAAM,CAAC;MACjBrB,IAAI,EAAE,UAAU;MAChBpB,SAAS,EAAEzD,qBAAqB,CAAC,CAAC;MAClCoG,iBAAiB,EAAEtF,aAAa,EAAEI,IAAI,EAAEC;IAC1C,CAAC,CAAC;EACJ;EACA,OAAO+E,MAAM;AACf;AAEA,OAAO,SAAStG,KAAKA,CACnB6G,MAAS,EACTjC,GAAM,EACNkC,YAAmB,EACR;EACX,MAAMR,MAAM,GACVQ,YAAY,KAAKtF,SAAS,GACvBvB,QAAQ,CAAC4G,MAAM,EAAEjC,GAAG,CAAC,GACrB3E,QAAQ,CAAC4G,MAAM,EAAEjC,GAAG,EAAEkC,YAAY,CAAe;EACtD,IAAIxG,cAAc,CAAC,CAAC,EAAE;IACpBD,KAAK,CAACb,MAAM,CAAC+G,WAAW,CAAC;MACvB9E,EAAE,EAAEsD,KAAK,CAACuB,MAAM,CAAC;MACjBrB,IAAI,EAAE,OAAO;MACbpB,SAAS,EAAEzD,qBAAqB,CAAC,CAAC;MAClCoG,iBAAiB,EAAEtF,aAAa,EAAEI,IAAI,EAAEC;IAC1C,CAAC,CAAC;EACJ;EACA,OAAO+E,MAAM;AACf;AAEA,OAAO,SAASpG,MAAMA,CACpB2G,MAAS,EACsB;EAC/B,MAAMP,MAAM,GAAGnG,SAAS,CAAC0G,MAAM,CAAkC;EACjE,IAAIvG,cAAc,CAAC,CAAC,EAAE;IACpB,KAAK,MAAMyG,QAAQ,IAAIzD,MAAM,CAAC0D,MAAM,CAACV,MAAM,CAAC,EAAoB;MAC9DjG,KAAK,CAACb,MAAM,CAAC+G,WAAW,CAAC;QACvB9E,EAAE,EAAEsD,KAAK,CAACgC,QAAQ,CAAC;QACnB9B,IAAI,EAAE,OAAO;QACbpB,SAAS,EAAEzD,qBAAqB,CAAC,CAAC;QAClCoG,iBAAiB,EAAEtF,aAAa,EAAEI,IAAI,EAAEC;MAC1C,CAAC,CAAC;IACJ;EACF;EACA,OAAO+E,MAAM;AACf;AAEA,MAAMW,QAAQ,GAAG,IAAIP,OAAO,CAAuB,CAAC;AACpD,IAAIQ,YAAY,GAAG,CAAC;AACpB,MAAMxB,WAAW,GAAG,IAAIgB,OAAO,CAAiB,CAAC;;AAEjD;AACA,MAAMS,mBAAmB,GAAG,IAAIT,OAAO,CAAuC,CAAC;AAE/E,OAAO,SAAS3B,KAAKA,CAACrF,GAAiB,EAAU;EAC/C,IAAI+B,EAAE,GAAGwF,QAAQ,CAACL,GAAG,CAAClH,GAAG,CAAC;EAC1B,IAAI+B,EAAE,KAAKD,SAAS,EAAE;IACpBC,EAAE,GAAGyF,YAAY,EAAE;IACnBD,QAAQ,CAACtB,GAAG,CAACjG,GAAG,EAAE+B,EAAE,CAAC;EACvB;EACA,OAAOA,EAAE;AACX;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAAS0D,qBAAqBA,CACnCL,MAAc,EACdF,GAAoB,EACZ;EACR,IAAIwC,IAAI,GAAGD,mBAAmB,CAACP,GAAG,CAAC9B,MAAM,CAAC;EAC1C,IAAI,CAACsC,IAAI,EAAE;IACTA,IAAI,GAAG,IAAIpG,GAAG,CAAC,CAAC;IAChBmG,mBAAmB,CAACxB,GAAG,CAACb,MAAM,EAAEsC,IAAI,CAAC;EACvC;EACA,IAAI3F,EAAE,GAAG2F,IAAI,CAACR,GAAG,CAAChC,GAAG,CAAC;EACtB,IAAInD,EAAE,KAAKD,SAAS,EAAE;IACpBC,EAAE,GAAGyF,YAAY,EAAE;IACnBE,IAAI,CAACzB,GAAG,CAACf,GAAG,EAAEnD,EAAE,CAAC;EACnB;EACA,OAAOA,EAAE;AACX;;AAEA;AACA;AACA;AACA,OAAO,SAAS4F,2BAA2BA,CACzCvC,MAAc,EACdF,GAAoB,EACZ;EACR,IAAI0C,UAAkB;EACtB,IAAI;IACF,MAAMC,GAAG,GAAGC,MAAM,CAAC1C,MAAM,CAAC;IAC1B;IACA;IACAwC,UAAU,GAAGC,GAAG,CAACnD,MAAM,GAAG,EAAE,GAAGmD,GAAG,CAACE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,GAAGF,GAAG;EAC/D,CAAC,CAAC,MAAM;IACND,UAAU,GAAG,UAAU;EACzB;EACA,IAAII,KAAK,CAACC,OAAO,CAAC7C,MAAM,CAAC,EAAE;IACzBwC,UAAU,GAAG,IAAI;EACnB;EACA,OAAO,GAAGA,UAAU,IAAI1C,GAAG,EAAE;AAC/B;;AAEA;AACA,OAAO,SAASgD,cAAcA,CAAA,EAAW;EACvC,OAAOV,YAAY,EAAE;AACvB;AAEA,OAAO,SAASW,iBAAiBA,CAAA,EAAS;EACxCX,YAAY,GAAG,CAAC;AAClB;AAEA,OAAO,SAASY,gBAAgBA,CAACtI,MAAc,EAAsB;EACnE,OAAOkG,WAAW,CAACkB,GAAG,CAACpH,MAAM,CAAC;AAChC","ignoreList":[]}
1
+ {"version":3,"names":["isRef","pauseTracking","resetTracking","stop","computed","vueComputed","effect","vueEffect","ref","vueRef","shallowReactive","vueShallowReactive","shallowRef","vueShallowRef","toRef","vueToRef","toRefs","vueToRefs","captureSourceLocation","debug","isDebugEnabled","scheduler","setLastTriggerRef","globalThis","__ALLOY__","Error","contextIdCounter","globalContext","getContext","resolveOwnerEffectContextId","context","owner","meta","effectId","undefined","id","ensureIsEmpty","isEmpty","childrenWithContent","isInfrastructure","contentAdded","contentRemoved","setContextEmptyChangeListener","listener","onEmptyChange","notifyContentState","startContext","untrack","lastEmpty","value","current","root","fn","options","componentOwner","takesSymbols","takenSymbols","isRoot","ret","d","disposables","v","findCurrentEffectId","ctx","memo","equal","name","dbg","o","label","prev","res","getter","Object","defineProperty","configurable","debugInfo","register","type","createdAt","contextId","ownerContextId","cleanupFn","final","k","len","length","runner","onCleanup","effectOpts","flags","onTrack","event","targetKey","key","toString","target","refId","ensureRef","kind","track","reactivePropertyRefId","ensureReactivePropertyRef","onTrigger","producerEffectId","causedBy","trigger","oldContext","effectIdMap","set","runInContext","runInContextWithDisposer","dispose","push","CUSTOM_CONTEXT_SYM","Symbol","createCustomContext","useCallback","useCustomContext","useCb","isCustomContext","child","hasOwn","result","registerRef","createdByEffectId","reactiveCreationLocations","WeakMap","getReactiveCreationLocation","get","object","defaultValue","refValue","values","seenRefs","refIdCounter","reactivePropertyIds","keys","Map","formatReactivePropertyLabel","ownerLabel","str","String","slice","Array","isArray","nextReactiveId","resetRefIdCounter","getEffectDebugId"],"sources":["../../../src/reactivity.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Vendored from prettier@3.6.2 — `src/utils/get-string-width.js` plus the
3
+ * `emoji-regex` and `get-east-asian-width` data tables it depends on.
4
+ *
5
+ * Extracted verbatim from `node_modules/prettier/doc.js` (lines 688–727)
6
+ * so that the alloy fused printer can produce byte-identical output to
7
+ * Prettier's `printDocToString` without taking on a runtime dependency
8
+ * on Prettier's internals.
9
+ *
10
+ * Sources:
11
+ * - https://github.com/mathiasbynens/emoji-regex (MIT)
12
+ * - https://github.com/sindresorhus/get-east-asian-width (MIT)
13
+ * - https://github.com/prettier/prettier (MIT)
14
+ *
15
+ * Do not edit by hand. Re-extract from prettier when bumping versions.
16
+ */
17
+
18
+ /* eslint-disable */
19
+ // @ts-nocheck
20
+ // node_modules/emoji-regex/index.mjs
21
+ var emoji_regex_default = () => {
22
+ return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
23
+ };
24
+
25
+ // node_modules/get-east-asian-width/lookup.js
26
+ function isFullWidth(x) {
27
+ return x === 12288 || x >= 65281 && x <= 65376 || x >= 65504 && x <= 65510;
28
+ }
29
+ function isWide(x) {
30
+ return x >= 4352 && x <= 4447 || x === 8986 || x === 8987 || x === 9001 || x === 9002 || x >= 9193 && x <= 9196 || x === 9200 || x === 9203 || x === 9725 || x === 9726 || x === 9748 || x === 9749 || x >= 9776 && x <= 9783 || x >= 9800 && x <= 9811 || x === 9855 || x >= 9866 && x <= 9871 || x === 9875 || x === 9889 || x === 9898 || x === 9899 || x === 9917 || x === 9918 || x === 9924 || x === 9925 || x === 9934 || x === 9940 || x === 9962 || x === 9970 || x === 9971 || x === 9973 || x === 9978 || x === 9981 || x === 9989 || x === 9994 || x === 9995 || x === 10024 || x === 10060 || x === 10062 || x >= 10067 && x <= 10069 || x === 10071 || x >= 10133 && x <= 10135 || x === 10160 || x === 10175 || x === 11035 || x === 11036 || x === 11088 || x === 11093 || x >= 11904 && x <= 11929 || x >= 11931 && x <= 12019 || x >= 12032 && x <= 12245 || x >= 12272 && x <= 12287 || x >= 12289 && x <= 12350 || x >= 12353 && x <= 12438 || x >= 12441 && x <= 12543 || x >= 12549 && x <= 12591 || x >= 12593 && x <= 12686 || x >= 12688 && x <= 12773 || x >= 12783 && x <= 12830 || x >= 12832 && x <= 12871 || x >= 12880 && x <= 42124 || x >= 42128 && x <= 42182 || x >= 43360 && x <= 43388 || x >= 44032 && x <= 55203 || x >= 63744 && x <= 64255 || x >= 65040 && x <= 65049 || x >= 65072 && x <= 65106 || x >= 65108 && x <= 65126 || x >= 65128 && x <= 65131 || x >= 94176 && x <= 94180 || x === 94192 || x === 94193 || x >= 94208 && x <= 100343 || x >= 100352 && x <= 101589 || x >= 101631 && x <= 101640 || x >= 110576 && x <= 110579 || x >= 110581 && x <= 110587 || x === 110589 || x === 110590 || x >= 110592 && x <= 110882 || x === 110898 || x >= 110928 && x <= 110930 || x === 110933 || x >= 110948 && x <= 110951 || x >= 110960 && x <= 111355 || x >= 119552 && x <= 119638 || x >= 119648 && x <= 119670 || x === 126980 || x === 127183 || x === 127374 || x >= 127377 && x <= 127386 || x >= 127488 && x <= 127490 || x >= 127504 && x <= 127547 || x >= 127552 && x <= 127560 || x === 127568 || x === 127569 || x >= 127584 && x <= 127589 || x >= 127744 && x <= 127776 || x >= 127789 && x <= 127797 || x >= 127799 && x <= 127868 || x >= 127870 && x <= 127891 || x >= 127904 && x <= 127946 || x >= 127951 && x <= 127955 || x >= 127968 && x <= 127984 || x === 127988 || x >= 127992 && x <= 128062 || x === 128064 || x >= 128066 && x <= 128252 || x >= 128255 && x <= 128317 || x >= 128331 && x <= 128334 || x >= 128336 && x <= 128359 || x === 128378 || x === 128405 || x === 128406 || x === 128420 || x >= 128507 && x <= 128591 || x >= 128640 && x <= 128709 || x === 128716 || x >= 128720 && x <= 128722 || x >= 128725 && x <= 128727 || x >= 128732 && x <= 128735 || x === 128747 || x === 128748 || x >= 128756 && x <= 128764 || x >= 128992 && x <= 129003 || x === 129008 || x >= 129292 && x <= 129338 || x >= 129340 && x <= 129349 || x >= 129351 && x <= 129535 || x >= 129648 && x <= 129660 || x >= 129664 && x <= 129673 || x >= 129679 && x <= 129734 || x >= 129742 && x <= 129756 || x >= 129759 && x <= 129769 || x >= 129776 && x <= 129784 || x >= 131072 && x <= 196605 || x >= 196608 && x <= 262141;
31
+ }
32
+
33
+ // node_modules/get-east-asian-width/index.js
34
+ var _isNarrowWidth = codePoint => !(isFullWidth(codePoint) || isWide(codePoint));
35
+
36
+ // src/utils/get-string-width.js
37
+ var notAsciiRegex = /[^\x20-\x7F]/u;
38
+ function getStringWidth(text) {
39
+ if (!text) {
40
+ return 0;
41
+ }
42
+ if (!notAsciiRegex.test(text)) {
43
+ return text.length;
44
+ }
45
+ text = text.replace(emoji_regex_default(), " ");
46
+ let width = 0;
47
+ for (const character of text) {
48
+ const codePoint = character.codePointAt(0);
49
+ if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) {
50
+ continue;
51
+ }
52
+ if (codePoint >= 768 && codePoint <= 879) {
53
+ continue;
54
+ }
55
+ width += _isNarrowWidth(codePoint) ? 1 : 2;
56
+ }
57
+ return width;
58
+ }
59
+ var get_string_width_default = getStringWidth;
60
+ export { getStringWidth };
61
+ //# sourceMappingURL=get-string-width.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["emoji_regex_default","isFullWidth","x","isWide","_isNarrowWidth","codePoint","notAsciiRegex","getStringWidth","text","test","length","replace","width","character","codePointAt","get_string_width_default"],"sources":["../../../../src/render/get-string-width.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAIA,mBAAmB,GAAGA,CAAA,KAAM;EAC9B,OAAO,0gZAA0gZ;AACnhZ,CAAC;;AAED;AACA,SAASC,WAAWA,CAACC,CAAC,EAAE;EACtB,OACEA,CAAC,KAAK,KAAK,IAAKA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IAAKA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM;AAE3E;AACA,SAASC,MAAMA,CAACD,CAAC,EAAE;EACjB,OACGA,CAAC,IAAI,IAAI,IAAIA,CAAC,IAAI,IAAI,IACvBA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACTA,CAAC,IAAI,IAAI,IAAIA,CAAC,IAAI,IAAK,IACxBA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACTA,CAAC,IAAI,IAAI,IAAIA,CAAC,IAAI,IAAK,IACvBA,CAAC,IAAI,IAAI,IAAIA,CAAC,IAAI,IAAK,IACxBA,CAAC,KAAK,IAAI,IACTA,CAAC,IAAI,IAAI,IAAIA,CAAC,IAAI,IAAK,IACxBA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,IAAI,IACVA,CAAC,KAAK,KAAK,IACXA,CAAC,KAAK,KAAK,IACXA,CAAC,KAAK,KAAK,IACVA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IAC1BA,CAAC,KAAK,KAAK,IACVA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IAC1BA,CAAC,KAAK,KAAK,IACXA,CAAC,KAAK,KAAK,IACXA,CAAC,KAAK,KAAK,IACXA,CAAC,KAAK,KAAK,IACXA,CAAC,KAAK,KAAK,IACXA,CAAC,KAAK,KAAK,IACVA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,IACzBA,CAAC,IAAI,KAAK,IAAIA,CAAC,IAAI,KAAM,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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export * from "./node.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../../src/render/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc,WAAW","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ export function getContextForNode(node) {
2
+ return node.__alloyCtx;
3
+ }
4
+ export function setContextForNode(node, context) {
5
+ node.__alloyCtx = context;
6
+ }
7
+ //# sourceMappingURL=node-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getContextForNode","node","__alloyCtx","setContextForNode","context"],"sources":["../../../../src/render/node-context.ts"],"sourcesContent":[null],"mappings":"AAOA,OAAO,SAASA,iBAAiBA,CAACC,IAAe,EAAuB;EACtE,OAAQA,IAAI,CAAiBC,UAAU;AACzC;AAEA,OAAO,SAASC,iBAAiBA,CAACF,IAAe,EAAEG,OAAgB,EAAQ;EACxEH,IAAI,CAAiBC,UAAU,GAAGE,OAAO;AAC5C","ignoreList":[]}
@@ -0,0 +1,386 @@
1
+ /**
2
+ * AlloyNode tree — a DOM-aligned in-memory representation of rendered
3
+ * output.
4
+ *
5
+ * Components return AlloyNodes (or values that get inserted into them)
6
+ * via `runtime/insert.ts`; the resulting tree is consumed by the direct
7
+ * printer and `render-output.ts` output-directory walker.
8
+ *
9
+ * Naming and semantics follow the modern DOM where there is meaningful
10
+ * overlap. Only modern DOM mutation methods are exposed
11
+ * (`append`/`prepend`/`before`/`after`/`replaceWith`/`remove`/`text.data`/
12
+ * `moveBefore`). Legacy methods (`appendChild`, `insertBefore`,
13
+ * `removeChild`, `replaceChild`, the `nodeValue` setter) are intentionally
14
+ * NOT provided.
15
+ */
16
+
17
+ // #region nodeType constants
18
+
19
+ export const ELEMENT_NODE = 1;
20
+ export const TEXT_NODE = 3;
21
+ export const COMMENT_NODE = 8;
22
+ export const FRAGMENT_NODE = 11;
23
+
24
+ /**
25
+ * Anything that can be inserted: a Node, a string (auto-wrapped as Text),
26
+ * or a number (auto-wrapped as Text).
27
+ */
28
+
29
+ // #endregion
30
+
31
+ // #region Base Node
32
+
33
+ export class AlloyNode {
34
+ parentNode = null;
35
+ firstChild = null;
36
+ lastChild = null;
37
+ previousSibling = null;
38
+ nextSibling = null;
39
+
40
+ /**
41
+ * Empty-state propagation. `false` for Text/Element with content,
42
+ * `true` for empty regions. Mutated by reactive bindings; read by
43
+ * joiner/ender logic. Direct field — no Vue effect.
44
+ */
45
+ isEmpty = true;
46
+
47
+ // #region Modern DOM mutation API
48
+
49
+ /** Append nodes (or strings) to the end of children. */
50
+ append(...nodes) {
51
+ for (let i = 0, len = nodes.length; i < len; i++) {
52
+ insertBefore(this, normalize(nodes[i]), null);
53
+ }
54
+ }
55
+
56
+ /** Prepend nodes (or strings) to the beginning of children. */
57
+ prepend(...nodes) {
58
+ const first = this.firstChild;
59
+ for (let i = 0, len = nodes.length; i < len; i++) {
60
+ insertBefore(this, normalize(nodes[i]), first);
61
+ }
62
+ }
63
+
64
+ /** Insert nodes immediately before `this` in the parent's child list. */
65
+ before(...nodes) {
66
+ const parent = this.parentNode;
67
+ if (parent === null) return;
68
+ for (let i = 0, len = nodes.length; i < len; i++) {
69
+ insertBefore(parent, normalize(nodes[i]), this);
70
+ }
71
+ }
72
+
73
+ /** Insert nodes immediately after `this` in the parent's child list. */
74
+ after(...nodes) {
75
+ const parent = this.parentNode;
76
+ if (parent === null) return;
77
+ const ref = this.nextSibling;
78
+ for (let i = 0, len = nodes.length; i < len; i++) {
79
+ insertBefore(parent, normalize(nodes[i]), ref);
80
+ }
81
+ }
82
+
83
+ /** Replace `this` with the given nodes in the parent's child list. */
84
+ replaceWith(...nodes) {
85
+ const parent = this.parentNode;
86
+ if (parent === null) return;
87
+ const ref = this.nextSibling;
88
+ detach(this);
89
+ for (let i = 0, len = nodes.length; i < len; i++) {
90
+ insertBefore(parent, normalize(nodes[i]), ref);
91
+ }
92
+ }
93
+
94
+ /** Remove `this` from its parent. */
95
+ remove() {
96
+ if (this.parentNode !== null) detach(this);
97
+ }
98
+
99
+ /**
100
+ * Atomic move: relocate `node` to be a child of `this` immediately
101
+ * before `ref` (or at the end if `ref` is null), without disconnecting
102
+ * any state on the moved subtree. Used by `<For>` reorder paths so
103
+ * keyed-item bindings stay live.
104
+ *
105
+ * Mirrors the 2024 DOM `Element.moveBefore(node, child)` proposal.
106
+ */
107
+ moveBefore(node, ref) {
108
+ if (node.parentNode === this && node.nextSibling === ref) return;
109
+ detach(node);
110
+ insertBefore(this, node, ref);
111
+ }
112
+
113
+ /**
114
+ * Deep-clone this node and its subtree. The clone has no parent and
115
+ * its children are themselves clones. Used when a node value would
116
+ * otherwise be inserted into two parents (e.g. a shared joiner element
117
+ * produced by mapJoin) — Alloy intrinsic nodes are stateless so a
118
+ * fresh tree is semantically equivalent.
119
+ */
120
+ cloneNode() {
121
+ const copy = this.cloneShallow();
122
+ for (let c = this.firstChild; c !== null; c = c.nextSibling) {
123
+ insertBefore(copy, c.cloneNode(), null);
124
+ }
125
+ return copy;
126
+ }
127
+ }
128
+
129
+ // #endregion
130
+
131
+ // #endregion
132
+
133
+ // #region Concrete Node types
134
+
135
+ /** Text node — analog of DOM Text / CharacterData. */
136
+ export class TextNode extends AlloyNode {
137
+ nodeType = TEXT_NODE;
138
+ // Cached during construction — text data is set once and never mutated
139
+ // (insert.ts replaces TextNode instances rather than reassigning .data).
140
+ // Reading these in the printer's hot path is much cheaper than rerunning
141
+ // getStringWidth / two indexOf scans on every print.
142
+ /** Display width (Prettier-compatible). Lazily filled on first read. */
143
+ _w = -1;
144
+ /** 1 if `data` contains a newline, 0 if not, -1 if not yet computed. */
145
+ _nl = -1;
146
+ constructor(data) {
147
+ super();
148
+ this.data = data;
149
+ this.isEmpty = data.length === 0;
150
+ }
151
+ cloneShallow() {
152
+ return new TextNode(this.data);
153
+ }
154
+ }
155
+
156
+ /**
157
+ * Comment node — used as a slot anchor (start/end markers) bracketing
158
+ * dynamic regions. Solid uses the same pattern.
159
+ */
160
+ export class CommentNode extends AlloyNode {
161
+ nodeType = COMMENT_NODE;
162
+ /** Comments don't contribute output, always empty. */
163
+ isEmpty = true;
164
+ constructor(data = "") {
165
+ super();
166
+ this.data = data;
167
+ }
168
+ cloneShallow() {
169
+ return new CommentNode(this.data);
170
+ }
171
+ }
172
+
173
+ /**
174
+ * Element node — Alloy hook node. `localName` carries the hook kind
175
+ * ("group", "indent", "line", "softline", "ifBreak", etc).
176
+ *
177
+ * `data` carries hook-specific config (e.g. `{ shouldBreak: false }` for
178
+ * a group). Kept as a single bag rather than a parallel hierarchy of
179
+ * subclasses to avoid V8 hidden-class fan-out.
180
+ */
181
+ export class ElementNode extends AlloyNode {
182
+ nodeType = ELEMENT_NODE;
183
+ /**
184
+ * Count of unabsorbed break-leaves in this subtree. Maintained by
185
+ * `insertBefore` / `detach` so the printer can decide whether a
186
+ * `group` is broken in O(1) without a prepass walk.
187
+ *
188
+ * `breakParent` / `hardline` / `hbr` / `literalline` / `lbr` elements
189
+ * and TextNodes containing `\n`/`\r` count as break-leaves; a `group`
190
+ * element absorbs the count from its own subtree (does not propagate
191
+ * outward).
192
+ *
193
+ * For `ifBreak` elements the count includes contributions from
194
+ * `data.flatNode` (the alternate branch is not in the regular tree).
195
+ */
196
+ _breakCount = 0;
197
+ constructor(localName, data) {
198
+ super();
199
+ this.localName = localName;
200
+ this.data = data;
201
+ }
202
+ cloneShallow() {
203
+ return new ElementNode(this.localName, this.data);
204
+ }
205
+ }
206
+
207
+ /**
208
+ * Fragment node — transient batch container. Inserting a Fragment splices
209
+ * its children into the target (mirroring DOM DocumentFragment semantics)
210
+ * and the Fragment itself becomes empty.
211
+ */
212
+ export class FragmentNode extends AlloyNode {
213
+ nodeType = FRAGMENT_NODE;
214
+ cloneShallow() {
215
+ return new FragmentNode();
216
+ }
217
+ }
218
+
219
+ // #endregion
220
+
221
+ // #region Constructors
222
+
223
+ export function createTextNode(data) {
224
+ return new TextNode(data);
225
+ }
226
+ export function createComment(data = "") {
227
+ return new CommentNode(data);
228
+ }
229
+ export function createElement(localName, data) {
230
+ return new ElementNode(localName, data);
231
+ }
232
+ export function createFragment() {
233
+ return new FragmentNode();
234
+ }
235
+
236
+ // #endregion
237
+
238
+ // #region Eager break propagation
239
+
240
+ /**
241
+ * Element local-names whose mere presence forces the innermost enclosing
242
+ * `group` to break (= count as one "break leaf"). Mirrors the cases
243
+ * Prettier's `propagateBreaks` triggers on.
244
+ */
245
+ function isBreakLeafElement(localName) {
246
+ return localName === "breakParent" || localName === "hardline" || localName === "hbr" || localName === "literalline" || localName === "lbr";
247
+ }
248
+
249
+ /**
250
+ * How many break-leaves does inserting/removing `n` add to its parent's
251
+ * subtree? `group` absorbs internal breaks → contributes 0 outward.
252
+ * `ifBreak` includes its `flatNode` count too (the alternate branch is
253
+ * stored on `data`, not in the regular tree).
254
+ */
255
+ function effectiveBreakCount(n) {
256
+ const nt = n.nodeType;
257
+ if (nt === TEXT_NODE) {
258
+ const t = n;
259
+ // Inline (and cache) the textHasNewline check to avoid a cross-module
260
+ // call on the hot insert path.
261
+ let nl = t._nl;
262
+ if (nl < 0) {
263
+ const s = t.data;
264
+ nl = s.length > 0 && (s.indexOf("\n") !== -1 || s.indexOf("\r") !== -1) ? 1 : 0;
265
+ t._nl = nl;
266
+ }
267
+ return nl;
268
+ }
269
+ if (nt === ELEMENT_NODE) {
270
+ const el = n;
271
+ const ln = el.localName;
272
+ if (isBreakLeafElement(ln)) return 1;
273
+ if (ln === "group") {
274
+ const broken = el._breakCount > 0 || el.data?.shouldBreak === true;
275
+ return broken ? 1 : 0;
276
+ }
277
+ if (ln === "ifBreak") {
278
+ const flat = el.data?.flatNode;
279
+ return el._breakCount + (flat ? flat._breakCount : 0);
280
+ }
281
+ return el._breakCount;
282
+ }
283
+ return 0;
284
+ }
285
+
286
+ /**
287
+ * Walk up from `start` adjusting `_breakCount` by `delta`. When the walk
288
+ * crosses a `group` element, the group itself absorbs the inner breaks,
289
+ * but if its own broken state transitions (0 ↔ >0) it must propagate ±1
290
+ * outward so that ancestor groups also become broken (matches Prettier's
291
+ * `propagateBreaks` cascade through groupStack).
292
+ */
293
+ function propagateBreakDelta(start, delta) {
294
+ if (delta === 0) return;
295
+ let d = delta;
296
+ for (let n = start; n !== null; n = n.parentNode) {
297
+ if (n.nodeType !== ELEMENT_NODE) continue;
298
+ const el = n;
299
+ const before = el._breakCount;
300
+ el._breakCount = before + d;
301
+ if (el.localName === "group") {
302
+ const wasBroken = before > 0 || el.data?.shouldBreak === true;
303
+ const nowBroken = el._breakCount > 0 || el.data?.shouldBreak === true;
304
+ if (wasBroken === nowBroken) return;
305
+ d = nowBroken ? 1 : -1;
306
+ }
307
+ }
308
+ }
309
+
310
+ // #endregion
311
+
312
+ // #region Core mutation primitives
313
+
314
+ function normalize(input) {
315
+ if (typeof input === "string") return new TextNode(input);
316
+ if (typeof input === "number") return new TextNode(String(input));
317
+ return input;
318
+ }
319
+
320
+ /**
321
+ * Splice `node` (or its children, if Fragment) into `parent` immediately
322
+ * before `ref` (or at end if `ref` is null). Detaches `node` from any
323
+ * existing parent first.
324
+ */
325
+ /** Mutation listener — set by `debug/render.ts`. */
326
+
327
+ let mutationListener = null;
328
+ export function setMutationListener(l) {
329
+ mutationListener = l;
330
+ }
331
+ function insertBefore(parent, node, ref) {
332
+ // Fragment: splice its children, leaving the fragment itself empty.
333
+ if (node.nodeType === FRAGMENT_NODE) {
334
+ let child = node.firstChild;
335
+ node.firstChild = null;
336
+ node.lastChild = null;
337
+ while (child !== null) {
338
+ const next = child.nextSibling;
339
+ child.parentNode = null;
340
+ child.previousSibling = null;
341
+ child.nextSibling = null;
342
+ insertBefore(parent, child, ref);
343
+ child = next;
344
+ }
345
+ return;
346
+ }
347
+ if (node.parentNode !== null) detach(node);
348
+ node.parentNode = parent;
349
+ if (ref === null) {
350
+ // append
351
+ const last = parent.lastChild;
352
+ node.previousSibling = last;
353
+ node.nextSibling = null;
354
+ if (last !== null) last.nextSibling = node;else parent.firstChild = node;
355
+ parent.lastChild = node;
356
+ } else {
357
+ // insert before ref
358
+ const prev = ref.previousSibling;
359
+ node.previousSibling = prev;
360
+ node.nextSibling = ref;
361
+ ref.previousSibling = node;
362
+ if (prev !== null) prev.nextSibling = node;else parent.firstChild = node;
363
+ }
364
+ // Eager break propagation — keeps groups' `_breakCount` accurate so
365
+ // the printer can skip its `propagateBreaks` prepass.
366
+ propagateBreakDelta(parent, effectiveBreakCount(node));
367
+ if (mutationListener !== null) mutationListener.attached(node, parent);
368
+ }
369
+ function detach(node) {
370
+ const parent = node.parentNode;
371
+ if (parent === null) return;
372
+ // Subtract this subtree's break contribution from ancestors before
373
+ // unlinking, so `_breakCount` stays in sync.
374
+ propagateBreakDelta(parent, -effectiveBreakCount(node));
375
+ const prev = node.previousSibling;
376
+ const next = node.nextSibling;
377
+ if (prev !== null) prev.nextSibling = next;else parent.firstChild = next;
378
+ if (next !== null) next.previousSibling = prev;else parent.lastChild = prev;
379
+ node.parentNode = null;
380
+ node.previousSibling = null;
381
+ node.nextSibling = null;
382
+ if (mutationListener !== null) mutationListener.detached(node, parent);
383
+ }
384
+
385
+ // #endregion
386
+ //# sourceMappingURL=node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ELEMENT_NODE","TEXT_NODE","COMMENT_NODE","FRAGMENT_NODE","AlloyNode","parentNode","firstChild","lastChild","previousSibling","nextSibling","isEmpty","append","nodes","i","len","length","insertBefore","normalize","prepend","first","before","parent","after","ref","replaceWith","detach","remove","moveBefore","node","cloneNode","copy","cloneShallow","c","TextNode","nodeType","_w","_nl","constructor","data","CommentNode","ElementNode","_breakCount","localName","FragmentNode","createTextNode","createComment","createElement","createFragment","isBreakLeafElement","effectiveBreakCount","n","nt","t","nl","s","indexOf","el","ln","broken","shouldBreak","flat","flatNode","propagateBreakDelta","start","delta","d","wasBroken","nowBroken","input","String","mutationListener","setMutationListener","l","child","next","last","prev","attached","detached"],"sources":["../../../../src/render/node.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}