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,187 @@
1
+ export class Binding {
2
+ scope;
3
+ node;
4
+ declaration;
5
+ kind;
6
+ initial;
7
+ references = [];
8
+ reassigned = false;
9
+ mutated = false;
10
+ insideRest = false;
11
+ templateDeclaration = false;
12
+ constructor(scope, node, kind, declaration, initial) {
13
+ this.scope = scope;
14
+ this.node = node;
15
+ this.kind = kind;
16
+ this.declaration = declaration;
17
+ this.initial = initial;
18
+ }
19
+ get updated() {
20
+ return this.mutated || this.reassigned;
21
+ }
22
+ isFunction() {
23
+ if (this.updated)
24
+ return false;
25
+ const type = this.initial?.type;
26
+ return (type === 'ArrowFunctionExpression' ||
27
+ type === 'FunctionExpression' ||
28
+ type === 'FunctionDeclaration');
29
+ }
30
+ }
31
+ export class Scope {
32
+ parent;
33
+ porous;
34
+ depth;
35
+ declarations = new Map();
36
+ references = new Map();
37
+ #duplicate;
38
+ constructor(parent, porous, duplicate) {
39
+ this.parent = parent;
40
+ this.porous = porous;
41
+ this.depth = parent === null ? 0 : parent.depth + (porous ? 0 : 1);
42
+ this.#duplicate = duplicate;
43
+ }
44
+ child(porous = false) {
45
+ return new Scope(this, porous, this.#duplicate);
46
+ }
47
+ declare(node, kind, declaration, initial = null) {
48
+ if (this.parent !== null) {
49
+ if (declaration === 'var' && this.porous)
50
+ return this.parent.declare(node, kind, declaration);
51
+ if (declaration === 'import')
52
+ return this.parent.declare(node, kind, declaration, initial);
53
+ }
54
+ const existing = this.declarations.get(node.name);
55
+ if (existing !== undefined && existing.declaration !== 'var' && declaration !== 'var') {
56
+ this.#duplicate(node);
57
+ }
58
+ const binding = new Binding(this, node, kind, declaration, initial);
59
+ this.declarations.set(node.name, binding);
60
+ return binding;
61
+ }
62
+ get(name) {
63
+ for (let scope = this; scope !== null; scope = scope.parent) {
64
+ const binding = scope.declarations.get(name);
65
+ if (binding !== undefined)
66
+ return binding;
67
+ }
68
+ return null;
69
+ }
70
+ owner(name) {
71
+ for (let scope = this; scope !== null; scope = scope.parent) {
72
+ if (scope.declarations.has(name))
73
+ return scope;
74
+ }
75
+ return null;
76
+ }
77
+ reference(reference) {
78
+ const name = reference.node.name;
79
+ for (let scope = this; scope !== null; scope = scope.parent) {
80
+ let list = scope.references.get(name);
81
+ if (list === undefined)
82
+ scope.references.set(name, (list = []));
83
+ list.push(reference);
84
+ const binding = scope.declarations.get(name);
85
+ if (binding !== undefined) {
86
+ binding.references.push(reference);
87
+ return;
88
+ }
89
+ }
90
+ }
91
+ }
92
+ export function typeOf(node) {
93
+ if ('type' in node)
94
+ return node.type;
95
+ if ('kind' in node)
96
+ return node.kind;
97
+ return 'fragment';
98
+ }
99
+ export function isReference(node, parent) {
100
+ if (node.type === 'MemberExpression')
101
+ return !node.computed && isReference(node.object, node);
102
+ if (node.type !== 'Identifier')
103
+ return false;
104
+ if (parent === null || parent === undefined)
105
+ return true;
106
+ switch (parent.type) {
107
+ case 'MemberExpression':
108
+ return parent.computed || node === parent.object;
109
+ case 'MethodDefinition':
110
+ return parent.computed;
111
+ case 'MetaProperty':
112
+ return parent.meta === node;
113
+ case 'PropertyDefinition':
114
+ return parent.computed || node === parent.value;
115
+ case 'Property':
116
+ return parent.computed || node === parent.value;
117
+ case 'ExportSpecifier':
118
+ case 'ImportSpecifier':
119
+ return node === parent.local;
120
+ case 'LabeledStatement':
121
+ case 'BreakStatement':
122
+ case 'ContinueStatement':
123
+ return false;
124
+ default:
125
+ return true;
126
+ }
127
+ }
128
+ export function identifiers(pattern, into = []) {
129
+ switch (pattern.type) {
130
+ case 'Identifier':
131
+ into.push(pattern);
132
+ break;
133
+ case 'ObjectPattern':
134
+ for (const property of pattern.properties) {
135
+ identifiers(property.type === 'RestElement' ? property : property.value, into);
136
+ }
137
+ break;
138
+ case 'ArrayPattern':
139
+ for (const element of pattern.elements)
140
+ if (element !== null)
141
+ identifiers(element, into);
142
+ break;
143
+ case 'RestElement':
144
+ identifiers(pattern.argument, into);
145
+ break;
146
+ case 'AssignmentPattern':
147
+ identifiers(pattern.left, into);
148
+ break;
149
+ default:
150
+ break;
151
+ }
152
+ return into;
153
+ }
154
+ export function leaves(pattern, into = []) {
155
+ switch (pattern.type) {
156
+ case 'ObjectPattern':
157
+ for (const property of pattern.properties) {
158
+ leaves(property.type === 'RestElement' ? property : property.value, into);
159
+ }
160
+ break;
161
+ case 'ArrayPattern':
162
+ for (const element of pattern.elements)
163
+ if (element !== null)
164
+ leaves(element, into);
165
+ break;
166
+ case 'RestElement':
167
+ leaves(pattern.argument, into);
168
+ break;
169
+ case 'AssignmentPattern':
170
+ leaves(pattern.left, into);
171
+ break;
172
+ case 'Identifier':
173
+ case 'MemberExpression':
174
+ into.push(pattern);
175
+ break;
176
+ default:
177
+ break;
178
+ }
179
+ return into;
180
+ }
181
+ export function base(expression) {
182
+ let node = expression;
183
+ while (node.type === 'MemberExpression')
184
+ node = node.object;
185
+ return node.type === 'Identifier' ? node : null;
186
+ }
187
+ //# sourceMappingURL=scope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope.js","sourceRoot":"","sources":["../../../../src/compiler/analysis/validate/scope.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type * as ES from 'estree';
2
+ import type * as IR from '../../ir/nodes.ts';
3
+ import type { Runes } from '../../ir/port.ts';
4
+ import { Scope, type Duplicate, type PathNode } from './scope.ts';
5
+ export declare function runeOf(runes: Runes, node: ES.Node | null | undefined): string | null;
6
+ export declare function settle(declarator: ES.VariableDeclarator, scope: Scope, runes: Runes, rune: string | null): void;
7
+ export declare class Scopes {
8
+ #private;
9
+ readonly map: Map<object, Scope>;
10
+ readonly runes: Runes;
11
+ readonly path: PathNode[];
12
+ constructor(runes: Runes, duplicate: Duplicate);
13
+ root(parent: Scope | null): Scope;
14
+ program(program: ES.Program, scope: Scope): void;
15
+ declarator(declarator: ES.VariableDeclarator, scope: Scope, kind: ES.VariableDeclaration['kind'], template: boolean): void;
16
+ es(node: ES.Node, scope: Scope): void;
17
+ expression(node: ES.Node, scope: Scope): void;
18
+ fragment(fragment: IR.Fragment, scope: Scope, transparent: boolean): Scope;
19
+ attribute(attribute: IR.Attribute, scope: Scope): void;
20
+ node(node: IR.Node, scope: Scope): void;
21
+ finish(): void;
22
+ }
23
+ //# sourceMappingURL=scopes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scopes.d.ts","sourceRoot":"","sources":["../../../../src/compiler/analysis/validate/scopes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAKN,KAAK,EAEL,KAAK,SAAS,EACd,KAAK,QAAQ,EAEb,MAAM,YAAY,CAAC;AAapB,wBAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGpF;AAmCD,wBAAgB,MAAM,CACrB,UAAU,EAAE,EAAE,CAAC,kBAAkB,EACjC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,GAAG,IAAI,GACjB,IAAI,CAiBN;AAED,qBAAa,MAAM;;IAClB,QAAQ,CAAC,GAAG,qBAA4B;IACxC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAM;IAK/B,YAAY,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAG7C;IAED,IAAI,CAAC,MAAM,EAAE,KAAK,GAAG,IAAI,GAAG,KAAK,CAEhC;IAED,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAG/C;IAqBD,UAAU,CACT,UAAU,EAAE,EAAE,CAAC,kBAAkB,EACjC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,EACpC,QAAQ,EAAE,OAAO,GACf,IAAI,CAUN;IAED,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAmEpC;IAQD,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAE5C;IAED,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,GAAG,KAAK,CAKzE;IAkBD,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAgCrD;IA2DD,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAgFtC;IAED,MAAM,IAAI,IAAI,CAWb;CACD"}
@@ -0,0 +1,436 @@
1
+ import { children } from '../../ir/estree.js';
2
+ import { base, identifiers, isReference, leaves, Scope } from './scope.js';
3
+ function isCallable(node) {
4
+ const type = node?.type;
5
+ return (type === 'FunctionDeclaration' ||
6
+ type === 'FunctionExpression' ||
7
+ type === 'ArrowFunctionExpression');
8
+ }
9
+ export function runeOf(runes, node) {
10
+ if (node?.type !== 'CallExpression')
11
+ return null;
12
+ return runes.get(node.callee) ?? null;
13
+ }
14
+ function settleProps(pattern, scope, runes) {
15
+ if (pattern.type === 'Identifier') {
16
+ const binding = scope.get(pattern.name);
17
+ if (binding !== null) {
18
+ binding.initial = null;
19
+ binding.kind = 'rest_prop';
20
+ }
21
+ return;
22
+ }
23
+ if (pattern.type !== 'ObjectPattern')
24
+ return;
25
+ for (const property of pattern.properties) {
26
+ if (property.type === 'RestElement') {
27
+ for (const id of identifiers(property)) {
28
+ const binding = scope.get(id.name);
29
+ if (binding !== null)
30
+ binding.kind = 'rest_prop';
31
+ }
32
+ continue;
33
+ }
34
+ const value = property.value.type === 'AssignmentPattern' ? property.value.left : property.value;
35
+ if (value.type !== 'Identifier')
36
+ continue;
37
+ const binding = scope.get(value.name);
38
+ if (binding === null)
39
+ continue;
40
+ const initial = property.value.type === 'AssignmentPattern' ? property.value.right : null;
41
+ if (initial?.type === 'CallExpression' && runes.get(initial.callee) === '$bindable') {
42
+ binding.initial = initial.arguments[0] ?? null;
43
+ binding.kind = 'bindable_prop';
44
+ }
45
+ else {
46
+ binding.initial = initial;
47
+ }
48
+ }
49
+ }
50
+ export function settle(declarator, scope, runes, rune) {
51
+ const kind = rune === '$state'
52
+ ? 'state'
53
+ : rune === '$state.raw'
54
+ ? 'raw_state'
55
+ : rune === '$derived' || rune === '$derived.by'
56
+ ? 'derived'
57
+ : rune === '$props'
58
+ ? 'prop'
59
+ : null;
60
+ if (kind === null)
61
+ return;
62
+ for (const id of identifiers(declarator.id)) {
63
+ const binding = scope.get(id.name);
64
+ if (binding !== null)
65
+ binding.kind = kind;
66
+ }
67
+ if (rune === '$props')
68
+ settleProps(declarator.id, scope, runes);
69
+ }
70
+ export class Scopes {
71
+ map = new Map();
72
+ runes;
73
+ path = [];
74
+ #references = [];
75
+ #updates = [];
76
+ #duplicate;
77
+ constructor(runes, duplicate) {
78
+ this.runes = runes;
79
+ this.#duplicate = duplicate;
80
+ }
81
+ root(parent) {
82
+ return parent === null ? new Scope(null, false, this.#duplicate) : parent.child();
83
+ }
84
+ program(program, scope) {
85
+ this.map.set(program, scope);
86
+ this.es(program, scope);
87
+ }
88
+ #params(scope, params) {
89
+ for (const param of params) {
90
+ for (const id of identifiers(param)) {
91
+ scope.declare(id, 'normal', param.type === 'RestElement' ? 'rest_param' : 'param');
92
+ }
93
+ }
94
+ }
95
+ #children(node, scope) {
96
+ this.path.push(node);
97
+ children(node, (child) => this.es(child, scope));
98
+ this.path.pop();
99
+ }
100
+ #scoped(node, scope) {
101
+ this.map.set(node, scope);
102
+ this.#children(node, scope);
103
+ }
104
+ declarator(declarator, scope, kind, template) {
105
+ for (const id of identifiers(declarator.id)) {
106
+ const binding = scope.declare(id, template ? 'template' : 'normal', kind, declarator.init ?? null);
107
+ binding.templateDeclaration = true;
108
+ }
109
+ }
110
+ es(node, scope) {
111
+ switch (node.type) {
112
+ case 'Identifier': {
113
+ const parent = this.path.at(-1);
114
+ if (parent !== undefined && isReference(node, parent)) {
115
+ this.#references.push([scope, { node, path: this.path.slice() }]);
116
+ }
117
+ return;
118
+ }
119
+ case 'AssignmentExpression':
120
+ this.#updates.push([scope, node.left]);
121
+ break;
122
+ case 'UpdateExpression':
123
+ this.#updates.push([scope, node.argument]);
124
+ break;
125
+ case 'ImportDeclaration':
126
+ for (const specifier of node.specifiers)
127
+ scope.declare(specifier.local, 'normal', 'import', node);
128
+ return;
129
+ case 'FunctionExpression': {
130
+ const inner = scope.child(true);
131
+ if (node.id)
132
+ inner.declare(node.id, 'normal', 'function');
133
+ this.#params(inner, node.params);
134
+ this.#scoped(node, inner);
135
+ return;
136
+ }
137
+ case 'FunctionDeclaration': {
138
+ if (node.id)
139
+ scope.declare(node.id, 'normal', 'function', node);
140
+ const inner = scope.child(true);
141
+ this.#params(inner, node.params);
142
+ this.#scoped(node, inner);
143
+ return;
144
+ }
145
+ case 'ArrowFunctionExpression': {
146
+ const inner = scope.child(true);
147
+ this.#params(inner, node.params);
148
+ this.#scoped(node, inner);
149
+ return;
150
+ }
151
+ case 'ForStatement':
152
+ case 'ForInStatement':
153
+ case 'ForOfStatement':
154
+ case 'SwitchStatement':
155
+ this.#scoped(node, scope.child(true));
156
+ return;
157
+ case 'BlockStatement':
158
+ this.#scoped(node, scope.child(!isCallable(this.path.at(-1))));
159
+ return;
160
+ case 'ClassDeclaration':
161
+ if (node.id)
162
+ scope.declare(node.id, 'normal', 'let', node);
163
+ break;
164
+ case 'VariableDeclaration':
165
+ for (const declarator of node.declarations)
166
+ this.declarator(declarator, scope, node.kind, false);
167
+ break;
168
+ case 'CatchClause':
169
+ if (node.param) {
170
+ const inner = scope.child(true);
171
+ for (const id of identifiers(node.param))
172
+ inner.declare(id, 'normal', 'let');
173
+ this.#scoped(node, inner);
174
+ return;
175
+ }
176
+ break;
177
+ default:
178
+ break;
179
+ }
180
+ this.#children(node, scope);
181
+ }
182
+ #within(node, run) {
183
+ this.path.push(node);
184
+ run();
185
+ this.path.pop();
186
+ }
187
+ expression(node, scope) {
188
+ this.es(node, scope);
189
+ }
190
+ fragment(fragment, scope, transparent) {
191
+ const inner = scope.child(transparent);
192
+ this.map.set(fragment, inner);
193
+ this.#nodes(fragment, inner);
194
+ return inner;
195
+ }
196
+ #nodes(fragment, scope) {
197
+ this.#within(fragment, () => {
198
+ for (const node of fragment.nodes)
199
+ this.node(node, scope);
200
+ });
201
+ }
202
+ #value(value, scope) {
203
+ if (value.kind === 'expression')
204
+ this.expression(value.expression, scope);
205
+ else if (value.kind === 'text') {
206
+ for (const part of value.parts) {
207
+ if (part.kind === 'expression')
208
+ this.#within(part, () => this.expression(part.expression, scope));
209
+ }
210
+ }
211
+ }
212
+ attribute(attribute, scope) {
213
+ this.#within(attribute, () => {
214
+ switch (attribute.kind) {
215
+ case 'attribute':
216
+ case 'style':
217
+ this.#value(attribute.value, scope);
218
+ return;
219
+ case 'spread':
220
+ case 'class':
221
+ case 'attachment':
222
+ this.expression(attribute.expression, scope);
223
+ return;
224
+ case 'binding':
225
+ if (attribute.expression.type !== 'SequenceExpression') {
226
+ this.#updates.push([scope, attribute.expression]);
227
+ }
228
+ this.expression(attribute.expression, scope);
229
+ return;
230
+ case 'action':
231
+ this.expression(attribute.action, scope);
232
+ if (attribute.argument)
233
+ this.expression(attribute.argument, scope);
234
+ return;
235
+ case 'transition':
236
+ this.expression(attribute.transition, scope);
237
+ if (attribute.argument)
238
+ this.expression(attribute.argument, scope);
239
+ return;
240
+ case 'animation':
241
+ this.expression(attribute.animation, scope);
242
+ if (attribute.argument)
243
+ this.expression(attribute.argument, scope);
244
+ return;
245
+ }
246
+ });
247
+ }
248
+ #list(node, scope) {
249
+ this.expression(node.collection, scope);
250
+ if (node.fallback)
251
+ this.fragment(node.fallback, scope, false);
252
+ const inner = scope.child();
253
+ this.map.set(node, inner);
254
+ this.map.set(node.body, inner);
255
+ if (node.item) {
256
+ const rest = new Set();
257
+ collectRest(node.item, false, rest);
258
+ for (const id of identifiers(node.item)) {
259
+ const binding = inner.declare(id, 'each', 'const');
260
+ binding.insideRest = rest.has(id);
261
+ }
262
+ this.expression(node.item, inner);
263
+ }
264
+ if (node.index) {
265
+ const keyed = node.kind === 'keyed-list' &&
266
+ (node.key.type !== 'Identifier' || node.key.name !== node.index.name);
267
+ inner.declare({ type: 'Identifier', name: node.index.name }, keyed ? 'template' : 'static', 'const', node);
268
+ }
269
+ if (node.kind === 'keyed-list')
270
+ this.expression(node.key, inner);
271
+ this.#nodes(node.body, inner);
272
+ }
273
+ #outcome(outcome, scope) {
274
+ const body = this.fragment(outcome.body, scope, false);
275
+ if (outcome.binding === null)
276
+ return;
277
+ const value = scope.child();
278
+ this.map.set(outcome.binding, value);
279
+ this.expression(outcome.binding, value);
280
+ for (const id of identifiers(outcome.binding)) {
281
+ body.declare(id, 'template', 'const');
282
+ value.declare(id, 'normal', 'const');
283
+ }
284
+ }
285
+ #snippet(node, scope) {
286
+ scope.declare(node.name, 'normal', 'function', node);
287
+ const inner = scope.child();
288
+ this.map.set(node, inner);
289
+ for (const parameter of node.parameters) {
290
+ for (const id of identifiers(parameter))
291
+ inner.declare(id, 'snippet', 'let');
292
+ }
293
+ this.expression(node.name, inner);
294
+ for (const parameter of node.parameters)
295
+ this.expression(parameter, inner);
296
+ const body = this.fragment(node.body, inner, false);
297
+ for (const [name, binding] of body.declarations) {
298
+ if (inner.declarations.has(name))
299
+ this.#duplicate(binding.node);
300
+ }
301
+ }
302
+ node(node, scope) {
303
+ this.#within(node, () => {
304
+ switch (node.kind) {
305
+ case 'text':
306
+ case 'comment':
307
+ return;
308
+ case 'expression':
309
+ case 'raw-html':
310
+ this.expression(node.expression, scope);
311
+ return;
312
+ case 'element':
313
+ case 'special':
314
+ case 'boundary':
315
+ for (const attribute of node.attributes)
316
+ this.attribute(attribute, scope);
317
+ this.fragment(node.body, scope, true);
318
+ return;
319
+ case 'dynamic-element':
320
+ this.expression(node.tag, scope);
321
+ for (const attribute of node.attributes)
322
+ this.attribute(attribute, scope);
323
+ this.fragment(node.body, scope, true);
324
+ return;
325
+ case 'slot':
326
+ for (const attribute of node.attributes)
327
+ this.attribute(attribute, scope);
328
+ this.fragment(node.fallback, scope, true);
329
+ return;
330
+ case 'component': {
331
+ for (const attribute of node.attributes)
332
+ this.attribute(attribute, scope);
333
+ const inner = scope.child();
334
+ this.map.set(node.body, inner);
335
+ this.#nodes(node.body, inner);
336
+ return;
337
+ }
338
+ case 'branch':
339
+ for (const arm of node.arms) {
340
+ this.expression(arm.test, scope);
341
+ this.fragment(arm.body, scope, false);
342
+ }
343
+ if (node.fallback)
344
+ this.fragment(node.fallback, scope, false);
345
+ return;
346
+ case 'keyed-list':
347
+ case 'unkeyed-list':
348
+ this.#list(node, scope);
349
+ return;
350
+ case 'keyed-block':
351
+ this.expression(node.key, scope);
352
+ this.fragment(node.body, scope, false);
353
+ return;
354
+ case 'async-block':
355
+ this.expression(node.promise, scope);
356
+ if (node.pending)
357
+ this.fragment(node.pending, scope, false);
358
+ if (node.resolved)
359
+ this.#outcome(node.resolved, scope);
360
+ if (node.rejected)
361
+ this.#outcome(node.rejected, scope);
362
+ return;
363
+ case 'snippet':
364
+ this.#snippet(node, scope);
365
+ return;
366
+ case 'render':
367
+ this.expression(node.call, scope);
368
+ return;
369
+ case 'constant':
370
+ this.declarator(node.declarator, scope, 'const', true);
371
+ this.#within(node.declarator, () => {
372
+ this.expression(node.declarator.id, scope);
373
+ if (node.declarator.init)
374
+ this.expression(node.declarator.init, scope);
375
+ });
376
+ return;
377
+ case 'declaration':
378
+ this.expression(node.declaration, scope);
379
+ return;
380
+ case 'debug':
381
+ for (const identifier of node.identifiers)
382
+ this.expression(identifier, scope);
383
+ return;
384
+ case 'title':
385
+ for (const part of node.parts) {
386
+ if (part.kind === 'expression')
387
+ this.#within(part, () => this.expression(part.expression, scope));
388
+ }
389
+ return;
390
+ }
391
+ });
392
+ }
393
+ finish() {
394
+ for (const [scope, reference] of this.#references)
395
+ scope.reference(reference);
396
+ for (const [scope, node] of this.#updates) {
397
+ for (const leaf of leaves(node)) {
398
+ const left = base(leaf);
399
+ const binding = left === null ? null : scope.get(left.name);
400
+ if (binding === null || left === binding.node)
401
+ continue;
402
+ if (left === leaf)
403
+ binding.reassigned = true;
404
+ else
405
+ binding.mutated = true;
406
+ }
407
+ }
408
+ }
409
+ }
410
+ function collectRest(pattern, inside, into) {
411
+ switch (pattern.type) {
412
+ case 'Identifier':
413
+ if (inside)
414
+ into.add(pattern);
415
+ return;
416
+ case 'ObjectPattern':
417
+ for (const property of pattern.properties) {
418
+ collectRest(property.type === 'RestElement' ? property : property.value, inside, into);
419
+ }
420
+ return;
421
+ case 'ArrayPattern':
422
+ for (const element of pattern.elements)
423
+ if (element !== null)
424
+ collectRest(element, inside, into);
425
+ return;
426
+ case 'RestElement':
427
+ collectRest(pattern.argument, true, into);
428
+ return;
429
+ case 'AssignmentPattern':
430
+ collectRest(pattern.left, inside, into);
431
+ return;
432
+ default:
433
+ return;
434
+ }
435
+ }
436
+ //# sourceMappingURL=scopes.js.map