idmission-web-sdk 2.3.116 → 2.3.118

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.
@@ -1,12 +1,28 @@
1
1
  import React, { ReactNode } from 'react';
2
2
  import { SignatureData } from '../signature_capture/data';
3
3
  import SignatureCanvas from 'react-signature-canvas';
4
+ type VideoChunkRateStats = {
5
+ averageRate: number;
6
+ minRate: number;
7
+ maxRate: number;
8
+ totalChunksReceived: number;
9
+ recordingDurationMs: number;
10
+ };
4
11
  export type VideoSignatureMetadata = {
5
12
  mimeType?: string;
6
13
  browserFeatures?: {
7
14
  supportsRequestVideoFrameCallback?: boolean;
8
15
  supportsRoundRect?: boolean;
9
16
  };
17
+ diagnostics?: {
18
+ nullChunksReceived?: number;
19
+ firstNullChunkReceivedAt?: number;
20
+ lastNullChunkReceivedAt?: number;
21
+ finalChunkReceived?: boolean;
22
+ finalChunkTimedOut?: boolean;
23
+ finalChunkWaitedMs?: number;
24
+ videoChunkRate?: VideoChunkRateStats;
25
+ };
10
26
  timingData?: {
11
27
  recordingStartRequestedAt?: number;
12
28
  recordingStartedAt?: number;
@@ -14,6 +30,7 @@ export type VideoSignatureMetadata = {
14
30
  signatureStartedAt?: number;
15
31
  signatureEndedAt?: number;
16
32
  acceptClickedAt?: number;
33
+ clearClickedAt?: number;
17
34
  recordingStopRequestedAt?: number;
18
35
  lastChunkReceivedAt?: number;
19
36
  recordingStoppedAt?: number;
@@ -37,8 +54,12 @@ export type VideoSignatureState = {
37
54
  signatureStartedAt?: number;
38
55
  signatureEndedAt?: number;
39
56
  acceptClickedAt?: number;
57
+ clearClickedAt?: number;
40
58
  supportsRequestVideoFrameCallback?: boolean;
41
59
  supportsRoundRect?: boolean;
60
+ nullChunksReceived: number;
61
+ firstNullChunkReceivedAt?: number;
62
+ lastNullChunkReceivedAt?: number;
42
63
  onSignatureVideoCaptured: OnSignatureVideoCaptured;
43
64
  };
44
65
  export declare const useVideoSignatureStore: import("zustand").UseBoundStore<Omit<import("zustand").StoreApi<VideoSignatureState>, "setState"> & {
@@ -58,4 +79,5 @@ export declare const useVideoSignatureStore: import("zustand").UseBoundStore<Omi
58
79
  export default function VideoSignatureContextProvider({ children, }: {
59
80
  children: ReactNode;
60
81
  }): React.JSX.Element;
82
+ export {};
61
83
  //# sourceMappingURL=VideoSignatureContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VideoSignatureContext.d.ts","sourceRoot":"","sources":["../../../src/components/video_signature_capture/VideoSignatureContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAkC,MAAM,OAAO,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,eAAe,MAAM,wBAAwB,CAAA;AAcpD,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE;QAChB,iCAAiC,CAAC,EAAE,OAAO,CAAA;QAC3C,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAC5B,CAAA;IACD,UAAU,CAAC,EAAE;QACX,yBAAyB,CAAC,EAAE,MAAM,CAAA;QAClC,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;QAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,wBAAwB,CAAC,EAAE,MAAM,CAAA;QACjC,mBAAmB,CAAC,EAAE,MAAM,CAAA;QAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAC5B,CAAA;CACF,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,CACrC,SAAS,EAAE,IAAI,EACf,aAAa,EAAE,aAAa,GAAG,IAAI,EACnC,kBAAkB,EAAE,MAAM,GAAG,IAAI,EACjC,QAAQ,EAAE,sBAAsB,KAC7B,IAAI,CAAA;AAET,MAAM,MAAM,mBAAmB,GAAG;IAChC,cAAc,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAChD,aAAa,EAAE,CACb,aAAa,CAAC,EAAE,aAAa,EAC7B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,KAC3B,OAAO,CAAC,IAAI,CAAC,CAAA;IAClB,iBAAiB,EAAE,MAAM,IAAI,CAAA;IAE7B,yBAAyB,CAAC,EAAE,MAAM,CAAA;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,wBAAwB,CAAC,EAAE,MAAM,CAAA;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,CAAA;IAC9C,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAA;IAEhD,iBAAiB,EAAE,OAAO,CAAA;IAC1B,cAAc,EAAE,OAAO,CAAA;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,iCAAiC,CAAC,EAAE,OAAO,CAAA;IAC3C,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAE3B,wBAAwB,EAAE,wBAAwB,CAAA;CACnD,CAAA;AAeD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;EA6IlC,CAAA;AA2CD,MAAM,CAAC,OAAO,UAAU,6BAA6B,CAAC,EACpD,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,SAAS,CAAA;CACpB,qBA8DA"}
1
+ {"version":3,"file":"VideoSignatureContext.d.ts","sourceRoot":"","sources":["../../../src/components/video_signature_capture/VideoSignatureContext.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"VideoSignatureWizard.d.ts","sourceRoot":"","sources":["../../../src/components/video_signature_capture/VideoSignatureWizard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VideoSignatureWizard.d.ts","sourceRoot":"","sources":["../../../src/components/video_signature_capture/VideoSignatureWizard.tsx"],"names":[],"mappings":"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"}
@@ -236,7 +236,7 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
236
236
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
237
237
  };
238
238
 
239
- var webSdkVersion = '2.3.116';
239
+ var webSdkVersion = '2.3.118';
240
240
 
241
241
  function getPlatform() {
242
242
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
@@ -14399,6 +14399,9 @@ function inferBlobType(blobPart) {
14399
14399
 
14400
14400
  var signatureRecorder = null;
14401
14401
  var signatureChunks = [];
14402
+ var ondataavailableInvocations = [];
14403
+ var ondataavailableStartTime;
14404
+ var lastCalculatedVideoChunkRate;
14402
14405
  var videoSignatureInitialState = {
14403
14406
  startRecording: function startRecording() {
14404
14407
  return null;
@@ -14423,6 +14426,7 @@ var videoSignatureInitialState = {
14423
14426
  signatureValid: false,
14424
14427
  supportsRequestVideoFrameCallback: undefined,
14425
14428
  supportsRoundRect: undefined,
14429
+ nullChunksReceived: 0,
14426
14430
  onSignatureVideoCaptured: function onSignatureVideoCaptured() {
14427
14431
  return null;
14428
14432
  }
@@ -14435,8 +14439,11 @@ var useVideoSignatureStore = zustand.create()(middleware.devtools(function (set,
14435
14439
  captureAudio = false;
14436
14440
  }
14437
14441
  if (!camera) throw new Error('Camera not found');
14438
- // set our flag and clear whatever we have recorded so far.
14442
+ // clear whatever we have recorded so far.
14439
14443
  signatureChunks = [];
14444
+ ondataavailableInvocations = [];
14445
+ ondataavailableStartTime = undefined;
14446
+ lastCalculatedVideoChunkRate = undefined;
14440
14447
  // start recording from the output canvas to capture the signature
14441
14448
  var outputStream = (_a = get().outputCanvas.current) === null || _a === void 0 ? void 0 : _a.captureStream(24);
14442
14449
  if (!outputStream) throw new Error('outputStream not found');
@@ -14454,18 +14461,26 @@ var useVideoSignatureStore = zustand.create()(middleware.devtools(function (set,
14454
14461
  recordingStartedAt: e.timeStamp
14455
14462
  });
14456
14463
  };
14457
- var hasFirstChunk = false;
14458
14464
  signatureRecorder.ondataavailable = function (event) {
14465
+ var now = performance.now();
14459
14466
  signatureChunks.push(event.data);
14460
- if (!hasFirstChunk) {
14461
- hasFirstChunk = true;
14462
- set({
14463
- firstChunkReceivedAt: performance.now(),
14464
- lastChunkReceivedAt: performance.now()
14467
+ trackVideoChunkRate(now);
14468
+ if (event.data.size > 0) {
14469
+ set(function (state) {
14470
+ var _a;
14471
+ return {
14472
+ firstChunkReceivedAt: (_a = state.firstChunkReceivedAt) !== null && _a !== void 0 ? _a : now,
14473
+ lastChunkReceivedAt: now
14474
+ };
14465
14475
  });
14466
14476
  } else {
14467
- set({
14468
- lastChunkReceivedAt: performance.now()
14477
+ set(function (state) {
14478
+ var _a;
14479
+ return {
14480
+ nullChunksReceived: state.nullChunksReceived + 1,
14481
+ firstNullChunkReceivedAt: (_a = state.firstNullChunkReceivedAt) !== null && _a !== void 0 ? _a : now,
14482
+ lastNullChunkReceivedAt: now
14483
+ };
14469
14484
  });
14470
14485
  }
14471
14486
  };
@@ -14476,9 +14491,10 @@ var useVideoSignatureStore = zustand.create()(middleware.devtools(function (set,
14476
14491
  },
14477
14492
  stopRecording: function stopRecording(signatureData, imageUrl) {
14478
14493
  return __awaiter(this, void 0, void 0, function () {
14494
+ var _a, finalChunkReceived, timedOut, waitedMs;
14479
14495
  var _this = this;
14480
- return __generator(this, function (_a) {
14481
- switch (_a.label) {
14496
+ return __generator(this, function (_b) {
14497
+ switch (_b.label) {
14482
14498
  case 0:
14483
14499
  set({
14484
14500
  recordingStopRequestedAt: performance.now()
@@ -14486,10 +14502,10 @@ var useVideoSignatureStore = zustand.create()(middleware.devtools(function (set,
14486
14502
  if (!signatureRecorder) return [2 /*return*/];
14487
14503
  return [4 /*yield*/, waitForOneMoreChunk()];
14488
14504
  case 1:
14489
- _a.sent();
14505
+ _a = _b.sent(), finalChunkReceived = _a.finalChunkReceived, timedOut = _a.timedOut, waitedMs = _a.waitedMs;
14490
14506
  signatureRecorder.onstop = function () {
14491
14507
  return __awaiter(_this, void 0, void 0, function () {
14492
- var recordingStoppedAt, mimeType, blob, _a, onSignatureVideoCaptured, recordingStartRequestedAt, recordingStartedAt, firstChunkReceivedAt, signatureStartedAt, signatureEndedAt, acceptClickedAt, recordingStopRequestedAt, lastChunkReceivedAt, supportsRequestVideoFrameCallback, supportsRoundRect;
14508
+ var recordingStoppedAt, mimeType, blob, _a, onSignatureVideoCaptured, recordingStartRequestedAt, recordingStartedAt, firstChunkReceivedAt, signatureStartedAt, signatureEndedAt, acceptClickedAt, clearClickedAt, recordingStopRequestedAt, lastChunkReceivedAt, supportsRequestVideoFrameCallback, supportsRoundRect, nullChunksReceived, firstNullChunkReceivedAt, lastNullChunkReceivedAt, metadata;
14493
14509
  return __generator(this, function (_b) {
14494
14510
  recordingStoppedAt = performance.now();
14495
14511
  set({
@@ -14501,13 +14517,22 @@ var useVideoSignatureStore = zustand.create()(middleware.devtools(function (set,
14501
14517
  });
14502
14518
  signatureChunks = [];
14503
14519
  signatureRecorder = null;
14504
- _a = get(), onSignatureVideoCaptured = _a.onSignatureVideoCaptured, recordingStartRequestedAt = _a.recordingStartRequestedAt, recordingStartedAt = _a.recordingStartedAt, firstChunkReceivedAt = _a.firstChunkReceivedAt, signatureStartedAt = _a.signatureStartedAt, signatureEndedAt = _a.signatureEndedAt, acceptClickedAt = _a.acceptClickedAt, recordingStopRequestedAt = _a.recordingStopRequestedAt, lastChunkReceivedAt = _a.lastChunkReceivedAt, supportsRequestVideoFrameCallback = _a.supportsRequestVideoFrameCallback, supportsRoundRect = _a.supportsRoundRect;
14505
- onSignatureVideoCaptured(blob, signatureData !== null && signatureData !== void 0 ? signatureData : null, imageUrl !== null && imageUrl !== void 0 ? imageUrl : null, {
14520
+ _a = get(), onSignatureVideoCaptured = _a.onSignatureVideoCaptured, recordingStartRequestedAt = _a.recordingStartRequestedAt, recordingStartedAt = _a.recordingStartedAt, firstChunkReceivedAt = _a.firstChunkReceivedAt, signatureStartedAt = _a.signatureStartedAt, signatureEndedAt = _a.signatureEndedAt, acceptClickedAt = _a.acceptClickedAt, clearClickedAt = _a.clearClickedAt, recordingStopRequestedAt = _a.recordingStopRequestedAt, lastChunkReceivedAt = _a.lastChunkReceivedAt, supportsRequestVideoFrameCallback = _a.supportsRequestVideoFrameCallback, supportsRoundRect = _a.supportsRoundRect, nullChunksReceived = _a.nullChunksReceived, firstNullChunkReceivedAt = _a.firstNullChunkReceivedAt, lastNullChunkReceivedAt = _a.lastNullChunkReceivedAt;
14521
+ metadata = {
14506
14522
  mimeType: mimeType,
14507
14523
  browserFeatures: {
14508
14524
  supportsRoundRect: supportsRoundRect,
14509
14525
  supportsRequestVideoFrameCallback: supportsRequestVideoFrameCallback
14510
14526
  },
14527
+ diagnostics: {
14528
+ nullChunksReceived: nullChunksReceived,
14529
+ firstNullChunkReceivedAt: firstNullChunkReceivedAt,
14530
+ lastNullChunkReceivedAt: lastNullChunkReceivedAt,
14531
+ finalChunkReceived: finalChunkReceived,
14532
+ finalChunkTimedOut: timedOut,
14533
+ finalChunkWaitedMs: waitedMs,
14534
+ videoChunkRate: lastCalculatedVideoChunkRate
14535
+ },
14511
14536
  timingData: {
14512
14537
  recordingStartRequestedAt: recordingStartRequestedAt ? Math.ceil(recordingStartRequestedAt) : 0,
14513
14538
  recordingStartedAt: recordingStartedAt ? Math.ceil(recordingStartedAt) : 0,
@@ -14515,11 +14540,14 @@ var useVideoSignatureStore = zustand.create()(middleware.devtools(function (set,
14515
14540
  signatureStartedAt: signatureStartedAt ? Math.ceil(signatureStartedAt) : 0,
14516
14541
  signatureEndedAt: signatureEndedAt ? Math.ceil(signatureEndedAt) : 0,
14517
14542
  acceptClickedAt: acceptClickedAt ? Math.ceil(acceptClickedAt) : 0,
14543
+ clearClickedAt: clearClickedAt ? Math.ceil(clearClickedAt) : 0,
14518
14544
  recordingStopRequestedAt: recordingStopRequestedAt ? Math.ceil(recordingStopRequestedAt) : 0,
14519
14545
  recordingStoppedAt: Math.ceil(recordingStoppedAt),
14520
14546
  lastChunkReceivedAt: lastChunkReceivedAt ? Math.ceil(lastChunkReceivedAt) : 0
14521
14547
  }
14522
- });
14548
+ };
14549
+ debug('signature video metadata', metadata);
14550
+ onSignatureVideoCaptured(blob, signatureData !== null && signatureData !== void 0 ? signatureData : null, imageUrl !== null && imageUrl !== void 0 ? imageUrl : null, metadata);
14523
14551
  return [2 /*return*/];
14524
14552
  });
14525
14553
  });
@@ -14532,6 +14560,9 @@ var useVideoSignatureStore = zustand.create()(middleware.devtools(function (set,
14532
14560
  },
14533
14561
  clearRecordedData: function clearRecordedData() {
14534
14562
  signatureChunks = [];
14563
+ ondataavailableInvocations = [];
14564
+ ondataavailableStartTime = undefined;
14565
+ lastCalculatedVideoChunkRate = undefined;
14535
14566
  signatureRecorder === null || signatureRecorder === void 0 ? void 0 : signatureRecorder.stop();
14536
14567
  signatureRecorder = null;
14537
14568
  set({
@@ -14546,8 +14577,12 @@ var useVideoSignatureStore = zustand.create()(middleware.devtools(function (set,
14546
14577
  signatureStartedAt: undefined,
14547
14578
  signatureEndedAt: undefined,
14548
14579
  acceptClickedAt: undefined,
14580
+ clearClickedAt: undefined,
14549
14581
  supportsRequestVideoFrameCallback: undefined,
14550
- supportsRoundRect: undefined
14582
+ supportsRoundRect: undefined,
14583
+ nullChunksReceived: 0,
14584
+ firstNullChunkReceivedAt: undefined,
14585
+ lastNullChunkReceivedAt: undefined
14551
14586
  });
14552
14587
  }
14553
14588
  });
@@ -14557,7 +14592,7 @@ var useVideoSignatureStore = zustand.create()(middleware.devtools(function (set,
14557
14592
  * @param delayMs - The delay in milliseconds before the first check -- this is used to make sure we get at least one extra second of video.
14558
14593
  * @param checkEveryMs - The interval in milliseconds between checks after the initial delay has passed.
14559
14594
  * @param timeoutMs - The maximum time in milliseconds to wait for the chunk -- this is used to prevent infinite loops.
14560
- * @returns A promise that resolves when the delay has passed and at least one chunk has been received received.
14595
+ * @returns A promise that resolves when the delay has passed and at least one chunk has been received received. The return value is the number of milliseconds that we waited, whether we received a chunk, and whether we timed out.
14561
14596
  */
14562
14597
  function waitForOneMoreChunk(delayMs, checkEveryMs, timeoutMs) {
14563
14598
  if (delayMs === void 0) {
@@ -14569,20 +14604,30 @@ function waitForOneMoreChunk(delayMs, checkEveryMs, timeoutMs) {
14569
14604
  if (timeoutMs === void 0) {
14570
14605
  timeoutMs = 3000;
14571
14606
  }
14572
- var start = performance.now();
14573
14607
  return new Promise(function (resolve) {
14608
+ var start = performance.now();
14574
14609
  var initialLastChunkReceivedAt = useVideoSignatureStore.getState().lastChunkReceivedAt;
14575
- function gotAChunk() {
14610
+ function checkForChunk() {
14576
14611
  var lastChunkReceivedAt = useVideoSignatureStore.getState().lastChunkReceivedAt;
14577
- return performance.now() - start > timeoutMs || !lastChunkReceivedAt || !initialLastChunkReceivedAt || lastChunkReceivedAt > initialLastChunkReceivedAt;
14612
+ var waitedMs = performance.now() - start;
14613
+ var timedOut = waitedMs > timeoutMs;
14614
+ var finalChunkReceived = !!lastChunkReceivedAt && !!initialLastChunkReceivedAt && lastChunkReceivedAt > initialLastChunkReceivedAt;
14615
+ return {
14616
+ waitedMs: waitedMs,
14617
+ finalChunkReceived: finalChunkReceived,
14618
+ timedOut: timedOut
14619
+ };
14578
14620
  }
14579
14621
  setTimeout(function () {
14580
- if (gotAChunk()) return resolve(); // check immediately
14622
+ // check immediately
14623
+ var result = checkForChunk();
14624
+ if (result.finalChunkReceived || result.timedOut) return resolve(result);
14581
14625
  // otherwise, check on a configured interval
14582
14626
  var interval = setInterval(function () {
14583
- if (gotAChunk()) {
14627
+ var result = checkForChunk();
14628
+ if (result.finalChunkReceived || result.timedOut) {
14584
14629
  clearInterval(interval);
14585
- resolve();
14630
+ resolve(result);
14586
14631
  }
14587
14632
  }, checkEveryMs);
14588
14633
  }, delayMs);
@@ -14692,6 +14737,44 @@ function useVideoFrameLoop(ref, onFrame) {
14692
14737
  return videoFrameLoop(ref.current, onFrame);
14693
14738
  }, [onFrame, ref]);
14694
14739
  }
14740
+ function calculateAndStoreOndataavailableRate() {
14741
+ if (ondataavailableInvocations.length < 2 || !ondataavailableStartTime) {
14742
+ lastCalculatedVideoChunkRate = {
14743
+ averageRate: 0,
14744
+ minRate: 0,
14745
+ maxRate: 0,
14746
+ totalChunksReceived: ondataavailableInvocations.length,
14747
+ recordingDurationMs: 0
14748
+ };
14749
+ return;
14750
+ }
14751
+ var totalDuration = ondataavailableInvocations[ondataavailableInvocations.length - 1] - ondataavailableStartTime;
14752
+ var averageRate = (ondataavailableInvocations.length - 1) / (totalDuration / 1000); // invocations per second
14753
+ // Calculate rates for each interval between invocations
14754
+ var rates = [];
14755
+ for (var i = 1; i < ondataavailableInvocations.length; i++) {
14756
+ var intervalMs = ondataavailableInvocations[i] - ondataavailableInvocations[i - 1];
14757
+ var rate = 1000 / intervalMs; // invocations per second for this interval
14758
+ rates.push(rate);
14759
+ }
14760
+ var minRate = Math.min.apply(Math, rates);
14761
+ var maxRate = Math.max.apply(Math, rates);
14762
+ lastCalculatedVideoChunkRate = {
14763
+ averageRate: Math.round(averageRate * 100) / 100,
14764
+ // Round to 2 decimal places
14765
+ minRate: Math.round(minRate * 100) / 100,
14766
+ maxRate: Math.round(maxRate * 100) / 100,
14767
+ totalChunksReceived: ondataavailableInvocations.length,
14768
+ recordingDurationMs: Math.round(totalDuration)
14769
+ };
14770
+ }
14771
+ function trackVideoChunkRate(now) {
14772
+ // Track ondataavailable invocations for rate calculation
14773
+ ondataavailableStartTime !== null && ondataavailableStartTime !== void 0 ? ondataavailableStartTime : ondataavailableStartTime = now;
14774
+ ondataavailableInvocations.push(now);
14775
+ // Calculate and store the current rate
14776
+ calculateAndStoreOndataavailableRate();
14777
+ }
14695
14778
 
14696
14779
  function VideoSignaturePad(_a) {
14697
14780
  var onAcceptBtnClicked = _a.onAcceptBtnClicked,
@@ -15627,6 +15710,7 @@ function VideoSignatureWizardGuides(_a) {
15627
15710
  var onClearBtnClicked = React.useCallback(function () {
15628
15711
  var _a, _b;
15629
15712
  useVideoSignatureStore.setState({
15713
+ clearClickedAt: performance.now(),
15630
15714
  signatureStartedAt: undefined,
15631
15715
  signaturePadEmpty: true,
15632
15716
  signatureValid: false