CreditCardScannerScreenConfiguration.fromJson constructor
CreditCardScannerScreenConfiguration.fromJson( - Map<String, dynamic> json
)
Implementation
factory CreditCardScannerScreenConfiguration.fromJson(
Map<String, dynamic> json) =>
CreditCardScannerScreenConfiguration(
version:
json.containsKey("version") ? json["version"] as String : "1.0",
screen: json.containsKey("screen")
? json["screen"] as String
: "CreditCardScanner",
localization: json.containsKey("localization")
? CreditCardScannerScreenTextLocalization.fromJson(
json["localization"] as Map<String, dynamic>)
: CreditCardScannerScreenTextLocalization(),
palette: json.containsKey("palette")
? Palette.fromJson(json["palette"] as Map<String, dynamic>)
: Palette(),
backgroundColor: json.containsKey("backgroundColor")
? ScanbotColor(json["backgroundColor"] as String)
: ScanbotColor("?sbColorSurfaceLow"),
cameraConfiguration: json.containsKey("cameraConfiguration")
? CameraConfiguration.fromJson(
json["cameraConfiguration"] as Map<String, dynamic>)
: CameraConfiguration(
orientationLockMode: OrientationLockMode.PORTRAIT),
cameraPermission: json.containsKey("cameraPermission")
? CameraPermissionScreen.fromJson(
json["cameraPermission"] as Map<String, dynamic>)
: CameraPermissionScreen(
statusBarMode: StatusBarMode.DARK,
background: ScanbotColor("?sbColorSurface"),
iconBackground: ScanbotColor("?sbColorOutline"),
icon: IconStyle(
visible: true, color: ScanbotColor("?sbColorOnSurface")),
enableCameraButton: ButtonConfiguration(
visible: true,
text: "?cameraPermissionEnableCameraButton",
accessibilityDescription:
"?accessibilityDescriptionCameraPermissionEnableCameraButton",
background: BackgroundStyle(
strokeColor: ScanbotColor("?sbColorPrimary"),
fillColor: ScanbotColor("?sbColorPrimary"),
strokeWidth: 0.0),
foreground: ForegroundStyle(
iconVisible: false,
color: ScanbotColor("?sbColorOnPrimary"),
useShadow: false)),
closeButton: ButtonConfiguration(
visible: true,
text: "?cameraPermissionCloseButton",
accessibilityDescription:
"?accessibilityDescriptionCameraPermissionCloseButton",
background: BackgroundStyle(
strokeColor: ScanbotColor("#00000000"),
fillColor: ScanbotColor("#00000000"),
strokeWidth: 0.0),
foreground: ForegroundStyle(
iconVisible: false,
color: ScanbotColor("?sbColorPrimary"),
useShadow: false)),
enableCameraTitle: StyledText(
text: "?cameraPermissionEnableCameraTitle",
color: ScanbotColor("?sbColorOnSurface")),
enableCameraExplanation: StyledText(
text: "?cameraPermissionEnableCameraExplanation",
color: ScanbotColor("?sbColorOnSurfaceVariant"))),
topUserGuidance: json.containsKey("topUserGuidance")
? UserGuidanceConfiguration.fromJson(
json["topUserGuidance"] as Map<String, dynamic>)
: UserGuidanceConfiguration(
title: StyledText(text: "?topUserGuidance")),
scanStatusUserGuidance: json.containsKey("scanStatusUserGuidance")
? CreditCardScanGuidanceConfiguration.fromJson(
json["scanStatusUserGuidance"] as Map<String, dynamic>)
: CreditCardScanGuidanceConfiguration(),
topBar: json.containsKey("topBar")
? TopBarConfiguration.fromJson(
json["topBar"] as Map<String, dynamic>)
: TopBarConfiguration(
title: StyledText(visible: true, text: "?topBarTitle"),
cancelButton: ButtonConfiguration(
text: "?topBarCancelButton",
accessibilityDescription:
"?accessibilityDescriptionCancelButton",
background: BackgroundStyle(
strokeColor: ScanbotColor("#00000000"),
fillColor: ScanbotColor("#00000000"),
strokeWidth: 0.0),
foreground: ForegroundStyle(
color: ScanbotColor("?sbColorOnPrimary")))),
topBarOpenIntroScreenButton:
json.containsKey("topBarOpenIntroScreenButton")
? ScanbotIconButton.fromJson(
json["topBarOpenIntroScreenButton"] as Map<String, dynamic>)
: ScanbotIconButton(
color: ScanbotColor("?sbColorOnPrimary"),
accessibilityDescription:
"?accessibilityDescriptionOpenIntroScreenButton"),
introScreen: json.containsKey("introScreen")
? CreditCardScannerIntroScreenConfiguration.fromJson(
json["introScreen"] as Map<String, dynamic>)
: CreditCardScannerIntroScreenConfiguration(),
actionBar: json.containsKey("actionBar")
? ActionBarConfiguration.fromJson(
json["actionBar"] as Map<String, dynamic>)
: ActionBarConfiguration(
flipCameraButton: RoundButton(
visible: false,
accessibilityDescription:
"?accessibilityDescriptionFlipCameraButton",
backgroundColor: ScanbotColor("?sbColorSurfaceHigh"),
foregroundColor: ScanbotColor("?sbColorOnPrimary"),
activeBackgroundColor: ScanbotColor("?sbColorWarning"),
activeForegroundColor: ScanbotColor("#1C1B1F"))),
viewFinder: json.containsKey("viewFinder")
? PermanentViewFinderConfiguration.fromJson(
json["viewFinder"] as Map<String, dynamic>)
: PermanentViewFinderConfiguration(
style: FinderCorneredStyle(
strokeColor: ScanbotColor("?sbColorSurface"),
strokeWidth: 2.0),
aspectRatio: AspectRatio(width: 1.586, height: 1.0),
minimumInsets: ScanbotEdgeInsets(
top: 24.0, left: 24.0, bottom: 24.0, right: 24.0)),
scannerConfiguration: json.containsKey("scannerConfiguration")
? CreditCardScannerConfiguration.fromJson(
json["scannerConfiguration"] as Map<String, dynamic>)
: CreditCardScannerConfiguration(),
exampleOverlayVisible: json.containsKey("exampleOverlayVisible")
? (json["exampleOverlayVisible"] as bool)
: true,
scanningProgress: json.containsKey("scanningProgress")
? CreditCardScanningProgressConfiguration.fromJson(
json["scanningProgress"] as Map<String, dynamic>)
: CreditCardScanningProgressConfiguration(),
scanIncompleteDataTimeout: json.containsKey("scanIncompleteDataTimeout")
? (json["scanIncompleteDataTimeout"] as int)
: 3000,
successOverlay: json.containsKey("successOverlay")
? ScanCompletionOverlay.fromJson(
json["successOverlay"] as Map<String, dynamic>)
: ScanCompletionOverlay(),
incompleteDataOverlay: json.containsKey("incompleteDataOverlay")
? ScanCompletionOverlay.fromJson(
json["incompleteDataOverlay"] as Map<String, dynamic>)
: ScanCompletionOverlay(
message: StyledText(
text: "?completionOverlayIncompleteDataMessage")),
sound: json.containsKey("sound")
? Sound.fromJson(json["sound"] as Map<String, dynamic>)
: Sound(),
vibration: json.containsKey("vibration")
? Vibration.fromJson(json["vibration"] as Map<String, dynamic>)
: Vibration(),
keepScreenOn: json.containsKey("keepScreenOn")
? (json["keepScreenOn"] as bool)
: true,
);