@exige/web-scanner-sdk 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +288 -0
- package/dist/assets/document-worker-QjcJjl9-.js +2 -0
- package/dist/assets/document-worker-QjcJjl9-.js.map +1 -0
- package/dist/assets/ort.min-CA5AZ7mL.js +2937 -0
- package/dist/assets/ort.min-CA5AZ7mL.js.map +1 -0
- package/dist/components/ScannerCameraOverlay.d.ts +36 -0
- package/dist/components/scanner-camera-overlay.css +2 -0
- package/dist/finder-Clo7f2gN.js +1447 -0
- package/dist/finder-Clo7f2gN.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/live-overlay-geometry.d.ts +11 -0
- package/dist/react.d.ts +2 -0
- package/dist/react.js +448 -0
- package/dist/react.js.map +1 -0
- package/dist/scanner-sdk.js +921 -0
- package/dist/scanner-sdk.js.map +1 -0
- package/dist/sdk/camera.d.ts +142 -0
- package/dist/sdk/detect.d.ts +3 -0
- package/dist/sdk/display-quad.d.ts +23 -0
- package/dist/sdk/document-analysis.d.ts +14 -0
- package/dist/sdk/document-geometry.d.ts +21 -0
- package/dist/sdk/field-model.d.ts +4 -0
- package/dist/sdk/finder-simulator.d.ts +17 -0
- package/dist/sdk/finder.d.ts +166 -0
- package/dist/sdk/frame-geometry.d.ts +6 -0
- package/dist/sdk/image.d.ts +18 -0
- package/dist/sdk/license-codec.d.ts +2 -0
- package/dist/sdk/license-public-key.d.ts +9 -0
- package/dist/sdk/license-runtime.d.ts +2 -0
- package/dist/sdk/license.d.ts +76 -0
- package/dist/sdk/lighting.d.ts +22 -0
- package/dist/sdk/ocr.d.ts +75 -0
- package/dist/sdk/programmatic-redaction.d.ts +102 -0
- package/dist/sdk/redact.d.ts +12 -0
- package/dist/sdk/scan.d.ts +32 -0
- package/dist/sdk/types.d.ts +92 -0
- package/package.json +74 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type CameraDiagnostics, type CameraOptions, type CameraPhoto, type TorchMode } from '../sdk/camera';
|
|
2
|
+
import { type AutoCaptureMode, type FinderCapture, type FinderStatus } from '../sdk/finder';
|
|
3
|
+
import type { DocumentQuad } from '../sdk/types';
|
|
4
|
+
import type { DocumentDetectorMode } from '../sdk/types';
|
|
5
|
+
import { type LivePreviewFit } from '../live-overlay-geometry';
|
|
6
|
+
import './scanner-camera-overlay.css';
|
|
7
|
+
export interface ScannerCameraOverlayCapture extends FinderCapture {
|
|
8
|
+
method: CameraPhoto['method'];
|
|
9
|
+
settings: MediaTrackSettings;
|
|
10
|
+
fallbackReason?: CameraPhoto['fallbackReason'];
|
|
11
|
+
luminance?: number;
|
|
12
|
+
diagnostics?: CameraDiagnostics;
|
|
13
|
+
displayedQuad?: DocumentQuad;
|
|
14
|
+
displaySourceWidth?: number;
|
|
15
|
+
displaySourceHeight?: number;
|
|
16
|
+
}
|
|
17
|
+
export interface ScannerCameraOverlayProps {
|
|
18
|
+
open: boolean;
|
|
19
|
+
autoCapture?: AutoCaptureMode;
|
|
20
|
+
/** Camera torch policy. Defaults to `defaultOff`. */
|
|
21
|
+
torch?: TorchMode;
|
|
22
|
+
cameraOptions?: CameraOptions;
|
|
23
|
+
onCapture: (capture: ScannerCameraOverlayCapture) => void | Promise<void>;
|
|
24
|
+
onClose: () => void;
|
|
25
|
+
onError?: (error: Error) => void;
|
|
26
|
+
onSettings?: (settings: MediaTrackSettings) => void;
|
|
27
|
+
onFinderStatus?: (status: FinderStatus) => void;
|
|
28
|
+
className?: string;
|
|
29
|
+
title?: string;
|
|
30
|
+
previewFit?: LivePreviewFit;
|
|
31
|
+
detector?: DocumentDetectorMode;
|
|
32
|
+
modelUrl?: string;
|
|
33
|
+
ortWasmPaths?: string;
|
|
34
|
+
detectionIntervalMs?: number;
|
|
35
|
+
}
|
|
36
|
+
export declare function ScannerCameraOverlay({ open, autoCapture, torch, cameraOptions, onCapture, onClose, onError, onSettings, onFinderStatus, className, title, previewFit, detector, modelUrl, ortWasmPaths, detectionIntervalMs, }: ScannerCameraOverlayProps): import("react").JSX.Element | null;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
.scanner-camera-overlay{z-index:1000;color:#fff;isolation:isolate;overscroll-behavior:none;touch-action:none;background:#050806;font-family:Manrope,ui-sans-serif,system-ui,sans-serif;position:fixed;inset:0;overflow:hidden}.scanner-camera-overlay.is-captured:after{content:"";z-index:10;pointer-events:none;background:#fff;animation:.14s ease-out forwards scanner-camera-flash;position:absolute;inset:0}@keyframes scanner-camera-flash{0%{opacity:.92}to{opacity:0}}.scanner-camera-overlay__video,.scanner-camera-overlay__quad{width:100%;height:100%;position:absolute;inset:0}.scanner-camera-overlay__video{object-fit:cover;background:#050806;display:block}.scanner-camera-overlay__quad{z-index:1;pointer-events:none}.scanner-camera-overlay__quad polygon{fill:#ef6a5b14;stroke:#ef6a5b;stroke-width:6px;vector-effect:non-scaling-stroke;transition:stroke .15s,fill .15s}.scanner-camera-overlay__quad.unstable polygon{fill:#ffbe401a;stroke:#ffbe40}.scanner-camera-overlay__quad.ready polygon{fill:#8af25a1a;stroke:#8af25a}.scanner-camera-overlay__quad.captured polygon{fill:#ffffff2e;stroke:#fff}.scanner-camera-overlay__topbar{z-index:3;padding:max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) 48px max(18px, env(safe-area-inset-left));background:linear-gradient(#030704db,#0000);justify-content:space-between;align-items:flex-start;gap:20px;display:flex;position:absolute;top:0;left:0;right:0}.scanner-camera-overlay__topbar div{gap:5px;display:grid}.scanner-camera-overlay__topbar strong{font-size:clamp(18px,4vw,26px)}.scanner-camera-overlay__topbar span{color:#ffffffb8;font-size:12px}.scanner-camera-overlay__topbar button{color:#fff;background:#050a0799;border:1px solid #ffffff61;border-radius:50%;flex:none;width:46px;height:46px;font-size:28px;line-height:1}.scanner-camera-overlay__message{z-index:4;text-align:center;background:#0a100ceb;border:1px solid #fff3;border-radius:14px;justify-items:center;gap:12px;width:min(420px,100% - 40px);padding:26px;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.scanner-camera-overlay__message p{color:#ffffffb3;margin:0;font-size:13px;line-height:1.5}.scanner-camera-overlay__message div{gap:10px;display:flex}.scanner-camera-overlay__message button{color:#fff;background:0 0;border:1px solid #ffffff6b;border-radius:7px;min-height:44px;padding:0 16px}.scanner-camera-overlay__spinner{border:3px solid #fff3;border-top-color:#c8ff45;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite scanner-camera-spin}@keyframes scanner-camera-spin{to{rotate:1turn}}.scanner-camera-overlay__status{z-index:3;top:max(94px, calc(env(safe-area-inset-top) + 72px));left:max(18px, env(safe-area-inset-left));text-transform:uppercase;background:#050a07c2;border-radius:6px;align-items:center;gap:7px;max-width:calc(100% - 36px);padding:8px 10px;font:9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;display:flex;position:absolute}.scanner-camera-overlay__status>span{background:#ef6a5b;border-radius:50%;flex:none;width:7px;height:7px}.scanner-camera-overlay__status>span.unstable{background:#ffbe40}.scanner-camera-overlay__status>span.ready{background:#8af25a}.scanner-camera-overlay__status>span.captured{background:#fff}.scanner-camera-overlay__diagnostics{z-index:3;top:max(130px, calc(env(safe-area-inset-top) + 108px));left:max(18px, env(safe-area-inset-left));background:#050a07b8;border-radius:6px;gap:2px;max-width:calc(100% - 36px);margin:0;padding:8px 10px;font:9px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;display:grid;position:absolute}.scanner-camera-overlay__diagnostics>div{gap:6px;display:flex}.scanner-camera-overlay__diagnostics dt{color:#ffffff8c;text-transform:uppercase;min-width:44px}.scanner-camera-overlay__diagnostics dd{color:#d9f7c4;margin:0}.scanner-camera-overlay__copy{color:#fff;font:inherit;text-underline-offset:2px;background:0 0;border:0;margin:0;padding:0;text-decoration:underline}.scanner-camera-overlay__copy:focus-visible{outline-offset:2px;outline:2px solid #8af25a}.scanner-camera-overlay__controls{z-index:3;padding:60px max(18px, env(safe-area-inset-right)) max(22px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));background:linear-gradient(#0000,#030704eb);grid-template-columns:minmax(90px,1fr) minmax(140px,auto) minmax(90px,1fr);align-items:end;gap:18px;display:grid;position:absolute;bottom:0;left:0;right:0}.scanner-camera-overlay__cancel{color:#fff;background:#050a0766;border:1px solid #ffffff6b;border-radius:8px;min-height:46px}.scanner-camera-overlay__capture{justify-items:center;gap:10px;display:grid}.scanner-camera-overlay__toggles{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;display:flex}.scanner-camera-overlay__toggles label{white-space:nowrap;align-items:center;gap:7px;min-height:34px;font-size:11px;display:flex}.scanner-camera-overlay__toggles input{accent-color:#c8ff45;width:22px;height:22px}.scanner-camera-overlay__toggles input:disabled{opacity:.85}.scanner-camera-overlay__shutter{background:0 0;border:3px solid #fff;border-radius:50%;width:74px;height:74px;padding:6px}.scanner-camera-overlay__shutter span{background:#fff;border-radius:50%;width:100%;height:100%;display:block}.scanner-camera-overlay__shutter:disabled{opacity:.42}.scanner-camera-overlay__quality{justify-items:end;gap:4px;padding-bottom:8px;font-size:10px;display:grid}.scanner-camera-overlay__quality span{color:#ffffff94;text-transform:uppercase}.scanner-camera-overlay__quality strong{font:10px ui-monospace,SFMono-Regular,Menlo,monospace}@media (width<=560px){.scanner-camera-overlay__controls{grid-template-columns:72px 1fr 72px;gap:10px}.scanner-camera-overlay__quality strong{text-align:right;max-width:72px}}@media (orientation:landscape) and (height<=560px){.scanner-camera-overlay__controls{padding-top:20px}.scanner-camera-overlay__shutter{width:60px;height:60px}}
|
|
2
|
+
/*$vite$:1*/
|