@os1-platform/dispatch-mobile 2.1.8 → 2.1.10

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 (131) hide show
  1. package/lib/commonjs/analytics/sentry/SentryAnalyticsSingleton.js +0 -2
  2. package/lib/commonjs/analytics/sentry/SentryAnalyticsSingleton.js.map +1 -1
  3. package/lib/commonjs/analytics/sentry/SentryAnalyticsUtils.js +0 -6
  4. package/lib/commonjs/analytics/sentry/SentryAnalyticsUtils.js.map +1 -1
  5. package/lib/commonjs/analytics/sentry/SentrySdkConstants.js +2 -0
  6. package/lib/commonjs/analytics/sentry/SentrySdkConstants.js.map +1 -1
  7. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +1 -1
  8. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  9. package/lib/commonjs/index.js.map +1 -1
  10. package/lib/commonjs/manager/sdk/DispatchSDKManager.js +5 -4
  11. package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
  12. package/lib/commonjs/manager/sdk/callbacksHandler.js +28 -1
  13. package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -1
  14. package/lib/commonjs/manager/syncmanager/AppSyncManager.js +7 -5
  15. package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
  16. package/lib/commonjs/manager/syncmanager/DBConfig.js +3 -1
  17. package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
  18. package/lib/commonjs/manager/syncmanager/constants.js +4 -1
  19. package/lib/commonjs/manager/syncmanager/constants.js.map +1 -1
  20. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +37 -20
  21. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  22. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +26 -4
  23. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
  24. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +276 -20
  25. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  26. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js +41 -13
  27. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  28. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +116 -59
  29. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  30. package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js +17 -0
  31. package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
  32. package/lib/commonjs/models/auth.js.map +1 -1
  33. package/lib/commonjs/models/sdk.js.map +1 -1
  34. package/lib/commonjs/network/NetworkClient.js +12 -2
  35. package/lib/commonjs/network/NetworkClient.js.map +1 -1
  36. package/lib/commonjs/network/NetworkUtils.js +14 -7
  37. package/lib/commonjs/network/NetworkUtils.js.map +1 -1
  38. package/lib/commonjs/network/client.js +1 -1
  39. package/lib/commonjs/network/client.js.map +1 -1
  40. package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
  41. package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
  42. package/lib/commonjs/utils/SyncManagerUtils.js +29 -2
  43. package/lib/commonjs/utils/SyncManagerUtils.js.map +1 -1
  44. package/lib/commonjs/utils/storage.js +21 -5
  45. package/lib/commonjs/utils/storage.js.map +1 -1
  46. package/lib/commonjs/utils/utils.js +0 -9
  47. package/lib/commonjs/utils/utils.js.map +1 -1
  48. package/lib/module/analytics/sentry/SentryAnalyticsSingleton.js +0 -2
  49. package/lib/module/analytics/sentry/SentryAnalyticsSingleton.js.map +1 -1
  50. package/lib/module/analytics/sentry/SentryAnalyticsUtils.js +0 -6
  51. package/lib/module/analytics/sentry/SentryAnalyticsUtils.js.map +1 -1
  52. package/lib/module/analytics/sentry/SentrySdkConstants.js +2 -0
  53. package/lib/module/analytics/sentry/SentrySdkConstants.js.map +1 -1
  54. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +1 -1
  55. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  56. package/lib/module/index.js.map +1 -1
  57. package/lib/module/manager/sdk/DispatchSDKManager.js +5 -4
  58. package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
  59. package/lib/module/manager/sdk/callbacksHandler.js +27 -1
  60. package/lib/module/manager/sdk/callbacksHandler.js.map +1 -1
  61. package/lib/module/manager/syncmanager/AppSyncManager.js +7 -5
  62. package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
  63. package/lib/module/manager/syncmanager/DBConfig.js +3 -1
  64. package/lib/module/manager/syncmanager/DBConfig.js.map +1 -1
  65. package/lib/module/manager/syncmanager/constants.js +3 -0
  66. package/lib/module/manager/syncmanager/constants.js.map +1 -1
  67. package/lib/module/manager/syncmanager/document/DocumentHttpClient.js +38 -21
  68. package/lib/module/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  69. package/lib/module/manager/syncmanager/document/DocumentManager.js +26 -4
  70. package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
  71. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +276 -20
  72. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  73. package/lib/module/manager/syncmanager/events/ETEventsManager.js +42 -14
  74. package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  75. package/lib/module/manager/syncmanager/events/EventsSyncManager.js +119 -61
  76. package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  77. package/lib/module/manager/syncmanager/events/SyncHttpClient.js +15 -0
  78. package/lib/module/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
  79. package/lib/module/models/auth.js.map +1 -1
  80. package/lib/module/models/sdk.js.map +1 -1
  81. package/lib/module/network/NetworkClient.js +12 -2
  82. package/lib/module/network/NetworkClient.js.map +1 -1
  83. package/lib/module/network/NetworkUtils.js +14 -7
  84. package/lib/module/network/NetworkUtils.js.map +1 -1
  85. package/lib/module/network/client.js +1 -1
  86. package/lib/module/network/client.js.map +1 -1
  87. package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
  88. package/lib/module/ui/screens/FormsScreen.js.map +1 -1
  89. package/lib/module/utils/SyncManagerUtils.js +30 -3
  90. package/lib/module/utils/SyncManagerUtils.js.map +1 -1
  91. package/lib/module/utils/storage.js +21 -5
  92. package/lib/module/utils/storage.js.map +1 -1
  93. package/lib/module/utils/utils.js +0 -9
  94. package/lib/module/utils/utils.js.map +1 -1
  95. package/lib/typescript/analytics/sentry/SentrySdkConstants.d.ts +2 -0
  96. package/lib/typescript/manager/sdk/callbacksHandler.d.ts +3 -1
  97. package/lib/typescript/manager/syncmanager/DBConfig.d.ts +4 -0
  98. package/lib/typescript/manager/syncmanager/constants.d.ts +3 -0
  99. package/lib/typescript/manager/syncmanager/document/DocumentManager.d.ts +2 -0
  100. package/lib/typescript/manager/syncmanager/document/DocumentSyncManager.d.ts +2 -1
  101. package/lib/typescript/manager/syncmanager/events/ETEventsManager.d.ts +2 -0
  102. package/lib/typescript/manager/syncmanager/events/EventsSyncManager.d.ts +1 -1
  103. package/lib/typescript/models/sdk.d.ts +1 -0
  104. package/lib/typescript/utils/storage.d.ts +3 -3
  105. package/package.json +5 -5
  106. package/src/analytics/sentry/SentryAnalyticsSingleton.ts +7 -9
  107. package/src/analytics/sentry/SentryAnalyticsUtils.ts +24 -36
  108. package/src/analytics/sentry/SentrySdkConstants.ts +2 -0
  109. package/src/components/executiontasks/imageCapture/ImageCapture.tsx +1 -3
  110. package/src/index.tsx +1 -1
  111. package/src/manager/sdk/DispatchSDKManager.ts +8 -3
  112. package/src/manager/sdk/callbacksHandler.ts +39 -2
  113. package/src/manager/syncmanager/AppSyncManager.ts +15 -13
  114. package/src/manager/syncmanager/DBConfig.ts +4 -0
  115. package/src/manager/syncmanager/constants.ts +3 -0
  116. package/src/manager/syncmanager/document/DocumentHttpClient.ts +54 -24
  117. package/src/manager/syncmanager/document/DocumentManager.ts +48 -7
  118. package/src/manager/syncmanager/document/DocumentSyncManager.ts +351 -30
  119. package/src/manager/syncmanager/events/ETEventsManager.ts +50 -16
  120. package/src/manager/syncmanager/events/EventsSyncManager.ts +157 -74
  121. package/src/manager/syncmanager/events/SyncHttpClient.ts +30 -1
  122. package/src/models/auth.ts +1 -0
  123. package/src/models/sdk.ts +1 -0
  124. package/src/network/NetworkClient.ts +18 -2
  125. package/src/network/NetworkUtils.ts +9 -1
  126. package/src/network/client.ts +1 -1
  127. package/src/ui/screens/DeliverScreen.tsx +6 -5
  128. package/src/ui/screens/FormsScreen.tsx +8 -6
  129. package/src/utils/SyncManagerUtils.ts +41 -6
  130. package/src/utils/storage.ts +21 -8
  131. package/src/utils/utils.ts +0 -8
