@os1-platform/dispatch-mobile 1.3.11 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +198 -30
- package/android/.gradle/7.0.2/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.2/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/7.2/executionHistory/executionHistory.bin +0 -0
- package/android/.gradle/7.2/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/7.2/fileChanges/last-build.bin +0 -0
- package/android/.gradle/7.2/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/7.2/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.2/fileHashes/resourceHashesCache.bin +0 -0
- package/android/.gradle/7.2/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +2 -2
- package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
- package/android/.gradle/checksums/checksums.lock +0 -0
- package/android/.gradle/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/checksums/sha1-checksums.bin +0 -0
- package/android/.idea/compiler.xml +6 -0
- package/android/.idea/gradle.xml +6 -1
- package/android/.idea/jarRepositories.xml +35 -0
- package/android/.idea/kotlinc.xml +6 -0
- package/android/.idea/misc.xml +6 -1
- package/android/local.properties +1 -1
- package/android/src/main/java/com/dispatchsdk/DispatchSdkPackage.kt +3 -1
- package/android/src/main/java/com/dispatchsdk/sharedPref/SharedPreferenceModule.kt +166 -0
- package/lib/commonjs/@types/assets/index.d.js +2 -0
- package/lib/commonjs/@types/assets/index.d.js.map +1 -0
- package/lib/commonjs/components/dispatch/DispatchExecNavigator.js +4 -4
- package/lib/commonjs/components/dispatch/DispatchExecNavigator.js.map +1 -1
- package/lib/commonjs/components/executiontasks/ExecutionTasksIndex.js +0 -28
- package/lib/commonjs/components/executiontasks/ExecutionTasksIndex.js.map +1 -1
- package/lib/commonjs/components/executiontasks/cancellation/CancelET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/captureInput/CaptureText.js +35 -35
- package/lib/commonjs/components/executiontasks/captureInput/CaptureText.js.map +1 -1
- package/lib/commonjs/components/executiontasks/captureInput/utils.js +13 -0
- package/lib/commonjs/components/executiontasks/captureInput/utils.js.map +1 -0
- package/lib/commonjs/components/executiontasks/deliver/DeliverET.js +3 -7
- package/lib/commonjs/components/executiontasks/deliver/DeliverET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
- package/lib/commonjs/components/executiontasks/deliver/SLDeliverET.js +181 -112
- package/lib/commonjs/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/display/DisplayModalET.js +16 -16
- package/lib/commonjs/components/executiontasks/display/DisplayModalET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/doodle/SignatureET.js +37 -34
- package/lib/commonjs/components/executiontasks/doodle/SignatureET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/dropCash/DropCashET.js +2 -2
- package/lib/commonjs/components/executiontasks/dropCash/DropCashET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js +52 -52
- package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/FormGenerator.js +71 -66
- package/lib/commonjs/components/executiontasks/forms/FormGenerator.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/widgets/DropdownWidget.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js +1 -1
- package/lib/commonjs/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/widgets/TimeRangeSelector.js.map +1 -1
- package/lib/commonjs/components/executiontasks/httpRequest/HttpEtUtils.js +2 -2
- package/lib/commonjs/components/executiontasks/httpRequest/HttpEtUtils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestET.js +3 -3
- package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/CaptureSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js +6 -3
- package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +34 -34
- package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/PaymentUtils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js +54 -54
- package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js +33 -33
- package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js +33 -33
- package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/pickup/PickupET.js +3 -7
- package/lib/commonjs/components/executiontasks/pickup/PickupET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js +106 -47
- package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/ScanET.js +326 -428
- package/lib/commonjs/components/executiontasks/scan/ScanET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/ScanSchema.js +13 -0
- package/lib/commonjs/components/executiontasks/scan/ScanSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/interfaces.js +15 -1
- package/lib/commonjs/components/executiontasks/scan/interfaces.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/modalConstant.js +104 -0
- package/lib/commonjs/components/executiontasks/scan/modalConstant.js.map +1 -0
- package/lib/commonjs/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/sub_components/DropDownUtils.js +72 -37
- package/lib/commonjs/components/executiontasks/scan/sub_components/DropDownUtils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/sub_components/ERDropDown.js +9 -7
- package/lib/commonjs/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js +1096 -0
- package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -0
- package/lib/commonjs/components/executiontasks/scan/utils.js +548 -159
- package/lib/commonjs/components/executiontasks/scan/utils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js +52 -53
- package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js +4 -0
- package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
- package/lib/commonjs/components/executiontasks/validateOTP/utils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/verifyLocation/GeofenceUtils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocationET.js +1 -1
- package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocationET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpET.js +1 -1
- package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpSchema.js.map +1 -1
- package/lib/commonjs/components/utils/index.js +14 -0
- package/lib/commonjs/components/utils/index.js.map +1 -0
- package/lib/commonjs/components/widgets/AlertDisplay.js.map +1 -1
- package/lib/commonjs/components/widgets/CancelOrderDialog.js.map +1 -1
- package/lib/commonjs/components/widgets/Card.js +88 -0
- package/lib/commonjs/components/widgets/Card.js.map +1 -0
- package/lib/commonjs/components/widgets/GoBackModal.js +48 -0
- package/lib/commonjs/components/widgets/GoBackModal.js.map +1 -0
- package/lib/commonjs/components/widgets/IconButton.js.map +1 -1
- package/lib/commonjs/components/widgets/ModalWidget.js +99 -0
- package/lib/commonjs/components/widgets/ModalWidget.js.map +1 -0
- package/lib/commonjs/components/widgets/ProgressDialog.js.map +1 -1
- package/lib/commonjs/components/widgets/SearchBar.js +74 -0
- package/lib/commonjs/components/widgets/SearchBar.js.map +1 -0
- package/lib/commonjs/components/widgets/SnackBarCustom.js +12 -4
- package/lib/commonjs/components/widgets/SnackBarCustom.js.map +1 -1
- package/lib/commonjs/components/widgets/SplitTextInput.js.map +1 -1
- package/lib/commonjs/components/widgets/TabsComponent.js +64 -0
- package/lib/commonjs/components/widgets/TabsComponent.js.map +1 -0
- package/lib/commonjs/constants/apiConstants.js +3 -1
- package/lib/commonjs/constants/apiConstants.js.map +1 -1
- package/lib/commonjs/constants/constants.js +2 -2
- package/lib/commonjs/constants/constants.js.map +1 -1
- package/lib/commonjs/events/EventDispatcher.js +1 -5
- package/lib/commonjs/events/EventDispatcher.js.map +1 -1
- package/lib/commonjs/events/constants.js +3 -1
- package/lib/commonjs/events/constants.js.map +1 -1
- package/lib/commonjs/events/interface.js.map +1 -1
- package/lib/commonjs/icons/file.js +24 -0
- package/lib/commonjs/icons/file.js.map +1 -0
- package/lib/commonjs/icons/interface.js +2 -0
- package/lib/commonjs/icons/interface.js.map +1 -0
- package/lib/commonjs/index.js +32 -13
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/manager/dispatch/DispatchStateContainer.js +315 -609
- package/lib/commonjs/manager/dispatch/DispatchStateContainer.js.map +1 -1
- package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
- package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
- package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
- package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
- package/lib/commonjs/manager/jobRemoval/JobRemovalManager.js +21 -25
- package/lib/commonjs/manager/jobRemoval/JobRemovalManager.js.map +1 -1
- package/lib/commonjs/manager/location/LocationManager.js.map +1 -1
- package/lib/commonjs/manager/sdk/DispatchSDKManager.js +15 -1
- package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
- package/lib/commonjs/manager/sdk/DispatchSdkCache.js +2 -2
- package/lib/commonjs/manager/sdk/DispatchSdkCache.js.map +1 -1
- package/lib/commonjs/manager/sdk/callbacksHandler.js +26 -0
- package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -0
- package/lib/commonjs/manager/syncmanager/AppSyncManager.js +15 -1
- package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/DBConfig.js +36 -3
- package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/constants.js +17 -0
- package/lib/commonjs/manager/syncmanager/constants.js.map +1 -0
- package/lib/commonjs/manager/syncmanager/database.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +11 -17
- package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +5 -6
- package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +16 -6
- package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js +377 -26
- package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +183 -65
- package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js +150 -37
- package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
- package/lib/commonjs/models/DispatchModels.js.map +1 -1
- package/lib/commonjs/models/execTasks/ETBaseModels.js +4 -0
- package/lib/commonjs/models/execTasks/ETBaseModels.js.map +1 -1
- package/lib/commonjs/models/sdk.js.map +1 -1
- package/lib/commonjs/native/signature/SignatureCapture.js.map +1 -1
- package/lib/commonjs/network/GraphQLClient.js.map +1 -1
- package/lib/commonjs/network/NetworkClient.js.map +1 -1
- package/lib/commonjs/network/NetworkUtils.js.map +1 -1
- package/lib/commonjs/network/client.js.map +1 -1
- package/lib/commonjs/resources/Login.js.map +1 -1
- package/lib/commonjs/resources/network.js.map +1 -1
- package/lib/commonjs/styles/SdkColors.js +4 -2
- package/lib/commonjs/styles/SdkColors.js.map +1 -1
- package/lib/commonjs/styles/executionTasks/CommonStyles.js +19 -10
- package/lib/commonjs/styles/executionTasks/CommonStyles.js.map +1 -1
- package/lib/commonjs/ui/screens/CancellationScreen.js +38 -7
- package/lib/commonjs/ui/screens/CancellationScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/CaptureInputScreen.js +11 -3
- package/lib/commonjs/ui/screens/CaptureInputScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js +11 -4
- package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DeliverScreen.js +26 -4
- package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DisplayScreen.js +11 -2
- package/lib/commonjs/ui/screens/DisplayScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DoodleScreen.js +13 -6
- package/lib/commonjs/ui/screens/DoodleScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DropCashScreen.js +39 -15
- package/lib/commonjs/ui/screens/DropCashScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ETScreensIndex.js +0 -7
- package/lib/commonjs/ui/screens/ETScreensIndex.js.map +1 -1
- package/lib/commonjs/ui/screens/FormsScreen.js +95 -28
- package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/GeofenceScreen.js +10 -2
- package/lib/commonjs/ui/screens/GeofenceScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/HttpRequestScreen.js +10 -2
- package/lib/commonjs/ui/screens/HttpRequestScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ImageCaptureScreen.js +26 -18
- package/lib/commonjs/ui/screens/ImageCaptureScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PaymentScreen.js +22 -11
- package/lib/commonjs/ui/screens/PaymentScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PickupScreen.js +34 -8
- package/lib/commonjs/ui/screens/PickupScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ScanScreen.js +72 -219
- package/lib/commonjs/ui/screens/ScanScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/StartWorkFlowScreen.js +51 -16
- package/lib/commonjs/ui/screens/StartWorkFlowScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ValidateOTPScreen.js +13 -7
- package/lib/commonjs/ui/screens/ValidateOTPScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js.map +1 -1
- package/lib/commonjs/ui/uiConfig/RouteParams.js +20 -5
- package/lib/commonjs/ui/uiConfig/RouteParams.js.map +1 -1
- package/lib/commonjs/utils/ApiUtils.js +16 -2
- package/lib/commonjs/utils/ApiUtils.js.map +1 -1
- package/lib/commonjs/utils/ExecTaskUtils.js +33 -25
- package/lib/commonjs/utils/ExecTaskUtils.js.map +1 -1
- package/lib/commonjs/utils/Logger.js.map +1 -1
- package/lib/commonjs/utils/NetworkUtil.js.map +1 -1
- package/lib/commonjs/utils/SdkUtils.js.map +1 -1
- package/lib/commonjs/utils/SyncManagerUtils.js +37 -4
- package/lib/commonjs/utils/SyncManagerUtils.js.map +1 -1
- package/lib/commonjs/utils/fcm/FCM.js +64 -35
- package/lib/commonjs/utils/fcm/FCM.js.map +1 -1
- package/lib/commonjs/utils/fcm/FcmUtils.js +82 -46
- package/lib/commonjs/utils/fcm/FcmUtils.js.map +1 -1
- package/lib/commonjs/utils/helper.js.map +1 -1
- package/lib/commonjs/utils/hooks/useModal.js +53 -0
- package/lib/commonjs/utils/hooks/useModal.js.map +1 -0
- package/lib/commonjs/utils/loginHelper.js.map +1 -1
- package/lib/commonjs/utils/storage.js +37 -2
- package/lib/commonjs/utils/storage.js.map +1 -1
- package/lib/commonjs/utils/utils.js.map +1 -1
- package/lib/module/@types/assets/index.d.js +2 -0
- package/lib/module/@types/assets/index.d.js.map +1 -0
- package/lib/module/components/dispatch/DispatchExecNavigator.js +4 -4
- package/lib/module/components/dispatch/DispatchExecNavigator.js.map +1 -1
- package/lib/module/components/executiontasks/ExecutionTasksIndex.js +1 -5
- package/lib/module/components/executiontasks/ExecutionTasksIndex.js.map +1 -1
- package/lib/module/components/executiontasks/cancellation/CancelET.js.map +1 -1
- package/lib/module/components/executiontasks/captureInput/CaptureText.js +38 -37
- package/lib/module/components/executiontasks/captureInput/CaptureText.js.map +1 -1
- package/lib/module/components/executiontasks/captureInput/utils.js +7 -0
- package/lib/module/components/executiontasks/captureInput/utils.js.map +1 -0
- package/lib/module/components/executiontasks/deliver/DeliverET.js +4 -8
- package/lib/module/components/executiontasks/deliver/DeliverET.js.map +1 -1
- package/lib/module/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
- package/lib/module/components/executiontasks/deliver/SLDeliverET.js +183 -114
- package/lib/module/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
- package/lib/module/components/executiontasks/display/DisplayModalET.js +16 -16
- package/lib/module/components/executiontasks/display/DisplayModalET.js.map +1 -1
- package/lib/module/components/executiontasks/doodle/SignatureET.js +39 -36
- package/lib/module/components/executiontasks/doodle/SignatureET.js.map +1 -1
- package/lib/module/components/executiontasks/dropCash/DropCashET.js +2 -2
- package/lib/module/components/executiontasks/dropCash/DropCashET.js.map +1 -1
- package/lib/module/components/executiontasks/dropCash/SLDropCash.js +53 -52
- package/lib/module/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
- package/lib/module/components/executiontasks/forms/FormGenerator.js +73 -68
- package/lib/module/components/executiontasks/forms/FormGenerator.js.map +1 -1
- package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
- package/lib/module/components/executiontasks/forms/widgets/DropdownWidget.js.map +1 -1
- package/lib/module/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js +1 -1
- package/lib/module/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js.map +1 -1
- package/lib/module/components/executiontasks/forms/widgets/TimeRangeSelector.js.map +1 -1
- package/lib/module/components/executiontasks/httpRequest/HttpEtUtils.js +3 -3
- package/lib/module/components/executiontasks/httpRequest/HttpEtUtils.js.map +1 -1
- package/lib/module/components/executiontasks/httpRequest/HttpRequestET.js +3 -3
- package/lib/module/components/executiontasks/httpRequest/HttpRequestET.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/CaptureSchema.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js +6 -3
- package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +36 -36
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/module/components/executiontasks/payments/PaymentUtils.js.map +1 -1
- package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js +55 -54
- package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
- package/lib/module/components/executiontasks/payments/init/InitPaymentET.js +35 -34
- package/lib/module/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
- package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentET.js +35 -35
- package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
- package/lib/module/components/executiontasks/pickup/PickupET.js +4 -8
- package/lib/module/components/executiontasks/pickup/PickupET.js.map +1 -1
- package/lib/module/components/executiontasks/pickup/SLPickupET.js +108 -49
- package/lib/module/components/executiontasks/pickup/SLPickupET.js.map +1 -1
- package/lib/module/components/executiontasks/scan/ScanET.js +332 -433
- package/lib/module/components/executiontasks/scan/ScanET.js.map +1 -1
- package/lib/module/components/executiontasks/scan/ScanSchema.js +16 -1
- package/lib/module/components/executiontasks/scan/ScanSchema.js.map +1 -1
- package/lib/module/components/executiontasks/scan/interfaces.js +12 -0
- package/lib/module/components/executiontasks/scan/interfaces.js.map +1 -1
- package/lib/module/components/executiontasks/scan/modalConstant.js +94 -0
- package/lib/module/components/executiontasks/scan/modalConstant.js.map +1 -0
- package/lib/module/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
- package/lib/module/components/executiontasks/scan/sub_components/DropDownUtils.js +72 -37
- package/lib/module/components/executiontasks/scan/sub_components/DropDownUtils.js.map +1 -1
- package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js +9 -7
- package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
- package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js +1089 -0
- package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -0
- package/lib/module/components/executiontasks/scan/utils.js +528 -160
- package/lib/module/components/executiontasks/scan/utils.js.map +1 -1
- package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js +54 -55
- package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
- package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js +4 -0
- package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
- package/lib/module/components/executiontasks/validateOTP/utils.js.map +1 -1
- package/lib/module/components/executiontasks/verifyLocation/GeofenceUtils.js.map +1 -1
- package/lib/module/components/executiontasks/verifyLocation/VerifyLocationET.js +1 -1
- package/lib/module/components/executiontasks/verifyLocation/VerifyLocationET.js.map +1 -1
- package/lib/module/components/executiontasks/verifyOtp/VerifyOtpET.js +2 -2
- package/lib/module/components/executiontasks/verifyOtp/VerifyOtpET.js.map +1 -1
- package/lib/module/components/executiontasks/verifyOtp/VerifyOtpSchema.js.map +1 -1
- package/lib/module/components/utils/index.js +8 -0
- package/lib/module/components/utils/index.js.map +1 -0
- package/lib/module/components/widgets/AlertDisplay.js.map +1 -1
- package/lib/module/components/widgets/CancelOrderDialog.js.map +1 -1
- package/lib/module/components/widgets/Card.js +80 -0
- package/lib/module/components/widgets/Card.js.map +1 -0
- package/lib/module/components/widgets/GoBackModal.js +40 -0
- package/lib/module/components/widgets/GoBackModal.js.map +1 -0
- package/lib/module/components/widgets/IconButton.js.map +1 -1
- package/lib/module/components/widgets/ModalWidget.js +92 -0
- package/lib/module/components/widgets/ModalWidget.js.map +1 -0
- package/lib/module/components/widgets/ProgressDialog.js.map +1 -1
- package/lib/module/components/widgets/SearchBar.js +66 -0
- package/lib/module/components/widgets/SearchBar.js.map +1 -0
- package/lib/module/components/widgets/SnackBarCustom.js +12 -4
- package/lib/module/components/widgets/SnackBarCustom.js.map +1 -1
- package/lib/module/components/widgets/SplitTextInput.js.map +1 -1
- package/lib/module/components/widgets/TabsComponent.js +55 -0
- package/lib/module/components/widgets/TabsComponent.js.map +1 -0
- package/lib/module/constants/apiConstants.js +3 -1
- package/lib/module/constants/apiConstants.js.map +1 -1
- package/lib/module/constants/constants.js +2 -2
- package/lib/module/constants/constants.js.map +1 -1
- package/lib/module/events/EventDispatcher.js +0 -3
- package/lib/module/events/EventDispatcher.js.map +1 -1
- package/lib/module/events/constants.js +3 -1
- package/lib/module/events/constants.js.map +1 -1
- package/lib/module/events/interface.js.map +1 -1
- package/lib/module/icons/file.js +16 -0
- package/lib/module/icons/file.js.map +1 -0
- package/lib/module/icons/interface.js +2 -0
- package/lib/module/icons/interface.js.map +1 -0
- package/lib/module/index.js +6 -3
- package/lib/module/index.js.map +1 -1
- package/lib/module/manager/dispatch/DispatchStateContainer.js +319 -610
- package/lib/module/manager/dispatch/DispatchStateContainer.js.map +1 -1
- package/lib/module/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
- package/lib/module/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
- package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
- package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
- package/lib/module/manager/jobRemoval/JobRemovalManager.js +21 -19
- package/lib/module/manager/jobRemoval/JobRemovalManager.js.map +1 -1
- package/lib/module/manager/location/LocationManager.js.map +1 -1
- package/lib/module/manager/sdk/DispatchSDKManager.js +15 -1
- package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
- package/lib/module/manager/sdk/DispatchSdkCache.js +2 -2
- package/lib/module/manager/sdk/DispatchSdkCache.js.map +1 -1
- package/lib/module/manager/sdk/callbacksHandler.js +19 -0
- package/lib/module/manager/sdk/callbacksHandler.js.map +1 -0
- package/lib/module/manager/syncmanager/AppSyncManager.js +15 -1
- package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
- package/lib/module/manager/syncmanager/DBConfig.js +32 -2
- package/lib/module/manager/syncmanager/DBConfig.js.map +1 -1
- package/lib/module/manager/syncmanager/constants.js +6 -0
- package/lib/module/manager/syncmanager/constants.js.map +1 -0
- package/lib/module/manager/syncmanager/database.js.map +1 -1
- package/lib/module/manager/syncmanager/document/DocumentHttpClient.js +11 -17
- package/lib/module/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
- package/lib/module/manager/syncmanager/document/DocumentManager.js +5 -6
- package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
- package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +16 -6
- package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
- package/lib/module/manager/syncmanager/events/ETEventsManager.js +377 -25
- package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
- package/lib/module/manager/syncmanager/events/EventsSyncManager.js +183 -65
- package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
- package/lib/module/manager/syncmanager/events/SyncHttpClient.js +147 -34
- package/lib/module/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
- package/lib/module/models/DispatchModels.js.map +1 -1
- package/lib/module/models/execTasks/ETBaseModels.js +1 -1
- package/lib/module/models/execTasks/ETBaseModels.js.map +1 -1
- package/lib/module/models/sdk.js.map +1 -1
- package/lib/module/native/signature/SignatureCapture.js.map +1 -1
- package/lib/module/network/GraphQLClient.js.map +1 -1
- package/lib/module/network/NetworkClient.js.map +1 -1
- package/lib/module/network/NetworkUtils.js.map +1 -1
- package/lib/module/network/client.js.map +1 -1
- package/lib/module/resources/Login.js.map +1 -1
- package/lib/module/resources/network.js.map +1 -1
- package/lib/module/styles/SdkColors.js +4 -2
- package/lib/module/styles/SdkColors.js.map +1 -1
- package/lib/module/styles/executionTasks/CommonStyles.js +19 -10
- package/lib/module/styles/executionTasks/CommonStyles.js.map +1 -1
- package/lib/module/ui/screens/CancellationScreen.js +39 -8
- package/lib/module/ui/screens/CancellationScreen.js.map +1 -1
- package/lib/module/ui/screens/CaptureInputScreen.js +12 -4
- package/lib/module/ui/screens/CaptureInputScreen.js.map +1 -1
- package/lib/module/ui/screens/CompleteObjectiveScreen.js +12 -5
- package/lib/module/ui/screens/CompleteObjectiveScreen.js.map +1 -1
- package/lib/module/ui/screens/DeliverScreen.js +27 -5
- package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
- package/lib/module/ui/screens/DisplayScreen.js +12 -3
- package/lib/module/ui/screens/DisplayScreen.js.map +1 -1
- package/lib/module/ui/screens/DoodleScreen.js +14 -7
- package/lib/module/ui/screens/DoodleScreen.js.map +1 -1
- package/lib/module/ui/screens/DropCashScreen.js +42 -16
- package/lib/module/ui/screens/DropCashScreen.js.map +1 -1
- package/lib/module/ui/screens/ETScreensIndex.js +1 -2
- package/lib/module/ui/screens/ETScreensIndex.js.map +1 -1
- package/lib/module/ui/screens/FormsScreen.js +96 -29
- package/lib/module/ui/screens/FormsScreen.js.map +1 -1
- package/lib/module/ui/screens/GeofenceScreen.js +11 -3
- package/lib/module/ui/screens/GeofenceScreen.js.map +1 -1
- package/lib/module/ui/screens/HttpRequestScreen.js +11 -3
- package/lib/module/ui/screens/HttpRequestScreen.js.map +1 -1
- package/lib/module/ui/screens/ImageCaptureScreen.js +27 -19
- package/lib/module/ui/screens/ImageCaptureScreen.js.map +1 -1
- package/lib/module/ui/screens/PaymentScreen.js +23 -12
- package/lib/module/ui/screens/PaymentScreen.js.map +1 -1
- package/lib/module/ui/screens/PickupScreen.js +36 -10
- package/lib/module/ui/screens/PickupScreen.js.map +1 -1
- package/lib/module/ui/screens/ScanScreen.js +74 -222
- package/lib/module/ui/screens/ScanScreen.js.map +1 -1
- package/lib/module/ui/screens/StartWorkFlowScreen.js +51 -16
- package/lib/module/ui/screens/StartWorkFlowScreen.js.map +1 -1
- package/lib/module/ui/screens/ValidateOTPScreen.js +14 -8
- package/lib/module/ui/screens/ValidateOTPScreen.js.map +1 -1
- package/lib/module/ui/screens/WithBaseDispatchScreen.js.map +1 -1
- package/lib/module/ui/uiConfig/RouteParams.js +19 -5
- package/lib/module/ui/uiConfig/RouteParams.js.map +1 -1
- package/lib/module/utils/ApiUtils.js +17 -2
- package/lib/module/utils/ApiUtils.js.map +1 -1
- package/lib/module/utils/ExecTaskUtils.js +33 -25
- package/lib/module/utils/ExecTaskUtils.js.map +1 -1
- package/lib/module/utils/Logger.js.map +1 -1
- package/lib/module/utils/NetworkUtil.js.map +1 -1
- package/lib/module/utils/SdkUtils.js.map +1 -1
- package/lib/module/utils/SyncManagerUtils.js +37 -4
- package/lib/module/utils/SyncManagerUtils.js.map +1 -1
- package/lib/module/utils/fcm/FCM.js +64 -35
- package/lib/module/utils/fcm/FCM.js.map +1 -1
- package/lib/module/utils/fcm/FcmUtils.js +82 -46
- package/lib/module/utils/fcm/FcmUtils.js.map +1 -1
- package/lib/module/utils/helper.js.map +1 -1
- package/lib/module/utils/hooks/useModal.js +43 -0
- package/lib/module/utils/hooks/useModal.js.map +1 -0
- package/lib/module/utils/loginHelper.js.map +1 -1
- package/lib/module/utils/storage.js +37 -2
- package/lib/module/utils/storage.js.map +1 -1
- package/lib/module/utils/utils.js.map +1 -1
- package/lib/typescript/components/dispatch/DispatchExecNavigator.d.ts +2 -2
- package/lib/typescript/components/executiontasks/ExecutionTasksIndex.d.ts +3 -8
- package/lib/typescript/components/executiontasks/cancellation/CancelET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/captureInput/CaptureText.d.ts +2 -2
- package/lib/typescript/components/executiontasks/captureInput/utils.d.ts +1 -0
- package/lib/typescript/components/executiontasks/deliver/DeliverET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/deliver/DeliverETInput.d.ts +1 -0
- package/lib/typescript/components/executiontasks/deliver/SLDeliverET.d.ts +3 -3
- package/lib/typescript/components/executiontasks/display/DisplayModalET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/doodle/SignatureET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/dropCash/DropCashET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/dropCash/SLDropCash.d.ts +2 -2
- package/lib/typescript/components/executiontasks/forms/FormGenerator.d.ts +2 -2
- package/lib/typescript/components/executiontasks/forms/widgets/DateTimeWidget.d.ts +2 -2
- package/lib/typescript/components/executiontasks/forms/widgets/DropdownWidget.d.ts +2 -2
- package/lib/typescript/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.d.ts +2 -2
- package/lib/typescript/components/executiontasks/forms/widgets/TimeRangeSelector.d.ts +2 -2
- package/lib/typescript/components/executiontasks/httpRequest/HttpEtUtils.d.ts +1 -1
- package/lib/typescript/components/executiontasks/httpRequest/HttpRequestET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/imageCapture/CaptureSchema.d.ts +1 -0
- package/lib/typescript/components/executiontasks/imageCapture/ImageCapture.d.ts +2 -2
- package/lib/typescript/components/executiontasks/payments/completePayment/CompletePaymentET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/payments/init/InitPaymentET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/payments/processPayment/ProcessPaymentET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/pickup/PickupET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/pickup/SLPickupET.d.ts +3 -3
- package/lib/typescript/components/executiontasks/scan/ScanET.d.ts +3 -3
- package/lib/typescript/components/executiontasks/scan/ScanSchema.d.ts +25 -9
- package/lib/typescript/components/executiontasks/scan/interfaces.d.ts +54 -1
- package/lib/typescript/components/executiontasks/scan/modalConstant.d.ts +37 -0
- package/lib/typescript/components/executiontasks/scan/sub_components/CScanner.d.ts +1 -1
- package/lib/typescript/components/executiontasks/scan/sub_components/DropDownUtils.d.ts +1 -1
- package/lib/typescript/components/executiontasks/scan/sub_components/ERDropDown.d.ts +1 -1
- package/lib/typescript/components/executiontasks/scan/sub_components/SummaryPage.d.ts +21 -0
- package/lib/typescript/components/executiontasks/scan/utils.d.ts +29 -13
- package/lib/typescript/components/executiontasks/validateOTP/ValidateOTPET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/validateOTP/sub-components/OTPInput.d.ts +2 -2
- package/lib/typescript/components/executiontasks/verifyLocation/VerifyLocationET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/verifyOtp/VerifyOtpET.d.ts +2 -2
- package/lib/typescript/components/executiontasks/verifyOtp/VerifyOtpSchema.d.ts +3 -3
- package/lib/typescript/components/utils/index.d.ts +2 -0
- package/lib/typescript/components/widgets/CancelOrderDialog.d.ts +2 -2
- package/lib/typescript/components/widgets/Card.d.ts +17 -0
- package/lib/typescript/components/widgets/GoBackModal.d.ts +9 -0
- package/lib/typescript/components/widgets/IconButton.d.ts +2 -2
- package/lib/typescript/components/widgets/ModalWidget.d.ts +30 -0
- package/lib/typescript/components/widgets/ProgressDialog.d.ts +2 -2
- package/lib/typescript/components/widgets/SearchBar.d.ts +10 -0
- package/lib/typescript/components/widgets/SnackBarCustom.d.ts +3 -2
- package/lib/typescript/components/widgets/SplitTextInput.d.ts +2 -2
- package/lib/typescript/components/widgets/TabsComponent.d.ts +15 -0
- package/lib/typescript/constants/apiConstants.d.ts +1 -0
- package/lib/typescript/constants/constants.d.ts +2 -2
- package/lib/typescript/events/EventDispatcher.d.ts +0 -2
- package/lib/typescript/events/constants.d.ts +2 -0
- package/lib/typescript/events/interface.d.ts +1 -1
- package/lib/typescript/icons/file.d.ts +4 -0
- package/lib/typescript/icons/interface.d.ts +5 -0
- package/lib/typescript/index.d.ts +8 -6
- package/lib/typescript/manager/dispatch/DispatchStateContainer.d.ts +27 -19
- package/lib/typescript/manager/jobRemoval/JobRemovalManager.d.ts +0 -6
- package/lib/typescript/manager/sdk/DispatchSdkCache.d.ts +0 -1
- package/lib/typescript/manager/sdk/callbacksHandler.d.ts +13 -0
- package/lib/typescript/manager/syncmanager/AppSyncManager.d.ts +2 -1
- package/lib/typescript/manager/syncmanager/DBConfig.d.ts +63 -7
- package/lib/typescript/manager/syncmanager/constants.d.ts +5 -0
- package/lib/typescript/manager/syncmanager/document/DocumentManager.d.ts +1 -1
- package/lib/typescript/manager/syncmanager/document/DocumentSyncManager.d.ts +1 -1
- package/lib/typescript/manager/syncmanager/events/ETEventsManager.d.ts +11 -2
- package/lib/typescript/manager/syncmanager/events/EventsSyncManager.d.ts +3 -5
- package/lib/typescript/manager/syncmanager/events/SyncHttpClient.d.ts +4 -3
- package/lib/typescript/models/DispatchModels.d.ts +40 -41
- package/lib/typescript/models/execTasks/ETBaseModels.d.ts +21 -16
- package/lib/typescript/models/sdk.d.ts +7 -0
- package/lib/typescript/native/signature/SignatureCapture.d.ts +1 -1
- package/lib/typescript/styles/SdkColors.d.ts +1 -0
- package/lib/typescript/styles/executionTasks/CommonStyles.d.ts +16 -7
- package/lib/typescript/ui/screens/CancellationScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/CaptureInputScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/CompleteObjectiveScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/DeliverScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/DisplayScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/DoodleScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/DropCashScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/ETScreensIndex.d.ts +1 -2
- package/lib/typescript/ui/screens/FormsScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/GeofenceScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/HttpRequestScreen.d.ts +1 -1
- package/lib/typescript/ui/screens/ImageCaptureScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/PaymentScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/PickupScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/ScanScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/StartWorkFlowScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/ValidateOTPScreen.d.ts +2 -2
- package/lib/typescript/ui/screens/WithBaseDispatchScreen.d.ts +2 -2
- package/lib/typescript/ui/uiConfig/RouteParams.d.ts +10 -4
- package/lib/typescript/utils/ExecTaskUtils.d.ts +5 -4
- package/lib/typescript/utils/SyncManagerUtils.d.ts +4 -5
- package/lib/typescript/utils/hooks/useModal.d.ts +6 -0
- package/lib/typescript/utils/storage.d.ts +15 -0
- package/package.json +5 -4
- package/tsconfig.json +0 -1
- package/android/.gradle/6.8/fileHashes/fileHashes.lock +0 -0
- package/android/.idea/workspace.xml +0 -131
- package/lib/commonjs/components/executiontasks/doodle/DoodleUtils.js +0 -26
- package/lib/commonjs/components/executiontasks/doodle/DoodleUtils.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scan/sub_components/ScanList.js +0 -134
- package/lib/commonjs/components/executiontasks/scan/sub_components/ScanList.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scanner/CScanner.js +0 -105
- package/lib/commonjs/components/executiontasks/scanner/CScanner.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scanner/ScannerSchema.js +0 -27
- package/lib/commonjs/components/executiontasks/scanner/ScannerSchema.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scanner/ScannerUtils.js +0 -164
- package/lib/commonjs/components/executiontasks/scanner/ScannerUtils.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scanner/returns/DropDownSelector.js +0 -15
- package/lib/commonjs/components/executiontasks/scanner/returns/DropDownSelector.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scanner/returns/DropDownUtils.js +0 -40
- package/lib/commonjs/components/executiontasks/scanner/returns/DropDownUtils.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scanner/returns/RTReasonSelection.js +0 -93
- package/lib/commonjs/components/executiontasks/scanner/returns/RTReasonSelection.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scanner/returns/RTScan.js +0 -278
- package/lib/commonjs/components/executiontasks/scanner/returns/RTScan.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scanner/returns/ReasonDropDown.js +0 -83
- package/lib/commonjs/components/executiontasks/scanner/returns/ReasonDropDown.js.map +0 -1
- package/lib/commonjs/components/executiontasks/scanner/returns/ScanList.js +0 -248
- package/lib/commonjs/components/executiontasks/scanner/returns/ScanList.js.map +0 -1
- package/lib/commonjs/ui/screens/RTScanScreen.js +0 -99
- package/lib/commonjs/ui/screens/RTScanScreen.js.map +0 -1
- package/lib/module/components/executiontasks/doodle/DoodleUtils.js +0 -19
- package/lib/module/components/executiontasks/doodle/DoodleUtils.js.map +0 -1
- package/lib/module/components/executiontasks/scan/sub_components/ScanList.js +0 -124
- package/lib/module/components/executiontasks/scan/sub_components/ScanList.js.map +0 -1
- package/lib/module/components/executiontasks/scanner/CScanner.js +0 -96
- package/lib/module/components/executiontasks/scanner/CScanner.js.map +0 -1
- package/lib/module/components/executiontasks/scanner/ScannerSchema.js +0 -24
- package/lib/module/components/executiontasks/scanner/ScannerSchema.js.map +0 -1
- package/lib/module/components/executiontasks/scanner/ScannerUtils.js +0 -146
- package/lib/module/components/executiontasks/scanner/ScannerUtils.js.map +0 -1
- package/lib/module/components/executiontasks/scanner/returns/DropDownSelector.js +0 -7
- package/lib/module/components/executiontasks/scanner/returns/DropDownSelector.js.map +0 -1
- package/lib/module/components/executiontasks/scanner/returns/DropDownUtils.js +0 -33
- package/lib/module/components/executiontasks/scanner/returns/DropDownUtils.js.map +0 -1
- package/lib/module/components/executiontasks/scanner/returns/RTReasonSelection.js +0 -83
- package/lib/module/components/executiontasks/scanner/returns/RTReasonSelection.js.map +0 -1
- package/lib/module/components/executiontasks/scanner/returns/RTScan.js +0 -269
- package/lib/module/components/executiontasks/scanner/returns/RTScan.js.map +0 -1
- package/lib/module/components/executiontasks/scanner/returns/ReasonDropDown.js +0 -73
- package/lib/module/components/executiontasks/scanner/returns/ReasonDropDown.js.map +0 -1
- package/lib/module/components/executiontasks/scanner/returns/ScanList.js +0 -238
- package/lib/module/components/executiontasks/scanner/returns/ScanList.js.map +0 -1
- package/lib/module/ui/screens/RTScanScreen.js +0 -89
- package/lib/module/ui/screens/RTScanScreen.js.map +0 -1
- package/lib/typescript/components/executiontasks/doodle/DoodleUtils.d.ts +0 -3
- package/lib/typescript/components/executiontasks/scan/sub_components/ScanList.d.ts +0 -8
- package/lib/typescript/components/executiontasks/scanner/CScanner.d.ts +0 -7
- package/lib/typescript/components/executiontasks/scanner/ScannerSchema.d.ts +0 -75
- package/lib/typescript/components/executiontasks/scanner/ScannerUtils.d.ts +0 -15
- package/lib/typescript/components/executiontasks/scanner/returns/DropDownSelector.d.ts +0 -3
- package/lib/typescript/components/executiontasks/scanner/returns/DropDownUtils.d.ts +0 -2
- package/lib/typescript/components/executiontasks/scanner/returns/RTReasonSelection.d.ts +0 -7
- package/lib/typescript/components/executiontasks/scanner/returns/RTScan.d.ts +0 -4
- package/lib/typescript/components/executiontasks/scanner/returns/ReasonDropDown.d.ts +0 -14
- package/lib/typescript/components/executiontasks/scanner/returns/ScanList.d.ts +0 -17
- package/lib/typescript/ui/screens/RTScanScreen.d.ts +0 -3
- /package/android/.gradle/{6.8 → 7.0.2}/fileChanges/last-build.bin +0 -0
- /package/android/.gradle/{6.8 → 7.0.2}/gc.properties +0 -0
- /package/android/.gradle/{configuration-cache → 7.2/dependencies-accessors}/gc.properties +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isEmptyOrBlank","EVENTS_COLUMNS","EVENTS_TABLE","Database","SyncType","BaseError","BaseErrorCodes","InvalidArgumentsError","Logger","LOG_TYPE","ETEventsManager","constructor","_defineProperty","getInstance","instance","manager","init","executeQuery","ID","SEQUENCE","DISPATCH_ID","PAYLOAD","CONFIG","SYNC_TYPE","OBJECTIVE_REF","SYNCED","SYNC_ERROR","insertEvent","sequence","payload","dspID","syncType","objectiveRef","config","insertBulkEvent","_eventData","args","values","queryData","evIndex","forEach","_evData","index","data","dispatchId","InvalidArgumentError","push","JSON","stringify","meta","jobId","objectiveReference","length","query","join","executeBulkQuery","_retries","err","maxRetryCount","logEvent","toString","SDK_DEBUG","getAllEvents","dispatchID","resultSet","rows","_array","getAllUnsyncedEvents","deleteAllEvents","updateError","id","syncError","TypeError","markEventSynced","getWorkflowUpdateEvents","sqlResultSet","getJobRemovalEvents","getCustodyBatch","sqlResult","CUSTODY_IN_SCAN","CUSTODY_OUT_SCAN","getObjectiveDetails","rs"],"sources":["ETEventsManager.ts"],"sourcesContent":["import { isEmptyOrBlank } from '../../../utils/utils';\nimport { BulkEvent, EventRow, EVENTS_COLUMNS, EVENTS_TABLE } from '../DBConfig';\nimport type { ExecQuery } from '../database';\nimport * as Database from '../database';\nimport { SyncType } from '@os1-platform/mobile-execution-lib';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n} from '../../../errors/ErrorCodes';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\n\nexport default class ETEventsManager {\n private static instance: ETEventsManager;\n private maxRetryCount: number = 3;\n private _retries = 0;\n\n private constructor() {}\n\n public static async getInstance(): Promise<ETEventsManager> {\n if (!ETEventsManager.instance) {\n let manager = new ETEventsManager();\n await ETEventsManager.init();\n ETEventsManager.instance = manager;\n }\n return ETEventsManager.instance;\n }\n\n private static async init(): Promise<void> {\n await Database.executeQuery(\n `CREATE TABLE IF NOT EXISTS ${EVENTS_TABLE} (\\\n ${EVENTS_COLUMNS.ID} INTEGER PRIMARY KEY AUTOINCREMENT,\\\n ${EVENTS_COLUMNS.SEQUENCE} INTEGER NOT NULL,\\\n ${EVENTS_COLUMNS.DISPATCH_ID} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.PAYLOAD} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.CONFIG} TEXT,\\\n ${EVENTS_COLUMNS.SYNC_TYPE} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.OBJECTIVE_REF} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.SYNC_ERROR} TEXT);`,\n []\n );\n }\n\n async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n await Database.executeQuery(\n `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SEQUENCE},\\\n ${EVENTS_COLUMNS.CONFIG},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n values (?,?,?,?,?,?)`,\n [payload, dspID, sequence, config ?? null, syncType, objectiveRef]\n );\n }\n\n async insertBulkEvent(_eventData: BulkEvent[]): Promise<void> {\n try {\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n let evIndex = 100;\n\n _eventData.forEach((_evData, index) => {\n if (\n !_evData.sequence ||\n isEmptyOrBlank(_evData.data) ||\n isEmptyOrBlank(_evData.dispatchId) ||\n isEmptyOrBlank(_evData.syncType)\n )\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n\n values.push(`(?,?,?,?,?,?)`);\n args.push(\n _evData.data,\n _evData.dispatchId,\n _evData.sequence,\n _evData.config ? JSON.stringify(_evData.config) : null,\n _evData.syncType,\n _evData.meta\n ? _evData.meta.jobId + _evData.meta.objectiveReference\n : 'NO_REF_FOUND'\n );\n if (index === evIndex || index === _eventData.length - 1) {\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SEQUENCE},\\\n ${EVENTS_COLUMNS.CONFIG},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n evIndex = evIndex + evIndex;\n }\n });\n\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertBulkEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertBulkEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n if (dispatchID) {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.DISPATCH_ID} = ?;`,\n [dispatchID]\n );\n return resultSet.rows._array;\n } else {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE};`,\n []\n );\n return resultSet.rows._array;\n }\n }\n\n async getAllUnsyncedEvents(): Promise<EventRow[]> {\n let resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE} \\\n where ${EVENTS_COLUMNS.SYNCED} = 0;`,\n []\n );\n return resultSet.rows._array;\n }\n\n public deleteAllEvents() {\n return Database.executeQuery(`DELETE FROM ${EVENTS_TABLE};`, []);\n }\n\n async updateError(id: number, syncError: string): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} \\\n SET \\\n ${EVENTS_COLUMNS.SYNC_ERROR} = ? WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [syncError, id]\n );\n }\n\n async markEventSynced(id: number): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} SET ${EVENTS_COLUMNS.SYNCED} = 1 WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [id]\n );\n }\n\n async getWorkflowUpdateEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getJobRemovalEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getCustodyBatch(dispatchID: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0 and \\\n (${EVENTS_COLUMNS.SYNC_TYPE} = ? or ${EVENTS_COLUMNS.SYNC_TYPE} = ?) \\\n and ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [SyncType.CUSTODY_IN_SCAN, SyncType.CUSTODY_OUT_SCAN, dispatchID]\n );\n return sqlResult.rows._array;\n }\n async getObjectiveDetails(objectiveRef: string): Promise<EventRow[]> {\n let rs = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE} WHERE ${EVENTS_COLUMNS.OBJECTIVE_REF} = ?;`,\n [objectiveRef]\n );\n return rs.rows._array;\n }\n}\n"],"mappings":";;;AAAA,SAASA,cAAc,QAAQ,sBAAsB;AACrD,SAA8BC,cAAc,EAAEC,YAAY,QAAQ,aAAa;AAE/E,OAAO,KAAKC,QAAQ,MAAM,aAAa;AACvC,SAASC,QAAQ,QAAQ,oCAAoC;AAC7D,SAASC,SAAS,QAAQ,2BAA2B;AACrD,OAAOC,cAAc,IACnBC,qBAAqB,QAChB,4BAA4B;AACnC,OAAOC,MAAM,IAAIC,QAAQ,QAAQ,uBAAuB;AAExD,eAAe,MAAMC,eAAe,CAAC;EAK3BC,WAAWA,CAAA,EAAG;IAAAC,eAAA,wBAHU,CAAC;IAAAA,eAAA,mBACd,CAAC;EAEG;EAEvB,aAAoBC,WAAWA,CAAA,EAA6B;IAC1D,IAAI,CAACH,eAAe,CAACI,QAAQ,EAAE;MAC7B,IAAIC,OAAO,GAAG,IAAIL,eAAe,EAAE;MACnC,MAAMA,eAAe,CAACM,IAAI,EAAE;MAC5BN,eAAe,CAACI,QAAQ,GAAGC,OAAO;IACpC;IACA,OAAOL,eAAe,CAACI,QAAQ;EACjC;EAEA,aAAqBE,IAAIA,CAAA,EAAkB;IACzC,MAAMb,QAAQ,CAACc,YAAY,CACxB,8BAA6Bf,YAAa;AACjD,kBAAkBD,cAAc,CAACiB,EAAG;AACpC,kBAAkBjB,cAAc,CAACkB,QAAS;AAC1C,kBAAkBlB,cAAc,CAACmB,WAAY;AAC7C,kBAAkBnB,cAAc,CAACoB,OAAQ;AACzC,kBAAkBpB,cAAc,CAACqB,MAAO;AACxC,kBAAkBrB,cAAc,CAACsB,SAAU;AAC3C,kBAAkBtB,cAAc,CAACuB,aAAc;AAC/C,kBAAkBvB,cAAc,CAACwB,MAAO;AACxC,kBAAkBxB,cAAc,CAACyB,UAAW,SAAQ,EAC9C,EAAE,CACH;EACH;EAEA,MAAMC,WAAWA,CACfC,QAAgB,EAChBC,OAAe,EACfC,KAAa,EACbC,QAAgB,EAChBC,YAAoB,EACpBC,MAAe,EACA;IACf,MAAM9B,QAAQ,CAACc,YAAY,CACxB,eAAcf,YAAa;AAClC,kBAAkBD,cAAc,CAACoB,OAAQ;AACzC,kBAAkBpB,cAAc,CAACmB,WAAY;AAC7C,kBAAkBnB,cAAc,CAACkB,QAAS;AAC1C,kBAAkBlB,cAAc,CAACqB,MAAO;AACxC,kBAAkBrB,cAAc,CAACsB,SAAU;AAC3C,kBAAkBtB,cAAc,CAACuB,aAAc;AAC/C,qCAAqC,EAC/B,CAACK,OAAO,EAAEC,KAAK,EAAEF,QAAQ,EAAEK,MAAM,IAAI,IAAI,EAAEF,QAAQ,EAAEC,YAAY,CAAC,CACnE;EACH;EAEA,MAAME,eAAeA,CAACC,UAAuB,EAAiB;IAC5D,IAAI;MACF,IAAIC,IAAW,GAAG,EAAE;MACpB,IAAIC,MAAa,GAAG,EAAE;MACtB,IAAIC,SAAsB,GAAG,EAAE,CAAC,CAAC;MACjC,IAAIC,OAAO,GAAG,GAAG;MAEjBJ,UAAU,CAACK,OAAO,CAAC,CAACC,OAAO,EAAEC,KAAK,KAAK;QACrC,IACE,CAACD,OAAO,CAACb,QAAQ,IACjB5B,cAAc,CAACyC,OAAO,CAACE,IAAI,CAAC,IAC5B3C,cAAc,CAACyC,OAAO,CAACG,UAAU,CAAC,IAClC5C,cAAc,CAACyC,OAAO,CAACV,QAAQ,CAAC,EAEhC,MAAM,IAAI1B,SAAS,CACjBC,cAAc,CAACuC,oBAAoB,EACnCtC,qBAAqB,CACtB;QAEH8B,MAAM,CAACS,IAAI,CAAE,eAAc,CAAC;QAC5BV,IAAI,CAACU,IAAI,CACPL,OAAO,CAACE,IAAI,EACZF,OAAO,CAACG,UAAU,EAClBH,OAAO,CAACb,QAAQ,EAChBa,OAAO,CAACR,MAAM,GAAGc,IAAI,CAACC,SAAS,CAACP,OAAO,CAACR,MAAM,CAAC,GAAG,IAAI,EACtDQ,OAAO,CAACV,QAAQ,EAChBU,OAAO,CAACQ,IAAI,GACRR,OAAO,CAACQ,IAAI,CAACC,KAAK,GAAGT,OAAO,CAACQ,IAAI,CAACE,kBAAkB,GACpD,cAAc,CACnB;QACD,IAAIT,KAAK,KAAKH,OAAO,IAAIG,KAAK,KAAKP,UAAU,CAACiB,MAAM,GAAG,CAAC,EAAE;UACxDd,SAAS,CAACQ,IAAI,CAAC;YACbO,KAAK,EAAG,eAAcnD,YAAa;AAC/C,YAAYD,cAAc,CAACoB,OAAQ;AACnC,YAAYpB,cAAc,CAACmB,WAAY;AACvC,YAAYnB,cAAc,CAACkB,QAAS;AACpC,YAAYlB,cAAc,CAACqB,MAAO;AAClC,YAAYrB,cAAc,CAACsB,SAAU;AACrC,YAAYtB,cAAc,CAACuB,aAAc;AACzC,mBAAmBa,MAAM,CAACiB,IAAI,CAAC,GAAG,CAAE,GAAE;YAC1BlB;UACF,CAAC,CAAC;UACFC,MAAM,GAAG,EAAE;UACXD,IAAI,GAAG,EAAE;UACTG,OAAO,GAAGA,OAAO,GAAGA,OAAO;QAC7B;MACF,CAAC,CAAC;MAEF,MAAMpC,QAAQ,CAACoD,gBAAgB,CAACjB,SAAS,CAAC;MAC1C,IAAI,CAACkB,QAAQ,GAAG,CAAC;IACnB,CAAC,CAAC,OAAOC,GAAG,EAAE;MACZ,IAAI,IAAI,CAACD,QAAQ,GAAG,IAAI,CAACE,aAAa,EAAE;QACtClD,MAAM,CAACK,WAAW,EAAE,CAAC8C,QAAQ,CAC3B,kBAAkB,EAClB,IAAI,CAACH,QAAQ,CAACI,QAAQ,EAAE,EACxBnD,QAAQ,CAACoD,SAAS,CACnB;QACD,IAAI,CAACL,QAAQ,EAAE;QACf,MAAM,IAAI,CAACtB,eAAe,CAACC,UAAU,CAAC;MACxC,CAAC,MAAM;QACL,IAAI,CAACqB,QAAQ,GAAG,CAAC;QACjB,MAAMC,GAAG;MACX;IACF;EACF;EAEA,MAAMK,YAAYA,CAACC,UAAmB,EAAuB;IAC3D,IAAIA,UAAU,EAAE;MACd,MAAMC,SAAS,GAAG,MAAM7D,QAAQ,CAACc,YAAY,CAC1C,iBAAgBf,YAAa;AACtC,oBAAoBD,cAAc,CAACmB,WAAY,OAAM,EAC7C,CAAC2C,UAAU,CAAC,CACb;MACD,OAAOC,SAAS,CAACC,IAAI,CAACC,MAAM;IAC9B,CAAC,MAAM;MACL,MAAMF,SAAS,GAAG,MAAM7D,QAAQ,CAACc,YAAY,CAC1C,iBAAgBf,YAAa,GAAE,EAChC,EAAE,CACH;MACD,OAAO8D,SAAS,CAACC,IAAI,CAACC,MAAM;IAC9B;EACF;EAEA,MAAMC,oBAAoBA,CAAA,EAAwB;IAChD,IAAIH,SAAS,GAAG,MAAM7D,QAAQ,CAACc,YAAY,CACxC,iBAAgBf,YAAa;AACpC,oBAAoBD,cAAc,CAACwB,MAAO,OAAM,EAC1C,EAAE,CACH;IACD,OAAOuC,SAAS,CAACC,IAAI,CAACC,MAAM;EAC9B;EAEOE,eAAeA,CAAA,EAAG;IACvB,OAAOjE,QAAQ,CAACc,YAAY,CAAE,eAAcf,YAAa,GAAE,EAAE,EAAE,CAAC;EAClE;EAEA,MAAMmE,WAAWA,CAACC,EAAU,EAAEC,SAAiB,EAAiB;IAC9D,IAAI,CAACD,EAAE,EAAE,MAAM,IAAIE,SAAS,CAAC,yBAAyB,CAAC;IACvD,MAAMrE,QAAQ,CAACc,YAAY,CACxB,UAASf,YAAa;AAC7B;AACA,cAAcD,cAAc,CAACyB,UAAW,eAAczB,cAAc,CAACiB,EAAG,OAAM,EACxE,CAACqD,SAAS,EAAED,EAAE,CAAC,CAChB;EACH;EAEA,MAAMG,eAAeA,CAACH,EAAU,EAAiB;IAC/C,IAAI,CAACA,EAAE,EAAE,MAAM,IAAIE,SAAS,CAAC,yBAAyB,CAAC;IACvD,MAAMrE,QAAQ,CAACc,YAAY,CACxB,UAASf,YAAa,QAAOD,cAAc,CAACwB,MAAO,cAAaxB,cAAc,CAACiB,EAAG,OAAM,EACzF,CAACoD,EAAE,CAAC,CACL;EACH;EAEA,MAAMI,uBAAuBA,CAAC3C,QAAgB,EAAuB;IACnE,IAAI4C,YAAY,GAAG,MAAMxE,QAAQ,CAACc,YAAY,CAC3C,iBAAgBf,YAAa;AACpC,oBAAoBD,cAAc,CAACwB,MAAO;AAC1C,kBAAkBxB,cAAc,CAACsB,SAAU;AAC3C,uBAAuBtB,cAAc,CAACiB,EAAG,eAAc,EACjD,CAACa,QAAQ,CAAC,CACX;IACD,OAAO4C,YAAY,CAACV,IAAI,CAACC,MAAM;EACjC;EACA,MAAMU,mBAAmBA,CAAC7C,QAAgB,EAAuB;IAC/D,IAAI4C,YAAY,GAAG,MAAMxE,QAAQ,CAACc,YAAY,CAC3C,iBAAgBf,YAAa;AACpC,oBAAoBD,cAAc,CAACwB,MAAO;AAC1C,kBAAkBxB,cAAc,CAACsB,SAAU;AAC3C,uBAAuBtB,cAAc,CAACiB,EAAG,eAAc,EACjD,CAACa,QAAQ,CAAC,CACX;IACD,OAAO4C,YAAY,CAACV,IAAI,CAACC,MAAM;EACjC;EACA,MAAMW,eAAeA,CAACd,UAAkB,EAAuB;IAC7D,MAAMe,SAAS,GAAG,MAAM3E,QAAQ,CAACc,YAAY,CAC1C,iBAAgBf,YAAa;AACpC,oBAAoBD,cAAc,CAACwB,MAAO;AAC1C,eAAexB,cAAc,CAACsB,SAAU,WAAUtB,cAAc,CAACsB,SAAU;AAC3E,kBAAkBtB,cAAc,CAACmB,WAAY;AAC7C,uBAAuBnB,cAAc,CAACiB,EAAG,OAAM,EACzC,CAACd,QAAQ,CAAC2E,eAAe,EAAE3E,QAAQ,CAAC4E,gBAAgB,EAAEjB,UAAU,CAAC,CAClE;IACD,OAAOe,SAAS,CAACb,IAAI,CAACC,MAAM;EAC9B;EACA,MAAMe,mBAAmBA,CAACjD,YAAoB,EAAuB;IACnE,IAAIkD,EAAE,GAAG,MAAM/E,QAAQ,CAACc,YAAY,CACjC,iBAAgBf,YAAa,UAASD,cAAc,CAACuB,aAAc,OAAM,EAC1E,CAACQ,YAAY,CAAC,CACf;IACD,OAAOkD,EAAE,CAACjB,IAAI,CAACC,MAAM;EACvB;AACF;AAACtD,eAAA,CA7MoBF,eAAe"}
|
|
1
|
+
{"version":3,"names":["isEmptyOrBlank","DispatchSyncType","EVENTS_COLUMNS","EVENTS_TABLE","Database","BaseError","BaseErrorCodes","InvalidArgumentsError","Logger","LOG_TYPE","BULK_DATA_LIMIT","DispatchExecutor","IDispatch","SyncType","ETEventsManager","constructor","_defineProperty","getInstance","instance","manager","init","executeQuery","ID","DISPATCH_ID","PAYLOAD","CONFIG","SYNC_TYPE","DATA_LENGTH","META","SYNCED","SYNC_ERROR","insertEvent","sequence","payload","dspID","syncType","objectiveRef","config","SEQUENCE","getWFIPayload","_bulkEventData","result","dispatchId","status","timestamp","code","attemptId","updatedBy","mergedObjectiveId","meta","outData","output","data","offset","jobMapping","getJobMapping","__unmerged","Object","keys","forEach","customETName","push","workflows","length","getCustodyPayload","getJobRemovalPayload","getDispatchUpdatePayload","_modifyEventData","CUSTODY_IN_SCAN","custodyInScans","action","CUSTODY_OUT_SCAN","custodyOutScans","WORKFLOW","map","_payload","_payload$workflows$0$","JOB_REMOVAL","_jobRemoval$success","_jobRemoval$failure","jobRemoval","success","failure","DISPATCH_UPDATE","DEFAULT","splitData","chunkSize","splitKey","splitArray","Array","isArray","i","chunk","key","hasOwnProperty","slice","insertQueueEvent","_eventData","args","values","queryData","_meta","JSON","stringify","query","join","executeBulkQuery","_retries","err","maxRetryCount","logEvent","toString","SDK_DEBUG","insertBulkEvent","syncManagerPayload","index","InvalidArgumentError","chunkedData","_evData","getAllEvents","dispatchID","resultSet","rows","_array","getAllUnsyncedEvents","deleteAllEvents","deleteEventsQuery","resetAutoIncrementSequence","updateError","id","syncError","TypeError","markEventSynced","getWorkflowUpdateEvents","sqlResultSet","getJobRemovalEvents","getCustodyBatch","sqlResult","getObjectiveDetails","rs","getRowToSync","getBulkRowsToSync"],"sources":["ETEventsManager.ts"],"sourcesContent":["import { isEmptyOrBlank } from '../../../utils/utils';\nimport {\n BulkEvent,\n CustodyData,\n DispatchSyncType,\n EventETData,\n EventRow,\n EVENTS_COLUMNS,\n EVENTS_TABLE,\n SyncManagerPayload,\n ExecEngineSyncType,\n WFUpdateBulkEventData,\n WIUpdateOutputPayload,\n WORKFLOW_INSTANCE_COLUMNS,\n WORKFLOW_INSTANCE_TABLE,\n} from '../DBConfig';\nimport type { ExecQuery } from '../database';\nimport * as Database from '../database';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n} from '../../../errors/ErrorCodes';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { BULK_DATA_LIMIT } from '../constants';\nimport Storage from '../../../utils/storage';\n\n// NEW CODE\nimport {\n DispatchExecutor,\n IDispatch,\n} from '@os1-platform/platform-coreos-execution-engine-sdk';\nconst SyncType = IDispatch.SyncType;\n\nexport default class ETEventsManager {\n private static instance: ETEventsManager;\n private maxRetryCount: number = 3;\n private _retries = 0;\n\n private constructor() {}\n\n public static async getInstance(): Promise<ETEventsManager> {\n if (!ETEventsManager.instance) {\n let manager = new ETEventsManager();\n await ETEventsManager.init();\n ETEventsManager.instance = manager;\n }\n return ETEventsManager.instance;\n }\n\n // NEED TO REMOVE SYNCED, CONFIG, OBJECTIVE_REF\n private static async init(): Promise<void> {\n await Database.executeQuery(\n `CREATE TABLE IF NOT EXISTS ${EVENTS_TABLE} (\\\n ${EVENTS_COLUMNS.ID} INTEGER PRIMARY KEY AUTOINCREMENT,\\\n ${EVENTS_COLUMNS.DISPATCH_ID} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.PAYLOAD} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.CONFIG} TEXT,\\\n ${EVENTS_COLUMNS.SYNC_TYPE} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.DATA_LENGTH} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.META} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.SYNC_ERROR} TEXT);`,\n []\n );\n }\n\n async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n await Database.executeQuery(\n `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SEQUENCE},\\\n ${EVENTS_COLUMNS.CONFIG},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values (?,?,?,?,?,?)`,\n [payload, dspID, sequence, config ?? null, syncType, objectiveRef]\n );\n }\n\n private async getWFIPayload(\n _bulkEventData: BulkEvent\n ): Promise<Array<WIUpdateOutputPayload>> {\n const result: Array<WIUpdateOutputPayload> = [];\n const dispatchId = _bulkEventData.dispatchId;\n const { status, timestamp, code, attemptId, updatedBy, mergedObjectiveId } =\n _bulkEventData.meta;\n const outData: any = {};\n const output: WFUpdateBulkEventData = _bulkEventData.data;\n\n let offset = 0;\n let jobMapping: Array<{ jobId: string; workflowInstanceId: string }> =\n await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n do {\n const __unmerged: Array<{ jobId: string; workflowInstanceId: string }> =\n jobMapping;\n\n Object.keys(output).forEach((customETName: string) => {\n outData[customETName] = output[customETName];\n });\n\n result.push({\n dispatchId,\n updatedBy,\n workflows: [\n {\n status,\n attemptId,\n timestamp,\n code,\n data: outData,\n __unmerged,\n meta: {},\n },\n ],\n });\n\n offset += BULK_DATA_LIMIT;\n jobMapping = await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n } while (jobMapping.length > 0);\n\n return result;\n }\n\n private getCustodyPayload(_bulkEventData: BulkEvent) {\n const data: Array<CustodyData> = _bulkEventData.data;\n return data;\n }\n\n private getJobRemovalPayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n return data;\n }\n\n private getDispatchUpdatePayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n const payload = data.payload;\n return payload;\n }\n\n private async _modifyEventData(\n _bulkEventData: BulkEvent\n ): Promise<Array<SyncManagerPayload>> {\n const syncType: ExecEngineSyncType | DispatchSyncType =\n _bulkEventData.syncType;\n switch (syncType) {\n case SyncType.CUSTODY_IN_SCAN: {\n const custodyInScans = this.getCustodyPayload(_bulkEventData);\n return [\n {\n data: {\n action: SyncType.CUSTODY_IN_SCAN,\n payload: { output: custodyInScans },\n },\n length: custodyInScans.length,\n },\n ];\n }\n case SyncType.CUSTODY_OUT_SCAN: {\n const custodyOutScans = this.getCustodyPayload(_bulkEventData);\n\n return [\n {\n data: {\n action: SyncType.CUSTODY_OUT_SCAN,\n payload: { output: custodyOutScans },\n },\n length: custodyOutScans.length,\n },\n ];\n }\n case SyncType.WORKFLOW: {\n const payload = await this.getWFIPayload(_bulkEventData);\n return payload.map((_payload) => ({\n data: { action: SyncType.WORKFLOW, payload: _payload },\n length: _payload.workflows[0].__unmerged?.length || 0,\n }));\n }\n case SyncType.JOB_REMOVAL: {\n const jobRemoval = this.getJobRemovalPayload(_bulkEventData);\n const length =\n jobRemoval?.success?.length + jobRemoval?.failure?.length;\n return [\n {\n data: {\n action: SyncType.JOB_REMOVAL,\n payload: jobRemoval,\n },\n length: length || 0,\n },\n ];\n }\n case DispatchSyncType.DISPATCH_UPDATE: {\n return [\n {\n data: {\n action: DispatchSyncType.DISPATCH_UPDATE,\n payload: this.getDispatchUpdatePayload(_bulkEventData),\n },\n length: 1,\n },\n ];\n }\n default: {\n return [\n {\n data: {\n action: DispatchSyncType.DEFAULT,\n payload: {},\n },\n length: 0,\n },\n ];\n }\n }\n }\n\n private splitData(data: any, chunkSize: number, splitKey: string): any[] {\n const result: any = [];\n const splitArray = data[splitKey];\n\n if (!splitArray || !Array.isArray(splitArray)) {\n return result;\n }\n\n for (let i = 0; i < splitArray.length; i += chunkSize) {\n const chunk: any = {};\n\n for (const key in data) {\n if (data.hasOwnProperty(key)) {\n chunk[key] =\n key === splitKey ? splitArray.slice(i, i + chunkSize) : data[key];\n }\n }\n\n result.push(chunk);\n }\n\n return result;\n }\n\n // NEW CODE\n async insertQueueEvent(_eventData: BulkEvent): Promise<void> {\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n try {\n values.push(`(?,?,?,?)`);\n const _meta = JSON.stringify(_eventData.meta);\n args.push(\n _eventData.data,\n _eventData.dispatchId,\n _eventData.syncType,\n _meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertQueueEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertQueueEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n // NEW CODE\n async insertBulkEvent(_eventData: BulkEvent): Promise<void> {\n try {\n const output: Array<SyncManagerPayload> = await this._modifyEventData(\n _eventData\n );\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n const _meta = JSON.stringify(_eventData.meta || {});\n\n if (\n _eventData.syncType === SyncType.WORKFLOW ||\n _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n _eventData.syncType === SyncType.CUSTODY_OUT_SCAN ||\n _eventData.syncType === DispatchSyncType.DISPATCH_UPDATE\n ) {\n output.forEach(\n (syncManagerPayload: SyncManagerPayload, index: number) => {\n const _payload = JSON.stringify(syncManagerPayload.data);\n if (\n isEmptyOrBlank(syncManagerPayload.data.action) ||\n isEmptyOrBlank(_payload)\n ) {\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n }\n values.push(`(?,?,?,?,?)`);\n args.push(\n _payload,\n _eventData.dispatchId,\n _eventData.syncType,\n syncManagerPayload.length,\n _meta\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n }\n );\n\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n // else if (\n // _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n // _eventData.syncType === SyncType.CUSTODY_OUT_SCAN\n // ) {\n // output.forEach(\n // (syncManagerPayload: SyncManagerPayload, index: number) => {\n // const _payload = JSON.stringify(syncManagerPayload);\n // if (\n // isEmptyOrBlank(syncManagerPayload.action) ||\n // isEmptyOrBlank(_payload)\n // ) {\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n // }\n // values.push(`(?,?,?,?)`);\n // args.push(\n // _payload,\n // _eventData.dispatchId,\n // _eventData.syncType,\n // _meta\n // );\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // }\n // );\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } else if (_eventData.syncType === DispatchSyncType.DISPATCH_UPDATE) {\n // }\n else {\n const chunkedData = this.splitData(output, BULK_DATA_LIMIT, 'payload');\n\n chunkedData.forEach((_evData, index) => {\n const _payload = JSON.stringify(_evData.payload);\n if (isEmptyOrBlank(_evData.action) || isEmptyOrBlank(_payload))\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n values.push(`(?,?,?,?,?)`);\n args.push(_evData, _eventData.dispatchId, _eventData.syncType, _meta);\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertBulkEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertBulkEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n // OLD CODE\n // async insertBulkEvent(_eventData: BulkEvent[]): Promise<void> {\n // try {\n // let args: any[] = [];\n // let values: any[] = [];\n // let queryData: ExecQuery[] = []; //final data to pass to db\n // let evIndex = 100;\n\n // _eventData.forEach((_evData, index) => {\n // if (\n // !_evData.sequence ||\n // isEmptyOrBlank(_evData.data) ||\n // isEmptyOrBlank(_evData.dispatchId) ||\n // isEmptyOrBlank(_evData.syncType)\n // )\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n\n // values.push(`(?,?,?,?,?)`);\n // args.push(\n // _evData.data,\n // _evData.dispatchId,\n // // _evData.sequence,\n // _evData.config ? JSON.stringify(_evData.config) : null,\n // _evData.syncType,\n // _evData.meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n // );\n // if (index === evIndex || index === _eventData.length - 1) {\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.CONFIG},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // evIndex = evIndex + evIndex;\n // }\n // });\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } catch (err) {\n // if (this._retries < this.maxRetryCount) {\n // Logger.getInstance().logEvent(\n // 'insertBulkEvent ',\n // this._retries.toString(),\n // LOG_TYPE.SDK_DEBUG\n // );\n // this._retries++;\n // await this.insertBulkEvent(_eventData);\n // } else {\n // this._retries = 0;\n // throw err;\n // }\n // }\n // }\n\n async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n if (dispatchID) {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.DISPATCH_ID} = ?;`,\n [dispatchID]\n );\n return resultSet.rows._array;\n } else {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE};`,\n []\n );\n return resultSet.rows._array;\n }\n }\n\n async getAllUnsyncedEvents(): Promise<EventRow[]> {\n let resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE} \\\n where ${EVENTS_COLUMNS.SYNCED} = 0;`,\n []\n );\n return resultSet.rows._array;\n }\n\n public deleteAllEvents() {\n const deleteEventsQuery = {\n query: `DELETE FROM ${EVENTS_TABLE};`,\n args: [],\n };\n const resetAutoIncrementSequence = {\n query: `UPDATE sqlite_sequence SET seq = 0 WHERE name\n = '${EVENTS_TABLE}';`,\n args: [],\n };\n\n return Database.executeBulkQuery([\n deleteEventsQuery,\n resetAutoIncrementSequence,\n ]);\n }\n\n async updateError(id: number, syncError: string): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} \\\n SET \\\n ${EVENTS_COLUMNS.SYNC_ERROR} = ? WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [syncError, id]\n );\n }\n\n async markEventSynced(id: number): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} SET ${EVENTS_COLUMNS.SYNCED} = 1 WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [id]\n );\n }\n\n async getWorkflowUpdateEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getJobRemovalEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getCustodyBatch(dispatchID: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0 and \\\n (${EVENTS_COLUMNS.SYNC_TYPE} = ? or ${EVENTS_COLUMNS.SYNC_TYPE} = ?) \\\n and ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [SyncType.CUSTODY_IN_SCAN, SyncType.CUSTODY_OUT_SCAN, dispatchID]\n );\n return sqlResult.rows._array;\n }\n async getObjectiveDetails(objectiveRef: string): Promise<EventRow[]> {\n let rs = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE} WHERE ${EVENTS_COLUMNS.META} = ?;`,\n [objectiveRef]\n );\n return rs.rows._array;\n }\n\n async getRowToSync(id: string, dispatchId: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.ID} = ? and \\\n ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [id, dispatchId]\n );\n return sqlResult.rows._array;\n }\n\n async getBulkRowsToSync(id: string, dispatchId: string): Promise<EventRow[]> {\n const query = `SELECT * FROM \\\n (SELECT *, \\ \n (SELECT SUM(${EVENTS_COLUMNS.DATA_LENGTH}) \\\n FROM ${EVENTS_TABLE} \\\n WHERE id <= t.id and ${EVENTS_COLUMNS.ID} > ${id} and ${EVENTS_COLUMNS.DISPATCH_ID} \\ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 \\\n ) total \\\n FROM ${EVENTS_TABLE} t \\\n ) q \\\n WHERE total <= ${BULK_DATA_LIMIT} \\\n ORDER BY ${EVENTS_COLUMNS.ID};`;\n\n const sqlResult = await Database.executeQuery(query, []);\n\n return sqlResult.rows._array;\n }\n}\n"],"mappings":"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"}
|
|
@@ -8,8 +8,11 @@ import { BaseError } from '../../../errors/BaseError';
|
|
|
8
8
|
import BaseErrorCodes, { InvalidArgumentsError, InvalidBaseURL, SyncManagerNotInitialized } from '../../../errors/ErrorCodes';
|
|
9
9
|
import NetworkUtil from '../../../utils/NetworkUtil';
|
|
10
10
|
import Logger, { LOG_TYPE } from '../../../utils/Logger';
|
|
11
|
-
import {
|
|
11
|
+
import { IDispatch } from '@os1-platform/platform-coreos-execution-engine-sdk';
|
|
12
|
+
const SyncType = IDispatch.SyncType;
|
|
12
13
|
import DispatchSdkCache from '../../sdk/DispatchSdkCache';
|
|
14
|
+
import Storage from '../../../utils/storage';
|
|
15
|
+
import { LAST_SYNCED_EVENT_ID } from '../constants';
|
|
13
16
|
const TAG = 'EventsSyncManager';
|
|
14
17
|
export default class EventsSyncManager {
|
|
15
18
|
get retries() {
|
|
@@ -47,8 +50,23 @@ export default class EventsSyncManager {
|
|
|
47
50
|
this.eventsManager = await ETEventsManager.getInstance();
|
|
48
51
|
}
|
|
49
52
|
if (hasNetwork) {
|
|
50
|
-
|
|
51
|
-
await
|
|
53
|
+
// NEW CODE
|
|
54
|
+
const lastSyncedEventId = await Storage.getInstance().getSharedItem(LAST_SYNCED_EVENT_ID);
|
|
55
|
+
const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(DispatchSdkCache.KEYS.DISPATCH_ID);
|
|
56
|
+
const bulkEventRows = await this.eventsManager.getBulkRowsToSync(lastSyncedEventId, dspID ?? '');
|
|
57
|
+
if (bulkEventRows.length) {
|
|
58
|
+
await this.syncBulkEventToServer(bulkEventRows, lastSyncedEventId);
|
|
59
|
+
} else {
|
|
60
|
+
Logger.getInstance().logEvent('startSync', 'No data to sync in Events Manager', LOG_TYPE.SDK_INFO);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// OLD CODE
|
|
64
|
+
// const promises: any[] = [
|
|
65
|
+
// this.JobRemovalEvent(this.eventsManager),
|
|
66
|
+
// this.CustodyBatchEvent(this.eventsManager),
|
|
67
|
+
// this.WorkflowUpdateEvent(this.eventsManager),
|
|
68
|
+
// ];
|
|
69
|
+
// await Promise.all(promises);
|
|
52
70
|
} else {
|
|
53
71
|
Logger.getInstance().logEvent('startSync', 'NO NETWORK AVAILABLE!!', LOG_TYPE.SDK_INFO);
|
|
54
72
|
}
|
|
@@ -62,48 +80,79 @@ export default class EventsSyncManager {
|
|
|
62
80
|
Logger.getInstance().logEvent('startSync', 'WORKFLOW/TASK ALREADY IN PROGRESS || Max Retries reached', LOG_TYPE.SDK_INFO);
|
|
63
81
|
}
|
|
64
82
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
83
|
+
|
|
84
|
+
// private async WorkflowUpdateEvent(eventsManager: ETEventsManager) {
|
|
85
|
+
// const unsyncedData = await eventsManager.getWorkflowUpdateEvents(
|
|
86
|
+
// SyncType.WORKFLOW
|
|
87
|
+
// );
|
|
88
|
+
// if (unsyncedData?.length > 0) {
|
|
89
|
+
// await this.syncEventToServer(unsyncedData, SyncType.WORKFLOW);
|
|
90
|
+
// } else {
|
|
91
|
+
// Logger.getInstance().logEvent(
|
|
92
|
+
// 'startSync',
|
|
93
|
+
// 'No workflow/task data to sync in Events Manager',
|
|
94
|
+
// LOG_TYPE.SDK_INFO
|
|
95
|
+
// );
|
|
96
|
+
// }
|
|
97
|
+
// }
|
|
98
|
+
|
|
99
|
+
// private async CustodyBatchEvent(eventsManager: ETEventsManager) {
|
|
100
|
+
// const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(
|
|
101
|
+
// DispatchSdkCache.KEYS.DISPATCH_ID
|
|
102
|
+
// );
|
|
103
|
+
// const custodyScans = await eventsManager.getCustodyBatch(dspID ?? '');
|
|
104
|
+
// if (custodyScans && custodyScans.length > 0) {
|
|
105
|
+
// await this.startCustodyScans(custodyScans);
|
|
106
|
+
// }
|
|
107
|
+
// }
|
|
108
|
+
|
|
109
|
+
// private async JobRemovalEvent(eventsManager: ETEventsManager) {
|
|
110
|
+
// const unsyncedJobRemovalData = await eventsManager.getJobRemovalEvents(
|
|
111
|
+
// SyncType.JOB_REMOVAL
|
|
112
|
+
// );
|
|
113
|
+
// if (unsyncedJobRemovalData?.length > 0) {
|
|
114
|
+
// await this.syncEventToServer(
|
|
115
|
+
// unsyncedJobRemovalData,
|
|
116
|
+
// SyncType.JOB_REMOVAL
|
|
117
|
+
// );
|
|
118
|
+
// }
|
|
119
|
+
// }
|
|
120
|
+
|
|
121
|
+
// public async startCustodyScans(custodyScans: EventRow[]) {
|
|
122
|
+
// if (!this.cScanInProgress) {
|
|
123
|
+
// this.cScanInProgress = true;
|
|
124
|
+
// try {
|
|
125
|
+
// const inScans = custodyScans.filter(
|
|
126
|
+
// (scan) => scan.sync_type === SyncType.CUSTODY_IN_SCAN
|
|
127
|
+
// );
|
|
128
|
+
// const outScans = custodyScans.filter(
|
|
129
|
+
// (scans) => scans.sync_type === SyncType.CUSTODY_OUT_SCAN
|
|
130
|
+
// );
|
|
131
|
+
// if (inScans && inScans.length > 0) {
|
|
132
|
+
// await this.syncEventToServer(inScans, SyncType.CUSTODY_IN_SCAN);
|
|
133
|
+
// } else if (outScans && outScans.length > 0) {
|
|
134
|
+
// await this.syncEventToServer(outScans, SyncType.CUSTODY_OUT_SCAN);
|
|
135
|
+
// } else {
|
|
136
|
+
// Logger.getInstance().logEvent(
|
|
137
|
+
// 'startCustodyScans',
|
|
138
|
+
// 'NO CUSTODY SCANS LEFT TO SYNC',
|
|
139
|
+
// LOG_TYPE.SDK_INFO
|
|
140
|
+
// );
|
|
141
|
+
// }
|
|
142
|
+
// } catch (error: any) {
|
|
143
|
+
// } finally {
|
|
144
|
+
// this.cScanInProgress = false;
|
|
145
|
+
// if (await this.isSyncPending()) await this.startSync();
|
|
146
|
+
// }
|
|
147
|
+
// } else {
|
|
148
|
+
// Logger.getInstance().logEvent(
|
|
149
|
+
// 'startCustodyScans',
|
|
150
|
+
// 'Custody Scan already in Progress',
|
|
151
|
+
// LOG_TYPE.SDK_INFO
|
|
152
|
+
// );
|
|
153
|
+
// }
|
|
154
|
+
// }
|
|
155
|
+
|
|
107
156
|
async updateEventError(eventRows, errorString) {
|
|
108
157
|
if (!eventRows || eventRows.length === 0) return;
|
|
109
158
|
if (!this.eventsManager) {
|
|
@@ -132,9 +181,19 @@ export default class EventsSyncManager {
|
|
|
132
181
|
if (!this.eventsManager) {
|
|
133
182
|
this.eventsManager = await ETEventsManager.getInstance();
|
|
134
183
|
}
|
|
135
|
-
|
|
136
|
-
|
|
184
|
+
|
|
185
|
+
// NEW CODE
|
|
186
|
+
const lastSyncedEventId = await Storage.getInstance().getSharedItem(LAST_SYNCED_EVENT_ID);
|
|
187
|
+
const syncEventId = parseInt(lastSyncedEventId) + 1;
|
|
188
|
+
const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(DispatchSdkCache.KEYS.DISPATCH_ID);
|
|
189
|
+
const eventRows = await this.eventsManager.getRowToSync(`${syncEventId}`, dspID ?? '');
|
|
190
|
+
return eventRows.length > 0 && this._retries < this.maxRetryCount;
|
|
191
|
+
|
|
192
|
+
// OLD CODE
|
|
193
|
+
// let unsyncedData = await this.eventsManager.getAllUnsyncedEvents();
|
|
194
|
+
// return unsyncedData?.length > 0 && this._retries < this.maxRetryCount;
|
|
137
195
|
}
|
|
196
|
+
|
|
138
197
|
async markEventSynced(eventRows) {
|
|
139
198
|
if (!eventRows || eventRows.length === 0) return;
|
|
140
199
|
if (!this.eventsManager) {
|
|
@@ -157,19 +216,10 @@ export default class EventsSyncManager {
|
|
|
157
216
|
}
|
|
158
217
|
await this.eventsManager.insertEvent(sequence, payload, dspID, syncType, objectiveRef, config);
|
|
159
218
|
}
|
|
219
|
+
|
|
220
|
+
// NEW CODE
|
|
160
221
|
async insertBulkEvent(_bulkData) {
|
|
161
222
|
try {
|
|
162
|
-
/* if (
|
|
163
|
-
!sequence ||
|
|
164
|
-
isEmptyOrBlank(payload) ||
|
|
165
|
-
isEmptyOrBlank(dspID) ||
|
|
166
|
-
isEmptyOrBlank(syncType) ||
|
|
167
|
-
isEmptyOrBlank(objectiveRef)
|
|
168
|
-
)
|
|
169
|
-
throw new BaseError(
|
|
170
|
-
BaseErrorCodes.InvalidArgumentError,
|
|
171
|
-
InvalidArgumentsError
|
|
172
|
-
); */
|
|
173
223
|
if (!this.eventsManager) {
|
|
174
224
|
this.eventsManager = await ETEventsManager.getInstance();
|
|
175
225
|
}
|
|
@@ -178,6 +228,42 @@ export default class EventsSyncManager {
|
|
|
178
228
|
throw err;
|
|
179
229
|
}
|
|
180
230
|
}
|
|
231
|
+
|
|
232
|
+
// NEW CODE
|
|
233
|
+
async insertQueueEvent(_pushData) {
|
|
234
|
+
try {
|
|
235
|
+
if (!this.eventsManager) {
|
|
236
|
+
this.eventsManager = await ETEventsManager.getInstance();
|
|
237
|
+
}
|
|
238
|
+
await this.eventsManager.insertQueueEvent(_pushData);
|
|
239
|
+
} catch (err) {
|
|
240
|
+
throw err;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
// OLD CODE
|
|
245
|
+
// public async insertBulkEvent(_bulkData: BulkEvent[]): Promise<void> {
|
|
246
|
+
// try {
|
|
247
|
+
// /* if (
|
|
248
|
+
// !sequence ||
|
|
249
|
+
// isEmptyOrBlank(payload) ||
|
|
250
|
+
// isEmptyOrBlank(dspID) ||
|
|
251
|
+
// isEmptyOrBlank(syncType) ||
|
|
252
|
+
// isEmptyOrBlank(objectiveRef)
|
|
253
|
+
// )
|
|
254
|
+
// throw new BaseError(
|
|
255
|
+
// BaseErrorCodes.InvalidArgumentError,
|
|
256
|
+
// InvalidArgumentsError
|
|
257
|
+
// ); */
|
|
258
|
+
// if (!this.eventsManager) {
|
|
259
|
+
// this.eventsManager = await ETEventsManager.getInstance();
|
|
260
|
+
// }
|
|
261
|
+
// await this.eventsManager.insertBulkEvent(_bulkData);
|
|
262
|
+
// } catch (err) {
|
|
263
|
+
// throw err;
|
|
264
|
+
// }
|
|
265
|
+
// }
|
|
266
|
+
|
|
181
267
|
checkForInitialization() {
|
|
182
268
|
if (!this.syncHttpClient) {
|
|
183
269
|
throw new BaseError(BaseErrorCodes.SyncManagerNotInitialized, SyncManagerNotInitialized);
|
|
@@ -206,19 +292,51 @@ export default class EventsSyncManager {
|
|
|
206
292
|
async syncEventToServer(eventRows, syncType) {
|
|
207
293
|
try {
|
|
208
294
|
var _this$syncHttpClient;
|
|
209
|
-
/* Logger.getInstance().logEvent(
|
|
210
|
-
TAG,
|
|
211
|
-
`Syncing ${syncType} :- ${JSON.stringify(eventRows)}`,
|
|
212
|
-
LOG_TYPE.SDK_ERROR
|
|
213
|
-
); */
|
|
214
295
|
const success = await ((_this$syncHttpClient = this.syncHttpClient) === null || _this$syncHttpClient === void 0 ? void 0 : _this$syncHttpClient.syncEvent(eventRows, syncType));
|
|
296
|
+
if (success) {
|
|
297
|
+
this._retries = 0;
|
|
298
|
+
// NEW CODE
|
|
299
|
+
const lastSyncedEventId = await Storage.getInstance().getSharedItem(LAST_SYNCED_EVENT_ID);
|
|
300
|
+
const syncEventId = parseInt(lastSyncedEventId) + 1;
|
|
301
|
+
await Storage.getInstance().setSharedItem(LAST_SYNCED_EVENT_ID, `${syncEventId}`);
|
|
302
|
+
|
|
303
|
+
// OLD CODE
|
|
304
|
+
await this.markEventSynced(eventRows);
|
|
305
|
+
} else {
|
|
306
|
+
this._retries++;
|
|
307
|
+
/* Logger.getInstance().logEvent(
|
|
308
|
+
'syncEventToServer',
|
|
309
|
+
`Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,
|
|
310
|
+
LOG_TYPE.SDK_ERROR
|
|
311
|
+
); */
|
|
312
|
+
await this.updateEventError(eventRows, 'Unexpected error');
|
|
313
|
+
}
|
|
314
|
+
} catch (error) {
|
|
315
|
+
this._retries++;
|
|
215
316
|
/* Logger.getInstance().logEvent(
|
|
216
|
-
|
|
217
|
-
`
|
|
317
|
+
'syncEventToServer',
|
|
318
|
+
`Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${
|
|
319
|
+
error.message
|
|
320
|
+
}`,
|
|
218
321
|
LOG_TYPE.SDK_ERROR
|
|
219
322
|
); */
|
|
323
|
+
await this.updateEventError(eventRows, JSON.stringify({
|
|
324
|
+
error
|
|
325
|
+
}));
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
async syncBulkEventToServer(eventRows, lastSyncedEventId) {
|
|
329
|
+
try {
|
|
330
|
+
var _this$syncHttpClient2;
|
|
331
|
+
const success = await ((_this$syncHttpClient2 = this.syncHttpClient) === null || _this$syncHttpClient2 === void 0 ? void 0 : _this$syncHttpClient2.syncBulkEvent(eventRows));
|
|
220
332
|
if (success) {
|
|
221
333
|
this._retries = 0;
|
|
334
|
+
// NEW CODE
|
|
335
|
+
|
|
336
|
+
const syncEventId = parseInt(lastSyncedEventId) + eventRows.length;
|
|
337
|
+
await Storage.getInstance().setSharedItem(LAST_SYNCED_EVENT_ID, `${syncEventId}`);
|
|
338
|
+
|
|
339
|
+
// OLD CODE
|
|
222
340
|
await this.markEventSynced(eventRows);
|
|
223
341
|
} else {
|
|
224
342
|
this._retries++;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ETEventsManager","SyncHttpClient","isEmptyOrBlank","BaseError","BaseErrorCodes","InvalidArgumentsError","InvalidBaseURL","SyncManagerNotInitialized","NetworkUtil","Logger","LOG_TYPE","SyncType","DispatchSdkCache","TAG","EventsSyncManager","retries","_retries","value","constructor","_defineProperty","initSyncManager","baseURL","retryCount","maxRetryCount","syncHttpClient","getInstance","instance","startSync","inProgress","hasNetwork","isAvailableAsync","checkForInitialization","eventsManager","promises","JobRemovalEvent","CustodyBatchEvent","WorkflowUpdateEvent","Promise","all","logEvent","SDK_INFO","error","isSyncPending","unsyncedData","getWorkflowUpdateEvents","WORKFLOW","length","syncEventToServer","dspID","getKeyFromCache","KEYS","DISPATCH_ID","custodyScans","getCustodyBatch","startCustodyScans","unsyncedJobRemovalData","getJobRemovalEvents","JOB_REMOVAL","cScanInProgress","inScans","filter","scan","sync_type","CUSTODY_IN_SCAN","outScans","scans","CUSTODY_OUT_SCAN","updateEventError","eventRows","errorString","ev","push","updateError","id","err","message","SDK_WARNING","forceSync","getAllUnsyncedEvents","markEventSynced","insertEvent","sequence","payload","syncType","objectiveRef","config","InvalidArgumentError","insertBulkEvent","_bulkData","getObjectiveSummary","data","getObjectiveDetails","requiredPayload","row","JSON","parse","status","_this$syncHttpClient","success","syncEvent","stringify","getAllEvents","clearEventsDB","deleteAllEvents"],"sources":["EventsSyncManager.ts"],"sourcesContent":["import ETEventsManager from './ETEventsManager';\nimport type { BulkEvent, EventRow } from '../DBConfig';\nimport SyncHttpClient from './SyncHttpClient';\nimport { isEmptyOrBlank } from '../../../utils/utils';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n InvalidBaseURL,\n SyncManagerNotInitialized,\n} from '../../../errors/ErrorCodes';\nimport NetworkUtil from '../../../utils/NetworkUtil';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { SyncType } from '@os1-platform/mobile-execution-lib';\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\n\nconst TAG = 'EventsSyncManager';\nexport default class EventsSyncManager {\n private syncHttpClient: SyncHttpClient | undefined;\n private static instance: EventsSyncManager;\n private inProgress: boolean = false;\n private cScanInProgress: boolean = false;\n private eventsManager: ETEventsManager | undefined;\n private maxRetryCount: number = 3;\n private _retries = 0;\n\n get retries(): number {\n return this._retries;\n }\n\n set retries(value: number) {\n this._retries = value;\n }\n\n private constructor() {}\n\n public initSyncManager(baseURL: string, retryCount: number) {\n if (isEmptyOrBlank(baseURL))\n throw new BaseError(BaseErrorCodes.InvalidBaseURL, InvalidBaseURL);\n this.maxRetryCount = retryCount;\n this.syncHttpClient = new SyncHttpClient(baseURL);\n }\n\n public static getInstance(): EventsSyncManager {\n if (!EventsSyncManager.instance) {\n EventsSyncManager.instance = new EventsSyncManager();\n }\n return EventsSyncManager.instance;\n }\n\n public async startSync(): Promise<void> {\n if (!this.inProgress && this._retries < this.maxRetryCount) {\n this.inProgress = true;\n const hasNetwork = await NetworkUtil.isAvailableAsync();\n try {\n this.checkForInitialization();\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n if (hasNetwork) {\n const promises: any[] = [\n this.JobRemovalEvent(this.eventsManager),\n this.CustodyBatchEvent(this.eventsManager),\n this.WorkflowUpdateEvent(this.eventsManager),\n ];\n await Promise.all(promises);\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'NO NETWORK AVAILABLE!!',\n LOG_TYPE.SDK_INFO\n );\n }\n } catch (error: any) {\n } finally {\n this.inProgress = false;\n if ((await this.isSyncPending()) && hasNetwork) {\n await this.startSync();\n }\n }\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'WORKFLOW/TASK ALREADY IN PROGRESS || Max Retries reached',\n LOG_TYPE.SDK_INFO\n );\n }\n }\n\n private async WorkflowUpdateEvent(eventsManager: ETEventsManager) {\n const unsyncedData = await eventsManager.getWorkflowUpdateEvents(\n SyncType.WORKFLOW\n );\n if (unsyncedData?.length > 0) {\n await this.syncEventToServer(unsyncedData, SyncType.WORKFLOW);\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'No workflow/task data to sync in Events Manager',\n LOG_TYPE.SDK_INFO\n );\n }\n }\n\n private async CustodyBatchEvent(eventsManager: ETEventsManager) {\n const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.DISPATCH_ID\n );\n const custodyScans = await eventsManager.getCustodyBatch(dspID ?? '');\n if (custodyScans && custodyScans.length > 0) {\n await this.startCustodyScans(custodyScans);\n }\n }\n\n private async JobRemovalEvent(eventsManager: ETEventsManager) {\n const unsyncedJobRemovalData = await eventsManager.getJobRemovalEvents(\n SyncType.JOB_REMOVAL\n );\n if (unsyncedJobRemovalData?.length > 0) {\n await this.syncEventToServer(\n unsyncedJobRemovalData,\n SyncType.JOB_REMOVAL\n );\n }\n }\n\n public async startCustodyScans(custodyScans: EventRow[]) {\n if (!this.cScanInProgress) {\n this.cScanInProgress = true;\n try {\n const inScans = custodyScans.filter(\n (scan) => scan.sync_type === SyncType.CUSTODY_IN_SCAN\n );\n const outScans = custodyScans.filter(\n (scans) => scans.sync_type === SyncType.CUSTODY_OUT_SCAN\n );\n if (inScans && inScans.length > 0) {\n await this.syncEventToServer(inScans, SyncType.CUSTODY_IN_SCAN);\n } else if (outScans && outScans.length > 0) {\n await this.syncEventToServer(outScans, SyncType.CUSTODY_OUT_SCAN);\n } else {\n Logger.getInstance().logEvent(\n 'startCustodyScans',\n 'NO CUSTODY SCANS LEFT TO SYNC',\n LOG_TYPE.SDK_INFO\n );\n }\n } catch (error: any) {\n } finally {\n this.cScanInProgress = false;\n if (await this.isSyncPending()) await this.startSync();\n }\n } else {\n Logger.getInstance().logEvent(\n 'startCustodyScans',\n 'Custody Scan already in Progress',\n LOG_TYPE.SDK_INFO\n );\n }\n }\n\n private async updateEventError(\n eventRows: EventRow[],\n errorString: string\n ): Promise<void> {\n if (!eventRows || eventRows.length === 0) return;\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n const promises: any[] = [];\n for (const ev of eventRows) {\n try {\n promises.push(this.eventsManager.updateError(ev.id, errorString));\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'updateEventError',\n err.message,\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n await Promise.all(promises);\n }\n\n /**\n * force sync events who retry count >3 This function can be called from app UI to sync the events forcefully\n */\n public async forceSync() {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n this._retries = 0;\n await this.startSync();\n }\n\n public async isSyncPending(): Promise<boolean> {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n let unsyncedData = await this.eventsManager.getAllUnsyncedEvents();\n return unsyncedData?.length > 0 && this._retries < this.maxRetryCount;\n }\n\n private async markEventSynced(eventRows: EventRow[]) {\n if (!eventRows || eventRows.length === 0) return;\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n const promises: any[] = [];\n for (const ev of eventRows) {\n try {\n promises.push(await this.eventsManager.markEventSynced(ev.id));\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'markEventSynced',\n err.message,\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n\n await Promise.all(promises);\n }\n\n public async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n if (\n !sequence ||\n isEmptyOrBlank(payload) ||\n isEmptyOrBlank(dspID) ||\n isEmptyOrBlank(syncType) ||\n isEmptyOrBlank(objectiveRef)\n )\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertEvent(\n sequence,\n payload,\n dspID,\n syncType,\n objectiveRef,\n config\n );\n }\n\n public async insertBulkEvent(_bulkData: BulkEvent[]): Promise<void> {\n try {\n /* if (\n !sequence ||\n isEmptyOrBlank(payload) ||\n isEmptyOrBlank(dspID) ||\n isEmptyOrBlank(syncType) ||\n isEmptyOrBlank(objectiveRef)\n )\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n ); */\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertBulkEvent(_bulkData);\n } catch (err) {\n throw err;\n }\n }\n\n private checkForInitialization() {\n if (!this.syncHttpClient) {\n throw new BaseError(\n BaseErrorCodes.SyncManagerNotInitialized,\n SyncManagerNotInitialized\n );\n }\n }\n\n public async getObjectiveSummary(objectiveRef: string): Promise<any> {\n if (!objectiveRef) return [];\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n try {\n let data = await this.eventsManager.getObjectiveDetails(objectiveRef);\n let requiredPayload: any = null;\n for (const row of data) {\n let payload = JSON.parse(row.payload);\n if (payload.status === 'CLOSED') {\n requiredPayload = payload;\n }\n }\n if (requiredPayload) return requiredPayload.data;\n else return null;\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'getObjectiveSummary',\n err.message,\n LOG_TYPE.SDK_WARNING\n );\n return null;\n }\n }\n\n private async syncEventToServer(eventRows: EventRow[], syncType: SyncType) {\n try {\n /* Logger.getInstance().logEvent(\n TAG,\n `Syncing ${syncType} :- ${JSON.stringify(eventRows)}`,\n LOG_TYPE.SDK_ERROR\n ); */\n const success = await this.syncHttpClient?.syncEvent(eventRows, syncType);\n /* Logger.getInstance().logEvent(\n TAG,\n `Synced ${syncType} :- ${JSON.stringify(eventRows)}`,\n LOG_TYPE.SDK_ERROR\n ); */\n if (success) {\n this._retries = 0;\n await this.markEventSynced(eventRows);\n } else {\n this._retries++;\n /* Logger.getInstance().logEvent(\n 'syncEventToServer',\n `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,\n LOG_TYPE.SDK_ERROR\n ); */\n await this.updateEventError(eventRows, 'Unexpected error');\n }\n } catch (error: any) {\n this._retries++;\n /* Logger.getInstance().logEvent(\n 'syncEventToServer',\n `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${\n error.message\n }`,\n LOG_TYPE.SDK_ERROR\n ); */\n await this.updateEventError(\n eventRows,\n JSON.stringify({\n error,\n })\n );\n }\n }\n public async getAllEvents(dspID?: string): Promise<EventRow[]> {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n return this.eventsManager.getAllEvents(dspID);\n }\n public async clearEventsDB() {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n await this.eventsManager.deleteAllEvents();\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["ETEventsManager","SyncHttpClient","isEmptyOrBlank","BaseError","BaseErrorCodes","InvalidArgumentsError","InvalidBaseURL","SyncManagerNotInitialized","NetworkUtil","Logger","LOG_TYPE","IDispatch","SyncType","DispatchSdkCache","Storage","LAST_SYNCED_EVENT_ID","TAG","EventsSyncManager","retries","_retries","value","constructor","_defineProperty","initSyncManager","baseURL","retryCount","maxRetryCount","syncHttpClient","getInstance","instance","startSync","inProgress","hasNetwork","isAvailableAsync","checkForInitialization","eventsManager","lastSyncedEventId","getSharedItem","dspID","getKeyFromCache","KEYS","DISPATCH_ID","bulkEventRows","getBulkRowsToSync","length","syncBulkEventToServer","logEvent","SDK_INFO","error","isSyncPending","updateEventError","eventRows","errorString","promises","ev","push","updateError","id","err","message","SDK_WARNING","Promise","all","forceSync","syncEventId","parseInt","getRowToSync","markEventSynced","insertEvent","sequence","payload","syncType","objectiveRef","config","InvalidArgumentError","insertBulkEvent","_bulkData","insertQueueEvent","_pushData","getObjectiveSummary","data","getObjectiveDetails","requiredPayload","row","JSON","parse","status","syncEventToServer","_this$syncHttpClient","success","syncEvent","setSharedItem","stringify","_this$syncHttpClient2","syncBulkEvent","getAllEvents","clearEventsDB","deleteAllEvents"],"sources":["EventsSyncManager.ts"],"sourcesContent":["import ETEventsManager from './ETEventsManager';\nimport type {\n BulkEvent,\n DispatchSyncType,\n EventRow,\n ExecEngineSyncType,\n} from '../DBConfig';\nimport SyncHttpClient from './SyncHttpClient';\nimport { isEmptyOrBlank } from '../../../utils/utils';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n InvalidBaseURL,\n SyncManagerNotInitialized,\n} from '../../../errors/ErrorCodes';\nimport NetworkUtil from '../../../utils/NetworkUtil';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { IDispatch } from '@os1-platform/platform-coreos-execution-engine-sdk';\nconst SyncType = IDispatch.SyncType;\n\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\nimport Storage from '../../../utils/storage';\nimport { LAST_SYNCED_EVENT_ID } from '../constants';\n\nconst TAG = 'EventsSyncManager';\nexport default class EventsSyncManager {\n private syncHttpClient: SyncHttpClient | undefined;\n private static instance: EventsSyncManager;\n private inProgress: boolean = false;\n private cScanInProgress: boolean = false;\n private eventsManager: ETEventsManager | undefined;\n private maxRetryCount: number = 3;\n private _retries = 0;\n\n get retries(): number {\n return this._retries;\n }\n\n set retries(value: number) {\n this._retries = value;\n }\n\n private constructor() {}\n\n public initSyncManager(baseURL: string, retryCount: number) {\n if (isEmptyOrBlank(baseURL))\n throw new BaseError(BaseErrorCodes.InvalidBaseURL, InvalidBaseURL);\n this.maxRetryCount = retryCount;\n this.syncHttpClient = new SyncHttpClient(baseURL);\n }\n\n public static getInstance(): EventsSyncManager {\n if (!EventsSyncManager.instance) {\n EventsSyncManager.instance = new EventsSyncManager();\n }\n return EventsSyncManager.instance;\n }\n\n public async startSync(): Promise<void> {\n if (!this.inProgress && this._retries < this.maxRetryCount) {\n this.inProgress = true;\n const hasNetwork = await NetworkUtil.isAvailableAsync();\n try {\n this.checkForInitialization();\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n if (hasNetwork) {\n // NEW CODE\n const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n LAST_SYNCED_EVENT_ID\n );\n const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.DISPATCH_ID\n );\n\n const bulkEventRows = await this.eventsManager.getBulkRowsToSync(\n lastSyncedEventId,\n dspID ?? ''\n );\n\n if (bulkEventRows.length) {\n await this.syncBulkEventToServer(bulkEventRows, lastSyncedEventId);\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'No data to sync in Events Manager',\n LOG_TYPE.SDK_INFO\n );\n }\n\n // OLD CODE\n // const promises: any[] = [\n // this.JobRemovalEvent(this.eventsManager),\n // this.CustodyBatchEvent(this.eventsManager),\n // this.WorkflowUpdateEvent(this.eventsManager),\n // ];\n // await Promise.all(promises);\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'NO NETWORK AVAILABLE!!',\n LOG_TYPE.SDK_INFO\n );\n }\n } catch (error: any) {\n } finally {\n this.inProgress = false;\n if ((await this.isSyncPending()) && hasNetwork) {\n await this.startSync();\n }\n }\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'WORKFLOW/TASK ALREADY IN PROGRESS || Max Retries reached',\n LOG_TYPE.SDK_INFO\n );\n }\n }\n\n // private async WorkflowUpdateEvent(eventsManager: ETEventsManager) {\n // const unsyncedData = await eventsManager.getWorkflowUpdateEvents(\n // SyncType.WORKFLOW\n // );\n // if (unsyncedData?.length > 0) {\n // await this.syncEventToServer(unsyncedData, SyncType.WORKFLOW);\n // } else {\n // Logger.getInstance().logEvent(\n // 'startSync',\n // 'No workflow/task data to sync in Events Manager',\n // LOG_TYPE.SDK_INFO\n // );\n // }\n // }\n\n // private async CustodyBatchEvent(eventsManager: ETEventsManager) {\n // const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n // DispatchSdkCache.KEYS.DISPATCH_ID\n // );\n // const custodyScans = await eventsManager.getCustodyBatch(dspID ?? '');\n // if (custodyScans && custodyScans.length > 0) {\n // await this.startCustodyScans(custodyScans);\n // }\n // }\n\n // private async JobRemovalEvent(eventsManager: ETEventsManager) {\n // const unsyncedJobRemovalData = await eventsManager.getJobRemovalEvents(\n // SyncType.JOB_REMOVAL\n // );\n // if (unsyncedJobRemovalData?.length > 0) {\n // await this.syncEventToServer(\n // unsyncedJobRemovalData,\n // SyncType.JOB_REMOVAL\n // );\n // }\n // }\n\n // public async startCustodyScans(custodyScans: EventRow[]) {\n // if (!this.cScanInProgress) {\n // this.cScanInProgress = true;\n // try {\n // const inScans = custodyScans.filter(\n // (scan) => scan.sync_type === SyncType.CUSTODY_IN_SCAN\n // );\n // const outScans = custodyScans.filter(\n // (scans) => scans.sync_type === SyncType.CUSTODY_OUT_SCAN\n // );\n // if (inScans && inScans.length > 0) {\n // await this.syncEventToServer(inScans, SyncType.CUSTODY_IN_SCAN);\n // } else if (outScans && outScans.length > 0) {\n // await this.syncEventToServer(outScans, SyncType.CUSTODY_OUT_SCAN);\n // } else {\n // Logger.getInstance().logEvent(\n // 'startCustodyScans',\n // 'NO CUSTODY SCANS LEFT TO SYNC',\n // LOG_TYPE.SDK_INFO\n // );\n // }\n // } catch (error: any) {\n // } finally {\n // this.cScanInProgress = false;\n // if (await this.isSyncPending()) await this.startSync();\n // }\n // } else {\n // Logger.getInstance().logEvent(\n // 'startCustodyScans',\n // 'Custody Scan already in Progress',\n // LOG_TYPE.SDK_INFO\n // );\n // }\n // }\n\n private async updateEventError(\n eventRows: EventRow[],\n errorString: string\n ): Promise<void> {\n if (!eventRows || eventRows.length === 0) return;\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n const promises: any[] = [];\n for (const ev of eventRows) {\n try {\n promises.push(this.eventsManager.updateError(ev.id, errorString));\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'updateEventError',\n err.message,\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n await Promise.all(promises);\n }\n\n /**\n * force sync events who retry count >3 This function can be called from app UI to sync the events forcefully\n */\n public async forceSync() {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n this._retries = 0;\n await this.startSync();\n }\n\n public async isSyncPending(): Promise<boolean> {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n\n // NEW CODE\n const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n LAST_SYNCED_EVENT_ID\n );\n const syncEventId = parseInt(lastSyncedEventId) + 1;\n const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.DISPATCH_ID\n );\n const eventRows = await this.eventsManager.getRowToSync(\n `${syncEventId}`,\n dspID ?? ''\n );\n\n return eventRows.length > 0 && this._retries < this.maxRetryCount;\n\n // OLD CODE\n // let unsyncedData = await this.eventsManager.getAllUnsyncedEvents();\n // return unsyncedData?.length > 0 && this._retries < this.maxRetryCount;\n }\n\n private async markEventSynced(eventRows: EventRow[]) {\n if (!eventRows || eventRows.length === 0) return;\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n const promises: any[] = [];\n for (const ev of eventRows) {\n try {\n promises.push(await this.eventsManager.markEventSynced(ev.id));\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'markEventSynced',\n err.message,\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n\n await Promise.all(promises);\n }\n\n public async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n if (\n !sequence ||\n isEmptyOrBlank(payload) ||\n isEmptyOrBlank(dspID) ||\n isEmptyOrBlank(syncType) ||\n isEmptyOrBlank(objectiveRef)\n )\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertEvent(\n sequence,\n payload,\n dspID,\n syncType,\n objectiveRef,\n config\n );\n }\n\n // NEW CODE\n public async insertBulkEvent(_bulkData: BulkEvent): Promise<void> {\n try {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertBulkEvent(_bulkData);\n } catch (err) {\n throw err;\n }\n }\n\n // NEW CODE\n public async insertQueueEvent(_pushData: BulkEvent): Promise<void> {\n try {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertQueueEvent(_pushData);\n } catch (err) {\n throw err;\n }\n }\n\n // OLD CODE\n // public async insertBulkEvent(_bulkData: BulkEvent[]): Promise<void> {\n // try {\n // /* if (\n // !sequence ||\n // isEmptyOrBlank(payload) ||\n // isEmptyOrBlank(dspID) ||\n // isEmptyOrBlank(syncType) ||\n // isEmptyOrBlank(objectiveRef)\n // )\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // ); */\n // if (!this.eventsManager) {\n // this.eventsManager = await ETEventsManager.getInstance();\n // }\n // await this.eventsManager.insertBulkEvent(_bulkData);\n // } catch (err) {\n // throw err;\n // }\n // }\n\n private checkForInitialization() {\n if (!this.syncHttpClient) {\n throw new BaseError(\n BaseErrorCodes.SyncManagerNotInitialized,\n SyncManagerNotInitialized\n );\n }\n }\n\n public async getObjectiveSummary(objectiveRef: string): Promise<any> {\n if (!objectiveRef) return [];\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n try {\n let data = await this.eventsManager.getObjectiveDetails(objectiveRef);\n let requiredPayload: any = null;\n for (const row of data) {\n let payload = JSON.parse(row.payload);\n if (payload.status === 'CLOSED') {\n requiredPayload = payload;\n }\n }\n if (requiredPayload) return requiredPayload.data;\n else return null;\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'getObjectiveSummary',\n err.message,\n LOG_TYPE.SDK_WARNING\n );\n return null;\n }\n }\n\n private async syncEventToServer(\n eventRows: EventRow[],\n syncType: ExecEngineSyncType | DispatchSyncType\n ) {\n try {\n const success = await this.syncHttpClient?.syncEvent(eventRows, syncType);\n\n if (success) {\n this._retries = 0;\n // NEW CODE\n const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n LAST_SYNCED_EVENT_ID\n );\n const syncEventId = parseInt(lastSyncedEventId) + 1;\n await Storage.getInstance().setSharedItem(\n LAST_SYNCED_EVENT_ID,\n `${syncEventId}`\n );\n\n // OLD CODE\n await this.markEventSynced(eventRows);\n } else {\n this._retries++;\n /* Logger.getInstance().logEvent(\n 'syncEventToServer',\n `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,\n LOG_TYPE.SDK_ERROR\n ); */\n await this.updateEventError(eventRows, 'Unexpected error');\n }\n } catch (error: any) {\n this._retries++;\n /* Logger.getInstance().logEvent(\n 'syncEventToServer',\n `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${\n error.message\n }`,\n LOG_TYPE.SDK_ERROR\n ); */\n await this.updateEventError(\n eventRows,\n JSON.stringify({\n error,\n })\n );\n }\n }\n\n private async syncBulkEventToServer(\n eventRows: EventRow[],\n lastSyncedEventId: string\n ) {\n try {\n const success = await this.syncHttpClient?.syncBulkEvent(eventRows);\n if (success) {\n this._retries = 0;\n // NEW CODE\n\n const syncEventId = parseInt(lastSyncedEventId) + eventRows.length;\n await Storage.getInstance().setSharedItem(\n LAST_SYNCED_EVENT_ID,\n `${syncEventId}`\n );\n\n // OLD CODE\n await this.markEventSynced(eventRows);\n } else {\n this._retries++;\n /* Logger.getInstance().logEvent(\n 'syncEventToServer',\n `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,\n LOG_TYPE.SDK_ERROR\n ); */\n await this.updateEventError(eventRows, 'Unexpected error');\n }\n } catch (error) {\n this._retries++;\n /* Logger.getInstance().logEvent(\n 'syncEventToServer',\n `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${\n error.message\n }`,\n LOG_TYPE.SDK_ERROR\n ); */\n await this.updateEventError(\n eventRows,\n JSON.stringify({\n error,\n })\n );\n }\n }\n\n public async getAllEvents(dspID?: string): Promise<EventRow[]> {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n return this.eventsManager.getAllEvents(dspID);\n }\n public async clearEventsDB() {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n await this.eventsManager.deleteAllEvents();\n }\n}\n"],"mappings":"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"}
|