Skip to content

Commit 9883e70

Browse files
authored
fix: ensure SvelteMap and SvelteSet work with generators in dev (#14103)
* fix: ensure SvelteMap and SvelteSet work with generators in dev * add test * better fix * better fix * better fix * better fix
1 parent 535ea44 commit 9883e70

File tree

5 files changed

+30
-2
lines changed

5 files changed

+30
-2
lines changed

.changeset/selfish-chicken-argue.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'svelte': patch
3+
---
4+
5+
fix: ensure SvelteMap and SvelteSet work with generators in dev

packages/svelte/src/reactivity/map.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export class SvelteMap extends Map {
2222
super();
2323

2424
// If the value is invalid then the native exception will fire here
25-
if (DEV) new Map(value);
25+
if (DEV) value = new Map(value);
2626

2727
if (value) {
2828
for (var [key, v] of value) {

packages/svelte/src/reactivity/set.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export class SvelteSet extends Set {
2626
super();
2727

2828
// If the value is invalid then the native exception will fire here
29-
if (DEV) new Set(value);
29+
if (DEV) value = new Set(value);
3030

3131
if (value) {
3232
for (var element of value) {
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { test } from '../../test';
2+
3+
export default test({
4+
compileOptions: {
5+
dev: true
6+
},
7+
8+
html: `1`
9+
});
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<script>
2+
import { SvelteSet } from 'svelte/reactivity';
3+
4+
function *generator() {
5+
yield 1;
6+
}
7+
8+
let gen = new SvelteSet(generator());
9+
</script>
10+
11+
{#each gen as item}
12+
{item}
13+
{/each}
14+

0 commit comments

Comments
 (0)