Simon H
cbc2ca36ce
fix: allow to pass in TS preference to migration ( #13929 )
...
First half of https://github.com/sveltejs/kit/issues/12880 - the idea is for the migration script to check for a tsconfig.json and then set it to `true` if one is found
11 months ago
github-actions[bot]
4441952028
Version Packages ( #13949 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Ben McCann
07219f1cbd
chore: update links that previously pointed to preview site ( #14001 )
11 months ago
Ben McCann
c93a645b68
docs: fix broken links ( #13944 )
11 months ago
Paolo Ricciuti
b6fccdb4f7
fix: properly migrate imports types prefixed with $ ( #14007 )
11 months ago
Dominic Gannaway
3876b302f3
fix: ensure effect_tracking correctly handles tracking reactions ( #14005 )
...
* fix: ensure effect_tracking correctly handles tracking reactions
* fix: ensure effect_tracking correctly handles tracking reactions
11 months ago
Paolo Ricciuti
67cf3871b4
fix: more exhaustive check during `SvelteMap.set` in deriveds ( #13951 )
...
* fix: more exhaustive check during `SvelteMap.set` in deriveds
* chore: use set for version reactions
* chore: cleanup
11 months ago
Paolo Ricciuti
12fcc7a35a
fix: trim whitespace while migrating blocks ( #13941 )
...
Co-authored-by: Oscar Dominguez <dominguez.celada@gmail.com>
11 months ago
Paolo Ricciuti
7be3afb3a6
fix: add empty stack to `CompileDiagnostic` to show error on build ( #13942 )
...
* fix: add empty stack to `CompileDiagnostic` to show error on build
* chore: generate types
* chore: make stack optional to make TS happy
* chore: generate types -.-"
* chore: add comment
11 months ago
github-actions[bot]
da1fefcd45
Version Packages ( #13920 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Dominic Gannaway
83a5eaac8e
fix: skip comment nodes in snippet validation logic ( #13936 )
11 months ago
Dominic Gannaway
37fa34c4ad
fix: ensure value is correctly set to zero on the progress element ( #13924 )
...
* fix: ensure value is correctly set to zero on the progress element
* fix: ensure value is correctly set to zero on the progress element
* fix: ensure value is correctly set to zero on the progress element
11 months ago
Dominic Gannaway
1e6cf1bb40
fix: ensure bind:group works as intended with proxied state objects ( #13939 )
11 months ago
Dominic Gannaway
7bbaedd6c7
fix: rethrow errors from await block if no catch block exists ( #13819 )
...
* chore: highlight swallowed errors from await blocks in DEV
* chore: highlight swallowed errors from await blocks in DEV
* chore: highlight swallowed errors from await blocks in DEV
* lint
* feedback
* feedback
* add test
* Update packages/svelte/tests/runtime-runes/samples/await-no-catch-error/main.svelte
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
11 months ago
Simon H
81f9bdd376
fix: remove metadata from legacy AST ( #13927 )
...
Besides being private API that shouldn't be exposed, they caused our AST explorer on the Svelte site to traverse endlessly
fixes https://github.com/sveltejs/svelte.dev/issues/480
11 months ago
Dominic Gannaway
441124c5c7
fix: ensure SVG element attributes have case preserved ( #13935 )
...
* fix: ensure SVG element attributes have case preserved
* fix: ensure SVG element attributes have case preserved
* fix: ensure SVG element attributes have case preserved
11 months ago
Matthew Carroll
1a6a3e7ebd
fix: typo in `Action` types ( #13874 )
...
* typo: HTMLDiveElement
* regenerate types
* add changeset
---------
Co-authored-by: Conduitry <git@chor.date>
11 months ago
github-actions[bot]
1ee2ac4d05
Version Packages ( #13888 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Paolo Ricciuti
b63fde3b75
fix: prevent migration script from adding `props.` to the `export let` identifier ( #13899 )
11 months ago
Paolo Ricciuti
3147287813
fix: prevent var name clashing for delegated events without params ( #13896 )
11 months ago
Dominic Gannaway
dee8db53df
chore: add missing changeset ( #13895 )
...
Adds a changeset for #13884
11 months ago
Dominic Gannaway
42ccdc1023
fix: ensure snippets after empty text correctly hydrate ( #13870 )
11 months ago
Dominic Gannaway
771b1e8905
fix: enable bound store props in runes mode components ( #13887 )
...
* fix: enable bound store props in runes mode components
* add some JSDoc, since it could be a headscratcher for future us
* make it clear that this is specifically about bindings
* skip intermediate value
* tweak other names too
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
11 months ago
Dominic Gannaway
4cf2d4a904
fix: ensure each block references to imports are handled correctly ( #13892 )
11 months ago
Dominic Gannaway
5a54ad9cc7
fix: ensure SvelteMap reactivity persists through deriveds ( #13877 )
...
* fix: ensure SvelteMap reactivity persists through deriveds
* fix: ensure SvelteMap reactivity persists through deriveds
* fix: ensure SvelteMap reactivity persists through deriveds
11 months ago
github-actions[bot]
041e563466
Version Packages ( #13863 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Simon H
b979c291e2
fix: properly traverse children when checking matches for `:has` ( #13866 )
...
The previous algorithm didn't take control flow blocks etc into account, this fixes that. Fixes #13860
11 months ago
Paolo Ricciuti
04c38b089f
fix: allow binding to const with spread in legacy mode ( #13849 )
11 months ago
Dominic Gannaway
4fbd2a6f10
fix: ensure props internally untracks current_value on sets ( #13859 )
...
* fix: ensure props internally untracks current_value on sets
* Update packages/svelte/src/internal/client/reactivity/props.js
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
11 months ago
Dominic Gannaway
60dcffb856
fix: internally wrap store subscribe in untrack ( #13858 )
...
* fix: internally wrap store subscribe in untrack
* lint
* Update packages/svelte/src/store/utils.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
11 months ago
github-actions[bot]
af4d105cd3
Version Packages ( #13757 )
...
* Version Packages
* Update packages/svelte/CHANGELOG.md
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
11 months ago
Dominic Gannaway
d621f59642
feat: allow usage of getContext() within $derived runes ( #13830 )
...
Closes #13493 .
This PR allows the usage of getContext() inside $derived runes. Previously, you could use it, but only on init and not updates – and this inconsistency was unnecessary. We can make it work just like we do in other places.
11 months ago
Simon H
5669b31fe6
fix: ensure `:has` selectors followed by other selectors match ( #13824 )
...
I resisted this previously because it felt a bit wasteful, but I now think that there's really no way around this: Instead of only going upwards the tree while matching, for `:has` we go _down_ the tree to see what matches. More specifically, we're collecting the children of the current element and then check if one of those does match the selectors inside `:has`.
This makes the way the code works easier to reason about and also removes some boolean tracking we had to add for the previous approach.
Fixes #13779
11 months ago
Ben McCann
2d69a64e4e
chore: one of these is not like the others ( #13834 )
11 months ago
Dominic Gannaway
17cb462ca4
fix: ensure muted DOM property works correctly in FF ( #13751 )
...
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
11 months ago
Francesco Zanini
185e112377
fix: property name conversion in custom transitions ( #13820 )
11 months ago
José Pablo Ramírez Vargas
95980d1f08
feat: Define the MountOptions type ( #13674 )
...
* feat: Define the MountOptions type
* Revert "feat: Define the MountOptions type"
This reverts commit bd3596fcba
.
* feat: Define the MountOptions type
* chore: Add changeset
* lint
* lint
---------
Co-authored-by: Dominic Gannaway <dg@domgan.com>
11 months ago
Paolo Ricciuti
b6a67e85b4
fix: prevent spread attribute from overriding class directive ( #13763 )
11 months ago
Dominic Gannaway
de609ec34c
fix: ensure $effect.tracking returns false inside transition functions ( #13775 )
11 months ago
Paolo Ricciuti
8ff2af52d3
fix: show filename information in `legacy_recursive_reactive_block` ( #13764 )
11 months ago
Paolo Ricciuti
41d61c7a37
fix: properly migrate ts with inferred type comments ( #13761 )
...
Closes #13747
11 months ago
Paolo Ricciuti
9832c639e5
fix: migrate default slots to children snippet ( #13760 )
...
Closes #13758
11 months ago
Paolo Ricciuti
d1cac703c0
fix: don't print errors on migration errors ( #13754 )
...
makes it look like the migration script failed when in reality you need to update some of your files by hand
11 months ago
github-actions[bot]
ae8f50fd6a
Version Packages ( #13742 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Simon H
a6e416da8c
fix: mark `:has` selectors with multiple preceding selectors as used ( #13750 )
...
Fixes #13717
There are two parts to this:
1. the parent selectors weren't passed along for the check inside `:has`, which in case of a leading combinator would mean it would always count as unused
2. In case if a selector like `x > y:has(z)`, the prior logic would correctly determine that for element `z` there's a match for the `:has` selector, by first checking its contents and then walking up the tree. But after it did that, it would try to walk up the tree once more, which is a) wasteful b) buggy because the tree walking mechanism would no longer be adjusted for the `:has` special case, resulting in false negatives. To fix that, the `:has` will return a new value from the function, signaling that it already fully checked the upper selectors, and so the function calling it will skip doing that.
11 months ago
adiGuba
ad578a5da5
fix: @debug does not work with proxied-state ( #13690 )
...
* fix: @debug must use $state.snapshot() on value
* changeset
* add test
---------
Co-authored-by: Dominic Gannaway <dg@domgan.com>
11 months ago
Simon H
28c8d2b95d
fix: do not comment out unused selectors that are inside an unused selector ( #13746 )
...
fixes #13680
11 months ago
Simon H
2efae794b8
fix: add more robust check for `Element` prototype ( #13744 )
...
fixes #13691
fixes #13414
fixes #13726
11 months ago
Simon H
a08f063b37
fix: more accurately detect `$derived` migration use cases ( #13740 )
...
- detect store mutations and not use `$derived` in that case, fixes #13723
- better detect `let x` that can be folded into `$derived`, fixes #13727
---------
Co-authored-by: ComputerGuy <63362464+Ocean-OS@users.noreply.github.com>
11 months ago
Simon H
8a06d051e8
fix: do not add jsdoc if no types found ( #13738 )
...
fixes #13417
fixes #13724
11 months ago
Dominic Gannaway
be02b7e54c
event_context ( #13737 )
11 months ago
github-actions[bot]
fb052be96e
Version Packages ( #13736 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Simon H
8251bae8db
fix: better children snippet / default slot interop ( #13734 )
...
- correctly assign children snippet to default slot, fixes #13067
- allow `svelte:fragment` without `let:` directives to be rendered by `@render children()`, fixes #13066
11 months ago
Florent BENOIT
d0bfd22bef
fix: webview can contain any string for preload ( #13733 )
...
fixes #13661
11 months ago
github-actions[bot]
41b5cd6f5d
Version Packages ( #13720 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Dominic Gannaway
ed6d7eeb48
wrap-transition-events ( #13719 )
11 months ago
github-actions[bot]
0581e334a0
Version Packages ( #13704 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Paolo Ricciuti
e43176906f
fix: don't blank css on migration error ( #13703 )
11 months ago
github-actions[bot]
c73c683ecd
Version Packages ( #13702 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Paolo Ricciuti
6ad017ffc5
fix: use typedef for JSDoc props and maintain comments ( #13698 )
...
* fix: use typedef for JSDoc props and maintain comments
* chore: add comments
* chore: add extra spaces and delete commented line
11 months ago
pngwn
7691521dc1
major bump - svelte 5 ( #13701 )
11 months ago
github-actions[bot]
0fdfd9c50c
Version Packages (next) ( #13696 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Dominic Gannaway
2ca9a81679
fix: ensure user effects are correctly executed on initialisation ( #13697 )
11 months ago
Dominic Gannaway
ae10f4d37c
breaking: state mutations inside the template are no longer allowed ( #13660 )
...
* breaking: state mutations inside the template are no longer allowed
* fix test
* fix test
* lint
* update error message
* fix test
11 months ago
github-actions[bot]
966a6bda05
Version Packages (next) ( #13695 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Dominic Gannaway
bb491f1229
fix: avoid chromium issue with dispatching blur on element removal ( #13694 )
...
* fix: avoid chromium issue with dispatching blur on element removal
* fix: avoid chromium issue with dispatching blur on element removal
* fix: avoid chromium issue with dispatching blur on element removal
* active effect too
* try/finally
11 months ago
github-actions[bot]
793a8de06e
Version Packages (next) ( #13650 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Paolo Ricciuti
18c5a5ba2d
fix: bail out if slot name changes and $$slots assigned to variable ( #13678 )
11 months ago
Paolo Ricciuti
ab9eeb46fe
fix: migrated snippet shadowing prop and let directive removal ( #13679 )
11 months ago
Dominic Gannaway
894b1c37ad
chore: CompileDiagnostic no longer extends Error ( #13651 )
11 months ago
Dominic Gannaway
61391c8704
fix: ensure migrate correctly handles named slots ( #13676 )
...
* fix: ensure migrate correctly handles named slots
* tweak
* fix
11 months ago
Dominic Gannaway
c9d85c2d52
fix: migrate reactive statements with inner blocks ( #13675 )
11 months ago
Dominic Gannaway
f398929fdd
fix: correct migration of uninitialised state ( #13673 )
...
* fix: correct migration of uninitialised state
* better fix
11 months ago
Paolo Ricciuti
0598f2bbe1
fix: reset `reset_element` in `render` to prevent runtime error ( #13669 )
11 months ago
Paolo Ricciuti
9f930f4e9b
feat: tell users of `@migration-task` ( #13668 )
11 months ago
Paolo Ricciuti
969e6aa750
feat: add `migration-task` for impossible to migrate slots ( #13658 )
...
* feat: add `migration-task` for impossible to migrate slots
* Update packages/svelte/src/compiler/migrate/index.js
Co-authored-by: Paolo Ricciuti <ricciutipaolo@gmail.com>
* Update packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte
Co-authored-by: Paolo Ricciuti <ricciutipaolo@gmail.com>
* Update packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte
Co-authored-by: Paolo Ricciuti <ricciutipaolo@gmail.com>
* Update packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte
Co-authored-by: Paolo Ricciuti <ricciutipaolo@gmail.com>
* Update packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte
Co-authored-by: Paolo Ricciuti <ricciutipaolo@gmail.com>
---------
Co-authored-by: Dominic Gannaway <trueadm@users.noreply.github.com>
11 months ago
Paolo Ricciuti
0dcd4f6c6e
feat: add `migration-task` comment after errors ( #13659 )
11 months ago
Paolo Ricciuti
b352f08e9d
fix: migrating rest props type includes props types ( #13632 )
...
* fix: rest props type includes props types
* chore: remove extra line
* Update .changeset/spotty-kings-hug.md
11 months ago
github-actions[bot]
d7cf76bbb6
Version Packages (next) ( #13640 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Dominic Gannaway
193cc37f7a
fix: correctly applies autofocus to static elements ( #13648 )
...
* fix: correctly applies autofocus to static elements
* lint
* fix other case
11 months ago
Dominic Gannaway
e21e624fff
chore: avoid reporting inspections when an exception occurs ( #13601 )
...
* chore: avoid reporting inspections when an exception occurs
* add test
* revise
11 months ago
adiGuba
bb245445fc
fix : $.component() break transition ( #13646 )
...
* $.component() must use EFFECT_TRANSPARENT
* changeset
* Update .changeset/eight-pans-worry.md
---------
Co-authored-by: Dominic Gannaway <trueadm@users.noreply.github.com>
11 months ago
Dominic Gannaway
139114bdcb
fix: ensure legacy run utility does not cause cycles ( #13643 )
...
* fix: ensure legacy run utility does not cause cycles
* add warning
* add warning
* lint
* feedback
* lint
* lint
11 months ago
Frédéric Crozatier
ffa2af7549
fix: `method` is case insensitive ( #13639 )
...
* fix method
* changeset
11 months ago
Paolo Ricciuti
372884cf99
fix: use `internal_set` in `await` block ( #13642 )
11 months ago
Paolo Ricciuti
440017d442
fix: better migration for leading and trailing comments ( #13630 )
11 months ago
github-actions[bot]
f579a3ba7d
Version Packages (next) ( #13627 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Frédéric Crozatier
53ae2b8170
breaking: stronger enumerated types ( #13624 )
...
* dir
* as
* http-equiv
* kind
* preload
* shape
* scope
* method
* enctype
* template
* writingsuggestions
* autocapitalize
* autocapitalize is standard
* autocorrect
* changeset
11 months ago
Dominic Gannaway
2070c8a166
breaking: disallow state mutations in logic block expression ( #13625 )
11 months ago
Dominic Gannaway
7429854383
chore: improve runtime performance of derived signals ( #13626 )
11 months ago
github-actions[bot]
99c744adbe
Version Packages (next) ( #13621 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Dominic Gannaway
75fecf82a6
fix: ensure each block consistency to internal mutations to the collection ( #13614 )
...
* fix: ensure bind_checked defers mutation to ensure reactive graph stability
* better fix
* better fix
* better fix
* better fix
* lint
* simplify
11 months ago
Dominic Gannaway
ed790ee166
fix: ensure await block scope transforms are isolated ( #13622 )
11 months ago
Dominic Gannaway
6a38bbe8a3
chore: improve derived ownership model ( #13623 )
...
* chore: improve derived ownership model
* remove redundant assertion
11 months ago
Paolo Ricciuti
48f0bfc73f
fix: ensure inserted code is preserved during migration ( #13617 )
...
* fix: moving deriveds during migration deletes part of the inserted code
* fix: use update instead of remove
* Update .changeset/cool-apes-confess.md
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
11 months ago
github-actions[bot]
a17a28b30e
Version Packages (next) ( #13603 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
11 months ago
Frédéric Crozatier
76067a5fbc
feat: hidden until found and beforematch ( #13612 )
...
* add types
* changeset
11 months ago
Dominic Gannaway
68a2263415
fix: ensure local prop value is read during teardown ( #13611 )
...
* fix: ensure local prop value is read during teardown
* add test
* cleanup
* less overhead
11 months ago
Simon H
829be3d611
fix: take snippets into account when scoping CSS ( #13589 )
...
fixes #10143
11 months ago
Simon H
6f03561ae4
breaking: scope :not(...) selectors ( #13568 )
...
The other part of #13395
This implements scoping for selectors inside `:not(...)`. The approach is almot the same as for `:is/where(...)`.
This is a breaking change because people could've used `:not(.unknown)` with `.unknown` not appearing in the HTML, and so they need to do `:not(:global(.unknown))` instead.
While implementing it I also discovered a few bugs, which are fixed in this PR:
- `foo :is(bar baz)` wasn't properly handled. This selector can mean `foo bar baz` but it can also mean `bar foo baz` (super weird, but it is what it is). Since our current algorithm isn't suited for handling this, we just assume it matches and scope it. Worst case is we missed a prune
- `bar` in `:global(foo):is(bar)` was always marked as unused, even if it matched
11 months ago