Merge branch 'release/20_0_3' into 'develop'

release/20_0_3 hotfix merge


See merge request https://gitlab.verizon.com/BPHV_MIPS/mvm_core_ui/-/merge_requests/1139
This commit is contained in:
Hedden, Kyle Matthew 2024-07-09 14:53:22 +00:00
commit 6e88ae0b62
4 changed files with 14 additions and 5 deletions

View File

@ -108,8 +108,7 @@ extension TabsListItemModel: AddMolecules {
public func moleculesToAdd() -> AddMolecules.AddParameters? {
guard addedMolecules == nil else { return nil }
let index = tabs.selectedIndex
guard molecules.count >= index else { return nil }
let addedMolecules = molecules[index]
guard let addedMolecules = molecules[safe: index] else { return nil }
self.addedMolecules = addedMolecules
return (addedMolecules, .below)
}

View File

@ -361,7 +361,7 @@ open class Carousel: View {
}
func trackSwipeActionAnalyticsforIndex(_ index : Int){
guard let itemModel = molecules?[index],
guard let itemModel = molecules?[safe:index],
let viewControllerObject = delegateObject?.moleculeDelegate as? MVMCoreViewControllerProtocol else { return }
MVMCoreUILoggingHandler.shared()?.defaultLogAction(forController: viewControllerObject, actionInformation: itemModel.toJSON(), additionalData: nil)
}

View File

@ -52,8 +52,8 @@ open class ThreeLayerTableViewController: ProgrammaticTableViewController, Rotor
bottomView.updateView(width)
showFooter(width)
}
tableView.visibleCells.forEach { cell in
(cell as? MVMCoreViewProtocol)?.updateView(width)
MVMCoreUIUtility.findParentViews(by: (UITableViewCell & MVMCoreViewProtocol).self, views: tableView.subviews).forEach { view in
view.updateView(width)
}
}

View File

@ -60,6 +60,16 @@ public extension MVMCoreUIUtility {
return findViews(by: type, views: queue, excludedViews: excludedViews) + matching
}
static func findParentViews<T>(by type: T.Type, views: [UIView]) -> [T] {
return views.reduce(into: [T]()) { matchingViews, view in
if let view = view as? T {
return matchingViews.append(view) // If this view is the type stop here and return, ignoring its children.
}
// Otherwise check downstream.
matchingViews += findParentViews(by: type, views: view.subviews)
}
}
@MainActor
static func visibleNavigationBarStlye() -> NavigationItemStyle? {
if let navController = NavigationController.navigationController(),