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() {
surface = viewModel.surface
labelText = "Date"
helperText = "Pick a date"
labelText = viewModel.title
helperText = viewModel.feedback
helperTextPlacement = viewModel.feedbackTextPlacement
tooltipModel = viewModel.tooltip?.convertToVDSTooltipModel()
transparentBackground = viewModel.transparentBackground
width = viewModel.width
selectedDate = viewModel.selectedDate
calendarModel = viewModel.calendar.convertToVDSCalendarModel()
FormValidator.setupValidation(for: viewModel, delegate: delegateObject?.formHolderDelegate)

View File

@ -31,7 +31,13 @@ open class DatePickerEntryFieldModel: FormFieldModel {
public var selectedDate: Date?
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
//--------------------------------------------------
@ -39,6 +45,12 @@ open class DatePickerEntryFieldModel: FormFieldModel {
case dateFormat
case selectedDate
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
}
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)
}