@scandit/web-datacapture-label 8.4.0 → 8.5.0-beta.1

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.
Files changed (514) hide show
  1. package/THIRD_PARTY.txt +0 -2
  2. package/build/js/AdaptiveRecognitionMode-DBr--JVQ.d.ts +25 -0
  3. package/build/js/AdaptiveRecognitionResult-Clnk-SP8.d.ts +564 -0
  4. package/build/js/BarcodeField-CWg5Ve8v.d.ts +9 -0
  5. package/build/js/BarcodeFieldBuilder-CSsj0EXY.d.ts +21 -0
  6. package/build/js/Button-Ou77FlfL.d.ts +68 -0
  7. package/build/js/CapturedLabel-PjFfeqht.d.ts +30 -0
  8. package/build/js/CustomBarcode-B9b3T3wr.d.ts +29 -0
  9. package/build/js/CustomBarcodeBuilder-DdWG8iCR.d.ts +18 -0
  10. package/build/js/CustomText-Cl2GuEWp.d.ts +27 -0
  11. package/build/js/CustomTextBuilder-0AbdOASa.d.ts +20 -0
  12. package/build/js/DateText-qQtIgcnZ.d.ts +25 -0
  13. package/build/js/DateTextBuilder-D4LModbR.d.ts +21 -0
  14. package/build/js/ExpiryDateText-DkTHW-n-.d.ts +25 -0
  15. package/build/js/ExpiryDateTextBuilder-BGrTAbAB.d.ts +20 -0
  16. package/build/js/ImeiOneBarcode-d4T3iiT8.d.ts +22 -0
  17. package/build/js/ImeiOneBarcodeBuilder-B9onIT76.d.ts +15 -0
  18. package/build/js/ImeiTwoBarcode-DhmyWFV3.d.ts +22 -0
  19. package/build/js/ImeiTwoBarcodeBuilder-JChbnrgN.d.ts +15 -0
  20. package/build/js/LabelCapture-BZi-QVCO.d.ts +42 -0
  21. package/build/js/LabelCaptureAdvancedOverlay-e09i_aoX.d.ts +89 -0
  22. package/build/js/LabelCaptureBasicOverlay-BZl1LJkD.d.ts +63 -0
  23. package/build/js/LabelCaptureFeedback-Bc-zIaL_.d.ts +15 -0
  24. package/build/js/LabelCaptureOverlayJSON-B6X3-JDh.d.ts +9 -0
  25. package/build/js/LabelCaptureSession-Dc8YZO9H.d.ts +22 -0
  26. package/build/js/LabelCaptureSettings-D4GHiKnt.d.ts +29 -0
  27. package/build/js/LabelCaptureWorkerManager-GqFlRfyL.js +1 -0
  28. package/build/js/LabelDateComponentFormat-BDdyln8r.d.ts +8 -0
  29. package/build/js/LabelDateFormat-C9T5qNMc.d.ts +17 -0
  30. package/build/js/LabelDateResult-CQ9G5zQl.d.ts +27 -0
  31. package/build/js/LabelDefinition-CAZoQj1a.d.ts +71 -0
  32. package/build/js/LabelField-BAO35-Eb.d.ts +44 -0
  33. package/build/js/LabelFieldDefinition-CuGI3QUq.d.ts +9 -0
  34. package/build/js/LabelFieldDefinitionBuilder-rN0LybgZ.d.ts +37 -0
  35. package/build/js/LabelFieldLocation-DDqgTh17.d.ts +22 -0
  36. package/build/js/LabelFieldState-JJ7Cbn3n.d.ts +8 -0
  37. package/build/js/LabelFieldType-DEXmgciU.d.ts +8 -0
  38. package/build/js/LabelFieldValueType-C8ZfGaCT.d.ts +10 -0
  39. package/build/js/PackingDateText-DH3NkY_K.d.ts +25 -0
  40. package/build/js/PackingDateTextBuilder-Cay2b3Se.d.ts +20 -0
  41. package/build/js/PartNumberBarcode-Dzx1zF4O.d.ts +22 -0
  42. package/build/js/PartNumberBarcodeBuilder-Bwg9UTcy.d.ts +15 -0
  43. package/build/js/ReceiptScanningLineItem-CZ--bISr.d.ts +40 -0
  44. package/build/js/SerialNumberBarcode-DWBGJVoz.d.ts +22 -0
  45. package/build/js/SerialNumberBarcodeBuilder-oSUDdRsf.d.ts +15 -0
  46. package/build/js/TextField-CTCb88lU.d.ts +6 -0
  47. package/build/js/TextFieldBuilder-biW0vkn0.d.ts +6 -0
  48. package/build/js/TotalPriceText-BydB0NCL.d.ts +22 -0
  49. package/build/js/TotalPriceTextBuilder-B8MK5Xjy.d.ts +17 -0
  50. package/build/js/UnitPriceText-C7EwC-Go.d.ts +22 -0
  51. package/build/js/UnitPriceTextBuilder-Bc7dIZF4.d.ts +17 -0
  52. package/build/js/ValidationFlowField-DL7FdqPM.d.ts +21 -0
  53. package/build/js/WeightText-DrWQ9nBI.d.ts +22 -0
  54. package/build/js/WeightTextBuilder-BzG1seYF.d.ts +17 -0
  55. package/build/js/WorkerMain-dzOcGXQl.js +1 -0
  56. package/build/js/api/AdaptiveRecognitionMode.d.ts +2 -24
  57. package/build/js/api/AdaptiveRecognitionMode.js +1 -1
  58. package/build/js/api/AdaptiveRecognitionResult.d.ts +2 -37
  59. package/build/js/api/AdaptiveRecognitionResult.js +1 -1
  60. package/build/js/api/BarcodeField.d.ts +2 -8
  61. package/build/js/api/BarcodeFieldBuilder.d.ts +2 -14
  62. package/build/js/api/BarcodeFieldBuilder.js +1 -1
  63. package/build/js/api/CapturedLabel.d.ts +2 -34
  64. package/build/js/api/CapturedLabel.js +1 -1
  65. package/build/js/api/CustomBarcode.d.ts +2 -30
  66. package/build/js/api/CustomBarcode.js +1 -1
  67. package/build/js/api/CustomBarcodeBuilder.d.ts +2 -21
  68. package/build/js/api/CustomBarcodeBuilder.js +1 -1
  69. package/build/js/api/CustomText.d.ts +2 -62
  70. package/build/js/api/CustomText.js +1 -1
  71. package/build/js/api/CustomTextBuilder.d.ts +2 -57
  72. package/build/js/api/CustomTextBuilder.js +1 -1
  73. package/build/js/api/DateText.d.ts +2 -59
  74. package/build/js/api/DateText.js +1 -1
  75. package/build/js/api/DateTextBuilder.d.ts +2 -57
  76. package/build/js/api/DateTextBuilder.js +1 -1
  77. package/build/js/api/ExpiryDateText.d.ts +2 -59
  78. package/build/js/api/ExpiryDateText.js +1 -1
  79. package/build/js/api/ExpiryDateTextBuilder.d.ts +2 -56
  80. package/build/js/api/ExpiryDateTextBuilder.js +1 -1
  81. package/build/js/api/ImeiOneBarcode.d.ts +2 -22
  82. package/build/js/api/ImeiOneBarcode.js +1 -1
  83. package/build/js/api/ImeiOneBarcodeBuilder.d.ts +2 -17
  84. package/build/js/api/ImeiOneBarcodeBuilder.js +1 -1
  85. package/build/js/api/ImeiTwoBarcode.d.ts +2 -22
  86. package/build/js/api/ImeiTwoBarcode.js +1 -1
  87. package/build/js/api/ImeiTwoBarcodeBuilder.d.ts +2 -17
  88. package/build/js/api/ImeiTwoBarcodeBuilder.js +1 -1
  89. package/build/js/api/LabelCapture.d.ts +2 -58
  90. package/build/js/api/LabelCapture.js +1 -1
  91. package/build/js/api/LabelCaptureAdaptiveRecognitionOverlay.d.ts +45 -98
  92. package/build/js/api/LabelCaptureAdaptiveRecognitionOverlay.js +1 -1
  93. package/build/js/api/LabelCaptureAdaptiveRecognitionSettings.d.ts +2 -37
  94. package/build/js/api/LabelCaptureAdaptiveRecognitionSettings.js +1 -1
  95. package/build/js/api/LabelCaptureAdvancedOverlay.d.ts +2 -60
  96. package/build/js/api/LabelCaptureAdvancedOverlay.js +1 -1
  97. package/build/js/api/LabelCaptureAdvancedOverlayListener.d.ts +2 -60
  98. package/build/js/api/LabelCaptureBasicOverlay.d.ts +2 -60
  99. package/build/js/api/LabelCaptureBasicOverlay.js +1 -1
  100. package/build/js/api/LabelCaptureBasicOverlayListener.d.ts +2 -60
  101. package/build/js/api/LabelCaptureFeedback.d.ts +2 -14
  102. package/build/js/api/LabelCaptureFeedback.js +1 -1
  103. package/build/js/api/LabelCaptureListener.d.ts +2 -58
  104. package/build/js/api/LabelCaptureOverlayJSON.d.ts +2 -44
  105. package/build/js/api/LabelCaptureSession.d.ts +2 -28
  106. package/build/js/api/LabelCaptureSession.js +1 -1
  107. package/build/js/api/LabelCaptureSettings.d.ts +2 -79
  108. package/build/js/api/LabelCaptureSettings.js +1 -1
  109. package/build/js/api/LabelCaptureValidationFlow/LabelCaptureValidationFlowOverlay.d.ts +37 -89
  110. package/build/js/api/LabelCaptureValidationFlow/LabelCaptureValidationFlowOverlay.js +1 -1
  111. package/build/js/api/LabelCaptureValidationFlow/private/ValidationFlowPresenter.d.ts +291 -350
  112. package/build/js/api/LabelCaptureValidationFlow/private/ValidationFlowPresenter.js +1 -1
  113. package/build/js/api/LabelCaptureValidationFlow/private/ValidationFlowStateManager.d.ts +205 -225
  114. package/build/js/api/LabelCaptureValidationFlow/private/ValidationFlowStateManager.js +1 -1
  115. package/build/js/api/LabelCaptureValidationFlow/private/ValidationFlowView.d.ts +254 -281
  116. package/build/js/api/LabelCaptureValidationFlow/private/ValidationFlowView.js +1 -1
  117. package/build/js/api/LabelCaptureValidationFlowFeedback.d.ts +11 -10
  118. package/build/js/api/LabelCaptureValidationFlowFeedback.js +1 -1
  119. package/build/js/api/LabelCaptureValidationFlowSettings.d.ts +49 -48
  120. package/build/js/api/LabelCaptureValidationFlowSettings.js +1 -1
  121. package/build/js/api/LabelDateComponentFormat.d.ts +2 -7
  122. package/build/js/api/LabelDateComponentFormat.js +1 -1
  123. package/build/js/api/LabelDateFormat.d.ts +2 -16
  124. package/build/js/api/LabelDateFormat.js +1 -1
  125. package/build/js/api/LabelDateResult.d.ts +2 -26
  126. package/build/js/api/LabelDateResult.js +1 -1
  127. package/build/js/api/LabelDefinition.d.ts +2 -93
  128. package/build/js/api/LabelDefinition.js +1 -1
  129. package/build/js/api/LabelField.d.ts +2 -43
  130. package/build/js/api/LabelField.js +1 -1
  131. package/build/js/api/LabelFieldDefinition.d.ts +2 -8
  132. package/build/js/api/LabelFieldDefinitionBuilder.d.ts +2 -16
  133. package/build/js/api/LabelFieldDefinitionBuilder.js +1 -1
  134. package/build/js/api/LabelFieldLocation.d.ts +2 -21
  135. package/build/js/api/LabelFieldLocation.js +1 -1
  136. package/build/js/api/LabelFieldLocationType.d.ts +13 -12
  137. package/build/js/api/LabelFieldLocationType.js +1 -1
  138. package/build/js/api/LabelFieldState.d.ts +2 -7
  139. package/build/js/api/LabelFieldState.js +1 -1
  140. package/build/js/api/LabelFieldType.d.ts +2 -7
  141. package/build/js/api/LabelFieldType.js +1 -1
  142. package/build/js/api/LabelFieldValueType.d.ts +2 -9
  143. package/build/js/api/LabelFieldValueType.js +1 -1
  144. package/build/js/api/LabelResultUpdateType.d.ts +6 -5
  145. package/build/js/api/LabelResultUpdateType.js +1 -1
  146. package/build/js/api/PackingDateText.d.ts +2 -59
  147. package/build/js/api/PackingDateText.js +1 -1
  148. package/build/js/api/PackingDateTextBuilder.d.ts +2 -56
  149. package/build/js/api/PackingDateTextBuilder.js +1 -1
  150. package/build/js/api/PartNumberBarcode.d.ts +2 -22
  151. package/build/js/api/PartNumberBarcode.js +1 -1
  152. package/build/js/api/PartNumberBarcodeBuilder.d.ts +2 -17
  153. package/build/js/api/PartNumberBarcodeBuilder.js +1 -1
  154. package/build/js/api/PrivateReceiptScanningHandler.d.ts +30 -66
  155. package/build/js/api/PrivateReceiptScanningHandler.js +1 -1
  156. package/build/js/api/PrivateReceiptScanningListener.d.ts +17 -52
  157. package/build/js/api/PrivateValidationFlowHandler.d.ts +38 -69
  158. package/build/js/api/PrivateValidationFlowHandler.js +1 -1
  159. package/build/js/api/ReceiptScanningLineItem.d.ts +2 -39
  160. package/build/js/api/ReceiptScanningLineItem.js +1 -1
  161. package/build/js/api/ReceiptScanningResult.d.ts +2 -37
  162. package/build/js/api/ReceiptScanningResult.js +1 -1
  163. package/build/js/api/SerialNumberBarcode.d.ts +2 -22
  164. package/build/js/api/SerialNumberBarcode.js +1 -1
  165. package/build/js/api/SerialNumberBarcodeBuilder.d.ts +2 -17
  166. package/build/js/api/SerialNumberBarcodeBuilder.js +1 -1
  167. package/build/js/api/TextField.d.ts +2 -6
  168. package/build/js/api/TextFieldBuilder.d.ts +2 -6
  169. package/build/js/api/TextFieldBuilder.js +1 -1
  170. package/build/js/api/TotalPriceText.d.ts +2 -57
  171. package/build/js/api/TotalPriceText.js +1 -1
  172. package/build/js/api/TotalPriceTextBuilder.d.ts +2 -54
  173. package/build/js/api/TotalPriceTextBuilder.js +1 -1
  174. package/build/js/api/UnitPriceText.d.ts +2 -57
  175. package/build/js/api/UnitPriceText.js +1 -1
  176. package/build/js/api/UnitPriceTextBuilder.d.ts +2 -54
  177. package/build/js/api/UnitPriceTextBuilder.js +1 -1
  178. package/build/js/api/ValidationFlowField.d.ts +2 -26
  179. package/build/js/api/ValidationFlowField.js +1 -1
  180. package/build/js/api/WeightText.d.ts +2 -57
  181. package/build/js/api/WeightText.js +1 -1
  182. package/build/js/api/WeightTextBuilder.d.ts +2 -54
  183. package/build/js/api/WeightTextBuilder.js +1 -1
  184. package/build/js/dataCaptureEngine-CqE4l_uy.d.ts +36 -0
  185. package/build/js/djinni-types/sdcAnalyticsModule.d.ts +18 -18
  186. package/build/js/djinni-types/sdcBarcodeData.d.ts +2 -47
  187. package/build/js/djinni-types/sdcBarcodeData.js +1 -1
  188. package/build/js/djinni-types/sdcBarcodeInternalSdkData.d.ts +2 -36
  189. package/build/js/djinni-types/sdcCoreCommon.d.ts +2 -13
  190. package/build/js/djinni-types/sdcCoreCommon.js +1 -1
  191. package/build/js/djinni-types/sdcCoreCommonBuffer.d.ts +2 -11
  192. package/build/js/djinni-types/sdcCoreCommonGeometry.d.ts +2 -56
  193. package/build/js/djinni-types/sdcCoreCommonGeometry.js +1 -1
  194. package/build/js/djinni-types/sdcCoreCommonGraphic.d.ts +2 -22
  195. package/build/js/djinni-types/sdcCoreCommonGraphic.js +1 -1
  196. package/build/js/djinni-types/sdcCoreInternalSdkArea.d.ts +2 -39
  197. package/build/js/djinni-types/sdcCoreInternalSdkCapture.d.ts +2 -9
  198. package/build/js/djinni-types/sdcCoreInternalSdkCapture.js +1 -1
  199. package/build/js/djinni-types/sdcCoreInternalSdkCommonAsync.d.ts +2 -12
  200. package/build/js/djinni-types/sdcCoreInternalSdkCommonGeometry.d.ts +2 -50
  201. package/build/js/djinni-types/sdcCoreInternalSdkCommonGeometry.js +1 -1
  202. package/build/js/djinni-types/sdcCoreInternalSdkCommonGraphics.d.ts +2 -10
  203. package/build/js/djinni-types/sdcCoreInternalSdkOcr.d.ts +2 -35
  204. package/build/js/djinni-types/sdcCoreInternalSdkUiStyle.d.ts +2 -11
  205. package/build/js/djinni-types/sdcCoreInternalSdkUiViewfinder.d.ts +2 -77
  206. package/build/js/djinni-types/sdcCoreInternalSdkUiViewfinder.js +1 -1
  207. package/build/js/djinni-types/sdcLabelData.d.ts +2 -37
  208. package/build/js/djinni-types/sdcLabelData.js +1 -1
  209. package/build/js/djinni-types/sdcLabelInternalModuleCapture.d.ts +2 -15
  210. package/build/js/djinni-types/sdcLabelInternalModuleCapture.js +1 -1
  211. package/build/js/djinni-types/sdcLabelInternalModuleData.d.ts +2 -65
  212. package/build/js/djinni-types/sdcLabelInternalModuleData.js +1 -1
  213. package/build/js/djinni-types/sdcLabelInternalModuleUiOverlay.d.ts +2 -135
  214. package/build/js/djinni-types/sdcSymbologySettings.d.ts +2 -21
  215. package/build/js/{global.d.d.ts → global.d.ts} +7 -8
  216. package/build/js/index.d.ts +53 -82
  217. package/build/js/index.js +1 -1
  218. package/build/js/moduleLoader.d.ts +4 -3
  219. package/build/js/moduleLoader.js +1 -1
  220. package/build/js/nativeCall-q32Awp0L.d.ts +13 -0
  221. package/build/js/nativeDispatch-C7kZCRYA.d.ts +13 -0
  222. package/build/js/private/PrivateLabelFieldDefinition.d.ts +7 -41
  223. package/build/js/private/PrivateRectangularLocationSelectionJSON.d.ts +6 -5
  224. package/build/js/private/adaptiveRecognitionModeTranslator.d.ts +5 -4
  225. package/build/js/private/adaptiveRecognitionModeTranslator.js +1 -1
  226. package/build/js/private/brushTranslator.d.ts +10 -9
  227. package/build/js/private/brushTranslator.js +1 -1
  228. package/build/js/private/createProxiedViewFinder.d.ts +6 -63
  229. package/build/js/private/createProxiedViewFinder.js +1 -1
  230. package/build/js/private/fromWrappedFutureToPromise.d.ts +4 -3
  231. package/build/js/private/fromWrappedFutureToPromise.js +1 -1
  232. package/build/js/private/labelFieldLocationTypeTranslator.d.ts +6 -5
  233. package/build/js/private/labelFieldLocationTypeTranslator.js +1 -1
  234. package/build/js/private/measureTranslator.d.ts +5 -4
  235. package/build/js/private/measureTranslator.js +1 -1
  236. package/build/js/private/numberTranslator.d.ts +5 -4
  237. package/build/js/private/numberTranslator.js +1 -1
  238. package/build/js/private/scrollIntoView/compute.d.ts +56 -56
  239. package/build/js/private/scrollIntoView/compute.js +1 -1
  240. package/build/js/private/scrollIntoView/index.d.ts +9 -8
  241. package/build/js/private/scrollIntoView/index.js +1 -1
  242. package/build/js/private/scrollIntoView/types.d.ts +11 -10
  243. package/build/js/private/symbologiesTranslator.d.ts +7 -6
  244. package/build/js/private/symbologiesTranslator.js +1 -1
  245. package/build/js/private/viewfinderTranslator.d.ts +6 -9
  246. package/build/js/private/viewfinderTranslator.js +1 -1
  247. package/build/js/sdcBarcodeData-DOuUPRUb.d.ts +47 -0
  248. package/build/js/sdcBarcodeInternalSdkData-CJZsjs8c.d.ts +36 -0
  249. package/build/js/sdcCoreCommon-kHUoe_GV.d.ts +13 -0
  250. package/build/js/sdcCoreCommonBuffer-DjQM-W5x.d.ts +11 -0
  251. package/build/js/sdcCoreCommonGeometry-Bxvlllkc.d.ts +56 -0
  252. package/build/js/sdcCoreCommonGraphic-hFLsxC6K.d.ts +22 -0
  253. package/build/js/sdcCoreInternalSdkArea-BDbnSRls.d.ts +38 -0
  254. package/build/js/sdcCoreInternalSdkCapture-CcabgRl6.d.ts +9 -0
  255. package/build/js/sdcCoreInternalSdkCommonAsync-8G3-3n53.d.ts +12 -0
  256. package/build/js/sdcCoreInternalSdkCommonGeometry-BdkRyMJ5.d.ts +50 -0
  257. package/build/js/sdcCoreInternalSdkCommonGraphics-DRTWPww6.d.ts +10 -0
  258. package/build/js/sdcCoreInternalSdkOcr-rkdYyZLs.d.ts +34 -0
  259. package/build/js/sdcCoreInternalSdkUiStyle-pVbYygcu.d.ts +11 -0
  260. package/build/js/sdcCoreInternalSdkUiViewfinder-BoG0LyRj.d.ts +73 -0
  261. package/build/js/sdcLabelData-CHLquvuG.d.ts +37 -0
  262. package/build/js/sdcLabelInternalModuleCapture-B6-1Wjzn.d.ts +512 -0
  263. package/build/js/sdcLabelInternalModuleData-D_O2Y4cu.d.ts +63 -0
  264. package/build/js/sdcLabelInternalModuleUiOverlay-CGIKcVOW.d.ts +113 -0
  265. package/build/js/sdcSymbologySettings-CR04eT_a.d.ts +21 -0
  266. package/build/js/ui/atoms/AdaptiveRecognitionOverlay.d.ts +21 -20
  267. package/build/js/ui/atoms/AdaptiveRecognitionOverlay.js +1 -1
  268. package/build/js/ui/atoms/Button.d.ts +2 -67
  269. package/build/js/ui/atoms/Button.js +1 -1
  270. package/build/js/ui/atoms/TextInput.d.ts +189 -188
  271. package/build/js/ui/atoms/TextInput.js +1 -1
  272. package/build/js/ui/atoms/viewportUtils.d.ts +3 -2
  273. package/build/js/ui/atoms/viewportUtils.js +1 -1
  274. package/build/js/ui/controllers/KeyboardVisibilityController.d.ts +131 -130
  275. package/build/js/ui/controllers/KeyboardVisibilityController.js +1 -1
  276. package/build/js/ui/organisms/LabelCaptureValidationFlowLayout.d.ts +97 -96
  277. package/build/js/ui/organisms/LabelCaptureValidationFlowLayout.js +1 -1
  278. package/build/js/vite-env.d.ts +1 -0
  279. package/build/js/worker/LabelCaptureWorkerManager.d.ts +17 -45
  280. package/build/js/worker/LabelCaptureWorkerManager.js +1 -1
  281. package/build/js/worker/NativeImplementationRegistry.d.ts +19 -0
  282. package/build/js/worker/NativeImplementationRegistry.js +1 -0
  283. package/build/js/worker/WorkerMain.d.ts +22 -58
  284. package/build/js/worker/WorkerMain.js +1 -1
  285. package/build/js/worker/WorkerRegistry.d.ts +4 -40
  286. package/build/js/worker/WorkerRegistry.js +1 -1
  287. package/build/js/worker/dataCaptureEngine.d.ts +2 -67
  288. package/build/js/worker/dataCaptureEngine.js +1 -1
  289. package/build/js/worker/dataCaptureWorkerRelated.d.ts +2 -37
  290. package/build/js/worker/handlers/FieldBuilderHandler.d.ts +6 -41
  291. package/build/js/worker/handlers/FieldBuilderHandler.js +1 -1
  292. package/build/js/worker/handlers/LabelCaptureBasicOverlayHandler.d.ts +21 -57
  293. package/build/js/worker/handlers/LabelCaptureBasicOverlayHandler.js +1 -1
  294. package/build/js/worker/handlers/ReceiptScanningHandler.d.ts +10 -48
  295. package/build/js/worker/handlers/ReceiptScanningHandler.js +1 -1
  296. package/build/js/worker/handlers/SettingsHandler.d.ts +9 -47
  297. package/build/js/worker/handlers/SettingsHandler.js +1 -1
  298. package/build/js/worker/handlers/ValidationFlowHandler.d.ts +12 -50
  299. package/build/js/worker/handlers/ValidationFlowHandler.js +1 -1
  300. package/build/js/worker/labelWorkerHandler.d.ts +4 -40
  301. package/build/js/worker/labelWorkerHandler.js +1 -1
  302. package/build/js/worker/nativeCall.d.ts +2 -0
  303. package/build/js/worker/nativeCall.js +1 -0
  304. package/build/js/worker/nativeDispatch.d.ts +2 -0
  305. package/build/js/worker/nativeDispatch.js +1 -0
  306. package/build/js/worker/proxies/AimerViewfinderProxy.d.ts +13 -47
  307. package/build/js/worker/proxies/AimerViewfinderProxy.js +1 -1
  308. package/build/js/worker/proxies/CapturedLabelProxy.d.ts +12 -47
  309. package/build/js/worker/proxies/CapturedLabelProxy.js +1 -1
  310. package/build/js/worker/proxies/LabelCaptureBasicOverlayProxy.d.ts +24 -53
  311. package/build/js/worker/proxies/LabelCaptureBasicOverlayProxy.js +1 -1
  312. package/build/js/worker/proxies/LabelCaptureSessionProxy.d.ts +8 -43
  313. package/build/js/worker/proxies/LabelCaptureSessionProxy.js +1 -1
  314. package/build/js/worker/proxies/LabelCaptureSettingsProxy.d.ts +18 -52
  315. package/build/js/worker/proxies/LabelCaptureSettingsProxy.js +1 -1
  316. package/build/js/worker/proxies/LabelDefinitionProxy.d.ts +14 -48
  317. package/build/js/worker/proxies/LabelDefinitionProxy.js +1 -1
  318. package/build/js/worker/proxies/LabelFieldDefinitionProxy.d.ts +18 -55
  319. package/build/js/worker/proxies/LabelFieldDefinitionProxy.js +1 -1
  320. package/build/js/worker/proxies/LabelFieldProxy.d.ts +16 -50
  321. package/build/js/worker/proxies/LabelFieldProxy.js +1 -1
  322. package/build/js/worker/proxies/NativeProxy.d.ts +2 -37
  323. package/build/js/worker/proxies/NativeProxy.js +1 -1
  324. package/build/js/worker/proxies/NoViewfinderProxy.d.ts +6 -41
  325. package/build/js/worker/proxies/NoViewfinderProxy.js +1 -1
  326. package/build/js/worker/proxies/ReceiptScanningHandlerProxy.d.ts +11 -48
  327. package/build/js/worker/proxies/ReceiptScanningHandlerProxy.js +1 -1
  328. package/build/js/worker/proxies/RectangularViewfinderAnimationProxy.d.ts +9 -44
  329. package/build/js/worker/proxies/RectangularViewfinderAnimationProxy.js +1 -1
  330. package/build/js/worker/proxies/RectangularViewfinderProxy.d.ts +27 -59
  331. package/build/js/worker/proxies/RectangularViewfinderProxy.js +1 -1
  332. package/build/js/worker/proxies/ValidationFlowListenerProxy.d.ts +16 -53
  333. package/build/js/worker/proxies/ValidationFlowListenerProxy.js +1 -1
  334. package/build/js/worker/proxies/base/BarcodeFieldProxyBase.d.ts +10 -43
  335. package/build/js/worker/proxies/base/BarcodeFieldProxyBase.js +1 -1
  336. package/build/js/worker/proxies/base/LabelFieldDefinitionBaseProxy.d.ts +38 -72
  337. package/build/js/worker/proxies/base/LabelFieldDefinitionBaseProxy.js +1 -1
  338. package/build/js/worker/proxies/base/index.d.ts +3 -39
  339. package/build/js/worker/proxies/base/index.js +1 -1
  340. package/build/js/worker/workerHandles.d.ts +2 -0
  341. package/build/js/worker/workerHandles.js +1 -0
  342. package/build/js/workerHandles-DhpaE-4P.d.ts +5 -0
  343. package/package.json +7 -7
  344. package/sdc-lib/label-worker-8.5.0-beta.1.js +1 -0
  345. package/sdc-lib/resources/models/barcode_localization_clutter_aware.69933853e03e.model +0 -0
  346. package/sdc-lib/resources/models/invalidated_id_classification_default.e3985b833d16.model +0 -0
  347. package/sdc-lib/resources/models/ocr_attention.75e86b6ca0ca.model +0 -0
  348. package/sdc-lib/resources/models/qr_module_prediction.515757826ca3.model +0 -0
  349. package/sdc-lib/resources/models/qr_module_prediction_model_spatial_transformer.e790edc14d39.model +0 -0
  350. package/sdc-lib/resources/models/via_id_template_database.5a7e5789abb4.model +0 -0
  351. package/sdc-lib/scandit-datacapture-sdk-label-pthreads.js +1 -1
  352. package/sdc-lib/scandit-datacapture-sdk-label-pthreads.wasm +0 -0
  353. package/sdc-lib/scandit-datacapture-sdk-label-simd-pthreads.js +1 -1
  354. package/sdc-lib/scandit-datacapture-sdk-label-simd-pthreads.wasm +0 -0
  355. package/sdc-lib/scandit-datacapture-sdk-label-simd.js +1 -1
  356. package/sdc-lib/scandit-datacapture-sdk-label-simd.wasm +0 -0
  357. package/sdc-lib/scandit-datacapture-sdk-label.js +1 -1
  358. package/sdc-lib/scandit-datacapture-sdk-label.wasm +0 -0
  359. package/build/js/LabelCapture-DrHOFOh1.d.ts +0 -40
  360. package/build/js/LabelCaptureAdvancedOverlay-FdLIUFg0.d.ts +0 -87
  361. package/build/js/LabelCaptureBasicOverlay-DFtQFeL_.d.ts +0 -61
  362. package/build/js/NativeProxy-wKE5sxLq.d.ts +0 -1117
  363. package/build/js/chunks/chunk-2K4IDUBI.js +0 -1
  364. package/build/js/chunks/chunk-36FUBGEZ.js +0 -1
  365. package/build/js/chunks/chunk-4PATACKR.js +0 -1
  366. package/build/js/chunks/chunk-5JGE6TIK.js +0 -1
  367. package/build/js/chunks/chunk-5X76K74S.js +0 -1
  368. package/build/js/chunks/chunk-67ANQYNA.js +0 -1
  369. package/build/js/chunks/chunk-6AJOOQM4.js +0 -1
  370. package/build/js/chunks/chunk-7D7JLKMH.js +0 -1
  371. package/build/js/chunks/chunk-7FZ6M63O.js +0 -1
  372. package/build/js/chunks/chunk-7V7K3PCH.js +0 -1
  373. package/build/js/chunks/chunk-7VGFHQT3.js +0 -1
  374. package/build/js/chunks/chunk-A537ABTE.js +0 -1
  375. package/build/js/chunks/chunk-A6QIZJQN.js +0 -1
  376. package/build/js/chunks/chunk-ABK45ILU.js +0 -1
  377. package/build/js/chunks/chunk-AI6PEJT5.js +0 -1
  378. package/build/js/chunks/chunk-AP77K5WE.js +0 -0
  379. package/build/js/chunks/chunk-AWVMQD6I.js +0 -1
  380. package/build/js/chunks/chunk-B5ARNEBW.js +0 -1
  381. package/build/js/chunks/chunk-BDA5SYXG.js +0 -1
  382. package/build/js/chunks/chunk-BEKGYADV.js +0 -1
  383. package/build/js/chunks/chunk-BGVFXDGB.js +0 -1
  384. package/build/js/chunks/chunk-BJFWGOUS.js +0 -1
  385. package/build/js/chunks/chunk-BJSBS5IL.js +0 -1
  386. package/build/js/chunks/chunk-BQJUSAIQ.js +0 -1
  387. package/build/js/chunks/chunk-BYHTDLZK.js +0 -1
  388. package/build/js/chunks/chunk-BYXHNUWR.js +0 -1
  389. package/build/js/chunks/chunk-CDFFSVSO.js +0 -1
  390. package/build/js/chunks/chunk-CGNWTUD5.js +0 -1
  391. package/build/js/chunks/chunk-CHBH6UKJ.js +0 -1
  392. package/build/js/chunks/chunk-COOCFN2K.js +0 -1
  393. package/build/js/chunks/chunk-CS7EEHHH.js +0 -1
  394. package/build/js/chunks/chunk-CUHE565K.js +0 -1
  395. package/build/js/chunks/chunk-D5PIEZCN.js +0 -1
  396. package/build/js/chunks/chunk-D6QEVE6U.js +0 -1
  397. package/build/js/chunks/chunk-DDYADIOR.js +0 -1
  398. package/build/js/chunks/chunk-DE2UH73T.js +0 -1
  399. package/build/js/chunks/chunk-DY7YMUCC.js +0 -1
  400. package/build/js/chunks/chunk-F5NT65XG.js +0 -1
  401. package/build/js/chunks/chunk-FMGM62PL.js +0 -1
  402. package/build/js/chunks/chunk-FNR2MDR4.js +0 -1
  403. package/build/js/chunks/chunk-GCMVU762.js +0 -1
  404. package/build/js/chunks/chunk-H3VMMXMG.js +0 -1
  405. package/build/js/chunks/chunk-H4H6H5GI.js +0 -1
  406. package/build/js/chunks/chunk-IIBMH4UP.js +0 -1
  407. package/build/js/chunks/chunk-ITZZENSQ.js +0 -1
  408. package/build/js/chunks/chunk-J53ZQXAJ.js +0 -1
  409. package/build/js/chunks/chunk-JO7OMLH3.js +0 -1
  410. package/build/js/chunks/chunk-KMUMMK5E.js +0 -0
  411. package/build/js/chunks/chunk-L3YJ62IW.js +0 -1
  412. package/build/js/chunks/chunk-L6U6LZ6D.js +0 -1
  413. package/build/js/chunks/chunk-LAW7AY4G.js +0 -1
  414. package/build/js/chunks/chunk-LEARM7VY.js +0 -1
  415. package/build/js/chunks/chunk-LJPJTX67.js +0 -1
  416. package/build/js/chunks/chunk-LLBGDMYR.js +0 -1
  417. package/build/js/chunks/chunk-LTIUWWPC.js +0 -1
  418. package/build/js/chunks/chunk-M4E4AARR.js +0 -1
  419. package/build/js/chunks/chunk-MGEXMPRG.js +0 -1
  420. package/build/js/chunks/chunk-MMRF53YY.js +0 -1
  421. package/build/js/chunks/chunk-MQ3C6JQR.js +0 -1
  422. package/build/js/chunks/chunk-MVGPTPXX.js +0 -1
  423. package/build/js/chunks/chunk-MWD5HRPP.js +0 -0
  424. package/build/js/chunks/chunk-N2RCJCCU.js +0 -1
  425. package/build/js/chunks/chunk-NCZG3BTH.js +0 -1
  426. package/build/js/chunks/chunk-NPDG2TI5.js +0 -1
  427. package/build/js/chunks/chunk-O5PVNK4O.js +0 -1
  428. package/build/js/chunks/chunk-PNBJM4BJ.js +0 -1
  429. package/build/js/chunks/chunk-POMTT6U2.js +0 -1
  430. package/build/js/chunks/chunk-QOVY54UR.js +0 -1
  431. package/build/js/chunks/chunk-QRSFFB7W.js +0 -1
  432. package/build/js/chunks/chunk-R3R62BOL.js +0 -1
  433. package/build/js/chunks/chunk-R5YROV5Y.js +0 -0
  434. package/build/js/chunks/chunk-SQTZDMV3.js +0 -2
  435. package/build/js/chunks/chunk-SUORGX6H.js +0 -0
  436. package/build/js/chunks/chunk-SYDG6PPD.js +0 -1
  437. package/build/js/chunks/chunk-T6RBACQT.js +0 -1
  438. package/build/js/chunks/chunk-UNYPWXEG.js +0 -1
  439. package/build/js/chunks/chunk-UWPIQICM.js +0 -1
  440. package/build/js/chunks/chunk-V6PSSDG3.js +0 -1
  441. package/build/js/chunks/chunk-VIPA3YVR.js +0 -1
  442. package/build/js/chunks/chunk-VNO3A222.js +0 -1
  443. package/build/js/chunks/chunk-VOGHX5ZK.js +0 -1
  444. package/build/js/chunks/chunk-VPU7TPNE.js +0 -1
  445. package/build/js/chunks/chunk-VSEPEYHT.js +0 -1
  446. package/build/js/chunks/chunk-X2BMTDWA.js +0 -1
  447. package/build/js/chunks/chunk-XAZBXHAS.js +0 -1
  448. package/build/js/chunks/chunk-XCYFBGS2.js +0 -1
  449. package/build/js/chunks/chunk-XETUH5HN.js +0 -1
  450. package/build/js/chunks/chunk-XKSRWFDE.js +0 -1
  451. package/build/js/chunks/chunk-XQBJ3GXA.js +0 -1
  452. package/build/js/chunks/chunk-XRXASFAT.js +0 -1
  453. package/build/js/chunks/chunk-Y45KHLIU.js +0 -1
  454. package/build/js/chunks/chunk-ZFSXLH7S.js +0 -0
  455. package/build/js/chunks/chunk-ZU6C4VWO.js +0 -1
  456. package/build/js/chunks/chunk-ZWWBOSQM.js +0 -1
  457. package/build/js/chunks/chunk-ZX3QD2MF.js +0 -1
  458. package/build/js/global.d.js +0 -0
  459. package/build/js/sdcLabelInternalModuleCapture-yM8m0vEc.d.ts +0 -511
  460. package/build/js/worker/handlers/LabelCaptureAdvancedOverlayHandler.d.ts +0 -44
  461. package/build/js/worker/handlers/LabelCaptureAdvancedOverlayHandler.js +0 -1
  462. package/build/js/worker/handlers/LabelCaptureHandler.d.ts +0 -50
  463. package/build/js/worker/handlers/LabelCaptureHandler.js +0 -1
  464. package/build/js/worker/inlineWorker.d.d.ts +0 -4
  465. package/build/js/worker/inlineWorker.d.js +0 -0
  466. package/build/js/worker/labelCapture.inlineWorker.d.ts +0 -46
  467. package/build/js/worker/labelCapture.inlineWorker.js +0 -1
  468. package/build/js/worker/proxies/BarcodeFieldProxy.d.ts +0 -58
  469. package/build/js/worker/proxies/BarcodeFieldProxy.js +0 -1
  470. package/build/js/worker/proxies/CustomBarcodeProxy.d.ts +0 -50
  471. package/build/js/worker/proxies/CustomBarcodeProxy.js +0 -1
  472. package/build/js/worker/proxies/CustomTextProxy.d.ts +0 -49
  473. package/build/js/worker/proxies/CustomTextProxy.js +0 -1
  474. package/build/js/worker/proxies/DateTextProxy.d.ts +0 -49
  475. package/build/js/worker/proxies/DateTextProxy.js +0 -1
  476. package/build/js/worker/proxies/ExpiryDateTextProxy.d.ts +0 -52
  477. package/build/js/worker/proxies/ExpiryDateTextProxy.js +0 -1
  478. package/build/js/worker/proxies/ImeiOneBarcodeProxy.d.ts +0 -48
  479. package/build/js/worker/proxies/ImeiOneBarcodeProxy.js +0 -1
  480. package/build/js/worker/proxies/ImeiTwoBarcodeProxy.d.ts +0 -48
  481. package/build/js/worker/proxies/ImeiTwoBarcodeProxy.js +0 -1
  482. package/build/js/worker/proxies/LabelCaptureAdvancedOverlayProxy.d.ts +0 -48
  483. package/build/js/worker/proxies/LabelCaptureAdvancedOverlayProxy.js +0 -1
  484. package/build/js/worker/proxies/LabelCaptureHelperProxy.d.ts +0 -46
  485. package/build/js/worker/proxies/LabelCaptureHelperProxy.js +0 -1
  486. package/build/js/worker/proxies/LabelCaptureOverlayHelperProxy.d.ts +0 -52
  487. package/build/js/worker/proxies/LabelCaptureOverlayHelperProxy.js +0 -1
  488. package/build/js/worker/proxies/LabelCaptureProxy.d.ts +0 -56
  489. package/build/js/worker/proxies/LabelCaptureProxy.js +0 -1
  490. package/build/js/worker/proxies/LabelFieldLocationProxy.d.ts +0 -48
  491. package/build/js/worker/proxies/LabelFieldLocationProxy.js +0 -1
  492. package/build/js/worker/proxies/PackingDateTextProxy.d.ts +0 -52
  493. package/build/js/worker/proxies/PackingDateTextProxy.js +0 -1
  494. package/build/js/worker/proxies/PartNumberBarcodeProxy.d.ts +0 -48
  495. package/build/js/worker/proxies/PartNumberBarcodeProxy.js +0 -1
  496. package/build/js/worker/proxies/ReceiptScanningOverlayProxy.d.ts +0 -50
  497. package/build/js/worker/proxies/ReceiptScanningOverlayProxy.js +0 -1
  498. package/build/js/worker/proxies/ReceiptScanningSettingsProxy.d.ts +0 -47
  499. package/build/js/worker/proxies/ReceiptScanningSettingsProxy.js +0 -1
  500. package/build/js/worker/proxies/SerialNumberBarcodeProxy.d.ts +0 -48
  501. package/build/js/worker/proxies/SerialNumberBarcodeProxy.js +0 -1
  502. package/build/js/worker/proxies/TotalPriceTextProxy.d.ts +0 -48
  503. package/build/js/worker/proxies/TotalPriceTextProxy.js +0 -1
  504. package/build/js/worker/proxies/UnitPriceTextProxy.d.ts +0 -48
  505. package/build/js/worker/proxies/UnitPriceTextProxy.js +0 -1
  506. package/build/js/worker/proxies/ValidationFlowOverlayProxy.d.ts +0 -46
  507. package/build/js/worker/proxies/ValidationFlowOverlayProxy.js +0 -1
  508. package/build/js/worker/proxies/ValidationFlowSettingsProxy.d.ts +0 -69
  509. package/build/js/worker/proxies/ValidationFlowSettingsProxy.js +0 -1
  510. package/build/js/worker/proxies/WeightTextProxy.d.ts +0 -48
  511. package/build/js/worker/proxies/WeightTextProxy.js +0 -1
  512. package/sdc-lib/resources/models/invalidated_id_classification_default.1cd0f5859941.model +0 -0
  513. package/sdc-lib/resources/models/ocr_attention.dd4572d2c642.model +0 -0
  514. package/sdc-lib/resources/models/via_id_template_database.488e01f034cb.model +0 -0
