Need to simplify this function; all inputs are 0/1:
export const handleStepComplete = (userSave: number, concur: number, signature: number) => {
if (userSave === 0 && concur === 0 && signature === 0) {
return {completed: false, active: true, error: false};
}
if ((userSave === 1 && concur === 0 && signature === 0) ||
(userSave === 1 && concur === 1 && signature === 0)) {
return {completed: true, active: true, error: false};
}
if (userSave === 1 && concur === 0 && signature === 1) {
return {completed: false, active: false, error: true};
}
};
>Solution :
Just a draft, but you could structure it something like this.
export const handleStepComplete = (userSave: number, concur: number, signature: number) => {
return {
completed: (userSave && concur && signature),
active: (userSave && !signature && !concur),
error: (signature && !concur)
}
};
This does not handle all cases, and neither does your code. The logic is probably not correct too, but you get the point and can build on it.