1 // Copyright 2015-present 650 Industries. All rights reserved. 2 3 @objc 4 public class DevMenuScreen : DevMenuItem, DevMenuItemsContainerProtocol { 5 let container = DevMenuItemsContainer() 6 public private(set) var screenName: String 7 8 public func getRootItems() -> [DevMenuScreenItem] { 9 return container.getRootItems() 10 } 11 12 public func getAllItems() -> [DevMenuScreenItem] { 13 return container.getAllItems() 14 } 15 16 public func addItem(_ item: DevMenuScreenItem) { 17 container.addItem(item) 18 } 19 20 func serializeItems() -> [[String : Any]] { 21 return container.serializeItems() 22 } 23 24 public init(_ screenName: String) { 25 self.screenName = screenName 26 super.init(type: .Screen) 27 } 28 29 public override func serialize() -> [String : Any] { 30 var dict = super.serialize() 31 dict["screenName"] = screenName 32 dict["items"] = serializeItems() 33 return dict 34 } 35 } 36