@@ -1 +1 @@
1
- export{c as ValidationFlowPresenter,a as convertToPx,b as toPixelMargins}from'../../../chunks/chunk-R3R62BOL.js';
1
+ import{LabelFieldType as e}from"../../LabelFieldType.js";import{ValidationFlowField as t}from"../../ValidationFlowField.js";import"../../../djinni-types/sdcLabelInternalModuleCapture.js";import{LabelResultUpdateType as n}from"../../LabelResultUpdateType.js";import"./ValidationFlowStateManager.js";import{TextInput as r,TextInputEvents as i}from"../../../ui/atoms/TextInput.js";import{LabelCaptureValidationFlowLayoutEvents as a}from"../../../ui/organisms/LabelCaptureValidationFlowLayout.js";import{ValidationFlowView as o}from"./ValidationFlowView.js";import{KeyboardVisibilityController as s}from"../../../ui/controllers/KeyboardVisibilityController.js";import{FrameSourceState as c,Logger as l,MarginsWithUnit as u,MeasureUnit as d,NumberWithUnit as f,convertToPublicFrameData as p,isCameraFrameSource as m}from"@scandit/web-datacapture-core";import{teals as h}from"@scandit/web-datacapture-core/build/js/private/ui/colors.js";import{safeRequestAnimationFrame as g}from"@scandit/web-datacapture-core/build/js/private/utils/safeRequestAnimationFrame.js";function _(e,t){return e.unit===d.Pixel?e.value:e.value*t}function v(e,t,n){return new u(new f(_(e.left,t),d.Pixel),new f(_(e.top,n),d.Pixel),new f(_(e.right,t),d.Pixel),new f(_(e.bottom,n),d.Pixel))}function y(e){return e?`${e.day} - ${e.month} - ${e.year}`:``}function b(t){let n=``;switch(t.type){case e.Text:n=t.text||``;break;case e.Barcode:var r;n=((r=t.barcode)==null?void 0:r.data)||t.text||``;break;default:var i;n=t.text||((i=t.barcode)==null?void 0:i.data)||y(t.date)||``;break}return n}var x=class{get view(){return this._view}constructor(e,t,n,r,i,a=new o,c=s.create({document:globalThis.document,window:globalThis.window,visualViewport:globalThis.window.visualViewport})){this.stateManager=e,this.settings=t,this.validationFlowHandler=n,this.labelCapture=r,this.feedback=i,this.keyboardController=c,this._isAdjustingScanArea=!1,this.dataCaptureView=null,this.onTextInputScanIconClickHandler=this.onTextInputScanIconClick.bind(this),this.onTextInputClearIconClickHandler=this.onTextInputClearIconClick.bind(this),this.onTextInputFocusHandler=this.onTextInputFocus.bind(this),this.onTextInputBlurHandler=this.onTextInputBlur.bind(this),this.onTextInputKeydownHandler=this.onTextInputKeydown.bind(this),this.onClearAllButtonClickedHandler=this.onClearAllButtonClicked.bind(this),this.onSubmitButtonClickedHandler=this.onSubmitButtonClicked.bind(this),this.onPauseButtonClickedHandler=this.onPauseButtonClicked.bind(this),this.onClickedOutsideListHandler=this.onClickedOutsideList.bind(this),this.onValidationFlowLayoutChangeHandler=this.onValidationFlowLayoutChange.bind(this),this.onKeyboardVisibilityChangedHandler=this.onKeyboardVisibilityChanged.bind(this),this._view=a}updateSettings(e){this.settings=e,this._view.updateButtonText({finishButtonText:e.finishButtonText,restartButtonText:e.restartButtonText,pauseButtonText:e.pauseButtonText})}get camera(){var e;return(e=this.labelCapture)!=null&&e.context&&m(this.labelCapture.context.frameSource)?this.labelCapture.context.frameSource:null}setExternalListener(e){this.externalListener=e}async goToCompleteScan(){this.stateManager.clearPartialScanFieldNames(),await this.validationFlowHandler.startCompleteLabelScan(``);let e=await this.validationFlowHandler.validationFlowFields();e.length>0&&(await this.initializeInputs(e),this.stateManager.isScanning||(this.stateManager.validationFlowHandlerState=2),this.stateManager.setScanResults(e),this.syncInputWithState())}async resumeScan(){await this.validationFlowHandler.resumeScan()}async resumePreviousScanMode(){let e=this.stateManager.getPartialScanFieldNames();e.length>0?await this.validationFlowHandler.startPartialLabelScan(e):await this.validationFlowHandler.resumeScan()}async initializeInputs(e){let t=e.map(e=>{let t=e.getLabelField();return{name:t.name,type:`text`,label:t.isRequired?t.name:`${t.name} (optional)`,loadingText:this.settings.scanningText||`Scanning`,value:t.text??``,required:t.isRequired}});this.stateManager.clearFields(),this.stateManager.registerFields(t.map(e=>e.name)),this._view.initializeInputs(t),this.updateAllScanIconsVisibility()}updateScanIconVisibility(e){let t=this._view.isInputFocused(e),n=this._view.getInputValue(e).trim()===``,r=!this.stateManager.isScanningOrCloudBackup&&(t||n);this._view.updateScanIconVisibility(e,r)}updateAllScanIconsVisibility(){for(let e of this._view.getInputs())this.updateScanIconVisibility(e.name)}updateSubmitButtonState(){let e=this._view.getInputs(),t=!0;for(let n of e)if(n.required&&(n.value.trim()===``||n.invalid)){t=!1;break}this._view.setSubmitButtonDisabled(!t)}async updateFieldValueAndState(e){let t=this._view.getInputByName(e);if(!t)return!1;let n=t.value;if(!t.required&&n.trim()===``){let t=await this.validationFlowHandler.updateFieldValue(e,n);return this.applyInputState(e,`initial`,n),this.updateSubmitButtonState(),t}let r=await this.validationFlowHandler.updateFieldValue(e,n),i=r?`initial`:`error`;return this.applyInputState(e,i,n),this.updateSubmitButtonState(),r}async refocusInputForCorrection(e){this._view.hasInput(e)&&(this._view.isInputActiveElement(e)||this._view.focusInput(e),this.updateScanIconVisibility(e))}async restoreLayout(e){this._view.hasInput(e)&&(this._view.clearInputPlaceholder(e),await this._view.restoreInputsPositions(),this.restoreButtonsBasedOnState(),this.updateAllScanIconsVisibility())}async updateCloudBackupTaskState(e,t){if(t===`cancel`)this.stateManager.cancelCloudBackupForField(e),await this.validationFlowHandler.cancelCloudBackupTaskForField(e);else{this.stateManager.uncancelCloudBackupForField(e),await this.validationFlowHandler.uncancelCloudBackupTaskForField(e);let t=await this.validationFlowHandler.validationFlowFields();this.updateCloudBackupFieldsMap(t),this.syncInputWithState()}}updateCloudBackupFieldsMap(e){this.stateManager.updateCloudBackupFields(e)}getInputStateConfig(e){return{scanningText:this.settings.scanningText,adaptiveScanningText:this.settings.adaptiveScanningText,hintMessage:(e==null?void 0:e.hintMessage)??this.settings.validationErrorText,backgroundColor:(e==null?void 0:e.backgroundColor)??``,scanIconVisible:!this.stateManager.isScanningOrCloudBackup}}applyInputState(e,t,n,r){this.stateManager.setInputState(e,t),this._view.updateInputForState(e,this.stateManager.getInputState(e),n,this.getInputStateConfig(r))}async onFieldsScanned(e){!e||e.length===0||(l.info(`onFieldsScanned`,{fields:e}),this.stateManager.setScanResults(e),this.updateAllScanIconsVisibility(),this.syncInputWithState())}async onLabelIsMissingRequiredField(e){!e||e.length===0||(this.stateManager.setScanResults(e),this.syncInputWithState())}async onScanTimeout(){this.stateManager.markTimeout(),await this.validationFlowHandler.pauseScan()}syncInputWithState(){let e=this.getInputStateConfig(),t=new Set(this.stateManager.getCloudBackupFields());for(let n of this._view.getInputs()){let r=n.value.trim()===``,i,a=n.value,o=this.stateManager.getScanResult(n.name),s=o&&b(o.getLabelField())?o:void 0;if(s){let e=s.getLabelField();a=b(e),i=s.isValid()?`validated`:e.isRequired||a?`error`:`initial`}else i=t.has(n.name)&&r?`cloudBackup`:this.stateManager.isScanning&&r?`scanning`:`initial`;this.stateManager.setInputState(n.name,i),this._view.updateInputForState(n.name,this.stateManager.getInputState(n.name),a,{...e,backgroundColor:``})}this.updateSubmitButtonState(),this.updateAllScanIconsVisibility()}onManualInput(e,t,n){var r;(r=this.externalListener)==null||r.onManualInput(e.getLabelField(),t,n)}restoreButtonsBasedOnState(){switch(!0){case this.stateManager.isScanning:this._view.showScanningButtons();break;case this.stateManager.isPaused:this._view.showValidationButtons();break;default:this._view.hideAllButtons();break}}async onStateChanged(e){switch(this.stateManager.validationFlowHandlerState=e,this.restoreButtonsBasedOnState(),!0){case this.stateManager.isScanning:await this.onScanStateChanged();break;case this.stateManager.isPaused:await this.onPauseStateChanged();break}}async onCloudBackupServiceStarted(){this.stateManager.startCloudBackupService(),this.updateAllScanIconsVisibility(),this._view.showAdaptiveRecognitionOverlay(),this.syncInputWithState()}async onCloudBackupServiceStopped(){this.stateManager.isCloudBackupProcessing&&this.stateManager.stopCloudBackup();let e=await this.validationFlowHandler.validationFlowFields();this.updateCloudBackupFieldsMap(e),this.updateAllScanIconsVisibility(),this._view.hideAdaptiveRecognitionOverlay(),this.syncInputWithState()}async onResultUpdate(e,t,r){var i,a;if((i=this.externalListener)==null||(a=i.onValidationFlowResultUpdate)==null||a.call(i,e,t.map(e=>e.getLabelField()),r&&this.labelCapture.context?p(r,this.labelCapture.context):null),e===n.AsyncStarted){this.updateCloudBackupFieldsMap(t),this.syncInputWithState();return}if(this.stateManager.updateScanResults(t),this.syncInputWithState(),e===n.Sync){for(let e of t){let t=e.getLabelField();if(!this._view.hasInput(t.name)||this.stateManager.isCurrentInputName(t.name)||!e.isValid())continue;let n=b(t);this.applyInputState(t.name,`validated`,n,{backgroundColor:h.teal10}),this.updateScanIconVisibility(t.name)}this.feedback.scan.emit()}}onCloudBackupFeedbackEmit(){this.feedback.adaptiveRecognitionResult.emit()}async standByCamera(){this.camera&&await this.camera.switchToDesiredState(c.Standby)}async activateCamera(){this.camera&&await this.camera.switchToDesiredState(c.On)}async onTextInputScanIconClick(e){let t=e.detail.target.closest(r.tag),n=t==null?void 0:t.name;n&&(this._view.setInputValue(t.name,``),this._view.blurInput(t.name),this.stateManager.clearCurrentInputName(),await this.validationFlowHandler.updateFieldValue(n,``),this.stateManager.setPartialScanFieldNames([n]),await this.validationFlowHandler.startPartialLabelScan([n]))}async onTextInputClearIconClick(e){let t=e.detail.target.closest(r.tag),n=t==null?void 0:t.name;n&&(this.stateManager.deleteScanResult(n),this.applyInputState(n,`initial`,``),await this.validationFlowHandler.pauseScan(),await this.validationFlowHandler.updateFieldValue(n,``))}async onTextInputFocus(e){let t=e.detail.target;if(!t)return;let n=t.name;this.settings.getPlaceholderTextForLabelDefinition(n).then(e=>{this._view.setInputPlaceholder(n,e??``)}),this.stateManager.getCurrentInputName()!==n&&(this.stateManager.setCurrentInputName(n),this._view.setInputBackgroundColor(n,``),this.stateManager.cancelCloudBackupForField(n),this.validationFlowHandler.cancelCloudBackupTaskForField(n),this.validationFlowHandler.pauseScan(),this.applyInputState(n,`initial`,this._view.getInputValue(n)),this.updateSubmitButtonState(),this.updateAllScanIconsVisibility(),await this._view.moveInputToTop(n),this._view.hideAllButtons())}async onTextInputBlur(e){let t=e.detail.target.name;e.preventDefault(),e.stopPropagation(),await this.runBlurValidation(t)}async runBlurValidation(e){if(!e)return!1;let t=this._view.getInputValue(e).trim()!==``,n=!1,r=!1;try{if(t)n=await this.updateFieldValueAndState(e),n?await this.restoreLayout(e):(await this.refocusInputForCorrection(e),r=!0);else return this.stateManager.clearCurrentInputName(),await this.updateCloudBackupTaskState(e,`uncancel`),await this.restoreLayout(e),n}catch(t){l.warn(`Validation flow: Failed to validate field`,{fieldName:e,error:t}),await this.restoreLayout(e)}finally{r||this.stateManager.clearCurrentInputName()}return n}async onTextInputKeydown(e){let{target:t,key:n,originalEvent:r}=e.detail;if(n===`Enter`||n===`Escape`){if(r.preventDefault(),r.stopPropagation(),t.value.trim()===``){t.blur();return}await this.runBlurValidation(t.name)&&t.blur();return}}async onKeyboardVisibilityChanged(e){let t=this.stateManager.getCurrentInputName();t&&(e.detail.isKeyboardVisible?this._view.scrollInputIntoView(t,e):!e.detail.isKeyboardVisible&&this._view.isInputActiveElement(t)&&this._view.blurActiveElement())}async onClearAllButtonClicked(e){this.stateManager.clearScanResults(),this.syncInputWithState(),await this.validationFlowHandler.clearAllFields(),await this.cancelAllCloudBackupTasks(),await this.validationFlowHandler.pauseScan(),await this.goToCompleteScan()}async onSubmitButtonClicked(){let e=await this.validationFlowHandler.onFinishFlowRequested();if(e.type===`result`){var n;let r=e.result.map(e=>t.fromJSONObject(e));(n=this.externalListener)==null||n.onValidationFlowLabelCaptured(r.map(e=>e.getLabelField()))}}async onPauseButtonClicked(e){await this.validationFlowHandler.pauseScan(),this.stateManager.markPausedFromScanningState(),this._view.showValidationButtons()}async onClickedOutsideList(e){if(!this.stateManager.isScanning&&!(this.view.isFocusedElementAnTextInput()||this.stateManager.hasCurrentInputName)&&this.stateManager.isPaused){await this.resumePreviousScanMode();return}}onValidationFlowLayoutChange(e){if(!this.dataCaptureView)return;let{left:t,top:n,right:r,bottom:i}=this._latestViewScanAreaMargins;if(this._isAdjustingScanArea=!0,e.detail.isPanelOnRightSide){let a=e.detail.formWidth+e.detail.safeAreaInsetRight,o=r.value>=a?r:new f(a,d.Pixel),s=e.detail.buttonsHeight+e.detail.safeAreaInsetBottom,c=i.value>=s?i:new f(s,d.Pixel);this.dataCaptureView.scanAreaMargins=new u(t,n,o,c)}else{let a=e.detail.formHeight+e.detail.safeAreaInsetBottom,o=i.value>=a?i:new f(a,d.Pixel);this.dataCaptureView.scanAreaMargins=new u(t,n,r,o)}}willChangeScanAreaMargins(e,t,n){this._isAdjustingScanArea||(this._latestViewScanAreaMargins=n)}didChangeScanAreaMargins(e,t){this._isAdjustingScanArea=!1}async cancelAllCloudBackupTasks(){let e=[],t=await this.validationFlowHandler.validationFlowFields();for(let n of t)e.push(this.updateCloudBackupTaskState(n.getLabelField().name,`cancel`));await Promise.all(e)}async onPauseStateChanged(){this._view.showValidationButtons(),await Promise.all([this.syncInputWithState(),this._view.showBackdrop(),this.standByCamera()])}async onScanStateChanged(){this._view.showScanningButtons(),await Promise.all([this.syncInputWithState(),this._view.hideBackdrop(),this.activateCamera()])}async mount(e){this.dataCaptureView=e,e.setHiddenProperty(`forceScanAreaMarginsToPixels`,!0),this.validationFlowHandler.addListener(this),await this._view.mount(e),this._view.updateButtonText({finishButtonText:this.settings.finishButtonText,restartButtonText:this.settings.restartButtonText,pauseButtonText:this.settings.pauseButtonText}),this.registerEventListeners(),await new Promise(e=>g(()=>e())),e.addListener(this),e.scanAreaMargins=e.scanAreaMargins}async unmount(e){this.stateManager.clearCurrentInputName(),this.stateManager.isCloudBackupProcessing&&this.stateManager.stopCloudBackup(),e.removeListener(this),e.setHiddenProperty(`forceScanAreaMarginsToPixels`,!1),e.scanAreaMargins=this._latestViewScanAreaMargins,this.unregisterEventListeners(),await this._view.unmount(e),this.dataCaptureView=null}registerEventListeners(){this._view.addEventListener(i.Scan,this.onTextInputScanIconClickHandler),this._view.addEventListener(i.Clear,this.onTextInputClearIconClickHandler),this._view.addEventListener(i.Focus,this.onTextInputFocusHandler),this._view.addEventListener(i.Blur,this.onTextInputBlurHandler),this._view.addEventListener(i.Keydown,this.onTextInputKeydownHandler),this._view.addEventListener(a.ClearAllButtonClicked,this.onClearAllButtonClickedHandler),this._view.addSubmitButtonListener(this.onSubmitButtonClickedHandler),this._view.addEventListener(a.PauseButtonClicked,this.onPauseButtonClickedHandler),this._view.addEventListener(a.ClickedOutsideList,this.onClickedOutsideListHandler),this._view.addEventListener(a.ValidationFlowLayoutChange,this.onValidationFlowLayoutChangeHandler),this.keyboardController.connect(),this.keyboardController.addEventListener(`keyboard-visibility-changed`,this.onKeyboardVisibilityChangedHandler)}unregisterEventListeners(){this.keyboardController.removeEventListener(`keyboard-visibility-changed`,this.onKeyboardVisibilityChangedHandler),this.keyboardController.disconnect(),this._view.removeEventListener(i.Scan,this.onTextInputScanIconClickHandler),this._view.removeEventListener(i.Clear,this.onTextInputClearIconClickHandler),this._view.removeEventListener(i.Focus,this.onTextInputFocusHandler),this._view.removeEventListener(i.Blur,this.onTextInputBlurHandler),this._view.removeEventListener(i.Keydown,this.onTextInputKeydownHandler),this._view.removeEventListener(a.ClearAllButtonClicked,this.onClearAllButtonClickedHandler),this._view.removeSubmitButtonListener(this.onSubmitButtonClickedHandler),this._view.removeEventListener(a.PauseButtonClicked,this.onPauseButtonClickedHandler),this._view.removeEventListener(a.ClickedOutsideList,this.onClickedOutsideListHandler),this._view.removeEventListener(a.ValidationFlowLayoutChange,this.onValidationFlowLayoutChangeHandler),this.validationFlowHandler.removeListener(this)}};export{x as ValidationFlowPresenter,_ as convertToPx,v as toPixelMargins};
@@ -1,50 +1,30 @@
1
- import { V as ValidationFlowState } from '../../../sdcLabelInternalModuleCapture-yM8m0vEc.js';
2
- import { ValidationFlowField } from '../../ValidationFlowField.js';
3
- import '../../../djinni-types/sdcBarcodeData.js';
4
- import '../../../djinni-types/sdcSymbologySettings.js';
5
- import '@scandit/web-datacapture-core/build/js/worker/dataCaptureWorkerRelated';
6
- import '../../../djinni-types/sdcCoreInternalSdkArea.js';
7
- import '../../../djinni-types/sdcCoreInternalSdkCommonGeometry.js';
8
- import '../../../djinni-types/sdcCoreCommonGraphic.js';
9
- import '../../../djinni-types/sdcCoreCommonGeometry.js';
10
- import '../../../djinni-types/sdcCoreInternalSdkCommonAsync.js';
11
- import '../../../djinni-types/sdcCoreInternalSdkOcr.js';
12
- import '../../../djinni-types/sdcCoreCommon.js';
13
- import '../../../djinni-types/sdcLabelData.js';
14
- import '../../../djinni-types/sdcLabelInternalModuleData.js';
15
- import '../../../djinni-types/sdcBarcodeInternalSdkData.js';
16
- import '../../../djinni-types/sdcCoreCommonBuffer.js';
17
- import '../../LabelField.js';
18
- import '@scandit/web-datacapture-barcode';
19
- import '@scandit/web-datacapture-core';
20
- import '../../LabelFieldState.js';
21
- import '../../LabelFieldType.js';
22
- import '../../LabelFieldValueType.js';
23
- import '../../LabelDateResult.js';
1
+ import { J as ValidationFlowState } from "../../../sdcLabelInternalModuleCapture-B6-1Wjzn.js";
2
+ import { t as ValidationFlowField } from "../../../ValidationFlowField-DL7FdqPM.js";
24
3
 
