@restforgejs/platform 4.3.4 → 4.3.8

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 (178) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/payload/migrate.js +96 -0
  5. package/generators/lib/migrate/backend-payload-migrator.js +221 -0
  6. package/generators/lib/migrate/field-type-resolver.js +319 -0
  7. package/generators/lib/migrate/label-generator.js +38 -0
  8. package/generators/lib/migrate/migrate-runner.js +187 -0
  9. package/generators/lib/migrate/naming.js +43 -0
  10. package/generators/lib/migrate/sql-parser.js +124 -0
  11. package/generators/lib/payload/endpoint-schema-validator.js +181 -181
  12. package/generators/lib/payload/payload-runner.js +1313 -1218
  13. package/generators/lib/payload/schema-diff.js +460 -460
  14. package/generators/lib/templates/dashboard-catalog.js +1 -1
  15. package/generators/lib/templates/db-connection-env.js +1 -1
  16. package/generators/lib/templates/dbschema-catalog.js +1 -1
  17. package/generators/lib/templates/field-validation-catalog.js +1 -1
  18. package/generators/lib/templates/mysql-template.js +1 -1
  19. package/generators/lib/templates/oracle-template.js +1 -1
  20. package/generators/lib/templates/postgres-template.js +1 -1
  21. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  22. package/generators/lib/templates/sqlite-template.js +1 -1
  23. package/integrity-manifest.json +18 -18
  24. package/node_modules/readdir-glob/node_modules/brace-expansion/index.js +1 -1
  25. package/node_modules/readdir-glob/node_modules/brace-expansion/package.json +1 -1
  26. package/package.json +1 -1
  27. package/scripts/verify-integrity.js +1 -1
  28. package/server.js +1 -1
  29. package/src/components/handlers/adjust_handler.js +1 -1
  30. package/src/components/handlers/audit_handler.js +1 -1
  31. package/src/components/handlers/delete_handler.js +1 -1
  32. package/src/components/handlers/export_handler.js +1 -1
  33. package/src/components/handlers/import_handler.js +1 -1
  34. package/src/components/handlers/insert_handler.js +1 -1
  35. package/src/components/handlers/update_handler.js +1 -1
  36. package/src/components/handlers/upload_handler.js +1 -1
  37. package/src/components/handlers/workflow_handler.js +1 -1
  38. package/src/components/integrations/webhook.js +1 -1
  39. package/src/consumers/baseConsumer.js +1 -1
  40. package/src/consumers/declarativeMapper.js +1 -1
  41. package/src/consumers/handlers/apiHandler.js +1 -1
  42. package/src/consumers/handlers/consoleHandler.js +1 -1
  43. package/src/consumers/handlers/databaseHandler.js +1 -1
  44. package/src/consumers/handlers/index.js +1 -1
  45. package/src/consumers/handlers/kafkaHandler.js +1 -1
  46. package/src/consumers/index.js +1 -1
  47. package/src/consumers/messageTransformer.js +1 -1
  48. package/src/consumers/validator.js +1 -1
  49. package/src/core/db/dialect/base-dialect.js +1 -1
  50. package/src/core/db/dialect/index.js +1 -1
  51. package/src/core/db/dialect/mysql-dialect.js +1 -1
  52. package/src/core/db/dialect/oracle-dialect.js +1 -1
  53. package/src/core/db/dialect/postgres-dialect.js +1 -1
  54. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  55. package/src/core/db/flatten-helper.js +1 -1
  56. package/src/core/db/query-builder-error.js +1 -1
  57. package/src/core/db/query-builder.js +1 -1
  58. package/src/core/db/relation-helper.js +1 -1
  59. package/src/core/handlers/delete_handler.js +1 -1
  60. package/src/core/handlers/insert_handler.js +1 -1
  61. package/src/core/handlers/update_handler.js +1 -1
  62. package/src/core/models/base-model.js +1 -1
  63. package/src/core/utils/cache-manager.js +1 -1
  64. package/src/core/utils/component-engine.js +1 -1
  65. package/src/core/utils/context-builder.js +1 -1
  66. package/src/core/utils/datetime-formatter.js +1 -1
  67. package/src/core/utils/datetime-parser.js +1 -1
  68. package/src/core/utils/db.js +1 -1
  69. package/src/core/utils/logger.js +1 -1
  70. package/src/core/utils/payload-loader.js +1 -1
  71. package/src/core/utils/security-checks.js +1 -1
  72. package/src/middleware/body-options.js +1 -1
  73. package/src/middleware/cors.js +1 -1
  74. package/src/middleware/idempotency.js +1 -1
  75. package/src/middleware/rate-limiter.js +1 -1
  76. package/src/middleware/request-logger.js +1 -1
  77. package/src/middleware/security-headers.js +1 -1
  78. package/src/models/base-model-mysql.js +1 -1
  79. package/src/models/base-model-oracle.js +1 -1
  80. package/src/models/base-model-sqlite.js +1 -1
  81. package/src/models/base-model.js +1 -1
  82. package/src/pro/caching/redis-client.js +1 -1
  83. package/src/pro/caching/redis-helper.js +1 -1
  84. package/src/pro/consumers/baseConsumer.js +1 -1
  85. package/src/pro/consumers/declarativeMapper.js +1 -1
  86. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  87. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  88. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  89. package/src/pro/consumers/handlers/index.js +1 -1
  90. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  91. package/src/pro/consumers/index.js +1 -1
  92. package/src/pro/consumers/messageTransformer.js +1 -1
  93. package/src/pro/consumers/validator.js +1 -1
  94. package/src/pro/database/base-model-mysql.js +1 -1
  95. package/src/pro/database/base-model-oracle.js +1 -1
  96. package/src/pro/database/base-model-sqlite.js +1 -1
  97. package/src/pro/database/db-mysql.js +1 -1
  98. package/src/pro/database/db-oracle.js +1 -1
  99. package/src/pro/database/db-sqlite.js +1 -1
  100. package/src/pro/excel/excel-generator.js +1 -1
  101. package/src/pro/excel/excel-parser.js +1 -1
  102. package/src/pro/excel/export-service.js +1 -1
  103. package/src/pro/excel/export_handler.js +1 -1
  104. package/src/pro/excel/import-service.js +1 -1
  105. package/src/pro/excel/import-validator.js +1 -1
  106. package/src/pro/excel/import_handler.js +1 -1
  107. package/src/pro/excel/upsert-builder.js +1 -1
  108. package/src/pro/idgen/idgen-routes.js +1 -1
  109. package/src/pro/integrations/lookup-resolver.js +1 -1
  110. package/src/pro/integrations/upload-handler-v2.js +1 -1
  111. package/src/pro/integrations/upload-handler.js +1 -1
  112. package/src/pro/integrations/webhook.js +1 -1
  113. package/src/pro/locking/lock-routes.js +1 -1
  114. package/src/pro/locking/resource-lock-manager.js +1 -1
  115. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  116. package/src/pro/messaging/kafkaService.js +1 -1
  117. package/src/pro/messaging/messagehubService.js +1 -1
  118. package/src/pro/messaging/rabbitmqService.js +1 -1
  119. package/src/pro/scheduler/job-manager.js +1 -1
  120. package/src/pro/scheduler/job-routes.js +1 -1
  121. package/src/pro/scheduler/job-validator.js +1 -1
  122. package/src/pro/storage/base-storage-provider.js +1 -1
  123. package/src/pro/storage/file-metadata-helper.js +1 -1
  124. package/src/pro/storage/index.js +1 -1
  125. package/src/pro/storage/local-storage-provider.js +1 -1
  126. package/src/pro/storage/s3-storage-provider.js +1 -1
  127. package/src/pro/storage/upload-cleanup-job.js +1 -1
  128. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  129. package/src/pro/storage/upload-pending-tracker.js +1 -1
  130. package/src/pro/websocket/broadcast-helper.js +1 -1
  131. package/src/pro/websocket/index.js +1 -1
  132. package/src/pro/websocket/livesync-server.js +1 -1
  133. package/src/pro/websocket/ws-broadcaster.js +1 -1
  134. package/src/services/export-service.js +1 -1
  135. package/src/services/import-service.js +1 -1
  136. package/src/services/kafkaConsumerService.js +1 -1
  137. package/src/services/kafkaService.js +1 -1
  138. package/src/services/messagehubService.js +1 -1
  139. package/src/services/rabbitmqService.js +1 -1
  140. package/src/utils/cache-invalidation-registry.js +1 -1
  141. package/src/utils/cache-manager.js +1 -1
  142. package/src/utils/component-engine.js +1 -1
  143. package/src/utils/config-extractor.js +1 -1
  144. package/src/utils/consumerLogger.js +1 -1
  145. package/src/utils/context-builder.js +1 -1
  146. package/src/utils/dashboard-helpers.js +1 -1
  147. package/src/utils/dateHelper.js +1 -1
  148. package/src/utils/datetime-formatter.js +1 -1
  149. package/src/utils/datetime-parser.js +1 -1
  150. package/src/utils/db-bootstrap.js +1 -1
  151. package/src/utils/db-mysql.js +1 -1
  152. package/src/utils/db-oracle.js +1 -1
  153. package/src/utils/db-sqlite.js +1 -1
  154. package/src/utils/db.js +1 -1
  155. package/src/utils/demo-generator.js +1 -1
  156. package/src/utils/excel-generator.js +1 -1
  157. package/src/utils/excel-parser.js +1 -1
  158. package/src/utils/file-watcher.js +1 -1
  159. package/src/utils/id-generator.js +1 -1
  160. package/src/utils/idempotency-manager.js +1 -1
  161. package/src/utils/import-validator.js +1 -1
  162. package/src/utils/license-client.js +1 -1
  163. package/src/utils/lock-manager.js +1 -1
  164. package/src/utils/logger.js +1 -1
  165. package/src/utils/lookup-resolver.js +1 -1
  166. package/src/utils/payload-loader.js +1 -1
  167. package/src/utils/processor-response.js +1 -1
  168. package/src/utils/rabbitmq.js +1 -1
  169. package/src/utils/redis-client.js +1 -1
  170. package/src/utils/redis-helper.js +1 -1
  171. package/src/utils/request-scope.js +1 -1
  172. package/src/utils/security-checks.js +1 -1
  173. package/src/utils/service-resolver.js +1 -1
  174. package/src/utils/shutdown-coordinator.js +1 -1
  175. package/src/utils/trusted-keys.js +1 -1
  176. package/src/utils/upload-handler.js +1 -1
  177. package/src/utils/upsert-builder.js +1 -1
  178. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0xcbe902=a0_0x1f56;(function(_0x4f7f39,_0x498277){const _0x309ffe=a0_0x1f56,_0xefbf10=_0x4f7f39();while(!![]){try{const _0x490dd9=-parseInt(_0x309ffe(0xd8))/0x1+-parseInt(_0x309ffe(0x12d))/0x2*(-parseInt(_0x309ffe(0xf5))/0x3)+parseInt(_0x309ffe(0x11c))/0x4*(parseInt(_0x309ffe(0x123))/0x5)+-parseInt(_0x309ffe(0xd1))/0x6+-parseInt(_0x309ffe(0x130))/0x7*(parseInt(_0x309ffe(0xf2))/0x8)+parseInt(_0x309ffe(0x136))/0x9*(-parseInt(_0x309ffe(0x134))/0xa)+parseInt(_0x309ffe(0x114))/0xb*(parseInt(_0x309ffe(0xe8))/0xc);if(_0x490dd9===_0x498277)break;else _0xefbf10['push'](_0xefbf10['shift']());}catch(_0x15230b){_0xefbf10['push'](_0xefbf10['shift']());}}}(a0_0x22df,0x690d0));const oracledb=require(a0_0xcbe902(0x127)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0xcbe902(0xe2));function a0_0x22df(){const _0x5c87d0=['t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','BwvZC2fNzq','u0Lhsu5u','BgfZDfjVD2LK','mZuZoti5mKj6C3jsva','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','D2DgBLe','Cg9VBa','rxjYB3iGCM9SBgLUzYbIywnRie9YywnSzsb0CMfUC2fJDgLVBJOG','mNW0Fdn8mhWX','mZe1nw9tte9REq','C3fS','qwn0AxzL','zMv0y2HbC0j1zMzLCG','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','Aw5PDgLHBgL6zvbVB2W','y29TBwL0','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5Nie9YywnSzsbJB25Uzwn0Aw9UihbVB2WUlI4','CM93C0fMzMvJDgvK','lI9SB2DNzxi','Cg9VBe1PBG','C3v1BMe','B3jHy2XLx3bVB2XFy3jLyxrPBMC','wgDHqwi','Cg9VBe1HEa','mtjwAe5QDhe','zLPnthu','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','zxHLy3v0zq','BxmSia','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJCMvHDgvKihn1y2nLC3nMDwXSEq','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','q3LrCxy','yK10DwO','DgvZDenVBM5Ly3rPB24','ogHlBNHSDa','z2v0q29UBMvJDgLVBG','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','mteYnda0ow9JEg9sDa','zxHLy3v0zvf1zxj5','vg5MBfi','u0vmrunuifnzu0rbveuGyxmGy3vYCMvUDf9KyxrLlcbvu0vsigfZign1CNjLBNrFDxnLCIbguK9niervquW','Cg9VBeLUy3jLBwvUDa','r1rHDve','rxjYB3iGy2XVC2LUzYb0zxn0ignVBM5Ly3rPB246ia','rejFue9sva','ihf1zxjPzxmP','EwTLwNG','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDwnJzxnZ','t1vux0zpuK1bvf9pqKPfq1q','rejFtKfnrq','BgvUz3rO','B3jHy2XLx2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','zxHLy3v0zvrYyw5Zywn0Aw9U','AKnVDeO','q2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','y2XVC2vqB29S','r3nJBfK','tfbmqKK','B3jHy2XLx2nVBM5Ly3rPB25FC3rYAw5N','u0Lhvevstq','sfrIBMi','rejFueftu1DpuKq','Axrhzvi','zw52','CM9SBgjHy2S','rejFse9tva','sgL2DMe','y2XVC2u','nJeXoteYneLdr293zG','B1DJuha','B3jHy2XLx3nODxrKB3DU','CM93CW','zxHPDa','Cg9VBefSAwfZ','qKXpqG','DhjHBNnHy3rPB25FzxjYB3i','nhzdqxvKsa','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','B3jHy2XL','vNvTq1O','zgvIDwC','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','zxjYB3joDw0','mtyZmtaZnvHUEvrVEG','C3rHCNq','t3jHy2XLifnrtcbfCNjVCJOG','y29UzMLN','B3jHy2XLzgi','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','CM9SBgjHy2TFzxjYB3i','quXurviGu0vtu0LptIbtrvqGtKXtx0rbvevFrK9stufuid0Gj1LzwvKTtu0TreqN','z1vOAKC','wLHeruO','ngDlBe1wyq','ChvZAa','mtuYmq','mtG4nde4m2rtu0f0vW','wg9Izu8','qxnmvhy','Aw5MBW','mteZmtiXmgDgDwnkrG','B3jHy2XLx3rLC3rFy29UBMvJDgLVBL9JBg9Zzv9LCNjVCG','mJDHCenxtfa','Bg9JywXOB3n0','tKnmt0i','B3jHy2XLx3bVB2XFy2XVC2LUzW','A3zyzfC','qxLPs2C','tu5LD28'];a0_0x22df=function(){return _0x5c87d0;};return a0_0x22df();}oracledb['fetchAsString']=[oracledb['CLOB'],oracledb[a0_0xcbe902(0x138)]],oracledb[a0_0xcbe902(0xdb)]=[oracledb['BLOB']];async function ensureNlsReady(_0x543083){const _0x11c923=a0_0xcbe902,_0x181666={'OJeTT':_0x11c923(0xd7)},_0x2bd068=_0x181666['OJeTT']['split']('|');let _0x4e1c07=0x0;while(!![]){switch(_0x2bd068[_0x4e1c07++]){case'0':await _0x543083[_0x11c923(0xeb)](_0x11c923(0xee));continue;case'1':_0x543083['_nlsReady']=!![];continue;case'2':if(_0x543083['_nlsReady'])return;continue;case'3':await _0x543083['execute'](_0x11c923(0xd3));continue;case'4':await _0x543083['execute'](_0x11c923(0x12a));continue;}break;}}class OracleDatabase{constructor(){const _0x5d086d=a0_0xcbe902,_0x289868={'GsclY':function(_0x175654,_0x53d1c5){return _0x175654(_0x53d1c5);},'itGeR':function(_0x5527b2,_0x49ee24){return _0x5527b2(_0x49ee24);},'JJYOV':function(_0xe9d7ce,_0x2bc823){return _0xe9d7ce(_0x2bc823);},'kvXdW':_0x5d086d(0x12f)};this[_0x5d086d(0xd5)]=null,this[_0x5d086d(0x126)]={'user':process[_0x5d086d(0x10f)]['DB_USER']||'hr','password':process[_0x5d086d(0x10f)][_0x5d086d(0x10d)]||'hr','connectString':this[_0x5d086d(0xea)](),'poolMin':_0x289868[_0x5d086d(0x108)](parseInt,process['env']['DB_POOL_MIN'])||0x2,'poolMax':_0x289868[_0x5d086d(0x10e)](parseInt,process[_0x5d086d(0x10f)]['DB_POOL_MAX'])||0xa,'poolIncrement':_0x289868[_0x5d086d(0x10e)](parseInt,process[_0x5d086d(0x10f)]['DB_POOL_INCREMENT'])||0x1,'poolTimeout':_0x289868[_0x5d086d(0x108)](parseInt,process[_0x5d086d(0x10f)]['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb['CLOB'],oracledb[_0x5d086d(0x138)]],'fetchAsBuffer':[oracledb[_0x5d086d(0x11a)]]},_0x289868['JJYOV'](logDatabaseConfig,{'host':process[_0x5d086d(0x10f)][_0x5d086d(0x111)]||_0x5d086d(0x137),'port':process['env'][_0x5d086d(0xfc)]||_0x289868[_0x5d086d(0x13a)],'database':process['env'][_0x5d086d(0x101)]||'XE','type':_0x5d086d(0x11e),'user':this[_0x5d086d(0x126)]['user'],'poolMin':this[_0x5d086d(0x126)][_0x5d086d(0xe3)],'poolMax':this[_0x5d086d(0x126)][_0x5d086d(0xe7)]});}[a0_0xcbe902(0xea)](){const _0x2411ed=a0_0xcbe902,_0x20cf42={'XobeO':'localhost'},_0x3b46e1=process['env']['DB_HOST']||_0x20cf42[_0x2411ed(0x131)],_0x4f32c5=process[_0x2411ed(0x10f)]['DB_PORT']||'1521',_0x19b520=process[_0x2411ed(0x10f)]['DB_NAME']||'XE',_0x25f4e2='//'+_0x3b46e1+':'+_0x4f32c5+'/'+_0x19b520;return logger['debug']({'event':_0x2411ed(0x10a),'connectionString':_0x25f4e2},'Oracle\x20Connection\x20String:\x20'+_0x25f4e2),_0x25f4e2;}async[a0_0xcbe902(0xde)](){const _0x3bbdc8=a0_0xcbe902,_0x1d8e81={'HTbnb':'Oracle\x20connection\x20pool\x20sudah\x20ada','Hivva':_0x3bbdc8(0xe5),'jCotJ':'oracle_pool_created','LPLBI':_0x3bbdc8(0xed)};try{if(this['pool']){logger[_0x3bbdc8(0x120)]({'event':'oracle_pool_exists'},_0x1d8e81[_0x3bbdc8(0x10c)]);return;}logger['info']({'event':_0x1d8e81[_0x3bbdc8(0x112)]},'Creating\x20Oracle\x20connection\x20pool...'),this['pool']=await oracledb['createPool'](this[_0x3bbdc8(0x126)]),logger['info']({'event':_0x1d8e81[_0x3bbdc8(0x105)]},_0x1d8e81[_0x3bbdc8(0x109)]),await this[_0x3bbdc8(0xf1)]();}catch(_0x29e830){logError(_0x29e830,{'event':'oracle_pool_error'},_0x3bbdc8(0x121)+_0x29e830['message']);throw _0x29e830;}}async[a0_0xcbe902(0xf1)](){const _0x413638=a0_0xcbe902,_0x3a90f4={'JOAQO':_0x413638(0xf8),'suuna':_0x413638(0xff),'fZMLu':function(_0x1546a1,_0x2241a9,_0x56f9ef,_0x1aeb48){return _0x1546a1(_0x2241a9,_0x56f9ef,_0x1aeb48);},'XKWOP':_0x413638(0xdd)};let _0x29b24f;try{logger[_0x413638(0x120)]({'event':'oracle_connection_test_start'},'Testing\x20Oracle\x20database\x20connection...'),_0x29b24f=await this[_0x413638(0xd5)][_0x413638(0xf3)](),await ensureNlsReady(_0x29b24f);const _0x13ec7f=await _0x29b24f['execute'](_0x3a90f4['JOAQO']);logger[_0x413638(0x133)]({'event':_0x3a90f4[_0x413638(0xe4)],'currentDate':_0x13ec7f['rows'][0x0][0x0],'currentUser':_0x13ec7f[_0x413638(0x117)][0x0][0x1]},_0x413638(0xf4)+_0x13ec7f[_0x413638(0x117)][0x0][0x1]);}catch(_0x53d3bc){_0x3a90f4[_0x413638(0xe9)](logError,_0x53d3bc,{'event':_0x3a90f4['XKWOP']},_0x413638(0x128)+_0x53d3bc['message']);throw _0x53d3bc;}finally{if(_0x29b24f)try{await _0x29b24f['close']();}catch(_0x4b6c78){_0x3a90f4[_0x413638(0xe9)](logError,_0x4b6c78,{'event':_0x413638(0x135)},_0x413638(0xfb)+_0x4b6c78['message']);}}}async[a0_0xcbe902(0xf6)](_0x2ab63d,_0x28fafd=[],_0x35aef4={}){const _0x3e1079=a0_0xcbe902,_0x4c8b2d={'nspGz':function(_0x986a23){return _0x986a23();},'AyiKg':function(_0x1ffffa,_0x1dcc2b,_0x4645ca,_0x3f2566){return _0x1ffffa(_0x1dcc2b,_0x4645ca,_0x3f2566);},'wgFnQ':'oracle','BKcJA':function(_0x3bcd5e,_0x20fe63,_0x5b8c4a,_0x4fa62b){return _0x3bcd5e(_0x20fe63,_0x5b8c4a,_0x4fa62b);}};let _0x6326ea;const _0xbfa2c=startQueryTimer();try{!this[_0x3e1079(0xd5)]&&await this[_0x3e1079(0xde)]();_0x6326ea=await this[_0x3e1079(0xd5)][_0x3e1079(0xf3)](),await ensureNlsReady(_0x6326ea);const _0x58d8d0={'outFormat':oracledb[_0x3e1079(0x100)],'autoCommit':_0x35aef4['autoCommit']!==undefined?_0x35aef4['autoCommit']:!![],..._0x35aef4},_0x376bcb=await _0x6326ea['execute'](_0x2ab63d,_0x28fafd,_0x58d8d0),_0x472153=_0x4c8b2d['nspGz'](_0xbfa2c),_0x5052c2=_0x376bcb['rows']?_0x376bcb[_0x3e1079(0x117)][_0x3e1079(0x102)]:_0x376bcb[_0x3e1079(0xe1)];return _0x4c8b2d[_0x3e1079(0x13b)](logQuery,_0x2ab63d,_0x28fafd,{'duration':_0x472153,'rowsAffected':_0x5052c2,'dbType':_0x4c8b2d['wgFnQ']}),_0x376bcb[_0x3e1079(0x117)]?_0x376bcb['rows']:{'rowsAffected':_0x376bcb['rowsAffected'],'lastRowid':_0x376bcb[_0x3e1079(0xd0)]};}catch(_0x241902){const _0x9e631c=_0xbfa2c();_0x4c8b2d['BKcJA'](logError,_0x241902,{'event':'sql_error','query':_0x2ab63d['substring'](0x0,0x1f4),'paramCount':_0x28fafd['length'],'durationMs':_0x9e631c,'code':_0x241902[_0x3e1079(0x122)],'dbType':_0x4c8b2d[_0x3e1079(0xd4)]},_0x3e1079(0x125)+_0x241902[_0x3e1079(0x13e)]);throw _0x241902;}finally{if(_0x6326ea)try{await _0x6326ea['close']();}catch(_0x4bafed){logError(_0x4bafed,{'event':_0x3e1079(0x103)},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x4bafed['message']);}}}async[a0_0xcbe902(0x104)](_0x229441){const _0x18b0c5=a0_0xcbe902,_0x1379b2={'FbHmx':function(_0x38eb04){return _0x38eb04();},'MNewo':function(_0x53ff61,_0x56a9ae,_0x2691c1){return _0x53ff61(_0x56a9ae,_0x2691c1);},'XgaAb':_0x18b0c5(0x124),'TnflR':function(_0x128dc4,_0x511f72,_0xad554a,_0x152907){return _0x128dc4(_0x511f72,_0xad554a,_0x152907);},'PCGRH':function(_0x57336c){return _0x57336c();},'AsLTv':'transaction_complete','VumCZ':function(_0x57c09f){return _0x57c09f();},'GTauQ':function(_0x2c400e,_0x24ae8e,_0x60d306){return _0x2c400e(_0x24ae8e,_0x60d306);},'CyQqv':_0x18b0c5(0x110),'pLCUt':_0x18b0c5(0x129),'gUhjG':_0x18b0c5(0xd2)};let _0x2faf90;const _0x538176=_0x1379b2['FbHmx'](startQueryTimer);try{!this['pool']&&await this[_0x18b0c5(0xde)]();_0x2faf90=await this[_0x18b0c5(0xd5)]['getConnection'](),await ensureNlsReady(_0x2faf90),_0x1379b2[_0x18b0c5(0x13c)](logTransaction,_0x1379b2[_0x18b0c5(0xe6)],_0x229441[_0x18b0c5(0x102)]);const _0x14b1a3=[];for(const _0x33617b of _0x229441){const _0x56687b=startQueryTimer(),_0x351738=await _0x2faf90[_0x18b0c5(0xeb)](_0x33617b[_0x18b0c5(0xd9)],_0x33617b['params']||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x2b7708=_0x56687b(),_0x26290a=_0x351738[_0x18b0c5(0x117)]?_0x351738[_0x18b0c5(0x117)][_0x18b0c5(0x102)]:_0x351738[_0x18b0c5(0xe1)];_0x1379b2['TnflR'](logQuery,_0x33617b['sql'],_0x33617b['params']||[],{'duration':_0x2b7708,'rowsAffected':_0x26290a,'dbType':_0x18b0c5(0x11e)}),_0x14b1a3[_0x18b0c5(0x12e)](_0x351738);}await _0x2faf90['commit']();const _0x4855eb=_0x1379b2['PCGRH'](_0x538176);return _0x1379b2[_0x18b0c5(0x13c)](logTransaction,_0x18b0c5(0xdf),_0x229441[_0x18b0c5(0x102)]),logger['info']({'event':_0x1379b2[_0x18b0c5(0x132)],'queryCount':_0x229441[_0x18b0c5(0x102)],'totalDurationMs':_0x4855eb,'dbType':'oracle'},'Oracle\x20transaction\x20committed\x20('+_0x4855eb+_0x18b0c5(0xec)+_0x229441['length']+_0x18b0c5(0xfd)),_0x14b1a3;}catch(_0x3cee4e){const _0x435cae=_0x1379b2[_0x18b0c5(0x11f)](_0x538176);_0x1379b2['TnflR'](logError,_0x3cee4e,{'event':_0x18b0c5(0x11b),'queryCount':_0x229441['length'],'totalDurationMs':_0x435cae,'code':_0x3cee4e['errorNum'],'dbType':'oracle'},_0x18b0c5(0x13d)+_0x3cee4e[_0x18b0c5(0x13e)]);if(_0x2faf90)try{await _0x2faf90['rollback'](),_0x1379b2[_0x18b0c5(0xfa)](logTransaction,_0x1379b2[_0x18b0c5(0xef)],_0x229441['length']);}catch(_0x2d6fb8){_0x1379b2[_0x18b0c5(0xf7)](logError,_0x2d6fb8,{'event':_0x1379b2['pLCUt'],'dbType':'oracle'},_0x18b0c5(0xd6)+_0x2d6fb8[_0x18b0c5(0x13e)]);}throw _0x3cee4e;}finally{if(_0x2faf90)try{await _0x2faf90[_0x18b0c5(0x113)]();}catch(_0x1e08eb){_0x1379b2['TnflR'](logError,_0x1e08eb,{'event':_0x1379b2[_0x18b0c5(0x12b)]},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x1e08eb[_0x18b0c5(0x13e)]);}}}async[a0_0xcbe902(0x107)](){const _0x536fc1=a0_0xcbe902,_0x2d7c9={'DzTGy':_0x536fc1(0x139),'ykeZx':_0x536fc1(0x106),'YvvPz':'oracle_pool_closed','NVVeb':'Oracle\x20connection\x20pool\x20closed'};try{this[_0x536fc1(0xd5)]&&(logger[_0x536fc1(0x133)]({'event':_0x2d7c9['DzTGy']},_0x2d7c9[_0x536fc1(0xfe)]),await this[_0x536fc1(0xd5)][_0x536fc1(0x113)](0xa),this[_0x536fc1(0xd5)]=null,logger[_0x536fc1(0x133)]({'event':_0x2d7c9['YvvPz']},_0x2d7c9['NVVeb']));}catch(_0x3639e1){logError(_0x3639e1,{'event':'oracle_pool_close_error'},'Error\x20closing\x20Oracle\x20connection\x20pool:\x20'+_0x3639e1['message']);throw _0x3639e1;}}['getPoolStatistics'](){const _0x3497c9=a0_0xcbe902,_0x3788ff={'bMtuj':_0x3497c9(0xda)};if(!this['pool'])return{'status':'Pool\x20not\x20initialized'};return{'connectionsInUse':this['pool']['connectionsInUse'],'connectionsOpen':this[_0x3497c9(0xd5)]['connectionsOpen'],'poolAlias':this['pool'][_0x3497c9(0x119)],'poolMin':this['pool']['poolMin'],'poolMax':this['pool']['poolMax'],'poolIncrement':this['pool'][_0x3497c9(0xf9)],'poolTimeout':this['pool']['poolTimeout'],'status':_0x3788ff[_0x3497c9(0xf0)]};}}const oracleDb=new OracleDatabase();function a0_0x1f56(_0x180d18,_0x4a8491){_0x180d18=_0x180d18-0xd0;const _0x22dfc7=a0_0x22df();let _0x1f56f3=_0x22dfc7[_0x180d18];if(a0_0x1f56['raqjKN']===undefined){var _0x4467fc=function(_0xee21df){const _0x4a9158='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x17adf4='',_0x1b4f8c='';for(let _0x3e8a26=0x0,_0xec941d,_0x5d2425,_0x22f1c9=0x0;_0x5d2425=_0xee21df['charAt'](_0x22f1c9++);~_0x5d2425&&(_0xec941d=_0x3e8a26%0x4?_0xec941d*0x40+_0x5d2425:_0x5d2425,_0x3e8a26++%0x4)?_0x17adf4+=String['fromCharCode'](0xff&_0xec941d>>(-0x2*_0x3e8a26&0x6)):0x0){_0x5d2425=_0x4a9158['indexOf'](_0x5d2425);}for(let _0x3f6a40=0x0,_0x200bd9=_0x17adf4['length'];_0x3f6a40<_0x200bd9;_0x3f6a40++){_0x1b4f8c+='%'+('00'+_0x17adf4['charCodeAt'](_0x3f6a40)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b4f8c);};a0_0x1f56['qwuyzS']=_0x4467fc,a0_0x1f56['gAJZoN']={},a0_0x1f56['raqjKN']=!![];}const _0x63c2bc=_0x22dfc7[0x0],_0x5037b7=_0x180d18+_0x63c2bc,_0x460550=a0_0x1f56['gAJZoN'][_0x5037b7];return!_0x460550?(_0x1f56f3=a0_0x1f56['qwuyzS'](_0x1f56f3),a0_0x1f56['gAJZoN'][_0x5037b7]=_0x1f56f3):_0x1f56f3=_0x460550,_0x1f56f3;}process['on'](a0_0xcbe902(0x13f),async()=>{const _0x26d507=a0_0xcbe902,_0x30055b={'oWcPp':'SIGINT','YfLmt':_0x26d507(0xe0),'LxlIq':'oracle_shutdown_error'};logger[_0x26d507(0x133)]({'event':_0x26d507(0x116),'signal':_0x30055b[_0x26d507(0x115)]},_0x30055b['YfLmt']);try{await oracleDb['closePool'](),process[_0x26d507(0x118)](0x0);}catch(_0x3682e8){logError(_0x3682e8,{'event':_0x30055b['LxlIq'],'signal':'SIGINT'},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x3682e8[_0x26d507(0x13e)]),process[_0x26d507(0x118)](0x1);}}),process['on']('SIGTERM',async()=>{const _0x566bde=a0_0xcbe902,_0x4bcaed={'ZXDEJ':_0x566bde(0x116)};logger[_0x566bde(0x133)]({'event':_0x4bcaed[_0x566bde(0x12c)],'signal':_0x566bde(0x10b)},_0x566bde(0xdc));try{await oracleDb['closePool'](),process[_0x566bde(0x118)](0x0);}catch(_0x1da80b){logError(_0x1da80b,{'event':_0x566bde(0x11d),'signal':'SIGTERM'},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x1da80b['message']),process[_0x566bde(0x118)](0x1);}}),module['exports']=oracleDb;
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 +1 @@
1
- const a0_0x45dd27=a0_0x2731;(function(_0x5aef5e,_0x524395){const _0x2aeea6=a0_0x2731,_0x5eef17=_0x5aef5e();while(!![]){try{const _0x4599ab=parseInt(_0x2aeea6(0x21a))/0x1+-parseInt(_0x2aeea6(0x1f9))/0x2*(parseInt(_0x2aeea6(0x20c))/0x3)+-parseInt(_0x2aeea6(0x233))/0x4+-parseInt(_0x2aeea6(0x22c))/0x5*(-parseInt(_0x2aeea6(0x22a))/0x6)+parseInt(_0x2aeea6(0x20d))/0x7*(-parseInt(_0x2aeea6(0x226))/0x8)+parseInt(_0x2aeea6(0x214))/0x9*(parseInt(_0x2aeea6(0x22d))/0xa)+-parseInt(_0x2aeea6(0x1fc))/0xb*(-parseInt(_0x2aeea6(0x220))/0xc);if(_0x4599ab===_0x524395)break;else _0x5eef17['push'](_0x5eef17['shift']());}catch(_0x49227c){_0x5eef17['push'](_0x5eef17['shift']());}}}(a0_0x2994,0xb202a));function a0_0x2731(_0x29f586,_0x3270c3){_0x29f586=_0x29f586-0x1ee;const _0x29949e=a0_0x2994();let _0x27310a=_0x29949e[_0x29f586];if(a0_0x2731['mzutsw']===undefined){var _0x353225=function(_0xa55ec5){const _0x291c76='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4a1238='',_0x47b04e='';for(let _0x315c50=0x0,_0x40150a,_0x7611ee,_0x5e1973=0x0;_0x7611ee=_0xa55ec5['charAt'](_0x5e1973++);~_0x7611ee&&(_0x40150a=_0x315c50%0x4?_0x40150a*0x40+_0x7611ee:_0x7611ee,_0x315c50++%0x4)?_0x4a1238+=String['fromCharCode'](0xff&_0x40150a>>(-0x2*_0x315c50&0x6)):0x0){_0x7611ee=_0x291c76['indexOf'](_0x7611ee);}for(let _0x3e63b1=0x0,_0x2219cf=_0x4a1238['length'];_0x3e63b1<_0x2219cf;_0x3e63b1++){_0x47b04e+='%'+('00'+_0x4a1238['charCodeAt'](_0x3e63b1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x47b04e);};a0_0x2731['rxMitS']=_0x353225,a0_0x2731['DZDcHy']={},a0_0x2731['mzutsw']=!![];}const _0x40ef9c=_0x29949e[0x0],_0x9a4e0f=_0x29f586+_0x40ef9c,_0x56e5a2=a0_0x2731['DZDcHy'][_0x9a4e0f];return!_0x56e5a2?(_0x27310a=a0_0x2731['rxMitS'](_0x27310a),a0_0x2731['DZDcHy'][_0x9a4e0f]=_0x27310a):_0x27310a=_0x56e5a2,_0x27310a;}const Database=require('better-sqlite3'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x45dd27(0x200));class SqliteDatabase{constructor(){const _0x54da64=a0_0x45dd27,_0x27f904={'JXOAO':_0x54da64(0x21e),'rNfZq':function(_0x3432fc,_0x3fb672){return _0x3432fc(_0x3fb672);}};this['db']=null,this['dbPath']=process['env']['DB_NAME']||_0x27f904['JXOAO'],this['busyTimeout']=parseInt(process[_0x54da64(0x21b)][_0x54da64(0x1ff)]||'5000'),_0x27f904['rNfZq'](logDatabaseConfig,{'database':this['dbPath'],'type':'sqlite','busyTimeout':this[_0x54da64(0x204)]});}[a0_0x45dd27(0x20b)](){const _0x53d24f=a0_0x45dd27,_0x31eca7={'zYYwv':_0x53d24f(0x22b),'CjDbt':_0x53d24f(0x221),'XYmQQ':'SQLite\x20database\x20connection\x20sudah\x20ada','RkoIF':function(_0x33fc7f,_0x9b3a86,_0x1935fb,_0x6de46){return _0x33fc7f(_0x9b3a86,_0x1935fb,_0x6de46);},'gGOWS':'sqlite_init_error'};try{const _0x40c3aa=_0x53d24f(0x237)[_0x53d24f(0x213)]('|');let _0x556c25=0x0;while(!![]){switch(_0x40c3aa[_0x556c25++]){case'0':this['db'][_0x53d24f(0x230)](_0x31eca7['zYYwv']);continue;case'1':this['db'][_0x53d24f(0x230)](_0x31eca7['CjDbt']);continue;case'2':this['db']=new Database(this['dbPath'],{'timeout':this['busyTimeout']});continue;case'3':if(this['db']){logger['debug']({'event':'sqlite_db_exists'},_0x31eca7[_0x53d24f(0x1f8)]);return;}continue;case'4':this[_0x53d24f(0x1f1)]();continue;}break;}}catch(_0x2ce972){_0x31eca7['RkoIF'](logError,_0x2ce972,{'event':_0x31eca7['gGOWS']},'Error\x20saat\x20membuka\x20SQLite\x20database:\x20'+_0x2ce972['message']);throw _0x2ce972;}}['testConnection'](){const _0x47f552=a0_0x45dd27,_0x24d0cf={'XuJeS':_0x47f552(0x201),'vrOaG':_0x47f552(0x20e)};try{logger[_0x47f552(0x1ef)]({'event':_0x24d0cf[_0x47f552(0x22e)]},_0x47f552(0x20f)),this['db'][_0x47f552(0x1f5)](_0x47f552(0x224))['get']();}catch(_0x5222a9){logError(_0x5222a9,{'event':_0x24d0cf[_0x47f552(0x212)]},'SQLite\x20connection\x20test\x20gagal:\x20'+_0x5222a9['message']);throw _0x5222a9;}}async['executeQuery'](_0x457bb9,_0x1548e9=[]){const _0x7e56d7=a0_0x45dd27,_0x2e98f3={'BjsQr':function(_0x2dbd51,_0xc7fcd2,_0x5f35cd,_0x593c8f){return _0x2dbd51(_0xc7fcd2,_0x5f35cd,_0x593c8f);},'tOGZV':function(_0x1a7afb){return _0x1a7afb();},'NxCbS':function(_0x3761c7,_0x56906e,_0x476cf9,_0x19e307){return _0x3761c7(_0x56906e,_0x476cf9,_0x19e307);},'CNyeP':function(_0x52b017,_0x2f31c4,_0x59f412,_0x185316){return _0x52b017(_0x2f31c4,_0x59f412,_0x185316);},'cDvnE':'sqlite'},_0x4deff1=startQueryTimer();try{!this['db']&&this[_0x7e56d7(0x20b)]();const _0x27465d=this['db']['prepare'](_0x457bb9),_0x4942f9=/\bRETURNING\b/i['test'](_0x457bb9),_0x29c6cc=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x457bb9);let _0x38fc9f,_0x7c45d5;if(_0x29c6cc||_0x4942f9){const _0x5d1933=_0x27465d[_0x7e56d7(0x225)](..._0x1548e9),_0x3eabc3=_0x4deff1();return _0x2e98f3['BjsQr'](logQuery,_0x457bb9,_0x1548e9,{'duration':_0x3eabc3,'rowsAffected':_0x5d1933[_0x7e56d7(0x223)],'dbType':'sqlite'}),_0x5d1933;}else{const _0x4f2d52=_0x27465d['run'](..._0x1548e9),_0x2b1fa1=_0x2e98f3['tOGZV'](_0x4deff1);return _0x38fc9f={'rowsAffected':_0x4f2d52['changes'],'insertId':_0x4f2d52['lastInsertRowid']},_0x2e98f3[_0x7e56d7(0x205)](logQuery,_0x457bb9,_0x1548e9,{'duration':_0x2b1fa1,'rowsAffected':_0x4f2d52[_0x7e56d7(0x1fd)],'dbType':_0x7e56d7(0x21d)}),_0x38fc9f;}}catch(_0x2dd5d4){const _0x384486=_0x2e98f3[_0x7e56d7(0x219)](_0x4deff1);_0x2e98f3['CNyeP'](logError,_0x2dd5d4,{'event':_0x7e56d7(0x236),'query':_0x457bb9[_0x7e56d7(0x211)](0x0,0x1f4),'paramCount':_0x1548e9[_0x7e56d7(0x223)],'durationMs':_0x384486,'code':_0x2dd5d4['code'],'dbType':_0x2e98f3[_0x7e56d7(0x1fb)]},'SQLite\x20SQL\x20Error:\x20'+_0x2dd5d4[_0x7e56d7(0x216)]);throw _0x2dd5d4;}}async['executeTransaction'](_0x183362){const _0x58beb2=a0_0x45dd27,_0x62ff4b={'xDYFt':function(_0xab5760){return _0xab5760();},'tQrgA':function(_0x314ed3,_0x29e5e3,_0x4f6bd8,_0x5753ef){return _0x314ed3(_0x29e5e3,_0x4f6bd8,_0x5753ef);},'bSmcl':'sqlite','xMECb':function(_0x5f3912,_0x44fd73){return _0x5f3912(_0x44fd73);},'wpWgJ':function(_0x22a4f2,_0x106c6e,_0x371681){return _0x22a4f2(_0x106c6e,_0x371681);},'fGLOz':_0x58beb2(0x217),'TqarL':_0x58beb2(0x206),'ufJvZ':function(_0x549ebf){return _0x549ebf();},'edbUB':function(_0x36ee09,_0xde9421,_0x5313b0,_0x3c9d3c){return _0x36ee09(_0xde9421,_0x5313b0,_0x3c9d3c);}},_0x5199e1=_0x62ff4b['xDYFt'](startQueryTimer);try{!this['db']&&this['initializeDatabase']();logTransaction('start',_0x183362[_0x58beb2(0x223)]);const _0x42e4bf=this['db']['transaction'](_0x399d1d=>{const _0x53a220=_0x58beb2,_0x75f532=[];for(const _0xb445d9 of _0x399d1d){const _0x1068f3=_0x62ff4b[_0x53a220(0x208)](startQueryTimer),_0x5b5b57=_0xb445d9[_0x53a220(0x228)]||[],_0x3ab7b2=this['db'][_0x53a220(0x1f5)](_0xb445d9['sql']),_0x25fb4e=/\bRETURNING\b/i['test'](_0xb445d9['sql']),_0x48431a=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x53a220(0x1f0)](_0xb445d9[_0x53a220(0x1fe)]);if(_0x48431a||_0x25fb4e){const _0x5eeffb=_0x3ab7b2['all'](..._0x5b5b57),_0x341b8d=_0x1068f3();_0x62ff4b['tQrgA'](logQuery,_0xb445d9[_0x53a220(0x1fe)],_0x5b5b57,{'duration':_0x341b8d,'rowsAffected':_0x5eeffb['length'],'dbType':_0x53a220(0x21d)}),_0x75f532['push'](_0x5eeffb);}else{const _0x2b103a=_0x3ab7b2['run'](..._0x5b5b57),_0x3234f4=_0x1068f3();logQuery(_0xb445d9['sql'],_0x5b5b57,{'duration':_0x3234f4,'rowsAffected':_0x2b103a['changes'],'dbType':_0x62ff4b[_0x53a220(0x238)]}),_0x75f532[_0x53a220(0x234)]({'rowsAffected':_0x2b103a[_0x53a220(0x1fd)],'insertId':_0x2b103a[_0x53a220(0x1ee)]});}}return _0x75f532;}),_0x4aa1be=_0x62ff4b[_0x58beb2(0x203)](_0x42e4bf,_0x183362),_0x10ace0=_0x5199e1();return _0x62ff4b['wpWgJ'](logTransaction,_0x62ff4b['fGLOz'],_0x183362['length']),logger[_0x58beb2(0x222)]({'event':_0x62ff4b['TqarL'],'queryCount':_0x183362[_0x58beb2(0x223)],'totalDurationMs':_0x10ace0,'dbType':'sqlite'},'Transaction\x20committed\x20('+_0x10ace0+'ms,\x20'+_0x183362[_0x58beb2(0x223)]+_0x58beb2(0x231)),_0x4aa1be;}catch(_0x48abe5){const _0x476a5f=_0x62ff4b[_0x58beb2(0x1f2)](_0x5199e1);_0x62ff4b[_0x58beb2(0x1fa)](logTransaction,'rollback',_0x183362['length']),_0x62ff4b['edbUB'](logError,_0x48abe5,{'event':'transaction_error','queryCount':_0x183362[_0x58beb2(0x223)],'totalDurationMs':_0x476a5f,'code':_0x48abe5[_0x58beb2(0x20a)],'dbType':_0x62ff4b['bSmcl']},'Transaction\x20failed:\x20'+_0x48abe5['message']);throw _0x48abe5;}}['getPool'](){const _0x546f2f=a0_0x45dd27;return!this['db']&&this[_0x546f2f(0x20b)](),this['db'];}['closePool'](){const _0x1d1c03=a0_0x45dd27,_0x26a6a9={'DdeIK':'sqlite_closing','szPnu':'SQLite\x20database\x20connection\x20closed'};try{this['db']&&(logger[_0x1d1c03(0x222)]({'event':_0x26a6a9[_0x1d1c03(0x210)]},'Closing\x20SQLite\x20database\x20connection...'),this['db'][_0x1d1c03(0x21f)](),this['db']=null,logger[_0x1d1c03(0x222)]({'event':_0x1d1c03(0x1f3)},_0x26a6a9['szPnu']));}catch(_0x3fef39){logError(_0x3fef39,{'event':_0x1d1c03(0x1f4)},_0x1d1c03(0x202)+_0x3fef39['message']);throw _0x3fef39;}}async[a0_0x45dd27(0x235)](){const _0x4eaf76=a0_0x45dd27;try{return!this['db']&&this[_0x4eaf76(0x20b)](),this['db']['prepare']('SELECT\x201')['get'](),!![];}catch(_0x37f26e){return logError(_0x37f26e,{'event':_0x4eaf76(0x215)},'Error\x20checking\x20SQLite\x20connection:\x20'+_0x37f26e['message']),![];}}}const sqliteDb=new SqliteDatabase();process['on']('SIGINT',()=>{const _0x38eee1=a0_0x45dd27,_0x4e80f1={'FjqQp':'sqlite_shutdown','HDGoA':'SIGINT','rViQm':'Received\x20SIGINT,\x20closing\x20SQLite\x20database...','MlOQO':function(_0x318668,_0x558c8a,_0x57bf36,_0x1b1220){return _0x318668(_0x558c8a,_0x57bf36,_0x1b1220);}};logger['info']({'event':_0x4e80f1[_0x38eee1(0x229)],'signal':_0x4e80f1['HDGoA']},_0x4e80f1[_0x38eee1(0x1f7)]);try{sqliteDb[_0x38eee1(0x1f6)](),process['exit'](0x0);}catch(_0x6e3495){_0x4e80f1[_0x38eee1(0x218)](logError,_0x6e3495,{'event':_0x38eee1(0x207),'signal':_0x4e80f1['HDGoA']},_0x38eee1(0x209)+_0x6e3495[_0x38eee1(0x216)]),process['exit'](0x1);}}),process['on']('SIGTERM',()=>{const _0x25bf50=a0_0x45dd27,_0x13609a={'qqtzh':'sqlite_shutdown','xSavF':'SIGTERM','RWjFz':function(_0xa44207,_0x11adc8,_0x440499,_0x32ee22){return _0xa44207(_0x11adc8,_0x440499,_0x32ee22);},'mqVyp':_0x25bf50(0x207)};logger[_0x25bf50(0x222)]({'event':_0x13609a[_0x25bf50(0x21c)],'signal':_0x13609a[_0x25bf50(0x227)]},'Received\x20SIGTERM,\x20closing\x20SQLite\x20database...');try{sqliteDb[_0x25bf50(0x1f6)](),process[_0x25bf50(0x22f)](0x0);}catch(_0x12c00b){_0x13609a['RWjFz'](logError,_0x12c00b,{'event':_0x13609a[_0x25bf50(0x232)],'signal':_0x13609a['xSavF']},_0x25bf50(0x209)+_0x12c00b['message']),process['exit'](0x1);}}),module['exports']=sqliteDb;function a0_0x2994(){const _0x11f0e3=['rgrLsuS','C3vIC3rYAw5N','DNjpyuC','C3bSAxq','mta4ota5rxDdtKzH','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i','BwvZC2fNzq','y29TBwL0','twXpuu8','De9hwLy','mtm1nti3mNzLv0rWtq','zw52','Cxf0EMG','C3fSAxrL','lI9KyxrHl3jLC3rMB3jNzs5KyG','y2XVC2u','mtGZnNjrA1jIEG','AM91CM5HBf9TB2rLid0Gv0fm','Aw5MBW','BgvUz3rO','u0vmrunuideGyxmGDgvZDf9JB25Uzwn0Aw9U','ywXS','nZyWEuPeBMT6','EfnHDKy','CgfYyw1Z','rMPXuxa','mtu2z0nXt2zX','zM9YzwLNBL9RzxLZid0Gt04','mZiXotvqCxvUy2W','mJCWEKnIreTw','whvkzvm','zxHPDa','ChjHz21H','ihf1zxjPzxmP','BxfwExa','ndu2odiXnKvAwwLrAW','ChvZAa','y2HLy2TdB25Uzwn0Aw9U','C3fSx2vYCM9Y','m3WYFdf8mhW0','yLnTy2W','BgfZDeLUC2vYDfjVD2LK','zgvIDwC','DgvZDa','DgvZDenVBM5Ly3rPB24','DwzkDLO','C3fSAxrLx2nSB3nLza','C3fSAxrLx2nSB3nLx2vYCM9Y','ChjLCgfYzq','y2XVC2vqB29S','CLzPuw0','wfLTuve','mLfjBgn0rG','D3bxz0O','y0r2BKu','mte4nJy4Exfsyuro','y2HHBMDLCW','C3fS','rejFqLvtwv9usu1ft1vu','lI9SB2DNzxi','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','rxjYB3iGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2u6ia','Ee1fq2i','yNvZEvrPBwvVDxq','tNHdyLm','DhjHBNnHy3rPB25Fy29TCgXLDgu','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','EerzrNq','rxjYB3iGzhvYAw5NifnrtgL0zsbZAhv0zg93BJOG','y29Kzq','Aw5PDgLHBgL6zurHDgfIyxnL','mZa3nJa1ouX1D3D2wa','ndq0nJrNDxHrteW','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG'];a0_0x2994=function(){return _0x11f0e3;};return a0_0x2994();}
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 +1 @@
1
- function a0_0x35eb(){const _0x2a5ac2=['rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','DNPSAK0','z2v0uM93','AuHmA20','zM9UDa','C2Petu8','ExDlqwu','ywrKuM93CW','zM9YBwf0sgvHzgvY','ENrfwMC','sLjtEKu','A0PAvvG','yxbWBhLsB3DgB3jTyxr0Aw5N','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','y2vUDgvY','C3rYAw5N','zNjVEMvU','BwfW','tgXQu08','y29SDw1UCW','CgfKu3rHCNq','CMvWBgfJzq','mZeZnte2rg9fDu1S','DhLWzq','yxv0BW','u0HTDwy','BNvTyMvY','mZaYodK4yur5thzL','uhjVy2vZC2vKia','zgf0zq','AeHgsve','vgXxtee','z2v0vgLTzq','Ag1htKK','z2v0vvrdtw9UDgG','EgXZEa','BNvTrM10','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','zM9YrwfJAa','odq3mZy0s25QDLbn','sMXbre0','BgvUz3rO','ndi5ntG3mwjWqvrcyq','Bw9rCLK','uujRwu0','z2vUzxjHDgvtAw1WBgu','CM91BMq','B3vrDKW','rgf0yq','Aw5MBW','seDdD1i','CNrLzgC','EvH6qMW','y2vPBa','nZbTChzUvey','C29SAwq','ANr3zK0','Cgf0DgvYBG','y29TBwL0','vLb1qLe','z2v0vvrdrNvSBfLLyxi','DMfSDwu','iLjWiciJlcmJma','u0f2CMS','ndeZndCWmNLmAhHPAa','ChjLChjVy2vZC1rLEhrsB3C','ywXPz25Tzw50','CvnRwhO','BwjRrhu','v3rsrva','Dgv4Da','reqVtu0VwvLzwq','CgfYC2voDw1Izxi','y2H1BMTtAxPL','zxHJzwXFy2H1BMTFChjVy2vZC2vK','BwLKzgXL','zgqVBw0VExL5Eq','C3r5Bgu','yxbWBhLdzwXSrM9YBwf0DgLUzW','zxHWB3j0CW','zM9YBwf0rgf0zvn0CMLUzW','C3rYzwfTAw5N','AM9PBG','z2v0vvrdrgf0zq','ndbnDvDvC3y','z2vUzxjHDgu','DMfSAwrHDgvdB2X1Bw5Z','ywrKv29YA3nOzwv0','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','ExL5Es1TBs1Kza','zwnJu00','zMLSDgvY','A3LvChG','Aw5JBhvKzxm','zxHJzwXQCW','ELbxuK4','Dg9mB3DLCKnHC2u','z2v0rxHJzwXgB3jTyxq','zMLSBa','zgvIDwC','nZeXmZy0mgfKqKf4tW','A2v5CW','DefLD24','ndK4mJm2vg5ht1Hw','y3vHqvy','rKy0ndCYqZq','Bw0VzgqVExL5Eq','EwPzq2q','CgvYy2vUDgfNzq','u1P5uvO','sfjWBMC'];a0_0x35eb=function(){return _0x2a5ac2;};return a0_0x35eb();}function a0_0x21d2(_0x42e0ed,_0x4a1d78){_0x42e0ed=_0x42e0ed-0x1e4;const _0x35eb52=a0_0x35eb();let _0x21d26d=_0x35eb52[_0x42e0ed];if(a0_0x21d2['pUFBNj']===undefined){var _0x48afca=function(_0x4bfb54){const _0xde7192='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x339361='',_0x4c47c0='';for(let _0xc14dc8=0x0,_0x5cd8d3,_0x5f3dbb,_0x51544c=0x0;_0x5f3dbb=_0x4bfb54['charAt'](_0x51544c++);~_0x5f3dbb&&(_0x5cd8d3=_0xc14dc8%0x4?_0x5cd8d3*0x40+_0x5f3dbb:_0x5f3dbb,_0xc14dc8++%0x4)?_0x339361+=String['fromCharCode'](0xff&_0x5cd8d3>>(-0x2*_0xc14dc8&0x6)):0x0){_0x5f3dbb=_0xde7192['indexOf'](_0x5f3dbb);}for(let _0x40e96f=0x0,_0x1a2180=_0x339361['length'];_0x40e96f<_0x1a2180;_0x40e96f++){_0x4c47c0+='%'+('00'+_0x339361['charCodeAt'](_0x40e96f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4c47c0);};a0_0x21d2['NCCXDh']=_0x48afca,a0_0x21d2['MlGNSM']={},a0_0x21d2['pUFBNj']=!![];}const _0x577d28=_0x35eb52[0x0],_0x4bfbdd=_0x42e0ed+_0x577d28,_0x5b7012=a0_0x21d2['MlGNSM'][_0x4bfbdd];return!_0x5b7012?(_0x21d26d=a0_0x21d2['NCCXDh'](_0x21d26d),a0_0x21d2['MlGNSM'][_0x4bfbdd]=_0x21d26d):_0x21d26d=_0x5b7012,_0x21d26d;}const a0_0x5718f2=a0_0x21d2;(function(_0x204433,_0x3cd357){const _0x15a085=a0_0x21d2,_0x4ce03d=_0x204433();while(!![]){try{const _0x2b403c=-parseInt(_0x15a085(0x228))/0x1+-parseInt(_0x15a085(0x217))/0x2+-parseInt(_0x15a085(0x241))/0x3+-parseInt(_0x15a085(0x1f9))/0x4+parseInt(_0x15a085(0x1f6))/0x5+-parseInt(_0x15a085(0x21c))/0x6*(parseInt(_0x15a085(0x237))/0x7)+-parseInt(_0x15a085(0x1e6))/0x8*(-parseInt(_0x15a085(0x22b))/0x9);if(_0x2b403c===_0x3cd357)break;else _0x4ce03d['push'](_0x4ce03d['shift']());}catch(_0x5814cd){_0x4ce03d['push'](_0x4ce03d['shift']());}}}(a0_0x35eb,0xc2b8a));const ExcelJS=require(a0_0x5718f2(0x1f0)),{logger}=require('./logger');class ExcelGenerator{constructor(){const _0x5ba7e1=a0_0x5718f2,_0x13c1f4={'jtwfM':function(_0x59ed0e,_0x4163cd,_0x48ba0e){return _0x59ed0e(_0x4163cd,_0x48ba0e);}};this[_0x5ba7e1(0x24a)]=_0x13c1f4[_0x5ba7e1(0x239)](parseInt,process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async[a0_0x5718f2(0x1e7)](_0x2db05c){const _0x3f7d06=a0_0x5718f2,_0x1bab5f={'qSkXz':_0x3f7d06(0x219),'moQrY':'Excel\x20generation\x20started','QBkYM':function(_0x1e9131,_0x58eb7e){return _0x1e9131<=_0x58eb7e;}},{data:_0x356ed4,columns:_0x4ca4fb,columnFormats:_0x5d7eaa,fieldLabels:_0x49c3de,filePath:_0x4d09e5,onProgress:_0x20ca95}=_0x2db05c;logger[_0x3f7d06(0x232)]({'event':_0x3f7d06(0x1ea),'rows':_0x356ed4['length'],'columns':_0x4ca4fb?.['length']||_0x1bab5f[_0x3f7d06(0x244)],'columnFormats':_0x5d7eaa?Object['keys'](_0x5d7eaa):null,'fieldLabels':_0x49c3de?Object['keys'](_0x49c3de):null,'streaming':_0x356ed4[_0x3f7d06(0x22a)]>this['chunkSize']},_0x1bab5f[_0x3f7d06(0x22c)]);if(_0x1bab5f[_0x3f7d06(0x22d)](_0x356ed4['length'],this[_0x3f7d06(0x24a)]))return await this[_0x3f7d06(0x22e)](_0x356ed4,_0x4ca4fb,_0x5d7eaa,_0x49c3de,_0x4d09e5,_0x20ca95);return await this['generateStreaming'](_0x356ed4,_0x4ca4fb,_0x5d7eaa,_0x49c3de,_0x4d09e5,_0x20ca95);}async['generateSimple'](_0x107dfe,_0x134c19,_0x357162,_0x362059,_0x5cbd02,_0x4385b5){const _0x43c464=a0_0x5718f2,_0x16c0f={'eRHFS':_0x43c464(0x21e),'oepdu':_0x43c464(0x231),'zvieP':'FFFFFFFF','WtREP':'pattern','SZyQZ':'solid','ZzGWj':'FF4472C4','ouQvL':'excel_generation_complete','ztEZg':_0x43c464(0x201)},_0x3e8abb=new ExcelJS['Workbook'](),_0x274bc2=_0x3e8abb[_0x43c464(0x1e9)](_0x16c0f['oepdu']),_0x4ba3be=_0x134c19||(_0x107dfe[_0x43c464(0x22a)]>0x0?Object[_0x43c464(0x1f7)](_0x107dfe[0x0]):[]);_0x274bc2[_0x43c464(0x214)]=_0x4ba3be[_0x43c464(0x212)](_0x4b05d1=>{const _0x5cb2d2=_0x43c464,_0x17481e={'header':this[_0x5cb2d2(0x209)](_0x4b05d1,_0x362059),'key':_0x4b05d1,'width':0x14};if(_0x357162&&_0x357162[_0x4b05d1]){const _0x143e5a=_0x357162[_0x4b05d1];if(_0x143e5a[_0x5cb2d2(0x218)]&&_0x143e5a[_0x5cb2d2(0x218)][_0x5cb2d2(0x1f2)]()!==_0x16c0f['eRHFS']){const _0x1735fe=this[_0x5cb2d2(0x1f3)](_0x143e5a);_0x1735fe&&(_0x17481e[_0x5cb2d2(0x24e)]={'numFmt':_0x1735fe});}}return _0x17481e;}),_0x274bc2[_0x43c464(0x203)](0x1)[_0x43c464(0x205)]={'bold':!![],'color':{'argb':_0x16c0f['zvieP']}},_0x274bc2['getRow'](0x1)[_0x43c464(0x1f4)]={'type':_0x16c0f[_0x43c464(0x246)],'pattern':_0x16c0f[_0x43c464(0x1ff)],'fgColor':{'argb':_0x16c0f['ZzGWj']}},_0x274bc2['getRow'](0x1)[_0x43c464(0x243)]={'vertical':_0x43c464(0x24c),'horizontal':_0x43c464(0x20f)};const _0x4d9abc=_0x357162?this[_0x43c464(0x20e)](_0x107dfe,_0x4ba3be,_0x357162):_0x107dfe;return _0x274bc2[_0x43c464(0x208)](_0x4d9abc),_0x357162&&this[_0x43c464(0x24f)](_0x274bc2,_0x4ba3be,_0x357162,_0x107dfe['length']),_0x4385b5&&await _0x4385b5(0x32),_0x274bc2['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x4ba3be[_0x43c464(0x22a)]}},_0x274bc2['views']=[{'state':_0x43c464(0x211),'xSplit':0x0,'ySplit':0x1}],await _0x3e8abb[_0x43c464(0x224)]['writeFile'](_0x5cbd02),_0x4385b5&&await _0x4385b5(0x64),logger[_0x43c464(0x232)]({'event':_0x16c0f[_0x43c464(0x230)],'method':'simple','rows':_0x107dfe[_0x43c464(0x22a)]},_0x16c0f[_0x43c464(0x20a)]),_0x5cbd02;}async['generateStreaming'](_0x4b09f8,_0x28000b,_0x5a54a9,_0x11ab37,_0x5ec294,_0x45b5eb){const _0x5bec77=a0_0x5718f2,_0x89a1e9={'mbkDu':'Data','tsMQN':_0x5bec77(0x1fb),'eSAeX':'middle','TlWLA':'center','Adjxm':function(_0x430774,_0x184cc4){return _0x430774<_0x184cc4;},'JlADM':function(_0x15a50c,_0x501080){return _0x15a50c+_0x501080;},'HGCwR':function(_0xefcdaa,_0x4d226f){return _0xefcdaa/_0x4d226f;},'QsbAd':function(_0x11aa82,_0x1fcb9a){return _0x11aa82(_0x1fcb9a);},'JRSzE':_0x5bec77(0x24b),'HsrpS':_0x5bec77(0x252),'AbgJI':_0x5bec77(0x226)},_0xc841d9=new ExcelJS['stream']['xlsx']['WorkbookWriter']({'filename':_0x5ec294,'useStyles':!![],'useSharedStrings':!![]}),_0x28f2b4=_0xc841d9[_0x5bec77(0x1e9)](_0x89a1e9[_0x5bec77(0x245)]),_0x1ffa2c=_0x28000b||(_0x4b09f8[_0x5bec77(0x22a)]>0x0?Object[_0x5bec77(0x1f7)](_0x4b09f8[0x0]):[]),_0x5bdb94={};_0x1ffa2c['forEach']((_0x3ed562,_0x3718c6)=>{_0x5bdb94[_0x3ed562]=_0x3718c6+0x1;}),_0x28f2b4['columns']=_0x1ffa2c['map'](_0x49904f=>{const _0x35e76f=_0x5bec77,_0x52d39e={'header':this[_0x35e76f(0x209)](_0x49904f,_0x11ab37),'key':_0x49904f,'width':0x14};if(_0x5a54a9&&_0x5a54a9[_0x49904f]){const _0x2f96d8=_0x5a54a9[_0x49904f];if(_0x2f96d8[_0x35e76f(0x218)]&&_0x2f96d8['type']['toLowerCase']()!=='date'){const _0x5bdc38=this[_0x35e76f(0x1f3)](_0x2f96d8);_0x5bdc38&&(_0x52d39e[_0x35e76f(0x24e)]={'numFmt':_0x5bdc38});}}return _0x52d39e;});const _0x463737=_0x28f2b4[_0x5bec77(0x203)](0x1);_0x463737['font']={'bold':!![],'color':{'argb':'FFFFFFFF'}},_0x463737['fill']={'type':_0x5bec77(0x23a),'pattern':_0x5bec77(0x238),'fgColor':{'argb':_0x89a1e9['tsMQN']}},_0x463737['alignment']={'vertical':_0x89a1e9['eSAeX'],'horizontal':_0x89a1e9[_0x5bec77(0x220)]},_0x463737['commit']();const _0x5acfb8=_0x4b09f8['length'];let _0x1dfc10=0x0;for(let _0x494440=0x0;_0x89a1e9['Adjxm'](_0x494440,_0x5acfb8);_0x494440+=this[_0x5bec77(0x24a)]){const _0x1a9686=_0x4b09f8['slice'](_0x494440,_0x89a1e9[_0x5bec77(0x229)](_0x494440,this['chunkSize']));for(const _0x3c4c0c of _0x1a9686){const _0x2dd918=_0x5a54a9?this[_0x5bec77(0x242)](_0x3c4c0c,_0x1ffa2c,_0x5a54a9):_0x3c4c0c,_0x16e77b=_0x28f2b4['addRow'](_0x2dd918);_0x5a54a9&&this[_0x5bec77(0x20d)](_0x16e77b,_0x2dd918,_0x1ffa2c,_0x5a54a9),_0x16e77b[_0x5bec77(0x23b)](),_0x1dfc10++;}if(_0x45b5eb){const _0x1f3edc=Math[_0x5bec77(0x22f)](_0x89a1e9[_0x5bec77(0x233)](_0x1dfc10,_0x5acfb8)*0x64);await _0x89a1e9['QsbAd'](_0x45b5eb,_0x1f3edc);}logger[_0x5bec77(0x1f5)]({'event':_0x89a1e9[_0x5bec77(0x20b)],'processed':_0x1dfc10,'total':_0x5acfb8},_0x5bec77(0x21d)+_0x1dfc10+'/'+_0x5acfb8+'\x20rows');}return _0x28f2b4[_0x5bec77(0x23b)](),await _0xc841d9['commit'](),logger[_0x5bec77(0x232)]({'event':'excel_generation_complete','method':_0x89a1e9['HsrpS'],'rows':_0x5acfb8,'chunks':Math[_0x5bec77(0x236)](_0x5acfb8/this['chunkSize'])},_0x89a1e9['AbgJI']),_0x5ec294;}[a0_0x5718f2(0x209)](_0x19b0b6,_0x177843){const _0x1c50ba={'iPlkg':function(_0x388e8b,_0x3e2896){return _0x388e8b(_0x3e2896);}};if(_0x177843&&_0x177843[_0x19b0b6])return _0x177843[_0x19b0b6];return _0x1c50ba['iPlkg'](String,_0x19b0b6)['toUpperCase']();}[a0_0x5718f2(0x1e8)](_0xb64643,_0x334e97){const _0x452335=a0_0x5718f2,_0x1154c0={'QdfZg':function(_0x54454e,_0x2059ff){return _0x54454e===_0x2059ff;}};if(!_0x334e97||_0x1154c0['QdfZg'](_0x334e97[_0x452335(0x22a)],0x0))return!![];if(_0x1154c0['QdfZg'](_0xb64643['length'],0x0))return!![];const _0x386f9b=Object['keys'](_0xb64643[0x0]),_0x54ed43=_0x334e97[_0x452335(0x1ed)](_0x1df32a=>!_0x386f9b[_0x452335(0x1ef)](_0x1df32a));if(_0x54ed43['length']>0x0)throw new Error('Invalid\x20columns:\x20'+_0x54ed43[_0x452335(0x1e4)](',\x20'));return!![];}['getExcelFormat'](_0x4722a0){const _0x5859bc=a0_0x5718f2,_0x4ce4ec={'GdmDf':'date','qaZrd':'#,##0.00','HRpng':'currency','zPWRN':function(_0x3d5d34,_0x19d729){return _0x3d5d34||_0x19d729;},'bxkFU':'0.00%'};if(!_0x4722a0||!_0x4722a0['type'])return null;const {type:_0x4a4be1,format:_0x596a9a}=_0x4722a0;switch(_0x4a4be1['toLowerCase']()){case _0x4ce4ec['GdmDf']:return _0x596a9a?_0x596a9a[_0x5859bc(0x1f2)]():'dd/mm/yyyy';case _0x5859bc(0x21b):return _0x596a9a||_0x4ce4ec['qaZrd'];case _0x4ce4ec[_0x5859bc(0x200)]:return _0x4ce4ec[_0x5859bc(0x1f1)](_0x596a9a,_0x5859bc(0x23f));case'percentage':return _0x596a9a||_0x4ce4ec['bxkFU'];case'text':return'@';default:return null;}}['applyCellFormatting'](_0x334bf5,_0x294f22,_0x57cf83,_0x599208){const _0x22d6a9=a0_0x5718f2,_0x84a3cf={'eccSM':function(_0xc695ad,_0x82fa54){return _0xc695ad+_0x82fa54;}};if(!_0x57cf83)return;_0x294f22[_0x22d6a9(0x227)]((_0x478c18,_0x1d06ed)=>{const _0x4cccbf=_0x22d6a9,_0x425fa8=_0x57cf83[_0x478c18];if(!_0x425fa8)return;const _0x487168=_0x84a3cf[_0x4cccbf(0x1ec)](_0x1d06ed,0x1);for(let _0x438849=0x2;_0x438849<=_0x599208+0x1;_0x438849++){const _0x4cb430=_0x334bf5['getCell'](_0x438849,_0x487168);this['formatCell'](_0x4cb430,_0x425fa8);}});}['applyRowFormatting'](_0x447e52,_0x90d4ae,_0x1afaa9,_0x1c9f1f){if(!_0x1c9f1f)return;_0x1afaa9['forEach']((_0x5a500c,_0x13f27e)=>{const _0x374a06=_0x1c9f1f[_0x5a500c];if(!_0x374a06)return;const _0x190eb7=_0x447e52['getCell'](_0x13f27e+0x1);this['formatCell'](_0x190eb7,_0x374a06);});}['formatCell'](_0x3bf5b9,_0x34c973){const _0x23e6df=a0_0x5718f2,_0x58fc0c={'SAvrk':function(_0x9e5875,_0x444d5f){return _0x9e5875===_0x444d5f;},'fYWGQ':_0x23e6df(0x1fe),'bhyhb':function(_0x44ac51,_0x7638e6){return _0x44ac51!==_0x7638e6;},'tfhIO':function(_0x218fff,_0x1d31b4){return _0x218fff(_0x1d31b4);},'iHLkm':'left'};if(!_0x34c973||!_0x34c973['type'])return;const {type:_0x41654d,format:_0x196f59}=_0x34c973;if(_0x41654d['toLowerCase']()===_0x23e6df(0x21e)&&_0x3bf5b9['value']){const _0x4aacec=this[_0x23e6df(0x251)](_0x3bf5b9[_0x23e6df(0x23e)],_0x196f59);_0x4aacec&&(_0x3bf5b9[_0x23e6df(0x23e)]=_0x4aacec);return;}if((_0x58fc0c[_0x23e6df(0x240)](_0x41654d['toLowerCase'](),'number')||_0x58fc0c['SAvrk'](_0x41654d[_0x23e6df(0x1f2)](),'currency')||_0x41654d[_0x23e6df(0x1f2)]()===_0x58fc0c['fYWGQ'])&&_0x3bf5b9['value']){const _0x60016a=this[_0x23e6df(0x249)](_0x3bf5b9[_0x23e6df(0x23e)]);if(_0x58fc0c['bhyhb'](_0x60016a,null)){_0x3bf5b9['value']=_0x60016a;const _0x13f093=this['getExcelFormat'](_0x34c973);_0x13f093&&(_0x3bf5b9['numFmt']=_0x13f093);}}_0x41654d[_0x23e6df(0x1f2)]()===_0x23e6df(0x247)&&_0x3bf5b9['value']&&(_0x3bf5b9[_0x23e6df(0x225)]='@',_0x58fc0c['bhyhb'](typeof _0x3bf5b9[_0x23e6df(0x23e)],_0x23e6df(0x210))&&(_0x3bf5b9[_0x23e6df(0x23e)]=_0x58fc0c['tfhIO'](String,_0x3bf5b9[_0x23e6df(0x23e)])),_0x3bf5b9[_0x23e6df(0x243)]={'horizontal':_0x58fc0c[_0x23e6df(0x204)],'vertical':'middle'});}[a0_0x5718f2(0x251)](_0xb8c03e,_0x2acc7c){const _0x412139=a0_0x5718f2,_0x1176bd={'cuaAV':function(_0x12783d,_0x43b0c2){return _0x12783d+_0x43b0c2;},'tAewn':function(_0x54c119,_0x5a6d64,_0x32925b){return _0x54c119(_0x5a6d64,_0x32925b);},'SHmuf':function(_0x11266d,_0x5128b6,_0x25cf28){return _0x11266d(_0x5128b6,_0x25cf28);},'VPuBQ':function(_0x25307a,_0x4df76b){return _0x25307a===_0x4df76b;},'taRKU':function(_0x1c386e,_0x574be2){return _0x1c386e(_0x574be2);},'rtedg':function(_0x562cfa,_0x419efa){return _0x562cfa+_0x419efa;},'PSrwI':function(_0x4f9528,_0x45c92d){return _0x4f9528(_0x45c92d);},'JZQYw':function(_0x413dc5,_0x384d4a){return _0x413dc5||_0x384d4a;},'sSoXe':_0x412139(0x248),'yjYCd':function(_0x426870,_0x4e784a){return _0x426870===_0x4e784a;},'wlbxc':_0x412139(0x24d),'PvHZC':_0x412139(0x1eb),'hmGNI':'dd-mm-yyyy'};if(!_0xb8c03e)return null;let _0x1d374e,_0x4e0b00,_0x35f06c;if(_0xb8c03e instanceof Date)_0x1d374e=_0xb8c03e[_0x412139(0x23d)](),_0x4e0b00=_0x1176bd[_0x412139(0x1fa)](_0xb8c03e[_0x412139(0x223)](),0x1),_0x35f06c=_0xb8c03e['getUTCDate']();else{if(typeof _0xb8c03e==='string'){const _0x11e87c=_0xb8c03e['match'](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x11e87c)_0x1d374e=parseInt(_0x11e87c[0x1],0xa),_0x4e0b00=_0x1176bd[_0x412139(0x1f8)](parseInt,_0x11e87c[0x2],0xa),_0x35f06c=_0x1176bd['tAewn'](parseInt,_0x11e87c[0x3],0xa);else{const _0x4689cc=_0xb8c03e['match'](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x4689cc)_0x35f06c=parseInt(_0x4689cc[0x1],0xa),_0x4e0b00=_0x1176bd[_0x412139(0x21a)](parseInt,_0x4689cc[0x2],0xa),_0x1d374e=parseInt(_0x4689cc[0x3],0xa);else{const _0x8749a8=_0xb8c03e['match'](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x8749a8&&(_0x1d374e=parseInt(_0x8749a8[0x1],0xa),_0x4e0b00=parseInt(_0x8749a8[0x2],0xa),_0x35f06c=parseInt(_0x8749a8[0x3],0xa));}}}else{if(_0x1176bd[_0x412139(0x23c)](typeof _0xb8c03e,_0x412139(0x21b))){const _0x17f29d=new Date(_0xb8c03e);!_0x1176bd['taRKU'](isNaN,_0x17f29d[_0x412139(0x221)]())&&(_0x1d374e=_0x17f29d['getUTCFullYear'](),_0x4e0b00=_0x1176bd[_0x412139(0x234)](_0x17f29d['getUTCMonth'](),0x1),_0x35f06c=_0x17f29d[_0x412139(0x1e5)]());}}}if(!_0x1d374e||!_0x4e0b00||!_0x35f06c)return null;const _0x3a160a=String(_0x35f06c)[_0x412139(0x215)](0x2,'0'),_0x492284=_0x1176bd['PSrwI'](String,_0x4e0b00)[_0x412139(0x215)](0x2,'0'),_0x5369f7=String(_0x1d374e),_0x2534b0=_0x1176bd['JZQYw'](_0x2acc7c,_0x1176bd['sSoXe'])['toLowerCase']();if(_0x1176bd[_0x412139(0x1fd)](_0x2534b0,_0x1176bd['wlbxc']))return _0x3a160a+'/'+_0x492284+'/'+_0x5369f7;else{if(_0x2534b0===_0x412139(0x1fc))return _0x492284+'/'+_0x3a160a+'/'+_0x5369f7;else{if(_0x1176bd['VPuBQ'](_0x2534b0,_0x1176bd['PvHZC']))return _0x5369f7+'-'+_0x492284+'-'+_0x3a160a;else{if(_0x2534b0===_0x1176bd[_0x412139(0x222)])return _0x3a160a+'-'+_0x492284+'-'+_0x5369f7;else return _0x2534b0==='yyyy/mm/dd'?_0x5369f7+'/'+_0x492284+'/'+_0x3a160a:_0x3a160a+'/'+_0x492284+'/'+_0x5369f7;}}}}['parseNumber'](_0x25c4d8){const _0x2dc89c=a0_0x5718f2,_0x1b7178={'xhVjR':function(_0x440aa2,_0x241ea0){return _0x440aa2===_0x241ea0;},'yXzBl':'string','yzHpy':function(_0x1a81f8,_0x552538){return _0x1a81f8(_0x552538);}};if(_0x1b7178['xhVjR'](typeof _0x25c4d8,'number'))return _0x25c4d8;if(typeof _0x25c4d8===_0x1b7178[_0x2dc89c(0x235)]){const _0x24eac2=_0x25c4d8[_0x2dc89c(0x216)](/[^\d.-]/g,''),_0xbd77df=_0x1b7178['yzHpy'](parseFloat,_0x24eac2);if(!isNaN(_0xbd77df))return _0xbd77df;}return null;}[a0_0x5718f2(0x20e)](_0x4db1f9,_0x3597d3,_0x4a3be4){const _0x48b955=a0_0x5718f2,_0x13443d={'ywKAe':function(_0x40d1b7,_0x3db4c9){return _0x40d1b7===_0x3db4c9;},'vzljM':_0x48b955(0x247),'hHFIQ':function(_0x2df757,_0x15f178){return _0x2df757+_0x15f178;}};if(!_0x4a3be4)return _0x4db1f9;const _0x3557ab=[];_0x3597d3[_0x48b955(0x227)](_0x1c3548=>{const _0x1fa7f0=_0x48b955,_0x32a2a1=_0x4a3be4[_0x1c3548];_0x32a2a1&&_0x32a2a1[_0x1fa7f0(0x218)]&&_0x13443d[_0x1fa7f0(0x207)](_0x32a2a1['type']['toLowerCase'](),_0x13443d[_0x1fa7f0(0x202)])&&_0x3557ab['push'](_0x1c3548);});if(_0x13443d[_0x48b955(0x207)](_0x3557ab['length'],0x0))return _0x4db1f9;return _0x4db1f9[_0x48b955(0x212)](_0x2dd7d4=>{const _0x4d632d={'kIupp':function(_0x34a56a,_0x76a29f){return _0x34a56a!==_0x76a29f;},'sjDMO':function(_0x30c400,_0x12a8ea){return _0x30c400!==_0x12a8ea;},'KkAsB':function(_0x3c08f8,_0x3ad830){const _0x70f2d2=a0_0x21d2;return _0x13443d[_0x70f2d2(0x21f)](_0x3c08f8,_0x3ad830);},'kJZUX':function(_0x25ddc5,_0x4aee29){return _0x25ddc5(_0x4aee29);}},_0x44e473={..._0x2dd7d4};return _0x3557ab['forEach'](_0xf460cc=>{const _0x188599=a0_0x21d2;_0x4d632d['kIupp'](_0x44e473[_0xf460cc],null)&&_0x4d632d[_0x188599(0x206)](_0x44e473[_0xf460cc],undefined)&&(_0x44e473[_0xf460cc]=_0x4d632d['KkAsB']('\x27',_0x4d632d[_0x188599(0x20c)](String,_0x44e473[_0xf460cc])));}),_0x44e473;});}[a0_0x5718f2(0x242)](_0x302ab6,_0x15b194,_0xcafb36){const _0x107066=a0_0x5718f2,_0x15d214={'LljSO':_0x107066(0x247),'YkpUW':function(_0x315598,_0x30e15e){return _0x315598!==_0x30e15e;},'kyUpx':function(_0x2612f6,_0x522b3a){return _0x2612f6+_0x522b3a;}};if(!_0xcafb36)return _0x302ab6;const _0x46db90=[];_0x15b194['forEach'](_0x276a8f=>{const _0x2a68b2=_0x107066,_0x1630fc=_0xcafb36[_0x276a8f];_0x1630fc&&_0x1630fc['type']&&_0x1630fc[_0x2a68b2(0x218)][_0x2a68b2(0x1f2)]()===_0x15d214[_0x2a68b2(0x213)]&&_0x46db90['push'](_0x276a8f);});if(_0x46db90['length']===0x0)return _0x302ab6;const _0x3322ab={..._0x302ab6};return _0x46db90[_0x107066(0x227)](_0x330fa2=>{const _0xa40911=_0x107066;_0x15d214['YkpUW'](_0x3322ab[_0x330fa2],null)&&_0x15d214['YkpUW'](_0x3322ab[_0x330fa2],undefined)&&(_0x3322ab[_0x330fa2]=_0x15d214[_0xa40911(0x1ee)]('\x27',String(_0x3322ab[_0x330fa2])));}),_0x3322ab;}}module[a0_0x5718f2(0x250)]=ExcelGenerator;
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 +1 @@
1
- const a0_0x15b390=a0_0x1d49;(function(_0x4fd914,_0x5c4d3e){const _0x1aa9b6=a0_0x1d49,_0x8f9ad2=_0x4fd914();while(!![]){try{const _0x406b18=-parseInt(_0x1aa9b6(0xe9))/0x1+parseInt(_0x1aa9b6(0x100))/0x2+-parseInt(_0x1aa9b6(0x101))/0x3*(-parseInt(_0x1aa9b6(0xe5))/0x4)+parseInt(_0x1aa9b6(0xeb))/0x5*(parseInt(_0x1aa9b6(0xee))/0x6)+-parseInt(_0x1aa9b6(0xf9))/0x7*(-parseInt(_0x1aa9b6(0xfe))/0x8)+-parseInt(_0x1aa9b6(0xf0))/0x9+parseInt(_0x1aa9b6(0xfb))/0xa*(-parseInt(_0x1aa9b6(0xf3))/0xb);if(_0x406b18===_0x5c4d3e)break;else _0x8f9ad2['push'](_0x8f9ad2['shift']());}catch(_0x3c6785){_0x8f9ad2['push'](_0x8f9ad2['shift']());}}}(a0_0xd3e5,0x4ba68));function a0_0xd3e5(){const _0x36ced7=['CgfKu3rHCNq','mta1vK15u0r3','D29YA3nOzwv0CW','B2jQzwn0','nZqZotrpq1HqDLi','jdfFjdi','mJG0mte0n3D3sgHYAW','zxHJzwXQCW','CMLJAfrLEhq','mtfzEe9MvgC','v29YA2jVB2S','v1PxwLa','zM9YrwfJAa','EgXZEa','Bwf0y2G','mJG5mtDAvfz3q3m','CMvZDwX0','nJu3mJmXmhvLuxb3Aa','BM9YBwfSAxPLq2vSBfzHBhvL','AM9PBG','nJG4seTqAw1m','zMLSDgvY','ndqXmJKYww9IzujK','mJi1te51vgDI','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu','CMvWBgfJzq','BM9YBwfSAxPLsgvHzgvY','BLz5sgm','AgfZ','DhjPBq','zxjYB3i','mJCZnZjQs3blBKe','zxHJzwXFCgfYC2vFzxjYB3i','Dg9mB3DLCKnHC2u','Dgv4Da','nJy3mZHkDuL5qvy'];a0_0xd3e5=function(){return _0x36ced7;};return a0_0xd3e5();}function a0_0x1d49(_0xe559be,_0x48d560){_0xe559be=_0xe559be-0xe4;const _0xd3e5cb=a0_0xd3e5();let _0x1d4930=_0xd3e5cb[_0xe559be];if(a0_0x1d49['fSnhKm']===undefined){var _0xc67b74=function(_0x22c417){const _0x38f78b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xea854b='',_0x2345b4='';for(let _0xd8895b=0x0,_0x39db25,_0x15e757,_0x3f352f=0x0;_0x15e757=_0x22c417['charAt'](_0x3f352f++);~_0x15e757&&(_0x39db25=_0xd8895b%0x4?_0x39db25*0x40+_0x15e757:_0x15e757,_0xd8895b++%0x4)?_0xea854b+=String['fromCharCode'](0xff&_0x39db25>>(-0x2*_0xd8895b&0x6)):0x0){_0x15e757=_0x38f78b['indexOf'](_0x15e757);}for(let _0xef66b1=0x0,_0x5b1d16=_0xea854b['length'];_0xef66b1<_0x5b1d16;_0xef66b1++){_0x2345b4+='%'+('00'+_0xea854b['charCodeAt'](_0xef66b1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2345b4);};a0_0x1d49['ShKrhM']=_0xc67b74,a0_0x1d49['WjGooU']={},a0_0x1d49['fSnhKm']=!![];}const _0x413c3b=_0xd3e5cb[0x0],_0x230972=_0xe559be+_0x413c3b,_0x20837e=a0_0x1d49['WjGooU'][_0x230972];return!_0x20837e?(_0x1d4930=a0_0x1d49['ShKrhM'](_0x1d4930),a0_0x1d49['WjGooU'][_0x230972]=_0x1d4930):_0x1d4930=_0x20837e,_0x1d4930;}const ExcelJS=require(a0_0x15b390(0xf1)),{logger}=require('./logger');class ExcelParser{async['parseExcelFile'](_0x3a4df5){const _0x27643c=a0_0x15b390,_0x50f25={'ffXGb':function(_0x4d846c,_0x1eba5a){return _0x4d846c+_0x1eba5a;},'pNDmK':'No\x20worksheet\x20found\x20in\x20Excel\x20file','Bxjhw':'excel_parsed','BBHQn':_0x27643c(0xe6),'YomCZ':_0x27643c(0x102)};try{const _0xc245a0=new ExcelJS[(_0x27643c(0xf4))]();await _0xc245a0[_0x27643c(0xf7)]['readFile'](_0x3a4df5);const _0x3cb29f=_0xc245a0[_0x27643c(0xec)][0x0];if(!_0x3cb29f)throw new Error(_0x50f25['pNDmK']);const _0x138b73=[];let _0xe67e96=[];return _0x3cb29f['eachRow']((_0x1c4d92,_0x56bfdd)=>{const _0xbd25d9=_0x27643c,_0x2cc2e4=_0x1c4d92['values'];if(_0x56bfdd===0x1)_0xe67e96=_0x2cc2e4['slice'](0x1)['map'](_0x46d9cc=>this['normalizeHeader'](_0x46d9cc));else{const _0x7d4ab0={};_0xe67e96[_0xbd25d9(0xf6)]((_0xc7cea8,_0x479d53)=>{const _0x4a136d=_0x2cc2e4[_0x50f25['ffXGb'](_0x479d53,0x1)];_0x7d4ab0[_0xc7cea8]=this['normalizeCellValue'](_0x4a136d);}),_0x138b73['push'](_0x7d4ab0);}}),logger['info']({'event':_0x50f25['Bxjhw'],'filePath':_0x3a4df5,'totalRows':_0x138b73['length'],'headers':_0xe67e96['length']},'Excel\x20file\x20parsed\x20successfully'),{'headers':_0xe67e96,'rows':_0x138b73,'totalRows':_0x138b73['length']};}catch(_0x2ff1b2){logger[_0x27643c(0xe4)]({'event':_0x50f25['BBHQn'],'filePath':_0x3a4df5,'error':_0x2ff1b2['message']},_0x50f25['YomCZ']);throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x2ff1b2['message']);}}[a0_0x15b390(0x104)](_0x240d0b){const _0x1ab1d8=a0_0x15b390,_0x41f2a1={'aGVkf':function(_0x41fb14,_0x22e3b2){return _0x41fb14===_0x22e3b2;},'ivefn':function(_0x4ce414,_0x3dc20a){return _0x4ce414===_0x3dc20a;}};if(_0x41f2a1['aGVkf'](_0x240d0b,null)||_0x41f2a1['ivefn'](_0x240d0b,undefined))return'';let _0x2431a2=String(_0x240d0b)[_0x1ab1d8(0x107)]();return _0x2431a2=_0x2431a2['replace'](/\s+/g,'_')[_0x1ab1d8(0x103)](/([a-z])([A-Z])/g,'$1_$2')[_0x1ab1d8(0x103)](/([A-Z]+)([A-Z][a-z])/g,_0x1ab1d8(0xef))[_0x1ab1d8(0xe7)](),_0x2431a2;}['normalizeCellValue'](_0x228845){const _0x5ea192=a0_0x15b390,_0x10ef2a={'nVyHc':function(_0x218562,_0x5b80b7){return _0x218562===_0x5b80b7;},'doruk':function(_0x285177,_0x10f933){return _0x285177(_0x10f933);},'jBzyE':function(_0x4747e0,_0x50b0c1){return _0x4747e0(_0x50b0c1);},'WZWZP':'string'};if(_0x10ef2a[_0x5ea192(0x105)](_0x228845,null)||_0x228845===undefined)return null;if(_0x228845 instanceof Date){const _0x20435d=_0x228845['getFullYear'](),_0x1943c3=String(_0x228845['getMonth']()+0x1)[_0x5ea192(0xea)](0x2,'0'),_0x5d5541=_0x10ef2a['doruk'](String,_0x228845['getDate']())[_0x5ea192(0xea)](0x2,'0');return _0x20435d+'-'+_0x1943c3+'-'+_0x5d5541;}if(typeof _0x228845==='string'){const _0x320a37=_0x228845[_0x5ea192(0xf8)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x320a37){const _0x72bbb5=String(_0x320a37[0x1])[_0x5ea192(0xea)](0x2,'0'),_0xf477f9=_0x10ef2a['jBzyE'](String,_0x320a37[0x2])[_0x5ea192(0xea)](0x2,'0'),_0x4178bf=_0x320a37[0x3];return _0x4178bf+'-'+_0xf477f9+'-'+_0x72bbb5;}}if(_0x228845&&typeof _0x228845==='object'&&_0x228845[_0x5ea192(0xf2)])return _0x228845[_0x5ea192(0xf2)]['map'](_0x370905=>_0x370905[_0x5ea192(0xe8)])[_0x5ea192(0xfd)]('');if(_0x228845&&_0x10ef2a[_0x5ea192(0x105)](typeof _0x228845,_0x5ea192(0xed))&&_0x228845['result']!==undefined)return this[_0x5ea192(0xfc)](_0x228845[_0x5ea192(0xfa)]);if(typeof _0x228845===_0x10ef2a[_0x5ea192(0xf5)])return _0x228845['trim']();return _0x228845;}['validateExcelStructure'](_0x4c9eb9,_0x12dd7b){const _0x4888a1=a0_0x15b390,_0x4bdae2=new Set(_0x4c9eb9),_0x500043=new Set(_0x12dd7b),_0x3ab82b=_0x12dd7b[_0x4888a1(0xff)](_0x2bdc53=>!_0x4bdae2[_0x4888a1(0x106)](_0x2bdc53)),_0x2ff558=_0x4c9eb9['filter'](_0x4dc90d=>!_0x500043['has'](_0x4dc90d)),_0x3e8d64=_0x3ab82b['length']===0x0;return{'valid':_0x3e8d64,'missingFields':_0x3ab82b,'extraFields':_0x2ff558};}}module['exports']=new ExcelParser();
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 +1 @@
1
- const a0_0x52da4a=a0_0x4c74;(function(_0x3c81b5,_0x5d7dac){const _0x19082c=a0_0x4c74,_0x63d1a4=_0x3c81b5();while(!![]){try{const _0x3efef2=parseInt(_0x19082c(0x167))/0x1+parseInt(_0x19082c(0x141))/0x2*(parseInt(_0x19082c(0x1ad))/0x3)+parseInt(_0x19082c(0x19e))/0x4+-parseInt(_0x19082c(0x17a))/0x5*(parseInt(_0x19082c(0x1b8))/0x6)+-parseInt(_0x19082c(0x149))/0x7*(parseInt(_0x19082c(0x139))/0x8)+parseInt(_0x19082c(0x1b4))/0x9+-parseInt(_0x19082c(0x195))/0xa*(parseInt(_0x19082c(0x15e))/0xb);if(_0x3efef2===_0x5d7dac)break;else _0x63d1a4['push'](_0x63d1a4['shift']());}catch(_0x1a9d3b){_0x63d1a4['push'](_0x63d1a4['shift']());}}}(a0_0x59e6,0xd515f));const {v7:uuidv7}=require(a0_0x52da4a(0x15f)),path=require('path'),fs=require('fs')['promises'],fsSync=require('fs'),redisHelper=require(a0_0x52da4a(0x193)),{logger,logError}=require('../../core/utils/logger'),dbType=(process['env']['DB_TYPE']||a0_0x52da4a(0x14e))['toLowerCase']();let executeQuery;function a0_0x59e6(){const _0x38057b=['zMLSztO','u2PPwgC','zuXhA1G','Dg9vChbLCKnHC2u','BwTKAxjtEw5J','svmGtK9uie5vteW','y3jLyxrLzf9HDa','zxHWB3j0CW','rMfPBgvKihrVihjLywqGzxHWB3j0ihf1zxj5igzPBgu6ia','zMv0y2HeyxrH','teLlrq','mZq5ote3ow5IzvbxBG','C3vIC3rYAw5N','C3nPtfy','zxHWB3j0x2zPBgvFzgvSzxrLza','ugDnCfu','zxHWB3j0x2zPBgvFBM90x2zVDw5K','svmGtLvmta','mteXotK5mdzIvMzRuKK','zxHWB3j0x3vZAw5Nx2n1C3rVBv9XDwvYEq','rxHWB3j0ihbYB2nLC3nPBMCGC3rHCNrLza','y2f0y2G','mty2mZHwvKXIwMK','rxHWB3j0ihnLCNzPy2uGAw5PDgLHBgL6zwq','BM93','A0vks3O','DhjPBq','vxnPBMCG','A3ztr1O','ChjVy2vZC2LUzW','A3brBNi','t1vfsMC','sxLwwKG','wxfltKy','C0Xdtfu','lNHSC3G','zxHWB3j0x3bYB2nLC3nFzxjYB3i','ignVBhvTBNmGzNjVBsbJB25MAwCGkg5VigrHDgeP','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','CMvHzezPBgvtEw5J','ignVBhvTBNmGzNjVBsbYzxf1zxn0','swfwEe4','zxHLy3v0zvf1zxj5','Dg9tDhjPBMC','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0sM9I','sw52ywXPzcbMAwXLoIbYzwzLCMvUy2uGlsbWyxrOigLZigvTChr5','BwfW','mtm5nJbOrxjlBNC','ywXS','x2rHDge','zMLLBgrmywjLBhm','vhbvDge','CMfUzg9T','Dg9ju09tDhjPBMC','uK5NzKG','mMTov1DSsW','qvbqsMG','CMvWBgfJzq','zMLSDgvY','C3rYAw5N','B3jHy2XL','vfjuELm','rwDYv2O','mJe0ou9Jv2H0tG','zgvSzxrLsM9I','yNvPBgrxAgvYzunSyxvZzq','qK15D20','C3rHDhvZ','Cg9ZDgDYzxnXBa','ieLtie5pvcbovuXm','wMrID1K','y29Kzq','D2fYBG','x2v4Cg9YDerPCG','z2v0qwXSsM9ICW','rMfPBgvKihrVigzLDgnOigrHDge','Dg90ywXFCM93CW','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','Bw9KDwXLtMfTzq','DxrMoa','z2vUzxjHDgvkB2jjza','AM9PBG','rxHWB3j0igzPBguGzgvSzxrLza','DxLUB2G','odqWngrVq1bHvq','DxvPza','wKjPCMy','cIaGicbguK9nia','C2fUAxrPEMvwywX1zq','zMLSzv9WyxrO','BKXMEg4','Cgf5Bg9Hza','zxHWB3j0x2nSzwfUDxbFy29TCgXLDgu','mtu2ndu2n1nxqxrZCG','zw50CMLLCW','ChjVy2vZC0PVyG','lI4VlI4VzxHWB3j0CY8','rMfPBgvKihrVigLUAxrPywXPEMuGzxHWB3j0ihnLCNzPy2u','zevwBwK','lI9LEgnLBc1Nzw5LCMf0B3i','rxHWB3j0ignVBxbSzxrLzcbZDwnJzxnZzNvSBhK','Cgngvfe','BgvUz3rO','l2fWAs8','ignVBhvTBNmGkhDPBgrJyxjKihjLCxvLC3rLzcK','Dg9mB3DLCKnHC2u','Aw5MBW','ufzbzgG','AM9Ix2LK','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','BwDtqM0','mtK2nuHZAM10zW','zxHWB3j0x2zPBgvFzgvSzxrLx2vYCM9Y','DxbKyxrLsM9I','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','ieforca','y29TCgXLDgvK','AxD1BeO','BwvZC2fNzq','zxHPC3rZu3LUyW','y2HHCKf0','rxHWB3j0igzPBguGBM90igzVDw5K','lI4VlI4Vy29Yzs91DgLSCY9KyG','Dw5SAw5R','y3DK','ignVBhvTBNm','CM91BMq','zMLSzw5HBwu','cK9srevsiejzia','qvnd','txfWueG','u2TPChbPBMCGAw52ywXPzcbVCMrLCIbJBgf1C2u','sgXSCM0','zMXVB3i','vfves2y','rgf0ysbMzxrJAgvKihn1y2nLC3nMDwXSEq','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','y2nOA2m','mJi0nJb6BgHjBg8','u2TPChbPBMCGAw52ywXPzcbJB25KAxrPB24','zw5KCg9PBNroyw1L','ChjVz3jLC3m','CMvZB2X2zuv4Cg9YDff1zxj5','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','zxHWB3j0x2zLDgnOx2vYCM9Y','y29SDw1UCW','otu1ndeYvxLrD0zZ','z2vUzxjHDgu','vvbqrviO','zxHWB3j0x3f1zxj5x2zPBgvFBg9HzgvK'];a0_0x59e6=function(){return _0x38057b;};return a0_0x59e6();}if(dbType===a0_0x52da4a(0x146)){const oracleDb=require(a0_0x52da4a(0x17d));executeQuery=(_0x4dae00,_0x3c35d6)=>oracleDb[a0_0x52da4a(0x133)](_0x4dae00,_0x3c35d6);}else{if(dbType==='mysql'){const mysqlDb=require(a0_0x52da4a(0x19a));executeQuery=(_0x380a3f,_0x458850)=>mysqlDb['executeQuery'](_0x380a3f,_0x458850);}else executeQuery=require(a0_0x52da4a(0x185))['executeQuery'];}function a0_0x4c74(_0x143058,_0x3d3cd9){_0x143058=_0x143058-0x130;const _0x59e6e1=a0_0x59e6();let _0x4c74ea=_0x59e6e1[_0x143058];if(a0_0x4c74['dRWtHQ']===undefined){var _0xfc6afb=function(_0x5b35a8){const _0x3a6652='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x35a239='',_0x59cac9='';for(let _0x4b2f66=0x0,_0x2dbb17,_0x2a5190,_0x18707c=0x0;_0x2a5190=_0x5b35a8['charAt'](_0x18707c++);~_0x2a5190&&(_0x2dbb17=_0x4b2f66%0x4?_0x2dbb17*0x40+_0x2a5190:_0x2a5190,_0x4b2f66++%0x4)?_0x35a239+=String['fromCharCode'](0xff&_0x2dbb17>>(-0x2*_0x4b2f66&0x6)):0x0){_0x2a5190=_0x3a6652['indexOf'](_0x2a5190);}for(let _0x5da37b=0x0,_0xacd1e=_0x35a239['length'];_0x5da37b<_0xacd1e;_0x5da37b++){_0x59cac9+='%'+('00'+_0x35a239['charCodeAt'](_0x5da37b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x59cac9);};a0_0x4c74['wikYeo']=_0xfc6afb,a0_0x4c74['iUYIaE']={},a0_0x4c74['dRWtHQ']=!![];}const _0x1b0396=_0x59e6e1[0x0],_0x52a16c=_0x143058+_0x1b0396,_0x4048c2=a0_0x4c74['iUYIaE'][_0x52a16c];return!_0x4048c2?(_0x4c74ea=a0_0x4c74['wikYeo'](_0x4c74ea),a0_0x4c74['iUYIaE'][_0x52a16c]=_0x4c74ea):_0x4c74ea=_0x4048c2,_0x4c74ea;}class ExportService{constructor(){const _0x10c9b9=a0_0x52da4a;this[_0x10c9b9(0x153)]=null;}get['exportDir'](){const _0x3d7d00=a0_0x52da4a,_0x3a84f2={'YqKNF':'export_service_init','OUEJg':function(_0x5af0bc,_0x5e7239,_0x1b53ae,_0x30eb94){return _0x5af0bc(_0x5e7239,_0x1b53ae,_0x30eb94);},'SjiXg':'export_service_init_error'};if(!this['_exportDir']){const _0x5adf5f=process['env'][_0x3d7d00(0x135)]||'default';this[_0x3d7d00(0x153)]=process['env']['EXPORT_DIR']||path['join'](__dirname,_0x3d7d00(0x16a)+_0x5adf5f);try{!fsSync['existsSync'](this['_exportDir'])&&fsSync[_0x3d7d00(0x1a6)](this[_0x3d7d00(0x153)],{'recursive':!![]}),logger['info']({'event':_0x3a84f2[_0x3d7d00(0x1c3)],'dir':this[_0x3d7d00(0x153)]},_0x3d7d00(0x1b9));}catch(_0x471b4a){_0x3a84f2[_0x3d7d00(0x1c1)](logError,_0x471b4a,{'event':_0x3a84f2[_0x3d7d00(0x1a3)]},_0x3d7d00(0x16b));}}return this['_exportDir'];}['resolveExportQuery'](_0x4e54f3,_0x575f42=null){const _0x35664f=a0_0x52da4a,_0x12761d={'ZBirf':function(_0x3fade4,_0x3e3aec){return _0x3fade4!==_0x3e3aec;},'LKPUi':_0x35664f(0x1a2),'dEVmi':_0x35664f(0x137),'KYouX':'export_query_file_resolve','wzykt':_0x35664f(0x159),'QUEqZ':_0x35664f(0x1a1),'GWwxA':'ENOENT'};if(!_0x4e54f3||_0x12761d[_0x35664f(0x160)](typeof _0x4e54f3,_0x35664f(0x145)))return _0x4e54f3;const _0xf42ddf=_0x4e54f3['trim']();if(!_0xf42ddf['startsWith'](_0x12761d['LKPUi']))return _0xf42ddf;const _0x4e2752=_0xf42ddf['replace'](/^file:/,'')[_0x35664f(0x1bc)]();if(!_0x4e2752)throw new Error(_0x12761d[_0x35664f(0x16c)]);const _0x1ee990=_0x575f42||path[_0x35664f(0x15b)](process[_0x35664f(0x187)](),_0x35664f(0x165)),_0x40749e=path['resolve'](_0x1ee990,_0x4e2752);logger[_0x35664f(0x174)]({'event':_0x12761d['KYouX'],'relativePath':_0x4e2752,'baseDir':_0x1ee990,'absolutePath':_0x40749e},_0x35664f(0x177)+_0x4e2752);if(!fsSync[_0x35664f(0x182)](_0x40749e))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x40749e);try{const _0x955c46=fsSync[_0x35664f(0x130)](_0x40749e,_0x12761d['wzykt']);if(!_0x955c46||!_0x955c46[_0x35664f(0x1bc)]())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x40749e);return logger[_0x35664f(0x174)]({'event':_0x12761d['QUEqZ'],'file':_0x40749e,'queryLength':_0x955c46['length']},'Loaded\x20SQL\x20query\x20from\x20file\x20('+_0x955c46[_0x35664f(0x170)]+'\x20chars)'),_0x955c46[_0x35664f(0x1bc)]();}catch(_0x1547d8){if(_0x1547d8[_0x35664f(0x151)]===_0x12761d['GWwxA'])throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x40749e);throw new Error(_0x35664f(0x1aa)+_0x1547d8['message']);}}[a0_0x52da4a(0x15a)](){const _0x2ba1ba=a0_0x52da4a,_0x5cd9de={'MqpPH':'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','ejEjy':function(_0xe1511b,_0x45e66d){return _0xe1511b+_0x45e66d;}},_0x1e8aaa=_0x5cd9de[_0x2ba1ba(0x18d)],_0xc71512=Date[_0x2ba1ba(0x1ba)]()[_0x2ba1ba(0x134)](0x24),_0x1446bd=uuidv7()[_0x2ba1ba(0x143)](/-/g,'')['substring'](0x0,0xc-_0xc71512[_0x2ba1ba(0x170)]),_0x4941d1=_0x5cd9de['ejEjy'](_0xc71512,_0x1446bd)[_0x2ba1ba(0x1ae)](0x0,0xc);let _0x1e2986='';for(let _0x37b2b5=0x0;_0x37b2b5<0xc;_0x37b2b5++){_0x4941d1[_0x37b2b5]?_0x1e2986+=_0x4941d1[_0x37b2b5]:_0x1e2986+=_0x1e8aaa[_0x2ba1ba(0x183)](Math[_0x2ba1ba(0x190)](Math[_0x2ba1ba(0x13e)]()*_0x1e8aaa[_0x2ba1ba(0x170)]));}return _0x1e2986;}async['createJob'](_0x521440){const _0x2dfd50=a0_0x52da4a,_0x429593={'Hllrm':function(_0x504449,_0x5df044,_0x331797,_0x556e26){return _0x504449(_0x5df044,_0x331797,_0x556e26);},'TRTzS':'pending','ssiLV':'export_job_created','pjTRR':'Export\x20job\x20created'},_0x3e8ad5=this['generateJobId'](),_0x3ccdcc={'job_id':_0x3e8ad5,'status':_0x429593[_0x2dfd50(0x147)],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x521440,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x3e8ad5,_0x3ccdcc),logger[_0x2dfd50(0x174)]({'event':_0x429593[_0x2dfd50(0x1af)],'jobId':_0x3e8ad5,'params':_0x521440},_0x429593['pjTRR']),this[_0x2dfd50(0x169)](_0x3e8ad5,_0x521440)[_0x2dfd50(0x1b7)](_0x304c30=>{const _0x35abdd=_0x2dfd50;_0x429593[_0x35abdd(0x18f)](logError,_0x304c30,{'event':_0x35abdd(0x1c6),'jobId':_0x3e8ad5},'Export\x20processing\x20failed');}),{'job_id':_0x3e8ad5,'status':'pending'};}async['getJobStatus'](_0x385a8b){const _0x2121f3=a0_0x52da4a,_0x8b3994={'xuZBI':'completed'},_0x46af40=await redisHelper[_0x2121f3(0x136)](_0x385a8b);if(!_0x46af40)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0x46af40[_0x2121f3(0x176)],'status':_0x46af40['status'],'progress':_0x46af40[_0x2121f3(0x198)],'total_rows':_0x46af40[_0x2121f3(0x156)],'processed_rows':_0x46af40['processed_rows'],'file_url':_0x46af40['status']===_0x8b3994['xuZBI']?_0x2121f3(0x171)+_0x46af40['params'][_0x2121f3(0x158)]+'/'+_0x46af40['params'][_0x2121f3(0x197)]+_0x2121f3(0x157)+_0x385a8b:null,'error':_0x46af40['error']||null,'created_at':_0x46af40['created_at'],'completed_at':_0x46af40['completed_at']||null}};}async['processJob'](_0x56b521,_0xc8f88b){const _0x576043=a0_0x52da4a,_0xc4b4a2={'DHBdP':_0x576043(0x1bf),'TpUta':function(_0x376100,_0x5b7843,_0x2d3bc1,_0x2da893){return _0x376100(_0x5b7843,_0x2d3bc1,_0x2da893);}};try{await redisHelper['updateJob'](_0x56b521,{'status':_0xc4b4a2['DHBdP'],'started_at':new Date()[_0x576043(0x13f)]()}),logger[_0x576043(0x174)]({'event':'export_processing_start','jobId':_0x56b521},_0x576043(0x1b6));const _0x26bbf5=await this[_0x576043(0x1ab)](_0xc8f88b);await redisHelper[_0x576043(0x17c)](_0x56b521,{'total_rows':_0x26bbf5['length']});const _0x4aacf7=await this['generateExcel'](_0x56b521,_0x26bbf5,_0xc8f88b);await redisHelper['updateJob'](_0x56b521,{'status':'completed','progress':0x64,'file_path':_0x4aacf7,'completed_at':new Date()[_0x576043(0x13f)]()}),logger['info']({'event':'export_completed','jobId':_0x56b521,'rows':_0x26bbf5['length']},_0x576043(0x16e));}catch(_0x47e390){_0xc4b4a2[_0x576043(0x13d)](logError,_0x47e390,{'event':'export_failed','jobId':_0x56b521},'Export\x20failed'),await redisHelper[_0x576043(0x17c)](_0x56b521,{'status':'failed','error':_0x47e390[_0x576043(0x181)],'failed_at':new Date()[_0x576043(0x13f)]()});}}async[a0_0x52da4a(0x1ab)](_0x116790){const _0x53c0c4=a0_0x52da4a,_0x2e9414={'TUDKf':function(_0x52728b,_0x128d42){return _0x52728b===_0x128d42;},'mgSBm':_0x53c0c4(0x178),'BMywm':function(_0x3ff524,_0x10e533){return _0x3ff524+_0x10e533;},'OjXsQ':'Using\x20custom\x20exportQuery','RNgfH':'export_using_auto_query','BeYnX':_0x53c0c4(0x13a),'JJQEp':'export_fetch_start','MZlBB':'Fetching\x20data\x20from\x20database','aYRXh':function(_0x5356e7,_0x56a17b){return _0x5356e7(_0x56a17b);},'nLfxn':function(_0xb627f2,_0x129c76){return _0xb627f2>_0x129c76;},'eLGkX':'export_fetch_complete','CyiZG':_0x53c0c4(0x19c)};try{const {tableName:_0x57553e,columns:_0x1b9892,exportQuery:_0x120495,where:_0x3096cc,sort_columns:_0x2a4c1b}=_0x116790;if(!_0x57553e||!_0x1b9892||_0x2e9414['TUDKf'](_0x1b9892['length'],0x0))throw new Error(_0x2e9414[_0x53c0c4(0x179)]);const _0x5c366e=_0x2e9414[_0x53c0c4(0x14c)](_0x57553e['replace'](/\./g,'_'),_0x53c0c4(0x13b));let _0x2c6371;if(_0x120495&&_0x120495['trim']()){let _0x3cf0fb=_0x120495;_0x120495['trim']()['startsWith']('file:')&&(_0x3cf0fb=this[_0x53c0c4(0x199)](_0x120495)),_0x2c6371='WITH\x20'+_0x5c366e+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x3cf0fb+'\x0a)',logger[_0x53c0c4(0x174)]({'event':_0x53c0c4(0x1b5),'query':_0x3cf0fb[_0x53c0c4(0x1ae)](0x0,0x64)},_0x2e9414['OjXsQ']);}else{const _0xe32f92=_0x1b9892['map'](_0x57bec1=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x57bec1)['join'](',');_0x2c6371='WITH\x20'+_0x5c366e+'\x20AS\x20(\x0a\x20\x20\x20\x20SELECT\x20'+_0xe32f92+_0x53c0c4(0x161)+_0x57553e+'\x0a)',logger['info']({'event':_0x2e9414[_0x53c0c4(0x140)],'tableName':_0x57553e,'columnCount':_0x1b9892['length']},'Using\x20auto-generated\x20query');}const _0x36f498=!_0x1b9892||_0x2e9414[_0x53c0c4(0x191)](_0x1b9892[_0x53c0c4(0x170)],0x0)||_0x2e9414[_0x53c0c4(0x191)](_0x1b9892[_0x53c0c4(0x170)],0x1)&&(_0x1b9892[0x0]==='*'||_0x1b9892[0x0]['toLowerCase']()===_0x2e9414['BeYnX']),_0x19b1db=_0x36f498?'*':_0x1b9892['join'](',\x20');_0x2c6371+='\x0aSELECT\x20'+_0x19b1db+'\x0aFROM\x20'+_0x5c366e;if(_0x3096cc){const _0x3431f0=this[_0x53c0c4(0x14b)](_0x3096cc);_0x3431f0&&(_0x2c6371+='\x0aWHERE\x20'+_0x3431f0);}if(_0x2a4c1b&&_0x2a4c1b[_0x53c0c4(0x170)]>0x0){const _0x4cf992=this['buildOrderByClause'](_0x2a4c1b);_0x4cf992&&(_0x2c6371+=_0x53c0c4(0x18b)+_0x4cf992);}logger[_0x53c0c4(0x174)]({'event':_0x2e9414['JJQEp'],'query':_0x2c6371[_0x53c0c4(0x1ae)](0x0,0xc8)},_0x2e9414['MZlBB']);const _0x48fc04=await _0x2e9414['aYRXh'](executeQuery,_0x2c6371);let _0x116417=_0x48fc04;return _0x2e9414[_0x53c0c4(0x191)](dbType,'oracle')&&_0x48fc04&&_0x2e9414[_0x53c0c4(0x164)](_0x48fc04['length'],0x0)&&(_0x116417=_0x48fc04['map'](_0x4b47e4=>{const _0x11bfdf=_0x53c0c4,_0x424c2d={};for(const [_0x31464c,_0x579ca6]of Object[_0x11bfdf(0x168)](_0x4b47e4)){_0x424c2d[_0x31464c[_0x11bfdf(0x173)]()]=_0x579ca6;}return _0x424c2d;})),logger[_0x53c0c4(0x174)]({'event':_0x2e9414[_0x53c0c4(0x1a4)],'rows':_0x116417[_0x53c0c4(0x170)]},_0x53c0c4(0x192)),_0x116417;}catch(_0x1e8238){logError(_0x1e8238,{'event':_0x2e9414['CyiZG']},_0x53c0c4(0x155));throw _0x1e8238;}}[a0_0x52da4a(0x162)](_0x3e7893){const _0x155241=a0_0x52da4a,_0x4d0a11={'iwulJ':function(_0x30e872,_0x2aaf23){return _0x30e872===_0x2aaf23;},'APPJh':'string'};if(_0x4d0a11[_0x155241(0x180)](typeof _0x3e7893,_0x4d0a11[_0x155241(0x142)]))return _0x3e7893[_0x155241(0x143)](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')['trim']();else{if(Array['isArray'](_0x3e7893))return _0x3e7893['map'](_0x460f95=>this['sanitizeValue'](_0x460f95));}return _0x3e7893;}[a0_0x52da4a(0x14b)](_0x115f68){const _0x795eea=a0_0x52da4a,_0x76e616={'cchkc':function(_0x143632,_0x4a0911){return _0x143632===_0x4a0911;},'EgrWj':'string','pcFTQ':function(_0x116f12,_0x3681f1){return _0x116f12||_0x3681f1;},'mxCDo':_0x795eea(0x196),'Xfxdf':function(_0x5038af,_0x5f0935){return _0x5038af===_0x5f0935;},'IaVxN':_0x795eea(0x1ac),'OlkGO':'unknown_operator','ZdbwY':'Unknown\x20operator,\x20using\x20=\x20as\x20default','aVdOb':function(_0x317d60,_0x3297b2){return _0x317d60===_0x3297b2;},'YlsjI':'\x20OR\x20'};if(!_0x115f68||!_0x115f68['conditions']||_0x76e616['Xfxdf'](_0x115f68['conditions'][_0x795eea(0x170)],0x0))return'';const {logic:_0x11bff5,conditions:_0x161364}=_0x115f68,_0x458e2d=_0x11bff5&&_0x76e616['aVdOb'](_0x11bff5[_0x795eea(0x1a5)](),'OR')?_0x76e616['YlsjI']:_0x795eea(0x17e),_0x16b1de=_0x161364[_0x795eea(0x138)](_0x18aed9=>{const _0x397308=_0x795eea,{key:_0x572a23,operator:_0x572950,value:_0x553dfd,sensitive:_0x7a2ce}=_0x18aed9;if(_0x76e616[_0x397308(0x16f)](!_0x572a23,!_0x572950))return logger['warn']({'event':'invalid_condition','condition':_0x18aed9},_0x76e616['mxCDo']),null;const _0x4d5f7c=this['sanitizeValue'](_0x553dfd),_0x5a7cae=_0x7a2ce!==undefined?_0x7a2ce:!![];let _0x34ee39=_0x572a23,_0x18bc14=_0x4d5f7c;!_0x5a7cae&&(_0x34ee39=_0x397308(0x1a0)+_0x572a23+')',_0x76e616['Xfxdf'](typeof _0x553dfd,_0x76e616['EgrWj'])&&(_0x18bc14=_0x553dfd[_0x397308(0x1a5)]()));const _0xa3cfaf=_0x76e616[_0x397308(0x194)](typeof _0x18bc14,'string')?'\x27'+_0x18bc14[_0x397308(0x143)](/'/g,'\x27\x27')+'\x27':_0x18bc14;switch(_0x572950['toUpperCase']()){case'=':case'!=':case'<>':return _0x34ee39+'\x20'+_0x572950+'\x20'+_0xa3cfaf;case'>':case'<':case'>=':case'<=':const _0x1eadb7=typeof _0x4d5f7c===_0x76e616[_0x397308(0x148)]?'\x27'+_0x4d5f7c[_0x397308(0x143)](/'/g,'\x27\x27')+'\x27':_0x4d5f7c;return _0x572a23+'\x20'+_0x572950+'\x20'+_0x1eadb7;case _0x76e616[_0x397308(0x132)]:case'NOT\x20LIKE':return _0x34ee39+'\x20'+_0x572950+'\x20'+_0xa3cfaf;case'IN':if(Array['isArray'](_0x4d5f7c)){let _0xf5c260;return!_0x5a7cae?_0xf5c260=_0x4d5f7c[_0x397308(0x138)](_0x36999f=>{const _0x9422e4=_0x397308,_0x3aa1bb=_0x76e616[_0x9422e4(0x194)](typeof _0x36999f,_0x76e616[_0x9422e4(0x148)])?_0x36999f[_0x9422e4(0x1a5)]():_0x36999f;return typeof _0x3aa1bb===_0x76e616['EgrWj']?'\x27'+_0x3aa1bb[_0x9422e4(0x143)](/'/g,'\x27\x27')+'\x27':_0x3aa1bb;})[_0x397308(0x15b)](',\x20'):_0xf5c260=_0x4d5f7c['map'](_0x47ae05=>typeof _0x47ae05==='string'?'\x27'+_0x47ae05[_0x397308(0x143)](/'/g,'\x27\x27')+'\x27':_0x47ae05)['join'](',\x20'),_0x34ee39+'\x20IN\x20('+_0xf5c260+')';}return _0x34ee39+'\x20IN\x20('+_0xa3cfaf+')';case _0x397308(0x1b3):return _0x572a23+'\x20IS\x20NULL';case _0x397308(0x1a7):return _0x572a23+_0x397308(0x14f);default:logger[_0x397308(0x152)]({'event':_0x76e616['OlkGO'],'operator':_0x572950},_0x76e616[_0x397308(0x150)]);return _0x34ee39+'\x20=\x20'+_0xa3cfaf;}})[_0x795eea(0x144)](_0x106c40=>_0x106c40!==null);if(_0x16b1de['length']===0x0)return'';return _0x16b1de[_0x795eea(0x15b)](_0x458e2d);}['buildOrderByClause'](_0x3cebda){const _0x451c43=a0_0x52da4a,_0x447c6f={'PgMpU':'invalid_order','GczVJ':'DESC','sLCLU':function(_0x5662da,_0x1f5161){return _0x5662da===_0x1f5161;}};if(!_0x3cebda||_0x447c6f[_0x451c43(0x1c4)](_0x3cebda['length'],0x0))return'';const _0x26e96=_0x3cebda[_0x451c43(0x138)](_0x4003f9=>{const _0x121322=_0x451c43,{column:_0x1f414a,direction:_0xec8a53}=_0x4003f9;if(!_0x1f414a)return logger[_0x121322(0x152)]({'event':_0x447c6f[_0x121322(0x1b1)],'item':_0x4003f9},_0x121322(0x18e)),null;const _0x5c4a3c=_0xec8a53&&_0xec8a53[_0x121322(0x1a5)]()===_0x447c6f['GczVJ']?'DESC':_0x121322(0x18c);return _0x1f414a+'\x20'+_0x5c4a3c;})['filter'](_0x2957a3=>_0x2957a3!==null);if(_0x26e96[_0x451c43(0x170)]===0x0)return'';return _0x26e96[_0x451c43(0x15b)](',\x20');}async['generateExcel'](_0x327f52,_0xb6a77a,_0x45c614){const _0xed08c8=a0_0x52da4a,_0x583509={'IyVZH':function(_0x3a08de,_0x3b5e40){return _0x3a08de/_0x3b5e40;},'YGamW':function(_0x77d65b,_0x11fcd4){return _0x77d65b(_0x11fcd4);},'uynoh':function(_0x1351e0,_0x1a1bb3){return _0x1351e0===_0x1a1bb3;},'epnjQ':'all','kEJKz':'excel_columns_select_all','TThid':function(_0x39bde3,_0x3b2745){return _0x39bde3>_0x3b2745;},'kvSGZ':'excel_columns_from_config'},_0x35d067=_0x583509['YGamW'](require,_0xed08c8(0x16d)),_0x41c918=new _0x35d067(),_0x2f71ab=_0x45c614[_0xed08c8(0x18a)]?_0x45c614[_0xed08c8(0x18a)]+'-'+_0x327f52:'export-'+_0x327f52,_0x37e3f7=path['join'](this['exportDir'],_0x2f71ab+_0xed08c8(0x1c5));let _0x52d700=_0x45c614[_0xed08c8(0x19d)];const _0x577705=_0x52d700&&_0x52d700['length']===0x1&&(_0x583509[_0xed08c8(0x15d)](_0x52d700[0x0],'*')||_0x52d700[0x0][_0xed08c8(0x173)]()===_0x583509['epnjQ']);if(_0xb6a77a[_0xed08c8(0x170)]>0x0){const _0x885b9c=Object['keys'](_0xb6a77a[0x0]);if(_0x577705)_0x52d700=_0x885b9c,logger[_0xed08c8(0x174)]({'event':_0x583509[_0xed08c8(0x1bb)],'columns':_0x52d700},'Using\x20all\x20'+_0x52d700['length']+_0xed08c8(0x172));else{if(_0x52d700&&_0x52d700[_0xed08c8(0x170)]>0x0){const _0x3e30f9=_0x52d700['filter'](_0x11a922=>_0x885b9c['includes'](_0x11a922));_0x583509['TThid'](_0x3e30f9[_0xed08c8(0x170)],0x0)?(_0x52d700=_0x3e30f9,logger[_0xed08c8(0x174)]({'event':'excel_columns_from_request','requestedColumns':_0x45c614[_0xed08c8(0x19d)],'validColumns':_0x52d700},'Using\x20'+_0x52d700['length']+_0xed08c8(0x131))):(_0x52d700=_0x885b9c,logger['warn']({'event':'excel_columns_fallback','requestedColumns':_0x45c614['columns'],'availableColumns':_0x885b9c},'Requested\x20columns\x20not\x20found\x20in\x20data,\x20using\x20all\x20'+_0x885b9c[_0xed08c8(0x170)]+_0xed08c8(0x188)));}else _0x52d700=_0x885b9c,logger[_0xed08c8(0x174)]({'event':'excel_columns_from_query_result','columns':_0x52d700},'Using\x20'+_0x52d700[_0xed08c8(0x170)]+'\x20columns\x20from\x20query\x20result');}}else logger[_0xed08c8(0x174)]({'event':_0x583509[_0xed08c8(0x1be)],'columns':_0x52d700},_0xed08c8(0x1bd)+(_0x52d700?.[_0xed08c8(0x170)]||0x0)+_0xed08c8(0x1c7));return await _0x41c918[_0xed08c8(0x19f)]({'data':_0xb6a77a,'columns':_0x52d700,'columnFormats':_0x45c614['columnFormats']||null,'fieldLabels':_0x45c614[_0xed08c8(0x13c)]||null,'filePath':_0x37e3f7,'onProgress':async _0x13ccca=>{const _0x110e11=_0xed08c8;await redisHelper[_0x110e11(0x17c)](_0x327f52,{'progress':Math['round'](_0x13ccca),'processed_rows':Math[_0x110e11(0x189)](_0x583509[_0x110e11(0x1c2)](_0x13ccca,0x64)*_0xb6a77a[_0x110e11(0x170)])});}}),_0x37e3f7;}async['getFilePath'](_0x3d681b){const _0x18d53c=a0_0x52da4a,_0x12871e={'SVFun':function(_0x1d36af,_0xe04a7d){return _0x1d36af!==_0xe04a7d;},'kZaYz':function(_0x42564f,_0x3cdc1a,_0x475b12,_0x395120){return _0x42564f(_0x3cdc1a,_0x475b12,_0x395120);}},_0x2ccee0=await redisHelper[_0x18d53c(0x136)](_0x3d681b);if(!_0x2ccee0||_0x12871e['SVFun'](_0x2ccee0[_0x18d53c(0x14d)],_0x18d53c(0x17f)))return null;try{return await fs['access'](_0x2ccee0['file_path']),_0x2ccee0[_0x18d53c(0x163)];}catch(_0x4f7b24){return _0x12871e['kZaYz'](logError,_0x4f7b24,{'event':_0x18d53c(0x1b2),'jobId':_0x3d681b,'path':_0x2ccee0[_0x18d53c(0x163)]},_0x18d53c(0x184)),null;}}async['cleanup'](){const _0x3f81ba=a0_0x52da4a,_0x2d25b8={'TucKH':'export_cleanup_start','qlChM':function(_0x499dab,_0x4261b6){return _0x499dab/_0x4261b6;},'gNJrm':function(_0x3ab21d,_0x48c24d){return _0x3ab21d*_0x48c24d;},'qRrlG':_0x3f81ba(0x1b0),'PVAdh':_0x3f81ba(0x15c),'kpQnr':'Failed\x20to\x20delete\x20export\x20file','grYYW':_0x3f81ba(0x166)};logger[_0x3f81ba(0x174)]({'event':_0x2d25b8['TucKH']},_0x3f81ba(0x1c8));const _0x199377=await redisHelper[_0x3f81ba(0x154)]();let _0x306b04=0x0;for(const _0xcab2d4 of _0x199377){const _0x166554=new Date(_0xcab2d4[_0x3f81ba(0x1a8)]),_0x51f75f=new Date(),_0x25c533=_0x2d25b8['qlChM'](_0x51f75f-_0x166554,_0x2d25b8['gNJrm'](0x3e8*0x3c,0x3c));if(_0x25c533>0x1){if(_0xcab2d4['file_path'])try{await fs[_0x3f81ba(0x186)](_0xcab2d4[_0x3f81ba(0x163)]),logger['info']({'event':_0x2d25b8['qRrlG'],'path':_0xcab2d4[_0x3f81ba(0x163)]},_0x2d25b8[_0x3f81ba(0x175)]);}catch(_0x4c4d7c){logger[_0x3f81ba(0x152)]({'event':_0x3f81ba(0x17b),'path':_0xcab2d4['file_path'],'error':_0x4c4d7c[_0x3f81ba(0x181)]},_0x2d25b8[_0x3f81ba(0x1c0)]);}await redisHelper[_0x3f81ba(0x14a)](_0xcab2d4[_0x3f81ba(0x176)]),_0x306b04++;}}return logger[_0x3f81ba(0x174)]({'event':_0x2d25b8['grYYW'],'deleted':_0x306b04},_0x3f81ba(0x19b)),_0x306b04;}}module[a0_0x52da4a(0x1a9)]=new ExportService();
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 +1 @@
1
- const a0_0x54c0b6=a0_0x5517;(function(_0x59ccd4,_0x52a50a){const _0x157182=a0_0x5517,_0x36dde0=_0x59ccd4();while(!![]){try{const _0x2f8121=-parseInt(_0x157182(0x16d))/0x1+parseInt(_0x157182(0x154))/0x2+parseInt(_0x157182(0x167))/0x3*(-parseInt(_0x157182(0x177))/0x4)+-parseInt(_0x157182(0x15c))/0x5+parseInt(_0x157182(0x175))/0x6+parseInt(_0x157182(0x172))/0x7+-parseInt(_0x157182(0x17a))/0x8;if(_0x2f8121===_0x52a50a)break;else _0x36dde0['push'](_0x36dde0['shift']());}catch(_0x7beda1){_0x36dde0['push'](_0x36dde0['shift']());}}}(a0_0x2f8c,0xe08f7));function a0_0x5517(_0x32c83a,_0x256d64){_0x32c83a=_0x32c83a-0x154;const _0x2f8c89=a0_0x2f8c();let _0x5517df=_0x2f8c89[_0x32c83a];if(a0_0x5517['DSbJoa']===undefined){var _0x49ad23=function(_0x3c32bf){const _0x4156e5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x45d123='',_0x53508e='';for(let _0x5c093d=0x0,_0x34c2ac,_0x1f6f1c,_0x3d3a30=0x0;_0x1f6f1c=_0x3c32bf['charAt'](_0x3d3a30++);~_0x1f6f1c&&(_0x34c2ac=_0x5c093d%0x4?_0x34c2ac*0x40+_0x1f6f1c:_0x1f6f1c,_0x5c093d++%0x4)?_0x45d123+=String['fromCharCode'](0xff&_0x34c2ac>>(-0x2*_0x5c093d&0x6)):0x0){_0x1f6f1c=_0x4156e5['indexOf'](_0x1f6f1c);}for(let _0x99fa78=0x0,_0x3ea490=_0x45d123['length'];_0x99fa78<_0x3ea490;_0x99fa78++){_0x53508e+='%'+('00'+_0x45d123['charCodeAt'](_0x99fa78)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x53508e);};a0_0x5517['bgDNBP']=_0x49ad23,a0_0x5517['rvgnIO']={},a0_0x5517['DSbJoa']=!![];}const _0x213721=_0x2f8c89[0x0],_0x152f31=_0x32c83a+_0x213721,_0x312e02=a0_0x5517['rvgnIO'][_0x152f31];return!_0x312e02?(_0x5517df=a0_0x5517['bgDNBP'](_0x5517df),a0_0x5517['rvgnIO'][_0x152f31]=_0x5517df):_0x5517df=_0x312e02,_0x5517df;}function a0_0x2f8c(){const _0x25c16a=['ANnVBG','sw52ywXPzcbZB3j0ignVBhvTBG','rgTfr00','DwXorNu','DvfxsNu','ntK2ntK1DKnoBMzR','AxnbCNjHEq','l2v4Cg9YDa','q2XLyw51CcbMywLSzwq','rMfPBgvKihrVigrVD25SB2fKigzPBgu','C3rHDhvZ','y29SDw1U','rMLLBgqGiG','AgvHzgvYC1nLBNq','z2v0rMLSzvbHDgG','zxHWB3j0uxvLCNK','mtCYnZDIzxvezKK','q2XLyw51CcbJB21WBgv0zwq','CMvNAxn0zxjsB3v0zxm','zg93BMXVywq','A2v5','y29UzgL0Aw9UCW','mtC0mdq3mg1wDKztrG','Cg9ZDa','zxHWB3j0x2rVD25SB2fKzwq','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','wfvmC2u','otu0ntK5ogHRBurItG','EgXZEa','rMLSzsbUB3qGCMvHzhKGB3iGBM90igzVDw5KlIbdAgvJAYbQB2iGC3rHDhvZigzPCNn0lG','odKXndmXng9xzLvJyW','z2v0','nJuYEw9srMvh','yuPwAwu','uMvmEum','ndG0otCWnevTAhPMEa','DgfIBgvoyw1L','y29SDw1UrM9YBwf0CW','yMfZzw5HBwu','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDcbMAwXL','CMvNAxn0zxjdBgvHBNvWuM91Dgu','iIbPCYbUB3qGywXSB3DLza','y2XLyw51Cf9LCNjVCG','y29SDw1UCW','weT2rKS','CMvWBgfJzq','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDa','Cgf0Aa','BwvZC2fNzq','BgnpExy','r3f0Efa','yM9KEq','Aw5JBhvKzxm','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','mJK1mde3mgPnCNnLzW','Bg9NAwm','AgfUzgXLrxHWB3j0rg93BMXVywq'];a0_0x2f8c=function(){return _0x25c16a;};return a0_0x2f8c();}const exportService=require('../../services/export-service'),{logger,logError}=require('../../utils/logger'),path=require(a0_0x54c0b6(0x186));class ExportHandler{static[a0_0x54c0b6(0x169)](_0x36426a,_0x26bf0e,_0x30cdf5,_0x286a31){const _0x219ea2=a0_0x54c0b6,_0x16a008={'JstMN':function(_0x4271c8,_0x32da7c,_0x4b32d2,_0x3ad478){return _0x4271c8(_0x32da7c,_0x4b32d2,_0x3ad478);},'lcOyv':'Failed\x20to\x20trigger\x20export','lmOVc':function(_0x4868e4,_0x332303,_0x43c0e9,_0x3a5d91){return _0x4868e4(_0x332303,_0x43c0e9,_0x3a5d91);},'XKvFK':'Failed\x20to\x20get\x20export\x20status','XULse':function(_0x521f2c,_0x4fad92,_0x2d0607,_0x4aef12){return _0x521f2c(_0x4fad92,_0x2d0607,_0x4aef12);},'DuqIK':'export_download_error'},_0x424c21='/api/'+_0x26bf0e+'/'+_0x30cdf5;_0x36426a[_0x219ea2(0x16e)](_0x424c21+_0x219ea2(0x15e),async(_0x45301d,_0x583410)=>{const _0x29de63=_0x219ea2;try{await this['handleExportTrigger'](_0x45301d,_0x583410,_0x286a31,_0x26bf0e,_0x30cdf5);}catch(_0x475b89){_0x16a008['JstMN'](logError,_0x475b89,{'event':'export_trigger_error'},_0x16a008[_0x29de63(0x188)]),_0x583410[_0x29de63(0x161)](0x1f4)['json']({'success':![],'error':_0x475b89['message']});}}),_0x36426a[_0x219ea2(0x176)](_0x424c21+'/export-status',async(_0x5bfe74,_0x321fcd)=>{const _0x4c8166=_0x219ea2;try{await this['handleExportStatus'](_0x5bfe74,_0x321fcd);}catch(_0x5c6e63){_0x16a008['lmOVc'](logError,_0x5c6e63,{'event':'export_status_error'},_0x16a008[_0x4c8166(0x183)]),_0x321fcd['status'](0x1f4)[_0x4c8166(0x157)]({'success':![],'error':_0x5c6e63[_0x4c8166(0x187)]});}}),_0x36426a['get'](_0x424c21+'/export-download',async(_0x1ebb51,_0x5b8118)=>{const _0x55bbec=_0x219ea2;try{await this[_0x55bbec(0x156)](_0x1ebb51,_0x5b8118);}catch(_0x3dfaf8){_0x16a008[_0x55bbec(0x171)](logError,_0x3dfaf8,{'event':_0x16a008['DuqIK']},_0x55bbec(0x185)),!_0x5b8118['headersSent']&&_0x5b8118['status'](0x1f4)[_0x55bbec(0x157)]({'success':![],'error':_0x3dfaf8[_0x55bbec(0x187)]});}});}static async['handleExportTrigger'](_0x2d32cd,_0x5acdc1,_0x54fff1,_0x20df3b,_0xb5314a){const _0x521175=a0_0x54c0b6,_0xe0d743={'aJVie':_0x521175(0x173),'uQWJu':_0x521175(0x158),'ulNFu':function(_0x12d40b,_0x35e272){return _0x12d40b||_0x35e272;},'DkEGM':function(_0x241585,_0x40d5f0){return _0x241585||_0x40d5f0;}},{format:_0x7c4fac,filename:_0x389064,columns:_0x2eac35,where:_0xbef0cc,sort_columns:_0x792985}=_0x2d32cd[_0x521175(0x18a)];if(_0x7c4fac&&_0x7c4fac!==_0xe0d743[_0x521175(0x178)])return _0x5acdc1[_0x521175(0x161)](0x190)[_0x521175(0x157)]({'success':![],'error':'Only\x20xlsx\x20format\x20is\x20supported'});if(_0xbef0cc){if(!_0xbef0cc[_0x521175(0x155)]||!_0xbef0cc['conditions']||!Array[_0x521175(0x15d)](_0xbef0cc['conditions']))return _0x5acdc1['status'](0x190)[_0x521175(0x157)]({'success':![],'error':'Invalid\x20where\x20structure.\x20Expected:\x20{\x20logic:\x20\x22AND|OR\x22,\x20conditions:\x20[...]\x20}'});}if(_0x792985){if(!Array[_0x521175(0x15d)](_0x792985))return _0x5acdc1['status'](0x190)[_0x521175(0x157)]({'success':![],'error':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]'});}const _0x929840=_0x54fff1['columns']||[];if(_0xbef0cc&&Array[_0x521175(0x15d)](_0xbef0cc[_0x521175(0x16c)]))for(const _0x1caf0e of _0xbef0cc['conditions']){if(_0x1caf0e[_0x521175(0x16b)]&&!_0x929840[_0x521175(0x18b)](_0x1caf0e[_0x521175(0x16b)]))return _0x5acdc1['status'](0x190)[_0x521175(0x157)]({'success':![],'error':'Invalid\x20where\x20field','message':_0x521175(0x163)+_0x1caf0e[_0x521175(0x16b)]+_0x521175(0x180),'validFields':_0x929840});}if(Array['isArray'](_0x792985))for(const _0x515126 of _0x792985){if(_0x515126['column']&&!_0x929840['includes'](_0x515126[_0x521175(0x162)]))return _0x5acdc1[_0x521175(0x161)](0x190)['json']({'success':![],'error':_0xe0d743[_0x521175(0x15b)],'message':'Column\x20\x22'+_0x515126['column']+_0x521175(0x180),'validFields':_0x929840});}const _0xb3f443=_0x54fff1[_0x521175(0x17b)][_0x521175(0x184)]('.','-')+'-export',_0x89af62=await exportService['createJob']({'moduleName':_0x20df3b,'endpointName':_0xb5314a,'tableName':_0x54fff1['tableName'],'format':_0xe0d743[_0x521175(0x15a)](_0x7c4fac,_0x521175(0x173)),'filename':_0xe0d743['ulNFu'](_0x389064,_0xb3f443),'columns':_0x2eac35||_0x54fff1[_0x521175(0x182)],'exportQuery':_0x54fff1[_0x521175(0x166)]||null,'columnFormats':_0x54fff1[_0x521175(0x17c)]||null,'fieldLabels':_0x54fff1['fieldLabels']||null,'where':_0xe0d743[_0x521175(0x159)](_0xbef0cc,null),'sort_columns':_0x792985||null});_0x5acdc1[_0x521175(0x157)]({'success':!![],'data':_0x89af62});}static async['handleExportStatus'](_0x3e15,_0x6c79c8){const _0x2026e3=a0_0x54c0b6,{job_id:_0x56c9c2}=_0x3e15['query'];if(!_0x56c9c2)return _0x6c79c8['status'](0x190)[_0x2026e3(0x157)]({'success':![],'error':_0x2026e3(0x18c)});const _0x5e3079=await exportService['getJobStatus'](_0x56c9c2);if(!_0x5e3079['success'])return _0x6c79c8[_0x2026e3(0x161)](0x194)[_0x2026e3(0x157)](_0x5e3079);_0x6c79c8['json'](_0x5e3079);}static async['handleExportDownload'](_0x582d1c,_0x26f42f){const _0x3db391=a0_0x54c0b6,_0x141e65={'ReLyC':'Export\x20file\x20downloaded\x20successfully','EYjNY':'job_id\x20parameter\x20is\x20required'},{job_id:_0x108340}=_0x582d1c['query'];if(!_0x108340)return _0x26f42f['status'](0x190)['json']({'success':![],'error':_0x141e65['EYjNY']});const _0x126c7e=await exportService[_0x3db391(0x165)](_0x108340);if(!_0x126c7e)return _0x26f42f['status'](0x194)[_0x3db391(0x157)]({'success':![],'error':_0x3db391(0x174)});_0x26f42f[_0x3db391(0x16a)](_0x126c7e,''+path[_0x3db391(0x17d)](_0x126c7e),_0xb8e04a=>{const _0x381ab8=_0x3db391;_0xb8e04a?(logError(_0xb8e04a,{'event':_0x381ab8(0x170),'jobId':_0x108340},_0x381ab8(0x17e)),!_0x26f42f[_0x381ab8(0x164)]&&_0x26f42f['status'](0x1f4)['json']({'success':![],'error':_0x381ab8(0x160)})):logger['info']({'event':_0x381ab8(0x16f),'jobId':_0x108340},_0x141e65[_0x381ab8(0x179)]);});}static[a0_0x54c0b6(0x17f)](_0x5c44d0){const _0xf06ee8=a0_0x54c0b6,_0x487178={'hgcJD':function(_0x25037f,_0x3b4422,_0x2b85d2,_0x33e42a){return _0x25037f(_0x3b4422,_0x2b85d2,_0x33e42a);},'GqtxP':_0xf06ee8(0x15f)};_0x5c44d0[_0xf06ee8(0x176)]('/api/admin/export-cleanup',async(_0x303a4b,_0x165174)=>{const _0x20acf0=_0xf06ee8;try{const _0x5ae9e2=await exportService['cleanup']();_0x165174['json']({'success':!![],'data':{'deleted':_0x5ae9e2,'message':_0x20acf0(0x168)}});}catch(_0x4e795b){_0x487178['hgcJD'](logError,_0x4e795b,{'event':_0x20acf0(0x181)},_0x487178[_0x20acf0(0x189)]),_0x165174[_0x20acf0(0x161)](0x1f4)['json']({'success':![],'error':_0x4e795b[_0x20acf0(0x187)]});}});}}module['exports']=ExportHandler;
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;