@os1-platform/dispatch-mobile 3.0.3 → 3.1.0

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 (223) hide show
  1. package/android/build.gradle +38 -9
  2. package/android/gradle.properties +17 -2
  3. package/lib/commonjs/components/dispatch/DispatchExecNavigator.js.map +1 -1
  4. package/lib/commonjs/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
  5. package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js +1 -1
  6. package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
  7. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js +467 -287
  8. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
  9. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPSchema.js +14 -1
  10. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOTPSchema.js.map +1 -1
  11. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOtpStyles.js +272 -0
  12. package/lib/commonjs/components/executiontasks/validateOTP/ValidateOtpStyles.js.map +1 -0
  13. package/lib/commonjs/components/executiontasks/validateOTP/components/ContactListView.js +99 -0
  14. package/lib/commonjs/components/executiontasks/validateOTP/components/ContactListView.js.map +1 -0
  15. package/lib/commonjs/components/executiontasks/validateOTP/components/OTPView.js +195 -0
  16. package/lib/commonjs/components/executiontasks/validateOTP/components/OTPView.js.map +1 -0
  17. package/lib/commonjs/components/executiontasks/validateOTP/components/VerificationComplete.js +106 -0
  18. package/lib/commonjs/components/executiontasks/validateOTP/components/VerificationComplete.js.map +1 -0
  19. package/lib/commonjs/components/executiontasks/validateOTP/constants.js +12 -5
  20. package/lib/commonjs/components/executiontasks/validateOTP/constants.js.map +1 -1
  21. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/ContactCard.js +68 -0
  22. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/ContactCard.js.map +1 -0
  23. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js +12 -5
  24. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
  25. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/ResendOTPButton.js +61 -0
  26. package/lib/commonjs/components/executiontasks/validateOTP/sub-components/ResendOTPButton.js.map +1 -0
  27. package/lib/commonjs/components/executiontasks/validateOTP/utils.js +235 -114
  28. package/lib/commonjs/components/executiontasks/validateOTP/utils.js.map +1 -1
  29. package/lib/commonjs/components/utils/Scale.js +22 -0
  30. package/lib/commonjs/components/utils/Scale.js.map +1 -0
  31. package/lib/commonjs/components/widgets/ConfirmCancelModal.js +47 -0
  32. package/lib/commonjs/components/widgets/ConfirmCancelModal.js.map +1 -0
  33. package/lib/commonjs/components/widgets/SnackBarCustom.js +36 -4
  34. package/lib/commonjs/components/widgets/SnackBarCustom.js.map +1 -1
  35. package/lib/commonjs/components/widgets/SplitTextInput.js +48 -18
  36. package/lib/commonjs/components/widgets/SplitTextInput.js.map +1 -1
  37. package/lib/commonjs/constants/apiConstants.js +4 -1
  38. package/lib/commonjs/constants/apiConstants.js.map +1 -1
  39. package/lib/commonjs/constants/constants.js +2 -1
  40. package/lib/commonjs/constants/constants.js.map +1 -1
  41. package/lib/commonjs/icons/icExclamationcircleo_dark.svg +3 -0
  42. package/lib/commonjs/icons/icFailed.gif +0 -0
  43. package/lib/commonjs/icons/icRadioChecked.svg +4 -0
  44. package/lib/commonjs/icons/icRadioUnchecked.svg +4 -0
  45. package/lib/commonjs/icons/icSuccess.gif +0 -0
  46. package/lib/commonjs/icons/index.js +28 -0
  47. package/lib/commonjs/icons/index.js.map +1 -0
  48. package/lib/commonjs/index.js +19 -0
  49. package/lib/commonjs/index.js.map +1 -1
  50. package/lib/commonjs/manager/sdk/DispatchSDKManager.js +5 -4
  51. package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
  52. package/lib/commonjs/manager/sdk/callbacksHandler.js +9 -2
  53. package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -1
  54. package/lib/commonjs/manager/syncmanager/AppSyncManager.js +1 -4
  55. package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
  56. package/lib/commonjs/manager/syncmanager/constants.js +3 -1
  57. package/lib/commonjs/manager/syncmanager/constants.js.map +1 -1
  58. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +3 -2
  59. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  60. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +70 -80
  61. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  62. package/lib/commonjs/models/sdk.js +1 -0
  63. package/lib/commonjs/models/sdk.js.map +1 -1
  64. package/lib/commonjs/ui/screens/ValidateOTPScreen.js +132 -12
  65. package/lib/commonjs/ui/screens/ValidateOTPScreen.js.map +1 -1
  66. package/lib/commonjs/utils/ApiUtils.js +122 -3
  67. package/lib/commonjs/utils/ApiUtils.js.map +1 -1
  68. package/lib/commonjs/utils/ExecTaskUtils.js +67 -7
  69. package/lib/commonjs/utils/ExecTaskUtils.js.map +1 -1
  70. package/lib/commonjs/utils/context/valdiateOTPContext.js +11 -0
  71. package/lib/commonjs/utils/context/valdiateOTPContext.js.map +1 -0
  72. package/lib/commonjs/utils/helper.js.map +1 -1
  73. package/lib/commonjs/utils/hooks/useTimer.js +68 -30
  74. package/lib/commonjs/utils/hooks/useTimer.js.map +1 -1
  75. package/lib/module/components/dispatch/DispatchExecNavigator.js.map +1 -1
  76. package/lib/module/components/executiontasks/forms/widgets/DateTimeWidget.js.map +1 -1
  77. package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js +1 -1
  78. package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
  79. package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js +480 -290
  80. package/lib/module/components/executiontasks/validateOTP/ValidateOTPET.js.map +1 -1
  81. package/lib/module/components/executiontasks/validateOTP/ValidateOTPSchema.js +14 -0
  82. package/lib/module/components/executiontasks/validateOTP/ValidateOTPSchema.js.map +1 -1
  83. package/lib/module/components/executiontasks/validateOTP/ValidateOtpStyles.js +266 -0
  84. package/lib/module/components/executiontasks/validateOTP/ValidateOtpStyles.js.map +1 -0
  85. package/lib/module/components/executiontasks/validateOTP/components/ContactListView.js +88 -0
  86. package/lib/module/components/executiontasks/validateOTP/components/ContactListView.js.map +1 -0
  87. package/lib/module/components/executiontasks/validateOTP/components/OTPView.js +194 -0
  88. package/lib/module/components/executiontasks/validateOTP/components/OTPView.js.map +1 -0
  89. package/lib/module/components/executiontasks/validateOTP/components/VerificationComplete.js +96 -0
  90. package/lib/module/components/executiontasks/validateOTP/components/VerificationComplete.js.map +1 -0
  91. package/lib/module/components/executiontasks/validateOTP/constants.js +11 -4
  92. package/lib/module/components/executiontasks/validateOTP/constants.js.map +1 -1
  93. package/lib/module/components/executiontasks/validateOTP/sub-components/ContactCard.js +59 -0
  94. package/lib/module/components/executiontasks/validateOTP/sub-components/ContactCard.js.map +1 -0
  95. package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js +11 -5
  96. package/lib/module/components/executiontasks/validateOTP/sub-components/OTPInput.js.map +1 -1
  97. package/lib/module/components/executiontasks/validateOTP/sub-components/ResendOTPButton.js +52 -0
  98. package/lib/module/components/executiontasks/validateOTP/sub-components/ResendOTPButton.js.map +1 -0
  99. package/lib/module/components/executiontasks/validateOTP/utils.js +219 -108
  100. package/lib/module/components/executiontasks/validateOTP/utils.js.map +1 -1
  101. package/lib/module/components/utils/Scale.js +14 -0
  102. package/lib/module/components/utils/Scale.js.map +1 -0
  103. package/lib/module/components/widgets/ConfirmCancelModal.js +40 -0
  104. package/lib/module/components/widgets/ConfirmCancelModal.js.map +1 -0
  105. package/lib/module/components/widgets/SnackBarCustom.js +36 -4
  106. package/lib/module/components/widgets/SnackBarCustom.js.map +1 -1
  107. package/lib/module/components/widgets/SplitTextInput.js +48 -19
  108. package/lib/module/components/widgets/SplitTextInput.js.map +1 -1
  109. package/lib/module/constants/apiConstants.js +4 -1
  110. package/lib/module/constants/apiConstants.js.map +1 -1
  111. package/lib/module/constants/constants.js +1 -0
  112. package/lib/module/constants/constants.js.map +1 -1
  113. package/lib/module/icons/icExclamationcircleo_dark.svg +3 -0
  114. package/lib/module/icons/icFailed.gif +0 -0
  115. package/lib/module/icons/icRadioChecked.svg +4 -0
  116. package/lib/module/icons/icRadioUnchecked.svg +4 -0
  117. package/lib/module/icons/icSuccess.gif +0 -0
  118. package/lib/module/icons/index.js +5 -0
  119. package/lib/module/icons/index.js.map +1 -0
  120. package/lib/module/index.js +2 -0
  121. package/lib/module/index.js.map +1 -1
  122. package/lib/module/manager/sdk/DispatchSDKManager.js +5 -3
  123. package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
  124. package/lib/module/manager/sdk/callbacksHandler.js +12 -3
  125. package/lib/module/manager/sdk/callbacksHandler.js.map +1 -1
  126. package/lib/module/manager/syncmanager/AppSyncManager.js +1 -4
  127. package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
  128. package/lib/module/manager/syncmanager/constants.js +2 -0
  129. package/lib/module/manager/syncmanager/constants.js.map +1 -1
  130. package/lib/module/manager/syncmanager/document/DocumentHttpClient.js +3 -2
  131. package/lib/module/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  132. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +70 -80
  133. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  134. package/lib/module/models/sdk.js +2 -0
  135. package/lib/module/models/sdk.js.map +1 -1
  136. package/lib/module/ui/screens/ValidateOTPScreen.js +139 -11
  137. package/lib/module/ui/screens/ValidateOTPScreen.js.map +1 -1
  138. package/lib/module/utils/ApiUtils.js +118 -2
  139. package/lib/module/utils/ApiUtils.js.map +1 -1
  140. package/lib/module/utils/ExecTaskUtils.js +66 -7
  141. package/lib/module/utils/ExecTaskUtils.js.map +1 -1
  142. package/lib/module/utils/context/valdiateOTPContext.js +4 -0
  143. package/lib/module/utils/context/valdiateOTPContext.js.map +1 -0
  144. package/lib/module/utils/helper.js +1 -0
  145. package/lib/module/utils/helper.js.map +1 -1
  146. package/lib/module/utils/hooks/useTimer.js +67 -30
  147. package/lib/module/utils/hooks/useTimer.js.map +1 -1
  148. package/lib/typescript/components/executiontasks/collectPayment/PaymentStyles.d.ts +3 -3
  149. package/lib/typescript/components/executiontasks/deliver/DeliverETInput.d.ts +0 -1
  150. package/lib/typescript/components/executiontasks/scan/modalConstant.d.ts +0 -1
  151. package/lib/typescript/components/executiontasks/validateOTP/ValidateOTPET.d.ts +3 -3
  152. package/lib/typescript/components/executiontasks/validateOTP/ValidateOTPSchema.d.ts +169 -5
  153. package/lib/typescript/components/executiontasks/validateOTP/ValidateOtpStyles.d.ts +257 -0
  154. package/lib/typescript/components/executiontasks/validateOTP/components/ContactListView.d.ts +3 -0
  155. package/lib/typescript/components/executiontasks/validateOTP/components/OTPView.d.ts +3 -0
  156. package/lib/typescript/components/executiontasks/validateOTP/components/VerificationComplete.d.ts +3 -0
  157. package/lib/typescript/components/executiontasks/validateOTP/constants.d.ts +11 -4
  158. package/lib/typescript/components/executiontasks/validateOTP/sub-components/ContactCard.d.ts +8 -0
  159. package/lib/typescript/components/executiontasks/validateOTP/sub-components/ResendOTPButton.d.ts +12 -0
  160. package/lib/typescript/components/executiontasks/validateOTP/utils.d.ts +31 -7
  161. package/lib/typescript/components/utils/Scale.d.ts +4 -0
  162. package/lib/typescript/components/widgets/ConfirmCancelModal.d.ts +9 -0
  163. package/lib/typescript/components/widgets/SnackBarCustom.d.ts +4 -8
  164. package/lib/typescript/components/widgets/SplitTextInput.d.ts +1 -1
  165. package/lib/typescript/components/widgets/Timer.d.ts +3 -3
  166. package/lib/typescript/constants/apiConstants.d.ts +3 -0
  167. package/lib/typescript/constants/constants.d.ts +1 -0
  168. package/lib/typescript/icons/index.d.ts +4 -0
  169. package/lib/typescript/index.d.ts +2 -0
  170. package/lib/typescript/manager/sdk/callbacksHandler.d.ts +4 -1
  171. package/lib/typescript/manager/syncmanager/constants.d.ts +2 -0
  172. package/lib/typescript/models/execTasks/ETConfig.d.ts +1 -1
  173. package/lib/typescript/models/sdk.d.ts +3 -0
  174. package/lib/typescript/network/GraphQLClient.d.ts +4 -4
  175. package/lib/typescript/styles/executionTasks/CommonStyles.d.ts +2 -2
  176. package/lib/typescript/ui/screens/HttpRequestScreen.d.ts +0 -1
  177. package/lib/typescript/utils/ApiUtils.d.ts +6 -2
  178. package/lib/typescript/utils/ExecTaskUtils.d.ts +1 -0
  179. package/lib/typescript/utils/context/paymentContext.d.ts +0 -1
  180. package/lib/typescript/utils/context/valdiateOTPContext.d.ts +6 -0
  181. package/lib/typescript/utils/hooks/useModal.d.ts +0 -2
  182. package/lib/typescript/utils/hooks/useTimer.d.ts +7 -5
  183. package/package.json +46 -44
  184. package/src/components/dispatch/DispatchExecNavigator.tsx +1 -1
  185. package/src/components/executiontasks/forms/widgets/DateTimeWidget.tsx +2 -2
  186. package/src/components/executiontasks/imageCapture/CaptureUtils.ts +1 -1
  187. package/src/components/executiontasks/validateOTP/ValidateOTPET.tsx +654 -381
  188. package/src/components/executiontasks/validateOTP/ValidateOTPSchema.ts +193 -8
  189. package/src/components/executiontasks/validateOTP/ValidateOtpStyles.ts +298 -0
  190. package/src/components/executiontasks/validateOTP/components/ContactListView.tsx +109 -0
  191. package/src/components/executiontasks/validateOTP/components/OTPView.tsx +216 -0
  192. package/src/components/executiontasks/validateOTP/components/VerificationComplete.tsx +124 -0
  193. package/src/components/executiontasks/validateOTP/constants.ts +11 -4
  194. package/src/components/executiontasks/validateOTP/sub-components/ContactCard.tsx +72 -0
  195. package/src/components/executiontasks/validateOTP/sub-components/OTPInput.tsx +13 -7
  196. package/src/components/executiontasks/validateOTP/sub-components/ResendOTPButton.tsx +86 -0
  197. package/src/components/executiontasks/validateOTP/utils.ts +313 -143
  198. package/src/components/utils/Scale.ts +13 -0
  199. package/src/components/widgets/ConfirmCancelModal.tsx +49 -0
  200. package/src/components/widgets/SnackBarCustom.tsx +37 -13
  201. package/src/components/widgets/SplitTextInput.tsx +58 -21
  202. package/src/constants/apiConstants.ts +3 -0
  203. package/src/constants/constants.ts +2 -2
  204. package/src/icons/icExclamationcircleo_dark.svg +3 -0
  205. package/src/icons/icFailed.gif +0 -0
  206. package/src/icons/icRadioChecked.svg +4 -0
  207. package/src/icons/icRadioUnchecked.svg +4 -0
  208. package/src/icons/icSuccess.gif +0 -0
  209. package/src/icons/index.ts +5 -0
  210. package/src/index.tsx +2 -0
  211. package/src/manager/sdk/DispatchSDKManager.ts +6 -5
  212. package/src/manager/sdk/callbacksHandler.ts +29 -12
  213. package/src/manager/syncmanager/AppSyncManager.ts +4 -7
  214. package/src/manager/syncmanager/constants.ts +2 -0
  215. package/src/manager/syncmanager/document/DocumentHttpClient.ts +29 -29
  216. package/src/manager/syncmanager/document/DocumentSyncManager.ts +75 -84
  217. package/src/models/sdk.ts +6 -0
  218. package/src/ui/screens/ValidateOTPScreen.tsx +194 -32
  219. package/src/utils/ApiUtils.ts +131 -3
  220. package/src/utils/ExecTaskUtils.ts +77 -15
  221. package/src/utils/context/valdiateOTPContext.ts +9 -0
  222. package/src/utils/helper.ts +0 -1
  223. package/src/utils/hooks/useTimer.ts +94 -36
