@scandit/web-datacapture-barcode
Version:
Scandit Data Capture SDK for the Web
176 lines (172 loc) • 7.26 kB
TypeScript
import { Color, DataCaptureContext } from '@scandit/web-datacapture-core';
import { ScanditHTMLElement } from '@scandit/web-datacapture-core/build/js/private/utils/index.js';
import { SparkScanScanningMode } from './spark/SparkScanScanningMode.js';
import { SparkScan } from './spark/SparkScan.js';
import { SparkScanFeedbackDelegate } from './spark/SparkScanFeedbackDelegate.js';
import { SparkScanViewSettings } from './spark/ui/SparkScanViewSettings.js';
import { sparkScanViewTag } from './spark/ui/constants/tags.js';
import { SparkScanViewState } from './spark/ui/SparkScanViewState.js';
interface SparkScanViewUiListener {
didChangeScanningMode?(scanningMode: SparkScanScanningMode): void;
didChangeViewState?(state: SparkScanViewState): void;
didTapBarcodeFindButton?(view: SparkScanView): void;
didTapLabelCaptureButton?(view: SparkScanView): void;
}
declare class SparkScanView extends ScanditHTMLElement {
private _targetModeButtonVisible;
private _scanningBehaviorButtonVisible;
private _torchControlVisible;
private _zoomSwitchControlVisible;
private _previewSizeControlVisible;
private _barcodeFindButtonVisible;
private _labelCaptureButtonVisible;
private _cameraSwitchButtonVisible;
private _previewCloseControlVisible;
private _triggerButtonVisible;
private _isTorchAvailable;
private _isZoomAvailable;
private _isConnected;
private _sizingMode;
get targetModeButtonVisible(): boolean;
set targetModeButtonVisible(value: boolean);
get scanningBehaviorButtonVisible(): boolean;
set scanningBehaviorButtonVisible(value: boolean);
get torchControlVisible(): boolean;
set torchControlVisible(value: boolean);
get zoomSwitchControlVisible(): boolean;
set zoomSwitchControlVisible(value: boolean);
get previewSizeControlVisible(): boolean;
set previewSizeControlVisible(value: boolean);
get barcodeFindButtonVisible(): boolean;
set barcodeFindButtonVisible(value: boolean);
get labelCaptureButtonVisible(): boolean;
set labelCaptureButtonVisible(value: boolean);
get cameraSwitchButtonVisible(): boolean;
set cameraSwitchButtonVisible(value: boolean);
get previewCloseControlVisible(): boolean;
set previewCloseControlVisible(value: boolean);
get triggerButtonVisible(): boolean;
set triggerButtonVisible(value: boolean);
triggerButtonCollapsedColor?: Color;
triggerButtonExpandedColor?: Color;
triggerButtonAnimationColor?: Color;
triggerButtonTintColor?: Color;
toolbarBackgroundColor?: Color;
toolbarIconActiveTintColor?: Color;
toolbarIconInactiveTintColor?: Color;
feedbackDelegate: SparkScanFeedbackDelegate;
get dataCaptureContext(): DataCaptureContext | null;
set dataCaptureContext(context: DataCaptureContext | null);
get sparkScan(): SparkScan | null;
set sparkScan(sparkScan: SparkScan | null);
private resizeObserver;
private onResizeHandler;
private settings;
private presenter;
private miniPreview;
private triggerButton;
private visualFeedback;
private miniPreviewTimeout;
private orientationObserver;
private miniPreviewPointerUpListener;
private miniPreviewPointerMoveListener;
private miniPreviewButtonTapListener;
private miniPreviewDragListener;
private miniPreviewDragEndListener;
private miniPreviewVisibilityChangeListener;
private triggerButtonPointerDownListener;
private triggerButtonTapListener;
private triggerButtonLongPressStartListener;
private triggerButtonLongPressEndListener;
private triggerButtonDragListener;
private toolbarButtonTapListener;
private clickOutsideListener;
private visibilityChangeListener;
private orientationChangeListener;
private holdingToScan;
private get _targetModeEnabledMessage();
private get _targetModeDisabledMessage();
private get _continuousModeEnabledMessage();
private get _continuousModeDisabledMessage();
private get _scanPausedMessage();
private get _torchEnabledMessage();
private get _torchDisabledMessage();
private get _zoomedInMessage();
private get _zoomedOutMessage();
set sparkScanViewSettings(sparkScanViewSettings: SparkScanViewSettings | null);
get sparkScanViewSettings(): SparkScanViewSettings | null;
static forElement(element: Element, context: DataCaptureContext, sparkScan: SparkScan, sparkScanViewSettings?: SparkScanViewSettings): SparkScanView;
static register(): void;
private static create;
private static createStyleElement;
prepareScanning(): Promise<void>;
startScanning(): Promise<void>;
pauseScanning(): Promise<void>;
stopScanning(): Promise<void>;
showToast(message: string): void;
setListener(listener: SparkScanViewUiListener | null): void;
setTriggerButtonImage(image?: HTMLImageElement | SVGElement): void;
private setWidthAndHeightCssStyleProperties;
private onResize;
/**
* Checks if the parent element is too small to contain the expanded MiniPreview
* and updates the sizing mode accordingly. In unconstrained mode, elements
* use position:fixed and are positioned relative to the viewport instead of the parent.
*/
private updateSizingMode;
/**
* Auto-prepare scanning when properties are set and element is connected
*/
private _maybeAutoPrepareScanning;
private connectedCallback;
private disconnectedCallback;
private setTorchAvailable;
private setZoomAvailable;
private switchToIdleState;
private switchToActiveState;
private switchToInactiveState;
private switchToErrorState;
private onMiniPreviewPointerUp;
private onMiniPreviewPointerMove;
private onMiniPreviewButtonTap;
private onMiniPreviewDrag;
private onMiniPreviewDragEnd;
private onMiniPreviewVisibilityChange;
private onTriggerButtonPointerDown;
private onTriggerButtonTap;
private onTriggerButtonLongPressStart;
private onTriggerButtonLongPressEnd;
private onTriggerButtonDrag;
private onToolbarButtonTap;
private onClickOutside;
private onVisibilityChange;
private onTargetModeButtonTap;
private onScanningBehaviorButtonTap;
private onBarcodeFindButtonTap;
private onLabelCaptureButtonTap;
private onCameraSwitchButtonTap;
private onTorchButtonTap;
private onMiniPreviewTimeoutFinished;
private onOrientationChange;
private targetModeButtonTapped;
private scanningBehaviorButtonTapped;
private torchButtonTapped;
private cameraSwitchButtonTapped;
private getDefaultCssVariableValue;
private setTriggerButtonPressedColor;
private readonly miniPreviewListeners;
private readonly triggerButtonListeners;
private addMiniPreviewListeners;
private removeMiniPreviewListeners;
private addTriggerButtonListeners;
private removeTriggerButtonListeners;
private repositionElementsIfOutOfBounds;
private repositionMiniPreviewIfOutOfBounds;
private repositionTriggerButtonIfOutOfBounds;
}
declare global {
interface HTMLElementTagNameMap {
[sparkScanViewTag]: SparkScanView;
}
}
export { SparkScanView as S, type SparkScanViewUiListener as a };