mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-09-06 07:57:02 +03:00
Cleanup createCommand()
This commit is contained in:
parent
954de06f86
commit
a15454fd15
1 changed files with 8 additions and 17 deletions
|
|
@ -259,23 +259,15 @@ export const
|
||||||
* @param {(Function|boolean|null)=} fCanExecute = true
|
* @param {(Function|boolean|null)=} fCanExecute = true
|
||||||
* @returns {Function}
|
* @returns {Function}
|
||||||
*/
|
*/
|
||||||
createCommand = (fExecute, fCanExecute = true) => {
|
createCommand = (fExecute, fCanExecute) => {
|
||||||
let fResult = fExecute
|
let fResult = () => {
|
||||||
? (...args) => {
|
fResult.canExecute() && fExecute.call(null);
|
||||||
if (fResult && fResult.canExecute && fResult.canExecute()) {
|
|
||||||
fExecute.apply(null, args);
|
|
||||||
}
|
|
||||||
return false;
|
return false;
|
||||||
} : ()=>0;
|
};
|
||||||
fResult.enabled = ko.observable(true);
|
fResult.enabled = ko.observable(true);
|
||||||
fResult.isCommand = true;
|
fResult.canExecute = isFunction(fCanExecute)
|
||||||
|
? koComputable(() => fResult.enabled() && fCanExecute())
|
||||||
if (isFunction(fCanExecute)) {
|
: fResult.enabled;
|
||||||
fResult.canExecute = koComputable(() => fResult && fResult.enabled() && fCanExecute.call(null));
|
|
||||||
} else {
|
|
||||||
fResult.canExecute = koComputable(() => fResult && fResult.enabled() && !!fCanExecute);
|
|
||||||
}
|
|
||||||
|
|
||||||
return fResult;
|
return fResult;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
@ -350,11 +342,10 @@ export const
|
||||||
fn = (...args) => fn.enabled() && fn.canExecute() && command.apply(thisArg, args);
|
fn = (...args) => fn.enabled() && fn.canExecute() && command.apply(thisArg, args);
|
||||||
|
|
||||||
// fn.__realCanExecute = canExecute;
|
// fn.__realCanExecute = canExecute;
|
||||||
// fn.isCommand = true;
|
|
||||||
|
|
||||||
fn.enabled = ko.observable(true);
|
fn.enabled = ko.observable(true);
|
||||||
|
|
||||||
fn.canExecute = (typeof canExecute === 'function')
|
fn.canExecute = isFunction(canExecute)
|
||||||
? koComputable(() => fn.enabled() && canExecute.call(thisArg, thisArg))
|
? koComputable(() => fn.enabled() && canExecute.call(thisArg, thisArg))
|
||||||
: koComputable(() => fn.enabled());
|
: koComputable(() => fn.enabled());
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue