Add force uncheck values for dublicate bind:group

pull/4774/head
Th0rN13 5 years ago
parent b9f83fd295
commit 0c51aa70de

@ -124,12 +124,23 @@ export function xlink_attr(node, attribute, value) {
node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value); node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);
} }
let oldValue: Set<unknown> = new Set();
export function get_binding_group_value(group) { export function get_binding_group_value(group) {
const value = []; const value = new Set();
const force = [];
for (let i = 0; i < group.length; i += 1) { for (let i = 0; i < group.length; i += 1) {
if (group[i].checked) value.push(group[i].__value); if (group[i].checked) {
value.add(group[i].__value);
} else if (oldValue.has(group[i].__value)) {
force.push(group[i].__value);
}
}
for (let i = 0; i < force.length; i += 1) {
value.delete(force[i]);
} }
return value; oldValue = value;
return Array.from(value);
} }
export function to_number(value) { export function to_number(value) {

Loading…
Cancel
Save