@restforgejs/platform 5.1.21 → 5.2.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 (211) 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/catalog/dashboard.js +1 -1
  5. package/generators/cli/catalog/dbschema.js +3 -3
  6. package/generators/cli/catalog/field-validation.js +1 -1
  7. package/generators/cli/catalog/query-declarative.js +1 -1
  8. package/generators/cli/config/clear-default.js +1 -1
  9. package/generators/cli/config/get-default.js +1 -1
  10. package/generators/cli/config/list.js +1 -1
  11. package/generators/cli/config/schema.js +1 -1
  12. package/generators/cli/config/set-default.js +2 -2
  13. package/generators/cli/config/template.js +1 -1
  14. package/generators/cli/dashboard/create.js +7 -7
  15. package/generators/cli/data/pull.js +12 -12
  16. package/generators/cli/data/push.js +9 -9
  17. package/generators/cli/endpoint/create.js +11 -11
  18. package/generators/cli/endpoint/list.js +3 -3
  19. package/generators/cli/fast-track.js +7 -7
  20. package/generators/cli/init.js +2 -2
  21. package/generators/cli/kafka/consumer-create.js +5 -5
  22. package/generators/cli/key/generate.js +3 -3
  23. package/generators/cli/key/list.js +2 -2
  24. package/generators/cli/key/revoke.js +3 -3
  25. package/generators/cli/payload/diff.js +3 -3
  26. package/generators/cli/payload/generate.js +5 -5
  27. package/generators/cli/payload/sync.js +5 -5
  28. package/generators/cli/payload/validate.js +3 -3
  29. package/generators/cli/processor/create.js +7 -7
  30. package/generators/cli/processor/list.js +3 -3
  31. package/generators/cli/project/delete.js +2 -2
  32. package/generators/cli/project/list.js +1 -1
  33. package/generators/cli/query/validate.js +3 -3
  34. package/generators/cli/schema/apply.js +13 -13
  35. package/generators/cli/schema/describe.js +6 -6
  36. package/generators/cli/schema/diff.js +10 -10
  37. package/generators/cli/schema/generate-ddl.js +11 -11
  38. package/generators/cli/schema/init.js +95 -95
  39. package/generators/cli/schema/introspect.js +8 -8
  40. package/generators/cli/schema/list.js +6 -6
  41. package/generators/cli/schema/migrate.js +91 -13
  42. package/generators/cli/schema/models.js +6 -6
  43. package/generators/cli/schema/template.js +223 -222
  44. package/generators/cli/schema/validate.js +6 -6
  45. package/generators/cli/test/generate.js +6 -6
  46. package/generators/lib/dbschema-kit/introspect-mapper.js +20 -0
  47. package/generators/lib/templates/dashboard-catalog.js +1 -1
  48. package/generators/lib/templates/db-connection-env.js +1 -1
  49. package/generators/lib/templates/dbschema-catalog.js +1 -1
  50. package/generators/lib/templates/field-validation-catalog.js +1 -1
  51. package/generators/lib/templates/mysql-template.js +1 -1
  52. package/generators/lib/templates/oracle-template.js +1 -1
  53. package/generators/lib/templates/postgres-template.js +1 -1
  54. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  55. package/generators/lib/templates/sqlite-template.js +1 -1
  56. package/integrity-manifest.json +18 -18
  57. package/package.json +1 -1
  58. package/scripts/verify-integrity.js +1 -1
  59. package/server.js +1 -1
  60. package/src/components/handlers/adjust_handler.js +1 -1
  61. package/src/components/handlers/audit_handler.js +1 -1
  62. package/src/components/handlers/delete_handler.js +1 -1
  63. package/src/components/handlers/export_handler.js +1 -1
  64. package/src/components/handlers/import_handler.js +1 -1
  65. package/src/components/handlers/insert_handler.js +1 -1
  66. package/src/components/handlers/update_handler.js +1 -1
  67. package/src/components/handlers/upload_handler.js +1 -1
  68. package/src/components/handlers/workflow_handler.js +1 -1
  69. package/src/components/integrations/webhook.js +1 -1
  70. package/src/consumers/baseConsumer.js +1 -1
  71. package/src/consumers/declarativeMapper.js +1 -1
  72. package/src/consumers/handlers/apiHandler.js +1 -1
  73. package/src/consumers/handlers/consoleHandler.js +1 -1
  74. package/src/consumers/handlers/databaseHandler.js +1 -1
  75. package/src/consumers/handlers/index.js +1 -1
  76. package/src/consumers/handlers/kafkaHandler.js +1 -1
  77. package/src/consumers/index.js +1 -1
  78. package/src/consumers/messageTransformer.js +1 -1
  79. package/src/consumers/validator.js +1 -1
  80. package/src/core/db/dialect/base-dialect.js +1 -1
  81. package/src/core/db/dialect/index.js +1 -1
  82. package/src/core/db/dialect/mysql-dialect.js +1 -1
  83. package/src/core/db/dialect/oracle-dialect.js +1 -1
  84. package/src/core/db/dialect/postgres-dialect.js +1 -1
  85. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  86. package/src/core/db/flatten-helper.js +1 -1
  87. package/src/core/db/query-builder-error.js +1 -1
  88. package/src/core/db/query-builder.js +1 -1
  89. package/src/core/db/relation-helper.js +1 -1
  90. package/src/core/handlers/delete_handler.js +1 -1
  91. package/src/core/handlers/insert_handler.js +1 -1
  92. package/src/core/handlers/update_handler.js +1 -1
  93. package/src/core/models/base-model.js +1 -1
  94. package/src/core/utils/cache-manager.js +1 -1
  95. package/src/core/utils/component-engine.js +1 -1
  96. package/src/core/utils/context-builder.js +1 -1
  97. package/src/core/utils/datetime-formatter.js +1 -1
  98. package/src/core/utils/datetime-parser.js +1 -1
  99. package/src/core/utils/db.js +1 -1
  100. package/src/core/utils/logger.js +1 -1
  101. package/src/core/utils/payload-loader.js +1 -1
  102. package/src/core/utils/security-checks.js +1 -1
  103. package/src/middleware/body-options.js +1 -1
  104. package/src/middleware/cors.js +1 -1
  105. package/src/middleware/idempotency.js +1 -1
  106. package/src/middleware/rate-limiter.js +1 -1
  107. package/src/middleware/request-logger.js +1 -1
  108. package/src/middleware/security-headers.js +1 -1
  109. package/src/models/base-model-mysql.js +1 -1
  110. package/src/models/base-model-oracle.js +1 -1
  111. package/src/models/base-model-sqlite.js +1 -1
  112. package/src/models/base-model.js +1 -1
  113. package/src/pro/caching/redis-client.js +1 -1
  114. package/src/pro/caching/redis-helper.js +1 -1
  115. package/src/pro/consumers/baseConsumer.js +1 -1
  116. package/src/pro/consumers/declarativeMapper.js +1 -1
  117. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  118. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  119. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  120. package/src/pro/consumers/handlers/index.js +1 -1
  121. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  122. package/src/pro/consumers/index.js +1 -1
  123. package/src/pro/consumers/messageTransformer.js +1 -1
  124. package/src/pro/consumers/validator.js +1 -1
  125. package/src/pro/database/base-model-mysql.js +1 -1
  126. package/src/pro/database/base-model-oracle.js +1 -1
  127. package/src/pro/database/base-model-sqlite.js +1 -1
  128. package/src/pro/database/db-mysql.js +1 -1
  129. package/src/pro/database/db-oracle.js +1 -1
  130. package/src/pro/database/db-sqlite.js +1 -1
  131. package/src/pro/excel/excel-generator.js +1 -1
  132. package/src/pro/excel/excel-parser.js +1 -1
  133. package/src/pro/excel/export-service.js +1 -1
  134. package/src/pro/excel/export_handler.js +1 -1
  135. package/src/pro/excel/import-service.js +1 -1
  136. package/src/pro/excel/import-validator.js +1 -1
  137. package/src/pro/excel/import_handler.js +1 -1
  138. package/src/pro/excel/upsert-builder.js +1 -1
  139. package/src/pro/idgen/idgen-routes.js +1 -1
  140. package/src/pro/integrations/lookup-resolver.js +1 -1
  141. package/src/pro/integrations/upload-handler-v2.js +1 -1
  142. package/src/pro/integrations/upload-handler.js +1 -1
  143. package/src/pro/integrations/webhook.js +1 -1
  144. package/src/pro/locking/lock-routes.js +1 -1
  145. package/src/pro/locking/resource-lock-manager.js +1 -1
  146. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  147. package/src/pro/messaging/kafkaService.js +1 -1
  148. package/src/pro/messaging/messagehubService.js +1 -1
  149. package/src/pro/messaging/rabbitmqService.js +1 -1
  150. package/src/pro/scheduler/job-manager.js +1 -1
  151. package/src/pro/scheduler/job-routes.js +1 -1
  152. package/src/pro/scheduler/job-validator.js +1 -1
  153. package/src/pro/storage/base-storage-provider.js +1 -1
  154. package/src/pro/storage/file-metadata-helper.js +1 -1
  155. package/src/pro/storage/index.js +1 -1
  156. package/src/pro/storage/local-storage-provider.js +1 -1
  157. package/src/pro/storage/s3-storage-provider.js +1 -1
  158. package/src/pro/storage/upload-cleanup-job.js +1 -1
  159. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  160. package/src/pro/storage/upload-pending-tracker.js +1 -1
  161. package/src/pro/websocket/broadcast-helper.js +1 -1
  162. package/src/pro/websocket/index.js +1 -1
  163. package/src/pro/websocket/livesync-server.js +1 -1
  164. package/src/pro/websocket/ws-broadcaster.js +1 -1
  165. package/src/services/export-service.js +1 -1
  166. package/src/services/import-service.js +1 -1
  167. package/src/services/kafkaConsumerService.js +1 -1
  168. package/src/services/kafkaService.js +1 -1
  169. package/src/services/messagehubService.js +1 -1
  170. package/src/services/rabbitmqService.js +1 -1
  171. package/src/utils/cache-invalidation-registry.js +1 -1
  172. package/src/utils/cache-manager.js +1 -1
  173. package/src/utils/component-engine.js +1 -1
  174. package/src/utils/config-extractor.js +1 -1
  175. package/src/utils/consumerLogger.js +1 -1
  176. package/src/utils/context-builder.js +1 -1
  177. package/src/utils/dashboard-helpers.js +1 -1
  178. package/src/utils/dateHelper.js +1 -1
  179. package/src/utils/datetime-formatter.js +1 -1
  180. package/src/utils/datetime-parser.js +1 -1
  181. package/src/utils/db-bootstrap.js +1 -1
  182. package/src/utils/db-mysql.js +1 -1
  183. package/src/utils/db-oracle.js +1 -1
  184. package/src/utils/db-sqlite.js +1 -1
  185. package/src/utils/db.js +1 -1
  186. package/src/utils/demo-generator.js +1 -1
  187. package/src/utils/excel-generator.js +1 -1
  188. package/src/utils/excel-parser.js +1 -1
  189. package/src/utils/file-watcher.js +1 -1
  190. package/src/utils/id-generator.js +1 -1
  191. package/src/utils/idempotency-manager.js +1 -1
  192. package/src/utils/import-validator.js +1 -1
  193. package/src/utils/license-client.js +1 -1
  194. package/src/utils/lock-manager.js +1 -1
  195. package/src/utils/logger.js +1 -1
  196. package/src/utils/lookup-resolver.js +1 -1
  197. package/src/utils/payload-loader.js +1 -1
  198. package/src/utils/processor-response.js +1 -1
  199. package/src/utils/rabbitmq.js +1 -1
  200. package/src/utils/redis-client.js +1 -1
  201. package/src/utils/redis-helper.js +1 -1
  202. package/src/utils/request-scope.js +1 -1
  203. package/src/utils/security-checks.js +1 -1
  204. package/src/utils/service-resolver.js +1 -1
  205. package/src/utils/shutdown-coordinator.js +1 -1
  206. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  207. package/src/utils/sql-table-extractor.js +1 -1
  208. package/src/utils/trusted-keys.js +1 -1
  209. package/src/utils/upload-handler.js +1 -1
  210. package/src/utils/upsert-builder.js +1 -1
  211. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0xbf7392=a0_0x4ee2;function a0_0x4ee2(_0x1c5b00,_0x4a360b){_0x1c5b00=_0x1c5b00-0x18e;const _0x405ea7=a0_0x405e();let _0x4ee235=_0x405ea7[_0x1c5b00];if(a0_0x4ee2['iGzlJw']===undefined){var _0x59b7e5=function(_0x2868d7){const _0x53daf1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f2af2='',_0x2c05a9='';for(let _0x26063b=0x0,_0x5e2191,_0x4f252f,_0x3a7fe0=0x0;_0x4f252f=_0x2868d7['charAt'](_0x3a7fe0++);~_0x4f252f&&(_0x5e2191=_0x26063b%0x4?_0x5e2191*0x40+_0x4f252f:_0x4f252f,_0x26063b++%0x4)?_0x2f2af2+=String['fromCharCode'](0xff&_0x5e2191>>(-0x2*_0x26063b&0x6)):0x0){_0x4f252f=_0x53daf1['indexOf'](_0x4f252f);}for(let _0x3345a0=0x0,_0x35d61f=_0x2f2af2['length'];_0x3345a0<_0x35d61f;_0x3345a0++){_0x2c05a9+='%'+('00'+_0x2f2af2['charCodeAt'](_0x3345a0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2c05a9);};a0_0x4ee2['vFLhEs']=_0x59b7e5,a0_0x4ee2['tkOnmf']={},a0_0x4ee2['iGzlJw']=!![];}const _0x38a6d6=_0x405ea7[0x0],_0x19b349=_0x1c5b00+_0x38a6d6,_0x3fc235=a0_0x4ee2['tkOnmf'][_0x19b349];return!_0x3fc235?(_0x4ee235=a0_0x4ee2['vFLhEs'](_0x4ee235),a0_0x4ee2['tkOnmf'][_0x19b349]=_0x4ee235):_0x4ee235=_0x3fc235,_0x4ee235;}(function(_0x30a1db,_0x9ebada){const _0x2f24f4=a0_0x4ee2,_0x5e60c0=_0x30a1db();while(!![]){try{const _0x326cd6=-parseInt(_0x2f24f4(0x1e6))/0x1+-parseInt(_0x2f24f4(0x191))/0x2*(parseInt(_0x2f24f4(0x1b5))/0x3)+-parseInt(_0x2f24f4(0x1b1))/0x4*(-parseInt(_0x2f24f4(0x1c8))/0x5)+parseInt(_0x2f24f4(0x1a7))/0x6*(parseInt(_0x2f24f4(0x19d))/0x7)+-parseInt(_0x2f24f4(0x1a2))/0x8+-parseInt(_0x2f24f4(0x1b8))/0x9*(parseInt(_0x2f24f4(0x1c9))/0xa)+parseInt(_0x2f24f4(0x19e))/0xb;if(_0x326cd6===_0x9ebada)break;else _0x5e60c0['push'](_0x5e60c0['shift']());}catch(_0x52228f){_0x5e60c0['push'](_0x5e60c0['shift']());}}}(a0_0x405e,0x44343));const oracledb=require(a0_0xbf7392(0x1a9)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0xbf7392(0x1bb));oracledb[a0_0xbf7392(0x1aa)]=[oracledb['CLOB'],oracledb['NCLOB']],oracledb[a0_0xbf7392(0x196)]=[oracledb['BLOB']];function a0_0x405e(){const _0x40876c=['mtiZnK5IvMvXBW','u0vmrunuifnzu0rbveuGyxmGy3vYCMvUDf9KyxrLlcbvu0vsigfZign1CNjLBNrFDxnLCIbguK9niervquW','ug9VBcbUB3qGAw5PDgLHBgL6zwq','BgvUz3rO','mta1mJDpuenfrKm','zxHPDa','ihf1zxjPzxmP','mta4mdLIq1fyC00','qwn0AxzL','CM93CW','lI9SB2DNzxi','u0Lhsu5u','mhWXFdj8m3W0','C3bSAxq','veXiB2i','BgfZDfjVD2LK','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','ueLhBNa','BxmSia','wMTABu4','z2v0ug9VBfn0yxrPC3rPy3m','uhnyweG','B3jHy2XLx3rLC3rFy29UBMvJDgLVBL9JBg9Zzv9LCNjVCG','nZu0mhrdsLvqwa','mJa1mefcswnwuG','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','Cg9VBe1PBG','BwvZC2fNzq','uMLKB2u','ywHrD0G','B3jHy2XLx3bVB2XFy2XVC2LUzW','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','tKnmt0i','te1ithC','B3jHy2XL','C3vIC3rYAw5N','Bg9JywXOB3n0','t3jHy2XLifnrtcbfCNjVCJOG','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBJOG','s29juwm','CM93C0fMzMvJDgvK','Cg9VBfrPBwvVDxq','CgfYyw1Z','yLPbr0q','zxHLy3v0zq','t3jHy2XLienVBM5Ly3rPB24Gu3rYAw5NoIa','y2XVC2vqB29S','rejFue9ptf9jtKnsru1ftLq','zw52','A2nqu2C','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5Nie9YywnSzsbJB25Uzwn0Aw9UihbVB2WUlI4','ELLAzNa','y29UBMvJDgLVBNnjBLvZzq','mZGXoti4BKXlzgXM','rejFue9ptf9usu1ft1vu','B3jHy2XLx3bVB2XFzxHPC3rZ','Aw5MBW','z2v0q29UBMvJDgLVBG','yxv0B0nVBw1PDa','B3jHy2XLx3bVB2XFy3jLyxrLza','A0TmAuC','t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','DgvZDenVBM5Ly3rPB24','x25SC1jLywr5','mZHlsuzhAwC','u0Lhvevstq','rejFse9tva','q3f0y1q','rejFue9sva','zMv0y2HbC0j1zMzLCG','Aw5PDgLHBgL6zvbVB2W','t1vux0zpuK1bvf9pqKPfq1q','zgvIDwC','y29TBwL0','CwfgtNu','CM9SBgjHy2TFzxjYB3i','n1rKwM5zuq','ntCWmJiZnwTvwezyyq','tuX4t0m','qKHTweG','qKLnDKu','mJG2nJq3mKvuz3vPBG','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','rejFtKfnrq','zxjYB3joDw0','ENPUr2m','mJa4odCXngndr0Dqwq','mhWZFdr8mxWY','B3jHy2XLzgi','zMv0y2HbC1n0CMLUzW','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','uLHTwwi','Cg9VBe1HEa','Cg9VBa','y29UzMLN','mtuYmq'];a0_0x405e=function(){return _0x40876c;};return a0_0x405e();}async function ensureNlsReady(_0x3891d8){const _0x2ca747=a0_0xbf7392,_0xeb1404=_0x2ca747(0x1a8)['split']('|');let _0x141aa8=0x0;while(!![]){switch(_0xeb1404[_0x141aa8++]){case'0':if(_0x3891d8[_0x2ca747(0x190)])return;continue;case'1':await _0x3891d8[_0x2ca747(0x1dd)](_0x2ca747(0x1c1));continue;case'2':_0x3891d8[_0x2ca747(0x190)]=!![];continue;case'3':await _0x3891d8['execute']('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27');continue;case'4':await _0x3891d8[_0x2ca747(0x1dd)](_0x2ca747(0x1d0));continue;}break;}}class OracleDatabase{constructor(){const _0x5cfdac=a0_0xbf7392,_0x27096f={'ahQwH':function(_0x305511,_0x426af5){return _0x305511(_0x426af5);},'zznGc':'1521'};this[_0x5cfdac(0x1ae)]=null,this[_0x5cfdac(0x1af)]={'user':process['env']['DB_USER']||'hr','password':process[_0x5cfdac(0x1e1)]['DB_PASSWORD']||'hr','connectString':this['buildConnectionString'](),'poolMin':parseInt(process[_0x5cfdac(0x1e1)]['DB_POOL_MIN'])||0x2,'poolMax':parseInt(process['env']['DB_POOL_MAX'])||0xa,'poolIncrement':_0x27096f[_0x5cfdac(0x1ce)](parseInt,process['env'][_0x5cfdac(0x1e0)])||0x1,'poolTimeout':_0x27096f['ahQwH'](parseInt,process[_0x5cfdac(0x1e1)][_0x5cfdac(0x1e7)])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb['CLOB'],oracledb[_0x5cfdac(0x1d1)]],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process[_0x5cfdac(0x1e1)][_0x5cfdac(0x193)]||_0x5cfdac(0x1d5),'port':process['env'][_0x5cfdac(0x195)]||_0x27096f[_0x5cfdac(0x1a6)],'database':process['env'][_0x5cfdac(0x1a4)]||'XE','type':_0x5cfdac(0x1d3),'user':this[_0x5cfdac(0x1af)]['user'],'poolMin':this['config'][_0x5cfdac(0x1cb)],'poolMax':this['config']['poolMax']});}[a0_0xbf7392(0x1a3)](){const _0x91399=a0_0xbf7392,_0x37d7e8=process[_0x91399(0x1e1)][_0x91399(0x193)]||'localhost',_0x59f09c=process['env'][_0x91399(0x195)]||_0x91399(0x1b0),_0x24eb13=process[_0x91399(0x1e1)]['DB_NAME']||'XE',_0x3f018a='//'+_0x37d7e8+':'+_0x59f09c+'/'+_0x24eb13;return logger[_0x91399(0x199)]({'event':'oracle_connection_string','connectionString':_0x3f018a},_0x91399(0x1de)+_0x3f018a),_0x3f018a;}async['initializePool'](){const _0x3dd47d=a0_0xbf7392,_0x4fa0ac={'KPxNT':_0x3dd47d(0x1bd),'BQYAe':_0x3dd47d(0x1e8),'Yehrc':'Oracle\x20connection\x20pool\x20sudah\x20ada','ZzOBo':'oracle_pool_creating','kcPSg':'Creating\x20Oracle\x20connection\x20pool...','FslTo':_0x3dd47d(0x1ec),'xJBco':'Oracle\x20connection\x20pool\x20created\x20successfully'};try{const _0x1fac9c=_0x4fa0ac['KPxNT'][_0x3dd47d(0x1be)]('|');let _0x1aacfc=0x0;while(!![]){switch(_0x1fac9c[_0x1aacfc++]){case'0':if(this['pool']){logger[_0x3dd47d(0x199)]({'event':_0x4fa0ac['BQYAe']},_0x4fa0ac['Yehrc']);return;}continue;case'1':logger[_0x3dd47d(0x1e9)]({'event':_0x4fa0ac['ZzOBo']},_0x4fa0ac[_0x3dd47d(0x1e2)]);continue;case'2':this['pool']=await oracledb['createPool'](this['config']);continue;case'3':logger['info']({'event':_0x4fa0ac['FslTo']},_0x4fa0ac['xJBco']);continue;case'4':await this[_0x3dd47d(0x18f)]();continue;}break;}}catch(_0xf41d9a){logError(_0xf41d9a,{'event':'oracle_pool_error'},'Error\x20saat\x20membuat\x20Oracle\x20connection\x20pool:\x20'+_0xf41d9a[_0x3dd47d(0x1cc)]);throw _0xf41d9a;}}async['testConnection'](){const _0x40c687=a0_0xbf7392,_0x4ad401={'GWGzl':function(_0x52a887,_0x9b924b){return _0x52a887(_0x9b924b);},'GRSOy':_0x40c687(0x1b2),'zYZfp':function(_0x32f789,_0x5cb390,_0x4a9d1d,_0x628d9b){return _0x32f789(_0x5cb390,_0x4a9d1d,_0x628d9b);},'nCNFO':_0x40c687(0x1ab)};let _0x385645;try{logger[_0x40c687(0x199)]({'event':_0x40c687(0x1ca)},'Testing\x20Oracle\x20database\x20connection...'),_0x385645=await this[_0x40c687(0x1ae)][_0x40c687(0x1ea)](),await _0x4ad401['GWGzl'](ensureNlsReady,_0x385645);const _0x559236=await _0x385645['execute'](_0x4ad401['GRSOy']);logger['info']({'event':'oracle_connection_test_success','currentDate':_0x559236[_0x40c687(0x1ba)][0x0][0x0],'currentUser':_0x559236[_0x40c687(0x1ba)][0x0][0x1]},'Oracle\x20connection\x20test\x20berhasil\x20-\x20User:\x20'+_0x559236['rows'][0x0][0x1]);}catch(_0x9aa97){_0x4ad401['zYZfp'](logError,_0x9aa97,{'event':_0x4ad401['nCNFO']},'Oracle\x20connection\x20test\x20gagal:\x20'+_0x9aa97[_0x40c687(0x1cc)]);throw _0x9aa97;}finally{if(_0x385645)try{await _0x385645['close']();}catch(_0x404e62){_0x4ad401[_0x40c687(0x1e4)](logError,_0x404e62,{'event':_0x40c687(0x1c7)},'Error\x20closing\x20test\x20connection:\x20'+_0x404e62['message']);}}}async['executeQuery'](_0x2faae1,_0xd1294e=[],_0x2ebe49={}){const _0x53207b=a0_0xbf7392,_0x4c8ec5={'PsXXH':function(_0x500cd2,_0x19979e){return _0x500cd2!==_0x19979e;},'KoIQc':function(_0xf1efe0){return _0xf1efe0();},'VPCMX':_0x53207b(0x1d3),'Sczkw':function(_0x58790e,_0x23e6c8,_0x2f5902,_0x4a685f){return _0x58790e(_0x23e6c8,_0x2f5902,_0x4a685f);},'RXmYb':'sql_error','ckBGu':function(_0x5f1e6b,_0xff6f35,_0x38b812,_0x568a7b){return _0x5f1e6b(_0xff6f35,_0x38b812,_0x568a7b);}};let _0x3f2337;const _0x50b77b=startQueryTimer();try{!this['pool']&&await this[_0x53207b(0x197)]();_0x3f2337=await this[_0x53207b(0x1ae)][_0x53207b(0x1ea)](),await ensureNlsReady(_0x3f2337);const _0x152ed8={'outFormat':oracledb[_0x53207b(0x198)],'autoCommit':_0x4c8ec5[_0x53207b(0x1c6)](_0x2ebe49[_0x53207b(0x1eb)],undefined)?_0x2ebe49['autoCommit']:!![],..._0x2ebe49},_0x50bbe7=await _0x3f2337['execute'](_0x2faae1,_0xd1294e,_0x152ed8),_0x52b524=_0x4c8ec5[_0x53207b(0x1d8)](_0x50b77b),_0x1e5245=_0x50bbe7['rows']?_0x50bbe7[_0x53207b(0x1ba)]['length']:_0x50bbe7[_0x53207b(0x1d9)];return logQuery(_0x2faae1,_0xd1294e,{'duration':_0x52b524,'rowsAffected':_0x1e5245,'dbType':_0x4c8ec5['VPCMX']}),_0x50bbe7['rows']?_0x50bbe7['rows']:{'rowsAffected':_0x50bbe7['rowsAffected'],'lastRowid':_0x50bbe7[_0x53207b(0x1c0)]};}catch(_0x2a7b16){const _0x4de4c8=_0x50b77b();_0x4c8ec5['Sczkw'](logError,_0x2a7b16,{'event':_0x4c8ec5[_0x53207b(0x1ac)],'query':_0x2faae1[_0x53207b(0x1d4)](0x0,0x1f4),'paramCount':_0xd1294e[_0x53207b(0x1b4)],'durationMs':_0x4de4c8,'code':_0x2a7b16[_0x53207b(0x1a5)],'dbType':'oracle'},_0x53207b(0x1d6)+_0x2a7b16[_0x53207b(0x1cc)]);throw _0x2a7b16;}finally{if(_0x3f2337)try{await _0x3f2337['close']();}catch(_0x3d5354){_0x4c8ec5['ckBGu'](logError,_0x3d5354,{'event':'oracle_connection_close_error'},_0x53207b(0x1d7)+_0x3d5354['message']);}}}async['executeTransaction'](_0xcc860d){const _0x3522e2=a0_0xbf7392,_0x3e6572={'CqtcT':function(_0x486636,_0x7e0833,_0x50dbea){return _0x486636(_0x7e0833,_0x50dbea);},'lLKom':'start','MLxOC':function(_0x37c45f){return _0x37c45f();},'kKLiG':function(_0x24e6dc){return _0x24e6dc();},'qaFNu':function(_0x45b3d3,_0x27a3dc,_0x51ab1f,_0x8f1ced){return _0x45b3d3(_0x27a3dc,_0x51ab1f,_0x8f1ced);},'BIMvE':_0x3522e2(0x1d3),'bZAGD':function(_0x405b23){return _0x405b23();},'qIaWY':'rollback'};let _0x4462ec;const _0x4c211d=startQueryTimer();try{!this[_0x3522e2(0x1ae)]&&await this[_0x3522e2(0x197)]();_0x4462ec=await this['pool']['getConnection'](),await ensureNlsReady(_0x4462ec),_0x3e6572[_0x3522e2(0x194)](logTransaction,_0x3e6572['lLKom'],_0xcc860d[_0x3522e2(0x1b4)]);const _0x11122a=[];for(const _0x51ab71 of _0xcc860d){const _0x1c656f=_0x3e6572[_0x3522e2(0x19f)](startQueryTimer),_0x51e099=await _0x4462ec['execute'](_0x51ab71['sql'],_0x51ab71[_0x3522e2(0x1db)]||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x2e215a=_0x3e6572[_0x3522e2(0x1ed)](_0x1c656f),_0x16825b=_0x51e099['rows']?_0x51e099[_0x3522e2(0x1ba)][_0x3522e2(0x1b4)]:_0x51e099[_0x3522e2(0x1d9)];_0x3e6572[_0x3522e2(0x19b)](logQuery,_0x51ab71['sql'],_0x51ab71['params']||[],{'duration':_0x2e215a,'rowsAffected':_0x16825b,'dbType':_0x3e6572['BIMvE']}),_0x11122a['push'](_0x51e099);}await _0x4462ec[_0x3522e2(0x19a)]();const _0x521b9a=_0x3e6572[_0x3522e2(0x1dc)](_0x4c211d);return _0x3e6572['CqtcT'](logTransaction,'commit',_0xcc860d['length']),logger['info']({'event':'transaction_complete','queryCount':_0xcc860d['length'],'totalDurationMs':_0x521b9a,'dbType':_0x3522e2(0x1d3)},'Oracle\x20transaction\x20committed\x20('+_0x521b9a+_0x3522e2(0x1c3)+_0xcc860d[_0x3522e2(0x1b4)]+_0x3522e2(0x1b7)),_0x11122a;}catch(_0x32cea6){const _0x256609=_0x4c211d();logError(_0x32cea6,{'event':'transaction_error','queryCount':_0xcc860d[_0x3522e2(0x1b4)],'totalDurationMs':_0x256609,'code':_0x32cea6['errorNum'],'dbType':_0x3e6572['BIMvE']},_0x3522e2(0x18e)+_0x32cea6['message']);if(_0x4462ec)try{await _0x4462ec['rollback'](),logTransaction(_0x3e6572['qIaWY'],_0xcc860d['length']);}catch(_0x46c425){_0x3e6572['qaFNu'](logError,_0x46c425,{'event':_0x3522e2(0x19c),'dbType':_0x3e6572[_0x3522e2(0x1a1)]},'Error\x20rolling\x20back\x20Oracle\x20transaction:\x20'+_0x46c425['message']);}throw _0x32cea6;}finally{if(_0x4462ec)try{await _0x4462ec['close']();}catch(_0x361488){_0x3e6572[_0x3522e2(0x19b)](logError,_0x361488,{'event':'oracle_transaction_connection_close_error'},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x361488[_0x3522e2(0x1cc)]);}}}async[a0_0xbf7392(0x1df)](){const _0x441e10=a0_0xbf7392,_0x20852c={'BHmXH':'Oracle\x20connection\x20pool\x20closed','LMHLw':'oracle_pool_close_error'};try{this[_0x441e10(0x1ae)]&&(logger[_0x441e10(0x1e9)]({'event':_0x441e10(0x1cf)},'Closing\x20Oracle\x20connection\x20pool...'),await this[_0x441e10(0x1ae)]['close'](0xa),this['pool']=null,logger[_0x441e10(0x1e9)]({'event':'oracle_pool_closed'},_0x20852c[_0x441e10(0x1a0)]));}catch(_0x3eb093){logError(_0x3eb093,{'event':_0x20852c[_0x441e10(0x1d2)]},'Error\x20closing\x20Oracle\x20connection\x20pool:\x20'+_0x3eb093[_0x441e10(0x1cc)]);throw _0x3eb093;}}[a0_0xbf7392(0x1c5)](){const _0xb64a95=a0_0xbf7392,_0x128bcd={'KUMcg':_0xb64a95(0x1b3)};if(!this['pool'])return{'status':_0x128bcd['KUMcg']};return{'connectionsInUse':this[_0xb64a95(0x1ae)][_0xb64a95(0x1e5)],'connectionsOpen':this['pool']['connectionsOpen'],'poolAlias':this['pool']['poolAlias'],'poolMin':this[_0xb64a95(0x1ae)][_0xb64a95(0x1cb)],'poolMax':this[_0xb64a95(0x1ae)][_0xb64a95(0x1ad)],'poolIncrement':this[_0xb64a95(0x1ae)]['poolIncrement'],'poolTimeout':this[_0xb64a95(0x1ae)][_0xb64a95(0x1da)],'status':_0xb64a95(0x1b9)};}}const oracleDb=new OracleDatabase();process['on'](a0_0xbf7392(0x1bc),async()=>{const _0x535f5b=a0_0xbf7392,_0x458e2a={'Ridoe':'oracle_shutdown','PIGnp':_0x535f5b(0x1bc),'HuQhe':'oracle_shutdown_error'};logger[_0x535f5b(0x1e9)]({'event':_0x458e2a[_0x535f5b(0x1cd)],'signal':_0x458e2a[_0x535f5b(0x1c2)]},_0x535f5b(0x1e3));try{await oracleDb[_0x535f5b(0x1df)](),process['exit'](0x0);}catch(_0x1e709c){logError(_0x1e709c,{'event':_0x458e2a['HuQhe'],'signal':_0x535f5b(0x1bc)},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x1e709c['message']),process['exit'](0x1);}}),process['on'](a0_0xbf7392(0x192),async()=>{const _0x4591f=a0_0xbf7392,_0xddb595={'ZkZmN':'SIGTERM','TLHob':'oracle_shutdown_error'};logger[_0x4591f(0x1e9)]({'event':'oracle_shutdown','signal':_0xddb595['ZkZmN']},'Received\x20SIGTERM,\x20closing\x20Oracle\x20connection\x20pool...');try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x18629a){logError(_0x18629a,{'event':_0xddb595[_0x4591f(0x1bf)],'signal':_0xddb595[_0x4591f(0x1c4)]},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x18629a['message']),process[_0x4591f(0x1b6)](0x1);}}),module['exports']=oracleDb;
