@restforgejs/platform 4.3.8 → 5.0.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 (190) hide show
  1. package/bin/sdf-tools.exe +0 -0
  2. package/build-info.json +2 -2
  3. package/cli/consumer-deploy.js +1 -1
  4. package/cli/consumer.js +1 -1
  5. package/generators/cli/payload/migrate.js +96 -96
  6. package/generators/lib/dbschema-kit/apply-engine.js +211 -46
  7. package/generators/lib/dbschema-kit/diff-engine.js +14 -2
  8. package/generators/lib/dbschema-kit/emitters/alter-table.js +96 -2
  9. package/generators/lib/dbschema-kit/introspect-mapper.js +9 -0
  10. package/generators/lib/migrate/backend-payload-migrator.js +221 -221
  11. package/generators/lib/migrate/field-type-resolver.js +319 -319
  12. package/generators/lib/migrate/label-generator.js +38 -38
  13. package/generators/lib/migrate/migrate-runner.js +187 -187
  14. package/generators/lib/migrate/naming.js +43 -43
  15. package/generators/lib/migrate/sql-parser.js +124 -124
  16. package/generators/lib/templates/dashboard-catalog.js +1 -1
  17. package/generators/lib/templates/db-connection-env.js +1 -1
  18. package/generators/lib/templates/dbschema-catalog.js +1 -1
  19. package/generators/lib/templates/field-validation-catalog.js +1 -1
  20. package/generators/lib/templates/mysql-template.js +1 -1
  21. package/generators/lib/templates/oracle-template.js +1 -1
  22. package/generators/lib/templates/postgres-template.js +1 -1
  23. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  24. package/generators/lib/templates/sqlite-template.js +1 -1
  25. package/integrity-manifest.json +18 -18
  26. package/node_modules/brace-expansion/index.js +1 -1
  27. package/node_modules/brace-expansion/package.json +1 -1
  28. package/node_modules/dayjs/CHANGELOG.md +7 -0
  29. package/node_modules/dayjs/README.md +12 -10
  30. package/node_modules/dayjs/dayjs.min.js +1 -1
  31. package/node_modules/dayjs/esm/constant.js +1 -1
  32. package/node_modules/dayjs/esm/plugin/duration/index.js +5 -4
  33. package/node_modules/dayjs/locale.json +1 -1
  34. package/node_modules/dayjs/package.json +2 -2
  35. package/node_modules/dayjs/plugin/duration.js +1 -1
  36. package/node_modules/tmp/lib/tmp.js +37 -7
  37. package/node_modules/tmp/package.json +4 -16
  38. package/package.json +1 -1
  39. package/scripts/verify-integrity.js +1 -1
  40. package/server.js +1 -1
  41. package/src/components/handlers/adjust_handler.js +1 -1
  42. package/src/components/handlers/audit_handler.js +1 -1
  43. package/src/components/handlers/delete_handler.js +1 -1
  44. package/src/components/handlers/export_handler.js +1 -1
  45. package/src/components/handlers/import_handler.js +1 -1
  46. package/src/components/handlers/insert_handler.js +1 -1
  47. package/src/components/handlers/update_handler.js +1 -1
  48. package/src/components/handlers/upload_handler.js +1 -1
  49. package/src/components/handlers/workflow_handler.js +1 -1
  50. package/src/components/integrations/webhook.js +1 -1
  51. package/src/consumers/baseConsumer.js +1 -1
  52. package/src/consumers/declarativeMapper.js +1 -1
  53. package/src/consumers/handlers/apiHandler.js +1 -1
  54. package/src/consumers/handlers/consoleHandler.js +1 -1
  55. package/src/consumers/handlers/databaseHandler.js +1 -1
  56. package/src/consumers/handlers/index.js +1 -1
  57. package/src/consumers/handlers/kafkaHandler.js +1 -1
  58. package/src/consumers/index.js +1 -1
  59. package/src/consumers/messageTransformer.js +1 -1
  60. package/src/consumers/validator.js +1 -1
  61. package/src/core/db/dialect/base-dialect.js +1 -1
  62. package/src/core/db/dialect/index.js +1 -1
  63. package/src/core/db/dialect/mysql-dialect.js +1 -1
  64. package/src/core/db/dialect/oracle-dialect.js +1 -1
  65. package/src/core/db/dialect/postgres-dialect.js +1 -1
  66. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  67. package/src/core/db/flatten-helper.js +1 -1
  68. package/src/core/db/query-builder-error.js +1 -1
  69. package/src/core/db/query-builder.js +1 -1
  70. package/src/core/db/relation-helper.js +1 -1
  71. package/src/core/handlers/delete_handler.js +1 -1
  72. package/src/core/handlers/insert_handler.js +1 -1
  73. package/src/core/handlers/update_handler.js +1 -1
  74. package/src/core/models/base-model.js +1 -1
  75. package/src/core/utils/cache-manager.js +1 -1
  76. package/src/core/utils/component-engine.js +1 -1
  77. package/src/core/utils/context-builder.js +1 -1
  78. package/src/core/utils/datetime-formatter.js +1 -1
  79. package/src/core/utils/datetime-parser.js +1 -1
  80. package/src/core/utils/db.js +1 -1
  81. package/src/core/utils/logger.js +1 -1
  82. package/src/core/utils/payload-loader.js +1 -1
  83. package/src/core/utils/security-checks.js +1 -1
  84. package/src/middleware/body-options.js +1 -1
  85. package/src/middleware/cors.js +1 -1
  86. package/src/middleware/idempotency.js +1 -1
  87. package/src/middleware/rate-limiter.js +1 -1
  88. package/src/middleware/request-logger.js +1 -1
  89. package/src/middleware/security-headers.js +1 -1
  90. package/src/models/base-model-mysql.js +1 -1
  91. package/src/models/base-model-oracle.js +1 -1
  92. package/src/models/base-model-sqlite.js +1 -1
  93. package/src/models/base-model.js +1 -1
  94. package/src/pro/caching/redis-client.js +1 -1
  95. package/src/pro/caching/redis-helper.js +1 -1
  96. package/src/pro/consumers/baseConsumer.js +1 -1
  97. package/src/pro/consumers/declarativeMapper.js +1 -1
  98. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  99. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  100. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  101. package/src/pro/consumers/handlers/index.js +1 -1
  102. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  103. package/src/pro/consumers/index.js +1 -1
  104. package/src/pro/consumers/messageTransformer.js +1 -1
  105. package/src/pro/consumers/validator.js +1 -1
  106. package/src/pro/database/base-model-mysql.js +1 -1
  107. package/src/pro/database/base-model-oracle.js +1 -1
  108. package/src/pro/database/base-model-sqlite.js +1 -1
  109. package/src/pro/database/db-mysql.js +1 -1
  110. package/src/pro/database/db-oracle.js +1 -1
  111. package/src/pro/database/db-sqlite.js +1 -1
  112. package/src/pro/excel/excel-generator.js +1 -1
  113. package/src/pro/excel/excel-parser.js +1 -1
  114. package/src/pro/excel/export-service.js +1 -1
  115. package/src/pro/excel/export_handler.js +1 -1
  116. package/src/pro/excel/import-service.js +1 -1
  117. package/src/pro/excel/import-validator.js +1 -1
  118. package/src/pro/excel/import_handler.js +1 -1
  119. package/src/pro/excel/upsert-builder.js +1 -1
  120. package/src/pro/idgen/idgen-routes.js +1 -1
  121. package/src/pro/integrations/lookup-resolver.js +1 -1
  122. package/src/pro/integrations/upload-handler-v2.js +1 -1
  123. package/src/pro/integrations/upload-handler.js +1 -1
  124. package/src/pro/integrations/webhook.js +1 -1
  125. package/src/pro/locking/lock-routes.js +1 -1
  126. package/src/pro/locking/resource-lock-manager.js +1 -1
  127. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  128. package/src/pro/messaging/kafkaService.js +1 -1
  129. package/src/pro/messaging/messagehubService.js +1 -1
  130. package/src/pro/messaging/rabbitmqService.js +1 -1
  131. package/src/pro/scheduler/job-manager.js +1 -1
  132. package/src/pro/scheduler/job-routes.js +1 -1
  133. package/src/pro/scheduler/job-validator.js +1 -1
  134. package/src/pro/storage/base-storage-provider.js +1 -1
  135. package/src/pro/storage/file-metadata-helper.js +1 -1
  136. package/src/pro/storage/index.js +1 -1
  137. package/src/pro/storage/local-storage-provider.js +1 -1
  138. package/src/pro/storage/s3-storage-provider.js +1 -1
  139. package/src/pro/storage/upload-cleanup-job.js +1 -1
  140. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  141. package/src/pro/storage/upload-pending-tracker.js +1 -1
  142. package/src/pro/websocket/broadcast-helper.js +1 -1
  143. package/src/pro/websocket/index.js +1 -1
  144. package/src/pro/websocket/livesync-server.js +1 -1
  145. package/src/pro/websocket/ws-broadcaster.js +1 -1
  146. package/src/services/export-service.js +1 -1
  147. package/src/services/import-service.js +1 -1
  148. package/src/services/kafkaConsumerService.js +1 -1
  149. package/src/services/kafkaService.js +1 -1
  150. package/src/services/messagehubService.js +1 -1
  151. package/src/services/rabbitmqService.js +1 -1
  152. package/src/utils/cache-invalidation-registry.js +1 -1
  153. package/src/utils/cache-manager.js +1 -1
  154. package/src/utils/component-engine.js +1 -1
  155. package/src/utils/config-extractor.js +1 -1
  156. package/src/utils/consumerLogger.js +1 -1
  157. package/src/utils/context-builder.js +1 -1
  158. package/src/utils/dashboard-helpers.js +1 -1
  159. package/src/utils/dateHelper.js +1 -1
  160. package/src/utils/datetime-formatter.js +1 -1
  161. package/src/utils/datetime-parser.js +1 -1
  162. package/src/utils/db-bootstrap.js +1 -1
  163. package/src/utils/db-mysql.js +1 -1
  164. package/src/utils/db-oracle.js +1 -1
  165. package/src/utils/db-sqlite.js +1 -1
  166. package/src/utils/db.js +1 -1
  167. package/src/utils/demo-generator.js +1 -1
  168. package/src/utils/excel-generator.js +1 -1
  169. package/src/utils/excel-parser.js +1 -1
  170. package/src/utils/file-watcher.js +1 -1
  171. package/src/utils/id-generator.js +1 -1
  172. package/src/utils/idempotency-manager.js +1 -1
  173. package/src/utils/import-validator.js +1 -1
  174. package/src/utils/license-client.js +1 -1
  175. package/src/utils/lock-manager.js +1 -1
  176. package/src/utils/logger.js +1 -1
  177. package/src/utils/lookup-resolver.js +1 -1
  178. package/src/utils/payload-loader.js +1 -1
  179. package/src/utils/processor-response.js +1 -1
  180. package/src/utils/rabbitmq.js +1 -1
  181. package/src/utils/redis-client.js +1 -1
  182. package/src/utils/redis-helper.js +1 -1
  183. package/src/utils/request-scope.js +1 -1
  184. package/src/utils/security-checks.js +1 -1
  185. package/src/utils/service-resolver.js +1 -1
  186. package/src/utils/shutdown-coordinator.js +1 -1
  187. package/src/utils/trusted-keys.js +1 -1
  188. package/src/utils/upload-handler.js +1 -1
  189. package/src/utils/upsert-builder.js +1 -1
  190. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x3a1681=a0_0x3da6;(function(_0x391796,_0x4150c8){const _0x3c1f93=a0_0x3da6,_0x1f4637=_0x391796();while(!![]){try{const _0x5e2d5d=-parseInt(_0x3c1f93(0x1f9))/0x1*(-parseInt(_0x3c1f93(0x1a8))/0x2)+parseInt(_0x3c1f93(0x1e7))/0x3*(parseInt(_0x3c1f93(0x1a4))/0x4)+parseInt(_0x3c1f93(0x1d9))/0x5*(parseInt(_0x3c1f93(0x1eb))/0x6)+-parseInt(_0x3c1f93(0x1e9))/0x7+parseInt(_0x3c1f93(0x1c2))/0x8*(-parseInt(_0x3c1f93(0x1b0))/0x9)+-parseInt(_0x3c1f93(0x1b9))/0xa*(parseInt(_0x3c1f93(0x1b6))/0xb)+-parseInt(_0x3c1f93(0x1af))/0xc*(-parseInt(_0x3c1f93(0x1d5))/0xd);if(_0x5e2d5d===_0x4150c8)break;else _0x1f4637['push'](_0x1f4637['shift']());}catch(_0x460d71){_0x1f4637['push'](_0x1f4637['shift']());}}}(a0_0x5ed0,0x8b1e0));const oracledb=require('oracledb'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x3a1681(0x1d4));function a0_0x5ed0(){const _0x25c209=['CM93CW','s3vItfC','rNbctvi','CMz5z2K','yxv0B0nVBw1PDa','Cg9VBe1HEa','DhjHBNnHy3rPB25FzxjYB3i','v09lsNm','mtiWnJm1Buv3Du5Z','Bg9JywXOB3n0','BwvZC2fNzq','uKfOwLa','zgvIDwC','zw52','B3jHy2XLx3bVB2XFzxjYB3i','u0Lhsu5u','BgfZDfjVD2LK','q2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','rMTXBgy','Cg9VBe1PBG','CM93C0fMzMvJDgvK','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5Nie9YywnSzsbJB25Uzwn0Aw9UihbVB2WUlI4','txPbD08','tw1prgK','Aw5MBW','zhjXvem','CgfYyw1Z','mte3mtK2DM5RywPI','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','y2XVC2u','t3jHy2XLifnrtcbfCNjVCJOG','mtHLD25Vtfa','ihf1zxjPzxmP','B3jHy2XL','ufHStwC','zMv0y2HbC1n0CMLUzW','Bw1lweS','tKD1s0W','mtKYuhj0vhLT','otm3mdHOyvbes2e','qwX2yKe','r2vHrhC','qwn0AxzL','twvMsMG','zxHPDa','mtf5vfzdBKS','z2v0q29UBMvJDgLVBG','uM5su0K','ntm5mJmZmgvOB05JBa','z2v0ug9VBfn0yxrPC3rPy3m','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJBg9Zzwq','zxHLy3v0zvrYyw5Zywn0Aw9U','y29UzMLN','BgvUz3rO','BxmSia','tKnmt0i','uwHWt3q','mZi4Cfv3AfLX','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','rejFue9ptf9nqvG','B3jHy2XLx2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','rgXmyKe','rejFtKfnrq','CM9SBgjHy2S','t3jHy2XLienVBM5Ly3rPB24Gu3rYAw5NoIa','mtuYmq','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','C3rHCNq','y29TBwL0','rLnYCw0','rxjYB3iGy2XVC2LUzYbpCMfJBguGDhjHBNnHy3rPB24Gy29UBMvJDgLVBJOG','wgTvre4','rejFvvnfuG','r3blwgS','rejFse9tva','lI9SB2DNzxi','otqWoti3CujOrMfO','q0XpqG','B3jHy2XLx3nODxrKB3DU','rejFue9ptf9usu1ft1vu','mJmZmfHvvxnuuq','rejFue9ptf9jtKnsru1ftLq','mhW0Fdf8mNWZ','zxHLy3v0zq','Cg9VBa','zxjYB3joDw0','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','zMv0y2HbC0j1zMzLCG','C3vIC3rYAw5N','C3fS','v3PAuK0','yMrIvKe','y2XVC2vqB29S','DgLszeW','owTMvhnbBq','u0Lhvevstq','nJC0nZy3mwf6AeHfyG','t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','mJe2nMH2zvP4tG','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','C3rSu0G','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDwnJzxnZ','x25SC1jLywr5','y3jLyxrLug9VBa'];a0_0x5ed0=function(){return _0x25c209;};return a0_0x5ed0();}oracledb[a0_0x3a1681(0x1ac)]=[oracledb[a0_0x3a1681(0x1d6)],oracledb[a0_0x3a1681(0x1c0)]],oracledb[a0_0x3a1681(0x1e0)]=[oracledb['BLOB']];async function ensureNlsReady(_0x4497f8){const _0x32d2bf=a0_0x3a1681,_0x2ca494={'NXTBV':_0x32d2bf(0x1db)},_0x4907b5=_0x2ca494['NXTBV']['split']('|');let _0x2828c1=0x0;while(!![]){switch(_0x4907b5[_0x2828c1++]){case'0':if(_0x4497f8[_0x32d2bf(0x1ef)])return;continue;case'1':await _0x4497f8[_0x32d2bf(0x1dc)]('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3\x27');continue;case'2':await _0x4497f8['execute']('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_TZ_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3TZH:TZM\x27');continue;case'3':_0x4497f8['_nlsReady']=!![];continue;case'4':await _0x4497f8['execute']('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27');continue;}break;}}class OracleDatabase{constructor(){const _0x2e0d6e=a0_0x3a1681,_0x5a1219={'PXlMg':function(_0x4c09f0,_0x4674da){return _0x4c09f0(_0x4674da);},'MmODi':function(_0x453fb1,_0x1c6daa){return _0x453fb1(_0x1c6daa);},'MefJh':_0x2e0d6e(0x1fa),'AFaTn':'1521'};this['pool']=null,this[_0x2e0d6e(0x1bd)]={'user':process['env'][_0x2e0d6e(0x1d1)]||'hr','password':process[_0x2e0d6e(0x1fe)]['DB_PASSWORD']||'hr','connectString':this[_0x2e0d6e(0x1df)](),'poolMin':_0x5a1219[_0x2e0d6e(0x1ab)](parseInt,process['env']['DB_POOL_MIN'])||0x2,'poolMax':_0x5a1219[_0x2e0d6e(0x1ab)](parseInt,process[_0x2e0d6e(0x1fe)][_0x2e0d6e(0x1c4)])||0xa,'poolIncrement':parseInt(process[_0x2e0d6e(0x1fe)][_0x2e0d6e(0x1da)])||0x1,'poolTimeout':_0x5a1219[_0x2e0d6e(0x208)](parseInt,process[_0x2e0d6e(0x1fe)][_0x2e0d6e(0x1d8)])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x2e0d6e(0x1d6)],oracledb['NCLOB']],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process['env'][_0x2e0d6e(0x1d3)]||_0x5a1219[_0x2e0d6e(0x1b4)],'port':process[_0x2e0d6e(0x1fe)]['DB_PORT']||_0x5a1219['AFaTn'],'database':process[_0x2e0d6e(0x1fe)][_0x2e0d6e(0x1c7)]||'XE','type':'oracle','user':this['config']['user'],'poolMin':this[_0x2e0d6e(0x1bd)]['poolMin'],'poolMax':this[_0x2e0d6e(0x1bd)][_0x2e0d6e(0x1f6)]});}['buildConnectionString'](){const _0x105df6=a0_0x3a1681,_0x4535c0={'fZgFw':_0x105df6(0x1ca),'GpKXk':'oracle_connection_string'},_0x3f4265=process['env'][_0x105df6(0x1d3)]||'localhost',_0x2d269b=process['env']['DB_PORT']||_0x4535c0['fZgFw'],_0x144b6a=process[_0x105df6(0x1fe)][_0x105df6(0x1c7)]||'XE',_0x4de6b0='//'+_0x3f4265+':'+_0x2d269b+'/'+_0x144b6a;return logger['debug']({'event':_0x4535c0[_0x105df6(0x1d2)],'connectionString':_0x4de6b0},_0x105df6(0x1c9)+_0x4de6b0),_0x4de6b0;}async['initializePool'](){const _0x160713=a0_0x3a1681,_0x85bc92={'mmKXK':'oracle_pool_exists','tiRdL':'Oracle\x20connection\x20pool\x20sudah\x20ada','rfygi':'Creating\x20Oracle\x20connection\x20pool...','Fkqlf':'oracle_pool_created','FSrqm':'Oracle\x20connection\x20pool\x20created\x20successfully'};try{if(this[_0x160713(0x1dd)]){logger[_0x160713(0x1fd)]({'event':_0x85bc92[_0x160713(0x1ad)]},_0x85bc92[_0x160713(0x1e6)]);return;}logger[_0x160713(0x209)]({'event':'oracle_pool_creating'},_0x85bc92[_0x160713(0x1f4)]),this['pool']=await oracledb[_0x160713(0x1f0)](this['config']),logger['info']({'event':_0x85bc92[_0x160713(0x203)]},_0x85bc92[_0x160713(0x1ce)]),await this['testConnection']();}catch(_0x286d80){logError(_0x286d80,{'event':_0x160713(0x1ff)},'Error\x20saat\x20membuat\x20Oracle\x20connection\x20pool:\x20'+_0x286d80['message']);throw _0x286d80;}}async['testConnection'](){const _0x1369ad=a0_0x3a1681,_0x17030c={'stlSH':_0x1369ad(0x1ee),'XkUDN':function(_0x16c43e,_0x8634ff,_0x42e50b,_0x59c5d3){return _0x16c43e(_0x8634ff,_0x42e50b,_0x59c5d3);},'bdbVA':'oracle_test_connection_close_error'};let _0x2638af;try{logger[_0x1369ad(0x1fd)]({'event':'oracle_connection_test_start'},'Testing\x20Oracle\x20database\x20connection...'),_0x2638af=await this[_0x1369ad(0x1dd)]['getConnection'](),await ensureNlsReady(_0x2638af);const _0x5726c8=await _0x2638af['execute']('SELECT\x20SYSDATE\x20as\x20current_date,\x20USER\x20as\x20current_user\x20FROM\x20DUAL');logger[_0x1369ad(0x209)]({'event':_0x17030c[_0x1369ad(0x1ed)],'currentDate':_0x5726c8['rows'][0x0][0x0],'currentUser':_0x5726c8[_0x1369ad(0x1f1)][0x0][0x1]},_0x1369ad(0x1cb)+_0x5726c8[_0x1369ad(0x1f1)][0x0][0x1]);}catch(_0x12a98b){_0x17030c[_0x1369ad(0x1d0)](logError,_0x12a98b,{'event':'oracle_connection_test_failed'},_0x1369ad(0x1ec)+_0x12a98b['message']);throw _0x12a98b;}finally{if(_0x2638af)try{await _0x2638af[_0x1369ad(0x1a6)]();}catch(_0x1b9e92){_0x17030c[_0x1369ad(0x1d0)](logError,_0x1b9e92,{'event':_0x17030c[_0x1369ad(0x1e4)]},'Error\x20closing\x20test\x20connection:\x20'+_0x1b9e92[_0x1369ad(0x1fb)]);}}}async['executeQuery'](_0x379e46,_0x5cf832=[],_0x543afa={}){const _0x165360=a0_0x3a1681,_0x51cccc={'WofHW':function(_0x2204b6,_0x5775b9){return _0x2204b6!==_0x5775b9;},'RnRSI':function(_0x40ad6a){return _0x40ad6a();},'FpBMR':'oracle','rYtrD':function(_0x56664e,_0xb173c3,_0x1c7774,_0x49c679){return _0x56664e(_0xb173c3,_0x1c7774,_0x49c679);},'ujWbf':function(_0x385ee5,_0x34ae20,_0x2ecb07,_0x327f3b){return _0x385ee5(_0x34ae20,_0x2ecb07,_0x327f3b);},'DlLbA':_0x165360(0x1c5)};let _0x189d1f;const _0x353f61=startQueryTimer();try{!this[_0x165360(0x1dd)]&&await this['initializePool']();_0x189d1f=await this[_0x165360(0x1dd)][_0x165360(0x1b7)](),await ensureNlsReady(_0x189d1f);const _0x1e1624={'outFormat':oracledb['OUT_FORMAT_OBJECT'],'autoCommit':_0x51cccc['WofHW'](_0x543afa[_0x165360(0x1f5)],undefined)?_0x543afa['autoCommit']:!![],..._0x543afa},_0x2b49ca=await _0x189d1f['execute'](_0x379e46,_0x5cf832,_0x1e1624),_0x1687c6=_0x51cccc[_0x165360(0x1b8)](_0x353f61),_0x152f12=_0x2b49ca['rows']?_0x2b49ca[_0x165360(0x1f1)][_0x165360(0x1be)]:_0x2b49ca[_0x165360(0x205)];return logQuery(_0x379e46,_0x5cf832,{'duration':_0x1687c6,'rowsAffected':_0x152f12,'dbType':_0x51cccc[_0x165360(0x1f3)]}),_0x2b49ca['rows']?_0x2b49ca[_0x165360(0x1f1)]:{'rowsAffected':_0x2b49ca['rowsAffected'],'lastRowid':_0x2b49ca[_0x165360(0x201)]};}catch(_0x125417){const _0x1932b3=_0x353f61();_0x51cccc['rYtrD'](logError,_0x125417,{'event':'sql_error','query':_0x379e46[_0x165360(0x1e1)](0x0,0x1f4),'paramCount':_0x5cf832['length'],'durationMs':_0x1932b3,'code':_0x125417['errorNum'],'dbType':_0x51cccc[_0x165360(0x1f3)]},_0x165360(0x1a7)+_0x125417['message']);throw _0x125417;}finally{if(_0x189d1f)try{await _0x189d1f['close']();}catch(_0x2f3ec8){_0x51cccc['ujWbf'](logError,_0x2f3ec8,{'event':_0x51cccc[_0x165360(0x1c6)]},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x2f3ec8[_0x165360(0x1fb)]);}}}async[a0_0x3a1681(0x1bc)](_0x2de9b1){const _0x315d91=a0_0x3a1681,_0x5d239f={'RAhZP':function(_0x127d49,_0x5285b9){return _0x127d49(_0x5285b9);},'NGuKL':function(_0x286680){return _0x286680();},'AlvbA':_0x315d91(0x1aa),'QhpOt':function(_0x3f1ade,_0x834498,_0x2bf538){return _0x3f1ade(_0x834498,_0x2bf538);},'GeaDw':function(_0x2d5737){return _0x2d5737();},'XMOSB':function(_0x319039,_0x12f9f8,_0x57adff,_0x47d23d){return _0x319039(_0x12f9f8,_0x57adff,_0x47d23d);},'MzAwO':'rollback_error','nCkPT':function(_0x211fc3,_0x2adafe,_0x56ce21,_0x18fbc5){return _0x211fc3(_0x2adafe,_0x56ce21,_0x18fbc5);}};let _0x248580;const _0x53093d=startQueryTimer();try{!this[_0x315d91(0x1dd)]&&await this['initializePool']();_0x248580=await this[_0x315d91(0x1dd)][_0x315d91(0x1b7)](),await _0x5d239f[_0x315d91(0x1fc)](ensureNlsReady,_0x248580),logTransaction(_0x315d91(0x1cc),_0x2de9b1['length']);const _0x546b09=[];for(const _0x3cb62f of _0x2de9b1){const _0x42097f=_0x5d239f[_0x315d91(0x1ae)](startQueryTimer),_0x1d428f=await _0x248580['execute'](_0x3cb62f[_0x315d91(0x1e2)],_0x3cb62f['params']||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x2c57ec=_0x42097f(),_0x3bfd46=_0x1d428f['rows']?_0x1d428f[_0x315d91(0x1f1)][_0x315d91(0x1be)]:_0x1d428f[_0x315d91(0x205)];logQuery(_0x3cb62f['sql'],_0x3cb62f[_0x315d91(0x20b)]||[],{'duration':_0x2c57ec,'rowsAffected':_0x3bfd46,'dbType':_0x5d239f[_0x315d91(0x1b1)]}),_0x546b09['push'](_0x1d428f);}await _0x248580[_0x315d91(0x1cd)]();const _0x17f797=_0x53093d();return _0x5d239f[_0x315d91(0x1c1)](logTransaction,'commit',_0x2de9b1['length']),logger['info']({'event':'transaction_complete','queryCount':_0x2de9b1['length'],'totalDurationMs':_0x17f797,'dbType':_0x5d239f['AlvbA']},'Oracle\x20transaction\x20committed\x20('+_0x17f797+_0x315d91(0x1bf)+_0x2de9b1['length']+_0x315d91(0x1a9)),_0x546b09;}catch(_0x4bf173){const _0x3e50c8=_0x5d239f[_0x315d91(0x1b2)](_0x53093d);logError(_0x4bf173,{'event':_0x315d91(0x1f7),'queryCount':_0x2de9b1['length'],'totalDurationMs':_0x3e50c8,'code':_0x4bf173[_0x315d91(0x1de)],'dbType':_0x5d239f['AlvbA']},_0x315d91(0x1ea)+_0x4bf173['message']);if(_0x248580)try{await _0x248580[_0x315d91(0x1c8)](),logTransaction('rollback',_0x2de9b1[_0x315d91(0x1be)]);}catch(_0x13e506){_0x5d239f['XMOSB'](logError,_0x13e506,{'event':_0x5d239f[_0x315d91(0x207)],'dbType':_0x315d91(0x1aa)},'Error\x20rolling\x20back\x20Oracle\x20transaction:\x20'+_0x13e506['message']);}throw _0x4bf173;}finally{if(_0x248580)try{await _0x248580[_0x315d91(0x1a6)]();}catch(_0x3b7413){_0x5d239f['nCkPT'](logError,_0x3b7413,{'event':'oracle_transaction_connection_close_error'},_0x315d91(0x1cf)+_0x3b7413[_0x315d91(0x1fb)]);}}}async['closePool'](){const _0x456369=a0_0x3a1681,_0x4cc283={'robPK':_0x456369(0x202),'xEFyJ':'oracle_pool_closed','KubLW':_0x456369(0x1bb),'EbHmR':'oracle_pool_close_error'};try{this['pool']&&(logger['info']({'event':'oracle_pool_closing'},_0x4cc283['robPK']),await this['pool']['close'](0xa),this['pool']=null,logger[_0x456369(0x209)]({'event':_0x4cc283['xEFyJ']},_0x4cc283[_0x456369(0x1f2)]));}catch(_0x4b7c97){logError(_0x4b7c97,{'event':_0x4cc283['EbHmR']},'Error\x20closing\x20Oracle\x20connection\x20pool:\x20'+_0x4b7c97[_0x456369(0x1fb)]);throw _0x4b7c97;}}[a0_0x3a1681(0x1ba)](){const _0xa9070=a0_0x3a1681,_0xf554ca={'WzZRM':'Pool\x20not\x20initialized','EEaPw':_0xa9070(0x1b3)};if(!this['pool'])return{'status':_0xf554ca[_0xa9070(0x1e3)]};return{'connectionsInUse':this[_0xa9070(0x1dd)]['connectionsInUse'],'connectionsOpen':this[_0xa9070(0x1dd)]['connectionsOpen'],'poolAlias':this['pool']['poolAlias'],'poolMin':this[_0xa9070(0x1dd)][_0xa9070(0x204)],'poolMax':this['pool']['poolMax'],'poolIncrement':this[_0xa9070(0x1dd)]['poolIncrement'],'poolTimeout':this['pool']['poolTimeout'],'status':_0xf554ca['EEaPw']};}}const oracleDb=new OracleDatabase();function a0_0x3da6(_0x12afc6,_0x32980b){_0x12afc6=_0x12afc6-0x1a4;const _0x5ed0d7=a0_0x5ed0();let _0x3da634=_0x5ed0d7[_0x12afc6];if(a0_0x3da6['FKMBFa']===undefined){var _0x1964b2=function(_0x43a007){const _0x5422f4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x112a9d='',_0x252c93='';for(let _0x1ddb43=0x0,_0x2ab518,_0x3ae256,_0x4f9ff5=0x0;_0x3ae256=_0x43a007['charAt'](_0x4f9ff5++);~_0x3ae256&&(_0x2ab518=_0x1ddb43%0x4?_0x2ab518*0x40+_0x3ae256:_0x3ae256,_0x1ddb43++%0x4)?_0x112a9d+=String['fromCharCode'](0xff&_0x2ab518>>(-0x2*_0x1ddb43&0x6)):0x0){_0x3ae256=_0x5422f4['indexOf'](_0x3ae256);}for(let _0x4b9054=0x0,_0x3c712a=_0x112a9d['length'];_0x4b9054<_0x3c712a;_0x4b9054++){_0x252c93+='%'+('00'+_0x112a9d['charCodeAt'](_0x4b9054)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x252c93);};a0_0x3da6['CNvpIN']=_0x1964b2,a0_0x3da6['jeytsp']={},a0_0x3da6['FKMBFa']=!![];}const _0x4d15a0=_0x5ed0d7[0x0],_0x450bc2=_0x12afc6+_0x4d15a0,_0x15b60f=a0_0x3da6['jeytsp'][_0x450bc2];return!_0x15b60f?(_0x3da634=a0_0x3da6['CNvpIN'](_0x3da634),a0_0x3da6['jeytsp'][_0x450bc2]=_0x3da634):_0x3da634=_0x15b60f,_0x3da634;}process['on'](a0_0x3a1681(0x200),async()=>{const _0x315e33=a0_0x3a1681,_0xa47604={'CprnX':'oracle_shutdown','drqTC':'SIGINT','WOKJs':function(_0x365927,_0x38f13b,_0x3bcc89,_0x4c0dec){return _0x365927(_0x38f13b,_0x3bcc89,_0x4c0dec);}};logger[_0x315e33(0x209)]({'event':_0xa47604['CprnX'],'signal':_0xa47604[_0x315e33(0x20a)]},_0x315e33(0x206));try{await oracleDb[_0x315e33(0x1e5)](),process['exit'](0x0);}catch(_0x84fa21){_0xa47604[_0x315e33(0x1f8)](logError,_0x84fa21,{'event':_0x315e33(0x1c3),'signal':_0xa47604['drqTC']},_0x315e33(0x1a5)+_0x84fa21[_0x315e33(0x1fb)]),process['exit'](0x1);}}),process['on'](a0_0x3a1681(0x1e8),async()=>{const _0x1c44ad=a0_0x3a1681,_0x22b295={'KigSc':_0x1c44ad(0x1d7),'fGKVt':function(_0x4da8d7,_0x205b07,_0x45aaaa,_0x16c3f5){return _0x4da8d7(_0x205b07,_0x45aaaa,_0x16c3f5);}};logger['info']({'event':_0x22b295['KigSc'],'signal':_0x1c44ad(0x1e8)},'Received\x20SIGTERM,\x20closing\x20Oracle\x20connection\x20pool...');try{await oracleDb[_0x1c44ad(0x1e5)](),process[_0x1c44ad(0x1b5)](0x0);}catch(_0x1d28c8){_0x22b295['fGKVt'](logError,_0x1d28c8,{'event':_0x1c44ad(0x1c3),'signal':_0x1c44ad(0x1e8)},_0x1c44ad(0x1a5)+_0x1d28c8['message']),process['exit'](0x1);}}),module['exports']=oracleDb;
1
+ const a0_0xe35689=a0_0x40c9;function a0_0x40c9(_0x51de9e,_0x6445dd){_0x51de9e=_0x51de9e-0xd3;const _0x3a9ec8=a0_0x3a9e();let _0x40c940=_0x3a9ec8[_0x51de9e];if(a0_0x40c9['xXiIQU']===undefined){var _0x575da5=function(_0x6c118e){const _0x4f8583='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x11c919='',_0x38c4fa='';for(let _0x290843=0x0,_0x554dcf,_0x2b23db,_0x4c1956=0x0;_0x2b23db=_0x6c118e['charAt'](_0x4c1956++);~_0x2b23db&&(_0x554dcf=_0x290843%0x4?_0x554dcf*0x40+_0x2b23db:_0x2b23db,_0x290843++%0x4)?_0x11c919+=String['fromCharCode'](0xff&_0x554dcf>>(-0x2*_0x290843&0x6)):0x0){_0x2b23db=_0x4f8583['indexOf'](_0x2b23db);}for(let _0x32e6b4=0x0,_0x5d2a47=_0x11c919['length'];_0x32e6b4<_0x5d2a47;_0x32e6b4++){_0x38c4fa+='%'+('00'+_0x11c919['charCodeAt'](_0x32e6b4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x38c4fa);};a0_0x40c9['qultip']=_0x575da5,a0_0x40c9['JrazMR']={},a0_0x40c9['xXiIQU']=!![];}const _0x2f822b=_0x3a9ec8[0x0],_0x3c2594=_0x51de9e+_0x2f822b,_0x5dfbff=a0_0x40c9['JrazMR'][_0x3c2594];return!_0x5dfbff?(_0x40c940=a0_0x40c9['qultip'](_0x40c940),a0_0x40c9['JrazMR'][_0x3c2594]=_0x40c940):_0x40c940=_0x5dfbff,_0x40c940;}(function(_0x463284,_0x4924be){const _0x9c426d=a0_0x40c9,_0x2cdda3=_0x463284();while(!![]){try{const _0x3012dc=-parseInt(_0x9c426d(0x108))/0x1+-parseInt(_0x9c426d(0xf3))/0x2*(parseInt(_0x9c426d(0xf1))/0x3)+parseInt(_0x9c426d(0x11e))/0x4*(-parseInt(_0x9c426d(0xda))/0x5)+parseInt(_0x9c426d(0xed))/0x6+parseInt(_0x9c426d(0x106))/0x7+parseInt(_0x9c426d(0x12d))/0x8+parseInt(_0x9c426d(0x125))/0x9;if(_0x3012dc===_0x4924be)break;else _0x2cdda3['push'](_0x2cdda3['shift']());}catch(_0x464926){_0x2cdda3['push'](_0x2cdda3['shift']());}}}(a0_0x3a9e,0x698f4));const oracledb=require(a0_0xe35689(0xdd)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0xe35689(0xfe));oracledb['fetchAsString']=[oracledb['CLOB'],oracledb[a0_0xe35689(0x10b)]],oracledb['fetchAsBuffer']=[oracledb[a0_0xe35689(0x10e)]];async function ensureNlsReady(_0x48fbb9){const _0x533c3e=a0_0xe35689,_0x3f076a={'wGAte':_0x533c3e(0x12b)},_0x14ac85=_0x3f076a['wGAte']['split']('|');let _0x43f8f5=0x0;while(!![]){switch(_0x14ac85[_0x43f8f5++]){case'0':await _0x48fbb9[_0x533c3e(0x12f)](_0x533c3e(0x113));continue;case'1':_0x48fbb9['_nlsReady']=!![];continue;case'2':await _0x48fbb9['execute'](_0x533c3e(0x10f));continue;case'3':await _0x48fbb9['execute']('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27');continue;case'4':if(_0x48fbb9['_nlsReady'])return;continue;}break;}}class OracleDatabase{constructor(){const _0x3d4a07=a0_0xe35689,_0x15f697={'tlIur':function(_0x219106,_0x382453){return _0x219106(_0x382453);},'sKGbh':function(_0x4680e7,_0x5f1471){return _0x4680e7(_0x5f1471);},'XfiSk':'localhost'};this[_0x3d4a07(0x111)]=null,this[_0x3d4a07(0xef)]={'user':process[_0x3d4a07(0x130)][_0x3d4a07(0x10d)]||'hr','password':process[_0x3d4a07(0x130)]['DB_PASSWORD']||'hr','connectString':this['buildConnectionString'](),'poolMin':parseInt(process[_0x3d4a07(0x130)]['DB_POOL_MIN'])||0x2,'poolMax':parseInt(process[_0x3d4a07(0x130)]['DB_POOL_MAX'])||0xa,'poolIncrement':parseInt(process['env'][_0x3d4a07(0xe9)])||0x1,'poolTimeout':_0x15f697[_0x3d4a07(0x110)](parseInt,process['env']['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x3d4a07(0xfa)],oracledb[_0x3d4a07(0x10b)]],'fetchAsBuffer':[oracledb[_0x3d4a07(0x10e)]]},_0x15f697[_0x3d4a07(0xe2)](logDatabaseConfig,{'host':process[_0x3d4a07(0x130)]['DB_HOST']||_0x15f697['XfiSk'],'port':process['env'][_0x3d4a07(0x100)]||'1521','database':process[_0x3d4a07(0x130)][_0x3d4a07(0xe5)]||'XE','type':'oracle','user':this[_0x3d4a07(0xef)]['user'],'poolMin':this[_0x3d4a07(0xef)][_0x3d4a07(0xd9)],'poolMax':this[_0x3d4a07(0xef)]['poolMax']});}[a0_0xe35689(0x10a)](){const _0x2eed3d=a0_0xe35689,_0x420c1b={'ycZjw':'oracle_connection_string'},_0x10266b=process['env']['DB_HOST']||'localhost',_0x470903=process['env'][_0x2eed3d(0x100)]||_0x2eed3d(0x103),_0x1f7b19=process[_0x2eed3d(0x130)]['DB_NAME']||'XE',_0x5480be='//'+_0x10266b+':'+_0x470903+'/'+_0x1f7b19;return logger['debug']({'event':_0x420c1b[_0x2eed3d(0xd5)],'connectionString':_0x5480be},'Oracle\x20Connection\x20String:\x20'+_0x5480be),_0x5480be;}async[a0_0xe35689(0x120)](){const _0x52f482=a0_0xe35689,_0x42806b={'SKgKm':_0x52f482(0xdb),'sbLTC':_0x52f482(0x112),'UMddF':function(_0x3f9d3a,_0x12b244,_0x381c09,_0x2cc5cf){return _0x3f9d3a(_0x12b244,_0x381c09,_0x2cc5cf);},'TeUtg':'oracle_pool_error'};try{if(this[_0x52f482(0x111)]){logger[_0x52f482(0x105)]({'event':_0x52f482(0xee)},_0x42806b['SKgKm']);return;}logger['info']({'event':'oracle_pool_creating'},'Creating\x20Oracle\x20connection\x20pool...'),this[_0x52f482(0x111)]=await oracledb[_0x52f482(0xec)](this[_0x52f482(0xef)]),logger[_0x52f482(0xd3)]({'event':_0x42806b['sbLTC']},'Oracle\x20connection\x20pool\x20created\x20successfully'),await this[_0x52f482(0x101)]();}catch(_0x4b65f7){_0x42806b[_0x52f482(0xf6)](logError,_0x4b65f7,{'event':_0x42806b['TeUtg']},_0x52f482(0xe4)+_0x4b65f7[_0x52f482(0xf9)]);throw _0x4b65f7;}}async['testConnection'](){const _0x5c301c=a0_0xe35689,_0x565374={'tNCLw':_0x5c301c(0xe7),'KeVjT':_0x5c301c(0xe3),'abtHZ':function(_0xacd3f8,_0x177627,_0x4c671a,_0x3afac9){return _0xacd3f8(_0x177627,_0x4c671a,_0x3afac9);},'PtgVW':_0x5c301c(0xd8),'pDgnK':function(_0x28077d,_0x2fc28e,_0x3af4f4,_0x4f207c){return _0x28077d(_0x2fc28e,_0x3af4f4,_0x4f207c);}};let _0x168155;try{logger['debug']({'event':_0x565374[_0x5c301c(0xfc)]},_0x565374['KeVjT']),_0x168155=await this[_0x5c301c(0x111)][_0x5c301c(0xfb)](),await ensureNlsReady(_0x168155);const _0x11ac1b=await _0x168155['execute'](_0x5c301c(0x10c));logger['info']({'event':'oracle_connection_test_success','currentDate':_0x11ac1b['rows'][0x0][0x0],'currentUser':_0x11ac1b['rows'][0x0][0x1]},_0x5c301c(0xdc)+_0x11ac1b[_0x5c301c(0x118)][0x0][0x1]);}catch(_0x5622df){_0x565374[_0x5c301c(0xfd)](logError,_0x5622df,{'event':_0x565374['PtgVW']},_0x5c301c(0x122)+_0x5622df['message']);throw _0x5622df;}finally{if(_0x168155)try{await _0x168155[_0x5c301c(0x131)]();}catch(_0x1c4c47){_0x565374[_0x5c301c(0xf4)](logError,_0x1c4c47,{'event':_0x5c301c(0x102)},'Error\x20closing\x20test\x20connection:\x20'+_0x1c4c47['message']);}}}async['executeQuery'](_0x447910,_0x5ed70d=[],_0xb56858={}){const _0x373516=a0_0xe35689,_0x2bd0ba={'hTkKI':function(_0x3677f1){return _0x3677f1();},'DlAok':function(_0x408c49,_0x5e6de4){return _0x408c49!==_0x5e6de4;},'YkSaU':function(_0x5e9d11,_0x1e764f,_0xadbcf3,_0x59137a){return _0x5e9d11(_0x1e764f,_0xadbcf3,_0x59137a);},'RPPBv':'oracle_connection_close_error'};let _0x33a564;const _0x2fad3e=_0x2bd0ba['hTkKI'](startQueryTimer);try{!this['pool']&&await this['initializePool']();_0x33a564=await this[_0x373516(0x111)][_0x373516(0xfb)](),await ensureNlsReady(_0x33a564);const _0x18ad4f={'outFormat':oracledb['OUT_FORMAT_OBJECT'],'autoCommit':_0x2bd0ba[_0x373516(0x116)](_0xb56858[_0x373516(0xff)],undefined)?_0xb56858[_0x373516(0xff)]:!![],..._0xb56858},_0x5ae68f=await _0x33a564[_0x373516(0x12f)](_0x447910,_0x5ed70d,_0x18ad4f),_0x5c620f=_0x2fad3e(),_0x38bda0=_0x5ae68f['rows']?_0x5ae68f[_0x373516(0x118)]['length']:_0x5ae68f[_0x373516(0x119)];return logQuery(_0x447910,_0x5ed70d,{'duration':_0x5c620f,'rowsAffected':_0x38bda0,'dbType':'oracle'}),_0x5ae68f['rows']?_0x5ae68f['rows']:{'rowsAffected':_0x5ae68f[_0x373516(0x119)],'lastRowid':_0x5ae68f['lastRowid']};}catch(_0x1d1660){const _0xa7c75c=_0x2fad3e();_0x2bd0ba[_0x373516(0xd4)](logError,_0x1d1660,{'event':'sql_error','query':_0x447910['substring'](0x0,0x1f4),'paramCount':_0x5ed70d['length'],'durationMs':_0xa7c75c,'code':_0x1d1660['errorNum'],'dbType':'oracle'},'Oracle\x20SQL\x20Error:\x20'+_0x1d1660[_0x373516(0xf9)]);throw _0x1d1660;}finally{if(_0x33a564)try{await _0x33a564['close']();}catch(_0x5c7d5b){logError(_0x5c7d5b,{'event':_0x2bd0ba[_0x373516(0x11b)]},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x5c7d5b['message']);}}}async['executeTransaction'](_0x2a9216){const _0x20f8a2=a0_0xe35689,_0x11af8c={'Nasyw':function(_0x401c7b,_0x505651,_0x5c5b82){return _0x401c7b(_0x505651,_0x5c5b82);},'pgNZP':'start','UBclU':function(_0x9e06e0){return _0x9e06e0();},'LwkTJ':_0x20f8a2(0xde),'uJCts':_0x20f8a2(0x114),'TLRmF':function(_0x525c79,_0xc6b085,_0x411a00,_0x10846a){return _0x525c79(_0xc6b085,_0x411a00,_0x10846a);},'qNheq':'rollback','HZmmx':function(_0x852ea2,_0x24dc59,_0x450b9a,_0x1b166f){return _0x852ea2(_0x24dc59,_0x450b9a,_0x1b166f);},'mjPRp':'rollback_error','AzDDr':_0x20f8a2(0x129)};let _0x4ee34e;const _0xc60db1=startQueryTimer();try{!this['pool']&&await this[_0x20f8a2(0x120)]();_0x4ee34e=await this['pool'][_0x20f8a2(0xfb)](),await ensureNlsReady(_0x4ee34e),_0x11af8c[_0x20f8a2(0x128)](logTransaction,_0x11af8c['pgNZP'],_0x2a9216[_0x20f8a2(0x12e)]);const _0x110766=[];for(const _0x121e22 of _0x2a9216){const _0x395c53=_0x11af8c[_0x20f8a2(0xf5)](startQueryTimer),_0x308e40=await _0x4ee34e[_0x20f8a2(0x12f)](_0x121e22['sql'],_0x121e22[_0x20f8a2(0x11c)]||[],{'autoCommit':![],'outFormat':oracledb[_0x20f8a2(0x123)]}),_0x1cf544=_0x395c53(),_0x28963f=_0x308e40['rows']?_0x308e40['rows'][_0x20f8a2(0x12e)]:_0x308e40['rowsAffected'];logQuery(_0x121e22['sql'],_0x121e22[_0x20f8a2(0x11c)]||[],{'duration':_0x1cf544,'rowsAffected':_0x28963f,'dbType':_0x11af8c['LwkTJ']}),_0x110766['push'](_0x308e40);}await _0x4ee34e['commit']();const _0x2f10e6=_0xc60db1();return logTransaction(_0x20f8a2(0x109),_0x2a9216[_0x20f8a2(0x12e)]),logger['info']({'event':_0x11af8c[_0x20f8a2(0xf2)],'queryCount':_0x2a9216['length'],'totalDurationMs':_0x2f10e6,'dbType':_0x20f8a2(0xde)},'Oracle\x20transaction\x20committed\x20('+_0x2f10e6+_0x20f8a2(0xeb)+_0x2a9216['length']+'\x20queries)'),_0x110766;}catch(_0x1cf04c){const _0x506776=_0xc60db1();_0x11af8c['TLRmF'](logError,_0x1cf04c,{'event':_0x20f8a2(0xd7),'queryCount':_0x2a9216[_0x20f8a2(0x12e)],'totalDurationMs':_0x506776,'code':_0x1cf04c['errorNum'],'dbType':_0x11af8c[_0x20f8a2(0x12c)]},_0x20f8a2(0x107)+_0x1cf04c['message']);if(_0x4ee34e)try{await _0x4ee34e[_0x20f8a2(0xf7)](),logTransaction(_0x11af8c['qNheq'],_0x2a9216[_0x20f8a2(0x12e)]);}catch(_0x56c0de){_0x11af8c['HZmmx'](logError,_0x56c0de,{'event':_0x11af8c[_0x20f8a2(0x117)],'dbType':'oracle'},'Error\x20rolling\x20back\x20Oracle\x20transaction:\x20'+_0x56c0de[_0x20f8a2(0xf9)]);}throw _0x1cf04c;}finally{if(_0x4ee34e)try{await _0x4ee34e[_0x20f8a2(0x131)]();}catch(_0x2133ee){logError(_0x2133ee,{'event':_0x11af8c['AzDDr']},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x2133ee[_0x20f8a2(0xf9)]);}}}async['closePool'](){const _0x30147a=a0_0xe35689,_0x511f97={'LmOUN':'oracle_pool_closing','Opshf':'Closing\x20Oracle\x20connection\x20pool...','mJfui':_0x30147a(0x121),'EOVEQ':'oracle_pool_close_error'};try{this[_0x30147a(0x111)]&&(logger[_0x30147a(0xd3)]({'event':_0x511f97[_0x30147a(0x11a)]},_0x511f97[_0x30147a(0x126)]),await this[_0x30147a(0x111)]['close'](0xa),this['pool']=null,logger['info']({'event':_0x511f97[_0x30147a(0xea)]},'Oracle\x20connection\x20pool\x20closed'));}catch(_0x3858d0){logError(_0x3858d0,{'event':_0x511f97['EOVEQ']},_0x30147a(0x104)+_0x3858d0['message']);throw _0x3858d0;}}['getPoolStatistics'](){const _0x1f385f=a0_0xe35689,_0x364e77={'NcFio':'Pool\x20not\x20initialized','cMjmM':_0x1f385f(0x132)};if(!this[_0x1f385f(0x111)])return{'status':_0x364e77['NcFio']};return{'connectionsInUse':this[_0x1f385f(0x111)]['connectionsInUse'],'connectionsOpen':this['pool']['connectionsOpen'],'poolAlias':this[_0x1f385f(0x111)]['poolAlias'],'poolMin':this['pool'][_0x1f385f(0xd9)],'poolMax':this['pool'][_0x1f385f(0xe0)],'poolIncrement':this[_0x1f385f(0x111)][_0x1f385f(0x115)],'poolTimeout':this['pool'][_0x1f385f(0xd6)],'status':_0x364e77['cMjmM']};}}const oracleDb=new OracleDatabase();function a0_0x3a9e(){const _0x5f368c=['Cg9VBfrPBwvVDxq','DhjHBNnHy3rPB25FzxjYB3i','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','Cg9VBe1PBG','mtvRyw1eqKi','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbZDwrHAcbHzge','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','B3jHy2XLzgi','B3jHy2XL','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','Cg9VBe1HEa','u0Lhsu5u','C0ThyMG','vgvZDgLUzYbpCMfJBguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','rejFtKfnrq','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5Nie9YywnSzsbJB25Uzwn0Aw9UihbVB2WUlI4','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','rejFue9ptf9jtKnsru1ftLq','BuPMDwK','BxmSia','y3jLyxrLug9VBa','mZu0ndmWohLAuK9xAa','B3jHy2XLx3bVB2XFzxHPC3rZ','y29UzMLN','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','mZG0nti1vNPnvNnX','DuPdDhm','nNfODLPfvG','CerNBKS','vujJBfu','vu1Kzey','CM9SBgjHy2S','zxHWB3j0CW','BwvZC2fNzq','q0XpqG','z2v0q29UBMvJDgLVBG','De5dthC','ywj0sfO','lI9SB2DNzxi','yxv0B0nVBw1PDa','rejFue9sva','DgvZDenVBM5Ly3rPB24','B3jHy2XLx3rLC3rFy29UBMvJDgLVBL9JBg9Zzv9LCNjVCG','mtuYmq','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','zgvIDwC','mJCXmZa4ofnrA3LYsW','t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','ndu1mtaYwgzREKjq','y29TBwL0','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','tKnmt0i','u0vmrunuifnzu0rbveuGyxmGy3vYCMvUDf9KyxrLlcbvu0vsigfZign1CNjLBNrFDxnLCIbguK9niervquW','rejFvvnfuG','qKXpqG','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','DgXjDxi','Cg9VBa','B3jHy2XLx3bVB2XFy3jLyxrLza','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','DhjHBNnHy3rPB25Fy29TCgXLDgu','Cg9VBeLUy3jLBwvUDa','rgXbB2S','BwPquNa','CM93CW','CM93C0fMzMvJDgvK','tg1pvu4','uLbqqNy','CgfYyw1Z','B3LSvKq','ntKZmJeYEgLcvhzV','y2XVC2vqB29S','Aw5PDgLHBgL6zvbVB2W','B3jHy2XLx3bVB2XFy2XVC2vK','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','t1vux0zpuK1bvf9pqKPfq1q','CNjntxm','mZm3mJG3nM5zDKv6sG','t3bZAgy','B3jHy2XLx3nODxrKB3DU','tMfZExC','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','zxHPDa','nhWZFdj8mhWX','thDRveO','mJKXmdCZnLnxy29Uwq','BgvUz3rO','zxHLy3v0zq','zw52','y2XVC2u','qwn0AxzL','Aw5MBW','wwTtyvu','EwnAANC'];a0_0x3a9e=function(){return _0x5f368c;};return a0_0x3a9e();}process['on'](a0_0xe35689(0xe1),async()=>{const _0x67d225=a0_0xe35689,_0x23e799={'rrMMs':'oracle_shutdown','JBlrF':function(_0x529f19,_0xedd88,_0x546934,_0x3c46aa){return _0x529f19(_0xedd88,_0x546934,_0x3c46aa);}};logger['info']({'event':_0x23e799[_0x67d225(0x124)],'signal':_0x67d225(0xe1)},_0x67d225(0xe6));try{await oracleDb[_0x67d225(0x11f)](),process['exit'](0x0);}catch(_0x1d4e73){_0x23e799['JBlrF'](logError,_0x1d4e73,{'event':_0x67d225(0xe8),'signal':_0x67d225(0xe1)},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x1d4e73['message']),process[_0x67d225(0x12a)](0x1);}}),process['on']('SIGTERM',async()=>{const _0x6be9fe=a0_0xe35689,_0xf3fb5e={'wECqf':'SIGTERM','oylVD':_0x6be9fe(0xdf),'qQFgB':function(_0x3142a1,_0x32dab6,_0x4895e8,_0x363676){return _0x3142a1(_0x32dab6,_0x4895e8,_0x363676);}};logger[_0x6be9fe(0xd3)]({'event':_0x6be9fe(0x127),'signal':_0xf3fb5e['wECqf']},_0xf3fb5e[_0x6be9fe(0x11d)]);try{await oracleDb[_0x6be9fe(0x11f)](),process[_0x6be9fe(0x12a)](0x0);}catch(_0x3733e1){_0xf3fb5e['qQFgB'](logError,_0x3733e1,{'event':_0x6be9fe(0xe8),'signal':_0xf3fb5e['wECqf']},_0x6be9fe(0xf0)+_0x3733e1['message']),process[_0x6be9fe(0x12a)](0x1);}}),module[a0_0xe35689(0xf8)]=oracleDb;
@@ -1 +1 @@
1
- const a0_0x2940c9=a0_0x313b;(function(_0x2796de,_0x5358f1){const _0xe0f083=a0_0x313b,_0x60268e=_0x2796de();while(!![]){try{const _0x1252d0=parseInt(_0xe0f083(0xff))/0x1*(-parseInt(_0xe0f083(0xd7))/0x2)+parseInt(_0xe0f083(0xd6))/0x3+-parseInt(_0xe0f083(0xf3))/0x4*(parseInt(_0xe0f083(0xf2))/0x5)+parseInt(_0xe0f083(0x117))/0x6*(parseInt(_0xe0f083(0x121))/0x7)+-parseInt(_0xe0f083(0xd8))/0x8+-parseInt(_0xe0f083(0x10d))/0x9*(-parseInt(_0xe0f083(0xe1))/0xa)+parseInt(_0xe0f083(0xf9))/0xb;if(_0x1252d0===_0x5358f1)break;else _0x60268e['push'](_0x60268e['shift']());}catch(_0x15f915){_0x60268e['push'](_0x60268e['shift']());}}}(a0_0x3b12,0x46a1e));const Database=require('better-sqlite3'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x2940c9(0xfa));function a0_0x313b(_0x516b53,_0x2ce9b2){_0x516b53=_0x516b53-0xd4;const _0x3b1222=a0_0x3b12();let _0x313b1a=_0x3b1222[_0x516b53];if(a0_0x313b['onwphl']===undefined){var _0x13a613=function(_0x28b76a){const _0x1bba42='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5a57cd='',_0x13bb1b='';for(let _0x432e7e=0x0,_0x39e7c6,_0x3173f8,_0x2eb6c1=0x0;_0x3173f8=_0x28b76a['charAt'](_0x2eb6c1++);~_0x3173f8&&(_0x39e7c6=_0x432e7e%0x4?_0x39e7c6*0x40+_0x3173f8:_0x3173f8,_0x432e7e++%0x4)?_0x5a57cd+=String['fromCharCode'](0xff&_0x39e7c6>>(-0x2*_0x432e7e&0x6)):0x0){_0x3173f8=_0x1bba42['indexOf'](_0x3173f8);}for(let _0x3ed3e6=0x0,_0x52046b=_0x5a57cd['length'];_0x3ed3e6<_0x52046b;_0x3ed3e6++){_0x13bb1b+='%'+('00'+_0x5a57cd['charCodeAt'](_0x3ed3e6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x13bb1b);};a0_0x313b['gEWsLm']=_0x13a613,a0_0x313b['JkMpDC']={},a0_0x313b['onwphl']=!![];}const _0xc19153=_0x3b1222[0x0],_0x15fe94=_0x516b53+_0xc19153,_0x3d45cd=a0_0x313b['JkMpDC'][_0x15fe94];return!_0x3d45cd?(_0x313b1a=a0_0x313b['gEWsLm'](_0x313b1a),a0_0x313b['JkMpDC'][_0x15fe94]=_0x313b1a):_0x313b1a=_0x3d45cd,_0x313b1a;}class SqliteDatabase{constructor(){const _0x1774ed=a0_0x2940c9,_0x3ff572={'WCWPK':'./data/restforge.db','RDFdu':function(_0x554dba,_0x1aed26){return _0x554dba(_0x1aed26);},'OzGva':'5000','NBddy':_0x1774ed(0x10f)};this['db']=null,this[_0x1774ed(0x106)]=process[_0x1774ed(0x11f)][_0x1774ed(0xda)]||_0x3ff572[_0x1774ed(0xf0)],this[_0x1774ed(0xef)]=_0x3ff572[_0x1774ed(0xe3)](parseInt,process['env'][_0x1774ed(0x107)]||_0x3ff572[_0x1774ed(0xf8)]),_0x3ff572[_0x1774ed(0xe3)](logDatabaseConfig,{'database':this['dbPath'],'type':_0x3ff572['NBddy'],'busyTimeout':this[_0x1774ed(0xef)]});}[a0_0x2940c9(0xf1)](){const _0x3a9f45=a0_0x2940c9,_0x23f294={'fLYnM':_0x3a9f45(0x11c),'KqmDw':'journal_mode\x20=\x20WAL','HaGyT':'sqlite_db_exists','Yoegj':function(_0x5c7ffa,_0xf257ae,_0x1a783d,_0x16f056){return _0x5c7ffa(_0xf257ae,_0x1a783d,_0x16f056);}};try{const _0x217dd1=_0x23f294['fLYnM'][_0x3a9f45(0x119)]('|');let _0xd948d2=0x0;while(!![]){switch(_0x217dd1[_0xd948d2++]){case'0':this['db'][_0x3a9f45(0xdf)](_0x23f294[_0x3a9f45(0xde)]);continue;case'1':this['db']['pragma'](_0x3a9f45(0xed));continue;case'2':this['testConnection']();continue;case'3':this['db']=new Database(this['dbPath'],{'timeout':this['busyTimeout']});continue;case'4':if(this['db']){logger['debug']({'event':_0x23f294['HaGyT']},'SQLite\x20database\x20connection\x20sudah\x20ada');return;}continue;}break;}}catch(_0x4f01d6){_0x23f294[_0x3a9f45(0x105)](logError,_0x4f01d6,{'event':'sqlite_init_error'},_0x3a9f45(0x108)+_0x4f01d6[_0x3a9f45(0xf7)]);throw _0x4f01d6;}}['testConnection'](){const _0xa0f22d=a0_0x2940c9,_0x4ccea1={'lQXYl':'SELECT\x201\x20as\x20test_connection','sOMDP':function(_0x20e8f9,_0x437e49,_0x110c60,_0x18bda4){return _0x20e8f9(_0x437e49,_0x110c60,_0x18bda4);}};try{logger['debug']({'event':'sqlite_connection_test_start'},_0xa0f22d(0xe0)),this['db'][_0xa0f22d(0xd9)](_0x4ccea1['lQXYl'])['get']();}catch(_0x2a9cf7){_0x4ccea1[_0xa0f22d(0x103)](logError,_0x2a9cf7,{'event':_0xa0f22d(0xf5)},_0xa0f22d(0x114)+_0x2a9cf7[_0xa0f22d(0xf7)]);throw _0x2a9cf7;}}async[a0_0x2940c9(0xe9)](_0x1c61fd,_0x3d039e=[]){const _0x57ebd7=a0_0x2940c9,_0x3d0ad4={'oclRu':function(_0x4fb72d,_0xea7fab){return _0x4fb72d||_0xea7fab;},'JLdDO':function(_0x39f4b1,_0x5f2434,_0x278534,_0x4e27b5){return _0x39f4b1(_0x5f2434,_0x278534,_0x4e27b5);},'AZlfJ':_0x57ebd7(0x10f)},_0x3dc0e4=startQueryTimer();try{!this['db']&&this[_0x57ebd7(0xf1)]();const _0x3772ae=this['db']['prepare'](_0x1c61fd),_0x70a412=/\bRETURNING\b/i['test'](_0x1c61fd),_0x2b6bf9=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x1c61fd);let _0x3240eb,_0x2cb70b;if(_0x3d0ad4['oclRu'](_0x2b6bf9,_0x70a412)){const _0x51b00d=_0x3772ae['all'](..._0x3d039e),_0x5c67b1=_0x3dc0e4();return _0x3d0ad4['JLdDO'](logQuery,_0x1c61fd,_0x3d039e,{'duration':_0x5c67b1,'rowsAffected':_0x51b00d[_0x57ebd7(0xd4)],'dbType':_0x3d0ad4[_0x57ebd7(0x118)]}),_0x51b00d;}else{const _0x58da23=_0x3772ae['run'](..._0x3d039e),_0x39100d=_0x3dc0e4();return _0x3240eb={'rowsAffected':_0x58da23['changes'],'insertId':_0x58da23['lastInsertRowid']},logQuery(_0x1c61fd,_0x3d039e,{'duration':_0x39100d,'rowsAffected':_0x58da23[_0x57ebd7(0x109)],'dbType':'sqlite'}),_0x3240eb;}}catch(_0x262d70){const _0x389b4b=_0x3dc0e4();_0x3d0ad4[_0x57ebd7(0xfb)](logError,_0x262d70,{'event':_0x57ebd7(0x101),'query':_0x1c61fd[_0x57ebd7(0x100)](0x0,0x1f4),'paramCount':_0x3d039e['length'],'durationMs':_0x389b4b,'code':_0x262d70['code'],'dbType':_0x3d0ad4['AZlfJ']},'SQLite\x20SQL\x20Error:\x20'+_0x262d70[_0x57ebd7(0xf7)]);throw _0x262d70;}}async[a0_0x2940c9(0xd5)](_0x52b26a){const _0x243c58=a0_0x2940c9,_0x37cf30={'HJCQC':function(_0x57a957){return _0x57a957();},'Smjra':function(_0x530e0b){return _0x530e0b();},'tvYHG':function(_0x33daaa,_0xa230c6,_0x8521c3,_0x3d1fe8){return _0x33daaa(_0xa230c6,_0x8521c3,_0x3d1fe8);},'CUbLH':_0x243c58(0x10f),'Mixxe':_0x243c58(0x116),'zVAmX':function(_0x215d6c,_0x843324){return _0x215d6c(_0x843324);},'gIDMI':function(_0x93ddfe,_0x5ab3b4,_0x3ab971){return _0x93ddfe(_0x5ab3b4,_0x3ab971);},'rDXLb':'commit','rQItt':'transaction_complete','qkiAW':function(_0x431c8b,_0x6dd798,_0x529eca){return _0x431c8b(_0x6dd798,_0x529eca);}},_0x15bf6c=_0x37cf30['HJCQC'](startQueryTimer);try{!this['db']&&this[_0x243c58(0xf1)]();logTransaction(_0x37cf30[_0x243c58(0x10c)],_0x52b26a['length']);const _0x180992=this['db'][_0x243c58(0xfc)](_0x400377=>{const _0x4ba78a=_0x243c58,_0x37b7ad=[];for(const _0x52a7f4 of _0x400377){const _0x5836b4=_0x37cf30[_0x4ba78a(0x10a)](startQueryTimer),_0x32f73a=_0x52a7f4[_0x4ba78a(0xec)]||[],_0x5efe0e=this['db'][_0x4ba78a(0xd9)](_0x52a7f4['sql']),_0x5cc2b8=/\bRETURNING\b/i['test'](_0x52a7f4[_0x4ba78a(0x11e)]),_0x56044b=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x4ba78a(0xdb)](_0x52a7f4['sql']);if(_0x56044b||_0x5cc2b8){const _0x33930b=_0x5efe0e[_0x4ba78a(0xdd)](..._0x32f73a),_0x4db5f2=_0x37cf30['Smjra'](_0x5836b4);logQuery(_0x52a7f4['sql'],_0x32f73a,{'duration':_0x4db5f2,'rowsAffected':_0x33930b[_0x4ba78a(0xd4)],'dbType':_0x4ba78a(0x10f)}),_0x37b7ad['push'](_0x33930b);}else{const _0x49e043=_0x5efe0e['run'](..._0x32f73a),_0x9ea41f=_0x5836b4();_0x37cf30[_0x4ba78a(0xfe)](logQuery,_0x52a7f4['sql'],_0x32f73a,{'duration':_0x9ea41f,'rowsAffected':_0x49e043[_0x4ba78a(0x109)],'dbType':_0x37cf30['CUbLH']}),_0x37b7ad['push']({'rowsAffected':_0x49e043[_0x4ba78a(0x109)],'insertId':_0x49e043['lastInsertRowid']});}}return _0x37b7ad;}),_0x514505=_0x37cf30[_0x243c58(0x11b)](_0x180992,_0x52b26a),_0x238637=_0x15bf6c();return _0x37cf30[_0x243c58(0x120)](logTransaction,_0x37cf30['rDXLb'],_0x52b26a['length']),logger['info']({'event':_0x37cf30['rQItt'],'queryCount':_0x52b26a[_0x243c58(0xd4)],'totalDurationMs':_0x238637,'dbType':'sqlite'},_0x243c58(0xe4)+_0x238637+_0x243c58(0x11d)+_0x52b26a['length']+'\x20queries)'),_0x514505;}catch(_0x401da8){const _0x1cb0fd=_0x37cf30['HJCQC'](_0x15bf6c);_0x37cf30[_0x243c58(0x113)](logTransaction,_0x243c58(0x112),_0x52b26a[_0x243c58(0xd4)]),_0x37cf30['tvYHG'](logError,_0x401da8,{'event':_0x243c58(0xe6),'queryCount':_0x52b26a['length'],'totalDurationMs':_0x1cb0fd,'code':_0x401da8[_0x243c58(0xfd)],'dbType':_0x37cf30['CUbLH']},_0x243c58(0xeb)+_0x401da8[_0x243c58(0xf7)]);throw _0x401da8;}}['getPool'](){const _0x756c0b=a0_0x2940c9;return!this['db']&&this[_0x756c0b(0xf1)](),this['db'];}[a0_0x2940c9(0x11a)](){const _0x355a31=a0_0x2940c9,_0x22ccd7={'rCNlv':_0x355a31(0x102),'Ausgm':'Closing\x20SQLite\x20database\x20connection...','hBXVS':_0x355a31(0x10b),'UEweH':function(_0x2b6ad4,_0x248160,_0x5b37c8,_0x47a66c){return _0x2b6ad4(_0x248160,_0x5b37c8,_0x47a66c);},'HBnOI':_0x355a31(0xdc)};try{this['db']&&(logger['info']({'event':_0x22ccd7[_0x355a31(0xea)]},_0x22ccd7[_0x355a31(0x123)]),this['db'][_0x355a31(0xee)](),this['db']=null,logger['info']({'event':_0x355a31(0x115)},_0x22ccd7[_0x355a31(0xf4)]));}catch(_0x35b245){_0x22ccd7['UEweH'](logError,_0x35b245,{'event':_0x22ccd7['HBnOI']},_0x355a31(0x124)+_0x35b245['message']);throw _0x35b245;}}async[a0_0x2940c9(0xf6)](){const _0x37638b=a0_0x2940c9;try{return!this['db']&&this[_0x37638b(0xf1)](),this['db']['prepare'](_0x37638b(0x104))['get'](),!![];}catch(_0xca055){return logError(_0xca055,{'event':'sqlite_connection_check_error'},'Error\x20checking\x20SQLite\x20connection:\x20'+_0xca055['message']),![];}}}function a0_0x3b12(){const _0x5eddd4=['C3bSAxq','y2XVC2vqB29S','ELzbBvG','nhWZFdb8mxWY','BxmSia','C3fS','zw52','z0LetuK','n3DHBLHqBa','uMvku2S','qxvZz20','rxjYB3iGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2u6ia','zxHWB3j0CW','BgvUz3rO','zxHLy3v0zvrYyw5Zywn0Aw9U','ntuWmte5qMX2whbw','mti4mZzSzxjizxC','mZGZodCYofHzDNPdzq','ChjLCgfYzq','rejFtKfnrq','DgvZDa','C3fSAxrLx2nSB3nLx2vYCM9Y','ywXS','s3fTrhC','ChjHz21H','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','mJbsvxHmCwu','zxHPDa','uKrgzhu','vhjHBNnHy3rPB24Gy29TBwL0DgvKicG','BM5py1C','DhjHBNnHy3rPB25FzxjYB3i','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','u0Lhvevstq','zxHLy3v0zvf1zxj5','CKnoBhy','vhjHBNnHy3rPB24GzMfPBgvKoIa','CgfYyw1Z','zM9YzwLNBL9RzxLZid0Gt04','y2XVC2u','yNvZEvrPBwvVDxq','v0nxueS','Aw5PDgLHBgL6zurHDgfIyxnL','mJq4nZC1zuHmEfbX','nefzB0XjqG','AejyvLm','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','y2HLy2TdB25Uzwn0Aw9U','BwvZC2fNzq','t3PhDMe','nZi3nZKWohv2sujPta','lI9SB2DNzxi','sKXKre8','DhjHBNnHy3rPB24','y29Kzq','DhzzseC','mtDdAe1OBMK','C3vIC3rYAw5N','C3fSx2vYCM9Y','C3fSAxrLx2nSB3nPBMC','C09nrfa','u0vmrunuide','ww9Lz2O','zgjqyxrO','rejFqLvtwv9usu1ft1vu','rxjYB3iGC2fHDcbTzw1IDwTHifnrtgL0zsbKyxrHyMfZztOG','y2HHBMDLCW','sePduum','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24Gy2XVC2vK','twL4Egu','ody3mdzICxbswKu','rxjYB3iGzhvYAw5NifnrtgL0zsbZAhv0zg93BJOG','C3fSAxrL','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','u0Lhsu5u','CM9SBgjHy2S','CwTPqvC','u1fmAxrLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','C3fSAxrLx2nSB3nLza','C3rHCNq','mZGYndu4t05Nt3fp','qvPSzKO'];a0_0x3b12=function(){return _0x5eddd4;};return a0_0x3b12();}const sqliteDb=new SqliteDatabase();process['on']('SIGINT',()=>{const _0x494ca7=a0_0x2940c9,_0x34d345={'ReJSk':_0x494ca7(0x111)};logger['info']({'event':'sqlite_shutdown','signal':_0x34d345[_0x494ca7(0x122)]},_0x494ca7(0xe7));try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x228649){logError(_0x228649,{'event':_0x494ca7(0x110),'signal':_0x34d345['ReJSk']},_0x494ca7(0x10e)+_0x228649[_0x494ca7(0xf7)]),process[_0x494ca7(0xe2)](0x1);}}),process['on'](a0_0x2940c9(0xe8),()=>{const _0x26f99a=a0_0x2940c9,_0x5b2660={'rTYuu':'sqlite_shutdown','nnOcW':'Received\x20SIGTERM,\x20closing\x20SQLite\x20database...','Odyra':function(_0x2f4619,_0x1ed124,_0xc2026d,_0xd71e15){return _0x2f4619(_0x1ed124,_0xc2026d,_0xd71e15);}};logger['info']({'event':_0x5b2660['rTYuu'],'signal':'SIGTERM'},_0x5b2660[_0x26f99a(0xe5)]);try{sqliteDb['closePool'](),process[_0x26f99a(0xe2)](0x0);}catch(_0x2d7c95){_0x5b2660['Odyra'](logError,_0x2d7c95,{'event':_0x26f99a(0x110),'signal':_0x26f99a(0xe8)},_0x26f99a(0x10e)+_0x2d7c95['message']),process['exit'](0x1);}}),module[a0_0x2940c9(0x125)]=sqliteDb;
1
+ const a0_0x263887=a0_0x2a22;(function(_0x398c68,_0x2a676f){const _0x4154c1=a0_0x2a22,_0x584e2a=_0x398c68();while(!![]){try{const _0x1dcdaa=parseInt(_0x4154c1(0x91))/0x1*(-parseInt(_0x4154c1(0xbf))/0x2)+-parseInt(_0x4154c1(0xbe))/0x3*(-parseInt(_0x4154c1(0xc6))/0x4)+-parseInt(_0x4154c1(0xa1))/0x5+parseInt(_0x4154c1(0xa3))/0x6*(-parseInt(_0x4154c1(0xa0))/0x7)+parseInt(_0x4154c1(0x98))/0x8*(-parseInt(_0x4154c1(0xc8))/0x9)+parseInt(_0x4154c1(0x9a))/0xa+parseInt(_0x4154c1(0xc1))/0xb*(parseInt(_0x4154c1(0xa2))/0xc);if(_0x1dcdaa===_0x2a676f)break;else _0x584e2a['push'](_0x584e2a['shift']());}catch(_0x274264){_0x584e2a['push'](_0x584e2a['shift']());}}}(a0_0xd8aa,0xbc94c));const Database=require(a0_0x263887(0xa6)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x263887(0x90));function a0_0x2a22(_0x24c1b2,_0x54c3fe){_0x24c1b2=_0x24c1b2-0x86;const _0xd8aa20=a0_0xd8aa();let _0x2a22b5=_0xd8aa20[_0x24c1b2];if(a0_0x2a22['iWBXHt']===undefined){var _0x747077=function(_0x57c333){const _0x179f48='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2cb506='',_0x40e9bd='';for(let _0x5ca8a1=0x0,_0x37a0ae,_0x3ae34a,_0x4e6dec=0x0;_0x3ae34a=_0x57c333['charAt'](_0x4e6dec++);~_0x3ae34a&&(_0x37a0ae=_0x5ca8a1%0x4?_0x37a0ae*0x40+_0x3ae34a:_0x3ae34a,_0x5ca8a1++%0x4)?_0x2cb506+=String['fromCharCode'](0xff&_0x37a0ae>>(-0x2*_0x5ca8a1&0x6)):0x0){_0x3ae34a=_0x179f48['indexOf'](_0x3ae34a);}for(let _0xc8a902=0x0,_0x546a09=_0x2cb506['length'];_0xc8a902<_0x546a09;_0xc8a902++){_0x40e9bd+='%'+('00'+_0x2cb506['charCodeAt'](_0xc8a902)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x40e9bd);};a0_0x2a22['lcahwB']=_0x747077,a0_0x2a22['QHStgu']={},a0_0x2a22['iWBXHt']=!![];}const _0x9b647c=_0xd8aa20[0x0],_0x2a0d42=_0x24c1b2+_0x9b647c,_0x4d4e54=a0_0x2a22['QHStgu'][_0x2a0d42];return!_0x4d4e54?(_0x2a22b5=a0_0x2a22['lcahwB'](_0x2a22b5),a0_0x2a22['QHStgu'][_0x2a0d42]=_0x2a22b5):_0x2a22b5=_0x4d4e54,_0x2a22b5;}class SqliteDatabase{constructor(){const _0x1a4434=a0_0x263887,_0x2e3e34={'AvvQp':_0x1a4434(0xa7),'DRzjz':function(_0x3756de,_0x48df73){return _0x3756de(_0x48df73);},'YFnuD':_0x1a4434(0x97)};this['db']=null,this['dbPath']=process[_0x1a4434(0xd0)]['DB_NAME']||_0x2e3e34[_0x1a4434(0xa9)],this[_0x1a4434(0xc4)]=_0x2e3e34[_0x1a4434(0xce)](parseInt,process[_0x1a4434(0xd0)]['DB_BUSY_TIMEOUT']||_0x2e3e34[_0x1a4434(0xb0)]),logDatabaseConfig({'database':this[_0x1a4434(0x99)],'type':'sqlite','busyTimeout':this['busyTimeout']});}['initializeDatabase'](){const _0x59cf0=a0_0x263887,_0x358be4={'OzpYF':_0x59cf0(0x8b),'OZpLN':'sqlite_db_exists','syjai':function(_0x477b78,_0xe05f2f,_0x5163af,_0x156cc5){return _0x477b78(_0xe05f2f,_0x5163af,_0x156cc5);}};try{const _0x2d2a56=_0x59cf0(0xa8)[_0x59cf0(0xcd)]('|');let _0x99d447=0x0;while(!![]){switch(_0x2d2a56[_0x99d447++]){case'0':this['db'][_0x59cf0(0xc9)](_0x358be4[_0x59cf0(0xad)]);continue;case'1':this['db']=new Database(this[_0x59cf0(0x99)],{'timeout':this['busyTimeout']});continue;case'2':this[_0x59cf0(0x8a)]();continue;case'3':if(this['db']){logger[_0x59cf0(0x9d)]({'event':_0x358be4['OZpLN']},'SQLite\x20database\x20connection\x20sudah\x20ada');return;}continue;case'4':this['db']['pragma'](_0x59cf0(0x8e));continue;}break;}}catch(_0x20c9f0){_0x358be4[_0x59cf0(0xab)](logError,_0x20c9f0,{'event':'sqlite_init_error'},_0x59cf0(0xbb)+_0x20c9f0['message']);throw _0x20c9f0;}}['testConnection'](){const _0x469db5=a0_0x263887,_0x24229e={'UbsGb':_0x469db5(0x8c),'gRzmx':'SELECT\x201\x20as\x20test_connection','QmQta':function(_0x2488f8,_0x4376ed,_0x1b46f3,_0x59bf17){return _0x2488f8(_0x4376ed,_0x1b46f3,_0x59bf17);}};try{logger[_0x469db5(0x9d)]({'event':_0x24229e['UbsGb']},_0x469db5(0xb5)),this['db']['prepare'](_0x24229e[_0x469db5(0xd2)])['get']();}catch(_0xe3c3b){_0x24229e['QmQta'](logError,_0xe3c3b,{'event':_0x469db5(0xb8)},_0x469db5(0xcf)+_0xe3c3b['message']);throw _0xe3c3b;}}async['executeQuery'](_0x4a2f8a,_0x2b12b3=[]){const _0x2f9873=a0_0x263887,_0x508e7c={'lopas':function(_0x55a414){return _0x55a414();},'LBTba':function(_0x5c5195,_0x94e620,_0x18be1e,_0x38d900){return _0x5c5195(_0x94e620,_0x18be1e,_0x38d900);},'GVRiN':_0x2f9873(0x88),'DddiQ':function(_0x1342f3){return _0x1342f3();},'TlixJ':function(_0xb5b96f,_0x5b843a,_0x537e21,_0x530406){return _0xb5b96f(_0x5b843a,_0x537e21,_0x530406);},'MAfNJ':_0x2f9873(0x8f)},_0x5b55fa=_0x508e7c[_0x2f9873(0xae)](startQueryTimer);try{!this['db']&&this['initializeDatabase']();const _0x4c8b2c=this['db']['prepare'](_0x4a2f8a),_0x3450e7=/\bRETURNING\b/i['test'](_0x4a2f8a),_0x34b507=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x2f9873(0xd1)](_0x4a2f8a);let _0x4476cf,_0x21d739;if(_0x34b507||_0x3450e7){const _0x3935a8=_0x4c8b2c[_0x2f9873(0xc5)](..._0x2b12b3),_0x3f6ae1=_0x508e7c[_0x2f9873(0xae)](_0x5b55fa);return logQuery(_0x4a2f8a,_0x2b12b3,{'duration':_0x3f6ae1,'rowsAffected':_0x3935a8[_0x2f9873(0xba)],'dbType':'sqlite'}),_0x3935a8;}else{const _0x4658e0=_0x4c8b2c['run'](..._0x2b12b3),_0x21bab9=_0x5b55fa();return _0x4476cf={'rowsAffected':_0x4658e0['changes'],'insertId':_0x4658e0[_0x2f9873(0x9b)]},_0x508e7c['LBTba'](logQuery,_0x4a2f8a,_0x2b12b3,{'duration':_0x21bab9,'rowsAffected':_0x4658e0[_0x2f9873(0xca)],'dbType':_0x508e7c[_0x2f9873(0xaa)]}),_0x4476cf;}}catch(_0x3ecc02){const _0x4ced72=_0x508e7c['DddiQ'](_0x5b55fa);_0x508e7c[_0x2f9873(0x94)](logError,_0x3ecc02,{'event':_0x508e7c['MAfNJ'],'query':_0x4a2f8a['substring'](0x0,0x1f4),'paramCount':_0x2b12b3[_0x2f9873(0xba)],'durationMs':_0x4ced72,'code':_0x3ecc02['code'],'dbType':_0x508e7c[_0x2f9873(0xaa)]},'SQLite\x20SQL\x20Error:\x20'+_0x3ecc02[_0x2f9873(0xb2)]);throw _0x3ecc02;}}async[a0_0x263887(0xb7)](_0x82e4cf){const _0x1193d2=a0_0x263887,_0x40fa0c={'XgQYe':function(_0x3ad879){return _0x3ad879();},'VEofM':function(_0x29bbed,_0x35e549,_0x56c794,_0x3ca379){return _0x29bbed(_0x35e549,_0x56c794,_0x3ca379);},'XjfHZ':_0x1193d2(0x88),'EqImh':function(_0x13ed8b,_0x4e1a3c,_0x127269){return _0x13ed8b(_0x4e1a3c,_0x127269);},'PBqgs':function(_0x1e4560,_0x224fb8){return _0x1e4560(_0x224fb8);},'XljnS':function(_0x1f16fa){return _0x1f16fa();},'XCdCy':function(_0x33d227,_0x51219e,_0x3b77cc){return _0x33d227(_0x51219e,_0x3b77cc);},'tOrts':_0x1193d2(0xb3),'fbuta':function(_0x252729){return _0x252729();}},_0x3e6994=_0x40fa0c[_0x1193d2(0x9e)](startQueryTimer);try{!this['db']&&this['initializeDatabase']();_0x40fa0c[_0x1193d2(0xac)](logTransaction,'start',_0x82e4cf[_0x1193d2(0xba)]);const _0x1d430b=this['db'][_0x1193d2(0xb4)](_0x7ddfa9=>{const _0x4fccaa=_0x1193d2,_0x4f7ca3=[];for(const _0x9c1197 of _0x7ddfa9){const _0x43ed12=_0x40fa0c['XgQYe'](startQueryTimer),_0x540d75=_0x9c1197['params']||[],_0x19a312=this['db'][_0x4fccaa(0xa4)](_0x9c1197[_0x4fccaa(0x95)]),_0x289248=/\bRETURNING\b/i[_0x4fccaa(0xd1)](_0x9c1197['sql']),_0x9c8ced=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x4fccaa(0xd1)](_0x9c1197['sql']);if(_0x9c8ced||_0x289248){const _0x25a9ff=_0x19a312['all'](..._0x540d75),_0x5c0fd6=_0x43ed12();_0x40fa0c[_0x4fccaa(0x93)](logQuery,_0x9c1197[_0x4fccaa(0x95)],_0x540d75,{'duration':_0x5c0fd6,'rowsAffected':_0x25a9ff['length'],'dbType':_0x4fccaa(0x88)}),_0x4f7ca3['push'](_0x25a9ff);}else{const _0x364dd9=_0x19a312[_0x4fccaa(0x96)](..._0x540d75),_0x58d1b1=_0x40fa0c['XgQYe'](_0x43ed12);logQuery(_0x9c1197[_0x4fccaa(0x95)],_0x540d75,{'duration':_0x58d1b1,'rowsAffected':_0x364dd9[_0x4fccaa(0xca)],'dbType':_0x40fa0c['XjfHZ']}),_0x4f7ca3['push']({'rowsAffected':_0x364dd9[_0x4fccaa(0xca)],'insertId':_0x364dd9[_0x4fccaa(0x9b)]});}}return _0x4f7ca3;}),_0x4580f1=_0x40fa0c['PBqgs'](_0x1d430b,_0x82e4cf),_0x3ad1a9=_0x40fa0c[_0x1193d2(0xb1)](_0x3e6994);return _0x40fa0c[_0x1193d2(0x92)](logTransaction,'commit',_0x82e4cf['length']),logger['info']({'event':_0x40fa0c[_0x1193d2(0xa5)],'queryCount':_0x82e4cf['length'],'totalDurationMs':_0x3ad1a9,'dbType':'sqlite'},_0x1193d2(0x9f)+_0x3ad1a9+_0x1193d2(0xc0)+_0x82e4cf['length']+'\x20queries)'),_0x4580f1;}catch(_0x1a7378){const _0x1c5e23=_0x40fa0c['fbuta'](_0x3e6994);_0x40fa0c['XCdCy'](logTransaction,_0x1193d2(0xcb),_0x82e4cf['length']),logError(_0x1a7378,{'event':'transaction_error','queryCount':_0x82e4cf['length'],'totalDurationMs':_0x1c5e23,'code':_0x1a7378[_0x1193d2(0xc3)],'dbType':'sqlite'},'Transaction\x20failed:\x20'+_0x1a7378[_0x1193d2(0xb2)]);throw _0x1a7378;}}['getPool'](){return!this['db']&&this['initializeDatabase'](),this['db'];}['closePool'](){const _0xa2da9b=a0_0x263887,_0x2f03f9={'EuZXa':function(_0x4f6ef4,_0x46fb7f,_0x3ed963,_0x48c630){return _0x4f6ef4(_0x46fb7f,_0x3ed963,_0x48c630);},'htGUT':'sqlite_close_error'};try{this['db']&&(logger['info']({'event':'sqlite_closing'},'Closing\x20SQLite\x20database\x20connection...'),this['db'][_0xa2da9b(0x86)](),this['db']=null,logger[_0xa2da9b(0xaf)]({'event':'sqlite_closed'},'SQLite\x20database\x20connection\x20closed'));}catch(_0x1aaf6d){_0x2f03f9['EuZXa'](logError,_0x1aaf6d,{'event':_0x2f03f9['htGUT']},'Error\x20closing\x20SQLite\x20database:\x20'+_0x1aaf6d['message']);throw _0x1aaf6d;}}async['checkConnection'](){const _0xdf0d79=a0_0x263887,_0x114c05={'iMtYP':'SELECT\x201','dHqrk':function(_0x563cb2,_0x5d27f2,_0x659c10,_0x1502b7){return _0x563cb2(_0x5d27f2,_0x659c10,_0x1502b7);}};try{return!this['db']&&this[_0xdf0d79(0x89)](),this['db'][_0xdf0d79(0xa4)](_0x114c05[_0xdf0d79(0xbc)])[_0xdf0d79(0xcc)](),!![];}catch(_0x1e1467){return _0x114c05['dHqrk'](logError,_0x1e1467,{'event':'sqlite_connection_check_error'},'Error\x20checking\x20SQLite\x20connection:\x20'+_0x1e1467['message']),![];}}}function a0_0xd8aa(){const _0x4a62d1=['BwvZC2fNzq','DhjHBNnHy3rPB25Fy29TCgXLDgu','DhjHBNnHy3rPB24','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','zxHWB3j0CW','zxHLy3v0zvrYyw5Zywn0Aw9U','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','BgvUz3rO','rxjYB3iGC2fHDcbTzw1IDwTHifnrtgL0zsbKyxrHyMfZztOG','Au10wva','u2TKD3u','m0f2ELvpsW','mJe4nLvruK1zyq','BxmSia','mtuZnZG0ngr6reHOrG','zxHPDa','y29Kzq','yNvZEvrPBwvVDxq','ywXS','nJm1ode2txbrswXt','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','mtG5nJnRteXQyKG','ChjHz21H','y2HHBMDLCW','CM9SBgjHy2S','z2v0','C3bSAxq','rfj6ANO','u1fmAxrLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','zw52','DgvZDa','z1j6BxG','y2XVC2u','vxrtrvO','C3fSAxrL','Aw5PDgLHBgL6zurHDgfIyxnL','DgvZDenVBM5Ly3rPB24','zM9YzwLNBL9RzxLZid0Gt04','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','u0Lhsu5u','AM91CM5HBf9TB2rLid0Gv0fm','C3fSx2vYCM9Y','lI9SB2DNzxi','mti1mLPgr2r6Ba','wenKq3K','vKvVzK0','vgXPEeO','C3fS','CNvU','ntaWma','mJGZmNjZt2rhCG','zgjqyxrO','ntiWmteZmgT0yNDhsW','BgfZDeLUC2vYDfjVD2LK','u0Lhvevstq','zgvIDwC','wgDrwwu','vhjHBNnHy3rPB24Gy29TBwL0DgvKicG','mta3mJu3nZHRrLv0wLG','nta2nZaZnw1sB2zuvG','nda4AhfeEgv3','nKveyKD0za','ChjLCgfYzq','De9YDhm','yMv0DgvYlxnXBgL0ztm','lI9KyxrHl3jLC3rMB3jNzs5KyG','m3WXFdr8mhWY','qxz2uxa','r1zsAu4','C3LQywK','rxfjBwG','t3PWwuy','Bg9Wyxm','Aw5MBW','wuzUDuq','wgXQBLm'];a0_0xd8aa=function(){return _0x4a62d1;};return a0_0xd8aa();}const sqliteDb=new SqliteDatabase();process['on'](a0_0x263887(0x8d),()=>{const _0x2e9ee7=a0_0x263887,_0x43cd7a={'cqBpJ':'sqlite_shutdown','Skdwu':_0x2e9ee7(0x8d)};logger['info']({'event':_0x43cd7a['cqBpJ'],'signal':_0x2e9ee7(0x8d)},_0x2e9ee7(0xc7));try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x39c654){logError(_0x39c654,{'event':'sqlite_shutdown_error','signal':_0x43cd7a[_0x2e9ee7(0xbd)]},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x39c654[_0x2e9ee7(0xb2)]),process[_0x2e9ee7(0xc2)](0x1);}}),process['on'](a0_0x263887(0x9c),()=>{const _0x1fdeb6=a0_0x263887,_0x26dbe0={'UtSEZ':'sqlite_shutdown','hLRLT':_0x1fdeb6(0x9c),'PJvww':'Received\x20SIGTERM,\x20closing\x20SQLite\x20database...','awOwq':_0x1fdeb6(0xb9)};logger['info']({'event':_0x26dbe0[_0x1fdeb6(0x87)],'signal':_0x26dbe0['hLRLT']},_0x26dbe0['PJvww']);try{sqliteDb['closePool'](),process[_0x1fdeb6(0xc2)](0x0);}catch(_0x57341b){logError(_0x57341b,{'event':_0x26dbe0['awOwq'],'signal':_0x1fdeb6(0x9c)},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x57341b['message']),process['exit'](0x1);}}),module[a0_0x263887(0xb6)]=sqliteDb;
@@ -1 +1 @@
1
- const a0_0x1d2316=a0_0x7024;(function(_0x5bc36c,_0x31c3b6){const _0x366299=a0_0x7024,_0x26be2f=_0x5bc36c();while(!![]){try{const _0x7e4930=-parseInt(_0x366299(0x1a4))/0x1+parseInt(_0x366299(0x150))/0x2+parseInt(_0x366299(0x175))/0x3+-parseInt(_0x366299(0x17a))/0x4*(-parseInt(_0x366299(0x16e))/0x5)+parseInt(_0x366299(0x196))/0x6*(-parseInt(_0x366299(0x1a0))/0x7)+-parseInt(_0x366299(0x179))/0x8+-parseInt(_0x366299(0x18a))/0x9*(-parseInt(_0x366299(0x163))/0xa);if(_0x7e4930===_0x31c3b6)break;else _0x26be2f['push'](_0x26be2f['shift']());}catch(_0x13ae6d){_0x26be2f['push'](_0x26be2f['shift']());}}}(a0_0x5757,0x22edc));const ExcelJS=require(a0_0x1d2316(0x15d)),{logger}=require(a0_0x1d2316(0x187));function a0_0x5757(){const _0x29382b=['yxbWBhLdzwXSrM9YBwf0DgLUzW','z2vUzxjHDgvtAw1WBgu','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','uK5xsvC','mZi2mJm4Du5HugXL','rKy0ndCYqZq','ww9swwi','DMfSDwu','z2vUzxjHDgu','suL4tKi','BwfHEgW','EuvTAKe','A2v5CW','rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','r2HpEue','ywXPz25Tzw50','z2v0vvrdrNvSBfLLyxi','zxHJzwXQCW','DMnTuee','ChvZAa','D3nNCgG','uhjVy2vZC2vKia','BNvTyMvY','mJGXmgvqqKzyrW','rKzgrKzgrKy','rgf0yq','rfHbtNa','z2v0vvrdrgf0zq','vM1Osha','y2vPBa','z2v0uM93','Aw5MBW','z2v0rxHJzwXgB3jTyxq','CgvYy2vUDgfNzq','mtvMz2zhyLG','Ae1XvfO','BgvUz3rO','sfvOCuS','DhLWzq','zMLSBa','sKXUshy','mZq2mtK3D0LMD2Dl','zM9YBwf0rgf0zvn0CMLUzW','zxHJzwXFz2vUzxjHDgLVBL9JB21WBgv0zq','Cgf0DgvYBG','mtm4mJe1mKHNufLqBa','mte2otGWwe5pr2vu','zgPkCLe','zgf0zq','sMPgEey','CNnWqLi','Dg9mB3DLCKnHC2u','zxHIBeq','ChjLChjVy2vZC1rLEhrsB3C','vLP0C3a','v29YA2jVB2S','C3r5Bgu','BLfoD20','mc4Wmcu','lI9SB2DNzxi','CgfKu3rHCNq','CgfYC2voDw1Izxi','mJyXowTjC3n0uq','z2v0vvrdtw9UDgG','Dg9vChbLCKnHC2u','BgvMDa','vKLqsuK','zM9YBwf0sgvHzgvY','Bwf0y2G','ywrKv29YA3nOzwv0','B0PYrLm','Dgv4Da','zxHWB3j0CW','C29SAwq','mtHHqxvJBhG','ueLcwhu','BNvTrM10','zM9YrwfJAa','sw52ywXPzcbJB2X1Bw5ZoIa','v29YA2jVB2TxCML0zxi','yxbWBhLsB3DgB3jTyxr0Aw5N','q1n3qKW','Bw0VzgqVExL5Eq','zgqVBw0VExL5Eq','mtCZnJiXqKncqvzR','BwLKzgXL','DMLLD3m','z2vUzxjHDgvtDhjLyw1PBMC','ntC3nZHrC0HVCKS','sKnwr1a','EgXZEa','ywrKuM93CW','z2v0q2vSBa','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','C3rYAw5N','CwnwD3q','y2H1BMTtAxPL','D09sqxa','BKHoyNK','De1jrwi','yNjhENK','D2XUzhq','zM9YBwf0q2vSBa','zgHIA08'];a0_0x5757=function(){return _0x29382b;};return a0_0x5757();}class ExcelGenerator{constructor(){const _0x51581b=a0_0x1d2316,_0x2ce3df={'exblD':function(_0x234a58,_0x1d93e8,_0x266aa3){return _0x234a58(_0x1d93e8,_0x266aa3);}};this['chunkSize']=_0x2ce3df[_0x51581b(0x180)](parseInt,process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async[a0_0x1d2316(0x154)](_0x42dd24){const _0x445862=a0_0x1d2316,_0x2fb731={'sUJPC':_0x445862(0x14e),'LpIhj':function(_0x1b9095,_0x480e9d){return _0x1b9095>_0x480e9d;},'mwZAm':'Excel\x20generation\x20started'},{data:_0x3bb736,columns:_0x5b034c,columnFormats:_0x2efdb9,fieldLabels:_0x2a3789,filePath:_0x49a6db,onProgress:_0x59df62}=_0x42dd24;logger[_0x445862(0x16b)]({'event':_0x2fb731['sUJPC'],'rows':_0x3bb736['length'],'columns':_0x5b034c?.['length']||'auto','columnFormats':_0x2efdb9?Object['keys'](_0x2efdb9):null,'fieldLabels':_0x2a3789?Object[_0x445862(0x158)](_0x2a3789):null,'streaming':_0x2fb731['LpIhj'](_0x3bb736['length'],this[_0x445862(0x1ac)])},_0x2fb731['mwZAm']);if(_0x3bb736[_0x445862(0x170)]<=this['chunkSize'])return await this['generateSimple'](_0x3bb736,_0x5b034c,_0x2efdb9,_0x2a3789,_0x49a6db,_0x59df62);return await this[_0x445862(0x1a3)](_0x3bb736,_0x5b034c,_0x2efdb9,_0x2a3789,_0x49a6db,_0x59df62);}async[a0_0x1d2316(0x14d)](_0x2e0c74,_0x14d7ef,_0x43b5e5,_0x5efe2c,_0x5674b4,_0x187768){const _0x284145=a0_0x1d2316,_0x1e73f9={'RfOCE':function(_0x32e062,_0x46c514){return _0x32e062!==_0x46c514;},'wsgph':'Data','JjFxF':_0x284145(0x195),'clikf':_0x284145(0x151),'nHNby':'middle','tMIEb':'center','JCVGP':function(_0x523b8b,_0x564171){return _0x523b8b(_0x564171);},'VZtsp':'simple','yEmjA':_0x284145(0x159)},_0x17434a=new ExcelJS[(_0x284145(0x183))](),_0x374d11=_0x17434a[_0x284145(0x191)](_0x1e73f9[_0x284145(0x160)]),_0x125e61=_0x14d7ef||(_0x2e0c74['length']>0x0?Object['keys'](_0x2e0c74[0x0]):[]);_0x374d11['columns']=_0x125e61['map'](_0x389d16=>{const _0x56a003=_0x284145,_0x5c4dda={'header':this[_0x56a003(0x18f)](_0x389d16,_0x5efe2c),'key':_0x389d16,'width':0x14};if(_0x43b5e5&&_0x43b5e5[_0x389d16]){const _0x520281=_0x43b5e5[_0x389d16];if(_0x520281['type']&&_0x1e73f9['RfOCE'](_0x520281[_0x56a003(0x172)]['toLowerCase'](),'date')){const _0x3ea410=this['getExcelFormat'](_0x520281);_0x3ea410&&(_0x5c4dda[_0x56a003(0x184)]={'numFmt':_0x3ea410});}}return _0x5c4dda;}),_0x374d11[_0x284145(0x16a)](0x1)['font']={'bold':!![],'color':{'argb':_0x284145(0x164)}},_0x374d11['getRow'](0x1)[_0x284145(0x173)]={'type':_0x284145(0x178),'pattern':_0x1e73f9[_0x284145(0x17d)],'fgColor':{'argb':_0x1e73f9['clikf']}},_0x374d11['getRow'](0x1)[_0x284145(0x15b)]={'vertical':_0x1e73f9[_0x284145(0x1ae)],'horizontal':_0x1e73f9[_0x284145(0x1af)]};const _0xeda9d3=_0x43b5e5?this[_0x284145(0x1a9)](_0x2e0c74,_0x125e61,_0x43b5e5):_0x2e0c74;return _0x374d11[_0x284145(0x1a7)](_0xeda9d3),_0x43b5e5&&this[_0x284145(0x14c)](_0x374d11,_0x125e61,_0x43b5e5,_0x2e0c74['length']),_0x187768&&await _0x187768(0x32),_0x374d11['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x125e61['length']}},_0x374d11[_0x284145(0x1a2)]=[{'state':'frozen','xSplit':0x0,'ySplit':0x1}],await _0x17434a[_0x284145(0x1a6)]['writeFile'](_0x5674b4),_0x187768&&await _0x1e73f9[_0x284145(0x1a5)](_0x187768,0x64),logger['info']({'event':_0x284145(0x177),'method':_0x1e73f9[_0x284145(0x182)],'rows':_0x2e0c74[_0x284145(0x170)]},_0x1e73f9[_0x284145(0x157)]),_0x5674b4;}async['generateStreaming'](_0x4c5350,_0x1b2170,_0x478e64,_0x5a5184,_0x309598,_0x48658a){const _0x23b953=a0_0x1d2316,_0x53b2c0={'feeMd':function(_0x1f14a2,_0x5465ca){return _0x1f14a2!==_0x5465ca;},'VmhHp':_0x23b953(0x165),'hsdTm':function(_0x5d41d0,_0x381b0d){return _0x5d41d0>_0x381b0d;},'vcmPA':'FFFFFFFF','oJrFS':'pattern','nQNwm':'solid','DzmKf':_0x23b953(0x151),'BcfEH':'center','YzyUa':function(_0x3cf114,_0x22538c){return _0x3cf114<_0x22538c;},'uPjOl':'excel_chunk_processed','RNWIW':function(_0x3c9bc0,_0x41de69){return _0x3c9bc0/_0x41de69;}},_0x56cc02=new ExcelJS['stream']['xlsx'][(_0x23b953(0x19b))]({'filename':_0x309598,'useStyles':!![],'useSharedStrings':!![]}),_0x1d2bef=_0x56cc02['addWorksheet'](_0x53b2c0[_0x23b953(0x168)]),_0x323ca1=_0x1b2170||(_0x53b2c0['hsdTm'](_0x4c5350['length'],0x0)?Object[_0x23b953(0x158)](_0x4c5350[0x0]):[]),_0x1935a1={};_0x323ca1[_0x23b953(0x199)]((_0xdb98b9,_0x5983d9)=>{_0x1935a1[_0xdb98b9]=_0x5983d9+0x1;}),_0x1d2bef['columns']=_0x323ca1['map'](_0x307ea3=>{const _0x2b413e=_0x23b953,_0x23923c={'header':this['formatHeader'](_0x307ea3,_0x5a5184),'key':_0x307ea3,'width':0x14};if(_0x478e64&&_0x478e64[_0x307ea3]){const _0x2a42d4=_0x478e64[_0x307ea3];if(_0x2a42d4[_0x2b413e(0x172)]&&_0x53b2c0['feeMd'](_0x2a42d4[_0x2b413e(0x172)]['toLowerCase'](),'date')){const _0x24644a=this[_0x2b413e(0x16c)](_0x2a42d4);_0x24644a&&(_0x23923c['style']={'numFmt':_0x24644a});}}return _0x23923c;});const _0x34309d=_0x1d2bef[_0x23b953(0x16a)](0x1);_0x34309d['font']={'bold':!![],'color':{'argb':_0x53b2c0[_0x23b953(0x15e)]}},_0x34309d['fill']={'type':_0x53b2c0[_0x23b953(0x192)],'pattern':_0x53b2c0[_0x23b953(0x185)],'fgColor':{'argb':_0x53b2c0['DzmKf']}},_0x34309d[_0x23b953(0x15b)]={'vertical':_0x23b953(0x1a1),'horizontal':_0x53b2c0['BcfEH']},_0x34309d['commit']();const _0x2f5c26=_0x4c5350['length'];let _0x15888c=0x0;for(let _0x16343a=0x0;_0x53b2c0['YzyUa'](_0x16343a,_0x2f5c26);_0x16343a+=this[_0x23b953(0x1ac)]){const _0x150001=_0x4c5350['slice'](_0x16343a,_0x16343a+this['chunkSize']);for(const _0x1ad37f of _0x150001){const _0x12e3fb=_0x478e64?this[_0x23b953(0x181)](_0x1ad37f,_0x323ca1,_0x478e64):_0x1ad37f,_0x11e314=_0x1d2bef['addRow'](_0x12e3fb);_0x478e64&&this['applyRowFormatting'](_0x11e314,_0x12e3fb,_0x323ca1,_0x478e64),_0x11e314['commit'](),_0x15888c++;}if(_0x48658a){const _0x12e2cc=Math['round'](_0x15888c/_0x2f5c26*0x64);await _0x48658a(_0x12e2cc);}logger['debug']({'event':_0x53b2c0['uPjOl'],'processed':_0x15888c,'total':_0x2f5c26},_0x23b953(0x161)+_0x15888c+'/'+_0x2f5c26+'\x20rows');}return _0x1d2bef['commit'](),await _0x56cc02['commit'](),logger[_0x23b953(0x16b)]({'event':'excel_generation_complete','method':'streaming','rows':_0x2f5c26,'chunks':Math[_0x23b953(0x169)](_0x53b2c0[_0x23b953(0x14f)](_0x2f5c26,this[_0x23b953(0x1ac)]))},'Excel\x20generated\x20(streaming\x20method)'),_0x309598;}[a0_0x1d2316(0x18f)](_0x18be88,_0x256a05){const _0x103195=a0_0x1d2316;if(_0x256a05&&_0x256a05[_0x18be88])return _0x256a05[_0x18be88];return String(_0x18be88)[_0x103195(0x18c)]();}['validateColumns'](_0x1be8c5,_0x155a76){const _0x26d464=a0_0x1d2316,_0x568ffd={'HUhqK':function(_0x3176f9,_0x31fee6){return _0x3176f9===_0x31fee6;}};if(!_0x155a76||_0x155a76[_0x26d464(0x170)]===0x0)return!![];if(_0x568ffd[_0x26d464(0x171)](_0x1be8c5['length'],0x0))return!![];const _0x643fda=Object[_0x26d464(0x158)](_0x1be8c5[0x0]),_0x2d74d9=_0x155a76['filter'](_0x5aa3a5=>!_0x643fda['includes'](_0x5aa3a5));if(_0x2d74d9[_0x26d464(0x170)]>0x0)throw new Error(_0x26d464(0x19a)+_0x2d74d9['join'](',\x20'));return!![];}[a0_0x1d2316(0x16c)](_0x2e7129){const _0x5b4ada=a0_0x1d2316,_0x5d779f={'dhbkO':_0x5b4ada(0x17c),'sesgY':_0x5b4ada(0x19f),'Xdflk':_0x5b4ada(0x162),'YoRYb':'#,##0.00','wORAp':function(_0x50f00e,_0x3d4561){return _0x50f00e||_0x3d4561;},'JLnHv':'text'};if(!_0x2e7129||!_0x2e7129['type'])return null;const {type:_0x17d0d6,format:_0x54634e}=_0x2e7129;switch(_0x17d0d6['toLowerCase']()){case _0x5d779f[_0x5b4ada(0x14b)]:return _0x54634e?_0x54634e[_0x5b4ada(0x17f)]():_0x5d779f['sesgY'];case _0x5d779f['Xdflk']:return _0x54634e||_0x5d779f[_0x5b4ada(0x152)];case'currency':return _0x5d779f[_0x5b4ada(0x1ad)](_0x54634e,'\x22Rp\x20\x22#,##0');case'percentage':return _0x54634e||_0x5b4ada(0x186);case _0x5d779f[_0x5b4ada(0x174)]:return'@';default:return null;}}[a0_0x1d2316(0x14c)](_0xe98091,_0x34c4c6,_0x74e474,_0x11040e){const _0x45ed9b=a0_0x1d2316,_0x211f06={'qgqeZ':function(_0x4c709d,_0x5c6bea){return _0x4c709d+_0x5c6bea;}};if(!_0x74e474)return;_0x34c4c6[_0x45ed9b(0x199)]((_0x93cb61,_0x19d93d)=>{const _0x395243=_0x45ed9b,_0x232453=_0x74e474[_0x93cb61];if(!_0x232453)return;const _0x247591=_0x19d93d+0x1;for(let _0x331490=0x2;_0x331490<=_0x211f06['qgqeZ'](_0x11040e,0x1);_0x331490++){const _0x3da278=_0xe98091[_0x395243(0x1a8)](_0x331490,_0x247591);this['formatCell'](_0x3da278,_0x232453);}});}[a0_0x1d2316(0x19c)](_0x1fc14d,_0x28d70e,_0x263dee,_0x4d5680){const _0x16b0c2={'bdVnZ':function(_0x47ff89,_0x2eabf9){return _0x47ff89+_0x2eabf9;}};if(!_0x4d5680)return;_0x263dee['forEach']((_0x2bba92,_0x56b6f0)=>{const _0x4c330c=a0_0x7024,_0x1fabc0=_0x4d5680[_0x2bba92];if(!_0x1fabc0)return;const _0x2bbe95=_0x1fc14d['getCell'](_0x16b0c2['bdVnZ'](_0x56b6f0,0x1));this[_0x4c330c(0x14a)](_0x2bbe95,_0x1fabc0);});}[a0_0x1d2316(0x14a)](_0xcc0866,_0xb607c4){const _0x1a9d89=a0_0x1d2316,_0x57a099={'iNWDU':function(_0x5b85ac,_0x4e7a1d){return _0x5b85ac===_0x4e7a1d;},'bHHUz':function(_0x59ff80,_0x4a2454){return _0x59ff80===_0x4a2454;},'gLpYQ':_0x1a9d89(0x193),'djJrQ':'string','DXANp':_0x1a9d89(0x18d)};if(!_0xb607c4||!_0xb607c4['type'])return;const {type:_0xe0a750,format:_0x345eec}=_0xb607c4;if(_0xe0a750[_0x1a9d89(0x17f)]()===_0x1a9d89(0x17c)&&_0xcc0866['value']){const _0x57d589=this[_0x1a9d89(0x176)](_0xcc0866['value'],_0x345eec);_0x57d589&&(_0xcc0866[_0x1a9d89(0x153)]=_0x57d589);return;}if((_0xe0a750['toLowerCase']()==='number'||_0x57a099['iNWDU'](_0xe0a750[_0x1a9d89(0x17f)](),'currency')||_0xe0a750[_0x1a9d89(0x17f)]()===_0x1a9d89(0x16d))&&_0xcc0866[_0x1a9d89(0x153)]){const _0x5c614=this[_0x1a9d89(0x189)](_0xcc0866['value']);if(_0x5c614!==null){_0xcc0866[_0x1a9d89(0x153)]=_0x5c614;const _0x22d608=this[_0x1a9d89(0x16c)](_0xb607c4);_0x22d608&&(_0xcc0866[_0x1a9d89(0x198)]=_0x22d608);}}_0x57a099['bHHUz'](_0xe0a750['toLowerCase'](),_0x57a099['gLpYQ'])&&_0xcc0866['value']&&(_0xcc0866[_0x1a9d89(0x198)]='@',typeof _0xcc0866[_0x1a9d89(0x153)]!==_0x57a099[_0x1a9d89(0x17b)]&&(_0xcc0866[_0x1a9d89(0x153)]=String(_0xcc0866['value'])),_0xcc0866['alignment']={'horizontal':_0x57a099[_0x1a9d89(0x166)],'vertical':_0x1a9d89(0x1a1)});}[a0_0x1d2316(0x176)](_0xe72b80,_0x315f9a){const _0x2e0276=a0_0x1d2316,_0x3af81a={'BvMku':function(_0x33f8b8,_0x22ce2b){return _0x33f8b8===_0x22ce2b;},'ZRRlt':function(_0x336048,_0x4ba52e,_0x20708d){return _0x336048(_0x4ba52e,_0x20708d);},'VIPII':function(_0xbf3213,_0x4cce6a,_0x298b36){return _0xbf3213(_0x4cce6a,_0x298b36);},'hMqTZ':'number','IIxNB':function(_0x2c35b8,_0x2cb890){return _0x2c35b8(_0x2cb890);},'NxgZv':function(_0x25af6a,_0x10626e){return _0x25af6a||_0x10626e;},'PIBXu':function(_0x2fe995,_0x4f0fa2){return _0x2fe995(_0x4f0fa2);},'rspBR':function(_0x4525ed,_0x3c6a83){return _0x4525ed(_0x3c6a83);},'hhUyO':'DD/MM/YYYY','IZEOz':_0x2e0276(0x19f)};if(!_0xe72b80)return null;let _0x16cb70,_0xe59462,_0x10b88f;if(_0xe72b80 instanceof Date)_0x16cb70=_0xe72b80[_0x2e0276(0x15c)](),_0xe59462=_0xe72b80[_0x2e0276(0x18b)]()+0x1,_0x10b88f=_0xe72b80['getUTCDate']();else{if(_0x3af81a['BvMku'](typeof _0xe72b80,_0x2e0276(0x1aa))){const _0x1d8860=_0xe72b80[_0x2e0276(0x190)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x1d8860)_0x16cb70=_0x3af81a['ZRRlt'](parseInt,_0x1d8860[0x1],0xa),_0xe59462=parseInt(_0x1d8860[0x2],0xa),_0x10b88f=_0x3af81a[_0x2e0276(0x18e)](parseInt,_0x1d8860[0x3],0xa);else{const _0xb251d2=_0xe72b80[_0x2e0276(0x190)](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0xb251d2)_0x10b88f=parseInt(_0xb251d2[0x1],0xa),_0xe59462=_0x3af81a['ZRRlt'](parseInt,_0xb251d2[0x2],0xa),_0x16cb70=parseInt(_0xb251d2[0x3],0xa);else{const _0x36b33c=_0xe72b80['match'](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x36b33c&&(_0x16cb70=parseInt(_0x36b33c[0x1],0xa),_0xe59462=_0x3af81a['VIPII'](parseInt,_0x36b33c[0x2],0xa),_0x10b88f=parseInt(_0x36b33c[0x3],0xa));}}}else{if(_0x3af81a['BvMku'](typeof _0xe72b80,_0x3af81a[_0x2e0276(0x16f)])){const _0x18dc5c=new Date(_0xe72b80);!_0x3af81a[_0x2e0276(0x155)](isNaN,_0x18dc5c['getTime']())&&(_0x16cb70=_0x18dc5c[_0x2e0276(0x15c)](),_0xe59462=_0x18dc5c[_0x2e0276(0x18b)]()+0x1,_0x10b88f=_0x18dc5c[_0x2e0276(0x167)]());}}}if(_0x3af81a['NxgZv'](!_0x16cb70,!_0xe59462)||!_0x10b88f)return null;const _0x3031fd=String(_0x10b88f)[_0x2e0276(0x188)](0x2,'0'),_0x35208a=_0x3af81a[_0x2e0276(0x197)](String,_0xe59462)[_0x2e0276(0x188)](0x2,'0'),_0x253e6a=_0x3af81a[_0x2e0276(0x17e)](String,_0x16cb70),_0x4b71f6=(_0x315f9a||_0x3af81a['hhUyO'])['toLowerCase']();if(_0x3af81a['BvMku'](_0x4b71f6,_0x3af81a['IZEOz']))return _0x3031fd+'/'+_0x35208a+'/'+_0x253e6a;else{if(_0x4b71f6===_0x2e0276(0x19e))return _0x35208a+'/'+_0x3031fd+'/'+_0x253e6a;else{if(_0x4b71f6==='yyyy-mm-dd')return _0x253e6a+'-'+_0x35208a+'-'+_0x3031fd;else{if(_0x4b71f6==='dd-mm-yyyy')return _0x3031fd+'-'+_0x35208a+'-'+_0x253e6a;else return _0x4b71f6==='yyyy/mm/dd'?_0x253e6a+'/'+_0x35208a+'/'+_0x3031fd:_0x3031fd+'/'+_0x35208a+'/'+_0x253e6a;}}}}['parseNumber'](_0x404f80){const _0x4679d4=a0_0x1d2316,_0x34860d={'AtaNF':'number','maaxl':function(_0x263f3f,_0x169e4e){return _0x263f3f===_0x169e4e;},'GhOyA':function(_0xd48b3,_0x5328ee){return _0xd48b3(_0x5328ee);}};if(typeof _0x404f80===_0x34860d['AtaNF'])return _0x404f80;if(_0x34860d[_0x4679d4(0x156)](typeof _0x404f80,_0x4679d4(0x1aa))){const _0x52d530=_0x404f80['replace'](/[^\d.-]/g,''),_0x5fd27b=_0x34860d[_0x4679d4(0x15a)](parseFloat,_0x52d530);if(!isNaN(_0x5fd27b))return _0x5fd27b;}return null;}[a0_0x1d2316(0x1a9)](_0x723ab3,_0x44fef2,_0x6c7cdc){const _0x194990=a0_0x1d2316,_0x4a33ea={'SOgDv':_0x194990(0x193),'dkmwk':function(_0x1b8d38,_0x34d952){return _0x1b8d38(_0x34d952);},'wlndt':function(_0x37fb9c,_0x2b6194){return _0x37fb9c===_0x2b6194;}};if(!_0x6c7cdc)return _0x723ab3;const _0x4e735b=[];_0x44fef2[_0x194990(0x199)](_0x40c29e=>{const _0x43ca3e=_0x194990,_0x127b18=_0x6c7cdc[_0x40c29e];_0x127b18&&_0x127b18[_0x43ca3e(0x172)]&&_0x127b18['type']['toLowerCase']()===_0x4a33ea['SOgDv']&&_0x4e735b['push'](_0x40c29e);});if(_0x4a33ea[_0x194990(0x1b1)](_0x4e735b[_0x194990(0x170)],0x0))return _0x723ab3;return _0x723ab3['map'](_0x2c584d=>{const _0x19c899=_0x194990,_0xb9f7cc={'YDJJg':function(_0x34039c,_0x31f501){return _0x34039c!==_0x31f501;},'brGzy':function(_0x5e5fd0,_0x2075c4){return _0x5e5fd0!==_0x2075c4;},'CSwBL':function(_0xd5348e,_0x1dce8f){return _0x4a33ea['dkmwk'](_0xd5348e,_0x1dce8f);}},_0x3b2183={..._0x2c584d};return _0x4e735b[_0x19c899(0x199)](_0x52e0ad=>{const _0x1eb4ce=_0x19c899;_0xb9f7cc['YDJJg'](_0x3b2183[_0x52e0ad],null)&&_0xb9f7cc[_0x1eb4ce(0x1b0)](_0x3b2183[_0x52e0ad],undefined)&&(_0x3b2183[_0x52e0ad]='\x27'+_0xb9f7cc[_0x1eb4ce(0x19d)](String,_0x3b2183[_0x52e0ad]));}),_0x3b2183;});}['preprocessTextRow'](_0x4f7ead,_0x512b5d,_0x1666d0){const _0x2be4cc=a0_0x1d2316,_0x5dfc46={'aKQSq':function(_0x10f5f8,_0x599965){return _0x10f5f8!==_0x599965;},'SuGbn':function(_0x587752,_0x30f6a){return _0x587752!==_0x30f6a;},'qcVwt':function(_0x32310f,_0x2c0483){return _0x32310f+_0x2c0483;}};if(!_0x1666d0)return _0x4f7ead;const _0x41d280=[];_0x512b5d['forEach'](_0x1ee50d=>{const _0x5d2670=a0_0x7024,_0x4b964e=_0x1666d0[_0x1ee50d];_0x4b964e&&_0x4b964e['type']&&_0x4b964e['type']['toLowerCase']()==='text'&&_0x41d280[_0x5d2670(0x15f)](_0x1ee50d);});if(_0x41d280[_0x2be4cc(0x170)]===0x0)return _0x4f7ead;const _0x558906={..._0x4f7ead};return _0x41d280['forEach'](_0x39f3a5=>{const _0x5b857e=_0x2be4cc;_0x5dfc46['aKQSq'](_0x558906[_0x39f3a5],null)&&_0x5dfc46['SuGbn'](_0x558906[_0x39f3a5],undefined)&&(_0x558906[_0x39f3a5]=_0x5dfc46[_0x5b857e(0x1ab)]('\x27',String(_0x558906[_0x39f3a5])));}),_0x558906;}}function a0_0x7024(_0x33f18e,_0x104d51){_0x33f18e=_0x33f18e-0x14a;const _0x575798=a0_0x5757();let _0x70243d=_0x575798[_0x33f18e];if(a0_0x7024['JwssIr']===undefined){var _0x19ba0f=function(_0x30d63a){const _0x4c7e71='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x57b1e1='',_0x22fb4e='';for(let _0x503059=0x0,_0x4fe3ae,_0x3e2627,_0x183fc9=0x0;_0x3e2627=_0x30d63a['charAt'](_0x183fc9++);~_0x3e2627&&(_0x4fe3ae=_0x503059%0x4?_0x4fe3ae*0x40+_0x3e2627:_0x3e2627,_0x503059++%0x4)?_0x57b1e1+=String['fromCharCode'](0xff&_0x4fe3ae>>(-0x2*_0x503059&0x6)):0x0){_0x3e2627=_0x4c7e71['indexOf'](_0x3e2627);}for(let _0x1d597c=0x0,_0x4eee44=_0x57b1e1['length'];_0x1d597c<_0x4eee44;_0x1d597c++){_0x22fb4e+='%'+('00'+_0x57b1e1['charCodeAt'](_0x1d597c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x22fb4e);};a0_0x7024['TTfALU']=_0x19ba0f,a0_0x7024['SOivXI']={},a0_0x7024['JwssIr']=!![];}const _0x55696e=_0x575798[0x0],_0x1e80f0=_0x33f18e+_0x55696e,_0x2cdf9f=a0_0x7024['SOivXI'][_0x1e80f0];return!_0x2cdf9f?(_0x70243d=a0_0x7024['TTfALU'](_0x70243d),a0_0x7024['SOivXI'][_0x1e80f0]=_0x70243d):_0x70243d=_0x2cdf9f,_0x70243d;}module[a0_0x1d2316(0x194)]=ExcelGenerator;
1
+ function a0_0x4b4c(_0x3d352c,_0x27bfcf){_0x3d352c=_0x3d352c-0x10a;const _0x217d66=a0_0x217d();let _0x4b4ca2=_0x217d66[_0x3d352c];if(a0_0x4b4c['aHkEcS']===undefined){var _0x570c92=function(_0x2112b7){const _0x26fed1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x426aa6='',_0x562c62='';for(let _0x5d79a7=0x0,_0x26e661,_0x4e00ee,_0x2b0ceb=0x0;_0x4e00ee=_0x2112b7['charAt'](_0x2b0ceb++);~_0x4e00ee&&(_0x26e661=_0x5d79a7%0x4?_0x26e661*0x40+_0x4e00ee:_0x4e00ee,_0x5d79a7++%0x4)?_0x426aa6+=String['fromCharCode'](0xff&_0x26e661>>(-0x2*_0x5d79a7&0x6)):0x0){_0x4e00ee=_0x26fed1['indexOf'](_0x4e00ee);}for(let _0x47d574=0x0,_0x1f3b08=_0x426aa6['length'];_0x47d574<_0x1f3b08;_0x47d574++){_0x562c62+='%'+('00'+_0x426aa6['charCodeAt'](_0x47d574)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x562c62);};a0_0x4b4c['bVmBRF']=_0x570c92,a0_0x4b4c['gQyEqq']={},a0_0x4b4c['aHkEcS']=!![];}const _0x5ec8ae=_0x217d66[0x0],_0xf8c296=_0x3d352c+_0x5ec8ae,_0x1c29f9=a0_0x4b4c['gQyEqq'][_0xf8c296];return!_0x1c29f9?(_0x4b4ca2=a0_0x4b4c['bVmBRF'](_0x4b4ca2),a0_0x4b4c['gQyEqq'][_0xf8c296]=_0x4b4ca2):_0x4b4ca2=_0x1c29f9,_0x4b4ca2;}const a0_0x4a1076=a0_0x4b4c;(function(_0x3ff03b,_0x5c7a30){const _0xd2a74=a0_0x4b4c,_0x5df7fe=_0x3ff03b();while(!![]){try{const _0x672ec8=parseInt(_0xd2a74(0x16f))/0x1*(parseInt(_0xd2a74(0x121))/0x2)+parseInt(_0xd2a74(0x158))/0x3+-parseInt(_0xd2a74(0x166))/0x4*(-parseInt(_0xd2a74(0x116))/0x5)+parseInt(_0xd2a74(0x123))/0x6+parseInt(_0xd2a74(0x139))/0x7+-parseInt(_0xd2a74(0x14e))/0x8+parseInt(_0xd2a74(0x10e))/0x9*(-parseInt(_0xd2a74(0x15b))/0xa);if(_0x672ec8===_0x5c7a30)break;else _0x5df7fe['push'](_0x5df7fe['shift']());}catch(_0x44ec31){_0x5df7fe['push'](_0x5df7fe['shift']());}}}(a0_0x217d,0xc7954));const ExcelJS=require(a0_0x4a1076(0x120)),{logger}=require('./logger');class ExcelGenerator{constructor(){const _0x209722=a0_0x4a1076;this['chunkSize']=parseInt(process['env'][_0x209722(0x11a)],0xa)||0x3e8;}async['generate'](_0x100333){const _0x1e251b=a0_0x4a1076,_0xf19ed4={'ggksF':function(_0x2ac17f,_0x266380){return _0x2ac17f>_0x266380;},'IUJGk':_0x1e251b(0x140)},{data:_0x3091cc,columns:_0x46815c,columnFormats:_0x3671b7,fieldLabels:_0x3907c0,filePath:_0x2ac382,onProgress:_0x5d35c1}=_0x100333;logger['info']({'event':_0x1e251b(0x11f),'rows':_0x3091cc[_0x1e251b(0x10f)],'columns':_0x46815c?.[_0x1e251b(0x10f)]||'auto','columnFormats':_0x3671b7?Object[_0x1e251b(0x13f)](_0x3671b7):null,'fieldLabels':_0x3907c0?Object['keys'](_0x3907c0):null,'streaming':_0xf19ed4[_0x1e251b(0x12d)](_0x3091cc['length'],this[_0x1e251b(0x14a)])},_0xf19ed4[_0x1e251b(0x15d)]);if(_0x3091cc[_0x1e251b(0x10f)]<=this['chunkSize'])return await this[_0x1e251b(0x12f)](_0x3091cc,_0x46815c,_0x3671b7,_0x3907c0,_0x2ac382,_0x5d35c1);return await this['generateStreaming'](_0x3091cc,_0x46815c,_0x3671b7,_0x3907c0,_0x2ac382,_0x5d35c1);}async['generateSimple'](_0x45d59a,_0x256c7f,_0x30730e,_0x182e34,_0x4a74ab,_0x3b0c92){const _0x25556f=a0_0x4a1076,_0x593efe={'zKGkQ':function(_0x13565b,_0x2acf7){return _0x13565b!==_0x2acf7;},'YAlnc':_0x25556f(0x12e),'WyNqP':_0x25556f(0x15c),'qcEEx':_0x25556f(0x127),'npYSf':'center','sgVWZ':function(_0x2693a2,_0x54fbbf){return _0x2693a2(_0x54fbbf);},'qMerM':function(_0x424b1f,_0x4e4b3a){return _0x424b1f(_0x4e4b3a);},'hivmY':'excel_generation_complete'},_0x513a92=new ExcelJS[(_0x25556f(0x176))](),_0x4ad651=_0x513a92[_0x25556f(0x128)](_0x25556f(0x11c)),_0x3a8b47=_0x256c7f||(_0x45d59a[_0x25556f(0x10f)]>0x0?Object[_0x25556f(0x13f)](_0x45d59a[0x0]):[]);_0x4ad651[_0x25556f(0x15f)]=_0x3a8b47[_0x25556f(0x119)](_0x24e087=>{const _0x2f4991=_0x25556f,_0xbd2520={'header':this['formatHeader'](_0x24e087,_0x182e34),'key':_0x24e087,'width':0x14};if(_0x30730e&&_0x30730e[_0x24e087]){const _0x4bad02=_0x30730e[_0x24e087];if(_0x4bad02[_0x2f4991(0x147)]&&_0x593efe['zKGkQ'](_0x4bad02['type'][_0x2f4991(0x16a)](),_0x593efe['YAlnc'])){const _0x96bae7=this['getExcelFormat'](_0x4bad02);_0x96bae7&&(_0xbd2520[_0x2f4991(0x115)]={'numFmt':_0x96bae7});}}return _0xbd2520;}),_0x4ad651[_0x25556f(0x16b)](0x1)['font']={'bold':!![],'color':{'argb':_0x25556f(0x153)}},_0x4ad651[_0x25556f(0x16b)](0x1)[_0x25556f(0x126)]={'type':_0x25556f(0x143),'pattern':_0x25556f(0x124),'fgColor':{'argb':_0x593efe[_0x25556f(0x160)]}},_0x4ad651[_0x25556f(0x16b)](0x1)[_0x25556f(0x177)]={'vertical':_0x593efe['qcEEx'],'horizontal':_0x593efe[_0x25556f(0x117)]};const _0x145a68=_0x30730e?this[_0x25556f(0x110)](_0x45d59a,_0x3a8b47,_0x30730e):_0x45d59a;return _0x4ad651[_0x25556f(0x118)](_0x145a68),_0x30730e&&this[_0x25556f(0x16d)](_0x4ad651,_0x3a8b47,_0x30730e,_0x45d59a['length']),_0x3b0c92&&await _0x593efe['sgVWZ'](_0x3b0c92,0x32),_0x4ad651[_0x25556f(0x13a)]={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x3a8b47['length']}},_0x4ad651[_0x25556f(0x148)]=[{'state':_0x25556f(0x12b),'xSplit':0x0,'ySplit':0x1}],await _0x513a92[_0x25556f(0x11d)]['writeFile'](_0x4a74ab),_0x3b0c92&&await _0x593efe[_0x25556f(0x137)](_0x3b0c92,0x64),logger[_0x25556f(0x16e)]({'event':_0x593efe['hivmY'],'method':'simple','rows':_0x45d59a[_0x25556f(0x10f)]},'Excel\x20generated\x20(simple\x20method)'),_0x4a74ab;}async['generateStreaming'](_0x2325e1,_0x32c434,_0x7c2e02,_0x51c6c6,_0x1f8b9f,_0x43ca19){const _0x396ee8=a0_0x4a1076,_0x274faf={'kSYfi':function(_0x2641ad,_0x32b990){return _0x2641ad>_0x32b990;},'hDFBT':_0x396ee8(0x143),'KLIvv':'solid','ekKLJ':'FF4472C4','QaXag':_0x396ee8(0x127),'ATLna':_0x396ee8(0x152),'nDOnL':function(_0x2eeba0,_0x2b8daa){return _0x2eeba0/_0x2b8daa;},'gvDIr':'excel_chunk_processed','klfiW':'excel_generation_complete','zGprI':_0x396ee8(0x170),'hitMy':_0x396ee8(0x114)},_0x4c710d=new ExcelJS[(_0x396ee8(0x12c))]['xlsx'][(_0x396ee8(0x13b))]({'filename':_0x1f8b9f,'useStyles':!![],'useSharedStrings':!![]}),_0x1d8aee=_0x4c710d[_0x396ee8(0x128)]('Data'),_0x4f2403=_0x32c434||(_0x274faf[_0x396ee8(0x14c)](_0x2325e1[_0x396ee8(0x10f)],0x0)?Object['keys'](_0x2325e1[0x0]):[]),_0x5ca9af={};_0x4f2403['forEach']((_0xc4ece9,_0x5bfbf5)=>{_0x5ca9af[_0xc4ece9]=_0x5bfbf5+0x1;}),_0x1d8aee['columns']=_0x4f2403['map'](_0x27ff70=>{const _0x5f1b63=_0x396ee8,_0x12d6b2={'header':this[_0x5f1b63(0x12a)](_0x27ff70,_0x51c6c6),'key':_0x27ff70,'width':0x14};if(_0x7c2e02&&_0x7c2e02[_0x27ff70]){const _0x5ed353=_0x7c2e02[_0x27ff70];if(_0x5ed353['type']&&_0x5ed353[_0x5f1b63(0x147)]['toLowerCase']()!==_0x5f1b63(0x12e)){const _0x388ecf=this['getExcelFormat'](_0x5ed353);_0x388ecf&&(_0x12d6b2['style']={'numFmt':_0x388ecf});}}return _0x12d6b2;});const _0x34baca=_0x1d8aee[_0x396ee8(0x16b)](0x1);_0x34baca['font']={'bold':!![],'color':{'argb':_0x396ee8(0x153)}},_0x34baca['fill']={'type':_0x274faf['hDFBT'],'pattern':_0x274faf[_0x396ee8(0x14f)],'fgColor':{'argb':_0x274faf[_0x396ee8(0x13e)]}},_0x34baca[_0x396ee8(0x177)]={'vertical':_0x274faf['QaXag'],'horizontal':_0x274faf[_0x396ee8(0x10a)]},_0x34baca[_0x396ee8(0x13c)]();const _0x4bf8f2=_0x2325e1[_0x396ee8(0x10f)];let _0x36a2e5=0x0;for(let _0x2211f9=0x0;_0x2211f9<_0x4bf8f2;_0x2211f9+=this['chunkSize']){const _0x497dfd=_0x2325e1[_0x396ee8(0x15a)](_0x2211f9,_0x2211f9+this[_0x396ee8(0x14a)]);for(const _0x405599 of _0x497dfd){const _0x45914f=_0x7c2e02?this['preprocessTextRow'](_0x405599,_0x4f2403,_0x7c2e02):_0x405599,_0x1660f4=_0x1d8aee['addRow'](_0x45914f);_0x7c2e02&&this[_0x396ee8(0x14b)](_0x1660f4,_0x45914f,_0x4f2403,_0x7c2e02),_0x1660f4['commit'](),_0x36a2e5++;}if(_0x43ca19){const _0x34096f=Math[_0x396ee8(0x134)](_0x274faf['nDOnL'](_0x36a2e5,_0x4bf8f2)*0x64);await _0x43ca19(_0x34096f);}logger[_0x396ee8(0x141)]({'event':_0x274faf[_0x396ee8(0x151)],'processed':_0x36a2e5,'total':_0x4bf8f2},_0x396ee8(0x157)+_0x36a2e5+'/'+_0x4bf8f2+_0x396ee8(0x133));}return _0x1d8aee[_0x396ee8(0x13c)](),await _0x4c710d[_0x396ee8(0x13c)](),logger[_0x396ee8(0x16e)]({'event':_0x274faf[_0x396ee8(0x162)],'method':_0x274faf[_0x396ee8(0x167)],'rows':_0x4bf8f2,'chunks':Math['ceil'](_0x4bf8f2/this['chunkSize'])},_0x274faf[_0x396ee8(0x131)]),_0x1f8b9f;}['formatHeader'](_0xc5f8ea,_0x3be4a8){const _0xddf9ed=a0_0x4a1076,_0xfd70f4={'brSOT':function(_0x523ffe,_0x399747){return _0x523ffe(_0x399747);}};if(_0x3be4a8&&_0x3be4a8[_0xc5f8ea])return _0x3be4a8[_0xc5f8ea];return _0xfd70f4['brSOT'](String,_0xc5f8ea)[_0xddf9ed(0x150)]();}['validateColumns'](_0xb8bbf2,_0x406e62){const _0x1ce927=a0_0x4a1076,_0x1512d1={'paPSl':function(_0x4957d3,_0x36bb23){return _0x4957d3>_0x36bb23;}};if(!_0x406e62||_0x406e62['length']===0x0)return!![];if(_0xb8bbf2[_0x1ce927(0x10f)]===0x0)return!![];const _0x5b65b9=Object[_0x1ce927(0x13f)](_0xb8bbf2[0x0]),_0x2bb0d6=_0x406e62['filter'](_0x48eb1b=>!_0x5b65b9['includes'](_0x48eb1b));if(_0x1512d1[_0x1ce927(0x16c)](_0x2bb0d6['length'],0x0))throw new Error(_0x1ce927(0x155)+_0x2bb0d6['join'](',\x20'));return!![];}['getExcelFormat'](_0x146a71){const _0x8bbd0f=a0_0x4a1076,_0x9ff9b={'ZUNdQ':'dd/mm/yyyy','repSp':function(_0x3edaec,_0x204bec){return _0x3edaec||_0x204bec;},'EttoD':'currency','susLR':_0x8bbd0f(0x14d),'yNAgb':'0.00%','jRcgP':'text'};if(!_0x146a71||!_0x146a71['type'])return null;const {type:_0x4167e9,format:_0x2847da}=_0x146a71;switch(_0x4167e9['toLowerCase']()){case'date':return _0x2847da?_0x2847da['toLowerCase']():_0x9ff9b[_0x8bbd0f(0x11b)];case _0x8bbd0f(0x15e):return _0x9ff9b['repSp'](_0x2847da,'#,##0.00');case _0x9ff9b[_0x8bbd0f(0x172)]:return _0x9ff9b['repSp'](_0x2847da,_0x9ff9b[_0x8bbd0f(0x122)]);case _0x8bbd0f(0x10b):return _0x9ff9b['repSp'](_0x2847da,_0x9ff9b[_0x8bbd0f(0x165)]);case _0x9ff9b[_0x8bbd0f(0x11e)]:return'@';default:return null;}}['applyCellFormatting'](_0x4dfa0a,_0x54aaa3,_0x6b51d6,_0x36c7ad){const _0x59b5f1={'YQuyb':function(_0x28bd53,_0x53cdc1){return _0x28bd53+_0x53cdc1;},'iUZkf':function(_0x147894,_0x4d214e){return _0x147894+_0x4d214e;}};if(!_0x6b51d6)return;_0x54aaa3['forEach']((_0x48b47b,_0x316626)=>{const _0x1b8586=a0_0x4b4c,_0x5ec962=_0x6b51d6[_0x48b47b];if(!_0x5ec962)return;const _0x591d68=_0x59b5f1[_0x1b8586(0x130)](_0x316626,0x1);for(let _0x4af163=0x2;_0x4af163<=_0x59b5f1[_0x1b8586(0x112)](_0x36c7ad,0x1);_0x4af163++){const _0x47371f=_0x4dfa0a['getCell'](_0x4af163,_0x591d68);this['formatCell'](_0x47371f,_0x5ec962);}});}[a0_0x4a1076(0x14b)](_0x1b00f1,_0x19e6c6,_0x278f2d,_0x457bab){const _0x303b97={'knOJz':function(_0x47aa4f,_0x226ee1){return _0x47aa4f+_0x226ee1;}};if(!_0x457bab)return;_0x278f2d['forEach']((_0x2d3fa2,_0x37ca90)=>{const _0x38b192=a0_0x4b4c,_0x405a6d=_0x457bab[_0x2d3fa2];if(!_0x405a6d)return;const _0x284323=_0x1b00f1[_0x38b192(0x144)](_0x303b97['knOJz'](_0x37ca90,0x1));this['formatCell'](_0x284323,_0x405a6d);});}[a0_0x4a1076(0x161)](_0x43a0c7,_0x54420b){const _0x522085=a0_0x4a1076,_0x1940b2={'XpUNI':function(_0x3a8eda,_0x1682c8){return _0x3a8eda===_0x1682c8;},'wtwKb':function(_0x4f232d,_0x5127c4){return _0x4f232d===_0x5127c4;},'qQiQo':'number','XfwNA':function(_0x5638e1,_0x144c94){return _0x5638e1===_0x144c94;},'ZKaaD':'percentage','yggly':'text','ECUlI':function(_0x40ec80,_0x10be71){return _0x40ec80!==_0x10be71;}};if(!_0x54420b||!_0x54420b[_0x522085(0x147)])return;const {type:_0x383172,format:_0x3322de}=_0x54420b;if(_0x1940b2[_0x522085(0x145)](_0x383172['toLowerCase'](),_0x522085(0x12e))&&_0x43a0c7[_0x522085(0x149)]){const _0x5c61aa=this['formatDateString'](_0x43a0c7[_0x522085(0x149)],_0x3322de);_0x5c61aa&&(_0x43a0c7['value']=_0x5c61aa);return;}if((_0x1940b2['wtwKb'](_0x383172['toLowerCase'](),_0x1940b2[_0x522085(0x173)])||_0x383172[_0x522085(0x16a)]()==='currency'||_0x1940b2['XfwNA'](_0x383172[_0x522085(0x16a)](),_0x1940b2['ZKaaD']))&&_0x43a0c7[_0x522085(0x149)]){const _0x4cd558=this[_0x522085(0x168)](_0x43a0c7['value']);if(_0x4cd558!==null){_0x43a0c7['value']=_0x4cd558;const _0x58a336=this[_0x522085(0x142)](_0x54420b);_0x58a336&&(_0x43a0c7['numFmt']=_0x58a336);}}_0x383172['toLowerCase']()===_0x1940b2[_0x522085(0x159)]&&_0x43a0c7[_0x522085(0x149)]&&(_0x43a0c7['numFmt']='@',_0x1940b2['ECUlI'](typeof _0x43a0c7['value'],'string')&&(_0x43a0c7['value']=String(_0x43a0c7['value'])),_0x43a0c7['alignment']={'horizontal':'left','vertical':_0x522085(0x127)});}['formatDateString'](_0x52c6b0,_0x12a642){const _0xdabb0a=a0_0x4a1076,_0x137a3a={'NbXME':function(_0x2f6cc3,_0x154ca9){return _0x2f6cc3 instanceof _0x154ca9;},'NJHPT':function(_0x3cd50c,_0x2a6ec3){return _0x3cd50c+_0x2a6ec3;},'uLThG':'string','aUxTV':function(_0x4ffe4,_0x172274,_0x3b4c92){return _0x4ffe4(_0x172274,_0x3b4c92);},'BSnlo':function(_0x5cab88,_0x199f8f){return _0x5cab88===_0x199f8f;},'lvxXv':'number','ncsYq':function(_0x53b747,_0x7b2058){return _0x53b747(_0x7b2058);},'TSDQU':function(_0x14f1e7,_0x6f54d9){return _0x14f1e7||_0x6f54d9;},'qIsol':function(_0x4e310b,_0x5c403a){return _0x4e310b===_0x5c403a;},'hSqxW':_0xdabb0a(0x129),'dDYWN':'dd-mm-yyyy','eoIvt':function(_0x24ddfa,_0x3c7df6){return _0x24ddfa===_0x3c7df6;}};if(!_0x52c6b0)return null;let _0x20c677,_0x2bd23f,_0x1392dc;if(_0x137a3a['NbXME'](_0x52c6b0,Date))_0x20c677=_0x52c6b0[_0xdabb0a(0x125)](),_0x2bd23f=_0x137a3a['NJHPT'](_0x52c6b0['getUTCMonth'](),0x1),_0x1392dc=_0x52c6b0[_0xdabb0a(0x113)]();else{if(typeof _0x52c6b0===_0x137a3a['uLThG']){const _0x64318d=_0x52c6b0[_0xdabb0a(0x135)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x64318d)_0x20c677=parseInt(_0x64318d[0x1],0xa),_0x2bd23f=_0x137a3a[_0xdabb0a(0x164)](parseInt,_0x64318d[0x2],0xa),_0x1392dc=parseInt(_0x64318d[0x3],0xa);else{const _0x54d8f9=_0x52c6b0[_0xdabb0a(0x135)](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x54d8f9)_0x1392dc=parseInt(_0x54d8f9[0x1],0xa),_0x2bd23f=parseInt(_0x54d8f9[0x2],0xa),_0x20c677=_0x137a3a['aUxTV'](parseInt,_0x54d8f9[0x3],0xa);else{const _0x17ee02=_0x52c6b0[_0xdabb0a(0x135)](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x17ee02&&(_0x20c677=parseInt(_0x17ee02[0x1],0xa),_0x2bd23f=_0x137a3a[_0xdabb0a(0x164)](parseInt,_0x17ee02[0x2],0xa),_0x1392dc=parseInt(_0x17ee02[0x3],0xa));}}}else{if(_0x137a3a[_0xdabb0a(0x156)](typeof _0x52c6b0,_0x137a3a[_0xdabb0a(0x136)])){const _0x3f8e36=new Date(_0x52c6b0);!_0x137a3a[_0xdabb0a(0x10d)](isNaN,_0x3f8e36['getTime']())&&(_0x20c677=_0x3f8e36['getUTCFullYear'](),_0x2bd23f=_0x3f8e36[_0xdabb0a(0x10c)]()+0x1,_0x1392dc=_0x3f8e36[_0xdabb0a(0x113)]());}}}if(!_0x20c677||!_0x2bd23f||!_0x1392dc)return null;const _0x44546a=String(_0x1392dc)['padStart'](0x2,'0'),_0x244220=String(_0x2bd23f)['padStart'](0x2,'0'),_0x1c27cb=String(_0x20c677),_0x4ff54f=_0x137a3a[_0xdabb0a(0x132)](_0x12a642,'DD/MM/YYYY')['toLowerCase']();if(_0x137a3a['BSnlo'](_0x4ff54f,_0xdabb0a(0x13d)))return _0x44546a+'/'+_0x244220+'/'+_0x1c27cb;else{if(_0x137a3a['qIsol'](_0x4ff54f,_0x137a3a[_0xdabb0a(0x154)]))return _0x244220+'/'+_0x44546a+'/'+_0x1c27cb;else{if(_0x137a3a['BSnlo'](_0x4ff54f,'yyyy-mm-dd'))return _0x1c27cb+'-'+_0x244220+'-'+_0x44546a;else{if(_0x4ff54f===_0x137a3a['dDYWN'])return _0x44546a+'-'+_0x244220+'-'+_0x1c27cb;else return _0x137a3a[_0xdabb0a(0x169)](_0x4ff54f,'yyyy/mm/dd')?_0x1c27cb+'/'+_0x244220+'/'+_0x44546a:_0x44546a+'/'+_0x244220+'/'+_0x1c27cb;}}}}['parseNumber'](_0x179359){const _0x21052d=a0_0x4a1076,_0x288f1f={'CEuYI':function(_0x17b23f,_0x2e7622){return _0x17b23f===_0x2e7622;},'OJgRl':function(_0x282789,_0x1a5f2c){return _0x282789===_0x1a5f2c;},'bRmkl':function(_0x510ce5,_0x213c09){return _0x510ce5(_0x213c09);}};if(_0x288f1f['CEuYI'](typeof _0x179359,_0x21052d(0x15e)))return _0x179359;if(_0x288f1f[_0x21052d(0x138)](typeof _0x179359,_0x21052d(0x174))){const _0x57723c=_0x179359['replace'](/[^\d.-]/g,''),_0x27d028=_0x288f1f['bRmkl'](parseFloat,_0x57723c);if(!isNaN(_0x27d028))return _0x27d028;}return null;}['preprocessTextColumns'](_0x1f612e,_0xc7f9f4,_0x2e179f){const _0x576020=a0_0x4a1076,_0x361521={'UAttm':'text','mWWkO':function(_0x4ab3fe,_0x52b349){return _0x4ab3fe!==_0x52b349;}};if(!_0x2e179f)return _0x1f612e;const _0x1cf946=[];_0xc7f9f4[_0x576020(0x163)](_0x4d5526=>{const _0x3c75a2=_0x576020,_0x180bbd=_0x2e179f[_0x4d5526];_0x180bbd&&_0x180bbd['type']&&_0x180bbd['type'][_0x3c75a2(0x16a)]()===_0x361521[_0x3c75a2(0x111)]&&_0x1cf946[_0x3c75a2(0x146)](_0x4d5526);});if(_0x1cf946['length']===0x0)return _0x1f612e;return _0x1f612e[_0x576020(0x119)](_0x349ac6=>{const _0x33cf5b=_0x576020,_0x2f2825={..._0x349ac6};return _0x1cf946[_0x33cf5b(0x163)](_0x2d7356=>{const _0x5d7beb=_0x33cf5b;_0x361521[_0x5d7beb(0x171)](_0x2f2825[_0x2d7356],null)&&_0x2f2825[_0x2d7356]!==undefined&&(_0x2f2825[_0x2d7356]='\x27'+String(_0x2f2825[_0x2d7356]));}),_0x2f2825;});}[a0_0x4a1076(0x175)](_0x55a6b3,_0x223d69,_0x13c30b){const _0x38d7f1=a0_0x4a1076,_0x4bb8ad={'uFwyg':'text','LOTZx':function(_0x4e7b9b,_0x2549bb){return _0x4e7b9b!==_0x2549bb;},'kDrgH':function(_0x47cd64,_0xda7fe2){return _0x47cd64+_0xda7fe2;}};if(!_0x13c30b)return _0x55a6b3;const _0x2a569a=[];_0x223d69[_0x38d7f1(0x163)](_0x4978a7=>{const _0x578660=_0x38d7f1,_0x4ac13a=_0x13c30b[_0x4978a7];_0x4ac13a&&_0x4ac13a['type']&&_0x4ac13a['type'][_0x578660(0x16a)]()===_0x4bb8ad['uFwyg']&&_0x2a569a[_0x578660(0x146)](_0x4978a7);});if(_0x2a569a[_0x38d7f1(0x10f)]===0x0)return _0x55a6b3;const _0x40db34={..._0x55a6b3};return _0x2a569a['forEach'](_0x34df4b=>{_0x40db34[_0x34df4b]!==null&&_0x4bb8ad['LOTZx'](_0x40db34[_0x34df4b],undefined)&&(_0x40db34[_0x34df4b]=_0x4bb8ad['kDrgH']('\x27',String(_0x40db34[_0x34df4b])));}),_0x40db34;}}function a0_0x217d(){const _0x280b95=['AfnXEfC','sw52ywXPzcbJB2X1Bw5ZoIa','qLnUBg8','uhjVy2vZC2vKia','nJy1mte1wvblveT2','EwDNBhK','C2XPy2u','mty5mZeZmgDkBeP3uq','rKy0ndCYqZq','svvkr2S','BNvTyMvY','y29SDw1UCW','v3LoCva','zM9YBwf0q2vSBa','A2XMAvC','zM9YrwfJAa','yvv4vfy','Eu5bz2i','mty5ntjrCMTPshy','EKDWCKK','CgfYC2voDw1Izxi','zw9jDNq','Dg9mB3DLCKnHC2u','z2v0uM93','Cgfqu2W','yxbWBhLdzwXSrM9YBwf0DgLUzW','Aw5MBW','n0Hxz09Kzq','C3rYzwfTAw5N','BvDxA08','rxr0B0q','CvfPuw8','C3rYAw5N','ChjLChjVy2vZC1rLEhrsB3C','v29YA2jVB2S','ywXPz25Tzw50','qvrmBMe','CgvYy2vUDgfNzq','z2v0vvrdtw9UDgG','BMnZwxe','mti2CMfpAgvX','BgvUz3rO','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','vuf0Dg0','AvvAA2y','z2v0vvrdrgf0zq','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','C3r5Bgu','ody1s2HUv29K','BNbzu2y','ywrKuM93CW','BwfW','rvHqt1jux0nivu5lx1njwKu','wLvozfe','rgf0yq','EgXZEa','ALjJz1a','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','zxHJzwXQCW','mJqYnJG2EMfhy290','C3vZtfi','nZK2mta4ohrxrejKta','C29SAwq','z2v0vvrdrNvSBfLLyxi','zMLSBa','BwLKzgXL','ywrKv29YA3nOzwv0','Bw0VzgqVExL5Eq','zM9YBwf0sgvHzgvY','zNjVEMvU','C3rYzwfT','z2DRC0y','zgf0zq','z2vUzxjHDgvtAw1WBgu','wvf1Ewi','AgL0txK','vfneuvu','ihjVD3m','CM91BMq','Bwf0y2G','Bhz4why','Cu1LCK0','t0PNuMW','mJq2mtmWnvvNz0zqyq','yxv0B0zPBhrLCG','v29YA2jVB2TxCML0zxi','y29TBwL0','zgqVBw0VExL5Eq','zwTlteO','A2v5CW','rxHJzwWGz2vUzxjHDgLVBIbZDgfYDgvK','zgvIDwC','z2v0rxHJzwXgB3jTyxq','Cgf0DgvYBG','z2v0q2vSBa','whbvtKK','ChvZAa','DhLWzq','DMLLD3m','DMfSDwu','y2H1BMTtAxPL','yxbWBhLsB3DgB3jTyxr0Aw5N','A1nzzMK','iLjWiciJlcmJma','mJm1odK1mKP0yM9eBW','s0XjDNy','Dg9vChbLCKnHC2u','z3zesxi','y2vUDgvY','rKzgrKzgrKy'];a0_0x217d=function(){return _0x280b95;};return a0_0x217d();}module['exports']=ExcelGenerator;
@@ -1 +1 @@
1
- const a0_0x1de6ab=a0_0x26bc;(function(_0x4d5821,_0x2a8acd){const _0x2d4e0b=a0_0x26bc,_0x4d9019=_0x4d5821();while(!![]){try{const _0x41bafd=parseInt(_0x2d4e0b(0xf4))/0x1+parseInt(_0x2d4e0b(0xf0))/0x2+-parseInt(_0x2d4e0b(0xee))/0x3+parseInt(_0x2d4e0b(0xf8))/0x4+parseInt(_0x2d4e0b(0xf6))/0x5+parseInt(_0x2d4e0b(0x10a))/0x6*(parseInt(_0x2d4e0b(0xfa))/0x7)+-parseInt(_0x2d4e0b(0xfb))/0x8*(parseInt(_0x2d4e0b(0x110))/0x9);if(_0x41bafd===_0x2a8acd)break;else _0x4d9019['push'](_0x4d9019['shift']());}catch(_0x3e7cef){_0x4d9019['push'](_0x4d9019['shift']());}}}(a0_0x20f5,0xf414f));function a0_0x20f5(){const _0x121ad3=['AfPysw8','CMvWBgfJzq','CgfKu3rHCNq','BgvUz3rO','BM9YBwfSAxPLsgvHzgvY','CwPhsge','B2jQzwn0','mZy1nJqWm2Pvue5rAa','C2XPy2u','mJKYmty4mfnyuw1TDG','uuvAA0i','Aw5MBW','BM9YBwfSAxPLq2vSBfzHBhvL','mti1odK1m29Oz0PnCa','uwThBwC','nJm2otC3mgfuCwjpvq','zMLSDgvY','mZu3nJq2mhLzvxbhva','BwfW','mJe2nJKXm1nxzg9nrq','mJm4mZa4odHAvMH2yLa','tM8GD29YA3nOzwv0igzVDw5KigLUiev4y2vSigzPBgu','AM9PBG','AgfZ','CMvZDwX0','Dgv4Da','zwfJAfjVDW','jdfFjdi','A1rJuMy','zxHJzwXFCgfYC2vFzxjYB3i','zxHWB3j0CW','zxHJzwXFCgfYC2vK','CMvHzezPBgu','qKnezNq','D29YA3nOzwv0CW','nM1NqNjgBa','BwvZC2fNzq','z2v0rgf0zq','v29YA2jVB2S','DhzhEKO','q1fnqxa','oxrXBw1prW','CMLJAfrLEhq','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq','z2v0tw9UDgG','zxjYB3i','z2v0rNvSBfLLyxi','zxHJzwXQCW'];a0_0x20f5=function(){return _0x121ad3;};return a0_0x20f5();}const ExcelJS=require(a0_0x1de6ab(0x116)),{logger}=require('./logger');class ExcelParser{async['parseExcelFile'](_0x4f08ea){const _0x2e842a=a0_0x1de6ab,_0x21dd16={'QEZkB':function(_0x42debc,_0x2c19c9){return _0x42debc+_0x2c19c9;}};try{const _0x272cf0=new ExcelJS[(_0x2e842a(0x10d))]();await _0x272cf0['xlsx'][_0x2e842a(0x107)](_0x4f08ea);const _0x470efc=_0x272cf0[_0x2e842a(0x109)][0x0];if(!_0x470efc)throw new Error(_0x2e842a(0xfc));const _0x50d6b1=[];let _0x3cb983=[];return _0x470efc[_0x2e842a(0x101)]((_0x1dea1e,_0x27e1a8)=>{const _0x49e927=_0x2e842a,_0x53948e={'CQMAp':function(_0x509a8b,_0x18d88a){const _0x26d217=a0_0x26bc;return _0x21dd16[_0x26d217(0xf1)](_0x509a8b,_0x18d88a);}},_0x5d1734=_0x1dea1e['values'];if(_0x27e1a8===0x1)_0x3cb983=_0x5d1734[_0x49e927(0xef)](0x1)['map'](_0x117bc5=>this['normalizeHeader'](_0x117bc5));else{const _0x5e71d8={};_0x3cb983['forEach']((_0x4ce2b3,_0x48af91)=>{const _0x3a3d60=_0x49e927,_0x898c23=_0x5d1734[_0x53948e[_0x3a3d60(0x10f)](_0x48af91,0x1)];_0x5e71d8[_0x4ce2b3]=this['normalizeCellValue'](_0x898c23);}),_0x50d6b1['push'](_0x5e71d8);}}),logger[_0x2e842a(0xf2)]({'event':_0x2e842a(0x106),'filePath':_0x4f08ea,'totalRows':_0x50d6b1['length'],'headers':_0x3cb983[_0x2e842a(0xea)]},'Excel\x20file\x20parsed\x20successfully'),{'headers':_0x3cb983,'rows':_0x50d6b1,'totalRows':_0x50d6b1[_0x2e842a(0xea)]};}catch(_0x3e3034){logger[_0x2e842a(0x114)]({'event':_0x2e842a(0x104),'filePath':_0x4f08ea,'error':_0x3e3034[_0x2e842a(0x10b)]},'Failed\x20to\x20parse\x20Excel\x20file');throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x3e3034['message']);}}[a0_0x1de6ab(0xeb)](_0x4917df){const _0xcbbe54=a0_0x1de6ab,_0x14916e={'eNtqV':function(_0x4096a3,_0x37e09a){return _0x4096a3===_0x37e09a;},'qjGHa':function(_0x17c7da,_0x17974d){return _0x17c7da(_0x17974d);},'hZXIo':_0xcbbe54(0x102)};if(_0x4917df===null||_0x14916e['eNtqV'](_0x4917df,undefined))return'';let _0x49affc=_0x14916e[_0xcbbe54(0xec)](String,_0x4917df)['trim']();return _0x49affc=_0x49affc['replace'](/\s+/g,'_')[_0xcbbe54(0x118)](/([a-z])([A-Z])/g,_0x14916e['hZXIo'])['replace'](/([A-Z]+)([A-Z][a-z])/g,_0x14916e[_0xcbbe54(0x117)])['toLowerCase'](),_0x49affc;}[a0_0x1de6ab(0xf3)](_0x10237f){const _0x514251=a0_0x1de6ab,_0x57619c={'tvGzJ':function(_0x156a2e,_0x3f78f0){return _0x156a2e===_0x3f78f0;},'YXzjj':function(_0x197f73,_0x367e90){return _0x197f73 instanceof _0x367e90;},'QkGmg':function(_0x34a823,_0x158a26){return _0x34a823(_0x158a26);},'kTcRf':'string','jVNAo':function(_0x5b6c65,_0x582e45){return _0x5b6c65(_0x582e45);},'hQRZw':function(_0x1e8a2b,_0x1cdb95){return _0x1e8a2b!==_0x1cdb95;}};if(_0x57619c[_0x514251(0x10e)](_0x10237f,null)||_0x57619c['tvGzJ'](_0x10237f,undefined))return null;if(_0x57619c['YXzjj'](_0x10237f,Date)){const _0x97153=_0x10237f[_0x514251(0x115)](),_0xeaa471=_0x57619c[_0x514251(0xf5)](String,_0x10237f[_0x514251(0x113)]()+0x1)[_0x514251(0x119)](0x2,'0'),_0x39cc70=String(_0x10237f[_0x514251(0x10c)]())['padStart'](0x2,'0');return _0x97153+'-'+_0xeaa471+'-'+_0x39cc70;}if(_0x57619c['tvGzJ'](typeof _0x10237f,_0x57619c['kTcRf'])){const _0x47c1b8=_0x10237f['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x47c1b8){const _0x2eaa1d=_0x57619c['jVNAo'](String,_0x47c1b8[0x1])[_0x514251(0x119)](0x2,'0'),_0x2634a3=String(_0x47c1b8[0x2])['padStart'](0x2,'0'),_0x5006cb=_0x47c1b8[0x3];return _0x5006cb+'-'+_0x2634a3+'-'+_0x2eaa1d;}}if(_0x10237f&&typeof _0x10237f===_0x514251(0xed)&&_0x10237f[_0x514251(0x111)])return _0x10237f['richText'][_0x514251(0xf9)](_0x28a237=>_0x28a237[_0x514251(0x100)])[_0x514251(0xfd)]('');if(_0x10237f&&typeof _0x10237f==='object'&&_0x57619c['hQRZw'](_0x10237f['result'],undefined))return this[_0x514251(0xf3)](_0x10237f[_0x514251(0xff)]);if(_0x57619c[_0x514251(0x10e)](typeof _0x10237f,_0x57619c[_0x514251(0x103)]))return _0x10237f['trim']();return _0x10237f;}[a0_0x1de6ab(0x112)](_0x4c0a6a,_0x1870c3){const _0x687591=a0_0x1de6ab,_0x5a5d06={'BCDft':function(_0x3a82da,_0x2afea1){return _0x3a82da===_0x2afea1;}},_0x51d4ad=new Set(_0x4c0a6a),_0x3eb74a=new Set(_0x1870c3),_0x3b291e=_0x1870c3['filter'](_0x35c5d7=>!_0x51d4ad[_0x687591(0xfe)](_0x35c5d7)),_0xeaa5ec=_0x4c0a6a[_0x687591(0xf7)](_0x52fccb=>!_0x3eb74a['has'](_0x52fccb)),_0x2ebeb1=_0x5a5d06[_0x687591(0x108)](_0x3b291e['length'],0x0);return{'valid':_0x2ebeb1,'missingFields':_0x3b291e,'extraFields':_0xeaa5ec};}}function a0_0x26bc(_0x5ca242,_0x59dce3){_0x5ca242=_0x5ca242-0xea;const _0x20f52e=a0_0x20f5();let _0x26bc80=_0x20f52e[_0x5ca242];if(a0_0x26bc['QEJwKq']===undefined){var _0x336cc5=function(_0x5175c8){const _0x430b14='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xcaca54='',_0x434037='';for(let _0x15385e=0x0,_0x11b308,_0x3bca23,_0x4e0fba=0x0;_0x3bca23=_0x5175c8['charAt'](_0x4e0fba++);~_0x3bca23&&(_0x11b308=_0x15385e%0x4?_0x11b308*0x40+_0x3bca23:_0x3bca23,_0x15385e++%0x4)?_0xcaca54+=String['fromCharCode'](0xff&_0x11b308>>(-0x2*_0x15385e&0x6)):0x0){_0x3bca23=_0x430b14['indexOf'](_0x3bca23);}for(let _0x32c9c7=0x0,_0x30d5d1=_0xcaca54['length'];_0x32c9c7<_0x30d5d1;_0x32c9c7++){_0x434037+='%'+('00'+_0xcaca54['charCodeAt'](_0x32c9c7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x434037);};a0_0x26bc['xqGHKA']=_0x336cc5,a0_0x26bc['JvsrDs']={},a0_0x26bc['QEJwKq']=!![];}const _0x11f53a=_0x20f52e[0x0],_0x58b488=_0x5ca242+_0x11f53a,_0x284db4=a0_0x26bc['JvsrDs'][_0x58b488];return!_0x284db4?(_0x26bc80=a0_0x26bc['xqGHKA'](_0x26bc80),a0_0x26bc['JvsrDs'][_0x58b488]=_0x26bc80):_0x26bc80=_0x284db4,_0x26bc80;}module[a0_0x1de6ab(0x105)]=new ExcelParser();
1
+ function a0_0x23fd(_0x9971bd,_0x1cc7a1){_0x9971bd=_0x9971bd-0x9f;const _0x582950=a0_0x5829();let _0x23fdda=_0x582950[_0x9971bd];if(a0_0x23fd['vdrJIW']===undefined){var _0x1bed6b=function(_0x4b1ba5){const _0x531a35='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x36c708='',_0x164b18='';for(let _0x5d870d=0x0,_0x5a5dbd,_0x2a757f,_0x5d10e0=0x0;_0x2a757f=_0x4b1ba5['charAt'](_0x5d10e0++);~_0x2a757f&&(_0x5a5dbd=_0x5d870d%0x4?_0x5a5dbd*0x40+_0x2a757f:_0x2a757f,_0x5d870d++%0x4)?_0x36c708+=String['fromCharCode'](0xff&_0x5a5dbd>>(-0x2*_0x5d870d&0x6)):0x0){_0x2a757f=_0x531a35['indexOf'](_0x2a757f);}for(let _0x4b4efc=0x0,_0x1ff555=_0x36c708['length'];_0x4b4efc<_0x1ff555;_0x4b4efc++){_0x164b18+='%'+('00'+_0x36c708['charCodeAt'](_0x4b4efc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x164b18);};a0_0x23fd['HHQald']=_0x1bed6b,a0_0x23fd['VodVNX']={},a0_0x23fd['vdrJIW']=!![];}const _0x491a97=_0x582950[0x0],_0x8bc07d=_0x9971bd+_0x491a97,_0x14229f=a0_0x23fd['VodVNX'][_0x8bc07d];return!_0x14229f?(_0x23fdda=a0_0x23fd['HHQald'](_0x23fdda),a0_0x23fd['VodVNX'][_0x8bc07d]=_0x23fdda):_0x23fdda=_0x14229f,_0x23fdda;}const a0_0x3e1f93=a0_0x23fd;(function(_0x1115f3,_0x50907c){const _0x14b9f2=a0_0x23fd,_0x5da2ad=_0x1115f3();while(!![]){try{const _0x38310b=-parseInt(_0x14b9f2(0xa6))/0x1+parseInt(_0x14b9f2(0xc8))/0x2+parseInt(_0x14b9f2(0xa0))/0x3*(parseInt(_0x14b9f2(0xc4))/0x4)+parseInt(_0x14b9f2(0xaa))/0x5+parseInt(_0x14b9f2(0xad))/0x6+-parseInt(_0x14b9f2(0xa2))/0x7*(parseInt(_0x14b9f2(0xbe))/0x8)+parseInt(_0x14b9f2(0xbb))/0x9*(parseInt(_0x14b9f2(0xc1))/0xa);if(_0x38310b===_0x50907c)break;else _0x5da2ad['push'](_0x5da2ad['shift']());}catch(_0x1a9b6b){_0x5da2ad['push'](_0x5da2ad['shift']());}}}(a0_0x5829,0xafb72));const ExcelJS=require('exceljs'),{logger}=require(a0_0x3e1f93(0xa7));function a0_0x5829(){const _0x518f09=['CMLJAfrLEhq','ndi1ndi4Awfwtg5I','CgfKu3rHCNq','ounUwLPjCW','Dg9mB3DLCKnHC2u','nJy1DLbbz2np','BwfW','DhjPBq','Aw5MBW','mtm4mdi5ngfHD2LUuq','lI9SB2DNzxi','zwfJAfjVDW','zxHJzwXFCgfYC2vFzxjYB3i','mZC0mZCXmeT6EM1MsG','z2v0rgf0zq','CMvZDwX0','odqWnZm5oe9kqK11ta','wwnZEue','AM9PBG','BM9YBwfSAxPLsgvHzgvY','rxHJzwWGzMLSzsbWyxjZzwqGC3vJy2vZC2z1BgX5','rvHUwhO','z2v0rNvSBfLLyxi','BgvUz3rO','zMLSDgvY','vLHNqMK','BM9YBwfSAxPLq2vSBfzHBhvL','z2v0tw9UDgG','BwvZC2fNzq','D29YA3nOzwv0CW','nZq3DLvJAxzO','EgXZEa','AgfZ','otmXmJHvCwXvv3m','Dgv4Da','B2jQzwn0','nJy3mZbrzxjQuNu','CgfYC2vfEgnLBezPBgu','C3rYAw5N','mZG1odi4u3rYzhvY','jdfFjdi','v29YA2jVB2S'];a0_0x5829=function(){return _0x518f09;};return a0_0x5829();}class ExcelParser{async[a0_0x3e1f93(0xc2)](_0x51e3df){const _0x5511ef=a0_0x3e1f93,_0x4418f3={'tVhLq':function(_0x2177fb,_0x1a1802){return _0x2177fb+_0x1a1802;},'WJgnD':'No\x20worksheet\x20found\x20in\x20Excel\x20file','vEugt':'excel_parsed'};try{const _0x389173=new ExcelJS[(_0x5511ef(0xc6))]();await _0x389173[_0x5511ef(0xbc)]['readFile'](_0x51e3df);const _0x2c0f21=_0x389173[_0x5511ef(0xba)][0x0];if(!_0x2c0f21)throw new Error(_0x4418f3['WJgnD']);const _0x2a4acf=[];let _0x118814=[];return _0x2c0f21[_0x5511ef(0xa8)]((_0x36e3fc,_0x446b2c)=>{const _0x4931aa=_0x5511ef,_0x1d4286=_0x36e3fc['values'];if(_0x446b2c===0x1)_0x118814=_0x1d4286['slice'](0x1)[_0x4931aa(0xa3)](_0xde22a4=>this[_0x4931aa(0xb0)](_0xde22a4));else{const _0x51691d={};_0x118814['forEach']((_0x1f0d42,_0x4da5d6)=>{const _0x26234a=_0x1d4286[_0x4418f3['tVhLq'](_0x4da5d6,0x1)];_0x51691d[_0x1f0d42]=this['normalizeCellValue'](_0x26234a);}),_0x2a4acf['push'](_0x51691d);}}),logger[_0x5511ef(0xa5)]({'event':_0x4418f3['vEugt'],'filePath':_0x51e3df,'totalRows':_0x2a4acf[_0x5511ef(0xb4)],'headers':_0x118814[_0x5511ef(0xb4)]},_0x5511ef(0xb1)),{'headers':_0x118814,'rows':_0x2a4acf,'totalRows':_0x2a4acf['length']};}catch(_0x5b0554){logger['error']({'event':_0x5511ef(0xa9),'filePath':_0x51e3df,'error':_0x5b0554[_0x5511ef(0xb9)]},'Failed\x20to\x20parse\x20Excel\x20file');throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x5b0554[_0x5511ef(0xb9)]);}}[a0_0x3e1f93(0xb0)](_0x538e35){const _0x371055=a0_0x3e1f93,_0x358e10={'EXnXz':function(_0x4e2ce3,_0x177db5){return _0x4e2ce3===_0x177db5;},'JzqEP':'$1_$2'};if(_0x538e35===null||_0x358e10[_0x371055(0xb2)](_0x538e35,undefined))return'';let _0x94140b=String(_0x538e35)[_0x371055(0xa4)]();return _0x94140b=_0x94140b['replace'](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,_0x371055(0xc5))['replace'](/([A-Z]+)([A-Z][a-z])/g,_0x358e10['JzqEP'])[_0x371055(0xa1)](),_0x94140b;}[a0_0x3e1f93(0xb7)](_0x341c79){const _0x4e3830=a0_0x3e1f93,_0x675e83={'OnUBM':function(_0x38b456,_0x1b7e10){return _0x38b456===_0x1b7e10;},'VXgBi':function(_0x13e028,_0xb52dc2){return _0x13e028 instanceof _0xb52dc2;},'YcsyA':function(_0x4c78a0,_0x4fce2f){return _0x4c78a0(_0x4fce2f);},'yRCgE':function(_0x364cae,_0x11f706){return _0x364cae+_0x11f706;},'FpiMT':function(_0x1b263a,_0x4fd2c5){return _0x1b263a(_0x4fd2c5);},'ZwbMU':_0x4e3830(0xc0)};if(_0x341c79===null||_0x675e83['OnUBM'](_0x341c79,undefined))return null;if(_0x675e83[_0x4e3830(0xb6)](_0x341c79,Date)){const _0x5b4e20=_0x341c79[_0x4e3830(0xb3)](),_0x5c4c7a=_0x675e83['YcsyA'](String,_0x675e83['yRCgE'](_0x341c79[_0x4e3830(0xb8)](),0x1))['padStart'](0x2,'0'),_0x43a7c4=_0x675e83['FpiMT'](String,_0x341c79[_0x4e3830(0xab)]())[_0x4e3830(0x9f)](0x2,'0');return _0x5b4e20+'-'+_0x5c4c7a+'-'+_0x43a7c4;}if(typeof _0x341c79==='string'){const _0x2fc9c5=_0x341c79['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x2fc9c5){const _0x147cbb=String(_0x2fc9c5[0x1])[_0x4e3830(0x9f)](0x2,'0'),_0x1d24c4=_0x675e83[_0x4e3830(0xae)](String,_0x2fc9c5[0x2])['padStart'](0x2,'0'),_0xf81562=_0x2fc9c5[0x3];return _0xf81562+'-'+_0x1d24c4+'-'+_0x147cbb;}}if(_0x341c79&&typeof _0x341c79===_0x675e83['ZwbMU']&&_0x341c79[_0x4e3830(0xc7)])return _0x341c79['richText'][_0x4e3830(0xa3)](_0x241e6f=>_0x241e6f[_0x4e3830(0xbf)])[_0x4e3830(0xaf)]('');if(_0x341c79&&_0x675e83['OnUBM'](typeof _0x341c79,'object')&&_0x341c79[_0x4e3830(0xac)]!==undefined)return this['normalizeCellValue'](_0x341c79['result']);if(typeof _0x341c79===_0x4e3830(0xc3))return _0x341c79['trim']();return _0x341c79;}['validateExcelStructure'](_0x103bb2,_0x34840f){const _0x200dc9=a0_0x3e1f93,_0x59a208=new Set(_0x103bb2),_0x11dc26=new Set(_0x34840f),_0x1ec6dd=_0x34840f[_0x200dc9(0xb5)](_0x4fbe13=>!_0x59a208[_0x200dc9(0xbd)](_0x4fbe13)),_0x1548ef=_0x103bb2[_0x200dc9(0xb5)](_0x2e66cf=>!_0x11dc26[_0x200dc9(0xbd)](_0x2e66cf)),_0x313b1f=_0x1ec6dd['length']===0x0;return{'valid':_0x313b1f,'missingFields':_0x1ec6dd,'extraFields':_0x1548ef};}}module['exports']=new ExcelParser();
@@ -1 +1 @@
1
- const a0_0x3ed6fb=a0_0x1103;(function(_0x3df0cc,_0x3a888b){const _0x2ffc14=a0_0x1103,_0x481bb2=_0x3df0cc();while(!![]){try{const _0x25839d=parseInt(_0x2ffc14(0x151))/0x1+-parseInt(_0x2ffc14(0x1d4))/0x2*(-parseInt(_0x2ffc14(0x15b))/0x3)+-parseInt(_0x2ffc14(0x1d5))/0x4+-parseInt(_0x2ffc14(0x1dd))/0x5*(-parseInt(_0x2ffc14(0x166))/0x6)+parseInt(_0x2ffc14(0x1d8))/0x7*(parseInt(_0x2ffc14(0x182))/0x8)+parseInt(_0x2ffc14(0x155))/0x9*(parseInt(_0x2ffc14(0x1bd))/0xa)+parseInt(_0x2ffc14(0x18a))/0xb*(-parseInt(_0x2ffc14(0x16d))/0xc);if(_0x25839d===_0x3a888b)break;else _0x481bb2['push'](_0x481bb2['shift']());}catch(_0x5e93f0){_0x481bb2['push'](_0x481bb2['shift']());}}}(a0_0x5333,0x38742));const {v7:uuidv7}=require('uuid'),path=require('path'),fs=require('fs')['promises'],fsSync=require('fs'),redisHelper=require('../caching/redis-helper'),{logger,logError}=require('../../core/utils/logger'),dbType=(process[a0_0x3ed6fb(0x161)]['DB_TYPE']||a0_0x3ed6fb(0x14e))['toLowerCase']();let executeQuery;if(dbType==='oracle'){const oracleDb=require('../database/db-oracle');executeQuery=(_0x17e0f6,_0x125229)=>oracleDb['executeQuery'](_0x17e0f6,_0x125229);}else{if(dbType==='mysql'){const mysqlDb=require(a0_0x3ed6fb(0x16a));executeQuery=(_0x1f8a35,_0x51b5f8)=>mysqlDb['executeQuery'](_0x1f8a35,_0x51b5f8);}else executeQuery=require(a0_0x3ed6fb(0x19e))['executeQuery'];}class ExportService{constructor(){this['_exportDir']=null;}get[a0_0x3ed6fb(0x1bc)](){const _0x337a8c=a0_0x3ed6fb,_0x22b1ac={'yBLZM':_0x337a8c(0x189),'DswnL':'Failed\x20to\x20initialize\x20export\x20service'};if(!this[_0x337a8c(0x199)]){const _0x2a6688=process[_0x337a8c(0x161)][_0x337a8c(0x191)]||_0x337a8c(0x17e);this['_exportDir']=process['env']['EXPORT_DIR']||path[_0x337a8c(0x163)](__dirname,'../../exports/'+_0x2a6688);try{!fsSync[_0x337a8c(0x1ac)](this[_0x337a8c(0x199)])&&fsSync[_0x337a8c(0x1a8)](this[_0x337a8c(0x199)],{'recursive':!![]}),logger['info']({'event':_0x337a8c(0x1b8),'dir':this['_exportDir']},'Export\x20service\x20initialized');}catch(_0x3d3818){logError(_0x3d3818,{'event':_0x22b1ac['yBLZM']},_0x22b1ac[_0x337a8c(0x183)]);}}return this[_0x337a8c(0x199)];}['resolveExportQuery'](_0x342859,_0x4891ea=null){const _0x111fe0=a0_0x3ed6fb,_0x4c2aa8={'ffBer':_0x111fe0(0x178),'TfuhV':'file:','JsZby':'payload','cFENh':'utf8','kggip':function(_0x3e35fe,_0x2e81df){return _0x3e35fe===_0x2e81df;},'yvqsk':'ENOENT'};if(!_0x342859||typeof _0x342859!==_0x4c2aa8['ffBer'])return _0x342859;const _0x46751b=_0x342859[_0x111fe0(0x16f)]();if(!_0x46751b['startsWith'](_0x4c2aa8['TfuhV']))return _0x46751b;const _0x50caf9=_0x46751b['replace'](/^file:/,'')[_0x111fe0(0x16f)]();if(!_0x50caf9)throw new Error('Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty');const _0x254864=_0x4891ea||path['join'](process['cwd'](),_0x4c2aa8['JsZby']),_0x2ee351=path['resolve'](_0x254864,_0x50caf9);logger['info']({'event':_0x111fe0(0x15e),'relativePath':_0x50caf9,'baseDir':_0x254864,'absolutePath':_0x2ee351},_0x111fe0(0x159)+_0x50caf9);if(!fsSync['existsSync'](_0x2ee351))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x2ee351);try{const _0x21cb40=fsSync['readFileSync'](_0x2ee351,_0x4c2aa8[_0x111fe0(0x1db)]);if(!_0x21cb40||!_0x21cb40[_0x111fe0(0x16f)]())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x2ee351);return logger[_0x111fe0(0x192)]({'event':_0x111fe0(0x1c0),'file':_0x2ee351,'queryLength':_0x21cb40[_0x111fe0(0x198)]},_0x111fe0(0x1c1)+_0x21cb40['length']+_0x111fe0(0x164)),_0x21cb40[_0x111fe0(0x16f)]();}catch(_0x846dc9){if(_0x4c2aa8['kggip'](_0x846dc9['code'],_0x4c2aa8['yvqsk']))throw new Error(_0x111fe0(0x1a5)+_0x2ee351);throw new Error(_0x111fe0(0x176)+_0x846dc9[_0x111fe0(0x1cc)]);}}[a0_0x3ed6fb(0x1c7)](){const _0x42bc99=a0_0x3ed6fb,_0xfca4d1={'raqvR':_0x42bc99(0x172),'xwNbS':function(_0xee9b){return _0xee9b();},'WNFBi':function(_0x5d6efa,_0x3ee827){return _0x5d6efa-_0x3ee827;},'tHwCS':function(_0x34d3cb,_0x502e8a){return _0x34d3cb+_0x502e8a;},'lFUtl':function(_0x19e6d8,_0x3c2ff8){return _0x19e6d8<_0x3c2ff8;},'HHOVk':function(_0x3c3441,_0x44b5e7){return _0x3c3441*_0x44b5e7;}},_0x20af17=_0xfca4d1[_0x42bc99(0x1e0)],_0x13a22c=Date['now']()[_0x42bc99(0x154)](0x24),_0x3bf6e7=_0xfca4d1['xwNbS'](uuidv7)['replace'](/-/g,'')[_0x42bc99(0x1a4)](0x0,_0xfca4d1[_0x42bc99(0x1b1)](0xc,_0x13a22c['length'])),_0x55cb5d=_0xfca4d1['tHwCS'](_0x13a22c,_0x3bf6e7)['substring'](0x0,0xc);let _0xfe5b66='';for(let _0x3345b7=0x0;_0xfca4d1['lFUtl'](_0x3345b7,0xc);_0x3345b7++){_0x55cb5d[_0x3345b7]?_0xfe5b66+=_0x55cb5d[_0x3345b7]:_0xfe5b66+=_0x20af17['charAt'](Math[_0x42bc99(0x1ad)](_0xfca4d1[_0x42bc99(0x1c3)](Math[_0x42bc99(0x1a2)](),_0x20af17[_0x42bc99(0x198)])));}return _0xfe5b66;}async['createJob'](_0x327fce){const _0x5f3c58=a0_0x3ed6fb,_0x3581cd={'IbyNC':function(_0x3075db,_0x1e4fc0,_0x1bc174,_0x38d10b){return _0x3075db(_0x1e4fc0,_0x1bc174,_0x38d10b);},'xJJag':_0x5f3c58(0x19c),'FlIeo':_0x5f3c58(0x1d3),'ADXDH':_0x5f3c58(0x162)},_0x2794f0=this[_0x5f3c58(0x1c7)](),_0x223fa6={'job_id':_0x2794f0,'status':_0x3581cd[_0x5f3c58(0x156)],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x327fce,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x2794f0,_0x223fa6),logger['info']({'event':_0x5f3c58(0x18d),'jobId':_0x2794f0,'params':_0x327fce},_0x3581cd[_0x5f3c58(0x188)]),this['processJob'](_0x2794f0,_0x327fce)['catch'](_0x378532=>{const _0x18ec1d=_0x5f3c58;_0x3581cd[_0x18ec1d(0x1a9)](logError,_0x378532,{'event':'export_process_error','jobId':_0x2794f0},_0x3581cd[_0x18ec1d(0x197)]);}),{'job_id':_0x2794f0,'status':_0x3581cd['FlIeo']};}async['getJobStatus'](_0x3c7bb5){const _0x2a5fc7=a0_0x3ed6fb,_0x1839e9=await redisHelper['getJob'](_0x3c7bb5);if(!_0x1839e9)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0x1839e9[_0x2a5fc7(0x157)],'status':_0x1839e9['status'],'progress':_0x1839e9[_0x2a5fc7(0x1a1)],'total_rows':_0x1839e9['total_rows'],'processed_rows':_0x1839e9[_0x2a5fc7(0x1be)],'file_url':_0x1839e9['status']===_0x2a5fc7(0x160)?'/api/'+_0x1839e9['params'][_0x2a5fc7(0x187)]+'/'+_0x1839e9[_0x2a5fc7(0x1c6)]['endpointName']+_0x2a5fc7(0x19a)+_0x3c7bb5:null,'error':_0x1839e9[_0x2a5fc7(0x193)]||null,'created_at':_0x1839e9['created_at'],'completed_at':_0x1839e9[_0x2a5fc7(0x1ab)]||null}};}async['processJob'](_0x172202,_0x68679d){const _0x3d5bb3=a0_0x3ed6fb,_0x5784fa={'uGZPQ':'completed','VtrNR':'failed'};try{await redisHelper['updateJob'](_0x172202,{'status':'processing','started_at':new Date()[_0x3d5bb3(0x175)]()}),logger['info']({'event':'export_processing_start','jobId':_0x172202},'Export\x20processing\x20started');const _0x5a5710=await this['fetchData'](_0x68679d);await redisHelper[_0x3d5bb3(0x1cb)](_0x172202,{'total_rows':_0x5a5710['length']});const _0x5c221d=await this['generateExcel'](_0x172202,_0x5a5710,_0x68679d);await redisHelper['updateJob'](_0x172202,{'status':_0x5784fa[_0x3d5bb3(0x1e1)],'progress':0x64,'file_path':_0x5c221d,'completed_at':new Date()['toISOString']()}),logger['info']({'event':_0x3d5bb3(0x174),'jobId':_0x172202,'rows':_0x5a5710[_0x3d5bb3(0x198)]},_0x3d5bb3(0x1de));}catch(_0x18a60a){logError(_0x18a60a,{'event':'export_failed','jobId':_0x172202},'Export\x20failed'),await redisHelper['updateJob'](_0x172202,{'status':_0x5784fa[_0x3d5bb3(0x180)],'error':_0x18a60a['message'],'failed_at':new Date()[_0x3d5bb3(0x175)]()});}}async['fetchData'](_0x1210ce){const _0x3819d3=a0_0x3ed6fb,_0x4b620d={'XwGeq':function(_0x287c98,_0x1040f1){return _0x287c98===_0x1040f1;},'abgxb':_0x3819d3(0x17b),'xhlTX':function(_0x275a02,_0xe3d5f1){return _0x275a02+_0xe3d5f1;},'EfuuW':'file:','gJeSq':_0x3819d3(0x1a6),'xgaYD':'Using\x20custom\x20exportQuery','tQmZE':function(_0x15cc15,_0x5bab8b){return _0x15cc15===_0x5bab8b;},'dXVuf':_0x3819d3(0x16e),'BjCxn':_0x3819d3(0x15d),'VUBnv':function(_0x1292c2,_0x3f2073){return _0x1292c2>_0x3f2073;},'rzSga':_0x3819d3(0x17a),'UbMZX':'Failed\x20to\x20fetch\x20data'};try{const {tableName:_0x4fc2c1,columns:_0x5a6981,exportQuery:_0x5da533,where:_0x58c48f,sort_columns:_0x5a6a50}=_0x1210ce;if(!_0x4fc2c1||!_0x5a6981||_0x4b620d['XwGeq'](_0x5a6981[_0x3819d3(0x198)],0x0))throw new Error(_0x4b620d['abgxb']);const _0x490359=_0x4b620d[_0x3819d3(0x196)](_0x4fc2c1[_0x3819d3(0x1e3)](/\./g,'_'),_0x3819d3(0x186));let _0x537ee2;if(_0x5da533&&_0x5da533[_0x3819d3(0x16f)]()){let _0x199d42=_0x5da533;_0x5da533[_0x3819d3(0x16f)]()['startsWith'](_0x4b620d['EfuuW'])&&(_0x199d42=this[_0x3819d3(0x1b2)](_0x5da533)),_0x537ee2='WITH\x20'+_0x490359+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x199d42+'\x0a)',logger[_0x3819d3(0x192)]({'event':_0x4b620d['gJeSq'],'query':_0x199d42['substring'](0x0,0x64)},_0x4b620d[_0x3819d3(0x17c)]);}else{const _0x1f8f29=_0x5a6981[_0x3819d3(0x1c4)](_0x598748=>_0x3819d3(0x1bf)+_0x598748)[_0x3819d3(0x163)](',');_0x537ee2=_0x3819d3(0x190)+_0x490359+_0x3819d3(0x1bb)+_0x1f8f29+_0x3819d3(0x17f)+_0x4fc2c1+'\x0a)',logger[_0x3819d3(0x192)]({'event':_0x3819d3(0x167),'tableName':_0x4fc2c1,'columnCount':_0x5a6981[_0x3819d3(0x198)]},'Using\x20auto-generated\x20query');}const _0x308b3b=!_0x5a6981||_0x5a6981[_0x3819d3(0x198)]===0x0||_0x4b620d[_0x3819d3(0x1a3)](_0x5a6981['length'],0x1)&&(_0x4b620d['tQmZE'](_0x5a6981[0x0],'*')||_0x5a6981[0x0]['toLowerCase']()==='all'),_0x319e1d=_0x308b3b?'*':_0x5a6981['join'](',\x20');_0x537ee2+='\x0aSELECT\x20'+_0x319e1d+'\x0aFROM\x20'+_0x490359;if(_0x58c48f){const _0x1f7a53=this[_0x3819d3(0x1af)](_0x58c48f);_0x1f7a53&&(_0x537ee2+=_0x3819d3(0x1b7)+_0x1f7a53);}if(_0x5a6a50&&_0x5a6a50[_0x3819d3(0x198)]>0x0){const _0x558930=this['buildOrderByClause'](_0x5a6a50);_0x558930&&(_0x537ee2+='\x0aORDER\x20BY\x20'+_0x558930);}logger[_0x3819d3(0x192)]({'event':_0x4b620d[_0x3819d3(0x16c)],'query':_0x537ee2['substring'](0x0,0xc8)},'Fetching\x20data\x20from\x20database');const _0x479e9e=await executeQuery(_0x537ee2);let _0x32360e=_0x479e9e;return _0x4b620d[_0x3819d3(0x16b)](dbType,_0x4b620d['BjCxn'])&&_0x479e9e&&_0x4b620d['VUBnv'](_0x479e9e[_0x3819d3(0x198)],0x0)&&(_0x32360e=_0x479e9e['map'](_0x561184=>{const _0x4eb0ea=_0x3819d3,_0x1c799e={};for(const [_0x5601ff,_0x4f2733]of Object[_0x4eb0ea(0x1b9)](_0x561184)){_0x1c799e[_0x5601ff[_0x4eb0ea(0x19f)]()]=_0x4f2733;}return _0x1c799e;})),logger[_0x3819d3(0x192)]({'event':'export_fetch_complete','rows':_0x32360e[_0x3819d3(0x198)]},'Data\x20fetched\x20successfully'),_0x32360e;}catch(_0x380317){logError(_0x380317,{'event':_0x4b620d[_0x3819d3(0x1d2)]},_0x4b620d['UbMZX']);throw _0x380317;}}['sanitizeValue'](_0x485275){const _0x3fa462=a0_0x3ed6fb,_0x2f5e17={'QUoVj':function(_0x5f4f8d,_0x5cc283){return _0x5f4f8d===_0x5cc283;},'dvkcQ':'string'};if(_0x2f5e17['QUoVj'](typeof _0x485275,_0x2f5e17['dvkcQ']))return _0x485275[_0x3fa462(0x1e3)](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')[_0x3fa462(0x16f)]();else{if(Array[_0x3fa462(0x165)](_0x485275))return _0x485275[_0x3fa462(0x1c4)](_0x16f869=>this[_0x3fa462(0x17d)](_0x16f869));}return _0x485275;}[a0_0x3ed6fb(0x1af)](_0x3fe3d6){const _0x583eb1=a0_0x3ed6fb,_0x158414={'hLFnH':function(_0x308278,_0x2a5417){return _0x308278===_0x2a5417;},'VCgkh':function(_0x919331,_0x132cea){return _0x919331||_0x132cea;},'nwIrx':'invalid_condition','tXMui':'Skipping\x20invalid\x20condition','KCkqV':function(_0x59ace8,_0x49f049){return _0x59ace8!==_0x49f049;},'jlsmg':function(_0x346dca,_0x545d26){return _0x346dca===_0x545d26;},'zgfkI':_0x583eb1(0x178),'FXSTL':'NOT\x20LIKE','ZwfEP':'unknown_operator','DFfqS':_0x583eb1(0x179),'bEnJL':function(_0x21ec92,_0x2ccb02){return _0x21ec92===_0x2ccb02;},'XXLmj':_0x583eb1(0x14f),'bGZvh':function(_0x49ff6e,_0x70bf3){return _0x49ff6e===_0x70bf3;}};if(!_0x3fe3d6||!_0x3fe3d6['conditions']||_0x3fe3d6[_0x583eb1(0x171)][_0x583eb1(0x198)]===0x0)return'';const {logic:_0x48e0a6,conditions:_0x515473}=_0x3fe3d6,_0x4e336d=_0x48e0a6&&_0x158414['bEnJL'](_0x48e0a6[_0x583eb1(0x1ae)](),'OR')?'\x20OR\x20':_0x158414[_0x583eb1(0x18c)],_0xd9379f=_0x515473['map'](_0x5866a8=>{const _0x1cb0be=_0x583eb1,{key:_0x2afb8f,operator:_0x58fdd1,value:_0x1fa8a0,sensitive:_0xf6d0}=_0x5866a8;if(_0x158414['VCgkh'](!_0x2afb8f,!_0x58fdd1))return logger[_0x1cb0be(0x1ba)]({'event':_0x158414['nwIrx'],'condition':_0x5866a8},_0x158414[_0x1cb0be(0x173)]),null;const _0x13a522=this['sanitizeValue'](_0x1fa8a0),_0x25b569=_0x158414[_0x1cb0be(0x153)](_0xf6d0,undefined)?_0xf6d0:!![];let _0x1d252a=_0x2afb8f,_0x34cbad=_0x13a522;!_0x25b569&&(_0x1d252a=_0x1cb0be(0x1b5)+_0x2afb8f+')',_0x158414['hLFnH'](typeof _0x1fa8a0,'string')&&(_0x34cbad=_0x1fa8a0['toUpperCase']()));const _0x2ef4ab=_0x158414[_0x1cb0be(0x1dc)](typeof _0x34cbad,_0x158414['zgfkI'])?'\x27'+_0x34cbad[_0x1cb0be(0x1e3)](/'/g,'\x27\x27')+'\x27':_0x34cbad;switch(_0x58fdd1['toUpperCase']()){case'=':case'!=':case'<>':return _0x1d252a+'\x20'+_0x58fdd1+'\x20'+_0x2ef4ab;case'>':case'<':case'>=':case'<=':const _0x137658=typeof _0x13a522===_0x1cb0be(0x178)?'\x27'+_0x13a522[_0x1cb0be(0x1e3)](/'/g,'\x27\x27')+'\x27':_0x13a522;return _0x2afb8f+'\x20'+_0x58fdd1+'\x20'+_0x137658;case _0x1cb0be(0x177):case _0x158414['FXSTL']:return _0x1d252a+'\x20'+_0x58fdd1+'\x20'+_0x2ef4ab;case'IN':if(Array['isArray'](_0x13a522)){let _0x22564c;return!_0x25b569?_0x22564c=_0x13a522['map'](_0x2057e3=>{const _0x4f2e5d=_0x1cb0be,_0x355083=_0x158414[_0x4f2e5d(0x1a7)](typeof _0x2057e3,'string')?_0x2057e3[_0x4f2e5d(0x1ae)]():_0x2057e3;return _0x158414[_0x4f2e5d(0x1a7)](typeof _0x355083,'string')?'\x27'+_0x355083['replace'](/'/g,'\x27\x27')+'\x27':_0x355083;})['join'](',\x20'):_0x22564c=_0x13a522['map'](_0x32cd4=>typeof _0x32cd4==='string'?'\x27'+_0x32cd4['replace'](/'/g,'\x27\x27')+'\x27':_0x32cd4)[_0x1cb0be(0x163)](',\x20'),_0x1d252a+_0x1cb0be(0x1d1)+_0x22564c+')';}return _0x1d252a+_0x1cb0be(0x1d1)+_0x2ef4ab+')';case _0x1cb0be(0x170):return _0x2afb8f+_0x1cb0be(0x1cd);case'IS\x20NOT\x20NULL':return _0x2afb8f+'\x20IS\x20NOT\x20NULL';default:logger[_0x1cb0be(0x1ba)]({'event':_0x158414['ZwfEP'],'operator':_0x58fdd1},_0x158414[_0x1cb0be(0x1b0)]);return _0x1d252a+'\x20=\x20'+_0x2ef4ab;}})['filter'](_0x403b51=>_0x403b51!==null);if(_0x158414['bGZvh'](_0xd9379f['length'],0x0))return'';return _0xd9379f['join'](_0x4e336d);}['buildOrderByClause'](_0x1177ec){const _0x1ef53a=a0_0x3ed6fb,_0x58dee7={'AlSHc':_0x1ef53a(0x1c8),'qnCfh':_0x1ef53a(0x1d9)};if(!_0x1177ec||_0x1177ec['length']===0x0)return'';const _0x33579d=_0x1177ec[_0x1ef53a(0x1c4)](_0x4c6099=>{const _0x1d768a=_0x1ef53a,{column:_0x24e27d,direction:_0x514b53}=_0x4c6099;if(!_0x24e27d)return logger['warn']({'event':_0x58dee7['AlSHc'],'item':_0x4c6099},_0x1d768a(0x14c)),null;const _0x53e89f=_0x514b53&&_0x514b53[_0x1d768a(0x1ae)]()===_0x1d768a(0x1d9)?_0x58dee7[_0x1d768a(0x195)]:'ASC';return _0x24e27d+'\x20'+_0x53e89f;})[_0x1ef53a(0x14d)](_0x2034cd=>_0x2034cd!==null);if(_0x33579d['length']===0x0)return'';return _0x33579d[_0x1ef53a(0x163)](',\x20');}async['generateExcel'](_0x8f07d6,_0x4c90c8,_0x285713){const _0xb4b55d=a0_0x3ed6fb,_0x567462={'xNDrS':function(_0x4e5fe2,_0x463106){return _0x4e5fe2*_0x463106;},'jUicN':function(_0x1cab2b,_0x217ab0){return _0x1cab2b/_0x217ab0;},'YMLHw':function(_0x34bd8a,_0x73af2b){return _0x34bd8a(_0x73af2b);},'TqvRp':function(_0x3e90f1,_0x10f13a){return _0x3e90f1===_0x10f13a;},'NCZsF':function(_0x1a1846,_0x198f96){return _0x1a1846>_0x198f96;},'KFxgd':_0xb4b55d(0x1d6),'WnMUV':function(_0x1f5a44,_0x2cdc0f){return _0x1f5a44>_0x2cdc0f;}},_0x413add=_0x567462['YMLHw'](require,'./excel-generator'),_0x3f245e=new _0x413add(),_0x5c9a7f=_0x285713[_0xb4b55d(0x1e2)]?_0x285713['filename']+'-'+_0x8f07d6:_0xb4b55d(0x1d0)+_0x8f07d6,_0x4685e2=path[_0xb4b55d(0x163)](this['exportDir'],_0x5c9a7f+_0xb4b55d(0x1da));let _0x347c45=_0x285713['columns'];const _0x2a988e=_0x347c45&&_0x567462[_0xb4b55d(0x15f)](_0x347c45['length'],0x1)&&(_0x347c45[0x0]==='*'||_0x347c45[0x0]['toLowerCase']()==='all');if(_0x567462['NCZsF'](_0x4c90c8['length'],0x0)){const _0x1f78f9=Object[_0xb4b55d(0x1b3)](_0x4c90c8[0x0]);if(_0x2a988e)_0x347c45=_0x1f78f9,logger[_0xb4b55d(0x192)]({'event':_0x567462[_0xb4b55d(0x1ca)],'columns':_0x347c45},'Using\x20all\x20'+_0x347c45['length']+'\x20columns\x20(wildcard\x20requested)');else{if(_0x347c45&&_0x347c45[_0xb4b55d(0x198)]>0x0){const _0x4c7a67=_0x347c45['filter'](_0x3e113d=>_0x1f78f9[_0xb4b55d(0x168)](_0x3e113d));_0x567462['WnMUV'](_0x4c7a67[_0xb4b55d(0x198)],0x0)?(_0x347c45=_0x4c7a67,logger['info']({'event':'excel_columns_from_request','requestedColumns':_0x285713[_0xb4b55d(0x185)],'validColumns':_0x347c45},'Using\x20'+_0x347c45[_0xb4b55d(0x198)]+'\x20columns\x20from\x20request')):(_0x347c45=_0x1f78f9,logger['warn']({'event':'excel_columns_fallback','requestedColumns':_0x285713['columns'],'availableColumns':_0x1f78f9},_0xb4b55d(0x1aa)+_0x1f78f9[_0xb4b55d(0x198)]+_0xb4b55d(0x1c2)));}else _0x347c45=_0x1f78f9,logger['info']({'event':_0xb4b55d(0x1ce),'columns':_0x347c45},'Using\x20'+_0x347c45[_0xb4b55d(0x198)]+'\x20columns\x20from\x20query\x20result');}}else logger[_0xb4b55d(0x192)]({'event':'excel_columns_from_config','columns':_0x347c45},'Using\x20'+(_0x347c45?.['length']||0x0)+_0xb4b55d(0x19b));return await _0x3f245e['generate']({'data':_0x4c90c8,'columns':_0x347c45,'columnFormats':_0x285713['columnFormats']||null,'fieldLabels':_0x285713['fieldLabels']||null,'filePath':_0x4685e2,'onProgress':async _0x43df7c=>{const _0x251a98=_0xb4b55d;await redisHelper[_0x251a98(0x1cb)](_0x8f07d6,{'progress':Math['round'](_0x43df7c),'processed_rows':Math['round'](_0x567462[_0x251a98(0x1c9)](_0x567462['jUicN'](_0x43df7c,0x64),_0x4c90c8[_0x251a98(0x198)]))});}}),_0x4685e2;}async[a0_0x3ed6fb(0x1a0)](_0x39ec1b){const _0x3d2290=a0_0x3ed6fb,_0x3fb97c={'hHaAe':function(_0x17b70e,_0x3a35e4,_0x56a0d9,_0x459f9d){return _0x17b70e(_0x3a35e4,_0x56a0d9,_0x459f9d);},'XTZsK':_0x3d2290(0x15a)},_0x345041=await redisHelper[_0x3d2290(0x1df)](_0x39ec1b);if(!_0x345041||_0x345041[_0x3d2290(0x1cf)]!==_0x3d2290(0x160))return null;try{return await fs['access'](_0x345041[_0x3d2290(0x18f)]),_0x345041['file_path'];}catch(_0x4fae52){return _0x3fb97c[_0x3d2290(0x18e)](logError,_0x4fae52,{'event':_0x3d2290(0x181),'jobId':_0x39ec1b,'path':_0x345041[_0x3d2290(0x18f)]},_0x3fb97c[_0x3d2290(0x194)]),null;}}async['cleanup'](){const _0x3ac92f=a0_0x3ed6fb,_0x4fb367={'QOMMn':'export_cleanup_start','OEwGD':_0x3ac92f(0x152),'DHvmU':function(_0x5319d0,_0x3ffc23){return _0x5319d0/_0x3ffc23;},'aELom':function(_0x131319,_0x58a342){return _0x131319*_0x58a342;},'OMUQv':_0x3ac92f(0x1c5),'mFSYR':_0x3ac92f(0x1b4),'XXWOq':_0x3ac92f(0x1b6),'Vvbez':_0x3ac92f(0x19d)};logger['info']({'event':_0x4fb367[_0x3ac92f(0x169)]},_0x4fb367[_0x3ac92f(0x18b)]);const _0x4630cc=await redisHelper['getAllJobs']();let _0x58f44d=0x0;for(const _0x5a1c67 of _0x4630cc){const _0x54d905=new Date(_0x5a1c67['created_at']),_0x292615=new Date(),_0x141b20=_0x4fb367[_0x3ac92f(0x184)](_0x292615-_0x54d905,_0x4fb367['aELom'](0x3e8*0x3c,0x3c));if(_0x141b20>0x1){if(_0x5a1c67['file_path'])try{await fs['unlink'](_0x5a1c67['file_path']),logger[_0x3ac92f(0x192)]({'event':_0x4fb367[_0x3ac92f(0x15c)],'path':_0x5a1c67['file_path']},_0x4fb367['mFSYR']);}catch(_0x1972c2){logger[_0x3ac92f(0x1ba)]({'event':_0x4fb367[_0x3ac92f(0x158)],'path':_0x5a1c67[_0x3ac92f(0x18f)],'error':_0x1972c2['message']},_0x4fb367[_0x3ac92f(0x150)]);}await redisHelper['deleteJob'](_0x5a1c67[_0x3ac92f(0x157)]),_0x58f44d++;}}return logger[_0x3ac92f(0x192)]({'event':'export_cleanup_complete','deleted':_0x58f44d},'Export\x20cleanup\x20completed'),_0x58f44d;}}function a0_0x1103(_0x103c9a,_0x291cea){_0x103c9a=_0x103c9a-0x14c;const _0x533360=a0_0x5333();let _0x11035b=_0x533360[_0x103c9a];if(a0_0x1103['fJqYJX']===undefined){var _0x18773b=function(_0x7b354){const _0x4dc720='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2766c1='',_0x2b81dc='';for(let _0x42594f=0x0,_0x5ad6a0,_0x5e0861,_0x28afca=0x0;_0x5e0861=_0x7b354['charAt'](_0x28afca++);~_0x5e0861&&(_0x5ad6a0=_0x42594f%0x4?_0x5ad6a0*0x40+_0x5e0861:_0x5e0861,_0x42594f++%0x4)?_0x2766c1+=String['fromCharCode'](0xff&_0x5ad6a0>>(-0x2*_0x42594f&0x6)):0x0){_0x5e0861=_0x4dc720['indexOf'](_0x5e0861);}for(let _0x21574e=0x0,_0x1062f8=_0x2766c1['length'];_0x21574e<_0x1062f8;_0x21574e++){_0x2b81dc+='%'+('00'+_0x2766c1['charCodeAt'](_0x21574e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2b81dc);};a0_0x1103['mhUHhl']=_0x18773b,a0_0x1103['JvDSYn']={},a0_0x1103['fJqYJX']=!![];}const _0x309226=_0x533360[0x0],_0xbfc19=_0x103c9a+_0x309226,_0x320f5b=a0_0x1103['JvDSYn'][_0xbfc19];return!_0x320f5b?(_0x11035b=a0_0x1103['mhUHhl'](_0x11035b),a0_0x1103['JvDSYn'][_0xbfc19]=_0x11035b):_0x11035b=_0x320f5b,_0x11035b;}module[a0_0x3ed6fb(0x1d7)]=new ExportService();function a0_0x5333(){const _0x375228=['Dg9ju09tDhjPBMC','rMfPBgvKihrVihjLywqGzxHWB3j0ihf1zxj5igzPBgu6ia','teLlrq','C3rYAw5N','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','zxHWB3j0x2zLDgnOx2vYCM9Y','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','EgDHwuq','C2fUAxrPEMvwywX1zq','zgvMyxvSDa','cIaGicbguK9nia','vNrYtLi','zxHWB3j0x2zPBgvFBM90x2zVDw5K','ofnPt0jIuq','rhn3BKW','reH2Bvu','y29SDw1UCW','x2rHDge','Bw9KDwXLtMfTzq','quryreG','zxHWB3j0x3nLCNzPy2vFAw5PDf9LCNjVCG','mtfusfzPsNG','t0v3r0q','wfHmBwO','zxHWB3j0x2PVyL9JCMvHDgvK','AeHHqwu','zMLSzv9WyxrO','v0Lusca','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','Aw5MBW','zxjYB3i','wfrAC0S','Cw5dzMG','EgHSvfG','EePkywC','BgvUz3rO','x2v4Cg9YDerPCG','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','ignVBhvTBNmGzNjVBsbJB25MAwCGkg5VigrHDgeP','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','rMfPBgvKihrVigrLBgv0zsbLEhbVCNqGzMLSzq','lI4VlI4Vy29Yzs91DgLSCY9KyG','Dg9mB3DLCKnHC2u','z2v0rMLSzvbHDgG','ChjVz3jLC3m','CMfUzg9T','DffTwKu','C3vIC3rYAw5N','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','zxHWB3j0x3vZAw5Nx2n1C3rVBv9XDwvYEq','AeXgBKG','BwTKAxjtEw5J','swj5tKm','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','y29TCgXLDgvKx2f0','zxHPC3rZu3LUyW','zMXVB3i','Dg9vChbLCKnHC2u','yNvPBgrxAgvYzunSyxvZzq','rezMCvm','v05gqMK','CMvZB2X2zuv4Cg9YDff1zxj5','A2v5CW','rxHWB3j0igzPBguGzgvSzxrLza','vvbqrviO','zxHWB3j0x2zPBgvFzgvSzxrLx2vYCM9Y','cLDirvjfia','zxHWB3j0x3nLCNzPy2vFAw5PDa','zw50CMLLCW','D2fYBG','iefticGkicaGifnftevdvca','zxHWB3j0rgLY','mtK3nJyZmhHxDNPuDG','ChjVy2vZC2vKx3jVD3m','cIaGicaGicaG','zxHWB3j0x3f1zxj5x2zPBgvFBg9HzgvK','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','ignVBhvTBNm','seHpvMS','BwfW','zxHWB3j0x2zPBgvFzgvSzxrLza','CgfYyw1Z','z2vUzxjHDgvkB2jjza','Aw52ywXPzf9VCMrLCG','Ee5eCLm','s0z4z2q','DxbKyxrLsM9I','BwvZC2fNzq','ieLtie5vteW','zxHJzwXFy29SDw1UC19MCM9Tx3f1zxj5x3jLC3vSDa','C3rHDhvZ','zxHWB3j0lq','ieLoicG','CNPtz2e','CgvUzgLUzW','ntCXodC2veDOs1PV','mtm4mJe2nfjRtKvsua','zxHJzwXFy29SDw1UC19ZzwXLy3rFywXS','zxHWB3j0CW','ndq0nZy2uKzuEu5u','revtqW','lNHSC3G','y0zftMG','AMXZBwC','mteYmezSsufmsW','rxHWB3j0ignVBxbSzxrLzcbZDwnJzxnZzNvSBhK','z2v0sM9I','CMfXDLi','DuDAufe','zMLSzw5HBwu','CMvWBgfJzq','u2TPChbPBMCGAw52ywXPzcbVCMrLCIbJBgf1C2u','zMLSDgvY','Cg9ZDgDYzxnXBa','ieforca','vNzIzxO','mJmWntu2Bxz6t25v','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','s0nRCvy','Dg9tDhjPBMC','oxP2senXsW','rMXjzw8','AM9Ix2LK','wfHxt3e','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','rxHWB3j0igzPBguGBM90igzVDw5K','m2nZuezVAG','t01vuxy','B3jHy2XL','zxHWB3j0x3f1zxj5x2zPBgvFCMvZB2X2zq','vhf2uNa','y29TCgXLDgvK','zw52','rxHWB3j0igPVyIbJCMvHDgvK','AM9PBG','ignOyxjZkq','AxnbCNjHEq','mte1odb3EefdDhO','zxHWB3j0x3vZAw5Nx2f1Dg9FCxvLCNK','Aw5JBhvKzxm','uu9ntw4','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','whDhzxe','zfHwDwy','nZu5odG4meLhEgfNAW','zxHWB3j0x2zLDgnOx3n0yxj0','DhjPBq','svmGtLvmta','y29UzgL0Aw9UCW','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','DfHnDwK','zxHWB3j0x2nVBxbSzxrLza'];a0_0x5333=function(){return _0x375228;};return a0_0x5333();}
1
+ function a0_0xc88b(){const _0x3ccb74=['CMvWBgfJzq','DujJAuK','qvDsAxa','Dg9vChbLCKnHC2u','zxHWB3j0x3f1zxj5x2zPBgvFCMvZB2X2zq','BwTKAxjtEw5J','zxHWB3j0lq','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','CMvHzezPBgvtEw5J','CM91BMq','teLlrq','ChjVBwLZzxm','DKriyvy','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','zMLSztO','Dw5RBM93BL9VCgvYyxrVCG','y29TCgXLDgvK','z2v0sM9Iu3rHDhvZ','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','x2v4Cg9YDerPCG','DhjPBq','zMv0y2HeyxrH','rgvQwMS','rxHWB3j0ignVBxbSzxrLzcbZDwnJzxnZzNvSBhK','y2f0y2G','zMXVB3i','y29SDw1UrM9YBwf0CW','zxHWB3j0x3vZAw5Nx2f1Dg9FCxvLCNK','BxLZCwW','rgf0ysbMzxrJAgvKihn1y2nLC3nMDwXSEq','iefticGkicaGia','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','z2vUzxjHDgvkB2jjza','cK9srevsiejzia','A05yENe','yvLNAgy','C3rYAw5N','Dg9mB3DLCKnHC2u','qvnd','zxHWB3j0x2zPBgvFzgvSzxrLx2vYCM9Y','yNvPBgrxAgvYzunSyxvZzq','zMLLBgrmywjLBhm','tw5HA3y','v0Lusca','B3jHy2XL','ignVBhvTBNmGkhDPBgrJyxjKihjLCxvLC3rLzcK','zxHWB3j0x2zHAwXLza','zxHWB3j0x2nVBxbSzxrLza','vuPes1a','CgvUzgLUzW','x2rHDge','nZaXnJaWs2Dmt1f0','mtiZqwnbB09h','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','ignVBhvTBNmGzNjVBsbYzxf1zxn0','sLPUy1u','Evnuvwy','ignVBhvTBNm','r1bhrue','tfjbtMG','y29Kzq','rejFvfLqrq','rxHWB3j0igzPBguGBM90igzVDw5K','CMvZB2X2zuv4Cg9YDff1zxj5','zxHWB3j0rgLY','zxHPC3rZu3LUyW','D2fYBG','zMfPBgvK','rMfPBgvKihrVigrLBgv0zsbLEhbVCNqGzMLSzq','z2v0rMLSzvbHDgG','cLDirvjfia','z2v0sM9I','yNvPBgrpCMrLCKj5q2XHDxnL','rMfPBgvKihrVihjLywqGzxHWB3j0ihf1zxj5igzPBgu6ia','svmGtLvmta','zxHWB3j0x2zPBgvFzgvSzxrLza','cKzst00G','CwXKwLC','AM9PBG','wejuCuG','rMfPBgvKihrVigLUAxrPywXPEMuGzxHWB3j0ihnLCNzPy2u','zxHWB3j0x3nLCNzPy2vFAw5PDa','y09pAhO','BNnZAhq','zwr2DNq','l2fWAs8','Aw5MBW','iefticGkicaGifnftevdvca','tM1yzwG','mtCYndqXmKvxyu50Dq','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','vwTKC00','mtG3ntK5mg9IDLzbAa','y3jLyxrLzf9HDa','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','BwfW','zxHWB3j0x3bYB2nLC3nFzxjYB3i','sgnXB0C','rLDmvvu','A2v5CW','mtHJq0fbsNm','vxnPBMCG','cIaGicbguK9nia','mtK3mJGXBwjuCuPr','zxHJzwXFy29SDw1UC19MCM9Tx2nVBMzPzW','mZaXmtzMtfPvtMm','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','DMfRuM0','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','wLjUv0q','revtqW','zxHWB3j0CW','ntqXmJmYnfj1Dw9uDG','C3vIC3rYAw5N','zMLSzw5HBwu','Dg9ju09tDhjPBMC','zw52','DxbKyxrLsM9I','nJruC0DAt28','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','zxHJzwXFy29SDw1UC19ZzwXLy3rFywXS','BwvZC2fNzq','BKrPEKq','zxHWB3j0x2nSzwfUDxbFy29TCgXLDgu','AffQC2G','ieLtie5vteW','ieLoicG','BgvUz3rO','ChjVy2vZC0PVyG','odC4mJKYnurSDvDgza','rMfPBgvKihrVigzLDgnOigrHDge','zgvSzxrLsM9I','zxHLy3v0zvf1zxj5','rxHWB3j0igzPBguGzgvSzxrLza','y3DK','q3Hcvgq','y29SDw1UCW','Bfvtvu8','AM9Ix2LK','zMLSDgvY','zxHJzwXFy29SDw1UC19MywXSyMfJAW','DxrMoa','lI9LEgnLBc1Nzw5LCMf0B3i','C2fUAxrPEMvwywX1zq','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','zMLSzv9WyxrO','rxHWB3j0igzHAwXLza'];a0_0xc88b=function(){return _0x3ccb74;};return a0_0xc88b();}const a0_0x50c6e5=a0_0x4a60;(function(_0x2a8536,_0x1e3bda){const _0x13b306=a0_0x4a60,_0x2f13ea=_0x2a8536();while(!![]){try{const _0x2bc2af=-parseInt(_0x13b306(0x228))/0x1+parseInt(_0x13b306(0x1cb))/0x2*(-parseInt(_0x13b306(0x229))/0x3)+parseInt(_0x13b306(0x1d2))/0x4+parseInt(_0x13b306(0x1e3))/0x5+-parseInt(_0x13b306(0x24e))/0x6+-parseInt(_0x13b306(0x1c9))/0x7*(parseInt(_0x13b306(0x1d8))/0x8)+parseInt(_0x13b306(0x1c6))/0x9*(-parseInt(_0x13b306(0x1be))/0xa);if(_0x2bc2af===_0x1e3bda)break;else _0x2f13ea['push'](_0x2f13ea['shift']());}catch(_0x5f1ad7){_0x2f13ea['push'](_0x2f13ea['shift']());}}}(a0_0xc88b,0xdc5e0));const {v7:uuidv7}=require('uuid'),path=require('path'),fs=require('fs')[a0_0x50c6e5(0x200)],fsSync=require('fs'),redisHelper=require('../caching/redis-helper'),{logger,logError}=require(a0_0x50c6e5(0x1d9)),dbType=(process[a0_0x50c6e5(0x1d6)][a0_0x50c6e5(0x232)]||'postgresql')['toLowerCase']();function a0_0x4a60(_0x27f0e6,_0x5c3f6b){_0x27f0e6=_0x27f0e6-0x1be;const _0xc88bb7=a0_0xc88b();let _0x4a6099=_0xc88bb7[_0x27f0e6];if(a0_0x4a60['LbleCS']===undefined){var _0x296f04=function(_0x343d72){const _0x6c7344='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3506f6='',_0x348d2c='';for(let _0x18a65d=0x0,_0x1d7ce8,_0x28f9f3,_0x572422=0x0;_0x28f9f3=_0x343d72['charAt'](_0x572422++);~_0x28f9f3&&(_0x1d7ce8=_0x18a65d%0x4?_0x1d7ce8*0x40+_0x28f9f3:_0x28f9f3,_0x18a65d++%0x4)?_0x3506f6+=String['fromCharCode'](0xff&_0x1d7ce8>>(-0x2*_0x18a65d&0x6)):0x0){_0x28f9f3=_0x6c7344['indexOf'](_0x28f9f3);}for(let _0x1ae121=0x0,_0x1494d2=_0x3506f6['length'];_0x1ae121<_0x1494d2;_0x1ae121++){_0x348d2c+='%'+('00'+_0x3506f6['charCodeAt'](_0x1ae121)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x348d2c);};a0_0x4a60['UXAhHj']=_0x296f04,a0_0x4a60['mtLKgu']={},a0_0x4a60['LbleCS']=!![];}const _0x3260f9=_0xc88bb7[0x0],_0x2aaebf=_0x27f0e6+_0x3260f9,_0x5079f6=a0_0x4a60['mtLKgu'][_0x2aaebf];return!_0x5079f6?(_0x4a6099=a0_0x4a60['UXAhHj'](_0x4a6099),a0_0x4a60['mtLKgu'][_0x2aaebf]=_0x4a6099):_0x4a6099=_0x5079f6,_0x4a6099;}let executeQuery;if(dbType==='oracle'){const oracleDb=require('../database/db-oracle');executeQuery=(_0x1a07c8,_0x3bb19c)=>oracleDb['executeQuery'](_0x1a07c8,_0x3bb19c);}else{if(dbType===a0_0x50c6e5(0x211)){const mysqlDb=require(a0_0x50c6e5(0x207));executeQuery=(_0x2d53e9,_0x508c95)=>mysqlDb[a0_0x50c6e5(0x1e6)](_0x2d53e9,_0x508c95);}else executeQuery=require('../../core/utils/db')[a0_0x50c6e5(0x1e6)];}class ExportService{constructor(){const _0x360bc4=a0_0x50c6e5;this[_0x360bc4(0x208)]=null;}get[a0_0x50c6e5(0x235)](){const _0x343451=a0_0x50c6e5,_0x4dc504={'wTneR':_0x343451(0x246),'GSGor':function(_0x2ca142,_0x1ea886,_0x410310,_0xf03f52){return _0x2ca142(_0x1ea886,_0x410310,_0xf03f52);},'aYghf':_0x343451(0x245)};if(!this['_exportDir']){const _0x96f1ff=process['env'][_0x343451(0x1c0)]||'default';this[_0x343451(0x208)]=process['env']['EXPORT_DIR']||path['join'](__dirname,'../../exports/'+_0x96f1ff);try{!fsSync['existsSync'](this[_0x343451(0x208)])&&fsSync[_0x343451(0x1fa)](this['_exportDir'],{'recursive':!![]}),logger[_0x343451(0x24b)]({'event':_0x4dc504['wTneR'],'dir':this['_exportDir']},'Export\x20service\x20initialized');}catch(_0x2c1a89){_0x4dc504['GSGor'](logError,_0x2c1a89,{'event':'export_service_init_error'},_0x4dc504[_0x343451(0x218)]);}}return this[_0x343451(0x208)];}['resolveExportQuery'](_0xbf60ae,_0x5e7848=null){const _0x3429e2=a0_0x50c6e5,_0x39cd73={'NARer':'file:','JZncU':'payload','wuHOw':_0x3429e2(0x1f9),'UkdsM':'ENOENT'};if(!_0xbf60ae||typeof _0xbf60ae!=='string')return _0xbf60ae;const _0x41e235=_0xbf60ae['trim']();if(!_0x41e235['startsWith'](_0x39cd73['NARer']))return _0x41e235;const _0xe1967f=_0x41e235[_0x3429e2(0x1f5)](/^file:/,'')[_0x3429e2(0x209)]();if(!_0xe1967f)throw new Error('Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty');const _0x53e54b=_0x5e7848||path['join'](process[_0x3429e2(0x1e8)](),_0x39cd73[_0x3429e2(0x22c)]),_0x2f1a62=path['resolve'](_0x53e54b,_0xe1967f);logger[_0x3429e2(0x24b)]({'event':_0x39cd73['wuHOw'],'relativePath':_0xe1967f,'baseDir':_0x53e54b,'absolutePath':_0x2f1a62},'Resolving\x20exportQuery\x20from\x20file:\x20'+_0xe1967f);if(!fsSync[_0x3429e2(0x236)](_0x2f1a62))throw new Error(_0x3429e2(0x202)+_0x2f1a62);try{const _0x25fb27=fsSync[_0x3429e2(0x1fd)](_0x2f1a62,_0x3429e2(0x1ef));if(!_0x25fb27||!_0x25fb27[_0x3429e2(0x209)]())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x2f1a62);return logger['info']({'event':'export_query_file_loaded','file':_0x2f1a62,'queryLength':_0x25fb27['length']},_0x3429e2(0x1ce)+_0x25fb27[_0x3429e2(0x1e1)]+'\x20chars)'),_0x25fb27['trim']();}catch(_0x2c51ed){if(_0x2c51ed[_0x3429e2(0x231)]===_0x39cd73[_0x3429e2(0x250)])throw new Error(_0x3429e2(0x202)+_0x2f1a62);throw new Error(_0x3429e2(0x23e)+_0x2c51ed['message']);}}[a0_0x50c6e5(0x215)](){const _0x454427=a0_0x50c6e5,_0x2aba01={'PugsV':function(_0x1ed33a,_0xed250){return _0x1ed33a<_0xed250;}},_0x1b9298='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',_0x31b28f=Date['now']()['toString'](0x24),_0x492eea=uuidv7()[_0x454427(0x1f5)](/-/g,'')[_0x454427(0x1d3)](0x0,0xc-_0x31b28f['length']),_0x118b95=(_0x31b28f+_0x492eea)[_0x454427(0x1d3)](0x0,0xc);let _0x193510='';for(let _0x5c11ae=0x0;_0x2aba01['PugsV'](_0x5c11ae,0xc);_0x5c11ae++){_0x118b95[_0x5c11ae]?_0x193510+=_0x118b95[_0x5c11ae]:_0x193510+=_0x1b9298['charAt'](Math[_0x454427(0x20e)](Math['random']()*_0x1b9298[_0x454427(0x1e1)]));}return _0x193510;}async['createJob'](_0x5d28b0){const _0x557f72=a0_0x50c6e5,_0x38a0b0={'lbYZY':_0x557f72(0x1c2),'nDizD':'export_job_created','aWPXC':'Export\x20job\x20created','vakRm':_0x557f72(0x226)},_0x3e66f0=this['generateJobId'](),_0x2fa62e={'job_id':_0x3e66f0,'status':_0x557f72(0x226),'progress':0x0,'created_at':new Date()[_0x557f72(0x1d5)](),'params':_0x5d28b0,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x3e66f0,_0x2fa62e),logger[_0x557f72(0x24b)]({'event':_0x38a0b0[_0x557f72(0x1dc)],'jobId':_0x3e66f0,'params':_0x5d28b0},_0x38a0b0['aWPXC']),this['processJob'](_0x3e66f0,_0x5d28b0)[_0x557f72(0x20d)](_0x8fcef5=>{const _0x171bcc=_0x557f72;logError(_0x8fcef5,{'event':_0x38a0b0['lbYZY'],'jobId':_0x3e66f0},_0x171bcc(0x1cc));}),{'job_id':_0x3e66f0,'status':_0x38a0b0[_0x557f72(0x1cd)]};}async[a0_0x50c6e5(0x206)](_0x3ecf3a){const _0x37cefb=a0_0x50c6e5,_0x9e78c7={'TqizW':function(_0x137937,_0x5473bf){return _0x137937===_0x5473bf;}},_0xfa641=await redisHelper[_0x37cefb(0x23c)](_0x3ecf3a);if(!_0xfa641)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0xfa641[_0x37cefb(0x1ec)],'status':_0xfa641['status'],'progress':_0xfa641['progress'],'total_rows':_0xfa641['total_rows'],'processed_rows':_0xfa641['processed_rows'],'file_url':_0x9e78c7['TqizW'](_0xfa641['status'],_0x37cefb(0x205))?_0x37cefb(0x24a)+_0xfa641['params']['moduleName']+'/'+_0xfa641['params']['endpointName']+'/export-download?job_id='+_0x3ecf3a:null,'error':_0xfa641['error']||null,'created_at':_0xfa641['created_at'],'completed_at':_0xfa641['completed_at']||null}};}async[a0_0x50c6e5(0x1e2)](_0x44b358,_0x3cfe6f){const _0x36bd08=a0_0x50c6e5,_0x4a840e={'UJDKP':'export_processing_start','hNTPU':'Export\x20processing\x20started','gfuya':_0x36bd08(0x20c),'LRANh':function(_0x2aab26,_0xbbb4f1,_0x5cba8c,_0x1e2af8){return _0x2aab26(_0xbbb4f1,_0x5cba8c,_0x1e2af8);},'vDHaV':_0x36bd08(0x223),'IrWWw':_0x36bd08(0x238)};try{await redisHelper[_0x36bd08(0x1d7)](_0x44b358,{'status':'processing','started_at':new Date()['toISOString']()}),logger[_0x36bd08(0x24b)]({'event':_0x4a840e[_0x36bd08(0x225)],'jobId':_0x44b358},_0x4a840e['hNTPU']);const _0x4e26ea=await this['fetchData'](_0x3cfe6f);await redisHelper['updateJob'](_0x44b358,{'total_rows':_0x4e26ea[_0x36bd08(0x1e1)]});const _0x236022=await this['generateExcel'](_0x44b358,_0x4e26ea,_0x3cfe6f);await redisHelper[_0x36bd08(0x1d7)](_0x44b358,{'status':_0x36bd08(0x205),'progress':0x64,'file_path':_0x236022,'completed_at':new Date()['toISOString']()}),logger[_0x36bd08(0x24b)]({'event':_0x36bd08(0x224),'jobId':_0x44b358,'rows':_0x4e26ea['length']},_0x4a840e['gfuya']);}catch(_0x3fd86c){_0x4a840e[_0x36bd08(0x230)](logError,_0x3fd86c,{'event':_0x4a840e[_0x36bd08(0x201)],'jobId':_0x44b358},_0x36bd08(0x1f4)),await redisHelper[_0x36bd08(0x1d7)](_0x44b358,{'status':_0x4a840e['IrWWw'],'error':_0x3fd86c['message'],'failed_at':new Date()[_0x36bd08(0x1d5)]()});}}async[a0_0x50c6e5(0x20a)](_0x279e22){const _0x205753=a0_0x50c6e5,_0x581dcd={'vwYrp':'tableName\x20and\x20columns\x20are\x20required','mutVR':'export_using_custom_query','nssht':function(_0x7cefbb,_0x2772ee){return _0x7cefbb===_0x2772ee;},'prlUj':function(_0x2af2e1,_0x1fa7a8){return _0x2af2e1>_0x1fa7a8;},'edvvt':function(_0x46f306,_0x448cf5){return _0x46f306(_0x448cf5);},'kNuuB':_0x205753(0x221),'QbYdV':function(_0x14b84f,_0x2a1dab,_0x3e247f,_0x155b04){return _0x14b84f(_0x2a1dab,_0x3e247f,_0x155b04);},'aOqVl':_0x205753(0x1e4)};try{const {tableName:_0x50bab3,columns:_0x59e75e,exportQuery:_0x125016,where:_0x5bb64e,sort_columns:_0x4cb239}=_0x279e22;if(!_0x50bab3||!_0x59e75e||_0x59e75e['length']===0x0)throw new Error(_0x581dcd['vwYrp']);const _0x4ab48f=_0x50bab3[_0x205753(0x1f5)](/\./g,'_')+_0x205753(0x227);let _0x4c21b5;if(_0x125016&&_0x125016['trim']()){let _0x4ec704=_0x125016;_0x125016['trim']()['startsWith'](_0x205753(0x203))&&(_0x4ec704=this[_0x205753(0x234)](_0x125016)),_0x4c21b5='WITH\x20'+_0x4ab48f+_0x205753(0x213)+_0x4ec704+'\x0a)',logger['info']({'event':_0x581dcd['mutVR'],'query':_0x4ec704[_0x205753(0x1d3)](0x0,0x64)},'Using\x20custom\x20exportQuery');}else{const _0x30db5a=_0x59e75e['map'](_0x22919c=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x22919c)[_0x205753(0x243)](',');_0x4c21b5=_0x205753(0x220)+_0x4ab48f+_0x205753(0x24c)+_0x30db5a+_0x205753(0x1c8)+_0x50bab3+'\x0a)',logger[_0x205753(0x24b)]({'event':_0x205753(0x210),'tableName':_0x50bab3,'columnCount':_0x59e75e['length']},_0x205753(0x214));}const _0x14ae56=!_0x59e75e||_0x59e75e[_0x205753(0x1e1)]===0x0||_0x581dcd['nssht'](_0x59e75e['length'],0x1)&&(_0x581dcd['nssht'](_0x59e75e[0x0],'*')||_0x59e75e[0x0]['toLowerCase']()==='all'),_0x3175bb=_0x14ae56?'*':_0x59e75e['join'](',\x20');_0x4c21b5+='\x0aSELECT\x20'+_0x3175bb+_0x205753(0x241)+_0x4ab48f;if(_0x5bb64e){const _0x4bbca1=this['buildWhereClause'](_0x5bb64e);_0x4bbca1&&(_0x4c21b5+=_0x205753(0x23b)+_0x4bbca1);}if(_0x4cb239&&_0x581dcd['prlUj'](_0x4cb239[_0x205753(0x1e1)],0x0)){const _0xcfe41=this[_0x205753(0x23d)](_0x4cb239);_0xcfe41&&(_0x4c21b5+=_0x205753(0x216)+_0xcfe41);}logger[_0x205753(0x24b)]({'event':'export_fetch_start','query':_0x4c21b5['substring'](0x0,0xc8)},'Fetching\x20data\x20from\x20database');const _0xb68f06=await _0x581dcd[_0x205753(0x249)](executeQuery,_0x4c21b5);let _0x38a267=_0xb68f06;return _0x581dcd[_0x205753(0x248)](dbType,_0x581dcd['kNuuB'])&&_0xb68f06&&_0xb68f06[_0x205753(0x1e1)]>0x0&&(_0x38a267=_0xb68f06[_0x205753(0x1c1)](_0x12f92f=>{const _0x134535=_0x205753,_0x861a48={};for(const [_0x51451c,_0x41beac]of Object['entries'](_0x12f92f)){_0x861a48[_0x51451c[_0x134535(0x21a)]()]=_0x41beac;}return _0x861a48;})),logger[_0x205753(0x24b)]({'event':'export_fetch_complete','rows':_0x38a267[_0x205753(0x1e1)]},_0x205753(0x212)),_0x38a267;}catch(_0x837036){_0x581dcd['QbYdV'](logError,_0x837036,{'event':'export_fetch_error'},_0x581dcd['aOqVl']);throw _0x837036;}}['sanitizeValue'](_0x5d775f){const _0x2e3ca6=a0_0x50c6e5,_0xc4b478={'AWRip':'string'};if(typeof _0x5d775f===_0xc4b478[_0x2e3ca6(0x1f7)])return _0x5d775f[_0x2e3ca6(0x1f5)](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')[_0x2e3ca6(0x209)]();else{if(Array['isArray'](_0x5d775f))return _0x5d775f[_0x2e3ca6(0x1c1)](_0x520007=>this['sanitizeValue'](_0x520007));}return _0x5d775f;}[a0_0x50c6e5(0x21d)](_0x4c538c){const _0x5847b7=a0_0x50c6e5,_0x858293={'GPGEA':'invalid_condition','lUSUO':function(_0x54a51c,_0x34eb62){return _0x54a51c!==_0x34eb62;},'CxBTd':function(_0x34f1b9,_0x431c3e){return _0x34f1b9===_0x431c3e;},'ZRnWD':'string','XBTqH':'NOT\x20LIKE','TndIE':_0x5847b7(0x23f),'cOOhz':_0x5847b7(0x24f)};if(!_0x4c538c||!_0x4c538c['conditions']||_0x858293[_0x5847b7(0x1e9)](_0x4c538c['conditions']['length'],0x0))return'';const {logic:_0x20e9db,conditions:_0x1336e8}=_0x4c538c,_0x1490d6=_0x20e9db&&_0x858293['CxBTd'](_0x20e9db[_0x5847b7(0x1f8)](),'OR')?'\x20OR\x20':'\x20AND\x20',_0x240461=_0x1336e8['map'](_0x33216c=>{const _0xddee20=_0x5847b7,_0xf11deb={'kvnca':_0xddee20(0x219)},{key:_0x48e602,operator:_0x34a898,value:_0x282351,sensitive:_0x555008}=_0x33216c;if(!_0x48e602||!_0x34a898)return logger['warn']({'event':_0x858293[_0xddee20(0x22f)],'condition':_0x33216c},'Skipping\x20invalid\x20condition'),null;const _0x21031a=this[_0xddee20(0x1f1)](_0x282351),_0x24e5be=_0x858293[_0xddee20(0x1eb)](_0x555008,undefined)?_0x555008:!![];let _0x2bd5bc=_0x48e602,_0x3217f9=_0x21031a;!_0x24e5be&&(_0x2bd5bc='UPPER('+_0x48e602+')',_0x858293[_0xddee20(0x1e9)](typeof _0x282351,'string')&&(_0x3217f9=_0x282351[_0xddee20(0x1f8)]()));const _0x18d485=_0x858293['CxBTd'](typeof _0x3217f9,_0x858293[_0xddee20(0x1cf)])?'\x27'+_0x3217f9['replace'](/'/g,'\x27\x27')+'\x27':_0x3217f9;switch(_0x34a898['toUpperCase']()){case'=':case'!=':case'<>':return _0x2bd5bc+'\x20'+_0x34a898+'\x20'+_0x18d485;case'>':case'<':case'>=':case'<=':const _0x5523b4=typeof _0x21031a==='string'?'\x27'+_0x21031a['replace'](/'/g,'\x27\x27')+'\x27':_0x21031a;return _0x48e602+'\x20'+_0x34a898+'\x20'+_0x5523b4;case _0xddee20(0x1ff):case _0x858293[_0xddee20(0x244)]:return _0x2bd5bc+'\x20'+_0x34a898+'\x20'+_0x18d485;case'IN':if(Array['isArray'](_0x21031a)){let _0x3857c2;return!_0x24e5be?_0x3857c2=_0x21031a['map'](_0xb14a96=>{const _0xfc80ae=_0xddee20,_0x42f3df=typeof _0xb14a96===_0xfc80ae(0x219)?_0xb14a96['toUpperCase']():_0xb14a96;return typeof _0x42f3df===_0xf11deb['kvnca']?'\x27'+_0x42f3df[_0xfc80ae(0x1f5)](/'/g,'\x27\x27')+'\x27':_0x42f3df;})['join'](',\x20'):_0x3857c2=_0x21031a[_0xddee20(0x1c1)](_0x25f910=>typeof _0x25f910==='string'?'\x27'+_0x25f910[_0xddee20(0x1f5)](/'/g,'\x27\x27')+'\x27':_0x25f910)[_0xddee20(0x243)](',\x20'),_0x2bd5bc+_0xddee20(0x1e0)+_0x3857c2+')';}return _0x2bd5bc+'\x20IN\x20('+_0x18d485+')';case _0x858293['TndIE']:return _0x48e602+_0xddee20(0x1df);case'IS\x20NOT\x20NULL':return _0x48e602+'\x20IS\x20NOT\x20NULL';default:logger['warn']({'event':_0xddee20(0x204),'operator':_0x34a898},_0x858293[_0xddee20(0x247)]);return _0x2bd5bc+'\x20=\x20'+_0x18d485;}})[_0x5847b7(0x1ed)](_0x1b71cb=>_0x1b71cb!==null);if(_0x240461[_0x5847b7(0x1e1)]===0x0)return'';return _0x240461[_0x5847b7(0x243)](_0x1490d6);}['buildOrderByClause'](_0x2d3815){const _0x937ede=a0_0x50c6e5,_0x5cdd39={'ySTUf':'Skipping\x20invalid\x20order\x20clause','DwvtZ':_0x937ede(0x1d0),'FWLUU':function(_0x47de64,_0x3486ed){return _0x47de64===_0x3486ed;}};if(!_0x2d3815||_0x5cdd39[_0x937ede(0x1c4)](_0x2d3815[_0x937ede(0x1e1)],0x0))return'';const _0x599bc4=_0x2d3815[_0x937ede(0x1c1)](_0x1ad9af=>{const _0x1303de=_0x937ede,{column:_0x79ff50,direction:_0x569cc6}=_0x1ad9af;if(!_0x79ff50)return logger[_0x1303de(0x237)]({'event':'invalid_order','item':_0x1ad9af},_0x5cdd39[_0x1303de(0x22d)]),null;const _0x25ae65=_0x569cc6&&_0x569cc6[_0x1303de(0x1f8)]()===_0x5cdd39['DwvtZ']?_0x5cdd39['DwvtZ']:_0x1303de(0x21b);return _0x79ff50+'\x20'+_0x25ae65;})['filter'](_0x527e18=>_0x527e18!==null);if(_0x599bc4['length']===0x0)return'';return _0x599bc4['join'](',\x20');}async['generateExcel'](_0x3b5bf2,_0xc1ea9,_0x5ac01f){const _0xf0a338=a0_0x50c6e5,_0x500d1b={'xpxCZ':function(_0x5179a8,_0x2760df){return _0x5179a8*_0x2760df;},'uDlVP':function(_0x4c0842,_0x45b058){return _0x4c0842(_0x45b058);},'qpsAB':_0xf0a338(0x1f0),'nRTPN':function(_0xc91c40,_0x1c8f3d){return _0xc91c40===_0x1c8f3d;},'pBRnV':function(_0x32b017,_0x45b60a){return _0x32b017>_0x45b60a;},'syfEP':function(_0x12c017,_0x5ac03c){return _0x12c017>_0x5ac03c;},'kNXzq':_0xf0a338(0x1fc),'hQjsh':_0xf0a338(0x1ee),'Mnakv':_0xf0a338(0x1ca)},_0x4e0236=_0x500d1b['uDlVP'](require,_0x500d1b['qpsAB']),_0x34afa2=new _0x4e0236(),_0x39c92d=_0x5ac01f[_0xf0a338(0x1d4)]?_0x5ac01f['filename']+'-'+_0x3b5bf2:_0xf0a338(0x1fb)+_0x3b5bf2,_0x353cd6=path['join'](this['exportDir'],_0x39c92d+'.xlsx');let _0x2aaee1=_0x5ac01f[_0xf0a338(0x1ea)];const _0x331f26=_0x2aaee1&&_0x500d1b['nRTPN'](_0x2aaee1['length'],0x1)&&(_0x500d1b['nRTPN'](_0x2aaee1[0x0],'*')||_0x2aaee1[0x0][_0xf0a338(0x21a)]()==='all');if(_0x500d1b['pBRnV'](_0xc1ea9['length'],0x0)){const _0x271bc7=Object[_0xf0a338(0x1c5)](_0xc1ea9[0x0]);if(_0x331f26)_0x2aaee1=_0x271bc7,logger['info']({'event':_0xf0a338(0x1da),'columns':_0x2aaee1},'Using\x20all\x20'+_0x2aaee1[_0xf0a338(0x1e1)]+_0xf0a338(0x222));else{if(_0x2aaee1&&_0x500d1b['syfEP'](_0x2aaee1['length'],0x0)){const _0x2c63f0=_0x2aaee1['filter'](_0x5d7e7a=>_0x271bc7['includes'](_0x5d7e7a));_0x2c63f0['length']>0x0?(_0x2aaee1=_0x2c63f0,logger['info']({'event':_0x500d1b[_0xf0a338(0x217)],'requestedColumns':_0x5ac01f['columns'],'validColumns':_0x2aaee1},'Using\x20'+_0x2aaee1[_0xf0a338(0x1e1)]+_0xf0a338(0x22b))):(_0x2aaee1=_0x271bc7,logger['warn']({'event':_0x500d1b[_0xf0a338(0x1de)],'requestedColumns':_0x5ac01f[_0xf0a338(0x1ea)],'availableColumns':_0x271bc7},'Requested\x20columns\x20not\x20found\x20in\x20data,\x20using\x20all\x20'+_0x271bc7[_0xf0a338(0x1e1)]+_0xf0a338(0x22e)));}else _0x2aaee1=_0x271bc7,logger['info']({'event':'excel_columns_from_query_result','columns':_0x2aaee1},_0xf0a338(0x1c7)+_0x2aaee1[_0xf0a338(0x1e1)]+'\x20columns\x20from\x20query\x20result');}}else logger[_0xf0a338(0x24b)]({'event':_0x500d1b[_0xf0a338(0x21f)],'columns':_0x2aaee1},'Using\x20'+(_0x2aaee1?.['length']||0x0)+'\x20columns\x20from\x20config\x20(no\x20data)');return await _0x34afa2['generate']({'data':_0xc1ea9,'columns':_0x2aaee1,'columnFormats':_0x5ac01f[_0xf0a338(0x20f)]||null,'fieldLabels':_0x5ac01f[_0xf0a338(0x21e)]||null,'filePath':_0x353cd6,'onProgress':async _0x104b55=>{const _0x4c8e81=_0xf0a338;await redisHelper['updateJob'](_0x3b5bf2,{'progress':Math[_0x4c8e81(0x1fe)](_0x104b55),'processed_rows':Math['round'](_0x500d1b['xpxCZ'](_0x104b55/0x64,_0xc1ea9['length']))});}}),_0x353cd6;}async[a0_0x50c6e5(0x23a)](_0x10f3f4){const _0x4eda3b=a0_0x50c6e5,_0x35af62={'qldZW':_0x4eda3b(0x205),'ryPFc':function(_0x520ed3,_0x3f2910,_0x25c513,_0x361d1f){return _0x520ed3(_0x3f2910,_0x25c513,_0x361d1f);},'VYNir':_0x4eda3b(0x233)},_0x195042=await redisHelper['getJob'](_0x10f3f4);if(!_0x195042||_0x195042['status']!==_0x35af62[_0x4eda3b(0x242)])return null;try{return await fs['access'](_0x195042['file_path']),_0x195042[_0x4eda3b(0x1f3)];}catch(_0xabc1ab){return _0x35af62['ryPFc'](logError,_0xabc1ab,{'event':'export_file_not_found','jobId':_0x10f3f4,'path':_0x195042['file_path']},_0x35af62['VYNir']),null;}}async['cleanup'](){const _0x2134c3=a0_0x50c6e5,_0x378a1b={'DejZk':'export_cleanup_start','uBciI':_0x2134c3(0x22a),'pieZW':function(_0x4012be,_0x423079){return _0x4012be/_0x423079;},'HcqoG':function(_0x1f8c28,_0x8cfa0b){return _0x1f8c28*_0x8cfa0b;},'MWlAk':function(_0x41c51c,_0x57cc4a){return _0x41c51c>_0x57cc4a;},'cndTj':_0x2134c3(0x21c),'NmXeh':_0x2134c3(0x1dd)};logger[_0x2134c3(0x24b)]({'event':_0x378a1b[_0x2134c3(0x20b)]},_0x378a1b[_0x2134c3(0x1f6)]);const _0x37d1b9=await redisHelper['getAllJobs']();let _0x151b56=0x0;for(const _0x2112a5 of _0x37d1b9){const _0x29198c=new Date(_0x2112a5[_0x2134c3(0x1bf)]),_0x5e91cd=new Date(),_0x244694=_0x378a1b['pieZW'](_0x5e91cd-_0x29198c,_0x378a1b[_0x2134c3(0x1c3)](_0x378a1b['HcqoG'](0x3e8,0x3c),0x3c));if(_0x378a1b['MWlAk'](_0x244694,0x1)){if(_0x2112a5['file_path'])try{await fs['unlink'](_0x2112a5[_0x2134c3(0x1f3)]),logger['info']({'event':_0x2134c3(0x240),'path':_0x2112a5['file_path']},_0x2134c3(0x1e7));}catch(_0x27be0f){logger[_0x2134c3(0x237)]({'event':_0x378a1b['cndTj'],'path':_0x2112a5['file_path'],'error':_0x27be0f[_0x2134c3(0x1db)]},_0x2134c3(0x239));}await redisHelper[_0x2134c3(0x1e5)](_0x2112a5[_0x2134c3(0x1ec)]),_0x151b56++;}}return logger[_0x2134c3(0x24b)]({'event':_0x378a1b[_0x2134c3(0x24d)],'deleted':_0x151b56},_0x2134c3(0x1f2)),_0x151b56;}}module[a0_0x50c6e5(0x1d1)]=new ExportService();
@@ -1 +1 @@
1
- const a0_0xedf24a=a0_0x18aa;function a0_0x378f(){const _0x31566f=['y3jLyxrLsM9I','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDa','mteYndKZmZzqvu1VwMW','mtyYmZu1odbevurwvxC','mtfesw5lALe','A2v5','Bg9NAwm','CxvLCNK','zxHWB3j0x3rYAwDNzxjFzxjYB3i','q2XLyw51CcbMywLSzwq','ngLdELH0tW','zxHWB3j0x2rVD25SB2fKzwq','y29SDw1U','AxnbCNjHEq','ndu1mJKYm2vqA0Xtvq','ANnVBG','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','EgXZEa','Cg9ZDa','nJC4ndaZodnvAMjPDMy','y29SDw1UrM9YBwf0CW','rxHWB3j0igzPBguGzg93BMXVywrLzcbZDwnJzxnZzNvSBhK','DgfIBgvoyw1L','y2XLyw51Cf9LCNjVCG','sw52ywXPzcbZB3j0x2nVBhvTBNmGC3rYDwn0DxjLlIbfEhbLy3rLzdOGw3SGy29SDw1UoIaIy29SiIWGzgLYzwn0Aw9UoIaIqvndFerfu0mIih1D','rMX2zfa','z2v0sM9Iu3rHDhvZ','mtmZmgXmt2Tzza','l2v4Cg9YDa','AgfUzgXLrxHWB3j0vhjPz2DLCG','z2v0','AgfUzgXLrxHWB3j0u3rHDhvZ','mtjpsNPgCNu','C3rHDhvZ','zxHWB3j0uxvLCNK','D1f0q0O','BMjqqKS','Cgf0Aa','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','mteXowDXC0jSDa','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','zMLLBgrmywjLBhm','y29SDw1UCW','yMfZzw5HBwu','rMLLBgqGiG','yM9KEq','y1PYzM4','BwvZC2fNzq','ndv6vgr1qKi','AgfUzgXLrxHWB3j0rg93BMXVywq','y2XLyw51Ca','AgvHzgvYC1nLBNq','n0Ppq2jovq','mtqWnZe4mdzAt1nzB0q','zNnAreK','iIbPCYbUB3qGywXSB3DLza','Aw5JBhvKzxm','ntiZndi4tgXtD01O','l2v4Cg9YDc1ZDgf0Dxm','y29UzgL0Aw9UCW'];a0_0x378f=function(){return _0x31566f;};return a0_0x378f();}function a0_0x18aa(_0xc88fd0,_0x794c65){_0xc88fd0=_0xc88fd0-0x82;const _0x378f89=a0_0x378f();let _0x18aa33=_0x378f89[_0xc88fd0];if(a0_0x18aa['RVuMrG']===undefined){var _0x586ecb=function(_0x4c34f6){const _0x466549='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1fba85='',_0x26a194='';for(let _0x2655cf=0x0,_0x359d5b,_0x303abe,_0x1cb996=0x0;_0x303abe=_0x4c34f6['charAt'](_0x1cb996++);~_0x303abe&&(_0x359d5b=_0x2655cf%0x4?_0x359d5b*0x40+_0x303abe:_0x303abe,_0x2655cf++%0x4)?_0x1fba85+=String['fromCharCode'](0xff&_0x359d5b>>(-0x2*_0x2655cf&0x6)):0x0){_0x303abe=_0x466549['indexOf'](_0x303abe);}for(let _0x3be047=0x0,_0x262d41=_0x1fba85['length'];_0x3be047<_0x262d41;_0x3be047++){_0x26a194+='%'+('00'+_0x1fba85['charCodeAt'](_0x3be047)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x26a194);};a0_0x18aa['zEOziA']=_0x586ecb,a0_0x18aa['iLSnih']={},a0_0x18aa['RVuMrG']=!![];}const _0x55e0a2=_0x378f89[0x0],_0x7e7da6=_0xc88fd0+_0x55e0a2,_0x34150c=a0_0x18aa['iLSnih'][_0x7e7da6];return!_0x34150c?(_0x18aa33=a0_0x18aa['zEOziA'](_0x18aa33),a0_0x18aa['iLSnih'][_0x7e7da6]=_0x18aa33):_0x18aa33=_0x34150c,_0x18aa33;}(function(_0x17ddeb,_0x257f65){const _0x1286ff=a0_0x18aa,_0x6b6029=_0x17ddeb();while(!![]){try{const _0x3a0408=-parseInt(_0x1286ff(0xbc))/0x1*(parseInt(_0x1286ff(0xb0))/0x2)+-parseInt(_0x1286ff(0xa3))/0x3*(parseInt(_0x1286ff(0x9f))/0x4)+parseInt(_0x1286ff(0x89))/0x5*(-parseInt(_0x1286ff(0x92))/0x6)+-parseInt(_0x1286ff(0x8d))/0x7*(parseInt(_0x1286ff(0x97))/0x8)+-parseInt(_0x1286ff(0x8e))/0x9+-parseInt(_0x1286ff(0x98))/0xa*(-parseInt(_0x1286ff(0x99))/0xb)+parseInt(_0x1286ff(0xb5))/0xc*(parseInt(_0x1286ff(0xa8))/0xd);if(_0x3a0408===_0x257f65)break;else _0x6b6029['push'](_0x6b6029['shift']());}catch(_0x377016){_0x6b6029['push'](_0x6b6029['shift']());}}}(a0_0x378f,0xc9856));const exportService=require('../../services/export-service'),{logger,logError}=require('../../utils/logger'),path=require(a0_0xedf24a(0xba));class ExportHandler{static['registerRoutes'](_0x5efb97,_0x245eb9,_0x37e27a,_0x2014fa){const _0x5f4b7d=a0_0xedf24a,_0x4209f6={'fsZDI':_0x5f4b7d(0x9d),'cZrfn':'Failed\x20to\x20trigger\x20export','FlvdP':'export_download_error','gxocR':_0x5f4b7d(0x96)},_0x405c87='/api/'+_0x245eb9+'/'+_0x37e27a;_0x5efb97[_0x5f4b7d(0xa7)](_0x405c87+_0x5f4b7d(0xb1),async(_0x329093,_0x3ac658)=>{const _0x49f0f8=_0x5f4b7d;try{await this[_0x49f0f8(0xb2)](_0x329093,_0x3ac658,_0x2014fa,_0x245eb9,_0x37e27a);}catch(_0x2299fb){logError(_0x2299fb,{'event':_0x4209f6[_0x49f0f8(0x8f)]},_0x4209f6[_0x49f0f8(0x87)]),_0x3ac658[_0x49f0f8(0xb6)](0x1f4)[_0x49f0f8(0xa4)]({'success':![],'error':_0x2299fb['message']});}}),_0x5efb97[_0x5f4b7d(0xb3)](_0x405c87+_0x5f4b7d(0x93),async(_0x26a314,_0x326bdb)=>{const _0x48db0b=_0x5f4b7d;try{await this['handleExportStatus'](_0x26a314,_0x326bdb);}catch(_0x2da2ba){logError(_0x2da2ba,{'event':'export_status_error'},'Failed\x20to\x20get\x20export\x20status'),_0x326bdb['status'](0x1f4)[_0x48db0b(0xa4)]({'success':![],'error':_0x2da2ba['message']});}}),_0x5efb97['get'](_0x405c87+'/export-download',async(_0x48ad0e,_0xdf4c56)=>{const _0xb9e8b8=_0x5f4b7d;try{await this['handleExportDownload'](_0x48ad0e,_0xdf4c56);}catch(_0xe1052e){logError(_0xe1052e,{'event':_0x4209f6[_0xb9e8b8(0xae)]},_0x4209f6['gxocR']),!_0xdf4c56[_0xb9e8b8(0x8c)]&&_0xdf4c56[_0xb9e8b8(0xb6)](0x1f4)[_0xb9e8b8(0xa4)]({'success':![],'error':_0xe1052e[_0xb9e8b8(0x88)]});}});}static async['handleExportTrigger'](_0x58d9e4,_0x17cd10,_0x2d91e0,_0x58fc6f,_0x413dce){const _0x939f09=a0_0xedf24a,_0x1b4952={'cpfbN':'Invalid\x20where\x20structure.\x20Expected:\x20{\x20logic:\x20\x22AND|OR\x22,\x20conditions:\x20[...]\x20}','xTQhX':function(_0x3fda28,_0x5740ff){return _0x3fda28+_0x5740ff;},'XQNPy':_0x939f09(0xa6)},{format:_0x41a23f,filename:_0x201fb6,columns:_0x34f4c1,where:_0x1f8ad8,sort_columns:_0x368d30}=_0x58d9e4[_0x939f09(0x86)];if(_0x41a23f&&_0x41a23f!==_0x939f09(0xa6))return _0x17cd10[_0x939f09(0xb6)](0x190)['json']({'success':![],'error':'Only\x20xlsx\x20format\x20is\x20supported'});if(_0x1f8ad8){if(!_0x1f8ad8[_0x939f09(0x9b)]||!_0x1f8ad8['conditions']||!Array['isArray'](_0x1f8ad8[_0x939f09(0x94)]))return _0x17cd10['status'](0x190)['json']({'success':![],'error':_0x1b4952['cpfbN']});}if(_0x368d30){if(!Array['isArray'](_0x368d30))return _0x17cd10['status'](0x190)[_0x939f09(0xa4)]({'success':![],'error':_0x939f09(0xad)});}const _0x5e3af1=_0x2d91e0[_0x939f09(0x83)]||[];if(_0x1f8ad8&&Array[_0x939f09(0xa2)](_0x1f8ad8['conditions']))for(const _0x281d3b of _0x1f8ad8['conditions']){if(_0x281d3b['key']&&!_0x5e3af1[_0x939f09(0x91)](_0x281d3b[_0x939f09(0x9a)]))return _0x17cd10['status'](0x190)['json']({'success':![],'error':'Invalid\x20where\x20field','message':_0x939f09(0x85)+_0x281d3b['key']+_0x939f09(0x90),'validFields':_0x5e3af1});}if(Array['isArray'](_0x368d30))for(const _0x301fea of _0x368d30){if(_0x301fea[_0x939f09(0xa1)]&&!_0x5e3af1[_0x939f09(0x91)](_0x301fea['column']))return _0x17cd10['status'](0x190)[_0x939f09(0xa4)]({'success':![],'error':'Invalid\x20sort\x20column','message':'Column\x20\x22'+_0x301fea[_0x939f09(0xa1)]+'\x22\x20is\x20not\x20allowed','validFields':_0x5e3af1});}const _0x33bb14=_0x1b4952['xTQhX'](_0x2d91e0['tableName']['replace']('.','-'),'-export'),_0x219e73=await exportService[_0x939f09(0x95)]({'moduleName':_0x58fc6f,'endpointName':_0x413dce,'tableName':_0x2d91e0[_0x939f09(0xab)],'format':_0x41a23f||_0x1b4952['XQNPy'],'filename':_0x201fb6||_0x33bb14,'columns':_0x34f4c1||_0x2d91e0[_0x939f09(0x83)],'exportQuery':_0x2d91e0[_0x939f09(0xb7)]||null,'columnFormats':_0x2d91e0[_0x939f09(0xa9)]||null,'fieldLabels':_0x2d91e0[_0x939f09(0x82)]||null,'where':_0x1f8ad8||null,'sort_columns':_0x368d30||null});_0x17cd10['json']({'success':!![],'data':_0x219e73});}static async[a0_0xedf24a(0xb4)](_0x5d5ba6,_0x1538c3){const _0xf5885a=a0_0xedf24a,{job_id:_0x452958}=_0x5d5ba6['query'];if(!_0x452958)return _0x1538c3[_0xf5885a(0xb6)](0x190)[_0xf5885a(0xa4)]({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x485794=await exportService[_0xf5885a(0xaf)](_0x452958);if(!_0x485794['success'])return _0x1538c3[_0xf5885a(0xb6)](0x194)['json'](_0x485794);_0x1538c3[_0xf5885a(0xa4)](_0x485794);}static async[a0_0xedf24a(0x8a)](_0x3dc983,_0x5ea2d2){const _0x4c968f=a0_0xedf24a,_0x274a5b={'wQtCJ':function(_0x26383c,_0x566d3d,_0x5bb735,_0xa3560c){return _0x26383c(_0x566d3d,_0x5bb735,_0xa3560c);},'VhjxY':_0x4c968f(0xa0),'xieRq':_0x4c968f(0xa5),'qqRjR':'File\x20not\x20ready\x20or\x20not\x20found.\x20Check\x20job\x20status\x20first.'},{job_id:_0x1025a5}=_0x3dc983[_0x4c968f(0x9c)];if(!_0x1025a5)return _0x5ea2d2[_0x4c968f(0xb6)](0x190)[_0x4c968f(0xa4)]({'success':![],'error':_0x274a5b['xieRq']});const _0x11b04f=await exportService['getFilePath'](_0x1025a5);if(!_0x11b04f)return _0x5ea2d2[_0x4c968f(0xb6)](0x194)[_0x4c968f(0xa4)]({'success':![],'error':_0x274a5b['qqRjR']});_0x5ea2d2['download'](_0x11b04f,''+path[_0x4c968f(0x84)](_0x11b04f),_0x2460df=>{const _0x141671=_0x4c968f;_0x2460df?(_0x274a5b[_0x141671(0xb8)](logError,_0x2460df,{'event':_0x141671(0xbd),'jobId':_0x1025a5},'Failed\x20to\x20download\x20export\x20file'),!_0x5ea2d2['headersSent']&&_0x5ea2d2['status'](0x1f4)['json']({'success':![],'error':'Failed\x20to\x20download\x20file'})):logger['info']({'event':_0x274a5b['VhjxY'],'jobId':_0x1025a5},_0x141671(0xaa));});}static['registerCleanupRoute'](_0x2c64c9){const _0x1fbe55=a0_0xedf24a,_0x59f1da={'nbPBK':'Cleanup\x20completed','cfNuC':_0x1fbe55(0xac),'qSRMA':_0x1fbe55(0x9e),'imLwf':_0x1fbe55(0xbb)};_0x2c64c9[_0x1fbe55(0xb3)](_0x59f1da['imLwf'],async(_0xa8c127,_0x1c6955)=>{const _0x3cfe6d=_0x1fbe55;try{const _0x56d5d1=await exportService[_0x3cfe6d(0x8b)]();_0x1c6955['json']({'success':!![],'data':{'deleted':_0x56d5d1,'message':_0x59f1da[_0x3cfe6d(0xb9)]}});}catch(_0xfbb1c9){logError(_0xfbb1c9,{'event':_0x59f1da['cfNuC']},_0x59f1da['qSRMA']),_0x1c6955['status'](0x1f4)[_0x3cfe6d(0xa4)]({'success':![],'error':_0xfbb1c9[_0x3cfe6d(0x88)]});}});}}module['exports']=ExportHandler;
1
+ const a0_0xe3ab94=a0_0x5840;(function(_0x223240,_0x4f4022){const _0x41e715=a0_0x5840,_0x74c0ec=_0x223240();while(!![]){try{const _0x28b24e=-parseInt(_0x41e715(0x217))/0x1*(-parseInt(_0x41e715(0x1fb))/0x2)+parseInt(_0x41e715(0x212))/0x3+parseInt(_0x41e715(0x1f3))/0x4+parseInt(_0x41e715(0x1eb))/0x5*(-parseInt(_0x41e715(0x1fd))/0x6)+parseInt(_0x41e715(0x1ff))/0x7+-parseInt(_0x41e715(0x201))/0x8*(-parseInt(_0x41e715(0x202))/0x9)+-parseInt(_0x41e715(0x1e5))/0xa*(parseInt(_0x41e715(0x204))/0xb);if(_0x28b24e===_0x4f4022)break;else _0x74c0ec['push'](_0x74c0ec['shift']());}catch(_0x4985d5){_0x74c0ec['push'](_0x74c0ec['shift']());}}}(a0_0x2773,0x30490));function a0_0x2773(){const _0x40c565=['nte0wgjXC1HX','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDa','y29SDw1UrM9YBwf0CW','z2v0rMLSzvbHDgG','ENjoA3u','y29UzgL0Aw9UCW','CLvctLe','CxvLCNK','ANnVBG','mZeWEgP5yLH2','DgfIBgvoyw1L','Aw5JBhvKzxm','AgfUzgXLrxHWB3j0u3rHDhvZ','t25SEsb4Bhn4igzVCM1HDcbPCYbZDxbWB3j0zwq','DfnIruK','nwTXshLXsq','y3jLyxrLsM9I','A2v5','y29SDw1U','txDiANO','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','iIbPCYbUB3qGywXSB3DLza','z2v0','mti4nZeWmfj2uMjyrq','z2v0sM9Iu3rHDhvZ','y2XLyw51Ca','zxHWB3j0x3n0yxr1C19LCNjVCG','wNLAExi','q2XLyw51CcbMywLSzwq','AxnbCNjHEq','rMfPBgvKihrVihrYAwDNzxiGzxHWB3j0','mtq2nNnMr1rjCa','BwvZC2fNzq','mtm2nJe0mg1qyKDLra','yMfZzw5HBwu','mtG0nJy4nejHB2XfCq','zxHWB3j0uxvLCNK','mZyWv1jkr2vV','mtCYntnfwvP4CLO','AgvHzgvYC1nLBNq','mZq5nde1rgLqu3zb','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','AgfUzgXLrxHWB3j0rg93BMXVywq','rxHWB3j0igzPBguGzg93BMXVywrLzcbZDwnJzxnZzNvSBhK','y2XLyw51Cf9LCNjVCG','CMvNAxn0zxjdBgvHBNvWuM91Dgu','C3rHDhvZ','l2v4Cg9YDa','CMvNAxn0zxjsB3v0zxm','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDcbMAwXL','ENHYvgC','q2XLyw51CcbJB21WBgv0zwq','EgXZEa','u2HUsvq','mta4ndCWmvjVsxfMuq','DwHiuNy','l2v4Cg9YDc1KB3DUBg9Hza','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','AgfUzgXLrxHWB3j0vhjPz2DLCG'];a0_0x2773=function(){return _0x40c565;};return a0_0x2773();}function a0_0x5840(_0x324aa7,_0x38a560){_0x324aa7=_0x324aa7-0x1e2;const _0x27732e=a0_0x2773();let _0x5840af=_0x27732e[_0x324aa7];if(a0_0x5840['PLDdBP']===undefined){var _0x31631c=function(_0x1c32b4){const _0x26da09='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x470c96='',_0x1b6cce='';for(let _0x2dc1d0=0x0,_0x12dec3,_0x31ce14,_0xea412d=0x0;_0x31ce14=_0x1c32b4['charAt'](_0xea412d++);~_0x31ce14&&(_0x12dec3=_0x2dc1d0%0x4?_0x12dec3*0x40+_0x31ce14:_0x31ce14,_0x2dc1d0++%0x4)?_0x470c96+=String['fromCharCode'](0xff&_0x12dec3>>(-0x2*_0x2dc1d0&0x6)):0x0){_0x31ce14=_0x26da09['indexOf'](_0x31ce14);}for(let _0x55b4e2=0x0,_0x47aac0=_0x470c96['length'];_0x55b4e2<_0x47aac0;_0x55b4e2++){_0x1b6cce+='%'+('00'+_0x470c96['charCodeAt'](_0x55b4e2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b6cce);};a0_0x5840['tSgEyy']=_0x31631c,a0_0x5840['bGtIzv']={},a0_0x5840['PLDdBP']=!![];}const _0x2e17f7=_0x27732e[0x0],_0x38970b=_0x324aa7+_0x2e17f7,_0x13686d=a0_0x5840['bGtIzv'][_0x38970b];return!_0x13686d?(_0x5840af=a0_0x5840['tSgEyy'](_0x5840af),a0_0x5840['bGtIzv'][_0x38970b]=_0x5840af):_0x5840af=_0x13686d,_0x5840af;}const exportService=require('../../services/export-service'),{logger,logError}=require('../../utils/logger'),path=require('path');class ExportHandler{static[a0_0xe3ab94(0x20c)](_0x5d9de0,_0x36de1e,_0x4f4e70,_0x404109){const _0x1508ef=a0_0xe3ab94,_0x414c9f={'ZyZyr':_0x1508ef(0x1f6),'zrNku':_0x1508ef(0x215),'PyltL':'export_download_error'},_0x145200='/api/'+_0x36de1e+'/'+_0x4f4e70;_0x5d9de0['post'](_0x145200+_0x1508ef(0x20b),async(_0x239146,_0x52ea72)=>{const _0x36d50e=_0x1508ef;try{await this[_0x36d50e(0x216)](_0x239146,_0x52ea72,_0x404109,_0x36de1e,_0x4f4e70);}catch(_0xaf6ef5){logError(_0xaf6ef5,{'event':'export_trigger_error'},_0x36d50e(0x1fa)),_0x52ea72['status'](0x1f4)[_0x36d50e(0x1e4)]({'success':![],'error':_0xaf6ef5['message']});}}),_0x5d9de0[_0x1508ef(0x1f2)](_0x145200+'/export-status',async(_0x557137,_0x5779b8)=>{const _0x6ccda9=_0x1508ef;try{await this[_0x6ccda9(0x1e8)](_0x557137,_0x5779b8);}catch(_0x49a748){logError(_0x49a748,{'event':_0x414c9f[_0x6ccda9(0x1f7)]},_0x414c9f[_0x6ccda9(0x21b)]),_0x5779b8[_0x6ccda9(0x20a)](0x1f4)['json']({'success':![],'error':_0x49a748[_0x6ccda9(0x1fc)]});}}),_0x5d9de0[_0x1508ef(0x1f2)](_0x145200+_0x1508ef(0x214),async(_0x2574c2,_0x1283d4)=>{const _0x24d2fb=_0x1508ef;try{await this[_0x24d2fb(0x206)](_0x2574c2,_0x1283d4);}catch(_0x27f5c2){logError(_0x27f5c2,{'event':_0x414c9f['PyltL']},_0x24d2fb(0x218)),!_0x1283d4['headersSent']&&_0x1283d4[_0x24d2fb(0x20a)](0x1f4)['json']({'success':![],'error':_0x27f5c2['message']});}});}static async[a0_0xe3ab94(0x216)](_0x299e81,_0xba2e0,_0x4ed41e,_0x5bc05d,_0x39450d){const _0x26e852=a0_0xe3ab94,_0x34b6c8={'ShnIT':_0x26e852(0x1e9),'MwHjz':'Invalid\x20where\x20structure.\x20Expected:\x20{\x20logic:\x20\x22AND|OR\x22,\x20conditions:\x20[...]\x20}','lfkJc':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]','uhHRv':'Invalid\x20where\x20field','TNQKJ':function(_0xfc1ccf,_0x1c5651){return _0xfc1ccf+_0x1c5651;},'rUBNQ':function(_0x3e9f8a,_0x3731c5){return _0x3e9f8a||_0x3731c5;},'VAQuY':function(_0x32c575,_0x4c8f0e){return _0x32c575||_0x4c8f0e;}},{format:_0x3b56c1,filename:_0x77c0af,columns:_0x22cd37,where:_0x573ae4,sort_columns:_0x206148}=_0x299e81['body'];if(_0x3b56c1&&_0x3b56c1!==_0x26e852(0x210))return _0xba2e0[_0x26e852(0x20a)](0x190)[_0x26e852(0x1e4)]({'success':![],'error':_0x34b6c8[_0x26e852(0x211)]});if(_0x573ae4){if(!_0x573ae4['logic']||!_0x573ae4[_0x26e852(0x21c)]||!Array[_0x26e852(0x1f9)](_0x573ae4['conditions']))return _0xba2e0['status'](0x190)['json']({'success':![],'error':_0x34b6c8[_0x26e852(0x1ef)]});}if(_0x206148){if(!Array[_0x26e852(0x1f9)](_0x206148))return _0xba2e0['status'](0x190)['json']({'success':![],'error':_0x34b6c8['lfkJc']});}const _0x257dde=_0x4ed41e['columns']||[];if(_0x573ae4&&Array[_0x26e852(0x1f9)](_0x573ae4['conditions']))for(const _0x5677b2 of _0x573ae4['conditions']){if(_0x5677b2[_0x26e852(0x1ed)]&&!_0x257dde[_0x26e852(0x1e7)](_0x5677b2[_0x26e852(0x1ed)]))return _0xba2e0['status'](0x190)['json']({'success':![],'error':_0x34b6c8[_0x26e852(0x213)],'message':'Field\x20\x22'+_0x5677b2['key']+'\x22\x20is\x20not\x20allowed','validFields':_0x257dde});}if(Array['isArray'](_0x206148))for(const _0x1f3e67 of _0x206148){if(_0x1f3e67['column']&&!_0x257dde[_0x26e852(0x1e7)](_0x1f3e67['column']))return _0xba2e0['status'](0x190)['json']({'success':![],'error':'Invalid\x20sort\x20column','message':'Column\x20\x22'+_0x1f3e67[_0x26e852(0x1ee)]+_0x26e852(0x1f1),'validFields':_0x257dde});}const _0x582802=_0x34b6c8['TNQKJ'](_0x4ed41e[_0x26e852(0x1e6)]['replace']('.','-'),'-export'),_0x5e9ab7=await exportService[_0x26e852(0x1ec)]({'moduleName':_0x5bc05d,'endpointName':_0x39450d,'tableName':_0x4ed41e['tableName'],'format':_0x34b6c8[_0x26e852(0x1e2)](_0x3b56c1,_0x26e852(0x210)),'filename':_0x77c0af||_0x582802,'columns':_0x22cd37||_0x4ed41e['columns'],'exportQuery':_0x4ed41e[_0x26e852(0x200)]||null,'columnFormats':_0x4ed41e[_0x26e852(0x219)]||null,'fieldLabels':_0x4ed41e['fieldLabels']||null,'where':_0x34b6c8['VAQuY'](_0x573ae4,null),'sort_columns':_0x206148||null});_0xba2e0['json']({'success':!![],'data':_0x5e9ab7});}static async['handleExportStatus'](_0x241303,_0x1b53ca){const _0x390d06=a0_0xe3ab94,_0x30c6ab={'wDkqZ':'job_id\x20parameter\x20is\x20required'},{job_id:_0x22cdee}=_0x241303[_0x390d06(0x1e3)];if(!_0x22cdee)return _0x1b53ca[_0x390d06(0x20a)](0x190)['json']({'success':![],'error':_0x30c6ab['wDkqZ']});const _0x1b26c3=await exportService[_0x390d06(0x1f4)](_0x22cdee);if(!_0x1b26c3['success'])return _0x1b53ca[_0x390d06(0x20a)](0x194)[_0x390d06(0x1e4)](_0x1b26c3);_0x1b53ca[_0x390d06(0x1e4)](_0x1b26c3);}static async['handleExportDownload'](_0x56ff18,_0x16903b){const _0xa068d9=a0_0xe3ab94,_0x45aa3b={'tSbEI':'Failed\x20to\x20download\x20file','zxrTg':'export_downloaded','IjEEn':_0xa068d9(0x207)},{job_id:_0xea3cf1}=_0x56ff18['query'];if(!_0xea3cf1)return _0x16903b[_0xa068d9(0x20a)](0x190)[_0xa068d9(0x1e4)]({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x12e239=await exportService[_0xa068d9(0x21a)](_0xea3cf1);if(!_0x12e239)return _0x16903b[_0xa068d9(0x20a)](0x194)['json']({'success':![],'error':'File\x20not\x20ready\x20or\x20not\x20found.\x20Check\x20job\x20status\x20first.'});_0x16903b['download'](_0x12e239,''+path[_0xa068d9(0x1fe)](_0x12e239),_0x28bf58=>{const _0x1a1771=_0xa068d9;_0x28bf58?(logError(_0x28bf58,{'event':_0x1a1771(0x205),'jobId':_0xea3cf1},_0x1a1771(0x20d)),!_0x16903b[_0x1a1771(0x203)]&&_0x16903b['status'](0x1f4)['json']({'success':![],'error':_0x45aa3b[_0x1a1771(0x1ea)]})):logger['info']({'event':_0x45aa3b[_0x1a1771(0x20e)],'jobId':_0xea3cf1},_0x45aa3b['IjEEn']);});}static[a0_0xe3ab94(0x209)](_0x5892b0){const _0x59eace=a0_0xe3ab94,_0x4c7f12={'OLCMs':_0x59eace(0x20f)};_0x5892b0[_0x59eace(0x1f2)](_0x59eace(0x1f0),async(_0x3913a9,_0x272bc8)=>{const _0x43b17a=_0x59eace;try{const _0x116d48=await exportService[_0x43b17a(0x1f5)]();_0x272bc8['json']({'success':!![],'data':{'deleted':_0x116d48,'message':_0x4c7f12['OLCMs']}});}catch(_0x37dd80){logError(_0x37dd80,{'event':_0x43b17a(0x208)},_0x43b17a(0x1f8)),_0x272bc8['status'](0x1f4)['json']({'success':![],'error':_0x37dd80['message']});}});}}module['exports']=ExportHandler;