$UikListTilePropsFromJson function

UikListTileProps $UikListTilePropsFromJson(
  1. Map<String, dynamic> json
)

Implementation

UikListTileProps $UikListTilePropsFromJson(Map<String, dynamic> json) {
  AlignmentGeometry alignFunction(String alignment) {
    switch (alignment) {
      case "Alignment.bottomCenter":
        return Alignment.bottomCenter;
      case "Alignment.bottomLeft":
        return Alignment.bottomLeft;
      case "Alignment.bottomRight":
        return Alignment.bottomRight;
      case "Alignment.center":
        return Alignment.center;
      case "Alignment.centerLeft":
        return Alignment.centerLeft;
      case "Alignment.centerRight":
        return Alignment.centerRight;
      case "Alignment.topRight":
        return Alignment.topRight;
      case "Alignment.topLeft":
        return Alignment.topLeft;
      default:
        return Alignment.topCenter;
    }
  }

  final UikListTileProps uikListTileProps = UikListTileProps();

  final String? id = jsonConvert.convert<String>(json['id']);

  final double? leftMargin = jsonConvert.convert<double>(json["leftMargin"]);
  final double? rightMargin = jsonConvert.convert<double>(json["rightMargin"]);
  final double? topMargin = jsonConvert.convert<double>(json["topMargin"]);
  final double? bottomMargin =
      jsonConvert.convert<double>(json["bottomMargin"]);
  final double? trailingHeight =
      jsonConvert.convert<double>(json["trailingHeight"]);
  final double? trailingWidth =
      jsonConvert.convert<double>(json["trailingWidth"]);

  final String? leading = jsonConvert.convert<String>(json["leading"]);
  final String? title = jsonConvert.convert<String>(json["title"]);
  final String? subtitle = jsonConvert.convert<String>(json["subtitle"]);
  final String? trailing = jsonConvert.convert<String>(json["trailing"]);
  final String? isGradient = jsonConvert.convert<String>(json["isGradient"]);
  final List<dynamic>? gradientColors =
      jsonConvert.convert<List<dynamic>>(json["gradientColors"]);

  final String? bgImage = jsonConvert.convert<String>(json['bgImage']);
  if (bgImage != null) {
    uikListTileProps.bgImage = bgImage;
  }

  if (id != null) {
    uikListTileProps.id = id;
  }

  if (leftMargin != null) {
    uikListTileProps.leftMargin = leftMargin;
  }

  if (rightMargin != null) {
    uikListTileProps.rightMargin = rightMargin;
  }

  if (topMargin != null) {
    uikListTileProps.topMargin = topMargin;
  }

  if (bottomMargin != null) {
    uikListTileProps.bottomMargin = bottomMargin;
  }

  if (trailingWidth != null) {
    uikListTileProps.trailingWidth = trailingWidth;
  }

  if (trailingHeight != null) {
    uikListTileProps.trailingHeight = trailingHeight;
  }

  final bool? isborder = jsonConvert.convert<bool>(json["isBorder"]);
  if (isborder != null) {
    uikListTileProps.isborder = isborder;
    final double? borderWidth =
        jsonConvert.convert<double>(json["borderWidth"]);
    if (borderWidth != null) {
      uikListTileProps.borderWidth = borderWidth;
    }
    final String? borderColor =
        jsonConvert.convert<String>(json['borderColor']);
    if (borderColor != null) {
      uikListTileProps.borderColor = borderColor.toColor();
    }
  }

  final String? bgColor = jsonConvert.convert<String>(json['bgColor']);
  if (bgColor != null) {
    uikListTileProps.bgColor = bgColor.toColor();
  }

  if (leading != null) {
    if (json["leading"]["id"] == "search") {
      uikListTileProps.leading = UikSearch(
          WidgetType.UikText, UikSearchProps.fromJson(json["leading"]));
    }
    if (json["leading"]["id"] == "icon") {
      uikListTileProps.leading =
          UikIcon(WidgetType.UikText, UikIconProps.fromJson(json["leading"]));
    }
    if (json["leading"]["id"] == "button") {
      uikListTileProps.leading = UikButton(WidgetType.UikContainerText,
          UikButtonProps.fromJson(json["leading"]));
    }
    if (json["leading"]["id"] == "avatar") {
      uikListTileProps.leading = UikAvatar(
          WidgetType.UikAvatar, UikAvatarProps.fromJson(json["leading"]));
    }
    if (json["leading"]["id"] == "image") {
      uikListTileProps.leading = UikImage(
          WidgetType.UikImage, UikImageProps.fromJson(json["leading"]));
    }
    if (json["leading"]["id"] == "text") {
      uikListTileProps.leading = UikContainerText(WidgetType.UikContainerText,
          UikContainerTextProps.fromJson(json["leading"]));
    }
  } else {
    uikListTileProps.leading = null;
  }

  if (title != null) {
    if (json["title"]["id"] == "avatar") {
      uikListTileProps.title = UikAvatar(
          WidgetType.UikAvatar, UikAvatarProps.fromJson(json["title"]));
    }
    if (json["title"]["id"] == "search") {
      uikListTileProps.title =
          UikSearch(WidgetType.UikText, UikSearchProps.fromJson(json["title"]));
    }
    if (json["title"]["id"] == "icon") {
      uikListTileProps.title =
          UikIcon(WidgetType.UikText, UikIconProps.fromJson(json["title"]));
    }
    if (json["title"]["id"] == "button") {
      uikListTileProps.title = UikButton(
          WidgetType.UikContainerText, UikButtonProps.fromJson(json["title"]));
    }
    if (json["title"]["id"] == "text") {
      uikListTileProps.title = UikContainerText(WidgetType.UikContainerText,
          UikContainerTextProps.fromJson(json["title"]));
    }
    if (json["title"]["id"] == "txt") {
      uikListTileProps.title =
          UikText(WidgetType.UikText, UikTextProps.fromJson(json["title"]));
    }
  } else {
    uikListTileProps.title = null;
  }

  if (subtitle != null) {
    if (json["subtitle"]["id"] == "search") {
      uikListTileProps.subtitle = UikSearch(
          WidgetType.UikText, UikSearchProps.fromJson(json["subtitle"]));
    }
    if (json["subtitle"]["id"] == "icon") {
      uikListTileProps.subtitle =
          UikIcon(WidgetType.UikText, UikIconProps.fromJson(json["subtitle"]));
    }
    if (json["subtitle"]["id"] == "button") {
      uikListTileProps.subtitle = UikButton(WidgetType.UikContainerText,
          UikButtonProps.fromJson(json["subtitle"]));
    }
    if (json["subtitle"]["id"] == "text") {
      uikListTileProps.subtitle = UikContainerText(WidgetType.UikContainerText,
          UikContainerTextProps.fromJson(json["subtitle"]));
    }
    if (json["subtitle"]["id"] == "txt") {
      uikListTileProps.subtitle =
          UikText(WidgetType.UikText, UikTextProps.fromJson(json["subtitle"]));
    }
    if (json["subtitle"]["id"] == "UikSimpleRow") {
      uikListTileProps.subtitle = UikSimpleRow(WidgetType.UikSimpleRow,
          UikSimpleRowProps.fromJson(json["subtitle"]));
    }
  } else {
    uikListTileProps.subtitle = null;
  }

  if (trailing != null) {
    debugPrint(trailing);
    if (json["trailing"]["id"] == "txt") {
      uikListTileProps.trailing =
          UikText(WidgetType.UikText, UikTextProps.fromJson(json["trailing"]));
    }
    if (json["trailing"]["id"] == "search") {
      uikListTileProps.trailing = UikSearch(
          WidgetType.UikText, UikSearchProps.fromJson(json["trailing"]));
    }
    if (json["trailing"]["id"] == "icon") {
      uikListTileProps.trailing =
          UikIcon(WidgetType.UikText, UikIconProps.fromJson(json["trailing"]));
    }
    if (json["trailing"]["id"] == "button") {
      uikListTileProps.trailing = UikButton(
          WidgetType.UikButton, UikButtonProps.fromJson(json["trailing"]));
    }
    if (json["trailing"]["id"] == "text") {
      uikListTileProps.trailing = UikContainerText(WidgetType.UikContainerText,
          UikContainerTextProps.fromJson(json["trailing"]));
    }
    if (json["trailing"]["id"] == "image") {
      uikListTileProps.trailing = UikImage(
          WidgetType.UikImage, UikImageProps.fromJson(json["trailing"]));
    }
    if (json["trailing"]["id"] == "avatar") {
      uikListTileProps.trailing = UikAvatar(
          WidgetType.UikAvatar, UikAvatarProps.fromJson(json["trailing"]));
    }
    if (json["trailing"]["id"] == "simpleColumn") {
      uikListTileProps.trailing = UikSimpleColumn(WidgetType.UikAvatar,
          UikSimpleColumnProps.fromJson(json["trailing"]));
    }
  } else {
    uikListTileProps.trailing = null;
  }
  if (gradientColors != null) {
    // List<String> list = [];
    // list.addAll(json["gradientColors"]);
    uikListTileProps.gradientColors = List.generate(
      gradientColors.length,
      (index) => gradientColors[index].toString().toColor(),
    );
  }
  if (isGradient != null) {
    uikListTileProps.isGradient = json["isGradient"];
  }
  final String? beginAlignment =
      jsonConvert.convert<String>(json['beginAlignment']);
  if (beginAlignment != null) {
    uikListTileProps.beginAlignment = alignFunction(beginAlignment);
  }
  final String? endAlignment =
      jsonConvert.convert<String>(json['endAlignment']);
  if (endAlignment != null) {
    uikListTileProps.endAlignment = alignFunction(endAlignment);
  }

  final UikAction? action = jsonConvert.convert<UikAction>(json['action']);
  if (action != null) {
    uikListTileProps.action = action;
  }

  return uikListTileProps;
}