parent
835ece8a6b
commit
47cd685f80
|
@ -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
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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 }
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -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)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue