deleted all models

Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
Matt Bruce 2022-10-20 15:12:25 -05:00
parent 0b237b4847
commit b5314ad879
17 changed files with 22 additions and 844 deletions

View File

@ -9,18 +9,14 @@
/* Begin PBXBuildFile section */
5F21D7BF28DCEB3D003E7CD6 /* Useable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F21D7BE28DCEB3D003E7CD6 /* Useable.swift */; };
5FC35BE328D51405004EBEAC /* Button.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FC35BE228D51405004EBEAC /* Button.swift */; };
5FC35BE528D51414004EBEAC /* ButtonModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FC35BE428D51413004EBEAC /* ButtonModel.swift */; };
EA1F265D28B944F00033E859 /* CollectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA1F265B28B944F00033E859 /* CollectionView.swift */; };
EA1F265E28B944F00033E859 /* CollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA1F265C28B944F00033E859 /* CollectionViewCell.swift */; };
EA1F266428B945070033E859 /* RadioSwatchGroupModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA1F266028B945070033E859 /* RadioSwatchGroupModel.swift */; };
EA1F266528B945070033E859 /* RadioSwatch.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA1F266128B945070033E859 /* RadioSwatch.swift */; };
EA1F266628B945070033E859 /* RadioSwatchGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA1F266228B945070033E859 /* RadioSwatchGroup.swift */; };
EA1F266728B945070033E859 /* RadioSwatchModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA1F266328B945070033E859 /* RadioSwatchModel.swift */; };
EA336171288B19200071C351 /* VDS.docc in Sources */ = {isa = PBXBuildFile; fileRef = EA336170288B19200071C351 /* VDS.docc */; };
EA336177288B19210071C351 /* VDS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA33616C288B19200071C351 /* VDS.framework */; };
EA33617C288B19210071C351 /* VDSTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA33617B288B19210071C351 /* VDSTests.swift */; };
EA33617D288B19210071C351 /* VDS.h in Headers */ = {isa = PBXBuildFile; fileRef = EA33616F288B19200071C351 /* VDS.h */; settings = {ATTRIBUTES = (Public, ); }; };
EA3361A2288B1E840071C351 /* ToggleModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA3361A1288B1E840071C351 /* ToggleModel.swift */; };
EA3361A8288B23300071C351 /* UIColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA3361A7288B23300071C351 /* UIColor.swift */; };
EA3361AA288B25E40071C351 /* Disabling.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA3361A9288B25E40071C351 /* Disabling.swift */; };
EA3361AD288B26190071C351 /* DataTrackable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA3361AC288B26190071C351 /* DataTrackable.swift */; };
@ -41,24 +37,19 @@
EA3362302891EB4A0071C351 /* Fonts.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA33622F2891EB4A0071C351 /* Fonts.swift */; };
EA33623E2892EE950071C351 /* UIDevice.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA33623D2892EE950071C351 /* UIDevice.swift */; };
EA3362402892EF6C0071C351 /* Label.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA33623F2892EF6B0071C351 /* Label.swift */; };
EA3362432892EFF20071C351 /* LabelModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA3362422892EFF20071C351 /* LabelModel.swift */; };
EA3362452892F9130071C351 /* Labelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA3362442892F9130071C351 /* Labelable.swift */; };
EA33624728931B050071C351 /* Initable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA33624628931B050071C351 /* Initable.swift */; };
EA3C3B4C2894823E000CA526 /* AnyProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA3C3B4B2894823E000CA526 /* AnyProxy.swift */; };
EA4DB18528CA967F00103EE3 /* SelectorGroupHandlerBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA4DB18428CA967F00103EE3 /* SelectorGroupHandlerBase.swift */; };
EA4DB2FD28D3D0CA00103EE3 /* AnyEquatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA4DB2FC28D3D0CA00103EE3 /* AnyEquatable.swift */; };
EA4DB30028DCBC9900103EE3 /* BadgeModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA4DB2FF28DCBC9900103EE3 /* BadgeModel.swift */; };
EA4DB30228DCBCA500103EE3 /* Badge.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA4DB30128DCBCA500103EE3 /* Badge.swift */; };
EA84F6B128B94A2500D67ABC /* CodableColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA84F6B028B94A2500D67ABC /* CodableColor.swift */; };
EA89200228AECF2A006B9984 /* UIButton+Publisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA89200128AECF2A006B9984 /* UIButton+Publisher.swift */; };
EA89200428AECF4B006B9984 /* UITextField+Publisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA89200328AECF4B006B9984 /* UITextField+Publisher.swift */; };
EA89200628B526D6006B9984 /* CheckboxGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA89200528B526D6006B9984 /* CheckboxGroup.swift */; };
EA89200828B526E0006B9984 /* CheckboxGroupModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA89200728B526E0006B9984 /* CheckboxGroupModel.swift */; };
EA89200D28B530FD006B9984 /* RadioBoxModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA89200C28B530FD006B9984 /* RadioBoxModel.swift */; };
EA89200F28B53921006B9984 /* Selectable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA89200E28B53921006B9984 /* Selectable.swift */; };
EA89201328B568D8006B9984 /* RadioBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA89201228B568D8006B9984 /* RadioBox.swift */; };
EA89201528B56CF4006B9984 /* RadioBoxGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA89201428B56CF4006B9984 /* RadioBoxGroup.swift */; };
EA89201728B56CFF006B9984 /* RadioBoxGroupModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA89201628B56CFF006B9984 /* RadioBoxGroupModel.swift */; };
EAA5EEE228F4C62C003B3210 /* Colorable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAA5EEE128F4C62C003B3210 /* Colorable.swift */; };
EAA5EEE428F5B855003B3210 /* VerizonNHGDS-Light.otf in Resources */ = {isa = PBXBuildFile; fileRef = EAA5EEE328F5B855003B3210 /* VerizonNHGDS-Light.otf */; };
EAA5EEEF28F5C908003B3210 /* VDSTypographyTokens.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EAA5EEEC28F5C908003B3210 /* VDSTypographyTokens.xcframework */; };
@ -69,7 +60,6 @@
EAA5EEF428F5C909003B3210 /* VDSFormControlsTokens.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = EAA5EEEE28F5C908003B3210 /* VDSFormControlsTokens.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
EAB1D29A28A5611D00DAE764 /* SelectorGroupModelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAB1D29928A5611D00DAE764 /* SelectorGroupModelable.swift */; };
EAB1D29C28A5618900DAE764 /* RadioButtonGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAB1D29B28A5618900DAE764 /* RadioButtonGroup.swift */; };
EAB1D29E28A5619500DAE764 /* RadioButtonGroupModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAB1D29D28A5619500DAE764 /* RadioButtonGroupModel.swift */; };
EAB1D2A128A598FE00DAE764 /* UsesAutoLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAB1D2A028A598FE00DAE764 /* UsesAutoLayout.swift */; };
EAB1D2A328A5994800DAE764 /* Debuggable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAB1D2A228A5994800DAE764 /* Debuggable.swift */; };
EAB1D2CD28ABE76100DAE764 /* Withable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAB1D2CC28ABE76000DAE764 /* Withable.swift */; };
@ -78,7 +68,6 @@
EAB1D2EA28AE84AA00DAE764 /* UIControlPublisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAB1D2E928AE84AA00DAE764 /* UIControlPublisher.swift */; };
EAD8D2C128BFDE8B006EB6A6 /* UIGestureRecognizer+Publisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD8D2C028BFDE8B006EB6A6 /* UIGestureRecognizer+Publisher.swift */; };
EAF7F0952899861000B287F5 /* Checkbox.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F0932899861000B287F5 /* Checkbox.swift */; };
EAF7F0962899861000B287F5 /* CheckboxModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F0942899861000B287F5 /* CheckboxModel.swift */; };
EAF7F09A2899B17200B287F5 /* CATransaction.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F0992899B17200B287F5 /* CATransaction.swift */; };
EAF7F09E289AAEC000B287F5 /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F09D289AAEC000B287F5 /* Constants.swift */; };
EAF7F0A0289AB7EC00B287F5 /* View.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F09F289AB7EC00B287F5 /* View.swift */; };
@ -95,7 +84,6 @@
EAF7F0B9289C139800B287F5 /* ColorConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F0B8289C139800B287F5 /* ColorConfiguration.swift */; };
EAF7F0BB289D80ED00B287F5 /* Modelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F0BA289D80ED00B287F5 /* Modelable.swift */; };
EAF7F11728A1475A00B287F5 /* RadioButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F11528A1475A00B287F5 /* RadioButton.swift */; };
EAF7F11828A1475A00B287F5 /* RadioButtonModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F11628A1475A00B287F5 /* RadioButtonModel.swift */; };
EAF7F13328A2A16500B287F5 /* LabelAttributeAttachment.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F13228A2A16500B287F5 /* LabelAttributeAttachment.swift */; };
/* End PBXBuildFile section */
@ -128,19 +116,15 @@
/* Begin PBXFileReference section */
5F21D7BE28DCEB3D003E7CD6 /* Useable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Useable.swift; sourceTree = "<group>"; };
5FC35BE228D51405004EBEAC /* Button.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Button.swift; sourceTree = "<group>"; };
5FC35BE428D51413004EBEAC /* ButtonModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ButtonModel.swift; sourceTree = "<group>"; };
EA1F265B28B944F00033E859 /* CollectionView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CollectionView.swift; sourceTree = "<group>"; };
EA1F265C28B944F00033E859 /* CollectionViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CollectionViewCell.swift; sourceTree = "<group>"; };
EA1F266028B945070033E859 /* RadioSwatchGroupModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RadioSwatchGroupModel.swift; sourceTree = "<group>"; };
EA1F266128B945070033E859 /* RadioSwatch.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RadioSwatch.swift; sourceTree = "<group>"; };
EA1F266228B945070033E859 /* RadioSwatchGroup.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RadioSwatchGroup.swift; sourceTree = "<group>"; };
EA1F266328B945070033E859 /* RadioSwatchModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RadioSwatchModel.swift; sourceTree = "<group>"; };
EA33616C288B19200071C351 /* VDS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = VDS.framework; sourceTree = BUILT_PRODUCTS_DIR; };
EA33616F288B19200071C351 /* VDS.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = VDS.h; sourceTree = "<group>"; };
EA336170288B19200071C351 /* VDS.docc */ = {isa = PBXFileReference; lastKnownFileType = folder.documentationcatalog; path = VDS.docc; sourceTree = "<group>"; };
EA336176288B19210071C351 /* VDSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = VDSTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
EA33617B288B19210071C351 /* VDSTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VDSTests.swift; sourceTree = "<group>"; };
EA3361A1288B1E840071C351 /* ToggleModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ToggleModel.swift; sourceTree = "<group>"; };
EA3361A7288B23300071C351 /* UIColor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIColor.swift; sourceTree = "<group>"; };
EA3361A9288B25E40071C351 /* Disabling.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Disabling.swift; sourceTree = "<group>"; };
EA3361AC288B26190071C351 /* DataTrackable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataTrackable.swift; sourceTree = "<group>"; };
@ -161,24 +145,19 @@
EA33622F2891EB4A0071C351 /* Fonts.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Fonts.swift; sourceTree = "<group>"; };
EA33623D2892EE950071C351 /* UIDevice.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIDevice.swift; sourceTree = "<group>"; };
EA33623F2892EF6B0071C351 /* Label.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Label.swift; sourceTree = "<group>"; };
EA3362422892EFF20071C351 /* LabelModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LabelModel.swift; sourceTree = "<group>"; };
EA3362442892F9130071C351 /* Labelable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Labelable.swift; sourceTree = "<group>"; };
EA33624628931B050071C351 /* Initable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Initable.swift; sourceTree = "<group>"; };
EA3C3B4B2894823E000CA526 /* AnyProxy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnyProxy.swift; sourceTree = "<group>"; };
EA4DB18428CA967F00103EE3 /* SelectorGroupHandlerBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SelectorGroupHandlerBase.swift; sourceTree = "<group>"; };
EA4DB2FC28D3D0CA00103EE3 /* AnyEquatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnyEquatable.swift; sourceTree = "<group>"; };
EA4DB2FF28DCBC9900103EE3 /* BadgeModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BadgeModel.swift; sourceTree = "<group>"; };
EA4DB30128DCBCA500103EE3 /* Badge.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Badge.swift; sourceTree = "<group>"; };
EA84F6B028B94A2500D67ABC /* CodableColor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodableColor.swift; sourceTree = "<group>"; };
EA89200128AECF2A006B9984 /* UIButton+Publisher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UIButton+Publisher.swift"; sourceTree = "<group>"; };
EA89200328AECF4B006B9984 /* UITextField+Publisher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UITextField+Publisher.swift"; sourceTree = "<group>"; };
EA89200528B526D6006B9984 /* CheckboxGroup.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CheckboxGroup.swift; sourceTree = "<group>"; };
EA89200728B526E0006B9984 /* CheckboxGroupModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CheckboxGroupModel.swift; sourceTree = "<group>"; };
EA89200C28B530FD006B9984 /* RadioBoxModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RadioBoxModel.swift; sourceTree = "<group>"; };
EA89200E28B53921006B9984 /* Selectable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Selectable.swift; sourceTree = "<group>"; };
EA89201228B568D8006B9984 /* RadioBox.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RadioBox.swift; sourceTree = "<group>"; };
EA89201428B56CF4006B9984 /* RadioBoxGroup.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RadioBoxGroup.swift; sourceTree = "<group>"; };
EA89201628B56CFF006B9984 /* RadioBoxGroupModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RadioBoxGroupModel.swift; sourceTree = "<group>"; };
EAA5EEE128F4C62C003B3210 /* Colorable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Colorable.swift; sourceTree = "<group>"; };
EAA5EEE328F5B855003B3210 /* VerizonNHGDS-Light.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "VerizonNHGDS-Light.otf"; sourceTree = "<group>"; };
EAA5EEEC28F5C908003B3210 /* VDSTypographyTokens.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = VDSTypographyTokens.xcframework; path = ../SharedFrameworks/VDSTypographyTokens.xcframework; sourceTree = "<group>"; };
@ -186,7 +165,6 @@
EAA5EEEE28F5C908003B3210 /* VDSFormControlsTokens.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = VDSFormControlsTokens.xcframework; path = ../SharedFrameworks/VDSFormControlsTokens.xcframework; sourceTree = "<group>"; };
EAB1D29928A5611D00DAE764 /* SelectorGroupModelable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SelectorGroupModelable.swift; sourceTree = "<group>"; };
EAB1D29B28A5618900DAE764 /* RadioButtonGroup.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RadioButtonGroup.swift; sourceTree = "<group>"; };
EAB1D29D28A5619500DAE764 /* RadioButtonGroupModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RadioButtonGroupModel.swift; sourceTree = "<group>"; };
EAB1D2A028A598FE00DAE764 /* UsesAutoLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UsesAutoLayout.swift; sourceTree = "<group>"; };
EAB1D2A228A5994800DAE764 /* Debuggable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Debuggable.swift; sourceTree = "<group>"; };
EAB1D2CC28ABE76000DAE764 /* Withable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Withable.swift; sourceTree = "<group>"; };
@ -195,7 +173,6 @@
EAB1D2E928AE84AA00DAE764 /* UIControlPublisher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIControlPublisher.swift; sourceTree = "<group>"; };
EAD8D2C028BFDE8B006EB6A6 /* UIGestureRecognizer+Publisher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UIGestureRecognizer+Publisher.swift"; sourceTree = "<group>"; };
EAF7F0932899861000B287F5 /* Checkbox.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Checkbox.swift; sourceTree = "<group>"; };
EAF7F0942899861000B287F5 /* CheckboxModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CheckboxModel.swift; sourceTree = "<group>"; };
EAF7F0992899B17200B287F5 /* CATransaction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CATransaction.swift; sourceTree = "<group>"; };
EAF7F09D289AAEC000B287F5 /* Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = "<group>"; };
EAF7F09F289AB7EC00B287F5 /* View.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = View.swift; sourceTree = "<group>"; };
@ -212,7 +189,6 @@
EAF7F0B8289C139800B287F5 /* ColorConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ColorConfiguration.swift; sourceTree = "<group>"; };
EAF7F0BA289D80ED00B287F5 /* Modelable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Modelable.swift; sourceTree = "<group>"; };
EAF7F11528A1475A00B287F5 /* RadioButton.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RadioButton.swift; sourceTree = "<group>"; };
EAF7F11628A1475A00B287F5 /* RadioButtonModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RadioButtonModel.swift; sourceTree = "<group>"; };
EAF7F13228A2A16500B287F5 /* LabelAttributeAttachment.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LabelAttributeAttachment.swift; sourceTree = "<group>"; };
/* End PBXFileReference section */
@ -242,7 +218,6 @@
isa = PBXGroup;
children = (
5FC35BE228D51405004EBEAC /* Button.swift */,
5FC35BE428D51413004EBEAC /* ButtonModel.swift */,
);
path = Button;
sourceTree = "<group>";
@ -251,9 +226,7 @@
isa = PBXGroup;
children = (
EA1F266128B945070033E859 /* RadioSwatch.swift */,
EA1F266328B945070033E859 /* RadioSwatchModel.swift */,
EA1F266228B945070033E859 /* RadioSwatchGroup.swift */,
EA1F266028B945070033E859 /* RadioSwatchGroupModel.swift */,
);
path = RadioSwatch;
sourceTree = "<group>";
@ -333,7 +306,6 @@
isa = PBXGroup;
children = (
EA3361C228902D960071C351 /* Toggle.swift */,
EA3361A1288B1E840071C351 /* ToggleModel.swift */,
);
path = Toggle;
sourceTree = "<group>";
@ -431,7 +403,6 @@
isa = PBXGroup;
children = (
EA33623F2892EF6B0071C351 /* Label.swift */,
EA3362422892EFF20071C351 /* LabelModel.swift */,
EAF7F0A9289B13EF00B287F5 /* Attributes */,
);
path = Label;
@ -440,7 +411,6 @@
EA4DB2FE28DCBC1900103EE3 /* Badge */ = {
isa = PBXGroup;
children = (
EA4DB2FF28DCBC9900103EE3 /* BadgeModel.swift */,
EA4DB30128DCBCA500103EE3 /* Badge.swift */,
);
path = Badge;
@ -450,9 +420,7 @@
isa = PBXGroup;
children = (
EA89201228B568D8006B9984 /* RadioBox.swift */,
EA89200C28B530FD006B9984 /* RadioBoxModel.swift */,
EA89201428B56CF4006B9984 /* RadioBoxGroup.swift */,
EA89201628B56CFF006B9984 /* RadioBoxGroupModel.swift */,
);
path = RadioBox;
sourceTree = "<group>";
@ -492,9 +460,7 @@
isa = PBXGroup;
children = (
EAF7F0932899861000B287F5 /* Checkbox.swift */,
EAF7F0942899861000B287F5 /* CheckboxModel.swift */,
EA89200528B526D6006B9984 /* CheckboxGroup.swift */,
EA89200728B526E0006B9984 /* CheckboxGroupModel.swift */,
);
path = Checkbox;
sourceTree = "<group>";
@ -517,9 +483,7 @@
isa = PBXGroup;
children = (
EAF7F11528A1475A00B287F5 /* RadioButton.swift */,
EAF7F11628A1475A00B287F5 /* RadioButtonModel.swift */,
EAB1D29B28A5618900DAE764 /* RadioButtonGroup.swift */,
EAB1D29D28A5619500DAE764 /* RadioButtonGroupModel.swift */,
);
path = RadioButton;
sourceTree = "<group>";
@ -644,9 +608,6 @@
EA89200428AECF4B006B9984 /* UITextField+Publisher.swift in Sources */,
EA3361C328902D960071C351 /* Toggle.swift in Sources */,
EAF7F0A0289AB7EC00B287F5 /* View.swift in Sources */,
EAF7F11828A1475A00B287F5 /* RadioButtonModel.swift in Sources */,
EA89200D28B530FD006B9984 /* RadioBoxModel.swift in Sources */,
EA1F266728B945070033E859 /* RadioSwatchModel.swift in Sources */,
EA89201328B568D8006B9984 /* RadioBox.swift in Sources */,
EA84F6B128B94A2500D67ABC /* CodableColor.swift in Sources */,
EA3362402892EF6C0071C351 /* Label.swift in Sources */,
@ -660,12 +621,9 @@
EAB1D2A128A598FE00DAE764 /* UsesAutoLayout.swift in Sources */,
EAB1D2CD28ABE76100DAE764 /* Withable.swift in Sources */,
EAF7F0952899861000B287F5 /* Checkbox.swift in Sources */,
EA89201728B56CFF006B9984 /* RadioBoxGroupModel.swift in Sources */,
EA3361C9289054C50071C351 /* Surfaceable.swift in Sources */,
EA3361A2288B1E840071C351 /* ToggleModel.swift in Sources */,
EA1F265D28B944F00033E859 /* CollectionView.swift in Sources */,
EA4DB30228DCBCA500103EE3 /* Badge.swift in Sources */,
EA3362432892EFF20071C351 /* LabelModel.swift in Sources */,
EA33624728931B050071C351 /* Initable.swift in Sources */,
EAF7F0A4289B017C00B287F5 /* LabelAttributeModel.swift in Sources */,
EAF7F0B1289B177F00B287F5 /* LabelAttributeColor.swift in Sources */,
@ -678,15 +636,12 @@
EAB1D2CF28ABEF2B00DAE764 /* Typography.swift in Sources */,
EAF7F09A2899B17200B287F5 /* CATransaction.swift in Sources */,
EA89200F28B53921006B9984 /* Selectable.swift in Sources */,
EAB1D29E28A5619500DAE764 /* RadioButtonGroupModel.swift in Sources */,
EAF7F0A2289AFB3900B287F5 /* Errorable.swift in Sources */,
EA3C3B4C2894823E000CA526 /* AnyProxy.swift in Sources */,
5FC35BE528D51414004EBEAC /* ButtonModel.swift in Sources */,
EA3361AF288B26310071C351 /* FormFieldable.swift in Sources */,
EAB1D29A28A5611D00DAE764 /* SelectorGroupModelable.swift in Sources */,
EAF7F0BB289D80ED00B287F5 /* Modelable.swift in Sources */,
EA89201528B56CF4006B9984 /* RadioBoxGroup.swift in Sources */,
EA4DB30028DCBC9900103EE3 /* BadgeModel.swift in Sources */,
EAF7F09E289AAEC000B287F5 /* Constants.swift in Sources */,
EA1F266528B945070033E859 /* RadioSwatch.swift in Sources */,
EA4DB18528CA967F00103EE3 /* SelectorGroupHandlerBase.swift in Sources */,
@ -694,10 +649,8 @@
EAF7F0AB289B13FD00B287F5 /* LabelAttributeFont.swift in Sources */,
EAB1D29C28A5618900DAE764 /* RadioButtonGroup.swift in Sources */,
EA336171288B19200071C351 /* VDS.docc in Sources */,
EAF7F0962899861000B287F5 /* CheckboxModel.swift in Sources */,
EAB1D2E628AE842000DAE764 /* Publisher+Bind.swift in Sources */,
EA3361AA288B25E40071C351 /* Disabling.swift in Sources */,
EA89200828B526E0006B9984 /* CheckboxGroupModel.swift in Sources */,
EA3361B6288B2A410071C351 /* Control.swift in Sources */,
EAB1D2A328A5994800DAE764 /* Debuggable.swift in Sources */,
5F21D7BF28DCEB3D003E7CD6 /* Useable.swift in Sources */,
@ -712,7 +665,6 @@
EA3361B8288B2AAA0071C351 /* ViewProtocol.swift in Sources */,
EA3361BF288B2EA60071C351 /* ModelHandlerable.swift in Sources */,
EA3361A8288B23300071C351 /* UIColor.swift in Sources */,
EA1F266428B945070033E859 /* RadioSwatchGroupModel.swift in Sources */,
EA1F266628B945070033E859 /* RadioSwatchGroup.swift in Sources */,
5FC35BE328D51405004EBEAC /* Button.swift in Sources */,
);

