@os1-platform/dispatch-mobile 2.1.2 → 2.1.3

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 (619) 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 +112 -27
  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 +113 -48
  24. package/lib/commonjs/components/executiontasks/doodle/SignatureET.js.map +1 -1
  25. package/lib/commonjs/components/executiontasks/doodle/SignatureSchema.js.map +1 -1
  26. package/lib/commonjs/components/executiontasks/dropCash/DropCashET.js +3 -4
  27. package/lib/commonjs/components/executiontasks/dropCash/DropCashET.js.map +1 -1
  28. package/lib/commonjs/components/executiontasks/dropCash/DropCashSchema.js.map +1 -1
  29. package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js +7 -8
  30. package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
  31. package/lib/commonjs/components/executiontasks/forms/FormGenerator.js +6 -7
  32. package/lib/commonjs/components/executiontasks/forms/FormGenerator.js.map +1 -1
  33. package/lib/commonjs/components/executiontasks/forms/FormSchema.js.map +1 -1
  34. package/lib/commonjs/components/executiontasks/forms/widgets/DateTimeWidget.js +4 -5
  35. package/lib/commonjs/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
  36. package/lib/commonjs/components/executiontasks/forms/widgets/DropdownWidget.js +3 -4
  37. package/lib/commonjs/components/executiontasks/forms/widgets/DropdownWidget.js.map +1 -1
  38. package/lib/commonjs/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js +3 -4
  39. package/lib/commonjs/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js.map +1 -1
  40. package/lib/commonjs/components/executiontasks/forms/widgets/TimeRangeSelector.js +3 -4
  41. package/lib/commonjs/components/executiontasks/forms/widgets/TimeRangeSelector.js.map +1 -1
  42. package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestET.js +3 -4
  43. package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestET.js.map +1 -1
  44. package/lib/commonjs/components/executiontasks/imageCapture/CaptureSchema.js.map +1 -1
  45. package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js +138 -25
  46. package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
  47. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +228 -132
  48. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  49. package/lib/commonjs/components/executiontasks/imageCapture/camera.svg +3 -0
  50. package/lib/commonjs/components/executiontasks/imageCapture/circle-xmark.svg +5 -0
  51. package/lib/commonjs/components/executiontasks/payments/PaymentStyles.js +6 -7
  52. package/lib/commonjs/components/executiontasks/payments/PaymentStyles.js.map +1 -1
  53. package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js +6 -7
  54. package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
  55. package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentSchema.js.map +1 -1
  56. package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js +4 -5
  57. package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
  58. package/lib/commonjs/components/executiontasks/payments/init/InitPaymentSchema.js.map +1 -1
  59. package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js +4 -5
  60. package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
  61. package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentSchema.js.map +1 -1
  62. package/lib/commonjs/components/executiontasks/pickup/PickpSchema.js.map +1 -1
  63. package/lib/commonjs/components/executiontasks/pickup/PickupET.js +3 -4
  64. package/lib/commonjs/components/executiontasks/pickup/PickupET.js.map +1 -1
  65. package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js +89 -17
  66. package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js.map +1 -1
  67. package/lib/commonjs/components/executiontasks/scan/ScanET.js +14 -15
  68. package/lib/commonjs/components/executiontasks/scan/ScanET.js.map +1 -1
  69. package/lib/commonjs/components/executiontasks/scan/ScanSchema.js +1 -2
  70. package/lib/commonjs/components/executiontasks/scan/ScanSchema.js.map +1 -1
  71. package/lib/commonjs/components/executiontasks/scan/constants.js +6 -12
  72. package/lib/commonjs/components/executiontasks/scan/constants.js.map +1 -1
  73. package/lib/commonjs/components/executiontasks/scan/interfaces.js +4 -8
  74. package/lib/commonjs/components/executiontasks/scan/interfaces.js.map +1 -1
  75. package/lib/commonjs/components/executiontasks/scan/sub_components/CScanner.js +4 -5
  76. package/lib/commonjs/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
  77. package/lib/commonjs/components/executiontasks/scan/sub_components/ERDropDown.js +5 -6
  78. package/lib/commonjs/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
  79. package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js +8 -9
  80. package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
  81. package/lib/commonjs/components/executiontasks/scan/utils.js +2 -2
  82. package/lib/commonjs/components/executiontasks/scan/utils.js.map +1 -1
  83. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js +8 -9
  84. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
  85. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPSchema.js +1 -2
  86. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPSchema.js.map +1 -1
  87. package/lib/commonjs/components/executiontasks/validateOTP/constants.js +6 -12
  88. package/lib/commonjs/components/executiontasks/validateOTP/constants.js.map +1 -1
  89. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js +5 -6
  90. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
  91. package/lib/commonjs/components/executiontasks/validateOTP/utils.js +2 -2
  92. package/lib/commonjs/components/executiontasks/validateOTP/utils.js.map +1 -1
  93. package/lib/commonjs/components/executiontasks/verifyLocation/GeofenceUtils.js +2 -2
  94. package/lib/commonjs/components/executiontasks/verifyLocation/GeofenceUtils.js.map +1 -1
  95. package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocationET.js +3 -4
  96. package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocationET.js.map +1 -1
  97. package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpET.js +3 -4
  98. package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpET.js.map +1 -1
  99. package/lib/commonjs/components/widgets/AlertDisplay.js +14 -9
  100. package/lib/commonjs/components/widgets/AlertDisplay.js.map +1 -1
  101. package/lib/commonjs/components/widgets/CancelOrderDialog.js +5 -6
  102. package/lib/commonjs/components/widgets/CancelOrderDialog.js.map +1 -1
  103. package/lib/commonjs/components/widgets/Card.js +2 -3
  104. package/lib/commonjs/components/widgets/Card.js.map +1 -1
  105. package/lib/commonjs/components/widgets/GoBackModal.js +1 -2
  106. package/lib/commonjs/components/widgets/GoBackModal.js.map +1 -1
  107. package/lib/commonjs/components/widgets/IconButton.js +1 -2
  108. package/lib/commonjs/components/widgets/IconButton.js.map +1 -1
  109. package/lib/commonjs/components/widgets/ModalWidget.js +3 -4
  110. package/lib/commonjs/components/widgets/ModalWidget.js.map +1 -1
  111. package/lib/commonjs/components/widgets/ProgressDialog.js +2 -3
  112. package/lib/commonjs/components/widgets/ProgressDialog.js.map +1 -1
  113. package/lib/commonjs/components/widgets/SearchBar.js +1 -2
  114. package/lib/commonjs/components/widgets/SearchBar.js.map +1 -1
  115. package/lib/commonjs/components/widgets/SnackBarCustom.js +3 -5
  116. package/lib/commonjs/components/widgets/SnackBarCustom.js.map +1 -1
  117. package/lib/commonjs/components/widgets/SplitTextInput.js +3 -4
  118. package/lib/commonjs/components/widgets/SplitTextInput.js.map +1 -1
  119. package/lib/commonjs/components/widgets/TabsComponent.js +3 -4
  120. package/lib/commonjs/components/widgets/TabsComponent.js.map +1 -1
  121. package/lib/commonjs/config/DispatchSDKConfig.js +1 -2
  122. package/lib/commonjs/config/DispatchSDKConfig.js.map +1 -1
  123. package/lib/commonjs/constants/apiConstants.js +2 -4
  124. package/lib/commonjs/constants/apiConstants.js.map +1 -1
  125. package/lib/commonjs/constants/constants.js +11 -22
  126. package/lib/commonjs/constants/constants.js.map +1 -1
  127. package/lib/commonjs/constants/statuscode.js +1 -2
  128. package/lib/commonjs/constants/statuscode.js.map +1 -1
  129. package/lib/commonjs/errors/ErrorCodes.js +7 -14
  130. package/lib/commonjs/errors/ErrorCodes.js.map +1 -1
  131. package/lib/commonjs/events/EventDispatcher.js +5 -3
  132. package/lib/commonjs/events/EventDispatcher.js.map +1 -1
  133. package/lib/commonjs/events/EventListener.js +1 -2
  134. package/lib/commonjs/events/EventListener.js.map +1 -1
  135. package/lib/commonjs/events/constants.js +1 -2
  136. package/lib/commonjs/events/constants.js.map +1 -1
  137. package/lib/commonjs/events/index.js +1 -2
  138. package/lib/commonjs/events/index.js.map +1 -1
  139. package/lib/commonjs/icons/ScanIcon.js +1 -2
  140. package/lib/commonjs/icons/ScanIcon.js.map +1 -1
  141. package/lib/commonjs/icons/circleMark.svg +3 -0
  142. package/lib/commonjs/icons/file.js +1 -2
  143. package/lib/commonjs/icons/file.js.map +1 -1
  144. package/lib/commonjs/index.js +15 -2
  145. package/lib/commonjs/index.js.map +1 -1
  146. package/lib/commonjs/locale/Str.js +21 -0
  147. package/lib/commonjs/locale/Str.js.map +1 -0
  148. package/lib/commonjs/locale/en.json +7 -0
  149. package/lib/commonjs/locale/i18n.js +32 -0
  150. package/lib/commonjs/locale/i18n.js.map +1 -0
  151. package/lib/commonjs/locale/util.js +27 -0
  152. package/lib/commonjs/locale/util.js.map +1 -0
  153. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js +5 -3
  154. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js.map +1 -1
  155. package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js +2 -0
  156. package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
  157. package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js +4 -2
  158. package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
  159. package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js +4 -2
  160. package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
  161. package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js +4 -2
  162. package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
  163. package/lib/commonjs/manager/location/LocationManager.js +7 -4
  164. package/lib/commonjs/manager/location/LocationManager.js.map +1 -1
  165. package/lib/commonjs/manager/sdk/DispatchSDKManager.js +4 -2
  166. package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
  167. package/lib/commonjs/manager/sdk/DispatchSdkCache.js +2 -0
  168. package/lib/commonjs/manager/sdk/DispatchSdkCache.js.map +1 -1
  169. package/lib/commonjs/manager/sdk/callbacksHandler.js +1 -2
  170. package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -1
  171. package/lib/commonjs/manager/syncmanager/AppSyncManager.js +4 -2
  172. package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
  173. package/lib/commonjs/manager/syncmanager/DBConfig.js +15 -26
  174. package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
  175. package/lib/commonjs/manager/syncmanager/NativeSyncManager.js +1 -2
  176. package/lib/commonjs/manager/syncmanager/NativeSyncManager.js.map +1 -1
  177. package/lib/commonjs/manager/syncmanager/constants.js +5 -10
  178. package/lib/commonjs/manager/syncmanager/constants.js.map +1 -1
  179. package/lib/commonjs/manager/syncmanager/database.js +2 -2
  180. package/lib/commonjs/manager/syncmanager/database.js.map +1 -1
  181. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +5 -4
  182. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  183. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +4 -2
  184. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
  185. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +4 -2
  186. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  187. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js +15 -3
  188. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  189. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +4 -2
  190. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  191. package/lib/commonjs/models/DispatchModels.js +1 -2
  192. package/lib/commonjs/models/DispatchModels.js.map +1 -1
  193. package/lib/commonjs/models/execTasks/ETConfig.js +6 -12
  194. package/lib/commonjs/models/execTasks/ETConfig.js.map +1 -1
  195. package/lib/commonjs/models/fcm.js.map +1 -1
  196. package/lib/commonjs/models/sdk.js +1 -2
  197. package/lib/commonjs/models/sdk.js.map +1 -1
  198. package/lib/commonjs/native/signature/SignatureCapture.js +1 -2
  199. package/lib/commonjs/native/signature/SignatureCapture.js.map +1 -1
  200. package/lib/commonjs/network/GraphQLClient.js +48 -4
  201. package/lib/commonjs/network/GraphQLClient.js.map +1 -1
  202. package/lib/commonjs/network/Queries.js +5 -10
  203. package/lib/commonjs/network/Queries.js.map +1 -1
  204. package/lib/commonjs/res/strings.js +1 -2
  205. package/lib/commonjs/res/strings.js.map +1 -1
  206. package/lib/commonjs/resources/Login.js +1 -2
  207. package/lib/commonjs/resources/Login.js.map +1 -1
  208. package/lib/commonjs/resources/network.js +1 -2
  209. package/lib/commonjs/resources/network.js.map +1 -1
  210. package/lib/commonjs/styles/SdkColors.js +2 -4
  211. package/lib/commonjs/styles/SdkColors.js.map +1 -1
  212. package/lib/commonjs/styles/executionTasks/CommonStyles.js +8 -11
  213. package/lib/commonjs/styles/executionTasks/CommonStyles.js.map +1 -1
  214. package/lib/commonjs/ui/screens/CancellationScreen.js +3 -4
  215. package/lib/commonjs/ui/screens/CancellationScreen.js.map +1 -1
  216. package/lib/commonjs/ui/screens/CaptureInputScreen.js +5 -5
  217. package/lib/commonjs/ui/screens/CaptureInputScreen.js.map +1 -1
  218. package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js +3 -4
  219. package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js.map +1 -1
  220. package/lib/commonjs/ui/screens/DeliverScreen.js +36 -10
  221. package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
  222. package/lib/commonjs/ui/screens/DisplayScreen.js +3 -4
  223. package/lib/commonjs/ui/screens/DisplayScreen.js.map +1 -1
  224. package/lib/commonjs/ui/screens/DoodleScreen.js +27 -6
  225. package/lib/commonjs/ui/screens/DoodleScreen.js.map +1 -1
  226. package/lib/commonjs/ui/screens/DropCashScreen.js +29 -10
  227. package/lib/commonjs/ui/screens/DropCashScreen.js.map +1 -1
  228. package/lib/commonjs/ui/screens/FormsScreen.js +25 -5
  229. package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
  230. package/lib/commonjs/ui/screens/GeofenceScreen.js +3 -4
  231. package/lib/commonjs/ui/screens/GeofenceScreen.js.map +1 -1
  232. package/lib/commonjs/ui/screens/HttpRequestScreen.js +1 -2
  233. package/lib/commonjs/ui/screens/HttpRequestScreen.js.map +1 -1
  234. package/lib/commonjs/ui/screens/ImageCaptureScreen.js +27 -9
  235. package/lib/commonjs/ui/screens/ImageCaptureScreen.js.map +1 -1
  236. package/lib/commonjs/ui/screens/PaymentScreen.js +31 -10
  237. package/lib/commonjs/ui/screens/PaymentScreen.js.map +1 -1
  238. package/lib/commonjs/ui/screens/PickupScreen.js +38 -10
  239. package/lib/commonjs/ui/screens/PickupScreen.js.map +1 -1
  240. package/lib/commonjs/ui/screens/ScanScreen.js +3 -4
  241. package/lib/commonjs/ui/screens/ScanScreen.js.map +1 -1
  242. package/lib/commonjs/ui/screens/StartWorkFlowScreen.js +8 -7
  243. package/lib/commonjs/ui/screens/StartWorkFlowScreen.js.map +1 -1
  244. package/lib/commonjs/ui/screens/ValidateOTPScreen.js +3 -4
  245. package/lib/commonjs/ui/screens/ValidateOTPScreen.js.map +1 -1
  246. package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js +4 -4
  247. package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js.map +1 -1
  248. package/lib/commonjs/ui/uiConfig/RouteParams.js +1 -2
  249. package/lib/commonjs/ui/uiConfig/RouteParams.js.map +1 -1
  250. package/lib/commonjs/utils/ApiUtils.js +2 -4
  251. package/lib/commonjs/utils/ApiUtils.js.map +1 -1
  252. package/lib/commonjs/utils/Logger.js +10 -9
  253. package/lib/commonjs/utils/Logger.js.map +1 -1
  254. package/lib/commonjs/utils/NetworkUtil.js +1 -2
  255. package/lib/commonjs/utils/NetworkUtil.js.map +1 -1
  256. package/lib/commonjs/utils/SdkUtils.js +12 -8
  257. package/lib/commonjs/utils/SdkUtils.js.map +1 -1
  258. package/lib/commonjs/utils/SyncManagerUtils.js +2 -2
  259. package/lib/commonjs/utils/SyncManagerUtils.js.map +1 -1
  260. package/lib/commonjs/utils/fcm/FCM.js +3 -4
  261. package/lib/commonjs/utils/fcm/FCM.js.map +1 -1
  262. package/lib/commonjs/utils/fcm/FcmUtils.js +14 -2
  263. package/lib/commonjs/utils/fcm/FcmUtils.js.map +1 -1
  264. package/lib/commonjs/utils/helper.js +46 -4
  265. package/lib/commonjs/utils/helper.js.map +1 -1
  266. package/lib/commonjs/utils/hooks/useModal.js +3 -4
  267. package/lib/commonjs/utils/hooks/useModal.js.map +1 -1
  268. package/lib/commonjs/utils/hooks/useTimer.js +1 -2
  269. package/lib/commonjs/utils/hooks/useTimer.js.map +1 -1
  270. package/lib/commonjs/utils/loginHelper.js +1 -2
  271. package/lib/commonjs/utils/loginHelper.js.map +1 -1
  272. package/lib/commonjs/utils/storage.js +71 -13
  273. package/lib/commonjs/utils/storage.js.map +1 -1
  274. package/lib/module/components/dispatch/DispatchExecNavigator.js.map +1 -1
  275. package/lib/module/components/executiontasks/cancellation/CancelET.js +11 -5
  276. package/lib/module/components/executiontasks/cancellation/CancelET.js.map +1 -1
  277. package/lib/module/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
  278. package/lib/module/components/executiontasks/deliver/SLDeliverET.js +112 -25
  279. package/lib/module/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
  280. package/lib/module/components/executiontasks/display/DisplayModalET.js +5 -5
  281. package/lib/module/components/executiontasks/display/DisplayModalET.js.map +1 -1
  282. package/lib/module/components/executiontasks/doodle/SignatureET.js +111 -45
  283. package/lib/module/components/executiontasks/doodle/SignatureET.js.map +1 -1
  284. package/lib/module/components/executiontasks/doodle/SignatureSchema.js.map +1 -1
  285. package/lib/module/components/executiontasks/dropCash/DropCashSchema.js.map +1 -1
  286. package/lib/module/components/executiontasks/dropCash/SLDropCash.js +5 -5
  287. package/lib/module/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
  288. package/lib/module/components/executiontasks/forms/FormGenerator.js +4 -4
  289. package/lib/module/components/executiontasks/forms/FormGenerator.js.map +1 -1
  290. package/lib/module/components/executiontasks/forms/FormSchema.js.map +1 -1
  291. package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js +1 -1
  292. package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
  293. package/lib/module/components/executiontasks/imageCapture/CaptureSchema.js.map +1 -1
  294. package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js +133 -21
  295. package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
  296. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +226 -130
  297. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  298. package/lib/module/components/executiontasks/imageCapture/camera.svg +3 -0
  299. package/lib/module/components/executiontasks/imageCapture/circle-xmark.svg +5 -0
  300. package/lib/module/components/executiontasks/payments/PaymentStyles.js +6 -6
  301. package/lib/module/components/executiontasks/payments/PaymentStyles.js.map +1 -1
  302. package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js +4 -4
  303. package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
  304. package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentSchema.js.map +1 -1
  305. package/lib/module/components/executiontasks/payments/init/InitPaymentET.js +1 -1
  306. package/lib/module/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
  307. package/lib/module/components/executiontasks/payments/init/InitPaymentSchema.js.map +1 -1
  308. package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentET.js +1 -1
  309. package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
  310. package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentSchema.js.map +1 -1
  311. package/lib/module/components/executiontasks/pickup/PickpSchema.js.map +1 -1
  312. package/lib/module/components/executiontasks/pickup/SLPickupET.js +89 -16
  313. package/lib/module/components/executiontasks/pickup/SLPickupET.js.map +1 -1
  314. package/lib/module/components/executiontasks/scan/ScanET.js +12 -12
  315. package/lib/module/components/executiontasks/scan/ScanET.js.map +1 -1
  316. package/lib/module/components/executiontasks/scan/sub_components/CScanner.js +2 -2
  317. package/lib/module/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
  318. package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js +3 -3
  319. package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
  320. package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js +6 -6
  321. package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
  322. package/lib/module/components/executiontasks/scan/utils.js.map +1 -1
  323. package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js +6 -6
  324. package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
  325. package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js +3 -3
  326. package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
  327. package/lib/module/components/widgets/AlertDisplay.js +12 -7
  328. package/lib/module/components/widgets/AlertDisplay.js.map +1 -1
  329. package/lib/module/components/widgets/CancelOrderDialog.js +3 -3
  330. package/lib/module/components/widgets/CancelOrderDialog.js.map +1 -1
  331. package/lib/module/components/widgets/Card.js +1 -1
  332. package/lib/module/components/widgets/Card.js.map +1 -1
  333. package/lib/module/components/widgets/ModalWidget.js +3 -3
  334. package/lib/module/components/widgets/ModalWidget.js.map +1 -1
  335. package/lib/module/components/widgets/ProgressDialog.js +2 -2
  336. package/lib/module/components/widgets/ProgressDialog.js.map +1 -1
  337. package/lib/module/components/widgets/SnackBarCustom.js +2 -2
  338. package/lib/module/components/widgets/SnackBarCustom.js.map +1 -1
  339. package/lib/module/constants/constants.js +1 -1
  340. package/lib/module/constants/constants.js.map +1 -1
  341. package/lib/module/events/EventDispatcher.js +5 -2
  342. package/lib/module/events/EventDispatcher.js.map +1 -1
  343. package/lib/module/icons/circleMark.svg +3 -0
  344. package/lib/module/index.js +4 -2
  345. package/lib/module/index.js.map +1 -1
  346. package/lib/module/locale/Str.js +15 -0
  347. package/lib/module/locale/Str.js.map +1 -0
  348. package/lib/module/locale/en.json +7 -0
  349. package/lib/module/locale/i18n.js +25 -0
  350. package/lib/module/locale/i18n.js.map +1 -0
  351. package/lib/module/locale/util.js +18 -0
  352. package/lib/module/locale/util.js.map +1 -0
  353. package/lib/module/manager/dispatch/DispatchStateContainer.js +3 -1
  354. package/lib/module/manager/dispatch/DispatchStateContainer.js.map +1 -1
  355. package/lib/module/manager/dispatchCodes/EventCodeContainer.js +2 -0
  356. package/lib/module/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
  357. package/lib/module/manager/dispatchCodes/EventCodeRepo.js +2 -0
  358. package/lib/module/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
  359. package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js +2 -0
  360. package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
  361. package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js +2 -0
  362. package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
  363. package/lib/module/manager/location/LocationManager.js +2 -0
  364. package/lib/module/manager/location/LocationManager.js.map +1 -1
  365. package/lib/module/manager/sdk/DispatchSDKManager.js +2 -0
  366. package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
  367. package/lib/module/manager/sdk/DispatchSdkCache.js +2 -0
  368. package/lib/module/manager/sdk/DispatchSdkCache.js.map +1 -1
  369. package/lib/module/manager/syncmanager/AppSyncManager.js +2 -0
  370. package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
  371. package/lib/module/manager/syncmanager/DBConfig.js +1 -0
  372. package/lib/module/manager/syncmanager/DBConfig.js.map +1 -1
  373. package/lib/module/manager/syncmanager/document/DocumentManager.js +2 -0
  374. package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
  375. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +2 -0
  376. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  377. package/lib/module/manager/syncmanager/events/ETEventsManager.js +13 -1
  378. package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  379. package/lib/module/manager/syncmanager/events/EventsSyncManager.js +2 -0
  380. package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  381. package/lib/module/models/fcm.js.map +1 -1
  382. package/lib/module/network/GraphQLClient.js +48 -3
  383. package/lib/module/network/GraphQLClient.js.map +1 -1
  384. package/lib/module/styles/executionTasks/CommonStyles.js +2 -1
  385. package/lib/module/styles/executionTasks/CommonStyles.js.map +1 -1
  386. package/lib/module/ui/screens/CaptureInputScreen.js +2 -1
  387. package/lib/module/ui/screens/CaptureInputScreen.js.map +1 -1
  388. package/lib/module/ui/screens/DeliverScreen.js +33 -6
  389. package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
  390. package/lib/module/ui/screens/DoodleScreen.js +24 -2
  391. package/lib/module/ui/screens/DoodleScreen.js.map +1 -1
  392. package/lib/module/ui/screens/DropCashScreen.js +26 -6
  393. package/lib/module/ui/screens/DropCashScreen.js.map +1 -1
  394. package/lib/module/ui/screens/FormsScreen.js +22 -1
  395. package/lib/module/ui/screens/FormsScreen.js.map +1 -1
  396. package/lib/module/ui/screens/ImageCaptureScreen.js +24 -5
  397. package/lib/module/ui/screens/ImageCaptureScreen.js.map +1 -1
  398. package/lib/module/ui/screens/PaymentScreen.js +28 -6
  399. package/lib/module/ui/screens/PaymentScreen.js.map +1 -1
  400. package/lib/module/ui/screens/PickupScreen.js +35 -6
  401. package/lib/module/ui/screens/PickupScreen.js.map +1 -1
  402. package/lib/module/ui/screens/StartWorkFlowScreen.js +6 -4
  403. package/lib/module/ui/screens/StartWorkFlowScreen.js.map +1 -1
  404. package/lib/module/ui/screens/WithBaseDispatchScreen.js +1 -0
  405. package/lib/module/ui/screens/WithBaseDispatchScreen.js.map +1 -1
  406. package/lib/module/utils/Logger.js +2 -0
  407. package/lib/module/utils/Logger.js.map +1 -1
  408. package/lib/module/utils/SdkUtils.js +11 -7
  409. package/lib/module/utils/SdkUtils.js.map +1 -1
  410. package/lib/module/utils/fcm/FcmUtils.js +11 -0
  411. package/lib/module/utils/fcm/FcmUtils.js.map +1 -1
  412. package/lib/module/utils/helper.js +46 -4
  413. package/lib/module/utils/helper.js.map +1 -1
  414. package/lib/module/utils/storage.js +69 -10
  415. package/lib/module/utils/storage.js.map +1 -1
  416. package/lib/typescript/components/executiontasks/deliver/DeliverETInput.d.ts +5 -0
  417. package/lib/typescript/components/executiontasks/doodle/SignatureSchema.d.ts +1 -0
  418. package/lib/typescript/components/executiontasks/dropCash/DropCashSchema.d.ts +1 -0
  419. package/lib/typescript/components/executiontasks/forms/FormSchema.d.ts +1 -0
  420. package/lib/typescript/components/executiontasks/imageCapture/CaptureSchema.d.ts +1 -0
  421. package/lib/typescript/components/executiontasks/imageCapture/CaptureUtils.d.ts +6 -1
  422. package/lib/typescript/components/executiontasks/imageCapture/ImageCapture.d.ts +1 -2
  423. package/lib/typescript/components/executiontasks/payments/PaymentStyles.d.ts +4 -5
  424. package/lib/typescript/components/executiontasks/payments/completePayment/CompletePaymentSchema.d.ts +1 -0
  425. package/lib/typescript/components/executiontasks/payments/init/InitPaymentSchema.d.ts +1 -0
  426. package/lib/typescript/components/executiontasks/payments/processPayment/ProcessPaymentSchema.d.ts +1 -0
  427. package/lib/typescript/components/executiontasks/pickup/PickpSchema.d.ts +2 -0
  428. package/lib/typescript/components/widgets/SnackBarCustom.d.ts +1 -1
  429. package/lib/typescript/constants/constants.d.ts +1 -1
  430. package/lib/typescript/index.d.ts +4 -2
  431. package/lib/typescript/locale/Str.d.ts +13 -0
  432. package/lib/typescript/locale/i18n.d.ts +3 -0
  433. package/lib/typescript/locale/util.d.ts +2 -0
  434. package/lib/typescript/manager/syncmanager/DBConfig.d.ts +2 -1
  435. package/lib/typescript/models/fcm.d.ts +3 -0
  436. package/lib/typescript/styles/executionTasks/CommonStyles.d.ts +1 -0
  437. package/lib/typescript/utils/fcm/FcmUtils.d.ts +2 -1
  438. package/lib/typescript/utils/helper.d.ts +4 -3
  439. package/lib/typescript/utils/storage.d.ts +3 -2
  440. package/package.json +22 -7
  441. package/src/@types/assets/index.d.ts +6 -0
  442. package/src/components/dispatch/DispatchExecNavigator.tsx +273 -0
  443. package/src/components/executiontasks/CompletedWFSchema.ts +24 -0
  444. package/src/components/executiontasks/ExecutionTasksIndex.ts +137 -0
  445. package/src/components/executiontasks/cancellation/CancelET.tsx +281 -0
  446. package/src/components/executiontasks/cancellation/CancellationSchema.ts +30 -0
  447. package/src/components/executiontasks/captureInput/CaptureInputSchema.ts +52 -0
  448. package/src/components/executiontasks/captureInput/CaptureText.tsx +172 -0
  449. package/src/components/executiontasks/captureInput/utils.ts +9 -0
  450. package/src/components/executiontasks/deliver/DeliverET.tsx +124 -0
  451. package/src/components/executiontasks/deliver/DeliverETInput.ts +52 -0
  452. package/src/components/executiontasks/deliver/SLDeliverET.tsx +522 -0
  453. package/src/components/executiontasks/display/DisplayModalET.tsx +174 -0
  454. package/src/components/executiontasks/display/DisplaySchema.ts +29 -0
  455. package/src/components/executiontasks/doodle/SignatureET.tsx +325 -0
  456. package/src/components/executiontasks/doodle/SignatureSchema.ts +52 -0
  457. package/src/components/executiontasks/dropCash/DropCashET.tsx +145 -0
  458. package/src/components/executiontasks/dropCash/DropCashSchema.ts +23 -0
  459. package/src/components/executiontasks/dropCash/SLDropCash.tsx +286 -0
  460. package/src/components/executiontasks/forms/FormGenerator.tsx +283 -0
  461. package/src/components/executiontasks/forms/FormSchema.ts +30 -0
  462. package/src/components/executiontasks/forms/widgets/DateTimeWidget.tsx +144 -0
  463. package/src/components/executiontasks/forms/widgets/DropdownWidget.tsx +52 -0
  464. package/src/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.tsx +158 -0
  465. package/src/components/executiontasks/forms/widgets/TimeRangeSelector.tsx +38 -0
  466. package/src/components/executiontasks/httpRequest/HttpEtUtils.ts +49 -0
  467. package/src/components/executiontasks/httpRequest/HttpRequestET.tsx +59 -0
  468. package/src/components/executiontasks/httpRequest/HttpRequestETSchema.ts +42 -0
  469. package/src/components/executiontasks/imageCapture/CaptureSchema.ts +94 -0
  470. package/src/components/executiontasks/imageCapture/CaptureUtils.ts +321 -0
  471. package/src/components/executiontasks/imageCapture/ImageCapture.tsx +457 -0
  472. package/src/components/executiontasks/imageCapture/camera.svg +3 -0
  473. package/src/components/executiontasks/imageCapture/circle-xmark.svg +5 -0
  474. package/src/components/executiontasks/payments/PaymentStyles.ts +93 -0
  475. package/src/components/executiontasks/payments/PaymentUtils.ts +7 -0
  476. package/src/components/executiontasks/payments/completePayment/CompletePaymentET.tsx +238 -0
  477. package/src/components/executiontasks/payments/completePayment/CompletePaymentSchema.ts +24 -0
  478. package/src/components/executiontasks/payments/init/InitPaymentET.tsx +246 -0
  479. package/src/components/executiontasks/payments/init/InitPaymentSchema.ts +38 -0
  480. package/src/components/executiontasks/payments/processPayment/ProcessPaymentET.tsx +273 -0
  481. package/src/components/executiontasks/payments/processPayment/ProcessPaymentSchema.ts +39 -0
  482. package/src/components/executiontasks/pickup/PickpSchema.ts +30 -0
  483. package/src/components/executiontasks/pickup/PickupET.tsx +126 -0
  484. package/src/components/executiontasks/pickup/SLPickupET.tsx +372 -0
  485. package/src/components/executiontasks/scan/ScanET.tsx +1059 -0
  486. package/src/components/executiontasks/scan/ScanSchema.ts +121 -0
  487. package/src/components/executiontasks/scan/constants.ts +6 -0
  488. package/src/components/executiontasks/scan/interfaces.ts +109 -0
  489. package/src/components/executiontasks/scan/modalConstant.ts +120 -0
  490. package/src/components/executiontasks/scan/sub_components/CScanner.tsx +107 -0
  491. package/src/components/executiontasks/scan/sub_components/DropDownUtils.ts +119 -0
  492. package/src/components/executiontasks/scan/sub_components/ERDropDown.tsx +134 -0
  493. package/src/components/executiontasks/scan/sub_components/SummaryPage.tsx +1296 -0
  494. package/src/components/executiontasks/scan/utils.ts +1108 -0
  495. package/src/components/executiontasks/validateOTP/ValidateOTPET.tsx +436 -0
  496. package/src/components/executiontasks/validateOTP/ValidateOTPSchema.ts +68 -0
  497. package/src/components/executiontasks/validateOTP/constants.ts +24 -0
  498. package/src/components/executiontasks/validateOTP/sub-components/OTPInput.tsx +83 -0
  499. package/src/components/executiontasks/validateOTP/utils.ts +180 -0
  500. package/src/components/executiontasks/verifyInput/VerifyInputSchema.ts +49 -0
  501. package/src/components/executiontasks/verifyLocation/GeofenceUtils.ts +55 -0
  502. package/src/components/executiontasks/verifyLocation/VerifyLocSchema.ts +56 -0
  503. package/src/components/executiontasks/verifyLocation/VerifyLocationET.tsx +69 -0
  504. package/src/components/executiontasks/verifyOtp/VerifyOtpET.tsx +96 -0
  505. package/src/components/executiontasks/verifyOtp/VerifyOtpSchema.ts +27 -0
  506. package/src/components/utils/index.ts +18 -0
  507. package/src/components/widgets/AlertDisplay.tsx +38 -0
  508. package/src/components/widgets/CancelOrderDialog.tsx +112 -0
  509. package/src/components/widgets/Card.tsx +99 -0
  510. package/src/components/widgets/GoBackModal.tsx +49 -0
  511. package/src/components/widgets/IconButton.tsx +32 -0
  512. package/src/components/widgets/ModalWidget.tsx +157 -0
  513. package/src/components/widgets/ProgressDialog.tsx +54 -0
  514. package/src/components/widgets/SearchBar.tsx +71 -0
  515. package/src/components/widgets/SnackBarCustom.tsx +212 -0
  516. package/src/components/widgets/SplitTextInput.tsx +116 -0
  517. package/src/components/widgets/TabsComponent.tsx +84 -0
  518. package/src/components/widgets/Toaster.ts +8 -0
  519. package/src/config/DispatchSDKConfig.ts +4 -0
  520. package/src/constants/apiConstants.ts +11 -0
  521. package/src/constants/constants.ts +12 -0
  522. package/src/constants/statuscode.ts +8 -0
  523. package/src/errors/BaseError.ts +16 -0
  524. package/src/errors/ErrorCodes.ts +38 -0
  525. package/src/events/EventDispatcher.ts +22 -0
  526. package/src/events/EventListener.ts +14 -0
  527. package/src/events/constants.ts +7 -0
  528. package/src/events/index.ts +3 -0
  529. package/src/events/interface.ts +1 -0
  530. package/src/icons/ScanIcon.tsx +24 -0
  531. package/src/icons/circleMark.svg +3 -0
  532. package/src/icons/file.tsx +24 -0
  533. package/src/icons/interface.ts +5 -0
  534. package/src/index.tsx +82 -0
  535. package/src/locale/Str.ts +15 -0
  536. package/src/locale/en.json +7 -0
  537. package/src/locale/i18n.ts +26 -0
  538. package/src/locale/util.ts +20 -0
  539. package/src/manager/dispatch/DispatchStateContainer.tsx +842 -0
  540. package/src/manager/dispatchCodes/EventCodeContainer.ts +75 -0
  541. package/src/manager/dispatchCodes/EventCodeRepo.ts +82 -0
  542. package/src/manager/dispatchCodes/ReasonCodeContainer.ts +121 -0
  543. package/src/manager/dispatchCodes/ReasonCodeRepo.ts +90 -0
  544. package/src/manager/dispatchCodes/reasonCodes.json +137 -0
  545. package/src/manager/jobRemoval/JobRemovalManager.ts +21 -0
  546. package/src/manager/location/LocationManager.ts +77 -0
  547. package/src/manager/sdk/DispatchSDKManager.ts +99 -0
  548. package/src/manager/sdk/DispatchSdkCache.ts +47 -0
  549. package/src/manager/sdk/callbacksHandler.ts +25 -0
  550. package/src/manager/syncmanager/AppSyncManager.ts +187 -0
  551. package/src/manager/syncmanager/DBConfig.ts +181 -0
  552. package/src/manager/syncmanager/NativeSyncManager.ts +14 -0
  553. package/src/manager/syncmanager/constants.ts +5 -0
  554. package/src/manager/syncmanager/database.ts +93 -0
  555. package/src/manager/syncmanager/document/DocumentHttpClient.ts +111 -0
  556. package/src/manager/syncmanager/document/DocumentManager.ts +143 -0
  557. package/src/manager/syncmanager/document/DocumentSyncManager.ts +233 -0
  558. package/src/manager/syncmanager/document/models.ts +4 -0
  559. package/src/manager/syncmanager/events/ETEventsManager.ts +647 -0
  560. package/src/manager/syncmanager/events/EventsGraphQLClient.ts +0 -0
  561. package/src/manager/syncmanager/events/EventsSyncManager.ts +490 -0
  562. package/src/manager/syncmanager/events/SyncHttpClient.ts +202 -0
  563. package/src/models/DispatchModels.ts +97 -0
  564. package/src/models/ReasonCodes.ts +12 -0
  565. package/src/models/auth.ts +43 -0
  566. package/src/models/execTasks/ETBaseModels.ts +113 -0
  567. package/src/models/execTasks/ETConfig.ts +94 -0
  568. package/src/models/execution.ts +9 -0
  569. package/src/models/fcm.ts +6 -0
  570. package/src/models/sdk.ts +35 -0
  571. package/src/native/signature/SignatureCapture.tsx +110 -0
  572. package/src/network/GraphQLClient.ts +147 -0
  573. package/src/network/NetworkClient.ts +58 -0
  574. package/src/network/NetworkUtils.ts +41 -0
  575. package/src/network/Queries.ts +46 -0
  576. package/src/network/client.ts +61 -0
  577. package/src/res/strings.ts +1 -0
  578. package/src/resources/Login.ts +36 -0
  579. package/src/resources/network.ts +13 -0
  580. package/src/styles/SdkColors.ts +24 -0
  581. package/src/styles/executionTasks/CommonStyles.ts +189 -0
  582. package/src/ui/screens/CancellationScreen.tsx +144 -0
  583. package/src/ui/screens/CaptureInputScreen.tsx +79 -0
  584. package/src/ui/screens/CompleteObjectiveScreen.tsx +72 -0
  585. package/src/ui/screens/DeliverScreen.tsx +136 -0
  586. package/src/ui/screens/DisplayScreen.tsx +52 -0
  587. package/src/ui/screens/DoodleScreen.tsx +107 -0
  588. package/src/ui/screens/DropCashScreen.tsx +132 -0
  589. package/src/ui/screens/ETScreensIndex.ts +35 -0
  590. package/src/ui/screens/FormsScreen.tsx +186 -0
  591. package/src/ui/screens/GeofenceScreen.tsx +54 -0
  592. package/src/ui/screens/HttpRequestScreen.tsx +47 -0
  593. package/src/ui/screens/ImageCaptureScreen.tsx +95 -0
  594. package/src/ui/screens/PaymentScreen.tsx +213 -0
  595. package/src/ui/screens/PickupScreen.tsx +112 -0
  596. package/src/ui/screens/ScanScreen.tsx +159 -0
  597. package/src/ui/screens/StartWorkFlowScreen.tsx +233 -0
  598. package/src/ui/screens/ValidateOTPScreen.tsx +62 -0
  599. package/src/ui/screens/WithBaseDispatchScreen.tsx +33 -0
  600. package/src/ui/uiConfig/RouteParams.ts +28 -0
  601. package/src/utils/ApiUtils.ts +157 -0
  602. package/src/utils/ExecTaskUtils.ts +214 -0
  603. package/src/utils/Logger.ts +110 -0
  604. package/src/utils/NetworkUtil.ts +50 -0
  605. package/src/utils/SdkUtils.ts +155 -0
  606. package/src/utils/SyncManagerUtils.ts +223 -0
  607. package/src/utils/fcm/FCM.ts +118 -0
  608. package/src/utils/fcm/FcmUtils.ts +130 -0
  609. package/src/utils/helper.ts +67 -0
  610. package/src/utils/hooks/useModal.tsx +67 -0
  611. package/src/utils/hooks/useTimer.ts +44 -0
  612. package/src/utils/loginHelper.ts +51 -0
  613. package/src/utils/storage.ts +292 -0
  614. package/src/utils/test.json +17 -0
  615. package/src/utils/utils.ts +30 -0
  616. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  617. package/android/gradle/wrapper/gradle-wrapper.properties +0 -5
  618. package/android/gradlew +0 -185
  619. package/android/gradlew.bat +0 -89
