//
//  CardColorSelectionView.swift
//  AlloVoisinsSwiftUI
//
//  Created by Victor on 12/11/2024.
//

import SwiftUI

struct CardColorSelectionView: View {
    @State var goToNext: Bool = false
    @State private var applyToAll: Bool = true
    @State private var selectedColor: Color = .sqNeutral()
    var selectedTemplate: CardTemplate

    var body: some View {
        VStack {
            VStack(alignment: .leading, spacing: 32) {
                VStack(alignment: .leading, spacing: 16) {
                    SQColorPicker("Couleur principale", selectedColor: $selectedColor, subtitle: "Choisissez la couleur qui sera appliquée sur vos cartes de visite.")
                    SQText("Aperçu", size: 18, font: .bold)
                    selectedTemplate.imageColorTemplate(isLight: selectedColor.isLight)
                        .background(selectedColor)
                        .frame(maxWidth: .infinity)
                }
                VStack(alignment: .leading) {
                    Toggle(isOn: $applyToAll) {
                        SQText("Appliquer cette couleur sur mes prospectus, mes devis et mes factures")
                    }
                    .tint(Color.sqNeutral(100))
                    SQText("Nous vous recommandons d’appliquer la même couleur sur tous vos documents.", size: 12)
                }
                Spacer()
            }
            .padding()
            SQFooter {
                SQButton("Continuer", color: .sqNeutral(100), textColor: .white) {
                    self.goToNext.toggle()
                }
            }
        }
        .sqNavigationBar(title: "Choix de la couleur ")
        .navigationDestination(isPresented: $goToNext) {
            CardFormView()
        }
    }
}

#Preview {
    CardColorSelectionView(selectedTemplate: CardTemplate.template4)
}
