라이브

- 후원 메시지, 룰렛 결과 모든 유저에게 보이도록 수정
This commit is contained in:
Yu Sung 2024-08-21 21:40:14 +09:00
parent 835ece8a6b
commit 47cd685f80
3 changed files with 25 additions and 20 deletions

View File

@ -9,8 +9,10 @@ import SwiftUI
struct LiveRoomDonationMessageDialog: View { struct LiveRoomDonationMessageDialog: View {
@StateObject var viewModel: LiveRoomViewModel
@Binding var isShowing: Bool @Binding var isShowing: Bool
@StateObject var viewModel = LiveRoomViewModel()
@State var creatorId = 0
var body: some View { var body: some View {
ZStack { ZStack {
@ -45,7 +47,7 @@ struct LiveRoomDonationMessageDialog: View {
ForEach(0..<viewModel.donationMessageList.count, id: \.self) { index in ForEach(0..<viewModel.donationMessageList.count, id: \.self) { index in
let donationMessage = viewModel.donationMessageList[index] let donationMessage = viewModel.donationMessageList[index]
LiveRoomDonationMessageItemView(message: donationMessage) { LiveRoomDonationMessageItemView(message: donationMessage, creatorId: creatorId) {
viewModel.deleteDonationMessage(uuid: $0) viewModel.deleteDonationMessage(uuid: $0)
} }
.onTapGesture { .onTapGesture {
@ -79,7 +81,7 @@ struct LiveRoomDonationMessageDialog: View {
.padding(.vertical, 13.3) .padding(.vertical, 13.3)
.frame(width: screenSize().width - 66.7, alignment: .center) .frame(width: screenSize().width - 66.7, alignment: .center)
.font(.custom(Font.medium.rawValue, size: 12)) .font(.custom(Font.medium.rawValue, size: 12))
.background(Color(hex: "9970ff")) .background(Color.button)
.foregroundColor(Color.white) .foregroundColor(Color.white)
.multilineTextAlignment(.leading) .multilineTextAlignment(.leading)
.cornerRadius(20) .cornerRadius(20)
@ -89,6 +91,7 @@ struct LiveRoomDonationMessageDialog: View {
} }
.onAppear { .onAppear {
viewModel.getDonationMessageList() viewModel.getDonationMessageList()
creatorId = viewModel.liveRoomInfo?.creatorId ?? 0
} }
} }
} }

View File

@ -10,6 +10,7 @@ import SwiftUI
struct LiveRoomDonationMessageItemView: View { struct LiveRoomDonationMessageItemView: View {
let message: LiveRoomDonationMessage let message: LiveRoomDonationMessage
let creatorId: Int
let deleteDonationMessage: (String) -> Void let deleteDonationMessage: (String) -> Void
var body: some View { var body: some View {
@ -32,11 +33,13 @@ struct LiveRoomDonationMessageItemView: View {
Spacer() Spacer()
if creatorId == UserDefaults.int(forKey: .userId) {
Image("ic_close_white") Image("ic_close_white")
.resizable() .resizable()
.frame(width: 13.3, height: 13.3) .frame(width: 13.3, height: 13.3)
.onTapGesture { deleteDonationMessage(message.uuid) } .onTapGesture { deleteDonationMessage(message.uuid) }
} }
}
.padding(13.3) .padding(13.3)
.background(message.canMessage.trimmingCharacters(in: .whitespaces).isEmpty ? Color(hex: "c25264").opacity(0.8) : Color.gray33) .background(message.canMessage.trimmingCharacters(in: .whitespaces).isEmpty ? Color(hex: "c25264").opacity(0.8) : Color.gray33)
.cornerRadius(5.3) .cornerRadius(5.3)
@ -51,6 +54,7 @@ struct LiveRoomDonationMessageItemView: View {
canMessage: "10캔을 후원하셨습니다", canMessage: "10캔을 후원하셨습니다",
donationMessage: "ㅅㅅㅅ" donationMessage: "ㅅㅅㅅ"
), ),
creatorId: 0,
deleteDonationMessage: { _ in } deleteDonationMessage: { _ in }
) )
} }
@ -63,6 +67,7 @@ struct LiveRoomDonationMessageItemView: View {
canMessage: "", canMessage: "",
donationMessage: "[테스트] 당첨!" donationMessage: "[테스트] 당첨!"
), ),
creatorId: 0,
deleteDonationMessage: { _ in } deleteDonationMessage: { _ in }
) )
} }

View File

@ -203,18 +203,15 @@ struct LiveRoomViewV2: View {
) )
} }
if liveRoomInfo.creatorId == UserDefaults.int(forKey: .userId) &&
UserDefaults.string(forKey: .role) == MemberRole.CREATOR.rawValue {
LiveRoomRightBottomButton(
imageName: "ic_donation_message_list",
onClick: { viewModel.isShowDonationMessagePopup = true }
)
} else {
LiveRoomRightBottomButton( LiveRoomRightBottomButton(
imageName: "ic_donation", imageName: "ic_donation",
onClick: { viewModel.isShowDonationPopup = true } onClick: { viewModel.isShowDonationPopup = true }
) )
}
LiveRoomRightBottomButton(
imageName: "ic_donation_message_list",
onClick: { viewModel.isShowDonationMessagePopup = true }
)
} }
.padding(.trailing, 13.3) .padding(.trailing, 13.3)
@ -668,7 +665,7 @@ struct LiveRoomViewV2: View {
LiveRoomDonationRankingDialog(isShowing: $viewModel.isShowDonationRankingPopup) LiveRoomDonationRankingDialog(isShowing: $viewModel.isShowDonationRankingPopup)
} }
.sheet(isPresented: $viewModel.isShowDonationMessagePopup) { .sheet(isPresented: $viewModel.isShowDonationMessagePopup) {
LiveRoomDonationMessageDialog(isShowing: $viewModel.isShowDonationMessagePopup) LiveRoomDonationMessageDialog(viewModel: viewModel, isShowing: $viewModel.isShowDonationMessagePopup)
} }
} }