From 63b8d4c33e1165e1d26378ac3d2ac9e99b6e10c7 Mon Sep 17 00:00:00 2001 From: juyeon Date: Fri, 4 Jul 2025 14:49:35 +0900 Subject: [PATCH 01/17] =?UTF-8?q?[refactor]:=ED=8C=A8=ED=82=A4=EC=A7=80?= =?UTF-8?q?=EB=AA=85,=20=ED=8C=8C=EC=9D=BC=EC=9C=84=EC=B9=98,=20=ED=8C=8C?= =?UTF-8?q?=EC=9D=BC=EB=AA=85=20=EC=88=98=EC=A0=95(#37)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/deploymentTargetSelector.xml | 3 +++ .../{bookSearch => booksearch}/screen/BookSearchScreen.kt | 2 +- .../BookContent.kt => mypage/component/MypageSaveBook.kt} | 4 ++-- .../FeedContent.kt => mypage/component/MypageSaveFeed.kt} | 4 ++-- .../thip/ui/{myPage => mypage}/component/RoleCard.kt | 2 +- .../thip/ui/{myPage => mypage}/component/SavedFeedCard.kt | 8 ++------ .../texthip/thip/ui/{myPage => mypage}/mock/BookItem.kt | 2 +- .../texthip/thip/ui/{myPage => mypage}/mock/FeedItem.kt | 2 +- .../thip/ui/{myPage => mypage}/mock/ReactionItem.kt | 2 +- .../texthip/thip/ui/{myPage => mypage}/mock/RoleItem.kt | 2 +- .../screen/MypageEditScreen.kt} | 7 +++---- .../screen/MypageLeavethipCompleteScreen.kt} | 2 +- .../screen/MypageLeavethipScreen.kt} | 2 +- .../screen/MypageNotificationEditScreen.kt} | 2 +- .../screen/MypageReactionScreen.kt} | 4 ++-- .../SavedScreen.kt => mypage/screen/MypageSaveScreen.kt} | 6 +++--- .../MyPageScreen.kt => mypage/screen/MypageScreen.kt} | 2 +- .../ui/{myPage => mypage}/viewmodel/SavedBookViewModel.kt | 8 ++------ .../ui/{myPage => mypage}/viewmodel/SavedFeedViewModel.kt | 4 ++-- .../java/com/texthip/thip/ui/navigator/MainNavHost.kt | 4 ++-- 20 files changed, 33 insertions(+), 39 deletions(-) rename app/src/main/java/com/texthip/thip/ui/{bookSearch => booksearch}/screen/BookSearchScreen.kt (91%) rename app/src/main/java/com/texthip/thip/ui/{myPage/component/BookContent.kt => mypage/component/MypageSaveBook.kt} (88%) rename app/src/main/java/com/texthip/thip/ui/{myPage/component/FeedContent.kt => mypage/component/MypageSaveFeed.kt} (90%) rename app/src/main/java/com/texthip/thip/ui/{myPage => mypage}/component/RoleCard.kt (99%) rename app/src/main/java/com/texthip/thip/ui/{myPage => mypage}/component/SavedFeedCard.kt (95%) rename app/src/main/java/com/texthip/thip/ui/{myPage => mypage}/mock/BookItem.kt (81%) rename app/src/main/java/com/texthip/thip/ui/{myPage => mypage}/mock/FeedItem.kt (90%) rename app/src/main/java/com/texthip/thip/ui/{myPage => mypage}/mock/ReactionItem.kt (75%) rename app/src/main/java/com/texthip/thip/ui/{myPage => mypage}/mock/RoleItem.kt (80%) rename app/src/main/java/com/texthip/thip/ui/{myPage/EditProfileScreen.kt => mypage/screen/MypageEditScreen.kt} (96%) rename app/src/main/java/com/texthip/thip/ui/{myPage/DeleteAccountCompleteScreen.kt => mypage/screen/MypageLeavethipCompleteScreen.kt} (98%) rename app/src/main/java/com/texthip/thip/ui/{myPage/DeleteAccountScreen.kt => mypage/screen/MypageLeavethipScreen.kt} (99%) rename app/src/main/java/com/texthip/thip/ui/{myPage/NotificationScreen.kt => mypage/screen/MypageNotificationEditScreen.kt} (99%) rename app/src/main/java/com/texthip/thip/ui/{myPage/ReactionsScreen.kt => mypage/screen/MypageReactionScreen.kt} (98%) rename app/src/main/java/com/texthip/thip/ui/{myPage/SavedScreen.kt => mypage/screen/MypageSaveScreen.kt} (96%) rename app/src/main/java/com/texthip/thip/ui/{myPage/screen/MyPageScreen.kt => mypage/screen/MypageScreen.kt} (99%) rename app/src/main/java/com/texthip/thip/ui/{myPage => mypage}/viewmodel/SavedBookViewModel.kt (91%) rename app/src/main/java/com/texthip/thip/ui/{myPage => mypage}/viewmodel/SavedFeedViewModel.kt (97%) diff --git a/.idea/deploymentTargetSelector.xml b/.idea/deploymentTargetSelector.xml index 00e85ee2..3e54f579 100644 --- a/.idea/deploymentTargetSelector.xml +++ b/.idea/deploymentTargetSelector.xml @@ -16,6 +16,9 @@ + + \ No newline at end of file diff --git a/app/src/main/java/com/texthip/thip/ui/bookSearch/screen/BookSearchScreen.kt b/app/src/main/java/com/texthip/thip/ui/booksearch/screen/BookSearchScreen.kt similarity index 91% rename from app/src/main/java/com/texthip/thip/ui/bookSearch/screen/BookSearchScreen.kt rename to app/src/main/java/com/texthip/thip/ui/booksearch/screen/BookSearchScreen.kt index b4e70e78..9411645c 100644 --- a/app/src/main/java/com/texthip/thip/ui/bookSearch/screen/BookSearchScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/booksearch/screen/BookSearchScreen.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.bookSearch.screen +package com.texthip.thip.ui.booksearch.screen import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxSize diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/component/BookContent.kt b/app/src/main/java/com/texthip/thip/ui/mypage/component/MypageSaveBook.kt similarity index 88% rename from app/src/main/java/com/texthip/thip/ui/myPage/component/BookContent.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/component/MypageSaveBook.kt index 9d70930a..bafb3dbf 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/component/BookContent.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/component/MypageSaveBook.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.component +package com.texthip.thip.ui.mypage.component import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.items @@ -7,7 +7,7 @@ import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.lifecycle.viewmodel.compose.viewModel import com.texthip.thip.ui.common.cards.CardBookList -import com.texthip.thip.ui.myPage.viewmodel.SavedBookViewModel +import com.texthip.thip.ui.mypage.viewmodel.SavedBookViewModel @Composable fun BookContent(viewModel: SavedBookViewModel = viewModel()) { diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/component/FeedContent.kt b/app/src/main/java/com/texthip/thip/ui/mypage/component/MypageSaveFeed.kt similarity index 90% rename from app/src/main/java/com/texthip/thip/ui/myPage/component/FeedContent.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/component/MypageSaveFeed.kt index 56216cef..eeab2b6d 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/component/FeedContent.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/component/MypageSaveFeed.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.component +package com.texthip.thip.ui.mypage.component import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.items @@ -7,7 +7,7 @@ import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.ui.res.painterResource import androidx.lifecycle.viewmodel.compose.viewModel -import com.texthip.thip.ui.myPage.viewmodel.SavedFeedViewModel +import com.texthip.thip.ui.mypage.viewmodel.SavedFeedViewModel @Composable fun FeedContent(viewModel: SavedFeedViewModel = viewModel()) { diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/component/RoleCard.kt b/app/src/main/java/com/texthip/thip/ui/mypage/component/RoleCard.kt similarity index 99% rename from app/src/main/java/com/texthip/thip/ui/myPage/component/RoleCard.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/component/RoleCard.kt index 1743529c..27157d30 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/component/RoleCard.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/component/RoleCard.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.component +package com.texthip.thip.ui.mypage.component import androidx.compose.foundation.Image import androidx.compose.foundation.background diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/component/SavedFeedCard.kt b/app/src/main/java/com/texthip/thip/ui/mypage/component/SavedFeedCard.kt similarity index 95% rename from app/src/main/java/com/texthip/thip/ui/myPage/component/SavedFeedCard.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/component/SavedFeedCard.kt index cad18ede..0865edc0 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/component/SavedFeedCard.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/component/SavedFeedCard.kt @@ -1,12 +1,10 @@ -package com.texthip.thip.ui.myPage.component +package com.texthip.thip.ui.mypage.component -import android.R.attr.contentDescription import androidx.compose.foundation.Image import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding @@ -25,11 +23,9 @@ import androidx.compose.ui.unit.dp import com.texthip.thip.R import com.texthip.thip.ui.common.buttons.ActionBookButton import com.texthip.thip.ui.common.header.ProfileBar -import com.texthip.thip.ui.myPage.mock.FeedItem -import com.texthip.thip.ui.theme.Red +import com.texthip.thip.ui.mypage.mock.FeedItem import com.texthip.thip.ui.theme.ThipTheme.colors import com.texthip.thip.ui.theme.ThipTheme.typography -import com.texthip.thip.ui.theme.White @Composable fun SavedFeedCard( diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/mock/BookItem.kt b/app/src/main/java/com/texthip/thip/ui/mypage/mock/BookItem.kt similarity index 81% rename from app/src/main/java/com/texthip/thip/ui/myPage/mock/BookItem.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/mock/BookItem.kt index bb5c4688..20ee2a14 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/mock/BookItem.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/mock/BookItem.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.mock +package com.texthip.thip.ui.mypage.mock data class BookItem( val id: Int, diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/mock/FeedItem.kt b/app/src/main/java/com/texthip/thip/ui/mypage/mock/FeedItem.kt similarity index 90% rename from app/src/main/java/com/texthip/thip/ui/myPage/mock/FeedItem.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/mock/FeedItem.kt index fab38a1b..b721d67f 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/mock/FeedItem.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/mock/FeedItem.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.mock +package com.texthip.thip.ui.mypage.mock data class FeedItem( val id: Int, diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/mock/ReactionItem.kt b/app/src/main/java/com/texthip/thip/ui/mypage/mock/ReactionItem.kt similarity index 75% rename from app/src/main/java/com/texthip/thip/ui/myPage/mock/ReactionItem.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/mock/ReactionItem.kt index 8ec2098e..fd93cc35 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/mock/ReactionItem.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/mock/ReactionItem.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.mock +package com.texthip.thip.ui.mypage.mock data class ReactionItem( val title: String, diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/mock/RoleItem.kt b/app/src/main/java/com/texthip/thip/ui/mypage/mock/RoleItem.kt similarity index 80% rename from app/src/main/java/com/texthip/thip/ui/myPage/mock/RoleItem.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/mock/RoleItem.kt index 584cdbb7..ce193f5f 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/mock/RoleItem.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/mock/RoleItem.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.mock +package com.texthip.thip.ui.mypage.mock import androidx.compose.ui.graphics.Color diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/EditProfileScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageEditScreen.kt similarity index 96% rename from app/src/main/java/com/texthip/thip/ui/myPage/EditProfileScreen.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageEditScreen.kt index dad344f2..2b1d7331 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/EditProfileScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageEditScreen.kt @@ -1,7 +1,6 @@ -package com.texthip.thip.ui.myPage.screen +package com.texthip.thip.ui.mypage.screen -import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.FlowRow @@ -24,8 +23,8 @@ import androidx.compose.ui.unit.dp import com.texthip.thip.R import com.texthip.thip.ui.common.forms.FormTextFieldDefault import com.texthip.thip.ui.common.topappbar.InputTopAppBar -import com.texthip.thip.ui.myPage.component.RoleCard -import com.texthip.thip.ui.myPage.mock.RoleItem +import com.texthip.thip.ui.mypage.component.RoleCard +import com.texthip.thip.ui.mypage.mock.RoleItem import com.texthip.thip.ui.theme.ThipTheme.colors import com.texthip.thip.ui.theme.ThipTheme.typography diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/DeleteAccountCompleteScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipCompleteScreen.kt similarity index 98% rename from app/src/main/java/com/texthip/thip/ui/myPage/DeleteAccountCompleteScreen.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipCompleteScreen.kt index fc79be00..e4936a71 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/DeleteAccountCompleteScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipCompleteScreen.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.screen +package com.texthip.thip.ui.mypage.screen import androidx.compose.foundation.Image import androidx.compose.foundation.layout.Arrangement diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/DeleteAccountScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipScreen.kt similarity index 99% rename from app/src/main/java/com/texthip/thip/ui/myPage/DeleteAccountScreen.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipScreen.kt index 95d5e2d6..b0bce66e 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/DeleteAccountScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipScreen.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.screen +package com.texthip.thip.ui.mypage.screen import androidx.compose.foundation.background import androidx.compose.foundation.clickable diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/NotificationScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageNotificationEditScreen.kt similarity index 99% rename from app/src/main/java/com/texthip/thip/ui/myPage/NotificationScreen.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageNotificationEditScreen.kt index 3f6c49ee..7f72c4ff 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/NotificationScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageNotificationEditScreen.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.screen +package com.texthip.thip.ui.mypage.screen import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/ReactionsScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageReactionScreen.kt similarity index 98% rename from app/src/main/java/com/texthip/thip/ui/myPage/ReactionsScreen.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageReactionScreen.kt index 68948902..904a70bc 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/ReactionsScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageReactionScreen.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.screen +package com.texthip.thip.ui.mypage.screen import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column @@ -23,7 +23,7 @@ import com.texthip.thip.R import com.texthip.thip.ui.common.buttons.OptionChipButton import com.texthip.thip.ui.common.cards.CardAlarm import com.texthip.thip.ui.common.topappbar.DefaultTopAppBar -import com.texthip.thip.ui.myPage.mock.ReactionItem +import com.texthip.thip.ui.mypage.mock.ReactionItem import com.texthip.thip.ui.theme.Black @Composable diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/SavedScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageSaveScreen.kt similarity index 96% rename from app/src/main/java/com/texthip/thip/ui/myPage/SavedScreen.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageSaveScreen.kt index 332dffe4..18e1913e 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/SavedScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageSaveScreen.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.screen +package com.texthip.thip.ui.mypage.screen import androidx.compose.foundation.background import androidx.compose.foundation.layout.Box @@ -29,8 +29,8 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.texthip.thip.R import com.texthip.thip.ui.common.topappbar.DefaultTopAppBar -import com.texthip.thip.ui.myPage.component.BookContent -import com.texthip.thip.ui.myPage.component.FeedContent +import com.texthip.thip.ui.mypage.component.BookContent +import com.texthip.thip.ui.mypage.component.FeedContent import com.texthip.thip.ui.theme.Black import com.texthip.thip.ui.theme.ThipTheme.colors import com.texthip.thip.ui.theme.ThipTheme.typography diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/screen/MyPageScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageScreen.kt similarity index 99% rename from app/src/main/java/com/texthip/thip/ui/myPage/screen/MyPageScreen.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageScreen.kt index e746dfca..29bef355 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/screen/MyPageScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageScreen.kt @@ -1,4 +1,4 @@ -package com.texthip.thip.ui.myPage.screen +package com.texthip.thip.ui.mypage.screen import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/viewmodel/SavedBookViewModel.kt b/app/src/main/java/com/texthip/thip/ui/mypage/viewmodel/SavedBookViewModel.kt similarity index 91% rename from app/src/main/java/com/texthip/thip/ui/myPage/viewmodel/SavedBookViewModel.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/viewmodel/SavedBookViewModel.kt index b271d533..a0ff0759 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/viewmodel/SavedBookViewModel.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/viewmodel/SavedBookViewModel.kt @@ -1,13 +1,9 @@ -package com.texthip.thip.ui.myPage.viewmodel +package com.texthip.thip.ui.mypage.viewmodel -import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.setValue import androidx.lifecycle.ViewModel -import com.texthip.thip.ui.myPage.mock.BookItem +import com.texthip.thip.ui.mypage.mock.BookItem import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow -import kotlinx.coroutines.flow.map class SavedBookViewModel : ViewModel() { diff --git a/app/src/main/java/com/texthip/thip/ui/myPage/viewmodel/SavedFeedViewModel.kt b/app/src/main/java/com/texthip/thip/ui/mypage/viewmodel/SavedFeedViewModel.kt similarity index 97% rename from app/src/main/java/com/texthip/thip/ui/myPage/viewmodel/SavedFeedViewModel.kt rename to app/src/main/java/com/texthip/thip/ui/mypage/viewmodel/SavedFeedViewModel.kt index f0fcbeb5..86462960 100644 --- a/app/src/main/java/com/texthip/thip/ui/myPage/viewmodel/SavedFeedViewModel.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/viewmodel/SavedFeedViewModel.kt @@ -1,8 +1,8 @@ -package com.texthip.thip.ui.myPage.viewmodel +package com.texthip.thip.ui.mypage.viewmodel import androidx.lifecycle.ViewModel import com.texthip.thip.R -import com.texthip.thip.ui.myPage.mock.FeedItem +import com.texthip.thip.ui.mypage.mock.FeedItem import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow diff --git a/app/src/main/java/com/texthip/thip/ui/navigator/MainNavHost.kt b/app/src/main/java/com/texthip/thip/ui/navigator/MainNavHost.kt index cb59a72a..c3b8701d 100644 --- a/app/src/main/java/com/texthip/thip/ui/navigator/MainNavHost.kt +++ b/app/src/main/java/com/texthip/thip/ui/navigator/MainNavHost.kt @@ -4,10 +4,10 @@ import androidx.navigation.compose.NavHost import androidx.navigation.compose.composable import androidx.compose.runtime.Composable import androidx.navigation.NavHostController -import com.texthip.thip.ui.bookSearch.screen.BookSearchScreen +import com.texthip.thip.ui.booksearch.screen.BookSearchScreen import com.texthip.thip.ui.feed.screen.FeedScreen import com.texthip.thip.ui.group.screen.GroupScreen -import com.texthip.thip.ui.myPage.screen.MyPageScreen +import com.texthip.thip.ui.mypage.screen.MyPageScreen @Composable fun MainNavHost(navController: NavHostController) { From a4c8ca2fb420e8ade6fbbdcde269d1a0b086bb1b Mon Sep 17 00:00:00 2001 From: juyeon Date: Sat, 5 Jul 2025 14:27:47 +0900 Subject: [PATCH 02/17] =?UTF-8?q?[refactor]:TopBar=20=EC=88=98=EC=A0=95(#3?= =?UTF-8?q?7)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../thip/ui/mypage/screen/MypageEditScreen.kt | 26 +++---- .../screen/MypageLeavethipCompleteScreen.kt | 23 +++--- .../ui/mypage/screen/MypageLeavethipScreen.kt | 78 +++++++++---------- .../screen/MypageNotificationEditScreen.kt | 28 +++---- .../ui/mypage/screen/MypageReactionScreen.kt | 22 +++--- .../thip/ui/mypage/screen/MypageSaveScreen.kt | 21 +++-- .../thip/ui/mypage/screen/MypageScreen.kt | 22 +++--- 7 files changed, 108 insertions(+), 112 deletions(-) diff --git a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageEditScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageEditScreen.kt index 2b1d7331..6c9a5d52 100644 --- a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageEditScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageEditScreen.kt @@ -1,14 +1,15 @@ package com.texthip.thip.ui.mypage.screen +import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.FlowRow import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding -import androidx.compose.material3.Scaffold import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue @@ -63,20 +64,19 @@ fun EditProfileScreen() { colors.Skyblue ) ) - Scaffold( - containerColor = colors.Black, - topBar = { - InputTopAppBar( - title = stringResource(R.string.edit_profile), - isRightButtonEnabled = true, - onLeftClick = {}, - onRightClick = {} - ) - } - ) { innerPadding -> + Column( + Modifier + .background(colors.Black) + .fillMaxSize() + ) { + InputTopAppBar( + title = stringResource(R.string.edit_profile), + isRightButtonEnabled = true, + onLeftClick = {}, + onRightClick = {} + ) Column( modifier = Modifier - .padding(innerPadding) .padding(horizontal = 20.dp) .fillMaxWidth(), horizontalAlignment = Alignment.CenterHorizontally diff --git a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipCompleteScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipCompleteScreen.kt index e4936a71..38a013c3 100644 --- a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipCompleteScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipCompleteScreen.kt @@ -1,6 +1,7 @@ package com.texthip.thip.ui.mypage.screen import androidx.compose.foundation.Image +import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row @@ -10,7 +11,6 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size -import androidx.compose.material3.Scaffold import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment @@ -28,19 +28,18 @@ import com.texthip.thip.ui.theme.ThipTheme.typography @Composable fun DeleteAccountCompleteScreen() { - Scaffold( - containerColor = colors.Black, - topBar = { - DefaultTopAppBar( - isRightIconVisible = false, - isTitleVisible = false, - onLeftClick = {}, - ) - } - ) { innerPadding -> + Column( + Modifier + .background(colors.Black) + .fillMaxSize() + ) { + DefaultTopAppBar( + isRightIconVisible = false, + isTitleVisible = false, + onLeftClick = {}, + ) Column( modifier = Modifier - .padding(innerPadding) .fillMaxSize(), horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center diff --git a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipScreen.kt index b0bce66e..31b6f7bb 100644 --- a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageLeavethipScreen.kt @@ -13,7 +13,6 @@ import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.Icon -import androidx.compose.material3.Scaffold import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue @@ -45,47 +44,20 @@ fun DeleteAccountScreen() { val backgroundColor = if (isChecked) colors.Purple else colors.Grey02 var isDialogVisible by rememberSaveable { mutableStateOf(false) } - Scaffold( - containerColor = colors.Black, - topBar = { - DefaultTopAppBar( - title = stringResource(R.string.delete_account), - onLeftClick = {}, - ) - }, - bottomBar = { - Row( - modifier = Modifier - .fillMaxWidth() - .height(56.dp) - .background(backgroundColor) - .clickable( - enabled = isChecked, - onClick = { - isDialogVisible = true - }), - horizontalArrangement = Arrangement.Center, - verticalAlignment = Alignment.CenterVertically - ) { - Icon( - painter = painterResource(R.drawable.ic_bye), - contentDescription = null, - tint = colors.White - ) - Text( - text = stringResource(R.string.leave_thip), - color = colors.White, - style = typography.smalltitle_sb600_s18_h24, - modifier = Modifier.padding(horizontal = 8.dp) - ) - } - } - ) { innerPadding -> + Column( + Modifier + .background(colors.Black) + .fillMaxSize() + ) { + DefaultTopAppBar( + title = stringResource(R.string.delete_account), + onLeftClick = {}, + ) + Spacer(modifier = Modifier.height(40.dp)) Column( modifier = Modifier - .padding(20.dp) - .padding(innerPadding) - .fillMaxSize() + .weight(1f) + .padding(horizontal = 20.dp), ) { Box( modifier = Modifier @@ -144,6 +116,32 @@ fun DeleteAccountScreen() { ) } } + Spacer(modifier = Modifier.height(55.dp)) + Row( + modifier = Modifier + .fillMaxWidth() + .height(50.dp) + .background(backgroundColor) + .clickable( + enabled = isChecked, + onClick = { + isDialogVisible = true + }), + horizontalArrangement = Arrangement.Center, + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + painter = painterResource(R.drawable.ic_bye), + contentDescription = null, + tint = colors.White + ) + Text( + text = stringResource(R.string.leave_thip), + color = colors.White, + style = typography.smalltitle_sb600_s18_h24, + modifier = Modifier.padding(horizontal = 8.dp) + ) + } if (isDialogVisible) { Dialog(onDismissRequest = { isDialogVisible = false }) { Box( diff --git a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageNotificationEditScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageNotificationEditScreen.kt index 7f72c4ff..feb41106 100644 --- a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageNotificationEditScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageNotificationEditScreen.kt @@ -1,12 +1,14 @@ package com.texthip.thip.ui.mypage.screen +import androidx.compose.foundation.background import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding -import androidx.compose.material3.Scaffold import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect @@ -58,20 +60,20 @@ fun NotificationScreen() { ) } } - Scaffold( - containerColor = colors.Black, - topBar = { - InputTopAppBar( - title = stringResource(R.string.notification_settings), - isRightButtonEnabled = true, - onLeftClick = {}, - onRightClick = {} - ) - } - ) { innerPadding -> + Column( + Modifier + .background(colors.Black) + .fillMaxSize() + ) { + InputTopAppBar( + title = stringResource(R.string.notification_settings), + isRightButtonEnabled = true, + onLeftClick = {}, + onRightClick = {} + ) + Spacer(modifier = Modifier.height(40.dp)) Column( modifier = Modifier - .padding(innerPadding) .padding(horizontal = 20.dp) .fillMaxSize(), horizontalAlignment = Alignment.CenterHorizontally diff --git a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageReactionScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageReactionScreen.kt index 904a70bc..28396257 100644 --- a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageReactionScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageReactionScreen.kt @@ -1,5 +1,6 @@ package com.texthip.thip.ui.mypage.screen +import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row @@ -25,6 +26,7 @@ import com.texthip.thip.ui.common.cards.CardAlarm import com.texthip.thip.ui.common.topappbar.DefaultTopAppBar import com.texthip.thip.ui.mypage.mock.ReactionItem import com.texthip.thip.ui.theme.Black +import com.texthip.thip.ui.theme.ThipTheme.colors @Composable fun ReactionsScreen() { @@ -54,21 +56,19 @@ fun ReactionsScreen() { } } - Scaffold( - containerColor = Black, - topBar = { - DefaultTopAppBar( - title = stringResource(R.string.reactions), - onLeftClick = {}, - ) - } - ) { innerPadding -> + Column( + Modifier + .background(colors.Black) + .fillMaxSize() + ) { + DefaultTopAppBar( + title = stringResource(R.string.reactions), + onLeftClick = {}, + ) Column( modifier = Modifier - .padding(innerPadding) .fillMaxSize() ) { - //TODO card 컴포넌트 수정 후 적용 & 필터링 기능 Row(modifier = Modifier.padding(start = 20.dp, top = 20.dp, bottom = 20.dp)) { OptionChipButton( text = stringResource(R.string.likes), diff --git a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageSaveScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageSaveScreen.kt index 18e1913e..e57cc60c 100644 --- a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageSaveScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageSaveScreen.kt @@ -9,7 +9,6 @@ import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.width import androidx.compose.foundation.shape.RoundedCornerShape -import androidx.compose.material3.Scaffold import androidx.compose.material3.Tab import androidx.compose.material3.TabRow import androidx.compose.material3.TabRowDefaults.tabIndicatorOffset @@ -31,7 +30,6 @@ import com.texthip.thip.R import com.texthip.thip.ui.common.topappbar.DefaultTopAppBar import com.texthip.thip.ui.mypage.component.BookContent import com.texthip.thip.ui.mypage.component.FeedContent -import com.texthip.thip.ui.theme.Black import com.texthip.thip.ui.theme.ThipTheme.colors import com.texthip.thip.ui.theme.ThipTheme.typography import com.texthip.thip.ui.theme.White @@ -41,18 +39,17 @@ fun SavedScreen() { val tabs = listOf(stringResource(R.string.feed), stringResource(R.string.book)) var selectedTabIndex by rememberSaveable { mutableStateOf(0) } - Scaffold( - containerColor = Black, - topBar = { - DefaultTopAppBar( - title = stringResource(R.string.saved), - onLeftClick = {}, - ) - } - ) { innerPadding -> + Column( + Modifier + .background(colors.Black) + .fillMaxSize() + ) { + DefaultTopAppBar( + title = stringResource(R.string.saved), + onLeftClick = {}, + ) Column( modifier = Modifier - .padding(innerPadding) .fillMaxSize() ) { Box(modifier = Modifier.width(160.dp).padding(start = 20.dp)) { diff --git a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageScreen.kt b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageScreen.kt index 29bef355..f8467f32 100644 --- a/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageScreen.kt +++ b/app/src/main/java/com/texthip/thip/ui/mypage/screen/MypageScreen.kt @@ -1,5 +1,6 @@ package com.texthip.thip.ui.mypage.screen +import androidx.compose.foundation.background import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize @@ -36,19 +37,18 @@ fun MyPageScreen( badgeText: String ) { var showLogoutDialog by remember { mutableStateOf(false) } - Scaffold( - containerColor = Black, - topBar = { - LeftNameTopAppBar( - title = stringResource(R.string.my_page), - leftIcon = painterResource(R.drawable.ic_search), - rightIcon = painterResource(R.drawable.ic_plus) - ) - } - ) { innerPadding -> + Column( + Modifier + .background(colors.Black) + .fillMaxSize() + ) { + LeftNameTopAppBar( + title = stringResource(R.string.my_page), + leftIcon = painterResource(R.drawable.ic_search), + rightIcon = painterResource(R.drawable.ic_plus) + ) Column( modifier = Modifier - .padding(innerPadding) .fillMaxSize() ) { Spacer(modifier = Modifier.height(40.dp)) From a45b055f4281e50bd8c95096b464f6346ac51269 Mon Sep 17 00:00:00 2001 From: JJUYAAA Date: Mon, 7 Jul 2025 15:05:26 +0900 Subject: [PATCH 03/17] =?UTF-8?q?[ui]:=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20?= =?UTF-8?q?=ED=99=94=EB=A9=B4=20=EC=A0=9C=EC=9E=91(#37)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../thip/ui/signin/screen/LoginScreen.kt | 88 +++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 app/src/main/java/com/texthip/thip/ui/signin/screen/LoginScreen.kt diff --git a/app/src/main/java/com/texthip/thip/ui/signin/screen/LoginScreen.kt b/app/src/main/java/com/texthip/thip/ui/signin/screen/LoginScreen.kt new file mode 100644 index 00000000..7cbabf18 --- /dev/null +++ b/app/src/main/java/com/texthip/thip/ui/signin/screen/LoginScreen.kt @@ -0,0 +1,88 @@ +package com.texthip.thip.ui.signin.screen + +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.material3.Icon +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.Color.Companion.Unspecified +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.SpanStyle +import androidx.compose.ui.text.buildAnnotatedString +import androidx.compose.ui.text.withStyle +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import com.texthip.thip.R +import com.texthip.thip.ui.common.buttons.ActionMediumButton +import com.texthip.thip.ui.theme.Purple +import com.texthip.thip.ui.theme.ThipTheme.colors +import com.texthip.thip.ui.theme.ThipTheme.typography + + +@Composable +fun LoginScreen() { + Column( + Modifier + .background(colors.Black) + .padding(horizontal = 20.dp) + .fillMaxSize(), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center + ) { + Icon( + painter = painterResource(R.drawable.ic_logo), + contentDescription = null, + tint = Unspecified, + ) + Spacer(modifier = Modifier.height(24.dp)) + Text( + text = buildAnnotatedString { + withStyle(style = SpanStyle(color = Purple)) { + append(stringResource(R.string.thip)) + } + append(stringResource(R.string.splash_ment)) + }, + style = typography.smalltitle_sb600_s18_h24, + color = colors.White + ) + Spacer(modifier = Modifier.height(140.dp)) + ActionMediumButton( + text = stringResource(R.string.kakao_login), + icon = painterResource(R.drawable.ic_kakaotalk), + iconSize = 21, + contentColor = colors.Black, + backgroundColor = colors.KakaoYellow, + hasRightIcon = false, + modifier = Modifier.fillMaxWidth(), + onClick = {}, + ) + Spacer(modifier = Modifier.height(20.dp)) + ActionMediumButton( + text = stringResource(R.string.google_login), + icon = painterResource(R.drawable.ic_google), + iconSize = 21, + iconTint = Color.Unspecified, + contentColor = colors.Black, + backgroundColor = colors.White, + hasRightIcon = false, + modifier = Modifier.fillMaxWidth(), + onClick = {}, + ) + } +} + +@Preview +@Composable +private fun LoginScreenPrev() { + LoginScreen() +} \ No newline at end of file From 13b86a600210c29a15d7e7a2831d02719dce591b Mon Sep 17 00:00:00 2001 From: JJUYAAA Date: Mon, 7 Jul 2025 15:05:54 +0900 Subject: [PATCH 04/17] =?UTF-8?q?[ui]:=20SigninDone=20=ED=99=94=EB=A9=B4?= =?UTF-8?q?=20=EC=A0=9C=EC=9E=91(#37)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../thip/ui/signin/screen/SigninDoneScreen.kt | 135 ++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 app/src/main/java/com/texthip/thip/ui/signin/screen/SigninDoneScreen.kt diff --git a/app/src/main/java/com/texthip/thip/ui/signin/screen/SigninDoneScreen.kt b/app/src/main/java/com/texthip/thip/ui/signin/screen/SigninDoneScreen.kt new file mode 100644 index 00000000..a92434df --- /dev/null +++ b/app/src/main/java/com/texthip/thip/ui/signin/screen/SigninDoneScreen.kt @@ -0,0 +1,135 @@ +package com.texthip.thip.ui.signin.screen + +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.offset +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.painter.Painter +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import com.texthip.thip.R +import com.texthip.thip.ui.common.buttons.ActionMediumButton +import com.texthip.thip.ui.common.topappbar.DefaultTopAppBar +import com.texthip.thip.ui.theme.Grey +import com.texthip.thip.ui.theme.ThipTheme.colors +import com.texthip.thip.ui.theme.ThipTheme.typography + +@Composable +fun SigninDoneScreen(nickname: String, profileImageResId: Int?, role: String) { + Column( + Modifier + .background(colors.Black) + .fillMaxSize() + ) { + DefaultTopAppBar( + isRightIconVisible = false, + isTitleVisible = false, + onLeftClick = {}, + ) + Spacer(modifier = Modifier.height(40.dp)) + Column( + modifier = Modifier + .padding(horizontal = 20.dp) + .fillMaxWidth() + ) { + Text( + text = stringResource(R.string.hello_user, nickname), + style = typography.smalltitle_sb600_s18_h24, + color = colors.White, + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 8.dp) + ) + Spacer(modifier = Modifier.height(8.dp)) + Text( + text = stringResource(R.string.signin_done), + style = typography.copy_m500_s14_h20, + color = colors.Grey, + modifier = Modifier + .fillMaxWidth() + ) + Spacer(modifier = Modifier.height(100.dp)) + Column( + modifier = Modifier + .fillMaxWidth(), + horizontalAlignment = Alignment.CenterHorizontally + ) { + if (profileImageResId != null) { + Box( + modifier = Modifier + .size(54.dp) + .clip(CircleShape) + .border(width = 1.dp, color = colors.White, shape = CircleShape) + .background(colors.Black), + contentAlignment = Alignment.BottomCenter + ) { + Image( + painter = painterResource(id = profileImageResId), + contentDescription = null, + contentScale = ContentScale.Fit, + modifier = Modifier + .size(45.dp) + .offset(y = 2.dp) + ) + } + } else { + Box( + modifier = Modifier + .size(54.dp) + .clip(CircleShape) + .border(width = 0.5.dp, color = colors.Grey01, shape = CircleShape) + .background(Grey) + ) + } + Spacer(modifier = Modifier.height(8.dp)) + Text( + text = nickname, + style = typography.smalltitle_sb600_s18_h24, + color = colors.White, + modifier = Modifier + .padding(bottom = 4.dp) + ) + Text( + text = role, + style = typography.copy_r400_s14, + color = colors.White, + modifier = Modifier + ) + Spacer(modifier = Modifier.height(76.dp)) + ActionMediumButton( + text = stringResource(R.string.start_thip), + contentColor = colors.White, + backgroundColor = colors.Purple, + modifier = Modifier.width(180.dp), + onClick = {}, + ) + } + + } + + } +} + +@Preview +@Composable +private fun SigninDoneScreenPrev() { + SigninDoneScreen("JJUYAA", profileImageResId = R.drawable.character_sociology, role = "칭호칭호") +} \ No newline at end of file From 3796bc7dfbbd7c0a9142dfcbd604ea621143a865 Mon Sep 17 00:00:00 2001 From: JJUYAAA Date: Mon, 7 Jul 2025 15:07:23 +0900 Subject: [PATCH 05/17] =?UTF-8?q?[ui]:=20Signin=20Nickname=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=20=ED=99=94=EB=A9=B4=20=EC=A0=9C=EC=9E=91(#37)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../thip/ui/signin/SigninNicknameScreen.kt | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 app/src/main/java/com/texthip/thip/ui/signin/SigninNicknameScreen.kt diff --git a/app/src/main/java/com/texthip/thip/ui/signin/SigninNicknameScreen.kt b/app/src/main/java/com/texthip/thip/ui/signin/SigninNicknameScreen.kt new file mode 100644 index 00000000..ce2b92ad --- /dev/null +++ b/app/src/main/java/com/texthip/thip/ui/signin/SigninNicknameScreen.kt @@ -0,0 +1,67 @@ +package com.texthip.thip.ui.signin + +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +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.Modifier +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import com.texthip.thip.R +import com.texthip.thip.ui.common.forms.FormTextFieldDefault +import com.texthip.thip.ui.common.topappbar.DefaultTopAppBar +import com.texthip.thip.ui.common.topappbar.InputTopAppBar +import com.texthip.thip.ui.theme.ThipTheme.colors +import com.texthip.thip.ui.theme.ThipTheme.typography + +@Composable +fun SigninNicknameScreen() { + Column( + Modifier + .background(colors.Black) + .fillMaxSize() + ) { + InputTopAppBar( + title = stringResource(R.string.settings_1), + isRightButtonEnabled = false, + rightButtonName = stringResource(R.string.next), + isLeftIconVisible = false, + onLeftClick = {}, + onRightClick = {} + ) + Spacer(modifier = Modifier.height(40.dp)) + Column( + modifier = Modifier + .padding(horizontal = 20.dp) + .fillMaxWidth() + ) { + Text( + text = stringResource(R.string.nickname), + style = typography.smalltitle_sb600_s18_h24, + color = colors.White, + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 12.dp) + ) + FormTextFieldDefault( + hint = stringResource(R.string.nickname_condition), + showLimit = true, + limit = 10, + showIcon = false, + containerColor= colors.DarkGrey02 + ) + } + } +} + +@Preview +@Composable +private fun SigninNicknameScreenPrev() { + SigninNicknameScreen() +} \ No newline at end of file From 1043730172ebbc5b8e9ed01afee96cc29f09a33e Mon Sep 17 00:00:00 2001 From: JJUYAAA Date: Mon, 7 Jul 2025 15:07:32 +0900 Subject: [PATCH 06/17] =?UTF-8?q?[ui]:=20Splash=20=ED=99=94=EB=A9=B4=20?= =?UTF-8?q?=EC=A0=9C=EC=9E=91(#37)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../texthip/thip/ui/signin/SplashScreen.kt | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 app/src/main/java/com/texthip/thip/ui/signin/SplashScreen.kt diff --git a/app/src/main/java/com/texthip/thip/ui/signin/SplashScreen.kt b/app/src/main/java/com/texthip/thip/ui/signin/SplashScreen.kt new file mode 100644 index 00000000..b612dc3f --- /dev/null +++ b/app/src/main/java/com/texthip/thip/ui/signin/SplashScreen.kt @@ -0,0 +1,59 @@ +package com.texthip.thip.ui.signin + +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.height +import androidx.compose.material3.Icon +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color.Companion.Unspecified +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.text.SpanStyle +import androidx.compose.ui.text.buildAnnotatedString +import androidx.compose.ui.text.withStyle +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import com.texthip.thip.R +import com.texthip.thip.ui.theme.Purple +import com.texthip.thip.ui.theme.ThipTheme.colors +import com.texthip.thip.ui.theme.ThipTheme.typography + +@Composable +fun SplashScreen() { + Column( + Modifier + .background(colors.Black) + .fillMaxSize(), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center + ) { + Icon( + painter = painterResource(R.drawable.ic_logo), + contentDescription = null, + tint = Unspecified, + ) + Spacer(modifier = Modifier.height(24.dp)) + Text( + text = buildAnnotatedString { + withStyle(style = SpanStyle(color = Purple)) { + append(stringResource(R.string.thip)) + } + append(stringResource(R.string.splash_ment)) + }, + style = typography.smalltitle_sb600_s18_h24, + color = colors.White + ) + } +} + +@Preview +@Composable +private fun SplashScreenPrev() { + SplashScreen() +} \ No newline at end of file From 6e8de2d2ed44a94dfda72e900b19891c3d5e79c6 Mon Sep 17 00:00:00 2001 From: JJUYAAA Date: Mon, 7 Jul 2025 15:08:13 +0900 Subject: [PATCH 07/17] =?UTF-8?q?[refactor]:=20ActionMediumButton=20?= =?UTF-8?q?=EC=95=84=EC=9D=B4=EC=BD=98=20=EC=82=AC=EC=9D=B4=EC=A6=88,=20?= =?UTF-8?q?=EC=83=89=EC=83=81=20=EC=A7=80=EC=A0=95=EA=B0=80=EB=8A=A5?= =?UTF-8?q?=ED=95=98=EB=8F=84=EB=A1=9D=20=EC=88=98=EC=A0=95(#37)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/texthip/thip/ui/common/buttons/ActionMediumButton.kt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/src/main/java/com/texthip/thip/ui/common/buttons/ActionMediumButton.kt b/app/src/main/java/com/texthip/thip/ui/common/buttons/ActionMediumButton.kt index 33a0f0ec..0b9b7eff 100644 --- a/app/src/main/java/com/texthip/thip/ui/common/buttons/ActionMediumButton.kt +++ b/app/src/main/java/com/texthip/thip/ui/common/buttons/ActionMediumButton.kt @@ -10,6 +10,7 @@ import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.width import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.Icon @@ -31,6 +32,8 @@ import com.texthip.thip.ui.theme.ThipTheme.typography fun ActionMediumButton( text: String, icon: Painter? = null, + iconSize: Int = 24, + iconTint: Color = Color.Unspecified, contentColor: Color, backgroundColor: Color, hasRightIcon: Boolean = false, @@ -55,6 +58,7 @@ fun ActionMediumButton( painter = icon, contentDescription = null, tint = contentColor, + modifier = Modifier.size(iconSize.dp) ) } From ea2cbf761a3b9aa2402a3f1518c2203f47b786cb Mon Sep 17 00:00:00 2001 From: JJUYAAA Date: Mon, 7 Jul 2025 15:08:55 +0900 Subject: [PATCH 08/17] =?UTF-8?q?[ui]:=20=EC=BB=AC=EB=9F=AC,=20string=20?= =?UTF-8?q?=EC=B6=94=EC=B6=9C(#37)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/gradle.xml | 2 +- .../main/java/com/texthip/thip/ui/theme/Color.kt | 3 +++ app/src/main/res/values/strings.xml | 14 ++++++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 639c779c..2504dc64 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -6,7 +6,7 @@