diff --git a/core/design-system/src/main/java/com/twix/designsystem/components/stats/PictureDayCell.kt b/core/design-system/src/main/java/com/twix/designsystem/components/stats/PictureDayCell.kt index b24069f5..75ed9b3d 100644 --- a/core/design-system/src/main/java/com/twix/designsystem/components/stats/PictureDayCell.kt +++ b/core/design-system/src/main/java/com/twix/designsystem/components/stats/PictureDayCell.kt @@ -56,7 +56,7 @@ fun PictureDayCell( modifier = Modifier .size(36.dp) - .rotate(-16f) + .rotate(16f) .border(1.dp, GrayColor.C400, cornerShape) .background(CommonColor.White, cornerShape), ) @@ -68,8 +68,8 @@ fun PictureDayCell( .size(36.dp) .clip(cornerShape) .then( - if (showBackgroundCard) { - Modifier.border(1.dp, borderColor, cornerShape) + if (hasImage) { + Modifier.border((1.2).dp, borderColor, cornerShape) } else { Modifier }, @@ -104,7 +104,7 @@ fun PictureDayCell( AppText( text = date.dayOfMonth.toString(), - style = AppTextStyle.B1, + style = AppTextStyle.B3, color = textColor, textAlign = TextAlign.Center, ) diff --git a/core/design-system/src/main/java/com/twix/designsystem/components/stats/StampCell.kt b/core/design-system/src/main/java/com/twix/designsystem/components/stats/StampCell.kt index a7a6480e..6524f88b 100644 --- a/core/design-system/src/main/java/com/twix/designsystem/components/stats/StampCell.kt +++ b/core/design-system/src/main/java/com/twix/designsystem/components/stats/StampCell.kt @@ -31,7 +31,7 @@ fun StampCell( AppText( text = stats.nickname, style = AppTextStyle.B4, - color = GrayColor.C500, + color = GrayColor.C400, ) Spacer(modifier = Modifier.weight(1f)) @@ -39,7 +39,7 @@ fun StampCell( AppText( text = stringResource(R.string.stats_stamp_end_count).format(stats.completedCount), style = AppTextStyle.B4, - color = GrayColor.C500, + color = GrayColor.C400, ) } diff --git a/core/design-system/src/main/java/com/twix/designsystem/components/stats/StatsCalendar.kt b/core/design-system/src/main/java/com/twix/designsystem/components/stats/StatsCalendar.kt index 5c463607..b49c613c 100644 --- a/core/design-system/src/main/java/com/twix/designsystem/components/stats/StatsCalendar.kt +++ b/core/design-system/src/main/java/com/twix/designsystem/components/stats/StatsCalendar.kt @@ -7,8 +7,8 @@ import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height -import androidx.compose.foundation.layout.size import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.style.TextAlign @@ -82,16 +82,20 @@ private fun DayOfWeekHeader() { modifier = Modifier.fillMaxWidth(), ) { days.forEach { day -> - AppText( - text = day, - style = AppTextStyle.B2, - color = GrayColor.C300, + Box( modifier = Modifier .weight(1f) .height(24.dp), - textAlign = TextAlign.Center, - ) + contentAlignment = Alignment.Center, + ) { + AppText( + text = day, + style = AppTextStyle.C1, + color = GrayColor.C300, + textAlign = TextAlign.Center, + ) + } } } } diff --git a/core/design-system/src/main/res/values/strings.xml b/core/design-system/src/main/res/values/strings.xml index abf6eb67..02a06b9d 100644 --- a/core/design-system/src/main/res/values/strings.xml +++ b/core/design-system/src/main/res/values/strings.xml @@ -39,6 +39,10 @@ + + %s년 %02d월 %02d일 + %1$d년 %2$d월 %3$d일 + 수정하기 삭제하기 @@ -73,7 +77,6 @@ 지난 우리 목표 오늘 우리 목표 다음 우리 목표 - %s년 %02d월 %02d일 아직 목표가 없어요! @@ -92,7 +95,7 @@ 종료 - %1$s %2$d/%3$d + %1$s - %2$d/%3$d 최근 14일 diff --git a/core/util/src/main/java/com/twix/util/.gitkeep b/core/util/src/main/java/com/twix/util/.gitkeep deleted file mode 100644 index 379ad9b7..00000000 --- a/core/util/src/main/java/com/twix/util/.gitkeep +++ /dev/null @@ -1 +0,0 @@ -# This file ensures the directory is tracked by git diff --git a/feature/main/src/main/java/com/twix/stats/StatsViewModel.kt b/feature/main/src/main/java/com/twix/stats/StatsViewModel.kt index bb2fb9d7..a67a297f 100644 --- a/feature/main/src/main/java/com/twix/stats/StatsViewModel.kt +++ b/feature/main/src/main/java/com/twix/stats/StatsViewModel.kt @@ -44,6 +44,13 @@ class StatsViewModel( ) init { + collectMonthChange() + fetchInProgressStats(YearMonth.from(currentState.currentDate)) + fetchCompletedStats() + collectEventBus() + } + + private fun collectMonthChange() { viewModelScope.launch { monthChangeFlow .distinctUntilChanged() @@ -52,10 +59,6 @@ class StatsViewModel( fetchInProgressStats(yearMonth) } } - - fetchInProgressStats(YearMonth.from(currentState.currentDate)) - fetchCompletedStats() - collectEventBus() } override suspend fun handleIntent(intent: StatsIntent) { diff --git a/feature/main/src/main/java/com/twix/stats/component/EndStatsContent.kt b/feature/main/src/main/java/com/twix/stats/component/EndStatsContent.kt index 13d71dd9..0c34a6b7 100644 --- a/feature/main/src/main/java/com/twix/stats/component/EndStatsContent.kt +++ b/feature/main/src/main/java/com/twix/stats/component/EndStatsContent.kt @@ -38,7 +38,7 @@ fun EndStatsContent( ) } } else { - item { Spacer(Modifier.height(12.dp)) } + item { Spacer(Modifier.height(20.dp)) } items( items = statsGoals, diff --git a/feature/photolog/capture/src/main/java/com/twix/photolog/capture/PhotologCaptureViewModel.kt b/feature/photolog/capture/src/main/java/com/twix/photolog/capture/PhotologCaptureViewModel.kt index da1c8d1e..72d86354 100644 --- a/feature/photolog/capture/src/main/java/com/twix/photolog/capture/PhotologCaptureViewModel.kt +++ b/feature/photolog/capture/src/main/java/com/twix/photolog/capture/PhotologCaptureViewModel.kt @@ -20,6 +20,7 @@ import com.twix.ui.image.ImageGenerator import com.twix.util.bus.GoalRefreshBus import com.twix.util.bus.PhotologRefreshBus import com.twix.util.bus.StatsDetailRefreshBus +import com.twix.util.bus.StatsRefreshBus import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.delay import kotlinx.coroutines.launch @@ -32,6 +33,7 @@ class PhotologCaptureViewModel( private val detailRefreshBus: PhotologRefreshBus, private val goalRefreshBus: GoalRefreshBus, private val statsDetailRefreshBus: StatsDetailRefreshBus, + private val statsRefreshBus: StatsRefreshBus, savedStateHandle: SavedStateHandle, ) : BaseViewModel( PhotologCaptureUiState(), @@ -176,11 +178,16 @@ class PhotologCaptureViewModel( private fun handleUploadPhotologSuccess() { when (navArgs.from) { - NavRoutes.PhotologRoute.From.HOME -> + NavRoutes.PhotologRoute.From.HOME -> { goalRefreshBus.notifyGoalListChanged() + statsRefreshBus.notifyChanged(StatsRefreshBus.Target.All) + } - NavRoutes.PhotologRoute.From.DETAIL -> + NavRoutes.PhotologRoute.From.DETAIL -> { detailRefreshBus.notifyChanged(PhotologRefreshBus.Publisher.PHOTOLOG) + statsDetailRefreshBus.notifyChanged() + statsRefreshBus.notifyChanged(StatsRefreshBus.Target.All) + } NavRoutes.PhotologRoute.From.EDITOR -> Unit } diff --git a/feature/stats/detail/src/main/java/com/twix/stats/detail/StatsDetailScreen.kt b/feature/stats/detail/src/main/java/com/twix/stats/detail/StatsDetailScreen.kt index 35996205..07419af7 100644 --- a/feature/stats/detail/src/main/java/com/twix/stats/detail/StatsDetailScreen.kt +++ b/feature/stats/detail/src/main/java/com/twix/stats/detail/StatsDetailScreen.kt @@ -125,6 +125,7 @@ fun StatsDetailScreen( modifier = Modifier .fillMaxSize() + .verticalScroll(scrollState) .background(GrayColor.C050), ) { StatsDetailTopbar( @@ -158,7 +159,7 @@ fun StatsDetailScreen( modifier = Modifier .fillMaxWidth() - .verticalScroll(scrollState), + .padding(top = 32.dp), ) { Image( imageVector = ImageVector.vectorResource(R.drawable.ic_hug), @@ -166,18 +167,17 @@ fun StatsDetailScreen( modifier = Modifier .align(Alignment.TopStart) - .padding(start = 20.dp, top = 30.dp), + .padding(start = 20.dp), ) Column( modifier = Modifier .fillMaxWidth() - .padding(horizontal = 20.dp), + .padding(horizontal = 20.dp) + .padding(top = 4.dp), horizontalAlignment = Alignment.CenterHorizontally, ) { - Spacer(Modifier.height(32.dp)) - CalendarNavigator( currentDate = uiState.detail.currentDate, onPreviousMonth = onPreviousMonth, @@ -210,7 +210,7 @@ fun StatsDetailScreen( modifier = Modifier .align(Alignment.TopEnd) - .padding(end = 27.dp, top = 30.dp), + .padding(end = 27.dp), ) } diff --git a/feature/stats/detail/src/main/java/com/twix/stats/detail/component/SummaryContent.kt b/feature/stats/detail/src/main/java/com/twix/stats/detail/component/SummaryContent.kt index b6f649fa..273ec55e 100644 --- a/feature/stats/detail/src/main/java/com/twix/stats/detail/component/SummaryContent.kt +++ b/feature/stats/detail/src/main/java/com/twix/stats/detail/component/SummaryContent.kt @@ -105,7 +105,7 @@ fun SummaryContent( label = stringResource(R.string.word_start_date), value = stringResource( - R.string.date_year_month_day, + R.string.date_year_month_day_no_padding, statsSummary.startDate.year, statsSummary.startDate.monthValue, statsSummary.startDate.dayOfMonth, @@ -116,7 +116,7 @@ fun SummaryContent( value = statsSummary.endDate?.let { stringResource( - R.string.date_year_month_day, + R.string.date_year_month_day_no_padding, it.year, it.monthValue, it.dayOfMonth, @@ -170,7 +170,7 @@ private fun SummaryContentPreview() { partnerCompletedCount = 8, totalCount = 20, repeatCycle = RepeatCycle.DAILY, - startDate = LocalDate.now(), + startDate = LocalDate.of(2025, 11, 12), endDate = LocalDate.now(), ), )