From a7443768473ea3ac691230b7766e9113ef75f812 Mon Sep 17 00:00:00 2001 From: Yu Sung Date: Tue, 22 Jul 2025 03:34:22 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EB=A9=94=EC=9D=B8=20=EB=9D=BC=EC=9D=B4?= =?UTF-8?q?=EB=B8=8C=20-=20=EC=BB=A4=EB=AE=A4=EB=8B=88=ED=8B=B0=20?= =?UTF-8?q?=EC=8B=A0=EA=B7=9C=20UI=20=EC=82=AC=EC=9D=B4=EC=A6=88=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 --- .../ic_comment_78909c.imageset/Contents.json | 21 ++++++ .../ic_comment_78909c.png | Bin 0 -> 656 bytes .../ic_heart_78909c.imageset/Contents.json | 21 ++++++ .../ic_heart_78909c.png | Bin 0 -> 677 bytes .../CreatorCommunityItemView.swift | 65 ++++++++---------- .../Extensions/UserDefaultsExtension.swift | 1 - SodaLive/Sources/Live/LiveViewModel.swift | 6 -- .../Live/SectionCommunityPostView.swift | 33 ++++++--- 8 files changed, 93 insertions(+), 54 deletions(-) create mode 100644 SodaLive/Resources/Assets.xcassets/ic_comment_78909c.imageset/Contents.json create mode 100644 SodaLive/Resources/Assets.xcassets/ic_comment_78909c.imageset/ic_comment_78909c.png create mode 100644 SodaLive/Resources/Assets.xcassets/ic_heart_78909c.imageset/Contents.json create mode 100644 SodaLive/Resources/Assets.xcassets/ic_heart_78909c.imageset/ic_heart_78909c.png diff --git a/SodaLive/Resources/Assets.xcassets/ic_comment_78909c.imageset/Contents.json b/SodaLive/Resources/Assets.xcassets/ic_comment_78909c.imageset/Contents.json new file mode 100644 index 0000000..3d7c794 --- /dev/null +++ b/SodaLive/Resources/Assets.xcassets/ic_comment_78909c.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "ic_comment_78909c.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/SodaLive/Resources/Assets.xcassets/ic_comment_78909c.imageset/ic_comment_78909c.png b/SodaLive/Resources/Assets.xcassets/ic_comment_78909c.imageset/ic_comment_78909c.png new file mode 100644 index 0000000000000000000000000000000000000000..9f7484342ee871793cd3a39eed689742eaa5fad1 GIT binary patch literal 656 zcmV;B0&o3^P)P000>X1^@s6#OZ}&00009a7bBm000XU z000XU0RWnu7ytkO0drDELIAGL9O(c600d`2O+f$vv5yPy6*vH#6_OZ-D;=wC=>?;L@=XyB5evz{?nRH1Q9Y>#U`wjUQO6 ze!}qNw^uPGB*Ogl@X4oEBqza#9uZxN>FPfN>UAUwmSQ{7?iZ#<%<-dh|7o-~$?5dt z2+ZT$TV_7HMt4z6k4CwJ*aKOk+!2ZDpem{o$;;_%DCwD`-pl6a{$Pv-NYrDAdSuo} zM1!!F8wjoK@|Ps&ckBV)?LQ#SP8_OZ$h9j^F#UE`?xtSj@^=IjwPvm zwdD}c&;lBL<}D2?N$z3QGiF$KOPXNLLT{k+EV$S&kq|iRWc?HqZ{ z*a8en*C$AvT9R!c8F8|Wt@7=X!6&`Y^I+y#dNm1q`NqWfDeCY! quN^9|s((6<3A^CfZ>xd-E`9@eH{&Wmv4KMX0000P000>X1^@s6#OZ}&00009a7bBm000XU z000XU0RWnu7ytkO0drDELIAGL9O(c600d`2O+f$vv5yPH|+IMK47bj~RHNn&Tx<(si}y4~Av@4LMf(KTiOR~b6tcHN(I-Yc0?vyJ^y8d;J4_gFU(C1P%rbTBrybgI&_5ySw);aJ>wFINQ;?~ zgo_FF8y0;gi&-M;6r&-~MZ>Y!jb5j{(CxGrbx{Ms5*zcLA=p0@`*yicqC{~g>*0IP z1c-F;LSElQB0fGa1d#@AP!3Rn*g1fNAf4_eyAzMn{qL3?Am)xGUeatoLk=ndg0jeN zn*9xLI$z5>3Q1{&0B`(N$gxCcK!`_>C#LwMAgs(_lxDznx(t}^;Ne*I-vUXT9vYmQ zbUAqVJBr7D3M4)M`MxPz7ezpGU?Y6Df^Ao?me~s=v zc>GT#d#JD8{YOpu`R&V(vj|k?0Amq)`r3c-JMUB3h4t_QB{CXw&|Q1Bm9?7=0Et$T z35i=>e|4uURwYS+NPCq^(L&YWkS%sTsXTWf5lie>5u8h6h`dbKjnH<4Y1y>+2(89+ z0-Bp7CDKm-)dH1m`D9XPa7cDg^`V-XWC~n1VXKMzgv(3UxC;CS)Aa@ktep7500000 LNkvXXu0mjf$VDp9 literal 0 HcmV?d00001 diff --git a/SodaLive/Sources/Explorer/Profile/CreatorCommunity/CreatorCommunityItemView.swift b/SodaLive/Sources/Explorer/Profile/CreatorCommunity/CreatorCommunityItemView.swift index 1a2dc43..aaef21a 100644 --- a/SodaLive/Sources/Explorer/Profile/CreatorCommunity/CreatorCommunityItemView.swift +++ b/SodaLive/Sources/Explorer/Profile/CreatorCommunity/CreatorCommunityItemView.swift @@ -17,82 +17,73 @@ struct CreatorCommunityItemView: View { HStack(spacing: 11) { KFImage(URL(string: item.creatorProfileUrl)) .cancelOnDisappear(true) - .downsampling( - size: CGSize( - width: 40, - height: 40 - ) - ) .resizable() .frame(width: 40, height: 40) .clipShape(Circle()) - Text(item.creatorNickname) - .font(.custom(Font.medium.rawValue, size: 13.3)) - .foregroundColor(Color.grayee) + VStack(alignment: .leading, spacing: 0) { + Text(item.creatorNickname) + .font(.custom(Font.preBold.rawValue, size: 18)) + .foregroundColor(Color.white) + + Text(item.date) + .font(.custom(Font.preRegular.rawValue, size: 14)) + .foregroundColor(Color(hex: "78909C")) + } Spacer() - - Text(item.date) - .font(.custom(Font.light.rawValue, size: 13.3)) - .foregroundColor(Color.gray77) } HStack(spacing: 0) { Text(item.content) - .font(.custom(Font.medium.rawValue, size: 12)) - .foregroundColor(Color.graybb) + .font(.custom(Font.preRegular.rawValue, size: 18)) + .foregroundColor(Color(hex: "B0BEC5")) .fixedSize(horizontal: false, vertical: true) .lineLimit(3) + .truncationMode(.tail) Spacer() if let imageUrl = item.imageUrl { KFImage(URL(string: imageUrl)) .cancelOnDisappear(true) - .downsampling( - size: CGSize( - width: 53.3, - height: 53.3 - ) - ) .resizable() - .frame(width: 53.3, height: 53.3) - .cornerRadius(4.7) + .frame(width: 64, height: 64) + .cornerRadius(12) .blur(radius: item.existOrdered || item.price <= 0 ? 0 : 15) } else { Rectangle() .foregroundColor(Color.gray22.opacity(0)) - .frame(width: 53.3, height: 53.3) + .frame(width: 64, height: 64) } } HStack(spacing: 13.3) { - HStack(spacing: 6) { - Image("ic_heart_777") + HStack(spacing: 4) { + Image("ic_heart_78909c") .resizable() - .frame(width: 13.3, height: 13.3) + .frame(width: 24, height: 24) Text("\(item.likeCount)") - .font(.custom(Font.medium.rawValue, size: 11)) - .foregroundColor(Color.gray77) + .font(.custom(Font.preRegular.rawValue, size: 18)) + .foregroundColor(Color(hex: "78909C")) } - HStack(spacing: 6) { - Image("ic_message_square_777") + HStack(spacing: 4) { + Image("ic_comment_78909c") .resizable() - .frame(width: 13.3, height: 13.3) + .frame(width: 24, height: 24) Text("\(item.commentCount)") - .font(.custom(Font.medium.rawValue, size: 11)) - .foregroundColor(Color.gray77) + .font(.custom(Font.preRegular.rawValue, size: 18)) + .foregroundColor(Color(hex: "78909C")) } } } .frame(maxWidth: .infinity, alignment: .leading) - .padding(13.3) - .background(Color.gray22) - .cornerRadius(11) + .padding(16) + .background(Color(hex: "263238")) + .cornerRadius(16) } } diff --git a/SodaLive/Sources/Extensions/UserDefaultsExtension.swift b/SodaLive/Sources/Extensions/UserDefaultsExtension.swift index 05130cc..a23c0ec 100644 --- a/SodaLive/Sources/Extensions/UserDefaultsExtension.swift +++ b/SodaLive/Sources/Extensions/UserDefaultsExtension.swift @@ -21,7 +21,6 @@ enum UserDefaultsKey: String, CaseIterable { case noChatRoomList case devicePushToken case isContentPlayLoop - case isFollowedChannel case isViewedOnboardingView case notShowingEventPopupId case isAdultContentVisible diff --git a/SodaLive/Sources/Live/LiveViewModel.swift b/SodaLive/Sources/Live/LiveViewModel.swift index 4e970e3..b4aa1d0 100644 --- a/SodaLive/Sources/Live/LiveViewModel.swift +++ b/SodaLive/Sources/Live/LiveViewModel.swift @@ -39,12 +39,6 @@ final class LiveViewModel: ObservableObject { @Published var passwordDialogConfirmAction: (String) -> Void = { _ in } @Published var isShowPasswordDialog = false - @Published var isFollowingList = UserDefaults.bool(forKey: .isFollowedChannel) { - didSet { - UserDefaults.set(isFollowingList, forKey: .isFollowedChannel) - } - } - @Published var liveStartDate: String? = nil @Published var nowDate: String? = nil diff --git a/SodaLive/Sources/Live/SectionCommunityPostView.swift b/SodaLive/Sources/Live/SectionCommunityPostView.swift index d809a7c..8d36e40 100644 --- a/SodaLive/Sources/Live/SectionCommunityPostView.swift +++ b/SodaLive/Sources/Live/SectionCommunityPostView.swift @@ -12,17 +12,30 @@ struct SectionCommunityPostView: View { let items: [GetCommunityPostListResponse] var body: some View { - ScrollView(.horizontal, showsIndicators: false) { - HStack(spacing: 13.3) { - ForEach(0..