SleepSession.fromMap constructor
SleepSession.fromMap(
- Map<String, dynamic> m
)
Implementation
factory SleepSession.fromMap(Map<String, dynamic> m) {
final stagesRaw = m['stages'] as List<dynamic>? ?? [];
final stages = stagesRaw
.map((s) => SleepStage.fromMap(Map<String, dynamic>.from(s as Map)))
.toList();
final breakdownMap = m['breakdown'] as Map?;
final breakdown = breakdownMap != null
? SleepBreakdown.fromMap(Map<String, dynamic>.from(breakdownMap))
: SleepBreakdown.fromStages(stages);
return SleepSession(
start: DateTime.fromMillisecondsSinceEpoch((m['startMs'] as num).toInt()),
end: DateTime.fromMillisecondsSinceEpoch((m['endMs'] as num).toInt()),
durationMinutes: (m['durationMinutes'] as num?)?.toInt() ?? 0,
source: m['source'] as String? ?? '',
device: m['device'] as String? ?? '',
title: m['title'] as String? ?? '',
notes: m['notes'] as String? ?? '',
stages: stages,
breakdown: breakdown,
);
}