// // ToggleModel.swift // VDS // // Created by Matt Bruce on 7/22/22. // import Foundation import UIKit extension VDSToggle { public enum TextPosition: String, Codable { case left, right } } public protocol VDSToggleModel: VDSLabelModel, FormFieldable, DataTrackable, Accessable, Initable { var id: String? { get set } var showText: Bool { get set } var on: Bool { get set } var offText: String { get set } var onText: String { get set } } extension VDSToggleModel { public var fontCategory: VDSFontCategory { get { return .body } set { return } } } public class DefaultToggleModel: DefaultLabelModel, VDSToggleModel { public var id: String? public var inputId: String? public var showText: Bool = false public var on: Bool = false public var offText: String = "Off" public var onText: String = "On" public var value: AnyHashable? = true public var dataAnalyticsTrack: String? public var dataClickStream: String? public var dataTrack: String? public var accessibilityHintEnabled: String? public var accessibilityHintDisabled: String? public var accessibilityValueEnabled: String? public var accessibilityValueDisabled: String? public var accessibilityLabelEnabled: String? public var accessibilityLabelDisabled: String? public required init() { super.init() } }