@os1-platform/dispatch-mobile 2.1.12 → 2.1.14
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/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +3 -0
- package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/ScanET.js +9 -6
- package/lib/commonjs/components/executiontasks/scan/ScanET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/interfaces.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js +66 -27
- package/lib/commonjs/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/utils.js +4 -2
- package/lib/commonjs/components/executiontasks/scan/utils.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +0 -13
- package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
- package/lib/commonjs/ui/screens/DeliverScreen.js +9 -1
- package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FormsScreen.js +9 -1
- package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ImageCaptureScreen.js.map +1 -1
- package/lib/commonjs/utils/Constants.js +9 -0
- package/lib/commonjs/utils/Constants.js.map +1 -0
- package/lib/commonjs/utils/Enums.js +12 -0
- package/lib/commonjs/utils/Enums.js.map +1 -0
- package/lib/commonjs/utils/storage.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +3 -0
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/module/components/executiontasks/scan/ScanET.js +9 -6
- package/lib/module/components/executiontasks/scan/ScanET.js.map +1 -1
- package/lib/module/components/executiontasks/scan/interfaces.js.map +1 -1
- package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js +67 -28
- package/lib/module/components/executiontasks/scan/sub_components/SummaryPage.js.map +1 -1
- package/lib/module/components/executiontasks/scan/utils.js +4 -2
- package/lib/module/components/executiontasks/scan/utils.js.map +1 -1
- package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +0 -13
- package/lib/module/manager/syncmanager/document/DocumentSyncManager.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/FormsScreen.js +9 -1
- package/lib/module/ui/screens/FormsScreen.js.map +1 -1
- package/lib/module/ui/screens/ImageCaptureScreen.js.map +1 -1
- package/lib/module/utils/Constants.js +3 -0
- package/lib/module/utils/Constants.js.map +1 -0
- package/lib/module/utils/Enums.js +6 -0
- package/lib/module/utils/Enums.js.map +1 -0
- package/lib/module/utils/storage.js.map +1 -1
- package/lib/typescript/components/executiontasks/scan/interfaces.d.ts +2 -0
- package/lib/typescript/utils/Constants.d.ts +1 -0
- package/lib/typescript/utils/Enums.d.ts +4 -0
- package/package.json +2 -2
- package/src/components/executiontasks/imageCapture/ImageCapture.tsx +36 -31
- package/src/components/executiontasks/scan/ScanET.tsx +23 -23
- package/src/components/executiontasks/scan/interfaces.ts +2 -0
- package/src/components/executiontasks/scan/sub_components/SummaryPage.tsx +107 -80
- package/src/components/executiontasks/scan/utils.ts +4 -1
- package/src/manager/syncmanager/document/DocumentSyncManager.ts +45 -62
- package/src/ui/screens/DeliverScreen.tsx +9 -7
- package/src/ui/screens/FormsScreen.tsx +14 -7
- package/src/ui/screens/ImageCaptureScreen.tsx +1 -1
- package/src/utils/Constants.ts +2 -0
- package/src/utils/Enums.ts +4 -0
- package/src/utils/storage.ts +9 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BarCodeScanner","ExpoBarcodeTypes","SCAN_STATUS","SummaryPageTabs","DeliverState","jsonLogic","getBaseETResponse","EntityCode","ExecutionTaskID","getApiResponse","parseBody","parseKeyValue","Logger","LOG_TYPE","REASON_NOT_USED","Storage","BULK_DATA_LIMIT","SCAN_MERGED_OBJ_ID_OUTPUT","SHARED_PREFERENCE_SCAN_OUTPUT","RouteParams","dispatchEvent","DispatchExecutor","WIErrorCodes","ErrorCodeMessages","isEmptyOrBlank","EMPTY_AWB","ER_MISSING","INVALID_SHIPMENT","getDefaultERCLabel","SnackBarType","getBarCodeTypes","input","barCodeType","scannedInput","scanType","forEach","type","QRCODE","push","Constants","BarCodeType","qr","aztec","codabar","code128","code39","code93","datamatrix","ean13","ean8","itf14","pdf417","upc_e","checkForValidation","validation","selectedIndex","logic","regex","RegExp","test","api","apiData","errorJsonPath","responseJsonPath","uri","httpMethod","timeout","headers","requestBody","parsedRequestBody","pathParams","queryParams","apiResponse","apply","responseJsonLogic","data","error","getInstance","logEvent","message","SDK_ERROR","getShipmentData","scansMap","pendingShipments","scannedShipments","key","value","entries","scanStatus","undefined","SCANNED","FAILED","getScannedItemCount","getMappingCount","scanOutput","wiMappingUpdate","mwId","mergedObjectiveId","count","getUpdatedScanETOutput","success","eventCode","reasonCode","route","scannedData","prefixedMergedObjectiveId","params","ROOT_META_DATA","previousMWID","previousMergedObjectiveId","output","SCAN","_scannedData","groupId","displayInfo","jobId","shipmentFlow","scanValue","scanId","isScan","triggerScanEvent","allScansOutput","getScanMappedOutput","storage","setSharedItem","JSON","stringify","getScanETOutput","mergeScannedOutput","ercItems","defaultERC","deliverState","isPartial","CANCELLED","DELIVERE_LATER","DELIVER_NOW","getEventType","getScannedItems","items","validated","timestamp","Date","now","isETCompleted","scanMode","isMultiObjectiveEnable","scannedShipmentCount","singleModeCount","allowMultiObjectivePartial","_scannedShipmentCount","length","scans","isReplacement","scan","selectedEventCode","selectedReason","_scansMap$get","_scansMap$get2","get","code","eventList","result","find","Boolean","mergedScanOutput","getSharedItem","parse","etOutput","nextStates","NEXT_STATES","eventOutputData","meta","etData","endTime","taskId","customData","customEventsData","taskName","fetchMergedObjectiveIdBasedOnStatus","activeTab","scanProps","mergedObjectiveIds","filterIds","getScanMergedObjectID","ALL","PENDING","DELIVERED","UNDELIVERED","fetchLabel","modifyDisplayScanData","response","updatedScanData","Promise","all","map","_scan$displayInfo","_scan$displayInfo2","scannableId","clientName","orderId","originalMergedObjId","lastStatus","totalCount","getScanData","limit","offset","filterWFIData","addScans","isErcSelector","ercSelector","status","FAILURE","replace","isValidated","eventType","updateWIMapping","ec","rc","scanToMerge","title","subTitle","updateSharedPreference","_scanOutput","WARNING","SUCCESS","shipmentCount","scannedCount","scanned","total","exitOnError","exit","getErrorMessage","removeScan","removeShipment","Object","keys","getScanMergedOutput","mergedIdOutput","_mergedIds","pending","outputAtPrefixedId","failure","updatePendingSharedPreference","getTabCount","defaultResult","getWFICountByMWIIds","clearScanOutput","promises","scanRecord","scanOutputs","errorCode","ScannableIdAlreadyCompleted","ScannableIdNotInDispatch","ScannableIdNotReady","DifferentGroupUpdateNotAllowed","ObjectiveAndJobWFMismatch","ScannableIdAlreadyUpdated","JobAlreadyCompleted","ScannableIdPartOfAnotherMO","getSplitIds","splitMergedObjectiveIds","filter","mergedObjectiveID","filterERCItems","eventCodeItems","erc","resetObjective","deliveredMergedObjectiveIds","undeliveredMergedObjectiveIds","hasNextPage"],"sources":["utils.ts"],"sourcesContent":["import { BarCodeScanner } from 'expo-barcode-scanner';\nimport {\n ADD_SCAN,\n ExpoBarcodeTypes,\n MergedScan,\n SCANNED_RECORD,\n SCAN_MERGED_OBJ_ID_INTEFACE,\n SCAN_STATUS,\n SHARED_PREF_SCAN_OUTPUT_INTERFACE,\n SummaryDisplayData,\n SummaryPageTabs,\n TabRecord,\n} from './interfaces';\nimport {\n API,\n DefaultERC,\n DeliverState,\n IWIMappingUpdate,\n ScanData,\n ScanMode,\n ScannerInput,\n ScannerOutput,\n ScannerType,\n Validation,\n} from './ScanSchema';\nimport * as jsonLogic from 'json-logic-js';\nimport type { ercItem } from './sub_components/ERDropDown';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport {\n APIData,\n getApiResponse,\n parseBody,\n parseKeyValue,\n} from '../../../utils/ApiUtils';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { REASON_NOT_USED } from '../../../constants/constants';\nimport Storage from '../../../utils/storage';\nimport {\n BULK_DATA_LIMIT,\n SCAN_MERGED_OBJ_ID_OUTPUT,\n SHARED_PREFERENCE_SCAN_OUTPUT,\n} from '../../../manager/syncmanager/constants';\nimport { RouteParams } from '../../../ui/uiConfig/RouteParams';\nimport dispatchEvent from '../../../events/EventDispatcher';\nimport {\n DispatchExecutor,\n IDispatch,\n WIErrorCodes,\n ErrorCodeMessages,\n} from '@os1-platform/platform-coreos-execution-engine-sdk';\nimport { isEmptyOrBlank } from '../../../utils/utils';\nimport { EMPTY_AWB, ER_MISSING, INVALID_SHIPMENT } from './constants';\nimport { onScanEvent, onScanRemoveEvent } from '../../../models/DispatchModels';\nimport { BaseETResponse } from '../ExecutionTasksIndex';\nimport { eventType } from '../../../events/interface';\nimport { getDefaultERCLabel } from './sub_components/DropDownUtils';\nimport { SnackBarType } from '../../../components/widgets/SnackBarCustom';\n\nexport function getBarCodeTypes(input: ScannerInput): any[] {\n const barCodeType: any[] = [];\n const {\n scannedInput: { scanType },\n } = input;\n scanType.forEach((type: ScannerType) => {\n switch (type) {\n case ExpoBarcodeTypes.QRCODE:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.qr);\n break;\n case ExpoBarcodeTypes.aztec:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.aztec);\n break;\n case ExpoBarcodeTypes.codabar:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.codabar);\n break;\n case ExpoBarcodeTypes.code128:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code128);\n break;\n case ExpoBarcodeTypes.code39:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code39);\n break;\n case ExpoBarcodeTypes.code93:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code93);\n break;\n case ExpoBarcodeTypes.datamatrix:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.datamatrix);\n break;\n case ExpoBarcodeTypes.ean13:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.ean13);\n break;\n case ExpoBarcodeTypes.ean8:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.ean8);\n break;\n case ExpoBarcodeTypes.itf14:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.itf14);\n break;\n case ExpoBarcodeTypes.pdf417:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.pdf417);\n break;\n case ExpoBarcodeTypes.upc_e:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.upc_e);\n break;\n\n default:\n break;\n }\n });\n return barCodeType;\n}\n\nexport async function checkForValidation(\n scannedInput: string,\n validation: Validation\n): Promise<boolean> {\n // Scans Array\n if (validation.selectedIndex === 0) {\n return true;\n }\n // Validation Regex\n else if (\n validation.selectedIndex === 1 &&\n typeof validation.logic === 'string'\n ) {\n const regex = new RegExp(validation.logic);\n return regex.test(scannedInput);\n }\n // API\n else if (\n validation.selectedIndex === 2 &&\n typeof validation.logic === 'object'\n ) {\n try {\n //@ts-ignore\n const api: API = validation.logic;\n const apiData: APIData = {\n errorJsonPath: '',\n responseJsonPath: '',\n uri: api.uri,\n httpMethod: api.httpMethod,\n timeout: api.timeout,\n headers: api.headers,\n };\n if (api.requestBody) {\n const parsedRequestBody = parseBody(api.requestBody, scannedInput);\n apiData.requestBody = parsedRequestBody;\n }\n if (api.pathParams) {\n parseKeyValue(api.pathParams, scannedInput);\n apiData.pathParams = api.pathParams;\n }\n if (api.queryParams) {\n parseKeyValue(api.queryParams, scannedInput);\n apiData.queryParams = api.queryParams;\n }\n const apiResponse = await getApiResponse(apiData);\n\n return jsonLogic.apply(\n <jsonLogic.RulesLogic>api.responseJsonLogic,\n apiResponse.data\n );\n } catch (error: any) {\n Logger.getInstance().logEvent(\n '~ checkForValidation',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n } else {\n return false;\n }\n}\n\nexport function getShipmentData(\n selectedIndex: number,\n scansMap: Map<string, MergedScan>\n): [string[], string[]] {\n const pendingShipments: string[] = [];\n const scannedShipments: string[] = [];\n //@ts-ignore\n for (let [key, value] of scansMap.entries()) {\n /**\n * If scanStatus is undefined then push the shipment to pending.\n * If scanStatus is not undefined:\n * Then if successfully scanned, move to scannedShipments array.\n * Else do nothing.\n */\n if (value?.scanStatus != undefined) {\n if (value?.scanStatus === SCAN_STATUS.SCANNED) {\n scannedShipments.push(key);\n } else if (value?.scanStatus === SCAN_STATUS.FAILED) {\n pendingShipments.push(key);\n }\n } else if (selectedIndex === 0) {\n pendingShipments.push(key);\n }\n }\n return [pendingShipments, scannedShipments];\n}\n\nexport function getScannedItemCount(scansMap: Map<string, MergedScan>): number {\n let scannedShipments = 0;\n if (scansMap) {\n for (let [, value] of scansMap.entries()) {\n if (value.scanStatus === SCAN_STATUS.SCANNED) {\n scannedShipments++;\n }\n }\n return scannedShipments;\n }\n return scannedShipments;\n}\n\nexport function getMappingCount(\n scanOutput: ScannerOutput,\n wiMappingUpdate: IWIMappingUpdate\n) {\n const { mwId: mergedObjectiveId } = wiMappingUpdate.data;\n\n if (scanOutput[mergedObjectiveId]) {\n return scanOutput[mergedObjectiveId].count + 1;\n } else {\n return 1;\n }\n}\n\nexport async function getUpdatedScanETOutput(\n scanOutput: ScannerOutput,\n wiMappingUpdate: IWIMappingUpdate,\n success: boolean,\n eventCode: string,\n reasonCode: string,\n route: any,\n scannedData: any\n) {\n const prefixedMergedObjectiveId =\n route.params[RouteParams.ROOT_META_DATA].prefixedMergedObjectiveId;\n const { mwId: mergedObjectiveId, previousMWID: previousMergedObjectiveId } =\n wiMappingUpdate.data;\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n success,\n eventCode,\n reasonCode,\n [mergedObjectiveId],\n ExecutionTaskID.SCAN\n );\n const _scannedData: any = [\n {\n groupId: scannedData.displayInfo.groupId,\n jobId: scannedData.jobId,\n shipmentFlow: scannedData.displayInfo.shipmentFlow,\n scanValue: scannedData.scanId,\n },\n ];\n\n scannedData?.isScan\n ? triggerScanEvent('ON_SCAN', route, _scannedData, output)\n : null;\n\n if (scanOutput[previousMergedObjectiveId]) {\n scanOutput[previousMergedObjectiveId].count -= 1;\n\n if (scanOutput[previousMergedObjectiveId].count === 0) {\n delete scanOutput[previousMergedObjectiveId];\n }\n }\n const count = getMappingCount(scanOutput, wiMappingUpdate);\n\n if (!scanOutput[mergedObjectiveId]) {\n scanOutput[mergedObjectiveId] = { output, count };\n } else {\n scanOutput[mergedObjectiveId].count = count;\n }\n\n // SAVE IN SHARED PREFERENCE\n let allScansOutput = (await getScanMappedOutput()) || {};\n let storage = Storage.getInstance();\n await storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify({\n ...allScansOutput,\n [prefixedMergedObjectiveId]: scanOutput,\n })\n );\n return scanOutput;\n}\n\nexport async function getScanETOutput(\n mergeScannedOutput: ScannerOutput,\n mergedObjectiveId: Array<string>,\n ercItems: ercItem[],\n defaultERC: DefaultERC,\n deliverState: DeliverState,\n isPartial: boolean,\n count: number\n): Promise<ScannerOutput> {\n switch (deliverState) {\n case DeliverState.CANCELLED: {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n false,\n defaultERC.eventCode,\n defaultERC.reasonCode || '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n return {\n [mergedObjectiveId[0]]: {\n output,\n count,\n },\n };\n }\n case DeliverState.DELIVERE_LATER: {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n false,\n REASON_NOT_USED,\n '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n mergeScannedOutput['default'] = {\n output,\n count,\n };\n return mergeScannedOutput;\n }\n case DeliverState.DELIVER_NOW: {\n if (isPartial) {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n getEventType(ercItems, defaultERC.eventCode),\n defaultERC.eventCode,\n defaultERC.reasonCode || '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n\n mergeScannedOutput['default'] = { output, count };\n return mergeScannedOutput;\n } else {\n return mergeScannedOutput;\n }\n }\n default: {\n return mergeScannedOutput;\n }\n }\n}\n\nexport function getScannedItems(scanValue: MergedScan): ScanData[] {\n const items: ScanData[] = [];\n if (scanValue.scanStatus === SCAN_STATUS.SCANNED)\n items.push({\n value: scanValue.value,\n validated: scanValue.validated || false,\n timestamp: scanValue.timestamp || Date.now(),\n });\n\n return items;\n}\n\nexport function isETCompleted(\n validation: Validation,\n scansMap: Map<string, MergedScan>,\n scanMode: ScanMode,\n isMultiObjectiveEnable: boolean,\n scannedShipmentCount?: number,\n singleModeCount?: number,\n allowMultiObjectivePartial?: boolean\n): boolean {\n if (scanMode === 'SINGLE' || isMultiObjectiveEnable) {\n let _scannedShipmentCount = scannedShipmentCount || 0;\n\n if (!scannedShipmentCount) {\n const [, scannedShipments] = getShipmentData(\n validation.selectedIndex,\n scansMap\n );\n _scannedShipmentCount = scannedShipments.length;\n }\n\n if (allowMultiObjectivePartial) {\n return _scannedShipmentCount >= 1;\n }\n\n return singleModeCount === _scannedShipmentCount;\n } else {\n // Scans Array\n if (validation.selectedIndex === 0) {\n //@ts-ignore\n const scans: string[] = validation.logic;\n if (!scannedShipmentCount) {\n const [, scannedShipments] = getShipmentData(\n validation.selectedIndex,\n scansMap\n );\n return scans.length === scannedShipments.length;\n }\n\n return scans.length === scannedShipmentCount;\n }\n // Validation Regex\n else if (\n (validation.selectedIndex === 1 &&\n typeof validation.logic === 'string') ||\n (validation.selectedIndex === 2 && typeof validation.logic === 'object')\n ) {\n return true;\n } else {\n return false;\n }\n }\n}\n\nexport function isReplacement(\n scan: string,\n scansMap: Map<string, MergedScan>,\n selectedEventCode: ercItem | undefined,\n selectedReason: ercItem | undefined\n) {\n if (\n //(selectedEventCode || selectedReason) &&\n //scansMap.get(scan)?.eventCode &&\n scansMap.get(scan)?.eventCode !== selectedEventCode?.code || //scansMap.get(scan)?.reasonCode !== undefined &&\n scansMap.get(scan)?.reasonCode !== selectedReason?.code\n ) {\n return true;\n }\n return false;\n}\n\nexport function getEventType(\n eventList: Array<ercItem>,\n eventCode: string\n): boolean {\n const result = eventList.find((code) => code.code === eventCode);\n if (result) {\n return Boolean(result.success);\n } else {\n return false;\n }\n}\n\nexport async function getScanMappedOutput(): Promise<SHARED_PREF_SCAN_OUTPUT_INTERFACE> {\n let storage = Storage.getInstance();\n const mergedScanOutput = await storage.getSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT\n );\n if (mergedScanOutput) {\n return JSON.parse(mergedScanOutput);\n } else {\n return {};\n }\n}\n\nexport function triggerScanEvent(\n type: eventType,\n route: any,\n scannedData: any,\n etOutput?: BaseETResponse\n) {\n switch (type) {\n case 'ON_SCAN': {\n const nextStates = route.params[RouteParams.NEXT_STATES];\n const eventOutputData: onScanEvent = {\n meta: etOutput?.meta || {},\n etData: {\n eventCode: etOutput?.eventCode || '',\n reasonCode: etOutput?.reasonCode || '',\n success: etOutput?.success || false,\n endTime: Date.now(),\n scannedData,\n },\n taskId: nextStates.taskId,\n timestamp: Date.now(),\n customData: route.params[RouteParams.ROOT_META_DATA].customEventsData,\n };\n dispatchEvent('ON_SCAN', nextStates.taskName, eventOutputData);\n break;\n }\n case 'ON_SCAN_REMOVE': {\n const nextStates = route.params[RouteParams.NEXT_STATES];\n const eventOutputData: onScanRemoveEvent = {\n etData: {\n scannedData,\n },\n taskId: nextStates.taskId,\n timestamp: Date.now(),\n customData: route.params[RouteParams.ROOT_META_DATA].customEventsData,\n };\n dispatchEvent('ON_SCAN_REMOVE', nextStates.taskName, eventOutputData);\n break;\n }\n default:\n break;\n }\n}\n\nconst fetchMergedObjectiveIdBasedOnStatus = async (\n activeTab: SummaryPageTabs,\n scanProps: ScannerInput\n) => {\n let prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n\n let mergedObjectiveIds: SCANNED_RECORD;\n let filterIds = await getScanMergedObjectID();\n if (filterIds) {\n mergedObjectiveIds = filterIds[prefixedMergedObjectiveId] || [];\n } else {\n return [];\n }\n\n switch (activeTab) {\n case SummaryPageTabs.ALL:\n return [\n ...mergedObjectiveIds['pending'],\n ...mergedObjectiveIds['success'],\n ...mergedObjectiveIds['failure'],\n ];\n case SummaryPageTabs.PENDING:\n return mergedObjectiveIds['pending'];\n case SummaryPageTabs.DELIVERED:\n return mergedObjectiveIds['success'];\n case SummaryPageTabs.UNDELIVERED:\n return mergedObjectiveIds['failure'];\n default:\n return [];\n }\n};\n\nconst fetchLabel = async (eventCode: string, reasonCode?: string) => {\n return await getDefaultERCLabel({\n eventCode,\n reasonCode,\n });\n};\n\nconst modifyDisplayScanData = async (\n response: IDispatch.IQueryWFIResponse\n): Promise<SummaryDisplayData> => {\n const { data: scans } = response;\n const updatedScanData = await Promise.all(\n scans.map(async (scan) => {\n const { eventCode, reasonCode } = await fetchLabel(\n scan.eventCode,\n scan.reasonCode\n );\n\n return {\n scanId: scan.scannableId,\n clientName: scan.displayInfo?.clientName || '--',\n orderId: scan.displayInfo?.orderId || '--',\n eventCode: eventCode || '--',\n reasonCode: reasonCode || '--',\n prefixedMergedObjectiveId: scan.originalMergedObjId,\n lastStatus: scan.lastStatus,\n };\n })\n );\n\n return { data: updatedScanData, totalCount: response.totalCount };\n};\n\nexport async function getScanData(\n activeTab: SummaryPageTabs,\n scanProps: ScannerInput,\n limit: number,\n offset: number,\n scan?: string\n): Promise<SummaryDisplayData> {\n const taskName = scanProps.taskName || '';\n const mergedObjectiveId: Array<string> = scanProps.mergedObjectiveId;\n\n const mergedObjectiveIds = await fetchMergedObjectiveIdBasedOnStatus(\n activeTab,\n scanProps\n );\n\n if (!mergedObjectiveIds || mergedObjectiveIds.length === 0) {\n return {\n data: [],\n totalCount: 0,\n };\n }\n if (scan) {\n const scans: IDispatch.IQueryWFIResponse =\n await DispatchExecutor.filterWFIData(\n taskName,\n mergedObjectiveIds,\n limit,\n offset,\n scan\n );\n\n return await modifyDisplayScanData(scans);\n } else {\n const scans: IDispatch.IQueryWFIResponse =\n await DispatchExecutor.filterWFIData(\n taskName,\n mergedObjectiveIds,\n limit,\n offset\n );\n\n return await modifyDisplayScanData(scans);\n }\n}\n\nexport async function addScans(\n scan: string,\n scanProps: ScannerInput,\n scanOutput: ScannerOutput,\n ercItems: ercItem[],\n eventCode: ercItem,\n reasonCode?: ercItem\n): Promise<ADD_SCAN> {\n const prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n\n const isErcSelector = scanProps.ercSelector ? true : false;\n if (isEmptyOrBlank(scan)) {\n return { status: false, message: EMPTY_AWB, type: SnackBarType.FAILURE };\n }\n\n if (isErcSelector && (!eventCode || !eventCode.code)) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n message: ER_MISSING.replace('<shipment_id>', scan),\n };\n }\n\n let isValidated = await checkForValidation(scan, scanProps.validation);\n\n if (isValidated) {\n // NEW CODE\n try {\n const eventType = getEventType(ercItems || [], eventCode?.code || '');\n\n const result = await DispatchExecutor.updateWIMapping(\n prefixedMergedObjectiveId,\n scan,\n {\n ec: eventCode?.code || '',\n rc: reasonCode?.code || '',\n },\n scanProps.scanToMerge || false\n );\n if ('data' in result) {\n const data: IDispatch.MappingUpdateResponse = result.data;\n const {\n message: { title, subTitle },\n } = data;\n\n // UPDATE SHARED PREFERENCE\n updateSharedPreference(eventType, data.mwId, prefixedMergedObjectiveId);\n\n const _scanOutput = await getUpdatedScanETOutput(\n scanOutput,\n result,\n eventType,\n eventCode?.code || '',\n reasonCode?.code || '',\n scanProps.route,\n {\n jobId: data.jobId,\n displayInfo: data.displayInfo,\n isScan: true,\n scanId: scan,\n }\n );\n\n return {\n status: true,\n type: subTitle ? SnackBarType.WARNING : SnackBarType.SUCCESS,\n message: subTitle\n ? `#${scan}\\n${title}\\n${subTitle}`\n : `#${scan}\\nShipment updated successfully!`,\n data: {\n output: _scanOutput,\n shipmentCount: {\n scannedCount: data.scanned,\n totalCount: data.total,\n },\n },\n };\n } else {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n message: 'Error occurred while scanning',\n };\n }\n } catch (error: any) {\n if (scanProps.exitOnError) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n exit: true,\n message: 'Error occurred while scanning',\n };\n\n // props.onSubmitET({\n // ...(await getScanETOutput(\n // mergedScanETOutput,\n // props.mergedObjectiveId,\n // eventCodeItems || [],\n // props.defaultERC,\n // false,\n // true\n // )),\n // });\n } else {\n return {\n status: false,\n ...getErrorMessage(scan, error),\n };\n }\n }\n } else {\n if (scanProps.exitOnError) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n exit: true,\n message: 'Error occurred while scanning',\n };\n } else {\n return {\n status: false,\n message: INVALID_SHIPMENT,\n type: SnackBarType.FAILURE,\n };\n }\n }\n}\n\nexport async function removeScan(\n taskName: string,\n scans: Array<string>,\n route: any,\n scanOutput: ScannerOutput\n) {\n const prefixedMergedObjectiveId =\n route.params[RouteParams.ROOT_META_DATA].prefixedMergedObjectiveId;\n\n const result = await DispatchExecutor.removeShipment(\n prefixedMergedObjectiveId,\n scans\n );\n\n // Decrease count on remove\n Object.keys(result).forEach((mergedObjectiveId) => {\n scanOutput[mergedObjectiveId].count -= result[mergedObjectiveId];\n\n if (scanOutput[mergedObjectiveId].count === 0) {\n delete scanOutput[mergedObjectiveId];\n }\n });\n\n const allScansOutput = (await getScanMergedOutput()) || {};\n\n // SAVE IN SHARED PREFERENCE\n let storage = Storage.getInstance();\n\n const mergedIdOutput = await getScanMergedObjectID();\n if (mergedIdOutput) {\n const _mergedIds: SCANNED_RECORD =\n mergedIdOutput[prefixedMergedObjectiveId];\n _mergedIds.pending.push(prefixedMergedObjectiveId);\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n\n let outputAtPrefixedId = allScansOutput[prefixedMergedObjectiveId] || {};\n\n await storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify({\n ...allScansOutput,\n [prefixedMergedObjectiveId]: { ...outputAtPrefixedId, scanOutput },\n })\n );\n\n // TRIGGER REMOVE SCAN EVENT\n const scannedData = scans.map((scan) => ({ scanValue: scan }));\n triggerScanEvent('ON_SCAN_REMOVE', route, scannedData);\n}\n\nexport async function updateSharedPreference(\n eventType: boolean,\n mergedObjectiveId: string,\n prefixedMergedObjectiveId: string\n) {\n let storage = Storage.getInstance();\n const mergedIdOutput = await getScanMergedObjectID();\n\n if (mergedIdOutput) {\n const _mergedIds: SCANNED_RECORD =\n mergedIdOutput[prefixedMergedObjectiveId];\n if (eventType) {\n _mergedIds.success.push(mergedObjectiveId);\n } else {\n _mergedIds.failure.push(mergedObjectiveId);\n }\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n}\n\nexport async function updatePendingSharedPreference(\n eventType: boolean,\n prefixedMergedObjectiveId: string\n) {\n let storage = Storage.getInstance();\n const mergedIdOutput = await getScanMergedObjectID();\n\n if (mergedIdOutput) {\n const _mergedIds = mergedIdOutput[prefixedMergedObjectiveId];\n if (_mergedIds) {\n if (eventType) {\n _mergedIds.success.push(prefixedMergedObjectiveId);\n _mergedIds.pending = [];\n } else {\n _mergedIds.failure.push(prefixedMergedObjectiveId);\n _mergedIds.pending = [];\n }\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n }\n}\n\nexport const getTabCount = async (\n scanProps: ScannerInput\n): Promise<TabRecord> => {\n let prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n const mergedIdOutput = await getScanMergedObjectID();\n const defaultResult = {\n [SummaryPageTabs.ALL]: 0,\n [SummaryPageTabs.PENDING]: 0,\n [SummaryPageTabs.DELIVERED]: 0,\n [SummaryPageTabs.UNDELIVERED]: 0,\n };\n const input: any = {};\n if (mergedIdOutput) {\n const _mergedIds = mergedIdOutput[prefixedMergedObjectiveId];\n if (_mergedIds) {\n const success = _mergedIds.success;\n const failure = _mergedIds.failure;\n const pending = _mergedIds.pending;\n input[SummaryPageTabs.ALL] = [...success, ...failure, ...pending];\n if (pending.length > 0) input[SummaryPageTabs.PENDING] = pending;\n if (success.length > 0) input[SummaryPageTabs.DELIVERED] = success;\n if (failure.length > 0) input[SummaryPageTabs.UNDELIVERED] = failure;\n\n const result = await DispatchExecutor.getWFICountByMWIIds(input);\n\n return { ...defaultResult, ...result };\n } else {\n return defaultResult;\n }\n } else {\n return defaultResult;\n }\n};\n\nexport const clearScanOutput = async (prefixedMergedObjectiveId: string) => {\n let storage = Storage.getInstance();\n\n const promises: any = [];\n\n // Clear Scan Record\n const scanRecord = (await getScanMergedObjectID()) || {};\n if (scanRecord) {\n delete scanRecord[prefixedMergedObjectiveId];\n\n promises.push(\n storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify(scanRecord)\n )\n );\n }\n\n // Clear Scan Output\n const scanOutputs = (await getScanMappedOutput()) || {};\n if (scanOutputs) {\n delete scanOutputs[prefixedMergedObjectiveId];\n\n promises.push(\n storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify(scanOutputs)\n )\n );\n }\n return Promise.all(promises);\n};\n\nexport async function getScanMergedObjectID(): Promise<SCAN_MERGED_OBJ_ID_INTEFACE | null> {\n let storage = Storage.getInstance();\n const mergedIdOutput = await storage.getSharedItem(SCAN_MERGED_OBJ_ID_OUTPUT);\n if (mergedIdOutput) {\n return JSON.parse(mergedIdOutput);\n } else {\n return null;\n }\n}\n\nexport async function getScanMergedOutput(): Promise<ScannerOutput | null> {\n let storage = Storage.getInstance();\n const mergedIdOutput = await storage.getSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT\n );\n if (mergedIdOutput) {\n return JSON.parse(mergedIdOutput);\n } else {\n return null;\n }\n}\n\nexport const getErrorMessage = (\n scan: string,\n error: {\n errorCode: number;\n message: string;\n }\n): { type: SnackBarType; message: string } => {\n switch (error.errorCode) {\n case WIErrorCodes.ScannableIdAlreadyCompleted:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdNotInDispatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdNotInDispatch]\n }`,\n };\n case WIErrorCodes.ScannableIdNotReady:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdNotReady]\n }`,\n };\n case WIErrorCodes.DifferentGroupUpdateNotAllowed:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.DifferentGroupUpdateNotAllowed]\n }`,\n };\n case WIErrorCodes.ObjectiveAndJobWFMismatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ObjectiveAndJobWFMismatch]\n }`,\n };\n case WIErrorCodes.ScannableIdAlreadyUpdated:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyUpdated]\n }`,\n };\n case WIErrorCodes.JobAlreadyCompleted:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.JobAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdPartOfAnotherMO:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdPartOfAnotherMO]\n }`,\n };\n default:\n return {\n type: SnackBarType.FAILURE,\n message: 'Error occurred while scanning',\n };\n }\n};\n\nexport const getSplitIds = (scanOutput: ScannerOutput): string[] => {\n const splitMergedObjectiveIds = Object.keys(scanOutput)\n .filter((mergedObjectiveID: string) => {\n const scan = scanOutput[mergedObjectiveID];\n if (scan.count > 0) return true;\n return false;\n })\n .map((mergedObjectiveIds) => mergedObjectiveIds);\n\n return splitMergedObjectiveIds;\n};\n\nexport function filterERCItems(\n eventCodeItems: ercItem[],\n type: 'SUCCESS' | 'FAILURE'\n): ercItem[] {\n return eventCodeItems.filter(\n (erc) => Boolean(erc.success) === (type === 'SUCCESS' ? true : false)\n );\n}\n\nexport async function resetObjective(scanProps: ScannerInput) {\n const taskName = scanProps.taskName || '';\n const deliveredMergedObjectiveIds = await fetchMergedObjectiveIdBasedOnStatus(\n SummaryPageTabs.DELIVERED,\n scanProps\n );\n const undeliveredMergedObjectiveIds =\n await fetchMergedObjectiveIdBasedOnStatus(\n SummaryPageTabs.UNDELIVERED,\n scanProps\n );\n\n if (\n (!deliveredMergedObjectiveIds ||\n deliveredMergedObjectiveIds.length === 0) &&\n (!undeliveredMergedObjectiveIds ||\n undeliveredMergedObjectiveIds.length === 0)\n ) {\n return;\n }\n\n const scannedData: any[] = [];\n\n if (deliveredMergedObjectiveIds && deliveredMergedObjectiveIds.length) {\n let hasNextPage = true;\n let offset = 0;\n const limit = BULK_DATA_LIMIT;\n let scans: IDispatch.IQueryWFIResponse = { data: [], totalCount: 0 };\n\n do {\n scans = await DispatchExecutor.filterWFIData(\n taskName,\n deliveredMergedObjectiveIds,\n limit,\n offset\n );\n scans.data.forEach((scan) => {\n scannedData.push({\n scanValue: scan.scannableId,\n });\n });\n\n offset += limit;\n hasNextPage = scans.totalCount - offset + 1 > 0;\n } while (hasNextPage);\n }\n if (undeliveredMergedObjectiveIds && undeliveredMergedObjectiveIds.length) {\n let hasNextPage = true;\n let offset = 0;\n const limit = BULK_DATA_LIMIT;\n let scans: IDispatch.IQueryWFIResponse = { data: [], totalCount: 0 };\n\n do {\n scans = await DispatchExecutor.filterWFIData(\n taskName,\n undeliveredMergedObjectiveIds,\n limit,\n offset\n );\n scans.data.forEach((scan) => {\n scannedData.push({\n scanValue: scan.scannableId,\n });\n });\n\n offset += limit;\n hasNextPage = scans.totalCount - offset + 1 > 0;\n } while (hasNextPage);\n }\n triggerScanEvent('ON_SCAN_REMOVE', scanProps.route, scannedData);\n return;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["BarCodeScanner","ExpoBarcodeTypes","SCAN_STATUS","SummaryPageTabs","DeliverState","jsonLogic","getBaseETResponse","EntityCode","ExecutionTaskID","getApiResponse","parseBody","parseKeyValue","Logger","LOG_TYPE","REASON_NOT_USED","Storage","BULK_DATA_LIMIT","SCAN_MERGED_OBJ_ID_OUTPUT","SHARED_PREFERENCE_SCAN_OUTPUT","RouteParams","dispatchEvent","DispatchExecutor","WIErrorCodes","ErrorCodeMessages","isEmptyOrBlank","EMPTY_AWB","ER_MISSING","INVALID_SHIPMENT","getDefaultERCLabel","SnackBarType","getBarCodeTypes","input","barCodeType","scannedInput","scanType","forEach","type","QRCODE","push","Constants","BarCodeType","qr","aztec","codabar","code128","code39","code93","datamatrix","ean13","ean8","itf14","pdf417","upc_e","checkForValidation","validation","selectedIndex","logic","regex","RegExp","test","api","apiData","errorJsonPath","responseJsonPath","uri","httpMethod","timeout","headers","requestBody","parsedRequestBody","pathParams","queryParams","apiResponse","apply","responseJsonLogic","data","error","getInstance","logEvent","message","SDK_ERROR","getShipmentData","scansMap","pendingShipments","scannedShipments","key","value","entries","scanStatus","undefined","SCANNED","FAILED","getScannedItemCount","getMappingCount","scanOutput","wiMappingUpdate","mwId","mergedObjectiveId","count","getUpdatedScanETOutput","success","eventCode","reasonCode","route","scannedData","prefixedMergedObjectiveId","params","ROOT_META_DATA","previousMWID","previousMergedObjectiveId","output","SCAN","_scannedData","groupId","displayInfo","jobId","shipmentFlow","scanValue","scanId","isScan","triggerScanEvent","allScansOutput","getScanMappedOutput","storage","setSharedItem","JSON","stringify","getScanETOutput","mergeScannedOutput","ercItems","defaultERC","deliverState","isPartial","CANCELLED","DELIVERE_LATER","DELIVER_NOW","getEventType","getScannedItems","items","validated","timestamp","Date","now","isETCompleted","scanMode","isMultiObjectiveEnable","scannedShipmentCount","singleModeCount","allowMultiObjectivePartial","_scannedShipmentCount","length","scans","isReplacement","scan","selectedEventCode","selectedReason","_scansMap$get","_scansMap$get2","get","code","eventList","result","find","Boolean","mergedScanOutput","getSharedItem","parse","etOutput","nextStates","NEXT_STATES","eventOutputData","meta","etData","endTime","taskId","customData","customEventsData","taskName","fetchMergedObjectiveIdBasedOnStatus","activeTab","scanProps","mergedObjectiveIds","filterIds","getScanMergedObjectID","ALL","PENDING","DELIVERED","UNDELIVERED","fetchLabel","modifyDisplayScanData","response","updatedScanData","Promise","all","map","_scan$displayInfo","_scan$displayInfo2","scannableId","clientName","orderId","originalMergedObjId","lastStatus","eCode","rCode","totalCount","getScanData","limit","offset","filterWFIData","addScans","isErcSelector","ercSelector","status","FAILURE","replace","isValidated","eventType","updateWIMapping","ec","rc","scanToMerge","title","subTitle","updateSharedPreference","_scanOutput","WARNING","SUCCESS","shipmentCount","scannedCount","scanned","total","exitOnError","exit","getErrorMessage","removeScan","removeShipment","Object","keys","getScanMergedOutput","mergedIdOutput","_mergedIds","pending","outputAtPrefixedId","failure","updatePendingSharedPreference","getTabCount","defaultResult","getWFICountByMWIIds","clearScanOutput","promises","scanRecord","scanOutputs","errorCode","ScannableIdAlreadyCompleted","ScannableIdNotInDispatch","ScannableIdNotReady","DifferentGroupUpdateNotAllowed","ObjectiveAndJobWFMismatch","ScannableIdAlreadyUpdated","JobAlreadyCompleted","ScannableIdPartOfAnotherMO","getSplitIds","splitMergedObjectiveIds","filter","mergedObjectiveID","filterERCItems","eventCodeItems","erc","resetObjective","deliveredMergedObjectiveIds","undeliveredMergedObjectiveIds","hasNextPage"],"sources":["utils.ts"],"sourcesContent":["import { BarCodeScanner } from 'expo-barcode-scanner';\nimport {\n ADD_SCAN,\n ExpoBarcodeTypes,\n MergedScan,\n SCANNED_RECORD,\n SCAN_MERGED_OBJ_ID_INTEFACE,\n SCAN_STATUS,\n SHARED_PREF_SCAN_OUTPUT_INTERFACE,\n SummaryDisplayData,\n SummaryPageTabs,\n TabRecord,\n} from './interfaces';\nimport {\n API,\n DefaultERC,\n DeliverState,\n IWIMappingUpdate,\n ScanData,\n ScanMode,\n ScannerInput,\n ScannerOutput,\n ScannerType,\n Validation,\n} from './ScanSchema';\nimport * as jsonLogic from 'json-logic-js';\nimport type { ercItem } from './sub_components/ERDropDown';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport {\n APIData,\n getApiResponse,\n parseBody,\n parseKeyValue,\n} from '../../../utils/ApiUtils';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { REASON_NOT_USED } from '../../../constants/constants';\nimport Storage from '../../../utils/storage';\nimport {\n BULK_DATA_LIMIT,\n SCAN_MERGED_OBJ_ID_OUTPUT,\n SHARED_PREFERENCE_SCAN_OUTPUT,\n} from '../../../manager/syncmanager/constants';\nimport { RouteParams } from '../../../ui/uiConfig/RouteParams';\nimport dispatchEvent from '../../../events/EventDispatcher';\nimport {\n DispatchExecutor,\n IDispatch,\n WIErrorCodes,\n ErrorCodeMessages,\n} from '@os1-platform/platform-coreos-execution-engine-sdk';\nimport { isEmptyOrBlank } from '../../../utils/utils';\nimport { EMPTY_AWB, ER_MISSING, INVALID_SHIPMENT } from './constants';\nimport { onScanEvent, onScanRemoveEvent } from '../../../models/DispatchModels';\nimport { BaseETResponse } from '../ExecutionTasksIndex';\nimport { eventType } from '../../../events/interface';\nimport { getDefaultERCLabel } from './sub_components/DropDownUtils';\nimport { SnackBarType } from '../../../components/widgets/SnackBarCustom';\n\nexport function getBarCodeTypes(input: ScannerInput): any[] {\n const barCodeType: any[] = [];\n const {\n scannedInput: { scanType },\n } = input;\n scanType.forEach((type: ScannerType) => {\n switch (type) {\n case ExpoBarcodeTypes.QRCODE:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.qr);\n break;\n case ExpoBarcodeTypes.aztec:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.aztec);\n break;\n case ExpoBarcodeTypes.codabar:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.codabar);\n break;\n case ExpoBarcodeTypes.code128:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code128);\n break;\n case ExpoBarcodeTypes.code39:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code39);\n break;\n case ExpoBarcodeTypes.code93:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.code93);\n break;\n case ExpoBarcodeTypes.datamatrix:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.datamatrix);\n break;\n case ExpoBarcodeTypes.ean13:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.ean13);\n break;\n case ExpoBarcodeTypes.ean8:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.ean8);\n break;\n case ExpoBarcodeTypes.itf14:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.itf14);\n break;\n case ExpoBarcodeTypes.pdf417:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.pdf417);\n break;\n case ExpoBarcodeTypes.upc_e:\n barCodeType.push(BarCodeScanner.Constants.BarCodeType.upc_e);\n break;\n\n default:\n break;\n }\n });\n return barCodeType;\n}\n\nexport async function checkForValidation(\n scannedInput: string,\n validation: Validation\n): Promise<boolean> {\n // Scans Array\n if (validation.selectedIndex === 0) {\n return true;\n }\n // Validation Regex\n else if (\n validation.selectedIndex === 1 &&\n typeof validation.logic === 'string'\n ) {\n const regex = new RegExp(validation.logic);\n return regex.test(scannedInput);\n }\n // API\n else if (\n validation.selectedIndex === 2 &&\n typeof validation.logic === 'object'\n ) {\n try {\n //@ts-ignore\n const api: API = validation.logic;\n const apiData: APIData = {\n errorJsonPath: '',\n responseJsonPath: '',\n uri: api.uri,\n httpMethod: api.httpMethod,\n timeout: api.timeout,\n headers: api.headers,\n };\n if (api.requestBody) {\n const parsedRequestBody = parseBody(api.requestBody, scannedInput);\n apiData.requestBody = parsedRequestBody;\n }\n if (api.pathParams) {\n parseKeyValue(api.pathParams, scannedInput);\n apiData.pathParams = api.pathParams;\n }\n if (api.queryParams) {\n parseKeyValue(api.queryParams, scannedInput);\n apiData.queryParams = api.queryParams;\n }\n const apiResponse = await getApiResponse(apiData);\n\n return jsonLogic.apply(\n <jsonLogic.RulesLogic>api.responseJsonLogic,\n apiResponse.data\n );\n } catch (error: any) {\n Logger.getInstance().logEvent(\n '~ checkForValidation',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n } else {\n return false;\n }\n}\n\nexport function getShipmentData(\n selectedIndex: number,\n scansMap: Map<string, MergedScan>\n): [string[], string[]] {\n const pendingShipments: string[] = [];\n const scannedShipments: string[] = [];\n //@ts-ignore\n for (let [key, value] of scansMap.entries()) {\n /**\n * If scanStatus is undefined then push the shipment to pending.\n * If scanStatus is not undefined:\n * Then if successfully scanned, move to scannedShipments array.\n * Else do nothing.\n */\n if (value?.scanStatus != undefined) {\n if (value?.scanStatus === SCAN_STATUS.SCANNED) {\n scannedShipments.push(key);\n } else if (value?.scanStatus === SCAN_STATUS.FAILED) {\n pendingShipments.push(key);\n }\n } else if (selectedIndex === 0) {\n pendingShipments.push(key);\n }\n }\n return [pendingShipments, scannedShipments];\n}\n\nexport function getScannedItemCount(scansMap: Map<string, MergedScan>): number {\n let scannedShipments = 0;\n if (scansMap) {\n for (let [, value] of scansMap.entries()) {\n if (value.scanStatus === SCAN_STATUS.SCANNED) {\n scannedShipments++;\n }\n }\n return scannedShipments;\n }\n return scannedShipments;\n}\n\nexport function getMappingCount(\n scanOutput: ScannerOutput,\n wiMappingUpdate: IWIMappingUpdate\n) {\n const { mwId: mergedObjectiveId } = wiMappingUpdate.data;\n\n if (scanOutput[mergedObjectiveId]) {\n return scanOutput[mergedObjectiveId].count + 1;\n } else {\n return 1;\n }\n}\n\nexport async function getUpdatedScanETOutput(\n scanOutput: ScannerOutput,\n wiMappingUpdate: IWIMappingUpdate,\n success: boolean,\n eventCode: string,\n reasonCode: string,\n route: any,\n scannedData: any\n) {\n const prefixedMergedObjectiveId =\n route.params[RouteParams.ROOT_META_DATA].prefixedMergedObjectiveId;\n const { mwId: mergedObjectiveId, previousMWID: previousMergedObjectiveId } =\n wiMappingUpdate.data;\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n success,\n eventCode,\n reasonCode,\n [mergedObjectiveId],\n ExecutionTaskID.SCAN\n );\n const _scannedData: any = [\n {\n groupId: scannedData.displayInfo.groupId,\n jobId: scannedData.jobId,\n shipmentFlow: scannedData.displayInfo.shipmentFlow,\n scanValue: scannedData.scanId,\n },\n ];\n\n scannedData?.isScan\n ? triggerScanEvent('ON_SCAN', route, _scannedData, output)\n : null;\n\n if (scanOutput[previousMergedObjectiveId]) {\n scanOutput[previousMergedObjectiveId].count -= 1;\n\n if (scanOutput[previousMergedObjectiveId].count === 0) {\n delete scanOutput[previousMergedObjectiveId];\n }\n }\n const count = getMappingCount(scanOutput, wiMappingUpdate);\n\n if (!scanOutput[mergedObjectiveId]) {\n scanOutput[mergedObjectiveId] = { output, count };\n } else {\n scanOutput[mergedObjectiveId].count = count;\n }\n\n // SAVE IN SHARED PREFERENCE\n let allScansOutput = (await getScanMappedOutput()) || {};\n let storage = Storage.getInstance();\n await storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify({\n ...allScansOutput,\n [prefixedMergedObjectiveId]: scanOutput,\n })\n );\n return scanOutput;\n}\n\nexport async function getScanETOutput(\n mergeScannedOutput: ScannerOutput,\n mergedObjectiveId: Array<string>,\n ercItems: ercItem[],\n defaultERC: DefaultERC,\n deliverState: DeliverState,\n isPartial: boolean,\n count: number\n): Promise<ScannerOutput> {\n switch (deliverState) {\n case DeliverState.CANCELLED: {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n false,\n defaultERC.eventCode,\n defaultERC.reasonCode || '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n return {\n [mergedObjectiveId[0]]: {\n output,\n count,\n },\n };\n }\n case DeliverState.DELIVERE_LATER: {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n false,\n REASON_NOT_USED,\n '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n mergeScannedOutput['default'] = {\n output,\n count,\n };\n return mergeScannedOutput;\n }\n case DeliverState.DELIVER_NOW: {\n if (isPartial) {\n const output = await getBaseETResponse(\n EntityCode.SCAN,\n getEventType(ercItems, defaultERC.eventCode),\n defaultERC.eventCode,\n defaultERC.reasonCode || '',\n mergedObjectiveId,\n ExecutionTaskID.SCAN\n );\n\n mergeScannedOutput['default'] = { output, count };\n return mergeScannedOutput;\n } else {\n return mergeScannedOutput;\n }\n }\n default: {\n return mergeScannedOutput;\n }\n }\n}\n\nexport function getScannedItems(scanValue: MergedScan): ScanData[] {\n const items: ScanData[] = [];\n if (scanValue.scanStatus === SCAN_STATUS.SCANNED)\n items.push({\n value: scanValue.value,\n validated: scanValue.validated || false,\n timestamp: scanValue.timestamp || Date.now(),\n });\n\n return items;\n}\n\nexport function isETCompleted(\n validation: Validation,\n scansMap: Map<string, MergedScan>,\n scanMode: ScanMode,\n isMultiObjectiveEnable: boolean,\n scannedShipmentCount?: number,\n singleModeCount?: number,\n allowMultiObjectivePartial?: boolean\n): boolean {\n if (scanMode === 'SINGLE' || isMultiObjectiveEnable) {\n let _scannedShipmentCount = scannedShipmentCount || 0;\n\n if (!scannedShipmentCount) {\n const [, scannedShipments] = getShipmentData(\n validation.selectedIndex,\n scansMap\n );\n _scannedShipmentCount = scannedShipments.length;\n }\n\n if (allowMultiObjectivePartial) {\n return _scannedShipmentCount >= 1;\n }\n\n return singleModeCount === _scannedShipmentCount;\n } else {\n // Scans Array\n if (validation.selectedIndex === 0) {\n //@ts-ignore\n const scans: string[] = validation.logic;\n if (!scannedShipmentCount) {\n const [, scannedShipments] = getShipmentData(\n validation.selectedIndex,\n scansMap\n );\n return scans.length === scannedShipments.length;\n }\n\n return scans.length === scannedShipmentCount;\n }\n // Validation Regex\n else if (\n (validation.selectedIndex === 1 &&\n typeof validation.logic === 'string') ||\n (validation.selectedIndex === 2 && typeof validation.logic === 'object')\n ) {\n return true;\n } else {\n return false;\n }\n }\n}\n\nexport function isReplacement(\n scan: string,\n scansMap: Map<string, MergedScan>,\n selectedEventCode: ercItem | undefined,\n selectedReason: ercItem | undefined\n) {\n if (\n //(selectedEventCode || selectedReason) &&\n //scansMap.get(scan)?.eventCode &&\n scansMap.get(scan)?.eventCode !== selectedEventCode?.code || //scansMap.get(scan)?.reasonCode !== undefined &&\n scansMap.get(scan)?.reasonCode !== selectedReason?.code\n ) {\n return true;\n }\n return false;\n}\n\nexport function getEventType(\n eventList: Array<ercItem>,\n eventCode: string\n): boolean {\n const result = eventList.find((code) => code.code === eventCode);\n if (result) {\n return Boolean(result.success);\n } else {\n return false;\n }\n}\n\nexport async function getScanMappedOutput(): Promise<SHARED_PREF_SCAN_OUTPUT_INTERFACE> {\n let storage = Storage.getInstance();\n const mergedScanOutput = await storage.getSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT\n );\n if (mergedScanOutput) {\n return JSON.parse(mergedScanOutput);\n } else {\n return {};\n }\n}\n\nexport function triggerScanEvent(\n type: eventType,\n route: any,\n scannedData: any,\n etOutput?: BaseETResponse\n) {\n switch (type) {\n case 'ON_SCAN': {\n const nextStates = route.params[RouteParams.NEXT_STATES];\n const eventOutputData: onScanEvent = {\n meta: etOutput?.meta || {},\n etData: {\n eventCode: etOutput?.eventCode || '',\n reasonCode: etOutput?.reasonCode || '',\n success: etOutput?.success || false,\n endTime: Date.now(),\n scannedData,\n },\n taskId: nextStates.taskId,\n timestamp: Date.now(),\n customData: route.params[RouteParams.ROOT_META_DATA].customEventsData,\n };\n dispatchEvent('ON_SCAN', nextStates.taskName, eventOutputData);\n break;\n }\n case 'ON_SCAN_REMOVE': {\n const nextStates = route.params[RouteParams.NEXT_STATES];\n const eventOutputData: onScanRemoveEvent = {\n etData: {\n scannedData,\n },\n taskId: nextStates.taskId,\n timestamp: Date.now(),\n customData: route.params[RouteParams.ROOT_META_DATA].customEventsData,\n };\n dispatchEvent('ON_SCAN_REMOVE', nextStates.taskName, eventOutputData);\n break;\n }\n default:\n break;\n }\n}\n\nconst fetchMergedObjectiveIdBasedOnStatus = async (\n activeTab: SummaryPageTabs,\n scanProps: ScannerInput\n) => {\n let prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n\n let mergedObjectiveIds: SCANNED_RECORD;\n let filterIds = await getScanMergedObjectID();\n if (filterIds) {\n mergedObjectiveIds = filterIds[prefixedMergedObjectiveId] || [];\n } else {\n return [];\n }\n\n switch (activeTab) {\n case SummaryPageTabs.ALL:\n return [\n ...mergedObjectiveIds['pending'],\n ...mergedObjectiveIds['success'],\n ...mergedObjectiveIds['failure'],\n ];\n case SummaryPageTabs.PENDING:\n return mergedObjectiveIds['pending'];\n case SummaryPageTabs.DELIVERED:\n return mergedObjectiveIds['success'];\n case SummaryPageTabs.UNDELIVERED:\n return mergedObjectiveIds['failure'];\n default:\n return [];\n }\n};\n\nconst fetchLabel = async (eventCode: string, reasonCode?: string) => {\n return await getDefaultERCLabel({\n eventCode,\n reasonCode,\n });\n};\n\nconst modifyDisplayScanData = async (\n response: IDispatch.IQueryWFIResponse\n): Promise<SummaryDisplayData> => {\n const { data: scans } = response;\n const updatedScanData = await Promise.all(\n scans.map(async (scan) => {\n const { eventCode, reasonCode } = await fetchLabel(\n scan.eventCode,\n scan.reasonCode\n );\n\n return {\n scanId: scan.scannableId,\n clientName: scan.displayInfo?.clientName || '--',\n orderId: scan.displayInfo?.orderId || '--',\n eventCode: eventCode || '--',\n reasonCode: reasonCode || '--',\n prefixedMergedObjectiveId: scan.originalMergedObjId,\n lastStatus: scan.lastStatus,\n eCode: scan.eventCode,\n rCode: scan.reasonCode\n };\n })\n );\n\n return { data: updatedScanData, totalCount: response.totalCount };\n};\n\nexport async function getScanData(\n activeTab: SummaryPageTabs,\n scanProps: ScannerInput,\n limit: number,\n offset: number,\n scan?: string\n): Promise<SummaryDisplayData> {\n const taskName = scanProps.taskName || '';\n const mergedObjectiveId: Array<string> = scanProps.mergedObjectiveId;\n\n const mergedObjectiveIds = await fetchMergedObjectiveIdBasedOnStatus(\n activeTab,\n scanProps\n );\n\n if (!mergedObjectiveIds || mergedObjectiveIds.length === 0) {\n return {\n data: [],\n totalCount: 0,\n };\n }\n if (scan) {\n const scans: IDispatch.IQueryWFIResponse =\n await DispatchExecutor.filterWFIData(\n taskName,\n mergedObjectiveIds,\n limit,\n offset,\n scan\n );\n\n return await modifyDisplayScanData(scans);\n } else {\n const scans: IDispatch.IQueryWFIResponse =\n await DispatchExecutor.filterWFIData(\n taskName,\n mergedObjectiveIds,\n limit,\n offset\n );\n\n return await modifyDisplayScanData(scans);\n }\n}\n\nexport async function addScans(\n scan: string,\n scanProps: ScannerInput,\n scanOutput: ScannerOutput,\n ercItems: ercItem[],\n eventCode: ercItem,\n reasonCode?: ercItem\n): Promise<ADD_SCAN> {\n const prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n\n const isErcSelector = scanProps.ercSelector ? true : false;\n if (isEmptyOrBlank(scan)) {\n return { status: false, message: EMPTY_AWB, type: SnackBarType.FAILURE };\n }\n\n if (isErcSelector && (!eventCode || !eventCode.code)) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n message: ER_MISSING.replace('<shipment_id>', scan),\n };\n }\n\n let isValidated = await checkForValidation(scan, scanProps.validation);\n\n if (isValidated) {\n // NEW CODE\n try {\n const eventType = getEventType(ercItems || [], eventCode?.code || '');\n\n const result = await DispatchExecutor.updateWIMapping(\n prefixedMergedObjectiveId,\n scan,\n {\n ec: eventCode?.code || '',\n rc: reasonCode?.code || '',\n },\n scanProps.scanToMerge || false\n );\n if ('data' in result) {\n const data: IDispatch.MappingUpdateResponse = result.data;\n const {\n message: { title, subTitle },\n } = data;\n\n // UPDATE SHARED PREFERENCE\n updateSharedPreference(eventType, data.mwId, prefixedMergedObjectiveId);\n\n const _scanOutput = await getUpdatedScanETOutput(\n scanOutput,\n result,\n eventType,\n eventCode?.code || '',\n reasonCode?.code || '',\n scanProps.route,\n {\n jobId: data.jobId,\n displayInfo: data.displayInfo,\n isScan: true,\n scanId: scan,\n }\n );\n\n return {\n status: true,\n type: subTitle ? SnackBarType.WARNING : SnackBarType.SUCCESS,\n message: subTitle\n ? `#${scan}\\n${title}\\n${subTitle}`\n : `#${scan}\\nShipment updated successfully!`,\n data: {\n output: _scanOutput,\n shipmentCount: {\n scannedCount: data.scanned,\n totalCount: data.total,\n },\n },\n };\n } else {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n message: 'Error occurred while scanning',\n };\n }\n } catch (error: any) {\n if (scanProps.exitOnError) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n exit: true,\n message: 'Error occurred while scanning',\n };\n\n // props.onSubmitET({\n // ...(await getScanETOutput(\n // mergedScanETOutput,\n // props.mergedObjectiveId,\n // eventCodeItems || [],\n // props.defaultERC,\n // false,\n // true\n // )),\n // });\n } else {\n return {\n status: false,\n ...getErrorMessage(scan, error),\n };\n }\n }\n } else {\n if (scanProps.exitOnError) {\n return {\n status: false,\n type: SnackBarType.FAILURE,\n exit: true,\n message: 'Error occurred while scanning',\n };\n } else {\n return {\n status: false,\n message: INVALID_SHIPMENT,\n type: SnackBarType.FAILURE,\n };\n }\n }\n}\n\nexport async function removeScan(\n taskName: string,\n scans: Array<string>,\n route: any,\n scanOutput: ScannerOutput\n) {\n const prefixedMergedObjectiveId =\n route.params[RouteParams.ROOT_META_DATA].prefixedMergedObjectiveId;\n\n const result = await DispatchExecutor.removeShipment(\n prefixedMergedObjectiveId,\n scans,\n false\n );\n\n // Decrease count on remove\n Object.keys(result).forEach((mergedObjectiveId) => {\n scanOutput[mergedObjectiveId].count -= result[mergedObjectiveId];\n\n if (scanOutput[mergedObjectiveId].count === 0) {\n delete scanOutput[mergedObjectiveId];\n }\n });\n\n const allScansOutput = (await getScanMergedOutput()) || {};\n\n // SAVE IN SHARED PREFERENCE\n let storage = Storage.getInstance();\n\n const mergedIdOutput = await getScanMergedObjectID();\n if (mergedIdOutput) {\n const _mergedIds: SCANNED_RECORD =\n mergedIdOutput[prefixedMergedObjectiveId];\n _mergedIds.pending.push(prefixedMergedObjectiveId);\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n\n let outputAtPrefixedId = allScansOutput[prefixedMergedObjectiveId] || {};\n\n await storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify({\n ...allScansOutput,\n [prefixedMergedObjectiveId]: { ...outputAtPrefixedId, scanOutput },\n })\n );\n\n // TRIGGER REMOVE SCAN EVENT\n const scannedData = scans.map((scan) => ({ scanValue: scan }));\n triggerScanEvent('ON_SCAN_REMOVE', route, scannedData);\n}\n\nexport async function updateSharedPreference(\n eventType: boolean,\n mergedObjectiveId: string,\n prefixedMergedObjectiveId: string\n) {\n let storage = Storage.getInstance();\n const mergedIdOutput = await getScanMergedObjectID();\n\n if (mergedIdOutput) {\n const _mergedIds: SCANNED_RECORD =\n mergedIdOutput[prefixedMergedObjectiveId];\n if (eventType) {\n _mergedIds.success.push(mergedObjectiveId);\n } else {\n _mergedIds.failure.push(mergedObjectiveId);\n }\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n}\n\nexport async function updatePendingSharedPreference(\n eventType: boolean,\n prefixedMergedObjectiveId: string\n) {\n let storage = Storage.getInstance();\n const mergedIdOutput = await getScanMergedObjectID();\n\n if (mergedIdOutput) {\n const _mergedIds = mergedIdOutput[prefixedMergedObjectiveId];\n if (_mergedIds) {\n if (eventType) {\n _mergedIds.success.push(prefixedMergedObjectiveId);\n _mergedIds.pending = [];\n } else {\n _mergedIds.failure.push(prefixedMergedObjectiveId);\n _mergedIds.pending = [];\n }\n\n await storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify({\n ...mergedIdOutput,\n [prefixedMergedObjectiveId]: _mergedIds,\n })\n );\n }\n }\n}\n\nexport const getTabCount = async (\n scanProps: ScannerInput\n): Promise<TabRecord> => {\n let prefixedMergedObjectiveId =\n scanProps.route.params[RouteParams.ROOT_META_DATA]\n .prefixedMergedObjectiveId;\n const mergedIdOutput = await getScanMergedObjectID();\n const defaultResult = {\n [SummaryPageTabs.ALL]: 0,\n [SummaryPageTabs.PENDING]: 0,\n [SummaryPageTabs.DELIVERED]: 0,\n [SummaryPageTabs.UNDELIVERED]: 0,\n };\n const input: any = {};\n if (mergedIdOutput) {\n const _mergedIds = mergedIdOutput[prefixedMergedObjectiveId];\n if (_mergedIds) {\n const success = _mergedIds.success;\n const failure = _mergedIds.failure;\n const pending = _mergedIds.pending;\n input[SummaryPageTabs.ALL] = [...success, ...failure, ...pending];\n if (pending.length > 0) input[SummaryPageTabs.PENDING] = pending;\n if (success.length > 0) input[SummaryPageTabs.DELIVERED] = success;\n if (failure.length > 0) input[SummaryPageTabs.UNDELIVERED] = failure;\n\n const result = await DispatchExecutor.getWFICountByMWIIds(input);\n\n return { ...defaultResult, ...result };\n } else {\n return defaultResult;\n }\n } else {\n return defaultResult;\n }\n};\n\nexport const clearScanOutput = async (prefixedMergedObjectiveId: string) => {\n let storage = Storage.getInstance();\n\n const promises: any = [];\n\n // Clear Scan Record\n const scanRecord = (await getScanMergedObjectID()) || {};\n if (scanRecord) {\n delete scanRecord[prefixedMergedObjectiveId];\n\n promises.push(\n storage.setSharedItem(\n SCAN_MERGED_OBJ_ID_OUTPUT,\n JSON.stringify(scanRecord)\n )\n );\n }\n\n // Clear Scan Output\n const scanOutputs = (await getScanMappedOutput()) || {};\n if (scanOutputs) {\n delete scanOutputs[prefixedMergedObjectiveId];\n\n promises.push(\n storage.setSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT,\n JSON.stringify(scanOutputs)\n )\n );\n }\n return Promise.all(promises);\n};\n\nexport async function getScanMergedObjectID(): Promise<SCAN_MERGED_OBJ_ID_INTEFACE | null> {\n let storage = Storage.getInstance();\n const mergedIdOutput = await storage.getSharedItem(SCAN_MERGED_OBJ_ID_OUTPUT);\n if (mergedIdOutput) {\n return JSON.parse(mergedIdOutput);\n } else {\n return null;\n }\n}\n\nexport async function getScanMergedOutput(): Promise<ScannerOutput | null> {\n let storage = Storage.getInstance();\n const mergedIdOutput = await storage.getSharedItem(\n SHARED_PREFERENCE_SCAN_OUTPUT\n );\n if (mergedIdOutput) {\n return JSON.parse(mergedIdOutput);\n } else {\n return null;\n }\n}\n\nexport const getErrorMessage = (\n scan: string,\n error: {\n errorCode: number;\n message: string;\n }\n): { type: SnackBarType; message: string } => {\n switch (error.errorCode) {\n case WIErrorCodes.ScannableIdAlreadyCompleted:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdNotInDispatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdNotInDispatch]\n }`,\n };\n case WIErrorCodes.ScannableIdNotReady:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdNotReady]\n }`,\n };\n case WIErrorCodes.DifferentGroupUpdateNotAllowed:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.DifferentGroupUpdateNotAllowed]\n }`,\n };\n case WIErrorCodes.ObjectiveAndJobWFMismatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ObjectiveAndJobWFMismatch]\n }`,\n };\n case WIErrorCodes.ScannableIdAlreadyUpdated:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyUpdated]\n }`,\n };\n case WIErrorCodes.JobAlreadyCompleted:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.JobAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdPartOfAnotherMO:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${ErrorCodeMessages[WIErrorCodes.ScannableIdPartOfAnotherMO]\n }`,\n };\n default:\n return {\n type: SnackBarType.FAILURE,\n message: 'Error occurred while scanning',\n };\n }\n};\n\nexport const getSplitIds = (scanOutput: ScannerOutput): string[] => {\n const splitMergedObjectiveIds = Object.keys(scanOutput)\n .filter((mergedObjectiveID: string) => {\n const scan = scanOutput[mergedObjectiveID];\n if (scan.count > 0) return true;\n return false;\n })\n .map((mergedObjectiveIds) => mergedObjectiveIds);\n\n return splitMergedObjectiveIds;\n};\n\nexport function filterERCItems(\n eventCodeItems: ercItem[],\n type: 'SUCCESS' | 'FAILURE'\n): ercItem[] {\n return eventCodeItems.filter(\n (erc) => Boolean(erc.success) === (type === 'SUCCESS' ? true : false)\n );\n}\n\nexport async function resetObjective(scanProps: ScannerInput) {\n const taskName = scanProps.taskName || '';\n const deliveredMergedObjectiveIds = await fetchMergedObjectiveIdBasedOnStatus(\n SummaryPageTabs.DELIVERED,\n scanProps\n );\n const undeliveredMergedObjectiveIds =\n await fetchMergedObjectiveIdBasedOnStatus(\n SummaryPageTabs.UNDELIVERED,\n scanProps\n );\n\n if (\n (!deliveredMergedObjectiveIds ||\n deliveredMergedObjectiveIds.length === 0) &&\n (!undeliveredMergedObjectiveIds ||\n undeliveredMergedObjectiveIds.length === 0)\n ) {\n return;\n }\n\n const scannedData: any[] = [];\n\n if (deliveredMergedObjectiveIds && deliveredMergedObjectiveIds.length) {\n let hasNextPage = true;\n let offset = 0;\n const limit = BULK_DATA_LIMIT;\n let scans: IDispatch.IQueryWFIResponse = { data: [], totalCount: 0 };\n\n do {\n scans = await DispatchExecutor.filterWFIData(\n taskName,\n deliveredMergedObjectiveIds,\n limit,\n offset\n );\n scans.data.forEach((scan) => {\n scannedData.push({\n scanValue: scan.scannableId,\n });\n });\n\n offset += limit;\n hasNextPage = scans.totalCount - offset + 1 > 0;\n } while (hasNextPage);\n }\n if (undeliveredMergedObjectiveIds && undeliveredMergedObjectiveIds.length) {\n let hasNextPage = true;\n let offset = 0;\n const limit = BULK_DATA_LIMIT;\n let scans: IDispatch.IQueryWFIResponse = { data: [], totalCount: 0 };\n\n do {\n scans = await DispatchExecutor.filterWFIData(\n taskName,\n undeliveredMergedObjectiveIds,\n limit,\n offset\n );\n scans.data.forEach((scan) => {\n scannedData.push({\n scanValue: scan.scannableId,\n });\n });\n\n offset += limit;\n hasNextPage = scans.totalCount - offset + 1 > 0;\n } while (hasNextPage);\n }\n triggerScanEvent('ON_SCAN_REMOVE', scanProps.route, scannedData);\n return;\n}\n"],"mappings":"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"}
|
|
@@ -57,17 +57,6 @@ export default class DocumentSyncManager {
|
|
|
57
57
|
let documentRows = await this.docManager.getUnsyncedDocument();
|
|
58
58
|
if ((documentRows === null || documentRows === void 0 ? void 0 : documentRows.length) > 0) {
|
|
59
59
|
await this.uploadDocToServer(documentRows[0]);
|
|
60
|
-
let cta = 'startDocumentSync-DataAvailable';
|
|
61
|
-
fireEventWithScreenName({
|
|
62
|
-
severityLevel: SeverityLevelValue.LOG,
|
|
63
|
-
eventName: SentryEventNameSdkConstants.APP_LOG,
|
|
64
|
-
screenName: cta,
|
|
65
|
-
cta: cta,
|
|
66
|
-
extraParams: {
|
|
67
|
-
msg: JSON.stringify(documentRows[0])
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
Logger.getInstance().logEvent(cta, JSON.stringify(documentRows[0]), LOG_TYPE.SDK_ERROR);
|
|
71
60
|
} else {
|
|
72
61
|
let cta = 'startDocumentSync-NoData';
|
|
73
62
|
fireEventWithScreenName({
|
|
@@ -393,7 +382,6 @@ export default class DocumentSyncManager {
|
|
|
393
382
|
|
|
394
383
|
// This function will generate overlay base64 data and update documents table for processed_file_path columns with overlayed base64 data.
|
|
395
384
|
async processBase64Data(documentRow) {
|
|
396
|
-
// If base64 overlayed data already existing then do not generate it again.
|
|
397
385
|
if (documentRow.processed_file_path === null || documentRow.processed_file_path === '') {
|
|
398
386
|
let cta = 'processBase64Data-started';
|
|
399
387
|
let extra = {
|
|
@@ -527,7 +515,6 @@ export default class DocumentSyncManager {
|
|
|
527
515
|
extraParams: extra
|
|
528
516
|
});
|
|
529
517
|
Logger.getInstance().logEvent(cta, flattenObject(extra), LOG_TYPE.SDK_ERROR);
|
|
530
|
-
console.log('uploadDocToServer999:', docRow);
|
|
531
518
|
let fmsID = await ((_this$documentHttpCli = this.documentHttpClient) === null || _this$documentHttpCli === void 0 ? void 0 : _this$documentHttpCli.uploadDocument(docRow));
|
|
532
519
|
let extraParameters = {
|
|
533
520
|
fmsID: fmsID ?? '',
|