From 32d3a20232da912de68772f966043cff28938052 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Mon, 3 Jun 2024 14:24:11 -0400 Subject: [PATCH] navigation line dark fix --- .../NavigationBar/NavigationItemModel.swift | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/MVMCoreUI/Atomic/Molecules/NavigationBar/NavigationItemModel.swift b/MVMCoreUI/Atomic/Molecules/NavigationBar/NavigationItemModel.swift index 18aa904e..197c4f9f 100644 --- a/MVMCoreUI/Atomic/Molecules/NavigationBar/NavigationItemModel.swift +++ b/MVMCoreUI/Atomic/Molecules/NavigationBar/NavigationItemModel.swift @@ -23,10 +23,21 @@ open class NavigationItemModel: NavigationItemModelProtocol, MoleculeModelProtoc open var title: String? open var hidden: Bool? - open var line: LineModel? open var hidesSystemBackButton: Bool? open var style: NavigationItemStyle? + open var _line: LineModel? + open var line: LineModel? { + get { + let line = _line ?? LineModel(type: .secondary) + line.inverted = style == .dark + return line + } + set { + _line = newValue + } + } + open var _backgroundColor: Color? open var backgroundColor: Color? { get { @@ -100,7 +111,7 @@ open class NavigationItemModel: NavigationItemModelProtocol, MoleculeModelProtoc hidden = try typeContainer.decodeIfPresent(Bool.self, forKey: .hidden) backgroundColor = try typeContainer.decodeIfPresent(Color.self, forKey: .backgroundColor) _tintColor = try typeContainer.decodeIfPresent(Color.self, forKey: .tintColor) - line = try typeContainer.decodeIfPresent(LineModel.self, forKey: .line) + _line = try typeContainer.decodeIfPresent(LineModel.self, forKey: .line) hidesSystemBackButton = try typeContainer.decodeIfPresent(Bool.self, forKey: .hidesSystemBackButton) alwaysShowBackButton = try typeContainer.decodeIfPresent(Bool.self, forKey: .alwaysShowBackButton) backButton = try typeContainer.decodeModelIfPresent(codingKey: .backButton) @@ -119,7 +130,7 @@ open class NavigationItemModel: NavigationItemModelProtocol, MoleculeModelProtoc try container.encodeIfPresent(hidden, forKey: .hidden) try container.encodeIfPresent(backgroundColor, forKey: .backgroundColor) try container.encodeIfPresent(_tintColor, forKey: .tintColor) - try container.encodeIfPresent(line, forKey: .line) + try container.encodeIfPresent(_line, forKey: .line) try container.encodeIfPresent(hidesSystemBackButton, forKey: .hidesSystemBackButton) try container.encodeIfPresent(alwaysShowBackButton, forKey: .alwaysShowBackButton) try container.encodeModelIfPresent(backButton, forKey: .backButton)