View File

@ -11,9 +11,11 @@ import VDSColorTokens
import VDSFormControlsTokens
import Combine
public class Badge: BadgeBase{}
public enum BadgeFillColor: String, Codable, CaseIterable {
case red, yellow, green, orange, blue, black, white
}
open class BadgeBase: View, Accessable {
public class Badge: View, Accessable {
private var label = Label()

View File

@ -1,53 +0,0 @@
//
// BadgeModel.swift
// VDS
//
// Created by Matt Bruce on 9/22/22.
//
import Foundation
import UIKit
import VDSColorTokens
public enum BadgeFillColor: String, Codable, CaseIterable {
case red, yellow, green, orange, blue, black, white
}
public protocol BadgeModel: Modelable, Accessable {
var fillColor: BadgeFillColor { get set }
var text: String { get set }
var maxWidth: CGFloat? { get set }
var numberOfLines: Int { get set }
}
extension BadgeModel {
public var label: DefaultLabelModel {
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BoldBodySmall
model.text = text
model.surface = surface
model.disabled = disabled
return model
}
}
public struct DefaultBadgeModel: BadgeModel {
public var id = UUID()
public var fillColor: BadgeFillColor = .red
public var text: String = ""
public var maxWidth: CGFloat?
public var numberOfLines: Int = 1
public var surface: Surface = .light
public var disabled: Bool = false
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 init() { }
}

View File

@ -11,6 +11,11 @@ import VDSColorTokens
import VDSFormControlsTokens
import Combine
public enum ButtonSize: String, Codable, CaseIterable {
case large
case small
}
open class Button: UIButton, ModelHandlerable, ViewProtocol, Resettable, Useable {
//--------------------------------------------------

View File

@ -1,33 +0,0 @@
//
// ButtonModel.swift
// VDS
//
// Created by Jarrod Courtney on 9/16/22.
//
import Foundation
import UIKit
public enum ButtonSize: String, Codable, CaseIterable {
case large
case small
}
public protocol ButtonModel: Modelable, Useable {
var text: String? { get set }
var width: CGFloat? { get set }
var size: ButtonSize { get set }
var use: Use { get set }
}
public struct DefaultButtonModel: ButtonModel {
public var id = UUID()
public var text: String?
public var surface: Surface = .light
public var use: Use = .primary
public var disabled: Bool = false
public var width: CGFloat?
public var size: ButtonSize = .large
public init(){}
}

View File

@ -126,41 +126,6 @@ open class CheckboxBase: Control, Accessable, BinaryColorable, Errorable {
open var accessibilityLabelEnabled: String? { didSet { didChange() }}
open var accessibilityLabelDisabled: String? { didSet { didChange() }}
private var labelModel: DefaultLabelModel? {
guard let labelText = labelText else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BoldBodyLarge
model.text = labelText
model.surface = surface
model.disabled = disabled
model.attributes = labelTextAttributes
return model
}
private var childModel: DefaultLabelModel? {
guard let childText = childText else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BodyLarge
model.text = childText
model.surface = surface
model.disabled = disabled
model.attributes = childTextAttributes
return model
}
private var errorModel: DefaultLabelModel? {
guard let errorText = errorText, showError else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BodyMedium
model.text = errorText
model.surface = surface
model.disabled = disabled
return model
}
//--------------------------------------------------
// MARK: - Constraints

View File

@ -1,29 +0,0 @@
//
// CheckboxGroupModel.swift
// VDS
//
// Created by Matt Bruce on 8/23/22.
//
import Foundation
public protocol CheckboxGroupModel: SelectorGroupModelable, Errorable where SelectorModelType: CheckboxModel {
}
public struct DefaultCheckboxGroupModel: CheckboxGroupModel {
public typealias SelectorModelType = DefaultCheckboxModel
public var id = UUID()
public var inputId: String?
public var value: AnyHashable?
public var surface: Surface = .light
public var disabled: Bool = false
public var selectors: [SelectorModelType]
public var showError: Bool = false
public var errorText: String?
public init() { selectors = [] }
public init(selectors: [SelectorModelType]){
self.selectors = selectors
}
}

View File

@ -1,123 +0,0 @@
//
// ToggleModel.swift
// VDS
//
// Created by Matt Bruce on 7/22/22.
//
import Foundation
import UIKit
public protocol CheckboxModel: Modelable, FormFieldable, Errorable, DataTrackable, Accessable, Selectable, BinaryColorable {
var labelText: String? { get set }
var labelTextAttributes: [any LabelAttributeModel]? { get set }
var childText: String? { get set }
var childTextAttributes: [any LabelAttributeModel]? { get set }
}
extension CheckboxModel {
public var shouldShowError: Bool {
guard showError && !disabled && errorText?.isEmpty == false else { return false }
return true
}
public var shouldShowLabels: Bool {
guard labelText?.isEmpty == false || childText?.isEmpty == false else { return false }
return true
}
public var labelModel: DefaultLabelModel? {
guard let labelText = labelText else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BoldBodyLarge
model.text = labelText
model.surface = surface
model.disabled = disabled
model.attributes = labelTextAttributes
return model
}
public var childModel: DefaultLabelModel? {
guard let childText = childText else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BodyLarge
model.text = childText
model.surface = surface
model.disabled = disabled
model.attributes = childTextAttributes
return model
}
public var errorModel: DefaultLabelModel? {
guard let errorText = errorText, showError else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BodyMedium
model.text = errorText
model.surface = surface
model.disabled = disabled
return model
}
}
public struct DefaultCheckboxModel: CheckboxModel {
public var id = UUID()
public var selected: Bool = false
public var labelText: String?
public var labelTextAttributes: [any LabelAttributeModel]?
public var childText: String?
public var childTextAttributes: [any LabelAttributeModel]?
public var showError: Bool = false
public var errorText: String?
public var inputId: String?
public var value: AnyHashable?
public var surface: Surface = .light
public var disabled: Bool = false
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 init() {}
public static func == (lhs: DefaultCheckboxModel, rhs: DefaultCheckboxModel) -> Bool {
lhs.isEqual(rhs)
}
public func isEqual(_ equatable: DefaultCheckboxModel) -> Bool {
return id == equatable.id
&& selected == equatable.selected
&& labelText == equatable.labelText
&& labelTextAttributes == equatable.labelTextAttributes
&& childText == equatable.childText
&& childTextAttributes == equatable.childTextAttributes
&& showError == equatable.showError
&& errorText == equatable.errorText
&& inputId == equatable.inputId
&& value == equatable.value
&& surface == equatable.surface
&& disabled == equatable.disabled
&& dataAnalyticsTrack == equatable.dataAnalyticsTrack
&& dataClickStream == equatable.dataClickStream
&& dataTrack == equatable.dataTrack
&& accessibilityHintEnabled == equatable.accessibilityHintEnabled
&& accessibilityHintDisabled == equatable.accessibilityHintDisabled
&& accessibilityValueEnabled == equatable.accessibilityValueEnabled
&& accessibilityValueDisabled == equatable.accessibilityValueDisabled
&& accessibilityLabelEnabled == equatable.accessibilityLabelEnabled
&& accessibilityLabelDisabled == equatable.accessibilityLabelDisabled
}
}

View File

@ -1,40 +0,0 @@
//
// VDSLabelModel.swift
// VDS
//
// Created by Matt Bruce on 7/28/22.
//
import Foundation
import UIKit
public protocol LabelModel: Modelable, Labelable, Equatable, AnyEquatable {
var text: String? { get set }
var attributes: [any LabelAttributeModel]? { get set }
}
public struct DefaultLabelModel: LabelModel {
public static func == (lhs: DefaultLabelModel, rhs: DefaultLabelModel) -> Bool {
lhs.isEqual(rhs)
}
public func isEqual(_ equatable: DefaultLabelModel) -> Bool {
return id == equatable.id
&& attributes == equatable.attributes
&& text == equatable.text
&& surface == equatable.surface
&& typograpicalStyle == equatable.typograpicalStyle
&& textPosition == equatable.textPosition
&& surface == equatable.surface
&& disabled == equatable.disabled
}
public var id = UUID()
public var text: String?
public var attributes: [any LabelAttributeModel]?
public var typograpicalStyle: TypographicalStyle = .BodySmall
public var textPosition: TextPosition = .left
public var surface: Surface = .light
public var disabled: Bool = false
public init(){}
}

View File

@ -1,26 +0,0 @@
//
// RadioBoxGroupModel.swift
// VDS
//
// Created by Matt Bruce on 8/23/22.
//
import Foundation
public protocol RadioBoxGroupModel: SelectorGroupSelectedModelable where SelectorModelType: RadioBoxModel { }
public struct DefaultRadioBoxGroupModel: RadioBoxGroupModel {
public typealias SelectorModelType = DefaultRadioBoxModel
public var id = UUID()
public var inputId: String?
public var value: AnyHashable?
public var surface: Surface = .light
public var disabled: Bool = false
public var selectors: [SelectorModelType]
public var showError: Bool = false
public var errorText: String?
public init() { selectors = [] }
public init(selectors: [SelectorModelType]){
self.selectors = selectors
}
}

View File

@ -1,122 +0,0 @@
//
// RadioBoxModel.swift
// VDS
//
// Created by Matt Bruce on 8/23/22.
//
import Foundation
import UIKit
public protocol RadioBoxModel: Modelable, FormFieldable, DataTrackable, Accessable, Selectable, BinaryColorable {
var text: String { get set }
var textAttributes: [any LabelAttributeModel]? { get set }
var subText: String? { get set }
var subTextAttributes: [any LabelAttributeModel]? { get set }
var subTextRight: String? { get set }
var subTextRightAttributes: [any LabelAttributeModel]? { get set }
var strikethrough: Bool { get set }
}
extension RadioBoxModel {
public var textModel: DefaultLabelModel {
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BoldBodyLarge
model.text = text
model.surface = surface
model.disabled = disabled
model.attributes = textAttributes
return model
}
public var subTextModel: DefaultLabelModel? {
guard let subText else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BodyLarge
model.text = subText
model.surface = surface
model.disabled = disabled
model.attributes = subTextAttributes
return model
}
public var subTextRightModel: DefaultLabelModel? {
guard let subTextRight else { return nil }
var model = DefaultLabelModel()
model.textPosition = .right
model.typograpicalStyle = .BodyLarge
model.text = subTextRight
model.surface = surface
model.disabled = disabled
model.attributes = subTextRightAttributes
return model
}
}
public struct DefaultRadioBoxModel: RadioBoxModel {
public var id = UUID()
public var selected: Bool = false
public var text: String = "Default Text"
public var textAttributes: [any LabelAttributeModel]?
public var subText: String?
public var subTextAttributes: [any LabelAttributeModel]?
public var subTextRight: String?
public var subTextRightAttributes: [any LabelAttributeModel]?
public var selectedAccentColor: UIColor?
public var strikethrough: Bool = false
public var inputId: String?
public var value: AnyHashable?
public var surface: Surface = .light
public var disabled: Bool = false
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 init() {}
public static func == (lhs: DefaultRadioBoxModel, rhs: DefaultRadioBoxModel) -> Bool {
lhs.isEqual(rhs)
}
public func isEqual(_ equatable: DefaultRadioBoxModel) -> Bool {
return id == equatable.id
&& selected == equatable.selected
&& text == equatable.text
&& textAttributes == equatable.textAttributes
&& subText == equatable.subText
&& subTextAttributes == equatable.subTextAttributes
&& subTextRight == equatable.subTextRight
&& subTextRightAttributes == equatable.subTextRightAttributes
&& selectedAccentColor == equatable.selectedAccentColor
&& strikethrough == equatable.strikethrough
&& inputId == equatable.inputId
&& value == equatable.value
&& surface == equatable.surface
&& disabled == equatable.disabled
&& dataAnalyticsTrack == equatable.dataAnalyticsTrack
&& dataClickStream == equatable.dataClickStream
&& dataTrack == equatable.dataTrack
&& accessibilityHintEnabled == equatable.accessibilityHintEnabled
&& accessibilityHintDisabled == equatable.accessibilityHintDisabled
&& accessibilityValueEnabled == equatable.accessibilityValueEnabled
&& accessibilityValueDisabled == equatable.accessibilityValueDisabled
&& accessibilityLabelEnabled == equatable.accessibilityLabelEnabled
&& accessibilityLabelDisabled == equatable.accessibilityLabelDisabled
}
}

View File

@ -1,30 +0,0 @@
//
// RadioButtonGroupModel.swift
// VDS
//
// Created by Matt Bruce on 8/11/22.
//
import Foundation
public protocol RadioButtonGroupModel: SelectorGroupSelectedModelable, Errorable where SelectorModelType: RadioButtonModel { }
extension RadioButtonGroupModel {
public var errorText: String? { return nil }
}
public struct DefaultRadioButtonGroupModel: RadioButtonGroupModel {
public typealias SelectorModelType = DefaultRadioButtonModel
public var id = UUID()
public var inputId: String?
public var value: AnyHashable?
public var surface: Surface = .light
public var disabled: Bool = false
public var selectors: [SelectorModelType]
public var showError: Bool = false
public var errorText: String?
public init() { selectors = [] }
public init(selectors: [SelectorModelType]){
self.selectors = selectors
}
}

View File

@ -1,128 +0,0 @@
//
// ToggleModel.swift
// VDS
//
// Created by Matt Bruce on 7/22/22.
//
import Foundation
import UIKit
public protocol RadioButtonModel: Modelable, FormFieldable, Errorable, DataTrackable, Accessable, Selectable, BinaryColorable {
var labelText: String? { get set }
var labelTextAttributes: [any LabelAttributeModel]? { get set }
var childText: String? { get set }
var childTextAttributes: [any LabelAttributeModel]? { get set }
}
extension RadioButtonModel {
public var shouldShowError: Bool {
guard showError && !disabled && errorText?.isEmpty == false else { return false }
return true
}
public var shouldShowLabels: Bool {
guard labelText?.isEmpty == false || childText?.isEmpty == false else { return false }
return true
}
public var labelModel: DefaultLabelModel? {
guard let labelText = labelText else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BoldBodyLarge
model.text = labelText
model.surface = surface
model.disabled = disabled
model.attributes = labelTextAttributes
return model
}
public var childModel: DefaultLabelModel? {
guard let childText = childText else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BodyLarge
model.text = childText
model.surface = surface
model.disabled = disabled
model.attributes = childTextAttributes
return model
}
public var errorModel: DefaultLabelModel? {
guard let errorText = errorText, showError else { return nil }
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BodyMedium
model.text = errorText
model.surface = surface
model.disabled = disabled
return model
}
}
public struct DefaultRadioButtonModel: RadioButtonModel {
public var id = UUID()
public var selected: Bool = false
public var labelText: String?
public var labelTextAttributes: [any LabelAttributeModel]?
public var childText: String?
public var childTextAttributes: [any LabelAttributeModel]?
public var showError: Bool = false
public var errorText: String?
public var inputId: String?
public var value: AnyHashable?
public var surface: Surface = .light
public var disabled: Bool = false
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 init() {}
public static func == (lhs: DefaultRadioButtonModel, rhs: DefaultRadioButtonModel) -> Bool {
lhs.isEqual(rhs)
}
public func isEqual(_ equatable: DefaultRadioButtonModel) -> Bool {
return id == equatable.id
&& selected == equatable.selected
&& labelText == equatable.labelText
&& labelTextAttributes == equatable.labelTextAttributes
&& childText == equatable.childText
&& childTextAttributes == equatable.childTextAttributes
&& showError == equatable.showError
&& errorText == equatable.errorText
&& inputId == equatable.inputId
&& value == equatable.value
&& surface == equatable.surface
&& disabled == equatable.disabled
&& dataAnalyticsTrack == equatable.dataAnalyticsTrack
&& dataClickStream == equatable.dataClickStream
&& dataTrack == equatable.dataTrack
&& accessibilityHintEnabled == equatable.accessibilityHintEnabled
&& accessibilityHintDisabled == equatable.accessibilityHintDisabled
&& accessibilityValueEnabled == equatable.accessibilityValueEnabled
&& accessibilityValueDisabled == equatable.accessibilityValueDisabled
&& accessibilityLabelEnabled == equatable.accessibilityLabelEnabled
&& accessibilityLabelDisabled == equatable.accessibilityLabelDisabled
}
}

View File

@ -1,36 +0,0 @@
//
// RadioSwatchGroupModel.swift
// VDS
//
// Created by Matt Bruce on 8/25/22.
//
import Foundation
public protocol RadioSwatchGroupModel: SelectorGroupSelectedModelable, Equatable where SelectorModelType: RadioSwatchModel { }
extension RadioSwatchGroupModel {
public var labelModel: DefaultLabelModel {
var model = DefaultLabelModel()
model.textPosition = .left
model.typograpicalStyle = .BodySmall
model.text = selectedModel?.text ?? " "
model.surface = surface
model.disabled = disabled
return model
}
}
public struct DefaultRadioSwatchGroupModel: RadioSwatchGroupModel {
public typealias SelectorModelType = DefaultRadioSwatchModel
public var id = UUID()
public var inputId: String?
public var value: AnyHashable?
public var surface: Surface = .light
public var disabled: Bool = false
public var selectors: [SelectorModelType]
public init() { selectors = [] }
public init(selectors: [SelectorModelType]){
self.selectors = selectors
}
}

View File

@ -1,47 +0,0 @@
//
// RadioSwatchModel.swift
// VDS
//
// Created by Matt Bruce on 8/25/22.
//
import Foundation
import UIKit
public protocol RadioSwatchModel: Modelable, FormFieldable, DataTrackable, Accessable, Selectable, BinaryColorable, Equatable {
var fillImage: UIImage? { get set }
var primaryColor: UIColor? { get set }
var secondaryColor: UIColor? { get set }
var text: String { get set }
var strikethrough: Bool { get set }
}
public struct DefaultRadioSwatchModel: RadioSwatchModel {
public var id = UUID()
public var selected: Bool = false
public var fillImage: UIImage?
public var primaryColor: UIColor?
public var secondaryColor: UIColor?
public var text: String = ""
public var strikethrough: Bool = false
public var inputId: String?
public var value: AnyHashable?
public var surface: Surface = .light
public var disabled: Bool = false
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 init() {}
}

View File

@ -9,6 +9,19 @@ import Foundation
import UIKit
import VDSColorTokens
import Combine
public enum ToggleTextSize: String, CaseIterable {
case small, large
}
public enum ToggleTextWeight: String, CaseIterable {
case regular, bold
}
public enum ToggleTextPosition: String, CaseIterable {
case left, right
}
/**
A custom implementation of Apple's UISwitch.
@ -17,7 +30,6 @@ import Combine
Container: The background of the toggle control.
Knob: The circular indicator that slides on the container.
*/
public class Toggle: ToggleBase{
public override func initialSetup() {
super.initialSetup()

View File

@ -1,91 +0,0 @@
//
// ToggleModel.swift
// VDS
//
// Created by Matt Bruce on 7/22/22.
//
import Foundation
import UIKit
public enum ToggleTextSize: String, CaseIterable {
case small, large
}
public enum ToggleTextWeight: String, CaseIterable {
case regular, bold
}
public enum ToggleTextPosition: String, CaseIterable {
case left, right
}
public protocol ToggleModel: Modelable, FormFieldable, DataTrackable, Accessable, BinaryColorable {
var showText: Bool { get set }
var on: Bool { get set }
var offText: String { get set }
var onText: String { get set }
var textWeight: ToggleTextWeight { get set }
var textSize: ToggleTextSize { get set }
var textPosition: ToggleTextPosition { get set }
}
extension ToggleModel {
public var userTrueColor: Bool { return on }
public var labelModel: DefaultLabelModel {
var typograpicalStyle: TypographicalStyle
if textSize == .small {
if textWeight == .bold {
typograpicalStyle = .BoldBodySmall
} else {
typograpicalStyle = .BodySmall
}
} else {
if textWeight == .bold {
typograpicalStyle = .BoldBodyLarge
} else {
typograpicalStyle = .BodyLarge
}
}
var model = DefaultLabelModel()
model.textPosition = textPosition == .left ? .left : .right
model.typograpicalStyle = typograpicalStyle
model.text = on ? onText : offText
model.surface = surface
model.disabled = disabled
return model
}
}
public struct DefaultToggleModel: ToggleModel {
public var id = UUID()
public var on: Bool = false
public var showText: Bool = false
public var offText: String = "Off"
public var onText: String = "On"
public var textWeight: ToggleTextWeight = .regular
public var textSize: ToggleTextSize = .small
public var textPosition: ToggleTextPosition = .left
public var inputId: String?
public var value: AnyHashable? = true
public var surface: Surface = .light
public var disabled: Bool = false
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 init() { }
}