forked from jbr7rr/MedtrumKit
-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathNewPumpEvent.swift
More file actions
67 lines (61 loc) · 2.88 KB
/
NewPumpEvent.swift
File metadata and controls
67 lines (61 loc) · 2.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
import Foundation
import LoopKit
public extension NewPumpEvent {
static func bolus(dose: DoseEntry, units: Double, date: Date = Date.now) -> NewPumpEvent {
let dateFormatter = ISO8601DateFormatter()
return NewPumpEvent(
date: date,
dose: dose,
raw: "\(DoseType.bolus.rawValue) \(units) \(dateFormatter.string(from: date))".data(using: .utf8) ?? Data([]),
title: LocalizedString("Bolus", comment: "Pump Event title for UnfinalizedDose with doseType of .bolus")
)
}
static func tempBasal(dose: DoseEntry, date: Date = Date.now) -> NewPumpEvent {
let dateFormatter = ISO8601DateFormatter()
return NewPumpEvent(
date: date,
dose: dose,
raw: "\(DoseType.tempBasal.rawValue) \(dose.programmedUnits) \(dateFormatter.string(from: date))"
.data(using: .utf8) ?? Data([]),
title: LocalizedString("Temp Basal", comment: "Pump Event title for UnfinalizedDose with doseType of .tempBasal")
)
}
static func basal(dose: DoseEntry, date: Date = Date.now) -> NewPumpEvent {
let dateFormatter = ISO8601DateFormatter()
return NewPumpEvent(
date: date,
dose: dose,
raw: "\(DoseType.basal.rawValue) \(dateFormatter.string(from: date))".data(using: .utf8) ?? Data([]),
title: LocalizedString("Basal", comment: "Pump Event title for UnfinalizedDose with doseType of .basal")
)
}
static func resume(dose: DoseEntry, date: Date = Date.now) -> NewPumpEvent {
let dateFormatter = ISO8601DateFormatter()
return NewPumpEvent(
date: date,
dose: dose,
raw: "\(DoseType.resume.rawValue) \(dateFormatter.string(from: date))".data(using: .utf8) ?? Data([]),
title: LocalizedString("Resume", comment: "Pump Event title for UnfinalizedDose with doseType of .resume")
)
}
static func suspend(dose: DoseEntry, date: Date = Date.now) -> NewPumpEvent {
let dateFormatter = ISO8601DateFormatter()
return NewPumpEvent(
date: date,
dose: dose,
raw: "\(DoseType.suspend.rawValue) \(dateFormatter.string(from: date))".data(using: .utf8) ?? Data([]),
title: LocalizedString("Suspend", comment: "Pump Event title for UnfinalizedDose with doseType of .suspend")
)
}
static func replacedPump(date: Date = Date.now) -> NewPumpEvent {
let dateFormatter = ISO8601DateFormatter()
return NewPumpEvent(
date: Date.now,
dose: nil,
raw: "PATCH_REPLACE \(dateFormatter.string(from: date))".data(using: .utf8) ?? Data([]),
title: LocalizedString("Patch replace", comment: "Pump Event title for replace patch"),
type: .replaceComponent(componentType: .pump),
alarmType: nil
)
}
}