CardLayout.fromJson constructor

CardLayout.fromJson(
  1. Map<String, dynamic> json,
  2. String path
)

Implementation

factory CardLayout.fromJson(Map<String, dynamic> json, String path) {
  final badgeNodes = objects(json, 'badges', path);
  final metaNodes = objects(json, 'meta', path);
  final leading = object(json, 'leading', path);

  return CardLayout(
    titleField: _slotField(json, 'title', path),
    subtitleField: _slotField(json, 'subtitle', path),
    leading: leading == null
        ? null
        : CardLeading.fromJson(leading, '$path.leading'),
    badges: List.generate(
      badgeNodes.length,
      (index) =>
          CardBadge.fromJson(badgeNodes[index], '$path.badges[$index]'),
    ),
    meta: List.generate(
      metaNodes.length,
      (index) => CardMeta.fromJson(metaNodes[index], '$path.meta[$index]'),
    ),
  );
}