Changes in init method and spacing

This commit is contained in:
Subhankar Acharya 2020-02-25 20:11:22 +05:30
parent fea1c2e997
commit 54782b1871
2 changed files with 22 additions and 20 deletions

View File

@ -48,13 +48,12 @@ import Foundation
subHeadline.setWithModel(model.subHeadline, delegateObject, additionalData)
body.setWithModel(model.body, delegateObject, additionalData)
link.setWithModel(model.link, delegateObject, additionalData)
let stackModel = StackModel(molecules: [StackItemModel(gone: !eyebrow.hasText),
StackItemModel(gone: !headline.hasText),
StackItemModel(gone: !subHeadline.hasText),
StackItemModel(gone: !body.hasText),
StackItemModel(gone: (link.titleLabel?.text?.count ?? 0) == 0)])
let stackModel = StackModel(molecules: [StackItemModel(spacing: 2, gone: !eyebrow.hasText),
StackItemModel(spacing: 2, gone: !headline.hasText),
StackItemModel(spacing: 2, gone: !subHeadline.hasText),
StackItemModel(spacing: 2, gone: !body.hasText),
StackItemModel(spacing: 2, gone: (link.titleLabel?.text?.count ?? 0) == 0)])
stack.model = stackModel
stackModel.spacing = 2
stack.restack()
}
@ -64,6 +63,9 @@ import Foundation
open override func reset() {
super.reset()
eyebrow.styleB3(true)
headline.styleH3(true)
subHeadline.styleB1(true)
body.styleB2(true)
}
}

View File

@ -15,8 +15,8 @@ public class ListOneColumnFullWidthTextAllTextAndLinksModel: ListItemModel, Mole
public var subHeadline: LabelModel?
public var body: LabelModel?
public var link : LinkModel?
public init(eyebrow:LabelModel, headline: LabelModel, subHeadline: LabelModel, body: LabelModel, link: LinkModel) {
public init(eyebrow: LabelModel? = nil, headline: LabelModel? = nil, subHeadline: LabelModel? = nil, body: LabelModel? = nil, link: LinkModel? = nil) {
self.eyebrow = eyebrow
self.headline = headline
self.subHeadline = subHeadline
@ -36,22 +36,22 @@ public class ListOneColumnFullWidthTextAllTextAndLinksModel: ListItemModel, Mole
required public init(from decoder: Decoder) throws {
let typeContainer = try decoder.container(keyedBy: CodingKeys.self)
eyebrow = try typeContainer.decode(LabelModel.self, forKey: .eyebrow)
headline = try typeContainer.decode(LabelModel.self, forKey: .headline)
subHeadline = try typeContainer.decode(LabelModel.self, forKey: .subHeadline)
body = try typeContainer.decode(LabelModel.self, forKey: .body)
link = try typeContainer.decode(LinkModel.self, forKey: .link)
eyebrow = try typeContainer.decodeIfPresent(LabelModel.self, forKey: .eyebrow)
headline = try typeContainer.decodeIfPresent(LabelModel.self, forKey: .headline)
subHeadline = try typeContainer.decodeIfPresent(LabelModel.self, forKey: .subHeadline)
body = try typeContainer.decodeIfPresent(LabelModel.self, forKey: .body)
link = try typeContainer.decodeIfPresent(LinkModel.self, forKey: .link)
try super.init(from: decoder)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
try container.encode(moleculeName, forKey: .moleculeName)
try container.encode(eyebrow, forKey: .eyebrow)
try container.encode(headline, forKey: .headline)
try container.encode(subHeadline, forKey: .subHeadline)
try container.encode(body, forKey: .body)
try container.encode(link, forKey: .link)
try container.encodeIfPresent(moleculeName, forKey: .moleculeName)
try container.encodeIfPresent(eyebrow, forKey: .eyebrow)
try container.encodeIfPresent(headline, forKey: .headline)
try container.encodeIfPresent(subHeadline, forKey: .subHeadline)
try container.encodeIfPresent(body, forKey: .body)
try container.encodeIfPresent(link, forKey: .link)
}
}