@os1-platform/dispatch-mobile 2.0.7 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (567) hide show
  1. package/dispatch-mobile.podspec +35 -0
  2. package/ios/DispatchSdk-Bridging-Header.h +3 -0
  3. package/ios/DispatchSdk.m +9 -0
  4. package/ios/DispatchSdk.swift +8 -0
  5. package/ios/DispatchSdk.xcodeproj/project.pbxproj +317 -0
  6. package/ios/EventEmitter.swift +21 -0
  7. package/ios/EventsConstant.swift +13 -0
  8. package/ios/RNEventEmitter.m +15 -0
  9. package/ios/RNEventEmitter.swift +24 -0
  10. package/lib/commonjs/components/dispatch/DispatchExecNavigator.js +3 -4
  11. package/lib/commonjs/components/dispatch/DispatchExecNavigator.js.map +1 -1
  12. package/lib/commonjs/components/executiontasks/cancellation/CancelET.js +13 -8
  13. package/lib/commonjs/components/executiontasks/cancellation/CancelET.js.map +1 -1
  14. package/lib/commonjs/components/executiontasks/captureInput/CaptureText.js +3 -4
  15. package/lib/commonjs/components/executiontasks/captureInput/CaptureText.js.map +1 -1
  16. package/lib/commonjs/components/executiontasks/deliver/DeliverET.js +3 -4
  17. package/lib/commonjs/components/executiontasks/deliver/DeliverET.js.map +1 -1
  18. package/lib/commonjs/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
  19. package/lib/commonjs/components/executiontasks/deliver/SLDeliverET.js +102 -24
  20. package/lib/commonjs/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
  21. package/lib/commonjs/components/executiontasks/display/DisplayModalET.js +7 -8
  22. package/lib/commonjs/components/executiontasks/display/DisplayModalET.js.map +1 -1
  23. package/lib/commonjs/components/executiontasks/doodle/SignatureET.js +36 -13
  24. package/lib/commonjs/components/executiontasks/doodle/SignatureET.js.map +1 -1
  25. package/lib/commonjs/components/executiontasks/dropCash/DropCashET.js +3 -4
  26. package/lib/commonjs/components/executiontasks/dropCash/DropCashET.js.map +1 -1
  27. package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js +6 -7
  28. package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
  29. package/lib/commonjs/components/executiontasks/forms/FormGenerator.js +5 -6
  30. package/lib/commonjs/components/executiontasks/forms/FormGenerator.js.map +1 -1
  31. package/lib/commonjs/components/executiontasks/forms/widgets/DateTimeWidget.js +4 -5
  32. package/lib/commonjs/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
  33. package/lib/commonjs/components/executiontasks/forms/widgets/DropdownWidget.js +3 -4
  34. package/lib/commonjs/components/executiontasks/forms/widgets/DropdownWidget.js.map +1 -1
  35. package/lib/commonjs/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js +3 -4
  36. package/lib/commonjs/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js.map +1 -1
  37. package/lib/commonjs/components/executiontasks/forms/widgets/TimeRangeSelector.js +3 -4
  38. package/lib/commonjs/components/executiontasks/forms/widgets/TimeRangeSelector.js.map +1 -1
  39. package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestET.js +3 -4
  40. package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestET.js.map +1 -1
  41. package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js +136 -22
  42. package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
  43. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +8 -8
  44. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  45. package/lib/commonjs/components/executiontasks/payments/PaymentStyles.js +6 -7
  46. package/lib/commonjs/components/executiontasks/payments/PaymentStyles.js.map +1 -1
  47. package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js +5 -6
  48. package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
  49. package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js +3 -4
  50. package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
  51. package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js +3 -4
  52. package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
  53. package/lib/commonjs/components/executiontasks/pickup/PickupET.js +3 -4
  54. package/lib/commonjs/components/executiontasks/pickup/PickupET.js.map +1 -1
  55. package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js +85 -15
  56. package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js.map +1 -1
  57. package/lib/commonjs/components/executiontasks/scan/ScanET.js +14 -15
  58. package/lib/commonjs/components/executiontasks/scan/ScanET.js.map +1 -1
  59. package/lib/commonjs/components/executiontasks/scan/ScanSchema.js +1 -2
  60. package/lib/commonjs/components/executiontasks/scan/ScanSchema.js.map +1 -1
  61. package/lib/commonjs/components/executiontasks/scan/constants.js +6 -12
  62. package/lib/commonjs/components/executiontasks/scan/constants.js.map +1 -1
  63. package/lib/commonjs/components/executiontasks/scan/interfaces.js +4 -8
  64. package/lib/commonjs/components/executiontasks/scan/interfaces.js.map +1 -1
  65. package/lib/commonjs/components/executiontasks/scan/sub_components/CScanner.js +4 -5
  66. package/lib/commonjs/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
  67. package/lib/commonjs/components/executiontasks/scan/sub_components/ERDropDown.js +5 -6
  68. package/lib/commonjs/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
  69. package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js +8 -9
  70. package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
  71. package/lib/commonjs/components/executiontasks/scan/utils.js +2 -2
  72. package/lib/commonjs/components/executiontasks/scan/utils.js.map +1 -1
  73. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js +8 -9
  74. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
  75. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPSchema.js +1 -2
  76. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPSchema.js.map +1 -1
  77. package/lib/commonjs/components/executiontasks/validateOTP/constants.js +6 -12
  78. package/lib/commonjs/components/executiontasks/validateOTP/constants.js.map +1 -1
  79. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js +5 -6
  80. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
  81. package/lib/commonjs/components/executiontasks/validateOTP/utils.js +2 -2
  82. package/lib/commonjs/components/executiontasks/validateOTP/utils.js.map +1 -1
  83. package/lib/commonjs/components/executiontasks/verifyLocation/GeofenceUtils.js +2 -2
  84. package/lib/commonjs/components/executiontasks/verifyLocation/GeofenceUtils.js.map +1 -1
  85. package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocationET.js +3 -4
  86. package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocationET.js.map +1 -1
  87. package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpET.js +3 -4
  88. package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpET.js.map +1 -1
  89. package/lib/commonjs/components/widgets/AlertDisplay.js +14 -9
  90. package/lib/commonjs/components/widgets/AlertDisplay.js.map +1 -1
  91. package/lib/commonjs/components/widgets/CancelOrderDialog.js +5 -6
  92. package/lib/commonjs/components/widgets/CancelOrderDialog.js.map +1 -1
  93. package/lib/commonjs/components/widgets/Card.js +2 -3
  94. package/lib/commonjs/components/widgets/Card.js.map +1 -1
  95. package/lib/commonjs/components/widgets/GoBackModal.js +1 -2
  96. package/lib/commonjs/components/widgets/GoBackModal.js.map +1 -1
  97. package/lib/commonjs/components/widgets/IconButton.js +1 -2
  98. package/lib/commonjs/components/widgets/IconButton.js.map +1 -1
  99. package/lib/commonjs/components/widgets/ModalWidget.js +3 -4
  100. package/lib/commonjs/components/widgets/ModalWidget.js.map +1 -1
  101. package/lib/commonjs/components/widgets/ProgressDialog.js +2 -3
  102. package/lib/commonjs/components/widgets/ProgressDialog.js.map +1 -1
  103. package/lib/commonjs/components/widgets/SearchBar.js +1 -2
  104. package/lib/commonjs/components/widgets/SearchBar.js.map +1 -1
  105. package/lib/commonjs/components/widgets/SnackBarCustom.js +3 -5
  106. package/lib/commonjs/components/widgets/SnackBarCustom.js.map +1 -1
  107. package/lib/commonjs/components/widgets/SplitTextInput.js +3 -4
  108. package/lib/commonjs/components/widgets/SplitTextInput.js.map +1 -1
  109. package/lib/commonjs/components/widgets/TabsComponent.js +3 -4
  110. package/lib/commonjs/components/widgets/TabsComponent.js.map +1 -1
  111. package/lib/commonjs/config/DispatchSDKConfig.js +1 -2
  112. package/lib/commonjs/config/DispatchSDKConfig.js.map +1 -1
  113. package/lib/commonjs/constants/apiConstants.js +2 -4
  114. package/lib/commonjs/constants/apiConstants.js.map +1 -1
  115. package/lib/commonjs/constants/constants.js +11 -22
  116. package/lib/commonjs/constants/constants.js.map +1 -1
  117. package/lib/commonjs/constants/statuscode.js +1 -2
  118. package/lib/commonjs/constants/statuscode.js.map +1 -1
  119. package/lib/commonjs/errors/ErrorCodes.js +7 -14
  120. package/lib/commonjs/errors/ErrorCodes.js.map +1 -1
  121. package/lib/commonjs/events/EventDispatcher.js +5 -3
  122. package/lib/commonjs/events/EventDispatcher.js.map +1 -1
  123. package/lib/commonjs/events/EventListener.js +1 -2
  124. package/lib/commonjs/events/EventListener.js.map +1 -1
  125. package/lib/commonjs/events/constants.js +1 -2
  126. package/lib/commonjs/events/constants.js.map +1 -1
  127. package/lib/commonjs/events/index.js +1 -2
  128. package/lib/commonjs/events/index.js.map +1 -1
  129. package/lib/commonjs/icons/ScanIcon.js +1 -2
  130. package/lib/commonjs/icons/ScanIcon.js.map +1 -1
  131. package/lib/commonjs/icons/circleMark.svg +3 -0
  132. package/lib/commonjs/icons/file.js +1 -2
  133. package/lib/commonjs/icons/file.js.map +1 -1
  134. package/lib/commonjs/index.js +8 -2
  135. package/lib/commonjs/index.js.map +1 -1
  136. package/lib/commonjs/locale/Str.js +18 -0
  137. package/lib/commonjs/locale/Str.js.map +1 -0
  138. package/lib/commonjs/locale/en.json +6 -0
  139. package/lib/commonjs/locale/i18n.js +24 -0
  140. package/lib/commonjs/locale/i18n.js.map +1 -0
  141. package/lib/commonjs/locale/util.js +27 -0
  142. package/lib/commonjs/locale/util.js.map +1 -0
  143. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js +5 -3
  144. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js.map +1 -1
  145. package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js +2 -0
  146. package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
  147. package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js +4 -2
  148. package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
  149. package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js +4 -2
  150. package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
  151. package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js +4 -2
  152. package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
  153. package/lib/commonjs/manager/location/LocationManager.js +7 -4
  154. package/lib/commonjs/manager/location/LocationManager.js.map +1 -1
  155. package/lib/commonjs/manager/sdk/DispatchSDKManager.js +4 -2
  156. package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
  157. package/lib/commonjs/manager/sdk/DispatchSdkCache.js +2 -0
  158. package/lib/commonjs/manager/sdk/DispatchSdkCache.js.map +1 -1
  159. package/lib/commonjs/manager/sdk/callbacksHandler.js +1 -2
  160. package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -1
  161. package/lib/commonjs/manager/syncmanager/AppSyncManager.js +4 -2
  162. package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
  163. package/lib/commonjs/manager/syncmanager/DBConfig.js +14 -26
  164. package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
  165. package/lib/commonjs/manager/syncmanager/NativeSyncManager.js +1 -2
  166. package/lib/commonjs/manager/syncmanager/NativeSyncManager.js.map +1 -1
  167. package/lib/commonjs/manager/syncmanager/constants.js +5 -10
  168. package/lib/commonjs/manager/syncmanager/constants.js.map +1 -1
  169. package/lib/commonjs/manager/syncmanager/database.js +2 -2
  170. package/lib/commonjs/manager/syncmanager/database.js.map +1 -1
  171. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +5 -4
  172. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  173. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +4 -2
  174. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
  175. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +4 -2
  176. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  177. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js +4 -2
  178. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  179. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +4 -2
  180. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  181. package/lib/commonjs/models/DispatchModels.js +1 -2
  182. package/lib/commonjs/models/DispatchModels.js.map +1 -1
  183. package/lib/commonjs/models/execTasks/ETConfig.js +6 -12
  184. package/lib/commonjs/models/execTasks/ETConfig.js.map +1 -1
  185. package/lib/commonjs/models/fcm.js.map +1 -1
  186. package/lib/commonjs/models/sdk.js +1 -2
  187. package/lib/commonjs/models/sdk.js.map +1 -1
  188. package/lib/commonjs/native/signature/SignatureCapture.js +1 -2
  189. package/lib/commonjs/native/signature/SignatureCapture.js.map +1 -1
  190. package/lib/commonjs/network/GraphQLClient.js +48 -4
  191. package/lib/commonjs/network/GraphQLClient.js.map +1 -1
  192. package/lib/commonjs/network/Queries.js +5 -10
  193. package/lib/commonjs/network/Queries.js.map +1 -1
  194. package/lib/commonjs/res/strings.js +1 -2
  195. package/lib/commonjs/res/strings.js.map +1 -1
  196. package/lib/commonjs/resources/Login.js +1 -2
  197. package/lib/commonjs/resources/Login.js.map +1 -1
  198. package/lib/commonjs/resources/network.js +1 -2
  199. package/lib/commonjs/resources/network.js.map +1 -1
  200. package/lib/commonjs/styles/SdkColors.js +2 -4
  201. package/lib/commonjs/styles/SdkColors.js.map +1 -1
  202. package/lib/commonjs/styles/executionTasks/CommonStyles.js +6 -10
  203. package/lib/commonjs/styles/executionTasks/CommonStyles.js.map +1 -1
  204. package/lib/commonjs/ui/screens/CancellationScreen.js +3 -4
  205. package/lib/commonjs/ui/screens/CancellationScreen.js.map +1 -1
  206. package/lib/commonjs/ui/screens/CaptureInputScreen.js +5 -5
  207. package/lib/commonjs/ui/screens/CaptureInputScreen.js.map +1 -1
  208. package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js +3 -4
  209. package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js.map +1 -1
  210. package/lib/commonjs/ui/screens/DeliverScreen.js +9 -5
  211. package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
  212. package/lib/commonjs/ui/screens/DisplayScreen.js +3 -4
  213. package/lib/commonjs/ui/screens/DisplayScreen.js.map +1 -1
  214. package/lib/commonjs/ui/screens/DoodleScreen.js +5 -5
  215. package/lib/commonjs/ui/screens/DoodleScreen.js.map +1 -1
  216. package/lib/commonjs/ui/screens/DropCashScreen.js +5 -5
  217. package/lib/commonjs/ui/screens/DropCashScreen.js.map +1 -1
  218. package/lib/commonjs/ui/screens/FormsScreen.js +3 -4
  219. package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
  220. package/lib/commonjs/ui/screens/GeofenceScreen.js +3 -4
  221. package/lib/commonjs/ui/screens/GeofenceScreen.js.map +1 -1
  222. package/lib/commonjs/ui/screens/HttpRequestScreen.js +1 -2
  223. package/lib/commonjs/ui/screens/HttpRequestScreen.js.map +1 -1
  224. package/lib/commonjs/ui/screens/ImageCaptureScreen.js +3 -4
  225. package/lib/commonjs/ui/screens/ImageCaptureScreen.js.map +1 -1
  226. package/lib/commonjs/ui/screens/PaymentScreen.js +6 -6
  227. package/lib/commonjs/ui/screens/PaymentScreen.js.map +1 -1
  228. package/lib/commonjs/ui/screens/PickupScreen.js +4 -5
  229. package/lib/commonjs/ui/screens/PickupScreen.js.map +1 -1
  230. package/lib/commonjs/ui/screens/ScanScreen.js +3 -4
  231. package/lib/commonjs/ui/screens/ScanScreen.js.map +1 -1
  232. package/lib/commonjs/ui/screens/StartWorkFlowScreen.js +8 -7
  233. package/lib/commonjs/ui/screens/StartWorkFlowScreen.js.map +1 -1
  234. package/lib/commonjs/ui/screens/ValidateOTPScreen.js +3 -4
  235. package/lib/commonjs/ui/screens/ValidateOTPScreen.js.map +1 -1
  236. package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js +4 -4
  237. package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js.map +1 -1
  238. package/lib/commonjs/ui/uiConfig/RouteParams.js +1 -2
  239. package/lib/commonjs/ui/uiConfig/RouteParams.js.map +1 -1
  240. package/lib/commonjs/utils/ApiUtils.js +2 -4
  241. package/lib/commonjs/utils/ApiUtils.js.map +1 -1
  242. package/lib/commonjs/utils/Logger.js +10 -9
  243. package/lib/commonjs/utils/Logger.js.map +1 -1
  244. package/lib/commonjs/utils/NetworkUtil.js +1 -2
  245. package/lib/commonjs/utils/NetworkUtil.js.map +1 -1
  246. package/lib/commonjs/utils/SdkUtils.js +12 -8
  247. package/lib/commonjs/utils/SdkUtils.js.map +1 -1
  248. package/lib/commonjs/utils/SyncManagerUtils.js +2 -2
  249. package/lib/commonjs/utils/SyncManagerUtils.js.map +1 -1
  250. package/lib/commonjs/utils/fcm/FCM.js +3 -4
  251. package/lib/commonjs/utils/fcm/FCM.js.map +1 -1
  252. package/lib/commonjs/utils/fcm/FcmUtils.js +14 -2
  253. package/lib/commonjs/utils/fcm/FcmUtils.js.map +1 -1
  254. package/lib/commonjs/utils/helper.js +1 -2
  255. package/lib/commonjs/utils/helper.js.map +1 -1
  256. package/lib/commonjs/utils/hooks/useModal.js +3 -4
  257. package/lib/commonjs/utils/hooks/useModal.js.map +1 -1
  258. package/lib/commonjs/utils/hooks/useTimer.js +1 -2
  259. package/lib/commonjs/utils/hooks/useTimer.js.map +1 -1
  260. package/lib/commonjs/utils/loginHelper.js +1 -2
  261. package/lib/commonjs/utils/loginHelper.js.map +1 -1
  262. package/lib/commonjs/utils/storage.js +71 -13
  263. package/lib/commonjs/utils/storage.js.map +1 -1
  264. package/lib/module/components/dispatch/DispatchExecNavigator.js.map +1 -1
  265. package/lib/module/components/executiontasks/cancellation/CancelET.js +11 -5
  266. package/lib/module/components/executiontasks/cancellation/CancelET.js.map +1 -1
  267. package/lib/module/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
  268. package/lib/module/components/executiontasks/deliver/SLDeliverET.js +102 -22
  269. package/lib/module/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
  270. package/lib/module/components/executiontasks/display/DisplayModalET.js +5 -5
  271. package/lib/module/components/executiontasks/display/DisplayModalET.js.map +1 -1
  272. package/lib/module/components/executiontasks/doodle/SignatureET.js +34 -10
  273. package/lib/module/components/executiontasks/doodle/SignatureET.js.map +1 -1
  274. package/lib/module/components/executiontasks/dropCash/SLDropCash.js +4 -4
  275. package/lib/module/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
  276. package/lib/module/components/executiontasks/forms/FormGenerator.js +3 -3
  277. package/lib/module/components/executiontasks/forms/FormGenerator.js.map +1 -1
  278. package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js +1 -1
  279. package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
  280. package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js +131 -18
  281. package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
  282. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +3 -3
  283. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  284. package/lib/module/components/executiontasks/payments/PaymentStyles.js +6 -6
  285. package/lib/module/components/executiontasks/payments/PaymentStyles.js.map +1 -1
  286. package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js +3 -3
  287. package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
  288. package/lib/module/components/executiontasks/pickup/SLPickupET.js +85 -14
  289. package/lib/module/components/executiontasks/pickup/SLPickupET.js.map +1 -1
  290. package/lib/module/components/executiontasks/scan/ScanET.js +12 -12
  291. package/lib/module/components/executiontasks/scan/ScanET.js.map +1 -1
  292. package/lib/module/components/executiontasks/scan/sub_components/CScanner.js +2 -2
  293. package/lib/module/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
  294. package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js +3 -3
  295. package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
  296. package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js +6 -6
  297. package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
  298. package/lib/module/components/executiontasks/scan/utils.js.map +1 -1
  299. package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js +6 -6
  300. package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
  301. package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js +3 -3
  302. package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
  303. package/lib/module/components/widgets/AlertDisplay.js +12 -7
  304. package/lib/module/components/widgets/AlertDisplay.js.map +1 -1
  305. package/lib/module/components/widgets/CancelOrderDialog.js +3 -3
  306. package/lib/module/components/widgets/CancelOrderDialog.js.map +1 -1
  307. package/lib/module/components/widgets/Card.js +1 -1
  308. package/lib/module/components/widgets/Card.js.map +1 -1
  309. package/lib/module/components/widgets/ModalWidget.js +3 -3
  310. package/lib/module/components/widgets/ModalWidget.js.map +1 -1
  311. package/lib/module/components/widgets/ProgressDialog.js +2 -2
  312. package/lib/module/components/widgets/ProgressDialog.js.map +1 -1
  313. package/lib/module/components/widgets/SnackBarCustom.js +2 -2
  314. package/lib/module/components/widgets/SnackBarCustom.js.map +1 -1
  315. package/lib/module/events/EventDispatcher.js +5 -2
  316. package/lib/module/events/EventDispatcher.js.map +1 -1
  317. package/lib/module/icons/circleMark.svg +3 -0
  318. package/lib/module/index.js +2 -2
  319. package/lib/module/index.js.map +1 -1
  320. package/lib/module/locale/Str.js +12 -0
  321. package/lib/module/locale/Str.js.map +1 -0
  322. package/lib/module/locale/en.json +6 -0
  323. package/lib/module/locale/i18n.js +17 -0
  324. package/lib/module/locale/i18n.js.map +1 -0
  325. package/lib/module/locale/util.js +18 -0
  326. package/lib/module/locale/util.js.map +1 -0
  327. package/lib/module/manager/dispatch/DispatchStateContainer.js +3 -1
  328. package/lib/module/manager/dispatch/DispatchStateContainer.js.map +1 -1
  329. package/lib/module/manager/dispatchCodes/EventCodeContainer.js +2 -0
  330. package/lib/module/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
  331. package/lib/module/manager/dispatchCodes/EventCodeRepo.js +2 -0
  332. package/lib/module/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
  333. package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js +2 -0
  334. package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
  335. package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js +2 -0
  336. package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
  337. package/lib/module/manager/location/LocationManager.js +2 -0
  338. package/lib/module/manager/location/LocationManager.js.map +1 -1
  339. package/lib/module/manager/sdk/DispatchSDKManager.js +2 -0
  340. package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
  341. package/lib/module/manager/sdk/DispatchSdkCache.js +2 -0
  342. package/lib/module/manager/sdk/DispatchSdkCache.js.map +1 -1
  343. package/lib/module/manager/syncmanager/AppSyncManager.js +2 -0
  344. package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
  345. package/lib/module/manager/syncmanager/document/DocumentManager.js +2 -0
  346. package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
  347. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +2 -0
  348. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  349. package/lib/module/manager/syncmanager/events/ETEventsManager.js +2 -0
  350. package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  351. package/lib/module/manager/syncmanager/events/EventsSyncManager.js +2 -0
  352. package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  353. package/lib/module/models/fcm.js.map +1 -1
  354. package/lib/module/network/GraphQLClient.js +48 -3
  355. package/lib/module/network/GraphQLClient.js.map +1 -1
  356. package/lib/module/ui/screens/CaptureInputScreen.js +2 -1
  357. package/lib/module/ui/screens/CaptureInputScreen.js.map +1 -1
  358. package/lib/module/ui/screens/DeliverScreen.js +6 -1
  359. package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
  360. package/lib/module/ui/screens/DoodleScreen.js +2 -1
  361. package/lib/module/ui/screens/DoodleScreen.js.map +1 -1
  362. package/lib/module/ui/screens/DropCashScreen.js +2 -2
  363. package/lib/module/ui/screens/DropCashScreen.js.map +1 -1
  364. package/lib/module/ui/screens/PaymentScreen.js +3 -2
  365. package/lib/module/ui/screens/PaymentScreen.js.map +1 -1
  366. package/lib/module/ui/screens/PickupScreen.js +1 -1
  367. package/lib/module/ui/screens/PickupScreen.js.map +1 -1
  368. package/lib/module/ui/screens/StartWorkFlowScreen.js +6 -4
  369. package/lib/module/ui/screens/StartWorkFlowScreen.js.map +1 -1
  370. package/lib/module/ui/screens/WithBaseDispatchScreen.js +1 -0
  371. package/lib/module/ui/screens/WithBaseDispatchScreen.js.map +1 -1
  372. package/lib/module/utils/Logger.js +2 -0
  373. package/lib/module/utils/Logger.js.map +1 -1
  374. package/lib/module/utils/SdkUtils.js +11 -7
  375. package/lib/module/utils/SdkUtils.js.map +1 -1
  376. package/lib/module/utils/fcm/FcmUtils.js +11 -0
  377. package/lib/module/utils/fcm/FcmUtils.js.map +1 -1
  378. package/lib/module/utils/storage.js +69 -10
  379. package/lib/module/utils/storage.js.map +1 -1
  380. package/lib/typescript/components/executiontasks/deliver/DeliverETInput.d.ts +3 -0
  381. package/lib/typescript/components/executiontasks/payments/PaymentStyles.d.ts +4 -5
  382. package/lib/typescript/components/widgets/SnackBarCustom.d.ts +1 -1
  383. package/lib/typescript/index.d.ts +2 -2
  384. package/lib/typescript/locale/Str.d.ts +10 -0
  385. package/lib/typescript/locale/i18n.d.ts +3 -0
  386. package/lib/typescript/locale/util.d.ts +2 -0
  387. package/lib/typescript/models/fcm.d.ts +3 -0
  388. package/lib/typescript/utils/fcm/FcmUtils.d.ts +2 -1
  389. package/lib/typescript/utils/storage.d.ts +3 -2
  390. package/package.json +25 -8
  391. package/src/@types/assets/index.d.ts +6 -0
  392. package/src/components/dispatch/DispatchExecNavigator.tsx +273 -0
  393. package/src/components/executiontasks/CompletedWFSchema.ts +24 -0
  394. package/src/components/executiontasks/ExecutionTasksIndex.ts +137 -0
  395. package/src/components/executiontasks/cancellation/CancelET.tsx +281 -0
  396. package/src/components/executiontasks/cancellation/CancellationSchema.ts +30 -0
  397. package/src/components/executiontasks/captureInput/CaptureInputSchema.ts +52 -0
  398. package/src/components/executiontasks/captureInput/CaptureText.tsx +172 -0
  399. package/src/components/executiontasks/captureInput/utils.ts +9 -0
  400. package/src/components/executiontasks/deliver/DeliverET.tsx +124 -0
  401. package/src/components/executiontasks/deliver/DeliverETInput.ts +50 -0
  402. package/src/components/executiontasks/deliver/SLDeliverET.tsx +512 -0
  403. package/src/components/executiontasks/display/DisplayModalET.tsx +174 -0
  404. package/src/components/executiontasks/display/DisplaySchema.ts +29 -0
  405. package/src/components/executiontasks/doodle/SignatureET.tsx +320 -0
  406. package/src/components/executiontasks/doodle/SignatureSchema.ts +51 -0
  407. package/src/components/executiontasks/dropCash/DropCashET.tsx +145 -0
  408. package/src/components/executiontasks/dropCash/DropCashSchema.ts +22 -0
  409. package/src/components/executiontasks/dropCash/SLDropCash.tsx +286 -0
  410. package/src/components/executiontasks/forms/FormGenerator.tsx +282 -0
  411. package/src/components/executiontasks/forms/FormSchema.ts +29 -0
  412. package/src/components/executiontasks/forms/widgets/DateTimeWidget.tsx +144 -0
  413. package/src/components/executiontasks/forms/widgets/DropdownWidget.tsx +52 -0
  414. package/src/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.tsx +158 -0
  415. package/src/components/executiontasks/forms/widgets/TimeRangeSelector.tsx +38 -0
  416. package/src/components/executiontasks/httpRequest/HttpEtUtils.ts +49 -0
  417. package/src/components/executiontasks/httpRequest/HttpRequestET.tsx +59 -0
  418. package/src/components/executiontasks/httpRequest/HttpRequestETSchema.ts +42 -0
  419. package/src/components/executiontasks/imageCapture/CaptureSchema.ts +93 -0
  420. package/src/components/executiontasks/imageCapture/CaptureUtils.ts +326 -0
  421. package/src/components/executiontasks/imageCapture/ImageCapture.tsx +363 -0
  422. package/src/components/executiontasks/payments/PaymentStyles.ts +93 -0
  423. package/src/components/executiontasks/payments/PaymentUtils.ts +7 -0
  424. package/src/components/executiontasks/payments/completePayment/CompletePaymentET.tsx +237 -0
  425. package/src/components/executiontasks/payments/completePayment/CompletePaymentSchema.ts +23 -0
  426. package/src/components/executiontasks/payments/init/InitPaymentET.tsx +247 -0
  427. package/src/components/executiontasks/payments/init/InitPaymentSchema.ts +37 -0
  428. package/src/components/executiontasks/payments/processPayment/ProcessPaymentET.tsx +272 -0
  429. package/src/components/executiontasks/payments/processPayment/ProcessPaymentSchema.ts +38 -0
  430. package/src/components/executiontasks/pickup/PickpSchema.ts +28 -0
  431. package/src/components/executiontasks/pickup/PickupET.tsx +126 -0
  432. package/src/components/executiontasks/pickup/SLPickupET.tsx +367 -0
  433. package/src/components/executiontasks/scan/ScanET.tsx +1059 -0
  434. package/src/components/executiontasks/scan/ScanSchema.ts +121 -0
  435. package/src/components/executiontasks/scan/constants.ts +6 -0
  436. package/src/components/executiontasks/scan/interfaces.ts +109 -0
  437. package/src/components/executiontasks/scan/modalConstant.ts +120 -0
  438. package/src/components/executiontasks/scan/sub_components/CScanner.tsx +107 -0
  439. package/src/components/executiontasks/scan/sub_components/DropDownUtils.ts +119 -0
  440. package/src/components/executiontasks/scan/sub_components/ERDropDown.tsx +134 -0
  441. package/src/components/executiontasks/scan/sub_components/SummaryPage.tsx +1296 -0
  442. package/src/components/executiontasks/scan/utils.ts +1108 -0
  443. package/src/components/executiontasks/validateOTP/ValidateOTPET.tsx +436 -0
  444. package/src/components/executiontasks/validateOTP/ValidateOTPSchema.ts +68 -0
  445. package/src/components/executiontasks/validateOTP/constants.ts +24 -0
  446. package/src/components/executiontasks/validateOTP/sub-components/OTPInput.tsx +83 -0
  447. package/src/components/executiontasks/validateOTP/utils.ts +180 -0
  448. package/src/components/executiontasks/verifyInput/VerifyInputSchema.ts +49 -0
  449. package/src/components/executiontasks/verifyLocation/GeofenceUtils.ts +55 -0
  450. package/src/components/executiontasks/verifyLocation/VerifyLocSchema.ts +56 -0
  451. package/src/components/executiontasks/verifyLocation/VerifyLocationET.tsx +69 -0
  452. package/src/components/executiontasks/verifyOtp/VerifyOtpET.tsx +96 -0
  453. package/src/components/executiontasks/verifyOtp/VerifyOtpSchema.ts +27 -0
  454. package/src/components/utils/index.ts +18 -0
  455. package/src/components/widgets/AlertDisplay.tsx +38 -0
  456. package/src/components/widgets/CancelOrderDialog.tsx +112 -0
  457. package/src/components/widgets/Card.tsx +99 -0
  458. package/src/components/widgets/GoBackModal.tsx +49 -0
  459. package/src/components/widgets/IconButton.tsx +32 -0
  460. package/src/components/widgets/ModalWidget.tsx +157 -0
  461. package/src/components/widgets/ProgressDialog.tsx +54 -0
  462. package/src/components/widgets/SearchBar.tsx +71 -0
  463. package/src/components/widgets/SnackBarCustom.tsx +212 -0
  464. package/src/components/widgets/SplitTextInput.tsx +116 -0
  465. package/src/components/widgets/TabsComponent.tsx +84 -0
  466. package/src/components/widgets/Toaster.ts +8 -0
  467. package/src/config/DispatchSDKConfig.ts +4 -0
  468. package/src/constants/apiConstants.ts +11 -0
  469. package/src/constants/constants.ts +12 -0
  470. package/src/constants/statuscode.ts +8 -0
  471. package/src/errors/BaseError.ts +16 -0
  472. package/src/errors/ErrorCodes.ts +38 -0
  473. package/src/events/EventDispatcher.ts +22 -0
  474. package/src/events/EventListener.ts +14 -0
  475. package/src/events/constants.ts +7 -0
  476. package/src/events/index.ts +3 -0
  477. package/src/events/interface.ts +1 -0
  478. package/src/icons/ScanIcon.tsx +24 -0
  479. package/src/icons/circleMark.svg +3 -0
  480. package/src/icons/file.tsx +24 -0
  481. package/src/icons/interface.ts +5 -0
  482. package/src/index.tsx +80 -0
  483. package/src/locale/Str.ts +12 -0
  484. package/src/locale/en.json +6 -0
  485. package/src/locale/i18n.ts +17 -0
  486. package/src/locale/util.ts +20 -0
  487. package/src/manager/dispatch/DispatchStateContainer.tsx +842 -0
  488. package/src/manager/dispatchCodes/EventCodeContainer.ts +75 -0
  489. package/src/manager/dispatchCodes/EventCodeRepo.ts +82 -0
  490. package/src/manager/dispatchCodes/ReasonCodeContainer.ts +121 -0
  491. package/src/manager/dispatchCodes/ReasonCodeRepo.ts +90 -0
  492. package/src/manager/dispatchCodes/reasonCodes.json +137 -0
  493. package/src/manager/jobRemoval/JobRemovalManager.ts +21 -0
  494. package/src/manager/location/LocationManager.ts +77 -0
  495. package/src/manager/sdk/DispatchSDKManager.ts +99 -0
  496. package/src/manager/sdk/DispatchSdkCache.ts +47 -0
  497. package/src/manager/sdk/callbacksHandler.ts +25 -0
  498. package/src/manager/syncmanager/AppSyncManager.ts +187 -0
  499. package/src/manager/syncmanager/DBConfig.ts +180 -0
  500. package/src/manager/syncmanager/NativeSyncManager.ts +14 -0
  501. package/src/manager/syncmanager/constants.ts +5 -0
  502. package/src/manager/syncmanager/database.ts +93 -0
  503. package/src/manager/syncmanager/document/DocumentHttpClient.ts +111 -0
  504. package/src/manager/syncmanager/document/DocumentManager.ts +143 -0
  505. package/src/manager/syncmanager/document/DocumentSyncManager.ts +233 -0
  506. package/src/manager/syncmanager/document/models.ts +4 -0
  507. package/src/manager/syncmanager/events/ETEventsManager.ts +633 -0
  508. package/src/manager/syncmanager/events/EventsGraphQLClient.ts +0 -0
  509. package/src/manager/syncmanager/events/EventsSyncManager.ts +490 -0
  510. package/src/manager/syncmanager/events/SyncHttpClient.ts +202 -0
  511. package/src/models/DispatchModels.ts +97 -0
  512. package/src/models/ReasonCodes.ts +12 -0
  513. package/src/models/auth.ts +43 -0
  514. package/src/models/execTasks/ETBaseModels.ts +113 -0
  515. package/src/models/execTasks/ETConfig.ts +94 -0
  516. package/src/models/execution.ts +9 -0
  517. package/src/models/fcm.ts +6 -0
  518. package/src/models/sdk.ts +35 -0
  519. package/src/native/signature/SignatureCapture.tsx +110 -0
  520. package/src/network/GraphQLClient.ts +147 -0
  521. package/src/network/NetworkClient.ts +58 -0
  522. package/src/network/NetworkUtils.ts +41 -0
  523. package/src/network/Queries.ts +46 -0
  524. package/src/network/client.ts +61 -0
  525. package/src/res/strings.ts +1 -0
  526. package/src/resources/Login.ts +36 -0
  527. package/src/resources/network.ts +13 -0
  528. package/src/styles/SdkColors.ts +24 -0
  529. package/src/styles/executionTasks/CommonStyles.ts +188 -0
  530. package/src/ui/screens/CancellationScreen.tsx +144 -0
  531. package/src/ui/screens/CaptureInputScreen.tsx +79 -0
  532. package/src/ui/screens/CompleteObjectiveScreen.tsx +72 -0
  533. package/src/ui/screens/DeliverScreen.tsx +114 -0
  534. package/src/ui/screens/DisplayScreen.tsx +52 -0
  535. package/src/ui/screens/DoodleScreen.tsx +84 -0
  536. package/src/ui/screens/DropCashScreen.tsx +113 -0
  537. package/src/ui/screens/ETScreensIndex.ts +35 -0
  538. package/src/ui/screens/FormsScreen.tsx +164 -0
  539. package/src/ui/screens/GeofenceScreen.tsx +54 -0
  540. package/src/ui/screens/HttpRequestScreen.tsx +47 -0
  541. package/src/ui/screens/ImageCaptureScreen.tsx +77 -0
  542. package/src/ui/screens/PaymentScreen.tsx +191 -0
  543. package/src/ui/screens/PickupScreen.tsx +82 -0
  544. package/src/ui/screens/ScanScreen.tsx +159 -0
  545. package/src/ui/screens/StartWorkFlowScreen.tsx +233 -0
  546. package/src/ui/screens/ValidateOTPScreen.tsx +62 -0
  547. package/src/ui/screens/WithBaseDispatchScreen.tsx +33 -0
  548. package/src/ui/uiConfig/RouteParams.ts +28 -0
  549. package/src/utils/ApiUtils.ts +157 -0
  550. package/src/utils/ExecTaskUtils.ts +214 -0
  551. package/src/utils/Logger.ts +110 -0
  552. package/src/utils/NetworkUtil.ts +50 -0
  553. package/src/utils/SdkUtils.ts +155 -0
  554. package/src/utils/SyncManagerUtils.ts +223 -0
  555. package/src/utils/fcm/FCM.ts +118 -0
  556. package/src/utils/fcm/FcmUtils.ts +130 -0
  557. package/src/utils/helper.ts +24 -0
  558. package/src/utils/hooks/useModal.tsx +67 -0
  559. package/src/utils/hooks/useTimer.ts +44 -0
  560. package/src/utils/loginHelper.ts +51 -0
  561. package/src/utils/storage.ts +292 -0
  562. package/src/utils/test.json +17 -0
  563. package/src/utils/utils.ts +30 -0
  564. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  565. package/android/gradle/wrapper/gradle-wrapper.properties +0 -5
  566. package/android/gradlew +0 -185
  567. package/android/gradlew.bat +0 -89
