import SwiftUI

public struct AuraButtonStyle: ButtonStyle {
    public func makeBody(configuration: Configuration) -> some View {
        configuration.label
            .typographyV1(.button)
            .foregroundStyle(Color.white)
            .padding(.vertical, 6)
            .padding(.horizontal, 12)
            .frame(maxWidth: .infinity)
            .background {
                #if targetEnvironment(simulator)
                    Color.orange
                #else
                    AuraShaderView(
                        id: "aura-button",
                        appPreset: .pinkYellowOrange,
                        morphSpeed: 0.05,
                        scale: 0.2,
                        seed: 0
                    )
                #endif
            }
            .shadow(color: .black.opacity(0.2), radius: 3, x: 2, y: 2)
            .shadow(color: .black.opacity(0.1), radius: 8, x: 6, y: 6)
            .clipShape(Capsule())
    }
}
