@restforgejs/platform 5.0.9 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/fast-track.js +963 -0
  5. package/generators/cli/payload/sync.js +18 -2
  6. package/generators/lib/migrate/field-type-resolver.js +18 -5
  7. package/generators/lib/payload/payload-runner.js +724 -39
  8. package/generators/lib/templates/dashboard-catalog.js +1 -1
  9. package/generators/lib/templates/db-connection-env.js +1 -1
  10. package/generators/lib/templates/dbschema-catalog.js +1 -1
  11. package/generators/lib/templates/field-validation-catalog.js +1 -1
  12. package/generators/lib/templates/mysql-template.js +1 -1
  13. package/generators/lib/templates/oracle-template.js +1 -1
  14. package/generators/lib/templates/postgres-template.js +1 -1
  15. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  16. package/generators/lib/templates/sqlite-template.js +1 -1
  17. package/integrity-manifest.json +18 -18
  18. package/package.json +1 -1
  19. package/scripts/verify-integrity.js +1 -1
  20. package/server.js +1 -1
  21. package/src/components/handlers/adjust_handler.js +1 -1
  22. package/src/components/handlers/audit_handler.js +1 -1
  23. package/src/components/handlers/delete_handler.js +1 -1
  24. package/src/components/handlers/export_handler.js +1 -1
  25. package/src/components/handlers/import_handler.js +1 -1
  26. package/src/components/handlers/insert_handler.js +1 -1
  27. package/src/components/handlers/update_handler.js +1 -1
  28. package/src/components/handlers/upload_handler.js +1 -1
  29. package/src/components/handlers/workflow_handler.js +1 -1
  30. package/src/components/integrations/webhook.js +1 -1
  31. package/src/consumers/baseConsumer.js +1 -1
  32. package/src/consumers/declarativeMapper.js +1 -1
  33. package/src/consumers/handlers/apiHandler.js +1 -1
  34. package/src/consumers/handlers/consoleHandler.js +1 -1
  35. package/src/consumers/handlers/databaseHandler.js +1 -1
  36. package/src/consumers/handlers/index.js +1 -1
  37. package/src/consumers/handlers/kafkaHandler.js +1 -1
  38. package/src/consumers/index.js +1 -1
  39. package/src/consumers/messageTransformer.js +1 -1
  40. package/src/consumers/validator.js +1 -1
  41. package/src/core/db/dialect/base-dialect.js +1 -1
  42. package/src/core/db/dialect/index.js +1 -1
  43. package/src/core/db/dialect/mysql-dialect.js +1 -1
  44. package/src/core/db/dialect/oracle-dialect.js +1 -1
  45. package/src/core/db/dialect/postgres-dialect.js +1 -1
  46. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  47. package/src/core/db/flatten-helper.js +1 -1
  48. package/src/core/db/query-builder-error.js +1 -1
  49. package/src/core/db/query-builder.js +1 -1
  50. package/src/core/db/relation-helper.js +1 -1
  51. package/src/core/handlers/delete_handler.js +1 -1
  52. package/src/core/handlers/insert_handler.js +1 -1
  53. package/src/core/handlers/update_handler.js +1 -1
  54. package/src/core/models/base-model.js +1 -1
  55. package/src/core/utils/cache-manager.js +1 -1
  56. package/src/core/utils/component-engine.js +1 -1
  57. package/src/core/utils/context-builder.js +1 -1
  58. package/src/core/utils/datetime-formatter.js +1 -1
  59. package/src/core/utils/datetime-parser.js +1 -1
  60. package/src/core/utils/db.js +1 -1
  61. package/src/core/utils/logger.js +1 -1
  62. package/src/core/utils/payload-loader.js +1 -1
  63. package/src/core/utils/security-checks.js +1 -1
  64. package/src/middleware/body-options.js +1 -1
  65. package/src/middleware/cors.js +1 -1
  66. package/src/middleware/idempotency.js +1 -1
  67. package/src/middleware/rate-limiter.js +1 -1
  68. package/src/middleware/request-logger.js +1 -1
  69. package/src/middleware/security-headers.js +1 -1
  70. package/src/models/base-model-mysql.js +1 -1
  71. package/src/models/base-model-oracle.js +1 -1
  72. package/src/models/base-model-sqlite.js +1 -1
  73. package/src/models/base-model.js +1 -1
  74. package/src/pro/caching/redis-client.js +1 -1
  75. package/src/pro/caching/redis-helper.js +1 -1
  76. package/src/pro/consumers/baseConsumer.js +1 -1
  77. package/src/pro/consumers/declarativeMapper.js +1 -1
  78. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  79. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  80. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  81. package/src/pro/consumers/handlers/index.js +1 -1
  82. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  83. package/src/pro/consumers/index.js +1 -1
  84. package/src/pro/consumers/messageTransformer.js +1 -1
  85. package/src/pro/consumers/validator.js +1 -1
  86. package/src/pro/database/base-model-mysql.js +1 -1
  87. package/src/pro/database/base-model-oracle.js +1 -1
  88. package/src/pro/database/base-model-sqlite.js +1 -1
  89. package/src/pro/database/db-mysql.js +1 -1
  90. package/src/pro/database/db-oracle.js +1 -1
  91. package/src/pro/database/db-sqlite.js +1 -1
  92. package/src/pro/excel/excel-generator.js +1 -1
  93. package/src/pro/excel/excel-parser.js +1 -1
  94. package/src/pro/excel/export-service.js +1 -1
  95. package/src/pro/excel/export_handler.js +1 -1
  96. package/src/pro/excel/import-service.js +1 -1
  97. package/src/pro/excel/import-validator.js +1 -1
  98. package/src/pro/excel/import_handler.js +1 -1
  99. package/src/pro/excel/upsert-builder.js +1 -1
  100. package/src/pro/idgen/idgen-routes.js +1 -1
  101. package/src/pro/integrations/lookup-resolver.js +1 -1
  102. package/src/pro/integrations/upload-handler-v2.js +1 -1
  103. package/src/pro/integrations/upload-handler.js +1 -1
  104. package/src/pro/integrations/webhook.js +1 -1
  105. package/src/pro/locking/lock-routes.js +1 -1
  106. package/src/pro/locking/resource-lock-manager.js +1 -1
  107. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  108. package/src/pro/messaging/kafkaService.js +1 -1
  109. package/src/pro/messaging/messagehubService.js +1 -1
  110. package/src/pro/messaging/rabbitmqService.js +1 -1
  111. package/src/pro/scheduler/job-manager.js +1 -1
  112. package/src/pro/scheduler/job-routes.js +1 -1
  113. package/src/pro/scheduler/job-validator.js +1 -1
  114. package/src/pro/storage/base-storage-provider.js +1 -1
  115. package/src/pro/storage/file-metadata-helper.js +1 -1
  116. package/src/pro/storage/index.js +1 -1
  117. package/src/pro/storage/local-storage-provider.js +1 -1
  118. package/src/pro/storage/s3-storage-provider.js +1 -1
  119. package/src/pro/storage/upload-cleanup-job.js +1 -1
  120. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  121. package/src/pro/storage/upload-pending-tracker.js +1 -1
  122. package/src/pro/websocket/broadcast-helper.js +1 -1
  123. package/src/pro/websocket/index.js +1 -1
  124. package/src/pro/websocket/livesync-server.js +1 -1
  125. package/src/pro/websocket/ws-broadcaster.js +1 -1
  126. package/src/services/export-service.js +1 -1
  127. package/src/services/import-service.js +1 -1
  128. package/src/services/kafkaConsumerService.js +1 -1
  129. package/src/services/kafkaService.js +1 -1
  130. package/src/services/messagehubService.js +1 -1
  131. package/src/services/rabbitmqService.js +1 -1
  132. package/src/utils/cache-invalidation-registry.js +1 -1
  133. package/src/utils/cache-manager.js +1 -1
  134. package/src/utils/component-engine.js +1 -1
  135. package/src/utils/config-extractor.js +1 -1
  136. package/src/utils/consumerLogger.js +1 -1
  137. package/src/utils/context-builder.js +1 -1
  138. package/src/utils/dashboard-helpers.js +1 -1
  139. package/src/utils/dateHelper.js +1 -1
  140. package/src/utils/datetime-formatter.js +1 -1
  141. package/src/utils/datetime-parser.js +1 -1
  142. package/src/utils/db-bootstrap.js +1 -1
  143. package/src/utils/db-mysql.js +1 -1
  144. package/src/utils/db-oracle.js +1 -1
  145. package/src/utils/db-sqlite.js +1 -1
  146. package/src/utils/db.js +1 -1
  147. package/src/utils/demo-generator.js +1 -1
  148. package/src/utils/excel-generator.js +1 -1
  149. package/src/utils/excel-parser.js +1 -1
  150. package/src/utils/file-watcher.js +1 -1
  151. package/src/utils/id-generator.js +1 -1
  152. package/src/utils/idempotency-manager.js +1 -1
  153. package/src/utils/import-validator.js +1 -1
  154. package/src/utils/license-client.js +1 -1
  155. package/src/utils/lock-manager.js +1 -1
  156. package/src/utils/logger.js +1 -1
  157. package/src/utils/lookup-resolver.js +1 -1
  158. package/src/utils/payload-loader.js +1 -1
  159. package/src/utils/processor-response.js +1 -1
  160. package/src/utils/rabbitmq.js +1 -1
  161. package/src/utils/redis-client.js +1 -1
  162. package/src/utils/redis-helper.js +1 -1
  163. package/src/utils/request-scope.js +1 -1
  164. package/src/utils/security-checks.js +1 -1
  165. package/src/utils/service-resolver.js +1 -1
  166. package/src/utils/shutdown-coordinator.js +1 -1
  167. package/src/utils/trusted-keys.js +1 -1
  168. package/src/utils/upload-handler.js +1 -1
  169. package/src/utils/upsert-builder.js +1 -1
  170. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x3aa27e=a0_0x5023;(function(_0x20838b,_0x4f3c86){const _0x20bf8e=a0_0x5023,_0x19abb4=_0x20838b();while(!![]){try{const _0x19bfc5=parseInt(_0x20bf8e(0xa0))/0x1*(parseInt(_0x20bf8e(0xe5))/0x2)+parseInt(_0x20bf8e(0xa2))/0x3+parseInt(_0x20bf8e(0xa9))/0x4+-parseInt(_0x20bf8e(0xbd))/0x5+-parseInt(_0x20bf8e(0xaf))/0x6*(parseInt(_0x20bf8e(0x9a))/0x7)+-parseInt(_0x20bf8e(0xbf))/0x8+parseInt(_0x20bf8e(0x9c))/0x9*(-parseInt(_0x20bf8e(0xdf))/0xa);if(_0x19bfc5===_0x4f3c86)break;else _0x19abb4['push'](_0x19abb4['shift']());}catch(_0x302dbf){_0x19abb4['push'](_0x19abb4['shift']());}}}(a0_0x1cfe,0x38e59));const oracledb=require(a0_0x3aa27e(0xc9)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');oracledb[a0_0x3aa27e(0xdb)]=[oracledb['CLOB'],oracledb['NCLOB']],oracledb[a0_0x3aa27e(0xc6)]=[oracledb[a0_0x3aa27e(0x8f)]];function a0_0x5023(_0x3588ec,_0x3c21d1){_0x3588ec=_0x3588ec-0x8b;const _0x1cfe21=a0_0x1cfe();let _0x50238=_0x1cfe21[_0x3588ec];if(a0_0x5023['dijNTJ']===undefined){var _0x37612a=function(_0x129616){const _0x4e31ac='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x24d7a6='',_0x3021e2='';for(let _0x4b17db=0x0,_0x236d78,_0x210dc7,_0x939023=0x0;_0x210dc7=_0x129616['charAt'](_0x939023++);~_0x210dc7&&(_0x236d78=_0x4b17db%0x4?_0x236d78*0x40+_0x210dc7:_0x210dc7,_0x4b17db++%0x4)?_0x24d7a6+=String['fromCharCode'](0xff&_0x236d78>>(-0x2*_0x4b17db&0x6)):0x0){_0x210dc7=_0x4e31ac['indexOf'](_0x210dc7);}for(let _0x14f12c=0x0,_0x59e059=_0x24d7a6['length'];_0x14f12c<_0x59e059;_0x14f12c++){_0x3021e2+='%'+('00'+_0x24d7a6['charCodeAt'](_0x14f12c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3021e2);};a0_0x5023['rIMQVO']=_0x37612a,a0_0x5023['hjCJBt']={},a0_0x5023['dijNTJ']=!![];}const _0x36d2d1=_0x1cfe21[0x0],_0x38e152=_0x3588ec+_0x36d2d1,_0x3d9c17=a0_0x5023['hjCJBt'][_0x38e152];return!_0x3d9c17?(_0x50238=a0_0x5023['rIMQVO'](_0x50238),a0_0x5023['hjCJBt'][_0x38e152]=_0x50238):_0x50238=_0x3d9c17,_0x50238;}async function ensureNlsReady(_0x2fb07d){const _0x43cec6=a0_0x3aa27e,_0x427152=_0x43cec6(0xe0)['split']('|');let _0x21d277=0x0;while(!![]){switch(_0x427152[_0x21d277++]){case'0':_0x2fb07d[_0x43cec6(0xda)]=!![];continue;case'1':if(_0x2fb07d[_0x43cec6(0xda)])return;continue;case'2':await _0x2fb07d[_0x43cec6(0xae)]('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27');continue;case'3':await _0x2fb07d[_0x43cec6(0xae)](_0x43cec6(0x94));continue;case'4':await _0x2fb07d['execute']('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3\x27');continue;}break;}}class OracleDatabase{constructor(){const _0x230fd5=a0_0x3aa27e,_0x485306={'KwtJq':function(_0x38be71,_0xb08b0f){return _0x38be71(_0xb08b0f);},'zkZUg':_0x230fd5(0x93),'DlSrO':_0x230fd5(0xe4),'WeaEU':'oracle'};this[_0x230fd5(0xbe)]=null,this[_0x230fd5(0xc7)]={'user':process[_0x230fd5(0x97)][_0x230fd5(0xce)]||'hr','password':process['env'][_0x230fd5(0xb4)]||'hr','connectString':this['buildConnectionString'](),'poolMin':_0x485306[_0x230fd5(0xc5)](parseInt,process[_0x230fd5(0x97)][_0x230fd5(0xcf)])||0x2,'poolMax':parseInt(process[_0x230fd5(0x97)][_0x230fd5(0xc1)])||0xa,'poolIncrement':_0x485306[_0x230fd5(0xc5)](parseInt,process[_0x230fd5(0x97)][_0x230fd5(0xe6)])||0x1,'poolTimeout':parseInt(process[_0x230fd5(0x97)]['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb['CLOB'],oracledb['NCLOB']],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process[_0x230fd5(0x97)][_0x230fd5(0xd8)]||_0x485306['zkZUg'],'port':process[_0x230fd5(0x97)][_0x230fd5(0xcd)]||_0x485306[_0x230fd5(0xb8)],'database':process['env'][_0x230fd5(0xac)]||'XE','type':_0x485306['WeaEU'],'user':this[_0x230fd5(0xc7)]['user'],'poolMin':this[_0x230fd5(0xc7)][_0x230fd5(0xd2)],'poolMax':this[_0x230fd5(0xc7)][_0x230fd5(0x8c)]});}[a0_0x3aa27e(0x9d)](){const _0x448343=a0_0x3aa27e,_0x3d8538={'dXLlo':'1521'},_0x2bcaf2=process[_0x448343(0x97)]['DB_HOST']||'localhost',_0x66dfb3=process[_0x448343(0x97)]['DB_PORT']||_0x3d8538['dXLlo'],_0x3e8752=process[_0x448343(0x97)][_0x448343(0xac)]||'XE',_0xe7d301='//'+_0x2bcaf2+':'+_0x66dfb3+'/'+_0x3e8752;return logger['debug']({'event':_0x448343(0xd0),'connectionString':_0xe7d301},'Oracle\x20Connection\x20String:\x20'+_0xe7d301),_0xe7d301;}async['initializePool'](){const _0x12b71b=a0_0x3aa27e,_0x1f6a0e={'TBDYb':'Oracle\x20connection\x20pool\x20sudah\x20ada','tqsSl':'Oracle\x20connection\x20pool\x20created\x20successfully','Knpya':function(_0xaaede6,_0xd7dfab,_0x194372,_0x74896b){return _0xaaede6(_0xd7dfab,_0x194372,_0x74896b);}};try{if(this['pool']){logger['debug']({'event':_0x12b71b(0xbb)},_0x1f6a0e['TBDYb']);return;}logger[_0x12b71b(0xd5)]({'event':'oracle_pool_creating'},_0x12b71b(0xb9)),this[_0x12b71b(0xbe)]=await oracledb[_0x12b71b(0xb2)](this[_0x12b71b(0xc7)]),logger['info']({'event':'oracle_pool_created'},_0x1f6a0e[_0x12b71b(0x95)]),await this[_0x12b71b(0xde)]();}catch(_0x2b9a85){_0x1f6a0e['Knpya'](logError,_0x2b9a85,{'event':_0x12b71b(0xbc)},_0x12b71b(0xe3)+_0x2b9a85[_0x12b71b(0xd4)]);throw _0x2b9a85;}}async[a0_0x3aa27e(0xde)](){const _0x1845ef=a0_0x3aa27e,_0xdaa4ba={'XOMqu':'Testing\x20Oracle\x20database\x20connection...','BxATN':function(_0x91679f,_0x4d513d){return _0x91679f(_0x4d513d);},'bnRVW':'SELECT\x20SYSDATE\x20as\x20current_date,\x20USER\x20as\x20current_user\x20FROM\x20DUAL','iECSr':function(_0x5db195,_0x5ea11e,_0x3df40a,_0x2a3864){return _0x5db195(_0x5ea11e,_0x3df40a,_0x2a3864);}};let _0x424972;try{logger[_0x1845ef(0x91)]({'event':_0x1845ef(0xcb)},_0xdaa4ba[_0x1845ef(0xcc)]),_0x424972=await this[_0x1845ef(0xbe)][_0x1845ef(0xdc)](),await _0xdaa4ba['BxATN'](ensureNlsReady,_0x424972);const _0x3c7fca=await _0x424972['execute'](_0xdaa4ba['bnRVW']);logger[_0x1845ef(0xd5)]({'event':_0x1845ef(0x8d),'currentDate':_0x3c7fca[_0x1845ef(0x96)][0x0][0x0],'currentUser':_0x3c7fca[_0x1845ef(0x96)][0x0][0x1]},_0x1845ef(0xca)+_0x3c7fca[_0x1845ef(0x96)][0x0][0x1]);}catch(_0x3e48eb){logError(_0x3e48eb,{'event':'oracle_connection_test_failed'},_0x1845ef(0xc0)+_0x3e48eb['message']);throw _0x3e48eb;}finally{if(_0x424972)try{await _0x424972['close']();}catch(_0x2f76ff){_0xdaa4ba[_0x1845ef(0xd3)](logError,_0x2f76ff,{'event':'oracle_test_connection_close_error'},'Error\x20closing\x20test\x20connection:\x20'+_0x2f76ff['message']);}}}async['executeQuery'](_0x1b34e1,_0x28106b=[],_0x172904={}){const _0x8b9748=a0_0x3aa27e,_0x173698={'lEujg':function(_0x4d691a,_0x2ad6b6){return _0x4d691a(_0x2ad6b6);},'WrFYG':'sql_error'};let _0x1a2dd2;const _0x1978a6=startQueryTimer();try{!this[_0x8b9748(0xbe)]&&await this['initializePool']();_0x1a2dd2=await this[_0x8b9748(0xbe)]['getConnection'](),await _0x173698[_0x8b9748(0xb3)](ensureNlsReady,_0x1a2dd2);const _0x50a8de={'outFormat':oracledb['OUT_FORMAT_OBJECT'],'autoCommit':_0x172904['autoCommit']!==undefined?_0x172904[_0x8b9748(0xe1)]:!![],..._0x172904},_0x4c3b84=await _0x1a2dd2[_0x8b9748(0xae)](_0x1b34e1,_0x28106b,_0x50a8de),_0x307e39=_0x1978a6(),_0x3f76f7=_0x4c3b84['rows']?_0x4c3b84[_0x8b9748(0x96)][_0x8b9748(0x90)]:_0x4c3b84[_0x8b9748(0xd6)];return logQuery(_0x1b34e1,_0x28106b,{'duration':_0x307e39,'rowsAffected':_0x3f76f7,'dbType':'oracle'}),_0x4c3b84['rows']?_0x4c3b84[_0x8b9748(0x96)]:{'rowsAffected':_0x4c3b84[_0x8b9748(0xd6)],'lastRowid':_0x4c3b84['lastRowid']};}catch(_0x120e74){const _0x1e2606=_0x1978a6();logError(_0x120e74,{'event':_0x173698['WrFYG'],'query':_0x1b34e1['substring'](0x0,0x1f4),'paramCount':_0x28106b[_0x8b9748(0x90)],'durationMs':_0x1e2606,'code':_0x120e74['errorNum'],'dbType':_0x8b9748(0x98)},_0x8b9748(0xe7)+_0x120e74[_0x8b9748(0xd4)]);throw _0x120e74;}finally{if(_0x1a2dd2)try{await _0x1a2dd2['close']();}catch(_0x157ad4){logError(_0x157ad4,{'event':_0x8b9748(0xc8)},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x157ad4['message']);}}}async[a0_0x3aa27e(0xb5)](_0x2800af){const _0x55d93b=a0_0x3aa27e,_0x4ee104={'mAvxv':function(_0x284cf7,_0x3e92f3){return _0x284cf7(_0x3e92f3);},'oAPlR':function(_0x43a421,_0x3759a8,_0x2aaac2){return _0x43a421(_0x3759a8,_0x2aaac2);},'xyfza':function(_0x4fd396){return _0x4fd396();},'dgfFn':function(_0x138c98,_0xc420f8,_0x35e2e5,_0x35b3ea){return _0x138c98(_0xc420f8,_0x35e2e5,_0x35b3ea);},'grnfi':_0x55d93b(0x98),'qmoVd':function(_0x4c5199,_0x44c9f7,_0x12fb2e){return _0x4c5199(_0x44c9f7,_0x12fb2e);},'pRphb':_0x55d93b(0xa3)};let _0xdafb75;const _0x722804=startQueryTimer();try{!this[_0x55d93b(0xbe)]&&await this['initializePool']();_0xdafb75=await this[_0x55d93b(0xbe)][_0x55d93b(0xdc)](),await _0x4ee104[_0x55d93b(0x9f)](ensureNlsReady,_0xdafb75),_0x4ee104[_0x55d93b(0xb1)](logTransaction,_0x55d93b(0xa4),_0x2800af[_0x55d93b(0x90)]);const _0x13feac=[];for(const _0x18d7be of _0x2800af){const _0x460fd6=_0x4ee104['xyfza'](startQueryTimer),_0x58386b=await _0xdafb75['execute'](_0x18d7be[_0x55d93b(0xe2)],_0x18d7be[_0x55d93b(0x9b)]||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x30f140=_0x460fd6(),_0xd3842=_0x58386b['rows']?_0x58386b[_0x55d93b(0x96)]['length']:_0x58386b[_0x55d93b(0xd6)];_0x4ee104['dgfFn'](logQuery,_0x18d7be['sql'],_0x18d7be['params']||[],{'duration':_0x30f140,'rowsAffected':_0xd3842,'dbType':'oracle'}),_0x13feac['push'](_0x58386b);}await _0xdafb75['commit']();const _0x4cea2c=_0x4ee104['xyfza'](_0x722804);return _0x4ee104['oAPlR'](logTransaction,_0x55d93b(0xc3),_0x2800af[_0x55d93b(0x90)]),logger['info']({'event':'transaction_complete','queryCount':_0x2800af['length'],'totalDurationMs':_0x4cea2c,'dbType':'oracle'},_0x55d93b(0xaa)+_0x4cea2c+'ms,\x20'+_0x2800af['length']+'\x20queries)'),_0x13feac;}catch(_0x54253d){const _0xa182ce=_0x722804();_0x4ee104[_0x55d93b(0xb7)](logError,_0x54253d,{'event':'transaction_error','queryCount':_0x2800af['length'],'totalDurationMs':_0xa182ce,'code':_0x54253d['errorNum'],'dbType':_0x4ee104['grnfi']},_0x55d93b(0xa8)+_0x54253d[_0x55d93b(0xd4)]);if(_0xdafb75)try{await _0xdafb75['rollback'](),_0x4ee104[_0x55d93b(0xd9)](logTransaction,_0x55d93b(0xdd),_0x2800af['length']);}catch(_0x45ecbc){logError(_0x45ecbc,{'event':_0x4ee104['pRphb'],'dbType':'oracle'},'Error\x20rolling\x20back\x20Oracle\x20transaction:\x20'+_0x45ecbc['message']);}throw _0x54253d;}finally{if(_0xdafb75)try{await _0xdafb75['close']();}catch(_0x3ed425){_0x4ee104['dgfFn'](logError,_0x3ed425,{'event':'oracle_transaction_connection_close_error'},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x3ed425['message']);}}}async['closePool'](){const _0x3bb57f=a0_0x3aa27e,_0x234b1d={'inFoZ':_0x3bb57f(0xa6),'Ifoxd':'Closing\x20Oracle\x20connection\x20pool...','fOpMv':'oracle_pool_closed'};try{this[_0x3bb57f(0xbe)]&&(logger[_0x3bb57f(0xd5)]({'event':_0x234b1d[_0x3bb57f(0xad)]},_0x234b1d['Ifoxd']),await this[_0x3bb57f(0xbe)][_0x3bb57f(0x8b)](0xa),this['pool']=null,logger[_0x3bb57f(0xd5)]({'event':_0x234b1d[_0x3bb57f(0xe8)]},_0x3bb57f(0x92)));}catch(_0x29da7d){logError(_0x29da7d,{'event':'oracle_pool_close_error'},'Error\x20closing\x20Oracle\x20connection\x20pool:\x20'+_0x29da7d[_0x3bb57f(0xd4)]);throw _0x29da7d;}}[a0_0x3aa27e(0xa7)](){const _0x2e9afa=a0_0x3aa27e,_0x5d8636={'FnxkN':_0x2e9afa(0xab)};if(!this['pool'])return{'status':_0x5d8636[_0x2e9afa(0xb6)]};return{'connectionsInUse':this['pool'][_0x2e9afa(0x99)],'connectionsOpen':this['pool']['connectionsOpen'],'poolAlias':this['pool']['poolAlias'],'poolMin':this['pool']['poolMin'],'poolMax':this['pool'][_0x2e9afa(0x8c)],'poolIncrement':this['pool'][_0x2e9afa(0xa5)],'poolTimeout':this[_0x2e9afa(0xbe)][_0x2e9afa(0xd1)],'status':'Active'};}}const oracleDb=new OracleDatabase();function a0_0x1cfe(){const _0x1bc97b=['zxHLy3v0zvrYyw5Zywn0Aw9U','rM54A04','zgDMrM4','rgXtCK8','q3jLyxrPBMCGt3jHy2XLignVBM5Ly3rPB24GCg9VBc4UlG','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','B3jHy2XLx3bVB2XFzxHPC3rZ','B3jHy2XLx3bVB2XFzxjYB3i','mJu5ntm1rgDsyxjr','Cg9VBa','mtqWndyZmLbnyuHfva','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','rejFue9ptf9nqvG','B3jHy2XLx3nODxrKB3DU','y29TBwL0','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','s3D0sNe','zMv0y2HbC0j1zMzLCG','y29UzMLN','B3jHy2XLx2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','B3jHy2XLzgi','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','we9nCxu','rejFue9sva','rejFvvnfuG','rejFue9ptf9nsu4','B3jHy2XLx2nVBM5Ly3rPB25FC3rYAw5N','Cg9VBfrPBwvVDxq','Cg9VBe1PBG','Auvdu3i','BwvZC2fNzq','Aw5MBW','CM93C0fMzMvJDgvK','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','rejFse9tva','Cw1VvMq','x25SC1jLywr5','zMv0y2HbC1n0CMLUzW','z2v0q29UBMvJDgLVBG','CM9SBgjHy2S','DgvZDenVBM5Ly3rPB24','mZG3oduZmhrtv3b6sG','mxWYFdr8m3WW','yxv0B0nVBw1PDa','C3fS','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','mtuYmq','odm2mZi4qNjoAuLj','rejFue9ptf9jtKnsru1ftLq','t3jHy2XLifnrtcbfCNjVCJOG','zK9Wtxy','y2XVC2u','Cg9VBe1HEa','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDwnJzxnZ','rLjzqMm','qKXpqG','BgvUz3rO','zgvIDwC','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJBg9Zzwq','Bg9JywXOB3n0','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','DhfZu2W','CM93CW','zw52','B3jHy2XL','y29UBMvJDgLVBNnjBLvZzq','mJCWotm1vxbyt0jU','CgfYyw1Z','oxjMsvzRtq','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','zxHPDa','Buf2Ehy','murytfzUsW','u0Lhsu5u','mtaXody2mLjtDuDwuW','CM9SBgjHy2TFzxjYB3i','C3rHCNq','Cg9VBeLUy3jLBwvUDa','B3jHy2XLx3bVB2XFy2XVC2LUzW','z2v0ug9VBfn0yxrPC3rPy3m','t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','otGXotyWs2fnEK1n','t3jHy2XLihrYyw5Zywn0Aw9UignVBw1PDhrLzcaO','ug9VBcbUB3qGAw5PDgLHBgL6zwq','rejFtKfnrq','Aw5gB1O','zxHLy3v0zq','mJrRD0v4zNO','u0Lhvevstq','B0fqBfi','y3jLyxrLug9VBa','Bev1AMC','rejFueftu1DpuKq'];a0_0x1cfe=function(){return _0x1bc97b;};return a0_0x1cfe();}process['on'](a0_0x3aa27e(0xa1),async()=>{const _0x21e35b=a0_0x3aa27e,_0x120773={'aEORD':'oracle_shutdown','Vtgde':'Received\x20SIGINT,\x20closing\x20Oracle\x20connection\x20pool...','SNRSS':_0x21e35b(0xa1)};logger[_0x21e35b(0xd5)]({'event':_0x120773['aEORD'],'signal':_0x21e35b(0xa1)},_0x120773['Vtgde']);try{await oracleDb['closePool'](),process[_0x21e35b(0x9e)](0x0);}catch(_0x5b6f4c){logError(_0x5b6f4c,{'event':_0x21e35b(0xd7),'signal':_0x120773['SNRSS']},_0x21e35b(0xc4)+_0x5b6f4c['message']),process['exit'](0x1);}}),process['on'](a0_0x3aa27e(0xb0),async()=>{const _0x154191=a0_0x3aa27e,_0x82d3ec={'FRYBc':_0x154191(0xc2),'YmZfj':'SIGTERM'};logger[_0x154191(0xd5)]({'event':_0x82d3ec[_0x154191(0x8e)],'signal':_0x154191(0xb0)},_0x154191(0xba));try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x7027ff){logError(_0x7027ff,{'event':'oracle_shutdown_error','signal':_0x82d3ec['YmZfj']},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x7027ff[_0x154191(0xd4)]),process[_0x154191(0x9e)](0x1);}}),module['exports']=oracleDb;
1
+ const a0_0x12e166=a0_0x2ccd;(function(_0x3ae736,_0x40f3e5){const _0x39c5ec=a0_0x2ccd,_0x14ec7c=_0x3ae736();while(!![]){try{const _0xe2c807=parseInt(_0x39c5ec(0xf8))/0x1*(-parseInt(_0x39c5ec(0xa6))/0x2)+-parseInt(_0x39c5ec(0x9b))/0x3*(parseInt(_0x39c5ec(0xb6))/0x4)+parseInt(_0x39c5ec(0xc2))/0x5*(parseInt(_0x39c5ec(0xc1))/0x6)+parseInt(_0x39c5ec(0xaa))/0x7*(-parseInt(_0x39c5ec(0xe4))/0x8)+-parseInt(_0x39c5ec(0x9c))/0x9*(-parseInt(_0x39c5ec(0xab))/0xa)+-parseInt(_0x39c5ec(0xaf))/0xb+parseInt(_0x39c5ec(0xe9))/0xc;if(_0xe2c807===_0x40f3e5)break;else _0x14ec7c['push'](_0x14ec7c['shift']());}catch(_0x5d4246){_0x14ec7c['push'](_0x14ec7c['shift']());}}}(a0_0x5a81,0x9dedd));const oracledb=require(a0_0x12e166(0xd0)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');oracledb[a0_0x12e166(0xbf)]=[oracledb[a0_0x12e166(0xce)],oracledb['NCLOB']],oracledb['fetchAsBuffer']=[oracledb['BLOB']];async function ensureNlsReady(_0x100997){const _0x4838d8=a0_0x12e166,_0x42deed={'xDqtF':'2|4|1|3|0'},_0x18c678=_0x42deed[_0x4838d8(0xb3)][_0x4838d8(0xa1)]('|');let _0x39eded=0x0;while(!![]){switch(_0x18c678[_0x39eded++]){case'0':_0x100997['_nlsReady']=!![];continue;case'1':await _0x100997[_0x4838d8(0xf3)]('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3\x27');continue;case'2':if(_0x100997['_nlsReady'])return;continue;case'3':await _0x100997['execute'](_0x4838d8(0xa5));continue;case'4':await _0x100997['execute']('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27');continue;}break;}}class OracleDatabase{constructor(){const _0x63743e=a0_0x12e166,_0x2fa11c={'enFNA':function(_0x5a9031,_0x26b7eb){return _0x5a9031(_0x26b7eb);},'pcBel':_0x63743e(0xa0),'WURDX':'oracle'};this[_0x63743e(0xcf)]=null,this[_0x63743e(0xc3)]={'user':process[_0x63743e(0x9e)]['DB_USER']||'hr','password':process[_0x63743e(0x9e)]['DB_PASSWORD']||'hr','connectString':this[_0x63743e(0xe8)](),'poolMin':parseInt(process[_0x63743e(0x9e)]['DB_POOL_MIN'])||0x2,'poolMax':parseInt(process[_0x63743e(0x9e)]['DB_POOL_MAX'])||0xa,'poolIncrement':_0x2fa11c[_0x63743e(0xf4)](parseInt,process['env']['DB_POOL_INCREMENT'])||0x1,'poolTimeout':parseInt(process[_0x63743e(0x9e)]['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x63743e(0xce)],oracledb['NCLOB']],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process['env'][_0x63743e(0xf6)]||'localhost','port':process['env']['DB_PORT']||_0x2fa11c['pcBel'],'database':process[_0x63743e(0x9e)]['DB_NAME']||'XE','type':_0x2fa11c[_0x63743e(0xd5)],'user':this[_0x63743e(0xc3)]['user'],'poolMin':this[_0x63743e(0xc3)]['poolMin'],'poolMax':this['config'][_0x63743e(0xf2)]});}['buildConnectionString'](){const _0x3fe6c2=a0_0x12e166,_0x1af949={'cATAJ':_0x3fe6c2(0xb1)},_0x48cae3=process[_0x3fe6c2(0x9e)][_0x3fe6c2(0xf6)]||_0x1af949[_0x3fe6c2(0xae)],_0xfd863f=process['env']['DB_PORT']||_0x3fe6c2(0xa0),_0x50d4c9=process[_0x3fe6c2(0x9e)]['DB_NAME']||'XE',_0x347a4d='//'+_0x48cae3+':'+_0xfd863f+'/'+_0x50d4c9;return logger[_0x3fe6c2(0xb8)]({'event':_0x3fe6c2(0xbb),'connectionString':_0x347a4d},'Oracle\x20Connection\x20String:\x20'+_0x347a4d),_0x347a4d;}async['initializePool'](){const _0x10b198=a0_0x12e166,_0x38e8d7={'gmNmR':_0x10b198(0xe6),'brFsE':_0x10b198(0xea),'fsfrS':'oracle_pool_creating'};try{const _0x2434ab=_0x10b198(0xf7)[_0x10b198(0xa1)]('|');let _0x2c5fe1=0x0;while(!![]){switch(_0x2434ab[_0x2c5fe1++]){case'0':this['pool']=await oracledb['createPool'](this[_0x10b198(0xc3)]);continue;case'1':await this[_0x10b198(0xe3)]();continue;case'2':if(this['pool']){logger[_0x10b198(0xb8)]({'event':_0x38e8d7['gmNmR']},'Oracle\x20connection\x20pool\x20sudah\x20ada');return;}continue;case'3':logger[_0x10b198(0xb4)]({'event':'oracle_pool_created'},_0x38e8d7['brFsE']);continue;case'4':logger['info']({'event':_0x38e8d7['fsfrS']},'Creating\x20Oracle\x20connection\x20pool...');continue;}break;}}catch(_0x19d23a){logError(_0x19d23a,{'event':_0x10b198(0xd6)},'Error\x20saat\x20membuat\x20Oracle\x20connection\x20pool:\x20'+_0x19d23a[_0x10b198(0xda)]);throw _0x19d23a;}}async[a0_0x12e166(0xe3)](){const _0x2be379=a0_0x12e166,_0x4ad9f0={'CoKrj':'Testing\x20Oracle\x20database\x20connection...','foQPg':function(_0xc284ad,_0x22371c){return _0xc284ad(_0x22371c);},'ZsGsR':_0x2be379(0xac),'ouEZN':function(_0x3dab70,_0x299d8d,_0x5df0d0,_0x11be80){return _0x3dab70(_0x299d8d,_0x5df0d0,_0x11be80);}};let _0x407f86;try{logger['debug']({'event':'oracle_connection_test_start'},_0x4ad9f0[_0x2be379(0x9a)]),_0x407f86=await this['pool']['getConnection'](),await _0x4ad9f0[_0x2be379(0xa3)](ensureNlsReady,_0x407f86);const _0x3fedc7=await _0x407f86[_0x2be379(0xf3)](_0x4ad9f0[_0x2be379(0xdd)]);logger['info']({'event':_0x2be379(0xe5),'currentDate':_0x3fedc7['rows'][0x0][0x0],'currentUser':_0x3fedc7[_0x2be379(0xd1)][0x0][0x1]},_0x2be379(0xbd)+_0x3fedc7[_0x2be379(0xd1)][0x0][0x1]);}catch(_0xfd9b95){logError(_0xfd9b95,{'event':'oracle_connection_test_failed'},'Oracle\x20connection\x20test\x20gagal:\x20'+_0xfd9b95[_0x2be379(0xda)]);throw _0xfd9b95;}finally{if(_0x407f86)try{await _0x407f86[_0x2be379(0xcb)]();}catch(_0x398850){_0x4ad9f0[_0x2be379(0xad)](logError,_0x398850,{'event':_0x2be379(0xf1)},_0x2be379(0xe0)+_0x398850['message']);}}}async[a0_0x12e166(0xb0)](_0x3a90f1,_0x5d6fb7=[],_0x51c506={}){const _0x2903c1=a0_0x12e166,_0x4e1a0a={'ZVMRf':function(_0x1d3031,_0x1fd50b){return _0x1d3031!==_0x1fd50b;},'dGksU':function(_0x5f5413){return _0x5f5413();},'tQpdP':function(_0x528b30,_0x354fff,_0x426c58,_0x569bad){return _0x528b30(_0x354fff,_0x426c58,_0x569bad);},'uRgHb':_0x2903c1(0xb2),'rTxei':'sql_error','BsZyp':'oracle_connection_close_error'};let _0x42e613;const _0x4e9edd=startQueryTimer();try{!this['pool']&&await this[_0x2903c1(0x9f)]();_0x42e613=await this[_0x2903c1(0xcf)][_0x2903c1(0xa9)](),await ensureNlsReady(_0x42e613);const _0x5161de={'outFormat':oracledb[_0x2903c1(0xeb)],'autoCommit':_0x4e1a0a['ZVMRf'](_0x51c506[_0x2903c1(0xa2)],undefined)?_0x51c506['autoCommit']:!![],..._0x51c506},_0x2cb3e1=await _0x42e613['execute'](_0x3a90f1,_0x5d6fb7,_0x5161de),_0xc69814=_0x4e1a0a['dGksU'](_0x4e9edd),_0x8308de=_0x2cb3e1[_0x2903c1(0xd1)]?_0x2cb3e1[_0x2903c1(0xd1)][_0x2903c1(0xed)]:_0x2cb3e1['rowsAffected'];return _0x4e1a0a[_0x2903c1(0xcd)](logQuery,_0x3a90f1,_0x5d6fb7,{'duration':_0xc69814,'rowsAffected':_0x8308de,'dbType':_0x4e1a0a[_0x2903c1(0xa8)]}),_0x2cb3e1[_0x2903c1(0xd1)]?_0x2cb3e1[_0x2903c1(0xd1)]:{'rowsAffected':_0x2cb3e1[_0x2903c1(0xdf)],'lastRowid':_0x2cb3e1[_0x2903c1(0xa7)]};}catch(_0x4c2e1c){const _0x350ce5=_0x4e9edd();logError(_0x4c2e1c,{'event':_0x4e1a0a['rTxei'],'query':_0x3a90f1[_0x2903c1(0xc7)](0x0,0x1f4),'paramCount':_0x5d6fb7['length'],'durationMs':_0x350ce5,'code':_0x4c2e1c['errorNum'],'dbType':_0x4e1a0a['uRgHb']},'Oracle\x20SQL\x20Error:\x20'+_0x4c2e1c['message']);throw _0x4c2e1c;}finally{if(_0x42e613)try{await _0x42e613[_0x2903c1(0xcb)]();}catch(_0xdc8608){_0x4e1a0a[_0x2903c1(0xcd)](logError,_0xdc8608,{'event':_0x4e1a0a['BsZyp']},'Error\x20closing\x20Oracle\x20connection:\x20'+_0xdc8608[_0x2903c1(0xda)]);}}}async['executeTransaction'](_0x2548a4){const _0x4de8aa=a0_0x12e166,_0x330b84={'FuZKr':function(_0x34ffa8){return _0x34ffa8();},'ZAiZg':function(_0x6db121,_0x4b5229){return _0x6db121(_0x4b5229);},'NOGun':function(_0x13cf9f){return _0x13cf9f();},'lapuE':_0x4de8aa(0xc4),'bJbhn':function(_0x2613e6,_0xadc0be,_0x33aba7,_0x4b23c5){return _0x2613e6(_0xadc0be,_0x33aba7,_0x4b23c5);},'EmOre':'rollback','Vvtit':function(_0x15259a,_0x1dc5b3,_0x11ed12,_0xc4b389){return _0x15259a(_0x1dc5b3,_0x11ed12,_0xc4b389);},'hnqyk':_0x4de8aa(0xb2)};let _0x47659e;const _0x2e89ab=_0x330b84[_0x4de8aa(0xba)](startQueryTimer);try{!this[_0x4de8aa(0xcf)]&&await this['initializePool']();_0x47659e=await this['pool'][_0x4de8aa(0xa9)](),await _0x330b84['ZAiZg'](ensureNlsReady,_0x47659e),logTransaction('start',_0x2548a4['length']);const _0x374f49=[];for(const _0x25bfc4 of _0x2548a4){const _0x3a7643=_0x330b84['NOGun'](startQueryTimer),_0x4b6dfe=await _0x47659e['execute'](_0x25bfc4['sql'],_0x25bfc4[_0x4de8aa(0xd3)]||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x4eabe8=_0x330b84['NOGun'](_0x3a7643),_0x4b6bf1=_0x4b6dfe['rows']?_0x4b6dfe[_0x4de8aa(0xd1)][_0x4de8aa(0xed)]:_0x4b6dfe[_0x4de8aa(0xdf)];logQuery(_0x25bfc4[_0x4de8aa(0xc5)],_0x25bfc4[_0x4de8aa(0xd3)]||[],{'duration':_0x4eabe8,'rowsAffected':_0x4b6bf1,'dbType':_0x4de8aa(0xb2)}),_0x374f49['push'](_0x4b6dfe);}await _0x47659e['commit']();const _0x3d8e34=_0x2e89ab();return logTransaction(_0x330b84[_0x4de8aa(0xa4)],_0x2548a4['length']),logger['info']({'event':'transaction_complete','queryCount':_0x2548a4['length'],'totalDurationMs':_0x3d8e34,'dbType':_0x4de8aa(0xb2)},'Oracle\x20transaction\x20committed\x20('+_0x3d8e34+'ms,\x20'+_0x2548a4[_0x4de8aa(0xed)]+'\x20queries)'),_0x374f49;}catch(_0x501b4e){const _0x123222=_0x330b84['NOGun'](_0x2e89ab);_0x330b84[_0x4de8aa(0xd4)](logError,_0x501b4e,{'event':'transaction_error','queryCount':_0x2548a4['length'],'totalDurationMs':_0x123222,'code':_0x501b4e['errorNum'],'dbType':_0x4de8aa(0xb2)},'Oracle\x20transaction\x20failed:\x20'+_0x501b4e[_0x4de8aa(0xda)]);if(_0x47659e)try{await _0x47659e['rollback'](),logTransaction(_0x330b84[_0x4de8aa(0xdb)],_0x2548a4['length']);}catch(_0x2bb4d5){_0x330b84[_0x4de8aa(0xbc)](logError,_0x2bb4d5,{'event':'rollback_error','dbType':_0x330b84[_0x4de8aa(0xd9)]},_0x4de8aa(0xf5)+_0x2bb4d5[_0x4de8aa(0xda)]);}throw _0x501b4e;}finally{if(_0x47659e)try{await _0x47659e[_0x4de8aa(0xcb)]();}catch(_0x26a0f8){logError(_0x26a0f8,{'event':_0x4de8aa(0xe7)},_0x4de8aa(0xcc)+_0x26a0f8[_0x4de8aa(0xda)]);}}}async['closePool'](){const _0xfa27b4=a0_0x12e166,_0x32eca={'YmvcW':_0xfa27b4(0xee),'gCWUn':_0xfa27b4(0xe1),'lOliP':function(_0x316967,_0x4c55d5,_0x5afac2,_0x3555e1){return _0x316967(_0x4c55d5,_0x5afac2,_0x3555e1);},'NeQjU':_0xfa27b4(0x9d)};try{this[_0xfa27b4(0xcf)]&&(logger['info']({'event':_0x32eca[_0xfa27b4(0xb7)]},_0x32eca['gCWUn']),await this[_0xfa27b4(0xcf)][_0xfa27b4(0xcb)](0xa),this[_0xfa27b4(0xcf)]=null,logger[_0xfa27b4(0xb4)]({'event':_0xfa27b4(0xbe)},'Oracle\x20connection\x20pool\x20closed'));}catch(_0x400c38){_0x32eca[_0xfa27b4(0xb9)](logError,_0x400c38,{'event':_0x32eca['NeQjU']},_0xfa27b4(0xec)+_0x400c38['message']);throw _0x400c38;}}[a0_0x12e166(0xd2)](){const _0x141c99=a0_0x12e166;if(!this[_0x141c99(0xcf)])return{'status':_0x141c99(0xc0)};return{'connectionsInUse':this['pool']['connectionsInUse'],'connectionsOpen':this['pool'][_0x141c99(0xde)],'poolAlias':this[_0x141c99(0xcf)]['poolAlias'],'poolMin':this[_0x141c99(0xcf)][_0x141c99(0xc6)],'poolMax':this['pool'][_0x141c99(0xf2)],'poolIncrement':this['pool']['poolIncrement'],'poolTimeout':this[_0x141c99(0xcf)]['poolTimeout'],'status':_0x141c99(0xd7)};}}function a0_0x2ccd(_0x2a24ed,_0x5e3c44){_0x2a24ed=_0x2a24ed-0x9a;const _0x5a81a9=a0_0x5a81();let _0x2ccd04=_0x5a81a9[_0x2a24ed];if(a0_0x2ccd['mJdQxb']===undefined){var _0x7e83cb=function(_0x2e417){const _0x3af7c2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x292e74='',_0x1680d9='';for(let _0x52d943=0x0,_0x2e391,_0x2d7b1c,_0xf03a62=0x0;_0x2d7b1c=_0x2e417['charAt'](_0xf03a62++);~_0x2d7b1c&&(_0x2e391=_0x52d943%0x4?_0x2e391*0x40+_0x2d7b1c:_0x2d7b1c,_0x52d943++%0x4)?_0x292e74+=String['fromCharCode'](0xff&_0x2e391>>(-0x2*_0x52d943&0x6)):0x0){_0x2d7b1c=_0x3af7c2['indexOf'](_0x2d7b1c);}for(let _0x57b54f=0x0,_0x26eabf=_0x292e74['length'];_0x57b54f<_0x26eabf;_0x57b54f++){_0x1680d9+='%'+('00'+_0x292e74['charCodeAt'](_0x57b54f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1680d9);};a0_0x2ccd['OeJEsp']=_0x7e83cb,a0_0x2ccd['qOxVXi']={},a0_0x2ccd['mJdQxb']=!![];}const _0x1b3d74=_0x5a81a9[0x0],_0x562578=_0x2a24ed+_0x1b3d74,_0x42c8a4=a0_0x2ccd['qOxVXi'][_0x562578];return!_0x42c8a4?(_0x2ccd04=a0_0x2ccd['OeJEsp'](_0x2ccd04),a0_0x2ccd['qOxVXi'][_0x562578]=_0x2ccd04):_0x2ccd04=_0x42c8a4,_0x2ccd04;}function a0_0x5a81(){const _0xcade0e=['z2v0ug9VBfn0yxrPC3rPy3m','CgfYyw1Z','yKPIAg4','v1vsrfG','B3jHy2XLx3bVB2XFzxjYB3i','qwn0AxzL','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','Ag5XEwS','BwvZC2fNzq','rw1pCMu','u0Lhvevstq','wNnhC1i','y29UBMvJDgLVBNnpCgvU','CM93C0fMzMvJDgvK','rxjYB3iGy2XVC2LUzYb0zxn0ignVBM5Ly3rPB246ia','q2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','DgvZDenVBM5Ly3rPB24','mJq5ndrZEKXhA1C','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDwnJzxnZ','B3jHy2XLx3bVB2XFzxHPC3rZ','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','mtG5nJGZmtz5Eu5NDeu','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJCMvHDgvKihn1y2nLC3nMDwXSEq','t1vux0zpuK1bvf9pqKPfq1q','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','BgvUz3rO','B3jHy2XLx3bVB2XFy2XVC2LUzW','rLrcrNO','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','B3jHy2XLx3rLC3rFy29UBMvJDgLVBL9JBg9Zzv9LCNjVCG','Cg9VBe1HEa','zxHLy3v0zq','zw5gtKe','rxjYB3iGCM9SBgLUzYbIywnRie9YywnSzsb0CMfUC2fJDgLVBJOG','rejFse9tva','mNW0Fdb8m3WX','mZK2mJy5sNrPD1LR','q29lCMO','mZC5mdeXsgzusMzd','ounwzeTPrW','B3jHy2XLx3bVB2XFy2XVC2vFzxjYB3i','zw52','Aw5PDgLHBgL6zvbVB2W','mtuYmq','C3bSAxq','yxv0B0nVBw1PDa','zM9rugC','BgfWDuu','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','mMD5suTsqW','BgfZDfjVD2LK','DvjNsgi','z2v0q29UBMvJDgLVBG','mJm1owfIAvbyzW','nZK5mtCXmgXlz1fQuq','u0vmrunuifnzu0rbveuGyxmGy3vYCMvUDf9KyxrLlcbvu0vsigfZign1CNjLBNrFDxnLCIbguK9niervquW','B3vfwK4','y0fuquO','mte1ntyZmdn2q1DZsfy','zxHLy3v0zvf1zxj5','Bg9JywXOB3n0','B3jHy2XL','EerXDey','Aw5MBW','qw1uzKK','ng1IvKjZuG','ww12y1C','zgvIDwC','Be9SAva','rNvAs3i','B3jHy2XLx2nVBM5Ly3rPB25FC3rYAw5N','vNz0Axq','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','B3jHy2XLx3bVB2XFy2XVC2vK','zMv0y2HbC1n0CMLUzW','ug9VBcbUB3qGAw5PDgLHBgL6zwq','ntq2nMTpyNL2ta','ndG5meX2B2HYBG','y29UzMLN','y29TBwL0','C3fS','Cg9VBe1PBG','C3vIC3rYAw5N','B3jHy2XLx3nODxrKB3DU','zxHPDa','y2XVC2vqB29S','y2XVC2u','rxjYB3iGy2XVC2LUzYbpCMfJBguGDhjHBNnHy3rPB24Gy29UBMvJDgLVBJOG','DffWzfa','q0XpqG','Cg9VBa','B3jHy2XLzgi','CM93CW'];a0_0x5a81=function(){return _0xcade0e;};return a0_0x5a81();}const oracleDb=new OracleDatabase();process['on']('SIGINT',async()=>{const _0x286744=a0_0x12e166,_0x108593={'oldre':'oracle_shutdown','UHsIp':'SIGINT','AmTfI':'Received\x20SIGINT,\x20closing\x20Oracle\x20connection\x20pool...'};logger[_0x286744(0xb4)]({'event':_0x108593['oldre'],'signal':_0x108593['UHsIp']},_0x108593[_0x286744(0xb5)]);try{await oracleDb[_0x286744(0xca)](),process[_0x286744(0xc9)](0x0);}catch(_0x4d4b72){logError(_0x4d4b72,{'event':'oracle_shutdown_error','signal':_0x108593['UHsIp']},_0x286744(0xd8)+_0x4d4b72['message']),process['exit'](0x1);}}),process['on'](a0_0x12e166(0xdc),async()=>{const _0x18984c=a0_0x12e166,_0x4ad613={'FTBFz':'SIGTERM','JpTdi':function(_0x3420f2,_0x74eb0b,_0x547728,_0x191db7){return _0x3420f2(_0x74eb0b,_0x547728,_0x191db7);}};logger[_0x18984c(0xb4)]({'event':_0x18984c(0xc8),'signal':_0x4ad613['FTBFz']},_0x18984c(0xf0));try{await oracleDb[_0x18984c(0xca)](),process['exit'](0x0);}catch(_0x5df087){_0x4ad613['JpTdi'](logError,_0x5df087,{'event':_0x18984c(0xe2),'signal':_0x4ad613[_0x18984c(0xef)]},_0x18984c(0xd8)+_0x5df087['message']),process['exit'](0x1);}}),module['exports']=oracleDb;
@@ -1 +1 @@
1
- const a0_0x3f677e=a0_0x502d;(function(_0x5376b1,_0x1cf4a2){const _0x4f02a3=a0_0x502d,_0x148764=_0x5376b1();while(!![]){try{const _0x499217=parseInt(_0x4f02a3(0xfe))/0x1+parseInt(_0x4f02a3(0xe6))/0x2*(-parseInt(_0x4f02a3(0x10d))/0x3)+parseInt(_0x4f02a3(0xef))/0x4+-parseInt(_0x4f02a3(0xfd))/0x5+-parseInt(_0x4f02a3(0x11c))/0x6+parseInt(_0x4f02a3(0xfa))/0x7+parseInt(_0x4f02a3(0xd8))/0x8;if(_0x499217===_0x1cf4a2)break;else _0x148764['push'](_0x148764['shift']());}catch(_0x4a2404){_0x148764['push'](_0x148764['shift']());}}}(a0_0x45e2,0x4e1cc));function a0_0x502d(_0x2d5e0a,_0x536ec0){_0x2d5e0a=_0x2d5e0a-0xd8;const _0x45e2a0=a0_0x45e2();let _0x502d2b=_0x45e2a0[_0x2d5e0a];if(a0_0x502d['iaEdOh']===undefined){var _0x2dfa32=function(_0x1e6bc3){const _0x148e1d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4783a9='',_0x402deb='';for(let _0x10a91f=0x0,_0x30f447,_0x150c43,_0x444ed8=0x0;_0x150c43=_0x1e6bc3['charAt'](_0x444ed8++);~_0x150c43&&(_0x30f447=_0x10a91f%0x4?_0x30f447*0x40+_0x150c43:_0x150c43,_0x10a91f++%0x4)?_0x4783a9+=String['fromCharCode'](0xff&_0x30f447>>(-0x2*_0x10a91f&0x6)):0x0){_0x150c43=_0x148e1d['indexOf'](_0x150c43);}for(let _0x4376f1=0x0,_0x2e20a9=_0x4783a9['length'];_0x4376f1<_0x2e20a9;_0x4376f1++){_0x402deb+='%'+('00'+_0x4783a9['charCodeAt'](_0x4376f1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x402deb);};a0_0x502d['BJjXek']=_0x2dfa32,a0_0x502d['LOmhrH']={},a0_0x502d['iaEdOh']=!![];}const _0xdbc318=_0x45e2a0[0x0],_0x43ef6a=_0x2d5e0a+_0xdbc318,_0xc462b2=a0_0x502d['LOmhrH'][_0x43ef6a];return!_0xc462b2?(_0x502d2b=a0_0x502d['BJjXek'](_0x502d2b),a0_0x502d['LOmhrH'][_0x43ef6a]=_0x502d2b):_0x502d2b=_0xc462b2,_0x502d2b;}const Database=require('better-sqlite3'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');class SqliteDatabase{constructor(){const _0x2e913f=a0_0x502d,_0x471af9={'pCCwm':_0x2e913f(0x121),'UhGqN':function(_0x3c38bf,_0x463063){return _0x3c38bf(_0x463063);},'VDcTx':'sqlite'};this['db']=null,this[_0x2e913f(0xfb)]=process['env']['DB_NAME']||'./data/restforge.db',this[_0x2e913f(0xe2)]=parseInt(process['env']['DB_BUSY_TIMEOUT']||_0x471af9['pCCwm']),_0x471af9['UhGqN'](logDatabaseConfig,{'database':this[_0x2e913f(0xfb)],'type':_0x471af9['VDcTx'],'busyTimeout':this[_0x2e913f(0xe2)]});}[a0_0x3f677e(0xe1)](){const _0x56b037=a0_0x3f677e,_0x3441da={'UYtgP':'4|2|3|0|1','wyEiG':_0x56b037(0x109),'ahDfO':_0x56b037(0x108),'WNKZs':'SQLite\x20database\x20connection\x20sudah\x20ada'};try{const _0xee47d2=_0x3441da['UYtgP']['split']('|');let _0x95f4cf=0x0;while(!![]){switch(_0xee47d2[_0x95f4cf++]){case'0':this['db'][_0x56b037(0xda)](_0x3441da['wyEiG']);continue;case'1':this['testConnection']();continue;case'2':this['db']=new Database(this['dbPath'],{'timeout':this[_0x56b037(0xe2)]});continue;case'3':this['db'][_0x56b037(0xda)]('journal_mode\x20=\x20WAL');continue;case'4':if(this['db']){logger[_0x56b037(0xf8)]({'event':_0x3441da['ahDfO']},_0x3441da[_0x56b037(0x10b)]);return;}continue;}break;}}catch(_0x104380){logError(_0x104380,{'event':'sqlite_init_error'},'Error\x20saat\x20membuka\x20SQLite\x20database:\x20'+_0x104380['message']);throw _0x104380;}}['testConnection'](){const _0x4c2297=a0_0x3f677e,_0x2f97d8={'VkyEI':'sqlite_connection_test_start','uXuOR':function(_0x469a2a,_0x192728,_0x6148a3,_0x29ce72){return _0x469a2a(_0x192728,_0x6148a3,_0x29ce72);},'VHnJt':'sqlite_connection_test_failed'};try{logger[_0x4c2297(0xf8)]({'event':_0x2f97d8[_0x4c2297(0xe7)]},_0x4c2297(0x110)),this['db'][_0x4c2297(0x120)]('SELECT\x201\x20as\x20test_connection')['get']();}catch(_0x18cc51){_0x2f97d8[_0x4c2297(0xec)](logError,_0x18cc51,{'event':_0x2f97d8['VHnJt']},_0x4c2297(0xeb)+_0x18cc51[_0x4c2297(0x117)]);throw _0x18cc51;}}async[a0_0x3f677e(0x106)](_0x4227de,_0x1be62a=[]){const _0x29e3e2=a0_0x3f677e,_0x6b7567={'Jtwjt':function(_0x22791c){return _0x22791c();},'AXpwQ':'sqlite','HDRrm':function(_0x1bcb3b){return _0x1bcb3b();},'IvQrp':function(_0xe4c27f,_0x2f76c4,_0x2a300a,_0x23ddcb){return _0xe4c27f(_0x2f76c4,_0x2a300a,_0x23ddcb);},'KeVJp':function(_0x3b70bd,_0x36f2ae,_0x2227f3,_0x5d7f1){return _0x3b70bd(_0x36f2ae,_0x2227f3,_0x5d7f1);},'SVuvK':_0x29e3e2(0xe3)},_0x2554c9=startQueryTimer();try{!this['db']&&this[_0x29e3e2(0xe1)]();const _0x50e289=this['db'][_0x29e3e2(0x120)](_0x4227de),_0x1d85fc=/\bRETURNING\b/i[_0x29e3e2(0xf3)](_0x4227de),_0x39083b=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x29e3e2(0xf3)](_0x4227de);let _0x515694,_0x2a9b40;if(_0x39083b||_0x1d85fc){const _0xc4847b=_0x50e289[_0x29e3e2(0xf9)](..._0x1be62a),_0x1e1608=_0x6b7567[_0x29e3e2(0xf6)](_0x2554c9);return logQuery(_0x4227de,_0x1be62a,{'duration':_0x1e1608,'rowsAffected':_0xc4847b['length'],'dbType':_0x6b7567[_0x29e3e2(0x101)]}),_0xc4847b;}else{const _0x409afe=_0x50e289[_0x29e3e2(0x11b)](..._0x1be62a),_0x7cfd29=_0x6b7567[_0x29e3e2(0xe4)](_0x2554c9);return _0x515694={'rowsAffected':_0x409afe['changes'],'insertId':_0x409afe[_0x29e3e2(0x115)]},_0x6b7567['IvQrp'](logQuery,_0x4227de,_0x1be62a,{'duration':_0x7cfd29,'rowsAffected':_0x409afe['changes'],'dbType':'sqlite'}),_0x515694;}}catch(_0x266a8f){const _0x1679af=_0x2554c9();_0x6b7567['KeVJp'](logError,_0x266a8f,{'event':_0x6b7567[_0x29e3e2(0xdf)],'query':_0x4227de[_0x29e3e2(0xf2)](0x0,0x1f4),'paramCount':_0x1be62a[_0x29e3e2(0x107)],'durationMs':_0x1679af,'code':_0x266a8f['code'],'dbType':_0x29e3e2(0x114)},'SQLite\x20SQL\x20Error:\x20'+_0x266a8f[_0x29e3e2(0x117)]);throw _0x266a8f;}}async['executeTransaction'](_0x49d057){const _0x5474aa=a0_0x3f677e,_0x12b3a3={'mSbcT':function(_0x3242ca,_0x510d18){return _0x3242ca||_0x510d18;},'CvXUy':function(_0x587f23){return _0x587f23();},'VxjFq':_0x5474aa(0x114),'RPzxN':function(_0x36c209){return _0x36c209();},'JMxEW':function(_0x1e1d17,_0x36e237,_0x2ab8b1){return _0x1e1d17(_0x36e237,_0x2ab8b1);},'cWCVc':function(_0x2cc376,_0xe09052){return _0x2cc376(_0xe09052);},'KhPbx':function(_0x28038b){return _0x28038b();},'SXDsD':_0x5474aa(0xf1),'bpont':function(_0x5a8797){return _0x5a8797();},'ranSN':function(_0x2f385d,_0x64d3aa,_0x4edb7c){return _0x2f385d(_0x64d3aa,_0x4edb7c);},'Ciroy':'rollback','drsrd':function(_0x4828e7,_0x4772ed,_0x2eb861,_0xc9bc9d){return _0x4828e7(_0x4772ed,_0x2eb861,_0xc9bc9d);}},_0x565dd1=_0x12b3a3['RPzxN'](startQueryTimer);try{!this['db']&&this[_0x5474aa(0xe1)]();_0x12b3a3[_0x5474aa(0xf5)](logTransaction,_0x5474aa(0xee),_0x49d057[_0x5474aa(0x107)]);const _0x29aa63=this['db'][_0x5474aa(0x103)](_0x2ad027=>{const _0x3581f4=_0x5474aa,_0x1553a1=[];for(const _0x28418c of _0x2ad027){const _0x27ead2=startQueryTimer(),_0x38a423=_0x28418c[_0x3581f4(0xe5)]||[],_0x58bc8c=this['db'][_0x3581f4(0x120)](_0x28418c['sql']),_0xebb586=/\bRETURNING\b/i[_0x3581f4(0xf3)](_0x28418c['sql']),_0x1b4fc6=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x28418c[_0x3581f4(0x11d)]);if(_0x12b3a3[_0x3581f4(0xe9)](_0x1b4fc6,_0xebb586)){const _0x1564fb=_0x58bc8c['all'](..._0x38a423),_0x2107e1=_0x12b3a3[_0x3581f4(0x122)](_0x27ead2);logQuery(_0x28418c['sql'],_0x38a423,{'duration':_0x2107e1,'rowsAffected':_0x1564fb[_0x3581f4(0x107)],'dbType':_0x12b3a3[_0x3581f4(0x104)]}),_0x1553a1[_0x3581f4(0x112)](_0x1564fb);}else{const _0x42f414=_0x58bc8c['run'](..._0x38a423),_0x418c33=_0x12b3a3['CvXUy'](_0x27ead2);logQuery(_0x28418c[_0x3581f4(0x11d)],_0x38a423,{'duration':_0x418c33,'rowsAffected':_0x42f414[_0x3581f4(0xf0)],'dbType':_0x12b3a3['VxjFq']}),_0x1553a1[_0x3581f4(0x112)]({'rowsAffected':_0x42f414['changes'],'insertId':_0x42f414['lastInsertRowid']});}}return _0x1553a1;}),_0x2ff65c=_0x12b3a3[_0x5474aa(0xea)](_0x29aa63,_0x49d057),_0x32c21c=_0x12b3a3['KhPbx'](_0x565dd1);return _0x12b3a3[_0x5474aa(0xf5)](logTransaction,_0x5474aa(0xfc),_0x49d057[_0x5474aa(0x107)]),logger['info']({'event':_0x12b3a3[_0x5474aa(0x111)],'queryCount':_0x49d057[_0x5474aa(0x107)],'totalDurationMs':_0x32c21c,'dbType':_0x5474aa(0x114)},'Transaction\x20committed\x20('+_0x32c21c+'ms,\x20'+_0x49d057['length']+_0x5474aa(0x11a)),_0x2ff65c;}catch(_0x102520){const _0x486869=_0x12b3a3[_0x5474aa(0xe0)](_0x565dd1);_0x12b3a3['ranSN'](logTransaction,_0x12b3a3['Ciroy'],_0x49d057[_0x5474aa(0x107)]),_0x12b3a3[_0x5474aa(0x10c)](logError,_0x102520,{'event':'transaction_error','queryCount':_0x49d057[_0x5474aa(0x107)],'totalDurationMs':_0x486869,'code':_0x102520['code'],'dbType':_0x12b3a3['VxjFq']},_0x5474aa(0xdc)+_0x102520[_0x5474aa(0x117)]);throw _0x102520;}}[a0_0x3f677e(0xd9)](){const _0x68834d=a0_0x3f677e;return!this['db']&&this[_0x68834d(0xe1)](),this['db'];}['closePool'](){const _0x9186db=a0_0x3f677e,_0x49db0b={'gPkvP':_0x9186db(0x119),'IxQdR':_0x9186db(0xdd)};try{this['db']&&(logger[_0x9186db(0x11f)]({'event':_0x9186db(0xff)},'Closing\x20SQLite\x20database\x20connection...'),this['db']['close'](),this['db']=null,logger[_0x9186db(0x11f)]({'event':_0x9186db(0xe8)},_0x49db0b['gPkvP']));}catch(_0x577e3c){logError(_0x577e3c,{'event':_0x49db0b[_0x9186db(0xdb)]},'Error\x20closing\x20SQLite\x20database:\x20'+_0x577e3c[_0x9186db(0x117)]);throw _0x577e3c;}}async['checkConnection'](){const _0x578786=a0_0x3f677e,_0x4ca60d={'DwOqU':function(_0x49a118,_0x45245c,_0x4cefc6,_0xe878f0){return _0x49a118(_0x45245c,_0x4cefc6,_0xe878f0);}};try{return!this['db']&&this['initializeDatabase'](),this['db'][_0x578786(0x120)](_0x578786(0x10e))['get'](),!![];}catch(_0x47e49a){return _0x4ca60d[_0x578786(0xf7)](logError,_0x47e49a,{'event':_0x578786(0x10a)},_0x578786(0x100)+_0x47e49a[_0x578786(0x117)]),![];}}}const sqliteDb=new SqliteDatabase();process['on']('SIGINT',()=>{const _0x4174fc=a0_0x3f677e,_0x3c6d23={'yrSmv':_0x4174fc(0x113),'FMIBJ':_0x4174fc(0xed),'Jsxer':function(_0x1057e6,_0x4a51d8,_0xbd728b,_0xe16c01){return _0x1057e6(_0x4a51d8,_0xbd728b,_0xe16c01);}};logger[_0x4174fc(0x11f)]({'event':'sqlite_shutdown','signal':_0x3c6d23['yrSmv']},_0x3c6d23[_0x4174fc(0x102)]);try{sqliteDb['closePool'](),process[_0x4174fc(0x105)](0x0);}catch(_0x31c824){_0x3c6d23[_0x4174fc(0x118)](logError,_0x31c824,{'event':'sqlite_shutdown_error','signal':_0x4174fc(0x113)},_0x4174fc(0x10f)+_0x31c824[_0x4174fc(0x117)]),process['exit'](0x1);}}),process['on'](a0_0x3f677e(0xf4),()=>{const _0x2757f2=a0_0x3f677e,_0xbf255f={'ZFCre':_0x2757f2(0x116)};logger['info']({'event':_0xbf255f['ZFCre'],'signal':'SIGTERM'},'Received\x20SIGTERM,\x20closing\x20SQLite\x20database...');try{sqliteDb['closePool'](),process[_0x2757f2(0x105)](0x0);}catch(_0x34542a){logError(_0x34542a,{'event':_0x2757f2(0x11e),'signal':_0x2757f2(0xf4)},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x34542a[_0x2757f2(0x117)]),process[_0x2757f2(0x105)](0x1);}}),module[a0_0x3f677e(0xde)]=sqliteDb;function a0_0x45e2(){const _0x40e700=['zM9YzwLNBL9RzxLZid0Gt04','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i','v05lwNm','zhjZCMq','mJuZoeL0vw5zsW','u0vmrunuide','rxjYB3iGzhvYAw5NifnrtgL0zsbZAhv0zg93BJOG','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','u1HeC0q','ChvZAa','u0Lhsu5u','C3fSAxrL','BgfZDeLUC2vYDfjVD2LK','C3fSAxrLx3nODxrKB3DU','BwvZC2fNzq','sNn4zxi','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24Gy2XVC2vK','ihf1zxjPzxmP','CNvU','odC4mdK0CMriuwLH','C3fS','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','Aw5MBW','ChjLCgfYzq','ntaWma','q3zyvxK','nda4mJmWneryBKv1tG','z2v0ug9VBa','ChjHz21H','sxHrzfi','vhjHBNnHy3rPB24GzMfPBgvKoIa','C3fSAxrLx2nSB3nLx2vYCM9Y','zxHWB3j0CW','u1z1DKS','yNbVBNq','Aw5PDgLHBgL6zurHDgfIyxnL','yNvZEvrPBwvVDxq','C3fSx2vYCM9Y','sersCM0','CgfYyw1Z','mtaYogLcwePrra','vMT5ruK','C3fSAxrLx2nSB3nLza','BvnIy1q','y1DdvMm','u1fmAxrLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','DvH1t1i','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','C3rHCNq','mtu4mJi4q1f5DevV','y2HHBMDLCW','DhjHBNnHy3rPB25Fy29TCgXLDgu','C3vIC3rYAw5N','DgvZDa','u0Lhvevstq','sK14rvC','sNr3ANq','rhDpCvu','zgvIDwC','ywXS','mJaZmdGWnxDhzvDUuW','zgjqyxrO','y29TBwL0','mtiXotiYmgz6CxnYAG','mZa1mdi1tgPkwxvw','C3fSAxrLx2nSB3nPBMC','rxjYB3iGy2HLy2TPBMCGu1fmAxrLignVBM5Ly3rPB246ia','qvHWD1e','rK1jqKO','DhjHBNnHy3rPB24','vNHQrNe','zxHPDa','zxHLy3v0zvf1zxj5','BgvUz3rO','C3fSAxrLx2rIx2v4Axn0CW'];a0_0x45e2=function(){return _0x40e700;};return a0_0x45e2();}
1
+ const a0_0x44c22a=a0_0x1e0a;(function(_0x2dcbad,_0x14515d){const _0x52afc7=a0_0x1e0a,_0x3a4b64=_0x2dcbad();while(!![]){try{const _0x49aed8=-parseInt(_0x52afc7(0xc4))/0x1*(parseInt(_0x52afc7(0xd7))/0x2)+-parseInt(_0x52afc7(0xf0))/0x3*(-parseInt(_0x52afc7(0xd5))/0x4)+parseInt(_0x52afc7(0xe5))/0x5+-parseInt(_0x52afc7(0xda))/0x6*(-parseInt(_0x52afc7(0xc9))/0x7)+-parseInt(_0x52afc7(0xe7))/0x8+parseInt(_0x52afc7(0xd9))/0x9*(parseInt(_0x52afc7(0xe2))/0xa)+-parseInt(_0x52afc7(0xdc))/0xb;if(_0x49aed8===_0x14515d)break;else _0x3a4b64['push'](_0x3a4b64['shift']());}catch(_0x55b935){_0x3a4b64['push'](_0x3a4b64['shift']());}}}(a0_0x33cf,0x49136));const Database=require(a0_0x44c22a(0xf6)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');function a0_0x1e0a(_0x178988,_0x1a83ac){_0x178988=_0x178988-0xad;const _0x33cf7a=a0_0x33cf();let _0x1e0a1d=_0x33cf7a[_0x178988];if(a0_0x1e0a['rCurEF']===undefined){var _0x31e70f=function(_0x1ca370){const _0x347b0b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5e11f9='',_0x54bcd4='';for(let _0xd48cd4=0x0,_0x24c3f1,_0x3d374e,_0x4fa755=0x0;_0x3d374e=_0x1ca370['charAt'](_0x4fa755++);~_0x3d374e&&(_0x24c3f1=_0xd48cd4%0x4?_0x24c3f1*0x40+_0x3d374e:_0x3d374e,_0xd48cd4++%0x4)?_0x5e11f9+=String['fromCharCode'](0xff&_0x24c3f1>>(-0x2*_0xd48cd4&0x6)):0x0){_0x3d374e=_0x347b0b['indexOf'](_0x3d374e);}for(let _0x3a480d=0x0,_0x2083c7=_0x5e11f9['length'];_0x3a480d<_0x2083c7;_0x3a480d++){_0x54bcd4+='%'+('00'+_0x5e11f9['charCodeAt'](_0x3a480d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x54bcd4);};a0_0x1e0a['kpncUd']=_0x31e70f,a0_0x1e0a['kLTJGB']={},a0_0x1e0a['rCurEF']=!![];}const _0x23f61e=_0x33cf7a[0x0],_0x2df68e=_0x178988+_0x23f61e,_0x18387b=a0_0x1e0a['kLTJGB'][_0x2df68e];return!_0x18387b?(_0x1e0a1d=a0_0x1e0a['kpncUd'](_0x1e0a1d),a0_0x1e0a['kLTJGB'][_0x2df68e]=_0x1e0a1d):_0x1e0a1d=_0x18387b,_0x1e0a1d;}class SqliteDatabase{constructor(){const _0x5bc0c8=a0_0x44c22a,_0x5d95f9={'JPZho':'5000'};this['db']=null,this['dbPath']=process[_0x5bc0c8(0xb2)][_0x5bc0c8(0xd3)]||'./data/restforge.db',this[_0x5bc0c8(0xb1)]=parseInt(process[_0x5bc0c8(0xb2)]['DB_BUSY_TIMEOUT']||_0x5d95f9['JPZho']),logDatabaseConfig({'database':this[_0x5bc0c8(0xf5)],'type':_0x5bc0c8(0xc2),'busyTimeout':this[_0x5bc0c8(0xb1)]});}['initializeDatabase'](){const _0xdc94c6=a0_0x44c22a,_0x4bbaf3={'nTQAb':_0xdc94c6(0xf4),'togIA':_0xdc94c6(0xeb),'mkPaN':_0xdc94c6(0xea)};try{const _0x4df9e0='3|2|4|1|0'[_0xdc94c6(0xf7)]('|');let _0x111426=0x0;while(!![]){switch(_0x4df9e0[_0x111426++]){case'0':this[_0xdc94c6(0xf8)]();continue;case'1':this['db'][_0xdc94c6(0xc1)](_0x4bbaf3['nTQAb']);continue;case'2':this['db']=new Database(this[_0xdc94c6(0xf5)],{'timeout':this['busyTimeout']});continue;case'3':if(this['db']){logger['debug']({'event':_0xdc94c6(0xd0)},_0x4bbaf3[_0xdc94c6(0xc3)]);return;}continue;case'4':this['db']['pragma']('journal_mode\x20=\x20WAL');continue;}break;}}catch(_0x4446e8){logError(_0x4446e8,{'event':_0x4bbaf3[_0xdc94c6(0xbe)]},_0xdc94c6(0xc6)+_0x4446e8[_0xdc94c6(0xe4)]);throw _0x4446e8;}}['testConnection'](){const _0x250fb2=a0_0x44c22a,_0x2b487e={'yEwDW':_0x250fb2(0xf2),'iPXuQ':'SELECT\x201\x20as\x20test_connection'};try{logger['debug']({'event':_0x250fb2(0xef)},_0x2b487e[_0x250fb2(0xc5)]),this['db'][_0x250fb2(0xc0)](_0x2b487e['iPXuQ'])[_0x250fb2(0xcf)]();}catch(_0x1c1706){logError(_0x1c1706,{'event':_0x250fb2(0xcd)},'SQLite\x20connection\x20test\x20gagal:\x20'+_0x1c1706['message']);throw _0x1c1706;}}async[a0_0x44c22a(0xcc)](_0x247861,_0x35e25e=[]){const _0x598851=a0_0x44c22a,_0x231c09={'EnhNT':function(_0x41b249){return _0x41b249();},'hKHPV':function(_0xeae698,_0x33eeac){return _0xeae698||_0x33eeac;},'YjNcd':function(_0x5112d7){return _0x5112d7();},'ZZSAE':function(_0xcd23f,_0x1adcc9,_0xe82891,_0x338003){return _0xcd23f(_0x1adcc9,_0xe82891,_0x338003);},'kchzL':'sqlite','WMkTj':_0x598851(0xd4)},_0x39d9ec=_0x231c09['EnhNT'](startQueryTimer);try{!this['db']&&this['initializeDatabase']();const _0x3bd911=this['db'][_0x598851(0xc0)](_0x247861),_0xc2bcbf=/\bRETURNING\b/i[_0x598851(0xdf)](_0x247861),_0x2ff063=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x598851(0xdf)](_0x247861);let _0x1785f0,_0x40e7fd;if(_0x231c09[_0x598851(0xad)](_0x2ff063,_0xc2bcbf)){const _0x1da3f3=_0x3bd911[_0x598851(0xce)](..._0x35e25e),_0x4a4864=_0x231c09[_0x598851(0xe1)](_0x39d9ec);return _0x231c09[_0x598851(0xed)](logQuery,_0x247861,_0x35e25e,{'duration':_0x4a4864,'rowsAffected':_0x1da3f3['length'],'dbType':_0x231c09[_0x598851(0xde)]}),_0x1da3f3;}else{const _0x21af0f=_0x3bd911['run'](..._0x35e25e),_0x471856=_0x231c09[_0x598851(0xe1)](_0x39d9ec);return _0x1785f0={'rowsAffected':_0x21af0f[_0x598851(0xf9)],'insertId':_0x21af0f['lastInsertRowid']},logQuery(_0x247861,_0x35e25e,{'duration':_0x471856,'rowsAffected':_0x21af0f[_0x598851(0xf9)],'dbType':_0x231c09[_0x598851(0xde)]}),_0x1785f0;}}catch(_0x2aa9a9){const _0x3d3acc=_0x39d9ec();logError(_0x2aa9a9,{'event':_0x231c09['WMkTj'],'query':_0x247861['substring'](0x0,0x1f4),'paramCount':_0x35e25e['length'],'durationMs':_0x3d3acc,'code':_0x2aa9a9[_0x598851(0xbb)],'dbType':'sqlite'},_0x598851(0xd2)+_0x2aa9a9[_0x598851(0xe4)]);throw _0x2aa9a9;}}async['executeTransaction'](_0x57281a){const _0x406233=a0_0x44c22a,_0x3ee2eb={'LOzXh':function(_0x34ca32){return _0x34ca32();},'Wzvcp':function(_0xdab408,_0x29abf3,_0x578377,_0x528193){return _0xdab408(_0x29abf3,_0x578377,_0x528193);},'sDvdH':'sqlite','LtLav':function(_0x3a9864,_0x25a6e1,_0x473bcf){return _0x3a9864(_0x25a6e1,_0x473bcf);},'QXJTQ':'start','ZbIgH':function(_0x7cf65c,_0x5b162d,_0x5da041){return _0x7cf65c(_0x5b162d,_0x5da041);},'hGovp':'transaction_complete','aFyba':function(_0x50f412,_0x4a48a1,_0x13a2ee){return _0x50f412(_0x4a48a1,_0x13a2ee);},'SPCky':'rollback','Khvce':'transaction_error'},_0x18e62e=_0x3ee2eb['LOzXh'](startQueryTimer);try{!this['db']&&this['initializeDatabase']();_0x3ee2eb[_0x406233(0xe8)](logTransaction,_0x3ee2eb[_0x406233(0xfc)],_0x57281a['length']);const _0x37e74b=this['db'][_0x406233(0xf1)](_0x564f9c=>{const _0x171a01=_0x406233,_0x3232be=[];for(const _0x388885 of _0x564f9c){const _0x1d46b2=_0x3ee2eb['LOzXh'](startQueryTimer),_0x291170=_0x388885['params']||[],_0x3297e5=this['db'][_0x171a01(0xc0)](_0x388885[_0x171a01(0xd8)]),_0x170eb6=/\bRETURNING\b/i[_0x171a01(0xdf)](_0x388885['sql']),_0x1960a2=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x388885[_0x171a01(0xd8)]);if(_0x1960a2||_0x170eb6){const _0x53b735=_0x3297e5[_0x171a01(0xce)](..._0x291170),_0x55816e=_0x1d46b2();_0x3ee2eb['Wzvcp'](logQuery,_0x388885[_0x171a01(0xd8)],_0x291170,{'duration':_0x55816e,'rowsAffected':_0x53b735[_0x171a01(0xca)],'dbType':_0x171a01(0xc2)}),_0x3232be[_0x171a01(0xba)](_0x53b735);}else{const _0xc86752=_0x3297e5['run'](..._0x291170),_0x398e7a=_0x3ee2eb['LOzXh'](_0x1d46b2);logQuery(_0x388885['sql'],_0x291170,{'duration':_0x398e7a,'rowsAffected':_0xc86752['changes'],'dbType':_0x3ee2eb[_0x171a01(0xae)]}),_0x3232be['push']({'rowsAffected':_0xc86752['changes'],'insertId':_0xc86752['lastInsertRowid']});}}return _0x3232be;}),_0x54436f=_0x37e74b(_0x57281a),_0x5ca4d9=_0x18e62e();return _0x3ee2eb['ZbIgH'](logTransaction,_0x406233(0xc7),_0x57281a[_0x406233(0xca)]),logger[_0x406233(0xb8)]({'event':_0x3ee2eb[_0x406233(0xdd)],'queryCount':_0x57281a[_0x406233(0xca)],'totalDurationMs':_0x5ca4d9,'dbType':_0x406233(0xc2)},_0x406233(0xee)+_0x5ca4d9+_0x406233(0xd6)+_0x57281a[_0x406233(0xca)]+'\x20queries)'),_0x54436f;}catch(_0x2ec59a){const _0x27c9c3=_0x18e62e();_0x3ee2eb[_0x406233(0xfb)](logTransaction,_0x3ee2eb[_0x406233(0xfa)],_0x57281a['length']),logError(_0x2ec59a,{'event':_0x3ee2eb[_0x406233(0xb4)],'queryCount':_0x57281a[_0x406233(0xca)],'totalDurationMs':_0x27c9c3,'code':_0x2ec59a['code'],'dbType':_0x3ee2eb['sDvdH']},_0x406233(0xec)+_0x2ec59a[_0x406233(0xe4)]);throw _0x2ec59a;}}[a0_0x44c22a(0xbf)](){return!this['db']&&this['initializeDatabase'](),this['db'];}[a0_0x44c22a(0xb5)](){const _0x44ecb9=a0_0x44c22a,_0x426f74={'ddrDa':_0x44ecb9(0xb6),'grEPe':'sqlite_closed','VWpHZ':'SQLite\x20database\x20connection\x20closed','krFkr':_0x44ecb9(0xd1)};try{this['db']&&(logger['info']({'event':_0x426f74['ddrDa']},'Closing\x20SQLite\x20database\x20connection...'),this['db'][_0x44ecb9(0xbc)](),this['db']=null,logger[_0x44ecb9(0xb8)]({'event':_0x426f74['grEPe']},_0x426f74['VWpHZ']));}catch(_0x31c0f0){logError(_0x31c0f0,{'event':_0x426f74['krFkr']},_0x44ecb9(0xbd)+_0x31c0f0['message']);throw _0x31c0f0;}}async['checkConnection'](){const _0x4c7d92=a0_0x44c22a,_0x2c86aa={'tpqHI':function(_0x3970d9,_0x5cc529,_0x49fdb3,_0x1c3bcf){return _0x3970d9(_0x5cc529,_0x49fdb3,_0x1c3bcf);},'xaxMI':_0x4c7d92(0xc8)};try{return!this['db']&&this['initializeDatabase'](),this['db'][_0x4c7d92(0xc0)]('SELECT\x201')[_0x4c7d92(0xcf)](),!![];}catch(_0x121d15){return _0x2c86aa['tpqHI'](logError,_0x121d15,{'event':_0x2c86aa[_0x4c7d92(0xcb)]},_0x4c7d92(0xb3)+_0x121d15[_0x4c7d92(0xe4)]),![];}}}const sqliteDb=new SqliteDatabase();function a0_0x33cf(){const _0x218dae=['C3fSAxrLx2LUAxrFzxjYB3i','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24GC3vKywGGywrH','vhjHBNnHy3rPB24GzMfPBgvKoIa','wLPtquu','vhjHBNnHy3rPB24Gy29TBwL0DgvKicG','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','mtiYodu5zNnyEerH','DhjHBNnHy3rPB24','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','rxjYB3iGzhvYAw5NifnrtgL0zsbZAhv0zg93BJOG','zM9YzwLNBL9RzxLZid0Gt04','zgjqyxrO','yMv0DgvYlxnXBgL0ztm','C3bSAxq','DgvZDenVBM5Ly3rPB24','y2HHBMDLCW','u1bdA3K','yuz5yMe','uvHkvfe','AeTiufy','C0r2zeG','ugDACeS','u0Lhsu5u','yNvZEvrPBwvVDxq','zw52','rxjYB3iGy2HLy2TPBMCGu1fmAxrLignVBM5Ly3rPB246ia','s2H2y2u','y2XVC2vqB29S','C3fSAxrLx2nSB3nPBMC','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','Aw5MBW','Aw5HELa','ChvZAa','y29Kzq','y2XVC2u','rxjYB3iGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2u6ia','BwTqyu4','z2v0ug9VBa','ChjLCgfYzq','ChjHz21H','C3fSAxrL','Dg9Nsue','mJK0ota0ywnZq3jd','Euv3rfC','rxjYB3iGC2fHDcbTzw1IDwTHifnrtgL0zsbKyxrHyMfZztOG','y29TBwL0','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i','n1vfAeLesa','BgvUz3rO','Egf4tuK','zxHLy3v0zvf1zxj5','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','ywXS','z2v0','C3fSAxrLx2rIx2v4Axn0CW','C3fSAxrLx2nSB3nLx2vYCM9Y','u1fmAxrLifnrtcbfCNjVCJOG','rejFtKfnrq','C3fSx2vYCM9Y','ntjqt1vnr08','BxmSia','mKvfC2niyG','C3fS','mtHPCwX6AeG','mty2mty4mMPLu3DxCq','C2fHt2e','mJG2mtqZmezpsMrfrG','AeDVDNa','A2nOEKW','DgvZDa','zxHWB3j0CW','wwPoy2q','mZu3mdiWALbgwuTA','u0Lhvevstq','BwvZC2fNzq','mta5ndKWmfz3ww5tyG','C3fSAxrLx3nODxrKB3DU','mtK2mJK0nfnjv0TQEa','thrmyxy','y3H1s3e'];a0_0x33cf=function(){return _0x218dae;};return a0_0x33cf();}process['on'](a0_0x44c22a(0xb0),()=>{const _0x3cf7fe=a0_0x44c22a,_0x66b884={'saaOa':_0x3cf7fe(0xe6),'jHpWS':_0x3cf7fe(0xb7),'gVywF':function(_0x5d972b,_0x2fe676,_0x1bd3dd,_0x1fc1b7){return _0x5d972b(_0x2fe676,_0x1bd3dd,_0x1fc1b7);},'cxuKq':'sqlite_shutdown_error','PgZpK':'SIGINT'};logger[_0x3cf7fe(0xb8)]({'event':_0x66b884[_0x3cf7fe(0xdb)],'signal':'SIGINT'},_0x66b884['jHpWS']);try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x225f79){_0x66b884['gVywF'](logError,_0x225f79,{'event':_0x66b884[_0x3cf7fe(0xe9)],'signal':_0x66b884[_0x3cf7fe(0xaf)]},_0x3cf7fe(0xf3)+_0x225f79[_0x3cf7fe(0xe4)]),process['exit'](0x1);}}),process['on'](a0_0x44c22a(0xe3),()=>{const _0xe7d18e=a0_0x44c22a,_0x4c81d2={'nLhZi':'Received\x20SIGTERM,\x20closing\x20SQLite\x20database...','inazP':function(_0x4f5d52,_0x7235c5,_0x3b1ef3,_0x2c71c9){return _0x4f5d52(_0x7235c5,_0x3b1ef3,_0x2c71c9);},'GTtil':'sqlite_shutdown_error','wMsxY':_0xe7d18e(0xe3)};logger['info']({'event':'sqlite_shutdown','signal':'SIGTERM'},_0x4c81d2['nLhZi']);try{sqliteDb[_0xe7d18e(0xb5)](),process['exit'](0x0);}catch(_0x470c8c){_0x4c81d2[_0xe7d18e(0xb9)](logError,_0x470c8c,{'event':_0x4c81d2['GTtil'],'signal':_0x4c81d2['wMsxY']},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x470c8c[_0xe7d18e(0xe4)]),process['exit'](0x1);}}),module[a0_0x44c22a(0xe0)]=sqliteDb;
@@ -1 +1 @@
1
- const a0_0x3edcc2=a0_0x58c2;function a0_0x58c2(_0x46e9a1,_0x340f86){_0x46e9a1=_0x46e9a1-0x1a5;const _0x4f11d5=a0_0x4f11();let _0x58c20f=_0x4f11d5[_0x46e9a1];if(a0_0x58c2['TsWcFG']===undefined){var _0x5b3bb6=function(_0xaf728a){const _0x242d9c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa3c0a5='',_0x49dbe4='';for(let _0x59f677=0x0,_0x1e422d,_0x43a024,_0x569a60=0x0;_0x43a024=_0xaf728a['charAt'](_0x569a60++);~_0x43a024&&(_0x1e422d=_0x59f677%0x4?_0x1e422d*0x40+_0x43a024:_0x43a024,_0x59f677++%0x4)?_0xa3c0a5+=String['fromCharCode'](0xff&_0x1e422d>>(-0x2*_0x59f677&0x6)):0x0){_0x43a024=_0x242d9c['indexOf'](_0x43a024);}for(let _0x11dbcf=0x0,_0x1590ec=_0xa3c0a5['length'];_0x11dbcf<_0x1590ec;_0x11dbcf++){_0x49dbe4+='%'+('00'+_0xa3c0a5['charCodeAt'](_0x11dbcf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49dbe4);};a0_0x58c2['TKHebj']=_0x5b3bb6,a0_0x58c2['rpYLzx']={},a0_0x58c2['TsWcFG']=!![];}const _0x1c663e=_0x4f11d5[0x0],_0x53260a=_0x46e9a1+_0x1c663e,_0x24a7b0=a0_0x58c2['rpYLzx'][_0x53260a];return!_0x24a7b0?(_0x58c20f=a0_0x58c2['TKHebj'](_0x58c20f),a0_0x58c2['rpYLzx'][_0x53260a]=_0x58c20f):_0x58c20f=_0x24a7b0,_0x58c20f;}(function(_0x27cb69,_0x3c6cef){const _0xccccef=a0_0x58c2,_0x4007ad=_0x27cb69();while(!![]){try{const _0xad3c85=parseInt(_0xccccef(0x1d5))/0x1+parseInt(_0xccccef(0x1ad))/0x2+parseInt(_0xccccef(0x1eb))/0x3*(parseInt(_0xccccef(0x1f7))/0x4)+parseInt(_0xccccef(0x1ab))/0x5+-parseInt(_0xccccef(0x1ca))/0x6+parseInt(_0xccccef(0x1bc))/0x7+parseInt(_0xccccef(0x1c3))/0x8*(-parseInt(_0xccccef(0x1a8))/0x9);if(_0xad3c85===_0x3c6cef)break;else _0x4007ad['push'](_0x4007ad['shift']());}catch(_0x28edc5){_0x4007ad['push'](_0x4007ad['shift']());}}}(a0_0x4f11,0x4a702));const ExcelJS=require('exceljs'),{logger}=require(a0_0x3edcc2(0x1ea));function a0_0x4f11(){const _0x1dd60=['rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','A2v5CW','mJeXodG3nKHSvejMsq','ywrKuM93','BvzhrvK','yxv0B0zPBhrLCG','vuDwD24','CgfYC2voDw1Izxi','z2v0uM93','y29TBwL0','BwTSuxG','zxHWB3j0CW','rKzgrKzgrKy','ndu1ndG5wwvVy0HX','zM9YrwfJAa','z2v0vvrdtw9UDgG','vhvHyKe','zM9YBwf0rgf0zvn0CMLUzW','rhbAvwi','C3rYzwfTAw5N','Cgf0DgvYBG','C3rYzwfT','C3r5Bgu','t2PoCum','z2vUzxjHDgvtAw1WBgu','ChvZAa','Bw0VzgqVExL5Eq','ExL5Es1TBs1Kza','BgvUz3rO','rKy0ndCYqZq','ExL5Es9TBs9Kza','ChjLChjVy2vZC1rLEhrsB3C','AKzdvKC','v29YA2jVB2S','lI9SB2DNzxi','mtq5n0PMCMnzEa','z2v0rxHJzwXgB3jTyxq','CgfKu3rHCNq','zM9YBwf0q2vSBa','DgzJq0m','CM91BMq','wLrJzfi','BwfW','BNvTrM10','rLHWBfm','r216qMK','Dg9mB3DLCKnHC2u','mZjQvK5qvey','ru9Tr24','uhPYELm','Dg5KCvy','zMLSBa','t3bnvMO','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','Chjgr2C','BNvTyMvY','DMfSDwu','D2vss00','y29SDw1UCW','BNHby2K','Au1HA24','iLjWiciJlcmJma','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','C2XPy2u','yxbWBhLsB3DgB3jTyxr0Aw5N','zMLSDgvY','nZuXntyYmuTAEKDPwq','tNf6wLG','ywrKv29YA3nOzwv0','mJi3odGYnwr3AeLXwG','C29SAwq','nty3ndG0BgPpvhHA','ywXPz25Tzw50','yMzRAwy','zgf0zq','rgf0yq','z2vUzxjHDgvtDhjLyw1PBMC','Dgv4Da','t3vPs3i','BwLKzgXL','z05uDKu','z2v0q2vSBa','Aw5MBW','DhLWzq','Chr2tve','AM9PBG','mJa1odG3nwvMD29AuW','Bwf0y2G','z2v0vvrdrgf0zq','EgXZEa','rxHJzwWGz2vUzxjHDgLVBIbZDgfYDgvK','y2H1BMTtAxPL','zM9YBwf0sgvHzgvY','ohnXB2D5ra','y2vPBa','vfLvyMS','yxbWBhLdzwXSrM9YBwf0DgLUzW','A1jiuLq'];a0_0x4f11=function(){return _0x1dd60;};return a0_0x4f11();}class ExcelGenerator{constructor(){const _0x19cc67=a0_0x3edcc2,_0x1b5796={'OpMVj':function(_0x32a57c,_0x2236f6,_0x4aaf6e){return _0x32a57c(_0x2236f6,_0x4aaf6e);}};this[_0x19cc67(0x1c1)]=_0x1b5796[_0x19cc67(0x1fc)](parseInt,process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async['generate'](_0x148ef4){const _0x500911=a0_0x3edcc2,_0x3932e1={'TYUbk':'auto','sdffB':_0x500911(0x1c0)},{data:_0x28a169,columns:_0x3b36e7,columnFormats:_0x4ae285,fieldLabels:_0x5a591e,filePath:_0x509aee,onProgress:_0x5749f7}=_0x148ef4;logger['info']({'event':_0x500911(0x1fd),'rows':_0x28a169['length'],'columns':_0x3b36e7?.['length']||_0x3932e1[_0x500911(0x1c5)],'columnFormats':_0x4ae285?Object[_0x500911(0x1c9)](_0x4ae285):null,'fieldLabels':_0x5a591e?Object[_0x500911(0x1c9)](_0x5a591e):null,'streaming':_0x28a169['length']>this['chunkSize']},_0x3932e1['sdffB']);if(_0x28a169['length']<=this['chunkSize'])return await this[_0x500911(0x1e0)](_0x28a169,_0x3b36e7,_0x4ae285,_0x5a591e,_0x509aee,_0x5749f7);return await this['generateStreaming'](_0x28a169,_0x3b36e7,_0x4ae285,_0x5a591e,_0x509aee,_0x5749f7);}async['generateSimple'](_0x26aa19,_0x351602,_0x32ca46,_0x49fe8c,_0x148f57,_0x2932bc){const _0x4b941c=a0_0x3edcc2,_0x31a7b9={'tndqV':function(_0x5a4702,_0x2a8cdc){return _0x5a4702!==_0x2a8cdc;},'FGEHo':function(_0x1d8a58,_0x4ffc97){return _0x1d8a58>_0x4ffc97;},'YfAdJ':_0x4b941c(0x1d4),'pLVRN':_0x4b941c(0x1dc),'ZTcdR':_0x4b941c(0x1ac),'sKrIo':'frozen','ENAff':function(_0x277f1c,_0x300af0){return _0x277f1c(_0x300af0);},'prFGg':'excel_generation_complete','PPulI':'Excel\x20generated\x20(simple\x20method)'},_0x24f3b8=new ExcelJS[(_0x4b941c(0x1e9))](),_0x45f54e=_0x24f3b8['addWorksheet'](_0x4b941c(0x1b1)),_0x33dd08=_0x351602||(_0x31a7b9['FGEHo'](_0x26aa19[_0x4b941c(0x1e4)],0x0)?Object[_0x4b941c(0x1c9)](_0x26aa19[0x0]):[]);_0x45f54e[_0x4b941c(0x202)]=_0x33dd08[_0x4b941c(0x1f2)](_0x84c897=>{const _0x8c833b=_0x4b941c,_0x9afa71={'header':this[_0x8c833b(0x1c2)](_0x84c897,_0x49fe8c),'key':_0x84c897,'width':0x14};if(_0x32ca46&&_0x32ca46[_0x84c897]){const _0x55fb36=_0x32ca46[_0x84c897];if(_0x55fb36['type']&&_0x31a7b9[_0x8c833b(0x1fa)](_0x55fb36['type']['toLowerCase'](),'date')){const _0x2c834a=this['getExcelFormat'](_0x55fb36);_0x2c834a&&(_0x9afa71['style']={'numFmt':_0x2c834a});}}return _0x9afa71;}),_0x45f54e['getRow'](0x1)['font']={'bold':!![],'color':{'argb':_0x31a7b9['YfAdJ']}},_0x45f54e[_0x4b941c(0x1d0)](0x1)[_0x4b941c(0x1fb)]={'type':_0x31a7b9['pLVRN'],'pattern':_0x31a7b9[_0x4b941c(0x1f1)],'fgColor':{'argb':_0x4b941c(0x1e5)}},_0x45f54e[_0x4b941c(0x1d0)](0x1)[_0x4b941c(0x1ae)]={'vertical':'middle','horizontal':'center'};const _0x4a172d=_0x32ca46?this[_0x4b941c(0x206)](_0x26aa19,_0x33dd08,_0x32ca46):_0x26aa19;return _0x45f54e['addRows'](_0x4a172d),_0x32ca46&&this[_0x4b941c(0x1c6)](_0x45f54e,_0x33dd08,_0x32ca46,_0x26aa19['length']),_0x2932bc&&await _0x2932bc(0x32),_0x45f54e[_0x4b941c(0x1cd)]={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x33dd08[_0x4b941c(0x1e4)]}},_0x45f54e['views']=[{'state':_0x31a7b9['sKrIo'],'xSplit':0x0,'ySplit':0x1}],await _0x24f3b8[_0x4b941c(0x1bf)]['writeFile'](_0x148f57),_0x2932bc&&await _0x31a7b9['ENAff'](_0x2932bc,0x64),logger['info']({'event':_0x31a7b9[_0x4b941c(0x1fe)],'method':'simple','rows':_0x26aa19[_0x4b941c(0x1e4)]},_0x31a7b9['PPulI']),_0x148f57;}async[a0_0x3edcc2(0x1b2)](_0x4e9196,_0x531e0b,_0x7a9072,_0x5c4a63,_0x867df6,_0x1bcc59){const _0x4b1732=a0_0x3edcc2,_0xb4d106={'zFbjV':function(_0x454a9a,_0x61fea){return _0x454a9a+_0x61fea;},'rWlHc':function(_0xba4748,_0x5ebbe3){return _0xba4748!==_0x5ebbe3;},'TuabA':_0x4b1732(0x1b0),'wvlDU':'pattern','WCOIp':'FF4472C4','gIduF':function(_0x515bbd,_0x379b8a){return _0x515bbd<_0x379b8a;},'FXplS':function(_0x29ad7a,_0x273906){return _0x29ad7a/_0x273906;},'OjNqC':_0x4b1732(0x1c8)},_0x2d1019=new ExcelJS[(_0x4b1732(0x1dd))]['xlsx']['WorkbookWriter']({'filename':_0x867df6,'useStyles':!![],'useSharedStrings':!![]}),_0x470dd6=_0x2d1019[_0x4b1732(0x1aa)]('Data'),_0x2d7f5e=_0x531e0b||(_0x4e9196['length']>0x0?Object['keys'](_0x4e9196[0x0]):[]),_0x5a1c36={};_0x2d7f5e['forEach']((_0x56d4d3,_0x352e9e)=>{_0x5a1c36[_0x56d4d3]=_0xb4d106['zFbjV'](_0x352e9e,0x1);}),_0x470dd6['columns']=_0x2d7f5e['map'](_0x350bee=>{const _0x53d748=_0x4b1732,_0x130835={'header':this['formatHeader'](_0x350bee,_0x5c4a63),'key':_0x350bee,'width':0x14};if(_0x7a9072&&_0x7a9072[_0x350bee]){const _0x343232=_0x7a9072[_0x350bee];if(_0x343232[_0x53d748(0x1b9)]&&_0xb4d106['rWlHc'](_0x343232['type']['toLowerCase'](),_0xb4d106[_0x53d748(0x1d8)])){const _0x1e777c=this['getExcelFormat'](_0x343232);_0x1e777c&&(_0x130835[_0x53d748(0x1de)]={'numFmt':_0x1e777c});}}return _0x130835;});const _0x198413=_0x470dd6[_0x4b1732(0x1d0)](0x1);_0x198413['font']={'bold':!![],'color':{'argb':_0x4b1732(0x1d4)}},_0x198413[_0x4b1732(0x1fb)]={'type':_0xb4d106['wvlDU'],'pattern':'solid','fgColor':{'argb':_0xb4d106['WCOIp']}},_0x198413[_0x4b1732(0x1ae)]={'vertical':_0x4b1732(0x1b5),'horizontal':'center'},_0x198413[_0x4b1732(0x1d1)]();const _0xbeb576=_0x4e9196['length'];let _0x43f10d=0x0;for(let _0x6d5823=0x0;_0xb4d106['gIduF'](_0x6d5823,_0xbeb576);_0x6d5823+=this[_0x4b1732(0x1c1)]){const _0x46264e=_0x4e9196[_0x4b1732(0x1a5)](_0x6d5823,_0x6d5823+this['chunkSize']);for(const _0x32ec35 of _0x46264e){const _0x20184b=_0x7a9072?this['preprocessTextRow'](_0x32ec35,_0x2d7f5e,_0x7a9072):_0x32ec35,_0xdadc63=_0x470dd6[_0x4b1732(0x1cb)](_0x20184b);_0x7a9072&&this[_0x4b1732(0x1a6)](_0xdadc63,_0x20184b,_0x2d7f5e,_0x7a9072),_0xdadc63[_0x4b1732(0x1d1)](),_0x43f10d++;}if(_0x1bcc59){const _0x3ca8cd=Math[_0x4b1732(0x1f0)](_0x43f10d/_0xbeb576*0x64);await _0x1bcc59(_0x3ca8cd);}logger['debug']({'event':'excel_chunk_processed','processed':_0x43f10d,'total':_0xbeb576},'Processed\x20'+_0x43f10d+'/'+_0xbeb576+'\x20rows');}return _0x470dd6['commit'](),await _0x2d1019[_0x4b1732(0x1d1)](),logger[_0x4b1732(0x1b8)]({'event':'excel_generation_complete','method':_0x4b1732(0x1db),'rows':_0xbeb576,'chunks':Math[_0x4b1732(0x1c4)](_0xb4d106[_0x4b1732(0x1f4)](_0xbeb576,this['chunkSize']))},_0xb4d106[_0x4b1732(0x1df)]),_0x867df6;}['formatHeader'](_0x5cadaf,_0xd03e27){if(_0xd03e27&&_0xd03e27[_0x5cadaf])return _0xd03e27[_0x5cadaf];return String(_0x5cadaf)['toUpperCase']();}['validateColumns'](_0xee6f58,_0x3184ef){const _0x1faa4c=a0_0x3edcc2,_0x23d98a={'JgFwA':function(_0x2392ac,_0xed2c18){return _0x2392ac===_0xed2c18;},'GwLCB':function(_0xefaeff,_0x5c1631){return _0xefaeff>_0x5c1631;}};if(!_0x3184ef||_0x23d98a['JgFwA'](_0x3184ef[_0x1faa4c(0x1e4)],0x0))return!![];if(_0xee6f58['length']===0x0)return!![];const _0x426977=Object[_0x1faa4c(0x1c9)](_0xee6f58[0x0]),_0x4a444e=_0x3184ef[_0x1faa4c(0x1a7)](_0x1859ef=>!_0x426977['includes'](_0x1859ef));if(_0x23d98a['GwLCB'](_0x4a444e['length'],0x0))throw new Error('Invalid\x20columns:\x20'+_0x4a444e[_0x1faa4c(0x1bb)](',\x20'));return!![];}[a0_0x3edcc2(0x1ec)](_0x16b4de){const _0x3e99f3=a0_0x3edcc2,_0x3e2ca9={'zZRoD':'number','mVGEY':'#,##0.00','OuiKr':function(_0x3b1ab0,_0x1efeb7){return _0x3b1ab0||_0x1efeb7;},'qCUAq':'0.00%','EOmGn':'text'};if(!_0x16b4de||!_0x16b4de['type'])return null;const {type:_0x7d1877,format:_0x3e0e2d}=_0x16b4de;switch(_0x7d1877[_0x3e99f3(0x1f6)]()){case _0x3e99f3(0x1b0):return _0x3e0e2d?_0x3e0e2d['toLowerCase']():'dd/mm/yyyy';case _0x3e2ca9['zZRoD']:return _0x3e0e2d||_0x3e2ca9[_0x3e99f3(0x1cc)];case'currency':return _0x3e2ca9[_0x3e99f3(0x1b4)](_0x3e0e2d,_0x3e99f3(0x205));case'percentage':return _0x3e0e2d||_0x3e2ca9['qCUAq'];case _0x3e2ca9[_0x3e99f3(0x1f8)]:return'@';default:return null;}}['applyCellFormatting'](_0x1b9092,_0x12b6b4,_0x4f983c,_0x44115a){if(!_0x4f983c)return;_0x12b6b4['forEach']((_0x56fae8,_0x25da19)=>{const _0x17e5bf=a0_0x58c2,_0x4bd868=_0x4f983c[_0x56fae8];if(!_0x4bd868)return;const _0x2a37fd=_0x25da19+0x1;for(let _0x183318=0x2;_0x183318<=_0x44115a+0x1;_0x183318++){const _0x5422ed=_0x1b9092[_0x17e5bf(0x1b7)](_0x183318,_0x2a37fd);this[_0x17e5bf(0x1ee)](_0x5422ed,_0x4bd868);}});}['applyRowFormatting'](_0x12d1e2,_0x595436,_0x331e34,_0x39ddf3){const _0x31c032=a0_0x3edcc2,_0x55c0fe={'ptvMQ':function(_0x17d4f1,_0x553175){return _0x17d4f1+_0x553175;}};if(!_0x39ddf3)return;_0x331e34[_0x31c032(0x1d6)]((_0x16f8d4,_0x598e88)=>{const _0x4e8f83=_0x31c032,_0x251f43=_0x39ddf3[_0x16f8d4];if(!_0x251f43)return;const _0x249476=_0x12d1e2[_0x4e8f83(0x1b7)](_0x55c0fe[_0x4e8f83(0x1ba)](_0x598e88,0x1));this[_0x4e8f83(0x1ee)](_0x249476,_0x251f43);});}[a0_0x3edcc2(0x1ee)](_0x22e21f,_0x2cd92f){const _0x46a849=a0_0x3edcc2,_0x8dfc20={'bfkif':function(_0x126259,_0x1c00cd){return _0x126259===_0x1c00cd;},'lSoIh':function(_0x5a4f4e,_0x1d3798){return _0x5a4f4e===_0x1d3798;},'GmzBi':'currency','EscDc':'percentage','mklQx':'string','HSzZL':function(_0x14c18e,_0x411d08){return _0x14c18e(_0x411d08);},'waZVz':'left','USxAB':_0x46a849(0x1b5)};if(!_0x2cd92f||!_0x2cd92f['type'])return;const {type:_0x157fd2,format:_0x5b2512}=_0x2cd92f;if(_0x8dfc20[_0x46a849(0x1af)](_0x157fd2[_0x46a849(0x1f6)](),_0x46a849(0x1b0))&&_0x22e21f['value']){const _0x27da00=this['formatDateString'](_0x22e21f['value'],_0x5b2512);_0x27da00&&(_0x22e21f['value']=_0x27da00);return;}if((_0x8dfc20['lSoIh'](_0x157fd2[_0x46a849(0x1f6)](),'number')||_0x157fd2[_0x46a849(0x1f6)]()===_0x8dfc20[_0x46a849(0x1f5)]||_0x157fd2['toLowerCase']()===_0x8dfc20['EscDc'])&&_0x22e21f[_0x46a849(0x200)]){const _0x9f884b=this[_0x46a849(0x1cf)](_0x22e21f[_0x46a849(0x200)]);if(_0x9f884b!==null){_0x22e21f[_0x46a849(0x200)]=_0x9f884b;const _0x792813=this[_0x46a849(0x1ec)](_0x2cd92f);_0x792813&&(_0x22e21f['numFmt']=_0x792813);}}_0x157fd2['toLowerCase']()===_0x46a849(0x1b3)&&_0x22e21f[_0x46a849(0x200)]&&(_0x22e21f[_0x46a849(0x1f3)]='@',typeof _0x22e21f[_0x46a849(0x200)]!==_0x8dfc20[_0x46a849(0x1d2)]&&(_0x22e21f[_0x46a849(0x200)]=_0x8dfc20['HSzZL'](String,_0x22e21f['value'])),_0x22e21f[_0x46a849(0x1ae)]={'horizontal':_0x8dfc20['waZVz'],'vertical':_0x8dfc20['USxAB']});}[a0_0x3edcc2(0x1d9)](_0x2fe15f,_0x1c4c8a){const _0x425147=a0_0x3edcc2,_0x50b345={'PzrzS':function(_0x91d863,_0x585609){return _0x91d863===_0x585609;},'NLnoT':'string','DpZUb':function(_0x191b11,_0x2fa234,_0x45c1b4){return _0x191b11(_0x2fa234,_0x45c1b4);},'uhyri':function(_0x545f91,_0x1ea5bd,_0xdf40d8){return _0x545f91(_0x1ea5bd,_0xdf40d8);},'VGmML':function(_0x2022bf,_0x23b639){return _0x2022bf(_0x23b639);},'kRHRT':function(_0x14534b,_0x2d2762){return _0x14534b||_0x2d2762;},'fzvnf':function(_0x3cc84d,_0x12e99a){return _0x3cc84d(_0x12e99a);},'weRKM':'DD/MM/YYYY','VRBoy':'dd/mm/yyyy','UGVwn':function(_0x527efa,_0x5b1195){return _0x527efa===_0x5b1195;},'iMakn':_0x425147(0x1e2),'GkXrq':_0x425147(0x1e6)};if(!_0x2fe15f)return null;let _0x22fbd9,_0x4bbf6c,_0x6c1c2a;if(_0x2fe15f instanceof Date)_0x22fbd9=_0x2fe15f['getUTCFullYear'](),_0x4bbf6c=_0x2fe15f['getUTCMonth']()+0x1,_0x6c1c2a=_0x2fe15f['getUTCDate']();else{if(_0x50b345[_0x425147(0x1f9)](typeof _0x2fe15f,_0x50b345['NLnoT'])){const _0x3631b0=_0x2fe15f[_0x425147(0x1bd)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x3631b0)_0x22fbd9=parseInt(_0x3631b0[0x1],0xa),_0x4bbf6c=parseInt(_0x3631b0[0x2],0xa),_0x6c1c2a=parseInt(_0x3631b0[0x3],0xa);else{const _0x2d86f1=_0x2fe15f['match'](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x2d86f1)_0x6c1c2a=_0x50b345[_0x425147(0x1da)](parseInt,_0x2d86f1[0x1],0xa),_0x4bbf6c=parseInt(_0x2d86f1[0x2],0xa),_0x22fbd9=_0x50b345['uhyri'](parseInt,_0x2d86f1[0x3],0xa);else{const _0x2d75ed=_0x2fe15f['match'](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x2d75ed&&(_0x22fbd9=parseInt(_0x2d75ed[0x1],0xa),_0x4bbf6c=parseInt(_0x2d75ed[0x2],0xa),_0x6c1c2a=parseInt(_0x2d75ed[0x3],0xa));}}}else{if(typeof _0x2fe15f===_0x425147(0x1ff)){const _0xa81ead=new Date(_0x2fe15f);!_0x50b345['VGmML'](isNaN,_0xa81ead['getTime']())&&(_0x22fbd9=_0xa81ead['getUTCFullYear'](),_0x4bbf6c=_0xa81ead[_0x425147(0x1d7)]()+0x1,_0x6c1c2a=_0xa81ead[_0x425147(0x1be)]());}}}if(_0x50b345[_0x425147(0x1c7)](!_0x22fbd9,!_0x4bbf6c)||!_0x6c1c2a)return null;const _0x2e603b=String(_0x6c1c2a)[_0x425147(0x1ed)](0x2,'0'),_0x3ee56a=String(_0x4bbf6c)[_0x425147(0x1ed)](0x2,'0'),_0x1286d3=_0x50b345['fzvnf'](String,_0x22fbd9),_0x8527eb=(_0x1c4c8a||_0x50b345[_0x425147(0x201)])[_0x425147(0x1f6)]();if(_0x50b345['PzrzS'](_0x8527eb,_0x50b345['VRBoy']))return _0x2e603b+'/'+_0x3ee56a+'/'+_0x1286d3;else{if(_0x50b345[_0x425147(0x1ce)](_0x8527eb,_0x50b345[_0x425147(0x204)]))return _0x3ee56a+'/'+_0x2e603b+'/'+_0x1286d3;else{if(_0x8527eb===_0x425147(0x1e3))return _0x1286d3+'-'+_0x3ee56a+'-'+_0x2e603b;else{if(_0x8527eb==='dd-mm-yyyy')return _0x2e603b+'-'+_0x3ee56a+'-'+_0x1286d3;else return _0x8527eb===_0x50b345['GkXrq']?_0x1286d3+'/'+_0x3ee56a+'/'+_0x2e603b:_0x2e603b+'/'+_0x3ee56a+'/'+_0x1286d3;}}}}['parseNumber'](_0x2a71a1){const _0x28046d=a0_0x3edcc2;if(typeof _0x2a71a1===_0x28046d(0x1ff))return _0x2a71a1;if(typeof _0x2a71a1==='string'){const _0x35d3c4=_0x2a71a1['replace'](/[^\d.-]/g,''),_0x3c82f8=parseFloat(_0x35d3c4);if(!isNaN(_0x3c82f8))return _0x3c82f8;}return null;}['preprocessTextColumns'](_0x12c4f4,_0x314d03,_0x269fe6){const _0x574d59={'tfcCC':function(_0x4ee2fc,_0x27ae95){return _0x4ee2fc===_0x27ae95;},'IJrxq':function(_0x4456f5,_0x50bc5c){return _0x4456f5!==_0x50bc5c;}};if(!_0x269fe6)return _0x12c4f4;const _0x1bd31c=[];_0x314d03['forEach'](_0x745752=>{const _0x182ce1=a0_0x58c2,_0x4e6217=_0x269fe6[_0x745752];_0x4e6217&&_0x4e6217['type']&&_0x574d59[_0x182ce1(0x1ef)](_0x4e6217['type'][_0x182ce1(0x1f6)](),'text')&&_0x1bd31c['push'](_0x745752);});if(_0x574d59['tfcCC'](_0x1bd31c['length'],0x0))return _0x12c4f4;return _0x12c4f4['map'](_0x30ce5f=>{const _0x43662c={'jFCVG':function(_0x14505a,_0x19300c){return _0x14505a!==_0x19300c;},'gNTvE':function(_0x3cf38d,_0x3dc50b){return _0x574d59['IJrxq'](_0x3cf38d,_0x3dc50b);},'OTQgM':function(_0x419e98,_0x5640fb){return _0x419e98+_0x5640fb;},'vWPJt':function(_0x506cde,_0x24238e){return _0x506cde(_0x24238e);}},_0x466e71={..._0x30ce5f};return _0x1bd31c['forEach'](_0x5323=>{const _0x2e7b2a=a0_0x58c2;_0x43662c[_0x2e7b2a(0x1e8)](_0x466e71[_0x5323],null)&&_0x43662c[_0x2e7b2a(0x1b6)](_0x466e71[_0x5323],undefined)&&(_0x466e71[_0x5323]=_0x43662c['OTQgM']('\x27',_0x43662c['vWPJt'](String,_0x466e71[_0x5323])));}),_0x466e71;});}[a0_0x3edcc2(0x1e7)](_0xa9d7fa,_0x71a9a4,_0x442978){const _0x435199=a0_0x3edcc2,_0x2222d5={'nxAci':function(_0x4406e8,_0x4a9692){return _0x4406e8===_0x4a9692;},'izzVB':_0x435199(0x1b3),'NqzZX':function(_0x481327,_0x5d36bf){return _0x481327!==_0x5d36bf;},'vuqUf':function(_0x3a167f,_0x29b2f0){return _0x3a167f+_0x29b2f0;},'dnXTj':function(_0x55dd53,_0x1bef89){return _0x55dd53(_0x1bef89);}};if(!_0x442978)return _0xa9d7fa;const _0x1ef23c=[];_0x71a9a4['forEach'](_0x2c07c3=>{const _0x2c1055=_0x435199,_0x31eec7=_0x442978[_0x2c07c3];_0x31eec7&&_0x31eec7[_0x2c1055(0x1b9)]&&_0x2222d5[_0x2c1055(0x203)](_0x31eec7[_0x2c1055(0x1b9)]['toLowerCase'](),_0x2222d5['izzVB'])&&_0x1ef23c[_0x2c1055(0x1e1)](_0x2c07c3);});if(_0x2222d5[_0x435199(0x203)](_0x1ef23c['length'],0x0))return _0xa9d7fa;const _0x3e4d8f={..._0xa9d7fa};return _0x1ef23c['forEach'](_0x738d09=>{const _0x3e826f=_0x435199;_0x2222d5[_0x3e826f(0x1a9)](_0x3e4d8f[_0x738d09],null)&&_0x2222d5[_0x3e826f(0x1a9)](_0x3e4d8f[_0x738d09],undefined)&&(_0x3e4d8f[_0x738d09]=_0x2222d5['vuqUf']('\x27',_0x2222d5['dnXTj'](String,_0x3e4d8f[_0x738d09])));}),_0x3e4d8f;}}module[a0_0x3edcc2(0x1d3)]=ExcelGenerator;
1
+ function a0_0x182f(_0x5115fb,_0x193663){_0x5115fb=_0x5115fb-0x189;const _0x5dc0eb=a0_0x5dc0();let _0x182fb9=_0x5dc0eb[_0x5115fb];if(a0_0x182f['LBwsjp']===undefined){var _0x294735=function(_0x5cdebc){const _0x56f352='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xba4f80='',_0x2c37cf='';for(let _0x2996fa=0x0,_0x2f8b60,_0xd76f24,_0x29a84c=0x0;_0xd76f24=_0x5cdebc['charAt'](_0x29a84c++);~_0xd76f24&&(_0x2f8b60=_0x2996fa%0x4?_0x2f8b60*0x40+_0xd76f24:_0xd76f24,_0x2996fa++%0x4)?_0xba4f80+=String['fromCharCode'](0xff&_0x2f8b60>>(-0x2*_0x2996fa&0x6)):0x0){_0xd76f24=_0x56f352['indexOf'](_0xd76f24);}for(let _0x6ae3a5=0x0,_0x1ce134=_0xba4f80['length'];_0x6ae3a5<_0x1ce134;_0x6ae3a5++){_0x2c37cf+='%'+('00'+_0xba4f80['charCodeAt'](_0x6ae3a5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2c37cf);};a0_0x182f['wKcVxq']=_0x294735,a0_0x182f['IbCNkS']={},a0_0x182f['LBwsjp']=!![];}const _0x3582c2=_0x5dc0eb[0x0],_0x41df59=_0x5115fb+_0x3582c2,_0x2abaa6=a0_0x182f['IbCNkS'][_0x41df59];return!_0x2abaa6?(_0x182fb9=a0_0x182f['wKcVxq'](_0x182fb9),a0_0x182f['IbCNkS'][_0x41df59]=_0x182fb9):_0x182fb9=_0x2abaa6,_0x182fb9;}const a0_0x2b1cea=a0_0x182f;(function(_0x153bd2,_0x316ed6){const _0x702e9f=a0_0x182f,_0x2daf9f=_0x153bd2();while(!![]){try{const _0x1f7f2f=parseInt(_0x702e9f(0x1fa))/0x1*(parseInt(_0x702e9f(0x198))/0x2)+-parseInt(_0x702e9f(0x1b5))/0x3*(parseInt(_0x702e9f(0x1c0))/0x4)+parseInt(_0x702e9f(0x1c9))/0x5+parseInt(_0x702e9f(0x1f3))/0x6*(parseInt(_0x702e9f(0x19e))/0x7)+-parseInt(_0x702e9f(0x18e))/0x8+parseInt(_0x702e9f(0x194))/0x9+-parseInt(_0x702e9f(0x1dc))/0xa;if(_0x1f7f2f===_0x316ed6)break;else _0x2daf9f['push'](_0x2daf9f['shift']());}catch(_0x16eb4f){_0x2daf9f['push'](_0x2daf9f['shift']());}}}(a0_0x5dc0,0x31bdb));const ExcelJS=require('exceljs'),{logger}=require(a0_0x2b1cea(0x1ed));function a0_0x5dc0(){const _0x1eb740=['zgf0zq','zgvIDwC','zgqTBw0TExL5Eq','rgf0yq','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','ntGZmtC2ve1bENLO','wLbsq0u','y3vYCMvUy3K','AKL3BKm','rgnQrMO','v29YA2jVB2TxCML0zxi','mZu4mdeXovf3zuHdBG','DuPhr1q','iLjWiciJlcmJma','Bwf0y2G','mJbLtuvXue0','Cgf0DgvYBG','rKzgrKzgrKy','vKznDvO','rvHqt1jux0nivu5lx1njwKu','u3fXyLq','nZDlDxLXAuS','zM9YrwfJAa','CMvWBgfJzq','tMXltgi','z2v0vvrdtw9UDgG','iYWJiZaUmda','ywvlEgG','ywXPz25Tzw50','tvDwv1C','zxHJzwXFz2vUzxjHDgLVBL9JB21WBgv0zq','DwruCNu','Dg9mB3DLCKnHC2u','z2v0vgLTzq','zxHWB3j0CW','zM9UDa','wujMDhC','y2H1BMTtAxPL','zMLSBa','sLbzExC','z2v0vvrdrgf0zq','zM9YBwf0q2vSBa','zM9YBwf0rgf0zvn0CMLUzW','rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','ou1JzxfgDa','zM9YBwf0sgvHzgvY','rK9usvC','BwLKzgXL','Bw0VzgqVExL5Eq','C3rYzwfT','DwTlD28','CM91BMq','y2vPBa','z2v0q2vSBa','BgvUz3rO','mJa4nZqWs3bmwgDi','BNvTrM10','ExL5Es9TBs9Kza','y29TBwL0','A2v5CW','z3j0v3K','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','tffWD1m','ENf6vwq','mta0nZaYmfnJwxP1vG','ywrKuM93','DMfSDwu','y2vUDgvY','te9rC0m','AgLMAei','ywrKv29YA3nOzwv0','uhvIEei','zgqVBw0VExL5Eq','CgfKu3rHCNq','q1bJy1a','yNPItfq','sxLYANu','A1nUAfi','C3rYAw5N','wvvytMO','D3jPDgvgAwXL','zNn2zLC','DhLWzq','otiWnZm4mhPrwLbjtG','zgXnqNm','rNH6q1i','BNvTyMvY','rxj6wKi','BuHKu3q','z2vUzxjHDgvtDhjLyw1PBMC','BgvMDa','C3r5Bgu','y09Tu2m','CLPUuvy','DMLLD3m','Dgv4Da','v29YA2jVB2S','z2v0rxHJzwXgB3jTyxq','CgfYC2voDw1Izxi','Aw5MBW','lI9SB2DNzxi','Aw5JBhvKzxm','A0XUzKO','z2v0uM93','reqVtu0VwvLzwq','DujTBem','mJaXnJi0Ce5JAMXV','yMLPBw8','y29SDw1UCW','z2v0vvrdrNvSBfLLyxi','rKy0ndCYqZq','BwfW','zxHJzwXFy2H1BMTFChjVy2vZC2vK','mZC3mdLAuKTjvNq','uKjKyNG'];a0_0x5dc0=function(){return _0x1eb740;};return a0_0x5dc0();}class ExcelGenerator{constructor(){const _0x29ab95=a0_0x2b1cea,_0x11b5b5={'gJiVx':function(_0x45abc4,_0x582018,_0x17e48a){return _0x45abc4(_0x582018,_0x17e48a);}};this['chunkSize']=_0x11b5b5['gJiVx'](parseInt,process['env'][_0x29ab95(0x19c)],0xa)||0x3e8;}async['generate'](_0x417603){const _0x5dea4a=a0_0x2b1cea,{data:_0x486cb8,columns:_0x157d00,columnFormats:_0x4975d4,fieldLabels:_0x3a53dc,filePath:_0x426189,onProgress:_0x327a48}=_0x417603;logger[_0x5dea4a(0x1ec)]({'event':'excel_generation_start','rows':_0x486cb8[_0x5dea4a(0x1bf)],'columns':_0x157d00?.[_0x5dea4a(0x1bf)]||'auto','columnFormats':_0x4975d4?Object['keys'](_0x4975d4):null,'fieldLabels':_0x3a53dc?Object['keys'](_0x3a53dc):null,'streaming':_0x486cb8[_0x5dea4a(0x1bf)]>this['chunkSize']},'Excel\x20generation\x20started');if(_0x486cb8[_0x5dea4a(0x1bf)]<=this[_0x5dea4a(0x1ae)])return await this['generateSimple'](_0x486cb8,_0x157d00,_0x4975d4,_0x3a53dc,_0x426189,_0x327a48);return await this[_0x5dea4a(0x1e2)](_0x486cb8,_0x157d00,_0x4975d4,_0x3a53dc,_0x426189,_0x327a48);}async['generateSimple'](_0x2235e9,_0x3c10c2,_0x2b4ea6,_0x4060e6,_0x3996ad,_0xc9326d){const _0x412ef1=a0_0x2b1cea,_0x312938={'Iyrju':'date','PubxB':'pattern','LQpwS':'FF4472C4','VCHVp':'center','dlMBs':function(_0x377408,_0x3ae28d){return _0x377408(_0x3ae28d);},'PIkht':_0x412ef1(0x1a7)},_0x32c7ee=new ExcelJS[(_0x412ef1(0x1e9))](),_0x2ccbb2=_0x32c7ee['addWorksheet'](_0x412ef1(0x18c)),_0x167ba6=_0x3c10c2||(_0x2235e9[_0x412ef1(0x1bf)]>0x0?Object['keys'](_0x2235e9[0x0]):[]);_0x2ccbb2[_0x412ef1(0x1f5)]=_0x167ba6[_0x412ef1(0x1f8)](_0x980f9a=>{const _0x141ea2=_0x412ef1,_0x32deb6={'header':this[_0x141ea2(0x1b6)](_0x980f9a,_0x4060e6),'key':_0x980f9a,'width':0x14};if(_0x2b4ea6&&_0x2b4ea6[_0x980f9a]){const _0x34dd0b=_0x2b4ea6[_0x980f9a];if(_0x34dd0b[_0x141ea2(0x1db)]&&_0x34dd0b[_0x141ea2(0x1db)]['toLowerCase']()!==_0x312938[_0x141ea2(0x1d5)]){const _0x5920ce=this[_0x141ea2(0x1ea)](_0x34dd0b);_0x5920ce&&(_0x32deb6['style']={'numFmt':_0x5920ce});}}return _0x32deb6;}),_0x2ccbb2[_0x412ef1(0x1f0)](0x1)[_0x412ef1(0x1ac)]={'bold':!![],'color':{'argb':'FFFFFFFF'}},_0x2ccbb2['getRow'](0x1)[_0x412ef1(0x1af)]={'type':_0x312938[_0x412ef1(0x1d0)],'pattern':'solid','fgColor':{'argb':_0x312938[_0x412ef1(0x1c7)]}},_0x2ccbb2['getRow'](0x1)['alignment']={'vertical':_0x412ef1(0x1b8),'horizontal':_0x312938['VCHVp']};const _0x139610=_0x2b4ea6?this['preprocessTextColumns'](_0x2235e9,_0x167ba6,_0x2b4ea6):_0x2235e9;return _0x2ccbb2['addRows'](_0x139610),_0x2b4ea6&&this['applyCellFormatting'](_0x2ccbb2,_0x167ba6,_0x2b4ea6,_0x2235e9[_0x412ef1(0x1bf)]),_0xc9326d&&await _0x312938[_0x412ef1(0x1dd)](_0xc9326d,0x32),_0x2ccbb2['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x167ba6[_0x412ef1(0x1bf)]}},_0x2ccbb2[_0x412ef1(0x1e7)]=[{'state':'frozen','xSplit':0x0,'ySplit':0x1}],await _0x32c7ee['xlsx'][_0x412ef1(0x1d9)](_0x3996ad),_0xc9326d&&await _0xc9326d(0x64),logger['info']({'event':_0x312938['PIkht'],'method':'simple','rows':_0x2235e9[_0x412ef1(0x1bf)]},_0x412ef1(0x1b4)),_0x3996ad;}async['generateStreaming'](_0x12a3fd,_0xa7a828,_0x23f763,_0x5118ab,_0x49cf4e,_0xbda2d4){const _0x507bdc=a0_0x2b1cea,_0x16f80e={'hifhB':function(_0x4a6fa6,_0x21bd8a){return _0x4a6fa6+_0x21bd8a;},'SqqbT':function(_0x541202,_0x59483f){return _0x541202!==_0x59483f;},'OVvQU':_0x507bdc(0x189),'dwoQN':_0x507bdc(0x199),'MeCYC':'solid','SNGrD':_0x507bdc(0x1f7),'nIrPC':_0x507bdc(0x1b8),'JPYyw':function(_0x1ab363,_0x1afe6a){return _0x1ab363<_0x1afe6a;},'rZnQV':function(_0x3639df,_0x8e85db){return _0x3639df*_0x8e85db;},'DcjFj':function(_0x207868,_0x201302){return _0x207868/_0x201302;},'VFMuZ':function(_0x1f7cc9,_0x30f8a0){return _0x1f7cc9(_0x30f8a0);},'BtfBp':_0x507bdc(0x1f9),'gYJxO':'excel_generation_complete','Tdcdi':function(_0x571b03,_0x4c8660){return _0x571b03/_0x4c8660;}},_0x567543=new ExcelJS[(_0x507bdc(0x1ba))]['xlsx'][(_0x507bdc(0x193))]({'filename':_0x49cf4e,'useStyles':!![],'useSharedStrings':!![]}),_0x23b641=_0x567543[_0x507bdc(0x1cf)](_0x507bdc(0x18c)),_0x12766f=_0xa7a828||(_0x12a3fd['length']>0x0?Object[_0x507bdc(0x1c4)](_0x12a3fd[0x0]):[]),_0x53df51={};_0x12766f[_0x507bdc(0x19f)]((_0x2abff3,_0x4543dd)=>{const _0x544663=_0x507bdc;_0x53df51[_0x2abff3]=_0x16f80e[_0x544663(0x1ce)](_0x4543dd,0x1);}),_0x23b641['columns']=_0x12766f['map'](_0x21eb56=>{const _0x9e835c=_0x507bdc,_0x5c77c0={'header':this[_0x9e835c(0x1b6)](_0x21eb56,_0x5118ab),'key':_0x21eb56,'width':0x14};if(_0x23f763&&_0x23f763[_0x21eb56]){const _0x37af07=_0x23f763[_0x21eb56];if(_0x37af07[_0x9e835c(0x1db)]&&_0x16f80e[_0x9e835c(0x19d)](_0x37af07[_0x9e835c(0x1db)]['toLowerCase'](),_0x16f80e['OVvQU'])){const _0x26073f=this[_0x9e835c(0x1ea)](_0x37af07);_0x26073f&&(_0x5c77c0[_0x9e835c(0x1e4)]={'numFmt':_0x26073f});}}return _0x5c77c0;});const _0x52bdb9=_0x23b641[_0x507bdc(0x1f0)](0x1);_0x52bdb9[_0x507bdc(0x1ac)]={'bold':!![],'color':{'argb':_0x507bdc(0x19a)}},_0x52bdb9[_0x507bdc(0x1af)]={'type':_0x16f80e['dwoQN'],'pattern':_0x16f80e['MeCYC'],'fgColor':{'argb':_0x16f80e['SNGrD']}},_0x52bdb9[_0x507bdc(0x1a5)]={'vertical':_0x16f80e['nIrPC'],'horizontal':_0x507bdc(0x1cc)},_0x52bdb9['commit']();const _0x426bb9=_0x12a3fd['length'];let _0x56f784=0x0;for(let _0xe41251=0x0;_0x16f80e[_0x507bdc(0x1b0)](_0xe41251,_0x426bb9);_0xe41251+=this['chunkSize']){const _0x458519=_0x12a3fd['slice'](_0xe41251,_0x16f80e[_0x507bdc(0x1ce)](_0xe41251,this['chunkSize']));for(const _0x43c067 of _0x458519){const _0xd967a=_0x23f763?this['preprocessTextRow'](_0x43c067,_0x12766f,_0x23f763):_0x43c067,_0x376fd4=_0x23b641[_0x507bdc(0x1ca)](_0xd967a);_0x23f763&&this['applyRowFormatting'](_0x376fd4,_0xd967a,_0x12766f,_0x23f763),_0x376fd4[_0x507bdc(0x1c3)](),_0x56f784++;}if(_0xbda2d4){const _0x24746f=Math[_0x507bdc(0x1bc)](_0x16f80e[_0x507bdc(0x1e6)](_0x16f80e[_0x507bdc(0x192)](_0x56f784,_0x426bb9),0x64));await _0x16f80e[_0x507bdc(0x19b)](_0xbda2d4,_0x24746f);}logger[_0x507bdc(0x18a)]({'event':_0x16f80e['BtfBp'],'processed':_0x56f784,'total':_0x426bb9},'Processed\x20'+_0x56f784+'/'+_0x426bb9+'\x20rows');}return _0x23b641['commit'](),await _0x567543['commit'](),logger['info']({'event':_0x16f80e['gYJxO'],'method':'streaming','rows':_0x426bb9,'chunks':Math[_0x507bdc(0x1bd)](_0x16f80e['Tdcdi'](_0x426bb9,this['chunkSize']))},_0x507bdc(0x18d)),_0x49cf4e;}[a0_0x2b1cea(0x1b6)](_0x434e9f,_0x4aca75){const _0x2c0502={'OYECK':function(_0x48f4a2,_0x18b4e9){return _0x48f4a2(_0x18b4e9);}};if(_0x4aca75&&_0x4aca75[_0x434e9f])return _0x4aca75[_0x434e9f];return _0x2c0502['OYECK'](String,_0x434e9f)['toUpperCase']();}['validateColumns'](_0x665a3f,_0x725a4c){const _0x56c9f4=a0_0x2b1cea;if(!_0x725a4c||_0x725a4c[_0x56c9f4(0x1bf)]===0x0)return!![];if(_0x665a3f[_0x56c9f4(0x1bf)]===0x0)return!![];const _0x35381a=Object[_0x56c9f4(0x1c4)](_0x665a3f[0x0]),_0x4d7c7f=_0x725a4c['filter'](_0x4fcf0f=>!_0x35381a[_0x56c9f4(0x1ee)](_0x4fcf0f));if(_0x4d7c7f[_0x56c9f4(0x1bf)]>0x0)throw new Error('Invalid\x20columns:\x20'+_0x4d7c7f['join'](',\x20'));return!![];}['getExcelFormat'](_0x5896d7){const _0x405829=a0_0x2b1cea,_0x1a4ed2={'CPccP':'date','nrtwH':'number','RBdbx':function(_0x3d92bf,_0x8a2a5f){return _0x3d92bf||_0x8a2a5f;},'LOQsC':_0x405829(0x196),'NCDOd':'0.00%','bzbLT':'text'};if(!_0x5896d7||!_0x5896d7[_0x405829(0x1db)])return null;const {type:_0xc2cfc4,format:_0x44a1f1}=_0x5896d7;switch(_0xc2cfc4[_0x405829(0x1a9)]()){case _0x1a4ed2[_0x405829(0x1d3)]:return _0x44a1f1?_0x44a1f1[_0x405829(0x1a9)]():_0x405829(0x1d1);case _0x1a4ed2['nrtwH']:return _0x44a1f1||_0x405829(0x1a3);case _0x405829(0x190):return _0x1a4ed2[_0x405829(0x1fb)](_0x44a1f1,_0x1a4ed2[_0x405829(0x1cd)]);case'percentage':return _0x44a1f1||_0x1a4ed2['NCDOd'];case _0x1a4ed2[_0x405829(0x1d4)]:return'@';default:return null;}}['applyCellFormatting'](_0x1a69ec,_0x1fe6e0,_0x144f94,_0x1f89ba){const _0x5d6f9c={'ErzZB':function(_0x4342ce,_0x4a62a3){return _0x4342ce<=_0x4a62a3;}};if(!_0x144f94)return;_0x1fe6e0['forEach']((_0x11bf0e,_0x696f3f)=>{const _0x15c450=a0_0x182f,_0x2581ba=_0x144f94[_0x11bf0e];if(!_0x2581ba)return;const _0x41407d=_0x696f3f+0x1;for(let _0x5d606d=0x2;_0x5d6f9c[_0x15c450(0x1e0)](_0x5d606d,_0x1f89ba+0x1);_0x5d606d++){const _0x1dfa72=_0x1a69ec[_0x15c450(0x1be)](_0x5d606d,_0x41407d);this[_0x15c450(0x1b2)](_0x1dfa72,_0x2581ba);}});}['applyRowFormatting'](_0x3bd9ee,_0x394d45,_0x398c2e,_0x5e0246){const _0x1db7a2=a0_0x2b1cea,_0x5c3fcd={'mHdSt':function(_0x3dfb3d,_0x217ed8){return _0x3dfb3d+_0x217ed8;}};if(!_0x5e0246)return;_0x398c2e[_0x1db7a2(0x19f)]((_0x15c66d,_0x1c9dbd)=>{const _0x5aa07b=_0x1db7a2,_0x55e61b=_0x5e0246[_0x15c66d];if(!_0x55e61b)return;const _0x17b977=_0x3bd9ee[_0x5aa07b(0x1be)](_0x5c3fcd[_0x5aa07b(0x1e1)](_0x1c9dbd,0x1));this[_0x5aa07b(0x1b2)](_0x17b977,_0x55e61b);});}[a0_0x2b1cea(0x1b2)](_0x2d38ff,_0x4845a9){const _0x45a1b7=a0_0x2b1cea,_0x256f6e={'FOTIW':function(_0x5dad33,_0x4d15fa){return _0x5dad33===_0x4d15fa;},'MCfad':function(_0x33a6a4,_0x3b3709){return _0x33a6a4!==_0x3b3709;},'CqfHp':function(_0x5951b9,_0x446782){return _0x5951b9(_0x446782);}};if(!_0x4845a9||!_0x4845a9['type'])return;const {type:_0x26f28a,format:_0x122306}=_0x4845a9;if(_0x256f6e[_0x45a1b7(0x1b7)](_0x26f28a[_0x45a1b7(0x1a9)](),'date')&&_0x2d38ff[_0x45a1b7(0x1cb)]){const _0x2096bc=this[_0x45a1b7(0x1b3)](_0x2d38ff['value'],_0x122306);_0x2096bc&&(_0x2d38ff['value']=_0x2096bc);return;}if((_0x26f28a[_0x45a1b7(0x1a9)]()===_0x45a1b7(0x1df)||_0x26f28a[_0x45a1b7(0x1a9)]()===_0x45a1b7(0x190)||_0x26f28a[_0x45a1b7(0x1a9)]()==='percentage')&&_0x2d38ff['value']){const _0x313de1=this[_0x45a1b7(0x1eb)](_0x2d38ff['value']);if(_0x256f6e['MCfad'](_0x313de1,null)){_0x2d38ff[_0x45a1b7(0x1cb)]=_0x313de1;const _0x4d60aa=this['getExcelFormat'](_0x4845a9);_0x4d60aa&&(_0x2d38ff[_0x45a1b7(0x1c1)]=_0x4d60aa);}}_0x26f28a[_0x45a1b7(0x1a9)]()===_0x45a1b7(0x1e8)&&_0x2d38ff[_0x45a1b7(0x1cb)]&&(_0x2d38ff[_0x45a1b7(0x1c1)]='@',typeof _0x2d38ff['value']!=='string'&&(_0x2d38ff['value']=_0x256f6e['CqfHp'](String,_0x2d38ff['value'])),_0x2d38ff['alignment']={'horizontal':_0x45a1b7(0x1e3),'vertical':_0x45a1b7(0x1b8)});}[a0_0x2b1cea(0x1b3)](_0x97196a,_0x368b27){const _0x41c2a5=a0_0x2b1cea,_0x57a8be={'udTru':function(_0x744482,_0x16506b){return _0x744482 instanceof _0x16506b;},'grtWy':function(_0x1cbd5c,_0x7ef7fb){return _0x1cbd5c+_0x7ef7fb;},'jIwnC':function(_0x5c7416,_0x97ae0c){return _0x5c7416===_0x97ae0c;},'kSnhR':function(_0x1fafe6,_0x22a0d7,_0x5c4675){return _0x1fafe6(_0x22a0d7,_0x5c4675);},'kLnfJ':function(_0x28c420,_0x19afee,_0x4bc409){return _0x28c420(_0x19afee,_0x4bc409);},'cOmSc':function(_0xa9e161,_0x1d936c,_0x57cfd0){return _0xa9e161(_0x1d936c,_0x57cfd0);},'ZPRCE':function(_0x448787,_0x4e2aaa){return _0x448787===_0x4e2aaa;},'YfSGe':function(_0x302955,_0x47fe2a){return _0x302955||_0x47fe2a;},'tXlpf':function(_0x37f60b,_0x29028b){return _0x37f60b(_0x29028b);},'ukKwo':function(_0x2c01c0,_0x5199ab){return _0x2c01c0(_0x5199ab);},'biimo':_0x41c2a5(0x1f1),'FmzIN':function(_0x4a0342,_0x5a94d7){return _0x4a0342===_0x5a94d7;},'YUXNj':_0x41c2a5(0x1b9),'fYMEo':'yyyy-mm-dd','QorPp':_0x41c2a5(0x18b),'lAFDC':_0x41c2a5(0x1c2)};if(!_0x97196a)return null;let _0x1c06ea,_0x3e35f4,_0x9a6cd3;if(_0x57a8be[_0x41c2a5(0x1a8)](_0x97196a,Date))_0x1c06ea=_0x97196a[_0x41c2a5(0x1f6)](),_0x3e35f4=_0x57a8be[_0x41c2a5(0x1c5)](_0x97196a[_0x41c2a5(0x1a2)](),0x1),_0x9a6cd3=_0x97196a[_0x41c2a5(0x1b1)]();else{if(_0x57a8be[_0x41c2a5(0x191)](typeof _0x97196a,_0x41c2a5(0x1d7))){const _0x37bf70=_0x97196a[_0x41c2a5(0x197)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x37bf70)_0x1c06ea=parseInt(_0x37bf70[0x1],0xa),_0x3e35f4=_0x57a8be[_0x41c2a5(0x1d6)](parseInt,_0x37bf70[0x2],0xa),_0x9a6cd3=_0x57a8be['kSnhR'](parseInt,_0x37bf70[0x3],0xa);else{const _0x288ec8=_0x97196a['match'](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x288ec8)_0x9a6cd3=parseInt(_0x288ec8[0x1],0xa),_0x3e35f4=parseInt(_0x288ec8[0x2],0xa),_0x1c06ea=_0x57a8be[_0x41c2a5(0x1ef)](parseInt,_0x288ec8[0x3],0xa);else{const _0x3a3db4=_0x97196a[_0x41c2a5(0x197)](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x3a3db4&&(_0x1c06ea=_0x57a8be[_0x41c2a5(0x1d6)](parseInt,_0x3a3db4[0x1],0xa),_0x3e35f4=_0x57a8be[_0x41c2a5(0x1e5)](parseInt,_0x3a3db4[0x2],0xa),_0x9a6cd3=parseInt(_0x3a3db4[0x3],0xa));}}}else{if(_0x57a8be[_0x41c2a5(0x18f)](typeof _0x97196a,_0x41c2a5(0x1df))){const _0x37d1a9=new Date(_0x97196a);!isNaN(_0x37d1a9[_0x41c2a5(0x1aa)]())&&(_0x1c06ea=_0x37d1a9['getUTCFullYear'](),_0x3e35f4=_0x37d1a9['getUTCMonth']()+0x1,_0x9a6cd3=_0x37d1a9[_0x41c2a5(0x1b1)]());}}}if(_0x57a8be['YfSGe'](!_0x1c06ea,!_0x3e35f4)||!_0x9a6cd3)return null;const _0x391889=_0x57a8be['tXlpf'](String,_0x9a6cd3)[_0x41c2a5(0x1d2)](0x2,'0'),_0x3037d4=_0x57a8be[_0x41c2a5(0x1bb)](String,_0x3e35f4)[_0x41c2a5(0x1d2)](0x2,'0'),_0x34574a=_0x57a8be['ukKwo'](String,_0x1c06ea),_0x4efe32=(_0x368b27||_0x57a8be[_0x41c2a5(0x1f4)])['toLowerCase']();if(_0x4efe32==='dd/mm/yyyy')return _0x391889+'/'+_0x3037d4+'/'+_0x34574a;else{if(_0x57a8be['FmzIN'](_0x4efe32,_0x57a8be[_0x41c2a5(0x1d8)]))return _0x3037d4+'/'+_0x391889+'/'+_0x34574a;else{if(_0x57a8be[_0x41c2a5(0x18f)](_0x4efe32,_0x57a8be['fYMEo']))return _0x34574a+'-'+_0x3037d4+'-'+_0x391889;else{if(_0x57a8be['FmzIN'](_0x4efe32,_0x57a8be['QorPp']))return _0x391889+'-'+_0x3037d4+'-'+_0x34574a;else return _0x4efe32===_0x57a8be['lAFDC']?_0x34574a+'/'+_0x3037d4+'/'+_0x391889:_0x391889+'/'+_0x3037d4+'/'+_0x34574a;}}}}['parseNumber'](_0x20b517){const _0x1c61ba=a0_0x2b1cea,_0x4bfac0={'aeKxh':function(_0x535bac,_0x2c6223){return _0x535bac===_0x2c6223;},'ZOOMU':function(_0x39c4fe,_0x406afd){return _0x39c4fe===_0x406afd;},'lFqHY':_0x1c61ba(0x1d7),'fsvfW':function(_0x17e3b4,_0x19905d){return _0x17e3b4(_0x19905d);},'WVtVT':function(_0x267958,_0x1b76be){return _0x267958(_0x1b76be);}};if(_0x4bfac0[_0x1c61ba(0x1a4)](typeof _0x20b517,'number'))return _0x20b517;if(_0x4bfac0['ZOOMU'](typeof _0x20b517,_0x4bfac0['lFqHY'])){const _0x2fde74=_0x20b517[_0x1c61ba(0x1a0)](/[^\d.-]/g,''),_0x5185bc=_0x4bfac0[_0x1c61ba(0x1da)](parseFloat,_0x2fde74);if(!_0x4bfac0['WVtVT'](isNaN,_0x5185bc))return _0x5185bc;}return null;}[a0_0x2b1cea(0x1c6)](_0x21ba84,_0x589658,_0x22ab46){const _0x4aa1e0={'YBftw':function(_0x1b98a3,_0x401041){return _0x1b98a3===_0x401041;},'uBmlC':'text'};if(!_0x22ab46)return _0x21ba84;const _0x35ee97=[];_0x589658['forEach'](_0x4b0b55=>{const _0xa2146d=a0_0x182f,_0x5ef652=_0x22ab46[_0x4b0b55];_0x5ef652&&_0x5ef652[_0xa2146d(0x1db)]&&_0x4aa1e0[_0xa2146d(0x1ad)](_0x5ef652[_0xa2146d(0x1db)][_0xa2146d(0x1a9)](),_0x4aa1e0[_0xa2146d(0x1f2)])&&_0x35ee97['push'](_0x4b0b55);});if(_0x35ee97['length']===0x0)return _0x21ba84;return _0x21ba84['map'](_0x3afbe5=>{const _0x38ab28={'FxzCR':function(_0x5cd453,_0x49ecdf){return _0x5cd453+_0x49ecdf;},'kCQAt':function(_0x21049f,_0x347e3a){return _0x21049f(_0x347e3a);}},_0x1c69ae={..._0x3afbe5};return _0x35ee97['forEach'](_0x551cc7=>{const _0x146149=a0_0x182f;_0x1c69ae[_0x551cc7]!==null&&_0x1c69ae[_0x551cc7]!==undefined&&(_0x1c69ae[_0x551cc7]=_0x38ab28[_0x146149(0x1de)]('\x27',_0x38ab28['kCQAt'](String,_0x1c69ae[_0x551cc7])));}),_0x1c69ae;});}['preprocessTextRow'](_0x127648,_0x36e41c,_0x5c0731){const _0x160490=a0_0x2b1cea,_0x5d41bf={'zqzUd':function(_0x1b6aed,_0x1431a3){return _0x1b6aed===_0x1431a3;},'KyylC':function(_0x4b65c2,_0x5477ab){return _0x4b65c2!==_0x5477ab;},'MWVWW':function(_0x344a54,_0x59417f){return _0x344a54!==_0x59417f;},'NlKLb':function(_0x37f595,_0x320f54){return _0x37f595(_0x320f54);},'uJGGT':function(_0x58e3b4,_0x3c8167){return _0x58e3b4===_0x3c8167;}};if(!_0x5c0731)return _0x127648;const _0x190fdd=[];_0x36e41c['forEach'](_0xba5490=>{const _0x4ec29a=a0_0x182f,_0x30ce94=_0x5c0731[_0xba5490];_0x30ce94&&_0x30ce94['type']&&_0x5d41bf[_0x4ec29a(0x1c8)](_0x30ce94['type'][_0x4ec29a(0x1a9)](),_0x4ec29a(0x1e8))&&_0x190fdd['push'](_0xba5490);});if(_0x5d41bf[_0x160490(0x195)](_0x190fdd['length'],0x0))return _0x127648;const _0x3d822f={..._0x127648};return _0x190fdd['forEach'](_0x102720=>{const _0x47432c=_0x160490;_0x5d41bf['KyylC'](_0x3d822f[_0x102720],null)&&_0x5d41bf[_0x47432c(0x1a6)](_0x3d822f[_0x102720],undefined)&&(_0x3d822f[_0x102720]='\x27'+_0x5d41bf[_0x47432c(0x1a1)](String,_0x3d822f[_0x102720]));}),_0x3d822f;}}module[a0_0x2b1cea(0x1ab)]=ExcelGenerator;
@@ -1 +1 @@
1
- const a0_0x563120=a0_0x15f2;(function(_0x56992e,_0x3dd032){const _0xdf241b=a0_0x15f2,_0x3543aa=_0x56992e();while(!![]){try{const _0x248009=parseInt(_0xdf241b(0x101))/0x1*(parseInt(_0xdf241b(0xfa))/0x2)+parseInt(_0xdf241b(0xdb))/0x3*(-parseInt(_0xdf241b(0x107))/0x4)+-parseInt(_0xdf241b(0xe7))/0x5*(parseInt(_0xdf241b(0xe2))/0x6)+parseInt(_0xdf241b(0x108))/0x7+-parseInt(_0xdf241b(0xe3))/0x8*(-parseInt(_0xdf241b(0xe9))/0x9)+-parseInt(_0xdf241b(0x105))/0xa+parseInt(_0xdf241b(0xe1))/0xb;if(_0x248009===_0x3dd032)break;else _0x3543aa['push'](_0x3543aa['shift']());}catch(_0x1fde14){_0x3543aa['push'](_0x3543aa['shift']());}}}(a0_0x324f,0xca2e7));function a0_0x324f(){const _0x37bd1c=['Bwf0y2G','DhjPBq','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq','BM9YBwfSAxPLq2vSBfzHBhvL','z2v0rgf0zq','AM9PBG','mtaWotHiD2X6Cgy','CMLJAfrLEhq','CgfYC2vfEgnLBezPBgu','ELHtAMe','mtq1oti5mezWBwHzyG','rxHJzwWGzMLSzsbWyxjZzwqGC3vJy2vZC2z1BgX5','mtzqy05jEwW','mJqYntC2nM1Qt1LOrG','nJiZnJy3we9dze54','Aw5MBW','Dgv4Da','BM9YBwfSAxPLsgvHzgvY','zxHJzwXQCW','BwfW','ody0ota2ouz0rgLtCG','mZzHBvPSBeO','mJmYAurKs1PV','EvPts0y','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu6ia','mta3nde5mfDowwLrsq','jdfFjdi','mtC5nta1r0Hsvwfo','BgvUz3rO','z2v0tw9UDgG','zfD5Ahm','CMvWBgfJzq','DMfSDwvZ','C2XPy2u','CgfKu3rHCNq','C3rYAw5N','CMvZDwX0','Cuj2Duy','B2jQzwn0','Dg9mB3DLCKnHC2u','zxHJzwXFCgfYC2vK','qunWD04','BwvZC2fNzq','zMLSDgvY','mJC0DM5ur3DW'];a0_0x324f=function(){return _0x37bd1c;};return a0_0x324f();}const ExcelJS=require(a0_0x563120(0xdf)),{logger}=require('./logger');class ExcelParser{async[a0_0x563120(0x103)](_0x506a5c){const _0x2941a7=a0_0x563120,_0x267bba={'ACpwN':function(_0x1dd1fa,_0x130749){return _0x1dd1fa===_0x130749;},'qNTKC':_0x2941a7(0xf6),'dWyhs':'excel_parse_error'};try{const _0x2a692e=new ExcelJS['Workbook']();await _0x2a692e['xlsx']['readFile'](_0x506a5c);const _0x5d13ae=_0x2a692e['worksheets'][0x0];if(!_0x5d13ae)throw new Error('No\x20worksheet\x20found\x20in\x20Excel\x20file');const _0x35c2ac=[];let _0x2dd1ef=[];return _0x5d13ae['eachRow']((_0x5a6f17,_0x3ba153)=>{const _0x2e1cef=_0x2941a7,_0x55d455={'gMTZx':function(_0x333236,_0x5d92a0){return _0x333236+_0x5d92a0;}},_0x3684d5=_0x5a6f17[_0x2e1cef(0xee)];if(_0x267bba[_0x2e1cef(0xf7)](_0x3ba153,0x1))_0x2dd1ef=_0x3684d5[_0x2e1cef(0xef)](0x1)[_0x2e1cef(0xe0)](_0x478d19=>this[_0x2e1cef(0xde)](_0x478d19));else{const _0x2ba7cf={};_0x2dd1ef['forEach']((_0xeb948a,_0x2c9017)=>{const _0x5aca7d=_0x2e1cef,_0x5a9854=_0x3684d5[_0x55d455['gMTZx'](_0x2c9017,0x1)];_0x2ba7cf[_0xeb948a]=this[_0x5aca7d(0xfe)](_0x5a9854);}),_0x35c2ac['push'](_0x2ba7cf);}}),logger[_0x2941a7(0xdc)]({'event':_0x267bba['qNTKC'],'filePath':_0x506a5c,'totalRows':_0x35c2ac['length'],'headers':_0x2dd1ef[_0x2941a7(0xea)]},_0x2941a7(0x106)),{'headers':_0x2dd1ef,'rows':_0x35c2ac,'totalRows':_0x35c2ac[_0x2941a7(0xea)]};}catch(_0x608960){logger['error']({'event':_0x267bba[_0x2941a7(0xec)],'filePath':_0x506a5c,'error':_0x608960['message']},_0x2941a7(0xe5));throw new Error(_0x2941a7(0xe6)+_0x608960[_0x2941a7(0xf8)]);}}[a0_0x563120(0xde)](_0x34bfa5){const _0xded6d=a0_0x563120,_0xd64522={'qBvuF':_0xded6d(0xe8)};if(_0x34bfa5===null||_0x34bfa5===undefined)return'';let _0x49dcda=String(_0x34bfa5)[_0xded6d(0xfc)]();return _0x49dcda=_0x49dcda[_0xded6d(0xed)](/\s+/g,'_')[_0xded6d(0xed)](/([a-z])([A-Z])/g,_0xd64522['qBvuF'])[_0xded6d(0xed)](/([A-Z]+)([A-Z][a-z])/g,_0xd64522[_0xded6d(0xf3)])[_0xded6d(0xf5)](),_0x49dcda;}[a0_0x563120(0xfe)](_0x200576){const _0x295b49=a0_0x563120,_0x44b4ec={'yZSKF':function(_0x524025,_0x31a913){return _0x524025(_0x31a913);},'zXSja':_0x295b49(0xf4),'LoBNW':function(_0x6f7078,_0x3bdac4){return _0x6f7078===_0x3bdac4;}};if(_0x200576===null||_0x200576===undefined)return null;if(_0x200576 instanceof Date){const _0x10b357=_0x200576['getFullYear'](),_0xa35654=String(_0x200576[_0x295b49(0xeb)]()+0x1)['padStart'](0x2,'0'),_0xd28c65=String(_0x200576[_0x295b49(0xff)]())[_0x295b49(0xf0)](0x2,'0');return _0x10b357+'-'+_0xa35654+'-'+_0xd28c65;}if(typeof _0x200576===_0x295b49(0xf1)){const _0x3e7397=_0x200576[_0x295b49(0xfb)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x3e7397){const _0xcde6d6=String(_0x3e7397[0x1])['padStart'](0x2,'0'),_0x13c54a=_0x44b4ec[_0x295b49(0xe4)](String,_0x3e7397[0x2])['padStart'](0x2,'0'),_0x3c5788=_0x3e7397[0x3];return _0x3c5788+'-'+_0x13c54a+'-'+_0xcde6d6;}}if(_0x200576&&typeof _0x200576===_0x44b4ec[_0x295b49(0x104)]&&_0x200576[_0x295b49(0x102)])return _0x200576[_0x295b49(0x102)]['map'](_0x57f3fc=>_0x57f3fc[_0x295b49(0xdd)])[_0x295b49(0x100)]('');if(_0x200576&&_0x44b4ec['LoBNW'](typeof _0x200576,'object')&&_0x200576[_0x295b49(0xf2)]!==undefined)return this[_0x295b49(0xfe)](_0x200576[_0x295b49(0xf2)]);if(_0x44b4ec['LoBNW'](typeof _0x200576,'string'))return _0x200576[_0x295b49(0xfc)]();return _0x200576;}[a0_0x563120(0xfd)](_0x2e670e,_0x138de2){const _0x2d8af9=a0_0x563120,_0x3e081d=new Set(_0x2e670e),_0x3276ea=new Set(_0x138de2),_0x5db319=_0x138de2['filter'](_0x2e7107=>!_0x3e081d['has'](_0x2e7107)),_0x194c16=_0x2e670e[_0x2d8af9(0xf9)](_0x206a38=>!_0x3276ea['has'](_0x206a38)),_0x3d7cc8=_0x5db319['length']===0x0;return{'valid':_0x3d7cc8,'missingFields':_0x5db319,'extraFields':_0x194c16};}}function a0_0x15f2(_0x31bddb,_0x49052d){_0x31bddb=_0x31bddb-0xdb;const _0x324ffc=a0_0x324f();let _0x15f243=_0x324ffc[_0x31bddb];if(a0_0x15f2['hoQHMT']===undefined){var _0x2d747e=function(_0x40a9de){const _0x488d62='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1754bd='',_0x79e68e='';for(let _0x3e8e38=0x0,_0xc644c7,_0x28dbfc,_0x1a8bcb=0x0;_0x28dbfc=_0x40a9de['charAt'](_0x1a8bcb++);~_0x28dbfc&&(_0xc644c7=_0x3e8e38%0x4?_0xc644c7*0x40+_0x28dbfc:_0x28dbfc,_0x3e8e38++%0x4)?_0x1754bd+=String['fromCharCode'](0xff&_0xc644c7>>(-0x2*_0x3e8e38&0x6)):0x0){_0x28dbfc=_0x488d62['indexOf'](_0x28dbfc);}for(let _0x3409ab=0x0,_0x360f96=_0x1754bd['length'];_0x3409ab<_0x360f96;_0x3409ab++){_0x79e68e+='%'+('00'+_0x1754bd['charCodeAt'](_0x3409ab)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x79e68e);};a0_0x15f2['nfXwbG']=_0x2d747e,a0_0x15f2['GLEcls']={},a0_0x15f2['hoQHMT']=!![];}const _0x1d014d=_0x324ffc[0x0],_0x1c0f8e=_0x31bddb+_0x1d014d,_0x137c34=a0_0x15f2['GLEcls'][_0x1c0f8e];return!_0x137c34?(_0x15f243=a0_0x15f2['nfXwbG'](_0x15f243),a0_0x15f2['GLEcls'][_0x1c0f8e]=_0x15f243):_0x15f243=_0x137c34,_0x15f243;}module['exports']=new ExcelParser();
1
+ function a0_0x3cd3(_0x1a2685,_0x4d56e2){_0x1a2685=_0x1a2685-0x9e;const _0x49669b=a0_0x4966();let _0x3cd34c=_0x49669b[_0x1a2685];if(a0_0x3cd3['jnimOw']===undefined){var _0x3599ec=function(_0x505fb2){const _0xe91eea='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x18d3d2='',_0x1661d4='';for(let _0x17dab4=0x0,_0x2e8844,_0x5cbafc,_0x5d2593=0x0;_0x5cbafc=_0x505fb2['charAt'](_0x5d2593++);~_0x5cbafc&&(_0x2e8844=_0x17dab4%0x4?_0x2e8844*0x40+_0x5cbafc:_0x5cbafc,_0x17dab4++%0x4)?_0x18d3d2+=String['fromCharCode'](0xff&_0x2e8844>>(-0x2*_0x17dab4&0x6)):0x0){_0x5cbafc=_0xe91eea['indexOf'](_0x5cbafc);}for(let _0x5a3aff=0x0,_0x34b7b7=_0x18d3d2['length'];_0x5a3aff<_0x34b7b7;_0x5a3aff++){_0x1661d4+='%'+('00'+_0x18d3d2['charCodeAt'](_0x5a3aff)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1661d4);};a0_0x3cd3['zDBBqE']=_0x3599ec,a0_0x3cd3['DcGhfj']={},a0_0x3cd3['jnimOw']=!![];}const _0x42aead=_0x49669b[0x0],_0xc1845f=_0x1a2685+_0x42aead,_0x43f1af=a0_0x3cd3['DcGhfj'][_0xc1845f];return!_0x43f1af?(_0x3cd34c=a0_0x3cd3['zDBBqE'](_0x3cd34c),a0_0x3cd3['DcGhfj'][_0xc1845f]=_0x3cd34c):_0x3cd34c=_0x43f1af,_0x3cd34c;}const a0_0x325f87=a0_0x3cd3;(function(_0x11ffe7,_0x2b5e2f){const _0x39a1b2=a0_0x3cd3,_0x35e3d4=_0x11ffe7();while(!![]){try{const _0x286d56=parseInt(_0x39a1b2(0xa6))/0x1+parseInt(_0x39a1b2(0xb5))/0x2+-parseInt(_0x39a1b2(0xb0))/0x3+parseInt(_0x39a1b2(0xc1))/0x4+-parseInt(_0x39a1b2(0xc6))/0x5*(parseInt(_0x39a1b2(0xa2))/0x6)+parseInt(_0x39a1b2(0xbc))/0x7*(parseInt(_0x39a1b2(0xb1))/0x8)+-parseInt(_0x39a1b2(0xa1))/0x9*(-parseInt(_0x39a1b2(0xb2))/0xa);if(_0x286d56===_0x2b5e2f)break;else _0x35e3d4['push'](_0x35e3d4['shift']());}catch(_0x3323f5){_0x35e3d4['push'](_0x35e3d4['shift']());}}}(a0_0x4966,0x64ca8));const ExcelJS=require(a0_0x325f87(0xa4)),{logger}=require('./logger');function a0_0x4966(){const _0x46b62d=['zMLSDgvY','mta5mdy4nw50yMjQsa','BwfW','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu6ia','BM9YBwfSAxPLsgvHzgvY','nJe3mZe5Efbpr0PK','mtHuDKXsCey','BwvZC2fNzq','zxHJzwXQCW','DhjPBq','nde5mxrutM54tq','zxHJzwXFCgfYC2vK','CMvWBgfJzq','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu','DM5cu3u','z2v0rgf0zq','yM5tD2W','Aw5MBW','AM9PBG','v3HrrKi','mtGYnJyWnfndDxveCq','mJrSwMv3yK4','mteWtNb3r2LO','CMvHzezPBgu','jdfFjdi','mJu3mdrVtKjmCg8','CgfYC2vfEgnLBezPBgu','CgfKu3rHCNq','AgfZ','wKfgugG','tgrfDeq','BgvUz3rO','mtCWnZm4ngfjBxDlyW','DMfSDwvZ','BM9YBwfSAxPLq2vSBfzHBhvL','CMLJAfrLEhq','zM9YrwfJAa','nJKXmZu2re13rwnN','zxHJzwXFCgfYC2vFzxjYB3i','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq','D1vvwgG'];a0_0x4966=function(){return _0x46b62d;};return a0_0x4966();}class ExcelParser{async[a0_0x325f87(0xb6)](_0x3fe556){const _0x21273b=a0_0x325f87,_0x8d54ab={'LdEtD':'No\x20worksheet\x20found\x20in\x20Excel\x20file','ZAFPh':_0x21273b(0xa7),'qTsFA':'Excel\x20file\x20parsed\x20successfully','ssqjs':_0x21273b(0xc2),'MHbkZ':_0x21273b(0xa9)};try{const _0xaeaa6=new ExcelJS['Workbook']();await _0xaeaa6['xlsx'][_0x21273b(0xb3)](_0x3fe556);const _0x1de1c2=_0xaeaa6['worksheets'][0x0];if(!_0x1de1c2)throw new Error(_0x8d54ab[_0x21273b(0xba)]);const _0x1a3a4f=[];let _0x1d040a=[];return _0x1de1c2['eachRow']((_0x2c4dc2,_0x1c3f55)=>{const _0xb9711=_0x21273b,_0x333218=_0x2c4dc2[_0xb9711(0xbd)];if(_0x1c3f55===0x1)_0x1d040a=_0x333218['slice'](0x1)[_0xb9711(0x9e)](_0x511733=>this[_0xb9711(0xa0)](_0x511733));else{const _0x5542e5={};_0x1d040a[_0xb9711(0xc0)]((_0x4b11e7,_0x5bbae4)=>{const _0xff553f=_0x333218[_0x5bbae4+0x1];_0x5542e5[_0x4b11e7]=this['normalizeCellValue'](_0xff553f);}),_0x1a3a4f['push'](_0x5542e5);}}),logger[_0x21273b(0xad)]({'event':_0x8d54ab[_0x21273b(0xb9)],'filePath':_0x3fe556,'totalRows':_0x1a3a4f[_0x21273b(0xbb)],'headers':_0x1d040a['length']},_0x8d54ab['qTsFA']),{'headers':_0x1d040a,'rows':_0x1a3a4f,'totalRows':_0x1a3a4f['length']};}catch(_0xe455cb){logger['error']({'event':_0x8d54ab['ssqjs'],'filePath':_0x3fe556,'error':_0xe455cb['message']},_0x8d54ab['MHbkZ']);throw new Error(_0x21273b(0x9f)+_0xe455cb[_0x21273b(0xa3)]);}}[a0_0x325f87(0xa0)](_0x1874ab){const _0x13ebd3=a0_0x325f87;if(_0x1874ab===null||_0x1874ab===undefined)return'';let _0x476842=String(_0x1874ab)['trim']();return _0x476842=_0x476842[_0x13ebd3(0xa8)](/\s+/g,'_')[_0x13ebd3(0xa8)](/([a-z])([A-Z])/g,_0x13ebd3(0xb4))['replace'](/([A-Z]+)([A-Z][a-z])/g,'$1_$2')['toLowerCase'](),_0x476842;}[a0_0x325f87(0xbe)](_0x40b2b7){const _0x52fe8c=a0_0x325f87,_0x4f3ea0={'bnSwl':function(_0x284d8b,_0x50bfc4){return _0x284d8b+_0x50bfc4;},'PTRwl':function(_0x17db42,_0x35dfae){return _0x17db42(_0x35dfae);},'wUUXh':'string','vnBSu':function(_0x28a91d,_0x15ee2c){return _0x28a91d===_0x15ee2c;},'zgTwk':'object','WxQFB':function(_0x1c79c9,_0x3c36e9){return _0x1c79c9===_0x3c36e9;}};if(_0x40b2b7===null||_0x40b2b7===undefined)return null;if(_0x40b2b7 instanceof Date){const _0x7e9f7e=_0x40b2b7['getFullYear'](),_0x1f27bf=String(_0x4f3ea0[_0x52fe8c(0xac)](_0x40b2b7['getMonth'](),0x1))[_0x52fe8c(0xb7)](0x2,'0'),_0x5eef46=_0x4f3ea0['PTRwl'](String,_0x40b2b7[_0x52fe8c(0xab)]())['padStart'](0x2,'0');return _0x7e9f7e+'-'+_0x1f27bf+'-'+_0x5eef46;}if(typeof _0x40b2b7===_0x4f3ea0[_0x52fe8c(0xc4)]){const _0x5634ff=_0x40b2b7['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x5634ff){const _0x373e5d=String(_0x5634ff[0x1])['padStart'](0x2,'0'),_0x321d1f=String(_0x5634ff[0x2])[_0x52fe8c(0xb7)](0x2,'0'),_0xbecfd1=_0x5634ff[0x3];return _0xbecfd1+'-'+_0x321d1f+'-'+_0x373e5d;}}if(_0x40b2b7&&typeof _0x40b2b7==='object'&&_0x40b2b7['richText'])return _0x40b2b7[_0x52fe8c(0xbf)]['map'](_0x4639e5=>_0x4639e5['text'])[_0x52fe8c(0xae)]('');if(_0x40b2b7&&_0x4f3ea0[_0x52fe8c(0xaa)](typeof _0x40b2b7,_0x4f3ea0['zgTwk'])&&_0x40b2b7['result']!==undefined)return this[_0x52fe8c(0xbe)](_0x40b2b7['result']);if(_0x4f3ea0[_0x52fe8c(0xaf)](typeof _0x40b2b7,'string'))return _0x40b2b7[_0x52fe8c(0xa5)]();return _0x40b2b7;}[a0_0x325f87(0xc3)](_0x3286e3,_0x246786){const _0x3a6d36=a0_0x325f87,_0x5e9b39={'yBDht':function(_0x457f9f,_0x7de134){return _0x457f9f===_0x7de134;}},_0x1d30d6=new Set(_0x3286e3),_0x42e4c8=new Set(_0x246786),_0x2c48fc=_0x246786['filter'](_0x227102=>!_0x1d30d6[_0x3a6d36(0xb8)](_0x227102)),_0x4eaa4a=_0x3286e3[_0x3a6d36(0xc5)](_0x2e0d30=>!_0x42e4c8['has'](_0x2e0d30)),_0x2d877e=_0x5e9b39['yBDht'](_0x2c48fc[_0x3a6d36(0xbb)],0x0);return{'valid':_0x2d877e,'missingFields':_0x2c48fc,'extraFields':_0x4eaa4a};}}module['exports']=new ExcelParser();
@@ -1 +1 @@
1
- const a0_0x21cb03=a0_0x5c2d;(function(_0x41b78e,_0x3553a9){const _0x25dfa9=a0_0x5c2d,_0x67afe5=_0x41b78e();while(!![]){try{const _0x340eea=parseInt(_0x25dfa9(0xdd))/0x1*(parseInt(_0x25dfa9(0xd6))/0x2)+-parseInt(_0x25dfa9(0xee))/0x3*(-parseInt(_0x25dfa9(0xa1))/0x4)+parseInt(_0x25dfa9(0xaf))/0x5*(parseInt(_0x25dfa9(0xd5))/0x6)+parseInt(_0x25dfa9(0x66))/0x7*(-parseInt(_0x25dfa9(0xa7))/0x8)+-parseInt(_0x25dfa9(0xa4))/0x9*(-parseInt(_0x25dfa9(0x6e))/0xa)+parseInt(_0x25dfa9(0xbe))/0xb+-parseInt(_0x25dfa9(0xc7))/0xc;if(_0x340eea===_0x3553a9)break;else _0x67afe5['push'](_0x67afe5['shift']());}catch(_0xc32327){_0x67afe5['push'](_0x67afe5['shift']());}}}(a0_0x2f32,0x6b4d6));const {v7:uuidv7}=require(a0_0x21cb03(0xac)),path=require('path'),fs=require('fs')[a0_0x21cb03(0xf2)],fsSync=require('fs'),redisHelper=require('../caching/redis-helper'),{logger,logError}=require(a0_0x21cb03(0x88)),dbType=(process['env'][a0_0x21cb03(0x92)]||'postgresql')[a0_0x21cb03(0x71)]();let executeQuery;if(dbType==='oracle'){const oracleDb=require('../database/db-oracle');executeQuery=(_0x599603,_0x5d65e1)=>oracleDb[a0_0x21cb03(0xf1)](_0x599603,_0x5d65e1);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0xd44082,_0x30aec2)=>mysqlDb[a0_0x21cb03(0xf1)](_0xd44082,_0x30aec2);}else executeQuery=require('../../core/utils/db')[a0_0x21cb03(0xf1)];}function a0_0x2f32(){const _0xda2e23=['y2HHCKf0','mtyYoduXmwvlvwLKCq','Bw9KDwXLtMfTzq','zxHWB3j0x2nSzwfUDxbFy29TCgXLDgu','zxHLy3v0zvf1zxj5','ChjVBwLZzxm','y3jLyxrLzf9HDa','lI4VlI4VzxHWB3j0CY8','zxHWB3j0rgLY','z2v0rMLSzvbHDgG','zxHWB3j0x2zPBgvFzgvSzxrLza','A2v5CW','CM91BMq','yNvPBgrxAgvYzunSyxvZzq','ChjVz3jLC3m','lI9LEgnLBc1Nzw5LCMf0B3i','qvnd','Dw5RBM93BL9VCgvYyxrVCG','DgTHvwO','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','nta4mZC5owfvD3vwrq','z0LZwMm','z2jivKu','Dw5SAw5R','sLrcv3u','EMTUqLi','ru5pru5u','rxHWB3j0ihnLCNzPy2uGAw5PDgLHBgL6zwq','mtKWsNfJrfDt','Aw5MBW','EefVyvC','Dg9mB3DLCKnHC2u','yNvPBgrpCMrLCKj5q2XHDxnL','C3vIC3rYAw5N','v0Lusca','B3jHy2XL','CMrfr3q','y29UzgL0Aw9UCW','qMn1Cvm','u2TPChbPBMCGAw52ywXPzcbJB25KAxrPB24','Dg9tDhjPBMC','AxnbCNjHEq','z0HZsu0','s2X3svy','y29TCgXLDgvK','Dw5iChq','qK13BfK','zvPoANO','BwfW','yuzivwe','rxHWB3j0ihbYB2nLC3nPBMCGC3rHCNrLza','CgP3sfm','z2v0sM9Iu3rHDhvZ','CgvUzgLUzW','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','AM9PBG','Dg9ju09tDhjPBMC','zxjYB3i','EhndEfy','zxHWB3j0x3nLCNzPy2vFAw5PDa','cK9srevsiejzia','v1jeyw0','rejFvfLqrq','zxHWB3j0x2zHAwXLza','BwTKAxjtEw5J','CMvWBgfJzq','C3rHDhvZ','qMLdBNu','zMLSzw5HBwu','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','rxHWB3j0igzPBguGzgvSzxrLza','u2TPChbPBMCGAw52ywXPzcbVCMrLCIbJBgf1C2u','yxzqtNa','zw50CMLLCW','B1zuv0q','z2v0sM9I','ignVBhvTBNmGzNjVBsbJB25MAwCGkg5VigrHDgeP','nhnfBKzgrG','zxHJzwXFy29SDw1UC19MCM9Tx2nVBMzPzW','CMvZB2X2zq','nZy2mtDSsu1zrMe','rMfPBgvKihrVigLUAxrPywXPEMuGzxHWB3j0ihnLCNzPy2u','zMv0y2HeyxrH','oevyAgnVua','DxbKyxrLsM9I','ChjVy2vZC2vKx3jVD3m','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','qxfrr04','DxvPza','z2vUzxjHDgu','zxHWB3j0x2zLDgnOx2vYCM9Y','odi4mtbuCNjLCu8','ignVBhvTBNmGkhDPBgrJyxjKihjLCxvLC3rLzcK','zxHJzwXFy29SDw1UC19MCM9Tx3f1zxj5x3jLC3vSDa','C0jLAKy','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','DhjPBq','ieLtie5vteW','ignVBhvTBNmGzNjVBsbXDwvYEsbYzxn1Bhq','vxnPBMCG','BMPJvhe','rMfPBgvKihrVihjLywqGzxHWB3j0ihf1zxj5igzPBgu6ia','revtqW','Cgf5Bg9Hza','zxHWB3j0x3bYB2nLC3nFzxjYB3i','zxHWB3j0CW','ndiWodiWnePWCKL0tG','zw5KCg9PBNroyw1L','cIaGicaGicaG','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','twDLD0m','C3rYAw5N','ignVBhvTBNmGzNjVBsbYzxf1zxn0','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','mte4mJqXndbcEhrVs3O','tvbhEMW','BwPlA0G','zMLSzv9WyxrO','BgvUz3rO','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','y3jLyxrLsM9I','cLDirvjfia','rxHWB3j0igPVyIbJCMvHDgvK','rxHWB3j0igzPBguGBM90igzVDw5K','whfdt3e','y29SDw1UCW','zMLSDgvY','tK9uieXjs0u','mtGWwxfwEwDs','mZjWuNL3qvK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','zxHWB3j0x3bYB2nLC3nPBMDFC3rHCNq','ALHzD1C','zxHWB3j0lq','C3rHCNrZv2L0Aa','cKzst00G','mZu0ndrOAe5Jvw0','zxHWB3j0x2zLDgnOx3n0yxj0','ChjVy2vZC2LUzW','Dg9vChbLCKnHC2u','BwvZC2fNzq','zgvMyxvSDa','D2fYBG','CMvHzezPBgvtEw5J','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','tuHdwei','CMfUzg9T','x2v4Cg9YDerPCG','yLjgDhi','y2XLyw51Ca','sgDmCwW','refivgC'];a0_0x2f32=function(){return _0xda2e23;};return a0_0x2f32();}function a0_0x5c2d(_0x581855,_0x2a3405){_0x581855=_0x581855-0x64;const _0x2f3249=a0_0x2f32();let _0x5c2d92=_0x2f3249[_0x581855];if(a0_0x5c2d['KmVkWQ']===undefined){var _0xdce85=function(_0x56a7f8){const _0x53ff98='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4a6efb='',_0x29f235='';for(let _0x160b71=0x0,_0x42d3f6,_0x272c65,_0x574357=0x0;_0x272c65=_0x56a7f8['charAt'](_0x574357++);~_0x272c65&&(_0x42d3f6=_0x160b71%0x4?_0x42d3f6*0x40+_0x272c65:_0x272c65,_0x160b71++%0x4)?_0x4a6efb+=String['fromCharCode'](0xff&_0x42d3f6>>(-0x2*_0x160b71&0x6)):0x0){_0x272c65=_0x53ff98['indexOf'](_0x272c65);}for(let _0x52875c=0x0,_0x29813d=_0x4a6efb['length'];_0x52875c<_0x29813d;_0x52875c++){_0x29f235+='%'+('00'+_0x4a6efb['charCodeAt'](_0x52875c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29f235);};a0_0x5c2d['CvksHf']=_0xdce85,a0_0x5c2d['ckxBJc']={},a0_0x5c2d['KmVkWQ']=!![];}const _0x1ee601=_0x2f3249[0x0],_0x573350=_0x581855+_0x1ee601,_0xe30f99=a0_0x5c2d['ckxBJc'][_0x573350];return!_0xe30f99?(_0x5c2d92=a0_0x5c2d['CvksHf'](_0x5c2d92),a0_0x5c2d['ckxBJc'][_0x573350]=_0x5c2d92):_0x5c2d92=_0xe30f99,_0x5c2d92;}class ExportService{constructor(){const _0x47d435=a0_0x21cb03;this[_0x47d435(0xe8)]=null;}get[a0_0x21cb03(0xf5)](){const _0x3e5043=a0_0x21cb03,_0x449cd9={'OgKYp':_0x3e5043(0xe2),'DAHTg':_0x3e5043(0x8f)};if(!this[_0x3e5043(0xe8)]){const _0x339e2d=process['env'][_0x3e5043(0xd7)]||_0x449cd9['OgKYp'];this[_0x3e5043(0xe8)]=process['env']['EXPORT_DIR']||path['join'](__dirname,_0x3e5043(0xf4)+_0x339e2d);try{!fsSync['existsSync'](this[_0x3e5043(0xe8)])&&fsSync[_0x3e5043(0x94)](this[_0x3e5043(0xe8)],{'recursive':!![]}),logger['info']({'event':_0x449cd9[_0x3e5043(0xec)],'dir':this[_0x3e5043(0xe8)]},_0x3e5043(0x6d));}catch(_0xa5c784){logError(_0xa5c784,{'event':'export_service_init_error'},_0x3e5043(0xa5));}}return this['_exportDir'];}['resolveExportQuery'](_0x39c676,_0x2dfb6f=null){const _0x4c563d=a0_0x21cb03,_0x25639d={'GQbhF':'file:','byzmd':'utf8','WRDam':'export_query_file_loaded','clrFD':function(_0x17e754,_0x44f397){return _0x17e754===_0x44f397;},'PWdjH':_0x4c563d(0x6c)};if(!_0x39c676||typeof _0x39c676!==_0x4c563d(0xc4))return _0x39c676;const _0x517e8a=_0x39c676[_0x4c563d(0xb4)]();if(!_0x517e8a[_0x4c563d(0xdb)](_0x25639d['GQbhF']))return _0x517e8a;const _0x281573=_0x517e8a['replace'](/^file:/,'')['trim']();if(!_0x281573)throw new Error('Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty');const _0x56fbfc=_0x2dfb6f||path['join'](process['cwd'](),_0x4c563d(0xbb)),_0x5960ed=path[_0x4c563d(0xa3)](_0x56fbfc,_0x281573);logger['info']({'event':'export_query_file_resolve','relativePath':_0x281573,'baseDir':_0x56fbfc,'absolutePath':_0x5960ed},_0x4c563d(0xe5)+_0x281573);if(!fsSync['existsSync'](_0x5960ed))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x5960ed);try{const _0x4aa569=fsSync[_0x4c563d(0xe4)](_0x5960ed,_0x25639d['byzmd']);if(!_0x4aa569||!_0x4aa569['trim']())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x5960ed);return logger[_0x4c563d(0x6f)]({'event':_0x25639d[_0x4c563d(0x91)],'file':_0x5960ed,'queryLength':_0x4aa569['length']},_0x4c563d(0x8a)+_0x4aa569['length']+'\x20chars)'),_0x4aa569[_0x4c563d(0xb4)]();}catch(_0x11a8db){if(_0x25639d['clrFD'](_0x11a8db['code'],_0x25639d['PWdjH']))throw new Error(_0x4c563d(0xaa)+_0x5960ed);throw new Error(_0x4c563d(0xb9)+_0x11a8db[_0x4c563d(0xe1)]);}}['generateJobId'](){const _0x18eac4=a0_0x21cb03,_0x3b86b1={'awvup':'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','YIkhZ':function(_0x2c76d4,_0x2905ed){return _0x2c76d4-_0x2905ed;},'NaMMC':function(_0x3ee4f3,_0x1fa97e){return _0x3ee4f3<_0x1fa97e;}},_0x42b0c6=_0x3b86b1['awvup'],_0x1db61f=Date['now']()[_0x18eac4(0x7a)](0x24),_0x37b106=uuidv7()['replace'](/-/g,'')[_0x18eac4(0x73)](0x0,_0x3b86b1['YIkhZ'](0xc,_0x1db61f['length'])),_0x5d6fa3=(_0x1db61f+_0x37b106)[_0x18eac4(0x73)](0x0,0xc);let _0x3a9c9c='';for(let _0x571d2e=0x0;_0x3b86b1['NaMMC'](_0x571d2e,0xc);_0x571d2e++){_0x5d6fa3[_0x571d2e]?_0x3a9c9c+=_0x5d6fa3[_0x571d2e]:_0x3a9c9c+=_0x42b0c6[_0x18eac4(0xed)](Math['floor'](Math[_0x18eac4(0xe7)]()*_0x42b0c6[_0x18eac4(0xcb)]));}return _0x3a9c9c;}async[a0_0x21cb03(0xcd)](_0x4a60f0){const _0x166caf=a0_0x21cb03,_0x57dd49={'utQRy':function(_0x1ed304,_0x4ebb19,_0x290fe9,_0x2559fb){return _0x1ed304(_0x4ebb19,_0x290fe9,_0x2559fb);},'sktQZ':_0x166caf(0x65),'xsCxV':_0x166caf(0xcf),'zknBR':_0x166caf(0x87)},_0x1d725d=this['generateJobId'](),_0x233e51={'job_id':_0x1d725d,'status':_0x166caf(0x87),'progress':0x0,'created_at':new Date()[_0x166caf(0x8c)](),'params':_0x4a60f0,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x1d725d,_0x233e51),logger[_0x166caf(0x6f)]({'event':'export_job_created','jobId':_0x1d725d,'params':_0x4a60f0},_0x57dd49[_0x166caf(0x8e)]),this['processJob'](_0x1d725d,_0x4a60f0)['catch'](_0x550f61=>{const _0x2bfe95=_0x166caf;_0x57dd49['utQRy'](logError,_0x550f61,{'event':_0x2bfe95(0xbc),'jobId':_0x1d725d},_0x57dd49['sktQZ']);}),{'job_id':_0x1d725d,'status':_0x57dd49[_0x166caf(0x6b)]};}async[a0_0x21cb03(0x86)](_0x4a8c09){const _0x4fe3e7=a0_0x21cb03,_0x1fdb7e={'gHsIM':'completed'},_0x401d1d=await redisHelper[_0x4fe3e7(0x9f)](_0x4a8c09);if(!_0x401d1d)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0x401d1d['job_id'],'status':_0x401d1d[_0x4fe3e7(0x96)],'progress':_0x401d1d[_0x4fe3e7(0xfb)],'total_rows':_0x401d1d['total_rows'],'processed_rows':_0x401d1d[_0x4fe3e7(0xa9)],'file_url':_0x401d1d[_0x4fe3e7(0x96)]===_0x1fdb7e[_0x4fe3e7(0x7c)]?'/api/'+_0x401d1d['params'][_0x4fe3e7(0xef)]+'/'+_0x401d1d['params'][_0x4fe3e7(0xbf)]+_0x4fe3e7(0x89)+_0x4a8c09:null,'error':_0x401d1d[_0x4fe3e7(0x8d)]||null,'created_at':_0x401d1d[_0x4fe3e7(0xf3)],'completed_at':_0x401d1d['completed_at']||null}};}async['processJob'](_0x1029e4,_0x233092){const _0x4f0e5f=a0_0x21cb03,_0xa56002={'qeUGx':_0x4f0e5f(0xd8),'WYJmK':_0x4f0e5f(0x84),'njcTq':'Export\x20completed\x20successfully','LAZMf':_0x4f0e5f(0x93)};try{await redisHelper[_0x4f0e5f(0xa8)](_0x1029e4,{'status':_0x4f0e5f(0xdf),'started_at':new Date()['toISOString']()}),logger[_0x4f0e5f(0x6f)]({'event':_0xa56002['qeUGx'],'jobId':_0x1029e4},_0xa56002['WYJmK']);const _0x2051a4=await this[_0x4f0e5f(0xa6)](_0x233092);await redisHelper['updateJob'](_0x1029e4,{'total_rows':_0x2051a4[_0x4f0e5f(0xcb)]});const _0x11bfc8=await this['generateExcel'](_0x1029e4,_0x2051a4,_0x233092);await redisHelper['updateJob'](_0x1029e4,{'status':_0x4f0e5f(0x7e),'progress':0x64,'file_path':_0x11bfc8,'completed_at':new Date()[_0x4f0e5f(0x8c)]()}),logger['info']({'event':'export_completed','jobId':_0x1029e4,'rows':_0x2051a4[_0x4f0e5f(0xcb)]},_0xa56002[_0x4f0e5f(0xb8)]);}catch(_0x41b451){logError(_0x41b451,{'event':_0xa56002['LAZMf'],'jobId':_0x1029e4},'Export\x20failed'),await redisHelper['updateJob'](_0x1029e4,{'status':'failed','error':_0x41b451['message'],'failed_at':new Date()[_0x4f0e5f(0x8c)]()});}}async['fetchData'](_0x5c608d){const _0x1107c3=a0_0x21cb03,_0x236beb={'aFHUa':function(_0x59634b,_0x184023){return _0x59634b===_0x184023;},'AqQGN':'_data','mjKkH':'Using\x20custom\x20exportQuery','KMeji':function(_0x320dfd,_0x44e0ab){return _0x320dfd>_0x44e0ab;},'bRFtr':function(_0x351dcf,_0x364391){return _0x351dcf(_0x364391);},'unHpt':_0x1107c3(0x75)};try{const {tableName:_0x5b479f,columns:_0x40cd44,exportQuery:_0x56879e,where:_0x5c6f41,sort_columns:_0x33d051}=_0x5c608d;if(!_0x5b479f||!_0x40cd44||_0x236beb[_0x1107c3(0x83)](_0x40cd44['length'],0x0))throw new Error('tableName\x20and\x20columns\x20are\x20required');const _0x16dc7a=_0x5b479f[_0x1107c3(0x95)](/\./g,'_')+_0x236beb[_0x1107c3(0xab)];let _0x4088dc;if(_0x56879e&&_0x56879e['trim']()){let _0x5809f3=_0x56879e;_0x56879e[_0x1107c3(0xb4)]()[_0x1107c3(0xdb)]('file:')&&(_0x5809f3=this['resolveExportQuery'](_0x56879e)),_0x4088dc=_0x1107c3(0x74)+_0x16dc7a+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x5809f3+'\x0a)',logger[_0x1107c3(0x6f)]({'event':'export_using_custom_query','query':_0x5809f3[_0x1107c3(0x73)](0x0,0x64)},_0x236beb[_0x1107c3(0xc9)]);}else{const _0x24abf3=_0x40cd44['map'](_0x3caeac=>_0x1107c3(0xc0)+_0x3caeac)[_0x1107c3(0x8b)](',');_0x4088dc=_0x1107c3(0x74)+_0x16dc7a+'\x20AS\x20(\x0a\x20\x20\x20\x20SELECT\x20'+_0x24abf3+'\x0a\x20\x20\x20\x20FROM\x20'+_0x5b479f+'\x0a)',logger['info']({'event':'export_using_auto_query','tableName':_0x5b479f,'columnCount':_0x40cd44[_0x1107c3(0xcb)]},_0x1107c3(0x99));}const _0x124d0e=!_0x40cd44||_0x236beb['aFHUa'](_0x40cd44[_0x1107c3(0xcb)],0x0)||_0x40cd44[_0x1107c3(0xcb)]===0x1&&(_0x40cd44[0x0]==='*'||_0x40cd44[0x0][_0x1107c3(0x71)]()==='all'),_0xfbdb2e=_0x124d0e?'*':_0x40cd44[_0x1107c3(0x8b)](',\x20');_0x4088dc+='\x0aSELECT\x20'+_0xfbdb2e+_0x1107c3(0xdc)+_0x16dc7a;if(_0x5c6f41){const _0x3c3b67=this[_0x1107c3(0xfa)](_0x5c6f41);_0x3c3b67&&(_0x4088dc+=_0x1107c3(0xce)+_0x3c3b67);}if(_0x33d051&&_0x236beb['KMeji'](_0x33d051['length'],0x0)){const _0x2c53df=this[_0x1107c3(0x72)](_0x33d051);_0x2c53df&&(_0x4088dc+=_0x1107c3(0x90)+_0x2c53df);}logger[_0x1107c3(0x6f)]({'event':_0x1107c3(0xde),'query':_0x4088dc[_0x1107c3(0x73)](0x0,0xc8)},'Fetching\x20data\x20from\x20database');const _0x232d57=await _0x236beb[_0x1107c3(0xe9)](executeQuery,_0x4088dc);let _0x2e2fab=_0x232d57;return dbType===_0x236beb[_0x1107c3(0x7f)]&&_0x232d57&&_0x236beb['KMeji'](_0x232d57[_0x1107c3(0xcb)],0x0)&&(_0x2e2fab=_0x232d57[_0x1107c3(0x82)](_0x27aece=>{const _0x71265e=_0x1107c3,_0x56bb29={};for(const [_0x491212,_0x5e6a6e]of Object[_0x71265e(0x9d)](_0x27aece)){_0x56bb29[_0x491212[_0x71265e(0x71)]()]=_0x5e6a6e;}return _0x56bb29;})),logger['info']({'event':'export_fetch_complete','rows':_0x2e2fab[_0x1107c3(0xcb)]},'Data\x20fetched\x20successfully'),_0x2e2fab;}catch(_0x222017){logError(_0x222017,{'event':_0x1107c3(0xae)},'Failed\x20to\x20fetch\x20data');throw _0x222017;}}['sanitizeValue'](_0x5cb2d6){const _0x41028a=a0_0x21cb03,_0xb58a36={'gbHVE':function(_0xaf2fac,_0x43d36f){return _0xaf2fac===_0x43d36f;}};if(_0xb58a36[_0x41028a(0x68)](typeof _0x5cb2d6,_0x41028a(0xc4)))return _0x5cb2d6['replace'](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')['trim']();else{if(Array[_0x41028a(0x7b)](_0x5cb2d6))return _0x5cb2d6[_0x41028a(0x82)](_0x4e487c=>this['sanitizeValue'](_0x4e487c));}return _0x5cb2d6;}[a0_0x21cb03(0xfa)](_0x20f9b4){const _0x419a40=a0_0x21cb03,_0x497344={'mXIzH':function(_0x19460d,_0x5b447c){return _0x19460d===_0x5b447c;},'kYLUg':function(_0x390cfa,_0x246474){return _0x390cfa||_0x246474;},'YjnCb':'invalid_condition','tkaUj':_0x419a40(0x79),'MHCXB':function(_0x18ae0f,_0xb14743){return _0x18ae0f!==_0xb14743;},'JTBWu':function(_0x2234d2,_0x32e05d){return _0x2234d2===_0x32e05d;},'WwssD':_0x419a40(0xc4),'KlwIV':'LIKE','YytPM':_0x419a40(0xd4),'qzHhm':'IS\x20NULL','pjwHS':'IS\x20NOT\x20NULL','XqCOq':_0x419a40(0xfe),'VaIIX':function(_0x27b1cb,_0x4680fe){return _0x27b1cb===_0x4680fe;},'BMwlY':'\x20OR\x20','kUiyA':'\x20AND\x20'};if(!_0x20f9b4||!_0x20f9b4['conditions']||_0x497344['VaIIX'](_0x20f9b4[_0x419a40(0x77)][_0x419a40(0xcb)],0x0))return'';const {logic:_0x3db26f,conditions:_0x22ae85}=_0x20f9b4,_0x2709fb=_0x3db26f&&_0x3db26f['toUpperCase']()==='OR'?_0x497344[_0x419a40(0x80)]:_0x497344['kUiyA'],_0x3c8756=_0x22ae85['map'](_0x17ff39=>{const _0x4511fe=_0x419a40,{key:_0x2171af,operator:_0x211b50,value:_0x50a991,sensitive:_0x16010a}=_0x17ff39;if(_0x497344['kYLUg'](!_0x2171af,!_0x211b50))return logger['warn']({'event':_0x497344['YjnCb'],'condition':_0x17ff39},_0x497344[_0x4511fe(0x64)]),null;const _0x33d087=this['sanitizeValue'](_0x50a991),_0x3a4388=_0x497344[_0x4511fe(0xe6)](_0x16010a,undefined)?_0x16010a:!![];let _0x1445fe=_0x2171af,_0x4a55cb=_0x33d087;!_0x3a4388&&(_0x1445fe='UPPER('+_0x2171af+')',_0x497344['mXIzH'](typeof _0x50a991,'string')&&(_0x4a55cb=_0x50a991['toUpperCase']()));const _0x27ece8=typeof _0x4a55cb==='string'?'\x27'+_0x4a55cb[_0x4511fe(0x95)](/'/g,'\x27\x27')+'\x27':_0x4a55cb;switch(_0x211b50[_0x4511fe(0xe0)]()){case'=':case'!=':case'<>':return _0x1445fe+'\x20'+_0x211b50+'\x20'+_0x27ece8;case'>':case'<':case'>=':case'<=':const _0x27ab67=_0x497344[_0x4511fe(0x6a)](typeof _0x33d087,_0x497344['WwssD'])?'\x27'+_0x33d087[_0x4511fe(0x95)](/'/g,'\x27\x27')+'\x27':_0x33d087;return _0x2171af+'\x20'+_0x211b50+'\x20'+_0x27ab67;case _0x497344[_0x4511fe(0x7d)]:case _0x497344['YytPM']:return _0x1445fe+'\x20'+_0x211b50+'\x20'+_0x27ece8;case'IN':if(Array[_0x4511fe(0x7b)](_0x33d087)){let _0x126834;return!_0x3a4388?_0x126834=_0x33d087['map'](_0x9b8a6c=>{const _0x3044e8=_0x4511fe,_0x423af3=_0x497344['mXIzH'](typeof _0x9b8a6c,'string')?_0x9b8a6c['toUpperCase']():_0x9b8a6c;return typeof _0x423af3==='string'?'\x27'+_0x423af3[_0x3044e8(0x95)](/'/g,'\x27\x27')+'\x27':_0x423af3;})['join'](',\x20'):_0x126834=_0x33d087['map'](_0x20f0dd=>typeof _0x20f0dd==='string'?'\x27'+_0x20f0dd[_0x4511fe(0x95)](/'/g,'\x27\x27')+'\x27':_0x20f0dd)[_0x4511fe(0x8b)](',\x20'),_0x1445fe+'\x20IN\x20('+_0x126834+')';}return _0x1445fe+'\x20IN\x20('+_0x27ece8+')';case _0x497344['qzHhm']:return _0x2171af+_0x4511fe(0xb5);case _0x497344[_0x4511fe(0x85)]:return _0x2171af+'\x20IS\x20NOT\x20NULL';default:logger[_0x4511fe(0xe3)]({'event':_0x497344[_0x4511fe(0xd1)],'operator':_0x211b50},_0x4511fe(0xc6));return _0x1445fe+'\x20=\x20'+_0x27ece8;}})['filter'](_0x49f647=>_0x49f647!==null);if(_0x3c8756[_0x419a40(0xcb)]===0x0)return'';return _0x3c8756[_0x419a40(0x8b)](_0x2709fb);}['buildOrderByClause'](_0x3255d7){const _0x53867c=a0_0x21cb03,_0x46e4f0={'gZEeE':'invalid_order','fmHPZ':_0x53867c(0xba),'BiCnu':function(_0x3d436d,_0x3405c4){return _0x3d436d===_0x3405c4;},'avPNp':function(_0x4f81aa,_0x35b363){return _0x4f81aa===_0x35b363;}};if(!_0x3255d7||_0x46e4f0[_0x53867c(0x97)](_0x3255d7[_0x53867c(0xcb)],0x0))return'';const _0x354c7a=_0x3255d7['map'](_0x3efed8=>{const _0x3b7198=_0x53867c,{column:_0x57e992,direction:_0x22ffc2}=_0x3efed8;if(!_0x57e992)return logger[_0x3b7198(0xe3)]({'event':_0x46e4f0['gZEeE'],'item':_0x3efed8},_0x3b7198(0x9b)),null;const _0x897610=_0x22ffc2&&_0x22ffc2['toUpperCase']()===_0x46e4f0['fmHPZ']?_0x3b7198(0xba):_0x3b7198(0xfd);return _0x57e992+'\x20'+_0x897610;})[_0x53867c(0xd3)](_0x1367af=>_0x1367af!==null);if(_0x46e4f0[_0x53867c(0x9c)](_0x354c7a[_0x53867c(0xcb)],0x0))return'';return _0x354c7a[_0x53867c(0x8b)](',\x20');}async['generateExcel'](_0x4f3553,_0x23298f,_0x18804b){const _0x5eb51c=a0_0x21cb03,_0x3f65b6={'jXYwW':function(_0x476bf1,_0x32a726){return _0x476bf1*_0x32a726;},'rdEGt':function(_0x377b9c,_0x2f18a7){return _0x377b9c/_0x2f18a7;},'eZNjz':function(_0x29aebc,_0x147b03){return _0x29aebc===_0x147b03;},'gIsZc':'all','xAoaW':function(_0x44fada,_0x4418a0){return _0x44fada>_0x4418a0;},'KSxPw':_0x5eb51c(0xc2),'vLSmG':'excel_columns_fallback','HgLql':_0x5eb51c(0xb1)},_0x304bdf=require(_0x5eb51c(0xfc)),_0x3339bf=new _0x304bdf(),_0x558c8e=_0x18804b[_0x5eb51c(0x98)]?_0x18804b['filename']+'-'+_0x4f3553:_0x5eb51c(0xda)+_0x4f3553,_0x317a9c=path[_0x5eb51c(0x8b)](this['exportDir'],_0x558c8e+'.xlsx');let _0x185add=_0x18804b[_0x5eb51c(0xd2)];const _0xa2a254=_0x185add&&_0x185add[_0x5eb51c(0xcb)]===0x1&&(_0x3f65b6[_0x5eb51c(0x81)](_0x185add[0x0],'*')||_0x3f65b6[_0x5eb51c(0x81)](_0x185add[0x0][_0x5eb51c(0x71)](),_0x3f65b6[_0x5eb51c(0x67)]));if(_0x3f65b6[_0x5eb51c(0x70)](_0x23298f['length'],0x0)){const _0x596756=Object[_0x5eb51c(0xf8)](_0x23298f[0x0]);if(_0xa2a254)_0x185add=_0x596756,logger['info']({'event':'excel_columns_select_all','columns':_0x185add},'Using\x20all\x20'+_0x185add[_0x5eb51c(0xcb)]+_0x5eb51c(0xb0));else{if(_0x185add&&_0x185add['length']>0x0){const _0x2c045c=_0x185add[_0x5eb51c(0xd3)](_0x3deb90=>_0x596756['includes'](_0x3deb90));_0x2c045c[_0x5eb51c(0xcb)]>0x0?(_0x185add=_0x2c045c,logger['info']({'event':_0x3f65b6['KSxPw'],'requestedColumns':_0x18804b['columns'],'validColumns':_0x185add},_0x5eb51c(0xb7)+_0x185add['length']+_0x5eb51c(0xc5))):(_0x185add=_0x596756,logger[_0x5eb51c(0xe3)]({'event':_0x3f65b6['vLSmG'],'requestedColumns':_0x18804b[_0x5eb51c(0xd2)],'availableColumns':_0x596756},_0x5eb51c(0xb3)+_0x596756[_0x5eb51c(0xcb)]+'\x20columns'));}else _0x185add=_0x596756,logger['info']({'event':_0x3f65b6[_0x5eb51c(0xeb)],'columns':_0x185add},'Using\x20'+_0x185add[_0x5eb51c(0xcb)]+_0x5eb51c(0xb6));}}else logger[_0x5eb51c(0x6f)]({'event':_0x5eb51c(0xa2),'columns':_0x185add},_0x5eb51c(0xb7)+(_0x185add?.['length']||0x0)+_0x5eb51c(0xa0));return await _0x3339bf[_0x5eb51c(0xad)]({'data':_0x23298f,'columns':_0x185add,'columnFormats':_0x18804b['columnFormats']||null,'fieldLabels':_0x18804b['fieldLabels']||null,'filePath':_0x317a9c,'onProgress':async _0xe0bd05=>{const _0x2169cf=_0x5eb51c;await redisHelper[_0x2169cf(0xa8)](_0x4f3553,{'progress':Math['round'](_0xe0bd05),'processed_rows':Math[_0x2169cf(0xf9)](_0x3f65b6[_0x2169cf(0xd9)](_0x3f65b6[_0x2169cf(0x76)](_0xe0bd05,0x64),_0x23298f[_0x2169cf(0xcb)]))});}}),_0x317a9c;}async[a0_0x21cb03(0xf6)](_0x25d2a9){const _0x3f5be2=a0_0x21cb03,_0x583ce0={'gJpzT':_0x3f5be2(0x7e),'iYcAA':function(_0x11d15e,_0x5da31a,_0x407c79,_0x106b0a){return _0x11d15e(_0x5da31a,_0x407c79,_0x106b0a);},'oVTWD':'export_file_not_found','MgewC':_0x3f5be2(0xd0)},_0x8ba801=await redisHelper[_0x3f5be2(0x9f)](_0x25d2a9);if(!_0x8ba801||_0x8ba801[_0x3f5be2(0x96)]!==_0x583ce0['gJpzT'])return null;try{return await fs['access'](_0x8ba801['file_path']),_0x8ba801['file_path'];}catch(_0x4e18f8){return _0x583ce0['iYcAA'](logError,_0x4e18f8,{'event':_0x583ce0[_0x3f5be2(0x9e)],'jobId':_0x25d2a9,'path':_0x8ba801['file_path']},_0x583ce0[_0x3f5be2(0xc3)]),null;}}async[a0_0x21cb03(0xea)](){const _0x59bf2e=a0_0x21cb03,_0x156885={'sBejF':function(_0x4f1b96,_0x43fc8f){return _0x4f1b96/_0x43fc8f;},'vESUz':function(_0x2aa3a7,_0x2ecbbc){return _0x2aa3a7*_0x2ecbbc;},'MPGzl':function(_0x20d310,_0x430f49){return _0x20d310>_0x430f49;},'LwgHq':_0x59bf2e(0xf7),'Zuhpv':_0x59bf2e(0x9a),'PudIF':'Failed\x20to\x20delete\x20export\x20file','BcuqS':_0x59bf2e(0xf0),'ttWdo':_0x59bf2e(0xc1)};logger[_0x59bf2e(0x6f)]({'event':'export_cleanup_start'},_0x59bf2e(0xcc));const _0x178ead=await redisHelper['getAllJobs']();let _0x1cf725=0x0;for(const _0xf8ee62 of _0x178ead){const _0x1b65cc=new Date(_0xf8ee62[_0x59bf2e(0xf3)]),_0xd86e4b=new Date(),_0x2e8645=_0x156885[_0x59bf2e(0xb2)](_0xd86e4b-_0x1b65cc,_0x156885['vESUz'](0x3e8,0x3c)*0x3c);if(_0x156885[_0x59bf2e(0xc8)](_0x2e8645,0x1)){if(_0xf8ee62['file_path'])try{await fs[_0x59bf2e(0x69)](_0xf8ee62['file_path']),logger['info']({'event':_0x156885['LwgHq'],'path':_0xf8ee62[_0x59bf2e(0xca)]},_0x156885['Zuhpv']);}catch(_0x263421){logger['warn']({'event':'export_file_delete_error','path':_0xf8ee62['file_path'],'error':_0x263421[_0x59bf2e(0xe1)]},_0x156885['PudIF']);}await redisHelper['deleteJob'](_0xf8ee62['job_id']),_0x1cf725++;}}return logger['info']({'event':_0x156885[_0x59bf2e(0x78)],'deleted':_0x1cf725},_0x156885['ttWdo']),_0x1cf725;}}module[a0_0x21cb03(0xbd)]=new ExportService();
1
+ const a0_0xc43792=a0_0x15f8;function a0_0x15f8(_0x4871a5,_0x267c03){_0x4871a5=_0x4871a5-0x105;const _0x439236=a0_0x4392();let _0x15f850=_0x439236[_0x4871a5];if(a0_0x15f8['RtkvUc']===undefined){var _0x25b926=function(_0x51b220){const _0x2d8b3e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4acc47='',_0xc58192='';for(let _0x23d05a=0x0,_0x18a189,_0x5c2a13,_0x4be57b=0x0;_0x5c2a13=_0x51b220['charAt'](_0x4be57b++);~_0x5c2a13&&(_0x18a189=_0x23d05a%0x4?_0x18a189*0x40+_0x5c2a13:_0x5c2a13,_0x23d05a++%0x4)?_0x4acc47+=String['fromCharCode'](0xff&_0x18a189>>(-0x2*_0x23d05a&0x6)):0x0){_0x5c2a13=_0x2d8b3e['indexOf'](_0x5c2a13);}for(let _0x267cc7=0x0,_0x32cbf5=_0x4acc47['length'];_0x267cc7<_0x32cbf5;_0x267cc7++){_0xc58192+='%'+('00'+_0x4acc47['charCodeAt'](_0x267cc7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc58192);};a0_0x15f8['eymfHL']=_0x25b926,a0_0x15f8['JuWCPJ']={},a0_0x15f8['RtkvUc']=!![];}const _0x53bb25=_0x439236[0x0],_0x3a96b9=_0x4871a5+_0x53bb25,_0x4a550c=a0_0x15f8['JuWCPJ'][_0x3a96b9];return!_0x4a550c?(_0x15f850=a0_0x15f8['eymfHL'](_0x15f850),a0_0x15f8['JuWCPJ'][_0x3a96b9]=_0x15f850):_0x15f850=_0x4a550c,_0x15f850;}(function(_0x328ee5,_0x2f5a4f){const _0x46b440=a0_0x15f8,_0x458e3c=_0x328ee5();while(!![]){try{const _0x343707=parseInt(_0x46b440(0x106))/0x1*(parseInt(_0x46b440(0x14a))/0x2)+-parseInt(_0x46b440(0x177))/0x3+-parseInt(_0x46b440(0x192))/0x4+parseInt(_0x46b440(0x147))/0x5*(-parseInt(_0x46b440(0x163))/0x6)+-parseInt(_0x46b440(0x152))/0x7+-parseInt(_0x46b440(0x154))/0x8+parseInt(_0x46b440(0x114))/0x9*(parseInt(_0x46b440(0x132))/0xa);if(_0x343707===_0x2f5a4f)break;else _0x458e3c['push'](_0x458e3c['shift']());}catch(_0x1f238b){_0x458e3c['push'](_0x458e3c['shift']());}}}(a0_0x4392,0xecde9));const {v7:uuidv7}=require(a0_0xc43792(0x112)),path=require(a0_0xc43792(0x110)),fs=require('fs')['promises'],fsSync=require('fs'),redisHelper=require('../caching/redis-helper'),{logger,logError}=require('../../core/utils/logger'),dbType=(process[a0_0xc43792(0x139)][a0_0xc43792(0x11c)]||'postgresql')[a0_0xc43792(0x13d)]();let executeQuery;function a0_0x4392(){const _0x37b296=['CMvHzezPBgvtEw5J','ChjVz3jLC3m','y29TCgXLDgvK','C3rHDhvZ','D2fYBG','ChjVy2vZC2LUzW','mw9oD0jkwa','x2v4Cg9YDerPCG','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','CM91BMq','zxHWB3j0x2zLDgnOx2vYCM9Y','z2v0sM9I','CMvZB2X2zuv4Cg9YDff1zxj5','yMnzr3q','A2v5CW','rKn1vxy','Cgf0Aa','CeDuyKW','DxvPza','C3vIC3rYAw5N','mZC4mZu5otfJA0Ldyu8','svmGtK9uie5vteW','A2LiBeu','Cwj5Cxe','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','zxHWB3j0x3f1zxj5x2zPBgvFCMvZB2X2zq','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','zxHJzwXFy29SDw1UC19ZzwXLy3rFywXS','rejFvfLqrq','BwvZC2fNzq','zxHWB3j0x2zPBgvFzgvSzxrLza','t09qBLe','whHfuKS','AM9Ix2LK','ywXS','y2f0y2G','Bu9uEfO','cLnftevdvca','Dw5SAw5R','zMXVB3i','BwfW','lNHSC3G','uLHrugG','C3rHCNrZv2L0Aa','x2rHDge','z2vUzxjHDgvkB2jjza','zxHWB3j0x2zLDgnOx2nVBxbSzxrL','yMPzyLi','zMv0y2HeyxrH','tNjLs3K','mtbusgzvCe8','sM9JyLC','yNvPBgrpCMrLCKj5q2XHDxnL','zMLSDgvY','u1vjuva','rxHWB3j0igzPBguGzgvSzxrLza','ywnJzxnZ','zw52','l2fWAs8','D0PPuhK','y2HHCKf0','Dg9mB3DLCKnHC2u','Dw5RBM93BL9VCgvYyxrVCG','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','vxnPBMCG','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','ChjVy2vZC0PVyG','q1L3qMy','CMvWBgfJzq','zMLLBgrmywjLBhm','z2v0qwXSsM9ICW','otaZotv3AgXUDwW','B3jHy2XL','ie9sia','mZq2mZC3ohjwq0TLvW','AM9PBG','swrMzeG','BgvUz3rO','rvHqt1jux0rjuG','zxHWB3j0CW','zxjYB3i','thPWvhm','ndK3mJeYmxbUvvHOqW','zxHWB3j0x2zPBgvFBM90x2zVDw5K','ndi1mtyXnLbivuDbDa','s2HcDwO','ieLtie5pvcbovuXm','yNvPBgrxAgvYzunSyxvZzq','ru5pru5u','vxnPBMCGywXSia','zNHYAxK','CgvUzgLUzW','txP0EeC','tK9uieXjs0u','z2vUzxjHDgvfEgnLBa','q2rgDe0','zMLSzv9WyxrO','Aw5MBW','zxHLy3v0zvf1zxj5','ndC0wuneqLjS','v0Lusca','DxrMoa','uffOy3K','vvbqrviO','id0G','cKzst00G','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','zxHWB3j0x3vZAw5Nx2n1C3rVBv9XDwvYEq','Cu13ALa','rxHWB3j0igzHAwXLza','zxHWB3j0x3vZAw5Nx2f1Dg9FCxvLCNK','zxHJzwXFy29SDw1UC19MCM9Tx3f1zxj5x3jLC3vSDa','revtqW','DhjPBq','rMv0y2HPBMCGzgf0ysbMCM9TigrHDgfIyxnL','AeD3uKi','CgfYyw1Z','C2DjqKS','ndi2ndyYmgDjveX4zq','D09nC2i','C3rYAw5N','DxbKyxrLsM9I','Dg9ju09tDhjPBMC','AxnbCNjHEq','C2fUAxrPEMvwywX1zq','u2TPChbPBMCGAw52ywXPzcbJB25KAxrPB24','y29SDw1UrM9YBwf0CW','zgvMyxvSDa','zxHWB3j0lq','BK1NyuC','ufbus08','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','y29TCgXLDgvKx2f0','ignOyxjZkq','zxHWB3j0rgLY','y29SDw1UCW','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','rxHWB3j0igzPBguGBM90igzVDw5K','tMTLz3i','rxHWB3j0ihbYB2nLC3nPBMCGC3rHCNrLza','CMfUzg9T','zxHWB3j0x3nLCNzPy2vFAw5PDf9LCNjVCG','zxHWB3j0x3bYB2nLC3nFzxjYB3i','CMvZB2X2zq','ieLtie5vteW','mZq5nJu0mgHtvg1ZDa','sezbtvq','zMLSztO','y0LJsMu','wgzQq0i','Aw52ywXPzf9VCMrLCG','Dg9vChbLCKnHC2u','cK9srevsiejzia','rurWAwi'];a0_0x4392=function(){return _0x37b296;};return a0_0x4392();}if(dbType==='oracle'){const oracleDb=require(a0_0xc43792(0x13f));executeQuery=(_0x471ca6,_0x38896f)=>oracleDb[a0_0xc43792(0x162)](_0x471ca6,_0x38896f);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x516d27,_0x55dcdd)=>mysqlDb['executeQuery'](_0x516d27,_0x55dcdd);}else executeQuery=require('../../core/utils/db')['executeQuery'];}class ExportService{constructor(){this['_exportDir']=null;}get[a0_0xc43792(0x187)](){const _0x522f32=a0_0xc43792,_0x16fda8={'cIcJe':_0x522f32(0x180),'DrVvw':'export_service_init','PmPMr':function(_0x9e8069,_0x3689b3,_0x5f4192,_0x233927){return _0x9e8069(_0x3689b3,_0x5f4192,_0x233927);},'rqROY':_0x522f32(0x18e),'yuLMI':'Failed\x20to\x20initialize\x20export\x20service'};if(!this[_0x522f32(0x107)]){const _0x2d4097=process[_0x522f32(0x139)]['RESTFORGE_PROJECT_NAME']||_0x16fda8[_0x522f32(0x195)];this['_exportDir']=process[_0x522f32(0x139)][_0x522f32(0x14e)]||path['join'](__dirname,'../../exports/'+_0x2d4097);try{!fsSync['existsSync'](this[_0x522f32(0x107)])&&fsSync['mkdirSync'](this['_exportDir'],{'recursive':!![]}),logger[_0x522f32(0x161)]({'event':_0x16fda8['DrVvw'],'dir':this['_exportDir']},'Export\x20service\x20initialized');}catch(_0xd9766f){_0x16fda8['PmPMr'](logError,_0xd9766f,{'event':_0x16fda8['rqROY']},_0x16fda8['yuLMI']);}}return this['_exportDir'];}['resolveExportQuery'](_0x17ee47,_0x219a24=null){const _0x53f012=a0_0xc43792,_0xe9fc2d={'wOMsb':function(_0x5369a0,_0x46a940){return _0x5369a0!==_0x46a940;},'CdFtM':_0x53f012(0x194),'CTJvm':_0x53f012(0x165),'bjYbR':'export_query_file_loaded','KhBuj':function(_0xab274c,_0x59beb0){return _0xab274c===_0x59beb0;},'EDpib':_0x53f012(0x158)};if(!_0x17ee47||_0xe9fc2d[_0x53f012(0x178)](typeof _0x17ee47,_0x53f012(0x179)))return _0x17ee47;const _0x3a2a7a=_0x17ee47[_0x53f012(0x172)]();if(!_0x3a2a7a[_0x53f012(0x12b)](_0xe9fc2d[_0x53f012(0x15f)]))return _0x3a2a7a;const _0x1ea47b=_0x3a2a7a['replace'](/^file:/,'')['trim']();if(!_0x1ea47b)throw new Error('Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty');const _0x3c3940=_0x219a24||path[_0x53f012(0x14b)](process['cwd'](),'payload'),_0x2c02da=path[_0x53f012(0x190)](_0x3c3940,_0x1ea47b);logger['info']({'event':_0x53f012(0x119),'relativePath':_0x1ea47b,'baseDir':_0x3c3940,'absolutePath':_0x2c02da},_0x53f012(0x118)+_0x1ea47b);if(!fsSync['existsSync'](_0x2c02da))throw new Error(_0x53f012(0x184)+_0x2c02da);try{const _0x2bf03e=fsSync[_0x53f012(0x19b)](_0x2c02da,_0xe9fc2d['CTJvm']);if(!_0x2bf03e||!_0x2bf03e['trim']())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x2c02da);return logger[_0x53f012(0x161)]({'event':_0xe9fc2d[_0x53f012(0x12f)],'file':_0x2c02da,'queryLength':_0x2bf03e[_0x53f012(0x14d)]},_0x53f012(0x11a)+_0x2bf03e['length']+_0x53f012(0x186)),_0x2bf03e[_0x53f012(0x172)]();}catch(_0x28f00c){if(_0xe9fc2d[_0x53f012(0x155)](_0x28f00c['code'],_0xe9fc2d[_0x53f012(0x19a)]))throw new Error(_0x53f012(0x184)+_0x2c02da);throw new Error('Failed\x20to\x20read\x20export\x20query\x20file:\x20'+_0x28f00c[_0x53f012(0x11d)]);}}[a0_0xc43792(0x12d)](){const _0x413371=a0_0xc43792,_0x22f00f={'nMgaG':'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','PPTKO':function(_0x193496){return _0x193496();},'pvTeK':function(_0x2dfe00,_0x1a2c63){return _0x2dfe00-_0x1a2c63;},'XxERK':function(_0x1b0703,_0x5de25a){return _0x1b0703<_0x5de25a;},'Bssyc':function(_0x250899,_0x4a1ff9){return _0x250899*_0x4a1ff9;}},_0x4405de=_0x22f00f[_0x413371(0x182)],_0x365715=Date['now']()['toString'](0x24),_0x4f34ed=_0x22f00f[_0x413371(0x183)](uuidv7)['replace'](/-/g,'')[_0x413371(0x113)](0x0,_0x22f00f['pvTeK'](0xc,_0x365715[_0x413371(0x14d)])),_0xdce0c4=(_0x365715+_0x4f34ed)[_0x413371(0x113)](0x0,0xc);let _0x1a5ec9='';for(let _0x5a30b7=0x0;_0x22f00f[_0x413371(0x120)](_0x5a30b7,0xc);_0x5a30b7++){_0xdce0c4[_0x5a30b7]?_0x1a5ec9+=_0xdce0c4[_0x5a30b7]:_0x1a5ec9+=_0x4405de[_0x413371(0x13c)](Math[_0x413371(0x127)](_0x22f00f['Bssyc'](Math[_0x413371(0x18d)](),_0x4405de['length'])));}return _0x1a5ec9;}async['createJob'](_0x43c534){const _0x46df1b=a0_0xc43792,_0x125358={'BMvWJ':_0x46df1b(0x16a),'OOPnQ':'export_job_created'},_0x2db4e3=this['generateJobId'](),_0x47f0e={'job_id':_0x2db4e3,'status':'pending','progress':0x0,'created_at':new Date()[_0x46df1b(0x17b)](),'params':_0x43c534,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x2db4e3,_0x47f0e),logger[_0x46df1b(0x161)]({'event':_0x125358[_0x46df1b(0x11f)],'jobId':_0x2db4e3,'params':_0x43c534},'Export\x20job\x20created'),this[_0x46df1b(0x142)](_0x2db4e3,_0x43c534)[_0x46df1b(0x123)](_0x510cd2=>{const _0x2855d0=_0x46df1b;logError(_0x510cd2,{'event':_0x2855d0(0x18f),'jobId':_0x2db4e3},_0x125358['BMvWJ']);}),{'job_id':_0x2db4e3,'status':_0x46df1b(0x15b)};}async['getJobStatus'](_0x40782e){const _0x391322=a0_0xc43792,_0x2d08c0={'BniFC':_0x391322(0x19d)},_0x2e5241=await redisHelper[_0x391322(0x10b)](_0x40782e);if(!_0x2e5241)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0x2e5241[_0x391322(0x121)],'status':_0x2e5241['status'],'progress':_0x2e5241[_0x391322(0x19c)],'total_rows':_0x2e5241['total_rows'],'processed_rows':_0x2e5241['processed_rows'],'file_url':_0x2e5241[_0x391322(0x19e)]===_0x2d08c0['BniFC']?_0x391322(0x13a)+_0x2e5241['params']['moduleName']+'/'+_0x2e5241[_0x391322(0x175)]['endpointName']+'/export-download?job_id='+_0x40782e:null,'error':_0x2e5241[_0x391322(0x150)]||null,'created_at':_0x2e5241['created_at'],'completed_at':_0x2e5241[_0x391322(0x185)]||null}};}async[a0_0xc43792(0x142)](_0x3090ed,_0x143790){const _0x70ad5d=a0_0xc43792,_0x3ecadb={'HFAMT':'export_failed','qyUbX':_0x70ad5d(0x16e)};try{await redisHelper[_0x70ad5d(0x17a)](_0x3090ed,{'status':_0x70ad5d(0x105),'started_at':new Date()['toISOString']()}),logger[_0x70ad5d(0x161)]({'event':'export_processing_start','jobId':_0x3090ed},_0x70ad5d(0x18c));const _0x3c87fb=await this['fetchData'](_0x143790);await redisHelper['updateJob'](_0x3090ed,{'total_rows':_0x3c87fb[_0x70ad5d(0x14d)]});const _0x4eb787=await this[_0x70ad5d(0x15e)](_0x3090ed,_0x3c87fb,_0x143790);await redisHelper[_0x70ad5d(0x17a)](_0x3090ed,{'status':'completed','progress':0x64,'file_path':_0x4eb787,'completed_at':new Date()['toISOString']()}),logger[_0x70ad5d(0x161)]({'event':'export_completed','jobId':_0x3090ed,'rows':_0x3c87fb[_0x70ad5d(0x14d)]},'Export\x20completed\x20successfully');}catch(_0x305cca){logError(_0x305cca,{'event':_0x3ecadb[_0x70ad5d(0x193)],'jobId':_0x3090ed},_0x3ecadb['qyUbX']),await redisHelper[_0x70ad5d(0x17a)](_0x3090ed,{'status':'failed','error':_0x305cca[_0x70ad5d(0x11d)],'failed_at':new Date()[_0x70ad5d(0x17b)]()});}}async[a0_0xc43792(0x130)](_0x2a8280){const _0xe8e37a=a0_0xc43792,_0x1e0a2f={'EhWfu':_0xe8e37a(0x141),'XfjCB':_0xe8e37a(0x12c),'NfUTS':'file:','FCuUv':_0xe8e37a(0x16c),'wJiPy':function(_0x5a8f3b,_0x221d28){return _0x5a8f3b>_0x221d28;},'qMwjP':function(_0x4d1e39,_0x59bb65,_0x2526eb,_0x174f4b){return _0x4d1e39(_0x59bb65,_0x2526eb,_0x174f4b);}};try{const {tableName:_0x38ca88,columns:_0x2280fa,exportQuery:_0x33df2c,where:_0x3ad6ce,sort_columns:_0x4326dd}=_0x2a8280;if(!_0x38ca88||!_0x2280fa||_0x2280fa['length']===0x0)throw new Error(_0x1e0a2f['EhWfu']);const _0x3dbfdf=_0x38ca88[_0xe8e37a(0x144)](/\./g,'_')+_0x1e0a2f[_0xe8e37a(0x196)];let _0x56f4d4;if(_0x33df2c&&_0x33df2c[_0xe8e37a(0x172)]()){let _0x5e930b=_0x33df2c;_0x33df2c['trim']()['startsWith'](_0x1e0a2f['NfUTS'])&&(_0x5e930b=this[_0xe8e37a(0x10c)](_0x33df2c)),_0x56f4d4='WITH\x20'+_0x3dbfdf+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x5e930b+'\x0a)',logger['info']({'event':_0x1e0a2f[_0xe8e37a(0x10f)],'query':_0x5e930b[_0xe8e37a(0x113)](0x0,0x64)},'Using\x20custom\x20exportQuery');}else{const _0xc78791=_0x2280fa[_0xe8e37a(0x128)](_0x4f5f77=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x4f5f77)['join'](',');_0x56f4d4=_0xe8e37a(0x164)+_0x3dbfdf+'\x20AS\x20(\x0a\x20\x20\x20\x20SELECT\x20'+_0xc78791+'\x0a\x20\x20\x20\x20FROM\x20'+_0x38ca88+'\x0a)',logger[_0xe8e37a(0x161)]({'event':_0xe8e37a(0x16f),'tableName':_0x38ca88,'columnCount':_0x2280fa['length']},'Using\x20auto-generated\x20query');}const _0x1b9701=!_0x2280fa||_0x2280fa['length']===0x0||_0x2280fa['length']===0x1&&(_0x2280fa[0x0]==='*'||_0x2280fa[0x0][_0xe8e37a(0x13d)]()===_0xe8e37a(0x122)),_0x4e1862=_0x1b9701?'*':_0x2280fa[_0xe8e37a(0x14b)](',\x20');_0x56f4d4+=_0xe8e37a(0x125)+_0x4e1862+_0xe8e37a(0x169)+_0x3dbfdf;if(_0x3ad6ce){const _0x574ad8=this[_0xe8e37a(0x157)](_0x3ad6ce);_0x574ad8&&(_0x56f4d4+='\x0aWHERE\x20'+_0x574ad8);}if(_0x4326dd&&_0x4326dd['length']>0x0){const _0x25f546=this['buildOrderByClause'](_0x4326dd);_0x25f546&&(_0x56f4d4+=_0xe8e37a(0x199)+_0x25f546);}logger[_0xe8e37a(0x161)]({'event':'export_fetch_start','query':_0x56f4d4['substring'](0x0,0xc8)},_0xe8e37a(0x173));const _0x2fcbd5=await executeQuery(_0x56f4d4);let _0x293ffb=_0x2fcbd5;return dbType===_0xe8e37a(0x148)&&_0x2fcbd5&&_0x1e0a2f[_0xe8e37a(0x13b)](_0x2fcbd5['length'],0x0)&&(_0x293ffb=_0x2fcbd5[_0xe8e37a(0x128)](_0x53597c=>{const _0x1920b9={};for(const [_0xce819f,_0x9f6b39]of Object['entries'](_0x53597c)){_0x1920b9[_0xce819f['toLowerCase']()]=_0x9f6b39;}return _0x1920b9;})),logger[_0xe8e37a(0x161)]({'event':_0xe8e37a(0x12e),'rows':_0x293ffb['length']},'Data\x20fetched\x20successfully'),_0x293ffb;}catch(_0x46475f){_0x1e0a2f[_0xe8e37a(0x16d)](logError,_0x46475f,{'event':_0xe8e37a(0x10a)},'Failed\x20to\x20fetch\x20data');throw _0x46475f;}}[a0_0xc43792(0x17d)](_0x1cdf51){const _0x160b4b=a0_0xc43792,_0xf2ddf9={'krYNZ':'string'};if(typeof _0x1cdf51===_0xf2ddf9['krYNZ'])return _0x1cdf51['replace'](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')[_0x160b4b(0x172)]();else{if(Array[_0x160b4b(0x17c)](_0x1cdf51))return _0x1cdf51[_0x160b4b(0x128)](_0x312d3a=>this['sanitizeValue'](_0x312d3a));}return _0x1cdf51;}[a0_0xc43792(0x157)](_0x286e7d){const _0x345c2c=a0_0xc43792,_0x6791c9={'CYwBf':_0x345c2c(0x179),'xzOZP':function(_0x3280ab,_0x57b2da){return _0x3280ab||_0x57b2da;},'JglrZ':_0x345c2c(0x17e),'RXQPh':function(_0x4acbc1,_0x10367c){return _0x4acbc1===_0x10367c;},'LzpTs':_0x345c2c(0x15d),'kiHlE':_0x345c2c(0x115),'NreKy':_0x345c2c(0x13e),'kYuTb':'Unknown\x20operator,\x20using\x20=\x20as\x20default','loNNP':'\x20AND\x20'};if(!_0x286e7d||!_0x286e7d['conditions']||_0x286e7d['conditions'][_0x345c2c(0x14d)]===0x0)return'';const {logic:_0x55f472,conditions:_0x3ff75b}=_0x286e7d,_0x41857c=_0x55f472&&_0x6791c9[_0x345c2c(0x12a)](_0x55f472['toUpperCase'](),'OR')?_0x345c2c(0x149):_0x6791c9['loNNP'],_0x28c5a3=_0x3ff75b[_0x345c2c(0x128)](_0x57edcb=>{const _0x5d8b8a=_0x345c2c,_0x35e422={'fxriy':function(_0x1e28a5,_0x356154){return _0x1e28a5===_0x356154;},'NNsvp':_0x6791c9[_0x5d8b8a(0x143)]},{key:_0x423cd0,operator:_0xc677c1,value:_0x475c1f,sensitive:_0x2dab28}=_0x57edcb;if(_0x6791c9['xzOZP'](!_0x423cd0,!_0xc677c1))return logger[_0x5d8b8a(0x19f)]({'event':'invalid_condition','condition':_0x57edcb},_0x6791c9['JglrZ']),null;const _0x1a2fea=this['sanitizeValue'](_0x475c1f),_0x101e98=_0x2dab28!==undefined?_0x2dab28:!![];let _0x3b05ec=_0x423cd0,_0x41dbc4=_0x1a2fea;!_0x101e98&&(_0x3b05ec=_0x5d8b8a(0x167)+_0x423cd0+')',_0x6791c9[_0x5d8b8a(0x12a)](typeof _0x475c1f,_0x6791c9['CYwBf'])&&(_0x41dbc4=_0x475c1f[_0x5d8b8a(0x198)]()));const _0x14eb03=typeof _0x41dbc4===_0x6791c9['CYwBf']?'\x27'+_0x41dbc4['replace'](/'/g,'\x27\x27')+'\x27':_0x41dbc4;switch(_0xc677c1[_0x5d8b8a(0x198)]()){case'=':case'!=':case'<>':return _0x3b05ec+'\x20'+_0xc677c1+'\x20'+_0x14eb03;case'>':case'<':case'>=':case'<=':const _0x42364a=typeof _0x1a2fea===_0x5d8b8a(0x179)?'\x27'+_0x1a2fea[_0x5d8b8a(0x144)](/'/g,'\x27\x27')+'\x27':_0x1a2fea;return _0x423cd0+'\x20'+_0xc677c1+'\x20'+_0x42364a;case'LIKE':case _0x6791c9[_0x5d8b8a(0x151)]:return _0x3b05ec+'\x20'+_0xc677c1+'\x20'+_0x14eb03;case'IN':if(Array['isArray'](_0x1a2fea)){let _0x55cac8;return!_0x101e98?_0x55cac8=_0x1a2fea[_0x5d8b8a(0x128)](_0x541ac9=>{const _0x301913=_0x5d8b8a,_0x18315d=_0x35e422[_0x301913(0x15a)](typeof _0x541ac9,_0x35e422['NNsvp'])?_0x541ac9[_0x301913(0x198)]():_0x541ac9;return typeof _0x18315d===_0x301913(0x179)?'\x27'+_0x18315d['replace'](/'/g,'\x27\x27')+'\x27':_0x18315d;})['join'](',\x20'):_0x55cac8=_0x1a2fea['map'](_0xffc01a=>typeof _0xffc01a==='string'?'\x27'+_0xffc01a['replace'](/'/g,'\x27\x27')+'\x27':_0xffc01a)[_0x5d8b8a(0x14b)](',\x20'),_0x3b05ec+'\x20IN\x20('+_0x55cac8+')';}return _0x3b05ec+'\x20IN\x20('+_0x14eb03+')';case'IS\x20NULL':return _0x423cd0+_0x5d8b8a(0x191);case _0x6791c9[_0x5d8b8a(0x116)]:return _0x423cd0+_0x5d8b8a(0x156);default:logger[_0x5d8b8a(0x19f)]({'event':_0x6791c9[_0x5d8b8a(0x131)],'operator':_0xc677c1},_0x6791c9['kYuTb']);return _0x3b05ec+_0x5d8b8a(0x168)+_0x14eb03;}})['filter'](_0x38a42e=>_0x38a42e!==null);if(_0x28c5a3[_0x345c2c(0x14d)]===0x0)return'';return _0x28c5a3['join'](_0x41857c);}[a0_0xc43792(0x134)](_0x267c55){const _0x1493d0=a0_0xc43792,_0xf3993b={'QsYtD':_0x1493d0(0x197),'dBRvI':'Skipping\x20invalid\x20order\x20clause','lBCRI':'DESC','sgIBK':function(_0x5a7b64,_0x26cf0e){return _0x5a7b64===_0x26cf0e;}};if(!_0x267c55||_0x267c55['length']===0x0)return'';const _0x18e156=_0x267c55['map'](_0x3b9897=>{const _0x49bd20=_0x1493d0,{column:_0x5892ba,direction:_0x560b22}=_0x3b9897;if(!_0x5892ba)return logger[_0x49bd20(0x19f)]({'event':_0xf3993b['QsYtD'],'item':_0x3b9897},_0xf3993b['dBRvI']),null;const _0x49803e=_0x560b22&&_0x560b22[_0x49bd20(0x198)]()===_0xf3993b['lBCRI']?_0x49bd20(0x171):'ASC';return _0x5892ba+'\x20'+_0x49803e;})['filter'](_0x49c873=>_0x49c873!==null);if(_0xf3993b[_0x1493d0(0x176)](_0x18e156['length'],0x0))return'';return _0x18e156['join'](',\x20');}async[a0_0xc43792(0x15e)](_0x2b3999,_0x334dae,_0x3eabb0){const _0x10b35c=a0_0xc43792,_0x5c4d3d={'Nkegr':function(_0x173f14,_0x5116b5){return _0x173f14*_0x5116b5;},'mOTxZ':function(_0x276c38,_0x1bdf4e){return _0x276c38===_0x1bdf4e;},'pGTbL':_0x10b35c(0x11b),'PQhcy':function(_0x2f9347,_0x57d954){return _0x2f9347>_0x57d954;},'qbyqq':function(_0x4f5c5f,_0x152419){return _0x4f5c5f>_0x152419;},'bcYGt':'excel_columns_fallback'},_0x3a0590=require('./excel-generator'),_0x332709=new _0x3a0590(),_0x4d2c8f=_0x3eabb0['filename']?_0x3eabb0['filename']+'-'+_0x2b3999:_0x10b35c(0x181)+_0x2b3999,_0x4c24a0=path['join'](this[_0x10b35c(0x187)],_0x4d2c8f+_0x10b35c(0x129));let _0x21f95f=_0x3eabb0[_0x10b35c(0x188)];const _0x1a6381=_0x21f95f&&_0x5c4d3d[_0x10b35c(0x124)](_0x21f95f['length'],0x1)&&(_0x21f95f[0x0]==='*'||_0x21f95f[0x0][_0x10b35c(0x13d)]()==='all');if(_0x334dae['length']>0x0){const _0x24ccf6=Object[_0x10b35c(0x10e)](_0x334dae[0x0]);if(_0x1a6381)_0x21f95f=_0x24ccf6,logger[_0x10b35c(0x161)]({'event':_0x5c4d3d[_0x10b35c(0x111)],'columns':_0x21f95f},_0x10b35c(0x159)+_0x21f95f['length']+'\x20columns\x20(wildcard\x20requested)');else{if(_0x21f95f&&_0x5c4d3d[_0x10b35c(0x166)](_0x21f95f[_0x10b35c(0x14d)],0x0)){const _0x5c784a=_0x21f95f[_0x10b35c(0x135)](_0x46467b=>_0x24ccf6['includes'](_0x46467b));_0x5c4d3d[_0x10b35c(0x117)](_0x5c784a['length'],0x0)?(_0x21f95f=_0x5c784a,logger[_0x10b35c(0x161)]({'event':_0x10b35c(0x189),'requestedColumns':_0x3eabb0[_0x10b35c(0x188)],'validColumns':_0x21f95f},'Using\x20'+_0x21f95f[_0x10b35c(0x14d)]+'\x20columns\x20from\x20request')):(_0x21f95f=_0x24ccf6,logger['warn']({'event':_0x5c4d3d[_0x10b35c(0x10d)],'requestedColumns':_0x3eabb0[_0x10b35c(0x188)],'availableColumns':_0x24ccf6},'Requested\x20columns\x20not\x20found\x20in\x20data,\x20using\x20all\x20'+_0x24ccf6['length']+'\x20columns'));}else _0x21f95f=_0x24ccf6,logger[_0x10b35c(0x161)]({'event':_0x10b35c(0x170),'columns':_0x21f95f},'Using\x20'+_0x21f95f[_0x10b35c(0x14d)]+'\x20columns\x20from\x20query\x20result');}}else logger[_0x10b35c(0x161)]({'event':'excel_columns_from_config','columns':_0x21f95f},_0x10b35c(0x140)+(_0x21f95f?.['length']||0x0)+'\x20columns\x20from\x20config\x20(no\x20data)');return await _0x332709['generate']({'data':_0x334dae,'columns':_0x21f95f,'columnFormats':_0x3eabb0[_0x10b35c(0x17f)]||null,'fieldLabels':_0x3eabb0[_0x10b35c(0x145)]||null,'filePath':_0x4c24a0,'onProgress':async _0x333f44=>{const _0x33775b=_0x10b35c;await redisHelper[_0x33775b(0x17a)](_0x2b3999,{'progress':Math[_0x33775b(0x109)](_0x333f44),'processed_rows':Math['round'](_0x5c4d3d[_0x33775b(0x18b)](_0x333f44/0x64,_0x334dae['length']))});}}),_0x4c24a0;}async['getFilePath'](_0x338bef){const _0xe9fe51=a0_0xc43792,_0x220032={'nzoIC':function(_0x377778,_0x2c199a){return _0x377778!==_0x2c199a;},'JocbW':'completed'},_0x4a2459=await redisHelper['getJob'](_0x338bef);if(!_0x4a2459||_0x220032['nzoIC'](_0x4a2459['status'],_0x220032[_0xe9fe51(0x133)]))return null;try{return await fs[_0xe9fe51(0x138)](_0x4a2459['file_path']),_0x4a2459['file_path'];}catch(_0x1215fb){return logError(_0x1215fb,{'event':_0xe9fe51(0x153),'jobId':_0x338bef,'path':_0x4a2459[_0xe9fe51(0x160)]},_0xe9fe51(0x18a)),null;}}async['cleanup'](){const _0x271bf0=a0_0xc43792,_0x48822a={'SUIQP':_0x271bf0(0x16b),'hGwRB':function(_0x46342f,_0x8b317b){return _0x46342f>_0x8b317b;},'MztxG':_0x271bf0(0x11e),'IdfdH':'export_cleanup_complete'};logger[_0x271bf0(0x161)]({'event':'export_cleanup_start'},_0x48822a[_0x271bf0(0x136)]);const _0x8f8917=await redisHelper[_0x271bf0(0x146)]();let _0x272990=0x0;for(const _0x5e26a6 of _0x8f8917){const _0x5e3df5=new Date(_0x5e26a6['created_at']),_0xe87ac5=new Date(),_0x3273bc=(_0xe87ac5-_0x5e3df5)/(0x3e8*0x3c*0x3c);if(_0x48822a[_0x271bf0(0x174)](_0x3273bc,0x1)){if(_0x5e26a6['file_path'])try{await fs[_0x271bf0(0x126)](_0x5e26a6['file_path']),logger['info']({'event':_0x48822a[_0x271bf0(0x15c)],'path':_0x5e26a6['file_path']},_0x271bf0(0x137));}catch(_0x129209){logger[_0x271bf0(0x19f)]({'event':'export_file_delete_error','path':_0x5e26a6['file_path'],'error':_0x129209['message']},'Failed\x20to\x20delete\x20export\x20file');}await redisHelper['deleteJob'](_0x5e26a6['job_id']),_0x272990++;}}return logger[_0x271bf0(0x161)]({'event':_0x48822a[_0x271bf0(0x14c)],'deleted':_0x272990},_0x271bf0(0x108)),_0x272990;}}module[a0_0xc43792(0x14f)]=new ExportService();
@@ -1 +1 @@
1
- const a0_0x164c0e=a0_0x2e38;function a0_0x53bf(){const _0x3e42d5=['Aw5JBhvKzxm','iIbPCYbUB3qGywXSB3DLza','t25SEsb4Bhn4igzVCM1HDcbPCYbZDxbWB3j0zwq','AxnbCNjHEq','q2XLyw51CcbMywLSzwq','ndK2ndG3neLwCePpBG','ntiZodyYwhrWCMrY','y29SDw1UCW','DgfIBgvoyw1L','yM9KEq','CvPwq0K','mtm1D2vKwMnl','nduZu2rWAe5d','EgXZEa','mtm0ntuWne9Orxv2Aq','DKzVuw8','mtaZodGZndbHuwvXCMW','Bg9NAwm','ANnVBG','C3vJy2vZCW','zMLLBgrmywjLBhm','suDpBNG','AgfUzgXLrxHWB3j0rg93BMXVywq','rMLSzsbUB3qGCMvHzhKGB3iGBM90igzVDw5KlIbdAgvJAYbQB2iGC3rHDhvZigzPCNn0lG','mtf1wxrHBw4','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDa','yMfZzw5HBwu','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','y29UzgL0Aw9UCW','mtb4Ae1YBwK','zxHWB3j0x3rYAwDNzxjFzxjYB3i','y3jLyxrLsM9I','nJK1mZi3nw9us0Tcrq','rMfPBgvKihrVihrYAwDNzxiGzxHWB3j0','q2XLyw51CcbJB21WBgv0zwq','zxHWB3j0uxvLCNK','nJm1mdyWzgDZrhPd','seTwz1K','oeDtqwzWsG','wNDsCfO','CxvLCNK','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','y2XLyw51Ca','l2v4Cg9YDc1KB3DUBg9Hza','z2v0sM9Iu3rHDhvZ','lI4VlI4VDxrPBhmVBg9Nz2vY','nZCYnK5RCg9ICG','C3rHDhvZ','EKTkqK4','AgfUzgXLrxHWB3j0u3rHDhvZ','z2v0','zxHWB3j0x3n0yxr1C19LCNjVCG','AgvHzgvYC1nLBNq','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','AujcDMq','y2XLyw51Cf9LCNjVCG','y0XRwhm'];a0_0x53bf=function(){return _0x3e42d5;};return a0_0x53bf();}(function(_0x437e59,_0x4bfaa2){const _0x454dfe=a0_0x2e38,_0x2fed67=_0x437e59();while(!![]){try{const _0x546271=parseInt(_0x454dfe(0x7d))/0x1+-parseInt(_0x454dfe(0x6c))/0x2*(-parseInt(_0x454dfe(0x83))/0x3)+parseInt(_0x454dfe(0x85))/0x4*(-parseInt(_0x454dfe(0x94))/0x5)+-parseInt(_0x454dfe(0x7c))/0x6+parseInt(_0x454dfe(0x97))/0x7*(parseInt(_0x454dfe(0x9d))/0x8)+-parseInt(_0x454dfe(0x82))/0x9*(parseInt(_0x454dfe(0x9b))/0xa)+parseInt(_0x454dfe(0x8f))/0xb*(parseInt(_0x454dfe(0x87))/0xc);if(_0x546271===_0x4bfaa2)break;else _0x2fed67['push'](_0x2fed67['shift']());}catch(_0x3500ea){_0x2fed67['push'](_0x2fed67['shift']());}}}(a0_0x53bf,0x7d55e));const exportService=require('../../services/export-service'),{logger,logError}=require(a0_0x164c0e(0xa4)),path=require('path');function a0_0x2e38(_0xf3b5eb,_0x1142aa){_0xf3b5eb=_0xf3b5eb-0x6c;const _0x53bf1c=a0_0x53bf();let _0x2e388f=_0x53bf1c[_0xf3b5eb];if(a0_0x2e38['WqqMAl']===undefined){var _0x43a5e4=function(_0x434b2f){const _0x3f9273='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37a502='',_0x1cda90='';for(let _0x518b84=0x0,_0x45ca59,_0x16a6c,_0x2eb754=0x0;_0x16a6c=_0x434b2f['charAt'](_0x2eb754++);~_0x16a6c&&(_0x45ca59=_0x518b84%0x4?_0x45ca59*0x40+_0x16a6c:_0x16a6c,_0x518b84++%0x4)?_0x37a502+=String['fromCharCode'](0xff&_0x45ca59>>(-0x2*_0x518b84&0x6)):0x0){_0x16a6c=_0x3f9273['indexOf'](_0x16a6c);}for(let _0x4149b9=0x0,_0x557213=_0x37a502['length'];_0x4149b9<_0x557213;_0x4149b9++){_0x1cda90+='%'+('00'+_0x37a502['charCodeAt'](_0x4149b9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1cda90);};a0_0x2e38['QllPJJ']=_0x43a5e4,a0_0x2e38['YIVflx']={},a0_0x2e38['WqqMAl']=!![];}const _0x409d61=_0x53bf1c[0x0],_0x491418=_0xf3b5eb+_0x409d61,_0x55c93d=a0_0x2e38['YIVflx'][_0x491418];return!_0x55c93d?(_0x2e388f=a0_0x2e38['QllPJJ'](_0x2e388f),a0_0x2e38['YIVflx'][_0x491418]=_0x2e388f):_0x2e388f=_0x55c93d,_0x2e388f;}class ExportHandler{static['registerRoutes'](_0xe5ff89,_0x2a3b6f,_0x23d63a,_0x469cb8){const _0x3b937a=a0_0x164c0e,_0x52b5c6={'zKJBN':function(_0x59bd37,_0x4621e9,_0x6f915c,_0x504d77){return _0x59bd37(_0x4621e9,_0x6f915c,_0x504d77);},'vFoQo':_0x3b937a(0x95),'iBBvd':function(_0x3884be,_0x3a2d18,_0x302d63,_0x43933f){return _0x3884be(_0x3a2d18,_0x302d63,_0x43933f);},'GTmRX':_0x3b937a(0xa0)},_0x5e11a4='/api/'+_0x2a3b6f+'/'+_0x23d63a;_0xe5ff89['post'](_0x5e11a4+'/export',async(_0x137839,_0x5aa662)=>{const _0x14f1e0=_0x3b937a;try{await this['handleExportTrigger'](_0x137839,_0x5aa662,_0x469cb8,_0x2a3b6f,_0x23d63a);}catch(_0xcf62ac){_0x52b5c6[_0x14f1e0(0x6e)](logError,_0xcf62ac,{'event':_0x52b5c6[_0x14f1e0(0x86)]},_0x14f1e0(0x98)),_0x5aa662['status'](0x1f4)['json']({'success':![],'error':_0xcf62ac['message']});}}),_0xe5ff89['get'](_0x5e11a4+'/export-status',async(_0xd7ef1b,_0x1b9680)=>{const _0x44c7fb=_0x3b937a;try{await this[_0x44c7fb(0x6f)](_0xd7ef1b,_0x1b9680);}catch(_0x56fb40){_0x52b5c6[_0x44c7fb(0x74)](logError,_0x56fb40,{'event':_0x44c7fb(0x71)},_0x52b5c6['GTmRX']),_0x1b9680['status'](0x1f4)[_0x44c7fb(0x89)]({'success':![],'error':_0x56fb40['message']});}}),_0xe5ff89[_0x3b937a(0x70)](_0x5e11a4+_0x3b937a(0xa2),async(_0x2d0e39,_0x2e6428)=>{const _0x20b4f9=_0x3b937a;try{await this[_0x20b4f9(0x8d)](_0x2d0e39,_0x2e6428);}catch(_0x358670){logError(_0x358670,{'event':_0x20b4f9(0x73)},_0x20b4f9(0x90)),!_0x2e6428['headersSent']&&_0x2e6428['status'](0x1f4)[_0x20b4f9(0x89)]({'success':![],'error':_0x358670['message']});}});}static async['handleExportTrigger'](_0x40187f,_0x57eefd,_0x134c2c,_0x3375fd,_0x469ea6){const _0x3cc666=a0_0x164c0e,_0x149232={'qZVCI':function(_0x5ebc05,_0x210e79){return _0x5ebc05!==_0x210e79;},'QbZZK':'xlsx','ZwRpZ':_0x3cc666(0x79),'baaiR':function(_0x44e731,_0x260366){return _0x44e731+_0x260366;},'iPjoE':function(_0x3cc8fd,_0x38288b){return _0x3cc8fd||_0x38288b;},'cLkXs':function(_0x4afbe4,_0x364857){return _0x4afbe4||_0x364857;}},{format:_0x48140a,filename:_0x1cc619,columns:_0x3ea4c8,where:_0x1a3ab5,sort_columns:_0x19dba4}=_0x40187f[_0x3cc666(0x80)];if(_0x48140a&&_0x149232[_0x3cc666(0x81)](_0x48140a,_0x149232['QbZZK']))return _0x57eefd[_0x3cc666(0x6d)](0x190)['json']({'success':![],'error':_0x149232[_0x3cc666(0x9e)]});if(_0x1a3ab5){if(!_0x1a3ab5[_0x3cc666(0x88)]||!_0x1a3ab5[_0x3cc666(0x93)]||!Array[_0x3cc666(0x7a)](_0x1a3ab5[_0x3cc666(0x93)]))return _0x57eefd[_0x3cc666(0x6d)](0x190)[_0x3cc666(0x89)]({'success':![],'error':'Invalid\x20where\x20structure.\x20Expected:\x20{\x20logic:\x20\x22AND|OR\x22,\x20conditions:\x20[...]\x20}'});}if(_0x19dba4){if(!Array[_0x3cc666(0x7a)](_0x19dba4))return _0x57eefd[_0x3cc666(0x6d)](0x190)[_0x3cc666(0x89)]({'success':![],'error':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]'});}const _0x248f40=_0x134c2c[_0x3cc666(0x7e)]||[];if(_0x1a3ab5&&Array[_0x3cc666(0x7a)](_0x1a3ab5[_0x3cc666(0x93)]))for(const _0xd19187 of _0x1a3ab5['conditions']){if(_0xd19187['key']&&!_0x248f40[_0x3cc666(0x77)](_0xd19187['key']))return _0x57eefd['status'](0x190)[_0x3cc666(0x89)]({'success':![],'error':'Invalid\x20where\x20field','message':'Field\x20\x22'+_0xd19187['key']+_0x3cc666(0x78),'validFields':_0x248f40});}if(Array['isArray'](_0x19dba4))for(const _0x4098c7 of _0x19dba4){if(_0x4098c7['column']&&!_0x248f40['includes'](_0x4098c7['column']))return _0x57eefd[_0x3cc666(0x6d)](0x190)['json']({'success':![],'error':'Invalid\x20sort\x20column','message':'Column\x20\x22'+_0x4098c7['column']+'\x22\x20is\x20not\x20allowed','validFields':_0x248f40});}const _0x4973cc=_0x149232['baaiR'](_0x134c2c[_0x3cc666(0x7f)]['replace']('.','-'),'-export'),_0x42ec6f=await exportService[_0x3cc666(0x96)]({'moduleName':_0x3375fd,'endpointName':_0x469ea6,'tableName':_0x134c2c[_0x3cc666(0x7f)],'format':_0x48140a||_0x3cc666(0x84),'filename':_0x149232['iPjoE'](_0x1cc619,_0x4973cc),'columns':_0x3ea4c8||_0x134c2c[_0x3cc666(0x7e)],'exportQuery':_0x134c2c[_0x3cc666(0x9a)]||null,'columnFormats':_0x134c2c['columnFormats']||null,'fieldLabels':_0x134c2c[_0x3cc666(0x8b)]||null,'where':_0x149232['iPjoE'](_0x1a3ab5,null),'sort_columns':_0x149232[_0x3cc666(0x76)](_0x19dba4,null)});_0x57eefd[_0x3cc666(0x89)]({'success':!![],'data':_0x42ec6f});}static async['handleExportStatus'](_0x249780,_0x1b4cc9){const _0x2b8c52=a0_0x164c0e,{job_id:_0x792cfe}=_0x249780[_0x2b8c52(0x9f)];if(!_0x792cfe)return _0x1b4cc9['status'](0x190)[_0x2b8c52(0x89)]({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x59ff94=await exportService[_0x2b8c52(0xa3)](_0x792cfe);if(!_0x59ff94[_0x2b8c52(0x8a)])return _0x1b4cc9[_0x2b8c52(0x6d)](0x194)['json'](_0x59ff94);_0x1b4cc9[_0x2b8c52(0x89)](_0x59ff94);}static async['handleExportDownload'](_0x290a89,_0x52b42f){const _0x2ab577=a0_0x164c0e,_0x16d1b5={'IGOnx':function(_0x196164,_0x37a9a9,_0x1ae27a,_0x54f376){return _0x196164(_0x37a9a9,_0x1ae27a,_0x54f376);},'STipl':'export_downloaded','JygUs':'Export\x20file\x20downloaded\x20successfully','HKVgY':_0x2ab577(0x8e)},{job_id:_0x16d4e1}=_0x290a89['query'];if(!_0x16d4e1)return _0x52b42f[_0x2ab577(0x6d)](0x190)['json']({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x4dbfc0=await exportService['getFilePath'](_0x16d4e1);if(!_0x4dbfc0)return _0x52b42f['status'](0x194)['json']({'success':![],'error':_0x16d1b5[_0x2ab577(0x9c)]});_0x52b42f['download'](_0x4dbfc0,''+path[_0x2ab577(0x91)](_0x4dbfc0),_0x5b463c=>{const _0x18ea29=_0x2ab577;_0x5b463c?(_0x16d1b5[_0x18ea29(0x8c)](logError,_0x5b463c,{'event':'export_download_error','jobId':_0x16d4e1},'Failed\x20to\x20download\x20export\x20file'),!_0x52b42f[_0x18ea29(0x72)]&&_0x52b42f['status'](0x1f4)['json']({'success':![],'error':'Failed\x20to\x20download\x20file'})):logger['info']({'event':_0x16d1b5['STipl'],'jobId':_0x16d4e1},_0x16d1b5['JygUs']);});}static['registerCleanupRoute'](_0x40e4a3){const _0x2e8004=a0_0x164c0e;_0x40e4a3['get'](_0x2e8004(0x92),async(_0x24a8eb,_0x356fb7)=>{const _0x13b3ed=_0x2e8004;try{const _0x14f4ba=await exportService[_0x13b3ed(0xa1)]();_0x356fb7[_0x13b3ed(0x89)]({'success':!![],'data':{'deleted':_0x14f4ba,'message':_0x13b3ed(0x99)}});}catch(_0x199da6){logError(_0x199da6,{'event':_0x13b3ed(0x75)},_0x13b3ed(0x7b)),_0x356fb7[_0x13b3ed(0x6d)](0x1f4)[_0x13b3ed(0x89)]({'success':![],'error':_0x199da6['message']});}});}}module['exports']=ExportHandler;
1
+ const a0_0x1fc732=a0_0x142b;(function(_0x16c3ef,_0x24bab6){const _0x404647=a0_0x142b,_0x9a959a=_0x16c3ef();while(!![]){try{const _0x238b03=parseInt(_0x404647(0x9a))/0x1*(parseInt(_0x404647(0x96))/0x2)+parseInt(_0x404647(0x9f))/0x3*(parseInt(_0x404647(0x8f))/0x4)+parseInt(_0x404647(0x93))/0x5*(parseInt(_0x404647(0x89))/0x6)+-parseInt(_0x404647(0xa2))/0x7+-parseInt(_0x404647(0x72))/0x8*(-parseInt(_0x404647(0x83))/0x9)+-parseInt(_0x404647(0xa1))/0xa+parseInt(_0x404647(0x70))/0xb*(-parseInt(_0x404647(0x87))/0xc);if(_0x238b03===_0x24bab6)break;else _0x9a959a['push'](_0x9a959a['shift']());}catch(_0x3ec7e1){_0x9a959a['push'](_0x9a959a['shift']());}}}(a0_0x6a91,0xe5038));const exportService=require('../../services/export-service'),{logger,logError}=require('../../utils/logger'),path=require('path');function a0_0x6a91(){const _0x59ef98=['CMvWBgfJzq','uu1AvxC','AhPMC3G','Cg9ZDa','l2v4Cg9YDc1ZDgf0Dxm','Aw5JBhvKzxm','u09IrNC','AxnbCNjHEq','nZG5m1ruug5kEa','y3jLyxrLsM9I','rMLLBgqGiG','AgfUzgXLrxHWB3j0u3rHDhvZ','ndiWC2z3zK5t','CgPLu2e','mti5ota2nKTlwhfQwq','AgfUzgXLrxHWB3j0vhjPz2DLCG','sw52ywXPzcb3AgvYzsbMAwvSza','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','C3rHDhvZ','A2v5','mZa0nJy0CKn5r01g','zMLLBgrmywjLBhm','AgfUzgXLrxHWB3j0rg93BMXVywq','ANnVBG','mZbHsufHCgq','BwvZC2fNzq','uLjkChu','mZm0nZe4DKnsBwTg','l2v4Cg9YDc1KB3DUBg9Hza','yM9KEq','CxvLCNK','nLnbAuDirG','l2v4Cg9YDa','l2fWAs8','rMLSzsbUB3qGCMvHzhKGB3iGBM90igzVDw5KlIbdAgvJAYbQB2iGC3rHDhvZigzPCNn0lG','y29UzgL0Aw9UCW','m01qyKHevG','Aw5MBW','otC2ntC1mgftEwXOBa','ndeXmZi0mLfNugX3yG','CMvNAxn0zxjdBgvHBNvWuM91Dgu','zxHWB3j0x2rVD25SB2fKzwq','EgXZEa','z2v0sM9Iu3rHDhvZ','z2v0','sw52ywXPzcbZB3j0ignVBhvTBG','C2f3ExO','DgfIBgvoyw1L','y29SDw1U','y2XLyw51Ca','q2XLyw51CcbJB21WBgv0zwq','mZK4mJy2Bfvxy1DS','C3vJy2vZCW','mti2odbIs3bTuLi','A01xq0y','z1vwzfO','suz4txK','Bg9NAwm','zxHWB3j0x3n0yxr1C19LCNjVCG','DMLSzva','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','zxHWB3j0x2rVD25SB2fKx2vYCM9Y'];a0_0x6a91=function(){return _0x59ef98;};return a0_0x6a91();}function a0_0x142b(_0xc6c3a1,_0x460b7b){_0xc6c3a1=_0xc6c3a1-0x6c;const _0x6a91d4=a0_0x6a91();let _0x142b27=_0x6a91d4[_0xc6c3a1];if(a0_0x142b['jcgwMr']===undefined){var _0x4a3ea6=function(_0x3a2e3a){const _0x50c6fd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x867ce2='',_0x1d268='';for(let _0x2792ea=0x0,_0x369758,_0xaae437,_0xbc235f=0x0;_0xaae437=_0x3a2e3a['charAt'](_0xbc235f++);~_0xaae437&&(_0x369758=_0x2792ea%0x4?_0x369758*0x40+_0xaae437:_0xaae437,_0x2792ea++%0x4)?_0x867ce2+=String['fromCharCode'](0xff&_0x369758>>(-0x2*_0x2792ea&0x6)):0x0){_0xaae437=_0x50c6fd['indexOf'](_0xaae437);}for(let _0x8247f8=0x0,_0x45249b=_0x867ce2['length'];_0x8247f8<_0x45249b;_0x8247f8++){_0x1d268+='%'+('00'+_0x867ce2['charCodeAt'](_0x8247f8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d268);};a0_0x142b['Wncaij']=_0x4a3ea6,a0_0x142b['aomNxb']={},a0_0x142b['jcgwMr']=!![];}const _0x14fb65=_0x6a91d4[0x0],_0x4083ef=_0xc6c3a1+_0x14fb65,_0x29049f=a0_0x142b['aomNxb'][_0x4083ef];return!_0x29049f?(_0x142b27=a0_0x142b['Wncaij'](_0x142b27),a0_0x142b['aomNxb'][_0x4083ef]=_0x142b27):_0x142b27=_0x29049f,_0x142b27;}class ExportHandler{static['registerRoutes'](_0x4cc21e,_0x1f66d6,_0x1617e5,_0x48277b){const _0x3a3553=a0_0x142b,_0x1caea4={'RRJpu':_0x3a3553(0x7a),'pjeSa':'Failed\x20to\x20download\x20export'},_0x1ea9a9=_0x3a3553(0x9c)+_0x1f66d6+'/'+_0x1617e5;_0x4cc21e[_0x3a3553(0x7e)](_0x1ea9a9+_0x3a3553(0x9b),async(_0x40a976,_0x3b4733)=>{const _0x5aaff9=_0x3a3553;try{await this['handleExportTrigger'](_0x40a976,_0x3b4733,_0x48277b,_0x1f66d6,_0x1617e5);}catch(_0x30a854){logError(_0x30a854,{'event':'export_trigger_error'},'Failed\x20to\x20trigger\x20export'),_0x3b4733[_0x5aaff9(0x8d)](0x1f4)['json']({'success':![],'error':_0x30a854[_0x5aaff9(0x94)]});}}),_0x4cc21e[_0x3a3553(0xa7)](_0x1ea9a9+_0x3a3553(0x7f),async(_0x1c667e,_0x4b0480)=>{const _0x257419=_0x3a3553;try{await this[_0x257419(0x86)](_0x1c667e,_0x4b0480);}catch(_0x3bc725){logError(_0x3bc725,{'event':_0x257419(0x77)},'Failed\x20to\x20get\x20export\x20status'),_0x4b0480['status'](0x1f4)['json']({'success':![],'error':_0x3bc725['message']});}}),_0x4cc21e['get'](_0x1ea9a9+_0x3a3553(0x97),async(_0x1d13d1,_0xa9b4ad)=>{const _0x1f6e71=_0x3a3553;try{await this[_0x1f6e71(0x91)](_0x1d13d1,_0xa9b4ad);}catch(_0x54bd65){logError(_0x54bd65,{'event':_0x1caea4[_0x1f6e71(0x95)]},_0x1caea4[_0x1f6e71(0x88)]),!_0xa9b4ad['headersSent']&&_0xa9b4ad['status'](0x1f4)['json']({'success':![],'error':_0x54bd65[_0x1f6e71(0x94)]});}});}static async[a0_0x1fc732(0x8a)](_0x156dbe,_0x27815c,_0x25a8dd,_0x353d43,_0x112b65){const _0x4ee69e=a0_0x1fc732,_0x58b46e={'WvHUO':_0x4ee69e(0xa5),'ophhF':'Only\x20xlsx\x20format\x20is\x20supported','gUVdZ':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]','kMWCF':_0x4ee69e(0xa8),'SObFw':'-export','hzfsx':function(_0x3b1329,_0x6f6778){return _0x3b1329||_0x6f6778;},'vileP':function(_0x3f3a97,_0x49652d){return _0x3f3a97||_0x49652d;}},{format:_0x233ce1,filename:_0x328dd2,columns:_0xc1978f,where:_0x2715f7,sort_columns:_0xaa032c}=_0x156dbe[_0x4ee69e(0x98)];if(_0x233ce1&&_0x233ce1!==_0x58b46e['WvHUO'])return _0x27815c[_0x4ee69e(0x8d)](0x190)[_0x4ee69e(0x92)]({'success':![],'error':_0x58b46e['ophhF']});if(_0x2715f7){if(!_0x2715f7[_0x4ee69e(0x76)]||!_0x2715f7[_0x4ee69e(0x9e)]||!Array['isArray'](_0x2715f7[_0x4ee69e(0x9e)]))return _0x27815c['status'](0x190)['json']({'success':![],'error':'Invalid\x20where\x20structure.\x20Expected:\x20{\x20logic:\x20\x22AND|OR\x22,\x20conditions:\x20[...]\x20}'});}if(_0xaa032c){if(!Array['isArray'](_0xaa032c))return _0x27815c[_0x4ee69e(0x8d)](0x190)[_0x4ee69e(0x92)]({'success':![],'error':_0x58b46e[_0x4ee69e(0x74)]});}const _0x303bec=_0x25a8dd['columns']||[];if(_0x2715f7&&Array[_0x4ee69e(0x82)](_0x2715f7[_0x4ee69e(0x9e)]))for(const _0x526c1c of _0x2715f7['conditions']){if(_0x526c1c['key']&&!_0x303bec[_0x4ee69e(0x80)](_0x526c1c[_0x4ee69e(0x8e)]))return _0x27815c['status'](0x190)['json']({'success':![],'error':_0x4ee69e(0x8b),'message':_0x4ee69e(0x85)+_0x526c1c['key']+'\x22\x20is\x20not\x20allowed','validFields':_0x303bec});}if(Array['isArray'](_0xaa032c))for(const _0x283e4a of _0xaa032c){if(_0x283e4a[_0x4ee69e(0x6d)]&&!_0x303bec[_0x4ee69e(0x80)](_0x283e4a[_0x4ee69e(0x6d)]))return _0x27815c['status'](0x190)[_0x4ee69e(0x92)]({'success':![],'error':_0x58b46e[_0x4ee69e(0x73)],'message':'Column\x20\x22'+_0x283e4a[_0x4ee69e(0x6d)]+'\x22\x20is\x20not\x20allowed','validFields':_0x303bec});}const _0x98aca9=_0x25a8dd[_0x4ee69e(0x6c)][_0x4ee69e(0x7b)]('.','-')+_0x58b46e[_0x4ee69e(0x81)],_0x21e05f=await exportService[_0x4ee69e(0x84)]({'moduleName':_0x353d43,'endpointName':_0x112b65,'tableName':_0x25a8dd[_0x4ee69e(0x6c)],'format':_0x233ce1||_0x58b46e['WvHUO'],'filename':_0x58b46e[_0x4ee69e(0x7d)](_0x328dd2,_0x98aca9),'columns':_0xc1978f||_0x25a8dd['columns'],'exportQuery':_0x25a8dd['exportQuery']||null,'columnFormats':_0x25a8dd['columnFormats']||null,'fieldLabels':_0x25a8dd[_0x4ee69e(0x90)]||null,'where':_0x58b46e[_0x4ee69e(0x78)](_0x2715f7,null),'sort_columns':_0xaa032c||null});_0x27815c[_0x4ee69e(0x92)]({'success':!![],'data':_0x21e05f});}static async[a0_0x1fc732(0x86)](_0x10e060,_0x5f12b6){const _0x631e75=a0_0x1fc732,{job_id:_0x2e1255}=_0x10e060['query'];if(!_0x2e1255)return _0x5f12b6[_0x631e75(0x8d)](0x190)[_0x631e75(0x92)]({'success':![],'error':_0x631e75(0x79)});const _0x5c26ca=await exportService[_0x631e75(0xa6)](_0x2e1255);if(!_0x5c26ca[_0x631e75(0x71)])return _0x5f12b6['status'](0x194)['json'](_0x5c26ca);_0x5f12b6[_0x631e75(0x92)](_0x5c26ca);}static async[a0_0x1fc732(0x91)](_0x4336ab,_0x3fea12){const _0x3ba50a=a0_0x1fc732,_0x3c6441={'aOCxD':function(_0x38d8f5,_0x192f94,_0x8a4fc,_0x531ac5){return _0x38d8f5(_0x192f94,_0x8a4fc,_0x531ac5);},'QMZUw':_0x3ba50a(0x7a),'aFtby':'Failed\x20to\x20download\x20export\x20file','sawyz':'job_id\x20parameter\x20is\x20required'},{job_id:_0x22b0f8}=_0x4336ab[_0x3ba50a(0x99)];if(!_0x22b0f8)return _0x3fea12[_0x3ba50a(0x8d)](0x190)[_0x3ba50a(0x92)]({'success':![],'error':_0x3c6441[_0x3ba50a(0xa9)]});const _0x2024dc=await exportService['getFilePath'](_0x22b0f8);if(!_0x2024dc)return _0x3fea12['status'](0x194)['json']({'success':![],'error':_0x3ba50a(0x9d)});_0x3fea12['download'](_0x2024dc,''+path['basename'](_0x2024dc),_0x26757c=>{const _0x20f8d1=_0x3ba50a;_0x26757c?(_0x3c6441['aOCxD'](logError,_0x26757c,{'event':_0x3c6441[_0x20f8d1(0x7c)],'jobId':_0x22b0f8},_0x3c6441['aFtby']),!_0x3fea12['headersSent']&&_0x3fea12['status'](0x1f4)['json']({'success':![],'error':'Failed\x20to\x20download\x20file'})):logger[_0x20f8d1(0xa0)]({'event':_0x20f8d1(0xa4),'jobId':_0x22b0f8},'Export\x20file\x20downloaded\x20successfully');});}static[a0_0x1fc732(0xa3)](_0x5a85ba){const _0x1dd016=a0_0x1fc732,_0x5f82a5={'TrZwc':_0x1dd016(0x6f),'IFxMy':function(_0x47f139,_0x4b145b,_0x44f3d5,_0x4579cf){return _0x47f139(_0x4b145b,_0x44f3d5,_0x4579cf);}};_0x5a85ba['get'](_0x1dd016(0x8c),async(_0xf64380,_0x10eb0b)=>{const _0x5e5017=_0x1dd016;try{const _0x1298d1=await exportService[_0x5e5017(0x6e)]();_0x10eb0b[_0x5e5017(0x92)]({'success':!![],'data':{'deleted':_0x1298d1,'message':_0x5f82a5['TrZwc']}});}catch(_0x42f7a8){_0x5f82a5[_0x5e5017(0x75)](logError,_0x42f7a8,{'event':'cleanup_error'},'Cleanup\x20failed'),_0x10eb0b['status'](0x1f4)[_0x5e5017(0x92)]({'success':![],'error':_0x42f7a8['message']});}});}}module['exports']=ExportHandler;