Skip to content

Commit

Permalink
validate choose n from existing answer
Browse files Browse the repository at this point in the history
  • Loading branch information
d471061c committed Aug 15, 2023
1 parent 53c5fdb commit 8ec3800
Showing 1 changed file with 7 additions and 6 deletions.
13 changes: 7 additions & 6 deletions services/quizzes/src/components/widget/ChooseN.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,12 @@ import { QuizItemComponentProps } from "."
const ChooseN: React.FunctionComponent<
React.PropsWithChildren<QuizItemComponentProps<PublicSpecQuizItemChooseN, UserItemAnswerChooseN>>
> = ({ quizItem, quizItemAnswerState, setQuizItemAnswerState }) => {
const [optionsFull, setOptionsFull] = useState(false)
const [optionsFull, setOptionsFull] = useState(
quizItemAnswerState
? 0 < quizItemAnswerState.selectedOptionIds.length &&
quizItemAnswerState.selectedOptionIds.length <= quizItem.n
: false,
)

const handleOptionSelect = (event: React.MouseEvent<HTMLButtonElement>) => {
const selectedOptionId = event.currentTarget.value
Expand All @@ -36,11 +41,7 @@ const ChooseN: React.FunctionComponent<
const selectedIds = _.xor(quizItemAnswerState.selectedOptionIds, [selectedOptionId])
const validAnswer = selectedIds.length == quizItem.n

if (selectedIds.length == quizItem.n) {
setOptionsFull(true)
} else {
setOptionsFull(false)
}
setOptionsFull(validAnswer)
const newItemAnswer: UserItemAnswerChooseN = {
...quizItemAnswerState,
selectedOptionIds: selectedIds,
Expand Down

0 comments on commit 8ec3800

Please sign in to comment.