20 lines
756 B
Swift
20 lines
756 B
Swift
// Shared ActivityAttributes definition.
|
|
// NOTE: This file must belong to BOTH the DeepWorkTimer and TimeWidgetExtension targets.
|
|
// Because this project uses Xcode 16 file system synchronized groups, a physical copy
|
|
// lives in DeepWorkTimer/Models/ (for the app) and in TimeWidget/ (for the extension).
|
|
// Keep both files identical.
|
|
|
|
import ActivityKit
|
|
import Foundation
|
|
|
|
struct TimerAttributes: ActivityAttributes {
|
|
// ContentState holds data the system can update while the activity is live.
|
|
struct ContentState: Codable, Hashable {
|
|
// The exact moment the timer expires — drives Text(timerInterval:) real-time countdown.
|
|
var endDate: Date
|
|
}
|
|
|
|
// Fixed for the lifetime of this activity.
|
|
var sessionName: String
|
|
}
|