@restforgejs/platform 5.3.7 → 5.3.9

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 (171) 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/cli/designer.js +1 -1
  5. package/generators/cli/fast-track.js +193 -45
  6. package/generators/cli/init.js +37 -3
  7. package/generators/lib/templates/dashboard-catalog.js +1 -1
  8. package/generators/lib/templates/db-connection-env.js +1 -1
  9. package/generators/lib/templates/dbschema-catalog.js +1 -1
  10. package/generators/lib/templates/field-validation-catalog.js +1 -1
  11. package/generators/lib/templates/mysql-template.js +1 -1
  12. package/generators/lib/templates/oracle-template.js +1 -1
  13. package/generators/lib/templates/postgres-template.js +1 -1
  14. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  15. package/generators/lib/templates/sqlite-template.js +1 -1
  16. package/integrity-manifest.json +18 -18
  17. package/package.json +1 -1
  18. package/scripts/verify-integrity.js +1 -1
  19. package/server.js +1 -1
  20. package/src/components/handlers/adjust_handler.js +1 -1
  21. package/src/components/handlers/audit_handler.js +1 -1
  22. package/src/components/handlers/delete_handler.js +1 -1
  23. package/src/components/handlers/export_handler.js +1 -1
  24. package/src/components/handlers/import_handler.js +1 -1
  25. package/src/components/handlers/insert_handler.js +1 -1
  26. package/src/components/handlers/update_handler.js +1 -1
  27. package/src/components/handlers/upload_handler.js +1 -1
  28. package/src/components/handlers/workflow_handler.js +1 -1
  29. package/src/components/integrations/webhook.js +1 -1
  30. package/src/consumers/baseConsumer.js +1 -1
  31. package/src/consumers/declarativeMapper.js +1 -1
  32. package/src/consumers/handlers/apiHandler.js +1 -1
  33. package/src/consumers/handlers/consoleHandler.js +1 -1
  34. package/src/consumers/handlers/databaseHandler.js +1 -1
  35. package/src/consumers/handlers/index.js +1 -1
  36. package/src/consumers/handlers/kafkaHandler.js +1 -1
  37. package/src/consumers/index.js +1 -1
  38. package/src/consumers/messageTransformer.js +1 -1
  39. package/src/consumers/validator.js +1 -1
  40. package/src/core/db/dialect/base-dialect.js +1 -1
  41. package/src/core/db/dialect/index.js +1 -1
  42. package/src/core/db/dialect/mysql-dialect.js +1 -1
  43. package/src/core/db/dialect/oracle-dialect.js +1 -1
  44. package/src/core/db/dialect/postgres-dialect.js +1 -1
  45. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  46. package/src/core/db/flatten-helper.js +1 -1
  47. package/src/core/db/query-builder-error.js +1 -1
  48. package/src/core/db/query-builder.js +1 -1
  49. package/src/core/db/relation-helper.js +1 -1
  50. package/src/core/handlers/delete_handler.js +1 -1
  51. package/src/core/handlers/insert_handler.js +1 -1
  52. package/src/core/handlers/update_handler.js +1 -1
  53. package/src/core/models/base-model.js +1 -1
  54. package/src/core/utils/cache-manager.js +1 -1
  55. package/src/core/utils/component-engine.js +1 -1
  56. package/src/core/utils/context-builder.js +1 -1
  57. package/src/core/utils/datetime-formatter.js +1 -1
  58. package/src/core/utils/datetime-parser.js +1 -1
  59. package/src/core/utils/db.js +1 -1
  60. package/src/core/utils/logger.js +1 -1
  61. package/src/core/utils/payload-loader.js +1 -1
  62. package/src/core/utils/security-checks.js +1 -1
  63. package/src/middleware/body-options.js +1 -1
  64. package/src/middleware/cors.js +1 -1
  65. package/src/middleware/idempotency.js +1 -1
  66. package/src/middleware/rate-limiter.js +1 -1
  67. package/src/middleware/request-logger.js +1 -1
  68. package/src/middleware/security-headers.js +1 -1
  69. package/src/models/base-model-mysql.js +1 -1
  70. package/src/models/base-model-oracle.js +1 -1
  71. package/src/models/base-model-sqlite.js +1 -1
  72. package/src/models/base-model.js +1 -1
  73. package/src/pro/caching/redis-client.js +1 -1
  74. package/src/pro/caching/redis-helper.js +1 -1
  75. package/src/pro/consumers/baseConsumer.js +1 -1
  76. package/src/pro/consumers/declarativeMapper.js +1 -1
  77. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  78. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  79. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  80. package/src/pro/consumers/handlers/index.js +1 -1
  81. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  82. package/src/pro/consumers/index.js +1 -1
  83. package/src/pro/consumers/messageTransformer.js +1 -1
  84. package/src/pro/consumers/validator.js +1 -1
  85. package/src/pro/database/base-model-mysql.js +1 -1
  86. package/src/pro/database/base-model-oracle.js +1 -1
  87. package/src/pro/database/base-model-sqlite.js +1 -1
  88. package/src/pro/database/db-mysql.js +1 -1
  89. package/src/pro/database/db-oracle.js +1 -1
  90. package/src/pro/database/db-sqlite.js +1 -1
  91. package/src/pro/excel/excel-generator.js +1 -1
  92. package/src/pro/excel/excel-parser.js +1 -1
  93. package/src/pro/excel/export-service.js +1 -1
  94. package/src/pro/excel/export_handler.js +1 -1
  95. package/src/pro/excel/import-service.js +1 -1
  96. package/src/pro/excel/import-validator.js +1 -1
  97. package/src/pro/excel/import_handler.js +1 -1
  98. package/src/pro/excel/upsert-builder.js +1 -1
  99. package/src/pro/idgen/idgen-routes.js +1 -1
  100. package/src/pro/integrations/lookup-resolver.js +1 -1
  101. package/src/pro/integrations/upload-handler-v2.js +1 -1
  102. package/src/pro/integrations/upload-handler.js +1 -1
  103. package/src/pro/integrations/webhook.js +1 -1
  104. package/src/pro/locking/lock-routes.js +1 -1
  105. package/src/pro/locking/resource-lock-manager.js +1 -1
  106. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  107. package/src/pro/messaging/kafkaService.js +1 -1
  108. package/src/pro/messaging/messagehubService.js +1 -1
  109. package/src/pro/messaging/rabbitmqService.js +1 -1
  110. package/src/pro/scheduler/job-manager.js +1 -1
  111. package/src/pro/scheduler/job-routes.js +1 -1
  112. package/src/pro/scheduler/job-validator.js +1 -1
  113. package/src/pro/storage/base-storage-provider.js +1 -1
  114. package/src/pro/storage/file-metadata-helper.js +1 -1
  115. package/src/pro/storage/index.js +1 -1
  116. package/src/pro/storage/local-storage-provider.js +1 -1
  117. package/src/pro/storage/s3-storage-provider.js +1 -1
  118. package/src/pro/storage/upload-cleanup-job.js +1 -1
  119. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  120. package/src/pro/storage/upload-pending-tracker.js +1 -1
  121. package/src/pro/websocket/broadcast-helper.js +1 -1
  122. package/src/pro/websocket/index.js +1 -1
  123. package/src/pro/websocket/livesync-server.js +1 -1
  124. package/src/pro/websocket/ws-broadcaster.js +1 -1
  125. package/src/services/export-service.js +1 -1
  126. package/src/services/import-service.js +1 -1
  127. package/src/services/kafkaConsumerService.js +1 -1
  128. package/src/services/kafkaService.js +1 -1
  129. package/src/services/messagehubService.js +1 -1
  130. package/src/services/rabbitmqService.js +1 -1
  131. package/src/utils/cache-invalidation-registry.js +1 -1
  132. package/src/utils/cache-manager.js +1 -1
  133. package/src/utils/component-engine.js +1 -1
  134. package/src/utils/config-extractor.js +1 -1
  135. package/src/utils/consumerLogger.js +1 -1
  136. package/src/utils/context-builder.js +1 -1
  137. package/src/utils/dashboard-helpers.js +1 -1
  138. package/src/utils/dateHelper.js +1 -1
  139. package/src/utils/datetime-formatter.js +1 -1
  140. package/src/utils/datetime-parser.js +1 -1
  141. package/src/utils/db-bootstrap.js +1 -1
  142. package/src/utils/db-mysql.js +1 -1
  143. package/src/utils/db-oracle.js +1 -1
  144. package/src/utils/db-sqlite.js +1 -1
  145. package/src/utils/db.js +1 -1
  146. package/src/utils/demo-generator.js +1 -1
  147. package/src/utils/excel-generator.js +1 -1
  148. package/src/utils/excel-parser.js +1 -1
  149. package/src/utils/file-watcher.js +1 -1
  150. package/src/utils/id-generator.js +1 -1
  151. package/src/utils/idempotency-manager.js +1 -1
  152. package/src/utils/import-validator.js +1 -1
  153. package/src/utils/license-client.js +1 -1
  154. package/src/utils/lock-manager.js +1 -1
  155. package/src/utils/logger.js +1 -1
  156. package/src/utils/lookup-resolver.js +1 -1
  157. package/src/utils/payload-loader.js +1 -1
  158. package/src/utils/processor-response.js +1 -1
  159. package/src/utils/rabbitmq.js +1 -1
  160. package/src/utils/redis-client.js +1 -1
  161. package/src/utils/redis-helper.js +1 -1
  162. package/src/utils/request-scope.js +1 -1
  163. package/src/utils/security-checks.js +1 -1
  164. package/src/utils/service-resolver.js +1 -1
  165. package/src/utils/shutdown-coordinator.js +1 -1
  166. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  167. package/src/utils/sql-table-extractor.js +1 -1
  168. package/src/utils/trusted-keys.js +1 -1
  169. package/src/utils/upload-handler.js +1 -1
  170. package/src/utils/upsert-builder.js +1 -1
  171. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x588328=a0_0x1d16;function a0_0xfe20(){const _0x65c90c=['yxDRtMW','zxHPDa','sxLWvei','y0jrq2W','y2XVC2vqB29S','zxHLy3v0zq','rejFue9ptf9usu1ft1vu','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbZDwrHAcbHzge','rejFse9tva','BgfZDfjVD2LK','y29UBMvJDgLVBNnpCgvU','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','mti0ndeZAwrXv0zg','sM9vwLC','r0HZC2O','u05UCK4','t3jHy2XLihrYyw5Zywn0Aw9UignVBw1PDhrLzcaO','zMv0y2HbC1n0CMLUzW','CM93CW','BgvUz3rO','C2HYwM4','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','DgvZDenVBM5Ly3rPB24','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','B3jHy2XL','Bw9ruLu','y3jLyxrLug9VBa','u0Lhsu5u','EKTstMK','B3jHy2XLx2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','C3fS','EfjkENu','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','CM9SBgjHy2TFzxjYB3i','q3jLyxrPBMCGt3jHy2XLignVBM5Ly3rPB24GCg9VBc4UlG','EezYzhK','mteWode4mZnorK5luLu','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','BNnVq1q','ChvZAa','B3jHy2XLx3bVB2XFzxjYB3i','D3fIB0S','z2v0q29UBMvJDgLVBG','qwn0AxzL','zxHWB3j0CW','x25SC1jLywr5','u0vmrunuifnzu0rbveuGyxmGy3vYCMvUDf9KyxrLlcbvu0vsigfZign1CNjLBNrFDxnLCIbguK9niervquW','Aw5PDgLHBgL6zvbVB2W','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBJOG','D2vZtLO','B3jHy2XLx3bVB2XFy2XVC2vK','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','Aw5MBW','tKnmt0i','AvHpEgi','u0vhCeC','odK1mdeWtu1xEwDr','y29UBMvJDgLVBNnjBLvZzq','rejFvvnfuG','mtK4oti5mJHHwK9mtLu','zw52','Cg9VBe1PBG','t1vux0zpuK1bvf9pqKPfq1q','DhjHBNnHy3rPB25Fy29TCgXLDgu','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDwnJzxnZ','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','Cg9VBa','zxjYB3joDw0','uvDgrNK','sMDyqwm','t3jHy2XLienVBM5Ly3rPB24Gu3rYAw5NoIa','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','BNvcB1C','B3jHy2XLx3nODxrKB3DU','Bg9JywXOB3n0','B3jHy2XLx3bVB2XFy3jLyxrPBMC','DLriDxq','quXurviGu0vtu0LptIbtrvqGtKXtx0rbvevFrK9stufuid0Gj1LzwvKTtu0TreqN','y2XVC2u','uKvjugC','BwvZC2fNzq','y29TBwL0','nMfvBurntG','rejFue9sva','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','ntaYodG2mg9uB1PgCW','rejFueftu1DpuKq','mtiZotu3otjjvvPqDhi','rejFue9ptf9nsu4','y29UzMLN','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','z2v0ug9VBfn0yxrPC3rPy3m','u0Lhvevstq','odjRrevPBhq','mta0B1HIq1r2','ovfxsfL6Aa','Cg9VBeLUy3jLBwvUDa','mJi3mJK1z3nlrwzV','qvvXzeu','rejFtKfnrq','yxv0B0nVBw1PDa','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJCMvHDgvKihn1y2nLC3nMDwXSEq','ug9VBcbUB3qGAw5PDgLHBgL6zwq'];a0_0xfe20=function(){return _0x65c90c;};return a0_0xfe20();}(function(_0x359c9d,_0x700574){const _0x44a5be=a0_0x1d16,_0x9e88a=_0x359c9d();while(!![]){try{const _0x1d9cd8=-parseInt(_0x44a5be(0x9e))/0x1+parseInt(_0x44a5be(0xc3))/0x2*(-parseInt(_0x44a5be(0x72))/0x3)+parseInt(_0x44a5be(0xc4))/0x4*(parseInt(_0x44a5be(0xc7))/0x5)+parseInt(_0x44a5be(0xb8))/0x6*(-parseInt(_0x44a5be(0x8a))/0x7)+parseInt(_0x44a5be(0xbd))/0x8+parseInt(_0x44a5be(0xc5))/0x9*(parseInt(_0x44a5be(0xbb))/0xa)+parseInt(_0x44a5be(0xa1))/0xb;if(_0x1d9cd8===_0x700574)break;else _0x9e88a['push'](_0x9e88a['shift']());}catch(_0x2ac0df){_0x9e88a['push'](_0x9e88a['shift']());}}}(a0_0xfe20,0xd302e));const oracledb=require('oracledb'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');oracledb[a0_0x588328(0x77)]=[oracledb['CLOB'],oracledb[a0_0x588328(0x9b)]],oracledb['fetchAsBuffer']=[oracledb['BLOB']];function a0_0x1d16(_0x2519ab,_0xe65195){_0x2519ab=_0x2519ab-0x65;const _0xfe206e=a0_0xfe20();let _0x1d16b1=_0xfe206e[_0x2519ab];if(a0_0x1d16['OibBvZ']===undefined){var _0x5e50b=function(_0x31b17e){const _0x4b1501='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5d2527='',_0x2498e4='';for(let _0x21ba47=0x0,_0x15f439,_0x3de589,_0x14d43f=0x0;_0x3de589=_0x31b17e['charAt'](_0x14d43f++);~_0x3de589&&(_0x15f439=_0x21ba47%0x4?_0x15f439*0x40+_0x3de589:_0x3de589,_0x21ba47++%0x4)?_0x5d2527+=String['fromCharCode'](0xff&_0x15f439>>(-0x2*_0x21ba47&0x6)):0x0){_0x3de589=_0x4b1501['indexOf'](_0x3de589);}for(let _0x2daee3=0x0,_0x246cc3=_0x5d2527['length'];_0x2daee3<_0x246cc3;_0x2daee3++){_0x2498e4+='%'+('00'+_0x5d2527['charCodeAt'](_0x2daee3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2498e4);};a0_0x1d16['GdDUOk']=_0x5e50b,a0_0x1d16['TwUWrH']={},a0_0x1d16['OibBvZ']=!![];}const _0x2f2df0=_0xfe206e[0x0],_0x4da6b8=_0x2519ab+_0x2f2df0,_0x22d95d=a0_0x1d16['TwUWrH'][_0x4da6b8];return!_0x22d95d?(_0x1d16b1=a0_0x1d16['GdDUOk'](_0x1d16b1),a0_0x1d16['TwUWrH'][_0x4da6b8]=_0x1d16b1):_0x1d16b1=_0x22d95d,_0x1d16b1;}async function ensureNlsReady(_0xdc1a37){const _0x42e07e=a0_0x588328;if(_0xdc1a37[_0x42e07e(0x93)])return;await _0xdc1a37[_0x42e07e(0x6b)](_0x42e07e(0xb3)),await _0xdc1a37['execute'](_0x42e07e(0xc0)),await _0xdc1a37[_0x42e07e(0x6b)](_0x42e07e(0x71)),_0xdc1a37['_nlsReady']=!![];}class OracleDatabase{constructor(){const _0x5996a1=a0_0x588328,_0x445a0c={'NtRXI':'localhost','wqboK':'1521','DigWm':'oracle'};this['pool']=null,this['config']={'user':process[_0x5996a1(0xa2)][_0x5996a1(0xa0)]||'hr','password':process['env'][_0x5996a1(0xbc)]||'hr','connectString':this[_0x5996a1(0x86)](),'poolMin':parseInt(process[_0x5996a1(0xa2)][_0x5996a1(0xbe)])||0x2,'poolMax':parseInt(process['env']['DB_POOL_MAX'])||0xa,'poolIncrement':parseInt(process[_0x5996a1(0xa2)]['DB_POOL_INCREMENT'])||0x1,'poolTimeout':parseInt(process['env'][_0x5996a1(0x6c)])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb['CLOB'],oracledb[_0x5996a1(0x9b)]],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process[_0x5996a1(0xa2)][_0x5996a1(0x6e)]||_0x445a0c['NtRXI'],'port':process[_0x5996a1(0xa2)][_0x5996a1(0xb9)]||_0x445a0c[_0x5996a1(0x8f)],'database':process['env'][_0x5996a1(0xc9)]||'XE','type':_0x445a0c['DigWm'],'user':this[_0x5996a1(0xbf)]['user'],'poolMin':this[_0x5996a1(0xbf)][_0x5996a1(0xa3)],'poolMax':this['config']['poolMax']});}[a0_0x588328(0x86)](){const _0xd7d2f4=a0_0x588328,_0x8decf7={'vrtsR':_0xd7d2f4(0xb0),'AUqdE':'1521'},_0x647ea2=process['env'][_0xd7d2f4(0x6e)]||_0x8decf7['vrtsR'],_0x3bb951=process[_0xd7d2f4(0xa2)]['DB_PORT']||_0x8decf7[_0xd7d2f4(0xc8)],_0x330b50=process['env']['DB_NAME']||'XE',_0xac334c='//'+_0x647ea2+':'+_0x3bb951+'/'+_0x330b50;return logger['debug']({'event':'oracle_connection_string','connectionString':_0xac334c},_0xd7d2f4(0xac)+_0xac334c),_0xac334c;}async[a0_0x588328(0x95)](){const _0x903cd5=a0_0x588328,_0x49db20={'ietEZ':'oracle_pool_exists','cBQCl':function(_0x2078c3,_0x3750ea,_0x3f59bf,_0x13fe7e){return _0x2078c3(_0x3750ea,_0x3f59bf,_0x13fe7e);}};try{if(this[_0x903cd5(0xa8)]){logger['debug']({'event':_0x49db20['ietEZ']},_0x903cd5(0x6d));return;}logger[_0x903cd5(0x9a)]({'event':_0x903cd5(0xb1)},_0x903cd5(0x88)),this[_0x903cd5(0xa8)]=await oracledb[_0x903cd5(0x80)](this['config']),logger[_0x903cd5(0x9a)]({'event':'oracle_pool_created'},_0x903cd5(0xcb)),await this[_0x903cd5(0x7c)]();}catch(_0x46c538){_0x49db20[_0x903cd5(0x69)](logError,_0x46c538,{'event':_0x903cd5(0x8e)},'Error\x20saat\x20membuat\x20Oracle\x20connection\x20pool:\x20'+_0x46c538[_0x903cd5(0xb6)]);throw _0x46c538;}}async['testConnection'](){const _0x35b6b7=a0_0x588328,_0x489290={'JYJHG':'oracle_connection_test_start','jfFcA':'Testing\x20Oracle\x20database\x20connection...','GHssj':function(_0x162902,_0x29d2fc){return _0x162902(_0x29d2fc);},'iXPVO':_0x35b6b7(0xa6),'JoUZW':function(_0x142cfc,_0x4a02ed,_0x2b1b7e,_0x4c553d){return _0x142cfc(_0x4a02ed,_0x2b1b7e,_0x4c553d);},'kSQgz':'oracle_connection_test_failed'};let _0x1480e8;try{logger['debug']({'event':_0x489290['JYJHG']},_0x489290['jfFcA']),_0x1480e8=await this['pool'][_0x35b6b7(0x90)](),await _0x489290[_0x35b6b7(0x74)](ensureNlsReady,_0x1480e8);const _0x11c96f=await _0x1480e8['execute'](_0x35b6b7(0x94));logger['info']({'event':_0x489290['iXPVO'],'currentDate':_0x11c96f['rows'][0x0][0x0],'currentUser':_0x11c96f['rows'][0x0][0x1]},_0x35b6b7(0x7b)+_0x11c96f[_0x35b6b7(0x78)][0x0][0x1]);}catch(_0xbb2c55){_0x489290[_0x35b6b7(0x73)](logError,_0xbb2c55,{'event':_0x489290['kSQgz']},_0x35b6b7(0xba)+_0xbb2c55['message']);throw _0xbb2c55;}finally{if(_0x1480e8)try{await _0x1480e8['close']();}catch(_0x361652){logError(_0x361652,{'event':'oracle_test_connection_close_error'},'Error\x20closing\x20test\x20connection:\x20'+_0x361652[_0x35b6b7(0xb6)]);}}}async['executeQuery'](_0x203d9f,_0x611dc4=[],_0x167c44={}){const _0xd1a6a9=a0_0x588328,_0x304b61={'cBLsn':function(_0x2c87bf){return _0x2c87bf();},'shrZn':function(_0x225f18,_0x5885ec){return _0x225f18!==_0x5885ec;},'JgXAc':_0xd1a6a9(0x7e),'zURjP':'sql_error','moQRU':function(_0x44e7d0,_0x3568cc,_0x5ec510,_0x10d75f){return _0x44e7d0(_0x3568cc,_0x5ec510,_0x10d75f);},'kwMhE':_0xd1a6a9(0x83)};let _0x359258;const _0x5a9180=_0x304b61['cBLsn'](startQueryTimer);try{!this[_0xd1a6a9(0xa8)]&&await this['initializePool']();_0x359258=await this[_0xd1a6a9(0xa8)][_0xd1a6a9(0x90)](),await ensureNlsReady(_0x359258);const _0x16d374={'outFormat':oracledb[_0xd1a6a9(0xa4)],'autoCommit':_0x304b61[_0xd1a6a9(0x7a)](_0x167c44['autoCommit'],undefined)?_0x167c44[_0xd1a6a9(0xca)]:!![],..._0x167c44},_0x2d02a6=await _0x359258['execute'](_0x203d9f,_0x611dc4,_0x16d374),_0x52cfc1=_0x5a9180(),_0x277f26=_0x2d02a6['rows']?_0x2d02a6['rows']['length']:_0x2d02a6['rowsAffected'];return logQuery(_0x203d9f,_0x611dc4,{'duration':_0x52cfc1,'rowsAffected':_0x277f26,'dbType':_0x304b61[_0xd1a6a9(0xab)]}),_0x2d02a6['rows']?_0x2d02a6['rows']:{'rowsAffected':_0x2d02a6['rowsAffected'],'lastRowid':_0x2d02a6[_0xd1a6a9(0x6f)]};}catch(_0x1811c5){const _0x4bf0a8=_0x5a9180();logError(_0x1811c5,{'event':_0x304b61['zURjP'],'query':_0x203d9f['substring'](0x0,0x1f4),'paramCount':_0x611dc4['length'],'durationMs':_0x4bf0a8,'code':_0x1811c5[_0xd1a6a9(0xa9)],'dbType':_0x304b61[_0xd1a6a9(0xab)]},'Oracle\x20SQL\x20Error:\x20'+_0x1811c5[_0xd1a6a9(0xb6)]);throw _0x1811c5;}finally{if(_0x359258)try{await _0x359258['close']();}catch(_0x5f4df0){_0x304b61[_0xd1a6a9(0x7f)](logError,_0x5f4df0,{'event':_0x304b61['kwMhE']},_0xd1a6a9(0x96)+_0x5f4df0[_0xd1a6a9(0xb6)]);}}}async['executeTransaction'](_0x273de9){const _0x336fc7=a0_0x588328,_0x12e9f6={'ingQF':function(_0x5c75a9){return _0x5c75a9();},'SNnrN':function(_0xddf3df,_0x1719ff){return _0xddf3df(_0x1719ff);},'iXOxb':function(_0x1097f0,_0x495379,_0x16c865){return _0x1097f0(_0x495379,_0x16c865);},'SqCQt':function(_0x5e7b90,_0xbbba47,_0x3835b3,_0x339286){return _0x5e7b90(_0xbbba47,_0x3835b3,_0x339286);},'awkNl':'oracle','IypTB':function(_0x3b8336,_0x20e3fc,_0x401615){return _0x3b8336(_0x20e3fc,_0x401615);},'xRJzu':_0x336fc7(0xa5),'REIPg':function(_0x36b0e7){return _0x36b0e7();},'SEGpG':'transaction_error','nuBoW':'rollback'};let _0x23bb83;const _0x5d23e1=_0x12e9f6['ingQF'](startQueryTimer);try{!this[_0x336fc7(0xa8)]&&await this[_0x336fc7(0x95)]();_0x23bb83=await this[_0x336fc7(0xa8)]['getConnection'](),await _0x12e9f6[_0x336fc7(0x75)](ensureNlsReady,_0x23bb83),_0x12e9f6[_0x336fc7(0x9c)](logTransaction,'start',_0x273de9['length']);const _0x30769c=[];for(const _0xd4e8dd of _0x273de9){const _0x4aafa2=_0x12e9f6['ingQF'](startQueryTimer),_0xade2f4=await _0x23bb83['execute'](_0xd4e8dd[_0x336fc7(0x84)],_0xd4e8dd['params']||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x3f475b=_0x4aafa2(),_0x503621=_0xade2f4['rows']?_0xade2f4['rows'][_0x336fc7(0x79)]:_0xade2f4['rowsAffected'];_0x12e9f6['SqCQt'](logQuery,_0xd4e8dd['sql'],_0xd4e8dd['params']||[],{'duration':_0x3f475b,'rowsAffected':_0x503621,'dbType':_0x12e9f6[_0x336fc7(0x66)]}),_0x30769c[_0x336fc7(0x8d)](_0xade2f4);}await _0x23bb83[_0x336fc7(0xb7)]();const _0x5c78fe=_0x5d23e1();return _0x12e9f6[_0x336fc7(0x68)](logTransaction,'commit',_0x273de9[_0x336fc7(0x79)]),logger['info']({'event':_0x12e9f6[_0x336fc7(0x85)],'queryCount':_0x273de9[_0x336fc7(0x79)],'totalDurationMs':_0x5c78fe,'dbType':_0x12e9f6[_0x336fc7(0x66)]},_0x336fc7(0x76)+_0x5c78fe+'ms,\x20'+_0x273de9[_0x336fc7(0x79)]+'\x20queries)'),_0x30769c;}catch(_0x2d673c){const _0x39f15c=_0x12e9f6[_0x336fc7(0xb5)](_0x5d23e1);logError(_0x2d673c,{'event':_0x12e9f6[_0x336fc7(0x9d)],'queryCount':_0x273de9['length'],'totalDurationMs':_0x39f15c,'code':_0x2d673c['errorNum'],'dbType':'oracle'},'Oracle\x20transaction\x20failed:\x20'+_0x2d673c[_0x336fc7(0xb6)]);if(_0x23bb83)try{await _0x23bb83['rollback'](),logTransaction(_0x12e9f6[_0x336fc7(0xae)],_0x273de9[_0x336fc7(0x79)]);}catch(_0x12b2a9){logError(_0x12b2a9,{'event':_0x336fc7(0x87),'dbType':_0x12e9f6['awkNl']},'Error\x20rolling\x20back\x20Oracle\x20transaction:\x20'+_0x12b2a9[_0x336fc7(0xb6)]);}throw _0x2d673c;}finally{if(_0x23bb83)try{await _0x23bb83[_0x336fc7(0xb4)]();}catch(_0x53cb27){logError(_0x53cb27,{'event':_0x336fc7(0xad)},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x53cb27[_0x336fc7(0xb6)]);}}}async['closePool'](){const _0x2360e6=a0_0x588328,_0x28217f={'vTHut':'Closing\x20Oracle\x20connection\x20pool...','nsoCT':'Oracle\x20connection\x20pool\x20closed','QWFFy':'oracle_pool_close_error'};try{this[_0x2360e6(0xa8)]&&(logger[_0x2360e6(0x9a)]({'event':'oracle_pool_closing'},_0x28217f[_0x2360e6(0xb2)]),await this[_0x2360e6(0xa8)]['close'](0xa),this[_0x2360e6(0xa8)]=null,logger[_0x2360e6(0x9a)]({'event':_0x2360e6(0x98)},_0x28217f[_0x2360e6(0x8c)]));}catch(_0xc0f086){logError(_0xc0f086,{'event':_0x28217f[_0x2360e6(0xaa)]},_0x2360e6(0xa7)+_0xc0f086[_0x2360e6(0xb6)]);throw _0xc0f086;}}[a0_0x588328(0xc1)](){const _0x54c77b=a0_0x588328,_0x47b560={'wesNZ':_0x54c77b(0x65),'zKRNi':_0x54c77b(0x91)};if(!this['pool'])return{'status':_0x47b560[_0x54c77b(0x97)]};return{'connectionsInUse':this['pool'][_0x54c77b(0x9f)],'connectionsOpen':this[_0x54c77b(0xa8)][_0x54c77b(0x70)],'poolAlias':this['pool']['poolAlias'],'poolMin':this['pool'][_0x54c77b(0xa3)],'poolMax':this[_0x54c77b(0xa8)]['poolMax'],'poolIncrement':this['pool'][_0x54c77b(0xc6)],'poolTimeout':this[_0x54c77b(0xa8)]['poolTimeout'],'status':_0x47b560[_0x54c77b(0x82)]};}}const oracleDb=new OracleDatabase();process['on'](a0_0x588328(0x81),async()=>{const _0x446ace=a0_0x588328,_0x50508b={'jPGIQ':'SIGINT','yPAMy':'Received\x20SIGINT,\x20closing\x20Oracle\x20connection\x20pool...','KBDoO':_0x446ace(0x99)};logger[_0x446ace(0x9a)]({'event':_0x446ace(0xaf),'signal':_0x50508b['jPGIQ']},_0x50508b['yPAMy']);try{await oracleDb[_0x446ace(0x6a)](),process['exit'](0x0);}catch(_0x442273){logError(_0x442273,{'event':_0x50508b['KBDoO'],'signal':'SIGINT'},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x442273['message']),process['exit'](0x1);}}),process['on']('SIGTERM',async()=>{const _0x3ccae6=a0_0x588328,_0x3538c8={'vNLRc':_0x3ccae6(0x8b),'xFrdy':function(_0x1637e6,_0x321a15,_0x3cabd6,_0x120e46){return _0x1637e6(_0x321a15,_0x3cabd6,_0x120e46);},'LXaYc':'oracle_shutdown_error'};logger[_0x3ccae6(0x9a)]({'event':'oracle_shutdown','signal':_0x3ccae6(0xc2)},_0x3538c8['vNLRc']);try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x557d72){_0x3538c8[_0x3ccae6(0x89)](logError,_0x557d72,{'event':_0x3538c8['LXaYc'],'signal':'SIGTERM'},_0x3ccae6(0x7d)+_0x557d72[_0x3ccae6(0xb6)]),process[_0x3ccae6(0x67)](0x1);}}),module[a0_0x588328(0x92)]=oracleDb;
