File tree Expand file tree Collapse file tree 2 files changed +13
-5
lines changed
packages/svelte/src/reactivity Expand file tree Collapse file tree 2 files changed +13
-5
lines changed Original file line number Diff line number Diff line change @@ -31,7 +31,6 @@ export class ReactiveSet extends Set {
31
31
32
32
for ( var element of value ) {
33
33
sources . set ( element , source ( true ) ) ;
34
- super . add ( element ) ;
35
34
}
36
35
37
36
this . #size. v = sources . size ;
@@ -97,7 +96,7 @@ export class ReactiveSet extends Set {
97
96
this . #increment_version( ) ;
98
97
}
99
98
100
- return super . add ( value ) ;
99
+ return this ;
101
100
}
102
101
103
102
/** @param {T } value */
@@ -106,13 +105,14 @@ export class ReactiveSet extends Set {
106
105
var s = sources . get ( value ) ;
107
106
108
107
if ( s !== undefined ) {
109
- sources . delete ( value ) ;
108
+ var removed = sources . delete ( value ) ;
110
109
set ( this . #size, sources . size ) ;
111
110
set ( s , false ) ;
112
111
this . #increment_version( ) ;
112
+ return removed ;
113
113
}
114
114
115
- return super . delete ( value ) ;
115
+ return false ;
116
116
}
117
117
118
118
clear ( ) {
@@ -127,7 +127,6 @@ export class ReactiveSet extends Set {
127
127
}
128
128
129
129
sources . clear ( ) ;
130
- super . clear ( ) ;
131
130
}
132
131
133
132
keys ( ) {
Original file line number Diff line number Diff line change @@ -77,3 +77,12 @@ test('set.has(...)', () => {
77
77
78
78
cleanup ( ) ;
79
79
} ) ;
80
+
81
+ test ( 'set.delete(...)' , ( ) => {
82
+ const set = new ReactiveSet ( [ 1 , 2 , 3 ] ) ;
83
+
84
+ assert . equal ( set . delete ( 3 ) , true ) ;
85
+ assert . equal ( set . delete ( 3 ) , false ) ;
86
+
87
+ assert . deepEqual ( Array . from ( set . values ( ) ) , [ 1 , 2 ] ) ;
88
+ } ) ;
You can’t perform that action at this time.
0 commit comments