UNPKG

react-native-scanbot-sdk

Version:

Scanbot Document and Barcode Scanner SDK React Native Plugin for Android and iOS

168 lines (153 loc) 5.17 kB
/// Auto-generated with ScanbotSDKCodegenV3. Modifications will be overwritten. /// Generated from rtu-ui-v2/schemas/check/CheckScannerIntroScreenConfiguration.yaml import { BackgroundStyle, ButtonConfiguration, ForegroundStyle, StyledText, } from '../../ui_v2/common/Common'; import { DeepPartial, PartiallyConstructible } from '../../utils/utils'; /** The image for the introduction screen of a check scanner screen. */ export type CheckScannerIntroImage = CheckIntroDefaultImage | CheckNoImage | CheckIntroCustomImage; /** @internal */ export namespace CheckScannerIntroImage { /** @internal */ export function From(source: { [key: string]: any }): CheckScannerIntroImage { const _type = source._type; switch (_type) { case 'CheckIntroDefaultImage': return new CheckIntroDefaultImage(source); case 'CheckNoImage': return new CheckNoImage(source); case 'CheckIntroCustomImage': return new CheckIntroCustomImage(source); default: throw `Unknown child class name: ${_type}`; } } } /** No image for the introduction screen. */ export class CheckIntroDefaultImage extends PartiallyConstructible { public readonly _type: 'CheckIntroDefaultImage' = 'CheckIntroDefaultImage'; /** @param source {@displayType `DeepPartial<CheckIntroDefaultImage>`} */ public constructor(source: DeepPartial<CheckIntroDefaultImage> = {}) { super(); } } /** No image for the introduction screen. */ export class CheckNoImage extends PartiallyConstructible { public readonly _type: 'CheckNoImage' = 'CheckNoImage'; /** @param source {@displayType `DeepPartial<CheckNoImage>`} */ public constructor(source: DeepPartial<CheckNoImage> = {}) { super(); } } /** A custom image for the introduction screen. */ export class CheckIntroCustomImage extends PartiallyConstructible { public readonly _type: 'CheckIntroCustomImage' = 'CheckIntroCustomImage'; /** The web or file URI to the image. */ public uri: string; /** @param source {@displayType `DeepPartial<CheckIntroCustomImage>`} */ public constructor(source: DeepPartial<CheckIntroCustomImage> = {}) { super(); if (source.uri !== undefined) { this.uri = source.uri; } else { throw new Error('uri must be present in constructor argument'); } } } /** Configuration of the introduction screen for the check scanner. */ export class CheckScannerIntroScreenConfiguration extends PartiallyConstructible { /** The image for the introduction screen. */ public image: CheckScannerIntroImage = new CheckIntroDefaultImage({}); /** The background color of the introduction screen. Default is "?sbColorSurface" */ public backgroundColor: string = '?sbColorSurface'; /** The divider color of the introduction screen. Default is "?sbColorOutline" */ public dividerColor: string = '?sbColorOutline'; /** The handle color of the introduction screen. Default is "?sbColorOutline" */ public handlerColor: string = '?sbColorOutline'; /** Determines whether the introduction screen should automatically be shown or not when the scanning session starts. Default is false */ public showAutomatically: boolean = false; /** The title of the introduction screen, located in the top bar. */ public title: StyledText = new StyledText({ text: '?introScreenTitle', color: '?sbColorOnSurface', }); /** The text explanation of the introduction screen. */ public explanation: StyledText = new StyledText({ text: '?introScreenText', color: '?sbColorOnSurface', }); /** Configuration of the 'Done' / 'Start scanning' button. */ public doneButton: ButtonConfiguration = new ButtonConfiguration({ text: '?introScreenDoneButton', accessibilityDescription: '?accessibilityDescriptionIntroScreenDoneButton', background: new BackgroundStyle({ strokeColor: '#00000000', fillColor: '?sbColorPrimary', strokeWidth: 0.0, }), foreground: new ForegroundStyle({ color: '?sbColorOnPrimary' }), }); /** @param source {@displayType `DeepPartial<CheckScannerIntroScreenConfiguration>`} */ public constructor(source: DeepPartial<CheckScannerIntroScreenConfiguration> = {}) { super(); if (source.image !== undefined) { this.image = CheckScannerIntroImage.From(source.image); } if (source.backgroundColor !== undefined) { this.backgroundColor = source.backgroundColor; } if (source.dividerColor !== undefined) { this.dividerColor = source.dividerColor; } if (source.handlerColor !== undefined) { this.handlerColor = source.handlerColor; } if (source.showAutomatically !== undefined) { this.showAutomatically = source.showAutomatically; } if (source.title !== undefined) { this.title = new StyledText(source.title); } if (source.explanation !== undefined) { this.explanation = new StyledText(source.explanation); } if (source.doneButton !== undefined) { this.doneButton = new ButtonConfiguration(source.doneButton); } } }