import ComponentLibrary
import Foundation
import SwiftUI

struct AnnounceBannerStack: View {
    let label: String?
    let title: String
    let description: String

    var body: some View {
        VStack {
            if let label = label, !label.isEmpty {
                InlineTextBadgeView(
                    label: label,
                    textColor: .SemanticV1.iconOnDark,
                    accentColor: .SemanticV1.iconLink
                )
            }
            Text(title)
                .typographyV1(.headline1)
                .foregroundStyle(Color.SemanticV1.textOnDark)
                .multilineTextAlignment(.center)
                .padding(.top, 8.0)
                .padding(.horizontal, Constants.horizontalPadding)
            Text(description)
                .typographyV1(.body1)
                .foregroundStyle(Color.SemanticV1.textOnDark)
                .multilineTextAlignment(.center)
                .padding(.horizontal, Constants.horizontalPadding)
            Spacer()
        }
    }
}

private extension AnnounceBannerStack {
    enum Constants {
        static let horizontalPadding: CGFloat = 64.0
    }
}
