// // AlarmLiveActivityWidget.swift // TheNoiseClockWidget // // Created by Matt Bruce on 2/2/26. // import ActivityKit import SwiftUI import WidgetKit struct AlarmLiveActivityWidget: Widget { var body: some WidgetConfiguration { ActivityConfiguration(for: AlarmActivityAttributes.self) { context in VStack(spacing: 8) { Text("Next Alarm") .font(.caption) .foregroundStyle(.secondary) Text(context.state.label) .font(.headline) Text(context.state.alarmDate, style: .time) .font(.title2.weight(.bold)) } .padding() } dynamicIsland: { context in DynamicIsland { DynamicIslandExpandedRegion(.leading) { Text("Alarm") .font(.caption) .foregroundStyle(.secondary) } DynamicIslandExpandedRegion(.trailing) { Text(context.state.alarmDate, style: .time) .font(.caption2) } DynamicIslandExpandedRegion(.center) { Text(context.state.label) .font(.headline) } DynamicIslandExpandedRegion(.bottom) { Text("Alarm at \(context.state.alarmDate, style: .time)") .font(.caption) } } compactLeading: { Image(systemName: "alarm") } compactTrailing: { Text(context.state.alarmDate, style: .time) .font(.caption2) } minimal: { Image(systemName: "alarm") } } } }