@os1-platform/dispatch-mobile 2.1.13 → 2.1.15

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 (413) hide show
  1. package/android/.gradle/7.5/checksums/checksums.lock +0 -0
  2. package/android/.gradle/7.5/checksums/md5-checksums.bin +0 -0
  3. package/android/.gradle/7.5/checksums/sha1-checksums.bin +0 -0
  4. package/android/.gradle/7.5/dependencies-accessors/dependencies-accessors.lock +0 -0
  5. package/android/.gradle/7.5/dependencies-accessors/gc.properties +0 -0
  6. package/android/.gradle/7.5/executionHistory/executionHistory.lock +0 -0
  7. package/android/.gradle/7.5/fileChanges/last-build.bin +0 -0
  8. package/android/.gradle/7.5/fileHashes/fileHashes.bin +0 -0
  9. package/android/.gradle/7.5/fileHashes/fileHashes.lock +0 -0
  10. package/android/.gradle/7.5/gc.properties +0 -0
  11. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  12. package/android/.gradle/buildOutputCleanup/cache.properties +2 -0
  13. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  14. package/android/.gradle/config.properties +2 -0
  15. package/android/.idea/compiler.xml +6 -0
  16. package/android/.idea/gradle.xml +8 -3
  17. package/android/.idea/kotlinc.xml +6 -0
  18. package/android/.idea/migrations.xml +10 -0
  19. package/android/.idea/misc.xml +1 -1
  20. package/android/.idea/other.xml +263 -0
  21. package/android/build.gradle +1 -1
  22. package/android/gradle.properties +4 -4
  23. package/android/src/main/AndroidManifest.xml +10 -6
  24. package/android/src/main/java/com/dispatchsdk/sync/SyncManagerService.kt +7 -1
  25. package/lib/commonjs/@types/assets/index.d.js.map +1 -1
  26. package/lib/commonjs/analytics/firebase/FirebaseLogging.js.map +1 -1
  27. package/lib/commonjs/analytics/sentry/SentryAnalyticsSingleton.js.map +1 -1
  28. package/lib/commonjs/analytics/sentry/SentryAnalyticsUtils.js.map +1 -1
  29. package/lib/commonjs/analytics/sentry/SentryModels.js.map +1 -1
  30. package/lib/commonjs/analytics/sentry/SentrySdkConstants.js.map +1 -1
  31. package/lib/commonjs/components/dispatch/DispatchExecNavigator.js.map +1 -1
  32. package/lib/commonjs/components/executiontasks/CompletedWFSchema.js.map +1 -1
  33. package/lib/commonjs/components/executiontasks/ExecutionTasksIndex.js.map +1 -1
  34. package/lib/commonjs/components/executiontasks/cancellation/CancelET.js.map +1 -1
  35. package/lib/commonjs/components/executiontasks/cancellation/CancellationSchema.js.map +1 -1
  36. package/lib/commonjs/components/executiontasks/captureInput/CaptureInputSchema.js.map +1 -1
  37. package/lib/commonjs/components/executiontasks/captureInput/CaptureText.js.map +1 -1
  38. package/lib/commonjs/components/executiontasks/captureInput/utils.js.map +1 -1
  39. package/lib/commonjs/components/executiontasks/deliver/DeliverET.js.map +1 -1
  40. package/lib/commonjs/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
  41. package/lib/commonjs/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
  42. package/lib/commonjs/components/executiontasks/display/DisplayModalET.js.map +1 -1
  43. package/lib/commonjs/components/executiontasks/display/DisplaySchema.js.map +1 -1
  44. package/lib/commonjs/components/executiontasks/doodle/SignatureET.js.map +1 -1
  45. package/lib/commonjs/components/executiontasks/doodle/SignatureSchema.js.map +1 -1
  46. package/lib/commonjs/components/executiontasks/dropCash/DropCashET.js.map +1 -1
  47. package/lib/commonjs/components/executiontasks/dropCash/DropCashSchema.js.map +1 -1
  48. package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
  49. package/lib/commonjs/components/executiontasks/forms/FormGenerator.js.map +1 -1
  50. package/lib/commonjs/components/executiontasks/forms/FormSchema.js.map +1 -1
  51. package/lib/commonjs/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
  52. package/lib/commonjs/components/executiontasks/forms/widgets/DropdownWidget.js.map +1 -1
  53. package/lib/commonjs/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js.map +1 -1
  54. package/lib/commonjs/components/executiontasks/forms/widgets/TimeRangeSelector.js.map +1 -1
  55. package/lib/commonjs/components/executiontasks/httpRequest/HttpEtUtils.js.map +1 -1
  56. package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestET.js.map +1 -1
  57. package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestETSchema.js.map +1 -1
  58. package/lib/commonjs/components/executiontasks/imageCapture/CaptureSchema.js.map +1 -1
  59. package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
  60. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +3 -0
  61. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  62. package/lib/commonjs/components/executiontasks/payments/PaymentStyles.js.map +1 -1
  63. package/lib/commonjs/components/executiontasks/payments/PaymentUtils.js.map +1 -1
  64. package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
  65. package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentSchema.js.map +1 -1
  66. package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
  67. package/lib/commonjs/components/executiontasks/payments/init/InitPaymentSchema.js.map +1 -1
  68. package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
  69. package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentSchema.js.map +1 -1
  70. package/lib/commonjs/components/executiontasks/pickup/PickpSchema.js.map +1 -1
  71. package/lib/commonjs/components/executiontasks/pickup/PickupET.js.map +1 -1
  72. package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js.map +1 -1
  73. package/lib/commonjs/components/executiontasks/scan/ScanET.js +9 -6
  74. package/lib/commonjs/components/executiontasks/scan/ScanET.js.map +1 -1
  75. package/lib/commonjs/components/executiontasks/scan/ScanSchema.js.map +1 -1
  76. package/lib/commonjs/components/executiontasks/scan/constants.js.map +1 -1
  77. package/lib/commonjs/components/executiontasks/scan/interfaces.js.map +1 -1
  78. package/lib/commonjs/components/executiontasks/scan/modalConstant.js.map +1 -1
  79. package/lib/commonjs/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
  80. package/lib/commonjs/components/executiontasks/scan/sub_components/DropDownUtils.js.map +1 -1
  81. package/lib/commonjs/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
  82. package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js +66 -27
  83. package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
  84. package/lib/commonjs/components/executiontasks/scan/utils.js +4 -2
  85. package/lib/commonjs/components/executiontasks/scan/utils.js.map +1 -1
  86. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
  87. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPSchema.js.map +1 -1
  88. package/lib/commonjs/components/executiontasks/validateOTP/constants.js.map +1 -1
  89. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
  90. package/lib/commonjs/components/executiontasks/validateOTP/utils.js.map +1 -1
  91. package/lib/commonjs/components/executiontasks/verifyInput/VerifyInputSchema.js.map +1 -1
  92. package/lib/commonjs/components/executiontasks/verifyLocation/GeofenceUtils.js.map +1 -1
  93. package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocSchema.js.map +1 -1
  94. package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocationET.js.map +1 -1
  95. package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpET.js.map +1 -1
  96. package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpSchema.js.map +1 -1
  97. package/lib/commonjs/components/utils/index.js.map +1 -1
  98. package/lib/commonjs/components/widgets/AlertDisplay.js.map +1 -1
  99. package/lib/commonjs/components/widgets/CancelOrderDialog.js.map +1 -1
  100. package/lib/commonjs/components/widgets/Card.js.map +1 -1
  101. package/lib/commonjs/components/widgets/GoBackModal.js.map +1 -1
  102. package/lib/commonjs/components/widgets/IconButton.js.map +1 -1
  103. package/lib/commonjs/components/widgets/ModalWidget.js.map +1 -1
  104. package/lib/commonjs/components/widgets/ProgressDialog.js.map +1 -1
  105. package/lib/commonjs/components/widgets/SearchBar.js.map +1 -1
  106. package/lib/commonjs/components/widgets/SnackBarCustom.js.map +1 -1
  107. package/lib/commonjs/components/widgets/SplitTextInput.js.map +1 -1
  108. package/lib/commonjs/components/widgets/TabsComponent.js.map +1 -1
  109. package/lib/commonjs/components/widgets/Toaster.js.map +1 -1
  110. package/lib/commonjs/config/DispatchSDKConfig.js.map +1 -1
  111. package/lib/commonjs/constants/apiConstants.js.map +1 -1
  112. package/lib/commonjs/constants/constants.js.map +1 -1
  113. package/lib/commonjs/constants/statuscode.js.map +1 -1
  114. package/lib/commonjs/errors/BaseError.js.map +1 -1
  115. package/lib/commonjs/errors/ErrorCodes.js.map +1 -1
  116. package/lib/commonjs/events/EventDispatcher.js.map +1 -1
  117. package/lib/commonjs/events/EventListener.js.map +1 -1
  118. package/lib/commonjs/events/constants.js.map +1 -1
  119. package/lib/commonjs/events/index.js.map +1 -1
  120. package/lib/commonjs/events/interface.js.map +1 -1
  121. package/lib/commonjs/icons/ScanIcon.js.map +1 -1
  122. package/lib/commonjs/icons/file.js.map +1 -1
  123. package/lib/commonjs/icons/interface.js.map +1 -1
  124. package/lib/commonjs/index.js.map +1 -1
  125. package/lib/commonjs/locale/Str.js.map +1 -1
  126. package/lib/commonjs/locale/i18n.js.map +1 -1
  127. package/lib/commonjs/locale/util.js.map +1 -1
  128. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js.map +1 -1
  129. package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
  130. package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
  131. package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
  132. package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
  133. package/lib/commonjs/manager/jobRemoval/JobRemovalManager.js.map +1 -1
  134. package/lib/commonjs/manager/location/LocationManager.js.map +1 -1
  135. package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
  136. package/lib/commonjs/manager/sdk/DispatchSdkCache.js.map +1 -1
  137. package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -1
  138. package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
  139. package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
  140. package/lib/commonjs/manager/syncmanager/NativeSyncManager.js.map +1 -1
  141. package/lib/commonjs/manager/syncmanager/constants.js.map +1 -1
  142. package/lib/commonjs/manager/syncmanager/database.js.map +1 -1
  143. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  144. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +9 -3
  145. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
  146. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +0 -1
  147. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  148. package/lib/commonjs/manager/syncmanager/document/models.js.map +1 -1
  149. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  150. package/lib/commonjs/manager/syncmanager/events/EventsGraphQLClient.js.map +1 -1
  151. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  152. package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
  153. package/lib/commonjs/models/DispatchModels.js.map +1 -1
  154. package/lib/commonjs/models/ReasonCodes.js.map +1 -1
  155. package/lib/commonjs/models/auth.js.map +1 -1
  156. package/lib/commonjs/models/execTasks/ETBaseModels.js.map +1 -1
  157. package/lib/commonjs/models/execTasks/ETConfig.js.map +1 -1
  158. package/lib/commonjs/models/execution.js.map +1 -1
  159. package/lib/commonjs/models/fcm.js.map +1 -1
  160. package/lib/commonjs/models/sdk.js.map +1 -1
  161. package/lib/commonjs/native/signature/SignatureCapture.js.map +1 -1
  162. package/lib/commonjs/network/GraphQLClient.js.map +1 -1
  163. package/lib/commonjs/network/NetworkClient.js.map +1 -1
  164. package/lib/commonjs/network/NetworkUtils.js.map +1 -1
  165. package/lib/commonjs/network/Queries.js.map +1 -1
  166. package/lib/commonjs/network/client.js.map +1 -1
  167. package/lib/commonjs/res/strings.js.map +1 -1
  168. package/lib/commonjs/resources/Login.js.map +1 -1
  169. package/lib/commonjs/resources/network.js.map +1 -1
  170. package/lib/commonjs/styles/SdkColors.js.map +1 -1
  171. package/lib/commonjs/styles/executionTasks/CommonStyles.js.map +1 -1
  172. package/lib/commonjs/ui/screens/CancellationScreen.js.map +1 -1
  173. package/lib/commonjs/ui/screens/CaptureInputScreen.js.map +1 -1
  174. package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js.map +1 -1
  175. package/lib/commonjs/ui/screens/DeliverScreen.js +9 -1
  176. package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
  177. package/lib/commonjs/ui/screens/DisplayScreen.js.map +1 -1
  178. package/lib/commonjs/ui/screens/DoodleScreen.js.map +1 -1
  179. package/lib/commonjs/ui/screens/DropCashScreen.js.map +1 -1
  180. package/lib/commonjs/ui/screens/ETScreensIndex.js.map +1 -1
  181. package/lib/commonjs/ui/screens/FormsScreen.js +9 -1
  182. package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
  183. package/lib/commonjs/ui/screens/GeofenceScreen.js.map +1 -1
  184. package/lib/commonjs/ui/screens/HttpRequestScreen.js.map +1 -1
  185. package/lib/commonjs/ui/screens/ImageCaptureScreen.js.map +1 -1
  186. package/lib/commonjs/ui/screens/PaymentScreen.js.map +1 -1
  187. package/lib/commonjs/ui/screens/PickupScreen.js.map +1 -1
  188. package/lib/commonjs/ui/screens/ScanScreen.js.map +1 -1
  189. package/lib/commonjs/ui/screens/StartWorkFlowScreen.js.map +1 -1
  190. package/lib/commonjs/ui/screens/ValidateOTPScreen.js.map +1 -1
  191. package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js.map +1 -1
  192. package/lib/commonjs/ui/uiConfig/RouteParams.js.map +1 -1
  193. package/lib/commonjs/utils/ApiUtils.js.map +1 -1
  194. package/lib/commonjs/utils/Constants.js +9 -0
  195. package/lib/commonjs/utils/Constants.js.map +1 -0
  196. package/lib/commonjs/utils/Enums.js +12 -0
  197. package/lib/commonjs/utils/Enums.js.map +1 -0
  198. package/lib/commonjs/utils/ExecTaskUtils.js.map +1 -1
  199. package/lib/commonjs/utils/Logger.js.map +1 -1
  200. package/lib/commonjs/utils/NetworkUtil.js.map +1 -1
  201. package/lib/commonjs/utils/SdkUtils.js.map +1 -1
  202. package/lib/commonjs/utils/SyncManagerUtils.js.map +1 -1
  203. package/lib/commonjs/utils/fcm/FCM.js.map +1 -1
  204. package/lib/commonjs/utils/fcm/FcmUtils.js.map +1 -1
  205. package/lib/commonjs/utils/helper.js.map +1 -1
  206. package/lib/commonjs/utils/hooks/useModal.js.map +1 -1
  207. package/lib/commonjs/utils/hooks/useTimer.js.map +1 -1
  208. package/lib/commonjs/utils/loginHelper.js.map +1 -1
  209. package/lib/commonjs/utils/storage.js.map +1 -1
  210. package/lib/commonjs/utils/utils.js.map +1 -1
  211. package/lib/module/@types/assets/index.d.js.map +1 -1
  212. package/lib/module/analytics/firebase/FirebaseLogging.js.map +1 -1
  213. package/lib/module/analytics/sentry/SentryAnalyticsSingleton.js.map +1 -1
  214. package/lib/module/analytics/sentry/SentryAnalyticsUtils.js.map +1 -1
  215. package/lib/module/analytics/sentry/SentryModels.js.map +1 -1
  216. package/lib/module/analytics/sentry/SentrySdkConstants.js.map +1 -1
  217. package/lib/module/components/dispatch/DispatchExecNavigator.js.map +1 -1
  218. package/lib/module/components/executiontasks/CompletedWFSchema.js.map +1 -1
  219. package/lib/module/components/executiontasks/ExecutionTasksIndex.js.map +1 -1
  220. package/lib/module/components/executiontasks/cancellation/CancelET.js.map +1 -1
  221. package/lib/module/components/executiontasks/cancellation/CancellationSchema.js.map +1 -1
  222. package/lib/module/components/executiontasks/captureInput/CaptureInputSchema.js.map +1 -1
  223. package/lib/module/components/executiontasks/captureInput/CaptureText.js.map +1 -1
  224. package/lib/module/components/executiontasks/captureInput/utils.js.map +1 -1
  225. package/lib/module/components/executiontasks/deliver/DeliverET.js.map +1 -1
  226. package/lib/module/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
  227. package/lib/module/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
  228. package/lib/module/components/executiontasks/display/DisplayModalET.js.map +1 -1
  229. package/lib/module/components/executiontasks/display/DisplaySchema.js.map +1 -1
  230. package/lib/module/components/executiontasks/doodle/SignatureET.js.map +1 -1
  231. package/lib/module/components/executiontasks/doodle/SignatureSchema.js.map +1 -1
  232. package/lib/module/components/executiontasks/dropCash/DropCashET.js.map +1 -1
  233. package/lib/module/components/executiontasks/dropCash/DropCashSchema.js.map +1 -1
  234. package/lib/module/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
  235. package/lib/module/components/executiontasks/forms/FormGenerator.js.map +1 -1
  236. package/lib/module/components/executiontasks/forms/FormSchema.js.map +1 -1
  237. package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
  238. package/lib/module/components/executiontasks/forms/widgets/DropdownWidget.js.map +1 -1
  239. package/lib/module/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js.map +1 -1
  240. package/lib/module/components/executiontasks/forms/widgets/TimeRangeSelector.js.map +1 -1
  241. package/lib/module/components/executiontasks/httpRequest/HttpEtUtils.js.map +1 -1
  242. package/lib/module/components/executiontasks/httpRequest/HttpRequestET.js.map +1 -1
  243. package/lib/module/components/executiontasks/httpRequest/HttpRequestETSchema.js.map +1 -1
  244. package/lib/module/components/executiontasks/imageCapture/CaptureSchema.js.map +1 -1
  245. package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
  246. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +3 -0
  247. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  248. package/lib/module/components/executiontasks/payments/PaymentStyles.js.map +1 -1
  249. package/lib/module/components/executiontasks/payments/PaymentUtils.js.map +1 -1
  250. package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
  251. package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentSchema.js.map +1 -1
  252. package/lib/module/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
  253. package/lib/module/components/executiontasks/payments/init/InitPaymentSchema.js.map +1 -1
  254. package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
  255. package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentSchema.js.map +1 -1
  256. package/lib/module/components/executiontasks/pickup/PickpSchema.js.map +1 -1
  257. package/lib/module/components/executiontasks/pickup/PickupET.js.map +1 -1
  258. package/lib/module/components/executiontasks/pickup/SLPickupET.js.map +1 -1
  259. package/lib/module/components/executiontasks/scan/ScanET.js +9 -6
  260. package/lib/module/components/executiontasks/scan/ScanET.js.map +1 -1
  261. package/lib/module/components/executiontasks/scan/ScanSchema.js.map +1 -1
  262. package/lib/module/components/executiontasks/scan/constants.js.map +1 -1
  263. package/lib/module/components/executiontasks/scan/interfaces.js.map +1 -1
  264. package/lib/module/components/executiontasks/scan/modalConstant.js.map +1 -1
  265. package/lib/module/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
  266. package/lib/module/components/executiontasks/scan/sub_components/DropDownUtils.js.map +1 -1
  267. package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
  268. package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js +67 -28
  269. package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
  270. package/lib/module/components/executiontasks/scan/utils.js +4 -2
  271. package/lib/module/components/executiontasks/scan/utils.js.map +1 -1
  272. package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
  273. package/lib/module/components/executiontasks/validateOTP/ValidateOTPSchema.js.map +1 -1
  274. package/lib/module/components/executiontasks/validateOTP/constants.js.map +1 -1
  275. package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
  276. package/lib/module/components/executiontasks/validateOTP/utils.js.map +1 -1
  277. package/lib/module/components/executiontasks/verifyInput/VerifyInputSchema.js.map +1 -1
  278. package/lib/module/components/executiontasks/verifyLocation/GeofenceUtils.js.map +1 -1
  279. package/lib/module/components/executiontasks/verifyLocation/VerifyLocSchema.js.map +1 -1
  280. package/lib/module/components/executiontasks/verifyLocation/VerifyLocationET.js.map +1 -1
  281. package/lib/module/components/executiontasks/verifyOtp/VerifyOtpET.js.map +1 -1
  282. package/lib/module/components/executiontasks/verifyOtp/VerifyOtpSchema.js.map +1 -1
  283. package/lib/module/components/utils/index.js.map +1 -1
  284. package/lib/module/components/widgets/AlertDisplay.js.map +1 -1
  285. package/lib/module/components/widgets/CancelOrderDialog.js.map +1 -1
  286. package/lib/module/components/widgets/Card.js.map +1 -1
  287. package/lib/module/components/widgets/GoBackModal.js.map +1 -1
  288. package/lib/module/components/widgets/IconButton.js.map +1 -1
  289. package/lib/module/components/widgets/ModalWidget.js.map +1 -1
  290. package/lib/module/components/widgets/ProgressDialog.js.map +1 -1
  291. package/lib/module/components/widgets/SearchBar.js.map +1 -1
  292. package/lib/module/components/widgets/SnackBarCustom.js.map +1 -1
  293. package/lib/module/components/widgets/SplitTextInput.js.map +1 -1
  294. package/lib/module/components/widgets/TabsComponent.js.map +1 -1
  295. package/lib/module/components/widgets/Toaster.js.map +1 -1
  296. package/lib/module/config/DispatchSDKConfig.js.map +1 -1
  297. package/lib/module/constants/apiConstants.js.map +1 -1
  298. package/lib/module/constants/constants.js.map +1 -1
  299. package/lib/module/constants/statuscode.js.map +1 -1
  300. package/lib/module/errors/BaseError.js.map +1 -1
  301. package/lib/module/errors/ErrorCodes.js.map +1 -1
  302. package/lib/module/events/EventDispatcher.js.map +1 -1
  303. package/lib/module/events/EventListener.js.map +1 -1
  304. package/lib/module/events/constants.js.map +1 -1
  305. package/lib/module/events/index.js.map +1 -1
  306. package/lib/module/events/interface.js.map +1 -1
  307. package/lib/module/icons/ScanIcon.js.map +1 -1
  308. package/lib/module/icons/file.js.map +1 -1
  309. package/lib/module/icons/interface.js.map +1 -1
  310. package/lib/module/index.js.map +1 -1
  311. package/lib/module/locale/Str.js.map +1 -1
  312. package/lib/module/locale/i18n.js.map +1 -1
  313. package/lib/module/locale/util.js.map +1 -1
  314. package/lib/module/manager/dispatch/DispatchStateContainer.js.map +1 -1
  315. package/lib/module/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
  316. package/lib/module/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
  317. package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
  318. package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
  319. package/lib/module/manager/jobRemoval/JobRemovalManager.js.map +1 -1
  320. package/lib/module/manager/location/LocationManager.js.map +1 -1
  321. package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
  322. package/lib/module/manager/sdk/DispatchSdkCache.js.map +1 -1
  323. package/lib/module/manager/sdk/callbacksHandler.js.map +1 -1
  324. package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
  325. package/lib/module/manager/syncmanager/DBConfig.js.map +1 -1
  326. package/lib/module/manager/syncmanager/NativeSyncManager.js.map +1 -1
  327. package/lib/module/manager/syncmanager/constants.js.map +1 -1
  328. package/lib/module/manager/syncmanager/database.js.map +1 -1
  329. package/lib/module/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  330. package/lib/module/manager/syncmanager/document/DocumentManager.js +9 -3
  331. package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
  332. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +0 -1
  333. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  334. package/lib/module/manager/syncmanager/document/models.js.map +1 -1
  335. package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  336. package/lib/module/manager/syncmanager/events/EventsGraphQLClient.js.map +1 -1
  337. package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  338. package/lib/module/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
  339. package/lib/module/models/DispatchModels.js.map +1 -1
  340. package/lib/module/models/ReasonCodes.js.map +1 -1
  341. package/lib/module/models/auth.js.map +1 -1
  342. package/lib/module/models/execTasks/ETBaseModels.js.map +1 -1
  343. package/lib/module/models/execTasks/ETConfig.js.map +1 -1
  344. package/lib/module/models/execution.js.map +1 -1
  345. package/lib/module/models/fcm.js.map +1 -1
  346. package/lib/module/models/sdk.js.map +1 -1
  347. package/lib/module/native/signature/SignatureCapture.js.map +1 -1
  348. package/lib/module/network/GraphQLClient.js.map +1 -1
  349. package/lib/module/network/NetworkClient.js.map +1 -1
  350. package/lib/module/network/NetworkUtils.js.map +1 -1
  351. package/lib/module/network/Queries.js.map +1 -1
  352. package/lib/module/network/client.js.map +1 -1
  353. package/lib/module/res/strings.js.map +1 -1
  354. package/lib/module/resources/Login.js.map +1 -1
  355. package/lib/module/resources/network.js.map +1 -1
  356. package/lib/module/styles/SdkColors.js.map +1 -1
  357. package/lib/module/styles/executionTasks/CommonStyles.js.map +1 -1
  358. package/lib/module/ui/screens/CancellationScreen.js.map +1 -1
  359. package/lib/module/ui/screens/CaptureInputScreen.js.map +1 -1
  360. package/lib/module/ui/screens/CompleteObjectiveScreen.js.map +1 -1
  361. package/lib/module/ui/screens/DeliverScreen.js +9 -1
  362. package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
  363. package/lib/module/ui/screens/DisplayScreen.js.map +1 -1
  364. package/lib/module/ui/screens/DoodleScreen.js.map +1 -1
  365. package/lib/module/ui/screens/DropCashScreen.js.map +1 -1
  366. package/lib/module/ui/screens/ETScreensIndex.js.map +1 -1
  367. package/lib/module/ui/screens/FormsScreen.js +9 -1
  368. package/lib/module/ui/screens/FormsScreen.js.map +1 -1
  369. package/lib/module/ui/screens/GeofenceScreen.js.map +1 -1
  370. package/lib/module/ui/screens/HttpRequestScreen.js.map +1 -1
  371. package/lib/module/ui/screens/ImageCaptureScreen.js.map +1 -1
  372. package/lib/module/ui/screens/PaymentScreen.js.map +1 -1
  373. package/lib/module/ui/screens/PickupScreen.js.map +1 -1
  374. package/lib/module/ui/screens/ScanScreen.js.map +1 -1
  375. package/lib/module/ui/screens/StartWorkFlowScreen.js.map +1 -1
  376. package/lib/module/ui/screens/ValidateOTPScreen.js.map +1 -1
  377. package/lib/module/ui/screens/WithBaseDispatchScreen.js.map +1 -1
  378. package/lib/module/ui/uiConfig/RouteParams.js.map +1 -1
  379. package/lib/module/utils/ApiUtils.js.map +1 -1
  380. package/lib/module/utils/Constants.js +3 -0
  381. package/lib/module/utils/Constants.js.map +1 -0
  382. package/lib/module/utils/Enums.js +6 -0
  383. package/lib/module/utils/Enums.js.map +1 -0
  384. package/lib/module/utils/ExecTaskUtils.js.map +1 -1
  385. package/lib/module/utils/Logger.js.map +1 -1
  386. package/lib/module/utils/NetworkUtil.js.map +1 -1
  387. package/lib/module/utils/SdkUtils.js.map +1 -1
  388. package/lib/module/utils/SyncManagerUtils.js.map +1 -1
  389. package/lib/module/utils/fcm/FCM.js.map +1 -1
  390. package/lib/module/utils/fcm/FcmUtils.js.map +1 -1
  391. package/lib/module/utils/helper.js.map +1 -1
  392. package/lib/module/utils/hooks/useModal.js.map +1 -1
  393. package/lib/module/utils/hooks/useTimer.js.map +1 -1
  394. package/lib/module/utils/loginHelper.js.map +1 -1
  395. package/lib/module/utils/storage.js.map +1 -1
  396. package/lib/module/utils/utils.js.map +1 -1
  397. package/lib/typescript/components/executiontasks/scan/interfaces.d.ts +2 -0
  398. package/lib/typescript/utils/Constants.d.ts +1 -0
  399. package/lib/typescript/utils/Enums.d.ts +4 -0
  400. package/package.json +7 -7
  401. package/src/components/executiontasks/imageCapture/ImageCapture.tsx +36 -31
  402. package/src/components/executiontasks/scan/ScanET.tsx +23 -23
  403. package/src/components/executiontasks/scan/interfaces.ts +2 -0
  404. package/src/components/executiontasks/scan/sub_components/SummaryPage.tsx +107 -80
  405. package/src/components/executiontasks/scan/utils.ts +4 -1
  406. package/src/manager/syncmanager/document/DocumentManager.ts +15 -6
  407. package/src/manager/syncmanager/document/DocumentSyncManager.ts +45 -46
  408. package/src/ui/screens/DeliverScreen.tsx +9 -7
  409. package/src/ui/screens/FormsScreen.tsx +14 -7
  410. package/src/ui/screens/ImageCaptureScreen.tsx +1 -1
  411. package/src/utils/Constants.ts +2 -0
  412. package/src/utils/Enums.ts +4 -0
  413. package/src/utils/storage.ts +9 -9
