idmission-web-sdk 2.3.98 → 2.3.100

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/dist/sdk2.esm.js CHANGED
@@ -205,7 +205,7 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
205
205
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
206
206
  };
207
207
 
208
- var webSdkVersion = '2.3.98';
208
+ var webSdkVersion = '2.3.100';
209
209
 
210
210
  function getPlatform() {
211
211
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
@@ -14295,14 +14295,23 @@ function inferBlobType(blobPart) {
14295
14295
  return t.length > 0 ? t : undefined;
14296
14296
  }
14297
14297
 
14298
- // import { mediaInfoFactory } from 'mediainfo.js'
14299
- // import type { ReadChunkFunc, MediaInfo, MediaInfoResult } from 'mediainfo.js'
14300
- // import { DEFAULT_CDN_URL } from '../common/cdn'
14301
- // import { warn } from '../../lib/utils/logger'
14302
- // function makeReadChunk(file: File | Blob): ReadChunkFunc {
14303
- // return async (chunkSize: number, offset: number) =>
14304
- // new Uint8Array(await file.slice(offset, offset + chunkSize).arrayBuffer())
14305
- // }
14298
+ function makeReadChunk(file) {
14299
+ var _this = this;
14300
+ return function (chunkSize, offset) {
14301
+ return __awaiter(_this, void 0, void 0, function () {
14302
+ var _a;
14303
+ return __generator(this, function (_b) {
14304
+ switch (_b.label) {
14305
+ case 0:
14306
+ _a = Uint8Array.bind;
14307
+ return [4 /*yield*/, file.slice(offset, offset + chunkSize).arrayBuffer()];
14308
+ case 1:
14309
+ return [2 /*return*/, new (_a.apply(Uint8Array, [void 0, _b.sent()]))()];
14310
+ }
14311
+ });
14312
+ });
14313
+ };
14314
+ }
14306
14315
  var signatureRecorder = null;
14307
14316
  var signatureChunks = [];
14308
14317
  var videoSignatureInitialState = {
@@ -14337,9 +14346,8 @@ var useVideoSignatureStore = create()(devtools(function (set, get) {
14337
14346
  if (!camera) throw new Error('Camera not found');
14338
14347
  // set our flag and clear whatever we have recorded so far.
14339
14348
  signatureChunks = [];
14340
- var outputCanvas = get().outputCanvas;
14341
14349
  // start recording from the output canvas to capture the signature
14342
- var outputStream = (_a = outputCanvas.current) === null || _a === void 0 ? void 0 : _a.captureStream(24);
14350
+ var outputStream = (_a = get().outputCanvas.current) === null || _a === void 0 ? void 0 : _a.captureStream(24);
14343
14351
  if (!outputStream) throw new Error('outputStream not found');
14344
14352
  var tracks = [outputStream.getVideoTracks()[0]];
14345
14353
  if (captureAudio) {
@@ -14384,39 +14392,42 @@ var useVideoSignatureStore = create()(devtools(function (set, get) {
14384
14392
  signatureRecorder.stop();
14385
14393
  signatureRecorder.onstop = function () {
14386
14394
  return __awaiter(void 0, void 0, void 0, function () {
14387
- var recordingStoppedAt, inferredType, blob, _a, onSignatureVideoCaptured, recordingStartRequestedAt, recordingStartedAt, firstChunkReceivedAt, signatureStartedAt, signatureEndedAt, recordingStopRequestedAt, lastChunkReceivedAt;
14388
- return __generator(this, function (_b) {
14389
- recordingStoppedAt = performance.now();
14390
- set({
14391
- recordingStoppedAt: recordingStoppedAt
14392
- });
14393
- inferredType = inferBlobType(signatureChunks[0]) || (signatureRecorder === null || signatureRecorder === void 0 ? void 0 : signatureRecorder.mimeType) || 'video/mp4';
14394
- blob = new Blob(signatureChunks, {
14395
- type: inferredType
14396
- });
14397
- signatureChunks = [];
14398
- signatureRecorder = null;
14399
- if (!signatureData) return [2 /*return*/];
14400
- _a = get(), onSignatureVideoCaptured = _a.onSignatureVideoCaptured, recordingStartRequestedAt = _a.recordingStartRequestedAt, recordingStartedAt = _a.recordingStartedAt, firstChunkReceivedAt = _a.firstChunkReceivedAt, signatureStartedAt = _a.signatureStartedAt, signatureEndedAt = _a.signatureEndedAt, recordingStopRequestedAt = _a.recordingStopRequestedAt, lastChunkReceivedAt = _a.lastChunkReceivedAt;
14401
- // const mediaInfo = await get().mediaInfo?.analyzeData(
14402
- // blob.size,
14403
- // makeReadChunk(blob),
14404
- // )
14405
- onSignatureVideoCaptured(blob, signatureData, imageUrl !== null && imageUrl !== void 0 ? imageUrl : null, {
14406
- // mediaInfo,
14407
- mimeType: inferredType,
14408
- timingData: {
14409
- recordingStartRequestedAt: recordingStartRequestedAt,
14410
- recordingStartedAt: recordingStartedAt,
14411
- firstChunkReceivedAt: firstChunkReceivedAt,
14412
- signatureStartedAt: signatureStartedAt,
14413
- signatureEndedAt: signatureEndedAt,
14414
- recordingStopRequestedAt: recordingStopRequestedAt,
14415
- recordingStoppedAt: recordingStoppedAt,
14416
- lastChunkReceivedAt: lastChunkReceivedAt
14417
- }
14418
- });
14419
- return [2 /*return*/];
14395
+ var recordingStoppedAt, inferredType, blob, _a, onSignatureVideoCaptured, recordingStartRequestedAt, recordingStartedAt, firstChunkReceivedAt, signatureStartedAt, signatureEndedAt, recordingStopRequestedAt, lastChunkReceivedAt, mediaInfo;
14396
+ var _b;
14397
+ return __generator(this, function (_c) {
14398
+ switch (_c.label) {
14399
+ case 0:
14400
+ recordingStoppedAt = performance.now();
14401
+ set({
14402
+ recordingStoppedAt: recordingStoppedAt
14403
+ });
14404
+ inferredType = inferBlobType(signatureChunks[0]) || (signatureRecorder === null || signatureRecorder === void 0 ? void 0 : signatureRecorder.mimeType) || 'video/mp4';
14405
+ blob = new Blob(signatureChunks, {
14406
+ type: inferredType
14407
+ });
14408
+ signatureChunks = [];
14409
+ signatureRecorder = null;
14410
+ if (!signatureData) return [2 /*return*/];
14411
+ _a = get(), onSignatureVideoCaptured = _a.onSignatureVideoCaptured, recordingStartRequestedAt = _a.recordingStartRequestedAt, recordingStartedAt = _a.recordingStartedAt, firstChunkReceivedAt = _a.firstChunkReceivedAt, signatureStartedAt = _a.signatureStartedAt, signatureEndedAt = _a.signatureEndedAt, recordingStopRequestedAt = _a.recordingStopRequestedAt, lastChunkReceivedAt = _a.lastChunkReceivedAt;
14412
+ return [4 /*yield*/, (_b = get().mediaInfo) === null || _b === void 0 ? void 0 : _b.analyzeData(blob.size, makeReadChunk(blob))];
14413
+ case 1:
14414
+ mediaInfo = _c.sent();
14415
+ onSignatureVideoCaptured(blob, signatureData, imageUrl !== null && imageUrl !== void 0 ? imageUrl : null, {
14416
+ mediaInfo: mediaInfo,
14417
+ mimeType: inferredType,
14418
+ timingData: {
14419
+ recordingStartRequestedAt: recordingStartRequestedAt,
14420
+ recordingStartedAt: recordingStartedAt,
14421
+ firstChunkReceivedAt: firstChunkReceivedAt,
14422
+ signatureStartedAt: signatureStartedAt,
14423
+ signatureEndedAt: signatureEndedAt,
14424
+ recordingStopRequestedAt: recordingStopRequestedAt,
14425
+ recordingStoppedAt: recordingStoppedAt,
14426
+ lastChunkReceivedAt: lastChunkReceivedAt
14427
+ }
14428
+ });
14429
+ return [2 /*return*/];
14430
+ }
14420
14431
  });
14421
14432
  });
14422
14433
  };
@@ -14466,7 +14477,9 @@ function waitForOneMoreChunk(timeoutMs) {
14466
14477
  function VideoSignatureContextProvider(_a) {
14467
14478
  var _this = this;
14468
14479
  var _b, _c, _d, _e;
14469
- var children = _a.children;
14480
+ var children = _a.children,
14481
+ _f = _a.captureMediaInfo,
14482
+ captureMediaInfo = _f === void 0 ? false : _f;
14470
14483
  var videoRef = useCameraStore().videoRef;
14471
14484
  var outputCanvas = useRef(null);
14472
14485
  useEffect(function () {
@@ -14476,27 +14489,74 @@ function VideoSignatureContextProvider(_a) {
14476
14489
  }, []);
14477
14490
  var signatureVideoRef = useRef(null);
14478
14491
  var frameCheckCanvas = useRef(null);
14479
- // useEffect(() => {
14480
- // if (!captureMediaInfo) return
14481
- // mediaInfoFactory({
14482
- // format: 'object',
14483
- // full: true,
14484
- // locateFile: (filename) => `${DEFAULT_CDN_URL}/${filename}`,
14485
- // })
14486
- // .then((mediaInfo) => {
14487
- // useVideoSignatureStore.setState({ mediaInfo })
14488
- // })
14489
- // .catch((e) => {
14490
- // warn('error loading mediaInfo', e)
14491
- // })
14492
- // return () => {
14493
- // const mediaInfo = useVideoSignatureStore.getState().mediaInfo
14494
- // if (mediaInfo) {
14495
- // mediaInfo.close()
14496
- // useVideoSignatureStore.setState({ mediaInfo: undefined })
14497
- // }
14498
- // }
14499
- // }, [captureMediaInfo])
14492
+ useEffect(function () {
14493
+ if (!captureMediaInfo) return;
14494
+ // Use dynamic import to avoid build-time WASM loading issues
14495
+ var loadMediaInfo = function loadMediaInfo() {
14496
+ return __awaiter(_this, void 0, void 0, function () {
14497
+ var mediaInfoFactory, mediaInfo, e_1, mediaInfoFactory, mediaInfo, fallbackError_1;
14498
+ return __generator(this, function (_a) {
14499
+ switch (_a.label) {
14500
+ case 0:
14501
+ _a.trys.push([0, 3,, 9]);
14502
+ return [4 /*yield*/, import('mediainfo.js')];
14503
+ case 1:
14504
+ mediaInfoFactory = _a.sent().mediaInfoFactory;
14505
+ return [4 /*yield*/, mediaInfoFactory({
14506
+ format: 'object',
14507
+ full: true,
14508
+ locateFile: function locateFile(filename) {
14509
+ return "".concat(DEFAULT_CDN_URL, "/").concat(filename);
14510
+ }
14511
+ })];
14512
+ case 2:
14513
+ mediaInfo = _a.sent();
14514
+ useVideoSignatureStore.setState({
14515
+ mediaInfo: mediaInfo
14516
+ });
14517
+ return [3 /*break*/, 9];
14518
+ case 3:
14519
+ e_1 = _a.sent();
14520
+ warn('error loading mediaInfo', e_1);
14521
+ _a.label = 4;
14522
+ case 4:
14523
+ _a.trys.push([4, 7,, 8]);
14524
+ return [4 /*yield*/, import('mediainfo.js')];
14525
+ case 5:
14526
+ mediaInfoFactory = _a.sent().mediaInfoFactory;
14527
+ return [4 /*yield*/, mediaInfoFactory({
14528
+ format: 'object',
14529
+ full: true
14530
+ })];
14531
+ case 6:
14532
+ mediaInfo = _a.sent();
14533
+ useVideoSignatureStore.setState({
14534
+ mediaInfo: mediaInfo
14535
+ });
14536
+ return [3 /*break*/, 8];
14537
+ case 7:
14538
+ fallbackError_1 = _a.sent();
14539
+ warn('fallback mediaInfo loading also failed', fallbackError_1);
14540
+ return [3 /*break*/, 8];
14541
+ case 8:
14542
+ return [3 /*break*/, 9];
14543
+ case 9:
14544
+ return [2 /*return*/];
14545
+ }
14546
+ });
14547
+ });
14548
+ };
14549
+ loadMediaInfo();
14550
+ return function () {
14551
+ var mediaInfo = useVideoSignatureStore.getState().mediaInfo;
14552
+ if (mediaInfo) {
14553
+ mediaInfo.close();
14554
+ useVideoSignatureStore.setState({
14555
+ mediaInfo: undefined
14556
+ });
14557
+ }
14558
+ };
14559
+ }, [captureMediaInfo]);
14500
14560
  var signaturePadEmpty = useVideoSignatureStore().signaturePadEmpty;
14501
14561
  var blankCheckPassed = useRef(false);
14502
14562
  useEffect(function () {
@@ -14537,40 +14597,15 @@ function VideoSignatureContextProvider(_a) {
14537
14597
  });
14538
14598
  });
14539
14599
  }, [videoRef, outputCanvas]);
14540
- useEffect(function () {
14541
- if (!signatureVideoRef.current) return;
14542
- var video = signatureVideoRef.current;
14543
- function onFrame() {
14544
- blankCheckPassed.current || (blankCheckPassed.current = !isVideoBlank(signatureVideoRef.current, frameCheckCanvas.current));
14545
- drawOutputFrame();
14546
- video.requestVideoFrameCallback(onFrame);
14547
- }
14548
- function onPlay() {
14549
- video.requestVideoFrameCallback(onFrame);
14550
- }
14551
- video.addEventListener('play', onPlay);
14552
- return function () {
14553
- video.removeEventListener('play', onPlay);
14554
- };
14555
- }, [drawOutputFrame]);
14556
- useEffect(function () {
14557
- if (!videoRef.current) return;
14558
- var video = videoRef.current;
14559
- function onFrame() {
14560
- drawOutputFrame();
14561
- video.requestVideoFrameCallback(onFrame);
14562
- }
14563
- function onPlay() {
14564
- video.requestVideoFrameCallback(onFrame);
14565
- }
14566
- video.addEventListener('play', onPlay);
14567
- return function () {
14568
- video.removeEventListener('play', onPlay);
14569
- };
14570
- }, [drawOutputFrame, videoRef]);
14571
- var _f = useVideoSignatureStore(),
14572
- signaturePad = _f.signaturePad,
14573
- recordingStartedAt = _f.recordingStartedAt;
14600
+ var checkBlankAndDrawOutputFrame = useCallback(function () {
14601
+ blankCheckPassed.current || (blankCheckPassed.current = !isVideoBlank(signatureVideoRef.current, frameCheckCanvas.current));
14602
+ drawOutputFrame();
14603
+ }, [drawOutputFrame, signatureVideoRef]);
14604
+ useVideoFrameLoop(signatureVideoRef, checkBlankAndDrawOutputFrame);
14605
+ useVideoFrameLoop(videoRef, drawOutputFrame);
14606
+ var _g = useVideoSignatureStore(),
14607
+ signaturePad = _g.signaturePad,
14608
+ recordingStartedAt = _g.recordingStartedAt;
14574
14609
  useEffect(function () {
14575
14610
  var _a;
14576
14611
  if (!signaturePad.current || !recordingStartedAt) return;
@@ -14610,6 +14645,32 @@ function isCanvasBlank(canvas) {
14610
14645
  });
14611
14646
  return result;
14612
14647
  }
14648
+ function requestVideoFrameCallback(video, onFrame) {
14649
+ if (typeof (video === null || video === void 0 ? void 0 : video.requestVideoFrameCallback) === 'function') {
14650
+ video.requestVideoFrameCallback(onFrame);
14651
+ } else {
14652
+ requestAnimationFrame(onFrame);
14653
+ }
14654
+ }
14655
+ function videoFrameLoop(video, onFrame) {
14656
+ if (!video) return;
14657
+ function onFrameRecursive() {
14658
+ onFrame();
14659
+ requestVideoFrameCallback(video, onFrameRecursive);
14660
+ }
14661
+ function onPlay() {
14662
+ requestVideoFrameCallback(video, onFrameRecursive);
14663
+ }
14664
+ video.addEventListener('play', onPlay);
14665
+ return function () {
14666
+ video.removeEventListener('play', onPlay);
14667
+ };
14668
+ }
14669
+ function useVideoFrameLoop(ref, onFrame) {
14670
+ useEffect(function () {
14671
+ return videoFrameLoop(ref.current, onFrame);
14672
+ }, [onFrame, ref]);
14673
+ }
14613
14674
 
14614
14675
  function VideoSignaturePad(_a) {
14615
14676
  var onAcceptBtnClicked = _a.onAcceptBtnClicked,
@@ -19447,6 +19508,8 @@ var SignatureKYC = function SignatureKYC(_a) {
19447
19508
  documentServiceUrl = _a.documentServiceUrl,
19448
19509
  sendBase64DocumentsInSwaggerProxy = _a.sendBase64DocumentsInSwaggerProxy,
19449
19510
  useDocumentServiceForLivenessChecks = _a.useDocumentServiceForLivenessChecks,
19511
+ _c = _a.captureMediaInfo,
19512
+ captureMediaInfo = _c === void 0 ? false : _c,
19450
19513
  onLoadingStarted = _a.onLoadingStarted,
19451
19514
  onLoadingProgress = _a.onLoadingProgress,
19452
19515
  onLoadingCompleted = _a.onLoadingCompleted,
@@ -19466,48 +19529,48 @@ var SignatureKYC = function SignatureKYC(_a) {
19466
19529
  onCameraAccessDenied = _a.onCameraAccessDenied,
19467
19530
  onCameraTamperingDetected = _a.onCameraTamperingDetected,
19468
19531
  onLoadingOverlayDismissed = _a.onLoadingOverlayDismissed,
19469
- _c = _a.loadingOverlayMode,
19470
- loadingOverlayMode = _c === void 0 ? 'default' : _c,
19532
+ _d = _a.loadingOverlayMode,
19533
+ loadingOverlayMode = _d === void 0 ? 'default' : _d,
19471
19534
  customOverlayContent = _a.customOverlayContent,
19472
- _d = _a.skipSuccessScreen,
19473
- skipSuccessScreen = _d === void 0 ? false : _d,
19474
- _e = _a.captureAudio,
19475
- captureAudio = _e === void 0 ? false : _e,
19535
+ _e = _a.skipSuccessScreen,
19536
+ skipSuccessScreen = _e === void 0 ? false : _e,
19537
+ _f = _a.captureAudio,
19538
+ captureAudio = _f === void 0 ? false : _f,
19476
19539
  idCardForFaceMatch = _a.idCardForFaceMatch,
19477
- _f = _a.minSignaturePadPoints,
19478
- minSignaturePadPoints = _f === void 0 ? DEFAULT_MIN_SIGNATURE_PAD_POINTS : _f,
19479
- _g = _a.headTrackingDisabled,
19480
- headTrackingDisabled = _g === void 0 ? false : _g,
19481
- _h = _a.headTrackingBoundaryPercentage,
19482
- headTrackingBoundaryPercentage = _h === void 0 ? DEFAULT_HEAD_TRACKING_BOUNDARY_PERCENTAGE : _h,
19483
- _j = _a.headTrackingBoundaryType,
19484
- headTrackingBoundaryType = _j === void 0 ? DEFAULT_HEAD_TRACKING_BOUNDARY_TYPE : _j,
19485
- _k = _a.modelLoadTimeoutMs,
19486
- modelLoadTimeoutMs = _k === void 0 ? defaultSelfieCaptureModelLoadTimeoutMs : _k,
19487
- _l = _a.allowSignatureAfterLivenessCheckFailure,
19488
- allowSignatureAfterLivenessCheckFailure = _l === void 0 ? false : _l,
19489
- _m = _a.restartVideoOnSignaturePadCleared,
19490
- restartVideoOnSignaturePadCleared = _m === void 0 ? true : _m,
19540
+ _g = _a.minSignaturePadPoints,
19541
+ minSignaturePadPoints = _g === void 0 ? DEFAULT_MIN_SIGNATURE_PAD_POINTS : _g,
19542
+ _h = _a.headTrackingDisabled,
19543
+ headTrackingDisabled = _h === void 0 ? false : _h,
19544
+ _j = _a.headTrackingBoundaryPercentage,
19545
+ headTrackingBoundaryPercentage = _j === void 0 ? DEFAULT_HEAD_TRACKING_BOUNDARY_PERCENTAGE : _j,
19546
+ _k = _a.headTrackingBoundaryType,
19547
+ headTrackingBoundaryType = _k === void 0 ? DEFAULT_HEAD_TRACKING_BOUNDARY_TYPE : _k,
19548
+ _l = _a.modelLoadTimeoutMs,
19549
+ modelLoadTimeoutMs = _l === void 0 ? defaultSelfieCaptureModelLoadTimeoutMs : _l,
19550
+ _m = _a.allowSignatureAfterLivenessCheckFailure,
19551
+ allowSignatureAfterLivenessCheckFailure = _m === void 0 ? false : _m,
19552
+ _o = _a.restartVideoOnSignaturePadCleared,
19553
+ restartVideoOnSignaturePadCleared = _o === void 0 ? true : _o,
19491
19554
  faceLivenessProps = _a.faceLivenessProps,
19492
- _o = _a.skipLivenessValidation,
19493
- skipLivenessValidation = _o === void 0 ? false : _o,
19494
- _p = _a.allowManualSelfieCaptureOnLoadingError,
19495
- allowManualSelfieCaptureOnLoadingError = _p === void 0 ? false : _p,
19555
+ _p = _a.skipLivenessValidation,
19556
+ skipLivenessValidation = _p === void 0 ? false : _p,
19557
+ _q = _a.allowManualSelfieCaptureOnLoadingError,
19558
+ allowManualSelfieCaptureOnLoadingError = _q === void 0 ? false : _q,
19496
19559
  guidesComponent = _a.guidesComponent,
19497
- _q = _a.showFaceGuideThenSignaturePad,
19498
- showFaceGuideThenSignaturePad = _q === void 0 ? false : _q,
19560
+ _r = _a.showFaceGuideThenSignaturePad,
19561
+ showFaceGuideThenSignaturePad = _r === void 0 ? false : _r,
19499
19562
  minCaptureBrightnessThreshold = _a.minCaptureBrightnessThreshold,
19500
19563
  minCaptureRangeThreshold = _a.minCaptureRangeThreshold,
19501
19564
  minCaptureVarianceThreshold = _a.minCaptureVarianceThreshold,
19502
- _r = _a.theme,
19503
- theme = _r === void 0 ? 'default' : _r,
19565
+ _s = _a.theme,
19566
+ theme = _s === void 0 ? 'default' : _s,
19504
19567
  classNames = _a.classNames,
19505
19568
  colors = _a.colors,
19506
19569
  verbiage = _a.verbiage,
19507
19570
  geolocationEnabled = _a.geolocationEnabled,
19508
19571
  geolocationRequired = _a.geolocationRequired,
19509
- _s = _a.debugMode,
19510
- debugMode = _s === void 0 ? false : _s;
19572
+ _t = _a.debugMode,
19573
+ debugMode = _t === void 0 ? false : _t;
19511
19574
  useLanguage(lang);
19512
19575
  useDebugLogging(debugMode);
19513
19576
  return /*#__PURE__*/React__default.createElement(AuthProvider, {
@@ -19557,6 +19620,7 @@ var SignatureKYC = function SignatureKYC(_a) {
19557
19620
  loadingOverlayMode: loadingOverlayMode,
19558
19621
  skipSuccessScreen: skipSuccessScreen,
19559
19622
  captureAudio: captureAudio,
19623
+ captureMediaInfo: captureMediaInfo,
19560
19624
  minSignaturePadPoints: minSignaturePadPoints,
19561
19625
  headTrackingDisabled: headTrackingDisabled,
19562
19626
  headTrackingBoundaryPercentage: headTrackingBoundaryPercentage,
@@ -19579,7 +19643,7 @@ var SignatureKYC = function SignatureKYC(_a) {
19579
19643
  onModelError: onModelError,
19580
19644
  onUserCancel: onUserCancel
19581
19645
  };
19582
- }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, onLoadingFailed, onSelfieCaptured, customOverlayContent, onLoadingOverlayDismissed, loadingOverlayMode, skipSuccessScreen, captureAudio, minSignaturePadPoints, headTrackingDisabled, headTrackingBoundaryPercentage, headTrackingBoundaryType, modelLoadTimeoutMs, faceLivenessProps, allowSignatureAfterLivenessCheckFailure, restartVideoOnSignaturePadCleared, skipLivenessValidation, allowManualSelfieCaptureOnLoadingError, guidesComponent, showFaceGuideThenSignaturePad, minCaptureBrightnessThreshold, minCaptureRangeThreshold, minCaptureVarianceThreshold, classNames, colors, debugMode, verbiage, onModelError, onUserCancel])
19646
+ }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, onLoadingFailed, onSelfieCaptured, customOverlayContent, onLoadingOverlayDismissed, loadingOverlayMode, skipSuccessScreen, captureAudio, captureMediaInfo, minSignaturePadPoints, headTrackingDisabled, headTrackingBoundaryPercentage, headTrackingBoundaryType, modelLoadTimeoutMs, faceLivenessProps, allowSignatureAfterLivenessCheckFailure, restartVideoOnSignaturePadCleared, skipLivenessValidation, allowManualSelfieCaptureOnLoadingError, guidesComponent, showFaceGuideThenSignaturePad, minCaptureBrightnessThreshold, minCaptureRangeThreshold, minCaptureVarianceThreshold, classNames, colors, debugMode, verbiage, onModelError, onUserCancel])
19583
19647
  })))));
19584
19648
  };
19585
19649