From 2c5d4903d0437eba70656c8391e584dbcd53396a Mon Sep 17 00:00:00 2001 From: yunsehwan Date: Tue, 16 Jul 2024 18:35:04 +0900 Subject: [PATCH] =?UTF-8?q?[CHORE]=20#14=20ModifyBottomSheet,=20RemoveItem?= =?UTF-8?q?BottomSheet=EB=A5=BC=20PokitBottomSheet=20=EB=A5=BC=20=ED=8F=AC?= =?UTF-8?q?=ED=95=A8=ED=95=98=EC=A7=80=20=EC=95=8A=EB=8A=94=20=EB=B0=A9?= =?UTF-8?q?=EC=8B=9D=EC=9C=BC=EB=A1=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modifybottomsheet/ModifyBottomSheet.kt | 49 ----------- .../ModifyBottomSheetContent.kt | 45 ++++++++++ .../template/modifybottomsheet/Preview.kt | 27 ++---- .../template/removeItemBottomSheet/Preview.kt | 29 ++----- .../RemoveItemBottomSheet.kt | 84 ------------------- .../RemoveItemBottomSheetContent.kt | 80 ++++++++++++++++++ 6 files changed, 137 insertions(+), 177 deletions(-) delete mode 100644 core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/ModifyBottomSheet.kt create mode 100644 core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/ModifyBottomSheetContent.kt delete mode 100644 core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/RemoveItemBottomSheet.kt create mode 100644 core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/RemoveItemBottomSheetContent.kt diff --git a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/ModifyBottomSheet.kt b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/ModifyBottomSheet.kt deleted file mode 100644 index 47215114..00000000 --- a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/ModifyBottomSheet.kt +++ /dev/null @@ -1,49 +0,0 @@ -package pokitmons.pokit.core.ui.components.template.modifybottomsheet - -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.runtime.Composable -import androidx.compose.ui.Modifier -import androidx.compose.ui.res.painterResource -import androidx.compose.ui.res.stringResource -import pokitmons.pokit.core.ui.R -import pokitmons.pokit.core.ui.components.template.bottomsheet.PokitBottomSheet -import pokitmons.pokit.core.ui.components.template.modifybottomsheet.subcomponents.ModifyBottomSheetItem - -@Composable -fun ModifyBottomSheet( - onHideBottomSheet: () -> Unit, - onClickShare: (() -> Unit)? = null, - onClickModify: (() -> Unit)? = null, - onClickRemove: (() -> Unit)? = null, -) { - PokitBottomSheet(onHideBottomSheet = onHideBottomSheet) { - Column( - modifier = Modifier.fillMaxWidth() - ) { - onClickShare?.let { onClickShare -> - ModifyBottomSheetItem( - onClick = {}, - title = stringResource(id = R.string.share), - painter = painterResource(id = R.drawable.icon_24_share) - ) - } - - onClickModify?.let { onClickModify -> - ModifyBottomSheetItem( - onClick = onClickModify, - title = stringResource(id = R.string.modify), - painter = painterResource(id = R.drawable.icon_24_edit) - ) - } - - onClickRemove?.let { onClickRemove -> - ModifyBottomSheetItem( - onClick = onClickRemove, - title = stringResource(id = R.string.remove), - painter = painterResource(id = R.drawable.icon_24_trash) - ) - } - } - } -} diff --git a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/ModifyBottomSheetContent.kt b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/ModifyBottomSheetContent.kt new file mode 100644 index 00000000..850e6ddd --- /dev/null +++ b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/ModifyBottomSheetContent.kt @@ -0,0 +1,45 @@ +package pokitmons.pokit.core.ui.components.template.modifybottomsheet + +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import pokitmons.pokit.core.ui.R +import pokitmons.pokit.core.ui.components.template.modifybottomsheet.subcomponents.ModifyBottomSheetItem + +@Composable +fun ModifyBottomSheetContent( + onClickShare: (() -> Unit)? = null, + onClickModify: (() -> Unit)? = null, + onClickRemove: (() -> Unit)? = null, +) { + Column( + modifier = Modifier.fillMaxWidth() + ) { + onClickShare?.let { onClickShare -> + ModifyBottomSheetItem( + onClick = {}, + title = stringResource(id = R.string.share), + painter = painterResource(id = R.drawable.icon_24_share) + ) + } + + onClickModify?.let { onClickModify -> + ModifyBottomSheetItem( + onClick = onClickModify, + title = stringResource(id = R.string.modify), + painter = painterResource(id = R.drawable.icon_24_edit) + ) + } + + onClickRemove?.let { onClickRemove -> + ModifyBottomSheetItem( + onClick = onClickRemove, + title = stringResource(id = R.string.remove), + painter = painterResource(id = R.drawable.icon_24_trash) + ) + } + } +} diff --git a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/Preview.kt b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/Preview.kt index 2c4d3acf..ec0be10f 100644 --- a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/Preview.kt +++ b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/modifybottomsheet/Preview.kt @@ -1,37 +1,22 @@ package pokitmons.pokit.core.ui.components.template.modifybottomsheet import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.material3.Button import androidx.compose.material3.Surface -import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember -import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import pokitmons.pokit.core.ui.theme.PokitTheme @Preview(showBackground = true) @Composable -private fun ModifyBottomSheetPreview() { - var showBottomSheet by remember { mutableStateOf(false) } - +private fun ModifyBottomSheetContentPreview() { PokitTheme { Surface(modifier = Modifier.fillMaxSize()) { - Button(onClick = { showBottomSheet = true }) { - Text(text = "Click!") - } - - if (showBottomSheet) { - ModifyBottomSheet( - onHideBottomSheet = {}, - onClickRemove = {}, - onClickModify = {}, - onClickShare = {} - ) - } + ModifyBottomSheetContent( + onClickRemove = {}, + onClickModify = {}, + onClickShare = {} + ) } } } diff --git a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/Preview.kt b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/Preview.kt index 642c89f7..7f2131e0 100644 --- a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/Preview.kt +++ b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/Preview.kt @@ -1,14 +1,8 @@ package pokitmons.pokit.core.ui.components.template.removeItemBottomSheet import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.material3.Button import androidx.compose.material3.Surface -import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember -import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import pokitmons.pokit.core.ui.components.template.removeItemBottomSheet.attributes.RemoveItemType @@ -16,25 +10,14 @@ import pokitmons.pokit.core.ui.theme.PokitTheme @Preview(showBackground = true) @Composable -private fun RemoveItemBottomSheetPreview() { - var showBottomSheet by remember { mutableStateOf(false) } - +private fun RemoveItemBottomSheetContentPreview() { PokitTheme { Surface(modifier = Modifier.fillMaxSize()) { - Button(onClick = { showBottomSheet = true }) { - Text(text = "Click!") - } - - if (showBottomSheet) { - RemoveItemBottomSheet( - removeItemType = RemoveItemType.LINK, - onHideBottomSheet = remember { - { showBottomSheet = false } - }, - onClickCancel = {}, - onClickRemove = {} - ) - } + RemoveItemBottomSheetContent( + removeItemType = RemoveItemType.LINK, + onClickCancel = {}, + onClickRemove = {} + ) } } } diff --git a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/RemoveItemBottomSheet.kt b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/RemoveItemBottomSheet.kt deleted file mode 100644 index 530657e4..00000000 --- a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/RemoveItemBottomSheet.kt +++ /dev/null @@ -1,84 +0,0 @@ -package pokitmons.pokit.core.ui.components.template.removeItemBottomSheet - -import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Column -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.padding -import androidx.compose.material3.Text -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 -import androidx.compose.ui.unit.dp -import pokitmons.pokit.core.ui.R -import pokitmons.pokit.core.ui.components.atom.button.PokitButton -import pokitmons.pokit.core.ui.components.atom.button.attributes.PokitButtonShape -import pokitmons.pokit.core.ui.components.atom.button.attributes.PokitButtonSize -import pokitmons.pokit.core.ui.components.atom.button.attributes.PokitButtonStyle -import pokitmons.pokit.core.ui.components.atom.button.attributes.PokitButtonType -import pokitmons.pokit.core.ui.components.template.bottomsheet.PokitBottomSheet -import pokitmons.pokit.core.ui.components.template.removeItemBottomSheet.attributes.RemoveItemType -import pokitmons.pokit.core.ui.theme.PokitTheme - -@Composable -fun RemoveItemBottomSheet( - removeItemType: RemoveItemType, - onHideBottomSheet: () -> Unit, - onClickCancel: () -> Unit, - onClickRemove: () -> Unit, -) { - PokitBottomSheet(onHideBottomSheet = onHideBottomSheet) { - Column( - modifier = Modifier - .fillMaxWidth() - .padding(top = 36.dp, start = 20.dp, end = 20.dp, bottom = 20.dp), - horizontalAlignment = Alignment.CenterHorizontally - ) { - Text( - text = stringResource(id = removeItemType.titleStringResourceId), - style = PokitTheme.typography.title2.copy(color = PokitTheme.colors.textPrimary) - ) - - Spacer(modifier = Modifier.height(8.dp)) - - Text( - text = stringResource(id = removeItemType.subStringResourceId), - style = PokitTheme.typography.body2Medium.copy(color = PokitTheme.colors.textSecondary), - textAlign = TextAlign.Center - ) - } - - Row( - modifier = Modifier - .fillMaxWidth() - .padding(top = 16.dp, start = 20.dp, end = 20.dp, bottom = 28.dp), - horizontalArrangement = Arrangement.spacedBy(8.dp) - ) { - PokitButton( - text = stringResource(id = R.string.cancellation), - icon = null, - onClick = onClickCancel, - shape = PokitButtonShape.RECTANGLE, - type = PokitButtonType.SECONDARY, - size = PokitButtonSize.LARGE, - style = PokitButtonStyle.STROKE, - modifier = Modifier.weight(1f) - ) - - PokitButton( - text = stringResource(id = R.string.removal), - icon = null, - onClick = onClickRemove, - shape = PokitButtonShape.RECTANGLE, - type = PokitButtonType.PRIMARY, - size = PokitButtonSize.LARGE, - style = PokitButtonStyle.FILLED, - modifier = Modifier.weight(1f) - ) - } - } -} diff --git a/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/RemoveItemBottomSheetContent.kt b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/RemoveItemBottomSheetContent.kt new file mode 100644 index 00000000..6f171700 --- /dev/null +++ b/core/ui/src/main/java/pokitmons/pokit/core/ui/components/template/removeItemBottomSheet/RemoveItemBottomSheetContent.kt @@ -0,0 +1,80 @@ +package pokitmons.pokit.core.ui.components.template.removeItemBottomSheet + +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +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.padding +import androidx.compose.material3.Text +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 +import androidx.compose.ui.unit.dp +import pokitmons.pokit.core.ui.R +import pokitmons.pokit.core.ui.components.atom.button.PokitButton +import pokitmons.pokit.core.ui.components.atom.button.attributes.PokitButtonShape +import pokitmons.pokit.core.ui.components.atom.button.attributes.PokitButtonSize +import pokitmons.pokit.core.ui.components.atom.button.attributes.PokitButtonStyle +import pokitmons.pokit.core.ui.components.atom.button.attributes.PokitButtonType +import pokitmons.pokit.core.ui.components.template.removeItemBottomSheet.attributes.RemoveItemType +import pokitmons.pokit.core.ui.theme.PokitTheme + +@Composable +fun RemoveItemBottomSheetContent( + removeItemType: RemoveItemType, + onClickCancel: () -> Unit, + onClickRemove: () -> Unit, +) { + Column( + modifier = Modifier + .fillMaxWidth() + .padding(top = 36.dp, start = 20.dp, end = 20.dp, bottom = 20.dp), + horizontalAlignment = Alignment.CenterHorizontally + ) { + Text( + text = stringResource(id = removeItemType.titleStringResourceId), + style = PokitTheme.typography.title2.copy(color = PokitTheme.colors.textPrimary) + ) + + Spacer(modifier = Modifier.height(8.dp)) + + Text( + text = stringResource(id = removeItemType.subStringResourceId), + style = PokitTheme.typography.body2Medium.copy(color = PokitTheme.colors.textSecondary), + textAlign = TextAlign.Center + ) + } + + Row( + modifier = Modifier + .fillMaxWidth() + .padding(top = 16.dp, start = 20.dp, end = 20.dp, bottom = 28.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp) + ) { + PokitButton( + text = stringResource(id = R.string.cancellation), + icon = null, + onClick = onClickCancel, + shape = PokitButtonShape.RECTANGLE, + type = PokitButtonType.SECONDARY, + size = PokitButtonSize.LARGE, + style = PokitButtonStyle.STROKE, + modifier = Modifier.weight(1f) + ) + + PokitButton( + text = stringResource(id = R.string.removal), + icon = null, + onClick = onClickRemove, + shape = PokitButtonShape.RECTANGLE, + type = PokitButtonType.PRIMARY, + size = PokitButtonSize.LARGE, + style = PokitButtonStyle.FILLED, + modifier = Modifier.weight(1f) + ) + } +}