@@ -0,0 +1,436 @@
1
+ import { View, Text, StyleSheet, BackHandler, Platform } from 'react-native';
2
+ import React, { useState, useLayoutEffect } from 'react';
3
+ import { Button, Modal, Portal, Provider } from 'react-native-paper';
4
+ import { SvgXml } from 'react-native-svg';
5
+ import OTPInput from './sub-components/OTPInput';
6
+ import type { ValidateOTPInput } from './ValidateOTPSchema';
7
+ import useTimer from '../../../utils/hooks/useTimer';
8
+ import {
9
+ CommonStyles,
10
+ Fonts,
11
+ } from '../../../styles/executionTasks/CommonStyles';
12
+ import { generateOTP, parseRetryConfig } from './utils';
13
+ import { checkForValidation } from './utils';
14
+ import {
15
+ ERROR_GENERATING_OTP,
16
+ INVALID_OTP,
17
+ INVALID_OTP_LENGTH,
18
+ mobileSVG,
19
+ } from './constants';
20
+ import {
21
+ EntityCode,
22
+ ExecutionTaskID,
23
+ } from '../../../models/execTasks/ETConfig';
24
+ import { getBaseETResponse } from '../../../utils/ExecTaskUtils';
25
+ import { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';
26
+ import SnackBarCustom, {
27
+ SnackBarType,
28
+ } from '../../../components/widgets/SnackBarCustom';
29
+ import Icon from 'react-native-vector-icons/MaterialIcons';
30
+ import { GO_BACK_EVENT_CODE } from '../../../constants/constants';
31
+ import { hasGoBackConnector } from '../../../components/utils';
32
+ import GoBackModal from '../../../components/widgets/GoBackModal';
33
+ import { useFocusEffect } from '@react-navigation/native';
34
+
35
+ const ValidateOTPET = (props: ValidateOTPInput) => {
36
+ const [showBackModal, setShowBackModal] = useState(false);
37
+
38
+ // Handle back-button click
39
+ useFocusEffect(
40
+ React.useCallback(() => {
41
+ const onBackPress = () => {
42
+ if (
43
+ props.taskMeta?.enableGoBack &&
44
+ hasGoBackConnector(props.applicableReasons)
45
+ ) {
46
+ setShowBackModal(true);
47
+ return true;
48
+ } else {
49
+ props.navigation.goBack();
50
+ return true;
51
+ }
52
+ };
53
+ BackHandler.addEventListener('hardwareBackPress', onBackPress);
54
+ return () =>
55
+ BackHandler.removeEventListener('hardwareBackPress', onBackPress);
56
+ }, [])
57
+ );
58
+
59
+ useLayoutEffect(() => {
60
+ props.navigation.setOptions({
61
+ title: props.title,
62
+ headerLeft: () => {
63
+ return (
64
+ <Icon
65
+ onPress={() => {
66
+ if (
67
+ props.taskMeta?.enableGoBack &&
68
+ hasGoBackConnector(props.applicableReasons)
69
+ )
70
+ setShowBackModal(true);
71
+ else props.navigation.goBack();
72
+ }}
73
+ name="arrow-back"
74
+ color={'black'}
75
+ size={25}
76
+ style={{
77
+ paddingRight: 15,
78
+ paddingTop: 5,
79
+ }}
80
+ />
81
+ );
82
+ },
83
+ });
84
+ }, [props.navigation, props.title]);
85
+
86
+ const retryConfig = parseRetryConfig(props.generationLogic?.retryConfig);
87
+
88
+ const initialMinute = Math.floor(retryConfig.delay / 60);
89
+ const initialSeconds = parseInt((retryConfig.delay % 60).toFixed(0));
90
+ const [timer, resetTimer] = useTimer({
91
+ initialMinute,
92
+ initialSeconds,
93
+ });
94
+
95
+ const [sendOTP, setSendOTP] = useState(
96
+ Boolean(props.generationLogic?.generateOnLoad)
97
+ );
98
+ const [retryCount, setRetryCount] = useState(0);
99
+
100
+ const [userInput, setUserInput] = useState({
101
+ captureInput: '',
102
+ });
103
+ const { captureInput: otpCode } = userInput;
104
+
105
+ const setOTPCode = (otpCode: string) => {
106
+ setUserInput({ ...userInput, captureInput: otpCode });
107
+ };
108
+
109
+ const [hasError, setHasError] = useState(false);
110
+ const [errorMessage, setErrorMessage] = useState('');
111
+
112
+ const [snackBar, setSnackBar] = useState({
113
+ show: false,
114
+ type: SnackBarType.SUCCESS,
115
+ message: '',
116
+ });
117
+
118
+ const renderButtons = () => {
119
+ return (
120
+ <View style={styles.bottomView}>
121
+ <View>
122
+ <Button
123
+ style={[CommonStyles.nextButton, { width: 165, marginStart: 10 }]}
124
+ labelStyle={CommonStyles.nextButtonLabel}
125
+ mode={'contained'}
126
+ uppercase={false}
127
+ onPress={async () => {
128
+ // send OTP Generation using props
129
+ if (
130
+ sendOTP &&
131
+ props.generationLogic &&
132
+ props.generationLogic?.generateOnLoad
133
+ ) {
134
+ const response = await generateOTP(props.generationLogic.api);
135
+ resetTimer();
136
+ if (response) setSendOTP(false);
137
+ else
138
+ setSnackBar({
139
+ show: true,
140
+ message: ERROR_GENERATING_OTP,
141
+ type: SnackBarType.FAILURE,
142
+ });
143
+ }
144
+ // check for Validation
145
+ else if (!sendOTP) {
146
+ if (otpCode.length < props.captureInput.length) {
147
+ setSnackBar({
148
+ show: true,
149
+ message: INVALID_OTP_LENGTH.replace(
150
+ '<length>',
151
+ `${props.captureInput.length}`
152
+ ),
153
+ type: SnackBarType.FAILURE,
154
+ });
155
+ } else {
156
+ const isValid = await checkForValidation(
157
+ otpCode,
158
+ props.validation,
159
+ { userInput }
160
+ );
161
+
162
+ if (!isValid) {
163
+ setErrorMessage(INVALID_OTP);
164
+ setHasError(true);
165
+ } else {
166
+ props.onSubmitET({
167
+ ...(await getBaseETResponse(
168
+ EntityCode.VALIDATE_OTP_ET,
169
+ true,
170
+ getEventCodeByET(
171
+ ExecutionTaskID.VALIDATE_OTP_ET,
172
+ true,
173
+ props.applicableReasons?.success
174
+ ),
175
+ '',
176
+ props.mergedObjectiveId,
177
+ ExecutionTaskID.VALIDATE_OTP_ET
178
+ )),
179
+ });
180
+ }
181
+ }
182
+ }
183
+ }}
184
+ >
185
+ Proceed
186
+ </Button>
187
+ </View>
188
+ <View>
189
+ <Button
190
+ style={[CommonStyles.cancelButton, { width: 165, marginEnd: 10 }]}
191
+ labelStyle={CommonStyles.cancelButtonLabel}
192
+ mode={'outlined'}
193
+ uppercase={false}
194
+ onPress={async () => {
195
+ // Cancel the ET
196
+ props.onSubmitET({
197
+ ...(await getBaseETResponse(
198
+ EntityCode.VALIDATE_OTP_ET,
199
+ false,
200
+ getEventCodeByET(
201
+ ExecutionTaskID.VALIDATE_OTP_ET,
202
+ false,
203
+ props.applicableReasons?.failure
204
+ ),
205
+ '',
206
+ props.mergedObjectiveId,
207
+ ExecutionTaskID.VALIDATE_OTP_ET
208
+ )),
209
+ });
210
+ }}
211
+ >
212
+ Skip
213
+ </Button>
214
+ </View>
215
+ </View>
216
+ );
217
+ };
218
+
219
+ const renderRetryButton = () => {
220
+ const generationLogic = props.generationLogic;
221
+ const enableRetry = props.generationLogic?.enableRetry;
222
+
223
+ if (generationLogic && enableRetry) {
224
+ return (
225
+ <View style={styles.retryButton}>
226
+ <Button
227
+ disabled={Boolean(timer) || retryCount === retryConfig.maxAttempt}
228
+ uppercase={false}
229
+ onPress={async () => {
230
+ setOTPCode('');
231
+ setRetryCount((retryCount) => retryCount + 1);
232
+ await generateOTP(generationLogic.api);
233
+ resetTimer();
234
+ }}
235
+ >{`${retryConfig.buttonTitle} ${timer ? `in ${timer}` : ''}`}</Button>
236
+ </View>
237
+ );
238
+ } else return null;
239
+ };
240
+
241
+ const renderErrorMessage = () => {
242
+ return errorMessage ? (
243
+ <Text style={styles.errorMessage}>{errorMessage}</Text>
244
+ ) : null;
245
+ };
246
+
247
+ const renderModal = () => {
248
+ return (
249
+ <GoBackModal
250
+ showModal={showBackModal}
251
+ setShowModal={setShowBackModal}
252
+ onSuccess={async () => {
253
+ props.onSubmitET({
254
+ ...(await getBaseETResponse(
255
+ EntityCode.VALIDATE_OTP_ET,
256
+ false,
257
+ GO_BACK_EVENT_CODE,
258
+ '',
259
+ props.mergedObjectiveId,
260
+ ExecutionTaskID.VALIDATE_OTP_ET
261
+ )),
262
+ });
263
+ setShowBackModal(false);
264
+ }}
265
+ onFailure={() => setShowBackModal(false)}
266
+ />
267
+ );
268
+ };
269
+
270
+ if (sendOTP) {
271
+ return (
272
+ <Provider>
273
+ <View style={CommonStyles.mainContainer}>
274
+ {renderModal()}
275
+ <View
276
+ style={{
277
+ flex: 1,
278
+ justifyContent: 'center',
279
+ alignItems: 'center',
280
+ marginHorizontal: 18,
281
+ }}
282
+ >
283
+ <View style={{ marginBottom: 16 }}>
284
+ {Platform.OS === 'android' && <SvgXml xml={mobileSVG} /> }
285
+ </View>
286
+ <View style={{ marginTop: 16 }}>
287
+ <Text style={styles.titleText}>
288
+ Do you want to proceed to OTP verification? This will send a
289
+ verification code to your consignee.
290
+ </Text>
291
+ </View>
292
+ </View>
293
+ {renderButtons()}
294
+ <SnackBarCustom
295
+ type={snackBar.type}
296
+ message={`${snackBar.message}`}
297
+ visible={snackBar.show}
298
+ onDismiss={() => {
299
+ setSnackBar({
300
+ show: false,
301
+ message: '',
302
+ type: SnackBarType.SUCCESS,
303
+ });
304
+ }}
305
+ />
306
+ </View>
307
+ </Provider>
308
+ );
309
+ }
310
+ if (!sendOTP) {
311
+ return (
312
+ <Provider>
313
+ <View style={CommonStyles.mainContainer}>
314
+ {renderModal()}
315
+ <View style={styles.otpContainer}>
316
+ <View style={styles.otpTitle}>
317
+ <Text>
318
+ Enter the {props.captureInput?.length} digit OTP sent to the
319
+ consignee to confirm order completion
320
+ </Text>
321
+ </View>
322
+ <OTPInput
323
+ input={props.captureInput}
324
+ otpCode={otpCode}
325
+ setOTPCode={setOTPCode}
326
+ hasError={hasError}
327
+ setHasError={setHasError}
328
+ setErrorMessage={setErrorMessage}
329
+ />
330
+ {renderErrorMessage()}
331
+ {renderRetryButton()}
332
+ </View>
333
+ {renderButtons()}
334
+ <SnackBarCustom
335
+ type={snackBar.type}
336
+ message={`${snackBar.message}`}
337
+ visible={snackBar.show}
338
+ onDismiss={() => {
339
+ setSnackBar({
340
+ show: false,
341
+ message: '',
342
+ type: SnackBarType.SUCCESS,
343
+ });
344
+ }}
345
+ />
346
+ </View>
347
+ </Provider>
348
+ );
349
+ }
350
+ return null;
351
+ };
352
+
353
+ export default ValidateOTPET;
354
+
355
+ const styles = StyleSheet.create({
356
+ bottomView: {
357
+ flexDirection: 'row-reverse',
358
+ justifyContent: 'space-evenly',
359
+ padding: 16,
360
+ backgroundColor: 'white',
361
+ },
362
+ titleText: {
363
+ justifyContent: 'center',
364
+ fontFamily:
365
+ Platform.OS === 'android'
366
+ ? Fonts.IBMPlexSans_400Regular
367
+ : 'IBMPlexSans-Regular',
368
+ fontStyle: 'normal',
369
+ fontSize: 16,
370
+ lineHeight: 20,
371
+ letterSpacing: 0.25,
372
+ textAlign: 'center',
373
+ color: '#3D445C',
374
+ marginBottom: 10,
375
+ },
376
+ otpTitle: {
377
+ marginTop: 10,
378
+ marginBottom: 20,
379
+ fontFamily:
380
+ Platform.OS === 'android'
381
+ ? Fonts.IBMPlexSans_400Regular
382
+ : 'IBMPlexSans-Regular',
383
+ fontStyle: 'normal',
384
+ fontSize: 16,
385
+ lineHeight: 20,
386
+ letterSpacing: 0.25,
387
+ color: '#3D445C',
388
+ alignItems: 'center',
389
+ },
390
+ otpContainer: {
391
+ marginTop: 20,
392
+ marginBottom: 40,
393
+ marginHorizontal: 10,
394
+ flex: 1,
395
+ },
396
+ retryButton: {
397
+ alignItems: 'flex-start',
398
+ marginVertical: 10,
399
+ },
400
+ errorMessage: {
401
+ marginTop: 16,
402
+ marginHorizontal: 10,
403
+ color: '#DC2626',
404
+ fontFamily:
405
+ Platform.OS === 'android'
406
+ ? Fonts.IBMPlexSans_400Regular
407
+ : 'IBMPlexSans-Regular',
408
+ fontSize: 12,
409
+ lineHeight: 16,
410
+ },
411
+ subText: {
412
+ justifyContent: 'center',
413
+ fontFamily:
414
+ Platform.OS === 'android'
415
+ ? Fonts.IBMPlexSans_400Regular
416
+ : 'IBMPlexSans-Regular',
417
+ fontStyle: 'normal',
418
+ fontSize: 14,
419
+ letterSpacing: 0.25,
420
+ lineHeight: 20,
421
+ textAlign: 'center',
422
+ color: '#000000',
423
+ marginBottom: 10,
424
+ },
425
+ modalContent: {
426
+ marginStart: 60,
427
+ marginEnd: 60,
428
+ flex: 1,
429
+ marginBottom: 60,
430
+ },
431
+ modalView: {
432
+ backgroundColor: 'white',
433
+ padding: 15,
434
+ borderRadius: 9,
435
+ },
436
+ });
@@ -0,0 +1,68 @@
1
+ import type {
2
+ HTTPRequestBody,
3
+ PathParams,
4
+ QueryParams,
5
+ } from '../../../utils/ApiUtils';
6
+ import type {
7
+ BaseETRequest,
8
+ BaseETResponse,
9
+ } from '../../../models/execTasks/ETBaseModels';
10
+ import type { Headers, HTTPMethod } from '../httpRequest/HttpRequestETSchema';
11
+
12
+ export interface API {
13
+ uri: string;
14
+ timeout?: number;
15
+ httpMethod: HTTPMethod;
16
+ headers?: Headers[];
17
+ requestBody?: HTTPRequestBody;
18
+ queryParams?: QueryParams[];
19
+ pathParams?: PathParams[];
20
+ responseJsonLogic: object;
21
+ errorJsonLogic: object;
22
+ }
23
+
24
+ export type ValidationRegex = string; // Regex to validate strings
25
+
26
+ export interface RetryConfig {
27
+ buttonTitle: string; // Button Title if retry is enabled
28
+ maxAttempt: number; // Number of attempts allowed
29
+ delay: number; // Delay in enabling resend again
30
+ }
31
+
32
+ export interface GenerationLogic {
33
+ generateOnLoad: boolean; // Need to generate to OTP
34
+ enableRetry: boolean; // Need to enable retry
35
+ api: API; // base API to generate OTP
36
+ retryConfig?: RetryConfig; // Config for retry of OTP
37
+ }
38
+
39
+ export enum InputType {
40
+ STRING = 'string',
41
+ NUMBER = 'number',
42
+ }
43
+
44
+ export interface CaptureInput {
45
+ inputType: InputType; // Type of input to be captured
46
+ length: number; // Max length of OTP
47
+ validationRegex?: ValidationRegex; // Need to validate the input
48
+ }
49
+
50
+ export interface Value {
51
+ value: string;
52
+ }
53
+
54
+ export type Logic = { api: API } | { value: Value };
55
+
56
+ export interface Validation {
57
+ selectedIndex: number;
58
+ logic: Logic;
59
+ }
60
+
61
+ export type ValidateOTPInput = BaseETRequest & {
62
+ generationLogic?: GenerationLogic;
63
+ captureInput: CaptureInput;
64
+ validation: Validation;
65
+ onSubmitET: (validateOTPOutput: ValidateOTPOutput) => void;
66
+ };
67
+
68
+ export type ValidateOTPOutput = BaseETResponse;
@@ -0,0 +1,24 @@
1
+ export const INVALID_OTP = `Wrong or expired OTP. Please try again.`;
2
+ export const INVALID_OTP_LENGTH = `OTP should be of length <length>`;
3
+ export const INVALID_REGEX = `Invalid OTP entered. Must match the expected pattern.`;
4
+ export const ERROR_GENERATING_OTP = `Error occured while Generating OTP`;
5
+ export 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">
6
+ <mask id="mask0_3391_199849" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="164" height="164">
7
+ <rect width="164" height="164" fill="url(#pattern0)"/>
8
+ </mask>
9
+ <g mask="url(#mask0_3391_199849)">
10
+ <rect x="-28" y="-29" width="221" height="221" fill="#5B80F7"/>
11
+ </g>
12
+ <defs>
13
+ <pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1">
14
+ <use xlink:href="#image0_3391_199849" transform="scale(0.0078125)"/>
15
+ </pattern>
16
+ <image id="image0_3391_199849" width="128" height="128" xlink:href="data:image/png;base64,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"/>
17
+ </defs>
18
+ </svg>
19
+ `;
20
+ export const DEFAULT_RETRY_CONFIG = {
21
+ buttonTitle: 'Resend OTP',
22
+ delay: 10,
23
+ maxAttempt: 3,
24
+ };
@@ -0,0 +1,83 @@
1
+ import { StyleSheet, Pressable, Keyboard, Platform } from 'react-native';
2
+ import React, { useEffect } from 'react';
3
+ import SplitTextInput from '../../../widgets/SplitTextInput';
4
+ import { Fonts } from '../../../../styles/executionTasks/CommonStyles';
5
+ import { InputType, CaptureInput } from '../ValidateOTPSchema';
6
+ import { INVALID_REGEX } from '../constants';
7
+
8
+ export interface OTPInputProps {
9
+ input: CaptureInput;
10
+ otpCode: string;
11
+ setOTPCode: (otpCode: string) => void;
12
+ hasError: boolean;
13
+ setHasError: (hasError: boolean) => void;
14
+ setErrorMessage: (errorMessage: string) => void;
15
+ }
16
+
17
+ const OTPInput = (props: OTPInputProps) => {
18
+ const maximumCodeLength = props.input.length;
19
+ const keyboardType =
20
+ props.input.inputType === InputType.NUMBER ? 'number-pad' : 'default';
21
+
22
+ useEffect(() => {
23
+ if (
24
+ props.input.validationRegex &&
25
+ props.otpCode.length === maximumCodeLength
26
+ ) {
27
+ const regex = new RegExp(props.input.validationRegex);
28
+ const hasError = !regex.test(props.otpCode);
29
+
30
+ props.setHasError(hasError);
31
+ if (hasError) props.setErrorMessage(INVALID_REGEX);
32
+ else props.setErrorMessage('');
33
+ }
34
+ }, [props.otpCode]);
35
+
36
+ return (
37
+ <>
38
+ <Pressable onPress={Keyboard.dismiss}>
39
+ <SplitTextInput
40
+ styles={styles.text}
41
+ value={props.otpCode}
42
+ onChange={(text) => {
43
+ if (props.input.validationRegex) {
44
+ }
45
+ if (props.hasError) {
46
+ props.setErrorMessage('');
47
+ props.setHasError(false);
48
+ }
49
+ props.setOTPCode(text);
50
+ }}
51
+ maxLength={maximumCodeLength}
52
+ keyboardType={keyboardType}
53
+ hasError={props.hasError}
54
+ />
55
+ </Pressable>
56
+ </>
57
+ );
58
+ };
59
+
60
+ export default OTPInput;
61
+
62
+ const styles = StyleSheet.create({
63
+ text: {
64
+ fontFamily:
65
+ Platform.OS === 'android'
66
+ ? Fonts.IBMPlexSans_400Regular
67
+ : 'IBMPlexSans-Regular',
68
+ color: '#3D445C',
69
+ fontSize: 20,
70
+ textAlign: 'center',
71
+ },
72
+ errorMessage: {
73
+ marginTop: 16,
74
+ marginHorizontal: 10,
75
+ color: '#DC2626',
76
+ fontFamily:
77
+ Platform.OS === 'android'
78
+ ? Fonts.IBMPlexSans_400Regular
79
+ : 'IBMPlexSans-Regular',
80
+ fontSize: 12,
81
+ lineHeight: 16,
82
+ },
83
+ });