Fix changes (maybe?)

This commit is contained in:
slds1 2024-09-24 15:44:10 +03:00
parent 2508919f97
commit c5724c6fbf

View File

@ -4,19 +4,25 @@
import UIKit import UIKit
import SwiftUI import SwiftUI
enum FeedbackType { public enum FeedbackType {
case light case light
case medium case medium
case hard case hard
case custom(Int) case custom(Int)
} }
struct FeedbackModifier: ViewModifier { public struct FeedbackModifier: ViewModifier {
@Binding var trigger: Bool @Binding var trigger: Bool
var type: FeedbackType var type: FeedbackType
var hapticValue: Int? var hapticValue: Int?
func body(content: Content) -> some View { public init(trigger: Binding<Bool>, type: FeedbackType = .hard, hapticValue: Int? = nil) {
self._trigger = trigger
self.type = type
self.hapticValue = hapticValue
}
public func body(content: Content) -> some View {
content content
.onChange(of: trigger) { newValue in .onChange(of: trigger) { newValue in
if newValue { if newValue {
@ -59,9 +65,8 @@ struct FeedbackModifier: ViewModifier {
} }
} }
extension View { public extension View {
func feedback(trigger: Binding<Bool>, type: FeedbackType = .hard, haptic: Int? = nil) -> some View { func feedback(trigger: Binding<Bool>, type: FeedbackType = .hard, haptic: Int? = nil) -> some View {
self.modifier(FeedbackModifier(trigger: trigger, type: type, hapticValue: haptic)) self.modifier(FeedbackModifier(trigger: trigger, type: type, hapticValue: haptic))
} }
} }