@@ -6,7 +6,8 @@ import Logger, { LOG_TYPE } from '../../../utils/Logger';
6
6
  import RNFS from 'react-native-fs';
7
7
  import { SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';
8
8
  import { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';
9
- import { flattenObject } from '../../../utils/utils';
9
+ import { flattenObject, isTokenExpired } from '../../../utils/utils';
10
+ import callbackHandler from '../../../manager/sdk/callbacksHandler';
10
11
  const cache = DispatchSdkCache.getInstance();
11
12
  const cacheKeys = DispatchSdkCache.KEYS;
12
13
  export default class DocumentHttpClient extends HttpClient {
@@ -24,15 +25,18 @@ export default class DocumentHttpClient extends HttpClient {
24
25
  info = String(response.status);
25
26
  }
26
27
  let extraParameters = {
27
- response: info
28
+ response: info,
29
+ fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4) : '',
30
+ dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4) : '',
31
+ dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9) : ''
28
32
  };
29
33
  fireEventWithScreenName({
30
34
  severityLevel: SeverityLevelValue.LOG,
31
35
  eventName: SentryEventNameSdkConstants.API_RESPONSE,
32
- screenName: 'Upload_Base64_File_Response',
36
+ screenName: 'uploadDocument:Upload_Base64_File_Response',
33
37
  extraParams: extraParameters
34
38
  });
35
- Logger.getInstance().logEvent('uploadBase64FileResponse', flattenObject(extraParameters), LOG_TYPE.SDK_ERROR);
39
+ Logger.getInstance().logEvent('uploadDocument:uploadBase64FileResponse', flattenObject(extraParameters), LOG_TYPE.SDK_ERROR);
36
40
  if (response && response.data != null && response.data.data != null && response.data.data.id && response.status === 202) {
37
41
  return response.data.data.id;
38
42
  } else {
@@ -47,16 +51,19 @@ export default class DocumentHttpClient extends HttpClient {
47
51
  } else {
48
52
  info = String(uploadResponse.status);
49
53
  }
50
- let extraParams = {
51
- response: info
54
+ let extraParameters = {
55
+ response: info,
56
+ fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4) : '',
57
+ dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4) : '',
58
+ dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9) : ''
52
59
  };
53
60
  fireEventWithScreenName({
54
61
  severityLevel: SeverityLevelValue.LOG,
55
62
  eventName: SentryEventNameSdkConstants.API_RESPONSE,
56
- screenName: 'Upload_Binary_File_Response',
57
- extraParams: extraParams
63
+ screenName: 'uploadDocument:Upload_Binary_File_Response',
64
+ extraParams: extraParameters
58
65
  });
59
- Logger.getInstance().logEvent('uploadBinaryFileResponse', flattenObject(extraParams), LOG_TYPE.SDK_ERROR);
66
+ Logger.getInstance().logEvent('uploadDocument:uploadBinaryFileResponse', flattenObject(extraParameters), LOG_TYPE.SDK_ERROR);
60
67
  if (uploadResponse != null && uploadResponse.status === 202 && uploadResponse.body != null) {
61
68
  var _JSON$parse;
62
69
  FileSystem.deleteAsync(document.file_path).then().catch(); // WE DELETE FILE HERE
@@ -93,18 +100,23 @@ export default class DocumentHttpClient extends HttpClient {
93
100
  }],
94
101
  fileName: document.file_name
95
102
  });
96
- const sdkConfig = await cache.getObjectFromCache(cacheKeys.SDK_CONFIG);
97
- let extraParams = {
98
- fileName: document.file_name,
99
- folderName: document.fms_folder_id
103
+ let sdkConfig = await cache.getObjectFromCache(cacheKeys.SDK_CONFIG);
104
+ if (isTokenExpired(sdkConfig.accessToken)) {
105
+ await callbackHandler.refresheAndUpdateToken();
106
+ sdkConfig = await cache.getObjectFromCache(cacheKeys.SDK_CONFIG);
107
+ }
108
+ let extraParameters = {
109
+ fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4) : '',
110
+ dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4) : '',
111
+ dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9) : ''
100
112
  };
