svelte 5.0.0-next.99 → 5.0.1

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 (336) hide show
  1. package/compiler/index.js +1 -1
  2. package/elements.d.ts +102 -33
  3. package/package.json +31 -34
  4. package/src/action/public.d.ts +0 -4
  5. package/src/ambient.d.ts +179 -12
  6. package/src/animate/index.js +40 -14
  7. package/src/compiler/errors.js +1461 -510
  8. package/src/compiler/index.js +107 -93
  9. package/src/compiler/legacy.js +110 -80
  10. package/src/compiler/migrate/index.js +1598 -0
  11. package/src/compiler/phases/1-parse/acorn.js +56 -9
  12. package/src/compiler/phases/1-parse/index.js +21 -38
  13. package/src/compiler/phases/1-parse/read/context.js +18 -23
  14. package/src/compiler/phases/1-parse/read/expression.js +11 -5
  15. package/src/compiler/phases/1-parse/read/options.js +95 -81
  16. package/src/compiler/phases/1-parse/read/script.js +53 -30
  17. package/src/compiler/phases/1-parse/read/style.js +52 -56
  18. package/src/compiler/phases/1-parse/remove_typescript_nodes.js +74 -1
  19. package/src/compiler/phases/1-parse/state/element.js +221 -255
  20. package/src/compiler/phases/1-parse/state/fragment.js +2 -1
  21. package/src/compiler/phases/1-parse/state/tag.js +88 -72
  22. package/src/compiler/phases/1-parse/state/text.js +4 -2
  23. package/src/compiler/phases/1-parse/utils/create.js +7 -2
  24. package/src/compiler/phases/1-parse/utils/html.js +0 -46
  25. package/src/compiler/phases/2-analyze/css/css-analyze.js +210 -87
  26. package/src/compiler/phases/2-analyze/css/css-prune.js +361 -122
  27. package/src/compiler/phases/2-analyze/css/css-warn.js +15 -7
  28. package/src/compiler/phases/2-analyze/css/utils.js +4 -2
  29. package/src/compiler/phases/2-analyze/index.js +460 -1083
  30. package/src/compiler/phases/2-analyze/types.d.ts +7 -11
  31. package/src/compiler/phases/2-analyze/visitors/ArrowFunctionExpression.js +11 -0
  32. package/src/compiler/phases/2-analyze/visitors/AssignmentExpression.js +28 -0
  33. package/src/compiler/phases/2-analyze/visitors/Attribute.js +219 -0
  34. package/src/compiler/phases/2-analyze/visitors/AwaitBlock.js +45 -0
  35. package/src/compiler/phases/2-analyze/visitors/BindDirective.js +222 -0
  36. package/src/compiler/phases/2-analyze/visitors/CallExpression.js +183 -0
  37. package/src/compiler/phases/2-analyze/visitors/ClassBody.js +27 -0
  38. package/src/compiler/phases/2-analyze/visitors/ClassDeclaration.js +25 -0
  39. package/src/compiler/phases/2-analyze/visitors/ClassDirective.js +13 -0
  40. package/src/compiler/phases/2-analyze/visitors/Component.js +20 -0
  41. package/src/compiler/phases/2-analyze/visitors/ConstTag.js +34 -0
  42. package/src/compiler/phases/2-analyze/visitors/DebugTag.js +15 -0
  43. package/src/compiler/phases/2-analyze/visitors/EachBlock.js +42 -0
  44. package/src/compiler/phases/2-analyze/visitors/ExportDefaultDeclaration.js +15 -0
  45. package/src/compiler/phases/2-analyze/visitors/ExportNamedDeclaration.js +61 -0
  46. package/src/compiler/phases/2-analyze/visitors/ExportSpecifier.js +44 -0
  47. package/src/compiler/phases/2-analyze/visitors/ExpressionStatement.js +38 -0
  48. package/src/compiler/phases/2-analyze/visitors/ExpressionTag.js +23 -0
  49. package/src/compiler/phases/2-analyze/visitors/FunctionDeclaration.js +16 -0
  50. package/src/compiler/phases/2-analyze/visitors/FunctionExpression.js +11 -0
  51. package/src/compiler/phases/2-analyze/visitors/HtmlTag.js +19 -0
  52. package/src/compiler/phases/2-analyze/visitors/Identifier.js +125 -0
  53. package/src/compiler/phases/2-analyze/visitors/IfBlock.js +21 -0
  54. package/src/compiler/phases/2-analyze/visitors/ImportDeclaration.js +30 -0
  55. package/src/compiler/phases/2-analyze/visitors/KeyBlock.js +20 -0
  56. package/src/compiler/phases/2-analyze/visitors/LabeledStatement.js +95 -0
  57. package/src/compiler/phases/2-analyze/visitors/LetDirective.js +24 -0
  58. package/src/compiler/phases/2-analyze/visitors/MemberExpression.js +54 -0
  59. package/src/compiler/phases/2-analyze/visitors/NewExpression.js +15 -0
  60. package/src/compiler/phases/2-analyze/visitors/OnDirective.js +28 -0
  61. package/src/compiler/phases/2-analyze/visitors/RegularElement.js +175 -0
  62. package/src/compiler/phases/2-analyze/visitors/RenderTag.js +42 -0
  63. package/src/compiler/phases/2-analyze/visitors/SlotElement.js +42 -0
  64. package/src/compiler/phases/2-analyze/visitors/SnippetBlock.js +55 -0
  65. package/src/compiler/phases/2-analyze/visitors/SpreadAttribute.js +13 -0
  66. package/src/compiler/phases/2-analyze/visitors/StyleDirective.js +37 -0
  67. package/src/compiler/phases/2-analyze/visitors/SvelteBody.js +22 -0
  68. package/src/compiler/phases/2-analyze/visitors/SvelteComponent.js +18 -0
  69. package/src/compiler/phases/2-analyze/visitors/SvelteDocument.js +12 -0
  70. package/src/compiler/phases/2-analyze/visitors/SvelteElement.js +65 -0
  71. package/src/compiler/phases/2-analyze/visitors/SvelteFragment.js +27 -0
  72. package/src/compiler/phases/2-analyze/visitors/SvelteHead.js +18 -0
  73. package/src/compiler/phases/2-analyze/visitors/SvelteSelf.js +36 -0
  74. package/src/compiler/phases/2-analyze/visitors/SvelteWindow.js +12 -0
  75. package/src/compiler/phases/2-analyze/visitors/TaggedTemplateExpression.js +23 -0
  76. package/src/compiler/phases/2-analyze/visitors/Text.js +17 -0
  77. package/src/compiler/phases/2-analyze/visitors/TitleElement.js +21 -0
  78. package/src/compiler/phases/2-analyze/visitors/UpdateExpression.js +25 -0
  79. package/src/compiler/phases/2-analyze/visitors/UseDirective.js +12 -0
  80. package/src/compiler/phases/2-analyze/visitors/VariableDeclarator.js +120 -0
  81. package/src/compiler/phases/2-analyze/{a11y.js → visitors/shared/a11y.js} +191 -184
  82. package/src/compiler/phases/2-analyze/visitors/shared/attribute.js +123 -0
  83. package/src/compiler/phases/2-analyze/visitors/shared/component.js +108 -0
  84. package/src/compiler/phases/2-analyze/visitors/shared/element.js +160 -0
  85. package/src/compiler/phases/2-analyze/visitors/shared/fragment.js +15 -0
  86. package/src/compiler/phases/2-analyze/visitors/shared/function.js +20 -0
  87. package/src/compiler/phases/2-analyze/visitors/shared/special-element.js +16 -0
  88. package/src/compiler/phases/2-analyze/visitors/shared/utils.js +227 -0
  89. package/src/compiler/phases/3-transform/client/transform-client.js +365 -311
  90. package/src/compiler/phases/3-transform/client/types.d.ts +32 -9
  91. package/src/compiler/phases/3-transform/client/utils.js +173 -571
  92. package/src/compiler/phases/3-transform/client/visitors/AnimateDirective.js +28 -0
  93. package/src/compiler/phases/3-transform/client/visitors/ArrowFunctionExpression.js +11 -0
  94. package/src/compiler/phases/3-transform/client/visitors/AssignmentExpression.js +117 -0
  95. package/src/compiler/phases/3-transform/client/visitors/Attribute.js +14 -0
  96. package/src/compiler/phases/3-transform/client/visitors/AwaitBlock.js +67 -0
  97. package/src/compiler/phases/3-transform/client/visitors/BinaryExpression.js +34 -0
  98. package/src/compiler/phases/3-transform/client/visitors/BindDirective.js +252 -0
  99. package/src/compiler/phases/3-transform/client/visitors/BlockStatement.js +12 -0
  100. package/src/compiler/phases/3-transform/client/visitors/BreakStatement.js +20 -0
  101. package/src/compiler/phases/3-transform/client/visitors/CallExpression.js +62 -0
  102. package/src/compiler/phases/3-transform/client/visitors/ClassBody.js +215 -0
  103. package/src/compiler/phases/3-transform/client/visitors/Comment.js +11 -0
  104. package/src/compiler/phases/3-transform/client/visitors/Component.js +32 -0
  105. package/src/compiler/phases/3-transform/client/visitors/ConstTag.js +76 -0
  106. package/src/compiler/phases/3-transform/client/visitors/DebugTag.js +22 -0
  107. package/src/compiler/phases/3-transform/client/visitors/EachBlock.js +346 -0
  108. package/src/compiler/phases/3-transform/client/visitors/ExportNamedDeclaration.js +19 -0
  109. package/src/compiler/phases/3-transform/client/visitors/ExpressionStatement.js +26 -0
  110. package/src/compiler/phases/3-transform/client/visitors/Fragment.js +267 -0
  111. package/src/compiler/phases/3-transform/client/visitors/FunctionDeclaration.js +23 -0
  112. package/src/compiler/phases/3-transform/client/visitors/FunctionExpression.js +11 -0
  113. package/src/compiler/phases/3-transform/client/visitors/HtmlTag.js +27 -0
  114. package/src/compiler/phases/3-transform/client/visitors/Identifier.js +41 -0
  115. package/src/compiler/phases/3-transform/client/visitors/IfBlock.js +55 -0
  116. package/src/compiler/phases/3-transform/client/visitors/ImportDeclaration.js +16 -0
  117. package/src/compiler/phases/3-transform/client/visitors/KeyBlock.js +19 -0
  118. package/src/compiler/phases/3-transform/client/visitors/LabeledStatement.js +64 -0
  119. package/src/compiler/phases/3-transform/client/visitors/LetDirective.js +54 -0
  120. package/src/compiler/phases/3-transform/client/visitors/MemberExpression.js +19 -0
  121. package/src/compiler/phases/3-transform/client/visitors/OnDirective.js +38 -0
  122. package/src/compiler/phases/3-transform/client/visitors/Program.js +139 -0
  123. package/src/compiler/phases/3-transform/client/visitors/RegularElement.js +717 -0
  124. package/src/compiler/phases/3-transform/client/visitors/RenderTag.js +52 -0
  125. package/src/compiler/phases/3-transform/client/visitors/SlotElement.js +70 -0
  126. package/src/compiler/phases/3-transform/client/visitors/SnippetBlock.js +90 -0
  127. package/src/compiler/phases/3-transform/client/visitors/SpreadAttribute.js +10 -0
  128. package/src/compiler/phases/3-transform/client/visitors/SvelteBody.js +11 -0
  129. package/src/compiler/phases/3-transform/client/visitors/SvelteComponent.js +12 -0
  130. package/src/compiler/phases/3-transform/client/visitors/SvelteDocument.js +11 -0
  131. package/src/compiler/phases/3-transform/client/visitors/SvelteElement.js +155 -0
  132. package/src/compiler/phases/3-transform/client/visitors/SvelteFragment.js +17 -0
  133. package/src/compiler/phases/3-transform/client/visitors/SvelteHead.js +20 -0
  134. package/src/compiler/phases/3-transform/client/visitors/SvelteSelf.js +12 -0
  135. package/src/compiler/phases/3-transform/client/visitors/SvelteWindow.js +11 -0
  136. package/src/compiler/phases/3-transform/client/visitors/TitleElement.js +24 -0
  137. package/src/compiler/phases/3-transform/client/visitors/TransitionDirective.js +29 -0
  138. package/src/compiler/phases/3-transform/client/visitors/UpdateExpression.js +69 -0
  139. package/src/compiler/phases/3-transform/client/visitors/UseDirective.js +34 -0
  140. package/src/compiler/phases/3-transform/client/visitors/VariableDeclaration.js +317 -0
  141. package/src/compiler/phases/3-transform/client/visitors/shared/component.js +379 -0
  142. package/src/compiler/phases/3-transform/client/visitors/shared/declarations.js +53 -0
  143. package/src/compiler/phases/3-transform/client/visitors/shared/element.js +220 -0
  144. package/src/compiler/phases/3-transform/client/visitors/shared/events.js +185 -0
  145. package/src/compiler/phases/3-transform/client/visitors/shared/fragment.js +159 -0
  146. package/src/compiler/phases/3-transform/client/visitors/shared/function.js +30 -0
  147. package/src/compiler/phases/3-transform/client/visitors/shared/special_element.js +22 -0
  148. package/src/compiler/phases/3-transform/client/visitors/shared/utils.js +266 -0
  149. package/src/compiler/phases/3-transform/css/index.js +80 -44
  150. package/src/compiler/phases/3-transform/index.js +30 -67
  151. package/src/compiler/phases/3-transform/server/transform-server.js +155 -2178
  152. package/src/compiler/phases/3-transform/server/types.d.ts +5 -35
  153. package/src/compiler/phases/3-transform/server/visitors/AssignmentExpression.js +68 -0
  154. package/src/compiler/phases/3-transform/server/visitors/AwaitBlock.js +33 -0
  155. package/src/compiler/phases/3-transform/server/visitors/CallExpression.js +41 -0
  156. package/src/compiler/phases/3-transform/server/visitors/ClassBody.js +121 -0
  157. package/src/compiler/phases/3-transform/server/visitors/Component.js +12 -0
  158. package/src/compiler/phases/3-transform/server/visitors/ConstTag.js +16 -0
  159. package/src/compiler/phases/3-transform/server/visitors/DebugTag.js +24 -0
  160. package/src/compiler/phases/3-transform/server/visitors/EachBlock.js +62 -0
  161. package/src/compiler/phases/3-transform/server/visitors/ExpressionStatement.js +18 -0
  162. package/src/compiler/phases/3-transform/server/visitors/Fragment.js +46 -0
  163. package/src/compiler/phases/3-transform/server/visitors/HtmlTag.js +13 -0
  164. package/src/compiler/phases/3-transform/server/visitors/Identifier.js +19 -0
  165. package/src/compiler/phases/3-transform/server/visitors/IfBlock.js +28 -0
  166. package/src/compiler/phases/3-transform/server/visitors/KeyBlock.js +16 -0
  167. package/src/compiler/phases/3-transform/server/visitors/LabeledStatement.js +24 -0
  168. package/src/compiler/phases/3-transform/server/visitors/MemberExpression.js +23 -0
  169. package/src/compiler/phases/3-transform/server/visitors/PropertyDefinition.js +36 -0
  170. package/src/compiler/phases/3-transform/server/visitors/RegularElement.js +104 -0
  171. package/src/compiler/phases/3-transform/server/visitors/RenderTag.js +35 -0
  172. package/src/compiler/phases/3-transform/server/visitors/SlotElement.js +54 -0
  173. package/src/compiler/phases/3-transform/server/visitors/SnippetBlock.js +22 -0
  174. package/src/compiler/phases/3-transform/server/visitors/SpreadAttribute.js +10 -0
  175. package/src/compiler/phases/3-transform/server/visitors/SvelteComponent.js +12 -0
  176. package/src/compiler/phases/3-transform/server/visitors/SvelteElement.js +72 -0
  177. package/src/compiler/phases/3-transform/server/visitors/SvelteFragment.js +11 -0
  178. package/src/compiler/phases/3-transform/server/visitors/SvelteHead.js +16 -0
  179. package/src/compiler/phases/3-transform/server/visitors/SvelteSelf.js +12 -0
  180. package/src/compiler/phases/3-transform/server/visitors/TitleElement.js +17 -0
  181. package/src/compiler/phases/3-transform/server/visitors/UpdateExpression.js +26 -0
  182. package/src/compiler/phases/3-transform/server/visitors/VariableDeclaration.js +185 -0
  183. package/src/compiler/phases/3-transform/server/visitors/shared/component.js +275 -0
  184. package/src/compiler/phases/3-transform/server/visitors/shared/element.js +430 -0
  185. package/src/compiler/phases/3-transform/server/visitors/shared/utils.js +243 -0
  186. package/src/compiler/phases/3-transform/shared/assignments.js +74 -0
  187. package/src/compiler/phases/3-transform/utils.js +283 -177
  188. package/src/compiler/phases/bindings.js +64 -25
  189. package/src/compiler/phases/css.js +2 -1
  190. package/src/compiler/phases/nodes.js +20 -8
  191. package/src/compiler/phases/patterns.js +2 -0
  192. package/src/compiler/phases/scope.js +171 -186
  193. package/src/compiler/phases/types.d.ts +25 -27
  194. package/src/compiler/preprocess/decode_sourcemap.js +2 -1
  195. package/src/compiler/preprocess/index.js +22 -20
  196. package/src/compiler/preprocess/public.d.ts +1 -1
  197. package/src/compiler/preprocess/replace_in_code.js +7 -6
  198. package/src/compiler/public.d.ts +14 -4
  199. package/src/compiler/state.js +97 -0
  200. package/src/compiler/types/css.d.ts +39 -4
  201. package/src/compiler/types/index.d.ts +57 -43
  202. package/src/compiler/types/legacy-nodes.d.ts +22 -3
  203. package/src/compiler/types/template.d.ts +443 -398
  204. package/src/compiler/utils/assert.js +1 -12
  205. package/src/compiler/utils/ast.js +264 -59
  206. package/src/compiler/utils/builders.js +196 -175
  207. package/src/compiler/utils/compile_diagnostic.js +106 -0
  208. package/src/compiler/utils/extract_svelte_ignore.js +87 -38
  209. package/src/compiler/utils/mapped_code.js +23 -19
  210. package/src/compiler/utils/slot.js +20 -0
  211. package/src/compiler/utils/string.js +9 -0
  212. package/src/compiler/validate-options.js +56 -40
  213. package/src/compiler/warnings.js +812 -311
  214. package/src/constants.js +32 -240
  215. package/src/easing/index.js +0 -31
  216. package/src/escaping.js +26 -0
  217. package/src/events/index.js +1 -0
  218. package/src/events/public.d.ts +57 -0
  219. package/src/html-tree-validation.js +215 -0
  220. package/src/index-client.js +36 -35
  221. package/src/index-server.js +8 -14
  222. package/src/index.d.ts +153 -70
  223. package/src/internal/client/constants.js +15 -6
  224. package/src/internal/client/dev/console-log.js +35 -0
  225. package/src/internal/client/dev/css.js +31 -0
  226. package/src/internal/client/dev/elements.js +60 -0
  227. package/src/internal/client/dev/equality.js +104 -0
  228. package/src/internal/client/dev/hmr.js +62 -39
  229. package/src/internal/client/dev/inspect.js +36 -0
  230. package/src/internal/client/dev/legacy.js +28 -0
  231. package/src/internal/client/dev/ownership.js +139 -102
  232. package/src/internal/client/dom/blocks/await.js +119 -63
  233. package/src/internal/client/dom/blocks/css-props.js +19 -52
  234. package/src/internal/client/dom/blocks/each.js +220 -157
  235. package/src/internal/client/dom/blocks/html.js +106 -48
  236. package/src/internal/client/dom/blocks/if.js +37 -26
  237. package/src/internal/client/dom/blocks/key.js +18 -6
  238. package/src/internal/client/dom/blocks/slot.js +44 -0
  239. package/src/internal/client/dom/blocks/snippet.js +102 -9
  240. package/src/internal/client/dom/blocks/svelte-component.js +21 -10
  241. package/src/internal/client/dom/blocks/svelte-element.js +132 -123
  242. package/src/internal/client/dom/blocks/svelte-head.js +27 -16
  243. package/src/internal/client/dom/css.js +32 -0
  244. package/src/internal/client/dom/elements/actions.js +7 -2
  245. package/src/internal/client/dom/elements/attributes.js +247 -127
  246. package/src/internal/client/dom/elements/bindings/document.js +17 -0
  247. package/src/internal/client/dom/elements/bindings/input.js +104 -54
  248. package/src/internal/client/dom/elements/bindings/media.js +78 -116
  249. package/src/internal/client/dom/elements/bindings/props.js +3 -3
  250. package/src/internal/client/dom/elements/bindings/select.js +11 -8
  251. package/src/internal/client/dom/elements/bindings/shared.js +9 -31
  252. package/src/internal/client/dom/elements/bindings/size.js +10 -9
  253. package/src/internal/client/dom/elements/bindings/this.js +10 -6
  254. package/src/internal/client/dom/elements/bindings/universal.js +33 -27
  255. package/src/internal/client/dom/elements/bindings/window.js +19 -15
  256. package/src/internal/client/dom/elements/class.js +32 -2
  257. package/src/internal/client/dom/elements/custom-element.js +37 -23
  258. package/src/internal/client/dom/elements/events.js +201 -55
  259. package/src/internal/client/dom/elements/misc.js +30 -4
  260. package/src/internal/client/dom/elements/style.js +15 -7
  261. package/src/internal/client/dom/elements/transitions.js +202 -138
  262. package/src/internal/client/dom/hydration.js +72 -37
  263. package/src/internal/client/dom/legacy/event-modifiers.js +51 -6
  264. package/src/internal/client/dom/legacy/lifecycle.js +38 -26
  265. package/src/internal/client/dom/legacy/misc.js +3 -3
  266. package/src/internal/client/dom/operations.js +90 -130
  267. package/src/internal/client/dom/reconciler.js +0 -18
  268. package/src/internal/client/dom/task.js +44 -16
  269. package/src/internal/client/dom/template.js +140 -80
  270. package/src/internal/client/errors.js +359 -0
  271. package/src/internal/client/index.js +49 -29
  272. package/src/internal/client/loop.js +4 -3
  273. package/src/internal/client/proxy.js +280 -288
  274. package/src/internal/client/reactivity/deriveds.js +105 -64
  275. package/src/internal/client/reactivity/effects.js +326 -107
  276. package/src/internal/client/reactivity/equality.js +3 -2
  277. package/src/internal/client/reactivity/props.js +192 -50
  278. package/src/internal/client/reactivity/sources.js +175 -74
  279. package/src/internal/client/reactivity/store.js +53 -64
  280. package/src/internal/client/reactivity/types.d.ts +24 -19
  281. package/src/internal/client/render.js +159 -196
  282. package/src/internal/client/runtime.js +541 -673
  283. package/src/internal/client/timing.js +5 -4
  284. package/src/internal/client/types.d.ts +62 -46
  285. package/src/internal/client/validate.js +82 -73
  286. package/src/internal/client/warnings.js +166 -0
  287. package/src/internal/server/blocks/html.js +11 -0
  288. package/src/internal/server/blocks/snippet.js +22 -0
  289. package/src/internal/server/context.js +26 -14
  290. package/src/internal/server/dev.js +97 -0
  291. package/src/internal/server/errors.js +13 -0
  292. package/src/internal/server/hydration.js +3 -2
  293. package/src/internal/server/index.js +188 -292
  294. package/src/internal/server/types.d.ts +22 -0
  295. package/src/internal/shared/clone.js +114 -0
  296. package/src/internal/shared/errors.js +69 -0
  297. package/src/internal/shared/types.d.ts +10 -0
  298. package/src/internal/shared/utils.js +35 -0
  299. package/src/internal/shared/validate.js +18 -38
  300. package/src/internal/shared/warnings.js +38 -0
  301. package/src/legacy/legacy-client.js +154 -19
  302. package/src/legacy/legacy-server.js +31 -3
  303. package/src/motion/spring.js +12 -10
  304. package/src/motion/tweened.js +9 -7
  305. package/src/reactivity/date.js +48 -79
  306. package/src/reactivity/index-client.js +5 -3
  307. package/src/reactivity/index-server.js +5 -3
  308. package/src/reactivity/map.js +78 -55
  309. package/src/reactivity/set.js +47 -42
  310. package/src/reactivity/url-search-params.js +146 -0
  311. package/src/reactivity/url.js +165 -0
  312. package/src/reactivity/utils.js +5 -22
  313. package/src/server/index.d.ts +21 -0
  314. package/src/store/index-client.js +165 -0
  315. package/src/store/index-server.js +101 -0
  316. package/src/store/private.d.ts +5 -9
  317. package/src/store/public.d.ts +2 -4
  318. package/src/store/{index.js → shared/index.js} +30 -44
  319. package/src/store/utils.js +2 -1
  320. package/src/transition/index.js +19 -26
  321. package/src/utils.js +426 -0
  322. package/src/version.js +1 -1
  323. package/svelte-html.d.ts +1 -1
  324. package/types/index.d.ts +1161 -1219
  325. package/types/index.d.ts.map +60 -97
  326. package/src/compiler/phases/1-parse/utils/names.js +0 -74
  327. package/src/compiler/phases/2-analyze/utils.js +0 -14
  328. package/src/compiler/phases/2-analyze/validation.js +0 -1161
  329. package/src/compiler/phases/3-transform/client/visitors/global.js +0 -125
  330. package/src/compiler/phases/3-transform/client/visitors/javascript-legacy.js +0 -201
  331. package/src/compiler/phases/3-transform/client/visitors/javascript-runes.js +0 -404
  332. package/src/compiler/phases/3-transform/client/visitors/javascript.js +0 -40
  333. package/src/compiler/phases/3-transform/client/visitors/template.js +0 -3012
  334. package/src/compiler/phases/constants.js +0 -201
  335. package/src/compiler/phases/visitors.js +0 -72
  336. package/src/internal/client/utils.js +0 -49
