vigla 0.0.0 → 0.2.0

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 (1093) hide show
  1. package/dist/compiler/analysis/asynchronous.d.ts +18 -0
  2. package/dist/compiler/analysis/asynchronous.d.ts.map +1 -0
  3. package/dist/compiler/analysis/asynchronous.js +195 -0
  4. package/dist/compiler/analysis/asynchronous.js.map +1 -0
  5. package/dist/compiler/analysis/classes.d.ts +13 -0
  6. package/dist/compiler/analysis/classes.d.ts.map +1 -0
  7. package/dist/compiler/analysis/classes.js +96 -0
  8. package/dist/compiler/analysis/classes.js.map +1 -0
  9. package/dist/compiler/analysis/ignoring.d.ts +5 -0
  10. package/dist/compiler/analysis/ignoring.d.ts.map +1 -0
  11. package/dist/compiler/analysis/ignoring.js +23 -0
  12. package/dist/compiler/analysis/ignoring.js.map +1 -0
  13. package/dist/compiler/analysis/index.d.ts +53 -0
  14. package/dist/compiler/analysis/index.d.ts.map +1 -0
  15. package/dist/compiler/analysis/index.js +334 -0
  16. package/dist/compiler/analysis/index.js.map +1 -0
  17. package/dist/compiler/analysis/scope.d.ts +59 -0
  18. package/dist/compiler/analysis/scope.d.ts.map +1 -0
  19. package/dist/compiler/analysis/scope.js +360 -0
  20. package/dist/compiler/analysis/scope.js.map +1 -0
  21. package/dist/compiler/analysis/template.d.ts +40 -0
  22. package/dist/compiler/analysis/template.d.ts.map +1 -0
  23. package/dist/compiler/analysis/template.js +504 -0
  24. package/dist/compiler/analysis/template.js.map +1 -0
  25. package/dist/compiler/analysis/validate/a11y/attributes.d.ts +12 -0
  26. package/dist/compiler/analysis/validate/a11y/attributes.d.ts.map +1 -0
  27. package/dist/compiler/analysis/validate/a11y/attributes.js +197 -0
  28. package/dist/compiler/analysis/validate/a11y/attributes.js.map +1 -0
  29. package/dist/compiler/analysis/validate/a11y/axobject-query.d.ts +20 -0
  30. package/dist/compiler/analysis/validate/a11y/elements.d.ts +3 -0
  31. package/dist/compiler/analysis/validate/a11y/elements.d.ts.map +1 -0
  32. package/dist/compiler/analysis/validate/a11y/elements.js +220 -0
  33. package/dist/compiler/analysis/validate/a11y/elements.js.map +1 -0
  34. package/dist/compiler/analysis/validate/a11y/facts.d.ts +23 -0
  35. package/dist/compiler/analysis/validate/a11y/facts.d.ts.map +1 -0
  36. package/dist/compiler/analysis/validate/a11y/facts.js +91 -0
  37. package/dist/compiler/analysis/validate/a11y/facts.js.map +1 -0
  38. package/dist/compiler/analysis/validate/a11y/fuzzy.d.ts +2 -0
  39. package/dist/compiler/analysis/validate/a11y/fuzzy.d.ts.map +1 -0
  40. package/dist/compiler/analysis/validate/a11y/fuzzy.js +112 -0
  41. package/dist/compiler/analysis/validate/a11y/fuzzy.js.map +1 -0
  42. package/dist/compiler/analysis/validate/a11y/index.d.ts +8 -0
  43. package/dist/compiler/analysis/validate/a11y/index.d.ts.map +1 -0
  44. package/dist/compiler/analysis/validate/a11y/index.js +13 -0
  45. package/dist/compiler/analysis/validate/a11y/index.js.map +1 -0
  46. package/dist/compiler/analysis/validate/a11y/interactions.d.ts +3 -0
  47. package/dist/compiler/analysis/validate/a11y/interactions.d.ts.map +1 -0
  48. package/dist/compiler/analysis/validate/a11y/interactions.js +99 -0
  49. package/dist/compiler/analysis/validate/a11y/interactions.js.map +1 -0
  50. package/dist/compiler/analysis/validate/a11y/roles.d.ts +16 -0
  51. package/dist/compiler/analysis/validate/a11y/roles.d.ts.map +1 -0
  52. package/dist/compiler/analysis/validate/a11y/roles.js +135 -0
  53. package/dist/compiler/analysis/validate/a11y/roles.js.map +1 -0
  54. package/dist/compiler/analysis/validate/a11y/tables.d.ts +22 -0
  55. package/dist/compiler/analysis/validate/a11y/tables.d.ts.map +1 -0
  56. package/dist/compiler/analysis/validate/a11y/tables.js +227 -0
  57. package/dist/compiler/analysis/validate/a11y/tables.js.map +1 -0
  58. package/dist/compiler/analysis/validate/assignment.d.ts +5 -0
  59. package/dist/compiler/analysis/validate/assignment.d.ts.map +1 -0
  60. package/dist/compiler/analysis/validate/assignment.js +64 -0
  61. package/dist/compiler/analysis/validate/assignment.js.map +1 -0
  62. package/dist/compiler/analysis/validate/bindings.d.ts +6 -0
  63. package/dist/compiler/analysis/validate/bindings.d.ts.map +1 -0
  64. package/dist/compiler/analysis/validate/bindings.js +196 -0
  65. package/dist/compiler/analysis/validate/bindings.js.map +1 -0
  66. package/dist/compiler/analysis/validate/classes.d.ts +6 -0
  67. package/dist/compiler/analysis/validate/classes.d.ts.map +1 -0
  68. package/dist/compiler/analysis/validate/classes.js +100 -0
  69. package/dist/compiler/analysis/validate/classes.js.map +1 -0
  70. package/dist/compiler/analysis/validate/context.d.ts +47 -0
  71. package/dist/compiler/analysis/validate/context.d.ts.map +1 -0
  72. package/dist/compiler/analysis/validate/context.js +84 -0
  73. package/dist/compiler/analysis/validate/context.js.map +1 -0
  74. package/dist/compiler/analysis/validate/element.d.ts +10 -0
  75. package/dist/compiler/analysis/validate/element.d.ts.map +1 -0
  76. package/dist/compiler/analysis/validate/element.js +147 -0
  77. package/dist/compiler/analysis/validate/element.js.map +1 -0
  78. package/dist/compiler/analysis/validate/front.d.ts +18 -0
  79. package/dist/compiler/analysis/validate/front.d.ts.map +1 -0
  80. package/dist/compiler/analysis/validate/front.js +65 -0
  81. package/dist/compiler/analysis/validate/front.js.map +1 -0
  82. package/dist/compiler/analysis/validate/index.d.ts +19 -0
  83. package/dist/compiler/analysis/validate/index.d.ts.map +1 -0
  84. package/dist/compiler/analysis/validate/index.js +237 -0
  85. package/dist/compiler/analysis/validate/index.js.map +1 -0
  86. package/dist/compiler/analysis/validate/messages.d.ts +3 -0
  87. package/dist/compiler/analysis/validate/messages.d.ts.map +1 -0
  88. package/dist/compiler/analysis/validate/messages.js +451 -0
  89. package/dist/compiler/analysis/validate/messages.js.map +1 -0
  90. package/dist/compiler/analysis/validate/report.d.ts +29 -0
  91. package/dist/compiler/analysis/validate/report.d.ts.map +1 -0
  92. package/dist/compiler/analysis/validate/report.js +79 -0
  93. package/dist/compiler/analysis/validate/report.js.map +1 -0
  94. package/dist/compiler/analysis/validate/scope.d.ts +46 -0
  95. package/dist/compiler/analysis/validate/scope.d.ts.map +1 -0
  96. package/dist/compiler/analysis/validate/scope.js +187 -0
  97. package/dist/compiler/analysis/validate/scope.js.map +1 -0
  98. package/dist/compiler/analysis/validate/scopes.d.ts +23 -0
  99. package/dist/compiler/analysis/validate/scopes.d.ts.map +1 -0
  100. package/dist/compiler/analysis/validate/scopes.js +436 -0
  101. package/dist/compiler/analysis/validate/scopes.js.map +1 -0
  102. package/dist/compiler/analysis/validate/script.d.ts +5 -0
  103. package/dist/compiler/analysis/validate/script.d.ts.map +1 -0
  104. package/dist/compiler/analysis/validate/script.js +502 -0
  105. package/dist/compiler/analysis/validate/script.js.map +1 -0
  106. package/dist/compiler/analysis/validate/template.d.ts +13 -0
  107. package/dist/compiler/analysis/validate/template.d.ts.map +1 -0
  108. package/dist/compiler/analysis/validate/template.js +316 -0
  109. package/dist/compiler/analysis/validate/template.js.map +1 -0
  110. package/dist/compiler/analysis/whitespace.d.ts +8 -0
  111. package/dist/compiler/analysis/whitespace.d.ts.map +1 -0
  112. package/dist/compiler/analysis/whitespace.js +71 -0
  113. package/dist/compiler/analysis/whitespace.js.map +1 -0
  114. package/dist/compiler/client/asynchronous.d.ts +9 -0
  115. package/dist/compiler/client/asynchronous.d.ts.map +1 -0
  116. package/dist/compiler/client/asynchronous.js +38 -0
  117. package/dist/compiler/client/asynchronous.js.map +1 -0
  118. package/dist/compiler/client/bindings.d.ts +16 -0
  119. package/dist/compiler/client/bindings.d.ts.map +1 -0
  120. package/dist/compiler/client/bindings.js +200 -0
  121. package/dist/compiler/client/bindings.js.map +1 -0
  122. package/dist/compiler/client/blocks.d.ts +9 -0
  123. package/dist/compiler/client/blocks.d.ts.map +1 -0
  124. package/dist/compiler/client/blocks.js +147 -0
  125. package/dist/compiler/client/blocks.js.map +1 -0
  126. package/dist/compiler/client/classes.d.ts +9 -0
  127. package/dist/compiler/client/classes.d.ts.map +1 -0
  128. package/dist/compiler/client/classes.js +104 -0
  129. package/dist/compiler/client/classes.js.map +1 -0
  130. package/dist/compiler/client/component.d.ts +12 -0
  131. package/dist/compiler/client/component.d.ts.map +1 -0
  132. package/dist/compiler/client/component.js +412 -0
  133. package/dist/compiler/client/component.js.map +1 -0
  134. package/dist/compiler/client/constants.d.ts +5 -0
  135. package/dist/compiler/client/constants.d.ts.map +1 -0
  136. package/dist/compiler/client/constants.js +103 -0
  137. package/dist/compiler/client/constants.js.map +1 -0
  138. package/dist/compiler/client/custom-element.d.ts +7 -0
  139. package/dist/compiler/client/custom-element.d.ts.map +1 -0
  140. package/dist/compiler/client/custom-element.js +124 -0
  141. package/dist/compiler/client/custom-element.js.map +1 -0
  142. package/dist/compiler/client/directives.d.ts +6 -0
  143. package/dist/compiler/client/directives.d.ts.map +1 -0
  144. package/dist/compiler/client/directives.js +22 -0
  145. package/dist/compiler/client/directives.js.map +1 -0
  146. package/dist/compiler/client/dynamic.d.ts +5 -0
  147. package/dist/compiler/client/dynamic.d.ts.map +1 -0
  148. package/dist/compiler/client/dynamic.js +79 -0
  149. package/dist/compiler/client/dynamic.js.map +1 -0
  150. package/dist/compiler/client/element.d.ts +6 -0
  151. package/dist/compiler/client/element.d.ts.map +1 -0
  152. package/dist/compiler/client/element.js +492 -0
  153. package/dist/compiler/client/element.js.map +1 -0
  154. package/dist/compiler/client/events.d.ts +8 -0
  155. package/dist/compiler/client/events.d.ts.map +1 -0
  156. package/dist/compiler/client/events.js +116 -0
  157. package/dist/compiler/client/events.js.map +1 -0
  158. package/dist/compiler/client/exports.d.ts +9 -0
  159. package/dist/compiler/client/exports.d.ts.map +1 -0
  160. package/dist/compiler/client/exports.js +22 -0
  161. package/dist/compiler/client/exports.js.map +1 -0
  162. package/dist/compiler/client/external.d.ts +6 -0
  163. package/dist/compiler/client/external.d.ts.map +1 -0
  164. package/dist/compiler/client/external.js +133 -0
  165. package/dist/compiler/client/external.js.map +1 -0
  166. package/dist/compiler/client/hot.d.ts +3 -0
  167. package/dist/compiler/client/hot.d.ts.map +1 -0
  168. package/dist/compiler/client/hot.js +54 -0
  169. package/dist/compiler/client/hot.js.map +1 -0
  170. package/dist/compiler/client/index.d.ts +26 -0
  171. package/dist/compiler/client/index.d.ts.map +1 -0
  172. package/dist/compiler/client/index.js +241 -0
  173. package/dist/compiler/client/index.js.map +1 -0
  174. package/dist/compiler/client/inspect.d.ts +11 -0
  175. package/dist/compiler/client/inspect.d.ts.map +1 -0
  176. package/dist/compiler/client/inspect.js +127 -0
  177. package/dist/compiler/client/inspect.js.map +1 -0
  178. package/dist/compiler/client/loss.d.ts +14 -0
  179. package/dist/compiler/client/loss.d.ts.map +1 -0
  180. package/dist/compiler/client/loss.js +39 -0
  181. package/dist/compiler/client/loss.js.map +1 -0
  182. package/dist/compiler/client/markup.d.ts +24 -0
  183. package/dist/compiler/client/markup.d.ts.map +1 -0
  184. package/dist/compiler/client/markup.js +82 -0
  185. package/dist/compiler/client/markup.js.map +1 -0
  186. package/dist/compiler/client/meta.d.ts +11 -0
  187. package/dist/compiler/client/meta.d.ts.map +1 -0
  188. package/dist/compiler/client/meta.js +43 -0
  189. package/dist/compiler/client/meta.js.map +1 -0
  190. package/dist/compiler/client/ownership.d.ts +12 -0
  191. package/dist/compiler/client/ownership.d.ts.map +1 -0
  192. package/dist/compiler/client/ownership.js +39 -0
  193. package/dist/compiler/client/ownership.js.map +1 -0
  194. package/dist/compiler/client/parameters.d.ts +7 -0
  195. package/dist/compiler/client/parameters.d.ts.map +1 -0
  196. package/dist/compiler/client/parameters.js +31 -0
  197. package/dist/compiler/client/parameters.js.map +1 -0
  198. package/dist/compiler/client/patterns.d.ts +17 -0
  199. package/dist/compiler/client/patterns.d.ts.map +1 -0
  200. package/dist/compiler/client/patterns.js +118 -0
  201. package/dist/compiler/client/patterns.js.map +1 -0
  202. package/dist/compiler/client/script.d.ts +42 -0
  203. package/dist/compiler/client/script.d.ts.map +1 -0
  204. package/dist/compiler/client/script.js +476 -0
  205. package/dist/compiler/client/script.js.map +1 -0
  206. package/dist/compiler/client/special.d.ts +7 -0
  207. package/dist/compiler/client/special.d.ts.map +1 -0
  208. package/dist/compiler/client/special.js +148 -0
  209. package/dist/compiler/client/special.js.map +1 -0
  210. package/dist/compiler/client/template.d.ts +59 -0
  211. package/dist/compiler/client/template.d.ts.map +1 -0
  212. package/dist/compiler/client/template.js +380 -0
  213. package/dist/compiler/client/template.js.map +1 -0
  214. package/dist/compiler/client/transitions.d.ts +6 -0
  215. package/dist/compiler/client/transitions.d.ts.map +1 -0
  216. package/dist/compiler/client/transitions.js +25 -0
  217. package/dist/compiler/client/transitions.js.map +1 -0
  218. package/dist/compiler/client/values.d.ts +8 -0
  219. package/dist/compiler/client/values.d.ts.map +1 -0
  220. package/dist/compiler/client/values.js +46 -0
  221. package/dist/compiler/client/values.js.map +1 -0
  222. package/dist/compiler/css/analyze.d.ts +12 -0
  223. package/dist/compiler/css/analyze.d.ts.map +1 -0
  224. package/dist/compiler/css/analyze.js +252 -0
  225. package/dist/compiler/css/analyze.js.map +1 -0
  226. package/dist/compiler/css/attributes.d.ts +3 -0
  227. package/dist/compiler/css/attributes.d.ts.map +1 -0
  228. package/dist/compiler/css/attributes.js +207 -0
  229. package/dist/compiler/css/attributes.js.map +1 -0
  230. package/dist/compiler/css/hash.d.ts +2 -0
  231. package/dist/compiler/css/hash.d.ts.map +1 -0
  232. package/dist/compiler/css/hash.js +2 -0
  233. package/dist/compiler/css/hash.js.map +1 -0
  234. package/dist/compiler/css/index.d.ts +42 -0
  235. package/dist/compiler/css/index.d.ts.map +1 -0
  236. package/dist/compiler/css/index.js +109 -0
  237. package/dist/compiler/css/index.js.map +1 -0
  238. package/dist/compiler/css/marks.d.ts +39 -0
  239. package/dist/compiler/css/marks.d.ts.map +1 -0
  240. package/dist/compiler/css/marks.js +90 -0
  241. package/dist/compiler/css/marks.js.map +1 -0
  242. package/dist/compiler/css/prune.d.ts +10 -0
  243. package/dist/compiler/css/prune.d.ts.map +1 -0
  244. package/dist/compiler/css/prune.js +418 -0
  245. package/dist/compiler/css/prune.js.map +1 -0
  246. package/dist/compiler/css/relations.d.ts +25 -0
  247. package/dist/compiler/css/relations.d.ts.map +1 -0
  248. package/dist/compiler/css/relations.js +262 -0
  249. package/dist/compiler/css/relations.js.map +1 -0
  250. package/dist/compiler/css/render.d.ts +22 -0
  251. package/dist/compiler/css/render.d.ts.map +1 -0
  252. package/dist/compiler/css/render.js +389 -0
  253. package/dist/compiler/css/render.js.map +1 -0
  254. package/dist/compiler/css/template.d.ts +26 -0
  255. package/dist/compiler/css/template.d.ts.map +1 -0
  256. package/dist/compiler/css/template.js +271 -0
  257. package/dist/compiler/css/template.js.map +1 -0
  258. package/dist/compiler/ir/estree.d.ts +29 -0
  259. package/dist/compiler/ir/estree.d.ts.map +1 -0
  260. package/dist/compiler/ir/estree.js +205 -0
  261. package/dist/compiler/ir/estree.js.map +1 -0
  262. package/dist/compiler/ir/maps.d.ts +11 -0
  263. package/dist/compiler/ir/maps.d.ts.map +1 -0
  264. package/dist/compiler/ir/maps.js +45 -0
  265. package/dist/compiler/ir/maps.js.map +1 -0
  266. package/dist/compiler/ir/nodes.d.ts +197 -0
  267. package/dist/compiler/ir/nodes.d.ts.map +1 -0
  268. package/dist/compiler/ir/nodes.js +1 -0
  269. package/dist/compiler/ir/nodes.js.map +1 -0
  270. package/dist/compiler/ir/port.d.ts +55 -0
  271. package/dist/compiler/ir/port.d.ts.map +1 -0
  272. package/dist/compiler/ir/port.js +9 -0
  273. package/dist/compiler/ir/port.js.map +1 -0
  274. package/dist/compiler/ir/runtime.d.ts +16 -0
  275. package/dist/compiler/ir/runtime.d.ts.map +1 -0
  276. package/dist/compiler/ir/runtime.js +1 -0
  277. package/dist/compiler/ir/runtime.js.map +1 -0
  278. package/dist/compiler/ir/script.d.ts +6 -0
  279. package/dist/compiler/ir/script.d.ts.map +1 -0
  280. package/dist/compiler/ir/script.js +33 -0
  281. package/dist/compiler/ir/script.js.map +1 -0
  282. package/dist/compiler/ir/style.d.ts +92 -0
  283. package/dist/compiler/ir/style.d.ts.map +1 -0
  284. package/dist/compiler/ir/style.js +1 -0
  285. package/dist/compiler/ir/style.js.map +1 -0
  286. package/dist/compiler/server/asynchronous.d.ts +8 -0
  287. package/dist/compiler/server/asynchronous.d.ts.map +1 -0
  288. package/dist/compiler/server/asynchronous.js +44 -0
  289. package/dist/compiler/server/asynchronous.js.map +1 -0
  290. package/dist/compiler/server/bindings.d.ts +15 -0
  291. package/dist/compiler/server/bindings.d.ts.map +1 -0
  292. package/dist/compiler/server/bindings.js +80 -0
  293. package/dist/compiler/server/bindings.js.map +1 -0
  294. package/dist/compiler/server/blocks.d.ts +7 -0
  295. package/dist/compiler/server/blocks.d.ts.map +1 -0
  296. package/dist/compiler/server/blocks.js +136 -0
  297. package/dist/compiler/server/blocks.js.map +1 -0
  298. package/dist/compiler/server/classes.d.ts +11 -0
  299. package/dist/compiler/server/classes.d.ts.map +1 -0
  300. package/dist/compiler/server/classes.js +100 -0
  301. package/dist/compiler/server/classes.js.map +1 -0
  302. package/dist/compiler/server/component.d.ts +11 -0
  303. package/dist/compiler/server/component.d.ts.map +1 -0
  304. package/dist/compiler/server/component.js +321 -0
  305. package/dist/compiler/server/component.js.map +1 -0
  306. package/dist/compiler/server/external.d.ts +6 -0
  307. package/dist/compiler/server/external.d.ts.map +1 -0
  308. package/dist/compiler/server/external.js +130 -0
  309. package/dist/compiler/server/external.js.map +1 -0
  310. package/dist/compiler/server/index.d.ts +20 -0
  311. package/dist/compiler/server/index.d.ts.map +1 -0
  312. package/dist/compiler/server/index.js +161 -0
  313. package/dist/compiler/server/index.js.map +1 -0
  314. package/dist/compiler/server/placement.d.ts +5 -0
  315. package/dist/compiler/server/placement.d.ts.map +1 -0
  316. package/dist/compiler/server/placement.js +37 -0
  317. package/dist/compiler/server/placement.js.map +1 -0
  318. package/dist/compiler/server/script.d.ts +29 -0
  319. package/dist/compiler/server/script.d.ts.map +1 -0
  320. package/dist/compiler/server/script.js +404 -0
  321. package/dist/compiler/server/script.js.map +1 -0
  322. package/dist/compiler/server/slot.d.ts +5 -0
  323. package/dist/compiler/server/slot.d.ts.map +1 -0
  324. package/dist/compiler/server/slot.js +38 -0
  325. package/dist/compiler/server/slot.js.map +1 -0
  326. package/dist/compiler/server/special.d.ts +5 -0
  327. package/dist/compiler/server/special.d.ts.map +1 -0
  328. package/dist/compiler/server/special.js +60 -0
  329. package/dist/compiler/server/special.js.map +1 -0
  330. package/dist/compiler/server/template.d.ts +28 -0
  331. package/dist/compiler/server/template.d.ts.map +1 -0
  332. package/dist/compiler/server/template.js +475 -0
  333. package/dist/compiler/server/template.js.map +1 -0
  334. package/dist/entries/action.d.ts +9 -0
  335. package/dist/entries/action.d.ts.map +1 -0
  336. package/dist/entries/action.js +1 -0
  337. package/dist/entries/action.js.map +1 -0
  338. package/dist/entries/animate.d.ts +4 -0
  339. package/dist/entries/animate.d.ts.map +1 -0
  340. package/dist/entries/animate.js +2 -0
  341. package/dist/entries/animate.js.map +1 -0
  342. package/dist/entries/attachments.d.ts +6 -0
  343. package/dist/entries/attachments.d.ts.map +1 -0
  344. package/dist/entries/attachments.js +23 -0
  345. package/dist/entries/attachments.js.map +1 -0
  346. package/dist/entries/compiler.d.ts +61 -0
  347. package/dist/entries/compiler.d.ts.map +1 -0
  348. package/dist/entries/compiler.js +97 -0
  349. package/dist/entries/compiler.js.map +1 -0
  350. package/dist/entries/easing.d.ts +2 -0
  351. package/dist/entries/easing.d.ts.map +1 -0
  352. package/dist/entries/easing.js +2 -0
  353. package/dist/entries/easing.js.map +1 -0
  354. package/dist/entries/events.d.ts +2 -0
  355. package/dist/entries/events.d.ts.map +1 -0
  356. package/dist/entries/events.js +5 -0
  357. package/dist/entries/events.js.map +1 -0
  358. package/dist/entries/index-server.d.ts +37 -0
  359. package/dist/entries/index-server.d.ts.map +1 -0
  360. package/dist/entries/index-server.js +62 -0
  361. package/dist/entries/index-server.js.map +1 -0
  362. package/dist/entries/index.d.ts +29 -0
  363. package/dist/entries/index.d.ts.map +1 -0
  364. package/dist/entries/index.js +19 -0
  365. package/dist/entries/index.js.map +1 -0
  366. package/dist/entries/internal/client.d.ts +54 -0
  367. package/dist/entries/internal/client.d.ts.map +1 -0
  368. package/dist/entries/internal/client.js +50 -0
  369. package/dist/entries/internal/client.js.map +1 -0
  370. package/dist/entries/internal/server.d.ts +18 -0
  371. package/dist/entries/internal/server.d.ts.map +1 -0
  372. package/dist/entries/internal/server.js +16 -0
  373. package/dist/entries/internal/server.js.map +1 -0
  374. package/dist/entries/motion-server.d.ts +6 -0
  375. package/dist/entries/motion-server.d.ts.map +1 -0
  376. package/dist/entries/motion-server.js +4 -0
  377. package/dist/entries/motion-server.js.map +1 -0
  378. package/dist/entries/motion.d.ts +6 -0
  379. package/dist/entries/motion.d.ts.map +1 -0
  380. package/dist/entries/motion.js +4 -0
  381. package/dist/entries/motion.js.map +1 -0
  382. package/dist/entries/reactivity-server.d.ts +17 -0
  383. package/dist/entries/reactivity-server.d.ts.map +1 -0
  384. package/dist/entries/reactivity-server.js +7 -0
  385. package/dist/entries/reactivity-server.js.map +1 -0
  386. package/dist/entries/reactivity.d.ts +8 -0
  387. package/dist/entries/reactivity.d.ts.map +1 -0
  388. package/dist/entries/reactivity.js +8 -0
  389. package/dist/entries/reactivity.js.map +1 -0
  390. package/dist/entries/server.d.ts +5 -0
  391. package/dist/entries/server.d.ts.map +1 -0
  392. package/dist/entries/server.js +2 -0
  393. package/dist/entries/server.js.map +1 -0
  394. package/dist/entries/transition.d.ts +5 -0
  395. package/dist/entries/transition.d.ts.map +1 -0
  396. package/dist/entries/transition.js +2 -0
  397. package/dist/entries/transition.js.map +1 -0
  398. package/dist/entries/window-server.d.ts +2 -0
  399. package/dist/entries/window-server.d.ts.map +1 -0
  400. package/dist/entries/window-server.js +2 -0
  401. package/dist/entries/window-server.js.map +1 -0
  402. package/dist/entries/window.d.ts +2 -0
  403. package/dist/entries/window.d.ts.map +1 -0
  404. package/dist/entries/window.js +2 -0
  405. package/dist/entries/window.js.map +1 -0
  406. package/dist/runtime/classes/date.d.ts +5 -0
  407. package/dist/runtime/classes/date.d.ts.map +1 -0
  408. package/dist/runtime/classes/date.js +58 -0
  409. package/dist/runtime/classes/date.js.map +1 -0
  410. package/dist/runtime/classes/frames.d.ts +6 -0
  411. package/dist/runtime/classes/frames.d.ts.map +1 -0
  412. package/dist/runtime/classes/frames.js +28 -0
  413. package/dist/runtime/classes/frames.js.map +1 -0
  414. package/dist/runtime/classes/local.d.ts +3 -0
  415. package/dist/runtime/classes/local.d.ts.map +1 -0
  416. package/dist/runtime/classes/local.js +6 -0
  417. package/dist/runtime/classes/local.js.map +1 -0
  418. package/dist/runtime/classes/map.d.ts +18 -0
  419. package/dist/runtime/classes/map.d.ts.map +1 -0
  420. package/dist/runtime/classes/map.js +126 -0
  421. package/dist/runtime/classes/map.js.map +1 -0
  422. package/dist/runtime/classes/media.d.ts +6 -0
  423. package/dist/runtime/classes/media.d.ts.map +1 -0
  424. package/dist/runtime/classes/media.js +22 -0
  425. package/dist/runtime/classes/media.js.map +1 -0
  426. package/dist/runtime/classes/motion.d.ts +3 -0
  427. package/dist/runtime/classes/motion.d.ts.map +1 -0
  428. package/dist/runtime/classes/motion.js +3 -0
  429. package/dist/runtime/classes/motion.js.map +1 -0
  430. package/dist/runtime/classes/search.d.ts +23 -0
  431. package/dist/runtime/classes/search.d.ts.map +1 -0
  432. package/dist/runtime/classes/search.js +115 -0
  433. package/dist/runtime/classes/search.js.map +1 -0
  434. package/dist/runtime/classes/server.d.ts +8 -0
  435. package/dist/runtime/classes/server.d.ts.map +1 -0
  436. package/dist/runtime/classes/server.js +13 -0
  437. package/dist/runtime/classes/server.js.map +1 -0
  438. package/dist/runtime/classes/set.d.ts +28 -0
  439. package/dist/runtime/classes/set.d.ts.map +1 -0
  440. package/dist/runtime/classes/set.js +113 -0
  441. package/dist/runtime/classes/set.js.map +1 -0
  442. package/dist/runtime/classes/spring.d.ts +25 -0
  443. package/dist/runtime/classes/spring.d.ts.map +1 -0
  444. package/dist/runtime/classes/spring.js +154 -0
  445. package/dist/runtime/classes/spring.js.map +1 -0
  446. package/dist/runtime/classes/subscriber.d.ts +10 -0
  447. package/dist/runtime/classes/subscriber.d.ts.map +1 -0
  448. package/dist/runtime/classes/subscriber.js +46 -0
  449. package/dist/runtime/classes/subscriber.js.map +1 -0
  450. package/dist/runtime/classes/tween.d.ts +17 -0
  451. package/dist/runtime/classes/tween.d.ts.map +1 -0
  452. package/dist/runtime/classes/tween.js +112 -0
  453. package/dist/runtime/classes/tween.js.map +1 -0
  454. package/dist/runtime/classes/url.d.ts +30 -0
  455. package/dist/runtime/classes/url.d.ts.map +1 -0
  456. package/dist/runtime/classes/url.js +127 -0
  457. package/dist/runtime/classes/url.js.map +1 -0
  458. package/dist/runtime/classes/window-server.d.ts +14 -0
  459. package/dist/runtime/classes/window-server.d.ts.map +1 -0
  460. package/dist/runtime/classes/window-server.js +14 -0
  461. package/dist/runtime/classes/window-server.js.map +1 -0
  462. package/dist/runtime/classes/window.d.ts +18 -0
  463. package/dist/runtime/classes/window.d.ts.map +1 -0
  464. package/dist/runtime/classes/window.js +54 -0
  465. package/dist/runtime/classes/window.js.map +1 -0
  466. package/dist/runtime/dom/async.d.ts +21 -0
  467. package/dist/runtime/dom/async.d.ts.map +1 -0
  468. package/dist/runtime/dom/async.js +179 -0
  469. package/dist/runtime/dom/async.js.map +1 -0
  470. package/dist/runtime/dom/attachments.d.ts +18 -0
  471. package/dist/runtime/dom/attachments.d.ts.map +1 -0
  472. package/dist/runtime/dom/attachments.js +134 -0
  473. package/dist/runtime/dom/attachments.js.map +1 -0
  474. package/dist/runtime/dom/attributes.d.ts +21 -0
  475. package/dist/runtime/dom/attributes.d.ts.map +1 -0
  476. package/dist/runtime/dom/attributes.js +450 -0
  477. package/dist/runtime/dom/attributes.js.map +1 -0
  478. package/dist/runtime/dom/await.d.ts +5 -0
  479. package/dist/runtime/dom/await.d.ts.map +1 -0
  480. package/dist/runtime/dom/await.js +95 -0
  481. package/dist/runtime/dom/await.js.map +1 -0
  482. package/dist/runtime/dom/bindings.d.ts +21 -0
  483. package/dist/runtime/dom/bindings.d.ts.map +1 -0
  484. package/dist/runtime/dom/bindings.js +299 -0
  485. package/dist/runtime/dom/bindings.js.map +1 -0
  486. package/dist/runtime/dom/blocks.d.ts +4 -0
  487. package/dist/runtime/dom/blocks.d.ts.map +1 -0
  488. package/dist/runtime/dom/blocks.js +32 -0
  489. package/dist/runtime/dom/blocks.js.map +1 -0
  490. package/dist/runtime/dom/boundary.d.ts +14 -0
  491. package/dist/runtime/dom/boundary.d.ts.map +1 -0
  492. package/dist/runtime/dom/boundary.js +313 -0
  493. package/dist/runtime/dom/boundary.js.map +1 -0
  494. package/dist/runtime/dom/branches.d.ts +14 -0
  495. package/dist/runtime/dom/branches.d.ts.map +1 -0
  496. package/dist/runtime/dom/branches.js +210 -0
  497. package/dist/runtime/dom/branches.js.map +1 -0
  498. package/dist/runtime/dom/context.d.ts +9 -0
  499. package/dist/runtime/dom/context.d.ts.map +1 -0
  500. package/dist/runtime/dom/context.js +78 -0
  501. package/dist/runtime/dom/context.js.map +1 -0
  502. package/dist/runtime/dom/custom-element.d.ts +16 -0
  503. package/dist/runtime/dom/custom-element.d.ts.map +1 -0
  504. package/dist/runtime/dom/custom-element.js +198 -0
  505. package/dist/runtime/dom/custom-element.js.map +1 -0
  506. package/dist/runtime/dom/data.d.ts +11 -0
  507. package/dist/runtime/dom/data.d.ts.map +1 -0
  508. package/dist/runtime/dom/data.js +114 -0
  509. package/dist/runtime/dom/data.js.map +1 -0
  510. package/dist/runtime/dom/element.d.ts +3 -0
  511. package/dist/runtime/dom/element.d.ts.map +1 -0
  512. package/dist/runtime/dom/element.js +81 -0
  513. package/dist/runtime/dom/element.js.map +1 -0
  514. package/dist/runtime/dom/events.d.ts +9 -0
  515. package/dist/runtime/dom/events.d.ts.map +1 -0
  516. package/dist/runtime/dom/events.js +211 -0
  517. package/dist/runtime/dom/events.js.map +1 -0
  518. package/dist/runtime/dom/head.d.ts +4 -0
  519. package/dist/runtime/dom/head.d.ts.map +1 -0
  520. package/dist/runtime/dom/head.js +54 -0
  521. package/dist/runtime/dom/head.js.map +1 -0
  522. package/dist/runtime/dom/hot.d.ts +15 -0
  523. package/dist/runtime/dom/hot.d.ts.map +1 -0
  524. package/dist/runtime/dom/hot.js +38 -0
  525. package/dist/runtime/dom/hot.js.map +1 -0
  526. package/dist/runtime/dom/html.d.ts +7 -0
  527. package/dist/runtime/dom/html.d.ts.map +1 -0
  528. package/dist/runtime/dom/html.js +91 -0
  529. package/dist/runtime/dom/html.js.map +1 -0
  530. package/dist/runtime/dom/hydration.d.ts +16 -0
  531. package/dist/runtime/dom/hydration.d.ts.map +1 -0
  532. package/dist/runtime/dom/hydration.js +92 -0
  533. package/dist/runtime/dom/hydration.js.map +1 -0
  534. package/dist/runtime/dom/inspect.d.ts +2 -0
  535. package/dist/runtime/dom/inspect.d.ts.map +1 -0
  536. package/dist/runtime/dom/inspect.js +71 -0
  537. package/dist/runtime/dom/inspect.js.map +1 -0
  538. package/dist/runtime/dom/list.d.ts +7 -0
  539. package/dist/runtime/dom/list.d.ts.map +1 -0
  540. package/dist/runtime/dom/list.js +388 -0
  541. package/dist/runtime/dom/list.js.map +1 -0
  542. package/dist/runtime/dom/media.d.ts +26 -0
  543. package/dist/runtime/dom/media.d.ts.map +1 -0
  544. package/dist/runtime/dom/media.js +126 -0
  545. package/dist/runtime/dom/media.js.map +1 -0
  546. package/dist/runtime/dom/meta.d.ts +16 -0
  547. package/dist/runtime/dom/meta.d.ts.map +1 -0
  548. package/dist/runtime/dom/meta.js +48 -0
  549. package/dist/runtime/dom/meta.js.map +1 -0
  550. package/dist/runtime/dom/mount.d.ts +23 -0
  551. package/dist/runtime/dom/mount.d.ts.map +1 -0
  552. package/dist/runtime/dom/mount.js +134 -0
  553. package/dist/runtime/dom/mount.js.map +1 -0
  554. package/dist/runtime/dom/ownership.d.ts +6 -0
  555. package/dist/runtime/dom/ownership.d.ts.map +1 -0
  556. package/dist/runtime/dom/ownership.js +32 -0
  557. package/dist/runtime/dom/ownership.js.map +1 -0
  558. package/dist/runtime/dom/props.d.ts +20 -0
  559. package/dist/runtime/dom/props.d.ts.map +1 -0
  560. package/dist/runtime/dom/props.js +193 -0
  561. package/dist/runtime/dom/props.js.map +1 -0
  562. package/dist/runtime/dom/range.d.ts +16 -0
  563. package/dist/runtime/dom/range.d.ts.map +1 -0
  564. package/dist/runtime/dom/range.js +120 -0
  565. package/dist/runtime/dom/range.js.map +1 -0
  566. package/dist/runtime/dom/reset.d.ts +4 -0
  567. package/dist/runtime/dom/reset.d.ts.map +1 -0
  568. package/dist/runtime/dom/reset.js +39 -0
  569. package/dist/runtime/dom/reset.js.map +1 -0
  570. package/dist/runtime/dom/select.d.ts +8 -0
  571. package/dist/runtime/dom/select.d.ts.map +1 -0
  572. package/dist/runtime/dom/select.js +175 -0
  573. package/dist/runtime/dom/select.js.map +1 -0
  574. package/dist/runtime/dom/snippet.d.ts +7 -0
  575. package/dist/runtime/dom/snippet.d.ts.map +1 -0
  576. package/dist/runtime/dom/snippet.js +49 -0
  577. package/dist/runtime/dom/snippet.js.map +1 -0
  578. package/dist/runtime/dom/styles.d.ts +6 -0
  579. package/dist/runtime/dom/styles.d.ts.map +1 -0
  580. package/dist/runtime/dom/styles.js +22 -0
  581. package/dist/runtime/dom/styles.js.map +1 -0
  582. package/dist/runtime/dom/swap.d.ts +10 -0
  583. package/dist/runtime/dom/swap.d.ts.map +1 -0
  584. package/dist/runtime/dom/swap.js +84 -0
  585. package/dist/runtime/dom/swap.js.map +1 -0
  586. package/dist/runtime/dom/targets.d.ts +9 -0
  587. package/dist/runtime/dom/targets.d.ts.map +1 -0
  588. package/dist/runtime/dom/targets.js +84 -0
  589. package/dist/runtime/dom/targets.js.map +1 -0
  590. package/dist/runtime/dom/template.d.ts +19 -0
  591. package/dist/runtime/dom/template.d.ts.map +1 -0
  592. package/dist/runtime/dom/template.js +269 -0
  593. package/dist/runtime/dom/template.js.map +1 -0
  594. package/dist/runtime/dom/trusted.d.ts +4 -0
  595. package/dist/runtime/dom/trusted.d.ts.map +1 -0
  596. package/dist/runtime/dom/trusted.js +47 -0
  597. package/dist/runtime/dom/trusted.js.map +1 -0
  598. package/dist/runtime/dom/values.d.ts +4 -0
  599. package/dist/runtime/dom/values.d.ts.map +1 -0
  600. package/dist/runtime/dom/values.js +31 -0
  601. package/dist/runtime/dom/values.js.map +1 -0
  602. package/dist/runtime/reactivity/abort.d.ts +8 -0
  603. package/dist/runtime/reactivity/abort.d.ts.map +1 -0
  604. package/dist/runtime/reactivity/abort.js +50 -0
  605. package/dist/runtime/reactivity/abort.js.map +1 -0
  606. package/dist/runtime/reactivity/async.d.ts +13 -0
  607. package/dist/runtime/reactivity/async.d.ts.map +1 -0
  608. package/dist/runtime/reactivity/async.js +285 -0
  609. package/dist/runtime/reactivity/async.js.map +1 -0
  610. package/dist/runtime/reactivity/batch.d.ts +84 -0
  611. package/dist/runtime/reactivity/batch.d.ts.map +1 -0
  612. package/dist/runtime/reactivity/batch.js +359 -0
  613. package/dist/runtime/reactivity/batch.js.map +1 -0
  614. package/dist/runtime/reactivity/carried.d.ts +15 -0
  615. package/dist/runtime/reactivity/carried.d.ts.map +1 -0
  616. package/dist/runtime/reactivity/carried.js +49 -0
  617. package/dist/runtime/reactivity/carried.js.map +1 -0
  618. package/dist/runtime/reactivity/collector.d.ts +4 -0
  619. package/dist/runtime/reactivity/collector.d.ts.map +1 -0
  620. package/dist/runtime/reactivity/collector.js +19 -0
  621. package/dist/runtime/reactivity/collector.js.map +1 -0
  622. package/dist/runtime/reactivity/drafts.d.ts +25 -0
  623. package/dist/runtime/reactivity/drafts.d.ts.map +1 -0
  624. package/dist/runtime/reactivity/drafts.js +125 -0
  625. package/dist/runtime/reactivity/drafts.js.map +1 -0
  626. package/dist/runtime/reactivity/eager.d.ts +5 -0
  627. package/dist/runtime/reactivity/eager.d.ts.map +1 -0
  628. package/dist/runtime/reactivity/eager.js +45 -0
  629. package/dist/runtime/reactivity/eager.js.map +1 -0
  630. package/dist/runtime/reactivity/edges.d.ts +14 -0
  631. package/dist/runtime/reactivity/edges.d.ts.map +1 -0
  632. package/dist/runtime/reactivity/edges.js +207 -0
  633. package/dist/runtime/reactivity/edges.js.map +1 -0
  634. package/dist/runtime/reactivity/effects.d.ts +41 -0
  635. package/dist/runtime/reactivity/effects.d.ts.map +1 -0
  636. package/dist/runtime/reactivity/effects.js +618 -0
  637. package/dist/runtime/reactivity/effects.js.map +1 -0
  638. package/dist/runtime/reactivity/errors.d.ts +12 -0
  639. package/dist/runtime/reactivity/errors.d.ts.map +1 -0
  640. package/dist/runtime/reactivity/errors.js +38 -0
  641. package/dist/runtime/reactivity/errors.js.map +1 -0
  642. package/dist/runtime/reactivity/external.d.ts +3 -0
  643. package/dist/runtime/reactivity/external.d.ts.map +1 -0
  644. package/dist/runtime/reactivity/external.js +48 -0
  645. package/dist/runtime/reactivity/external.js.map +1 -0
  646. package/dist/runtime/reactivity/fork.d.ts +6 -0
  647. package/dist/runtime/reactivity/fork.d.ts.map +1 -0
  648. package/dist/runtime/reactivity/fork.js +64 -0
  649. package/dist/runtime/reactivity/fork.js.map +1 -0
  650. package/dist/runtime/reactivity/front.d.ts +5 -0
  651. package/dist/runtime/reactivity/front.d.ts.map +1 -0
  652. package/dist/runtime/reactivity/front.js +16 -0
  653. package/dist/runtime/reactivity/front.js.map +1 -0
  654. package/dist/runtime/reactivity/graph.d.ts +86 -0
  655. package/dist/runtime/reactivity/graph.d.ts.map +1 -0
  656. package/dist/runtime/reactivity/graph.js +38 -0
  657. package/dist/runtime/reactivity/graph.js.map +1 -0
  658. package/dist/runtime/reactivity/handlers.d.ts +6 -0
  659. package/dist/runtime/reactivity/handlers.d.ts.map +1 -0
  660. package/dist/runtime/reactivity/handlers.js +48 -0
  661. package/dist/runtime/reactivity/handlers.js.map +1 -0
  662. package/dist/runtime/reactivity/held.d.ts +12 -0
  663. package/dist/runtime/reactivity/held.d.ts.map +1 -0
  664. package/dist/runtime/reactivity/held.js +343 -0
  665. package/dist/runtime/reactivity/held.js.map +1 -0
  666. package/dist/runtime/reactivity/history.d.ts +25 -0
  667. package/dist/runtime/reactivity/history.d.ts.map +1 -0
  668. package/dist/runtime/reactivity/history.js +88 -0
  669. package/dist/runtime/reactivity/history.js.map +1 -0
  670. package/dist/runtime/reactivity/latest.d.ts +2 -0
  671. package/dist/runtime/reactivity/latest.d.ts.map +1 -0
  672. package/dist/runtime/reactivity/latest.js +42 -0
  673. package/dist/runtime/reactivity/latest.js.map +1 -0
  674. package/dist/runtime/reactivity/leaving.d.ts +30 -0
  675. package/dist/runtime/reactivity/leaving.d.ts.map +1 -0
  676. package/dist/runtime/reactivity/leaving.js +278 -0
  677. package/dist/runtime/reactivity/leaving.js.map +1 -0
  678. package/dist/runtime/reactivity/loss.d.ts +5 -0
  679. package/dist/runtime/reactivity/loss.d.ts.map +1 -0
  680. package/dist/runtime/reactivity/loss.js +70 -0
  681. package/dist/runtime/reactivity/loss.js.map +1 -0
  682. package/dist/runtime/reactivity/outgoing.d.ts +11 -0
  683. package/dist/runtime/reactivity/outgoing.d.ts.map +1 -0
  684. package/dist/runtime/reactivity/outgoing.js +37 -0
  685. package/dist/runtime/reactivity/outgoing.js.map +1 -0
  686. package/dist/runtime/reactivity/owners.d.ts +33 -0
  687. package/dist/runtime/reactivity/owners.d.ts.map +1 -0
  688. package/dist/runtime/reactivity/owners.js +222 -0
  689. package/dist/runtime/reactivity/owners.js.map +1 -0
  690. package/dist/runtime/reactivity/past.d.ts +9 -0
  691. package/dist/runtime/reactivity/past.d.ts.map +1 -0
  692. package/dist/runtime/reactivity/past.js +57 -0
  693. package/dist/runtime/reactivity/past.js.map +1 -0
  694. package/dist/runtime/reactivity/provenance.d.ts +34 -0
  695. package/dist/runtime/reactivity/provenance.d.ts.map +1 -0
  696. package/dist/runtime/reactivity/provenance.js +163 -0
  697. package/dist/runtime/reactivity/provenance.js.map +1 -0
  698. package/dist/runtime/reactivity/proxy.d.ts +6 -0
  699. package/dist/runtime/reactivity/proxy.d.ts.map +1 -0
  700. package/dist/runtime/reactivity/proxy.js +219 -0
  701. package/dist/runtime/reactivity/proxy.js.map +1 -0
  702. package/dist/runtime/reactivity/public.d.ts +16 -0
  703. package/dist/runtime/reactivity/public.d.ts.map +1 -0
  704. package/dist/runtime/reactivity/public.js +28 -0
  705. package/dist/runtime/reactivity/public.js.map +1 -0
  706. package/dist/runtime/reactivity/reads.d.ts +7 -0
  707. package/dist/runtime/reactivity/reads.d.ts.map +1 -0
  708. package/dist/runtime/reactivity/reads.js +383 -0
  709. package/dist/runtime/reactivity/reads.js.map +1 -0
  710. package/dist/runtime/reactivity/scheduler.d.ts +8 -0
  711. package/dist/runtime/reactivity/scheduler.d.ts.map +1 -0
  712. package/dist/runtime/reactivity/scheduler.js +406 -0
  713. package/dist/runtime/reactivity/scheduler.js.map +1 -0
  714. package/dist/runtime/reactivity/settle.d.ts +6 -0
  715. package/dist/runtime/reactivity/settle.d.ts.map +1 -0
  716. package/dist/runtime/reactivity/settle.js +76 -0
  717. package/dist/runtime/reactivity/settle.js.map +1 -0
  718. package/dist/runtime/reactivity/sources.d.ts +17 -0
  719. package/dist/runtime/reactivity/sources.d.ts.map +1 -0
  720. package/dist/runtime/reactivity/sources.js +124 -0
  721. package/dist/runtime/reactivity/sources.js.map +1 -0
  722. package/dist/runtime/reactivity/tallies.d.ts +12 -0
  723. package/dist/runtime/reactivity/tallies.d.ts.map +1 -0
  724. package/dist/runtime/reactivity/tallies.js +25 -0
  725. package/dist/runtime/reactivity/tallies.js.map +1 -0
  726. package/dist/runtime/reactivity/tasks.d.ts +3 -0
  727. package/dist/runtime/reactivity/tasks.d.ts.map +1 -0
  728. package/dist/runtime/reactivity/tasks.js +35 -0
  729. package/dist/runtime/reactivity/tasks.js.map +1 -0
  730. package/dist/runtime/reactivity/trace.d.ts +5 -0
  731. package/dist/runtime/reactivity/trace.d.ts.map +1 -0
  732. package/dist/runtime/reactivity/trace.js +109 -0
  733. package/dist/runtime/reactivity/trace.js.map +1 -0
  734. package/dist/runtime/reactivity/tracking.d.ts +62 -0
  735. package/dist/runtime/reactivity/tracking.d.ts.map +1 -0
  736. package/dist/runtime/reactivity/tracking.js +520 -0
  737. package/dist/runtime/reactivity/tracking.js.map +1 -0
  738. package/dist/runtime/reactivity/units.d.ts +12 -0
  739. package/dist/runtime/reactivity/units.d.ts.map +1 -0
  740. package/dist/runtime/reactivity/units.js +112 -0
  741. package/dist/runtime/reactivity/units.js.map +1 -0
  742. package/dist/runtime/reactivity/views.d.ts +12 -0
  743. package/dist/runtime/reactivity/views.d.ts.map +1 -0
  744. package/dist/runtime/reactivity/views.js +105 -0
  745. package/dist/runtime/reactivity/views.js.map +1 -0
  746. package/dist/runtime/server/attributes.d.ts +9 -0
  747. package/dist/runtime/server/attributes.d.ts.map +1 -0
  748. package/dist/runtime/server/attributes.js +73 -0
  749. package/dist/runtime/server/attributes.js.map +1 -0
  750. package/dist/runtime/server/cells.d.ts +9 -0
  751. package/dist/runtime/server/cells.d.ts.map +1 -0
  752. package/dist/runtime/server/cells.js +120 -0
  753. package/dist/runtime/server/cells.js.map +1 -0
  754. package/dist/runtime/server/context.d.ts +51 -0
  755. package/dist/runtime/server/context.d.ts.map +1 -0
  756. package/dist/runtime/server/context.js +260 -0
  757. package/dist/runtime/server/context.js.map +1 -0
  758. package/dist/runtime/server/derived.d.ts +5 -0
  759. package/dist/runtime/server/derived.d.ts.map +1 -0
  760. package/dist/runtime/server/derived.js +30 -0
  761. package/dist/runtime/server/derived.js.map +1 -0
  762. package/dist/runtime/server/external.d.ts +3 -0
  763. package/dist/runtime/server/external.d.ts.map +1 -0
  764. package/dist/runtime/server/external.js +53 -0
  765. package/dist/runtime/server/external.js.map +1 -0
  766. package/dist/runtime/server/hydration.d.ts +26 -0
  767. package/dist/runtime/server/hydration.d.ts.map +1 -0
  768. package/dist/runtime/server/hydration.js +187 -0
  769. package/dist/runtime/server/hydration.js.map +1 -0
  770. package/dist/runtime/server/placement.d.ts +9 -0
  771. package/dist/runtime/server/placement.d.ts.map +1 -0
  772. package/dist/runtime/server/placement.js +35 -0
  773. package/dist/runtime/server/placement.js.map +1 -0
  774. package/dist/runtime/server/render.d.ts +89 -0
  775. package/dist/runtime/server/render.d.ts.map +1 -0
  776. package/dist/runtime/server/render.js +470 -0
  777. package/dist/runtime/server/render.js.map +1 -0
  778. package/dist/runtime/server/snippet.d.ts +7 -0
  779. package/dist/runtime/server/snippet.d.ts.map +1 -0
  780. package/dist/runtime/server/snippet.js +15 -0
  781. package/dist/runtime/server/snippet.js.map +1 -0
  782. package/dist/runtime/transitions/animate.d.ts +22 -0
  783. package/dist/runtime/transitions/animate.d.ts.map +1 -0
  784. package/dist/runtime/transitions/animate.js +140 -0
  785. package/dist/runtime/transitions/animate.js.map +1 -0
  786. package/dist/runtime/transitions/easing.d.ts +33 -0
  787. package/dist/runtime/transitions/easing.d.ts.map +1 -0
  788. package/dist/runtime/transitions/easing.js +128 -0
  789. package/dist/runtime/transitions/easing.js.map +1 -0
  790. package/dist/runtime/transitions/flip.d.ts +12 -0
  791. package/dist/runtime/transitions/flip.d.ts.map +1 -0
  792. package/dist/runtime/transitions/flip.js +51 -0
  793. package/dist/runtime/transitions/flip.js.map +1 -0
  794. package/dist/runtime/transitions/frame.d.ts +37 -0
  795. package/dist/runtime/transitions/frame.d.ts.map +1 -0
  796. package/dist/runtime/transitions/frame.js +219 -0
  797. package/dist/runtime/transitions/frame.js.map +1 -0
  798. package/dist/runtime/transitions/layout.d.ts +37 -0
  799. package/dist/runtime/transitions/layout.d.ts.map +1 -0
  800. package/dist/runtime/transitions/layout.js +150 -0
  801. package/dist/runtime/transitions/layout.js.map +1 -0
  802. package/dist/runtime/transitions/manager.d.ts +30 -0
  803. package/dist/runtime/transitions/manager.d.ts.map +1 -0
  804. package/dist/runtime/transitions/manager.js +278 -0
  805. package/dist/runtime/transitions/manager.js.map +1 -0
  806. package/dist/runtime/transitions/placement.d.ts +25 -0
  807. package/dist/runtime/transitions/placement.d.ts.map +1 -0
  808. package/dist/runtime/transitions/placement.js +135 -0
  809. package/dist/runtime/transitions/placement.js.map +1 -0
  810. package/dist/runtime/transitions/presets.d.ts +53 -0
  811. package/dist/runtime/transitions/presets.d.ts.map +1 -0
  812. package/dist/runtime/transitions/presets.js +266 -0
  813. package/dist/runtime/transitions/presets.js.map +1 -0
  814. package/dist/shared/abort.d.ts +6 -0
  815. package/dist/shared/abort.d.ts.map +1 -0
  816. package/dist/shared/abort.js +8 -0
  817. package/dist/shared/abort.js.map +1 -0
  818. package/dist/shared/assignment.d.ts +6 -0
  819. package/dist/shared/assignment.d.ts.map +1 -0
  820. package/dist/shared/assignment.js +19 -0
  821. package/dist/shared/assignment.js.map +1 -0
  822. package/dist/shared/attributes.d.ts +8 -0
  823. package/dist/shared/attributes.d.ts.map +1 -0
  824. package/dist/shared/attributes.js +120 -0
  825. package/dist/shared/attributes.js.map +1 -0
  826. package/dist/shared/clone.d.ts +2 -0
  827. package/dist/shared/clone.d.ts.map +1 -0
  828. package/dist/shared/clone.js +76 -0
  829. package/dist/shared/clone.js.map +1 -0
  830. package/dist/shared/context.d.ts +15 -0
  831. package/dist/shared/context.d.ts.map +1 -0
  832. package/dist/shared/context.js +16 -0
  833. package/dist/shared/context.js.map +1 -0
  834. package/dist/shared/diagnostics.d.ts +22 -0
  835. package/dist/shared/diagnostics.d.ts.map +1 -0
  836. package/dist/shared/diagnostics.js +58 -0
  837. package/dist/shared/diagnostics.js.map +1 -0
  838. package/dist/shared/escape.d.ts +3 -0
  839. package/dist/shared/escape.d.ts.map +1 -0
  840. package/dist/shared/escape.js +17 -0
  841. package/dist/shared/escape.js.map +1 -0
  842. package/dist/shared/external.d.ts +37 -0
  843. package/dist/shared/external.d.ts.map +1 -0
  844. package/dist/shared/external.js +76 -0
  845. package/dist/shared/external.js.map +1 -0
  846. package/dist/shared/format.d.ts +9 -0
  847. package/dist/shared/format.d.ts.map +1 -0
  848. package/dist/shared/format.js +10 -0
  849. package/dist/shared/format.js.map +1 -0
  850. package/dist/shared/hash.d.ts +2 -0
  851. package/dist/shared/hash.d.ts.map +1 -0
  852. package/dist/shared/hash.js +9 -0
  853. package/dist/shared/hash.js.map +1 -0
  854. package/dist/shared/html.d.ts +18 -0
  855. package/dist/shared/html.d.ts.map +1 -0
  856. package/dist/shared/html.js +277 -0
  857. package/dist/shared/html.js.map +1 -0
  858. package/dist/shared/markers.d.ts +12 -0
  859. package/dist/shared/markers.d.ts.map +1 -0
  860. package/dist/shared/markers.js +16 -0
  861. package/dist/shared/markers.js.map +1 -0
  862. package/dist/shared/nesting.d.ts +3 -0
  863. package/dist/shared/nesting.d.ts.map +1 -0
  864. package/dist/shared/nesting.js +143 -0
  865. package/dist/shared/nesting.js.map +1 -0
  866. package/dist/shared/slots.d.ts +8 -0
  867. package/dist/shared/slots.d.ts.map +1 -0
  868. package/dist/shared/slots.js +9 -0
  869. package/dist/shared/slots.js.map +1 -0
  870. package/dist/shared/snippet.d.ts +11 -0
  871. package/dist/shared/snippet.d.ts.map +1 -0
  872. package/dist/shared/snippet.js +11 -0
  873. package/dist/shared/snippet.js.map +1 -0
  874. package/package.json +59 -3
  875. package/src/compiler/analysis/asynchronous.ts +206 -0
  876. package/src/compiler/analysis/classes.ts +110 -0
  877. package/src/compiler/analysis/ignoring.ts +25 -0
  878. package/src/compiler/analysis/index.ts +433 -0
  879. package/src/compiler/analysis/scope.ts +410 -0
  880. package/src/compiler/analysis/template.ts +525 -0
  881. package/src/compiler/analysis/validate/a11y/attributes.ts +252 -0
  882. package/src/compiler/analysis/validate/a11y/axobject-query.d.ts +20 -0
  883. package/src/compiler/analysis/validate/a11y/elements.ts +241 -0
  884. package/src/compiler/analysis/validate/a11y/facts.ts +102 -0
  885. package/src/compiler/analysis/validate/a11y/fuzzy.ts +123 -0
  886. package/src/compiler/analysis/validate/a11y/index.ts +24 -0
  887. package/src/compiler/analysis/validate/a11y/interactions.ts +125 -0
  888. package/src/compiler/analysis/validate/a11y/roles.ts +182 -0
  889. package/src/compiler/analysis/validate/a11y/tables.ts +250 -0
  890. package/src/compiler/analysis/validate/assignment.ts +74 -0
  891. package/src/compiler/analysis/validate/bindings.ts +210 -0
  892. package/src/compiler/analysis/validate/classes.ts +102 -0
  893. package/src/compiler/analysis/validate/context.ts +119 -0
  894. package/src/compiler/analysis/validate/element.ts +148 -0
  895. package/src/compiler/analysis/validate/front.ts +75 -0
  896. package/src/compiler/analysis/validate/index.ts +268 -0
  897. package/src/compiler/analysis/validate/messages.ts +451 -0
  898. package/src/compiler/analysis/validate/report.ts +100 -0
  899. package/src/compiler/analysis/validate/scope.ts +241 -0
  900. package/src/compiler/analysis/validate/scopes.ts +460 -0
  901. package/src/compiler/analysis/validate/script.ts +528 -0
  902. package/src/compiler/analysis/validate/template.ts +326 -0
  903. package/src/compiler/analysis/whitespace.ts +87 -0
  904. package/src/compiler/client/asynchronous.ts +68 -0
  905. package/src/compiler/client/bindings.ts +246 -0
  906. package/src/compiler/client/blocks.ts +239 -0
  907. package/src/compiler/client/classes.ts +154 -0
  908. package/src/compiler/client/component.ts +549 -0
  909. package/src/compiler/client/constants.ts +107 -0
  910. package/src/compiler/client/custom-element.ts +173 -0
  911. package/src/compiler/client/directives.ts +35 -0
  912. package/src/compiler/client/dynamic.ts +85 -0
  913. package/src/compiler/client/element.ts +631 -0
  914. package/src/compiler/client/events.ts +147 -0
  915. package/src/compiler/client/exports.ts +39 -0
  916. package/src/compiler/client/external.ts +190 -0
  917. package/src/compiler/client/hot.ts +62 -0
  918. package/src/compiler/client/index.ts +307 -0
  919. package/src/compiler/client/inspect.ts +153 -0
  920. package/src/compiler/client/loss.ts +53 -0
  921. package/src/compiler/client/markup.ts +126 -0
  922. package/src/compiler/client/meta.ts +64 -0
  923. package/src/compiler/client/ownership.ts +54 -0
  924. package/src/compiler/client/parameters.ts +38 -0
  925. package/src/compiler/client/patterns.ts +154 -0
  926. package/src/compiler/client/script.ts +587 -0
  927. package/src/compiler/client/special.ts +177 -0
  928. package/src/compiler/client/template.ts +533 -0
  929. package/src/compiler/client/transitions.ts +38 -0
  930. package/src/compiler/client/values.ts +52 -0
  931. package/src/compiler/css/analyze.ts +281 -0
  932. package/src/compiler/css/attributes.ts +195 -0
  933. package/src/compiler/css/hash.ts +1 -0
  934. package/src/compiler/css/index.ts +152 -0
  935. package/src/compiler/css/marks.ts +142 -0
  936. package/src/compiler/css/prune.ts +466 -0
  937. package/src/compiler/css/relations.ts +264 -0
  938. package/src/compiler/css/render.ts +422 -0
  939. package/src/compiler/css/template.ts +297 -0
  940. package/src/compiler/ir/estree.ts +256 -0
  941. package/src/compiler/ir/maps.ts +64 -0
  942. package/src/compiler/ir/nodes.ts +263 -0
  943. package/src/compiler/ir/port.ts +88 -0
  944. package/src/compiler/ir/runtime.ts +19 -0
  945. package/src/compiler/ir/script.ts +34 -0
  946. package/src/compiler/ir/style.ts +120 -0
  947. package/src/compiler/server/asynchronous.ts +71 -0
  948. package/src/compiler/server/bindings.ts +101 -0
  949. package/src/compiler/server/blocks.ts +165 -0
  950. package/src/compiler/server/classes.ts +139 -0
  951. package/src/compiler/server/component.ts +400 -0
  952. package/src/compiler/server/external.ts +176 -0
  953. package/src/compiler/server/index.ts +205 -0
  954. package/src/compiler/server/placement.ts +58 -0
  955. package/src/compiler/server/script.ts +492 -0
  956. package/src/compiler/server/slot.ts +51 -0
  957. package/src/compiler/server/special.ts +60 -0
  958. package/src/compiler/server/template.ts +620 -0
  959. package/src/entries/action.ts +20 -0
  960. package/src/entries/animate.ts +3 -0
  961. package/src/entries/attachments.ts +30 -0
  962. package/src/entries/compiler.ts +206 -0
  963. package/src/entries/easing.ts +1 -0
  964. package/src/entries/events.ts +10 -0
  965. package/src/entries/index-server.ts +118 -0
  966. package/src/entries/index.ts +50 -0
  967. package/src/entries/internal/client.ts +135 -0
  968. package/src/entries/internal/server.ts +46 -0
  969. package/src/entries/motion-server.ts +5 -0
  970. package/src/entries/motion.ts +5 -0
  971. package/src/entries/reactivity-server.ts +7 -0
  972. package/src/entries/reactivity.ts +7 -0
  973. package/src/entries/server.ts +11 -0
  974. package/src/entries/transition.ts +12 -0
  975. package/src/entries/window-server.ts +12 -0
  976. package/src/entries/window.ts +12 -0
  977. package/src/runtime/classes/date.ts +65 -0
  978. package/src/runtime/classes/frames.ts +27 -0
  979. package/src/runtime/classes/local.ts +7 -0
  980. package/src/runtime/classes/map.ts +135 -0
  981. package/src/runtime/classes/media.ts +25 -0
  982. package/src/runtime/classes/motion.ts +3 -0
  983. package/src/runtime/classes/search.ts +136 -0
  984. package/src/runtime/classes/server.ts +17 -0
  985. package/src/runtime/classes/set.ts +146 -0
  986. package/src/runtime/classes/spring.ts +199 -0
  987. package/src/runtime/classes/subscriber.ts +50 -0
  988. package/src/runtime/classes/tween.ts +128 -0
  989. package/src/runtime/classes/url.ts +152 -0
  990. package/src/runtime/classes/window-server.ts +27 -0
  991. package/src/runtime/classes/window.ts +72 -0
  992. package/src/runtime/dom/async.ts +208 -0
  993. package/src/runtime/dom/attachments.ts +139 -0
  994. package/src/runtime/dom/attributes.ts +526 -0
  995. package/src/runtime/dom/await.ts +108 -0
  996. package/src/runtime/dom/bindings.ts +369 -0
  997. package/src/runtime/dom/blocks.ts +39 -0
  998. package/src/runtime/dom/boundary.ts +349 -0
  999. package/src/runtime/dom/branches.ts +219 -0
  1000. package/src/runtime/dom/context.ts +90 -0
  1001. package/src/runtime/dom/custom-element.ts +214 -0
  1002. package/src/runtime/dom/data.ts +131 -0
  1003. package/src/runtime/dom/element.ts +89 -0
  1004. package/src/runtime/dom/events.ts +254 -0
  1005. package/src/runtime/dom/head.ts +56 -0
  1006. package/src/runtime/dom/hot.ts +45 -0
  1007. package/src/runtime/dom/html.ts +92 -0
  1008. package/src/runtime/dom/hydration.ts +108 -0
  1009. package/src/runtime/dom/inspect.ts +70 -0
  1010. package/src/runtime/dom/list.ts +432 -0
  1011. package/src/runtime/dom/media.ts +164 -0
  1012. package/src/runtime/dom/meta.ts +67 -0
  1013. package/src/runtime/dom/mount.ts +190 -0
  1014. package/src/runtime/dom/ownership.ts +45 -0
  1015. package/src/runtime/dom/props.ts +212 -0
  1016. package/src/runtime/dom/range.ts +132 -0
  1017. package/src/runtime/dom/reset.ts +39 -0
  1018. package/src/runtime/dom/select.ts +184 -0
  1019. package/src/runtime/dom/snippet.ts +54 -0
  1020. package/src/runtime/dom/styles.ts +26 -0
  1021. package/src/runtime/dom/swap.ts +117 -0
  1022. package/src/runtime/dom/targets.ts +96 -0
  1023. package/src/runtime/dom/template.ts +319 -0
  1024. package/src/runtime/dom/trusted.ts +81 -0
  1025. package/src/runtime/dom/values.ts +33 -0
  1026. package/src/runtime/reactivity/abort.ts +56 -0
  1027. package/src/runtime/reactivity/async.ts +272 -0
  1028. package/src/runtime/reactivity/batch.ts +382 -0
  1029. package/src/runtime/reactivity/carried.ts +64 -0
  1030. package/src/runtime/reactivity/collector.ts +20 -0
  1031. package/src/runtime/reactivity/drafts.ts +126 -0
  1032. package/src/runtime/reactivity/eager.ts +45 -0
  1033. package/src/runtime/reactivity/edges.ts +210 -0
  1034. package/src/runtime/reactivity/effects.ts +669 -0
  1035. package/src/runtime/reactivity/errors.ts +73 -0
  1036. package/src/runtime/reactivity/external.ts +56 -0
  1037. package/src/runtime/reactivity/fork.ts +60 -0
  1038. package/src/runtime/reactivity/front.ts +20 -0
  1039. package/src/runtime/reactivity/graph.ts +129 -0
  1040. package/src/runtime/reactivity/handlers.ts +55 -0
  1041. package/src/runtime/reactivity/held.ts +337 -0
  1042. package/src/runtime/reactivity/history.ts +108 -0
  1043. package/src/runtime/reactivity/latest.ts +41 -0
  1044. package/src/runtime/reactivity/leaving.ts +303 -0
  1045. package/src/runtime/reactivity/loss.ts +71 -0
  1046. package/src/runtime/reactivity/outgoing.ts +41 -0
  1047. package/src/runtime/reactivity/owners.ts +242 -0
  1048. package/src/runtime/reactivity/past.ts +57 -0
  1049. package/src/runtime/reactivity/provenance.ts +189 -0
  1050. package/src/runtime/reactivity/proxy.ts +212 -0
  1051. package/src/runtime/reactivity/public.ts +51 -0
  1052. package/src/runtime/reactivity/reads.ts +376 -0
  1053. package/src/runtime/reactivity/scheduler.ts +400 -0
  1054. package/src/runtime/reactivity/settle.ts +73 -0
  1055. package/src/runtime/reactivity/sources.ts +150 -0
  1056. package/src/runtime/reactivity/tallies.ts +34 -0
  1057. package/src/runtime/reactivity/tasks.ts +33 -0
  1058. package/src/runtime/reactivity/trace.ts +113 -0
  1059. package/src/runtime/reactivity/tracking.ts +569 -0
  1060. package/src/runtime/reactivity/units.ts +103 -0
  1061. package/src/runtime/reactivity/views.ts +114 -0
  1062. package/src/runtime/server/attributes.ts +80 -0
  1063. package/src/runtime/server/cells.ts +135 -0
  1064. package/src/runtime/server/context.ts +319 -0
  1065. package/src/runtime/server/derived.ts +37 -0
  1066. package/src/runtime/server/external.ts +59 -0
  1067. package/src/runtime/server/hydration.ts +238 -0
  1068. package/src/runtime/server/placement.ts +47 -0
  1069. package/src/runtime/server/render.ts +612 -0
  1070. package/src/runtime/server/snippet.ts +21 -0
  1071. package/src/runtime/transitions/animate.ts +161 -0
  1072. package/src/runtime/transitions/easing.ts +153 -0
  1073. package/src/runtime/transitions/flip.ts +66 -0
  1074. package/src/runtime/transitions/frame.ts +273 -0
  1075. package/src/runtime/transitions/layout.ts +176 -0
  1076. package/src/runtime/transitions/manager.ts +343 -0
  1077. package/src/runtime/transitions/placement.ts +161 -0
  1078. package/src/runtime/transitions/presets.ts +369 -0
  1079. package/src/shared/abort.ts +8 -0
  1080. package/src/shared/assignment.ts +27 -0
  1081. package/src/shared/attributes.ts +123 -0
  1082. package/src/shared/clone.ts +82 -0
  1083. package/src/shared/context.ts +35 -0
  1084. package/src/shared/diagnostics.ts +83 -0
  1085. package/src/shared/escape.ts +20 -0
  1086. package/src/shared/external.ts +113 -0
  1087. package/src/shared/format.ts +17 -0
  1088. package/src/shared/hash.ts +8 -0
  1089. package/src/shared/html.ts +298 -0
  1090. package/src/shared/markers.ts +25 -0
  1091. package/src/shared/nesting.ts +156 -0
  1092. package/src/shared/slots.ts +16 -0
  1093. package/src/shared/snippet.ts +29 -0
