@os1-platform/dispatch-mobile 2.0.8 → 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 (556) 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 +97 -23
  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 +81 -13
  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 +1 -2
  137. package/lib/commonjs/locale/Str.js.map +1 -1
  138. package/lib/commonjs/locale/i18n.js +2 -3
  139. package/lib/commonjs/locale/i18n.js.map +1 -1
  140. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js +5 -3
  141. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js.map +1 -1
  142. package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js +2 -0
  143. package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
  144. package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js +4 -2
  145. package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
  146. package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js +4 -2
  147. package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
  148. package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js +4 -2
  149. package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
  150. package/lib/commonjs/manager/location/LocationManager.js +7 -4
  151. package/lib/commonjs/manager/location/LocationManager.js.map +1 -1
  152. package/lib/commonjs/manager/sdk/DispatchSDKManager.js +4 -2
  153. package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
  154. package/lib/commonjs/manager/sdk/DispatchSdkCache.js +2 -0
  155. package/lib/commonjs/manager/sdk/DispatchSdkCache.js.map +1 -1
  156. package/lib/commonjs/manager/sdk/callbacksHandler.js +1 -2
  157. package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -1
  158. package/lib/commonjs/manager/syncmanager/AppSyncManager.js +4 -2
  159. package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
  160. package/lib/commonjs/manager/syncmanager/DBConfig.js +14 -26
  161. package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
  162. package/lib/commonjs/manager/syncmanager/NativeSyncManager.js +1 -2
  163. package/lib/commonjs/manager/syncmanager/NativeSyncManager.js.map +1 -1
  164. package/lib/commonjs/manager/syncmanager/constants.js +5 -10
  165. package/lib/commonjs/manager/syncmanager/constants.js.map +1 -1
  166. package/lib/commonjs/manager/syncmanager/database.js +2 -2
  167. package/lib/commonjs/manager/syncmanager/database.js.map +1 -1
  168. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +5 -4
  169. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  170. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +4 -2
  171. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
  172. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +4 -2
  173. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  174. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js +4 -2
  175. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  176. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +4 -2
  177. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  178. package/lib/commonjs/models/DispatchModels.js +1 -2
  179. package/lib/commonjs/models/DispatchModels.js.map +1 -1
  180. package/lib/commonjs/models/execTasks/ETConfig.js +6 -12
  181. package/lib/commonjs/models/execTasks/ETConfig.js.map +1 -1
  182. package/lib/commonjs/models/fcm.js.map +1 -1
  183. package/lib/commonjs/models/sdk.js +1 -2
  184. package/lib/commonjs/models/sdk.js.map +1 -1
  185. package/lib/commonjs/native/signature/SignatureCapture.js +1 -2
  186. package/lib/commonjs/native/signature/SignatureCapture.js.map +1 -1
  187. package/lib/commonjs/network/GraphQLClient.js +48 -4
  188. package/lib/commonjs/network/GraphQLClient.js.map +1 -1
  189. package/lib/commonjs/network/Queries.js +5 -10
  190. package/lib/commonjs/network/Queries.js.map +1 -1
  191. package/lib/commonjs/res/strings.js +1 -2
  192. package/lib/commonjs/res/strings.js.map +1 -1
  193. package/lib/commonjs/resources/Login.js +1 -2
  194. package/lib/commonjs/resources/Login.js.map +1 -1
  195. package/lib/commonjs/resources/network.js +1 -2
  196. package/lib/commonjs/resources/network.js.map +1 -1
  197. package/lib/commonjs/styles/SdkColors.js +2 -4
  198. package/lib/commonjs/styles/SdkColors.js.map +1 -1
  199. package/lib/commonjs/styles/executionTasks/CommonStyles.js +6 -10
  200. package/lib/commonjs/styles/executionTasks/CommonStyles.js.map +1 -1
  201. package/lib/commonjs/ui/screens/CancellationScreen.js +3 -4
  202. package/lib/commonjs/ui/screens/CancellationScreen.js.map +1 -1
  203. package/lib/commonjs/ui/screens/CaptureInputScreen.js +5 -5
  204. package/lib/commonjs/ui/screens/CaptureInputScreen.js.map +1 -1
  205. package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js +3 -4
  206. package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js.map +1 -1
  207. package/lib/commonjs/ui/screens/DeliverScreen.js +9 -5
  208. package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
  209. package/lib/commonjs/ui/screens/DisplayScreen.js +3 -4
  210. package/lib/commonjs/ui/screens/DisplayScreen.js.map +1 -1
  211. package/lib/commonjs/ui/screens/DoodleScreen.js +5 -5
  212. package/lib/commonjs/ui/screens/DoodleScreen.js.map +1 -1
  213. package/lib/commonjs/ui/screens/DropCashScreen.js +5 -5
  214. package/lib/commonjs/ui/screens/DropCashScreen.js.map +1 -1
  215. package/lib/commonjs/ui/screens/FormsScreen.js +3 -4
  216. package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
  217. package/lib/commonjs/ui/screens/GeofenceScreen.js +3 -4
  218. package/lib/commonjs/ui/screens/GeofenceScreen.js.map +1 -1
  219. package/lib/commonjs/ui/screens/HttpRequestScreen.js +1 -2
  220. package/lib/commonjs/ui/screens/HttpRequestScreen.js.map +1 -1
  221. package/lib/commonjs/ui/screens/ImageCaptureScreen.js +3 -4
  222. package/lib/commonjs/ui/screens/ImageCaptureScreen.js.map +1 -1
  223. package/lib/commonjs/ui/screens/PaymentScreen.js +6 -6
  224. package/lib/commonjs/ui/screens/PaymentScreen.js.map +1 -1
  225. package/lib/commonjs/ui/screens/PickupScreen.js +4 -5
  226. package/lib/commonjs/ui/screens/PickupScreen.js.map +1 -1
  227. package/lib/commonjs/ui/screens/ScanScreen.js +3 -4
  228. package/lib/commonjs/ui/screens/ScanScreen.js.map +1 -1
  229. package/lib/commonjs/ui/screens/StartWorkFlowScreen.js +8 -7
  230. package/lib/commonjs/ui/screens/StartWorkFlowScreen.js.map +1 -1
  231. package/lib/commonjs/ui/screens/ValidateOTPScreen.js +3 -4
  232. package/lib/commonjs/ui/screens/ValidateOTPScreen.js.map +1 -1
  233. package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js +4 -4
  234. package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js.map +1 -1
  235. package/lib/commonjs/ui/uiConfig/RouteParams.js +1 -2
  236. package/lib/commonjs/ui/uiConfig/RouteParams.js.map +1 -1
  237. package/lib/commonjs/utils/ApiUtils.js +2 -4
  238. package/lib/commonjs/utils/ApiUtils.js.map +1 -1
  239. package/lib/commonjs/utils/Logger.js +10 -9
  240. package/lib/commonjs/utils/Logger.js.map +1 -1
  241. package/lib/commonjs/utils/NetworkUtil.js +1 -2
  242. package/lib/commonjs/utils/NetworkUtil.js.map +1 -1
  243. package/lib/commonjs/utils/SdkUtils.js +12 -8
  244. package/lib/commonjs/utils/SdkUtils.js.map +1 -1
  245. package/lib/commonjs/utils/SyncManagerUtils.js +2 -2
  246. package/lib/commonjs/utils/SyncManagerUtils.js.map +1 -1
  247. package/lib/commonjs/utils/fcm/FCM.js +3 -4
  248. package/lib/commonjs/utils/fcm/FCM.js.map +1 -1
  249. package/lib/commonjs/utils/fcm/FcmUtils.js +14 -2
  250. package/lib/commonjs/utils/fcm/FcmUtils.js.map +1 -1
  251. package/lib/commonjs/utils/helper.js +1 -2
  252. package/lib/commonjs/utils/helper.js.map +1 -1
  253. package/lib/commonjs/utils/hooks/useModal.js +3 -4
  254. package/lib/commonjs/utils/hooks/useModal.js.map +1 -1
  255. package/lib/commonjs/utils/hooks/useTimer.js +1 -2
  256. package/lib/commonjs/utils/hooks/useTimer.js.map +1 -1
  257. package/lib/commonjs/utils/loginHelper.js +1 -2
  258. package/lib/commonjs/utils/loginHelper.js.map +1 -1
  259. package/lib/commonjs/utils/storage.js +71 -13
  260. package/lib/commonjs/utils/storage.js.map +1 -1
  261. package/lib/module/components/dispatch/DispatchExecNavigator.js.map +1 -1
  262. package/lib/module/components/executiontasks/cancellation/CancelET.js +11 -5
  263. package/lib/module/components/executiontasks/cancellation/CancelET.js.map +1 -1
  264. package/lib/module/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
  265. package/lib/module/components/executiontasks/deliver/SLDeliverET.js +96 -20
  266. package/lib/module/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
  267. package/lib/module/components/executiontasks/display/DisplayModalET.js +5 -5
  268. package/lib/module/components/executiontasks/display/DisplayModalET.js.map +1 -1
  269. package/lib/module/components/executiontasks/doodle/SignatureET.js +34 -10
  270. package/lib/module/components/executiontasks/doodle/SignatureET.js.map +1 -1
  271. package/lib/module/components/executiontasks/dropCash/SLDropCash.js +4 -4
  272. package/lib/module/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
  273. package/lib/module/components/executiontasks/forms/FormGenerator.js +3 -3
  274. package/lib/module/components/executiontasks/forms/FormGenerator.js.map +1 -1
  275. package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js +1 -1
  276. package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
  277. package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js +131 -18
  278. package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
  279. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +3 -3
  280. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  281. package/lib/module/components/executiontasks/payments/PaymentStyles.js +6 -6
  282. package/lib/module/components/executiontasks/payments/PaymentStyles.js.map +1 -1
  283. package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js +3 -3
  284. package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
  285. package/lib/module/components/executiontasks/pickup/SLPickupET.js +79 -10
  286. package/lib/module/components/executiontasks/pickup/SLPickupET.js.map +1 -1
  287. package/lib/module/components/executiontasks/scan/ScanET.js +12 -12
  288. package/lib/module/components/executiontasks/scan/ScanET.js.map +1 -1
  289. package/lib/module/components/executiontasks/scan/sub_components/CScanner.js +2 -2
  290. package/lib/module/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
  291. package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js +3 -3
  292. package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
  293. package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js +6 -6
  294. package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
  295. package/lib/module/components/executiontasks/scan/utils.js.map +1 -1
  296. package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js +6 -6
  297. package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
  298. package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js +3 -3
  299. package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
  300. package/lib/module/components/widgets/AlertDisplay.js +12 -7
  301. package/lib/module/components/widgets/AlertDisplay.js.map +1 -1
  302. package/lib/module/components/widgets/CancelOrderDialog.js +3 -3
  303. package/lib/module/components/widgets/CancelOrderDialog.js.map +1 -1
  304. package/lib/module/components/widgets/Card.js +1 -1
  305. package/lib/module/components/widgets/Card.js.map +1 -1
  306. package/lib/module/components/widgets/ModalWidget.js +3 -3
  307. package/lib/module/components/widgets/ModalWidget.js.map +1 -1
  308. package/lib/module/components/widgets/ProgressDialog.js +2 -2
  309. package/lib/module/components/widgets/ProgressDialog.js.map +1 -1
  310. package/lib/module/components/widgets/SnackBarCustom.js +2 -2
  311. package/lib/module/components/widgets/SnackBarCustom.js.map +1 -1
  312. package/lib/module/events/EventDispatcher.js +5 -2
  313. package/lib/module/events/EventDispatcher.js.map +1 -1
  314. package/lib/module/icons/circleMark.svg +3 -0
  315. package/lib/module/index.js +2 -2
  316. package/lib/module/index.js.map +1 -1
  317. package/lib/module/locale/i18n.js +1 -1
  318. package/lib/module/locale/i18n.js.map +1 -1
  319. package/lib/module/manager/dispatch/DispatchStateContainer.js +3 -1
  320. package/lib/module/manager/dispatch/DispatchStateContainer.js.map +1 -1
  321. package/lib/module/manager/dispatchCodes/EventCodeContainer.js +2 -0
  322. package/lib/module/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
  323. package/lib/module/manager/dispatchCodes/EventCodeRepo.js +2 -0
  324. package/lib/module/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
  325. package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js +2 -0
  326. package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
  327. package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js +2 -0
  328. package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
  329. package/lib/module/manager/location/LocationManager.js +2 -0
  330. package/lib/module/manager/location/LocationManager.js.map +1 -1
  331. package/lib/module/manager/sdk/DispatchSDKManager.js +2 -0
  332. package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
  333. package/lib/module/manager/sdk/DispatchSdkCache.js +2 -0
  334. package/lib/module/manager/sdk/DispatchSdkCache.js.map +1 -1
  335. package/lib/module/manager/syncmanager/AppSyncManager.js +2 -0
  336. package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
  337. package/lib/module/manager/syncmanager/document/DocumentManager.js +2 -0
  338. package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
  339. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +2 -0
  340. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  341. package/lib/module/manager/syncmanager/events/ETEventsManager.js +2 -0
  342. package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  343. package/lib/module/manager/syncmanager/events/EventsSyncManager.js +2 -0
  344. package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  345. package/lib/module/models/fcm.js.map +1 -1
  346. package/lib/module/network/GraphQLClient.js +48 -3
  347. package/lib/module/network/GraphQLClient.js.map +1 -1
  348. package/lib/module/ui/screens/CaptureInputScreen.js +2 -1
  349. package/lib/module/ui/screens/CaptureInputScreen.js.map +1 -1
  350. package/lib/module/ui/screens/DeliverScreen.js +6 -1
  351. package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
  352. package/lib/module/ui/screens/DoodleScreen.js +2 -1
  353. package/lib/module/ui/screens/DoodleScreen.js.map +1 -1
  354. package/lib/module/ui/screens/DropCashScreen.js +2 -2
  355. package/lib/module/ui/screens/DropCashScreen.js.map +1 -1
  356. package/lib/module/ui/screens/PaymentScreen.js +3 -2
  357. package/lib/module/ui/screens/PaymentScreen.js.map +1 -1
  358. package/lib/module/ui/screens/PickupScreen.js +1 -1
  359. package/lib/module/ui/screens/PickupScreen.js.map +1 -1
  360. package/lib/module/ui/screens/StartWorkFlowScreen.js +6 -4
  361. package/lib/module/ui/screens/StartWorkFlowScreen.js.map +1 -1
  362. package/lib/module/ui/screens/WithBaseDispatchScreen.js +1 -0
  363. package/lib/module/ui/screens/WithBaseDispatchScreen.js.map +1 -1
  364. package/lib/module/utils/Logger.js +2 -0
  365. package/lib/module/utils/Logger.js.map +1 -1
  366. package/lib/module/utils/SdkUtils.js +11 -7
  367. package/lib/module/utils/SdkUtils.js.map +1 -1
  368. package/lib/module/utils/fcm/FcmUtils.js +11 -0
  369. package/lib/module/utils/fcm/FcmUtils.js.map +1 -1
  370. package/lib/module/utils/storage.js +69 -10
  371. package/lib/module/utils/storage.js.map +1 -1
  372. package/lib/typescript/components/executiontasks/deliver/DeliverETInput.d.ts +3 -0
  373. package/lib/typescript/components/executiontasks/payments/PaymentStyles.d.ts +4 -5
  374. package/lib/typescript/components/widgets/SnackBarCustom.d.ts +1 -1
  375. package/lib/typescript/index.d.ts +2 -2
  376. package/lib/typescript/models/fcm.d.ts +3 -0
  377. package/lib/typescript/utils/fcm/FcmUtils.d.ts +2 -1
  378. package/lib/typescript/utils/storage.d.ts +3 -2
  379. package/package.json +23 -8
  380. package/src/@types/assets/index.d.ts +6 -0
  381. package/src/components/dispatch/DispatchExecNavigator.tsx +273 -0
  382. package/src/components/executiontasks/CompletedWFSchema.ts +24 -0
  383. package/src/components/executiontasks/ExecutionTasksIndex.ts +137 -0
  384. package/src/components/executiontasks/cancellation/CancelET.tsx +281 -0
  385. package/src/components/executiontasks/cancellation/CancellationSchema.ts +30 -0
  386. package/src/components/executiontasks/captureInput/CaptureInputSchema.ts +52 -0
  387. package/src/components/executiontasks/captureInput/CaptureText.tsx +172 -0
  388. package/src/components/executiontasks/captureInput/utils.ts +9 -0
  389. package/src/components/executiontasks/deliver/DeliverET.tsx +124 -0
  390. package/src/components/executiontasks/deliver/DeliverETInput.ts +50 -0
  391. package/src/components/executiontasks/deliver/SLDeliverET.tsx +512 -0
  392. package/src/components/executiontasks/display/DisplayModalET.tsx +174 -0
  393. package/src/components/executiontasks/display/DisplaySchema.ts +29 -0
  394. package/src/components/executiontasks/doodle/SignatureET.tsx +320 -0
  395. package/src/components/executiontasks/doodle/SignatureSchema.ts +51 -0
  396. package/src/components/executiontasks/dropCash/DropCashET.tsx +145 -0
  397. package/src/components/executiontasks/dropCash/DropCashSchema.ts +22 -0
  398. package/src/components/executiontasks/dropCash/SLDropCash.tsx +286 -0
  399. package/src/components/executiontasks/forms/FormGenerator.tsx +282 -0
  400. package/src/components/executiontasks/forms/FormSchema.ts +29 -0
  401. package/src/components/executiontasks/forms/widgets/DateTimeWidget.tsx +144 -0
  402. package/src/components/executiontasks/forms/widgets/DropdownWidget.tsx +52 -0
  403. package/src/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.tsx +158 -0
  404. package/src/components/executiontasks/forms/widgets/TimeRangeSelector.tsx +38 -0
  405. package/src/components/executiontasks/httpRequest/HttpEtUtils.ts +49 -0
  406. package/src/components/executiontasks/httpRequest/HttpRequestET.tsx +59 -0
  407. package/src/components/executiontasks/httpRequest/HttpRequestETSchema.ts +42 -0
  408. package/src/components/executiontasks/imageCapture/CaptureSchema.ts +93 -0
  409. package/src/components/executiontasks/imageCapture/CaptureUtils.ts +326 -0
  410. package/src/components/executiontasks/imageCapture/ImageCapture.tsx +363 -0
  411. package/src/components/executiontasks/payments/PaymentStyles.ts +93 -0
  412. package/src/components/executiontasks/payments/PaymentUtils.ts +7 -0
  413. package/src/components/executiontasks/payments/completePayment/CompletePaymentET.tsx +237 -0
  414. package/src/components/executiontasks/payments/completePayment/CompletePaymentSchema.ts +23 -0
  415. package/src/components/executiontasks/payments/init/InitPaymentET.tsx +247 -0
  416. package/src/components/executiontasks/payments/init/InitPaymentSchema.ts +37 -0
  417. package/src/components/executiontasks/payments/processPayment/ProcessPaymentET.tsx +272 -0
  418. package/src/components/executiontasks/payments/processPayment/ProcessPaymentSchema.ts +38 -0
  419. package/src/components/executiontasks/pickup/PickpSchema.ts +28 -0
  420. package/src/components/executiontasks/pickup/PickupET.tsx +126 -0
  421. package/src/components/executiontasks/pickup/SLPickupET.tsx +367 -0
  422. package/src/components/executiontasks/scan/ScanET.tsx +1059 -0
  423. package/src/components/executiontasks/scan/ScanSchema.ts +121 -0
  424. package/src/components/executiontasks/scan/constants.ts +6 -0
  425. package/src/components/executiontasks/scan/interfaces.ts +109 -0
  426. package/src/components/executiontasks/scan/modalConstant.ts +120 -0
  427. package/src/components/executiontasks/scan/sub_components/CScanner.tsx +107 -0
  428. package/src/components/executiontasks/scan/sub_components/DropDownUtils.ts +119 -0
  429. package/src/components/executiontasks/scan/sub_components/ERDropDown.tsx +134 -0
  430. package/src/components/executiontasks/scan/sub_components/SummaryPage.tsx +1296 -0
  431. package/src/components/executiontasks/scan/utils.ts +1108 -0
  432. package/src/components/executiontasks/validateOTP/ValidateOTPET.tsx +436 -0
  433. package/src/components/executiontasks/validateOTP/ValidateOTPSchema.ts +68 -0
  434. package/src/components/executiontasks/validateOTP/constants.ts +24 -0
  435. package/src/components/executiontasks/validateOTP/sub-components/OTPInput.tsx +83 -0
  436. package/src/components/executiontasks/validateOTP/utils.ts +180 -0
  437. package/src/components/executiontasks/verifyInput/VerifyInputSchema.ts +49 -0
  438. package/src/components/executiontasks/verifyLocation/GeofenceUtils.ts +55 -0
  439. package/src/components/executiontasks/verifyLocation/VerifyLocSchema.ts +56 -0
  440. package/src/components/executiontasks/verifyLocation/VerifyLocationET.tsx +69 -0
  441. package/src/components/executiontasks/verifyOtp/VerifyOtpET.tsx +96 -0
  442. package/src/components/executiontasks/verifyOtp/VerifyOtpSchema.ts +27 -0
  443. package/src/components/utils/index.ts +18 -0
  444. package/src/components/widgets/AlertDisplay.tsx +38 -0
  445. package/src/components/widgets/CancelOrderDialog.tsx +112 -0
  446. package/src/components/widgets/Card.tsx +99 -0
  447. package/src/components/widgets/GoBackModal.tsx +49 -0
  448. package/src/components/widgets/IconButton.tsx +32 -0
  449. package/src/components/widgets/ModalWidget.tsx +157 -0
  450. package/src/components/widgets/ProgressDialog.tsx +54 -0
  451. package/src/components/widgets/SearchBar.tsx +71 -0
  452. package/src/components/widgets/SnackBarCustom.tsx +212 -0
  453. package/src/components/widgets/SplitTextInput.tsx +116 -0
  454. package/src/components/widgets/TabsComponent.tsx +84 -0
  455. package/src/components/widgets/Toaster.ts +8 -0
  456. package/src/config/DispatchSDKConfig.ts +4 -0
  457. package/src/constants/apiConstants.ts +11 -0
  458. package/src/constants/constants.ts +12 -0
  459. package/src/constants/statuscode.ts +8 -0
  460. package/src/errors/BaseError.ts +16 -0
  461. package/src/errors/ErrorCodes.ts +38 -0
  462. package/src/events/EventDispatcher.ts +22 -0
  463. package/src/events/EventListener.ts +14 -0
  464. package/src/events/constants.ts +7 -0
  465. package/src/events/index.ts +3 -0
  466. package/src/events/interface.ts +1 -0
  467. package/src/icons/ScanIcon.tsx +24 -0
  468. package/src/icons/circleMark.svg +3 -0
  469. package/src/icons/file.tsx +24 -0
  470. package/src/icons/interface.ts +5 -0
  471. package/src/index.tsx +80 -0
  472. package/src/locale/Str.ts +12 -0
  473. package/src/locale/en.json +6 -0
  474. package/src/locale/i18n.ts +17 -0
  475. package/src/locale/util.ts +20 -0
  476. package/src/manager/dispatch/DispatchStateContainer.tsx +842 -0
  477. package/src/manager/dispatchCodes/EventCodeContainer.ts +75 -0
  478. package/src/manager/dispatchCodes/EventCodeRepo.ts +82 -0
  479. package/src/manager/dispatchCodes/ReasonCodeContainer.ts +121 -0
  480. package/src/manager/dispatchCodes/ReasonCodeRepo.ts +90 -0
  481. package/src/manager/dispatchCodes/reasonCodes.json +137 -0
  482. package/src/manager/jobRemoval/JobRemovalManager.ts +21 -0
  483. package/src/manager/location/LocationManager.ts +77 -0
  484. package/src/manager/sdk/DispatchSDKManager.ts +99 -0
  485. package/src/manager/sdk/DispatchSdkCache.ts +47 -0
  486. package/src/manager/sdk/callbacksHandler.ts +25 -0
  487. package/src/manager/syncmanager/AppSyncManager.ts +187 -0
  488. package/src/manager/syncmanager/DBConfig.ts +180 -0
  489. package/src/manager/syncmanager/NativeSyncManager.ts +14 -0
  490. package/src/manager/syncmanager/constants.ts +5 -0
  491. package/src/manager/syncmanager/database.ts +93 -0
  492. package/src/manager/syncmanager/document/DocumentHttpClient.ts +111 -0
  493. package/src/manager/syncmanager/document/DocumentManager.ts +143 -0
  494. package/src/manager/syncmanager/document/DocumentSyncManager.ts +233 -0
  495. package/src/manager/syncmanager/document/models.ts +4 -0
  496. package/src/manager/syncmanager/events/ETEventsManager.ts +633 -0
  497. package/src/manager/syncmanager/events/EventsGraphQLClient.ts +0 -0
  498. package/src/manager/syncmanager/events/EventsSyncManager.ts +490 -0
  499. package/src/manager/syncmanager/events/SyncHttpClient.ts +202 -0
  500. package/src/models/DispatchModels.ts +97 -0
  501. package/src/models/ReasonCodes.ts +12 -0
  502. package/src/models/auth.ts +43 -0
  503. package/src/models/execTasks/ETBaseModels.ts +113 -0
  504. package/src/models/execTasks/ETConfig.ts +94 -0
  505. package/src/models/execution.ts +9 -0
  506. package/src/models/fcm.ts +6 -0
  507. package/src/models/sdk.ts +35 -0
  508. package/src/native/signature/SignatureCapture.tsx +110 -0
  509. package/src/network/GraphQLClient.ts +147 -0
  510. package/src/network/NetworkClient.ts +58 -0
  511. package/src/network/NetworkUtils.ts +41 -0
  512. package/src/network/Queries.ts +46 -0
  513. package/src/network/client.ts +61 -0
  514. package/src/res/strings.ts +1 -0
  515. package/src/resources/Login.ts +36 -0
  516. package/src/resources/network.ts +13 -0
  517. package/src/styles/SdkColors.ts +24 -0
  518. package/src/styles/executionTasks/CommonStyles.ts +188 -0
  519. package/src/ui/screens/CancellationScreen.tsx +144 -0
  520. package/src/ui/screens/CaptureInputScreen.tsx +79 -0
  521. package/src/ui/screens/CompleteObjectiveScreen.tsx +72 -0
  522. package/src/ui/screens/DeliverScreen.tsx +114 -0
  523. package/src/ui/screens/DisplayScreen.tsx +52 -0
  524. package/src/ui/screens/DoodleScreen.tsx +84 -0
  525. package/src/ui/screens/DropCashScreen.tsx +113 -0
  526. package/src/ui/screens/ETScreensIndex.ts +35 -0
  527. package/src/ui/screens/FormsScreen.tsx +164 -0
  528. package/src/ui/screens/GeofenceScreen.tsx +54 -0
  529. package/src/ui/screens/HttpRequestScreen.tsx +47 -0
  530. package/src/ui/screens/ImageCaptureScreen.tsx +77 -0
  531. package/src/ui/screens/PaymentScreen.tsx +191 -0
  532. package/src/ui/screens/PickupScreen.tsx +82 -0
  533. package/src/ui/screens/ScanScreen.tsx +159 -0
  534. package/src/ui/screens/StartWorkFlowScreen.tsx +233 -0
  535. package/src/ui/screens/ValidateOTPScreen.tsx +62 -0
  536. package/src/ui/screens/WithBaseDispatchScreen.tsx +33 -0
  537. package/src/ui/uiConfig/RouteParams.ts +28 -0
  538. package/src/utils/ApiUtils.ts +157 -0
  539. package/src/utils/ExecTaskUtils.ts +214 -0
  540. package/src/utils/Logger.ts +110 -0
  541. package/src/utils/NetworkUtil.ts +50 -0
  542. package/src/utils/SdkUtils.ts +155 -0
  543. package/src/utils/SyncManagerUtils.ts +223 -0
  544. package/src/utils/fcm/FCM.ts +118 -0
  545. package/src/utils/fcm/FcmUtils.ts +130 -0
  546. package/src/utils/helper.ts +24 -0
  547. package/src/utils/hooks/useModal.tsx +67 -0
  548. package/src/utils/hooks/useTimer.ts +44 -0
  549. package/src/utils/loginHelper.ts +51 -0
  550. package/src/utils/storage.ts +292 -0
  551. package/src/utils/test.json +17 -0
  552. package/src/utils/utils.ts +30 -0
  553. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  554. package/android/gradle/wrapper/gradle-wrapper.properties +0 -5
  555. package/android/gradlew +0 -185
  556. package/android/gradlew.bat +0 -89
