UNPKG

capacitor-plugin-scanbot-sdk

Version:

Scanbot Document and Barcode Scanner SDK for Capacitor

134 lines 4.32 kB
import { PartiallyConstructible } from '../../utils'; import { AspectRatio } from '../common/Common'; /** Configuration of the scanning interface's viewfinder, serving as guidance to the user. */ export class ViewFinderConfiguration extends PartiallyConstructible { /** @param source {@displayType `DeepPartial<ViewFinderConfiguration>`} */ constructor(source = {}) { super(); /** Determines whether the viewfinder is visible or not. Default is true */ this.visible = true; /** The visual appearance of the viewfinder. */ this.style = new FinderCorneredStyle({ strokeColor: '?sbColorSurface', strokeWidth: 2.0, cornerRadius: 10.0, }); /** The color of the viewfinder overlay. Default is "?sbColorSurfaceLow" */ this.overlayColor = '?sbColorSurfaceLow'; /** The viewfinder's aspect ratio. */ this.aspectRatio = new AspectRatio({ width: 1.0, height: 1.0, }); if (source.visible !== undefined) { this.visible = source.visible; } if (source.style !== undefined) { this.style = FinderStyle.From(source.style); } if (source.overlayColor !== undefined) { this.overlayColor = source.overlayColor; } if (source.aspectRatio !== undefined) { this.aspectRatio = new AspectRatio(source.aspectRatio); } } } /** @internal */ export var FinderStyle; (function (FinderStyle) { /** @internal */ function From(source) { const _type = source['_type']; switch (_type) { case 'FinderCorneredStyle': return new FinderCorneredStyle(source); case 'FinderStrokedStyle': return new FinderStrokedStyle(source); default: throw `Unknown child class name: ${_type}`; } } FinderStyle.From = From; })(FinderStyle || (FinderStyle = {})); /** A variant of the viewfinder displaying only the four corners of the scanning area. */ export class FinderCorneredStyle extends PartiallyConstructible { /** @param source {@displayType `DeepPartial<FinderCorneredStyle>`} */ constructor(source = {}) { super(); this._type = 'FinderCorneredStyle'; /** The color of the viewfinder corner's outlines. Default is "#FFFFFFFF" */ this.strokeColor = '#FFFFFFFF'; /** The width of the viewfinder corner's outlines. Default is 3.0 */ this.strokeWidth = 3.0; /** The radius of the viewfinder's corners. Default is 10.0 */ this.cornerRadius = 10.0; if (source.strokeColor !== undefined) { this.strokeColor = source.strokeColor; } if (source.strokeWidth !== undefined) { this.strokeWidth = source.strokeWidth; } if (source.cornerRadius !== undefined) { this.cornerRadius = source.cornerRadius; } } } /** A variant of the viewfinder displaying a full outline of the scanning area. */ export class FinderStrokedStyle extends PartiallyConstructible { /** @param source {@displayType `DeepPartial<FinderStrokedStyle>`} */ constructor(source = {}) { super(); this._type = 'FinderStrokedStyle'; /** The color of the viewfinder corner's outlines. Default is "#FFFFFFFF" */ this.strokeColor = '#FFFFFFFF'; /** The width of the viewfinder corner's outlines. Default is 3.0 */ this.strokeWidth = 3.0; /** The radius of the viewfinder's corners. Default is 10.0 */ this.cornerRadius = 10.0; if (source.strokeColor !== undefined) { this.strokeColor = source.strokeColor; } if (source.strokeWidth !== undefined) { this.strokeWidth = source.strokeWidth; } if (source.cornerRadius !== undefined) { this.cornerRadius = source.cornerRadius; } } } //# sourceMappingURL=ViewFinderConfiguration.js.map