Skip to content

Commit 7b66169

Browse files
author
Aishwarya Nair
committed
add tag color and edit
1 parent d1318b1 commit 7b66169

File tree

6 files changed

+102
-36
lines changed

6 files changed

+102
-36
lines changed
9.68 KB
Loading

peer-prep/src/Components/QuestionList/Question.css

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,26 @@
3838
padding: 0.5rem 0.5rem;
3939
}
4040

41+
.q-tag-container {
42+
display: block;
43+
}
44+
4145
.q-tags {
4246
display: flex;
4347
align-items: center;
4448
gap: 10px;
4549
margin-left: 20px;
50+
float: left;
51+
}
4652

53+
.q-edit {
54+
float: right;
55+
margin-right: 10px;
56+
}
57+
58+
.q-edit img {
59+
width: 25px;
60+
height: 25px;
4761
}
4862

4963
.q-tag {
@@ -85,4 +99,20 @@
8599
width: 40px;
86100
height: 40px;
87101
cursor: pointer;
102+
}
103+
104+
.q-tag-green {
105+
background: #52CC65;
106+
}
107+
108+
.q-tag-orange {
109+
background: #F4B335;
110+
}
111+
112+
.q-tag-red {
113+
background: #F65252;
114+
}
115+
116+
.q-tag-white {
117+
background: #FFFFFF;
88118
}

peer-prep/src/Components/QuestionList/Question.jsx

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import React, {useState} from 'react'
22
import './Question.css'
33
import delete_icon from '../Assets/bin.png'
4+
import edit_icon from '../Assets/pencil.png'
45

56
export const Question = ({question, i}) => {
67
const [selected, setSelected] = useState(null);
@@ -9,6 +10,17 @@ export const Question = ({question, i}) => {
910
return setSelected(null)
1011
}
1112
setSelected(i)
13+
};
14+
let tagClass = "q-tag";
15+
16+
if(question.difficulty.toLowerCase() === "easy") {
17+
tagClass += " q-tag-green"
18+
} else if (question.difficulty.toLowerCase() === "medium") {
19+
tagClass += " q-tag-orange"
20+
} else if (question.difficulty.toLowerCase() === "hard"){
21+
tagClass += " q-tag-red"
22+
} else {
23+
tagClass += " q-tag-white"
1224
}
1325
return (
1426
<div className="question-container">
@@ -21,10 +33,16 @@ export const Question = ({question, i}) => {
2133
<span> {selected === i ? "-" : "+"}</span>
2234
</div>
2335
<div className= {selected === i ? "q-content-show": "q-content"}>
24-
<div className="q-tags">
25-
<div className="q-tag">{question.difficulty}</div>
26-
<div className="q-tag">{question.topic}</div>
36+
<div className="q-tag-container">
37+
<div className="q-tags">
38+
<div className= {tagClass}>{question.difficulty}</div>
39+
<div className="q-tag">{question.topic}</div>
40+
</div>
41+
<div className="q-edit">
42+
<img src = {edit_icon} alt=""/>
43+
</div>
2744
</div>
45+
2846
<div className="q-description">{question.description}</div>
2947
</div>
3048

peer-prep/src/Components/QuestionList/QuestionForm.css

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
.form-container {
2+
display: flex;
3+
margin: auto;
4+
width: 600px;
5+
gap: 20px;
6+
align-items: center;
7+
}
8+
19
.container {
210
display: flex;
311
flex-direction: column;
@@ -78,4 +86,9 @@
7886
border-radius: 5px;
7987
font-size: 19px;
8088
cursor: pointer;
81-
}
89+
}
90+
91+
.ghost-btn img {
92+
width: 40px;
93+
visibility: hidden;
94+
}
Lines changed: 33 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import React, { useState } from 'react'
22
import './QuestionForm.css'
3-
3+
import delete_icon from '../Assets/bin.png'
44

55
export const QuestionForm = ({qId, addQuestion, setAddQ}) => {
66
const [title, setTitle] = useState("");
@@ -14,37 +14,40 @@ export const QuestionForm = ({qId, addQuestion, setAddQ}) => {
1414
addQ(title, difficulty, topic, description)
1515
}
1616
return (
17-
<form className = "container" onSubmit={handleSubmit(setAddQ, addQuestion)}>
18-
<div className="q-form-header">
19-
<div className="q-form-id">#{qId}</div>
20-
<input type="text" className="q-form-title q-form-input"
21-
placeholder='Question Title' onChange = {
22-
(e) => setTitle(e.target.value)
23-
}/>
24-
</div>
25-
26-
<div className="q-form-tags">
27-
<input type="text" className="q-form-tag q-form-input"
28-
placeholder = 'Difficulty'
29-
onChange = {
30-
(e) => setDifficulty(e.target.value)
17+
<div className="form-container">
18+
<form className = "container" onSubmit={handleSubmit(setAddQ, addQuestion)}>
19+
<div className="q-form-header">
20+
<div className="q-form-id">#{qId}</div>
21+
<input type="text" className="q-form-title q-form-input"
22+
placeholder='Question Title' onChange = {
23+
(e) => setTitle(e.target.value)
3124
}/>
32-
<input type="text" className="q-form-tag q-form-input"
33-
placeholder = 'Topic'
34-
onChange = {
35-
(e) => setTopic(e.target.value)
36-
}
37-
/>
3825
</div>
39-
<textarea type="text" className="q-form-description q-form-input"
40-
placeholder = "Question description"
41-
onChange = {
42-
(e) => setDescription(e.target.value)
43-
}/>
26+
27+
<div className="q-form-tags">
28+
<input type="text" className="q-form-tag q-form-input"
29+
placeholder = 'Difficulty'
30+
onChange = {
31+
(e) => setDifficulty(e.target.value)
32+
}/>
33+
<input type="text" className="q-form-tag q-form-input"
34+
placeholder = 'Topic'
35+
onChange = {
36+
(e) => setTopic(e.target.value)
37+
}
38+
/>
39+
</div>
40+
<textarea type="text" className="q-form-description q-form-input"
41+
placeholder = "Question description"
42+
onChange = {
43+
(e) => setDescription(e.target.value)
44+
}/>
4445

45-
<button type = "submit" className="submit-btn">Submit</button>
46-
47-
48-
</form>
46+
<button type = "submit" className="submit-btn">Submit</button>
47+
</form>
48+
<div className="ghost-btn">
49+
<img src= {delete_icon} alt=""/>
50+
</div>
51+
</div>
4952
)
5053
}

peer-prep/src/Components/QuestionList/QuestionList.jsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,10 @@ export const Questions = () => {
3030
{isAddQ === false ? <div></div> : <QuestionForm qId = {qId} addQuestion = {addQuestion}
3131
setAddQ = {setAddQ}/>}
3232
<div className="add-q-btn" onClick = {() => {
33-
setQId(qId + 1);
34-
setAddQ(true);
33+
if (!isAddQ) {
34+
setQId(qId + 1);
35+
setAddQ(true);
36+
}
3537
}}> Add question</div>
3638
</div>
3739

0 commit comments

Comments
 (0)