ReplayScenario.fromJson constructor

ReplayScenario.fromJson(
  1. Map<String, dynamic> json, {
  2. String fallbackName = 'replay',
})

Implementation

factory ReplayScenario.fromJson(
  Map<String, dynamic> json, {
  String fallbackName = 'replay',
}) {
  final rawScreen = json['screen'];
  final screen = rawScreen is Map<String, dynamic>
      ? ReplayScreen.fromJson(rawScreen)
      : rawScreen is Map
      ? ReplayScreen.fromJson(Map<String, dynamic>.from(rawScreen))
      : const ReplayScreen();
  final actionsRaw = (json['actions'] as List<dynamic>? ?? const [])
      .whereType<Map<Object?, Object?>>()
      .map((entry) => Map<String, dynamic>.from(entry))
      .toList(growable: false);
  return ReplayScenario(
    name: (json['name'] as String?) ?? fallbackName,
    description: (json['description'] as String?) ?? '',
    screen: screen,
    actions: actionsRaw.map(ReplayAction.fromJson).toList(growable: false),
  );
}