/* Options: Date: 2025-02-05 19:58:45 SwiftVersion: 5.0 Version: 5.140 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.clubmanagercentral.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: WebService.GetHeaderMenuRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/api/Web/GetHeaderMenu", "POST,GET") public class GetHeaderMenuRequest : IReturn, Codable { public typealias Return = HeaderMenu public var userId:Int? public var memberId:Int? required public init(){} } public class HeaderMenu : Codable { public var header:String? public var headerMenuItems:[HeaderMenuItem] = [] required public init(){} } public class HeaderMenuItem : Codable { public var name:String? public var url:String? public var isCurrent:Bool? public var feature:Feature? public var hideFeature:Bool? public var roles:[String] = [] public var subHeaderMenuItems:[SubHeaderMenuItem] = [] required public init(){} } // @Flags() public enum Feature : Int, Codable { case None = 0 case Standard = 1 case Bookings = 2 case Rota = 4 case GoCardless = 8 case HomeScreen = 16 case EPos = 32 case Attendance = 64 case Sales = 128 case PaymentCollections = 256 case MailChimp = 512 case MultiSite = 1024 case AccountingDashboard = 2048 case OtherDashboards = 4096 case Reports = 8192 case AdvancedAccounting = 16384 case MemberLicenseDates = 32768 case FaceRecognition = 65536 case MemberAccountCreation = 131072 case Automation = 262144 case FacebookMarketing = 524288 case Grades = 1048576 case ZoomIntegration = 2097152 case SalesTargetChart = 4194304 case CustomApp = 8388608 case CustomAttributesOnPortal = 16777216 case NoExport = 33554432 case EnterpriseClubPerformanceDashboards = 67108864 } public class SubHeaderMenuItem : Codable { public var name:String? public var Description:String? public var url:String? public var icon:String? public var roles:[String] = [] public var feature:Feature? public var hideForCMGo:Bool? public var showFeatureUnavailable:Bool? public var hasIcon:Bool? public var hasFontAwesomeIcon:Bool? required public init(){} }