@@ -1 +1 @@
1
- {"version":3,"names":["_LocationManager","_interopRequireDefault","require","_DispatchSdkCache","_ETConfig","_EventDispatcher","_jsonpathPlus","e","__esModule","default","getBaseETResponse","entityCode","success","eventCode","reasonCode","mergedObjectiveIds","taskId","lastLocation","LocationManager","getInstance","getLastLocation","console","log","JSON","stringify","cache","DispatchSdkCache","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","ExecutionTaskID","CAPTURE_INPUT","EntityCode","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","dispatchEvent","onClickEvent","eventName","additionalData","isLeafData","value","isDynamicValue","charAt","length","handleDynamicValues","jsonInput","dataBlob","key","path","substring","output","JSONPath","json","outputResp","pop","Array","isArray","dynamicVal","filter","_val","shift","map","val","maskContact","contact","includes","domain","split","maskedName","maskedEmail","slice","exports"],"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\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 const maskContact = (contact: string) => {\n if (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.slice(0, 2)}****${contact.slice(-4)}`;\n }\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_LocationManager","_interopRequireDefault","require","_DispatchSdkCache","_ETConfig","_EventDispatcher","_jsonpathPlus","e","__esModule","default","getBaseETResponse","entityCode","success","eventCode","reasonCode","mergedObjectiveIds","taskId","lastLocation","LocationManager","getInstance","getLastLocation","console","log","JSON","stringify","cache","DispatchSdkCache","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","ExecutionTaskID","CAPTURE_INPUT","EntityCode","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","dispatchEvent","onClickEvent","eventName","additionalData","isLeafData","value","isDynamicValue","charAt","length","handleDynamicValues","jsonInput","dataBlob","key","path","substring","output","JSONPath","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","exports"],"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":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ValidateOTPContext = void 0;
7
+ var _react = require("react");
8
+ /* eslint-disable @typescript-eslint/no-unused-vars */
9
+
10
+ const ValidateOTPContext = exports.ValidateOTPContext = /*#__PURE__*/(0, _react.createContext)(null);
11
+ //# sourceMappingURL=valdiateOTPContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","ValidateOTPContext","exports","createContext"],"sources":["valdiateOTPContext.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\nimport { createContext } from 'react';\nimport { DispatchSDKConfig } from '../../models/sdk';\nimport NetworkClient from '../../network/NetworkClient';\n\nexport const ValidateOTPContext = createContext<{\n sdkConfig: DispatchSDKConfig;\n networkInstance: NetworkClient;\n} | null>(null);\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AADA;;AAKO,MAAMC,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,gBAAG,IAAAE,oBAAa,EAGrC,IAAI,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_network","_interopRequireDefault","require","_platformCoreosExecutionEngineSdk","_Helper","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","Helper","getInstance","instance","checkNetwork","Network","heartBeat","isSelfLoopExistOnET","workflowId","sourceTaskName","console","log","isSelfLoopExist","dummyETTransitionObj","targetTaskName","condition","transitionsFromCurrentET","dispatchExecutor","queryWorkflowTransitionData","outerLoop","obj","toLocaleLowerCase","toLowerCase","JSON","stringify","exports"],"sources":["helper.ts"],"sourcesContent":["import Network from '../resources/network';\nimport { DispatchExecutor as dispatchExecutor } from '@os1-platform/platform-coreos-execution-engine-sdk';\nimport ETTransition from '@os1-platform/platform-coreos-execution-engine-sdk/';\n\n/**\n *\n * @class Helper\n */\nexport default class Helper {\n\n private static instance: Helper;\n\n\n public static getInstance(): Helper {\n if (!Helper.instance) {\n Helper.instance = new Helper();\n }\n return Helper.instance;\n }\n\n /**\n * Check the availability of a network for an app.\n *\n * @returns {Promise<boolean>}\n */\n async checkNetwork(): Promise<boolean> {\n try {\n await Network.heartBeat();\n return true;\n } catch (e: any) {\n // console.log('checkNetwork catch', e);\n return false;\n }\n }\n\n\n async isSelfLoopExistOnET(workflowId: string,\n sourceTaskName: string): Promise<boolean> {\n try {\n console.log(\"isSelfLoopExistOnET::sourceTaskName => \", sourceTaskName)\n //\n let isSelfLoopExist: boolean = false;\n const dummyETTransitionObj = [{ sourceTaskName: \"\", targetTaskName: \"\", condition: \"\" }]\n const transitionsFromCurrentET = await dispatchExecutor.queryWorkflowTransitionData(workflowId, sourceTaskName);\n\n outerLoop: for (const obj of transitionsFromCurrentET ?? dummyETTransitionObj) {\n if ((obj.targetTaskName as string).toLocaleLowerCase() === sourceTaskName.toLowerCase()) {\n isSelfLoopExist = true;\n break outerLoop;\n }\n }\n\n // transitionsFromCurrentET?.forEach( (obj) => {\n // if((obj.targetTaskName as string).toLocaleLowerCase() === sourceTaskName.toLowerCase()){\n // isSelfLoopExist = true;\n // break;\n // } \n // }); \n return isSelfLoopExist;\n } catch (e: any) {\n console.log(\"isSelfLoopExistOnET-Error\", JSON.stringify(e));\n return false;\n }\n }\n\n}\n\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,iCAAA,GAAAD,OAAA;AAA0G,IAAAE,OAAA;AAAA,SAAAH,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAG1G;AACA;AACA;AACA;AACe,MAAMgB,MAAM,CAAC;EAK1B,OAAcC,WAAWA,CAAA,EAAW;IAClC,IAAI,CAACD,MAAM,CAACE,QAAQ,EAAE;MACpBF,MAAM,CAACE,QAAQ,GAAG,IAAIF,MAAM,CAAC,CAAC;IAChC;IACA,OAAOA,MAAM,CAACE,QAAQ;EACxB;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMC,YAAYA,CAAA,EAAqB;IACrC,IAAI;MACF,MAAMC,gBAAO,CAACC,SAAS,CAAC,CAAC;MACzB,OAAO,IAAI;IACb,CAAC,CAAC,OAAO1B,CAAM,EAAE;MACf;MACA,OAAO,KAAK;IACd;EACF;EAGA,MAAM2B,mBAAmBA,CAACC,UAAkB,EAC1CC,cAAsB,EAAoB;IAC1C,IAAI;MACFC,OAAO,CAACC,GAAG,CAAC,yCAAyC,EAAEF,cAAc,CAAC;MACtE;MACA,IAAIG,eAAwB,GAAG,KAAK;MACpC,MAAMC,oBAAoB,GAAG,CAAC;QAAEJ,cAAc,EAAE,EAAE;QAAEK,cAAc,EAAE,EAAE;QAAEC,SAAS,EAAE;MAAG,CAAC,CAAC;MACxF,MAAMC,wBAAwB,GAAG,MAAMC,kDAAgB,CAACC,2BAA2B,CAACV,UAAU,EAAEC,cAAc,CAAC;MAE/GU,SAAS,EAAE,KAAK,MAAMC,GAAG,IAAIJ,wBAAwB,IAAIH,oBAAoB,EAAE;QAC7E,IAAKO,GAAG,CAACN,cAAc,CAAYO,iBAAiB,CAAC,CAAC,KAAKZ,cAAc,CAACa,WAAW,CAAC,CAAC,EAAE;UACvFV,eAAe,GAAG,IAAI;UACtB,MAAMO,SAAS;QACjB;MACF;;MAEA;MACA;MACA;MACA;MACA;MACA;MACA,OAAOP,eAAe;IACxB,CAAC,CAAC,OAAOhC,CAAM,EAAE;MACf8B,OAAO,CAACC,GAAG,CAAC,2BAA2B,EAAEY,IAAI,CAACC,SAAS,CAAC5C,CAAC,CAAC,CAAC;MAC3D,OAAO,KAAK;IACd;EACF;AAEF;AAAC6C,OAAA,CAAA3C,OAAA,GAAAmB,MAAA;AAAAtB,OAAA,GAzDoBsB,MAAM;AAAAlB,eAAA,CAANkB,MAAM","ignoreList":[]}
1
+ {"version":3,"names":["_network","_interopRequireDefault","require","_platformCoreosExecutionEngineSdk","_Helper","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","Helper","getInstance","instance","checkNetwork","Network","heartBeat","isSelfLoopExistOnET","workflowId","sourceTaskName","console","log","isSelfLoopExist","dummyETTransitionObj","targetTaskName","condition","transitionsFromCurrentET","dispatchExecutor","queryWorkflowTransitionData","outerLoop","obj","toLocaleLowerCase","toLowerCase","JSON","stringify","exports"],"sources":["helper.ts"],"sourcesContent":["import Network from '../resources/network';\nimport { DispatchExecutor as dispatchExecutor } from '@os1-platform/platform-coreos-execution-engine-sdk';\n\n/**\n *\n * @class Helper\n */\nexport default class Helper {\n\n private static instance: Helper;\n\n\n public static getInstance(): Helper {\n if (!Helper.instance) {\n Helper.instance = new Helper();\n }\n return Helper.instance;\n }\n\n /**\n * Check the availability of a network for an app.\n *\n * @returns {Promise<boolean>}\n */\n async checkNetwork(): Promise<boolean> {\n try {\n await Network.heartBeat();\n return true;\n } catch (e: any) {\n // console.log('checkNetwork catch', e);\n return false;\n }\n }\n\n\n async isSelfLoopExistOnET(workflowId: string,\n sourceTaskName: string): Promise<boolean> {\n try {\n console.log(\"isSelfLoopExistOnET::sourceTaskName => \", sourceTaskName)\n //\n let isSelfLoopExist: boolean = false;\n const dummyETTransitionObj = [{ sourceTaskName: \"\", targetTaskName: \"\", condition: \"\" }]\n const transitionsFromCurrentET = await dispatchExecutor.queryWorkflowTransitionData(workflowId, sourceTaskName);\n\n outerLoop: for (const obj of transitionsFromCurrentET ?? dummyETTransitionObj) {\n if ((obj.targetTaskName as string).toLocaleLowerCase() === sourceTaskName.toLowerCase()) {\n isSelfLoopExist = true;\n break outerLoop;\n }\n }\n\n // transitionsFromCurrentET?.forEach( (obj) => {\n // if((obj.targetTaskName as string).toLocaleLowerCase() === sourceTaskName.toLowerCase()){\n // isSelfLoopExist = true;\n // break;\n // } \n // }); \n return isSelfLoopExist;\n } catch (e: any) {\n console.log(\"isSelfLoopExistOnET-Error\", JSON.stringify(e));\n return false;\n }\n }\n\n}\n\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,iCAAA,GAAAD,OAAA;AAA0G,IAAAE,OAAA;AAAA,SAAAH,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAE1G;AACA;AACA;AACA;AACe,MAAMgB,MAAM,CAAC;EAK1B,OAAcC,WAAWA,CAAA,EAAW;IAClC,IAAI,CAACD,MAAM,CAACE,QAAQ,EAAE;MACpBF,MAAM,CAACE,QAAQ,GAAG,IAAIF,MAAM,CAAC,CAAC;IAChC;IACA,OAAOA,MAAM,CAACE,QAAQ;EACxB;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMC,YAAYA,CAAA,EAAqB;IACrC,IAAI;MACF,MAAMC,gBAAO,CAACC,SAAS,CAAC,CAAC;MACzB,OAAO,IAAI;IACb,CAAC,CAAC,OAAO1B,CAAM,EAAE;MACf;MACA,OAAO,KAAK;IACd;EACF;EAGA,MAAM2B,mBAAmBA,CAACC,UAAkB,EAC1CC,cAAsB,EAAoB;IAC1C,IAAI;MACFC,OAAO,CAACC,GAAG,CAAC,yCAAyC,EAAEF,cAAc,CAAC;MACtE;MACA,IAAIG,eAAwB,GAAG,KAAK;MACpC,MAAMC,oBAAoB,GAAG,CAAC;QAAEJ,cAAc,EAAE,EAAE;QAAEK,cAAc,EAAE,EAAE;QAAEC,SAAS,EAAE;MAAG,CAAC,CAAC;MACxF,MAAMC,wBAAwB,GAAG,MAAMC,kDAAgB,CAACC,2BAA2B,CAACV,UAAU,EAAEC,cAAc,CAAC;MAE/GU,SAAS,EAAE,KAAK,MAAMC,GAAG,IAAIJ,wBAAwB,IAAIH,oBAAoB,EAAE;QAC7E,IAAKO,GAAG,CAACN,cAAc,CAAYO,iBAAiB,CAAC,CAAC,KAAKZ,cAAc,CAACa,WAAW,CAAC,CAAC,EAAE;UACvFV,eAAe,GAAG,IAAI;UACtB,MAAMO,SAAS;QACjB;MACF;;MAEA;MACA;MACA;MACA;MACA;MACA;MACA,OAAOP,eAAe;IACxB,CAAC,CAAC,OAAOhC,CAAM,EAAE;MACf8B,OAAO,CAACC,GAAG,CAAC,2BAA2B,EAAEY,IAAI,CAACC,SAAS,CAAC5C,CAAC,CAAC,CAAC;MAC3D,OAAO,KAAK;IACd;EACF;AAEF;AAAC6C,OAAA,CAAA3C,OAAA,GAAAmB,MAAA;AAAAtB,OAAA,GAzDoBsB,MAAM;AAAAlB,eAAA,CAANkB,MAAM","ignoreList":[]}
@@ -3,41 +3,79 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = void 0;
6
+ exports.formatExpiryTime = exports.default = void 0;
7
7
  var _react = require("react");
8
- const useTimer = props => {
9
- const {
10
- initialMinute = 0,
11
- initialSeconds = 0
12
- } = props;
13
- const [minutes, setMinutes] = (0, _react.useState)(initialMinute);
14
- const [seconds, setSeconds] = (0, _react.useState)(initialSeconds);
8
+ var _reactNative = require("react-native");
9
+ /* eslint-disable @typescript-eslint/no-unused-vars */
10
+
11
+ // Function to format the expiry time (without showing '0 sec' when it's unnecessary)
12
+ const formatExpiryTime = timeInSeconds => {
13
+ const minutes = Math.floor(timeInSeconds / 60);
14
+ const seconds = timeInSeconds % 60;
15
+ if (minutes > 0 && seconds > 0) {
16
+ return `${minutes} min ${seconds} sec`;
17
+ } else if (minutes > 0 && seconds === 0) {
18
+ return `${minutes} min`;
19
+ } else {
20
+ return `${seconds} sec`;
21
+ }
22
+ };
23
+ exports.formatExpiryTime = formatExpiryTime;
24
+ const useResendOtpTimer = (initialTimerValue, onTimerEnd) => {
25
+ const [timer, setTimer] = (0, _react.useState)(initialTimerValue);
26
+ const appState = (0, _react.useRef)(_reactNative.AppState.currentState);
27
+ const initialTimeRef = (0, _react.useRef)(Date.now());
28
+ const resetTimer = (0, _react.useCallback)(() => {
29
+ initialTimeRef.current = Date.now();
30
+ setTimer(initialTimerValue);
31
+ }, [initialTimerValue]);
32
+ const updateTimer = (0, _react.useCallback)(() => {
33
+ const currentTime = Date.now();
34
+ const elapsedTimeInSeconds = Math.floor((currentTime - initialTimeRef.current) / 1000);
35
+ const remainingTime = Math.max(0, initialTimerValue - elapsedTimeInSeconds);
36
+ if (remainingTime !== timer) {
37
+ setTimer(remainingTime);
38
+ }
39
+ if (remainingTime === 0 && onTimerEnd) {
40
+ onTimerEnd();
41
+ }
42
+ }, [initialTimerValue, onTimerEnd, timer]);
15
43
  (0, _react.useEffect)(() => {
16
- let myInterval = setInterval(() => {
17
- if (seconds > 0) {
18
- setSeconds(seconds - 1);
19
- }
20
- if (seconds === 0) {
21
- if (minutes === 0) {
22
- clearInterval(myInterval);
23
- } else {
24
- setMinutes(minutes - 1);
25
- setSeconds(59);
26
- }
44
+ resetTimer();
45
+ }, [initialTimerValue, resetTimer]);
46
+ (0, _react.useEffect)(() => {
47
+ // Update the timer immediately on mount
48
+ updateTimer();
49
+ const intervalId = setInterval(updateTimer, 1000);
50
+ return () => clearInterval(intervalId);
51
+ }, [updateTimer]);
52
+ (0, _react.useEffect)(() => {
53
+ const handleAppStateChange = nextAppState => {
54
+ if (appState.current.match(/inactive|background/) && nextAppState === 'active') {
55
+ // Calculate elapsed time and adjust the initial time reference
56
+ const currentTime = Date.now();
57
+ const elapsedTimeInSeconds = Math.floor((currentTime - initialTimeRef.current) / 1000);
58
+ const newRemainingTime = Math.max(0, initialTimerValue - elapsedTimeInSeconds);
59
+
60
+ // Update initial time ref based on new remaining time
61
+ initialTimeRef.current = currentTime - (initialTimerValue - newRemainingTime) * 1000;
62
+
63
+ // Update the timer
64
+ setTimer(newRemainingTime);
65
+ updateTimer();
27
66
  }
28
- }, 1000);
67
+ appState.current = nextAppState;
68
+ };
69
+ const subscription = _reactNative.AppState.addEventListener('change', handleAppStateChange);
29
70
  return () => {
30
- clearInterval(myInterval);
71
+ subscription.remove();
31
72
  };
32
- });
33
- const resetTimer = () => {
34
- if (!minutes && !seconds) {
35
- setMinutes(initialMinute);
36
- setSeconds(initialSeconds);
37
- }
73
+ }, [updateTimer, initialTimerValue]);
74
+ return {
75
+ formattedTime: formatExpiryTime(timer),
76
+ timer: timer,
77
+ resetTimer
38
78
  };
39
- const timer = minutes === 0 && seconds === 0 ? null : `${minutes}: ${seconds < 10 ? `0${seconds}` : seconds}`;
40
- return [timer, resetTimer];
41
79
  };
42
- var _default = exports.default = useTimer;
80
+ var _default = exports.default = useResendOtpTimer;
43
81
  //# sourceMappingURL=useTimer.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","useTimer","props","initialMinute","initialSeconds","minutes","setMinutes","useState","seconds","setSeconds","useEffect","myInterval","setInterval","clearInterval","resetTimer","timer","_default","exports","default"],"sources":["useTimer.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst useTimer = (props: {\n initialMinute: number;\n initialSeconds: number;\n}): [string | null, () => void] => {\n const { initialMinute = 0, initialSeconds = 0 } = props;\n const [minutes, setMinutes] = useState(initialMinute);\n const [seconds, setSeconds] = useState(initialSeconds);\n useEffect(() => {\n let myInterval = setInterval(() => {\n if (seconds > 0) {\n setSeconds(seconds - 1);\n }\n if (seconds === 0) {\n if (minutes === 0) {\n clearInterval(myInterval);\n } else {\n setMinutes(minutes - 1);\n setSeconds(59);\n }\n }\n }, 1000);\n return () => {\n clearInterval(myInterval);\n };\n });\n\n const resetTimer = () => {\n if (!minutes && !seconds) {\n setMinutes(initialMinute);\n setSeconds(initialSeconds);\n }\n };\n\n const timer =\n minutes === 0 && seconds === 0\n ? null\n : `${minutes}: ${seconds < 10 ? `0${seconds}` : seconds}`;\n\n return [timer, resetTimer];\n};\n\nexport default useTimer;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,MAAMC,QAAQ,GAAIC,KAGjB,IAAkC;EACjC,MAAM;IAAEC,aAAa,GAAG,CAAC;IAAEC,cAAc,GAAG;EAAE,CAAC,GAAGF,KAAK;EACvD,MAAM,CAACG,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAC,eAAQ,EAACJ,aAAa,CAAC;EACrD,MAAM,CAACK,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAF,eAAQ,EAACH,cAAc,CAAC;EACtD,IAAAM,gBAAS,EAAC,MAAM;IACd,IAAIC,UAAU,GAAGC,WAAW,CAAC,MAAM;MACjC,IAAIJ,OAAO,GAAG,CAAC,EAAE;QACfC,UAAU,CAACD,OAAO,GAAG,CAAC,CAAC;MACzB;MACA,IAAIA,OAAO,KAAK,CAAC,EAAE;QACjB,IAAIH,OAAO,KAAK,CAAC,EAAE;UACjBQ,aAAa,CAACF,UAAU,CAAC;QAC3B,CAAC,MAAM;UACLL,UAAU,CAACD,OAAO,GAAG,CAAC,CAAC;UACvBI,UAAU,CAAC,EAAE,CAAC;QAChB;MACF;IACF,CAAC,EAAE,IAAI,CAAC;IACR,OAAO,MAAM;MACXI,aAAa,CAACF,UAAU,CAAC;IAC3B,CAAC;EACH,CAAC,CAAC;EAEF,MAAMG,UAAU,GAAGA,CAAA,KAAM;IACvB,IAAI,CAACT,OAAO,IAAI,CAACG,OAAO,EAAE;MACxBF,UAAU,CAACH,aAAa,CAAC;MACzBM,UAAU,CAACL,cAAc,CAAC;IAC5B;EACF,CAAC;EAED,MAAMW,KAAK,GACTV,OAAO,KAAK,CAAC,IAAIG,OAAO,KAAK,CAAC,GAC1B,IAAI,GACJ,GAAGH,OAAO,KAAKG,OAAO,GAAG,EAAE,GAAG,IAAIA,OAAO,EAAE,GAAGA,OAAO,EAAE;EAE7D,OAAO,CAACO,KAAK,EAAED,UAAU,CAAC;AAC5B,CAAC;AAAC,IAAAE,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEajB,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","formatExpiryTime","timeInSeconds","minutes","Math","floor","seconds","exports","useResendOtpTimer","initialTimerValue","onTimerEnd","timer","setTimer","useState","appState","useRef","AppState","currentState","initialTimeRef","Date","now","resetTimer","useCallback","current","updateTimer","currentTime","elapsedTimeInSeconds","remainingTime","max","useEffect","intervalId","setInterval","clearInterval","handleAppStateChange","nextAppState","match","newRemainingTime","subscription","addEventListener","remove","formattedTime","_default","default"],"sources":["useTimer.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport { AppState, AppStateStatus } from 'react-native';\n\n// Function to format the expiry time (without showing '0 sec' when it's unnecessary)\nexport const formatExpiryTime = (timeInSeconds: number) => {\n const minutes = Math.floor(timeInSeconds / 60);\n const seconds = timeInSeconds % 60;\n\n if (minutes > 0 && seconds > 0) {\n return `${minutes} min ${seconds} sec`;\n } else if (minutes > 0 && seconds === 0) {\n return `${minutes} min`;\n } else {\n return `${seconds} sec`;\n }\n};\n\nconst useResendOtpTimer = (\n initialTimerValue: number,\n onTimerEnd?: () => void\n) => {\n const [timer, setTimer] = useState(initialTimerValue);\n const appState = useRef(AppState.currentState);\n const initialTimeRef = useRef(Date.now());\n\n const resetTimer = useCallback(() => {\n initialTimeRef.current = Date.now();\n setTimer(initialTimerValue);\n }, [initialTimerValue]);\n\n const updateTimer = useCallback(() => {\n const currentTime = Date.now();\n const elapsedTimeInSeconds = Math.floor(\n (currentTime - initialTimeRef.current) / 1000\n );\n const remainingTime = Math.max(0, initialTimerValue - elapsedTimeInSeconds);\n\n if (remainingTime !== timer) {\n setTimer(remainingTime);\n }\n\n if (remainingTime === 0 && onTimerEnd) {\n onTimerEnd();\n }\n }, [initialTimerValue, onTimerEnd, timer]);\n\n useEffect(() => {\n resetTimer();\n }, [initialTimerValue, resetTimer]);\n\n useEffect(() => {\n // Update the timer immediately on mount\n updateTimer();\n const intervalId = setInterval(updateTimer, 1000);\n return () => clearInterval(intervalId);\n }, [updateTimer]);\n\n useEffect(() => {\n const handleAppStateChange = (nextAppState: AppStateStatus) => {\n if (\n appState.current.match(/inactive|background/) &&\n nextAppState === 'active'\n ) {\n // Calculate elapsed time and adjust the initial time reference\n const currentTime = Date.now();\n const elapsedTimeInSeconds = Math.floor(\n (currentTime - initialTimeRef.current) / 1000\n );\n const newRemainingTime = Math.max(\n 0,\n initialTimerValue - elapsedTimeInSeconds\n );\n\n // Update initial time ref based on new remaining time\n initialTimeRef.current =\n currentTime - (initialTimerValue - newRemainingTime) * 1000;\n\n // Update the timer\n setTimer(newRemainingTime);\n updateTimer();\n }\n appState.current = nextAppState;\n };\n\n const subscription = AppState.addEventListener(\n 'change',\n handleAppStateChange\n );\n return () => {\n subscription.remove();\n };\n }, [updateTimer, initialTimerValue]);\n\n return {\n formattedTime: formatExpiryTime(timer),\n timer: timer,\n resetTimer,\n };\n};\n\nexport default useResendOtpTimer;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["React","createNativeStackNavigator","ETScreen","CustomScreens","ExecutionTaskID","ExecutionTaskName","IBMPlexSans_100Thin","IBMPlexSans_100Thin_Italic","IBMPlexSans_200ExtraLight","IBMPlexSans_200ExtraLight_Italic","IBMPlexSans_300Light","IBMPlexSans_300Light_Italic","IBMPlexSans_400Regular","IBMPlexSans_400Regular_Italic","IBMPlexSans_500Medium","IBMPlexSans_500Medium_Italic","IBMPlexSans_600SemiBold","IBMPlexSans_600SemiBold_Italic","IBMPlexSans_700Bold","IBMPlexSans_700Bold_Italic","useFonts","ProgressDialog","RouteParams","Stack","DispatchExecNavigator","route","fontsLoaded","createElement","visible","label","Navigator","screenOptions","headerTitleStyle","fontWeight","fontSize","fontFamily","color","orientation","animation","initialRouteName","START_WORKFLOW","Screen","name","component","StartWorkFlowScreen","initialParams","params","options","headerShown","DELIVER","DeliverScreen","headerBackVisible","DOODLE","DoodleScreen","rProps","taskTitle","getTaskTitle","title","COLLECT_PAYMENT_ET","CollectPaymentScreen","FORMS","FormsScreen","IMAGE_CAPTURE","ImageCaptureScreen","PICKUP","PickupScreen","SCAN","ScanScreen","VALIDATE_OTP_ET","ValidateOTPScreen","DISPLAY","DisplayScreen","presentation","INIT_PAYMENT","PaymentScreen","PROCESS_PAYMENT","mode","getMode","COMPLETE_PAYMENT","VERIFY_LOCATION","GeofenceScreen","CAPTURE_INPUT","CaptureInputScreen","REMARK_SCREEN","CancellationScreen","COMPLETED_SUCCESS","CompleteObjectiveScreen","COMPLETED_FAILURE","DELIVER_CASH","DropCashScreen","HTTP_REQUEST_ET","HttpRequestScreen","_route$params$RoutePa","NEXT_STATES","input","paymentMode","error","_route$params$RoutePa2"],"sources":["DispatchExecNavigator.tsx"],"sourcesContent":["import * as React from 'react';\nimport { createNativeStackNavigator } from '@react-navigation/native-stack';\nimport * as ETScreen from '../../ui/screens/ETScreensIndex';\nimport {\n CustomScreens,\n ExecutionTaskID,\n ExecutionTaskName,\n} from '../../models/execTasks/ETConfig';\nimport {\n IBMPlexSans_100Thin,\n IBMPlexSans_100Thin_Italic,\n IBMPlexSans_200ExtraLight,\n IBMPlexSans_200ExtraLight_Italic,\n IBMPlexSans_300Light,\n IBMPlexSans_300Light_Italic,\n IBMPlexSans_400Regular,\n IBMPlexSans_400Regular_Italic,\n IBMPlexSans_500Medium,\n IBMPlexSans_500Medium_Italic,\n IBMPlexSans_600SemiBold,\n IBMPlexSans_600SemiBold_Italic,\n IBMPlexSans_700Bold,\n IBMPlexSans_700Bold_Italic,\n useFonts,\n} from '@expo-google-fonts/ibm-plex-sans';\nimport ProgressDialog from '../widgets/ProgressDialog';\nimport { RouteParams } from '../../ui/uiConfig/RouteParams';\nimport { Platform } from 'react-native';\nimport { Fonts } from '../../styles/executionTasks/CommonStyles';\n\nconst Stack = createNativeStackNavigator();\n\nconst DispatchExecNavigator = ({ route }: { route: any }) => {\n let [fontsLoaded] = useFonts({\n IBMPlexSans_400Regular,\n IBMPlexSans_600SemiBold,\n IBMPlexSans_300Light,\n IBMPlexSans_700Bold,\n IBMPlexSans_100Thin,\n IBMPlexSans_100Thin_Italic,\n IBMPlexSans_200ExtraLight,\n IBMPlexSans_200ExtraLight_Italic,\n IBMPlexSans_300Light_Italic,\n IBMPlexSans_400Regular_Italic,\n IBMPlexSans_500Medium,\n IBMPlexSans_500Medium_Italic,\n IBMPlexSans_600SemiBold_Italic,\n IBMPlexSans_700Bold_Italic,\n });\n if (!fontsLoaded) {\n return <ProgressDialog visible={true} label={'Please wait...'} />;\n } else\n return (\n <Stack.Navigator\n screenOptions={{\n headerTitleStyle: {\n fontWeight: '600',\n fontSize: 16,\n fontFamily: 'IBMPlexSans_600SemiBold', \n color: '#111111',\n },\n orientation: 'portrait',\n animation: 'slide_from_right',\n }}\n initialRouteName={ExecutionTaskID.START_WORKFLOW}\n >\n <Stack.Screen\n name={ExecutionTaskID.START_WORKFLOW}\n component={ETScreen.StartWorkFlowScreen}\n initialParams={route.params}\n options={{ headerShown: false, animation: 'simple_push' }}\n />\n <Stack.Screen\n name={ExecutionTaskID.DELIVER}\n component={ETScreen.DeliverScreen}\n options={{ headerShown: false, headerBackVisible: false }}\n />\n <Stack.Screen\n name={ExecutionTaskID.DOODLE}\n component={ETScreen.DoodleScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.DOODLE,\n orientation: 'portrait',\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.COLLECT_PAYMENT_ET}\n component={ETScreen.CollectPaymentScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle\n ? taskTitle\n : ExecutionTaskName.COLLECT_PAYMENT_ET,\n orientation: 'portrait',\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.FORMS}\n component={ETScreen.FormsScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.FORMS,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.IMAGE_CAPTURE}\n component={ETScreen.ImageCaptureScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.IMAGE_CAPTURE,\n orientation: 'portrait',\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.PICKUP}\n component={ETScreen.PickupScreen}\n options={{ headerShown: false, headerBackVisible: false }}\n />\n <Stack.Screen\n name={ExecutionTaskID.SCAN}\n component={ETScreen.ScanScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.SCAN,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.VALIDATE_OTP_ET}\n component={ETScreen.ValidateOTPScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.VALIDATE_OTP_ET,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.DISPLAY}\n component={ETScreen.DisplayScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.DISPLAY,\n presentation: 'modal',\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.INIT_PAYMENT}\n component={ETScreen.PaymentScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.INIT_PAYMENT,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.PROCESS_PAYMENT}\n component={ETScreen.PaymentScreen}\n options={(rProps) => {\n const mode = getMode(rProps.route);\n if (mode == 'CASH') {\n return {\n headerShown: false,\n headerBackVisible: false,\n };\n }\n\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.PROCESS_PAYMENT,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.COMPLETE_PAYMENT}\n component={ETScreen.PaymentScreen}\n options={{ headerShown: false, headerBackVisible: false }}\n />\n <Stack.Screen\n name={ExecutionTaskID.VERIFY_LOCATION}\n component={ETScreen.GeofenceScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.VERIFY_LOCATION,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.CAPTURE_INPUT}\n component={ETScreen.CaptureInputScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.CAPTURE_INPUT,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={CustomScreens.REMARK_SCREEN}\n component={ETScreen.CancellationScreen}\n options={{\n title: 'Select Event and Reason',\n presentation: 'modal',\n animation: 'slide_from_bottom',\n headerBackVisible: false,\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.COMPLETED_SUCCESS}\n component={ETScreen.CompleteObjectiveScreen}\n options={{\n headerShown: false,\n animation: 'simple_push',\n headerBackVisible: false,\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.COMPLETED_FAILURE}\n component={ETScreen.CompleteObjectiveScreen}\n options={{\n headerShown: false,\n animation: 'simple_push',\n headerBackVisible: false,\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.DELIVER_CASH}\n component={ETScreen.DropCashScreen}\n options={{ headerShown: false, headerBackVisible: false }}\n />\n <Stack.Screen\n name={ExecutionTaskID.HTTP_REQUEST_ET}\n component={ETScreen.HttpRequestScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ?? ExecutionTaskName.HTTP_REQUEST_ET,\n headerBackVisible: false,\n };\n }}\n />\n </Stack.Navigator>\n );\n};\n\nfunction getMode(route: any): string {\n try {\n return route?.params[RouteParams.NEXT_STATES].input?.paymentMode;\n } catch (error: any) {\n return '';\n }\n}\n\nfunction getTaskTitle(route: any): string {\n try {\n return route?.params[RouteParams.NEXT_STATES].input?.title;\n } catch (error: any) {\n return '';\n }\n}\n\nexport default DispatchExecNavigator;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","createNativeStackNavigator","ETScreen","CustomScreens","ExecutionTaskID","ExecutionTaskName","IBMPlexSans_100Thin","IBMPlexSans_100Thin_Italic","IBMPlexSans_200ExtraLight","IBMPlexSans_200ExtraLight_Italic","IBMPlexSans_300Light","IBMPlexSans_300Light_Italic","IBMPlexSans_400Regular","IBMPlexSans_400Regular_Italic","IBMPlexSans_500Medium","IBMPlexSans_500Medium_Italic","IBMPlexSans_600SemiBold","IBMPlexSans_600SemiBold_Italic","IBMPlexSans_700Bold","IBMPlexSans_700Bold_Italic","useFonts","ProgressDialog","RouteParams","Stack","DispatchExecNavigator","route","fontsLoaded","createElement","visible","label","Navigator","screenOptions","headerTitleStyle","fontWeight","fontSize","fontFamily","color","orientation","animation","initialRouteName","START_WORKFLOW","Screen","name","component","StartWorkFlowScreen","initialParams","params","options","headerShown","DELIVER","DeliverScreen","headerBackVisible","DOODLE","DoodleScreen","rProps","taskTitle","getTaskTitle","title","COLLECT_PAYMENT_ET","CollectPaymentScreen","FORMS","FormsScreen","IMAGE_CAPTURE","ImageCaptureScreen","PICKUP","PickupScreen","SCAN","ScanScreen","VALIDATE_OTP_ET","ValidateOTPScreen","DISPLAY","DisplayScreen","presentation","INIT_PAYMENT","PaymentScreen","PROCESS_PAYMENT","mode","getMode","COMPLETE_PAYMENT","VERIFY_LOCATION","GeofenceScreen","CAPTURE_INPUT","CaptureInputScreen","REMARK_SCREEN","CancellationScreen","COMPLETED_SUCCESS","CompleteObjectiveScreen","COMPLETED_FAILURE","DELIVER_CASH","DropCashScreen","HTTP_REQUEST_ET","HttpRequestScreen","_route$params$RoutePa","NEXT_STATES","input","paymentMode","error","_route$params$RoutePa2"],"sources":["DispatchExecNavigator.tsx"],"sourcesContent":["import * as React from 'react';\nimport { createNativeStackNavigator } from '@react-navigation/native-stack';\nimport * as ETScreen from '../../ui/screens/ETScreensIndex';\nimport {\n CustomScreens,\n ExecutionTaskID,\n ExecutionTaskName,\n} from '../../models/execTasks/ETConfig';\nimport {\n IBMPlexSans_100Thin,\n IBMPlexSans_100Thin_Italic,\n IBMPlexSans_200ExtraLight,\n IBMPlexSans_200ExtraLight_Italic,\n IBMPlexSans_300Light,\n IBMPlexSans_300Light_Italic,\n IBMPlexSans_400Regular,\n IBMPlexSans_400Regular_Italic,\n IBMPlexSans_500Medium,\n IBMPlexSans_500Medium_Italic,\n IBMPlexSans_600SemiBold,\n IBMPlexSans_600SemiBold_Italic,\n IBMPlexSans_700Bold,\n IBMPlexSans_700Bold_Italic,\n useFonts,\n} from '@expo-google-fonts/ibm-plex-sans';\nimport ProgressDialog from '../widgets/ProgressDialog';\nimport { RouteParams } from '../../ui/uiConfig/RouteParams';\nimport { Platform } from 'react-native';\nimport { Fonts } from '../../styles/executionTasks/CommonStyles';\n\nconst Stack = createNativeStackNavigator();\n\nconst DispatchExecNavigator = ({ route }: { route: any }) => {\n let [fontsLoaded] = useFonts({\n IBMPlexSans_400Regular,\n IBMPlexSans_600SemiBold,\n IBMPlexSans_300Light,\n IBMPlexSans_700Bold,\n IBMPlexSans_100Thin,\n IBMPlexSans_100Thin_Italic,\n IBMPlexSans_200ExtraLight,\n IBMPlexSans_200ExtraLight_Italic,\n IBMPlexSans_300Light_Italic,\n IBMPlexSans_400Regular_Italic,\n IBMPlexSans_500Medium,\n IBMPlexSans_500Medium_Italic,\n IBMPlexSans_600SemiBold_Italic,\n IBMPlexSans_700Bold_Italic,\n });\n if (!fontsLoaded) {\n return <ProgressDialog visible={true} label={'Please wait...'} />;\n } else\n return (\n <Stack.Navigator\n screenOptions={{\n headerTitleStyle: {\n fontWeight: '600',\n fontSize: 16,\n fontFamily: 'IBMPlexSans_600SemiBold',\n color: '#111111',\n },\n orientation: 'portrait',\n animation: 'slide_from_right',\n }}\n initialRouteName={ExecutionTaskID.START_WORKFLOW}\n >\n <Stack.Screen\n name={ExecutionTaskID.START_WORKFLOW}\n component={ETScreen.StartWorkFlowScreen}\n initialParams={route.params}\n options={{ headerShown: false, animation: 'simple_push' }}\n />\n <Stack.Screen\n name={ExecutionTaskID.DELIVER}\n component={ETScreen.DeliverScreen}\n options={{ headerShown: false, headerBackVisible: false }}\n />\n <Stack.Screen\n name={ExecutionTaskID.DOODLE}\n component={ETScreen.DoodleScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.DOODLE,\n orientation: 'portrait',\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.COLLECT_PAYMENT_ET}\n component={ETScreen.CollectPaymentScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle\n ? taskTitle\n : ExecutionTaskName.COLLECT_PAYMENT_ET,\n orientation: 'portrait',\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.FORMS}\n component={ETScreen.FormsScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.FORMS,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.IMAGE_CAPTURE}\n component={ETScreen.ImageCaptureScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.IMAGE_CAPTURE,\n orientation: 'portrait',\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.PICKUP}\n component={ETScreen.PickupScreen}\n options={{ headerShown: false, headerBackVisible: false }}\n />\n <Stack.Screen\n name={ExecutionTaskID.SCAN}\n component={ETScreen.ScanScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.SCAN,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.VALIDATE_OTP_ET}\n component={ETScreen.ValidateOTPScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.VALIDATE_OTP_ET,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.DISPLAY}\n component={ETScreen.DisplayScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.DISPLAY,\n presentation: 'modal',\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.INIT_PAYMENT}\n component={ETScreen.PaymentScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.INIT_PAYMENT,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.PROCESS_PAYMENT}\n component={ETScreen.PaymentScreen}\n options={(rProps) => {\n const mode = getMode(rProps.route);\n if (mode == 'CASH') {\n return {\n headerShown: false,\n headerBackVisible: false,\n };\n }\n\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.PROCESS_PAYMENT,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.COMPLETE_PAYMENT}\n component={ETScreen.PaymentScreen}\n options={{ headerShown: false, headerBackVisible: false }}\n />\n <Stack.Screen\n name={ExecutionTaskID.VERIFY_LOCATION}\n component={ETScreen.GeofenceScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.VERIFY_LOCATION,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.CAPTURE_INPUT}\n component={ETScreen.CaptureInputScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ? taskTitle : ExecutionTaskName.CAPTURE_INPUT,\n headerBackVisible: false,\n };\n }}\n />\n <Stack.Screen\n name={CustomScreens.REMARK_SCREEN}\n component={ETScreen.CancellationScreen}\n options={{\n title: 'Select Event and Reason',\n presentation: 'modal',\n animation: 'slide_from_bottom',\n headerBackVisible: false,\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.COMPLETED_SUCCESS}\n component={ETScreen.CompleteObjectiveScreen}\n options={{\n headerShown: false,\n animation: 'simple_push',\n headerBackVisible: false,\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.COMPLETED_FAILURE}\n component={ETScreen.CompleteObjectiveScreen}\n options={{\n headerShown: false,\n animation: 'simple_push',\n headerBackVisible: false,\n }}\n />\n <Stack.Screen\n name={ExecutionTaskID.DELIVER_CASH}\n component={ETScreen.DropCashScreen}\n options={{ headerShown: false, headerBackVisible: false }}\n />\n <Stack.Screen\n name={ExecutionTaskID.HTTP_REQUEST_ET}\n component={ETScreen.HttpRequestScreen}\n options={(rProps) => {\n let taskTitle = getTaskTitle(rProps.route);\n return {\n title: taskTitle ?? ExecutionTaskName.HTTP_REQUEST_ET,\n headerBackVisible: false,\n };\n }}\n />\n </Stack.Navigator>\n );\n};\n\nfunction getMode(route: any): string {\n try {\n return route?.params[RouteParams.NEXT_STATES].input?.paymentMode;\n } catch (error: any) {\n return '';\n }\n}\n\nfunction getTaskTitle(route: any): string {\n try {\n return route?.params[RouteParams.NEXT_STATES].input?.title;\n } catch (error: any) {\n return '';\n }\n}\n\nexport default DispatchExecNavigator;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","Platform","StyleSheet","TextInput","TouchableOpacity","View","DateTimePicker","useFormContext","SdkColors","ColorTheme","ScreenNameSdkConstants","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","MODES","DATE","TIME","DATETIME","DateTimeWidget","id","label","value","onChange","onFocus","autofocus","options","rawErrors","maxDate","show","setShow","date","setDate","theme","focused","setFocused","themedStyle","borderColor","length","errorColor","highlightColor","borderWidth","color","textColor","onDateChange","_event","selectedDate","currentDate","dateTimeValue","getValueBasedOnMode","createElement","style","styles","container","onPress","cta","severityLevel","LOG","eventName","BUTTON_CLICKED","screenName","DATE_TIME_WIDGET_SCREEN","editable","onTouchStart","placeholder","selectionColor","autoFocus","placeholderTextColor","input","testID","mode","getWidgetType","minimumDate","Date","undefined","maximumDate","is24Hour","display","OS","uiOptions","toISOString","substring","toLocaleTimeString","slice","toLocaleString","create","flex","LIGHT","primaryButton","paddingHorizontal","paddingTop","paddingBottom","borderRadius","fontSize"],"sources":["DateTimeWidget.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport {\n Platform,\n StyleSheet,\n TextInput,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport DateTimePicker, { Event } from '@react-native-community/datetimepicker';\nimport type { WidgetProps } from '@rjsf/core';\nimport { useFormContext } from 'rjsf-native';\nimport SdkColors, { ColorTheme } from '../../../../styles/SdkColors';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../../analytics/sentry/SentryAnalyticsUtils';\n\n\nconst MODES = {\n DATE: 'date',\n TIME: 'time',\n DATETIME: 'datetime',\n};\n\ntype DateWidgetProps = WidgetProps & {\n minDate?: Date;\n maxDate?: Date;\n};\n\nconst DateTimeWidget = ({\n id,\n label,\n value,\n onChange,\n onFocus,\n autofocus,\n options,\n rawErrors,\n maxDate,\n}: DateWidgetProps) => {\n const [show, setShow] = useState(false);\n const [date, setDate] = useState<Date | null>(null);\n const { theme } = useFormContext();\n const [focused, setFocused] = useState(false);\n\n const themedStyle = {\n borderColor:\n rawErrors?.length > 0\n ? theme.errorColor\n : focused\n ? theme.highlightColor\n : theme.borderColor,\n borderWidth: focused ? 2 : 1.5,\n color: theme.textColor,\n };\n const onDateChange = (_event: Event, selectedDate?: Date) => {\n setShow(false);\n if (selectedDate) {\n const currentDate = selectedDate;\n let dateTimeValue = getValueBasedOnMode(options, currentDate);\n setDate(currentDate);\n onChange(dateTimeValue);\n }\n };\n\n return (\n <View style={styles.container}>\n <TouchableOpacity onPress={() => {setShow(true)\n const cta = label;\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.DATE_TIME_WIDGET_SCREEN, cta: cta }); \n \n }}>\n <TextInput\n editable={false}\n onTouchStart={() => setShow(true)}\n value={getValueBasedOnMode(options, date)}\n placeholder={label}\n selectionColor={'#6200EE'}\n autoFocus={autofocus}\n onFocus={() => {\n setFocused(true);\n onFocus(id, value);\n }}\n placeholderTextColor={theme.placeholderTextColor}\n style={[styles.input, themedStyle]}\n />\n </TouchableOpacity>\n {show && (\n <DateTimePicker\n testID=\"dateTimePicker\"\n // @ts-ignore\n mode={getWidgetType(options.mode)}\n minimumDate={options.mode === 'date' ? new Date() : undefined}\n maximumDate={maxDate}\n is24Hour={false}\n display={Platform.OS === 'ios' ? 'inline' : 'default'}\n onChange={onDateChange}\n value={date ?? new Date()}\n textColor={'red'}\n />\n )}\n </View>\n );\n};\n\nfunction getWidgetType(mode: string): string {\n switch (mode) {\n case 'date':\n return MODES.DATE;\n case 'time':\n return MODES.TIME;\n case 'datetime':\n return MODES.DATETIME;\n default:\n return MODES.DATE;\n }\n}\n\nfunction getValueBasedOnMode(uiOptions: any, date: Date | null): string {\n if (!date) return '';\n switch (uiOptions.mode) {\n case 'date':\n return date.toISOString().substring(0, 10);\n case 'time':\n return date.toLocaleTimeString().slice(0, 5);\n case 'datetime':\n return date.toLocaleString();\n default:\n return date.toLocaleString();\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n input: {\n borderColor: SdkColors[ColorTheme.LIGHT].primaryButton,\n borderWidth: 1,\n paddingHorizontal: 16,\n paddingTop: 15,\n paddingBottom: 15,\n borderRadius: 4,\n fontSize: 16,\n color: '#111111',\n },\n});\n\n/**\n * max and min date has to be implemented\n */\n\nexport default DateTimeWidget;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useState","Platform","StyleSheet","TextInput","TouchableOpacity","View","DateTimePicker","useFormContext","SdkColors","ColorTheme","ScreenNameSdkConstants","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","MODES","DATE","TIME","DATETIME","DateTimeWidget","id","label","value","onChange","onFocus","autofocus","options","rawErrors","maxDate","show","setShow","date","setDate","theme","focused","setFocused","themedStyle","borderColor","length","errorColor","highlightColor","borderWidth","color","textColor","onDateChange","_event","selectedDate","currentDate","dateTimeValue","getValueBasedOnMode","createElement","style","styles","container","onPress","cta","severityLevel","LOG","eventName","BUTTON_CLICKED","screenName","DATE_TIME_WIDGET_SCREEN","editable","onTouchStart","placeholder","selectionColor","autoFocus","placeholderTextColor","input","testID","mode","getWidgetType","minimumDate","Date","undefined","maximumDate","is24Hour","display","OS","uiOptions","toISOString","substring","toLocaleTimeString","slice","toLocaleString","create","flex","LIGHT","primaryButton","paddingHorizontal","paddingTop","paddingBottom","borderRadius","fontSize"],"sources":["DateTimeWidget.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport {\n Platform,\n StyleSheet,\n TextInput,\n TouchableOpacity,\n View,\n} from 'react-native';\nimport DateTimePicker, { DateTimePickerEvent } from '@react-native-community/datetimepicker';\nimport type { WidgetProps } from '@rjsf/core';\nimport { useFormContext } from 'rjsf-native';\nimport SdkColors, { ColorTheme } from '../../../../styles/SdkColors';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../../analytics/sentry/SentryAnalyticsUtils';\n\n\nconst MODES = {\n DATE: 'date',\n TIME: 'time',\n DATETIME: 'datetime',\n};\n\ntype DateWidgetProps = WidgetProps & {\n minDate?: Date;\n maxDate?: Date;\n};\n\nconst DateTimeWidget = ({\n id,\n label,\n value,\n onChange,\n onFocus,\n autofocus,\n options,\n rawErrors,\n maxDate,\n}: DateWidgetProps) => {\n const [show, setShow] = useState(false);\n const [date, setDate] = useState<Date | null>(null);\n const { theme } = useFormContext();\n const [focused, setFocused] = useState(false);\n\n const themedStyle = {\n borderColor:\n rawErrors?.length > 0\n ? theme.errorColor\n : focused\n ? theme.highlightColor\n : theme.borderColor,\n borderWidth: focused ? 2 : 1.5,\n color: theme.textColor,\n };\n const onDateChange = (_event: DateTimePickerEvent, selectedDate?: Date) => {\n setShow(false);\n if (selectedDate) {\n const currentDate = selectedDate;\n let dateTimeValue = getValueBasedOnMode(options, currentDate);\n setDate(currentDate);\n onChange(dateTimeValue);\n }\n };\n\n return (\n <View style={styles.container}>\n <TouchableOpacity onPress={() => {setShow(true)\n const cta = label;\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.DATE_TIME_WIDGET_SCREEN, cta: cta }); \n \n }}>\n <TextInput\n editable={false}\n onTouchStart={() => setShow(true)}\n value={getValueBasedOnMode(options, date)}\n placeholder={label}\n selectionColor={'#6200EE'}\n autoFocus={autofocus}\n onFocus={() => {\n setFocused(true);\n onFocus(id, value);\n }}\n placeholderTextColor={theme.placeholderTextColor}\n style={[styles.input, themedStyle]}\n />\n </TouchableOpacity>\n {show && (\n <DateTimePicker\n testID=\"dateTimePicker\"\n // @ts-ignore\n mode={getWidgetType(options.mode)}\n minimumDate={options.mode === 'date' ? new Date() : undefined}\n maximumDate={maxDate}\n is24Hour={false}\n display={Platform.OS === 'ios' ? 'inline' : 'default'}\n onChange={onDateChange}\n value={date ?? new Date()}\n textColor={'red'}\n />\n )}\n </View>\n );\n};\n\nfunction getWidgetType(mode: string): string {\n switch (mode) {\n case 'date':\n return MODES.DATE;\n case 'time':\n return MODES.TIME;\n case 'datetime':\n return MODES.DATETIME;\n default:\n return MODES.DATE;\n }\n}\n\nfunction getValueBasedOnMode(uiOptions: any, date: Date | null): string {\n if (!date) return '';\n switch (uiOptions.mode) {\n case 'date':\n return date.toISOString().substring(0, 10);\n case 'time':\n return date.toLocaleTimeString().slice(0, 5);\n case 'datetime':\n return date.toLocaleString();\n default:\n return date.toLocaleString();\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n input: {\n borderColor: SdkColors[ColorTheme.LIGHT].primaryButton,\n borderWidth: 1,\n paddingHorizontal: 16,\n paddingTop: 15,\n paddingBottom: 15,\n borderRadius: 4,\n fontSize: 16,\n color: '#111111',\n },\n});\n\n/**\n * max and min date has to be implemented\n */\n\nexport default DateTimeWidget;\n"],"mappings":"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","ignoreList":[]}
@@ -119,7 +119,7 @@ export async function captureImage(imageWidth, imageHeight, fileSize) {
119
119
  console.log("aks:didCancel=");
120
120
  showToast('User cancelled the action');
121
121
  console.log('User cancelled the action');
122
- } else if (response.errorCode == ('camera_unavailable' || 'permission' || 'others')) {
122
+ } else if (response.errorCode === 'camera_unavailable' || response.errorCode === 'permission' || response.errorCode === 'others') {
123
123
  console.log("aks:errorCode=");
124
124
  showToast(response.errorMessage ? response.errorMessage : '');
125
125
  console.log('ImagePicker Error: ', response.errorMessage);
@@ -1 +1 @@
1
- {"version":3,"names":["Alert","FileSystem","ImagePicker","PermissionStatus","showToast","Logger","LOG_TYPE","getBaseETResponse","getEventCodeByET","EntityCode","ExecutionTaskID","BaseError","BaseErrorCodes","DispatchSdkCache","insertDocumentInDB","launchCamera","Image","deleteImage","imageData","images","deleteAsync","path","filtered","filter","ele","img","id","toString","toLowerCase","console","log","getMaxImagesCount","props","captureCountLimit","getImagesFileName","Date","now","getCompressionRatio","uri","maxSize","fileInfo","getInfoAsync","size","Math","min","exists","fileSize","error","getInstance","logEvent","message","SDK_ERROR","checkCameraPermissionUtil","response","getCameraPermissionsAsync","granted","resp","requestCameraPermissionsAsync","status","GRANTED","captureImage","imageWidth","imageHeight","alert","cameraResult","options","selectionLimit","mediaType","includeBase64","didCancel","errorCode","errorMessage","assets","compressionRatio","resizedImage1","compress","compressionMethod","quality","includes","resizedImageResult","width","height","base64","then","SDK_DEBUG","catch","exception","getCaptureOutput","imageDataList","captureProps","_captureProps$applica","length","IMAGE_CAPTURE","applicableReasons","failure","mergedObjectiveId","_captureProps$applica2","success","captures","getImagesData","imagesDataList","output","folderName","getKeyFromCache","KEYS","FMS_FOLDER","data","insertID","title","dateTime","lat","lng","accuracy","push","url","timestamp","file","folder","name","SQLiteDBIssue"],"sources":["CaptureUtils.ts"],"sourcesContent":["import type {\n CapturedImage,\n CaptureInput,\n CaptureOutput,\n ImageData,\n} from './CaptureSchema';\nimport { Alert, Platform } from 'react-native';\nimport * as FileSystem from 'expo-file-system';\nimport * as ImagePicker from 'expo-image-picker';\nimport { PermissionStatus } from 'expo-image-picker';\nimport { showToast } from '../../widgets/Toaster';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes from '../../../errors/ErrorCodes';\nimport DispatchSdkCache from '../../../manager/sdk/DispatchSdkCache';\nimport { insertDocumentInDB } from '../../../utils/SyncManagerUtils';\nimport {CameraOptions, launchCamera} from 'react-native-image-picker';\nimport { Image } from 'react-native-compressor';\nimport Storage from '../../../utils/storage';\n\nexport async function deleteImage(imageData: { path: string; id: { toString: () => string; }; }, images: any[]) {\n await FileSystem.deleteAsync(imageData.path);\n let filtered = images.filter(ele=>ele).filter(img => img.id.toString().toLowerCase() !== imageData.id.toString().toLowerCase()\n );\n console.log(\"filtered\",filtered);\n return filtered;\n}\n\nexport function getMaxImagesCount(props: CaptureInput) {\n if (props && props.captureCountLimit) return props.captureCountLimit;\n else return 1;\n}\n\nexport function getImagesFileName() {\n return `IMG_${Date.now().toString()}.jpg`;\n}\n\nexport async function getCompressionRatio(\n uri: string,\n maxSize: number\n): Promise<number> {\n try {\n let fileInfo = await FileSystem.getInfoAsync(uri, {\n size: true,\n });\n maxSize = Math.min(maxSize, 1024);\n if (fileInfo.exists) {\n let fileSize = fileInfo.size / 1024;\n if (fileSize > maxSize) {\n return maxSize / fileSize;\n } else return 1;\n }\n return 1;\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'getCompressionRatio',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return 1;\n }\n}\n\nexport async function checkCameraPermissionUtil(): Promise<boolean> {\n let response = await ImagePicker.getCameraPermissionsAsync();\n if (response.granted) return true;\n else {\n let resp = await ImagePicker.requestCameraPermissionsAsync();\n return resp.status === PermissionStatus.GRANTED;\n }\n}\n\ninterface responseType {\n cancelled?: boolean;\n uri?: string;\n assets?: any[];\n}\n\ndeclare type ImageResult = {\n uri: string;\n width: number;\n height: number;\n base64?: string;\n};\n\nexport async function captureImage(\n imageWidth: number,\n imageHeight: number,\n fileSize: number\n): Promise<ImageResult | null> {\n try {\n if (!(await checkCameraPermissionUtil())) {\n Alert.alert('Permissions Error', 'Camera permissions not provided!');\n return null;\n }\n\n\n //let response : responseType;\n let uri : string = ''\n let cameraResult = null;\n\n const options = {\n selectionLimit: 1,\n mediaType: 'photo',\n includeBase64: false,\n };\n\n \n\n // You can also use as a promise without 'callback':\n // await launchCamera(options as CameraOptions , response => { \n // if (response?.didCancel){\n // console.log(\"aks:didCancel=\")\n // showToast('User cancelled the action'); \n // console.log('User cancelled the action');\n // } else if (response.errorCode == ('camera_unavailable' || 'permission' || 'others')) {\n // console.log(\"aks:errorCode=\")\n // showToast(response.errorMessage? response.errorMessage : ''); \n // console.log('ImagePicker Error: ', response.errorMessage);\n // } else {\n // console.log(\"aks:errorCode=before\")\n // async()=>{\n // console.log(\"aks:else=after\")\n // let assets = response.assets? response.assets : null; \n // console.log(\"aks:assets=\", assets)\n // // \n // if(assets != null){\n // uri = assets[0].uri as string;\n // //\n // let compressionRatio = await getCompressionRatio(uri, fileSize);\n // console.log(\"aks:compressionRatio=\", compressionRatio)\n \n // //\n // const saveOptions = {\n // compress: compressionRatio,\n // }\n // //\n // console.log(\"aks:uri=blank\")\n // console.log(\"aks:uri=\", uri)\n // let resizedImage = await ImageManipulator.manipulateAsync(uri, [], saveOptions,);\n // //\n // console.log(\"aks:resizedImage=\", resizedImage)\n // //delete file\n // FileSystem.deleteAsync(uri)\n // .then(() =>\n // Logger.getInstance().logEvent('CAPTURE_ET','File deleted success',LOG_TYPE.SDK_DEBUG)\n // ).catch((error) => {\n // Logger.getInstance().logEvent('CAPTURE_ET',error.message,LOG_TYPE.SDK_ERROR);\n // });\n // //\n // return resizedImage;\n // } \n // return null; \n // }\n // } \n // });\n\n await launchCamera(options as CameraOptions , response => { \n if (response?.didCancel){\n console.log(\"aks:didCancel=\")\n showToast('User cancelled the action'); \n console.log('User cancelled the action');\n } else if (response.errorCode == ('camera_unavailable' || 'permission' || 'others')) {\n console.log(\"aks:errorCode=\")\n showToast(response.errorMessage? response.errorMessage : ''); \n console.log('ImagePicker Error: ', response.errorMessage);\n } else {\n console.log(\"aks:response=else-start\")\n // \n let assets = response.assets? response.assets : null; \n console.log(\"aks:assets=\", assets)\n \n //\n if(assets != null){\n uri = assets[0].uri as string;\n }\n\n console.log(\"aks:uri=before\", uri)\n } \n });\n\n console.log(\"aks:uri-after=\", uri)\n // \n if (uri != null) {\n \n let compressionRatio = 0.80 //await getCompressionRatio(uri, fileSize);\n console.log('aks:compressionRatio=', compressionRatio);\n \n\n console.log('aks:uri=', uri);\n\n let resizedImage1 = await Image.compress(uri, {\n compressionMethod: 'manual',\n quality: compressionRatio,\n });\n //\n console.log('aks:resizedImage1=', resizedImage1);\n // If captured image file path does not have prefix file:// then we are addding manually\n if (!resizedImage1.includes('file')) {\n resizedImage1 = 'file://' + resizedImage1; \n }\n\n console.log('aks:resizedImage2=', resizedImage1);\n\n let resizedImageResult: ImageResult = {\n uri: resizedImage1,\n width: imageWidth,\n height: imageHeight,\n base64: '',\n };\n console.log('aks:resizedImageResult=', resizedImageResult);\n\n //delete file\n FileSystem.deleteAsync(uri)\n .then(() =>\n Logger.getInstance().logEvent('CAPTURE_ET','File deleted success',LOG_TYPE.SDK_DEBUG)\n ).catch((error) => {\n Logger.getInstance().logEvent('CAPTURE_ET',error.message,LOG_TYPE.SDK_ERROR);\n });\n //\n\n // console.log(\"resizedImage=before\")\n // console.log(\"resizedImage=\", resizedImage)\n\n return resizedImageResult;\n }\n\n // if(Platform.OS = 'android'){\n // response = {'uri': 'hello'}\n // uri = 'hello';\n // } else {\n // response = await ImagePicker.launchCameraAsync({\n // quality: 1,\n // });\n // let assets = response.assets;\n // if(assets){\n // uri = assets[0].uri\n // } \n // }\n\n // if (response?.cancelled){\n // showToast('User cancelled the action');\n // return null;\n // } \n\n \n // let actionResize: ActionResize = {\n // resize: {\n // width: imageWidth,\n // height: imageHeight,\n // },\n // };\n\n return null\n \n } catch (exception: any) {\n //showToast(`Error ${exception.message}`);\n //console.error('capture image error: ', exception);\n return null;\n }\n}\n\n\nexport async function getCaptureOutput(\n imageDataList: ImageData[],\n captureProps: CaptureInput\n): Promise<CaptureOutput> {\n if (!imageDataList || imageDataList.length === 0)\n return {\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n false,\n getEventCodeByET(\n ExecutionTaskID.IMAGE_CAPTURE,\n false,\n captureProps.applicableReasons?.failure\n ),\n '',\n captureProps.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n };\n else {\n return {\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n true,\n getEventCodeByET(\n ExecutionTaskID.IMAGE_CAPTURE,\n true,\n captureProps.applicableReasons?.success\n ),\n '',\n captureProps.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n captures: await getImagesData(imageDataList, captureProps),\n };\n }\n}\n\nasync function getImagesData(\n imagesDataList: ImageData[],\n captureProps: CaptureInput\n): Promise<CapturedImage[]> {\n if (imagesDataList && imagesDataList.length > 0) {\n let output: CapturedImage[] = [];\n const folderName =\n (await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.FMS_FOLDER\n )) ?? 'NULL';\n console.log('getImagesData:',folderName);\n for (const data of imagesDataList) {\n let insertID = await insertDocumentInDB(\n data.id,\n folderName,\n // JSON.stringify(captureProps.jobIds),\n // JSON.stringify(captureProps.objRefs),\n null,\n captureProps.title,\n data.path,\n data.dateTime,\n data.lat,\n data.lng,\n data.accuracy\n );\n if (insertID)\n output.push({\n url: '',\n timestamp: data.timestamp,\n file: { folder: folderName, name: data.id },\n });\n else\n throw new BaseError(\n BaseErrorCodes.SQLiteDBIssue,\n 'Unable to save Image'\n );\n }\n return output;\n } else return [];\n}"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Alert","FileSystem","ImagePicker","PermissionStatus","showToast","Logger","LOG_TYPE","getBaseETResponse","getEventCodeByET","EntityCode","ExecutionTaskID","BaseError","BaseErrorCodes","DispatchSdkCache","insertDocumentInDB","launchCamera","Image","deleteImage","imageData","images","deleteAsync","path","filtered","filter","ele","img","id","toString","toLowerCase","console","log","getMaxImagesCount","props","captureCountLimit","getImagesFileName","Date","now","getCompressionRatio","uri","maxSize","fileInfo","getInfoAsync","size","Math","min","exists","fileSize","error","getInstance","logEvent","message","SDK_ERROR","checkCameraPermissionUtil","response","getCameraPermissionsAsync","granted","resp","requestCameraPermissionsAsync","status","GRANTED","captureImage","imageWidth","imageHeight","alert","cameraResult","options","selectionLimit","mediaType","includeBase64","didCancel","errorCode","errorMessage","assets","compressionRatio","resizedImage1","compress","compressionMethod","quality","includes","resizedImageResult","width","height","base64","then","SDK_DEBUG","catch","exception","getCaptureOutput","imageDataList","captureProps","_captureProps$applica","length","IMAGE_CAPTURE","applicableReasons","failure","mergedObjectiveId","_captureProps$applica2","success","captures","getImagesData","imagesDataList","output","folderName","getKeyFromCache","KEYS","FMS_FOLDER","data","insertID","title","dateTime","lat","lng","accuracy","push","url","timestamp","file","folder","name","SQLiteDBIssue"],"sources":["CaptureUtils.ts"],"sourcesContent":["import type {\n CapturedImage,\n CaptureInput,\n CaptureOutput,\n ImageData,\n} from './CaptureSchema';\nimport { Alert, Platform } from 'react-native';\nimport * as FileSystem from 'expo-file-system';\nimport * as ImagePicker from 'expo-image-picker';\nimport { PermissionStatus } from 'expo-image-picker';\nimport { showToast } from '../../widgets/Toaster';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes from '../../../errors/ErrorCodes';\nimport DispatchSdkCache from '../../../manager/sdk/DispatchSdkCache';\nimport { insertDocumentInDB } from '../../../utils/SyncManagerUtils';\nimport {CameraOptions, launchCamera} from 'react-native-image-picker';\nimport { Image } from 'react-native-compressor';\nimport Storage from '../../../utils/storage';\n\nexport async function deleteImage(imageData: { path: string; id: { toString: () => string; }; }, images: any[]) {\n await FileSystem.deleteAsync(imageData.path);\n let filtered = images.filter(ele=>ele).filter(img => img.id.toString().toLowerCase() !== imageData.id.toString().toLowerCase()\n );\n console.log(\"filtered\",filtered);\n return filtered;\n}\n\nexport function getMaxImagesCount(props: CaptureInput) {\n if (props && props.captureCountLimit) return props.captureCountLimit;\n else return 1;\n}\n\nexport function getImagesFileName() {\n return `IMG_${Date.now().toString()}.jpg`;\n}\n\nexport async function getCompressionRatio(\n uri: string,\n maxSize: number\n): Promise<number> {\n try {\n let fileInfo = await FileSystem.getInfoAsync(uri, {\n size: true,\n });\n maxSize = Math.min(maxSize, 1024);\n if (fileInfo.exists) {\n let fileSize = fileInfo.size / 1024;\n if (fileSize > maxSize) {\n return maxSize / fileSize;\n } else return 1;\n }\n return 1;\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'getCompressionRatio',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return 1;\n }\n}\n\nexport async function checkCameraPermissionUtil(): Promise<boolean> {\n let response = await ImagePicker.getCameraPermissionsAsync();\n if (response.granted) return true;\n else {\n let resp = await ImagePicker.requestCameraPermissionsAsync();\n return resp.status === PermissionStatus.GRANTED;\n }\n}\n\ninterface responseType {\n cancelled?: boolean;\n uri?: string;\n assets?: any[];\n}\n\ndeclare type ImageResult = {\n uri: string;\n width: number;\n height: number;\n base64?: string;\n};\n\nexport async function captureImage(\n imageWidth: number,\n imageHeight: number,\n fileSize: number\n): Promise<ImageResult | null> {\n try {\n if (!(await checkCameraPermissionUtil())) {\n Alert.alert('Permissions Error', 'Camera permissions not provided!');\n return null;\n }\n\n\n //let response : responseType;\n let uri : string = ''\n let cameraResult = null;\n\n const options = {\n selectionLimit: 1,\n mediaType: 'photo',\n includeBase64: false,\n };\n\n \n\n // You can also use as a promise without 'callback':\n // await launchCamera(options as CameraOptions , response => { \n // if (response?.didCancel){\n // console.log(\"aks:didCancel=\")\n // showToast('User cancelled the action'); \n // console.log('User cancelled the action');\n // } else if (response.errorCode == ('camera_unavailable' || 'permission' || 'others')) {\n // console.log(\"aks:errorCode=\")\n // showToast(response.errorMessage? response.errorMessage : ''); \n // console.log('ImagePicker Error: ', response.errorMessage);\n // } else {\n // console.log(\"aks:errorCode=before\")\n // async()=>{\n // console.log(\"aks:else=after\")\n // let assets = response.assets? response.assets : null; \n // console.log(\"aks:assets=\", assets)\n // // \n // if(assets != null){\n // uri = assets[0].uri as string;\n // //\n // let compressionRatio = await getCompressionRatio(uri, fileSize);\n // console.log(\"aks:compressionRatio=\", compressionRatio)\n \n // //\n // const saveOptions = {\n // compress: compressionRatio,\n // }\n // //\n // console.log(\"aks:uri=blank\")\n // console.log(\"aks:uri=\", uri)\n // let resizedImage = await ImageManipulator.manipulateAsync(uri, [], saveOptions,);\n // //\n // console.log(\"aks:resizedImage=\", resizedImage)\n // //delete file\n // FileSystem.deleteAsync(uri)\n // .then(() =>\n // Logger.getInstance().logEvent('CAPTURE_ET','File deleted success',LOG_TYPE.SDK_DEBUG)\n // ).catch((error) => {\n // Logger.getInstance().logEvent('CAPTURE_ET',error.message,LOG_TYPE.SDK_ERROR);\n // });\n // //\n // return resizedImage;\n // } \n // return null; \n // }\n // } \n // });\n\n await launchCamera(options as CameraOptions , response => { \n if (response?.didCancel){\n console.log(\"aks:didCancel=\")\n showToast('User cancelled the action'); \n console.log('User cancelled the action');\n } else if (response.errorCode === 'camera_unavailable' || response.errorCode === 'permission' || response.errorCode === 'others') {\n console.log(\"aks:errorCode=\")\n showToast(response.errorMessage? response.errorMessage : ''); \n console.log('ImagePicker Error: ', response.errorMessage);\n } else {\n console.log(\"aks:response=else-start\")\n // \n let assets = response.assets? response.assets : null; \n console.log(\"aks:assets=\", assets)\n \n //\n if(assets != null){\n uri = assets[0].uri as string;\n }\n\n console.log(\"aks:uri=before\", uri)\n } \n });\n\n console.log(\"aks:uri-after=\", uri)\n // \n if (uri != null) {\n \n let compressionRatio = 0.80 //await getCompressionRatio(uri, fileSize);\n console.log('aks:compressionRatio=', compressionRatio);\n \n\n console.log('aks:uri=', uri);\n\n let resizedImage1 = await Image.compress(uri, {\n compressionMethod: 'manual',\n quality: compressionRatio,\n });\n //\n console.log('aks:resizedImage1=', resizedImage1);\n // If captured image file path does not have prefix file:// then we are addding manually\n if (!resizedImage1.includes('file')) {\n resizedImage1 = 'file://' + resizedImage1; \n }\n\n console.log('aks:resizedImage2=', resizedImage1);\n\n let resizedImageResult: ImageResult = {\n uri: resizedImage1,\n width: imageWidth,\n height: imageHeight,\n base64: '',\n };\n console.log('aks:resizedImageResult=', resizedImageResult);\n\n //delete file\n FileSystem.deleteAsync(uri)\n .then(() =>\n Logger.getInstance().logEvent('CAPTURE_ET','File deleted success',LOG_TYPE.SDK_DEBUG)\n ).catch((error) => {\n Logger.getInstance().logEvent('CAPTURE_ET',error.message,LOG_TYPE.SDK_ERROR);\n });\n //\n\n // console.log(\"resizedImage=before\")\n // console.log(\"resizedImage=\", resizedImage)\n\n return resizedImageResult;\n }\n\n // if(Platform.OS = 'android'){\n // response = {'uri': 'hello'}\n // uri = 'hello';\n // } else {\n // response = await ImagePicker.launchCameraAsync({\n // quality: 1,\n // });\n // let assets = response.assets;\n // if(assets){\n // uri = assets[0].uri\n // } \n // }\n\n // if (response?.cancelled){\n // showToast('User cancelled the action');\n // return null;\n // } \n\n \n // let actionResize: ActionResize = {\n // resize: {\n // width: imageWidth,\n // height: imageHeight,\n // },\n // };\n\n return null\n \n } catch (exception: any) {\n //showToast(`Error ${exception.message}`);\n //console.error('capture image error: ', exception);\n return null;\n }\n}\n\n\nexport async function getCaptureOutput(\n imageDataList: ImageData[],\n captureProps: CaptureInput\n): Promise<CaptureOutput> {\n if (!imageDataList || imageDataList.length === 0)\n return {\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n false,\n getEventCodeByET(\n ExecutionTaskID.IMAGE_CAPTURE,\n false,\n captureProps.applicableReasons?.failure\n ),\n '',\n captureProps.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n };\n else {\n return {\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n true,\n getEventCodeByET(\n ExecutionTaskID.IMAGE_CAPTURE,\n true,\n captureProps.applicableReasons?.success\n ),\n '',\n captureProps.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n captures: await getImagesData(imageDataList, captureProps),\n };\n }\n}\n\nasync function getImagesData(\n imagesDataList: ImageData[],\n captureProps: CaptureInput\n): Promise<CapturedImage[]> {\n if (imagesDataList && imagesDataList.length > 0) {\n let output: CapturedImage[] = [];\n const folderName =\n (await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.FMS_FOLDER\n )) ?? 'NULL';\n console.log('getImagesData:',folderName);\n for (const data of imagesDataList) {\n let insertID = await insertDocumentInDB(\n data.id,\n folderName,\n // JSON.stringify(captureProps.jobIds),\n // JSON.stringify(captureProps.objRefs),\n null,\n captureProps.title,\n data.path,\n data.dateTime,\n data.lat,\n data.lng,\n data.accuracy\n );\n if (insertID)\n output.push({\n url: '',\n timestamp: data.timestamp,\n file: { folder: folderName, name: data.id },\n });\n else\n throw new BaseError(\n BaseErrorCodes.SQLiteDBIssue,\n 'Unable to save Image'\n );\n }\n return output;\n } else return [];\n}"],"mappings":"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","ignoreList":[]}