@@ -0,0 +1,842 @@
1
+ import { clearCache, createFmsFolder } from '../../utils/SyncManagerUtils';
2
+ import {
3
+ DispatchExecutor as dispatchExecutor,
4
+ IDispatchExecutor,
5
+ IDispatch,
6
+ } from '@os1-platform/platform-coreos-execution-engine-sdk';
7
+ import { showToast } from '../../components/widgets/Toaster';
8
+ import {
9
+ CustomScreens,
10
+ ExecutionTaskID,
11
+ } from '../../models/execTasks/ETConfig';
12
+ import type {
13
+ ETSummary,
14
+ ObjectiveSummary,
15
+ } from '../../models/execTasks/ETBaseModels';
16
+
17
+ import EventsSyncManager from '../syncmanager/events/EventsSyncManager';
18
+ import Logger, { LOG_TYPE } from '../../utils/Logger';
19
+ import DispatchSdkCache from '../sdk/DispatchSdkCache';
20
+ import type {
21
+ BaseETProps,
22
+ endEvent,
23
+ JobObjectiveType,
24
+ stateParams,
25
+ } from '../../models/DispatchModels';
26
+ import { BaseError } from '../../errors/BaseError';
27
+ import { getBaseETResponse } from '../../utils/ExecTaskUtils';
28
+ import ReasonCodeContainer from '../dispatchCodes/ReasonCodeContainer';
29
+ import BaseErrorCodes from '../../errors/ErrorCodes';
30
+ import ErrorCodes, { InvalidArgumentsError } from '../../errors/ErrorCodes';
31
+ import { RouteParams } from '../../ui/uiConfig/RouteParams';
32
+ import { debounce } from 'lodash';
33
+ import dispatchEvent from '../../events/EventDispatcher';
34
+ import EventCodeContainer from '../dispatchCodes/EventCodeContainer';
35
+ import { GO_BACK_EVENT_CODE, REASON_NOT_USED } from '../../constants/constants';
36
+ import AppSyncManager from '../syncmanager/AppSyncManager';
37
+ import { DispatchExecutor } from '@os1-platform/platform-coreos-execution-engine-sdk';
38
+
39
+ // NEW CODE
40
+ import {
41
+ BULK_DATA_LIMIT,
42
+ LAST_SYNCED_EVENT_ID,
43
+ SCAN_MERGED_OBJ_ID_OUTPUT,
44
+ SHARED_PREFERENCE_DISPATCH_ID,
45
+ SHARED_PREFERENCE_SCAN_OUTPUT,
46
+ } from '../syncmanager/constants';
47
+ import Storage from '../../utils/storage';
48
+ import {
49
+ clearScanOutput,
50
+ getScanMergedObjectID,
51
+ } from '../../components/executiontasks/scan/utils';
52
+ import { SCANNED_RECORD } from '../../components/executiontasks/scan/interfaces';
53
+ import { SHARED_PREF_SCAN_OUTPUT_INTERFACE } from '../../components/executiontasks/scan/interfaces';
54
+ import { ScannerOutput } from '../../components/executiontasks/scan/ScanSchema';
55
+
56
+ export default class DispatchStateContainer {
57
+ cacheKeys = DispatchSdkCache.KEYS;
58
+ cache = DispatchSdkCache.getInstance();
59
+
60
+ get stateKeys(): string[] {
61
+ return this._stateKeys;
62
+ }
63
+
64
+ set stateKeys(value: string[]) {
65
+ this._stateKeys = value;
66
+ }
67
+ get mappedStates(): Map<string, IDispatch.IExecutionTaskQueryResponse> {
68
+ return this._mappedStates;
69
+ }
70
+
71
+ set mappedStates(value: Map<string, IDispatch.IExecutionTaskQueryResponse>) {
72
+ this._mappedStates = value;
73
+ }
74
+ private static instance: DispatchStateContainer;
75
+ private successRoute: string | null = null;
76
+ private failureRoute: string | null = null;
77
+
78
+ private _stateKeys: string[] = [];
79
+ public _jobObjectives: JobObjectiveType[] | null = null;
80
+ private _mappedStates: Map<string, IDispatch.IExecutionTaskQueryResponse> =
81
+ new Map<string, IDispatch.IExecutionTaskQueryResponse>();
82
+ private _mappedStatesData: Map<
83
+ string,
84
+ IDispatch.IExecutionTaskQueryResponse
85
+ > = new Map<string, IDispatch.IExecutionTaskQueryResponse>();
86
+
87
+ /**
88
+ * Call this function when dispatch data is fetched successfully in client app
89
+ * @param dispatchID
90
+ * @param jobs
91
+ * @param dispatchWorkflows
92
+ * @param maxTaskReattempt
93
+ */
94
+ public async initDispatchExecutor(
95
+ dispatchID: string,
96
+ jobs: IDispatchExecutor.Job[],
97
+ dispatchWorkflows: { [id: string]: IDispatchExecutor.Workflow },
98
+ maxTaskReattempt?: number
99
+ ) {
100
+ if (
101
+ !dispatchID ||
102
+ !jobs ||
103
+ jobs.length < 1 ||
104
+ !dispatchWorkflows ||
105
+ Object.keys(dispatchWorkflows).length < 1
106
+ ) {
107
+ Logger.getInstance().logEvent(
108
+ 'initDispatchExecutor',
109
+ InvalidArgumentsError,
110
+ LOG_TYPE.SDK_WARNING
111
+ );
112
+ throw new BaseError(
113
+ BaseErrorCodes.InvalidArgumentError,
114
+ InvalidArgumentsError
115
+ );
116
+ }
117
+ await clearCache(dispatchID);
118
+ await DispatchSdkCache.getInstance().setKeyInCache(
119
+ DispatchSdkCache.KEYS.DISPATCH_ID,
120
+ dispatchID
121
+ );
122
+ await createFmsFolder(dispatchID);
123
+
124
+ // NEW CODE
125
+ let storage = Storage.getInstance();
126
+
127
+ const sharedPreferenceDispatchId = await storage.getSharedItem(
128
+ SHARED_PREFERENCE_DISPATCH_ID
129
+ );
130
+ if (sharedPreferenceDispatchId) {
131
+ if (sharedPreferenceDispatchId !== dispatchID) {
132
+ await Promise.all([
133
+ storage.setSharedItem(SHARED_PREFERENCE_DISPATCH_ID, dispatchID),
134
+ storage.setSharedItem(LAST_SYNCED_EVENT_ID, '0'),
135
+ ]);
136
+ }
137
+ } else {
138
+ await Promise.all([
139
+ storage.setSharedItem(SHARED_PREFERENCE_DISPATCH_ID, dispatchID),
140
+ storage.setSharedItem(LAST_SYNCED_EVENT_ID, '0'),
141
+ ]);
142
+ }
143
+
144
+ await dispatchExecutor.start(dispatchID, jobs, dispatchWorkflows, {
145
+ maxTaskReattempt,
146
+ eventSyncBatchSize: BULK_DATA_LIMIT,
147
+ });
148
+ }
149
+
150
+ // NEW CODE
151
+ /**
152
+ *
153
+ * @param mergedObjectiveId
154
+ * @returns IExecutionTaskQueryResponse {
155
+ * mergedObjectiveId: string;
156
+ * taskName: string;
157
+ * taskId: string;
158
+ * input: any;
159
+ * }
160
+ */
161
+
162
+ public async queryNextET(
163
+ mergedObjectiveId: Array<string>,
164
+ statusFilter: IDispatchExecutor.ExecutionStatus[]
165
+ ): Promise<IDispatch.IExecutionTaskQueryResponse[]> {
166
+ if (!mergedObjectiveId) {
167
+ Logger.getInstance().logEvent(
168
+ 'queryNextET',
169
+ 'CONSTRAINTS FAILED',
170
+ LOG_TYPE.SDK_ERROR
171
+ );
172
+ throw new BaseError(ErrorCodes.MERGING_ERROR, 'CONSTRAINTS FAILED');
173
+ }
174
+
175
+ return await dispatchExecutor.getNextTask(
176
+ mergedObjectiveId[0],
177
+ statusFilter
178
+ );
179
+ }
180
+
181
+ private async updateScanETOutputSharedPreference(
182
+ etOutput: any,
183
+ prefixedMergedObjectiveId: Array<string>,
184
+ prefixKey: string
185
+ ) {
186
+ etOutput.mergedObjectiveIds = prefixedMergedObjectiveId;
187
+ let storage = Storage.getInstance();
188
+ const output = await storage.getSharedItem(SHARED_PREFERENCE_SCAN_OUTPUT);
189
+
190
+ if (output) {
191
+ const scanETOutput: SHARED_PREF_SCAN_OUTPUT_INTERFACE =
192
+ JSON.parse(output);
193
+ let _scanETOutput: ScannerOutput = {};
194
+ if (scanETOutput[prefixKey]) {
195
+ _scanETOutput = scanETOutput[prefixKey];
196
+ }
197
+ prefixedMergedObjectiveId.forEach((mergedId: string) => {
198
+ _scanETOutput[mergedId] = etOutput;
199
+ });
200
+
201
+ // SAVE IN SHARED PREFERENCE
202
+ await storage.setSharedItem(
203
+ SHARED_PREFERENCE_SCAN_OUTPUT,
204
+ JSON.stringify({ ...scanETOutput, [prefixKey]: _scanETOutput })
205
+ );
206
+ } else {
207
+ const scanETOutput: SHARED_PREF_SCAN_OUTPUT_INTERFACE = {};
208
+ prefixedMergedObjectiveId.forEach((mergedId: string) => {
209
+ scanETOutput[mergedId] = etOutput;
210
+ });
211
+ // SAVE IN SHARED PREFERENCE
212
+ await storage.setSharedItem(
213
+ SHARED_PREFERENCE_SCAN_OUTPUT,
214
+ JSON.stringify({ [prefixKey]: scanETOutput })
215
+ );
216
+ }
217
+ }
218
+
219
+ private async updatePendingSharedPreference(
220
+ eventType: boolean,
221
+ prefixedMergedObjectiveId: Array<string>,
222
+ prefixKey: string
223
+ ) {
224
+ let storage = Storage.getInstance();
225
+ const mergedIdOutput = await storage.getSharedItem(
226
+ SCAN_MERGED_OBJ_ID_OUTPUT
227
+ );
228
+
229
+ if (mergedIdOutput) {
230
+ const mergedIds = JSON.parse(mergedIdOutput);
231
+ const _mergedIds = mergedIds[prefixKey];
232
+ if (_mergedIds) {
233
+ if (eventType) {
234
+ _mergedIds.success.push(...prefixedMergedObjectiveId);
235
+ _mergedIds.pending = [];
236
+ } else {
237
+ _mergedIds.failure.push(...prefixedMergedObjectiveId);
238
+ _mergedIds.pending = [];
239
+ }
240
+
241
+ await storage.setSharedItem(
242
+ SCAN_MERGED_OBJ_ID_OUTPUT,
243
+ JSON.stringify({ ...mergedIds, [prefixKey]: _mergedIds })
244
+ );
245
+ }
246
+ }
247
+ }
248
+
249
+ // NEW CODE
250
+ public async sendETOutput(
251
+ etOutput: any,
252
+ states: any,
253
+ isMergedObjectiveBasedOutput?: boolean
254
+ ) {
255
+ const mergedObjectiveIds =
256
+ states[RouteParams.NEXT_STATES].mergedObjectiveIds;
257
+ const taskName = states[RouteParams.NEXT_STATES].taskName;
258
+ const taskID = states[RouteParams.NEXT_STATES].taskId;
259
+ const input = states[RouteParams.NEXT_STATES].input;
260
+ let lockTaskResponse: boolean = true;
261
+
262
+ if (isMergedObjectiveBasedOutput) {
263
+ // NEW CODE
264
+ const output = etOutput;
265
+ let promises: any = [];
266
+
267
+ const prefixKey = this.findPrefixKey(
268
+ mergedObjectiveIds,
269
+ etOutput,
270
+ states
271
+ );
272
+
273
+ let defaultConfig: { index: number; success: boolean; output: any } = {
274
+ index: -1,
275
+ success: false,
276
+ output: {},
277
+ };
278
+ let mergedIds: SCANNED_RECORD = {
279
+ success: [],
280
+ failure: [],
281
+ pending: [prefixKey],
282
+ };
283
+ const filterIds = await getScanMergedObjectID();
284
+ if (filterIds) {
285
+ mergedIds = filterIds[prefixKey];
286
+ }
287
+
288
+ Object.keys(etOutput).forEach((mergedObjectiveId) => {
289
+ const _output = output[mergedObjectiveId].output;
290
+ // PREFIX_KEY
291
+ if (mergedObjectiveId === 'default') {
292
+ const defaultOutput = output['default'].output;
293
+ // DELIVER AT DIFF LOCATION
294
+ if (defaultOutput.eventCode === REASON_NOT_USED) {
295
+ // DO NOT SEND OUTPUT WHEN DELIVER AT DIFF LOCATION
296
+ defaultOutput.eventCode = '';
297
+ defaultOutput.reasonCode = '';
298
+ lockTaskResponse = false;
299
+ } else {
300
+ defaultConfig = {
301
+ index: promises.length,
302
+ success: defaultOutput.success,
303
+ output: output['default'],
304
+ };
305
+
306
+ promises.push(
307
+ dispatchExecutor.saveTaskOutput(
308
+ mergedIds.pending,
309
+ taskName,
310
+ taskID,
311
+ {
312
+ input,
313
+ output: defaultOutput,
314
+ },
315
+ {
316
+ ec: defaultOutput.eventCode,
317
+ rc: defaultOutput.reasonCode || '',
318
+ }
319
+ )
320
+ );
321
+ }
322
+ } else {
323
+ promises.push(
324
+ dispatchExecutor.saveTaskOutput(
325
+ [mergedObjectiveId],
326
+ taskName,
327
+ taskID,
328
+ {
329
+ input,
330
+ output: _output,
331
+ }
332
+ )
333
+ );
334
+ }
335
+ });
336
+
337
+ const response = await Promise.all(promises);
338
+
339
+ if (defaultConfig.index !== -1) {
340
+ // UPDATE PENDING IN SHARED PREFERENCE MERGED_SCAN_OUTPUT
341
+ this.updatePendingSharedPreference(
342
+ defaultConfig.success,
343
+ response[defaultConfig.index],
344
+ prefixKey
345
+ );
346
+ this.updateScanETOutputSharedPreference(
347
+ defaultConfig.output,
348
+ response[defaultConfig.index],
349
+ prefixKey
350
+ );
351
+ }
352
+ } else {
353
+ await dispatchExecutor.saveTaskOutput(
354
+ mergedObjectiveIds,
355
+ taskName,
356
+ taskID,
357
+ {
358
+ input,
359
+ output: etOutput,
360
+ }
361
+ );
362
+ }
363
+ }
364
+
365
+ private findPrefixKey(
366
+ mergedObjectiveIds: Array<string>,
367
+ scanOutput: { [mergedObjectiveId: string]: any },
368
+ routeParams: any
369
+ ) {
370
+ const prefixedMergedObjectiveId =
371
+ routeParams[RouteParams.ROOT_META_DATA].prefixedMergedObjectiveId;
372
+
373
+ return prefixedMergedObjectiveId;
374
+ }
375
+
376
+ public static getInstance(): DispatchStateContainer {
377
+ if (!DispatchStateContainer.instance) {
378
+ DispatchStateContainer.instance = new DispatchStateContainer();
379
+ }
380
+ return DispatchStateContainer.instance;
381
+ }
382
+
383
+ public setSuccessRoute(route: string) {
384
+ this.successRoute = route;
385
+ }
386
+ public getSuccessRoute(): string | null {
387
+ return this.successRoute;
388
+ }
389
+ public setFailureRoute(route: string) {
390
+ this.failureRoute = route;
391
+ }
392
+ public getFailureRoute(): string | null {
393
+ return this.failureRoute;
394
+ }
395
+ public async getObjectiveSummary(
396
+ jobObjective: JobObjectiveType
397
+ ): Promise<ETSummary[]> {
398
+ try {
399
+ let response: ETSummary[] = [];
400
+ let summaryData =
401
+ await EventsSyncManager.getInstance().getObjectiveSummary(
402
+ jobObjective.jobId + jobObjective.objectiveId
403
+ );
404
+ if (summaryData) {
405
+ for (const k in summaryData) {
406
+ if (k === 'inputs') continue;
407
+ else {
408
+ const reason =
409
+ await ReasonCodeContainer.getInstance().getReasonByCode(
410
+ summaryData[k].output.reasonCode
411
+ );
412
+ response.push({
413
+ eventCode: summaryData[k].output.eventCode,
414
+ reasonCode: summaryData[k].output.reasonCode,
415
+ reasonCodeDesc: reason?.description,
416
+ name: k,
417
+ });
418
+ }
419
+ }
420
+ return response;
421
+ } else return response;
422
+ } catch (error: any) {
423
+ Logger.getInstance().logEvent(
424
+ 'getObjectiveSummary',
425
+ error.message,
426
+ LOG_TYPE.SDK_ERROR
427
+ );
428
+ return [];
429
+ }
430
+ }
431
+ public async navigateToNextTask(
432
+ navigation: any,
433
+ route: any,
434
+ etOutput: any,
435
+ etSuccess: boolean,
436
+ entityCode: string,
437
+ eTaskID: ExecutionTaskID,
438
+ baseETProps: BaseETProps,
439
+ isLastTask?: boolean,
440
+ isMergeObjectiveBasedOutput?: boolean
441
+ ) {
442
+ try {
443
+ baseETProps.showProgress(true);
444
+ const mergedObjectiveIds =
445
+ route.params[RouteParams.NEXT_STATES].mergedObjectiveIds;
446
+ const reasonsContainer = ReasonCodeContainer.getInstance();
447
+ const eventsContainer = EventCodeContainer.getInstance();
448
+
449
+ if (isMergeObjectiveBasedOutput) {
450
+ await this.saveAndProceed(
451
+ baseETProps,
452
+ etOutput,
453
+ route.params,
454
+ navigation,
455
+ isLastTask,
456
+ isMergeObjectiveBasedOutput
457
+ );
458
+ } else {
459
+ const _eventCode = etOutput.eventCode;
460
+
461
+ if (etSuccess) {
462
+ if (!_eventCode) {
463
+ const _successApplicable =
464
+ route.params[RouteParams.NEXT_STATES].input.applicableReasons
465
+ .success;
466
+ const successEventCodes = await eventsContainer.getEventCodes(
467
+ _successApplicable
468
+ );
469
+ let rParams: any;
470
+ rParams = { ...route.params };
471
+ rParams[RouteParams.ET_SUCCESS] = true;
472
+ rParams[RouteParams.ET_SUCCESS_RESPONSE] = etOutput;
473
+ rParams[RouteParams.CURRENT_ET_NAME] = eTaskID;
474
+ rParams[RouteParams.IS_LAST_ET] = isLastTask;
475
+ rParams[RouteParams.EVENT_CODES] = successEventCodes;
476
+ rParams[RouteParams.APPLICABLE_CODES] = _successApplicable;
477
+ rParams[RouteParams.IS_MERGED_OBJ_BASED_OUTPUT] =
478
+ isMergeObjectiveBasedOutput;
479
+ rParams[RouteParams.ROOT_META_DATA] =
480
+ route.params[RouteParams.ROOT_META_DATA];
481
+
482
+ rParams[RouteParams.CANCEL_EVENT] = '';
483
+ navigation.replace(CustomScreens.REMARK_SCREEN, rParams);
484
+ } else {
485
+ const successCodes = await reasonsContainer.getReasonCodes(
486
+ route.params[RouteParams.NEXT_STATES].input.applicableReasons
487
+ .success
488
+ ? route.params[RouteParams.NEXT_STATES].input.applicableReasons
489
+ .success
490
+ : route.params[RouteParams.NEXT_STATES].input.applicableReasons,
491
+ _eventCode
492
+ );
493
+
494
+ if (successCodes && successCodes.length > 0) {
495
+ if (successCodes.length === 1) {
496
+ if (isMergeObjectiveBasedOutput)
497
+ etOutput.baseResponse.reasonCode = successCodes[0].reasonCode;
498
+ else etOutput.reasonCode = successCodes[0].reasonCode;
499
+
500
+ await this.saveAndProceed(
501
+ baseETProps,
502
+ etOutput,
503
+ route.params,
504
+ navigation,
505
+ isLastTask,
506
+ isMergeObjectiveBasedOutput
507
+ );
508
+ } else {
509
+ let rParams: any;
510
+ rParams = { ...route.params };
511
+ rParams[RouteParams.ET_SUCCESS] = true;
512
+ rParams[RouteParams.ET_SUCCESS_RESPONSE] = etOutput;
513
+ rParams[RouteParams.CURRENT_ET_NAME] = eTaskID;
514
+ rParams[RouteParams.REASONS] = successCodes;
515
+ rParams[RouteParams.IS_LAST_ET] = isLastTask;
516
+ rParams[RouteParams.ROOT_META_DATA] =
517
+ route.params[RouteParams.ROOT_META_DATA];
518
+ rParams[RouteParams.CANCEL_EVENT] = _eventCode;
519
+ navigation.replace(CustomScreens.REMARK_SCREEN, rParams);
520
+ }
521
+ } else {
522
+ await this.saveAndProceed(
523
+ baseETProps,
524
+ etOutput,
525
+ route.params,
526
+ navigation,
527
+ isLastTask,
528
+ isMergeObjectiveBasedOutput
529
+ );
530
+ }
531
+ }
532
+ } else {
533
+ let failureCodes: any[] = [];
534
+ if (!_eventCode) {
535
+ const _failureApplicable =
536
+ route.params[RouteParams.NEXT_STATES].input.applicableReasons
537
+ .failure;
538
+ const failureEventCodes = await eventsContainer.getEventCodes(
539
+ _failureApplicable
540
+ );
541
+
542
+ let rParams: any;
543
+ rParams = { ...route.params };
544
+ rParams[RouteParams.ET_SUCCESS] = false;
545
+ // rParams[RouteParams.ET_SUCCESS_RESPONSE] = etOutput;
546
+ rParams[RouteParams.CURRENT_ET_NAME] = eTaskID;
547
+ rParams[RouteParams.IS_LAST_ET] = isLastTask;
548
+ rParams[RouteParams.EVENT_CODES] = failureEventCodes;
549
+ rParams[RouteParams.APPLICABLE_CODES] = _failureApplicable;
550
+ rParams[RouteParams.ROOT_META_DATA] =
551
+ route.params[RouteParams.ROOT_META_DATA];
552
+ rParams[RouteParams.CANCEL_EVENT] = '';
553
+ navigation.replace(CustomScreens.REMARK_SCREEN, rParams);
554
+ } else {
555
+ if (_eventCode === GO_BACK_EVENT_CODE) failureCodes = [];
556
+ else
557
+ failureCodes = await reasonsContainer.getReasonCodes(
558
+ route.params[RouteParams.NEXT_STATES].input.applicableReasons
559
+ .failure
560
+ ? route.params[RouteParams.NEXT_STATES].input
561
+ .applicableReasons.failure
562
+ : route.params[RouteParams.NEXT_STATES].input
563
+ .applicableReasons,
564
+ _eventCode
565
+ );
566
+
567
+ if (failureCodes && failureCodes.length > 0) {
568
+ if (isMergeObjectiveBasedOutput)
569
+ etOutput.baseResponse.reasonCode = failureCodes[0].reasonCode;
570
+
571
+ if (failureCodes.length === 1) {
572
+ await this.saveAndProceed(
573
+ baseETProps,
574
+ isMergeObjectiveBasedOutput
575
+ ? etOutput
576
+ : await getBaseETResponse(
577
+ entityCode,
578
+ false,
579
+ _eventCode,
580
+ failureCodes[0].reasonCode,
581
+ mergedObjectiveIds,
582
+ eTaskID
583
+ ),
584
+ route.params,
585
+ navigation,
586
+ isLastTask,
587
+ isMergeObjectiveBasedOutput
588
+ );
589
+ } else {
590
+ let rParams: any;
591
+ rParams = { ...route.params };
592
+ rParams[RouteParams.ET_SUCCESS] = false;
593
+ rParams[RouteParams.CURRENT_ET_NAME] = eTaskID;
594
+ rParams[RouteParams.REASONS] = failureCodes;
595
+ rParams[RouteParams.IS_LAST_ET] = isLastTask;
596
+ rParams[RouteParams.ROOT_META_DATA] =
597
+ route.params[RouteParams.ROOT_META_DATA];
598
+ rParams[RouteParams.CANCEL_EVENT] = _eventCode;
599
+ navigation.replace(CustomScreens.REMARK_SCREEN, rParams);
600
+ }
601
+ } else {
602
+ await this.saveAndProceed(
603
+ baseETProps,
604
+ isMergeObjectiveBasedOutput
605
+ ? etOutput
606
+ : await getBaseETResponse(
607
+ entityCode,
608
+ false,
609
+ _eventCode,
610
+ '',
611
+ mergedObjectiveIds,
612
+ eTaskID
613
+ ),
614
+ route.params,
615
+ navigation,
616
+ isLastTask,
617
+ isMergeObjectiveBasedOutput
618
+ );
619
+ }
620
+ }
621
+ }
622
+ }
623
+ } catch (error: any) {
624
+ baseETProps.showProgress(false);
625
+ Logger.getInstance().logEvent(
626
+ 'navigateToNextTask',
627
+ error.message,
628
+ LOG_TYPE.SDK_ERROR
629
+ );
630
+ }
631
+ }
632
+
633
+ async moveToNextET(
634
+ etOutput: any,
635
+ baseETProps: BaseETProps,
636
+ states: stateParams,
637
+ navigation: any,
638
+ isLastTask?: boolean
639
+ ) {
640
+ try {
641
+ let etStates = states.next_states;
642
+ baseETProps.showProgress(true);
643
+
644
+ if (isLastTask && etStates && Object.keys(etStates).length > 0) {
645
+ if (this._mappedStates.size && this._stateKeys.length) {
646
+ const st = this._stateKeys.pop();
647
+ if (st) {
648
+ let rParams: any = {};
649
+ const _stData = this._mappedStates.get(st);
650
+ this._mappedStates.delete(st);
651
+ if (_stData) {
652
+ rParams[RouteParams.NEXT_STATES] = _stData;
653
+ rParams[RouteParams.ROOT_META_DATA] = states.rootMetaData;
654
+ navigation.replace(_stData.taskId, rParams);
655
+ }
656
+ }
657
+ } else {
658
+ baseETProps.showProgress(false);
659
+ // TODO: Remove this later
660
+ this.cache.clearKeys([this.cacheKeys.CURRENT_WORKING_TASK_ID]);
661
+
662
+ AppSyncManager.getInstance().isForceStartEnabled = true;
663
+ AppSyncManager.getInstance().isSyncActive = false;
664
+ AppSyncManager.getInstance().startSDKSyncManager();
665
+
666
+ let objSummary: {
667
+ success?: ObjectiveSummary[];
668
+ failure?: ObjectiveSummary[];
669
+ } = {
670
+ success: [],
671
+ failure: [],
672
+ };
673
+ for (let [_key, _value] of this._mappedStatesData) {
674
+ const _objKey =
675
+ _key === ExecutionTaskID.COMPLETED_SUCCESS
676
+ ? 'success'
677
+ : 'failure';
678
+
679
+ const lastERCData = await DispatchExecutor.getlastERC(
680
+ _value.mergedObjectiveIds
681
+ );
682
+
683
+ for (const _lastER of lastERCData) {
684
+ const reason =
685
+ await ReasonCodeContainer.getInstance().getReasonByCode(
686
+ _lastER.lastReasonCode
687
+ );
688
+
689
+ objSummary[_objKey]?.push({
690
+ entityCode: _lastER.lastEntityCode,
691
+ eventCode: _lastER.lastEventCode,
692
+ reasonCode: _lastER.lastReasonCode,
693
+ reasonCodeDesc: reason?.description,
694
+ });
695
+ }
696
+ }
697
+ if (this._mappedStatesData.get(ExecutionTaskID.COMPLETED_SUCCESS)) {
698
+ this._mappedStatesData.clear();
699
+ this._mappedStates.clear();
700
+ this._stateKeys = [];
701
+
702
+ clearScanOutput(states.rootMetaData.prefixedMergedObjectiveId);
703
+
704
+ navigation.replace(this.getSuccessRoute(), {
705
+ summary: objSummary,
706
+ objSuccess: true,
707
+ });
708
+ } else {
709
+ this._mappedStatesData.clear();
710
+ this._mappedStates.clear();
711
+ this._stateKeys = [];
712
+
713
+ clearScanOutput(states.rootMetaData.prefixedMergedObjectiveId);
714
+
715
+ navigation.replace(this.getFailureRoute(), {
716
+ summary: objSummary,
717
+ objSuccess: false,
718
+ });
719
+ }
720
+ }
721
+ } else {
722
+ let rParams: any = {};
723
+
724
+ let nextStateDataArray: IDispatch.IExecutionTaskQueryResponse[] =
725
+ await this.queryNextET(
726
+ states.next_states.mergedObjectiveIds,
727
+ states.rootMetaData.statusFilter
728
+ );
729
+
730
+ const storeTerminalData = nextStateDataArray.every(
731
+ (_state) =>
732
+ _state.taskId === ExecutionTaskID.COMPLETED_SUCCESS ||
733
+ _state.taskId === ExecutionTaskID.COMPLETED_FAILURE
734
+ );
735
+
736
+ if (storeTerminalData) {
737
+ if (nextStateDataArray.length === 2) {
738
+ // Array in case of last states containing c-s and c-f
739
+ this._mappedStates.set(
740
+ nextStateDataArray[1].taskId,
741
+ nextStateDataArray[1]
742
+ );
743
+ this._stateKeys.push(nextStateDataArray[1].taskId);
744
+ }
745
+ nextStateDataArray.forEach((data) => {
746
+ if (
747
+ data.taskId === ExecutionTaskID.COMPLETED_SUCCESS ||
748
+ data.taskId === ExecutionTaskID.COMPLETED_FAILURE
749
+ )
750
+ this._mappedStatesData.set(data.taskId, data);
751
+ });
752
+ }
753
+ const nextStateData = nextStateDataArray[0];
754
+
755
+ baseETProps.showProgress(false);
756
+ if (nextStateData != null && Object.keys(nextStateData).length > 0) {
757
+ rParams[RouteParams.NEXT_STATES] = nextStateData;
758
+
759
+ rParams[RouteParams.ROOT_META_DATA] = states.rootMetaData;
760
+
761
+ /**
762
+ * Send END/BACK custom event
763
+ */
764
+ if (!isLastTask) {
765
+ const eventOutputData: endEvent = {
766
+ meta: etOutput?.baseResponse?.meta || etOutput?.meta || {},
767
+ etData: etOutput,
768
+ taskId: etStates.taskId,
769
+ nextTaskId: '',
770
+ timestamp: Date.now(),
771
+ customData: rParams[RouteParams.ROOT_META_DATA].customEventsData,
772
+ };
773
+
774
+ eventOutputData.nextTaskId = nextStateData.taskId;
775
+ eventOutputData.etData.eventCode !== GO_BACK_EVENT_CODE
776
+ ? dispatchEvent('END', etStates.taskName, eventOutputData)
777
+ : dispatchEvent('BACK', etStates.taskName, eventOutputData);
778
+ }
779
+ }
780
+
781
+ navigation.replace(nextStateData.taskId, rParams);
782
+ }
783
+ } catch (error: any) {
784
+ baseETProps.showProgress(false);
785
+ Logger.getInstance().logEvent(
786
+ 'moveToNextET',
787
+ error.message,
788
+ LOG_TYPE.SDK_ERROR
789
+ );
790
+ }
791
+ }
792
+
793
+ private saveAndProceedToNextET = debounce(
794
+ async (
795
+ baseETProps: BaseETProps,
796
+ etOutput: any,
797
+ states: stateParams,
798
+ navigation: any,
799
+ isLastTask?: boolean,
800
+ isMergedObjectiveBasedOutput?: boolean
801
+ ) => {
802
+ try {
803
+ await this.sendETOutput(etOutput, states, isMergedObjectiveBasedOutput);
804
+ await this.moveToNextET(
805
+ etOutput,
806
+ baseETProps,
807
+ states,
808
+ navigation,
809
+ isLastTask
810
+ );
811
+ } catch (error: any) {
812
+ Logger.getInstance().logEvent(
813
+ 'saveAndProceed',
814
+ error.message,
815
+ LOG_TYPE.SDK_ERROR
816
+ );
817
+ baseETProps.showProgress(false);
818
+ showToast(error.message);
819
+ }
820
+ },
821
+ 800
822
+ );
823
+
824
+ public async saveAndProceed(
825
+ baseETProps: BaseETProps,
826
+ etOutput: any,
827
+ states: stateParams,
828
+ navigation: any,
829
+ isLastTask?: boolean,
830
+ isMergedObjectiveBasedOutput?: boolean
831
+ ) {
832
+ baseETProps.showProgress(true);
833
+ await this.saveAndProceedToNextET(
834
+ baseETProps,
835
+ etOutput,
836
+ states,
837
+ navigation,
838
+ isLastTask,
839
+ isMergedObjectiveBasedOutput
840
+ );
841
+ }
842
+ }