@os1-platform/dispatch-mobile 2.0.8 → 2.1.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/dispatch-mobile.podspec +35 -0
- package/ios/DispatchSdk-Bridging-Header.h +3 -0
- package/ios/DispatchSdk.m +9 -0
- package/ios/DispatchSdk.swift +8 -0
- package/ios/DispatchSdk.xcodeproj/project.pbxproj +317 -0
- package/ios/EventEmitter.swift +21 -0
- package/ios/EventsConstant.swift +13 -0
- package/ios/RNEventEmitter.m +15 -0
- package/ios/RNEventEmitter.swift +24 -0
- package/lib/commonjs/components/dispatch/DispatchExecNavigator.js +3 -4
- package/lib/commonjs/components/dispatch/DispatchExecNavigator.js.map +1 -1
- package/lib/commonjs/components/executiontasks/cancellation/CancelET.js +13 -8
- package/lib/commonjs/components/executiontasks/cancellation/CancelET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/captureInput/CaptureText.js +3 -4
- package/lib/commonjs/components/executiontasks/captureInput/CaptureText.js.map +1 -1
- package/lib/commonjs/components/executiontasks/deliver/DeliverET.js +3 -4
- 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 +100 -24
- package/lib/commonjs/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/display/DisplayModalET.js +7 -8
- package/lib/commonjs/components/executiontasks/display/DisplayModalET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/doodle/SignatureET.js +36 -13
- package/lib/commonjs/components/executiontasks/doodle/SignatureET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/dropCash/DropCashET.js +3 -4
- package/lib/commonjs/components/executiontasks/dropCash/DropCashET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js +6 -7
- package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/FormGenerator.js +5 -6
- package/lib/commonjs/components/executiontasks/forms/FormGenerator.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/widgets/DateTimeWidget.js +4 -5
- package/lib/commonjs/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/widgets/DropdownWidget.js +3 -4
- package/lib/commonjs/components/executiontasks/forms/widgets/DropdownWidget.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js +3 -4
- package/lib/commonjs/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/widgets/TimeRangeSelector.js +3 -4
- package/lib/commonjs/components/executiontasks/forms/widgets/TimeRangeSelector.js.map +1 -1
- package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestET.js +3 -4
- package/lib/commonjs/components/executiontasks/httpRequest/HttpRequestET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js +136 -22
- package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +8 -8
- package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/PaymentStyles.js +6 -7
- package/lib/commonjs/components/executiontasks/payments/PaymentStyles.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js +5 -6
- package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js +3 -4
- package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js +3 -4
- package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/pickup/PickpSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/pickup/PickupET.js +3 -4
- package/lib/commonjs/components/executiontasks/pickup/PickupET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js +84 -14
- package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/ScanET.js +14 -15
- package/lib/commonjs/components/executiontasks/scan/ScanET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/ScanSchema.js +1 -2
- package/lib/commonjs/components/executiontasks/scan/ScanSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/constants.js +6 -12
- package/lib/commonjs/components/executiontasks/scan/constants.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/interfaces.js +4 -8
- package/lib/commonjs/components/executiontasks/scan/interfaces.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/sub_components/CScanner.js +4 -5
- package/lib/commonjs/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/sub_components/ERDropDown.js +5 -6
- package/lib/commonjs/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js +8 -9
- package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/utils.js +2 -2
- package/lib/commonjs/components/executiontasks/scan/utils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js +8 -9
- package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPSchema.js +1 -2
- package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/validateOTP/constants.js +6 -12
- package/lib/commonjs/components/executiontasks/validateOTP/constants.js.map +1 -1
- package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js +5 -6
- package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
- package/lib/commonjs/components/executiontasks/validateOTP/utils.js +2 -2
- package/lib/commonjs/components/executiontasks/validateOTP/utils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/verifyLocation/GeofenceUtils.js +2 -2
- package/lib/commonjs/components/executiontasks/verifyLocation/GeofenceUtils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocationET.js +3 -4
- package/lib/commonjs/components/executiontasks/verifyLocation/VerifyLocationET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpET.js +3 -4
- package/lib/commonjs/components/executiontasks/verifyOtp/VerifyOtpET.js.map +1 -1
- package/lib/commonjs/components/widgets/AlertDisplay.js +14 -9
- package/lib/commonjs/components/widgets/AlertDisplay.js.map +1 -1
- package/lib/commonjs/components/widgets/CancelOrderDialog.js +5 -6
- package/lib/commonjs/components/widgets/CancelOrderDialog.js.map +1 -1
- package/lib/commonjs/components/widgets/Card.js +2 -3
- package/lib/commonjs/components/widgets/Card.js.map +1 -1
- package/lib/commonjs/components/widgets/GoBackModal.js +1 -2
- package/lib/commonjs/components/widgets/GoBackModal.js.map +1 -1
- package/lib/commonjs/components/widgets/IconButton.js +1 -2
- package/lib/commonjs/components/widgets/IconButton.js.map +1 -1
- package/lib/commonjs/components/widgets/ModalWidget.js +3 -4
- package/lib/commonjs/components/widgets/ModalWidget.js.map +1 -1
- package/lib/commonjs/components/widgets/ProgressDialog.js +2 -3
- package/lib/commonjs/components/widgets/ProgressDialog.js.map +1 -1
- package/lib/commonjs/components/widgets/SearchBar.js +1 -2
- package/lib/commonjs/components/widgets/SearchBar.js.map +1 -1
- package/lib/commonjs/components/widgets/SnackBarCustom.js +3 -5
- package/lib/commonjs/components/widgets/SnackBarCustom.js.map +1 -1
- package/lib/commonjs/components/widgets/SplitTextInput.js +3 -4
- package/lib/commonjs/components/widgets/SplitTextInput.js.map +1 -1
- package/lib/commonjs/components/widgets/TabsComponent.js +3 -4
- package/lib/commonjs/components/widgets/TabsComponent.js.map +1 -1
- package/lib/commonjs/config/DispatchSDKConfig.js +1 -2
- package/lib/commonjs/config/DispatchSDKConfig.js.map +1 -1
- package/lib/commonjs/constants/apiConstants.js +2 -4
- package/lib/commonjs/constants/apiConstants.js.map +1 -1
- package/lib/commonjs/constants/constants.js +11 -22
- package/lib/commonjs/constants/constants.js.map +1 -1
- package/lib/commonjs/constants/statuscode.js +1 -2
- package/lib/commonjs/constants/statuscode.js.map +1 -1
- package/lib/commonjs/errors/ErrorCodes.js +7 -14
- package/lib/commonjs/errors/ErrorCodes.js.map +1 -1
- package/lib/commonjs/events/EventDispatcher.js +5 -3
- package/lib/commonjs/events/EventDispatcher.js.map +1 -1
- package/lib/commonjs/events/EventListener.js +1 -2
- package/lib/commonjs/events/EventListener.js.map +1 -1
- package/lib/commonjs/events/constants.js +1 -2
- package/lib/commonjs/events/constants.js.map +1 -1
- package/lib/commonjs/events/index.js +1 -2
- package/lib/commonjs/events/index.js.map +1 -1
- package/lib/commonjs/icons/ScanIcon.js +1 -2
- package/lib/commonjs/icons/ScanIcon.js.map +1 -1
- package/lib/commonjs/icons/circleMark.svg +3 -0
- package/lib/commonjs/icons/file.js +1 -2
- package/lib/commonjs/icons/file.js.map +1 -1
- package/lib/commonjs/index.js +8 -2
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/locale/Str.js +3 -3
- package/lib/commonjs/locale/Str.js.map +1 -1
- package/lib/commonjs/locale/i18n.js +6 -3
- package/lib/commonjs/locale/i18n.js.map +1 -1
- package/lib/commonjs/manager/dispatch/DispatchStateContainer.js +5 -3
- package/lib/commonjs/manager/dispatch/DispatchStateContainer.js.map +1 -1
- package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js +2 -0
- package/lib/commonjs/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
- package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js +4 -2
- package/lib/commonjs/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
- package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js +4 -2
- package/lib/commonjs/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
- package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js +4 -2
- package/lib/commonjs/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
- package/lib/commonjs/manager/location/LocationManager.js +7 -4
- package/lib/commonjs/manager/location/LocationManager.js.map +1 -1
- package/lib/commonjs/manager/sdk/DispatchSDKManager.js +4 -2
- package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
- package/lib/commonjs/manager/sdk/DispatchSdkCache.js +2 -0
- package/lib/commonjs/manager/sdk/DispatchSdkCache.js.map +1 -1
- package/lib/commonjs/manager/sdk/callbacksHandler.js +1 -2
- package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/AppSyncManager.js +4 -2
- package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/DBConfig.js +15 -26
- package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/NativeSyncManager.js +1 -2
- package/lib/commonjs/manager/syncmanager/NativeSyncManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/constants.js +5 -10
- package/lib/commonjs/manager/syncmanager/constants.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/database.js +2 -2
- package/lib/commonjs/manager/syncmanager/database.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +5 -4
- package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +4 -2
- package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +4 -2
- package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js +15 -3
- package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +4 -2
- package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
- package/lib/commonjs/models/DispatchModels.js +1 -2
- package/lib/commonjs/models/DispatchModels.js.map +1 -1
- package/lib/commonjs/models/execTasks/ETConfig.js +6 -12
- package/lib/commonjs/models/execTasks/ETConfig.js.map +1 -1
- package/lib/commonjs/models/fcm.js.map +1 -1
- package/lib/commonjs/models/sdk.js +1 -2
- package/lib/commonjs/models/sdk.js.map +1 -1
- package/lib/commonjs/native/signature/SignatureCapture.js +1 -2
- package/lib/commonjs/native/signature/SignatureCapture.js.map +1 -1
- package/lib/commonjs/network/GraphQLClient.js +48 -4
- package/lib/commonjs/network/GraphQLClient.js.map +1 -1
- package/lib/commonjs/network/Queries.js +5 -10
- package/lib/commonjs/network/Queries.js.map +1 -1
- package/lib/commonjs/res/strings.js +1 -2
- package/lib/commonjs/res/strings.js.map +1 -1
- package/lib/commonjs/resources/Login.js +1 -2
- package/lib/commonjs/resources/Login.js.map +1 -1
- package/lib/commonjs/resources/network.js +1 -2
- package/lib/commonjs/resources/network.js.map +1 -1
- package/lib/commonjs/styles/SdkColors.js +2 -4
- package/lib/commonjs/styles/SdkColors.js.map +1 -1
- package/lib/commonjs/styles/executionTasks/CommonStyles.js +6 -10
- package/lib/commonjs/styles/executionTasks/CommonStyles.js.map +1 -1
- package/lib/commonjs/ui/screens/CancellationScreen.js +3 -4
- package/lib/commonjs/ui/screens/CancellationScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/CaptureInputScreen.js +5 -5
- package/lib/commonjs/ui/screens/CaptureInputScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js +3 -4
- package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DeliverScreen.js +12 -5
- package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DisplayScreen.js +3 -4
- package/lib/commonjs/ui/screens/DisplayScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DoodleScreen.js +5 -5
- package/lib/commonjs/ui/screens/DoodleScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DropCashScreen.js +5 -5
- package/lib/commonjs/ui/screens/DropCashScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FormsScreen.js +3 -4
- package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/GeofenceScreen.js +3 -4
- package/lib/commonjs/ui/screens/GeofenceScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/HttpRequestScreen.js +1 -2
- package/lib/commonjs/ui/screens/HttpRequestScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ImageCaptureScreen.js +3 -4
- package/lib/commonjs/ui/screens/ImageCaptureScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PaymentScreen.js +6 -6
- package/lib/commonjs/ui/screens/PaymentScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PickupScreen.js +7 -5
- package/lib/commonjs/ui/screens/PickupScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ScanScreen.js +3 -4
- package/lib/commonjs/ui/screens/ScanScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/StartWorkFlowScreen.js +8 -7
- package/lib/commonjs/ui/screens/StartWorkFlowScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ValidateOTPScreen.js +3 -4
- package/lib/commonjs/ui/screens/ValidateOTPScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js +4 -4
- package/lib/commonjs/ui/screens/WithBaseDispatchScreen.js.map +1 -1
- package/lib/commonjs/ui/uiConfig/RouteParams.js +1 -2
- package/lib/commonjs/ui/uiConfig/RouteParams.js.map +1 -1
- package/lib/commonjs/utils/ApiUtils.js +2 -4
- package/lib/commonjs/utils/ApiUtils.js.map +1 -1
- package/lib/commonjs/utils/Logger.js +10 -9
- package/lib/commonjs/utils/Logger.js.map +1 -1
- package/lib/commonjs/utils/NetworkUtil.js +1 -2
- package/lib/commonjs/utils/NetworkUtil.js.map +1 -1
- package/lib/commonjs/utils/SdkUtils.js +12 -8
- package/lib/commonjs/utils/SdkUtils.js.map +1 -1
- package/lib/commonjs/utils/SyncManagerUtils.js +2 -2
- package/lib/commonjs/utils/SyncManagerUtils.js.map +1 -1
- package/lib/commonjs/utils/fcm/FCM.js +3 -4
- package/lib/commonjs/utils/fcm/FCM.js.map +1 -1
- package/lib/commonjs/utils/fcm/FcmUtils.js +14 -2
- package/lib/commonjs/utils/fcm/FcmUtils.js.map +1 -1
- package/lib/commonjs/utils/helper.js +1 -2
- package/lib/commonjs/utils/helper.js.map +1 -1
- package/lib/commonjs/utils/hooks/useModal.js +3 -4
- package/lib/commonjs/utils/hooks/useModal.js.map +1 -1
- package/lib/commonjs/utils/hooks/useTimer.js +1 -2
- package/lib/commonjs/utils/hooks/useTimer.js.map +1 -1
- package/lib/commonjs/utils/loginHelper.js +1 -2
- package/lib/commonjs/utils/loginHelper.js.map +1 -1
- package/lib/commonjs/utils/storage.js +71 -13
- package/lib/commonjs/utils/storage.js.map +1 -1
- package/lib/module/components/dispatch/DispatchExecNavigator.js.map +1 -1
- package/lib/module/components/executiontasks/cancellation/CancelET.js +11 -5
- package/lib/module/components/executiontasks/cancellation/CancelET.js.map +1 -1
- package/lib/module/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
- package/lib/module/components/executiontasks/deliver/SLDeliverET.js +99 -21
- package/lib/module/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
- package/lib/module/components/executiontasks/display/DisplayModalET.js +5 -5
- package/lib/module/components/executiontasks/display/DisplayModalET.js.map +1 -1
- package/lib/module/components/executiontasks/doodle/SignatureET.js +34 -10
- package/lib/module/components/executiontasks/doodle/SignatureET.js.map +1 -1
- package/lib/module/components/executiontasks/dropCash/SLDropCash.js +4 -4
- package/lib/module/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
- package/lib/module/components/executiontasks/forms/FormGenerator.js +3 -3
- package/lib/module/components/executiontasks/forms/FormGenerator.js.map +1 -1
- package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js +1 -1
- package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js +131 -18
- package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +3 -3
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/module/components/executiontasks/payments/PaymentStyles.js +6 -6
- package/lib/module/components/executiontasks/payments/PaymentStyles.js.map +1 -1
- package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js +3 -3
- package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
- package/lib/module/components/executiontasks/pickup/PickpSchema.js.map +1 -1
- package/lib/module/components/executiontasks/pickup/SLPickupET.js +82 -11
- package/lib/module/components/executiontasks/pickup/SLPickupET.js.map +1 -1
- package/lib/module/components/executiontasks/scan/ScanET.js +12 -12
- package/lib/module/components/executiontasks/scan/ScanET.js.map +1 -1
- package/lib/module/components/executiontasks/scan/sub_components/CScanner.js +2 -2
- package/lib/module/components/executiontasks/scan/sub_components/CScanner.js.map +1 -1
- package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js +3 -3
- package/lib/module/components/executiontasks/scan/sub_components/ERDropDown.js.map +1 -1
- package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js +6 -6
- package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
- package/lib/module/components/executiontasks/scan/utils.js.map +1 -1
- package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js +6 -6
- package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
- package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js +3 -3
- package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
- package/lib/module/components/widgets/AlertDisplay.js +12 -7
- package/lib/module/components/widgets/AlertDisplay.js.map +1 -1
- package/lib/module/components/widgets/CancelOrderDialog.js +3 -3
- package/lib/module/components/widgets/CancelOrderDialog.js.map +1 -1
- package/lib/module/components/widgets/Card.js +1 -1
- package/lib/module/components/widgets/Card.js.map +1 -1
- package/lib/module/components/widgets/ModalWidget.js +3 -3
- package/lib/module/components/widgets/ModalWidget.js.map +1 -1
- package/lib/module/components/widgets/ProgressDialog.js +2 -2
- package/lib/module/components/widgets/ProgressDialog.js.map +1 -1
- package/lib/module/components/widgets/SnackBarCustom.js +2 -2
- package/lib/module/components/widgets/SnackBarCustom.js.map +1 -1
- package/lib/module/events/EventDispatcher.js +5 -2
- package/lib/module/events/EventDispatcher.js.map +1 -1
- package/lib/module/icons/circleMark.svg +3 -0
- package/lib/module/index.js +2 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/locale/Str.js +2 -1
- package/lib/module/locale/Str.js.map +1 -1
- package/lib/module/locale/i18n.js +5 -1
- package/lib/module/locale/i18n.js.map +1 -1
- package/lib/module/manager/dispatch/DispatchStateContainer.js +3 -1
- package/lib/module/manager/dispatch/DispatchStateContainer.js.map +1 -1
- package/lib/module/manager/dispatchCodes/EventCodeContainer.js +2 -0
- package/lib/module/manager/dispatchCodes/EventCodeContainer.js.map +1 -1
- package/lib/module/manager/dispatchCodes/EventCodeRepo.js +2 -0
- package/lib/module/manager/dispatchCodes/EventCodeRepo.js.map +1 -1
- package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js +2 -0
- package/lib/module/manager/dispatchCodes/ReasonCodeContainer.js.map +1 -1
- package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js +2 -0
- package/lib/module/manager/dispatchCodes/ReasonCodeRepo.js.map +1 -1
- package/lib/module/manager/location/LocationManager.js +2 -0
- package/lib/module/manager/location/LocationManager.js.map +1 -1
- package/lib/module/manager/sdk/DispatchSDKManager.js +2 -0
- package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
- package/lib/module/manager/sdk/DispatchSdkCache.js +2 -0
- package/lib/module/manager/sdk/DispatchSdkCache.js.map +1 -1
- package/lib/module/manager/syncmanager/AppSyncManager.js +2 -0
- package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
- package/lib/module/manager/syncmanager/DBConfig.js +1 -0
- package/lib/module/manager/syncmanager/DBConfig.js.map +1 -1
- package/lib/module/manager/syncmanager/document/DocumentManager.js +2 -0
- package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
- package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +2 -0
- package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
- package/lib/module/manager/syncmanager/events/ETEventsManager.js +13 -1
- package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
- package/lib/module/manager/syncmanager/events/EventsSyncManager.js +2 -0
- package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
- package/lib/module/models/fcm.js.map +1 -1
- package/lib/module/network/GraphQLClient.js +48 -3
- package/lib/module/network/GraphQLClient.js.map +1 -1
- package/lib/module/ui/screens/CaptureInputScreen.js +2 -1
- package/lib/module/ui/screens/CaptureInputScreen.js.map +1 -1
- package/lib/module/ui/screens/DeliverScreen.js +9 -1
- package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
- package/lib/module/ui/screens/DoodleScreen.js +2 -1
- package/lib/module/ui/screens/DoodleScreen.js.map +1 -1
- package/lib/module/ui/screens/DropCashScreen.js +2 -2
- package/lib/module/ui/screens/DropCashScreen.js.map +1 -1
- package/lib/module/ui/screens/PaymentScreen.js +3 -2
- package/lib/module/ui/screens/PaymentScreen.js.map +1 -1
- package/lib/module/ui/screens/PickupScreen.js +4 -1
- package/lib/module/ui/screens/PickupScreen.js.map +1 -1
- package/lib/module/ui/screens/StartWorkFlowScreen.js +6 -4
- package/lib/module/ui/screens/StartWorkFlowScreen.js.map +1 -1
- package/lib/module/ui/screens/WithBaseDispatchScreen.js +1 -0
- package/lib/module/ui/screens/WithBaseDispatchScreen.js.map +1 -1
- package/lib/module/utils/Logger.js +2 -0
- package/lib/module/utils/Logger.js.map +1 -1
- package/lib/module/utils/SdkUtils.js +11 -7
- package/lib/module/utils/SdkUtils.js.map +1 -1
- package/lib/module/utils/fcm/FcmUtils.js +11 -0
- package/lib/module/utils/fcm/FcmUtils.js.map +1 -1
- package/lib/module/utils/storage.js +69 -10
- package/lib/module/utils/storage.js.map +1 -1
- package/lib/typescript/components/executiontasks/deliver/DeliverETInput.d.ts +4 -0
- package/lib/typescript/components/executiontasks/payments/PaymentStyles.d.ts +4 -5
- package/lib/typescript/components/executiontasks/pickup/PickpSchema.d.ts +1 -0
- package/lib/typescript/components/widgets/SnackBarCustom.d.ts +1 -1
- package/lib/typescript/index.d.ts +2 -2
- package/lib/typescript/locale/Str.d.ts +1 -0
- package/lib/typescript/manager/syncmanager/DBConfig.d.ts +2 -1
- package/lib/typescript/models/fcm.d.ts +3 -0
- package/lib/typescript/utils/fcm/FcmUtils.d.ts +2 -1
- package/lib/typescript/utils/storage.d.ts +3 -2
- package/package.json +21 -7
- package/src/@types/assets/index.d.ts +6 -0
- package/src/components/dispatch/DispatchExecNavigator.tsx +273 -0
- package/src/components/executiontasks/CompletedWFSchema.ts +24 -0
- package/src/components/executiontasks/ExecutionTasksIndex.ts +137 -0
- package/src/components/executiontasks/cancellation/CancelET.tsx +281 -0
- package/src/components/executiontasks/cancellation/CancellationSchema.ts +30 -0
- package/src/components/executiontasks/captureInput/CaptureInputSchema.ts +52 -0
- package/src/components/executiontasks/captureInput/CaptureText.tsx +172 -0
- package/src/components/executiontasks/captureInput/utils.ts +9 -0
- package/src/components/executiontasks/deliver/DeliverET.tsx +124 -0
- package/src/components/executiontasks/deliver/DeliverETInput.ts +51 -0
- package/src/components/executiontasks/deliver/SLDeliverET.tsx +515 -0
- package/src/components/executiontasks/display/DisplayModalET.tsx +174 -0
- package/src/components/executiontasks/display/DisplaySchema.ts +29 -0
- package/src/components/executiontasks/doodle/SignatureET.tsx +320 -0
- package/src/components/executiontasks/doodle/SignatureSchema.ts +51 -0
- package/src/components/executiontasks/dropCash/DropCashET.tsx +145 -0
- package/src/components/executiontasks/dropCash/DropCashSchema.ts +22 -0
- package/src/components/executiontasks/dropCash/SLDropCash.tsx +286 -0
- package/src/components/executiontasks/forms/FormGenerator.tsx +282 -0
- package/src/components/executiontasks/forms/FormSchema.ts +29 -0
- package/src/components/executiontasks/forms/widgets/DateTimeWidget.tsx +144 -0
- package/src/components/executiontasks/forms/widgets/DropdownWidget.tsx +52 -0
- package/src/components/executiontasks/forms/widgets/QRBarcodeScannerWidget.tsx +158 -0
- package/src/components/executiontasks/forms/widgets/TimeRangeSelector.tsx +38 -0
- package/src/components/executiontasks/httpRequest/HttpEtUtils.ts +49 -0
- package/src/components/executiontasks/httpRequest/HttpRequestET.tsx +59 -0
- package/src/components/executiontasks/httpRequest/HttpRequestETSchema.ts +42 -0
- package/src/components/executiontasks/imageCapture/CaptureSchema.ts +93 -0
- package/src/components/executiontasks/imageCapture/CaptureUtils.ts +326 -0
- package/src/components/executiontasks/imageCapture/ImageCapture.tsx +363 -0
- package/src/components/executiontasks/payments/PaymentStyles.ts +93 -0
- package/src/components/executiontasks/payments/PaymentUtils.ts +7 -0
- package/src/components/executiontasks/payments/completePayment/CompletePaymentET.tsx +237 -0
- package/src/components/executiontasks/payments/completePayment/CompletePaymentSchema.ts +23 -0
- package/src/components/executiontasks/payments/init/InitPaymentET.tsx +247 -0
- package/src/components/executiontasks/payments/init/InitPaymentSchema.ts +37 -0
- package/src/components/executiontasks/payments/processPayment/ProcessPaymentET.tsx +272 -0
- package/src/components/executiontasks/payments/processPayment/ProcessPaymentSchema.ts +38 -0
- package/src/components/executiontasks/pickup/PickpSchema.ts +29 -0
- package/src/components/executiontasks/pickup/PickupET.tsx +126 -0
- package/src/components/executiontasks/pickup/SLPickupET.tsx +370 -0
- package/src/components/executiontasks/scan/ScanET.tsx +1059 -0
- package/src/components/executiontasks/scan/ScanSchema.ts +121 -0
- package/src/components/executiontasks/scan/constants.ts +6 -0
- package/src/components/executiontasks/scan/interfaces.ts +109 -0
- package/src/components/executiontasks/scan/modalConstant.ts +120 -0
- package/src/components/executiontasks/scan/sub_components/CScanner.tsx +107 -0
- package/src/components/executiontasks/scan/sub_components/DropDownUtils.ts +119 -0
- package/src/components/executiontasks/scan/sub_components/ERDropDown.tsx +134 -0
- package/src/components/executiontasks/scan/sub_components/SummaryPage.tsx +1296 -0
- package/src/components/executiontasks/scan/utils.ts +1108 -0
- package/src/components/executiontasks/validateOTP/ValidateOTPET.tsx +436 -0
- package/src/components/executiontasks/validateOTP/ValidateOTPSchema.ts +68 -0
- package/src/components/executiontasks/validateOTP/constants.ts +24 -0
- package/src/components/executiontasks/validateOTP/sub-components/OTPInput.tsx +83 -0
- package/src/components/executiontasks/validateOTP/utils.ts +180 -0
- package/src/components/executiontasks/verifyInput/VerifyInputSchema.ts +49 -0
- package/src/components/executiontasks/verifyLocation/GeofenceUtils.ts +55 -0
- package/src/components/executiontasks/verifyLocation/VerifyLocSchema.ts +56 -0
- package/src/components/executiontasks/verifyLocation/VerifyLocationET.tsx +69 -0
- package/src/components/executiontasks/verifyOtp/VerifyOtpET.tsx +96 -0
- package/src/components/executiontasks/verifyOtp/VerifyOtpSchema.ts +27 -0
- package/src/components/utils/index.ts +18 -0
- package/src/components/widgets/AlertDisplay.tsx +38 -0
- package/src/components/widgets/CancelOrderDialog.tsx +112 -0
- package/src/components/widgets/Card.tsx +99 -0
- package/src/components/widgets/GoBackModal.tsx +49 -0
- package/src/components/widgets/IconButton.tsx +32 -0
- package/src/components/widgets/ModalWidget.tsx +157 -0
- package/src/components/widgets/ProgressDialog.tsx +54 -0
- package/src/components/widgets/SearchBar.tsx +71 -0
- package/src/components/widgets/SnackBarCustom.tsx +212 -0
- package/src/components/widgets/SplitTextInput.tsx +116 -0
- package/src/components/widgets/TabsComponent.tsx +84 -0
- package/src/components/widgets/Toaster.ts +8 -0
- package/src/config/DispatchSDKConfig.ts +4 -0
- package/src/constants/apiConstants.ts +11 -0
- package/src/constants/constants.ts +12 -0
- package/src/constants/statuscode.ts +8 -0
- package/src/errors/BaseError.ts +16 -0
- package/src/errors/ErrorCodes.ts +38 -0
- package/src/events/EventDispatcher.ts +22 -0
- package/src/events/EventListener.ts +14 -0
- package/src/events/constants.ts +7 -0
- package/src/events/index.ts +3 -0
- package/src/events/interface.ts +1 -0
- package/src/icons/ScanIcon.tsx +24 -0
- package/src/icons/circleMark.svg +3 -0
- package/src/icons/file.tsx +24 -0
- package/src/icons/interface.ts +5 -0
- package/src/index.tsx +80 -0
- package/src/locale/Str.ts +13 -0
- package/src/locale/en.json +6 -0
- package/src/locale/i18n.ts +22 -0
- package/src/locale/util.ts +20 -0
- package/src/manager/dispatch/DispatchStateContainer.tsx +842 -0
- package/src/manager/dispatchCodes/EventCodeContainer.ts +75 -0
- package/src/manager/dispatchCodes/EventCodeRepo.ts +82 -0
- package/src/manager/dispatchCodes/ReasonCodeContainer.ts +121 -0
- package/src/manager/dispatchCodes/ReasonCodeRepo.ts +90 -0
- package/src/manager/dispatchCodes/reasonCodes.json +137 -0
- package/src/manager/jobRemoval/JobRemovalManager.ts +21 -0
- package/src/manager/location/LocationManager.ts +77 -0
- package/src/manager/sdk/DispatchSDKManager.ts +99 -0
- package/src/manager/sdk/DispatchSdkCache.ts +47 -0
- package/src/manager/sdk/callbacksHandler.ts +25 -0
- package/src/manager/syncmanager/AppSyncManager.ts +187 -0
- package/src/manager/syncmanager/DBConfig.ts +181 -0
- package/src/manager/syncmanager/NativeSyncManager.ts +14 -0
- package/src/manager/syncmanager/constants.ts +5 -0
- package/src/manager/syncmanager/database.ts +93 -0
- package/src/manager/syncmanager/document/DocumentHttpClient.ts +111 -0
- package/src/manager/syncmanager/document/DocumentManager.ts +143 -0
- package/src/manager/syncmanager/document/DocumentSyncManager.ts +233 -0
- package/src/manager/syncmanager/document/models.ts +4 -0
- package/src/manager/syncmanager/events/ETEventsManager.ts +647 -0
- package/src/manager/syncmanager/events/EventsGraphQLClient.ts +0 -0
- package/src/manager/syncmanager/events/EventsSyncManager.ts +490 -0
- package/src/manager/syncmanager/events/SyncHttpClient.ts +202 -0
- package/src/models/DispatchModels.ts +97 -0
- package/src/models/ReasonCodes.ts +12 -0
- package/src/models/auth.ts +43 -0
- package/src/models/execTasks/ETBaseModels.ts +113 -0
- package/src/models/execTasks/ETConfig.ts +94 -0
- package/src/models/execution.ts +9 -0
- package/src/models/fcm.ts +6 -0
- package/src/models/sdk.ts +35 -0
- package/src/native/signature/SignatureCapture.tsx +110 -0
- package/src/network/GraphQLClient.ts +147 -0
- package/src/network/NetworkClient.ts +58 -0
- package/src/network/NetworkUtils.ts +41 -0
- package/src/network/Queries.ts +46 -0
- package/src/network/client.ts +61 -0
- package/src/res/strings.ts +1 -0
- package/src/resources/Login.ts +36 -0
- package/src/resources/network.ts +13 -0
- package/src/styles/SdkColors.ts +24 -0
- package/src/styles/executionTasks/CommonStyles.ts +188 -0
- package/src/ui/screens/CancellationScreen.tsx +144 -0
- package/src/ui/screens/CaptureInputScreen.tsx +79 -0
- package/src/ui/screens/CompleteObjectiveScreen.tsx +72 -0
- package/src/ui/screens/DeliverScreen.tsx +117 -0
- package/src/ui/screens/DisplayScreen.tsx +52 -0
- package/src/ui/screens/DoodleScreen.tsx +84 -0
- package/src/ui/screens/DropCashScreen.tsx +113 -0
- package/src/ui/screens/ETScreensIndex.ts +35 -0
- package/src/ui/screens/FormsScreen.tsx +164 -0
- package/src/ui/screens/GeofenceScreen.tsx +54 -0
- package/src/ui/screens/HttpRequestScreen.tsx +47 -0
- package/src/ui/screens/ImageCaptureScreen.tsx +77 -0
- package/src/ui/screens/PaymentScreen.tsx +191 -0
- package/src/ui/screens/PickupScreen.tsx +85 -0
- package/src/ui/screens/ScanScreen.tsx +159 -0
- package/src/ui/screens/StartWorkFlowScreen.tsx +233 -0
- package/src/ui/screens/ValidateOTPScreen.tsx +62 -0
- package/src/ui/screens/WithBaseDispatchScreen.tsx +33 -0
- package/src/ui/uiConfig/RouteParams.ts +28 -0
- package/src/utils/ApiUtils.ts +157 -0
- package/src/utils/ExecTaskUtils.ts +214 -0
- package/src/utils/Logger.ts +110 -0
- package/src/utils/NetworkUtil.ts +50 -0
- package/src/utils/SdkUtils.ts +155 -0
- package/src/utils/SyncManagerUtils.ts +223 -0
- package/src/utils/fcm/FCM.ts +118 -0
- package/src/utils/fcm/FcmUtils.ts +130 -0
- package/src/utils/helper.ts +24 -0
- package/src/utils/hooks/useModal.tsx +67 -0
- package/src/utils/hooks/useTimer.ts +44 -0
- package/src/utils/loginHelper.ts +51 -0
- package/src/utils/storage.ts +292 -0
- package/src/utils/test.json +17 -0
- package/src/utils/utils.ts +30 -0
- package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/android/gradle/wrapper/gradle-wrapper.properties +0 -5
- package/android/gradlew +0 -185
- package/android/gradlew.bat +0 -89
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import DispatchSdkCache from './DispatchSdkCache';
|
|
2
|
+
import LocationManager from '../location/LocationManager';
|
|
3
|
+
import AppSyncManager from '../syncmanager/AppSyncManager';
|
|
4
|
+
import Logger from '../../utils/Logger';
|
|
5
|
+
import ReasonCodeContainer from '../dispatchCodes/ReasonCodeContainer';
|
|
6
|
+
import GraphQLClient from '../../network/GraphQLClient';
|
|
7
|
+
import { isMandatoryKeysPresent, isTokenExpired } from '../../utils/utils';
|
|
8
|
+
import { BaseError } from '../../errors/BaseError';
|
|
9
|
+
import ErrorCodes from '../../errors/ErrorCodes';
|
|
10
|
+
import SdkUtils from '../../utils/SdkUtils';
|
|
11
|
+
import * as Sentry from '@sentry/react-native';
|
|
12
|
+
import type { DispatchSDKConfig } from '../../models/sdk';
|
|
13
|
+
import EventCodeRepo from '../dispatchCodes/EventCodeRepo';
|
|
14
|
+
import Storage from '../../utils/storage';
|
|
15
|
+
import { pushBulkEventForSync } from '../../utils/SyncManagerUtils';
|
|
16
|
+
import callbackHandler from './callbacksHandler';
|
|
17
|
+
import { DispatchExecutor as dispatchExecutor } from '@os1-platform/platform-coreos-execution-engine-sdk';
|
|
18
|
+
|
|
19
|
+
export class DispatchSDKManager {
|
|
20
|
+
private static instance: DispatchSDKManager;
|
|
21
|
+
private cache: DispatchSdkCache = DispatchSdkCache.getInstance();
|
|
22
|
+
private keys = DispatchSdkCache.KEYS;
|
|
23
|
+
|
|
24
|
+
private constructor() {}
|
|
25
|
+
|
|
26
|
+
public static getInstance(): DispatchSDKManager {
|
|
27
|
+
if (!DispatchSDKManager.instance) {
|
|
28
|
+
DispatchSDKManager.instance = new DispatchSDKManager();
|
|
29
|
+
}
|
|
30
|
+
return DispatchSDKManager.instance;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Call this init method with username,userID & authentication tokens
|
|
35
|
+
* @param sdkConfig
|
|
36
|
+
*/
|
|
37
|
+
public async initDispatchSDK(sdkConfig: DispatchSDKConfig) {
|
|
38
|
+
if (
|
|
39
|
+
!isMandatoryKeysPresent(sdkConfig, [
|
|
40
|
+
'tenantID',
|
|
41
|
+
'userID',
|
|
42
|
+
'userName',
|
|
43
|
+
'tenantBaseURL',
|
|
44
|
+
'accessToken',
|
|
45
|
+
])
|
|
46
|
+
) {
|
|
47
|
+
throw new BaseError(
|
|
48
|
+
ErrorCodes.InvalidArgumentError,
|
|
49
|
+
'Invalid/Missing Argument Passed in SdkConfig'
|
|
50
|
+
);
|
|
51
|
+
}
|
|
52
|
+
if (isTokenExpired(sdkConfig.accessToken)) {
|
|
53
|
+
throw new BaseError(
|
|
54
|
+
ErrorCodes.ACCESS_TOKEN_EXPIRED,
|
|
55
|
+
'JWT Token Expired!'
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
if (sdkConfig.sentry && sdkConfig.sentry?.enabled) {
|
|
59
|
+
Sentry.init({
|
|
60
|
+
enableNative: true,
|
|
61
|
+
environment: sdkConfig.sentry.env,
|
|
62
|
+
dsn: sdkConfig.sentry.dsn,
|
|
63
|
+
tracesSampleRate: 1.0,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
await SdkUtils.checkMandatory();
|
|
67
|
+
await this.cache.setObjectInCache(this.keys.SDK_CONFIG, sdkConfig);
|
|
68
|
+
GraphQLClient.init(sdkConfig.tenantBaseURL);
|
|
69
|
+
AppSyncManager.initAppSync(
|
|
70
|
+
sdkConfig.tenantBaseURL,
|
|
71
|
+
sdkConfig.syncRetryCount ?? 3
|
|
72
|
+
);
|
|
73
|
+
LocationManager.getInstance().startUpdates();
|
|
74
|
+
if (sdkConfig.eventMapping) {
|
|
75
|
+
EventCodeRepo.getInstance().saveEventCode(sdkConfig.eventMapping);
|
|
76
|
+
}
|
|
77
|
+
await ReasonCodeContainer.getInstance().fetchReasonCode();
|
|
78
|
+
Logger.getInstance().setLogging(sdkConfig.enableLogging ?? true, sdkConfig);
|
|
79
|
+
let storage = Storage.getInstance();
|
|
80
|
+
|
|
81
|
+
if (sdkConfig.callbacks?.fetchPhoneNumbersCallback) {
|
|
82
|
+
await callbackHandler.init(sdkConfig.callbacks.fetchPhoneNumbersCallback);
|
|
83
|
+
}
|
|
84
|
+
await dispatchExecutor.init(
|
|
85
|
+
{
|
|
86
|
+
storeMultipleKeysCallback: storage.setSharedItems,
|
|
87
|
+
readMultipleKeysCallback: storage.getSharedItems,
|
|
88
|
+
deleteMultipleKeysCallback: storage.removeSharedItems,
|
|
89
|
+
eventBulkSyncCallback: pushBulkEventForSync,
|
|
90
|
+
},
|
|
91
|
+
sdkConfig.debugLevelLog ? 'debug' : 'emerg'
|
|
92
|
+
);
|
|
93
|
+
AppSyncManager.getInstance().startSDKSyncManager();
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
public removeLocationUpdates() {
|
|
97
|
+
LocationManager.getInstance().stopLocationUpdates();
|
|
98
|
+
}
|
|
99
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import Storage from '../../utils/storage';
|
|
2
|
+
|
|
3
|
+
export default class DispatchSdkCache {
|
|
4
|
+
private storage: Storage = Storage.getInstance();
|
|
5
|
+
private static instance: DispatchSdkCache;
|
|
6
|
+
|
|
7
|
+
public static getInstance() {
|
|
8
|
+
if (!DispatchSdkCache.instance) {
|
|
9
|
+
DispatchSdkCache.instance = new DispatchSdkCache();
|
|
10
|
+
}
|
|
11
|
+
return DispatchSdkCache.instance;
|
|
12
|
+
}
|
|
13
|
+
public static KEYS = {
|
|
14
|
+
SDK_CONFIG: 'dsc_sdk_config',
|
|
15
|
+
DISPATCH_ID: 'dsc_dispatch_id',
|
|
16
|
+
FMS_FOLDER: 'dsc_fms_folder',
|
|
17
|
+
FIREBASE_REGISTRATION_TOKEN: 'dsc_firebase_token',
|
|
18
|
+
REASON_FETCH_TIME: 'dsc_reasons_fetch_time',
|
|
19
|
+
CURRENT_WORKING_TASK_ID: 'current_working_task_id',
|
|
20
|
+
// TASK_START_TIME: 'task_start_time',
|
|
21
|
+
};
|
|
22
|
+
public async setObjectInCache(keyName: string, obj: any) {
|
|
23
|
+
await this.storage.setObject(keyName, obj);
|
|
24
|
+
}
|
|
25
|
+
public async getObjectFromCache(keyName: string): Promise<any> {
|
|
26
|
+
return await this.storage.getObject(keyName);
|
|
27
|
+
}
|
|
28
|
+
public async setKeyInCache(keyName: string, keyValue: string) {
|
|
29
|
+
await this.storage.setItem(keyName, keyValue);
|
|
30
|
+
}
|
|
31
|
+
public async getKeyFromCache(keyName: string): Promise<string | null> {
|
|
32
|
+
try {
|
|
33
|
+
let keyValue = await this.storage.getItem(keyName);
|
|
34
|
+
if (keyValue != null) return keyValue;
|
|
35
|
+
else return null;
|
|
36
|
+
} catch (error: any) {
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
public async clearKeys(keys: string[]) {
|
|
41
|
+
try {
|
|
42
|
+
for (let i = 0; i < keys.length; i++) {
|
|
43
|
+
await this.storage.deleteItem(keys[i]);
|
|
44
|
+
}
|
|
45
|
+
} catch (error: any) {}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
class CallbacksHandler {
|
|
2
|
+
private _callbackToFetchPhoneNumbers!: (
|
|
3
|
+
sdsIds: string[]
|
|
4
|
+
) => Promise<{ key: string; value: string[] }>;
|
|
5
|
+
|
|
6
|
+
public init(
|
|
7
|
+
phoneCallback: (
|
|
8
|
+
sdsIds: string[]
|
|
9
|
+
) => Promise<{ key: string; value: string[] }>
|
|
10
|
+
) {
|
|
11
|
+
this._callbackToFetchPhoneNumbers = phoneCallback;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
public async getPhoneNumbers(
|
|
15
|
+
sdsIds: string[]
|
|
16
|
+
): Promise<{ key: string; value: string[] } | null> {
|
|
17
|
+
if (!this._callbackToFetchPhoneNumbers) return null;
|
|
18
|
+
else {
|
|
19
|
+
return await this._callbackToFetchPhoneNumbers(sdsIds);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const callbackHandler = new CallbacksHandler();
|
|
25
|
+
export default callbackHandler;
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import DocumentSyncManager from './document/DocumentSyncManager';
|
|
2
|
+
import EventsSyncManager from './events/EventsSyncManager';
|
|
3
|
+
import NetworkUtil from '../../utils/NetworkUtil';
|
|
4
|
+
import Logger, { LOG_TYPE } from '../../utils/Logger';
|
|
5
|
+
import NativeSyncManager from './NativeSyncManager';
|
|
6
|
+
import DispatchSdkCache from '../sdk/DispatchSdkCache';
|
|
7
|
+
import { AppRegistry, Platform } from 'react-native';
|
|
8
|
+
import { BaseError } from '../../errors/BaseError';
|
|
9
|
+
import ErrorCodes from '../../errors/ErrorCodes';
|
|
10
|
+
import type { SdkSyncType } from '../../models/DispatchModels';
|
|
11
|
+
import type { BulkEvent, DocumentRow, EventRow } from './DBConfig';
|
|
12
|
+
import {
|
|
13
|
+
DEFAULT_INTERVAL,
|
|
14
|
+
DEFAULT_NOTIFICATION_DESCRIPTION,
|
|
15
|
+
DEFAULT_NOTIFICATION_TITLE,
|
|
16
|
+
} from '../../constants/constants';
|
|
17
|
+
import type { DispatchSDKConfig } from '../../models/sdk';
|
|
18
|
+
|
|
19
|
+
export default class AppSyncManager {
|
|
20
|
+
private constructor(tenantBaseURL: string, retryCount: number) {
|
|
21
|
+
DocumentSyncManager.getInstance().init(tenantBaseURL, retryCount);
|
|
22
|
+
EventsSyncManager.getInstance().initSyncManager(tenantBaseURL, retryCount);
|
|
23
|
+
}
|
|
24
|
+
private static instance: AppSyncManager;
|
|
25
|
+
public isSyncActive = false;
|
|
26
|
+
public isForceStartEnabled = true;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
*
|
|
30
|
+
* @param forceSync - true/false - if true resets the retry count key and start the sync
|
|
31
|
+
* @param syncType
|
|
32
|
+
*/
|
|
33
|
+
public async startSyncing(forceSync: boolean, _syncType?: SdkSyncType) {
|
|
34
|
+
if (await NetworkUtil.isAvailableAsync()) {
|
|
35
|
+
if (forceSync) {
|
|
36
|
+
EventsSyncManager.getInstance().forceSync();
|
|
37
|
+
DocumentSyncManager.getInstance().forceDocumentSync();
|
|
38
|
+
} else {
|
|
39
|
+
EventsSyncManager.getInstance().startSync();
|
|
40
|
+
DocumentSyncManager.getInstance().startDocumentSync();
|
|
41
|
+
}
|
|
42
|
+
} else {
|
|
43
|
+
Logger.getInstance().logEvent(
|
|
44
|
+
'startSync',
|
|
45
|
+
'No network',
|
|
46
|
+
LOG_TYPE.SDK_INFO
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
public async isAppSyncPending(): Promise<boolean> {
|
|
52
|
+
return (
|
|
53
|
+
(await EventsSyncManager.getInstance().isSyncPending()) ||
|
|
54
|
+
(await DocumentSyncManager.getInstance().isSyncPending())
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
public static initAppSync(
|
|
58
|
+
tenantBaseURL: string,
|
|
59
|
+
syncRetryCount: number
|
|
60
|
+
): AppSyncManager {
|
|
61
|
+
if (!AppSyncManager.instance) {
|
|
62
|
+
Logger.getInstance().logEvent(
|
|
63
|
+
'initAppSync',
|
|
64
|
+
'CREATING NEW INSTANCE',
|
|
65
|
+
LOG_TYPE.SDK_INFO
|
|
66
|
+
);
|
|
67
|
+
AppSyncManager.instance = new AppSyncManager(
|
|
68
|
+
tenantBaseURL,
|
|
69
|
+
syncRetryCount
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
return AppSyncManager.instance;
|
|
73
|
+
}
|
|
74
|
+
public static getInstance(): AppSyncManager {
|
|
75
|
+
if (!AppSyncManager.instance)
|
|
76
|
+
throw new BaseError(
|
|
77
|
+
ErrorCodes.AppSyncNotInitialized,
|
|
78
|
+
'SDK sync Manager is not initialized'
|
|
79
|
+
);
|
|
80
|
+
else return AppSyncManager.instance;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
public static async startAppSyncManager() {
|
|
84
|
+
try {
|
|
85
|
+
if (!AppSyncManager.instance) {
|
|
86
|
+
NativeSyncManager.stopSyncManager();
|
|
87
|
+
let sdkConfig =
|
|
88
|
+
(await DispatchSdkCache.getInstance().getObjectFromCache(
|
|
89
|
+
DispatchSdkCache.KEYS.SDK_CONFIG
|
|
90
|
+
)) as DispatchSDKConfig;
|
|
91
|
+
const retryCount = sdkConfig.syncRetryCount ?? 3;
|
|
92
|
+
if (sdkConfig.tenantBaseURL != null && retryCount != null) {
|
|
93
|
+
AppSyncManager.initAppSync(sdkConfig.tenantBaseURL, +retryCount);
|
|
94
|
+
AppSyncManager.getInstance().startSDKSyncManager();
|
|
95
|
+
} else {
|
|
96
|
+
Logger.getInstance().logEvent(
|
|
97
|
+
'SYNC_MANAGER_ASM',
|
|
98
|
+
'TENANT BASE URL IS NULL',
|
|
99
|
+
LOG_TYPE.SDK_ERROR
|
|
100
|
+
);
|
|
101
|
+
}
|
|
102
|
+
} else if (await AppSyncManager.instance.isAppSyncPending()) {
|
|
103
|
+
AppSyncManager.instance.startSyncing(false);
|
|
104
|
+
} else {
|
|
105
|
+
NativeSyncManager.stopSyncManager();
|
|
106
|
+
AppSyncManager.getInstance().isSyncActive = false;
|
|
107
|
+
}
|
|
108
|
+
} catch (error: any) {
|
|
109
|
+
Logger.getInstance().logEvent(
|
|
110
|
+
'startAppSyncManager',
|
|
111
|
+
`Unable to start App Sync Manager ${error.message}`,
|
|
112
|
+
LOG_TYPE.SDK_WARNING
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Call this method from index file of the app
|
|
119
|
+
*/
|
|
120
|
+
public static registerSyncTask() {
|
|
121
|
+
AppRegistry.registerHeadlessTask(
|
|
122
|
+
'SYNC_MANAGER',
|
|
123
|
+
() => AppSyncManager.startAppSyncManager
|
|
124
|
+
);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
public async getAllEvents(dispatchID?: string): Promise<EventRow[]> {
|
|
128
|
+
return EventsSyncManager.getInstance().getAllEvents(dispatchID);
|
|
129
|
+
}
|
|
130
|
+
public async getAllDocuments(dispatchID?: string): Promise<DocumentRow[]> {
|
|
131
|
+
return DocumentSyncManager.getInstance().getAllDocuments(dispatchID);
|
|
132
|
+
}
|
|
133
|
+
public startSDKSyncManager() {
|
|
134
|
+
(async () => {
|
|
135
|
+
const config = (await DispatchSdkCache.getInstance().getObjectFromCache(
|
|
136
|
+
DispatchSdkCache.KEYS.SDK_CONFIG
|
|
137
|
+
)) as DispatchSDKConfig;
|
|
138
|
+
if (Platform.OS === 'android') {
|
|
139
|
+
if (!this.isSyncActive && this.isForceStartEnabled) {
|
|
140
|
+
this.isSyncActive = true;
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Reset Retry Counter
|
|
144
|
+
*/
|
|
145
|
+
EventsSyncManager.getInstance().retries = 0;
|
|
146
|
+
DocumentSyncManager.getInstance().retries = 0;
|
|
147
|
+
NativeSyncManager.startSyncManager(
|
|
148
|
+
config?.notificationConfig?.interval ?? DEFAULT_INTERVAL,
|
|
149
|
+
config?.notificationConfig?.title ?? DEFAULT_NOTIFICATION_TITLE,
|
|
150
|
+
config?.notificationConfig?.description ??
|
|
151
|
+
DEFAULT_NOTIFICATION_DESCRIPTION
|
|
152
|
+
);
|
|
153
|
+
} else {
|
|
154
|
+
Logger.getInstance().logEvent(
|
|
155
|
+
'startNativeSyncManager',
|
|
156
|
+
'ANDROID SYNC SERVICE ALREADY RUNNING',
|
|
157
|
+
LOG_TYPE.SDK_INFO
|
|
158
|
+
);
|
|
159
|
+
}
|
|
160
|
+
} else {
|
|
161
|
+
/**
|
|
162
|
+
* For iOS we have to start Normal Foreground sync
|
|
163
|
+
*/
|
|
164
|
+
this.startSyncing(true).then().catch();
|
|
165
|
+
}
|
|
166
|
+
})();
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// NEW CODE
|
|
170
|
+
public async pushToQueue(pushData: BulkEvent): Promise<boolean> {
|
|
171
|
+
try {
|
|
172
|
+
await EventsSyncManager.getInstance().insertBulkEvent(pushData);
|
|
173
|
+
|
|
174
|
+
AppSyncManager.getInstance().startSDKSyncManager();
|
|
175
|
+
return true;
|
|
176
|
+
} catch (error: any) {
|
|
177
|
+
Logger.getInstance().logEvent(
|
|
178
|
+
'pushToQueue ',
|
|
179
|
+
JSON.stringify({
|
|
180
|
+
errorMessage: error.message,
|
|
181
|
+
}),
|
|
182
|
+
LOG_TYPE.SDK_ERROR
|
|
183
|
+
);
|
|
184
|
+
return false;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { IDispatch } from '@os1-platform/platform-coreos-execution-engine-sdk';
|
|
2
|
+
export type ExecEngineSyncType = IDispatch.SyncType;
|
|
3
|
+
|
|
4
|
+
export enum DispatchSyncType {
|
|
5
|
+
DEFAULT = 'DEFAULT',
|
|
6
|
+
DISPATCH_UPDATE = 'DISPATCH_UPDATE',
|
|
7
|
+
DISPATCH_SUB_STATUS_UPDATE = 'DISPATCH_SUB_STATUS_UPDATE',
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const DATABASE_NAME = 'DISPATCH_DB';
|
|
11
|
+
export const EVENTS_TABLE = 'EVENTS_TABLE';
|
|
12
|
+
export const REASONS_TABLE = 'REASONS_TABLE';
|
|
13
|
+
export const EVENT_CODES_TABLE = 'EVENT_CODES_TABLE';
|
|
14
|
+
|
|
15
|
+
export const EVENTS_COLUMNS = {
|
|
16
|
+
ID: 'id',
|
|
17
|
+
SEQUENCE: 'seq_number',
|
|
18
|
+
PAYLOAD: 'payload',
|
|
19
|
+
SYNCED: 'synced',
|
|
20
|
+
CONFIG: 'config',
|
|
21
|
+
SYNC_TYPE: 'sync_type',
|
|
22
|
+
META: 'meta',
|
|
23
|
+
SYNC_ERROR: 'sync_error',
|
|
24
|
+
DISPATCH_ID: 'dispatch_id',
|
|
25
|
+
DATA_LENGTH: 'data_length',
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
export const DOCUMENT_TABLE = 'DOCUMENTS_TABLE';
|
|
29
|
+
export const DOCUMENT_COLUMNS = {
|
|
30
|
+
ID: 'id',
|
|
31
|
+
DATA: 'data',
|
|
32
|
+
BASE64: 'base64',
|
|
33
|
+
FILE_PATH: 'file_path',
|
|
34
|
+
FILE_NAME: 'file_name',
|
|
35
|
+
FILE_TYPE: 'file_type',
|
|
36
|
+
SYNCED: 'synced',
|
|
37
|
+
FMS_FOLDER_ID: 'fms_folder_id',
|
|
38
|
+
FMS_ID: 'fms_id',
|
|
39
|
+
PRIORITY: 'priority',
|
|
40
|
+
DESCRIPTION: 'desc',
|
|
41
|
+
SYNC_ERROR: 'sync_error',
|
|
42
|
+
DISPATCH_ID: 'dispatch_id',
|
|
43
|
+
JOB_ID: 'job_id',
|
|
44
|
+
OBJECTIVE_REF: 'objective_ref',
|
|
45
|
+
};
|
|
46
|
+
export type DocumentRow = {
|
|
47
|
+
id: number;
|
|
48
|
+
data: string;
|
|
49
|
+
base64: boolean;
|
|
50
|
+
file_path: string;
|
|
51
|
+
file_name: string;
|
|
52
|
+
file_type: string;
|
|
53
|
+
synced: boolean;
|
|
54
|
+
fms_folder_id: string;
|
|
55
|
+
fms_id: string;
|
|
56
|
+
priority: number;
|
|
57
|
+
desc: string;
|
|
58
|
+
sync_error: string;
|
|
59
|
+
dispatch_id: string;
|
|
60
|
+
job_id: string;
|
|
61
|
+
objective_ref: string;
|
|
62
|
+
};
|
|
63
|
+
export type EventRow = {
|
|
64
|
+
id: number;
|
|
65
|
+
payload: string;
|
|
66
|
+
synced: boolean;
|
|
67
|
+
config: string;
|
|
68
|
+
sync_type: ExecEngineSyncType | DispatchSyncType;
|
|
69
|
+
objective_ref: string;
|
|
70
|
+
sync_error: string;
|
|
71
|
+
dispatch_id: string;
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
export enum SyncMethod {
|
|
75
|
+
POST = 'POST',
|
|
76
|
+
PUT = 'PUT',
|
|
77
|
+
GET = 'GET',
|
|
78
|
+
DELETE = 'DELETE',
|
|
79
|
+
}
|
|
80
|
+
export const ReasonColums = {
|
|
81
|
+
CODE: 'reasonCode',
|
|
82
|
+
DESCRIPTION: 'description',
|
|
83
|
+
IS_ENABLED: 'isEnabled',
|
|
84
|
+
SYSTEM_DEFINED: 'isSystemDefined',
|
|
85
|
+
};
|
|
86
|
+
export interface ReasonsRow {
|
|
87
|
+
description: string;
|
|
88
|
+
isEnabled: boolean;
|
|
89
|
+
reasonCode: string;
|
|
90
|
+
isSystemDefined: boolean;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export interface EventsRow {
|
|
94
|
+
description: string;
|
|
95
|
+
successEvent: boolean;
|
|
96
|
+
eventCode: string;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export const EventColumns = {
|
|
100
|
+
CODE: 'eventCode',
|
|
101
|
+
DESCRIPTION: 'description',
|
|
102
|
+
SUCCESS_EVENT: 'successEvent',
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
// NEW CODE
|
|
106
|
+
export interface BulkEvent {
|
|
107
|
+
syncType: ExecEngineSyncType | DispatchSyncType;
|
|
108
|
+
dispatchId: string;
|
|
109
|
+
data: any;
|
|
110
|
+
meta?: any; // updatedBy, code, status, timestamp, [{jobId,wfId}]
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
// OLD CODE
|
|
114
|
+
// export interface BulkEvent {
|
|
115
|
+
// syncType: SyncType;
|
|
116
|
+
// dispatchId: string;
|
|
117
|
+
// data: string;
|
|
118
|
+
// config: string;
|
|
119
|
+
// sequence: number;
|
|
120
|
+
// meta?: any;
|
|
121
|
+
// }
|
|
122
|
+
|
|
123
|
+
export interface WFUpdateBulkEventData {
|
|
124
|
+
[customETName: string]: EventETData;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
export interface EventETData {
|
|
128
|
+
output: any;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
export interface WIUpdateOutputPayload {
|
|
132
|
+
dispatchId: string;
|
|
133
|
+
updatedBy: any;
|
|
134
|
+
workflows: Array<WorkflowUpdatePayload>;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
export interface WorkflowUpdatePayload {
|
|
138
|
+
status: string;
|
|
139
|
+
timestamp: number;
|
|
140
|
+
attemptId: 1;
|
|
141
|
+
code: string;
|
|
142
|
+
data: any;
|
|
143
|
+
meta?: any;
|
|
144
|
+
__unmerged?: Array<UnmergedData>;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
export interface UnmergedData {
|
|
148
|
+
workflowInstanceId: string;
|
|
149
|
+
jobId: string;
|
|
150
|
+
data?: any;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
export interface CustodyData {
|
|
154
|
+
dispatchId: string;
|
|
155
|
+
jobId: string;
|
|
156
|
+
custodyEntity: string;
|
|
157
|
+
custodyLocationId: string;
|
|
158
|
+
custodyEntityAmount: number;
|
|
159
|
+
custodyEntityId: string;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
export const WORKFLOW_INSTANCE_TABLE = 'WF_INSTANCE_TABLE';
|
|
163
|
+
export const WORKFLOW_INSTANCE_COLUMNS = {
|
|
164
|
+
WORKFLOW_INSTANCE_ID: 'WFIId',
|
|
165
|
+
MERGED_WORKFLOW_INSTANCE_ID: 'MWFIId',
|
|
166
|
+
JOB_ID: 'jobId',
|
|
167
|
+
SCANNABLE_ID: 'scannableId',
|
|
168
|
+
INITIAL_MERGED_WORKFLOW_INSTANCE_ID: 'InitialMWFIId',
|
|
169
|
+
STATUS: 'status',
|
|
170
|
+
JOB_WF_ID: 'jobWfId',
|
|
171
|
+
DISPLAY_DATA: 'displayData',
|
|
172
|
+
WORKFLOW_ID: 'WFId',
|
|
173
|
+
};
|
|
174
|
+
|
|
175
|
+
export interface SyncManagerPayload {
|
|
176
|
+
data: {
|
|
177
|
+
action: ExecEngineSyncType | DispatchSyncType;
|
|
178
|
+
payload: any;
|
|
179
|
+
};
|
|
180
|
+
length: number;
|
|
181
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { NativeModules } from 'react-native';
|
|
2
|
+
|
|
3
|
+
const { NativeSyncManager } = NativeModules;
|
|
4
|
+
|
|
5
|
+
interface SyncManagerInterface {
|
|
6
|
+
startSyncManager(
|
|
7
|
+
interval: number,
|
|
8
|
+
notifTitle: string,
|
|
9
|
+
notifText: string
|
|
10
|
+
): void;
|
|
11
|
+
stopSyncManager(): void;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export default NativeSyncManager as SyncManagerInterface;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export const BULK_DATA_LIMIT = 1000;
|
|
2
|
+
export const LAST_SYNCED_EVENT_ID = 'lastSyncedEventId';
|
|
3
|
+
export const SHARED_PREFERENCE_DISPATCH_ID = 'sharedPreferenceDispatchId';
|
|
4
|
+
export const SHARED_PREFERENCE_SCAN_OUTPUT = 'scanETMappedOutput';
|
|
5
|
+
export const SCAN_MERGED_OBJ_ID_OUTPUT = 'scanMergedObjectiveIDs';
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import * as SQLite from 'expo-sqlite';
|
|
2
|
+
import * as DBConfig from './DBConfig';
|
|
3
|
+
import type { SQLResultSet, WebSQLDatabase } from 'expo-sqlite';
|
|
4
|
+
import { isEmptyOrBlank } from '../../utils/utils';
|
|
5
|
+
import { BaseError } from '../../errors/BaseError';
|
|
6
|
+
import BaseErrorCodes from '../../errors/ErrorCodes';
|
|
7
|
+
import Logger, { LOG_TYPE } from '../../utils/Logger';
|
|
8
|
+
|
|
9
|
+
let dbConnection: WebSQLDatabase | null;
|
|
10
|
+
|
|
11
|
+
function openDatabase(): WebSQLDatabase {
|
|
12
|
+
return SQLite.openDatabase(DBConfig.DATABASE_NAME);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface ExecQuery {
|
|
16
|
+
query: string;
|
|
17
|
+
args: any[];
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export function executeQuery(
|
|
21
|
+
query: string,
|
|
22
|
+
args: any[]
|
|
23
|
+
): Promise<SQLResultSet> {
|
|
24
|
+
return new Promise((resolve, reject) => {
|
|
25
|
+
if (isEmptyOrBlank(query)) {
|
|
26
|
+
reject(
|
|
27
|
+
new BaseError(
|
|
28
|
+
BaseErrorCodes.InvalidArgumentError,
|
|
29
|
+
'SQL Query is null or empty'
|
|
30
|
+
)
|
|
31
|
+
);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
if (!dbConnection) dbConnection = openDatabase();
|
|
35
|
+
dbConnection.transaction((tx) => {
|
|
36
|
+
tx.executeSql(
|
|
37
|
+
query,
|
|
38
|
+
args,
|
|
39
|
+
(_, sqlResultSet) => {
|
|
40
|
+
resolve(sqlResultSet);
|
|
41
|
+
},
|
|
42
|
+
(_, sqlError) => {
|
|
43
|
+
reject(sqlError);
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
);
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function executeBulkQuery(_queryData: ExecQuery[]): Promise<boolean> {
|
|
52
|
+
return new Promise((resolve, reject) => {
|
|
53
|
+
let _sqlResultSet: SQLResultSet[] = [];
|
|
54
|
+
|
|
55
|
+
if (!dbConnection) dbConnection = openDatabase();
|
|
56
|
+
dbConnection.transaction(
|
|
57
|
+
(tx) => {
|
|
58
|
+
_queryData.forEach((_q) => {
|
|
59
|
+
tx.executeSql(
|
|
60
|
+
_q.query,
|
|
61
|
+
_q.args,
|
|
62
|
+
(_, sqlResultSet) => {
|
|
63
|
+
_sqlResultSet.push(sqlResultSet);
|
|
64
|
+
// resolve(sqlResultSet);
|
|
65
|
+
}
|
|
66
|
+
/* (_, sqlError) => {
|
|
67
|
+
_sqlError.push(sqlError);
|
|
68
|
+
// reject(sqlError);
|
|
69
|
+
return false;
|
|
70
|
+
} */
|
|
71
|
+
);
|
|
72
|
+
});
|
|
73
|
+
},
|
|
74
|
+
(error) => {
|
|
75
|
+
Logger.getInstance().logEvent(
|
|
76
|
+
'executeBulkQuery err: ',
|
|
77
|
+
JSON.stringify(error),
|
|
78
|
+
LOG_TYPE.SDK_ERROR
|
|
79
|
+
);
|
|
80
|
+
reject(error);
|
|
81
|
+
// return false;
|
|
82
|
+
},
|
|
83
|
+
() => {
|
|
84
|
+
Logger.getInstance().logEvent(
|
|
85
|
+
'executeBulkQuery success: ',
|
|
86
|
+
JSON.stringify(_sqlResultSet),
|
|
87
|
+
LOG_TYPE.SDK_DEBUG
|
|
88
|
+
);
|
|
89
|
+
resolve(true);
|
|
90
|
+
}
|
|
91
|
+
);
|
|
92
|
+
});
|
|
93
|
+
}
|