101
113
  fireEventWithScreenName({
102
114
  severityLevel: SeverityLevelValue.LOG,
103
115
  eventName: SentryEventNameSdkConstants.API_CALL,
104
116
  screenName: 'Upload_Base64_File_Request',
105
- extraParams: extraParams
117
+ extraParams: extraParameters
106
118
  });
107
- Logger.getInstance().logEvent('uploadBase64FileRequest', flattenObject(extraParams), LOG_TYPE.SDK_ERROR);
119
+ Logger.getInstance().logEvent('uploadBase64FileRequest', flattenObject(extraParameters), LOG_TYPE.SDK_ERROR);
108
120
  return this.instance.post(`/api/folders/${document.fms_folder_id}/files`, requestBody, {
109
121
  headers: {
110
122
  'accept': 'application/json',
@@ -118,24 +130,29 @@ export default class DocumentHttpClient extends HttpClient {
118
130
 
119
131
  // This function will upload processed (overlayed file) if exist otherwise will uplaod original file for pod images.
120
132
  async uploadBinaryFile(document) {
121
- const sdkConfig = await cache.getObjectFromCache(cacheKeys.SDK_CONFIG);
133
+ let sdkConfig = await cache.getObjectFromCache(cacheKeys.SDK_CONFIG);
134
+ if (isTokenExpired(sdkConfig.accessToken)) {
135
+ await callbackHandler.refresheAndUpdateToken();
136
+ sdkConfig = await cache.getObjectFromCache(cacheKeys.SDK_CONFIG);
137
+ }
122
138
  let filePathToUpload = document.file_path;
123
139
  let processedFileExist = await RNFS.exists(document.processed_file_path);
124
140
  if (processedFileExist) {
125
141
  filePathToUpload = document.processed_file_path;
126
142
  }
127
143
  const url = sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;
128
- let extraParams = {
129
- fileName: document.file_name,
130
- folderName: document.fms_folder_id
144
+ let extraParameters = {
145
+ fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4) : '',
146
+ dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4) : '',
147
+ dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9) : ''
131
148
  };
132
149
  fireEventWithScreenName({
133
150
  severityLevel: SeverityLevelValue.LOG,
134
151
  eventName: SentryEventNameSdkConstants.API_CALL,
135
152
  screenName: 'Upload_Binary_File_Request',
136
- extraParams: extraParams
153
+ extraParams: extraParameters
137
154
  });
138
- Logger.getInstance().logEvent('uploadBinaryFileRequest', flattenObject(extraParams), LOG_TYPE.SDK_ERROR);
155
+ Logger.getInstance().logEvent('uploadBinaryFileRequest', flattenObject(extraParameters), LOG_TYPE.SDK_ERROR);
139
156
  return FileSystem.uploadAsync(url, filePathToUpload, {
140
157
  headers: {
141
158
  'accept': 'application/json',
@@ -1 +1 @@
1
- {"version":3,"names":["HttpClient","FileSystem","FileSystemUploadType","DispatchSdkCache","Logger","LOG_TYPE","RNFS","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","flattenObject","cache","getInstance","cacheKeys","KEYS","DocumentHttpClient","constructor","baseURL","uploadDocument","document","base64","data","response","uploadBase64File","info","body","status","substring","String","extraParameters","severityLevel","LOG","eventName","API_RESPONSE","screenName","extraParams","logEvent","SDK_ERROR","id","uploadResponse","uploadBinaryFile","_JSON$parse","deleteAsync","file_path","then","catch","processed_file_path","JSON","parse","dataToUpload","undefined","requestBody","stringify","file","type","description","desc","tags","key","value","dispatch_id","file_name","fileName","sdkConfig","getObjectFromCache","SDK_CONFIG","folderName","fms_folder_id","API_CALL","instance","post","headers","accessToken","tenantID","filePathToUpload","processedFileExist","exists","url","tenantBaseURL","uploadAsync","httpMethod","uploadType","MULTIPART","fieldName","parameters"],"sources":["DocumentHttpClient.ts"],"sourcesContent":["import HttpClient from '../../../network/client';\nimport type { DocumentRow } from '../DBConfig';\nimport type { AxiosResponse } from 'axios';\nimport * as FileSystem from 'expo-file-system';\nimport { FileSystemUploadResult, FileSystemUploadType } from 'expo-file-system';\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport type { DispatchSDKConfig } from '../../../models/sdk';\nimport RNFS from 'react-native-fs';\nimport { stat } from 'react-native-fs';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\nimport { flattenObject } from '../../../utils/utils';\n\nconst cache = DispatchSdkCache.getInstance();\nconst cacheKeys = DispatchSdkCache.KEYS;\nexport default class DocumentHttpClient extends HttpClient {\n constructor(baseURL: string) {\n super(baseURL);\n }\n public async uploadDocument(document: DocumentRow): Promise<string | null> {\n if (document.base64 && document.data != null) {\n const response = await this.uploadBase64File(document);\n\n let info = '';\n if (\n response &&\n response.data !== null &&\n response.data.body !== null &&\n response.status !== 202\n ) {\n let body = response.data.body;\n info = body.substring(40);\n } else {\n info = String(response.status);\n }\n let extraParameters = { response: info };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'Upload_Base64_File_Response',\n extraParams: extraParameters,\n });\n\n Logger.getInstance().logEvent(\n 'uploadBase64FileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n response &&\n response.data != null &&\n response.data.data != null &&\n response.data.data.id &&\n response.status === 202\n ) {\n return response.data.data.id;\n } else {\n return null;\n }\n } else {\n const uploadResponse = await this.uploadBinaryFile(document);\n let info = '';\n if (\n uploadResponse &&\n uploadResponse.body !== null &&\n uploadResponse.status !== 202\n ) {\n let body = uploadResponse.body;\n info = body.substring(40);\n } else {\n info = String(uploadResponse.status);\n }\n let extraParams = { response: info };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'Upload_Binary_File_Response',\n extraParams: extraParams,\n });\n Logger.getInstance().logEvent(\n 'uploadBinaryFileResponse',\n flattenObject(extraParams),\n LOG_TYPE.SDK_ERROR\n );\n if (\n uploadResponse != null &&\n uploadResponse.status === 202 &&\n uploadResponse.body != null\n ) {\n FileSystem.deleteAsync(document.file_path).then().catch(); // WE DELETE FILE HERE\n FileSystem.deleteAsync(document.processed_file_path).then().catch(); // WE DELETE FILE HERE\n\n return JSON.parse(uploadResponse.body)?.data?.id;\n } else {\n return null;\n }\n }\n }\n\n // This function will upload processed base64 data (overlayed base64 data ) if exist otherwise will uplaod original base 64 data for pod signature.\n public async uploadBase64File(document: DocumentRow): Promise<AxiosResponse> {\n let dataToUpload = document.data;\n if (\n document.processed_file_path !== null &&\n document.processed_file_path !== undefined &&\n document.processed_file_path !== ''\n ) {\n dataToUpload = document.processed_file_path;\n }\n let requestBody = JSON.stringify({\n file: {\n type: 'FILE',\n data: dataToUpload,\n },\n description: document.desc,\n tags: [\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ],\n fileName: document.file_name,\n });\n const sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n let extraParams = {\n fileName: document.file_name,\n folderName: document.fms_folder_id,\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Base64_File_Request',\n extraParams: extraParams,\n });\n Logger.getInstance().logEvent(\n 'uploadBase64FileRequest',\n flattenObject(extraParams),\n LOG_TYPE.SDK_ERROR\n );\n return this.instance.post(\n `/api/folders/${document.fms_folder_id}/files`,\n requestBody,\n {\n headers: {\n 'accept': 'application/json',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'Content-Type': 'application/json',\n },\n }\n );\n }\n\n // This function will upload processed (overlayed file) if exist otherwise will uplaod original file for pod images.\n private async uploadBinaryFile(\n document: DocumentRow\n ): Promise<FileSystemUploadResult> {\n const sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n let filePathToUpload = document.file_path;\n let processedFileExist = await RNFS.exists(document.processed_file_path);\n if (processedFileExist) {\n filePathToUpload = document.processed_file_path;\n }\n const url =\n sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;\n let extraParams = {\n fileName: document.file_name,\n folderName: document.fms_folder_id,\n };\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Binary_File_Request',\n extraParams: extraParams,\n });\n Logger.getInstance().logEvent(\n 'uploadBinaryFileRequest',\n flattenObject(extraParams),\n LOG_TYPE.SDK_ERROR\n );\n return FileSystem.uploadAsync(url, filePathToUpload, {\n headers: {\n 'accept': 'application/json',\n 'Content-Type': 'multipart/form-data',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n },\n httpMethod: 'POST',\n uploadType: FileSystemUploadType.MULTIPART,\n fieldName: 'file',\n parameters: {\n tags: JSON.stringify([\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ]),\n },\n });\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["HttpClient","FileSystem","FileSystemUploadType","DispatchSdkCache","Logger","LOG_TYPE","RNFS","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","flattenObject","isTokenExpired","callbackHandler","cache","getInstance","cacheKeys","KEYS","DocumentHttpClient","constructor","baseURL","uploadDocument","document","base64","data","response","uploadBase64File","info","body","status","substring","String","extraParameters","fName","file_name","length","dName","fms_folder_id","dispId","dispatch_id","severityLevel","LOG","eventName","API_RESPONSE","screenName","extraParams","logEvent","SDK_ERROR","id","uploadResponse","uploadBinaryFile","_JSON$parse","deleteAsync","file_path","then","catch","processed_file_path","JSON","parse","dataToUpload","undefined","requestBody","stringify","file","type","description","desc","tags","key","value","fileName","sdkConfig","getObjectFromCache","SDK_CONFIG","accessToken","refresheAndUpdateToken","API_CALL","instance","post","headers","tenantID","filePathToUpload","processedFileExist","exists","url","tenantBaseURL","uploadAsync","httpMethod","uploadType","MULTIPART","fieldName","parameters"],"sources":["DocumentHttpClient.ts"],"sourcesContent":["import HttpClient from '../../../network/client';\nimport type { DocumentRow } from '../DBConfig';\nimport type { AxiosResponse } from 'axios';\nimport * as FileSystem from 'expo-file-system';\nimport { FileSystemUploadResult, FileSystemUploadType } from 'expo-file-system';\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport type { DispatchSDKConfig } from '../../../models/sdk';\nimport RNFS from 'react-native-fs';\nimport { stat } from 'react-native-fs';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\nimport { flattenObject, isTokenExpired } from '../../../utils/utils';\nimport callbackHandler from '../../../manager/sdk/callbacksHandler';\n\nconst cache = DispatchSdkCache.getInstance();\nconst cacheKeys = DispatchSdkCache.KEYS;\nexport default class DocumentHttpClient extends HttpClient {\n constructor(baseURL: string) {\n super(baseURL);\n }\n public async uploadDocument(document: DocumentRow): Promise<string | null> {\n if (document.base64 && document.data != null) {\n const response = await this.uploadBase64File(document);\n let info = '';\n if (\n response &&\n response.data !== null &&\n response.data.body !== null &&\n response.status !== 202\n ) {\n let body = response.data.body;\n info = body.substring(40);\n } else {\n info = String(response.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Base64_File_Response',\n extraParams: extraParameters,\n });\n\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBase64FileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n response &&\n response.data != null &&\n response.data.data != null &&\n response.data.data.id &&\n response.status === 202\n ) {\n return response.data.data.id;\n }else{\n return null;\n }\n } else {\n const uploadResponse = await this.uploadBinaryFile(document);\n let info = '';\n if (\n uploadResponse &&\n uploadResponse.body !== null &&\n uploadResponse.status !== 202\n ) {\n let body = uploadResponse.body;\n info = body.substring(40);\n } else {\n info = String(uploadResponse.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Binary_File_Response',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBinaryFileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n uploadResponse != null &&\n uploadResponse.status === 202 &&\n uploadResponse.body != null\n ) {\n FileSystem.deleteAsync(document.file_path).then().catch(); // WE DELETE FILE HERE\n FileSystem.deleteAsync(document.processed_file_path).then().catch(); // WE DELETE FILE HERE\n\n return JSON.parse(uploadResponse.body)?.data?.id;\n }else{\n return null;\n }\n }\n }\n\n // This function will upload processed base64 data (overlayed base64 data ) if exist otherwise will uplaod original base 64 data for pod signature.\n public async uploadBase64File(document: DocumentRow): Promise<AxiosResponse> {\n let dataToUpload = document.data;\n if (\n document.processed_file_path !== null &&\n document.processed_file_path !== undefined &&\n document.processed_file_path !== ''\n ) {\n dataToUpload = document.processed_file_path;\n }\n let requestBody = JSON.stringify({\n file: {\n type: 'FILE',\n data: dataToUpload,\n },\n description: document.desc,\n tags: [\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ],\n fileName: document.file_name,\n });\n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n let extraParameters = { \n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Base64_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBase64FileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return this.instance.post(\n `/api/folders/${document.fms_folder_id}/files`,\n requestBody,\n {\n headers: {\n 'accept': 'application/json',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'Content-Type': 'application/json',\n },\n }\n );\n }\n\n // This function will upload processed (overlayed file) if exist otherwise will uplaod original file for pod images.\n private async uploadBinaryFile(\n document: DocumentRow\n ): Promise<FileSystemUploadResult> {\n \n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n\n let filePathToUpload = document.file_path;\n let processedFileExist = await RNFS.exists(document.processed_file_path);\n if (processedFileExist) {\n filePathToUpload = document.processed_file_path;\n }\n const url =\n sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;\n \n let extraParameters = { \n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Binary_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBinaryFileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return FileSystem.uploadAsync(url, filePathToUpload, {\n headers: {\n 'accept': 'application/json',\n 'Content-Type': 'multipart/form-data',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n },\n httpMethod: 'POST',\n uploadType: FileSystemUploadType.MULTIPART,\n fieldName: 'file',\n parameters: {\n tags: JSON.stringify([\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ]),\n },\n });\n }\n}\n"],"mappings":"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"}
@@ -3,6 +3,7 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
3
3
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4
4
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
5
5
  import { DOCUMENT_COLUMNS, DOCUMENT_TABLE } from '../DBConfig';
6
+ import { MAX_RETRY_COUNT, PROCESS_MAX_RETRIED_ROWS } from '../constants';
6
7
  import * as Database from '../database';
7
8
  export default class DocumentManager {
8
9
  constructor() {}
@@ -28,6 +29,7 @@ export default class DocumentManager {
28
29
  ${DOCUMENT_COLUMNS.FMS_FOLDER_ID} TEXT,\
29
30
  ${DOCUMENT_COLUMNS.PRIORITY} INTEGER NOT NULL DEFAULT 1,\
30
31
  ${DOCUMENT_COLUMNS.SYNC_ERROR} TEXT,\
32
+ ${DOCUMENT_COLUMNS.ATTEMPT_COUNT} INTEGER DEFAULT 0 NOT NULL,\
31
33
  ${DOCUMENT_COLUMNS.GEO_TIMESTAMP} TEXT,\
32
34
  ${DOCUMENT_COLUMNS.PROCESSED_FILE_PATH} TEXT,\
33
35
  ${DOCUMENT_COLUMNS.DESCRIPTION} TEXT);`, []);
@@ -78,6 +80,11 @@ export default class DocumentManager {
78
80
  await Database.executeQuery(`UPDATE ${DOCUMENT_TABLE} SET ${DOCUMENT_COLUMNS.SYNCED} = 1,${DOCUMENT_COLUMNS.FMS_ID} = ? WHERE ${DOCUMENT_COLUMNS.ID} = ?;`, [fmsID, id]);
79
81
  }
80
82
 
83
+ // This function will actualy update the document row with sync and attempt count.
84
+ async markDocumentSyncedWithAttempt(id, fmsID, attempt, sync) {
85
+ if (!id) return;
86
+ await Database.executeQuery(`UPDATE ${DOCUMENT_TABLE} SET ${DOCUMENT_COLUMNS.SYNCED} = ?,${DOCUMENT_COLUMNS.FMS_ID} = ?,${DOCUMENT_COLUMNS.ATTEMPT_COUNT} = ? WHERE ${DOCUMENT_COLUMNS.ID} = ?;`, [sync, fmsID, attempt, id]);
87
+ }
81
88
  // This function is updating processed_file_path column for the base64 overlayed data and overlayed image file for POD. Also if it is base 64 then it is also storing temprary file path in file_path as original bae64 image.
82
89
  async updateProcesedFilePath(id, origialFilePath, processedFilePath) {
83
90
  if (!id || !processedFilePath) return;
@@ -90,11 +97,26 @@ export default class DocumentManager {
90
97
  ${DOCUMENT_COLUMNS.SYNC_ERROR} = ?\
91
98
  WHERE ${DOCUMENT_COLUMNS.ID} = ?;`, [uploadError, id]);
92
99
  }
100
+ async updateDocPriority(id, priority) {
101
+ if (!id) throw new TypeError('Document ID cannot be null');
102
+ await Database.executeQuery(`UPDATE ${DOCUMENT_TABLE}\
103
+ SET \
104
+ ${DOCUMENT_COLUMNS.PRIORITY} = ?\
105
+ WHERE ${DOCUMENT_COLUMNS.ID} = ?;`, [priority, id]);
106
+ }
93
107
  async getUnsyncedDocument() {
94
- let rs = await Database.executeQuery(`SELECT * from ${DOCUMENT_TABLE}\
95
- WHERE ${DOCUMENT_COLUMNS.SYNCED} = 0 \
96
- ORDER BY ${DOCUMENT_COLUMNS.PRIORITY} ASC LIMIT 1;`, []);
97
- return rs.rows._array;
108
+ // If it is allowed max_retried_rows are allowed to process then it will refetch those data which are even have tried max attempt otherwise it will skip those events.
109
+ if (PROCESS_MAX_RETRIED_ROWS) {
110
+ let rs = await Database.executeQuery(`SELECT * from ${DOCUMENT_TABLE}\
111
+ WHERE ${DOCUMENT_COLUMNS.SYNCED} = 0 \
112
+ ORDER BY ${DOCUMENT_COLUMNS.PRIORITY} ASC LIMIT 1;`, []);
113
+ return rs.rows._array;
114
+ } else {
115
+ let rs = await Database.executeQuery(`SELECT * from ${DOCUMENT_TABLE}\
116
+ WHERE ${DOCUMENT_COLUMNS.SYNCED} = 0 AND ${DOCUMENT_COLUMNS.ATTEMPT_COUNT} < ${MAX_RETRY_COUNT} \
117
+ ORDER BY ${DOCUMENT_COLUMNS.PRIORITY} ASC LIMIT 1;`, []);
118
+ return rs.rows._array;
119
+ }
98
120
  }
99
121
  }
100
122
  _class = DocumentManager;
@@ -1 +1 @@
1
- {"version":3,"names":["DOCUMENT_COLUMNS","DOCUMENT_TABLE","Database","DocumentManager","constructor","getInstance","instance","managerInstance","init","executeQuery","ID","DATA","BASE64","FILE_PATH","DISPATCH_ID","FILE_NAME","FILE_TYPE","SYNCED","FMS_ID","FMS_FOLDER_ID","PRIORITY","SYNC_ERROR","GEO_TIMESTAMP","PROCESSED_FILE_PATH","DESCRIPTION","truncateDocumentTable","insertDocument","fmsFolderID","desc","dspID","base64","fileName","fileType","data","filePath","geoTimeStamp","processedFilePath","priority","console","log","getAllDocuments","dispatchID","resultSet","rows","_array","getAllUnsyncedDocs","deleteAllSyncedDocuments","markDocumentSynced","id","fmsID","updateProcesedFilePath","origialFilePath","updateDocSyncError","uploadError","TypeError","getUnsyncedDocument","rs","_class","_defineProperty"],"sources":["DocumentManager.ts"],"sourcesContent":["import { DOCUMENT_COLUMNS, DOCUMENT_TABLE, DocumentRow } from '../DBConfig';\nimport * as Database from '../database';\nimport type { SQLResultSet } from 'expo-sqlite';\n\nexport default class DocumentManager {\n private static instance: DocumentManager;\n\n private constructor() {}\n\n public static async getInstance(): Promise<DocumentManager> {\n if (!DocumentManager.instance) {\n let managerInstance = new DocumentManager();\n await managerInstance.init();\n DocumentManager.instance = managerInstance;\n }\n return DocumentManager.instance;\n }\n\n public async init(): Promise<void> {\n await Database.executeQuery(\n `CREATE TABLE IF NOT EXISTS ${DOCUMENT_TABLE} (\\\n ${DOCUMENT_COLUMNS.ID} INTEGER PRIMARY KEY AUTOINCREMENT,\\\n ${DOCUMENT_COLUMNS.DATA} TEXT,\\\n ${DOCUMENT_COLUMNS.BASE64} INTEGER NOT NULL DEFAULT 0,\\\n ${DOCUMENT_COLUMNS.FILE_PATH} TEXT,\\\n ${DOCUMENT_COLUMNS.DISPATCH_ID} TEXT NOT NULL,\\\n ${DOCUMENT_COLUMNS.FILE_NAME} TEXT,\\\n ${DOCUMENT_COLUMNS.FILE_TYPE} TEXT,\\\n ${DOCUMENT_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\\\n ${DOCUMENT_COLUMNS.FMS_ID} TEXT,\\\n ${DOCUMENT_COLUMNS.FMS_FOLDER_ID} TEXT,\\\n ${DOCUMENT_COLUMNS.PRIORITY} INTEGER NOT NULL DEFAULT 1,\\\n ${DOCUMENT_COLUMNS.SYNC_ERROR} TEXT,\\\n ${DOCUMENT_COLUMNS.GEO_TIMESTAMP} TEXT,\\\n ${DOCUMENT_COLUMNS.PROCESSED_FILE_PATH} TEXT,\\\n ${DOCUMENT_COLUMNS.DESCRIPTION} TEXT);`,\n []\n );\n }\n\n public async truncateDocumentTable(): Promise<void> {\n await Database.executeQuery(`DELETE FROM ${DOCUMENT_TABLE};`, []);\n }\n\n public async insertDocument(\n fmsFolderID: string | null,\n desc: string,\n dspID: string,\n // jobID: string,\n // objectiveRef: string,\n base64: boolean,\n fileName: string,\n fileType: string,\n data?: string | null,\n filePath?: string | null,\n geoTimeStamp?: string | null,\n processedFilePath?: string | null,\n priority?: number\n ): Promise<SQLResultSet> {\n console.log('insertDocument2:', fmsFolderID);\n return await Database.executeQuery(\n `INSERT INTO ${DOCUMENT_TABLE}(\\\n ${DOCUMENT_COLUMNS.DATA},\\\n ${DOCUMENT_COLUMNS.DISPATCH_ID},\\\n ${DOCUMENT_COLUMNS.FMS_FOLDER_ID},\\\n ${DOCUMENT_COLUMNS.BASE64},\\\n ${DOCUMENT_COLUMNS.FILE_PATH},\\\n ${DOCUMENT_COLUMNS.FILE_NAME},\\\n ${DOCUMENT_COLUMNS.FILE_TYPE},\\\n ${DOCUMENT_COLUMNS.DESCRIPTION},\\\n ${DOCUMENT_COLUMNS.PRIORITY},\\\n ${DOCUMENT_COLUMNS.GEO_TIMESTAMP},\\\n ${DOCUMENT_COLUMNS.PROCESSED_FILE_PATH}) \\\n values (?,?,?,?,?,?,?,?,?,?,?)`,\n [\n data,\n dspID,\n fmsFolderID,\n base64,\n filePath,\n fileName,\n fileType,\n desc,\n priority ? priority : 1,\n geoTimeStamp,\n processedFilePath,\n ]\n );\n }\n\n public async getAllDocuments(dispatchID?: string): Promise<DocumentRow[]> {\n if (!dispatchID) {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${DOCUMENT_TABLE};`,\n []\n );\n return resultSet.rows._array;\n } else {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${DOCUMENT_TABLE}\\\n WHERE ${DOCUMENT_COLUMNS.DISPATCH_ID} =?;`,\n [dispatchID]\n );\n return resultSet.rows._array;\n }\n }\n\n public async getAllUnsyncedDocs(): Promise<DocumentRow[]> {\n let resultSet = await Database.executeQuery(\n `SELECT * FROM ${DOCUMENT_TABLE} \\\n where ${DOCUMENT_COLUMNS.SYNCED} = 0;`,\n []\n );\n return resultSet.rows._array;\n }\n\n public deleteAllSyncedDocuments(dispatchID: string) {\n return Database.executeQuery(\n `DELETE FROM ${DOCUMENT_TABLE}\\\n WHERE ${DOCUMENT_COLUMNS.SYNCED} = 1 and ${DOCUMENT_COLUMNS.DISPATCH_ID} = ?;`,\n [dispatchID]\n );\n }\n\n public async markDocumentSynced(id: number, fmsID: string): Promise<void> {\n if (!id || !fmsID) return;\n await Database.executeQuery(\n `UPDATE ${DOCUMENT_TABLE} SET ${DOCUMENT_COLUMNS.SYNCED} = 1,${DOCUMENT_COLUMNS.FMS_ID} = ? WHERE ${DOCUMENT_COLUMNS.ID} = ?;`,\n [fmsID, id]\n );\n }\n\n // This function is updating processed_file_path column for the base64 overlayed data and overlayed image file for POD. Also if it is base 64 then it is also storing temprary file path in file_path as original bae64 image.\n public async updateProcesedFilePath(\n id: number,\n origialFilePath: String,\n processedFilePath: String\n ): Promise<void> {\n if (!id || !processedFilePath) return;\n await Database.executeQuery(\n `UPDATE ${DOCUMENT_TABLE} SET ${DOCUMENT_COLUMNS.FILE_PATH} = ?, ${DOCUMENT_COLUMNS.PROCESSED_FILE_PATH} = ? WHERE ${DOCUMENT_COLUMNS.ID} = ?;`,\n [origialFilePath, processedFilePath, id]\n );\n }\n\n public async updateDocSyncError(\n id: number,\n uploadError: string\n ): Promise<void> {\n if (!id) throw new TypeError('Document ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${DOCUMENT_TABLE}\\\n SET \\\n ${DOCUMENT_COLUMNS.SYNC_ERROR} = ?\\\n WHERE ${DOCUMENT_COLUMNS.ID} = ?;`,\n [uploadError, id]\n );\n }\n\n public async getUnsyncedDocument(): Promise<DocumentRow[]> {\n let rs = await Database.executeQuery(\n `SELECT * from ${DOCUMENT_TABLE}\\\n WHERE ${DOCUMENT_COLUMNS.SYNCED} = 0 \\\n ORDER BY ${DOCUMENT_COLUMNS.PRIORITY} ASC LIMIT 1;`,\n []\n );\n return rs.rows._array;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["DOCUMENT_COLUMNS","DOCUMENT_TABLE","MAX_RETRY_COUNT","PROCESS_MAX_RETRIED_ROWS","Database","DocumentManager","constructor","getInstance","instance","managerInstance","init","executeQuery","ID","DATA","BASE64","FILE_PATH","DISPATCH_ID","FILE_NAME","FILE_TYPE","SYNCED","FMS_ID","FMS_FOLDER_ID","PRIORITY","SYNC_ERROR","ATTEMPT_COUNT","GEO_TIMESTAMP","PROCESSED_FILE_PATH","DESCRIPTION","truncateDocumentTable","insertDocument","fmsFolderID","desc","dspID","base64","fileName","fileType","data","filePath","geoTimeStamp","processedFilePath","priority","console","log","getAllDocuments","dispatchID","resultSet","rows","_array","getAllUnsyncedDocs","deleteAllSyncedDocuments","markDocumentSynced","id","fmsID","markDocumentSyncedWithAttempt","attempt","sync","updateProcesedFilePath","origialFilePath","updateDocSyncError","uploadError","TypeError","updateDocPriority","getUnsyncedDocument","rs","_class","_defineProperty"],"sources":["DocumentManager.ts"],"sourcesContent":["import { DOCUMENT_COLUMNS, DOCUMENT_TABLE, DocumentRow } from '../DBConfig';\nimport { MAX_RETRY_COUNT, PROCESS_MAX_RETRIED_ROWS } from '../constants';\nimport * as Database from '../database';\nimport type { SQLResultSet } from 'expo-sqlite';\n\nexport default class DocumentManager {\n private static instance: DocumentManager;\n\n private constructor() {}\n\n public static async getInstance(): Promise<DocumentManager> {\n if (!DocumentManager.instance) {\n let managerInstance = new DocumentManager();\n await managerInstance.init();\n DocumentManager.instance = managerInstance;\n }\n return DocumentManager.instance;\n }\n\n public async init(): Promise<void> {\n await Database.executeQuery(\n `CREATE TABLE IF NOT EXISTS ${DOCUMENT_TABLE} (\\\n ${DOCUMENT_COLUMNS.ID} INTEGER PRIMARY KEY AUTOINCREMENT,\\\n ${DOCUMENT_COLUMNS.DATA} TEXT,\\\n ${DOCUMENT_COLUMNS.BASE64} INTEGER NOT NULL DEFAULT 0,\\\n ${DOCUMENT_COLUMNS.FILE_PATH} TEXT,\\\n ${DOCUMENT_COLUMNS.DISPATCH_ID} TEXT NOT NULL,\\\n ${DOCUMENT_COLUMNS.FILE_NAME} TEXT,\\\n ${DOCUMENT_COLUMNS.FILE_TYPE} TEXT,\\\n ${DOCUMENT_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\\\n ${DOCUMENT_COLUMNS.FMS_ID} TEXT,\\\n ${DOCUMENT_COLUMNS.FMS_FOLDER_ID} TEXT,\\\n ${DOCUMENT_COLUMNS.PRIORITY} INTEGER NOT NULL DEFAULT 1,\\\n ${DOCUMENT_COLUMNS.SYNC_ERROR} TEXT,\\\n ${DOCUMENT_COLUMNS.ATTEMPT_COUNT} INTEGER DEFAULT 0 NOT NULL,\\\n ${DOCUMENT_COLUMNS.GEO_TIMESTAMP} TEXT,\\\n ${DOCUMENT_COLUMNS.PROCESSED_FILE_PATH} TEXT,\\\n ${DOCUMENT_COLUMNS.DESCRIPTION} TEXT);`,\n []\n );\n }\n\n public async truncateDocumentTable(): Promise<void> {\n await Database.executeQuery(`DELETE FROM ${DOCUMENT_TABLE};`, []);\n }\n\n public async insertDocument(\n fmsFolderID: string | null,\n desc: string,\n dspID: string,\n // jobID: string,\n // objectiveRef: string,\n base64: boolean,\n fileName: string,\n fileType: string,\n data?: string | null,\n filePath?: string | null,\n geoTimeStamp?: string | null,\n processedFilePath?: string | null,\n priority?: number\n ): Promise<SQLResultSet> {\n console.log('insertDocument2:', fmsFolderID);\n return await Database.executeQuery(\n `INSERT INTO ${DOCUMENT_TABLE}(\\\n ${DOCUMENT_COLUMNS.DATA},\\\n ${DOCUMENT_COLUMNS.DISPATCH_ID},\\\n ${DOCUMENT_COLUMNS.FMS_FOLDER_ID},\\\n ${DOCUMENT_COLUMNS.BASE64},\\\n ${DOCUMENT_COLUMNS.FILE_PATH},\\\n ${DOCUMENT_COLUMNS.FILE_NAME},\\\n ${DOCUMENT_COLUMNS.FILE_TYPE},\\\n ${DOCUMENT_COLUMNS.DESCRIPTION},\\\n ${DOCUMENT_COLUMNS.PRIORITY},\\\n ${DOCUMENT_COLUMNS.GEO_TIMESTAMP},\\\n ${DOCUMENT_COLUMNS.PROCESSED_FILE_PATH}) \\\n values (?,?,?,?,?,?,?,?,?,?,?)`,\n [\n data,\n dspID,\n fmsFolderID,\n base64,\n filePath,\n fileName,\n fileType,\n desc,\n priority ? priority : 1,\n geoTimeStamp,\n processedFilePath,\n ]\n );\n }\n\n public async getAllDocuments(dispatchID?: string): Promise<DocumentRow[]> {\n if (!dispatchID) {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${DOCUMENT_TABLE};`,\n []\n );\n return resultSet.rows._array;\n } else {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${DOCUMENT_TABLE}\\\n WHERE ${DOCUMENT_COLUMNS.DISPATCH_ID} =?;`,\n [dispatchID]\n );\n return resultSet.rows._array;\n }\n }\n\n public async getAllUnsyncedDocs(): Promise<DocumentRow[]> {\n let resultSet = await Database.executeQuery(\n `SELECT * FROM ${DOCUMENT_TABLE} \\\n where ${DOCUMENT_COLUMNS.SYNCED} = 0;`,\n []\n );\n return resultSet.rows._array;\n }\n\n public deleteAllSyncedDocuments(dispatchID: string) {\n return Database.executeQuery(\n `DELETE FROM ${DOCUMENT_TABLE}\\\n WHERE ${DOCUMENT_COLUMNS.SYNCED} = 1 and ${DOCUMENT_COLUMNS.DISPATCH_ID} = ?;`,\n [dispatchID]\n );\n }\n\n public async markDocumentSynced(id: number, fmsID: string): Promise<void> {\n if (!id || !fmsID) return;\n await Database.executeQuery(\n `UPDATE ${DOCUMENT_TABLE} SET ${DOCUMENT_COLUMNS.SYNCED} = 1,${DOCUMENT_COLUMNS.FMS_ID} = ? WHERE ${DOCUMENT_COLUMNS.ID} = ?;`,\n [fmsID, id]\n );\n }\n\n // This function will actualy update the document row with sync and attempt count.\n public async markDocumentSyncedWithAttempt(\n id: number,\n fmsID: string,\n attempt: number,\n sync: number\n ): Promise<void> {\n if (!id) return;\n await Database.executeQuery(\n `UPDATE ${DOCUMENT_TABLE} SET ${DOCUMENT_COLUMNS.SYNCED} = ?,${DOCUMENT_COLUMNS.FMS_ID} = ?,${DOCUMENT_COLUMNS.ATTEMPT_COUNT} = ? WHERE ${DOCUMENT_COLUMNS.ID} = ?;`,\n [sync, fmsID, attempt, id]\n );\n }\n // This function is updating processed_file_path column for the base64 overlayed data and overlayed image file for POD. Also if it is base 64 then it is also storing temprary file path in file_path as original bae64 image.\n public async updateProcesedFilePath(\n id: number,\n origialFilePath: String,\n processedFilePath: String\n ): Promise<void> {\n if (!id || !processedFilePath) return;\n await Database.executeQuery(\n `UPDATE ${DOCUMENT_TABLE} SET ${DOCUMENT_COLUMNS.FILE_PATH} = ?, ${DOCUMENT_COLUMNS.PROCESSED_FILE_PATH} = ? WHERE ${DOCUMENT_COLUMNS.ID} = ?;`,\n [origialFilePath, processedFilePath, id]\n );\n }\n\n public async updateDocSyncError(\n id: number,\n uploadError: string\n ): Promise<void> {\n if (!id) throw new TypeError('Document ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${DOCUMENT_TABLE}\\\n SET \\\n ${DOCUMENT_COLUMNS.SYNC_ERROR} = ?\\\n WHERE ${DOCUMENT_COLUMNS.ID} = ?;`,\n [uploadError, id]\n );\n }\n\n public async updateDocPriority(\n id: number,\n priority: number\n ): Promise<void> {\n if (!id) throw new TypeError('Document ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${DOCUMENT_TABLE}\\\n SET \\\n ${DOCUMENT_COLUMNS.PRIORITY} = ?\\\n WHERE ${DOCUMENT_COLUMNS.ID} = ?;`,\n [priority, id]\n );\n }\n\n\n public async getUnsyncedDocument(): Promise<DocumentRow[]> {\n // If it is allowed max_retried_rows are allowed to process then it will refetch those data which are even have tried max attempt otherwise it will skip those events.\n if(PROCESS_MAX_RETRIED_ROWS){\n let rs = await Database.executeQuery(\n `SELECT * from ${DOCUMENT_TABLE}\\\n WHERE ${DOCUMENT_COLUMNS.SYNCED} = 0 \\\n ORDER BY ${DOCUMENT_COLUMNS.PRIORITY} ASC LIMIT 1;`,\n []\n );\n return rs.rows._array;\n }else{\n let rs = await Database.executeQuery(\n `SELECT * from ${DOCUMENT_TABLE}\\\n WHERE ${DOCUMENT_COLUMNS.SYNCED} = 0 AND ${DOCUMENT_COLUMNS.ATTEMPT_COUNT} < ${MAX_RETRY_COUNT} \\\n ORDER BY ${DOCUMENT_COLUMNS.PRIORITY} ASC LIMIT 1;`,\n []\n );\n return rs.rows._array;\n }\n }\n}\n"],"mappings":"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"}