@scandit/web-datacapture-core 8.3.0-beta.1 → 8.3.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/build/electron/common.cjs +1 -1
- package/build/electron/constants.cjs +1 -1
- package/build/electron/main.cjs +1 -1
- package/build/electron/preload.cjs +1 -1
- package/build/js/{Camera-BnPnXqAt.d.ts → Camera-Cc__1Nc-.d.ts} +2 -0
- package/build/js/Camera.d.ts +1 -1
- package/build/js/Camera.js +1 -1
- package/build/js/CameraRelated.d.ts +1 -1
- package/build/js/{DataCaptureContext-LM_Re1B4.d.ts → DataCaptureContext-BcSpF9Dt.d.ts} +2 -1
- package/build/js/DataCaptureContext.d.ts +2 -2
- package/build/js/DataCaptureContext.js +1 -1
- package/build/js/DataCaptureContextRelated.d.ts +2 -2
- package/build/js/DataCaptureVersion.js +1 -1
- package/build/js/DataCaptureView.d.ts +2 -2
- package/build/js/DataCaptureView.js +1 -1
- package/build/js/Feedback.js +1 -1
- package/build/js/FrameData.d.ts +2 -2
- package/build/js/ImageFrameSource.d.ts +1 -1
- package/build/js/ImageFrameSource.js +1 -1
- package/build/js/NotificationPresenter/index.d.ts +2 -2
- package/build/js/NotificationPresenter/private/ConcreteNotificationPresenter.d.ts +2 -2
- package/build/js/NotificationPresenter/private/presets.d.ts +2 -2
- package/build/js/ScanditIconBuilder.js +1 -1
- package/build/js/SingleImageUploader.d.ts +1 -1
- package/build/js/Sound.d.ts +4 -0
- package/build/js/Sound.js +1 -1
- package/build/js/chunks/chunk-22UMTZI6.js +1 -0
- package/build/js/chunks/{chunk-H7FKC2FI.js → chunk-2MK5Y4IL.js} +1 -1
- package/build/js/chunks/chunk-6AQGNP4S.js +1 -0
- package/build/js/chunks/chunk-6IHWEHG3.js +1 -0
- package/build/js/chunks/chunk-AAPD5YU3.js +1 -0
- package/build/js/chunks/chunk-AKGGJKCA.js +35 -0
- package/build/js/chunks/chunk-EEWGHHL4.js +1 -0
- package/build/js/chunks/{chunk-OCKYBUXO.js → chunk-EIOVYBFS.js} +1 -1
- package/build/js/chunks/chunk-EYBP3672.js +1 -0
- package/build/js/chunks/{chunk-BQO4QYI6.js → chunk-F3Y2X52X.js} +1 -1
- package/build/js/chunks/chunk-HHA4HDG5.js +6 -0
- package/build/js/chunks/{chunk-RYXKMXTY.js → chunk-HILZP6OW.js} +1 -1
- package/build/js/chunks/chunk-LV6LGCDC.js +1 -0
- package/build/js/chunks/chunk-NYYGU4ZV.js +1 -0
- package/build/js/chunks/{chunk-XVH5A2QH.js → chunk-PDJEYYPX.js} +1 -1
- package/build/js/chunks/chunk-QHBYNYWX.js +1 -0
- package/build/js/chunks/{chunk-M2ZQCUEL.js → chunk-QHNV2CFJ.js} +1 -1
- package/build/js/chunks/{chunk-7EGT56UE.js → chunk-QMLTR5JH.js} +1 -1
- package/build/js/chunks/chunk-QWKATH4N.js +1 -0
- package/build/js/chunks/chunk-RY2EW3RR.js +1 -0
- package/build/js/chunks/{chunk-IVQL2BYY.js → chunk-S2GRD6GO.js} +1 -1
- package/build/js/chunks/chunk-SJIN27Q5.js +1 -0
- package/build/js/chunks/{chunk-7ZU6DPLL.js → chunk-VWEJFI2M.js} +1 -1
- package/build/js/chunks/{chunk-YXXMWHFX.js → chunk-X653DLOR.js} +1 -1
- package/build/js/chunks/chunk-Y3TODCJD.js +1 -0
- package/build/js/chunks/chunk-ZAXZRQYF.js +1 -0
- package/build/js/controls/CameraFOVSwitchControl.d.ts +2 -2
- package/build/js/controls/CameraFOVSwitchControl.js +1 -1
- package/build/js/controls/CameraSwitchControl.d.ts +2 -2
- package/build/js/controls/CameraSwitchControl.js +1 -1
- package/build/js/controls/TorchSwitchControl.d.ts +2 -2
- package/build/js/controls/TorchSwitchControl.js +1 -1
- package/build/js/controls/common.d.ts +2 -2
- package/build/js/controls/index.d.ts +2 -2
- package/build/js/controls/index.js +1 -1
- package/build/js/defaults/DefaultsCamera.d.ts +2 -2
- package/build/js/defaults/DefaultsCameraSettings.d.ts +1 -1
- package/build/js/global.d.d.ts +1 -0
- package/build/js/index.d.ts +2 -2
- package/build/js/index.js +1 -1
- package/build/js/moduleLoader.d.ts +2 -2
- package/build/js/private/CameraAccess.d.ts +1 -1
- package/build/js/private/CameraManager.d.ts +2 -2
- package/build/js/private/CameraManager.js +1 -1
- package/build/js/private/CameraPool.d.ts +3 -2
- package/build/js/private/CameraPool.js +1 -1
- package/build/js/private/CanvasDrawerWithMetrics.d.ts +2 -2
- package/build/js/private/CoreModuleLicenseTextProvider.d.ts +2 -2
- package/build/js/private/CoreModuleLicenseTextProvider.js +1 -1
- package/build/js/private/DataCaptureContextRelated.d.ts +2 -2
- package/build/js/private/FrameReaders/FrameReader.d.ts +2 -2
- package/build/js/private/FrameReaders/FrameReader.js +1 -1
- package/build/js/private/FrameReaders/FrameReaderAbstract.d.ts +2 -2
- package/build/js/private/FrameReaders/GrayScaleFrameReader.d.ts +2 -2
- package/build/js/private/FrameReaders/GrayScaleFrameReader.js +1 -1
- package/build/js/private/FrameReaders/index.d.ts +2 -2
- package/build/js/private/FrameReaders/index.js +1 -1
- package/build/js/private/NormalizedModuleLoaderOptions.d.ts +2 -2
- package/build/js/private/SingleImageUploaderView.d.ts +2 -2
- package/build/js/private/SingleImageUploaderView.js +1 -1
- package/build/js/private/ViewControls+related.js +1 -1
- package/build/js/private/ViewControls_related.d.ts +2 -2
- package/build/js/private/ViewsRegistry.d.ts +2 -2
- package/build/js/private/customHowler/AudioCache.d.ts +37 -0
- package/build/js/private/customHowler/AudioCache.js +1 -0
- package/build/js/private/customHowler/Howl.d.ts +189 -0
- package/build/js/private/customHowler/Howl.js +1 -0
- package/build/js/private/customHowler/HowlRegistry.d.ts +18 -0
- package/build/js/private/customHowler/HowlRegistry.js +1 -0
- package/build/js/private/customHowler/Html5Sound.d.ts +52 -0
- package/build/js/private/customHowler/Html5Sound.js +1 -0
- package/build/js/private/customHowler/UnlockManager.d.ts +39 -0
- package/build/js/private/customHowler/UnlockManager.js +1 -0
- package/build/js/private/customHowler/WebAudioContextManager.d.ts +161 -0
- package/build/js/private/customHowler/WebAudioContextManager.js +1 -0
- package/build/js/private/customHowler/debug.d.ts +28 -0
- package/build/js/private/customHowler/debug.js +1 -0
- package/build/js/private/customHowler/index.d.ts +2 -0
- package/build/js/private/customHowler/index.js +1 -0
- package/build/js/private/customHowler/setup.d.ts +55 -0
- package/build/js/private/customHowler/setup.js +1 -0
- package/build/js/private/ui/atoms/Toast.d.ts +2 -2
- package/build/js/private/ui/atoms/Toast.js +1 -1
- package/build/js/private/ui/molecules/CameraFOVSwitchButton.js +1 -1
- package/build/js/private/ui/molecules/CameraSwitchButton.js +1 -1
- package/build/js/private/ui/molecules/HintPresenter.d.ts +2 -2
- package/build/js/private/ui/molecules/HintPresenter.js +1 -1
- package/build/js/private/ui/molecules/TorchSwitchIconButton.d.ts +1 -1
- package/build/js/private/ui/molecules/TorchSwitchIconButton.js +1 -1
- package/build/js/private/utils/replaceImagesInViewUtils.d.ts +2 -2
- package/build/js/worker/ImageConverterForwarder.d.ts +2 -2
- package/build/js/worker/ViewInfoHelper.d.ts +2 -2
- package/build/js/worker/WorkerMain.d.ts +2 -2
- package/build/js/worker/WorkerMain.js +1 -1
- package/build/js/worker/coreCapture.inlineWorker.d.ts +2 -2
- package/build/js/worker/coreCapture.inlineWorker.js +1 -1
- package/build/js/worker/dataCaptureEngine.d.ts +2 -2
- package/build/js/worker/dataCaptureEngine.js +1 -1
- package/build/js/worker/dataCaptureLoader.d.ts +2 -2
- package/build/js/worker/dataCaptureWorkerRelated.d.ts +2 -2
- package/build/js/worker/index.d.ts +2 -2
- package/build/js/worker/index.js +1 -1
- package/package.json +1 -1
- package/build/js/chunks/chunk-7JVAQ2A3.js +0 -1
- package/build/js/chunks/chunk-BV63CXZF.js +0 -1
- package/build/js/chunks/chunk-E7IMQECS.js +0 -35
- package/build/js/chunks/chunk-IBDUCVB4.js +0 -1
- package/build/js/chunks/chunk-KUAZYGPM.js +0 -1
- package/build/js/chunks/chunk-WBYBTOBZ.js +0 -1
- package/build/js/chunks/chunk-XW3Z6KKS.js +0 -1
- package/build/js/chunks/chunk-YMM2PV73.js +0 -6
- package/build/js/private/customHowler.d.ts +0 -27
- package/build/js/private/customHowler.js +0 -1
- /package/build/js/chunks/{chunk-FHNMZZV2.js → chunk-YRQQE3NR.js} +0 -0
- /package/build/js/chunks/{chunk-DQ5X7FNV.js → chunk-ZCEA7BEH.js} +0 -0
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
/// <reference types="emscripten" />
|
|
2
|
+
import { AudioCache } from './AudioCache.js';
|
|
3
|
+
|
|
4
|
+
declare function getAudioCacheInstance(): AudioCache;
|
|
5
|
+
/**
|
|
6
|
+
* Global Web Audio Context manager
|
|
7
|
+
* Manages a single AudioContext instance for efficient audio playback
|
|
8
|
+
*
|
|
9
|
+
* ## iOS Safari Audio Workaround
|
|
10
|
+
*
|
|
11
|
+
* iOS Safari has a known issue where Web Audio API playback may not produce
|
|
12
|
+
* sound on real devices (works fine in simulator). The workaround routes audio
|
|
13
|
+
* through a MediaStreamDestination connected to an HTML5 Audio element:
|
|
14
|
+
*
|
|
15
|
+
* ```
|
|
16
|
+
* AudioBufferSourceNode → GainNode → MediaStreamDestination → HTML5 <audio> → Speakers
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* This tricks iOS Safari into treating the audio as a "live stream" (like a video
|
|
20
|
+
* conference), which it allows to play reliably. The HTML5 audio element stays
|
|
21
|
+
* playing continuously, acting as a bridge between Web Audio and the actual speakers.
|
|
22
|
+
*
|
|
23
|
+
* ## Why This Works
|
|
24
|
+
*
|
|
25
|
+
* - iOS Safari blocks standard Web Audio destination output (silently fails)
|
|
26
|
+
* - MediaStreams are treated differently (needed for WebRTC/conferencing)
|
|
27
|
+
* - By routing through MediaStream, iOS allows the audio to reach speakers
|
|
28
|
+
* - Web Audio API still runs off main thread (smooth UI rendering)
|
|
29
|
+
*
|
|
30
|
+
* ## References
|
|
31
|
+
*
|
|
32
|
+
* - Community workaround: https://www.reddit.com/r/webdev/comments/1ldjqa1/comment/mymw7v3/
|
|
33
|
+
* - Used for background audio, PWAs, and continuous scanning scenarios
|
|
34
|
+
*/
|
|
35
|
+
declare class WebAudioContextManager {
|
|
36
|
+
private audioContext;
|
|
37
|
+
private isUnlocked;
|
|
38
|
+
private unlockPromise;
|
|
39
|
+
private unlockAttempts;
|
|
40
|
+
private readonly MAX_UNLOCK_ATTEMPTS;
|
|
41
|
+
private lastKnownSampleRate;
|
|
42
|
+
/** iOS-specific: MediaStreamDestination for routing audio */
|
|
43
|
+
private mediaStreamDestination;
|
|
44
|
+
/** iOS-specific: HTML5 audio element that plays the MediaStream */
|
|
45
|
+
private streamAudioElement;
|
|
46
|
+
private handlerStreamAudioElementError;
|
|
47
|
+
private handlerStreamAudioElementPause;
|
|
48
|
+
/**
|
|
49
|
+
* Get the AudioContext (must be created via unlock first on iOS)
|
|
50
|
+
*
|
|
51
|
+
* ## Sample Rate: Native Hardware Rate
|
|
52
|
+
*
|
|
53
|
+
* We let the browser use its native sample rate to prevent pitch shifting:
|
|
54
|
+
*
|
|
55
|
+
* **The Problem with Forcing 44.1kHz:**
|
|
56
|
+
* - iOS may ignore the sampleRate parameter in AudioContext constructor
|
|
57
|
+
* - This creates a mismatch between requested (44.1kHz) and actual sample rate
|
|
58
|
+
* - When AudioContext uses different rate than what we requested, audio plays at wrong pitch
|
|
59
|
+
* - This happens especially on iOS with dynamic audio routing
|
|
60
|
+
*
|
|
61
|
+
* **The Solution:**
|
|
62
|
+
* - Let the browser choose its native sample rate (no sampleRate parameter)
|
|
63
|
+
* - Detect the actual sample rate and remember it
|
|
64
|
+
* - If sample rate changes during session, recreate context to match
|
|
65
|
+
* - Web Audio API automatically resamples audio buffers to match
|
|
66
|
+
* - Sound quality remains identical (transparent resampling)
|
|
67
|
+
*
|
|
68
|
+
* **Why This Works:**
|
|
69
|
+
* - AudioContext will use the hardware's preferred rate
|
|
70
|
+
* - No mismatch between requested and actual rates
|
|
71
|
+
* - Prevents pitch shifting caused by rate mismatches
|
|
72
|
+
* - More stable across different iOS devices and configurations
|
|
73
|
+
*/
|
|
74
|
+
getContext(): AudioContext;
|
|
75
|
+
/**
|
|
76
|
+
* Get the audio destination node.
|
|
77
|
+
*
|
|
78
|
+
* On iOS: Returns MediaStreamDestination routed through HTML5 Audio element
|
|
79
|
+
* On other platforms: Returns the standard AudioContext destination
|
|
80
|
+
*
|
|
81
|
+
* ## iOS MediaStreamDestination Workaround
|
|
82
|
+
*
|
|
83
|
+
* Why we need this:
|
|
84
|
+
* - iOS Safari silently blocks Web Audio API output on real devices
|
|
85
|
+
* - The AudioContext reports "running" and source.start() succeeds
|
|
86
|
+
* - But no sound reaches the speakers (works fine in iOS Simulator)
|
|
87
|
+
*
|
|
88
|
+
* The solution:
|
|
89
|
+
* 1. Create a MediaStreamDestination node from the AudioContext
|
|
90
|
+
* 2. Create an HTML5 <audio> element
|
|
91
|
+
* 3. Connect the audio element to the MediaStream via srcObject
|
|
92
|
+
* 4. Start playing the audio element (it plays continuously as a live stream)
|
|
93
|
+
* 5. Route all audio through this destination instead of context.destination
|
|
94
|
+
*
|
|
95
|
+
* Result:
|
|
96
|
+
* - iOS Safari treats this as a "live stream" (like WebRTC)
|
|
97
|
+
* - Live streams are allowed to play reliably on iOS
|
|
98
|
+
* - The <audio> element acts as a bridge to the speakers
|
|
99
|
+
* - Individual sounds play through the stream as they're triggered
|
|
100
|
+
*
|
|
101
|
+
* ## Lifecycle & Resource Management
|
|
102
|
+
*
|
|
103
|
+
* The stream audio element plays continuously for the page lifetime. This is
|
|
104
|
+
* intentional because:
|
|
105
|
+
* - Recreating it requires a user gesture on iOS (can't do on-demand)
|
|
106
|
+
* - Resource usage is minimal when no audio is playing through it
|
|
107
|
+
* - Stopping and restarting could fail due to iOS autoplay restrictions
|
|
108
|
+
*
|
|
109
|
+
* The element can be cleaned up by calling dispose() if needed, but this will
|
|
110
|
+
* require a new user gesture to re-enable audio on iOS.
|
|
111
|
+
*
|
|
112
|
+
* Error handling: If the stream stops or errors unexpectedly, it automatically
|
|
113
|
+
* attempts to restart to maintain audio functionality.
|
|
114
|
+
*
|
|
115
|
+
* @returns AudioDestinationNode (desktop) or MediaStreamAudioDestinationNode (iOS)
|
|
116
|
+
*/
|
|
117
|
+
getDestination(): AudioDestinationNode | MediaStreamAudioDestinationNode;
|
|
118
|
+
onStreamAudioElementError(): void;
|
|
119
|
+
onStreamAudioElementPause(): void;
|
|
120
|
+
/**
|
|
121
|
+
* Create AudioContext (must be called synchronously during a user gesture on iOS)
|
|
122
|
+
*/
|
|
123
|
+
private createContext;
|
|
124
|
+
/**
|
|
125
|
+
* Unlock audio playback on iOS/mobile during user gesture.
|
|
126
|
+
*
|
|
127
|
+
* ## iOS Safari Requirements
|
|
128
|
+
*
|
|
129
|
+
* iOS Safari requires explicit user interaction before audio can play:
|
|
130
|
+
*
|
|
131
|
+
* 1. **AudioContext must be created during a user gesture**
|
|
132
|
+
* - Creating it later (async) will result in silent playback
|
|
133
|
+
* - Must happen in synchronous event handler (touchstart, click, etc.)
|
|
134
|
+
*
|
|
135
|
+
* 2. **AudioContext.resume() must be called during a user gesture**
|
|
136
|
+
* - Even if state is "running", calling resume() during gesture is required
|
|
137
|
+
* - Must be initiated synchronously (can complete asynchronously)
|
|
138
|
+
*
|
|
139
|
+
* 3. **Actual audio playback must occur during the unlock**
|
|
140
|
+
* - Just creating and resuming context isn't enough
|
|
141
|
+
* - Must play a buffer (even silent) to truly unlock audio
|
|
142
|
+
*
|
|
143
|
+
* ## Implementation Flow
|
|
144
|
+
*
|
|
145
|
+
* 1. User taps screen (event handler runs synchronously)
|
|
146
|
+
* 2. Create AudioContext synchronously
|
|
147
|
+
* 3. Call context.resume() synchronously (completes async)
|
|
148
|
+
* 4. This async method plays a silent scratch buffer
|
|
149
|
+
* 5. On iOS, this creates MediaStreamDestination on first call
|
|
150
|
+
* 6. Mark as unlocked after successful playback
|
|
151
|
+
*
|
|
152
|
+
* @returns Promise that resolves when unlock is complete
|
|
153
|
+
*/
|
|
154
|
+
unlock(): Promise<void>;
|
|
155
|
+
/**
|
|
156
|
+
* Get the unlock status
|
|
157
|
+
*/
|
|
158
|
+
get unlocked(): boolean;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export { WebAudioContextManager, getAudioCacheInstance };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{c as WebAudioContextManager,a as createAudioContext,b as getAudioCacheInstance}from'../../chunks/chunk-Y3TODCJD.js';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/// <reference types="emscripten" />
|
|
2
|
+
/**
|
|
3
|
+
* Debug logging wrapper - only logs when DEBUG is enabled
|
|
4
|
+
*
|
|
5
|
+
* Used for diagnostic information that helps troubleshoot audio issues.
|
|
6
|
+
* These logs are verbose and should not appear in production.
|
|
7
|
+
*
|
|
8
|
+
* ## Build-Time Configuration
|
|
9
|
+
*
|
|
10
|
+
* Enable debug logging by building with:
|
|
11
|
+
* ```bash
|
|
12
|
+
* DEBUG_AUDIO=true npm run build
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* ## Debug Symbols
|
|
16
|
+
*
|
|
17
|
+
* - 🎧 Unlock event listener setup
|
|
18
|
+
* - 👆 User interaction detection
|
|
19
|
+
* - 🎵 AudioContext creation
|
|
20
|
+
* - 🔓 Unlock process (context resume, scratch buffer playback)
|
|
21
|
+
* - 🔊 Audio playback state, buffer data, and routing details
|
|
22
|
+
* - ✅ Success indicators
|
|
23
|
+
* - ⚠️ Warnings for potential issues
|
|
24
|
+
* - ❌ Error indicators
|
|
25
|
+
*/
|
|
26
|
+
declare const debugLog: CallableFunction | undefined;
|
|
27
|
+
|
|
28
|
+
export { debugLog };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{a as debugLog}from'../../chunks/chunk-SJIN27Q5.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{a as disposeGlobalAudioContext,c as ensureUnlockSetup,b as resetGlobalAudioContext}from'../../chunks/chunk-6AQGNP4S.js';export{a as Howl}from'../../chunks/chunk-EEWGHHL4.js';
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/// <reference types="emscripten" />
|
|
2
|
+
import { WebAudioContextManager } from './WebAudioContextManager.js';
|
|
3
|
+
import './AudioCache.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Get or create the global audio context manager
|
|
7
|
+
* NOTE: Does NOT create AudioContext yet - that happens during unlock
|
|
8
|
+
*/
|
|
9
|
+
declare function getGlobalAudioContext(): WebAudioContextManager;
|
|
10
|
+
/**
|
|
11
|
+
* Setup unlock handlers - can be called multiple times safely
|
|
12
|
+
*
|
|
13
|
+
* ## When This Is Called
|
|
14
|
+
*
|
|
15
|
+
* This function is called in:
|
|
16
|
+
*
|
|
17
|
+
* DataCaptureContext.forLicenseKey() - During SDK initialization
|
|
18
|
+
*
|
|
19
|
+
* ## Why This Exists
|
|
20
|
+
*
|
|
21
|
+
* iOS Safari and modern browsers require user interaction before audio can play
|
|
22
|
+
* (autoplay policy). This function sets up event listeners for user gestures that
|
|
23
|
+
* will unlock audio playback.
|
|
24
|
+
*
|
|
25
|
+
* ## Event Listener Strategy
|
|
26
|
+
*
|
|
27
|
+
* Listens for: touchstart, touchend, click, keydown (same as howler.js)
|
|
28
|
+
* - Uses capture phase (true) to catch events early
|
|
29
|
+
* - Removes all listeners after first unlock (one-time setup)
|
|
30
|
+
*
|
|
31
|
+
* ## Synchronous vs Asynchronous Operations
|
|
32
|
+
*
|
|
33
|
+
* The unlock process has two phases:
|
|
34
|
+
*
|
|
35
|
+
* **Phase 1 - Synchronous (in event handler, during user gesture):**
|
|
36
|
+
* - Create AudioContext (iOS requirement)
|
|
37
|
+
* - Initiate context.resume() (iOS requirement)
|
|
38
|
+
* - These MUST happen synchronously or iOS will block audio
|
|
39
|
+
*
|
|
40
|
+
* **Phase 2 - Asynchronous (after event handler returns):**
|
|
41
|
+
* - Wait for resume() to complete
|
|
42
|
+
* - Play silent scratch buffer to verify unlock
|
|
43
|
+
* - Create MediaStreamDestination (iOS)
|
|
44
|
+
* - Mark as unlocked
|
|
45
|
+
*
|
|
46
|
+
* ## Why Synchronous Execution is Critical
|
|
47
|
+
*
|
|
48
|
+
* iOS Safari only allows certain audio operations during the synchronous
|
|
49
|
+
* execution of a user event handler. If we wait for promises or use async/await,
|
|
50
|
+
* the event handler returns and iOS considers the "user gesture context" to be over.
|
|
51
|
+
* Any audio operations after that point will be silently blocked.
|
|
52
|
+
*/
|
|
53
|
+
declare function ensureUnlockSetup(): void;
|
|
54
|
+
|
|
55
|
+
export { ensureUnlockSetup, getGlobalAudioContext };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{b as disposeGlobalAudioContext,d as ensureUnlockSetup,a as getGlobalAudioContext,c as resetGlobalAudioContext}from'../../chunks/chunk-22UMTZI6.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/// <reference types="emscripten" />
|
|
2
|
-
import { N as GenericHint } from '../../../DataCaptureContext-
|
|
2
|
+
import { N as GenericHint } from '../../../DataCaptureContext-BcSpF9Dt.js';
|
|
3
3
|
import { ScanditIcon } from '../../../ScanditIcon.js';
|
|
4
4
|
import { ScanditHTMLElement } from '../../utils/ScanditHTMLElement.js';
|
|
5
|
-
import '../../../Camera-
|
|
5
|
+
import '../../../Camera-Cc__1Nc-.js';
|
|
6
6
|
import '../../../commons/Rect.js';
|
|
7
7
|
import '../../Serializable.js';
|
|
8
8
|
import '../../../commons/Point.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{b as Toast,a as ToastEvents}from'../../../chunks/chunk-
|
|
1
|
+
export{b as Toast,a as ToastEvents}from'../../../chunks/chunk-PDJEYYPX.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import {a as a$
|
|
1
|
+
import {a as a$3}from'../../../chunks/chunk-WJOT37ST.js';import {a as a$2}from'../../../chunks/chunk-SSTFVERQ.js';import {a as a$7}from'../../../chunks/chunk-74GO72VC.js';import {a as a$6}from'../../../chunks/chunk-XIAF6V7E.js';import {a as a$1}from'../../../chunks/chunk-UWBNF47P.js';import {a}from'../../../chunks/chunk-EV4OEANA.js';import {a as a$4}from'../../../chunks/chunk-3A4KLILV.js';import {a as a$5}from'../../../chunks/chunk-LSZZVJ6B.js';var i=class i extends a{constructor(){super();this._currentMode="1.0x";this._ariaLabel="Switch camera field of view";this._useCustomImages=false;let e=this.attachShadow({mode:"open"});e.innerHTML=a$1`<button type="button"><slot></slot></button>`,e.append(i.createStyleElement().cloneNode(true));}get button(){var e,t;return (t=(e=this.shadowRoot)==null?void 0:e.querySelector("button"))!=null?t:void 0}get wideIcon(){var e;return (e=this.querySelector(a$2.tag))!=null?e:void 0}get ultraWideIcon(){var e;return (e=this.querySelector(a$3.tag))!=null?e:void 0}static create(){return document.createElement(i.tag)}static register(){a$4({[i.tag]:i});}static createStyleElement(){return a$5`:host{display:inline-block;--button-size:32px;--camera-fov-wide-idle:none;--camera-fov-wide-pressed:none;--camera-fov-ultrawide-idle:none;--camera-fov-ultrawide-pressed:none}:host[hidden]{display:none}button{align-items:center;border:none;cursor:pointer;display:flex;height:var(--button-size);justify-content:center;margin:0;outline:none;padding:0;width:var(--button-size);-webkit-tap-highlight-color:transparent;background:#0000;background-position:50%;background-repeat:no-repeat;background-size:contain;transform-origin:center;transition:outline .2s ease-in-out,transform .1s ease-in-out}button[data-pressed=true]{transform:scale(.95)}button[data-pressed=false]{transform:scale(1)}:host button:focus-visible{outline:2px solid #06c;outline-offset:2px}:host([data-use-custom-images=true]) ::slotted(*){display:none!important}:host([data-use-custom-images=true]) button{background-image:var(--camera-fov-wide-idle)}:host([data-use-custom-images=true]) button[data-pressed=true]{background-image:var(--camera-fov-wide-pressed)}:host([data-use-custom-images=true][data-current-mode="0.5x"]) button{background-image:var(--camera-fov-ultrawide-idle)}:host([data-use-custom-images=true][data-current-mode="0.5x"]) button[data-pressed=true]{background-image:var(--camera-fov-ultrawide-pressed)}`}connectedCallback(){if(!this.button)return;this.setupButtonWithSvgIcons();let e=this.button;!this._gestureRecognizer&&e&&(this._gestureRecognizer=new a$6(e),this._gestureRecognizer.addListener(this)),this.setAttribute("aria-label",this._ariaLabel);}setupButtonWithSvgIcons(){if(this.button){if(a$2.register(),a$3.register(),!this.wideIcon){let e=a$2.create();e.style.display="flex",this.appendChild(e);}if(!this.ultraWideIcon){let e=a$3.create();e.style.display="none",this.appendChild(e);}}}disconnectedCallback(){this._gestureRecognizer&&(this._gestureRecognizer.removeAllListeners(),this._gestureRecognizer=void 0);}set mode(e){e!=="0.5x"&&e!=="1.0x"||(this._currentMode=e,this.setAttribute("data-current-mode",e),this.updateIconVisibility());}get mode(){return this._currentMode}get ariaLabel(){return this._ariaLabel}set ariaLabel(e){this._ariaLabel=e,this.setAttribute("aria-label",e);}set useCustomImages(e){this._useCustomImages=e,e?this.setAttribute("data-use-custom-images","true"):this.removeAttribute("data-use-custom-images");}setCustomImages(e){let t=this.style,p=e.wide.idle?`url(${JSON.stringify(e.wide.idle)})`:"none",m=e.wide.pressed?`url(${JSON.stringify(e.wide.pressed)})`:"none",g=e.ultraWide.idle?`url(${JSON.stringify(e.ultraWide.idle)})`:"none",b=e.ultraWide.pressed?`url(${JSON.stringify(e.ultraWide.pressed)})`:"none";t.setProperty("--camera-fov-wide-idle",p),t.setProperty("--camera-fov-wide-pressed",m),t.setProperty("--camera-fov-ultrawide-idle",g),t.setProperty("--camera-fov-ultrawide-pressed",b),this.useCustomImages=true;}updateIconVisibility(){let e=this.wideIcon,t=this.ultraWideIcon;!e||!t||(this._currentMode==="0.5x"?(e.style.display="none",t.style.display="flex"):(e.style.display="flex",t.style.display="none"));}onTap(){this.dispatchEvent(new a$7({currentMode:this._currentMode}));}onPress(){let e=this.button;e&&e.setAttribute("data-pressed","true");}onRelease(){let e=this.button;e&&e.setAttribute("data-pressed","false");}};i.tag="scandit-camera-fov-switch-button";var c=i;export{c as CameraFOVSwitchButton};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {a as a$3}from'../../../chunks/chunk-BSX3V75N.js';import {a as a$2}from'../../../chunks/chunk-A3ZT7PJA.js';import {b}from'../../../chunks/chunk-74GO72VC.js';import {a as a$6}from'../../../chunks/chunk-XIAF6V7E.js';import {a as a$7}from'../../../chunks/chunk-SGL5J2CI.js';import {a as a$1}from'../../../chunks/chunk-UWBNF47P.js';import {a}from'../../../chunks/chunk-EV4OEANA.js';import {a as a$4}from'../../../chunks/chunk-3A4KLILV.js';import {a as a$5}from'../../../chunks/chunk-LSZZVJ6B.js';var i=class i extends a{constructor(){super();this._currentMode="back";this._ariaLabel="Switch camera";this._useCustomImages=false;let t=this.attachShadow({mode:"open"});t.innerHTML=a$1`<button type="button"><slot></slot></button>`,t.append(i.createStyleElement().cloneNode(true));}get button(){var t,e;return (e=(t=this.shadowRoot)==null?void 0:t.querySelector("button"))!=null?e:void 0}get frontIcon(){var t;return (t=this.querySelector(a$2.tag))!=null?t:void 0}get backIcon(){var t;return (t=this.querySelector(a$3.tag))!=null?t:void 0}static create(){return document.createElement(i.tag)}static register(){a$4({[i.tag]:i});}static createStyleElement(){return a$5`:host{display:inline-block;--button-size:32px;--camera-switch-idle:none;--camera-switch-pressed:none}:host[hidden]{display:none}button{align-items:center;border:none;cursor:pointer;display:flex;height:var(--button-size);justify-content:center;margin:0;outline:none;padding:0;width:var(--button-size);-webkit-tap-highlight-color:transparent;background:#0000;background-position:50%;background-repeat:no-repeat;background-size:contain;opacity:1;transform-origin:center;transition:outline .2s ease-in-out,transform .1s ease-in-out}button[data-pressed=true]{transform:scale(.95)}button[data-pressed=false]{transform:scale(1)}:host button:focus-visible{outline:2px solid #06c;outline-offset:2px}:host([data-use-custom-images=true]) ::slotted(*){display:none!important}:host([data-use-custom-images=true]) button{background-image:var(--camera-switch-idle)}:host([data-use-custom-images=true]) button[data-pressed=true]{background-image:var(--camera-switch-pressed)}`}connectedCallback(){this.button&&(this.setupButtonWithSvgIcons(),!this._gestureRecognizer&&this.button&&(this._gestureRecognizer=new a$6(this.button),this._gestureRecognizer.addListener(this)),this.setAttribute("aria-label",this._ariaLabel));}setupButtonWithSvgIcons(){if(!this.button)return;a$2.register(),a$3.register();let t=a$7.fromHex("#FFFFFF");if(!this.frontIcon){let e=a$2.create();e.fill=`#${t.toJSON()}`,e.style.display="flex",this.appendChild(e);}if(!this.backIcon){let e=a$3.create();e.fill=`#${t.toJSON()}`,e.style.display="none",this.appendChild(e);}}disconnectedCallback(){this._gestureRecognizer&&(this._gestureRecognizer.removeAllListeners(),this._gestureRecognizer=void 0);}set mode(t){t!=="front"&&t!=="back"||(this._currentMode=t,this.updateIconVisibility());}get mode(){return this._currentMode}get ariaLabel(){return this._ariaLabel}set ariaLabel(t){this._ariaLabel=t,this.setAttribute("aria-label",t);}set useCustomImages(t){this._useCustomImages=t,t?this.setAttribute("data-use-custom-images","true"):this.removeAttribute("data-use-custom-images");}setCustomImages(t){let e=this.style,h=t.idle?`url(${JSON.stringify(t.idle)})`:"none",m=t.pressed?`url(${JSON.stringify(t.pressed)})`:"none";e.setProperty("--camera-switch-idle",h),e.setProperty("--camera-switch-pressed",m),this.useCustomImages=true;}updateIconVisibility(){let t=this.frontIcon,e=this.backIcon;!t||!e||(this._currentMode==="back"?(t.style.display="none",e.style.display="flex"):(t.style.display="flex",e.style.display="none"));}onTap(){this.dispatchEvent(new b({currentMode:this._currentMode}));}onPress(){let t=this.button;t&&t.setAttribute("data-pressed","true");}onRelease(){let t=this.button;t&&t.setAttribute("data-pressed","false");}};i.tag="scandit-camera-switch-button";var p=i;export{p as CameraSwitchButton};
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
import '../../../ScanditIcon.js';
|
|
3
3
|
import '../../utils/ScanditHTMLElement.js';
|
|
4
4
|
import '../../../commons/Rect.js';
|
|
5
|
-
export { H as HintPresenter, bs as HintPresenterEvents } from '../../../DataCaptureContext-
|
|
5
|
+
export { H as HintPresenter, bs as HintPresenterEvents } from '../../../DataCaptureContext-BcSpF9Dt.js';
|
|
6
6
|
import '../../../commons/Color.js';
|
|
7
7
|
import '../../Serializable.js';
|
|
8
8
|
import '../../../commons/Point.js';
|
|
9
9
|
import '../../../commons/Size.js';
|
|
10
|
-
import '../../../Camera-
|
|
10
|
+
import '../../../Camera-Cc__1Nc-.js';
|
|
11
11
|
import '../../privateAccess.js';
|
|
12
12
|
import '../../../DataCaptureContextSettings.js';
|
|
13
13
|
import '../../../commons/JSONType.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{b as HintPresenter,a as HintPresenterEvents}from'../../../chunks/chunk-
|
|
1
|
+
export{b as HintPresenter,a as HintPresenterEvents}from'../../../chunks/chunk-HILZP6OW.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="emscripten" />
|
|
2
|
-
import { T as TorchState } from '../../../Camera-
|
|
2
|
+
import { T as TorchState } from '../../../Camera-Cc__1Nc-.js';
|
|
3
3
|
import { GestureRecognizerListener } from '../../GestureRecognizer/GestureRecognizer.js';
|
|
4
4
|
import { ScanditHTMLElement } from '../../utils/ScanditHTMLElement.js';
|
|
5
5
|
import '../../../commons/Rect.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {a as a$3}from'../../../chunks/chunk-NMXQDQYI.js';import {a as a$2}from'../../../chunks/chunk-SX5ZLP2O.js';import {c}from'../../../chunks/chunk-74GO72VC.js';import {a as a$7}from'../../../chunks/chunk-XIAF6V7E.js';import {a as a$6}from'../../../chunks/chunk-SGL5J2CI.js';import {a as a$1}from'../../../chunks/chunk-UWBNF47P.js';import {a}from'../../../chunks/chunk-EV4OEANA.js';import {a as a$4}from'../../../chunks/chunk-3A4KLILV.js';import {a as a$5}from'../../../chunks/chunk-LSZZVJ6B.js';var s=class s extends a{constructor(){super();this._size=32;this._shadow=false;this._ariaLabel="Toggle torch";this._useCustomImages=false;let t=this.attachShadow({mode:"open"});t.innerHTML=a$1`<button><slot></slot></button>`,t.append(s.createStyleElement().cloneNode(true));}get button(){var t,e;return (e=(t=this.shadowRoot)==null?void 0:t.querySelector("button"))!=null?e:void 0}get onIcon(){var t;return (t=this.querySelector(a$2.tag))!=null?t:void 0}get offIcon(){var t;return (t=this.querySelector(a$3.tag))!=null?t:void 0}set size(t){this._size=t;let e=this.onIcon,o=this.offIcon;e&&(e.size=this._size),o&&(o.size=this._size);}get size(){return this._size}set shadow(t){this._shadow=t;let e=this.onIcon,o=this.offIcon;e&&e.toggleAttribute("shadow",this._shadow),o&&o.toggleAttribute("shadow",this._shadow);}get shadow(){return this._shadow}get state(){var t;return (t=this.getAttribute("state"))!=null?t:"off"}set state(t){this.setAttribute("state",t),this.setAttribute("aria-pressed",t==="on"?"true":"false");}get ariaLabel(){return this._ariaLabel}set ariaLabel(t){this._ariaLabel=t,this.setAttribute("aria-label",t);}set useCustomImages(t){this._useCustomImages=t,t?this.setAttribute("data-use-custom-images","true"):this.removeAttribute("data-use-custom-images");}setCustomImages(t){let e=this.style,o=t.on.idle?`url(${JSON.stringify(t.on.idle)})`:"none",i=t.on.pressed?`url(${JSON.stringify(t.on.pressed)})`:"none",n=t.off.idle?`url(${JSON.stringify(t.off.idle)})`:"none",b=t.off.pressed?`url(${JSON.stringify(t.off.pressed)})`:"none";e.setProperty("--torch-on-idle",o),e.setProperty("--torch-on-pressed",i),e.setProperty("--torch-off-idle",n),e.setProperty("--torch-off-pressed",b),this.useCustomImages=true;}static create(){return document.createElement(s.tag)}static register(){a$4({[s.tag]:s});}static createStyleElement(){return a$5`:host{display:inline-block;--button-size:32px;--torch-on-idle:none;--torch-on-pressed:none;--torch-off-idle:none;--torch-off-pressed:none}:host[hidden]{display:none}:host button{align-items:center;background:none;background-position:50%;background-repeat:no-repeat;background-size:contain;border:none;cursor:pointer;display:flex;height:var(--button-size);justify-content:center;margin:0;opacity:1;outline:none;padding:0;width:var(--button-size);-webkit-tap-highlight-color:transparent;transform-origin:center;transition:outline .2s ease-in-out,opacity .2s ease-in-out,transform .1s ease-in-out}:host([state=off]) button{opacity:.5}button[data-pressed=true]{transform:scale(.95)}button[data-pressed=false]{transform:scale(1)}:host button:focus-visible{outline:2px solid #06c;outline-offset:2px}:host([data-use-custom-images=true]) ::slotted(*){display:none!important}:host([data-use-custom-images=true][state=on]) button{background-image:var(--torch-on-idle)}:host([data-use-custom-images=true][state=on]) button[data-pressed=true]{background-image:var(--torch-on-pressed)}:host([data-use-custom-images=true][state=off]) button{background-image:var(--torch-off-idle)}:host([data-use-custom-images=true][state=off]) button[data-pressed=true]{background-image:var(--torch-off-pressed)}`}connectedCallback(){if(!this.button)return;if(a$2.register(),a$3.register(),!this.onIcon||!this.offIcon){let o=a$6.fromHex("#FFFFFF"),i=a$2.create(),n=a$3.create();i.toggleAttribute("shadow",this._shadow),n.toggleAttribute("shadow",this._shadow),i.size=this._size,n.size=this._size,n.fill=`#${o.toJSON()}`,i.fill=`#${o.toJSON()}`,this.appendChild(i),this.appendChild(n);}let t="off";(this.getAttribute("state")==="on"||this.getAttribute("state")==="off")&&(t=this.getAttribute("state")),this.state=t;let e=this.button;!this._gestureRecognizer&&e&&(this._gestureRecognizer=new a$7(e),this._gestureRecognizer.addListener(this)),this.setAttribute("aria-label",this._ariaLabel),this.setAttribute("aria-pressed",t==="on"?"true":"false");}attributeChangedCallback(t,e,o){t==="state"&&this.render(o);}render(t){let e=this.onIcon,o=this.offIcon;t==="on"?(o!=null&&(o.style.display="none"),e!=null&&(e.style.display="flex")):(e!=null&&(e.style.display="none"),o!=null&&(o.style.display="flex"));}disconnectedCallback(){this._gestureRecognizer&&(this._gestureRecognizer.removeAllListeners(),this._gestureRecognizer=void 0);}onTap(){this.dispatchEvent(new c({currentState:this.state}));}onPress(){let t=this.button;t&&t.setAttribute("data-pressed","true");}onRelease(){let t=this.button;t&&t.setAttribute("data-pressed","false");}};s.tag="scandit-torch-switch-icon-button",s.observedAttributes=["state"];var g=s;export{g as TorchSwitchIconButton};
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
import { Size } from '../../commons/Size.js';
|
|
3
3
|
import { Optional } from '../../tsHelper.js';
|
|
4
4
|
import '../../ScanditIcon.js';
|
|
5
|
-
import '../../DataCaptureContext-
|
|
5
|
+
import '../../DataCaptureContext-BcSpF9Dt.js';
|
|
6
6
|
import '../Serializable.js';
|
|
7
7
|
import '../../commons/Color.js';
|
|
8
8
|
import './ScanditHTMLElement.js';
|
|
9
|
-
import '../../Camera-
|
|
9
|
+
import '../../Camera-Cc__1Nc-.js';
|
|
10
10
|
import '../../commons/Rect.js';
|
|
11
11
|
import '../../commons/Point.js';
|
|
12
12
|
import '../privateAccess.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="emscripten" />
|
|
2
2
|
import { ImageConverterInstance, ImageBuffer, BitmapWithFormat } from '../private/djinni-types/index.js';
|
|
3
|
-
import { W as WorkerFunctions } from '../DataCaptureContext-
|
|
4
|
-
import '../Camera-
|
|
3
|
+
import { W as WorkerFunctions } from '../DataCaptureContext-BcSpF9Dt.js';
|
|
4
|
+
import '../Camera-Cc__1Nc-.js';
|
|
5
5
|
import '../commons/Rect.js';
|
|
6
6
|
import '../private/Serializable.js';
|
|
7
7
|
import '../commons/Point.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="emscripten" />
|
|
2
|
-
import { V as ViewInfo } from '../DataCaptureContext-
|
|
3
|
-
import '../Camera-
|
|
2
|
+
import { V as ViewInfo } from '../DataCaptureContext-BcSpF9Dt.js';
|
|
3
|
+
import '../Camera-Cc__1Nc-.js';
|
|
4
4
|
import '../commons/Rect.js';
|
|
5
5
|
import '../private/Serializable.js';
|
|
6
6
|
import '../commons/Point.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="emscripten" />
|
|
2
|
-
import { K as DataCaptureEngine, L as Module, Q as AnyDataCaptureActionMessage, R as AugmentedWorker, S as ModuleHandler, T as DataCaptureCallbackMessage, U as DataCaptureActionMessageKey, X as EngineWorkerResponse } from '../DataCaptureContext-
|
|
3
|
-
import '../Camera-
|
|
2
|
+
import { K as DataCaptureEngine, L as Module, Q as AnyDataCaptureActionMessage, R as AugmentedWorker, S as ModuleHandler, T as DataCaptureCallbackMessage, U as DataCaptureActionMessageKey, X as EngineWorkerResponse } from '../DataCaptureContext-BcSpF9Dt.js';
|
|
3
|
+
import '../Camera-Cc__1Nc-.js';
|
|
4
4
|
import '../commons/Rect.js';
|
|
5
5
|
import '../private/Serializable.js';
|
|
6
6
|
import '../commons/Point.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{a as WorkerMain}from'../chunks/chunk-
|
|
1
|
+
export{a as WorkerMain}from'../chunks/chunk-X653DLOR.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="emscripten" />
|
|
2
|
-
import { K as DataCaptureEngine, L as Module } from '../DataCaptureContext-
|
|
2
|
+
import { K as DataCaptureEngine, L as Module } from '../DataCaptureContext-BcSpF9Dt.js';
|
|
3
3
|
import { WorkerMain } from './WorkerMain.js';
|
|
4
|
-
import '../Camera-
|
|
4
|
+
import '../Camera-Cc__1Nc-.js';
|
|
5
5
|
import '../commons/Rect.js';
|
|
6
6
|
import '../private/Serializable.js';
|
|
7
7
|
import '../commons/Point.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{b as InlineWorker,a as workerInstance}from'../chunks/chunk-
|
|
1
|
+
export{b as InlineWorker,a as workerInstance}from'../chunks/chunk-6IHWEHG3.js';
|
|
@@ -3,12 +3,12 @@ import '../private/BatteryInterface.js';
|
|
|
3
3
|
import '../LoadingStatus.js';
|
|
4
4
|
import '../commons/Point.js';
|
|
5
5
|
import '../commons/Orientation.js';
|
|
6
|
-
export { a1 as CreateContextParameters, K as DataCaptureEngine, aJ as LoadLibraryParameters, aT as ProcessFrameParameters, aW as ReportCameraPropertiesParameters, a_ as SetFrameSourceParameters, ba as UpdateContextParameters, W as WorkerFunctions } from '../DataCaptureContext-
|
|
6
|
+
export { a1 as CreateContextParameters, K as DataCaptureEngine, aJ as LoadLibraryParameters, aT as ProcessFrameParameters, aW as ReportCameraPropertiesParameters, a_ as SetFrameSourceParameters, ba as UpdateContextParameters, W as WorkerFunctions } from '../DataCaptureContext-BcSpF9Dt.js';
|
|
7
7
|
import '../ScanditIcon.js';
|
|
8
8
|
import '../private/FrameReaders/ColorType.js';
|
|
9
9
|
import '../private/djinni-types/index.js';
|
|
10
10
|
import '../private/Serializable.js';
|
|
11
|
-
import '../Camera-
|
|
11
|
+
import '../Camera-Cc__1Nc-.js';
|
|
12
12
|
import '../commons/Rect.js';
|
|
13
13
|
import '../commons/Size.js';
|
|
14
14
|
import '../private/privateAccess.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{a as DataCaptureEngine}from'../chunks/chunk-
|
|
1
|
+
export{a as DataCaptureEngine}from'../chunks/chunk-QHNV2CFJ.js';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/// <reference types="emscripten" />
|
|
2
|
-
export { k as DataCaptureLoader, l as DataCaptureLoaderOptions } from '../DataCaptureContext-
|
|
2
|
+
export { k as DataCaptureLoader, l as DataCaptureLoaderOptions } from '../DataCaptureContext-BcSpF9Dt.js';
|
|
3
3
|
import '../LoadingStatus.js';
|
|
4
4
|
import '../logger.js';
|
|
5
5
|
import '../ScanditIcon.js';
|
|
6
|
-
import '../Camera-
|
|
6
|
+
import '../Camera-Cc__1Nc-.js';
|
|
7
7
|
import '../commons/Rect.js';
|
|
8
8
|
import '../private/Serializable.js';
|
|
9
9
|
import '../commons/Point.js';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import '../commons/Orientation.js';
|
|
3
3
|
import '../commons/Point.js';
|
|
4
4
|
import '../commons/Rect.js';
|
|
5
|
-
export { Y as AddNativeOverlayAction, Q as AnyDataCaptureActionMessage, R as AugmentedWorker, Z as BatteryData, _ as CaptureModeDeserializerInstance, $ as ConvertToJPEGResultDataCaptureAction, a0 as CreateContextDataCaptureAction, U as DataCaptureActionMessageKey, T as DataCaptureCallbackMessage, a2 as DataCaptureCallbackMessageKeys, a3 as DataCaptureContext, a4 as DataCaptureContextDeserializer, a5 as DataCaptureContextDeserializerResult, a6 as DataCaptureImageBufferFrameSource, a7 as DataCaptureView, a8 as DataCaptureWorker, a9 as DeleteFrameDataDataCaptureAction, aa as DeviceInterfaceInstance, ab as DidTapTrackedBarcode, ac as DisposeDataCaptureAction, ad as EmscriptenClassHandle, X as EngineWorkerResponse, ae as ExtractCentaurusLicenseDataCaptureAction, af as ExtractCentaurusLicenseResponse, ag as FlushAnalyticsDataCaptureAction, N as GenericHint, ah as GestureListener, ai as GestureRecognizer, aj as GetOpenSourceSoftwareLicenseInfoAction, ak as GetOpenSourceSoftwareLicenseInfoResponse, al as GetViewfinderInfoAction, am as GetViewfinderInfoResponse, an as GuidanceHint, ao as GuidanceHintAnchor, ap as GuidanceHintStyle, aq as HideGuidanceMessage, ar as HideHintWorkerMessage, as as HideToastMessage, at as HintAnchor, au as HintCornerStyle, av as HintFont, aw as HintHeight, ax as HintIcon, ay as HintPresenterV2, az as HintPresenterV2updateAction, aA as HintStyle, aB as HintTextAlignment, aC as HintWidth, aD as IsFeatureSupportedAction, aE as IsFeatureSupportedMessage, aF as IsFeatureSupportedResponse, aG as JSONParseable, aH as LicensedFeature, aI as LoadLibraryDataCaptureAction, L as Module, S as ModuleHandler, aK as ModuleMirrorAxis, aL as OnFrameProcessingFinishedMessage, aM as OnFrameProcessingStartedMessage, aN as OnFrameSkippedMessage, aO as OnTapAction, aP as PayloadForCommand, I as PerformanceMetrics, aQ as PerformanceMetricsReportMessage, aR as PlatformHintPresenter, aS as ProcessFrameDataCaptureAction, aU as RemoveNativeOverlayAction, aV as ReportCameraPropertiesDataCaptureAction, aX as RequestFrameDataDataCaptureAction, aY as RequestFrameDataResponse, aZ as SetFrameSourceDataCaptureAction, a$ as SetLogLevelDataCaptureAction, b0 as ShowGuidanceMessage, b1 as ShowHintWorkerMessage, b2 as ShowToastMessage, b3 as StartUpdateTimerMessage, b4 as StopUpdateTimerMessage, b5 as SuccessFeedbackWorkerMessage, b6 as ToastHint, b7 as ToastHintStyle, b8 as UpdateBatteryInfoDataCaptureAction, b9 as UpdateContextDataCaptureAction, bb as UpdateHintWorkerMessage, bc as Vector, V as ViewInfo, bd as ViewSizeChangedMessage, be as VisibilityChangeAction, bf as WasmFrameData, bg as WorkerResponse } from '../DataCaptureContext-
|
|
5
|
+
export { Y as AddNativeOverlayAction, Q as AnyDataCaptureActionMessage, R as AugmentedWorker, Z as BatteryData, _ as CaptureModeDeserializerInstance, $ as ConvertToJPEGResultDataCaptureAction, a0 as CreateContextDataCaptureAction, U as DataCaptureActionMessageKey, T as DataCaptureCallbackMessage, a2 as DataCaptureCallbackMessageKeys, a3 as DataCaptureContext, a4 as DataCaptureContextDeserializer, a5 as DataCaptureContextDeserializerResult, a6 as DataCaptureImageBufferFrameSource, a7 as DataCaptureView, a8 as DataCaptureWorker, a9 as DeleteFrameDataDataCaptureAction, aa as DeviceInterfaceInstance, ab as DidTapTrackedBarcode, ac as DisposeDataCaptureAction, ad as EmscriptenClassHandle, X as EngineWorkerResponse, ae as ExtractCentaurusLicenseDataCaptureAction, af as ExtractCentaurusLicenseResponse, ag as FlushAnalyticsDataCaptureAction, N as GenericHint, ah as GestureListener, ai as GestureRecognizer, aj as GetOpenSourceSoftwareLicenseInfoAction, ak as GetOpenSourceSoftwareLicenseInfoResponse, al as GetViewfinderInfoAction, am as GetViewfinderInfoResponse, an as GuidanceHint, ao as GuidanceHintAnchor, ap as GuidanceHintStyle, aq as HideGuidanceMessage, ar as HideHintWorkerMessage, as as HideToastMessage, at as HintAnchor, au as HintCornerStyle, av as HintFont, aw as HintHeight, ax as HintIcon, ay as HintPresenterV2, az as HintPresenterV2updateAction, aA as HintStyle, aB as HintTextAlignment, aC as HintWidth, aD as IsFeatureSupportedAction, aE as IsFeatureSupportedMessage, aF as IsFeatureSupportedResponse, aG as JSONParseable, aH as LicensedFeature, aI as LoadLibraryDataCaptureAction, L as Module, S as ModuleHandler, aK as ModuleMirrorAxis, aL as OnFrameProcessingFinishedMessage, aM as OnFrameProcessingStartedMessage, aN as OnFrameSkippedMessage, aO as OnTapAction, aP as PayloadForCommand, I as PerformanceMetrics, aQ as PerformanceMetricsReportMessage, aR as PlatformHintPresenter, aS as ProcessFrameDataCaptureAction, aU as RemoveNativeOverlayAction, aV as ReportCameraPropertiesDataCaptureAction, aX as RequestFrameDataDataCaptureAction, aY as RequestFrameDataResponse, aZ as SetFrameSourceDataCaptureAction, a$ as SetLogLevelDataCaptureAction, b0 as ShowGuidanceMessage, b1 as ShowHintWorkerMessage, b2 as ShowToastMessage, b3 as StartUpdateTimerMessage, b4 as StopUpdateTimerMessage, b5 as SuccessFeedbackWorkerMessage, b6 as ToastHint, b7 as ToastHintStyle, b8 as UpdateBatteryInfoDataCaptureAction, b9 as UpdateContextDataCaptureAction, bb as UpdateHintWorkerMessage, bc as Vector, V as ViewInfo, bd as ViewSizeChangedMessage, be as VisibilityChangeAction, bf as WasmFrameData, bg as WorkerResponse } from '../DataCaptureContext-BcSpF9Dt.js';
|
|
6
6
|
import '../LoadingStatus.js';
|
|
7
7
|
import '../logger.js';
|
|
8
8
|
import '../private/BatteryInterface.js';
|
|
@@ -10,7 +10,7 @@ import '../private/FrameReaders/ColorType.js';
|
|
|
10
10
|
import '../private/djinni-types/index.js';
|
|
11
11
|
import '../private/Serializable.js';
|
|
12
12
|
import '../commons/Size.js';
|
|
13
|
-
import '../Camera-
|
|
13
|
+
import '../Camera-Cc__1Nc-.js';
|
|
14
14
|
import '../private/privateAccess.js';
|
|
15
15
|
import '../DataCaptureContextSettings.js';
|
|
16
16
|
import '../commons/JSONType.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="emscripten" />
|
|
2
2
|
export { WorkerMain } from './WorkerMain.js';
|
|
3
|
-
export { Y as AddNativeOverlayAction, Q as AnyDataCaptureActionMessage, R as AugmentedWorker, Z as BatteryData, _ as CaptureModeDeserializerInstance, $ as ConvertToJPEGResultDataCaptureAction, a0 as CreateContextDataCaptureAction, a1 as CreateContextParameters, U as DataCaptureActionMessageKey, T as DataCaptureCallbackMessage, a2 as DataCaptureCallbackMessageKeys, a3 as DataCaptureContext, a4 as DataCaptureContextDeserializer, a5 as DataCaptureContextDeserializerResult, K as DataCaptureEngine, a6 as DataCaptureImageBufferFrameSource, k as DataCaptureLoader, l as DataCaptureLoaderOptions, a7 as DataCaptureView, a8 as DataCaptureWorker, a9 as DeleteFrameDataDataCaptureAction, aa as DeviceInterfaceInstance, ab as DidTapTrackedBarcode, ac as DisposeDataCaptureAction, ad as EmscriptenClassHandle, X as EngineWorkerResponse, ae as ExtractCentaurusLicenseDataCaptureAction, af as ExtractCentaurusLicenseResponse, ag as FlushAnalyticsDataCaptureAction, N as GenericHint, ah as GestureListener, ai as GestureRecognizer, aj as GetOpenSourceSoftwareLicenseInfoAction, ak as GetOpenSourceSoftwareLicenseInfoResponse, al as GetViewfinderInfoAction, am as GetViewfinderInfoResponse, an as GuidanceHint, ao as GuidanceHintAnchor, ap as GuidanceHintStyle, aq as HideGuidanceMessage, ar as HideHintWorkerMessage, as as HideToastMessage, at as HintAnchor, au as HintCornerStyle, av as HintFont, aw as HintHeight, ax as HintIcon, ay as HintPresenterV2, az as HintPresenterV2updateAction, aA as HintStyle, aB as HintTextAlignment, aC as HintWidth, aD as IsFeatureSupportedAction, aE as IsFeatureSupportedMessage, aF as IsFeatureSupportedResponse, aG as JSONParseable, aH as LicensedFeature, aI as LoadLibraryDataCaptureAction, aJ as LoadLibraryParameters, L as Module, S as ModuleHandler, aK as ModuleMirrorAxis, aL as OnFrameProcessingFinishedMessage, aM as OnFrameProcessingStartedMessage, aN as OnFrameSkippedMessage, aO as OnTapAction, aP as PayloadForCommand, I as PerformanceMetrics, aQ as PerformanceMetricsReportMessage, aR as PlatformHintPresenter, aS as ProcessFrameDataCaptureAction, aT as ProcessFrameParameters, aU as RemoveNativeOverlayAction, aV as ReportCameraPropertiesDataCaptureAction, aW as ReportCameraPropertiesParameters, aX as RequestFrameDataDataCaptureAction, aY as RequestFrameDataResponse, aZ as SetFrameSourceDataCaptureAction, a_ as SetFrameSourceParameters, a$ as SetLogLevelDataCaptureAction, b0 as ShowGuidanceMessage, b1 as ShowHintWorkerMessage, b2 as ShowToastMessage, b3 as StartUpdateTimerMessage, b4 as StopUpdateTimerMessage, b5 as SuccessFeedbackWorkerMessage, b6 as ToastHint, b7 as ToastHintStyle, b8 as UpdateBatteryInfoDataCaptureAction, b9 as UpdateContextDataCaptureAction, ba as UpdateContextParameters, bb as UpdateHintWorkerMessage, bc as Vector, V as ViewInfo, bd as ViewSizeChangedMessage, be as VisibilityChangeAction, bf as WasmFrameData, W as WorkerFunctions, bg as WorkerResponse } from '../DataCaptureContext-
|
|
4
|
-
import '../Camera-
|
|
3
|
+
export { Y as AddNativeOverlayAction, Q as AnyDataCaptureActionMessage, R as AugmentedWorker, Z as BatteryData, _ as CaptureModeDeserializerInstance, $ as ConvertToJPEGResultDataCaptureAction, a0 as CreateContextDataCaptureAction, a1 as CreateContextParameters, U as DataCaptureActionMessageKey, T as DataCaptureCallbackMessage, a2 as DataCaptureCallbackMessageKeys, a3 as DataCaptureContext, a4 as DataCaptureContextDeserializer, a5 as DataCaptureContextDeserializerResult, K as DataCaptureEngine, a6 as DataCaptureImageBufferFrameSource, k as DataCaptureLoader, l as DataCaptureLoaderOptions, a7 as DataCaptureView, a8 as DataCaptureWorker, a9 as DeleteFrameDataDataCaptureAction, aa as DeviceInterfaceInstance, ab as DidTapTrackedBarcode, ac as DisposeDataCaptureAction, ad as EmscriptenClassHandle, X as EngineWorkerResponse, ae as ExtractCentaurusLicenseDataCaptureAction, af as ExtractCentaurusLicenseResponse, ag as FlushAnalyticsDataCaptureAction, N as GenericHint, ah as GestureListener, ai as GestureRecognizer, aj as GetOpenSourceSoftwareLicenseInfoAction, ak as GetOpenSourceSoftwareLicenseInfoResponse, al as GetViewfinderInfoAction, am as GetViewfinderInfoResponse, an as GuidanceHint, ao as GuidanceHintAnchor, ap as GuidanceHintStyle, aq as HideGuidanceMessage, ar as HideHintWorkerMessage, as as HideToastMessage, at as HintAnchor, au as HintCornerStyle, av as HintFont, aw as HintHeight, ax as HintIcon, ay as HintPresenterV2, az as HintPresenterV2updateAction, aA as HintStyle, aB as HintTextAlignment, aC as HintWidth, aD as IsFeatureSupportedAction, aE as IsFeatureSupportedMessage, aF as IsFeatureSupportedResponse, aG as JSONParseable, aH as LicensedFeature, aI as LoadLibraryDataCaptureAction, aJ as LoadLibraryParameters, L as Module, S as ModuleHandler, aK as ModuleMirrorAxis, aL as OnFrameProcessingFinishedMessage, aM as OnFrameProcessingStartedMessage, aN as OnFrameSkippedMessage, aO as OnTapAction, aP as PayloadForCommand, I as PerformanceMetrics, aQ as PerformanceMetricsReportMessage, aR as PlatformHintPresenter, aS as ProcessFrameDataCaptureAction, aT as ProcessFrameParameters, aU as RemoveNativeOverlayAction, aV as ReportCameraPropertiesDataCaptureAction, aW as ReportCameraPropertiesParameters, aX as RequestFrameDataDataCaptureAction, aY as RequestFrameDataResponse, aZ as SetFrameSourceDataCaptureAction, a_ as SetFrameSourceParameters, a$ as SetLogLevelDataCaptureAction, b0 as ShowGuidanceMessage, b1 as ShowHintWorkerMessage, b2 as ShowToastMessage, b3 as StartUpdateTimerMessage, b4 as StopUpdateTimerMessage, b5 as SuccessFeedbackWorkerMessage, b6 as ToastHint, b7 as ToastHintStyle, b8 as UpdateBatteryInfoDataCaptureAction, b9 as UpdateContextDataCaptureAction, ba as UpdateContextParameters, bb as UpdateHintWorkerMessage, bc as Vector, V as ViewInfo, bd as ViewSizeChangedMessage, be as VisibilityChangeAction, bf as WasmFrameData, W as WorkerFunctions, bg as WorkerResponse } from '../DataCaptureContext-BcSpF9Dt.js';
|
|
4
|
+
import '../Camera-Cc__1Nc-.js';
|
|
5
5
|
import '../commons/Rect.js';
|
|
6
6
|
import '../private/Serializable.js';
|
|
7
7
|
import '../commons/Point.js';
|
package/build/js/worker/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{a as DataCaptureLoader}from'../chunks/chunk-YJNJGCAN.js';export{a as WorkerMain}from'../chunks/chunk-
|
|
1
|
+
export{a as DataCaptureLoader}from'../chunks/chunk-YJNJGCAN.js';export{a as WorkerMain}from'../chunks/chunk-X653DLOR.js';export{a as DataCaptureEngine}from'../chunks/chunk-QHNV2CFJ.js';export{h as GuidanceHintAnchor,i as GuidanceHintStyle,g as HintAnchor,e as HintCornerStyle,a as HintFont,d as HintHeight,f as HintIcon,b as HintTextAlignment,c as HintWidth,k as LicensedFeature,j as ToastHintStyle}from'../chunks/chunk-WFKB322J.js';
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e;(o=>{function i(){let r="8.3.0-beta.1";return r}o.sdkVersion=i;})(e||(e={}));export{e as a};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import {a as a$1}from'./chunk-KUAZYGPM.js';import {a}from'./chunk-XR65N6EG.js';var l=new Map;l.set("default",()=>import('../assets/beepSound.js'));var e=class e{constructor(r){this.resource=null;this.resource=r;}static get defaultSound(){return e._defaultSound instanceof e||(e._defaultSound=new e("default")),e._defaultSound}toJSONObject(){return this.resource!==null?{resource:this.resource}:{}}async play(){var r,o,i;if(this.resource==null||this.resource===""){a.warn("Sound resource is null or empty string. Cannot be played.");return}if(!this.audio){let a=await((i=(o=(r=l.get(this.resource))==null?void 0:r())==null?void 0:o.then(t=>(t==null?void 0:t.beepSound)||this.resource))!=null?i:Promise.resolve(this.resource));this.audio=new a$1({src:a,html5:true});}this.audio.play();}};e._defaultSound=null;var s=e;export{s as a};
|