@@ -9,36 +9,50 @@ import androidx.compose.foundation.shape.RoundedCornerShape
9
9
import androidx.compose.material3.Text
10
10
import androidx.compose.runtime.Composable
11
11
import androidx.compose.ui.Modifier
12
+ import androidx.compose.ui.res.stringResource
12
13
import androidx.compose.ui.tooling.preview.Preview
13
14
import androidx.compose.ui.unit.dp
14
15
import com.yapp.core.designsystem.theme.YappTheme
16
+ import com.yapp.core.ui.R
15
17
16
18
enum class AttendanceStatus {
17
19
SCHEDULED ,
18
20
ATTENDED ,
19
- LATE
21
+ LATE ,
22
+ ABSENT ,
23
+ EARLY_LEAVE ,
24
+ EXCUSED ,
20
25
}
21
26
22
27
@Composable
23
28
fun AttendanceStatusChip (
24
29
status : AttendanceStatus ,
25
30
) {
26
31
val text = when (status) {
27
- AttendanceStatus .SCHEDULED -> " 예정"
28
- AttendanceStatus .ATTENDED -> " 출석"
29
- AttendanceStatus .LATE -> " 지각"
32
+ AttendanceStatus .SCHEDULED -> stringResource(id = R .string.attendance_status_scheduled)
33
+ AttendanceStatus .ATTENDED -> stringResource(id = R .string.attendance_status_attended)
34
+ AttendanceStatus .LATE -> stringResource(id = R .string.attendance_status_late)
35
+ AttendanceStatus .ABSENT -> stringResource(id = R .string.attendance_status_absent)
36
+ AttendanceStatus .EARLY_LEAVE -> stringResource(id = R .string.attendance_status_early_leave)
37
+ AttendanceStatus .EXCUSED -> stringResource(id = R .string.attendance_status_excused)
30
38
}
31
39
32
40
val backgroundColor = when (status) {
33
41
AttendanceStatus .SCHEDULED -> YappTheme .colorScheme.yellow95
34
42
AttendanceStatus .ATTENDED -> YappTheme .colorScheme.accentLightBlueWeak
35
- AttendanceStatus .LATE -> YappTheme .colorScheme.coolNeutral50.copy(alpha = 0.05f )
43
+ AttendanceStatus .LATE -> YappTheme .colorScheme.semanticFillAlternative
44
+ AttendanceStatus .ABSENT -> YappTheme .colorScheme.accentRedWeak
45
+ AttendanceStatus .EARLY_LEAVE -> YappTheme .colorScheme.accentVioletWeak
46
+ AttendanceStatus .EXCUSED -> YappTheme .colorScheme.neutral95
36
47
}
37
48
38
49
val textColor = when (status) {
39
50
AttendanceStatus .SCHEDULED -> YappTheme .colorScheme.secondaryNormal
40
51
AttendanceStatus .ATTENDED -> YappTheme .colorScheme.accentLightBlue
41
52
AttendanceStatus .LATE -> YappTheme .colorScheme.coolNeutral50
53
+ AttendanceStatus .ABSENT -> YappTheme .colorScheme.accentRed
54
+ AttendanceStatus .EARLY_LEAVE -> YappTheme .colorScheme.accentViolet
55
+ AttendanceStatus .EXCUSED -> YappTheme .colorScheme.neutral40
42
56
}
43
57
44
58
Box (
@@ -80,6 +94,18 @@ private fun AttendanceStatusChipPreview() {
80
94
AttendanceStatusChip (
81
95
status = AttendanceStatus .LATE
82
96
)
97
+
98
+ AttendanceStatusChip (
99
+ status = AttendanceStatus .ABSENT
100
+ )
101
+
102
+ AttendanceStatusChip (
103
+ status = AttendanceStatus .EARLY_LEAVE
104
+ )
105
+
106
+ AttendanceStatusChip (
107
+ status = AttendanceStatus .EXCUSED
108
+ )
83
109
}
84
110
}
85
111
}
0 commit comments