toJson method

Map<String, dynamic> toJson()

Implementation

Map<String, dynamic> toJson() {
  final iproov = iproovTheme?.toJson() ?? <String, dynamic>{};
  final iproovColors = Map<String, String>.from(iproov['colors'] as Map<String, dynamic>? ?? {});
  final iproovTexts = Map<String, String>.from(iproov['texts'] as Map<String, dynamic>? ?? {});
  if (title != null) iproovTexts['title'] = title!;
  if (titleColor != null) iproovColors['titleColor'] = titleColor!;
  if (headerBackgroundColor != null) iproovColors['headerBackgroundColor'] = headerBackgroundColor!;
  if (promptTextColor != null) iproovColors['promptTextColor'] = promptTextColor!;
  if (promptBackgroundColor != null) iproovColors['promptBackgroundColor'] = promptBackgroundColor!;
  if (surroundColor != null) iproovColors['surroundColor'] = surroundColor!;
  if (ovalReadyColor != null) iproovColors['ovalReadyColor'] = '#${(ovalReadyColor! & 0xFFFFFF).toRadixString(16).padLeft(6, '0')}';
  if (ovalNotReadyColor != null) iproovColors['ovalNotReadyColor'] = '#${(ovalNotReadyColor! & 0xFFFFFF).toRadixString(16).padLeft(6, '0')}';
  if (ovalStrokeColor != null) iproovColors['ovalStrokeColor'] = '#${(ovalStrokeColor! & 0xFFFFFF).toRadixString(16).padLeft(6, '0')}';
  if (ovalCompletedColor != null) iproovColors['ovalCompletedColor'] = '#${(ovalCompletedColor! & 0xFFFFFF).toRadixString(16).padLeft(6, '0')}';
  iproov['colors'] = iproovColors;
  iproov['texts'] = iproovTexts;

  return {
    'instructions': instructionsTheme?.toJson(),
    'permission': permissionTheme?.toJson(),
    'processing': processingTheme?.toJson(),
    'result': resultTheme?.toJson(),
    'iproov': iproov,
    'title': title,
    'titleColor': titleColor,
    'headerBackgroundColor': headerBackgroundColor,
    'promptTextColor': promptTextColor,
    'promptBackgroundColor': promptBackgroundColor,
    'surroundColor': surroundColor,
    'fontResource': fontResource,
    'isEnabledScreenShots': isEnabledScreenShots,
    'disableExteriorEffects': disableExteriorEffects,
    'timeoutSecs': timeoutSecs,
    'promptRoundedCorners': promptRoundedCorners,
    'filterType': filterType,
    'filterStyle': filterStyle,
    'orientationGpa': orientationGpa,
    'orientationLa': orientationLa,
    'camera': camera,
    'ovalReadyColor': ovalReadyColor,
    'ovalNotReadyColor': ovalNotReadyColor,
    'ovalStrokeColor': ovalStrokeColor,
    'ovalCompletedColor': ovalCompletedColor,
  };
}