Merge branch 'develop' of https://gitlab.verizon.com/BPHV_MIPS/mvm_core_ui.git into feature/vds_batch_three
This commit is contained in:
commit
54c431534b
@ -6,7 +6,7 @@
|
||||
// Copyright © 2020 Verizon Wireless. All rights reserved.
|
||||
//
|
||||
// A base class that has common list item boilerplate model stuffs.
|
||||
|
||||
import MVMCore
|
||||
|
||||
@objcMembers open class ListItemModel: ContainerModel, ListItemModelProtocol {
|
||||
//--------------------------------------------------
|
||||
@ -18,6 +18,7 @@
|
||||
public var hideArrow: Bool?
|
||||
public var line: LineModel?
|
||||
public var style: ListItemStyle?
|
||||
public var gone: Bool = false
|
||||
public var accessibilityTraits: UIAccessibilityTraits?
|
||||
public var accessibilityValue: String?
|
||||
public var accessibilityText: String?
|
||||
@ -31,6 +32,7 @@
|
||||
case hideArrow
|
||||
case line
|
||||
case style
|
||||
case gone
|
||||
case accessibilityTraits
|
||||
case accessibilityValue
|
||||
case accessibilityText
|
||||
@ -107,6 +109,7 @@
|
||||
hideArrow = try typeContainer.decodeIfPresent(Bool.self, forKey: .hideArrow)
|
||||
line = try typeContainer.decodeIfPresent(LineModel.self, forKey: .line)
|
||||
style = try typeContainer.decodeIfPresent(ListItemStyle.self, forKey: .style)
|
||||
gone = try typeContainer.decodeIfPresent(Bool.self, forKey: .gone) ?? false
|
||||
accessibilityTraits = try typeContainer.decodeIfPresent(UIAccessibilityTraits.self, forKey: .accessibilityTraits)
|
||||
accessibilityValue = try typeContainer.decodeIfPresent(String.self, forKey: .accessibilityValue)
|
||||
try super.init(from: decoder)
|
||||
@ -120,6 +123,7 @@
|
||||
try container.encodeIfPresent(hideArrow, forKey: .hideArrow)
|
||||
try container.encodeIfPresent(line, forKey: .line)
|
||||
try container.encodeIfPresent(style, forKey: .style)
|
||||
try container.encode(gone, forKey: .gone)
|
||||
try container.encodeIfPresent(accessibilityTraits, forKey: .accessibilityTraits)
|
||||
try container.encodeIfPresent(accessibilityValue, forKey: .accessibilityValue)
|
||||
try container.encodeIfPresent(accessibilityText, forKey: .accessibilityText)
|
||||
|
||||
@ -20,6 +20,7 @@ public protocol ListItemModelProtocol: ContainerModelProtocol, AccessibilityMode
|
||||
var action: ActionModelProtocol? { get set }
|
||||
var hideArrow: Bool? { get set }
|
||||
var style: ListItemStyle? { get set }
|
||||
var gone: Bool { get set }
|
||||
}
|
||||
|
||||
// Not a strict requirement.
|
||||
|
||||
@ -135,6 +135,10 @@ open class MoleculeListTemplate: ThreeLayerTableViewController, TemplateProtocol
|
||||
}
|
||||
}
|
||||
|
||||
public func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
|
||||
return (getMoleculeInfo(for: indexPath)?.molecule as? ListItemModelProtocol)?.gone == true ? 0 : UITableView.automaticDimension
|
||||
}
|
||||
|
||||
open func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
|
||||
guard let moleculeInfo = getMoleculeInfo(for: indexPath),
|
||||
let estimatedHeight = (moleculeInfo.class as? MoleculeViewProtocol.Type)?.estimatedHeight(with: moleculeInfo.molecule, delegateObject() as? MVMCoreUIDelegateObject)
|
||||
@ -152,7 +156,7 @@ open class MoleculeListTemplate: ThreeLayerTableViewController, TemplateProtocol
|
||||
guard let moleculeInfo = getMoleculeInfo(for: indexPath),
|
||||
let cell = tableView.dequeueReusableCell(withIdentifier: moleculeInfo.identifier)
|
||||
else { return UITableViewCell() }
|
||||
|
||||
cell.isHidden = (getMoleculeInfo(for: indexPath)?.molecule as? ListItemModelProtocol)?.gone == true
|
||||
(cell as? MoleculeViewProtocol)?.reset()
|
||||
(cell as? MoleculeListCellProtocol)?.setLines(with: templateModel?.line, delegateObject: delegateObjectIVar, additionalData: nil, indexPath: indexPath)
|
||||
if let moleculeView = cell as? MoleculeViewProtocol {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user