@@ -9,36 +9,50 @@ import androidx.compose.foundation.shape.RoundedCornerShape
99import androidx.compose.material3.Text
1010import androidx.compose.runtime.Composable
1111import androidx.compose.ui.Modifier
12+ import androidx.compose.ui.res.stringResource
1213import androidx.compose.ui.tooling.preview.Preview
1314import androidx.compose.ui.unit.dp
1415import com.yapp.core.designsystem.theme.YappTheme
16+ import com.yapp.core.ui.R
1517
1618enum class AttendanceStatus {
1719 SCHEDULED ,
1820 ATTENDED ,
19- LATE
21+ LATE ,
22+ ABSENT ,
23+ EARLY_LEAVE ,
24+ EXCUSED ,
2025}
2126
2227@Composable
2328fun AttendanceStatusChip (
2429 status : AttendanceStatus ,
2530) {
2631 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)
3038 }
3139
3240 val backgroundColor = when (status) {
3341 AttendanceStatus .SCHEDULED -> YappTheme .colorScheme.yellow95
3442 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
3647 }
3748
3849 val textColor = when (status) {
3950 AttendanceStatus .SCHEDULED -> YappTheme .colorScheme.secondaryNormal
4051 AttendanceStatus .ATTENDED -> YappTheme .colorScheme.accentLightBlue
4152 AttendanceStatus .LATE -> YappTheme .colorScheme.coolNeutral50
53+ AttendanceStatus .ABSENT -> YappTheme .colorScheme.accentRed
54+ AttendanceStatus .EARLY_LEAVE -> YappTheme .colorScheme.accentViolet
55+ AttendanceStatus .EXCUSED -> YappTheme .colorScheme.neutral40
4256 }
4357
4458 Box (
@@ -80,6 +94,18 @@ private fun AttendanceStatusChipPreview() {
8094 AttendanceStatusChip (
8195 status = AttendanceStatus .LATE
8296 )
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+ )
83109 }
84110 }
85111}
0 commit comments