From c745283027520878c15d50666a4768ad105739a9 Mon Sep 17 00:00:00 2001 From: Heon Date: Thu, 15 Aug 2024 23:05:47 +0900 Subject: [PATCH 1/5] =?UTF-8?q?feat:=20=EB=A7=88=EC=9D=B4=EB=AA=BD=20?= =?UTF-8?q?=ED=94=BC=EB=93=9C=EB=B0=B1=20ui=20=EA=B0=9C=EB=B0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/AndroidManifest.xml | 13 +-- .../main/res/drawable/img_kakao_feedback.png | Bin 0 -> 50502 bytes .../feature/mymong/main/MyMongScreen.kt | 13 ++- .../feature/mymong/main/MyMongSideEffect.kt | 1 + .../feature/mymong/main/MyMongViewModel.kt | 2 + .../mymong/main/view/MyMongFeedbackView.kt | 79 ++++++++++++++++++ .../mymong/main/view/MyMongSettingView.kt | 6 -- 7 files changed, 101 insertions(+), 13 deletions(-) create mode 100644 core/design-system/src/main/res/drawable/img_kakao_feedback.png create mode 100644 feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index ffe80bf0..f72dfcdb 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -24,15 +24,15 @@ tools:targetApi="31"> + android:value="@string/native_app_key" /> + android:windowSoftInputMode="adjustResize"> @@ -40,14 +40,17 @@ - + - diff --git a/core/design-system/src/main/res/drawable/img_kakao_feedback.png b/core/design-system/src/main/res/drawable/img_kakao_feedback.png new file mode 100644 index 0000000000000000000000000000000000000000..405006c8ebd832a56be42d2d5491ba0a9e18edb0 GIT binary patch literal 50502 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%0As7D!>noZ}XEFi% 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 eCi)e$CoCBX9e2;^=tu { navigateToLogin() } + + is MyMongSideEffect.FollowKakaoChannel -> { + } } } @@ -94,7 +99,11 @@ fun MyMongScreen( grade = state.grade, getInfo = viewModel::getInfo ) - Spacer(modifier = Modifier.height(24.dp)) + Spacer(modifier = Modifier.height(16.dp)) + MyMongFeedbackView( + onClick = viewModel::onClickKakaoChannel + ) + Spacer(modifier = Modifier.height(16.dp)) MyMongSettingView( navigateToTermsOfUse = viewModel::navigateToTermsOfUse, navigateToPrivacyPolicy = viewModel::navigateToPriPolicyButton, @@ -102,4 +111,4 @@ fun MyMongScreen( showLogoutDialog = { viewModel.changeLogoutDialogVisibility(true) } ) } -} +} \ No newline at end of file diff --git a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongSideEffect.kt b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongSideEffect.kt index 3546c0ba..6b53802e 100644 --- a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongSideEffect.kt +++ b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongSideEffect.kt @@ -7,4 +7,5 @@ sealed interface MyMongSideEffect : SideEffect { data object NavigateToPrivacyPolicy : MyMongSideEffect data object NavigateToTermsOfUse : MyMongSideEffect data object NavigateToLogin : MyMongSideEffect + data object FollowKakaoChannel : MyMongSideEffect } \ No newline at end of file diff --git a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongViewModel.kt b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongViewModel.kt index 83f225cb..a93db28e 100644 --- a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongViewModel.kt +++ b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongViewModel.kt @@ -94,6 +94,8 @@ class MyMongViewModel @Inject constructor( } } + fun onClickKakaoChannel() = eventEmit(MyMongSideEffect.FollowKakaoChannel) + private suspend fun clearLocalData() { saveAgencyIdUseCase(0) saveUserIdUseCase(0) diff --git a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt new file mode 100644 index 00000000..8954fffa --- /dev/null +++ b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt @@ -0,0 +1,79 @@ +package com.moneymong.moneymong.feature.mymong.main.view + +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +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.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.shape.RoundedCornerShape +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.painterResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import com.moneymong.moneymong.design_system.component.button.MDSButton +import com.moneymong.moneymong.design_system.component.button.MDSButtonSize +import com.moneymong.moneymong.design_system.component.button.MDSButtonType +import com.moneymong.moneymong.design_system.theme.Body4 +import com.moneymong.moneymong.design_system.theme.Gray08 +import com.moneymong.moneymong.design_system.R +import com.moneymong.moneymong.design_system.theme.White +import com.moneymong.moneymong.feature.mymong.main.util.myMongRoundRectShadow + +@Composable +fun MyMongFeedbackView( + modifier: Modifier = Modifier, + onClick: () -> Unit +) { + Box( + modifier = modifier + .myMongRoundRectShadow() + .background(color = White, shape = RoundedCornerShape(12.dp)) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 16.dp), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.SpaceBetween + ) { + Column { + Text( + text = "머니몽에게 자유롭게\n문의 해보세요!", + style = Body4, + color = Gray08 + ) + Spacer(modifier = Modifier.height(8.dp)) + MDSButton( + modifier = Modifier.padding(end = 10.dp), + text = "머니몽 팀에게 카톡하기", + size = MDSButtonSize.SMALL, + type = MDSButtonType.SECONDARY, + contentHorizontalPadding = 12.dp, + onClick = onClick + ) + } + Image( + modifier = Modifier.size(134.dp), + painter = painterResource(id = R.drawable.img_kakao_feedback), + contentDescription = null + ) + } + } +} + +@Preview(showBackground = true) +@Composable +fun MyMongFeedbackPreview() { + MyMongFeedbackView { + + } +} \ No newline at end of file diff --git a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongSettingView.kt b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongSettingView.kt index 4142be59..6e2f6865 100644 --- a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongSettingView.kt +++ b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongSettingView.kt @@ -51,12 +51,6 @@ internal fun MyMongSettingView( }.versionName Column(modifier = modifier.fillMaxWidth()) { - Text( - text = "내 설정", - color = Gray10, - style = Body4 - ) - Spacer(modifier = Modifier.height(8.dp)) Column( modifier = Modifier .fillMaxWidth() From 7707ea6743cef867915fe41502cd1cacfd004fc3 Mon Sep 17 00:00:00 2001 From: Heon Date: Thu, 15 Aug 2024 23:06:17 +0900 Subject: [PATCH 2/5] =?UTF-8?q?feat:=20=EC=86=8C=EC=86=8D=20=EC=B0=BE?= =?UTF-8?q?=EA=B8=B0=20=ED=94=BC=EB=93=9C=EB=B0=B1=20ui=20=EA=B0=9C?= =?UTF-8?q?=EB=B0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/res/drawable/img_agency_feedback.png | Bin 0 -> 13014 bytes .../agency/search/AgencySearchScreen.kt | 62 ++++++++----- .../agency/search/item/AgencyFeedbackItem.kt | 87 ++++++++++++++++++ 3 files changed, 128 insertions(+), 21 deletions(-) create mode 100644 core/design-system/src/main/res/drawable/img_agency_feedback.png create mode 100644 feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/item/AgencyFeedbackItem.kt diff --git a/core/design-system/src/main/res/drawable/img_agency_feedback.png b/core/design-system/src/main/res/drawable/img_agency_feedback.png new file mode 100644 index 0000000000000000000000000000000000000000..e1795fe01d2d8143f2bbf043c6f14608c4357a06 GIT binary patch literal 13014 zcmb80V{;|U^RQ!klZ|cL_K9uVII->I#P-I<#!fa)HnyE?Z0mpjzQOan=;`UHdC^tf z(=#kLH2TO=ll9Q*C4HAygHd9zrM>wG0(N?Y_anC zc2HxwggcZoaJ$##w>hxPH(Eoh6Tnzt{-zo)gnTw%J? zWx0iph3vmwgBViFf|E3B|2pJIbI~B=x`{S&a&pMEC*IdC*@ei5WRTt=ed952a~*i! zFIm}_Q^w6H0t>dvHlMRDTf7T;F5oC<*#o(P>x{#ia*Y@R{IV4KM%Xa8UhlMu;W8Z3C|AT{aF~f)dxwshetlN%%J|`}9<=VjPgyh}TOe6Vt~eHtf-DRT5#7EKpb-Z4s%u zh$_)++AdG=`swMy=I_3?0Bqx3umca%&yDi?HoL8%nuZd4)7Gjrfu`=GWEo5hYxK-1 znyGK#A(a)xQL<_4qZ^-t;cP`FiA+<^TrzE$cl0MKqr{)q^mKn+!|MPkH8s_Prhz;^ z(9yc|L}TC2*x9Ij>N|jVUl0I^A)G^=>_b_GIgv);3-Okmo9pW7Ch4)K$cELZ>p z;!#{XvEk!N>c39o7;U9Vk`SXJ{aIpAn3ru8OZJ}Din!B)jqQodc=fIkt@p0VWYh-Pe&}g;A_@_XaU?5ccFf*0aHz}Zy zS?^L?UPcsnu+S$YU5o71G^B0KFC0>s_rY^lyhmCE2qIodW9zO>Dv?uC`aAe!{#(+F zQ0@YI|Dkz^f!9n(=GKtxS6D9N1NhWa?jb->9JHrT`R^azcWfuX7Rz~HAz@KkeeU4c z*CF4+^Q^qQ=YrGLp??N9%8F9dED`1mVx_l(m-m1#1P27_P^C=zcdJUPDj9QyoA!GW z%qo6y*7wrsa=vn;SuseT9hJO9)rOJc2mDCX6ic&C%h5lwFaDemF(5+F_p}_V0n+1BwUGWvGaNdeV*BB z@jk!y8VT_QQY$AOzG&u_ITXJ4?yD3Fqgg%xnE+7+LkV{u$1qpO@EkM>(+%X@4VGX$ zdOpin=Yt@d>s8Vj8nI0=;yD-rZ% znu<}!P=F@aMLI3TnX5hy@7X)u(YNaz!&bi<58|nR9k*fj6~iKuz@zrL*hwRZLR3#1 za&e~aYQ%mG4$3F0NDlixR+dqg)D~j|KRAGlI+}fx=$zp%7OjM|?5Vko8adAU!T;|Q zrI|L|KeB-^YVU>6Q0F3wiMjqR&>q0_N&sjbu~wh-ZqLuQ`vKipM3sk~_cSTJ2*JEx z1x}RF$d>)r#$HqBk)M$EbswSqw&^%DBnH8Yaw0L}PBUP0#C?2^b{rMzb8aE|!SAXh z&P|yCsC!UblAOsC0rjKUuV({^AJ3APT|AddJQ+s(=ekq=B*tMD3l!wq#DNChH9T93 z=G6+&OwI%z3*H9S6#8TZaDvnR`re!-l#k!28H+?$XUp_gHoH#?I^rNe4r~hb#Uumy z#l|oaGr6C55p&aw#jcH-NJBP&z$}!aW)CS1Vkrz3oysAg^EMV!9knDfS56A#b&2f2 zm&Chbr*%0XW7@KPV__OOv6$dRqR?2ic!!s^y_e!>UBRHbY&kvdr&&Xd$0|jhM6(og zU&G0zwB9G4$->%nc*63M^Y5H<4bF3ZW{iP~s<{fIVixUMk5^T?Xt1bkbp!|*tf2iY zh`Y*TiUxb-g_b}X{X;m{l~9yqkQj?SkP6QO4fhO*cKryfN!7@xULT?*XX*Z|s@v+X z5AYT&&t9QyqU&q=*}i-Cqp!29q~ssly@AJRO~BpD%TUJmXspmvp16h7aOs|#cFRwz z78oZ~ihXVLE=&0mk#K0%>JksiJ2Ci&TqTQkaCY>$c58W}87h)c8VA0u{a_C5=ZqMc z1=9?YsjPj~(Q8U4gc97g5oUD|+nKGrh6Gy{Ix2?6pG49W+=EC`Sv@L;0)~` zHAL(ME0wK^=~9k;pPf^c!v0qy+}~3=feeg{y|{-19bV|y;pZzEfd`R&-@+@2K=ZGJ z!G>0p9A3^QpUmkr_yo=$-STCE83GWM!n*c~7rf-bn}3@SCa_%ewZ^qX6=cxRh|+UT zEfcDS6CRR>M4@?QvQE|oB*J0xK!(K$LShV_FqR~DwNOs0afa_csF0HLq+S*lH z_B^$1zfDhN=-jB;?c>SXMIVsc9j@H6NNoPxnZICwv z$A;8&;!;8tS&G^tCL`itIi;Xl+HRWI4czR3Mb(s~)3c+cBj5}cz!^HSIRGCnEZbG# ztYF9N+9yGg$3ug40^bkfAOU!Kw$ah)mWR_Y{ayoJ_p5#1JxwT_JH<(m@h?HJ@cDeq zH_i0E8P;H9Yn^eChZ{3obJW18RM3^*Dvl6UPjj;Y+%Wa#`(2ADw)S@-cclh(jji}G(tSOc(zOXOw-{b8|OCOZ??s-O{0e3H>P>;Fr`+n%2`g=ag*fE8YTi9)jzZg5WvJ&)Sm2ST!^PsODQ#=r;W^aVBqB z$-*+UjRDmQe2F+wBAj7!9DFT;p)7za18fAV4B_x$a5MUy$b68%QkAa5hUV!UJZ#3_L&09EMjMNO4yUE-XhuebqGX zG$mN%iu*2?C*G(5>q4D(V^tgFNiK~TOorS7BYCVORXjHXfSb4|irF44qh@8wo%Lob zo@-mca~U&Eer9898&pTDuBPP~nQ=-~F5PzZK;(D9ej*HfkrS@0TEA&2MT2G83H&Ec z{B}n&O^U}@HY4B`6$;{or7}k3wIETHVKB>?j)zx`X=z99^8XQ0OZVF7ZW=jcxQg!+!t6%T(+~k!X${{zXqA1?4 zj}jy0=$-b%%AegMQTLSt+7=W*J?uKu>OCW9u(5)hoMIMTU)A$ccqDce(|$T>m= z?8kVTdv`eC!Q25$k%HyvMyO}pJpQN&>LG{`oXDc=Ii=4GM+*!R%B4)faKc3Ulr0wWpi*T7iZW<^NJ2z4kvl`rh9WP%*0rwi8%GBu2`|3i6284m;(5$y}W1g18=jJ zAbxe#)oK|&omkd>K}ELE8$96EAIB0pt_4fT-6se3`X5x$!hgY&^d|WLc;r+ymXFe! zAuFrk$x%hoF@m`(&G4LYP)$Jq12hfcLnzm5y0g^w2hJ%*E_9IQ6pDir`n zB84>6)T%qXk~%Aj;XHb|JsLh(jwY2MFf_OZY?G^#cXB8zWvlO7!WFF{(Y>jbX52Lm zJFwt)Rj5eVXSe7hYN4%{W^__3+X&)lI+_{hU9&F!4mNIVK|qZ*vu zxxaf}AtGl8d6x*>WI2=RjZxR=xwVlm!D;NT5hnr=B*H#{5~Uv-4^PiE&aC=6Za;(x zI?j6y%CBF5q~nnC^5&=}YfJ9hKcC zDa!eagA}QcRZy)_=eN;9O|>%=+*4bb@bg)?DY0yU>hA89D;AO{CCK&!iO2uuh$M$p z4!-ohF6NYas%EQfnFManTd5nN27G-Zm)K|eGd)m5;{S#bCvJ0GZF4zL5V2RKj23VkaDE3b`b}d~Dn5C6Umot|z_jxNI z;%tE$Ssao6e+bk^U|5n4GGDi(sV4-WHg{v%a^il9%$L*Pf+MYx0d<>26L>|PQ{iozDaXpy2ERZK-t_FTLG`NA8!EuR`Kq5HCqmnG`LuY$1*H-J%y8 zGE8~1#$B)gnd&+D`faC}biC=!{{M|82S+RMH zRr2#cx9eE^v(C%)*pC%7^m9jfQ%L>insTd#Fv`Am;-XDtu>Mgnhhs=nXQwWy91|~{ z{Q*z>+=lRrk<|W&hA0IJOWJtVoLNehtyzaIQbfc^op9S;sL`;G&Rn{^(;Q1uX|r2$ zfY(sS#NU=e+hHDGQ%BXb0r8sB#A(aJ$MwnZ)1r+1pG!EcMHrRFyW)2A zxZ^Y@5(2Q4ST_y3@olspO-$Z|TCcah>tsx3o{FA?_gqRD5^Q>fWmMMhpn`7ag&&s% zJ$v0+1)t8p#vm(QOPtgl)|JbC#t!tFrAjb9P52YTaz`57TBme}X>yg=gjJjIxAH_# zz}k;57&M5`@&wDP^OpMkaNMr9Wfm%Z-%t&dM@1@QN1f1HW7S|uj#Sq%KN)&mW;sUG za_VNNs6IQRV~gLDi3ZAN-CCEzz7K=}<$KTCJrAhsR~LP5=(&5(tNOO|R64GFTt&Gn zA&kA;#N3|~stEPCGl~6f|MVT~CRx43#lnrRDR^VL#=41BX?l;q>=WcC4Uze)KHWX@ z9E|8QSU8)A!XG9?(9rvEZ;0IouLQVB^eL|AC}UN6=i=7?Qbi<1IT2iw7nt?vr$(ii zJ~X$1!p3Ccjbaz_`+cXUBTDA0BOvGO`!YM#tbar0$^NCiW>kYl?jL;)?8@?m0)zb-HW+OpN3&TrC zoo${H8L9U7$UAp;NVQJu9HMeD&}%dt7lnm6(()(RskI#@g1i(V5@)ZwM=?dK`Qx>x zt^hXgx9D-1$2`5>$0J|WO7pN@22h9WjkB>h3DWD9)yGR7a_iTsCdBU~f+5#U3F`C! z@9=@q9OfOr(YTTSi@d_D|VS(T@e1xEgl;UvmBb7l4_ z<~nbX&>5p=J#;}#ThDy#Ijtxl$odqdsV%EeJw6`@OcVrT)B;~nf=hkUvbad(X zINDu_JeN>b&{+&^YNrS&8r!mQS6xb!Lb;d8o!^u+M@a7{Vc_Q%ud&h}O&GjT+~i1z z&>#N1BW!89>Vr*Hr8OK0ZY(e^mZ6b264S_VF^^q?Uf&qrBwSRSr?l}KM{07P2a z&q@RS^y^|+7%4|Dok5M|a4UEU$L^tEV}Mrkiq&{j#DmPDs;EvgE6x=Xv;28_&CPJf z_{!gYF{8J3!p7!fL%!EyvQ^{wH)>|whtShOJXib7H$vGTv~>yf1;UCE$hVgG;cRyneVmTE z=KUg%I;Hd^wA5@C!xhrRxx}dA333kYdU8Emh){sXpR2Whq;)Br*^XfZ4-UsH%k&fxO``S2 zG?)vdE2q`MpDZ&K7OdlRDZXMc&JCO3&p~nuV-|X0b~>z3^>X_~>OYz+J ziZpaIe1+VTOwZkZs~tm~ju%okIq;IHxnS12W+;BpIvw|!T?bHiDYBYuo0V`&w+t3` zlp`b>lJde`G(64oYE0G+hb%GJ?JCiyP^k0 zue9GeVnfja_L#W4j(^{iL_svmB3Z!U(zd8>H8izu+VQT_9^;|1yw^BNEnvYG4K}C| z$rm<1okX{#m*jBV^7j`D5rE`iWPz_vTxPu837|GZYJvC5x|MP2!5z&Q6vZ!Dd9qv?hmvsxJ!;B})d0Ag`C+;TQ zPs<`9t7g9avxzf{7>CX{m|PUCo$fdR74am|;?@OQGM8#l?pSLJ@-lJ5uqMqB4j~hf zQ;g;DLf{CfiAwGLK``oZ=-RxUG4F2U;637twU#8o&YF3Dunv%I% z8}|=TrDf-q7gDGA5fkgLoY*LqQ^BXXTl#qC-$cGs=4N_Od03)r8B&8Oz4q z=%1zT(V`;6uI2SasFFJ`$%$aSoyRm1 z)LCwxP4Gu(NW9fvLD|V|!^CniIjUZHhb5dJFn6;evb2)wqEtk@Ed4TNOtP7nVh}0` zMb6YQWO6XT?2NmQF%|_D^T7d8^f`|h) z8rNJ*ewFDGbQH=8Q%uMZ1L00I@kxW=qmZL1P_oWs8ZqM~YgA0;H=e!N7-A z$)-eeZ_rs&IIx0wZ9CZg4Km_z{ez{PlHBDu;cr2tS2WMQ>Q{7wKk8zv>hogypv}#2{?ztfsf^9>U zn}z_9Y*vMT*J%Adc3W!d{%VW(>tAEiEqz(}Bl8l1h(K+}7-au}F7h3izyBbi_Mi9l z-=Jznm1yly*6_vk;r1J3fl(Mo5&K80ccAXa#MDK)bJVeNZ2xZ~1xfBQCL}?CnK|r=ymCpAvq*#+-B9zYRbjU0Dz^&H?SQ%L3beMA z9bImge8FM%V;KnMvaO`A`Io5PdcuWx8aIQU@juv}=iGfA9X-8YXU|wzJ&*Mf5%E1v zE-r7QwpqJBgQmids;mqdX65%5zFz`itE)mB5`~=i&_#way|Ro#g9hm4nfXXvtB<)? z%C#eS6wgrN^ad>rQ`LVkN5S0UB$&G3I_)%J6iWc`Zm#iH4-6iLbK{41BbzHd@)oB zTLS^=)~#)x3jwM|?Gdy@uvBMqc)(i$((UAu_}CBt$>|Lki%qk`%;dXH7>orpTM$bc zpi$7gf&Zs`JJkZwufx(d-%L|tntbU!f#jHa-|;5ZVbPCbVRP>U`@aX8uo*XVMFP6fD?0A`iB`Gm4NvFtmZLtoIqro>niA z0=u>5oxzUyojIXidr7}yIvN6egV4+59&e!!rudz8KEa+Tuh5JFLE1oLD_>?sA!F`h zRx*RU&C(c(M~BI+e)iUCdo6I_E}0+?ESM6^D3ZCkEDSq-K;_taS(jHBabqGD#)*;=o<(QU5 z&`^{r?FP$2*gpCKPp1u8Ebc2>9!#_sSYBgfjTTiw@EHuI&Kx#71zmgt-}xm`rxGLB zD5&w%p6N?=K)+se6Gz!ddA&#R2Xq(@%VDKFA*lxH%V{hWvybi*Z@8a`vSky2rLw61 zV#irAB$Q#6JSRNB4%?W*y-b*xW_`6|L3W;GknhOzNQ9jBs;YB}U`}q-VO5*p^t|BV zDsX@KDZHu?gjH(mdeo`GSur{?;>7#hoZzR63z3Fu{`;TU1qL8~a7xnEj7G7LtaB&X zehvY&LhBHg(=>kRP1^KWTPsq8n8g4scN#WbyJ!w0s_De!y;_JeGNxt*h8T6qMqj1U zIjh_!gN<*4$@@1+8#A-1d_KpONUtsR?6xtwz7iUOTmdyJ6TO=UP*Umb+9& z)$#RRu_K+SEI%fKJdK0nkRjf*hrg0qjykRVFm_1czk%qJHs=*+OoMZq?N_f91llP} zNh+Eup%s@i{Zz<88xwyQdXl4>>o zPIn-|?)Whftv8d$zd3HqYek+MWrhR%pcLC>ST5joTqebMhc#j&#;KP*;Pq zL<9bLoI!;1_dlYbDF+pjB>grLC0{`Zk%bT~P4s$@k~9`I<$cR#Lldu9qig^>na9N> zLia2fvIgIh=Q<>00K*+Hy#Jus(`?p#r08<2NHB^#61t*xTD^}8{RuR)aqL7RWRCA| z*v4Z9xn)(yaO34 zW5~o+Ea{U}u)F20+E}dz^FewSPVh7vr4&y$gjvDJJX9A5-O35>@CqG&<}J<^Z1`@! zu1DZI`j|Yd#|FL?j~coh-t=>>#cfxo!`*Ka{zln=^)CcTOprNeiW8AcPbn0oia2mg zZms8ihrkbcUmeMo%zIa2g>Y8n{Sp$u3Hq{zZ@hP0-e`z^vWZ3pu4rZ_McR`AFVRJc z&F%QDE>xa?t2j$yMZx*<9$oN?VtJqcuB0Q&sHid&AV_VxuGx056~-H{!cc1w+w`1PaFND#}XPIL`a@u9c5+u?kxnZ3Ezgc zScNB?hmX(o_xGz>2Iu$nH8F$<9e3S*L`0^@>P!p2z7UPdZB71-xx{H`g8y;a zh8US@Z|KxU#<#HE=p$$n>v!vpW}%ye7_iwm_fa9Ig~ zI{=14=uo6Q@&x&%g=}u^+K$&lnt>Qw&=IT z&{VJaOg*$NN=*#Zgmi$MK!1-O3njWI*8%He^B_t(|LUJ&U2rce4lT{?ZsRWk+?X!! zEx&tuV3HW%x$Qzy&zj0QQLglp==m9E2|I=busx>T*wWyXn@xS)GUbD%g)BSO= z`soo~JH|uGr8{$+nJ|^{-C0h42f@Gkycc4Lb))du;n(!O-sv4*(K#qwsM(~>pN`#b;dP{`tf z?CTCfV%)y3`Fp2c=qfl{IMoPW4%Y%A9jP|ysV8zBi9Z|pXA@*`ENq!m2;L$%0<$w{ zs1oV#Z|hBC@`)M4hbH4{_8OY@kf;kPn+}jrMQfg^E@MC3c!R5~;1?zG8NJ9AI1qz5 z#Yy^cccoaL*B;!zZmfHqX?+w2i?KFf+gA_w@iAJs-So(t|FjQWTm|mN=o!Nz=l}CV zJHRF63phHT>HMOHgIrXEjKr_)4%RV zzw@tY;pe_RP@wOirzi|sSziV{v4t`*C$~t7oL;%OyNu?<;*wy(7z8b3g0d;EENfCJ zW?BgaK)m%oHc8@s1Lkd>O1rD1V~j-X=aj^!uXIGMfQ3J;p!s%qH>_u=(yR%8=;`C0 zR1%RVdL^G+Ur8g-R8asM5+!Y!eYMRaz;Pei>@X{Md0G>96NKq=p%wTNGi_P$_uIaG zHV{DExtj+n_%=uqhXbS(6^W7?bXL-98xYFj1Qd?>3(%{=cp$4&MV%#VsETf*&>x%+ zCvz2VnzvD&LeOm-r9~ZDV&p~S@#A}}^4Eg`1zbnDxpz3d2JGtiS0rNV$1Inak%0l` zCG+L~g}5=p$aQ#ypQ4Ho4I=t4o_M}{fF;4`SaEOuxtm`OmC-!rJ!CT4ycAwYik)MW z*wjGn8?<*}ow>|GJ_fC-o=T_5eD;YTaxeLg_S6-pdiY4T^Faah1=k_;9~VfFO`ic# zH3t*mp4veMI_2(|!W2A5src8xPr%)vCW56G3YaMg{*@e-D}#@=oKSo`tNFk?aJODT z6k?u2{Fr^xnv5qO2j|9BCnk1}l`)t?^3#`;RE+~V1r5^iHI}0`k@S$P8<=N*8qr4J z=qt1wh95`3gg+lO&6>a^i@w6Cs7EfO+$|UcND`n6T!(GyxBbZm(P&7{5kP2JF~AO zohXC`)stQRXW~XdbLviYDSj^ilIRQkl;doMTd6?-vCt)vZZA0A;S8xsZ0_1kUZFy$ zN}&vLKoP%mgv4k=TqU#jv7Vi=@$EGD(zX`Qv?9ip$A?8=wc*^hA zxS=YM{Sm1wm!KTtS?_*AZVA?pJ+bqjwC6`2K~H+8g$wx4di$8+{N@w)8)xmw<;wGs zGlvv^7@iVav3hZS;{!uMuUEB5*U+mpoK?ukgt<~D5O-lnm8%~6FNhgS3(?gs=t2}jE2StfP=(!vi)?Ci&8fsnZ zS+{8D&oYb$*TIF2SSgVd>Mdc7C_UW2@l;^qZi7wj4oG%)57dS{>CtcW4Au6P@OTeUzhGW=yzat+aS+93Vm0K za(r*B1H5xp*f?4)knkb2CodjjQn0L{ZnKIh1BrGF-MjYG9;pOa(ec1&S4vysXmgGL zp*UHWpi}|wkiGT4}3T| zJ2qPuJGahk0zltS{>AsS)R)Y$N8Z>BYT##Ej?iMlA_-+mcRbFI3#^s%Ny0#;h0Ia= zN0GV>#)015u67kOL2_TF?J_$W>J(nrJSIKw5i#IA#@L^nEr+8#4DtylR)GzCR@_z1 zB*Wzfoe!aS3A$;1=nadvlEP110|ZQ3mcPndP}> z^I4JVb#+Z>ls5y-j(|6LR7k4{eL@!Q=4Ql!?#AjS2l=xfy^#9sWz+@y9CH~_#A^!(ep%OR% literal 0 HcmV?d00001 diff --git a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt index 8796ae61..a733b24d 100644 --- a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt +++ b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt @@ -42,6 +42,7 @@ import com.moneymong.moneymong.design_system.theme.Gray08 import com.moneymong.moneymong.design_system.theme.MMHorizontalSpacing import com.moneymong.moneymong.design_system.theme.Red03 import com.moneymong.moneymong.feature.agency.search.component.AgencySearchTopBar +import com.moneymong.moneymong.feature.agency.search.item.AgencyFeedbackItem import com.moneymong.moneymong.feature.agency.search.item.AgencyItem import org.orbitmvi.orbit.compose.collectAsState import org.orbitmvi.orbit.compose.collectSideEffect @@ -159,13 +160,15 @@ private fun AgencySearchContentView( if (pagingItems.itemCount == 0) { ContentViewWithoutAgencies( modifier = modifier, - pagingItems = pagingItems + pagingItems = pagingItems, + onClickFeedbackItem = {} ) } else { ContentViewWithAgencies( modifier = modifier, pagingItems = pagingItems, - onClickItem = onClickItem + onClickItem = onClickItem, + onClickFeedbackItem = {} ) } } @@ -176,13 +179,19 @@ private fun AgencySearchContentView( private fun ContentViewWithAgencies( modifier: Modifier = Modifier, pagingItems: LazyPagingItems, - onClickItem: (agencyId: Long) -> Unit + onClickItem: (agencyId: Long) -> Unit, + onClickFeedbackItem: () -> Unit ) { LazyColumn( modifier = modifier, verticalArrangement = Arrangement.spacedBy(12.dp), contentPadding = PaddingValues(vertical = 4.dp) ) { + item { + AgencyFeedbackItem( + onClick = onClickFeedbackItem + ) + } items( count = pagingItems.itemCount, key = pagingItems.itemKey { it.id } ) { @@ -221,6 +230,7 @@ private fun ContentViewWithAgencies( private fun ContentViewWithoutAgencies( modifier: Modifier = Modifier, pagingItems: LazyPagingItems, + onClickFeedbackItem: () -> Unit ) { when (pagingItems.loadState.refresh) { @@ -238,25 +248,35 @@ private fun ContentViewWithoutAgencies( } is LoadState.NotLoading -> { - Column( - modifier = modifier, - verticalArrangement = Arrangement.spacedBy( - space = 8.dp, - alignment = Alignment.CenterVertically - ), - horizontalAlignment = Alignment.CenterHorizontally - ) { - Image( - modifier = Modifier.size(size = 80.dp), - painter = painterResource(id = R.drawable.img_agency), - contentDescription = "agency image", - ) - Text( - text = "아직 등록된 소속이 없어요\n하단 버튼을 통해 등록해보세요", - textAlign = TextAlign.Center, - color = Gray08, - style = Body4 + Box(modifier = Modifier.fillMaxSize()) { + AgencyFeedbackItem( + modifier = Modifier + .align(Alignment.TopCenter) + .padding(top = 10.dp), + onClick = onClickFeedbackItem ) + Column( + modifier = modifier + .fillMaxSize() + .align(Alignment.Center), + verticalArrangement = Arrangement.spacedBy( + space = 8.dp, + alignment = Alignment.CenterVertically + ), + horizontalAlignment = Alignment.CenterHorizontally + ) { + Image( + modifier = Modifier.size(size = 80.dp), + painter = painterResource(id = R.drawable.img_agency), + contentDescription = "agency image", + ) + Text( + text = "아직 등록된 소속이 없어요\n하단 버튼을 통해 등록해보세요", + textAlign = TextAlign.Center, + color = Gray08, + style = Body4 + ) + } } } } diff --git a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/item/AgencyFeedbackItem.kt b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/item/AgencyFeedbackItem.kt new file mode 100644 index 00000000..ddcd7e40 --- /dev/null +++ b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/item/AgencyFeedbackItem.kt @@ -0,0 +1,87 @@ +package com.moneymong.moneymong.feature.agency.search.item + +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +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.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.RoundedCornerShape +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.Brush +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import com.moneymong.moneymong.design_system.theme.Body4 +import com.moneymong.moneymong.design_system.theme.White +import com.moneymong.moneymong.design_system.R +import com.moneymong.moneymong.design_system.theme.Blue04 +import com.moneymong.moneymong.design_system.theme.Body2 +import com.moneymong.moneymong.design_system.theme.SkyBlue01 + +@Composable +fun AgencyFeedbackItem( + modifier: Modifier = Modifier, + onClick: () -> Unit +) { + val colorStops = arrayOf( + 0.0f to Color(0xFF9181F6), + 0.31f to Color(0xFF5562FF), + 0.67f to Color(0xFFC7C2FF), + 1f to Color(0xFFC4EAFF) + ) + + Row( + modifier = modifier + .fillMaxWidth() + .clip(RoundedCornerShape(16.dp)) + .background(Brush.horizontalGradient(colorStops = colorStops)) + .clickable { onClick() } + .padding(horizontal = 18.dp, vertical = 16.dp), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.Center + ) { + Text( + text = "머니몽에게 의견 제안하기", + style = Body4, + color = White + ) + Spacer(modifier = Modifier.width(2.dp)) + Image( + modifier = Modifier.size(36.dp), + painter = painterResource(id = R.drawable.img_agency_feedback), + contentDescription = null + ) + Spacer(modifier = Modifier.width(2.dp)) + Box( + modifier = Modifier + .clip(RoundedCornerShape(100.dp)) + .background(SkyBlue01) + ) { + Text( + modifier = Modifier.padding(horizontal = 8.dp, vertical = 6.dp), + text = "스벅 기프티콘", + style = Body2, + color = Blue04 + ) + } + } +} + +@Preview(showBackground = true) +@Composable +fun AgencyFeedbackItemPreview() { + AgencyFeedbackItem { + } +} \ No newline at end of file From 0889066bbae1837ee1ad2e9123f40395ca080e5c Mon Sep 17 00:00:00 2001 From: Heon Date: Fri, 16 Aug 2024 11:35:06 +0900 Subject: [PATCH 3/5] =?UTF-8?q?feat:=20=EC=86=8C=EC=86=8D=20=EC=B0=BE?= =?UTF-8?q?=EA=B8=B0=20empty=20screen=20padding=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feature/agency/search/AgencySearchScreen.kt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt index a733b24d..17578a28 100644 --- a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt +++ b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt @@ -36,9 +36,9 @@ import com.moneymong.moneymong.design_system.component.tooltip.MDSToolTipPositio import com.moneymong.moneymong.design_system.error.ErrorDialog import com.moneymong.moneymong.design_system.error.ErrorItem import com.moneymong.moneymong.design_system.error.ErrorScreen -import com.moneymong.moneymong.design_system.theme.Body4 +import com.moneymong.moneymong.design_system.theme.Body3 import com.moneymong.moneymong.design_system.theme.Gray01 -import com.moneymong.moneymong.design_system.theme.Gray08 +import com.moneymong.moneymong.design_system.theme.Gray07 import com.moneymong.moneymong.design_system.theme.MMHorizontalSpacing import com.moneymong.moneymong.design_system.theme.Red03 import com.moneymong.moneymong.feature.agency.search.component.AgencySearchTopBar @@ -157,7 +157,7 @@ private fun AgencySearchContentView( }, ) } else { - if (pagingItems.itemCount == 0) { + if (pagingItems.itemCount != 0) { ContentViewWithoutAgencies( modifier = modifier, pagingItems = pagingItems, @@ -260,7 +260,7 @@ private fun ContentViewWithoutAgencies( .fillMaxSize() .align(Alignment.Center), verticalArrangement = Arrangement.spacedBy( - space = 8.dp, + space = 4.dp, alignment = Alignment.CenterVertically ), horizontalAlignment = Alignment.CenterHorizontally @@ -273,8 +273,8 @@ private fun ContentViewWithoutAgencies( Text( text = "아직 등록된 소속이 없어요\n하단 버튼을 통해 등록해보세요", textAlign = TextAlign.Center, - color = Gray08, - style = Body4 + color = Gray07, + style = Body3 ) } } From 9f9d5eec84e801d8cecf328b038e7608aed9230a Mon Sep 17 00:00:00 2001 From: Heon Date: Fri, 16 Aug 2024 12:07:10 +0900 Subject: [PATCH 4/5] =?UTF-8?q?feat:=20=EC=9D=98=EA=B2=AC=20=EC=A0=9C?= =?UTF-8?q?=EC=95=88=20=ED=81=B4=EB=A6=AD=20=EC=9D=B4=EB=B2=A4=ED=8A=B8=20?= =?UTF-8?q?=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feature/agency/search/AgencySearchScreen.kt | 17 ++++++++++++++--- .../agency/search/AgencySearchSideEffect.kt | 1 + .../agency/search/AgencySearchViewModel.kt | 2 ++ .../feature/mymong/main/MyMongScreen.kt | 5 +++++ .../mymong/main/view/MyMongFeedbackView.kt | 3 ++- 5 files changed, 24 insertions(+), 4 deletions(-) diff --git a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt index 17578a28..8e7b1d0b 100644 --- a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt +++ b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt @@ -1,5 +1,7 @@ package com.moneymong.moneymong.feature.agency.search +import android.content.Intent +import android.net.Uri import androidx.compose.foundation.Image import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement @@ -18,6 +20,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.painterResource import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp @@ -55,6 +58,7 @@ fun AgencySearchScreen( navigateAgencyJoin: (agencyId: Long) -> Unit ) { val state by viewModel.collectAsState() + val context = LocalContext.current val pagingItems = viewModel.agencies.collectAsLazyPagingItems() viewModel.collectSideEffect { @@ -66,6 +70,11 @@ fun AgencySearchScreen( is AgencySearchSideEffect.NavigateToAgencyJoin -> { navigateAgencyJoin(it.agencyId) } + + is AgencySearchSideEffect.FollowAsk -> { + val intent = Intent(Intent.ACTION_VIEW, Uri.parse("https://asked.kr/moneymong")) + context.startActivity(intent) + } } } @@ -100,6 +109,7 @@ fun AgencySearchScreen( viewModel.navigateToJoin(agencyId) } }, + onClickFeedbackItem = viewModel::onClickAskFeedback, isLoading = state.isLoading, isError = state.isError, errorMessage = state.errorMessage, @@ -133,6 +143,7 @@ private fun AgencySearchContentView( modifier: Modifier = Modifier, pagingItems: LazyPagingItems, onClickItem: (agencyId: Long) -> Unit, + onClickFeedbackItem: () -> Unit, isLoading: Boolean, isError: Boolean, errorMessage: String, @@ -157,18 +168,18 @@ private fun AgencySearchContentView( }, ) } else { - if (pagingItems.itemCount != 0) { + if (pagingItems.itemCount == 0) { ContentViewWithoutAgencies( modifier = modifier, pagingItems = pagingItems, - onClickFeedbackItem = {} + onClickFeedbackItem = onClickFeedbackItem ) } else { ContentViewWithAgencies( modifier = modifier, pagingItems = pagingItems, onClickItem = onClickItem, - onClickFeedbackItem = {} + onClickFeedbackItem = onClickFeedbackItem ) } } diff --git a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchSideEffect.kt b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchSideEffect.kt index 4934e6e8..84fd3c20 100644 --- a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchSideEffect.kt +++ b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchSideEffect.kt @@ -5,4 +5,5 @@ import com.moneymong.moneymong.common.base.SideEffect sealed interface AgencySearchSideEffect : SideEffect { data class NavigateToRegister(val isUniversityStudent: Boolean) : AgencySearchSideEffect data class NavigateToAgencyJoin(val agencyId: Long) : AgencySearchSideEffect + data object FollowAsk : AgencySearchSideEffect } \ No newline at end of file diff --git a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchViewModel.kt b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchViewModel.kt index c27bcd1e..0f7ff711 100644 --- a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchViewModel.kt +++ b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchViewModel.kt @@ -87,4 +87,6 @@ class AgencySearchViewModel @Inject constructor( state.copy(visibleWarningDialog = visible) } } + + fun onClickAskFeedback() = eventEmit(AgencySearchSideEffect.FollowAsk) } \ No newline at end of file diff --git a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongScreen.kt b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongScreen.kt index 648fc61b..74d1a373 100644 --- a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongScreen.kt +++ b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/MyMongScreen.kt @@ -1,5 +1,7 @@ package com.moneymong.moneymong.feature.mymong.main +import android.content.Intent +import android.net.Uri import androidx.compose.foundation.background import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer @@ -37,6 +39,7 @@ fun MyMongScreen( navigateToLogin: () -> Unit, ) { val state by viewModel.collectAsState() + val context = LocalContext.current viewModel.collectSideEffect { when (it) { @@ -57,6 +60,8 @@ fun MyMongScreen( } is MyMongSideEffect.FollowKakaoChannel -> { + val intent = Intent(Intent.ACTION_VIEW, Uri.parse("https://pf.kakao.com/_zDsyG")) + context.startActivity(intent) } } } diff --git a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt index 8954fffa..79611e96 100644 --- a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt +++ b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt @@ -17,6 +17,7 @@ import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.res.painterResource +import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.moneymong.moneymong.design_system.component.button.MDSButton @@ -48,7 +49,7 @@ fun MyMongFeedbackView( Column { Text( text = "머니몽에게 자유롭게\n문의 해보세요!", - style = Body4, + style = Body4.copy(fontWeight = FontWeight.Bold), color = Gray08 ) Spacer(modifier = Modifier.height(8.dp)) From 4782af1109c0c9322d1887e20454da80b028fe4a Mon Sep 17 00:00:00 2001 From: Heon Date: Fri, 23 Aug 2024 18:36:22 +0900 Subject: [PATCH 5/5] =?UTF-8?q?feat:=20=ED=9D=AC=EC=A7=81=EB=8B=98=20?= =?UTF-8?q?=EB=A6=AC=EB=B7=B0=20=EB=B0=98=EC=98=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../moneymong/feature/agency/search/AgencySearchScreen.kt | 4 +--- .../moneymong/feature/mymong/main/view/MyMongFeedbackView.kt | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt index 8e7b1d0b..8e3592d9 100644 --- a/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt +++ b/feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/search/AgencySearchScreen.kt @@ -267,9 +267,7 @@ private fun ContentViewWithoutAgencies( onClick = onClickFeedbackItem ) Column( - modifier = modifier - .fillMaxSize() - .align(Alignment.Center), + modifier = modifier.fillMaxSize(), verticalArrangement = Arrangement.spacedBy( space = 4.dp, alignment = Alignment.CenterVertically diff --git a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt index 79611e96..907f7e5c 100644 --- a/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt +++ b/feature/mymong/src/main/java/com/moneymong/moneymong/feature/mymong/main/view/MyMongFeedbackView.kt @@ -37,7 +37,7 @@ fun MyMongFeedbackView( Box( modifier = modifier .myMongRoundRectShadow() - .background(color = White, shape = RoundedCornerShape(12.dp)) + .background(color = White, shape = RoundedCornerShape(16.dp)) ) { Row( modifier = Modifier