added final properties

This commit is contained in:
Matt Bruce 2024-08-20 14:19:22 -05:00
parent 25dce9e88c
commit e030b460ce
2 changed files with 27 additions and 3 deletions

View File

@ -23,8 +23,12 @@ open class DatePickerEntryField: VDS.DatePicker, VDSMoleculeViewProtocol {
public func viewModelDidUpdate() { public func viewModelDidUpdate() {
surface = viewModel.surface surface = viewModel.surface
labelText = "Date" labelText = viewModel.title
helperText = "Pick a date" helperText = viewModel.feedback
helperTextPlacement = viewModel.feedbackTextPlacement
tooltipModel = viewModel.tooltip?.convertToVDSTooltipModel()
transparentBackground = viewModel.transparentBackground
width = viewModel.width
selectedDate = viewModel.selectedDate selectedDate = viewModel.selectedDate
calendarModel = viewModel.calendar.convertToVDSCalendarModel() calendarModel = viewModel.calendar.convertToVDSCalendarModel()
FormValidator.setupValidation(for: viewModel, delegate: delegateObject?.formHolderDelegate) FormValidator.setupValidation(for: viewModel, delegate: delegateObject?.formHolderDelegate)

View File

@ -31,6 +31,12 @@ open class DatePickerEntryFieldModel: FormFieldModel {
public var selectedDate: Date? public var selectedDate: Date?
public var calendar: CalendarViewModel = .init() public var calendar: CalendarViewModel = .init()
public var title: String?
public var feedback: String?
public var feedbackTextPlacement: VDS.DatePicker.HelperTextPlacement = .bottom
public var tooltip: TooltipModel?
public var transparentBackground: Bool = false
public var width: CGFloat?
//-------------------------------------------------- //--------------------------------------------------
// MARK: - Keys // MARK: - Keys
@ -39,6 +45,12 @@ open class DatePickerEntryFieldModel: FormFieldModel {
case dateFormat case dateFormat
case selectedDate case selectedDate
case calendar case calendar
case title
case feedback
case feedbackTextPlacement
case tooltip
case transparentBackground
case width
} }
//-------------------------------------------------- //--------------------------------------------------
@ -70,6 +82,14 @@ open class DatePickerEntryFieldModel: FormFieldModel {
self.calendar = calendar self.calendar = calendar
} }
title = try container.decodeIfPresent(String.self, forKey: .title)
feedback = try container.decodeIfPresent(String.self, forKey: .feedback)
feedbackTextPlacement = try container.decodeIfPresent(VDS.EntryFieldBase.HelperTextPlacement.self, forKey: .feedbackTextPlacement) ?? .bottom
tooltip = try container.decodeIfPresent(TooltipModel.self, forKey: .tooltip)
transparentBackground = try container.decodeIfPresent(Bool.self, forKey: .transparentBackground) ?? false
width = try container.decodeIfPresent(CGFloat.self, forKey: .width)
try super.init(from: decoder) try super.init(from: decoder)
} }