Skip to content

Commit f23a231

Browse files
authored
Merge pull request DDD-Community#157 from Minsu-Lee/feature/fridge-ingredient-category-background
식재료 카테고리 아이콘 배경색 추가
2 parents f3f1735 + 138ea36 commit f23a231

4 files changed

Lines changed: 53 additions & 0 deletions

File tree

core/designsystem/src/main/kotlin/com/anddd/nevera/core/designsystem/ui/theme/color/NeveraColor.kt

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,17 @@ class NeveraColor(
9797

9898
// Notification
9999
val notificationRed: Color,
100+
101+
// Category background
102+
val categoryVeg: Color,
103+
val categoryFruit: Color,
104+
val categoryMeatEggs: Color,
105+
val categorySea: Color,
106+
val categoryDairy: Color,
107+
val categorySauce: Color,
108+
val categoryDrink: Color,
109+
val categoryProcessed: Color,
110+
val categoryEtc: Color,
100111
)
101112

102113
internal val LightNeveraColors = NeveraColor(
@@ -190,6 +201,17 @@ internal val LightNeveraColors = NeveraColor(
190201

191202
// Notification
192203
notificationRed = ColorPalette.red50,
204+
205+
// Category background
206+
categoryVeg = ColorPalette.lime5,
207+
categoryFruit = ColorPalette.orange5,
208+
categoryMeatEggs = ColorPalette.red5,
209+
categorySea = ColorPalette.blue5,
210+
categoryDairy = ColorPalette.cyan5,
211+
categorySauce = ColorPalette.purple5,
212+
categoryDrink = ColorPalette.yellow5,
213+
categoryProcessed = ColorPalette.green5,
214+
categoryEtc = ColorPalette.gray5,
193215
)
194216

195217
// TODO: Dark mode colors - pending design team's color palette
@@ -284,6 +306,17 @@ internal val DarkNeveraColors = NeveraColor(
284306

285307
// Notification
286308
notificationRed = ColorPalette.red50,
309+
310+
// Category background
311+
categoryVeg = ColorPalette.lime5,
312+
categoryFruit = ColorPalette.orange5,
313+
categoryMeatEggs = ColorPalette.red5,
314+
categorySea = ColorPalette.blue5,
315+
categoryDairy = ColorPalette.cyan5,
316+
categorySauce = ColorPalette.purple5,
317+
categoryDrink = ColorPalette.yellow5,
318+
categoryProcessed = ColorPalette.green5,
319+
categoryEtc = ColorPalette.gray5,
287320
)
288321

289322
internal val LocalNeveraColors = staticCompositionLocalOf { LightNeveraColors }

core/ui/src/main/kotlin/com/anddd/nevera/core/ui/FoodCategoryUiExt.kt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ package com.anddd.nevera.core.ui
22

33
import androidx.annotation.DrawableRes
44
import androidx.compose.runtime.Composable
5+
import androidx.compose.ui.graphics.Color
56
import androidx.compose.ui.res.stringResource
7+
import com.anddd.nevera.core.designsystem.ui.theme.NeveraTheme
68
import com.anddd.nevera.domain.model.ingredient.FoodCategory
79

810
@DrawableRes
@@ -18,6 +20,19 @@ fun FoodCategory.iconRes(): Int = when (this) {
1820
FoodCategory.Etc -> R.drawable.img_listcell_etc
1921
}
2022

23+
@Composable
24+
fun FoodCategory.backgroundColor(): Color = when (this) {
25+
FoodCategory.Veg -> NeveraTheme.colors.categoryVeg
26+
FoodCategory.Fruit -> NeveraTheme.colors.categoryFruit
27+
FoodCategory.MeatEggs -> NeveraTheme.colors.categoryMeatEggs
28+
FoodCategory.Sea -> NeveraTheme.colors.categorySea
29+
FoodCategory.Dairy -> NeveraTheme.colors.categoryDairy
30+
FoodCategory.Sauce -> NeveraTheme.colors.categorySauce
31+
FoodCategory.Drink -> NeveraTheme.colors.categoryDrink
32+
FoodCategory.Processed -> NeveraTheme.colors.categoryProcessed
33+
FoodCategory.Etc -> NeveraTheme.colors.categoryEtc
34+
}
35+
2136
@Composable
2237
fun FoodCategory.displayName(): String = stringResource(
2338
when (this) {

feature/fridge/src/main/kotlin/com/anddd/nevera/feature/fridge/main/component/FridgeIngredientItem.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ import androidx.compose.ui.unit.IntOffset
5353
import androidx.compose.ui.unit.dp
5454
import com.anddd.nevera.core.designsystem.icon.NeveraIcons
5555
import com.anddd.nevera.core.designsystem.ui.theme.NeveraTheme
56+
import com.anddd.nevera.core.ui.backgroundColor
5657
import com.anddd.nevera.core.ui.displayName
5758
import com.anddd.nevera.core.ui.iconRes
5859
import com.anddd.nevera.domain.model.ingredient.FoodCategory
@@ -254,6 +255,7 @@ private fun IngredientCategoryIcon(
254255
contentDescription = null,
255256
modifier = Modifier
256257
.fillMaxSize()
258+
.background(item.category.backgroundColor(), imageShape)
257259
.clip(imageShape)
258260
.then(
259261
if (expiryState == ExpiryState.Normal) {

feature/main/src/main/kotlin/com/anddd/nevera/feature/main/home/component/IngredientItem.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.anddd.nevera.feature.main.home.component
22

33
import androidx.compose.foundation.Image
4+
import androidx.compose.foundation.background
45
import androidx.compose.foundation.border
56
import androidx.compose.foundation.layout.Arrangement
67
import androidx.compose.foundation.layout.Column
@@ -20,6 +21,7 @@ import androidx.compose.ui.tooling.preview.Preview
2021
import androidx.compose.ui.unit.dp
2122
import com.anddd.nevera.core.designsystem.ui.theme.NeveraTheme
2223
import com.anddd.nevera.domain.model.ingredient.FoodCategory
24+
import com.anddd.nevera.core.ui.backgroundColor
2325
import com.anddd.nevera.core.ui.iconRes
2426
import com.anddd.nevera.feature.main.home.model.IngredientUiModel
2527

@@ -43,6 +45,7 @@ internal fun IngredientItem(
4345
contentDescription = null,
4446
modifier = Modifier
4547
.size(CategoryImageSize)
48+
.background(ingredient.category.backgroundColor(), imageShape)
4649
.clip(imageShape)
4750
.border(CategoryImageBorderWidth, NeveraTheme.colors.borderNormal, imageShape),
4851
)

0 commit comments

Comments
 (0)