removed size from read properties because it can depend on version signal and doesn't require its own signal

pull/11504/head
godzylinux 2 years ago committed by FoHoOV
parent c6c4f4648c
commit 68dfe7914a

@ -2,14 +2,14 @@ import { make_reactive, NOTIFY_WITH_ALL_PARAMS } from './utils.js';
export const ReactiveMap = make_reactive(Map, {
write_properties: ['clear', 'delete', 'set'],
read_properties: ['get', 'keys', 'size', 'entries', 'values', 'has'],
read_properties: ['get', 'keys', 'entries', 'values', 'has'],
interceptors: {
set: (notify_read_methods, value, property, ...params) => {
if (value.get(params[0]) === params[1]) {
return false;
}
if (!value.has(params[0])) {
notify_read_methods(['keys', 'size']);
notify_read_methods(['keys']);
}
notify_read_methods(['entries', 'values']);
notify_read_methods(['get', 'has'], params[1]);
@ -19,7 +19,7 @@ export const ReactiveMap = make_reactive(Map, {
if (value.size === 0) {
return false;
}
notify_read_methods(['keys', 'size', 'values', 'entries', 'has'], NOTIFY_WITH_ALL_PARAMS);
notify_read_methods(['keys', 'values', 'entries', 'has'], NOTIFY_WITH_ALL_PARAMS);
return true;
},
delete: (notify_read_methods, value, property, ...params) => {
@ -27,7 +27,7 @@ export const ReactiveMap = make_reactive(Map, {
return false;
}
notify_read_methods(['get', 'has'], params[0]);
notify_read_methods(['keys', 'size', 'values', 'entries']);
notify_read_methods(['keys', 'values', 'entries']);
return true;
}
}

@ -2,14 +2,13 @@ import { make_reactive, NOTIFY_WITH_ALL_PARAMS } from './utils.js';
export const ReactiveSet = make_reactive(Set, {
write_properties: ['add', 'clear', 'delete'],
read_properties: ['has', 'size'],
read_properties: ['has'],
interceptors: {
add: (notify_read_methods, value, property, ...params) => {
if (value.has(params[0])) {
return false;
}
notify_read_methods(['has'], params[0]);
notify_read_methods(['size']);
return true;
},
clear: (notify_read_methods, value, property, ...params) => {
@ -17,7 +16,6 @@ export const ReactiveSet = make_reactive(Set, {
return false;
}
notify_read_methods(['has'], NOTIFY_WITH_ALL_PARAMS);
notify_read_methods(['size']);
return true;
},
delete: (notify_read_methods, value, property, ...params) => {
@ -25,7 +23,6 @@ export const ReactiveSet = make_reactive(Set, {
return false;
}
notify_read_methods(['has'], params[0]);
notify_read_methods(['size']);
return true;
}
}

Loading…
Cancel
Save