4
+ //#region src/main/api/LabelCaptureValidationFlow/private/ValidationFlowStateManager.d.ts
25
5
  /**
26
6
  * Cloud backup processing states (orthogonal to scanning)
27
7
  */
28
8
  declare enum CloudBackupState {
29
- /** No cloud backup processing */
30
- IDLE = "idle",
31
- /** Cloud backup processing in progress */
32
- PROCESSING = "processing"
9
+ /** No cloud backup processing */
10
+ IDLE = "idle",
11
+ /** Cloud backup processing in progress */
12
+ PROCESSING = "processing"
33
13
  }
34
14
  /**
35
15
  * Individual input field states
36
16
  */
37
17
  declare enum InputState {
38
- /** Empty or cleared, no validation */
39
- Initial = "initial",
40
- /** Actively scanning via camera */
41
- Scanning = "scanning",
42
- /** Being processed by cloud backup service */
43
- CloudBackup = "cloudBackup",
44
- /** Successfully validated */
45
- Validated = "validated",
46
- /** Validation failed */
47
- Error = "error"
18
+ /** Empty or cleared, no validation */
19
+ Initial = "initial",
20
+ /** Actively scanning via camera */
21
+ Scanning = "scanning",
22
+ /** Being processed by cloud backup service */
23
+ CloudBackup = "cloudBackup",
24
+ /** Successfully validated */
25
+ Validated = "validated",
26
+ /** Validation failed */
27
+ Error = "error"
48
28
  }