1
+ const a0_0x1c7047=a0_0x3734;(function(_0xa1abb6,_0x1b7290){const _0x565cfb=a0_0x3734,_0x2cedd6=_0xa1abb6();while(!![]){try{const _0x4e2c88=-parseInt(_0x565cfb(0xef))/0x1*(parseInt(_0x565cfb(0xf3))/0x2)+parseInt(_0x565cfb(0xb4))/0x3*(-parseInt(_0x565cfb(0xaa))/0x4)+-parseInt(_0x565cfb(0xfc))/0x5+parseInt(_0x565cfb(0xbd))/0x6+-parseInt(_0x565cfb(0x10a))/0x7*(-parseInt(_0x565cfb(0xce))/0x8)+-parseInt(_0x565cfb(0xc6))/0x9*(-parseInt(_0x565cfb(0x108))/0xa)+-parseInt(_0x565cfb(0xe8))/0xb*(-parseInt(_0x565cfb(0xe2))/0xc);if(_0x4e2c88===_0x1b7290)break;else _0x2cedd6['push'](_0x2cedd6['shift']());}catch(_0x479903){_0x2cedd6['push'](_0x2cedd6['shift']());}}}(a0_0x177e,0x788e0));function a0_0x177e(){const _0x4d670f=['yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','ChvZAa','rejFue9ptf9nqvG','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBJOG','vgvZDgLUzYbpCMfJBguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','B3jHy2XLx3bVB2XFy2XVC2vK','q3DXCNe','yxv0B0nVBw1PDa','DvnQBxK','mtjuq1DsCuG','z2v0q29UBMvJDgLVBG','C3fS','y2XVC2u','Eg1Ruem','y29UzMLN','mti4nJy0ndDyDefoA3y','Cg9VBe1PBG','t1vux0zpuK1bvf9pqKPfq1q','B3jHy2XLzgi','u0Lhsu5u','rxjYB3iGCM9SBgLUzYbIywnRie9YywnSzsb0CMfUC2fJDgLVBJOG','mtuYmq','mvvZAxbXra','q0XpqG','u0Lhvevstq','rNrYr2K','mtG2mJa2nMLXA3rrEq','CM9SBgjHy2S','q0jtAuO','zeHRshe','zxHLy3v0zq','uvzgsNO','AK9Pq0y','CM9SBgjHy2TFzxjYB3i','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJCMvHDgvKihn1y2nLC3nMDwXSEq','otmWndyWsKjgsvze','rhjmv1i','zgvIDwC','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','zxHLy3v0zvrYyw5Zywn0Aw9U','Cg9VBa','rxjYB3iGy2XVC2LUzYb0zxn0ignVBM5Ly3rPB246ia','BgvUz3rO','t3jHy2XLienVBM5Ly3rPB24Gu3rYAw5NoIa','tKnmt0i','Cg9VBefSAwfZ','rejFse9tva','mtKWDxHRrePz','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','mZGWmduXwMvlEejI','BgfZDfjVD2LK','quXurviGu0vtu0LptIbtrvqGtKXtx0rbvevFrK9stufuid0Gj1LzwvKTtu0TreqN','BwvZC2fNzq','y29TBwL0','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','mJmWndrbBePNAeq','rejFtKfnrq','DhjHBNnHy3rPB25FzxjYB3i','B3jHy2XLx3bVB2XFzxHPC3rZ','zxHLy3v0zvf1zxj5','zMv0y2HbC0j1zMzLCG','B3jHy2XLx3nODxrKB3DU','B3jHy2XLx3bVB2XFy2XVC2vFzxjYB3i','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','B3jHy2XL','mZa5rMnTvffJ','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','Aw5PDgLHBgL6zvbVB2W','C3vIC3rYAw5N','rejFvvnfuG','y2XVC2vqB29S','B0vgt0S','sKzYr20','AfjlCwC','mZu5mZG4nMjwvxLIrq','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','uhPtzfK','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','C3bSAxq','Bg9JywXOB3n0','y29UBMvJDgLVBNnjBLvZzq','DgvZDenVBM5Ly3rPB24','q2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','mtGWnJm5rKzfsMLz','rejFueftu1DpuKq','t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','Aw5MBW','A3fcsgW','rejFue9sva','zxHPDa','x25SC1jLywr5','oezwwuLIrq','yNbND3e','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','zw52','B3jHy2XLx3rLC3rFy29UBMvJDgLVBL9JBg9Zzv9LCNjVCG','CM93CW','C3rHCNq','qKXpqG','CfLSthG','C3fSx2vYCM9Y'];a0_0x177e=function(){return _0x4d670f;};return a0_0x177e();}const oracledb=require(a0_0x1c7047(0xeb)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');oracledb['fetchAsString']=[oracledb[a0_0x1c7047(0xf0)],oracledb[a0_0x1c7047(0x105)]],oracledb[a0_0x1c7047(0xaf)]=[oracledb[a0_0x1c7047(0xd5)]];async function ensureNlsReady(_0x151615){const _0x3db13e=a0_0x1c7047,_0x10261d='0|1|2|3|4'[_0x3db13e(0xc1)]('|');let _0x208ebf=0x0;while(!![]){switch(_0x10261d[_0x208ebf++]){case'0':if(_0x151615['_nlsReady'])return;continue;case'1':await _0x151615[_0x3db13e(0xf7)](_0x3db13e(0x10c));continue;case'2':await _0x151615['execute'](_0x3db13e(0xdb));continue;case'3':await _0x151615['execute'](_0x3db13e(0xff));continue;case'4':_0x151615[_0x3db13e(0xcd)]=!![];continue;}break;}}class OracleDatabase{constructor(){const _0x166672=a0_0x1c7047,_0x22490e={'QVFJz':function(_0x38cfc0,_0x4a8a0f){return _0x38cfc0(_0x4a8a0f);},'CBSiJ':_0x166672(0xc2)};this['pool']=null,this['config']={'user':process['env'][_0x166672(0xb8)]||'hr','password':process['env'][_0x166672(0xc7)]||'hr','connectString':this[_0x166672(0xd8)](),'poolMin':_0x22490e[_0x166672(0xf8)](parseInt,process[_0x166672(0xd1)]['DB_POOL_MIN'])||0x2,'poolMax':_0x22490e[_0x166672(0xf8)](parseInt,process['env'][_0x166672(0xda)])||0xa,'poolIncrement':parseInt(process['env']['DB_POOL_INCREMENT'])||0x1,'poolTimeout':_0x22490e['QVFJz'](parseInt,process['env']['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x166672(0xf0)],oracledb[_0x166672(0x105)]],'fetchAsBuffer':[oracledb[_0x166672(0xd5)]]},_0x22490e['QVFJz'](logDatabaseConfig,{'host':process[_0x166672(0xd1)][_0x166672(0x107)]||_0x22490e[_0x166672(0xf5)],'port':process['env'][_0x166672(0xcb)]||'1521','database':process[_0x166672(0xd1)][_0x166672(0xab)]||'XE','type':_0x166672(0xb3),'user':this[_0x166672(0xe7)]['user'],'poolMin':this['config'][_0x166672(0xe9)],'poolMax':this[_0x166672(0xe7)]['poolMax']});}['buildConnectionString'](){const _0x1b08a8=a0_0x1c7047,_0x2962eb={'NxblS':'localhost','FtrGi':_0x1b08a8(0xee),'Mprgf':'oracle_connection_string'},_0x47620f=process[_0x1b08a8(0xd1)]['DB_HOST']||_0x2962eb['NxblS'],_0xf9f513=process[_0x1b08a8(0xd1)][_0x1b08a8(0xcb)]||_0x2962eb[_0x1b08a8(0xf2)],_0x1d6dd7=process[_0x1b08a8(0xd1)]['DB_NAME']||'XE',_0x59ea81='//'+_0x47620f+':'+_0xf9f513+'/'+_0x1d6dd7;return logger[_0x1b08a8(0xfe)]({'event':_0x2962eb['Mprgf'],'connectionString':_0x59ea81},_0x1b08a8(0x104)+_0x59ea81),_0x59ea81;}async[a0_0x1c7047(0xb6)](){const _0x2ba33e=a0_0x1c7047,_0x13b395={'STNNP':'1|3|4|2|0','EMNrP':'Oracle\x20connection\x20pool\x20sudah\x20ada','JFrGm':'oracle_pool_created','AyRia':'oracle_pool_creating','kqBHl':'oracle_pool_error'};try{const _0x4dabbf=_0x13b395['STNNP']['split']('|');let _0x495469=0x0;while(!![]){switch(_0x4dabbf[_0x495469++]){case'0':await this[_0x2ba33e(0xc4)]();continue;case'1':if(this['pool']){logger['debug']({'event':_0x2ba33e(0xad)},_0x13b395['EMNrP']);return;}continue;case'2':logger['info']({'event':_0x13b395[_0x2ba33e(0xbb)]},_0x2ba33e(0xfb));continue;case'3':logger[_0x2ba33e(0xc9)]({'event':_0x13b395['AyRia']},'Creating\x20Oracle\x20connection\x20pool...');continue;case'4':this['pool']=await oracledb['createPool'](this[_0x2ba33e(0xe7)]);continue;}break;}}catch(_0x582740){logError(_0x582740,{'event':_0x13b395[_0x2ba33e(0xca)]},_0x2ba33e(0xb5)+_0x582740['message']);throw _0x582740;}}async[a0_0x1c7047(0xc4)](){const _0x8ae557=a0_0x1c7047,_0x2935c2={'hRKqg':'SELECT\x20SYSDATE\x20as\x20current_date,\x20USER\x20as\x20current_user\x20FROM\x20DUAL','pYlLx':'oracle_connection_test_success','sYyGr':'oracle_connection_test_failed','PCApX':_0x8ae557(0xd2)};let _0x51e74e;try{logger[_0x8ae557(0xfe)]({'event':'oracle_connection_test_start'},_0x8ae557(0xdd)),_0x51e74e=await this[_0x8ae557(0x101)]['getConnection'](),await ensureNlsReady(_0x51e74e);const _0x57223f=await _0x51e74e['execute'](_0x2935c2[_0x8ae557(0xbc)]);logger[_0x8ae557(0xc9)]({'event':_0x2935c2[_0x8ae557(0xd6)],'currentDate':_0x57223f[_0x8ae557(0xd3)][0x0][0x0],'currentUser':_0x57223f['rows'][0x0][0x1]},_0x8ae557(0xd0)+_0x57223f[_0x8ae557(0xd3)][0x0][0x1]);}catch(_0x17cef8){logError(_0x17cef8,{'event':_0x2935c2['sYyGr']},_0x8ae557(0xbe)+_0x17cef8['message']);throw _0x17cef8;}finally{if(_0x51e74e)try{await _0x51e74e['close']();}catch(_0x3cf52d){logError(_0x3cf52d,{'event':_0x2935c2['PCApX']},_0x8ae557(0x102)+_0x3cf52d['message']);}}}async[a0_0x1c7047(0xae)](_0x5afb3a,_0x54e2ce=[],_0x1462af={}){const _0x970ce7=a0_0x1c7047,_0x1f29e0={'jOiCF':function(_0x45b0bf){return _0x45b0bf();},'DrLWR':function(_0x255166,_0x407697){return _0x255166(_0x407697);},'iaAWC':function(_0x13f881,_0x16a812){return _0x13f881!==_0x16a812;},'obuok':function(_0x547fa3){return _0x547fa3();},'bpgwq':function(_0x5c90cf){return _0x5c90cf();},'uSjmy':_0x970ce7(0xd7),'dHkHq':function(_0x10b024,_0xbd9b5f,_0x3e7d5b,_0x3f4aaa){return _0x10b024(_0xbd9b5f,_0x3e7d5b,_0x3f4aaa);}};let _0x12094b;const _0x157a45=_0x1f29e0[_0x970ce7(0xf9)](startQueryTimer);try{!this['pool']&&await this['initializePool']();_0x12094b=await this['pool']['getConnection'](),await _0x1f29e0[_0x970ce7(0xfd)](ensureNlsReady,_0x12094b);const _0x13d3b4={'outFormat':oracledb[_0x970ce7(0xea)],'autoCommit':_0x1f29e0['iaAWC'](_0x1462af[_0x970ce7(0xe0)],undefined)?_0x1462af['autoCommit']:!![],..._0x1462af},_0x532d04=await _0x12094b[_0x970ce7(0xf7)](_0x5afb3a,_0x54e2ce,_0x13d3b4),_0x39d7a6=_0x1f29e0['obuok'](_0x157a45),_0x58d5dd=_0x532d04[_0x970ce7(0xd3)]?_0x532d04['rows']['length']:_0x532d04['rowsAffected'];return logQuery(_0x5afb3a,_0x54e2ce,{'duration':_0x39d7a6,'rowsAffected':_0x58d5dd,'dbType':'oracle'}),_0x532d04[_0x970ce7(0xd3)]?_0x532d04[_0x970ce7(0xd3)]:{'rowsAffected':_0x532d04['rowsAffected'],'lastRowid':_0x532d04[_0x970ce7(0x10b)]};}catch(_0x240c71){const _0x5f1ea4=_0x1f29e0[_0x970ce7(0xcf)](_0x157a45);logError(_0x240c71,{'event':_0x1f29e0[_0x970ce7(0xe1)],'query':_0x5afb3a[_0x970ce7(0xb7)](0x0,0x1f4),'paramCount':_0x54e2ce[_0x970ce7(0x103)],'durationMs':_0x5f1ea4,'code':_0x240c71['errorNum'],'dbType':_0x970ce7(0xb3)},'Oracle\x20SQL\x20Error:\x20'+_0x240c71[_0x970ce7(0x10d)]);throw _0x240c71;}finally{if(_0x12094b)try{await _0x12094b['close']();}catch(_0x28eafb){_0x1f29e0[_0x970ce7(0xf6)](logError,_0x28eafb,{'event':'oracle_connection_close_error'},_0x970ce7(0xdc)+_0x28eafb['message']);}}}async[a0_0x1c7047(0x100)](_0x482cf6){const _0x40c616=a0_0x1c7047,_0x49c884={'xmkPC':function(_0x34f3cd){return _0x34f3cd();},'arQlH':function(_0x28d938){return _0x28d938();},'zAylk':function(_0x40797d,_0xd989a4,_0x526c12){return _0x40797d(_0xd989a4,_0x526c12);},'XZkqf':function(_0x3fe8de,_0x522ac5,_0x335568,_0x17370d){return _0x3fe8de(_0x522ac5,_0x335568,_0x17370d);},'PzSdY':_0x40c616(0xb3),'eFSyE':_0x40c616(0xfa)};let _0x26e3df;const _0x328f3b=startQueryTimer();try{!this[_0x40c616(0x101)]&&await this[_0x40c616(0xb6)]();_0x26e3df=await this[_0x40c616(0x101)][_0x40c616(0xe3)](),await ensureNlsReady(_0x26e3df),logTransaction(_0x40c616(0xd4),_0x482cf6[_0x40c616(0x103)]);const _0x243816=[];for(const _0xa2efd1 of _0x482cf6){const _0x1ae184=_0x49c884[_0x40c616(0xe6)](startQueryTimer),_0x176c09=await _0x26e3df[_0x40c616(0xf7)](_0xa2efd1[_0x40c616(0xe4)],_0xa2efd1['params']||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x1d869f=_0x49c884['arQlH'](_0x1ae184),_0x43edbb=_0x176c09['rows']?_0x176c09['rows'][_0x40c616(0x103)]:_0x176c09['rowsAffected'];logQuery(_0xa2efd1[_0x40c616(0xe4)],_0xa2efd1['params']||[],{'duration':_0x1d869f,'rowsAffected':_0x43edbb,'dbType':_0x40c616(0xb3)}),_0x243816[_0x40c616(0xd9)](_0x176c09);}await _0x26e3df['commit']();const _0xb5cebb=_0x49c884[_0x40c616(0xe6)](_0x328f3b);return _0x49c884['zAylk'](logTransaction,_0x40c616(0xa8),_0x482cf6['length']),logger[_0x40c616(0xc9)]({'event':'transaction_complete','queryCount':_0x482cf6['length'],'totalDurationMs':_0xb5cebb,'dbType':'oracle'},'Oracle\x20transaction\x20committed\x20('+_0xb5cebb+'ms,\x20'+_0x482cf6[_0x40c616(0x103)]+'\x20queries)'),_0x243816;}catch(_0x2a51e1){const _0x22d13c=_0x328f3b();_0x49c884['XZkqf'](logError,_0x2a51e1,{'event':_0x40c616(0xac),'queryCount':_0x482cf6['length'],'totalDurationMs':_0x22d13c,'code':_0x2a51e1['errorNum'],'dbType':_0x49c884[_0x40c616(0xbf)]},_0x40c616(0xc8)+_0x2a51e1['message']);if(_0x26e3df)try{await _0x26e3df[_0x40c616(0xf4)](),logTransaction(_0x40c616(0xf4),_0x482cf6['length']);}catch(_0x48c06d){logError(_0x48c06d,{'event':_0x49c884['eFSyE'],'dbType':'oracle'},_0x40c616(0xed)+_0x48c06d[_0x40c616(0x10d)]);}throw _0x2a51e1;}finally{if(_0x26e3df)try{await _0x26e3df[_0x40c616(0xe5)]();}catch(_0x34500e){logError(_0x34500e,{'event':_0x40c616(0xc0)},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x34500e[_0x40c616(0x10d)]);}}}async['closePool'](){const _0x762ccf=a0_0x1c7047,_0x5dff9e={'nJQWC':_0x762ccf(0xde),'tTIMS':'Oracle\x20connection\x20pool\x20closed','GqCTK':function(_0x4149f9,_0x1aa87b,_0x4457e2,_0xa3489e){return _0x4149f9(_0x1aa87b,_0x4457e2,_0xa3489e);}};try{this['pool']&&(logger['info']({'event':'oracle_pool_closing'},_0x762ccf(0xc5)),await this['pool'][_0x762ccf(0xe5)](0xa),this['pool']=null,logger['info']({'event':_0x5dff9e['nJQWC']},_0x5dff9e['tTIMS']));}catch(_0x5544ea){_0x5dff9e['GqCTK'](logError,_0x5544ea,{'event':_0x762ccf(0xb1)},_0x762ccf(0xa9)+_0x5544ea['message']);throw _0x5544ea;}}['getPoolStatistics'](){const _0x4fbbe2=a0_0x1c7047;if(!this[_0x4fbbe2(0x101)])return{'status':'Pool\x20not\x20initialized'};return{'connectionsInUse':this[_0x4fbbe2(0x101)][_0x4fbbe2(0xc3)],'connectionsOpen':this[_0x4fbbe2(0x101)]['connectionsOpen'],'poolAlias':this['pool'][_0x4fbbe2(0x106)],'poolMin':this['pool'][_0x4fbbe2(0xe9)],'poolMax':this['pool']['poolMax'],'poolIncrement':this['pool']['poolIncrement'],'poolTimeout':this[_0x4fbbe2(0x101)]['poolTimeout'],'status':'Active'};}}function a0_0x3734(_0x65681e,_0x1b89a8){_0x65681e=_0x65681e-0xa8;const _0x177efa=a0_0x177e();let _0x3734fc=_0x177efa[_0x65681e];if(a0_0x3734['eckiZg']===undefined){var _0x5591ff=function(_0x3b3ff3){const _0xa04144='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a78ce='',_0x517678='';for(let _0x561332=0x0,_0x57cec0,_0x4ec3fd,_0x146540=0x0;_0x4ec3fd=_0x3b3ff3['charAt'](_0x146540++);~_0x4ec3fd&&(_0x57cec0=_0x561332%0x4?_0x57cec0*0x40+_0x4ec3fd:_0x4ec3fd,_0x561332++%0x4)?_0x1a78ce+=String['fromCharCode'](0xff&_0x57cec0>>(-0x2*_0x561332&0x6)):0x0){_0x4ec3fd=_0xa04144['indexOf'](_0x4ec3fd);}for(let _0x287637=0x0,_0x140303=_0x1a78ce['length'];_0x287637<_0x140303;_0x287637++){_0x517678+='%'+('00'+_0x1a78ce['charCodeAt'](_0x287637)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x517678);};a0_0x3734['elLwrG']=_0x5591ff,a0_0x3734['zsddSf']={},a0_0x3734['eckiZg']=!![];}const _0x1b7656=_0x177efa[0x0],_0x341327=_0x65681e+_0x1b7656,_0x3418e5=a0_0x3734['zsddSf'][_0x341327];return!_0x3418e5?(_0x3734fc=a0_0x3734['elLwrG'](_0x3734fc),a0_0x3734['zsddSf'][_0x341327]=_0x3734fc):_0x3734fc=_0x3418e5,_0x3734fc;}const oracleDb=new OracleDatabase();process['on']('SIGINT',async()=>{const _0x36470c=a0_0x1c7047,_0x5af0af={'Cwqrq':_0x36470c(0xb0),'TSkdb':_0x36470c(0xec),'oEFOK':function(_0x14ccc0,_0x1f8787,_0x434944,_0x364c7b){return _0x14ccc0(_0x1f8787,_0x434944,_0x364c7b);}};logger['info']({'event':_0x5af0af[_0x36470c(0xdf)],'signal':_0x5af0af['TSkdb']},'Received\x20SIGINT,\x20closing\x20Oracle\x20connection\x20pool...');try{await oracleDb[_0x36470c(0xb9)](),process[_0x36470c(0xcc)](0x0);}catch(_0xcea46b){_0x5af0af[_0x36470c(0xba)](logError,_0xcea46b,{'event':_0x36470c(0xb2),'signal':_0x36470c(0xec)},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0xcea46b[_0x36470c(0x10d)]),process[_0x36470c(0xcc)](0x1);}}),process['on']('SIGTERM',async()=>{const _0x22c978=a0_0x1c7047,_0x1c1097={'YUKKK':_0x22c978(0xf1)};logger[_0x22c978(0xc9)]({'event':'oracle_shutdown','signal':_0x1c1097['YUKKK']},_0x22c978(0x109));try{await oracleDb['closePool'](),process[_0x22c978(0xcc)](0x0);}catch(_0x5ca558){logError(_0x5ca558,{'event':'oracle_shutdown_error','signal':_0x1c1097['YUKKK']},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x5ca558[_0x22c978(0x10d)]),process[_0x22c978(0xcc)](0x1);}}),module['exports']=oracleDb;
@@ -1 +1 @@
1
- const a0_0x209de5=a0_0x5752;function a0_0x5752(_0x181f1f,_0x2971c8){_0x181f1f=_0x181f1f-0x198;const _0x2f9de3=a0_0x2f9d();let _0x5752c3=_0x2f9de3[_0x181f1f];if(a0_0x5752['jyrVgQ']===undefined){var _0x50fc92=function(_0x498c4c){const _0x5ab736='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x53557d='',_0x2632f6='';for(let _0x54e09c=0x0,_0x28654e,_0x15f3e5,_0x4924ac=0x0;_0x15f3e5=_0x498c4c['charAt'](_0x4924ac++);~_0x15f3e5&&(_0x28654e=_0x54e09c%0x4?_0x28654e*0x40+_0x15f3e5:_0x15f3e5,_0x54e09c++%0x4)?_0x53557d+=String['fromCharCode'](0xff&_0x28654e>>(-0x2*_0x54e09c&0x6)):0x0){_0x15f3e5=_0x5ab736['indexOf'](_0x15f3e5);}for(let _0x180615=0x0,_0xfbf885=_0x53557d['length'];_0x180615<_0xfbf885;_0x180615++){_0x2632f6+='%'+('00'+_0x53557d['charCodeAt'](_0x180615)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2632f6);};a0_0x5752['dQEtiZ']=_0x50fc92,a0_0x5752['FUizDL']={},a0_0x5752['jyrVgQ']=!![];}const _0x3b2a8e=_0x2f9de3[0x0],_0x1f7774=_0x181f1f+_0x3b2a8e,_0x58ac56=a0_0x5752['FUizDL'][_0x1f7774];return!_0x58ac56?(_0x5752c3=a0_0x5752['dQEtiZ'](_0x5752c3),a0_0x5752['FUizDL'][_0x1f7774]=_0x5752c3):_0x5752c3=_0x58ac56,_0x5752c3;}function a0_0x2f9d(){const _0x40b2bd=['nduYotDbsfPlzue','mJCWuKLKBe53','y2HHBMDLCW','lI9SB2DNzxi','rejFtKfnrq','BwvZC2fNzq','qNbbu2e','ChjLCgfYzq','DhjHBNnHy3rPB24','DgvZDa','CgfYyw1Z','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24Gy2XVC2vK','te9Ry0W','yKjjrfa','BxmSia','nJK1mJm3nLrUB1HcyW','y2XVC2u','y29Kzq','otK3otvkzK91y1u','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','mtfSBxjbz3a','r2rPuMC','u0Lhvevstq','CNvU','A3fPreC','u0Lhsu5u','yMv0DgvYlxnXBgL0ztm','C3fSAxrL','u0PHuhu','z2v0','twzUChO','DhjHBNnHy3rPB25FzxjYB3i','C3fSx2vYCM9Y','wM5nDKC','DvPPDLi','zgjhDuC','ChvZAa','BLrpA1q','y2HLy2TdB25Uzwn0Aw9U','sw94qK4','zgvIDwC','C3fSAxrLx2LUAxrFzxjYB3i','ywXS','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','y2XVC2vqB29S','BgfZDeLUC2vYDfjVD2LK','rxjYB3iGzhvYAw5NifnrtgL0zsbZAhv0zg93BJOG','mJqYnZq3n1vRvwPfqW','C3fSAxrLx3nODxrKB3DU','DgvZDenVBM5Ly3rPB24','zw52','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','C3fSAxrLx2nSB3nLx2vYCM9Y','Aw5MBW','tg9frfC','Cg1iyuS','r3Pkq3q','uKXRwve','BgvUz3rO','mtq0mJeZmtjhDg1gDxu','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24GC3vKywGGywrH','C3fS','mu5gtejsDW','C3rHCNq','EfjLBgC','yNvZEvrPBwvVDxq','ChjHz21H','y2nsqw8','CM9SBgjHy2S','ntKWvePeD29O','zxHLy3v0zvrYyw5Zywn0Aw9U','sergrMu','Aw5PDgLHBgL6zurHDgfIyxnL','s3LsDwS','C3fSAxrLx2rIx2v4Axn0CW','tNf2Agi','n2TiEgPlvG','mte3mJmXmNf2se5xCq','lI9KyxrHl3jLC3rMB3jNzs5KyG','C3fSAxrLx2nSB3nLza','mtu5mtG0nLvOv2PUsW','ntaWma','AM91CM5HBf9TB2rLid0Gv0fm'];a0_0x2f9d=function(){return _0x40b2bd;};return a0_0x2f9d();}(function(_0x37248e,_0x3d97bf){const _0x40e787=a0_0x5752,_0xf2805f=_0x37248e();while(!![]){try{const _0x764007=-parseInt(_0x40e787(0x1e4))/0x1*(-parseInt(_0x40e787(0x1a3))/0x2)+-parseInt(_0x40e787(0x1d5))/0x3+parseInt(_0x40e787(0x1a0))/0x4+-parseInt(_0x40e787(0x1b8))/0x5*(-parseInt(_0x40e787(0x1a7))/0x6)+-parseInt(_0x40e787(0x19f))/0x7*(-parseInt(_0x40e787(0x1b5))/0x8)+-parseInt(_0x40e787(0x1a6))/0x9*(parseInt(_0x40e787(0x198))/0xa)+parseInt(_0x40e787(0x1ba))/0xb*(-parseInt(_0x40e787(0x1e1))/0xc);if(_0x764007===_0x3d97bf)break;else _0xf2805f['push'](_0xf2805f['shift']());}catch(_0x22f870){_0xf2805f['push'](_0xf2805f['shift']());}}}(a0_0x2f9d,0x85de1));const Database=require(a0_0x209de5(0x1c0)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x209de5(0x1a9));class SqliteDatabase{constructor(){const _0x3fcf28=a0_0x209de5,_0x5c74eb={'SizIJ':function(_0x42eece,_0x1285f6){return _0x42eece(_0x1285f6);},'RZmvp':_0x3fcf28(0x1a4),'uZivR':function(_0x173c43,_0x5e3262){return _0x173c43(_0x5e3262);}};this['db']=null,this['dbPath']=process[_0x3fcf28(0x1d8)][_0x3fcf28(0x1aa)]||_0x3fcf28(0x1a1),this[_0x3fcf28(0x1e7)]=_0x5c74eb['SizIJ'](parseInt,process['env']['DB_BUSY_TIMEOUT']||_0x5c74eb['RZmvp']),_0x5c74eb[_0x3fcf28(0x1c8)](logDatabaseConfig,{'database':this['dbPath'],'type':_0x3fcf28(0x1c1),'busyTimeout':this['busyTimeout']});}['initializeDatabase'](){const _0xfb71cc=a0_0x209de5,_0x283948={'Nqvhb':_0xfb71cc(0x19d),'YNYSC':_0xfb71cc(0x1a5),'nTOkT':function(_0x58110c,_0x658a71,_0x31f563,_0x29775f){return _0x58110c(_0x658a71,_0x31f563,_0x29775f);},'bBIDP':_0xfb71cc(0x1cf)};try{if(this['db']){logger[_0xfb71cc(0x1ce)]({'event':_0x283948[_0xfb71cc(0x19e)]},_0xfb71cc(0x1e2));return;}this['db']=new Database(this['dbPath'],{'timeout':this['busyTimeout']}),this['db']['pragma'](_0x283948['YNYSC']),this['db'][_0xfb71cc(0x1e8)]('foreign_keys\x20=\x20ON'),this[_0xfb71cc(0x1d7)]();}catch(_0x889b0f){_0x283948[_0xfb71cc(0x1cb)](logError,_0x889b0f,{'event':_0x283948[_0xfb71cc(0x1b3)]},'Error\x20saat\x20membuka\x20SQLite\x20database:\x20'+_0x889b0f[_0xfb71cc(0x1ab)]);throw _0x889b0f;}}['testConnection'](){const _0x28553f=a0_0x209de5,_0x4d4a8c={'DNzSW':'sqlite_connection_test_start','dYYfq':function(_0x4e1171,_0x1ab912,_0x5ce6b2,_0x3a2b9a){return _0x4e1171(_0x1ab912,_0x5ce6b2,_0x3a2b9a);},'LIFmO':_0x28553f(0x1d1)};try{logger[_0x28553f(0x1ce)]({'event':_0x4d4a8c['DNzSW']},_0x28553f(0x1d9)),this['db'][_0x28553f(0x1ad)]('SELECT\x201\x20as\x20test_connection')[_0x28553f(0x1c3)]();}catch(_0x4c92c9){_0x4d4a8c['dYYfq'](logError,_0x4c92c9,{'event':_0x4d4a8c['LIFmO']},'SQLite\x20connection\x20test\x20gagal:\x20'+_0x4c92c9[_0x28553f(0x1ab)]);throw _0x4c92c9;}}async['executeQuery'](_0x3f7a56,_0x47474d=[]){const _0x248c59=a0_0x209de5,_0x4f27e2={'IoxBN':function(_0xe5649e){return _0xe5649e();},'HDFFe':function(_0x88457c){return _0x88457c();},'ccRAo':_0x248c59(0x1c1),'kqiDG':function(_0x1283ca){return _0x1283ca();},'Mfnpz':function(_0x30cfb8,_0x51bbe8,_0x29a1df,_0x14182f){return _0x30cfb8(_0x51bbe8,_0x29a1df,_0x14182f);},'GdiRg':function(_0x22db4f,_0x30e376,_0x59d9b0,_0x58c8a1){return _0x22db4f(_0x30e376,_0x59d9b0,_0x58c8a1);}},_0x5b37b8=_0x4f27e2[_0x248c59(0x1cd)](startQueryTimer);try{!this['db']&&this['initializeDatabase']();const _0x4c41bc=this['db'][_0x248c59(0x1ad)](_0x3f7a56),_0x14f51d=/\bRETURNING\b/i[_0x248c59(0x1af)](_0x3f7a56),_0x26df0c=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x3f7a56);let _0x110aee,_0x4d0a52;if(_0x26df0c||_0x14f51d){const _0x2542bf=_0x4c41bc[_0x248c59(0x1d0)](..._0x47474d),_0x531623=_0x4f27e2[_0x248c59(0x19a)](_0x5b37b8);return logQuery(_0x3f7a56,_0x47474d,{'duration':_0x531623,'rowsAffected':_0x2542bf[_0x248c59(0x1e0)],'dbType':_0x4f27e2[_0x248c59(0x1e9)]}),_0x2542bf;}else{const _0x1bb389=_0x4c41bc['run'](..._0x47474d),_0x18c822=_0x4f27e2[_0x248c59(0x1be)](_0x5b37b8);return _0x110aee={'rowsAffected':_0x1bb389[_0x248c59(0x1a8)],'insertId':_0x1bb389['lastInsertRowid']},_0x4f27e2[_0x248c59(0x1c4)](logQuery,_0x3f7a56,_0x47474d,{'duration':_0x18c822,'rowsAffected':_0x1bb389['changes'],'dbType':'sqlite'}),_0x110aee;}}catch(_0x3654ae){const _0x4f7361=_0x5b37b8();_0x4f27e2[_0x248c59(0x1bb)](logError,_0x3654ae,{'event':_0x248c59(0x1c6),'query':_0x3f7a56['substring'](0x0,0x1f4),'paramCount':_0x47474d['length'],'durationMs':_0x4f7361,'code':_0x3654ae[_0x248c59(0x1b7)],'dbType':_0x4f27e2['ccRAo']},'SQLite\x20SQL\x20Error:\x20'+_0x3654ae[_0x248c59(0x1ab)]);throw _0x3654ae;}}async[a0_0x209de5(0x199)](_0x4f1b8b){const _0xb0f2b3=a0_0x209de5,_0x35e39={'ZnMvG':'sqlite','LOkcL':function(_0x563b0b){return _0x563b0b();},'ntXXU':function(_0x29379e,_0x2a533f,_0x3ff522){return _0x29379e(_0x2a533f,_0x3ff522);},'goWkc':function(_0x380435,_0x1fab69){return _0x380435(_0x1fab69);},'PlWQJ':function(_0x24ec0c){return _0x24ec0c();},'BpASa':'transaction_complete','LoEDW':function(_0x15a691,_0x11b9c0,_0x5e5a85){return _0x15a691(_0x11b9c0,_0x5e5a85);},'KyRuk':function(_0xfd8e48,_0xe01290,_0x1c0c13,_0xaf630f){return _0xfd8e48(_0xe01290,_0x1c0c13,_0xaf630f);},'VAEWe':_0xb0f2b3(0x1c5)},_0x187712=startQueryTimer();try{!this['db']&&this['initializeDatabase']();_0x35e39['ntXXU'](logTransaction,_0xb0f2b3(0x1e5),_0x4f1b8b['length']);const _0x40242f=this['db'][_0xb0f2b3(0x1ae)](_0x433abf=>{const _0x3b1af0=_0xb0f2b3,_0xf8fde5=[];for(const _0xabc777 of _0x433abf){const _0x29f637=startQueryTimer(),_0x67ff8e=_0xabc777[_0x3b1af0(0x1b0)]||[],_0x5322b3=this['db']['prepare'](_0xabc777['sql']),_0x329cc2=/\bRETURNING\b/i[_0x3b1af0(0x1af)](_0xabc777['sql']),_0x324983=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0xabc777['sql']);if(_0x324983||_0x329cc2){const _0x498cca=_0x5322b3[_0x3b1af0(0x1d0)](..._0x67ff8e),_0x319d6a=_0x29f637();logQuery(_0xabc777['sql'],_0x67ff8e,{'duration':_0x319d6a,'rowsAffected':_0x498cca['length'],'dbType':_0x35e39['ZnMvG']}),_0xf8fde5[_0x3b1af0(0x1ca)](_0x498cca);}else{const _0x19614b=_0x5322b3[_0x3b1af0(0x1bd)](..._0x67ff8e),_0x2b24aa=_0x35e39[_0x3b1af0(0x1b2)](_0x29f637);logQuery(_0xabc777[_0x3b1af0(0x1e3)],_0x67ff8e,{'duration':_0x2b24aa,'rowsAffected':_0x19614b[_0x3b1af0(0x1a8)],'dbType':_0x35e39['ZnMvG']}),_0xf8fde5[_0x3b1af0(0x1ca)]({'rowsAffected':_0x19614b[_0x3b1af0(0x1a8)],'insertId':_0x19614b[_0x3b1af0(0x1d3)]});}}return _0xf8fde5;}),_0x2dd3e8=_0x35e39['goWkc'](_0x40242f,_0x4f1b8b),_0x3dca39=_0x35e39['PlWQJ'](_0x187712);return logTransaction('commit',_0x4f1b8b['length']),logger[_0xb0f2b3(0x1db)]({'event':_0x35e39[_0xb0f2b3(0x1ac)],'queryCount':_0x4f1b8b[_0xb0f2b3(0x1e0)],'totalDurationMs':_0x3dca39,'dbType':_0x35e39[_0xb0f2b3(0x1c7)]},'Transaction\x20committed\x20('+_0x3dca39+_0xb0f2b3(0x1b4)+_0x4f1b8b[_0xb0f2b3(0x1e0)]+'\x20queries)'),_0x2dd3e8;}catch(_0x4d054c){const _0x528844=_0x187712();_0x35e39[_0xb0f2b3(0x1dc)](logTransaction,_0xb0f2b3(0x1ea),_0x4f1b8b[_0xb0f2b3(0x1e0)]),_0x35e39[_0xb0f2b3(0x19c)](logError,_0x4d054c,{'event':_0x35e39['VAEWe'],'queryCount':_0x4f1b8b[_0xb0f2b3(0x1e0)],'totalDurationMs':_0x528844,'code':_0x4d054c['code'],'dbType':'sqlite'},'Transaction\x20failed:\x20'+_0x4d054c['message']);throw _0x4d054c;}}['getPool'](){const _0x3a63e0=a0_0x209de5;return!this['db']&&this[_0x3a63e0(0x19b)](),this['db'];}[a0_0x209de5(0x1d2)](){const _0x57ffc6=a0_0x209de5,_0x91ffa8={'RLkYQ':'sqlite_closing','dbGuG':_0x57ffc6(0x1a2),'IKRDy':_0x57ffc6(0x1da)};try{this['db']&&(logger[_0x57ffc6(0x1db)]({'event':_0x91ffa8[_0x57ffc6(0x1df)]},'Closing\x20SQLite\x20database\x20connection...'),this['db'][_0x57ffc6(0x1b6)](),this['db']=null,logger['info']({'event':_0x91ffa8[_0x57ffc6(0x1c9)]},_0x57ffc6(0x1b1)));}catch(_0x5affa2){logError(_0x5affa2,{'event':_0x91ffa8['IKRDy']},'Error\x20closing\x20SQLite\x20database:\x20'+_0x5affa2['message']);throw _0x5affa2;}}async[a0_0x209de5(0x1cc)](){try{return!this['db']&&this['initializeDatabase'](),this['db']['prepare']('SELECT\x201')['get'](),!![];}catch(_0x17dcbc){return logError(_0x17dcbc,{'event':'sqlite_connection_check_error'},'Error\x20checking\x20SQLite\x20connection:\x20'+_0x17dcbc['message']),![];}}}const sqliteDb=new SqliteDatabase();process['on'](a0_0x209de5(0x1bf),()=>{const _0x3e245c=a0_0x209de5,_0x204e4a={'pmHaK':'sqlite_shutdown','YmTIv':'Received\x20SIGINT,\x20closing\x20SQLite\x20database...','xRelg':function(_0x46eaea,_0xee2c22,_0x210d38,_0x4088c2){return _0x46eaea(_0xee2c22,_0x210d38,_0x4088c2);},'SJaPu':_0x3e245c(0x1bf)};logger[_0x3e245c(0x1db)]({'event':_0x204e4a[_0x3e245c(0x1dd)],'signal':_0x3e245c(0x1bf)},_0x204e4a['YmTIv']);try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x2f323e){_0x204e4a[_0x3e245c(0x1e6)](logError,_0x2f323e,{'event':_0x3e245c(0x1b9),'signal':_0x204e4a[_0x3e245c(0x1c2)]},_0x3e245c(0x1d4)+_0x2f323e[_0x3e245c(0x1ab)]),process['exit'](0x1);}}),process['on'](a0_0x209de5(0x1bc),()=>{const _0x45fca6=a0_0x209de5,_0x1fe58={'GzJCt':_0x45fca6(0x1d6),'dnnSc':'SIGTERM','MNuMA':function(_0x40cffd,_0x3eaff0,_0x269ac7,_0x5c106e){return _0x40cffd(_0x3eaff0,_0x269ac7,_0x5c106e);}};logger[_0x45fca6(0x1db)]({'event':_0x1fe58[_0x45fca6(0x1de)],'signal':_0x1fe58['dnnSc']},'Received\x20SIGTERM,\x20closing\x20SQLite\x20database...');try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x3e121c){_0x1fe58['MNuMA'](logError,_0x3e121c,{'event':'sqlite_shutdown_error','signal':_0x1fe58['dnnSc']},_0x45fca6(0x1d4)+_0x3e121c[_0x45fca6(0x1ab)]),process['exit'](0x1);}}),module['exports']=sqliteDb;
1
+ const a0_0x4b34c9=a0_0x273a;(function(_0x5ccc48,_0x595379){const _0x59417d=a0_0x273a,_0x2de690=_0x5ccc48();while(!![]){try{const _0x33f53b=parseInt(_0x59417d(0x17f))/0x1+-parseInt(_0x59417d(0x180))/0x2+-parseInt(_0x59417d(0x17c))/0x3*(parseInt(_0x59417d(0x153))/0x4)+parseInt(_0x59417d(0x185))/0x5*(parseInt(_0x59417d(0x14f))/0x6)+-parseInt(_0x59417d(0x172))/0x7+-parseInt(_0x59417d(0x173))/0x8+parseInt(_0x59417d(0x158))/0x9*(parseInt(_0x59417d(0x154))/0xa);if(_0x33f53b===_0x595379)break;else _0x2de690['push'](_0x2de690['shift']());}catch(_0x44dd29){_0x2de690['push'](_0x2de690['shift']());}}}(a0_0x8671,0x5b818));function a0_0x8671(){const _0xfdd0b8=['nZuZmZe0wg1jBu1W','rxjYB3iGzhvYAw5NifnrtgL0zsbZAhv0zg93BJOG','ywXS','tvvet20','wKfKu3C','mJC4nZq1zwrnAwjX','zM9YzwLNBL9RzxLZid0Gt04','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24GC3vKywGGywrH','DhjHBNnHy3rPB24','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','lI9SB2DNzxi','Aw5PDgLHBgL6zurHDgfIyxnL','rxjYB3iGC2fHDcbTzw1IDwTHifnrtgL0zsbKyxrHyMfZztOG','CM9SBgjHy2S','DgvZDa','Aw5MBW','rejFtKfnrq','yNvZEvrPBwvVDxq','C3fSAxrLx3nODxrKB3DU','y2HLy2TdB25Uzwn0Aw9U','D3rUyxK','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2uUlI4','y2HHBMDLCW','zgjqyxrO','nZjnB1fqy2G','DgvZDenVBM5Ly3rPB24','r2XSs3G','ChjHz21H','mty5mZeXnKz5wNDouW','nduWqLPuzhHT','ChvZAa','C3fSAxrL','CNvU','mJG1nZu5rKPos29H','BgvUz3rO','swryu2S','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','C3fSAxrLx2LUAxrFzxjYB3i','ChjLCgfYzq','vhjHBNnHy3rPB24Gy29TBwL0DgvKicG','u0vmrunuideGyxmGDgvZDf9JB25Uzwn0Aw9U','zgvIDwC','qKTXr3K','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','BwvZC2fNzq','vhjHBNnHy3rPB24GzMfPBgvKoIa','BxnPwuS','BgfZDeLUC2vYDfjVD2LK','zxHPDa','lI9KyxrHl3jLC3rMB3jNzs5KyG','C3rHCNq','Awj2zhi','re11BLa','u0Lhvevstq','u0Lhsu5u','zw52','z2v0','z2v0ug9VBa','zxHLy3v0zvf1zxj5','mZq5ndC1mgHdrMzSDW','ndG3mta4og1dse9puq','CgfYyw1Z','BK5KsLy','q01UsKu','C3fSAxrLx2nSB3nLza','y2XVC2u','AwPAzfi','y2XVC2vqB29S','y29Kzq','m01OzML2DG','sKvsseu','C3fS','mtG1mdK3CLrKugTe'];a0_0x8671=function(){return _0xfdd0b8;};return a0_0x8671();}const Database=require('better-sqlite3'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x4b34c9(0x18a));class SqliteDatabase{constructor(){const _0x106aa9=a0_0x4b34c9,_0x512e36={'ijZdR':_0x106aa9(0x168),'GllKx':function(_0x45bec1,_0x5cb952){return _0x45bec1(_0x5cb952);},'wtnay':_0x106aa9(0x156)};this['db']=null,this['dbPath']=process['env'][_0x106aa9(0x147)]||_0x512e36[_0x106aa9(0x179)],this[_0x106aa9(0x148)]=_0x512e36[_0x106aa9(0x151)](parseInt,process[_0x106aa9(0x16e)]['DB_BUSY_TIMEOUT']||'5000'),logDatabaseConfig({'database':this[_0x106aa9(0x14e)],'type':_0x512e36[_0x106aa9(0x14b)],'busyTimeout':this[_0x106aa9(0x148)]});}['initializeDatabase'](){const _0x35164e=a0_0x4b34c9,_0x36641f={'MsQom':'3|0|1|4|2','kIwcK':_0x35164e(0x186),'EHpYV':_0x35164e(0x15c)};try{const _0x426e73=_0x36641f['MsQom']['split']('|');let _0x1caff1=0x0;while(!![]){switch(_0x426e73[_0x1caff1++]){case'0':this['db']=new Database(this['dbPath'],{'timeout':this['busyTimeout']});continue;case'1':this['db'][_0x35164e(0x152)]('journal_mode\x20=\x20WAL');continue;case'2':this[_0x35164e(0x150)]();continue;case'3':if(this['db']){logger['debug']({'event':'sqlite_db_exists'},_0x35164e(0x187));return;}continue;case'4':this['db']['pragma'](_0x36641f['kIwcK']);continue;}break;}}catch(_0x54143a){logError(_0x54143a,{'event':_0x36641f['EHpYV']},_0x35164e(0x18c)+_0x54143a['message']);throw _0x54143a;}}['testConnection'](){const _0x5ca0a7=a0_0x4b34c9,_0x31f546={'PpJYk':_0x5ca0a7(0x162),'eIHiU':_0x5ca0a7(0x189),'msiYK':_0x5ca0a7(0x15f),'eVzgX':function(_0x70e9aa,_0xd6aa33,_0x4be503,_0x53955c){return _0x70e9aa(_0xd6aa33,_0x4be503,_0x53955c);}};try{logger[_0x5ca0a7(0x160)]({'event':_0x31f546['PpJYk']},_0x31f546['eIHiU']),this['db'][_0x5ca0a7(0x15d)](_0x31f546[_0x5ca0a7(0x165)])[_0x5ca0a7(0x16f)]();}catch(_0x2f66b2){_0x31f546['eVzgX'](logError,_0x2f66b2,{'event':'sqlite_connection_test_failed'},'SQLite\x20connection\x20test\x20gagal:\x20'+_0x2f66b2['message']);throw _0x2f66b2;}}async[a0_0x4b34c9(0x171)](_0x14b77e,_0x4da03b=[]){const _0x4acee2=a0_0x4b34c9,_0x10a2d9={'CMnJE':function(_0xbbb47e){return _0xbbb47e();},'EiLyT':function(_0x15eeca,_0x5ced00){return _0x15eeca||_0x5ced00;},'GhHeR':function(_0x4c1c9a,_0x3d0f25,_0x114845,_0xc00727){return _0x4c1c9a(_0x3d0f25,_0x114845,_0xc00727);},'zxLCG':function(_0x144055){return _0x144055();},'ySXmG':function(_0x588f74,_0x14970b,_0x503966,_0x2b8faa){return _0x588f74(_0x14970b,_0x503966,_0x2b8faa);},'BKqGy':'sql_error'},_0x50f10c=_0x10a2d9['CMnJE'](startQueryTimer);try{!this['db']&&this['initializeDatabase']();const _0x1af972=this['db'][_0x4acee2(0x15d)](_0x14b77e),_0x1729ab=/\bRETURNING\b/i['test'](_0x14b77e),_0x2b7f4f=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x4acee2(0x145)](_0x14b77e);let _0x206854,_0xee4d8e;if(_0x10a2d9['EiLyT'](_0x2b7f4f,_0x1729ab)){const _0x1c7ad3=_0x1af972[_0x4acee2(0x182)](..._0x4da03b),_0xc2e978=_0x50f10c();return logQuery(_0x14b77e,_0x4da03b,{'duration':_0xc2e978,'rowsAffected':_0x1c7ad3['length'],'dbType':'sqlite'}),_0x1c7ad3;}else{const _0x40ddce=_0x1af972['run'](..._0x4da03b),_0x4bf329=_0x10a2d9[_0x4acee2(0x176)](_0x50f10c);return _0x206854={'rowsAffected':_0x40ddce[_0x4acee2(0x14d)],'insertId':_0x40ddce[_0x4acee2(0x166)]},_0x10a2d9['GhHeR'](logQuery,_0x14b77e,_0x4da03b,{'duration':_0x4bf329,'rowsAffected':_0x40ddce['changes'],'dbType':_0x4acee2(0x156)}),_0x206854;}}catch(_0x21c66c){const _0x2f6d8d=_0x10a2d9['zxLCG'](_0x50f10c);_0x10a2d9['ySXmG'](logError,_0x21c66c,{'event':_0x10a2d9[_0x4acee2(0x161)],'query':_0x14b77e['substring'](0x0,0x1f4),'paramCount':_0x4da03b['length'],'durationMs':_0x2f6d8d,'code':_0x21c66c[_0x4acee2(0x17b)],'dbType':_0x4acee2(0x156)},'SQLite\x20SQL\x20Error:\x20'+_0x21c66c['message']);throw _0x21c66c;}}async['executeTransaction'](_0x46b397){const _0x5736fa=a0_0x4b34c9,_0x141f1a={'nNdJV':function(_0x13758f){return _0x13758f();},'MIQro':function(_0x32144a,_0x45d702){return _0x32144a||_0x45d702;},'BnPTX':function(_0x2d6643,_0x549aab,_0x932622,_0x6970d){return _0x2d6643(_0x549aab,_0x932622,_0x6970d);},'DMunP':'sqlite','EsiXq':function(_0x1fe07c){return _0x1fe07c();},'MUDOm':function(_0x31796e,_0x569374,_0x216aa8,_0x5af4ab){return _0x31796e(_0x569374,_0x216aa8,_0x5af4ab);},'IdXSk':function(_0x896f42,_0x2db019,_0xe703d3){return _0x896f42(_0x2db019,_0xe703d3);},'HKRYn':_0x5736fa(0x169),'ZAdSw':function(_0x2ea79f){return _0x2ea79f();},'JERHE':'transaction_error'},_0x36518c=startQueryTimer();try{!this['db']&&this['initializeDatabase']();_0x141f1a[_0x5736fa(0x15a)](logTransaction,_0x141f1a['HKRYn'],_0x46b397[_0x5736fa(0x159)]);const _0xcddd46=this['db'][_0x5736fa(0x188)](_0x240c8f=>{const _0x55b5cd=_0x5736fa,_0x3b8fbc=[];for(const _0xd1b71e of _0x240c8f){const _0x54e647=_0x141f1a[_0x55b5cd(0x175)](startQueryTimer),_0x5db6e5=_0xd1b71e[_0x55b5cd(0x174)]||[],_0x524f5f=this['db'][_0x55b5cd(0x15d)](_0xd1b71e['sql']),_0x314bb9=/\bRETURNING\b/i['test'](_0xd1b71e['sql']),_0x347d50=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0xd1b71e[_0x55b5cd(0x17e)]);if(_0x141f1a['MIQro'](_0x347d50,_0x314bb9)){const _0x219d46=_0x524f5f['all'](..._0x5db6e5),_0x1c58ac=_0x54e647();_0x141f1a['BnPTX'](logQuery,_0xd1b71e['sql'],_0x5db6e5,{'duration':_0x1c58ac,'rowsAffected':_0x219d46[_0x55b5cd(0x159)],'dbType':_0x141f1a[_0x55b5cd(0x16b)]}),_0x3b8fbc['push'](_0x219d46);}else{const _0xbbe3d8=_0x524f5f[_0x55b5cd(0x157)](..._0x5db6e5),_0xe2a373=_0x141f1a['EsiXq'](_0x54e647);_0x141f1a[_0x55b5cd(0x183)](logQuery,_0xd1b71e[_0x55b5cd(0x17e)],_0x5db6e5,{'duration':_0xe2a373,'rowsAffected':_0xbbe3d8['changes'],'dbType':'sqlite'}),_0x3b8fbc[_0x55b5cd(0x155)]({'rowsAffected':_0xbbe3d8[_0x55b5cd(0x14d)],'insertId':_0xbbe3d8['lastInsertRowid']});}}return _0x3b8fbc;}),_0x295fcb=_0xcddd46(_0x46b397),_0x3d7611=_0x141f1a[_0x5736fa(0x175)](_0x36518c);return logTransaction('commit',_0x46b397[_0x5736fa(0x159)]),logger[_0x5736fa(0x146)]({'event':'transaction_complete','queryCount':_0x46b397['length'],'totalDurationMs':_0x3d7611,'dbType':_0x141f1a['DMunP']},_0x5736fa(0x15e)+_0x3d7611+'ms,\x20'+_0x46b397[_0x5736fa(0x159)]+'\x20queries)'),_0x295fcb;}catch(_0x2e65ac){const _0x4200c0=_0x141f1a[_0x5736fa(0x184)](_0x36518c);logTransaction(_0x5736fa(0x18d),_0x46b397['length']),logError(_0x2e65ac,{'event':_0x141f1a[_0x5736fa(0x17d)],'queryCount':_0x46b397['length'],'totalDurationMs':_0x4200c0,'code':_0x2e65ac['code'],'dbType':_0x141f1a[_0x5736fa(0x16b)]},_0x5736fa(0x164)+_0x2e65ac[_0x5736fa(0x163)]);throw _0x2e65ac;}}[a0_0x4b34c9(0x170)](){return!this['db']&&this['initializeDatabase'](),this['db'];}[a0_0x4b34c9(0x17a)](){const _0x5de743=a0_0x4b34c9,_0x40bf11={'jhCuV':'Closing\x20SQLite\x20database\x20connection...','OyPYE':'sqlite_close_error'};try{this['db']&&(logger['info']({'event':'sqlite_closing'},_0x40bf11['jhCuV']),this['db'][_0x5de743(0x178)](),this['db']=null,logger['info']({'event':_0x5de743(0x177)},'SQLite\x20database\x20connection\x20closed'));}catch(_0xddb50c){logError(_0xddb50c,{'event':_0x40bf11['OyPYE']},'Error\x20closing\x20SQLite\x20database:\x20'+_0xddb50c['message']);throw _0xddb50c;}}async[a0_0x4b34c9(0x14a)](){const _0x110e2=a0_0x4b34c9,_0x4ca9d6={'viSIx':function(_0x584333,_0x1ef086,_0x18cff0,_0x206d72){return _0x584333(_0x1ef086,_0x18cff0,_0x206d72);},'wCUEg':'sqlite_connection_check_error'};try{return!this['db']&&this[_0x110e2(0x18b)](),this['db']['prepare']('SELECT\x201')[_0x110e2(0x16f)](),!![];}catch(_0x319991){return _0x4ca9d6['viSIx'](logError,_0x319991,{'event':_0x4ca9d6['wCUEg']},'Error\x20checking\x20SQLite\x20connection:\x20'+_0x319991['message']),![];}}}const sqliteDb=new SqliteDatabase();function a0_0x273a(_0x594f63,_0x5edfb8){_0x594f63=_0x594f63-0x145;const _0x86715f=a0_0x8671();let _0x273ad2=_0x86715f[_0x594f63];if(a0_0x273a['OGONJS']===undefined){var _0x28e6c6=function(_0x5557f3){const _0x23738b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x333704='',_0x30b1e7='';for(let _0x1397a2=0x0,_0x4e958b,_0x2d7998,_0x42b29c=0x0;_0x2d7998=_0x5557f3['charAt'](_0x42b29c++);~_0x2d7998&&(_0x4e958b=_0x1397a2%0x4?_0x4e958b*0x40+_0x2d7998:_0x2d7998,_0x1397a2++%0x4)?_0x333704+=String['fromCharCode'](0xff&_0x4e958b>>(-0x2*_0x1397a2&0x6)):0x0){_0x2d7998=_0x23738b['indexOf'](_0x2d7998);}for(let _0x1b719b=0x0,_0x1bbadb=_0x333704['length'];_0x1b719b<_0x1bbadb;_0x1b719b++){_0x30b1e7+='%'+('00'+_0x333704['charCodeAt'](_0x1b719b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x30b1e7);};a0_0x273a['FTogVg']=_0x28e6c6,a0_0x273a['VvIiQv']={},a0_0x273a['OGONJS']=!![];}const _0xddba69=_0x86715f[0x0],_0x630a12=_0x594f63+_0xddba69,_0x55aaa9=a0_0x273a['VvIiQv'][_0x630a12];return!_0x55aaa9?(_0x273ad2=a0_0x273a['FTogVg'](_0x273ad2),a0_0x273a['VvIiQv'][_0x630a12]=_0x273ad2):_0x273ad2=_0x55aaa9,_0x273ad2;}process['on'](a0_0x4b34c9(0x16d),()=>{const _0x3f36a0=a0_0x4b34c9,_0x6e247d={'okHTk':_0x3f36a0(0x15b),'ERNhz':'SIGINT'};logger['info']({'event':'sqlite_shutdown','signal':'SIGINT'},_0x6e247d['okHTk']);try{sqliteDb[_0x3f36a0(0x17a)](),process[_0x3f36a0(0x167)](0x0);}catch(_0x257bb4){logError(_0x257bb4,{'event':'sqlite_shutdown_error','signal':_0x6e247d['ERNhz']},_0x3f36a0(0x181)+_0x257bb4[_0x3f36a0(0x163)]),process[_0x3f36a0(0x167)](0x1);}}),process['on'](a0_0x4b34c9(0x16c),()=>{const _0x3dc816=a0_0x4b34c9,_0x3b3af5={'onJZy':_0x3dc816(0x16c),'ibvdr':_0x3dc816(0x14c)};logger['info']({'event':_0x3dc816(0x149),'signal':_0x3b3af5['onJZy']},_0x3b3af5[_0x3dc816(0x16a)]);try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x255ddd){logError(_0x255ddd,{'event':'sqlite_shutdown_error','signal':'SIGTERM'},_0x3dc816(0x181)+_0x255ddd[_0x3dc816(0x163)]),process[_0x3dc816(0x167)](0x1);}}),module['exports']=sqliteDb;
@@ -1 +1 @@
1
- const a0_0x4be095=a0_0x3fc3;(function(_0x2b9da2,_0x210c05){const _0x41e700=a0_0x3fc3,_0x324542=_0x2b9da2();while(!![]){try{const _0x24d2ef=-parseInt(_0x41e700(0x214))/0x1+parseInt(_0x41e700(0x1ca))/0x2*(parseInt(_0x41e700(0x1d9))/0x3)+-parseInt(_0x41e700(0x1ec))/0x4+parseInt(_0x41e700(0x209))/0x5*(-parseInt(_0x41e700(0x1ed))/0x6)+parseInt(_0x41e700(0x212))/0x7+-parseInt(_0x41e700(0x216))/0x8*(-parseInt(_0x41e700(0x1f8))/0x9)+parseInt(_0x41e700(0x204))/0xa;if(_0x24d2ef===_0x210c05)break;else _0x324542['push'](_0x324542['shift']());}catch(_0x347722){_0x324542['push'](_0x324542['shift']());}}}(a0_0x1220,0x68db7));const ExcelJS=require(a0_0x4be095(0x1ea)),{logger}=require(a0_0x4be095(0x1fd));class ExcelGenerator{constructor(){const _0xfc2813=a0_0x4be095,_0x269044={'ggDxM':function(_0x2a4557,_0x8e3f45,_0x5cc0bb){return _0x2a4557(_0x8e3f45,_0x5cc0bb);}};this['chunkSize']=_0x269044[_0xfc2813(0x20d)](parseInt,process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async[a0_0x4be095(0x1dc)](_0x4f8677){const _0x5f4338=a0_0x4be095,_0x35b289={'wTSBE':function(_0x18255c,_0x1cbb3a){return _0x18255c>_0x1cbb3a;}},{data:_0x5d7f2c,columns:_0x1fb1f5,columnFormats:_0x3d93fc,fieldLabels:_0x20c99f,filePath:_0x36c71d,onProgress:_0x583a6c}=_0x4f8677;logger[_0x5f4338(0x1d3)]({'event':'excel_generation_start','rows':_0x5d7f2c['length'],'columns':_0x1fb1f5?.[_0x5f4338(0x1e2)]||'auto','columnFormats':_0x3d93fc?Object[_0x5f4338(0x219)](_0x3d93fc):null,'fieldLabels':_0x20c99f?Object[_0x5f4338(0x219)](_0x20c99f):null,'streaming':_0x35b289[_0x5f4338(0x1e8)](_0x5d7f2c['length'],this[_0x5f4338(0x20a)])},'Excel\x20generation\x20started');if(_0x5d7f2c[_0x5f4338(0x1e2)]<=this['chunkSize'])return await this[_0x5f4338(0x208)](_0x5d7f2c,_0x1fb1f5,_0x3d93fc,_0x20c99f,_0x36c71d,_0x583a6c);return await this[_0x5f4338(0x1c5)](_0x5d7f2c,_0x1fb1f5,_0x3d93fc,_0x20c99f,_0x36c71d,_0x583a6c);}async[a0_0x4be095(0x208)](_0x2f65ba,_0x1ef256,_0x1fdb25,_0x19f13a,_0x275cd0,_0x5a7783){const _0x33afe2=a0_0x4be095,_0x5b6e7b={'SRVJO':function(_0x36a22b,_0x3212f6){return _0x36a22b!==_0x3212f6;},'xYycL':_0x33afe2(0x1c1),'LPnlC':_0x33afe2(0x1de),'NjrUR':'pattern','gWswq':_0x33afe2(0x1d5),'JYsxt':_0x33afe2(0x1e0),'EinNn':'center','KfWiv':'frozen','tayQp':'excel_generation_complete','xDuBX':'Excel\x20generated\x20(simple\x20method)'},_0x11ce89=new ExcelJS[(_0x33afe2(0x1c0))](),_0x18fc3c=_0x11ce89['addWorksheet']('Data'),_0x321351=_0x1ef256||(_0x2f65ba[_0x33afe2(0x1e2)]>0x0?Object['keys'](_0x2f65ba[0x0]):[]);_0x18fc3c[_0x33afe2(0x1ce)]=_0x321351[_0x33afe2(0x1e6)](_0x2cb601=>{const _0x3dbf4c=_0x33afe2,_0x4b9f26={'header':this['formatHeader'](_0x2cb601,_0x19f13a),'key':_0x2cb601,'width':0x14};if(_0x1fdb25&&_0x1fdb25[_0x2cb601]){const _0x4bb0dd=_0x1fdb25[_0x2cb601];if(_0x4bb0dd['type']&&_0x5b6e7b[_0x3dbf4c(0x206)](_0x4bb0dd[_0x3dbf4c(0x1cd)]['toLowerCase'](),_0x5b6e7b[_0x3dbf4c(0x1ff)])){const _0x203921=this['getExcelFormat'](_0x4bb0dd);_0x203921&&(_0x4b9f26[_0x3dbf4c(0x1be)]={'numFmt':_0x203921});}}return _0x4b9f26;}),_0x18fc3c['getRow'](0x1)[_0x33afe2(0x215)]={'bold':!![],'color':{'argb':_0x5b6e7b['LPnlC']}},_0x18fc3c['getRow'](0x1)['fill']={'type':_0x5b6e7b['NjrUR'],'pattern':_0x5b6e7b[_0x33afe2(0x1c8)],'fgColor':{'argb':'FF4472C4'}},_0x18fc3c['getRow'](0x1)[_0x33afe2(0x1e7)]={'vertical':_0x5b6e7b['JYsxt'],'horizontal':_0x5b6e7b['EinNn']};const _0x2b46b3=_0x1fdb25?this['preprocessTextColumns'](_0x2f65ba,_0x321351,_0x1fdb25):_0x2f65ba;return _0x18fc3c[_0x33afe2(0x1ef)](_0x2b46b3),_0x1fdb25&&this[_0x33afe2(0x1f3)](_0x18fc3c,_0x321351,_0x1fdb25,_0x2f65ba['length']),_0x5a7783&&await _0x5a7783(0x32),_0x18fc3c[_0x33afe2(0x1cf)]={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x321351['length']}},_0x18fc3c['views']=[{'state':_0x5b6e7b[_0x33afe2(0x20b)],'xSplit':0x0,'ySplit':0x1}],await _0x11ce89['xlsx'][_0x33afe2(0x211)](_0x275cd0),_0x5a7783&&await _0x5a7783(0x64),logger['info']({'event':_0x5b6e7b['tayQp'],'method':_0x33afe2(0x1f1),'rows':_0x2f65ba[_0x33afe2(0x1e2)]},_0x5b6e7b['xDuBX']),_0x275cd0;}async[a0_0x4be095(0x1c5)](_0x568f3a,_0x3ff0c3,_0x3d484f,_0x52f982,_0x24bfb7,_0x4c076d){const _0x5311a4=a0_0x4be095,_0x1a0cbe={'LzqNp':function(_0xf18ccb,_0x26a059){return _0xf18ccb+_0x26a059;},'sQORi':function(_0x78da53,_0x8fc3bd){return _0x78da53!==_0x8fc3bd;},'pqEbE':function(_0x47d218,_0x26cbc0){return _0x47d218>_0x26cbc0;},'htBNR':'FFFFFFFF','HOLmR':_0x5311a4(0x1df),'WMWvd':_0x5311a4(0x1cb),'SFIjR':'middle','KmYPs':_0x5311a4(0x20f),'VUlvO':function(_0x55cfb6,_0x391251){return _0x55cfb6<_0x391251;},'alPcQ':function(_0x2b5ae7,_0x33e765){return _0x2b5ae7*_0x33e765;},'NMLoU':function(_0x249108,_0xcbd68){return _0x249108/_0xcbd68;},'qOyWe':function(_0x63f9b7,_0x2bde16){return _0x63f9b7(_0x2bde16);},'STHSg':_0x5311a4(0x1eb)},_0x57c652=new ExcelJS['stream']['xlsx'][(_0x5311a4(0x1e5))]({'filename':_0x24bfb7,'useStyles':!![],'useSharedStrings':!![]}),_0x5d930b=_0x57c652[_0x5311a4(0x1fc)](_0x5311a4(0x1e3)),_0x40fec0=_0x3ff0c3||(_0x1a0cbe[_0x5311a4(0x203)](_0x568f3a[_0x5311a4(0x1e2)],0x0)?Object['keys'](_0x568f3a[0x0]):[]),_0x347798={};_0x40fec0[_0x5311a4(0x207)]((_0x2312d9,_0x4b869b)=>{_0x347798[_0x2312d9]=_0x1a0cbe['LzqNp'](_0x4b869b,0x1);}),_0x5d930b['columns']=_0x40fec0['map'](_0x3dffc1=>{const _0xa105c0=_0x5311a4,_0x947649={'header':this['formatHeader'](_0x3dffc1,_0x52f982),'key':_0x3dffc1,'width':0x14};if(_0x3d484f&&_0x3d484f[_0x3dffc1]){const _0xd4bcd8=_0x3d484f[_0x3dffc1];if(_0xd4bcd8['type']&&_0x1a0cbe['sQORi'](_0xd4bcd8['type']['toLowerCase'](),_0xa105c0(0x1c1))){const _0x52372b=this[_0xa105c0(0x1e1)](_0xd4bcd8);_0x52372b&&(_0x947649[_0xa105c0(0x1be)]={'numFmt':_0x52372b});}}return _0x947649;});const _0x17fd7e=_0x5d930b[_0x5311a4(0x1c4)](0x1);_0x17fd7e['font']={'bold':!![],'color':{'argb':_0x1a0cbe[_0x5311a4(0x201)]}},_0x17fd7e['fill']={'type':_0x1a0cbe['HOLmR'],'pattern':'solid','fgColor':{'argb':_0x1a0cbe[_0x5311a4(0x1f5)]}},_0x17fd7e[_0x5311a4(0x1e7)]={'vertical':_0x1a0cbe[_0x5311a4(0x1d1)],'horizontal':_0x1a0cbe[_0x5311a4(0x1c9)]},_0x17fd7e[_0x5311a4(0x1f6)]();const _0xd20b2c=_0x568f3a[_0x5311a4(0x1e2)];let _0xeb8e7=0x0;for(let _0xf1829e=0x0;_0x1a0cbe[_0x5311a4(0x1c7)](_0xf1829e,_0xd20b2c);_0xf1829e+=this['chunkSize']){const _0xbf02d9=_0x568f3a['slice'](_0xf1829e,_0xf1829e+this['chunkSize']);for(const _0x138176 of _0xbf02d9){const _0x67a5ce=_0x3d484f?this[_0x5311a4(0x1d6)](_0x138176,_0x40fec0,_0x3d484f):_0x138176,_0x4181d2=_0x5d930b['addRow'](_0x67a5ce);_0x3d484f&&this[_0x5311a4(0x1bb)](_0x4181d2,_0x67a5ce,_0x40fec0,_0x3d484f),_0x4181d2['commit'](),_0xeb8e7++;}if(_0x4c076d){const _0x52e082=Math['round'](_0x1a0cbe['alPcQ'](_0x1a0cbe['NMLoU'](_0xeb8e7,_0xd20b2c),0x64));await _0x1a0cbe[_0x5311a4(0x1f9)](_0x4c076d,_0x52e082);}logger[_0x5311a4(0x202)]({'event':_0x1a0cbe[_0x5311a4(0x1cc)],'processed':_0xeb8e7,'total':_0xd20b2c},'Processed\x20'+_0xeb8e7+'/'+_0xd20b2c+'\x20rows');}return _0x5d930b[_0x5311a4(0x1f6)](),await _0x57c652[_0x5311a4(0x1f6)](),logger[_0x5311a4(0x1d3)]({'event':'excel_generation_complete','method':'streaming','rows':_0xd20b2c,'chunks':Math['ceil'](_0xd20b2c/this[_0x5311a4(0x20a)])},_0x5311a4(0x1d8)),_0x24bfb7;}['formatHeader'](_0x3e70ff,_0x1f7f8f){if(_0x1f7f8f&&_0x1f7f8f[_0x3e70ff])return _0x1f7f8f[_0x3e70ff];return String(_0x3e70ff)['toUpperCase']();}['validateColumns'](_0x3cdeaa,_0x4cdc8a){const _0x430011=a0_0x4be095;if(!_0x4cdc8a||_0x4cdc8a['length']===0x0)return!![];if(_0x3cdeaa[_0x430011(0x1e2)]===0x0)return!![];const _0x34f6d7=Object[_0x430011(0x219)](_0x3cdeaa[0x0]),_0x1d1ce3=_0x4cdc8a['filter'](_0x21f92b=>!_0x34f6d7['includes'](_0x21f92b));if(_0x1d1ce3[_0x430011(0x1e2)]>0x0)throw new Error('Invalid\x20columns:\x20'+_0x1d1ce3['join'](',\x20'));return!![];}['getExcelFormat'](_0x3942fc){const _0x246e06=a0_0x4be095,_0x43ef76={'LGqfb':'dd/mm/yyyy','DkfBt':'number','wTVzU':_0x246e06(0x217),'uBLZG':'currency','XMAhA':function(_0x21ef80,_0x4f117e){return _0x21ef80||_0x4f117e;},'rxcAj':'\x22Rp\x20\x22#,##0','zZZtw':'percentage','AHgmj':_0x246e06(0x1b8)};if(!_0x3942fc||!_0x3942fc[_0x246e06(0x1cd)])return null;const {type:_0x277953,format:_0x15882c}=_0x3942fc;switch(_0x277953['toLowerCase']()){case _0x246e06(0x1c1):return _0x15882c?_0x15882c['toLowerCase']():_0x43ef76['LGqfb'];case _0x43ef76['DkfBt']:return _0x15882c||_0x43ef76['wTVzU'];case _0x43ef76['uBLZG']:return _0x43ef76[_0x246e06(0x20e)](_0x15882c,_0x43ef76['rxcAj']);case _0x43ef76['zZZtw']:return _0x15882c||_0x246e06(0x1fe);case _0x43ef76[_0x246e06(0x1bc)]:return'@';default:return null;}}['applyCellFormatting'](_0x5c9f65,_0x22e9bf,_0x554844,_0x5b2296){const _0xa9f3ed=a0_0x4be095,_0x580de2={'sRKQx':function(_0x1bdfed,_0x2f3715){return _0x1bdfed+_0x2f3715;},'INNWg':function(_0x1748b7,_0x3866cd){return _0x1748b7<=_0x3866cd;}};if(!_0x554844)return;_0x22e9bf[_0xa9f3ed(0x207)]((_0x422990,_0x49df4c)=>{const _0x17a3bb=_0xa9f3ed,_0x50dbe5=_0x554844[_0x422990];if(!_0x50dbe5)return;const _0x20a7b5=_0x580de2['sRKQx'](_0x49df4c,0x1);for(let _0x53e7c7=0x2;_0x580de2[_0x17a3bb(0x1f0)](_0x53e7c7,_0x5b2296+0x1);_0x53e7c7++){const _0x942325=_0x5c9f65['getCell'](_0x53e7c7,_0x20a7b5);this['formatCell'](_0x942325,_0x50dbe5);}});}['applyRowFormatting'](_0xc36abb,_0x20837a,_0x711116,_0x2e1e53){const _0x478073={'wigrs':function(_0x26adfd,_0x5b4d40){return _0x26adfd+_0x5b4d40;}};if(!_0x2e1e53)return;_0x711116['forEach']((_0x59cbdc,_0x411c26)=>{const _0x161de1=a0_0x3fc3,_0x8a99ce=_0x2e1e53[_0x59cbdc];if(!_0x8a99ce)return;const _0x49600a=_0xc36abb['getCell'](_0x478073['wigrs'](_0x411c26,0x1));this[_0x161de1(0x1f7)](_0x49600a,_0x8a99ce);});}[a0_0x4be095(0x1f7)](_0x153029,_0x3c3c08){const _0xd028fc=a0_0x4be095,_0x1b4d50={'iJWGY':_0xd028fc(0x1c1),'gnEJt':function(_0x36ccd6,_0x2ec065){return _0x36ccd6===_0x2ec065;},'niIlV':_0xd028fc(0x1f2),'zxFPx':function(_0x3ccc3f,_0x5b535a){return _0x3ccc3f!==_0x5b535a;},'CTBQT':function(_0x3496f5,_0x5c7c2a){return _0x3496f5===_0x5c7c2a;},'NSwJk':'text','TKGqI':_0xd028fc(0x20c)};if(!_0x3c3c08||!_0x3c3c08[_0xd028fc(0x1cd)])return;const {type:_0x4e19a1,format:_0x826ad1}=_0x3c3c08;if(_0x4e19a1['toLowerCase']()===_0x1b4d50[_0xd028fc(0x200)]&&_0x153029['value']){const _0xd2c529=this['formatDateString'](_0x153029['value'],_0x826ad1);_0xd2c529&&(_0x153029[_0xd028fc(0x1da)]=_0xd2c529);return;}if((_0x1b4d50['gnEJt'](_0x4e19a1[_0xd028fc(0x1b9)](),'number')||_0x4e19a1['toLowerCase']()===_0x1b4d50['niIlV']||_0x4e19a1[_0xd028fc(0x1b9)]()==='percentage')&&_0x153029['value']){const _0x1f8f8a=this['parseNumber'](_0x153029[_0xd028fc(0x1da)]);if(_0x1b4d50['zxFPx'](_0x1f8f8a,null)){_0x153029[_0xd028fc(0x1da)]=_0x1f8f8a;const _0x3e4a91=this['getExcelFormat'](_0x3c3c08);_0x3e4a91&&(_0x153029[_0xd028fc(0x1bd)]=_0x3e4a91);}}_0x1b4d50[_0xd028fc(0x1e4)](_0x4e19a1[_0xd028fc(0x1b9)](),_0x1b4d50['NSwJk'])&&_0x153029[_0xd028fc(0x1da)]&&(_0x153029[_0xd028fc(0x1bd)]='@',typeof _0x153029['value']!==_0x1b4d50['TKGqI']&&(_0x153029['value']=String(_0x153029[_0xd028fc(0x1da)])),_0x153029[_0xd028fc(0x1e7)]={'horizontal':_0xd028fc(0x213),'vertical':'middle'});}['formatDateString'](_0x2043b1,_0xe60520){const _0x501863=a0_0x4be095,_0x311e56={'EeScp':function(_0x131730,_0x53f0f){return _0x131730+_0x53f0f;},'zPFQR':function(_0x2ab85d,_0x25e7be){return _0x2ab85d===_0x25e7be;},'ywTWa':'string','ZeAyS':function(_0x3aa309,_0x210ed7,_0x450c4c){return _0x3aa309(_0x210ed7,_0x450c4c);},'TBIGy':function(_0x18d6de,_0x40dc54,_0x53096b){return _0x18d6de(_0x40dc54,_0x53096b);},'OQHDn':'number','PVosy':function(_0x490557,_0x1302de){return _0x490557(_0x1302de);},'GcVDy':_0x501863(0x1c3),'VJnCc':_0x501863(0x1db)};if(!_0x2043b1)return null;let _0xe4a406,_0x3c2150,_0x2c3300;if(_0x2043b1 instanceof Date)_0xe4a406=_0x2043b1[_0x501863(0x1ee)](),_0x3c2150=_0x311e56[_0x501863(0x1bf)](_0x2043b1['getUTCMonth'](),0x1),_0x2c3300=_0x2043b1[_0x501863(0x1d7)]();else{if(_0x311e56[_0x501863(0x1e9)](typeof _0x2043b1,_0x311e56[_0x501863(0x1d2)])){const _0x3093cd=_0x2043b1['match'](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x3093cd)_0xe4a406=parseInt(_0x3093cd[0x1],0xa),_0x3c2150=parseInt(_0x3093cd[0x2],0xa),_0x2c3300=parseInt(_0x3093cd[0x3],0xa);else{const _0x1f5472=_0x2043b1['match'](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x1f5472)_0x2c3300=_0x311e56['ZeAyS'](parseInt,_0x1f5472[0x1],0xa),_0x3c2150=parseInt(_0x1f5472[0x2],0xa),_0xe4a406=_0x311e56[_0x501863(0x1b7)](parseInt,_0x1f5472[0x3],0xa);else{const _0x1b14af=_0x2043b1['match'](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x1b14af&&(_0xe4a406=parseInt(_0x1b14af[0x1],0xa),_0x3c2150=_0x311e56['TBIGy'](parseInt,_0x1b14af[0x2],0xa),_0x2c3300=_0x311e56['TBIGy'](parseInt,_0x1b14af[0x3],0xa));}}}else{if(typeof _0x2043b1===_0x311e56[_0x501863(0x1ba)]){const _0x3b8390=new Date(_0x2043b1);!_0x311e56['PVosy'](isNaN,_0x3b8390[_0x501863(0x218)]())&&(_0xe4a406=_0x3b8390['getUTCFullYear'](),_0x3c2150=_0x3b8390[_0x501863(0x210)]()+0x1,_0x2c3300=_0x3b8390['getUTCDate']());}}}if(!_0xe4a406||!_0x3c2150||!_0x2c3300)return null;const _0x4fb3f3=String(_0x2c3300)[_0x501863(0x1f4)](0x2,'0'),_0x7eade2=String(_0x3c2150)[_0x501863(0x1f4)](0x2,'0'),_0x4dd4af=_0x311e56[_0x501863(0x1b6)](String,_0xe4a406),_0x2b77b3=(_0xe60520||_0x501863(0x1fb))[_0x501863(0x1b9)]();if(_0x2b77b3===_0x501863(0x1fa))return _0x4fb3f3+'/'+_0x7eade2+'/'+_0x4dd4af;else{if(_0x311e56['zPFQR'](_0x2b77b3,'mm/dd/yyyy'))return _0x7eade2+'/'+_0x4fb3f3+'/'+_0x4dd4af;else{if(_0x2b77b3===_0x311e56['GcVDy'])return _0x4dd4af+'-'+_0x7eade2+'-'+_0x4fb3f3;else{if(_0x2b77b3==='dd-mm-yyyy')return _0x4fb3f3+'-'+_0x7eade2+'-'+_0x4dd4af;else return _0x2b77b3===_0x311e56['VJnCc']?_0x4dd4af+'/'+_0x7eade2+'/'+_0x4fb3f3:_0x4fb3f3+'/'+_0x7eade2+'/'+_0x4dd4af;}}}}[a0_0x4be095(0x205)](_0x5ef506){const _0x470151=a0_0x4be095,_0x380276={'FEFma':function(_0x372fc5,_0x189b2e){return _0x372fc5===_0x189b2e;},'rzJPe':function(_0x5c850e,_0x157c17){return _0x5c850e(_0x157c17);}};if(_0x380276[_0x470151(0x1c6)](typeof _0x5ef506,'number'))return _0x5ef506;if(typeof _0x5ef506===_0x470151(0x20c)){const _0x2dc8d0=_0x5ef506[_0x470151(0x1c2)](/[^\d.-]/g,''),_0x138ade=_0x380276[_0x470151(0x1dd)](parseFloat,_0x2dc8d0);if(!_0x380276['rzJPe'](isNaN,_0x138ade))return _0x138ade;}return null;}['preprocessTextColumns'](_0xf8fd20,_0x28b7b1,_0x4ce2c1){const _0x2258df=a0_0x4be095,_0x58363c={'Qwzdx':function(_0xb63db7,_0x3b8a3a){return _0xb63db7===_0x3b8a3a;},'HEJRh':function(_0x1de12b,_0x50436e){return _0x1de12b!==_0x50436e;},'bsmhf':function(_0x1ab89b,_0x424a2d){return _0x1ab89b===_0x424a2d;}};if(!_0x4ce2c1)return _0xf8fd20;const _0x3fb045=[];_0x28b7b1[_0x2258df(0x207)](_0x51b2e9=>{const _0x44802=_0x2258df,_0x3aae65=_0x4ce2c1[_0x51b2e9];_0x3aae65&&_0x3aae65['type']&&_0x58363c['Qwzdx'](_0x3aae65[_0x44802(0x1cd)]['toLowerCase'](),'text')&&_0x3fb045['push'](_0x51b2e9);});if(_0x58363c['bsmhf'](_0x3fb045['length'],0x0))return _0xf8fd20;return _0xf8fd20[_0x2258df(0x1e6)](_0x434a16=>{const _0x1ef452={..._0x434a16};return _0x3fb045['forEach'](_0x2105ba=>{const _0x58f148=a0_0x3fc3;_0x58363c[_0x58f148(0x1d0)](_0x1ef452[_0x2105ba],null)&&_0x58363c[_0x58f148(0x1d0)](_0x1ef452[_0x2105ba],undefined)&&(_0x1ef452[_0x2105ba]='\x27'+String(_0x1ef452[_0x2105ba]));}),_0x1ef452;});}[a0_0x4be095(0x1d6)](_0x286e5d,_0x28a20e,_0xd2dbd){const _0x1f3c5e=a0_0x4be095,_0x95877={'UsUre':function(_0x1cc5f4,_0x233db7){return _0x1cc5f4+_0x233db7;},'wBzGi':function(_0x52d4c5,_0x476e99){return _0x52d4c5(_0x476e99);}};if(!_0xd2dbd)return _0x286e5d;const _0x1c4184=[];_0x28a20e['forEach'](_0x57ccc6=>{const _0x496c43=a0_0x3fc3,_0x396779=_0xd2dbd[_0x57ccc6];_0x396779&&_0x396779[_0x496c43(0x1cd)]&&_0x396779[_0x496c43(0x1cd)][_0x496c43(0x1b9)]()===_0x496c43(0x1b8)&&_0x1c4184['push'](_0x57ccc6);});if(_0x1c4184['length']===0x0)return _0x286e5d;const _0x24373d={..._0x286e5d};return _0x1c4184[_0x1f3c5e(0x207)](_0xd2dcbc=>{const _0x535432=_0x1f3c5e;_0x24373d[_0xd2dcbc]!==null&&_0x24373d[_0xd2dcbc]!==undefined&&(_0x24373d[_0xd2dcbc]=_0x95877['UsUre']('\x27',_0x95877[_0x535432(0x1d4)](String,_0x24373d[_0xd2dcbc])));}),_0x24373d;}}module['exports']=ExcelGenerator;function a0_0x3fc3(_0x518cff,_0x24dcc7){_0x518cff=_0x518cff-0x1b6;const _0x122044=a0_0x1220();let _0x3fc37a=_0x122044[_0x518cff];if(a0_0x3fc3['fyXmMP']===undefined){var _0xb35da1=function(_0x35c298){const _0x4b23b1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x25f47d='',_0x17fe64='';for(let _0x313d6b=0x0,_0x3319d1,_0x440cc3,_0x1ca2dc=0x0;_0x440cc3=_0x35c298['charAt'](_0x1ca2dc++);~_0x440cc3&&(_0x3319d1=_0x313d6b%0x4?_0x3319d1*0x40+_0x440cc3:_0x440cc3,_0x313d6b++%0x4)?_0x25f47d+=String['fromCharCode'](0xff&_0x3319d1>>(-0x2*_0x313d6b&0x6)):0x0){_0x440cc3=_0x4b23b1['indexOf'](_0x440cc3);}for(let _0x858d99=0x0,_0x28ab5c=_0x25f47d['length'];_0x858d99<_0x28ab5c;_0x858d99++){_0x17fe64+='%'+('00'+_0x25f47d['charCodeAt'](_0x858d99)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x17fe64);};a0_0x3fc3['gSwKyl']=_0xb35da1,a0_0x3fc3['ymlQkp']={},a0_0x3fc3['fyXmMP']=!![];}const _0x46ac09=_0x122044[0x0],_0x8d0b13=_0x518cff+_0x46ac09,_0x428ea3=a0_0x3fc3['ymlQkp'][_0x8d0b13];return!_0x428ea3?(_0x3fc37a=a0_0x3fc3['gSwKyl'](_0x3fc37a),a0_0x3fc3['ymlQkp'][_0x8d0b13]=_0x3fc37a):_0x3fc37a=_0x428ea3,_0x3fc37a;}function a0_0x1220(){const _0x420c6a=['ExL5Es9TBs9Kza','z2vUzxjHDgu','CNPkugu','rKzgrKzgrKy','Cgf0DgvYBG','BwLKzgXL','z2v0rxHJzwXgB3jTyxq','BgvUz3rO','rgf0yq','q1rcuvq','v29YA2jVB2TxCML0zxi','BwfW','ywXPz25Tzw50','D1rtqKu','ELbguvi','zxHJzwXQCW','zxHJzwXFy2H1BMTFChjVy2vZC2vK','mZmZodiXnKL4r09zCW','ndCWmtK2wwXJEgzY','z2v0vvrdrNvSBfLLyxi','ywrKuM93CW','su5ov2C','C2LTCgXL','y3vYCMvUy3K','yxbWBhLdzwXSrM9YBwf0DgLUzW','CgfKu3rHCNq','v01xDMq','y29TBwL0','zM9YBwf0q2vSBa','mte3DK9lzerQ','Cu95v2u','zgqVBw0VExL5Eq','reqVtu0VwvLzwq','ywrKv29YA3nOzwv0','lI9SB2DNzxi','mc4Wmcu','EfL5y0W','AuPxr1K','AhrctLi','zgvIDwC','ChffyKu','mty3mJm2nZbSs1vOr2G','CgfYC2voDw1Izxi','u1jwsK8','zM9YrwfJAa','z2vUzxjHDgvtAw1WBgu','ndbnEgHuvxm','y2H1BMTtAxPL','s2zxAxy','C3rYAw5N','z2DeEe0','we1bAee','y2vUDgvY','z2v0vvrdtw9UDgG','D3jPDgvgAwXL','mZmWngviqMPLyW','BgvMDa','nJy4mdjUqKLcrNm','zM9UDa','mtK3mdrvDKjbq0G','iYWJiZaUmda','z2v0vgLTzq','A2v5CW','ufzVC3K','wMvbEvm','Dgv4Da','Dg9mB3DLCKnHC2u','t1firg4','yxbWBhLsB3DgB3jTyxr0Aw5N','quHNBwO','BNvTrM10','C3r5Bgu','rwvty3a','v29YA2jVB2S','zgf0zq','CMvWBgfJzq','ExL5Es1TBs1Kza','z2v0uM93','z2vUzxjHDgvtDhjLyw1PBMC','rKvgBwe','vLvSDK8','z1DZD3e','s21zuhm','mMr1t3HNAq','rKy0ndCYqZq','u1riu2C','DhLWzq','y29SDw1UCW','yxv0B0zPBhrLCG','sevkuMG','u0zjALi','ExDuv2e','Aw5MBW','D0j6r2K','C29SAwq','ChjLChjVy2vZC1rLEhrsB3C','z2v0vvrdrgf0zq','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','nZu4nZyZA3vuAe1h','DMfSDwu'];a0_0x1220=function(){return _0x420c6a;};return a0_0x1220();}
1
+ function a0_0x2101(){const _0x2d3d3c=['y29TBwL0','zgvIDwC','mtu0ndq3mNvADeLxCa','uenzsMG','wwTUD24','ywrKv29YA3nOzwv0','ENPkveK','yxv0B0zPBhrLCG','ExL5Es1TBs1Kza','BNvTyMvY','nMDgt2DnzG','y2vUDgvY','zM9YrwfJAa','DhLWzq','t3rlz2e','r0HWBey','C29SAwq','BvLyr2m','rKy0ndCYqZq','mtG3mZe5meLNzenZvG','DMfSDwu','zxHJzwXQCW','iYWJiZaUmda','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','CMvWBgfJzq','zxHWB3j0CW','BerWBu0','CgfYC2voDw1Izxi','C3rYzwfTAw5N','wMTUy0G','y29SDw1UCW','DMfSAwrHDgvdB2X1Bw5Z','y2vPBa','C3rYzwfT','Dw9mrNi','rKzgrKzgrKy','C3r5Bgu','sw52ywXPzcbJB2X1Bw5ZoIa','EfH4BwO','DLffAeS','y2H1BMTtAxPL','z2v0vvrdtw9UDgG','ihjVD3m','AxLiB1G','v29YA2jVB2TxCML0zxi','CgfKu3rHCNq','Aw5MBW','zgqVBw0VExL5Eq','CxfXAvO','uhjVy2vZC2vKia','Bwf0y2G','zgf0zq','C2LTCgXL','Dg9mB3DLCKnHC2u','nJmXmJm5sMT0AvPz','z2v0uM93','lI9SB2DNzxi','zM9YBwf0rgf0zvn0CMLUzW','Agr6z3q','zM9YBwf0sgvHzgvY','DeHiq0K','AejgAM0','oti2ntuYverJv1zU','zM9YBwf0q2vSBa','svnkwMi','BgvMDa','CNL5DeO','mZGWmte1vMnKtvDA','Dgv4Da','y1fxBgW','z2v0vvrdrgf0zq','CgvYy2vUDgfNzq','BgvUz3rO','otGXnZCXm3n3wfbbtG','zMLSDgvY','y3vYCMvUy3K','vvvAr0m','yxbWBhLsB3DgB3jTyxr0Aw5N','z2v0vgLTzq','sePgq1a','zw52','C3rYAw5N','CwveDxG','ntu1ngPkvhfXBa','Dg9vChbLCKnHC2u','EM5jC1C','u1bhwg4','wNrUCLe','zM9UDa','rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','C3HLuhu','A2v5CW','rgf0yq','ChjLChjVy2vZC1rLEhrsB3C','nZvHs1z5veG','Ehr1wu4','seTNBLi','Ae5ky0q','wwntCLi','yxbWBhLdzwXSrM9YBwf0DgLUzW','z2v0q2vSBa','rxHJzwWGz2vUzxjHDgLVBIbZDgfYDgvK','Cgf0DgvYBG','EgXZEa','z2v0rxHJzwXgB3jTyxq'];a0_0x2101=function(){return _0x2d3d3c;};return a0_0x2101();}const a0_0x226f06=a0_0x2643;(function(_0xe341e,_0x21a8d0){const _0x20e098=a0_0x2643,_0x5da76d=_0xe341e();while(!![]){try{const _0x63645f=-parseInt(_0x20e098(0x1f8))/0x1+parseInt(_0x20e098(0x208))/0x2*(parseInt(_0x20e098(0x213))/0x3)+parseInt(_0x20e098(0x1f3))/0x4+-parseInt(_0x20e098(0x1c8))/0x5+parseInt(_0x20e098(0x1bf))/0x6*(-parseInt(_0x20e098(0x1eb))/0x7)+-parseInt(_0x20e098(0x220))/0x8+parseInt(_0x20e098(0x1fe))/0x9;if(_0x63645f===_0x21a8d0)break;else _0x5da76d['push'](_0x5da76d['shift']());}catch(_0x1bc28e){_0x5da76d['push'](_0x5da76d['shift']());}}}(a0_0x2101,0x5668b));const ExcelJS=require(a0_0x226f06(0x1ca)),{logger}=require(a0_0x226f06(0x1ed));class ExcelGenerator{constructor(){const _0x37bbdc=a0_0x226f06,_0x17288d={'YcSrR':function(_0x2ddf2e,_0x32583a,_0x53f05a){return _0x2ddf2e(_0x32583a,_0x53f05a);}};this[_0x37bbdc(0x1dd)]=_0x17288d[_0x37bbdc(0x217)](parseInt,process[_0x37bbdc(0x205)]['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async['generate'](_0x5b55bd){const _0x4ec7a9=a0_0x226f06,_0x454821={'jKnZW':'auto','GHplF':_0x4ec7a9(0x21a),'QwUBZ':function(_0x16ea4a,_0xe064b){return _0x16ea4a<=_0xe064b;}},{data:_0x409b87,columns:_0x390924,columnFormats:_0x37a2e7,fieldLabels:_0x307ae8,filePath:_0x430d07,onProgress:_0x4cac20}=_0x5b55bd;logger['info']({'event':'excel_generation_start','rows':_0x409b87[_0x4ec7a9(0x1fd)],'columns':_0x390924?.['length']||_0x454821['jKnZW'],'columnFormats':_0x37a2e7?Object[_0x4ec7a9(0x210)](_0x37a2e7):null,'fieldLabels':_0x307ae8?Object[_0x4ec7a9(0x210)](_0x307ae8):null,'streaming':_0x409b87[_0x4ec7a9(0x1fd)]>this[_0x4ec7a9(0x1dd)]},_0x454821[_0x4ec7a9(0x1c4)]);if(_0x454821['QwUBZ'](_0x409b87[_0x4ec7a9(0x1fd)],this[_0x4ec7a9(0x1dd)]))return await this['generateSimple'](_0x409b87,_0x390924,_0x37a2e7,_0x307ae8,_0x430d07,_0x4cac20);return await this['generateStreaming'](_0x409b87,_0x390924,_0x37a2e7,_0x307ae8,_0x430d07,_0x4cac20);}async['generateSimple'](_0xcb4842,_0x1de666,_0x4194cd,_0x4df5b2,_0x29f016,_0x51d2b3){const _0x709b19=a0_0x226f06,_0x5b88d4={'sQwyZ':'date','gXEui':function(_0x2454fc,_0x22b08e){return _0x2454fc>_0x22b08e;},'fpAso':function(_0x4d579f,_0x720464){return _0x4d579f(_0x720464);},'CFuVd':'frozen','qeDux':function(_0x4cec3d,_0x3afa26){return _0x4cec3d(_0x3afa26);},'ryytJ':'excel_generation_complete','Apadh':_0x709b19(0x1e9),'PCYJh':_0x709b19(0x20e)},_0x4e01be=new ExcelJS['Workbook'](),_0x14e0be=_0x4e01be[_0x709b19(0x223)](_0x709b19(0x211)),_0x1bc705=_0x1de666||(_0x5b88d4['gXEui'](_0xcb4842[_0x709b19(0x1fd)],0x0)?Object[_0x709b19(0x210)](_0xcb4842[0x0]):[]);_0x14e0be['columns']=_0x1bc705['map'](_0x508682=>{const _0x591536=_0x709b19,_0x5d0454={'header':this['formatHeader'](_0x508682,_0x4df5b2),'key':_0x508682,'width':0x14};if(_0x4194cd&&_0x4194cd[_0x508682]){const _0x28235e=_0x4194cd[_0x508682];if(_0x28235e['type']&&_0x28235e['type'][_0x591536(0x1ea)]()!==_0x5b88d4['sQwyZ']){const _0x5e8bc1=this['getExcelFormat'](_0x28235e);_0x5e8bc1&&(_0x5d0454[_0x591536(0x1d9)]={'numFmt':_0x5e8bc1});}}return _0x5d0454;}),_0x14e0be[_0x709b19(0x1ec)](0x1)[_0x709b19(0x20d)]={'bold':!![],'color':{'argb':_0x709b19(0x1d8)}},_0x14e0be[_0x709b19(0x1ec)](0x1)['fill']={'type':_0x709b19(0x21b),'pattern':_0x709b19(0x1c5),'fgColor':{'argb':_0x709b19(0x1c7)}},_0x14e0be['getRow'](0x1)['alignment']={'vertical':'middle','horizontal':_0x709b19(0x1c0)};const _0x537fa9=_0x4194cd?this[_0x709b19(0x1cc)](_0xcb4842,_0x1bc705,_0x4194cd):_0xcb4842;return _0x14e0be['addRows'](_0x537fa9),_0x4194cd&&this['applyCellFormatting'](_0x14e0be,_0x1bc705,_0x4194cd,_0xcb4842[_0x709b19(0x1fd)]),_0x51d2b3&&await _0x5b88d4['fpAso'](_0x51d2b3,0x32),_0x14e0be[_0x709b19(0x225)]={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x1bc705['length']}},_0x14e0be['views']=[{'state':_0x5b88d4['CFuVd'],'xSplit':0x0,'ySplit':0x1}],await _0x4e01be[_0x709b19(0x21c)]['writeFile'](_0x29f016),_0x51d2b3&&await _0x5b88d4[_0x709b19(0x207)](_0x51d2b3,0x64),logger[_0x709b19(0x1e3)]({'event':_0x5b88d4[_0x709b19(0x1f7)],'method':_0x5b88d4['Apadh'],'rows':_0xcb4842['length']},_0x5b88d4[_0x709b19(0x221)]),_0x29f016;}async['generateStreaming'](_0x382272,_0xe56fe2,_0x171219,_0xbe574d,_0x189bff,_0x21bbe7){const _0x39f77f=a0_0x226f06,_0x54361b={'HLStw':function(_0x552f77,_0x2bdaf5){return _0x552f77+_0x2bdaf5;},'CaDro':_0x39f77f(0x1c5),'HKgnR':'center','ZkncH':function(_0x5fd3bd,_0x2d1596){return _0x5fd3bd*_0x2d1596;},'tOBNY':function(_0x4910f6,_0x147220){return _0x4910f6/_0x147220;},'kQpMd':function(_0x138bfc,_0x6f147a){return _0x138bfc(_0x6f147a);},'znIsW':'excel_generation_complete','OtKga':'Excel\x20generated\x20(streaming\x20method)'},_0x463f56=new ExcelJS[(_0x39f77f(0x1d6))][(_0x39f77f(0x21c))][(_0x39f77f(0x1e1))]({'filename':_0x189bff,'useStyles':!![],'useSharedStrings':!![]}),_0x5d1fca=_0x463f56['addWorksheet'](_0x39f77f(0x211)),_0x20412f=_0xe56fe2||(_0x382272[_0x39f77f(0x1fd)]>0x0?Object['keys'](_0x382272[0x0]):[]),_0x53e59e={};_0x20412f['forEach']((_0x302ae3,_0x4445f1)=>{_0x53e59e[_0x302ae3]=_0x54361b['HLStw'](_0x4445f1,0x1);}),_0x5d1fca[_0x39f77f(0x1d3)]=_0x20412f['map'](_0x4ba135=>{const _0x1753ae=_0x39f77f,_0x2cf207={'header':this[_0x1753ae(0x1f0)](_0x4ba135,_0xbe574d),'key':_0x4ba135,'width':0x14};if(_0x171219&&_0x171219[_0x4ba135]){const _0x25b798=_0x171219[_0x4ba135];if(_0x25b798['type']&&_0x25b798[_0x1753ae(0x1c2)]['toLowerCase']()!=='date'){const _0x246fac=this['getExcelFormat'](_0x25b798);_0x246fac&&(_0x2cf207['style']={'numFmt':_0x246fac});}}return _0x2cf207;});const _0x5cf471=_0x5d1fca[_0x39f77f(0x1ec)](0x1);_0x5cf471[_0x39f77f(0x20d)]={'bold':!![],'color':{'argb':_0x39f77f(0x1d8)}},_0x5cf471['fill']={'type':_0x39f77f(0x21b),'pattern':_0x54361b['CaDro'],'fgColor':{'argb':_0x39f77f(0x1c7)}},_0x5cf471['alignment']={'vertical':'middle','horizontal':_0x54361b[_0x39f77f(0x215)]},_0x5cf471['commit']();const _0x1d0a1e=_0x382272['length'];let _0x33042e=0x0;for(let _0x40e59d=0x0;_0x40e59d<_0x1d0a1e;_0x40e59d+=this[_0x39f77f(0x1dd)]){const _0x37e06b=_0x382272['slice'](_0x40e59d,_0x40e59d+this[_0x39f77f(0x1dd)]);for(const _0x45d6bb of _0x37e06b){const _0x411584=_0x171219?this[_0x39f77f(0x212)](_0x45d6bb,_0x20412f,_0x171219):_0x45d6bb,_0x4864f4=_0x5d1fca['addRow'](_0x411584);_0x171219&&this['applyRowFormatting'](_0x4864f4,_0x411584,_0x20412f,_0x171219),_0x4864f4[_0x39f77f(0x21e)](),_0x33042e++;}if(_0x21bbe7){const _0x638ff=Math['round'](_0x54361b[_0x39f77f(0x1d2)](_0x54361b['tOBNY'](_0x33042e,_0x1d0a1e),0x64));await _0x54361b['kQpMd'](_0x21bbe7,_0x638ff);}logger[_0x39f77f(0x21f)]({'event':'excel_chunk_processed','processed':_0x33042e,'total':_0x1d0a1e},_0x39f77f(0x1e6)+_0x33042e+'/'+_0x1d0a1e+_0x39f77f(0x1df));}return _0x5d1fca[_0x39f77f(0x21e)](),await _0x463f56['commit'](),logger[_0x39f77f(0x1e3)]({'event':_0x54361b[_0x39f77f(0x20a)],'method':_0x39f77f(0x1d1),'rows':_0x1d0a1e,'chunks':Math[_0x39f77f(0x1d5)](_0x1d0a1e/this['chunkSize'])},_0x54361b[_0x39f77f(0x1c3)]),_0x189bff;}['formatHeader'](_0x2e20ea,_0x20eb9a){const _0x3ab4dd=a0_0x226f06;if(_0x20eb9a&&_0x20eb9a[_0x2e20ea])return _0x20eb9a[_0x2e20ea];return String(_0x2e20ea)[_0x3ab4dd(0x209)]();}[a0_0x226f06(0x1d4)](_0x3b8013,_0x269149){const _0xf61100=a0_0x226f06,_0x58b4e6={'hdzgt':function(_0x45a34a,_0x52f65e){return _0x45a34a===_0x52f65e;},'xXxmj':function(_0x2f8423,_0x5542e3){return _0x2f8423>_0x5542e3;}};if(!_0x269149||_0x58b4e6[_0xf61100(0x1ef)](_0x269149['length'],0x0))return!![];if(_0x58b4e6[_0xf61100(0x1ef)](_0x3b8013[_0xf61100(0x1fd)],0x0))return!![];const _0x294ff2=Object[_0xf61100(0x210)](_0x3b8013[0x0]),_0x386133=_0x269149[_0xf61100(0x1ff)](_0x344cc5=>!_0x294ff2['includes'](_0x344cc5));if(_0x58b4e6[_0xf61100(0x1db)](_0x386133[_0xf61100(0x1fd)],0x0))throw new Error(_0xf61100(0x1da)+_0x386133['join'](',\x20'));return!![];}[a0_0x226f06(0x21d)](_0x11d499){const _0xdaf28f=a0_0x226f06,_0x2ed058={'lDpmM':_0xdaf28f(0x1e8),'HJFCP':_0xdaf28f(0x1cb),'yaZsO':function(_0x2f4909,_0x788e6){return _0x2f4909||_0x788e6;},'sxePu':'percentage'};if(!_0x11d499||!_0x11d499[_0xdaf28f(0x1c2)])return null;const {type:_0x54edd8,format:_0x2003e5}=_0x11d499;switch(_0x54edd8[_0xdaf28f(0x1ea)]()){case _0x2ed058[_0xdaf28f(0x1cf)]:return _0x2003e5?_0x2003e5['toLowerCase']():_0xdaf28f(0x1e4);case'number':return _0x2003e5||_0x2ed058[_0xdaf28f(0x204)];case'currency':return _0x2ed058['yaZsO'](_0x2003e5,'\x22Rp\x20\x22#,##0');case _0x2ed058[_0xdaf28f(0x20f)]:return _0x2003e5||'0.00%';case _0xdaf28f(0x1f9):return'@';default:return null;}}[a0_0x226f06(0x218)](_0x323c0b,_0x14c7dc,_0x4b032e,_0x463918){const _0x466160=a0_0x226f06,_0x20dc39={'kuSwz':function(_0x391c84,_0x22ea6d){return _0x391c84+_0x22ea6d;}};if(!_0x4b032e)return;_0x14c7dc[_0x466160(0x1c1)]((_0x216970,_0x141563)=>{const _0x5483d6=_0x466160,_0x34c31b=_0x4b032e[_0x216970];if(!_0x34c31b)return;const _0x285b6c=_0x20dc39['kuSwz'](_0x141563,0x1);for(let _0x272487=0x2;_0x272487<=_0x20dc39['kuSwz'](_0x463918,0x1);_0x272487++){const _0xff958=_0x323c0b[_0x5483d6(0x219)](_0x272487,_0x285b6c);this[_0x5483d6(0x1f4)](_0xff958,_0x34c31b);}});}[a0_0x226f06(0x202)](_0x16778b,_0x4e5f6b,_0x3cdfb4,_0x52f792){const _0xa43ccb={'SPGXn':function(_0x269cb3,_0x778934){return _0x269cb3+_0x778934;}};if(!_0x52f792)return;_0x3cdfb4['forEach']((_0x1ac0f1,_0x416e59)=>{const _0x2d8134=a0_0x2643,_0xccc016=_0x52f792[_0x1ac0f1];if(!_0xccc016)return;const _0x1f72b9=_0x16778b[_0x2d8134(0x219)](_0xa43ccb[_0x2d8134(0x20b)](_0x416e59,0x1));this['formatCell'](_0x1f72b9,_0xccc016);});}['formatCell'](_0x53be56,_0x4e1009){const _0x4ba5f6=a0_0x226f06,_0x1c80cd={'mYXGc':function(_0x2379e6,_0x4b1687){return _0x2379e6===_0x4b1687;},'tHHCI':_0x4ba5f6(0x200),'iMOye':function(_0x24ac4f,_0x48db15){return _0x24ac4f!==_0x48db15;},'uoLFr':'text','pOyZy':function(_0x12e888,_0x8366a8){return _0x12e888!==_0x8366a8;},'YODTx':'middle'};if(!_0x4e1009||!_0x4e1009['type'])return;const {type:_0x3fb609,format:_0x43d5a8}=_0x4e1009;if(_0x3fb609[_0x4ba5f6(0x1ea)]()===_0x4ba5f6(0x1e8)&&_0x53be56['value']){const _0x108e24=this[_0x4ba5f6(0x1ee)](_0x53be56[_0x4ba5f6(0x1c9)],_0x43d5a8);_0x108e24&&(_0x53be56['value']=_0x108e24);return;}if((_0x3fb609[_0x4ba5f6(0x1ea)]()==='number'||_0x1c80cd['mYXGc'](_0x3fb609[_0x4ba5f6(0x1ea)](),_0x1c80cd[_0x4ba5f6(0x1f1)])||_0x1c80cd[_0x4ba5f6(0x1c6)](_0x3fb609[_0x4ba5f6(0x1ea)](),_0x4ba5f6(0x1fc)))&&_0x53be56['value']){const _0x356edb=this[_0x4ba5f6(0x1d0)](_0x53be56[_0x4ba5f6(0x1c9)]);if(_0x1c80cd['iMOye'](_0x356edb,null)){_0x53be56[_0x4ba5f6(0x1c9)]=_0x356edb;const _0x2928f7=this[_0x4ba5f6(0x21d)](_0x4e1009);_0x2928f7&&(_0x53be56['numFmt']=_0x2928f7);}}_0x3fb609['toLowerCase']()===_0x1c80cd[_0x4ba5f6(0x1d7)]&&_0x53be56['value']&&(_0x53be56['numFmt']='@',_0x1c80cd['pOyZy'](typeof _0x53be56['value'],'string')&&(_0x53be56[_0x4ba5f6(0x1c9)]=String(_0x53be56['value'])),_0x53be56['alignment']={'horizontal':_0x4ba5f6(0x1f6),'vertical':_0x1c80cd['YODTx']});}['formatDateString'](_0x3103a6,_0x5a474a){const _0x3914e5=a0_0x226f06,_0xbb74b8={'HXuuH':function(_0x31eae1,_0x5bb9e5){return _0x31eae1+_0x5bb9e5;},'hNJcD':_0x3914e5(0x206),'hBFjm':function(_0x41bc96,_0x1b84c8,_0x271ab4){return _0x41bc96(_0x1b84c8,_0x271ab4);},'NgjEI':_0x3914e5(0x1be),'cBmHI':function(_0x3b18a1,_0x41fe9f){return _0x3b18a1||_0x41fe9f;},'ZtnrQ':function(_0x2b1cfa,_0x35686b){return _0x2b1cfa(_0x35686b);},'cjLFF':function(_0x26a9c0,_0x3dc848){return _0x26a9c0(_0x3dc848);},'UUZGC':function(_0x3776a5,_0x3bdc36){return _0x3776a5(_0x3bdc36);},'Yknwn':function(_0x2699f5,_0x433011){return _0x2699f5===_0x433011;},'iIodj':function(_0x3d55b2,_0x399d05){return _0x3d55b2===_0x399d05;},'VjVnA':function(_0x378b51,_0x293bcd){return _0x378b51===_0x293bcd;},'ISJZb':'dd-mm-yyyy','cQWll':function(_0x281dde,_0x2abc7d){return _0x281dde===_0x2abc7d;},'zzJTI':'yyyy/mm/dd'};if(!_0x3103a6)return null;let _0x46d60a,_0x232165,_0x154fc7;if(_0x3103a6 instanceof Date)_0x46d60a=_0x3103a6['getUTCFullYear'](),_0x232165=_0xbb74b8['HXuuH'](_0x3103a6[_0x3914e5(0x1de)](),0x1),_0x154fc7=_0x3103a6[_0x3914e5(0x1fb)]();else{if(typeof _0x3103a6===_0xbb74b8[_0x3914e5(0x216)]){const _0x1e7d02=_0x3103a6['match'](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x1e7d02)_0x46d60a=parseInt(_0x1e7d02[0x1],0xa),_0x232165=parseInt(_0x1e7d02[0x2],0xa),_0x154fc7=parseInt(_0x1e7d02[0x3],0xa);else{const _0xb55ece=_0x3103a6['match'](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0xb55ece)_0x154fc7=parseInt(_0xb55ece[0x1],0xa),_0x232165=_0xbb74b8['hBFjm'](parseInt,_0xb55ece[0x2],0xa),_0x46d60a=_0xbb74b8['hBFjm'](parseInt,_0xb55ece[0x3],0xa);else{const _0x2efcc7=_0x3103a6[_0x3914e5(0x1e7)](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x2efcc7&&(_0x46d60a=parseInt(_0x2efcc7[0x1],0xa),_0x232165=_0xbb74b8[_0x3914e5(0x1f2)](parseInt,_0x2efcc7[0x2],0xa),_0x154fc7=_0xbb74b8['hBFjm'](parseInt,_0x2efcc7[0x3],0xa));}}}else{if(typeof _0x3103a6===_0xbb74b8['NgjEI']){const _0x297258=new Date(_0x3103a6);!isNaN(_0x297258[_0x3914e5(0x203)]())&&(_0x46d60a=_0x297258['getUTCFullYear'](),_0x232165=_0x297258['getUTCMonth']()+0x1,_0x154fc7=_0x297258[_0x3914e5(0x1fb)]());}}}if(_0xbb74b8['cBmHI'](!_0x46d60a,!_0x232165)||!_0x154fc7)return null;const _0x356188=_0xbb74b8[_0x3914e5(0x20c)](String,_0x154fc7)[_0x3914e5(0x1e2)](0x2,'0'),_0x2740b5=_0xbb74b8['cjLFF'](String,_0x232165)[_0x3914e5(0x1e2)](0x2,'0'),_0x32b0ef=_0xbb74b8[_0x3914e5(0x201)](String,_0x46d60a),_0x43942a=(_0x5a474a||'DD/MM/YYYY')[_0x3914e5(0x1ea)]();if(_0xbb74b8[_0x3914e5(0x222)](_0x43942a,_0x3914e5(0x1e4)))return _0x356188+'/'+_0x2740b5+'/'+_0x32b0ef;else{if(_0xbb74b8['iIodj'](_0x43942a,'mm/dd/yyyy'))return _0x2740b5+'/'+_0x356188+'/'+_0x32b0ef;else{if(_0xbb74b8['VjVnA'](_0x43942a,_0x3914e5(0x1bd)))return _0x32b0ef+'-'+_0x2740b5+'-'+_0x356188;else{if(_0x43942a===_0xbb74b8[_0x3914e5(0x1f5)])return _0x356188+'-'+_0x2740b5+'-'+_0x32b0ef;else return _0xbb74b8[_0x3914e5(0x1fa)](_0x43942a,_0xbb74b8[_0x3914e5(0x224)])?_0x32b0ef+'/'+_0x2740b5+'/'+_0x356188:_0x356188+'/'+_0x2740b5+'/'+_0x32b0ef;}}}}[a0_0x226f06(0x1d0)](_0x5d0abd){const _0x4f8383=a0_0x226f06,_0x1e41db={'fqloq':_0x4f8383(0x1be),'HyFWF':function(_0x4ba7ca,_0x36fcf4){return _0x4ba7ca===_0x36fcf4;},'vQEhK':function(_0x533c3a,_0x3ff68a){return _0x533c3a(_0x3ff68a);}};if(typeof _0x5d0abd===_0x1e41db['fqloq'])return _0x5d0abd;if(_0x1e41db['HyFWF'](typeof _0x5d0abd,_0x4f8383(0x206))){const _0x4cfc1b=_0x5d0abd[_0x4f8383(0x1cd)](/[^\d.-]/g,''),_0x5c16f4=_0x1e41db['vQEhK'](parseFloat,_0x4cfc1b);if(!_0x1e41db[_0x4f8383(0x1dc)](isNaN,_0x5c16f4))return _0x5c16f4;}return null;}[a0_0x226f06(0x1cc)](_0x29ff94,_0x16088d,_0x4cf700){const _0x5f5d67=a0_0x226f06,_0x4d6890={'qqqiZ':_0x5f5d67(0x1f9),'xtuYN':function(_0x159ae7,_0x318e6c){return _0x159ae7!==_0x318e6c;}};if(!_0x4cf700)return _0x29ff94;const _0x19cd0c=[];_0x16088d[_0x5f5d67(0x1c1)](_0x38c2e7=>{const _0x284ec2=_0x5f5d67,_0x1ef2c6=_0x4cf700[_0x38c2e7];_0x1ef2c6&&_0x1ef2c6['type']&&_0x1ef2c6['type'][_0x284ec2(0x1ea)]()===_0x4d6890[_0x284ec2(0x1e5)]&&_0x19cd0c['push'](_0x38c2e7);});if(_0x19cd0c['length']===0x0)return _0x29ff94;return _0x29ff94['map'](_0x15eec4=>{const _0x257591=_0x5f5d67,_0x326cb0={..._0x15eec4};return _0x19cd0c[_0x257591(0x1c1)](_0x2f083b=>{const _0x2e311a=_0x257591;_0x4d6890[_0x2e311a(0x214)](_0x326cb0[_0x2f083b],null)&&_0x326cb0[_0x2f083b]!==undefined&&(_0x326cb0[_0x2f083b]='\x27'+String(_0x326cb0[_0x2f083b]));}),_0x326cb0;});}['preprocessTextRow'](_0x67ba12,_0x2c8330,_0x4b0fd7){const _0x4e6a75=a0_0x226f06,_0x3be54e={'iyHoX':function(_0x185912,_0xa7fce1){return _0x185912!==_0xa7fce1;},'fXVMH':function(_0x1b0c29,_0x30fd3f){return _0x1b0c29+_0x30fd3f;},'qqnZp':function(_0x102eee,_0x387490){return _0x102eee===_0x387490;}};if(!_0x4b0fd7)return _0x67ba12;const _0x3e1200=[];_0x2c8330[_0x4e6a75(0x1c1)](_0x3a59cc=>{const _0x15d972=_0x4b0fd7[_0x3a59cc];_0x15d972&&_0x15d972['type']&&_0x15d972['type']['toLowerCase']()==='text'&&_0x3e1200['push'](_0x3a59cc);});if(_0x3be54e['qqnZp'](_0x3e1200['length'],0x0))return _0x67ba12;const _0x28ecc5={..._0x67ba12};return _0x3e1200[_0x4e6a75(0x1c1)](_0x5c6e42=>{const _0x2e9fd7=_0x4e6a75;_0x28ecc5[_0x5c6e42]!==null&&_0x3be54e[_0x2e9fd7(0x1e0)](_0x28ecc5[_0x5c6e42],undefined)&&(_0x28ecc5[_0x5c6e42]=_0x3be54e['fXVMH']('\x27',String(_0x28ecc5[_0x5c6e42])));}),_0x28ecc5;}}function a0_0x2643(_0x3b9b3f,_0x1f0674){_0x3b9b3f=_0x3b9b3f-0x1bd;const _0x2101d4=a0_0x2101();let _0x264327=_0x2101d4[_0x3b9b3f];if(a0_0x2643['xTIVgr']===undefined){var _0x3c199a=function(_0x475a3b){const _0xe2f818='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x26a1ac='',_0x3ef576='';for(let _0x54adcc=0x0,_0x485929,_0x23852a,_0x26d196=0x0;_0x23852a=_0x475a3b['charAt'](_0x26d196++);~_0x23852a&&(_0x485929=_0x54adcc%0x4?_0x485929*0x40+_0x23852a:_0x23852a,_0x54adcc++%0x4)?_0x26a1ac+=String['fromCharCode'](0xff&_0x485929>>(-0x2*_0x54adcc&0x6)):0x0){_0x23852a=_0xe2f818['indexOf'](_0x23852a);}for(let _0x553994=0x0,_0x8ffe76=_0x26a1ac['length'];_0x553994<_0x8ffe76;_0x553994++){_0x3ef576+='%'+('00'+_0x26a1ac['charCodeAt'](_0x553994)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ef576);};a0_0x2643['UuYhDO']=_0x3c199a,a0_0x2643['nDPpIk']={},a0_0x2643['xTIVgr']=!![];}const _0x435590=_0x2101d4[0x0],_0x35edd8=_0x3b9b3f+_0x435590,_0x5cc6c7=a0_0x2643['nDPpIk'][_0x35edd8];return!_0x5cc6c7?(_0x264327=a0_0x2643['UuYhDO'](_0x264327),a0_0x2643['nDPpIk'][_0x35edd8]=_0x264327):_0x264327=_0x5cc6c7,_0x264327;}module[a0_0x226f06(0x1ce)]=ExcelGenerator;
@@ -1 +1 @@
1
- function a0_0x4449(_0x215933,_0x70df82){_0x215933=_0x215933-0x13d;const _0x511cb1=a0_0x511c();let _0x4449b4=_0x511cb1[_0x215933];if(a0_0x4449['lQaxvZ']===undefined){var _0x2c9310=function(_0x5e065c){const _0x3ebacd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x49cf99='',_0x330a15='';for(let _0x182144=0x0,_0x238a78,_0x212c77,_0x5e5853=0x0;_0x212c77=_0x5e065c['charAt'](_0x5e5853++);~_0x212c77&&(_0x238a78=_0x182144%0x4?_0x238a78*0x40+_0x212c77:_0x212c77,_0x182144++%0x4)?_0x49cf99+=String['fromCharCode'](0xff&_0x238a78>>(-0x2*_0x182144&0x6)):0x0){_0x212c77=_0x3ebacd['indexOf'](_0x212c77);}for(let _0x3a144a=0x0,_0x48f460=_0x49cf99['length'];_0x3a144a<_0x48f460;_0x3a144a++){_0x330a15+='%'+('00'+_0x49cf99['charCodeAt'](_0x3a144a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x330a15);};a0_0x4449['VpgXYS']=_0x2c9310,a0_0x4449['dKsPJL']={},a0_0x4449['lQaxvZ']=!![];}const _0x5e9515=_0x511cb1[0x0],_0x43fb77=_0x215933+_0x5e9515,_0x265612=a0_0x4449['dKsPJL'][_0x43fb77];return!_0x265612?(_0x4449b4=a0_0x4449['VpgXYS'](_0x4449b4),a0_0x4449['dKsPJL'][_0x43fb77]=_0x4449b4):_0x4449b4=_0x265612,_0x4449b4;}const a0_0x4e0d33=a0_0x4449;(function(_0x58f214,_0xd5bce){const _0x1d3ca3=a0_0x4449,_0x5df2b7=_0x58f214();while(!![]){try{const _0x4746cc=-parseInt(_0x1d3ca3(0x159))/0x1*(parseInt(_0x1d3ca3(0x155))/0x2)+parseInt(_0x1d3ca3(0x14c))/0x3+-parseInt(_0x1d3ca3(0x14a))/0x4+parseInt(_0x1d3ca3(0x14e))/0x5+-parseInt(_0x1d3ca3(0x164))/0x6*(parseInt(_0x1d3ca3(0x168))/0x7)+parseInt(_0x1d3ca3(0x158))/0x8*(-parseInt(_0x1d3ca3(0x141))/0x9)+parseInt(_0x1d3ca3(0x15e))/0xa*(parseInt(_0x1d3ca3(0x150))/0xb);if(_0x4746cc===_0xd5bce)break;else _0x5df2b7['push'](_0x5df2b7['shift']());}catch(_0x163d2c){_0x5df2b7['push'](_0x5df2b7['shift']());}}}(a0_0x511c,0x27291));const ExcelJS=require(a0_0x4e0d33(0x154)),{logger}=require(a0_0x4e0d33(0x147));class ExcelParser{async[a0_0x4e0d33(0x160)](_0x2cad90){const _0x364145=a0_0x4e0d33,_0x1197fd={'Tphbv':function(_0x50e0af,_0x5b6d4c){return _0x50e0af+_0x5b6d4c;},'ScOYH':_0x364145(0x15b),'RJDGh':_0x364145(0x14f),'ZOGqy':'Failed\x20to\x20parse\x20Excel\x20file'};try{const _0x5c2160=new ExcelJS[(_0x364145(0x142))]();await _0x5c2160[_0x364145(0x13d)][_0x364145(0x166)](_0x2cad90);const _0x226e92=_0x5c2160['worksheets'][0x0];if(!_0x226e92)throw new Error(_0x1197fd['ScOYH']);const _0x2837b0=[];let _0x2db958=[];return _0x226e92['eachRow']((_0x36e31e,_0x2f8502)=>{const _0x44b90d=_0x364145,_0x19c31f={'EAvjs':function(_0x296756,_0x55305a){const _0x143744=a0_0x4449;return _0x1197fd[_0x143744(0x145)](_0x296756,_0x55305a);}},_0x5e72d1=_0x36e31e[_0x44b90d(0x148)];if(_0x2f8502===0x1)_0x2db958=_0x5e72d1['slice'](0x1)['map'](_0x537050=>this[_0x44b90d(0x14b)](_0x537050));else{const _0x107594={};_0x2db958[_0x44b90d(0x151)]((_0x2acfb5,_0x208658)=>{const _0x3ebb36=_0x44b90d,_0x424294=_0x5e72d1[_0x19c31f[_0x3ebb36(0x169)](_0x208658,0x1)];_0x107594[_0x2acfb5]=this[_0x3ebb36(0x144)](_0x424294);}),_0x2837b0['push'](_0x107594);}}),logger['info']({'event':_0x364145(0x167),'filePath':_0x2cad90,'totalRows':_0x2837b0[_0x364145(0x15d)],'headers':_0x2db958[_0x364145(0x15d)]},_0x364145(0x157)),{'headers':_0x2db958,'rows':_0x2837b0,'totalRows':_0x2837b0[_0x364145(0x15d)]};}catch(_0x49c897){logger['error']({'event':_0x1197fd['RJDGh'],'filePath':_0x2cad90,'error':_0x49c897['message']},_0x1197fd['ZOGqy']);throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x49c897['message']);}}[a0_0x4e0d33(0x14b)](_0x27b7df){const _0x4e44cb=a0_0x4e0d33,_0x19b871={'ykirh':function(_0x6ec530,_0xe2eb8d){return _0x6ec530===_0xe2eb8d;},'lMduh':_0x4e44cb(0x163)};if(_0x27b7df===null||_0x19b871[_0x4e44cb(0x161)](_0x27b7df,undefined))return'';let _0x37500f=String(_0x27b7df)[_0x4e44cb(0x15a)]();return _0x37500f=_0x37500f['replace'](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,'$1_$2')['replace'](/([A-Z]+)([A-Z][a-z])/g,_0x19b871[_0x4e44cb(0x152)])['toLowerCase'](),_0x37500f;}[a0_0x4e0d33(0x144)](_0xb0dc4f){const _0x3e35fe=a0_0x4e0d33,_0x10bd46={'TnHUE':function(_0x209b42,_0xdee1e0){return _0x209b42(_0xdee1e0);},'RRplF':'object','QpnGY':function(_0x2eb08e,_0x28361a){return _0x2eb08e===_0x28361a;},'TakgE':function(_0x2ce705,_0x255c1b){return _0x2ce705!==_0x255c1b;},'wTQca':'string'};if(_0xb0dc4f===null||_0xb0dc4f===undefined)return null;if(_0xb0dc4f instanceof Date){const _0x4189df=_0xb0dc4f[_0x3e35fe(0x14d)](),_0x2d7c3f=String(_0xb0dc4f[_0x3e35fe(0x162)]()+0x1)['padStart'](0x2,'0'),_0x2686ac=String(_0xb0dc4f['getDate']())[_0x3e35fe(0x13f)](0x2,'0');return _0x4189df+'-'+_0x2d7c3f+'-'+_0x2686ac;}if(typeof _0xb0dc4f===_0x3e35fe(0x143)){const _0x44cecf=_0xb0dc4f[_0x3e35fe(0x153)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x44cecf){const _0x3ce479=String(_0x44cecf[0x1])[_0x3e35fe(0x13f)](0x2,'0'),_0x46fd6b=_0x10bd46['TnHUE'](String,_0x44cecf[0x2])['padStart'](0x2,'0'),_0x358a4c=_0x44cecf[0x3];return _0x358a4c+'-'+_0x46fd6b+'-'+_0x3ce479;}}if(_0xb0dc4f&&typeof _0xb0dc4f===_0x10bd46[_0x3e35fe(0x15c)]&&_0xb0dc4f['richText'])return _0xb0dc4f['richText']['map'](_0x1dd30e=>_0x1dd30e[_0x3e35fe(0x140)])[_0x3e35fe(0x156)]('');if(_0xb0dc4f&&_0x10bd46['QpnGY'](typeof _0xb0dc4f,_0x10bd46[_0x3e35fe(0x15c)])&&_0x10bd46['TakgE'](_0xb0dc4f['result'],undefined))return this[_0x3e35fe(0x144)](_0xb0dc4f[_0x3e35fe(0x15f)]);if(typeof _0xb0dc4f===_0x10bd46[_0x3e35fe(0x146)])return _0xb0dc4f['trim']();return _0xb0dc4f;}['validateExcelStructure'](_0x37d357,_0x1b2dd5){const _0xa62c31=a0_0x4e0d33,_0x26d30b={'aUcIU':function(_0x215a3b,_0xd58801){return _0x215a3b===_0xd58801;}},_0xe51297=new Set(_0x37d357),_0x41a2a8=new Set(_0x1b2dd5),_0x402b51=_0x1b2dd5[_0xa62c31(0x149)](_0x1dff2d=>!_0xe51297[_0xa62c31(0x13e)](_0x1dff2d)),_0x5c71d2=_0x37d357[_0xa62c31(0x149)](_0x384141=>!_0x41a2a8[_0xa62c31(0x13e)](_0x384141)),_0x3bed5f=_0x26d30b[_0xa62c31(0x165)](_0x402b51[_0xa62c31(0x15d)],0x0);return{'valid':_0x3bed5f,'missingFields':_0x402b51,'extraFields':_0x5c71d2};}}function a0_0x511c(){const _0x1527d6=['D1rry2e','lI9SB2DNzxi','DMfSDwvZ','zMLSDgvY','nte1odq0tNjcA1Dy','BM9YBwfSAxPLsgvHzgvY','mZC5mtK3AgXfDMDH','z2v0rNvSBfLLyxi','mta5ntu2nwXmsNHrtG','zxHJzwXFCgfYC2vFzxjYB3i','mtG3A1rurwns','zM9YrwfJAa','Be1KDwG','Bwf0y2G','zxHJzwXQCW','mtu4Egncrvj3','AM9PBG','rxHJzwWGzMLSzsbWyxjZzwqGC3vJy2vZC2z1BgX5','ntq0oefKDu1PDq','oti4seT6BhLr','DhjPBq','tM8GD29YA3nOzwv0igzVDw5KigLUiev4y2vSigzPBgu','uLjWBey','BgvUz3rO','mJmZnteWAw5oENbz','CMvZDwX0','CgfYC2vfEgnLBezPBgu','EwTPCMG','z2v0tw9UDgG','jdfFjdi','otK5oteYAvvnDMrS','yvvJsvu','CMvHzezPBgu','zxHJzwXFCgfYC2vK','n0DlC2rhwG','ruf2ANm','EgXZEa','AgfZ','CgfKu3rHCNq','Dgv4Da','mJGXn1Hwtw5wDq','v29YA2jVB2S','C3rYAw5N','BM9YBwfSAxPLq2vSBfzHBhvL','vhbOyNy'];a0_0x511c=function(){return _0x1527d6;};return a0_0x511c();}module['exports']=new ExcelParser();
1
+ const a0_0x58d0a7=a0_0x411d;(function(_0x52d105,_0x5d8b42){const _0xc340d=a0_0x411d,_0x18b4e1=_0x52d105();while(!![]){try{const _0x4b45e5=-parseInt(_0xc340d(0xcb))/0x1+parseInt(_0xc340d(0xec))/0x2*(-parseInt(_0xc340d(0xc7))/0x3)+parseInt(_0xc340d(0xc5))/0x4+parseInt(_0xc340d(0xd0))/0x5+-parseInt(_0xc340d(0xdd))/0x6*(-parseInt(_0xc340d(0xc1))/0x7)+parseInt(_0xc340d(0xea))/0x8*(parseInt(_0xc340d(0xcd))/0x9)+-parseInt(_0xc340d(0xbf))/0xa;if(_0x4b45e5===_0x5d8b42)break;else _0x18b4e1['push'](_0x18b4e1['shift']());}catch(_0x51dea0){_0x18b4e1['push'](_0x18b4e1['shift']());}}}(a0_0x545c,0x7b820));function a0_0x545c(){const _0x563397=['odu3otbPzvf0yxq','jdfFjdi','mJHlsM1ywu0','DMfSDwvZ','CMLJAfrLEhq','EgXZEa','mJuZmZG3nLzZz0HWzG','z2v0rgf0zq','mtqXnMH3rLDXwa','DuXgtKi','z2v0rNvSBfLLyxi','vxbXwxi','ndC2ndK5vxDNu0Ll','wNbywNK','ovHlwuXOrq','CMvWBgfJzq','sK1yuKu','nJK1mJuWqufoquLt','tM8GD29YA3nOzwv0igzVDw5KigLUiev4y2vSigzPBgu','BwfW','zM9YrwfJAa','BgvUz3rO','CgfYC2vfEgnLBezPBgu','CgfKu3rHCNq','DLPuzfG','AM9PBG','AgfZ','C3rYAw5N','EgDSzhO','BwvZC2fNzq','nZm4nJi0AfruDu5P','zMLSDgvY','Bwf0y2G','yvvVvwK','zxHJzwXQCW','BM9YBwfSAxPLq2vSBfzHBhvL','zxHJzwXFCgfYC2vK','D29YA3nOzwv0CW','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu','BM9YBwfSAxPLsgvHzgvY','Aw5MBW','serQyNO','v29YA2jVB2S','mta1mtGZmNr5vvrQAq','Dgv4Da','mtCXoefUDxPTza','rxHJzwWGzMLSzsbWyxjZzwqGC3vJy2vZC2z1BgX5','BKLkv2S'];a0_0x545c=function(){return _0x563397;};return a0_0x545c();}function a0_0x411d(_0x2e9c76,_0x4f0c0e){_0x2e9c76=_0x2e9c76-0xbe;const _0x545c91=a0_0x545c();let _0x411d26=_0x545c91[_0x2e9c76];if(a0_0x411d['utiENL']===undefined){var _0x29d914=function(_0x2a7565){const _0x1605de='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x14a1ea='',_0x3ed54c='';for(let _0xd91a43=0x0,_0x2162b7,_0x4447e5,_0x3aed68=0x0;_0x4447e5=_0x2a7565['charAt'](_0x3aed68++);~_0x4447e5&&(_0x2162b7=_0xd91a43%0x4?_0x2162b7*0x40+_0x4447e5:_0x4447e5,_0xd91a43++%0x4)?_0x14a1ea+=String['fromCharCode'](0xff&_0x2162b7>>(-0x2*_0xd91a43&0x6)):0x0){_0x4447e5=_0x1605de['indexOf'](_0x4447e5);}for(let _0x100e07=0x0,_0x25c1bf=_0x14a1ea['length'];_0x100e07<_0x25c1bf;_0x100e07++){_0x3ed54c+='%'+('00'+_0x14a1ea['charCodeAt'](_0x100e07)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ed54c);};a0_0x411d['MkiPlk']=_0x29d914,a0_0x411d['zIFZEf']={},a0_0x411d['utiENL']=!![];}const _0x477138=_0x545c91[0x0],_0xc43667=_0x2e9c76+_0x477138,_0x2d4ac7=a0_0x411d['zIFZEf'][_0xc43667];return!_0x2d4ac7?(_0x411d26=a0_0x411d['MkiPlk'](_0x411d26),a0_0x411d['zIFZEf'][_0xc43667]=_0x411d26):_0x411d26=_0x2d4ac7,_0x411d26;}const ExcelJS=require(a0_0x58d0a7(0xe1)),{logger}=require('./logger');class ExcelParser{async[a0_0x58d0a7(0xd5)](_0x5c5b72){const _0x4afdc4=a0_0x58d0a7,_0x5d37d6={'JMXRE':function(_0x65b08a,_0x221f1b){return _0x65b08a===_0x221f1b;},'HDjbz':_0x4afdc4(0xed),'woCnU':'excel_parse_error'};try{const _0x634ded=new ExcelJS[(_0x4afdc4(0xe9))]();await _0x634ded[_0x4afdc4(0xc4)]['readFile'](_0x5c5b72);const _0x264940=_0x634ded[_0x4afdc4(0xe4)][0x0];if(!_0x264940)throw new Error(_0x4afdc4(0xd1));const _0x1aebc7=[];let _0x2293dc=[];return _0x264940['eachRow']((_0x5cb7e4,_0x4c479c)=>{const _0x46c380=_0x4afdc4,_0x241d53=_0x5cb7e4[_0x46c380(0xc2)];if(_0x5d37d6[_0x46c380(0xcf)](_0x4c479c,0x1))_0x2293dc=_0x241d53['slice'](0x1)[_0x46c380(0xd2)](_0x5f0b07=>this[_0x46c380(0xe6)](_0x5f0b07));else{const _0x3fd0c6={};_0x2293dc[_0x46c380(0xd3)]((_0x5c5e77,_0x55b9cc)=>{const _0x5cea78=_0x46c380,_0x15dd73=_0x241d53[_0x55b9cc+0x1];_0x3fd0c6[_0x5c5e77]=this[_0x5cea78(0xe2)](_0x15dd73);}),_0x1aebc7['push'](_0x3fd0c6);}}),logger[_0x4afdc4(0xe7)]({'event':_0x4afdc4(0xe3),'filePath':_0x5c5b72,'totalRows':_0x1aebc7['length'],'headers':_0x2293dc['length']},_0x5d37d6[_0x4afdc4(0xe8)]),{'headers':_0x2293dc,'rows':_0x1aebc7,'totalRows':_0x1aebc7[_0x4afdc4(0xd4)]};}catch(_0x2b0290){logger['error']({'event':_0x5d37d6['woCnU'],'filePath':_0x5c5b72,'error':_0x2b0290[_0x4afdc4(0xdc)]},_0x4afdc4(0xe5));throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x2b0290[_0x4afdc4(0xdc)]);}}['normalizeHeader'](_0x13a02a){const _0x5d2647=a0_0x58d0a7,_0x2525ed={'lZDMj':function(_0x18f586,_0x1d1eb4){return _0x18f586===_0x1d1eb4;},'oUGxS':'$1_$2'};if(_0x2525ed['lZDMj'](_0x13a02a,null)||_0x13a02a===undefined)return'';let _0x1e2d2e=String(_0x13a02a)['trim']();return _0x1e2d2e=_0x1e2d2e[_0x5d2647(0xce)](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,_0x2525ed['oUGxS'])['replace'](/([A-Z]+)([A-Z][a-z])/g,_0x5d2647(0xc0))['toLowerCase'](),_0x1e2d2e;}['normalizeCellValue'](_0x44ab93){const _0x56638e=a0_0x58d0a7,_0x8f9e7e={'UJUzv':function(_0x3f1fb9,_0x18efac){return _0x3f1fb9===_0x18efac;},'aUoUi':function(_0x11e1aa,_0x5f0840){return _0x11e1aa instanceof _0x5f0840;},'xgldz':function(_0xd5afda,_0x1cd409){return _0xd5afda(_0x1cd409);},'ZpXZy':function(_0xe4bceb,_0x1f0694){return _0xe4bceb===_0x1f0694;},'uLFNB':function(_0x2c1fda,_0x5a1dd6){return _0x2c1fda(_0x5a1dd6);},'vZTdX':'object','nIJWk':function(_0x48be90,_0x157b04){return _0x48be90!==_0x157b04;},'XdhPy':'string'};if(_0x44ab93===null||_0x8f9e7e['UJUzv'](_0x44ab93,undefined))return null;if(_0x8f9e7e[_0x56638e(0xe0)](_0x44ab93,Date)){const _0x3b6f5a=_0x44ab93[_0x56638e(0xc9)](),_0x5d2399=_0x8f9e7e['xgldz'](String,_0x44ab93['getMonth']()+0x1)[_0x56638e(0xd6)](0x2,'0'),_0x1d5c12=String(_0x44ab93[_0x56638e(0xc6)]())[_0x56638e(0xd6)](0x2,'0');return _0x3b6f5a+'-'+_0x5d2399+'-'+_0x1d5c12;}if(_0x8f9e7e['ZpXZy'](typeof _0x44ab93,_0x56638e(0xda))){const _0x299d31=_0x44ab93[_0x56638e(0xdf)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x299d31){const _0x1f18e2=_0x8f9e7e[_0x56638e(0xdb)](String,_0x299d31[0x1])['padStart'](0x2,'0'),_0x4088a3=_0x8f9e7e[_0x56638e(0xc8)](String,_0x299d31[0x2])[_0x56638e(0xd6)](0x2,'0'),_0x1603b0=_0x299d31[0x3];return _0x1603b0+'-'+_0x4088a3+'-'+_0x1f18e2;}}if(_0x44ab93&&_0x8f9e7e[_0x56638e(0xcc)](typeof _0x44ab93,_0x8f9e7e[_0x56638e(0xd7)])&&_0x44ab93[_0x56638e(0xc3)])return _0x44ab93['richText'][_0x56638e(0xd2)](_0x375c4c=>_0x375c4c[_0x56638e(0xeb)])[_0x56638e(0xd8)]('');if(_0x44ab93&&_0x8f9e7e['ZpXZy'](typeof _0x44ab93,'object')&&_0x8f9e7e[_0x56638e(0xbe)](_0x44ab93['result'],undefined))return this[_0x56638e(0xe2)](_0x44ab93['result']);if(typeof _0x44ab93===_0x8f9e7e['XdhPy'])return _0x44ab93['trim']();return _0x44ab93;}['validateExcelStructure'](_0x3148bc,_0x510e27){const _0x3cf79b=a0_0x58d0a7,_0x435063={'UpqYr':function(_0x470ba1,_0x5c8bdc){return _0x470ba1===_0x5c8bdc;}},_0x11c206=new Set(_0x3148bc),_0x4132c8=new Set(_0x510e27),_0x9f5f2d=_0x510e27[_0x3cf79b(0xde)](_0x52dfcd=>!_0x11c206['has'](_0x52dfcd)),_0x79280a=_0x3148bc['filter'](_0x1e5125=>!_0x4132c8[_0x3cf79b(0xd9)](_0x1e5125)),_0x5b32b8=_0x435063[_0x3cf79b(0xca)](_0x9f5f2d['length'],0x0);return{'valid':_0x5b32b8,'missingFields':_0x9f5f2d,'extraFields':_0x79280a};}}module['exports']=new ExcelParser();
@@ -1 +1 @@
1
- const a0_0xffae94=a0_0x512c;(function(_0x3b97a1,_0x225960){const _0x37b3dd=a0_0x512c,_0x5a4909=_0x3b97a1();while(!![]){try{const _0x2d9ff0=-parseInt(_0x37b3dd(0x113))/0x1*(parseInt(_0x37b3dd(0xd7))/0x2)+-parseInt(_0x37b3dd(0x100))/0x3*(parseInt(_0x37b3dd(0xf7))/0x4)+parseInt(_0x37b3dd(0xf1))/0x5*(parseInt(_0x37b3dd(0xdd))/0x6)+-parseInt(_0x37b3dd(0x152))/0x7*(parseInt(_0x37b3dd(0xff))/0x8)+-parseInt(_0x37b3dd(0xd8))/0x9+-parseInt(_0x37b3dd(0x126))/0xa*(parseInt(_0x37b3dd(0xfc))/0xb)+parseInt(_0x37b3dd(0x11a))/0xc;if(_0x2d9ff0===_0x225960)break;else _0x5a4909['push'](_0x5a4909['shift']());}catch(_0x2e9eaf){_0x5a4909['push'](_0x5a4909['shift']());}}}(a0_0x3571,0x8de12));const {v7:uuidv7}=require(a0_0xffae94(0xf2)),path=require('path'),fs=require('fs')['promises'],fsSync=require('fs'),redisHelper=require('../caching/redis-helper'),{logger,logError}=require(a0_0xffae94(0x150)),dbType=(process['env'][a0_0xffae94(0xe7)]||'postgresql')[a0_0xffae94(0xe9)]();let executeQuery;function a0_0x512c(_0x2dae22,_0x1f6000){_0x2dae22=_0x2dae22-0xcd;const _0x357144=a0_0x3571();let _0x512c8e=_0x357144[_0x2dae22];if(a0_0x512c['BupIsT']===undefined){var _0x22b77e=function(_0x5534ed){const _0x4bdf6f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5a302e='',_0x19e018='';for(let _0x468f69=0x0,_0x4a0955,_0x419950,_0x17eec8=0x0;_0x419950=_0x5534ed['charAt'](_0x17eec8++);~_0x419950&&(_0x4a0955=_0x468f69%0x4?_0x4a0955*0x40+_0x419950:_0x419950,_0x468f69++%0x4)?_0x5a302e+=String['fromCharCode'](0xff&_0x4a0955>>(-0x2*_0x468f69&0x6)):0x0){_0x419950=_0x4bdf6f['indexOf'](_0x419950);}for(let _0x4de128=0x0,_0x3878c1=_0x5a302e['length'];_0x4de128<_0x3878c1;_0x4de128++){_0x19e018+='%'+('00'+_0x5a302e['charCodeAt'](_0x4de128)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x19e018);};a0_0x512c['fBUZze']=_0x22b77e,a0_0x512c['eBTHzY']={},a0_0x512c['BupIsT']=!![];}const _0x2d5c14=_0x357144[0x0],_0x3dfd2a=_0x2dae22+_0x2d5c14,_0x17b26c=a0_0x512c['eBTHzY'][_0x3dfd2a];return!_0x17b26c?(_0x512c8e=a0_0x512c['fBUZze'](_0x512c8e),a0_0x512c['eBTHzY'][_0x3dfd2a]=_0x512c8e):_0x512c8e=_0x17b26c,_0x512c8e;}if(dbType===a0_0xffae94(0x12c)){const oracleDb=require('../database/db-oracle');executeQuery=(_0x4a564f,_0x7327d3)=>oracleDb[a0_0xffae94(0x122)](_0x4a564f,_0x7327d3);}else{if(dbType==='mysql'){const mysqlDb=require(a0_0xffae94(0x132));executeQuery=(_0x2cd424,_0x1b1259)=>mysqlDb['executeQuery'](_0x2cd424,_0x1b1259);}else executeQuery=require('../../core/utils/db')[a0_0xffae94(0x122)];}class ExportService{constructor(){const _0x450d15=a0_0xffae94;this[_0x450d15(0x139)]=null;}get['exportDir'](){const _0x3a6daf=a0_0xffae94,_0x40a342={'OqetI':_0x3a6daf(0x160),'tMHIT':function(_0x1e906e,_0x5721c0,_0x6adc6e,_0x3ac1b3){return _0x1e906e(_0x5721c0,_0x6adc6e,_0x3ac1b3);}};if(!this[_0x3a6daf(0x139)]){const _0x42cd35=process['env']['RESTFORGE_PROJECT_NAME']||'default';this['_exportDir']=process[_0x3a6daf(0x111)]['EXPORT_DIR']||path['join'](__dirname,_0x3a6daf(0xda)+_0x42cd35);try{!fsSync[_0x3a6daf(0x15e)](this[_0x3a6daf(0x139)])&&fsSync[_0x3a6daf(0x167)](this[_0x3a6daf(0x139)],{'recursive':!![]}),logger[_0x3a6daf(0xce)]({'event':'export_service_init','dir':this[_0x3a6daf(0x139)]},_0x40a342['OqetI']);}catch(_0x4da170){_0x40a342['tMHIT'](logError,_0x4da170,{'event':_0x3a6daf(0xd0)},'Failed\x20to\x20initialize\x20export\x20service');}}return this[_0x3a6daf(0x139)];}[a0_0xffae94(0xe3)](_0xc6e339,_0x4b3c1f=null){const _0x297074=a0_0xffae94,_0x40b378={'mkuCl':function(_0x1c710d,_0x4fe525){return _0x1c710d!==_0x4fe525;},'qgERG':_0x297074(0x11c),'actoV':'payload','EPzGY':function(_0x15e856,_0x5d3ceb){return _0x15e856===_0x5d3ceb;}};if(!_0xc6e339||_0x40b378['mkuCl'](typeof _0xc6e339,_0x40b378[_0x297074(0xe2)]))return _0xc6e339;const _0x32eb62=_0xc6e339['trim']();if(!_0x32eb62[_0x297074(0xfd)](_0x297074(0xef)))return _0x32eb62;const _0x3b96de=_0x32eb62[_0x297074(0x13e)](/^file:/,'')[_0x297074(0xcf)]();if(!_0x3b96de)throw new Error(_0x297074(0x14a));const _0x36b369=_0x4b3c1f||path[_0x297074(0x121)](process[_0x297074(0x151)](),_0x40b378[_0x297074(0x153)]),_0x47d779=path['resolve'](_0x36b369,_0x3b96de);logger[_0x297074(0xce)]({'event':'export_query_file_resolve','relativePath':_0x3b96de,'baseDir':_0x36b369,'absolutePath':_0x47d779},'Resolving\x20exportQuery\x20from\x20file:\x20'+_0x3b96de);if(!fsSync['existsSync'](_0x47d779))throw new Error(_0x297074(0x15b)+_0x47d779);try{const _0x3d83a3=fsSync['readFileSync'](_0x47d779,'utf8');if(!_0x3d83a3||!_0x3d83a3['trim']())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x47d779);return logger[_0x297074(0xce)]({'event':'export_query_file_loaded','file':_0x47d779,'queryLength':_0x3d83a3['length']},'Loaded\x20SQL\x20query\x20from\x20file\x20('+_0x3d83a3[_0x297074(0xeb)]+'\x20chars)'),_0x3d83a3['trim']();}catch(_0x5887c4){if(_0x40b378[_0x297074(0x161)](_0x5887c4['code'],'ENOENT'))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x47d779);throw new Error('Failed\x20to\x20read\x20export\x20query\x20file:\x20'+_0x5887c4[_0x297074(0x14b)]);}}['generateJobId'](){const _0x3e0127=a0_0xffae94,_0x9b471={'DsooM':function(_0x47ed44){return _0x47ed44();},'qMmYz':function(_0xdf97a6,_0x3e5bd9){return _0xdf97a6-_0x3e5bd9;},'URSbJ':function(_0x933032,_0x3cc04e){return _0x933032+_0x3cc04e;}},_0x4f1414=_0x3e0127(0xd6),_0x13eafe=Date[_0x3e0127(0x127)]()['toString'](0x24),_0x53f999=_0x9b471[_0x3e0127(0x11e)](uuidv7)['replace'](/-/g,'')['substring'](0x0,_0x9b471['qMmYz'](0xc,_0x13eafe[_0x3e0127(0xeb)])),_0xe5a760=_0x9b471[_0x3e0127(0x117)](_0x13eafe,_0x53f999)['substring'](0x0,0xc);let _0x3770c8='';for(let _0x5bb243=0x0;_0x5bb243<0xc;_0x5bb243++){_0xe5a760[_0x5bb243]?_0x3770c8+=_0xe5a760[_0x5bb243]:_0x3770c8+=_0x4f1414['charAt'](Math['floor'](Math['random']()*_0x4f1414['length']));}return _0x3770c8;}async['createJob'](_0x3e42b8){const _0x4bcbed=a0_0xffae94,_0x29bc29={'DMKnZ':function(_0x3a980a,_0x2f0aaf,_0x4efbd6,_0x281dad){return _0x3a980a(_0x2f0aaf,_0x4efbd6,_0x281dad);},'LAXfc':_0x4bcbed(0x11f),'aQTXA':'pending','jgtwY':'export_job_created','qeiNG':_0x4bcbed(0x14e)},_0x357139=this[_0x4bcbed(0x112)](),_0x3260e5={'job_id':_0x357139,'status':_0x29bc29[_0x4bcbed(0x10e)],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x3e42b8,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x357139,_0x3260e5),logger['info']({'event':_0x29bc29[_0x4bcbed(0x163)],'jobId':_0x357139,'params':_0x3e42b8},_0x29bc29[_0x4bcbed(0x13d)]),this[_0x4bcbed(0xed)](_0x357139,_0x3e42b8)['catch'](_0x4aeb53=>{const _0x2029d3=_0x4bcbed;_0x29bc29['DMKnZ'](logError,_0x4aeb53,{'event':_0x2029d3(0x168),'jobId':_0x357139},_0x29bc29[_0x2029d3(0x137)]);}),{'job_id':_0x357139,'status':_0x29bc29['aQTXA']};}async[a0_0xffae94(0xd4)](_0x42110f){const _0x1a972d=a0_0xffae94,_0x4a3f5f={'Hrjyc':'Job\x20not\x20found\x20or\x20expired','koYmS':_0x1a972d(0x125)},_0x253f52=await redisHelper['getJob'](_0x42110f);if(!_0x253f52)return{'success':![],'error':_0x4a3f5f['Hrjyc']};return{'success':!![],'data':{'job_id':_0x253f52[_0x1a972d(0x134)],'status':_0x253f52[_0x1a972d(0x15d)],'progress':_0x253f52['progress'],'total_rows':_0x253f52['total_rows'],'processed_rows':_0x253f52['processed_rows'],'file_url':_0x253f52['status']===_0x4a3f5f[_0x1a972d(0x10f)]?_0x1a972d(0x124)+_0x253f52[_0x1a972d(0x14c)]['moduleName']+'/'+_0x253f52[_0x1a972d(0x14c)][_0x1a972d(0x158)]+_0x1a972d(0xe6)+_0x42110f:null,'error':_0x253f52['error']||null,'created_at':_0x253f52['created_at'],'completed_at':_0x253f52['completed_at']||null}};}async[a0_0xffae94(0xed)](_0xea8709,_0x122fad){const _0x4b801e=a0_0xffae94,_0x27e826={'Uuxxc':'processing','RikBa':_0x4b801e(0xdc),'AoJFU':'Export\x20processing\x20started','iCvjM':'completed','WwrFm':'export_completed','smthW':function(_0x5c3060,_0x29f77d,_0x1fa523,_0x48ffa8){return _0x5c3060(_0x29f77d,_0x1fa523,_0x48ffa8);},'JpfLD':'export_failed','yQBmn':'failed'};try{await redisHelper['updateJob'](_0xea8709,{'status':_0x27e826['Uuxxc'],'started_at':new Date()[_0x4b801e(0x13a)]()}),logger[_0x4b801e(0xce)]({'event':_0x27e826[_0x4b801e(0x145)],'jobId':_0xea8709},_0x27e826[_0x4b801e(0x131)]);const _0x60d8dc=await this['fetchData'](_0x122fad);await redisHelper[_0x4b801e(0x11d)](_0xea8709,{'total_rows':_0x60d8dc['length']});const _0x2ff842=await this['generateExcel'](_0xea8709,_0x60d8dc,_0x122fad);await redisHelper[_0x4b801e(0x11d)](_0xea8709,{'status':_0x27e826['iCvjM'],'progress':0x64,'file_path':_0x2ff842,'completed_at':new Date()['toISOString']()}),logger['info']({'event':_0x27e826[_0x4b801e(0x135)],'jobId':_0xea8709,'rows':_0x60d8dc['length']},'Export\x20completed\x20successfully');}catch(_0x4039ab){_0x27e826['smthW'](logError,_0x4039ab,{'event':_0x27e826[_0x4b801e(0x130)],'jobId':_0xea8709},'Export\x20failed'),await redisHelper['updateJob'](_0xea8709,{'status':_0x27e826[_0x4b801e(0xd2)],'error':_0x4039ab[_0x4b801e(0x14b)],'failed_at':new Date()[_0x4b801e(0x13a)]()});}}async[a0_0xffae94(0x118)](_0x18c194){const _0x135242=a0_0xffae94,_0xcb2433={'gukRl':_0x135242(0x102),'BEedh':_0x135242(0xe4),'lFYuw':function(_0x35e448,_0x3aef7c){return _0x35e448===_0x3aef7c;},'MswvX':'all','rkCgJ':function(_0x48fc94,_0x7e17d5){return _0x48fc94>_0x7e17d5;},'riDYd':_0x135242(0x15a),'SCRYk':function(_0x3b11b9,_0x4b59bb){return _0x3b11b9>_0x4b59bb;},'msqFZ':_0x135242(0xd9),'iGVMN':'Failed\x20to\x20fetch\x20data'};try{const {tableName:_0x207439,columns:_0x342e0e,exportQuery:_0x66e7ee,where:_0x4a0e82,sort_columns:_0x40f8db}=_0x18c194;if(!_0x207439||!_0x342e0e||_0x342e0e['length']===0x0)throw new Error(_0x135242(0x166));const _0x8931f1=_0x207439[_0x135242(0x13e)](/\./g,'_')+_0xcb2433['gukRl'];let _0x43444e;if(_0x66e7ee&&_0x66e7ee['trim']()){let _0x3e683b=_0x66e7ee;_0x66e7ee[_0x135242(0xcf)]()[_0x135242(0xfd)](_0x135242(0xef))&&(_0x3e683b=this['resolveExportQuery'](_0x66e7ee)),_0x43444e=_0x135242(0x119)+_0x8931f1+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x3e683b+'\x0a)',logger['info']({'event':_0x135242(0xf0),'query':_0x3e683b['substring'](0x0,0x64)},_0x135242(0x146));}else{const _0x235e3d=_0x342e0e['map'](_0x3b59ff=>_0x135242(0xe8)+_0x3b59ff)[_0x135242(0x121)](',');_0x43444e=_0x135242(0x119)+_0x8931f1+_0x135242(0x12b)+_0x235e3d+_0x135242(0x11b)+_0x207439+'\x0a)',logger[_0x135242(0xce)]({'event':_0xcb2433[_0x135242(0xcd)],'tableName':_0x207439,'columnCount':_0x342e0e['length']},_0x135242(0x10c));}const _0x3a1cdc=!_0x342e0e||_0xcb2433[_0x135242(0x142)](_0x342e0e['length'],0x0)||_0x342e0e['length']===0x1&&(_0xcb2433['lFYuw'](_0x342e0e[0x0],'*')||_0x342e0e[0x0]['toLowerCase']()===_0xcb2433['MswvX']),_0xdbaf26=_0x3a1cdc?'*':_0x342e0e['join'](',\x20');_0x43444e+='\x0aSELECT\x20'+_0xdbaf26+_0x135242(0x128)+_0x8931f1;if(_0x4a0e82){const _0x533925=this[_0x135242(0x147)](_0x4a0e82);_0x533925&&(_0x43444e+='\x0aWHERE\x20'+_0x533925);}if(_0x40f8db&&_0xcb2433['rkCgJ'](_0x40f8db[_0x135242(0xeb)],0x0)){const _0x705a90=this[_0x135242(0x141)](_0x40f8db);_0x705a90&&(_0x43444e+=_0x135242(0x110)+_0x705a90);}logger['info']({'event':_0xcb2433['riDYd'],'query':_0x43444e[_0x135242(0x14f)](0x0,0xc8)},_0x135242(0x106));const _0x23868c=await executeQuery(_0x43444e);let _0x4d0923=_0x23868c;return _0xcb2433['lFYuw'](dbType,'oracle')&&_0x23868c&&_0xcb2433[_0x135242(0xd3)](_0x23868c['length'],0x0)&&(_0x4d0923=_0x23868c[_0x135242(0x108)](_0x808a52=>{const _0x25b7c9=_0x135242,_0x3cd275={};for(const [_0xe63565,_0x2e21c3]of Object['entries'](_0x808a52)){_0x3cd275[_0xe63565[_0x25b7c9(0xe9)]()]=_0x2e21c3;}return _0x3cd275;})),logger['info']({'event':'export_fetch_complete','rows':_0x4d0923['length']},_0xcb2433[_0x135242(0x12a)]),_0x4d0923;}catch(_0x188c70){logError(_0x188c70,{'event':_0x135242(0x120)},_0xcb2433[_0x135242(0x14d)]);throw _0x188c70;}}['sanitizeValue'](_0x375dbe){const _0x458310=a0_0xffae94,_0x2b8692={'sOmVr':function(_0x525c7a,_0xe39d2b){return _0x525c7a===_0xe39d2b;},'gEjBK':'string'};if(_0x2b8692['sOmVr'](typeof _0x375dbe,_0x2b8692['gEjBK']))return _0x375dbe[_0x458310(0x13e)](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')[_0x458310(0xcf)]();else{if(Array['isArray'](_0x375dbe))return _0x375dbe[_0x458310(0x108)](_0x1712d0=>this['sanitizeValue'](_0x1712d0));}return _0x375dbe;}[a0_0xffae94(0x147)](_0x5f3b00){const _0x13d401=a0_0xffae94,_0x583d35={'riKRQ':function(_0x185f3d,_0x316a12){return _0x185f3d===_0x316a12;},'PijMm':'invalid_condition','CaeLm':'string','yGItN':_0x13d401(0x157),'RljHl':'unknown_operator','FIkpj':_0x13d401(0xec),'GNQfl':'\x20AND\x20','pFjZB':function(_0x59b9a1,_0x14baed){return _0x59b9a1===_0x14baed;}};if(!_0x5f3b00||!_0x5f3b00[_0x13d401(0x140)]||_0x5f3b00[_0x13d401(0x140)]['length']===0x0)return'';const {logic:_0x177885,conditions:_0x385df0}=_0x5f3b00,_0x582f3e=_0x177885&&_0x177885[_0x13d401(0xe1)]()==='OR'?_0x583d35[_0x13d401(0x105)]:_0x583d35['GNQfl'],_0x1914f=_0x385df0[_0x13d401(0x108)](_0x561e18=>{const _0x260b5f=_0x13d401,{key:_0x3018bc,operator:_0x3c2569,value:_0x40ce9c,sensitive:_0x558d90}=_0x561e18;if(!_0x3018bc||!_0x3c2569)return logger['warn']({'event':_0x583d35[_0x260b5f(0xd1)],'condition':_0x561e18},_0x260b5f(0x143)),null;const _0x41910b=this[_0x260b5f(0x101)](_0x40ce9c),_0x150597=_0x558d90!==undefined?_0x558d90:!![];let _0x321e41=_0x3018bc,_0x1cb071=_0x41910b;!_0x150597&&(_0x321e41=_0x260b5f(0x136)+_0x3018bc+')',typeof _0x40ce9c===_0x583d35['CaeLm']&&(_0x1cb071=_0x40ce9c[_0x260b5f(0xe1)]()));const _0x357ebc=typeof _0x1cb071===_0x260b5f(0x11c)?'\x27'+_0x1cb071['replace'](/'/g,'\x27\x27')+'\x27':_0x1cb071;switch(_0x3c2569['toUpperCase']()){case'=':case'!=':case'<>':return _0x321e41+'\x20'+_0x3c2569+'\x20'+_0x357ebc;case'>':case'<':case'>=':case'<=':const _0xdcbbb1=typeof _0x41910b===_0x583d35['CaeLm']?'\x27'+_0x41910b['replace'](/'/g,'\x27\x27')+'\x27':_0x41910b;return _0x3018bc+'\x20'+_0x3c2569+'\x20'+_0xdcbbb1;case _0x583d35['yGItN']:case'NOT\x20LIKE':return _0x321e41+'\x20'+_0x3c2569+'\x20'+_0x357ebc;case'IN':if(Array[_0x260b5f(0x103)](_0x41910b)){let _0x285655;return!_0x150597?_0x285655=_0x41910b['map'](_0x158ad1=>{const _0x186bdd=_0x260b5f,_0x2dab53=_0x583d35[_0x186bdd(0xfe)](typeof _0x158ad1,_0x186bdd(0x11c))?_0x158ad1['toUpperCase']():_0x158ad1;return typeof _0x2dab53==='string'?'\x27'+_0x2dab53['replace'](/'/g,'\x27\x27')+'\x27':_0x2dab53;})['join'](',\x20'):_0x285655=_0x41910b['map'](_0x588b75=>typeof _0x588b75==='string'?'\x27'+_0x588b75['replace'](/'/g,'\x27\x27')+'\x27':_0x588b75)[_0x260b5f(0x121)](',\x20'),_0x321e41+_0x260b5f(0xdf)+_0x285655+')';}return _0x321e41+'\x20IN\x20('+_0x357ebc+')';case'IS\x20NULL':return _0x3018bc+'\x20IS\x20NULL';case'IS\x20NOT\x20NULL':return _0x3018bc+_0x260b5f(0x116);default:logger['warn']({'event':_0x583d35['RljHl'],'operator':_0x3c2569},_0x260b5f(0xe5));return _0x321e41+_0x260b5f(0x12f)+_0x357ebc;}})[_0x13d401(0x13f)](_0x59911c=>_0x59911c!==null);if(_0x583d35['pFjZB'](_0x1914f['length'],0x0))return'';return _0x1914f[_0x13d401(0x121)](_0x582f3e);}['buildOrderByClause'](_0x46ac33){const _0x37dcb5=a0_0xffae94,_0x306426={'rKIzU':'invalid_order','umynn':_0x37dcb5(0xf8),'goYbQ':_0x37dcb5(0xde)};if(!_0x46ac33||_0x46ac33[_0x37dcb5(0xeb)]===0x0)return'';const _0x796514=_0x46ac33[_0x37dcb5(0x108)](_0x7fa27=>{const _0x5b160f=_0x37dcb5,{column:_0x5244d8,direction:_0x4d5aad}=_0x7fa27;if(!_0x5244d8)return logger[_0x5b160f(0x12d)]({'event':_0x306426[_0x5b160f(0x154)],'item':_0x7fa27},'Skipping\x20invalid\x20order\x20clause'),null;const _0x36dec1=_0x4d5aad&&_0x4d5aad['toUpperCase']()===_0x306426['umynn']?_0x5b160f(0xf8):_0x306426['goYbQ'];return _0x5244d8+'\x20'+_0x36dec1;})['filter'](_0x54acc6=>_0x54acc6!==null);if(_0x796514['length']===0x0)return'';return _0x796514[_0x37dcb5(0x121)](',\x20');}async['generateExcel'](_0xc5527c,_0x3369ee,_0x5b8e16){const _0x372821=a0_0xffae94,_0x422f61={'AiZSy':function(_0x263e0c,_0x1e0d90){return _0x263e0c*_0x1e0d90;},'KbaJb':function(_0x10e5f8,_0x114211){return _0x10e5f8(_0x114211);},'sAMdZ':_0x372821(0x12e),'TVfMr':'excel_columns_from_request','ShgQp':_0x372821(0xf3),'TOayz':_0x372821(0x156),'ytTqi':'excel_columns_from_config'},_0x21dd2a=_0x422f61['KbaJb'](require,_0x422f61[_0x372821(0x15c)]),_0x480671=new _0x21dd2a(),_0x4c818a=_0x5b8e16['filename']?_0x5b8e16['filename']+'-'+_0xc5527c:_0x372821(0x129)+_0xc5527c,_0x4f1ecf=path[_0x372821(0x121)](this[_0x372821(0xdb)],_0x4c818a+'.xlsx');let _0x29b701=_0x5b8e16[_0x372821(0x13c)];const _0x4ef4a7=_0x29b701&&_0x29b701['length']===0x1&&(_0x29b701[0x0]==='*'||_0x29b701[0x0]['toLowerCase']()===_0x372821(0xea));if(_0x3369ee['length']>0x0){const _0x49371c=Object[_0x372821(0xfa)](_0x3369ee[0x0]);if(_0x4ef4a7)_0x29b701=_0x49371c,logger['info']({'event':_0x372821(0x10d),'columns':_0x29b701},'Using\x20all\x20'+_0x29b701['length']+'\x20columns\x20(wildcard\x20requested)');else{if(_0x29b701&&_0x29b701['length']>0x0){const _0x53f6ef=_0x29b701['filter'](_0x468e8d=>_0x49371c[_0x372821(0xf6)](_0x468e8d));_0x53f6ef[_0x372821(0xeb)]>0x0?(_0x29b701=_0x53f6ef,logger[_0x372821(0xce)]({'event':_0x422f61['TVfMr'],'requestedColumns':_0x5b8e16[_0x372821(0x13c)],'validColumns':_0x29b701},_0x372821(0xf9)+_0x29b701['length']+_0x372821(0x13b))):(_0x29b701=_0x49371c,logger['warn']({'event':_0x422f61[_0x372821(0xf5)],'requestedColumns':_0x5b8e16['columns'],'availableColumns':_0x49371c},_0x372821(0x148)+_0x49371c['length']+_0x372821(0x159)));}else _0x29b701=_0x49371c,logger['info']({'event':_0x422f61[_0x372821(0x169)],'columns':_0x29b701},'Using\x20'+_0x29b701[_0x372821(0xeb)]+'\x20columns\x20from\x20query\x20result');}}else logger['info']({'event':_0x422f61['ytTqi'],'columns':_0x29b701},_0x372821(0xf9)+(_0x29b701?.[_0x372821(0xeb)]||0x0)+_0x372821(0x114));return await _0x480671['generate']({'data':_0x3369ee,'columns':_0x29b701,'columnFormats':_0x5b8e16[_0x372821(0x107)]||null,'fieldLabels':_0x5b8e16['fieldLabels']||null,'filePath':_0x4f1ecf,'onProgress':async _0x24c4a0=>{const _0x4a8c78=_0x372821;await redisHelper[_0x4a8c78(0x11d)](_0xc5527c,{'progress':Math[_0x4a8c78(0x155)](_0x24c4a0),'processed_rows':Math[_0x4a8c78(0x155)](_0x422f61[_0x4a8c78(0x133)](_0x24c4a0/0x64,_0x3369ee['length']))});}}),_0x4f1ecf;}async[a0_0xffae94(0x138)](_0x371fcf){const _0x4c58ea=a0_0xffae94,_0x43bc2e={'laMmC':function(_0x10d577,_0x25ebab,_0x2f314b,_0xd15b80){return _0x10d577(_0x25ebab,_0x2f314b,_0xd15b80);},'CudYt':_0x4c58ea(0x16b)},_0x5e7d32=await redisHelper[_0x4c58ea(0xfb)](_0x371fcf);if(!_0x5e7d32||_0x5e7d32[_0x4c58ea(0x15d)]!=='completed')return null;try{return await fs[_0x4c58ea(0x162)](_0x5e7d32[_0x4c58ea(0xf4)]),_0x5e7d32[_0x4c58ea(0xf4)];}catch(_0x32184b){return _0x43bc2e[_0x4c58ea(0x149)](logError,_0x32184b,{'event':_0x43bc2e[_0x4c58ea(0x115)],'jobId':_0x371fcf,'path':_0x5e7d32[_0x4c58ea(0xf4)]},'Export\x20file\x20not\x20found'),null;}}async['cleanup'](){const _0x58cb95=a0_0xffae94,_0x371500={'bsrGF':'export_cleanup_start','oZKKy':_0x58cb95(0xee),'UiGHE':_0x58cb95(0x165),'OUbjk':_0x58cb95(0xd5),'TPQZW':_0x58cb95(0x123)};logger[_0x58cb95(0xce)]({'event':_0x371500['bsrGF']},_0x371500[_0x58cb95(0x164)]);const _0x209e63=await redisHelper[_0x58cb95(0x10a)]();let _0x5bdb61=0x0;for(const _0x3f67f5 of _0x209e63){const _0x4b1b4d=new Date(_0x3f67f5[_0x58cb95(0x15f)]),_0x4ad7f7=new Date(),_0x3acdaa=(_0x4ad7f7-_0x4b1b4d)/(0x3e8*0x3c*0x3c);if(_0x3acdaa>0x1){if(_0x3f67f5['file_path'])try{await fs[_0x58cb95(0x10b)](_0x3f67f5[_0x58cb95(0xf4)]),logger[_0x58cb95(0xce)]({'event':_0x58cb95(0x144),'path':_0x3f67f5['file_path']},_0x371500[_0x58cb95(0x109)]);}catch(_0x39184a){logger['warn']({'event':_0x371500[_0x58cb95(0x16a)],'path':_0x3f67f5['file_path'],'error':_0x39184a['message']},_0x58cb95(0xe0));}await redisHelper['deleteJob'](_0x3f67f5[_0x58cb95(0x134)]),_0x5bdb61++;}}return logger['info']({'event':_0x371500['TPQZW'],'deleted':_0x5bdb61},_0x58cb95(0x104)),_0x5bdb61;}}module['exports']=new ExportService();function a0_0x3571(){const _0x518452=['CwvPtKC','CMvWBgfJzq','zMLSDgvY','y29UzgL0Aw9UCW','yNvPBgrpCMrLCKj5q2XHDxnL','BezzDxC','u2TPChbPBMCGAw52ywXPzcbJB25KAxrPB24','zxHWB3j0x2zPBgvFzgvSzxrLza','uMLRqMe','vxnPBMCGy3vZDg9Tigv4Cg9YDff1zxj5','yNvPBgrxAgvYzunSyxvZzq','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','BgfnBum','sw52ywXPzcbMAwXLoIbYzwzLCMvUy2uGlsbWyxrOigLZigvTChr5','BwvZC2fNzq','CgfYyw1Z','AuDwtu4','rxHWB3j0igPVyIbJCMvHDgvK','C3vIC3rYAw5N','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','y3DK','mZKYvhbsEhvr','ywn0B1y','CKTjELu','CM91BMq','zxHJzwXFy29SDw1UC19MCM9Tx3f1zxj5x3jLC3vSDa','teLlrq','zw5KCg9PBNroyw1L','ignVBhvTBNm','zxHWB3j0x2zLDgnOx3n0yxj0','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','C0fnzfO','C3rHDhvZ','zxHPC3rZu3LUyW','y3jLyxrLzf9HDa','rxHWB3j0ihnLCNzPy2uGAw5PDgLHBgL6zwq','rvb6r1K','ywnJzxnZ','AMD0D1K','B1Pls3K','rxHWB3j0igzPBguGzgvSzxrLza','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','BwTKAxjtEw5J','zxHWB3j0x3bYB2nLC3nFzxjYB3i','ve9HExO','t1vIAMS','zxHWB3j0x2zPBgvFBM90x2zVDw5K','qKvLzgG','Aw5MBW','DhjPBq','zxHWB3j0x3nLCNzPy2vFAw5PDf9LCNjVCG','ugLQtw0','EvfcBw4','u0nswwS','z2v0sM9Iu3rHDhvZ','zxHWB3j0x2zPBgvFzgvSzxrLx2vYCM9Y','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','mNHlzLPOCW','mte3nJCWnu9nuujnAG','rgf0ysbMzxrJAgvKihn1y2nLC3nMDwXSEq','lI4VlI4VzxHWB3j0CY8','zxHWB3j0rgLY','zxHWB3j0x3bYB2nLC3nPBMDFC3rHCNq','nMf0tvbpqq','qvnd','ieLoicG','rMfPBgvKihrVigrLBgv0zsbLEhbVCNqGzMLSzq','Dg9vChbLCKnHC2u','CwDfuKC','CMvZB2X2zuv4Cg9YDff1zxj5','zxHWB3j0x3vZAw5Nx2f1Dg9FCxvLCNK','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','rejFvfLqrq','cIaGicaGicaG','Dg9mB3DLCKnHC2u','ywXS','BgvUz3rO','ie9sia','ChjVy2vZC0PVyG','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','zMLSztO','zxHWB3j0x3vZAw5Nx2n1C3rVBv9XDwvYEq','mZK0ndy5nxvqAgf6qG','DxvPza','zxHJzwXFy29SDw1UC19MywXSyMfJAW','zMLSzv9WyxrO','u2HNuxa','Aw5JBhvKzxm','nZCXmJuYzeTrrvLZ','revtqW','vxnPBMCG','A2v5CW','z2v0sM9I','mta0mtDPwLj3tKy','C3rHCNrZv2L0Aa','CMLluLe','otG2mtzoyKvzuve','ovPLCK5AwG','C2fUAxrPEMvwywX1zq','x2rHDge','AxnbCNjHEq','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','rKLRCgO','rMv0y2HPBMCGzgf0ysbMCM9TigrHDgfIyxnL','y29SDw1UrM9YBwf0CW','BwfW','vwLhseu','z2v0qwXSsM9ICW','Dw5SAw5R','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','zxHJzwXFy29SDw1UC19ZzwXLy3rFywXS','yvfuwee','A29zBvm','cK9srevsiejzia','zw52','z2vUzxjHDgvkB2jjza','nZa4nZLqzMTVAMS','ignVBhvTBNmGzNjVBsbJB25MAwCGkg5VigrHDgeP','q3vKwxq','ieLtie5pvcbovuXm','vvjtyKO','zMv0y2HeyxrH','v0Lusca','mJuZnJCXmJrvBvbgr2S','cIaGicbguK9nia','C3rYAw5N','DxbKyxrLsM9I','rhnVB00','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','zxHWB3j0x2zLDgnOx2vYCM9Y','AM9PBG','zxHLy3v0zvf1zxj5','zxHWB3j0x2nSzwfUDxbFy29TCgXLDgu','l2fWAs8','y29TCgXLDgvK','odK5mhzkBvPXqG','BM93','cKzst00G','zxHWB3j0lq','BxnXrLO','iefticGkicaGifnftevdvca','B3jHy2XL','D2fYBG','lI9LEgnLBc1Nzw5LCMf0B3i','id0G','sNbMteq','qw9krLu','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','qwLAu3K','AM9Ix2LK','v3DYrM0','vvbqrviO','tefyzMm','z2v0rMLSzvbHDgG','x2v4Cg9YDerPCG','Dg9ju09tDhjPBMC','ignVBhvTBNmGzNjVBsbYzxf1zxn0','y29SDw1UCW'];a0_0x3571=function(){return _0x518452;};return a0_0x3571();}
1
+ const a0_0x5cbb4a=a0_0x2c03;(function(_0x3bd5fb,_0x5ef304){const _0x5eeb29=a0_0x2c03,_0x1a5c1c=_0x3bd5fb();while(!![]){try{const _0x4838d6=parseInt(_0x5eeb29(0x1d1))/0x1+-parseInt(_0x5eeb29(0x20c))/0x2+parseInt(_0x5eeb29(0x1dc))/0x3+-parseInt(_0x5eeb29(0x1a5))/0x4+parseInt(_0x5eeb29(0x1ff))/0x5*(parseInt(_0x5eeb29(0x21c))/0x6)+parseInt(_0x5eeb29(0x23c))/0x7*(parseInt(_0x5eeb29(0x228))/0x8)+-parseInt(_0x5eeb29(0x1a8))/0x9;if(_0x4838d6===_0x5ef304)break;else _0x1a5c1c['push'](_0x1a5c1c['shift']());}catch(_0x151727){_0x1a5c1c['push'](_0x1a5c1c['shift']());}}}(a0_0x39df,0xa285d));function a0_0x2c03(_0x3558d4,_0x47c945){_0x3558d4=_0x3558d4-0x199;const _0x39df52=a0_0x39df();let _0x2c035d=_0x39df52[_0x3558d4];if(a0_0x2c03['WRRKrN']===undefined){var _0x1bd277=function(_0x1b872c){const _0x2e1611='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x25fe2e='',_0x41615c='';for(let _0x42c815=0x0,_0x5c9cfd,_0x25422d,_0x49313c=0x0;_0x25422d=_0x1b872c['charAt'](_0x49313c++);~_0x25422d&&(_0x5c9cfd=_0x42c815%0x4?_0x5c9cfd*0x40+_0x25422d:_0x25422d,_0x42c815++%0x4)?_0x25fe2e+=String['fromCharCode'](0xff&_0x5c9cfd>>(-0x2*_0x42c815&0x6)):0x0){_0x25422d=_0x2e1611['indexOf'](_0x25422d);}for(let _0x1a79ea=0x0,_0x54c3f2=_0x25fe2e['length'];_0x1a79ea<_0x54c3f2;_0x1a79ea++){_0x41615c+='%'+('00'+_0x25fe2e['charCodeAt'](_0x1a79ea)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x41615c);};a0_0x2c03['Ekzdeh']=_0x1bd277,a0_0x2c03['dNDisF']={},a0_0x2c03['WRRKrN']=!![];}const _0xd6dac9=_0x39df52[0x0],_0x3aa337=_0x3558d4+_0xd6dac9,_0x50f0ce=a0_0x2c03['dNDisF'][_0x3aa337];return!_0x50f0ce?(_0x2c035d=a0_0x2c03['Ekzdeh'](_0x2c035d),a0_0x2c03['dNDisF'][_0x3aa337]=_0x2c035d):_0x2c035d=_0x50f0ce,_0x2c035d;}const {v7:uuidv7}=require(a0_0x5cbb4a(0x1e6)),path=require(a0_0x5cbb4a(0x1f7)),fs=require('fs')[a0_0x5cbb4a(0x1fb)],fsSync=require('fs'),redisHelper=require(a0_0x5cbb4a(0x1e2)),{logger,logError}=require(a0_0x5cbb4a(0x1be)),dbType=(process[a0_0x5cbb4a(0x1cf)]['DB_TYPE']||'postgresql')[a0_0x5cbb4a(0x1a1)]();let executeQuery;if(dbType==='oracle'){const oracleDb=require(a0_0x5cbb4a(0x1b0));executeQuery=(_0x3cdfe4,_0x4b738e)=>oracleDb['executeQuery'](_0x3cdfe4,_0x4b738e);}else{if(dbType===a0_0x5cbb4a(0x211)){const mysqlDb=require(a0_0x5cbb4a(0x1a7));executeQuery=(_0x4af2e7,_0x389bd1)=>mysqlDb['executeQuery'](_0x4af2e7,_0x389bd1);}else executeQuery=require(a0_0x5cbb4a(0x1cd))[a0_0x5cbb4a(0x22b)];}class ExportService{constructor(){const _0x2d32bf=a0_0x5cbb4a;this[_0x2d32bf(0x209)]=null;}get[a0_0x5cbb4a(0x204)](){const _0x4e99f9=a0_0x5cbb4a,_0x99fe46={'hgOtf':_0x4e99f9(0x226),'XUwrW':function(_0x1814e1,_0x252e1b,_0x4e7b24,_0x486ce2){return _0x1814e1(_0x252e1b,_0x4e7b24,_0x486ce2);},'LTiYL':'Failed\x20to\x20initialize\x20export\x20service'};if(!this['_exportDir']){const _0x5350a3=process['env']['RESTFORGE_PROJECT_NAME']||_0x99fe46['hgOtf'];this['_exportDir']=process['env'][_0x4e99f9(0x217)]||path['join'](__dirname,_0x4e99f9(0x1ef)+_0x5350a3);try{!fsSync['existsSync'](this[_0x4e99f9(0x209)])&&fsSync['mkdirSync'](this[_0x4e99f9(0x209)],{'recursive':!![]}),logger[_0x4e99f9(0x1b2)]({'event':_0x4e99f9(0x1a2),'dir':this['_exportDir']},_0x4e99f9(0x205));}catch(_0x1f9885){_0x99fe46[_0x4e99f9(0x1c1)](logError,_0x1f9885,{'event':_0x4e99f9(0x1e4)},_0x99fe46[_0x4e99f9(0x199)]);}}return this['_exportDir'];}['resolveExportQuery'](_0x38e97f,_0x3d0124=null){const _0x3ca6df=a0_0x5cbb4a,_0x273217={'AbwKE':'string','BXCnP':_0x3ca6df(0x20e),'XXkGQ':_0x3ca6df(0x238),'MSswu':'utf8','LtUWa':_0x3ca6df(0x1b8),'Ldlbr':_0x3ca6df(0x1b3)};if(!_0x38e97f||typeof _0x38e97f!==_0x273217[_0x3ca6df(0x21f)])return _0x38e97f;const _0x5ae9ff=_0x38e97f['trim']();if(!_0x5ae9ff['startsWith'](_0x273217['BXCnP']))return _0x5ae9ff;const _0x2cf15d=_0x5ae9ff[_0x3ca6df(0x1fc)](/^file:/,'')['trim']();if(!_0x2cf15d)throw new Error(_0x3ca6df(0x206));const _0x356e8a=_0x3d0124||path['join'](process['cwd'](),'payload'),_0x56269e=path['resolve'](_0x356e8a,_0x2cf15d);logger['info']({'event':_0x273217['XXkGQ'],'relativePath':_0x2cf15d,'baseDir':_0x356e8a,'absolutePath':_0x56269e},_0x3ca6df(0x20b)+_0x2cf15d);if(!fsSync['existsSync'](_0x56269e))throw new Error(_0x3ca6df(0x1f4)+_0x56269e);try{const _0x238eb6=fsSync['readFileSync'](_0x56269e,_0x273217[_0x3ca6df(0x1e9)]);if(!_0x238eb6||!_0x238eb6['trim']())throw new Error(_0x3ca6df(0x1ac)+_0x56269e);return logger['info']({'event':_0x273217[_0x3ca6df(0x224)],'file':_0x56269e,'queryLength':_0x238eb6['length']},'Loaded\x20SQL\x20query\x20from\x20file\x20('+_0x238eb6['length']+'\x20chars)'),_0x238eb6[_0x3ca6df(0x23a)]();}catch(_0x21697b){if(_0x21697b['code']===_0x273217['Ldlbr'])throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x56269e);throw new Error('Failed\x20to\x20read\x20export\x20query\x20file:\x20'+_0x21697b[_0x3ca6df(0x21b)]);}}['generateJobId'](){const _0x3c1977=a0_0x5cbb4a,_0x250cbe={'BJKwX':function(_0x5d5529){return _0x5d5529();},'ZKkxS':function(_0x48edd3,_0x1ef350){return _0x48edd3+_0x1ef350;},'wLnon':function(_0x3c091e,_0xbcfe08){return _0x3c091e<_0xbcfe08;}},_0x50d7b6='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',_0x496e2a=Date[_0x3c1977(0x1b1)]()['toString'](0x24),_0x530ebe=_0x250cbe[_0x3c1977(0x221)](uuidv7)[_0x3c1977(0x1fc)](/-/g,'')['substring'](0x0,0xc-_0x496e2a['length']),_0x3d3521=_0x250cbe[_0x3c1977(0x1d4)](_0x496e2a,_0x530ebe)[_0x3c1977(0x208)](0x0,0xc);let _0x31c210='';for(let _0xb231a8=0x0;_0x250cbe[_0x3c1977(0x1a0)](_0xb231a8,0xc);_0xb231a8++){_0x3d3521[_0xb231a8]?_0x31c210+=_0x3d3521[_0xb231a8]:_0x31c210+=_0x50d7b6['charAt'](Math['floor'](Math['random']()*_0x50d7b6['length']));}return _0x31c210;}async[a0_0x5cbb4a(0x1f6)](_0x5697f0){const _0xf01734=a0_0x5cbb4a,_0x56e49f={'UgzEv':function(_0x253288,_0x3b6732,_0x2513bb,_0x5cba55){return _0x253288(_0x3b6732,_0x2513bb,_0x5cba55);},'XiEzz':_0xf01734(0x1ed)},_0x5b738a=this[_0xf01734(0x1c6)](),_0x439b58={'job_id':_0x5b738a,'status':'pending','progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x5697f0,'total_rows':0x0,'processed_rows':0x0};return await redisHelper[_0xf01734(0x19a)](_0x5b738a,_0x439b58),logger[_0xf01734(0x1b2)]({'event':_0xf01734(0x22e),'jobId':_0x5b738a,'params':_0x5697f0},'Export\x20job\x20created'),this['processJob'](_0x5b738a,_0x5697f0)['catch'](_0x116e5c=>{const _0x5bd102=_0xf01734;_0x56e49f['UgzEv'](logError,_0x116e5c,{'event':_0x5bd102(0x1ee),'jobId':_0x5b738a},_0x56e49f['XiEzz']);}),{'job_id':_0x5b738a,'status':'pending'};}async['getJobStatus'](_0x444cbb){const _0x451a82=a0_0x5cbb4a,_0x1f7f73={'qQbpW':'Job\x20not\x20found\x20or\x20expired','cLKKl':function(_0x41a5a8,_0x13539b){return _0x41a5a8===_0x13539b;},'xCfHC':_0x451a82(0x1a9)},_0x1fefc7=await redisHelper[_0x451a82(0x1e1)](_0x444cbb);if(!_0x1fefc7)return{'success':![],'error':_0x1f7f73[_0x451a82(0x1c2)]};return{'success':!![],'data':{'job_id':_0x1fefc7['job_id'],'status':_0x1fefc7[_0x451a82(0x1b9)],'progress':_0x1fefc7[_0x451a82(0x1f1)],'total_rows':_0x1fefc7['total_rows'],'processed_rows':_0x1fefc7['processed_rows'],'file_url':_0x1f7f73[_0x451a82(0x223)](_0x1fefc7['status'],_0x1f7f73['xCfHC'])?_0x451a82(0x236)+_0x1fefc7['params']['moduleName']+'/'+_0x1fefc7['params'][_0x451a82(0x1e5)]+_0x451a82(0x1c3)+_0x444cbb:null,'error':_0x1fefc7[_0x451a82(0x1e3)]||null,'created_at':_0x1fefc7[_0x451a82(0x239)],'completed_at':_0x1fefc7[_0x451a82(0x1b5)]||null}};}async['processJob'](_0x52765d,_0x3b1db3){const _0x4c4c10=a0_0x5cbb4a,_0x4b3398={'aAGCr':_0x4c4c10(0x222),'BKcIN':_0x4c4c10(0x235),'IVMXY':_0x4c4c10(0x1b6),'nhTNd':'export_failed'};try{await redisHelper['updateJob'](_0x52765d,{'status':_0x4c4c10(0x233),'started_at':new Date()['toISOString']()}),logger['info']({'event':_0x4b3398['aAGCr'],'jobId':_0x52765d},_0x4b3398['BKcIN']);const _0x57469b=await this[_0x4c4c10(0x22d)](_0x3b1db3);await redisHelper[_0x4c4c10(0x1d7)](_0x52765d,{'total_rows':_0x57469b['length']});const _0x41c294=await this[_0x4c4c10(0x210)](_0x52765d,_0x57469b,_0x3b1db3);await redisHelper['updateJob'](_0x52765d,{'status':'completed','progress':0x64,'file_path':_0x41c294,'completed_at':new Date()[_0x4c4c10(0x1d6)]()}),logger[_0x4c4c10(0x1b2)]({'event':_0x4c4c10(0x1cb),'jobId':_0x52765d,'rows':_0x57469b[_0x4c4c10(0x1e0)]},_0x4b3398[_0x4c4c10(0x231)]);}catch(_0x4fa26e){logError(_0x4fa26e,{'event':_0x4b3398['nhTNd'],'jobId':_0x52765d},'Export\x20failed'),await redisHelper['updateJob'](_0x52765d,{'status':_0x4c4c10(0x220),'error':_0x4fa26e[_0x4c4c10(0x21b)],'failed_at':new Date()[_0x4c4c10(0x1d6)]()});}}async['fetchData'](_0xfab6a7){const _0x3119cc=a0_0x5cbb4a,_0x30e811={'rEokC':function(_0x3c340c,_0x3da733){return _0x3c340c||_0x3da733;},'XscRt':'export_using_custom_query','wjOeP':'Using\x20custom\x20exportQuery','uCBXz':'export_using_auto_query','TuZTx':_0x3119cc(0x23b),'ShOAF':function(_0x5eae11,_0x34e739){return _0x5eae11===_0x34e739;},'VzwUG':function(_0x1a3e7e,_0x3d0d1a){return _0x1a3e7e===_0x3d0d1a;},'kxokN':'all','NNMyN':function(_0x548f71,_0x190ec2){return _0x548f71>_0x190ec2;},'ZBDAe':function(_0x2a735c,_0x1e608c){return _0x2a735c(_0x1e608c);},'DYANP':'oracle','fQxeT':'export_fetch_complete','zXkSO':_0x3119cc(0x1bf)};try{const {tableName:_0x3815cb,columns:_0x11240b,exportQuery:_0x47c174,where:_0x4f395d,sort_columns:_0xcf9a4b}=_0xfab6a7;if(_0x30e811['rEokC'](!_0x3815cb,!_0x11240b)||_0x11240b[_0x3119cc(0x1e0)]===0x0)throw new Error(_0x3119cc(0x1e7));const _0x12a8ab=_0x3815cb['replace'](/\./g,'_')+_0x3119cc(0x218);let _0x203700;if(_0x47c174&&_0x47c174['trim']()){let _0x3cfea8=_0x47c174;_0x47c174[_0x3119cc(0x23a)]()['startsWith'](_0x3119cc(0x20e))&&(_0x3cfea8=this['resolveExportQuery'](_0x47c174)),_0x203700=_0x3119cc(0x1f5)+_0x12a8ab+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x3cfea8+'\x0a)',logger[_0x3119cc(0x1b2)]({'event':_0x30e811['XscRt'],'query':_0x3cfea8[_0x3119cc(0x208)](0x0,0x64)},_0x30e811[_0x3119cc(0x1c5)]);}else{const _0x5db8d8=_0x11240b['map'](_0x1d4f0c=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x1d4f0c)['join'](',');_0x203700=_0x3119cc(0x1f5)+_0x12a8ab+_0x3119cc(0x22a)+_0x5db8d8+_0x3119cc(0x213)+_0x3815cb+'\x0a)',logger[_0x3119cc(0x1b2)]({'event':_0x30e811[_0x3119cc(0x1f3)],'tableName':_0x3815cb,'columnCount':_0x11240b['length']},_0x30e811['TuZTx']);}const _0x334874=!_0x11240b||_0x11240b[_0x3119cc(0x1e0)]===0x0||_0x11240b['length']===0x1&&(_0x30e811['ShOAF'](_0x11240b[0x0],'*')||_0x30e811[_0x3119cc(0x1f9)](_0x11240b[0x0][_0x3119cc(0x1a1)](),_0x30e811['kxokN'])),_0x20cba8=_0x334874?'*':_0x11240b[_0x3119cc(0x1de)](',\x20');_0x203700+='\x0aSELECT\x20'+_0x20cba8+'\x0aFROM\x20'+_0x12a8ab;if(_0x4f395d){const _0x3b1af1=this['buildWhereClause'](_0x4f395d);_0x3b1af1&&(_0x203700+=_0x3119cc(0x1db)+_0x3b1af1);}if(_0xcf9a4b&&_0x30e811[_0x3119cc(0x1f0)](_0xcf9a4b[_0x3119cc(0x1e0)],0x0)){const _0x2a5845=this[_0x3119cc(0x200)](_0xcf9a4b);_0x2a5845&&(_0x203700+=_0x3119cc(0x237)+_0x2a5845);}logger['info']({'event':'export_fetch_start','query':_0x203700[_0x3119cc(0x208)](0x0,0xc8)},_0x3119cc(0x19b));const _0x3fd98e=await _0x30e811['ZBDAe'](executeQuery,_0x203700);let _0x2a4f23=_0x3fd98e;return dbType===_0x30e811[_0x3119cc(0x234)]&&_0x3fd98e&&_0x3fd98e[_0x3119cc(0x1e0)]>0x0&&(_0x2a4f23=_0x3fd98e['map'](_0x4eff50=>{const _0x2693af=_0x3119cc,_0x497411={};for(const [_0x45264d,_0xec2b1c]of Object[_0x2693af(0x214)](_0x4eff50)){_0x497411[_0x45264d['toLowerCase']()]=_0xec2b1c;}return _0x497411;})),logger['info']({'event':_0x30e811[_0x3119cc(0x23e)],'rows':_0x2a4f23[_0x3119cc(0x1e0)]},_0x30e811[_0x3119cc(0x1d0)]),_0x2a4f23;}catch(_0x131793){logError(_0x131793,{'event':'export_fetch_error'},'Failed\x20to\x20fetch\x20data');throw _0x131793;}}[a0_0x5cbb4a(0x22f)](_0xda9b9d){const _0x536a26=a0_0x5cbb4a,_0x2b3ed0={'KiEtf':function(_0x2aebe5,_0x4e37e6){return _0x2aebe5===_0x4e37e6;}};if(_0x2b3ed0['KiEtf'](typeof _0xda9b9d,'string'))return _0xda9b9d[_0x536a26(0x1fc)](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')[_0x536a26(0x23a)]();else{if(Array[_0x536a26(0x1ea)](_0xda9b9d))return _0xda9b9d[_0x536a26(0x19d)](_0x5244c1=>this[_0x536a26(0x22f)](_0x5244c1));}return _0xda9b9d;}[a0_0x5cbb4a(0x1f8)](_0x5a8e68){const _0x4955fa=a0_0x5cbb4a,_0x41a12a={'tIGWv':_0x4955fa(0x19f),'uyirW':_0x4955fa(0x1e8),'AyoAV':function(_0x5ba64c,_0x2117cf){return _0x5ba64c!==_0x2117cf;},'sVWvK':function(_0x3b087a,_0x30de8a){return _0x3b087a===_0x30de8a;},'frlQe':function(_0x1f2ebd,_0x4ff368){return _0x1f2ebd===_0x4ff368;},'lqPYp':'LIKE','rltKt':_0x4955fa(0x20d),'kKMDC':_0x4955fa(0x1b4),'MACET':_0x4955fa(0x230),'drLlk':_0x4955fa(0x216)};if(!_0x5a8e68||!_0x5a8e68[_0x4955fa(0x229)]||_0x5a8e68['conditions']['length']===0x0)return'';const {logic:_0x45b220,conditions:_0xb7f03c}=_0x5a8e68,_0x5edece=_0x45b220&&_0x41a12a[_0x4955fa(0x227)](_0x45b220['toUpperCase'](),'OR')?_0x41a12a['MACET']:_0x41a12a[_0x4955fa(0x22c)],_0x22db37=_0xb7f03c[_0x4955fa(0x19d)](_0x51915f=>{const _0x3d8648=_0x4955fa,_0x11af89={'orULU':function(_0x54f2d5,_0x3d882d){return _0x54f2d5===_0x3d882d;}},{key:_0x2ed694,operator:_0x46d75c,value:_0x4b49fc,sensitive:_0x2d1268}=_0x51915f;if(!_0x2ed694||!_0x46d75c)return logger['warn']({'event':_0x41a12a['tIGWv'],'condition':_0x51915f},_0x41a12a['uyirW']),null;const _0x47840a=this['sanitizeValue'](_0x4b49fc),_0x151c25=_0x41a12a['AyoAV'](_0x2d1268,undefined)?_0x2d1268:!![];let _0xdbce0d=_0x2ed694,_0x1636e7=_0x47840a;!_0x151c25&&(_0xdbce0d=_0x3d8648(0x219)+_0x2ed694+')',_0x41a12a['sVWvK'](typeof _0x4b49fc,'string')&&(_0x1636e7=_0x4b49fc['toUpperCase']()));const _0x403180=typeof _0x1636e7===_0x3d8648(0x21e)?'\x27'+_0x1636e7['replace'](/'/g,'\x27\x27')+'\x27':_0x1636e7;switch(_0x46d75c[_0x3d8648(0x1a3)]()){case'=':case'!=':case'<>':return _0xdbce0d+'\x20'+_0x46d75c+'\x20'+_0x403180;case'>':case'<':case'>=':case'<=':const _0x235c93=_0x41a12a[_0x3d8648(0x1eb)](typeof _0x47840a,'string')?'\x27'+_0x47840a['replace'](/'/g,'\x27\x27')+'\x27':_0x47840a;return _0x2ed694+'\x20'+_0x46d75c+'\x20'+_0x235c93;case _0x41a12a[_0x3d8648(0x207)]:case _0x3d8648(0x1bc):return _0xdbce0d+'\x20'+_0x46d75c+'\x20'+_0x403180;case'IN':if(Array[_0x3d8648(0x1ea)](_0x47840a)){let _0x5ed103;return!_0x151c25?_0x5ed103=_0x47840a['map'](_0x179269=>{const _0x4cb97b=_0x3d8648,_0x5cbe49=_0x11af89[_0x4cb97b(0x1c4)](typeof _0x179269,_0x4cb97b(0x21e))?_0x179269['toUpperCase']():_0x179269;return typeof _0x5cbe49==='string'?'\x27'+_0x5cbe49['replace'](/'/g,'\x27\x27')+'\x27':_0x5cbe49;})['join'](',\x20'):_0x5ed103=_0x47840a['map'](_0x58d533=>typeof _0x58d533==='string'?'\x27'+_0x58d533[_0x3d8648(0x1fc)](/'/g,'\x27\x27')+'\x27':_0x58d533)['join'](',\x20'),_0xdbce0d+'\x20IN\x20('+_0x5ed103+')';}return _0xdbce0d+'\x20IN\x20('+_0x403180+')';case _0x41a12a[_0x3d8648(0x1d8)]:return _0x2ed694+_0x3d8648(0x1fd);case'IS\x20NOT\x20NULL':return _0x2ed694+_0x3d8648(0x1aa);default:logger[_0x3d8648(0x1bd)]({'event':'unknown_operator','operator':_0x46d75c},_0x41a12a[_0x3d8648(0x1a4)]);return _0xdbce0d+_0x3d8648(0x1af)+_0x403180;}})[_0x4955fa(0x21a)](_0xa37c52=>_0xa37c52!==null);if(_0x22db37[_0x4955fa(0x1e0)]===0x0)return'';return _0x22db37[_0x4955fa(0x1de)](_0x5edece);}['buildOrderByClause'](_0xe35126){const _0x8ce46f=a0_0x5cbb4a,_0x4b702c={'zorVR':'invalid_order','ZiGwA':_0x8ce46f(0x1c8),'YpvcN':function(_0x4cabaf,_0x2c2683){return _0x4cabaf===_0x2c2683;},'OguYU':function(_0x377d50,_0x2ca7d0){return _0x377d50===_0x2ca7d0;}};if(!_0xe35126||_0x4b702c[_0x8ce46f(0x1ab)](_0xe35126['length'],0x0))return'';const _0xddfdf6=_0xe35126['map'](_0x54ea93=>{const _0x5f454f=_0x8ce46f,{column:_0x2d47eb,direction:_0x16aa89}=_0x54ea93;if(!_0x2d47eb)return logger['warn']({'event':_0x4b702c['zorVR'],'item':_0x54ea93},_0x5f454f(0x19c)),null;const _0x2f13f8=_0x16aa89&&_0x16aa89['toUpperCase']()==='DESC'?_0x4b702c[_0x5f454f(0x215)]:_0x5f454f(0x212);return _0x2d47eb+'\x20'+_0x2f13f8;})[_0x8ce46f(0x21a)](_0x4cd23e=>_0x4cd23e!==null);if(_0x4b702c[_0x8ce46f(0x19e)](_0xddfdf6[_0x8ce46f(0x1e0)],0x0))return'';return _0xddfdf6['join'](',\x20');}async['generateExcel'](_0x3716ef,_0x3307c9,_0x2a4782){const _0x3129ff=a0_0x5cbb4a,_0x3c6295={'GFHMG':function(_0x387bac,_0x13bbb0){return _0x387bac*_0x13bbb0;},'bmFpq':function(_0x18598d,_0x346238){return _0x18598d/_0x346238;},'AxztH':'./excel-generator','EFJAd':function(_0x11a465,_0x1b9fb2){return _0x11a465===_0x1b9fb2;},'nZCHC':_0x3129ff(0x203),'QMExi':function(_0x37c421,_0x1cf57d){return _0x37c421>_0x1cf57d;},'kuQCm':'excel_columns_from_request','ipylv':'excel_columns_fallback','UNhMc':'excel_columns_from_query_result'},_0x3a239c=require(_0x3c6295[_0x3129ff(0x202)]),_0xe45c48=new _0x3a239c(),_0x2d063e=_0x2a4782[_0x3129ff(0x1a6)]?_0x2a4782['filename']+'-'+_0x3716ef:'export-'+_0x3716ef,_0x2b0061=path['join'](this['exportDir'],_0x2d063e+_0x3129ff(0x1ce));let _0x365c25=_0x2a4782[_0x3129ff(0x1fe)];const _0x17425f=_0x365c25&&_0x365c25[_0x3129ff(0x1e0)]===0x1&&(_0x365c25[0x0]==='*'||_0x3c6295[_0x3129ff(0x1da)](_0x365c25[0x0][_0x3129ff(0x1a1)](),_0x3129ff(0x20a)));if(_0x3307c9['length']>0x0){const _0x14af6c=Object['keys'](_0x3307c9[0x0]);if(_0x17425f)_0x365c25=_0x14af6c,logger[_0x3129ff(0x1b2)]({'event':_0x3c6295[_0x3129ff(0x1df)],'columns':_0x365c25},'Using\x20all\x20'+_0x365c25[_0x3129ff(0x1e0)]+'\x20columns\x20(wildcard\x20requested)');else{if(_0x365c25&&_0x365c25[_0x3129ff(0x1e0)]>0x0){const _0x282d82=_0x365c25[_0x3129ff(0x21a)](_0x3cf8b8=>_0x14af6c[_0x3129ff(0x1d2)](_0x3cf8b8));_0x3c6295[_0x3129ff(0x1c0)](_0x282d82['length'],0x0)?(_0x365c25=_0x282d82,logger['info']({'event':_0x3c6295['kuQCm'],'requestedColumns':_0x2a4782['columns'],'validColumns':_0x365c25},'Using\x20'+_0x365c25[_0x3129ff(0x1e0)]+_0x3129ff(0x1b7))):(_0x365c25=_0x14af6c,logger[_0x3129ff(0x1bd)]({'event':_0x3c6295[_0x3129ff(0x23d)],'requestedColumns':_0x2a4782[_0x3129ff(0x1fe)],'availableColumns':_0x14af6c},_0x3129ff(0x225)+_0x14af6c[_0x3129ff(0x1e0)]+_0x3129ff(0x1c9)));}else _0x365c25=_0x14af6c,logger['info']({'event':_0x3c6295[_0x3129ff(0x201)],'columns':_0x365c25},'Using\x20'+_0x365c25['length']+_0x3129ff(0x1ec));}}else logger['info']({'event':'excel_columns_from_config','columns':_0x365c25},'Using\x20'+(_0x365c25?.['length']||0x0)+'\x20columns\x20from\x20config\x20(no\x20data)');return await _0xe45c48[_0x3129ff(0x1ba)]({'data':_0x3307c9,'columns':_0x365c25,'columnFormats':_0x2a4782[_0x3129ff(0x1ae)]||null,'fieldLabels':_0x2a4782[_0x3129ff(0x1c7)]||null,'filePath':_0x2b0061,'onProgress':async _0x2fac4c=>{const _0x2febbd=_0x3129ff;await redisHelper[_0x2febbd(0x1d7)](_0x3716ef,{'progress':Math['round'](_0x2fac4c),'processed_rows':Math[_0x2febbd(0x1ca)](_0x3c6295[_0x2febbd(0x1d9)](_0x3c6295['bmFpq'](_0x2fac4c,0x64),_0x3307c9['length']))});}}),_0x2b0061;}async['getFilePath'](_0xf1a109){const _0x38fdc8=a0_0x5cbb4a,_0x3daa6f={'iFwEW':function(_0x5ca31e,_0x2feff6){return _0x5ca31e!==_0x2feff6;}},_0x3ec7a0=await redisHelper[_0x38fdc8(0x1e1)](_0xf1a109);if(!_0x3ec7a0||_0x3daa6f[_0x38fdc8(0x1cc)](_0x3ec7a0[_0x38fdc8(0x1b9)],_0x38fdc8(0x1a9)))return null;try{return await fs['access'](_0x3ec7a0['file_path']),_0x3ec7a0['file_path'];}catch(_0x4bcd2c){return logError(_0x4bcd2c,{'event':_0x38fdc8(0x1d3),'jobId':_0xf1a109,'path':_0x3ec7a0['file_path']},'Export\x20file\x20not\x20found'),null;}}async[a0_0x5cbb4a(0x1f2)](){const _0x517a70=a0_0x5cbb4a,_0x1ab883={'DtSka':function(_0x35c976,_0x2dcb45){return _0x35c976/_0x2dcb45;},'GIMVK':function(_0x2cbfe4,_0x63f5dd){return _0x2cbfe4-_0x63f5dd;},'xJARj':_0x517a70(0x232)};logger['info']({'event':'export_cleanup_start'},'Starting\x20export\x20cleanup');const _0x3ffa5e=await redisHelper[_0x517a70(0x1ad)]();let _0x4e19fb=0x0;for(const _0x17d3e0 of _0x3ffa5e){const _0x227349=new Date(_0x17d3e0[_0x517a70(0x239)]),_0x3efd48=new Date(),_0x5ac16b=_0x1ab883[_0x517a70(0x1d5)](_0x1ab883['GIMVK'](_0x3efd48,_0x227349),0x3e8*0x3c*0x3c);if(_0x5ac16b>0x1){if(_0x17d3e0['file_path'])try{await fs['unlink'](_0x17d3e0[_0x517a70(0x1dd)]),logger['info']({'event':_0x517a70(0x1fa),'path':_0x17d3e0[_0x517a70(0x1dd)]},_0x1ab883[_0x517a70(0x1bb)]);}catch(_0x201659){logger['warn']({'event':'export_file_delete_error','path':_0x17d3e0[_0x517a70(0x1dd)],'error':_0x201659[_0x517a70(0x21b)]},'Failed\x20to\x20delete\x20export\x20file');}await redisHelper[_0x517a70(0x21d)](_0x17d3e0['job_id']),_0x4e19fb++;}}return logger['info']({'event':_0x517a70(0x20f),'deleted':_0x4e19fb},'Export\x20cleanup\x20completed'),_0x4e19fb;}}function a0_0x39df(){const _0x4b3730=['D0XUB24','Dg9mB3DLCKnHC2u','zxHWB3j0x3nLCNzPy2vFAw5PDa','Dg9vChbLCKnHC2u','A0Tnrem','mtm3mti3nKHxr1vmEa','zMLSzw5HBwu','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','ndu2ntqZDKLwrert','y29TCgXLDgvK','ieLtie5pvcbovuXm','wxb2y04','rxHWB3j0ihf1zxj5igzPBguGAxmGzw1WDhK6ia','z2v0qwXSsM9ICW','y29SDw1UrM9YBwf0CW','id0G','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','BM93','Aw5MBW','ru5pru5u','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','y29TCgXLDgvKx2f0','rxHWB3j0ignVBxbSzxrLzcbZDwnJzxnZzNvSBhK','ignVBhvTBNmGzNjVBsbYzxf1zxn0','zxHWB3j0x3f1zxj5x2zPBgvFBg9HzgvK','C3rHDhvZ','z2vUzxjHDgu','EePbuMO','tK9uieXjs0u','D2fYBG','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','rgf0ysbMzxrJAgvKihn1y2nLC3nMDwXSEq','uu1fEgK','wfv3CLC','CvfICfC','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','B3jvtfu','D2Ppzva','z2vUzxjHDgvkB2jjza','zMLLBgrmywjLBhm','revtqW','ignVBhvTBNm','CM91BMq','zxHWB3j0x2nVBxbSzxrLza','Auz3rvC','lI4VlI4Vy29Yzs91DgLSCY9KyG','lNHSC3G','zw52','ELHRu08','mtiWmZC5r1n5y1H1','Aw5JBhvKzxm','zxHWB3j0x2zPBgvFBM90x2zVDw5K','wKTREfm','rhrtA2e','Dg9ju09tDhjPBMC','DxbKyxrLsM9I','CMX0s3q','r0zituC','ruzkqwq','cLDirvjfia','mJyZodiWouX2zuvKAW','zMLSzv9WyxrO','AM9PBG','BLPdsem','BgvUz3rO','z2v0sM9I','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','zxjYB3i','zxHWB3j0x3nLCNzPy2vFAw5PDf9LCNjVCG','zw5KCg9PBNroyw1L','DxvPza','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','u2TPChbPBMCGAw52ywXPzcbJB25KAxrPB24','tvnZD3u','AxnbCNjHEq','zNjSuwu','ignVBhvTBNmGzNjVBsbXDwvYEsbYzxn1Bhq','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','zxHWB3j0x3bYB2nLC3nFzxjYB3i','lI4VlI4VzxHWB3j0CY8','tK5nEu4','ChjVz3jLC3m','y2XLyw51Ca','DuncwhO','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','v0Lusca','y3jLyxrLsM9I','Cgf0Aa','yNvPBgrxAgvYzunSyxvZzq','vNP3vuC','zxHWB3j0x2zPBgvFzgvSzxrLza','ChjVBwLZzxm','CMvWBgfJzq','ieLtie5vteW','y29SDw1UCW','mJm2ntu1nw9fv2XRBa','yNvPBgrpCMrLCKj5q2XHDxnL','vu5Otwm','qxH6DeG','zxHJzwXFy29SDw1UC19ZzwXLy3rFywXS','zxHWB3j0rgLY','rxHWB3j0ihnLCNzPy2uGAw5PDgLHBgL6zwq','sw52ywXPzcbMAwXLoIbYzwzLCMvUy2uGlsbWyxrOigLZigvTChr5','Bhfqwxa','C3vIC3rYAw5N','x2v4Cg9YDerPCG','ywXS','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','mJa5otuWmKLpA2Hxza','svmGtLvmta','zMLSztO','zxHWB3j0x2nSzwfUDxbFy29TCgXLDgu','z2vUzxjHDgvfEgnLBa','BxLZCwW','qvnd','cIaGicbguK9nia','zw50CMLLCW','wMLhD0e','ieforca','rvHqt1jux0rjuG','x2rHDge','vvbqrviO','zMLSDgvY','BwvZC2fNzq','nKLSwwLiqW','zgvSzxrLsM9I','C3rYAw5N','qwj3s0u','zMfPBgvK','qKPlD1G','zxHWB3j0x3bYB2nLC3nPBMDFC3rHCNq','y0Xls2W','thrvv2e','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','zgvMyxvSDa','C1zxDKS','oty4v1rfDerR','y29UzgL0Aw9UCW','iefticGkicaGifnftevdvca','zxHLy3v0zvf1zxj5','zhjmBgS','zMv0y2HeyxrH','zxHWB3j0x2PVyL9JCMvHDgvK','C2fUAxrPEMvwywX1zq','ie9sia','svznwfK','rxHWB3j0igzPBguGzgvSzxrLza','ChjVy2vZC2LUzW','rfLbtLa','rxHWB3j0ihbYB2nLC3nPBMCGC3rHCNrLza','l2fWAs8','cK9srevsiejzia','zxHWB3j0x3f1zxj5x2zPBgvFCMvZB2X2zq','y3jLyxrLzf9HDa','DhjPBq','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','mZy3otL2zNDHrgW','Axb5Bhy','zLf4zvq','tfrPwuW','C2v0sM9I','rMv0y2HPBMCGzgf0ysbMCM9TigrHDgfIyxnL','u2TPChbPBMCGAw52ywXPzcbVCMrLCIbJBgf1C2u','BwfW','t2D1wvu','Aw52ywXPzf9JB25KAxrPB24'];a0_0x39df=function(){return _0x4b3730;};return a0_0x39df();}module['exports']=new ExportService();
@@ -1 +1 @@
1
- const a0_0x1df9ed=a0_0x5c41;(function(_0x1c4b7c,_0x394c4e){const _0x60fc1c=a0_0x5c41,_0x5eac84=_0x1c4b7c();while(!![]){try{const _0xc842e4=parseInt(_0x60fc1c(0x191))/0x1*(parseInt(_0x60fc1c(0x1a3))/0x2)+-parseInt(_0x60fc1c(0x197))/0x3*(-parseInt(_0x60fc1c(0x1c6))/0x4)+-parseInt(_0x60fc1c(0x198))/0x5*(-parseInt(_0x60fc1c(0x1a9))/0x6)+parseInt(_0x60fc1c(0x1b5))/0x7+parseInt(_0x60fc1c(0x1b1))/0x8*(parseInt(_0x60fc1c(0x1ac))/0x9)+parseInt(_0x60fc1c(0x1bd))/0xa+parseInt(_0x60fc1c(0x18d))/0xb*(-parseInt(_0x60fc1c(0x199))/0xc);if(_0xc842e4===_0x394c4e)break;else _0x5eac84['push'](_0x5eac84['shift']());}catch(_0x4d1b62){_0x5eac84['push'](_0x5eac84['shift']());}}}(a0_0x5cd1,0xdb0ed));function a0_0x5c41(_0x3d157d,_0x88b22f){_0x3d157d=_0x3d157d-0x18a;const _0x5cd1b8=a0_0x5cd1();let _0x5c41c4=_0x5cd1b8[_0x3d157d];if(a0_0x5c41['QaHItD']===undefined){var _0x712ea8=function(_0x291a36){const _0x492410='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x472da2='',_0x409bd9='';for(let _0x1a2ce0=0x0,_0x3712a2,_0x57993f,_0x2c0d1b=0x0;_0x57993f=_0x291a36['charAt'](_0x2c0d1b++);~_0x57993f&&(_0x3712a2=_0x1a2ce0%0x4?_0x3712a2*0x40+_0x57993f:_0x57993f,_0x1a2ce0++%0x4)?_0x472da2+=String['fromCharCode'](0xff&_0x3712a2>>(-0x2*_0x1a2ce0&0x6)):0x0){_0x57993f=_0x492410['indexOf'](_0x57993f);}for(let _0x577d19=0x0,_0x330d91=_0x472da2['length'];_0x577d19<_0x330d91;_0x577d19++){_0x409bd9+='%'+('00'+_0x472da2['charCodeAt'](_0x577d19)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x409bd9);};a0_0x5c41['mANHid']=_0x712ea8,a0_0x5c41['tJNWag']={},a0_0x5c41['QaHItD']=!![];}const _0x4a9d51=_0x5cd1b8[0x0],_0x1f8798=_0x3d157d+_0x4a9d51,_0x4fd2e5=a0_0x5c41['tJNWag'][_0x1f8798];return!_0x4fd2e5?(_0x5c41c4=a0_0x5c41['mANHid'](_0x5c41c4),a0_0x5c41['tJNWag'][_0x1f8798]=_0x5c41c4):_0x5c41c4=_0x4fd2e5,_0x5c41c4;}const exportService=require('../../services/export-service'),{logger,logError}=require('../../utils/logger'),path=require('path');function a0_0x5cd1(){const _0x57557c=['zMLLBgrmywjLBhm','mZjAyxLzvve','A2v5','BhHKCwe','zxHWB3j0x3rYAwDNzxjFzxjYB3i','AgfUzgXLrxHWB3j0rg93BMXVywq','rxHWB3j0igzPBguGzg93BMXVywrLzcbZDwnJzxnZzNvSBhK','mte0A3rpEhfT','l2v4Cg9YDc1KB3DUBg9Hza','EfDYtNi','mZG4ndr5s01NqM0','C3rHDhvZ','iIbPCYbUB3qGywXSB3DLza','sKreyNK','yM9KEq','mJKYohbbvhbtAa','Evzzv04','CMvWBgfJzq','z2v0','nZC0nJC2BM1trLvH','qMD0rLG','sw52ywXPzcb3AgvYzsbZDhj1y3r1CMuUiev4CgvJDgvKoIb7igXVz2LJoIaIqu5eFe9siIWGy29UzgL0Aw9UCZOGwY4UlL0GFq','BwvZC2fNzq','sw52ywXPzcb3AgvYzsbMAwvSza','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDa','AxnbCNjHEq','y2XLyw51Ca','mtaYndG3mejdyLjVrG','Bg9NAwm','yu1eBxG','y29SDw1U','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','Cg9ZDa','EgXZEa','l2fWAs8','Aw5JBhvKzxm','mtG0mdq4nfPuuhnfzW','CxvLCNK','ANnVBG','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','mta2odu2ntnXv29RyKK','t25SEsb4Bhn4igzVCM1HDcbPCYbZDxbWB3j0zwq','AgfUzgXLrxHWB3j0u3rHDhvZ','z2v0rMLSzvbHDgG','otmWnZDjwe9nALO','AgvHzgvYC1nLBNq','y2XLyw51Cf9LCNjVCG','zxHWB3j0uxvLCNK','rMfPBgvKihrVihrYAwDNzxiGzxHWB3j0','Aw5MBW','nNf2tuPIEG','nda4ndq1y2rAqxPA','nJbPzwDZvLu','AgfUzgXLrxHWB3j0vhjPz2DLCG','sw52ywXPzcbZB3j0ignVBhvTBG','y29SDw1UCW','BxPSBvK','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','l2v4Cg9YDc1ZDgf0Dxm','zxHWB3j0x2rVD25SB2fKzwq'];a0_0x5cd1=function(){return _0x57557c;};return a0_0x5cd1();}class ExportHandler{static['registerRoutes'](_0x1829cd,_0x52a563,_0x26d1c5,_0x101d47){const _0x571976=a0_0x5c41,_0x1f046c={'ywuKl':function(_0x365e6d,_0x140499,_0x3e9676,_0x260dac){return _0x365e6d(_0x140499,_0x3e9676,_0x260dac);},'MdNjP':_0x571976(0x1a6)},_0x256382=_0x571976(0x1c4)+_0x52a563+'/'+_0x26d1c5;_0x1829cd[_0x571976(0x1c2)](_0x256382+'/export',async(_0x4eb9d3,_0x276e89)=>{const _0x396ce2=_0x571976;try{await this[_0x396ce2(0x19a)](_0x4eb9d3,_0x276e89,_0x101d47,_0x52a563,_0x26d1c5);}catch(_0x40d267){_0x1f046c['ywuKl'](logError,_0x40d267,{'event':_0x1f046c['MdNjP']},_0x396ce2(0x195)),_0x276e89['status'](0x1f4)[_0x396ce2(0x18b)]({'success':![],'error':_0x40d267[_0x396ce2(0x1b8)]});}}),_0x1829cd['get'](_0x256382+_0x571976(0x1a0),async(_0x769111,_0x575dfe)=>{const _0x3adca1=_0x571976;try{await this[_0x3adca1(0x18f)](_0x769111,_0x575dfe);}catch(_0x4f995){logError(_0x4f995,{'event':'export_status_error'},_0x3adca1(0x1c1)),_0x575dfe['status'](0x1f4)[_0x3adca1(0x18b)]({'success':![],'error':_0x4f995['message']});}}),_0x1829cd[_0x571976(0x1b4)](_0x256382+_0x571976(0x1aa),async(_0x4ba05f,_0x116daf)=>{const _0x2dee73=_0x571976;try{await this['handleExportDownload'](_0x4ba05f,_0x116daf);}catch(_0x178e95){logError(_0x178e95,{'event':'export_download_error'},_0x2dee73(0x1ba)),!_0x116daf[_0x2dee73(0x192)]&&_0x116daf[_0x2dee73(0x1ad)](0x1f4)['json']({'success':![],'error':_0x178e95[_0x2dee73(0x1b8)]});}});}static async['handleExportTrigger'](_0x2760ee,_0x4affae,_0x442a29,_0x4746ab,_0x4f0a05){const _0x35d27c=a0_0x5c41,_0x22207b={'GvRic':function(_0x27eb54,_0x1543c4){return _0x27eb54!==_0x1543c4;},'JDDby':_0x35d27c(0x1c3),'UWPPF':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]','pwitD':_0x35d27c(0x1b9),'dPAAu':_0x35d27c(0x19b),'xWrNr':'-export','yVYWN':function(_0x4349e6,_0x24d542){return _0x4349e6||_0x24d542;}},{format:_0x170a95,filename:_0x5ba4c8,columns:_0x5f12f4,where:_0x11eb56,sort_columns:_0x2bcfc9}=_0x2760ee[_0x35d27c(0x1b0)];if(_0x170a95&&_0x22207b['GvRic'](_0x170a95,_0x22207b[_0x35d27c(0x1af)]))return _0x4affae[_0x35d27c(0x1ad)](0x190)['json']({'success':![],'error':_0x35d27c(0x18e)});if(_0x11eb56){if(!_0x11eb56[_0x35d27c(0x1be)]||!_0x11eb56['conditions']||!Array[_0x35d27c(0x1bb)](_0x11eb56['conditions']))return _0x4affae['status'](0x190)['json']({'success':![],'error':_0x35d27c(0x1b7)});}if(_0x2bcfc9){if(!Array['isArray'](_0x2bcfc9))return _0x4affae[_0x35d27c(0x1ad)](0x190)[_0x35d27c(0x18b)]({'success':![],'error':_0x22207b['UWPPF']});}const _0x4b961c=_0x442a29[_0x35d27c(0x19c)]||[];if(_0x11eb56&&Array['isArray'](_0x11eb56['conditions']))for(const _0x1ce0f9 of _0x11eb56['conditions']){if(_0x1ce0f9['key']&&!_0x4b961c[_0x35d27c(0x1c5)](_0x1ce0f9[_0x35d27c(0x1a4)]))return _0x4affae[_0x35d27c(0x1ad)](0x190)['json']({'success':![],'error':_0x22207b['pwitD'],'message':'Field\x20\x22'+_0x1ce0f9['key']+_0x35d27c(0x1ae),'validFields':_0x4b961c});}if(Array['isArray'](_0x2bcfc9))for(const _0x5e6961 of _0x2bcfc9){if(_0x5e6961[_0x35d27c(0x1c0)]&&!_0x4b961c[_0x35d27c(0x1c5)](_0x5e6961['column']))return _0x4affae['status'](0x190)['json']({'success':![],'error':_0x22207b['dPAAu'],'message':'Column\x20\x22'+_0x5e6961['column']+'\x22\x20is\x20not\x20allowed','validFields':_0x4b961c});}const _0xe5004a=_0x442a29['tableName'][_0x35d27c(0x1b3)]('.','-')+_0x22207b[_0x35d27c(0x1ab)],_0x3aa211=await exportService['createJob']({'moduleName':_0x4746ab,'endpointName':_0x4f0a05,'tableName':_0x442a29['tableName'],'format':_0x170a95||_0x35d27c(0x1c3),'filename':_0x5ba4c8||_0xe5004a,'columns':_0x5f12f4||_0x442a29['columns'],'exportQuery':_0x442a29[_0x35d27c(0x194)]||null,'columnFormats':_0x442a29['columnFormats']||null,'fieldLabels':_0x442a29[_0x35d27c(0x1a2)]||null,'where':_0x22207b[_0x35d27c(0x1b2)](_0x11eb56,null),'sort_columns':_0x2bcfc9||null});_0x4affae['json']({'success':!![],'data':_0x3aa211});}static async[a0_0x1df9ed(0x18f)](_0x19c21e,_0xf5c83e){const _0x16f81c=a0_0x1df9ed,_0x19b59a={'SUsvi':_0x16f81c(0x19e)},{job_id:_0x387d6d}=_0x19c21e['query'];if(!_0x387d6d)return _0xf5c83e['status'](0x190)['json']({'success':![],'error':_0x19b59a['SUsvi']});const _0x2242d9=await exportService['getJobStatus'](_0x387d6d);if(!_0x2242d9['success'])return _0xf5c83e[_0x16f81c(0x1ad)](0x194)[_0x16f81c(0x18b)](_0x2242d9);_0xf5c83e[_0x16f81c(0x18b)](_0x2242d9);}static async[a0_0x1df9ed(0x1a7)](_0x342b4b,_0x44c9f8){const _0x4d9a42=a0_0x1df9ed,_0x5a73eb={'lxdqa':_0x4d9a42(0x18c),'VuweH':'Failed\x20to\x20download\x20export\x20file','dZljB':'Failed\x20to\x20download\x20file','mzlmY':_0x4d9a42(0x1a1),'KzfJm':_0x4d9a42(0x1a8),'CMlMq':'File\x20not\x20ready\x20or\x20not\x20found.\x20Check\x20job\x20status\x20first.'},{job_id:_0xba414c}=_0x342b4b[_0x4d9a42(0x18a)];if(!_0xba414c)return _0x44c9f8['status'](0x190)[_0x4d9a42(0x18b)]({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x145181=await exportService[_0x4d9a42(0x190)](_0xba414c);if(!_0x145181)return _0x44c9f8['status'](0x194)[_0x4d9a42(0x18b)]({'success':![],'error':_0x5a73eb['CMlMq']});_0x44c9f8['download'](_0x145181,''+path['basename'](_0x145181),_0x558da2=>{const _0xb253aa=_0x4d9a42;_0x558da2?(logError(_0x558da2,{'event':_0x5a73eb[_0xb253aa(0x1a5)],'jobId':_0xba414c},_0x5a73eb['VuweH']),!_0x44c9f8[_0xb253aa(0x192)]&&_0x44c9f8[_0xb253aa(0x1ad)](0x1f4)['json']({'success':![],'error':_0x5a73eb['dZljB']})):logger[_0xb253aa(0x196)]({'event':_0x5a73eb[_0xb253aa(0x19d)],'jobId':_0xba414c},_0x5a73eb['KzfJm']);});}static['registerCleanupRoute'](_0x2a930d){const _0x4397c9=a0_0x1df9ed,_0x5bfdd4={'BgtFX':function(_0x3c1354,_0x5a248e,_0x40efc6,_0x58c373){return _0x3c1354(_0x5a248e,_0x40efc6,_0x58c373);},'aMDmx':_0x4397c9(0x19f)};_0x2a930d[_0x4397c9(0x1b4)](_0x5bfdd4[_0x4397c9(0x1bf)],async(_0x16bc6a,_0x1cdfaa)=>{const _0x5de83e=_0x4397c9;try{const _0x1277cd=await exportService[_0x5de83e(0x1bc)]();_0x1cdfaa[_0x5de83e(0x18b)]({'success':!![],'data':{'deleted':_0x1277cd,'message':'Cleanup\x20completed'}});}catch(_0x372c68){_0x5bfdd4[_0x5de83e(0x1b6)](logError,_0x372c68,{'event':_0x5de83e(0x193)},'Cleanup\x20failed'),_0x1cdfaa[_0x5de83e(0x1ad)](0x1f4)['json']({'success':![],'error':_0x372c68['message']});}});}}module['exports']=ExportHandler;
1
+ const a0_0x59b1fa=a0_0x2949;function a0_0x2949(_0x3734cf,_0x307a7a){_0x3734cf=_0x3734cf-0xa6;const _0x17fd04=a0_0x17fd();let _0x29493d=_0x17fd04[_0x3734cf];if(a0_0x2949['CxcKLr']===undefined){var _0x58618b=function(_0x244f3b){const _0xedd144='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5f44fd='',_0x34a5dd='';for(let _0xb1ec3a=0x0,_0x2b2ee1,_0x57f570,_0x508ef1=0x0;_0x57f570=_0x244f3b['charAt'](_0x508ef1++);~_0x57f570&&(_0x2b2ee1=_0xb1ec3a%0x4?_0x2b2ee1*0x40+_0x57f570:_0x57f570,_0xb1ec3a++%0x4)?_0x5f44fd+=String['fromCharCode'](0xff&_0x2b2ee1>>(-0x2*_0xb1ec3a&0x6)):0x0){_0x57f570=_0xedd144['indexOf'](_0x57f570);}for(let _0x92238b=0x0,_0x3d574c=_0x5f44fd['length'];_0x92238b<_0x3d574c;_0x92238b++){_0x34a5dd+='%'+('00'+_0x5f44fd['charCodeAt'](_0x92238b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x34a5dd);};a0_0x2949['EbFBHS']=_0x58618b,a0_0x2949['AWjavf']={},a0_0x2949['CxcKLr']=!![];}const _0x97d9aa=_0x17fd04[0x0],_0x3dbc2b=_0x3734cf+_0x97d9aa,_0x2b22e6=a0_0x2949['AWjavf'][_0x3dbc2b];return!_0x2b22e6?(_0x29493d=a0_0x2949['EbFBHS'](_0x29493d),a0_0x2949['AWjavf'][_0x3dbc2b]=_0x29493d):_0x29493d=_0x2b22e6,_0x29493d;}(function(_0x2ba8ef,_0x1119e7){const _0x450001=a0_0x2949,_0x359c5a=_0x2ba8ef();while(!![]){try{const _0x2eadbd=parseInt(_0x450001(0xbc))/0x1+parseInt(_0x450001(0xd7))/0x2+-parseInt(_0x450001(0xa6))/0x3+parseInt(_0x450001(0xab))/0x4*(-parseInt(_0x450001(0xe3))/0x5)+-parseInt(_0x450001(0xad))/0x6+parseInt(_0x450001(0xc6))/0x7+parseInt(_0x450001(0xdf))/0x8;if(_0x2eadbd===_0x1119e7)break;else _0x359c5a['push'](_0x359c5a['shift']());}catch(_0x21424e){_0x359c5a['push'](_0x359c5a['shift']());}}}(a0_0x17fd,0xc62fe));function a0_0x17fd(){const _0x57c589=['z2v0','yMfZzw5HBwu','y2XLyw51Ca','AgfUzgXLrxHWB3j0vhjPz2DLCG','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','EhzTu04','ntmYnZm4ne9oywneta','AxnbCNjHEq','rMfPBgvKihrVihrYAwDNzxiGzxHWB3j0','u1bgDMS','ndKYmtq3mgHPrMf1wa','z2v0sM9Iu3rHDhvZ','A2v5','mJu4mtC0m21SAunIzq','q2XLyw51CcbMywLSzwq','AKjbDLi','l2v4Cg9YDa','l2v4Cg9YDc1ZDgf0Dxm','nfv1ELr0Eq','y29SDw1UCW','ndC5oteYnfzTDMPewa','zxHWB3j0x3rYAwDNzxjFzxjYB3i','y3jLyxrLsM9I','l2fWAs8','AgfUzgXLrxHWB3j0rg93BMXVywq','yM9KEq','tvDYBhy','CMvWBgfJzq','zfbVEhq','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','y29SDw1UrM9YBwf0CW','BwvZC2fNzq','y0fkuNK','sw52ywXPzcbZB3j0ignVBhvTBG','C3rHDhvZ','mtiWmZeWnvHjuKPLyG','sw52ywXPzcb3AgvYzsbZDhj1y3r1CMuUiev4CgvJDgvKoIb7igXVz2LJoIaIqu5eFe9siIWGy29UzgL0Aw9UCZOGwY4UlL0GFq','AgvHzgvYC1nLBNq','vM5Nvwi','CxvLCNK','Bg9NAwm','sw52ywXPzcbZB3j0x2nVBhvTBNmGC3rYDwn0DxjLlIbfEhbLy3rLzdOGw3SGy29SDw1UoIaIy29SiIWGzgLYzwn0Aw9UoIaIqvndFerfu0mIih1D','q2XLyw51CcbJB21WBgv0zwq','zxHWB3j0x2rVD25SB2fKzwq','y29UzgL0Aw9UCW','mZmYnJCYoxbLvuTcAW','t25SEsb4Bhn4igzVCM1HDcbPCYbZDxbWB3j0zwq','Cgf0Aa','Aw5JBhvKzxm','q29SDw1Uici','sw52ywXPzcb3AgvYzsbMAwvSza','ANHMvM8','zg93BMXVywq','DgfIBgvoyw1L','ANnVBG','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','zxHWB3j0x3n0yxr1C19LCNjVCG','CMvNAxn0zxjdBgvHBNvWuM91Dgu','rxHWB3j0igzPBguGzg93BMXVywrLzcbZDwnJzxnZzNvSBhK','C3vJy2vZCW','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','zuTHqwS','mJiYndq1nKr0CvzZyG','z2v0rMLSzvbHDgG'];a0_0x17fd=function(){return _0x57c589;};return a0_0x17fd();}const exportService=require('../../services/export-service'),{logger,logError}=require('../../utils/logger'),path=require(a0_0x59b1fa(0xc8));class ExportHandler{static['registerRoutes'](_0x2ce414,_0x127196,_0x59cdf7,_0x1af270){const _0x153c11=a0_0x59b1fa,_0x5f2b95={'xvmSN':_0x153c11(0xae),'aDmQg':'Failed\x20to\x20download\x20export'},_0x283357=_0x153c11(0xb0)+_0x127196+'/'+_0x59cdf7;_0x2ce414['post'](_0x283357+_0x153c11(0xa9),async(_0x2f8119,_0x3c6b6d)=>{const _0x47e765=_0x153c11;try{await this['handleExportTrigger'](_0x2f8119,_0x3c6b6d,_0x1af270,_0x127196,_0x59cdf7);}catch(_0x1ca074){logError(_0x1ca074,{'event':_0x5f2b95[_0x47e765(0xde)]},_0x47e765(0xe1)),_0x3c6b6d[_0x47e765(0xbb)](0x1f4)[_0x47e765(0xcf)]({'success':![],'error':_0x1ca074[_0x47e765(0xb8)]});}}),_0x2ce414[_0x153c11(0xd9)](_0x283357+_0x153c11(0xaa),async(_0xb7a466,_0x11543c)=>{const _0x299255=_0x153c11;try{await this['handleExportStatus'](_0xb7a466,_0x11543c);}catch(_0x18f74f){logError(_0x18f74f,{'event':_0x299255(0xd1)},_0x299255(0xdd)),_0x11543c['status'](0x1f4)[_0x299255(0xcf)]({'success':![],'error':_0x18f74f['message']});}}),_0x2ce414['get'](_0x283357+'/export-download',async(_0x476bb7,_0x11c62a)=>{const _0xd76a8d=_0x153c11;try{await this['handleExportDownload'](_0x476bb7,_0x11c62a);}catch(_0x4baf62){logError(_0x4baf62,{'event':_0xd76a8d(0xd5)},_0x5f2b95['aDmQg']),!_0x11c62a[_0xd76a8d(0xbe)]&&_0x11c62a[_0xd76a8d(0xbb)](0x1f4)['json']({'success':![],'error':_0x4baf62['message']});}});}static async[a0_0x59b1fa(0xdc)](_0x4f96ca,_0x15ed1d,_0x2fd223,_0x219311,_0xc4c6b7){const _0x253621=a0_0x59b1fa,_0x3c5980={'cAJRy':_0x253621(0xc7),'dPoxt':_0x253621(0xbd),'VngUb':_0x253621(0xc2),'QSfGX':_0x253621(0xcb),'xNdpL':function(_0x1ceb8b,_0x337231){return _0x1ceb8b+_0x337231;},'MWrlv':function(_0x41c1a2,_0x4e3210){return _0x41c1a2||_0x4e3210;},'jQtQc':'xlsx','kqhTm':function(_0x5ff092,_0x37df55){return _0x5ff092||_0x37df55;},'jxfVo':function(_0x4795dc,_0x57dba6){return _0x4795dc||_0x57dba6;}},{format:_0x478037,filename:_0x5b7751,columns:_0xc37d6d,where:_0x247047,sort_columns:_0x493ba8}=_0x4f96ca[_0x253621(0xb2)];if(_0x478037&&_0x478037!=='xlsx')return _0x15ed1d['status'](0x190)['json']({'success':![],'error':_0x3c5980[_0x253621(0xb9)]});if(_0x247047){if(!_0x247047[_0x253621(0xc1)]||!_0x247047['conditions']||!Array['isArray'](_0x247047['conditions']))return _0x15ed1d['status'](0x190)['json']({'success':![],'error':_0x3c5980[_0x253621(0xb5)]});}if(_0x493ba8){if(!Array['isArray'](_0x493ba8))return _0x15ed1d[_0x253621(0xbb)](0x190)[_0x253621(0xcf)]({'success':![],'error':_0x3c5980[_0x253621(0xbf)]});}const _0x2837c5=_0x2fd223[_0x253621(0xac)]||[];if(_0x247047&&Array[_0x253621(0xe0)](_0x247047[_0x253621(0xc5)]))for(const _0x5223e1 of _0x247047['conditions']){if(_0x5223e1['key']&&!_0x2837c5[_0x253621(0xc9)](_0x5223e1['key']))return _0x15ed1d[_0x253621(0xbb)](0x190)['json']({'success':![],'error':_0x3c5980['QSfGX'],'message':'Field\x20\x22'+_0x5223e1[_0x253621(0xe5)]+'\x22\x20is\x20not\x20allowed','validFields':_0x2837c5});}if(Array['isArray'](_0x493ba8))for(const _0x558119 of _0x493ba8){if(_0x558119['column']&&!_0x2837c5['includes'](_0x558119['column']))return _0x15ed1d['status'](0x190)[_0x253621(0xcf)]({'success':![],'error':_0x253621(0xba),'message':_0x253621(0xca)+_0x558119['column']+'\x22\x20is\x20not\x20allowed','validFields':_0x2837c5});}const _0x4a21bc=_0x3c5980['xNdpL'](_0x2fd223['tableName'][_0x253621(0xb4)]('.','-'),'-export'),_0x16ce27=await exportService[_0x253621(0xaf)]({'moduleName':_0x219311,'endpointName':_0xc4c6b7,'tableName':_0x2fd223[_0x253621(0xce)],'format':_0x3c5980[_0x253621(0xb3)](_0x478037,_0x3c5980['jQtQc']),'filename':_0x3c5980['kqhTm'](_0x5b7751,_0x4a21bc),'columns':_0xc37d6d||_0x2fd223[_0x253621(0xac)],'exportQuery':_0x2fd223['exportQuery']||null,'columnFormats':_0x2fd223[_0x253621(0xb7)]||null,'fieldLabels':_0x2fd223['fieldLabels']||null,'where':_0x3c5980[_0x253621(0xcc)](_0x247047,null),'sort_columns':_0x493ba8||null});_0x15ed1d['json']({'success':!![],'data':_0x16ce27});}static async['handleExportStatus'](_0x2cc632,_0x14302a){const _0x4b448f=a0_0x59b1fa,_0x909e73={'eXQMt':'job_id\x20parameter\x20is\x20required'},{job_id:_0x54dc89}=_0x2cc632[_0x4b448f(0xc0)];if(!_0x54dc89)return _0x14302a[_0x4b448f(0xbb)](0x190)['json']({'success':![],'error':_0x909e73['eXQMt']});const _0x4c8696=await exportService[_0x4b448f(0xe4)](_0x54dc89);if(!_0x4c8696[_0x4b448f(0xd4)])return _0x14302a[_0x4b448f(0xbb)](0x194)['json'](_0x4c8696);_0x14302a['json'](_0x4c8696);}static async[a0_0x59b1fa(0xb1)](_0x4b577c,_0xd80904){const _0x4cad12=a0_0x59b1fa,_0x12fe5f={'DIuEA':'Failed\x20to\x20download\x20export\x20file','eKaAk':_0x4cad12(0xd3),'jBAvR':'File\x20not\x20ready\x20or\x20not\x20found.\x20Check\x20job\x20status\x20first.'},{job_id:_0x55b9a8}=_0x4b577c[_0x4cad12(0xc0)];if(!_0x55b9a8)return _0xd80904['status'](0x190)['json']({'success':![],'error':_0x4cad12(0xb6)});const _0x231e76=await exportService[_0x4cad12(0xd8)](_0x55b9a8);if(!_0x231e76)return _0xd80904[_0x4cad12(0xbb)](0x194)['json']({'success':![],'error':_0x12fe5f[_0x4cad12(0xa8)]});_0xd80904[_0x4cad12(0xcd)](_0x231e76,''+path[_0x4cad12(0xda)](_0x231e76),_0x30db0e=>{const _0x3d29e=_0x4cad12;_0x30db0e?(logError(_0x30db0e,{'event':'export_download_error','jobId':_0x55b9a8},_0x12fe5f['DIuEA']),!_0xd80904['headersSent']&&_0xd80904[_0x3d29e(0xbb)](0x1f4)['json']({'success':![],'error':'Failed\x20to\x20download\x20file'})):logger['info']({'event':_0x3d29e(0xc4),'jobId':_0x55b9a8},_0x12fe5f[_0x3d29e(0xd6)]);});}static[a0_0x59b1fa(0xd2)](_0x34b1f1){const _0x110b72=a0_0x59b1fa,_0x2530fd={'TaXHq':_0x110b72(0xc3),'SPFvk':_0x110b72(0xd0)};_0x34b1f1[_0x110b72(0xd9)](_0x2530fd[_0x110b72(0xe2)],async(_0x3a039c,_0x491fc2)=>{const _0x59157b=_0x110b72;try{const _0x277c25=await exportService[_0x59157b(0xdb)]();_0x491fc2[_0x59157b(0xcf)]({'success':!![],'data':{'deleted':_0x277c25,'message':_0x2530fd['TaXHq']}});}catch(_0x45c09a){logError(_0x45c09a,{'event':'cleanup_error'},_0x59157b(0xa7)),_0x491fc2['status'](0x1f4)[_0x59157b(0xcf)]({'success':![],'error':_0x45c09a[_0x59157b(0xb8)]});}});}}module['exports']=ExportHandler;