فهرست منبع

Move PushMessage to Model and nest CommandType within TrioRemoteControl

Jonas Björkert 1 سال پیش
والد
کامیت
f15d158908

+ 1 - 1
FreeAPS.xcodeproj/project.pbxproj

@@ -1983,6 +1983,7 @@
 				DD21FCB42C6952AD00AF2C25 /* DecimalPickerSettings.swift */,
 				DD6B7CB32C7B71F700B75029 /* ForecastDisplayType.swift */,
 				DD6B7CB52C7B748B00B75029 /* TotalInsulinDisplayType.swift */,
+				DD9ECB692CA99F6C00AA7C45 /* PushMessage.swift */,
 			);
 			path = Models;
 			sourceTree = "<group>";
@@ -2723,7 +2724,6 @@
 			isa = PBXGroup;
 			children = (
 				DD9ECB672CA99F4500AA7C45 /* TrioRemoteControl.swift */,
-				DD9ECB692CA99F6C00AA7C45 /* PushMessage.swift */,
 			);
 			path = RemoteControl;
 			sourceTree = "<group>";

+ 3 - 29
FreeAPS/Sources/Modules/RemoteControl/PushMessage.swift

@@ -1,34 +1,8 @@
 import Foundation
 
-enum TRCCommandType: String, Codable {
-    case bolus
-    case tempTarget = "temp_target"
-    case cancelTempTarget = "cancel_temp_target"
-    case meal
-    case startOverride = "start_override"
-    case cancelOverride = "cancel_override"
-
-    var description: String {
-        switch self {
-        case .bolus:
-            return "Bolus"
-        case .tempTarget:
-            return "Temporary Target"
-        case .cancelTempTarget:
-            return "Cancel Temporary Target"
-        case .meal:
-            return "Meal"
-        case .startOverride:
-            return "Start Override"
-        case .cancelOverride:
-            return "Cancel Override"
-        }
-    }
-}
-
 struct PushMessage: Codable {
     var user: String
-    var commandType: TRCCommandType
+    var commandType: TrioRemoteControl.CommandType
     var bolusAmount: Decimal?
     var target: Int?
     var duration: Int?
@@ -77,7 +51,7 @@ struct PushMessage: Codable {
     init(from decoder: Decoder) throws {
         let container = try decoder.container(keyedBy: CodingKeys.self)
         user = try container.decode(String.self, forKey: .user)
-        commandType = try container.decode(TRCCommandType.self, forKey: .commandType)
+        commandType = try container.decode(TrioRemoteControl.CommandType.self, forKey: .commandType)
         bolusAmount = try container.decodeIfPresent(Decimal.self, forKey: .bolusAmount)
         target = try container.decodeIfPresent(Int.self, forKey: .target)
         duration = try container.decodeIfPresent(Int.self, forKey: .duration)
@@ -92,7 +66,7 @@ struct PushMessage: Codable {
 
     init(
         user: String,
-        commandType: TRCCommandType,
+        commandType: TrioRemoteControl.CommandType,
         bolusAmount: Decimal? = nil,
         target: Int? = nil,
         duration: Int? = nil,

+ 30 - 0
FreeAPS/Sources/Modules/RemoteControl/TrioRemoteControl.swift

@@ -410,3 +410,33 @@ class TrioRemoteControl: Injectable {
         return false
     }
 }
+
+// MARK: - CommandType Enum
+
+extension TrioRemoteControl {
+    enum CommandType: String, Codable {
+        case bolus
+        case tempTarget = "temp_target"
+        case cancelTempTarget = "cancel_temp_target"
+        case meal
+        case startOverride = "start_override"
+        case cancelOverride = "cancel_override"
+
+        var description: String {
+            switch self {
+            case .bolus:
+                return "Bolus"
+            case .tempTarget:
+                return "Temporary Target"
+            case .cancelTempTarget:
+                return "Cancel Temporary Target"
+            case .meal:
+                return "Meal"
+            case .startOverride:
+                return "Start Override"
+            case .cancelOverride:
+                return "Cancel Override"
+            }
+        }
+    }
+}