@@ -0,0 +1,363 @@
1
+ import React, {
2
+ useCallback,
3
+ useEffect,
4
+ useState,
5
+ useLayoutEffect,
6
+ } from 'react';
7
+ import {
8
+ BackHandler,
9
+ FlatList,
10
+ Image,
11
+ Platform,
12
+ StyleSheet,
13
+ Text,
14
+ View,
15
+ } from 'react-native';
16
+ import type { CaptureInput, ImageData } from './CaptureSchema';
17
+ import * as CaptureUtils from './CaptureUtils';
18
+ import { getCaptureOutput } from './CaptureUtils';
19
+ import { showToast } from '../../widgets/Toaster';
20
+ import SdkColors, { ColorTheme } from '../../../styles/SdkColors';
21
+ import Icon from 'react-native-vector-icons/MaterialIcons';
22
+ import {
23
+ CommonStyles,
24
+ Fonts,
25
+ } from '../../../styles/executionTasks/CommonStyles';
26
+ import { getBaseETResponse } from '../../../utils/ExecTaskUtils';
27
+ import {
28
+ EntityCode,
29
+ ExecutionTaskID,
30
+ } from '../../../models/execTasks/ETConfig';
31
+ import { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';
32
+ import { GO_BACK_EVENT_CODE } from '../../../constants/constants';
33
+ import { Button, Modal, Portal, Provider } from 'react-native-paper';
34
+ import Logger, { LOG_TYPE } from '../../../utils/Logger';
35
+ import { hasGoBackConnector } from '../../../components/utils';
36
+ import GoBackModal from '../../../components/widgets/GoBackModal';
37
+ import { useFocusEffect } from '@react-navigation/native';
38
+
39
+ const ImageItem = ({ item, onPress }: { item: ImageData; onPress: any }) => (
40
+ <View style={{ marginEnd: 8 }}>
41
+ <Image source={{ uri: item.path }} style={styles.image} />
42
+ <Icon
43
+ onPress={onPress}
44
+ name="highlight-remove"
45
+ color={'red'}
46
+ size={32}
47
+ style={{
48
+ position: 'absolute',
49
+ right: 5,
50
+ top: 5,
51
+ }}
52
+ />
53
+ </View>
54
+ );
55
+
56
+ const ImageCapture = (props: CaptureInput) => {
57
+ const [images, setImages] = useState<Array<ImageData>>([]);
58
+ const [showCapture, setShowCapture] = useState(true);
59
+ const [disableProceed, setDisableProceed] = useState(false);
60
+ const [showBackModal, setShowBackModal] = useState(false);
61
+
62
+ // Handle back-button click
63
+ useFocusEffect(
64
+ React.useCallback(() => {
65
+ const onBackPress = () => {
66
+ if (
67
+ props.taskMeta?.enableGoBack &&
68
+ hasGoBackConnector(props.applicableReasons)
69
+ ) {
70
+ setShowBackModal(true);
71
+ return true;
72
+ } else {
73
+ props.navigation.goBack();
74
+ return true;
75
+ }
76
+ };
77
+ BackHandler.addEventListener('hardwareBackPress', onBackPress);
78
+ return () =>
79
+ BackHandler.removeEventListener('hardwareBackPress', onBackPress);
80
+ }, [])
81
+ );
82
+
83
+ useLayoutEffect(() => {
84
+ props.navigation.setOptions({
85
+ title: props.title,
86
+ headerLeft: () => {
87
+ return (
88
+ <Icon
89
+ onPress={() => {
90
+ if (
91
+ props.taskMeta?.enableGoBack &&
92
+ hasGoBackConnector(props.applicableReasons)
93
+ )
94
+ setShowBackModal(true);
95
+ else props.navigation.goBack();
96
+ }}
97
+ name="arrow-back"
98
+ color={'black'}
99
+ size={25}
100
+ style={{
101
+ paddingRight: 15,
102
+ paddingTop: 5,
103
+ }}
104
+ />
105
+ );
106
+ },
107
+ });
108
+ }, [props.navigation, props.title]);
109
+
110
+ const renderModal = () => {
111
+ return (
112
+ <GoBackModal
113
+ showModal={showBackModal}
114
+ setShowModal={setShowBackModal}
115
+ onSuccess={async () => {
116
+ props.onSubmitET({
117
+ ...(await getBaseETResponse(
118
+ EntityCode.IMAGE_CAPTURE,
119
+ false,
120
+ GO_BACK_EVENT_CODE,
121
+ '',
122
+ props.mergedObjectiveId,
123
+ ExecutionTaskID.IMAGE_CAPTURE
124
+ )),
125
+ });
126
+ setShowBackModal(false);
127
+ }}
128
+ onFailure={() => setShowBackModal(false)}
129
+ />
130
+ );
131
+ };
132
+
133
+ const handleSubmit = async () => {
134
+ try {
135
+ setDisableProceed(true);
136
+ if (images.length > 0) {
137
+ if (
138
+ props.additionalMultiConfig?.minCaptureCount === 'N' &&
139
+ images.length < props.captureCount
140
+ ) {
141
+ showToast(
142
+ `Min ${props.captureCount} image(s) required to be captured.`
143
+ );
144
+ return;
145
+ }
146
+ if (
147
+ props.captureMode === 'MULTI' &&
148
+ props.captureCountLimit &&
149
+ props.captureCountLimit > 0 &&
150
+ images.length > CaptureUtils.getMaxImagesCount(props)
151
+ ) {
152
+ showToast(`Max ${props.captureCountLimit} image(s) allowed.`);
153
+ return;
154
+ }
155
+ props.onSubmitET(await getCaptureOutput(images, props));
156
+ } else {
157
+ showToast('No Images captured');
158
+ }
159
+ } catch (error: any) {
160
+ setDisableProceed(false);
161
+ showToast(error.message);
162
+ } finally {
163
+ setDisableProceed(false);
164
+ }
165
+ };
166
+
167
+ useEffect(() => {
168
+ if (props.captureMode === 'SINGLE') {
169
+ if (images.length > 0) {
170
+ setShowCapture(false);
171
+ } else setShowCapture(true);
172
+ } else if (
173
+ props.captureMode === 'MULTI' &&
174
+ props.captureCountLimit &&
175
+ props.captureCountLimit > 0
176
+ ) {
177
+ if (images.length === CaptureUtils.getMaxImagesCount(props)) {
178
+ setShowCapture(false);
179
+ } else setShowCapture(true);
180
+ } else {
181
+ if (images.length > 0) {
182
+ setShowCapture(true);
183
+ }
184
+ }
185
+ }, [images, props, showCapture]);
186
+
187
+ const captureImage = useCallback(async () => {
188
+ if (!showCapture) {
189
+ showToast(`Max Image Limit reached`);
190
+ return;
191
+ }
192
+ let imageDataResponse = await CaptureUtils.captureImage(
193
+ props.resolution.breadth,
194
+ props.resolution.length,
195
+ props.fileSizeLimit
196
+ );
197
+ if (imageDataResponse != null) {
198
+ setImages((prevState) => {
199
+ return [
200
+ ...prevState,
201
+ {
202
+ id: CaptureUtils.getImagesFileName(), // @ts-ignore
203
+ path: imageDataResponse.uri,
204
+ url: '',
205
+ timestamp: Date.now(),
206
+ },
207
+ ];
208
+ });
209
+ }
210
+ }, [props, showCapture]);
211
+
212
+ const deleteImage = async (imageData: ImageData) => {
213
+ try {
214
+ let filteredImages = await CaptureUtils.deleteImage(imageData, images);
215
+ setImages(filteredImages);
216
+ } catch (err: any) {
217
+ Logger.getInstance().logEvent(
218
+ 'deleteImageError',
219
+ err.message,
220
+ LOG_TYPE.SDK_ERROR
221
+ );
222
+ return;
223
+ }
224
+ };
225
+
226
+ const renderItem = ({ item }: { item: ImageData }) => {
227
+ return (
228
+ <ImageItem
229
+ item={item}
230
+ onPress={async () => {
231
+ await deleteImage(item);
232
+ }}
233
+ />
234
+ );
235
+ };
236
+ return (
237
+ <Provider>
238
+ {renderModal()}
239
+ <View style={CommonStyles.mainContainer}>
240
+ {props.message && (
241
+ <View style={styles.etMessageView}>
242
+ <Text style={styles.etMessage}>{props.message}</Text>
243
+ </View>
244
+ )}
245
+ <View style={styles.imageEtContainer}>
246
+ {images.length === 0 && (
247
+ <Icon name={'photo-camera'} size={24} color={'#666666'} />
248
+ )}
249
+ {images.length > 0 && (
250
+ <FlatList
251
+ horizontal
252
+ data={images}
253
+ renderItem={renderItem}
254
+ keyExtractor={(item) => item.id}
255
+ />
256
+ )}
257
+ <Button
258
+ onPress={() => captureImage()}
259
+ uppercase={false}
260
+ labelStyle={[
261
+ {
262
+ fontFamily:
263
+ Platform.OS === 'android'
264
+ ? Fonts.IBMPlexSans_400Regular
265
+ : 'IBMPlexSans-Regular',
266
+ fontStyle: 'normal',
267
+ fontWeight: 'normal',
268
+ fontSize: 14,
269
+ alignItems: 'center',
270
+ textAlign: 'center',
271
+ letterSpacing: 0.25,
272
+ color: SdkColors[ColorTheme.LIGHT].primaryButton,
273
+ },
274
+ ]}
275
+ >
276
+ {images.length > 0 ? 'Click more' : 'Click Picture'}
277
+ </Button>
278
+ </View>
279
+ <View style={[CommonStyles.bottom, { marginStart: 10, marginEnd: 10 }]}>
280
+ <Button
281
+ disabled={disableProceed}
282
+ style={CommonStyles.nextButton}
283
+ mode="contained"
284
+ labelStyle={CommonStyles.nextButtonLabel}
285
+ onPress={async () => {
286
+ await handleSubmit();
287
+ }}
288
+ >
289
+ Proceed
290
+ </Button>
291
+ <Button
292
+ style={[CommonStyles.cancelButton, { marginTop: 10 }]}
293
+ mode="outlined"
294
+ labelStyle={CommonStyles.cancelButtonLabel}
295
+ onPress={async () => {
296
+ props.onSubmitET({
297
+ ...(await getBaseETResponse(
298
+ EntityCode.IMAGE_CAPTURE,
299
+ false,
300
+ getEventCodeByET(
301
+ ExecutionTaskID.IMAGE_CAPTURE,
302
+ false,
303
+ props.applicableReasons?.failure
304
+ ),
305
+ '',
306
+ props.mergedObjectiveId,
307
+ ExecutionTaskID.IMAGE_CAPTURE
308
+ )),
309
+ });
310
+ }}
311
+ >
312
+ Cancel
313
+ </Button>
314
+ </View>
315
+ </View>
316
+ </Provider>
317
+ );
318
+ };
319
+
320
+ const styles = StyleSheet.create({
321
+ imageEtContainer: {
322
+ display: 'flex',
323
+ marginStart: 16,
324
+ marginEnd: 16,
325
+ borderWidth: 1,
326
+ borderColor: 'rgba(0, 0, 0, 0.1)',
327
+ padding: 10,
328
+ marginTop: 15,
329
+ borderStyle: 'dashed',
330
+ backgroundColor: '#FFFFFF',
331
+ alignItems: 'center',
332
+ justifyContent: 'center',
333
+ height: 300,
334
+ },
335
+ image: {
336
+ height: 250,
337
+ width: 200,
338
+ },
339
+ etMessage: {
340
+ textAlign: 'center',
341
+ fontStyle: 'normal',
342
+ fontWeight: '600',
343
+ fontSize: 18,
344
+ display: 'flex',
345
+ alignItems: 'center',
346
+ letterSpacing: 0.25,
347
+ color: '#000000',
348
+ fontFamily:
349
+ Platform.OS === 'android'
350
+ ? Fonts.IBMPlexSans_600SemiBold
351
+ : 'IBMPlexSans-SemiBold',
352
+ },
353
+ etMessageView: {
354
+ marginTop: 14,
355
+ paddingStart: 40,
356
+ paddingEnd: 40,
357
+ paddingTop: 15,
358
+ paddingBottom: 15,
359
+ backgroundColor: '#ffffff',
360
+ },
361
+ });
362
+
363
+ export default ImageCapture;
@@ -0,0 +1,93 @@
1
+ import { Platform, StyleSheet } from 'react-native';
2
+ import { Fonts } from '../../../styles/executionTasks/CommonStyles';
3
+
4
+ export const PaymentStyles = StyleSheet.create({
5
+ amountStyle: {
6
+ fontSize: 18,
7
+ fontWeight: '600',
8
+ fontStyle: 'normal',
9
+ backgroundColor: 'white',
10
+ textAlign: 'center',
11
+ alignItems: 'center',
12
+ paddingTop: 25,
13
+ paddingBottom: 25,
14
+ fontFamily:
15
+ Platform.OS === 'android'
16
+ ? Fonts.IBMPlexSans_600SemiBold
17
+ : 'IBMPlexSans-SemiBold',
18
+ },
19
+ messageStyle: {
20
+ fontFamily:
21
+ Platform.OS === 'android'
22
+ ? Fonts.IBMPlexSans_400Regular
23
+ : 'IBMPlexSans-Regular',
24
+ backgroundColor: '#FFFFFF',
25
+ color: '#111111',
26
+ padding: 20,
27
+ fontStyle: 'normal',
28
+ fontWeight: 'normal',
29
+ fontSize: 14,
30
+ },
31
+ textStyle1: {
32
+ fontFamily:
33
+ Platform.OS === 'android'
34
+ ? Fonts.IBMPlexSans_400Regular
35
+ : 'IBMPlexSans-Regular',
36
+ marginTop: 20,
37
+ marginStart: 20,
38
+ marginEnd: 20,
39
+ color: '#9D9D9D',
40
+ fontStyle: 'normal',
41
+ fontWeight: 'normal',
42
+ fontSize: 14,
43
+ },
44
+ reasonTextStyle: {
45
+ flex: 1,
46
+ flexWrap: 'wrap',
47
+ fontFamily:
48
+ Platform.OS === 'android'
49
+ ? Fonts.IBMPlexSans_400Regular
50
+ : 'IBMPlexSans-Regular',
51
+ fontStyle: 'normal',
52
+ fontSize: 14,
53
+ lineHeight: 21,
54
+ letterSpacing: 0.25,
55
+ textAlign: 'justify',
56
+ color: '#111111',
57
+ },
58
+
59
+ reasonItemStyle: {
60
+ flexDirection: 'row',
61
+ paddingTop: 10,
62
+ paddingStart: 20,
63
+ paddingEnd: 20,
64
+ backgroundColor: 'white',
65
+ },
66
+ heading: {
67
+ marginTop: 30,
68
+ marginStart: 25,
69
+ fontSize: 14,
70
+ lineHeight: 21,
71
+ letterSpacing: 0.25,
72
+ fontFamily:
73
+ Platform.OS === 'android'
74
+ ? Fonts.IBMPlexSans_400Regular
75
+ : 'IBMPlexSans-Regular',
76
+ color: '#9D9D9D',
77
+ },
78
+ item: {
79
+ margin: 10,
80
+ padding: 15,
81
+ borderWidth: 0.2,
82
+ },
83
+ btn: {
84
+ width: 240,
85
+ borderRadius: 4,
86
+ backgroundColor: '#62d1bc',
87
+ paddingHorizontal: 24,
88
+ paddingVertical: 12,
89
+ marginVertical: 8,
90
+ },
91
+
92
+ loader: { flex: 1, justifyContent: 'center', alignItems: 'center' },
93
+ });
@@ -0,0 +1,7 @@
1
+ export function getUniqueTransactionID(amt: number): string {
2
+ return `TID${Date.now().toString() + amt.toString()}`;
3
+ }
4
+ export function getPaymentValue(amt: number, minorUnit?: number): number {
5
+ if (!minorUnit) return amt;
6
+ return amt / Math.pow(10, minorUnit);
7
+ }
@@ -0,0 +1,237 @@
1
+ import React, { useState, useLayoutEffect } from 'react';
2
+ import type {
3
+ CompletePaymentInput,
4
+ CompletePaymentOutput,
5
+ } from './CompletePaymentSchema';
6
+ import { getBaseETResponse } from '../../../../utils/ExecTaskUtils';
7
+ import { getEventCodeByET } from '../../../../manager/dispatchCodes/EventCodeContainer';
8
+ import {
9
+ EntityCode,
10
+ ExecutionTaskID,
11
+ } from '../../../../models/execTasks/ETConfig';
12
+ import {
13
+ Button,
14
+ Modal,
15
+ Paragraph,
16
+ Portal,
17
+ Provider,
18
+ Text,
19
+ Title,
20
+ } from 'react-native-paper';
21
+ import { Platform, StyleSheet, View } from 'react-native';
22
+ import {
23
+ CommonStyles,
24
+ DeliverPickupStyles,
25
+ Fonts,
26
+ } from '../../../../styles/executionTasks/CommonStyles';
27
+ import { getPaymentValue } from '../PaymentUtils';
28
+ import { PaymentStyles } from '../PaymentStyles';
29
+ import { GO_BACK_EVENT_CODE } from '../../../../constants/constants';
30
+ import Icon from 'react-native-vector-icons/MaterialIcons';
31
+ import GoBackModal from '../../../../components/widgets/GoBackModal';
32
+ import { hasGoBackConnector } from '../../../../components/utils';
33
+ import { useFocusEffect } from '@react-navigation/native';
34
+ import { BackHandler } from 'react-native';
35
+
36
+ const CompletePaymentET = (props: CompletePaymentInput) => {
37
+ const [disableProceed, setDisableProceed] = useState(false);
38
+ const [showBackModal, setShowBackModal] = useState(false);
39
+
40
+ // Handle back-button click
41
+ useFocusEffect(
42
+ React.useCallback(() => {
43
+ const onBackPress = () => {
44
+ if (
45
+ props.taskMeta?.enableGoBack &&
46
+ hasGoBackConnector(props.applicableReasons)
47
+ ) {
48
+ setShowBackModal(true);
49
+ return true;
50
+ } else {
51
+ props.navigation.goBack();
52
+ return true;
53
+ }
54
+ };
55
+ BackHandler.addEventListener('hardwareBackPress', onBackPress);
56
+ return () =>
57
+ BackHandler.removeEventListener('hardwareBackPress', onBackPress);
58
+ }, [])
59
+ );
60
+
61
+ useLayoutEffect(() => {
62
+ props.navigation.setOptions({
63
+ title: props.title,
64
+ headerLeft: () => {
65
+ return (
66
+ <Icon
67
+ onPress={() => {
68
+ if (
69
+ props.taskMeta?.enableGoBack &&
70
+ hasGoBackConnector(props.applicableReasons)
71
+ )
72
+ setShowBackModal(true);
73
+ else props.navigation.goBack();
74
+ }}
75
+ name="arrow-back"
76
+ color={'black'}
77
+ size={25}
78
+ style={{
79
+ paddingRight: 15,
80
+ paddingTop: 5,
81
+ }}
82
+ />
83
+ );
84
+ },
85
+ });
86
+ }, [props.navigation, props.title]);
87
+
88
+ const renderModal = () => {
89
+ return (
90
+ <GoBackModal
91
+ showModal={showBackModal}
92
+ setShowModal={setShowBackModal}
93
+ onSuccess={async () => {
94
+ props.onSubmitET({
95
+ paymentMode: props.paymentMode,
96
+ collectedAmount: props.collectedAmount,
97
+ tenantTransactionId: props.tenantTransactionId,
98
+ ...(await getBaseETResponse(
99
+ EntityCode.COMPLETE_PAYMENT,
100
+ false,
101
+ GO_BACK_EVENT_CODE,
102
+ '',
103
+ props.mergedObjectiveId,
104
+ ExecutionTaskID.COMPLETE_PAYMENT
105
+ )),
106
+ });
107
+ setShowBackModal(false);
108
+ }}
109
+ onFailure={() => setShowBackModal(false)}
110
+ />
111
+ );
112
+ };
113
+
114
+ return (
115
+ <Provider>
116
+ {renderModal()}
117
+ <Portal>
118
+ <View style={DeliverPickupStyles.mainContainer}>
119
+ <Modal
120
+ dismissable={false}
121
+ visible={true}
122
+ contentContainerStyle={DeliverPickupStyles.modalContent}
123
+ >
124
+ <View style={DeliverPickupStyles.modalView}>
125
+ <Title style={[styles.title, { color: 'grey' }]}>
126
+ {props.title}
127
+ </Title>
128
+ <Paragraph style={PaymentStyles.amountStyle}>
129
+ {props.expectedAmount.currencyCode +
130
+ ' ' +
131
+ getPaymentValue(
132
+ props.expectedAmount.value,
133
+ props.expectedAmount.minorUnit
134
+ ).toLocaleString()}
135
+ </Paragraph>
136
+ {props.message && (
137
+ <Text style={styles.message1}>{props.message}</Text>
138
+ )}
139
+ <Button
140
+ disabled={disableProceed}
141
+ mode={'contained'}
142
+ uppercase={false}
143
+ labelStyle={CommonStyles.nextButtonLabel}
144
+ style={[
145
+ CommonStyles.nextButton,
146
+ {
147
+ marginTop: 20,
148
+ },
149
+ ]}
150
+ onPress={async () => {
151
+ let etOutput: CompletePaymentOutput = {
152
+ paymentMode: props.paymentMode,
153
+ collectedAmount: props.collectedAmount,
154
+ tenantTransactionId: props.tenantTransactionId, // todo Hardcoded for SL Release and is only for CASH Payment Type
155
+ ...(await getBaseETResponse(
156
+ EntityCode.COMPLETE_PAYMENT,
157
+ true,
158
+ getEventCodeByET(
159
+ ExecutionTaskID.COMPLETE_PAYMENT,
160
+ true,
161
+ props.applicableReasons?.success
162
+ ),
163
+ '',
164
+ props.mergedObjectiveId,
165
+ ExecutionTaskID.COMPLETE_PAYMENT
166
+ )),
167
+ };
168
+ setDisableProceed(true);
169
+ props.onSubmitET(etOutput);
170
+ }}
171
+ >
172
+ Continue
173
+ </Button>
174
+ <Button
175
+ labelStyle={CommonStyles.cancelButtonLabel}
176
+ style={[CommonStyles.cancelButton, { marginTop: 10 }]}
177
+ mode={'outlined'}
178
+ onPress={async () => {
179
+ let etOutput: CompletePaymentOutput = {
180
+ paymentMode: props.paymentMode,
181
+ collectedAmount: props.collectedAmount,
182
+ tenantTransactionId: props.tenantTransactionId, // todo Hardcoded for SL Release and is only for CASH Payment Type
183
+ ...(await getBaseETResponse(
184
+ EntityCode.COMPLETE_PAYMENT,
185
+ false,
186
+ getEventCodeByET(
187
+ ExecutionTaskID.COMPLETE_PAYMENT,
188
+ false,
189
+ props.applicableReasons?.failure
190
+ ),
191
+ '',
192
+ props.mergedObjectiveId,
193
+ ExecutionTaskID.COMPLETE_PAYMENT
194
+ )),
195
+ };
196
+ setDisableProceed(true);
197
+ props.onSubmitET(etOutput);
198
+ }}
199
+ >
200
+ Cancel
201
+ </Button>
202
+ </View>
203
+ </Modal>
204
+ </View>
205
+ </Portal>
206
+ </Provider>
207
+ );
208
+ };
209
+ export default CompletePaymentET;
210
+
211
+ const styles = StyleSheet.create({
212
+ title: {
213
+ fontSize: 18,
214
+ fontStyle: 'normal',
215
+ fontWeight: '600',
216
+ lineHeight: 28,
217
+ textAlign: 'center',
218
+ color: '#111111',
219
+ fontFamily:
220
+ Platform.OS === 'android'
221
+ ? Fonts.IBMPlexSans_600SemiBold
222
+ : 'IBMPlexSans-SemiBold',
223
+ },
224
+ message1: {
225
+ fontStyle: 'normal',
226
+ fontWeight: 'normal',
227
+ fontSize: 12,
228
+ lineHeight: 20,
229
+ textAlign: 'center',
230
+ color: '#111111',
231
+ marginTop: 12,
232
+ fontFamily:
233
+ Platform.OS === 'android'
234
+ ? Fonts.IBMPlexSans_400Regular
235
+ : 'IBMPlexSans-Regular',
236
+ },
237
+ });