49
29
  /**
50
30
  * Manages validation flow state:
@@ -54,192 +34,192 @@ declare enum InputState {
54
34
  * - Input states: per-field validation states
55
35
  */
56
36
  declare class ValidationFlowStateManager {
57
- private cloudBackupStateMachine;
58
- /** Tracks the overall validation flow state from the native handler */
59
- private validationFlowState;
60
- /** Tracks the name of the currently focused input */
61
- private currentInputName;
62
- /** Tracks which fields are currently being processed by cloud backup */
63
- private cloudBackupFields;
64
- /** Per-field input states */
65
- private fieldStates;
66
- /** Scan results from the last onFieldsScanned event, keyed by field name. CLEARED_SCAN_RESULT indicates a cleared/deleted result. */
67
- private scanResultMap;
68
- /** Whether the current paused state was entered because scanning timed out. */
69
- private hasTimeout_;
70
- /** Whether the current paused state was entered by clicking the pause button from a scanning state. */
71
- private pausedFromScanningState_;
72
- /** Field names targeted by the most recent partial (target) scan; empty when no partial scan is active. */
73
- private partialScanFieldNames;
74
- constructor();
75
- /**
76
- * Current validation flow state from the native handler
77
- */
78
- get validationFlowHandlerState(): ValidationFlowState;
79
- /**
80
- * Set the validation flow state (called when receiving state updates from native handler).
81
- * Leaving PAUSED clears the timeout flag since the resume reason no longer applies.
82
- * Moving into a non-partial scanning state (IN_COMPLETE_SCAN, IDLE, FINISHED) clears the
83
- * recorded partial scan field names so a subsequent standby doesn't restart target mode.
84
- */
85
- set validationFlowHandlerState(state: ValidationFlowState);
86
- /**
87
- * Whether currently in a scanning state (complete or partial scan)
88
- */
89
- get isScanning(): boolean;
90
- /**
91
- * Whether currently scanning OR processing cloud backup
92
- */
93
- get isScanningOrCloudBackup(): boolean;
94
- /**
95
- * Whether in paused state
96
- */
97
- get isPaused(): boolean;
98
- /**
99
- * Whether in finished state
100
- */
101
- get isFinished(): boolean;
102
- /**
103
- * Whether in idle state
104
- */
105
- get isIdle(): boolean;
106
- /**
107
- * Current cloud backup state
108
- */
109
- get cloudBackupState(): CloudBackupState;
110
- /**
111
- * Whether cloud backup is processing
112
- */
113
- get isCloudBackupProcessing(): boolean;
114
- /**
115
- * Whether an input is currently processed
116
- */
117
- get hasCurrentInputName(): boolean;
118
- /**
119
- * Get the name of the currently focused input
120
- */
121
- getCurrentInputName(): string | null;
122
- /**
123
- * Whether the current paused state was entered via a scan timeout.
124
- */
125
- get hasTimeout(): boolean;
126
- /**
127
- * Mark the current pause as resulting from a scan timeout.
128
- */
129
- markTimeout(): void;
130
- /**
131
- * Whether the current paused state was entered by clicking the pause button from a scanning
132
- * state (Initial or Target). Tapping the preview should resume scanning in this case,
133
- * matching the same click-to-resume behaviour as a timeout-induced standby.
134
- */
135
- get isPausedFromScanningState(): boolean;
136
- /**
137
- * Mark the current pause as initiated from the scanning state via the pause button.
138
- */
139
- markPausedFromScanningState(): void;
140
- /**
141
- * Get the field names of the most recent partial (target) scan; empty if none is active.
142
- */
143
- getPartialScanFieldNames(): string[];
144
- /**
145
- * Record the field names for a partial (target) scan so we can restart it after a timeout.
146
- */
147
- setPartialScanFieldNames(fieldNames: string[]): void;
148
- /**
149
- * Clear the recorded partial scan field names (when leaving target mode).
150
- */
151
- clearPartialScanFieldNames(): void;
152
- /**
153
- * Set the focused input by name
154
- */
155
- setCurrentInputName(inputName: string): void;
156
- /**
157
- * Clear the focused input
158
- */
159
- clearCurrentInputName(): void;
160
- /**
161
- * Start cloud backup processing for specific fields.
162
- * Only transitions IDLE → PROCESSING; if already PROCESSING, just updates the field set.
163
- */
164
- startCloudBackup(fieldNames: string[]): void;
165
- /**
166
- * Transition to PROCESSING without specifying fields yet.
167
- * Use this at the start of onCloudBackupServiceStarted so that isCloudBackupProcessing
168
- * is true before updateCloudBackupFields is called with the fetched field list.
169
- */
170
- startCloudBackupService(): void;
171
- /**
172
- * Update the set of fields shown as processing in cloud based on the latest field list.
173
- * Only updates the field set — state machine transitions (start/stop) are the
174
- * responsibility of onCloudBackupServiceStarted / onCloudBackupServiceStopped.
175
- */
176
- updateCloudBackupFields(validationFlowFields: ValidationFlowField[]): void;
177
- /**
178
- * Stop cloud backup processing (all fields)
179
- */
180
- stopCloudBackup(): void;
181
- /**
182
- * Cancel cloud backup for a specific field
183
- */
184
- cancelCloudBackupForField(fieldName: string): void;
185
- /**
186
- * Resume cloud backup for a specific field (uncancel)
187
- */
188
- uncancelCloudBackupForField(fieldName: string): void;
189
- /**
190
- * Check if a specific field is being processed by cloud backup
191
- */
192
- isFieldInCloudBackup(fieldName: string): boolean;
193
- /**
194
- * Get all fields currently in cloud backup
195
- */
196
- getCloudBackupFields(): string[];
197
- /**
198
- * Subscribe to cloud backup state changes
199
- */
200
- onCloudBackupStateChange(listener: (currentState: CloudBackupState, previousState: CloudBackupState, context?: unknown) => void): void;
201
- /**
202
- * Unsubscribe from cloud backup state changes
203
- */
204
- offCloudBackupStateChange(listener: (currentState: CloudBackupState, previousState: CloudBackupState, context?: unknown) => void): void;
205
- /**
206
- * Register all fields at initialization. Does not override existing state.
207
- */
208
- registerFields(fieldNames: string[]): void;
209
- /**
210
- * Remove all field state (call on re-initialization).
211
- */
212
- clearFields(): void;
213
- /**
214
- * Set field state, enforcing the invariant:
215
- * if currentInputName === fieldName and state is Scanning or CloudBackup → use Initial instead.
216
- */
217
- setInputState(fieldName: string, state: InputState): void;
218
- /**
219
- * Read the stored (invariant-enforced) state. Defaults to Initial for unknown fields.
220
- */
221
- getInputState(fieldName: string): InputState;
222
- /**
223
- * True if fieldName === currentInputName (field is focused or in blur-validation flow).
224
- */
225
- isCurrentInputName(fieldName: string): boolean;
226
- /**
227
- * Store the latest batch of scan results from onFieldsScanned.
228
- * All backend results are stored; value-based filtering happens at read time in the presenter.
229
- * Replaces any previously stored results.
230
- */
231
- setScanResults(validationFlowFields: ValidationFlowField[]): void;
232
- updateScanResults(validationFlowFields: ValidationFlowField[]): void;
233
- deleteScanResult(fieldName: string): void;
234
- /**
235
- * Get the stored scan result for a specific field.
236
- */
237
- getScanResult(fieldName: string): ValidationFlowField | undefined;
238
- /**
239
- * Clear all stored scan results (called at the end of syncInputWithState so that
240
- * subsequent syncs without new results start from a clean slate).
241
- */
242
- clearScanResults(): void;
37
+ private cloudBackupStateMachine;
38
+ /** Tracks the overall validation flow state from the native handler */
39
+ private validationFlowState;
40
+ /** Tracks the name of the currently focused input */
41
+ private currentInputName;
42
+ /** Tracks which fields are currently being processed by cloud backup */
43
+ private cloudBackupFields;
44
+ /** Per-field input states */
45
+ private fieldStates;
46
+ /** Scan results from the last onFieldsScanned event, keyed by field name. CLEARED_SCAN_RESULT indicates a cleared/deleted result. */
47
+ private scanResultMap;
48
+ /** Whether the current paused state was entered because scanning timed out. */
49
+ private hasTimeout_;
50
+ /** Whether the current paused state was entered by clicking the pause button from a scanning state. */
51
+ private pausedFromScanningState_;
52
+ /** Field names targeted by the most recent partial (target) scan; empty when no partial scan is active. */
53
+ private partialScanFieldNames;
54
+ constructor();
55
+ /**
56
+ * Current validation flow state from the native handler
57
+ */
58
+ get validationFlowHandlerState(): ValidationFlowState;
59
+ /**
60
+ * Set the validation flow state (called when receiving state updates from native handler).
61
+ * Leaving PAUSED clears the timeout flag since the resume reason no longer applies.
62
+ * Moving into a non-partial scanning state (IN_COMPLETE_SCAN, IDLE, FINISHED) clears the
63
+ * recorded partial scan field names so a subsequent standby doesn't restart target mode.
64
+ */
65
+ set validationFlowHandlerState(state: ValidationFlowState);
66
+ /**
67
+ * Whether currently in a scanning state (complete or partial scan)
68
+ */
69
+ get isScanning(): boolean;
70
+ /**
71
+ * Whether currently scanning OR processing cloud backup
72
+ */
73
+ get isScanningOrCloudBackup(): boolean;
74
+ /**
75
+ * Whether in paused state
76
+ */
77
+ get isPaused(): boolean;
78
+ /**
79
+ * Whether in finished state
80
+ */
81
+ get isFinished(): boolean;
82
+ /**
83
+ * Whether in idle state
84
+ */
85
+ get isIdle(): boolean;
86
+ /**
87
+ * Current cloud backup state
88
+ */
89
+ get cloudBackupState(): CloudBackupState;
90
+ /**
91
+ * Whether cloud backup is processing
92
+ */
93
+ get isCloudBackupProcessing(): boolean;
94
+ /**
95
+ * Whether an input is currently processed
96
+ */
97
+ get hasCurrentInputName(): boolean;
98
+ /**
99
+ * Get the name of the currently focused input
100
+ */
101
+ getCurrentInputName(): string | null;
102
+ /**
103
+ * Whether the current paused state was entered via a scan timeout.
104
+ */
105
+ get hasTimeout(): boolean;
106
+ /**
107
+ * Mark the current pause as resulting from a scan timeout.
108
+ */
109
+ markTimeout(): void;
110
+ /**
111
+ * Whether the current paused state was entered by clicking the pause button from a scanning
112
+ * state (Initial or Target). Tapping the preview should resume scanning in this case,
113
+ * matching the same click-to-resume behaviour as a timeout-induced standby.
114
+ */
115
+ get isPausedFromScanningState(): boolean;
116
+ /**
117
+ * Mark the current pause as initiated from the scanning state via the pause button.
118
+ */
119
+ markPausedFromScanningState(): void;
120
+ /**
121
+ * Get the field names of the most recent partial (target) scan; empty if none is active.
122
+ */
123
+ getPartialScanFieldNames(): string[];
124
+ /**
125
+ * Record the field names for a partial (target) scan so we can restart it after a timeout.
126
+ */
127
+ setPartialScanFieldNames(fieldNames: string[]): void;
128
+ /**
129
+ * Clear the recorded partial scan field names (when leaving target mode).
130
+ */
131
+ clearPartialScanFieldNames(): void;
132
+ /**
133
+ * Set the focused input by name
134
+ */
135
+ setCurrentInputName(inputName: string): void;
136
+ /**
137
+ * Clear the focused input
138
+ */
139
+ clearCurrentInputName(): void;
140
+ /**
141
+ * Start cloud backup processing for specific fields.
142
+ * Only transitions IDLE → PROCESSING; if already PROCESSING, just updates the field set.
143
+ */
144
+ startCloudBackup(fieldNames: string[]): void;
145
+ /**
146
+ * Transition to PROCESSING without specifying fields yet.
147
+ * Use this at the start of onCloudBackupServiceStarted so that isCloudBackupProcessing
148
+ * is true before updateCloudBackupFields is called with the fetched field list.
149
+ */
150
+ startCloudBackupService(): void;
151
+ /**
152
+ * Update the set of fields shown as processing in cloud based on the latest field list.
153
+ * Only updates the field set — state machine transitions (start/stop) are the
154
+ * responsibility of onCloudBackupServiceStarted / onCloudBackupServiceStopped.
155
+ */
156
+ updateCloudBackupFields(validationFlowFields: ValidationFlowField[]): void;
157
+ /**
158
+ * Stop cloud backup processing (all fields)
159
+ */
160
+ stopCloudBackup(): void;
161
+ /**
162
+ * Cancel cloud backup for a specific field
163
+ */
164
+ cancelCloudBackupForField(fieldName: string): void;
165
+ /**
166
+ * Resume cloud backup for a specific field (uncancel)
167
+ */
168
+ uncancelCloudBackupForField(fieldName: string): void;
169
+ /**
170
+ * Check if a specific field is being processed by cloud backup
171
+ */
172
+ isFieldInCloudBackup(fieldName: string): boolean;
173
+ /**
174
+ * Get all fields currently in cloud backup
175
+ */
176
+ getCloudBackupFields(): string[];
177
+ /**
178
+ * Subscribe to cloud backup state changes
179
+ */
180
+ onCloudBackupStateChange(listener: (currentState: CloudBackupState, previousState: CloudBackupState, context?: unknown) => void): void;
181
+ /**
182
+ * Unsubscribe from cloud backup state changes
183
+ */
184
+ offCloudBackupStateChange(listener: (currentState: CloudBackupState, previousState: CloudBackupState, context?: unknown) => void): void;
185
+ /**
186
+ * Register all fields at initialization. Does not override existing state.
187
+ */
188
+ registerFields(fieldNames: string[]): void;
189
+ /**
190
+ * Remove all field state (call on re-initialization).
191
+ */
192
+ clearFields(): void;
193
+ /**
194
+ * Set field state, enforcing the invariant:
195
+ * if currentInputName === fieldName and state is Scanning or CloudBackup → use Initial instead.
196
+ */
197
+ setInputState(fieldName: string, state: InputState): void;
198
+ /**
199
+ * Read the stored (invariant-enforced) state. Defaults to Initial for unknown fields.
200
+ */
201
+ getInputState(fieldName: string): InputState;
202
+ /**
203
+ * True if fieldName === currentInputName (field is focused or in blur-validation flow).
204
+ */
205
+ isCurrentInputName(fieldName: string): boolean;
206
+ /**
207
+ * Store the latest batch of scan results from onFieldsScanned.
208
+ * All backend results are stored; value-based filtering happens at read time in the presenter.
209
+ * Replaces any previously stored results.
210
+ */
211
+ setScanResults(validationFlowFields: ValidationFlowField[]): void;
212
+ updateScanResults(validationFlowFields: ValidationFlowField[]): void;
213
+ deleteScanResult(fieldName: string): void;
214
+ /**
215
+ * Get the stored scan result for a specific field.
216
+ */
217
+ getScanResult(fieldName: string): ValidationFlowField | undefined;
218
+ /**
219
+ * Clear all stored scan results (called at the end of syncInputWithState so that
220
+ * subsequent syncs without new results start from a clean slate).
221
+ */
222
+ clearScanResults(): void;
243
223
  }
