AppSnapshot.fromJsonSafe constructor

AppSnapshot.fromJsonSafe(
  1. Map<String, dynamic> json
)

Safe deserialization: every field is validated independently. A corrupt field falls back to its default — never throws.

Implementation

factory AppSnapshot.fromJsonSafe(Map<String, dynamic> json) {
  return AppSnapshot(
    snapshotId: _safeString(json['snapshotId']) ?? 'unknown',
    routeStack: _safeStringList(json['routeStack']) ?? ['/'],
    scrollPositions: _safeDoubleMap(json['scrollPositions']) ?? {},
    formInputs: _safeMap(json['formInputs']) ?? {},
    customState: _safeMap(json['customState']) ?? {},
    timestamp: _safeDateTime(json['timestamp']) ?? DateTime.now(),
  );
}