import ComponentLibrary
import Localization
import SwiftUI

struct ClipSuggestionsView: View {
    var suggestions: [String]
    var random: () -> Void
    var selected: (String) -> Void

    var body: some View {
        Button(
            action: { random() },
            label: {
                HStack(spacing: 8) {
                    Image.Icon.dice
                    Text(L10n.FeatureCreateClip.surpriseMe)
                }
            }
        )
        .editClipSuggestionStyle()

        ForEach(suggestions, id: \.self) { prompt in
            Button(prompt) {
                selected(prompt)
            }
            .editClipSuggestionStyle()
        }
    }
}

extension View {
    func editClipSuggestionStyle() -> some View {
        self
            .typographyV1(.body3)
            .foregroundStyle(Color.SemanticV1.textPrimary)
            .padding(.vertical, 8)
            .padding(.horizontal, 12)
            .background(Color.SemanticV1.backgroundTertiary)
            .cornerRadius(20)
    }
}
