Dominic Gannaway
77ed790fb3
fix: ensure bind:this unmount behavior for members is conditional ( #11193 )
...
* fix: ensure bind:this unmount behavior for members is conditional
* revise
1 year ago
Simon H
e7869faf4d
fix: return ast from `compile` ( #11191 )
...
Svelte 4 does it and language tools assumes it's there
This also uncovered another case of how ridicoulus the old AST was
1 year ago
github-actions[bot]
30fa876a79
Version Packages (next) ( #11186 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Dominic Gannaway
18097478fc
breaking: remove unstate(), replace with $state.snapshot rune ( #11180 )
...
* breaking: remove untrack(), replace with $state.clean rune
* lol
* update types
* update types
* undo
* undo
* rename to raw
* rename to snapshot
* fix
* tweak docs, to make it explicitly that we're converting to and from proxies
* remove vestiges
* validation
* tweak
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
1 year ago
Simon H
cd7c3fea16
fix: more accurate default value handling ( #11183 )
...
- don't call fallback values eagerly, only when it's actually needed. Avoids potential unwanted side effects
- use derived_safe_equals to memoize results of destructured snippet/each context values with default values to ensure they're only recalculated when their dependencies change. Avoids unstable default values getting called multiple times yielding different results. Use derived_safe_equals to ensure new values are always set, even when mutated. fixes #11143
1 year ago
github-actions[bot]
ae7d73453c
Version Packages (next) ( #11176 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Dominic Gannaway
2fa095b61e
fix: improve spreading of attributes ( #11177 )
...
* fix: improve spreading of attributes
* twak
1 year ago
Daniel
d061f2f137
fix: ssr comments in head elements that require raw content ( #10936 )
...
* added raw elements set
* added test
* added changeset
* moved raw text elements to constands and made array
* moved to correct constants
* fix test
* fix constants formatting
1 year ago
github-actions[bot]
322737ac01
Version Packages (next) ( #11162 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Tan Li Hau
8caaa375cf
feat: add reactive URL object to svelte/reactivity ( #11157 )
...
* feat: reactive url
* fix
* simplify
* tidy
* simplify, make ReactiveURLSearchParams signature match URLSearchParams
* Update .changeset/tidy-chefs-taste.md
* fix
* fix
* regenerate types
* improve minifiability
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Rich Harris <hello@rich-harris.dev>
1 year ago
Rich Harris
2cefd785a4
fix: make ownership validation work with HMR ( #11171 )
...
* fix: make ownership validation work with HMR
* bump vite-plugin-svelte in playground
* missed a spot
1 year ago
Tan Li Hau
a092899843
feat: update error message for snippet binding and assignments ( #11168 )
...
* feat: update error message for snippet binding and assignments
* make invalid-snippet-assignment apply in non-runes mode too
* update tests
* update types
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
1 year ago
Tan Li Hau
d1976c07ff
fix: fix string name of reactive map and set iterator ( #11169 )
...
* fix: fix string name of reactive map and set iterator
* remove solo: true
* lint
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
1 year ago
Tan Li Hau
9b67ee18eb
fix: throw error when auto-subscribed store variable shadow by local variable ( #11170 )
1 year ago
Rich Harris
f90639d89c
add missing changeset for #11155 ( #11161 )
1 year ago
github-actions[bot]
be842425f5
Version Packages (next) ( #11154 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Rich Harris
02f8dafeaa
changeset ( #11153 )
1 year ago
github-actions[bot]
70ddaf4048
Version Packages (next) ( #11133 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Dominic Gannaway
19144b000f
fix: add validation around disallowed sequence expressions to element attributes ( #11149 )
1 year ago
Tan Li Hau
15eb5b5864
fix: missing classes after dynamic expressions in class attributes ( #11134 )
1 year ago
Rich Harris
d5776c3ec3
feat: simplify HMR implementation ( #11132 )
...
* chore: simplify HMR implementation
* changeset
* unused
* prettier
1 year ago
github-actions[bot]
a740b7bb43
Version Packages (next) ( #11130 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Dominic Gannaway
0896543e67
fix: further improvements to hmr component key generation ( #11129 )
1 year ago
github-actions[bot]
3f9f28604e
Version Packages (next) ( #11126 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Dominic Gannaway
53e6a99458
fix: use correct meta property for hmr key ( #11125 )
1 year ago
github-actions[bot]
37b689b320
Version Packages (next) ( #11121 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Dominic Gannaway
b01af747e8
fix: use keys for hmr modules ( #11123 )
...
* fix: use keys for hmr modules
* simplify
* lint
* ts
1 year ago
Dominic Gannaway
1183984f68
fix: addresses reactive Set bug in certain engines ( #11120 )
1 year ago
github-actions[bot]
710c8f4924
Version Packages (next) ( #11111 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Dominic Gannaway
afe1d11a5b
feat: hot module reloading support for Svelte 5 ( #11106 )
...
* feat: hot module reloading support for Svelte 5
* fix lockfile
* tweaks
* types
* lint
* lint
* tweaks
* add hmr flag
* tweak
* tweaks
* move HMR logic into its own module
* simplify
* tidy up types
* fix test
* lint
* need some indirection here or references break
* prevent transitions during HMR update
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
1 year ago
Dominic Gannaway
3bb231197e
fix: loosen proxy signal creation heuristics ( #11109 )
...
* fix: loosen proxy signal creation heuristics
* tighten up test
* update comment
* no need to create a source outside an effect here, because it can't result in a reference
* preserve reference to props.$$events
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
1 year ago
Simon H
27891cb2dd
fix: ensure top level snippets are defined when binding to component prop ( #11104 )
...
...by hoisting top level snippets out of the binding loop in ssr mode
fixes #11086
1 year ago
github-actions[bot]
e8f7437cf6
Version Packages (next) ( #11093 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Simon H
5a1c756a4e
fix: execute sole static script tag ( #11095 )
...
- take into account that template could consist of a single script tag, for which querySelectorAll('script') would yield false negatives
- add test to ensure that we don't execute script tags inside `@html` tags next to static script tags
fixes #11082
1 year ago
Dominic Gannaway
3c2f4d2d55
fix: improve hydration of svelte head blocks ( #11099 )
...
* fix: improve hydration of svelte head blocks
* revert sandbox
* simplify
1 year ago
Dominic Gannaway
48549f7d00
fix: improve internal proxied state signal heuristic ( #11102 )
...
Fixes #11069
1 year ago
Simon H
ed9bab9200
fix: better sibling selector handling ( #11096 )
...
Keep sibling selectors when dealing with slots/render tags/`svelte:element` tags
fixes #9274
1 year ago
Dominic Gannaway
3462c54fd2
fix: improve compiled output of multiple call expression in single text node ( #11097 )
...
* fix: improve compiled output of multiple call expression in single text node
* fix
1 year ago
Simon H
22494be9ec
feat: introduce `$host` rune, deprecate `createEventDispatcher` ( #11059 )
...
closes #11022
1 year ago
Simon H
8578857332
fix: ensure deep mutation ownership widening ( #11094 )
...
Previously, ownership widening/removal was only done if the immediate object that was encountered was state. This isn't always the case. It also didn't take into account classes with state on it (which turn into getters). This change takes both these cases into account and now always traverses the given object deeply.
fixes #11060
1 year ago
Simon H
b1a8038f8b
fix: make static `element` property available ( #11079 )
...
for the SvelteComponent type
closes #8936
1 year ago
github-actions[bot]
dfc55c18f0
Version Packages (next) ( #11072 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Simon H
a9e15bdf2d
breaking: robustify interop of exports and props ( #11064 )
...
- don't throw a dev time error when binding to an export (fixes #11008 )
- remove bindings that are for component exports
- throw an error when using a component export with the same name as a property
1 year ago
Dominic Gannaway
452749494e
Fix unowned bug 2 ( #11077 )
...
* fix: improve handled of unowned derived signals
* fix: improve handled of unowned derived signals
* lint
1 year ago
Rich Harris
8cbe8c1197
fix: bundle CSS types ( #11067 )
...
* make Css a proper namespace
* changeset
1 year ago
github-actions[bot]
ae3d472cbc
Version Packages (next) ( #11057 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 year ago
Dominic Gannaway
b87d57dc6e
fix: add `anchor` support to mount() API ( #11050 )
...
* fix: add `anchor` support to mount() API
* use ??
* fix inconsistent formatting
* required options before optional ones
* regenerate types
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
1 year ago
github-actions[bot]
d85d5a060b
Version Packages (next) ( #11035 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
c50883e496
fix: ensure transition errors are not swallowed ( #11039 )
...
* fix: ensure transition errors are not swallowed
* feedback
2 years ago
Rich Harris
92909834f0
breaking: prevent unparenthesized sequence expressions in attributes ( #11032 )
2 years ago
github-actions[bot]
2a1d3c6e73
Version Packages (next) ( #11034 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
3254d2e22f
fix: add missing package.json in package ( #11033 )
2 years ago
github-actions[bot]
6bb825b1b1
Version Packages (next) ( #11018 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
1d52c1323b
fix: improve unowned derived signal heuristics ( #11029 )
...
* fix: improve unowned derived signal heuristics
* spelling
2 years ago
Dominic Gannaway
2a784fce16
fix: correctly handle closure passed to $derived.by when destructuring ( #11028 )
...
* fix: correctly handle closure passed to $derived.by when destructuring
* oops
2 years ago
Rich Harris
3c155e3f3e
fix: ensure effect cleanup functions are called with null `this` ( #11024 )
2 years ago
Rich Harris
ad11c5087f
fix: ensure correct context for action update/destroy functions ( #11023 )
2 years ago
Rich Harris
0a162924fb
feat: more efficient hydration markers ( #11019 )
...
* remove <!--ssr:if:true--> comments
* remove <!--ssr:each_else--> comments
* changeset
* tidy up
2 years ago
Rich Harris
4f3fae7c6d
chore: compiler subpackage ( #10988 )
...
* move compiler.cjs to compiler/index.js
* changeset
* prettier
* ugh
2 years ago
Frédéric Crozatier
1c75b9ac4d
fix: add `name` to HTMLDetailsAttributes ( #11013 )
...
* add name attribute to HTMLDetailsAttributes
* changeset
2 years ago
github-actions[bot]
57813124d8
Version Packages (next) ( #10995 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
7bd853b1a8
fix: hydrate HTML with surrounding whitespace ( #10996 )
...
* fix: hydrate HTML with surrounding whitespace
* add test
* fix a few more short comments
* tidy up
* avoid magic strings
* avoid magic strings
* fix
* oops
2 years ago
Rich Harris
4a6316818c
feat: faster HTML tags ( #10986 )
...
* feat: faster HTML tags
* move code to where it is used
2 years ago
github-actions[bot]
442f2d7c39
Version Packages (next) ( #10983 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
b119600966
fix: ensure child effects are removed from parent branches ( #10985 )
...
* fix: ensure child effects are removed from parent branches
* fix: child effects are removed from parent branches
* oops
2 years ago
Rich Harris
5b2d5212d2
feat: expose `'svelte/internal'` ( #10987 )
...
* feat: expose svelte/internal
* fix
2 years ago
Dominic Gannaway
696b6922e8
fix: revert shorthand ssr comments ( #10980 )
...
* fix: revert shorthand ssr comments
* tests
* add changeset
2 years ago
github-actions[bot]
ef0191a6ae
Version Packages (next) ( #10977 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
227945d242
feat: re-export built-ins from `svelte/reactivity` on the server ( #10973 )
...
* chore: re-export builtins from svelte/reactivity on the server
* changeset
* fix
2 years ago
Dominic Gannaway
8971910940
fix: further improvements to effect scheduling and flushing ( #10971 )
...
* fix: improve effect scheduling
* fix: further improvements to effect scheduling and flushin
* add test
* simplify
* simplify
* lint
* fix e2e tests
* fix e2e tests
* simplify
* Update packages/svelte/src/internal/client/runtime.js
* Update packages/svelte/src/internal/client/runtime.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* Update packages/svelte/src/internal/client/runtime.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* Update packages/svelte/src/internal/client/runtime.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* style tweak
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
de6a802435
Version Packages (next) ( #10966 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
ea6fd72e79
fix: apply animate on prefix/suffix each block mutations ( #10965 )
2 years ago
github-actions[bot]
1c645c3c07
Version Packages (next) ( #10963 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
f118f8ea27
fix: improve action support for nested $effect ( #10962 )
...
* fix: improve action support for nested $effect
* tweaks
* simplify
* comment
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
d50b7661e5
fix: improve effect sequencing and execution order ( #10949 )
...
* WIP
* WIP
* address bad merge conflict
* add test
* fix issues
* remove debugger
* increase count
* increase count
* something different
* change
* change
* try it
* better comment
* remove deadcode
* move to continue
* fix tests
* add optimization
* unksip test
* Update packages/svelte/src/internal/client/dom/elements/bindings/this.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* Update packages/svelte/src/internal/client/dom/elements/bindings/this.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* Update packages/svelte/src/internal/client/dom/elements/bindings/this.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* remove import
* add changeset
* tweaks
* code golf
* remove pre effects
* more effect ordering stuff (#10958 )
* WIP
* i guess this change makes sense?
* simplify
* delete unused code
* delete pre_effect
* note to self
* tidy up
* typos
* style tweaks
* style tweaks
* improve reactive statement handling
* no return needed
* let prettier put everything on a single line
* style tweaks
* var
* failing test
* fix test
* fix ordering
* simplify
* ondestroy
* working
* note breaking change
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
b6598a3cc5
Version Packages (next) ( #10934 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
afe589e219
fix: improve order of pre-effect execution ( #10942 )
...
* chore: refactor local effect flushing to use new topological approach
2 years ago
Rich Harris
f2cca537a3
feat: use implicit return for each block keys ( #10938 )
...
* feat: use implicit return for each block keys
* swap args
* update test
2 years ago
Rich Harris
808cc6fca6
feat: shorter each blocks ( #10937 )
2 years ago
Rich Harris
8cfea9f36c
breaking: always run pre effects synchronously ( #10928 )
2 years ago
github-actions[bot]
b44311acc1
Version Packages (next) ( #10920 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
miunau
bbd44e9e47
fix: Add `elementtiming` HTMLAttribute, remove `crossorigin` from HTMLInputAttributes ( #10921 )
...
* Removed `crossorigin` from HTMLInputAttributes
* Added `elementtiming` attribute to HTMLAttributes
* changeset
---------
Co-authored-by: Rich Harris <hello@rich-harris.dev>
2 years ago
Rich Harris
59ff650ccb
remove if blocks around attribute updates ( #10917 )
2 years ago
github-actions[bot]
1e0054e915
Version Packages (next) ( #10889 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
miunau
0c05733d31
fix: Add `dirname` to HTMLInputAttributes ( #10908 )
...
* Add `dirname` to HTMLInputAttributes
* changeset
---------
Co-authored-by: Rich Harris <hello@rich-harris.dev>
2 years ago
Rich Harris
f1d9afe32f
changeset ( #10906 )
2 years ago
Rich Harris
8214075285
fix: update type of `options.target` ( #10892 )
2 years ago
Rich Harris
7f10642add
chore: improve hydration tests ( #10887 )
...
* use server-rendered HTML as hydration test starting point
* update tests
* remove _before.html files
* remove _before_head.html files
* override output with _expected.html
* expected output for binding-input case
* remove unused files
* fix
* changeset
2 years ago
github-actions[bot]
c47c5713e2
Version Packages (next) ( #10869 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
83f30bf0e8
fix: allow runes for variable declarations in the template ( #10879 )
2 years ago
Simon H
b468978e4d
fix: handle multiple snippet parameters with one or more being optional ( #10833 )
...
fixes #10825
Co-authored-by: Dominic Gannaway <dg@domgan.com>
2 years ago
Simon H
3eef1cb8cf
feat: take form resets into account for two way bindings ( #10617 )
...
* feat: take form resets into account for two way bindings
When resetting a form, the value of the inputs within it get out of sync with the bound value of those inputs. This PR introduces a reset listener on the parent form to reset the value in that case
closes #2659
* slightly different approach
* tweaks, test
* this is a breaking change, strictly speaking
* bind:files
* use capture phase
* tweak wording
* use promise, explain
2 years ago
Simon H
a339c28bb7
breaking: apply fallback value every time in runes mode ( #10797 )
...
* breaking: apply fallback value every time in runes mode
closes #9948
* apply fallback value in setter
* encapsulate fallback logic
* we should keep this logic out of b.set, since it's very specific to accessors
* oops
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
c60f2e38a3
Version Packages (next) ( #10832 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
8c2f6039c6
fix: improve element class attribute behaviour ( #10856 )
...
* fix: improve element class attribute behaviour
* Update packages/svelte/src/internal/client/dom/elements/class.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Dominic Gannaway
efe85fcce0
fix: more robust select element logic ( #10848 )
...
* follow up to 10846
* lint
* simplify
* don't update value
* rework logic, rely more on mutation observer, fix bug related to select multiple
* fix lazy select options bug
---------
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
Co-authored-by: brunnerh <brunnerh@users.noreply.github.com>
2 years ago
Dominic Gannaway
f5f9465edc
feat: add support for webkitdirectory DOM boolean attribute ( #10847 )
...
* feat: add support for webkitdirectory DOM boolean attribute
* add to types
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Dominic Gannaway
c564c77199
fix: ensure select value is updated upon select element removal ( #10846 )
...
* fix: ensure select value is updated upon select element removal
* lint
* lol
2 years ago
Simon H
682f4a6513
fix: adjust scope parent for named slots ( #10843 )
...
fixes #10802
2 years ago
Dominic Gannaway
117082b039
fix: improve handling of unowned derived signals ( #10842 )
2 years ago
Simon H
1fc41730a1
fix: don't override instance methods during legacy class creation ( #10834 )
...
fixes #10805
2 years ago
Simon H
f8c85d525d
fix: ensure capture events don't call delegated events ( #10831 )
...
fixes #10821
2 years ago
github-actions[bot]
1bfafe935b
Version Packages (next) ( #10814 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
d921fb97bd
fix: add types for svelte/reactivity ( #10817 )
...
* fix: add types for svelte/reactivity - closes #10816
* simplify
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
474fc7ebe0
fix: ensure arguments are supported on all reactive Date methods ( #10813 )
2 years ago
github-actions[bot]
afc2eea382
Version Packages (next) ( #10806 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
fe3b3b463c
feat: adds reactive Map class to svelte/reactivity ( #10803 )
...
* feat: adds reactive Map class to svelte/reactivity
* add docs
* add docs
* add test case
* types
* make reactive set better
* address feedback
* fix typo
* more efficient initialisation
* this is incorrect, it would fail if given a map for example
* increase consistency (with e.g. proxy.js)
* tidy up
* Revert "more efficient initialisation"
This reverts commit 29d4a8078b
.
* efficient initialization, without bugs this time
* convention
* delete make_iterable
* update changeset
* efficient initialization
* avoid generator functions
* Update sites/svelte-5-preview/src/routes/docs/content/01-api/02-runes.md
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
2 years ago
github-actions[bot]
924f0611f7
Version Packages (next) ( #10792 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
1e653ef4d8
fix: make `set.has(...)` granular for existing properties ( #10793 )
...
* fix: make set.has(...) granular
* changeset
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Simon H
fbbd89a917
fix: invalidate store when mutated inside each block ( #10785 )
...
* fix: invalidate store when mutated inside each block
fixes #10771
* Update packages/svelte/src/compiler/phases/3-transform/client/visitors/template.js
2 years ago
github-actions[bot]
2701c0ad64
Version Packages (next) ( #10782 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
339782f3e0
fix: handle component binding mutation ( #10786 )
...
* fix: handle component binding mutation
https://github.com/sveltejs/svelte/issues/10359#issuecomment-1991885046
* alternative approach to mutating props (#10788 )
Co-authored-by: Rich Harris <rich.harris@vercel.com>
---------
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
2cb78ac253
fix: adjust render effect ordering ( #10783 )
...
We can simplify pre effects by not doing the flush logic at all now. Instead we can move the flushing logic to the only place its needed – for beforeUpdate
2 years ago
github-actions[bot]
0c1026f166
Version Packages (next) ( #10770 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
3f7fcf9aec
feat: add reactive Set class to svelte/reactivity ( #10781 )
...
* feat: add reactive Set class to svelte/reactivity
* add some type safety
* simplify, read entries lazily
* failing unit test
* fix deletions
* minor tweaks
* work around effect ordering bug
* simplify, make entries lazy
* small tweak
* use var, minor tweaks
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Rich Harris
77f39ea988
breaking: make `$props()` rune non-generic ( #10694 )
...
* breaking: make `$props()` rune non-generic
* explain why type argument was removed
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
468ecda6ea
fix: improve internal render effect sequencing ( #10769 )
...
We need to additionally check the levels to not accidentally insert a higher level before a lower level
fixes #10741
2 years ago
github-actions[bot]
3bdef5486f
Version Packages (next) ( #10758 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
ef206fe1b5
fix: improve derived output for ssr ( #10757 )
...
* fix: improve derived output for ssr
* ts
* Update .changeset/rotten-rules-invite.md
---------
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
2 years ago
github-actions[bot]
8dc7cd2151
Version Packages (next) ( #10742 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Mostafa Kheibary
e16591abe8
docs: Change all the word "initialization" to "initialisation" ( #10708 )
...
* Docs: Change all initizlisation to initialisation
* Reverted to "initialization" when asserting errors with specific message
* Reverted to "initialization" where related to specific error message
2 years ago
Simon H
74474fe085
fix: prevent reactive statement reruns ( #10736 )
...
- run reactive statements only once per tick, even when they have indirect cyclic dependencies. Made possible by adding an array to the component context, which is filled with identifiers of the reactive statements, and which is cleared after all have run. Reactive statements rerunning before that will bail early if they detect they're still in the list
- part of the solution is to run all reactive statements, and then all render effects, which also fixes #10597
2 years ago
github-actions[bot]
f3bfb938ee
Version Packages (next) ( #10716 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
7c00f1dacb
fix: improve bind:this support around proxyied state ( #10732 )
...
* fix: improve bind:this support around proxyied state
* fix: improve bind:this support around proxyied state
* fix: improve bind:this support around proxyied state
2 years ago
Simon H
304db0d5b2
fix: bump specificity on all members of a selector list ( #10730 )
...
Previously, only `div span` in `div span, div div { .. }` would've gotten the specificity bump
2 years ago
Simon H
b1267b03b6
fix: error when exporting reassigned state from module context ( #10728 )
...
fixes #10380
2 years ago
Simon H
ae4af6841a
fix: eagerly unsubscribe when store is changed ( #10727 )
...
fixes #9346
2 years ago
Simon H
3fd02f1c49
breaking: preserve slots inside templates with a shadowrootmode attribute ( #10721 )
...
closes #10641
2 years ago
Simon H
fff3320517
chore: custom elements validation ( #10720 )
...
- add "missing customElement option" warning
- add backwards compat support for customElement={null}
2 years ago
Dominic Gannaway
622195cc21
fix: ensure performance.now() and requestAnimationFrame() are polyfilled in ssr ( #10715 )
2 years ago
github-actions[bot]
b3d0a0695a
Version Packages (next) ( #10701 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
d9d1022895
fix: improve indexed each equality ( #10702 )
2 years ago
Simon H
4285e6d814
fix: prevent snippet children conflict ( #10700 )
...
closes #10385
2 years ago
Dominic Gannaway
eedb59355f
fix: adjust keyed each block equality handling ( #10699 )
...
Fixes #10685
2 years ago
github-actions[bot]
d577740c82
Version Packages (next) ( #10693 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Ahmad
6fb64c9914
fix: improve namespace inference when having `{@render}` and `{@html}` tags ( #10631 )
...
* fix: treat snippets like normal components when inferring namespace
* n
* simplify
* better desc
* slight adjustment
* feedback
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* feedback
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* skip html tag
* test
* changeset name
* cleanup
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Simon H
5d3385c56f
fix: don't collapse whitespace within text nodes ( #10691 )
...
fixes #9892
2 years ago
github-actions[bot]
c4473dff7c
Version Packages (next) ( #10670 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
5768ac3027
fix: better ownership mutation validation ( #10673 )
...
- widen ownership when getContext is called, part of #10649
- widen ownership when assigning one proxy to another
- skip first 4 stack trace entries and bail if first after that is not a module, hinting at a mutation encapsulated in a .svelte.js file; part of #10649
2 years ago
Simon H
1ac313594c
fix: handle TypeScript's optional parameter syntax in snippets ( #10671 )
...
fixes #10530
2 years ago
Simon H
b1b51a404b
fix: deduplicate generated props and action arg names ( #10669 )
...
fixes #10662
2 years ago
github-actions[bot]
e21488fc4b
Version Packages (next) ( #10640 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
710f73f9cf
fix: improve derived rune destructuring support ( #10665 )
2 years ago
Simon H
56315df679
feat: allow arbitrary call expressions for render tags ( #10656 )
...
closes #9582
2 years ago
Dominic Gannaway
b2e9be2148
fix: improve ssr code generation for class property $derived ( #10661 )
...
* fix: improve ssr code generation for class property $derived
* fix ts
2 years ago
Dominic Gannaway
99e1665ce1
feat: improve ssr html mismatch validation ( #10658 )
...
* feat: improve ssr html mismatch validation
* update types
* Update packages/svelte/src/internal/server/index.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* Update packages/svelte/src/compiler/validate-options.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* feedback
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Simon H
3fe4940a9d
perf: bail early when traversing non-state ( #10654 )
...
This has a lot of overhead for large lists, and we can at least diminish in the "no state proxy" case by applying a sensible heuristic:
- If the value passed is a state proxy, read it
- If not, and if the value is an array, then bail because an array of state proxies is highly unlikely
- Traverse the first level of properties of the object and look if these are state, if not bail. State proxies nested further down are highly unlikely, too
part of #10637
2 years ago
Simon H
6625c1e080
fix: warn when `$props` rune not called ( #10655 )
...
It's a warning because even when typing it out and knowing what to do you'll always be in a state where the validation kicks in, and it would be too distracting to always see a compiler error during that short time frame.
closes #10374
2 years ago
Simon H
749d3aa413
fix: add `$set` and `$on` methods in legacy compat mode ( #10642 )
...
People could've done bind:this and called instance methods on the instance - a rare case, but not impossible. This shims $set and $on when in legacy compat mode. $destroy is never shimmed because you shouldn't manually destroy a component, ever, and there's no way to make that work in the new world.
closes #10420
2 years ago
Dominic Gannaway
a4a789db4d
fix: improve ssr output of dynamic textarea elements ( #10638 )
...
* fix: improve ssr output of dynamic textarea elements
* format
2 years ago
github-actions[bot]
512edaad6f
Version Packages (next) ( #10625 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
aa28ac3c7a
fix: improve deep_read performance ( #10624 )
2 years ago
github-actions[bot]
1822396a55
Version Packages (next) ( #10621 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
f658ca0d54
feat: add reactive Date object to svelte/reactivity ( #10622 )
...
* feat: add reactive Date object to svelte/reactivity
* add type safety, fix revealed typos
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
b4a70ea38a
fix: improve event delegation with shadowed bindings ( #10620 )
...
* fix: improve event delegation with shadowed bindings
* fix: improve event delegation with shadowed bindings
2 years ago
github-actions[bot]
cc6155922b
Version Packages (next) ( #10601 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
xxkl1
fc6666bc56
fix: prevent window listeners from triggering events twice ( #10611 )
...
fixes #10271
The prior fix in #10307 wasn't quite right, because JSDom has a difference between window and event.composedPath which sounds like a bug, and a workaround in that PR made it so the test did pass when the bug still occurred. That's also why there isn't a test here, because we can't properly test this using JSDom.
2 years ago
Simon H
45e385721c
fix: don't clear date input on temporarily invalid value ( #10616 )
...
fixes #7897
No test because this is only visually observable
2 years ago
Dominic Gannaway
2de741219f
fix: correctly handle proxied signal writes before reads ( #10612 )
...
* fix: correctly handle proxied signal writes before reads
* managed
* Update packages/svelte/src/internal/client/proxy.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Simon H
506196b72b
feat: allow dynamic `type` attribute with `bind:value` ( #10608 )
...
Since these all share the same underlying small runtime code, there's no reason anymore to not allow it.
closes #10256
closes #3921
2 years ago
Simon H
db0b802fc2
fix: use safe-equals comparison for `@const` tags in legacy mode ( #10606 )
...
fixes #10600
2 years ago
Dominic Gannaway
c10337cfb2
fix: improve proxy effect dependency tracking ( #10605 )
2 years ago
Rich Harris
6afaf75a37
fix: synchronise element bindings ( #10512 )
...
fixes #10511
We used the animation frame dance previously where the `$effect` timing was slightly different and did not wait on its children before rerunning. With that changed now everything false into place nicely.
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
2 years ago
Simon H
a2164ff9f4
fix: make `bind_this` implementation more robust ( #10598 )
...
The previous `bind_this` implementation had flaws around timing and didn't work correctly when the binding wasn't `$state` in runes mode.
This PR reimplements `bind_this` by aligning it more with how Svelte 4 bindings work, namely reacting to each block context variables updates properly and introducing a mechanism to get the previous binding destination using said variables.
2 years ago
github-actions[bot]
d2b11ec4da
Version Packages (next) ( #10589 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
ec52c75cc4
fix: permit whitespace within template scripts ( #10591 )
2 years ago
Dominic Gannaway
a2fbef2050
fix: improve import event handler support ( #10592 )
...
* fix: improve import event handler support
* simplify
2 years ago
Simon H
66b624491e
fix: allow boolean `contenteditable` attribute ( #10590 )
...
fixes #10559
2 years ago
Dominic Gannaway
58008479fc
fix: improve $inspect handling of derived objects ( #10584 )
...
* fix: improve $inspect handling of derived objects
* Update packages/svelte/src/internal/client/runtime.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
github-actions[bot]
187400b409
Version Packages (next) ( #10579 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
ddb968cc35
fix: ensure proxy owner set always has 1 or more members ( #10577 )
...
* fix missing owners
* regression test
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
88389ad2cf
Version Packages (next) ( #10571 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Ahmad
d6e0fbd8ba
fix: handle member expressions in directives ( #10576 )
2 years ago
Dominic Gannaway
802bfcabec
fix: improve props spreading logic ( #10574 )
2 years ago
Rich Harris
96eae28ed2
fix: remove memory leak, make `beforeUpdate` etc work correctly ( #10570 )
...
* fix: remove memory leak
* changeset
* mutable_source is only used in non-runes mode, no need to check here
* simplify
* oops
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
662eda4ae7
Version Packages (next) ( #10568 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
8613a6f28a
fix: stack-trace-based readonly validation ( #10464 )
...
* fix: remove readonly validation
The readonly dev time validation results in false-negative object equality checks: The original object is proxified and thus comparisons could be between the unproxified and proxified version, which will always return false. Fixes #10372
There's also the problem that an object could be passed into a component but then passed upwards into shared state. At that point, it should no longer be readonly, but it's not possible to statically analyze these points. Fixes #10372
Lastly, the each block logic mutates an internal array and that also throws errors with the readonly logic. Fixes #10037
* reinstate tests
* track ownership of state and mutations
* working?
* remove old changeset
* tidy
* error
* simplify
* fix
* fix
* fix
* tidy
* make it a warning
* rename test
* remove unused test
* update tests
* slap ts-expect-error everywhere, because its too finicky otherwise
* oops
* oh no the hall monitor is here
* only call add_owner in dev
* only owners can transfer ownership
* simplify
* fixes
* tidy up
* fix type error
* while we're at it
* rename file
* rename functions
* add some comments
* move ownership checking logic
* ugh eslint
* more detailed message
* only add filename in dev
* comment
* update tests
* move more code
* undo change to sourcemap tests
* allow proxy to have multiple owners
* use SignalDebug
* i was doing this all wrong
* tidy up
* implement inheritance
* fix
* tidy up
* update filename stuff
* changeset
---------
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
f1550b2ea3
fix: correct context applied to batch_inspect ( #10569 )
2 years ago
Rich Harris
02c6176622
feat: allow state/derived/props to be explicitly exported from components ( #10523 )
...
* Revert "fix: stricter validation for component exports (#10430 )"
This reverts commit dab0a43693
.
* dont remove old changeset
* changeset
* tweak error messages
* make component-exported state work
* consistency
* fix
* fix
* update messages
* update tests
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
ad2b8b9112
Version Packages (next) ( #10539 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
bcb1b8eb98
fix: improve handling of unowned derived signals ( #10565 )
...
* fix: improve handling of unowned derived signals
* lint
2 years ago
Dominic Gannaway
0afb8d489e
fix: improve state store mutation compiler output ( #10561 )
2 years ago
Dominic Gannaway
5698fb789c
fix: better handling of derived signals that have no dependencies ( #10558 )
...
* fix: better handling of derived signals that have no dependencies
* fix: better handling of derived signals that have no dependencies
2 years ago
Simon H
aef245364c
fix: only escape characters in SSR template ( #10555 )
...
Adjusts the escaping mechanism done for server compilation. For template literals it's now only applied when explicitly told, which is the case for generated literals from the html template. Fixes a bug where a template literal string inside the `@html` tag was wrongfully escaped (https://github.com/sveltejs/svelte/issues/10359#issuecomment-1949678228 )
2 years ago
Simon H
08978bfae8
fix: don't execute scripts inside `@html` when instantiated on the client ( #10556 )
...
In Svelte 4, scripts inside `@html` were not executed when it was created client-side. This is because `innerHTML = ..` which was used under the hood does not execute scripts due to security reasons. This adjusts the code so the same is true for Svelte 5.
2 years ago
Simon H
b80d9bd654
fix: wire up `events` in `mount` correctly and fix its types ( #10553 )
...
fixes #10551
2 years ago
Simon H
f5102013af
fix: better interop of `$state` with actions/`$:` statements ( #10543 )
...
Ensure update methods of actions and reactive statements work with fine-grained `$state` by deep-reading them. This is necessary because mutations to `$state` objects don't notify listeners to only the object as a whole, it only notifies the listeners of the property that changed.
fixes #10460
fixes https://github.com/simeydotme/svelte-range-slider-pips/issues/130
2 years ago
Dominic Gannaway
7032837ef0
fix: better handling of empty text node hydration ( #10545 )
...
* fix: better handling of empty text node hydration
2 years ago
Dominic Gannaway
71db9edcdc
fix: improve each block item equality for immutable mode ( #10537 )
...
* fix: improve each block item equality for immutable mode
* alter
2 years ago
github-actions[bot]
01b6543739
Version Packages (next) ( #10534 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
41cdbafc40
fix: improve effect over-fire on store subscription init ( #10535 )
2 years ago
Rich Harris
8feb86583a
fix: use init properties when exporting non-state values ( #10521 )
2 years ago
github-actions[bot]
a279e802d5
Version Packages (next) ( #10528 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Ahmad
06e1d86091
fix: visit expression node in directives ( #10527 )
...
* fix: visit child nodes in directives
* test
* cleanup
* small change
* lint
* err
* types
* define the set locally, limit the blast radius
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Rich Harris
3da6cef29b
chore: improve code generation for `bind:this` in SSR mode ( #10524 )
...
* chore: improve code generation for `bind:this` in SSR mode
* test
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
b5628af72e
Version Packages (next) ( #10518 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
2755401034
breaking: remove `createRoot`, adjust `mount`/`hydrate` APIs, introduce `unmount` ( #10516 )
...
* breaking: remove `createRoot`, adjust `mount`/`hydrate` APIs, introduce `unmount`
closes #9827
* Update packages/svelte/src/internal/client/runtime.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
---------
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
2 years ago
github-actions[bot]
11b69459b9
Version Packages (next) ( #10509 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
5605e8cf49
feat: implement support for `:is(...)` and `:where(...)` ( #10490 )
...
* failing test for :is(...)
* simplify
* trim
* factor out truncate function
* pass stylesheet around
* recurse into :is and :where
* fix types
* fix types
* almost there
* gah so close
* tada
* changeset
* simplify
* feat: nested CSS support (#10491 )
* parse nested CSS
* tests
* track parent rules
* some progress
* switch it up
* pruning
* works
* changeset
* lint
* error early on invalid nesting selector
* tidy
* note to self
* fix some specificity stuff
* failing test
* note to self
* fix: correctly scope CSS selectors with descendant combinators (#10502 )
* fix traversal, but break some other stuff
* man this is fucken hard
* fixes
* getting closer
* be conservative for now
* tidy
* invert
* invert
* simplify
* switch
* for now
* progress
* i think it works?
* fix
* tidy up
* revert some stuff
* remove some junk
* handle weird cases
* update
* tweak
* shrink
* changeset
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* Update playgrounds/sandbox/run.js
* changeset
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Rich Harris
40ac2cafd6
chore: treeshakeable store subs ( #10506 )
...
* make store subscriptions treeshakeable on the server
* drive-by fix
* changeset
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
df10204fcc
fix: improve bind:this support for each blocks ( #10510 )
2 years ago
Simon H
71601ba2e5
fix: warn against accidental global event referenced ( #10442 )
...
* fix: warn against accidental global event referenced
closes #10393
* remove list
* remove else
* tweak
* update test
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
2a5ca51594
Version Packages (next) ( #10499 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
72ff5366de
feat: add hydrate method, make hydration treeshakeable ( #10497 )
...
* feat: add hydrate method, make hydration treeshakeable
Introduces a new `hydrate` method which does hydration. Refactors code so that hydration-related code is treeshaken out when not using that method.
closes #9533
part of #9827
* get docs building
* ugh
* one more
* Update packages/svelte/scripts/check-treeshakeability.js
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
* warn
* Update sites/svelte-5-preview/src/routes/docs/content/01-api/05-functions.md
---------
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
2c93c255f0
fix: makes keyed each blocks consistent between dev and prod ( #10500 )
2 years ago
Ahmad
3f75ea64ca
fix: allow stores in `transition`,`animation`,`use` directives ( #10481 )
...
* fix: allow stores in `transition`,`animation`,`use` directives
* ssr
* naming
* linting is broken
* hope it works
* style
* desc
2 years ago
github-actions[bot]
baf2b67f3f
Version Packages (next) ( #10479 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
f8ff2b6ea3
chore: source maps for preprocessors + tests ( #10459 )
...
Add source map merging for preprocessors and get tests passing.
- fixed some issues around the `sources` array where they weren't calculated relative to the input correctly
- adjusted some CSS tests because due to our own CSS parser the AST is less granular, so there are less mappings now. Don't think this is a problem, but worth thinking about
- removed enableSourcemap but only log a warning, the reason this was introduced was to mitigate a bug in Vite which occured when having the source map inlined into the SSR'd output. Since SSR doesn't contain inlined CSS anymore (and if it did, we would omit the source map) the reason for which it was introduced no longer exists
- files without js mapping in it have no source mappings yet (originally added in Svelte 4 for #6092 )
2 years ago
Dominic Gannaway
4b274dd00d
feat: derive destructured derived objects values ( #10488 )
...
* feat: derive destructured derived objects values
* address feedback
* address feedback
2 years ago
Dominic Gannaway
cc273f7d53
fix: prevent infinite loop when writing to store using shorthand ( #10477 )
...
Fixes #10472
This PR ensures we untrack parts of the compiled output to a store write, such as that this no longer brings up an infinite updates error
2 years ago
github-actions[bot]
643edc34db
Version Packages (next) ( #10470 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
74742d9233
fix: improve global transition outro handling ( #10474 )
2 years ago
Rich Harris
d41d0c26ad
chore: rename `$derived.call` to `$derived.by` ( #10445 )
...
* rename $derived.call to $derived.by
* more replacements, plus a compiler error
* regenerate types
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
9cee83c864
Version Packages (next) ( #10457 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
667ffb7a39
fix: improve global transition handling of effect cleardown ( #10469 )
...
* fix: improve global transition handling of effect cleardown
2 years ago
Dominic Gannaway
1b56a3219c
fix: ensure inspect fires on prop changes ( #10468 )
...
* fix: ensure inspect fires on prop changes
* fix: ensure inspect fires on prop changes
* fix: ensure inspect fires on prop changes
2 years ago
Simon H
1a721e5916
fix: only throw bind error when not passing a value ( #10090 )
...
Relax the runtime error to only throw when you're passing a binding with an undefined value. This makes it possible to provide components in a way that can be used more flexibly while keeping the error to guard against the case that we want to avoid: a default value propagation up.
2 years ago
Dominic Gannaway
9161448ee5
fix: improve handling of object property deletions ( #10456 )
...
* fix: improve handling of object property deletions
* revert
* revert
* revert
2 years ago
github-actions[bot]
89123a8117
Version Packages (next) ( #10434 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
999fca97cf
fix: use hybrid scoping strategy for consistent specificity increase ( #10443 )
...
* end the specificity wars
* tweaks
* document breaking change
* blurgh
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Simon H
5dd9951cb6
fix: handle sole empty expression tags ( #10433 )
...
* fix: handle sole empty expression tags
When there's only a single expression tag and its value evaluates to the empty string, special handling is needed to create and insert a text node
fixes #10426
* fix
* need this, too
* Update packages/svelte/src/internal/client/operations.js
---------
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
2 years ago
Simon H
456cf843d2
fix: throw validation error when binding to each argument in runes mode ( #10441 )
...
closes #10437
2 years ago
Ahmad
49bfb6b1d6
fix: improve animation name transformation ( #10432 )
...
* fix: improve animation name transformation
* oops
* s
* minor style tweaks
* expand changeset description
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
2d032c733d
Version Packages (next) ( #10419 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
4fcd1cb1ed
fix: add compiler error for each block mutations in runes mode ( #10428 )
...
* fix: improve code generation for mutation to each block reference
* fix: add compiler error for each block mutations in runes mode
* lint
* lint
* lint
* use existing validate_assignment logic
* assignment, not mutation
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Simon H
dab0a43693
fix: stricter validation for component exports ( #10430 )
...
disallow exporting props, derived and reassigned state from within components
closes #10310 , closes #10311 , closes #10293
2 years ago
Dominic Gannaway
0e011add4e
fix: improve indexed each array reconcilation ( #10422 )
...
* fix: improve indexed each array reconcilation
* simplify
2 years ago
Rich Harris
623340a1de
fix: make beforeUpdate/afterUpdate behave more like Svelte 4 ( #10408 )
...
Closes #9420 .
This PR creates an $effect.pre (before beforeUpdate and an $effect (for afterUpdate) and, inside those, listen for all locally declared signals plus reactive props. This does mean that we need to link the locally declared signals to the component context (the reverse of the current behaviour, wherein we link the component context to locally declared signals).
2 years ago
github-actions[bot]
983db98756
Version Packages (next) ( #10417 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Ahmad
89c4cf393f
fix: set `open` binding value in `<details>` ( #10413 )
...
* fix: set initial value for `open` binding in `<details>`
* accurate desc
2 years ago
github-actions[bot]
76620e7d02
Version Packages (next) ( #10409 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
f9f5d3a1be
fix: only update lazy properties that have actually changed ( #10415 )
...
* fix: only update lazy properties that have actually changed
* code golf
* changeset
* Add test
2 years ago
Simon H
9aa0ed3eb6
fix: handle nested script tags ( #10416 )
...
fixes #9484
2 years ago
Rich Harris
90f8b63bee
fix: run `onDestroy` cleanup during SSR ( #10297 )
...
fixes #10296
Also make sure to use the server export conditions when resolving Svelte imports from inside the server compiler output
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
2 years ago
Simon H
268ac95fde
fix: properly analyze group expressions ( #10410 )
...
fixes #9947 for real
closes #10379
2 years ago
Daniel Imfeld
255693e78f
fix: correctly determine binding scope of `let:` directives ( #10395 )
...
Fixes #9797
Also added missing validation error around duplicate slots
---------
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
2 years ago
github-actions[bot]
a84d02ff08
Version Packages (next) ( #10406 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
b831562218
chore: bump zimmerframe ( #10405 )
...
* bump zimmerframe
* Create famous-pants-pay.md
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
20893270db
Version Packages (next) ( #10402 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon Holthausen
b63ab91c7b
chore: bump zimmerframe to resolve AST-traversal-related bugs
...
fixes #10371
fixes #10370
2 years ago
github-actions[bot]
1381d1937c
Version Packages (next) ( #10399 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Daniel Imfeld
97d3ec2f89
fix: allow `let:` directives on slot elements ( #10391 )
...
fixes #10382
---------
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
2 years ago
Simon H
b6fcc149b8
fix: repair each block length mismatches during hydration ( #10398 )
...
fixes #10332
2 years ago
github-actions[bot]
d08e05bf7f
Version Packages (next) ( #10367 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
bd0ebf3b81
fix: correctly determine `bind:group` members ( #10368 )
...
- Previously, any each block parents where used as keys for the sub group. That's wrong, it should only be using each blocks whos declarations contribute to the `bind:group` expression. Fixes #10345
- Only the left-most identifier of the expression was used to determine the binding group. This is wrong, all identifiers within the expression need to be taken into account. Fixes #9947
2 years ago
Rich Harris
3b78c14be8
fix: make inline doc links valid ( #10365 )
...
* fix: make inline doc links valid
* couple more
* doh
* ugh
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
283366b13a
Version Packages (next) ( #10357 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
e75c9acd18
fix: don't reuse proxies when state symbol refers to stale value ( #10343 )
...
* fix: don't reuse proxies when state symbol refers to stale value
When somebody copies over the state symbol property onto a new object (you can retrieve the symbol by using `Reflect.ownKeys(...)`), it was wrongfully assumed that it always relates to the current value. This PR adds an additional check that this is actually the case.
This also adds a dev time warning when an object is frozen but contains a state property, which hints at a bug in user land.
fixes #10316
* lint
* rename
* remove warning
* update test
* changeset
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
2 years ago
gtmnayan
bce4f3f01c
fix: strip typescript assertions before analysis ( #10329 )
...
* strip typescript assertions before analysis
* add test
* changeset
* move ts handling from transform to before analysis
* format
* types
* remove unwrap_ts_expression
---------
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
2 years ago
github-actions[bot]
2a31987da5
Version Packages (next) ( #10353 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
36fc203eec
fix: correctly update tweened store initialized with nullish value ( #10356 )
...
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Rich Harris
0aedab8d5e
fix: insert empty text nodes during hydration, where necessary ( #9729 )
...
* Revert "fix: improve template text node serialization (#9722 )"
This reverts commit 2fa06447cf
.
* regression test for #9722
* add back failing test
* better test
* create text nodes during hydration
* partial fix
* partial fix
* remove nasty brittle logic
* simplify
* refactor
* rename
* thunkify
* fix
* add back changeset
* changeset
* lint
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
c0f280c7e7
Version Packages (next) ( #10327 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
dcfae026da
fix: improve unstate handling of non enumerable properties ( #10348 )
...
* fix: improve unstate handling of non enumerable properties
* Update packages/svelte/src/internal/client/proxy.js
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Jayden Carey
f9ed9cfc4b
fix: Update `$derived.call` type declaration ( #10349 )
...
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
S. Elliott Johnson
d309a9d47a
feat: Variadic snippets ( #9988 )
...
* give this another try
* fix: lint
* fix: Forgot to save
* feat: it works boiiii
* look, ok, it did work, i just needed to update the snapshots
* bruh
* changeset
* feat: ok I think the client snippet block finally works
* feat: current tests pass; I'm sure I'm missing stuff for new things
* fix: snapshot
* feat: I think non-destructured rest should work now?
* chore: duplicated computation
* feat: Tests (passing and failing
* feat: it's... alive?
* chore: Clean up my messes
* chore: devtime stuff
* fix: fmt
* chore: see if this fixes repl
* chore: make naming more offensive
* fix: Don't throw on missing keys, return undefined as it usually would
* Update packages/svelte/src/compiler/phases/1-parse/state/tag.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* Update packages/svelte/src/compiler/phases/1-parse/state/tag.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* fix: Hopefully default param values now work
* dumb
* types
* feat: Test it
* fix: Turns out javascript parameters are optional
* feat: The Final Solution
* document function
* feat: Better bracket matching, unit tests
* feat: exclude test files from publish
* feat: More unit tests
* feat: Use more efficient parsing for @const
* Update .changeset/curvy-cups-cough.md
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* Update packages/svelte/package.json
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* Update packages/svelte/src/compiler/phases/1-parse/utils/bracket.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* fix: changesets
* chore: additional comments
* fix: kill foreach
* fix: foreach again
* feat: Docs
* Revert "fix: kill foreach"
This reverts commit 9a688cc543
.
* fix: My own stupidity
* fix: style
* fix - maybe
* Update sites/svelte-5-preview/src/routes/docs/content/01-api/03-snippets.md
* Update tag.js
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
* Update .changeset/curvy-cups-cough.md
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* chore: Remove rest params
* Delete .changeset/eighty-rivers-wash.md
* fix: Honestly idk why it was broken but it's fixed now
* fix: var name lol
* fix: typegen
* fix: idk
* fix: It looks like a bunch of unformatted shit came in through main?? idk
* Revert "fix: It looks like a bunch of unformatted shit came in through main?? idk"
This reverts commit ab851d5627
.
* fix: format again
* this is getting ridiculous
* Update tag.js
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
* fix errors
* simplify a bit
* use read_context
* use read_context for const as well
* remove unused code
* unused import
* unused export
* remove spread args. sorry elliott
* tidy up SnippetBlock interface
* fix test
* simplify
* tweak
* revert example, so that it matches the surrounding text
* move PropsWithChildren back to public.d.ts
* update typing docs, so that it flows from previous example
* temporarily revert const parsing changes, to get prettier working again (???)
* oops
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
23b38a3471
fix: improve handling of unowned derived signals ( #10342 )
2 years ago
Arslan
145b233041
fix: add `onscrollend` event type ( #10337 )
...
* feat: add scrollend type
* Update .changeset/tame-cycles-kneel.md
2 years ago
Dominic Gannaway
4d0d0a3a9d
fix: correctly reference destructured derived binding in event handler ( #10333 )
2 years ago
Simon Holthausen
6145be5c69
fix: add proper typings for `$derived.call`
...
fixes #10330
2 years ago
Rich Harris
5ebd9e0b45
fix: disallow TODO errors ( #10326 )
...
* disallow TODO errors
* replace TODO errors
* changeset
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
d31ccf3be3
Version Packages (next) ( #10324 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
d9a6b8b17a
chore: add $derived.call rune ( #10240 )
...
* chore: add $derived.fn rune
* fix strange bug
* update types
* remove prev stuff
* regenerate types
* $derived.fn -> $derived.call
* docs
* regenerate types
* get rid of $$derived
* tighten up validation etc
* fix tests
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Simon H
76a4bbd5ec
fix: handle event delegation correctly when having sibling event listeners ( #10307 )
...
If you had `on:` directives listening to the same name (through multiple on:click on the same element or indirectly through multiple `<svelte:window>` elements with event listeners of the same name) there was a bug of delegation firing too often. This PR fixes that by tweaking the "should I continue with the given path index" logic.
fixes #10271
2 years ago
github-actions[bot]
ecba825fb7
Version Packages (next) ( #10304 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rogério Luiz Aques de Amorim
a58d93f8bf
fix: parser error when using semicolon inside quotes in style ( #10221 )
...
* fix error when using semicolon inside quotes in style
* refactor to include { like in the original code
* simplified version of regex
Co-authored-by: navorite <navorite@gmail.com>
* add changeset
* add changeset
* add test
* Update .changeset/seven-hornets-smile.md
Co-authored-by: navorite <navorite@gmail.com>
* undo demo.css change
* fix support-font-face test not passing
* add double quotes
* beef up test
* robustify parsing
* Update .changeset/seven-hornets-smile.md
---------
Co-authored-by: navorite <navorite@gmail.com>
Co-authored-by: Rogerio Luiz Aques de Amorim <Rogerio Amorim>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Rich Harris <hello@rich-harris.dev>
2 years ago
Lucas I
f7cc8cb263
fix: Add missing miter-clip and arcs value to stroke-linejoin attribute ( #10141 )
...
* Add missing miter-clip and arcs attribute stroke-linejoin
* format
* changeset
---------
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
Co-authored-by: Rich Harris <hello@rich-harris.dev>
2 years ago
Dominic Gannaway
0504ad5ed7
chore: cleanup derived destruction ( #10303 )
...
* chore: cleanup derived destruction
* add changeset
* cleanup
* cleanup
2 years ago
github-actions[bot]
5a81610a2e
Version Packages (next) ( #10290 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
005ff894ff
fix: prevent false positive store error in module script ( #10291 )
...
When a variable with the same name was declared in the instance script, the module-no-auto-store-subscription-validation would fail
fixes #10285
2 years ago
Simon H
107ec1c848
fix: handle deep assignments to `$state()` class properties correctly ( #10289 )
...
fixes #10276
2 years ago
Simon H
c8da99646a
fix: `:global()` compound selector validation tweak ( #10287 )
...
Allow type selector in `:global()` when it's at a start of a compound selector
fixes #10286
2 years ago
github-actions[bot]
722bd56bc4
Version Packages (next) ( #10229 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
fb61f4eb70
fix: correctly cleanup unowned derived dependency memory ( #10280 )
...
* fix: correctly cleanup unowned derived dependency memory
* recursive
* recursive
2 years ago
Simon Holthausen
1538264bd5
fix: don't hoist function when already referenced in module scope
...
fixes #10279
2 years ago
Simon Holthausen
14d7b26897
fix: more robust url equality check at dev time
...
fixes #10021
2 years ago
Dominic Gannaway
a476e81e63
chore: improve $state static reference warning heuristics ( #10275 )
...
* chore: improve $state static reference warning heuristics
* fix bug
* update test
* lint
2 years ago
Simon H
03c067f598
fix: try-catch deep read ( #10270 )
...
Accessing values might throw errors if they're not just values but getters. Guard against that by try-catching every access so that `$inspect` doesn't fail
fixes the iframe error in the playground reported in #10174
2 years ago
Simon H
14bf4b4b2c
fix: ensure proxy is updated before notifying listeners ( #10267 )
...
fixes #10264
fixes #10265
2 years ago
Simon H
036e88f1f7
fix: allow `:global(..)` in compound selectors ( #10266 )
...
Someone could programmatically add a class to an element and Svelte doesn't see it, so having global be part of a modifier is necessary so that Svelte doesn't mark it as unused
fixes #10210
2 years ago
Simon H
6b0bd8b23a
fix: hydrate controlled each blocks correctly ( #10259 )
...
Controlled each block didn't handle hydration of fallback correctly
fixes #10231
2 years ago
Simon H
434a58711f
fix: sanitize component event names ( #10235 )
...
fixes #9916
2 years ago
Dominic Gannaway
88582479f2
chore: improve should_proxy_or_freeze logic internally ( #10249 )
2 years ago
Simon Holthausen
776ac3c176
fix: add back `derived` type overload
...
fixes #9866
2 years ago
gtmnayan
0071e0252a
fix: allow ts casts in bindings ( #10181 )
...
fixes #10179
---------
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
2 years ago
Simon Holthausen
2861ad66e0
fix: correct increment/decrement code generation
...
fixes #10226
2 years ago
github-actions[bot]
2e238ada92
Version Packages (next) ( #10202 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
9f87f059d2
fix: skip certain slot validations for custom elements ( #10207 )
...
fixes #10196
2 years ago
Dominic Gannaway
e398047f8f
fix: correctly apply event.currentTarget ( #10216 )
2 years ago
Dominic Gannaway
2b2bd06d6f
fix: ensure derived signals properly capture consumers ( #10213 )
...
* fix: ensure derived signals properly capture consumers
* fix: ensure derived signals properly capture consumers
2 years ago
Dominic Gannaway
c7a7725abd
fix: add compiler error for invalid <p> contents ( #10201 )
...
* fix: add compiler error for invalid <p> contents
* add test
2 years ago
github-actions[bot]
73c5983e9a
Version Packages (next) ( #10188 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
b04c5bb398
fix: improve invalid nested interactive element error ( #10199 )
...
* fix: improve invalid nested interactive element error
* add test
* revise
2 years ago
Simon H
db8cba3216
fix: react to mutated slot props in legacy mode ( #10197 )
...
If a list is passed to a component and an item of that list is passed as a slot prop back up, then mutating a property of that item did not result in a rerun. The reason was that derived is using object identity equality, resulting in the value not being updated. To fix it, we use safe-equals in this situations instead.
2 years ago
Dominic Gannaway
b94d72bbfb
fix: improve transition outro easing ( #10190 )
...
* fix: improve transition outro easing
* Update tests
2 years ago
Dominic Gannaway
86bbc83544
fix: ensure unstate() only deeply applies to plain objects and arrays ( #10191 )
...
* fix: ensure unstate() only deeply applies to plain objects and arrays
* tweak
2 years ago
Simon H
1b675c0264
fix: transform textarea and contenteditable binding expressions ( #10187 )
...
fixes #10185
2 years ago
github-actions[bot]
d509de2503
Version Packages (next) ( #10164 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
b3ba25da94
fix: simplify event delegation logic ( #10169 )
...
* fix: simplify event delegation logic
Only delegate event attributes, and don't take into account bindings/actions while determining that. Never delegate `on:` directives. This simplifies the logic and makes it easier to explain, while avoiding any accidental breaking changes when upgrading from Svelte 4 to 5 without changing code.
Fixes #10165
Related to #9714
* update types
2 years ago
Dominic Gannaway
c628904861
fix: ensure topological order for render effects ( #10175 )
...
* fix: ensure topological order for render effects
* optimize
2 years ago
Dominic Gannaway
05bd922f7f
fix: improve nested effect heuristics ( #10171 )
2 years ago
Dominic Gannaway
0eca0ace94
fix: improve event handling compatibility with delegation ( #10168 )
...
* fix: improve event handling compatibility with delegation
* fix
* lint
* add test
2 years ago
Dominic Gannaway
a26012fc62
fix: prevent transition action overfiring ( #10163 )
2 years ago
github-actions[bot]
2e9e8e8454
Version Packages (next) ( #10158 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
ef3e0721fc
fix: improve intro transitions on dynamic mount ( #10162 )
...
* fix: improve intro transitions on dynamic mount
* fix: improve intro transitions on dynamic mount
* fix: improve intro transitions on dynamic mount
2 years ago
Simon H
da9a5bf1cf
fix: make `@types/estree` a dependency ( #10150 )
...
types are exposed through our types, so we need to add it as a dependency
fixes #10010
2 years ago
Simon Holthausen
a271878abe
fix: adjust `parse` return type
...
It returns the root which contains the Svelte nodes
2 years ago
Simon Holthausen
c7cb90c91c
fix: adjust `$inspect.with` type
2 years ago
Dominic Gannaway
ab13356008
fix: improve code generation ( #10156 )
...
* fix: improve code generation
* format
2 years ago
Dominic Gannaway
8c95777644
fix: improve how transitions are handled on mount ( #10157 )
2 years ago
github-actions[bot]
a1a3e819c9
Version Packages (next) ( #10148 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
ff8dff993d
fix: improve ssr template code generation ( #10151 )
...
* fix: improve ssr template code generation
* lint
2 years ago
Dominic Gannaway
e2fc04d0d5
fix: improve template literal expression output generation ( #10147 )
...
* fix: improve template literal expression output generation
* do not proxy template literal
2 years ago
github-actions[bot]
a13c946966
Version Packages (next) ( #10137 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
0e9b83c20d
fix: improve outro behavior with transitions ( #10139 )
...
* fix: improve outro behavior with transitions
* debug
* revise
2 years ago
Dominic Gannaway
4ad5b73341
fix: further animation transition improvements ( #10138 )
...
* fix: further animation transition improvements
* clever hack
2 years ago
brunnerh
960fe308a5
chore: remove internal functions from `svelte/transition` exports ( #10132 )
...
* chore: remove internal functions from `svelte/transition` exports
* regenerate types
2 years ago
Dominic Gannaway
08579461b1
fix: improve animation heuristics ( #10119 )
...
* fix: improve animation heuristics
better fix
better fix
* improve-animation
* more fixes
* use rAF
* feedback
* fix absolute positioning
* fix more
* revert
* more fixes
2 years ago
github-actions[bot]
c05e94f26e
Version Packages (next) ( #10122 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon Holthausen
dda4ad510f
fix: silence false positive state warning
...
the continue was essentially a noop because it targeted the wrong for loop
2 years ago
Simon Holthausen
d171a39b0a
fix: keep intermediate number value representations
...
fixes #9959
2 years ago
Simon Holthausen
14dbc1be17
fix: make `ComponentType` generic optional
...
fixes #9975
2 years ago
Simon H
aa5a62396a
fix: legacy reactive dependencies tweak ( #10128 )
...
take into account member expressions when determining legacy reactive dependencies
fixes #9954
2 years ago
Dominic Gannaway
901cfc9f15
fix: improve ssr template literal generation ( #10127 )
2 years ago
navorite
cd2263fdab
fix: infer `svg` namespace correctly ( #10027 )
...
Add recursive check for logic blocks, ignore things such as ConstTags and Comments
closes #10025
---------
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
2 years ago
Dominic Gannaway
f5dc562ee7
fix: ensure nested blocks are inert during outro transitions ( #10126 )
...
* fix: ensure nested blocks are inert during outro transitions
* lint
2 years ago
Simon H
3624a4c2a0
feat: allow modifiying derived props ( #10080 )
...
It's an unnecessary restruction because it can be worked around (hide it behind a getter/setter), already works for bind:x and prevents valid use cases
2 years ago
Nguyen Tran
1ff9c0f2b9
fix: support destructurings containing await ( #9962 )
...
Adds a traversion mechanism to found out if destructured expressions contain await
Fixes #9686
Fixes #9312
Fixes #9982
2 years ago
Dominic Gannaway
d16f17c306
fix: improve signal consumer tracking behavior ( #10121 )
2 years ago
github-actions[bot]
092370b43f
Version Packages (next) ( #10112 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
527d099a09
fix: transform `{@render ...}` expression ( #10116 )
...
fixes #10059
2 years ago
Dominic Gannaway
05789daff9
fix: allow transition undefined payload + microtask queue handling ( #10117 )
...
* fix: allow transition undefined payload
* cleanup
* cleanup
* add microtask queue handling
2 years ago
Simon H
b3d185da29
fix: correctly call exported state ( #10114 )
...
fixes #10104
also cleans up related code and adds support for destructuring `$state.frozen`
2 years ago
Simon H
92408e1506
fix: get spread + bind working ( #10091 )
...
fixes #10033
2 years ago
Dominic Gannaway
6acf7f3fc3
fix: apply key animations on proxied arrays ( #10113 )
...
* fix: apply key animations on proxed arrays
* fix: apply key animations on proxed arrays
* fix: apply key animations on proxed arrays
2 years ago
Dominic Gannaway
ebbb5dd655
fix: improve internal signal dependency checking logic ( #10111 )
2 years ago
github-actions[bot]
0c58524d23
Version Packages (next) ( #10070 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
ddd7926240
fix: improve key block reactivity detection ( #10092 )
2 years ago
Dominic Gannaway
86eae7e77d
fix: loosen input in button error ( #10083 )
...
The validation exists to error on html that would result in the browser repairing it, causing hydration errors. input is never moved, so we can remove it from the array
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Dominic Gannaway
94aab90bd1
fix: improve text node output ( #10081 )
...
* fix: improve text node output
* revert
2 years ago
navorite
3c6977add3
fix: improve style parser whitespace handling ( #10077 )
...
allow whitespace, allow comments
fixes #10073
2 years ago
Simon H
570884eabd
fix: spread attributes reactivity improvements ( #10071 )
...
- the objects could contain getters with reactive values, so we play it safe and assume they're always reactive - fixes #10065
- isolate spreads with call expression similar to how we do it with other effects -fixes #10013
2 years ago
Simon Holthausen
877ff1ee7d
fix: provide `unstate` in server environment
...
fixes #10016
2 years ago
Simon H
2133d7d67a
fix: support TS satisfies operator ( #10068 )
...
fixes #9606
2 years ago
github-actions[bot]
fa8aa2d481
Version Packages (next) ( #10052 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
5f3fcaf88a
fix: bail-out event handler referencing each index ( #10063 )
...
* fix: bail-out event handler referencing each index
* lint
* ts
* types
2 years ago
Simon H
15d6308d60
fix: catch delegated events from elements moved outside the container ( #10060 )
...
fixes #9777
2 years ago
Simon H
8a8505928e
fix: deeply unstate objects passed to inspect ( #10056 )
...
When doing `$inspect({ x, y })`, both `x` and `y` are now unstated if they are signals, compared to before where `unstate` was only called on the top level object, leaving the proxies in place which results in a worse debugging experience.
Also improved typings which makes it easier to find related code paths.
2 years ago
Simon H
e46a71e8a3
fix: handle pseudo class elements with content ( #10055 )
...
closes #9398 (the other things in that issue are already addressed)
closes #10019
2 years ago
navorite
6d65b2f8ad
fix: improve parsing of `:nth-of-type(xn+b)` ( #9970 )
...
closes #9969
this also fixes the following along the way:
the + in nth-of-type(+xn-b) would be parsed as a combinator.
invalid cases like these are not allowed anymore:
b(+/-)b
-ax
-ax-b
-b
2 years ago
Dominic Gannaway
1e33ed5bb9
fix: ensure if block is executed in correct order ( #10053 )
...
* fix: ensure if block is executed in correct order
* alternative approach
* improve algo
* optimize
* lint
2 years ago
navorite
abc126630a
fix: add types for popover attributes and events ( #10041 )
...
closes #10036 , this also moves the HTMLDetailsElement toggle event to its interface as it was conflicting with HTMLElement popover toggle event.
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
navorite
d56223b162
fix: improve script `lang` attribute detection ( #10046 )
...
closes #10038
2 years ago
Jeremy Deutsch
346041f454
chore: skip generating $.proxy() calls for more expressions ( #9979 )
...
* chore: skip emitting $.proxy() calls for more expressions
* Update pretty-ties-help.md
---------
Co-authored-by: Dominic Gannaway <trueadm@users.noreply.github.com>
2 years ago
github-actions[bot]
6307a3322c
Version Packages (next) ( #10005 )
...
* Version Packages (next)
* Apply suggestions from code review
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
2 years ago
Holger Dal Mogensen
8a013c4cc6
fix: transition parameters are not reactive ( #9836 )
...
* test: add tests of transitions in new runtime
* fix: move evaluation of props
* format
* add changeset
2 years ago
Tom
c0a357c262
fix: support hydrating around `<noscript>` ( #9953 )
...
* add test
* fix: support hydrating around `<noscript>`
* changeset
2 years ago
Nguyen Tran
b31946eb08
fix: Backtick now displays with templates ( #9973 )
...
* Add a test for backtick in template
* Put sanitize_template_string and use it everywhere
* Prettier
* Add changeset
2 years ago
Nguyen Tran
5dffe715d3
fix: issue with assiging prop values as defaults of other props ( #9985 )
...
* Fix issue on assiging prop values as defaults of other props
* Prettier
* Add changeset
2 years ago
Dominic Gannaway
75cd1e825c
feat: add $state.frozen rune ( #9851 )
...
* feat: add $state.raw rune
fix typo
fix typo
* add more tests, fix example
* add other test
* change to $state.readonly
* fix readme
* fix validation
* fix more
* improve types
* improve REPL
* switch to $state.frozen
* update docs
* update docs
* update docs
* Update .changeset/dry-clocks-grow.md
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
* Update packages/svelte/src/internal/client/runtime.js
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
* Update packages/svelte/src/internal/client/runtime.js
* docs
* Update sites/svelte-5-preview/src/routes/docs/content/01-api/02-runes.md
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
---------
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
eab690d31a
Version Packages (next) ( #9922 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
b8f3c49e5f
fix: improve event delegation handler hoisting ( #9929 )
...
* fix: improve event delegation handler hoisting
* fixes
2 years ago
Dominic Gannaway
59c7487f36
fix: better handle array property deletion reactivity ( #9921 )
2 years ago
github-actions[bot]
b779e72eb6
Version Packages (next) ( #9913 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
2608e621d6
add test ( #9917 )
2 years ago
Dominic Gannaway
b1efd8c4cd
fix: improve each block fallback handling ( #9914 )
2 years ago
Dominic Gannaway
3a4a09102c
fix: improve whitespace handling ( #9912 )
...
revert
2 years ago
github-actions[bot]
f2d111264c
Version Packages (next) ( #9899 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
navorite
55656f520d
feat: add support for {@const} inside snippet block ( #9904 )
...
* check for snippet block
* change the error msg
* edit tests
* changeset
* test
2 years ago
Dominic Gannaway
b0511a5966
fix: improve attribute directive reactivity detection ( #9907 )
2 years ago
Dominic Gannaway
4e61db7201
chore: improve readonly prop messaging ( #9901 )
2 years ago
Dominic Gannaway
436a6c3dc4
fix: improve $inspect batching ( #9902 )
...
* fix: improve $inspect batching
* fix dev bug
* simplify
* simplify
2 years ago
Dominic Gannaway
a9a5b11c78
fix: improve props aliasing ( #9900 )
2 years ago
Dominic Gannaway
0236cf87e7
fix: better support for top-level snippet declarations ( #9898 )
2 years ago
github-actions[bot]
a8e5cc83cd
Version Packages (next) ( #9856 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
56de55bb77
fix: improve unstate type definition ( #9895 )
...
* fix: improve unstate type definition
* tweak
* tweak
2 years ago
Dominic Gannaway
daa19173b1
fix: improve html tag svg behaviour ( #9894 )
2 years ago
Dominic Gannaway
2ca3c87d18
fix: correctly reflect readonly proxy marker ( #9893 )
2 years ago
Dominic Gannaway
7238e1d3ce
fix: improve each block index handling ( #9889 )
2 years ago
Dominic Gannaway
bdd63c8187
fix: ensure class constructor values are proxied ( #9888 )
...
* fix: ensure class constructor values are proxied
* debugger
2 years ago
Jirawat Boonkumnerd
acf73104b5
feat: add GamepadEventHandler type ( #9861 )
...
Add GamepadEventHandler type for window.addEventListener `gamepadconnected` and `gamepaddisconnected`
2 years ago
Dominic Gannaway
cb529fc666
chore: improve each block fast-path heuristic ( #9855 )
...
* chore: improve each block fast-path heuristic
* chore: improve each block fast-path heuristic
2 years ago
github-actions[bot]
b90b14645b
Version Packages (next) ( #9847 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
56d8c0fd3a
fix: ensure action function returns object ( #9848 )
2 years ago
Dominic Gannaway
4717d2ad23
fix: handle event hoisting props referencing ( #9846 )
...
* fix: handle event hoisting props referencing
2 years ago
Dominic Gannaway
fd78acfec9
fix: support dynamic transition functions ( #9844 )
...
* fix: support dynamic transition functions
* add test
* lint
* load dynamic code lazily
load dynamic code lazily
load dynamic code lazily
2 years ago
github-actions[bot]
ab21253073
Version Packages (next) ( #9833 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
df5105ef2e
breaking: change `$inspect` API ( #9838 )
...
* breaking: change `$inspect` API
`$inspect` now takes 1-n arguments, and inspections modification happens through `.with(..)`
closes #9737
* lint
2 years ago
Rich Harris
26c6d6f95d
chore: avoid creating unnecessary thunks ( #9841 )
...
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
8dfb2894b4
fix: improve each key animations ( #9842 )
2 years ago
Dominic Gannaway
08d93a2f5f
fix: improve each block with animate ( #9839 )
2 years ago
Dominic Gannaway
388e3e68fc
fix: improve signal consumer removal logic ( #9837 )
2 years ago
Dominic Gannaway
e2dcdc2887
fix: ensure computed props are wrapped in derived ( #9835 )
2 years ago
Dominic Gannaway
d9c250a4bf
fix: better handle unowned derived signals ( #9832 )
...
* fix: better handle unowned derived signals
* format
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Rich Harris
b20b4617c0
chore: rethink props ( #9826 )
...
Cleaned up prop_source and renamed it to prop. Updated tests accordingly
2 years ago
github-actions[bot]
384e3a42b3
Version Packages (next) ( #9807 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
481df0e64a
fix: correctly apply scope on component children ( #9824 )
...
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Rich Harris
5797bb34ce
fix: reuse proxy between objects ( #9821 )
...
* chore: reuse proxy between objects
* lint
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Simon H
074615d7fd
fix: prevent infinite loops stemming from invalidation method ( #9811 )
...
* fix: prevent infinite loops stemming from invalidation method
The logic was flawed: the captured signals where always added to the previous captured no matter what, which meant a) memory leak b) that when another one runs afterwards, it will falsely contain the signals from the previous run
fixes #9788
* fix lint
2 years ago
Simon Holthausen
dcdd645480
fix: adjust children snippet default type
...
Needs to be void so that zero args are passed to it
fixes #9744
2 years ago
Simon H
5667785903
fix: better readonly checks for proxies ( #9808 )
...
- Expect the thing that's checked to be wrapped with the proxy already, so that we can just check for the state symbol
- Make error message more descriptive
2 years ago
Dominic Gannaway
d5167e75b9
fix: improve non state referenced warning ( #9809 )
...
* fix: improve non state referenced warning
* add test
2 years ago
Dominic Gannaway
d793d570e2
fix: improve consistency issues around binding invalidation ( #9810 )
...
* co
* Add comment
2 years ago
Simon H
3c2e656187
fix: tweak css nth regex ( #9806 )
...
fixes #9795
2 years ago
github-actions[bot]
f552a4b2ea
Version Packages (next) ( #9771 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
e6b5ccd29a
fix: tweak invalid dollar prefix rules around function args ( #9792 )
2 years ago
Rich Harris
62c9292947
feat: make fallback prop values readonly ( #9789 )
...
* WIP
* update tests
* only make readonly in runes mode
* remove this for now
* changeset
* ugh
* add reassignment test
* tweak message
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
3b15e32a91
fix: ensure generate guards against keywords ( #9790 )
...
* fix: ensure generate guards against keywords
* changeset
* lint
* Update .changeset/old-flies-jog.md
---------
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
2 years ago
Simon H
9c3516dd3d
feat: runes globals error ( #9773 )
...
* feat: runes globals error
throw descriptive error for using runes globals outside of Svelte-compiled files
* less hacky/more future-proof treeshaking check
* tweak
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Rich Harris
24777c335a
feat: disallow fallback values with bindings in runes mode ( #9784 )
...
* disallow fallback values with bindings in runes mode
* on second thoughts
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
c7e626ebbb
feat: add unstate utility function ( #9776 )
...
* feat: add unstate utility function
* Update packages/svelte/src/internal/client/proxy/proxy.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* update docs
* add class support
* oops
* lint
* fix docs
* remove symbol and class support
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
2 years ago
Dominic Gannaway
f1954d034b
fix: ensure proxied array length is updated ( #9782 )
...
* fix: ensure proxied array length is updated
* fix: ensure proxied array length is updated
* add test
* lint
2 years ago
Dominic Gannaway
25abca78b2
fix: ensure transitions properly cancel on completion ( #9778 )
2 years ago
Simon H
ef158ff729
fix: apply event attribute validation to elements only ( #9772 )
...
fixes #9755
2 years ago
Rich Harris
ede5dab230
chore: fix compiler-errors test suite ( #9754 )
...
- fix compiler-errors test suite
- handle css nth-selector syntax (fixes #9765 )
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
2 years ago
github-actions[bot]
e4056107f0
Version Packages (next) ( #9753 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
f0c47c31bc
fix: allow duplicate snippet declaration names ( #9759 )
...
Fixes #9756
2 years ago
Dominic Gannaway
ef5bcfe542
fix: ensure event handlers containing arguments are not hoisted ( #9758 )
...
* fix: ensure event handlers containing arguments are not hoisted
* add test
* handle rest arguments
2 years ago
Dominic Gannaway
2017af407d
fix: ensure computed props are cached with derived ( #9757 )
...
Fixes #9751
2 years ago
Simon H
402a322317
chore: more validation errors ( #9723 )
...
* invalid directive on component
* duplicate animation
* invalid animation
* no const assignment
* expected token
* invalid-attribute-name
* fixes
* invalid event modifier
* component name
* slot validation
* fix test
* const validation + fix double declaration bug
* omg this validation is skipped in svelte 4, remove it entirely then
* gah
* unskip
* contenteditable
* invalid css selector
* css global selector + css parser fixes
* export default
* dynamic element
* each block
* html tag
* logic block
* reactive declaration
* duplicate script
* namespace
* module context
* slot
* svelte fragment
* textarea
* title
* transition
* window bindings
* changeset
* svelte head, let directive, tweaks
2 years ago
github-actions[bot]
61e5e53eee
Version Packages (next) ( #9736 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
765d01d76c
correctly inspect derived values ( #9731 )
...
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
1108587f1b
Version Packages (next) ( #9707 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
2fa06447cf
fix: improve template text node serialization ( #9722 )
...
fix: improve template text node serialization
2 years ago
Dominic Gannaway
7eba35b9d1
fix: improve infinite loop capturing ( #9721 )
2 years ago
Simon H
cb1ea1f2db
fix: ensure `$$slots` exists in runes mode ( #9718 )
...
fixes #9683
2 years ago
Simon H
4a8f0bc7e7
fix: keep fallback value after spread update not setting that prop ( #9717 )
...
fixes #9716
2 years ago
Simon H
65fa717ccd
fix: port over props that were set prior to initialization ( #9704 )
...
Svelte 5 version of #9701
2 years ago
Dominic Gannaway
2e461eb314
chore: remove redundant hydration code ( #9698 )
2 years ago
Simon H
e3dc185a4c
fix: tweak const tag parsing ( #9715 )
...
fixes #9711
2 years ago
Simon H
f88895e955
fix: allow `bind:this` with dynamic type on inputs ( #9713 )
...
fixes #9709
2 years ago
Simon H
1fe0152dd4
fix: delegate events on elements with bind-this ( #9696 )
...
fixes #9688
2 years ago
Simon H
2416587215
fix: ensure implicit children snippet renders correctly ( #9706 )
...
place anchors around render tags, not snippet tags
fixes #9678
2 years ago
Rich Harris
bde42d5676
`$inspect` rune ( #9705 )
...
* feat: add $log rune
* fix issues
* fix issues
* tune
* avoid static state reference validation
* work around unfortunate browser behavior
* call it ExpectedError
* cleanup
* Fix docs
* tweaks
* tweaks
* lint
* repl, dev: true
* repl dev mode
* Update sites/svelte-5-preview/src/lib/Repl.svelte
* squelch static-state-reference warning
* simplify
* remove redundant code
* Update packages/svelte/src/main/ambient.d.ts
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
* Update packages/svelte/src/main/ambient.d.ts
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
* Update packages/svelte/src/main/ambient.d.ts
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
* only pause/trace on change
* Update packages/svelte/src/main/ambient.d.ts
* Update .changeset/chatty-hotels-grin.md
* Update sites/svelte-5-preview/src/routes/docs/content/01-api/02-runes.md
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
* $log.break and $log.trace no-op during SSR
* Update sites/svelte-5-preview/src/routes/docs/content/01-api/02-runes.md
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
* update test
* improve break experience
* fix ts
* remove unnecessary if (DEV) checks - log runes are removed in prod
* ensure hoisting doesnt mess up source maps
* check visited for cyclical values
* rename $log to $inspect, remove children
* custom inspect function
* implement custom inspect functions
* changeset
* update docs
* only fire on change
* lint
* make inspect take a single argument
* ugh eslint
* document console.trace trick
* demos
* fix site
---------
Co-authored-by: Dominic Gannaway <dg@domgan.com>
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Dominic Gannaway <trueadm@users.noreply.github.com>
2 years ago
github-actions[bot]
3e3ae925f3
Version Packages (next) ( #9692 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
f9ba528265
fix: add children to element typings ( #9679 )
...
* fix: add children to element typings
Add this here so that libraries doing `props$<HTMLButtonAttributes>()` don't need a separate interface
fixes #https://github.com/sveltejs/language-tools/issues/2218
* typo
2 years ago
Simon H
aabab263ee
fix: handle ts expressions when dealing with runes ( #9681 )
...
* fix: handle ts expressions when dealing with runes
related to #9639
* docs, more tests
* simplify
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
a31b2e1b8e
Version Packages (next) ( #9650 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
81d3e47d1c
feat: add $effect.root rune ( #9638 )
...
* feat: effect-root-rune
feat: add $effect.root rune
update doc
update doc
fix validation
* cleanup logic
* Update sites/svelte-5-preview/src/routes/docs/content/01-api/02-runes.md
* address feedback
---------
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
2 years ago
Ben McCann
2660727a93
chore: tweak changeset ( #9667 )
...
* chore: tweak changeset
* Update .changeset/slimy-clouds-talk.md
* Update seven-ravens-check.md
2 years ago
Rich Harris
48e78e420f
chore: remove static value handling ( #9571 )
...
The deleted code ensured that a static variable wouldn't update when it's in the same text expression as a reactive variable. We solved this through emitting a warning about this instead, marking it as undefined behavior.
2 years ago
Rich Harris
5836c1cdbd
chore: improve output for `<svelte:element>` ( #9648 )
...
- doesn't add spread_dynamic_element_attributes when there are no attributes — Unnecessary spread_dynamic_element_attributes call #9646
- skips the child render function altogether if there is nothing to do
2 years ago
Rich Harris
6e863e617c
feat: warn on referenced mutated nonstate ( #9669 )
...
Walk the path and warn if this is a mutated normal variable that's referenced inside a function scope
2 years ago
Rich Harris
9c44fd7854
feat: ignore href when hydrating ( #9662 )
...
* ignore href when hydrating
* remove unused export keyword
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Yuichiro Yamashita
da1aa7c4a8
feat: support type annotations in `{@const ...}` tag ( #9609 )
...
* support type for const tag
* use expression directly
* lint
* format
* format
* revert
* legacy mode
* format
* revert and update .prettierignore
2 years ago
Simon H
617d63dd90
fix: take event attributes into account when checking a11y ( #9664 )
...
also adjusted the warning messages slightly so they make sense for both variants of event handlers
fixes #9654
2 years ago
Simon H
83fd001157
fix: prevent reactive snippet from reinitializing unnecessarily ( #9665 )
...
untrack the invocation itself, only track the snippet function
fixes #9652
2 years ago
Rich Harris
405e9da4ff
chore: bump esrap ( #9649 )
...
* bump esrap
* changeset
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
github-actions[bot]
66d540d3c5
Version Packages (next) ( #9642 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
7f237c2e41
fix: omit this bind this arg if we know it's not a signal ( #9635 )
...
fixes #9629
Co-authored-by: Dominic Gannaway <dg@domgan.com>
2 years ago
Dominic Gannaway
dee5bed829
fix: improve each block index handling ( #9644 )
...
* fix: improve each block index handling
* format
2 years ago
Dominic Gannaway
02f3f42981
fix: apply keyed validation only for keyed each ( #9641 )
2 years ago
github-actions[bot]
94afdc8a4b
Version Packages (next) ( #9633 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon Holthausen
63e5831846
fix: adjust mount and createRoot types
...
they expect the component constructor, not the instance
2 years ago
Simon Holthausen
a3bc7d5698
fix: type-level back-compat for default slot and children prop
...
If someone has an existing SvelteComponent type definition and using the slot generic to type the default slot, automatically add that slot to the prop type as "children"
2 years ago
Simon Holthausen
cb4b1f0a18
fix: remove constructor overload
...
The original intent was for typing generation tools like svelte2tsx to use the virtual constructor instead, but it does more harm than good. Most notably, the TS error message when props are wrong becomes completely useless. It's better for tooling to silence the deprecation message and switch over to a new virtual constructor once we remove the deprecated one.
2 years ago
github-actions[bot]
b7af2ffabd
Version Packages (next) ( #9607 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
78a69acfa1
fix: dont error on stores looking like runes when runes explicitly turned off ( #9615 )
2 years ago
Simon H
72d3a2a8ce
fix: better attribute casing logic ( #9626 )
...
- don't lowercase attributes on svg and custom element elements, fixes #9605
- better lowercasing + property alias checking for spreads, fixes #9305
2 years ago
Dominic Gannaway
ef68b66dee
fix: improve member expression mutation logic ( #9625 )
...
* fix: improve member expression mutation logic
* cleanup
* Update .changeset/moody-frogs-exist.md
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Yuichiro Yamashita
c7121aa38c
feat: add type of `$effect.active` ( #9624 )
2 years ago
Dominic Gannaway
d8d9be39d3
fix: apply correct snippet scope ( #9623 )
2 years ago
Dominic Gannaway
509f92d29e
fix: correctly assign bind:this with multiples ( #9617 )
...
* fix: correctly assign bind:this with multiples
* better fix
* better fix
* lint
* lint
* Update packages/svelte/src/internal/client/render.js
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
2 years ago
Dominic Gannaway
c22ebffb00
chore: untrack keyed validation logic ( #9618 )
...
* untrack validation logic
* chore: untrack keyed validation logic
2 years ago
Dominic Gannaway
8118efd115
fix: handle undefined bubble events ( #9614 )
...
Fixes #9610
2 years ago
Rich Harris
0283e50070
chore: reuse common templates ( #9601 )
...
#9589 - add comment and space as reusable templates to save a few bytes. We can definitely take this idea further, but this is a base to iterate from.
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
2 years ago
github-actions[bot]
d83bd7f7c1
Version Packages (next) ( #9576 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
13c6c273c6
fix: prevent false positives when detecting runes mode ( #9599 )
...
Move references from module scope to instance scope if we determined that these references are store subscriptions
fixes #9580
2 years ago
Rich Harris
1f4ae5ef45
chore: remove some unused code ( #9593 )
...
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
cf9130613d
feat: add $effect.active rune ( #9591 )
...
* chore: add $effect.active rune
* chore: add $effect.active rune
2 years ago
Rich Harris
fe9c0bc19d
chore: bump esrap ( #9590 )
2 years ago
Dominic Gannaway
eb0b4dc6e5
chore: add inline new class warning ( #9583 )
...
* chore: add inline new class warning
* Address feedback
* address feedback
* more tests
2 years ago
Simon H
1003acccc4
feat: add Snippet type ( #9584 )
...
* feat: add Snippet type
related to #9447
* one more test
2 years ago
Dominic Gannaway
da15806136
fix: adjust event delegation heuristics ( #9581 )
...
Fixes #9561
2 years ago
Rich Harris
1bc89b5eb6
fix: deconflict generated names against globals ( #9570 )
...
fixes #9559
2 years ago
Simon H
617df1f3c3
fix: adjust regex ( #9572 )
...
would error on non-quoted attributes with more than one character
2 years ago
github-actions[bot]
b9664700b7
Version Packages (next) ( #9542 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Rich Harris
459e4ff006
feat: native TypeScript support ( #9482 )
...
* add typescript support to parser
* fix
* unnecessary
* various
* transform assertions
* tweak
* prettier
* robustify
* fix
* see if this fixes the prettier stuff
* only parse ts in ts mode
* fixes
* fix
* fix
* fix
* fix
* more
* check
* changeset
* allow type annotations on all contexts
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Dominic Gannaway
bd2a586fea
chore: more transition code-golfing ( #9536 )
2 years ago
github-actions[bot]
699c337908
Version Packages (next) ( #9535 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
5809ac6758
chore: rename internal object properties ( #9532 )
...
* chore: rename internal object properties
chore: rename internal object properties
order properties and add comments
add missing remove_in_transitions
* jsdoc
2 years ago
github-actions[bot]
5458ea7735
Version Packages (next) ( #9530 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
b0588d7888
fix: address intro transition bugs ( #9528 )
...
* fix: address intro transition bugs
* fix: address intro transition bugs
2 years ago
Dominic Gannaway
298da65ed6
chore: more signal fine-tuning ( #9531 )
...
* chore: opt for two signal data-structures to reduce memory usage
2 years ago
Dominic Gannaway
bbd1a6c05a
chore: tune signals for better runtime perf ( #9529 )
2 years ago
github-actions[bot]
a36dba7df0
Version Packages (next) ( #9519 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
f886bc133e
fix: handle intro global transition propagation correctly ( #9515 )
...
* fix: stop propagating global intros
* fix: stop propagating global intros
* add test
2 years ago
github-actions[bot]
e0271f0fc7
Version Packages (next) ( #9492 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
3b2e6eac9a
fix: address unowned propagation signal issue ( #9510 )
...
* fix: address unowned propagation signal issue
* Add comments
2 years ago
Dominic Gannaway
378093941d
fix: ensure we visit assignments during compilation ( #9511 )
...
* fix: add missing visit for expressions
* fix: add missing visit for expressions
* Add test
2 years ago
Simon H
4418ba6535
fix: add top level snippets to instance scope ( #9467 )
...
fixes #9460
2 years ago
Simon H
1beb5e8dc9
fix: tweak script/style tag parsing/preprocessing logic ( #9502 )
...
Related to sveltejs/language-tools#2204 / sveltejs/language-tools#2039
The Svelte 5 version of #9486 and #9498
---------
Co-authored-by: Rich Harris <richard.a.harris@gmail.com>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Rich Harris
c827b0c772
fix: only treat instance context exports as accessors ( #9500 )
...
* failing test for #9499
* limit export handling to instance context
* changeset
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
2 years ago
Rich Harris
ede1edd314
fix: emit useful error on invalid binding to derived state ( #9497 )
...
closes #9495
2 years ago
Tee Ming
37f249350c
allow setting files ( #9463 )
2 years ago
github-actions[bot]
c823dd2efa
Version Packages (next) ( #9481 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Dominic Gannaway
60c273eb76
Revert "fix: address bug in before/after update" ( #9480 )
...
* Revert "fix: address bug in before/after update (#9448 )"
This reverts commit 9eb969ddd4
.
* add changeset
2 years ago
github-actions[bot]
7e94dee955
Version Packages (next) ( #9431 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2 years ago
Simon H
c1f6ee096d
fix: handle dynamic selects with falsy select values ( #9471 )
...
when options are added later, we need to ensure the select value still stays in sync
fixes #9412
2 years ago
Yuichiro Yamashita
19f84ca730
fix: Added missing context of `svelte.js` for validation ( #9394 )
...
* fix
* add changeset
* Update .changeset/eighty-bikes-camp.md
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
* Update .changeset/eighty-bikes-camp.md
---------
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
Co-authored-by: Rich Harris <hello@rich-harris.dev>
2 years ago