snappymail/vendors/knockout/src/binding/defaultBindings/enableDisable.js
djmaze 72ed2b08b2 KnockoutJS to ES2015/ES6
TODO: use the new Proxy for ko.observable
2020-10-04 21:58:13 +02:00

14 lines
512 B
JavaScript

ko.bindingHandlers['enable'] = {
'update': (element, valueAccessor) => {
var value = ko.utils.unwrapObservable(valueAccessor());
if (value && element.disabled)
element.removeAttribute("disabled");
else if ((!value) && (!element.disabled))
element.disabled = true;
}
};
ko.bindingHandlers['disable'] = {
'update': (element, valueAccessor) =>
ko.bindingHandlers['enable']['update'](element, () => !ko.utils.unwrapObservable(valueAccessor()))
};