tabsListItem parent protocol conformance
This commit is contained in:
parent
1cb490f822
commit
91081cf6a6
@ -9,7 +9,7 @@
|
|||||||
import UIKit
|
import UIKit
|
||||||
|
|
||||||
|
|
||||||
public class TabsListItemModel: ListItemModel, MoleculeModelProtocol {
|
public class TabsListItemModel: ListItemModel, ParentMoleculeModelProtocol {
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
// MARK: - Properties
|
// MARK: - Properties
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
@ -19,6 +19,23 @@ public class TabsListItemModel: ListItemModel, MoleculeModelProtocol {
|
|||||||
var molecules: [[ListItemModelProtocol & MoleculeModelProtocol]]
|
var molecules: [[ListItemModelProtocol & MoleculeModelProtocol]]
|
||||||
private var addedMolecules: [ListItemModelProtocol & MoleculeModelProtocol]?
|
private var addedMolecules: [ListItemModelProtocol & MoleculeModelProtocol]?
|
||||||
|
|
||||||
|
public var children: [MoleculeModelProtocol] {
|
||||||
|
return molecules.flatMap { $0 }
|
||||||
|
}
|
||||||
|
|
||||||
|
public func replaceChildMolecule(with replacementMolecule: MoleculeModelProtocol) throws -> Bool {
|
||||||
|
guard let replacementMolecule = replacementMolecule as? ListItemModelProtocol & MoleculeModelProtocol else { return false }
|
||||||
|
for (tabIndex, _) in molecules.enumerated() {
|
||||||
|
for (elementIndex, _) in molecules[tabIndex].enumerated() {
|
||||||
|
if molecules[tabIndex][elementIndex].id == replacementMolecule.id {
|
||||||
|
molecules[tabIndex][elementIndex] = replacementMolecule
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
// MARK: - Keys
|
// MARK: - Keys
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user