@@ -1 +1 @@
1
- {"version":3,"names":["BarCodeScanner","ExpoBarcodeTypes","SCAN_STATUS","SummaryPageTabs","DeliverState","jsonLogic","getBaseETResponse","EntityCode","ExecutionTaskID","getApiResponse","parseBody","parseKeyValue","Logger","LOG_TYPE","REASON_NOT_USED","Storage","BULK_DATA_LIMIT","SCAN_MERGED_OBJ_ID_OUTPUT","SHARED_PREFERENCE_SCAN_OUTPUT","RouteParams","dispatchEvent","DispatchExecutor","WIErrorCodes","ErrorCodeMessages","isEmptyOrBlank","EMPTY_AWB","ER_MISSING","INVALID_SHIPMENT","getDefaultERCLabel","SnackBarType","getBarCodeTypes","input","barCodeType","scannedInput","scanType","forEach","type","QRCODE","push","Constants","BarCodeType","qr","aztec","codabar","code128","code39","code93","datamatrix","ean13","ean8","itf14","pdf417","upc_e","checkForValidation","validation","selectedIndex","logic","regex","RegExp","test","api","apiData","errorJsonPath","responseJsonPath","uri","httpMethod","timeout","headers","requestBody","parsedRequestBody","pathParams","queryParams","apiResponse","apply","responseJsonLogic","data","error","getInstance","logEvent","message","SDK_ERROR","getShipmentData","scansMap","pendingShipments","scannedShipments","key","value","entries","scanStatus","undefined","SCANNED","FAILED","getScannedItemCount","getMappingCount","scanOutput","wiMappingUpdate","mwId","mergedObjectiveId","count","getUpdatedScanETOutput","success","eventCode","reasonCode","route","scannedData","prefixedMergedObjectiveId","params","ROOT_META_DATA","previousMWID","previousMergedObjectiveId","output","SCAN","_scannedData","groupId","displayInfo","jobId","shipmentFlow","scanValue","scanId","isScan","triggerScanEvent","allScansOutput","getScanMappedOutput","storage","setSharedItem","JSON","stringify","getScanETOutput","mergeScannedOutput","ercItems","defaultERC","deliverState","isPartial","CANCELLED","DELIVERE_LATER","DELIVER_NOW","getEventType","getScannedItems","items","validated","timestamp","Date","now","isETCompleted","scanMode","isMultiObjectiveEnable","scannedShipmentCount","singleModeCount","allowMultiObjectivePartial","_scannedShipmentCount","length","scans","isReplacement","scan","selectedEventCode","selectedReason","_scansMap$get","_scansMap$get2","get","code","eventList","result","find","Boolean","mergedScanOutput","getSharedItem","parse","etOutput","nextStates","NEXT_STATES","eventOutputData","meta","etData","endTime","taskId","customData","customEventsData","taskName","fetchMergedObjectiveIdBasedOnStatus","activeTab","scanProps","mergedObjectiveIds","filterIds","getScanMergedObjectID","ALL","PENDING","DELIVERED","UNDELIVERED","fetchLabel","modifyDisplayScanData","response","updatedScanData","Promise","all","map","_scan$displayInfo","_scan$displayInfo2","scannableId","clientName","orderId","originalMergedObjId","lastStatus","totalCount","getScanData","limit","offset","filterWFIData","addScans","isErcSelector","ercSelector","status","FAILURE","replace","isValidated","eventType","updateWIMapping","ec","rc","scanToMerge","title","subTitle","updateSharedPreference","_scanOutput","WARNING","SUCCESS","shipmentCount","scannedCount","scanned","total","exitOnError","exit","getErrorMessage","removeScan","removeShipment","Object","keys","getScanMergedOutput","mergedIdOutput","_mergedIds","pending","outputAtPrefixedId","failure","updatePendingSharedPreference","getTabCount","defaultResult","getWFICountByMWIIds","clearScanOutput","promises","scanRecord","scanOutputs","errorCode","ScannableIdAlreadyCompleted","ScannableIdNotInDispatch","ScannableIdNotReady","DifferentGroupUpdateNotAllowed","ObjectiveAndJobWFMismatch","ScannableIdAlreadyUpdated","JobAlreadyCompleted","ScannableIdPartOfAnotherMO","getSplitIds","splitMergedObjectiveIds","filter","mergedObjectiveID","filterERCItems","eventCodeItems","erc","resetObjective","deliveredMergedObjectiveIds","undeliveredMergedObjectiveIds","hasNextPage"],"sources":["utils.ts"],"sourcesContent":["import { BarCodeScanner } from 'expo-barcode-scanner';\nimport {\n ADD_SCAN,\n ExpoBarcodeTypes,\n MergedScan,\n SCANNED_RECORD,\n SCAN_MERGED_OBJ_ID_INTEFACE,\n SCAN_STATUS,\n SHARED_PREF_SCAN_OUTPUT_INTERFACE,\n SummaryDisplayData,\n SummaryPageTabs,\n TabRecord,\n} from './interfaces';\nimport {\n API,\n DefaultERC,\n DeliverState,\n IWIMappingUpdate,\n ScanData,\n ScanMode,\n ScannerInput,\n ScannerOutput,\n ScannerType,\n Validation,\n} from './ScanSchema';\nimport * as jsonLogic from 'json-logic-js';\nimport type { ercItem } from './sub_components/ERDropDown';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport {\n APIData,\n getApiResponse,\n parseBody,\n parseKeyValue,\n} from '../../../utils/ApiUtils';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { REASON_NOT_USED } from '../../../constants/constants';\nimport Storage from '../../../utils/storage';\nimport {\n BULK_DATA_LIMIT,\n SCAN_MERGED_OBJ_ID_OUTPUT,\n SHARED_PREFERENCE_SCAN_OUTPUT,\n} from '../../../manager/syncmanager/constants';\nimport { RouteParams } from '../../../ui/uiConfig/RouteParams';\nimport dispatchEvent from '../../../events/EventDispatcher';\nimport {\n DispatchExecutor,\n IDispatch,\n WIErrorCodes,\n ErrorCodeMessages,\n} from '@os1-platform/platform-coreos-execution-engine-sdk';\nimport { isEmptyOrBlank } from '../../../utils/utils';\nimport { EMPTY_AWB, ER_MISSING, INVALID_SHIPMENT } from './constants';\nimport { onScanEvent, onScanRemoveEvent } from '../../../models/DispatchModels';\nimport { BaseETResponse } from '../ExecutionTasksIndex';\nimport { eventType } from '../../../events/interface';\nimport { getDefaultERCLabel } from './sub_components/DropDownUtils';\nimport { SnackBarType } from '../../../components/widgets/SnackBarCustom';\n\nexport function getBarCodeTypes(input: ScannerInput): any[] {\n const barCodeType: any[] = [];\n const {\n scannedInput: { scanType },\n } = input;\n scanType.forEach((type: ScannerType) => {\n switch (type) {\n case ExpoBarcodeTypes.QRCODE:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.qr);\n break;\n case ExpoBarcodeTypes.aztec:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.aztec);\n break;\n case ExpoBarcodeTypes.codabar:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.codabar);\n break;\n case ExpoBarcodeTypes.code128:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code128);\n break;\n case ExpoBarcodeTypes.code39:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code39);\n break;\n case ExpoBarcodeTypes.code93:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code93);\n break;\n case ExpoBarcodeTypes.datamatrix:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.datamatrix);\n break;\n case ExpoBarcodeTypes.ean13:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.ean13);\n break;\n case ExpoBarcodeTypes.ean8:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.ean8);\n break;\n case ExpoBarcodeTypes.itf14:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.itf14);\n break;\n case ExpoBarcodeTypes.pdf417:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.pdf417);\n break;\n case ExpoBarcodeTypes.upc_e:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.upc_e);\n break;\n\n default:\n break;\n }\n });\n return barCodeType;\n}\n\nexport async function checkForValidation(\n scannedInput: string,\n validation: Validation\n): Promise<boolean> {\n // Scans Array\n if (validation.selectedIndex === 0) {\n return true;\n }\n // Validation Regex\n else if (\n validation.selectedIndex === 1 &&\n typeof validation.logic === 'string'\n ) {\n const regex = new RegExp(validation.logic);\n return regex.test(scannedInput);\n }\n // API\n else if (\n validation.selectedIndex === 2 &&\n typeof validation.logic === 'object'\n ) {\n try {\n //@ts-ignore\n const api: API = validation.logic;\n const apiData: APIData = {\n errorJsonPath: '',\n responseJsonPath: '',\n uri: api.uri,\n httpMethod: api.httpMethod,\n timeout: api.timeout,\n headers: api.headers,\n };\n if (api.requestBody) {\n const parsedRequestBody = parseBody(api.requestBody, scannedInput);\n apiData.requestBody = parsedRequestBody;\n }\n if (api.pathParams) {\n parseKeyValue(api.pathParams, scannedInput);\n apiData.pathParams = api.pathParams;\n }\n if (api.queryParams) {\n parseKeyValue(api.queryParams, scannedInput);\n apiData.queryParams = api.queryParams;\n }\n const apiResponse = await getApiResponse(apiData);\n\n return jsonLogic.apply(\n <jsonLogic.RulesLogic>api.responseJsonLogic,\n apiResponse.data\n );\n } catch (error: any) {\n Logger.getInstance().logEvent(\n '~ checkForValidation',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n } else {\n return false;\n }\n}\n\nexport function getShipmentData(\n selectedIndex: number,\n scansMap: Map<string, MergedScan>\n): [string[], string[]] {\n const pendingShipments: string[] = [];\n const scannedShipments: string[] = [];\n //@ts-ignore\n for (let [key, value] of scansMap.entries()) {\n /**\n * If scanStatus is undefined then push the shipment to pending.\n * If scanStatus is not undefined:\n * Then if successfully scanned, move to scannedShipments array.\n * Else do nothing.\n */\n if (value?.scanStatus != undefined) {\n if (value?.scanStatus === SCAN_STATUS.SCANNED) {\n scannedShipments.push(key);\n } else if (value?.scanStatus === SCAN_STATUS.FAILED) {\n pendingShipments.push(key);\n }\n } else if (selectedIndex === 0) {\n pendingShipments.push(key);\n }\n }\n return [pendingShipments, scannedShipments];\n}\n\nexport function getScannedItemCount(scansMap: Map<string, MergedScan>): number {\n let scannedShipments = 0;\n if (scansMap) {\n for (let [, value] of scansMap.entries()) {\n if (value.scanStatus === SCAN_STATUS.SCANNED) {\n scannedShipments++;\n }\n }\n return scannedShipments;\n }\n return scannedShipments;\n}\n\nexport function getMappingCount(\n scanOutput: ScannerOutput,\n wiMappingUpdate: IWIMappingUpdate\n) {\n const { mwId: mergedObjectiveId } = wiMappingUpdate.data;\n\n if (scanOutput[mergedObjectiveId]) {\n return scanOutput[mergedObjectiveId].count + 1;\n } else {\n return 1;\n }\n}\n\nexport async function getUpdatedScanETOutput(\n scanOutput: ScannerOutput,\n wiMappingUpdate: IWIMappingUpdate,\n success: boolean,\n eventCode: string,\n reasonCode: string,\n route: any,\n scannedData: any\n) {\n const prefixedMergedObjectiveId =\n route.params[RouteParams.ROOT_META_DATA].prefixedMergedObjectiveId;\n const { mwId: mergedObjectiveId, previousMWID: previousMergedObjectiveId } =\n wiMappingUpdate.data;\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n success,\n eventCode,\n reasonCode,\n [mergedObjectiveId],\n ExecutionTaskID.SCAN\n );\n const _scannedData: any = [\n {\n groupId: scannedData.displayInfo.groupId,\n jobId: scannedData.jobId,\n shipmentFlow: scannedData.displayInfo.shipmentFlow,\n scanValue: scannedData.scanId,\n },\n ];\n\n scannedData?.isScan\n ? triggerScanEvent('ON_SCAN', route, _scannedData, output)\n : null;\n\n if (scanOutput[previousMergedObjectiveId]) {\n scanOutput[previousMergedObjectiveId].count -= 1;\n\n if (scanOutput[previousMergedObjectiveId].count === 0) {\n delete scanOutput[previousMergedObjectiveId];\n }\n }\n const count = getMappingCount(scanOutput, wiMappingUpdate);\n\n if (!scanOutput[mergedObjectiveId]) {\n scanOutput[mergedObjectiveId] = { output, count };\n } else {\n scanOutput[mergedObjectiveId].count = count;\n }\n\n // SAVE IN SHARED PREFERENCE\n let allScansOutput = (await getScanMappedOutput()) || {};\n let storage = Storage.getInstance();\n await storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify({\n ...allScansOutput,\n [prefixedMergedObjectiveId]: scanOutput,\n })\n );\n return scanOutput;\n}\n\nexport async function getScanETOutput(\n mergeScannedOutput: ScannerOutput,\n mergedObjectiveId: Array<string>,\n ercItems: ercItem[],\n defaultERC: DefaultERC,\n deliverState: DeliverState,\n isPartial: boolean,\n count: number\n): Promise<ScannerOutput> {\n switch (deliverState) {\n case DeliverState.CANCELLED: {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n false,\n defaultERC.eventCode,\n defaultERC.reasonCode || '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n return {\n [mergedObjectiveId[0]]: {\n output,\n count,\n },\n };\n }\n case DeliverState.DELIVERE_LATER: {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n false,\n REASON_NOT_USED,\n '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n mergeScannedOutput['default'] = {\n output,\n count,\n };\n return mergeScannedOutput;\n }\n case DeliverState.DELIVER_NOW: {\n if (isPartial) {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n getEventType(ercItems, defaultERC.eventCode),\n defaultERC.eventCode,\n defaultERC.reasonCode || '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n\n mergeScannedOutput['default'] = { output, count };\n return mergeScannedOutput;\n } else {\n return mergeScannedOutput;\n }\n }\n default: {\n return mergeScannedOutput;\n }\n }\n}\n\nexport function getScannedItems(scanValue: MergedScan): ScanData[] {\n const items: ScanData[] = [];\n if (scanValue.scanStatus === SCAN_STATUS.SCANNED)\n items.push({\n value: scanValue.value,\n validated: scanValue.validated || false,\n timestamp: scanValue.timestamp || Date.now(),\n });\n\n return items;\n}\n\nexport function isETCompleted(\n validation: Validation,\n scansMap: Map<string, MergedScan>,\n scanMode: ScanMode,\n isMultiObjectiveEnable: boolean,\n scannedShipmentCount?: number,\n singleModeCount?: number,\n allowMultiObjectivePartial?: boolean\n): boolean {\n if (scanMode === 'SINGLE' || isMultiObjectiveEnable) {\n let _scannedShipmentCount = scannedShipmentCount || 0;\n\n if (!scannedShipmentCount) {\n const [, scannedShipments] = getShipmentData(\n validation.selectedIndex,\n scansMap\n );\n _scannedShipmentCount = scannedShipments.length;\n }\n\n if (allowMultiObjectivePartial) {\n return _scannedShipmentCount >= 1;\n }\n\n return singleModeCount === _scannedShipmentCount;\n } else {\n // Scans Array\n if (validation.selectedIndex === 0) {\n //@ts-ignore\n const scans: string[] = validation.logic;\n if (!scannedShipmentCount) {\n const [, scannedShipments] = getShipmentData(\n validation.selectedIndex,\n scansMap\n );\n return scans.length === scannedShipments.length;\n }\n\n return scans.length === scannedShipmentCount;\n }\n // Validation Regex\n else if (\n (validation.selectedIndex === 1 &&\n typeof validation.logic === 'string') ||\n (validation.selectedIndex === 2 && typeof validation.logic === 'object')\n ) {\n return true;\n } else {\n return false;\n }\n }\n}\n\nexport function isReplacement(\n scan: string,\n scansMap: Map<string, MergedScan>,\n selectedEventCode: ercItem | undefined,\n selectedReason: ercItem | undefined\n) {\n if (\n //(selectedEventCode || selectedReason) &&\n //scansMap.get(scan)?.eventCode &&\n scansMap.get(scan)?.eventCode !== selectedEventCode?.code || //scansMap.get(scan)?.reasonCode !== undefined &&\n scansMap.get(scan)?.reasonCode !== selectedReason?.code\n ) {\n return true;\n }\n return false;\n}\n\nexport function getEventType(\n eventList: Array<ercItem>,\n eventCode: string\n): boolean {\n const result = eventList.find((code) => code.code === eventCode);\n if (result) {\n return Boolean(result.success);\n } else {\n return false;\n }\n}\n\nexport async function getScanMappedOutput(): Promise<SHARED_PREF_SCAN_OUTPUT_INTERFACE> {\n let storage = Storage.getInstance();\n const mergedScanOutput = await storage.getSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT\n );\n if (mergedScanOutput) {\n return JSON.parse(mergedScanOutput);\n } else {\n return {};\n }\n}\n\nexport function triggerScanEvent(\n type: eventType,\n route: any,\n scannedData: any,\n etOutput?: BaseETResponse\n) {\n switch (type) {\n case 'ON_SCAN': {\n const nextStates = route.params[RouteParams.NEXT_STATES];\n const eventOutputData: onScanEvent = {\n meta: etOutput?.meta || {},\n etData: {\n eventCode: etOutput?.eventCode || '',\n reasonCode: etOutput?.reasonCode || '',\n success: etOutput?.success || false,\n endTime: Date.now(),\n scannedData,\n },\n taskId: nextStates.taskId,\n timestamp: Date.now(),\n customData: route.params[RouteParams.ROOT_META_DATA].customEventsData,\n };\n dispatchEvent('ON_SCAN', nextStates.taskName, eventOutputData);\n break;\n }\n case 'ON_SCAN_REMOVE': {\n const nextStates = route.params[RouteParams.NEXT_STATES];\n const eventOutputData: onScanRemoveEvent = {\n etData: {\n scannedData,\n },\n taskId: nextStates.taskId,\n timestamp: Date.now(),\n customData: route.params[RouteParams.ROOT_META_DATA].customEventsData,\n };\n dispatchEvent('ON_SCAN_REMOVE', nextStates.taskName, eventOutputData);\n break;\n }\n default:\n break;\n }\n}\n\nconst fetchMergedObjectiveIdBasedOnStatus = async (\n activeTab: SummaryPageTabs,\n scanProps: ScannerInput\n) => {\n let prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n\n let mergedObjectiveIds: SCANNED_RECORD;\n let filterIds = await getScanMergedObjectID();\n if (filterIds) {\n mergedObjectiveIds = filterIds[prefixedMergedObjectiveId] || [];\n } else {\n return [];\n }\n\n switch (activeTab) {\n case SummaryPageTabs.ALL:\n return [\n ...mergedObjectiveIds['pending'],\n ...mergedObjectiveIds['success'],\n ...mergedObjectiveIds['failure'],\n ];\n case SummaryPageTabs.PENDING:\n return mergedObjectiveIds['pending'];\n case SummaryPageTabs.DELIVERED:\n return mergedObjectiveIds['success'];\n case SummaryPageTabs.UNDELIVERED:\n return mergedObjectiveIds['failure'];\n default:\n return [];\n }\n};\n\nconst fetchLabel = async (eventCode: string, reasonCode?: string) => {\n return await getDefaultERCLabel({\n eventCode,\n reasonCode,\n });\n};\n\nconst modifyDisplayScanData = async (\n response: IDispatch.IQueryWFIResponse\n): Promise<SummaryDisplayData> => {\n const { data: scans } = response;\n const updatedScanData = await Promise.all(\n scans.map(async (scan) => {\n const { eventCode, reasonCode } = await fetchLabel(\n scan.eventCode,\n scan.reasonCode\n );\n\n return {\n scanId: scan.scannableId,\n clientName: scan.displayInfo?.clientName || '--',\n orderId: scan.displayInfo?.orderId || '--',\n eventCode: eventCode || '--',\n reasonCode: reasonCode || '--',\n prefixedMergedObjectiveId: scan.originalMergedObjId,\n lastStatus: scan.lastStatus,\n };\n })\n );\n\n return { data: updatedScanData, totalCount: response.totalCount };\n};\n\nexport async function getScanData(\n activeTab: SummaryPageTabs,\n scanProps: ScannerInput,\n limit: number,\n offset: number,\n scan?: string\n): Promise<SummaryDisplayData> {\n const taskName = scanProps.taskName || '';\n const mergedObjectiveId: Array<string> = scanProps.mergedObjectiveId;\n\n const mergedObjectiveIds = await fetchMergedObjectiveIdBasedOnStatus(\n activeTab,\n scanProps\n );\n\n if (!mergedObjectiveIds || mergedObjectiveIds.length === 0) {\n return {\n data: [],\n totalCount: 0,\n };\n }\n if (scan) {\n const scans: IDispatch.IQueryWFIResponse =\n await DispatchExecutor.filterWFIData(\n taskName,\n mergedObjectiveIds,\n limit,\n offset,\n scan\n );\n\n return await modifyDisplayScanData(scans);\n } else {\n const scans: IDispatch.IQueryWFIResponse =\n await DispatchExecutor.filterWFIData(\n taskName,\n mergedObjectiveIds,\n limit,\n offset\n );\n\n return await modifyDisplayScanData(scans);\n }\n}\n\nexport async function addScans(\n scan: string,\n scanProps: ScannerInput,\n scanOutput: ScannerOutput,\n ercItems: ercItem[],\n eventCode: ercItem,\n reasonCode?: ercItem\n): Promise<ADD_SCAN> {\n const prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n\n const isErcSelector = scanProps.ercSelector ? true : false;\n if (isEmptyOrBlank(scan)) {\n return { status: false, message: EMPTY_AWB, type: SnackBarType.FAILURE };\n }\n\n if (isErcSelector && (!eventCode || !eventCode.code)) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n message: ER_MISSING.replace('<shipment_id>', scan),\n };\n }\n\n let isValidated = await checkForValidation(scan, scanProps.validation);\n\n if (isValidated) {\n // NEW CODE\n try {\n const eventType = getEventType(ercItems || [], eventCode?.code || '');\n\n const result = await DispatchExecutor.updateWIMapping(\n prefixedMergedObjectiveId,\n scan,\n {\n ec: eventCode?.code || '',\n rc: reasonCode?.code || '',\n },\n scanProps.scanToMerge || false\n );\n if ('data' in result) {\n const data: IDispatch.MappingUpdateResponse = result.data;\n const {\n message: { title, subTitle },\n } = data;\n\n // UPDATE SHARED PREFERENCE\n updateSharedPreference(eventType, data.mwId, prefixedMergedObjectiveId);\n\n const _scanOutput = await getUpdatedScanETOutput(\n scanOutput,\n result,\n eventType,\n eventCode?.code || '',\n reasonCode?.code || '',\n scanProps.route,\n {\n jobId: data.jobId,\n displayInfo: data.displayInfo,\n isScan: true,\n scanId: scan,\n }\n );\n\n return {\n status: true,\n type: subTitle ? SnackBarType.WARNING : SnackBarType.SUCCESS,\n message: subTitle\n ? `#${scan}\\n${title}\\n${subTitle}`\n : `#${scan}\\nShipment updated successfully!`,\n data: {\n output: _scanOutput,\n shipmentCount: {\n scannedCount: data.scanned,\n totalCount: data.total,\n },\n },\n };\n } else {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n message: 'Error occurred while scanning',\n };\n }\n } catch (error: any) {\n if (scanProps.exitOnError) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n exit: true,\n message: 'Error occurred while scanning',\n };\n\n // props.onSubmitET({\n // ...(await getScanETOutput(\n // mergedScanETOutput,\n // props.mergedObjectiveId,\n // eventCodeItems || [],\n // props.defaultERC,\n // false,\n // true\n // )),\n // });\n } else {\n return {\n status: false,\n ...getErrorMessage(scan, error),\n };\n }\n }\n } else {\n if (scanProps.exitOnError) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n exit: true,\n message: 'Error occurred while scanning',\n };\n } else {\n return {\n status: false,\n message: INVALID_SHIPMENT,\n type: SnackBarType.FAILURE,\n };\n }\n }\n}\n\nexport async function removeScan(\n taskName: string,\n scans: Array<string>,\n route: any,\n scanOutput: ScannerOutput\n) {\n const prefixedMergedObjectiveId =\n route.params[RouteParams.ROOT_META_DATA].prefixedMergedObjectiveId;\n\n const result = await DispatchExecutor.removeShipment(\n prefixedMergedObjectiveId,\n scans\n );\n\n // Decrease count on remove\n Object.keys(result).forEach((mergedObjectiveId) => {\n scanOutput[mergedObjectiveId].count -= result[mergedObjectiveId];\n\n if (scanOutput[mergedObjectiveId].count === 0) {\n delete scanOutput[mergedObjectiveId];\n }\n });\n\n const allScansOutput = (await getScanMergedOutput()) || {};\n\n // SAVE IN SHARED PREFERENCE\n let storage = Storage.getInstance();\n\n const mergedIdOutput = await getScanMergedObjectID();\n if (mergedIdOutput) {\n const _mergedIds: SCANNED_RECORD =\n mergedIdOutput[prefixedMergedObjectiveId];\n _mergedIds.pending.push(prefixedMergedObjectiveId);\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n\n let outputAtPrefixedId = allScansOutput[prefixedMergedObjectiveId] || {};\n\n await storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify({\n ...allScansOutput,\n [prefixedMergedObjectiveId]: { ...outputAtPrefixedId, scanOutput },\n })\n );\n\n // TRIGGER REMOVE SCAN EVENT\n const scannedData = scans.map((scan) => ({ scanValue: scan }));\n triggerScanEvent('ON_SCAN_REMOVE', route, scannedData);\n}\n\nexport async function updateSharedPreference(\n eventType: boolean,\n mergedObjectiveId: string,\n prefixedMergedObjectiveId: string\n) {\n let storage = Storage.getInstance();\n const mergedIdOutput = await getScanMergedObjectID();\n\n if (mergedIdOutput) {\n const _mergedIds: SCANNED_RECORD =\n mergedIdOutput[prefixedMergedObjectiveId];\n if (eventType) {\n _mergedIds.success.push(mergedObjectiveId);\n } else {\n _mergedIds.failure.push(mergedObjectiveId);\n }\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n}\n\nexport async function updatePendingSharedPreference(\n eventType: boolean,\n prefixedMergedObjectiveId: string\n) {\n let storage = Storage.getInstance();\n const mergedIdOutput = await getScanMergedObjectID();\n\n if (mergedIdOutput) {\n const _mergedIds = mergedIdOutput[prefixedMergedObjectiveId];\n if (_mergedIds) {\n if (eventType) {\n _mergedIds.success.push(prefixedMergedObjectiveId);\n _mergedIds.pending = [];\n } else {\n _mergedIds.failure.push(prefixedMergedObjectiveId);\n _mergedIds.pending = [];\n }\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n }\n}\n\nexport const getTabCount = async (\n scanProps: ScannerInput\n): Promise<TabRecord> => {\n let prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n const mergedIdOutput = await getScanMergedObjectID();\n const defaultResult = {\n [SummaryPageTabs.ALL]: 0,\n [SummaryPageTabs.PENDING]: 0,\n [SummaryPageTabs.DELIVERED]: 0,\n [SummaryPageTabs.UNDELIVERED]: 0,\n };\n const input: any = {};\n if (mergedIdOutput) {\n const _mergedIds = mergedIdOutput[prefixedMergedObjectiveId];\n if (_mergedIds) {\n const success = _mergedIds.success;\n const failure = _mergedIds.failure;\n const pending = _mergedIds.pending;\n input[SummaryPageTabs.ALL] = [...success, ...failure, ...pending];\n if (pending.length > 0) input[SummaryPageTabs.PENDING] = pending;\n if (success.length > 0) input[SummaryPageTabs.DELIVERED] = success;\n if (failure.length > 0) input[SummaryPageTabs.UNDELIVERED] = failure;\n\n const result = await DispatchExecutor.getWFICountByMWIIds(input);\n\n return { ...defaultResult, ...result };\n } else {\n return defaultResult;\n }\n } else {\n return defaultResult;\n }\n};\n\nexport const clearScanOutput = async (prefixedMergedObjectiveId: string) => {\n let storage = Storage.getInstance();\n\n const promises: any = [];\n\n // Clear Scan Record\n const scanRecord = (await getScanMergedObjectID()) || {};\n if (scanRecord) {\n delete scanRecord[prefixedMergedObjectiveId];\n\n promises.push(\n storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify(scanRecord)\n )\n );\n }\n\n // Clear Scan Output\n const scanOutputs = (await getScanMappedOutput()) || {};\n if (scanOutputs) {\n delete scanOutputs[prefixedMergedObjectiveId];\n\n promises.push(\n storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify(scanOutputs)\n )\n );\n }\n return Promise.all(promises);\n};\n\nexport async function getScanMergedObjectID(): Promise<SCAN_MERGED_OBJ_ID_INTEFACE | null> {\n let storage = Storage.getInstance();\n const mergedIdOutput = await storage.getSharedItem(SCAN_MERGED_OBJ_ID_OUTPUT);\n if (mergedIdOutput) {\n return JSON.parse(mergedIdOutput);\n } else {\n return null;\n }\n}\n\nexport async function getScanMergedOutput(): Promise<ScannerOutput | null> {\n let storage = Storage.getInstance();\n const mergedIdOutput = await storage.getSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT\n );\n if (mergedIdOutput) {\n return JSON.parse(mergedIdOutput);\n } else {\n return null;\n }\n}\n\nexport const getErrorMessage = (\n scan: string,\n error: {\n errorCode: number;\n message: string;\n }\n): { type: SnackBarType; message: string } => {\n switch (error.errorCode) {\n case WIErrorCodes.ScannableIdAlreadyCompleted:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdNotInDispatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdNotInDispatch]\n }`,\n };\n case WIErrorCodes.ScannableIdNotReady:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdNotReady]\n }`,\n };\n case WIErrorCodes.DifferentGroupUpdateNotAllowed:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.DifferentGroupUpdateNotAllowed]\n }`,\n };\n case WIErrorCodes.ObjectiveAndJobWFMismatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ObjectiveAndJobWFMismatch]\n }`,\n };\n case WIErrorCodes.ScannableIdAlreadyUpdated:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyUpdated]\n }`,\n };\n case WIErrorCodes.JobAlreadyCompleted:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.JobAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdPartOfAnotherMO:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdPartOfAnotherMO]\n }`,\n };\n default:\n return {\n type: SnackBarType.FAILURE,\n message: 'Error occurred while scanning',\n };\n }\n};\n\nexport const getSplitIds = (scanOutput: ScannerOutput): string[] => {\n const splitMergedObjectiveIds = Object.keys(scanOutput)\n .filter((mergedObjectiveID: string) => {\n const scan = scanOutput[mergedObjectiveID];\n if (scan.count > 0) return true;\n return false;\n })\n .map((mergedObjectiveIds) => mergedObjectiveIds);\n\n return splitMergedObjectiveIds;\n};\n\nexport function filterERCItems(\n eventCodeItems: ercItem[],\n type: 'SUCCESS' | 'FAILURE'\n): ercItem[] {\n return eventCodeItems.filter(\n (erc) => Boolean(erc.success) === (type === 'SUCCESS' ? true : false)\n );\n}\n\nexport async function resetObjective(scanProps: ScannerInput) {\n const taskName = scanProps.taskName || '';\n const deliveredMergedObjectiveIds = await fetchMergedObjectiveIdBasedOnStatus(\n SummaryPageTabs.DELIVERED,\n scanProps\n );\n const undeliveredMergedObjectiveIds =\n await fetchMergedObjectiveIdBasedOnStatus(\n SummaryPageTabs.UNDELIVERED,\n scanProps\n );\n\n if (\n (!deliveredMergedObjectiveIds ||\n deliveredMergedObjectiveIds.length === 0) &&\n (!undeliveredMergedObjectiveIds ||\n undeliveredMergedObjectiveIds.length === 0)\n ) {\n return;\n }\n\n const scannedData: any[] = [];\n\n if (deliveredMergedObjectiveIds && deliveredMergedObjectiveIds.length) {\n let hasNextPage = true;\n let offset = 0;\n const limit = BULK_DATA_LIMIT;\n let scans: IDispatch.IQueryWFIResponse = { data: [], totalCount: 0 };\n\n do {\n scans = await DispatchExecutor.filterWFIData(\n taskName,\n deliveredMergedObjectiveIds,\n limit,\n offset\n );\n scans.data.forEach((scan) => {\n scannedData.push({\n scanValue: scan.scannableId,\n });\n });\n\n offset += limit;\n hasNextPage = scans.totalCount - offset + 1 > 0;\n } while (hasNextPage);\n }\n if (undeliveredMergedObjectiveIds && undeliveredMergedObjectiveIds.length) {\n let hasNextPage = true;\n let offset = 0;\n const limit = BULK_DATA_LIMIT;\n let scans: IDispatch.IQueryWFIResponse = { data: [], totalCount: 0 };\n\n do {\n scans = await DispatchExecutor.filterWFIData(\n taskName,\n undeliveredMergedObjectiveIds,\n limit,\n offset\n );\n scans.data.forEach((scan) => {\n scannedData.push({\n scanValue: scan.scannableId,\n });\n });\n\n offset += limit;\n hasNextPage = scans.totalCount - offset + 1 > 0;\n } while (hasNextPage);\n }\n triggerScanEvent('ON_SCAN_REMOVE', scanProps.route, scannedData);\n return;\n}\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,sBAAsB;AACrD,SAEEC,gBAAgB,EAIhBC,WAAW,EAGXC,eAAe,QAEV,cAAc;AACrB,SAGEC,YAAY,QAQP,cAAc;AACrB,OAAO,KAAKC,SAAS,MAAM,eAAe;AAE1C,SAASC,iBAAiB,QAAQ,8BAA8B;AAChE,SACEC,UAAU,EACVC,eAAe,QACV,oCAAoC;AAC3C,SAEEC,cAAc,EACdC,SAAS,EACTC,aAAa,QACR,yBAAyB;AAChC,OAAOC,MAAM,IAAIC,QAAQ,QAAQ,uBAAuB;AACxD,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,OAAOC,OAAO,MAAM,wBAAwB;AAC5C,SACEC,eAAe,EACfC,yBAAyB,EACzBC,6BAA6B,QACxB,wCAAwC;AAC/C,SAASC,WAAW,QAAQ,kCAAkC;AAC9D,OAAOC,aAAa,MAAM,iCAAiC;AAC3D,SACEC,gBAAgB,EAEhBC,YAAY,EACZC,iBAAiB,QACZ,oDAAoD;AAC3D,SAASC,cAAc,QAAQ,sBAAsB;AACrD,SAASC,SAAS,EAAEC,UAAU,EAAEC,gBAAgB,QAAQ,aAAa;AAIrE,SAASC,kBAAkB,QAAQ,gCAAgC;AACnE,SAASC,YAAY,QAAQ,4CAA4C;AAEzE,OAAO,SAASC,eAAeA,CAACC,KAAmB,EAAS;EAC1D,MAAMC,WAAkB,GAAG,EAAE;EAC7B,MAAM;IACJC,YAAY,EAAE;MAAEC;IAAS;EAC3B,CAAC,GAAGH,KAAK;EACTG,QAAQ,CAACC,OAAO,CAAEC,IAAiB,IAAK;IACtC,QAAQA,IAAI;MACV,KAAKnC,gBAAgB,CAACoC,MAAM;QAC1BL,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACC,EAAE,CAAC;QACzD;MACF,KAAKxC,gBAAgB,CAACyC,KAAK;QACzBV,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACE,KAAK,CAAC;QAC5D;MACF,KAAKzC,gBAAgB,CAAC0C,OAAO;QAC3BX,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACG,OAAO,CAAC;QAC9D;MACF,KAAK1C,gBAAgB,CAAC2C,OAAO;QAC3BZ,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACI,OAAO,CAAC;QAC9D;MACF,KAAK3C,gBAAgB,CAAC4C,MAAM;QAC1Bb,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACK,MAAM,CAAC;QAC7D;MACF,KAAK5C,gBAAgB,CAAC6C,MAAM;QAC1Bd,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACM,MAAM,CAAC;QAC7D;MACF,KAAK7C,gBAAgB,CAAC8C,UAAU;QAC9Bf,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACO,UAAU,CAAC;QACjE;MACF,KAAK9C,gBAAgB,CAAC+C,KAAK;QACzBhB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACQ,KAAK,CAAC;QAC5D;MACF,KAAK/C,gBAAgB,CAACgD,IAAI;QACxBjB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACS,IAAI,CAAC;QAC3D;MACF,KAAKhD,gBAAgB,CAACiD,KAAK;QACzBlB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACU,KAAK,CAAC;QAC5D;MACF,KAAKjD,gBAAgB,CAACkD,MAAM;QAC1BnB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACW,MAAM,CAAC;QAC7D;MACF,KAAKlD,gBAAgB,CAACmD,KAAK;QACzBpB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACY,KAAK,CAAC;QAC5D;MAEF;QACE;IACJ;EACF,CAAC,CAAC;EACF,OAAOpB,WAAW;AACpB;AAEA,OAAO,eAAeqB,kBAAkBA,CACtCpB,YAAoB,EACpBqB,UAAsB,EACJ;EAClB;EACA,IAAIA,UAAU,CAACC,aAAa,KAAK,CAAC,EAAE;IAClC,OAAO,IAAI;EACb;EACA;EAAA,KACK,IACHD,UAAU,CAACC,aAAa,KAAK,CAAC,IAC9B,OAAOD,UAAU,CAACE,KAAK,KAAK,QAAQ,EACpC;IACA,MAAMC,KAAK,GAAG,IAAIC,MAAM,CAACJ,UAAU,CAACE,KAAK,CAAC;IAC1C,OAAOC,KAAK,CAACE,IAAI,CAAC1B,YAAY,CAAC;EACjC;EACA;EAAA,KACK,IACHqB,UAAU,CAACC,aAAa,KAAK,CAAC,IAC9B,OAAOD,UAAU,CAACE,KAAK,KAAK,QAAQ,EACpC;IACA,IAAI;MACF;MACA,MAAMI,GAAQ,GAAGN,UAAU,CAACE,KAAK;MACjC,MAAMK,OAAgB,GAAG;QACvBC,aAAa,EAAE,EAAE;QACjBC,gBAAgB,EAAE,EAAE;QACpBC,GAAG,EAAEJ,GAAG,CAACI,GAAG;QACZC,UAAU,EAAEL,GAAG,CAACK,UAAU;QAC1BC,OAAO,EAAEN,GAAG,CAACM,OAAO;QACpBC,OAAO,EAAEP,GAAG,CAACO;MACf,CAAC;MACD,IAAIP,GAAG,CAACQ,WAAW,EAAE;QACnB,MAAMC,iBAAiB,GAAG3D,SAAS,CAACkD,GAAG,CAACQ,WAAW,EAAEnC,YAAY,CAAC;QAClE4B,OAAO,CAACO,WAAW,GAAGC,iBAAiB;MACzC;MACA,IAAIT,GAAG,CAACU,UAAU,EAAE;QAClB3D,aAAa,CAACiD,GAAG,CAACU,UAAU,EAAErC,YAAY,CAAC;QAC3C4B,OAAO,CAACS,UAAU,GAAGV,GAAG,CAACU,UAAU;MACrC;MACA,IAAIV,GAAG,CAACW,WAAW,EAAE;QACnB5D,aAAa,CAACiD,GAAG,CAACW,WAAW,EAAEtC,YAAY,CAAC;QAC5C4B,OAAO,CAACU,WAAW,GAAGX,GAAG,CAACW,WAAW;MACvC;MACA,MAAMC,WAAW,GAAG,MAAM/D,cAAc,CAACoD,OAAO,CAAC;MAEjD,OAAOxD,SAAS,CAACoE,KAAK,CACEb,GAAG,CAACc,iBAAiB,EAC3CF,WAAW,CAACG,IACd,CAAC;IACH,CAAC,CAAC,OAAOC,KAAU,EAAE;MACnBhE,MAAM,CAACiE,WAAW,CAAC,CAAC,CAACC,QAAQ,CAC3B,sBAAsB,EACtBF,KAAK,CAACG,OAAO,EACblE,QAAQ,CAACmE,SACX,CAAC;MACD,OAAO,KAAK;IACd;EACF,CAAC,MAAM;IACL,OAAO,KAAK;EACd;AACF;AAEA,OAAO,SAASC,eAAeA,CAC7B1B,aAAqB,EACrB2B,QAAiC,EACX;EACtB,MAAMC,gBAA0B,GAAG,EAAE;EACrC,MAAMC,gBAA0B,GAAG,EAAE;EACrC;EACA,KAAK,IAAI,CAACC,GAAG,EAAEC,KAAK,CAAC,IAAIJ,QAAQ,CAACK,OAAO,CAAC,CAAC,EAAE;IAC3C;AACJ;AACA;AACA;AACA;AACA;IACI,IAAI,CAAAD,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,UAAU,KAAIC,SAAS,EAAE;MAClC,IAAI,CAAAH,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,UAAU,MAAKtF,WAAW,CAACwF,OAAO,EAAE;QAC7CN,gBAAgB,CAAC9C,IAAI,CAAC+C,GAAG,CAAC;MAC5B,CAAC,MAAM,IAAI,CAAAC,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,UAAU,MAAKtF,WAAW,CAACyF,MAAM,EAAE;QACnDR,gBAAgB,CAAC7C,IAAI,CAAC+C,GAAG,CAAC;MAC5B;IACF,CAAC,MAAM,IAAI9B,aAAa,KAAK,CAAC,EAAE;MAC9B4B,gBAAgB,CAAC7C,IAAI,CAAC+C,GAAG,CAAC;IAC5B;EACF;EACA,OAAO,CAACF,gBAAgB,EAAEC,gBAAgB,CAAC;AAC7C;AAEA,OAAO,SAASQ,mBAAmBA,CAACV,QAAiC,EAAU;EAC7E,IAAIE,gBAAgB,GAAG,CAAC;EACxB,IAAIF,QAAQ,EAAE;IACZ,KAAK,IAAI,GAAGI,KAAK,CAAC,IAAIJ,QAAQ,CAACK,OAAO,CAAC,CAAC,EAAE;MACxC,IAAID,KAAK,CAACE,UAAU,KAAKtF,WAAW,CAACwF,OAAO,EAAE;QAC5CN,gBAAgB,EAAE;MACpB;IACF;IACA,OAAOA,gBAAgB;EACzB;EACA,OAAOA,gBAAgB;AACzB;AAEA,OAAO,SAASS,eAAeA,CAC7BC,UAAyB,EACzBC,eAAiC,EACjC;EACA,MAAM;IAAEC,IAAI,EAAEC;EAAkB,CAAC,GAAGF,eAAe,CAACpB,IAAI;EAExD,IAAImB,UAAU,CAACG,iBAAiB,CAAC,EAAE;IACjC,OAAOH,UAAU,CAACG,iBAAiB,CAAC,CAACC,KAAK,GAAG,CAAC;EAChD,CAAC,MAAM;IACL,OAAO,CAAC;EACV;AACF;AAEA,OAAO,eAAeC,sBAAsBA,CAC1CL,UAAyB,EACzBC,eAAiC,EACjCK,OAAgB,EAChBC,SAAiB,EACjBC,UAAkB,EAClBC,KAAU,EACVC,WAAgB,EAChB;EACA,MAAMC,yBAAyB,GAC7BF,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAACF,yBAAyB;EACpE,MAAM;IAAET,IAAI,EAAEC,iBAAiB;IAAEW,YAAY,EAAEC;EAA0B,CAAC,GACxEd,eAAe,CAACpB,IAAI;EACtB,MAAMmC,MAAM,GAAG,MAAMxG,iBAAiB,CACpCC,UAAU,CAACwG,IAAI,EACfX,OAAO,EACPC,SAAS,EACTC,UAAU,EACV,CAACL,iBAAiB,CAAC,EACnBzF,eAAe,CAACuG,IAClB,CAAC;EACD,MAAMC,YAAiB,GAAG,CACxB;IACEC,OAAO,EAAET,WAAW,CAACU,WAAW,CAACD,OAAO;IACxCE,KAAK,EAAEX,WAAW,CAACW,KAAK;IACxBC,YAAY,EAAEZ,WAAW,CAACU,WAAW,CAACE,YAAY;IAClDC,SAAS,EAAEb,WAAW,CAACc;EACzB,CAAC,CACF;EAEDd,WAAW,aAAXA,WAAW,eAAXA,WAAW,CAAEe,MAAM,GACfC,gBAAgB,CAAC,SAAS,EAAEjB,KAAK,EAAES,YAAY,EAAEF,MAAM,CAAC,GACxD,IAAI;EAER,IAAIhB,UAAU,CAACe,yBAAyB,CAAC,EAAE;IACzCf,UAAU,CAACe,yBAAyB,CAAC,CAACX,KAAK,IAAI,CAAC;IAEhD,IAAIJ,UAAU,CAACe,yBAAyB,CAAC,CAACX,KAAK,KAAK,CAAC,EAAE;MACrD,OAAOJ,UAAU,CAACe,yBAAyB,CAAC;IAC9C;EACF;EACA,MAAMX,KAAK,GAAGL,eAAe,CAACC,UAAU,EAAEC,eAAe,CAAC;EAE1D,IAAI,CAACD,UAAU,CAACG,iBAAiB,CAAC,EAAE;IAClCH,UAAU,CAACG,iBAAiB,CAAC,GAAG;MAAEa,MAAM;MAAEZ;IAAM,CAAC;EACnD,CAAC,MAAM;IACLJ,UAAU,CAACG,iBAAiB,CAAC,CAACC,KAAK,GAAGA,KAAK;EAC7C;;EAEA;EACA,IAAIuB,cAAc,GAAG,CAAC,MAAMC,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC;EACxD,IAAIC,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAM8C,OAAO,CAACC,aAAa,CACzB1G,6BAA6B,EAC7B2G,IAAI,CAACC,SAAS,CAAC;IACb,GAAGL,cAAc;IACjB,CAAChB,yBAAyB,GAAGX;EAC/B,CAAC,CACH,CAAC;EACD,OAAOA,UAAU;AACnB;AAEA,OAAO,eAAeiC,eAAeA,CACnCC,kBAAiC,EACjC/B,iBAAgC,EAChCgC,QAAmB,EACnBC,UAAsB,EACtBC,YAA0B,EAC1BC,SAAkB,EAClBlC,KAAa,EACW;EACxB,QAAQiC,YAAY;IAClB,KAAK/H,YAAY,CAACiI,SAAS;MAAE;QAC3B,MAAMvB,MAAM,GAAG,MAAMxG,iBAAiB,CACpCC,UAAU,CAACwG,IAAI,EACf,KAAK,EACLmB,UAAU,CAAC7B,SAAS,EACpB6B,UAAU,CAAC5B,UAAU,IAAI,EAAE,EAC3BL,iBAAiB,EACjBzF,eAAe,CAACuG,IAClB,CAAC;QACD,OAAO;UACL,CAACd,iBAAiB,CAAC,CAAC,CAAC,GAAG;YACtBa,MAAM;YACNZ;UACF;QACF,CAAC;MACH;IACA,KAAK9F,YAAY,CAACkI,cAAc;MAAE;QAChC,MAAMxB,MAAM,GAAG,MAAMxG,iBAAiB,CACpCC,UAAU,CAACwG,IAAI,EACf,KAAK,EACLjG,eAAe,EACf,EAAE,EACFmF,iBAAiB,EACjBzF,eAAe,CAACuG,IAClB,CAAC;QACDiB,kBAAkB,CAAC,SAAS,CAAC,GAAG;UAC9BlB,MAAM;UACNZ;QACF,CAAC;QACD,OAAO8B,kBAAkB;MAC3B;IACA,KAAK5H,YAAY,CAACmI,WAAW;MAAE;QAC7B,IAAIH,SAAS,EAAE;UACb,MAAMtB,MAAM,GAAG,MAAMxG,iBAAiB,CACpCC,UAAU,CAACwG,IAAI,EACfyB,YAAY,CAACP,QAAQ,EAAEC,UAAU,CAAC7B,SAAS,CAAC,EAC5C6B,UAAU,CAAC7B,SAAS,EACpB6B,UAAU,CAAC5B,UAAU,IAAI,EAAE,EAC3BL,iBAAiB,EACjBzF,eAAe,CAACuG,IAClB,CAAC;UAEDiB,kBAAkB,CAAC,SAAS,CAAC,GAAG;YAAElB,MAAM;YAAEZ;UAAM,CAAC;UACjD,OAAO8B,kBAAkB;QAC3B,CAAC,MAAM;UACL,OAAOA,kBAAkB;QAC3B;MACF;IACA;MAAS;QACP,OAAOA,kBAAkB;MAC3B;EACF;AACF;AAEA,OAAO,SAASS,eAAeA,CAACpB,SAAqB,EAAc;EACjE,MAAMqB,KAAiB,GAAG,EAAE;EAC5B,IAAIrB,SAAS,CAAC7B,UAAU,KAAKtF,WAAW,CAACwF,OAAO,EAC9CgD,KAAK,CAACpG,IAAI,CAAC;IACTgD,KAAK,EAAE+B,SAAS,CAAC/B,KAAK;IACtBqD,SAAS,EAAEtB,SAAS,CAACsB,SAAS,IAAI,KAAK;IACvCC,SAAS,EAAEvB,SAAS,CAACuB,SAAS,IAAIC,IAAI,CAACC,GAAG,CAAC;EAC7C,CAAC,CAAC;EAEJ,OAAOJ,KAAK;AACd;AAEA,OAAO,SAASK,aAAaA,CAC3BzF,UAAsB,EACtB4B,QAAiC,EACjC8D,QAAkB,EAClBC,sBAA+B,EAC/BC,oBAA6B,EAC7BC,eAAwB,EACxBC,0BAAoC,EAC3B;EACT,IAAIJ,QAAQ,KAAK,QAAQ,IAAIC,sBAAsB,EAAE;IACnD,IAAII,qBAAqB,GAAGH,oBAAoB,IAAI,CAAC;IAErD,IAAI,CAACA,oBAAoB,EAAE;MACzB,MAAM,GAAG9D,gBAAgB,CAAC,GAAGH,eAAe,CAC1C3B,UAAU,CAACC,aAAa,EACxB2B,QACF,CAAC;MACDmE,qBAAqB,GAAGjE,gBAAgB,CAACkE,MAAM;IACjD;IAEA,IAAIF,0BAA0B,EAAE;MAC9B,OAAOC,qBAAqB,IAAI,CAAC;IACnC;IAEA,OAAOF,eAAe,KAAKE,qBAAqB;EAClD,CAAC,MAAM;IACL;IACA,IAAI/F,UAAU,CAACC,aAAa,KAAK,CAAC,EAAE;MAClC;MACA,MAAMgG,KAAe,GAAGjG,UAAU,CAACE,KAAK;MACxC,IAAI,CAAC0F,oBAAoB,EAAE;QACzB,MAAM,GAAG9D,gBAAgB,CAAC,GAAGH,eAAe,CAC1C3B,UAAU,CAACC,aAAa,EACxB2B,QACF,CAAC;QACD,OAAOqE,KAAK,CAACD,MAAM,KAAKlE,gBAAgB,CAACkE,MAAM;MACjD;MAEA,OAAOC,KAAK,CAACD,MAAM,KAAKJ,oBAAoB;IAC9C;IACA;IAAA,KACK,IACF5F,UAAU,CAACC,aAAa,KAAK,CAAC,IAC7B,OAAOD,UAAU,CAACE,KAAK,KAAK,QAAQ,IACrCF,UAAU,CAACC,aAAa,KAAK,CAAC,IAAI,OAAOD,UAAU,CAACE,KAAK,KAAK,QAAS,EACxE;MACA,OAAO,IAAI;IACb,CAAC,MAAM;MACL,OAAO,KAAK;IACd;EACF;AACF;AAEA,OAAO,SAASgG,aAAaA,CAC3BC,IAAY,EACZvE,QAAiC,EACjCwE,iBAAsC,EACtCC,cAAmC,EACnC;EAAA,IAAAC,aAAA,EAAAC,cAAA;EACA;EACE;EACA;EACA,EAAAD,aAAA,GAAA1E,QAAQ,CAAC4E,GAAG,CAACL,IAAI,CAAC,cAAAG,aAAA,uBAAlBA,aAAA,CAAoBvD,SAAS,OAAKqD,iBAAiB,aAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAAEK,IAAI;EAAI;EAC7D,EAAAF,cAAA,GAAA3E,QAAQ,CAAC4E,GAAG,CAACL,IAAI,CAAC,cAAAI,cAAA,uBAAlBA,cAAA,CAAoBvD,UAAU,OAAKqD,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAEI,IAAI,GACvD;IACA,OAAO,IAAI;EACb;EACA,OAAO,KAAK;AACd;AAEA,OAAO,SAASvB,YAAYA,CAC1BwB,SAAyB,EACzB3D,SAAiB,EACR;EACT,MAAM4D,MAAM,GAAGD,SAAS,CAACE,IAAI,CAAEH,IAAI,IAAKA,IAAI,CAACA,IAAI,KAAK1D,SAAS,CAAC;EAChE,IAAI4D,MAAM,EAAE;IACV,OAAOE,OAAO,CAACF,MAAM,CAAC7D,OAAO,CAAC;EAChC,CAAC,MAAM;IACL,OAAO,KAAK;EACd;AACF;AAEA,OAAO,eAAesB,mBAAmBA,CAAA,EAA+C;EACtF,IAAIC,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMuF,gBAAgB,GAAG,MAAMzC,OAAO,CAAC0C,aAAa,CAClDnJ,6BACF,CAAC;EACD,IAAIkJ,gBAAgB,EAAE;IACpB,OAAOvC,IAAI,CAACyC,KAAK,CAACF,gBAAgB,CAAC;EACrC,CAAC,MAAM;IACL,OAAO,CAAC,CAAC;EACX;AACF;AAEA,OAAO,SAAS5C,gBAAgBA,CAC9BpF,IAAe,EACfmE,KAAU,EACVC,WAAgB,EAChB+D,QAAyB,EACzB;EACA,QAAQnI,IAAI;IACV,KAAK,SAAS;MAAE;QACd,MAAMoI,UAAU,GAAGjE,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACsJ,WAAW,CAAC;QACxD,MAAMC,eAA4B,GAAG;UACnCC,IAAI,EAAE,CAAAJ,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEI,IAAI,KAAI,CAAC,CAAC;UAC1BC,MAAM,EAAE;YACNvE,SAAS,EAAE,CAAAkE,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAElE,SAAS,KAAI,EAAE;YACpCC,UAAU,EAAE,CAAAiE,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEjE,UAAU,KAAI,EAAE;YACtCF,OAAO,EAAE,CAAAmE,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEnE,OAAO,KAAI,KAAK;YACnCyE,OAAO,EAAEhC,IAAI,CAACC,GAAG,CAAC,CAAC;YACnBtC;UACF,CAAC;UACDsE,MAAM,EAAEN,UAAU,CAACM,MAAM;UACzBlC,SAAS,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC;UACrBiC,UAAU,EAAExE,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAACqE;QACvD,CAAC;QACD5J,aAAa,CAAC,SAAS,EAAEoJ,UAAU,CAACS,QAAQ,EAAEP,eAAe,CAAC;QAC9D;MACF;IACA,KAAK,gBAAgB;MAAE;QACrB,MAAMF,UAAU,GAAGjE,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACsJ,WAAW,CAAC;QACxD,MAAMC,eAAkC,GAAG;UACzCE,MAAM,EAAE;YACNpE;UACF,CAAC;UACDsE,MAAM,EAAEN,UAAU,CAACM,MAAM;UACzBlC,SAAS,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC;UACrBiC,UAAU,EAAExE,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAACqE;QACvD,CAAC;QACD5J,aAAa,CAAC,gBAAgB,EAAEoJ,UAAU,CAACS,QAAQ,EAAEP,eAAe,CAAC;QACrE;MACF;IACA;MACE;EACJ;AACF;AAEA,MAAMQ,mCAAmC,GAAG,MAAAA,CAC1CC,SAA0B,EAC1BC,SAAuB,KACpB;EACH,IAAI3E,yBAAyB,GAC3B2E,SAAS,CAAC7E,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAC/CF,yBAAyB;EAE9B,IAAI4E,kBAAkC;EACtC,IAAIC,SAAS,GAAG,MAAMC,qBAAqB,CAAC,CAAC;EAC7C,IAAID,SAAS,EAAE;IACbD,kBAAkB,GAAGC,SAAS,CAAC7E,yBAAyB,CAAC,IAAI,EAAE;EACjE,CAAC,MAAM;IACL,OAAO,EAAE;EACX;EAEA,QAAQ0E,SAAS;IACf,KAAKhL,eAAe,CAACqL,GAAG;MACtB,OAAO,CACL,GAAGH,kBAAkB,CAAC,SAAS,CAAC,EAChC,GAAGA,kBAAkB,CAAC,SAAS,CAAC,EAChC,GAAGA,kBAAkB,CAAC,SAAS,CAAC,CACjC;IACH,KAAKlL,eAAe,CAACsL,OAAO;MAC1B,OAAOJ,kBAAkB,CAAC,SAAS,CAAC;IACtC,KAAKlL,eAAe,CAACuL,SAAS;MAC5B,OAAOL,kBAAkB,CAAC,SAAS,CAAC;IACtC,KAAKlL,eAAe,CAACwL,WAAW;MAC9B,OAAON,kBAAkB,CAAC,SAAS,CAAC;IACtC;MACE,OAAO,EAAE;EACb;AACF,CAAC;AAED,MAAMO,UAAU,GAAG,MAAAA,CAAOvF,SAAiB,EAAEC,UAAmB,KAAK;EACnE,OAAO,MAAM1E,kBAAkB,CAAC;IAC9ByE,SAAS;IACTC;EACF,CAAC,CAAC;AACJ,CAAC;AAED,MAAMuF,qBAAqB,GAAG,MAC5BC,QAAqC,IACL;EAChC,MAAM;IAAEnH,IAAI,EAAE4E;EAAM,CAAC,GAAGuC,QAAQ;EAChC,MAAMC,eAAe,GAAG,MAAMC,OAAO,CAACC,GAAG,CACvC1C,KAAK,CAAC2C,GAAG,CAAC,MAAOzC,IAAI,IAAK;IAAA,IAAA0C,iBAAA,EAAAC,kBAAA;IACxB,MAAM;MAAE/F,SAAS;MAAEC;IAAW,CAAC,GAAG,MAAMsF,UAAU,CAChDnC,IAAI,CAACpD,SAAS,EACdoD,IAAI,CAACnD,UACP,CAAC;IAED,OAAO;MACLgB,MAAM,EAAEmC,IAAI,CAAC4C,WAAW;MACxBC,UAAU,EAAE,EAAAH,iBAAA,GAAA1C,IAAI,CAACvC,WAAW,cAAAiF,iBAAA,uBAAhBA,iBAAA,CAAkBG,UAAU,KAAI,IAAI;MAChDC,OAAO,EAAE,EAAAH,kBAAA,GAAA3C,IAAI,CAACvC,WAAW,cAAAkF,kBAAA,uBAAhBA,kBAAA,CAAkBG,OAAO,KAAI,IAAI;MAC1ClG,SAAS,EAAEA,SAAS,IAAI,IAAI;MAC5BC,UAAU,EAAEA,UAAU,IAAI,IAAI;MAC9BG,yBAAyB,EAAEgD,IAAI,CAAC+C,mBAAmB;MACnDC,UAAU,EAAEhD,IAAI,CAACgD;IACnB,CAAC;EACH,CAAC,CACH,CAAC;EAED,OAAO;IAAE9H,IAAI,EAAEoH,eAAe;IAAEW,UAAU,EAAEZ,QAAQ,CAACY;EAAW,CAAC;AACnE,CAAC;AAED,OAAO,eAAeC,WAAWA,CAC/BxB,SAA0B,EAC1BC,SAAuB,EACvBwB,KAAa,EACbC,MAAc,EACdpD,IAAa,EACgB;EAC7B,MAAMwB,QAAQ,GAAGG,SAAS,CAACH,QAAQ,IAAI,EAAE;EACzC,MAAMhF,iBAAgC,GAAGmF,SAAS,CAACnF,iBAAiB;EAEpE,MAAMoF,kBAAkB,GAAG,MAAMH,mCAAmC,CAClEC,SAAS,EACTC,SACF,CAAC;EAED,IAAI,CAACC,kBAAkB,IAAIA,kBAAkB,CAAC/B,MAAM,KAAK,CAAC,EAAE;IAC1D,OAAO;MACL3E,IAAI,EAAE,EAAE;MACR+H,UAAU,EAAE;IACd,CAAC;EACH;EACA,IAAIjD,IAAI,EAAE;IACR,MAAMF,KAAkC,GACtC,MAAMlI,gBAAgB,CAACyL,aAAa,CAClC7B,QAAQ,EACRI,kBAAkB,EAClBuB,KAAK,EACLC,MAAM,EACNpD,IACF,CAAC;IAEH,OAAO,MAAMoC,qBAAqB,CAACtC,KAAK,CAAC;EAC3C,CAAC,MAAM;IACL,MAAMA,KAAkC,GACtC,MAAMlI,gBAAgB,CAACyL,aAAa,CAClC7B,QAAQ,EACRI,kBAAkB,EAClBuB,KAAK,EACLC,MACF,CAAC;IAEH,OAAO,MAAMhB,qBAAqB,CAACtC,KAAK,CAAC;EAC3C;AACF;AAEA,OAAO,eAAewD,QAAQA,CAC5BtD,IAAY,EACZ2B,SAAuB,EACvBtF,UAAyB,EACzBmC,QAAmB,EACnB5B,SAAkB,EAClBC,UAAoB,EACD;EACnB,MAAMG,yBAAyB,GAC7B2E,SAAS,CAAC7E,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAC/CF,yBAAyB;EAE9B,MAAMuG,aAAa,GAAG5B,SAAS,CAAC6B,WAAW,GAAG,IAAI,GAAG,KAAK;EAC1D,IAAIzL,cAAc,CAACiI,IAAI,CAAC,EAAE;IACxB,OAAO;MAAEyD,MAAM,EAAE,KAAK;MAAEnI,OAAO,EAAEtD,SAAS;MAAEW,IAAI,EAAEP,YAAY,CAACsL;IAAQ,CAAC;EAC1E;EAEA,IAAIH,aAAa,KAAK,CAAC3G,SAAS,IAAI,CAACA,SAAS,CAAC0D,IAAI,CAAC,EAAE;IACpD,OAAO;MACLmD,MAAM,EAAE,KAAK;MACb9K,IAAI,EAAEP,YAAY,CAACsL,OAAO;MAC1BpI,OAAO,EAAErD,UAAU,CAAC0L,OAAO,CAAC,eAAe,EAAE3D,IAAI;IACnD,CAAC;EACH;EAEA,IAAI4D,WAAW,GAAG,MAAMhK,kBAAkB,CAACoG,IAAI,EAAE2B,SAAS,CAAC9H,UAAU,CAAC;EAEtE,IAAI+J,WAAW,EAAE;IACf;IACA,IAAI;MACF,MAAMC,SAAS,GAAG9E,YAAY,CAACP,QAAQ,IAAI,EAAE,EAAE,CAAA5B,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE0D,IAAI,KAAI,EAAE,CAAC;MAErE,MAAME,MAAM,GAAG,MAAM5I,gBAAgB,CAACkM,eAAe,CACnD9G,yBAAyB,EACzBgD,IAAI,EACJ;QACE+D,EAAE,EAAE,CAAAnH,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE0D,IAAI,KAAI,EAAE;QACzB0D,EAAE,EAAE,CAAAnH,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEyD,IAAI,KAAI;MAC1B,CAAC,EACDqB,SAAS,CAACsC,WAAW,IAAI,KAC3B,CAAC;MACD,IAAI,MAAM,IAAIzD,MAAM,EAAE;QACpB,MAAMtF,IAAqC,GAAGsF,MAAM,CAACtF,IAAI;QACzD,MAAM;UACJI,OAAO,EAAE;YAAE4I,KAAK;YAAEC;UAAS;QAC7B,CAAC,GAAGjJ,IAAI;;QAER;QACAkJ,sBAAsB,CAACP,SAAS,EAAE3I,IAAI,CAACqB,IAAI,EAAES,yBAAyB,CAAC;QAEvE,MAAMqH,WAAW,GAAG,MAAM3H,sBAAsB,CAC9CL,UAAU,EACVmE,MAAM,EACNqD,SAAS,EACT,CAAAjH,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE0D,IAAI,KAAI,EAAE,EACrB,CAAAzD,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEyD,IAAI,KAAI,EAAE,EACtBqB,SAAS,CAAC7E,KAAK,EACf;UACEY,KAAK,EAAExC,IAAI,CAACwC,KAAK;UACjBD,WAAW,EAAEvC,IAAI,CAACuC,WAAW;UAC7BK,MAAM,EAAE,IAAI;UACZD,MAAM,EAAEmC;QACV,CACF,CAAC;QAED,OAAO;UACLyD,MAAM,EAAE,IAAI;UACZ9K,IAAI,EAAEwL,QAAQ,GAAG/L,YAAY,CAACkM,OAAO,GAAGlM,YAAY,CAACmM,OAAO;UAC5DjJ,OAAO,EAAE6I,QAAQ,GACZ,IAAGnE,IAAK,KAAIkE,KAAM,KAAIC,QAAS,EAAC,GAChC,IAAGnE,IAAK,kCAAiC;UAC9C9E,IAAI,EAAE;YACJmC,MAAM,EAAEgH,WAAW;YACnBG,aAAa,EAAE;cACbC,YAAY,EAAEvJ,IAAI,CAACwJ,OAAO;cAC1BzB,UAAU,EAAE/H,IAAI,CAACyJ;YACnB;UACF;QACF,CAAC;MACH,CAAC,MAAM;QACL,OAAO;UACLlB,MAAM,EAAE,KAAK;UACb9K,IAAI,EAAEP,YAAY,CAACsL,OAAO;UAC1BpI,OAAO,EAAE;QACX,CAAC;MACH;IACF,CAAC,CAAC,OAAOH,KAAU,EAAE;MACnB,IAAIwG,SAAS,CAACiD,WAAW,EAAE;QACzB,OAAO;UACLnB,MAAM,EAAE,KAAK;UACb9K,IAAI,EAAEP,YAAY,CAACsL,OAAO;UAC1BmB,IAAI,EAAE,IAAI;UACVvJ,OAAO,EAAE;QACX,CAAC;;QAED;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;MACF,CAAC,MAAM;QACL,OAAO;UACLmI,MAAM,EAAE,KAAK;UACb,GAAGqB,eAAe,CAAC9E,IAAI,EAAE7E,KAAK;QAChC,CAAC;MACH;IACF;EACF,CAAC,MAAM;IACL,IAAIwG,SAAS,CAACiD,WAAW,EAAE;MACzB,OAAO;QACLnB,MAAM,EAAE,KAAK;QACb9K,IAAI,EAAEP,YAAY,CAACsL,OAAO;QAC1BmB,IAAI,EAAE,IAAI;QACVvJ,OAAO,EAAE;MACX,CAAC;IACH,CAAC,MAAM;MACL,OAAO;QACLmI,MAAM,EAAE,KAAK;QACbnI,OAAO,EAAEpD,gBAAgB;QACzBS,IAAI,EAAEP,YAAY,CAACsL;MACrB,CAAC;IACH;EACF;AACF;AAEA,OAAO,eAAeqB,UAAUA,CAC9BvD,QAAgB,EAChB1B,KAAoB,EACpBhD,KAAU,EACVT,UAAyB,EACzB;EACA,MAAMW,yBAAyB,GAC7BF,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAACF,yBAAyB;EAEpE,MAAMwD,MAAM,GAAG,MAAM5I,gBAAgB,CAACoN,cAAc,CAClDhI,yBAAyB,EACzB8C,KACF,CAAC;;EAED;EACAmF,MAAM,CAACC,IAAI,CAAC1E,MAAM,CAAC,CAAC9H,OAAO,CAAE8D,iBAAiB,IAAK;IACjDH,UAAU,CAACG,iBAAiB,CAAC,CAACC,KAAK,IAAI+D,MAAM,CAAChE,iBAAiB,CAAC;IAEhE,IAAIH,UAAU,CAACG,iBAAiB,CAAC,CAACC,KAAK,KAAK,CAAC,EAAE;MAC7C,OAAOJ,UAAU,CAACG,iBAAiB,CAAC;IACtC;EACF,CAAC,CAAC;EAEF,MAAMwB,cAAc,GAAG,CAAC,MAAMmH,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC;;EAE1D;EACA,IAAIjH,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EAEnC,MAAMgK,cAAc,GAAG,MAAMtD,qBAAqB,CAAC,CAAC;EACpD,IAAIsD,cAAc,EAAE;IAClB,MAAMC,UAA0B,GAC9BD,cAAc,CAACpI,yBAAyB,CAAC;IAC3CqI,UAAU,CAACC,OAAO,CAACzM,IAAI,CAACmE,yBAAyB,CAAC;IAElD,MAAMkB,OAAO,CAACC,aAAa,CACzB3G,yBAAyB,EACzB4G,IAAI,CAACC,SAAS,CAAC;MACb,GAAG+G,cAAc;MACjB,CAACpI,yBAAyB,GAAGqI;IAC/B,CAAC,CACH,CAAC;EACH;EAEA,IAAIE,kBAAkB,GAAGvH,cAAc,CAAChB,yBAAyB,CAAC,IAAI,CAAC,CAAC;EAExE,MAAMkB,OAAO,CAACC,aAAa,CACzB1G,6BAA6B,EAC7B2G,IAAI,CAACC,SAAS,CAAC;IACb,GAAGL,cAAc;IACjB,CAAChB,yBAAyB,GAAG;MAAE,GAAGuI,kBAAkB;MAAElJ;IAAW;EACnE,CAAC,CACH,CAAC;;EAED;EACA,MAAMU,WAAW,GAAG+C,KAAK,CAAC2C,GAAG,CAAEzC,IAAI,KAAM;IAAEpC,SAAS,EAAEoC;EAAK,CAAC,CAAC,CAAC;EAC9DjC,gBAAgB,CAAC,gBAAgB,EAAEjB,KAAK,EAAEC,WAAW,CAAC;AACxD;AAEA,OAAO,eAAeqH,sBAAsBA,CAC1CP,SAAkB,EAClBrH,iBAAyB,EACzBQ,yBAAiC,EACjC;EACA,IAAIkB,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMgK,cAAc,GAAG,MAAMtD,qBAAqB,CAAC,CAAC;EAEpD,IAAIsD,cAAc,EAAE;IAClB,MAAMC,UAA0B,GAC9BD,cAAc,CAACpI,yBAAyB,CAAC;IAC3C,IAAI6G,SAAS,EAAE;MACbwB,UAAU,CAAC1I,OAAO,CAAC9D,IAAI,CAAC2D,iBAAiB,CAAC;IAC5C,CAAC,MAAM;MACL6I,UAAU,CAACG,OAAO,CAAC3M,IAAI,CAAC2D,iBAAiB,CAAC;IAC5C;IAEA,MAAM0B,OAAO,CAACC,aAAa,CACzB3G,yBAAyB,EACzB4G,IAAI,CAACC,SAAS,CAAC;MACb,GAAG+G,cAAc;MACjB,CAACpI,yBAAyB,GAAGqI;IAC/B,CAAC,CACH,CAAC;EACH;AACF;AAEA,OAAO,eAAeI,6BAA6BA,CACjD5B,SAAkB,EAClB7G,yBAAiC,EACjC;EACA,IAAIkB,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMgK,cAAc,GAAG,MAAMtD,qBAAqB,CAAC,CAAC;EAEpD,IAAIsD,cAAc,EAAE;IAClB,MAAMC,UAAU,GAAGD,cAAc,CAACpI,yBAAyB,CAAC;IAC5D,IAAIqI,UAAU,EAAE;MACd,IAAIxB,SAAS,EAAE;QACbwB,UAAU,CAAC1I,OAAO,CAAC9D,IAAI,CAACmE,yBAAyB,CAAC;QAClDqI,UAAU,CAACC,OAAO,GAAG,EAAE;MACzB,CAAC,MAAM;QACLD,UAAU,CAACG,OAAO,CAAC3M,IAAI,CAACmE,yBAAyB,CAAC;QAClDqI,UAAU,CAACC,OAAO,GAAG,EAAE;MACzB;MAEA,MAAMpH,OAAO,CAACC,aAAa,CACzB3G,yBAAyB,EACzB4G,IAAI,CAACC,SAAS,CAAC;QACb,GAAG+G,cAAc;QACjB,CAACpI,yBAAyB,GAAGqI;MAC/B,CAAC,CACH,CAAC;IACH;EACF;AACF;AAEA,OAAO,MAAMK,WAAW,GAAG,MACzB/D,SAAuB,IACA;EACvB,IAAI3E,yBAAyB,GAC3B2E,SAAS,CAAC7E,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAC/CF,yBAAyB;EAC9B,MAAMoI,cAAc,GAAG,MAAMtD,qBAAqB,CAAC,CAAC;EACpD,MAAM6D,aAAa,GAAG;IACpB,CAACjP,eAAe,CAACqL,GAAG,GAAG,CAAC;IACxB,CAACrL,eAAe,CAACsL,OAAO,GAAG,CAAC;IAC5B,CAACtL,eAAe,CAACuL,SAAS,GAAG,CAAC;IAC9B,CAACvL,eAAe,CAACwL,WAAW,GAAG;EACjC,CAAC;EACD,MAAM5J,KAAU,GAAG,CAAC,CAAC;EACrB,IAAI8M,cAAc,EAAE;IAClB,MAAMC,UAAU,GAAGD,cAAc,CAACpI,yBAAyB,CAAC;IAC5D,IAAIqI,UAAU,EAAE;MACd,MAAM1I,OAAO,GAAG0I,UAAU,CAAC1I,OAAO;MAClC,MAAM6I,OAAO,GAAGH,UAAU,CAACG,OAAO;MAClC,MAAMF,OAAO,GAAGD,UAAU,CAACC,OAAO;MAClChN,KAAK,CAAC5B,eAAe,CAACqL,GAAG,CAAC,GAAG,CAAC,GAAGpF,OAAO,EAAE,GAAG6I,OAAO,EAAE,GAAGF,OAAO,CAAC;MACjE,IAAIA,OAAO,CAACzF,MAAM,GAAG,CAAC,EAAEvH,KAAK,CAAC5B,eAAe,CAACsL,OAAO,CAAC,GAAGsD,OAAO;MAChE,IAAI3I,OAAO,CAACkD,MAAM,GAAG,CAAC,EAAEvH,KAAK,CAAC5B,eAAe,CAACuL,SAAS,CAAC,GAAGtF,OAAO;MAClE,IAAI6I,OAAO,CAAC3F,MAAM,GAAG,CAAC,EAAEvH,KAAK,CAAC5B,eAAe,CAACwL,WAAW,CAAC,GAAGsD,OAAO;MAEpE,MAAMhF,MAAM,GAAG,MAAM5I,gBAAgB,CAACgO,mBAAmB,CAACtN,KAAK,CAAC;MAEhE,OAAO;QAAE,GAAGqN,aAAa;QAAE,GAAGnF;MAAO,CAAC;IACxC,CAAC,MAAM;MACL,OAAOmF,aAAa;IACtB;EACF,CAAC,MAAM;IACL,OAAOA,aAAa;EACtB;AACF,CAAC;AAED,OAAO,MAAME,eAAe,GAAG,MAAO7I,yBAAiC,IAAK;EAC1E,IAAIkB,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EAEnC,MAAM0K,QAAa,GAAG,EAAE;;EAExB;EACA,MAAMC,UAAU,GAAG,CAAC,MAAMjE,qBAAqB,CAAC,CAAC,KAAK,CAAC,CAAC;EACxD,IAAIiE,UAAU,EAAE;IACd,OAAOA,UAAU,CAAC/I,yBAAyB,CAAC;IAE5C8I,QAAQ,CAACjN,IAAI,CACXqF,OAAO,CAACC,aAAa,CACnB3G,yBAAyB,EACzB4G,IAAI,CAACC,SAAS,CAAC0H,UAAU,CAC3B,CACF,CAAC;EACH;;EAEA;EACA,MAAMC,WAAW,GAAG,CAAC,MAAM/H,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC;EACvD,IAAI+H,WAAW,EAAE;IACf,OAAOA,WAAW,CAAChJ,yBAAyB,CAAC;IAE7C8I,QAAQ,CAACjN,IAAI,CACXqF,OAAO,CAACC,aAAa,CACnB1G,6BAA6B,EAC7B2G,IAAI,CAACC,SAAS,CAAC2H,WAAW,CAC5B,CACF,CAAC;EACH;EACA,OAAOzD,OAAO,CAACC,GAAG,CAACsD,QAAQ,CAAC;AAC9B,CAAC;AAED,OAAO,eAAehE,qBAAqBA,CAAA,EAAgD;EACzF,IAAI5D,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMgK,cAAc,GAAG,MAAMlH,OAAO,CAAC0C,aAAa,CAACpJ,yBAAyB,CAAC;EAC7E,IAAI4N,cAAc,EAAE;IAClB,OAAOhH,IAAI,CAACyC,KAAK,CAACuE,cAAc,CAAC;EACnC,CAAC,MAAM;IACL,OAAO,IAAI;EACb;AACF;AAEA,OAAO,eAAeD,mBAAmBA,CAAA,EAAkC;EACzE,IAAIjH,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMgK,cAAc,GAAG,MAAMlH,OAAO,CAAC0C,aAAa,CAChDnJ,6BACF,CAAC;EACD,IAAI2N,cAAc,EAAE;IAClB,OAAOhH,IAAI,CAACyC,KAAK,CAACuE,cAAc,CAAC;EACnC,CAAC,MAAM;IACL,OAAO,IAAI;EACb;AACF;AAEA,OAAO,MAAMN,eAAe,GAAGA,CAC7B9E,IAAY,EACZ7E,KAGC,KAC2C;EAC5C,QAAQA,KAAK,CAAC8K,SAAS;IACrB,KAAKpO,YAAY,CAACqO,2BAA2B;MAC3C,OAAO;QACLvN,IAAI,EAAEP,YAAY,CAACsL,OAAO;QAC1BpI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAACqO,2BAA2B,CAC7E;MACL,CAAC;IACH,KAAKrO,YAAY,CAACsO,wBAAwB;MACxC,OAAO;QACLxN,IAAI,EAAEP,YAAY,CAACsL,OAAO;QAC1BpI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAACsO,wBAAwB,CAC1E;MACL,CAAC;IACH,KAAKtO,YAAY,CAACuO,mBAAmB;MACnC,OAAO;QACLzN,IAAI,EAAEP,YAAY,CAACsL,OAAO;QAC1BpI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAACuO,mBAAmB,CACrE;MACL,CAAC;IACH,KAAKvO,YAAY,CAACwO,8BAA8B;MAC9C,OAAO;QACL1N,IAAI,EAAEP,YAAY,CAACsL,OAAO;QAC1BpI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAACwO,8BAA8B,CAChF;MACL,CAAC;IACH,KAAKxO,YAAY,CAACyO,yBAAyB;MACzC,OAAO;QACL3N,IAAI,EAAEP,YAAY,CAACsL,OAAO;QAC1BpI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAACyO,yBAAyB,CAC3E;MACL,CAAC;IACH,KAAKzO,YAAY,CAAC0O,yBAAyB;MACzC,OAAO;QACL5N,IAAI,EAAEP,YAAY,CAACkM,OAAO;QAC1BhJ,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAAC0O,yBAAyB,CAC3E;MACL,CAAC;IACH,KAAK1O,YAAY,CAAC2O,mBAAmB;MACnC,OAAO;QACL7N,IAAI,EAAEP,YAAY,CAACkM,OAAO;QAC1BhJ,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAAC2O,mBAAmB,CACrE;MACL,CAAC;IACH,KAAK3O,YAAY,CAAC4O,0BAA0B;MAC1C,OAAO;QACL9N,IAAI,EAAEP,YAAY,CAACkM,OAAO;QAC1BhJ,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAAC4O,0BAA0B,CAC5E;MACL,CAAC;IACH;MACE,OAAO;QACL9N,IAAI,EAAEP,YAAY,CAACsL,OAAO;QAC1BpI,OAAO,EAAE;MACX,CAAC;EACL;AACF,CAAC;AAED,OAAO,MAAMoL,WAAW,GAAIrK,UAAyB,IAAe;EAClE,MAAMsK,uBAAuB,GAAG1B,MAAM,CAACC,IAAI,CAAC7I,UAAU,CAAC,CACpDuK,MAAM,CAAEC,iBAAyB,IAAK;IACrC,MAAM7G,IAAI,GAAG3D,UAAU,CAACwK,iBAAiB,CAAC;IAC1C,IAAI7G,IAAI,CAACvD,KAAK,GAAG,CAAC,EAAE,OAAO,IAAI;IAC/B,OAAO,KAAK;EACd,CAAC,CAAC,CACDgG,GAAG,CAAEb,kBAAkB,IAAKA,kBAAkB,CAAC;EAElD,OAAO+E,uBAAuB;AAChC,CAAC;AAED,OAAO,SAASG,cAAcA,CAC5BC,cAAyB,EACzBpO,IAA2B,EAChB;EACX,OAAOoO,cAAc,CAACH,MAAM,CACzBI,GAAG,IAAKtG,OAAO,CAACsG,GAAG,CAACrK,OAAO,CAAC,MAAMhE,IAAI,KAAK,SAAS,GAAG,IAAI,GAAG,KAAK,CACtE,CAAC;AACH;AAEA,OAAO,eAAesO,cAAcA,CAACtF,SAAuB,EAAE;EAC5D,MAAMH,QAAQ,GAAGG,SAAS,CAACH,QAAQ,IAAI,EAAE;EACzC,MAAM0F,2BAA2B,GAAG,MAAMzF,mCAAmC,CAC3E/K,eAAe,CAACuL,SAAS,EACzBN,SACF,CAAC;EACD,MAAMwF,6BAA6B,GACjC,MAAM1F,mCAAmC,CACvC/K,eAAe,CAACwL,WAAW,EAC3BP,SACF,CAAC;EAEH,IACE,CAAC,CAACuF,2BAA2B,IAC3BA,2BAA2B,CAACrH,MAAM,KAAK,CAAC,MACzC,CAACsH,6BAA6B,IAC7BA,6BAA6B,CAACtH,MAAM,KAAK,CAAC,CAAC,EAC7C;IACA;EACF;EAEA,MAAM9C,WAAkB,GAAG,EAAE;EAE7B,IAAImK,2BAA2B,IAAIA,2BAA2B,CAACrH,MAAM,EAAE;IACrE,IAAIuH,WAAW,GAAG,IAAI;IACtB,IAAIhE,MAAM,GAAG,CAAC;IACd,MAAMD,KAAK,GAAG5L,eAAe;IAC7B,IAAIuI,KAAkC,GAAG;MAAE5E,IAAI,EAAE,EAAE;MAAE+H,UAAU,EAAE;IAAE,CAAC;IAEpE,GAAG;MACDnD,KAAK,GAAG,MAAMlI,gBAAgB,CAACyL,aAAa,CAC1C7B,QAAQ,EACR0F,2BAA2B,EAC3B/D,KAAK,EACLC,MACF,CAAC;MACDtD,KAAK,CAAC5E,IAAI,CAACxC,OAAO,CAAEsH,IAAI,IAAK;QAC3BjD,WAAW,CAAClE,IAAI,CAAC;UACf+E,SAAS,EAAEoC,IAAI,CAAC4C;QAClB,CAAC,CAAC;MACJ,CAAC,CAAC;MAEFQ,MAAM,IAAID,KAAK;MACfiE,WAAW,GAAGtH,KAAK,CAACmD,UAAU,GAAGG,MAAM,GAAG,CAAC,GAAG,CAAC;IACjD,CAAC,QAAQgE,WAAW;EACtB;EACA,IAAID,6BAA6B,IAAIA,6BAA6B,CAACtH,MAAM,EAAE;IACzE,IAAIuH,WAAW,GAAG,IAAI;IACtB,IAAIhE,MAAM,GAAG,CAAC;IACd,MAAMD,KAAK,GAAG5L,eAAe;IAC7B,IAAIuI,KAAkC,GAAG;MAAE5E,IAAI,EAAE,EAAE;MAAE+H,UAAU,EAAE;IAAE,CAAC;IAEpE,GAAG;MACDnD,KAAK,GAAG,MAAMlI,gBAAgB,CAACyL,aAAa,CAC1C7B,QAAQ,EACR2F,6BAA6B,EAC7BhE,KAAK,EACLC,MACF,CAAC;MACDtD,KAAK,CAAC5E,IAAI,CAACxC,OAAO,CAAEsH,IAAI,IAAK;QAC3BjD,WAAW,CAAClE,IAAI,CAAC;UACf+E,SAAS,EAAEoC,IAAI,CAAC4C;QAClB,CAAC,CAAC;MACJ,CAAC,CAAC;MAEFQ,MAAM,IAAID,KAAK;MACfiE,WAAW,GAAGtH,KAAK,CAACmD,UAAU,GAAGG,MAAM,GAAG,CAAC,GAAG,CAAC;IACjD,CAAC,QAAQgE,WAAW;EACtB;EACArJ,gBAAgB,CAAC,gBAAgB,EAAE4D,SAAS,CAAC7E,KAAK,EAAEC,WAAW,CAAC;EAChE;AACF"}
1
+ {"version":3,"names":["BarCodeScanner","ExpoBarcodeTypes","SCAN_STATUS","SummaryPageTabs","DeliverState","jsonLogic","getBaseETResponse","EntityCode","ExecutionTaskID","getApiResponse","parseBody","parseKeyValue","Logger","LOG_TYPE","REASON_NOT_USED","Storage","BULK_DATA_LIMIT","SCAN_MERGED_OBJ_ID_OUTPUT","SHARED_PREFERENCE_SCAN_OUTPUT","RouteParams","dispatchEvent","DispatchExecutor","WIErrorCodes","ErrorCodeMessages","isEmptyOrBlank","EMPTY_AWB","ER_MISSING","INVALID_SHIPMENT","getDefaultERCLabel","SnackBarType","getBarCodeTypes","input","barCodeType","scannedInput","scanType","forEach","type","QRCODE","push","Constants","BarCodeType","qr","aztec","codabar","code128","code39","code93","datamatrix","ean13","ean8","itf14","pdf417","upc_e","checkForValidation","validation","selectedIndex","logic","regex","RegExp","test","api","apiData","errorJsonPath","responseJsonPath","uri","httpMethod","timeout","headers","requestBody","parsedRequestBody","pathParams","queryParams","apiResponse","apply","responseJsonLogic","data","error","getInstance","logEvent","message","SDK_ERROR","getShipmentData","scansMap","pendingShipments","scannedShipments","key","value","entries","scanStatus","undefined","SCANNED","FAILED","getScannedItemCount","getMappingCount","scanOutput","wiMappingUpdate","mwId","mergedObjectiveId","count","getUpdatedScanETOutput","success","eventCode","reasonCode","route","scannedData","prefixedMergedObjectiveId","params","ROOT_META_DATA","previousMWID","previousMergedObjectiveId","output","SCAN","_scannedData","groupId","displayInfo","jobId","shipmentFlow","scanValue","scanId","isScan","triggerScanEvent","allScansOutput","getScanMappedOutput","storage","setSharedItem","JSON","stringify","getScanETOutput","mergeScannedOutput","ercItems","defaultERC","deliverState","isPartial","CANCELLED","DELIVERE_LATER","DELIVER_NOW","getEventType","getScannedItems","items","validated","timestamp","Date","now","isETCompleted","scanMode","isMultiObjectiveEnable","scannedShipmentCount","singleModeCount","allowMultiObjectivePartial","_scannedShipmentCount","length","scans","isReplacement","scan","selectedEventCode","selectedReason","_scansMap$get","_scansMap$get2","get","code","eventList","result","find","Boolean","mergedScanOutput","getSharedItem","parse","etOutput","nextStates","NEXT_STATES","eventOutputData","meta","etData","endTime","taskId","customData","customEventsData","taskName","fetchMergedObjectiveIdBasedOnStatus","activeTab","scanProps","mergedObjectiveIds","filterIds","getScanMergedObjectID","ALL","PENDING","DELIVERED","UNDELIVERED","fetchLabel","modifyDisplayScanData","response","updatedScanData","Promise","all","map","_scan$displayInfo","_scan$displayInfo2","scannableId","clientName","orderId","originalMergedObjId","lastStatus","eCode","rCode","totalCount","getScanData","limit","offset","filterWFIData","addScans","isErcSelector","ercSelector","status","FAILURE","replace","isValidated","eventType","updateWIMapping","ec","rc","scanToMerge","title","subTitle","updateSharedPreference","_scanOutput","WARNING","SUCCESS","shipmentCount","scannedCount","scanned","total","exitOnError","exit","getErrorMessage","removeScan","removeShipment","Object","keys","getScanMergedOutput","mergedIdOutput","_mergedIds","pending","outputAtPrefixedId","failure","updatePendingSharedPreference","getTabCount","defaultResult","getWFICountByMWIIds","clearScanOutput","promises","scanRecord","scanOutputs","errorCode","ScannableIdAlreadyCompleted","ScannableIdNotInDispatch","ScannableIdNotReady","DifferentGroupUpdateNotAllowed","ObjectiveAndJobWFMismatch","ScannableIdAlreadyUpdated","JobAlreadyCompleted","ScannableIdPartOfAnotherMO","getSplitIds","splitMergedObjectiveIds","filter","mergedObjectiveID","filterERCItems","eventCodeItems","erc","resetObjective","deliveredMergedObjectiveIds","undeliveredMergedObjectiveIds","hasNextPage"],"sources":["utils.ts"],"sourcesContent":["import { BarCodeScanner } from 'expo-barcode-scanner';\nimport {\n ADD_SCAN,\n ExpoBarcodeTypes,\n MergedScan,\n SCANNED_RECORD,\n SCAN_MERGED_OBJ_ID_INTEFACE,\n SCAN_STATUS,\n SHARED_PREF_SCAN_OUTPUT_INTERFACE,\n SummaryDisplayData,\n SummaryPageTabs,\n TabRecord,\n} from './interfaces';\nimport {\n API,\n DefaultERC,\n DeliverState,\n IWIMappingUpdate,\n ScanData,\n ScanMode,\n ScannerInput,\n ScannerOutput,\n ScannerType,\n Validation,\n} from './ScanSchema';\nimport * as jsonLogic from 'json-logic-js';\nimport type { ercItem } from './sub_components/ERDropDown';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport {\n APIData,\n getApiResponse,\n parseBody,\n parseKeyValue,\n} from '../../../utils/ApiUtils';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { REASON_NOT_USED } from '../../../constants/constants';\nimport Storage from '../../../utils/storage';\nimport {\n BULK_DATA_LIMIT,\n SCAN_MERGED_OBJ_ID_OUTPUT,\n SHARED_PREFERENCE_SCAN_OUTPUT,\n} from '../../../manager/syncmanager/constants';\nimport { RouteParams } from '../../../ui/uiConfig/RouteParams';\nimport dispatchEvent from '../../../events/EventDispatcher';\nimport {\n DispatchExecutor,\n IDispatch,\n WIErrorCodes,\n ErrorCodeMessages,\n} from '@os1-platform/platform-coreos-execution-engine-sdk';\nimport { isEmptyOrBlank } from '../../../utils/utils';\nimport { EMPTY_AWB, ER_MISSING, INVALID_SHIPMENT } from './constants';\nimport { onScanEvent, onScanRemoveEvent } from '../../../models/DispatchModels';\nimport { BaseETResponse } from '../ExecutionTasksIndex';\nimport { eventType } from '../../../events/interface';\nimport { getDefaultERCLabel } from './sub_components/DropDownUtils';\nimport { SnackBarType } from '../../../components/widgets/SnackBarCustom';\n\nexport function getBarCodeTypes(input: ScannerInput): any[] {\n const barCodeType: any[] = [];\n const {\n scannedInput: { scanType },\n } = input;\n scanType.forEach((type: ScannerType) => {\n switch (type) {\n case ExpoBarcodeTypes.QRCODE:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.qr);\n break;\n case ExpoBarcodeTypes.aztec:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.aztec);\n break;\n case ExpoBarcodeTypes.codabar:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.codabar);\n break;\n case ExpoBarcodeTypes.code128:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code128);\n break;\n case ExpoBarcodeTypes.code39:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code39);\n break;\n case ExpoBarcodeTypes.code93:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code93);\n break;\n case ExpoBarcodeTypes.datamatrix:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.datamatrix);\n break;\n case ExpoBarcodeTypes.ean13:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.ean13);\n break;\n case ExpoBarcodeTypes.ean8:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.ean8);\n break;\n case ExpoBarcodeTypes.itf14:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.itf14);\n break;\n case ExpoBarcodeTypes.pdf417:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.pdf417);\n break;\n case ExpoBarcodeTypes.upc_e:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.upc_e);\n break;\n\n default:\n break;\n }\n });\n return barCodeType;\n}\n\nexport async function checkForValidation(\n scannedInput: string,\n validation: Validation\n): Promise<boolean> {\n // Scans Array\n if (validation.selectedIndex === 0) {\n return true;\n }\n // Validation Regex\n else if (\n validation.selectedIndex === 1 &&\n typeof validation.logic === 'string'\n ) {\n const regex = new RegExp(validation.logic);\n return regex.test(scannedInput);\n }\n // API\n else if (\n validation.selectedIndex === 2 &&\n typeof validation.logic === 'object'\n ) {\n try {\n //@ts-ignore\n const api: API = validation.logic;\n const apiData: APIData = {\n errorJsonPath: '',\n responseJsonPath: '',\n uri: api.uri,\n httpMethod: api.httpMethod,\n timeout: api.timeout,\n headers: api.headers,\n };\n if (api.requestBody) {\n const parsedRequestBody = parseBody(api.requestBody, scannedInput);\n apiData.requestBody = parsedRequestBody;\n }\n if (api.pathParams) {\n parseKeyValue(api.pathParams, scannedInput);\n apiData.pathParams = api.pathParams;\n }\n if (api.queryParams) {\n parseKeyValue(api.queryParams, scannedInput);\n apiData.queryParams = api.queryParams;\n }\n const apiResponse = await getApiResponse(apiData);\n\n return jsonLogic.apply(\n <jsonLogic.RulesLogic>api.responseJsonLogic,\n apiResponse.data\n );\n } catch (error: any) {\n Logger.getInstance().logEvent(\n '~ checkForValidation',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n } else {\n return false;\n }\n}\n\nexport function getShipmentData(\n selectedIndex: number,\n scansMap: Map<string, MergedScan>\n): [string[], string[]] {\n const pendingShipments: string[] = [];\n const scannedShipments: string[] = [];\n //@ts-ignore\n for (let [key, value] of scansMap.entries()) {\n /**\n * If scanStatus is undefined then push the shipment to pending.\n * If scanStatus is not undefined:\n * Then if successfully scanned, move to scannedShipments array.\n * Else do nothing.\n */\n if (value?.scanStatus != undefined) {\n if (value?.scanStatus === SCAN_STATUS.SCANNED) {\n scannedShipments.push(key);\n } else if (value?.scanStatus === SCAN_STATUS.FAILED) {\n pendingShipments.push(key);\n }\n } else if (selectedIndex === 0) {\n pendingShipments.push(key);\n }\n }\n return [pendingShipments, scannedShipments];\n}\n\nexport function getScannedItemCount(scansMap: Map<string, MergedScan>): number {\n let scannedShipments = 0;\n if (scansMap) {\n for (let [, value] of scansMap.entries()) {\n if (value.scanStatus === SCAN_STATUS.SCANNED) {\n scannedShipments++;\n }\n }\n return scannedShipments;\n }\n return scannedShipments;\n}\n\nexport function getMappingCount(\n scanOutput: ScannerOutput,\n wiMappingUpdate: IWIMappingUpdate\n) {\n const { mwId: mergedObjectiveId } = wiMappingUpdate.data;\n\n if (scanOutput[mergedObjectiveId]) {\n return scanOutput[mergedObjectiveId].count + 1;\n } else {\n return 1;\n }\n}\n\nexport async function getUpdatedScanETOutput(\n scanOutput: ScannerOutput,\n wiMappingUpdate: IWIMappingUpdate,\n success: boolean,\n eventCode: string,\n reasonCode: string,\n route: any,\n scannedData: any\n) {\n const prefixedMergedObjectiveId =\n route.params[RouteParams.ROOT_META_DATA].prefixedMergedObjectiveId;\n const { mwId: mergedObjectiveId, previousMWID: previousMergedObjectiveId } =\n wiMappingUpdate.data;\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n success,\n eventCode,\n reasonCode,\n [mergedObjectiveId],\n ExecutionTaskID.SCAN\n );\n const _scannedData: any = [\n {\n groupId: scannedData.displayInfo.groupId,\n jobId: scannedData.jobId,\n shipmentFlow: scannedData.displayInfo.shipmentFlow,\n scanValue: scannedData.scanId,\n },\n ];\n\n scannedData?.isScan\n ? triggerScanEvent('ON_SCAN', route, _scannedData, output)\n : null;\n\n if (scanOutput[previousMergedObjectiveId]) {\n scanOutput[previousMergedObjectiveId].count -= 1;\n\n if (scanOutput[previousMergedObjectiveId].count === 0) {\n delete scanOutput[previousMergedObjectiveId];\n }\n }\n const count = getMappingCount(scanOutput, wiMappingUpdate);\n\n if (!scanOutput[mergedObjectiveId]) {\n scanOutput[mergedObjectiveId] = { output, count };\n } else {\n scanOutput[mergedObjectiveId].count = count;\n }\n\n // SAVE IN SHARED PREFERENCE\n let allScansOutput = (await getScanMappedOutput()) || {};\n let storage = Storage.getInstance();\n await storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify({\n ...allScansOutput,\n [prefixedMergedObjectiveId]: scanOutput,\n })\n );\n return scanOutput;\n}\n\nexport async function getScanETOutput(\n mergeScannedOutput: ScannerOutput,\n mergedObjectiveId: Array<string>,\n ercItems: ercItem[],\n defaultERC: DefaultERC,\n deliverState: DeliverState,\n isPartial: boolean,\n count: number\n): Promise<ScannerOutput> {\n switch (deliverState) {\n case DeliverState.CANCELLED: {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n false,\n defaultERC.eventCode,\n defaultERC.reasonCode || '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n return {\n [mergedObjectiveId[0]]: {\n output,\n count,\n },\n };\n }\n case DeliverState.DELIVERE_LATER: {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n false,\n REASON_NOT_USED,\n '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n mergeScannedOutput['default'] = {\n output,\n count,\n };\n return mergeScannedOutput;\n }\n case DeliverState.DELIVER_NOW: {\n if (isPartial) {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n getEventType(ercItems, defaultERC.eventCode),\n defaultERC.eventCode,\n defaultERC.reasonCode || '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n\n mergeScannedOutput['default'] = { output, count };\n return mergeScannedOutput;\n } else {\n return mergeScannedOutput;\n }\n }\n default: {\n return mergeScannedOutput;\n }\n }\n}\n\nexport function getScannedItems(scanValue: MergedScan): ScanData[] {\n const items: ScanData[] = [];\n if (scanValue.scanStatus === SCAN_STATUS.SCANNED)\n items.push({\n value: scanValue.value,\n validated: scanValue.validated || false,\n timestamp: scanValue.timestamp || Date.now(),\n });\n\n return items;\n}\n\nexport function isETCompleted(\n validation: Validation,\n scansMap: Map<string, MergedScan>,\n scanMode: ScanMode,\n isMultiObjectiveEnable: boolean,\n scannedShipmentCount?: number,\n singleModeCount?: number,\n allowMultiObjectivePartial?: boolean\n): boolean {\n if (scanMode === 'SINGLE' || isMultiObjectiveEnable) {\n let _scannedShipmentCount = scannedShipmentCount || 0;\n\n if (!scannedShipmentCount) {\n const [, scannedShipments] = getShipmentData(\n validation.selectedIndex,\n scansMap\n );\n _scannedShipmentCount = scannedShipments.length;\n }\n\n if (allowMultiObjectivePartial) {\n return _scannedShipmentCount >= 1;\n }\n\n return singleModeCount === _scannedShipmentCount;\n } else {\n // Scans Array\n if (validation.selectedIndex === 0) {\n //@ts-ignore\n const scans: string[] = validation.logic;\n if (!scannedShipmentCount) {\n const [, scannedShipments] = getShipmentData(\n validation.selectedIndex,\n scansMap\n );\n return scans.length === scannedShipments.length;\n }\n\n return scans.length === scannedShipmentCount;\n }\n // Validation Regex\n else if (\n (validation.selectedIndex === 1 &&\n typeof validation.logic === 'string') ||\n (validation.selectedIndex === 2 && typeof validation.logic === 'object')\n ) {\n return true;\n } else {\n return false;\n }\n }\n}\n\nexport function isReplacement(\n scan: string,\n scansMap: Map<string, MergedScan>,\n selectedEventCode: ercItem | undefined,\n selectedReason: ercItem | undefined\n) {\n if (\n //(selectedEventCode || selectedReason) &&\n //scansMap.get(scan)?.eventCode &&\n scansMap.get(scan)?.eventCode !== selectedEventCode?.code || //scansMap.get(scan)?.reasonCode !== undefined &&\n scansMap.get(scan)?.reasonCode !== selectedReason?.code\n ) {\n return true;\n }\n return false;\n}\n\nexport function getEventType(\n eventList: Array<ercItem>,\n eventCode: string\n): boolean {\n const result = eventList.find((code) => code.code === eventCode);\n if (result) {\n return Boolean(result.success);\n } else {\n return false;\n }\n}\n\nexport async function getScanMappedOutput(): Promise<SHARED_PREF_SCAN_OUTPUT_INTERFACE> {\n let storage = Storage.getInstance();\n const mergedScanOutput = await storage.getSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT\n );\n if (mergedScanOutput) {\n return JSON.parse(mergedScanOutput);\n } else {\n return {};\n }\n}\n\nexport function triggerScanEvent(\n type: eventType,\n route: any,\n scannedData: any,\n etOutput?: BaseETResponse\n) {\n switch (type) {\n case 'ON_SCAN': {\n const nextStates = route.params[RouteParams.NEXT_STATES];\n const eventOutputData: onScanEvent = {\n meta: etOutput?.meta || {},\n etData: {\n eventCode: etOutput?.eventCode || '',\n reasonCode: etOutput?.reasonCode || '',\n success: etOutput?.success || false,\n endTime: Date.now(),\n scannedData,\n },\n taskId: nextStates.taskId,\n timestamp: Date.now(),\n customData: route.params[RouteParams.ROOT_META_DATA].customEventsData,\n };\n dispatchEvent('ON_SCAN', nextStates.taskName, eventOutputData);\n break;\n }\n case 'ON_SCAN_REMOVE': {\n const nextStates = route.params[RouteParams.NEXT_STATES];\n const eventOutputData: onScanRemoveEvent = {\n etData: {\n scannedData,\n },\n taskId: nextStates.taskId,\n timestamp: Date.now(),\n customData: route.params[RouteParams.ROOT_META_DATA].customEventsData,\n };\n dispatchEvent('ON_SCAN_REMOVE', nextStates.taskName, eventOutputData);\n break;\n }\n default:\n break;\n }\n}\n\nconst fetchMergedObjectiveIdBasedOnStatus = async (\n activeTab: SummaryPageTabs,\n scanProps: ScannerInput\n) => {\n let prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n\n let mergedObjectiveIds: SCANNED_RECORD;\n let filterIds = await getScanMergedObjectID();\n if (filterIds) {\n mergedObjectiveIds = filterIds[prefixedMergedObjectiveId] || [];\n } else {\n return [];\n }\n\n switch (activeTab) {\n case SummaryPageTabs.ALL:\n return [\n ...mergedObjectiveIds['pending'],\n ...mergedObjectiveIds['success'],\n ...mergedObjectiveIds['failure'],\n ];\n case SummaryPageTabs.PENDING:\n return mergedObjectiveIds['pending'];\n case SummaryPageTabs.DELIVERED:\n return mergedObjectiveIds['success'];\n case SummaryPageTabs.UNDELIVERED:\n return mergedObjectiveIds['failure'];\n default:\n return [];\n }\n};\n\nconst fetchLabel = async (eventCode: string, reasonCode?: string) => {\n return await getDefaultERCLabel({\n eventCode,\n reasonCode,\n });\n};\n\nconst modifyDisplayScanData = async (\n response: IDispatch.IQueryWFIResponse\n): Promise<SummaryDisplayData> => {\n const { data: scans } = response;\n const updatedScanData = await Promise.all(\n scans.map(async (scan) => {\n const { eventCode, reasonCode } = await fetchLabel(\n scan.eventCode,\n scan.reasonCode\n );\n\n return {\n scanId: scan.scannableId,\n clientName: scan.displayInfo?.clientName || '--',\n orderId: scan.displayInfo?.orderId || '--',\n eventCode: eventCode || '--',\n reasonCode: reasonCode || '--',\n prefixedMergedObjectiveId: scan.originalMergedObjId,\n lastStatus: scan.lastStatus,\n eCode: scan.eventCode,\n rCode: scan.reasonCode\n };\n })\n );\n\n return { data: updatedScanData, totalCount: response.totalCount };\n};\n\nexport async function getScanData(\n activeTab: SummaryPageTabs,\n scanProps: ScannerInput,\n limit: number,\n offset: number,\n scan?: string\n): Promise<SummaryDisplayData> {\n const taskName = scanProps.taskName || '';\n const mergedObjectiveId: Array<string> = scanProps.mergedObjectiveId;\n\n const mergedObjectiveIds = await fetchMergedObjectiveIdBasedOnStatus(\n activeTab,\n scanProps\n );\n\n if (!mergedObjectiveIds || mergedObjectiveIds.length === 0) {\n return {\n data: [],\n totalCount: 0,\n };\n }\n if (scan) {\n const scans: IDispatch.IQueryWFIResponse =\n await DispatchExecutor.filterWFIData(\n taskName,\n mergedObjectiveIds,\n limit,\n offset,\n scan\n );\n\n return await modifyDisplayScanData(scans);\n } else {\n const scans: IDispatch.IQueryWFIResponse =\n await DispatchExecutor.filterWFIData(\n taskName,\n mergedObjectiveIds,\n limit,\n offset\n );\n\n return await modifyDisplayScanData(scans);\n }\n}\n\nexport async function addScans(\n scan: string,\n scanProps: ScannerInput,\n scanOutput: ScannerOutput,\n ercItems: ercItem[],\n eventCode: ercItem,\n reasonCode?: ercItem\n): Promise<ADD_SCAN> {\n const prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n\n const isErcSelector = scanProps.ercSelector ? true : false;\n if (isEmptyOrBlank(scan)) {\n return { status: false, message: EMPTY_AWB, type: SnackBarType.FAILURE };\n }\n\n if (isErcSelector && (!eventCode || !eventCode.code)) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n message: ER_MISSING.replace('<shipment_id>', scan),\n };\n }\n\n let isValidated = await checkForValidation(scan, scanProps.validation);\n\n if (isValidated) {\n // NEW CODE\n try {\n const eventType = getEventType(ercItems || [], eventCode?.code || '');\n\n const result = await DispatchExecutor.updateWIMapping(\n prefixedMergedObjectiveId,\n scan,\n {\n ec: eventCode?.code || '',\n rc: reasonCode?.code || '',\n },\n scanProps.scanToMerge || false\n );\n if ('data' in result) {\n const data: IDispatch.MappingUpdateResponse = result.data;\n const {\n message: { title, subTitle },\n } = data;\n\n // UPDATE SHARED PREFERENCE\n updateSharedPreference(eventType, data.mwId, prefixedMergedObjectiveId);\n\n const _scanOutput = await getUpdatedScanETOutput(\n scanOutput,\n result,\n eventType,\n eventCode?.code || '',\n reasonCode?.code || '',\n scanProps.route,\n {\n jobId: data.jobId,\n displayInfo: data.displayInfo,\n isScan: true,\n scanId: scan,\n }\n );\n\n return {\n status: true,\n type: subTitle ? SnackBarType.WARNING : SnackBarType.SUCCESS,\n message: subTitle\n ? `#${scan}\\n${title}\\n${subTitle}`\n : `#${scan}\\nShipment updated successfully!`,\n data: {\n output: _scanOutput,\n shipmentCount: {\n scannedCount: data.scanned,\n totalCount: data.total,\n },\n },\n };\n } else {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n message: 'Error occurred while scanning',\n };\n }\n } catch (error: any) {\n if (scanProps.exitOnError) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n exit: true,\n message: 'Error occurred while scanning',\n };\n\n // props.onSubmitET({\n // ...(await getScanETOutput(\n // mergedScanETOutput,\n // props.mergedObjectiveId,\n // eventCodeItems || [],\n // props.defaultERC,\n // false,\n // true\n // )),\n // });\n } else {\n return {\n status: false,\n ...getErrorMessage(scan, error),\n };\n }\n }\n } else {\n if (scanProps.exitOnError) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n exit: true,\n message: 'Error occurred while scanning',\n };\n } else {\n return {\n status: false,\n message: INVALID_SHIPMENT,\n type: SnackBarType.FAILURE,\n };\n }\n }\n}\n\nexport async function removeScan(\n taskName: string,\n scans: Array<string>,\n route: any,\n scanOutput: ScannerOutput\n) {\n const prefixedMergedObjectiveId =\n route.params[RouteParams.ROOT_META_DATA].prefixedMergedObjectiveId;\n\n const result = await DispatchExecutor.removeShipment(\n prefixedMergedObjectiveId,\n scans,\n false\n );\n\n // Decrease count on remove\n Object.keys(result).forEach((mergedObjectiveId) => {\n scanOutput[mergedObjectiveId].count -= result[mergedObjectiveId];\n\n if (scanOutput[mergedObjectiveId].count === 0) {\n delete scanOutput[mergedObjectiveId];\n }\n });\n\n const allScansOutput = (await getScanMergedOutput()) || {};\n\n // SAVE IN SHARED PREFERENCE\n let storage = Storage.getInstance();\n\n const mergedIdOutput = await getScanMergedObjectID();\n if (mergedIdOutput) {\n const _mergedIds: SCANNED_RECORD =\n mergedIdOutput[prefixedMergedObjectiveId];\n _mergedIds.pending.push(prefixedMergedObjectiveId);\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n\n let outputAtPrefixedId = allScansOutput[prefixedMergedObjectiveId] || {};\n\n await storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify({\n ...allScansOutput,\n [prefixedMergedObjectiveId]: { ...outputAtPrefixedId, scanOutput },\n })\n );\n\n // TRIGGER REMOVE SCAN EVENT\n const scannedData = scans.map((scan) => ({ scanValue: scan }));\n triggerScanEvent('ON_SCAN_REMOVE', route, scannedData);\n}\n\nexport async function updateSharedPreference(\n eventType: boolean,\n mergedObjectiveId: string,\n prefixedMergedObjectiveId: string\n) {\n let storage = Storage.getInstance();\n const mergedIdOutput = await getScanMergedObjectID();\n\n if (mergedIdOutput) {\n const _mergedIds: SCANNED_RECORD =\n mergedIdOutput[prefixedMergedObjectiveId];\n if (eventType) {\n _mergedIds.success.push(mergedObjectiveId);\n } else {\n _mergedIds.failure.push(mergedObjectiveId);\n }\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n}\n\nexport async function updatePendingSharedPreference(\n eventType: boolean,\n prefixedMergedObjectiveId: string\n) {\n let storage = Storage.getInstance();\n const mergedIdOutput = await getScanMergedObjectID();\n\n if (mergedIdOutput) {\n const _mergedIds = mergedIdOutput[prefixedMergedObjectiveId];\n if (_mergedIds) {\n if (eventType) {\n _mergedIds.success.push(prefixedMergedObjectiveId);\n _mergedIds.pending = [];\n } else {\n _mergedIds.failure.push(prefixedMergedObjectiveId);\n _mergedIds.pending = [];\n }\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n }\n}\n\nexport const getTabCount = async (\n scanProps: ScannerInput\n): Promise<TabRecord> => {\n let prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n const mergedIdOutput = await getScanMergedObjectID();\n const defaultResult = {\n [SummaryPageTabs.ALL]: 0,\n [SummaryPageTabs.PENDING]: 0,\n [SummaryPageTabs.DELIVERED]: 0,\n [SummaryPageTabs.UNDELIVERED]: 0,\n };\n const input: any = {};\n if (mergedIdOutput) {\n const _mergedIds = mergedIdOutput[prefixedMergedObjectiveId];\n if (_mergedIds) {\n const success = _mergedIds.success;\n const failure = _mergedIds.failure;\n const pending = _mergedIds.pending;\n input[SummaryPageTabs.ALL] = [...success, ...failure, ...pending];\n if (pending.length > 0) input[SummaryPageTabs.PENDING] = pending;\n if (success.length > 0) input[SummaryPageTabs.DELIVERED] = success;\n if (failure.length > 0) input[SummaryPageTabs.UNDELIVERED] = failure;\n\n const result = await DispatchExecutor.getWFICountByMWIIds(input);\n\n return { ...defaultResult, ...result };\n } else {\n return defaultResult;\n }\n } else {\n return defaultResult;\n }\n};\n\nexport const clearScanOutput = async (prefixedMergedObjectiveId: string) => {\n let storage = Storage.getInstance();\n\n const promises: any = [];\n\n // Clear Scan Record\n const scanRecord = (await getScanMergedObjectID()) || {};\n if (scanRecord) {\n delete scanRecord[prefixedMergedObjectiveId];\n\n promises.push(\n storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify(scanRecord)\n )\n );\n }\n\n // Clear Scan Output\n const scanOutputs = (await getScanMappedOutput()) || {};\n if (scanOutputs) {\n delete scanOutputs[prefixedMergedObjectiveId];\n\n promises.push(\n storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify(scanOutputs)\n )\n );\n }\n return Promise.all(promises);\n};\n\nexport async function getScanMergedObjectID(): Promise<SCAN_MERGED_OBJ_ID_INTEFACE | null> {\n let storage = Storage.getInstance();\n const mergedIdOutput = await storage.getSharedItem(SCAN_MERGED_OBJ_ID_OUTPUT);\n if (mergedIdOutput) {\n return JSON.parse(mergedIdOutput);\n } else {\n return null;\n }\n}\n\nexport async function getScanMergedOutput(): Promise<ScannerOutput | null> {\n let storage = Storage.getInstance();\n const mergedIdOutput = await storage.getSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT\n );\n if (mergedIdOutput) {\n return JSON.parse(mergedIdOutput);\n } else {\n return null;\n }\n}\n\nexport const getErrorMessage = (\n scan: string,\n error: {\n errorCode: number;\n message: string;\n }\n): { type: SnackBarType; message: string } => {\n switch (error.errorCode) {\n case WIErrorCodes.ScannableIdAlreadyCompleted:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdNotInDispatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdNotInDispatch]\n }`,\n };\n case WIErrorCodes.ScannableIdNotReady:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdNotReady]\n }`,\n };\n case WIErrorCodes.DifferentGroupUpdateNotAllowed:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.DifferentGroupUpdateNotAllowed]\n }`,\n };\n case WIErrorCodes.ObjectiveAndJobWFMismatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ObjectiveAndJobWFMismatch]\n }`,\n };\n case WIErrorCodes.ScannableIdAlreadyUpdated:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyUpdated]\n }`,\n };\n case WIErrorCodes.JobAlreadyCompleted:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.JobAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdPartOfAnotherMO:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdPartOfAnotherMO]\n }`,\n };\n default:\n return {\n type: SnackBarType.FAILURE,\n message: 'Error occurred while scanning',\n };\n }\n};\n\nexport const getSplitIds = (scanOutput: ScannerOutput): string[] => {\n const splitMergedObjectiveIds = Object.keys(scanOutput)\n .filter((mergedObjectiveID: string) => {\n const scan = scanOutput[mergedObjectiveID];\n if (scan.count > 0) return true;\n return false;\n })\n .map((mergedObjectiveIds) => mergedObjectiveIds);\n\n return splitMergedObjectiveIds;\n};\n\nexport function filterERCItems(\n eventCodeItems: ercItem[],\n type: 'SUCCESS' | 'FAILURE'\n): ercItem[] {\n return eventCodeItems.filter(\n (erc) => Boolean(erc.success) === (type === 'SUCCESS' ? true : false)\n );\n}\n\nexport async function resetObjective(scanProps: ScannerInput) {\n const taskName = scanProps.taskName || '';\n const deliveredMergedObjectiveIds = await fetchMergedObjectiveIdBasedOnStatus(\n SummaryPageTabs.DELIVERED,\n scanProps\n );\n const undeliveredMergedObjectiveIds =\n await fetchMergedObjectiveIdBasedOnStatus(\n SummaryPageTabs.UNDELIVERED,\n scanProps\n );\n\n if (\n (!deliveredMergedObjectiveIds ||\n deliveredMergedObjectiveIds.length === 0) &&\n (!undeliveredMergedObjectiveIds ||\n undeliveredMergedObjectiveIds.length === 0)\n ) {\n return;\n }\n\n const scannedData: any[] = [];\n\n if (deliveredMergedObjectiveIds && deliveredMergedObjectiveIds.length) {\n let hasNextPage = true;\n let offset = 0;\n const limit = BULK_DATA_LIMIT;\n let scans: IDispatch.IQueryWFIResponse = { data: [], totalCount: 0 };\n\n do {\n scans = await DispatchExecutor.filterWFIData(\n taskName,\n deliveredMergedObjectiveIds,\n limit,\n offset\n );\n scans.data.forEach((scan) => {\n scannedData.push({\n scanValue: scan.scannableId,\n });\n });\n\n offset += limit;\n hasNextPage = scans.totalCount - offset + 1 > 0;\n } while (hasNextPage);\n }\n if (undeliveredMergedObjectiveIds && undeliveredMergedObjectiveIds.length) {\n let hasNextPage = true;\n let offset = 0;\n const limit = BULK_DATA_LIMIT;\n let scans: IDispatch.IQueryWFIResponse = { data: [], totalCount: 0 };\n\n do {\n scans = await DispatchExecutor.filterWFIData(\n taskName,\n undeliveredMergedObjectiveIds,\n limit,\n offset\n );\n scans.data.forEach((scan) => {\n scannedData.push({\n scanValue: scan.scannableId,\n });\n });\n\n offset += limit;\n hasNextPage = scans.totalCount - offset + 1 > 0;\n } while (hasNextPage);\n }\n triggerScanEvent('ON_SCAN_REMOVE', scanProps.route, scannedData);\n return;\n}\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,sBAAsB;AACrD,SAEEC,gBAAgB,EAIhBC,WAAW,EAGXC,eAAe,QAEV,cAAc;AACrB,SAGEC,YAAY,QAQP,cAAc;AACrB,OAAO,KAAKC,SAAS,MAAM,eAAe;AAE1C,SAASC,iBAAiB,QAAQ,8BAA8B;AAChE,SACEC,UAAU,EACVC,eAAe,QACV,oCAAoC;AAC3C,SAEEC,cAAc,EACdC,SAAS,EACTC,aAAa,QACR,yBAAyB;AAChC,OAAOC,MAAM,IAAIC,QAAQ,QAAQ,uBAAuB;AACxD,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,OAAOC,OAAO,MAAM,wBAAwB;AAC5C,SACEC,eAAe,EACfC,yBAAyB,EACzBC,6BAA6B,QACxB,wCAAwC;AAC/C,SAASC,WAAW,QAAQ,kCAAkC;AAC9D,OAAOC,aAAa,MAAM,iCAAiC;AAC3D,SACEC,gBAAgB,EAEhBC,YAAY,EACZC,iBAAiB,QACZ,oDAAoD;AAC3D,SAASC,cAAc,QAAQ,sBAAsB;AACrD,SAASC,SAAS,EAAEC,UAAU,EAAEC,gBAAgB,QAAQ,aAAa;AAIrE,SAASC,kBAAkB,QAAQ,gCAAgC;AACnE,SAASC,YAAY,QAAQ,4CAA4C;AAEzE,OAAO,SAASC,eAAeA,CAACC,KAAmB,EAAS;EAC1D,MAAMC,WAAkB,GAAG,EAAE;EAC7B,MAAM;IACJC,YAAY,EAAE;MAAEC;IAAS;EAC3B,CAAC,GAAGH,KAAK;EACTG,QAAQ,CAACC,OAAO,CAAEC,IAAiB,IAAK;IACtC,QAAQA,IAAI;MACV,KAAKnC,gBAAgB,CAACoC,MAAM;QAC1BL,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACC,EAAE,CAAC;QACzD;MACF,KAAKxC,gBAAgB,CAACyC,KAAK;QACzBV,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACE,KAAK,CAAC;QAC5D;MACF,KAAKzC,gBAAgB,CAAC0C,OAAO;QAC3BX,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACG,OAAO,CAAC;QAC9D;MACF,KAAK1C,gBAAgB,CAAC2C,OAAO;QAC3BZ,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACI,OAAO,CAAC;QAC9D;MACF,KAAK3C,gBAAgB,CAAC4C,MAAM;QAC1Bb,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACK,MAAM,CAAC;QAC7D;MACF,KAAK5C,gBAAgB,CAAC6C,MAAM;QAC1Bd,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACM,MAAM,CAAC;QAC7D;MACF,KAAK7C,gBAAgB,CAAC8C,UAAU;QAC9Bf,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACO,UAAU,CAAC;QACjE;MACF,KAAK9C,gBAAgB,CAAC+C,KAAK;QACzBhB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACQ,KAAK,CAAC;QAC5D;MACF,KAAK/C,gBAAgB,CAACgD,IAAI;QACxBjB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACS,IAAI,CAAC;QAC3D;MACF,KAAKhD,gBAAgB,CAACiD,KAAK;QACzBlB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACU,KAAK,CAAC;QAC5D;MACF,KAAKjD,gBAAgB,CAACkD,MAAM;QAC1BnB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACW,MAAM,CAAC;QAC7D;MACF,KAAKlD,gBAAgB,CAACmD,KAAK;QACzBpB,WAAW,CAACM,IAAI,CAACtC,cAAc,CAACuC,SAAS,CAACC,WAAW,CAACY,KAAK,CAAC;QAC5D;MAEF;QACE;IACJ;EACF,CAAC,CAAC;EACF,OAAOpB,WAAW;AACpB;AAEA,OAAO,eAAeqB,kBAAkBA,CACtCpB,YAAoB,EACpBqB,UAAsB,EACJ;EAClB;EACA,IAAIA,UAAU,CAACC,aAAa,KAAK,CAAC,EAAE;IAClC,OAAO,IAAI;EACb;EACA;EAAA,KACK,IACHD,UAAU,CAACC,aAAa,KAAK,CAAC,IAC9B,OAAOD,UAAU,CAACE,KAAK,KAAK,QAAQ,EACpC;IACA,MAAMC,KAAK,GAAG,IAAIC,MAAM,CAACJ,UAAU,CAACE,KAAK,CAAC;IAC1C,OAAOC,KAAK,CAACE,IAAI,CAAC1B,YAAY,CAAC;EACjC;EACA;EAAA,KACK,IACHqB,UAAU,CAACC,aAAa,KAAK,CAAC,IAC9B,OAAOD,UAAU,CAACE,KAAK,KAAK,QAAQ,EACpC;IACA,IAAI;MACF;MACA,MAAMI,GAAQ,GAAGN,UAAU,CAACE,KAAK;MACjC,MAAMK,OAAgB,GAAG;QACvBC,aAAa,EAAE,EAAE;QACjBC,gBAAgB,EAAE,EAAE;QACpBC,GAAG,EAAEJ,GAAG,CAACI,GAAG;QACZC,UAAU,EAAEL,GAAG,CAACK,UAAU;QAC1BC,OAAO,EAAEN,GAAG,CAACM,OAAO;QACpBC,OAAO,EAAEP,GAAG,CAACO;MACf,CAAC;MACD,IAAIP,GAAG,CAACQ,WAAW,EAAE;QACnB,MAAMC,iBAAiB,GAAG3D,SAAS,CAACkD,GAAG,CAACQ,WAAW,EAAEnC,YAAY,CAAC;QAClE4B,OAAO,CAACO,WAAW,GAAGC,iBAAiB;MACzC;MACA,IAAIT,GAAG,CAACU,UAAU,EAAE;QAClB3D,aAAa,CAACiD,GAAG,CAACU,UAAU,EAAErC,YAAY,CAAC;QAC3C4B,OAAO,CAACS,UAAU,GAAGV,GAAG,CAACU,UAAU;MACrC;MACA,IAAIV,GAAG,CAACW,WAAW,EAAE;QACnB5D,aAAa,CAACiD,GAAG,CAACW,WAAW,EAAEtC,YAAY,CAAC;QAC5C4B,OAAO,CAACU,WAAW,GAAGX,GAAG,CAACW,WAAW;MACvC;MACA,MAAMC,WAAW,GAAG,MAAM/D,cAAc,CAACoD,OAAO,CAAC;MAEjD,OAAOxD,SAAS,CAACoE,KAAK,CACEb,GAAG,CAACc,iBAAiB,EAC3CF,WAAW,CAACG,IACd,CAAC;IACH,CAAC,CAAC,OAAOC,KAAU,EAAE;MACnBhE,MAAM,CAACiE,WAAW,CAAC,CAAC,CAACC,QAAQ,CAC3B,sBAAsB,EACtBF,KAAK,CAACG,OAAO,EACblE,QAAQ,CAACmE,SACX,CAAC;MACD,OAAO,KAAK;IACd;EACF,CAAC,MAAM;IACL,OAAO,KAAK;EACd;AACF;AAEA,OAAO,SAASC,eAAeA,CAC7B1B,aAAqB,EACrB2B,QAAiC,EACX;EACtB,MAAMC,gBAA0B,GAAG,EAAE;EACrC,MAAMC,gBAA0B,GAAG,EAAE;EACrC;EACA,KAAK,IAAI,CAACC,GAAG,EAAEC,KAAK,CAAC,IAAIJ,QAAQ,CAACK,OAAO,CAAC,CAAC,EAAE;IAC3C;AACJ;AACA;AACA;AACA;AACA;IACI,IAAI,CAAAD,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,UAAU,KAAIC,SAAS,EAAE;MAClC,IAAI,CAAAH,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,UAAU,MAAKtF,WAAW,CAACwF,OAAO,EAAE;QAC7CN,gBAAgB,CAAC9C,IAAI,CAAC+C,GAAG,CAAC;MAC5B,CAAC,MAAM,IAAI,CAAAC,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,UAAU,MAAKtF,WAAW,CAACyF,MAAM,EAAE;QACnDR,gBAAgB,CAAC7C,IAAI,CAAC+C,GAAG,CAAC;MAC5B;IACF,CAAC,MAAM,IAAI9B,aAAa,KAAK,CAAC,EAAE;MAC9B4B,gBAAgB,CAAC7C,IAAI,CAAC+C,GAAG,CAAC;IAC5B;EACF;EACA,OAAO,CAACF,gBAAgB,EAAEC,gBAAgB,CAAC;AAC7C;AAEA,OAAO,SAASQ,mBAAmBA,CAACV,QAAiC,EAAU;EAC7E,IAAIE,gBAAgB,GAAG,CAAC;EACxB,IAAIF,QAAQ,EAAE;IACZ,KAAK,IAAI,GAAGI,KAAK,CAAC,IAAIJ,QAAQ,CAACK,OAAO,CAAC,CAAC,EAAE;MACxC,IAAID,KAAK,CAACE,UAAU,KAAKtF,WAAW,CAACwF,OAAO,EAAE;QAC5CN,gBAAgB,EAAE;MACpB;IACF;IACA,OAAOA,gBAAgB;EACzB;EACA,OAAOA,gBAAgB;AACzB;AAEA,OAAO,SAASS,eAAeA,CAC7BC,UAAyB,EACzBC,eAAiC,EACjC;EACA,MAAM;IAAEC,IAAI,EAAEC;EAAkB,CAAC,GAAGF,eAAe,CAACpB,IAAI;EAExD,IAAImB,UAAU,CAACG,iBAAiB,CAAC,EAAE;IACjC,OAAOH,UAAU,CAACG,iBAAiB,CAAC,CAACC,KAAK,GAAG,CAAC;EAChD,CAAC,MAAM;IACL,OAAO,CAAC;EACV;AACF;AAEA,OAAO,eAAeC,sBAAsBA,CAC1CL,UAAyB,EACzBC,eAAiC,EACjCK,OAAgB,EAChBC,SAAiB,EACjBC,UAAkB,EAClBC,KAAU,EACVC,WAAgB,EAChB;EACA,MAAMC,yBAAyB,GAC7BF,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAACF,yBAAyB;EACpE,MAAM;IAAET,IAAI,EAAEC,iBAAiB;IAAEW,YAAY,EAAEC;EAA0B,CAAC,GACxEd,eAAe,CAACpB,IAAI;EACtB,MAAMmC,MAAM,GAAG,MAAMxG,iBAAiB,CACpCC,UAAU,CAACwG,IAAI,EACfX,OAAO,EACPC,SAAS,EACTC,UAAU,EACV,CAACL,iBAAiB,CAAC,EACnBzF,eAAe,CAACuG,IAClB,CAAC;EACD,MAAMC,YAAiB,GAAG,CACxB;IACEC,OAAO,EAAET,WAAW,CAACU,WAAW,CAACD,OAAO;IACxCE,KAAK,EAAEX,WAAW,CAACW,KAAK;IACxBC,YAAY,EAAEZ,WAAW,CAACU,WAAW,CAACE,YAAY;IAClDC,SAAS,EAAEb,WAAW,CAACc;EACzB,CAAC,CACF;EAEDd,WAAW,aAAXA,WAAW,eAAXA,WAAW,CAAEe,MAAM,GACfC,gBAAgB,CAAC,SAAS,EAAEjB,KAAK,EAAES,YAAY,EAAEF,MAAM,CAAC,GACxD,IAAI;EAER,IAAIhB,UAAU,CAACe,yBAAyB,CAAC,EAAE;IACzCf,UAAU,CAACe,yBAAyB,CAAC,CAACX,KAAK,IAAI,CAAC;IAEhD,IAAIJ,UAAU,CAACe,yBAAyB,CAAC,CAACX,KAAK,KAAK,CAAC,EAAE;MACrD,OAAOJ,UAAU,CAACe,yBAAyB,CAAC;IAC9C;EACF;EACA,MAAMX,KAAK,GAAGL,eAAe,CAACC,UAAU,EAAEC,eAAe,CAAC;EAE1D,IAAI,CAACD,UAAU,CAACG,iBAAiB,CAAC,EAAE;IAClCH,UAAU,CAACG,iBAAiB,CAAC,GAAG;MAAEa,MAAM;MAAEZ;IAAM,CAAC;EACnD,CAAC,MAAM;IACLJ,UAAU,CAACG,iBAAiB,CAAC,CAACC,KAAK,GAAGA,KAAK;EAC7C;;EAEA;EACA,IAAIuB,cAAc,GAAG,CAAC,MAAMC,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC;EACxD,IAAIC,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAM8C,OAAO,CAACC,aAAa,CACzB1G,6BAA6B,EAC7B2G,IAAI,CAACC,SAAS,CAAC;IACb,GAAGL,cAAc;IACjB,CAAChB,yBAAyB,GAAGX;EAC/B,CAAC,CACH,CAAC;EACD,OAAOA,UAAU;AACnB;AAEA,OAAO,eAAeiC,eAAeA,CACnCC,kBAAiC,EACjC/B,iBAAgC,EAChCgC,QAAmB,EACnBC,UAAsB,EACtBC,YAA0B,EAC1BC,SAAkB,EAClBlC,KAAa,EACW;EACxB,QAAQiC,YAAY;IAClB,KAAK/H,YAAY,CAACiI,SAAS;MAAE;QAC3B,MAAMvB,MAAM,GAAG,MAAMxG,iBAAiB,CACpCC,UAAU,CAACwG,IAAI,EACf,KAAK,EACLmB,UAAU,CAAC7B,SAAS,EACpB6B,UAAU,CAAC5B,UAAU,IAAI,EAAE,EAC3BL,iBAAiB,EACjBzF,eAAe,CAACuG,IAClB,CAAC;QACD,OAAO;UACL,CAACd,iBAAiB,CAAC,CAAC,CAAC,GAAG;YACtBa,MAAM;YACNZ;UACF;QACF,CAAC;MACH;IACA,KAAK9F,YAAY,CAACkI,cAAc;MAAE;QAChC,MAAMxB,MAAM,GAAG,MAAMxG,iBAAiB,CACpCC,UAAU,CAACwG,IAAI,EACf,KAAK,EACLjG,eAAe,EACf,EAAE,EACFmF,iBAAiB,EACjBzF,eAAe,CAACuG,IAClB,CAAC;QACDiB,kBAAkB,CAAC,SAAS,CAAC,GAAG;UAC9BlB,MAAM;UACNZ;QACF,CAAC;QACD,OAAO8B,kBAAkB;MAC3B;IACA,KAAK5H,YAAY,CAACmI,WAAW;MAAE;QAC7B,IAAIH,SAAS,EAAE;UACb,MAAMtB,MAAM,GAAG,MAAMxG,iBAAiB,CACpCC,UAAU,CAACwG,IAAI,EACfyB,YAAY,CAACP,QAAQ,EAAEC,UAAU,CAAC7B,SAAS,CAAC,EAC5C6B,UAAU,CAAC7B,SAAS,EACpB6B,UAAU,CAAC5B,UAAU,IAAI,EAAE,EAC3BL,iBAAiB,EACjBzF,eAAe,CAACuG,IAClB,CAAC;UAEDiB,kBAAkB,CAAC,SAAS,CAAC,GAAG;YAAElB,MAAM;YAAEZ;UAAM,CAAC;UACjD,OAAO8B,kBAAkB;QAC3B,CAAC,MAAM;UACL,OAAOA,kBAAkB;QAC3B;MACF;IACA;MAAS;QACP,OAAOA,kBAAkB;MAC3B;EACF;AACF;AAEA,OAAO,SAASS,eAAeA,CAACpB,SAAqB,EAAc;EACjE,MAAMqB,KAAiB,GAAG,EAAE;EAC5B,IAAIrB,SAAS,CAAC7B,UAAU,KAAKtF,WAAW,CAACwF,OAAO,EAC9CgD,KAAK,CAACpG,IAAI,CAAC;IACTgD,KAAK,EAAE+B,SAAS,CAAC/B,KAAK;IACtBqD,SAAS,EAAEtB,SAAS,CAACsB,SAAS,IAAI,KAAK;IACvCC,SAAS,EAAEvB,SAAS,CAACuB,SAAS,IAAIC,IAAI,CAACC,GAAG,CAAC;EAC7C,CAAC,CAAC;EAEJ,OAAOJ,KAAK;AACd;AAEA,OAAO,SAASK,aAAaA,CAC3BzF,UAAsB,EACtB4B,QAAiC,EACjC8D,QAAkB,EAClBC,sBAA+B,EAC/BC,oBAA6B,EAC7BC,eAAwB,EACxBC,0BAAoC,EAC3B;EACT,IAAIJ,QAAQ,KAAK,QAAQ,IAAIC,sBAAsB,EAAE;IACnD,IAAII,qBAAqB,GAAGH,oBAAoB,IAAI,CAAC;IAErD,IAAI,CAACA,oBAAoB,EAAE;MACzB,MAAM,GAAG9D,gBAAgB,CAAC,GAAGH,eAAe,CAC1C3B,UAAU,CAACC,aAAa,EACxB2B,QACF,CAAC;MACDmE,qBAAqB,GAAGjE,gBAAgB,CAACkE,MAAM;IACjD;IAEA,IAAIF,0BAA0B,EAAE;MAC9B,OAAOC,qBAAqB,IAAI,CAAC;IACnC;IAEA,OAAOF,eAAe,KAAKE,qBAAqB;EAClD,CAAC,MAAM;IACL;IACA,IAAI/F,UAAU,CAACC,aAAa,KAAK,CAAC,EAAE;MAClC;MACA,MAAMgG,KAAe,GAAGjG,UAAU,CAACE,KAAK;MACxC,IAAI,CAAC0F,oBAAoB,EAAE;QACzB,MAAM,GAAG9D,gBAAgB,CAAC,GAAGH,eAAe,CAC1C3B,UAAU,CAACC,aAAa,EACxB2B,QACF,CAAC;QACD,OAAOqE,KAAK,CAACD,MAAM,KAAKlE,gBAAgB,CAACkE,MAAM;MACjD;MAEA,OAAOC,KAAK,CAACD,MAAM,KAAKJ,oBAAoB;IAC9C;IACA;IAAA,KACK,IACF5F,UAAU,CAACC,aAAa,KAAK,CAAC,IAC7B,OAAOD,UAAU,CAACE,KAAK,KAAK,QAAQ,IACrCF,UAAU,CAACC,aAAa,KAAK,CAAC,IAAI,OAAOD,UAAU,CAACE,KAAK,KAAK,QAAS,EACxE;MACA,OAAO,IAAI;IACb,CAAC,MAAM;MACL,OAAO,KAAK;IACd;EACF;AACF;AAEA,OAAO,SAASgG,aAAaA,CAC3BC,IAAY,EACZvE,QAAiC,EACjCwE,iBAAsC,EACtCC,cAAmC,EACnC;EAAA,IAAAC,aAAA,EAAAC,cAAA;EACA;EACE;EACA;EACA,EAAAD,aAAA,GAAA1E,QAAQ,CAAC4E,GAAG,CAACL,IAAI,CAAC,cAAAG,aAAA,uBAAlBA,aAAA,CAAoBvD,SAAS,OAAKqD,iBAAiB,aAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAAEK,IAAI;EAAI;EAC7D,EAAAF,cAAA,GAAA3E,QAAQ,CAAC4E,GAAG,CAACL,IAAI,CAAC,cAAAI,cAAA,uBAAlBA,cAAA,CAAoBvD,UAAU,OAAKqD,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAEI,IAAI,GACvD;IACA,OAAO,IAAI;EACb;EACA,OAAO,KAAK;AACd;AAEA,OAAO,SAASvB,YAAYA,CAC1BwB,SAAyB,EACzB3D,SAAiB,EACR;EACT,MAAM4D,MAAM,GAAGD,SAAS,CAACE,IAAI,CAAEH,IAAI,IAAKA,IAAI,CAACA,IAAI,KAAK1D,SAAS,CAAC;EAChE,IAAI4D,MAAM,EAAE;IACV,OAAOE,OAAO,CAACF,MAAM,CAAC7D,OAAO,CAAC;EAChC,CAAC,MAAM;IACL,OAAO,KAAK;EACd;AACF;AAEA,OAAO,eAAesB,mBAAmBA,CAAA,EAA+C;EACtF,IAAIC,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMuF,gBAAgB,GAAG,MAAMzC,OAAO,CAAC0C,aAAa,CAClDnJ,6BACF,CAAC;EACD,IAAIkJ,gBAAgB,EAAE;IACpB,OAAOvC,IAAI,CAACyC,KAAK,CAACF,gBAAgB,CAAC;EACrC,CAAC,MAAM;IACL,OAAO,CAAC,CAAC;EACX;AACF;AAEA,OAAO,SAAS5C,gBAAgBA,CAC9BpF,IAAe,EACfmE,KAAU,EACVC,WAAgB,EAChB+D,QAAyB,EACzB;EACA,QAAQnI,IAAI;IACV,KAAK,SAAS;MAAE;QACd,MAAMoI,UAAU,GAAGjE,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACsJ,WAAW,CAAC;QACxD,MAAMC,eAA4B,GAAG;UACnCC,IAAI,EAAE,CAAAJ,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEI,IAAI,KAAI,CAAC,CAAC;UAC1BC,MAAM,EAAE;YACNvE,SAAS,EAAE,CAAAkE,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAElE,SAAS,KAAI,EAAE;YACpCC,UAAU,EAAE,CAAAiE,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEjE,UAAU,KAAI,EAAE;YACtCF,OAAO,EAAE,CAAAmE,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEnE,OAAO,KAAI,KAAK;YACnCyE,OAAO,EAAEhC,IAAI,CAACC,GAAG,CAAC,CAAC;YACnBtC;UACF,CAAC;UACDsE,MAAM,EAAEN,UAAU,CAACM,MAAM;UACzBlC,SAAS,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC;UACrBiC,UAAU,EAAExE,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAACqE;QACvD,CAAC;QACD5J,aAAa,CAAC,SAAS,EAAEoJ,UAAU,CAACS,QAAQ,EAAEP,eAAe,CAAC;QAC9D;MACF;IACA,KAAK,gBAAgB;MAAE;QACrB,MAAMF,UAAU,GAAGjE,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACsJ,WAAW,CAAC;QACxD,MAAMC,eAAkC,GAAG;UACzCE,MAAM,EAAE;YACNpE;UACF,CAAC;UACDsE,MAAM,EAAEN,UAAU,CAACM,MAAM;UACzBlC,SAAS,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC;UACrBiC,UAAU,EAAExE,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAACqE;QACvD,CAAC;QACD5J,aAAa,CAAC,gBAAgB,EAAEoJ,UAAU,CAACS,QAAQ,EAAEP,eAAe,CAAC;QACrE;MACF;IACA;MACE;EACJ;AACF;AAEA,MAAMQ,mCAAmC,GAAG,MAAAA,CAC1CC,SAA0B,EAC1BC,SAAuB,KACpB;EACH,IAAI3E,yBAAyB,GAC3B2E,SAAS,CAAC7E,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAC/CF,yBAAyB;EAE9B,IAAI4E,kBAAkC;EACtC,IAAIC,SAAS,GAAG,MAAMC,qBAAqB,CAAC,CAAC;EAC7C,IAAID,SAAS,EAAE;IACbD,kBAAkB,GAAGC,SAAS,CAAC7E,yBAAyB,CAAC,IAAI,EAAE;EACjE,CAAC,MAAM;IACL,OAAO,EAAE;EACX;EAEA,QAAQ0E,SAAS;IACf,KAAKhL,eAAe,CAACqL,GAAG;MACtB,OAAO,CACL,GAAGH,kBAAkB,CAAC,SAAS,CAAC,EAChC,GAAGA,kBAAkB,CAAC,SAAS,CAAC,EAChC,GAAGA,kBAAkB,CAAC,SAAS,CAAC,CACjC;IACH,KAAKlL,eAAe,CAACsL,OAAO;MAC1B,OAAOJ,kBAAkB,CAAC,SAAS,CAAC;IACtC,KAAKlL,eAAe,CAACuL,SAAS;MAC5B,OAAOL,kBAAkB,CAAC,SAAS,CAAC;IACtC,KAAKlL,eAAe,CAACwL,WAAW;MAC9B,OAAON,kBAAkB,CAAC,SAAS,CAAC;IACtC;MACE,OAAO,EAAE;EACb;AACF,CAAC;AAED,MAAMO,UAAU,GAAG,MAAAA,CAAOvF,SAAiB,EAAEC,UAAmB,KAAK;EACnE,OAAO,MAAM1E,kBAAkB,CAAC;IAC9ByE,SAAS;IACTC;EACF,CAAC,CAAC;AACJ,CAAC;AAED,MAAMuF,qBAAqB,GAAG,MAC5BC,QAAqC,IACL;EAChC,MAAM;IAAEnH,IAAI,EAAE4E;EAAM,CAAC,GAAGuC,QAAQ;EAChC,MAAMC,eAAe,GAAG,MAAMC,OAAO,CAACC,GAAG,CACvC1C,KAAK,CAAC2C,GAAG,CAAC,MAAOzC,IAAI,IAAK;IAAA,IAAA0C,iBAAA,EAAAC,kBAAA;IACxB,MAAM;MAAE/F,SAAS;MAAEC;IAAW,CAAC,GAAG,MAAMsF,UAAU,CAChDnC,IAAI,CAACpD,SAAS,EACdoD,IAAI,CAACnD,UACP,CAAC;IAED,OAAO;MACLgB,MAAM,EAAEmC,IAAI,CAAC4C,WAAW;MACxBC,UAAU,EAAE,EAAAH,iBAAA,GAAA1C,IAAI,CAACvC,WAAW,cAAAiF,iBAAA,uBAAhBA,iBAAA,CAAkBG,UAAU,KAAI,IAAI;MAChDC,OAAO,EAAE,EAAAH,kBAAA,GAAA3C,IAAI,CAACvC,WAAW,cAAAkF,kBAAA,uBAAhBA,kBAAA,CAAkBG,OAAO,KAAI,IAAI;MAC1ClG,SAAS,EAAEA,SAAS,IAAI,IAAI;MAC5BC,UAAU,EAAEA,UAAU,IAAI,IAAI;MAC9BG,yBAAyB,EAAEgD,IAAI,CAAC+C,mBAAmB;MACnDC,UAAU,EAAEhD,IAAI,CAACgD,UAAU;MAC3BC,KAAK,EAAEjD,IAAI,CAACpD,SAAS;MACrBsG,KAAK,EAAElD,IAAI,CAACnD;IACd,CAAC;EACH,CAAC,CACH,CAAC;EAED,OAAO;IAAE3B,IAAI,EAAEoH,eAAe;IAAEa,UAAU,EAAEd,QAAQ,CAACc;EAAW,CAAC;AACnE,CAAC;AAED,OAAO,eAAeC,WAAWA,CAC/B1B,SAA0B,EAC1BC,SAAuB,EACvB0B,KAAa,EACbC,MAAc,EACdtD,IAAa,EACgB;EAC7B,MAAMwB,QAAQ,GAAGG,SAAS,CAACH,QAAQ,IAAI,EAAE;EACzC,MAAMhF,iBAAgC,GAAGmF,SAAS,CAACnF,iBAAiB;EAEpE,MAAMoF,kBAAkB,GAAG,MAAMH,mCAAmC,CAClEC,SAAS,EACTC,SACF,CAAC;EAED,IAAI,CAACC,kBAAkB,IAAIA,kBAAkB,CAAC/B,MAAM,KAAK,CAAC,EAAE;IAC1D,OAAO;MACL3E,IAAI,EAAE,EAAE;MACRiI,UAAU,EAAE;IACd,CAAC;EACH;EACA,IAAInD,IAAI,EAAE;IACR,MAAMF,KAAkC,GACtC,MAAMlI,gBAAgB,CAAC2L,aAAa,CAClC/B,QAAQ,EACRI,kBAAkB,EAClByB,KAAK,EACLC,MAAM,EACNtD,IACF,CAAC;IAEH,OAAO,MAAMoC,qBAAqB,CAACtC,KAAK,CAAC;EAC3C,CAAC,MAAM;IACL,MAAMA,KAAkC,GACtC,MAAMlI,gBAAgB,CAAC2L,aAAa,CAClC/B,QAAQ,EACRI,kBAAkB,EAClByB,KAAK,EACLC,MACF,CAAC;IAEH,OAAO,MAAMlB,qBAAqB,CAACtC,KAAK,CAAC;EAC3C;AACF;AAEA,OAAO,eAAe0D,QAAQA,CAC5BxD,IAAY,EACZ2B,SAAuB,EACvBtF,UAAyB,EACzBmC,QAAmB,EACnB5B,SAAkB,EAClBC,UAAoB,EACD;EACnB,MAAMG,yBAAyB,GAC7B2E,SAAS,CAAC7E,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAC/CF,yBAAyB;EAE9B,MAAMyG,aAAa,GAAG9B,SAAS,CAAC+B,WAAW,GAAG,IAAI,GAAG,KAAK;EAC1D,IAAI3L,cAAc,CAACiI,IAAI,CAAC,EAAE;IACxB,OAAO;MAAE2D,MAAM,EAAE,KAAK;MAAErI,OAAO,EAAEtD,SAAS;MAAEW,IAAI,EAAEP,YAAY,CAACwL;IAAQ,CAAC;EAC1E;EAEA,IAAIH,aAAa,KAAK,CAAC7G,SAAS,IAAI,CAACA,SAAS,CAAC0D,IAAI,CAAC,EAAE;IACpD,OAAO;MACLqD,MAAM,EAAE,KAAK;MACbhL,IAAI,EAAEP,YAAY,CAACwL,OAAO;MAC1BtI,OAAO,EAAErD,UAAU,CAAC4L,OAAO,CAAC,eAAe,EAAE7D,IAAI;IACnD,CAAC;EACH;EAEA,IAAI8D,WAAW,GAAG,MAAMlK,kBAAkB,CAACoG,IAAI,EAAE2B,SAAS,CAAC9H,UAAU,CAAC;EAEtE,IAAIiK,WAAW,EAAE;IACf;IACA,IAAI;MACF,MAAMC,SAAS,GAAGhF,YAAY,CAACP,QAAQ,IAAI,EAAE,EAAE,CAAA5B,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE0D,IAAI,KAAI,EAAE,CAAC;MAErE,MAAME,MAAM,GAAG,MAAM5I,gBAAgB,CAACoM,eAAe,CACnDhH,yBAAyB,EACzBgD,IAAI,EACJ;QACEiE,EAAE,EAAE,CAAArH,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE0D,IAAI,KAAI,EAAE;QACzB4D,EAAE,EAAE,CAAArH,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEyD,IAAI,KAAI;MAC1B,CAAC,EACDqB,SAAS,CAACwC,WAAW,IAAI,KAC3B,CAAC;MACD,IAAI,MAAM,IAAI3D,MAAM,EAAE;QACpB,MAAMtF,IAAqC,GAAGsF,MAAM,CAACtF,IAAI;QACzD,MAAM;UACJI,OAAO,EAAE;YAAE8I,KAAK;YAAEC;UAAS;QAC7B,CAAC,GAAGnJ,IAAI;;QAER;QACAoJ,sBAAsB,CAACP,SAAS,EAAE7I,IAAI,CAACqB,IAAI,EAAES,yBAAyB,CAAC;QAEvE,MAAMuH,WAAW,GAAG,MAAM7H,sBAAsB,CAC9CL,UAAU,EACVmE,MAAM,EACNuD,SAAS,EACT,CAAAnH,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE0D,IAAI,KAAI,EAAE,EACrB,CAAAzD,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEyD,IAAI,KAAI,EAAE,EACtBqB,SAAS,CAAC7E,KAAK,EACf;UACEY,KAAK,EAAExC,IAAI,CAACwC,KAAK;UACjBD,WAAW,EAAEvC,IAAI,CAACuC,WAAW;UAC7BK,MAAM,EAAE,IAAI;UACZD,MAAM,EAAEmC;QACV,CACF,CAAC;QAED,OAAO;UACL2D,MAAM,EAAE,IAAI;UACZhL,IAAI,EAAE0L,QAAQ,GAAGjM,YAAY,CAACoM,OAAO,GAAGpM,YAAY,CAACqM,OAAO;UAC5DnJ,OAAO,EAAE+I,QAAQ,GACZ,IAAGrE,IAAK,KAAIoE,KAAM,KAAIC,QAAS,EAAC,GAChC,IAAGrE,IAAK,kCAAiC;UAC9C9E,IAAI,EAAE;YACJmC,MAAM,EAAEkH,WAAW;YACnBG,aAAa,EAAE;cACbC,YAAY,EAAEzJ,IAAI,CAAC0J,OAAO;cAC1BzB,UAAU,EAAEjI,IAAI,CAAC2J;YACnB;UACF;QACF,CAAC;MACH,CAAC,MAAM;QACL,OAAO;UACLlB,MAAM,EAAE,KAAK;UACbhL,IAAI,EAAEP,YAAY,CAACwL,OAAO;UAC1BtI,OAAO,EAAE;QACX,CAAC;MACH;IACF,CAAC,CAAC,OAAOH,KAAU,EAAE;MACnB,IAAIwG,SAAS,CAACmD,WAAW,EAAE;QACzB,OAAO;UACLnB,MAAM,EAAE,KAAK;UACbhL,IAAI,EAAEP,YAAY,CAACwL,OAAO;UAC1BmB,IAAI,EAAE,IAAI;UACVzJ,OAAO,EAAE;QACX,CAAC;;QAED;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;MACF,CAAC,MAAM;QACL,OAAO;UACLqI,MAAM,EAAE,KAAK;UACb,GAAGqB,eAAe,CAAChF,IAAI,EAAE7E,KAAK;QAChC,CAAC;MACH;IACF;EACF,CAAC,MAAM;IACL,IAAIwG,SAAS,CAACmD,WAAW,EAAE;MACzB,OAAO;QACLnB,MAAM,EAAE,KAAK;QACbhL,IAAI,EAAEP,YAAY,CAACwL,OAAO;QAC1BmB,IAAI,EAAE,IAAI;QACVzJ,OAAO,EAAE;MACX,CAAC;IACH,CAAC,MAAM;MACL,OAAO;QACLqI,MAAM,EAAE,KAAK;QACbrI,OAAO,EAAEpD,gBAAgB;QACzBS,IAAI,EAAEP,YAAY,CAACwL;MACrB,CAAC;IACH;EACF;AACF;AAEA,OAAO,eAAeqB,UAAUA,CAC9BzD,QAAgB,EAChB1B,KAAoB,EACpBhD,KAAU,EACVT,UAAyB,EACzB;EACA,MAAMW,yBAAyB,GAC7BF,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAACF,yBAAyB;EAEpE,MAAMwD,MAAM,GAAG,MAAM5I,gBAAgB,CAACsN,cAAc,CAClDlI,yBAAyB,EACzB8C,KAAK,EACL,KACF,CAAC;;EAED;EACAqF,MAAM,CAACC,IAAI,CAAC5E,MAAM,CAAC,CAAC9H,OAAO,CAAE8D,iBAAiB,IAAK;IACjDH,UAAU,CAACG,iBAAiB,CAAC,CAACC,KAAK,IAAI+D,MAAM,CAAChE,iBAAiB,CAAC;IAEhE,IAAIH,UAAU,CAACG,iBAAiB,CAAC,CAACC,KAAK,KAAK,CAAC,EAAE;MAC7C,OAAOJ,UAAU,CAACG,iBAAiB,CAAC;IACtC;EACF,CAAC,CAAC;EAEF,MAAMwB,cAAc,GAAG,CAAC,MAAMqH,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC;;EAE1D;EACA,IAAInH,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EAEnC,MAAMkK,cAAc,GAAG,MAAMxD,qBAAqB,CAAC,CAAC;EACpD,IAAIwD,cAAc,EAAE;IAClB,MAAMC,UAA0B,GAC9BD,cAAc,CAACtI,yBAAyB,CAAC;IAC3CuI,UAAU,CAACC,OAAO,CAAC3M,IAAI,CAACmE,yBAAyB,CAAC;IAElD,MAAMkB,OAAO,CAACC,aAAa,CACzB3G,yBAAyB,EACzB4G,IAAI,CAACC,SAAS,CAAC;MACb,GAAGiH,cAAc;MACjB,CAACtI,yBAAyB,GAAGuI;IAC/B,CAAC,CACH,CAAC;EACH;EAEA,IAAIE,kBAAkB,GAAGzH,cAAc,CAAChB,yBAAyB,CAAC,IAAI,CAAC,CAAC;EAExE,MAAMkB,OAAO,CAACC,aAAa,CACzB1G,6BAA6B,EAC7B2G,IAAI,CAACC,SAAS,CAAC;IACb,GAAGL,cAAc;IACjB,CAAChB,yBAAyB,GAAG;MAAE,GAAGyI,kBAAkB;MAAEpJ;IAAW;EACnE,CAAC,CACH,CAAC;;EAED;EACA,MAAMU,WAAW,GAAG+C,KAAK,CAAC2C,GAAG,CAAEzC,IAAI,KAAM;IAAEpC,SAAS,EAAEoC;EAAK,CAAC,CAAC,CAAC;EAC9DjC,gBAAgB,CAAC,gBAAgB,EAAEjB,KAAK,EAAEC,WAAW,CAAC;AACxD;AAEA,OAAO,eAAeuH,sBAAsBA,CAC1CP,SAAkB,EAClBvH,iBAAyB,EACzBQ,yBAAiC,EACjC;EACA,IAAIkB,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMkK,cAAc,GAAG,MAAMxD,qBAAqB,CAAC,CAAC;EAEpD,IAAIwD,cAAc,EAAE;IAClB,MAAMC,UAA0B,GAC9BD,cAAc,CAACtI,yBAAyB,CAAC;IAC3C,IAAI+G,SAAS,EAAE;MACbwB,UAAU,CAAC5I,OAAO,CAAC9D,IAAI,CAAC2D,iBAAiB,CAAC;IAC5C,CAAC,MAAM;MACL+I,UAAU,CAACG,OAAO,CAAC7M,IAAI,CAAC2D,iBAAiB,CAAC;IAC5C;IAEA,MAAM0B,OAAO,CAACC,aAAa,CACzB3G,yBAAyB,EACzB4G,IAAI,CAACC,SAAS,CAAC;MACb,GAAGiH,cAAc;MACjB,CAACtI,yBAAyB,GAAGuI;IAC/B,CAAC,CACH,CAAC;EACH;AACF;AAEA,OAAO,eAAeI,6BAA6BA,CACjD5B,SAAkB,EAClB/G,yBAAiC,EACjC;EACA,IAAIkB,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMkK,cAAc,GAAG,MAAMxD,qBAAqB,CAAC,CAAC;EAEpD,IAAIwD,cAAc,EAAE;IAClB,MAAMC,UAAU,GAAGD,cAAc,CAACtI,yBAAyB,CAAC;IAC5D,IAAIuI,UAAU,EAAE;MACd,IAAIxB,SAAS,EAAE;QACbwB,UAAU,CAAC5I,OAAO,CAAC9D,IAAI,CAACmE,yBAAyB,CAAC;QAClDuI,UAAU,CAACC,OAAO,GAAG,EAAE;MACzB,CAAC,MAAM;QACLD,UAAU,CAACG,OAAO,CAAC7M,IAAI,CAACmE,yBAAyB,CAAC;QAClDuI,UAAU,CAACC,OAAO,GAAG,EAAE;MACzB;MAEA,MAAMtH,OAAO,CAACC,aAAa,CACzB3G,yBAAyB,EACzB4G,IAAI,CAACC,SAAS,CAAC;QACb,GAAGiH,cAAc;QACjB,CAACtI,yBAAyB,GAAGuI;MAC/B,CAAC,CACH,CAAC;IACH;EACF;AACF;AAEA,OAAO,MAAMK,WAAW,GAAG,MACzBjE,SAAuB,IACA;EACvB,IAAI3E,yBAAyB,GAC3B2E,SAAS,CAAC7E,KAAK,CAACG,MAAM,CAACvF,WAAW,CAACwF,cAAc,CAAC,CAC/CF,yBAAyB;EAC9B,MAAMsI,cAAc,GAAG,MAAMxD,qBAAqB,CAAC,CAAC;EACpD,MAAM+D,aAAa,GAAG;IACpB,CAACnP,eAAe,CAACqL,GAAG,GAAG,CAAC;IACxB,CAACrL,eAAe,CAACsL,OAAO,GAAG,CAAC;IAC5B,CAACtL,eAAe,CAACuL,SAAS,GAAG,CAAC;IAC9B,CAACvL,eAAe,CAACwL,WAAW,GAAG;EACjC,CAAC;EACD,MAAM5J,KAAU,GAAG,CAAC,CAAC;EACrB,IAAIgN,cAAc,EAAE;IAClB,MAAMC,UAAU,GAAGD,cAAc,CAACtI,yBAAyB,CAAC;IAC5D,IAAIuI,UAAU,EAAE;MACd,MAAM5I,OAAO,GAAG4I,UAAU,CAAC5I,OAAO;MAClC,MAAM+I,OAAO,GAAGH,UAAU,CAACG,OAAO;MAClC,MAAMF,OAAO,GAAGD,UAAU,CAACC,OAAO;MAClClN,KAAK,CAAC5B,eAAe,CAACqL,GAAG,CAAC,GAAG,CAAC,GAAGpF,OAAO,EAAE,GAAG+I,OAAO,EAAE,GAAGF,OAAO,CAAC;MACjE,IAAIA,OAAO,CAAC3F,MAAM,GAAG,CAAC,EAAEvH,KAAK,CAAC5B,eAAe,CAACsL,OAAO,CAAC,GAAGwD,OAAO;MAChE,IAAI7I,OAAO,CAACkD,MAAM,GAAG,CAAC,EAAEvH,KAAK,CAAC5B,eAAe,CAACuL,SAAS,CAAC,GAAGtF,OAAO;MAClE,IAAI+I,OAAO,CAAC7F,MAAM,GAAG,CAAC,EAAEvH,KAAK,CAAC5B,eAAe,CAACwL,WAAW,CAAC,GAAGwD,OAAO;MAEpE,MAAMlF,MAAM,GAAG,MAAM5I,gBAAgB,CAACkO,mBAAmB,CAACxN,KAAK,CAAC;MAEhE,OAAO;QAAE,GAAGuN,aAAa;QAAE,GAAGrF;MAAO,CAAC;IACxC,CAAC,MAAM;MACL,OAAOqF,aAAa;IACtB;EACF,CAAC,MAAM;IACL,OAAOA,aAAa;EACtB;AACF,CAAC;AAED,OAAO,MAAME,eAAe,GAAG,MAAO/I,yBAAiC,IAAK;EAC1E,IAAIkB,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EAEnC,MAAM4K,QAAa,GAAG,EAAE;;EAExB;EACA,MAAMC,UAAU,GAAG,CAAC,MAAMnE,qBAAqB,CAAC,CAAC,KAAK,CAAC,CAAC;EACxD,IAAImE,UAAU,EAAE;IACd,OAAOA,UAAU,CAACjJ,yBAAyB,CAAC;IAE5CgJ,QAAQ,CAACnN,IAAI,CACXqF,OAAO,CAACC,aAAa,CACnB3G,yBAAyB,EACzB4G,IAAI,CAACC,SAAS,CAAC4H,UAAU,CAC3B,CACF,CAAC;EACH;;EAEA;EACA,MAAMC,WAAW,GAAG,CAAC,MAAMjI,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC;EACvD,IAAIiI,WAAW,EAAE;IACf,OAAOA,WAAW,CAAClJ,yBAAyB,CAAC;IAE7CgJ,QAAQ,CAACnN,IAAI,CACXqF,OAAO,CAACC,aAAa,CACnB1G,6BAA6B,EAC7B2G,IAAI,CAACC,SAAS,CAAC6H,WAAW,CAC5B,CACF,CAAC;EACH;EACA,OAAO3D,OAAO,CAACC,GAAG,CAACwD,QAAQ,CAAC;AAC9B,CAAC;AAED,OAAO,eAAelE,qBAAqBA,CAAA,EAAgD;EACzF,IAAI5D,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMkK,cAAc,GAAG,MAAMpH,OAAO,CAAC0C,aAAa,CAACpJ,yBAAyB,CAAC;EAC7E,IAAI8N,cAAc,EAAE;IAClB,OAAOlH,IAAI,CAACyC,KAAK,CAACyE,cAAc,CAAC;EACnC,CAAC,MAAM;IACL,OAAO,IAAI;EACb;AACF;AAEA,OAAO,eAAeD,mBAAmBA,CAAA,EAAkC;EACzE,IAAInH,OAAO,GAAG5G,OAAO,CAAC8D,WAAW,CAAC,CAAC;EACnC,MAAMkK,cAAc,GAAG,MAAMpH,OAAO,CAAC0C,aAAa,CAChDnJ,6BACF,CAAC;EACD,IAAI6N,cAAc,EAAE;IAClB,OAAOlH,IAAI,CAACyC,KAAK,CAACyE,cAAc,CAAC;EACnC,CAAC,MAAM;IACL,OAAO,IAAI;EACb;AACF;AAEA,OAAO,MAAMN,eAAe,GAAGA,CAC7BhF,IAAY,EACZ7E,KAGC,KAC2C;EAC5C,QAAQA,KAAK,CAACgL,SAAS;IACrB,KAAKtO,YAAY,CAACuO,2BAA2B;MAC3C,OAAO;QACLzN,IAAI,EAAEP,YAAY,CAACwL,OAAO;QAC1BtI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAACuO,2BAA2B,CAC7E;MACL,CAAC;IACH,KAAKvO,YAAY,CAACwO,wBAAwB;MACxC,OAAO;QACL1N,IAAI,EAAEP,YAAY,CAACwL,OAAO;QAC1BtI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAACwO,wBAAwB,CAC1E;MACL,CAAC;IACH,KAAKxO,YAAY,CAACyO,mBAAmB;MACnC,OAAO;QACL3N,IAAI,EAAEP,YAAY,CAACwL,OAAO;QAC1BtI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAACyO,mBAAmB,CACrE;MACL,CAAC;IACH,KAAKzO,YAAY,CAAC0O,8BAA8B;MAC9C,OAAO;QACL5N,IAAI,EAAEP,YAAY,CAACwL,OAAO;QAC1BtI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAAC0O,8BAA8B,CAChF;MACL,CAAC;IACH,KAAK1O,YAAY,CAAC2O,yBAAyB;MACzC,OAAO;QACL7N,IAAI,EAAEP,YAAY,CAACwL,OAAO;QAC1BtI,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAAC2O,yBAAyB,CAC3E;MACL,CAAC;IACH,KAAK3O,YAAY,CAAC4O,yBAAyB;MACzC,OAAO;QACL9N,IAAI,EAAEP,YAAY,CAACoM,OAAO;QAC1BlJ,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAAC4O,yBAAyB,CAC3E;MACL,CAAC;IACH,KAAK5O,YAAY,CAAC6O,mBAAmB;MACnC,OAAO;QACL/N,IAAI,EAAEP,YAAY,CAACoM,OAAO;QAC1BlJ,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAAC6O,mBAAmB,CACrE;MACL,CAAC;IACH,KAAK7O,YAAY,CAAC8O,0BAA0B;MAC1C,OAAO;QACLhO,IAAI,EAAEP,YAAY,CAACoM,OAAO;QAC1BlJ,OAAO,EAAG,IAAG0E,IAAK,KAAIlI,iBAAiB,CAACD,YAAY,CAAC8O,0BAA0B,CAC5E;MACL,CAAC;IACH;MACE,OAAO;QACLhO,IAAI,EAAEP,YAAY,CAACwL,OAAO;QAC1BtI,OAAO,EAAE;MACX,CAAC;EACL;AACF,CAAC;AAED,OAAO,MAAMsL,WAAW,GAAIvK,UAAyB,IAAe;EAClE,MAAMwK,uBAAuB,GAAG1B,MAAM,CAACC,IAAI,CAAC/I,UAAU,CAAC,CACpDyK,MAAM,CAAEC,iBAAyB,IAAK;IACrC,MAAM/G,IAAI,GAAG3D,UAAU,CAAC0K,iBAAiB,CAAC;IAC1C,IAAI/G,IAAI,CAACvD,KAAK,GAAG,CAAC,EAAE,OAAO,IAAI;IAC/B,OAAO,KAAK;EACd,CAAC,CAAC,CACDgG,GAAG,CAAEb,kBAAkB,IAAKA,kBAAkB,CAAC;EAElD,OAAOiF,uBAAuB;AAChC,CAAC;AAED,OAAO,SAASG,cAAcA,CAC5BC,cAAyB,EACzBtO,IAA2B,EAChB;EACX,OAAOsO,cAAc,CAACH,MAAM,CACzBI,GAAG,IAAKxG,OAAO,CAACwG,GAAG,CAACvK,OAAO,CAAC,MAAMhE,IAAI,KAAK,SAAS,GAAG,IAAI,GAAG,KAAK,CACtE,CAAC;AACH;AAEA,OAAO,eAAewO,cAAcA,CAACxF,SAAuB,EAAE;EAC5D,MAAMH,QAAQ,GAAGG,SAAS,CAACH,QAAQ,IAAI,EAAE;EACzC,MAAM4F,2BAA2B,GAAG,MAAM3F,mCAAmC,CAC3E/K,eAAe,CAACuL,SAAS,EACzBN,SACF,CAAC;EACD,MAAM0F,6BAA6B,GACjC,MAAM5F,mCAAmC,CACvC/K,eAAe,CAACwL,WAAW,EAC3BP,SACF,CAAC;EAEH,IACE,CAAC,CAACyF,2BAA2B,IAC3BA,2BAA2B,CAACvH,MAAM,KAAK,CAAC,MACzC,CAACwH,6BAA6B,IAC7BA,6BAA6B,CAACxH,MAAM,KAAK,CAAC,CAAC,EAC7C;IACA;EACF;EAEA,MAAM9C,WAAkB,GAAG,EAAE;EAE7B,IAAIqK,2BAA2B,IAAIA,2BAA2B,CAACvH,MAAM,EAAE;IACrE,IAAIyH,WAAW,GAAG,IAAI;IACtB,IAAIhE,MAAM,GAAG,CAAC;IACd,MAAMD,KAAK,GAAG9L,eAAe;IAC7B,IAAIuI,KAAkC,GAAG;MAAE5E,IAAI,EAAE,EAAE;MAAEiI,UAAU,EAAE;IAAE,CAAC;IAEpE,GAAG;MACDrD,KAAK,GAAG,MAAMlI,gBAAgB,CAAC2L,aAAa,CAC1C/B,QAAQ,EACR4F,2BAA2B,EAC3B/D,KAAK,EACLC,MACF,CAAC;MACDxD,KAAK,CAAC5E,IAAI,CAACxC,OAAO,CAAEsH,IAAI,IAAK;QAC3BjD,WAAW,CAAClE,IAAI,CAAC;UACf+E,SAAS,EAAEoC,IAAI,CAAC4C;QAClB,CAAC,CAAC;MACJ,CAAC,CAAC;MAEFU,MAAM,IAAID,KAAK;MACfiE,WAAW,GAAGxH,KAAK,CAACqD,UAAU,GAAGG,MAAM,GAAG,CAAC,GAAG,CAAC;IACjD,CAAC,QAAQgE,WAAW;EACtB;EACA,IAAID,6BAA6B,IAAIA,6BAA6B,CAACxH,MAAM,EAAE;IACzE,IAAIyH,WAAW,GAAG,IAAI;IACtB,IAAIhE,MAAM,GAAG,CAAC;IACd,MAAMD,KAAK,GAAG9L,eAAe;IAC7B,IAAIuI,KAAkC,GAAG;MAAE5E,IAAI,EAAE,EAAE;MAAEiI,UAAU,EAAE;IAAE,CAAC;IAEpE,GAAG;MACDrD,KAAK,GAAG,MAAMlI,gBAAgB,CAAC2L,aAAa,CAC1C/B,QAAQ,EACR6F,6BAA6B,EAC7BhE,KAAK,EACLC,MACF,CAAC;MACDxD,KAAK,CAAC5E,IAAI,CAACxC,OAAO,CAAEsH,IAAI,IAAK;QAC3BjD,WAAW,CAAClE,IAAI,CAAC;UACf+E,SAAS,EAAEoC,IAAI,CAAC4C;QAClB,CAAC,CAAC;MACJ,CAAC,CAAC;MAEFU,MAAM,IAAID,KAAK;MACfiE,WAAW,GAAGxH,KAAK,CAACqD,UAAU,GAAGG,MAAM,GAAG,CAAC,GAAG,CAAC;IACjD,CAAC,QAAQgE,WAAW;EACtB;EACAvJ,gBAAgB,CAAC,gBAAgB,EAAE4D,SAAS,CAAC7E,KAAK,EAAEC,WAAW,CAAC;EAChE;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["View","Text","StyleSheet","BackHandler","Platform","React","useState","useLayoutEffect","Button","Provider","SvgXml","OTPInput","useTimer","CommonStyles","Fonts","generateOTP","parseRetryConfig","checkForValidation","ERROR_GENERATING_OTP","INVALID_OTP","INVALID_OTP_LENGTH","mobileSVG","EntityCode","ExecutionTaskID","getBaseETResponse","getEventCodeByET","SnackBarCustom","SnackBarType","Icon","GO_BACK_EVENT_CODE","hasGoBackConnector","GoBackModal","useFocusEffect","ScreenNameSdkConstants","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","ValidateOTPET","props","_props$generationLogi","_props$generationLogi2","showBackModal","setShowBackModal","useCallback","onBackPress","_props$taskMeta","taskMeta","enableGoBack","applicableReasons","navigation","goBack","addEventListener","removeEventListener","setOptions","title","headerLeft","createElement","onPress","_props$taskMeta2","cta","severityLevel","LOG","eventName","BUTTON_CLICKED","screenName","VALIDATE_OTP_ET_SCREEN","name","color","size","style","paddingRight","paddingTop","retryConfig","generationLogic","initialMinute","Math","floor","delay","initialSeconds","parseInt","toFixed","timer","resetTimer","sendOTP","setSendOTP","Boolean","generateOnLoad","retryCount","setRetryCount","userInput","setUserInput","captureInput","otpCode","setOTPCode","hasError","setHasError","errorMessage","setErrorMessage","snackBar","setSnackBar","show","type","SUCCESS","message","renderButtons","styles","bottomView","nextButton","width","marginStart","labelStyle","nextButtonLabel","mode","uppercase","_props$generationLogi3","response","api","FAILURE","length","replace","isValid","validation","_props$applicableReas","onSubmitET","VALIDATE_OTP_ET","success","mergedObjectiveId","cancelButton","marginEnd","cancelButtonLabel","_props$applicableReas2","failure","renderRetryButton","_props$generationLogi4","enableRetry","retryButton","disabled","maxAttempt","buttonTitle","renderErrorMessage","renderModal","showModal","setShowModal","onSuccess","onFailure","mainContainer","flex","justifyContent","alignItems","marginHorizontal","marginBottom","OS","xml","marginTop","titleText","visible","onDismiss","_props$captureInput","otpContainer","otpTitle","input","create","flexDirection","padding","backgroundColor","fontFamily","IBMPlexSans_400Regular","fontStyle","fontSize","lineHeight","letterSpacing","textAlign","marginVertical","subText","modalContent","modalView","borderRadius"],"sources":["ValidateOTPET.tsx"],"sourcesContent":["import { View, Text, StyleSheet, BackHandler, Platform } from 'react-native';\nimport React, { useState, useLayoutEffect } from 'react';\nimport { Button, Modal, Portal, Provider } from 'react-native-paper';\nimport { SvgXml } from 'react-native-svg';\nimport OTPInput from './sub-components/OTPInput';\nimport type { ValidateOTPInput } from './ValidateOTPSchema';\nimport useTimer from '../../../utils/hooks/useTimer';\nimport {\n CommonStyles,\n Fonts,\n} from '../../../styles/executionTasks/CommonStyles';\nimport { generateOTP, parseRetryConfig } from './utils';\nimport { checkForValidation } from './utils';\nimport {\n ERROR_GENERATING_OTP,\n INVALID_OTP,\n INVALID_OTP_LENGTH,\n mobileSVG,\n} from './constants';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport SnackBarCustom, {\n SnackBarType,\n} from '../../../components/widgets/SnackBarCustom';\nimport Icon from 'react-native-vector-icons/MaterialIcons';\nimport { GO_BACK_EVENT_CODE } from '../../../constants/constants';\nimport { hasGoBackConnector } from '../../../components/utils';\nimport GoBackModal from '../../../components/widgets/GoBackModal';\nimport { useFocusEffect } from '@react-navigation/native';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\n\nconst ValidateOTPET = (props: ValidateOTPInput) => {\n const [showBackModal, setShowBackModal] = useState(false);\n\n // Handle back-button click\n useFocusEffect(\n React.useCallback(() => {\n const onBackPress = () => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n ) {\n setShowBackModal(true);\n return true;\n } else {\n props.navigation.goBack();\n return true;\n }\n };\n BackHandler.addEventListener('hardwareBackPress', onBackPress);\n return () =>\n BackHandler.removeEventListener('hardwareBackPress', onBackPress);\n }, [])\n );\n\n useLayoutEffect(() => {\n props.navigation.setOptions({\n title: props.title,\n headerLeft: () => {\n return (\n <Icon\n onPress={() => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n )\n setShowBackModal(true);\n else props.navigation.goBack();\n const cta = 'Arrow Back';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.VALIDATE_OTP_ET_SCREEN, cta: cta }); \n \n }}\n name=\"arrow-back\"\n color={'black'}\n size={25}\n style={{\n paddingRight: 15,\n paddingTop: 5,\n }}\n />\n );\n },\n });\n }, [props.navigation, props.title]);\n\n const retryConfig = parseRetryConfig(props.generationLogic?.retryConfig);\n\n const initialMinute = Math.floor(retryConfig.delay / 60);\n const initialSeconds = parseInt((retryConfig.delay % 60).toFixed(0));\n const [timer, resetTimer] = useTimer({\n initialMinute,\n initialSeconds,\n });\n\n const [sendOTP, setSendOTP] = useState(\n Boolean(props.generationLogic?.generateOnLoad)\n );\n const [retryCount, setRetryCount] = useState(0);\n\n const [userInput, setUserInput] = useState({\n captureInput: '',\n });\n const { captureInput: otpCode } = userInput;\n\n const setOTPCode = (otpCode: string) => {\n setUserInput({ ...userInput, captureInput: otpCode });\n };\n\n const [hasError, setHasError] = useState(false);\n const [errorMessage, setErrorMessage] = useState('');\n\n const [snackBar, setSnackBar] = useState({\n show: false,\n type: SnackBarType.SUCCESS,\n message: '',\n });\n\n const renderButtons = () => {\n return (\n <View style={styles.bottomView}>\n <View>\n <Button\n style={[CommonStyles.nextButton, { width: 165, marginStart: 10 }]}\n labelStyle={CommonStyles.nextButtonLabel}\n mode={'contained'}\n uppercase={false}\n onPress={async () => {\n // send OTP Generation using props\n if (\n sendOTP &&\n props.generationLogic &&\n props.generationLogic?.generateOnLoad\n ) {\n const response = await generateOTP(props.generationLogic.api);\n resetTimer();\n if (response) setSendOTP(false);\n else\n setSnackBar({\n show: true,\n message: ERROR_GENERATING_OTP,\n type: SnackBarType.FAILURE,\n });\n }\n // check for Validation\n else if (!sendOTP) {\n if (otpCode.length < props.captureInput.length) {\n setSnackBar({\n show: true,\n message: INVALID_OTP_LENGTH.replace(\n '<length>',\n `${props.captureInput.length}`\n ),\n type: SnackBarType.FAILURE,\n });\n } else {\n const isValid = await checkForValidation(\n otpCode,\n props.validation,\n { userInput }\n );\n\n if (!isValid) {\n setErrorMessage(INVALID_OTP);\n setHasError(true);\n } else {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.VALIDATE_OTP_ET,\n true,\n getEventCodeByET(\n ExecutionTaskID.VALIDATE_OTP_ET,\n true,\n props.applicableReasons?.success\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.VALIDATE_OTP_ET\n )),\n });\n }\n }\n }\n const cta = 'Proceed';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.VALIDATE_OTP_ET_SCREEN, cta: cta }); \n \n }}\n >\n Proceed\n </Button>\n </View>\n <View>\n <Button\n style={[CommonStyles.cancelButton, { width: 165, marginEnd: 10 }]}\n labelStyle={CommonStyles.cancelButtonLabel}\n mode={'outlined'}\n uppercase={false}\n onPress={async () => {\n // Cancel the ET\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.VALIDATE_OTP_ET,\n false,\n getEventCodeByET(\n ExecutionTaskID.VALIDATE_OTP_ET,\n false,\n props.applicableReasons?.failure\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.VALIDATE_OTP_ET\n )),\n });\n const cta = 'Skip';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.VALIDATE_OTP_ET_SCREEN, cta: cta }); \n \n }}\n >\n Skip\n </Button>\n </View>\n </View>\n );\n };\n\n const renderRetryButton = () => {\n const generationLogic = props.generationLogic;\n const enableRetry = props.generationLogic?.enableRetry;\n\n if (generationLogic && enableRetry) {\n return (\n <View style={styles.retryButton}>\n <Button\n disabled={Boolean(timer) || retryCount === retryConfig.maxAttempt}\n uppercase={false}\n onPress={async () => {\n setOTPCode('');\n setRetryCount((retryCount) => retryCount + 1);\n await generateOTP(generationLogic.api);\n resetTimer();\n const cta = retryConfig.buttonTitle;\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.VALIDATE_OTP_ET_SCREEN, cta: cta }); \n \n }}\n >{`${retryConfig.buttonTitle} ${timer ? `in ${timer}` : ''}`}</Button>\n </View>\n );\n } else return null;\n };\n\n const renderErrorMessage = () => {\n return errorMessage ? (\n <Text style={styles.errorMessage}>{errorMessage}</Text>\n ) : null;\n };\n\n const renderModal = () => {\n return (\n <GoBackModal\n showModal={showBackModal}\n setShowModal={setShowBackModal}\n onSuccess={async () => {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.VALIDATE_OTP_ET,\n false,\n GO_BACK_EVENT_CODE,\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.VALIDATE_OTP_ET\n )),\n });\n setShowBackModal(false);\n }}\n onFailure={() => setShowBackModal(false)}\n />\n );\n };\n\n if (sendOTP) {\n return (\n <Provider>\n <View style={CommonStyles.mainContainer}>\n {renderModal()}\n <View\n style={{\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n marginHorizontal: 18,\n }}\n >\n <View style={{ marginBottom: 16 }}>\n {Platform.OS === 'android' && <SvgXml xml={mobileSVG} /> }\n </View>\n <View style={{ marginTop: 16 }}>\n <Text style={styles.titleText}>\n Do you want to proceed to OTP verification? This will send a\n verification code to your consignee.\n </Text>\n </View>\n </View>\n {renderButtons()}\n <SnackBarCustom\n type={snackBar.type}\n message={`${snackBar.message}`}\n visible={snackBar.show}\n onDismiss={() => {\n setSnackBar({\n show: false,\n message: '',\n type: SnackBarType.SUCCESS,\n });\n }}\n />\n </View>\n </Provider>\n );\n }\n if (!sendOTP) {\n return (\n <Provider>\n <View style={CommonStyles.mainContainer}>\n {renderModal()}\n <View style={styles.otpContainer}>\n <View style={styles.otpTitle}>\n <Text>\n Enter the {props.captureInput?.length} digit OTP sent to the\n consignee to confirm order completion\n </Text>\n </View>\n <OTPInput\n input={props.captureInput}\n otpCode={otpCode}\n setOTPCode={setOTPCode}\n hasError={hasError}\n setHasError={setHasError}\n setErrorMessage={setErrorMessage}\n />\n {renderErrorMessage()}\n {renderRetryButton()}\n </View>\n {renderButtons()}\n <SnackBarCustom\n type={snackBar.type}\n message={`${snackBar.message}`}\n visible={snackBar.show}\n onDismiss={() => {\n setSnackBar({\n show: false,\n message: '',\n type: SnackBarType.SUCCESS,\n });\n }}\n />\n </View>\n </Provider>\n );\n }\n return null;\n};\n\nexport default ValidateOTPET;\n\nconst styles = StyleSheet.create({\n bottomView: {\n flexDirection: 'row-reverse',\n justifyContent: 'space-evenly',\n padding: 16,\n backgroundColor: 'white',\n },\n titleText: {\n justifyContent: 'center',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontStyle: 'normal',\n fontSize: 16,\n lineHeight: 20,\n letterSpacing: 0.25,\n textAlign: 'center',\n color: '#3D445C',\n marginBottom: 10,\n },\n otpTitle: {\n marginTop: 10,\n marginBottom: 20,\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontStyle: 'normal',\n fontSize: 16,\n lineHeight: 20,\n letterSpacing: 0.25,\n color: '#3D445C',\n alignItems: 'center',\n },\n otpContainer: {\n marginTop: 20,\n marginBottom: 40,\n marginHorizontal: 10,\n flex: 1,\n },\n retryButton: {\n alignItems: 'flex-start',\n marginVertical: 10,\n },\n errorMessage: {\n marginTop: 16,\n marginHorizontal: 10,\n color: '#DC2626',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontSize: 12,\n lineHeight: 16,\n },\n subText: {\n justifyContent: 'center',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontStyle: 'normal',\n fontSize: 14,\n letterSpacing: 0.25,\n lineHeight: 20,\n textAlign: 'center',\n color: '#000000',\n marginBottom: 10,\n },\n modalContent: {\n marginStart: 60,\n marginEnd: 60,\n flex: 1,\n marginBottom: 60,\n },\n modalView: {\n backgroundColor: 'white',\n padding: 15,\n borderRadius: 9,\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["View","Text","StyleSheet","BackHandler","Platform","React","useState","useLayoutEffect","Button","Provider","SvgXml","OTPInput","useTimer","CommonStyles","Fonts","generateOTP","parseRetryConfig","checkForValidation","ERROR_GENERATING_OTP","INVALID_OTP","INVALID_OTP_LENGTH","mobileSVG","EntityCode","ExecutionTaskID","getBaseETResponse","getEventCodeByET","SnackBarCustom","SnackBarType","Icon","GO_BACK_EVENT_CODE","hasGoBackConnector","GoBackModal","useFocusEffect","ScreenNameSdkConstants","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","ValidateOTPET","props","_props$generationLogi","_props$generationLogi2","showBackModal","setShowBackModal","useCallback","onBackPress","_props$taskMeta","taskMeta","enableGoBack","applicableReasons","navigation","goBack","addEventListener","removeEventListener","setOptions","title","headerLeft","createElement","onPress","_props$taskMeta2","cta","severityLevel","LOG","eventName","BUTTON_CLICKED","screenName","VALIDATE_OTP_ET_SCREEN","name","color","size","style","paddingRight","paddingTop","retryConfig","generationLogic","initialMinute","Math","floor","delay","initialSeconds","parseInt","toFixed","timer","resetTimer","sendOTP","setSendOTP","Boolean","generateOnLoad","retryCount","setRetryCount","userInput","setUserInput","captureInput","otpCode","setOTPCode","hasError","setHasError","errorMessage","setErrorMessage","snackBar","setSnackBar","show","type","SUCCESS","message","renderButtons","styles","bottomView","nextButton","width","marginStart","labelStyle","nextButtonLabel","mode","uppercase","_props$generationLogi3","response","api","FAILURE","length","replace","isValid","validation","_props$applicableReas","onSubmitET","VALIDATE_OTP_ET","success","mergedObjectiveId","cancelButton","marginEnd","cancelButtonLabel","_props$applicableReas2","failure","renderRetryButton","_props$generationLogi4","enableRetry","retryButton","disabled","maxAttempt","buttonTitle","renderErrorMessage","renderModal","showModal","setShowModal","onSuccess","onFailure","mainContainer","flex","justifyContent","alignItems","marginHorizontal","marginBottom","OS","xml","marginTop","titleText","visible","onDismiss","_props$captureInput","otpContainer","otpTitle","input","create","flexDirection","padding","backgroundColor","fontFamily","IBMPlexSans_400Regular","fontStyle","fontSize","lineHeight","letterSpacing","textAlign","marginVertical","subText","modalContent","modalView","borderRadius"],"sources":["ValidateOTPET.tsx"],"sourcesContent":["import { View, Text, StyleSheet, BackHandler, Platform } from 'react-native';\nimport React, { useState, useLayoutEffect } from 'react';\nimport { Button, Modal, Portal, Provider } from 'react-native-paper';\nimport { SvgXml } from 'react-native-svg';\nimport OTPInput from './sub-components/OTPInput';\nimport type { ValidateOTPInput } from './ValidateOTPSchema';\nimport useTimer from '../../../utils/hooks/useTimer';\nimport {\n CommonStyles,\n Fonts,\n} from '../../../styles/executionTasks/CommonStyles';\nimport { generateOTP, parseRetryConfig } from './utils';\nimport { checkForValidation } from './utils';\nimport {\n ERROR_GENERATING_OTP,\n INVALID_OTP,\n INVALID_OTP_LENGTH,\n mobileSVG,\n} from './constants';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport SnackBarCustom, {\n SnackBarType,\n} from '../../../components/widgets/SnackBarCustom';\nimport Icon from 'react-native-vector-icons/MaterialIcons';\nimport { GO_BACK_EVENT_CODE } from '../../../constants/constants';\nimport { hasGoBackConnector } from '../../../components/utils';\nimport GoBackModal from '../../../components/widgets/GoBackModal';\nimport { useFocusEffect } from '@react-navigation/native';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\n\nconst ValidateOTPET = (props: ValidateOTPInput) => {\n const [showBackModal, setShowBackModal] = useState(false);\n\n // Handle back-button click\n useFocusEffect(\n React.useCallback(() => {\n const onBackPress = () => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n ) {\n setShowBackModal(true);\n return true;\n } else {\n props.navigation.goBack();\n return true;\n }\n };\n BackHandler.addEventListener('hardwareBackPress', onBackPress);\n return () =>\n BackHandler.removeEventListener('hardwareBackPress', onBackPress);\n }, [])\n );\n\n useLayoutEffect(() => {\n props.navigation.setOptions({\n title: props.title,\n headerLeft: () => {\n return (\n <Icon\n onPress={() => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n )\n setShowBackModal(true);\n else props.navigation.goBack();\n const cta = 'Arrow Back';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.VALIDATE_OTP_ET_SCREEN, cta: cta }); \n \n }}\n name=\"arrow-back\"\n color={'black'}\n size={25}\n style={{\n paddingRight: 15,\n paddingTop: 5,\n }}\n />\n );\n },\n });\n }, [props.navigation, props.title]);\n\n const retryConfig = parseRetryConfig(props.generationLogic?.retryConfig);\n\n const initialMinute = Math.floor(retryConfig.delay / 60);\n const initialSeconds = parseInt((retryConfig.delay % 60).toFixed(0));\n const [timer, resetTimer] = useTimer({\n initialMinute,\n initialSeconds,\n });\n\n const [sendOTP, setSendOTP] = useState(\n Boolean(props.generationLogic?.generateOnLoad)\n );\n const [retryCount, setRetryCount] = useState(0);\n\n const [userInput, setUserInput] = useState({\n captureInput: '',\n });\n const { captureInput: otpCode } = userInput;\n\n const setOTPCode = (otpCode: string) => {\n setUserInput({ ...userInput, captureInput: otpCode });\n };\n\n const [hasError, setHasError] = useState(false);\n const [errorMessage, setErrorMessage] = useState('');\n\n const [snackBar, setSnackBar] = useState({\n show: false,\n type: SnackBarType.SUCCESS,\n message: '',\n });\n\n const renderButtons = () => {\n return (\n <View style={styles.bottomView}>\n <View>\n <Button\n style={[CommonStyles.nextButton, { width: 165, marginStart: 10 }]}\n labelStyle={CommonStyles.nextButtonLabel}\n mode={'contained'}\n uppercase={false}\n onPress={async () => {\n // send OTP Generation using props\n if (\n sendOTP &&\n props.generationLogic &&\n props.generationLogic?.generateOnLoad\n ) {\n const response = await generateOTP(props.generationLogic.api);\n resetTimer();\n if (response) setSendOTP(false);\n else\n setSnackBar({\n show: true,\n message: ERROR_GENERATING_OTP,\n type: SnackBarType.FAILURE,\n });\n }\n // check for Validation\n else if (!sendOTP) {\n if (otpCode.length < props.captureInput.length) {\n setSnackBar({\n show: true,\n message: INVALID_OTP_LENGTH.replace(\n '<length>',\n `${props.captureInput.length}`\n ),\n type: SnackBarType.FAILURE,\n });\n } else {\n const isValid = await checkForValidation(\n otpCode,\n props.validation,\n { userInput }\n );\n\n if (!isValid) {\n setErrorMessage(INVALID_OTP);\n setHasError(true);\n } else {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.VALIDATE_OTP_ET,\n true,\n getEventCodeByET(\n ExecutionTaskID.VALIDATE_OTP_ET,\n true,\n props.applicableReasons?.success\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.VALIDATE_OTP_ET\n )),\n });\n }\n }\n }\n const cta = 'Proceed';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.VALIDATE_OTP_ET_SCREEN, cta: cta }); \n \n }}\n >\n Proceed\n </Button>\n </View>\n <View>\n <Button\n style={[CommonStyles.cancelButton, { width: 165, marginEnd: 10 }]}\n labelStyle={CommonStyles.cancelButtonLabel}\n mode={'outlined'}\n uppercase={false}\n onPress={async () => {\n // Cancel the ET\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.VALIDATE_OTP_ET,\n false,\n getEventCodeByET(\n ExecutionTaskID.VALIDATE_OTP_ET,\n false,\n props.applicableReasons?.failure\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.VALIDATE_OTP_ET\n )),\n });\n const cta = 'Skip';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.VALIDATE_OTP_ET_SCREEN, cta: cta }); \n \n }}\n >\n Skip\n </Button>\n </View>\n </View>\n );\n };\n\n const renderRetryButton = () => {\n const generationLogic = props.generationLogic;\n const enableRetry = props.generationLogic?.enableRetry;\n\n if (generationLogic && enableRetry) {\n return (\n <View style={styles.retryButton}>\n <Button\n disabled={Boolean(timer) || retryCount === retryConfig.maxAttempt}\n uppercase={false}\n onPress={async () => {\n setOTPCode('');\n setRetryCount((retryCount) => retryCount + 1);\n await generateOTP(generationLogic.api);\n resetTimer();\n const cta = retryConfig.buttonTitle;\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.VALIDATE_OTP_ET_SCREEN, cta: cta }); \n \n }}\n >{`${retryConfig.buttonTitle} ${timer ? `in ${timer}` : ''}`}</Button>\n </View>\n );\n } else return null;\n };\n\n const renderErrorMessage = () => {\n return errorMessage ? (\n <Text style={styles.errorMessage}>{errorMessage}</Text>\n ) : null;\n };\n\n const renderModal = () => {\n return (\n <GoBackModal\n showModal={showBackModal}\n setShowModal={setShowBackModal}\n onSuccess={async () => {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.VALIDATE_OTP_ET,\n false,\n GO_BACK_EVENT_CODE,\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.VALIDATE_OTP_ET\n )),\n });\n setShowBackModal(false);\n }}\n onFailure={() => setShowBackModal(false)}\n />\n );\n };\n\n if (sendOTP) {\n return (\n <Provider>\n <View style={CommonStyles.mainContainer}>\n {renderModal()}\n <View\n style={{\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n marginHorizontal: 18,\n }}\n >\n <View style={{ marginBottom: 16 }}>\n {Platform.OS === 'android' && <SvgXml xml={mobileSVG} /> }\n </View>\n <View style={{ marginTop: 16 }}>\n <Text style={styles.titleText}>\n Do you want to proceed to OTP verification? This will send a\n verification code to your consignee.\n </Text>\n </View>\n </View>\n {renderButtons()}\n <SnackBarCustom\n type={snackBar.type}\n message={`${snackBar.message}`}\n visible={snackBar.show}\n onDismiss={() => {\n setSnackBar({\n show: false,\n message: '',\n type: SnackBarType.SUCCESS,\n });\n }}\n />\n </View>\n </Provider>\n );\n }\n if (!sendOTP) {\n return (\n <Provider>\n <View style={CommonStyles.mainContainer}>\n {renderModal()}\n <View style={styles.otpContainer}>\n <View style={styles.otpTitle}>\n <Text>\n Enter the {props.captureInput?.length} digit OTP sent to the\n consignee to confirm order completion\n </Text>\n </View>\n <OTPInput\n input={props.captureInput}\n otpCode={otpCode}\n setOTPCode={setOTPCode}\n hasError={hasError}\n setHasError={setHasError}\n setErrorMessage={setErrorMessage}\n />\n {renderErrorMessage()}\n {renderRetryButton()}\n </View>\n {renderButtons()}\n <SnackBarCustom\n type={snackBar.type}\n message={`${snackBar.message}`}\n visible={snackBar.show}\n onDismiss={() => {\n setSnackBar({\n show: false,\n message: '',\n type: SnackBarType.SUCCESS,\n });\n }}\n />\n </View>\n </Provider>\n );\n }\n return null;\n};\n\nexport default ValidateOTPET;\n\nconst styles = StyleSheet.create({\n bottomView: {\n flexDirection: 'row-reverse',\n justifyContent: 'space-evenly',\n padding: 16,\n backgroundColor: 'white',\n },\n titleText: {\n justifyContent: 'center',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontStyle: 'normal',\n fontSize: 16,\n lineHeight: 20,\n letterSpacing: 0.25,\n textAlign: 'center',\n color: '#3D445C',\n marginBottom: 10,\n },\n otpTitle: {\n marginTop: 10,\n marginBottom: 20,\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontStyle: 'normal',\n fontSize: 16,\n lineHeight: 20,\n letterSpacing: 0.25,\n color: '#3D445C',\n alignItems: 'center',\n },\n otpContainer: {\n marginTop: 20,\n marginBottom: 40,\n marginHorizontal: 10,\n flex: 1,\n },\n retryButton: {\n alignItems: 'flex-start',\n marginVertical: 10,\n },\n errorMessage: {\n marginTop: 16,\n marginHorizontal: 10,\n color: '#DC2626',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontSize: 12,\n lineHeight: 16,\n },\n subText: {\n justifyContent: 'center',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontStyle: 'normal',\n fontSize: 14,\n letterSpacing: 0.25,\n lineHeight: 20,\n textAlign: 'center',\n color: '#000000',\n marginBottom: 10,\n },\n modalContent: {\n marginStart: 60,\n marginEnd: 60,\n flex: 1,\n marginBottom: 60,\n },\n modalView: {\n backgroundColor: 'white',\n padding: 15,\n borderRadius: 9,\n },\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["InputType"],"sources":["ValidateOTPSchema.ts"],"sourcesContent":["import type {\n HTTPRequestBody,\n PathParams,\n QueryParams,\n} from '../../../utils/ApiUtils';\nimport type {\n BaseETRequest,\n BaseETResponse,\n} from '../../../models/execTasks/ETBaseModels';\nimport type { Headers, HTTPMethod } from '../httpRequest/HttpRequestETSchema';\n\nexport interface API {\n uri: string;\n timeout?: number;\n httpMethod: HTTPMethod;\n headers?: Headers[];\n requestBody?: HTTPRequestBody;\n queryParams?: QueryParams[];\n pathParams?: PathParams[];\n responseJsonLogic: object;\n errorJsonLogic: object;\n}\n\nexport type ValidationRegex = string; // Regex to validate strings\n\nexport interface RetryConfig {\n buttonTitle: string; // Button Title if retry is enabled\n maxAttempt: number; // Number of attempts allowed\n delay: number; // Delay in enabling resend again\n}\n\nexport interface GenerationLogic {\n generateOnLoad: boolean; // Need to generate to OTP\n enableRetry: boolean; // Need to enable retry\n api: API; // base API to generate OTP\n retryConfig?: RetryConfig; // Config for retry of OTP\n}\n\nexport enum InputType {\n STRING = 'string',\n NUMBER = 'number',\n}\n\nexport interface CaptureInput {\n inputType: InputType; // Type of input to be captured\n length: number; // Max length of OTP\n validationRegex?: ValidationRegex; // Need to validate the input\n}\n\nexport interface Value {\n value: string;\n}\n\nexport type Logic = { api: API } | { value: Value };\n\nexport interface Validation {\n selectedIndex: number;\n logic: Logic;\n}\n\nexport type ValidateOTPInput = BaseETRequest & {\n generationLogic?: GenerationLogic;\n captureInput: CaptureInput;\n validation: Validation;\n onSubmitET: (validateOTPOutput: ValidateOTPOutput) => void;\n};\n\nexport type ValidateOTPOutput = BaseETResponse;\n"],"mappings":"AAuBsC;;AAetC,WAAYA,SAAS,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA"}
1
+ {"version":3,"names":["InputType"],"sources":["ValidateOTPSchema.ts"],"sourcesContent":["import type {\n HTTPRequestBody,\n PathParams,\n QueryParams,\n} from '../../../utils/ApiUtils';\nimport type {\n BaseETRequest,\n BaseETResponse,\n} from '../../../models/execTasks/ETBaseModels';\nimport type { Headers, HTTPMethod } from '../httpRequest/HttpRequestETSchema';\n\nexport interface API {\n uri: string;\n timeout?: number;\n httpMethod: HTTPMethod;\n headers?: Headers[];\n requestBody?: HTTPRequestBody;\n queryParams?: QueryParams[];\n pathParams?: PathParams[];\n responseJsonLogic: object;\n errorJsonLogic: object;\n}\n\nexport type ValidationRegex = string; // Regex to validate strings\n\nexport interface RetryConfig {\n buttonTitle: string; // Button Title if retry is enabled\n maxAttempt: number; // Number of attempts allowed\n delay: number; // Delay in enabling resend again\n}\n\nexport interface GenerationLogic {\n generateOnLoad: boolean; // Need to generate to OTP\n enableRetry: boolean; // Need to enable retry\n api: API; // base API to generate OTP\n retryConfig?: RetryConfig; // Config for retry of OTP\n}\n\nexport enum InputType {\n STRING = 'string',\n NUMBER = 'number',\n}\n\nexport interface CaptureInput {\n inputType: InputType; // Type of input to be captured\n length: number; // Max length of OTP\n validationRegex?: ValidationRegex; // Need to validate the input\n}\n\nexport interface Value {\n value: string;\n}\n\nexport type Logic = { api: API } | { value: Value };\n\nexport interface Validation {\n selectedIndex: number;\n logic: Logic;\n}\n\nexport type ValidateOTPInput = BaseETRequest & {\n generationLogic?: GenerationLogic;\n captureInput: CaptureInput;\n validation: Validation;\n onSubmitET: (validateOTPOutput: ValidateOTPOutput) => void;\n};\n\nexport type ValidateOTPOutput = BaseETResponse;\n"],"mappings":"AAuBsC;;AAetC,WAAYA,SAAS,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["INVALID_OTP","INVALID_OTP_LENGTH","INVALID_REGEX","ERROR_GENERATING_OTP","mobileSVG","DEFAULT_RETRY_CONFIG","buttonTitle","delay","maxAttempt"],"sources":["constants.ts"],"sourcesContent":["export const INVALID_OTP = `Wrong or expired OTP. Please try again.`;\nexport const INVALID_OTP_LENGTH = `OTP should be of length <length>`;\nexport const INVALID_REGEX = `Invalid OTP entered. Must match the expected pattern.`;\nexport const ERROR_GENERATING_OTP = `Error occured while Generating OTP`;\nexport const mobileSVG = `<svg width=\"164\" height=\"164\" viewBox=\"0 0 164 164\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n<mask id=\"mask0_3391_199849\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"0\" y=\"0\" width=\"164\" height=\"164\">\n<rect width=\"164\" height=\"164\" fill=\"url(#pattern0)\"/>\n</mask>\n<g mask=\"url(#mask0_3391_199849)\">\n<rect x=\"-28\" y=\"-29\" width=\"221\" height=\"221\" fill=\"#5B80F7\"/>\n</g>\n<defs>\n<pattern id=\"pattern0\" patternContentUnits=\"objectBoundingBox\" width=\"1\" height=\"1\">\n<use xlink:href=\"#image0_3391_199849\" transform=\"scale(0.0078125)\"/>\n</pattern>\n<image id=\"image0_3391_199849\" width=\"128\" height=\"128\" xlink:href=\"data:image/png;base64,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\"/>\n</defs>\n</svg>\n`;\nexport const DEFAULT_RETRY_CONFIG = {\n buttonTitle: 'Resend OTP',\n delay: 10,\n maxAttempt: 3,\n};\n"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAI,yCAAwC;AACpE,OAAO,MAAMC,kBAAkB,GAAI,kCAAiC;AACpE,OAAO,MAAMC,aAAa,GAAI,uDAAsD;AACpF,OAAO,MAAMC,oBAAoB,GAAI,oCAAmC;AACxE,OAAO,MAAMC,SAAS,GAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,OAAO,MAAMC,oBAAoB,GAAG;EAClCC,WAAW,EAAE,YAAY;EACzBC,KAAK,EAAE,EAAE;EACTC,UAAU,EAAE;AACd,CAAC"}
1
+ {"version":3,"names":["INVALID_OTP","INVALID_OTP_LENGTH","INVALID_REGEX","ERROR_GENERATING_OTP","mobileSVG","DEFAULT_RETRY_CONFIG","buttonTitle","delay","maxAttempt"],"sources":["constants.ts"],"sourcesContent":["export const INVALID_OTP = `Wrong or expired OTP. Please try again.`;\nexport const INVALID_OTP_LENGTH = `OTP should be of length <length>`;\nexport const INVALID_REGEX = `Invalid OTP entered. Must match the expected pattern.`;\nexport const ERROR_GENERATING_OTP = `Error occured while Generating OTP`;\nexport const mobileSVG = `<svg width=\"164\" height=\"164\" viewBox=\"0 0 164 164\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n<mask id=\"mask0_3391_199849\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"0\" y=\"0\" width=\"164\" height=\"164\">\n<rect width=\"164\" height=\"164\" fill=\"url(#pattern0)\"/>\n</mask>\n<g mask=\"url(#mask0_3391_199849)\">\n<rect x=\"-28\" y=\"-29\" width=\"221\" height=\"221\" fill=\"#5B80F7\"/>\n</g>\n<defs>\n<pattern id=\"pattern0\" patternContentUnits=\"objectBoundingBox\" width=\"1\" height=\"1\">\n<use xlink:href=\"#image0_3391_199849\" transform=\"scale(0.0078125)\"/>\n</pattern>\n<image id=\"image0_3391_199849\" width=\"128\" height=\"128\" xlink:href=\"data:image/png;base64,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\"/>\n</defs>\n</svg>\n`;\nexport const DEFAULT_RETRY_CONFIG = {\n buttonTitle: 'Resend OTP',\n delay: 10,\n maxAttempt: 3,\n};\n"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAI,yCAAwC;AACpE,OAAO,MAAMC,kBAAkB,GAAI,kCAAiC;AACpE,OAAO,MAAMC,aAAa,GAAI,uDAAsD;AACpF,OAAO,MAAMC,oBAAoB,GAAI,oCAAmC;AACxE,OAAO,MAAMC,SAAS,GAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,OAAO,MAAMC,oBAAoB,GAAG;EAClCC,WAAW,EAAE,YAAY;EACzBC,KAAK,EAAE,EAAE;EACTC,UAAU,EAAE;AACd,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","Pressable","Keyboard","Platform","React","useEffect","SplitTextInput","Fonts","InputType","INVALID_REGEX","OTPInput","props","maximumCodeLength","input","length","keyboardType","inputType","NUMBER","validationRegex","otpCode","regex","RegExp","hasError","test","setHasError","setErrorMessage","createElement","Fragment","onPress","dismiss","styles","text","value","onChange","setOTPCode","maxLength","create","fontFamily","OS","IBMPlexSans_400Regular","color","fontSize","textAlign","errorMessage","marginTop","marginHorizontal","lineHeight"],"sources":["OTPInput.tsx"],"sourcesContent":["import { StyleSheet, Pressable, Keyboard, Platform } from 'react-native';\nimport React, { useEffect } from 'react';\nimport SplitTextInput from '../../../widgets/SplitTextInput';\nimport { Fonts } from '../../../../styles/executionTasks/CommonStyles';\nimport { InputType, CaptureInput } from '../ValidateOTPSchema';\nimport { INVALID_REGEX } from '../constants';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../../analytics/sentry/SentryAnalyticsUtils';\n\nexport interface OTPInputProps {\n input: CaptureInput;\n otpCode: string;\n setOTPCode: (otpCode: string) => void;\n hasError: boolean;\n setHasError: (hasError: boolean) => void;\n setErrorMessage: (errorMessage: string) => void;\n}\n\nconst OTPInput = (props: OTPInputProps) => {\n const maximumCodeLength = props.input.length;\n const keyboardType =\n props.input.inputType === InputType.NUMBER ? 'number-pad' : 'default';\n\n useEffect(() => {\n if (\n props.input.validationRegex &&\n props.otpCode.length === maximumCodeLength\n ) {\n const regex = new RegExp(props.input.validationRegex);\n const hasError = !regex.test(props.otpCode);\n\n props.setHasError(hasError);\n if (hasError) props.setErrorMessage(INVALID_REGEX);\n else props.setErrorMessage('');\n }\n }, [props.otpCode]);\n\n return (\n <>\n <Pressable onPress={Keyboard.dismiss}>\n <SplitTextInput\n styles={styles.text}\n value={props.otpCode}\n onChange={(text) => {\n if (props.input.validationRegex) {\n }\n if (props.hasError) {\n props.setErrorMessage('');\n props.setHasError(false);\n }\n props.setOTPCode(text);\n }}\n maxLength={maximumCodeLength}\n keyboardType={keyboardType}\n hasError={props.hasError}\n />\n </Pressable>\n </>\n );\n};\n\nexport default OTPInput;\n\nconst styles = StyleSheet.create({\n text: {\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n color: '#3D445C',\n fontSize: 20,\n textAlign: 'center',\n },\n errorMessage: {\n marginTop: 16,\n marginHorizontal: 10,\n color: '#DC2626',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontSize: 12,\n lineHeight: 16,\n },\n});\n"],"mappings":"AAAA,SAASA,UAAU,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,QAAQ,QAAQ,cAAc;AACxE,OAAOC,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,OAAOC,cAAc,MAAM,iCAAiC;AAC5D,SAASC,KAAK,QAAQ,gDAAgD;AACtE,SAASC,SAAS,QAAsB,sBAAsB;AAC9D,SAASC,aAAa,QAAQ,cAAc;AAa5C,MAAMC,QAAQ,GAAIC,KAAoB,IAAK;EACzC,MAAMC,iBAAiB,GAAGD,KAAK,CAACE,KAAK,CAACC,MAAM;EAC5C,MAAMC,YAAY,GAChBJ,KAAK,CAACE,KAAK,CAACG,SAAS,KAAKR,SAAS,CAACS,MAAM,GAAG,YAAY,GAAG,SAAS;EAEvEZ,SAAS,CAAC,MAAM;IACd,IACEM,KAAK,CAACE,KAAK,CAACK,eAAe,IAC3BP,KAAK,CAACQ,OAAO,CAACL,MAAM,KAAKF,iBAAiB,EAC1C;MACA,MAAMQ,KAAK,GAAG,IAAIC,MAAM,CAACV,KAAK,CAACE,KAAK,CAACK,eAAe,CAAC;MACrD,MAAMI,QAAQ,GAAG,CAACF,KAAK,CAACG,IAAI,CAACZ,KAAK,CAACQ,OAAO,CAAC;MAE3CR,KAAK,CAACa,WAAW,CAACF,QAAQ,CAAC;MAC3B,IAAIA,QAAQ,EAAEX,KAAK,CAACc,eAAe,CAAChB,aAAa,CAAC,CAAC,KAC9CE,KAAK,CAACc,eAAe,CAAC,EAAE,CAAC;IAChC;EACF,CAAC,EAAE,CAACd,KAAK,CAACQ,OAAO,CAAC,CAAC;EAEnB,oBACEf,KAAA,CAAAsB,aAAA,CAAAtB,KAAA,CAAAuB,QAAA,qBACEvB,KAAA,CAAAsB,aAAA,CAACzB,SAAS;IAAC2B,OAAO,EAAE1B,QAAQ,CAAC2B;EAAQ,gBACnCzB,KAAA,CAAAsB,aAAA,CAACpB,cAAc;IACbwB,MAAM,EAAEA,MAAM,CAACC,IAAK;IACpBC,KAAK,EAAErB,KAAK,CAACQ,OAAQ;IACrBc,QAAQ,EAAGF,IAAI,IAAK;MAClB,IAAIpB,KAAK,CAACE,KAAK,CAACK,eAAe,EAAE,CACjC;MACA,IAAIP,KAAK,CAACW,QAAQ,EAAE;QAClBX,KAAK,CAACc,eAAe,CAAC,EAAE,CAAC;QACzBd,KAAK,CAACa,WAAW,CAAC,KAAK,CAAC;MAC1B;MACAb,KAAK,CAACuB,UAAU,CAACH,IAAI,CAAC;IACxB,CAAE;IACFI,SAAS,EAAEvB,iBAAkB;IAC7BG,YAAY,EAAEA,YAAa;IAC3BO,QAAQ,EAAEX,KAAK,CAACW;EAAS,CAC1B,CACQ,CACX,CAAC;AAEP,CAAC;AAED,eAAeZ,QAAQ;AAEvB,MAAMoB,MAAM,GAAG9B,UAAU,CAACoC,MAAM,CAAC;EAC/BL,IAAI,EAAE;IACJM,UAAU,EACRlC,QAAQ,CAACmC,EAAE,KAAK,SAAS,GACrB/B,KAAK,CAACgC,sBAAsB,GAC5B,qBAAqB;IAC3BC,KAAK,EAAE,SAAS;IAChBC,QAAQ,EAAE,EAAE;IACZC,SAAS,EAAE;EACb,CAAC;EACDC,YAAY,EAAE;IACZC,SAAS,EAAE,EAAE;IACbC,gBAAgB,EAAE,EAAE;IACpBL,KAAK,EAAE,SAAS;IAChBH,UAAU,EACRlC,QAAQ,CAACmC,EAAE,KAAK,SAAS,GACrB/B,KAAK,CAACgC,sBAAsB,GAC5B,qBAAqB;IAC3BE,QAAQ,EAAE,EAAE;IACZK,UAAU,EAAE;EACd;AACF,CAAC,CAAC"}
1
+ {"version":3,"names":["StyleSheet","Pressable","Keyboard","Platform","React","useEffect","SplitTextInput","Fonts","InputType","INVALID_REGEX","OTPInput","props","maximumCodeLength","input","length","keyboardType","inputType","NUMBER","validationRegex","otpCode","regex","RegExp","hasError","test","setHasError","setErrorMessage","createElement","Fragment","onPress","dismiss","styles","text","value","onChange","setOTPCode","maxLength","create","fontFamily","OS","IBMPlexSans_400Regular","color","fontSize","textAlign","errorMessage","marginTop","marginHorizontal","lineHeight"],"sources":["OTPInput.tsx"],"sourcesContent":["import { StyleSheet, Pressable, Keyboard, Platform } from 'react-native';\nimport React, { useEffect } from 'react';\nimport SplitTextInput from '../../../widgets/SplitTextInput';\nimport { Fonts } from '../../../../styles/executionTasks/CommonStyles';\nimport { InputType, CaptureInput } from '../ValidateOTPSchema';\nimport { INVALID_REGEX } from '../constants';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../../analytics/sentry/SentryAnalyticsUtils';\n\nexport interface OTPInputProps {\n input: CaptureInput;\n otpCode: string;\n setOTPCode: (otpCode: string) => void;\n hasError: boolean;\n setHasError: (hasError: boolean) => void;\n setErrorMessage: (errorMessage: string) => void;\n}\n\nconst OTPInput = (props: OTPInputProps) => {\n const maximumCodeLength = props.input.length;\n const keyboardType =\n props.input.inputType === InputType.NUMBER ? 'number-pad' : 'default';\n\n useEffect(() => {\n if (\n props.input.validationRegex &&\n props.otpCode.length === maximumCodeLength\n ) {\n const regex = new RegExp(props.input.validationRegex);\n const hasError = !regex.test(props.otpCode);\n\n props.setHasError(hasError);\n if (hasError) props.setErrorMessage(INVALID_REGEX);\n else props.setErrorMessage('');\n }\n }, [props.otpCode]);\n\n return (\n <>\n <Pressable onPress={Keyboard.dismiss}>\n <SplitTextInput\n styles={styles.text}\n value={props.otpCode}\n onChange={(text) => {\n if (props.input.validationRegex) {\n }\n if (props.hasError) {\n props.setErrorMessage('');\n props.setHasError(false);\n }\n props.setOTPCode(text);\n }}\n maxLength={maximumCodeLength}\n keyboardType={keyboardType}\n hasError={props.hasError}\n />\n </Pressable>\n </>\n );\n};\n\nexport default OTPInput;\n\nconst styles = StyleSheet.create({\n text: {\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n color: '#3D445C',\n fontSize: 20,\n textAlign: 'center',\n },\n errorMessage: {\n marginTop: 16,\n marginHorizontal: 10,\n color: '#DC2626',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontSize: 12,\n lineHeight: 16,\n },\n});\n"],"mappings":"AAAA,SAASA,UAAU,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,QAAQ,QAAQ,cAAc;AACxE,OAAOC,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,OAAOC,cAAc,MAAM,iCAAiC;AAC5D,SAASC,KAAK,QAAQ,gDAAgD;AACtE,SAASC,SAAS,QAAsB,sBAAsB;AAC9D,SAASC,aAAa,QAAQ,cAAc;AAa5C,MAAMC,QAAQ,GAAIC,KAAoB,IAAK;EACzC,MAAMC,iBAAiB,GAAGD,KAAK,CAACE,KAAK,CAACC,MAAM;EAC5C,MAAMC,YAAY,GAChBJ,KAAK,CAACE,KAAK,CAACG,SAAS,KAAKR,SAAS,CAACS,MAAM,GAAG,YAAY,GAAG,SAAS;EAEvEZ,SAAS,CAAC,MAAM;IACd,IACEM,KAAK,CAACE,KAAK,CAACK,eAAe,IAC3BP,KAAK,CAACQ,OAAO,CAACL,MAAM,KAAKF,iBAAiB,EAC1C;MACA,MAAMQ,KAAK,GAAG,IAAIC,MAAM,CAACV,KAAK,CAACE,KAAK,CAACK,eAAe,CAAC;MACrD,MAAMI,QAAQ,GAAG,CAACF,KAAK,CAACG,IAAI,CAACZ,KAAK,CAACQ,OAAO,CAAC;MAE3CR,KAAK,CAACa,WAAW,CAACF,QAAQ,CAAC;MAC3B,IAAIA,QAAQ,EAAEX,KAAK,CAACc,eAAe,CAAChB,aAAa,CAAC,CAAC,KAC9CE,KAAK,CAACc,eAAe,CAAC,EAAE,CAAC;IAChC;EACF,CAAC,EAAE,CAACd,KAAK,CAACQ,OAAO,CAAC,CAAC;EAEnB,oBACEf,KAAA,CAAAsB,aAAA,CAAAtB,KAAA,CAAAuB,QAAA,qBACEvB,KAAA,CAAAsB,aAAA,CAACzB,SAAS;IAAC2B,OAAO,EAAE1B,QAAQ,CAAC2B;EAAQ,gBACnCzB,KAAA,CAAAsB,aAAA,CAACpB,cAAc;IACbwB,MAAM,EAAEA,MAAM,CAACC,IAAK;IACpBC,KAAK,EAAErB,KAAK,CAACQ,OAAQ;IACrBc,QAAQ,EAAGF,IAAI,IAAK;MAClB,IAAIpB,KAAK,CAACE,KAAK,CAACK,eAAe,EAAE,CACjC;MACA,IAAIP,KAAK,CAACW,QAAQ,EAAE;QAClBX,KAAK,CAACc,eAAe,CAAC,EAAE,CAAC;QACzBd,KAAK,CAACa,WAAW,CAAC,KAAK,CAAC;MAC1B;MACAb,KAAK,CAACuB,UAAU,CAACH,IAAI,CAAC;IACxB,CAAE;IACFI,SAAS,EAAEvB,iBAAkB;IAC7BG,YAAY,EAAEA,YAAa;IAC3BO,QAAQ,EAAEX,KAAK,CAACW;EAAS,CAC1B,CACQ,CACX,CAAC;AAEP,CAAC;AAED,eAAeZ,QAAQ;AAEvB,MAAMoB,MAAM,GAAG9B,UAAU,CAACoC,MAAM,CAAC;EAC/BL,IAAI,EAAE;IACJM,UAAU,EACRlC,QAAQ,CAACmC,EAAE,KAAK,SAAS,GACrB/B,KAAK,CAACgC,sBAAsB,GAC5B,qBAAqB;IAC3BC,KAAK,EAAE,SAAS;IAChBC,QAAQ,EAAE,EAAE;IACZC,SAAS,EAAE;EACb,CAAC;EACDC,YAAY,EAAE;IACZC,SAAS,EAAE,EAAE;IACbC,gBAAgB,EAAE,EAAE;IACpBL,KAAK,EAAE,SAAS;IAChBH,UAAU,EACRlC,QAAQ,CAACmC,EAAE,KAAK,SAAS,GACrB/B,KAAK,CAACgC,sBAAsB,GAC5B,qBAAqB;IAC3BE,QAAQ,EAAE,EAAE;IACZK,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["jsonLogic","JSONPath","Logger","LOG_TYPE","getApiResponse","DEFAULT_RETRY_CONFIG","isDyanmicValue","input","charAt","length","parseBody","body","userInput","requestBody","JSON","parse","stringify","key","Object","prototype","hasOwnProperty","call","value","Array","isArray","forEach","val","includes","captureInput","parseKeyValue","array","item","generateOTP","api","apiData","errorJsonPath","responseJsonPath","uri","httpMethod","timeout","headers","pathParams","queryParams","apiResponse","apply","responseJsonLogic","data","error","getInstance","logEvent","message","SDK_ERROR","checkForValidation","otp","validation","selectedIndex","otpValue","path","json","logic","parsedRequestBody","parseRetryConfig","inputRetryConfig","retryConfig","buttonTitle","delay","maxAttempt"],"sources":["utils.ts"],"sourcesContent":["import * as jsonLogic from 'json-logic-js';\nimport { JSONPath } from 'jsonpath-plus';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport {\n APIData,\n getApiResponse,\n KeyValueArray,\n} from '../../../utils/ApiUtils';\nimport { DEFAULT_RETRY_CONFIG } from './constants';\nimport type {\n API,\n InputType,\n Validation,\n RetryConfig,\n} from './ValidateOTPSchema';\n\nconst isDyanmicValue = function (input: string) {\n if (\n input.charAt(0) === '{' &&\n input.charAt(1) === '{' &&\n input.charAt(input.length - 1) === '}' &&\n input.charAt(input.length - 2) === '}'\n )\n return true;\n else return false;\n};\n\nexport function parseBody(body: any, userInput: any) {\n const requestBody = JSON.parse(JSON.stringify(body));\n for (const key in requestBody) {\n if (Object.prototype.hasOwnProperty.call(requestBody, key)) {\n const value = requestBody[key];\n if (typeof value === 'object') {\n requestBody[key] = parseBody(value, userInput);\n } else if (Array.isArray(value)) {\n value.forEach((val) => {\n requestBody[key] = parseBody(val, userInput);\n });\n } else {\n if (\n typeof value === 'string' &&\n isDyanmicValue(value) &&\n value.includes('userInput')\n ) {\n if (value.includes('captureInput'))\n requestBody[key] = userInput.captureInput;\n }\n }\n }\n }\n return requestBody;\n}\n\nexport function parseKeyValue(array: KeyValueArray[], userInput: any) {\n array.forEach((item) => {\n if (isDyanmicValue(item.value) && item.value.includes('userInput')) {\n if (item.value.includes('captureInput'))\n item.value = userInput.captureInput;\n }\n });\n return array;\n}\n\nexport const generateOTP = async (api: API) => {\n // TESTING\n try {\n const apiData: APIData = {\n errorJsonPath: '',\n responseJsonPath: '',\n uri: api.uri,\n httpMethod: api.httpMethod,\n timeout: api.timeout,\n headers: api.headers,\n };\n if (api.requestBody) {\n apiData.requestBody = api.requestBody;\n }\n if (api.pathParams) {\n apiData.pathParams = api.pathParams;\n }\n if (api.queryParams) {\n apiData.queryParams = api.queryParams;\n }\n\n const apiResponse = await getApiResponse(apiData);\n\n return jsonLogic.apply(\n <jsonLogic.RulesLogic>api.responseJsonLogic,\n apiResponse.data\n );\n } catch (error: any) {\n Logger.getInstance().logEvent(\n '~ generateOTP',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n};\n\nexport const checkForValidation = async (\n otp: string,\n validation: Validation,\n userInput: any\n): Promise<boolean> => {\n // API\n if (validation.selectedIndex === 0) {\n const otpValue = JSONPath({\n path: '$.userInput.captureInput',\n json: userInput,\n })[0];\n\n try {\n //@ts-ignore\n const api: API = validation.logic.api;\n const apiData: APIData = {\n errorJsonPath: '',\n responseJsonPath: '',\n uri: api.uri,\n httpMethod: api.httpMethod,\n timeout: api.timeout,\n headers: api.headers,\n };\n if (api.requestBody) {\n const parsedRequestBody = parseBody(api.requestBody, {\n captureInput: otpValue,\n });\n apiData.requestBody = parsedRequestBody;\n }\n if (api.pathParams) {\n parseKeyValue(api.pathParams, { captureInput: otpValue });\n apiData.pathParams = api.pathParams;\n }\n if (api.queryParams) {\n parseKeyValue(api.queryParams, { captureInput: otpValue });\n apiData.queryParams = api.queryParams;\n }\n const apiResponse = await getApiResponse(apiData);\n return jsonLogic.apply(\n <jsonLogic.RulesLogic>api.responseJsonLogic,\n apiResponse.data\n );\n } catch (error: any) {\n Logger.getInstance().logEvent(\n '~ checkForValidation',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n }\n // Exact Value\n else if (validation.selectedIndex === 1) {\n // @ts-ignore\n const value: InputType = validation.logic.value;\n return value == otp;\n }\n // Invalid input received\n else {\n return false;\n }\n};\n\nexport const parseRetryConfig = (\n inputRetryConfig: RetryConfig | undefined\n): RetryConfig => {\n const retryConfig: RetryConfig = DEFAULT_RETRY_CONFIG;\n if (inputRetryConfig) {\n if (inputRetryConfig.buttonTitle) {\n retryConfig.buttonTitle = inputRetryConfig.buttonTitle;\n }\n if (inputRetryConfig.delay) {\n retryConfig.delay = inputRetryConfig.delay;\n }\n if (inputRetryConfig.maxAttempt) {\n retryConfig.maxAttempt = inputRetryConfig.maxAttempt;\n }\n }\n return retryConfig;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["jsonLogic","JSONPath","Logger","LOG_TYPE","getApiResponse","DEFAULT_RETRY_CONFIG","isDyanmicValue","input","charAt","length","parseBody","body","userInput","requestBody","JSON","parse","stringify","key","Object","prototype","hasOwnProperty","call","value","Array","isArray","forEach","val","includes","captureInput","parseKeyValue","array","item","generateOTP","api","apiData","errorJsonPath","responseJsonPath","uri","httpMethod","timeout","headers","pathParams","queryParams","apiResponse","apply","responseJsonLogic","data","error","getInstance","logEvent","message","SDK_ERROR","checkForValidation","otp","validation","selectedIndex","otpValue","path","json","logic","parsedRequestBody","parseRetryConfig","inputRetryConfig","retryConfig","buttonTitle","delay","maxAttempt"],"sources":["utils.ts"],"sourcesContent":["import * as jsonLogic from 'json-logic-js';\nimport { JSONPath } from 'jsonpath-plus';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport {\n APIData,\n getApiResponse,\n KeyValueArray,\n} from '../../../utils/ApiUtils';\nimport { DEFAULT_RETRY_CONFIG } from './constants';\nimport type {\n API,\n InputType,\n Validation,\n RetryConfig,\n} from './ValidateOTPSchema';\n\nconst isDyanmicValue = function (input: string) {\n if (\n input.charAt(0) === '{' &&\n input.charAt(1) === '{' &&\n input.charAt(input.length - 1) === '}' &&\n input.charAt(input.length - 2) === '}'\n )\n return true;\n else return false;\n};\n\nexport function parseBody(body: any, userInput: any) {\n const requestBody = JSON.parse(JSON.stringify(body));\n for (const key in requestBody) {\n if (Object.prototype.hasOwnProperty.call(requestBody, key)) {\n const value = requestBody[key];\n if (typeof value === 'object') {\n requestBody[key] = parseBody(value, userInput);\n } else if (Array.isArray(value)) {\n value.forEach((val) => {\n requestBody[key] = parseBody(val, userInput);\n });\n } else {\n if (\n typeof value === 'string' &&\n isDyanmicValue(value) &&\n value.includes('userInput')\n ) {\n if (value.includes('captureInput'))\n requestBody[key] = userInput.captureInput;\n }\n }\n }\n }\n return requestBody;\n}\n\nexport function parseKeyValue(array: KeyValueArray[], userInput: any) {\n array.forEach((item) => {\n if (isDyanmicValue(item.value) && item.value.includes('userInput')) {\n if (item.value.includes('captureInput'))\n item.value = userInput.captureInput;\n }\n });\n return array;\n}\n\nexport const generateOTP = async (api: API) => {\n // TESTING\n try {\n const apiData: APIData = {\n errorJsonPath: '',\n responseJsonPath: '',\n uri: api.uri,\n httpMethod: api.httpMethod,\n timeout: api.timeout,\n headers: api.headers,\n };\n if (api.requestBody) {\n apiData.requestBody = api.requestBody;\n }\n if (api.pathParams) {\n apiData.pathParams = api.pathParams;\n }\n if (api.queryParams) {\n apiData.queryParams = api.queryParams;\n }\n\n const apiResponse = await getApiResponse(apiData);\n\n return jsonLogic.apply(\n <jsonLogic.RulesLogic>api.responseJsonLogic,\n apiResponse.data\n );\n } catch (error: any) {\n Logger.getInstance().logEvent(\n '~ generateOTP',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n};\n\nexport const checkForValidation = async (\n otp: string,\n validation: Validation,\n userInput: any\n): Promise<boolean> => {\n // API\n if (validation.selectedIndex === 0) {\n const otpValue = JSONPath({\n path: '$.userInput.captureInput',\n json: userInput,\n })[0];\n\n try {\n //@ts-ignore\n const api: API = validation.logic.api;\n const apiData: APIData = {\n errorJsonPath: '',\n responseJsonPath: '',\n uri: api.uri,\n httpMethod: api.httpMethod,\n timeout: api.timeout,\n headers: api.headers,\n };\n if (api.requestBody) {\n const parsedRequestBody = parseBody(api.requestBody, {\n captureInput: otpValue,\n });\n apiData.requestBody = parsedRequestBody;\n }\n if (api.pathParams) {\n parseKeyValue(api.pathParams, { captureInput: otpValue });\n apiData.pathParams = api.pathParams;\n }\n if (api.queryParams) {\n parseKeyValue(api.queryParams, { captureInput: otpValue });\n apiData.queryParams = api.queryParams;\n }\n const apiResponse = await getApiResponse(apiData);\n return jsonLogic.apply(\n <jsonLogic.RulesLogic>api.responseJsonLogic,\n apiResponse.data\n );\n } catch (error: any) {\n Logger.getInstance().logEvent(\n '~ checkForValidation',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n }\n // Exact Value\n else if (validation.selectedIndex === 1) {\n // @ts-ignore\n const value: InputType = validation.logic.value;\n return value == otp;\n }\n // Invalid input received\n else {\n return false;\n }\n};\n\nexport const parseRetryConfig = (\n inputRetryConfig: RetryConfig | undefined\n): RetryConfig => {\n const retryConfig: RetryConfig = DEFAULT_RETRY_CONFIG;\n if (inputRetryConfig) {\n if (inputRetryConfig.buttonTitle) {\n retryConfig.buttonTitle = inputRetryConfig.buttonTitle;\n }\n if (inputRetryConfig.delay) {\n retryConfig.delay = inputRetryConfig.delay;\n }\n if (inputRetryConfig.maxAttempt) {\n retryConfig.maxAttempt = inputRetryConfig.maxAttempt;\n }\n }\n return retryConfig;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["VerifyInputSchema.ts"],"sourcesContent":["import type {\n BaseETRequest,\n BaseETResponse,\n} from '../../../models/execTasks/ETBaseModels';\n\nexport type VerifyInput =\n | (BaseETRequest & {\n input: Input;\n value: Value;\n })\n | (BaseETRequest & {\n input: Input1;\n api: API;\n });\n/**\n * Input entered by user\n */\nexport type Input = string | number;\n/**\n * Value\n */\nexport type Value = string | number;\n/**\n * Input entered by user\n */\nexport type Input1 = string | number;\n/**\n * Verification api URI\n */\nexport type HeaderKey = string;\nexport type HeaderValue = string;\n/**\n * Verification api headers\n */\nexport type Headers = {\n key?: HeaderKey;\n value?: HeaderValue;\n};\n\n/**\n * Api\n */\nexport interface API {\n uri: string;\n headers?: Headers[];\n valueJsonPath: string;\n}\n\nexport type VerifyInputResponse = BaseETResponse;\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["VerifyInputSchema.ts"],"sourcesContent":["import type {\n BaseETRequest,\n BaseETResponse,\n} from '../../../models/execTasks/ETBaseModels';\n\nexport type VerifyInput =\n | (BaseETRequest & {\n input: Input;\n value: Value;\n })\n | (BaseETRequest & {\n input: Input1;\n api: API;\n });\n/**\n * Input entered by user\n */\nexport type Input = string | number;\n/**\n * Value\n */\nexport type Value = string | number;\n/**\n * Input entered by user\n */\nexport type Input1 = string | number;\n/**\n * Verification api URI\n */\nexport type HeaderKey = string;\nexport type HeaderValue = string;\n/**\n * Verification api headers\n */\nexport type Headers = {\n key?: HeaderKey;\n value?: HeaderValue;\n};\n\n/**\n * Api\n */\nexport interface API {\n uri: string;\n headers?: Headers[];\n valueJsonPath: string;\n}\n\nexport type VerifyInputResponse = BaseETResponse;\n"],"mappings":"","ignoreList":[]}