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(),
),
)