package/elements.d.ts CHANGED
@@ -61,6 +61,17 @@ export type TransitionEventHandler<T extends EventTarget> = EventHandler<Transit
61
61
  export type MessageEventHandler<T extends EventTarget> = EventHandler<MessageEvent, T>;
62
62
  export type ToggleEventHandler<T extends EventTarget> = EventHandler<ToggleEvent, T>;
63
63
 
64
+ export type FullAutoFill =
65
+ | AutoFill
66
+ | 'bday'
67
+ | `${OptionalPrefixToken<AutoFillAddressKind>}${'cc-additional-name'}`
68
+ | 'nickname'
69
+ | 'language'
70
+ | 'organization-title'
71
+ | 'photo'
72
+ | 'sex'
73
+ | 'url';
74
+
64
75
  //
65
76
  // DOM Attributes
66
77
  // ----------------------------------------------------------------------
@@ -113,6 +124,7 @@ export interface DOMAttributes<T extends EventTarget> {
113
124
  'on:beforeinput'?: EventHandler<InputEvent, T> | undefined | null;
114
125
  onbeforeinput?: EventHandler<InputEvent, T> | undefined | null;
115
126
  onbeforeinputcapture?: EventHandler<InputEvent, T> | undefined | null;
127
+ // oninput can be either an InputEvent or an Event, depending on the target element (input, textarea etc).
116
128
  'on:input'?: FormEventHandler<T> | undefined | null;
117
129
  oninput?: FormEventHandler<T> | undefined | null;
118
130
  oninputcapture?: FormEventHandler<T> | undefined | null;
@@ -416,6 +428,9 @@ export interface DOMAttributes<T extends EventTarget> {
416
428
  onvisibilitychangecapture?: EventHandler<Event, T> | undefined | null;
417
429
 
418
430
  // Global Events
431
+ 'on:beforematch'?: EventHandler<Event, T> | undefined | null;
432
+ onbeforematch?: EventHandler<Event, T> | undefined | null;
433
+ onbeforematchcapture?: EventHandler<Event, T> | undefined | null;
419
434
  'on:cancel'?: EventHandler<Event, T> | undefined | null;
420
435
  oncancel?: EventHandler<Event, T> | undefined | null;
421
436
  oncancelcapture?: EventHandler<Event, T> | undefined | null;
@@ -706,11 +721,12 @@ export type AriaRole =
706
721
  export interface HTMLAttributes<T extends EventTarget> extends AriaAttributes, DOMAttributes<T> {
707
722
  // Standard HTML Attributes
708
723
  accesskey?: string | undefined | null;
724
+ autocapitalize?: 'characters' | 'off' | 'on' | 'none' | 'sentences' | 'words' | undefined | null;
709
725
  autofocus?: boolean | undefined | null;
710
726
  class?: string | undefined | null;
711
727
  contenteditable?: Booleanish | 'inherit' | 'plaintext-only' | undefined | null;
712
728
  contextmenu?: string | undefined | null;
713
- dir?: string | undefined | null;
729
+ dir?: 'ltr' | 'rtl' | 'auto' | undefined | null;
714
730
  draggable?: Booleanish | undefined | null;
715
731
  elementtiming?: string | undefined | null;
716
732
  enterkeyhint?:
@@ -723,7 +739,7 @@ export interface HTMLAttributes<T extends EventTarget> extends AriaAttributes, D
723
739
  | 'send'
724
740
  | undefined
725
741
  | null;
726
- hidden?: boolean | undefined | null;
742
+ hidden?: boolean | 'until-found' | '' | undefined | null;
727
743
  id?: string | undefined | null;
728
744
  lang?: string | undefined | null;
729
745
  part?: string | undefined | null;
@@ -736,6 +752,7 @@ export interface HTMLAttributes<T extends EventTarget> extends AriaAttributes, D
736
752
  translate?: 'yes' | 'no' | '' | undefined | null;
737
753
  inert?: boolean | undefined | null;
738
754
  popover?: 'auto' | 'manual' | '' | undefined | null;
755
+ writingsuggestions?: Booleanish | undefined | null;
739
756
 
740
757
  // Unknown
741
758
  radiogroup?: string | undefined | null; // <command>, <menuitem>
@@ -754,8 +771,6 @@ export interface HTMLAttributes<T extends EventTarget> extends AriaAttributes, D
754
771
  vocab?: string | undefined | null;
755
772
 
756
773
  // Non-standard Attributes
757
- autocapitalize?: string | undefined | null;
758
- autocorrect?: string | undefined | null;
759
774
  autosave?: string | undefined | null;
760
775
  color?: string | undefined | null;
761
776
  itemprop?: string | undefined | null;
@@ -840,10 +855,6 @@ export interface HTMLAnchorAttributes extends HTMLAttributes<HTMLAnchorElement>
840
855
  target?: HTMLAttributeAnchorTarget | undefined | null;
841
856
  type?: string | undefined | null;
842
857
  referrerpolicy?: ReferrerPolicy | undefined | null;
843
-
844
- // Sapper
845
- 'sapper:noscroll'?: true | undefined | null;
846
- 'sapper:prefetch'?: true | undefined | null;
847
858
  }
848
859
 
849
860
  export interface HTMLAudioAttributes extends HTMLMediaAttributes<HTMLAudioElement> {}
@@ -857,7 +868,7 @@ export interface HTMLAreaAttributes extends HTMLAttributes<HTMLAreaElement> {
857
868
  media?: string | undefined | null;
858
869
  referrerpolicy?: ReferrerPolicy | undefined | null;
859
870
  rel?: string | undefined | null;
860
- shape?: string | undefined | null;
871
+ shape?: 'circle' | 'default' | 'poly' | 'rect' | undefined | null;
861
872
  target?: string | undefined | null;
862
873
  ping?: string | undefined | null;
863
874
  }
@@ -875,8 +886,13 @@ export interface HTMLButtonAttributes extends HTMLAttributes<HTMLButtonElement>
875
886
  disabled?: boolean | undefined | null;
876
887
  form?: string | undefined | null;
877
888
  formaction?: string | undefined | null;
878
- formenctype?: string | undefined | null;
879
- formmethod?: string | undefined | null;
889
+ formenctype?:
890
+ | 'application/x-www-form-urlencoded'
891
+ | 'multipart/form-data'
892
+ | 'text/plain'
893
+ | undefined
894
+ | null;
895
+ formmethod?: 'dialog' | 'get' | 'post' | 'DIALOG' | 'GET' | 'POST' | undefined | null;
880
896
  formnovalidate?: boolean | undefined | null;
881
897
  formtarget?: string | undefined | null;
882
898
  name?: string | undefined | null;
@@ -940,9 +956,14 @@ export interface HTMLFieldsetAttributes extends HTMLAttributes<HTMLFieldSetEleme
940
956
  export interface HTMLFormAttributes extends HTMLAttributes<HTMLFormElement> {
941
957
  acceptcharset?: string | undefined | null;
942
958
  action?: string | undefined | null;
943
- autocomplete?: string | undefined | null;
944
- enctype?: string | undefined | null;
945
- method?: string | undefined | null;
959
+ autocomplete?: AutoFillBase | undefined | null;
960
+ enctype?:
961
+ | 'application/x-www-form-urlencoded'
962
+ | 'multipart/form-data'
963
+ | 'text/plain'
964
+ | undefined
965
+ | null;
966
+ method?: 'dialog' | 'get' | 'post' | 'DIALOG' | 'GET' | 'POST' | undefined | null;
946
967
  name?: string | undefined | null;
947
968
  novalidate?: boolean | undefined | null;
948
969
  target?: string | undefined | null;
@@ -1028,15 +1049,22 @@ export type HTMLInputTypeAttribute =
1028
1049
  export interface HTMLInputAttributes extends HTMLAttributes<HTMLInputElement> {
1029
1050
  accept?: string | undefined | null;
1030
1051
  alt?: string | undefined | null;
1031
- autocomplete?: string | undefined | null;
1052
+ autocomplete?: FullAutoFill | undefined | null;
1053
+ // Safari only https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#autocorrect
1054
+ autocorrect?: 'on' | 'off' | '' | undefined | null;
1032
1055
  capture?: boolean | 'user' | 'environment' | undefined | null; // https://www.w3.org/TR/html-media-capture/#the-capture-attribute
1033
1056
  checked?: boolean | undefined | null;
1034
1057
  dirname?: string | undefined | null;
1035
1058
  disabled?: boolean | undefined | null;
1036
1059
  form?: string | undefined | null;
1037
1060
  formaction?: string | undefined | null;
1038
- formenctype?: string | undefined | null;
1039
- formmethod?: string | undefined | null;
1061
+ formenctype?:
1062
+ | 'application/x-www-form-urlencoded'
1063
+ | 'multipart/form-data'
1064
+ | 'text/plain'
1065
+ | undefined
1066
+ | null;
1067
+ formmethod?: 'dialog' | 'get' | 'post' | 'DIALOG' | 'GET' | 'POST' | undefined | null;
1040
1068
  formnovalidate?: boolean | undefined | null;
1041
1069
  formtarget?: string | undefined | null;
1042
1070
  height?: number | string | undefined | null;
@@ -1089,8 +1117,34 @@ export interface HTMLLiAttributes extends HTMLAttributes<HTMLLIElement> {
1089
1117
  }
1090
1118
 
1091
1119
  export interface HTMLLinkAttributes extends HTMLAttributes<HTMLLinkElement> {
1092
- as?: string | undefined | null;
1093
- crossorigin?: string | undefined | null;
1120
+ as?:
1121
+ | 'fetch'
1122
+ | 'audio'
1123
+ | 'audioworklet'
1124
+ | 'document'
1125
+ | 'embed'
1126
+ | 'font'
1127
+ | 'frame'
1128
+ | 'iframe'
1129
+ | 'image'
1130
+ | 'json'
1131
+ | 'manifest'
1132
+ | 'object'
1133
+ | 'paintworklet'
1134
+ | 'report'
1135
+ | 'script'
1136
+ | 'serviceworker'
1137
+ | 'sharedworker'
1138
+ | 'style'
1139
+ | 'track'
1140
+ | 'video'
1141
+ | 'webidentity'
1142
+ | 'worker'
1143
+ | 'xslt'
1144
+ | ''
1145
+ | undefined
1146
+ | null;
1147
+ crossorigin?: 'anonymous' | 'use-credentials' | '' | undefined | null;
1094
1148
  href?: string | undefined | null;
1095
1149
  hreflang?: string | undefined | null;
1096
1150
  integrity?: string | undefined | null;
@@ -1124,7 +1178,7 @@ export interface HTMLMediaAttributes<T extends HTMLMediaElement> extends HTMLAtt
1124
1178
  | (string & {})
1125
1179
  | undefined
1126
1180
  | null;
1127
- crossorigin?: string | undefined | null;
1181
+ crossorigin?: 'anonymous' | 'use-credentials' | '' | undefined | null;
1128
1182
  currenttime?: number | undefined | null;
1129
1183
  defaultmuted?: boolean | undefined | null;
1130
1184
  defaultplaybackrate?: number | undefined | null;
@@ -1132,7 +1186,7 @@ export interface HTMLMediaAttributes<T extends HTMLMediaElement> extends HTMLAtt
1132
1186
  mediagroup?: string | undefined | null;
1133
1187
  muted?: boolean | undefined | null;
1134
1188
  playsinline?: boolean | undefined | null;
1135
- preload?: string | undefined | null;
1189
+ preload?: 'auto' | 'none' | 'metadata' | '' | undefined | null;
1136
1190
  src?: string | undefined | null;
1137
1191
  /**
1138
1192
  * a value between 0 and 1
@@ -1162,7 +1216,14 @@ export interface HTMLMediaAttributes<T extends HTMLMediaElement> extends HTMLAtt
1162
1216
  export interface HTMLMetaAttributes extends HTMLAttributes<HTMLMetaElement> {
1163
1217
  charset?: string | undefined | null;
1164
1218
  content?: string | undefined | null;
1165
- 'http-equiv'?: string | undefined | null;
1219
+ 'http-equiv'?:
1220
+ | 'content-security-policy'
1221
+ | 'content-type'
1222
+ | 'default-style'
1223
+ | 'refresh'
1224
+ | 'x-ua-compatible'
1225
+ | undefined
1226
+ | null;
1166
1227
  name?: string | undefined | null;
1167
1228
  media?: string | undefined | null;
1168
1229
  }
@@ -1235,7 +1296,7 @@ export interface HTMLScriptAttributes extends HTMLAttributes<HTMLScriptElement>
1235
1296
  async?: boolean | undefined | null;
1236
1297
  /** @deprecated */
1237
1298
  charset?: string | undefined | null;
1238
- crossorigin?: string | undefined | null;
1299
+ crossorigin?: 'anonymous' | 'use-credentials' | '' | undefined | null;
1239
1300
  defer?: boolean | undefined | null;
1240
1301
  fetchpriority?: 'auto' | 'high' | 'low' | undefined | null;
1241
1302
  integrity?: string | undefined | null;
@@ -1247,7 +1308,7 @@ export interface HTMLScriptAttributes extends HTMLAttributes<HTMLScriptElement>
1247
1308
  }
1248
1309
 
1249
1310
  export interface HTMLSelectAttributes extends HTMLAttributes<HTMLSelectElement> {
1250
- autocomplete?: string | undefined | null;
1311
+ autocomplete?: FullAutoFill | undefined | null;
1251
1312
  disabled?: boolean | undefined | null;
1252
1313
  form?: string | undefined | null;
1253
1314
  multiple?: boolean | undefined | null;
@@ -1292,7 +1353,7 @@ export interface HTMLTableAttributes extends HTMLAttributes<HTMLTableElement> {
1292
1353
  }
1293
1354
 
1294
1355
  export interface HTMLTextareaAttributes extends HTMLAttributes<HTMLTextAreaElement> {
1295
- autocomplete?: string | undefined | null;
1356
+ autocomplete?: FullAutoFill | undefined | null;
1296
1357
  cols?: number | undefined | null;
1297
1358
  dirname?: string | undefined | null;
1298
1359
  disabled?: boolean | undefined | null;
@@ -1305,7 +1366,7 @@ export interface HTMLTextareaAttributes extends HTMLAttributes<HTMLTextAreaEleme
1305
1366
  required?: boolean | undefined | null;
1306
1367
  rows?: number | undefined | null;
1307
1368
  value?: string | string[] | number | undefined | null;
1308
- wrap?: string | undefined | null;
1369
+ wrap?: 'hard' | 'soft' | undefined | null;
1309
1370
 
1310
1371
  'on:change'?: ChangeEventHandler<HTMLTextAreaElement> | undefined | null;
1311
1372
  onchange?: ChangeEventHandler<HTMLTextAreaElement> | undefined | null;
@@ -1318,7 +1379,7 @@ export interface HTMLTdAttributes extends HTMLAttributes<HTMLTableCellElement> {
1318
1379
  colspan?: number | undefined | null;
1319
1380
  headers?: string | undefined | null;
1320
1381
  rowspan?: number | undefined | null;
1321
- scope?: string | undefined | null;
1382
+ scope?: 'col' | 'colgroup' | 'row' | 'rowgroup' | undefined | null;
1322
1383
  abbr?: string | undefined | null;
1323
1384
  height?: number | string | undefined | null;
1324
1385
  width?: number | string | undefined | null;
@@ -1330,7 +1391,7 @@ export interface HTMLThAttributes extends HTMLAttributes<HTMLTableCellElement> {
1330
1391
  colspan?: number | undefined | null;
1331
1392
  headers?: string | undefined | null;
1332
1393
  rowspan?: number | undefined | null;
1333
- scope?: string | undefined | null;
1394
+ scope?: 'col' | 'colgroup' | 'row' | 'rowgroup' | undefined | null;
1334
1395
  abbr?: string | undefined | null;
1335
1396
  }
1336
1397
 
@@ -1340,7 +1401,7 @@ export interface HTMLTimeAttributes extends HTMLAttributes<HTMLTimeElement> {
1340
1401
 
1341
1402
  export interface HTMLTrackAttributes extends HTMLAttributes<HTMLTrackElement> {
1342
1403
  default?: boolean | undefined | null;
1343
- kind?: string | undefined | null;
1404
+ kind?: 'captions' | 'chapters' | 'descriptions' | 'metadata' | 'subtitles' | undefined | null;
1344
1405
  label?: string | undefined | null;
1345
1406
  src?: string | undefined | null;
1346
1407
  srclang?: string | undefined | null;
@@ -1364,7 +1425,9 @@ export interface SvelteMediaTimeRange {
1364
1425
  }
1365
1426
 
1366
1427
  export interface SvelteDocumentAttributes extends HTMLAttributes<Document> {
1428
+ readonly 'bind:activeElement'?: Document['activeElement'] | undefined | null;
1367
1429
  readonly 'bind:fullscreenElement'?: Document['fullscreenElement'] | undefined | null;
1430
+ readonly 'bind:pointerLockElement'?: Document['pointerLockElement'] | undefined | null;
1368
1431
  readonly 'bind:visibilityState'?: Document['visibilityState'] | undefined | null;
1369
1432
  }
1370
1433
 
@@ -1440,7 +1503,8 @@ export interface SVGAttributes<T extends EventTarget> extends AriaAttributes, DO
1440
1503
  lang?: string | undefined | null;
1441
1504
  max?: number | string | undefined | null;
1442
1505
  media?: string | undefined | null;
1443
- method?: string | undefined | null;
1506
+ // On the `textPath` element
1507
+ method?: 'align' | 'stretch' | undefined | null;
1444
1508
  min?: number | string | undefined | null;
1445
1509
  name?: string | undefined | null;
1446
1510
  style?: string | undefined | null;
@@ -1724,6 +1788,10 @@ export interface SVGAttributes<T extends EventTarget> extends AriaAttributes, DO
1724
1788
  [key: `data-${string}`]: any;
1725
1789
  }
1726
1790
 
1791
+ export interface HTMLTemplateAttributes extends HTMLAttributes<HTMLElement> {
1792
+ shadowrootmode?: 'open' | 'closed' | undefined | null;
1793
+ }
1794
+
1727
1795
  export interface HTMLWebViewAttributes extends HTMLAttributes<HTMLElement> {
1728
1796
  allowfullscreen?: boolean | undefined | null;
1729
1797
  allowpopups?: boolean | undefined | null;
@@ -1737,7 +1805,7 @@ export interface HTMLWebViewAttributes extends HTMLAttributes<HTMLElement> {
1737
1805
  nodeintegration?: boolean | undefined | null;
1738
1806
  partition?: string | undefined | null;
1739
1807
  plugins?: boolean | undefined | null;
1740
- preload?: string | undefined | null;
1808
+ preload?: 'auto' | 'none' | 'metadata' | '' | undefined | null;
1741
1809
  src?: string | undefined | null;
1742
1810
  useragent?: string | undefined | null;
1743
1811
  webpreferences?: string | undefined | null;
@@ -1836,6 +1904,7 @@ export interface SvelteHTMLElements {
1836
1904
  samp: HTMLAttributes<HTMLElement>;
1837
1905
  slot: HTMLSlotAttributes;
1838
1906
  script: HTMLScriptAttributes;
1907
+ search: HTMLAttributes<HTMLElement>;
1839
1908
  section: HTMLAttributes<HTMLElement>;
1840
1909
  select: HTMLSelectAttributes;
1841
1910
  small: HTMLAttributes<HTMLElement>;
@@ -1847,7 +1916,7 @@ export interface SvelteHTMLElements {
1847
1916
  summary: HTMLAttributes<HTMLElement>;
1848
1917
  sup: HTMLAttributes<HTMLElement>;
1849
1918
  table: HTMLTableAttributes;
1850
- template: HTMLAttributes<HTMLTemplateElement>;
1919
+ template: HTMLTemplateAttributes;
1851
1920
  tbody: HTMLAttributes<HTMLTableSectionElement>;
1852
1921
  td: HTMLTdAttributes;
1853
1922
  textarea: HTMLTextareaAttributes;
@@ -1935,7 +2004,7 @@ export interface SvelteHTMLElements {
1935
2004
  | string
1936
2005
  | undefined
1937
2006
  | {
1938
- tag: string;
2007
+ tag?: string;
1939
2008
  shadow?: 'open' | 'none' | undefined;
1940
2009
  props?:
1941
2010
  | Record<
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "svelte",
3
3
  "description": "Cybernetically enhanced web apps",
4
4
  "license": "MIT",
5
- "version": "5.0.0-next.99",
5
+ "version": "5.0.1",
6
6
  "type": "module",
7
7
  "types": "./types/index.d.ts",
8
8
  "engines": {
@@ -76,11 +76,16 @@
76
76
  },
77
77
  "./store": {
78
78
  "types": "./types/index.d.ts",
79
- "default": "./src/store/index.js"
79
+ "browser": "./src/store/index-client.js",
80
+ "default": "./src/store/index-server.js"
80
81
  },
81
82
  "./transition": {
82
83
  "types": "./types/index.d.ts",
83
84
  "default": "./src/transition/index.js"
85
+ },
86
+ "./events": {
87
+ "types": "./types/index.d.ts",
88
+ "default": "./src/events/index.js"
84
89
  }
85
90
  },
86
91
  "repository": {
@@ -93,59 +98,51 @@
93
98
  },
94
99
  "homepage": "https://svelte.dev",
95
100
  "keywords": [
101
+ "svelte",
96
102
  "UI",
97
103
  "framework",
98
104
  "templates",
99
105
  "templating"
100
106
  ],
101
107
  "devDependencies": {
102
- "@jridgewell/trace-mapping": "^0.3.22",
103
- "@playwright/test": "^1.35.1",
104
- "@rollup/plugin-commonjs": "^25.0.7",
105
- "@rollup/plugin-node-resolve": "^15.2.3",
108
+ "@jridgewell/trace-mapping": "^0.3.25",
109
+ "@playwright/test": "^1.46.1",
110
+ "@rollup/plugin-commonjs": "^28.0.0",
111
+ "@rollup/plugin-node-resolve": "^15.3.0",
106
112
  "@rollup/plugin-terser": "^0.4.4",
107
113
  "@rollup/plugin-virtual": "^3.0.2",
108
114
  "@types/aria-query": "^5.0.4",
109
- "dts-buddy": "^0.4.6",
110
- "esbuild": "^0.19.11",
111
- "knip": "^4.2.1",
112
- "rollup": "^4.9.5",
115
+ "@types/node": "^20.11.5",
116
+ "dts-buddy": "^0.5.3",
117
+ "esbuild": "^0.21.5",
118
+ "rollup": "^4.22.4",
113
119
  "source-map": "^0.7.4",
114
- "tiny-glob": "^0.2.9"
120
+ "tiny-glob": "^0.2.9",
121
+ "typescript": "^5.5.4",
122
+ "vitest": "^2.0.5"
115
123
  },
116
124
  "dependencies": {
117
- "@ampproject/remapping": "^2.2.1",
118
- "@jridgewell/sourcemap-codec": "^1.4.15",
125
+ "@ampproject/remapping": "^2.3.0",
126
+ "@jridgewell/sourcemap-codec": "^1.5.0",
119
127
  "@types/estree": "^1.0.5",
120
- "acorn": "^8.11.3",
128
+ "acorn": "^8.12.1",
121
129
  "acorn-typescript": "^1.4.13",
122
- "aria-query": "^5.3.0",
123
- "axobject-query": "^4.0.0",
130
+ "aria-query": "^5.3.1",
131
+ "axobject-query": "^4.1.0",
124
132
  "esm-env": "^1.0.0",
125
- "esrap": "^1.2.1",
133
+ "esrap": "^1.2.2",
126
134
  "is-reference": "^3.0.2",
127
135
  "locate-character": "^3.0.0",
128
- "magic-string": "^0.30.5",
136
+ "magic-string": "^0.30.11",
129
137
  "zimmerframe": "^1.1.2"
130
138
  },
131
- "knip": {
132
- "entry": [
133
- "src/*/index.js",
134
- "src/index-client.ts",
135
- "src/index-server.ts",
136
- "src/index.d.ts"
137
- ],
138
- "project": [
139
- "src/**"
140
- ]
141
- },
142
139
  "scripts": {
143
- "build": "rollup -c && pnpm generate:types && node scripts/check-treeshakeability.js",
144
- "dev": "rollup -cw",
145
- "check": "tsc && cd ./tests/types && tsc",
140
+ "build": "node scripts/process-messages && rollup -c && pnpm generate:types && node scripts/check-treeshakeability.js",
141
+ "dev": "node scripts/process-messages && rollup -cw",
142
+ "check": "tsc --project tsconfig.runtime.json && tsc && cd ./tests/types && tsc",
146
143
  "check:watch": "tsc --watch",
147
144
  "generate:version": "node ./scripts/generate-version.js",
148
- "generate:types": "node ./scripts/generate-types.js",
149
- "knip": "knip"
145
+ "generate:types": "node ./scripts/generate-types.js && tsc -p tsconfig.generated.json",
146
+ "knip": "pnpm dlx knip"
150
147
  }
151
148
  }
@@ -23,8 +23,6 @@
23
23
  * };
24
24
  * }
25
25
  * ```
26
- *
27
- * Docs: https://svelte.dev/docs/svelte-action
28
26
  */
29
27
  export interface ActionReturn<
30
28
  Parameter = undefined,
@@ -54,8 +52,6 @@ export interface ActionReturn<
54
52
  *
55
53
  * You can return an object with methods `update` and `destroy` from the function and type which additional attributes and events it has.
56
54
  * See interface `ActionReturn` for more details.
57
- *
58
- * Docs: https://svelte.dev/docs/svelte-action
59
55
  */
60
56
  export interface Action<
61
57
  Element = HTMLElement,