const targetInput = message.text.toLowerCase();
const newStatus = 'moderation';
const { target, newData } = data.reduce((acc, obj) => {
if(obj.input.toLowerCase() === targetInput) {
acc.target = obj;
} else {
acc.newData.push(obj);
}
return acc;
}, { target: null, newData: [] });
if(target === null) {
throw new Error('...');
}
newData.push({ ...target, output: newStatus });
// ...
А с undefined дурацкий вариант, придется проверять результат useContext.
Нет, просто сразу закопают на заднем дворе по тихому.