| 12345678910111213141516171819202122232425262728293031323334 |
- import CoreData
- import Foundation
- extension Home.StateModel {
- @MainActor func setupGlucoseController() {
- glucoseControllerDelegate.onContentChange = { [weak self] in
- Task { @MainActor in
- self?.updateGlucoseFromController()
- }
- }
- do {
- try glucoseController.performFetch()
- updateGlucoseFromController()
- } catch {
- debug(.default, "\(DebuggingIdentifiers.failed) Failed to perform glucose fetch: \(error)")
- }
- }
- @MainActor func updateGlucoseFromController() {
- guard let objects = glucoseController.fetchedObjects else { return }
- glucoseFromPersistence = objects
- latestTwoGlucoseValues = Array(objects.suffix(2))
- updateGlucoseChartYAxis(glucoseValues: objects)
- }
- /// Called from `MainChartView` on `.onChange(of: units)` to recompute the glucose-derived chart state.
- func setupGlucoseArray() {
- Task { @MainActor in
- updateGlucoseFromController()
- }
- }
- }
|