@os1-platform/dispatch-mobile 3.1.6 → 3.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  2. package/android/.gradle/buildOutputCleanup/cache.properties +1 -1
  3. package/android/build.gradle +4 -2
  4. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +38 -45
  5. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  6. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js +121 -108
  7. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js.map +1 -1
  8. package/lib/commonjs/manager/sdk/DispatchSDKManager.js +1 -0
  9. package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
  10. package/lib/commonjs/manager/syncmanager/AppSyncManager.js +3 -5
  11. package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
  12. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +62 -57
  13. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  14. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +0 -1
  15. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
  16. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +6 -56
  17. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  18. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +5 -6
  19. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  20. package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js +2 -1
  21. package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
  22. package/lib/commonjs/network/client.js +8 -1
  23. package/lib/commonjs/network/client.js.map +1 -1
  24. package/lib/commonjs/ui/screens/CollectPaymentScreen.js +12 -18
  25. package/lib/commonjs/ui/screens/CollectPaymentScreen.js.map +1 -1
  26. package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js +3 -2
  27. package/lib/commonjs/ui/screens/CompleteObjectiveScreen.js.map +1 -1
  28. package/lib/commonjs/ui/screens/DeliverScreen.js +13 -8
  29. package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
  30. package/lib/commonjs/ui/screens/DropCashScreen.js +14 -12
  31. package/lib/commonjs/ui/screens/DropCashScreen.js.map +1 -1
  32. package/lib/commonjs/ui/screens/ImageCaptureScreen.js +2 -2
  33. package/lib/commonjs/ui/screens/ImageCaptureScreen.js.map +1 -1
  34. package/lib/commonjs/ui/screens/PickupScreen.js +3 -8
  35. package/lib/commonjs/ui/screens/PickupScreen.js.map +1 -1
  36. package/lib/commonjs/ui/screens/StartWorkFlowScreen.js +2 -2
  37. package/lib/commonjs/ui/screens/StartWorkFlowScreen.js.map +1 -1
  38. package/lib/commonjs/utils/Constants.js +1 -2
  39. package/lib/commonjs/utils/Constants.js.map +1 -1
  40. package/lib/commonjs/utils/Logger.js +20 -8
  41. package/lib/commonjs/utils/Logger.js.map +1 -1
  42. package/lib/commonjs/utils/SdkUtils.js +1 -0
  43. package/lib/commonjs/utils/SdkUtils.js.map +1 -1
  44. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +38 -45
  45. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  46. package/lib/module/manager/dispatch/DispatchStateContainer.js +121 -108
  47. package/lib/module/manager/dispatch/DispatchStateContainer.js.map +1 -1
  48. package/lib/module/manager/sdk/DispatchSDKManager.js +1 -0
  49. package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
  50. package/lib/module/manager/syncmanager/AppSyncManager.js +3 -5
  51. package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
  52. package/lib/module/manager/syncmanager/document/DocumentHttpClient.js +62 -57
  53. package/lib/module/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  54. package/lib/module/manager/syncmanager/document/DocumentManager.js +0 -1
  55. package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
  56. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +6 -56
  57. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  58. package/lib/module/manager/syncmanager/events/EventsSyncManager.js +5 -6
  59. package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  60. package/lib/module/manager/syncmanager/events/SyncHttpClient.js +2 -1
  61. package/lib/module/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
  62. package/lib/module/network/client.js +8 -1
  63. package/lib/module/network/client.js.map +1 -1
  64. package/lib/module/ui/screens/CollectPaymentScreen.js +12 -18
  65. package/lib/module/ui/screens/CollectPaymentScreen.js.map +1 -1
  66. package/lib/module/ui/screens/CompleteObjectiveScreen.js +3 -2
  67. package/lib/module/ui/screens/CompleteObjectiveScreen.js.map +1 -1
  68. package/lib/module/ui/screens/DeliverScreen.js +13 -8
  69. package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
  70. package/lib/module/ui/screens/DropCashScreen.js +13 -12
  71. package/lib/module/ui/screens/DropCashScreen.js.map +1 -1
  72. package/lib/module/ui/screens/ImageCaptureScreen.js +2 -2
  73. package/lib/module/ui/screens/ImageCaptureScreen.js.map +1 -1
  74. package/lib/module/ui/screens/PickupScreen.js +3 -8
  75. package/lib/module/ui/screens/PickupScreen.js.map +1 -1
  76. package/lib/module/ui/screens/StartWorkFlowScreen.js +2 -2
  77. package/lib/module/ui/screens/StartWorkFlowScreen.js.map +1 -1
  78. package/lib/module/utils/Constants.js +1 -2
  79. package/lib/module/utils/Constants.js.map +1 -1
  80. package/lib/module/utils/Logger.js +20 -8
  81. package/lib/module/utils/Logger.js.map +1 -1
  82. package/lib/module/utils/SdkUtils.js +1 -0
  83. package/lib/module/utils/SdkUtils.js.map +1 -1
  84. package/lib/typescript/network/client.d.ts +2 -1
  85. package/lib/typescript/utils/Constants.d.ts +1 -1
  86. package/lib/typescript/utils/Logger.d.ts +3 -1
  87. package/package.json +2 -2
  88. package/src/components/executiontasks/imageCapture/ImageCapture.tsx +43 -54
  89. package/src/manager/dispatch/DispatchStateContainer.tsx +158 -164
  90. package/src/manager/sdk/DispatchSDKManager.ts +2 -1
  91. package/src/manager/syncmanager/AppSyncManager.ts +3 -17
  92. package/src/manager/syncmanager/document/DocumentHttpClient.ts +90 -86
  93. package/src/manager/syncmanager/document/DocumentManager.ts +0 -1
  94. package/src/manager/syncmanager/document/DocumentSyncManager.ts +6 -76
  95. package/src/manager/syncmanager/events/EventsSyncManager.ts +8 -29
  96. package/src/manager/syncmanager/events/SyncHttpClient.ts +2 -5
  97. package/src/network/client.ts +12 -2
  98. package/src/ui/screens/CollectPaymentScreen.tsx +14 -33
  99. package/src/ui/screens/CompleteObjectiveScreen.tsx +3 -6
  100. package/src/ui/screens/DeliverScreen.tsx +16 -11
  101. package/src/ui/screens/DropCashScreen.tsx +10 -10
  102. package/src/ui/screens/ImageCaptureScreen.tsx +2 -2
  103. package/src/ui/screens/PickupScreen.tsx +5 -12
  104. package/src/ui/screens/StartWorkFlowScreen.tsx +1 -1
  105. package/src/utils/Constants.ts +1 -2
  106. package/src/utils/Logger.ts +26 -18
  107. package/src/utils/SdkUtils.ts +1 -0
@@ -1,2 +1,2 @@
1
- #Sun Apr 06 16:20:17 IST 2025
1
+ #Wed Apr 09 13:10:18 IST 2025
2
2
  gradle.version=7.5
@@ -151,10 +151,12 @@ def reactNativeVersion = getReactNativeVersion()
151
151
  def kotlin_version = getExtOrDefault('kotlinVersion')
152
152
 
153
153
  dependencies {
154
- // noinspection GradleDynamicVersion
154
+ //noinspection GradleDynamicVersion
155
155
  //api 'com.facebook.react:react-native:+'
156
156
  //implementation "com.facebook.react:react-native:${reactNativeVersion}"
157
157
  implementation("com.facebook.react:react-native:0.72.10")
158
158
  implementation 'com.google.android.material:material:1.4.0'
159
159
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
160
- implementation 'com.google.android.gms:play-services-location:20.0.0'}
160
+ //implementation 'com.google.android.gms:play-services-location:20.0.0'}
161
+ implementation "com.google.android.gms:play-services-location:21.3.0"
162
+ }
@@ -16,7 +16,7 @@ var _ETConfig = require("../../../models/execTasks/ETConfig");
16
16
  var _EventCodeContainer = require("../../../manager/dispatchCodes/EventCodeContainer");
