no need to store linked_value if setting

pull/12545/head
Rich Harris 2 years ago
parent 39a9187f7f
commit 2a4ba4dcbb

@ -47,11 +47,14 @@ export function source(v) {
}
/**
* @param {() => any} get_value
* @template V
* @param {() => V} get_value
* @returns {(value?: V) => V}
*/
export function source_link(get_value) {
var was_local = false;
var local_source = source(undefined);
var linked_derived = derived(() => {
var local_value = get(local_source);
var linked_value = get_value();
@ -65,14 +68,14 @@ export function source_link(get_value) {
});
return function (/** @type {any} */ value) {
var linked_value = get(linked_derived);
if (arguments.length > 0) {
was_local = true;
set(local_source, value);
get(linked_derived);
return value;
}
return linked_value;
return get(linked_derived);
};
}

Loading…
Cancel
Save