697
698
case ActionType.ChatInputAnswerChanged: {
699
>
const activeTurn = state.activeTurn;
reducer.ts
700
>
const existing = activeTurn
701
>
? findOpenInputRequestPart(activeTurn.responseParts, action.requestId)
702
: undefined;
704
return state;
705
}
706
>
const { index, part } = existing;
reducer.ts
707
>
const request = part.request;
708
>
const answers = { ...(request.answers ?? {}) };
709
>
if (action.answer === undefined) {
710
delete answers[action.questionId];
712
>
answers[action.questionId] = action.answer;
713
>
}
714
>
const responseParts = [...activeTurn.responseParts];
715
>
responseParts[index] = {
716
>
...part,
717
>
request: {
718
>
...request,
719
>
answers: Object.keys(answers).length > 0 ? answers : undefined,
720
>
},
721
>
};
722
>
return {
723
>
...state,
724
>
activeTurn: {
725
>
...activeTurn,
726
>
responseParts,
727
>
},
728
>
modifiedAt: new Date(Date.now()).toISOString(),
729
>
};
730
>
}
731
732
case ActionType.ChatInputCompleted: {