KMAdvertisementModel.swift 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. //
  2. // KMAdvertisementModel.swift
  3. // KMAdvertisement
  4. //
  5. // Created by lizhe on 2022/11/30.
  6. //
  7. @objcMembers public class KMAdvertisementInfo: NSObject, Codable {
  8. public var recommondContent: KMAdvertisementContent?
  9. public var advertisement: KMAdvertisementItem?
  10. public var remoteControl: KMAdvertisementRemoteControl?
  11. public var discountRecommond: KMAdvertisementItem?
  12. }
  13. @objcMembers public class KMAdvertisementContent: NSObject, Codable {
  14. public var recommondContentOther: KMAdvertisementItem?
  15. public var recommondContentPDFPro: KMAdvertisementItem?
  16. }
  17. @objcMembers public class KMAdvertisementItem: NSObject, Codable {
  18. public var version: String?
  19. public var name: Language?
  20. public var content: [KMAdvertisementItemInfo]?
  21. }
  22. @objcMembers public class KMAdvertisementRemoteControl: NSObject, Codable {
  23. var showMenuHelpInfo: String?
  24. }
  25. @objcMembers public class KMAdvertisementItemInfo: NSObject, Codable {
  26. var index: Int?
  27. var show: String? //是否显示,内部有做了时间区间判断
  28. var subscriptionType: String? //类型
  29. var showType: KMAdvertisementShowType?
  30. var startTime: String?
  31. var endTime: String?
  32. var versionKey: String? //版本号,唯一标识符
  33. var showCloseBtn: String? //是否显示关闭按钮,(左下角广告需要)
  34. var image: Image? //APP互推,常规状态下的图片
  35. var iconImage: String? //广告显示图片(自适应多语)
  36. var name: Language? //名称(自适应多语)
  37. var tooltip: Language? //提示语(自适应多语)
  38. var linkURL: Language? //跳转链接(自适应多语)
  39. //Firebase
  40. var firebaseEvent: String?
  41. var firebasePropertyKey: String?
  42. var firebasePropertyValue: String?
  43. public class Image: NSObject, Codable {
  44. public let zh_TW: String?
  45. public let hover_Dark: String?
  46. public let hover_Light: String?
  47. public let zh_CN: String?
  48. public let normal_Light: String?
  49. public let normal_Dark: String?
  50. }
  51. }
  52. public class Language: NSObject, Codable {
  53. var en: String?
  54. var zh_TW: String?
  55. var zh_CN: String?
  56. }
  57. //@objcMembers public class KMAdvertisementModel: NSObject, Codable {
  58. // public var appName: KMAdvertisementAppNameType = .FilmageEditorMac //产品名
  59. // public var platform: KMAdvertisementPlatformType = .Mac //平台
  60. // public var showType: KMAdvertisementShowType = .view //显示类型
  61. // public let startTime: String? //开始时间 时间戳
  62. // public let endTime: String? //结束时间 时间戳
  63. // public let version: String? //小于等于此版本生效
  64. // public let hidden: Bool? //是否显示
  65. // let subscribeType: KMAdvertisementSubscribeType? //是否订阅
  66. // public var content: [KMAdvertisementModelSection]?
  67. //}
  68. //
  69. //@objcMembers public class KMAdvertisementModelSection: NSObject, Codable {
  70. // public let sectionTitle: KMAdvertisementModelItem.Text?
  71. // public var content: [KMAdvertisementModelItem]?
  72. //}
  73. //
  74. //@objcMembers public class KMAdvertisementModelItem: NSObject, Codable {
  75. // public var productID: String?
  76. // public let startTime: String? //开始时间 时间戳
  77. // public let endTime: String? //结束时间 时间戳
  78. // public var hidden: Bool?
  79. //
  80. // public var index: Int?
  81. // public let title: Text?
  82. // public let imageURL: Image?
  83. // public let ipadImageURL: Image?
  84. // public let linkURL: Language?
  85. // public let tips: Language?
  86. // public let button: Text?
  87. // public var actionType: KMAdvertisementActionType = .URL
  88. //
  89. // public struct Text: Codable {
  90. // public let font: Font?
  91. // public let color: Color?
  92. // public let background: Background?
  93. // public let language: Language?
  94. // }
  95. //
  96. // public struct Font: Codable {
  97. // public let name: String?
  98. // public let size: Int?
  99. // }
  100. //
  101. // public struct Color: Codable {
  102. // let height: ColorState?
  103. // let normal: ColorState?
  104. //
  105. // struct ColorState: Codable {
  106. // public let dark: ColorInfo?
  107. // public let universal: ColorInfo?
  108. //
  109. // struct ColorInfo: Codable {
  110. // public var hex: String?
  111. // public var alpha: Float?
  112. // }
  113. // }
  114. // }
  115. //
  116. // public struct Background: Codable {
  117. // let color: Color?
  118. // let layer: Layer?
  119. //
  120. // struct Layer: Codable {
  121. // public let cornerRadius: CGFloat?
  122. // public let borderWidth: CGFloat?
  123. // public let borderColor: Color?
  124. // }
  125. // }
  126. //
  127. // public struct Image: Codable {
  128. // public let height: ImageInfo?
  129. // public let normal: ImageInfo?
  130. // public let background: Background?
  131. // }
  132. //
  133. // public struct ImageInfo: Codable {
  134. // public let dark: Language?
  135. // public let universal: Language?
  136. // }
  137. //
  138. // public class Language: NSObject, Codable {
  139. // public let en: String?
  140. // public let zh_TW: String?
  141. // public let zh_CN: String?
  142. // }
  143. //}