import SwiftUI struct BlindBoxActionButton: View { let phase: BlindBoxAnimationPhase let countdownText: String let onOpen: () -> Void let onGoToBuy: () -> Void var body: some View { Button(action: { switch phase { case .ready: onOpen() case .none: onGoToBuy() default: break } }) { Group { switch phase { case .loading: Text("Next: \(countdownText)") .font(Typography.font(for: .body)) .fontWeight(.bold) .frame(maxWidth: .infinity) .padding() .background(Color.white) .foregroundColor(.black) .cornerRadius(32) case .ready: Text("Ready") .font(Typography.font(for: .body)) .fontWeight(.bold) .frame(maxWidth: .infinity) .padding() .background(Color.themePrimary) .foregroundColor(Color.themeTextMessageMain) .cornerRadius(32) default: Text("Go to Buy") .font(Typography.font(for: .body)) .fontWeight(.bold) .frame(maxWidth: .infinity) .padding() .background(Color.themePrimary) .foregroundColor(Color.themeTextMessageMain) .cornerRadius(32) } } } } }