fromJson static method

Customization fromJson(
  1. dynamic jsonObject
)

Allows you to deserialize object.

Implementation

static Customization fromJson(jsonObject) {
  var result = Customization();
  result.testSetters = {};

  result.showStatusMessages = jsonObject["showStatusMessages"];
  result.showResultStatusMessages = jsonObject["showResultStatusMessages"];
  result.showHelpAnimation = jsonObject["showHelpAnimation"];
  result.showNextPageAnimation = jsonObject["showNextPageAnimation"];
  result.showBackgroundMask = jsonObject["showBackgroundMask"];

  result.cameraFrameBorderWidth = jsonObject["cameraFrameBorderWidth"];
  result.cameraFrameLineLength = jsonObject["cameraFrameLineLength"];
  result.cameraFrameShapeType =
      FrameShapeType.getByValue(jsonObject["cameraFrameShapeType"]);
  result.cameraFrameOffsetWidth = jsonObject["cameraFrameOffsetWidth"];

  result.status = jsonObject["status"];
  result.resultStatus = jsonObject["resultStatus"];

  result.cameraFrameDefaultColor =
      _intToColor(jsonObject["cameraFrameDefaultColor"]);
  result.cameraFrameActiveColor =
      _intToColor(jsonObject["cameraFrameActiveColor"]);
  result.statusTextColor = _intToColor(jsonObject["statusTextColor"]);
  result.resultStatusTextColor =
      _intToColor(jsonObject["resultStatusTextColor"]);
  result.resultStatusBackgroundColor =
      _intToColor(jsonObject["resultStatusBackgroundColor"]);
  result.multipageButtonBackgroundColor =
      _intToColor(jsonObject["multipageButtonBackgroundColor"]);
  result.tintColor = _intToColor(jsonObject["tintColor"]);
  result.activityIndicatorColor =
      _intToColor(jsonObject["activityIndicatorColor"]);
  result.statusBackgroundColor =
      _intToColor(jsonObject["statusBackgroundColor"]);
  result.cameraPreviewBackgroundColor =
      _intToColor(jsonObject["cameraPreviewBackgroundColor"]);

  result.statusPositionMultiplier =
      _toDouble(jsonObject["statusPositionMultiplier"]);
  result.resultStatusPositionMultiplier =
      _toDouble(jsonObject["resultStatusPositionMultiplier"]);
  result.toolbarSize = _toDouble(jsonObject["toolbarSize"]);
  result.backgroundMaskAlpha = _toDouble(jsonObject["backgroundMaskAlpha"]);
  result.customStatusPositionMultiplier =
      _toDouble(jsonObject["customStatusPositionMultiplier"]);
  result.cameraFrameVerticalPositionMultiplier =
      _toDouble(jsonObject["cameraFrameVerticalPositionMultiplier"]);
  result.cameraFrameLandscapeAspectRatio =
      _toDouble(jsonObject["cameraFrameLandscapeAspectRatio"]);
  result.cameraFrameCornerRadius =
      _toDouble(jsonObject["cameraFrameCornerRadius"]);
  result.cameraFramePortraitAspectRatio =
      _toDouble(jsonObject["cameraFramePortraitAspectRatio"]);
  result.livenessAnimationPositionMultiplier =
      _toDouble(jsonObject["livenessAnimationPositionMultiplier"]);

  result.multipageAnimationFrontImage =
      _dataFromBase64(jsonObject["multipageAnimationFrontImage"]);
  result.multipageAnimationBackImage =
      _dataFromBase64(jsonObject["multipageAnimationBackImage"]);
  result.borderBackgroundImage =
      _dataFromBase64(jsonObject["borderBackgroundImage"]);
  result.helpAnimationImage =
      _dataFromBase64(jsonObject["helpAnimationImage"]);
  result.closeButtonImage = _dataFromBase64(jsonObject["closeButtonImage"]);
  result.captureButtonImage =
      _dataFromBase64(jsonObject["captureButtonImage"]);
  result.cameraSwitchButtonImage =
      _dataFromBase64(jsonObject["cameraSwitchButtonImage"]);
  result.torchButtonOnImage =
      _dataFromBase64(jsonObject["torchButtonOnImage"]);
  result.torchButtonOffImage =
      _dataFromBase64(jsonObject["torchButtonOffImage"]);
  result.changeFrameButtonExpandImage =
      _dataFromBase64(jsonObject["changeFrameButtonExpandImage"]);
  result.changeFrameButtonCollapseImage =
      _dataFromBase64(jsonObject["changeFrameButtonCollapseImage"]);
  result.livenessAnimationImage =
      _dataFromBase64(jsonObject["livenessAnimationImage"]);

  result.customLabelStatus = jsonObject["customLabelStatus"];
  result.cameraFrameLineCap =
      Cap.getByValue(jsonObject["cameraFrameLineCap"]);
  result.uiCustomizationLayer = jsonObject["uiCustomizationLayer"];
  result.statusTextFont = Font.fromJson(jsonObject["statusTextFont"]);
  result.resultStatusTextFont =
      Font.fromJson(jsonObject["resultStatusTextFont"]);

  result.helpAnimationImageTransformsIOS =
      ViewContentMode.getByValue(jsonObject["helpAnimationImageContentMode"]);
  result.multipageAnimationFrontImageTransformsIOS =
      ViewContentMode.getByValue(
          jsonObject["multipageAnimationFrontImageContentMode"]);
  result.multipageAnimationBackImageTransformsIOS =
      ViewContentMode.getByValue(
          jsonObject["multipageAnimationBackImageContentMode"]);
  result.livenessAnimationImageTransformsIOS = ViewContentMode.getByValue(
      jsonObject["livenessAnimationImageContentMode"]);
  result.borderBackgroundImageTransformsIOS = ViewContentMode.getByValue(
      jsonObject["borderBackgroundImageContentMode"]);

  if (jsonObject["helpAnimationImageMatrix"] != null) {
    List<double> array = [];
    for (var value in jsonObject["helpAnimationImageMatrix"]) {
      array.add(value.toDouble());
    }
    result.helpAnimationImageTransformsAndroid = array;
  } else {
    result.helpAnimationImageTransformsAndroid = null;
  }
  if (jsonObject["multipageAnimationFrontImageMatrix"] != null) {
    List<double> array = [];
    for (var value in jsonObject["multipageAnimationFrontImageMatrix"]) {
      array.add(value.toDouble());
    }
    result.multipageAnimationFrontImageTransformsAndroid = array;
  } else {
    result.multipageAnimationFrontImageTransformsAndroid = null;
  }
  if (jsonObject["multipageAnimationBackImageMatrix"] != null) {
    List<double> array = [];
    for (var value in jsonObject["multipageAnimationBackImageMatrix"]) {
      array.add(value.toDouble());
    }
    result.multipageAnimationBackImageTransformsAndroid = array;
  } else {
    result.multipageAnimationBackImageTransformsAndroid = null;
  }
  if (jsonObject["livenessAnimationImageMatrix"] != null) {
    List<double> array = [];
    for (var value in jsonObject["livenessAnimationImageMatrix"]) {
      array.add(value.toDouble());
    }
    result.livenessAnimationImageTransformsAndroid = array;
  } else {
    result.livenessAnimationImageTransformsAndroid = null;
  }
  if (jsonObject["borderBackgroundImageMatrix"] != null) {
    List<double> array = [];
    for (var value in jsonObject["borderBackgroundImageMatrix"]) {
      array.add(value.toDouble());
    }
    result.borderBackgroundImageTransformsAndroid = array;
  } else {
    result.borderBackgroundImageTransformsAndroid = null;
  }

  result.colors = CustomizationColors.fromJson(jsonObject["colors"]);
  result.fonts = CustomizationFonts.fromJson(jsonObject["fonts"]);
  result.images = CustomizationImages.fromJson(jsonObject["images"]);

  return result;
}