SignatureData.fromJson constructor

SignatureData.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory SignatureData.fromJson(Map<String, dynamic> json) {
  final pointsData = json['points'] as List?;
  final points = pointsData
          ?.map<SignaturePoint?>(
              (p) => p != null ? SignaturePoint.fromJson(p) : null)
          .toList() ??
      [];

  return SignatureData(
    points: points,
    imageBytes: json['imageBytes'],
    base64String: json['base64String'],
    svgData: json['svgData'],
    width: json['width']?.toDouble() ?? 0.0,
    height: json['height']?.toDouble() ?? 0.0,
    timestamp:
        DateTime.parse(json['timestamp'] ?? DateTime.now().toIso8601String()),
    metadata: json['metadata'],
    biometrics: json['biometrics'] != null
        ? BiometricProperties.fromJson(json['biometrics'])
        : null,
    digitalSignature: json['digitalSignature'],
    certificateHash: json['certificateHash'],
    type: SignatureType.values.firstWhere(
      (e) => e.toString() == json['type'],
      orElse: () => SignatureType.handwritten,
    ),
    authLevel: AuthenticationLevel.values.firstWhere(
      (e) => e.toString() == json['authLevel'],
      orElse: () => AuthenticationLevel.basic,
    ),
  );
}