@os1-platform/dispatch-mobile 2.0.2 → 2.0.4
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/scan/ScanET.js +57 -34
- package/lib/commonjs/components/executiontasks/scan/ScanET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/scan/utils.js +50 -0
- package/lib/commonjs/components/executiontasks/scan/utils.js.map +1 -1
- package/lib/commonjs/icons/ScanIcon.js +24 -0
- package/lib/commonjs/icons/ScanIcon.js.map +1 -0
- package/lib/module/components/executiontasks/scan/ScanET.js +58 -35
- package/lib/module/components/executiontasks/scan/ScanET.js.map +1 -1
- package/lib/module/components/executiontasks/scan/utils.js +50 -1
- package/lib/module/components/executiontasks/scan/utils.js.map +1 -1
- package/lib/module/icons/ScanIcon.js +16 -0
- package/lib/module/icons/ScanIcon.js.map +1 -0
- package/lib/typescript/components/executiontasks/scan/utils.d.ts +1 -0
- package/lib/typescript/icons/ScanIcon.d.ts +4 -0
- package/package.json +3 -2
|
@@ -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","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"],"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 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${\n ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdNotInDispatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.ScannableIdNotInDispatch]\n }`,\n };\n case WIErrorCodes.ScannableIdNotReady:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.ScannableIdNotReady]\n }`,\n };\n case WIErrorCodes.DifferentGroupUpdateNotAllowed:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.DifferentGroupUpdateNotAllowed]\n }`,\n };\n case WIErrorCodes.ObjectiveAndJobWFMismatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.ObjectiveAndJobWFMismatch]\n }`,\n };\n case WIErrorCodes.ScannableIdAlreadyUpdated:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyUpdated]\n }`,\n };\n case WIErrorCodes.JobAlreadyCompleted:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.JobAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdPartOfAnotherMO:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${\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"],"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","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${\n ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdNotInDispatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.ScannableIdNotInDispatch]\n }`,\n };\n case WIErrorCodes.ScannableIdNotReady:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.ScannableIdNotReady]\n }`,\n };\n case WIErrorCodes.DifferentGroupUpdateNotAllowed:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.DifferentGroupUpdateNotAllowed]\n }`,\n };\n case WIErrorCodes.ObjectiveAndJobWFMismatch:\n return {\n type: SnackBarType.FAILURE,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.ObjectiveAndJobWFMismatch]\n }`,\n };\n case WIErrorCodes.ScannableIdAlreadyUpdated:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.ScannableIdAlreadyUpdated]\n }`,\n };\n case WIErrorCodes.JobAlreadyCompleted:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${\n ErrorCodeMessages[WIErrorCodes.JobAlreadyCompleted]\n }`,\n };\n case WIErrorCodes.ScannableIdPartOfAnotherMO:\n return {\n type: SnackBarType.WARNING,\n message: `#${scan}\\n${\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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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Path, Svg } from 'react-native-svg';
|
|
3
|
+
import { View } from 'react-native';
|
|
4
|
+
const ScanIcon = props => {
|
|
5
|
+
return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(Svg, {
|
|
6
|
+
width: props.width || '80',
|
|
7
|
+
height: props.height || '80',
|
|
8
|
+
viewBox: "0 0 80 80",
|
|
9
|
+
fill: "none"
|
|
10
|
+
}, /*#__PURE__*/React.createElement(Path, {
|
|
11
|
+
d: "M30.8889 25.2222C29.9417 25.2222 29.1667 25.9972 29.1667 26.9445V51.0556C29.1667 52.0028 29.9417 52.7778 30.8889 52.7778C31.8361 52.7778 32.6111 52.0028 32.6111 51.0556V26.9445C32.6111 25.9972 31.8361 25.2222 30.8889 25.2222ZM55 52.7778C55.952 52.7778 56.7222 52.0076 56.7222 51.1524V27.0413C56.7222 25.9972 55.9472 25.2222 55 25.2222C54.0528 25.2222 53.2778 25.9972 53.2778 26.9445V51.0556C53.2778 52.0028 54.0528 52.7778 55 52.7778ZM37.7778 25.2222C36.8306 25.2222 36.0556 25.9972 36.0556 26.9445V51.0556C36.0556 52.0028 36.8306 52.7778 37.7778 52.7778C38.725 52.7778 39.5 52.0075 39.5 51.0556V26.9445C39.5 25.9972 38.725 25.2222 37.7778 25.2222ZM46.3889 25.2222C45.4369 25.2222 44.6667 25.9925 44.6667 26.9445V51.0556C44.6667 52.0075 45.4369 52.7778 46.3889 52.7778C47.3408 52.7778 48.1111 52.0075 48.1111 51.0556V26.9445C48.1111 25.9972 47.3361 25.2222 46.3889 25.2222ZM24 25.2222C23.0528 25.2222 22.2778 25.9972 22.2778 26.9445V51.0556C22.2778 52.0028 23.0528 52.7778 24 52.7778C24.9472 52.7778 25.7222 52.0028 25.7222 51.0556V26.9445C25.7222 25.9972 24.9472 25.2222 24 25.2222ZM24 11.4445H10.2222C9.27026 11.4445 8.5 12.2147 8.5 13.1667V26.9445C8.5 27.8917 9.27026 28.6667 10.2222 28.6667C11.1742 28.6667 11.9444 27.8917 11.9444 26.9445V14.8889H24C24.9472 14.8889 25.7222 14.1182 25.7222 13.1667C25.7222 12.2152 24.9472 11.4445 24 11.4445ZM68.7778 11.4445H55C54.0528 11.4445 53.2778 12.2147 53.2778 13.1667C53.2778 14.1186 54.0528 14.8889 55 14.8889H67.0556V26.9445C67.0556 27.8917 67.8306 28.6667 68.7778 28.6667C69.725 28.6667 70.5 27.8917 70.5 26.9445V13.1667C70.5 12.2147 69.725 11.4445 68.7778 11.4445ZM68.7778 49.3334C67.8258 49.3334 67.0556 50.1036 67.0556 51.0556V63.1111H55C54.048 63.1111 53.2778 63.8814 53.2778 64.8334C53.2778 65.7853 54.048 66.5556 55 66.5556H68.7778C69.7297 66.5556 70.5 65.7853 70.5 64.8334V51.0556C70.5 50.1083 69.725 49.3334 68.7778 49.3334ZM24 63.1111H11.9444V51.0556C11.9444 50.1083 11.1737 49.3334 10.2222 49.3334C9.27069 49.3334 8.5 50.1083 8.5 51.0556V64.8334C8.5 65.7806 9.27026 66.5556 10.2222 66.5556H24C24.9472 66.5556 25.7222 65.7806 25.7222 64.8334C25.7222 63.8861 24.9472 63.1111 24 63.1111Z",
|
|
12
|
+
fill: props.fill || '#5B80F7'
|
|
13
|
+
})));
|
|
14
|
+
};
|
|
15
|
+
export default ScanIcon;
|
|
16
|
+
//# sourceMappingURL=ScanIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Path","Svg","View","ScanIcon","props","createElement","width","height","viewBox","fill","d"],"sources":["ScanIcon.tsx"],"sourcesContent":["import React from 'react';\nimport { IconProps } from './interface';\nimport { Path, Svg } from 'react-native-svg';\nimport { View } from 'react-native';\n\nconst ScanIcon = (props: IconProps) => {\n return (\n <View>\n <Svg\n width={props.width || '80'}\n height={props.height || '80'}\n viewBox=\"0 0 80 80\"\n fill=\"none\"\n >\n <Path\n d=\"M30.8889 25.2222C29.9417 25.2222 29.1667 25.9972 29.1667 26.9445V51.0556C29.1667 52.0028 29.9417 52.7778 30.8889 52.7778C31.8361 52.7778 32.6111 52.0028 32.6111 51.0556V26.9445C32.6111 25.9972 31.8361 25.2222 30.8889 25.2222ZM55 52.7778C55.952 52.7778 56.7222 52.0076 56.7222 51.1524V27.0413C56.7222 25.9972 55.9472 25.2222 55 25.2222C54.0528 25.2222 53.2778 25.9972 53.2778 26.9445V51.0556C53.2778 52.0028 54.0528 52.7778 55 52.7778ZM37.7778 25.2222C36.8306 25.2222 36.0556 25.9972 36.0556 26.9445V51.0556C36.0556 52.0028 36.8306 52.7778 37.7778 52.7778C38.725 52.7778 39.5 52.0075 39.5 51.0556V26.9445C39.5 25.9972 38.725 25.2222 37.7778 25.2222ZM46.3889 25.2222C45.4369 25.2222 44.6667 25.9925 44.6667 26.9445V51.0556C44.6667 52.0075 45.4369 52.7778 46.3889 52.7778C47.3408 52.7778 48.1111 52.0075 48.1111 51.0556V26.9445C48.1111 25.9972 47.3361 25.2222 46.3889 25.2222ZM24 25.2222C23.0528 25.2222 22.2778 25.9972 22.2778 26.9445V51.0556C22.2778 52.0028 23.0528 52.7778 24 52.7778C24.9472 52.7778 25.7222 52.0028 25.7222 51.0556V26.9445C25.7222 25.9972 24.9472 25.2222 24 25.2222ZM24 11.4445H10.2222C9.27026 11.4445 8.5 12.2147 8.5 13.1667V26.9445C8.5 27.8917 9.27026 28.6667 10.2222 28.6667C11.1742 28.6667 11.9444 27.8917 11.9444 26.9445V14.8889H24C24.9472 14.8889 25.7222 14.1182 25.7222 13.1667C25.7222 12.2152 24.9472 11.4445 24 11.4445ZM68.7778 11.4445H55C54.0528 11.4445 53.2778 12.2147 53.2778 13.1667C53.2778 14.1186 54.0528 14.8889 55 14.8889H67.0556V26.9445C67.0556 27.8917 67.8306 28.6667 68.7778 28.6667C69.725 28.6667 70.5 27.8917 70.5 26.9445V13.1667C70.5 12.2147 69.725 11.4445 68.7778 11.4445ZM68.7778 49.3334C67.8258 49.3334 67.0556 50.1036 67.0556 51.0556V63.1111H55C54.048 63.1111 53.2778 63.8814 53.2778 64.8334C53.2778 65.7853 54.048 66.5556 55 66.5556H68.7778C69.7297 66.5556 70.5 65.7853 70.5 64.8334V51.0556C70.5 50.1083 69.725 49.3334 68.7778 49.3334ZM24 63.1111H11.9444V51.0556C11.9444 50.1083 11.1737 49.3334 10.2222 49.3334C9.27069 49.3334 8.5 50.1083 8.5 51.0556V64.8334C8.5 65.7806 9.27026 66.5556 10.2222 66.5556H24C24.9472 66.5556 25.7222 65.7806 25.7222 64.8334C25.7222 63.8861 24.9472 63.1111 24 63.1111Z\"\n fill={props.fill || '#5B80F7'}\n />\n </Svg>\n </View>\n );\n};\n\nexport default ScanIcon;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,IAAI,EAAEC,GAAG,QAAQ,kBAAkB;AAC5C,SAASC,IAAI,QAAQ,cAAc;AAEnC,MAAMC,QAAQ,GAAIC,KAAgB,IAAK;EACrC,oBACEL,KAAA,CAAAM,aAAA,CAACH,IAAI,qBACHH,KAAA,CAAAM,aAAA,CAACJ,GAAG;IACFK,KAAK,EAAEF,KAAK,CAACE,KAAK,IAAI,IAAK;IAC3BC,MAAM,EAAEH,KAAK,CAACG,MAAM,IAAI,IAAK;IAC7BC,OAAO,EAAC,WAAW;IACnBC,IAAI,EAAC;EAAM,gBAEXV,KAAA,CAAAM,aAAA,CAACL,IAAI;IACHU,CAAC,EAAC,gmEAAgmE;IAClmED,IAAI,EAAEL,KAAK,CAACK,IAAI,IAAI;EAAU,CAC/B,CACE,CACD,CAAC;AAEX,CAAC;AAED,eAAeN,QAAQ"}
|
|
@@ -35,3 +35,4 @@ export declare const getErrorMessage: (scan: string, error: {
|
|
|
35
35
|
};
|
|
36
36
|
export declare const getSplitIds: (scanOutput: ScannerOutput) => string[];
|
|
37
37
|
export declare function filterERCItems(eventCodeItems: ercItem[], type: 'SUCCESS' | 'FAILURE'): ercItem[];
|
|
38
|
+
export declare function resetObjective(scanProps: ScannerInput): Promise<void>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@os1-platform/dispatch-mobile",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.4",
|
|
4
4
|
"description": "Dispatch SDK React Native Package",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
|
@@ -255,6 +255,7 @@
|
|
|
255
255
|
"react-native-otp-textinput": "0.0.8",
|
|
256
256
|
"react-native-svg": "^13.6.0",
|
|
257
257
|
"recyclerlistview": "^4.2.0",
|
|
258
|
-
"rjsf-native": "^1.0.14"
|
|
258
|
+
"rjsf-native": "^1.0.14",
|
|
259
|
+
"toggle-switch-react-native": "^3.3.0"
|
|
259
260
|
}
|
|
260
261
|
}
|