// // ParticipateButton.swift // AllIn // // Created by Lucas Delanier on 15/01/2024. // import SwiftUI import Model struct ParticipateButton: View { @Binding var isOpen : Bool @Binding var isParticapatedOpen: Bool var bet: Bet? var isDisabled: Bool { if let betType = bet?.status { switch betType { case .inProgress: return false default: return true } } else { return true } } var body: some View { Button { isOpen = true isParticapatedOpen = true } label: { Text("bet_participate") .font(.system(size: 27)) .fontWeight(.semibold) .frame(maxWidth: .infinity).padding(10) .multilineTextAlignment(.center) .overlay { switch isDisabled { case true: AllInColors.grey700Color.frame(width: 170) .mask( Text("bet_participate") .font(.system(size: 27)) .fontWeight(.semibold) .frame(maxWidth: .infinity).padding(10) ) case false: AllInColors.primaryGradient.frame(width: 170) .mask( Text("bet_participate") .font(.system(size: 27)) .fontWeight(.semibold) .frame(maxWidth: .infinity).padding(10) ) } } .accentColor(AllInColors.componentBackgroundColor) .background(isDisabled ? AllInColors.delimiterGrey.opacity(0.5):AllInColors.whiteColor) .buttonStyle(.borderedProminent).cornerRadius(4.0) .overlay( RoundedRectangle(cornerRadius: 12).stroke(AllInColors.delimiterGrey, lineWidth: 1) ) } .disabled(isDisabled) } }