17
17
  var _constants = require("../../../constants/constants");
18
18
  var _reactNativePaper = require("react-native-paper");
19
- var _Logger = _interopRequireWildcard(require("../../../utils/Logger"));
19
+ var _Logger = _interopRequireDefault(require("../../../utils/Logger"));
20
20
  var _utils = require("../../../components/utils");
21
21
  var _GoBackModal = _interopRequireDefault(require("../../../components/widgets/GoBackModal"));
22
22
  var _native = require("@react-navigation/native");
@@ -215,7 +215,6 @@ const ImageCapture = props => {
215
215
  try {
216
216
  setDisableProceed(true);
217
217
  let imagesArray = imagesDummy.filter(item => item != null && item.path != null && item.path.length != 0);
218
- console.log('imagesArray:', JSON.stringify(imagesArray));
219
218
  if (imagesArray.length > 0) {
220
219
  props.onSubmitET(await (0, _CaptureUtils.getCaptureOutput)(imagesArray, props));
221
220
  } else {
@@ -224,6 +223,7 @@ const ImageCapture = props => {
224
223
  } catch (error) {
225
224
  setDisableProceed(false);
226
225
  (0, _Toaster.showToast)(error.message);
226
+ _Logger.default.getInstance().logCora("Error", `ImageCapture handleSubmit: ${error}`);
227
227
  } finally {
228
228
  setDisableProceed(false);
229
229
  }
@@ -250,54 +250,47 @@ const ImageCapture = props => {
250
250
  // }, [images, props, showCapture]);
251
251
 
252
252
  const captureImage = (0, _react.useCallback)(async index => {
253
- // // if (!showCapture) {
254
- // // showToast(`Max Image Limit reached`);
255
- // // return;
256
- // // }
257
- // console.log("captureImage", CaptureUtils);
258
- let imageDataResponse = await CaptureUtils.captureImage(props.resolution.breadth, props.resolution.length, props.fileSizeLimit);
259
- if (imageDataResponse != null) {
260
- setButtonProceed(true);
261
- let imgArray = [];
262
- imgArray = imagesDummy;
263
- const dateTime = await _callbacksHandler.default.getDateTime();
264
- console.log('captureImage:dateTime: ', dateTime);
265
- let lastLocation = await _LocationManager.default.getInstance().getLastLocation();
266
- console.log("captureImage:lastLocation:", JSON.stringify(lastLocation));
267
- imgArray[index] = {
268
- id: CaptureUtils.getImagesFileName(),
269
- // @ts-ignore
270
- path: imageDataResponse.uri,
271
- url: '',
272
- timestamp: Date.now(),
273
- dateTime: dateTime,
274
- lat: lastLocation.latitude,
275
- lng: lastLocation.longitude,
276
- accuracy: lastLocation.accuracy
277
- };
278
- setImagesDummy([...imgArray]);
279
- console.log("images211:", JSON.stringify(imgArray));
253
+ try {
254
+ let imageDataResponse = await CaptureUtils.captureImage(props.resolution.breadth, props.resolution.length, props.fileSizeLimit);
255
+ if (imageDataResponse != null) {
256
+ setButtonProceed(true);
257
+ let imgArray = [];
258
+ imgArray = imagesDummy;
259
+ const dateTime = await _callbacksHandler.default.getDateTime();
260
+ let lastLocation = await _LocationManager.default.getInstance().getLastLocation();
261
+ imgArray[index] = {
262
+ id: CaptureUtils.getImagesFileName(),
263
+ // @ts-ignore
264
+ path: imageDataResponse.uri,
265
+ url: '',
266
+ timestamp: Date.now(),
267
+ dateTime: dateTime,
268
+ lat: lastLocation.latitude,
269
+ lng: lastLocation.longitude,
270
+ accuracy: lastLocation.accuracy
271
+ };
272
+ setImagesDummy([...imgArray]);
273
+ }
274
+ } catch (error) {
275
+ _Logger.default.getInstance().logCora("Error", `ImageCapture captureImage: ${error}`);
280
276
  }
281
277
  }, [props.resolution.breadth, props.resolution.length, props.fileSizeLimit]);
282
278
  const deleteImage = async index => {
283
- let imageDummyArray = [];
284
- imageDummyArray = imagesDummy;
285
- imageDummyArray[index].path = "";
286
- setImagesDummy([...imageDummyArray]);
287
- let initialProceedValue = false;
288
- for (let i = 0; i < imageDummyArray.length; i++) {
289
- var _imageDummyArray$i;
290
- if ((_imageDummyArray$i = imageDummyArray[i]) !== null && _imageDummyArray$i !== void 0 && _imageDummyArray$i.path) {
291
- initialProceedValue = true;
292
- }
293
- }
294
- setButtonProceed(initialProceedValue);
295
279
  try {
296
- // setImagesDummy(filteredImages);
297
- // setButtonProceed(false);
280
+ let imageDummyArray = [];
281
+ imageDummyArray = imagesDummy;
282
+ imageDummyArray[index].path = "";
283
+ setImagesDummy([...imageDummyArray]);
284
+ let initialProceedValue = false;
285
+ for (let i = 0; i < imageDummyArray.length; i++) {
286
+ var _imageDummyArray$i;
287
+ if ((_imageDummyArray$i = imageDummyArray[i]) !== null && _imageDummyArray$i !== void 0 && _imageDummyArray$i.path) {
288
+ initialProceedValue = true;
289
+ }
290
+ }
291
+ setButtonProceed(initialProceedValue);
298
292
  } catch (err) {
299
- _Logger.default.getInstance().logEvent('deleteImageError', err.message, _Logger.LOG_TYPE.SDK_ERROR);
300
- console.error("Error updating state after deletion:", err);
293
+ _Logger.default.getInstance().logCora("Error", `ImageCapture deleteImage: ${err}`);
301
294
  }
302
295
  };
303
296
  const renderItem = ({
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_CaptureUtils","CaptureUtils","_Toaster","_MaterialIcons","_interopRequireDefault","_CommonStyles","_ExecTaskUtils","_ETConfig","_EventCodeContainer","_constants","_reactNativePaper","_Logger","_utils","_GoBackModal","_native","_circleXmark","_camera","_SentrySdkConstants","_SentryAnalyticsUtils","_LocationManager","_callbacksHandler","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ImageCapture","props","numberOfImagesToCapture","captureMode","captureCountLimit","images","setImages","useState","imagesDummy","setImagesDummy","showCapture","setShowCapture","disableProceed","setDisableProceed","showBackModal","setShowBackModal","buttonProceed","setButtonProceed","numColumns","setNumColumns","useFocusEffect","React","useCallback","onBackPress","_props$taskMeta","taskMeta","enableGoBack","hasGoBackConnector","applicableReasons","navigation","goBack","BackHandler","addEventListener","removeEventListener","useLayoutEffect","setOptions","title","headerLeft","createElement","onPress","_props$taskMeta2","cta","fireEventWithScreenName","severityLevel","SeverityLevelValue","LOG","eventName","SentryEventNameSdkConstants","BUTTON_CLICKED","screenName","ScreenNameSdkConstants","CAPTURE_IMAGE_ET_SCREEN","name","color","size","style","paddingRight","paddingTop","useEffect","undefined","length","arr","push","path","ImageItem","item","index","_imagesDummy$index","_imagesDummy$index2","_imagesDummy$index3","_imagesDummy$index4","View","width","height","backgroundColor","alignItems","alignSelf","borderWidth","borderColor","borderStyle","borderRadius","marginTop","marginStart","TouchableOpacity","Button","captureImage","uppercase","labelStyle","fontFamily","Platform","OS","Fonts","IBMPlexSans_500Medium","fontStyle","fontWeight","fontSize","letterSpacing","Image","source","uri","bottom","position","top","marginRight","justifyContent","marginLeft","renderModal","showModal","setShowModal","onSuccess","onSubmitET","getBaseETResponse","EntityCode","IMAGE_CAPTURE","GO_BACK_EVENT_CODE","mergedObjectiveId","ExecutionTaskID","onFailure","handleSubmit","imagesArray","filter","console","log","JSON","stringify","getCaptureOutput","showToast","error","message","imageDataResponse","resolution","breadth","fileSizeLimit","imgArray","dateTime","callbackHandler","getDateTime","lastLocation","LocationManager","getInstance","getLastLocation","id","getImagesFileName","url","timestamp","Date","now","lat","latitude","lng","longitude","accuracy","deleteImage","imageDummyArray","initialProceedValue","_imageDummyArray$i","err","Logger","logEvent","LOG_TYPE","SDK_ERROR","renderItem","Provider","CommonStyles","mainContainer","styles","etMessageView","Text","etMessage","FlatList","data","keyExtractor","contentContainerStyle","paddingBottom","bottomButtons","isSelfLoop","cancelButton","flexGrow","mode","cancelButtonLabel","textTransform","_props$applicableReas","getEventCodeByET","failure","lineHeight","textAlign","marginHorizontal","disabled","StyleSheet","create","imageEtContainer","display","marginEnd","padding","flexDirection","paddingVertical","borderTopColor","borderTopWidth","IBMPlexSans_400Regular","paddingStart","_default","exports"],"sources":["ImageCapture.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState, useLayoutEffect } from 'react';\nimport { BackHandler, FlatList, Image, Platform, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\nimport * as CaptureUtils from './CaptureUtils';\nimport { getCaptureOutput } from './CaptureUtils';\nimport { showToast } from '../../widgets/Toaster';\nimport SdkColors, { ColorTheme } from '../../../styles/SdkColors';\nimport Icon from 'react-native-vector-icons/Feather';\nimport Iconn from 'react-native-vector-icons/MaterialIcons';\nimport { CommonStyles, Fonts } from '../../../styles/executionTasks/CommonStyles';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { EntityCode, ExecutionTaskID } from '../../../models/execTasks/ETConfig';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport { GO_BACK_EVENT_CODE } from '../../../constants/constants';\nimport { Button, Provider } from 'react-native-paper';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { hasGoBackConnector } from '../../../components/utils';\nimport GoBackModal from '../../../components/widgets/GoBackModal';\nimport { useFocusEffect } from '@react-navigation/native';\nimport Circle from \"./circle-xmark.svg\"\nimport CameraIcon from \"./camera.svg\"\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\nimport LocationManager from '../../../manager/location/LocationManager';\nimport callbackHandler from '../../../manager/sdk/callbacksHandler';\n\nconst ImageCapture = (props: any) => {\n let numberOfImagesToCapture: any;\n if (props.captureMode == \"SINGLE\") {\n numberOfImagesToCapture = 1;\n } else if (props.captureMode === 'MULTI' && props.captureCountLimit && props.captureCountLimit > 0) {\n numberOfImagesToCapture = props.captureCountLimit;\n }\n\n const [images, setImages] = useState([]);\n const [imagesDummy, setImagesDummy] = useState<any[]>([]);\n const [showCapture, setShowCapture] = useState(true);\n const [disableProceed, setDisableProceed] = useState(false);\n const [showBackModal, setShowBackModal] = useState(false);\n const [buttonProceed, setButtonProceed] = useState(false);\n const [numColumns, setNumColumns] = useState(numberOfImagesToCapture <= 2 ? 1 : 2);\n\n useFocusEffect(\n React.useCallback(() => {\n const onBackPress = () => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n ) {\n setShowBackModal(true);\n return true;\n } else {\n props.navigation.goBack();\n return true;\n }\n };\n BackHandler.addEventListener('hardwareBackPress', onBackPress);\n return () =>\n BackHandler.removeEventListener('hardwareBackPress', onBackPress);\n }, [])\n );\n\n useLayoutEffect(() => {\n props.navigation.setOptions({\n title: props.title,\n headerLeft: () => {\n return (\n <Iconn\n onPress={() => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n )\n setShowBackModal(true);\n else props.navigation.goBack();\n const cta = \"Back Arrow\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n name=\"arrow-back\"\n color={'black'}\n size={25}\n style={{\n paddingRight: 15,\n paddingTop: 5,\n }}\n />\n );\n },\n });\n }, [props.navigation, props.title]);\n\n useEffect(() => {\n if (numberOfImagesToCapture == undefined) {\n numberOfImagesToCapture = 2;\n }\n if (images.length === 0) {\n let arr: any = [];\n for (let i = 0; i < numberOfImagesToCapture; i++) {\n arr.push({ path: '' });\n }\n setImages(arr);\n }\n }, [images]);\n\n\n interface ImageItemProps {\n item: { path: string };\n index: number;\n onPress: () => void;\n }\n\n const ImageItem: React.FC<ImageItemProps> = ({ item, index, onPress }) => {\n\n return (\n <View\n style={{\n width: numColumns == 2 ? '43%' : '88%',\n height: numColumns == 2 ? 160 : numberOfImagesToCapture == 1 ? 336 : 180,\n backgroundColor: 'white',\n alignItems: 'center',\n alignSelf: 'center',\n borderWidth: 1,\n borderColor: '#A3AAC2',\n borderStyle: 'dashed',\n borderRadius: 3,\n marginTop: '6%',\n marginStart: numColumns == 2 ? 17 : numberOfImagesToCapture == 1 ? 0 : 0,\n }}\n >\n <View\n style={{\n alignItems: 'center',\n width: '80%',\n height: '98%',\n borderRadius: 3,\n }}\n >\n {imagesDummy?.length > index && imagesDummy[index]?.path ? null : (\n <TouchableOpacity\n onPress={() => {\n onPress()\n const cta = \"Camera Icon\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n >\n <View\n style={{\n marginTop:\n numColumns === 2 ? '32%' : numberOfImagesToCapture === 1 ? '50%' : '20%',\n }}\n >\n <CameraIcon />\n </View>\n </TouchableOpacity>\n\n )}\n <Button\n onPress={() => {\n captureImage(index)\n const cta = \"Click Photo\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n uppercase={false}\n labelStyle={[\n {\n fontFamily: Platform.OS === 'android' ? Fonts.IBMPlexSans_500Medium : 'IBMPlexSans-Medium',\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: 14,\n letterSpacing: 0.25,\n color: '#5B80F7',\n },\n ]}\n >\n {imagesDummy?.length > index && imagesDummy[index]?.path ? null : 'Click Photo'}\n </Button>\n <Image\n source={{\n uri: imagesDummy?.length > index ? imagesDummy[index]?.path : item?.path,\n }}\n style={{\n height: numColumns == 2 ? '75%' : numberOfImagesToCapture == 1 ? '85%' : '85%',\n width: numColumns == 2 ? '105%' : '118%',\n borderRadius: 10,\n bottom:\n numColumns == 2 ? '6%' : numberOfImagesToCapture == 1 ? '2%' : '11%',\n }}\n />\n <TouchableOpacity\n onPress={() => {\n onPress()\n const cta = \"Circle Icon\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n style={{\n position: 'absolute',\n top: numColumns == 2 ? '17%' : '9%',\n marginRight: '2%',\n }}\n >\n {imagesDummy?.length > index && imagesDummy[index]?.path && (\n <View\n style={{\n width: 25,\n height: 25,\n backgroundColor: 'white',\n borderRadius: 15,\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: numColumns == 2 ? '78%' : '96%',\n }}\n >\n <Circle />\n </View>\n )}\n </TouchableOpacity>\n </View>\n </View>\n );\n };\n\n const renderModal = () => {\n return (\n <GoBackModal\n showModal={showBackModal}\n setShowModal={setShowBackModal}\n onSuccess={async () => {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n false,\n GO_BACK_EVENT_CODE,\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n });\n setShowBackModal(false);\n }}\n onFailure={() => setShowBackModal(false)}\n />\n );\n };\n\n const handleSubmit = async () => {\n try {\n setDisableProceed(true);\n let imagesArray = imagesDummy.filter(item => item != null && item.path != null && item.path.length != 0);\n console.log('imagesArray:', JSON.stringify(imagesArray));\n\n if (imagesArray.length > 0) {\n props.onSubmitET(await getCaptureOutput(imagesArray, props));\n } else {\n showToast('No Images captured');\n }\n } catch (error: any) {\n setDisableProceed(false);\n showToast(error.message);\n } finally {\n setDisableProceed(false);\n }\n };\n\n // useEffect(() => {\n // if (props.captureMode === 'SINGLE') {\n // if (images.length > 0) {\n // setShowCapture(false);\n // } else setShowCapture(true);\n // } else if (\n // props.captureMode === 'MULTI' &&\n // props.captureCountLimit &&\n // props.captureCountLimit > 0\n // ) {\n // if (images.length === CaptureUtils.getMaxImagesCount(props)) {\n // setShowCapture(false);\n // } else setShowCapture(true);\n // } else {\n // if (images.length > 0) {\n // setShowCapture(true);\n // }\n // }\n // }, [images, props, showCapture]);\n\n const captureImage = useCallback(async (index) => {\n\n // // if (!showCapture) {\n // // showToast(`Max Image Limit reached`);\n // // return;\n // // }\n // console.log(\"captureImage\", CaptureUtils);\n let imageDataResponse = await CaptureUtils.captureImage(\n props.resolution.breadth,\n props.resolution.length,\n props.fileSizeLimit\n );\n\n if (imageDataResponse != null) {\n setButtonProceed(true);\n\n let imgArray = [];\n imgArray = imagesDummy;\n const dateTime = await callbackHandler.getDateTime();\n console.log('captureImage:dateTime: ', dateTime);\n let lastLocation = await LocationManager.getInstance().getLastLocation();\n console.log(\"captureImage:lastLocation:\",JSON.stringify(lastLocation));\n\n imgArray[index] = {\n id: CaptureUtils.getImagesFileName(),\n // @ts-ignore\n path: imageDataResponse.uri,\n url: '',\n timestamp: Date.now(),\n dateTime: dateTime,\n lat: lastLocation.latitude,\n lng: lastLocation.longitude,\n accuracy: lastLocation.accuracy,\n };\n setImagesDummy([...imgArray])\n console.log(\"images211:\", JSON.stringify(imgArray));\n\n }\n }, [props.resolution.breadth, props.resolution.length, props.fileSizeLimit]);\n\n\n const deleteImage = async (index: any) => {\n let imageDummyArray = [];\n imageDummyArray = imagesDummy\n imageDummyArray[index].path = \"\"\n setImagesDummy([...imageDummyArray])\n\n let initialProceedValue = false;\n for (let i = 0; i < imageDummyArray.length; i++) {\n if (imageDummyArray[i]?.path) {\n initialProceedValue = true;\n }\n }\n setButtonProceed(initialProceedValue);\n\n try {\n // setImagesDummy(filteredImages);\n // setButtonProceed(false);\n } catch (err: any) {\n Logger.getInstance().logEvent('deleteImageError', err.message, LOG_TYPE.SDK_ERROR);\n console.error(\"Error updating state after deletion:\", err);\n }\n };\n\n const renderItem = ({ item, index }: { item: any; index: any }) => {\n return (\n <ImageItem\n item={item}\n index={index}\n onPress={async () => {\n await deleteImage(index);\n const cta = \"Delete Icon\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n />\n );\n };\n\n return (\n <Provider>\n {renderModal()}\n <View style={CommonStyles.mainContainer}>\n {props.message && (\n <View style={styles.etMessageView}>\n <Text style={styles.etMessage}>{props.message}</Text>\n </View>\n )}\n <View\n style={{\n backgroundColor: 'white',\n width: 360,\n height: numColumns == 2 ? '82%' : numberOfImagesToCapture == 1 ? '63%' : '70%',\n alignSelf: 'center',\n marginTop: '5%',\n borderRadius: 7,\n borderColor: '#E0E3EB',\n borderWidth: 0.5,\n }}\n >\n <FlatList\n data={images}\n numColumns={numColumns}\n renderItem={renderItem}\n keyExtractor={(item) => item?.id}\n contentContainerStyle={{ paddingBottom: '30%' }}\n />\n </View>\n <View style={styles.bottomButtons}>\n {(props.isSelfLoop == false) && <Button\n style={[CommonStyles.cancelButton, { flexGrow: 1, marginStart: '3%' }]}\n mode=\"outlined\"\n labelStyle={[CommonStyles.cancelButtonLabel, { textTransform: 'capitalize' }]}\n onPress={async () => {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n false,\n getEventCodeByET(ExecutionTaskID.IMAGE_CAPTURE, false, props.applicableReasons?.failure),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n });\n const cta = \"Cancel\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n >\n Cancel\n </Button>\n }\n <Button\n labelStyle={{\n color: buttonProceed ? '#ffff' : '#A3AAC2',\n fontFamily: Platform.OS === 'android' ? Fonts.IBMPlexSans_500Medium : 'IBMPlexSans-Medium',\n fontSize: 14,\n lineHeight: 20,\n textAlign: 'center',\n textTransform: 'capitalize',\n }}\n style={{\n flexGrow: 1,\n marginHorizontal: '3%',\n backgroundColor: buttonProceed ? '#5B80F7' : '#E0E3EB',\n }}\n disabled={!buttonProceed}\n mode=\"contained\"\n onPress={async () => {\n await handleSubmit();\n const cta = \"Proceed\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n >\n Proceed\n </Button>\n </View>\n </View>\n </Provider>\n );\n};\n\nconst styles = StyleSheet.create({\n\n imageEtContainer: {\n display: 'flex',\n marginStart: 16,\n marginEnd: 16,\n borderWidth: 1,\n borderColor: '#A3AAC2',\n padding: 10,\n marginTop: 15,\n borderStyle: 'dashed',\n backgroundColor: '#FFFFFF',\n alignItems: 'center',\n justifyContent: 'center',\n height: 370,\n borderRadius: 5\n },\n\n bottomButtons: {\n width: \"100%\",\n justifyContent: \"space-between\",\n flexDirection: 'row',\n backgroundColor: \"white\",\n paddingVertical: 12,\n bottom: 0,\n position: \"absolute\",\n borderTopColor: \"#A3AAC2\",\n borderTopWidth: 0.5\n },\n etMessage: {\n // textAlign: 'center',\n fontStyle: 'normal',\n fontWeight: '400',\n fontSize: 16,\n display: 'flex',\n alignItems: 'center',\n color: '#000000',\n fontFamily: Fonts.IBMPlexSans_400Regular\n },\n etMessageView: {\n marginTop: 17,\n paddingStart: 17,\n paddingTop: 15,\n paddingBottom: 15,\n backgroundColor: '#ffffff'\n }\n});\n\nexport default ImageCapture;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_CaptureUtils","CaptureUtils","_Toaster","_MaterialIcons","_interopRequireDefault","_CommonStyles","_ExecTaskUtils","_ETConfig","_EventCodeContainer","_constants","_reactNativePaper","_Logger","_utils","_GoBackModal","_native","_circleXmark","_camera","_SentrySdkConstants","_SentryAnalyticsUtils","_LocationManager","_callbacksHandler","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ImageCapture","props","numberOfImagesToCapture","captureMode","captureCountLimit","images","setImages","useState","imagesDummy","setImagesDummy","showCapture","setShowCapture","disableProceed","setDisableProceed","showBackModal","setShowBackModal","buttonProceed","setButtonProceed","numColumns","setNumColumns","useFocusEffect","React","useCallback","onBackPress","_props$taskMeta","taskMeta","enableGoBack","hasGoBackConnector","applicableReasons","navigation","goBack","BackHandler","addEventListener","removeEventListener","useLayoutEffect","setOptions","title","headerLeft","createElement","onPress","_props$taskMeta2","cta","fireEventWithScreenName","severityLevel","SeverityLevelValue","LOG","eventName","SentryEventNameSdkConstants","BUTTON_CLICKED","screenName","ScreenNameSdkConstants","CAPTURE_IMAGE_ET_SCREEN","name","color","size","style","paddingRight","paddingTop","useEffect","undefined","length","arr","push","path","ImageItem","item","index","_imagesDummy$index","_imagesDummy$index2","_imagesDummy$index3","_imagesDummy$index4","View","width","height","backgroundColor","alignItems","alignSelf","borderWidth","borderColor","borderStyle","borderRadius","marginTop","marginStart","TouchableOpacity","Button","captureImage","uppercase","labelStyle","fontFamily","Platform","OS","Fonts","IBMPlexSans_500Medium","fontStyle","fontWeight","fontSize","letterSpacing","Image","source","uri","bottom","position","top","marginRight","justifyContent","marginLeft","renderModal","showModal","setShowModal","onSuccess","onSubmitET","getBaseETResponse","EntityCode","IMAGE_CAPTURE","GO_BACK_EVENT_CODE","mergedObjectiveId","ExecutionTaskID","onFailure","handleSubmit","imagesArray","filter","getCaptureOutput","showToast","error","message","Logger","getInstance","logCora","imageDataResponse","resolution","breadth","fileSizeLimit","imgArray","dateTime","callbackHandler","getDateTime","lastLocation","LocationManager","getLastLocation","id","getImagesFileName","url","timestamp","Date","now","lat","latitude","lng","longitude","accuracy","deleteImage","imageDummyArray","initialProceedValue","_imageDummyArray$i","err","renderItem","Provider","CommonStyles","mainContainer","styles","etMessageView","Text","etMessage","FlatList","data","keyExtractor","contentContainerStyle","paddingBottom","bottomButtons","isSelfLoop","cancelButton","flexGrow","mode","cancelButtonLabel","textTransform","_props$applicableReas","getEventCodeByET","failure","lineHeight","textAlign","marginHorizontal","disabled","StyleSheet","create","imageEtContainer","display","marginEnd","padding","flexDirection","paddingVertical","borderTopColor","borderTopWidth","IBMPlexSans_400Regular","paddingStart","_default","exports"],"sources":["ImageCapture.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState, useLayoutEffect } from 'react';\nimport { BackHandler, FlatList, Image, Platform, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\nimport * as CaptureUtils from './CaptureUtils';\nimport { getCaptureOutput } from './CaptureUtils';\nimport { showToast } from '../../widgets/Toaster';\nimport SdkColors, { ColorTheme } from '../../../styles/SdkColors';\nimport Icon from 'react-native-vector-icons/Feather';\nimport Iconn from 'react-native-vector-icons/MaterialIcons';\nimport { CommonStyles, Fonts } from '../../../styles/executionTasks/CommonStyles';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { EntityCode, ExecutionTaskID } from '../../../models/execTasks/ETConfig';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport { GO_BACK_EVENT_CODE } from '../../../constants/constants';\nimport { Button, Provider } from 'react-native-paper';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { hasGoBackConnector } from '../../../components/utils';\nimport GoBackModal from '../../../components/widgets/GoBackModal';\nimport { useFocusEffect } from '@react-navigation/native';\nimport Circle from \"./circle-xmark.svg\"\nimport CameraIcon from \"./camera.svg\"\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\nimport LocationManager from '../../../manager/location/LocationManager';\nimport callbackHandler from '../../../manager/sdk/callbacksHandler';\n\nconst ImageCapture = (props: any) => {\n let numberOfImagesToCapture: any;\n if (props.captureMode == \"SINGLE\") {\n numberOfImagesToCapture = 1;\n } else if (props.captureMode === 'MULTI' && props.captureCountLimit && props.captureCountLimit > 0) {\n numberOfImagesToCapture = props.captureCountLimit;\n }\n\n const [images, setImages] = useState([]);\n const [imagesDummy, setImagesDummy] = useState<any[]>([]);\n const [showCapture, setShowCapture] = useState(true);\n const [disableProceed, setDisableProceed] = useState(false);\n const [showBackModal, setShowBackModal] = useState(false);\n const [buttonProceed, setButtonProceed] = useState(false);\n const [numColumns, setNumColumns] = useState(numberOfImagesToCapture <= 2 ? 1 : 2);\n\n useFocusEffect(\n React.useCallback(() => {\n const onBackPress = () => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n ) {\n setShowBackModal(true);\n return true;\n } else {\n props.navigation.goBack();\n return true;\n }\n };\n BackHandler.addEventListener('hardwareBackPress', onBackPress);\n return () =>\n BackHandler.removeEventListener('hardwareBackPress', onBackPress);\n }, [])\n );\n\n useLayoutEffect(() => {\n props.navigation.setOptions({\n title: props.title,\n headerLeft: () => {\n return (\n <Iconn\n onPress={() => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n )\n setShowBackModal(true);\n else props.navigation.goBack();\n const cta = \"Back Arrow\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n name=\"arrow-back\"\n color={'black'}\n size={25}\n style={{\n paddingRight: 15,\n paddingTop: 5,\n }}\n />\n );\n },\n });\n }, [props.navigation, props.title]);\n\n useEffect(() => {\n if (numberOfImagesToCapture == undefined) {\n numberOfImagesToCapture = 2;\n }\n if (images.length === 0) {\n let arr: any = [];\n for (let i = 0; i < numberOfImagesToCapture; i++) {\n arr.push({ path: '' });\n }\n setImages(arr);\n }\n }, [images]);\n\n\n interface ImageItemProps {\n item: { path: string };\n index: number;\n onPress: () => void;\n }\n\n const ImageItem: React.FC<ImageItemProps> = ({ item, index, onPress }) => {\n\n return (\n <View\n style={{\n width: numColumns == 2 ? '43%' : '88%',\n height: numColumns == 2 ? 160 : numberOfImagesToCapture == 1 ? 336 : 180,\n backgroundColor: 'white',\n alignItems: 'center',\n alignSelf: 'center',\n borderWidth: 1,\n borderColor: '#A3AAC2',\n borderStyle: 'dashed',\n borderRadius: 3,\n marginTop: '6%',\n marginStart: numColumns == 2 ? 17 : numberOfImagesToCapture == 1 ? 0 : 0,\n }}\n >\n <View\n style={{\n alignItems: 'center',\n width: '80%',\n height: '98%',\n borderRadius: 3,\n }}\n >\n {imagesDummy?.length > index && imagesDummy[index]?.path ? null : (\n <TouchableOpacity\n onPress={() => {\n onPress()\n const cta = \"Camera Icon\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n >\n <View\n style={{\n marginTop:\n numColumns === 2 ? '32%' : numberOfImagesToCapture === 1 ? '50%' : '20%',\n }}\n >\n <CameraIcon />\n </View>\n </TouchableOpacity>\n\n )}\n <Button\n onPress={() => {\n captureImage(index)\n const cta = \"Click Photo\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n uppercase={false}\n labelStyle={[\n {\n fontFamily: Platform.OS === 'android' ? Fonts.IBMPlexSans_500Medium : 'IBMPlexSans-Medium',\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: 14,\n letterSpacing: 0.25,\n color: '#5B80F7',\n },\n ]}\n >\n {imagesDummy?.length > index && imagesDummy[index]?.path ? null : 'Click Photo'}\n </Button>\n <Image\n source={{\n uri: imagesDummy?.length > index ? imagesDummy[index]?.path : item?.path,\n }}\n style={{\n height: numColumns == 2 ? '75%' : numberOfImagesToCapture == 1 ? '85%' : '85%',\n width: numColumns == 2 ? '105%' : '118%',\n borderRadius: 10,\n bottom:\n numColumns == 2 ? '6%' : numberOfImagesToCapture == 1 ? '2%' : '11%',\n }}\n />\n <TouchableOpacity\n onPress={() => {\n onPress()\n const cta = \"Circle Icon\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n style={{\n position: 'absolute',\n top: numColumns == 2 ? '17%' : '9%',\n marginRight: '2%',\n }}\n >\n {imagesDummy?.length > index && imagesDummy[index]?.path && (\n <View\n style={{\n width: 25,\n height: 25,\n backgroundColor: 'white',\n borderRadius: 15,\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: numColumns == 2 ? '78%' : '96%',\n }}\n >\n <Circle />\n </View>\n )}\n </TouchableOpacity>\n </View>\n </View>\n );\n };\n\n const renderModal = () => {\n return (\n <GoBackModal\n showModal={showBackModal}\n setShowModal={setShowBackModal}\n onSuccess={async () => {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n false,\n GO_BACK_EVENT_CODE,\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n });\n setShowBackModal(false);\n }}\n onFailure={() => setShowBackModal(false)}\n />\n );\n };\n\n const handleSubmit = async () => {\n try {\n setDisableProceed(true);\n let imagesArray = imagesDummy.filter(item => item != null && item.path != null && item.path.length != 0);\n\n if (imagesArray.length > 0) {\n props.onSubmitET(await getCaptureOutput(imagesArray, props));\n } else {\n showToast('No Images captured');\n }\n } catch (error: any) {\n setDisableProceed(false);\n showToast(error.message);\n Logger.getInstance().logCora(\"Error\", `ImageCapture handleSubmit: ${error}`);\n } finally {\n setDisableProceed(false);\n }\n };\n\n // useEffect(() => {\n // if (props.captureMode === 'SINGLE') {\n // if (images.length > 0) {\n // setShowCapture(false);\n // } else setShowCapture(true);\n // } else if (\n // props.captureMode === 'MULTI' &&\n // props.captureCountLimit &&\n // props.captureCountLimit > 0\n // ) {\n // if (images.length === CaptureUtils.getMaxImagesCount(props)) {\n // setShowCapture(false);\n // } else setShowCapture(true);\n // } else {\n // if (images.length > 0) {\n // setShowCapture(true);\n // }\n // }\n // }, [images, props, showCapture]);\n\n const captureImage = useCallback(async (index) => {\n try {\n let imageDataResponse = await CaptureUtils.captureImage(\n props.resolution.breadth,\n props.resolution.length,\n props.fileSizeLimit\n );\n\n if (imageDataResponse != null) {\n setButtonProceed(true);\n\n let imgArray = [];\n imgArray = imagesDummy;\n const dateTime = await callbackHandler.getDateTime();\n let lastLocation = await LocationManager.getInstance().getLastLocation();\n imgArray[index] = {\n id: CaptureUtils.getImagesFileName(),\n // @ts-ignore\n path: imageDataResponse.uri,\n url: '',\n timestamp: Date.now(),\n dateTime: dateTime,\n lat: lastLocation.latitude,\n lng: lastLocation.longitude,\n accuracy: lastLocation.accuracy,\n };\n setImagesDummy([...imgArray])\n }\n } catch (error: any) {\n Logger.getInstance().logCora(\"Error\", `ImageCapture captureImage: ${error}`);\n }\n }, [props.resolution.breadth, props.resolution.length, props.fileSizeLimit]);\n\n\n const deleteImage = async (index: any) => {\n try {\n let imageDummyArray = [];\n imageDummyArray = imagesDummy\n imageDummyArray[index].path = \"\"\n setImagesDummy([...imageDummyArray])\n\n let initialProceedValue = false;\n for (let i = 0; i < imageDummyArray.length; i++) {\n if (imageDummyArray[i]?.path) {\n initialProceedValue = true;\n }\n }\n setButtonProceed(initialProceedValue);\n } catch (err: any) {\n Logger.getInstance().logCora(\"Error\", `ImageCapture deleteImage: ${err}`);\n }\n };\n\n const renderItem = ({ item, index }: { item: any; index: any }) => {\n return (\n <ImageItem\n item={item}\n index={index}\n onPress={async () => {\n await deleteImage(index);\n const cta = \"Delete Icon\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n />\n );\n };\n\n return (\n <Provider>\n {renderModal()}\n <View style={CommonStyles.mainContainer}>\n {props.message && (\n <View style={styles.etMessageView}>\n <Text style={styles.etMessage}>{props.message}</Text>\n </View>\n )}\n <View\n style={{\n backgroundColor: 'white',\n width: 360,\n height: numColumns == 2 ? '82%' : numberOfImagesToCapture == 1 ? '63%' : '70%',\n alignSelf: 'center',\n marginTop: '5%',\n borderRadius: 7,\n borderColor: '#E0E3EB',\n borderWidth: 0.5,\n }}\n >\n <FlatList\n data={images}\n numColumns={numColumns}\n renderItem={renderItem}\n keyExtractor={(item) => item?.id}\n contentContainerStyle={{ paddingBottom: '30%' }}\n />\n </View>\n <View style={styles.bottomButtons}>\n {(props.isSelfLoop == false) && <Button\n style={[CommonStyles.cancelButton, { flexGrow: 1, marginStart: '3%' }]}\n mode=\"outlined\"\n labelStyle={[CommonStyles.cancelButtonLabel, { textTransform: 'capitalize' }]}\n onPress={async () => {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n false,\n getEventCodeByET(ExecutionTaskID.IMAGE_CAPTURE, false, props.applicableReasons?.failure),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n });\n const cta = \"Cancel\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n >\n Cancel\n </Button>\n }\n <Button\n labelStyle={{\n color: buttonProceed ? '#ffff' : '#A3AAC2',\n fontFamily: Platform.OS === 'android' ? Fonts.IBMPlexSans_500Medium : 'IBMPlexSans-Medium',\n fontSize: 14,\n lineHeight: 20,\n textAlign: 'center',\n textTransform: 'capitalize',\n }}\n style={{\n flexGrow: 1,\n marginHorizontal: '3%',\n backgroundColor: buttonProceed ? '#5B80F7' : '#E0E3EB',\n }}\n disabled={!buttonProceed}\n mode=\"contained\"\n onPress={async () => {\n await handleSubmit();\n const cta = \"Proceed\";\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.CAPTURE_IMAGE_ET_SCREEN, cta: cta });\n\n }}\n >\n Proceed\n </Button>\n </View>\n </View>\n </Provider>\n );\n};\n\nconst styles = StyleSheet.create({\n\n imageEtContainer: {\n display: 'flex',\n marginStart: 16,\n marginEnd: 16,\n borderWidth: 1,\n borderColor: '#A3AAC2',\n padding: 10,\n marginTop: 15,\n borderStyle: 'dashed',\n backgroundColor: '#FFFFFF',\n alignItems: 'center',\n justifyContent: 'center',\n height: 370,\n borderRadius: 5\n },\n\n bottomButtons: {\n width: \"100%\",\n justifyContent: \"space-between\",\n flexDirection: 'row',\n backgroundColor: \"white\",\n paddingVertical: 12,\n bottom: 0,\n position: \"absolute\",\n borderTopColor: \"#A3AAC2\",\n borderTopWidth: 0.5\n },\n etMessage: {\n // textAlign: 'center',\n fontStyle: 'normal',\n fontWeight: '400',\n fontSize: 16,\n display: 'flex',\n alignItems: 'center',\n color: '#000000',\n fontFamily: Fonts.IBMPlexSans_400Regular\n },\n etMessageView: {\n marginTop: 17,\n paddingStart: 17,\n paddingTop: 15,\n paddingBottom: 15,\n backgroundColor: '#ffffff'\n }\n});\n\nexport default ImageCapture;\n"],"mappings":"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","ignoreList":[]}
@@ -47,7 +47,7 @@ class DispatchStateContainer {
47
47
  await this.sendETOutput(etOutput, states, isMergedObjectiveBasedOutput);
48
48
  await this.moveToNextET(etOutput, baseETProps, states, navigation, isLastTask);
49
49
  } catch (error) {
50
- _Logger.default.getInstance().logEvent('saveAndProceed', error.message, _Logger.LOG_TYPE.SDK_ERROR);
50
+ _Logger.default.getInstance().logCora("Error", `saveAndProceedToNextET: ${error}`);
51
51
  baseETProps.showProgress(false);
52
52
  (0, _Toaster.showToast)(error.message);
53
53
  }
@@ -95,6 +95,7 @@ class DispatchStateContainer {
95
95
  maxTaskReattempt,
96
96
  eventSyncBatchSize: _constants2.BULK_DATA_LIMIT
97
97
  });
98
+ _Logger.default.getInstance().logCora("Info", `DispatchExecutor started with ID: ${dispatchID}`);
98
99
  }
99
100
 
100
101
  // NEW CODE
@@ -111,132 +112,144 @@ class DispatchStateContainer {
111
112
 
112
113
  async queryNextET(mergedObjectiveId, statusFilter) {
113
114
  if (!mergedObjectiveId) {
114
- _Logger.default.getInstance().logEvent('queryNextET', 'CONSTRAINTS FAILED', _Logger.LOG_TYPE.SDK_ERROR);
115
+ _Logger.default.getInstance().logCora("Error", `Merged Objective ID is null`);
115
116
  throw new _BaseError.BaseError(_ErrorCodes.default.MERGING_ERROR, 'CONSTRAINTS FAILED');
116
117
  }
117
118
  return await _platformCoreosExecutionEngineSdk.DispatchExecutor.getNextTask(mergedObjectiveId[0], statusFilter);
118
119
  }
119
120
  async updateScanETOutputSharedPreference(etOutput, prefixedMergedObjectiveId, prefixKey) {
120
- etOutput.mergedObjectiveIds = prefixedMergedObjectiveId;
121
- let storage = _storage.default.getInstance();
122
- const output = await storage.getSharedItem(_constants2.SHARED_PREFERENCE_SCAN_OUTPUT);
123
- if (output) {
124
- const scanETOutput = JSON.parse(output);
125
- let _scanETOutput = {};
126
- if (scanETOutput[prefixKey]) {
127
- _scanETOutput = scanETOutput[prefixKey];
128
- }
129
- prefixedMergedObjectiveId.forEach(mergedId => {
130
- _scanETOutput[mergedId] = etOutput;
131
- });
121
+ try {
122
+ etOutput.mergedObjectiveIds = prefixedMergedObjectiveId;
123
+ let storage = _storage.default.getInstance();
124
+ const output = await storage.getSharedItem(_constants2.SHARED_PREFERENCE_SCAN_OUTPUT);
125
+ if (output) {
126
+ const scanETOutput = JSON.parse(output);
127
+ let _scanETOutput = {};
128
+ if (scanETOutput[prefixKey]) {
129
+ _scanETOutput = scanETOutput[prefixKey];
130
+ }
131
+ prefixedMergedObjectiveId.forEach(mergedId => {
132
+ _scanETOutput[mergedId] = etOutput;
133
+ });
132
134
 
133
- // SAVE IN SHARED PREFERENCE
134
- await storage.setSharedItem(_constants2.SHARED_PREFERENCE_SCAN_OUTPUT, JSON.stringify({
135
- ...scanETOutput,
136
- [prefixKey]: _scanETOutput
137
- }));
138
- } else {
139
- const scanETOutput = {};
140
- prefixedMergedObjectiveId.forEach(mergedId => {
141
- scanETOutput[mergedId] = etOutput;
142
- });
143
- // SAVE IN SHARED PREFERENCE
144
- await storage.setSharedItem(_constants2.SHARED_PREFERENCE_SCAN_OUTPUT, JSON.stringify({
145
- [prefixKey]: scanETOutput
146
- }));
135
+ // SAVE IN SHARED PREFERENCE
136
+ await storage.setSharedItem(_constants2.SHARED_PREFERENCE_SCAN_OUTPUT, JSON.stringify({
137
+ ...scanETOutput,
138
+ [prefixKey]: _scanETOutput
139
+ }));
140
+ } else {
141
+ const scanETOutput = {};
142
+ prefixedMergedObjectiveId.forEach(mergedId => {
143
+ scanETOutput[mergedId] = etOutput;
144
+ });
145
+ // SAVE IN SHARED PREFERENCE
146
+ await storage.setSharedItem(_constants2.SHARED_PREFERENCE_SCAN_OUTPUT, JSON.stringify({
147
+ [prefixKey]: scanETOutput
148
+ }));
149
+ }
150
+ } catch (error) {
151
+ _Logger.default.getInstance().logCora("Error", `updateScanETOutputSharedPreference: ${error}`);
147
152
  }
148
153
  }
149
154
  async updatePendingSharedPreference(eventType, prefixedMergedObjectiveId, prefixKey) {
150
- let storage = _storage.default.getInstance();
151
- const mergedIdOutput = await storage.getSharedItem(_constants2.SCAN_MERGED_OBJ_ID_OUTPUT);
152
- if (mergedIdOutput) {
153
- const mergedIds = JSON.parse(mergedIdOutput);
154
- const _mergedIds = mergedIds[prefixKey];
155
- if (_mergedIds) {
156
- if (eventType) {
157
- _mergedIds.success.push(...prefixedMergedObjectiveId);
158
- _mergedIds.pending = [];
159
- } else {
160
- _mergedIds.failure.push(...prefixedMergedObjectiveId);
161
- _mergedIds.pending = [];
155
+ try {
156
+ let storage = _storage.default.getInstance();
157
+ const mergedIdOutput = await storage.getSharedItem(_constants2.SCAN_MERGED_OBJ_ID_OUTPUT);
158
+ if (mergedIdOutput) {
159
+ const mergedIds = JSON.parse(mergedIdOutput);
160
+ const _mergedIds = mergedIds[prefixKey];
161
+ if (_mergedIds) {
162
+ if (eventType) {
163
+ _mergedIds.success.push(...prefixedMergedObjectiveId);
164
+ _mergedIds.pending = [];
165
+ } else {
166
+ _mergedIds.failure.push(...prefixedMergedObjectiveId);
167
+ _mergedIds.pending = [];
168
+ }
169
+ await storage.setSharedItem(_constants2.SCAN_MERGED_OBJ_ID_OUTPUT, JSON.stringify({
170
+ ...mergedIds,
171
+ [prefixKey]: _mergedIds
172
+ }));
162
173
  }
163
- await storage.setSharedItem(_constants2.SCAN_MERGED_OBJ_ID_OUTPUT, JSON.stringify({
164
- ...mergedIds,
165
- [prefixKey]: _mergedIds
166
- }));
167
174
  }
175
+ } catch (error) {
176
+ _Logger.default.getInstance().logCora("Error", `updatePendingSharedPreference: ${error}`);
168
177
  }
169
178
  }
170
179
 
171
180
  // NEW CODE
172
181
  async sendETOutput(etOutput, states, isMergedObjectiveBasedOutput) {
173
- const mergedObjectiveIds = states[_RouteParams.RouteParams.NEXT_STATES].mergedObjectiveIds;
174
- const taskName = states[_RouteParams.RouteParams.NEXT_STATES].taskName;
175
- const taskID = states[_RouteParams.RouteParams.NEXT_STATES].taskId;
176
- const input = states[_RouteParams.RouteParams.NEXT_STATES].input;
177
- let lockTaskResponse = true;
178
- if (isMergedObjectiveBasedOutput) {
179
- // NEW CODE
180
- const output = etOutput;
181
- let promises = [];
182
- const prefixKey = this.findPrefixKey(mergedObjectiveIds, etOutput, states);
183
- let defaultConfig = {
184
- index: -1,
185
- success: false,
186
- output: {}
187
- };
188
- let mergedIds = {
189
- success: [],
190
- failure: [],
191
- pending: [prefixKey]
192
- };
193
- const filterIds = await (0, _utils.getScanMergedObjectID)();
194
- if (filterIds) {
195
- mergedIds = filterIds[prefixKey];
196
- }
197
- Object.keys(etOutput).forEach(mergedObjectiveId => {
198
- const _output = output[mergedObjectiveId].output;
199
- // PREFIX_KEY
200
- if (mergedObjectiveId === 'default') {
201
- const defaultOutput = output.default.output;
202
- // DELIVER AT DIFF LOCATION
203
- if (defaultOutput.eventCode === _constants.REASON_NOT_USED) {
204
- // DO NOT SEND OUTPUT WHEN DELIVER AT DIFF LOCATION
205
- defaultOutput.eventCode = '';
206
- defaultOutput.reasonCode = '';
207
- lockTaskResponse = false;
182
+ try {
183
+ const mergedObjectiveIds = states[_RouteParams.RouteParams.NEXT_STATES].mergedObjectiveIds;
184
+ const taskName = states[_RouteParams.RouteParams.NEXT_STATES].taskName;
185
+ const taskID = states[_RouteParams.RouteParams.NEXT_STATES].taskId;
186
+ const input = states[_RouteParams.RouteParams.NEXT_STATES].input;
187
+ let lockTaskResponse = true;
188
+ if (isMergedObjectiveBasedOutput) {
189
+ // NEW CODE
190
+ const output = etOutput;
191
+ let promises = [];
192
+ const prefixKey = this.findPrefixKey(mergedObjectiveIds, etOutput, states);
193
+ let defaultConfig = {
194
+ index: -1,
195
+ success: false,
196
+ output: {}
197
+ };
198
+ let mergedIds = {
199
+ success: [],
200
+ failure: [],
201
+ pending: [prefixKey]
202
+ };
203
+ const filterIds = await (0, _utils.getScanMergedObjectID)();
204
+ if (filterIds) {
205
+ mergedIds = filterIds[prefixKey];
206
+ }
207
+ Object.keys(etOutput).forEach(mergedObjectiveId => {
208
+ const _output = output[mergedObjectiveId].output;
209
+ // PREFIX_KEY
210
+ if (mergedObjectiveId === 'default') {
211
+ const defaultOutput = output.default.output;
212
+ // DELIVER AT DIFF LOCATION
213
+ if (defaultOutput.eventCode === _constants.REASON_NOT_USED) {
214
+ // DO NOT SEND OUTPUT WHEN DELIVER AT DIFF LOCATION
215
+ defaultOutput.eventCode = '';
216
+ defaultOutput.reasonCode = '';
217
+ lockTaskResponse = false;
218
+ } else {
219
+ defaultConfig = {
220
+ index: promises.length,
221
+ success: defaultOutput.success,
222
+ output: output.default
223
+ };
224
+ promises.push(_platformCoreosExecutionEngineSdk.DispatchExecutor.saveTaskOutput(mergedIds.pending, taskName, taskID, {
225
+ input,
226
+ output: defaultOutput
227
+ }, {
228
+ ec: defaultOutput.eventCode,
229
+ rc: defaultOutput.reasonCode || ''
230
+ }));
231
+ }
208
232
  } else {
209
- defaultConfig = {
210
- index: promises.length,
211
- success: defaultOutput.success,
212
- output: output.default
213
- };
214
- promises.push(_platformCoreosExecutionEngineSdk.DispatchExecutor.saveTaskOutput(mergedIds.pending, taskName, taskID, {
233
+ promises.push(_platformCoreosExecutionEngineSdk.DispatchExecutor.saveTaskOutput([mergedObjectiveId], taskName, taskID, {
215
234
  input,
216
- output: defaultOutput
217
- }, {
218
- ec: defaultOutput.eventCode,
219
- rc: defaultOutput.reasonCode || ''
235
+ output: _output
220
236
  }));
221
237
  }
222
- } else {
223
- promises.push(_platformCoreosExecutionEngineSdk.DispatchExecutor.saveTaskOutput([mergedObjectiveId], taskName, taskID, {
224
- input,
225
- output: _output
226
- }));
238
+ });
239
+ const response = await Promise.all(promises);
240
+ if (defaultConfig.index !== -1) {
241
+ // UPDATE PENDING IN SHARED PREFERENCE MERGED_SCAN_OUTPUT
242
+ this.updatePendingSharedPreference(defaultConfig.success, response[defaultConfig.index], prefixKey);
243
+ this.updateScanETOutputSharedPreference(defaultConfig.output, response[defaultConfig.index], prefixKey);
227
244
  }
228
- });
229
- const response = await Promise.all(promises);
230
- if (defaultConfig.index !== -1) {
231
- // UPDATE PENDING IN SHARED PREFERENCE MERGED_SCAN_OUTPUT
232
- this.updatePendingSharedPreference(defaultConfig.success, response[defaultConfig.index], prefixKey);
233
- this.updateScanETOutputSharedPreference(defaultConfig.output, response[defaultConfig.index], prefixKey);
245
+ } else {
246
+ await _platformCoreosExecutionEngineSdk.DispatchExecutor.saveTaskOutput(mergedObjectiveIds, taskName, taskID, {
247
+ input,
248
+ output: etOutput
249
+ });
234
250
  }
235
- } else {
236
- await _platformCoreosExecutionEngineSdk.DispatchExecutor.saveTaskOutput(mergedObjectiveIds, taskName, taskID, {
237
- input,
238
- output: etOutput
239
- });
251
+ } catch (error) {
252
+ _Logger.default.getInstance().logCora("Error", `sendETOutput: ${error}`);
240
253
  }
241
254
  }
242
255
  findPrefixKey(mergedObjectiveIds, scanOutput, routeParams) {
@@ -280,7 +293,7 @@ class DispatchStateContainer {
280
293
  return response;
281
294
  } else return response;
282
295
  } catch (error) {
283
- _Logger.default.getInstance().logEvent('getObjectiveSummary', error.message, _Logger.LOG_TYPE.SDK_ERROR);
296
+ _Logger.default.getInstance().logCora("Error", `getObjectiveSummary: ${error}`);
284
297
  return [];
285
298
  }
286
299
  }
@@ -381,7 +394,7 @@ class DispatchStateContainer {
381
394
  }
382
395
  } catch (error) {
383
396
  baseETProps.showProgress(false);
384
- _Logger.default.getInstance().logEvent('navigateToNextTask', error.message, _Logger.LOG_TYPE.SDK_ERROR);
397
+ _Logger.default.getInstance().logCora("Error", `navigateToNextTask: ${error}`);
385
398
  }
386
399
  }
387
400
  async moveToNextET(etOutput, baseETProps, states, navigation, isLastTask) {
@@ -501,7 +514,7 @@ class DispatchStateContainer {
501
514
  }
502
515
  } catch (error) {
503
516
  baseETProps.showProgress(false);
504
- _Logger.default.getInstance().logEvent('moveToNextET', error.message, _Logger.LOG_TYPE.SDK_ERROR);
517
+ _Logger.default.getInstance().logCora("Error", `moveToNextET: ${error}`);
505
518
  }
506
519
  }
507
520
  async saveAndProceed(baseETProps, etOutput, states, navigation, isLastTask, isMergedObjectiveBasedOutput) {