@@ -0,0 +1,165 @@
1
+ import type * as ES from 'estree';
2
+ import { arm, close, empty, fallback, open, openElse } from '../../shared/markers.ts';
3
+ import { hasAwait } from '../analysis/index.ts';
4
+ import * as b from '../ir/estree.ts';
5
+ import type {
6
+ AsyncBlock,
7
+ Branch,
8
+ Fragment,
9
+ KeyedBlock,
10
+ KeyedList,
11
+ UnkeyedList
12
+ } from '../ir/nodes.ts';
13
+ import { asyncThunk, rewrite, runtime } from './script.ts';
14
+ import { Buffer, cleaned, fragmentCode, type TemplateContext } from './template.ts';
15
+
16
+ export type Block = Branch | KeyedList | UnkeyedList | KeyedBlock | AsyncBlock;
17
+
18
+ export function section(
19
+ context: TemplateContext,
20
+ marker: string,
21
+ fragment: Fragment | null,
22
+ textFirst: boolean
23
+ ): ES.BlockStatement {
24
+ const statements: ES.Statement[] = [];
25
+ const buffer = new Buffer();
26
+ buffer.text(marker);
27
+ if (fragment !== null)
28
+ fragmentCode(context, cleaned(context, fragment), statements, buffer, textFirst);
29
+ buffer.flush(context, statements);
30
+ return { type: 'BlockStatement', body: statements };
31
+ }
32
+
33
+ function branch(context: TemplateContext, node: Branch, statements: ES.Statement[]): void {
34
+ let chain: ES.Statement = section(context, arm(fallback), node.fallback, false);
35
+ for (let index = node.arms.length - 1; index >= 0; index--) {
36
+ const entry = node.arms[index];
37
+ if (entry === undefined) continue;
38
+ chain = {
39
+ type: 'IfStatement',
40
+ test: rewrite(context, entry.test),
41
+ consequent: section(context, arm(index), entry.body, false),
42
+ alternate: chain
43
+ };
44
+ }
45
+ statements.push(chain);
46
+ }
47
+
48
+ function list(
49
+ context: TemplateContext,
50
+ node: KeyedList | UnkeyedList,
51
+ statements: ES.Statement[]
52
+ ): void {
53
+ const facts = context.component.lists.get(node);
54
+ if (facts === undefined) throw new Error('each block was not analyzed');
55
+ const items = b.id(context.names.unique('each_array'));
56
+ const index = b.id(facts.index?.name ?? context.names.unique('$$index'));
57
+ const length = b.id(context.names.unique('$$length'));
58
+ statements.push(
59
+ b.constant(items.name, runtime(context, 'iterate', rewrite(context, node.collection)))
60
+ );
61
+ const body = section(context, '', node.body, true);
62
+ const current: ES.MemberExpression = {
63
+ type: 'MemberExpression',
64
+ object: items,
65
+ property: index,
66
+ computed: true,
67
+ optional: false
68
+ };
69
+ const item: ES.Statement[] =
70
+ node.item === null
71
+ ? []
72
+ : [
73
+ {
74
+ type: 'VariableDeclaration',
75
+ kind: 'const',
76
+ declarations: [
77
+ { type: 'VariableDeclarator', id: rewrite(context, node.item), init: current }
78
+ ]
79
+ }
80
+ ];
81
+ const loop: ES.ForStatement = {
82
+ type: 'ForStatement',
83
+ init: {
84
+ type: 'VariableDeclaration',
85
+ kind: 'let',
86
+ declarations: [
87
+ { type: 'VariableDeclarator', id: index, init: b.literal(0) },
88
+ { type: 'VariableDeclarator', id: length, init: b.member(items, 'length') }
89
+ ]
90
+ },
91
+ test: b.binary('<', index, length),
92
+ update: { type: 'UpdateExpression', operator: '++', prefix: false, argument: index },
93
+ body: { type: 'BlockStatement', body: [...item, ...body.body] }
94
+ };
95
+ const push = (html: string): ES.Statement =>
96
+ b.statement(b.call(b.member(context.out, 'push'), b.literal(html)));
97
+ if (node.fallback !== null) {
98
+ statements.push({
99
+ type: 'IfStatement',
100
+ test: b.binary('!==', b.member(items, 'length'), b.literal(0)),
101
+ consequent: { type: 'BlockStatement', body: [push(open), loop] },
102
+ alternate: section(context, openElse, node.fallback, true)
103
+ });
104
+ } else {
105
+ statements.push(push(open), loop);
106
+ }
107
+ }
108
+
109
+ function awaited(context: TemplateContext, node: AsyncBlock, statements: ES.Statement[]): void {
110
+ const value = b.id(context.names.unique('$$promise'));
111
+ const input = hasAwait(node.promise, context.awaited)
112
+ ? b.call(asyncThunk(context, node.promise, (value) => value))
113
+ : rewrite(context, node.promise);
114
+ statements.push(b.constant(value.name, input));
115
+ const pending = section(context, open, node.pending, false);
116
+ const then = section(context, openElse, node.resolved?.body ?? null, false);
117
+ const binding = node.resolved?.binding ?? null;
118
+ if (binding !== null) {
119
+ then.body.unshift({
120
+ type: 'VariableDeclaration',
121
+ kind: 'const',
122
+ declarations: [{ type: 'VariableDeclarator', id: rewrite(context, binding), init: value }]
123
+ });
124
+ }
125
+ pending.body.unshift(
126
+ b.statement(b.call(b.member(value, 'then'), b.literal(null), b.arrow([], [])))
127
+ );
128
+ const method: ES.ChainExpression = {
129
+ type: 'ChainExpression',
130
+ expression: {
131
+ type: 'MemberExpression',
132
+ object: value,
133
+ property: b.id('then'),
134
+ computed: false,
135
+ optional: true
136
+ }
137
+ };
138
+ const kind: ES.UnaryExpression = {
139
+ type: 'UnaryExpression',
140
+ operator: 'typeof',
141
+ prefix: true,
142
+ argument: method
143
+ };
144
+ const thenable = b.binary('===', kind, b.literal('function'));
145
+ statements.push({ type: 'IfStatement', test: thenable, consequent: pending, alternate: then });
146
+ }
147
+
148
+ export function blockCode(
149
+ context: TemplateContext,
150
+ node: Block,
151
+ statements: ES.Statement[],
152
+ buffer: Buffer
153
+ ): void {
154
+ if (node.kind === 'keyed-block') {
155
+ buffer.text(empty);
156
+ fragmentCode(context, cleaned(context, node.body), statements, buffer, false);
157
+ buffer.text(empty);
158
+ return;
159
+ }
160
+ buffer.flush(context, statements);
161
+ if (node.kind === 'branch') branch(context, node, statements);
162
+ else if (node.kind === 'async-block') awaited(context, node, statements);
163
+ else list(context, node, statements);
164
+ buffer.text(close);
165
+ }
@@ -0,0 +1,139 @@
1
+ import type * as ES from 'estree';
2
+ import { fieldName, spanOf, unsupported, type StateField } from '../analysis/index.ts';
3
+ import * as b from '../ir/estree.ts';
4
+ import { runtime, type Context } from './script.ts';
5
+
6
+ type Next = <T extends ES.Node>(node: T) => T;
7
+
8
+ function derivedField(field: StateField): boolean {
9
+ return field.rune === '$derived' || field.rune === '$derived.by';
10
+ }
11
+
12
+ export function fieldValue(context: Context, field: StateField, next: Next): ES.Expression {
13
+ const [first] = field.value.arguments;
14
+ if (first?.type === 'SpreadElement') throw unsupported(spanOf(first), 'A spread rune argument');
15
+ const value = first === undefined ? b.id('undefined') : next(first);
16
+ switch (field.rune) {
17
+ case '$state':
18
+ case '$state.raw':
19
+ return value;
20
+ case '$derived':
21
+ return runtime(context, 'derived', b.arrow([], value));
22
+ case '$derived.by':
23
+ return runtime(context, 'derived', value);
24
+ }
25
+ }
26
+
27
+ function member(key: ES.PrivateIdentifier): ES.MemberExpression {
28
+ return {
29
+ type: 'MemberExpression',
30
+ object: { type: 'ThisExpression' },
31
+ property: key,
32
+ computed: false,
33
+ optional: false
34
+ };
35
+ }
36
+
37
+ function accessors(
38
+ field: StateField,
39
+ key: ES.Expression,
40
+ computed: boolean
41
+ ): ES.MethodDefinition[] {
42
+ const value = b.id('value');
43
+ const make = (
44
+ kind: 'get' | 'set',
45
+ params: ES.Pattern[],
46
+ body: ES.Statement[]
47
+ ): ES.MethodDefinition => ({
48
+ type: 'MethodDefinition',
49
+ key,
50
+ computed,
51
+ static: false,
52
+ kind,
53
+ value: b.functionExpression(params, body)
54
+ });
55
+ return [
56
+ make('get', [], [{ type: 'ReturnStatement', argument: b.call(member(field.key)) }]),
57
+ make('set', [value], [b.statement(b.call(member(field.key), value))])
58
+ ];
59
+ }
60
+
61
+ function definition(
62
+ key: ES.Expression | ES.PrivateIdentifier,
63
+ value: ES.Expression | null,
64
+ computed = false
65
+ ): ES.PropertyDefinition {
66
+ return { type: 'PropertyDefinition', key, value, computed, static: false };
67
+ }
68
+
69
+ export function classBody(
70
+ context: Context,
71
+ body: ES.ClassBody,
72
+ fields: ReadonlyMap<string, StateField>,
73
+ next: Next
74
+ ): ES.ClassBody {
75
+ const members: ES.ClassBody['body'] = [];
76
+ for (const [name, field] of fields) {
77
+ if (name.startsWith('#') || field.node.type !== 'AssignmentExpression' || !derivedField(field))
78
+ continue;
79
+ const left = field.node.left as ES.MemberExpression;
80
+ members.push(
81
+ definition(field.key, null),
82
+ ...accessors(field, left.property as ES.Expression, left.computed)
83
+ );
84
+ }
85
+ for (const item of body.body) {
86
+ if (item.type !== 'PropertyDefinition' || item.static) {
87
+ members.push(next(item));
88
+ continue;
89
+ }
90
+ const name = fieldName(item.key, item.computed);
91
+ const field = name === null ? undefined : fields.get(name);
92
+ if (
93
+ field?.node.type === 'AssignmentExpression' &&
94
+ derivedField(field) &&
95
+ item.value == null &&
96
+ name !== null &&
97
+ !name.startsWith('#')
98
+ )
99
+ continue;
100
+ if (field === undefined || field.node !== item) {
101
+ members.push(next(item));
102
+ continue;
103
+ }
104
+ const value = fieldValue(context, field, next);
105
+ if (item.key.type === 'PrivateIdentifier' || !derivedField(field)) {
106
+ members.push(definition(item.key, value, item.computed));
107
+ continue;
108
+ }
109
+ members.push(
110
+ definition(field.key, value),
111
+ ...accessors(field, item.key as ES.Expression, item.computed)
112
+ );
113
+ }
114
+ return { ...body, body: members };
115
+ }
116
+
117
+ export function privateDerived(
118
+ context: Context,
119
+ node: ES.MemberExpression
120
+ ): StateField | undefined {
121
+ if (node.property.type !== 'PrivateIdentifier') return undefined;
122
+ const field = context.fields?.get(`#${node.property.name}`);
123
+ return field !== undefined && derivedField(field) ? field : undefined;
124
+ }
125
+
126
+ export function constructorField(
127
+ context: Context,
128
+ node: ES.AssignmentExpression
129
+ ): StateField | undefined {
130
+ const left = node.left;
131
+ if (left.type !== 'MemberExpression' || left.object.type !== 'ThisExpression') return undefined;
132
+ const name = fieldName(left.property, left.computed);
133
+ const field = name === null ? undefined : context.fields?.get(name);
134
+ return field?.node === node ? field : undefined;
135
+ }
136
+
137
+ export function isDerivedField(field: StateField): boolean {
138
+ return derivedField(field);
139
+ }
@@ -0,0 +1,400 @@
1
+ import type * as ES from 'estree';
2
+ import { close, empty, open, openElse } from '../../shared/markers.ts';
3
+ import { hoisted, spanOf, unsupported } from '../analysis/index.ts';
4
+ import * as b from '../ir/estree.ts';
5
+ import type {
6
+ Boundary,
7
+ Component,
8
+ Expression,
9
+ Node,
10
+ Render,
11
+ Snippet,
12
+ Text,
13
+ Value
14
+ } from '../ir/nodes.ts';
15
+ import { rewrite, runtime } from './script.ts';
16
+ import { Buffer, fragmentCode, type TemplateContext } from './template.ts';
17
+
18
+ function property(
19
+ name: string,
20
+ value: ES.Expression,
21
+ kind: 'init' | 'get' | 'set' = 'init'
22
+ ): ES.Property {
23
+ return {
24
+ type: 'Property',
25
+ key: b.literal(name),
26
+ value,
27
+ kind,
28
+ method: false,
29
+ shorthand: false,
30
+ computed: false
31
+ };
32
+ }
33
+
34
+ function valueOf(context: TemplateContext, value: Value): ES.Expression {
35
+ if (value.kind === 'boolean') return b.literal(true);
36
+ if (value.kind === 'expression') return rewrite(context, value.expression);
37
+ const quasis: string[] = [''];
38
+ const expressions: ES.Expression[] = [];
39
+ for (const part of value.parts) {
40
+ if (part.kind === 'text') quasis[quasis.length - 1] += (part as Text).data;
41
+ else {
42
+ expressions.push(
43
+ b.logical('??', rewrite(context, (part as Expression).expression), b.literal(''))
44
+ );
45
+ quasis.push('');
46
+ }
47
+ }
48
+ return b.template(quasis, expressions);
49
+ }
50
+
51
+ export function isDynamicComponent(context: TemplateContext, node: Component): boolean {
52
+ const reference = node.reference;
53
+ if (reference.type !== 'Identifier') return true;
54
+ const binding = context.analysis.references.get(reference);
55
+ if (binding === undefined) return false;
56
+ return (binding.kind !== 'normal' && binding.kind !== 'import') || binding.reassigned;
57
+ }
58
+
59
+ function bindingProperties(
60
+ context: TemplateContext,
61
+ name: string,
62
+ expression: ES.Expression
63
+ ): ES.Property[] {
64
+ const value = b.id(context.names.unique('$$value'));
65
+ if (expression.type === 'SequenceExpression') {
66
+ const [get, set] = expression.expressions as [ES.Expression, ES.Expression];
67
+ return [
68
+ property(
69
+ name,
70
+ b.functionExpression(
71
+ [],
72
+ [{ type: 'ReturnStatement', argument: b.call(rewrite(context, get)) }]
73
+ ),
74
+ 'get'
75
+ ),
76
+ property(
77
+ name,
78
+ b.functionExpression([value], [b.statement(b.call(rewrite(context, set), value))]),
79
+ 'set'
80
+ )
81
+ ];
82
+ }
83
+ const assignment: ES.AssignmentExpression = {
84
+ type: 'AssignmentExpression',
85
+ operator: '=',
86
+ left: expression as ES.Pattern,
87
+ right: value
88
+ };
89
+ return [
90
+ property(
91
+ name,
92
+ b.functionExpression(
93
+ [],
94
+ [{ type: 'ReturnStatement', argument: rewrite(context, expression) }]
95
+ ),
96
+ 'get'
97
+ ),
98
+ property(
99
+ name,
100
+ b.functionExpression(
101
+ [value],
102
+ [
103
+ b.statement(rewrite(context, assignment)),
104
+ b.statement(b.call(b.member(context.settlement ?? context.out, 'invalidate')))
105
+ ]
106
+ ),
107
+ 'set'
108
+ )
109
+ ];
110
+ }
111
+
112
+ function propsObject(context: TemplateContext, node: Component): ES.Expression {
113
+ const groups: (ES.Property[] | ES.Expression)[] = [];
114
+ const bindings: ES.Property[] = [];
115
+ const push = (...properties: ES.Property[]): void => {
116
+ const last = groups.at(-1);
117
+ if (Array.isArray(last)) last.push(...properties);
118
+ else groups.push([...properties]);
119
+ };
120
+ for (const attribute of node.attributes) {
121
+ switch (attribute.kind) {
122
+ case 'attribute':
123
+ if (attribute.name.startsWith('--')) break;
124
+ push(property(attribute.name, valueOf(context, attribute.value)));
125
+ break;
126
+ case 'spread':
127
+ groups.push(rewrite(context, attribute.expression));
128
+ break;
129
+ case 'binding': {
130
+ if (attribute.name === 'this') break;
131
+ const properties = bindingProperties(context, attribute.name, attribute.expression);
132
+ if (attribute.expression.type === 'SequenceExpression') push(...properties);
133
+ else bindings.push(...properties);
134
+ break;
135
+ }
136
+ case 'attachment':
137
+ break;
138
+ default:
139
+ throw unsupported(attribute, `The ${attribute.kind} directive on a component`);
140
+ }
141
+ }
142
+ if (bindings.length > 0) push(...bindings);
143
+ const nodes = context.component.fragments.get(node.body) ?? [];
144
+ const slots: Record<string, ES.Expression> = {};
145
+ const regular: Node[] = [];
146
+ for (const child of nodes) {
147
+ if (child.kind === 'snippet') {
148
+ push(property(child.name.name, { ...child.name, name: context.names.bound(child.name) }));
149
+ slots[child.name.name === 'children' ? 'default' : child.name.name] = b.literal(true);
150
+ } else regular.push(child);
151
+ }
152
+ if (regular.length > 0) {
153
+ const out = b.id(context.names.unique('$$out'));
154
+ const inner: TemplateContext = { ...context, out };
155
+ const statements: ES.Statement[] = [];
156
+ const buffer = new Buffer();
157
+ fragmentCode(inner, regular, statements, buffer, true);
158
+ buffer.flush(inner, statements);
159
+ push(property('children', b.arrow([out], statements)));
160
+ slots.default = b.literal(true);
161
+ }
162
+ const objects = groups.map((group) =>
163
+ Array.isArray(group)
164
+ ? ({ type: 'ObjectExpression', properties: group } as ES.ObjectExpression)
165
+ : group
166
+ );
167
+ if (objects.length === 0) return { type: 'ObjectExpression', properties: [] };
168
+ const props =
169
+ objects.length === 1 && Array.isArray(groups[0])
170
+ ? (objects[0] as ES.Expression)
171
+ : runtime(context, 'spreadProps', ...objects);
172
+ return Object.keys(slots).length === 0
173
+ ? props
174
+ : runtime(context, 'slotProps', props, b.object(slots));
175
+ }
176
+
177
+ export function component(
178
+ context: TemplateContext,
179
+ node: Component,
180
+ statements: ES.Statement[],
181
+ buffer: Buffer,
182
+ alone: boolean
183
+ ): void {
184
+ const styles: Record<string, ES.Expression> = {};
185
+ for (const attribute of node.attributes) {
186
+ if (attribute.kind === 'attribute' && attribute.name.startsWith('--')) {
187
+ styles[attribute.name] = valueOf(context, attribute.value);
188
+ }
189
+ }
190
+ const wrapped = Object.keys(styles).length > 0;
191
+ const svg = context.component.fragmentNamespaces.get(node.body) === 'svg';
192
+ const tag = svg ? 'g' : context.format.cssWrapper;
193
+ if (wrapped) {
194
+ buffer.text(`<${tag}`);
195
+ buffer.value(
196
+ runtime(context, 'attrStyle', b.literal(svg ? null : 'display: contents;'), b.object(styles))
197
+ );
198
+ buffer.text('>');
199
+ }
200
+ buffer.flush(context, statements);
201
+ statements.push(
202
+ ...snippetDeclarations(context, context.component.fragments.get(node.body) ?? [])
203
+ );
204
+ const props = propsObject(context, node);
205
+ const reference = rewrite(context, node.reference);
206
+ const call = b.statement(b.call(reference, context.out, props));
207
+ if (!isDynamicComponent(context, node)) {
208
+ statements.push(call);
209
+ if (!alone || wrapped) buffer.text(empty);
210
+ if (wrapped) buffer.text(`</${tag}>`);
211
+ return;
212
+ }
213
+ const push = (html: string): ES.Statement =>
214
+ b.statement(b.call(b.member(context.out, 'push'), b.literal(html)));
215
+ statements.push({
216
+ type: 'IfStatement',
217
+ test: reference,
218
+ consequent: { type: 'BlockStatement', body: [push(open), call, push(close)] },
219
+ alternate: { type: 'BlockStatement', body: [push(openElse), push(close)] }
220
+ });
221
+ if (wrapped) buffer.text(`</${tag}>`);
222
+ }
223
+
224
+ export function boundary(
225
+ context: TemplateContext,
226
+ node: Boundary,
227
+ statements: ES.Statement[],
228
+ buffer: Buffer
229
+ ): void {
230
+ buffer.flush(context, statements);
231
+ const nodes = context.component.fragments.get(node.body) ?? [];
232
+ const handed = (child: Node): boolean =>
233
+ child.kind === 'snippet' && (child.name.name === 'failed' || child.name.name === 'pending');
234
+ const declarations = snippetDeclarations(context, nodes.filter(handed));
235
+ const snippet = (name: string): ES.Expression | null => {
236
+ const declared = nodes.find(
237
+ (child): child is Snippet => child.kind === 'snippet' && child.name.name === name
238
+ );
239
+ if (declared !== undefined)
240
+ return { ...declared.name, name: context.names.bound(declared.name) };
241
+ const attribute = node.attributes.find(
242
+ (candidate) => candidate.kind === 'attribute' && candidate.name === name
243
+ );
244
+ return attribute?.kind === 'attribute' ? valueOf(context, attribute.value) : null;
245
+ };
246
+ const pending = snippet('pending');
247
+ const failed = snippet('failed');
248
+ const regular = nodes.filter((child) => !handed(child));
249
+ const out = failed === null ? context.out : b.id(context.names.unique('$$out'));
250
+ const inner: TemplateContext = { ...context, out };
251
+ const body: ES.Statement[] = [];
252
+ const showing = (handler: ES.Expression): ES.Statement[] => [
253
+ b.statement(b.call(b.member(out, 'push'), b.literal(openElse))),
254
+ b.statement(b.call(handler, out)),
255
+ b.statement(b.call(b.member(out, 'push'), b.literal(close)))
256
+ ];
257
+ if (
258
+ pending !== null &&
259
+ nodes.some((child) => child.kind === 'snippet' && child.name.name === 'pending')
260
+ ) {
261
+ body.push(...showing(pending));
262
+ } else {
263
+ const content: ES.Statement[] = [];
264
+ const children = new Buffer();
265
+ children.text(open);
266
+ fragmentCode(inner, regular, content, children, true);
267
+ children.text(close);
268
+ children.flush(inner, content);
269
+ if (pending === null) body.push(...content);
270
+ else {
271
+ const handler = b.id(context.names.unique('pending'));
272
+ body.push(b.constant(handler.name, pending), {
273
+ type: 'IfStatement',
274
+ test: handler,
275
+ consequent: { type: 'BlockStatement', body: showing(handler) },
276
+ alternate: { type: 'BlockStatement', body: content }
277
+ });
278
+ }
279
+ }
280
+ if (failed === null) {
281
+ statements.push({ type: 'BlockStatement', body: [...declarations, ...body] });
282
+ return;
283
+ }
284
+ statements.push({
285
+ type: 'BlockStatement',
286
+ body: [
287
+ ...declarations,
288
+ b.statement(
289
+ runtime(
290
+ context,
291
+ 'boundary',
292
+ context.out,
293
+ { type: 'ObjectExpression', properties: [property('failed', failed)] },
294
+ b.arrow([out], body)
295
+ )
296
+ )
297
+ ]
298
+ });
299
+ }
300
+
301
+ export function snippetDeclarations(
302
+ context: TemplateContext,
303
+ nodes: readonly Node[]
304
+ ): ES.Statement[] {
305
+ const result: ES.Statement[] = [];
306
+ for (const node of nodes) {
307
+ if (node.kind !== 'snippet') continue;
308
+ const lifted = context.component.lifted.has(node);
309
+ const declaration = snippetDeclaration(
310
+ lifted ? { ...context, props: null, settlement: undefined } : context,
311
+ node
312
+ );
313
+ const initialize = context.dev
314
+ ? b.statement(runtime(context, 'snippet', { ...declaration.id! }))
315
+ : null;
316
+ if (lifted) {
317
+ context.hoisted.push(declaration);
318
+ if (initialize !== null) context.hoisted.unshift(initialize);
319
+ } else {
320
+ result.push(declaration);
321
+ if (initialize !== null) {
322
+ if (context.awaited === undefined && context.component.root.includes(node))
323
+ context.early.push(initialize);
324
+ else result.push(initialize);
325
+ }
326
+ }
327
+ }
328
+ return result;
329
+ }
330
+
331
+ function snippetDeclaration(context: TemplateContext, node: Snippet): ES.FunctionDeclaration {
332
+ const out = b.id(context.names.unique('$$out'));
333
+ const inner: TemplateContext = { ...context, out };
334
+ const statements: ES.Statement[] = [];
335
+ const buffer = new Buffer();
336
+ fragmentCode(inner, context.component.fragments.get(node.body) ?? [], statements, buffer, true);
337
+ buffer.flush(inner, statements);
338
+ return {
339
+ type: 'FunctionDeclaration',
340
+ id: { ...node.name, name: context.names.bound(node.name) },
341
+ params: [out, ...node.parameters.map((parameter) => rewrite(context, parameter))],
342
+ body: {
343
+ type: 'BlockStatement',
344
+ body: [
345
+ ...(context.dev ? [b.statement(runtime(context, 'snippetArgs', out))] : []),
346
+ ...statements
347
+ ]
348
+ },
349
+ async: false,
350
+ generator: false
351
+ };
352
+ }
353
+
354
+ export function isStaticRender(context: TemplateContext, node: Render): boolean {
355
+ const expression = node.call;
356
+ if (expression.type === 'ChainExpression' || expression.optional) return false;
357
+ if (expression.callee.type !== 'Identifier') return false;
358
+ const binding = context.analysis.references.get(expression.callee);
359
+ return binding?.kind === 'snippet' && !binding.reassigned;
360
+ }
361
+
362
+ export function render(
363
+ context: TemplateContext,
364
+ node: Render,
365
+ statements: ES.Statement[],
366
+ buffer: Buffer,
367
+ alone: boolean
368
+ ): void {
369
+ buffer.flush(context, statements);
370
+ const chained = node.call.type === 'ChainExpression';
371
+ const call = (
372
+ chained ? (node.call as ES.ChainExpression).expression : node.call
373
+ ) as ES.SimpleCallExpression;
374
+ const args = call.arguments.map((argument) => {
375
+ if (argument.type === 'SpreadElement')
376
+ throw unsupported(spanOf(argument), 'A spread argument to a snippet');
377
+ return rewrite(context, argument);
378
+ });
379
+ const invoked: ES.SimpleCallExpression = {
380
+ type: 'CallExpression',
381
+ callee: rewrite(context, call.callee as ES.Expression),
382
+ arguments: [context.out, ...args],
383
+ optional: chained || call.optional
384
+ };
385
+ statements.push(
386
+ b.statement(
387
+ chained || call.optional ? { type: 'ChainExpression', expression: invoked } : invoked
388
+ )
389
+ );
390
+ if (!alone) buffer.text(empty);
391
+ }
392
+
393
+ export function standalone(context: TemplateContext, nodes: readonly Node[]): boolean {
394
+ const regular = nodes.filter((node) => !hoisted(node));
395
+ if (regular.length !== 1) return false;
396
+ const [only] = regular;
397
+ if (only?.kind === 'component') return !isDynamicComponent(context, only);
398
+ if (only?.kind === 'render') return isStaticRender(context, only);
399
+ return false;
400
+ }