Skip to content

Commit

Permalink
[Feature] ST00,CA00 디자인 QA, 기능 수정 (#132)
Browse files Browse the repository at this point in the history
* [feat]: ST00 디자인 & 기능 QA

* [feat]: CA00 디자인 & 기능 QA
  • Loading branch information
jinuemong authored Mar 7, 2024
1 parent d2e9f31 commit 30e95e2
Show file tree
Hide file tree
Showing 11 changed files with 366 additions and 230 deletions.
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package ac.dnd.mour.android.presentation.common.view.chart.pie

import ac.dnd.mour.android.presentation.common.theme.Gray200
import ac.dnd.mour.android.presentation.common.theme.Gray300
import ac.dnd.mour.android.presentation.common.theme.Gray400
import ac.dnd.mour.android.presentation.common.theme.Gray500
import ac.dnd.mour.android.presentation.common.theme.Gray600
import ac.dnd.mour.android.presentation.common.theme.Gray700
import androidx.annotation.FloatRange
import androidx.compose.foundation.Canvas
import androidx.compose.foundation.background
Expand Down Expand Up @@ -67,23 +67,23 @@ fun PieChart(

private val emptyDataList: List<PieChartData> = listOf(
PieChartData(
color = Gray700,
color = Gray600,
value = 7
),
PieChartData(
color = Gray600,
color = Gray500,
value = 5
),
PieChartData(
color = Gray500,
color = Gray400,
value = 2
),
PieChartData(
color = Gray400,
color = Gray300,
value = 1
),
PieChartData(
color = Gray300,
color = Gray200,
value = 2
),
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import ac.dnd.mour.android.presentation.common.theme.Gray400
import ac.dnd.mour.android.presentation.common.theme.Gray600
import ac.dnd.mour.android.presentation.common.theme.Gray700
import ac.dnd.mour.android.presentation.common.theme.Gray800
import ac.dnd.mour.android.presentation.common.theme.Gray900
import ac.dnd.mour.android.presentation.common.theme.Headline1
import ac.dnd.mour.android.presentation.common.theme.Icon24
import ac.dnd.mour.android.presentation.common.theme.Secondary1
Expand Down Expand Up @@ -51,6 +52,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import kotlinx.coroutines.CoroutineExceptionHandler
Expand Down Expand Up @@ -115,7 +117,8 @@ fun NotificationScreen(
Text(
modifier = Modifier.align(Alignment.Center),
text = "알림",
style = Headline1
fontWeight = FontWeight.SemiBold,
style = Headline1.merge(color = Gray900)
)
}
if (recentAlarmList.isEmpty() && lateAlarmList.isEmpty()) {
Expand All @@ -133,6 +136,7 @@ fun NotificationScreen(
Spacer(modifier = Modifier.height(24.dp))
Text(
text = "새로운 알림이 없어요",
fontWeight = FontWeight.SemiBold,
style = Body1.merge(Gray700)
)
}
Expand All @@ -150,6 +154,7 @@ fun NotificationScreen(
Text(
modifier = Modifier.padding(horizontal = 20.dp),
text = "최근 7일",
fontWeight = FontWeight.SemiBold,
style = Body1.merge(Gray800)
)
Spacer(modifier = Modifier.height(12.dp))
Expand Down Expand Up @@ -179,6 +184,7 @@ fun NotificationScreen(
Text(
modifier = Modifier.padding(horizontal = 20.dp),
text = "이전 알림",
fontWeight = FontWeight.SemiBold,
style = Body1.merge(Gray800)
)
Spacer(modifier = Modifier.height(12.dp))
Expand Down Expand Up @@ -207,6 +213,7 @@ fun NotificationScreen(
Text(
modifier = Modifier.padding(horizontal = 20.dp),
text = "받은 소식은 30일 동안 보관됩니다",
fontWeight = FontWeight.Normal,
style = Body2.merge(Gray600)
)
Spacer(modifier = Modifier.height(32.dp))
Expand Down Expand Up @@ -322,17 +329,20 @@ private fun NotificationScreenItem(
Text(
modifier = Modifier.weight(1f),
text = "미리 알림",
style = Body1
fontWeight = FontWeight.SemiBold,
style = Body1.merge(color = Gray900)
)
Text(
text = formattedDate,
style = Body2
fontWeight = FontWeight.Normal,
style = Body2.merge(Gray600)
)
}
Text(
modifier = Modifier.fillMaxWidth(),
text = formattedContent,
style = Body1
fontWeight = FontWeight.Normal,
style = Body1.merge(color = Gray900),
)
if (item.location.isNotEmpty()) {
Row(
Expand All @@ -348,6 +358,7 @@ private fun NotificationScreenItem(
Spacer(modifier = Modifier.width(2.dp))
Text(
text = item.location,
fontWeight = FontWeight.Medium,
style = Caption2.merge(Gray700)
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,13 @@ import ac.dnd.mour.android.presentation.common.theme.Body1
import ac.dnd.mour.android.presentation.common.theme.Body2
import ac.dnd.mour.android.presentation.common.theme.Gray000
import ac.dnd.mour.android.presentation.common.theme.Gray200
import ac.dnd.mour.android.presentation.common.theme.Gray500
import ac.dnd.mour.android.presentation.common.theme.Gray600
import ac.dnd.mour.android.presentation.common.theme.Gray700
import ac.dnd.mour.android.presentation.common.theme.Gray800
import ac.dnd.mour.android.presentation.common.theme.Headline1
import ac.dnd.mour.android.presentation.common.theme.Headline3
import ac.dnd.mour.android.presentation.common.theme.Shapes
import ac.dnd.mour.android.presentation.common.theme.Space20
import ac.dnd.mour.android.presentation.common.util.ErrorObserver
import ac.dnd.mour.android.presentation.common.util.LaunchedEffectWithLifecycle
Expand All @@ -21,10 +23,6 @@ import ac.dnd.mour.android.presentation.common.util.coroutine.event.MutableEvent
import ac.dnd.mour.android.presentation.common.util.coroutine.event.eventObserve
import ac.dnd.mour.android.presentation.common.util.makeRoute
import ac.dnd.mour.android.presentation.common.view.calendar.CalendarPicker
import ac.dnd.mour.android.presentation.common.view.confirm.ConfirmButton
import ac.dnd.mour.android.presentation.common.view.confirm.ConfirmButtonProperties
import ac.dnd.mour.android.presentation.common.view.confirm.ConfirmButtonSize
import ac.dnd.mour.android.presentation.common.view.confirm.ConfirmButtonType
import ac.dnd.mour.android.presentation.ui.main.ApplicationState
import ac.dnd.mour.android.presentation.ui.main.home.common.notification.NotificationConstant
import ac.dnd.mour.android.presentation.ui.main.home.schedule.add.ScheduleAddConstant
Expand All @@ -33,6 +31,7 @@ import android.content.Intent
import android.net.Uri
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.border
import androidx.compose.foundation.clickable
import androidx.compose.foundation.interaction.MutableInteractionSource
import androidx.compose.foundation.layout.Arrangement
Expand All @@ -58,10 +57,13 @@ import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.core.content.ContextCompat.startActivity
import androidx.hilt.navigation.compose.hiltViewModel
import androidx.lifecycle.compose.collectAsStateWithLifecycle
Expand Down Expand Up @@ -204,70 +206,93 @@ private fun ScheduleScreen(
selectedDate = it
}
)
LazyColumn(
modifier = Modifier
.weight(1f)
.padding(horizontal = 20.dp),
verticalArrangement = Arrangement.spacedBy(Space20)
) {
item {
Spacer(modifier = Modifier.height(20.dp))
Text(
text = formattedTitle,
style = Headline3
)
}
if (scheduleList.isEmpty()) {
item {
Column(
modifier = Modifier.fillParentMaxSize(),
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.Center
) {
Text(
text = "아직 작성한 일정이 없어요",
style = Body1.merge(Gray700)
)
Spacer(modifier = Modifier.height(6.dp))
Text(
text = "일정을 등록하고 미리 알림 받아보세요",
style = Body2.merge(Gray600)

Spacer(modifier = Modifier.height(20.dp))
Text(
text = formattedTitle,
style = Headline3,
modifier = Modifier.padding(start = 20.dp)
)
Spacer(modifier = Modifier.height(14.dp))
if (scheduleList.isEmpty()) {
Box(
modifier = Modifier.fillMaxSize(),
contentAlignment = Alignment.Center
) {
Column(
modifier = Modifier
.fillMaxWidth()
.height(103.dp),
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.Center
) {
Spacer(modifier = Modifier.weight(7f))
Text(
text = "아직 작성한 일정이 없어요",
fontWeight = FontWeight.SemiBold,
style = Body1.merge(Gray700),
letterSpacing = (-0.25).sp,

)
Spacer(modifier = Modifier.height(24.dp))
ConfirmButton(
properties = ConfirmButtonProperties(
size = ConfirmButtonSize.Medium,
type = ConfirmButtonType.Outline
),
onClick = {
Spacer(modifier = Modifier.weight(6f))
Text(
text = "일정을 등록하고 미리 알림 받아보세요",
fontWeight = FontWeight.Normal,
style = Body2.merge(Gray600),
letterSpacing = (-0.25).sp
)
Spacer(modifier = Modifier.weight(24f))
Box(
modifier = Modifier
.clip(Shapes.medium)
.background(color = Gray000)
.clickable {
navigateToScheduleAdd()
}
) { style ->
Text(
text = "일정 등록하기",
style = style.merge(Gray600)
.border(
width = 1.dp,
color = Gray500,
shape = Shapes.medium
)
}
}
}
}
items(scheduleList) { schedule ->
ScheduleScreenItem(
schedule = schedule,
onClickSchedule = {
navigateToScheduleEdit(
id = schedule.id
)
},
onClickInvitation = {
navigateToInvitation(
link = schedule.link
.padding(
horizontal = 16.dp,
vertical = 6.5.dp
)
) {
Text(
text = "일정 등록하기",
fontWeight = FontWeight.SemiBold,
style = Body1.merge(color = Gray600),
letterSpacing = (-0.25).sp
)
}
)
}
}
item {
Spacer(modifier = Modifier.height(80.dp))
} else {
LazyColumn(
modifier = Modifier
.weight(1f)
.padding(horizontal = 20.dp),
verticalArrangement = Arrangement.spacedBy(Space20)
) {
items(scheduleList) { schedule ->
ScheduleScreenItem(
schedule = schedule,
onClickSchedule = {
navigateToScheduleEdit(
id = schedule.id
)
},
onClickInvitation = {
navigateToInvitation(
link = schedule.link
)
}
)
}
item {
Spacer(modifier = Modifier.height(80.dp))
}
}
}
}
Expand Down
Loading

0 comments on commit 30e95e2

Please sign in to comment.