@os1-platform/dispatch-mobile 3.1.1 → 3.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js +1 -1
  2. package/lib/commonjs/manager/dispatch/DispatchStateContainer.js.map +1 -1
  3. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js +6 -7
  4. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  5. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +1 -0
  6. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  7. package/lib/commonjs/ui/screens/DropCashScreen.js +3 -2
  8. package/lib/commonjs/ui/screens/DropCashScreen.js.map +1 -1
  9. package/lib/commonjs/utils/ExecTaskUtils.js +2 -0
  10. package/lib/commonjs/utils/ExecTaskUtils.js.map +1 -1
  11. package/lib/module/manager/dispatch/DispatchStateContainer.js +2 -2
  12. package/lib/module/manager/dispatch/DispatchStateContainer.js.map +1 -1
  13. package/lib/module/manager/syncmanager/events/ETEventsManager.js +6 -7
  14. package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  15. package/lib/module/manager/syncmanager/events/EventsSyncManager.js +1 -0
  16. package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  17. package/lib/module/ui/screens/DropCashScreen.js +3 -2
  18. package/lib/module/ui/screens/DropCashScreen.js.map +1 -1
  19. package/lib/module/utils/ExecTaskUtils.js +2 -0
  20. package/lib/module/utils/ExecTaskUtils.js.map +1 -1
  21. package/package.json +4 -4
  22. package/src/manager/dispatch/DispatchStateContainer.tsx +3 -1
  23. package/src/manager/syncmanager/events/ETEventsManager.ts +6 -7
  24. package/src/manager/syncmanager/events/EventsSyncManager.ts +1 -0
  25. package/src/ui/screens/DropCashScreen.tsx +28 -29
  26. package/src/utils/ExecTaskUtils.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"names":["ETEventsManager","SyncHttpClient","flattenObject","isEmptyOrBlank","BaseError","BaseErrorCodes","InvalidArgumentsError","InvalidBaseURL","SyncManagerNotInitialized","NetworkUtil","Logger","LOG_TYPE","IDispatch","SyncType","DispatchSdkCache","Storage","LAST_SYNCED_EVENT_ID","MAX_RETRY_COUNT","POD_DOC","TAG","EventsSyncManager","retries","_retries","value","constructor","_defineProperty","initSyncManager","baseURL","retryCount","maxRetryCount","syncHttpClient","getInstance","instance","startSync","inProgress","hasNetwork","isAvailableAsync","eventsManager","checkForInitialization","lastSyncedEventId","getSharedItem","dspID","getKeyFromCache","KEYS","DISPATCH_ID","bulkEventRows","getBulkRowsToSync","arrEventsToSync","index","syncType","sync_type","includes","push","length","syncBulkEventToServer","extraParameters","logEvent","SDK_ERROR","network","error","pending","console","log","isProgress","retry","updateEventError","eventRows","errorString","promises","ev","updateError","id","err","SDK_WARNING","Promise","all","forceSync","isSyncPending","syncEventId","parseInt","getRowToSync","markEventSynced","insertPODDocEvent","InvalidArgumentError","insertEvent","sequence","payload","objectiveRef","config","insertBulkEvent","_bulkData","insertQueueEvent","_pushData","getObjectiveSummary","data","getObjectiveDetails","requiredPayload","row","JSON","parse","status","_this$syncHttpClient","success","syncBulkEvent","setSharedItem","lastSyncEventId","stringify","getAllEvents","clearEventsDB","deleteAllEvents","_EventsSyncManager"],"sources":["EventsSyncManager.ts"],"sourcesContent":["import ETEventsManager from './ETEventsManager';\nimport type {\n BulkEvent,\n DispatchSyncType,\n EventRow,\n ExecEngineSyncType,\n} from '../DBConfig';\nimport SyncHttpClient from './SyncHttpClient';\nimport { flattenObject, isEmptyOrBlank } from '../../../utils/utils';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n InvalidBaseURL,\n SyncManagerNotInitialized,\n} from '../../../errors/ErrorCodes';\nimport NetworkUtil from '../../../utils/NetworkUtil';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { IDispatch } from '@os1-platform/platform-coreos-execution-engine-sdk';\nconst SyncType = IDispatch.SyncType;\n\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\nimport Storage from '../../../utils/storage';\nimport { LAST_SYNCED_EVENT_ID, MAX_RETRY_COUNT } from '../constants';\nimport { POD_DOC } from '../constants';\n\nconst TAG = 'EventsSyncManager';\nexport default class EventsSyncManager {\n private syncHttpClient: SyncHttpClient | undefined;\n private static instance: EventsSyncManager;\n private inProgress: boolean = false;\n private cScanInProgress: boolean = false;\n private eventsManager: ETEventsManager | undefined;\n private maxRetryCount: number = MAX_RETRY_COUNT;\n private _retries = 0;\n\n get retries(): number {\n return this._retries;\n }\n\n set retries(value: number) {\n this._retries = value;\n }\n\n private constructor() {}\n\n public initSyncManager(baseURL: string, retryCount: number) {\n if (isEmptyOrBlank(baseURL))\n throw new BaseError(BaseErrorCodes.InvalidBaseURL, InvalidBaseURL);\n this.maxRetryCount = retryCount;\n this.syncHttpClient = new SyncHttpClient(baseURL);\n }\n\n public static getInstance(): EventsSyncManager {\n if (!EventsSyncManager.instance) {\n EventsSyncManager.instance = new EventsSyncManager();\n }\n return EventsSyncManager.instance;\n }\n\n public async startSync(): Promise<void> {\n if (!this.inProgress && this._retries < this.maxRetryCount) {\n this.inProgress = true;\n const hasNetwork = await NetworkUtil.isAvailableAsync();\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n try {\n this.checkForInitialization();\n \n if (hasNetwork) {\n // NEW CODE\n const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n LAST_SYNCED_EVENT_ID\n );\n const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.DISPATCH_ID\n );\n\n const bulkEventRows = await this.eventsManager.getBulkRowsToSync(\n lastSyncedEventId,\n dspID ?? ''\n );\n\n var arrEventsToSync: EventRow[] = [];\n\n // Filtering and removing those events which are type of POD_DOC\n for (var index in bulkEventRows) {\n let syncType = bulkEventRows[index].sync_type;\n if (syncType.includes(POD_DOC)) {\n break;\n }\n arrEventsToSync.push(bulkEventRows[index]);\n }\n\n if (arrEventsToSync.length != 0) {\n await this.syncBulkEventToServer(\n arrEventsToSync,\n lastSyncedEventId\n );\n let extraParameters = {\n bulkEventRows: arrEventsToSync.length,\n };\n Logger.getInstance().logEvent(\n 'startSync-event-to-sync',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n } else {\n let extraParameters = {\n bulkEventRows: bulkEventRows.length,\n arrEventsToSync: arrEventsToSync.length\n };\n Logger.getInstance().logEvent(\n 'startSync-no-event-to-sync-else',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n }\n\n // OLD CODE\n // const promises: any[] = [\n // this.JobRemovalEvent(this.eventsManager),\n // this.CustodyBatchEvent(this.eventsManager),\n // this.WorkflowUpdateEvent(this.eventsManager),\n // ];\n // await Promise.all(promises);\n } else {\n let extraParameters = {\n network: hasNetwork\n };\n Logger.getInstance().logEvent(\n 'startSync-no network',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n }\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'startSync-error',\n flattenObject(error),\n LOG_TYPE.SDK_ERROR\n );\n } finally {\n this.inProgress = false;\n const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n LAST_SYNCED_EVENT_ID\n );\n const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.DISPATCH_ID\n );\n\n const bulkEventRows = await this.eventsManager.getBulkRowsToSync(\n lastSyncedEventId,\n dspID ?? ''\n );\n\n var arrEventsToSync: EventRow[] = [];\n\n // Filtering and removing those events which are type of POD_DOC\n for (var index in bulkEventRows) {\n let syncType = bulkEventRows[index].sync_type;\n if (syncType.includes(POD_DOC)) {\n break;\n }\n arrEventsToSync.push(bulkEventRows[index]);\n }\n let extraParameters = {\n hasNetwork: hasNetwork,\n pending: arrEventsToSync.length != 0,\n };\n console.log(\"finally:\",arrEventsToSync.length);\n if (arrEventsToSync.length != 0 && hasNetwork) {\n await this.startSync();\n Logger.getInstance().logEvent('startSync-finally-data-sync-available', flattenObject(extraParameters), LOG_TYPE.SDK_ERROR);\n }\n }\n } else {\n let extraParameters = {\n isProgress: this.inProgress,\n retry: this._retries,\n };\n Logger.getInstance().logEvent(\n 'startSync-inprogress-maxretries',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n }\n }\n\n // private async WorkflowUpdateEvent(eventsManager: ETEventsManager) {\n // const unsyncedData = await eventsManager.getWorkflowUpdateEvents(\n // SyncType.WORKFLOW\n // );\n // if (unsyncedData?.length > 0) {\n // await this.syncEventToServer(unsyncedData, SyncType.WORKFLOW);\n // } else {\n // Logger.getInstance().logEvent(\n // 'startSync',\n // 'No workflow/task data to sync in Events Manager',\n // LOG_TYPE.SDK_INFO\n // );\n // }\n // }\n\n // private async CustodyBatchEvent(eventsManager: ETEventsManager) {\n // const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n // DispatchSdkCache.KEYS.DISPATCH_ID\n // );\n // const custodyScans = await eventsManager.getCustodyBatch(dspID ?? '');\n // if (custodyScans && custodyScans.length > 0) {\n // await this.startCustodyScans(custodyScans);\n // }\n // }\n\n // private async JobRemovalEvent(eventsManager: ETEventsManager) {\n // const unsyncedJobRemovalData = await eventsManager.getJobRemovalEvents(\n // SyncType.JOB_REMOVAL\n // );\n // if (unsyncedJobRemovalData?.length > 0) {\n // await this.syncEventToServer(\n // unsyncedJobRemovalData,\n // SyncType.JOB_REMOVAL\n // );\n // }\n // }\n\n // public async startCustodyScans(custodyScans: EventRow[]) {\n // if (!this.cScanInProgress) {\n // this.cScanInProgress = true;\n // try {\n // const inScans = custodyScans.filter(\n // (scan) => scan.sync_type === SyncType.CUSTODY_IN_SCAN\n // );\n // const outScans = custodyScans.filter(\n // (scans) => scans.sync_type === SyncType.CUSTODY_OUT_SCAN\n // );\n // if (inScans && inScans.length > 0) {\n // await this.syncEventToServer(inScans, SyncType.CUSTODY_IN_SCAN);\n // } else if (outScans && outScans.length > 0) {\n // await this.syncEventToServer(outScans, SyncType.CUSTODY_OUT_SCAN);\n // } else {\n // Logger.getInstance().logEvent(\n // 'startCustodyScans',\n // 'NO CUSTODY SCANS LEFT TO SYNC',\n // LOG_TYPE.SDK_INFO\n // );\n // }\n // } catch (error: any) {\n // } finally {\n // this.cScanInProgress = false;\n // if (await this.isSyncPending()) await this.startSync();\n // }\n // } else {\n // Logger.getInstance().logEvent(\n // 'startCustodyScans',\n // 'Custody Scan already in Progress',\n // LOG_TYPE.SDK_INFO\n // );\n // }\n // }\n\n private async updateEventError(\n eventRows: EventRow[],\n errorString: string\n ): Promise<void> {\n if (!eventRows || eventRows.length === 0) return;\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n const promises: any[] = [];\n for (const ev of eventRows) {\n try {\n promises.push(this.eventsManager.updateError(ev.id, errorString));\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'updateEventError',\n flattenObject(err),\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n await Promise.all(promises);\n }\n\n /**\n * force sync events who retry count >3 This function can be called from app UI to sync the events forcefully\n */\n public async forceSync() {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n this._retries = 0;\n await this.startSync();\n }\n\n public async isSyncPending(): Promise<boolean> {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n\n \n // NEW CODE\n const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n LAST_SYNCED_EVENT_ID\n );\n const syncEventId = parseInt(lastSyncedEventId) + 1;\n const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.DISPATCH_ID\n );\n const eventRows = await this.eventsManager.getRowToSync(\n `${syncEventId}`,\n dspID ?? ''\n );\n\n return eventRows.length > 0 && this._retries < this.maxRetryCount;\n\n // OLD CODE\n // let unsyncedData = await this.eventsManager.getAllUnsyncedEvents();\n // return unsyncedData?.length > 0 && this._retries < this.maxRetryCount;\n }\n\n private async markEventSynced(eventRows: EventRow[]) {\n if (!eventRows || eventRows.length === 0) return;\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n const promises: any[] = [];\n for (const ev of eventRows) {\n try {\n promises.push(await this.eventsManager.markEventSynced(ev.id));\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'markEventSynced',\n flattenObject(err),\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n\n await Promise.all(promises);\n }\n\n // This function will insert POD_DOC type of event in event table.\n public async insertPODDocEvent(\n dspID: string,\n syncType: string\n ): Promise<void> {\n if (isEmptyOrBlank(dspID) || isEmptyOrBlank(syncType))\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertPODDocEvent(dspID, syncType);\n }\n\n public async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n if (\n !sequence ||\n isEmptyOrBlank(payload) ||\n isEmptyOrBlank(dspID) ||\n isEmptyOrBlank(syncType) ||\n isEmptyOrBlank(objectiveRef)\n )\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertEvent(\n sequence,\n payload,\n dspID,\n syncType,\n objectiveRef,\n config\n );\n }\n\n // NEW CODE\n public async insertBulkEvent(_bulkData: BulkEvent): Promise<void> {\n try {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertBulkEvent(_bulkData);\n } catch (err) {\n throw err;\n }\n }\n\n // NEW CODE\n public async insertQueueEvent(_pushData: BulkEvent): Promise<void> {\n try {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertQueueEvent(_pushData);\n } catch (err) {\n throw err;\n }\n }\n\n // OLD CODE\n // public async insertBulkEvent(_bulkData: BulkEvent[]): Promise<void> {\n // try {\n // /* if (\n // !sequence ||\n // isEmptyOrBlank(payload) ||\n // isEmptyOrBlank(dspID) ||\n // isEmptyOrBlank(syncType) ||\n // isEmptyOrBlank(objectiveRef)\n // )\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // ); */\n // if (!this.eventsManager) {\n // this.eventsManager = await ETEventsManager.getInstance();\n // }\n // await this.eventsManager.insertBulkEvent(_bulkData);\n // } catch (err) {\n // throw err;\n // }\n // }\n\n private checkForInitialization() {\n if (!this.syncHttpClient) {\n throw new BaseError(\n BaseErrorCodes.SyncManagerNotInitialized,\n SyncManagerNotInitialized\n );\n }\n }\n\n public async getObjectiveSummary(objectiveRef: string): Promise<any> {\n if (!objectiveRef) return [];\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n try {\n let data = await this.eventsManager.getObjectiveDetails(objectiveRef);\n let requiredPayload: any = null;\n for (const row of data) {\n let payload = JSON.parse(row.payload);\n if (payload.status === 'CLOSED') {\n requiredPayload = payload;\n }\n }\n if (requiredPayload) return requiredPayload.data;\n else return null;\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'getObjectiveSummary',\n flattenObject(err),\n LOG_TYPE.SDK_WARNING\n );\n return null;\n }\n }\n\n // private async syncEventToServer(\n // eventRows: EventRow[],\n // syncType: ExecEngineSyncType | DispatchSyncType\n // ) {\n // try {\n // const success = await this.syncHttpClient?.syncEvent(eventRows, syncType);\n\n // if (success) {\n // this._retries = 0;\n // // NEW CODE\n // const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n // LAST_SYNCED_EVENT_ID\n // );\n // const syncEventId = parseInt(lastSyncedEventId) + 1;\n // await Storage.getInstance().setSharedItem(\n // LAST_SYNCED_EVENT_ID,\n // `${syncEventId}`\n // );\n\n // // OLD CODE\n // await this.markEventSynced(eventRows);\n // } else {\n // this._retries++;\n // /* Logger.getInstance().logEvent(\n // 'syncEventToServer',\n // `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,\n // LOG_TYPE.SDK_ERROR\n // ); */\n // await this.updateEventError(eventRows, 'Unexpected error');\n // }\n // } catch (error: any) {\n // this._retries++;\n // /* Logger.getInstance().logEvent(\n // 'syncEventToServer',\n // `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${\n // error.message\n // }`,\n // LOG_TYPE.SDK_ERROR\n // ); */\n // await this.updateEventError(\n // eventRows,\n // JSON.stringify({\n // error,\n // })\n // );\n // }\n // }\n\n private async syncBulkEventToServer(\n eventRows: EventRow[],\n lastSyncedEventId: string\n ) {\n try {\n const success = await this.syncHttpClient?.syncBulkEvent(eventRows);\n let extraParameters = {\n success: success,\n };\n Logger.getInstance().logEvent(\n 'syncBulkEventToServer-syncBulkEvent-success-true',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (success) {\n this._retries = 0;\n // NEW CODE\n\n const syncEventId = parseInt(lastSyncedEventId) + eventRows.length;\n await Storage.getInstance().setSharedItem(\n LAST_SYNCED_EVENT_ID,\n `${syncEventId}`\n );\n\n // OLD CODE\n await this.markEventSynced(eventRows);\n\n let extraParameters = {\n retries: this._retries,\n lastSyncEventId: syncEventId\n };\n Logger.getInstance().logEvent(\n 'syncBulkEventToServer-markEventSynced',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n } else {\n this._retries++;\n await this.updateEventError(eventRows, 'Unexpected error');\n let extraParameters = {\n success: success,\n };\n Logger.getInstance().logEvent(\n 'syncBulkEventToServer-syncBulkEvent-success-false',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n }\n } catch (error: any) {\n this._retries++;\n Logger.getInstance().logEvent(\n 'syncBulkEventToServer-error',\n flattenObject(error),\n LOG_TYPE.SDK_ERROR\n );\n await this.updateEventError(\n eventRows,\n JSON.stringify({\n error,\n })\n );\n }\n }\n\n public async getAllEvents(dspID?: string): Promise<EventRow[]> {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n return this.eventsManager.getAllEvents(dspID);\n }\n public async clearEventsDB() {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n await this.eventsManager.deleteAllEvents();\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["ETEventsManager","SyncHttpClient","flattenObject","isEmptyOrBlank","BaseError","BaseErrorCodes","InvalidArgumentsError","InvalidBaseURL","SyncManagerNotInitialized","NetworkUtil","Logger","LOG_TYPE","IDispatch","SyncType","DispatchSdkCache","Storage","LAST_SYNCED_EVENT_ID","MAX_RETRY_COUNT","POD_DOC","TAG","EventsSyncManager","retries","_retries","value","constructor","_defineProperty","initSyncManager","baseURL","retryCount","maxRetryCount","syncHttpClient","getInstance","instance","startSync","inProgress","hasNetwork","isAvailableAsync","eventsManager","checkForInitialization","lastSyncedEventId","getSharedItem","dspID","getKeyFromCache","KEYS","DISPATCH_ID","bulkEventRows","getBulkRowsToSync","arrEventsToSync","index","syncType","sync_type","includes","push","length","syncBulkEventToServer","extraParameters","logEvent","SDK_ERROR","network","error","pending","console","log","isProgress","retry","updateEventError","eventRows","errorString","promises","ev","updateError","id","err","SDK_WARNING","Promise","all","forceSync","isSyncPending","syncEventId","parseInt","getRowToSync","markEventSynced","insertPODDocEvent","InvalidArgumentError","insertEvent","sequence","payload","objectiveRef","config","insertBulkEvent","_bulkData","insertQueueEvent","_pushData","getObjectiveSummary","data","getObjectiveDetails","requiredPayload","row","JSON","parse","status","_this$syncHttpClient","success","syncBulkEvent","setSharedItem","lastSyncEventId","stringify","getAllEvents","clearEventsDB","deleteAllEvents","_EventsSyncManager"],"sources":["EventsSyncManager.ts"],"sourcesContent":["import ETEventsManager from './ETEventsManager';\nimport type {\n BulkEvent,\n DispatchSyncType,\n EventRow,\n ExecEngineSyncType,\n} from '../DBConfig';\nimport SyncHttpClient from './SyncHttpClient';\nimport { flattenObject, isEmptyOrBlank } from '../../../utils/utils';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n InvalidBaseURL,\n SyncManagerNotInitialized,\n} from '../../../errors/ErrorCodes';\nimport NetworkUtil from '../../../utils/NetworkUtil';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { IDispatch } from '@os1-platform/platform-coreos-execution-engine-sdk';\nconst SyncType = IDispatch.SyncType;\n\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\nimport Storage from '../../../utils/storage';\nimport { LAST_SYNCED_EVENT_ID, MAX_RETRY_COUNT } from '../constants';\nimport { POD_DOC } from '../constants';\n\nconst TAG = 'EventsSyncManager';\nexport default class EventsSyncManager {\n private syncHttpClient: SyncHttpClient | undefined;\n private static instance: EventsSyncManager;\n private inProgress: boolean = false;\n private cScanInProgress: boolean = false;\n private eventsManager: ETEventsManager | undefined;\n private maxRetryCount: number = MAX_RETRY_COUNT;\n private _retries = 0;\n\n get retries(): number {\n return this._retries;\n }\n\n set retries(value: number) {\n this._retries = value;\n }\n\n private constructor() {}\n\n public initSyncManager(baseURL: string, retryCount: number) {\n if (isEmptyOrBlank(baseURL))\n throw new BaseError(BaseErrorCodes.InvalidBaseURL, InvalidBaseURL);\n this.maxRetryCount = retryCount;\n this.syncHttpClient = new SyncHttpClient(baseURL);\n }\n\n public static getInstance(): EventsSyncManager {\n if (!EventsSyncManager.instance) {\n EventsSyncManager.instance = new EventsSyncManager();\n }\n return EventsSyncManager.instance;\n }\n\n public async startSync(): Promise<void> {\n if (!this.inProgress && this._retries < this.maxRetryCount) {\n this.inProgress = true;\n const hasNetwork = await NetworkUtil.isAvailableAsync();\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n try {\n this.checkForInitialization();\n \n if (hasNetwork) {\n // NEW CODE\n const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n LAST_SYNCED_EVENT_ID\n );\n const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.DISPATCH_ID\n );\n\n const bulkEventRows = await this.eventsManager.getBulkRowsToSync(\n lastSyncedEventId,\n dspID ?? ''\n );\n\n var arrEventsToSync: EventRow[] = [];\n\n // Filtering and removing those events which are type of POD_DOC\n for (var index in bulkEventRows) {\n let syncType = bulkEventRows[index].sync_type;\n if (syncType.includes(POD_DOC)) {\n break;\n }\n arrEventsToSync.push(bulkEventRows[index]);\n }\n\n if (arrEventsToSync.length != 0) {\n await this.syncBulkEventToServer(\n arrEventsToSync,\n lastSyncedEventId\n );\n let extraParameters = {\n bulkEventRows: arrEventsToSync.length,\n };\n Logger.getInstance().logEvent(\n 'startSync-event-to-sync',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n } else {\n let extraParameters = {\n bulkEventRows: bulkEventRows.length,\n arrEventsToSync: arrEventsToSync.length\n };\n Logger.getInstance().logEvent(\n 'startSync-no-event-to-sync-else',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n }\n\n // OLD CODE\n // const promises: any[] = [\n // this.JobRemovalEvent(this.eventsManager),\n // this.CustodyBatchEvent(this.eventsManager),\n // this.WorkflowUpdateEvent(this.eventsManager),\n // ];\n // await Promise.all(promises);\n } else {\n let extraParameters = {\n network: hasNetwork\n };\n Logger.getInstance().logEvent(\n 'startSync-no network',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n }\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'startSync-error',\n flattenObject(error),\n LOG_TYPE.SDK_ERROR\n );\n } finally {\n this.inProgress = false;\n const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n LAST_SYNCED_EVENT_ID\n );\n const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.DISPATCH_ID\n );\n\n const bulkEventRows = await this.eventsManager.getBulkRowsToSync(\n lastSyncedEventId,\n dspID ?? ''\n );\n\n var arrEventsToSync: EventRow[] = [];\n\n // Filtering and removing those events which are type of POD_DOC\n for (var index in bulkEventRows) {\n let syncType = bulkEventRows[index].sync_type;\n if (syncType.includes(POD_DOC)) {\n break;\n }\n arrEventsToSync.push(bulkEventRows[index]);\n }\n let extraParameters = {\n hasNetwork: hasNetwork,\n pending: arrEventsToSync.length != 0,\n };\n console.log(\"finally:\",arrEventsToSync.length);\n if (arrEventsToSync.length != 0 && hasNetwork) {\n await this.startSync();\n Logger.getInstance().logEvent('startSync-finally-data-sync-available', flattenObject(extraParameters), LOG_TYPE.SDK_ERROR);\n }\n }\n } else {\n let extraParameters = {\n isProgress: this.inProgress,\n retry: this._retries,\n };\n Logger.getInstance().logEvent(\n 'startSync-inprogress-maxretries',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n }\n }\n\n // private async WorkflowUpdateEvent(eventsManager: ETEventsManager) {\n // const unsyncedData = await eventsManager.getWorkflowUpdateEvents(\n // SyncType.WORKFLOW\n // );\n // if (unsyncedData?.length > 0) {\n // await this.syncEventToServer(unsyncedData, SyncType.WORKFLOW);\n // } else {\n // Logger.getInstance().logEvent(\n // 'startSync',\n // 'No workflow/task data to sync in Events Manager',\n // LOG_TYPE.SDK_INFO\n // );\n // }\n // }\n\n // private async CustodyBatchEvent(eventsManager: ETEventsManager) {\n // const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n // DispatchSdkCache.KEYS.DISPATCH_ID\n // );\n // const custodyScans = await eventsManager.getCustodyBatch(dspID ?? '');\n // if (custodyScans && custodyScans.length > 0) {\n // await this.startCustodyScans(custodyScans);\n // }\n // }\n\n // private async JobRemovalEvent(eventsManager: ETEventsManager) {\n // const unsyncedJobRemovalData = await eventsManager.getJobRemovalEvents(\n // SyncType.JOB_REMOVAL\n // );\n // if (unsyncedJobRemovalData?.length > 0) {\n // await this.syncEventToServer(\n // unsyncedJobRemovalData,\n // SyncType.JOB_REMOVAL\n // );\n // }\n // }\n\n // public async startCustodyScans(custodyScans: EventRow[]) {\n // if (!this.cScanInProgress) {\n // this.cScanInProgress = true;\n // try {\n // const inScans = custodyScans.filter(\n // (scan) => scan.sync_type === SyncType.CUSTODY_IN_SCAN\n // );\n // const outScans = custodyScans.filter(\n // (scans) => scans.sync_type === SyncType.CUSTODY_OUT_SCAN\n // );\n // if (inScans && inScans.length > 0) {\n // await this.syncEventToServer(inScans, SyncType.CUSTODY_IN_SCAN);\n // } else if (outScans && outScans.length > 0) {\n // await this.syncEventToServer(outScans, SyncType.CUSTODY_OUT_SCAN);\n // } else {\n // Logger.getInstance().logEvent(\n // 'startCustodyScans',\n // 'NO CUSTODY SCANS LEFT TO SYNC',\n // LOG_TYPE.SDK_INFO\n // );\n // }\n // } catch (error: any) {\n // } finally {\n // this.cScanInProgress = false;\n // if (await this.isSyncPending()) await this.startSync();\n // }\n // } else {\n // Logger.getInstance().logEvent(\n // 'startCustodyScans',\n // 'Custody Scan already in Progress',\n // LOG_TYPE.SDK_INFO\n // );\n // }\n // }\n\n private async updateEventError(\n eventRows: EventRow[],\n errorString: string\n ): Promise<void> {\n if (!eventRows || eventRows.length === 0) return;\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n const promises: any[] = [];\n for (const ev of eventRows) {\n try {\n promises.push(this.eventsManager.updateError(ev.id, errorString));\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'updateEventError',\n flattenObject(err),\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n await Promise.all(promises);\n }\n\n /**\n * force sync events who retry count >3 This function can be called from app UI to sync the events forcefully\n */\n public async forceSync() {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n this._retries = 0;\n this.inProgress = false;\n await this.startSync();\n }\n\n public async isSyncPending(): Promise<boolean> {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n\n \n // NEW CODE\n const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n LAST_SYNCED_EVENT_ID\n );\n const syncEventId = parseInt(lastSyncedEventId) + 1;\n const dspID = await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.DISPATCH_ID\n );\n const eventRows = await this.eventsManager.getRowToSync(\n `${syncEventId}`,\n dspID ?? ''\n );\n\n return eventRows.length > 0 && this._retries < this.maxRetryCount;\n\n // OLD CODE\n // let unsyncedData = await this.eventsManager.getAllUnsyncedEvents();\n // return unsyncedData?.length > 0 && this._retries < this.maxRetryCount;\n }\n\n private async markEventSynced(eventRows: EventRow[]) {\n if (!eventRows || eventRows.length === 0) return;\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n const promises: any[] = [];\n for (const ev of eventRows) {\n try {\n promises.push(await this.eventsManager.markEventSynced(ev.id));\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'markEventSynced',\n flattenObject(err),\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n\n await Promise.all(promises);\n }\n\n // This function will insert POD_DOC type of event in event table.\n public async insertPODDocEvent(\n dspID: string,\n syncType: string\n ): Promise<void> {\n if (isEmptyOrBlank(dspID) || isEmptyOrBlank(syncType))\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertPODDocEvent(dspID, syncType);\n }\n\n public async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n if (\n !sequence ||\n isEmptyOrBlank(payload) ||\n isEmptyOrBlank(dspID) ||\n isEmptyOrBlank(syncType) ||\n isEmptyOrBlank(objectiveRef)\n )\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertEvent(\n sequence,\n payload,\n dspID,\n syncType,\n objectiveRef,\n config\n );\n }\n\n // NEW CODE\n public async insertBulkEvent(_bulkData: BulkEvent): Promise<void> {\n try {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertBulkEvent(_bulkData);\n } catch (err) {\n throw err;\n }\n }\n\n // NEW CODE\n public async insertQueueEvent(_pushData: BulkEvent): Promise<void> {\n try {\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n await this.eventsManager.insertQueueEvent(_pushData);\n } catch (err) {\n throw err;\n }\n }\n\n // OLD CODE\n // public async insertBulkEvent(_bulkData: BulkEvent[]): Promise<void> {\n // try {\n // /* if (\n // !sequence ||\n // isEmptyOrBlank(payload) ||\n // isEmptyOrBlank(dspID) ||\n // isEmptyOrBlank(syncType) ||\n // isEmptyOrBlank(objectiveRef)\n // )\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // ); */\n // if (!this.eventsManager) {\n // this.eventsManager = await ETEventsManager.getInstance();\n // }\n // await this.eventsManager.insertBulkEvent(_bulkData);\n // } catch (err) {\n // throw err;\n // }\n // }\n\n private checkForInitialization() {\n if (!this.syncHttpClient) {\n throw new BaseError(\n BaseErrorCodes.SyncManagerNotInitialized,\n SyncManagerNotInitialized\n );\n }\n }\n\n public async getObjectiveSummary(objectiveRef: string): Promise<any> {\n if (!objectiveRef) return [];\n if (!this.eventsManager) {\n this.eventsManager = await ETEventsManager.getInstance();\n }\n try {\n let data = await this.eventsManager.getObjectiveDetails(objectiveRef);\n let requiredPayload: any = null;\n for (const row of data) {\n let payload = JSON.parse(row.payload);\n if (payload.status === 'CLOSED') {\n requiredPayload = payload;\n }\n }\n if (requiredPayload) return requiredPayload.data;\n else return null;\n } catch (err: any) {\n Logger.getInstance().logEvent(\n 'getObjectiveSummary',\n flattenObject(err),\n LOG_TYPE.SDK_WARNING\n );\n return null;\n }\n }\n\n // private async syncEventToServer(\n // eventRows: EventRow[],\n // syncType: ExecEngineSyncType | DispatchSyncType\n // ) {\n // try {\n // const success = await this.syncHttpClient?.syncEvent(eventRows, syncType);\n\n // if (success) {\n // this._retries = 0;\n // // NEW CODE\n // const lastSyncedEventId = await Storage.getInstance().getSharedItem(\n // LAST_SYNCED_EVENT_ID\n // );\n // const syncEventId = parseInt(lastSyncedEventId) + 1;\n // await Storage.getInstance().setSharedItem(\n // LAST_SYNCED_EVENT_ID,\n // `${syncEventId}`\n // );\n\n // // OLD CODE\n // await this.markEventSynced(eventRows);\n // } else {\n // this._retries++;\n // /* Logger.getInstance().logEvent(\n // 'syncEventToServer',\n // `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,\n // LOG_TYPE.SDK_ERROR\n // ); */\n // await this.updateEventError(eventRows, 'Unexpected error');\n // }\n // } catch (error: any) {\n // this._retries++;\n // /* Logger.getInstance().logEvent(\n // 'syncEventToServer',\n // `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${\n // error.message\n // }`,\n // LOG_TYPE.SDK_ERROR\n // ); */\n // await this.updateEventError(\n // eventRows,\n // JSON.stringify({\n // error,\n // })\n // );\n // }\n // }\n\n private async syncBulkEventToServer(\n eventRows: EventRow[],\n lastSyncedEventId: string\n ) {\n try {\n const success = await this.syncHttpClient?.syncBulkEvent(eventRows);\n let extraParameters = {\n success: success,\n };\n Logger.getInstance().logEvent(\n 'syncBulkEventToServer-syncBulkEvent-success-true',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (success) {\n this._retries = 0;\n // NEW CODE\n\n const syncEventId = parseInt(lastSyncedEventId) + eventRows.length;\n await Storage.getInstance().setSharedItem(\n LAST_SYNCED_EVENT_ID,\n `${syncEventId}`\n );\n\n // OLD CODE\n await this.markEventSynced(eventRows);\n\n let extraParameters = {\n retries: this._retries,\n lastSyncEventId: syncEventId\n };\n Logger.getInstance().logEvent(\n 'syncBulkEventToServer-markEventSynced',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n } else {\n this._retries++;\n await this.updateEventError(eventRows, 'Unexpected error');\n let extraParameters = {\n success: success,\n };\n Logger.getInstance().logEvent(\n 'syncBulkEventToServer-syncBulkEvent-success-false',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n }\n } catch (error: any) {\n this._retries++;\n Logger.getInstance().logEvent(\n 'syncBulkEventToServer-error',\n flattenObject(error),\n LOG_TYPE.SDK_ERROR\n );\n await this.updateEventError(\n eventRows,\n JSON.stringify({\n error,\n })\n );\n }\n }\n\n public async getAllEvents(dspID?: string): Promise<EventRow[]> {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n return this.eventsManager.getAllEvents(dspID);\n }\n public async clearEventsDB() {\n if (!this.eventsManager)\n this.eventsManager = await ETEventsManager.getInstance();\n await this.eventsManager.deleteAllEvents();\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -93,10 +93,11 @@ const DropCashScreen = ({
93
93
  })();
94
94
  }, [expectedAmount.value]);
95
95
  const getTotalExpected = async () => {
96
- const totalAmount = await DispatchExecutor.getTotalAmountMWI(mergedObjectiveId);
96
+ const totalAmountArr = await DispatchExecutor.getTotalAmountMWI(mergedObjectiveId);
97
+ let finalValue = totalAmountArr.map(Number).reduce((sum, num) => sum + num, 0).toFixed(2);
97
98
  setExpectedAmount({
98
99
  ...expectedAmount,
99
- value: totalAmount
100
+ value: Number(finalValue)
100
101
  });
101
102
  };
102
103
  const getSelfLoopBool = async () => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useState","withBaseDispatchScreen","SLDropCash","EntityCode","ExecutionTaskID","DispatchStateContainer","RouteParams","getDataFromNextState","View","CancelOrderDialog","getBaseETResponse","onTaskStart","DispatchExecutor","GO_BACK_EVENT_CODE","Helper","ScreenNameSdkConstants","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","ProgressDialog","getEventCodeByET","DropCashScreen","route","navigation","baseETProps","loading","setLoading","helperInstance","getInstance","nextState","params","NEXT_STATES","taskMeta","mergedObjectiveId","input","wfMeta","taskName","expectedAmount","setExpectedAmount","value","minorUnit","currencyCode","isSelfLoopTrue","setSelfLoop","severityLevel","LOG","eventName","RETURN_CASH_ET_OPENED","screenName","RETURN_CASH_ET_SCREEN","ROOT_META_DATA","customEventsData","getTotalExpected","getSelfLoopBool","console","log","_input$applicableReas","dropCashETOutput","amount","DELIVER_CASH","applicableReasons","success","eventCode","submitOutput","setResponse","_prevState","setShowAlert","totalAmount","getTotalAmountMWI","_mergedObjectiveId$","splitArr","split","isSelfLoopExistOnET","error","showAlert","sResponse","etOutput","navigateToNextTask","createElement","style","flex","visible","label","_extends","isSelfLoop","onSubmitET","onSubmit"],"sources":["DropCashScreen.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport withBaseDispatchScreen from './WithBaseDispatchScreen';\nimport type { BaseETProps } from '../../models/DispatchModels';\nimport { SLDropCash } from '../../components/executiontasks/ExecutionTasksIndex';\nimport { EntityCode, ExecutionTaskID } from '../../models/execTasks/ETConfig';\nimport DispatchStateContainer from '../../manager/dispatch/DispatchStateContainer';\nimport { RouteParams, getDataFromNextState } from '../uiConfig/RouteParams';\nimport type { ETAmount } from '../../components/executiontasks/payments/init/InitPaymentSchema';\nimport { View } from 'react-native';\nimport CancelOrderDialog from '../../components/widgets/CancelOrderDialog';\nimport { getBaseETResponse, onTaskStart } from '../../utils/ExecTaskUtils';\n\nimport { DispatchExecutor } from '@os1-platform/platform-coreos-execution-engine-sdk';\nimport { GO_BACK_EVENT_CODE } from '../../constants/constants';\nimport Helper from '../../utils/helper';\n//{ fireEventWithScreenName } from 'src/analytics/sentry/SentryAnalyticsUtils';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../analytics/sentry/SentryAnalyticsUtils';\nimport ProgressDialog from '../../components/widgets/ProgressDialog';\nimport { getEventCodeByET } from '../../manager/dispatchCodes/EventCodeContainer';\n\n// OLD CODE\n// function getTotalExpected(nextStates: any[]): ETAmount {\n// let totalAmount = 0;\n// for (const s of nextStates) {\n// totalAmount += s.nextState.data.input.expectedAmount.value;\n// }\n// return {\n// value: totalAmount,\n// minorUnit: nextStates[0].nextState.data.input.expectedAmount.minorUnit,\n// currencyCode:\n// nextStates[0].nextState.data.input.expectedAmount.currencyCode,\n// };\n// }\n\nconst DropCashScreen = ({\n route,\n navigation,\n baseETProps,\n}: {\n route: any;\n navigation: any;\n baseETProps: BaseETProps;\n}) => {\n const [loading, setLoading] = useState(false);\n\n const helperInstance = Helper.getInstance();\n const nextState = route.params[RouteParams.NEXT_STATES];\n const { taskMeta, mergedObjectiveId, input, wfMeta, taskName } =\n getDataFromNextState(nextState);\n\n const [expectedAmount, setExpectedAmount] = useState<ETAmount>({\n value: 1,\n minorUnit: input.expectedAmount.minorUnit,\n currencyCode: input.expectedAmount.currencyCode,\n });\n const [isSelfLoopTrue, setSelfLoop] = useState(false);\n\n useEffect(() => {\n (async () => {\n //fire sentry event\n fireEventWithScreenName({severityLevel:SeverityLevelValue.LOG, eventName:SentryEventNameSdkConstants.RETURN_CASH_ET_OPENED, screenName:ScreenNameSdkConstants.RETURN_CASH_ET_SCREEN});\n // \n onTaskStart(\n nextState,\n route.params[RouteParams.ROOT_META_DATA].customEventsData\n );\n getTotalExpected();\n await getSelfLoopBool();\n })();\n }, [])\n\n useEffect(() => {\n (async () => {\n console.log(\"expectedAmount:\",expectedAmount);\n if(expectedAmount.value === 0){\n // setLoading(true);\n let dropCashETOutput = {\n amount: {\n value: expectedAmount.value,\n currencyCode: expectedAmount.currencyCode,\n minorUnit: expectedAmount.minorUnit,\n },\n ...(await getBaseETResponse(\n EntityCode.DELIVER_CASH,\n true,\n getEventCodeByET(\n ExecutionTaskID.DELIVER_CASH,\n true,\n input.applicableReasons?.success\n ),\n '',\n mergedObjectiveId,\n ExecutionTaskID.DELIVER_CASH\n )),\n }\n if (dropCashETOutput.success || dropCashETOutput.eventCode == GO_BACK_EVENT_CODE) {\n await submitOutput(dropCashETOutput);\n } else {\n setResponse((_prevState: any) => {\n setShowAlert(true);\n return dropCashETOutput;\n });\n }\n // setLoading(false);\n }\n })();\n }, [expectedAmount.value])\n\n\n\n const getTotalExpected = async () => {\n const totalAmount: number = await DispatchExecutor.getTotalAmountMWI(\n mergedObjectiveId\n );\n setExpectedAmount({ ...expectedAmount, value: totalAmount });\n };\n\n const getSelfLoopBool = async () => {\n try {\n const splitArr = mergedObjectiveId[0]?.split('#');\n const isSelfLoopTrue: boolean = await helperInstance.isSelfLoopExistOnET(splitArr[1], taskName)\n setSelfLoop(isSelfLoopTrue);\n console.log('isSelfLoopTrue code execution successful!');\n } catch (error) {\n console.log('isSelfLoopTrue code execution error', error);\n }\n }\n\n const [showAlert, setShowAlert] = useState(false);\n const [sResponse, setResponse] = useState<any>();\n const submitOutput = useCallback(\n async (etOutput: any) => {\n await DispatchStateContainer.getInstance().navigateToNextTask(\n navigation,\n route,\n etOutput,\n etOutput.success,\n EntityCode.DELIVER_CASH,\n ExecutionTaskID.DELIVER_CASH,\n baseETProps,\n false\n );\n },\n [baseETProps, navigation, route]\n );\n \n return (\n <View style={{ flex: 1 }}>\n { expectedAmount.value === 0 ? <View><ProgressDialog visible={loading} label={'Please wait...'} /></View> : \n <SLDropCash\n {...input}\n expectedAmount={expectedAmount}\n isSelfLoop={isSelfLoopTrue}\n navigation={navigation}\n mergedObjectiveId={mergedObjectiveId}\n taskMeta={taskMeta}\n onSubmitET={async (etOutput) => {\n if (etOutput.success || etOutput.eventCode == GO_BACK_EVENT_CODE) {\n await submitOutput(etOutput);\n } else {\n setResponse((_prevState: any) => {\n setShowAlert(true);\n return etOutput;\n });\n }\n }}\n />\n }\n \n <CancelOrderDialog\n visible={showAlert}\n onSubmit={async (value) => {\n if (value) {\n setShowAlert(false);\n await submitOutput(sResponse);\n } else {\n setShowAlert(false);\n }\n }}\n />\n </View>\n );\n};\nexport default withBaseDispatchScreen(DropCashScreen);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useState","withBaseDispatchScreen","SLDropCash","EntityCode","ExecutionTaskID","DispatchStateContainer","RouteParams","getDataFromNextState","View","CancelOrderDialog","getBaseETResponse","onTaskStart","DispatchExecutor","GO_BACK_EVENT_CODE","Helper","ScreenNameSdkConstants","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","ProgressDialog","getEventCodeByET","DropCashScreen","route","navigation","baseETProps","loading","setLoading","helperInstance","getInstance","nextState","params","NEXT_STATES","taskMeta","mergedObjectiveId","input","wfMeta","taskName","expectedAmount","setExpectedAmount","value","minorUnit","currencyCode","isSelfLoopTrue","setSelfLoop","severityLevel","LOG","eventName","RETURN_CASH_ET_OPENED","screenName","RETURN_CASH_ET_SCREEN","ROOT_META_DATA","customEventsData","getTotalExpected","getSelfLoopBool","console","log","_input$applicableReas","dropCashETOutput","amount","DELIVER_CASH","applicableReasons","success","eventCode","submitOutput","setResponse","_prevState","setShowAlert","totalAmountArr","getTotalAmountMWI","finalValue","map","Number","reduce","sum","num","toFixed","_mergedObjectiveId$","splitArr","split","isSelfLoopExistOnET","error","showAlert","sResponse","etOutput","navigateToNextTask","createElement","style","flex","visible","label","_extends","isSelfLoop","onSubmitET","onSubmit"],"sources":["DropCashScreen.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport withBaseDispatchScreen from './WithBaseDispatchScreen';\nimport type { BaseETProps } from '../../models/DispatchModels';\nimport { SLDropCash } from '../../components/executiontasks/ExecutionTasksIndex';\nimport { EntityCode, ExecutionTaskID } from '../../models/execTasks/ETConfig';\nimport DispatchStateContainer from '../../manager/dispatch/DispatchStateContainer';\nimport { RouteParams, getDataFromNextState } from '../uiConfig/RouteParams';\nimport type { ETAmount } from '../../components/executiontasks/payments/init/InitPaymentSchema';\nimport { View } from 'react-native';\nimport CancelOrderDialog from '../../components/widgets/CancelOrderDialog';\nimport { getBaseETResponse, onTaskStart } from '../../utils/ExecTaskUtils';\n\nimport { DispatchExecutor } from '@os1-platform/platform-coreos-execution-engine-sdk';\nimport { GO_BACK_EVENT_CODE } from '../../constants/constants';\nimport Helper from '../../utils/helper';\n//{ fireEventWithScreenName } from 'src/analytics/sentry/SentryAnalyticsUtils';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../analytics/sentry/SentryAnalyticsUtils';\nimport ProgressDialog from '../../components/widgets/ProgressDialog';\nimport { getEventCodeByET } from '../../manager/dispatchCodes/EventCodeContainer';\n\n// OLD CODE\n// function getTotalExpected(nextStates: any[]): ETAmount {\n// let totalAmount = 0;\n// for (const s of nextStates) {\n// totalAmount += s.nextState.data.input.expectedAmount.value;\n// }\n// return {\n// value: totalAmount,\n// minorUnit: nextStates[0].nextState.data.input.expectedAmount.minorUnit,\n// currencyCode:\n// nextStates[0].nextState.data.input.expectedAmount.currencyCode,\n// };\n// }\n\nconst DropCashScreen = ({\n route,\n navigation,\n baseETProps,\n}: {\n route: any;\n navigation: any;\n baseETProps: BaseETProps;\n}) => {\n const [loading, setLoading] = useState(false);\n\n const helperInstance = Helper.getInstance();\n const nextState = route.params[RouteParams.NEXT_STATES];\n const { taskMeta, mergedObjectiveId, input, wfMeta, taskName } =\n getDataFromNextState(nextState);\n\n const [expectedAmount, setExpectedAmount] = useState<ETAmount>({\n value: 1,\n minorUnit: input.expectedAmount.minorUnit,\n currencyCode: input.expectedAmount.currencyCode,\n });\n const [isSelfLoopTrue, setSelfLoop] = useState(false);\n\n useEffect(() => {\n (async () => {\n //fire sentry event\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.RETURN_CASH_ET_OPENED, screenName: ScreenNameSdkConstants.RETURN_CASH_ET_SCREEN });\n // \n onTaskStart(\n nextState,\n route.params[RouteParams.ROOT_META_DATA].customEventsData\n );\n getTotalExpected();\n await getSelfLoopBool();\n })();\n }, [])\n\n useEffect(() => {\n (async () => {\n console.log(\"expectedAmount:\", expectedAmount);\n if (expectedAmount.value === 0) {\n // setLoading(true);\n let dropCashETOutput = {\n amount: {\n value: expectedAmount.value,\n currencyCode: expectedAmount.currencyCode,\n minorUnit: expectedAmount.minorUnit,\n },\n ...(await getBaseETResponse(\n EntityCode.DELIVER_CASH,\n true,\n getEventCodeByET(\n ExecutionTaskID.DELIVER_CASH,\n true,\n input.applicableReasons?.success\n ),\n '',\n mergedObjectiveId,\n ExecutionTaskID.DELIVER_CASH\n )),\n }\n if (dropCashETOutput.success || dropCashETOutput.eventCode == GO_BACK_EVENT_CODE) {\n await submitOutput(dropCashETOutput);\n } else {\n setResponse((_prevState: any) => {\n setShowAlert(true);\n return dropCashETOutput;\n });\n }\n // setLoading(false);\n }\n })();\n }, [expectedAmount.value])\n\n\n\n const getTotalExpected = async () => {\n const totalAmountArr: any[] = await DispatchExecutor.getTotalAmountMWI(mergedObjectiveId);\n let finalValue = totalAmountArr.map(Number).reduce((sum, num) => sum + num, 0).toFixed(2);\n setExpectedAmount({ ...expectedAmount, value: Number(finalValue) });\n };\n\n const getSelfLoopBool = async () => {\n try {\n const splitArr = mergedObjectiveId[0]?.split('#');\n const isSelfLoopTrue: boolean = await helperInstance.isSelfLoopExistOnET(splitArr[1], taskName)\n setSelfLoop(isSelfLoopTrue);\n console.log('isSelfLoopTrue code execution successful!');\n } catch (error) {\n console.log('isSelfLoopTrue code execution error', error);\n }\n }\n\n const [showAlert, setShowAlert] = useState(false);\n const [sResponse, setResponse] = useState<any>();\n const submitOutput = useCallback(\n async (etOutput: any) => {\n await DispatchStateContainer.getInstance().navigateToNextTask(\n navigation,\n route,\n etOutput,\n etOutput.success,\n EntityCode.DELIVER_CASH,\n ExecutionTaskID.DELIVER_CASH,\n baseETProps,\n false\n );\n },\n [baseETProps, navigation, route]\n );\n\n return (\n <View style={{ flex: 1 }}>\n {expectedAmount.value === 0 ? <View><ProgressDialog visible={loading} label={'Please wait...'} /></View> :\n <SLDropCash\n {...input}\n expectedAmount={expectedAmount}\n isSelfLoop={isSelfLoopTrue}\n navigation={navigation}\n mergedObjectiveId={mergedObjectiveId}\n taskMeta={taskMeta}\n onSubmitET={async (etOutput) => {\n if (etOutput.success || etOutput.eventCode == GO_BACK_EVENT_CODE) {\n await submitOutput(etOutput);\n } else {\n setResponse((_prevState: any) => {\n setShowAlert(true);\n return etOutput;\n });\n }\n }}\n />\n }\n\n <CancelOrderDialog\n visible={showAlert}\n onSubmit={async (value) => {\n if (value) {\n setShowAlert(false);\n await submitOutput(sResponse);\n } else {\n setShowAlert(false);\n }\n }}\n />\n </View>\n );\n};\nexport default withBaseDispatchScreen(DropCashScreen);\n"],"mappings":"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","ignoreList":[]}
@@ -80,6 +80,8 @@ export function getEntityCodeByET(etId) {
80
80
  return EntityCode.PROCESS_PAYMENT;
81
81
  case ExecutionTaskID.COMPLETE_PAYMENT:
82
82
  return EntityCode.COMPLETE_PAYMENT;
83
+ case ExecutionTaskID.COLLECT_PAYMENT_ET:
84
+ return EntityCode.COLLECT_PAYMENT_ET;
83
85
  case ExecutionTaskID.DELIVER_CASH:
84
86
  return EntityCode.DELIVER_CASH;
85
87
  case ExecutionTaskID.VERIFY_INPUT:
@@ -1 +1 @@
1
- {"version":3,"names":["LocationManager","DispatchSdkCache","EntityCode","ExecutionTaskID","dispatchEvent","JSONPath","getBaseETResponse","entityCode","success","eventCode","reasonCode","mergedObjectiveIds","taskId","lastLocation","getInstance","getLastLocation","console","log","JSON","stringify","cache","sdkConfig","getObjectFromCache","KEYS","SDK_CONFIG","startTime","TASK_START_TIME","startLocation","TASK_START_LOCATION","baseResponse","id","meta","latitude","longitude","endLocation","userDetails","userID","name","userName","parseInt","Date","now","endTime","getObjectiveCompleteResp","mergedObjectiveId","completeResponse","getEntityCodeByET","etId","CAPTURE_INPUT","IMAGE_CAPTURE","DELIVER","DOODLE","FORMS","SCAN","DISPLAY","PICKUP","START_WORKFLOW","VERIFY_LOCATION","COMPLETED_FAILURE","COMPLETED_SUCCESS","INIT_PAYMENT","PROCESS_PAYMENT","COMPLETE_PAYMENT","DELIVER_CASH","VERIFY_INPUT","VALIDATE_OTP_ET","onTaskStart","eventData","customData","triggerEvent","keys","location","setKeyInCache","toString","CURRENT_WORKING_TASK_ID","setObjectInCache","customEtName","taskName","eventOutputData","etData","input","timestamp","onClickEvent","eventName","additionalData","isLeafData","value","isDynamicValue","charAt","length","handleDynamicValues","jsonInput","dataBlob","key","path","substring","output","json","outputResp","pop","Array","isArray","dynamicVal","filter","_val","shift","map","val","parseRequestBody","body","userInput","requestBody","parse","preprocessUserInput","Object","prototype","hasOwnProperty","call","includes","otp","item","preprocessedBody","resolvedBody","maskContact","contact","domain","split","maskedName","visibleDigits","maskedPart","repeat","Math","max","visiblePart","slice"],"sources":["ExecTaskUtils.ts"],"sourcesContent":["import type { BaseETResponse } from '../models/execTasks/ETBaseModels';\nimport LocationManager from '../manager/location/LocationManager';\nimport DispatchSdkCache from '../manager/sdk/DispatchSdkCache';\nimport type { CompletedWFResponse } from '../components/executiontasks/CompletedWFSchema';\nimport { EntityCode, ExecutionTaskID } from '../models/execTasks/ETConfig';\nimport type { EventRow } from '../manager/syncmanager/DBConfig';\nimport type { DispatchSDKConfig } from '../models/sdk';\nimport dispatchEvent from '../events/EventDispatcher';\nimport type { clickEvent, startEvent } from '../models/DispatchModels';\nimport { JSONPath } from 'jsonpath-plus';\nimport { IDispatch } from '@os1-platform/platform-coreos-execution-engine-sdk';\nimport { last } from 'lodash';\n\nexport async function getBaseETResponse(\n entityCode: string,\n success: boolean,\n eventCode: string,\n reasonCode: string,\n mergedObjectiveIds: Array<string>,\n taskId: ExecutionTaskID\n): Promise<BaseETResponse> {\n let lastLocation = await LocationManager.getInstance().getLastLocation();\n console.log(\"getBaseETResponse:lastLocation:\",JSON.stringify(lastLocation))\n\n let cache = DispatchSdkCache.getInstance();\n const sdkConfig = (await cache.getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n const startTime = await cache.getObjectFromCache(\n DispatchSdkCache.KEYS.TASK_START_TIME\n );\n const startLocation = await cache.getObjectFromCache(\n DispatchSdkCache.KEYS.TASK_START_LOCATION\n );\n console.log('getBaseETResponse:startLocation:', startLocation);\n let baseResponse: BaseETResponse = {\n entityCode: entityCode,\n success: success,\n eventCode: eventCode,\n reasonCode: reasonCode,\n id: taskId,\n meta: {\n startLocation: {\n latitude: startLocation.latitude,\n longitude: startLocation.longitude,\n },\n endLocation: {\n latitude: lastLocation.latitude,\n longitude: lastLocation.longitude,\n },\n // location: {\n // latitude: location.latitude,\n // longitude: location.longitude,\n // },\n userDetails: {\n id: sdkConfig?.userID ?? '',\n name: sdkConfig?.userName ?? '',\n },\n startTime: startTime ? parseInt(startTime) : Date.now(),\n endTime: Date.now(),\n },\n mergedObjectiveIds,\n };\n console.log('getBaseETResponse:baseResponse:', JSON.stringify(baseResponse));\n\n return baseResponse;\n}\n\nexport async function getObjectiveCompleteResp(\n entityCode: string,\n success: boolean,\n eventCode: string,\n reasonCode: string,\n mergedObjectiveId: Array<string>,\n taskId: ExecutionTaskID\n) {\n let completeResponse: CompletedWFResponse = {\n ...(await getBaseETResponse(\n entityCode,\n success,\n eventCode,\n reasonCode,\n mergedObjectiveId,\n taskId\n )),\n };\n return completeResponse;\n}\nexport function getEntityCodeByET(etId: string): string {\n switch (etId) {\n case ExecutionTaskID.CAPTURE_INPUT:\n return EntityCode.CAPTURE_INPUT;\n case ExecutionTaskID.IMAGE_CAPTURE:\n return EntityCode.IMAGE_CAPTURE;\n case ExecutionTaskID.DELIVER:\n return EntityCode.DELIVER;\n case ExecutionTaskID.DOODLE:\n return EntityCode.DOODLE;\n case ExecutionTaskID.FORMS:\n return EntityCode.FORMS;\n case ExecutionTaskID.SCAN:\n return EntityCode.SCAN;\n case ExecutionTaskID.DISPLAY:\n return EntityCode.DISPLAY;\n case ExecutionTaskID.PICKUP:\n return EntityCode.PICKUP;\n case ExecutionTaskID.START_WORKFLOW:\n return EntityCode.START_WORKFLOW;\n case ExecutionTaskID.VERIFY_LOCATION:\n return EntityCode.VERIFY_LOCATION;\n case ExecutionTaskID.COMPLETED_FAILURE:\n return EntityCode.COMPLETED_FAILURE;\n case ExecutionTaskID.COMPLETED_SUCCESS:\n return EntityCode.COMPLETED_SUCCESS;\n case ExecutionTaskID.INIT_PAYMENT:\n return EntityCode.INIT_PAYMENT;\n case ExecutionTaskID.PROCESS_PAYMENT:\n return EntityCode.PROCESS_PAYMENT;\n case ExecutionTaskID.COMPLETE_PAYMENT:\n return EntityCode.COMPLETE_PAYMENT;\n case ExecutionTaskID.DELIVER_CASH:\n return EntityCode.DELIVER_CASH;\n case ExecutionTaskID.VERIFY_INPUT:\n return EntityCode.VERIFY_INPUT;\n case ExecutionTaskID.VALIDATE_OTP_ET:\n return EntityCode.VALIDATE_OTP_ET;\n default:\n return 'NO_ENTITY_CODE_FOUND';\n }\n}\n\n// export function checkForImagesInEvents(eventRow: EventRow) {\n// console.log(eventRow);\n// }\n\n/**\n * This function will be called on start of every execution task and is being used in ET screens components.\n * @param eventData nextState: state | objRef: string | jobId: string\n */\n\nexport function onTaskStart(\n eventData: IDispatch.IExecutionTaskQueryResponse,\n customData: any,\n triggerEvent = true\n) {\n const keys = DispatchSdkCache.KEYS;\n const cache = DispatchSdkCache.getInstance();\n (async () => {\n let lastLocation = await LocationManager.getInstance().getLastLocation();\n console.log(\"onTaskStart:lastLocation:\",JSON.stringify(lastLocation));\n let location = {\n latitude: lastLocation.latitude,\n longitude: lastLocation.longitude,\n }\n await cache.setKeyInCache(keys.TASK_START_TIME, Date.now().toString());\n await cache.setKeyInCache(keys.CURRENT_WORKING_TASK_ID, eventData.taskId);\n await cache.setObjectInCache(keys.TASK_START_LOCATION, location);\n })();\n if (triggerEvent) {\n const customEtName = eventData.taskName;\n const eventOutputData: startEvent = {\n etData: eventData.input,\n taskId: eventData.taskId,\n timestamp: Date.now(),\n customData,\n };\n /* eventData[0].groupId\n ? (eventOutputData['groupId'] = eventData[0].groupId)\n : null; */\n\n /* eventData.forEach((objItem: stateWithObjRef) => {\n eventOutputData.etData[objItem.jobId] = {\n ...(objItem.nextState.data.input || {}),\n workflowInstanceId: objItem.nextState.workflowInstanceId,\n additionalData: objItem?.additionalData || {},\n };\n }); */\n dispatchEvent('START', customEtName, eventOutputData);\n }\n}\n\nexport function onClickEvent(\n eventName: string,\n eventData: IDispatch.IExecutionTaskQueryResponse,\n customData: any,\n additionalData: any,\n triggerEvent = true\n) {\n if (triggerEvent) {\n const customEtName = eventData.taskName;\n const eventOutputData: clickEvent = {\n etData: eventData.input,\n taskId: eventData.taskId,\n timestamp: Date.now(),\n customData,\n additionalData,\n };\n dispatchEvent('ON_CLICK', eventName + ':' + customEtName, eventOutputData);\n }\n}\n\nconst isLeafData = (value: any) => {\n switch (typeof value) {\n case 'boolean':\n case 'number':\n return true;\n default:\n return false;\n }\n};\nconst isDynamicValue = function (input: string) {\n if (\n input.charAt(0) === '{' &&\n input.charAt(1) === '{' &&\n input.charAt(input.length - 1) === '}' &&\n input.charAt(input.length - 2) === '}'\n )\n return true;\n else return false;\n};\n\nexport function handleDynamicValues(jsonInput: any, dataBlob: any) {\n for (const key in jsonInput) {\n let value = jsonInput[key];\n if (!isLeafData(value)) {\n if (value && typeof value === 'string' && isDynamicValue(value)) {\n const path = value.substring(2, value.length - 2);\n const output = JSONPath({\n json: dataBlob,\n path,\n });\n const outputResp = output.pop();\n if (outputResp) jsonInput[key] = outputResp;\n } else if (typeof value === 'object') {\n if (Array.isArray(value)) {\n if (typeof value[0] === 'string') {\n const dynamicVal = value.filter((_val) => isDynamicValue(_val));\n if (dynamicVal.length) {\n const path = dynamicVal[0].substring(2, dynamicVal[0].length - 2);\n const output = JSONPath({\n json: dataBlob,\n path,\n });\n\n let outputResp = output.pop();\n if (outputResp) {\n value.shift();\n if (\n Array.isArray(outputResp) &&\n value &&\n Array.isArray(value)\n ) {\n jsonInput[key] = [...outputResp, ...value];\n } else jsonInput[key] = outputResp;\n }\n }\n } else if (typeof value[0] === 'object') {\n jsonInput[key] = value.map((val) => {\n val = handleDynamicValues(val, dataBlob);\n return val;\n });\n }\n } else handleDynamicValues(value, dataBlob);\n }\n }\n }\n return jsonInput;\n}\n\nexport function parseRequestBody(body: any, userInput: any) {\n const requestBody = JSON.parse(JSON.stringify(body)); // Deep clone the input\n\n // Preprocess `userInput` placeholders before calling handleDynamicValues\n const preprocessUserInput = (jsonInput: any) => {\n for (const key in jsonInput) {\n if (Object.prototype.hasOwnProperty.call(jsonInput, key)) {\n const value = jsonInput[key];\n\n if (typeof value === 'string' && value.includes('{{$.userInput}}')) {\n // Replace `{{$.userInput}}` with the OTP value from userInput\n jsonInput[key] = userInput.otp || value;\n } else if (typeof value === 'object' && value !== null) {\n // Recursively preprocess nested objects\n preprocessUserInput(value);\n } else if (Array.isArray(value)) {\n // Recursively preprocess arrays\n jsonInput[key] = value.map((item) => {\n if (typeof item === 'string' && item.includes('{{$.userInput}}')) {\n return userInput.otp || userInput.input || item;\n } else if (\n typeof item === 'string' &&\n item.includes('{{$.inputs.userInput}}')\n ) {\n return userInput.input || item;\n } else if (typeof item === 'object' && item !== null) {\n preprocessUserInput(item);\n return item;\n }\n return item;\n });\n }\n }\n }\n return jsonInput;\n };\n\n // Step 1: Preprocess the body for `{{$.userInput}}`\n const preprocessedBody = preprocessUserInput(requestBody);\n\n // Step 2: Pass the preprocessed body to `handleDynamicValues`\n const resolvedBody = handleDynamicValues(preprocessedBody, userInput);\n\n return resolvedBody;\n}\n\n// old masking\n// export const maskContact = (contact: string) => {\n// if (contact && contact?.includes('@')) {\n// const [name, domain] = contact.split('@');\n// const maskedName = name.substring(0, 3) + '****';\n// const maskedEmail = maskedName + '@' + domain;\n// return maskedEmail;\n// } else {\n// return `${contact && contact.slice(0, 2)}****${contact.slice(-4)}`;\n// }\n// };\nexport const maskContact = (contact: string) => {\n if (contact && contact.includes('@')) {\n const [name, domain] = contact.split('@');\n let maskedName;\n if (name.length <= 2) {\n maskedName = name.substring(0, 1) + '*****';\n } else {\n maskedName = name.substring(0, 2) + '*****';\n }\n return maskedName + '@' + domain;\n } else {\n const visibleDigits = 4;\n const maskedPart = '*'.repeat(Math.max(contact.length - visibleDigits, 0));\n const visiblePart = contact.slice(-visibleDigits);\n return maskedPart + visiblePart;\n }\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["LocationManager","DispatchSdkCache","EntityCode","ExecutionTaskID","dispatchEvent","JSONPath","getBaseETResponse","entityCode","success","eventCode","reasonCode","mergedObjectiveIds","taskId","lastLocation","getInstance","getLastLocation","console","log","JSON","stringify","cache","sdkConfig","getObjectFromCache","KEYS","SDK_CONFIG","startTime","TASK_START_TIME","startLocation","TASK_START_LOCATION","baseResponse","id","meta","latitude","longitude","endLocation","userDetails","userID","name","userName","parseInt","Date","now","endTime","getObjectiveCompleteResp","mergedObjectiveId","completeResponse","getEntityCodeByET","etId","CAPTURE_INPUT","IMAGE_CAPTURE","DELIVER","DOODLE","FORMS","SCAN","DISPLAY","PICKUP","START_WORKFLOW","VERIFY_LOCATION","COMPLETED_FAILURE","COMPLETED_SUCCESS","INIT_PAYMENT","PROCESS_PAYMENT","COMPLETE_PAYMENT","COLLECT_PAYMENT_ET","DELIVER_CASH","VERIFY_INPUT","VALIDATE_OTP_ET","onTaskStart","eventData","customData","triggerEvent","keys","location","setKeyInCache","toString","CURRENT_WORKING_TASK_ID","setObjectInCache","customEtName","taskName","eventOutputData","etData","input","timestamp","onClickEvent","eventName","additionalData","isLeafData","value","isDynamicValue","charAt","length","handleDynamicValues","jsonInput","dataBlob","key","path","substring","output","json","outputResp","pop","Array","isArray","dynamicVal","filter","_val","shift","map","val","parseRequestBody","body","userInput","requestBody","parse","preprocessUserInput","Object","prototype","hasOwnProperty","call","includes","otp","item","preprocessedBody","resolvedBody","maskContact","contact","domain","split","maskedName","visibleDigits","maskedPart","repeat","Math","max","visiblePart","slice"],"sources":["ExecTaskUtils.ts"],"sourcesContent":["import type { BaseETResponse } from '../models/execTasks/ETBaseModels';\nimport LocationManager from '../manager/location/LocationManager';\nimport DispatchSdkCache from '../manager/sdk/DispatchSdkCache';\nimport type { CompletedWFResponse } from '../components/executiontasks/CompletedWFSchema';\nimport { EntityCode, ExecutionTaskID } from '../models/execTasks/ETConfig';\nimport type { EventRow } from '../manager/syncmanager/DBConfig';\nimport type { DispatchSDKConfig } from '../models/sdk';\nimport dispatchEvent from '../events/EventDispatcher';\nimport type { clickEvent, startEvent } from '../models/DispatchModels';\nimport { JSONPath } from 'jsonpath-plus';\nimport { IDispatch } from '@os1-platform/platform-coreos-execution-engine-sdk';\nimport { last } from 'lodash';\n\nexport async function getBaseETResponse(\n entityCode: string,\n success: boolean,\n eventCode: string,\n reasonCode: string,\n mergedObjectiveIds: Array<string>,\n taskId: ExecutionTaskID\n): Promise<BaseETResponse> {\n let lastLocation = await LocationManager.getInstance().getLastLocation();\n console.log(\"getBaseETResponse:lastLocation:\",JSON.stringify(lastLocation))\n\n let cache = DispatchSdkCache.getInstance();\n const sdkConfig = (await cache.getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n const startTime = await cache.getObjectFromCache(\n DispatchSdkCache.KEYS.TASK_START_TIME\n );\n const startLocation = await cache.getObjectFromCache(\n DispatchSdkCache.KEYS.TASK_START_LOCATION\n );\n console.log('getBaseETResponse:startLocation:', startLocation);\n let baseResponse: BaseETResponse = {\n entityCode: entityCode,\n success: success,\n eventCode: eventCode,\n reasonCode: reasonCode,\n id: taskId,\n meta: {\n startLocation: {\n latitude: startLocation.latitude,\n longitude: startLocation.longitude,\n },\n endLocation: {\n latitude: lastLocation.latitude,\n longitude: lastLocation.longitude,\n },\n // location: {\n // latitude: location.latitude,\n // longitude: location.longitude,\n // },\n userDetails: {\n id: sdkConfig?.userID ?? '',\n name: sdkConfig?.userName ?? '',\n },\n startTime: startTime ? parseInt(startTime) : Date.now(),\n endTime: Date.now(),\n },\n mergedObjectiveIds,\n };\n console.log('getBaseETResponse:baseResponse:', JSON.stringify(baseResponse));\n\n return baseResponse;\n}\n\nexport async function getObjectiveCompleteResp(\n entityCode: string,\n success: boolean,\n eventCode: string,\n reasonCode: string,\n mergedObjectiveId: Array<string>,\n taskId: ExecutionTaskID\n) {\n let completeResponse: CompletedWFResponse = {\n ...(await getBaseETResponse(\n entityCode,\n success,\n eventCode,\n reasonCode,\n mergedObjectiveId,\n taskId\n )),\n };\n return completeResponse;\n}\nexport function getEntityCodeByET(etId: string): string {\n switch (etId) {\n case ExecutionTaskID.CAPTURE_INPUT:\n return EntityCode.CAPTURE_INPUT;\n case ExecutionTaskID.IMAGE_CAPTURE:\n return EntityCode.IMAGE_CAPTURE;\n case ExecutionTaskID.DELIVER:\n return EntityCode.DELIVER;\n case ExecutionTaskID.DOODLE:\n return EntityCode.DOODLE;\n case ExecutionTaskID.FORMS:\n return EntityCode.FORMS;\n case ExecutionTaskID.SCAN:\n return EntityCode.SCAN;\n case ExecutionTaskID.DISPLAY:\n return EntityCode.DISPLAY;\n case ExecutionTaskID.PICKUP:\n return EntityCode.PICKUP;\n case ExecutionTaskID.START_WORKFLOW:\n return EntityCode.START_WORKFLOW;\n case ExecutionTaskID.VERIFY_LOCATION:\n return EntityCode.VERIFY_LOCATION;\n case ExecutionTaskID.COMPLETED_FAILURE:\n return EntityCode.COMPLETED_FAILURE;\n case ExecutionTaskID.COMPLETED_SUCCESS:\n return EntityCode.COMPLETED_SUCCESS;\n case ExecutionTaskID.INIT_PAYMENT:\n return EntityCode.INIT_PAYMENT;\n case ExecutionTaskID.PROCESS_PAYMENT:\n return EntityCode.PROCESS_PAYMENT;\n case ExecutionTaskID.COMPLETE_PAYMENT:\n return EntityCode.COMPLETE_PAYMENT;\n case ExecutionTaskID.COLLECT_PAYMENT_ET:\n return EntityCode.COLLECT_PAYMENT_ET;\n case ExecutionTaskID.DELIVER_CASH:\n return EntityCode.DELIVER_CASH;\n case ExecutionTaskID.VERIFY_INPUT:\n return EntityCode.VERIFY_INPUT;\n case ExecutionTaskID.VALIDATE_OTP_ET:\n return EntityCode.VALIDATE_OTP_ET;\n default:\n return 'NO_ENTITY_CODE_FOUND';\n }\n}\n\n// export function checkForImagesInEvents(eventRow: EventRow) {\n// console.log(eventRow);\n// }\n\n/**\n * This function will be called on start of every execution task and is being used in ET screens components.\n * @param eventData nextState: state | objRef: string | jobId: string\n */\n\nexport function onTaskStart(\n eventData: IDispatch.IExecutionTaskQueryResponse,\n customData: any,\n triggerEvent = true\n) {\n const keys = DispatchSdkCache.KEYS;\n const cache = DispatchSdkCache.getInstance();\n (async () => {\n let lastLocation = await LocationManager.getInstance().getLastLocation();\n console.log(\"onTaskStart:lastLocation:\",JSON.stringify(lastLocation));\n let location = {\n latitude: lastLocation.latitude,\n longitude: lastLocation.longitude,\n }\n await cache.setKeyInCache(keys.TASK_START_TIME, Date.now().toString());\n await cache.setKeyInCache(keys.CURRENT_WORKING_TASK_ID, eventData.taskId);\n await cache.setObjectInCache(keys.TASK_START_LOCATION, location);\n })();\n if (triggerEvent) {\n const customEtName = eventData.taskName;\n const eventOutputData: startEvent = {\n etData: eventData.input,\n taskId: eventData.taskId,\n timestamp: Date.now(),\n customData,\n };\n /* eventData[0].groupId\n ? (eventOutputData['groupId'] = eventData[0].groupId)\n : null; */\n\n /* eventData.forEach((objItem: stateWithObjRef) => {\n eventOutputData.etData[objItem.jobId] = {\n ...(objItem.nextState.data.input || {}),\n workflowInstanceId: objItem.nextState.workflowInstanceId,\n additionalData: objItem?.additionalData || {},\n };\n }); */\n dispatchEvent('START', customEtName, eventOutputData);\n }\n}\n\nexport function onClickEvent(\n eventName: string,\n eventData: IDispatch.IExecutionTaskQueryResponse,\n customData: any,\n additionalData: any,\n triggerEvent = true\n) {\n if (triggerEvent) {\n const customEtName = eventData.taskName;\n const eventOutputData: clickEvent = {\n etData: eventData.input,\n taskId: eventData.taskId,\n timestamp: Date.now(),\n customData,\n additionalData,\n };\n dispatchEvent('ON_CLICK', eventName + ':' + customEtName, eventOutputData);\n }\n}\n\nconst isLeafData = (value: any) => {\n switch (typeof value) {\n case 'boolean':\n case 'number':\n return true;\n default:\n return false;\n }\n};\nconst isDynamicValue = function (input: string) {\n if (\n input.charAt(0) === '{' &&\n input.charAt(1) === '{' &&\n input.charAt(input.length - 1) === '}' &&\n input.charAt(input.length - 2) === '}'\n )\n return true;\n else return false;\n};\n\nexport function handleDynamicValues(jsonInput: any, dataBlob: any) {\n for (const key in jsonInput) {\n let value = jsonInput[key];\n if (!isLeafData(value)) {\n if (value && typeof value === 'string' && isDynamicValue(value)) {\n const path = value.substring(2, value.length - 2);\n const output = JSONPath({\n json: dataBlob,\n path,\n });\n const outputResp = output.pop();\n if (outputResp) jsonInput[key] = outputResp;\n } else if (typeof value === 'object') {\n if (Array.isArray(value)) {\n if (typeof value[0] === 'string') {\n const dynamicVal = value.filter((_val) => isDynamicValue(_val));\n if (dynamicVal.length) {\n const path = dynamicVal[0].substring(2, dynamicVal[0].length - 2);\n const output = JSONPath({\n json: dataBlob,\n path,\n });\n\n let outputResp = output.pop();\n if (outputResp) {\n value.shift();\n if (\n Array.isArray(outputResp) &&\n value &&\n Array.isArray(value)\n ) {\n jsonInput[key] = [...outputResp, ...value];\n } else jsonInput[key] = outputResp;\n }\n }\n } else if (typeof value[0] === 'object') {\n jsonInput[key] = value.map((val) => {\n val = handleDynamicValues(val, dataBlob);\n return val;\n });\n }\n } else handleDynamicValues(value, dataBlob);\n }\n }\n }\n return jsonInput;\n}\n\nexport function parseRequestBody(body: any, userInput: any) {\n const requestBody = JSON.parse(JSON.stringify(body)); // Deep clone the input\n\n // Preprocess `userInput` placeholders before calling handleDynamicValues\n const preprocessUserInput = (jsonInput: any) => {\n for (const key in jsonInput) {\n if (Object.prototype.hasOwnProperty.call(jsonInput, key)) {\n const value = jsonInput[key];\n\n if (typeof value === 'string' && value.includes('{{$.userInput}}')) {\n // Replace `{{$.userInput}}` with the OTP value from userInput\n jsonInput[key] = userInput.otp || value;\n } else if (typeof value === 'object' && value !== null) {\n // Recursively preprocess nested objects\n preprocessUserInput(value);\n } else if (Array.isArray(value)) {\n // Recursively preprocess arrays\n jsonInput[key] = value.map((item) => {\n if (typeof item === 'string' && item.includes('{{$.userInput}}')) {\n return userInput.otp || userInput.input || item;\n } else if (\n typeof item === 'string' &&\n item.includes('{{$.inputs.userInput}}')\n ) {\n return userInput.input || item;\n } else if (typeof item === 'object' && item !== null) {\n preprocessUserInput(item);\n return item;\n }\n return item;\n });\n }\n }\n }\n return jsonInput;\n };\n\n // Step 1: Preprocess the body for `{{$.userInput}}`\n const preprocessedBody = preprocessUserInput(requestBody);\n\n // Step 2: Pass the preprocessed body to `handleDynamicValues`\n const resolvedBody = handleDynamicValues(preprocessedBody, userInput);\n\n return resolvedBody;\n}\n\n// old masking\n// export const maskContact = (contact: string) => {\n// if (contact && contact?.includes('@')) {\n// const [name, domain] = contact.split('@');\n// const maskedName = name.substring(0, 3) + '****';\n// const maskedEmail = maskedName + '@' + domain;\n// return maskedEmail;\n// } else {\n// return `${contact && contact.slice(0, 2)}****${contact.slice(-4)}`;\n// }\n// };\nexport const maskContact = (contact: string) => {\n if (contact && contact.includes('@')) {\n const [name, domain] = contact.split('@');\n let maskedName;\n if (name.length <= 2) {\n maskedName = name.substring(0, 1) + '*****';\n } else {\n maskedName = name.substring(0, 2) + '*****';\n }\n return maskedName + '@' + domain;\n } else {\n const visibleDigits = 4;\n const maskedPart = '*'.repeat(Math.max(contact.length - visibleDigits, 0));\n const visiblePart = contact.slice(-visibleDigits);\n return maskedPart + visiblePart;\n }\n};\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@os1-platform/dispatch-mobile",
3
- "version": "3.1.1",
3
+ "version": "3.1.2",
4
4
  "description": "Dispatch SDK React Native Package",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -132,8 +132,8 @@
132
132
  "peerDependencies": {
133
133
  "@apollo/client": "^3.5.6",
134
134
  "@expo-google-fonts/ibm-plex-sans": "*",
135
- "@react-native-async-storage/async-storage": "^1.15.14",
136
- "@react-native-community/datetimepicker": "^3.5.2",
135
+ "@react-native-async-storage/async-storage": ">=1.18.2",
136
+ "@react-native-community/datetimepicker": ">=7.2.0",
137
137
  "@react-native-community/netinfo": "^6.0.2",
138
138
  "@react-native-community/slider": "^4.1.7",
139
139
  "@react-native-firebase/analytics": "20.1.0",
@@ -167,7 +167,7 @@
167
167
  "react-native-vector-icons": "^9.0.0"
168
168
  },
169
169
  "dependencies": {
170
- "@os1-platform/platform-coreos-execution-engine-sdk": "1.1.0",
170
+ "@os1-platform/platform-coreos-execution-engine-sdk": "1.1.1",
171
171
  "@rjsf/core": "^2.0.0",
172
172
  "apollo-link-timeout": "^4.0.0",
173
173
  "decompress": "^4.2.1",
@@ -32,7 +32,7 @@ import { RouteParams } from '../../ui/uiConfig/RouteParams';
32
32
  import { debounce } from 'lodash';
33
33
  import dispatchEvent from '../../events/EventDispatcher';
34
34
  import EventCodeContainer from '../dispatchCodes/EventCodeContainer';
35
- import { GO_BACK_EVENT_CODE, REASON_NOT_USED } from '../../constants/constants';
35
+ import { GO_BACK_EVENT_CODE, REASON_NOT_USED, RETRY_LIMIT_REACHED_CODE } from '../../constants/constants';
36
36
  import AppSyncManager from '../syncmanager/AppSyncManager';
37
37
  import { DispatchExecutor } from '@os1-platform/platform-coreos-execution-engine-sdk';
38
38
 
@@ -555,6 +555,8 @@ export default class DispatchStateContainer {
555
555
  navigation.replace(CustomScreens.REMARK_SCREEN, rParams);
556
556
  } else {
557
557
  if (_eventCode === GO_BACK_EVENT_CODE) failureCodes = [];
558
+ else if (etOutput.reasonCode === RETRY_LIMIT_REACHED_CODE)
559
+ failureCodes = [];
558
560
  else
559
561
  failureCodes = await reasonsContainer.getReasonCodes(
560
562
  route.params[RouteParams.NEXT_STATES].input.applicableReasons
@@ -638,11 +638,10 @@ export default class ETEventsManager {
638
638
  async getRowToSync(id: string, dispatchId: string): Promise<EventRow[]> {
639
639
  const sqlResult = await Database.executeQuery(
640
640
  `SELECT * from ${EVENTS_TABLE}\
641
- WHERE ${EVENTS_COLUMNS.ID} = ? and \
642
- ${EVENTS_COLUMNS.DISPATCH_ID} = ? and \
641
+ WHERE ${EVENTS_COLUMNS.DISPATCH_ID} = ? and \
643
642
  ${EVENTS_COLUMNS.SYNCED} = 0 \
644
643
  ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,
645
- [id, dispatchId]
644
+ [dispatchId]
646
645
  );
647
646
  return sqlResult.rows._array;
648
647
  }
@@ -654,11 +653,11 @@ export default class ETEventsManager {
654
653
  (SELECT *, \
655
654
  (SELECT SUM(${EVENTS_COLUMNS.DATA_LENGTH}) \
656
655
  FROM ${EVENTS_TABLE} \
657
- WHERE id <= t.id and ${EVENTS_COLUMNS.ID} > ${id} and ${EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 \
656
+ WHERE ${EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 \
658
657
  ) total \
659
658
  FROM ${EVENTS_TABLE} t \
660
659
  ) q \
661
- WHERE total <= ${BULK_DATA_LIMIT} \
660
+ WHERE ${EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 and total <= ${BULK_DATA_LIMIT} \
662
661
  ORDER BY ${EVENTS_COLUMNS.ID};`;
663
662
 
664
663
  const sqlResult = await Database.executeQuery(query, []);
@@ -668,11 +667,11 @@ export default class ETEventsManager {
668
667
  (SELECT *, \
669
668
  (SELECT SUM(${EVENTS_COLUMNS.DATA_LENGTH}) \
670
669
  FROM ${EVENTS_TABLE} \
671
- WHERE id <= t.id and ${EVENTS_COLUMNS.ID} > ${id} and ${EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 and ${EVENTS_COLUMNS.ATTEMPT_COUNT} < ${MAX_RETRY_COUNT} \
670
+ WHERE ${EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 and ${EVENTS_COLUMNS.ATTEMPT_COUNT} < ${MAX_RETRY_COUNT} \
672
671
  ) total \
673
672
  FROM ${EVENTS_TABLE} t \
674
673
  ) q \
675
- WHERE total <= ${BULK_DATA_LIMIT} \
674
+ WHERE ${EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 and ${EVENTS_COLUMNS.ATTEMPT_COUNT} < ${MAX_RETRY_COUNT} and total <= ${BULK_DATA_LIMIT} \
676
675
  ORDER BY ${EVENTS_COLUMNS.ID};`;
677
676
 
678
677
  const sqlResult = await Database.executeQuery(query, []);
@@ -289,6 +289,7 @@ export default class EventsSyncManager {
289
289
  if (!this.eventsManager)
290
290
  this.eventsManager = await ETEventsManager.getInstance();
291
291
  this._retries = 0;
292
+ this.inProgress = false;
292
293
  await this.startSync();
293
294
  }
294
295
 
@@ -59,7 +59,7 @@ const DropCashScreen = ({
59
59
  useEffect(() => {
60
60
  (async () => {
61
61
  //fire sentry event
62
- fireEventWithScreenName({severityLevel:SeverityLevelValue.LOG, eventName:SentryEventNameSdkConstants.RETURN_CASH_ET_OPENED, screenName:ScreenNameSdkConstants.RETURN_CASH_ET_SCREEN});
62
+ fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.RETURN_CASH_ET_OPENED, screenName: ScreenNameSdkConstants.RETURN_CASH_ET_SCREEN });
63
63
  //
64
64
  onTaskStart(
65
65
  nextState,
@@ -72,8 +72,8 @@ const DropCashScreen = ({
72
72
 
73
73
  useEffect(() => {
74
74
  (async () => {
75
- console.log("expectedAmount:",expectedAmount);
76
- if(expectedAmount.value === 0){
75
+ console.log("expectedAmount:", expectedAmount);
76
+ if (expectedAmount.value === 0) {
77
77
  // setLoading(true);
78
78
  let dropCashETOutput = {
79
79
  amount: {
@@ -103,17 +103,16 @@ const DropCashScreen = ({
103
103
  });
104
104
  }
105
105
  // setLoading(false);
106
- }
106
+ }
107
107
  })();
108
108
  }, [expectedAmount.value])
109
109
 
110
110
 
111
111
 
112
112
  const getTotalExpected = async () => {
113
- const totalAmount: number = await DispatchExecutor.getTotalAmountMWI(
114
- mergedObjectiveId
115
- );
116
- setExpectedAmount({ ...expectedAmount, value: totalAmount });
113
+ const totalAmountArr: any[] = await DispatchExecutor.getTotalAmountMWI(mergedObjectiveId);
114
+ let finalValue = totalAmountArr.map(Number).reduce((sum, num) => sum + num, 0).toFixed(2);
115
+ setExpectedAmount({ ...expectedAmount, value: Number(finalValue) });
117
116
  };
118
117
 
119
118
  const getSelfLoopBool = async () => {
@@ -144,30 +143,30 @@ const DropCashScreen = ({
144
143
  },
145
144
  [baseETProps, navigation, route]
146
145
  );
147
-
146
+
148
147
  return (
149
148
  <View style={{ flex: 1 }}>
150
- { expectedAmount.value === 0 ? <View><ProgressDialog visible={loading} label={'Please wait...'} /></View> :
151
- <SLDropCash
152
- {...input}
153
- expectedAmount={expectedAmount}
154
- isSelfLoop={isSelfLoopTrue}
155
- navigation={navigation}
156
- mergedObjectiveId={mergedObjectiveId}
157
- taskMeta={taskMeta}
158
- onSubmitET={async (etOutput) => {
159
- if (etOutput.success || etOutput.eventCode == GO_BACK_EVENT_CODE) {
160
- await submitOutput(etOutput);
161
- } else {
162
- setResponse((_prevState: any) => {
163
- setShowAlert(true);
164
- return etOutput;
165
- });
166
- }
167
- }}
168
- />
149
+ {expectedAmount.value === 0 ? <View><ProgressDialog visible={loading} label={'Please wait...'} /></View> :
150
+ <SLDropCash
151
+ {...input}
152
+ expectedAmount={expectedAmount}
153
+ isSelfLoop={isSelfLoopTrue}
154
+ navigation={navigation}
155
+ mergedObjectiveId={mergedObjectiveId}
156
+ taskMeta={taskMeta}
157
+ onSubmitET={async (etOutput) => {
158
+ if (etOutput.success || etOutput.eventCode == GO_BACK_EVENT_CODE) {
159
+ await submitOutput(etOutput);
160
+ } else {
161
+ setResponse((_prevState: any) => {
162
+ setShowAlert(true);
163
+ return etOutput;
164
+ });
165
+ }
166
+ }}
167
+ />
169
168
  }
170
-
169
+
171
170
  <CancelOrderDialog
172
171
  visible={showAlert}
173
172
  onSubmit={async (value) => {
@@ -118,6 +118,8 @@ export function getEntityCodeByET(etId: string): string {
118
118
  return EntityCode.PROCESS_PAYMENT;
119
119
  case ExecutionTaskID.COMPLETE_PAYMENT:
120
120
  return EntityCode.COMPLETE_PAYMENT;
121
+ case ExecutionTaskID.COLLECT_PAYMENT_ET:
122
+ return EntityCode.COLLECT_PAYMENT_ET;
121
123
  case ExecutionTaskID.DELIVER_CASH:
122
124
  return EntityCode.DELIVER_CASH;
123
125
  case ExecutionTaskID.VERIFY_INPUT: