From 3b3ea3bece8c24cd31f73ef5c568b468d8bbec79 Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Tue, 30 Aug 2022 14:32:06 -0500 Subject: [PATCH] removed id Signed-off-by: Matt Bruce --- VDS/Components/Checkbox/Checkbox.swift | 3 --- VDS/Components/Checkbox/CheckboxGroup.swift | 2 +- VDS/Components/Checkbox/CheckboxGroupModel.swift | 3 +-- VDS/Components/Checkbox/CheckboxModel.swift | 1 - VDS/Components/RadioBox/RadioBox.swift | 3 --- VDS/Components/RadioBox/RadioBoxGroup.swift | 2 +- VDS/Components/RadioBox/RadioBoxModel.swift | 1 - VDS/Components/RadioButton/RadioButton.swift | 3 --- VDS/Components/RadioButton/RadioButtonGroup.swift | 4 ++-- VDS/Components/RadioButton/RadioButtonModel.swift | 1 - VDS/Components/Toggle/ToggleModel.swift | 1 - VDS/Protocols/FormFieldable.swift | 1 - VDS/Protocols/SelectorGroupModelHandlerable.swift | 8 ++++---- 13 files changed, 9 insertions(+), 24 deletions(-) diff --git a/VDS/Components/Checkbox/Checkbox.swift b/VDS/Components/Checkbox/Checkbox.swift index 803b001d..0ab14b6d 100644 --- a/VDS/Components/Checkbox/Checkbox.swift +++ b/VDS/Components/Checkbox/Checkbox.swift @@ -58,9 +58,6 @@ open class CheckboxBase: Control, Changable public var onChange: Blocks.ActionBlock? - @Proxy(\.model.id) - open var id: UUID - //can't bind to @Proxy open override var isSelected: Bool { get { model.selected } diff --git a/VDS/Components/Checkbox/CheckboxGroup.swift b/VDS/Components/Checkbox/CheckboxGroup.swift index 37a498b9..ded709e2 100644 --- a/VDS/Components/Checkbox/CheckboxGroup.swift +++ b/VDS/Components/Checkbox/CheckboxGroup.swift @@ -82,7 +82,7 @@ public class CheckboxGroup: Control, SelectorGroupMod open override func updateView(viewModel: ModelType) { for selectorModel in viewModel.selectors { //see if view is there for the model - if let foundSelectorView = findSelectorView(id: selectorModel.id) { + if let foundSelectorView = findSelectorView(inputId: selectorModel.inputId) { foundSelectorView.set(with: selectorModel) } else { diff --git a/VDS/Components/Checkbox/CheckboxGroupModel.swift b/VDS/Components/Checkbox/CheckboxGroupModel.swift index 41d4f3f9..75a91dad 100644 --- a/VDS/Components/Checkbox/CheckboxGroupModel.swift +++ b/VDS/Components/Checkbox/CheckboxGroupModel.swift @@ -7,13 +7,12 @@ import Foundation -public protocol CheckboxGroupModel: SelectorGroupModelable where SelectorModelType: CheckboxModel { +public protocol CheckboxGroupModel: SelectorGroupModelable, Errorable where SelectorModelType: CheckboxModel { } public struct DefaultCheckboxGroupModel: CheckboxGroupModel { public typealias SelectorModelType = DefaultCheckboxModel - public var id: UUID = UUID() public var inputId: String? public var value: AnyHashable? public var surface: Surface = .light diff --git a/VDS/Components/Checkbox/CheckboxModel.swift b/VDS/Components/Checkbox/CheckboxModel.swift index d9720d26..b6e3c335 100644 --- a/VDS/Components/Checkbox/CheckboxModel.swift +++ b/VDS/Components/Checkbox/CheckboxModel.swift @@ -64,7 +64,6 @@ extension CheckboxModel { } public struct DefaultCheckboxModel: CheckboxModel { - public var id: UUID = UUID() public var selected: Bool = false public var labelText: String? diff --git a/VDS/Components/RadioBox/RadioBox.swift b/VDS/Components/RadioBox/RadioBox.swift index a649fc41..9134d947 100644 --- a/VDS/Components/RadioBox/RadioBox.swift +++ b/VDS/Components/RadioBox/RadioBox.swift @@ -60,9 +60,6 @@ open class RadioBoxBase: Control, Changable public var onChange: Blocks.ActionBlock? - @Proxy(\.model.id) - open var id: UUID - //can't bind to @Proxy open override var isSelected: Bool { get { model.selected } diff --git a/VDS/Components/RadioBox/RadioBoxGroup.swift b/VDS/Components/RadioBox/RadioBoxGroup.swift index 14f36179..06a79fa5 100644 --- a/VDS/Components/RadioBox/RadioBoxGroup.swift +++ b/VDS/Components/RadioBox/RadioBoxGroup.swift @@ -117,7 +117,7 @@ public class RadioBoxGroup: Control, SelectorGroupSel open override func updateView(viewModel: ModelType) { for selectorModel in viewModel.selectors { //see if view is there for the model - if let foundSelectorView = findSelectorView(id: selectorModel.id) { + if let foundSelectorView = findSelectorView(inputId: selectorModel.inputId) { foundSelectorView.set(with: selectorModel) } else { diff --git a/VDS/Components/RadioBox/RadioBoxModel.swift b/VDS/Components/RadioBox/RadioBoxModel.swift index de8359f7..d09cace9 100644 --- a/VDS/Components/RadioBox/RadioBoxModel.swift +++ b/VDS/Components/RadioBox/RadioBoxModel.swift @@ -74,7 +74,6 @@ extension RadioBoxModel { public struct DefaultRadioBoxModel: RadioBoxModel { - public var id: UUID = UUID() public var selected: Bool = false public var text: String = "Default Text" diff --git a/VDS/Components/RadioButton/RadioButton.swift b/VDS/Components/RadioButton/RadioButton.swift index da887cdb..ac811fdb 100644 --- a/VDS/Components/RadioButton/RadioButton.swift +++ b/VDS/Components/RadioButton/RadioButton.swift @@ -57,9 +57,6 @@ open class RadioButtonBase: Control, Cha public var onChange: Blocks.ActionBlock? - @Proxy(\.model.id) - open var id: UUID - //can't bind to @Proxy open override var isSelected: Bool { get { model.selected } diff --git a/VDS/Components/RadioButton/RadioButtonGroup.swift b/VDS/Components/RadioButton/RadioButtonGroup.swift index 4aef4d8a..64d7341c 100644 --- a/VDS/Components/RadioButton/RadioButtonGroup.swift +++ b/VDS/Components/RadioButton/RadioButtonGroup.swift @@ -86,7 +86,7 @@ public class RadioButtonGroup: Control, SelectorGr } open override func shouldUpdateView(viewModel: ModelType) -> Bool { - let update = viewModel.selectedModel?.id != model.selectedModel?.id + let update = viewModel.selectedModel?.inputId != model.selectedModel?.inputId || viewModel.selectors.count != model.selectors.count || viewModel.hasError != model.hasError || viewModel.surface != model.surface @@ -97,7 +97,7 @@ public class RadioButtonGroup: Control, SelectorGr open override func updateView(viewModel: ModelType) { for selectorModel in viewModel.selectors { //see if view is there for the model - if let foundSelectorView = findSelectorView(id: selectorModel.id) { + if let foundSelectorView = findSelectorView(inputId: selectorModel.inputId) { foundSelectorView.set(with: selectorModel) } else { diff --git a/VDS/Components/RadioButton/RadioButtonModel.swift b/VDS/Components/RadioButton/RadioButtonModel.swift index 6a7567eb..ebaf6e8c 100644 --- a/VDS/Components/RadioButton/RadioButtonModel.swift +++ b/VDS/Components/RadioButton/RadioButtonModel.swift @@ -64,7 +64,6 @@ extension RadioButtonModel { } public struct DefaultRadioButtonModel: RadioButtonModel { - public var id: UUID = UUID() public var selected: Bool = false public var labelText: String? diff --git a/VDS/Components/Toggle/ToggleModel.swift b/VDS/Components/Toggle/ToggleModel.swift index 500c0e84..f851d2c0 100644 --- a/VDS/Components/Toggle/ToggleModel.swift +++ b/VDS/Components/Toggle/ToggleModel.swift @@ -30,7 +30,6 @@ extension ToggleModel { } public struct DefaultToggleModel: ToggleModel { - public var id: UUID = UUID() public var on: Bool = false public var showText: Bool = false public var offText: String = "Off" diff --git a/VDS/Protocols/FormFieldable.swift b/VDS/Protocols/FormFieldable.swift index 356f6e35..41017204 100644 --- a/VDS/Protocols/FormFieldable.swift +++ b/VDS/Protocols/FormFieldable.swift @@ -8,7 +8,6 @@ import Foundation public protocol FormFieldable { - var id: UUID { get set } var inputId: String? { get set } var value: AnyHashable? { get set } } diff --git a/VDS/Protocols/SelectorGroupModelHandlerable.swift b/VDS/Protocols/SelectorGroupModelHandlerable.swift index 02fd2fae..72307e3d 100644 --- a/VDS/Protocols/SelectorGroupModelHandlerable.swift +++ b/VDS/Protocols/SelectorGroupModelHandlerable.swift @@ -17,9 +17,9 @@ public protocol SelectorGroupModelHandlerable: ModelHandlerable, Disabling, Surf extension SelectorGroupModelHandlerable { - public func findSelectorView(id: UUID) -> ModelHandlerType? { + public func findSelectorView(inputId: String?) -> ModelHandlerType? { return selectorViews.first(where: { existingSelectorView in - return existingSelectorView.model.id == id + return existingSelectorView.model.inputId == inputId }) } @@ -51,7 +51,7 @@ extension SelectorGroupModelHandlerable { public func getCachedSelector(viewModel: ModelHandlerType.ModelType) -> ModelHandlerType.ModelType? { if let index = model.selectors.firstIndex(where: { element in - return element.id == viewModel.id + return element.inputId == viewModel.inputId }) { return model.selectors[index] } else { @@ -61,7 +61,7 @@ extension SelectorGroupModelHandlerable { public func replace(viewModel: ModelHandlerType.ModelType){ if let index = model.selectors.firstIndex(where: { element in - return element.id == viewModel.id + return element.inputId == viewModel.inputId }) { model.selectors[index] = viewModel }