244
-
245
- export { CloudBackupState, InputState, ValidationFlowStateManager };
224
+ //#endregion
225
+ export { CloudBackupState, InputState, ValidationFlowStateManager };
@@ -1 +1 @@
1
- export{a as CloudBackupState,b as InputState,c as ValidationFlowStateManager}from'../../../chunks/chunk-LLBGDMYR.js';
1
+ import"../../../djinni-types/sdcLabelInternalModuleCapture.js";import{AsyncStateMachine as e}from"@scandit/web-datacapture-core/build/js/private/utils/AsyncStateMachine.js";let t=function(e){return e.IDLE=`idle`,e.PROCESSING=`processing`,e}({}),n=function(e){return e.Initial=`initial`,e.Scanning=`scanning`,e.CloudBackup=`cloudBackup`,e.Validated=`validated`,e.Error=`error`,e}({});var r=class{constructor(){this.validationFlowState=0,this.currentInputName=null,this.cloudBackupFields=new Set,this.fieldStates=new Map,this.scanResultMap=new Map,this.hasTimeout_=!1,this.pausedFromScanningState_=!1,this.partialScanFieldNames=[],this.cloudBackupStateMachine=new e(`idle`,[{from:`idle`,to:`processing`},{from:`processing`,to:`idle`}])}get validationFlowHandlerState(){return this.validationFlowState}set validationFlowHandlerState(e){let t=this.validationFlowState===3;this.validationFlowState=e,t&&e!==3&&(this.hasTimeout_=!1,this.pausedFromScanningState_=!1),(e===2||e===0||e===4)&&(this.partialScanFieldNames=[])}get isScanning(){return this.validationFlowState===2||this.validationFlowState===1}get isScanningOrCloudBackup(){return this.isCloudBackupProcessing||this.isScanning}get isPaused(){return this.validationFlowState===3}get isFinished(){return this.validationFlowState===4}get isIdle(){return this.validationFlowState===0}get cloudBackupState(){return this.cloudBackupStateMachine.currentState}get isCloudBackupProcessing(){return this.cloudBackupStateMachine.currentState===`processing`}get hasCurrentInputName(){return this.currentInputName!==null}getCurrentInputName(){return this.currentInputName}get hasTimeout(){return this.hasTimeout_}markTimeout(){this.hasTimeout_=!0}get isPausedFromScanningState(){return this.pausedFromScanningState_}markPausedFromScanningState(){this.pausedFromScanningState_=!0}getPartialScanFieldNames(){return[...this.partialScanFieldNames]}setPartialScanFieldNames(e){this.partialScanFieldNames=[...e]}clearPartialScanFieldNames(){this.partialScanFieldNames=[]}setCurrentInputName(e){this.currentInputName=e}clearCurrentInputName(){this.currentInputName=null}startCloudBackup(e){this.cloudBackupFields=new Set(e),this.cloudBackupStateMachine.currentState===`idle`&&this.cloudBackupStateMachine.transitionTo(`processing`)}startCloudBackupService(){this.cloudBackupStateMachine.currentState===`idle`&&this.cloudBackupStateMachine.transitionTo(`processing`)}updateCloudBackupFields(e){this.cloudBackupFields=new Set(e.filter(e=>e.isProcessingInCloud()).map(e=>e.getLabelField().name))}stopCloudBackup(){this.cloudBackupFields.clear(),this.cloudBackupStateMachine.transitionTo(`idle`)}cancelCloudBackupForField(e){this.cloudBackupFields.delete(e),this.cloudBackupFields.size===0&&this.cloudBackupStateMachine.currentState===`processing`&&this.cloudBackupStateMachine.transitionTo(`idle`)}uncancelCloudBackupForField(e){this.cloudBackupFields.add(e),this.cloudBackupStateMachine.currentState===`idle`&&this.cloudBackupStateMachine.transitionTo(`processing`)}isFieldInCloudBackup(e){return this.cloudBackupFields.has(e)}getCloudBackupFields(){return Array.from(this.cloudBackupFields)}onCloudBackupStateChange(e){this.cloudBackupStateMachine.addListener(e)}offCloudBackupStateChange(e){this.cloudBackupStateMachine.removeListener(e)}registerFields(e){for(let t of e)this.fieldStates.has(t)||this.fieldStates.set(t,`initial`)}clearFields(){this.fieldStates.clear()}setInputState(e,t){let n=this.currentInputName===e&&(t===`scanning`||t===`cloudBackup`)?`initial`:t;this.fieldStates.set(e,n)}getInputState(e){return this.fieldStates.get(e)??`initial`}isCurrentInputName(e){return this.currentInputName===e}setScanResults(e){this.scanResultMap.clear();for(let t of e)this.scanResultMap.set(t.getLabelField().name,t)}updateScanResults(e){for(let t of e)this.scanResultMap.set(t.getLabelField().name,t)}deleteScanResult(e){this.scanResultMap.delete(e)}getScanResult(e){return this.scanResultMap.get(e)}clearScanResults(){this.scanResultMap.clear()}};export{t as CloudBackupState,n as InputState,r as ValidationFlowStateManager};