@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.
- package/lib/commonjs/analytics/sentry/SentryAnalyticsSingleton.js +0 -2
- package/lib/commonjs/analytics/sentry/SentryAnalyticsSingleton.js.map +1 -1
- package/lib/commonjs/analytics/sentry/SentryAnalyticsUtils.js +0 -6
- package/lib/commonjs/analytics/sentry/SentryAnalyticsUtils.js.map +1 -1
- package/lib/commonjs/analytics/sentry/SentrySdkConstants.js +2 -0
- package/lib/commonjs/analytics/sentry/SentrySdkConstants.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/manager/sdk/DispatchSDKManager.js +5 -4
- package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
- package/lib/commonjs/manager/sdk/callbacksHandler.js +28 -1
- package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/AppSyncManager.js +7 -5
- package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/DBConfig.js +3 -1
- package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/constants.js +4 -1
- package/lib/commonjs/manager/syncmanager/constants.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +37 -20
- package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +26 -4
- package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +276 -20
- package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js +41 -13
- package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +116 -59
- package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js +17 -0
- package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
- package/lib/commonjs/models/auth.js.map +1 -1
- package/lib/commonjs/models/sdk.js.map +1 -1
- package/lib/commonjs/network/NetworkClient.js +12 -2
- package/lib/commonjs/network/NetworkClient.js.map +1 -1
- package/lib/commonjs/network/NetworkUtils.js +14 -7
- package/lib/commonjs/network/NetworkUtils.js.map +1 -1
- package/lib/commonjs/network/client.js +1 -1
- package/lib/commonjs/network/client.js.map +1 -1
- package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
- package/lib/commonjs/utils/SyncManagerUtils.js +29 -2
- package/lib/commonjs/utils/SyncManagerUtils.js.map +1 -1
- package/lib/commonjs/utils/storage.js +21 -5
- package/lib/commonjs/utils/storage.js.map +1 -1
- package/lib/commonjs/utils/utils.js +0 -9
- package/lib/commonjs/utils/utils.js.map +1 -1
- package/lib/module/analytics/sentry/SentryAnalyticsSingleton.js +0 -2
- package/lib/module/analytics/sentry/SentryAnalyticsSingleton.js.map +1 -1
- package/lib/module/analytics/sentry/SentryAnalyticsUtils.js +0 -6
- package/lib/module/analytics/sentry/SentryAnalyticsUtils.js.map +1 -1
- package/lib/module/analytics/sentry/SentrySdkConstants.js +2 -0
- package/lib/module/analytics/sentry/SentrySdkConstants.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +1 -1
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/manager/sdk/DispatchSDKManager.js +5 -4
- package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
- package/lib/module/manager/sdk/callbacksHandler.js +27 -1
- package/lib/module/manager/sdk/callbacksHandler.js.map +1 -1
- package/lib/module/manager/syncmanager/AppSyncManager.js +7 -5
- package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
- package/lib/module/manager/syncmanager/DBConfig.js +3 -1
- package/lib/module/manager/syncmanager/DBConfig.js.map +1 -1
- package/lib/module/manager/syncmanager/constants.js +3 -0
- package/lib/module/manager/syncmanager/constants.js.map +1 -1
- package/lib/module/manager/syncmanager/document/DocumentHttpClient.js +38 -21
- package/lib/module/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
- package/lib/module/manager/syncmanager/document/DocumentManager.js +26 -4
- package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
- package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +276 -20
- package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
- package/lib/module/manager/syncmanager/events/ETEventsManager.js +42 -14
- package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
- package/lib/module/manager/syncmanager/events/EventsSyncManager.js +119 -61
- package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
- package/lib/module/manager/syncmanager/events/SyncHttpClient.js +15 -0
- package/lib/module/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
- package/lib/module/models/auth.js.map +1 -1
- package/lib/module/models/sdk.js.map +1 -1
- package/lib/module/network/NetworkClient.js +12 -2
- package/lib/module/network/NetworkClient.js.map +1 -1
- package/lib/module/network/NetworkUtils.js +14 -7
- package/lib/module/network/NetworkUtils.js.map +1 -1
- package/lib/module/network/client.js +1 -1
- package/lib/module/network/client.js.map +1 -1
- package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
- package/lib/module/ui/screens/FormsScreen.js.map +1 -1
- package/lib/module/utils/SyncManagerUtils.js +30 -3
- package/lib/module/utils/SyncManagerUtils.js.map +1 -1
- package/lib/module/utils/storage.js +21 -5
- package/lib/module/utils/storage.js.map +1 -1
- package/lib/module/utils/utils.js +0 -9
- package/lib/module/utils/utils.js.map +1 -1
- package/lib/typescript/analytics/sentry/SentrySdkConstants.d.ts +2 -0
- package/lib/typescript/manager/sdk/callbacksHandler.d.ts +3 -1
- package/lib/typescript/manager/syncmanager/DBConfig.d.ts +4 -0
- package/lib/typescript/manager/syncmanager/constants.d.ts +3 -0
- package/lib/typescript/manager/syncmanager/document/DocumentManager.d.ts +2 -0
- package/lib/typescript/manager/syncmanager/document/DocumentSyncManager.d.ts +2 -1
- package/lib/typescript/manager/syncmanager/events/ETEventsManager.d.ts +2 -0
- package/lib/typescript/manager/syncmanager/events/EventsSyncManager.d.ts +1 -1
- package/lib/typescript/models/sdk.d.ts +1 -0
- package/lib/typescript/utils/storage.d.ts +3 -3
- package/package.json +5 -5
- package/src/analytics/sentry/SentryAnalyticsSingleton.ts +7 -9
- package/src/analytics/sentry/SentryAnalyticsUtils.ts +24 -36
- package/src/analytics/sentry/SentrySdkConstants.ts +2 -0
- package/src/components/executiontasks/imageCapture/ImageCapture.tsx +1 -3
- package/src/index.tsx +1 -1
- package/src/manager/sdk/DispatchSDKManager.ts +8 -3
- package/src/manager/sdk/callbacksHandler.ts +39 -2
- package/src/manager/syncmanager/AppSyncManager.ts +15 -13
- package/src/manager/syncmanager/DBConfig.ts +4 -0
- package/src/manager/syncmanager/constants.ts +3 -0
- package/src/manager/syncmanager/document/DocumentHttpClient.ts +54 -24
- package/src/manager/syncmanager/document/DocumentManager.ts +48 -7
- package/src/manager/syncmanager/document/DocumentSyncManager.ts +351 -30
- package/src/manager/syncmanager/events/ETEventsManager.ts +50 -16
- package/src/manager/syncmanager/events/EventsSyncManager.ts +157 -74
- package/src/manager/syncmanager/events/SyncHttpClient.ts +30 -1
- package/src/models/auth.ts +1 -0
- package/src/models/sdk.ts +1 -0
- package/src/network/NetworkClient.ts +18 -2
- package/src/network/NetworkUtils.ts +9 -1
- package/src/network/client.ts +1 -1
- package/src/ui/screens/DeliverScreen.tsx +6 -5
- package/src/ui/screens/FormsScreen.tsx +8 -6
- package/src/utils/SyncManagerUtils.ts +41 -6
- package/src/utils/storage.ts +21 -8
- package/src/utils/utils.ts +0 -8
|
@@ -21,7 +21,7 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
|
|
|
21
21
|
const SyncType = _platformCoreosExecutionEngineSdk.IDispatch.SyncType;
|
|
22
22
|
class ETEventsManager {
|
|
23
23
|
constructor() {
|
|
24
|
-
_defineProperty(this, "maxRetryCount",
|
|
24
|
+
_defineProperty(this, "maxRetryCount", _constants.MAX_RETRY_COUNT);
|
|
25
25
|
_defineProperty(this, "_retries", 0);
|
|
26
26
|
}
|
|
27
27
|
static async getInstance() {
|
|
@@ -44,8 +44,14 @@ class ETEventsManager {
|
|
|
44
44
|
${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH} INTEGER DEFAULT 0 NOT NULL,\
|
|
45
45
|
${_DBConfig.EVENTS_COLUMNS.META} TEXT NOT NULL,\
|
|
46
46
|
${_DBConfig.EVENTS_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\
|
|
47
|
+
${_DBConfig.EVENTS_COLUMNS.ATTEMPT_COUNT} INTEGER DEFAULT 0 NOT NULL,\
|
|
47
48
|
${_DBConfig.EVENTS_COLUMNS.SYNC_ERROR} TEXT);`, []);
|
|
48
49
|
}
|
|
50
|
+
|
|
51
|
+
// This is the function to insert POD_DOC type event in event table.
|
|
52
|
+
async insertPODDocEvent(dspID, syncType) {
|
|
53
|
+
await Database.executeQuery(`INSERT INTO ${_DBConfig.EVENTS_TABLE}(${_DBConfig.EVENTS_COLUMNS.DISPATCH_ID},${_DBConfig.EVENTS_COLUMNS.SYNC_TYPE},${_DBConfig.EVENTS_COLUMNS.PAYLOAD},${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH},${_DBConfig.EVENTS_COLUMNS.META},${_DBConfig.EVENTS_COLUMNS.SYNCED},${_DBConfig.EVENTS_COLUMNS.CONFIG},${_DBConfig.EVENTS_COLUMNS.SYNC_ERROR}) values (?,?,?,?,?,?,?,?)`, [dspID, syncType, '', 1, '', 0, '', '']);
|
|
54
|
+
}
|
|
49
55
|
async insertEvent(sequence, payload, dspID, syncType, objectiveRef, config) {
|
|
50
56
|
await Database.executeQuery(`INSERT INTO ${_DBConfig.EVENTS_TABLE}(\
|
|
51
57
|
${_DBConfig.EVENTS_COLUMNS.PAYLOAD},\
|
|
@@ -456,6 +462,12 @@ class ETEventsManager {
|
|
|
456
462
|
SET \
|
|
457
463
|
${_DBConfig.EVENTS_COLUMNS.SYNC_ERROR} = ? WHERE ${_DBConfig.EVENTS_COLUMNS.ID} = ?;`, [syncError, id]);
|
|
458
464
|
}
|
|
465
|
+
|
|
466
|
+
// This function will actualy update the POD_DOC type of event as sync along with attempt count.
|
|
467
|
+
async markPODDocEventSynced(sync, attempt, podDocId) {
|
|
468
|
+
if (!podDocId) throw new TypeError('podDocId cannot be null');
|
|
469
|
+
await Database.executeQuery(`UPDATE ${_DBConfig.EVENTS_TABLE} SET ${_DBConfig.EVENTS_COLUMNS.SYNCED} = ?, ${_DBConfig.EVENTS_COLUMNS.ATTEMPT_COUNT} = ? WHERE ${_DBConfig.EVENTS_COLUMNS.SYNC_TYPE} = ?;`, [sync, attempt, podDocId]);
|
|
470
|
+
}
|
|
459
471
|
async markEventSynced(id) {
|
|
460
472
|
if (!id) throw new TypeError('Event ID cannot be null');
|
|
461
473
|
await Database.executeQuery(`UPDATE ${_DBConfig.EVENTS_TABLE} SET ${_DBConfig.EVENTS_COLUMNS.SYNCED} = 1 WHERE ${_DBConfig.EVENTS_COLUMNS.ID} = ?;`, [id]);
|
|
@@ -494,18 +506,34 @@ class ETEventsManager {
|
|
|
494
506
|
return sqlResult.rows._array;
|
|
495
507
|
}
|
|
496
508
|
async getBulkRowsToSync(id, dispatchId) {
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
+
// 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.
|
|
510
|
+
if (_constants.PROCESS_MAX_RETRIED_ROWS) {
|
|
511
|
+
const query = `SELECT * FROM \
|
|
512
|
+
(SELECT *, \
|
|
513
|
+
(SELECT SUM(${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH}) \
|
|
514
|
+
FROM ${_DBConfig.EVENTS_TABLE} \
|
|
515
|
+
WHERE id <= t.id and ${_DBConfig.EVENTS_COLUMNS.ID} > ${id} and ${_DBConfig.EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${_DBConfig.EVENTS_COLUMNS.SYNCED} = 0 \
|
|
516
|
+
) total \
|
|
517
|
+
FROM ${_DBConfig.EVENTS_TABLE} t \
|
|
518
|
+
) q \
|
|
519
|
+
WHERE total <= ${_constants.BULK_DATA_LIMIT} \
|
|
520
|
+
ORDER BY ${_DBConfig.EVENTS_COLUMNS.ID};`;
|
|
521
|
+
const sqlResult = await Database.executeQuery(query, []);
|
|
522
|
+
return sqlResult.rows._array;
|
|
523
|
+
} else {
|
|
524
|
+
const query = `SELECT * FROM \
|
|
525
|
+
(SELECT *, \
|
|
526
|
+
(SELECT SUM(${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH}) \
|
|
527
|
+
FROM ${_DBConfig.EVENTS_TABLE} \
|
|
528
|
+
WHERE id <= t.id and ${_DBConfig.EVENTS_COLUMNS.ID} > ${id} and ${_DBConfig.EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${_DBConfig.EVENTS_COLUMNS.SYNCED} = 0 and ${_DBConfig.EVENTS_COLUMNS.ATTEMPT_COUNT} < ${_constants.MAX_RETRY_COUNT} \
|
|
529
|
+
) total \
|
|
530
|
+
FROM ${_DBConfig.EVENTS_TABLE} t \
|
|
531
|
+
) q \
|
|
532
|
+
WHERE total <= ${_constants.BULK_DATA_LIMIT} \
|
|
533
|
+
ORDER BY ${_DBConfig.EVENTS_COLUMNS.ID};`;
|
|
534
|
+
const sqlResult = await Database.executeQuery(query, []);
|
|
535
|
+
return sqlResult.rows._array;
|
|
536
|
+
}
|
|
509
537
|
}
|
|
510
538
|
}
|
|
511
539
|
exports.default = ETEventsManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_utils","require","_DBConfig","Database","_interopRequireWildcard","_BaseError","_ErrorCodes","_Logger","_constants","_platformCoreosExecutionEngineSdk","_class","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_defineProperty","obj","key","value","_toPropertyKey","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SyncType","IDispatch","ETEventsManager","constructor","getInstance","instance","manager","init","executeQuery","EVENTS_TABLE","EVENTS_COLUMNS","ID","DISPATCH_ID","PAYLOAD","CONFIG","SYNC_TYPE","DATA_LENGTH","META","SYNCED","SYNC_ERROR","insertEvent","sequence","payload","dspID","syncType","objectiveRef","config","SEQUENCE","getWFIPayload","_bulkEventData","result","dispatchId","status","timestamp","code","attemptId","updatedBy","mergedObjectiveId","meta","outData","output","data","offset","jobMapping","DispatchExecutor","getJobMapping","BULK_DATA_LIMIT","__unmerged","keys","forEach","customETName","push","workflows","length","getCustodyPayload","getJobRemovalPayload","getDispatchUpdatePayload","_modifyEventData","CUSTODY_IN_SCAN","custodyInScans","action","CUSTODY_OUT_SCAN","custodyOutScans","WORKFLOW","map","_payload","_payload$workflows$0$","JOB_REMOVAL","_jobRemoval$success","_jobRemoval$failure","jobRemoval","success","failure","DispatchSyncType","DISPATCH_UPDATE","DISPATCH_SUB_STATUS_UPDATE","DEFAULT","splitData","chunkSize","splitKey","splitArray","Array","isArray","chunk","slice","insertQueueEvent","_eventData","args","values","queryData","_meta","JSON","stringify","query","join","executeBulkQuery","_retries","err","maxRetryCount","Logger","logEvent","toString","LOG_TYPE","SDK_DEBUG","insertBulkEvent","syncManagerPayload","index","isEmptyOrBlank","BaseError","BaseErrorCodes","InvalidArgumentError","InvalidArgumentsError","chunkedData","_evData","getAllEvents","dispatchID","resultSet","rows","_array","getAllUnsyncedEvents","deleteAllEvents","deleteEventsQuery","resetAutoIncrementSequence","updateError","id","syncError","markEventSynced","getWorkflowUpdateEvents","sqlResultSet","getJobRemovalEvents","getCustodyBatch","sqlResult","getObjectiveDetails","rs","getRowToSync","getBulkRowsToSync","exports"],"sources":["ETEventsManager.ts"],"sourcesContent":["import { isEmptyOrBlank } from '../../../utils/utils';\nimport {\n BulkEvent,\n CustodyData,\n DispatchSyncType,\n EventETData,\n EventRow,\n EVENTS_COLUMNS,\n EVENTS_TABLE,\n SyncManagerPayload,\n ExecEngineSyncType,\n WFUpdateBulkEventData,\n WIUpdateOutputPayload,\n WORKFLOW_INSTANCE_COLUMNS,\n WORKFLOW_INSTANCE_TABLE,\n} from '../DBConfig';\nimport type { ExecQuery } from '../database';\nimport * as Database from '../database';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n} from '../../../errors/ErrorCodes';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { BULK_DATA_LIMIT } from '../constants';\nimport Storage from '../../../utils/storage';\n\n// NEW CODE\nimport {\n DispatchExecutor,\n IDispatch,\n} from '@os1-platform/platform-coreos-execution-engine-sdk';\nconst SyncType = IDispatch.SyncType;\n\nexport default class ETEventsManager {\n private static instance: ETEventsManager;\n private maxRetryCount: number = 3;\n private _retries = 0;\n\n private constructor() {}\n\n public static async getInstance(): Promise<ETEventsManager> {\n if (!ETEventsManager.instance) {\n let manager = new ETEventsManager();\n await ETEventsManager.init();\n ETEventsManager.instance = manager;\n }\n return ETEventsManager.instance;\n }\n\n // NEED TO REMOVE SYNCED, CONFIG, OBJECTIVE_REF\n private static async init(): Promise<void> {\n await Database.executeQuery(\n `CREATE TABLE IF NOT EXISTS ${EVENTS_TABLE} (\\\n ${EVENTS_COLUMNS.ID} INTEGER PRIMARY KEY AUTOINCREMENT,\\\n ${EVENTS_COLUMNS.DISPATCH_ID} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.PAYLOAD} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.CONFIG} TEXT,\\\n ${EVENTS_COLUMNS.SYNC_TYPE} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.DATA_LENGTH} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.META} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.SYNC_ERROR} TEXT);`,\n []\n );\n }\n\n async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n await Database.executeQuery(\n `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SEQUENCE},\\\n ${EVENTS_COLUMNS.CONFIG},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values (?,?,?,?,?,?)`,\n [payload, dspID, sequence, config ?? null, syncType, objectiveRef]\n );\n }\n\n private async getWFIPayload(\n _bulkEventData: BulkEvent\n ): Promise<Array<WIUpdateOutputPayload>> {\n const result: Array<WIUpdateOutputPayload> = [];\n const dispatchId = _bulkEventData.dispatchId;\n const { status, timestamp, code, attemptId, updatedBy, mergedObjectiveId } =\n _bulkEventData.meta;\n const outData: any = {};\n const output: WFUpdateBulkEventData = _bulkEventData.data;\n\n let offset = 0;\n let jobMapping: Array<{ jobId: string; workflowInstanceId: string }> =\n await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n do {\n const __unmerged: Array<{ jobId: string; workflowInstanceId: string }> =\n jobMapping;\n\n Object.keys(output).forEach((customETName: string) => {\n outData[customETName] = output[customETName];\n });\n\n result.push({\n dispatchId,\n updatedBy,\n workflows: [\n {\n status,\n attemptId,\n timestamp,\n code,\n data: outData,\n __unmerged,\n meta: {},\n },\n ],\n });\n\n offset += BULK_DATA_LIMIT;\n jobMapping = await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n } while (jobMapping.length > 0);\n\n return result;\n }\n\n private getCustodyPayload(_bulkEventData: BulkEvent) {\n const data: Array<CustodyData> = _bulkEventData.data;\n return data;\n }\n\n private getJobRemovalPayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n return data;\n }\n\n private getDispatchUpdatePayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n const payload = data.payload;\n return payload;\n }\n\n private async _modifyEventData(\n _bulkEventData: BulkEvent\n ): Promise<Array<SyncManagerPayload>> {\n const syncType: ExecEngineSyncType | DispatchSyncType =\n _bulkEventData.syncType;\n switch (syncType) {\n case SyncType.CUSTODY_IN_SCAN: {\n const custodyInScans = this.getCustodyPayload(_bulkEventData);\n return [\n {\n data: {\n action: SyncType.CUSTODY_IN_SCAN,\n payload: { output: custodyInScans },\n },\n length: custodyInScans.length,\n },\n ];\n }\n case SyncType.CUSTODY_OUT_SCAN: {\n const custodyOutScans = this.getCustodyPayload(_bulkEventData);\n\n return [\n {\n data: {\n action: SyncType.CUSTODY_OUT_SCAN,\n payload: { output: custodyOutScans },\n },\n length: custodyOutScans.length,\n },\n ];\n }\n case SyncType.WORKFLOW: {\n const payload = await this.getWFIPayload(_bulkEventData);\n return payload.map((_payload) => ({\n data: { action: SyncType.WORKFLOW, payload: _payload },\n length: _payload.workflows[0].__unmerged?.length || 0,\n }));\n }\n case SyncType.JOB_REMOVAL: {\n const jobRemoval = this.getJobRemovalPayload(_bulkEventData);\n const length =\n jobRemoval?.success?.length + jobRemoval?.failure?.length;\n return [\n {\n data: {\n action: SyncType.JOB_REMOVAL,\n payload: jobRemoval,\n },\n length: length || 0,\n },\n ];\n }\n case DispatchSyncType.DISPATCH_UPDATE: {\n return [\n {\n data: {\n action: DispatchSyncType.DISPATCH_UPDATE,\n payload: this.getDispatchUpdatePayload(_bulkEventData),\n },\n length: 1,\n },\n ];\n }\n case DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE: {\n return [\n {\n data: {\n action: DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE,\n payload: this.getDispatchUpdatePayload(_bulkEventData),\n },\n length: 1,\n },\n ];\n }\n default: {\n return [\n {\n data: {\n action: DispatchSyncType.DEFAULT,\n payload: {},\n },\n length: 0,\n },\n ];\n }\n }\n }\n\n private splitData(data: any, chunkSize: number, splitKey: string): any[] {\n const result: any = [];\n const splitArray = data[splitKey];\n\n if (!splitArray || !Array.isArray(splitArray)) {\n return result;\n }\n\n for (let i = 0; i < splitArray.length; i += chunkSize) {\n const chunk: any = {};\n\n for (const key in data) {\n if (data.hasOwnProperty(key)) {\n chunk[key] =\n key === splitKey ? splitArray.slice(i, i + chunkSize) : data[key];\n }\n }\n\n result.push(chunk);\n }\n\n return result;\n }\n\n // NEW CODE\n async insertQueueEvent(_eventData: BulkEvent): Promise<void> {\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n try {\n values.push(`(?,?,?,?)`);\n const _meta = JSON.stringify(_eventData.meta);\n args.push(\n _eventData.data,\n _eventData.dispatchId,\n _eventData.syncType,\n _meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertQueueEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertQueueEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n\n\n // NEW CODE\n async insertBulkEvent(_eventData: BulkEvent): Promise<void> {\n try {\n const output: Array<SyncManagerPayload> = await this._modifyEventData(\n _eventData\n );\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n const _meta = JSON.stringify(_eventData.meta || {});\n\n if (\n _eventData.syncType === SyncType.WORKFLOW ||\n _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n _eventData.syncType === SyncType.CUSTODY_OUT_SCAN ||\n _eventData.syncType === DispatchSyncType.DISPATCH_UPDATE ||\n _eventData.syncType === DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE\n ) {\n output.forEach(\n (syncManagerPayload: SyncManagerPayload, index: number) => {\n const _payload = JSON.stringify(syncManagerPayload.data);\n if (\n isEmptyOrBlank(syncManagerPayload.data.action) ||\n isEmptyOrBlank(_payload)\n ) {\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n }\n values.push(`(?,?,?,?,?)`);\n args.push(\n _payload,\n _eventData.dispatchId,\n _eventData.syncType,\n syncManagerPayload.length,\n _meta\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n }\n );\n\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n // else if (\n // _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n // _eventData.syncType === SyncType.CUSTODY_OUT_SCAN\n // ) {\n // output.forEach(\n // (syncManagerPayload: SyncManagerPayload, index: number) => {\n // const _payload = JSON.stringify(syncManagerPayload);\n // if (\n // isEmptyOrBlank(syncManagerPayload.action) ||\n // isEmptyOrBlank(_payload)\n // ) {\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n // }\n // values.push(`(?,?,?,?)`);\n // args.push(\n // _payload,\n // _eventData.dispatchId,\n // _eventData.syncType,\n // _meta\n // );\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // }\n // );\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } else if (_eventData.syncType === DispatchSyncType.DISPATCH_UPDATE) {\n // }\n else {\n const chunkedData = this.splitData(output, BULK_DATA_LIMIT, 'payload');\n\n chunkedData.forEach((_evData, index) => {\n const _payload = JSON.stringify(_evData.payload);\n if (isEmptyOrBlank(_evData.action) || isEmptyOrBlank(_payload))\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n values.push(`(?,?,?,?,?)`);\n args.push(_evData, _eventData.dispatchId, _eventData.syncType, _meta);\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertBulkEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertBulkEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n // OLD CODE\n // async insertBulkEvent(_eventData: BulkEvent[]): Promise<void> {\n // try {\n // let args: any[] = [];\n // let values: any[] = [];\n // let queryData: ExecQuery[] = []; //final data to pass to db\n // let evIndex = 100;\n\n // _eventData.forEach((_evData, index) => {\n // if (\n // !_evData.sequence ||\n // isEmptyOrBlank(_evData.data) ||\n // isEmptyOrBlank(_evData.dispatchId) ||\n // isEmptyOrBlank(_evData.syncType)\n // )\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n\n // values.push(`(?,?,?,?,?)`);\n // args.push(\n // _evData.data,\n // _evData.dispatchId,\n // // _evData.sequence,\n // _evData.config ? JSON.stringify(_evData.config) : null,\n // _evData.syncType,\n // _evData.meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n // );\n // if (index === evIndex || index === _eventData.length - 1) {\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.CONFIG},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // evIndex = evIndex + evIndex;\n // }\n // });\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } catch (err) {\n // if (this._retries < this.maxRetryCount) {\n // Logger.getInstance().logEvent(\n // 'insertBulkEvent ',\n // this._retries.toString(),\n // LOG_TYPE.SDK_DEBUG\n // );\n // this._retries++;\n // await this.insertBulkEvent(_eventData);\n // } else {\n // this._retries = 0;\n // throw err;\n // }\n // }\n // }\n\n async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n if (dispatchID) {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.DISPATCH_ID} = ?;`,\n [dispatchID]\n );\n return resultSet.rows._array;\n } else {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE};`,\n []\n );\n return resultSet.rows._array;\n }\n }\n\n async getAllUnsyncedEvents(): Promise<EventRow[]> {\n let resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE} \\\n where ${EVENTS_COLUMNS.SYNCED} = 0;`,\n []\n );\n return resultSet.rows._array;\n }\n\n public deleteAllEvents() {\n const deleteEventsQuery = {\n query: `DELETE FROM ${EVENTS_TABLE};`,\n args: [],\n };\n const resetAutoIncrementSequence = {\n query: `UPDATE sqlite_sequence SET seq = 0 WHERE name\n = '${EVENTS_TABLE}';`,\n args: [],\n };\n\n return Database.executeBulkQuery([\n deleteEventsQuery,\n resetAutoIncrementSequence,\n ]);\n }\n\n async updateError(id: number, syncError: string): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} \\\n SET \\\n ${EVENTS_COLUMNS.SYNC_ERROR} = ? WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [syncError, id]\n );\n }\n\n async markEventSynced(id: number): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} SET ${EVENTS_COLUMNS.SYNCED} = 1 WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [id]\n );\n }\n\n async getWorkflowUpdateEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getJobRemovalEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getCustodyBatch(dispatchID: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0 and \\\n (${EVENTS_COLUMNS.SYNC_TYPE} = ? or ${EVENTS_COLUMNS.SYNC_TYPE} = ?) \\\n and ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [SyncType.CUSTODY_IN_SCAN, SyncType.CUSTODY_OUT_SCAN, dispatchID]\n );\n return sqlResult.rows._array;\n }\n async getObjectiveDetails(objectiveRef: string): Promise<EventRow[]> {\n let rs = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE} WHERE ${EVENTS_COLUMNS.META} = ?;`,\n [objectiveRef]\n );\n return rs.rows._array;\n }\n\n async getRowToSync(id: string, dispatchId: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.ID} = ? and \\\n ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [id, dispatchId]\n );\n return sqlResult.rows._array;\n }\n\n async getBulkRowsToSync(id: string, dispatchId: string): Promise<EventRow[]> {\n const query = `SELECT * FROM \\\n (SELECT *, \\ \n (SELECT SUM(${EVENTS_COLUMNS.DATA_LENGTH}) \\\n FROM ${EVENTS_TABLE} \\\n WHERE id <= t.id and ${EVENTS_COLUMNS.ID} > ${id} and ${EVENTS_COLUMNS.DISPATCH_ID} \\ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 \\\n ) total \\\n FROM ${EVENTS_TABLE} t \\\n ) q \\\n WHERE total <= ${BULK_DATA_LIMIT} \\\n ORDER BY ${EVENTS_COLUMNS.ID};`;\n\n const sqlResult = await Database.executeQuery(query, []);\n\n return sqlResult.rows._array;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAgBA,IAAAE,QAAA,GAAAC,uBAAA,CAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAF,uBAAA,CAAAH,OAAA;AAGA,IAAAM,OAAA,GAAAH,uBAAA,CAAAH,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AAIA,IAAAQ,iCAAA,GAAAR,OAAA;AAG4D,IAAAS,MAAA;AAAA,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAY,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAV,MAAA,CAAAC,cAAA,CAAAS,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAE,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAN,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAI,GAAA,QAAAN,GAAA,GAAAO,YAAA,CAAAD,GAAA,2BAAAN,GAAA,gBAAAA,GAAA,GAAAQ,MAAA,CAAAR,GAAA;AAAA,SAAAO,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAhB,IAAA,CAAAc,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA,KAJ5D;AAKA,MAAMS,QAAQ,GAAGC,2CAAS,CAACD,QAAQ;AAEpB,MAAME,eAAe,CAAC;EAK3BC,WAAWA,CAAA,EAAG;IAAAvB,eAAA,wBAHU,CAAC;IAAAA,eAAA,mBACd,CAAC;EAEG;EAEvB,aAAoBwB,WAAWA,CAAA,EAA6B;IAC1D,IAAI,CAACF,eAAe,CAACG,QAAQ,EAAE;MAC7B,IAAIC,OAAO,GAAG,IAAIJ,eAAe,CAAC,CAAC;MACnC,MAAMA,eAAe,CAACK,IAAI,CAAC,CAAC;MAC5BL,eAAe,CAACG,QAAQ,GAAGC,OAAO;IACpC;IACA,OAAOJ,eAAe,CAACG,QAAQ;EACjC;;EAEA;EACA,aAAqBE,IAAIA,CAAA,EAAkB;IACzC,MAAMxD,QAAQ,CAACyD,YAAY,CACxB,8BAA6BC,sBAAa;AACjD,kBAAkBC,wBAAc,CAACC,EAAG;AACpC,kBAAkBD,wBAAc,CAACE,WAAY;AAC7C,kBAAkBF,wBAAc,CAACG,OAAQ;AACzC,kBAAkBH,wBAAc,CAACI,MAAO;AACxC,kBAAkBJ,wBAAc,CAACK,SAAU;AAC3C,kBAAkBL,wBAAc,CAACM,WAAY;AAC7C,kBAAkBN,wBAAc,CAACO,IAAK;AACtC,kBAAkBP,wBAAc,CAACQ,MAAO;AACxC,kBAAkBR,wBAAc,CAACS,UAAW,SAAQ,EAC9C,EACF,CAAC;EACH;EAEA,MAAMC,WAAWA,CACfC,QAAgB,EAChBC,OAAe,EACfC,KAAa,EACbC,QAAgB,EAChBC,YAAoB,EACpBC,MAAe,EACA;IACf,MAAM3E,QAAQ,CAACyD,YAAY,CACxB,eAAcC,sBAAa;AAClC,kBAAkBC,wBAAc,CAACG,OAAQ;AACzC,kBAAkBH,wBAAc,CAACE,WAAY;AAC7C,kBAAkBF,wBAAc,CAACiB,QAAS;AAC1C,kBAAkBjB,wBAAc,CAACI,MAAO;AACxC,kBAAkBJ,wBAAc,CAACK,SAAU;AAC3C,kBAAkBL,wBAAc,CAACO,IAAK;AACtC,qCAAqC,EAC/B,CAACK,OAAO,EAAEC,KAAK,EAAEF,QAAQ,EAAEK,MAAM,IAAI,IAAI,EAAEF,QAAQ,EAAEC,YAAY,CACnE,CAAC;EACH;EAEA,MAAcG,aAAaA,CACzBC,cAAyB,EACc;IACvC,MAAMC,MAAoC,GAAG,EAAE;IAC/C,MAAMC,UAAU,GAAGF,cAAc,CAACE,UAAU;IAC5C,MAAM;MAAEC,MAAM;MAAEC,SAAS;MAAEC,IAAI;MAAEC,SAAS;MAAEC,SAAS;MAAEC;IAAkB,CAAC,GACxER,cAAc,CAACS,IAAI;IACrB,MAAMC,OAAY,GAAG,CAAC,CAAC;IACvB,MAAMC,MAA6B,GAAGX,cAAc,CAACY,IAAI;IAEzD,IAAIC,MAAM,GAAG,CAAC;IACd,IAAIC,UAAgE,GAClE,MAAMC,kDAAgB,CAACC,aAAa,CAClCR,iBAAiB,EACjBS,0BAAe,EACfJ,MACF,CAAC;IACH,GAAG;MACD,MAAMK,UAAgE,GACpEJ,UAAU;MAEZxE,MAAM,CAAC6E,IAAI,CAACR,MAAM,CAAC,CAACS,OAAO,CAAEC,YAAoB,IAAK;QACpDX,OAAO,CAACW,YAAY,CAAC,GAAGV,MAAM,CAACU,YAAY,CAAC;MAC9C,CAAC,CAAC;MAEFpB,MAAM,CAACqB,IAAI,CAAC;QACVpB,UAAU;QACVK,SAAS;QACTgB,SAAS,EAAE,CACT;UACEpB,MAAM;UACNG,SAAS;UACTF,SAAS;UACTC,IAAI;UACJO,IAAI,EAAEF,OAAO;UACbQ,UAAU;UACVT,IAAI,EAAE,CAAC;QACT,CAAC;MAEL,CAAC,CAAC;MAEFI,MAAM,IAAII,0BAAe;MACzBH,UAAU,GAAG,MAAMC,kDAAgB,CAACC,aAAa,CAC/CR,iBAAiB,EACjBS,0BAAe,EACfJ,MACF,CAAC;IACH,CAAC,QAAQC,UAAU,CAACU,MAAM,GAAG,CAAC;IAE9B,OAAOvB,MAAM;EACf;EAEQwB,iBAAiBA,CAACzB,cAAyB,EAAE;IACnD,MAAMY,IAAwB,GAAGZ,cAAc,CAACY,IAAI;IACpD,OAAOA,IAAI;EACb;EAEQc,oBAAoBA,CAAC1B,cAAyB,EAAE;IACtD,MAAMY,IAAS,GAAGZ,cAAc,CAACY,IAAI;IACrC,OAAOA,IAAI;EACb;EAEQe,wBAAwBA,CAAC3B,cAAyB,EAAE;IAC1D,MAAMY,IAAS,GAAGZ,cAAc,CAACY,IAAI;IACrC,MAAMnB,OAAO,GAAGmB,IAAI,CAACnB,OAAO;IAC5B,OAAOA,OAAO;EAChB;EAEA,MAAcmC,gBAAgBA,CAC5B5B,cAAyB,EACW;IACpC,MAAML,QAA+C,GACnDK,cAAc,CAACL,QAAQ;IACzB,QAAQA,QAAQ;MACd,KAAKxB,QAAQ,CAAC0D,eAAe;QAAE;UAC7B,MAAMC,cAAc,GAAG,IAAI,CAACL,iBAAiB,CAACzB,cAAc,CAAC;UAC7D,OAAO,CACL;YACEY,IAAI,EAAE;cACJmB,MAAM,EAAE5D,QAAQ,CAAC0D,eAAe;cAChCpC,OAAO,EAAE;gBAAEkB,MAAM,EAAEmB;cAAe;YACpC,CAAC;YACDN,MAAM,EAAEM,cAAc,CAACN;UACzB,CAAC,CACF;QACH;MACA,KAAKrD,QAAQ,CAAC6D,gBAAgB;QAAE;UAC9B,MAAMC,eAAe,GAAG,IAAI,CAACR,iBAAiB,CAACzB,cAAc,CAAC;UAE9D,OAAO,CACL;YACEY,IAAI,EAAE;cACJmB,MAAM,EAAE5D,QAAQ,CAAC6D,gBAAgB;cACjCvC,OAAO,EAAE;gBAAEkB,MAAM,EAAEsB;cAAgB;YACrC,CAAC;YACDT,MAAM,EAAES,eAAe,CAACT;UAC1B,CAAC,CACF;QACH;MACA,KAAKrD,QAAQ,CAAC+D,QAAQ;QAAE;UACtB,MAAMzC,OAAO,GAAG,MAAM,IAAI,CAACM,aAAa,CAACC,cAAc,CAAC;UACxD,OAAOP,OAAO,CAAC0C,GAAG,CAAEC,QAAQ;YAAA,IAAAC,qBAAA;YAAA,OAAM;cAChCzB,IAAI,EAAE;gBAAEmB,MAAM,EAAE5D,QAAQ,CAAC+D,QAAQ;gBAAEzC,OAAO,EAAE2C;cAAS,CAAC;cACtDZ,MAAM,EAAE,EAAAa,qBAAA,GAAAD,QAAQ,CAACb,SAAS,CAAC,CAAC,CAAC,CAACL,UAAU,cAAAmB,qBAAA,uBAAhCA,qBAAA,CAAkCb,MAAM,KAAI;YACtD,CAAC;UAAA,CAAC,CAAC;QACL;MACA,KAAKrD,QAAQ,CAACmE,WAAW;QAAE;UAAA,IAAAC,mBAAA,EAAAC,mBAAA;UACzB,MAAMC,UAAU,GAAG,IAAI,CAACf,oBAAoB,CAAC1B,cAAc,CAAC;UAC5D,MAAMwB,MAAM,GACV,CAAAiB,UAAU,aAAVA,UAAU,gBAAAF,mBAAA,GAAVE,UAAU,CAAEC,OAAO,cAAAH,mBAAA,uBAAnBA,mBAAA,CAAqBf,MAAM,KAAGiB,UAAU,aAAVA,UAAU,gBAAAD,mBAAA,GAAVC,UAAU,CAAEE,OAAO,cAAAH,mBAAA,uBAAnBA,mBAAA,CAAqBhB,MAAM;UAC3D,OAAO,CACL;YACEZ,IAAI,EAAE;cACJmB,MAAM,EAAE5D,QAAQ,CAACmE,WAAW;cAC5B7C,OAAO,EAAEgD;YACX,CAAC;YACDjB,MAAM,EAAEA,MAAM,IAAI;UACpB,CAAC,CACF;QACH;MACA,KAAKoB,0BAAgB,CAACC,eAAe;QAAE;UACrC,OAAO,CACL;YACEjC,IAAI,EAAE;cACJmB,MAAM,EAAEa,0BAAgB,CAACC,eAAe;cACxCpD,OAAO,EAAE,IAAI,CAACkC,wBAAwB,CAAC3B,cAAc;YACvD,CAAC;YACDwB,MAAM,EAAE;UACV,CAAC,CACF;QACH;MACA,KAAKoB,0BAAgB,CAACE,0BAA0B;QAAE;UAChD,OAAO,CACL;YACElC,IAAI,EAAE;cACJmB,MAAM,EAAEa,0BAAgB,CAACE,0BAA0B;cACnDrD,OAAO,EAAE,IAAI,CAACkC,wBAAwB,CAAC3B,cAAc;YACvD,CAAC;YACDwB,MAAM,EAAE;UACV,CAAC,CACF;QACH;MACA;QAAS;UACP,OAAO,CACL;YACEZ,IAAI,EAAE;cACJmB,MAAM,EAAEa,0BAAgB,CAACG,OAAO;cAChCtD,OAAO,EAAE,CAAC;YACZ,CAAC;YACD+B,MAAM,EAAE;UACV,CAAC,CACF;QACH;IACF;EACF;EAEQwB,SAASA,CAACpC,IAAS,EAAEqC,SAAiB,EAAEC,QAAgB,EAAS;IACvE,MAAMjD,MAAW,GAAG,EAAE;IACtB,MAAMkD,UAAU,GAAGvC,IAAI,CAACsC,QAAQ,CAAC;IAEjC,IAAI,CAACC,UAAU,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,UAAU,CAAC,EAAE;MAC7C,OAAOlD,MAAM;IACf;IAEA,KAAK,IAAIpD,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGsG,UAAU,CAAC3B,MAAM,EAAE3E,CAAC,IAAIoG,SAAS,EAAE;MACrD,MAAMK,KAAU,GAAG,CAAC,CAAC;MAErB,KAAK,MAAMrG,GAAG,IAAI2D,IAAI,EAAE;QACtB,IAAIA,IAAI,CAACjE,cAAc,CAACM,GAAG,CAAC,EAAE;UAC5BqG,KAAK,CAACrG,GAAG,CAAC,GACRA,GAAG,KAAKiG,QAAQ,GAAGC,UAAU,CAACI,KAAK,CAAC1G,CAAC,EAAEA,CAAC,GAAGoG,SAAS,CAAC,GAAGrC,IAAI,CAAC3D,GAAG,CAAC;QACrE;MACF;MAEAgD,MAAM,CAACqB,IAAI,CAACgC,KAAK,CAAC;IACpB;IAEA,OAAOrD,MAAM;EACf;;EAEA;EACA,MAAMuD,gBAAgBA,CAACC,UAAqB,EAAiB;IAC3D,IAAIC,IAAW,GAAG,EAAE;IACpB,IAAIC,MAAa,GAAG,EAAE;IACtB,IAAIC,SAAsB,GAAG,EAAE,CAAC,CAAC;IACjC,IAAI;MACFD,MAAM,CAACrC,IAAI,CAAE,WAAU,CAAC;MACxB,MAAMuC,KAAK,GAAGC,IAAI,CAACC,SAAS,CAACN,UAAU,CAAChD,IAAI,CAAC;MAC7CiD,IAAI,CAACpC,IAAI,CACPmC,UAAU,CAAC7C,IAAI,EACf6C,UAAU,CAACvD,UAAU,EACrBuD,UAAU,CAAC9D,QAAQ,EACnBkE;MACA;MACA;MACF,CAAC;;MACDD,SAAS,CAACtC,IAAI,CAAC;QACb0C,KAAK,EAAG,eAAcpF,sBAAa;AAC3C,gBAAgBC,wBAAc,CAACG,OAAQ;AACvC,gBAAgBH,wBAAc,CAACE,WAAY;AAC3C,gBAAgBF,wBAAc,CAACK,SAAU;AACzC,gBAAgBL,wBAAc,CAACO,IAAK;AACpC,uBAAuBuE,MAAM,CAACM,IAAI,CAAC,GAAG,CAAE,GAAE;QAClCP;MACF,CAAC,CAAC;MACF,MAAMxI,QAAQ,CAACgJ,gBAAgB,CAACN,SAAS,CAAC;MAC1C,IAAI,CAACO,QAAQ,GAAG,CAAC;IACnB,CAAC,CAAC,OAAOC,GAAG,EAAE;MACZ,IAAI,IAAI,CAACD,QAAQ,GAAG,IAAI,CAACE,aAAa,EAAE;QACtCC,eAAM,CAAC/F,WAAW,CAAC,CAAC,CAACgG,QAAQ,CAC3B,mBAAmB,EACnB,IAAI,CAACJ,QAAQ,CAACK,QAAQ,CAAC,CAAC,EACxBC,gBAAQ,CAACC,SACX,CAAC;QACD,IAAI,CAACP,QAAQ,EAAE;QACf,MAAM,IAAI,CAACX,gBAAgB,CAACC,UAAU,CAAC;MACzC,CAAC,MAAM;QACL,IAAI,CAACU,QAAQ,GAAG,CAAC;QACjB,MAAMC,GAAG;MACX;IACF;EACF;;EAIA;EACA,MAAMO,eAAeA,CAAClB,UAAqB,EAAiB;IAC1D,IAAI;MACF,MAAM9C,MAAiC,GAAG,MAAM,IAAI,CAACiB,gBAAgB,CACnE6B,UACF,CAAC;MACD,IAAIC,IAAW,GAAG,EAAE;MACpB,IAAIC,MAAa,GAAG,EAAE;MACtB,IAAIC,SAAsB,GAAG,EAAE,CAAC,CAAC;MACjC,MAAMC,KAAK,GAAGC,IAAI,CAACC,SAAS,CAACN,UAAU,CAAChD,IAAI,IAAI,CAAC,CAAC,CAAC;MAEnD,IACEgD,UAAU,CAAC9D,QAAQ,KAAKxB,QAAQ,CAAC+D,QAAQ,IACzCuB,UAAU,CAAC9D,QAAQ,KAAKxB,QAAQ,CAAC0D,eAAe,IAChD4B,UAAU,CAAC9D,QAAQ,KAAKxB,QAAQ,CAAC6D,gBAAgB,IACjDyB,UAAU,CAAC9D,QAAQ,KAAKiD,0BAAgB,CAACC,eAAe,IACxDY,UAAU,CAAC9D,QAAQ,KAAKiD,0BAAgB,CAACE,0BAA0B,EACnE;QACAnC,MAAM,CAACS,OAAO,CACZ,CAACwD,kBAAsC,EAAEC,KAAa,KAAK;UACzD,MAAMzC,QAAQ,GAAG0B,IAAI,CAACC,SAAS,CAACa,kBAAkB,CAAChE,IAAI,CAAC;UACxD,IACE,IAAAkE,qBAAc,EAACF,kBAAkB,CAAChE,IAAI,CAACmB,MAAM,CAAC,IAC9C,IAAA+C,qBAAc,EAAC1C,QAAQ,CAAC,EACxB;YACA,MAAM,IAAI2C,oBAAS,CACjBC,mBAAc,CAACC,oBAAoB,EACnCC,iCACF,CAAC;UACH;UACAvB,MAAM,CAACrC,IAAI,CAAE,aAAY,CAAC;UAC1BoC,IAAI,CAACpC,IAAI,CACPc,QAAQ,EACRqB,UAAU,CAACvD,UAAU,EACrBuD,UAAU,CAAC9D,QAAQ,EACnBiF,kBAAkB,CAACpD,MAAM,EACzBqC,KACF,CAAC;UACDD,SAAS,CAACtC,IAAI,CAAC;YACb0C,KAAK,EAAG,eAAcpF,sBAAa;AACjD,gBAAgBC,wBAAc,CAACG,OAAQ;AACvC,gBAAgBH,wBAAc,CAACE,WAAY;AAC3C,gBAAgBF,wBAAc,CAACK,SAAU;AACzC,gBAAgBL,wBAAc,CAACM,WAAY;AAC3C,gBAAgBN,wBAAc,CAACO,IAAK;AACpC,uBAAuBuE,MAAM,CAACM,IAAI,CAAC,GAAG,CAAE,GAAE;YAC5BP;UACF,CAAC,CAAC;UACFC,MAAM,GAAG,EAAE;UACXD,IAAI,GAAG,EAAE;QACX,CACF,CAAC;QAED,MAAMxI,QAAQ,CAACgJ,gBAAgB,CAACN,SAAS,CAAC;QAC1C,IAAI,CAACO,QAAQ,GAAG,CAAC;MACnB;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;;MAEA;MACA;MACA;MACA;MAAA,KACK;QACH,MAAMgB,WAAW,GAAG,IAAI,CAACnC,SAAS,CAACrC,MAAM,EAAEM,0BAAe,EAAE,SAAS,CAAC;QAEtEkE,WAAW,CAAC/D,OAAO,CAAC,CAACgE,OAAO,EAAEP,KAAK,KAAK;UACtC,MAAMzC,QAAQ,GAAG0B,IAAI,CAACC,SAAS,CAACqB,OAAO,CAAC3F,OAAO,CAAC;UAChD,IAAI,IAAAqF,qBAAc,EAACM,OAAO,CAACrD,MAAM,CAAC,IAAI,IAAA+C,qBAAc,EAAC1C,QAAQ,CAAC,EAC5D,MAAM,IAAI2C,oBAAS,CACjBC,mBAAc,CAACC,oBAAoB,EACnCC,iCACF,CAAC;UACHvB,MAAM,CAACrC,IAAI,CAAE,aAAY,CAAC;UAC1BoC,IAAI,CAACpC,IAAI,CAAC8D,OAAO,EAAE3B,UAAU,CAACvD,UAAU,EAAEuD,UAAU,CAAC9D,QAAQ,EAAEkE,KAAK,CAAC;UACrED,SAAS,CAACtC,IAAI,CAAC;YACb0C,KAAK,EAAG,eAAcpF,sBAAa;AAC/C,gBAAgBC,wBAAc,CAACG,OAAQ;AACvC,gBAAgBH,wBAAc,CAACE,WAAY;AAC3C,gBAAgBF,wBAAc,CAACK,SAAU;AACzC,gBAAgBL,wBAAc,CAACM,WAAY;AAC3C,gBAAgBN,wBAAc,CAACO,IAAK;AACpC,uBAAuBuE,MAAM,CAACM,IAAI,CAAC,GAAG,CAAE,GAAE;YAC9BP;UACF,CAAC,CAAC;UACFC,MAAM,GAAG,EAAE;UACXD,IAAI,GAAG,EAAE;QACX,CAAC,CAAC;QACF,MAAMxI,QAAQ,CAACgJ,gBAAgB,CAACN,SAAS,CAAC;QAC1C,IAAI,CAACO,QAAQ,GAAG,CAAC;MACnB;IACF,CAAC,CAAC,OAAOC,GAAG,EAAE;MACZ,IAAI,IAAI,CAACD,QAAQ,GAAG,IAAI,CAACE,aAAa,EAAE;QACtCC,eAAM,CAAC/F,WAAW,CAAC,CAAC,CAACgG,QAAQ,CAC3B,kBAAkB,EAClB,IAAI,CAACJ,QAAQ,CAACK,QAAQ,CAAC,CAAC,EACxBC,gBAAQ,CAACC,SACX,CAAC;QACD,IAAI,CAACP,QAAQ,EAAE;QACf,MAAM,IAAI,CAACQ,eAAe,CAAClB,UAAU,CAAC;MACxC,CAAC,MAAM;QACL,IAAI,CAACU,QAAQ,GAAG,CAAC;QACjB,MAAMC,GAAG;MACX;IACF;EACF;;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA,MAAMiB,YAAYA,CAACC,UAAmB,EAAuB;IAC3D,IAAIA,UAAU,EAAE;MACd,MAAMC,SAAS,GAAG,MAAMrK,QAAQ,CAACyD,YAAY,CAC1C,iBAAgBC,sBAAa;AACtC,oBAAoBC,wBAAc,CAACE,WAAY,OAAM,EAC7C,CAACuG,UAAU,CACb,CAAC;MACD,OAAOC,SAAS,CAACC,IAAI,CAACC,MAAM;IAC9B,CAAC,MAAM;MACL,MAAMF,SAAS,GAAG,MAAMrK,QAAQ,CAACyD,YAAY,CAC1C,iBAAgBC,sBAAa,GAAE,EAChC,EACF,CAAC;MACD,OAAO2G,SAAS,CAACC,IAAI,CAACC,MAAM;IAC9B;EACF;EAEA,MAAMC,oBAAoBA,CAAA,EAAwB;IAChD,IAAIH,SAAS,GAAG,MAAMrK,QAAQ,CAACyD,YAAY,CACxC,iBAAgBC,sBAAa;AACpC,oBAAoBC,wBAAc,CAACQ,MAAO,OAAM,EAC1C,EACF,CAAC;IACD,OAAOkG,SAAS,CAACC,IAAI,CAACC,MAAM;EAC9B;EAEOE,eAAeA,CAAA,EAAG;IACvB,MAAMC,iBAAiB,GAAG;MACxB5B,KAAK,EAAG,eAAcpF,sBAAa,GAAE;MACrC8E,IAAI,EAAE;IACR,CAAC;IACD,MAAMmC,0BAA0B,GAAG;MACjC7B,KAAK,EAAG;AACd,UAAUpF,sBAAa,IAAG;MACpB8E,IAAI,EAAE;IACR,CAAC;IAED,OAAOxI,QAAQ,CAACgJ,gBAAgB,CAAC,CAC/B0B,iBAAiB,EACjBC,0BAA0B,CAC3B,CAAC;EACJ;EAEA,MAAMC,WAAWA,CAACC,EAAU,EAAEC,SAAiB,EAAiB;IAC9D,IAAI,CAACD,EAAE,EAAE,MAAM,IAAI9H,SAAS,CAAC,yBAAyB,CAAC;IACvD,MAAM/C,QAAQ,CAACyD,YAAY,CACxB,UAASC,sBAAa;AAC7B;AACA,cAAcC,wBAAc,CAACS,UAAW,eAAcT,wBAAc,CAACC,EAAG,OAAM,EACxE,CAACkH,SAAS,EAAED,EAAE,CAChB,CAAC;EACH;EAEA,MAAME,eAAeA,CAACF,EAAU,EAAiB;IAC/C,IAAI,CAACA,EAAE,EAAE,MAAM,IAAI9H,SAAS,CAAC,yBAAyB,CAAC;IACvD,MAAM/C,QAAQ,CAACyD,YAAY,CACxB,UAASC,sBAAa,QAAOC,wBAAc,CAACQ,MAAO,cAAaR,wBAAc,CAACC,EAAG,OAAM,EACzF,CAACiH,EAAE,CACL,CAAC;EACH;EAEA,MAAMG,uBAAuBA,CAACvG,QAAgB,EAAuB;IACnE,IAAIwG,YAAY,GAAG,MAAMjL,QAAQ,CAACyD,YAAY,CAC3C,iBAAgBC,sBAAa;AACpC,oBAAoBC,wBAAc,CAACQ,MAAO;AAC1C,kBAAkBR,wBAAc,CAACK,SAAU;AAC3C,uBAAuBL,wBAAc,CAACC,EAAG,eAAc,EACjD,CAACa,QAAQ,CACX,CAAC;IACD,OAAOwG,YAAY,CAACX,IAAI,CAACC,MAAM;EACjC;EACA,MAAMW,mBAAmBA,CAACzG,QAAgB,EAAuB;IAC/D,IAAIwG,YAAY,GAAG,MAAMjL,QAAQ,CAACyD,YAAY,CAC3C,iBAAgBC,sBAAa;AACpC,oBAAoBC,wBAAc,CAACQ,MAAO;AAC1C,kBAAkBR,wBAAc,CAACK,SAAU;AAC3C,uBAAuBL,wBAAc,CAACC,EAAG,eAAc,EACjD,CAACa,QAAQ,CACX,CAAC;IACD,OAAOwG,YAAY,CAACX,IAAI,CAACC,MAAM;EACjC;EACA,MAAMY,eAAeA,CAACf,UAAkB,EAAuB;IAC7D,MAAMgB,SAAS,GAAG,MAAMpL,QAAQ,CAACyD,YAAY,CAC1C,iBAAgBC,sBAAa;AACpC,oBAAoBC,wBAAc,CAACQ,MAAO;AAC1C,eAAeR,wBAAc,CAACK,SAAU,WAAUL,wBAAc,CAACK,SAAU;AAC3E,kBAAkBL,wBAAc,CAACE,WAAY;AAC7C,uBAAuBF,wBAAc,CAACC,EAAG,OAAM,EACzC,CAACX,QAAQ,CAAC0D,eAAe,EAAE1D,QAAQ,CAAC6D,gBAAgB,EAAEsD,UAAU,CAClE,CAAC;IACD,OAAOgB,SAAS,CAACd,IAAI,CAACC,MAAM;EAC9B;EACA,MAAMc,mBAAmBA,CAAC3G,YAAoB,EAAuB;IACnE,IAAI4G,EAAE,GAAG,MAAMtL,QAAQ,CAACyD,YAAY,CACjC,iBAAgBC,sBAAa,UAASC,wBAAc,CAACO,IAAK,OAAM,EACjE,CAACQ,YAAY,CACf,CAAC;IACD,OAAO4G,EAAE,CAAChB,IAAI,CAACC,MAAM;EACvB;EAEA,MAAMgB,YAAYA,CAACV,EAAU,EAAE7F,UAAkB,EAAuB;IACtE,MAAMoG,SAAS,GAAG,MAAMpL,QAAQ,CAACyD,YAAY,CAC1C,iBAAgBC,sBAAa;AACpC,oBAAoBC,wBAAc,CAACC,EAAG;AACtC,cAAcD,wBAAc,CAACE,WAAY;AACzC,uBAAuBF,wBAAc,CAACC,EAAG,OAAM,EACzC,CAACiH,EAAE,EAAE7F,UAAU,CACjB,CAAC;IACD,OAAOoG,SAAS,CAACd,IAAI,CAACC,MAAM;EAC9B;EAEA,MAAMiB,iBAAiBA,CAACX,EAAU,EAAE7F,UAAkB,EAAuB;IAC3E,MAAM8D,KAAK,GAAI;AACnB;AACA,wBAAwBnF,wBAAc,CAACM,WAAY;AACnD,qBAAqBP,sBAAa;AAClC,uCAAuCC,wBAAc,CAACC,EAAG,MAAKiH,EAAG,QAAOlH,wBAAc,CAACE,WAAY,SAAQmB,UAAW,SAAQrB,wBAAc,CAACM,WAAY;AACzJ;AACA,uBAAuBP,sBAAa;AACpC;AACA,iCAAiCqC,0BAAgB;AACjD,2BAA2BpC,wBAAc,CAACC,EAAG,GAAE;IAE3C,MAAMwH,SAAS,GAAG,MAAMpL,QAAQ,CAACyD,YAAY,CAACqF,KAAK,EAAE,EAAE,CAAC;IAExD,OAAOsC,SAAS,CAACd,IAAI,CAACC,MAAM;EAC9B;AACF;AAACkB,OAAA,CAAA3K,OAAA,GAAAqC,eAAA;AAAA5C,MAAA,GArmBoB4C,eAAe;AAAAtB,eAAA,CAAfsB,eAAe"}
|
|
1
|
+
{"version":3,"names":["_utils","require","_DBConfig","Database","_interopRequireWildcard","_BaseError","_ErrorCodes","_Logger","_constants","_platformCoreosExecutionEngineSdk","_class","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_defineProperty","obj","key","value","_toPropertyKey","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SyncType","IDispatch","ETEventsManager","constructor","MAX_RETRY_COUNT","getInstance","instance","manager","init","executeQuery","EVENTS_TABLE","EVENTS_COLUMNS","ID","DISPATCH_ID","PAYLOAD","CONFIG","SYNC_TYPE","DATA_LENGTH","META","SYNCED","ATTEMPT_COUNT","SYNC_ERROR","insertPODDocEvent","dspID","syncType","insertEvent","sequence","payload","objectiveRef","config","SEQUENCE","getWFIPayload","_bulkEventData","result","dispatchId","status","timestamp","code","attemptId","updatedBy","mergedObjectiveId","meta","outData","output","data","offset","jobMapping","DispatchExecutor","getJobMapping","BULK_DATA_LIMIT","__unmerged","keys","forEach","customETName","push","workflows","length","getCustodyPayload","getJobRemovalPayload","getDispatchUpdatePayload","_modifyEventData","CUSTODY_IN_SCAN","custodyInScans","action","CUSTODY_OUT_SCAN","custodyOutScans","WORKFLOW","map","_payload","_payload$workflows$0$","JOB_REMOVAL","_jobRemoval$success","_jobRemoval$failure","jobRemoval","success","failure","DispatchSyncType","DISPATCH_UPDATE","DISPATCH_SUB_STATUS_UPDATE","DEFAULT","splitData","chunkSize","splitKey","splitArray","Array","isArray","chunk","slice","insertQueueEvent","_eventData","args","values","queryData","_meta","JSON","stringify","query","join","executeBulkQuery","_retries","err","maxRetryCount","Logger","logEvent","toString","LOG_TYPE","SDK_DEBUG","insertBulkEvent","syncManagerPayload","index","isEmptyOrBlank","BaseError","BaseErrorCodes","InvalidArgumentError","InvalidArgumentsError","chunkedData","_evData","getAllEvents","dispatchID","resultSet","rows","_array","getAllUnsyncedEvents","deleteAllEvents","deleteEventsQuery","resetAutoIncrementSequence","updateError","id","syncError","markPODDocEventSynced","sync","attempt","podDocId","markEventSynced","getWorkflowUpdateEvents","sqlResultSet","getJobRemovalEvents","getCustodyBatch","sqlResult","getObjectiveDetails","rs","getRowToSync","getBulkRowsToSync","PROCESS_MAX_RETRIED_ROWS","exports"],"sources":["ETEventsManager.ts"],"sourcesContent":["import { isEmptyOrBlank } from '../../../utils/utils';\nimport {\n BulkEvent,\n CustodyData,\n DispatchSyncType,\n EventETData,\n EventRow,\n EVENTS_COLUMNS,\n EVENTS_TABLE,\n SyncManagerPayload,\n ExecEngineSyncType,\n WFUpdateBulkEventData,\n WIUpdateOutputPayload,\n WORKFLOW_INSTANCE_COLUMNS,\n WORKFLOW_INSTANCE_TABLE,\n} from '../DBConfig';\nimport type { ExecQuery } from '../database';\nimport * as Database from '../database';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n} from '../../../errors/ErrorCodes';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { BULK_DATA_LIMIT, MAX_RETRY_COUNT, PROCESS_MAX_RETRIED_ROWS } from '../constants';\nimport Storage from '../../../utils/storage';\n\n// NEW CODE\nimport {\n DispatchExecutor,\n IDispatch,\n} from '@os1-platform/platform-coreos-execution-engine-sdk';\nconst SyncType = IDispatch.SyncType;\n\nexport default class ETEventsManager {\n private static instance: ETEventsManager;\n private maxRetryCount: number = MAX_RETRY_COUNT;\n private _retries = 0;\n\n private constructor() {}\n\n public static async getInstance(): Promise<ETEventsManager> {\n if (!ETEventsManager.instance) {\n let manager = new ETEventsManager();\n await ETEventsManager.init();\n ETEventsManager.instance = manager;\n }\n return ETEventsManager.instance;\n }\n\n // NEED TO REMOVE SYNCED, CONFIG, OBJECTIVE_REF\n private static async init(): Promise<void> {\n await Database.executeQuery(\n `CREATE TABLE IF NOT EXISTS ${EVENTS_TABLE} (\\\n ${EVENTS_COLUMNS.ID} INTEGER PRIMARY KEY AUTOINCREMENT,\\\n ${EVENTS_COLUMNS.DISPATCH_ID} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.PAYLOAD} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.CONFIG} TEXT,\\\n ${EVENTS_COLUMNS.SYNC_TYPE} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.DATA_LENGTH} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.META} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.ATTEMPT_COUNT} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.SYNC_ERROR} TEXT);`,\n []\n );\n }\n\n // This is the function to insert POD_DOC type event in event table.\n async insertPODDocEvent(dspID: string, syncType: string): Promise<void> {\n await Database.executeQuery(\n `INSERT INTO ${EVENTS_TABLE}(${EVENTS_COLUMNS.DISPATCH_ID},${EVENTS_COLUMNS.SYNC_TYPE},${EVENTS_COLUMNS.PAYLOAD},${EVENTS_COLUMNS.DATA_LENGTH},${EVENTS_COLUMNS.META},${EVENTS_COLUMNS.SYNCED},${EVENTS_COLUMNS.CONFIG},${EVENTS_COLUMNS.SYNC_ERROR}) values (?,?,?,?,?,?,?,?)`,\n [dspID, syncType, '', 1, '', 0, '', '']\n );\n }\n\n async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n await Database.executeQuery(\n `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SEQUENCE},\\\n ${EVENTS_COLUMNS.CONFIG},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values (?,?,?,?,?,?)`,\n [payload, dspID, sequence, config ?? null, syncType, objectiveRef]\n );\n }\n\n private async getWFIPayload(\n _bulkEventData: BulkEvent\n ): Promise<Array<WIUpdateOutputPayload>> {\n const result: Array<WIUpdateOutputPayload> = [];\n const dispatchId = _bulkEventData.dispatchId;\n const { status, timestamp, code, attemptId, updatedBy, mergedObjectiveId } =\n _bulkEventData.meta;\n const outData: any = {};\n const output: WFUpdateBulkEventData = _bulkEventData.data;\n\n let offset = 0;\n let jobMapping: Array<{ jobId: string; workflowInstanceId: string }> =\n await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n do {\n const __unmerged: Array<{ jobId: string; workflowInstanceId: string }> =\n jobMapping;\n\n Object.keys(output).forEach((customETName: string) => {\n outData[customETName] = output[customETName];\n });\n\n result.push({\n dispatchId,\n updatedBy,\n workflows: [\n {\n status,\n attemptId,\n timestamp,\n code,\n data: outData,\n __unmerged,\n meta: {},\n },\n ],\n });\n\n offset += BULK_DATA_LIMIT;\n jobMapping = await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n } while (jobMapping.length > 0);\n\n return result;\n }\n\n private getCustodyPayload(_bulkEventData: BulkEvent) {\n const data: Array<CustodyData> = _bulkEventData.data;\n return data;\n }\n\n private getJobRemovalPayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n return data;\n }\n\n private getDispatchUpdatePayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n const payload = data.payload;\n return payload;\n }\n\n private async _modifyEventData(\n _bulkEventData: BulkEvent\n ): Promise<Array<SyncManagerPayload>> {\n const syncType: ExecEngineSyncType | DispatchSyncType =\n _bulkEventData.syncType;\n switch (syncType) {\n case SyncType.CUSTODY_IN_SCAN: {\n const custodyInScans = this.getCustodyPayload(_bulkEventData);\n return [\n {\n data: {\n action: SyncType.CUSTODY_IN_SCAN,\n payload: { output: custodyInScans },\n },\n length: custodyInScans.length,\n },\n ];\n }\n case SyncType.CUSTODY_OUT_SCAN: {\n const custodyOutScans = this.getCustodyPayload(_bulkEventData);\n\n return [\n {\n data: {\n action: SyncType.CUSTODY_OUT_SCAN,\n payload: { output: custodyOutScans },\n },\n length: custodyOutScans.length,\n },\n ];\n }\n case SyncType.WORKFLOW: {\n const payload = await this.getWFIPayload(_bulkEventData);\n return payload.map((_payload) => ({\n data: { action: SyncType.WORKFLOW, payload: _payload },\n length: _payload.workflows[0].__unmerged?.length || 0,\n }));\n }\n case SyncType.JOB_REMOVAL: {\n const jobRemoval = this.getJobRemovalPayload(_bulkEventData);\n const length =\n jobRemoval?.success?.length + jobRemoval?.failure?.length;\n return [\n {\n data: {\n action: SyncType.JOB_REMOVAL,\n payload: jobRemoval,\n },\n length: length || 0,\n },\n ];\n }\n case DispatchSyncType.DISPATCH_UPDATE: {\n return [\n {\n data: {\n action: DispatchSyncType.DISPATCH_UPDATE,\n payload: this.getDispatchUpdatePayload(_bulkEventData),\n },\n length: 1,\n },\n ];\n }\n case DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE: {\n return [\n {\n data: {\n action: DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE,\n payload: this.getDispatchUpdatePayload(_bulkEventData),\n },\n length: 1,\n },\n ];\n }\n default: {\n return [\n {\n data: {\n action: DispatchSyncType.DEFAULT,\n payload: {},\n },\n length: 0,\n },\n ];\n }\n }\n }\n\n private splitData(data: any, chunkSize: number, splitKey: string): any[] {\n const result: any = [];\n const splitArray = data[splitKey];\n\n if (!splitArray || !Array.isArray(splitArray)) {\n return result;\n }\n\n for (let i = 0; i < splitArray.length; i += chunkSize) {\n const chunk: any = {};\n\n for (const key in data) {\n if (data.hasOwnProperty(key)) {\n chunk[key] =\n key === splitKey ? splitArray.slice(i, i + chunkSize) : data[key];\n }\n }\n\n result.push(chunk);\n }\n\n return result;\n }\n\n // NEW CODE\n async insertQueueEvent(_eventData: BulkEvent): Promise<void> {\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n try {\n values.push(`(?,?,?,?)`);\n const _meta = JSON.stringify(_eventData.meta);\n args.push(\n _eventData.data,\n _eventData.dispatchId,\n _eventData.syncType,\n _meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertQueueEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertQueueEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n\n\n // NEW CODE\n async insertBulkEvent(_eventData: BulkEvent): Promise<void> {\n try {\n const output: Array<SyncManagerPayload> = await this._modifyEventData(\n _eventData\n );\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n const _meta = JSON.stringify(_eventData.meta || {});\n\n if (\n _eventData.syncType === SyncType.WORKFLOW ||\n _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n _eventData.syncType === SyncType.CUSTODY_OUT_SCAN ||\n _eventData.syncType === DispatchSyncType.DISPATCH_UPDATE ||\n _eventData.syncType === DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE\n ) {\n output.forEach(\n (syncManagerPayload: SyncManagerPayload, index: number) => {\n const _payload = JSON.stringify(syncManagerPayload.data);\n if (\n isEmptyOrBlank(syncManagerPayload.data.action) ||\n isEmptyOrBlank(_payload)\n ) {\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n }\n values.push(`(?,?,?,?,?)`);\n args.push(\n _payload,\n _eventData.dispatchId,\n _eventData.syncType,\n syncManagerPayload.length,\n _meta\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n }\n );\n\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n // else if (\n // _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n // _eventData.syncType === SyncType.CUSTODY_OUT_SCAN\n // ) {\n // output.forEach(\n // (syncManagerPayload: SyncManagerPayload, index: number) => {\n // const _payload = JSON.stringify(syncManagerPayload);\n // if (\n // isEmptyOrBlank(syncManagerPayload.action) ||\n // isEmptyOrBlank(_payload)\n // ) {\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n // }\n // values.push(`(?,?,?,?)`);\n // args.push(\n // _payload,\n // _eventData.dispatchId,\n // _eventData.syncType,\n // _meta\n // );\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // }\n // );\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } else if (_eventData.syncType === DispatchSyncType.DISPATCH_UPDATE) {\n // }\n else {\n const chunkedData = this.splitData(output, BULK_DATA_LIMIT, 'payload');\n\n chunkedData.forEach((_evData, index) => {\n const _payload = JSON.stringify(_evData.payload);\n if (isEmptyOrBlank(_evData.action) || isEmptyOrBlank(_payload))\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n values.push(`(?,?,?,?,?)`);\n args.push(_evData, _eventData.dispatchId, _eventData.syncType, _meta);\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertBulkEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertBulkEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n // OLD CODE\n // async insertBulkEvent(_eventData: BulkEvent[]): Promise<void> {\n // try {\n // let args: any[] = [];\n // let values: any[] = [];\n // let queryData: ExecQuery[] = []; //final data to pass to db\n // let evIndex = 100;\n\n // _eventData.forEach((_evData, index) => {\n // if (\n // !_evData.sequence ||\n // isEmptyOrBlank(_evData.data) ||\n // isEmptyOrBlank(_evData.dispatchId) ||\n // isEmptyOrBlank(_evData.syncType)\n // )\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n\n // values.push(`(?,?,?,?,?)`);\n // args.push(\n // _evData.data,\n // _evData.dispatchId,\n // // _evData.sequence,\n // _evData.config ? JSON.stringify(_evData.config) : null,\n // _evData.syncType,\n // _evData.meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n // );\n // if (index === evIndex || index === _eventData.length - 1) {\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.CONFIG},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // evIndex = evIndex + evIndex;\n // }\n // });\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } catch (err) {\n // if (this._retries < this.maxRetryCount) {\n // Logger.getInstance().logEvent(\n // 'insertBulkEvent ',\n // this._retries.toString(),\n // LOG_TYPE.SDK_DEBUG\n // );\n // this._retries++;\n // await this.insertBulkEvent(_eventData);\n // } else {\n // this._retries = 0;\n // throw err;\n // }\n // }\n // }\n\n async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n if (dispatchID) {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.DISPATCH_ID} = ?;`,\n [dispatchID]\n );\n return resultSet.rows._array;\n } else {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE};`,\n []\n );\n return resultSet.rows._array;\n }\n }\n\n async getAllUnsyncedEvents(): Promise<EventRow[]> {\n let resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE} \\\n where ${EVENTS_COLUMNS.SYNCED} = 0;`,\n []\n );\n return resultSet.rows._array;\n }\n\n public deleteAllEvents() {\n const deleteEventsQuery = {\n query: `DELETE FROM ${EVENTS_TABLE};`,\n args: [],\n };\n const resetAutoIncrementSequence = {\n query: `UPDATE sqlite_sequence SET seq = 0 WHERE name\n = '${EVENTS_TABLE}';`,\n args: [],\n };\n\n return Database.executeBulkQuery([\n deleteEventsQuery,\n resetAutoIncrementSequence,\n ]);\n }\n\n async updateError(id: number, syncError: string): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} \\\n SET \\\n ${EVENTS_COLUMNS.SYNC_ERROR} = ? WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [syncError, id]\n );\n }\n\n // This function will actualy update the POD_DOC type of event as sync along with attempt count.\n async markPODDocEventSynced(sync: number, attempt:number, podDocId: String): Promise<void> {\n if (!podDocId) throw new TypeError('podDocId cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} SET ${EVENTS_COLUMNS.SYNCED} = ?, ${EVENTS_COLUMNS.ATTEMPT_COUNT} = ? WHERE ${EVENTS_COLUMNS.SYNC_TYPE} = ?;`,\n [sync,attempt,podDocId]\n );\n }\n\n async markEventSynced(id: number): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} SET ${EVENTS_COLUMNS.SYNCED} = 1 WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [id]\n );\n }\n\n async getWorkflowUpdateEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getJobRemovalEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getCustodyBatch(dispatchID: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0 and \\\n (${EVENTS_COLUMNS.SYNC_TYPE} = ? or ${EVENTS_COLUMNS.SYNC_TYPE} = ?) \\\n and ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [SyncType.CUSTODY_IN_SCAN, SyncType.CUSTODY_OUT_SCAN, dispatchID]\n );\n return sqlResult.rows._array;\n }\n async getObjectiveDetails(objectiveRef: string): Promise<EventRow[]> {\n let rs = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE} WHERE ${EVENTS_COLUMNS.META} = ?;`,\n [objectiveRef]\n );\n return rs.rows._array;\n }\n\n async getRowToSync(id: string, dispatchId: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.ID} = ? and \\\n ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [id, dispatchId]\n );\n return sqlResult.rows._array;\n }\n\n async getBulkRowsToSync(id: string, dispatchId: string): Promise<EventRow[]> {\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 const query = `SELECT * FROM \\\n (SELECT *, \\ \n (SELECT SUM(${EVENTS_COLUMNS.DATA_LENGTH}) \\\n FROM ${EVENTS_TABLE} \\\n WHERE id <= t.id and ${EVENTS_COLUMNS.ID} > ${id} and ${EVENTS_COLUMNS.DISPATCH_ID} \\ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 \\\n ) total \\\n FROM ${EVENTS_TABLE} t \\\n ) q \\\n WHERE total <= ${BULK_DATA_LIMIT} \\\n ORDER BY ${EVENTS_COLUMNS.ID};`;\n\n const sqlResult = await Database.executeQuery(query, []);\n return sqlResult.rows._array;\n }else{\n const query = `SELECT * FROM \\\n (SELECT *, \\ \n (SELECT SUM(${EVENTS_COLUMNS.DATA_LENGTH}) \\\n FROM ${EVENTS_TABLE} \\\n WHERE id <= t.id and ${EVENTS_COLUMNS.ID} > ${id} and ${EVENTS_COLUMNS.DISPATCH_ID} \\ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 and ${EVENTS_COLUMNS.ATTEMPT_COUNT} < ${MAX_RETRY_COUNT} \\\n ) total \\\n FROM ${EVENTS_TABLE} t \\\n ) q \\\n WHERE total <= ${BULK_DATA_LIMIT} \\\n ORDER BY ${EVENTS_COLUMNS.ID};`;\n\n const sqlResult = await Database.executeQuery(query, []);\n return sqlResult.rows._array;\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ class EventsSyncManager {
|
|
|
36
36
|
_defineProperty(this, "inProgress", false);
|
|
37
37
|
_defineProperty(this, "cScanInProgress", false);
|
|
38
38
|
_defineProperty(this, "eventsManager", void 0);
|
|
39
|
-
_defineProperty(this, "maxRetryCount",
|
|
39
|
+
_defineProperty(this, "maxRetryCount", _constants.MAX_RETRY_COUNT);
|
|
40
40
|
_defineProperty(this, "_retries", 0);
|
|
41
41
|
}
|
|
42
42
|
initSyncManager(baseURL, retryCount) {
|
|
@@ -64,10 +64,28 @@ class EventsSyncManager {
|
|
|
64
64
|
const lastSyncedEventId = await _storage.default.getInstance().getSharedItem(_constants.LAST_SYNCED_EVENT_ID);
|
|
65
65
|
const dspID = await _DispatchSdkCache.default.getInstance().getKeyFromCache(_DispatchSdkCache.default.KEYS.DISPATCH_ID);
|
|
66
66
|
const bulkEventRows = await this.eventsManager.getBulkRowsToSync(lastSyncedEventId, dspID ?? '');
|
|
67
|
-
|
|
68
|
-
|
|
67
|
+
var arrEventsToSync = [];
|
|
68
|
+
|
|
69
|
+
// Filtering and removing those events which are type of POD_DOC
|
|
70
|
+
for (var index in bulkEventRows) {
|
|
71
|
+
let syncType = bulkEventRows[index].sync_type;
|
|
72
|
+
if (syncType.includes(_constants.POD_DOC)) {
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
arrEventsToSync.push(bulkEventRows[index]);
|
|
76
|
+
}
|
|
77
|
+
if (arrEventsToSync.length) {
|
|
78
|
+
await this.syncBulkEventToServer(arrEventsToSync, lastSyncedEventId);
|
|
79
|
+
let extraParameters = {
|
|
80
|
+
bulkEventRows: arrEventsToSync.length
|
|
81
|
+
};
|
|
82
|
+
_Logger.default.getInstance().logEvent('startSync-event-to-sync', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
|
|
69
83
|
} else {
|
|
70
|
-
|
|
84
|
+
let extraParameters = {
|
|
85
|
+
bulkEventRows: bulkEventRows.length,
|
|
86
|
+
arrEventsToSync: arrEventsToSync.length
|
|
87
|
+
};
|
|
88
|
+
_Logger.default.getInstance().logEvent('startSync-no-event-to-sync', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
|
|
71
89
|
}
|
|
72
90
|
|
|
73
91
|
// OLD CODE
|
|
@@ -78,16 +96,31 @@ class EventsSyncManager {
|
|
|
78
96
|
// ];
|
|
79
97
|
// await Promise.all(promises);
|
|
80
98
|
} else {
|
|
81
|
-
|
|
99
|
+
let extraParameters = {
|
|
100
|
+
network: hasNetwork
|
|
101
|
+
};
|
|
102
|
+
_Logger.default.getInstance().logEvent('startSync-no network', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
|
|
82
103
|
}
|
|
83
|
-
} catch (error) {
|
|
104
|
+
} catch (error) {
|
|
105
|
+
_Logger.default.getInstance().logEvent('startSync-error', (0, _utils.flattenObject)(error), _Logger.LOG_TYPE.SDK_ERROR);
|
|
106
|
+
} finally {
|
|
84
107
|
this.inProgress = false;
|
|
85
108
|
if ((await this.isSyncPending()) && hasNetwork) {
|
|
86
109
|
await this.startSync();
|
|
110
|
+
} else {
|
|
111
|
+
let extraParameters = {
|
|
112
|
+
hasNetwork: hasNetwork,
|
|
113
|
+
pending: this.isSyncPending()
|
|
114
|
+
};
|
|
115
|
+
_Logger.default.getInstance().logEvent('startSync-inprogress-syncpending-hasnetwork', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
|
|
87
116
|
}
|
|
88
117
|
}
|
|
89
118
|
} else {
|
|
90
|
-
|
|
119
|
+
let extraParameters = {
|
|
120
|
+
isProgress: this.inProgress,
|
|
121
|
+
retry: this._retries
|
|
122
|
+
};
|
|
123
|
+
_Logger.default.getInstance().logEvent('startSync-inprogress-maxretries', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
|
|
91
124
|
}
|
|
92
125
|
}
|
|
93
126
|
|
|
@@ -173,7 +206,7 @@ class EventsSyncManager {
|
|
|
173
206
|
try {
|
|
174
207
|
promises.push(this.eventsManager.updateError(ev.id, errorString));
|
|
175
208
|
} catch (err) {
|
|
176
|
-
_Logger.default.getInstance().logEvent('updateEventError', err
|
|
209
|
+
_Logger.default.getInstance().logEvent('updateEventError', (0, _utils.flattenObject)(err), _Logger.LOG_TYPE.SDK_WARNING);
|
|
177
210
|
}
|
|
178
211
|
}
|
|
179
212
|
await Promise.all(promises);
|
|
@@ -214,11 +247,20 @@ class EventsSyncManager {
|
|
|
214
247
|
try {
|
|
215
248
|
promises.push(await this.eventsManager.markEventSynced(ev.id));
|
|
216
249
|
} catch (err) {
|
|
217
|
-
_Logger.default.getInstance().logEvent('markEventSynced', err
|
|
250
|
+
_Logger.default.getInstance().logEvent('markEventSynced', (0, _utils.flattenObject)(err), _Logger.LOG_TYPE.SDK_WARNING);
|
|
218
251
|
}
|
|
219
252
|
}
|
|
220
253
|
await Promise.all(promises);
|
|
221
254
|
}
|
|
255
|
+
|
|
256
|
+
// This function will insert POD_DOC type of event in event table.
|
|
257
|
+
async insertPODDocEvent(dspID, syncType) {
|
|
258
|
+
if ((0, _utils.isEmptyOrBlank)(dspID) || (0, _utils.isEmptyOrBlank)(syncType)) throw new _BaseError.BaseError(_ErrorCodes.default.InvalidArgumentError, _ErrorCodes.InvalidArgumentsError);
|
|
259
|
+
if (!this.eventsManager) {
|
|
260
|
+
this.eventsManager = await _ETEventsManager.default.getInstance();
|
|
261
|
+
}
|
|
262
|
+
await this.eventsManager.insertPODDocEvent(dspID, syncType);
|
|
263
|
+
}
|
|
222
264
|
async insertEvent(sequence, payload, dspID, syncType, objectiveRef, config) {
|
|
223
265
|
if (!sequence || (0, _utils.isEmptyOrBlank)(payload) || (0, _utils.isEmptyOrBlank)(dspID) || (0, _utils.isEmptyOrBlank)(syncType) || (0, _utils.isEmptyOrBlank)(objectiveRef)) throw new _BaseError.BaseError(_ErrorCodes.default.InvalidArgumentError, _ErrorCodes.InvalidArgumentsError);
|
|
224
266
|
if (!this.eventsManager) {
|
|
@@ -295,50 +337,67 @@ class EventsSyncManager {
|
|
|
295
337
|
}
|
|
296
338
|
if (requiredPayload) return requiredPayload.data;else return null;
|
|
297
339
|
} catch (err) {
|
|
298
|
-
_Logger.default.getInstance().logEvent('getObjectiveSummary', err
|
|
340
|
+
_Logger.default.getInstance().logEvent('getObjectiveSummary', (0, _utils.flattenObject)(err), _Logger.LOG_TYPE.SDK_WARNING);
|
|
299
341
|
return null;
|
|
300
342
|
}
|
|
301
343
|
}
|
|
302
|
-
async syncEventToServer(eventRows, syncType) {
|
|
303
|
-
try {
|
|
304
|
-
var _this$syncHttpClient;
|
|
305
|
-
const success = await ((_this$syncHttpClient = this.syncHttpClient) === null || _this$syncHttpClient === void 0 ? void 0 : _this$syncHttpClient.syncEvent(eventRows, syncType));
|
|
306
|
-
if (success) {
|
|
307
|
-
this._retries = 0;
|
|
308
|
-
// NEW CODE
|
|
309
|
-
const lastSyncedEventId = await _storage.default.getInstance().getSharedItem(_constants.LAST_SYNCED_EVENT_ID);
|
|
310
|
-
const syncEventId = parseInt(lastSyncedEventId) + 1;
|
|
311
|
-
await _storage.default.getInstance().setSharedItem(_constants.LAST_SYNCED_EVENT_ID, `${syncEventId}`);
|
|
312
344
|
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
345
|
+
// private async syncEventToServer(
|
|
346
|
+
// eventRows: EventRow[],
|
|
347
|
+
// syncType: ExecEngineSyncType | DispatchSyncType
|
|
348
|
+
// ) {
|
|
349
|
+
// try {
|
|
350
|
+
// const success = await this.syncHttpClient?.syncEvent(eventRows, syncType);
|
|
351
|
+
|
|
352
|
+
// if (success) {
|
|
353
|
+
// this._retries = 0;
|
|
354
|
+
// // NEW CODE
|
|
355
|
+
// const lastSyncedEventId = await Storage.getInstance().getSharedItem(
|
|
356
|
+
// LAST_SYNCED_EVENT_ID
|
|
357
|
+
// );
|
|
358
|
+
// const syncEventId = parseInt(lastSyncedEventId) + 1;
|
|
359
|
+
// await Storage.getInstance().setSharedItem(
|
|
360
|
+
// LAST_SYNCED_EVENT_ID,
|
|
361
|
+
// `${syncEventId}`
|
|
362
|
+
// );
|
|
363
|
+
|
|
364
|
+
// // OLD CODE
|
|
365
|
+
// await this.markEventSynced(eventRows);
|
|
366
|
+
// } else {
|
|
367
|
+
// this._retries++;
|
|
368
|
+
// /* Logger.getInstance().logEvent(
|
|
369
|
+
// 'syncEventToServer',
|
|
370
|
+
// `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,
|
|
371
|
+
// LOG_TYPE.SDK_ERROR
|
|
372
|
+
// ); */
|
|
373
|
+
// await this.updateEventError(eventRows, 'Unexpected error');
|
|
374
|
+
// }
|
|
375
|
+
// } catch (error: any) {
|
|
376
|
+
// this._retries++;
|
|
377
|
+
// /* Logger.getInstance().logEvent(
|
|
378
|
+
// 'syncEventToServer',
|
|
379
|
+
// `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${
|
|
380
|
+
// error.message
|
|
381
|
+
// }`,
|
|
382
|
+
// LOG_TYPE.SDK_ERROR
|
|
383
|
+
// ); */
|
|
384
|
+
// await this.updateEventError(
|
|
385
|
+
// eventRows,
|
|
386
|
+
// JSON.stringify({
|
|
387
|
+
// error,
|
|
388
|
+
// })
|
|
389
|
+
// );
|
|
390
|
+
// }
|
|
391
|
+
// }
|
|
392
|
+
|
|
338
393
|
async syncBulkEventToServer(eventRows, lastSyncedEventId) {
|
|
339
394
|
try {
|
|
340
|
-
var _this$
|
|
341
|
-
const success = await ((_this$
|
|
395
|
+
var _this$syncHttpClient;
|
|
396
|
+
const success = await ((_this$syncHttpClient = this.syncHttpClient) === null || _this$syncHttpClient === void 0 ? void 0 : _this$syncHttpClient.syncBulkEvent(eventRows));
|
|
397
|
+
let extraParameters = {
|
|
398
|
+
success: success
|
|
399
|
+
};
|
|
400
|
+
_Logger.default.getInstance().logEvent('syncBulkEventToServer-syncBulkEvent-success-true', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
|
|
342
401
|
if (success) {
|
|
343
402
|
this._retries = 0;
|
|
344
403
|
// NEW CODE
|
|
@@ -348,24 +407,22 @@ class EventsSyncManager {
|
|
|
348
407
|
|
|
349
408
|
// OLD CODE
|
|
350
409
|
await this.markEventSynced(eventRows);
|
|
410
|
+
let extraParameters = {
|
|
411
|
+
retries: this._retries,
|
|
412
|
+
lastSyncEventId: syncEventId
|
|
413
|
+
};
|
|
414
|
+
_Logger.default.getInstance().logEvent('syncBulkEventToServer-markEventSynced', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
|
|
351
415
|
} else {
|
|
352
416
|
this._retries++;
|
|
353
|
-
/* Logger.getInstance().logEvent(
|
|
354
|
-
'syncEventToServer',
|
|
355
|
-
`Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,
|
|
356
|
-
LOG_TYPE.SDK_ERROR
|
|
357
|
-
); */
|
|
358
417
|
await this.updateEventError(eventRows, 'Unexpected error');
|
|
418
|
+
let extraParameters = {
|
|
419
|
+
success: success
|
|
420
|
+
};
|
|
421
|
+
_Logger.default.getInstance().logEvent('syncBulkEventToServer-syncBulkEvent-success-false', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
|
|
359
422
|
}
|
|
360
423
|
} catch (error) {
|
|
361
424
|
this._retries++;
|
|
362
|
-
|
|
363
|
-
'syncEventToServer',
|
|
364
|
-
`Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${
|
|
365
|
-
error.message
|
|
366
|
-
}`,
|
|
367
|
-
LOG_TYPE.SDK_ERROR
|
|
368
|
-
); */
|
|
425
|
+
_Logger.default.getInstance().logEvent('syncBulkEventToServer-error', (0, _utils.flattenObject)(error), _Logger.LOG_TYPE.SDK_ERROR);
|
|
369
426
|
await this.updateEventError(eventRows, JSON.stringify({
|
|
370
427
|
error
|
|
371
428
|
}));
|