1
+ const a0_0xe4839e=a0_0xe45b;(function(_0x5e2956,_0x2ee5ec){const _0x5732e2=a0_0xe45b,_0x32837b=_0x5e2956();while(!![]){try{const _0x2ac898=parseInt(_0x5732e2(0xc6))/0x1*(parseInt(_0x5732e2(0xab))/0x2)+-parseInt(_0x5732e2(0xca))/0x3+parseInt(_0x5732e2(0xb4))/0x4+parseInt(_0x5732e2(0x96))/0x5+-parseInt(_0x5732e2(0x7d))/0x6+-parseInt(_0x5732e2(0x8a))/0x7+parseInt(_0x5732e2(0xa6))/0x8*(parseInt(_0x5732e2(0xc5))/0x9);if(_0x2ac898===_0x2ee5ec)break;else _0x32837b['push'](_0x32837b['shift']());}catch(_0x572dd8){_0x32837b['push'](_0x32837b['shift']());}}}(a0_0x211c,0x7c0a5));function a0_0x211c(){const _0x3b4375=['B3jHy2XLx3bVB2XFzxjYB3i','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','tfjcrwe','B3jHy2XLx3bVB2XFy2XVC2vK','mZq5mgDwCNvRvW','zxHLy3v0zq','C3fS','rejFue9ptf9nsu4','Aw5MBW','y2XVC2u','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJBg9Zzwq','BLLdywK','B3jHy2XLx2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','oda5nJaWzxboA1vs','qM5zrwS','rejFvvnfuG','x25SC1jLywr5','y29UzMLN','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','s05mAgS','CM93C0fMzMvJDgvK','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbZDwrHAcbHzge','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','t1vux0zpuK1bvf9pqKPfq1q','rejFue9ptf9nqvG','CgfYyw1Z','rejFse9tva','rejFue9ptf9jtKnsru1ftLq','Cg9VBe1PBG','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','nJy4nJm3ruDpBvjO','mZq3DKjoDMnZ','zw52','ChvZAa','wvzpu3K','mtyYnZi0og9gqLn5AW','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','vefNzMq','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','Bg9JywXOB3n0','DhjHBNnHy3rPB25FzxjYB3i','z2v0q29UBMvJDgLVBG','A1DnvLC','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','vwXRCxO','B3jHy2XLx3bVB2XFzxHPC3rZ','q3jLyxrPBMCGt3jHy2XLignVBM5Ly3rPB24GCg9VBc4UlG','u0Lhsu5u','mJK3nJyZnNf5vMTcAW','z2v0ug9VBfn0yxrPC3rPy3m','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','B3jHy2XLx3bVB2XFy2XVC2vFzxjYB3i','q2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','Cg9VBe1HEa','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','y2XVC2vqB29S','uhnxzvO','zxjYB3joDw0','zxHWB3j0CW','y29TBwL0','CM93CW','oteXnZm2sMzPz0Xc','q0XpqG','Cg9VBa','yxv0B0nVBw1PDa','Aw5PDgLHBgL6zvbVB2W','sfzdB2i','t3jHy2XLifnrtcbfCNjVCJOG','rejFue9sva','B3jHy2XL','tg54rMW','zxHPDa','ywzdC08','mZK3mZe1nwXIzfPMva','uxDprNK','Eg9qAvy','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','zxHLy3v0zvf1zxj5','zgvIDwC','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','BwvZC2fNzq','BgvUz3rO','shLNzKq','rejFueftu1DpuKq','DgvZDenVBM5Ly3rPB24','u0Lhvevstq','B3jHy2XLx3bVB2XFy3jLyxrPBMC','vgvZDgLUzYbpCMfJBguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','tKnmt0i','oenuEKHWva'];a0_0x211c=function(){return _0x3b4375;};return a0_0x211c();}const oracledb=require('oracledb'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');oracledb['fetchAsString']=[oracledb[a0_0xe4839e(0x8b)],oracledb[a0_0xe4839e(0xa5)]],oracledb['fetchAsBuffer']=[oracledb['BLOB']];async function ensureNlsReady(_0x234c29){const _0x4199de=a0_0xe4839e;if(_0x234c29['_nlsReady'])return;await _0x234c29[_0x4199de(0xac)]('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27'),await _0x234c29['execute'](_0x4199de(0x9c)),await _0x234c29['execute']('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_TZ_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3TZH:TZM\x27'),_0x234c29[_0x4199de(0xb7)]=!![];}class OracleDatabase{constructor(){const _0x48b8f9=a0_0xe4839e,_0x339195={'EGgRR':function(_0x505886,_0x11d641){return _0x505886(_0x11d641);},'KNLhk':'oracle'};this[_0x48b8f9(0x8c)]=null,this['config']={'user':process[_0x48b8f9(0xc7)][_0x48b8f9(0xb6)]||'hr','password':process['env'][_0x48b8f9(0xa0)]||'hr','connectString':this['buildConnectionString'](),'poolMin':_0x339195['EGgRR'](parseInt,process[_0x48b8f9(0xc7)][_0x48b8f9(0xae)])||0x2,'poolMax':_0x339195['EGgRR'](parseInt,process[_0x48b8f9(0xc7)][_0x48b8f9(0xbf)])||0xa,'poolIncrement':parseInt(process[_0x48b8f9(0xc7)][_0x48b8f9(0xc2)])||0x1,'poolTimeout':parseInt(process[_0x48b8f9(0xc7)]['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x48b8f9(0x8b)],oracledb[_0x48b8f9(0xa5)]],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process['env'][_0x48b8f9(0xc1)]||'localhost','port':process['env'][_0x48b8f9(0x91)]||'1521','database':process['env']['DB_NAME']||'XE','type':_0x339195[_0x48b8f9(0xba)],'user':this[_0x48b8f9(0xb8)]['user'],'poolMin':this[_0x48b8f9(0xb8)]['poolMin'],'poolMax':this['config'][_0x48b8f9(0x82)]});}[a0_0xe4839e(0x83)](){const _0x29fff9=a0_0xe4839e,_0x55e45f={'LnJbb':_0x29fff9(0x74),'FVcdR':'oracle_connection_string'},_0xf42a43=process['env']['DB_HOST']||_0x55e45f['LnJbb'],_0x91dc72=process[_0x29fff9(0xc7)][_0x29fff9(0x91)]||'1521',_0xf8c860=process['env']['DB_NAME']||'XE',_0x2aff2='//'+_0xf42a43+':'+_0x91dc72+'/'+_0xf8c860;return logger[_0x29fff9(0x9b)]({'event':_0x55e45f['FVcdR'],'connectionString':_0x2aff2},'Oracle\x20Connection\x20String:\x20'+_0x2aff2),_0x2aff2;}async[a0_0xe4839e(0x8e)](){const _0x1111de=a0_0xe4839e,_0x3c5f57={'CArhK':_0x1111de(0xa3),'SmnsS':'oracle_pool_created','HVCob':'Oracle\x20connection\x20pool\x20created\x20successfully'};try{if(this[_0x1111de(0x8c)]){logger['debug']({'event':_0x1111de(0x7a)},_0x1111de(0xbc));return;}logger[_0x1111de(0xaf)]({'event':_0x3c5f57['CArhK']},_0x1111de(0x7b)),this[_0x1111de(0x8c)]=await oracledb['createPool'](this[_0x1111de(0xb8)]),logger[_0x1111de(0xaf)]({'event':_0x3c5f57['SmnsS']},_0x3c5f57[_0x1111de(0x8f)]),await this[_0x1111de(0xa1)]();}catch(_0x2f689f){logError(_0x2f689f,{'event':_0x1111de(0xa7)},_0x1111de(0xa8)+_0x2f689f[_0x1111de(0x9d)]);throw _0x2f689f;}}async[a0_0xe4839e(0xa1)](){const _0xb23c89=a0_0xe4839e,_0x4976c4={'dkwBd':_0xb23c89(0xbd),'AWODM':_0xb23c89(0xa4),'LnxFl':'SELECT\x20SYSDATE\x20as\x20current_date,\x20USER\x20as\x20current_user\x20FROM\x20DUAL','HygfD':function(_0x114201,_0x12f027,_0x3e6ff0,_0x15c272){return _0x114201(_0x12f027,_0x3e6ff0,_0x15c272);},'hgzkh':_0xb23c89(0x73),'kWMVW':'oracle_test_connection_close_error'};let _0x202c5f;try{logger[_0xb23c89(0x9b)]({'event':_0x4976c4['dkwBd']},_0x4976c4['AWODM']),_0x202c5f=await this['pool']['getConnection'](),await ensureNlsReady(_0x202c5f);const _0x30d261=await _0x202c5f['execute'](_0x4976c4[_0xb23c89(0x93)]);logger['info']({'event':'oracle_connection_test_success','currentDate':_0x30d261[_0xb23c89(0x89)][0x0][0x0],'currentUser':_0x30d261[_0xb23c89(0x89)][0x0][0x1]},_0xb23c89(0xb9)+_0x30d261['rows'][0x0][0x1]);}catch(_0x1cae24){_0x4976c4[_0xb23c89(0x9f)](logError,_0x1cae24,{'event':_0x4976c4['hgzkh']},'Oracle\x20connection\x20test\x20gagal:\x20'+_0x1cae24[_0xb23c89(0x9d)]);throw _0x1cae24;}finally{if(_0x202c5f)try{await _0x202c5f[_0xb23c89(0xb0)]();}catch(_0x470cad){logError(_0x470cad,{'event':_0x4976c4[_0xb23c89(0x77)]},'Error\x20closing\x20test\x20connection:\x20'+_0x470cad['message']);}}}async[a0_0xe4839e(0x9a)](_0x48e9d8,_0x4af387=[],_0x3cb017={}){const _0x151c6b=a0_0xe4839e,_0x12e608={'LRBEa':function(_0x4176b7){return _0x4176b7();},'xoPiV':'oracle','SOogN':function(_0x3b86ea,_0x2943cd,_0x31aa0e,_0x2c659c){return _0x3b86ea(_0x2943cd,_0x31aa0e,_0x2c659c);},'Ulkqz':_0x151c6b(0xb3)};let _0x87e5d6;const _0x2ce891=_0x12e608[_0x151c6b(0xa9)](startQueryTimer);try{!this[_0x151c6b(0x8c)]&&await this['initializePool']();_0x87e5d6=await this['pool'][_0x151c6b(0x76)](),await ensureNlsReady(_0x87e5d6);const _0x165647={'outFormat':oracledb[_0x151c6b(0xbe)],'autoCommit':_0x3cb017[_0x151c6b(0x8d)]!==undefined?_0x3cb017['autoCommit']:!![],..._0x3cb017},_0x3397a1=await _0x87e5d6[_0x151c6b(0xac)](_0x48e9d8,_0x4af387,_0x165647),_0x4503d4=_0x2ce891(),_0x14558a=_0x3397a1['rows']?_0x3397a1[_0x151c6b(0x89)]['length']:_0x3397a1[_0x151c6b(0xbb)];return logQuery(_0x48e9d8,_0x4af387,{'duration':_0x4503d4,'rowsAffected':_0x14558a,'dbType':_0x12e608[_0x151c6b(0x98)]}),_0x3397a1[_0x151c6b(0x89)]?_0x3397a1[_0x151c6b(0x89)]:{'rowsAffected':_0x3397a1['rowsAffected'],'lastRowid':_0x3397a1['lastRowid']};}catch(_0x358796){const _0x9f7efe=_0x2ce891();logError(_0x358796,{'event':'sql_error','query':_0x48e9d8['substring'](0x0,0x1f4),'paramCount':_0x4af387['length'],'durationMs':_0x9f7efe,'code':_0x358796[_0x151c6b(0x86)],'dbType':_0x12e608['xoPiV']},_0x151c6b(0x90)+_0x358796['message']);throw _0x358796;}finally{if(_0x87e5d6)try{await _0x87e5d6[_0x151c6b(0xb0)]();}catch(_0x2612d3){_0x12e608['SOogN'](logError,_0x2612d3,{'event':_0x12e608[_0x151c6b(0x79)]},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x2612d3['message']);}}}async['executeTransaction'](_0x42e8f5){const _0x5c506d=a0_0xe4839e,_0x5eb08c={'PsWeZ':'start','afCsO':function(_0x401afc){return _0x401afc();},'TAgfd':_0x5c506d(0x92),'OIuLj':'commit','YVOSy':function(_0x5abd40){return _0x5abd40();},'pIuoy':function(_0x181c59,_0x2c0368,_0x199f29,_0x210e6c){return _0x181c59(_0x2c0368,_0x199f29,_0x210e6c);},'mBUvV':_0x5c506d(0x75),'rwHBR':_0x5c506d(0xc4)};let _0x44d67f;const _0x56726c=startQueryTimer();try{!this[_0x5c506d(0x8c)]&&await this['initializePool']();_0x44d67f=await this['pool']['getConnection'](),await ensureNlsReady(_0x44d67f),logTransaction(_0x5eb08c[_0x5c506d(0x85)],_0x42e8f5[_0x5c506d(0x9e)]);const _0x2dd32c=[];for(const _0x3f7842 of _0x42e8f5){const _0x2565f8=_0x5eb08c['afCsO'](startQueryTimer),_0x39f7af=await _0x44d67f['execute'](_0x3f7842[_0x5c506d(0xad)],_0x3f7842[_0x5c506d(0xc0)]||[],{'autoCommit':![],'outFormat':oracledb[_0x5c506d(0xbe)]}),_0x318a92=_0x5eb08c[_0x5c506d(0x95)](_0x2565f8),_0x4ba373=_0x39f7af['rows']?_0x39f7af['rows']['length']:_0x39f7af['rowsAffected'];logQuery(_0x3f7842['sql'],_0x3f7842[_0x5c506d(0xc0)]||[],{'duration':_0x318a92,'rowsAffected':_0x4ba373,'dbType':_0x5eb08c['TAgfd']}),_0x2dd32c[_0x5c506d(0xc8)](_0x39f7af);}await _0x44d67f[_0x5c506d(0x88)]();const _0x25aa9d=_0x56726c();return logTransaction(_0x5eb08c['OIuLj'],_0x42e8f5[_0x5c506d(0x9e)]),logger['info']({'event':'transaction_complete','queryCount':_0x42e8f5[_0x5c506d(0x9e)],'totalDurationMs':_0x25aa9d,'dbType':_0x5c506d(0x92)},'Oracle\x20transaction\x20committed\x20('+_0x25aa9d+'ms,\x20'+_0x42e8f5[_0x5c506d(0x9e)]+'\x20queries)'),_0x2dd32c;}catch(_0x1e2816){const _0x3d21af=_0x5eb08c[_0x5c506d(0xc9)](_0x56726c);_0x5eb08c['pIuoy'](logError,_0x1e2816,{'event':_0x5eb08c['mBUvV'],'queryCount':_0x42e8f5[_0x5c506d(0x9e)],'totalDurationMs':_0x3d21af,'code':_0x1e2816['errorNum'],'dbType':_0x5eb08c[_0x5c506d(0x72)]},'Oracle\x20transaction\x20failed:\x20'+_0x1e2816[_0x5c506d(0x9d)]);if(_0x44d67f)try{await _0x44d67f['rollback'](),logTransaction('rollback',_0x42e8f5[_0x5c506d(0x9e)]);}catch(_0x1f8373){logError(_0x1f8373,{'event':'rollback_error','dbType':'oracle'},'Error\x20rolling\x20back\x20Oracle\x20transaction:\x20'+_0x1f8373['message']);}throw _0x1e2816;}finally{if(_0x44d67f)try{await _0x44d67f['close']();}catch(_0x14a226){logError(_0x14a226,{'event':_0x5eb08c['rwHBR']},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x14a226[_0x5c506d(0x9d)]);}}}async[a0_0xe4839e(0x84)](){const _0x59c903=a0_0xe4839e,_0x41b688={'lNGqH':_0x59c903(0x81),'BnYEk':function(_0x3a8679,_0x7dafa7,_0x5ba1e0,_0x7aab0d){return _0x3a8679(_0x7dafa7,_0x5ba1e0,_0x7aab0d);},'QwOFy':_0x59c903(0x80)};try{this['pool']&&(logger[_0x59c903(0xaf)]({'event':'oracle_pool_closing'},_0x41b688['lNGqH']),await this['pool']['close'](0xa),this[_0x59c903(0x8c)]=null,logger[_0x59c903(0xaf)]({'event':_0x59c903(0xaa)},_0x59c903(0xb1)));}catch(_0x47a388){_0x41b688[_0x59c903(0xb5)](logError,_0x47a388,{'event':_0x41b688[_0x59c903(0x97)]},_0x59c903(0x7f)+_0x47a388['message']);throw _0x47a388;}}[a0_0xe4839e(0x7e)](){const _0x1a86ec=a0_0xe4839e;if(!this[_0x1a86ec(0x8c)])return{'status':'Pool\x20not\x20initialized'};return{'connectionsInUse':this['pool']['connectionsInUse'],'connectionsOpen':this['pool']['connectionsOpen'],'poolAlias':this['pool']['poolAlias'],'poolMin':this[_0x1a86ec(0x8c)][_0x1a86ec(0xc3)],'poolMax':this['pool'][_0x1a86ec(0x82)],'poolIncrement':this['pool']['poolIncrement'],'poolTimeout':this['pool']['poolTimeout'],'status':'Active'};}}const oracleDb=new OracleDatabase();function a0_0xe45b(_0x2c6072,_0x17cce1){_0x2c6072=_0x2c6072-0x71;const _0x211ce8=a0_0x211c();let _0xe45b38=_0x211ce8[_0x2c6072];if(a0_0xe45b['yAmLhg']===undefined){var _0x342968=function(_0x48d622){const _0xfe3550='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c5e9c='',_0x1a4af4='';for(let _0x58a36c=0x0,_0x51dca2,_0x11a671,_0x3bd0e5=0x0;_0x11a671=_0x48d622['charAt'](_0x3bd0e5++);~_0x11a671&&(_0x51dca2=_0x58a36c%0x4?_0x51dca2*0x40+_0x11a671:_0x11a671,_0x58a36c++%0x4)?_0x5c5e9c+=String['fromCharCode'](0xff&_0x51dca2>>(-0x2*_0x58a36c&0x6)):0x0){_0x11a671=_0xfe3550['indexOf'](_0x11a671);}for(let _0x57198e=0x0,_0x1455e6=_0x5c5e9c['length'];_0x57198e<_0x1455e6;_0x57198e++){_0x1a4af4+='%'+('00'+_0x5c5e9c['charCodeAt'](_0x57198e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a4af4);};a0_0xe45b['xiPFdH']=_0x342968,a0_0xe45b['nvGYAv']={},a0_0xe45b['yAmLhg']=!![];}const _0x12eb8a=_0x211ce8[0x0],_0x2bd87f=_0x2c6072+_0x12eb8a,_0x18578e=a0_0xe45b['nvGYAv'][_0x2bd87f];return!_0x18578e?(_0xe45b38=a0_0xe45b['xiPFdH'](_0xe45b38),a0_0xe45b['nvGYAv'][_0x2bd87f]=_0xe45b38):_0xe45b38=_0x18578e,_0xe45b38;}process['on'](a0_0xe4839e(0x7c),async()=>{const _0x35ce0a=a0_0xe4839e,_0x5bfb5b={'DMEID':'oracle_shutdown','ofduC':_0x35ce0a(0x7c)};logger[_0x35ce0a(0xaf)]({'event':_0x5bfb5b['DMEID'],'signal':_0x35ce0a(0x7c)},'Received\x20SIGINT,\x20closing\x20Oracle\x20connection\x20pool...');try{await oracleDb['closePool'](),process[_0x35ce0a(0x94)](0x0);}catch(_0x1897bf){logError(_0x1897bf,{'event':_0x35ce0a(0x71),'signal':_0x5bfb5b['ofduC']},_0x35ce0a(0x99)+_0x1897bf['message']),process[_0x35ce0a(0x94)](0x1);}}),process['on']('SIGTERM',async()=>{const _0x3034e9=a0_0xe4839e,_0x36dfbb={'nYCai':function(_0x2ba62d,_0x5e3b65,_0x351784,_0x417dc1){return _0x2ba62d(_0x5e3b65,_0x351784,_0x417dc1);}};logger[_0x3034e9(0xaf)]({'event':'oracle_shutdown','signal':_0x3034e9(0xa2)},_0x3034e9(0x78));try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x1a0ac5){_0x36dfbb[_0x3034e9(0xb2)](logError,_0x1a0ac5,{'event':'oracle_shutdown_error','signal':_0x3034e9(0xa2)},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x1a0ac5[_0x3034e9(0x9d)]),process[_0x3034e9(0x94)](0x1);}}),module[a0_0xe4839e(0x87)]=oracleDb;
@@ -1 +1 @@
1
- function a0_0x56a3(){const _0x31b1e2=['uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2uUlI4','AK9Qz1m','zxHPDa','qvHxq1e','vhjHBNnHy3rPB24GzMfPBgvKoIa','Aw5MBW','ntaWma','rxjYB3iGC2fHDcbTzw1IDwTHifnrtgL0zsbKyxrHyMfZztOG','tgHhC2C','t01UBue','AhHxr1q','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','ndvOAeHTwKm','u0vmrunuideGyxmGDgvZDf9JB25Uzwn0Aw9U','q2XVC2LUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','mJyXodC2ru1iv2r3','C3fSAxrLx2LUAxrFzxjYB3i','ChjLCgfYzq','u0Lhvevstq','mZKWthz0z0To','EuDgCgy','C3fS','y2HHBMDLCW','ywXS','z2v0','CM9SBgjHy2S','rejFqLvtwv9usu1ft1vu','u1fmAxrLifnrtcbfCNjVCJOG','CNvU','y29TBwL0','C3fSAxrLx2nSB3nLza','mNzqvuPPBa','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','BxmSia','Euzdzge','CMD6uw4','DgvZDa','BgvUz3rO','D1PIzwe','nte0ody2r2njuuHd','zxHWB3j0CW','sM5OA2O','AgfJD24','rxjYB3iGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2u6ia','nJu1mZq2mgPPvxnbtG','BgfZDeLUC2vYDfjVD2LK','mtm1nZC4B1L3AfDh','y1bmEvq','ChvZAa','mteZmtGWohboDhfvvW','ChjHz21H','u0Lhsu5u','u0vmrunuide','lI9KyxrHl3jLC3rMB3jNzs5KyG','Aw5PDgLHBgL6zurHDgfIyxnL','ntCZotiZz2TXvgn6','nNnHq3Pzqq','yMv0DgvYlxnXBgL0ztm','yNvZEvrPBwvVDxq','rxjYB3iGy2HLy2TPBMCGu1fmAxrLignVBM5Ly3rPB246ia','lI9SB2DNzxi','zgvIDwC','y2XVC2u','BwvZC2fNzq','zgjqyxrO','C3fSAxrLx2rIx2v4Axn0CW','C3fSAxrL','uxrXuuW','y29Kzq','zw52','AM91CM5HBf9TB2rLid0Gv0fm','zM9YzwLNBL9RzxLZid0Gt04','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','nti5mJzhtNDZA0S','uvjdvLm','y2HLy2TdB25Uzwn0Aw9U'];a0_0x56a3=function(){return _0x31b1e2;};return a0_0x56a3();}const a0_0x3665c2=a0_0x2928;function a0_0x2928(_0x32d2b9,_0x414a92){_0x32d2b9=_0x32d2b9-0x15f;const _0x56a3dc=a0_0x56a3();let _0x29280d=_0x56a3dc[_0x32d2b9];if(a0_0x2928['ZFYSzb']===undefined){var _0x1b683d=function(_0xf15271){const _0x4f613b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x578835='',_0x4b62c6='';for(let _0x38e22d=0x0,_0x308102,_0x3d2bf4,_0x35e431=0x0;_0x3d2bf4=_0xf15271['charAt'](_0x35e431++);~_0x3d2bf4&&(_0x308102=_0x38e22d%0x4?_0x308102*0x40+_0x3d2bf4:_0x3d2bf4,_0x38e22d++%0x4)?_0x578835+=String['fromCharCode'](0xff&_0x308102>>(-0x2*_0x38e22d&0x6)):0x0){_0x3d2bf4=_0x4f613b['indexOf'](_0x3d2bf4);}for(let _0x1d4246=0x0,_0x4de3ad=_0x578835['length'];_0x1d4246<_0x4de3ad;_0x1d4246++){_0x4b62c6+='%'+('00'+_0x578835['charCodeAt'](_0x1d4246)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4b62c6);};a0_0x2928['vaadGJ']=_0x1b683d,a0_0x2928['tBNEKL']={},a0_0x2928['ZFYSzb']=!![];}const _0xf4ee9f=_0x56a3dc[0x0],_0x1aadc3=_0x32d2b9+_0xf4ee9f,_0x424109=a0_0x2928['tBNEKL'][_0x1aadc3];return!_0x424109?(_0x29280d=a0_0x2928['vaadGJ'](_0x29280d),a0_0x2928['tBNEKL'][_0x1aadc3]=_0x29280d):_0x29280d=_0x424109,_0x29280d;}(function(_0x292e5a,_0x2df824){const _0x4deff2=a0_0x2928,_0x87dadd=_0x292e5a();while(!![]){try{const _0x5a7814=-parseInt(_0x4deff2(0x1a8))/0x1*(parseInt(_0x4deff2(0x16b))/0x2)+parseInt(_0x4deff2(0x175))/0x3*(-parseInt(_0x4deff2(0x198))/0x4)+parseInt(_0x4deff2(0x19c))/0x5*(-parseInt(_0x4deff2(0x186))/0x6)+parseInt(_0x4deff2(0x174))/0x7+-parseInt(_0x4deff2(0x16e))/0x8*(-parseInt(_0x4deff2(0x195))/0x9)+parseInt(_0x4deff2(0x169))/0xa+-parseInt(_0x4deff2(0x164))/0xb;if(_0x5a7814===_0x2df824)break;else _0x87dadd['push'](_0x87dadd['shift']());}catch(_0x4c997e){_0x87dadd['push'](_0x87dadd['shift']());}}}(a0_0x56a3,0x6c313));const Database=require(a0_0x3665c2(0x176)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x3665c2(0x179));class SqliteDatabase{constructor(){const _0x205f28=a0_0x3665c2,_0x329184={'VhuZC':_0x205f28(0x172),'hacwn':_0x205f28(0x17f)};this['db']=null,this[_0x205f28(0x17d)]=process['env']['DB_NAME']||_0x329184['VhuZC'],this[_0x205f28(0x177)]=parseInt(process[_0x205f28(0x182)][_0x205f28(0x1a3)]||_0x205f28(0x18f)),logDatabaseConfig({'database':this['dbPath'],'type':_0x329184[_0x205f28(0x167)],'busyTimeout':this['busyTimeout']});}[a0_0x3665c2(0x173)](){const _0x3419b7=a0_0x3665c2,_0x513fda={'NiNuk':'SQLite\x20database\x20connection\x20sudah\x20ada'};try{if(this['db']){logger[_0x3419b7(0x17a)]({'event':_0x3419b7(0x17e)},_0x513fda['NiNuk']);return;}this['db']=new Database(this['dbPath'],{'timeout':this['busyTimeout']}),this['db']['pragma'](_0x3419b7(0x183)),this['db'][_0x3419b7(0x16f)](_0x3419b7(0x184)),this['testConnection']();}catch(_0x45bcc6){logError(_0x45bcc6,{'event':_0x3419b7(0x199)},_0x3419b7(0x190)+_0x45bcc6[_0x3419b7(0x17c)]);throw _0x45bcc6;}}['testConnection'](){const _0x3eacba=a0_0x3665c2,_0x51847f={'yGFpf':'Testing\x20SQLite\x20database\x20connection...','jOjgS':_0x3eacba(0x196),'bmtns':function(_0x2c7f75,_0x437b07,_0x179b65,_0x2f63b3){return _0x2c7f75(_0x437b07,_0x179b65,_0x2f63b3);}};try{logger[_0x3eacba(0x17a)]({'event':_0x3eacba(0x1a9)},_0x51847f[_0x3eacba(0x19d)]),this['db']['prepare'](_0x51847f[_0x3eacba(0x18a)])[_0x3eacba(0x1a1)]();}catch(_0x3ef7c5){_0x51847f['bmtns'](logError,_0x3ef7c5,{'event':'sqlite_connection_test_failed'},'SQLite\x20connection\x20test\x20gagal:\x20'+_0x3ef7c5['message']);throw _0x3ef7c5;}}async['executeQuery'](_0x3a59c2,_0x408472=[]){const _0x39573e=a0_0x3665c2,_0x24c928={'DcjaJ':function(_0x5e1b53,_0xaac91d){return _0x5e1b53||_0xaac91d;},'QRCVS':function(_0x5e886c){return _0x5e886c();},'mjQLl':_0x39573e(0x17f),'BAlBA':function(_0x1c9196,_0x185da4,_0x2fe874,_0x5a36c6){return _0x1c9196(_0x185da4,_0x2fe874,_0x5a36c6);}},_0x3a6a5e=startQueryTimer();try{!this['db']&&this['initializeDatabase']();const _0x1cb0f5=this['db']['prepare'](_0x3a59c2),_0x1bd1b6=/\bRETURNING\b/i['test'](_0x3a59c2),_0x1a2e00=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x39573e(0x161)](_0x3a59c2);let _0x3b87bb,_0x95183d;if(_0x24c928['DcjaJ'](_0x1a2e00,_0x1bd1b6)){const _0x152f6b=_0x1cb0f5[_0x39573e(0x1a0)](..._0x408472),_0x5875b5=_0x24c928['QRCVS'](_0x3a6a5e);return logQuery(_0x3a59c2,_0x408472,{'duration':_0x5875b5,'rowsAffected':_0x152f6b[_0x39573e(0x162)],'dbType':_0x24c928['mjQLl']}),_0x152f6b;}else{const _0x3d0d85=_0x1cb0f5[_0x39573e(0x1a5)](..._0x408472),_0x50872c=_0x24c928[_0x39573e(0x187)](_0x3a6a5e);return _0x3b87bb={'rowsAffected':_0x3d0d85['changes'],'insertId':_0x3d0d85['lastInsertRowid']},_0x24c928['BAlBA'](logQuery,_0x3a59c2,_0x408472,{'duration':_0x50872c,'rowsAffected':_0x3d0d85[_0x39573e(0x19f)],'dbType':_0x24c928['mjQLl']}),_0x3b87bb;}}catch(_0x111296){const _0x54188d=_0x24c928[_0x39573e(0x187)](_0x3a6a5e);logError(_0x111296,{'event':'sql_error','query':_0x3a59c2['substring'](0x0,0x1f4),'paramCount':_0x408472['length'],'durationMs':_0x54188d,'code':_0x111296[_0x39573e(0x181)],'dbType':'sqlite'},_0x39573e(0x1a4)+_0x111296['message']);throw _0x111296;}}async['executeTransaction'](_0x2b9906){const _0x738aa3=a0_0x3665c2,_0x1dc2f0={'LhGsg':function(_0x52e338,_0x28cfbd){return _0x52e338||_0x28cfbd;},'rgzQn':function(_0x444bc6){return _0x444bc6();},'cdPIq':function(_0x4974c3,_0x2abd15,_0xeff5fe,_0x42e19c){return _0x4974c3(_0x2abd15,_0xeff5fe,_0x42e19c);},'zxaBA':function(_0x394d1e){return _0x394d1e();},'OMnmA':'sqlite','HJdYP':'start','YJHhE':function(_0x5014df,_0xcac65a,_0x4709e5){return _0x5014df(_0xcac65a,_0x4709e5);},'yFCda':'transaction_complete','AXWCQ':function(_0x21ad62){return _0x21ad62();},'ekrrL':function(_0x21c767,_0x58daac,_0x3c137e){return _0x21c767(_0x58daac,_0x3c137e);}},_0x3bfc55=startQueryTimer();try{!this['db']&&this[_0x738aa3(0x173)]();logTransaction(_0x1dc2f0['HJdYP'],_0x2b9906['length']);const _0x4edebc=this['db']['transaction'](_0x39b286=>{const _0x2e3268=_0x738aa3,_0x18e737=[];for(const _0xce734e of _0x39b286){const _0x16df77=startQueryTimer(),_0x2ed0e2=_0xce734e['params']||[],_0x4b93a6=this['db'][_0x2e3268(0x19a)](_0xce734e[_0x2e3268(0x19e)]),_0x153b4a=/\bRETURNING\b/i[_0x2e3268(0x161)](_0xce734e[_0x2e3268(0x19e)]),_0x2674e5=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x2e3268(0x161)](_0xce734e[_0x2e3268(0x19e)]);if(_0x1dc2f0[_0x2e3268(0x191)](_0x2674e5,_0x153b4a)){const _0x5557fd=_0x4b93a6[_0x2e3268(0x1a0)](..._0x2ed0e2),_0x2b68fd=_0x1dc2f0['rgzQn'](_0x16df77);_0x1dc2f0['cdPIq'](logQuery,_0xce734e['sql'],_0x2ed0e2,{'duration':_0x2b68fd,'rowsAffected':_0x5557fd[_0x2e3268(0x162)],'dbType':'sqlite'}),_0x18e737[_0x2e3268(0x16d)](_0x5557fd);}else{const _0x3d7ad7=_0x4b93a6['run'](..._0x2ed0e2),_0x503c91=_0x1dc2f0['zxaBA'](_0x16df77);logQuery(_0xce734e['sql'],_0x2ed0e2,{'duration':_0x503c91,'rowsAffected':_0x3d7ad7['changes'],'dbType':_0x1dc2f0[_0x2e3268(0x192)]}),_0x18e737['push']({'rowsAffected':_0x3d7ad7['changes'],'insertId':_0x3d7ad7[_0x2e3268(0x16a)]});}}return _0x18e737;}),_0x5474d0=_0x4edebc(_0x2b9906),_0x177090=_0x1dc2f0[_0x738aa3(0x160)](_0x3bfc55);return _0x1dc2f0['YJHhE'](logTransaction,_0x738aa3(0x1a6),_0x2b9906[_0x738aa3(0x162)]),logger['info']({'event':_0x1dc2f0[_0x738aa3(0x15f)],'queryCount':_0x2b9906['length'],'totalDurationMs':_0x177090,'dbType':_0x1dc2f0[_0x738aa3(0x192)]},'Transaction\x20committed\x20('+_0x177090+_0x738aa3(0x1aa)+_0x2b9906['length']+'\x20queries)'),_0x5474d0;}catch(_0x2c3c71){const _0xd4d710=_0x1dc2f0[_0x738aa3(0x18c)](_0x3bfc55);_0x1dc2f0['ekrrL'](logTransaction,_0x738aa3(0x1a2),_0x2b9906['length']),_0x1dc2f0['cdPIq'](logError,_0x2c3c71,{'event':'transaction_error','queryCount':_0x2b9906[_0x738aa3(0x162)],'totalDurationMs':_0xd4d710,'code':_0x2c3c71['code'],'dbType':'sqlite'},_0x738aa3(0x18d)+_0x2c3c71['message']);throw _0x2c3c71;}}['getPool'](){return!this['db']&&this['initializeDatabase'](),this['db'];}['closePool'](){const _0x2c435c=a0_0x3665c2,_0x467b09={'wZbea':'sqlite_closing','arxrF':_0x2c435c(0x197),'vnEaC':_0x2c435c(0x1a7),'ywTBe':'SQLite\x20database\x20connection\x20closed','reCNW':function(_0x289a64,_0x1f4f3b,_0x5ab52b,_0x256685){return _0x289a64(_0x1f4f3b,_0x5ab52b,_0x256685);}};try{this['db']&&(logger[_0x2c435c(0x18e)]({'event':_0x467b09[_0x2c435c(0x163)]},_0x467b09['arxrF']),this['db'][_0x2c435c(0x17b)](),this['db']=null,logger[_0x2c435c(0x18e)]({'event':_0x467b09['vnEaC']},_0x467b09['ywTBe']));}catch(_0x2e2d6c){_0x467b09['reCNW'](logError,_0x2e2d6c,{'event':'sqlite_close_error'},_0x2c435c(0x168)+_0x2e2d6c['message']);throw _0x2e2d6c;}}async[a0_0x3665c2(0x188)](){const _0x104943=a0_0x3665c2,_0x349466={'Jnhkj':_0x104943(0x171),'FkAhG':function(_0x12dea2,_0x20890d,_0x20f5f5,_0x7949c6){return _0x12dea2(_0x20890d,_0x20f5f5,_0x7949c6);},'jdoiH':'sqlite_connection_check_error'};try{return!this['db']&&this['initializeDatabase'](),this['db']['prepare'](_0x349466[_0x104943(0x166)])[_0x104943(0x1a1)](),!![];}catch(_0x529d49){return _0x349466['FkAhG'](logError,_0x529d49,{'event':_0x349466['jdoiH']},_0x104943(0x178)+_0x529d49['message']),![];}}}const sqliteDb=new SqliteDatabase();process['on']('SIGINT',()=>{const _0x2b1cd6=a0_0x3665c2,_0x546f55={'hxWGT':_0x2b1cd6(0x185),'QtqQL':function(_0xa7ea20,_0x21edef,_0x627d9e,_0x5d50c5){return _0xa7ea20(_0x21edef,_0x627d9e,_0x5d50c5);},'cPLyT':'sqlite_shutdown_error'};logger['info']({'event':'sqlite_shutdown','signal':'SIGINT'},_0x546f55[_0x2b1cd6(0x193)]);try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x2f5fc0){_0x546f55[_0x2b1cd6(0x180)](logError,_0x2f5fc0,{'event':_0x546f55[_0x2b1cd6(0x16c)],'signal':_0x2b1cd6(0x170)},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x2f5fc0['message']),process[_0x2b1cd6(0x18b)](0x1);}}),process['on'](a0_0x3665c2(0x19b),()=>{const _0x5cae26=a0_0x3665c2,_0x3a62d6={'wfplu':'sqlite_shutdown','rUrPD':_0x5cae26(0x19b),'WYSTM':_0x5cae26(0x189),'uIVqW':function(_0x2095e7,_0x3645d5,_0x5e7b1f,_0x4b4d5a){return _0x2095e7(_0x3645d5,_0x5e7b1f,_0x4b4d5a);}};logger['info']({'event':_0x3a62d6['wfplu'],'signal':_0x3a62d6['rUrPD']},_0x3a62d6['WYSTM']);try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x497264){_0x3a62d6['uIVqW'](logError,_0x497264,{'event':_0x5cae26(0x194),'signal':_0x5cae26(0x19b)},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x497264['message']),process[_0x5cae26(0x18b)](0x1);}}),module[a0_0x3665c2(0x165)]=sqliteDb;
1
+ const a0_0x508722=a0_0x36ba;function a0_0x36ba(_0x470b3c,_0x78ce26){_0x470b3c=_0x470b3c-0x9a;const _0x243ed8=a0_0x243e();let _0x36ba17=_0x243ed8[_0x470b3c];if(a0_0x36ba['aTZCXh']===undefined){var _0xb4c0af=function(_0x46e865){const _0x535fb8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3736a2='',_0x9be39b='';for(let _0x4f4a4f=0x0,_0x32cf59,_0x417266,_0x1be5a5=0x0;_0x417266=_0x46e865['charAt'](_0x1be5a5++);~_0x417266&&(_0x32cf59=_0x4f4a4f%0x4?_0x32cf59*0x40+_0x417266:_0x417266,_0x4f4a4f++%0x4)?_0x3736a2+=String['fromCharCode'](0xff&_0x32cf59>>(-0x2*_0x4f4a4f&0x6)):0x0){_0x417266=_0x535fb8['indexOf'](_0x417266);}for(let _0x5ea3c2=0x0,_0x139733=_0x3736a2['length'];_0x5ea3c2<_0x139733;_0x5ea3c2++){_0x9be39b+='%'+('00'+_0x3736a2['charCodeAt'](_0x5ea3c2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x9be39b);};a0_0x36ba['axldWG']=_0xb4c0af,a0_0x36ba['plNYbx']={},a0_0x36ba['aTZCXh']=!![];}const _0x34afe4=_0x243ed8[0x0],_0x22274a=_0x470b3c+_0x34afe4,_0x48842c=a0_0x36ba['plNYbx'][_0x22274a];return!_0x48842c?(_0x36ba17=a0_0x36ba['axldWG'](_0x36ba17),a0_0x36ba['plNYbx'][_0x22274a]=_0x36ba17):_0x36ba17=_0x48842c,_0x36ba17;}(function(_0x5e26e2,_0x1c7fc5){const _0x5b159f=a0_0x36ba,_0x4b3743=_0x5e26e2();while(!![]){try{const _0x590c9a=-parseInt(_0x5b159f(0xd5))/0x1*(-parseInt(_0x5b159f(0xbd))/0x2)+parseInt(_0x5b159f(0xb4))/0x3+-parseInt(_0x5b159f(0x9c))/0x4*(-parseInt(_0x5b159f(0xd1))/0x5)+-parseInt(_0x5b159f(0xe1))/0x6+-parseInt(_0x5b159f(0x9d))/0x7+-parseInt(_0x5b159f(0xa0))/0x8+parseInt(_0x5b159f(0x9b))/0x9;if(_0x590c9a===_0x1c7fc5)break;else _0x4b3743['push'](_0x4b3743['shift']());}catch(_0x5bfd41){_0x4b3743['push'](_0x4b3743['shift']());}}}(a0_0x243e,0xb00b5));const Database=require(a0_0x508722(0xba)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');function a0_0x243e(){const _0x5bcedc=['ihf1zxjPzxmP','zw52','u0vmrunuideGyxmGDgvZDf9JB25Uzwn0Aw9U','rgfezgO','zgvIDwC','tMHnqMK','ChvZAa','nde5ndq5ohr5BuTKta','s2LmBM8','BgvUz3rO','BeHSBg0','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i','BwvZC2fNzq','mtmXmde1mZr2q2j4B3q','mJmXodG0EhvbCKfj','ndK0mJuXog9kr0XzEq','C3vIC3rYAw5N','t1POBgS','ntiZotuZnLbRt3Pmta','vgLXzhy','rxjYB3iGy2HLy2TPBMCGu1fmAxrLignVBM5Ly3rPB246ia','y2XVC2vqB29S','y1DRueC','C3bSAxq','y29TBwL0','ChjHz21H','z3r3sfi','C3fSAxrLx2rIx2v4Axn0CW','EK5mv2S','C1j6AK4','y0z3wNe','DgvZDa','zgjqyxrO','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','Aw5PDgLHBgL6zurHDgfIyxnL','BNHqvNC','C3fSx2vYCM9Y','BwXTEfm','ode0ntG3wKrJqMjs','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24Gy2XVC2vK','u1P0s20','CLvHqKy','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','u0Lhsu5u','yMv0DgvYlxnXBgL0ztm','C3fSAxrLx2nSB3nLza','C3fS','mJy3otK0rM5jtfvw','C3fSAxrLx3nODxrKB3DU','mhWZFdr8mxWY','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','BgfZDeLUC2vYDfjVD2LK','tMD5C3C','DgvZDenVBM5Ly3rPB24','vhnIvgK','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','u0Lhvevstq','y2zrsui','rxjYB3iGC2fHDcbTzw1IDwTHifnrtgL0zsbKyxrHyMfZztOG','y2HHBMDLCW','yNvZEvrPBwvVDxq','ChjLCgfYzq','DhjHBNnHy3rPB25FzxjYB3i','y29Kzq','t0HIz1q','EMvMB2C','C3rHCNq','mtbICvriuNK','q2XVC2LUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','zxHWB3j0CW','zxHPDa','n2P4vxzHra','Aw5MBW','C3fSAxrL','CM9SBgjHy2S','r3bAuhq'];a0_0x243e=function(){return _0x5bcedc;};return a0_0x243e();}class SqliteDatabase{constructor(){const _0x5ac353=a0_0x508722,_0xe6b948={'sRzjN':'./data/restforge.db','QJhZE':function(_0x2b9e8a,_0x294696){return _0x2b9e8a(_0x294696);},'TxkGx':'5000'};this['db']=null,this['dbPath']=process[_0x5ac353(0xdb)]['DB_NAME']||_0xe6b948[_0x5ac353(0xab)],this['busyTimeout']=_0xe6b948['QJhZE'](parseInt,process[_0x5ac353(0xdb)]['DB_BUSY_TIMEOUT']||_0xe6b948['TxkGx']),_0xe6b948['QJhZE'](logDatabaseConfig,{'database':this[_0x5ac353(0xae)],'type':_0x5ac353(0xd7),'busyTimeout':this['busyTimeout']});}[a0_0x508722(0xb0)](){const _0xf86a07=a0_0x508722,_0x45f167={'EkJYP':_0xf86a07(0xa9),'nxPVw':'foreign_keys\x20=\x20ON','cFwZq':'sqlite_init_error'};try{const _0x1fe08d=_0xf86a07(0xbf)[_0xf86a07(0xa5)]('|');let _0xa36d6b=0x0;while(!![]){switch(_0x1fe08d[_0xa36d6b++]){case'0':if(this['db']){logger[_0xf86a07(0xde)]({'event':_0x45f167['EkJYP']},'SQLite\x20database\x20connection\x20sudah\x20ada');return;}continue;case'1':this['db'][_0xf86a07(0xa7)](_0x45f167[_0xf86a07(0xb1)]);continue;case'2':this['testConnection']();continue;case'3':this['db']=new Database(this['dbPath'],{'timeout':this[_0xf86a07(0xca)]});continue;case'4':this['db']['pragma']('journal_mode\x20=\x20WAL');continue;}break;}}catch(_0xc81231){logError(_0xc81231,{'event':_0x45f167[_0xf86a07(0xac)]},_0xf86a07(0xc8)+_0xc81231[_0xf86a07(0x9a)]);throw _0xc81231;}}[a0_0x508722(0xc3)](){const _0x1edba8=a0_0x508722,_0x203449={'cfQIB':function(_0xfa2541,_0x492828,_0x252e07,_0x476cde){return _0xfa2541(_0x492828,_0x252e07,_0x476cde);},'xwquW':_0x1edba8(0xc5)};try{logger['debug']({'event':_0x1edba8(0xc0)},_0x1edba8(0xaf)),this['db']['prepare'](_0x1edba8(0xdc))['get']();}catch(_0x48a333){_0x203449[_0x1edba8(0xc7)](logError,_0x48a333,{'event':_0x203449['xwquW']},'SQLite\x20connection\x20test\x20gagal:\x20'+_0x48a333['message']);throw _0x48a333;}}async['executeQuery'](_0x54dafd,_0xe12b4a=[]){const _0x55af54=a0_0x508722,_0x9ab27e={'zNLWk':function(_0x3a2db3,_0x2a8d06){return _0x3a2db3||_0x2a8d06;},'lHllm':'sqlite','IPsyG':function(_0x3928cb,_0x2ac0ef,_0x40567b,_0x584c5d){return _0x3928cb(_0x2ac0ef,_0x40567b,_0x584c5d);},'KiLno':_0x55af54(0xb2)},_0x54406e=startQueryTimer();try{!this['db']&&this[_0x55af54(0xb0)]();const _0x1e47a6=this['db'][_0x55af54(0xcb)](_0x54dafd),_0x4adf2c=/\bRETURNING\b/i['test'](_0x54dafd),_0x3efbb8=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x55af54(0xad)](_0x54dafd);let _0x6e3337,_0x4d5741;if(_0x9ab27e[_0x55af54(0xaa)](_0x3efbb8,_0x4adf2c)){const _0x2acd8a=_0x1e47a6['all'](..._0xe12b4a),_0x2d8c74=_0x54406e();return logQuery(_0x54dafd,_0xe12b4a,{'duration':_0x2d8c74,'rowsAffected':_0x2acd8a[_0x55af54(0xe3)],'dbType':_0x9ab27e[_0x55af54(0xe4)]}),_0x2acd8a;}else{const _0x358d52=_0x1e47a6['run'](..._0xe12b4a),_0x51161e=_0x54406e();return _0x6e3337={'rowsAffected':_0x358d52[_0x55af54(0xc9)],'insertId':_0x358d52[_0x55af54(0xc1)]},logQuery(_0x54dafd,_0xe12b4a,{'duration':_0x51161e,'rowsAffected':_0x358d52['changes'],'dbType':'sqlite'}),_0x6e3337;}}catch(_0x19fc21){const _0x1f2afb=_0x54406e();_0x9ab27e['IPsyG'](logError,_0x19fc21,{'event':_0x9ab27e[_0x55af54(0xe2)],'query':_0x54dafd[_0x55af54(0x9e)](0x0,0x1f4),'paramCount':_0xe12b4a[_0x55af54(0xe3)],'durationMs':_0x1f2afb,'code':_0x19fc21[_0x55af54(0xcd)],'dbType':_0x9ab27e['lHllm']},'SQLite\x20SQL\x20Error:\x20'+_0x19fc21[_0x55af54(0x9a)]);throw _0x19fc21;}}async['executeTransaction'](_0x5d4aa5){const _0x52f3de=a0_0x508722,_0x29f8f8={'TsbTi':function(_0x37bdbc){return _0x37bdbc();},'XXUjs':function(_0x5e9ace,_0x4b11e3){return _0x5e9ace||_0x4b11e3;},'OHbgT':function(_0x246c49){return _0x246c49();},'Ngysw':function(_0x39ed3e,_0x2f8e55,_0x517b14,_0x2661ac){return _0x39ed3e(_0x2f8e55,_0x517b14,_0x2661ac);},'Tiqdv':'sqlite','YIEqf':function(_0x274d9a){return _0x274d9a();},'DaDdj':_0x52f3de(0xd0),'ZVNTq':function(_0x2c5ac1){return _0x2c5ac1();},'czQcm':_0x52f3de(0xa6),'mlmxS':'transaction_complete','rmKgi':_0x52f3de(0xd8)},_0x1abad5=_0x29f8f8['YIEqf'](startQueryTimer);try{!this['db']&&this[_0x52f3de(0xb0)]();logTransaction(_0x29f8f8[_0x52f3de(0xdd)],_0x5d4aa5[_0x52f3de(0xe3)]);const _0x1bffb1=this['db']['transaction'](_0x598088=>{const _0x1177b9=_0x52f3de,_0xf0a122=[];for(const _0x5dddb7 of _0x598088){const _0x521d8c=_0x29f8f8[_0x1177b9(0xc4)](startQueryTimer),_0x8088=_0x5dddb7['params']||[],_0x51bf02=this['db'][_0x1177b9(0xcb)](_0x5dddb7['sql']),_0x336ac5=/\bRETURNING\b/i[_0x1177b9(0xad)](_0x5dddb7[_0x1177b9(0xbc)]),_0x3aee36=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x5dddb7[_0x1177b9(0xbc)]);if(_0x29f8f8['XXUjs'](_0x3aee36,_0x336ac5)){const _0x585036=_0x51bf02['all'](..._0x8088),_0xe87114=_0x29f8f8[_0x1177b9(0xce)](_0x521d8c);_0x29f8f8['Ngysw'](logQuery,_0x5dddb7['sql'],_0x8088,{'duration':_0xe87114,'rowsAffected':_0x585036['length'],'dbType':'sqlite'}),_0xf0a122['push'](_0x585036);}else{const _0xfc78d2=_0x51bf02['run'](..._0x8088),_0x5fc4e=_0x29f8f8[_0x1177b9(0xce)](_0x521d8c);_0x29f8f8[_0x1177b9(0xc2)](logQuery,_0x5dddb7[_0x1177b9(0xbc)],_0x8088,{'duration':_0x5fc4e,'rowsAffected':_0xfc78d2[_0x1177b9(0xc9)],'dbType':_0x29f8f8[_0x1177b9(0xa1)]}),_0xf0a122[_0x1177b9(0xe0)]({'rowsAffected':_0xfc78d2[_0x1177b9(0xc9)],'insertId':_0xfc78d2[_0x1177b9(0xc1)]});}}return _0xf0a122;}),_0x1a17e9=_0x1bffb1(_0x5d4aa5),_0x48b00a=_0x29f8f8['ZVNTq'](_0x1abad5);return logTransaction(_0x29f8f8['czQcm'],_0x5d4aa5[_0x52f3de(0xe3)]),logger[_0x52f3de(0xd6)]({'event':_0x29f8f8[_0x52f3de(0xb3)],'queryCount':_0x5d4aa5['length'],'totalDurationMs':_0x48b00a,'dbType':'sqlite'},'Transaction\x20committed\x20('+_0x48b00a+'ms,\x20'+_0x5d4aa5['length']+_0x52f3de(0xda)),_0x1a17e9;}catch(_0x36d3e6){const _0x20bffc=_0x1abad5();logTransaction(_0x29f8f8['rmKgi'],_0x5d4aa5['length']),logError(_0x36d3e6,{'event':_0x52f3de(0xcc),'queryCount':_0x5d4aa5['length'],'totalDurationMs':_0x20bffc,'code':_0x36d3e6['code'],'dbType':'sqlite'},'Transaction\x20failed:\x20'+_0x36d3e6[_0x52f3de(0x9a)]);throw _0x36d3e6;}}['getPool'](){const _0x1246f3=a0_0x508722;return!this['db']&&this[_0x1246f3(0xb0)](),this['db'];}[a0_0x508722(0xa3)](){const _0x43ff87=a0_0x508722,_0x5b2c0a={'JxDKY':_0x43ff87(0xd2),'rUaBF':_0x43ff87(0xb5),'cWkPG':function(_0x121377,_0x4e21dc,_0x1cd732,_0x3a86ec){return _0x121377(_0x4e21dc,_0x1cd732,_0x3a86ec);},'SZtKm':'sqlite_close_error'};try{this['db']&&(logger['info']({'event':'sqlite_closing'},_0x5b2c0a['JxDKY']),this['db']['close'](),this['db']=null,logger['info']({'event':_0x43ff87(0xbb)},_0x5b2c0a[_0x43ff87(0xb7)]));}catch(_0x312bd2){_0x5b2c0a[_0x43ff87(0xa4)](logError,_0x312bd2,{'event':_0x5b2c0a[_0x43ff87(0xb6)]},'Error\x20closing\x20SQLite\x20database:\x20'+_0x312bd2[_0x43ff87(0x9a)]);throw _0x312bd2;}}async['checkConnection'](){const _0x1ae882=a0_0x508722,_0x32218d={'OZhlk':'SELECT\x201','NhMBi':_0x1ae882(0xe5)};try{return!this['db']&&this[_0x1ae882(0xb0)](),this['db']['prepare'](_0x32218d[_0x1ae882(0x9f)])['get'](),!![];}catch(_0x42fa09){return logError(_0x42fa09,{'event':_0x32218d[_0x1ae882(0xdf)]},_0x1ae882(0xa2)+_0x42fa09[_0x1ae882(0x9a)]),![];}}}const sqliteDb=new SqliteDatabase();process['on'](a0_0x508722(0xb9),()=>{const _0x3a1e36=a0_0x508722,_0x3bed60={'gtwHR':'Received\x20SIGINT,\x20closing\x20SQLite\x20database...','BDYqE':function(_0xc0520,_0xbd6142,_0x261db2,_0x1054be){return _0xc0520(_0xbd6142,_0x261db2,_0x1054be);},'zefog':_0x3a1e36(0xb8)};logger['info']({'event':_0x3a1e36(0xbe),'signal':_0x3a1e36(0xb9)},_0x3bed60[_0x3a1e36(0xa8)]);try{sqliteDb[_0x3a1e36(0xa3)](),process[_0x3a1e36(0xd4)](0x0);}catch(_0x4ee588){_0x3bed60['BDYqE'](logError,_0x4ee588,{'event':_0x3bed60[_0x3a1e36(0xcf)],'signal':'SIGINT'},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x4ee588[_0x3a1e36(0x9a)]),process[_0x3a1e36(0xd4)](0x1);}}),process['on']('SIGTERM',()=>{const _0x44b258=a0_0x508722,_0x559f87={'qySel':_0x44b258(0xbe),'Izhzm':'Received\x20SIGTERM,\x20closing\x20SQLite\x20database...','GpZPt':function(_0x47a4c2,_0x292870,_0x32568d,_0x239d67){return _0x47a4c2(_0x292870,_0x32568d,_0x239d67);}};logger['info']({'event':_0x559f87['qySel'],'signal':'SIGTERM'},_0x559f87['Izhzm']);try{sqliteDb[_0x44b258(0xa3)](),process['exit'](0x0);}catch(_0x3b1afa){_0x559f87[_0x44b258(0xd9)](logError,_0x3b1afa,{'event':'sqlite_shutdown_error','signal':_0x44b258(0xc6)},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x3b1afa[_0x44b258(0x9a)]),process[_0x44b258(0xd4)](0x1);}}),module[a0_0x508722(0xd3)]=sqliteDb;
@@ -1 +1 @@
1
- function a0_0x513c(){const _0x20be88=['zxHJzwXFy2H1BMTFChjVy2vZC2vK','BenwzgS','Bwf0y2G','mtaZmdqZmZbZD1bKqvu','zxHJzwXFz2vUzxjHDgLVBL9JB21WBgv0zq','zgf0zq','iYWJiZaUmda','zLvptNG','z2v0q2vSBa','oda0mda3ohnyvgvtDG','CgvYy2vUDgfNzq','AxDWCeq','z2v0vvrdtw9UDgG','EwPcrwe','lI9SB2DNzxi','zgPLz20','Aw5MBW','ChvZAa','ExL5Es9TBs9Kza','y2vUDgvY','DhLWzq','rgzly1u','zxHWB3j0CW','uwrPCgC','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','qw14A1O','v29YA2jVB2TxCML0zxi','z2v0uM93','uKLszLa','y2H1BMTtAxPL','zgqTBw0TExL5Eq','DvPrz1O','A2v5CW','rKy0ndCYqZq','ywrKuM93CW','C3r5Bgu','wwfouuK','mJbqqur1vfa','tfvmBuS','B0zTDLG','wgj4CNG','ExL5Es1TBs1Kza','DMfSDwu','CMvWBgfJzq','BNvTyMvY','C3rYAw5N','zwnkyNu','y2PYC2m','vhz4zKm','Aw5JBhvKzxm','zMLSBa','mtqYmJe1mJfpsfHpDw8','tuHpqMq','mtfxugvvBM0','AxvWzxC','mxrNzfbZzG','CKTRv08','mZC4nJGYotjozuLtBei','Cvr2tKC','mc4Wmcu','yxzgsgG','tMDrq2u','q3feELm','nvLezNHPqq','z2vUzxjHDgvtDhjLyw1PBMC','z2v0rxHJzwXgB3jTyxq','zxHJzwXQCW','BNvTrM10','Cuzpue0','zM9UDa','DMjvvhK','C2XPy2u','mJa2nZbPuM9KrwC','zM9YBwf0rgf0zvn0CMLUzW','y3vYCMvUy3K','rfPptxm','Cgf0DgvYBG','mJi2ndG5nfbJChzOva','mJy0mJiWnMX1ELz0yG','ywXPz25Tzw50','BgvUz3rO','zM9YBwf0sgvHzgvY','v094rK0','z2v0vvrdrNvSBfLLyxi','zM9YrwfJAa','zMLSDgvY','AgDOChK','uxPsBem','yKjushO','z2vUzxjHDgvtAw1WBgu','y29SDw1UCW','C3rYzwfTAw5N','BLbjBMm','BwfW','rvHqt1jux0nivu5lx1njwKu','zw52','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','ywrKuM93','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','ohjtEMPjza','Dgv4Da','suPREM0','q0LbBeK','CgfYC2voDw1Izxi','rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','rKzgrKzgrKy','z2vUzxjHDgu','Dg9mB3DLCKnHC2u','sw52ywXPzcbJB2X1Bw5ZoIa','z2v0vgLTzq','ywrKv29YA3nOzwv0','y29TBwL0'];a0_0x513c=function(){return _0x20be88;};return a0_0x513c();}const a0_0x50f816=a0_0x589c;(function(_0x18432a,_0x19171b){const _0x526036=a0_0x589c,_0x10b9f6=_0x18432a();while(!![]){try{const _0xfb1ce2=parseInt(_0x526036(0x115))/0x1*(-parseInt(_0x526036(0xbb))/0x2)+parseInt(_0x526036(0xb6))/0x3*(-parseInt(_0x526036(0x103))/0x4)+parseInt(_0x526036(0xad))/0x5*(-parseInt(_0x526036(0xe7))/0x6)+parseInt(_0x526036(0xbc))/0x7*(-parseInt(_0x526036(0xd1))/0x8)+parseInt(_0x526036(0x111))/0x9+parseInt(_0x526036(0xe1))/0xa*(-parseInt(_0x526036(0x113))/0xb)+parseInt(_0x526036(0x117))/0xc;if(_0xfb1ce2===_0x19171b)break;else _0x10b9f6['push'](_0x10b9f6['shift']());}catch(_0x4e3b03){_0x10b9f6['push'](_0x10b9f6['shift']());}}}(a0_0x513c,0xc8743));const ExcelJS=require(a0_0x50f816(0xb0)),{logger}=require(a0_0x50f816(0xec));function a0_0x589c(_0x84e57f,_0x3df598){_0x84e57f=_0x84e57f-0xad;const _0x513c55=a0_0x513c();let _0x589c11=_0x513c55[_0x84e57f];if(a0_0x589c['lHuCkD']===undefined){var _0x37c586=function(_0x41c1ff){const _0x9d879c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3cb12f='',_0x554600='';for(let _0x576885=0x0,_0x46d613,_0xd62e8c,_0x36ee60=0x0;_0xd62e8c=_0x41c1ff['charAt'](_0x36ee60++);~_0xd62e8c&&(_0x46d613=_0x576885%0x4?_0x46d613*0x40+_0xd62e8c:_0xd62e8c,_0x576885++%0x4)?_0x3cb12f+=String['fromCharCode'](0xff&_0x46d613>>(-0x2*_0x576885&0x6)):0x0){_0xd62e8c=_0x9d879c['indexOf'](_0xd62e8c);}for(let _0x2c1d26=0x0,_0x48b99c=_0x3cb12f['length'];_0x2c1d26<_0x48b99c;_0x2c1d26++){_0x554600+='%'+('00'+_0x3cb12f['charCodeAt'](_0x2c1d26)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x554600);};a0_0x589c['LzGTsC']=_0x37c586,a0_0x589c['iNiCwj']={},a0_0x589c['lHuCkD']=!![];}const _0x57258d=_0x513c55[0x0],_0x19b416=_0x84e57f+_0x57258d,_0x45e40a=a0_0x589c['iNiCwj'][_0x19b416];return!_0x45e40a?(_0x589c11=a0_0x589c['LzGTsC'](_0x589c11),a0_0x589c['iNiCwj'][_0x19b416]=_0x589c11):_0x589c11=_0x45e40a,_0x589c11;}class ExcelGenerator{constructor(){const _0x371155=a0_0x50f816,_0xb724c5={'cjrsc':function(_0x3a1690,_0x493d51,_0x2338c5){return _0x3a1690(_0x493d51,_0x2338c5);}};this['chunkSize']=_0xb724c5[_0x371155(0x10d)](parseInt,process[_0x371155(0xcd)][_0x371155(0xcc)],0xa)||0x3e8;}async[a0_0x50f816(0xd8)](_0x163a17){const _0x1f950e=a0_0x50f816,_0x3a2600={'lCVdk':_0x1f950e(0xf6),'iwppD':function(_0x2eee3c,_0x5c04b8){return _0x2eee3c>_0x5c04b8;},'PlBbL':'Excel\x20generation\x20started','GDcdP':function(_0x1cb8d6,_0x2c180f){return _0x1cb8d6<=_0x2c180f;}},{data:_0x5f032a,columns:_0x1fa1f0,columnFormats:_0x5d4777,fieldLabels:_0x4b3097,filePath:_0x6b2d25,onProgress:_0x4c258f}=_0x163a17;logger['info']({'event':_0x3a2600[_0x1f950e(0xdf)],'rows':_0x5f032a[_0x1f950e(0xbe)],'columns':_0x1fa1f0?.['length']||'auto','columnFormats':_0x5d4777?Object[_0x1f950e(0xfe)](_0x5d4777):null,'fieldLabels':_0x4b3097?Object[_0x1f950e(0xfe)](_0x4b3097):null,'streaming':_0x3a2600[_0x1f950e(0xe9)](_0x5f032a[_0x1f950e(0xbe)],this['chunkSize'])},_0x3a2600['PlBbL']);if(_0x3a2600['GDcdP'](_0x5f032a[_0x1f950e(0xbe)],this['chunkSize']))return await this['generateSimple'](_0x5f032a,_0x1fa1f0,_0x5d4777,_0x4b3097,_0x6b2d25,_0x4c258f);return await this[_0x1f950e(0xae)](_0x5f032a,_0x1fa1f0,_0x5d4777,_0x4b3097,_0x6b2d25,_0x4c258f);}async[a0_0x50f816(0xc7)](_0x5250bc,_0x1cb4b4,_0x473b9b,_0x5d4873,_0x5b521a,_0x386214){const _0x28a6f2=a0_0x50f816,_0x3498be={'uZQgZ':'Data','Xbxrx':_0x28a6f2(0xd7),'AmxkZ':'solid','QzRlC':'middle','RIRfP':'frozen','NgQCe':function(_0x1e0b37,_0x3d4b8a){return _0x1e0b37(_0x3d4b8a);}},_0x56c5ed=new ExcelJS['Workbook'](),_0x34ce9c=_0x56c5ed[_0x28a6f2(0xdc)](_0x3498be[_0x28a6f2(0xfd)]),_0x5c6a2a=_0x1cb4b4||(_0x5250bc[_0x28a6f2(0xbe)]>0x0?Object[_0x28a6f2(0xfe)](_0x5250bc[0x0]):[]);_0x34ce9c[_0x28a6f2(0xc8)]=_0x5c6a2a[_0x28a6f2(0xcb)](_0x1eb919=>{const _0x4f0d38=_0x28a6f2,_0x51bfc6={'header':this[_0x4f0d38(0xbf)](_0x1eb919,_0x5d4873),'key':_0x1eb919,'width':0x14};if(_0x473b9b&&_0x473b9b[_0x1eb919]){const _0x3b93e9=_0x473b9b[_0x1eb919];if(_0x3b93e9['type']&&_0x3b93e9['type']['toLowerCase']()!==_0x4f0d38(0xe3)){const _0x3ac151=this[_0x4f0d38(0xaf)](_0x3b93e9);_0x3ac151&&(_0x51bfc6[_0x4f0d38(0x101)]={'numFmt':_0x3ac151});}}return _0x51bfc6;}),_0x34ce9c['getRow'](0x1)['font']={'bold':!![],'color':{'argb':_0x3498be[_0x28a6f2(0x106)]}},_0x34ce9c[_0x28a6f2(0xf9)](0x1)[_0x28a6f2(0x110)]={'type':_0x28a6f2(0xba),'pattern':_0x3498be[_0x28a6f2(0xf7)],'fgColor':{'argb':_0x28a6f2(0xff)}},_0x34ce9c[_0x28a6f2(0xf9)](0x1)[_0x28a6f2(0xbd)]={'vertical':_0x3498be[_0x28a6f2(0xc5)],'horizontal':_0x28a6f2(0xf1)};const _0x2085e0=_0x473b9b?this[_0x28a6f2(0xd0)](_0x5250bc,_0x5c6a2a,_0x473b9b):_0x5250bc;return _0x34ce9c[_0x28a6f2(0x100)](_0x2085e0),_0x473b9b&&this['applyCellFormatting'](_0x34ce9c,_0x5c6a2a,_0x473b9b,_0x5250bc['length']),_0x386214&&await _0x386214(0x32),_0x34ce9c['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x5c6a2a[_0x28a6f2(0xbe)]}},_0x34ce9c['views']=[{'state':_0x3498be[_0x28a6f2(0xfa)],'xSplit':0x0,'ySplit':0x1}],await _0x56c5ed['xlsx']['writeFile'](_0x5b521a),_0x386214&&await _0x3498be[_0x28a6f2(0x11b)](_0x386214,0x64),logger[_0x28a6f2(0xee)]({'event':'excel_generation_complete','method':'simple','rows':_0x5250bc[_0x28a6f2(0xbe)]},_0x28a6f2(0xd6)),_0x5b521a;}async['generateStreaming'](_0x5310ad,_0x112d9d,_0x334906,_0x439d95,_0x1c0a28,_0x222939){const _0x3a476c=a0_0x50f816,_0x320747={'DfKcU':function(_0x5ce94b,_0x3e2ee5){return _0x5ce94b+_0x3e2ee5;},'YdtCG':'date','DZOMs':'solid','oFmvX':'middle','iupew':_0x3a476c(0xf1),'Qdipg':function(_0x276c42,_0x1f14c8){return _0x276c42<_0x1f14c8;},'HIMhQ':function(_0x263eb7,_0x37c09c){return _0x263eb7+_0x37c09c;},'hKhoO':function(_0x191800,_0x2d1701){return _0x191800*_0x2d1701;},'LDoPv':function(_0x119923,_0x308cc6){return _0x119923/_0x308cc6;},'qFOPM':function(_0x2898bf,_0x3cef89){return _0x2898bf(_0x3cef89);},'rKkWO':function(_0x52da9f,_0x1b8e0a){return _0x52da9f/_0x1b8e0a;}},_0x18d2bf=new ExcelJS['stream']['xlsx'][(_0x3a476c(0xf8))]({'filename':_0x1c0a28,'useStyles':!![],'useSharedStrings':!![]}),_0x371886=_0x18d2bf['addWorksheet']('Data'),_0xfaa4fa=_0x112d9d||(_0x5310ad[_0x3a476c(0xbe)]>0x0?Object['keys'](_0x5310ad[0x0]):[]),_0x5b59c5={};_0xfaa4fa[_0x3a476c(0xc2)]((_0x4a8672,_0xffd175)=>{const _0x160e07=_0x3a476c;_0x5b59c5[_0x4a8672]=_0x320747[_0x160e07(0xf3)](_0xffd175,0x1);}),_0x371886[_0x3a476c(0xc8)]=_0xfaa4fa[_0x3a476c(0xcb)](_0x8e3ed=>{const _0x23f880=_0x3a476c,_0x44e34a={'header':this[_0x23f880(0xbf)](_0x8e3ed,_0x439d95),'key':_0x8e3ed,'width':0x14};if(_0x334906&&_0x334906[_0x8e3ed]){const _0x4a29cf=_0x334906[_0x8e3ed];if(_0x4a29cf[_0x23f880(0xf2)]&&_0x4a29cf['type']['toLowerCase']()!==_0x320747['YdtCG']){const _0x4dd29b=this[_0x23f880(0xaf)](_0x4a29cf);_0x4dd29b&&(_0x44e34a[_0x23f880(0x101)]={'numFmt':_0x4dd29b});}}return _0x44e34a;});const _0x4e9a0b=_0x371886[_0x3a476c(0xf9)](0x1);_0x4e9a0b[_0x3a476c(0xb3)]={'bold':!![],'color':{'argb':'FFFFFFFF'}},_0x4e9a0b['fill']={'type':_0x3a476c(0xba),'pattern':_0x320747[_0x3a476c(0xb9)],'fgColor':{'argb':_0x3a476c(0xff)}},_0x4e9a0b['alignment']={'vertical':_0x320747[_0x3a476c(0x105)],'horizontal':_0x320747[_0x3a476c(0x114)]},_0x4e9a0b['commit']();const _0xfb2134=_0x5310ad['length'];let _0x1b87d6=0x0;for(let _0x41bce8=0x0;_0x320747[_0x3a476c(0xf5)](_0x41bce8,_0xfb2134);_0x41bce8+=this[_0x3a476c(0xfb)]){const _0x4a9226=_0x5310ad[_0x3a476c(0xb5)](_0x41bce8,_0x320747['HIMhQ'](_0x41bce8,this['chunkSize']));for(const _0x39c9c6 of _0x4a9226){const _0xfca5cc=_0x334906?this['preprocessTextRow'](_0x39c9c6,_0xfaa4fa,_0x334906):_0x39c9c6,_0x1838e2=_0x371886[_0x3a476c(0xcf)](_0xfca5cc);_0x334906&&this['applyRowFormatting'](_0x1838e2,_0xfca5cc,_0xfaa4fa,_0x334906),_0x1838e2[_0x3a476c(0xdd)](),_0x1b87d6++;}if(_0x222939){const _0xc18e5a=Math['round'](_0x320747['hKhoO'](_0x320747['LDoPv'](_0x1b87d6,_0xfb2134),0x64));await _0x320747[_0x3a476c(0xb2)](_0x222939,_0xc18e5a);}logger['debug']({'event':_0x3a476c(0xde),'processed':_0x1b87d6,'total':_0xfb2134},'Processed\x20'+_0x1b87d6+'/'+_0xfb2134+'\x20rows');}return _0x371886['commit'](),await _0x18d2bf[_0x3a476c(0xdd)](),logger['info']({'event':_0x3a476c(0xe2),'method':_0x3a476c(0xc9),'rows':_0xfb2134,'chunks':Math['ceil'](_0x320747[_0x3a476c(0x116)](_0xfb2134,this[_0x3a476c(0xfb)]))},_0x3a476c(0xce)),_0x1c0a28;}[a0_0x50f816(0xbf)](_0x5f255e,_0x553f95){if(_0x553f95&&_0x553f95[_0x5f255e])return _0x553f95[_0x5f255e];return String(_0x5f255e)['toUpperCase']();}['validateColumns'](_0x1df1bc,_0x3ca03a){const _0x3efb0f=a0_0x50f816,_0xc5e09a={'djegm':function(_0x13b11d,_0x4722fd){return _0x13b11d===_0x4722fd;},'vbUTy':function(_0x246efd,_0x4c1853){return _0x246efd===_0x4c1853;}};if(!_0x3ca03a||_0xc5e09a[_0x3efb0f(0xed)](_0x3ca03a[_0x3efb0f(0xbe)],0x0))return!![];if(_0xc5e09a[_0x3efb0f(0xb4)](_0x1df1bc['length'],0x0))return!![];const _0x44897a=Object[_0x3efb0f(0xfe)](_0x1df1bc[0x0]),_0x2ccfa3=_0x3ca03a[_0x3efb0f(0xc3)](_0x45c01f=>!_0x44897a[_0x3efb0f(0x10f)](_0x45c01f));if(_0x2ccfa3[_0x3efb0f(0xbe)]>0x0)throw new Error(_0x3efb0f(0xda)+_0x2ccfa3['join'](',\x20'));return!![];}['getExcelFormat'](_0x5a56e4){const _0x27e3bd=a0_0x50f816,_0xe7e3e4={'WOxFM':_0x27e3bd(0x10a),'MHOBd':function(_0x4dd516,_0x1210ef){return _0x4dd516||_0x1210ef;},'yjBEa':_0x27e3bd(0xe8),'CqDzS':function(_0x22fdb4,_0x46ac8e){return _0x22fdb4||_0x46ac8e;},'TDEDe':_0x27e3bd(0xd2)};if(!_0x5a56e4||!_0x5a56e4['type'])return null;const {type:_0x530697,format:_0x4a1556}=_0x5a56e4;switch(_0x530697['toLowerCase']()){case _0x27e3bd(0xe3):return _0x4a1556?_0x4a1556['toLowerCase']():'dd/mm/yyyy';case _0xe7e3e4[_0x27e3bd(0xc0)]:return _0x4a1556||_0x27e3bd(0xe4);case _0x27e3bd(0xb8):return _0xe7e3e4[_0x27e3bd(0x112)](_0x4a1556,'\x22Rp\x20\x22#,##0');case _0xe7e3e4[_0x27e3bd(0xeb)]:return _0xe7e3e4[_0x27e3bd(0x11c)](_0x4a1556,_0x27e3bd(0x119));case _0xe7e3e4['TDEDe']:return'@';default:return null;}}['applyCellFormatting'](_0x45c809,_0x297e33,_0x1e76fd,_0x151135){const _0x1ff6e2=a0_0x50f816,_0x7756ac={'CIAlI':function(_0x579cb3,_0x38b14c){return _0x579cb3+_0x38b14c;}};if(!_0x1e76fd)return;_0x297e33[_0x1ff6e2(0xc2)]((_0x4b9535,_0x4d0be0)=>{const _0xc3dd4=_0x1ff6e2,_0x284860=_0x1e76fd[_0x4b9535];if(!_0x284860)return;const _0x5c95f4=_0x4d0be0+0x1;for(let _0x1c201a=0x2;_0x1c201a<=_0x7756ac[_0xc3dd4(0xd4)](_0x151135,0x1);_0x1c201a++){const _0x45e5f0=_0x45c809[_0xc3dd4(0xe6)](_0x1c201a,_0x5c95f4);this['formatCell'](_0x45e5f0,_0x284860);}});}['applyRowFormatting'](_0x4d4f4c,_0xc3953f,_0xe514c0,_0x3a1aa3){const _0x1c38a3=a0_0x50f816;if(!_0x3a1aa3)return;_0xe514c0[_0x1c38a3(0xc2)]((_0xd4f05d,_0x9bc380)=>{const _0x51c6b7=_0x3a1aa3[_0xd4f05d];if(!_0x51c6b7)return;const _0x16129f=_0x4d4f4c['getCell'](_0x9bc380+0x1);this['formatCell'](_0x16129f,_0x51c6b7);});}['formatCell'](_0x26cdc8,_0x4c7d7d){const _0x2c0621=a0_0x50f816,_0x10f5b9={'YaNQI':function(_0x204aca,_0x23c154){return _0x204aca===_0x23c154;},'wirAw':function(_0x2e928d,_0x2aee5b){return _0x2e928d===_0x2aee5b;},'fUONx':'percentage','wLGDg':function(_0x383e23,_0x74462c){return _0x383e23!==_0x74462c;},'JavGz':function(_0x450ee1,_0x8ba240){return _0x450ee1(_0x8ba240);},'nPInc':'left','chWSX':'middle'};if(!_0x4c7d7d||!_0x4c7d7d['type'])return;const {type:_0x4aeed1,format:_0x5e7e61}=_0x4c7d7d;if(_0x10f5b9[_0x2c0621(0x102)](_0x4aeed1['toLowerCase'](),_0x2c0621(0xe3))&&_0x26cdc8[_0x2c0621(0x108)]){const _0x4c537a=this[_0x2c0621(0xb7)](_0x26cdc8['value'],_0x5e7e61);_0x4c537a&&(_0x26cdc8[_0x2c0621(0x108)]=_0x4c537a);return;}if((_0x4aeed1[_0x2c0621(0xd9)]()==='number'||_0x4aeed1['toLowerCase']()==='currency'||_0x10f5b9['wirAw'](_0x4aeed1[_0x2c0621(0xd9)](),_0x10f5b9[_0x2c0621(0xe5)]))&&_0x26cdc8[_0x2c0621(0x108)]){const _0x81d1ef=this['parseNumber'](_0x26cdc8['value']);if(_0x10f5b9['wLGDg'](_0x81d1ef,null)){_0x26cdc8[_0x2c0621(0x108)]=_0x81d1ef;const _0x1619b0=this['getExcelFormat'](_0x4c7d7d);_0x1619b0&&(_0x26cdc8[_0x2c0621(0xb1)]=_0x1619b0);}}_0x4aeed1['toLowerCase']()===_0x2c0621(0xd2)&&_0x26cdc8[_0x2c0621(0x108)]&&(_0x26cdc8['numFmt']='@',typeof _0x26cdc8[_0x2c0621(0x108)]!==_0x2c0621(0x10b)&&(_0x26cdc8[_0x2c0621(0x108)]=_0x10f5b9['JavGz'](String,_0x26cdc8['value'])),_0x26cdc8[_0x2c0621(0xbd)]={'horizontal':_0x10f5b9[_0x2c0621(0xca)],'vertical':_0x10f5b9['chWSX']});}['formatDateString'](_0x3c6322,_0x3103f9){const _0x12250b=a0_0x50f816,_0x72bac0={'IJkzm':function(_0x447430,_0xe8bfec,_0x33e222){return _0x447430(_0xe8bfec,_0x33e222);},'bBTHz':function(_0x4024c4,_0x530cee){return _0x4024c4===_0x530cee;},'YcUFF':'number','GIMMH':function(_0x257cdd,_0x4e5acd){return _0x257cdd(_0x4e5acd);},'LULmK':function(_0xd09c59,_0x496cbf){return _0xd09c59||_0x496cbf;},'avFHh':'DD/MM/YYYY','ecJbu':function(_0x58f26f,_0x32e143){return _0x58f26f===_0x32e143;},'UCFuU':'mm/dd/yyyy','trljy':_0x12250b(0x107),'jYkLQ':_0x12250b(0xf0)};if(!_0x3c6322)return null;let _0x5edaef,_0x585d54,_0x46af2a;if(_0x3c6322 instanceof Date)_0x5edaef=_0x3c6322[_0x12250b(0xc1)](),_0x585d54=_0x3c6322['getUTCMonth']()+0x1,_0x46af2a=_0x3c6322['getUTCDate']();else{if(typeof _0x3c6322==='string'){const _0xf14d72=_0x3c6322['match'](/^(\d{4})-(\d{2})-(\d{2})/);if(_0xf14d72)_0x5edaef=_0x72bac0[_0x12250b(0xd3)](parseInt,_0xf14d72[0x1],0xa),_0x585d54=parseInt(_0xf14d72[0x2],0xa),_0x46af2a=parseInt(_0xf14d72[0x3],0xa);else{const _0xdb2485=_0x3c6322[_0x12250b(0xe0)](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0xdb2485)_0x46af2a=parseInt(_0xdb2485[0x1],0xa),_0x585d54=parseInt(_0xdb2485[0x2],0xa),_0x5edaef=_0x72bac0['IJkzm'](parseInt,_0xdb2485[0x3],0xa);else{const _0xa165b9=_0x3c6322['match'](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0xa165b9&&(_0x5edaef=_0x72bac0[_0x12250b(0xd3)](parseInt,_0xa165b9[0x1],0xa),_0x585d54=_0x72bac0[_0x12250b(0xd3)](parseInt,_0xa165b9[0x2],0xa),_0x46af2a=_0x72bac0[_0x12250b(0xd3)](parseInt,_0xa165b9[0x3],0xa));}}}else{if(_0x72bac0['bBTHz'](typeof _0x3c6322,_0x72bac0['YcUFF'])){const _0x386ff1=new Date(_0x3c6322);!isNaN(_0x386ff1[_0x12250b(0xdb)]())&&(_0x5edaef=_0x386ff1[_0x12250b(0xc1)](),_0x585d54=_0x386ff1[_0x12250b(0xea)]()+0x1,_0x46af2a=_0x386ff1['getUTCDate']());}}}if(!_0x5edaef||!_0x585d54||!_0x46af2a)return null;const _0x283773=String(_0x46af2a)['padStart'](0x2,'0'),_0x2ab206=String(_0x585d54)['padStart'](0x2,'0'),_0x3f832b=_0x72bac0['GIMMH'](String,_0x5edaef),_0x53dc4b=_0x72bac0[_0x12250b(0x104)](_0x3103f9,_0x72bac0[_0x12250b(0x11a)])['toLowerCase']();if(_0x72bac0['ecJbu'](_0x53dc4b,'dd/mm/yyyy'))return _0x283773+'/'+_0x2ab206+'/'+_0x3f832b;else{if(_0x72bac0[_0x12250b(0xc6)](_0x53dc4b,_0x72bac0['UCFuU']))return _0x2ab206+'/'+_0x283773+'/'+_0x3f832b;else{if(_0x72bac0[_0x12250b(0x10c)](_0x53dc4b,_0x72bac0['trljy']))return _0x3f832b+'-'+_0x2ab206+'-'+_0x283773;else{if(_0x72bac0[_0x12250b(0x10c)](_0x53dc4b,_0x12250b(0xfc)))return _0x283773+'-'+_0x2ab206+'-'+_0x3f832b;else return _0x53dc4b===_0x72bac0['jYkLQ']?_0x3f832b+'/'+_0x2ab206+'/'+_0x283773:_0x283773+'/'+_0x2ab206+'/'+_0x3f832b;}}}}[a0_0x50f816(0xd5)](_0x44dc69){const _0x1c7b9b=a0_0x50f816,_0x59f580={'TvxfC':function(_0xe1f592,_0x4184b1){return _0xe1f592===_0x4184b1;},'WIKKU':'string','EIfJW':function(_0x13106d,_0x222544){return _0x13106d(_0x222544);}};if(_0x59f580[_0x1c7b9b(0x10e)](typeof _0x44dc69,_0x1c7b9b(0x10a)))return _0x44dc69;if(typeof _0x44dc69===_0x59f580['WIKKU']){const _0x3f50bf=_0x44dc69[_0x1c7b9b(0x109)](/[^\d.-]/g,''),_0x2c96eb=parseFloat(_0x3f50bf);if(!_0x59f580['EIfJW'](isNaN,_0x2c96eb))return _0x2c96eb;}return null;}[a0_0x50f816(0xd0)](_0x3bf387,_0x1225ad,_0x491c00){const _0xdce3f5=a0_0x50f816,_0x4b4fb5={'bWvOq':function(_0x46165a,_0x21f2a1){return _0x46165a(_0x21f2a1);},'hghpy':function(_0x45cb07,_0x103fb1){return _0x45cb07===_0x103fb1;}};if(!_0x491c00)return _0x3bf387;const _0x44a9b0=[];_0x1225ad['forEach'](_0x1c108b=>{const _0x212af9=a0_0x589c,_0xe8b6d0=_0x491c00[_0x1c108b];_0xe8b6d0&&_0xe8b6d0['type']&&_0xe8b6d0[_0x212af9(0xf2)]['toLowerCase']()==='text'&&_0x44a9b0[_0x212af9(0xef)](_0x1c108b);});if(_0x4b4fb5[_0xdce3f5(0xc4)](_0x44a9b0[_0xdce3f5(0xbe)],0x0))return _0x3bf387;return _0x3bf387[_0xdce3f5(0xcb)](_0x58d516=>{const _0x4781b6={'GvkQV':function(_0x85c23a,_0x362001){return _0x4b4fb5['bWvOq'](_0x85c23a,_0x362001);}},_0x1725a4={..._0x58d516};return _0x44a9b0['forEach'](_0x43d600=>{_0x1725a4[_0x43d600]!==null&&_0x1725a4[_0x43d600]!==undefined&&(_0x1725a4[_0x43d600]='\x27'+_0x4781b6['GvkQV'](String,_0x1725a4[_0x43d600]));}),_0x1725a4;});}['preprocessTextRow'](_0x267d3a,_0x1bcdae,_0x53c5af){const _0x466c32=a0_0x50f816,_0x37e3fe={'kzuoP':function(_0x56cf89,_0x129b0f){return _0x56cf89!==_0x129b0f;},'HefQa':function(_0x1d60c0,_0x568237){return _0x1d60c0+_0x568237;},'qTvNG':function(_0x36cc00,_0x48495f){return _0x36cc00(_0x48495f);}};if(!_0x53c5af)return _0x267d3a;const _0x4156f4=[];_0x1bcdae[_0x466c32(0xc2)](_0x73d3ee=>{const _0x3d5ef3=_0x466c32,_0x177c78=_0x53c5af[_0x73d3ee];_0x177c78&&_0x177c78[_0x3d5ef3(0xf2)]&&_0x177c78['type']['toLowerCase']()==='text'&&_0x4156f4['push'](_0x73d3ee);});if(_0x4156f4['length']===0x0)return _0x267d3a;const _0x5547ee={..._0x267d3a};return _0x4156f4['forEach'](_0x4f77ab=>{const _0x186769=_0x466c32;_0x37e3fe['kzuoP'](_0x5547ee[_0x4f77ab],null)&&_0x5547ee[_0x4f77ab]!==undefined&&(_0x5547ee[_0x4f77ab]=_0x37e3fe['HefQa']('\x27',_0x37e3fe[_0x186769(0x118)](String,_0x5547ee[_0x4f77ab])));}),_0x5547ee;}}module[a0_0x50f816(0xf4)]=ExcelGenerator;
1
+ const a0_0x3f4818=a0_0x2727;function a0_0x2727(_0x28e9b2,_0x39ef20){_0x28e9b2=_0x28e9b2-0x189;const _0x3533e1=a0_0x3533();let _0x2727ad=_0x3533e1[_0x28e9b2];if(a0_0x2727['xPbtXM']===undefined){var _0x272914=function(_0x2e30fe){const _0x499133='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20da0c='',_0x13c0a4='';for(let _0x54a3cc=0x0,_0x275fb8,_0x307c83,_0xc5ee6=0x0;_0x307c83=_0x2e30fe['charAt'](_0xc5ee6++);~_0x307c83&&(_0x275fb8=_0x54a3cc%0x4?_0x275fb8*0x40+_0x307c83:_0x307c83,_0x54a3cc++%0x4)?_0x20da0c+=String['fromCharCode'](0xff&_0x275fb8>>(-0x2*_0x54a3cc&0x6)):0x0){_0x307c83=_0x499133['indexOf'](_0x307c83);}for(let _0x294ddb=0x0,_0x5b97e4=_0x20da0c['length'];_0x294ddb<_0x5b97e4;_0x294ddb++){_0x13c0a4+='%'+('00'+_0x20da0c['charCodeAt'](_0x294ddb)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x13c0a4);};a0_0x2727['UClUfO']=_0x272914,a0_0x2727['oMCTuo']={},a0_0x2727['xPbtXM']=!![];}const _0x30b428=_0x3533e1[0x0],_0x53df08=_0x28e9b2+_0x30b428,_0x2b0fc1=a0_0x2727['oMCTuo'][_0x53df08];return!_0x2b0fc1?(_0x2727ad=a0_0x2727['UClUfO'](_0x2727ad),a0_0x2727['oMCTuo'][_0x53df08]=_0x2727ad):_0x2727ad=_0x2b0fc1,_0x2727ad;}(function(_0x5e7ac8,_0x4b3902){const _0x10902c=a0_0x2727,_0x1382ca=_0x5e7ac8();while(!![]){try{const _0xb347d7=-parseInt(_0x10902c(0x1d4))/0x1*(parseInt(_0x10902c(0x1a0))/0x2)+parseInt(_0x10902c(0x1d5))/0x3*(parseInt(_0x10902c(0x1bf))/0x4)+parseInt(_0x10902c(0x1bb))/0x5*(parseInt(_0x10902c(0x1e2))/0x6)+-parseInt(_0x10902c(0x18e))/0x7+-parseInt(_0x10902c(0x1e9))/0x8*(parseInt(_0x10902c(0x1d2))/0x9)+-parseInt(_0x10902c(0x1df))/0xa+-parseInt(_0x10902c(0x1ae))/0xb*(-parseInt(_0x10902c(0x1b6))/0xc);if(_0xb347d7===_0x4b3902)break;else _0x1382ca['push'](_0x1382ca['shift']());}catch(_0x2f1f60){_0x1382ca['push'](_0x1382ca['shift']());}}}(a0_0x3533,0x326c8));const ExcelJS=require('exceljs'),{logger}=require('./logger');class ExcelGenerator{constructor(){this['chunkSize']=parseInt(process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async[a0_0x3f4818(0x1cb)](_0x3fa83a){const _0x3fd153=a0_0x3f4818,_0x1087b5={'hEZvq':_0x3fd153(0x19d),'aGLWz':_0x3fd153(0x1c2)},{data:_0x26184c,columns:_0x449bfc,columnFormats:_0x26ab31,fieldLabels:_0x239260,filePath:_0x5ba966,onProgress:_0x6d936c}=_0x3fa83a;logger['info']({'event':_0x1087b5[_0x3fd153(0x1b0)],'rows':_0x26184c[_0x3fd153(0x19e)],'columns':_0x449bfc?.['length']||'auto','columnFormats':_0x26ab31?Object['keys'](_0x26ab31):null,'fieldLabels':_0x239260?Object['keys'](_0x239260):null,'streaming':_0x26184c['length']>this['chunkSize']},_0x1087b5['aGLWz']);if(_0x26184c[_0x3fd153(0x19e)]<=this['chunkSize'])return await this['generateSimple'](_0x26184c,_0x449bfc,_0x26ab31,_0x239260,_0x5ba966,_0x6d936c);return await this['generateStreaming'](_0x26184c,_0x449bfc,_0x26ab31,_0x239260,_0x5ba966,_0x6d936c);}async[a0_0x3f4818(0x1ce)](_0x3519c1,_0xd09add,_0x5d78f0,_0x52e4d6,_0x1c85e2,_0x13612b){const _0x14f0fd=a0_0x3f4818,_0x1c9464={'NkNDz':_0x14f0fd(0x1dd),'cQNII':function(_0xb61aef,_0x4e9de4){return _0xb61aef>_0x4e9de4;},'WsLUM':'FF4472C4','ANhfG':_0x14f0fd(0x19a),'PPwcn':_0x14f0fd(0x1cc),'GeTqw':function(_0x245267,_0x485266){return _0x245267(_0x485266);},'zPeBZ':_0x14f0fd(0x1c8),'DtkNs':_0x14f0fd(0x195),'cdpYx':'Excel\x20generated\x20(simple\x20method)'},_0x210fc1=new ExcelJS['Workbook'](),_0x5c25b8=_0x210fc1['addWorksheet'](_0x1c9464[_0x14f0fd(0x1c4)]),_0x25e81d=_0xd09add||(_0x1c9464['cQNII'](_0x3519c1['length'],0x0)?Object['keys'](_0x3519c1[0x0]):[]);_0x5c25b8['columns']=_0x25e81d[_0x14f0fd(0x1dc)](_0xbe550b=>{const _0x410bb5=_0x14f0fd,_0x15a027={'header':this['formatHeader'](_0xbe550b,_0x52e4d6),'key':_0xbe550b,'width':0x14};if(_0x5d78f0&&_0x5d78f0[_0xbe550b]){const _0x5192ec=_0x5d78f0[_0xbe550b];if(_0x5192ec['type']&&_0x5192ec['type'][_0x410bb5(0x1c7)]()!==_0x410bb5(0x1a2)){const _0x356188=this[_0x410bb5(0x1eb)](_0x5192ec);_0x356188&&(_0x15a027[_0x410bb5(0x1b3)]={'numFmt':_0x356188});}}return _0x15a027;}),_0x5c25b8[_0x14f0fd(0x1a4)](0x1)[_0x14f0fd(0x1ea)]={'bold':!![],'color':{'argb':'FFFFFFFF'}},_0x5c25b8[_0x14f0fd(0x1a4)](0x1)[_0x14f0fd(0x1c5)]={'type':'pattern','pattern':_0x14f0fd(0x1f9),'fgColor':{'argb':_0x1c9464['WsLUM']}},_0x5c25b8[_0x14f0fd(0x1a4)](0x1)[_0x14f0fd(0x1ac)]={'vertical':_0x1c9464[_0x14f0fd(0x1db)],'horizontal':_0x1c9464['PPwcn']};const _0x1cb24f=_0x5d78f0?this[_0x14f0fd(0x1c0)](_0x3519c1,_0x25e81d,_0x5d78f0):_0x3519c1;return _0x5c25b8[_0x14f0fd(0x18d)](_0x1cb24f),_0x5d78f0&&this['applyCellFormatting'](_0x5c25b8,_0x25e81d,_0x5d78f0,_0x3519c1[_0x14f0fd(0x19e)]),_0x13612b&&await _0x1c9464['GeTqw'](_0x13612b,0x32),_0x5c25b8['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x25e81d['length']}},_0x5c25b8['views']=[{'state':_0x1c9464['zPeBZ'],'xSplit':0x0,'ySplit':0x1}],await _0x210fc1['xlsx']['writeFile'](_0x1c85e2),_0x13612b&&await _0x1c9464[_0x14f0fd(0x18f)](_0x13612b,0x64),logger[_0x14f0fd(0x190)]({'event':_0x1c9464['DtkNs'],'method':_0x14f0fd(0x1e6),'rows':_0x3519c1['length']},_0x1c9464[_0x14f0fd(0x19f)]),_0x1c85e2;}async['generateStreaming'](_0x10201e,_0x5555ea,_0x490354,_0x5e5460,_0x2bd05d,_0x5025f7){const _0x26bef6=a0_0x3f4818,_0xd13fd0={'AoKCK':'date','KiveY':'Data','VUeOM':_0x26bef6(0x1e0),'IvRYV':function(_0x4c7c08,_0x1fe2ef){return _0x4c7c08+_0x1fe2ef;},'NQDlE':function(_0x139319,_0x3fddfd){return _0x139319*_0x3fddfd;},'zXQsC':function(_0x79dc3a,_0x2c3513){return _0x79dc3a/_0x2c3513;},'fJAKH':'excel_chunk_processed','OpTPG':_0x26bef6(0x195)},_0x96de5=new ExcelJS[(_0x26bef6(0x1d9))][(_0x26bef6(0x1f0))]['WorkbookWriter']({'filename':_0x2bd05d,'useStyles':!![],'useSharedStrings':!![]}),_0x266689=_0x96de5[_0x26bef6(0x1e1)](_0xd13fd0['KiveY']),_0x209324=_0x5555ea||(_0x10201e['length']>0x0?Object[_0x26bef6(0x19b)](_0x10201e[0x0]):[]),_0x48015f={};_0x209324['forEach']((_0x3ba5ad,_0x12f432)=>{_0x48015f[_0x3ba5ad]=_0x12f432+0x1;}),_0x266689['columns']=_0x209324['map'](_0x5b635c=>{const _0x25647a=_0x26bef6,_0xe95f8d={'header':this[_0x25647a(0x1c3)](_0x5b635c,_0x5e5460),'key':_0x5b635c,'width':0x14};if(_0x490354&&_0x490354[_0x5b635c]){const _0x1f0fb2=_0x490354[_0x5b635c];if(_0x1f0fb2['type']&&_0x1f0fb2[_0x25647a(0x1af)]['toLowerCase']()!==_0xd13fd0['AoKCK']){const _0x170932=this['getExcelFormat'](_0x1f0fb2);_0x170932&&(_0xe95f8d[_0x25647a(0x1b3)]={'numFmt':_0x170932});}}return _0xe95f8d;});const _0x1b318a=_0x266689[_0x26bef6(0x1a4)](0x1);_0x1b318a[_0x26bef6(0x1ea)]={'bold':!![],'color':{'argb':_0x26bef6(0x1a3)}},_0x1b318a['fill']={'type':_0xd13fd0[_0x26bef6(0x191)],'pattern':'solid','fgColor':{'argb':_0x26bef6(0x1f6)}},_0x1b318a[_0x26bef6(0x1ac)]={'vertical':_0x26bef6(0x19a),'horizontal':'center'},_0x1b318a[_0x26bef6(0x1f7)]();const _0x5453b1=_0x10201e['length'];let _0x3c272a=0x0;for(let _0x3fd2d9=0x0;_0x3fd2d9<_0x5453b1;_0x3fd2d9+=this['chunkSize']){const _0x124e36=_0x10201e[_0x26bef6(0x1bd)](_0x3fd2d9,_0xd13fd0[_0x26bef6(0x1ad)](_0x3fd2d9,this['chunkSize']));for(const _0x48f7d6 of _0x124e36){const _0x256f9c=_0x490354?this['preprocessTextRow'](_0x48f7d6,_0x209324,_0x490354):_0x48f7d6,_0xc0cade=_0x266689[_0x26bef6(0x1ef)](_0x256f9c);_0x490354&&this['applyRowFormatting'](_0xc0cade,_0x256f9c,_0x209324,_0x490354),_0xc0cade['commit'](),_0x3c272a++;}if(_0x5025f7){const _0x360c75=Math['round'](_0xd13fd0[_0x26bef6(0x1b7)](_0xd13fd0['zXQsC'](_0x3c272a,_0x5453b1),0x64));await _0x5025f7(_0x360c75);}logger[_0x26bef6(0x1ec)]({'event':_0xd13fd0[_0x26bef6(0x18b)],'processed':_0x3c272a,'total':_0x5453b1},_0x26bef6(0x1ca)+_0x3c272a+'/'+_0x5453b1+_0x26bef6(0x1ee));}return _0x266689['commit'](),await _0x96de5[_0x26bef6(0x1f7)](),logger['info']({'event':_0xd13fd0[_0x26bef6(0x196)],'method':'streaming','rows':_0x5453b1,'chunks':Math[_0x26bef6(0x1d1)](_0xd13fd0['zXQsC'](_0x5453b1,this[_0x26bef6(0x1b4)]))},_0x26bef6(0x193)),_0x2bd05d;}['formatHeader'](_0x618e1,_0x24d972){const _0x3cbdfb=a0_0x3f4818,_0x538ceb={'duIqO':function(_0x8c87e4,_0x8d7fed){return _0x8c87e4(_0x8d7fed);}};if(_0x24d972&&_0x24d972[_0x618e1])return _0x24d972[_0x618e1];return _0x538ceb[_0x3cbdfb(0x1c6)](String,_0x618e1)['toUpperCase']();}['validateColumns'](_0x11b65a,_0x2f691b){const _0x205d3f=a0_0x3f4818,_0x46b31e={'Nbjzd':function(_0x21cab9,_0x2af497){return _0x21cab9===_0x2af497;}};if(!_0x2f691b||_0x46b31e['Nbjzd'](_0x2f691b['length'],0x0))return!![];if(_0x11b65a[_0x205d3f(0x19e)]===0x0)return!![];const _0xffad17=Object['keys'](_0x11b65a[0x0]),_0x4a95ac=_0x2f691b[_0x205d3f(0x1a8)](_0x3f56e6=>!_0xffad17['includes'](_0x3f56e6));if(_0x4a95ac[_0x205d3f(0x19e)]>0x0)throw new Error(_0x205d3f(0x1e3)+_0x4a95ac['join'](',\x20'));return!![];}['getExcelFormat'](_0x507ec8){const _0x3bdcbf=a0_0x3f4818,_0x3162a4={'oNksk':'date','FQrUW':'\x22Rp\x20\x22#,##0','mtSeC':'percentage','oWeTg':'0.00%'};if(!_0x507ec8||!_0x507ec8[_0x3bdcbf(0x1af)])return null;const {type:_0x407b06,format:_0x283966}=_0x507ec8;switch(_0x407b06[_0x3bdcbf(0x1c7)]()){case _0x3162a4['oNksk']:return _0x283966?_0x283966[_0x3bdcbf(0x1c7)]():'dd/mm/yyyy';case'number':return _0x283966||'#,##0.00';case'currency':return _0x283966||_0x3162a4['FQrUW'];case _0x3162a4['mtSeC']:return _0x283966||_0x3162a4['oWeTg'];case _0x3bdcbf(0x1f3):return'@';default:return null;}}['applyCellFormatting'](_0x333359,_0x463623,_0x1b2e66,_0x112709){const _0x1501d7={'yOINU':function(_0x52771a,_0x190e0e){return _0x52771a+_0x190e0e;},'BfyCj':function(_0x66e9c3,_0x30edaa){return _0x66e9c3<=_0x30edaa;}};if(!_0x1b2e66)return;_0x463623['forEach']((_0x3a2c2f,_0x428d3a)=>{const _0x583aeb=a0_0x2727,_0x642edb=_0x1b2e66[_0x3a2c2f];if(!_0x642edb)return;const _0x4f2389=_0x1501d7['yOINU'](_0x428d3a,0x1);for(let _0x1027b3=0x2;_0x1501d7[_0x583aeb(0x1e8)](_0x1027b3,_0x112709+0x1);_0x1027b3++){const _0x49663c=_0x333359['getCell'](_0x1027b3,_0x4f2389);this[_0x583aeb(0x192)](_0x49663c,_0x642edb);}});}['applyRowFormatting'](_0x561f6f,_0x4d059b,_0x1f2818,_0x436443){const _0x171a25={'Duxpc':function(_0x2dc0f1,_0x495b02){return _0x2dc0f1+_0x495b02;}};if(!_0x436443)return;_0x1f2818['forEach']((_0x4e48b6,_0xe4eec9)=>{const _0x532cde=a0_0x2727,_0x52adc7=_0x436443[_0x4e48b6];if(!_0x52adc7)return;const _0x2466b0=_0x561f6f[_0x532cde(0x1b5)](_0x171a25[_0x532cde(0x1cf)](_0xe4eec9,0x1));this['formatCell'](_0x2466b0,_0x52adc7);});}[a0_0x3f4818(0x192)](_0x2e806f,_0x5e1cf0){const _0x41c9a1=a0_0x3f4818,_0x3f8826={'nkMlg':function(_0xd2f42a,_0x163424){return _0xd2f42a===_0x163424;},'mWgmm':_0x41c9a1(0x1f5),'SxjNy':_0x41c9a1(0x19c),'jgLge':'percentage','uowgR':function(_0x168b9a,_0x563b89){return _0x168b9a!==_0x563b89;},'PJWkD':'text','OzCoT':_0x41c9a1(0x19a)};if(!_0x5e1cf0||!_0x5e1cf0[_0x41c9a1(0x1af)])return;const {type:_0x5c05d8,format:_0x1ce869}=_0x5e1cf0;if(_0x5c05d8[_0x41c9a1(0x1c7)]()==='date'&&_0x2e806f['value']){const _0x3eff4a=this['formatDateString'](_0x2e806f[_0x41c9a1(0x18c)],_0x1ce869);_0x3eff4a&&(_0x2e806f[_0x41c9a1(0x18c)]=_0x3eff4a);return;}if((_0x3f8826[_0x41c9a1(0x1e7)](_0x5c05d8[_0x41c9a1(0x1c7)](),_0x3f8826[_0x41c9a1(0x1de)])||_0x5c05d8['toLowerCase']()===_0x3f8826['SxjNy']||_0x5c05d8[_0x41c9a1(0x1c7)]()===_0x3f8826[_0x41c9a1(0x1ba)])&&_0x2e806f['value']){const _0x185bec=this['parseNumber'](_0x2e806f[_0x41c9a1(0x18c)]);if(_0x3f8826['uowgR'](_0x185bec,null)){_0x2e806f['value']=_0x185bec;const _0x2dc2aa=this['getExcelFormat'](_0x5e1cf0);_0x2dc2aa&&(_0x2e806f[_0x41c9a1(0x1a1)]=_0x2dc2aa);}}_0x5c05d8[_0x41c9a1(0x1c7)]()===_0x3f8826[_0x41c9a1(0x1d3)]&&_0x2e806f[_0x41c9a1(0x18c)]&&(_0x2e806f[_0x41c9a1(0x1a1)]='@',_0x3f8826['uowgR'](typeof _0x2e806f['value'],_0x41c9a1(0x198))&&(_0x2e806f[_0x41c9a1(0x18c)]=String(_0x2e806f[_0x41c9a1(0x18c)])),_0x2e806f[_0x41c9a1(0x1ac)]={'horizontal':_0x41c9a1(0x1a9),'vertical':_0x3f8826['OzCoT']});}[a0_0x3f4818(0x194)](_0x1562bf,_0x41b988){const _0x2b4252=a0_0x3f4818,_0x353cd6={'AsJiZ':function(_0x38e340,_0x328ab0){return _0x38e340 instanceof _0x328ab0;},'rLsZa':function(_0x4aac6c,_0xd0c2eb){return _0x4aac6c+_0xd0c2eb;},'qCRYz':function(_0x89d78a,_0x22cc4b){return _0x89d78a===_0x22cc4b;},'SkkTo':'string','hSzOf':function(_0x5a6ff9,_0x359a90,_0x23a92e){return _0x5a6ff9(_0x359a90,_0x23a92e);},'rlQoW':function(_0x51dec4,_0xa52e4e,_0x56ff90){return _0x51dec4(_0xa52e4e,_0x56ff90);},'ZyDKw':function(_0x29aa6a,_0x307ea3,_0x3215e){return _0x29aa6a(_0x307ea3,_0x3215e);},'BPRjq':function(_0x3e42af,_0x5cd7d1,_0x51d091){return _0x3e42af(_0x5cd7d1,_0x51d091);},'cTXXS':function(_0x171584,_0x6cbaa0,_0xaf6ee9){return _0x171584(_0x6cbaa0,_0xaf6ee9);},'yWiHA':'number','bylKf':function(_0x2cd7ac,_0x5c457f){return _0x2cd7ac(_0x5c457f);},'TEkFG':function(_0x573530,_0x2c3691){return _0x573530+_0x2c3691;},'JBERu':function(_0x4dd899,_0x321a00){return _0x4dd899||_0x321a00;},'pbYFZ':_0x2b4252(0x1ab),'anLSO':_0x2b4252(0x1d8),'TzcQn':_0x2b4252(0x1b9),'aTVHy':function(_0x7bef4d,_0x14dd4c){return _0x7bef4d===_0x14dd4c;},'ZRkUr':_0x2b4252(0x1b1),'elwbL':function(_0xb15353,_0x56c599){return _0xb15353===_0x56c599;}};if(!_0x1562bf)return null;let _0x4866ee,_0x1ce958,_0x781b17;if(_0x353cd6['AsJiZ'](_0x1562bf,Date))_0x4866ee=_0x1562bf['getUTCFullYear'](),_0x1ce958=_0x353cd6[_0x2b4252(0x1f2)](_0x1562bf[_0x2b4252(0x1c9)](),0x1),_0x781b17=_0x1562bf[_0x2b4252(0x199)]();else{if(_0x353cd6[_0x2b4252(0x1e5)](typeof _0x1562bf,_0x353cd6[_0x2b4252(0x1d0)])){const _0x54cbc4=_0x1562bf[_0x2b4252(0x1a5)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x54cbc4)_0x4866ee=_0x353cd6['hSzOf'](parseInt,_0x54cbc4[0x1],0xa),_0x1ce958=parseInt(_0x54cbc4[0x2],0xa),_0x781b17=_0x353cd6[_0x2b4252(0x1ed)](parseInt,_0x54cbc4[0x3],0xa);else{const _0x9184e8=_0x1562bf[_0x2b4252(0x1a5)](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x9184e8)_0x781b17=_0x353cd6[_0x2b4252(0x1aa)](parseInt,_0x9184e8[0x1],0xa),_0x1ce958=_0x353cd6['ZyDKw'](parseInt,_0x9184e8[0x2],0xa),_0x4866ee=_0x353cd6[_0x2b4252(0x1c1)](parseInt,_0x9184e8[0x3],0xa);else{const _0x579ffc=_0x1562bf[_0x2b4252(0x1a5)](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x579ffc&&(_0x4866ee=_0x353cd6['cTXXS'](parseInt,_0x579ffc[0x1],0xa),_0x1ce958=parseInt(_0x579ffc[0x2],0xa),_0x781b17=parseInt(_0x579ffc[0x3],0xa));}}}else{if(typeof _0x1562bf===_0x353cd6[_0x2b4252(0x1f1)]){const _0x3a3ffe=new Date(_0x1562bf);!_0x353cd6[_0x2b4252(0x1b2)](isNaN,_0x3a3ffe['getTime']())&&(_0x4866ee=_0x3a3ffe[_0x2b4252(0x1bc)](),_0x1ce958=_0x353cd6['TEkFG'](_0x3a3ffe[_0x2b4252(0x1c9)](),0x1),_0x781b17=_0x3a3ffe['getUTCDate']());}}}if(!_0x4866ee||!_0x1ce958||!_0x781b17)return null;const _0x1550b1=String(_0x781b17)[_0x2b4252(0x1d6)](0x2,'0'),_0x6d7463=String(_0x1ce958)['padStart'](0x2,'0'),_0x2476f8=String(_0x4866ee),_0x3b862c=_0x353cd6['JBERu'](_0x41b988,_0x353cd6[_0x2b4252(0x1e4)])[_0x2b4252(0x1c7)]();if(_0x3b862c===_0x353cd6[_0x2b4252(0x18a)])return _0x1550b1+'/'+_0x6d7463+'/'+_0x2476f8;else{if(_0x3b862c==='mm/dd/yyyy')return _0x6d7463+'/'+_0x1550b1+'/'+_0x2476f8;else{if(_0x3b862c===_0x353cd6[_0x2b4252(0x1b8)])return _0x2476f8+'-'+_0x6d7463+'-'+_0x1550b1;else{if(_0x353cd6['aTVHy'](_0x3b862c,_0x353cd6['ZRkUr']))return _0x1550b1+'-'+_0x6d7463+'-'+_0x2476f8;else return _0x353cd6[_0x2b4252(0x1a6)](_0x3b862c,'yyyy/mm/dd')?_0x2476f8+'/'+_0x6d7463+'/'+_0x1550b1:_0x1550b1+'/'+_0x6d7463+'/'+_0x2476f8;}}}}['parseNumber'](_0x461fda){const _0x8ba993=a0_0x3f4818,_0xd50bb8={'pwYbE':function(_0xef0267,_0x3ad4ed){return _0xef0267===_0x3ad4ed;},'UJzWg':_0x8ba993(0x198)};if(_0xd50bb8[_0x8ba993(0x1a7)](typeof _0x461fda,_0x8ba993(0x1f5)))return _0x461fda;if(typeof _0x461fda===_0xd50bb8[_0x8ba993(0x1d7)]){const _0x238e9c=_0x461fda['replace'](/[^\d.-]/g,''),_0x915ca0=parseFloat(_0x238e9c);if(!isNaN(_0x915ca0))return _0x915ca0;}return null;}[a0_0x3f4818(0x1c0)](_0xaca73,_0x2a23ae,_0x5728bd){const _0x14d033=a0_0x3f4818,_0x492e8c={'WwaIM':function(_0x24996a,_0x319b87){return _0x24996a===_0x319b87;},'EVsUA':function(_0x15927d,_0x5df17e){return _0x15927d!==_0x5df17e;},'UhReV':function(_0x312a1c,_0x1e8791){return _0x312a1c+_0x1e8791;},'KboAe':function(_0x3f5d5a,_0x51dfc9){return _0x3f5d5a(_0x51dfc9);}};if(!_0x5728bd)return _0xaca73;const _0xc2078a=[];_0x2a23ae[_0x14d033(0x197)](_0x209f8f=>{const _0x1f3eb0=_0x14d033,_0x419075=_0x5728bd[_0x209f8f];_0x419075&&_0x419075['type']&&_0x492e8c['WwaIM'](_0x419075[_0x1f3eb0(0x1af)][_0x1f3eb0(0x1c7)](),_0x1f3eb0(0x1f3))&&_0xc2078a[_0x1f3eb0(0x1f8)](_0x209f8f);});if(_0xc2078a[_0x14d033(0x19e)]===0x0)return _0xaca73;return _0xaca73['map'](_0x47b58f=>{const _0x49ddb4={..._0x47b58f};return _0xc2078a['forEach'](_0x982491=>{const _0x39b77a=a0_0x2727;_0x492e8c['EVsUA'](_0x49ddb4[_0x982491],null)&&_0x49ddb4[_0x982491]!==undefined&&(_0x49ddb4[_0x982491]=_0x492e8c[_0x39b77a(0x1cd)]('\x27',_0x492e8c[_0x39b77a(0x1da)](String,_0x49ddb4[_0x982491])));}),_0x49ddb4;});}[a0_0x3f4818(0x1be)](_0x1dc2e5,_0x42b295,_0x12d82b){const _0x450f5a=a0_0x3f4818,_0x5ebfc4={'qVSiw':function(_0x28ebfb,_0x420022){return _0x28ebfb===_0x420022;}};if(!_0x12d82b)return _0x1dc2e5;const _0x98d102=[];_0x42b295[_0x450f5a(0x197)](_0x32d1fa=>{const _0x46f168=_0x450f5a,_0x3735db=_0x12d82b[_0x32d1fa];_0x3735db&&_0x3735db[_0x46f168(0x1af)]&&_0x5ebfc4[_0x46f168(0x1f4)](_0x3735db['type']['toLowerCase'](),'text')&&_0x98d102['push'](_0x32d1fa);});if(_0x98d102[_0x450f5a(0x19e)]===0x0)return _0x1dc2e5;const _0x354716={..._0x1dc2e5};return _0x98d102['forEach'](_0x5bc6c2=>{_0x354716[_0x5bc6c2]!==null&&_0x354716[_0x5bc6c2]!==undefined&&(_0x354716[_0x5bc6c2]='\x27'+String(_0x354716[_0x5bc6c2]));}),_0x354716;}}module[a0_0x3f4818(0x189)]=ExcelGenerator;function a0_0x3533(){const _0x4d5400=['DMfSDwu','ywrKuM93CW','mtu1nJeYofvLt2z6Ba','r2vuCxC','Aw5MBW','vLvLt00','zM9YBwf0q2vSBa','rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','zM9YBwf0rgf0zvn0CMLUzW','zxHJzwXFz2vUzxjHDgLVBL9JB21WBgv0zq','t3buueC','zM9YrwfJAa','C3rYAw5N','z2v0vvrdrgf0zq','BwLKzgXL','A2v5CW','y3vYCMvUy3K','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','BgvUz3rO','y2rWwxG','mZyYq3jtqMDS','BNvTrM10','zgf0zq','rKzgrKzgrKy','z2v0uM93','Bwf0y2G','zwX3yKW','ChDzyKu','zMLSDgvY','BgvMDa','CMXrB1C','reqVtu0VwvLzwq','ywXPz25Tzw50','sxzswvy','mZnyBuXSA2K','DhLWzq','AevADNe','zgqTBw0TExL5Eq','yNLSs2y','C3r5Bgu','y2H1BMTtAxPL','z2v0q2vSBa','nJC2otmYsezVDLzy','tLfeBeu','vhPJuw4','ExL5Es1TBs1Kza','AMDmz2u','mZvsrMfNugW','z2v0vvrdrNvSBfLLyxi','C2XPy2u','ChjLChjVy2vZC1rLEhrsB3C','mJuXotK2rgPvBvf5','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','qLbsANe','rxHJzwWGz2vUzxjHDgLVBIbZDgfYDgvK','zM9YBwf0sgvHzgvY','tMTorhO','zMLSBa','zhvjCu8','Dg9mB3DLCKnHC2u','zNjVEMvU','z2v0vvrdtw9UDgG','uhjVy2vZC2vKia','z2vUzxjHDgu','y2vUDgvY','vwHszvy','z2vUzxjHDgvtAw1WBgu','rhv4Cgm','u2TRvg8','y2vPBa','mJq1mZrNEff5zei','uePxA0q','mti0murxDvPxCa','mtjhsuLuthG','CgfKu3rHCNq','vuP6v2C','zgqVBw0VExL5Eq','C3rYzwfT','s2jVqwu','qu5OzKC','BwfW','rgf0yq','BvDNBw0','mtqXmJmXmgvAqLvjwq','Cgf0DgvYBG','ywrKv29YA3nOzwv0','mZmXnZK0zhjVwNLU','sw52ywXPzcbJB2X1Bw5ZoIa','CgjzrLO','CunswxO','C2LTCgXL','BMTnBgC','qMz5q2O','ndbWqLrirLu','zM9UDa','z2v0rxHJzwXgB3jTyxq','zgvIDwC','Afn6t2y','ihjVD3m','ywrKuM93','EgXZEa','EvDPsee','CKXZwMe','Dgv4Da','CvztAxC','BNvTyMvY','rKy0ndCYqZq','y29TBwL0','ChvZAa','C29SAwq','zxHWB3j0CW','yw5mu08','zKPbs0G'];a0_0x3533=function(){return _0x4d5400;};return a0_0x3533();}
@@ -1 +1 @@
1
- const a0_0x18a209=a0_0x4139;(function(_0x1ec10d,_0x23e79b){const _0x338a5c=a0_0x4139,_0x237dac=_0x1ec10d();while(!![]){try{const _0x486764=parseInt(_0x338a5c(0x1f2))/0x1+-parseInt(_0x338a5c(0x1fa))/0x2*(parseInt(_0x338a5c(0x1e9))/0x3)+-parseInt(_0x338a5c(0x1e2))/0x4+parseInt(_0x338a5c(0x203))/0x5*(parseInt(_0x338a5c(0x1f1))/0x6)+parseInt(_0x338a5c(0x1f6))/0x7*(parseInt(_0x338a5c(0x1f5))/0x8)+-parseInt(_0x338a5c(0x20b))/0x9+parseInt(_0x338a5c(0x1f9))/0xa;if(_0x486764===_0x23e79b)break;else _0x237dac['push'](_0x237dac['shift']());}catch(_0x398ee7){_0x237dac['push'](_0x237dac['shift']());}}}(a0_0x59f3,0x472c7));const ExcelJS=require(a0_0x18a209(0x206)),{logger}=require('./logger');function a0_0x4139(_0x116b83,_0x402251){_0x116b83=_0x116b83-0x1e2;const _0x59f309=a0_0x59f3();let _0x4139c6=_0x59f309[_0x116b83];if(a0_0x4139['SqYZUW']===undefined){var _0xd7a06e=function(_0x1f8514){const _0x4c952a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x34fe46='',_0x467f16='';for(let _0x1e95d2=0x0,_0x335ab4,_0x5b8213,_0x8f53b=0x0;_0x5b8213=_0x1f8514['charAt'](_0x8f53b++);~_0x5b8213&&(_0x335ab4=_0x1e95d2%0x4?_0x335ab4*0x40+_0x5b8213:_0x5b8213,_0x1e95d2++%0x4)?_0x34fe46+=String['fromCharCode'](0xff&_0x335ab4>>(-0x2*_0x1e95d2&0x6)):0x0){_0x5b8213=_0x4c952a['indexOf'](_0x5b8213);}for(let _0x460463=0x0,_0x791a4=_0x34fe46['length'];_0x460463<_0x791a4;_0x460463++){_0x467f16+='%'+('00'+_0x34fe46['charCodeAt'](_0x460463)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x467f16);};a0_0x4139['kdpOpt']=_0xd7a06e,a0_0x4139['NUXjJM']={},a0_0x4139['SqYZUW']=!![];}const _0x97f4b3=_0x59f309[0x0],_0x265b70=_0x116b83+_0x97f4b3,_0x3488f7=a0_0x4139['NUXjJM'][_0x265b70];return!_0x3488f7?(_0x4139c6=a0_0x4139['kdpOpt'](_0x4139c6),a0_0x4139['NUXjJM'][_0x265b70]=_0x4139c6):_0x4139c6=_0x3488f7,_0x4139c6;}class ExcelParser{async[a0_0x18a209(0x1ec)](_0x1e0728){const _0x149f90=a0_0x18a209,_0x73955f={'MkeAY':'No\x20worksheet\x20found\x20in\x20Excel\x20file','kzzSZ':_0x149f90(0x1ff),'cJIpC':_0x149f90(0x205),'FsiWC':'Failed\x20to\x20parse\x20Excel\x20file'};try{const _0x45eae9=new ExcelJS['Workbook']();await _0x45eae9['xlsx'][_0x149f90(0x1ee)](_0x1e0728);const _0x421b51=_0x45eae9['worksheets'][0x0];if(!_0x421b51)throw new Error(_0x73955f[_0x149f90(0x1e4)]);const _0x2bd1f7=[];let _0x1b9a74=[];return _0x421b51['eachRow']((_0x16b092,_0x575880)=>{const _0x45d77b=_0x149f90,_0x39b2f6=_0x16b092[_0x45d77b(0x1e5)];if(_0x575880===0x1)_0x1b9a74=_0x39b2f6[_0x45d77b(0x20c)](0x1)['map'](_0x44f30d=>this['normalizeHeader'](_0x44f30d));else{const _0x206387={};_0x1b9a74[_0x45d77b(0x200)]((_0x116f46,_0x392abe)=>{const _0x24c40c=_0x39b2f6[_0x392abe+0x1];_0x206387[_0x116f46]=this['normalizeCellValue'](_0x24c40c);}),_0x2bd1f7['push'](_0x206387);}}),logger[_0x149f90(0x1e3)]({'event':_0x73955f[_0x149f90(0x1f3)],'filePath':_0x1e0728,'totalRows':_0x2bd1f7[_0x149f90(0x1ef)],'headers':_0x1b9a74['length']},_0x149f90(0x20a)),{'headers':_0x1b9a74,'rows':_0x2bd1f7,'totalRows':_0x2bd1f7[_0x149f90(0x1ef)]};}catch(_0x433451){logger['error']({'event':_0x73955f[_0x149f90(0x1fb)],'filePath':_0x1e0728,'error':_0x433451['message']},_0x73955f[_0x149f90(0x207)]);throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x433451['message']);}}['normalizeHeader'](_0x1a8c0e){const _0x358617=a0_0x18a209,_0x9e22a4={'RStma':function(_0x21d42a,_0x3d6ffb){return _0x21d42a(_0x3d6ffb);}};if(_0x1a8c0e===null||_0x1a8c0e===undefined)return'';let _0x36eaf8=_0x9e22a4['RStma'](String,_0x1a8c0e)['trim']();return _0x36eaf8=_0x36eaf8['replace'](/\s+/g,'_')[_0x358617(0x209)](/([a-z])([A-Z])/g,'$1_$2')[_0x358617(0x209)](/([A-Z]+)([A-Z][a-z])/g,_0x358617(0x208))[_0x358617(0x1fd)](),_0x36eaf8;}[a0_0x18a209(0x1e6)](_0x425cb0){const _0x3e9294=a0_0x18a209,_0x565b2b={'rbgDR':function(_0x5beb20,_0x2ba000){return _0x5beb20===_0x2ba000;},'sSuKs':function(_0x5a0ae6,_0xff6592){return _0x5a0ae6 instanceof _0xff6592;},'aUAJM':function(_0x136955,_0x2b0da6){return _0x136955+_0x2b0da6;},'qpjjW':function(_0x4fcdbe,_0x13cbaf){return _0x4fcdbe(_0x13cbaf);},'cHaSe':function(_0x46a4b3,_0x37948a){return _0x46a4b3(_0x37948a);},'OrILv':function(_0x3e9515,_0x26e7e4){return _0x3e9515===_0x26e7e4;},'RpRTu':function(_0x3d5d7e,_0x5188b1){return _0x3d5d7e===_0x5188b1;},'gbYBQ':'object'};if(_0x425cb0===null||_0x565b2b['rbgDR'](_0x425cb0,undefined))return null;if(_0x565b2b['sSuKs'](_0x425cb0,Date)){const _0x4d209d=_0x425cb0['getFullYear'](),_0x42427e=String(_0x565b2b[_0x3e9294(0x1eb)](_0x425cb0[_0x3e9294(0x20d)](),0x1))['padStart'](0x2,'0'),_0x59404b=String(_0x425cb0['getDate']())['padStart'](0x2,'0');return _0x4d209d+'-'+_0x42427e+'-'+_0x59404b;}if(_0x565b2b['rbgDR'](typeof _0x425cb0,_0x3e9294(0x1fe))){const _0x5890a6=_0x425cb0['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x5890a6){const _0x5dbd5=_0x565b2b[_0x3e9294(0x1e8)](String,_0x5890a6[0x1])[_0x3e9294(0x1e7)](0x2,'0'),_0xc79d7d=_0x565b2b[_0x3e9294(0x1f4)](String,_0x5890a6[0x2])[_0x3e9294(0x1e7)](0x2,'0'),_0x1fc3f3=_0x5890a6[0x3];return _0x1fc3f3+'-'+_0xc79d7d+'-'+_0x5dbd5;}}if(_0x425cb0&&_0x565b2b[_0x3e9294(0x202)](typeof _0x425cb0,_0x3e9294(0x204))&&_0x425cb0[_0x3e9294(0x1f8)])return _0x425cb0['richText'][_0x3e9294(0x1f7)](_0x1048a4=>_0x1048a4['text'])['join']('');if(_0x425cb0&&_0x565b2b[_0x3e9294(0x1fc)](typeof _0x425cb0,_0x565b2b['gbYBQ'])&&_0x425cb0[_0x3e9294(0x1ed)]!==undefined)return this['normalizeCellValue'](_0x425cb0['result']);if(typeof _0x425cb0==='string')return _0x425cb0[_0x3e9294(0x1ea)]();return _0x425cb0;}['validateExcelStructure'](_0x24480f,_0x181406){const _0x59a7ce=a0_0x18a209,_0x43e878={'wIRHf':function(_0x43de17,_0x29e4ff){return _0x43de17===_0x29e4ff;}},_0xff17c0=new Set(_0x24480f),_0x5895aa=new Set(_0x181406),_0x1ac19c=_0x181406[_0x59a7ce(0x201)](_0x5003bb=>!_0xff17c0['has'](_0x5003bb)),_0x1fcbba=_0x24480f[_0x59a7ce(0x201)](_0x129057=>!_0x5895aa[_0x59a7ce(0x1f0)](_0x129057)),_0x5e7a2c=_0x43e878['wIRHf'](_0x1ac19c['length'],0x0);return{'valid':_0x5e7a2c,'missingFields':_0x1ac19c,'extraFields':_0x1fcbba};}}module['exports']=new ExcelParser();function a0_0x59f3(){const _0x1b19b1=['DMfSDwvZ','BM9YBwfSAxPLq2vSBfzHBhvL','CgfKu3rHCNq','CxbQALC','nJe2ndfJqujvs2e','DhjPBq','yvvbsK0','CgfYC2vfEgnLBezPBgu','CMvZDwX0','CMvHzezPBgu','BgvUz3rO','AgfZ','mtC5mdGYs3zbrKTc','odKZmwDWC3zXzG','A3P6u1O','y0HHu2u','mJrMyNzAs08','mJyYotK3A1LrveXn','BwfW','CMLJAfrLEhq','mtiZmdi2odbLCKPVBKe','mJbnuwLftha','y0PjCem','uNbsvhu','Dg9mB3DLCKnHC2u','C3rYAw5N','zxHJzwXFCgfYC2vK','zM9YrwfJAa','zMLSDgvY','t3jjthy','nuPcz1fItW','B2jQzwn0','zxHJzwXFCgfYC2vFzxjYB3i','zxHJzwXQCW','rNnPv0m','jdfFjdi','CMvWBgfJzq','rxHJzwWGzMLSzsbWyxjZzwqGC3vJy2vZC2z1BgX5','ndGZotG2n21Zyu5kuq','C2XPy2u','z2v0tw9UDgG','mtm4nZK5nMj3yK9VCq','Aw5MBW','twTLqvK'];a0_0x59f3=function(){return _0x1b19b1;};return a0_0x59f3();}
1
+ const a0_0x4cd9b1=a0_0x401c;function a0_0x40b1(){const _0xcd8056=['z2v0rNvSBfLLyxi','mtm2mLbcywDXsG','B2jQzwn0','CMvZDwX0','D29YA3nOzwv0CW','zM9YrwfJAa','DKnWsva','C2XPy2u','mJa5mtyYngHhAhjZuW','mNfZAvfqua','AgfZ','BM9YBwfSAxPLsgvHzgvY','BwfW','zxHWB3j0CW','Aw5MBW','wKnrzK0','CxzMALe','zMLSDgvY','sfjxDNC','z2v0rgf0zq','BM9YBwfSAxPLq2vSBfzHBhvL','nJGWoeXAB2zvqW','otC3ndKWCvD0y1bS','CMvWBgfJzq','BgvUz3rO','mtaXntqWmZrZsxflrfu','CgfKu3rHCNq','mZqZnteXzgPVBffe','EfLKCgm','CMLJAfrLEhq','mZuXoxrqr2zlEq','jdfFjdi','zwfJAfjVDW','BwvZC2fNzq','mtqZotvQreXvAvq','mtb2ruXdr3i','mJCWntmZmK5pqKDUAW'];a0_0x40b1=function(){return _0xcd8056;};return a0_0x40b1();}(function(_0x5e5cfa,_0x47b2cb){const _0xa00bac=a0_0x401c,_0x38b69d=_0x5e5cfa();while(!![]){try{const _0x266677=-parseInt(_0xa00bac(0x184))/0x1*(parseInt(_0xa00bac(0x172))/0x2)+-parseInt(_0xa00bac(0x17f))/0x3+-parseInt(_0xa00bac(0x171))/0x4+parseInt(_0xa00bac(0x18b))/0x5*(parseInt(_0xa00bac(0x18f))/0x6)+-parseInt(_0xa00bac(0x18d))/0x7+parseInt(_0xa00bac(0x17e))/0x8*(parseInt(_0xa00bac(0x187))/0x9)+parseInt(_0xa00bac(0x18c))/0xa*(parseInt(_0xa00bac(0x182))/0xb);if(_0x266677===_0x47b2cb)break;else _0x38b69d['push'](_0x38b69d['shift']());}catch(_0x132dac){_0x38b69d['push'](_0x38b69d['shift']());}}}(a0_0x40b1,0x50b95));const ExcelJS=require('exceljs'),{logger}=require('./logger');class ExcelParser{async['parseExcelFile'](_0x10fceb){const _0x547cfa=a0_0x401c,_0x1502bb={'ZCQfM':function(_0x3acc95,_0x3d4f4e){return _0x3acc95+_0x3d4f4e;},'HRWvw':'excel_parsed'};try{const _0x22564a=new ExcelJS['Workbook']();await _0x22564a['xlsx']['readFile'](_0x10fceb);const _0xc1d0b7=_0x22564a[_0x547cfa(0x16d)][0x0];if(!_0xc1d0b7)throw new Error('No\x20worksheet\x20found\x20in\x20Excel\x20file');const _0x7f5435=[];let _0x352ebe=[];return _0xc1d0b7[_0x547cfa(0x189)]((_0x41c00d,_0x3b9183)=>{const _0x3603eb=_0x547cfa,_0x403a96={'IIBet':function(_0x465332,_0x33f875){const _0x2833e9=a0_0x401c;return _0x1502bb[_0x2833e9(0x178)](_0x465332,_0x33f875);}},_0x11b54a=_0x41c00d['values'];if(_0x3b9183===0x1)_0x352ebe=_0x11b54a[_0x3603eb(0x170)](0x1)[_0x3603eb(0x175)](_0x2b5c16=>this['normalizeHeader'](_0x2b5c16));else{const _0x578812={};_0x352ebe[_0x3603eb(0x16e)]((_0x480e0c,_0x1228b2)=>{const _0x362e28=_0x3603eb,_0x2a9fb7=_0x11b54a[_0x403a96['IIBet'](_0x1228b2,0x1)];_0x578812[_0x480e0c]=this[_0x362e28(0x17d)](_0x2a9fb7);}),_0x7f5435['push'](_0x578812);}}),logger[_0x547cfa(0x177)]({'event':_0x1502bb[_0x547cfa(0x17b)],'filePath':_0x10fceb,'totalRows':_0x7f5435['length'],'headers':_0x352ebe['length']},'Excel\x20file\x20parsed\x20successfully'),{'headers':_0x352ebe,'rows':_0x7f5435,'totalRows':_0x7f5435[_0x547cfa(0x181)]};}catch(_0x59445e){logger['error']({'event':'excel_parse_error','filePath':_0x10fceb,'error':_0x59445e[_0x547cfa(0x18a)]},'Failed\x20to\x20parse\x20Excel\x20file');throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x59445e['message']);}}[a0_0x4cd9b1(0x174)](_0x2db63f){const _0x5912cd=a0_0x4cd9b1,_0x5acfd4={'BUvMU':function(_0x207ed5,_0x3a426c){return _0x207ed5===_0x3a426c;},'TOJzP':function(_0x3d0596,_0xf3038a){return _0x3d0596===_0xf3038a;}};if(_0x5acfd4['BUvMU'](_0x2db63f,null)||_0x5acfd4['TOJzP'](_0x2db63f,undefined))return'';let _0x4ea62d=String(_0x2db63f)['trim']();return _0x4ea62d=_0x4ea62d['replace'](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,'$1_$2')[_0x5912cd(0x180)](/([A-Z]+)([A-Z][a-z])/g,_0x5912cd(0x188))['toLowerCase'](),_0x4ea62d;}[a0_0x4cd9b1(0x17d)](_0x3cb38d){const _0xf5b1a1=a0_0x4cd9b1,_0x293314={'vCpIP':function(_0x29c4ad,_0x33956d){return _0x29c4ad===_0x33956d;},'xYdpc':function(_0x596c43,_0x5c8ec3){return _0x596c43(_0x5c8ec3);},'CrGDD':function(_0x32909d,_0x5aec03){return _0x32909d(_0x5aec03);},'DIuti':function(_0x3423e1,_0x2ff409){return _0x3423e1===_0x2ff409;},'qvfjQ':'string','pfbUP':function(_0x3ae767,_0x4962fb){return _0x3ae767===_0x4962fb;},'nlKhi':'object','asckk':function(_0x443042,_0xb545ff){return _0x443042!==_0xb545ff;}};if(_0x3cb38d===null||_0x293314['vCpIP'](_0x3cb38d,undefined))return null;if(_0x3cb38d instanceof Date){const _0x1c8859=_0x3cb38d[_0xf5b1a1(0x18e)](),_0x3f848a=_0x293314[_0xf5b1a1(0x185)](String,_0x3cb38d['getMonth']()+0x1)['padStart'](0x2,'0'),_0x4314c5=_0x293314['CrGDD'](String,_0x3cb38d[_0xf5b1a1(0x17c)]())['padStart'](0x2,'0');return _0x1c8859+'-'+_0x3f848a+'-'+_0x4314c5;}if(_0x293314['DIuti'](typeof _0x3cb38d,_0x293314[_0xf5b1a1(0x179)])){const _0x135fdd=_0x3cb38d['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x135fdd){const _0x4a6bfb=String(_0x135fdd[0x1])['padStart'](0x2,'0'),_0x433efe=_0x293314['CrGDD'](String,_0x135fdd[0x2])[_0xf5b1a1(0x183)](0x2,'0'),_0x5631f4=_0x135fdd[0x3];return _0x5631f4+'-'+_0x433efe+'-'+_0x4a6bfb;}}if(_0x3cb38d&&_0x293314['pfbUP'](typeof _0x3cb38d,_0x293314['nlKhi'])&&_0x3cb38d[_0xf5b1a1(0x186)])return _0x3cb38d['richText'][_0xf5b1a1(0x175)](_0x2d2085=>_0x2d2085['text'])['join']('');if(_0x3cb38d&&typeof _0x3cb38d===_0xf5b1a1(0x190)&&_0x293314['asckk'](_0x3cb38d['result'],undefined))return this['normalizeCellValue'](_0x3cb38d[_0xf5b1a1(0x191)]);if(_0x293314[_0xf5b1a1(0x16f)](typeof _0x3cb38d,'string'))return _0x3cb38d['trim']();return _0x3cb38d;}['validateExcelStructure'](_0x2f1fc4,_0x4be5ed){const _0x4fe413=a0_0x4cd9b1,_0x3446e6=new Set(_0x2f1fc4),_0x115f93=new Set(_0x4be5ed),_0x143605=_0x4be5ed['filter'](_0x1fdc8b=>!_0x3446e6[_0x4fe413(0x173)](_0x1fdc8b)),_0x4dfd7c=_0x2f1fc4[_0x4fe413(0x17a)](_0x396a05=>!_0x115f93[_0x4fe413(0x173)](_0x396a05)),_0x3bb046=_0x143605[_0x4fe413(0x181)]===0x0;return{'valid':_0x3bb046,'missingFields':_0x143605,'extraFields':_0x4dfd7c};}}function a0_0x401c(_0x1ed6c7,_0x48ad6a){_0x1ed6c7=_0x1ed6c7-0x16d;const _0x40b106=a0_0x40b1();let _0x401c1e=_0x40b106[_0x1ed6c7];if(a0_0x401c['NFhTbF']===undefined){var _0x415ae4=function(_0x45e6e7){const _0x10fe2e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x21fcc0='',_0x1a57bf='';for(let _0x22ebc2=0x0,_0x27b09c,_0x518bd4,_0x4812f4=0x0;_0x518bd4=_0x45e6e7['charAt'](_0x4812f4++);~_0x518bd4&&(_0x27b09c=_0x22ebc2%0x4?_0x27b09c*0x40+_0x518bd4:_0x518bd4,_0x22ebc2++%0x4)?_0x21fcc0+=String['fromCharCode'](0xff&_0x27b09c>>(-0x2*_0x22ebc2&0x6)):0x0){_0x518bd4=_0x10fe2e['indexOf'](_0x518bd4);}for(let _0x54f3c0=0x0,_0x3811eb=_0x21fcc0['length'];_0x54f3c0<_0x3811eb;_0x54f3c0++){_0x1a57bf+='%'+('00'+_0x21fcc0['charCodeAt'](_0x54f3c0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a57bf);};a0_0x401c['XLeULz']=_0x415ae4,a0_0x401c['YPmCaG']={},a0_0x401c['NFhTbF']=!![];}const _0x2a10fa=_0x40b106[0x0],_0x41b7e5=_0x1ed6c7+_0x2a10fa,_0x2ee6b3=a0_0x401c['YPmCaG'][_0x41b7e5];return!_0x2ee6b3?(_0x401c1e=a0_0x401c['XLeULz'](_0x401c1e),a0_0x401c['YPmCaG'][_0x41b7e5]=_0x401c1e):_0x401c1e=_0x2ee6b3,_0x401c1e;}module[a0_0x4cd9b1(0x176)]=new ExcelParser();
@@ -1 +1 @@
1
- const a0_0x2be13e=a0_0x1c14;function a0_0x1c14(_0x503fc6,_0x36b440){_0x503fc6=_0x503fc6-0x1d2;const _0x5ca54a=a0_0x5ca5();let _0x1c14d0=_0x5ca54a[_0x503fc6];if(a0_0x1c14['rlzmMo']===undefined){var _0x58a2e6=function(_0x360bdc){const _0x4c613b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x22c2f5='',_0x50fc2='';for(let _0x4ba128=0x0,_0x3825d2,_0x2dd6a7,_0x3d43f1=0x0;_0x2dd6a7=_0x360bdc['charAt'](_0x3d43f1++);~_0x2dd6a7&&(_0x3825d2=_0x4ba128%0x4?_0x3825d2*0x40+_0x2dd6a7:_0x2dd6a7,_0x4ba128++%0x4)?_0x22c2f5+=String['fromCharCode'](0xff&_0x3825d2>>(-0x2*_0x4ba128&0x6)):0x0){_0x2dd6a7=_0x4c613b['indexOf'](_0x2dd6a7);}for(let _0x183796=0x0,_0x16a9fc=_0x22c2f5['length'];_0x183796<_0x16a9fc;_0x183796++){_0x50fc2+='%'+('00'+_0x22c2f5['charCodeAt'](_0x183796)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x50fc2);};a0_0x1c14['nnkduG']=_0x58a2e6,a0_0x1c14['rGzvbO']={},a0_0x1c14['rlzmMo']=!![];}const _0x11f65d=_0x5ca54a[0x0],_0x451404=_0x503fc6+_0x11f65d,_0x45ef6b=a0_0x1c14['rGzvbO'][_0x451404];return!_0x45ef6b?(_0x1c14d0=a0_0x1c14['nnkduG'](_0x1c14d0),a0_0x1c14['rGzvbO'][_0x451404]=_0x1c14d0):_0x1c14d0=_0x45ef6b,_0x1c14d0;}function a0_0x5ca5(){const _0x2b476f=['zMv0y2HeyxrH','uezwqNG','cK9srevsiejzia','u2TPChbPBMCGAw52ywXPzcbJB25KAxrPB24','u2TPChbPBMCGAw52ywXPzcbVCMrLCIbJBgf1C2u','ywnJzxnZ','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','C2v0sM9I','zMfPBgvK','C3rYAw5N','zw5KCg9PBNroyw1L','BwfW','zxHJzwXFy29SDw1UC19ZzwXLy3rFywXS','zgvSzxrLsM9I','C29mD00','CxDisw0','zxHLy3v0zvf1zxj5','DhjPBq','s1PVzg4','CMvZB2X2zq','mtmXmtaWogvVrKPWuW','zxHWB3j0x2PVyL9JCMvHDgvK','Dg9vChbLCKnHC2u','z2v0sM9I','sM9Iig5VDcbMB3vUzcbVCIbLEhbPCMvK','ChjVy2vZC2LUzW','AxnbCNjHEq','y29Kzq','CgvUzgLUzW','rxHWB3j0igzPBguGBM90igzVDw5K','revtqW','thLkC2W','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','DKnPC3u','zxjYB3i','zxHWB3j0lq','lNHSC3G','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','sgXOBLG','mJq1nduYmMLxs25qwq','rMfPBgvKihrVihjLywqGzxHWB3j0ihf1zxj5igzPBgu6ia','zxHWB3j0x2zLDgnOx2nVBxbSzxrL','BwvZC2fNzq','rMfPBgvKihrVigrLBgv0zsbLEhbVCNqGzMLSzq','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','zxHWB3j0CW','EKX6vMu','y3DK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0qwXSsM9ICW','qxbktM4','C3rHDhvZ','BM93','qvnd','y29SDw1UCW','x2v4Cg9YDerPCG','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','AM9PBG','mtHgyu5xAfy','zxHWB3j0x3nLCNzPy2vFAw5PDf9LCNjVCG','Bwj1wKG','ChjVy2vZC0PVyG','zxHJzwXFy29SDw1UC19MCM9Tx2nVBMzPzW','C2fUAxrPEMvwywX1zq','Aw5MBW','Dg9ju09tDhjPBMC','C3rHCNrZv2L0Aa','x2rHDge','ntaZndy5D3Hkz2H2','iefticGkicaGifnftevdvca','D2fYBG','BwTKAxjtEw5J','y29TCgXLDgvKx2f0','tLPRy3y','mte4mtG0mhjTthvzqW','cIaGicbguK9nia','zxHWB3j0x3nLCNzPy2vFAw5PDa','C3vIC3rYAw5N','rKP5B2y','BxDtzxK','B3jHy2XL','z2v0rMLSzvbHDgG','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','mte2ode1uxnoteT3','yNvPBgrpCMrLCKj5q2XHDxnL','cKzst00G','vxnPBMCGywXSia','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','rejFvfLqrq','Dg9mB3DLCKnHC2u','u0rfte4','Aw52ywXPzf9VCMrLCG','nfzeq29JyG','tfHRDvC','ChjVz3jLC3m','wufZr3y','z2vUzxjHDgu','Cgf0Aa','zMLSzv9WyxrO','zxHWB3j0x3vZAw5Nx2n1C3rVBv9XDwvYEq','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','y29UzgL0Aw9UCW','lI9LEgnLBc1Nzw5LCMf0B3i','y1f2y3O','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','ywXS','BgvUz3rO','DxbKyxrLsM9I','rNP0vu0','zxHWB3j0x2nVBxbSzxrLza','sKTuuKK','CMvZB2X2zuv4Cg9YDff1zxj5','cIaGicaGicaG','svmGtK9uie5vteW','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','q3vWA28','Dg90ywXFCM93CW','vxnPBMCGy3vZDg9Tigv4Cg9YDff1zxj5','vxnPBMCG','lI4VlI4VzxHWB3j0CY8','EvfNChm','CMvWBgfJzq','z0znyMu','v0Lusca','zMXVB3i','sLDnsK8','y3jLyxrLzf9HDa','teLlrq','rvLdv2G','ieLtie5pvcbovuXm','CM91BMq','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','A2v5CW','mJuZode4vfP3Euvu','id0G','wwvItLy','Dw5RBM93BL9VCgvYyxrVCG','zxHWB3j0x2nSzwfUDxbFy29TCgXLDgu','iefticGkicaGia','y3jLyxrLsM9I','ota4mfrTshL3Eq','zxHWB3j0rgLY','ru5pru5u','vgz4tvi','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','yNvPBgrxAgvYzunSyxvZzq','AfrfAgK'];a0_0x5ca5=function(){return _0x2b476f;};return a0_0x5ca5();}(function(_0x23f06c,_0x30b0bb){const _0x130a55=a0_0x1c14,_0x25eca3=_0x23f06c();while(!![]){try{const _0x5695ba=parseInt(_0x130a55(0x200))/0x1*(parseInt(_0x130a55(0x209))/0x2)+-parseInt(_0x130a55(0x1e7))/0x3*(-parseInt(_0x130a55(0x239))/0x4)+-parseInt(_0x130a55(0x1f7))/0x5+-parseInt(_0x130a55(0x232))/0x6+parseInt(_0x130a55(0x1d4))/0x7+-parseInt(_0x130a55(0x254))/0x8+parseInt(_0x130a55(0x1f1))/0x9;if(_0x5695ba===_0x30b0bb)break;else _0x25eca3['push'](_0x25eca3['shift']());}catch(_0x7ed6f0){_0x25eca3['push'](_0x25eca3['shift']());}}}(a0_0x5ca5,0x3395a));const {v7:uuidv7}=require('uuid'),path=require(a0_0x2be13e(0x20e)),fs=require('fs')['promises'],fsSync=require('fs'),redisHelper=require(a0_0x2be13e(0x23d)),{logger,logError}=require(a0_0x2be13e(0x215)),dbType=(process['env'][a0_0x2be13e(0x205)]||'postgresql')['toLowerCase']();let executeQuery;if(dbType===a0_0x2be13e(0x1fd)){const oracleDb=require('../database/db-oracle');executeQuery=(_0x226be8,_0x2e0f81)=>oracleDb['executeQuery'](_0x226be8,_0x2e0f81);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x1aa9c5,_0x455687)=>mysqlDb['executeQuery'](_0x1aa9c5,_0x455687);}else executeQuery=require('../../core/utils/db')[a0_0x2be13e(0x250)];}class ExportService{constructor(){this['_exportDir']=null;}get[a0_0x2be13e(0x23a)](){const _0x4220ad=a0_0x2be13e,_0x5508eb={'tsLRG':'default','yQgps':'Export\x20service\x20initialized'};if(!this[_0x4220ad(0x1e4)]){const _0x52d399=process['env'][_0x4220ad(0x1dd)]||_0x5508eb['tsLRG'];this[_0x4220ad(0x1e4)]=process['env']['EXPORT_DIR']||path[_0x4220ad(0x1e6)](__dirname,_0x4220ad(0x224)+_0x52d399);try{!fsSync['existsSync'](this['_exportDir'])&&fsSync[_0x4220ad(0x1f4)](this['_exportDir'],{'recursive':!![]}),logger['info']({'event':_0x4220ad(0x1f9),'dir':this[_0x4220ad(0x1e4)]},_0x5508eb[_0x4220ad(0x225)]);}catch(_0x3d7ceb){logError(_0x3d7ceb,{'event':_0x4220ad(0x1e8)},'Failed\x20to\x20initialize\x20export\x20service');}}return this['_exportDir'];}[a0_0x2be13e(0x21c)](_0x2ba749,_0x540a04=null){const _0x1e11fc=a0_0x2be13e,_0x392c75={'Rsavy':function(_0x14800a,_0x5638ac){return _0x14800a!==_0x5638ac;},'BAPLw':'string','zLzVe':'Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty','hsoMw':'payload','qwHIm':'utf8','wzMCm':'export_query_file_loaded','HclQM':function(_0x5e37d7,_0x1d6a97){return _0x5e37d7===_0x1d6a97;}};if(!_0x2ba749||_0x392c75['Rsavy'](typeof _0x2ba749,_0x392c75['BAPLw']))return _0x2ba749;const _0x548f7d=_0x2ba749[_0x1e11fc(0x251)]();if(!_0x548f7d[_0x1e11fc(0x1ef)]('file:'))return _0x548f7d;const _0x3f0e3c=_0x548f7d[_0x1e11fc(0x226)](/^file:/,'')[_0x1e11fc(0x251)]();if(!_0x3f0e3c)throw new Error(_0x392c75[_0x1e11fc(0x1db)]);const _0x27958f=_0x540a04||path['join'](process[_0x1e11fc(0x1dc)](),_0x392c75['hsoMw']),_0x5631f3=path[_0x1e11fc(0x253)](_0x27958f,_0x3f0e3c);logger['info']({'event':'export_query_file_resolve','relativePath':_0x3f0e3c,'baseDir':_0x27958f,'absolutePath':_0x5631f3},'Resolving\x20exportQuery\x20from\x20file:\x20'+_0x3f0e3c);if(!fsSync['existsSync'](_0x5631f3))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x5631f3);try{const _0x465b82=fsSync['readFileSync'](_0x5631f3,_0x392c75[_0x1e11fc(0x24f)]);if(!_0x465b82||!_0x465b82[_0x1e11fc(0x251)]())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x5631f3);return logger[_0x1e11fc(0x1ed)]({'event':_0x392c75['wzMCm'],'file':_0x5631f3,'queryLength':_0x465b82[_0x1e11fc(0x217)]},_0x1e11fc(0x204)+_0x465b82[_0x1e11fc(0x217)]+'\x20chars)'),_0x465b82['trim']();}catch(_0x3cd152){if(_0x392c75['HclQM'](_0x3cd152[_0x1e11fc(0x25b)],_0x1e11fc(0x23b)))throw new Error(_0x1e11fc(0x21f)+_0x5631f3);throw new Error(_0x1e11fc(0x1d5)+_0x3cd152[_0x1e11fc(0x1d7)]);}}['generateJobId'](){const _0x2f455a=a0_0x2be13e,_0x316039={'kozfe':function(_0xc64a2e,_0x1ce7be){return _0xc64a2e-_0x1ce7be;},'YebNV':function(_0x213c24,_0x2c1c3f){return _0x213c24+_0x2c1c3f;}},_0x46d5ee='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',_0x32bec0=Date[_0x2f455a(0x1e1)]()['toString'](0x24),_0x587216=uuidv7()['replace'](/-/g,'')[_0x2f455a(0x1fa)](0x0,_0x316039['kozfe'](0xc,_0x32bec0['length'])),_0x3f3559=_0x316039[_0x2f455a(0x234)](_0x32bec0,_0x587216)[_0x2f455a(0x1fa)](0x0,0xc);let _0x25339a='';for(let _0x21b07a=0x0;_0x21b07a<0xc;_0x21b07a++){_0x3f3559[_0x21b07a]?_0x25339a+=_0x3f3559[_0x21b07a]:_0x25339a+=_0x46d5ee['charAt'](Math[_0x2f455a(0x229)](Math['random']()*_0x46d5ee[_0x2f455a(0x217)]));}return _0x25339a;}async[a0_0x2be13e(0x238)](_0x20ef43){const _0x248ed9=a0_0x2be13e,_0x192772={'mwSey':function(_0xcacebe,_0x17fc10,_0x3c0c8d,_0x4e73ec){return _0xcacebe(_0x17fc10,_0x3c0c8d,_0x4e73ec);},'MdYDE':'export_process_error','MaDfg':_0x248ed9(0x255),'LyJsl':'Export\x20job\x20created'},_0x2e4f49=this['generateJobId'](),_0x5a7ba8={'job_id':_0x2e4f49,'status':_0x248ed9(0x25c),'progress':0x0,'created_at':new Date()[_0x248ed9(0x1ee)](),'params':_0x20ef43,'total_rows':0x0,'processed_rows':0x0};return await redisHelper[_0x248ed9(0x247)](_0x2e4f49,_0x5a7ba8),logger['info']({'event':_0x192772['MaDfg'],'jobId':_0x2e4f49,'params':_0x20ef43},_0x192772[_0x248ed9(0x25f)]),this[_0x248ed9(0x1ea)](_0x2e4f49,_0x20ef43)['catch'](_0x1c1ed6=>{const _0x4ece8a=_0x248ed9;_0x192772[_0x4ece8a(0x1fc)](logError,_0x1c1ed6,{'event':_0x192772['MdYDE'],'jobId':_0x2e4f49},_0x4ece8a(0x260));}),{'job_id':_0x2e4f49,'status':'pending'};}async['getJobStatus'](_0x1a6f37){const _0x2fb7e7=a0_0x2be13e,_0x54fd91=await redisHelper[_0x2fb7e7(0x257)](_0x1a6f37);if(!_0x54fd91)return{'success':![],'error':_0x2fb7e7(0x258)};return{'success':!![],'data':{'job_id':_0x54fd91['job_id'],'status':_0x54fd91['status'],'progress':_0x54fd91[_0x2fb7e7(0x20b)],'total_rows':_0x54fd91[_0x2fb7e7(0x221)],'processed_rows':_0x54fd91['processed_rows'],'file_url':_0x54fd91['status']==='completed'?'/api/'+_0x54fd91['params']['moduleName']+'/'+_0x54fd91['params'][_0x2fb7e7(0x24a)]+_0x2fb7e7(0x1d9)+_0x1a6f37:null,'error':_0x54fd91[_0x2fb7e7(0x262)]||null,'created_at':_0x54fd91[_0x2fb7e7(0x22b)],'completed_at':_0x54fd91[_0x2fb7e7(0x1f5)]||null}};}async[a0_0x2be13e(0x1ea)](_0x321919,_0x192d6f){const _0x3129b0=a0_0x2be13e,_0x5672a0={'NZkcv':_0x3129b0(0x259),'TfxMR':'Export\x20failed'};try{await redisHelper[_0x3129b0(0x218)](_0x321919,{'status':_0x5672a0[_0x3129b0(0x1f6)],'started_at':new Date()['toISOString']()}),logger[_0x3129b0(0x1ed)]({'event':'export_processing_start','jobId':_0x321919},'Export\x20processing\x20started');const _0x1951a6=await this[_0x3129b0(0x240)](_0x192d6f);await redisHelper['updateJob'](_0x321919,{'total_rows':_0x1951a6['length']});const _0x1302b2=await this['generateExcel'](_0x321919,_0x1951a6,_0x192d6f);await redisHelper[_0x3129b0(0x218)](_0x321919,{'status':'completed','progress':0x64,'file_path':_0x1302b2,'completed_at':new Date()['toISOString']()}),logger['info']({'event':_0x3129b0(0x21a),'jobId':_0x321919,'rows':_0x1951a6['length']},'Export\x20completed\x20successfully');}catch(_0x124101){logError(_0x124101,{'event':'export_failed','jobId':_0x321919},_0x5672a0[_0x3129b0(0x23c)]),await redisHelper['updateJob'](_0x321919,{'status':_0x3129b0(0x248),'error':_0x124101[_0x3129b0(0x1d7)],'failed_at':new Date()['toISOString']()});}}async['fetchData'](_0x4cbd45){const _0x494caf=a0_0x2be13e,_0x4ae802={'peQUv':function(_0x499288,_0x1a035b){return _0x499288||_0x1a035b;},'ckLNt':_0x494caf(0x1f0),'ACWoC':_0x494caf(0x210),'vCisu':_0x494caf(0x222),'SjlCE':'Using\x20auto-generated\x20query','VNmTJ':function(_0xdb964b,_0x135365){return _0xdb964b===_0x135365;},'iwLkF':_0x494caf(0x216),'ztOgd':'Fetching\x20data\x20from\x20database','EpCFe':function(_0x5b92da,_0x5ca633){return _0x5b92da(_0x5ca633);},'gFMbe':_0x494caf(0x1fd),'FztUM':function(_0x1aaa9f,_0x349c2b){return _0x1aaa9f>_0x349c2b;},'xPPWZ':_0x494caf(0x1d6),'ApJNn':'Data\x20fetched\x20successfully','mbuZH':function(_0x14f55f,_0x2aebe2,_0x105e8d,_0x50ed33){return _0x14f55f(_0x2aebe2,_0x105e8d,_0x50ed33);},'KmDXp':'export_fetch_error'};try{const {tableName:_0x47180c,columns:_0x415782,exportQuery:_0x228636,where:_0x526402,sort_columns:_0x43cc6a}=_0x4cbd45;if(_0x4ae802['peQUv'](!_0x47180c,!_0x415782)||_0x415782[_0x494caf(0x217)]===0x0)throw new Error(_0x494caf(0x1d2));const _0x1c59ec=_0x47180c[_0x494caf(0x226)](/\./g,'_')+_0x4ae802['ckLNt'];let _0x91566c;if(_0x228636&&_0x228636[_0x494caf(0x251)]()){let _0x3e9b9e=_0x228636;_0x228636[_0x494caf(0x251)]()['startsWith']('file:')&&(_0x3e9b9e=this['resolveExportQuery'](_0x228636)),_0x91566c=_0x494caf(0x228)+_0x1c59ec+_0x494caf(0x237)+_0x3e9b9e+'\x0a)',logger['info']({'event':_0x4ae802['ACWoC'],'query':_0x3e9b9e['substring'](0x0,0x64)},_0x4ae802[_0x494caf(0x261)]);}else{const _0x47680e=_0x415782['map'](_0x1f3c8f=>_0x494caf(0x21d)+_0x1f3c8f)[_0x494caf(0x1e6)](',');_0x91566c='WITH\x20'+_0x1c59ec+_0x494caf(0x1f2)+_0x47680e+_0x494caf(0x1f8)+_0x47180c+'\x0a)',logger[_0x494caf(0x1ed)]({'event':'export_using_auto_query','tableName':_0x47180c,'columnCount':_0x415782[_0x494caf(0x217)]},_0x4ae802['SjlCE']);}const _0xa6ea41=!_0x415782||_0x415782['length']===0x0||_0x4ae802['VNmTJ'](_0x415782[_0x494caf(0x217)],0x1)&&(_0x415782[0x0]==='*'||_0x415782[0x0]['toLowerCase']()===_0x4ae802['iwLkF']),_0x363af7=_0xa6ea41?'*':_0x415782['join'](',\x20');_0x91566c+='\x0aSELECT\x20'+_0x363af7+_0x494caf(0x202)+_0x1c59ec;if(_0x526402){const _0x480ef3=this[_0x494caf(0x23e)](_0x526402);_0x480ef3&&(_0x91566c+='\x0aWHERE\x20'+_0x480ef3);}if(_0x43cc6a&&_0x43cc6a[_0x494caf(0x217)]>0x0){const _0x354fe2=this[_0x494caf(0x201)](_0x43cc6a);_0x354fe2&&(_0x91566c+=_0x494caf(0x242)+_0x354fe2);}logger['info']({'event':'export_fetch_start','query':_0x91566c['substring'](0x0,0xc8)},_0x4ae802['ztOgd']);const _0x467187=await _0x4ae802['EpCFe'](executeQuery,_0x91566c);let _0x5c3b70=_0x467187;return dbType===_0x4ae802[_0x494caf(0x227)]&&_0x467187&&_0x4ae802[_0x494caf(0x219)](_0x467187['length'],0x0)&&(_0x5c3b70=_0x467187[_0x494caf(0x24b)](_0x3d8f13=>{const _0x5caed6={};for(const [_0x4d4d1a,_0x4cfca9]of Object['entries'](_0x3d8f13)){_0x5caed6[_0x4d4d1a['toLowerCase']()]=_0x4cfca9;}return _0x5caed6;})),logger['info']({'event':_0x4ae802['xPPWZ'],'rows':_0x5c3b70['length']},_0x4ae802[_0x494caf(0x1df)]),_0x5c3b70;}catch(_0x563dc3){_0x4ae802[_0x494caf(0x1e9)](logError,_0x563dc3,{'event':_0x4ae802['KmDXp']},'Failed\x20to\x20fetch\x20data');throw _0x563dc3;}}['sanitizeValue'](_0x3c7fae){const _0x579fb3=a0_0x2be13e,_0x187769={'grAbM':function(_0x475a7c,_0x30d703){return _0x475a7c===_0x30d703;}};if(_0x187769['grAbM'](typeof _0x3c7fae,'string'))return _0x3c7fae['replace'](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')['trim']();else{if(Array[_0x579fb3(0x25a)](_0x3c7fae))return _0x3c7fae['map'](_0x4cfd68=>this[_0x579fb3(0x1ec)](_0x4cfd68));}return _0x3c7fae;}[a0_0x2be13e(0x23e)](_0x582c36){const _0x35a39a=a0_0x2be13e,_0x6df185={'PFVBx':function(_0x1950c9,_0x1797ef){return _0x1950c9===_0x1797ef;},'SDELN':function(_0x2ac61e,_0x554295){return _0x2ac61e||_0x554295;},'tmgIx':'invalid_condition','dtKne':_0x35a39a(0x243),'kuUQW':function(_0x23b1cb,_0x46ad65){return _0x23b1cb!==_0x46ad65;},'KZodn':_0x35a39a(0x249),'xsrFr':_0x35a39a(0x21e),'Dmapo':_0x35a39a(0x235),'soLwM':'\x20OR\x20'};if(!_0x582c36||!_0x582c36[_0x35a39a(0x212)]||_0x582c36['conditions'][_0x35a39a(0x217)]===0x0)return'';const {logic:_0x434188,conditions:_0x40aca4}=_0x582c36,_0x4a70a7=_0x434188&&_0x6df185['PFVBx'](_0x434188[_0x35a39a(0x256)](),'OR')?_0x6df185[_0x35a39a(0x24e)]:'\x20AND\x20',_0x417e35=_0x40aca4[_0x35a39a(0x24b)](_0x596e4c=>{const _0x3d1421=_0x35a39a,_0x31805b={'guCIv':function(_0x2fefeb,_0x2e5232){return _0x2fefeb===_0x2e5232;},'cQvcz':'string','EerRg':function(_0x43dd34,_0xd6822c){return _0x6df185['PFVBx'](_0x43dd34,_0xd6822c);}},{key:_0x2aa7fd,operator:_0x31229f,value:_0x27a247,sensitive:_0x15c65c}=_0x596e4c;if(_0x6df185[_0x3d1421(0x207)](!_0x2aa7fd,!_0x31229f))return logger['warn']({'event':_0x6df185['tmgIx'],'condition':_0x596e4c},_0x6df185['dtKne']),null;const _0x275148=this[_0x3d1421(0x1ec)](_0x27a247),_0x2835a7=_0x6df185['kuUQW'](_0x15c65c,undefined)?_0x15c65c:!![];let _0x4c4a59=_0x2aa7fd,_0x5eea3b=_0x275148;!_0x2835a7&&(_0x4c4a59='UPPER('+_0x2aa7fd+')',_0x6df185['PFVBx'](typeof _0x27a247,'string')&&(_0x5eea3b=_0x27a247['toUpperCase']()));const _0x2dcfe9=typeof _0x5eea3b===_0x6df185[_0x3d1421(0x252)]?'\x27'+_0x5eea3b['replace'](/'/g,'\x27\x27')+'\x27':_0x5eea3b;switch(_0x31229f['toUpperCase']()){case'=':case'!=':case'<>':return _0x4c4a59+'\x20'+_0x31229f+'\x20'+_0x2dcfe9;case'>':case'<':case'>=':case'<=':const _0x46ee4f=_0x6df185['PFVBx'](typeof _0x275148,_0x3d1421(0x249))?'\x27'+_0x275148[_0x3d1421(0x226)](/'/g,'\x27\x27')+'\x27':_0x275148;return _0x2aa7fd+'\x20'+_0x31229f+'\x20'+_0x46ee4f;case _0x3d1421(0x22c):case'NOT\x20LIKE':return _0x4c4a59+'\x20'+_0x31229f+'\x20'+_0x2dcfe9;case'IN':if(Array[_0x3d1421(0x25a)](_0x275148)){let _0x67ce2f;return!_0x2835a7?_0x67ce2f=_0x275148[_0x3d1421(0x24b)](_0x10169f=>{const _0x3b04e7=_0x3d1421,_0x3bfb68=_0x31805b['guCIv'](typeof _0x10169f,_0x31805b[_0x3b04e7(0x214)])?_0x10169f['toUpperCase']():_0x10169f;return _0x31805b['EerRg'](typeof _0x3bfb68,_0x31805b['cQvcz'])?'\x27'+_0x3bfb68[_0x3b04e7(0x226)](/'/g,'\x27\x27')+'\x27':_0x3bfb68;})['join'](',\x20'):_0x67ce2f=_0x275148[_0x3d1421(0x24b)](_0x49b605=>typeof _0x49b605==='string'?'\x27'+_0x49b605[_0x3d1421(0x226)](/'/g,'\x27\x27')+'\x27':_0x49b605)[_0x3d1421(0x1e6)](',\x20'),_0x4c4a59+'\x20IN\x20('+_0x67ce2f+')';}return _0x4c4a59+'\x20IN\x20('+_0x2dcfe9+')';case'IS\x20NULL':return _0x2aa7fd+'\x20IS\x20NULL';case _0x6df185['xsrFr']:return _0x2aa7fd+_0x3d1421(0x22e);default:logger[_0x3d1421(0x1f3)]({'event':_0x6df185['Dmapo'],'operator':_0x31229f},_0x3d1421(0x1e5));return _0x4c4a59+_0x3d1421(0x233)+_0x2dcfe9;}})['filter'](_0x8faed1=>_0x8faed1!==null);if(_0x6df185[_0x35a39a(0x241)](_0x417e35[_0x35a39a(0x217)],0x0))return'';return _0x417e35[_0x35a39a(0x1e6)](_0x4a70a7);}[a0_0x2be13e(0x201)](_0x45c2e7){const _0x2fa469=a0_0x2be13e,_0x1555ae={'CDzKW':_0x2fa469(0x208),'LNfkP':_0x2fa469(0x244),'YAsGv':function(_0x51e32d,_0x4a0239){return _0x51e32d===_0x4a0239;}};if(!_0x45c2e7||_0x45c2e7['length']===0x0)return'';const _0x577695=_0x45c2e7[_0x2fa469(0x24b)](_0x2c556a=>{const _0xa83c73=_0x2fa469,{column:_0x2a7a87,direction:_0x4a83eb}=_0x2c556a;if(!_0x2a7a87)return logger[_0xa83c73(0x1f3)]({'event':_0x1555ae['CDzKW'],'item':_0x2c556a},_0x1555ae['LNfkP']),null;const _0x4b3987=_0x4a83eb&&_0x1555ae[_0xa83c73(0x20c)](_0x4a83eb['toUpperCase'](),_0xa83c73(0x25e))?'DESC':_0xa83c73(0x1e2);return _0x2a7a87+'\x20'+_0x4b3987;})['filter'](_0x174289=>_0x174289!==null);if(_0x577695['length']===0x0)return'';return _0x577695[_0x2fa469(0x1e6)](',\x20');}async['generateExcel'](_0x45b52f,_0x5afc9f,_0x577c1e){const _0x95a67a=a0_0x2be13e,_0x578580={'Cupko':function(_0x1dab50,_0x507264){return _0x1dab50*_0x507264;},'DjhUA':function(_0x17191f,_0x29f063){return _0x17191f/_0x29f063;},'hTEhi':function(_0x44e485,_0xcda17c){return _0x44e485===_0xcda17c;},'XfcwN':function(_0x4d0fe8,_0x313757){return _0x4d0fe8>_0x313757;},'eFmeQ':_0x95a67a(0x246),'jLZic':'excel_columns_fallback','FJyof':_0x95a67a(0x1eb)},_0x2026e5=require(_0x95a67a(0x213)),_0x5339a8=new _0x2026e5(),_0xfeeab2=_0x577c1e['filename']?_0x577c1e['filename']+'-'+_0x45b52f:_0x95a67a(0x263)+_0x45b52f,_0x3eeb59=path[_0x95a67a(0x1e6)](this['exportDir'],_0xfeeab2+_0x95a67a(0x264));let _0x1d5153=_0x577c1e[_0x95a67a(0x1e3)];const _0x18c058=_0x1d5153&&_0x1d5153['length']===0x1&&(_0x578580['hTEhi'](_0x1d5153[0x0],'*')||_0x578580[_0x95a67a(0x23f)](_0x1d5153[0x0][_0x95a67a(0x206)](),_0x95a67a(0x216)));if(_0x5afc9f[_0x95a67a(0x217)]>0x0){const _0x3dd85f=Object[_0x95a67a(0x231)](_0x5afc9f[0x0]);if(_0x18c058)_0x1d5153=_0x3dd85f,logger['info']({'event':_0x95a67a(0x24c),'columns':_0x1d5153},_0x95a67a(0x203)+_0x1d5153[_0x95a67a(0x217)]+'\x20columns\x20(wildcard\x20requested)');else{if(_0x1d5153&&_0x1d5153['length']>0x0){const _0x49355e=_0x1d5153['filter'](_0x10e2ee=>_0x3dd85f['includes'](_0x10e2ee));_0x578580['XfcwN'](_0x49355e['length'],0x0)?(_0x1d5153=_0x49355e,logger[_0x95a67a(0x1ed)]({'event':_0x578580['eFmeQ'],'requestedColumns':_0x577c1e[_0x95a67a(0x1e3)],'validColumns':_0x1d5153},_0x95a67a(0x223)+_0x1d5153[_0x95a67a(0x217)]+'\x20columns\x20from\x20request')):(_0x1d5153=_0x3dd85f,logger['warn']({'event':_0x578580['jLZic'],'requestedColumns':_0x577c1e['columns'],'availableColumns':_0x3dd85f},_0x95a67a(0x211)+_0x3dd85f['length']+'\x20columns'));}else _0x1d5153=_0x3dd85f,logger[_0x95a67a(0x1ed)]({'event':'excel_columns_from_query_result','columns':_0x1d5153},'Using\x20'+_0x1d5153[_0x95a67a(0x217)]+'\x20columns\x20from\x20query\x20result');}}else logger[_0x95a67a(0x1ed)]({'event':_0x578580[_0x95a67a(0x1fb)],'columns':_0x1d5153},'Using\x20'+(_0x1d5153?.[_0x95a67a(0x217)]||0x0)+'\x20columns\x20from\x20config\x20(no\x20data)');return await _0x5339a8[_0x95a67a(0x20d)]({'data':_0x5afc9f,'columns':_0x1d5153,'columnFormats':_0x577c1e['columnFormats']||null,'fieldLabels':_0x577c1e['fieldLabels']||null,'filePath':_0x3eeb59,'onProgress':async _0x4e6dea=>{const _0x39a900=_0x95a67a;await redisHelper[_0x39a900(0x218)](_0x45b52f,{'progress':Math['round'](_0x4e6dea),'processed_rows':Math[_0x39a900(0x22f)](_0x578580[_0x39a900(0x220)](_0x578580['DjhUA'](_0x4e6dea,0x64),_0x5afc9f[_0x39a900(0x217)]))});}}),_0x3eeb59;}async[a0_0x2be13e(0x1fe)](_0x1a9a0c){const _0x1791d2=a0_0x2be13e,_0x2ac3e1={'sjcWC':function(_0x2b1629,_0x15464a){return _0x2b1629!==_0x15464a;},'gtNVV':function(_0x46c33d,_0x897554,_0x16191e,_0x59c199){return _0x46c33d(_0x897554,_0x16191e,_0x59c199);},'HlhnX':'export_file_not_found'},_0x55b1dc=await redisHelper[_0x1791d2(0x257)](_0x1a9a0c);if(!_0x55b1dc||_0x2ac3e1['sjcWC'](_0x55b1dc[_0x1791d2(0x1e0)],'completed'))return null;try{return await fs[_0x1791d2(0x245)](_0x55b1dc['file_path']),_0x55b1dc['file_path'];}catch(_0x4e41a2){return _0x2ac3e1['gtNVV'](logError,_0x4e41a2,{'event':_0x2ac3e1[_0x1791d2(0x1d3)],'jobId':_0x1a9a0c,'path':_0x55b1dc[_0x1791d2(0x20f)]},_0x1791d2(0x25d)),null;}}async['cleanup'](){const _0x213849=a0_0x2be13e,_0x117748={'PZGvu':function(_0x2016af,_0x4cc530){return _0x2016af-_0x4cc530;},'JWMJO':function(_0xe4cd03,_0x266bd9){return _0xe4cd03*_0x266bd9;},'LXkuW':'export_file_deleted','JKTRI':'Export\x20file\x20deleted','EYCWh':_0x213849(0x236)};logger['info']({'event':'export_cleanup_start'},_0x213849(0x230));const _0x321da0=await redisHelper[_0x213849(0x1de)]();let _0x286fbf=0x0;for(const _0x39a097 of _0x321da0){const _0x5670eb=new Date(_0x39a097[_0x213849(0x22b)]),_0x545730=new Date(),_0x558445=_0x117748['PZGvu'](_0x545730,_0x5670eb)/_0x117748[_0x213849(0x22a)](_0x117748[_0x213849(0x22a)](0x3e8,0x3c),0x3c);if(_0x558445>0x1){if(_0x39a097[_0x213849(0x20f)])try{await fs['unlink'](_0x39a097[_0x213849(0x20f)]),logger[_0x213849(0x1ed)]({'event':_0x117748[_0x213849(0x20a)],'path':_0x39a097['file_path']},_0x117748[_0x213849(0x21b)]);}catch(_0x20420d){logger['warn']({'event':'export_file_delete_error','path':_0x39a097[_0x213849(0x20f)],'error':_0x20420d[_0x213849(0x1d7)]},_0x213849(0x1d8));}await redisHelper[_0x213849(0x24d)](_0x39a097['job_id']),_0x286fbf++;}}return logger[_0x213849(0x1ed)]({'event':_0x117748[_0x213849(0x22d)],'deleted':_0x286fbf},_0x213849(0x1ff)),_0x286fbf;}}module[a0_0x2be13e(0x1da)]=new ExportService();
1
+ const a0_0x18ad12=a0_0x205f;(function(_0x1d372c,_0x368e43){const _0x465596=a0_0x205f,_0x4e9e71=_0x1d372c();while(!![]){try{const _0x2df1bf=-parseInt(_0x465596(0x21c))/0x1*(parseInt(_0x465596(0x200))/0x2)+parseInt(_0x465596(0x1d4))/0x3+parseInt(_0x465596(0x1fb))/0x4*(parseInt(_0x465596(0x1fc))/0x5)+parseInt(_0x465596(0x21e))/0x6*(parseInt(_0x465596(0x22d))/0x7)+parseInt(_0x465596(0x1b2))/0x8*(-parseInt(_0x465596(0x1c3))/0x9)+parseInt(_0x465596(0x195))/0xa*(parseInt(_0x465596(0x1e1))/0xb)+parseInt(_0x465596(0x209))/0xc*(-parseInt(_0x465596(0x238))/0xd);if(_0x2df1bf===_0x368e43)break;else _0x4e9e71['push'](_0x4e9e71['shift']());}catch(_0x1186d3){_0x4e9e71['push'](_0x4e9e71['shift']());}}}(a0_0xd367,0x9468d));const {v7:uuidv7}=require('uuid'),path=require('path'),fs=require('fs')[a0_0x18ad12(0x217)],fsSync=require('fs'),redisHelper=require(a0_0x18ad12(0x1ac)),{logger,logError}=require(a0_0x18ad12(0x1c5)),dbType=(process['env']['DB_TYPE']||a0_0x18ad12(0x1cc))['toLowerCase']();function a0_0xd367(){const _0x393110=['ignVBhvTBNmGzNjVBsbXDwvYEsbYzxn1Bhq','y29TCgXLDgvK','zxHWB3j0lq','EeTNuxq','B3jHy2XL','zMLSzw5HBwu','shvuzgm','CgfYyw1Z','C29IBM4','BKTXAgy','BgvUz3rO','ChjVBwLZzxm','u3vwrhy','s3n4uwm','z2T6v20','v0Lusca','m3DRwefMCq','vxnPBMCGywXSia','mta5mtu4AgXfAwDe','Dg90ywXFCM93CW','AM9PBG','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','BwfW','zMXVB3i','zMfPBgvK','zMLSDgvY','rxHWB3j0ihnLCNzPy2uGAw5PDgLHBgL6zwq','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','rxHWB3j0igPVyIbJCMvHDgvK','v1rwzeS','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','rgf0ysbMzxrJAgvKihn1y2nLC3nMDwXSEq','tKnkAxe','mJaZy21SC1Dx','y3DK','Aw5JBhvKzxm','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','zxHJzwXFy29SDw1UC19MCM9Tx2nVBMzPzW','v2PpDhK','lI9LEgnLBc1Nzw5LCMf0B3i','yNvPBgrxAgvYzunSyxvZzq','iefticGkicaGifnftevdvca','shjjBem','DfHJAM0','mtnlEfP4EMO','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','y29UzgL0Aw9UCW','zNzyq1m','mtiWnJG2mfnUELjHta','x2v4Cg9YDerPCG','ignVBhvTBNmGzNjVBsbJB25MAwCGkg5VigrHDgeP','zxHWB3j0x2PVyL9JCMvHDgvK','zxHLy3v0zvf1zxj5','l2fWAs8','CfPZDuu','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ie9sia','BgXMwgG','ieLtie5vteW','qvnd','zxHWB3j0x2zPBgvFzgvSzxrLza','Dg9ju09tDhjPBMC','zxHWB3j0x2zLDgnOx2nVBxbSzxrL','Cgf5Bg9Hza','id0G','wfnLCgG','Cwvbsfq','ru5pru5u','t2nMvwK','ChjVy2vZC2vKx3jVD3m','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','BM93','Aw52ywXPzf9JB25KAxrPB24','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','revtqW','C2v0sM9I','mJq4BLrYwg9T','D2fYBG','y29TCgXLDgvKx2f0','vxnPBMCGy3vZDg9Tigv4Cg9YDff1zxj5','ChjVy2vZC0PVyG','u3veyNG','C3rYAw5N','zxHWB3j0x2zPBgvFzgvSzxrLx2vYCM9Y','zxHWB3j0x3vZAw5Nx2n1C3rVBv9XDwvYEq','CMvZB2X2zuv4Cg9YDff1zxj5','CMvZB2X2zq','vfrjsw8','ignOyxjZkq','zxHPC3rZu3LUyW','rxHWB3j0igzPBguGBM90igzVDw5K','z2vUzxjHDgu','y29SDw1UCW','ndyXmdDLCNfxq28','cK9srevsiejzia','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','y29SDw1UrM9YBwf0CW','zMLSzv9WyxrO','DxbKyxrLsM9I','z2v0sM9I','C3rHCNrZv2L0Aa','DxDiAg4','Cg9ZDgDYzxnXBa','z2vUzxjHDgvfEgnLBa','t0rTu1q','DhjPA0O','Aw52ywXPzf9VCMrLCG','Aw5MBW','Dg9tDhjPBMC','qvnLrfy','nZK2ntq4u1zkCwXH','CMvHzezPBgvtEw5J','zLPZAKS','EKPUB2m','x2rHDge','zxHWB3j0x3nLCNzPy2vFAw5PDa','iefticGkicaGia','zxHWB3j0x3f1zxj5x2zPBgvFBg9HzgvK','Bw9KDwXLtMfTzq','Dg9mB3DLCKnHC2u','z2v0rMLSzvbHDgG','D0j1sfG','Dg9vChbLCKnHC2u','odHhyw9Nq1O','zxHWB3j0x2nSzwfUDxbFC3rHCNq','CMvWBgfJzq','zxHWB3j0rgLY','DMTlB3a','CMfUzg9T','zxHWB3j0x2nVBxbSzxrLza','DhjPBq','zxHJzwXFy29SDw1UC19MywXSyMfJAW','zg1wtvu','C01gzfi','AxHHD2y','y2XLyw51Ca','zw50CMLLCW','ieLoicG','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','Dw5SAw5R','CM91BMq','rxHWB3j0ignVBxbSzxrLzcbZDwnJzxnZzNvSBhK','C2fUAxrPEMvwywX1zq','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','ze1TrLG','zxHWB3j0CW','C3vIC3rYAw5N','y2HHCKf0','BwvZC2fNzq','mJbOveDuA1a','ntKWmtv1suLszvK','rvHqt1jux0rjuG','cIaGicbguK9nia','y3zAtxC','mZi5mJu4vMrMDeHn','sgHNEhy','wKrmzuq','z2v0sM9Iu3rHDhvZ','AxnbCNjHEq','zMLLBgrmywjLBhm','A2v5CW','z2vUzxjHDgvkB2jjza','yNvPBgrpCMrLCKj5q2XHDxnL','nJy4ndm3mMjsAK1mwa','AM9Ix2LK','zxHWB3j0x2zLDgnOx3n0yxj0'];a0_0xd367=function(){return _0x393110;};return a0_0xd367();}let executeQuery;function a0_0x205f(_0x1516e5,_0x170fbb){_0x1516e5=_0x1516e5-0x195;const _0xd36733=a0_0xd367();let _0x205ffe=_0xd36733[_0x1516e5];if(a0_0x205f['QMaGcQ']===undefined){var _0x179ea0=function(_0x42558b){const _0x187a8a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x473469='',_0x5acf07='';for(let _0xd39e3d=0x0,_0x235bb8,_0x470156,_0xec5a3a=0x0;_0x470156=_0x42558b['charAt'](_0xec5a3a++);~_0x470156&&(_0x235bb8=_0xd39e3d%0x4?_0x235bb8*0x40+_0x470156:_0x470156,_0xd39e3d++%0x4)?_0x473469+=String['fromCharCode'](0xff&_0x235bb8>>(-0x2*_0xd39e3d&0x6)):0x0){_0x470156=_0x187a8a['indexOf'](_0x470156);}for(let _0x54b43a=0x0,_0x42d147=_0x473469['length'];_0x54b43a<_0x42d147;_0x54b43a++){_0x5acf07+='%'+('00'+_0x473469['charCodeAt'](_0x54b43a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5acf07);};a0_0x205f['aAqaaJ']=_0x179ea0,a0_0x205f['gByoJj']={},a0_0x205f['QMaGcQ']=!![];}const _0x456fc6=_0xd36733[0x0],_0x51e573=_0x1516e5+_0x456fc6,_0xe2813b=a0_0x205f['gByoJj'][_0x51e573];return!_0xe2813b?(_0x205ffe=a0_0x205f['aAqaaJ'](_0x205ffe),a0_0x205f['gByoJj'][_0x51e573]=_0x205ffe):_0x205ffe=_0xe2813b,_0x205ffe;}if(dbType===a0_0x18ad12(0x210)){const oracleDb=require('../database/db-oracle');executeQuery=(_0x17e780,_0x453c1d)=>oracleDb['executeQuery'](_0x17e780,_0x453c1d);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x65a679,_0x5d5a96)=>mysqlDb[a0_0x18ad12(0x199)](_0x65a679,_0x5d5a96);}else executeQuery=require('../../core/utils/db')[a0_0x18ad12(0x199)];}class ExportService{constructor(){this['_exportDir']=null;}get[a0_0x18ad12(0x1e4)](){const _0x1224c5=a0_0x18ad12,_0x3b9fee={'XSeph':'default','FNJgv':_0x1224c5(0x1d9),'sKQAP':'Failed\x20to\x20initialize\x20export\x20service'};if(!this[_0x1224c5(0x196)]){const _0xc046d7=process['env'][_0x1224c5(0x19c)]||_0x3b9fee[_0x1224c5(0x1a6)];this[_0x1224c5(0x196)]=process['env'][_0x1224c5(0x1fd)]||path['join'](__dirname,'../../exports/'+_0xc046d7);try{!fsSync[_0x1224c5(0x1bf)](this['_exportDir'])&&fsSync['mkdirSync'](this['_exportDir'],{'recursive':!![]}),logger['info']({'event':_0x3b9fee['FNJgv'],'dir':this[_0x1224c5(0x196)]},_0x1224c5(0x226));}catch(_0xd708bc){logError(_0xd708bc,{'event':'export_service_init_error'},_0x3b9fee['sKQAP']);}}return this[_0x1224c5(0x196)];}[a0_0x18ad12(0x1bb)](_0xf1d443,_0x1393a6=null){const _0x22b3c3=a0_0x18ad12,_0x16a931={'sobnn':'string','HuTdc':'file:','quZKP':'Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty','vUrhr':_0x22b3c3(0x1a4),'dMmFX':'export_query_file_resolve','fZsjK':'utf8','DBNnR':_0x22b3c3(0x1a8)};if(!_0xf1d443||typeof _0xf1d443!==_0x16a931[_0x22b3c3(0x214)])return _0xf1d443;const _0x12a778=_0xf1d443[_0x22b3c3(0x1e8)]();if(!_0x12a778[_0x22b3c3(0x1ca)](_0x16a931[_0x22b3c3(0x212)]))return _0x12a778;const _0x4dc1d2=_0x12a778[_0x22b3c3(0x1e3)](/^file:/,'')['trim']();if(!_0x4dc1d2)throw new Error(_0x16a931['quZKP']);const _0x554a9d=_0x1393a6||path[_0x22b3c3(0x220)](process[_0x22b3c3(0x22e)](),_0x16a931['vUrhr']),_0xb9a9cd=path[_0x22b3c3(0x1bc)](_0x554a9d,_0x4dc1d2);logger[_0x22b3c3(0x1d1)]({'event':_0x16a931[_0x22b3c3(0x1f6)],'relativePath':_0x4dc1d2,'baseDir':_0x554a9d,'absolutePath':_0xb9a9cd},_0x22b3c3(0x1af)+_0x4dc1d2);if(!fsSync[_0x22b3c3(0x1bf)](_0xb9a9cd))throw new Error(_0x22b3c3(0x1f5)+_0xb9a9cd);try{const _0x513626=fsSync[_0x22b3c3(0x1d5)](_0xb9a9cd,_0x16a931[_0x22b3c3(0x1d6)]);if(!_0x513626||!_0x513626['trim']())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0xb9a9cd);return logger[_0x22b3c3(0x1d1)]({'event':_0x22b3c3(0x1db),'file':_0xb9a9cd,'queryLength':_0x513626[_0x22b3c3(0x216)]},_0x22b3c3(0x239)+_0x513626['length']+_0x22b3c3(0x1be)),_0x513626['trim']();}catch(_0x35b48f){if(_0x35b48f['code']===_0x16a931['DBNnR'])throw new Error(_0x22b3c3(0x1f5)+_0xb9a9cd);throw new Error('Failed\x20to\x20read\x20export\x20query\x20file:\x20'+_0x35b48f['message']);}}[a0_0x18ad12(0x207)](){const _0x1a6673=a0_0x18ad12,_0xa6de8={'pZsuE':function(_0x240726){return _0x240726();},'RqffZ':function(_0x71bf7,_0x15ba18){return _0x71bf7+_0x15ba18;},'cvZMw':function(_0x324de3,_0x9e87d1){return _0x324de3<_0x9e87d1;}},_0x3abfb1=_0x1a6673(0x1ab),_0x1f3c7e=Date[_0x1a6673(0x1ad)]()[_0x1a6673(0x1d2)](0x24),_0x37dd4e=_0xa6de8[_0x1a6673(0x19b)](uuidv7)[_0x1a6673(0x1e3)](/-/g,'')['substring'](0x0,0xc-_0x1f3c7e['length']),_0x509053=_0xa6de8['RqffZ'](_0x1f3c7e,_0x37dd4e)[_0x1a6673(0x1f8)](0x0,0xc);let _0x419867='';for(let _0x46a187=0x0;_0xa6de8[_0x1a6673(0x1ff)](_0x46a187,0xc);_0x46a187++){_0x509053[_0x46a187]?_0x419867+=_0x509053[_0x46a187]:_0x419867+=_0x3abfb1[_0x1a6673(0x1f9)](Math[_0x1a6673(0x223)](Math[_0x1a6673(0x1e6)]()*_0x3abfb1[_0x1a6673(0x216)]));}return _0x419867;}async['createJob'](_0x43728d){const _0x37daca=a0_0x18ad12,_0x4b45a7={'ODmST':'Export\x20processing\x20failed','zJnoc':'pending','tXcjm':_0x37daca(0x198),'UdEzy':_0x37daca(0x228)},_0x37aee3=this[_0x37daca(0x207)](),_0x47b71b={'job_id':_0x37aee3,'status':_0x4b45a7[_0x37daca(0x1d7)],'progress':0x0,'created_at':new Date()[_0x37daca(0x1a2)](),'params':_0x43728d,'total_rows':0x0,'processed_rows':0x0};return await redisHelper[_0x37daca(0x1b1)](_0x37aee3,_0x47b71b),logger['info']({'event':_0x4b45a7[_0x37daca(0x237)],'jobId':_0x37aee3,'params':_0x43728d},_0x4b45a7['UdEzy']),this['processJob'](_0x37aee3,_0x43728d)['catch'](_0xdeb81c=>{const _0x53b8dd=_0x37daca;logError(_0xdeb81c,{'event':'export_process_error','jobId':_0x37aee3},_0x4b45a7[_0x53b8dd(0x1ce)]);}),{'job_id':_0x37aee3,'status':_0x4b45a7['zJnoc']};}async[a0_0x18ad12(0x203)](_0x7d4fe5){const _0x2d5e9c=a0_0x18ad12,_0x2670f6={'xKgQt':_0x2d5e9c(0x20d)},_0x4e6cb8=await redisHelper['getJob'](_0x7d4fe5);if(!_0x4e6cb8)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0x4e6cb8[_0x2d5e9c(0x20a)],'status':_0x4e6cb8['status'],'progress':_0x4e6cb8['progress'],'total_rows':_0x4e6cb8[_0x2d5e9c(0x21f)],'processed_rows':_0x4e6cb8[_0x2d5e9c(0x1aa)],'file_url':_0x4e6cb8['status']===_0x2670f6[_0x2d5e9c(0x20f)]?_0x2d5e9c(0x19a)+_0x4e6cb8[_0x2d5e9c(0x213)][_0x2d5e9c(0x1dc)]+'/'+_0x4e6cb8['params']['endpointName']+_0x2d5e9c(0x221)+_0x7d4fe5:null,'error':_0x4e6cb8['error']||null,'created_at':_0x4e6cb8['created_at'],'completed_at':_0x4e6cb8[_0x2d5e9c(0x1b4)]||null}};}async[a0_0x18ad12(0x1b6)](_0x1d694d,_0x4a220a){const _0x377bce=a0_0x18ad12,_0x3ec748={'SuDbx':'processing','hOrYg':'export_processing_start','NCJiq':'Export\x20processing\x20started','HrIlC':_0x377bce(0x1e7),'SQRHC':'Export\x20failed'};try{await redisHelper[_0x377bce(0x1c8)](_0x1d694d,{'status':_0x3ec748[_0x377bce(0x1b7)],'started_at':new Date()['toISOString']()}),logger['info']({'event':_0x3ec748['hOrYg'],'jobId':_0x1d694d},_0x3ec748[_0x377bce(0x22c)]);const _0x31d44a=await this['fetchData'](_0x4a220a);await redisHelper[_0x377bce(0x1c8)](_0x1d694d,{'total_rows':_0x31d44a['length']});const _0x201736=await this[_0x377bce(0x1cd)](_0x1d694d,_0x31d44a,_0x4a220a);await redisHelper['updateJob'](_0x1d694d,{'status':_0x377bce(0x20d),'progress':0x64,'file_path':_0x201736,'completed_at':new Date()[_0x377bce(0x1a2)]()}),logger[_0x377bce(0x1d1)]({'event':_0x3ec748[_0x377bce(0x236)],'jobId':_0x1d694d,'rows':_0x31d44a[_0x377bce(0x216)]},_0x377bce(0x1f3));}catch(_0x49553f){logError(_0x49553f,{'event':'export_failed','jobId':_0x1d694d},_0x3ec748['SQRHC']),await redisHelper['updateJob'](_0x1d694d,{'status':_0x377bce(0x224),'error':_0x49553f['message'],'failed_at':new Date()[_0x377bce(0x1a2)]()});}}async['fetchData'](_0x412693){const _0xba1e4b=a0_0x18ad12,_0x528f3c={'llfXh':_0xba1e4b(0x1f0),'UKyeq':function(_0x24ad3e,_0x37a3c2){return _0x24ad3e===_0x37a3c2;},'ZDLeD':'all','qeAHT':_0xba1e4b(0x20b),'WTVdK':function(_0x16fc74,_0xafa288){return _0x16fc74(_0xafa288);},'wBuHX':'oracle','dtvNT':function(_0x3f8dca,_0x2134da){return _0x3f8dca>_0x2134da;},'OcfUi':_0xba1e4b(0x1a3),'ijGvv':function(_0x4e9238,_0x376550,_0x3f3b71,_0x535734){return _0x4e9238(_0x376550,_0x3f3b71,_0x535734);},'pKfJM':'Failed\x20to\x20fetch\x20data'};try{const {tableName:_0x1f0a10,columns:_0x2977e5,exportQuery:_0x362e82,where:_0x12b5b3,sort_columns:_0x1eb874}=_0x412693;if(!_0x1f0a10||!_0x2977e5||_0x2977e5['length']===0x0)throw new Error('tableName\x20and\x20columns\x20are\x20required');const _0x4d8377=_0x1f0a10['replace'](/\./g,'_')+_0xba1e4b(0x1d8);let _0xe24116;if(_0x362e82&&_0x362e82[_0xba1e4b(0x1e8)]()){let _0x5e1f6e=_0x362e82;_0x362e82['trim']()['startsWith']('file:')&&(_0x5e1f6e=this[_0xba1e4b(0x1bb)](_0x362e82)),_0xe24116=_0xba1e4b(0x21b)+_0x4d8377+_0xba1e4b(0x1da)+_0x5e1f6e+'\x0a)',logger['info']({'event':_0xba1e4b(0x1ba),'query':_0x5e1f6e[_0xba1e4b(0x1f8)](0x0,0x64)},_0xba1e4b(0x1b5));}else{const _0x3e54c4=_0x2977e5['map'](_0x21590b=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x21590b)[_0xba1e4b(0x220)](',');_0xe24116='WITH\x20'+_0x4d8377+_0xba1e4b(0x235)+_0x3e54c4+_0xba1e4b(0x1fe)+_0x1f0a10+'\x0a)',logger['info']({'event':'export_using_auto_query','tableName':_0x1f0a10,'columnCount':_0x2977e5[_0xba1e4b(0x216)]},_0x528f3c[_0xba1e4b(0x19e)]);}const _0x5b6aa2=!_0x2977e5||_0x2977e5['length']===0x0||_0x528f3c['UKyeq'](_0x2977e5['length'],0x1)&&(_0x2977e5[0x0]==='*'||_0x2977e5[0x0]['toLowerCase']()===_0x528f3c[_0xba1e4b(0x202)]),_0x31ba18=_0x5b6aa2?'*':_0x2977e5[_0xba1e4b(0x220)](',\x20');_0xe24116+='\x0aSELECT\x20'+_0x31ba18+'\x0aFROM\x20'+_0x4d8377;if(_0x12b5b3){const _0x558430=this[_0xba1e4b(0x234)](_0x12b5b3);_0x558430&&(_0xe24116+='\x0aWHERE\x20'+_0x558430);}if(_0x1eb874&&_0x1eb874['length']>0x0){const _0xd31bae=this[_0xba1e4b(0x208)](_0x1eb874);_0xd31bae&&(_0xe24116+=_0xba1e4b(0x1c4)+_0xd31bae);}logger[_0xba1e4b(0x1d1)]({'event':_0x528f3c[_0xba1e4b(0x1a7)],'query':_0xe24116['substring'](0x0,0xc8)},'Fetching\x20data\x20from\x20database');const _0x49e9ff=await _0x528f3c[_0xba1e4b(0x229)](executeQuery,_0xe24116);let _0x523bfd=_0x49e9ff;return dbType===_0x528f3c[_0xba1e4b(0x1df)]&&_0x49e9ff&&_0x528f3c['dtvNT'](_0x49e9ff[_0xba1e4b(0x216)],0x0)&&(_0x523bfd=_0x49e9ff[_0xba1e4b(0x222)](_0x1f1760=>{const _0x327b52=_0xba1e4b,_0x51d108={};for(const [_0x1211ee,_0x2e1c88]of Object[_0x327b52(0x1ee)](_0x1f1760)){_0x51d108[_0x1211ee[_0x327b52(0x1dd)]()]=_0x2e1c88;}return _0x51d108;})),logger[_0xba1e4b(0x1d1)]({'event':_0x528f3c[_0xba1e4b(0x1a9)],'rows':_0x523bfd[_0xba1e4b(0x216)]},_0xba1e4b(0x22b)),_0x523bfd;}catch(_0x3b531c){_0x528f3c['ijGvv'](logError,_0x3b531c,{'event':'export_fetch_error'},_0x528f3c['pKfJM']);throw _0x3b531c;}}[a0_0x18ad12(0x1f4)](_0x1f218d){const _0x1442d0=a0_0x18ad12,_0x59a8c4={'tGgca':_0x1442d0(0x1b8)};if(typeof _0x1f218d===_0x59a8c4['tGgca'])return _0x1f218d['replace'](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')['trim']();else{if(Array[_0x1442d0(0x204)](_0x1f218d))return _0x1f218d['map'](_0x542bcb=>this[_0x1442d0(0x1f4)](_0x542bcb));}return _0x1f218d;}['buildWhereClause'](_0x3ca709){const _0x3a602f=a0_0x18ad12,_0x737d82={'VjSJE':function(_0x557550,_0x37bf45){return _0x557550||_0x37bf45;},'nKqhf':function(_0x20ea69,_0x3f7934){return _0x20ea69!==_0x3f7934;},'fvXCS':function(_0x556a43,_0xaa3c76){return _0x556a43===_0xaa3c76;},'vkKop':'string','NQrgb':function(_0x188906,_0x75698c){return _0x188906===_0x75698c;},'uwHhn':'LIKE','trikJ':'NOT\x20LIKE','ASeDV':'IS\x20NOT\x20NULL','SuVDv':_0x3a602f(0x227)};if(!_0x3ca709||!_0x3ca709[_0x3a602f(0x23a)]||_0x3ca709['conditions'][_0x3a602f(0x216)]===0x0)return'';const {logic:_0x4609be,conditions:_0x175857}=_0x3ca709,_0x16da68=_0x4609be&&_0x737d82['NQrgb'](_0x4609be['toUpperCase'](),'OR')?_0x3a602f(0x19d):'\x20AND\x20',_0x4a540e=_0x175857[_0x3a602f(0x222)](_0x4809d3=>{const _0x37b3a6=_0x3a602f,_0x535733={'tYOgn':function(_0x1375e1,_0x9471e1){return _0x1375e1===_0x9471e1;},'DmpEj':_0x37b3a6(0x1b8)},{key:_0x4333d3,operator:_0x4c0dc8,value:_0x1be88c,sensitive:_0x1bbeda}=_0x4809d3;if(_0x737d82['VjSJE'](!_0x4333d3,!_0x4c0dc8))return logger['warn']({'event':_0x37b3a6(0x1ae),'condition':_0x4809d3},'Skipping\x20invalid\x20condition'),null;const _0x454cdd=this[_0x37b3a6(0x1f4)](_0x1be88c),_0x13bc30=_0x737d82[_0x37b3a6(0x215)](_0x1bbeda,undefined)?_0x1bbeda:!![];let _0x3a6542=_0x4333d3,_0x486b94=_0x454cdd;!_0x13bc30&&(_0x3a6542='UPPER('+_0x4333d3+')',_0x737d82[_0x37b3a6(0x23b)](typeof _0x1be88c,_0x737d82[_0x37b3a6(0x1e5)])&&(_0x486b94=_0x1be88c[_0x37b3a6(0x1e0)]()));const _0x3bd9cc=_0x737d82['NQrgb'](typeof _0x486b94,'string')?'\x27'+_0x486b94['replace'](/'/g,'\x27\x27')+'\x27':_0x486b94;switch(_0x4c0dc8[_0x37b3a6(0x1e0)]()){case'=':case'!=':case'<>':return _0x3a6542+'\x20'+_0x4c0dc8+'\x20'+_0x3bd9cc;case'>':case'<':case'>=':case'<=':const _0x26e4dc=_0x737d82[_0x37b3a6(0x23b)](typeof _0x454cdd,_0x737d82['vkKop'])?'\x27'+_0x454cdd[_0x37b3a6(0x1e3)](/'/g,'\x27\x27')+'\x27':_0x454cdd;return _0x4333d3+'\x20'+_0x4c0dc8+'\x20'+_0x26e4dc;case _0x737d82[_0x37b3a6(0x1cb)]:case _0x737d82[_0x37b3a6(0x1cf)]:return _0x3a6542+'\x20'+_0x4c0dc8+'\x20'+_0x3bd9cc;case'IN':if(Array[_0x37b3a6(0x204)](_0x454cdd)){let _0x2729f5;return!_0x13bc30?_0x2729f5=_0x454cdd[_0x37b3a6(0x222)](_0x5d9762=>{const _0x2f3f5f=_0x37b3a6,_0x3620b5=_0x535733['tYOgn'](typeof _0x5d9762,_0x535733['DmpEj'])?_0x5d9762[_0x2f3f5f(0x1e0)]():_0x5d9762;return _0x535733['tYOgn'](typeof _0x3620b5,_0x535733['DmpEj'])?'\x27'+_0x3620b5[_0x2f3f5f(0x1e3)](/'/g,'\x27\x27')+'\x27':_0x3620b5;})[_0x37b3a6(0x220)](',\x20'):_0x2729f5=_0x454cdd['map'](_0x56c293=>typeof _0x56c293===_0x37b3a6(0x1b8)?'\x27'+_0x56c293[_0x37b3a6(0x1e3)](/'/g,'\x27\x27')+'\x27':_0x56c293)[_0x37b3a6(0x220)](',\x20'),_0x3a6542+'\x20IN\x20('+_0x2729f5+')';}return _0x3a6542+_0x37b3a6(0x1ef)+_0x3bd9cc+')';case'IS\x20NULL':return _0x4333d3+_0x37b3a6(0x19f);case _0x737d82[_0x37b3a6(0x1d3)]:return _0x4333d3+'\x20IS\x20NOT\x20NULL';default:logger[_0x37b3a6(0x1b3)]({'event':'unknown_operator','operator':_0x4c0dc8},_0x737d82[_0x37b3a6(0x218)]);return _0x3a6542+_0x37b3a6(0x1a5)+_0x3bd9cc;}})['filter'](_0x2e32dd=>_0x2e32dd!==null);if(_0x4a540e['length']===0x0)return'';return _0x4a540e['join'](_0x16da68);}[a0_0x18ad12(0x208)](_0x533fc0){const _0x35cadd=a0_0x18ad12,_0x26a577={'xFQLR':_0x35cadd(0x1a0)};if(!_0x533fc0||_0x533fc0[_0x35cadd(0x216)]===0x0)return'';const _0x1293f3=_0x533fc0['map'](_0x5153f0=>{const _0x5d981b=_0x35cadd,{column:_0x5a3e71,direction:_0x520667}=_0x5153f0;if(!_0x5a3e71)return logger['warn']({'event':_0x5d981b(0x1d0),'item':_0x5153f0},'Skipping\x20invalid\x20order\x20clause'),null;const _0x55890f=_0x520667&&_0x520667[_0x5d981b(0x1e0)]()===_0x5d981b(0x1b0)?'DESC':_0x26a577['xFQLR'];return _0x5a3e71+'\x20'+_0x55890f;})[_0x35cadd(0x225)](_0x4873ba=>_0x4873ba!==null);if(_0x1293f3['length']===0x0)return'';return _0x1293f3[_0x35cadd(0x220)](',\x20');}async['generateExcel'](_0x285071,_0x3d99ba,_0x37d871){const _0x473cec=a0_0x18ad12,_0x9e252c={'sMFdR':function(_0x56aeab,_0x4896a8){return _0x56aeab/_0x4896a8;},'gkzWm':function(_0x316650,_0x183ab7){return _0x316650(_0x183ab7);},'GjRmh':function(_0x590c8e,_0x1e44a8){return _0x590c8e===_0x1e44a8;},'ixawf':function(_0x371b36,_0x4d1b73){return _0x371b36===_0x4d1b73;},'LCSEx':'all','ttjpR':function(_0x5c4a45,_0x137675){return _0x5c4a45>_0x137675;},'zSRlu':'excel_columns_select_all'},_0xec78e2=_0x9e252c[_0x473cec(0x21a)](require,_0x473cec(0x233)),_0x319c57=new _0xec78e2(),_0x457ddb=_0x37d871[_0x473cec(0x211)]?_0x37d871[_0x473cec(0x211)]+'-'+_0x285071:_0x473cec(0x20e)+_0x285071,_0xc64071=path[_0x473cec(0x220)](this[_0x473cec(0x1e4)],_0x457ddb+'.xlsx');let _0x93ab1f=_0x37d871['columns'];const _0x3fb64e=_0x93ab1f&&_0x93ab1f[_0x473cec(0x216)]===0x1&&(_0x9e252c['GjRmh'](_0x93ab1f[0x0],'*')||_0x9e252c[_0x473cec(0x1ec)](_0x93ab1f[0x0][_0x473cec(0x1dd)](),_0x9e252c['LCSEx']));if(_0x9e252c['ttjpR'](_0x3d99ba[_0x473cec(0x216)],0x0)){const _0x1abe5f=Object[_0x473cec(0x206)](_0x3d99ba[0x0]);if(_0x3fb64e)_0x93ab1f=_0x1abe5f,logger[_0x473cec(0x1d1)]({'event':_0x9e252c['zSRlu'],'columns':_0x93ab1f},_0x473cec(0x21d)+_0x93ab1f[_0x473cec(0x216)]+'\x20columns\x20(wildcard\x20requested)');else{if(_0x93ab1f&&_0x93ab1f['length']>0x0){const _0x351489=_0x93ab1f['filter'](_0x221fd6=>_0x1abe5f[_0x473cec(0x22f)](_0x221fd6));_0x351489[_0x473cec(0x216)]>0x0?(_0x93ab1f=_0x351489,logger['info']({'event':_0x473cec(0x22a),'requestedColumns':_0x37d871['columns'],'validColumns':_0x93ab1f},'Using\x20'+_0x93ab1f['length']+'\x20columns\x20from\x20request')):(_0x93ab1f=_0x1abe5f,logger['warn']({'event':_0x473cec(0x1e9),'requestedColumns':_0x37d871[_0x473cec(0x1c2)],'availableColumns':_0x1abe5f},_0x473cec(0x230)+_0x1abe5f['length']+'\x20columns'));}else _0x93ab1f=_0x1abe5f,logger[_0x473cec(0x1d1)]({'event':'excel_columns_from_query_result','columns':_0x93ab1f},'Using\x20'+_0x93ab1f['length']+_0x473cec(0x20c));}}else logger['info']({'event':_0x473cec(0x231),'columns':_0x93ab1f},'Using\x20'+(_0x93ab1f?.[_0x473cec(0x216)]||0x0)+_0x473cec(0x197));return await _0x319c57[_0x473cec(0x1c1)]({'data':_0x3d99ba,'columns':_0x93ab1f,'columnFormats':_0x37d871[_0x473cec(0x1c6)]||null,'fieldLabels':_0x37d871[_0x473cec(0x205)]||null,'filePath':_0xc64071,'onProgress':async _0x16e5b1=>{const _0x5e8a90=_0x473cec;await redisHelper['updateJob'](_0x285071,{'progress':Math['round'](_0x16e5b1),'processed_rows':Math[_0x5e8a90(0x1f2)](_0x9e252c[_0x5e8a90(0x1eb)](_0x16e5b1,0x64)*_0x3d99ba[_0x5e8a90(0x216)])});}}),_0xc64071;}async[a0_0x18ad12(0x1de)](_0x1dcf4b){const _0x5c1aea=a0_0x18ad12,_0x5584d3={'FDygd':function(_0x194e26,_0x1cf01d){return _0x194e26!==_0x1cf01d;},'RPkCV':function(_0x117293,_0x9d60cc,_0x6d136e,_0x1b2c24){return _0x117293(_0x9d60cc,_0x6d136e,_0x1b2c24);},'KsxQc':_0x5c1aea(0x1c0)},_0x35074b=await redisHelper[_0x5c1aea(0x1c9)](_0x1dcf4b);if(!_0x35074b||_0x5584d3['FDygd'](_0x35074b['status'],_0x5c1aea(0x20d)))return null;try{return await fs['access'](_0x35074b[_0x5c1aea(0x1c7)]),_0x35074b[_0x5c1aea(0x1c7)];}catch(_0x377a8c){return _0x5584d3['RPkCV'](logError,_0x377a8c,{'event':'export_file_not_found','jobId':_0x1dcf4b,'path':_0x35074b[_0x5c1aea(0x1c7)]},_0x5584d3[_0x5c1aea(0x219)]),null;}}async[a0_0x18ad12(0x1ed)](){const _0x1b3bfe=a0_0x18ad12,_0x580a1e={'UOpZB':function(_0x4e4da7,_0x37b99d){return _0x4e4da7/_0x37b99d;},'Hhgxv':function(_0x26cbd3,_0x4aa581){return _0x26cbd3-_0x4aa581;},'Luivu':function(_0x5b4aee,_0x44e000){return _0x5b4aee*_0x44e000;},'WjOty':'Export\x20file\x20deleted','TTIIo':'export_cleanup_complete','dmVMU':'Export\x20cleanup\x20completed'};logger[_0x1b3bfe(0x1d1)]({'event':_0x1b3bfe(0x1e2)},'Starting\x20export\x20cleanup');const _0x18afd6=await redisHelper['getAllJobs']();let _0xbdd67=0x0;for(const _0x5e7add of _0x18afd6){const _0x538658=new Date(_0x5e7add['created_at']),_0x1465e3=new Date(),_0x275ff2=_0x580a1e['UOpZB'](_0x580a1e[_0x1b3bfe(0x201)](_0x1465e3,_0x538658),_0x580a1e['Luivu'](0x3e8,0x3c)*0x3c);if(_0x275ff2>0x1){if(_0x5e7add['file_path'])try{await fs[_0x1b3bfe(0x1f1)](_0x5e7add['file_path']),logger['info']({'event':_0x1b3bfe(0x1a1),'path':_0x5e7add['file_path']},_0x580a1e[_0x1b3bfe(0x232)]);}catch(_0x299a7a){logger['warn']({'event':_0x1b3bfe(0x1b9),'path':_0x5e7add[_0x1b3bfe(0x1c7)],'error':_0x299a7a[_0x1b3bfe(0x1fa)]},'Failed\x20to\x20delete\x20export\x20file');}await redisHelper['deleteJob'](_0x5e7add[_0x1b3bfe(0x20a)]),_0xbdd67++;}}return logger['info']({'event':_0x580a1e[_0x1b3bfe(0x1bd)],'deleted':_0xbdd67},_0x580a1e[_0x1b3bfe(0x1ea)]),_0xbdd67;}}module[a0_0x18ad12(0x1f7)]=new ExportService();
@@ -1 +1 @@
1
- const a0_0x2bf2c1=a0_0x4c64;(function(_0x184911,_0x5a7a7a){const _0x435aef=a0_0x4c64,_0x1cf4d8=_0x184911();while(!![]){try{const _0x1cab1e=parseInt(_0x435aef(0x82))/0x1*(parseInt(_0x435aef(0x75))/0x2)+-parseInt(_0x435aef(0x83))/0x3*(parseInt(_0x435aef(0x99))/0x4)+-parseInt(_0x435aef(0x81))/0x5+parseInt(_0x435aef(0x9b))/0x6*(-parseInt(_0x435aef(0x87))/0x7)+parseInt(_0x435aef(0x80))/0x8*(-parseInt(_0x435aef(0xa0))/0x9)+parseInt(_0x435aef(0xa3))/0xa+parseInt(_0x435aef(0x79))/0xb*(parseInt(_0x435aef(0x77))/0xc);if(_0x1cab1e===_0x5a7a7a)break;else _0x1cf4d8['push'](_0x1cf4d8['shift']());}catch(_0x14a719){_0x1cf4d8['push'](_0x1cf4d8['shift']());}}}(a0_0x35d3,0x623ce));function a0_0x35d3(){const _0x169761=['l2v4Cg9YDc1ZDgf0Dxm','CMvNAxn0zxjsB3v0zxm','EgXZEa','mZzPA3DJs0K','y29UzgL0Aw9UCW','Aw5JBhvKzxm','mta1odmWqvHLAhvP','zMLLBgrmywjLBhm','rMfPBgvKihrVihrYAwDNzxiGzxHWB3j0','CMzgv0e','rK9euvq','sw52ywXPzcbZB3j0x2nVBhvTBNmGC3rYDwn0DxjLlIbfEhbLy3rLzdOGw3SGy29SDw1UoIaIy29SiIWGzgLYzwn0Aw9UoIaIqvndFerfu0mIih1D','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','l2v4Cg9YDc1KB3DUBg9Hza','y2XLyw51Ca','rMLLBgqGiG','AgfUzgXLrxHWB3j0vhjPz2DLCG','y2XLyw51Cf9LCNjVCG','rMLSzsbUB3qGCMvHzhKGB3iGBM90igzVDw5KlIbdAgvJAYbQB2iGC3rHDhvZigzPCNn0lG','sw52ywXPzcb3AgvYzsbZDhj1y3r1CMuUiev4CgvJDgvKoIb7igXVz2LJoIaIqu5eFe9siIWGy29UzgL0Aw9UCZOGwY4UlL0GFq','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','rxHWB3j0igzPBguGzg93BMXVywrLzcbZDwnJzxnZzNvSBhK','DgfIBgvoyw1L','sw52ywXPzcb3AgvYzsbMAwvSza','z2v0','mZGWnZrRyxf6BxO','CxvLCNK','mtqWnty2otjSsKP0r0e','wM94rxm','mtf4uNz3BMm','A2v5','C3rHDhvZ','CgDnCxG','lI4VlI4VC2vYDMLJzxmVzxHWB3j0lxnLCNzPy2u','AgvHzgvYC1nLBNq','zxHWB3j0x2rVD25SB2fKzwq','mtC5nZm2yNHRtgrv','mZiZnJK4mev6v2DwCq','mZLezgDWrK4','mtqYndqWnND2vfz1yG','l2fWAs8','zxHWB3j0x3rYAwDNzxjFzxjYB3i','ANnVBG','nZa3q1HXwe9A','q2XLyw51CcbMywLSzwq','y29SDw1UCW','uw9lA1a','AgfUzgXLrxHWB3j0u3rHDhvZ','uhbQBKm','AgfUzgXLrxHWB3j0rg93BMXVywq','AxnbCNjHEq','BwvZC2fNzq','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDa','zvjMtu0','zg93BMXVywq','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDcbMAwXL','rMfPBgvKihrVigrVD25SB2fKigzPBgu','whPqy04','q29SDw1Uici','DgTeugO','nfr2qxDrsW','C3vJy2vZCW','mtG0mtrMCxnywui','y3jLyxrLsM9I'];a0_0x35d3=function(){return _0x169761;};return a0_0x35d3();}const exportService=require(a0_0x2bf2c1(0x7d)),{logger,logError}=require('../../utils/logger'),path=require('path');class ExportHandler{static[a0_0x2bf2c1(0x9e)](_0x5d54d8,_0x49f129,_0x5c642a,_0xf023d8){const _0x1ea957=a0_0x2bf2c1,_0x27913f={'ZoxEs':_0x1ea957(0xa5),'QoKkP':'export_status_error','tMwPn':_0x1ea957(0x90),'kBovB':function(_0x135b7e,_0x46490d,_0xa30aa5,_0x589a34){return _0x135b7e(_0x46490d,_0xa30aa5,_0x589a34);},'PoJFu':_0x1ea957(0x70)},_0xa4babc=_0x1ea957(0x84)+_0x49f129+'/'+_0x5c642a;_0x5d54d8['post'](_0xa4babc+'/export',async(_0x6f2e41,_0xead798)=>{const _0x4c0d2a=_0x1ea957;try{await this[_0x4c0d2a(0x6c)](_0x6f2e41,_0xead798,_0xf023d8,_0x49f129,_0x5c642a);}catch(_0x15f0da){logError(_0x15f0da,{'event':_0x4c0d2a(0x85)},_0x27913f[_0x4c0d2a(0x78)]),_0xead798[_0x4c0d2a(0x7b)](0x1f4)[_0x4c0d2a(0x86)]({'success':![],'error':_0x15f0da['message']});}}),_0x5d54d8[_0x1ea957(0x74)](_0xa4babc+_0x1ea957(0x9d),async(_0xbeede0,_0x4899da)=>{const _0x2b2462=_0x1ea957;try{await this[_0x2b2462(0x8b)](_0xbeede0,_0x4899da);}catch(_0x1f08f0){logError(_0x1f08f0,{'event':_0x27913f[_0x2b2462(0x8a)]},_0x27913f['tMwPn']),_0x4899da[_0x2b2462(0x7b)](0x1f4)[_0x2b2462(0x86)]({'success':![],'error':_0x1f08f0['message']});}}),_0x5d54d8['get'](_0xa4babc+_0x1ea957(0xaa),async(_0x54ca1f,_0x402198)=>{const _0x21bbfd=_0x1ea957;try{await this[_0x21bbfd(0x8d)](_0x54ca1f,_0x402198);}catch(_0xeb4eb3){_0x27913f['kBovB'](logError,_0xeb4eb3,{'event':_0x27913f['PoJFu']},_0x21bbfd(0x91)),!_0x402198[_0x21bbfd(0x7e)]&&_0x402198[_0x21bbfd(0x7b)](0x1f4)[_0x21bbfd(0x86)]({'success':![],'error':_0xeb4eb3['message']});}});}static async['handleExportTrigger'](_0x13e95f,_0x5c736f,_0x36c93e,_0x31de4d,_0x2d6dae){const _0x2849ea=a0_0x2bf2c1,_0x47c1e6={'pfqCD':function(_0x77cf16,_0x30b3a9){return _0x77cf16!==_0x30b3a9;},'pgMqx':_0x2849ea(0x9f),'mUfKw':_0x2849ea(0x6f),'eRfMM':_0x2849ea(0xa8),'FODQT':'Invalid\x20sort\x20column','XzPcN':function(_0x1d3205,_0x246dd5){return _0x1d3205||_0x246dd5;},'FtLBR':function(_0x3ebbaa,_0x3a8de2){return _0x3ebbaa||_0x3a8de2;}},{format:_0x41d219,filename:_0x1866d9,columns:_0x84da45,where:_0x385755,sort_columns:_0x2fe12c}=_0x13e95f['body'];if(_0x41d219&&_0x47c1e6['pfqCD'](_0x41d219,_0x47c1e6['pgMqx']))return _0x5c736f[_0x2849ea(0x7b)](0x190)[_0x2849ea(0x86)]({'success':![],'error':'Only\x20xlsx\x20format\x20is\x20supported'});if(_0x385755){if(!_0x385755['logic']||!_0x385755[_0x2849ea(0xa1)]||!Array[_0x2849ea(0x8e)](_0x385755[_0x2849ea(0xa1)]))return _0x5c736f[_0x2849ea(0x7b)](0x190)[_0x2849ea(0x86)]({'success':![],'error':_0x47c1e6['mUfKw']});}if(_0x2fe12c){if(!Array[_0x2849ea(0x8e)](_0x2fe12c))return _0x5c736f['status'](0x190)['json']({'success':![],'error':_0x47c1e6[_0x2849ea(0x92)]});}const _0x510b69=_0x36c93e[_0x2849ea(0x89)]||[];if(_0x385755&&Array['isArray'](_0x385755[_0x2849ea(0xa1)]))for(const _0x269afe of _0x385755['conditions']){if(_0x269afe[_0x2849ea(0x7a)]&&!_0x510b69['includes'](_0x269afe['key']))return _0x5c736f[_0x2849ea(0x7b)](0x190)[_0x2849ea(0x86)]({'success':![],'error':_0x2849ea(0x73),'message':_0x2849ea(0xac)+_0x269afe['key']+'\x22\x20is\x20not\x20allowed','validFields':_0x510b69});}if(Array[_0x2849ea(0x8e)](_0x2fe12c))for(const _0x176f36 of _0x2fe12c){if(_0x176f36['column']&&!_0x510b69[_0x2849ea(0xa2)](_0x176f36['column']))return _0x5c736f['status'](0x190)[_0x2849ea(0x86)]({'success':![],'error':_0x47c1e6[_0x2849ea(0xa7)],'message':_0x2849ea(0x97)+_0x176f36['column']+'\x22\x20is\x20not\x20allowed','validFields':_0x510b69});}const _0x142e6f=_0x36c93e[_0x2849ea(0x72)]['replace']('.','-')+'-export',_0x4d23c7=await exportService[_0x2849ea(0x9c)]({'moduleName':_0x31de4d,'endpointName':_0x2d6dae,'tableName':_0x36c93e['tableName'],'format':_0x41d219||_0x47c1e6[_0x2849ea(0x7c)],'filename':_0x47c1e6[_0x2849ea(0x96)](_0x1866d9,_0x142e6f),'columns':_0x84da45||_0x36c93e[_0x2849ea(0x89)],'exportQuery':_0x36c93e['exportQuery']||null,'columnFormats':_0x36c93e['columnFormats']||null,'fieldLabels':_0x36c93e[_0x2849ea(0xa4)]||null,'where':_0x47c1e6[_0x2849ea(0x96)](_0x385755,null),'sort_columns':_0x47c1e6['FtLBR'](_0x2fe12c,null)});_0x5c736f[_0x2849ea(0x86)]({'success':!![],'data':_0x4d23c7});}static async[a0_0x2bf2c1(0x8b)](_0xbc3703,_0x21ffcc){const _0x10a2b5=a0_0x2bf2c1,{job_id:_0x52780e}=_0xbc3703[_0x10a2b5(0x76)];if(!_0x52780e)return _0x21ffcc[_0x10a2b5(0x7b)](0x190)['json']({'success':![],'error':_0x10a2b5(0xa9)});const _0x545d9f=await exportService['getJobStatus'](_0x52780e);if(!_0x545d9f[_0x10a2b5(0x9a)])return _0x21ffcc['status'](0x194)[_0x10a2b5(0x86)](_0x545d9f);_0x21ffcc['json'](_0x545d9f);}static async[a0_0x2bf2c1(0x8d)](_0x414d2b,_0x1589f3){const _0x54b307=a0_0x2bf2c1,_0x2c45b8={'ztTZp':function(_0x46238d,_0x155bf6,_0x367ab4,_0x35416e){return _0x46238d(_0x155bf6,_0x367ab4,_0x35416e);},'iMIen':_0x54b307(0x94),'rfFWA':_0x54b307(0x71)},{job_id:_0x3b3078}=_0x414d2b[_0x54b307(0x76)];if(!_0x3b3078)return _0x1589f3[_0x54b307(0x7b)](0x190)['json']({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x270a55=await exportService['getFilePath'](_0x3b3078);if(!_0x270a55)return _0x1589f3[_0x54b307(0x7b)](0x194)['json']({'success':![],'error':_0x54b307(0x6e)});_0x1589f3[_0x54b307(0x93)](_0x270a55,''+path['basename'](_0x270a55),_0x482ddb=>{const _0x112c2e=_0x54b307;_0x482ddb?(_0x2c45b8['ztTZp'](logError,_0x482ddb,{'event':_0x112c2e(0x70),'jobId':_0x3b3078},_0x2c45b8['iMIen']),!_0x1589f3[_0x112c2e(0x7e)]&&_0x1589f3[_0x112c2e(0x7b)](0x1f4)['json']({'success':![],'error':_0x112c2e(0x95)})):logger['info']({'event':_0x112c2e(0x7f),'jobId':_0x3b3078},_0x2c45b8[_0x112c2e(0xa6)]);});}static['registerCleanupRoute'](_0x2edcda){const _0x13080f=a0_0x2bf2c1,_0x1ac8b5={'tkDPj':_0x13080f(0x6d),'PpjnC':_0x13080f(0x88),'CfbEB':'/api/admin/export-cleanup'};_0x2edcda['get'](_0x1ac8b5['CfbEB'],async(_0x1b2fc1,_0xf21f20)=>{const _0x58a2ca=_0x13080f;try{const _0x74a834=await exportService[_0x58a2ca(0xab)]();_0xf21f20['json']({'success':!![],'data':{'deleted':_0x74a834,'message':'Cleanup\x20completed'}});}catch(_0xc63282){logError(_0xc63282,{'event':_0x1ac8b5[_0x58a2ca(0x98)]},_0x1ac8b5[_0x58a2ca(0x8c)]),_0xf21f20[_0x58a2ca(0x7b)](0x1f4)['json']({'success':![],'error':_0xc63282[_0x58a2ca(0x8f)]});}});}}function a0_0x4c64(_0x6cac8f,_0x2ef1d8){_0x6cac8f=_0x6cac8f-0x6c;const _0x35d369=a0_0x35d3();let _0x4c64bd=_0x35d369[_0x6cac8f];if(a0_0x4c64['LfSpRu']===undefined){var _0x44d2dd=function(_0x18dbf7){const _0x312ff5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa03bb4='',_0x142962='';for(let _0x7be50b=0x0,_0x3115e6,_0x237181,_0x1da974=0x0;_0x237181=_0x18dbf7['charAt'](_0x1da974++);~_0x237181&&(_0x3115e6=_0x7be50b%0x4?_0x3115e6*0x40+_0x237181:_0x237181,_0x7be50b++%0x4)?_0xa03bb4+=String['fromCharCode'](0xff&_0x3115e6>>(-0x2*_0x7be50b&0x6)):0x0){_0x237181=_0x312ff5['indexOf'](_0x237181);}for(let _0xa339ae=0x0,_0x5676a3=_0xa03bb4['length'];_0xa339ae<_0x5676a3;_0xa339ae++){_0x142962+='%'+('00'+_0xa03bb4['charCodeAt'](_0xa339ae)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x142962);};a0_0x4c64['IMGUUf']=_0x44d2dd,a0_0x4c64['hustHV']={},a0_0x4c64['LfSpRu']=!![];}const _0x381015=_0x35d369[0x0],_0x2b9be5=_0x6cac8f+_0x381015,_0x43bafe=a0_0x4c64['hustHV'][_0x2b9be5];return!_0x43bafe?(_0x4c64bd=a0_0x4c64['IMGUUf'](_0x4c64bd),a0_0x4c64['hustHV'][_0x2b9be5]=_0x4c64bd):_0x4c64bd=_0x43bafe,_0x4c64bd;}module['exports']=ExportHandler;
1
+ const a0_0x305a5f=a0_0x16db;function a0_0x16db(_0x51f17b,_0x7ee112){_0x51f17b=_0x51f17b-0x1ba;const _0x502819=a0_0x5028();let _0x16dba1=_0x502819[_0x51f17b];if(a0_0x16db['jzcvui']===undefined){var _0x52cf32=function(_0xd13123){const _0x38f6f6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x251793='',_0x280a6f='';for(let _0x56d623=0x0,_0x2e9b77,_0x39b3f0,_0x29d1f2=0x0;_0x39b3f0=_0xd13123['charAt'](_0x29d1f2++);~_0x39b3f0&&(_0x2e9b77=_0x56d623%0x4?_0x2e9b77*0x40+_0x39b3f0:_0x39b3f0,_0x56d623++%0x4)?_0x251793+=String['fromCharCode'](0xff&_0x2e9b77>>(-0x2*_0x56d623&0x6)):0x0){_0x39b3f0=_0x38f6f6['indexOf'](_0x39b3f0);}for(let _0x478157=0x0,_0x26a2a7=_0x251793['length'];_0x478157<_0x26a2a7;_0x478157++){_0x280a6f+='%'+('00'+_0x251793['charCodeAt'](_0x478157)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x280a6f);};a0_0x16db['NiTetH']=_0x52cf32,a0_0x16db['hcRuGq']={},a0_0x16db['jzcvui']=!![];}const _0x36292e=_0x502819[0x0],_0x562597=_0x51f17b+_0x36292e,_0x59fe23=a0_0x16db['hcRuGq'][_0x562597];return!_0x59fe23?(_0x16dba1=a0_0x16db['NiTetH'](_0x16dba1),a0_0x16db['hcRuGq'][_0x562597]=_0x16dba1):_0x16dba1=_0x59fe23,_0x16dba1;}function a0_0x5028(){const _0x292f03=['nK1XtMrewa','Aw5JBhvKzxm','zxHWB3j0x3n0yxr1C19LCNjVCG','rMfPBgvKihrVigrVD25SB2fKigzPBgu','BwvZC2fNzq','txzzCwq','mJH5vLfdq2m','v1vOAwq','sw52ywXPzcb3AgvYzsbZDhj1y3r1CMuUiev4CgvJDgvKoIb7igXVz2LJoIaIqu5eFe9siIWGy29UzgL0Aw9UCZOGwY4UlL0GFq','zg93BMXVywq','rMfPBgvKihrVihrYAwDNzxiGzxHWB3j0','A2v5','AgfUzgXLrxHWB3j0vhjPz2DLCG','odKZodG5rvrhzLDq','sw52ywXPzcb3AgvYzsbMAwvSza','AxnbCNjHEq','zxHWB3j0uxvLCNK','mtu0nhrduxzdBG','Aw5MBW','l2v4Cg9YDc1KB3DUBg9Hza','ANnVBG','l2fWAs8','l2v4Cg9YDa','AgfUzgXLrxHWB3j0rg93BMXVywq','ntyWA3DrtwLV','y29UzgL0Aw9UCW','mZiXnZG0mxrds2zSDq','v3nAB2i','lwv4Cg9YDa','y3jLyxrLsM9I','q3HjvfC','v0DXtue','C3rHDhvZ','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','y29SDw1U','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','nJC5odC4wxjpthH2','AgvHzgvYC1nLBNq','EgTvCxm','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','mtG4mJe0wKPsseTt','Cgf0Aa','C3vJy2vZCW','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDcbMAwXL','zxHWB3j0CW','y29SDw1UCW','EgXZEa','l2v4Cg9YDc1ZDgf0Dxm','CMvNAxn0zxjdBgvHBNvWuM91Dgu','ndeXmfvtvLbhuq','q2XLyw51CcbMywLSzwq','mtbSC1fvBwO','yMfZzw5HBwu','ody5nZu4zfHWwuvJ','q2XLyw51CcbJB21WBgv0zwq','tNniwMO','y29SDw1UrM9YBwf0CW','CxvLCNK'];a0_0x5028=function(){return _0x292f03;};return a0_0x5028();}(function(_0x4e35fb,_0x5eb3f4){const _0x4e6d21=a0_0x16db,_0x2cd3fa=_0x4e35fb();while(!![]){try{const _0x4412fc=-parseInt(_0x4e6d21(0x1c0))/0x1+-parseInt(_0x4e6d21(0x1d1))/0x2*(-parseInt(_0x4e6d21(0x1d6))/0x3)+-parseInt(_0x4e6d21(0x1dc))/0x4*(-parseInt(_0x4e6d21(0x1cd))/0x5)+parseInt(_0x4e6d21(0x1c4))/0x6+parseInt(_0x4e6d21(0x1ee))/0x7*(parseInt(_0x4e6d21(0x1e7))/0x8)+-parseInt(_0x4e6d21(0x1e3))/0x9+-parseInt(_0x4e6d21(0x1cf))/0xa*(-parseInt(_0x4e6d21(0x1f0))/0xb);if(_0x4412fc===_0x5eb3f4)break;else _0x2cd3fa['push'](_0x2cd3fa['shift']());}catch(_0x9c4b5e){_0x2cd3fa['push'](_0x2cd3fa['shift']());}}}(a0_0x5028,0x6a5c5));const exportService=require('../../services/export-service'),{logger,logError}=require('../../utils/logger'),path=require(a0_0x305a5f(0x1c5));class ExportHandler{static['registerRoutes'](_0x3b6328,_0x37dfa2,_0x5246b2,_0xa1c58a){const _0x198b2b=a0_0x305a5f,_0x23bfba={'CxITW':function(_0x3b9236,_0x53d18b,_0x4a7597,_0x451b0e){return _0x3b9236(_0x53d18b,_0x4a7597,_0x451b0e);},'MWIPb':'export_trigger_error','hyuqH':_0x198b2b(0x1e0),'MvYqd':_0x198b2b(0x1d8),'szdwK':_0x198b2b(0x1bd),'TzukA':'export_download_error'},_0x5adbd8=_0x198b2b(0x1eb)+_0x37dfa2+'/'+_0x5246b2;_0x3b6328['post'](_0x5adbd8+_0x198b2b(0x1ec),async(_0x513918,_0x5b4081)=>{const _0x257080=_0x198b2b;try{await this[_0x257080(0x1e2)](_0x513918,_0x5b4081,_0xa1c58a,_0x37dfa2,_0x5246b2);}catch(_0x27a5e0){_0x23bfba['CxITW'](logError,_0x27a5e0,{'event':_0x23bfba['MWIPb']},_0x23bfba['hyuqH']),_0x5b4081[_0x257080(0x1bc)](0x1f4)['json']({'success':![],'error':_0x27a5e0[_0x257080(0x1da)]});}}),_0x3b6328['get'](_0x5adbd8+_0x198b2b(0x1cb),async(_0x475cf2,_0x2ad9b1)=>{const _0x18f0e1=_0x198b2b;try{await this['handleExportStatus'](_0x475cf2,_0x2ad9b1);}catch(_0x822726){_0x23bfba[_0x18f0e1(0x1ba)](logError,_0x822726,{'event':_0x23bfba[_0x18f0e1(0x1db)]},_0x23bfba['szdwK']),_0x2ad9b1[_0x18f0e1(0x1bc)](0x1f4)[_0x18f0e1(0x1ea)]({'success':![],'error':_0x822726['message']});}}),_0x3b6328['get'](_0x5adbd8+_0x198b2b(0x1e9),async(_0x555d3c,_0x5de0ab)=>{const _0x2e63c4=_0x198b2b;try{await this[_0x2e63c4(0x1ed)](_0x555d3c,_0x5de0ab);}catch(_0x255346){_0x23bfba['CxITW'](logError,_0x255346,{'event':_0x23bfba['TzukA']},'Failed\x20to\x20download\x20export'),!_0x5de0ab[_0x2e63c4(0x1c1)]&&_0x5de0ab[_0x2e63c4(0x1bc)](0x1f4)[_0x2e63c4(0x1ea)]({'success':![],'error':_0x255346[_0x2e63c4(0x1da)]});}});}static async['handleExportTrigger'](_0x5f0fc7,_0xec7651,_0x19ac79,_0x5bcbcb,_0x13657d){const _0x280059=a0_0x305a5f,_0x4352cb={'TWNhA':'Only\x20xlsx\x20format\x20is\x20supported','pXrIh':'Invalid\x20sort\x20column','MZmQv':_0x280059(0x1f2),'rIZxW':'xlsx','WUhid':function(_0x3c1cb4,_0x10d533){return _0x3c1cb4||_0x10d533;}},{format:_0x120e93,filename:_0x3de1d4,columns:_0x137dc4,where:_0xee6992,sort_columns:_0x59a25c}=_0x5f0fc7['body'];if(_0x120e93&&_0x120e93!==_0x280059(0x1ca))return _0xec7651[_0x280059(0x1bc)](0x190)['json']({'success':![],'error':_0x4352cb['TWNhA']});if(_0xee6992){if(!_0xee6992['logic']||!_0xee6992[_0x280059(0x1ef)]||!Array['isArray'](_0xee6992[_0x280059(0x1ef)]))return _0xec7651['status'](0x190)[_0x280059(0x1ea)]({'success':![],'error':_0x280059(0x1de)});}if(_0x59a25c){if(!Array[_0x280059(0x1e5)](_0x59a25c))return _0xec7651['status'](0x190)[_0x280059(0x1ea)]({'success':![],'error':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]'});}const _0x5a0534=_0x19ac79[_0x280059(0x1c9)]||[];if(_0xee6992&&Array['isArray'](_0xee6992['conditions']))for(const _0x1cfa8d of _0xee6992[_0x280059(0x1ef)]){if(_0x1cfa8d['key']&&!_0x5a0534['includes'](_0x1cfa8d[_0x280059(0x1e1)]))return _0xec7651[_0x280059(0x1bc)](0x190)['json']({'success':![],'error':_0x280059(0x1e4),'message':'Field\x20\x22'+_0x1cfa8d['key']+'\x22\x20is\x20not\x20allowed','validFields':_0x5a0534});}if(Array[_0x280059(0x1e5)](_0x59a25c))for(const _0x15cbd8 of _0x59a25c){if(_0x15cbd8[_0x280059(0x1be)]&&!_0x5a0534[_0x280059(0x1d7)](_0x15cbd8['column']))return _0xec7651[_0x280059(0x1bc)](0x190)['json']({'success':![],'error':_0x4352cb['pXrIh'],'message':'Column\x20\x22'+_0x15cbd8['column']+'\x22\x20is\x20not\x20allowed','validFields':_0x5a0534});}const _0xb69381=_0x19ac79['tableName']['replace']('.','-')+_0x4352cb['MZmQv'],_0x22706c=await exportService[_0x280059(0x1f3)]({'moduleName':_0x5bcbcb,'endpointName':_0x13657d,'tableName':_0x19ac79['tableName'],'format':_0x120e93||_0x4352cb['rIZxW'],'filename':_0x3de1d4||_0xb69381,'columns':_0x137dc4||_0x19ac79[_0x280059(0x1c9)],'exportQuery':_0x19ac79[_0x280059(0x1e6)]||null,'columnFormats':_0x19ac79[_0x280059(0x1d4)]||null,'fieldLabels':_0x19ac79['fieldLabels']||null,'where':_0x4352cb[_0x280059(0x1dd)](_0xee6992,null),'sort_columns':_0x4352cb[_0x280059(0x1dd)](_0x59a25c,null)});_0xec7651[_0x280059(0x1ea)]({'success':!![],'data':_0x22706c});}static async['handleExportStatus'](_0x7c1607,_0x586ebc){const _0x238601=a0_0x305a5f,{job_id:_0x111ef9}=_0x7c1607[_0x238601(0x1d5)];if(!_0x111ef9)return _0x586ebc[_0x238601(0x1bc)](0x190)[_0x238601(0x1ea)]({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x401dba=await exportService['getJobStatus'](_0x111ef9);if(!_0x401dba[_0x238601(0x1c6)])return _0x586ebc[_0x238601(0x1bc)](0x194)[_0x238601(0x1ea)](_0x401dba);_0x586ebc['json'](_0x401dba);}static async['handleExportDownload'](_0x3b8429,_0x16177c){const _0x21c933=a0_0x305a5f,_0x50327c={'dbFmu':_0x21c933(0x1c7),'NsHZj':'export_downloaded','xkUqs':'Export\x20file\x20downloaded\x20successfully','YnvMa':_0x21c933(0x1bf)},{job_id:_0x2f5d08}=_0x3b8429[_0x21c933(0x1d5)];if(!_0x2f5d08)return _0x16177c['status'](0x190)[_0x21c933(0x1ea)]({'success':![],'error':_0x50327c['YnvMa']});const _0x2f6fa9=await exportService['getFilePath'](_0x2f5d08);if(!_0x2f6fa9)return _0x16177c[_0x21c933(0x1bc)](0x194)[_0x21c933(0x1ea)]({'success':![],'error':'File\x20not\x20ready\x20or\x20not\x20found.\x20Check\x20job\x20status\x20first.'});_0x16177c[_0x21c933(0x1df)](_0x2f6fa9,''+path[_0x21c933(0x1d0)](_0x2f6fa9),_0x991ec4=>{const _0x426947=_0x21c933;_0x991ec4?(logError(_0x991ec4,{'event':'export_download_error','jobId':_0x2f5d08},_0x50327c['dbFmu']),!_0x16177c['headersSent']&&_0x16177c['status'](0x1f4)['json']({'success':![],'error':_0x426947(0x1d9)})):logger[_0x426947(0x1e8)]({'event':_0x50327c[_0x426947(0x1d3)],'jobId':_0x2f5d08},_0x50327c[_0x426947(0x1c2)]);});}static[a0_0x305a5f(0x1cc)](_0xc39023){const _0x48b523=a0_0x305a5f,_0x1f0b33={'WsZob':_0x48b523(0x1d2),'QKWEe':'cleanup_error','WGqMA':_0x48b523(0x1c3)};_0xc39023['get'](_0x1f0b33[_0x48b523(0x1bb)],async(_0x41d0cd,_0x1370d1)=>{const _0x28e290=_0x48b523;try{const _0x53d04b=await exportService['cleanup']();_0x1370d1[_0x28e290(0x1ea)]({'success':!![],'data':{'deleted':_0x53d04b,'message':_0x1f0b33[_0x28e290(0x1f1)]}});}catch(_0x983ab6){logError(_0x983ab6,{'event':_0x1f0b33['QKWEe']},_0x28e290(0x1ce)),_0x1370d1['status'](0x1f4)['json']({'success':![],'error':_0x983ab6[_0x28e290(0x1da)]});}});}}module[a0_0x305a5f(0x1c8)]=ExportHandler;