change QuestionList, style QuestionItem

This commit is contained in:
Tatiana Nikolaeva 2025-04-05 22:42:57 +05:00
parent b3132da636
commit 065917b4d2
4 changed files with 43 additions and 10 deletions

View file

@ -9,11 +9,32 @@
border-radius: 14px; border-radius: 14px;
} }
.questionCard:last-child{
margin-bottom: 0;
}
.questionContainer{ .questionContainer{
display: flex; display: flex;
flex-direction: column; flex-direction: column;
}
.questionTextarea{
border: none;
outline: none;
resize: none;
margin-bottom: 5px;
font-size: 24px;
font-weight: 600;
}
.buttonQuestion{
border: none;
outline: none;
background-color: #ffffff;
padding: 0;
}
.textQuestion{
margin-top: 0;
width: 100%;
font-size: 24px;
font-weight: 600;
margin-bottom: 35px;
text-align: start;
} }

View file

@ -83,8 +83,8 @@ const QuestionItem: React.FC<QuestionItemProps> = ({indexQuestion, initialTextQu
placeholder={initialTextQuestion} placeholder={initialTextQuestion}
/> />
) : ( ) : (
<button className={styles.textQuestion} onClick={handleQuestionClick}> <button className={styles.buttonQuestion} onClick={handleQuestionClick}>
<h2>{textQuestion || initialTextQuestion}</h2> <h2 className={styles.textQuestion}>{textQuestion || initialTextQuestion}</h2>
</button> </button>
)} )}
{answerOption.map((answerText, index) => ( {answerOption.map((answerText, index) => (

View file

@ -6,20 +6,28 @@ interface QuestionsListProps {}
interface Question { interface Question {
id: number; id: number;
text: string
} }
const QuestionsList: React.FC<QuestionsListProps> = () => { const QuestionsList: React.FC<QuestionsListProps> = () => {
const [questions, setQuestions] = useState<Question[]>([ const [questions, setQuestions] = useState<Question[]>([
{id: 1}, {id: 1, text: ''},
]); ]);
const handleAddQuestion = () => { const handleAddQuestion = () => {
// Find the highest ID in the current questions list
const maxId = questions.reduce((max, question) => Math.max(max, question.id), 0); const maxId = questions.reduce((max, question) => Math.max(max, question.id), 0);
const newQuestion: Question = { const newQuestion: Question = {
id: maxId + 1, // Increment the ID id: maxId + 1,
text: ''
}; };
setQuestions([...questions, newQuestion]); // Add the new question to the state setQuestions([...questions, newQuestion]);
};
const handleQuestionChange = (index: number, value: string) => {
const newQuestions = [...questions];
newQuestions[index] = {...newQuestions[index], text: value};
setQuestions(newQuestions);
}; };
return ( return (
@ -28,6 +36,8 @@ const QuestionsList: React.FC<QuestionsListProps> = () => {
<QuestionItem <QuestionItem
key={question.id} key={question.id}
indexQuestion={index + 1} indexQuestion={index + 1}
valueQuestion={''}
onChangeQuestion={(value) => handleQuestionChange(index, value)}
/> />
))} ))}
<AddQuestionButton onClick={handleAddQuestion} /> <AddQuestionButton onClick={handleAddQuestion} />

View file

@ -24,12 +24,14 @@
text-align: center; text-align: center;
font-size: 20px; font-size: 20px;
font-weight: 600; font-weight: 600;
line-height: 20px;
margin-bottom: 23px; margin-bottom: 23px;
word-break: break-word; word-break: break-word;
padding: 0; padding: 0;
} }
.textareaTitle{ .textareaTitle{
margin-top: -17px;
width: 80%; width: 80%;
padding-top: 35px; padding-top: 35px;
resize: none; resize: none;