react-native-scanbot-sdk
Version:
Scanbot Document and Barcode Scanner SDK React Native Plugin for Android and iOS
175 lines (160 loc) • 6.02 kB
text/typescript
/// Auto-generated with ScanbotSDKCodegenV3. Modifications will be overwritten.
/// Generated from rtu-ui-v2/schemas/document/DocumentScanningFlow.yaml
import { OrientationLockMode, Palette } from '../../ui_v2/common/Common';
import { NavigationBarMode } from '../../ui_v2/common/NavigationBarConfiguration';
import { StatusBarMode } from '../../ui_v2/common/TopBarConfiguration';
import { DocumentScannerOutputSettings } from '../../ui_v2/document/DocumentScannerOutputSettings';
import { DocumentScannerScreens } from '../../ui_v2/document/DocumentScannerScreens';
import { DocumentScannerTextLocalization } from '../../ui_v2/document/DocumentScannerTextLocalization';
import { DeepPartial, PartiallyConstructible } from '../../utils/utils';
/**
Configuration of the general appearance.
*/
export class DocumentFlowAppearanceConfiguration extends PartiallyConstructible {
/**
Determines the visual mode used for the status bar icons.
Default is LIGHT
*/
public statusBarMode: StatusBarMode = 'LIGHT';
/**
Determines the visual mode used for the navigation bar icons. Android only.
Default is LIGHT
*/
public navigationBarMode: NavigationBarMode = 'LIGHT';
/**
The background color of the top bar. Only applicable when the visual mode is specified as 'SOLID', otherwise ignored.
Default is "?sbColorPrimary"
*/
public topBarBackgroundColor: string = '?sbColorPrimary';
/**
The background color of the bottom bar.
Default is "?sbColorPrimary"
*/
public bottomBarBackgroundColor: string = '?sbColorPrimary';
/**
Which mode to use when orientation should be locked to landscape or portrait.
Default is NONE
*/
public orientationLockMode: OrientationLockMode = 'NONE';
/** @param source {@displayType `DeepPartial<DocumentFlowAppearanceConfiguration>`} */
public constructor(source: DeepPartial<DocumentFlowAppearanceConfiguration> = {}) {
super();
if (source.statusBarMode !== undefined) {
this.statusBarMode = source.statusBarMode;
}
if (source.navigationBarMode !== undefined) {
this.navigationBarMode = source.navigationBarMode;
}
if (source.topBarBackgroundColor !== undefined) {
this.topBarBackgroundColor = source.topBarBackgroundColor;
}
if (source.bottomBarBackgroundColor !== undefined) {
this.bottomBarBackgroundColor = source.bottomBarBackgroundColor;
}
if (source.orientationLockMode !== undefined) {
this.orientationLockMode = source.orientationLockMode;
}
}
}
/**
Configuration of the document scanner screen.
*/
export class DocumentScanningFlow extends PartiallyConstructible {
/**
Version number of the configuration object.
Default is "1.0"
*/
public version: string = '1.0';
/**
The configuration object should be applied for this screen.
Default is "DocumentScanner"
*/
public screen: string = 'DocumentScanner';
/**
Define the screen's base color values from which other colors are derived.
*/
public palette: Palette = new Palette({
sbColorPrimary: '#C8193C',
sbColorPrimaryDisabled: '#F5F5F5',
sbColorNegative: '#FF3737',
sbColorPositive: '#4EFFB4',
sbColorWarning: '#FFCE5C',
sbColorSecondary: '#FFEDEE',
sbColorSecondaryDisabled: '#F5F5F5',
sbColorOnPrimary: '#FFFFFF',
sbColorOnSecondary: '#C8193C',
sbColorSurface: '#FFFFFF',
sbColorOutline: '#EFEFEF',
sbColorOnSurfaceVariant: '#707070',
sbColorOnSurface: '#000000',
sbColorSurfaceLow: '#00000026',
sbColorSurfaceHigh: '#0000007A',
sbColorModalOverlay: '#000000A3',
});
/**
Configuration of all the strings for the document scanner screen.
*/
public localization: DocumentScannerTextLocalization = new DocumentScannerTextLocalization({});
/**
Configuration of the general appearance.
*/
public appearance: DocumentFlowAppearanceConfiguration = new DocumentFlowAppearanceConfiguration(
{}
);
/**
Configuration of the output settings.
*/
public outputSettings: DocumentScannerOutputSettings = new DocumentScannerOutputSettings({});
/**
Configuration of the document scanner sub-screens.
*/
public screens: DocumentScannerScreens = new DocumentScannerScreens({});
/**
The UUID of the existing document to be edited.
*/
public documentUuid: string | null = null;
/**
Clean the existing pages from the scanning session.
Default is true
*/
public cleanScanningSession: boolean = true;
/**
If enabled, the screen will not turn off while the barcode scanner is active. (Android only).
Default is true
*/
public keepScreenOn: boolean = true;
/** @param source {@displayType `DeepPartial<DocumentScanningFlow>`} */
public constructor(source: DeepPartial<DocumentScanningFlow> = {}) {
super();
if (source.version !== undefined) {
this.version = source.version;
}
if (source.screen !== undefined) {
this.screen = source.screen;
}
if (source.palette !== undefined) {
this.palette = new Palette(source.palette);
}
if (source.localization !== undefined) {
this.localization = new DocumentScannerTextLocalization(source.localization);
}
if (source.appearance !== undefined) {
this.appearance = new DocumentFlowAppearanceConfiguration(source.appearance);
}
if (source.outputSettings !== undefined) {
this.outputSettings = new DocumentScannerOutputSettings(source.outputSettings);
}
if (source.screens !== undefined) {
this.screens = new DocumentScannerScreens(source.screens);
}
if (source.documentUuid !== undefined) {
this.documentUuid = source.documentUuid != null ? source.documentUuid : null;
}
if (source.cleanScanningSession !== undefined) {
this.cleanScanningSession = source.cleanScanningSession;
}
if (source.keepScreenOn !== undefined) {
this.keepScreenOn = source.keepScreenOn;
}
}
}