From b9267f219fec644168319fe3ff4f88b2ef76cf86 Mon Sep 17 00:00:00 2001 From: Krishna Kishore Bandaru Date: Tue, 8 Dec 2020 20:18:40 +0530 Subject: [PATCH] Updated indexColor key to stringColor & data type to Color --- .../Lists/NumberedListModel.swift | 12 ++++++------ .../StringAndMoleculeModel.swift | 12 ++++++------ .../StringAndMoleculeView.swift | 4 +--- .../Lists/UnOrderedListModel.swift | 12 ++++++------ 4 files changed, 19 insertions(+), 21 deletions(-) diff --git a/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/NumberedListModel.swift b/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/NumberedListModel.swift index 4d00d1b1..f40069a6 100644 --- a/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/NumberedListModel.swift +++ b/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/NumberedListModel.swift @@ -17,18 +17,18 @@ import Foundation case moleculeName case backgroundColor case list - case indexColor + case stringColor } // Numbered list model comes in the from of list = [MoleculeModelProtocol] public required init(from decoder: Decoder) throws { let typeContainer = try decoder.container(keyedBy: CodingKeys.self) - let indexColor = try typeContainer.decodeIfPresent(String.self, forKey: .indexColor) + let stringColor = try typeContainer.decodeIfPresent(Color.self, forKey: .stringColor) let list: [MoleculeModelProtocol] = try typeContainer.decodeModels(codingKey: .list) var models: [MoleculeStackItemModel] = [] for (index, molecule) in list.enumerated() { - models.append(MoleculeStackItemModel(with: StringAndMoleculeModel(string: "\(index+1).", molecule: molecule, indexColor: indexColor))) + models.append(MoleculeStackItemModel(with: StringAndMoleculeModel(string: "\(index+1).", molecule: molecule, stringColor: stringColor))) } super.init(molecules: models, spacing: 0) } @@ -38,15 +38,15 @@ import Foundation try container.encodeIfPresent(backgroundColor, forKey: .backgroundColor) try container.encode(moleculeName, forKey: .moleculeName) - var indexColor: String? + var indexColor: Color? var models: [MoleculeModelProtocol] = [] for molecule in molecules { let stringAndMoleculeModel: StringAndMoleculeModel = ((molecule as! MoleculeStackItemModel).molecule as! StringAndMoleculeModel) - indexColor = stringAndMoleculeModel.indexColor + indexColor = stringAndMoleculeModel.stringColor models.append(stringAndMoleculeModel.molecule) } try container.encodeModels(models, forKey: .list) - try container.encodeIfPresent(indexColor, forKey: .indexColor) + try container.encodeIfPresent(indexColor, forKey: .stringColor) } } diff --git a/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/StringAndMoleculeStack/StringAndMoleculeModel.swift b/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/StringAndMoleculeStack/StringAndMoleculeModel.swift index 0bfe9e2b..c87007f2 100644 --- a/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/StringAndMoleculeStack/StringAndMoleculeModel.swift +++ b/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/StringAndMoleculeStack/StringAndMoleculeModel.swift @@ -13,12 +13,12 @@ public class StringAndMoleculeModel: MoleculeModelProtocol { public var backgroundColor: Color? public var string: String public var molecule: MoleculeModelProtocol - public var indexColor: String? + public var stringColor: Color? - public init(string: String, molecule: MoleculeModelProtocol, indexColor: String?) { + public init(string: String, molecule: MoleculeModelProtocol, stringColor: Color?) { self.string = string self.molecule = molecule - self.indexColor = indexColor + self.stringColor = stringColor } private enum CodingKeys: String, CodingKey { @@ -26,7 +26,7 @@ public class StringAndMoleculeModel: MoleculeModelProtocol { case backgroundColor case string case molecule - case indexColor + case stringColor } public required init(from decoder: Decoder) throws { @@ -34,7 +34,7 @@ public class StringAndMoleculeModel: MoleculeModelProtocol { backgroundColor = try typeContainer.decodeIfPresent(Color.self, forKey: .backgroundColor) string = try typeContainer.decode(String.self, forKey: .string) molecule = try typeContainer.decodeModel(codingKey: .molecule) - indexColor = try typeContainer.decodeIfPresent(String.self, forKey: .indexColor) + stringColor = try typeContainer.decodeIfPresent(Color.self, forKey: .stringColor) } public func encode(to encoder: Encoder) throws { @@ -43,6 +43,6 @@ public class StringAndMoleculeModel: MoleculeModelProtocol { try container.encode(string, forKey: .string) try container.encodeModel(molecule, forKey: .molecule) try container.encode(moleculeName, forKey: .moleculeName) - try container.encodeIfPresent(indexColor, forKey: .indexColor) + try container.encodeIfPresent(stringColor, forKey: .stringColor) } } diff --git a/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/StringAndMoleculeStack/StringAndMoleculeView.swift b/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/StringAndMoleculeStack/StringAndMoleculeView.swift index d8c228ae..29f6ccf6 100644 --- a/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/StringAndMoleculeStack/StringAndMoleculeView.swift +++ b/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/StringAndMoleculeStack/StringAndMoleculeView.swift @@ -84,9 +84,7 @@ open class StringAndMoleculeView: View { super.set(with: model, delegateObject, additionalData) guard let model = model as? StringAndMoleculeModel else { return } label.text = model.string - if let indexColor = model.indexColor { - label.textColor = try? Color(colorString: indexColor)?.uiColor ?? .black - } + label.textColor = model.stringColor?.uiColor molecule.set(with: model.molecule, delegateObject, additionalData) } diff --git a/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/UnOrderedListModel.swift b/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/UnOrderedListModel.swift index 178794d1..067429e3 100644 --- a/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/UnOrderedListModel.swift +++ b/MVMCoreUI/Atomic/Molecules/VerticalCombinationViews/Lists/UnOrderedListModel.swift @@ -19,7 +19,7 @@ import Foundation case backgroundColor case list case bulletChar - case indexColor + case stringColor } // Numbered list model comes in the from of list = [MoleculeModelProtocol] @@ -29,11 +29,11 @@ import Foundation self.bulletChar = bulletChar } - let indexColor = try typeContainer.decodeIfPresent(String.self, forKey: .indexColor) + let stringColor = try typeContainer.decodeIfPresent(Color.self, forKey: .stringColor) let list: [MoleculeModelProtocol] = try typeContainer.decodeModels(codingKey: .list) var models: [MoleculeStackItemModel] = [] for molecule in list { - models.append(MoleculeStackItemModel(with: StringAndMoleculeModel(string: bulletChar, molecule: molecule, indexColor: indexColor))) + models.append(MoleculeStackItemModel(with: StringAndMoleculeModel(string: bulletChar, molecule: molecule, stringColor: stringColor))) } super.init(molecules: models, spacing: 0) } @@ -44,14 +44,14 @@ import Foundation try container.encodeIfPresent(backgroundColor, forKey: .backgroundColor) try container.encode(moleculeName, forKey: .moleculeName) - var indexColor: String? + var stringColor: Color? var models: [MoleculeModelProtocol] = [] for molecule in molecules { let stringAndMoleculeModel: StringAndMoleculeModel = ((molecule as! MoleculeStackItemModel).molecule as! StringAndMoleculeModel) - indexColor = stringAndMoleculeModel.indexColor + stringColor = stringAndMoleculeModel.stringColor models.append(stringAndMoleculeModel.molecule) } try container.encodeModels(models, forKey: .list) - try container.encodeIfPresent(indexColor, forKey: .indexColor) + try container.encodeIfPresent(stringColor, forKey: .stringColor) } }